Optimise some matrix operations, based on patch from ortalo.

Fixes #750.

This was SVN commit r9141.
This commit is contained in:
Ykkrosh
2011-04-01 18:33:47 +00:00
parent 6d3d93c355
commit 012c47057a
3 changed files with 169 additions and 132 deletions
+1 -3
View File
@@ -189,9 +189,7 @@ void CCamera::BuildCameraRay(int px, int py, CVector3D& origin, CVector3D& dir)
void CCamera::GetScreenCoordinates(const CVector3D& world, float& x, float& y) const
{
CMatrix3D transform;
m_Orientation.GetInverse(transform);
transform.Concatenate(m_ProjMat);
CMatrix3D transform = m_ProjMat * m_Orientation.GetInverse();
CVector4D screenspace = transform.Transform(CVector4D(world.X, world.Y, world.Z, 1.0f));