Version: 2018.3 (switch to 2019.1)
  • C#


Suggest a change


Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.


Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.



public void WaitOnGPUFence(Rendering.GPUFence fence, Rendering.SynchronisationStage stage);


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.

Did you find this page useful? Please give it a rating: