27 static void SetupRenderPasses();
32 uint64_t GetRenderOutput();
35 void OffsetRotation(
float pitch,
float yaw);
36 void OffsetPosition(
float x,
float y,
float z);
37 void ResizeViewport(uint32_t width, uint32_t height);
38 void UpdateProjectionMatrix();
39 void UpdateViewMatrix();
40 glm::mat4& GetProjectionMatrix();
41 glm::mat4& GetViewMatrix();
44 bool isGridEnabled =
true;
45 bool isBoundingSphereGizmoEnabled =
false;
46 bool isBoundingBoxGizmoEnabled =
false;
47 bool isColliderGizmoEnabled =
true;
49 glm::vec3 GetForward()
const;
50 glm::vec3 GetRight()
const;
51 glm::vec3 GetUp()
const;
63 std::array<GraphicsAPI::Image*, 3> mousePickRenderTarget{};
64 std::array<GraphicsAPI::Framebuffer*, 3> mousePickFramebuffer{};
65 std::array<GraphicsAPI::DescriptorSet*, 3> mousePickDescriptorSet{};
66 std::array<GraphicsAPI::Buffer*, 3> mousePickMatrixBuffer{};
67 std::array<GraphicsAPI::Buffer*, 3> mousePickResponseBuffer{};
72 glm::vec3 position = glm::vec3();
73 glm::vec3 eulerAngles = glm::vec3();
74 glm::quat rotation = glm::quat();
76 uint32_t height = 600;
77 float fieldOfView = glm::radians(80.0f);
78 float nearPlaneDistance = 0.1f;
79 float farPlaneDistance = 150.f;