Light.AddCommandBufferAsync

Cambiar al Manual
public void AddCommandBufferAsync (Rendering.LightEvent evt, Rendering.CommandBuffer buffer, Rendering.ComputeQueueType queueType);
public void AddCommandBufferAsync (Rendering.LightEvent evt, Rendering.CommandBuffer buffer, Rendering.ShadowMapPass shadowPassMask, Rendering.ComputeQueueType queueType);

Parámetros

evtThe point during the graphics processing at which this command buffer should commence on the GPU.
bufferThe buffer to execute.
queueTypeThe desired async compute queue type to execute the buffer on.
shadowPassMaskA mask specifying which shadow passes to execute the buffer for.

Descripción

Adds a command buffer to the GPU's async compute queues and executes that command buffer when graphics processing reaches a given point.

Execute an async compute command buffer on the GPU when the graphics queues processing reaches a point described by the evt parameter.

Multiple command buffers can be set to execute at the same light event (or even the same buffer can be added multiple times). To remove a command buffer from execution, use RemoveCommandBuffer.

Passing a shadow pass mask allows detailed control over which shadow passes will execute the buffer.

The command buffer can only call the following commands for execution on the async compute queues, otherwise an error is logged and displayed in the Editor window:

CommandBuffer.BeginSample

CommandBuffer.CopyCounterValue

CommandBuffer.CopyTexture

CommandBuffer.CreateGPUFence

CommandBuffer.DispatchCompute

CommandBuffer.EndSample

CommandBuffer.IssuePluginEvent

CommandBuffer.SetComputeBufferParam

CommandBuffer.SetComputeFloatParam

CommandBuffer.SetComputeFloatParams

CommandBuffer.SetComputeTextureParam

CommandBuffer.SetComputeVectorParam

CommandBuffer.WaitOnGPUFence

All of the commands within the buffer are guaranteed to be executed on the same queue. If the target platform does not support async compute queues then the work is dispatched on the graphics queue.

See Also:GPUFence, SystemInfo.supportsAsyncCompute, CommandBuffer, RemoveCommandBuffer, GetCommandBuffers.

Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961