summaryrefslogtreecommitdiff
path: root/client/src/camera.rs
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2025-01-10 03:11:29 +0100
committermetamuffin <metamuffin@disroot.org>2025-01-10 03:11:29 +0100
commit5d935c26589c014e6dc2941481988abf50e51fdf (patch)
treebc679c9e6ef6783749d3413c0e8368979dbb6b15 /client/src/camera.rs
parent3ecd4588d4aa85a93a06aa5a1a3a60b918a72557 (diff)
downloadweareserver-5d935c26589c014e6dc2941481988abf50e51fdf.tar
weareserver-5d935c26589c014e6dc2941481988abf50e51fdf.tar.bz2
weareserver-5d935c26589c014e6dc2941481988abf50e51fdf.tar.zst
fix triple inverted projection madness
Diffstat (limited to 'client/src/camera.rs')
-rw-r--r--client/src/camera.rs8
1 files changed, 4 insertions, 4 deletions
diff --git a/client/src/camera.rs b/client/src/camera.rs
index d7a69c5..f5a911b 100644
--- a/client/src/camera.rs
+++ b/client/src/camera.rs
@@ -33,15 +33,15 @@ impl Camera {
}
}
pub fn update(&mut self, input_move: Vec3, input_rot: Vec2, dt: f32) {
- self.pos += self.rotation_mat() * (-vec3(input_move.z, input_move.y, input_move.x) * dt);
- self.rot.x += input_rot.x * 0.002;
- self.rot.y += input_rot.y * 0.002;
+ self.pos += self.rotation_mat() * (vec3(input_move.z, input_move.y, -input_move.x) * dt);
+ self.rot.x += input_rot.x * -0.002;
+ self.rot.y += input_rot.y * -0.002;
}
pub fn rotation_mat(&self) -> Mat3 {
Mat3::from_euler(EulerRot::YXZ, self.rot.x, self.rot.y, self.rot.z)
}
pub fn to_matrix(&self) -> Mat4 {
- Mat4::perspective_infinite_reverse_rh(self.fov, self.aspect, 0.1)
+ Mat4::perspective_rh(self.fov, self.aspect, 0.1, 100.)
* Mat4::from_mat3(self.rotation_mat().inverse())
* Mat4::from_translation(-self.pos)
}