Resolve quaternion fiasco

This commit is contained in:
2026-01-05 23:59:43 +01:00
parent 00cfdcd77b
commit bc2131f1e4
2 changed files with 4 additions and 5 deletions

2
castle

Submodule castle updated: e019470687...6c9a786926

View File

@@ -780,10 +780,9 @@ fn render(self: *Game) !void {
const camera_yscale = 1.0 / @tan(0.5 * self.player.vertical_fov_deg * std.math.rad_per_deg);
const camera_xscale = camera_yscale / camera_aspect_ratio;
const matrix_ws_to_vs = vm.Matrix4x4.mulMatrixAffine(
.initRotation(camera_rotation), // TODO This is wrong - it should be correct when inverted
.initTranslation(camera_position.negate()),
);
const matrix_ws_to_vs = vm.Matrix4x4
.initTranslationRotation(camera_position, camera_rotation)
.inverseOrthonormal();
// zig fmt: off
const matrix_vs_to_cs = vm.Matrix4x4.init(