diff --git a/Runtime/Particle/CElementGen.cpp b/Runtime/Particle/CElementGen.cpp index 262b16dd3..e13b80a26 100644 --- a/Runtime/Particle/CElementGen.cpp +++ b/Runtime/Particle/CElementGen.cpp @@ -1789,7 +1789,7 @@ void CElementGen::RenderParticlesIndirectTexture() { void CElementGen::SetOrientation(const zeus::CTransform& orientation) { x1d8_orientation = orientation; - x208_orientationInverse = x1d8_orientation.inverse(); + x208_orientationInverse = x1d8_orientation.inverse().basis; for (const std::unique_ptr& ch : x290_activePartChildren) ch->SetOrientation(orientation); diff --git a/Runtime/Particle/CElementGen.hpp b/Runtime/Particle/CElementGen.hpp index a97ff757d..7b00e7aa8 100644 --- a/Runtime/Particle/CElementGen.hpp +++ b/Runtime/Particle/CElementGen.hpp @@ -79,7 +79,7 @@ private: zeus::CTransform x178_localScaleTransform = zeus::CTransform(); zeus::CTransform x1a8_localScaleTransformInverse = zeus::CTransform(); zeus::CTransform x1d8_orientation = zeus::CTransform(); - zeus::CTransform x208_orientationInverse = zeus::CTransform(); + zeus::CMatrix3f x208_orientationInverse = zeus::CMatrix3f(); zeus::CTransform x22c_globalOrientation = zeus::CTransform(); u32 x25c_activeParticleCount = 0;