diff options
author | quou <quou@disroot.org> | 2025-01-14 00:04:55 +1100 |
---|---|---|
committer | quou <quou@disroot.org> | 2025-01-14 00:04:55 +1100 |
commit | fd488f9603f22db0312eadcdb93b7880922dc9a7 (patch) | |
tree | 15b7986e2c06eea57575f4c97811cbc65eaa120a /camera.cpp | |
parent | dfa0b6de5a070d1be63d04574c3b8ce469518250 (diff) |
misc refactoring
Diffstat (limited to 'camera.cpp')
-rw-r--r-- | camera.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/camera.cpp b/camera.cpp new file mode 100644 index 0000000..59a604e --- /dev/null +++ b/camera.cpp @@ -0,0 +1,25 @@ +#include "camera.hpp" + +void Camera::init(float vfov, const v3f& f, const v3f& p) { + fov = vfov; + forward = f; + position = p; + near = 0.1f; + far = 1000.0f; + asp = 1.0f; +} + +void Camera::update() { + v3f up(0.0f, 1.0f, 0.0f); + view = m4f::lookat(position, position + forward, up); + proj = m4f::pers(fov, asp, near, far); +} + +const m4f& Camera::get_view() const { + return view; +} + +const m4f& Camera::get_proj() const { + return proj; +} + |