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

SystemInfo.SupportsTypedUAVShaderLoadStoreOnGraphicsFormat

Declaration

public static bool SupportsTypedUAVShaderLoadStoreOnGraphicsFormat(Experimental.Rendering.GraphicsFormat graphicsFormat, bool isLoad);

Параметры

Параметр Описание
graphicsFormat Формат для поиска.
isLoad True для проверки операции "load", false для проверки операции "store". Некоторые форматы на некоторых аппаратных средствах могут поддерживать один, но не другой.

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

логическое True, если аппаратное обеспечение поддерживает формат для загрузки/хранения типизированных UAV.

Описание

Проверяет, может ли GraphicsFormat использоваться для загрузки/хранения типизированного UAV шейдера на текущем оборудовании.

D3D11/D3D12 более ограничительны (https://learn.microsoft.com/en-us/windows/win32/direct3d12/typed-unordered-access-view-loads#supported-formats-and-api-calls), чем другие APIs для типизированных операций загрузки/хранения UAV. Когда пользователь хочет читать/записывать в RWTexture определенного формата, например GraphicsFormat.R32G32_SFloat, в шейдере, D3D может молчаливо производить неправильные результаты на некоторых аппаратных средствах (i.e., интегрированный Intel GPUs). Эта функция может быть использована для предотвращения такого поведения на D3D. Другие APIs либо менее ограничительны, либо не имеют типизированного синтаксиса шейдера для RW текстур; эта функция просто возвращает true на тех APIs, если формат поддерживает GraphicsFormatUsage.LoadStore.