From 35269315cc22b1ab2db7b0dcc96cceede9d7b3e2 Mon Sep 17 00:00:00 2001 From: Ayumiwii Date: Mon, 18 Jan 2016 13:51:32 +0100 Subject: [PATCH] Rename the thingie --- include/Engine/Rendering/DrawScenePass.h | 2 +- include/Engine/Rendering/RenderQueue.h | 2 +- include/Engine/Rendering/RenderQueueFactory.h | 2 +- include/Engine/Rendering/Renderer.h | 2 +- ...mationSystem.h => ExplosionEffectSystem.h} | 8 +-- include/Game/Game.h | 2 +- resources/Schema/Components.xsd | 2 +- ...{CoolDeathAnim.xml => ExplosionEffect.xml} | 4 +- ...{CoolDeathAnim.xsd => ExplosionEffect.xsd} | 2 +- resources/Schema/Entities/Test.xml | 4 +- ...im.frag.glsl => ExplosionEffect.frag.glsl} | 0 ...im.geom.glsl => ExplosionEffect.geom.glsl} | 0 ...im.vert.glsl => ExplosionEffect.vert.glsl} | 0 src/Engine/Rendering/DrawScenePass.cpp | 64 +++++++++---------- src/Engine/Rendering/RenderQueueFactory.cpp | 6 +- src/Engine/Rendering/Renderer.cpp | 12 ++-- src/Game/Game.cpp | 2 +- 17 files changed, 57 insertions(+), 57 deletions(-) rename include/Game/{CoolDeathAnimationSystem.h => ExplosionEffectSystem.h} (75%) rename resources/Schema/Components/{CoolDeathAnim.xml => ExplosionEffect.xml} (92%) rename resources/Schema/Components/{CoolDeathAnim.xsd => ExplosionEffect.xsd} (98%) rename resources/Shaders/{CoolDeathAnim.frag.glsl => ExplosionEffect.frag.glsl} (100%) rename resources/Shaders/{CoolDeathAnim.geom.glsl => ExplosionEffect.geom.glsl} (100%) rename resources/Shaders/{CoolDeathAnim.vert.glsl => ExplosionEffect.vert.glsl} (100%) diff --git a/include/Engine/Rendering/DrawScenePass.h b/include/Engine/Rendering/DrawScenePass.h index 516759f2..ec82eed9 100644 --- a/include/Engine/Rendering/DrawScenePass.h +++ b/include/Engine/Rendering/DrawScenePass.h @@ -31,7 +31,7 @@ private: ShaderProgram* m_BasicForwardProgram; - ShaderProgram* m_CoolDeathAnimProgram; + ShaderProgram* m_ExplosionEffectProgram; }; #endif \ No newline at end of file diff --git a/include/Engine/Rendering/RenderQueue.h b/include/Engine/Rendering/RenderQueue.h index 3267a3cf..dda57855 100644 --- a/include/Engine/Rendering/RenderQueue.h +++ b/include/Engine/Rendering/RenderQueue.h @@ -64,7 +64,7 @@ struct ModelJob : RenderJob }; // Cool Death Animation -struct CoolDeathAnimationJob : ModelJob +struct ExplosionEffectJob : ModelJob { glm::vec3 ExplosionOrigin; double TimeSinceDeath = 0.f; //Seconds diff --git a/include/Engine/Rendering/RenderQueueFactory.h b/include/Engine/Rendering/RenderQueueFactory.h index e1a3507a..5b5b0c73 100644 --- a/include/Engine/Rendering/RenderQueueFactory.h +++ b/include/Engine/Rendering/RenderQueueFactory.h @@ -25,7 +25,7 @@ private: void FillModels(World* world, RenderQueue* renderQueue); void FillLights(World* world, RenderQueue* renderQueue); - void FillCoolDeathAnim(World* world, RenderQueue* renderQueue); + void FillExplosionEffect(World* world, RenderQueue* renderQueue); glm::mat4 ModelMatrix(World* world, EntityID entity); }; diff --git a/include/Engine/Rendering/Renderer.h b/include/Engine/Rendering/Renderer.h index 476ac9f9..4f7f98a5 100644 --- a/include/Engine/Rendering/Renderer.h +++ b/include/Engine/Rendering/Renderer.h @@ -119,7 +119,7 @@ private: ShaderProgram* m_CalculateFrustumProgram; ShaderProgram* m_LightCullProgram; - ShaderProgram* m_CoolDeathAnimProgram; + ShaderProgram* m_ExplosionEffectProgram; }; diff --git a/include/Game/CoolDeathAnimationSystem.h b/include/Game/ExplosionEffectSystem.h similarity index 75% rename from include/Game/CoolDeathAnimationSystem.h rename to include/Game/ExplosionEffectSystem.h index e20c23c5..ed411d39 100644 --- a/include/Game/CoolDeathAnimationSystem.h +++ b/include/Game/ExplosionEffectSystem.h @@ -1,16 +1,16 @@ #include "Common.h" #include "Core/System.h" -class CoolDeathAnimationSystem : public PureSystem +class ExplosionEffectSystem : public PureSystem { public: - CoolDeathAnimationSystem(EventBroker* eventBroker) - : PureSystem(eventBroker, "CoolDeathAnim") + ExplosionEffectSystem(EventBroker* eventBroker) + : PureSystem(eventBroker, "ExplosionEffect") { } virtual void UpdateComponent(World* world, ComponentWrapper& object, double dt) override { - ComponentWrapper& Component = world->GetComponent(object.EntityID, "CoolDeathAnim"); + ComponentWrapper& Component = world->GetComponent(object.EntityID, "ExplosionEffect"); if ((double)Component["TimeSinceDeath"] > (double)Component["ExplosionDuration"]) { (double)Component["TimeSinceDeath"] = 0.f; diff --git a/include/Game/Game.h b/include/Game/Game.h index 900b7aec..96ab3e0e 100644 --- a/include/Game/Game.h +++ b/include/Game/Game.h @@ -16,7 +16,7 @@ #include "Core/EntityXMLFile.h" #include "Core/SystemPipeline.h" #include "RaptorCopterSystem.h" -#include "CoolDeathAnimationSystem.h" +#include "ExplosionEffectSystem.h" #include "PlayerSystem.h" #include "Editor/EditorSystem.h" diff --git a/resources/Schema/Components.xsd b/resources/Schema/Components.xsd index f95937ee..50c1fb2e 100644 --- a/resources/Schema/Components.xsd +++ b/resources/Schema/Components.xsd @@ -8,5 +8,5 @@ - + \ No newline at end of file diff --git a/resources/Schema/Components/CoolDeathAnim.xml b/resources/Schema/Components/ExplosionEffect.xml similarity index 92% rename from resources/Schema/Components/CoolDeathAnim.xml rename to resources/Schema/Components/ExplosionEffect.xml index 4f48b3e1..4b414944 100644 --- a/resources/Schema/Components/CoolDeathAnim.xml +++ b/resources/Schema/Components/ExplosionEffect.xml @@ -1,4 +1,4 @@ - + 0 2 @@ -13,4 +13,4 @@ 0 - \ No newline at end of file + \ No newline at end of file diff --git a/resources/Schema/Components/CoolDeathAnim.xsd b/resources/Schema/Components/ExplosionEffect.xsd similarity index 98% rename from resources/Schema/Components/CoolDeathAnim.xsd rename to resources/Schema/Components/ExplosionEffect.xsd index c50b0e53..cdde5e52 100644 --- a/resources/Schema/Components/CoolDeathAnim.xsd +++ b/resources/Schema/Components/ExplosionEffect.xsd @@ -3,7 +3,7 @@ - + A component that trigger the death effect diff --git a/resources/Schema/Entities/Test.xml b/resources/Schema/Entities/Test.xml index 33a82f27..ee7fc7b0 100644 --- a/resources/Schema/Entities/Test.xml +++ b/resources/Schema/Entities/Test.xml @@ -72,7 +72,7 @@ Models/Core/UnitRaptor.obj - + 0 2 @@ -87,7 +87,7 @@ 0 - + diff --git a/resources/Shaders/CoolDeathAnim.frag.glsl b/resources/Shaders/ExplosionEffect.frag.glsl similarity index 100% rename from resources/Shaders/CoolDeathAnim.frag.glsl rename to resources/Shaders/ExplosionEffect.frag.glsl diff --git a/resources/Shaders/CoolDeathAnim.geom.glsl b/resources/Shaders/ExplosionEffect.geom.glsl similarity index 100% rename from resources/Shaders/CoolDeathAnim.geom.glsl rename to resources/Shaders/ExplosionEffect.geom.glsl diff --git a/resources/Shaders/CoolDeathAnim.vert.glsl b/resources/Shaders/ExplosionEffect.vert.glsl similarity index 100% rename from resources/Shaders/CoolDeathAnim.vert.glsl rename to resources/Shaders/ExplosionEffect.vert.glsl diff --git a/src/Engine/Rendering/DrawScenePass.cpp b/src/Engine/Rendering/DrawScenePass.cpp index ef14e695..152e71f4 100644 --- a/src/Engine/Rendering/DrawScenePass.cpp +++ b/src/Engine/Rendering/DrawScenePass.cpp @@ -21,12 +21,12 @@ void DrawScenePass::InitializeShaderPrograms() m_BasicForwardProgram->Compile(); m_BasicForwardProgram->Link(); - m_CoolDeathAnimProgram = ResourceManager::Load("#CoolDeathAnimProgram"); - m_CoolDeathAnimProgram->AddShader(std::shared_ptr(new VertexShader("Shaders/CoolDeathAnim.vert.glsl"))); - m_CoolDeathAnimProgram->AddShader(std::shared_ptr(new GeometryShader("Shaders/CoolDeathAnim.geom.glsl"))); - m_CoolDeathAnimProgram->AddShader(std::shared_ptr(new FragmentShader("Shaders/CoolDeathAnim.frag.glsl"))); - m_CoolDeathAnimProgram->Compile(); - m_CoolDeathAnimProgram->Link(); + m_ExplosionEffectProgram = ResourceManager::Load("#ExplosionEffectProgram"); + m_ExplosionEffectProgram->AddShader(std::shared_ptr(new VertexShader("Shaders/ExplosionEffect.vert.glsl"))); + m_ExplosionEffectProgram->AddShader(std::shared_ptr(new GeometryShader("Shaders/ExplosionEffect.geom.glsl"))); + m_ExplosionEffectProgram->AddShader(std::shared_ptr(new FragmentShader("Shaders/ExplosionEffect.frag.glsl"))); + m_ExplosionEffectProgram->Compile(); + m_ExplosionEffectProgram->Link(); } @@ -41,46 +41,46 @@ void DrawScenePass::Draw(RenderQueueCollection& rq) //TODO: Render: Add code for more jobs than modeljobs. for (auto &job : rq.Forward) { - auto coolDeathAnimationJob = std::dynamic_pointer_cast(job); - if (coolDeathAnimationJob) { - GLuint ShaderHandle = m_CoolDeathAnimProgram->GetHandle(); //--- + auto explosionEffectJob = std::dynamic_pointer_cast(job); + if (explosionEffectJob) { + GLuint ShaderHandle = m_ExplosionEffectProgram->GetHandle(); //--- - m_CoolDeathAnimProgram->Bind(); + m_ExplosionEffectProgram->Bind(); //TODO: Kolla upp "header/include/common" shader saken så man slipper skicka in asmycket uniforms - glUniformMatrix4fv(glGetUniformLocation(ShaderHandle, "M"), 1, GL_FALSE, glm::value_ptr(coolDeathAnimationJob->ModelMatrix)); + glUniformMatrix4fv(glGetUniformLocation(ShaderHandle, "M"), 1, GL_FALSE, glm::value_ptr(explosionEffectJob->ModelMatrix)); glUniformMatrix4fv(glGetUniformLocation(ShaderHandle, "V"), 1, GL_FALSE, glm::value_ptr(m_Renderer->Camera()->ViewMatrix())); glUniformMatrix4fv(glGetUniformLocation(ShaderHandle, "P"), 1, GL_FALSE, glm::value_ptr(m_Renderer->Camera()->ProjectionMatrix())); - glUniform4fv(glGetUniformLocation(ShaderHandle, "Color"), 1, glm::value_ptr(coolDeathAnimationJob->Color)); - glUniform3fv(glGetUniformLocation(ShaderHandle, "ExplosionOrigin"), 1, glm::value_ptr(coolDeathAnimationJob->ExplosionOrigin)); - glUniform1f(glGetUniformLocation(ShaderHandle, "TimeSinceDeath"), coolDeathAnimationJob->TimeSinceDeath); - glUniform1f(glGetUniformLocation(ShaderHandle, "ExplosionDuration"), coolDeathAnimationJob->ExplosionDuration); - //glUniform1i(glGetUniformLocation(ShaderHandle, "Gravity"), coolDeathAnimationJob->Gravity); - //glUniform1f(glGetUniformLocation(ShaderHandle, "GravityForce"), coolDeathAnimationJob->GravityForce); - //glUniform1f(glGetUniformLocation(ShaderHandle, "ObjectRadius"), coolDeathAnimationJob->ObjectRadius); - glUniform4fv(glGetUniformLocation(ShaderHandle, "EndColor"), 1, glm::value_ptr(coolDeathAnimationJob->EndColor)); - glUniform1i(glGetUniformLocation(ShaderHandle, "Randomness"), coolDeathAnimationJob->Randomness); - glUniform1fv(glGetUniformLocation(ShaderHandle, "RandomNumbers"), 20, coolDeathAnimationJob->RandomNumbers.data()); - glUniform1f(glGetUniformLocation(ShaderHandle, "RandomnessScalar"), coolDeathAnimationJob->RandomnessScalar); - glUniform2fv(glGetUniformLocation(ShaderHandle, "Velocity"), 1, glm::value_ptr(coolDeathAnimationJob->Velocity)); - glUniform1i(glGetUniformLocation(ShaderHandle, "ColorByDistance"), coolDeathAnimationJob->ColorByDistance); - //glUniform1i(glGetUniformLocation(ShaderHandle, "ReverseAnimation"), coolDeathAnimationJob->ReverseAnimation); - //glUniform1i(glGetUniformLocation(ShaderHandle, "Wireframe"), coolDeathAnimationJob->Wireframe); - glUniform1i(glGetUniformLocation(ShaderHandle, "ExponentialAccelaration"), coolDeathAnimationJob->ExponentialAccelaration); + glUniform4fv(glGetUniformLocation(ShaderHandle, "Color"), 1, glm::value_ptr(explosionEffectJob->Color)); + glUniform3fv(glGetUniformLocation(ShaderHandle, "ExplosionOrigin"), 1, glm::value_ptr(explosionEffectJob->ExplosionOrigin)); + glUniform1f(glGetUniformLocation(ShaderHandle, "TimeSinceDeath"), explosionEffectJob->TimeSinceDeath); + glUniform1f(glGetUniformLocation(ShaderHandle, "ExplosionDuration"), explosionEffectJob->ExplosionDuration); + //glUniform1i(glGetUniformLocation(ShaderHandle, "Gravity"), explosionEffectJob->Gravity); + //glUniform1f(glGetUniformLocation(ShaderHandle, "GravityForce"), explosionEffectJob->GravityForce); + //glUniform1f(glGetUniformLocation(ShaderHandle, "ObjectRadius"), explosionEffectJob->ObjectRadius); + glUniform4fv(glGetUniformLocation(ShaderHandle, "EndColor"), 1, glm::value_ptr(explosionEffectJob->EndColor)); + glUniform1i(glGetUniformLocation(ShaderHandle, "Randomness"), explosionEffectJob->Randomness); + glUniform1fv(glGetUniformLocation(ShaderHandle, "RandomNumbers"), 20, explosionEffectJob->RandomNumbers.data()); + glUniform1f(glGetUniformLocation(ShaderHandle, "RandomnessScalar"), explosionEffectJob->RandomnessScalar); + glUniform2fv(glGetUniformLocation(ShaderHandle, "Velocity"), 1, glm::value_ptr(explosionEffectJob->Velocity)); + glUniform1i(glGetUniformLocation(ShaderHandle, "ColorByDistance"), explosionEffectJob->ColorByDistance); + //glUniform1i(glGetUniformLocation(ShaderHandle, "ReverseAnimation"), explosionEffectJob->ReverseAnimation); + //glUniform1i(glGetUniformLocation(ShaderHandle, "Wireframe"), explosionEffectJob->Wireframe); + glUniform1i(glGetUniformLocation(ShaderHandle, "ExponentialAccelaration"), explosionEffectJob->ExponentialAccelaration); //TODO: Renderer: bättre textur felhantering samt fler texturer stöd - if (coolDeathAnimationJob->DiffuseTexture != nullptr) { + if (explosionEffectJob->DiffuseTexture != nullptr) { glActiveTexture(GL_TEXTURE0); - glBindTexture(GL_TEXTURE_2D, coolDeathAnimationJob->DiffuseTexture->m_Texture); + glBindTexture(GL_TEXTURE_2D, explosionEffectJob->DiffuseTexture->m_Texture); } else { glActiveTexture(GL_TEXTURE0); glBindTexture(GL_TEXTURE_2D, m_WhiteTexture->m_Texture); } - glBindVertexArray(coolDeathAnimationJob->Model->VAO); - glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, coolDeathAnimationJob->Model->ElementBuffer); - glDrawElementsBaseVertex(GL_TRIANGLES, coolDeathAnimationJob->EndIndex - coolDeathAnimationJob->StartIndex + 1, GL_UNSIGNED_INT, 0, coolDeathAnimationJob->StartIndex); + glBindVertexArray(explosionEffectJob->Model->VAO); + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, explosionEffectJob->Model->ElementBuffer); + glDrawElementsBaseVertex(GL_TRIANGLES, explosionEffectJob->EndIndex - explosionEffectJob->StartIndex + 1, GL_UNSIGNED_INT, 0, explosionEffectJob->StartIndex); continue; } diff --git a/src/Engine/Rendering/RenderQueueFactory.cpp b/src/Engine/Rendering/RenderQueueFactory.cpp index eacea09a..7540925d 100644 --- a/src/Engine/Rendering/RenderQueueFactory.cpp +++ b/src/Engine/Rendering/RenderQueueFactory.cpp @@ -90,7 +90,7 @@ void RenderQueueFactory::FillModels(World* world, RenderQueue* renderQueue) } for (auto texGroup : model->TextureGroups) { - bool hasDeathComp = world->HasComponent(modelC.EntityID, "CoolDeathAnim"); + bool hasDeathComp = world->HasComponent(modelC.EntityID, "ExplosionEffect"); if (!hasDeathComp) { ModelJob job; @@ -110,9 +110,9 @@ void RenderQueueFactory::FillModels(World* world, RenderQueue* renderQueue) renderQueue->Add(job); } else { - CoolDeathAnimationJob job; + ExplosionEffectJob job; - auto deathComp = world->GetComponent(modelC.EntityID, "CoolDeathAnim"); + auto deathComp = world->GetComponent(modelC.EntityID, "ExplosionEffect"); job.ExplosionOrigin = (glm::vec3)deathComp["ExplosionOrigin"]; job.TimeSinceDeath = (double)deathComp["TimeSinceDeath"]; diff --git a/src/Engine/Rendering/Renderer.cpp b/src/Engine/Rendering/Renderer.cpp index e96d3df3..b509c664 100644 --- a/src/Engine/Rendering/Renderer.cpp +++ b/src/Engine/Rendering/Renderer.cpp @@ -76,12 +76,12 @@ void Renderer::InitializeShaders() m_DrawScreenQuadProgram->Compile(); m_DrawScreenQuadProgram->Link(); - m_CoolDeathAnimProgram = ResourceManager::Load("#CoolDeathAnimProgram"); - //m_CoolDeathAnimProgram->AddShader(std::shared_ptr(new VertexShader("Shaders/CoolDeathAnim.vert.glsl"))); - //m_CoolDeathAnimProgram->AddShader(std::shared_ptr(new GeometryShader("Shaders/CoolDeathAnim.geom.glsl"))); - //m_CoolDeathAnimProgram->AddShader(std::shared_ptr(new FragmentShader("Shaders/CoolDeathAnim.frag.glsl"))); - //m_CoolDeathAnimProgram->Compile(); - //m_CoolDeathAnimProgram->Link(); + m_ExplosionEffectProgram = ResourceManager::Load("#ExplosionEffectProgram"); + //m_ExplosionEffectProgram->AddShader(std::shared_ptr(new VertexShader("Shaders/ExplosionEffect.vert.glsl"))); + //m_ExplosionEffectProgram->AddShader(std::shared_ptr(new GeometryShader("Shaders/ExplosionEffect.geom.glsl"))); + //m_ExplosionEffectProgram->AddShader(std::shared_ptr(new FragmentShader("Shaders/ExplosionEffect.frag.glsl"))); + //m_ExplosionEffectProgram->Compile(); + //m_ExplosionEffectProgram->Link(); diff --git a/src/Game/Game.cpp b/src/Game/Game.cpp index fdc22db2..403a5617 100644 --- a/src/Game/Game.cpp +++ b/src/Game/Game.cpp @@ -57,7 +57,7 @@ Game::Game(int argc, char* argv[]) m_SystemPipeline->AddSystem(m_Renderer); m_SystemPipeline->AddSystem(); m_SystemPipeline->AddSystem(); - m_SystemPipeline->AddSystem(); + m_SystemPipeline->AddSystem(); // Invoke network if (m_Config->Get("Networking.StartNetwork", false)) {