private void createCommandBuffer(ref AmplifyOcclusionBase.CmdBuffer aCmdBuffer, string aCmdBufferName, CameraEvent aCameraEvent) { if (aCmdBuffer.cmdBuffer != null) { this.cleanupCommandBuffer(ref aCmdBuffer); } aCmdBuffer.cmdBufferName = aCmdBufferName; aCmdBuffer.cmdBuffer = new CommandBuffer(); aCmdBuffer.cmdBuffer.name = aCmdBufferName; aCmdBuffer.cmdBufferEvent = aCameraEvent; this.m_targetCamera.AddCommandBuffer(aCameraEvent, aCmdBuffer.cmdBuffer); }
private void cleanupCommandBuffer(ref AmplifyOcclusionBase.CmdBuffer aCmdBuffer) { CommandBuffer[] commandBuffers = this.m_targetCamera.GetCommandBuffers(aCmdBuffer.cmdBufferEvent); for (int i = 0; i < commandBuffers.Length; i++) { if (commandBuffers[i].name == aCmdBuffer.cmdBufferName) { this.m_targetCamera.RemoveCommandBuffer(aCmdBuffer.cmdBufferEvent, commandBuffers[i]); } } aCmdBuffer.cmdBufferName = null; aCmdBuffer.cmdBufferEvent = CameraEvent.BeforeDepthTexture; aCmdBuffer.cmdBuffer = null; }