Added GBuffer
This commit is contained in:
@@ -78,6 +78,11 @@ namespace Nuake {
|
||||
return m_Framebuffer;
|
||||
}
|
||||
|
||||
Ref<FrameBuffer> Window::GetGBuffer() const
|
||||
{
|
||||
return m_GBuffer;
|
||||
}
|
||||
|
||||
Vector2 Window::GetSize()
|
||||
{
|
||||
int w, h = 0;
|
||||
@@ -135,6 +140,12 @@ namespace Nuake {
|
||||
m_Framebuffer = CreateRef<FrameBuffer>(true, glm::vec2(1920, 1080));
|
||||
m_Framebuffer->SetTexture(CreateRef<Texture>(glm::vec2(1920, 1080), GL_RGB));
|
||||
|
||||
m_GBuffer = CreateRef<FrameBuffer>(false, Vector2(1920, 1080));
|
||||
m_GBuffer->SetTexture(CreateRef<Texture>(Vector2(1920, 1080), GL_DEPTH_COMPONENT), GL_DEPTH_ATTACHMENT);
|
||||
m_GBuffer->SetTexture(CreateRef<Texture>(Vector2(1920, 1080), GL_RGB), GL_COLOR_ATTACHMENT0);
|
||||
m_GBuffer->SetTexture(CreateRef<Texture>(Vector2(1920, 1080), GL_RGB), GL_COLOR_ATTACHMENT1);
|
||||
m_GBuffer->SetTexture(CreateRef<Texture>(Vector2(1920, 1080), GL_RGB), GL_COLOR_ATTACHMENT2);
|
||||
|
||||
// Temporary quad vbo for deferred.
|
||||
glGenVertexArrays(1, &vao);
|
||||
glBindVertexArray(vao);
|
||||
@@ -258,6 +269,15 @@ namespace Nuake {
|
||||
}
|
||||
m_Framebuffer->Unbind();
|
||||
|
||||
m_GBuffer->Bind();
|
||||
m_GBuffer->Clear();
|
||||
{
|
||||
m_Scene->EditorDrawDeferred();
|
||||
}
|
||||
|
||||
m_GBuffer->Unbind();
|
||||
|
||||
|
||||
Renderer::EndDraw();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user