Version: 2017.4
public void WaitOnGPUFence (Rendering.GPUFence fence, Rendering.SynchronisationStage stage= SynchronisationStage.VertexProcessing);


fenceThe GPUFence that the GPU will be instructed to wait upon.
stageOn some platforms there is a significant gap between the vertex processing completing and the pixel processing completing for a given draw call. This parameter allows for requested wait to be before the next items vertex or pixel processing begins. Some platforms can not differentiate between the start of vertex and pixel processing, these platforms will wait before the next items vertex processing. If a compute shader dispatch is the next item to be submitted then this parameter is ignored.


Instructs the GPU to wait until the given GPUFence is passed.

If this CommandBuffer is executed using Graphics.ExecuteCommandBuffer or ScriptableRenderContext.ExecuteCommandBuffer then the processing of the graphics queue will wait.

If this CommandBuffer is executed using Graphics.ExecuteCommandBufferAsync or ScriptableRenderContext.ExecuteCommandBufferAsyn then the queue on which the command buffer has been executed will wait.

On platforms which do not support GPUFences this call does nothing see: SystemInfo.supportsGPUFence.

This function returns immediately on the CPU, only GPU processing is effected by the fence.

See Also: Graphics.ExecuteCommandBufferAsync Graphics.CreateGPUFence, ScriptableRenderContext.ExecuteCommandBufferAsync, ScriptableRenderContext.CreateGPUFence.