diff --git a/include/Core/Renderer.h b/include/Core/Renderer.h index d3c7054..ac84ef7 100755 --- a/include/Core/Renderer.h +++ b/include/Core/Renderer.h @@ -75,6 +75,7 @@ private: GLuint m_ScreenQuad = 0; Model* m_UnitSphere = nullptr; + Model* m_UnitQuad = nullptr; GLuint m_rbDepthBuffer = 0; GLuint m_fbDeferred1 = 0; diff --git a/src/game/Core/Renderer.cpp b/src/game/Core/Renderer.cpp index fa8e88e..48e2afc 100755 --- a/src/game/Core/Renderer.cpp +++ b/src/game/Core/Renderer.cpp @@ -111,6 +111,7 @@ void dd::Renderer::LoadShaders() void dd::Renderer::CreateBuffers() { m_ScreenQuad = CreateQuad(); + m_UnitQuad = ResourceManager::Load("Models/Core/UnitQuad.obj"); m_UnitSphere = ResourceManager::Load("Models/Core/UnitSphere.obj"); glGenRenderbuffers(1, &m_rbDepthBuffer); @@ -329,7 +330,6 @@ void dd::Renderer::DrawScene(RenderQueue &objects, ShaderProgram &program) if (spriteJob) { glm::mat4 modelMatrix = spriteJob->ModelMatrix; - modelMatrix = modelMatrix * glm::scale(glm::vec3(0.5f)); MVP = PV * modelMatrix; glUniformMatrix4fv(glGetUniformLocation(shaderProgramHandle, "MVP"), 1, GL_FALSE, glm::value_ptr(MVP)); glUniformMatrix4fv(glGetUniformLocation(shaderProgramHandle, "M"), 1, GL_FALSE, glm::value_ptr(modelMatrix)); @@ -342,8 +342,9 @@ void dd::Renderer::DrawScene(RenderQueue &objects, ShaderProgram &program) glActiveTexture(GL_TEXTURE2); glBindTexture(GL_TEXTURE_2D, spriteJob->SpecularTexture); - glBindVertexArray(m_ScreenQuad); - glDrawArrays(GL_TRIANGLES, 0, 6); + glBindVertexArray(m_UnitQuad->VAO); + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, m_UnitQuad->ElementBuffer); + glDrawElementsBaseVertex(GL_TRIANGLES, m_UnitQuad->m_Indices.size(), GL_UNSIGNED_INT, 0, 0); continue; } diff --git a/src/game/Core/Shaders/Forward/Fragment.glsl b/src/game/Core/Shaders/Forward/Fragment.glsl index 144062f..83279c0 100755 --- a/src/game/Core/Shaders/Forward/Fragment.glsl +++ b/src/game/Core/Shaders/Forward/Fragment.glsl @@ -84,6 +84,6 @@ void main() vec4 diffuseTexel = texture(DiffuseTexture, Input.TextureCoord); - FragmentColor = phong(Input.Position, normalize(normal), specularTexel.rgb, specularTexel.a); - //FragmentColor = diffuseTexel; + //FragmentColor = phong(Input.Position, normalize(normal), specularTexel.rgb, specularTexel.a); + FragmentColor = diffuseTexel; } \ No newline at end of file