view Renderer/Engine/matrix_calc.h @ 1087:20f09564c586 draft

fix (not yet tested)
author root@localhost.localdomain
date Fri, 17 Dec 2010 18:34:29 +0900
parents 294bc9364bee
children f10ec9bbd3f6
line wrap: on
line source

#ifndef CR_SYS_H
#define CR_SYS_H

void noMoreMemory();
void get_matrix(float *matrix, float *rxyz, float *txyz, float *scale, float *stack);
void rotate_x(float *xyz, float r);
void rotate_y(float *xyz, float r);
void rotate_z(float *xyz, float r);
//void rotate(float *xyz, float *matrix, float *rxyz, float *txyz, float *stack[]);
void rotate(float *xyz, float *matrix);
void translate(float *xyz, float x, float y, float z);
void matrix4x4(float *, float *, float *);

void normalize(float *v0, float *v1);
void subVector(float *v0, float *v1, float *v2);
void outerProduct(float *v0, float *v1, float *v2);
float innerProduct(float *v0, float *v1);
void applyMatrix(float *v0, float *m, float *v1);
void inversMatrix(float *m0, float *m1);
void transposeMatrix(float *m0, float *m1);
void unitMatrix(float *m);
void transMatrix(float *m0, float *m1, float *v);
void ApplyMatrix(float *v1, float *v2);
void ScaleMatrix(float *m, float v);
void ScaleMatrixXYZ(float *m, float sx,float sy, float sz);
static inline unsigned long align(unsigned long x,unsigned long alig) { return ((x+(alig-1))&~(alig-1)); }


#endif