mirror of https://github.com/AxioDL/zeus.git
Additional Athena support
This commit is contained in:
parent
1901de914c
commit
2efe395f50
|
@ -17,6 +17,10 @@ public:
|
||||||
CTransform() : m_basis(false) {}
|
CTransform() : m_basis(false) {}
|
||||||
CTransform(const CMatrix3f& basis, const CVector3f& offset=CVector3f::skZero) :
|
CTransform(const CMatrix3f& basis, const CVector3f& offset=CVector3f::skZero) :
|
||||||
m_basis(basis), m_origin(offset) {}
|
m_basis(basis), m_origin(offset) {}
|
||||||
|
#if ZE_ATHENA_TYPES
|
||||||
|
CTransform(const atVec4f* mtx)
|
||||||
|
: m_basis(mtx[0], mtx[1], mtx[2]), m_origin(mtx[0].vec[3], mtx[1].vec[3], mtx[2].vec[3]) {}
|
||||||
|
#endif
|
||||||
|
|
||||||
inline CTransform operator*(const CTransform& rhs) const
|
inline CTransform operator*(const CTransform& rhs) const
|
||||||
{return CTransform(m_basis * rhs.m_basis, m_origin + (m_basis * rhs.m_origin));}
|
{return CTransform(m_basis * rhs.m_basis, m_origin + (m_basis * rhs.m_origin));}
|
||||||
|
|
|
@ -22,7 +22,15 @@ public:
|
||||||
#if ZE_ATHENA_TYPES
|
#if ZE_ATHENA_TYPES
|
||||||
CVector3f(const atVec3f& vec)
|
CVector3f(const atVec3f& vec)
|
||||||
#if __SSE__
|
#if __SSE__
|
||||||
: mVec128(vec.mVec128){}
|
: mVec128(vec.mVec128){}
|
||||||
|
#else
|
||||||
|
{
|
||||||
|
x = vec.vec[0], y = vec.vec[1], z = vec.vec[2], v[3] = 0.0f;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
CVector3f(const atVec4f& vec)
|
||||||
|
#if __SSE__
|
||||||
|
: mVec128(vec.mVec128){}
|
||||||
#else
|
#else
|
||||||
{
|
{
|
||||||
x = vec.vec[0], y = vec.vec[1], z = vec.vec[2], v[3] = 0.0f;
|
x = vec.vec[0], y = vec.vec[1], z = vec.vec[2], v[3] = 0.0f;
|
||||||
|
|
Loading…
Reference in New Issue