From 56d871cf549ac1d0ee85b7d3cb17a5de2d764383 Mon Sep 17 00:00:00 2001 From: ViktorLjung Date: Mon, 10 Mar 2014 00:08:32 +0100 Subject: [PATCH] Lite mer rendersystem --- Escape-the-Dawn/Systems/RenderSystem.cpp | 23 ++++++++++++++++------- Escape-the-Dawn/Systems/RenderSystem.h | 1 + 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/Escape-the-Dawn/Systems/RenderSystem.cpp b/Escape-the-Dawn/Systems/RenderSystem.cpp index 2be19c1..7c1b2b9 100644 --- a/Escape-the-Dawn/Systems/RenderSystem.cpp +++ b/Escape-the-Dawn/Systems/RenderSystem.cpp @@ -12,18 +12,27 @@ void Systems::RenderSystem::OnComponentCreated( std::string type, std:: shared_p void Systems::RenderSystem::UpdateEntity( double dt, EntityID entity, EntityID parent ) { - auto modelComponent = m_World->GetComponent(entity, "Model"); - if (modelComponent == nullptr) - return; auto transformComponent = m_World->GetComponent(entity, "Transform"); if (transformComponent == nullptr) return; + auto modelComponent = m_World->GetComponent(entity, "Model"); + if (modelComponent != nullptr) + { + if (m_CachedModels.find(modelComponent->ModelFile) == m_CachedModels.end()){ + m_CachedModels[modelComponent->ModelFile] = new Model(modelComponent->ModelFile); + } - if (m_CachedModels.find(modelComponent->ModelFile) == m_CachedModels.end()) { - m_CachedModels[modelComponent->ModelFile] = new Model(modelComponent->ModelFile); + Model* model = m_CachedModels[modelComponent->ModelFile]; + m_Renderer->AddModelToDraw(model, transformComponent->Position, transformComponent->Orientation); } - Model* model = m_CachedModels[modelComponent->ModelFile]; - m_Renderer->AddModelToDraw(model, transformComponent->Position, transformComponent->Orientation); + auto cameraComponent = m_World->GetComponent(entity, "Camera"); + if (cameraComponent != nullptr) + { + m_Renderer->GetCamera()->Position(transformComponent->Position); + m_Renderer->GetCamera()->Orientation(transformComponent->Orientation); + } + + } diff --git a/Escape-the-Dawn/Systems/RenderSystem.h b/Escape-the-Dawn/Systems/RenderSystem.h index 539cd83..fab25ea 100644 --- a/Escape-the-Dawn/Systems/RenderSystem.h +++ b/Escape-the-Dawn/Systems/RenderSystem.h @@ -6,6 +6,7 @@ #include "Texture.h" #include "Components/Model.h" #include "Components/Transform.h" +#include "Components/Camera.h" #include "Renderer.h" #include