camera_controller.h 697 B

123456789101112131415161718192021
  1. #pragma once
  2. namespace Render::GL {
  3. class Camera;
  4. }
  5. namespace Game::Systems {
  6. class CameraController {
  7. public:
  8. static void move(Render::GL::Camera &camera, float dx, float dz);
  9. static void elevate(Render::GL::Camera &camera, float dy);
  10. static void move_up(Render::GL::Camera &camera, float dy);
  11. static void yaw(Render::GL::Camera &camera, float degrees);
  12. static void orbit(Render::GL::Camera &camera, float yaw_deg, float pitch_deg);
  13. static void zoom_distance(Render::GL::Camera &camera, float delta);
  14. static void set_follow_enabled(Render::GL::Camera &camera, bool enable);
  15. static void set_follow_lerp(Render::GL::Camera &camera, float alpha);
  16. };
  17. } // namespace Game::Systems