#pragma once #include #include "glm/glm.hpp" #include "cbt/scene.hpp" #include "cbt/gfx.hpp" namespace cbt::scenes { class sphere final : public scene { public: sphere(); auto init() -> bool override; auto update(float delta_time) -> void override; auto render(int width, int height) -> void override; private: gfx::pipeline m_scene_pipeline; gfx::pipeline m_post_pipeline; gfx::render_target m_rt{0, 0}; std::chrono::steady_clock::time_point m_start; auto build_pipeline() -> bool; auto build_post_pipeline() -> bool; }; }