diff --git a/impls/Windows_Libs/Render/src/RendererState.cpp b/impls/Windows_Libs/Render/src/RendererState.cpp index 49ab0b5..6c48ebd 100644 --- a/impls/Windows_Libs/Render/src/RendererState.cpp +++ b/impls/Windows_Libs/Render/src/RendererState.cpp @@ -477,8 +477,10 @@ void Renderer::StateSetTexGenCol(int col, float x, float y, float z, float w, bo std::memset(&modelView, 0, sizeof(modelView)); std::memcpy(&modelView, MatrixGet(MATRIX_MODE_MODELVIEW), sizeof(modelView)); + DirectX::XMMATRIX mv = DirectX::XMMatrixTranspose(DirectX::XMLoadFloat4x4(&modelView)); + DirectX::XMVECTOR determinant = DirectX::XMVectorZero(); - const DirectX::XMMATRIX inverse = DirectX::XMMatrixInverse(&determinant, DirectX::XMLoadFloat4x4(&modelView)); + const DirectX::XMMATRIX inverse = DirectX::XMMatrixInverse(&determinant, mv); plane = DirectX::XMVector4Transform(plane, inverse); }