Skip to content

Commit 3924b1b

Browse files
[Rendering] Remove unnecessary vertex/index buffer check;
1 parent ea06c15 commit 3924b1b

File tree

4 files changed

+8
-44
lines changed

4 files changed

+8
-44
lines changed

Engine/Staple.Core/Rendering/RenderSystem/Backend/Impls/SDLGPU/Commands/SDLGPURenderCommand.cs

Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -89,21 +89,11 @@ binding.buffer is not SDLGPUVertexBuffer v ||
8989

9090
indexBinding.Buffer = indexBuffer.buffer;
9191

92-
if (SDLGPURendererBackend.lastVertexBuffer != vertexBuffer.buffer)
93-
{
94-
SDLGPURendererBackend.lastVertexBuffer = vertexBuffer.buffer;
95-
96-
SDL.BindGPUVertexBuffers(renderPass, 0, vertexBinding, 1);
97-
}
92+
SDL.BindGPUVertexBuffers(renderPass, 0, vertexBinding, 1);
9893

99-
if (SDLGPURendererBackend.lastIndexBuffer != indexBuffer.buffer)
100-
{
101-
SDLGPURendererBackend.lastIndexBuffer = indexBuffer.buffer;
102-
103-
SDL.BindGPUIndexBuffer(renderPass, in indexBinding, index.Is32Bit ?
104-
SDL.GPUIndexElementSize.IndexElementSize32Bit :
105-
SDL.GPUIndexElementSize.IndexElementSize16Bit);
106-
}
94+
SDL.BindGPUIndexBuffer(renderPass, in indexBinding, index.Is32Bit ?
95+
SDL.GPUIndexElementSize.IndexElementSize32Bit :
96+
SDL.GPUIndexElementSize.IndexElementSize16Bit);
10797

10898
if (vertexSamplers != null)
10999
{

Engine/Staple.Core/Rendering/RenderSystem/Backend/Impls/SDLGPU/Commands/SDLGPURenderTransientCommand.cs

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -103,19 +103,9 @@ binding.buffer is not SDLGPUVertexBuffer v ||
103103

104104
indexBinding.Buffer = entry.indexBuffer;
105105

106-
if (SDLGPURendererBackend.lastVertexBuffer != entry.vertexBuffer)
107-
{
108-
SDLGPURendererBackend.lastVertexBuffer = entry.vertexBuffer;
109-
110-
SDL.BindGPUVertexBuffers(renderPass, 0, vertexBinding, 1);
111-
}
106+
SDL.BindGPUVertexBuffers(renderPass, 0, vertexBinding, 1);
112107

113-
if (SDLGPURendererBackend.lastIndexBuffer != entry.indexBuffer)
114-
{
115-
SDLGPURendererBackend.lastIndexBuffer = entry.indexBuffer;
116-
117-
SDL.BindGPUIndexBuffer(renderPass, in indexBinding, SDL.GPUIndexElementSize.IndexElementSize16Bit);
118-
}
108+
SDL.BindGPUIndexBuffer(renderPass, in indexBinding, SDL.GPUIndexElementSize.IndexElementSize16Bit);
119109

120110
if (vertexSamplers != null)
121111
{

Engine/Staple.Core/Rendering/RenderSystem/Backend/Impls/SDLGPU/Commands/SDLGPURenderTransientUIntCommand.cs

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -103,19 +103,9 @@ binding.buffer is not SDLGPUVertexBuffer v ||
103103

104104
indexBinding.Buffer = entry.indexBuffer;
105105

106-
if (SDLGPURendererBackend.lastVertexBuffer != entry.vertexBuffer)
107-
{
108-
SDLGPURendererBackend.lastVertexBuffer = entry.vertexBuffer;
109-
110-
SDL.BindGPUVertexBuffers(renderPass, 0, vertexBinding, 1);
111-
}
106+
SDL.BindGPUVertexBuffers(renderPass, 0, vertexBinding, 1);
112107

113-
if (SDLGPURendererBackend.lastIndexBuffer != entry.indexBuffer)
114-
{
115-
SDLGPURendererBackend.lastIndexBuffer = entry.indexBuffer;
116-
117-
SDL.BindGPUIndexBuffer(renderPass, in indexBinding, SDL.GPUIndexElementSize.IndexElementSize32Bit);
118-
}
108+
SDL.BindGPUIndexBuffer(renderPass, in indexBinding, SDL.GPUIndexElementSize.IndexElementSize32Bit);
119109

120110
if (vertexSamplers != null)
121111
{

Engine/Staple.Core/Rendering/RenderSystem/Backend/Impls/SDLGPU/SDLGPURendererBackend.cs

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -497,8 +497,6 @@ public void Clear()
497497
#endregion
498498

499499
#region Command Support Fields
500-
internal static nint lastVertexBuffer;
501-
internal static nint lastIndexBuffer;
502500
internal static nint lastGraphicsPipeline;
503501
internal static nint lastQueuedGraphicsPipeline;
504502
internal static nint[] singleBuffer = new nint[1];
@@ -852,8 +850,6 @@ public void EndFrame()
852850
commands.Clear();
853851
frameAllocator.Clear();
854852

855-
lastVertexBuffer = nint.Zero;
856-
lastIndexBuffer = nint.Zero;
857853
lastGraphicsPipeline = nint.Zero;
858854
lastQueuedGraphicsPipeline = nint.Zero;
859855

@@ -1028,8 +1024,6 @@ public void FinishPasses()
10281024

10291025
renderPass = nint.Zero;
10301026
lastGraphicsPipeline = nint.Zero;
1031-
lastVertexBuffer = nint.Zero;
1032-
lastIndexBuffer = nint.Zero;
10331027
lastQueuedGraphicsPipeline = nint.Zero;
10341028
}
10351029
}

0 commit comments

Comments
 (0)