From e021da8e0b09180752cd56e6d93ef673b001e705 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20L=C3=BCbe=C3=9F?= Date: Thu, 31 Dec 2020 13:19:27 +0100 Subject: [PATCH] Shaders and BufferCollection now use append allocation --- .../src/Renderer/BufferCollection.bf | 19 +++++++------------ GlitchyEngine/src/Renderer/PixelShader.bf | 1 + GlitchyEngine/src/Renderer/Shader.bf | 7 +++++-- GlitchyEngine/src/Renderer/VertexShader.bf | 1 + 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/GlitchyEngine/src/Renderer/BufferCollection.bf b/GlitchyEngine/src/Renderer/BufferCollection.bf index 53e6122..8893d3f 100644 --- a/GlitchyEngine/src/Renderer/BufferCollection.bf +++ b/GlitchyEngine/src/Renderer/BufferCollection.bf @@ -7,26 +7,21 @@ namespace GlitchyEngine.Renderer { typealias BufferEntry = (String Name, int Index, Buffer Buffer, bool OwnsBuffer); - List _buffers ~ delete _; + List _buffers ~ delete:append _; - Dictionary _strToBuf ~ delete _; - Dictionary _idxToBuf ~ delete _; + Dictionary _strToBuf ~ delete:append _; + Dictionary _idxToBuf ~ delete:append _; - //[AllowAppend] + [AllowAppend] public this() { - /*List buffers = append .(); - Dictionary strToBuf = append .(); - Dictionary idxToBuf = append .(); + let buffers = append List(); + let strToBuf = append Dictionary(); + let idxToBuf = append Dictionary(); _buffers = buffers; _strToBuf = strToBuf; _idxToBuf = idxToBuf; - */ - - _buffers = new .(); - _strToBuf = new .(); - _idxToBuf = new .(); } public ~this() diff --git a/GlitchyEngine/src/Renderer/PixelShader.bf b/GlitchyEngine/src/Renderer/PixelShader.bf index f48feae..28add17 100644 --- a/GlitchyEngine/src/Renderer/PixelShader.bf +++ b/GlitchyEngine/src/Renderer/PixelShader.bf @@ -4,6 +4,7 @@ namespace GlitchyEngine.Renderer { public class PixelShader : Shader { + [AllowAppend] public this(GraphicsContext context, String source, String entryPoint, ShaderDefine[] macros = null) : base(context, source, entryPoint, macros) { } diff --git a/GlitchyEngine/src/Renderer/Shader.bf b/GlitchyEngine/src/Renderer/Shader.bf index a93b89b..8ad38e4 100644 --- a/GlitchyEngine/src/Renderer/Shader.bf +++ b/GlitchyEngine/src/Renderer/Shader.bf @@ -23,15 +23,18 @@ namespace GlitchyEngine.Renderer { protected GraphicsContext _context; - protected BufferCollection _buffers ~ delete _; + protected BufferCollection _buffers ~ delete:append _; public GraphicsContext Context => _context; public BufferCollection Buffers => _buffers; + [AllowAppend] public this(GraphicsContext context, String source, String entryPoint, ShaderDefine[] macros = null) { - _buffers = new BufferCollection(); + let buffers = append BufferCollection(); + _buffers = buffers; + _context = context; CompileFromSource(source, entryPoint); } diff --git a/GlitchyEngine/src/Renderer/VertexShader.bf b/GlitchyEngine/src/Renderer/VertexShader.bf index deb3ec2..9a7de52 100644 --- a/GlitchyEngine/src/Renderer/VertexShader.bf +++ b/GlitchyEngine/src/Renderer/VertexShader.bf @@ -4,6 +4,7 @@ namespace GlitchyEngine.Renderer { public class VertexShader : Shader { + [AllowAppend] public this(GraphicsContext context, String source, String entryPoint, ShaderDefine[] macros = null) : base(context, source, entryPoint, macros) { }