This commit is contained in:
ZY4N
2024-12-22 16:58:40 +01:00
parent 2704814de2
commit db8db8f9d7
161 changed files with 17102 additions and 0 deletions

21
include/scene/camera.hpp Executable file
View File

@@ -0,0 +1,21 @@
#pragma once
#include "scene/camera_view.hpp"
class camera {
public:
virtual ~camera() = default;
virtual void update(
float time_delta,
glm::vec2 mouse_pos_delta,
float mouse_wheel_delta,
camera_view& view
) = 0;
virtual void look_at(
const glm::vec3& origin,
const glm::vec3& target,
camera_view& view
) = 0;
};

30
include/scene/flying_camera.hpp Executable file
View File

@@ -0,0 +1,30 @@
#pragma once
#include "scene/camera.hpp"
class flying_camera : public camera {
public:
explicit flying_camera(float yaw, float pitch, float roll);
void update(
float time_delta,
glm::vec2 mouse_pos_delta,
float mouse_wheel_delta,
camera_view& view
) override;
void look_at(
const glm::vec3& origin,
const glm::vec3& target,
camera_view& view
) override;
private:
glm::vec3 m_velocity{ 0.0f, 0.0f, 0.0f };
glm::mat3 m_world_rotation;
glm::vec3 m_world_up;
float m_pitch, m_yaw, m_roll;
};

View File

@@ -0,0 +1,10 @@
#pragma once
#include "glm/glm.hpp"
struct lighting_setup
{
glm::vec3 point_light_direction;
glm::vec3 point_light_color;
glm::vec3 ambient_light_color;
};