bug: correct memory layout format

This commit is contained in:
dscyrescotti
2024-05-23 23:57:53 +07:00
parent 24a9c3ed51
commit 81fb43f3e3
3 changed files with 3 additions and 3 deletions

View File

@@ -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<Quad>.stride * quadCount, options: [])
let indexBuffer = renderer.device.makeBuffer(length: MemoryLayout<UInt32>.stride * quadCount * 6, options: [])
let indexBuffer = renderer.device.makeBuffer(length: MemoryLayout<UInt>.stride * quadCount * 6, options: [])
let vertexBuffer = renderer.device.makeBuffer(length: MemoryLayout<QuadVertex>.stride * quadCount * 4, options: [])
computeEncoder.setComputePipelineState(quadPipelineState)

View File

@@ -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<Quad>.stride * quadCount, options: [])
let indexBuffer = renderer.device.makeBuffer(length: MemoryLayout<UInt32>.stride * quadCount * 6, options: [])
let indexBuffer = renderer.device.makeBuffer(length: MemoryLayout<UInt>.stride * quadCount * 6, options: [])
let vertexBuffer = renderer.device.makeBuffer(length: MemoryLayout<QuadVertex>.stride * quadCount * 4, options: [])
computeEncoder.setComputePipelineState(quadPipelineState)

View File

@@ -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]]