#include "Utils\SseUtils.h"
#include <fvec.h>
#include "SPMatrix.inl"
Classes | |
class | SPMatrix |
class | SPVector |
class | SPVector3 |
Defines | |
#define | SPVector4 SPVector |
#define | _MASKSIGNs_ (*(F32vec4*)&__MASKSIGNs_) |
#define | _mm_ror_ps(vec, i) (((i)%4) ? (_mm_shuffle_ps(vec,vec, _MM_SHUFFLE((unsigned char)(i+3)%4,(unsigned char)(i+2)%4,(unsigned char)(i+1)%4,(unsigned char)(i+0)%4))) : (vec)) |
#define | _mm_rol_ps(vec, i) (((i)%4) ? (_mm_shuffle_ps(vec,vec, _MM_SHUFFLE((unsigned char)(7-i)%4,(unsigned char)(6-i)%4,(unsigned char)(5-i)%4,(unsigned char)(4-i)%4))) : (vec)) |
#define | _mm_abs_ps(vec) _mm_andnot_ps(_MASKSIGNs_,vec) |
#define | _mm_neg_ps(vec) _mm_xor_ps(_MASKSIGNs_,vec) |
Functions | |
SPMatrix | ZeroMatrix () |
SPMatrix | IdentityMatrix () |
SPMatrix | TranslateMatrix (const float dx, const float dy, const float dz) |
SPMatrix | ScaleMatrix (const float a, const float b, const float c) |
SPMatrix | ScaleMatrix (const float a) |
SPMatrix | RotateXMatrix (const float rads) |
SPMatrix | RotateYMatrix (const float rads) |
SPMatrix | RotateZMatrix (const float rads) |
void | MatrixMult (const SPMatrix &A, const SPMatrix &B, SPMatrix &Res) |
void | VectorMult (const SPVector &Vec, const SPMatrix &Mat, SPVector &Res) |
SPMatrix | MatrixMult (const SPMatrix &A, const SPMatrix &B) |
SPMatrix | MatrixInverse (SPMatrix &m) |
float | Determinant (SPMatrix &m) |
SPMatrix | MatrixTranspose (SPMatrix &m) |
Variables | |
const _MM_ALIGN16 __int32 | __MASKSIGNs_ [4] |
#define _MASKSIGNs_ (*(F32vec4*)&__MASKSIGNs_) |
#define _mm_abs_ps | ( | vec | ) | _mm_andnot_ps(_MASKSIGNs_,vec) |
#define _mm_neg_ps | ( | vec | ) | _mm_xor_ps(_MASKSIGNs_,vec) |
#define _mm_rol_ps | ( | vec, | |||
i | ) | (((i)%4) ? (_mm_shuffle_ps(vec,vec, _MM_SHUFFLE((unsigned char)(7-i)%4,(unsigned char)(6-i)%4,(unsigned char)(5-i)%4,(unsigned char)(4-i)%4))) : (vec)) |
#define _mm_ror_ps | ( | vec, | |||
i | ) | (((i)%4) ? (_mm_shuffle_ps(vec,vec, _MM_SHUFFLE((unsigned char)(i+3)%4,(unsigned char)(i+2)%4,(unsigned char)(i+1)%4,(unsigned char)(i+0)%4))) : (vec)) |
#define SPVector4 SPVector |
float Determinant | ( | SPMatrix & | m | ) | [inline] |
SPMatrix IdentityMatrix | ( | ) | [inline] |
SPMatrix RotateXMatrix | ( | const float | rads | ) |
SPMatrix RotateYMatrix | ( | const float | rads | ) |
SPMatrix RotateZMatrix | ( | const float | rads | ) |
SPMatrix ScaleMatrix | ( | const float | a | ) |
SPMatrix ScaleMatrix | ( | const float | a, | |
const float | b, | |||
const float | c | |||
) |
SPMatrix TranslateMatrix | ( | const float | dx, | |
const float | dy, | |||
const float | dz | |||
) |
SPMatrix ZeroMatrix | ( | ) | [inline] |
const _MM_ALIGN16 __int32 __MASKSIGNs_[4] |