Unity 6.3
0 онлайн 120 гостей 3 в системе
Вход
Материалы и шейдеры Шаг 360 из 442

Введение в PSO отслеживание и потепление

Понять, что такое PSO трассирование и потепление, и требования проекта для использования GraphicsStateCollection API.

Важно: GraphicsStateCollection является экспериментальным API и может быть изменен или удален в будущем.

Когда Unity впервые использует вариант шейдера в собранном приложении, сцена может зависнуть. Это происходит потому, что Unity и графическому драйверу нужно скомпилировать вариант шейдера и создать объект состояния конвейера (PSO) со скомпилированным кодом шейдера и связанным с ним состоянием GPU.

Чтобы уменьшить замедление, компилируйте шейдеры и создавайте PSOs до того, как они будут нужны, чтобы драйвер видеокарты кэшировал их на диск. Это называется разогревом, предварительным разогревом или предварительным приготовлением графических состояний.

Требования Project

GraphicsStateCollection API поддерживается на Unity 6.0 или более новых.

Поддерживаемая графика APIs

Вы можете использовать GraphicsStateCollection API на следующих графиках APIs:

  • DirectX 12
  • Vulkan
  • Metal
  • DirectX 11
  • OpenGL
  • OpenGLES
  • WebGL

Примечание: На DirectX 11, OpenGL, OpenGLES, или WebGL, GraphicsStateCollection API автоматически возвращается к прогреву шейдера, как описано в Другие методы прогрева шейдеров.

Совместимость шейдеров

Следующие типы шейдеров несовместимы с трассированием PSO:

  • Вычислительные шейдеры
  • Шейдеры с лучевой траекторией

Дополнительные ресурсы