Unity 6.3
0 онлайн 7 гостей 3 в системе
Вход

Graphics.CreateGraphicsFence

Declaration

public static Rendering.GraphicsFence CreateGraphicsFence(Rendering.GraphicsFenceType fenceType, Rendering.SynchronisationStageFlags stage = SynchronisationStage.PixelProcessing);

Параметры

Параметр Описание
fenceType Создание GraphicsFenceType. В настоящее время единственным поддерживаемым значением является GraphicsFenceType.AsyncQueueSynchronisation.
стадия После чего SynchronisationStage вставить забор.

Возвращаемое значение

GraphicsFence Возвращает новый GraphicsFence.

Описание

Создает GraphicsFence.

GPU проходит через GraphicsFence ограждение после того, как он завершает Blit, Clear, Draw, Dispatch текстуры, которые вы отправили до этого вызова. Это включает в себя команды из командные буферы что GPU выполняет непосредственно перед созданием ограждения.

Вы можете использовать stage параметр для вставки GraphicsFence барьер после завершения обработки вершин или пикселей. На некоторых платформах между окончанием обработки вершин и началом обработки пикселей в вызовах отрисовки есть разрыв.

Если предыдущая команда была отправкой вычисления шейдера, Unity игнорирует stage.

Некоторые платформы не могут отличить конец обработки вершин от конца обработки пикселей. На этих платформах вы получите одинаковые результаты независимо от того, используете ли вы SynchronisationStage.PixelProcessing или SynchronisationStage.VertexProcessing как значение для `stage`.

Если вы позвоните CreateGraphicsFence на платформе, которая не поддерживает ограждения, ограждение не имеет функции, а методы Graphics.WaitOnAsyncGraphicsFence и CommandBuffer.WaitOnAsyncGraphicsFence ничего не делать. Использование SystemInfo.supportsGraphicsFence чтобы проверить, поддерживает ли платформа ограждения.

Дополнительные ресурсы GraphicsFence, Graphics.WaitOnAsyncGraphicsFence, CommandBuffer.WaitOnAsyncGraphicsFence.