Объявление
public void ExecuteCommandBufferAsync(Rendering.CommandBuffer commandBuffer, Rendering.ComputeQueueType queueType);Параметры
commandBuffer | Выполняемый CommandBuffer. |
queueType | Describes the desired async compute queue the supplied CommandBuffer должен выполняться. |
Описание
Планирует выполнение командного буфера в очереди асинхронных вычислений. ComputeQueueType, который вы передаете, определяет порядок очереди.
Обратите внимание, что все команды в буфере команд должны иметь тип, подходящий для выполнения в очередях асинхронных вычислений. Если буфер содержит какие-либо неподходящие команды, Unity регистрирует ошибку и отображает ее в окне консоли редактора. Команды, которые CommandBuffer могут использовать в очередях асинхронных вычислений:
- CommandBuffer.BeginSample
- CommandBuffer.CopyCounterValue
- CommandBuffer.CopyTexture
- CommandBuffer.CreateGraphicsFence
- CommandBuffer.DisableShaderKeyword
- CommandBuffer.DispatchCompute
- CommandBuffer.EnableShaderKeyword
- CommandBuffer.EndSample
- CommandBuffer.GetTemporaryRT
- CommandBuffer.GetTemporaryRTArray
- CommandBuffer.IssuePluginEvent
- CommandBuffer.ReleaseTemporaryRT
- CommandBuffer.SetComputeBufferData
- CommandBuffer.SetComputeBufferParam
- CommandBuffer.SetComputeFloatParam
- CommandBuffer.SetComputeFloatParams
- CommandBuffer.SetComputeIntParam
- CommandBuffer.SetComputeIntParams
- CommandBuffer.SetComputeMatrixArrayParam
- CommandBuffer.SetComputeMatrixParam
- CommandBuffer.SetComputeTextureParam
- CommandBuffer.SetComputeVectorParam
- CommandBuffer.SetComputeVectorArrayParam
- CommandBuffer.SetGlobalBuffer
- CommandBuffer.SetGlobalColor
- CommandBuffer.SetGlobalFloat
- CommandBuffer.SetGlobalFloatArray
- CommandBuffer.SetGlobalInt
- CommandBuffer.SetGlobalMatrix
- CommandBuffer.SetGlobalMatrixArray
- CommandBuffer.SetGlobalTexture
- CommandBuffer.SetGlobalVector
- CommandBuffer.SetGlobalVectorArray
- CommandBuffer.WaitOnGraphicsFence
Эти команды гарантированно будут выполняться в одной очереди. Если целевая платформа не поддерживает очереди асинхронных вычислений, Unity распределяет работу по очереди графики.
Смотрите так же: SystemInfo.supportsAsyncCompute, GPUFence, CommandBuffer.