From f7ab07067a95874ef95b8558bd512db7792b5dee Mon Sep 17 00:00:00 2001 From: Fireblade <3+fireblade@noreply.neolegacy.dev> Date: Tue, 30 Jun 2026 06:04:56 +0100 Subject: [PATCH] fix: untransposed renderer --- impls/Windows_Libs/Render/src/RendererState.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) 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); }