From 8491f095f175398d577aba76f56d785cdda0699e Mon Sep 17 00:00:00 2001 From: Ben Kyd Date: Mon, 29 Jul 2019 05:49:35 +0100 Subject: [PATCH] don't need to pass around a camera --- src/core/renderer.cpp | 5 ++--- src/core/renderer.hpp | 4 +--- src/engine/progressiverenderer.cpp | 3 +-- src/engine/progressiverenderer.hpp | 4 +--- src/inferno.cpp | 14 +++----------- src/inferno.hpp | 3 --- test/main.cpp | 1 - 7 files changed, 8 insertions(+), 26 deletions(-) diff --git a/src/core/renderer.cpp b/src/core/renderer.cpp index 507b8f0..4612cae 100644 --- a/src/core/renderer.cpp +++ b/src/core/renderer.cpp @@ -26,8 +26,7 @@ void Renderer::Init(DisplayInterface* display) { m_interface = display; } -void Renderer::InitRender(Camera* camera, Scene* scene) { - m_camera = camera; +void Renderer::InitRender(Scene* scene) { m_scene = scene; RendererInitialized = true; } @@ -58,7 +57,7 @@ void Renderer::Render(uint32_t* framebuffer) { void Renderer::RenderProgressive() { m_progressive = new ProgressiveRenderer(); - m_progressive->Init(m_interface, m_camera, m_scene); + m_progressive->Init(m_interface, m_scene); m_progressive->Render(); } diff --git a/src/core/renderer.hpp b/src/core/renderer.hpp index e17ad38..0184e0f 100644 --- a/src/core/renderer.hpp +++ b/src/core/renderer.hpp @@ -7,7 +7,6 @@ class DisplayInterface; class ProgressiveRenderer; -class Camera; class Scene; // Function initProgressive or whatever takes a pointer to the display @@ -20,7 +19,7 @@ public: void Init(); void Init(DisplayInterface* display); - void InitRender(Camera* camera, Scene* scene); + void InitRender(Scene* scene); bool RendererInitialized = false; @@ -34,7 +33,6 @@ private: DisplayInterface* m_interface = nullptr; uint32_t* m_framebuffer = nullptr; - Camera* m_camera = nullptr; Scene* m_scene = nullptr; void RenderProgressive(); diff --git a/src/engine/progressiverenderer.cpp b/src/engine/progressiverenderer.cpp index 4a7ee08..558a400 100644 --- a/src/engine/progressiverenderer.cpp +++ b/src/engine/progressiverenderer.cpp @@ -11,9 +11,8 @@ ProgressiveRenderer::ProgressiveRenderer() { } -void ProgressiveRenderer::Init(DisplayInterface* interface, Camera* camera, Scene* scene) { +void ProgressiveRenderer::Init(DisplayInterface* interface, Scene* scene) { m_interface = interface; - m_camera = camera; m_scene = scene; } diff --git a/src/engine/progressiverenderer.hpp b/src/engine/progressiverenderer.hpp index 0661ccf..c3d8835 100644 --- a/src/engine/progressiverenderer.hpp +++ b/src/engine/progressiverenderer.hpp @@ -3,21 +3,19 @@ class DisplayInterface; -class Camera; class Scene; class ProgressiveRenderer { public: ProgressiveRenderer(); - void Init(DisplayInterface* interface, Camera* camera, Scene* scene); + void Init(DisplayInterface* interface, Scene* scene); void Render(); private: DisplayInterface* m_interface = nullptr; - Camera* m_camera = nullptr; Scene* m_scene = nullptr; }; diff --git a/src/inferno.cpp b/src/inferno.cpp index 0a63943..2e3d3e4 100644 --- a/src/inferno.cpp +++ b/src/inferno.cpp @@ -49,18 +49,10 @@ void InfernoEngine::SetScene(Scene* scene) { m_scene = scene; } -void InfernoEngine::SetCamera(Camera* camera) { - m_camera = camera; -} - -void InfernoEngine::AutoInitCamera() { - // set up a camera -} - void InfernoEngine::Ready() { - if (!m_camera || !m_scene) return; - m_renderer->InitRender(m_camera, m_scene); - + if (!m_scene) return; + m_renderer->InitRender(m_scene); + if (!m_initialized) m_initialized = true; } diff --git a/src/inferno.hpp b/src/inferno.hpp index c2757ad..4087757 100644 --- a/src/inferno.hpp +++ b/src/inferno.hpp @@ -30,8 +30,6 @@ public: // Functions related to raytracing void SetScene(Scene* scene); - void SetCamera(Camera* camera); - void AutoInitCamera(); void Ready(); void Render(); @@ -61,7 +59,6 @@ private: Display* m_display = nullptr; Renderer* m_renderer = nullptr; - Camera* m_camera = nullptr; Scene* m_scene = nullptr; }; diff --git a/test/main.cpp b/test/main.cpp index 5b2e723..eec80de 100644 --- a/test/main.cpp +++ b/test/main.cpp @@ -11,7 +11,6 @@ int main(int argc, char** argv) { std::cout << "Error initializing window: " << inferno.LastError() << std::endl; } - inferno.SetCamera(new Camera()); inferno.SetScene(new Scene()); inferno.Ready();