evt | 图形处理过程中此命令缓冲区应在 GPU 上开始执行的点。 |
buffer | 要执行的缓冲区。 |
queueType | 在上面执行缓冲区的所需异步计算队列类型。 |
shadowPassMask | 指定要为其执行缓冲区的阴影通道的掩码。 |
将命令缓冲区添加到 GPU 的异步计算队列,并在图形处理到达给定点时执行该命令缓冲区。
当图形队列处理到达 evt 参数描述的点时,在 GPU 上执行异步计算命令缓冲区。
可以在同一个灯光事件设置多个命令缓冲区以执行(甚至同一个缓冲区也可以添加多次)。要从执行中移除命令缓冲区,请使用 RemoveCommandBuffer。
传递阴影通道掩码可以详细控制哪些阴影通道将执行缓冲区。
命令缓冲区只能调用以下命令以在异步计算队列上执行,否则会在编辑器窗口中记录并显示错误
CommandBuffer.BeginSample
CommandBuffer.BuildRayTracingAccelerationStructure
CommandBuffer.CopyCounterValue
CommandBuffer.CopyTexture
CommandBuffer.CreateGPUFence
CommandBuffer.DispatchCompute
CommandBuffer.EndSample
CommandBuffer.IssuePluginEvent
CommandBuffer.SetComputeBufferParam
CommandBuffer.SetComputeFloatParam
CommandBuffer.SetComputeFloatParams
CommandBuffer.SetComputeTextureParam
CommandBuffer.SetComputeVectorParam
CommandBuffer.WaitOnGPUFence
保证缓冲区内的所有命令都将在同一个队列上执行。如果目标平台不支持异步计算队列,则工作将在图形队列上分派。
其他资源:GPUFence,SystemInfo.supportsAsyncCompute,CommandBuffer,RemoveCommandBuffer,GetCommandBuffers。