fix: remove row_major from GLSL — fixes fish-eye and broken projection

Root cause: System.Numerics.Matrix4x4 uses row-major storage with row-vector
convention (v * M). GLSL with layout(row_major) does column-vector (M * v),
which effectively transposes the matrix, breaking the projection.

Fix: remove row_major from layout qualifiers. GLSL then interprets the
row-major data as column-major (effectively transposing it), so M * v in
GLSL equals v * M in System.Numerics — correct result.

The Y-flip (M22 *= -1) is still needed for Vulkan's Y-down clip space.
This commit is contained in:
emil28092005
2026-06-18 16:56:44 +03:00
parent 44bae31495
commit 398cc88ae2
2 changed files with 2 additions and 2 deletions
Binary file not shown.