OGRE-Next
4.0.0unstable
Object-Oriented Graphics Rendering Engine
|
Cache-friendly container of 4x4 matrices represented as a SoA array. More...
#include <OgreArrayMatrix4SSE2.h>
Public Member Functions | |
ArrayMatrix4 () | |
ArrayMatrix4 () | |
ArrayMatrix4 () | |
ArrayMatrix4 (const ArrayMatrix4 ©) | |
ArrayMatrix4 (const ArrayMatrix4 ©) | |
ArrayMatrix4 (const ArrayMatrix4 ©) | |
void | fromQuaternion (const ArrayQuaternion &q) |
Converts the given quaternion to a 3x3 matrix representation and fill our values. More... | |
void | fromQuaternion (const ArrayQuaternion &q) |
Converts the given quaternion to a 3x3 matrix representation and fill our values. More... | |
void | fromQuaternion (const ArrayQuaternion &q) |
Converts the given quaternion to a 3x3 matrix representation and fill our values. More... | |
void | getAsMatrix4 (Matrix4 &out, size_t index) const |
void | getAsMatrix4 (Matrix4 &out, size_t index) const |
void | getAsMatrix4 (Matrix4 &out, size_t index) const |
Matrix4 | getAsMatrix4 (size_t index) const |
STRONGLY Prefer using. More... | |
Matrix4 | getAsMatrix4 (size_t index) const |
STRONGLY Prefer using. More... | |
Matrix4 | getAsMatrix4 (size_t index) const |
STRONGLY Prefer using. More... | |
bool | isAffine () const |
Check whether or not the matrix is affine matrix. More... | |
bool | isAffine () const |
Check whether or not the matrix is affine matrix. More... | |
bool | isAffine () const |
Check whether or not the matrix is affine matrix. More... | |
void | loadFromAoS (const Matrix4 *RESTRICT_ALIAS src) |
Converts ARRAY_PACKED_REALS matrices into this ArrayMatrix. More... | |
void | loadFromAoS (const Matrix4 *RESTRICT_ALIAS src) |
Converts ARRAY_PACKED_REALS matrices into this ArrayMatrix. More... | |
void | loadFromAoS (const Matrix4 *RESTRICT_ALIAS src) |
Converts ARRAY_PACKED_REALS matrices into this ArrayMatrix. More... | |
void | loadFromAoS (const SimpleMatrix4 *RESTRICT_ALIAS src) |
void | loadFromAoS (const SimpleMatrix4 *RESTRICT_ALIAS src) |
void | loadFromAoS (const SimpleMatrix4 *RESTRICT_ALIAS src) |
void | makeTransform (const ArrayVector3 &position, const ArrayVector3 &scale, const ArrayQuaternion &orientation) |
Building a Matrix4 from orientation / scale / position. More... | |
void | makeTransform (const ArrayVector3 &position, const ArrayVector3 &scale, const ArrayQuaternion &orientation) |
Building a Matrix4 from orientation / scale / position. More... | |
void | makeTransform (const ArrayVector3 &position, const ArrayVector3 &scale, const ArrayQuaternion &orientation) |
Building a Matrix4 from orientation / scale / position. More... | |
ArrayVector3 | operator* (const ArrayVector3 &rhs) const |
ArrayVector3 | operator* (const ArrayVector3 &rhs) const |
ArrayVector3 | operator* (const ArrayVector3 &rhs) const |
void | operator*= (const ArrayMatrix4 &rhs) |
Prefer the update version 'a *= b' A LOT over 'a = a * b' (copying from an ArrayMatrix4 is 256 bytes!) More... | |
void | operator*= (const ArrayMatrix4 &rhs) |
Prefer the update version 'a *= b' A LOT over 'a = a * b' (copying from an ArrayMatrix4 is 256 bytes!) More... | |
void | operator*= (const ArrayMatrix4 &rhs) |
Prefer the update version 'a *= b' A LOT over 'a = a * b' (copying from an ArrayMatrix4 is 256 bytes!) More... | |
ArrayMatrix4 & | operator= (const ArrayMatrix4 &rkMatrix) |
Assigns the value of the other matrix. More... | |
ArrayMatrix4 & | operator= (const ArrayMatrix4 &rkMatrix) |
Assigns the value of the other matrix. More... | |
ArrayMatrix4 & | operator= (const ArrayMatrix4 &rkMatrix) |
Assigns the value of the other matrix. More... | |
void | setAll (const Matrix4 &m) |
Sets all packed matrices to the same value as the scalar input matrix. More... | |
void | setAll (const Matrix4 &m) |
Sets all packed matrices to the same value as the scalar input matrix. More... | |
void | setAll (const Matrix4 &m) |
Sets all packed matrices to the same value as the scalar input matrix. More... | |
void | setFromMatrix4 (const Matrix4 &m, size_t index) |
void | setFromMatrix4 (const Matrix4 &m, size_t index) |
void | setFromMatrix4 (const Matrix4 &m, size_t index) |
void | storeToAoS (Matrix4 *RESTRICT_ALIAS dst) const |
Converts these matrices contained in this ArrayMatrix to AoS form and stores them in dst. More... | |
void | storeToAoS (Matrix4 *RESTRICT_ALIAS dst) const |
Converts these matrices contained in this ArrayMatrix to AoS form and stores them in dst. More... | |
void | storeToAoS (Matrix4 *RESTRICT_ALIAS dst) const |
Converts these matrices contained in this ArrayMatrix to AoS form and stores them in dst. More... | |
Static Public Member Functions | |
static ArrayMatrix4 | createAllFromMatrix4 (const Matrix4 &m) |
static ArrayMatrix4 | createAllFromMatrix4 (const Matrix4 &m) |
static ArrayMatrix4 | createAllFromMatrix4 (const Matrix4 &m) |
Public Attributes | |
ArrayReal | mChunkBase [16] |
Static Public Attributes | |
static const ArrayMatrix4 | IDENTITY |
Cache-friendly container of 4x4 matrices represented as a SoA array.
|
inline |
|
inline |
References mChunkBase.
|
inline |
|
inline |
References mChunkBase.
|
inline |
|
inline |
References mChunkBase.
|
inlinestatic |
References setAll().
|
inlinestatic |
References Ogre::Matrix4::_m, and mChunkBase.
|
inlinestatic |
References setAll().
|
inline |
Converts the given quaternion to a 3x3 matrix representation and fill our values.
The | quaternion to convert from. |
|
inline |
Converts the given quaternion to a 3x3 matrix representation and fill our values.
q | The quaternion to convert from. |
|
inline |
Converts the given quaternion to a 3x3 matrix representation and fill our values.
q | The quaternion to convert from. |
|
inline |
References Ogre::Matrix4::_m, ARRAY_PACKED_REALS, and RESTRICT_ALIAS.
|
inline |
References Ogre::Matrix4::_m, ARRAY_PACKED_REALS, and RESTRICT_ALIAS.
|
inline |
References Ogre::Matrix4::_m, ARRAY_PACKED_REALS, and RESTRICT_ALIAS.
|
inline |
STRONGLY Prefer using.
|
inline |
STRONGLY Prefer using.
|
inline |
STRONGLY Prefer using.
|
inline |
Check whether or not the matrix is affine matrix.
|
inline |
Check whether or not the matrix is affine matrix.
|
inline |
Check whether or not the matrix is affine matrix.
|
inline |
Converts ARRAY_PACKED_REALS matrices into this ArrayMatrix.
|
inline |
Converts ARRAY_PACKED_REALS matrices into this ArrayMatrix.
|
inline |
Converts ARRAY_PACKED_REALS matrices into this ArrayMatrix.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Prefer the update version 'a *= b' A LOT over 'a = a * b' (copying from an ArrayMatrix4 is 256 bytes!)
|
inline |
Prefer the update version 'a *= b' A LOT over 'a = a * b' (copying from an ArrayMatrix4 is 256 bytes!)
|
inline |
Prefer the update version 'a *= b' A LOT over 'a = a * b' (copying from an ArrayMatrix4 is 256 bytes!)
|
inline |
Assigns the value of the other matrix.
Does not reference the ptr address, but rather perform a memory copy
rkMatrix | The other matrix |
References mChunkBase.
|
inline |
Assigns the value of the other matrix.
Does not reference the ptr address, but rather perform a memory copy
rkMatrix | The other matrix |
References mChunkBase.
|
inline |
Assigns the value of the other matrix.
Does not reference the ptr address, but rather perform a memory copy
rkMatrix | The other matrix |
References mChunkBase.
|
inline |
Sets all packed matrices to the same value as the scalar input matrix.
References Ogre::Matrix4::_m.
Referenced by createAllFromMatrix4().
|
inline |
Sets all packed matrices to the same value as the scalar input matrix.
References Ogre::Matrix4::_m.
|
inline |
Sets all packed matrices to the same value as the scalar input matrix.
References Ogre::Matrix4::_m.
|
inline |
References Ogre::Matrix4::_m, ARRAY_PACKED_REALS, and RESTRICT_ALIAS.
|
inline |
References Ogre::Matrix4::_m, ARRAY_PACKED_REALS, and RESTRICT_ALIAS.
|
inline |
References Ogre::Matrix4::_m, ARRAY_PACKED_REALS, and RESTRICT_ALIAS.
|
inline |
Converts these matrices contained in this ArrayMatrix to AoS form and stores them in dst.
|
inline |
Converts these matrices contained in this ArrayMatrix to AoS form and stores them in dst.
|
inline |
Converts these matrices contained in this ArrayMatrix to AoS form and stores them in dst.
|
static |
ArrayReal Ogre::ArrayMatrix4::mChunkBase |
Referenced by ArrayMatrix4(), createAllFromMatrix4(), and operator=().