From 33404f4839ccd8fd48c126024b06c5bc6b2773ce Mon Sep 17 00:00:00 2001 From: Mathew O'Dwyer Date: Sun, 14 Jan 2024 22:22:10 +1100 Subject: [PATCH] more fixes --- FinalEngine.Rendering.OpenGL/Buffers/OpenGLFrameBuffer.cs | 6 +----- FinalEngine.Rendering.OpenGL/Invocation/IOpenGLInvoker.cs | 2 -- FinalEngine.Rendering.OpenGL/Invocation/OpenGLInvoker.cs | 5 ----- FinalEngine.Rendering/RenderingEngine.cs | 2 ++ 4 files changed, 3 insertions(+), 12 deletions(-) diff --git a/FinalEngine.Rendering.OpenGL/Buffers/OpenGLFrameBuffer.cs b/FinalEngine.Rendering.OpenGL/Buffers/OpenGLFrameBuffer.cs index 796d2624..16fb16a1 100644 --- a/FinalEngine.Rendering.OpenGL/Buffers/OpenGLFrameBuffer.cs +++ b/FinalEngine.Rendering.OpenGL/Buffers/OpenGLFrameBuffer.cs @@ -39,14 +39,10 @@ public OpenGLFrameBuffer(IOpenGLInvoker invoker, IReadOnlyList? if (colorAttachmentCount > 0) { - Span bufs = stackalloc DrawBuffersEnum[colorAttachmentCount]; - for (int i = 0; i < colorAttachmentCount; i++) { - bufs[i] = DrawBuffersEnum.ColorAttachment0 + i; + this.invoker.NamedFramebufferDrawBuffer(this.rendererID, DrawBufferMode.ColorAttachment0 + i); } - - this.invoker.NamedFramebufferDrawBuffers(this.rendererID, colorAttachmentCount, ref bufs[0]); } depthTarget?.Attach(FramebufferAttachment.DepthAttachment, this.rendererID); diff --git a/FinalEngine.Rendering.OpenGL/Invocation/IOpenGLInvoker.cs b/FinalEngine.Rendering.OpenGL/Invocation/IOpenGLInvoker.cs index d710ad08..2db9be3d 100644 --- a/FinalEngine.Rendering.OpenGL/Invocation/IOpenGLInvoker.cs +++ b/FinalEngine.Rendering.OpenGL/Invocation/IOpenGLInvoker.cs @@ -136,8 +136,6 @@ void NamedBufferSubData(int buffer, IntPtr offset, int size, T3[] data) void NamedFramebufferDrawBuffer(int framebuffer, DrawBufferMode buf); - void NamedFramebufferDrawBuffers(int fb, int n, ref DrawBuffersEnum bufs); - void NamedFramebufferReadBuffer(int framebuffer, ReadBufferMode buf); void NamedFramebufferTexture(int framebuffer, FramebufferAttachment attachment, int texture, int level); diff --git a/FinalEngine.Rendering.OpenGL/Invocation/OpenGLInvoker.cs b/FinalEngine.Rendering.OpenGL/Invocation/OpenGLInvoker.cs index d327cb62..09ac919f 100644 --- a/FinalEngine.Rendering.OpenGL/Invocation/OpenGLInvoker.cs +++ b/FinalEngine.Rendering.OpenGL/Invocation/OpenGLInvoker.cs @@ -437,11 +437,6 @@ public void Viewport(Rectangle rectangle) GL.Viewport(rectangle); } - public void NamedFramebufferDrawBuffers(int fb, int n, ref DrawBuffersEnum bufs) - { - GL.NamedFramebufferDrawBuffers(fb, n, ref bufs); - } - public void NamedFramebufferDrawBuffer(int framebuffer, DrawBufferMode buf) { GL.NamedFramebufferDrawBuffer(framebuffer, buf); diff --git a/FinalEngine.Rendering/RenderingEngine.cs b/FinalEngine.Rendering/RenderingEngine.cs index 5b9bea32..032b6b87 100644 --- a/FinalEngine.Rendering/RenderingEngine.cs +++ b/FinalEngine.Rendering/RenderingEngine.cs @@ -48,6 +48,8 @@ public void Render(ICamera camera) { ArgumentNullException.ThrowIfNull(camera, nameof(camera)); + this.renderDevice.Pipeline.SetFrameBuffer(null); + this.renderDevice.Rasterizer.SetViewport(camera.Bounds); this.renderDevice.Clear(Color.Black); this.renderDevice.OutputMerger.SetDepthState(new DepthStateDescription()