23 explicit Skybox(
const std::array<std::string, 6>& facePaths);
26 explicit Skybox(
const std::string& panoramaPath);
29 Skybox(
float topR,
float topG,
float topB,
30 float midR,
float midG,
float midB,
31 float botR,
float botG,
float botB);
52 enum class SkyboxMode { Cubemap, Panorama, Gradient, Default };
53 SkyboxMode m_mode = SkyboxMode::Default;
56 std::array<std::string, 6> m_facePaths;
59 std::string m_panoramaPath;
62 float m_topR = 0.1f, m_topG = 0.3f, m_topB = 0.8f;
63 float m_midR = 0.5f, m_midG = 0.7f, m_midB = 1.0f;
64 float m_botR = 0.8f, m_botG = 0.85f, m_botB = 0.9f;
67 RefPtr<RenderEngine::Shader> m_shader;
68 RefPtr<RenderEngine::BufferBase> m_vertexBuffer;
69 RefPtr<RenderEngine::BufferBase> m_indexBuffer;
70 RefPtr<RenderEngine::BufferBase> m_constantBuffer;
71 RefPtr<Texture> m_cubemapTexture;
73 bool m_initialized =
false;