No older revisions available
No older revisions available
typedef float vec_t;
typedef float vec2_t2;
typedef vec_t vec3_t3;
typedef vec_t matrix_t16; // 4*4 행렬
typedef float vec2_t2;
typedef vec_t vec3_t3;
typedef vec_t matrix_t16; // 4*4 행렬
// matrix prototypes
void matrixIdentity (matrix_t p);
void matrixMultiply (matrix_t a, matrix_t b, matrix_t c);
void matrixRotateX (matrix_t p, vec_t angle);
void matrixRotateY (matrix_t p, vec_t angle);
void matrixRotateZ (matrix_t p, vec_t angle);
void matrixRotate (matrix_t m, vec3_t r);
void matrixMultiplyVector (matrix_t m, vec3_t v);
void matrixMultiplyVector2 (matrix_t m, vec3_t v);
void matrixMultiplyVector3 (matrix_t m, vec3_t v);
void matrixTranslate (matrix_t m, vec3_t a);
void matrixCopy(matrix_t a, matrix_t b);
void matrixIdentity (matrix_t p);
void matrixMultiply (matrix_t a, matrix_t b, matrix_t c);
void matrixRotateX (matrix_t p, vec_t angle);
void matrixRotateY (matrix_t p, vec_t angle);
void matrixRotateZ (matrix_t p, vec_t angle);
void matrixRotate (matrix_t m, vec3_t r);
void matrixMultiplyVector (matrix_t m, vec3_t v);
void matrixMultiplyVector2 (matrix_t m, vec3_t v);
void matrixMultiplyVector3 (matrix_t m, vec3_t v);
void matrixTranslate (matrix_t m, vec3_t a);
void matrixCopy(matrix_t a, matrix_t b);
void matrix33_inverse (mat33_t mr, mat33_t ma);
int matrix44_inverse (mat44_t mr, mat44_t ma);
int matrix44_inverse2 (mat44_t mr, mat44_t ma);
int matrix44_inverse (mat44_t mr, mat44_t ma);
int matrix44_inverse2 (mat44_t mr, mat44_t ma);
// vector prototypes
void vectorClear (vec3_t a);
void vectorCopy (vec3_t a, vec3_t b);
void vectorCrossProduct (vec3_t v1, vec3_t v2, vec3_t cross);
vec_t vectorDot (vec3_t v1, vec3_t v2);
void vectorSubtract (vec3_t va, vec3_t vb, vec3_t out);
void vectorAdd (vec3_t va, vec3_t vb, vec3_t out);
vec_t vectorNormalize (vec3_t in, vec3_t out);
void vectorScaleV (vec3_t a, vec3_t s);
void vectorScale (vec3_t v, vec_t scale);
void vectorClear (vec3_t a);
void vectorCopy (vec3_t a, vec3_t b);
void vectorCrossProduct (vec3_t v1, vec3_t v2, vec3_t cross);
vec_t vectorDot (vec3_t v1, vec3_t v2);
void vectorSubtract (vec3_t va, vec3_t vb, vec3_t out);
void vectorAdd (vec3_t va, vec3_t vb, vec3_t out);
vec_t vectorNormalize (vec3_t in, vec3_t out);
void vectorScaleV (vec3_t a, vec3_t s);
void vectorScale (vec3_t v, vec_t scale);
void NormalRet (vec3_t a, vec3_t b, vec3_t c, vec3_t &out); // 노멀 벡터 계산