diff --git a/MetaballsKit/Renderer.swift b/MetaballsKit/Renderer.swift index d25af93..23bbef7 100644 --- a/MetaballsKit/Renderer.swift +++ b/MetaballsKit/Renderer.swift @@ -66,6 +66,8 @@ public class Renderer: NSObject, MTKViewDelegate { ] private var parametersBuffer: MTLBuffer? + private var inFlightSemaphore: DispatchSemaphore + override public init() { guard let device = MTLCreateSystemDefaultDevice() else { fatalError("Unable to create Metal system device") @@ -80,6 +82,8 @@ public class Renderer: NSObject, MTKViewDelegate { let parametersLength = MemoryLayout.size parametersBuffer = device.makeBuffer(length: parametersLength, options: .storageModeShared) + inFlightSemaphore = DispatchSemaphore(value: 1) + super.init() }