diff --git a/Memola/Canvas/RenderPasses/EraserRenderPass.swift b/Memola/Canvas/RenderPasses/EraserRenderPass.swift index 32f115d..5290357 100644 --- a/Memola/Canvas/RenderPasses/EraserRenderPass.swift +++ b/Memola/Canvas/RenderPasses/EraserRenderPass.swift @@ -57,7 +57,7 @@ class EraserRenderPass: RenderPass { let quadCount = stroke.quads.endIndex var quads = stroke.quads let quadBuffer = renderer.device.makeBuffer(bytes: &quads, length: MemoryLayout.stride * quadCount, options: []) - let indexBuffer = renderer.device.makeBuffer(length: MemoryLayout.stride * quadCount * 6, options: []) + let indexBuffer = renderer.device.makeBuffer(length: MemoryLayout.stride * quadCount * 6, options: []) let vertexBuffer = renderer.device.makeBuffer(length: MemoryLayout.stride * quadCount * 4, options: []) computeEncoder.setComputePipelineState(quadPipelineState) diff --git a/Memola/Canvas/RenderPasses/StrokeRenderPass.swift b/Memola/Canvas/RenderPasses/StrokeRenderPass.swift index 89945af..a9a4887 100644 --- a/Memola/Canvas/RenderPasses/StrokeRenderPass.swift +++ b/Memola/Canvas/RenderPasses/StrokeRenderPass.swift @@ -70,7 +70,7 @@ class StrokeRenderPass: RenderPass { let quadCount = stroke.quads.endIndex var quads = stroke.quads let quadBuffer = renderer.device.makeBuffer(bytes: &quads, length: MemoryLayout.stride * quadCount, options: []) - let indexBuffer = renderer.device.makeBuffer(length: MemoryLayout.stride * quadCount * 6, options: []) + let indexBuffer = renderer.device.makeBuffer(length: MemoryLayout.stride * quadCount * 6, options: []) let vertexBuffer = renderer.device.makeBuffer(length: MemoryLayout.stride * quadCount * 4, options: []) computeEncoder.setComputePipelineState(quadPipelineState) diff --git a/Memola/Canvas/Shaders/Quad.metal b/Memola/Canvas/Shaders/Quad.metal index 898c3d0..6f2d7c3 100644 --- a/Memola/Canvas/Shaders/Quad.metal +++ b/Memola/Canvas/Shaders/Quad.metal @@ -38,7 +38,7 @@ Vertex createVertex(Quad quad, float2 factor, float2 textCoord) { } kernel void generate_stroke_vertices( - device Quad *quads [[buffer(0)]], + constant Quad *quads [[buffer(0)]], device uint *indices [[buffer(1)]], device Vertex *vertices [[buffer(2)]], uint gid [[thread_position_in_grid]]