diff --git a/GlitchyEngine/src/Renderer/Renderer2D.bf b/GlitchyEngine/src/Renderer/Renderer2D.bf index c9d9d7c..325503b 100644 --- a/GlitchyEngine/src/Renderer/Renderer2D.bf +++ b/GlitchyEngine/src/Renderer/Renderer2D.bf @@ -211,7 +211,7 @@ namespace GlitchyEngine.Renderer } { - s_circleInstanceBuffer = new VertexBuffer(typeof(BatchVertex), 1024, .Dynamic, .Write); + s_circleInstanceBuffer = new VertexBuffer(typeof(CircleBatchVertex), 1024, .Dynamic, .Write); s_circleInstanceBuffer.SetData(0); VertexElement[] vertexElements = new .( diff --git a/Sandbox/content/Shaders/circlebatch.hlsl b/Sandbox/content/Shaders/circlebatch.hlsl index b4c4a74..d05cae5 100644 --- a/Sandbox/content/Shaders/circlebatch.hlsl +++ b/Sandbox/content/Shaders/circlebatch.hlsl @@ -50,6 +50,9 @@ float4 PS(PS_Input input) : SV_Target0 float amount = smoothstep(0.0f, f, distance); amount *= smoothstep(input.InnerRadius + f, input.InnerRadius, distance); + // Discard invisible pixels + clip(amount - 0.5f); + float4 color = Texture.Sample(Sampler, input.Texcoord) * input.Color; color.a *= amount;