Refactoring camera

This commit is contained in:
Dynamitos
2025-04-11 23:13:19 +02:00
parent cc3f36d7fa
commit 9ac3755ad3
28 changed files with 53 additions and 124 deletions
+6 -2
View File
@@ -3,8 +3,12 @@
using namespace Seele;
using namespace Seele::System;
CameraUpdater::CameraUpdater(PScene scene) : ComponentSystem(scene) {}
CameraUpdater::CameraUpdater(PScene scene) : ComponentSystem<Component::Camera, Component::Transform>(scene) {}
CameraUpdater::~CameraUpdater() {}
void CameraUpdater::update(Component::Camera& camera) { camera.buildViewMatrix(); }
void CameraUpdater::update(Component::Camera& camera, Component::Transform& transform) {
Vector eyePos = transform.getPosition();
Vector lookAt = eyePos + transform.getForward();
camera.viewMatrix = glm::lookAt(eyePos, lookAt, Vector(0, 1, 0));
}
+2 -2
View File
@@ -4,12 +4,12 @@
namespace Seele {
namespace System {
class CameraUpdater : public ComponentSystem<Component::Camera> {
class CameraUpdater : public ComponentSystem<Component::Camera, Component::Transform> {
public:
CameraUpdater(PScene scene);
virtual ~CameraUpdater();
virtual void update(Component::Camera& camera);
virtual void update(Component::Camera& camera, Component::Transform& transform);
private:
};