Version: 2018.4
public static Rendering.GPUFence CreateGPUFence (Rendering.SynchronisationStage stage= SynchronisationStage.PixelProcessing);


stageOn some platforms there is a significant gap between the vertex processing completing and the pixel processing begining for a given draw call. This parameter allows for the fence to be passed after either the vertex or pixel processing for the proceeding draw has completed. If a compute shader dispatch was the last task submitted then this parameter is ignored.


GPUFence Returns a new GPUFence.


Creates a GPUFence which will be passed after the last Blit, Clear, Draw, Dispatch or Texture Copy command prior to this call has been completed on the GPU.

This includes those from CommandBuffer's that have been executed immediately prior to the creation of the fence.

Some platforms cannot differentiate between the completion of vertex and pixel processing, on these platforms the fence is passed after the pixel processing has completed regardless of the value passed to the stage parameter.

This function can still be called on platforms that do not support GPUFences though the resulting fence will have no function and will do nothing if waited on (see Graphics.WaitOnGPUFence and CommandBuffer.WaitOnGPUFence).

See Also:GPUFence, Graphics.WaitOnGPUFence, CommandBuffer.WaitOnGPUFence, SystemInfo.supportsGPUFence.