Метод ID3D12Device5::GetRaytracingAccelerationStructurePrebuildInfo (d3d12.h)
Запросите к драйверу требования к ресурсам, чтобы создать структуру ускорения.
Синтаксис
void GetRaytracingAccelerationStructurePrebuildInfo(
[in] const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS *pDesc,
[out] D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO *pInfo
);
Параметры
[in] pDesc
Описание сборки структуры ускорения. Эта структура используется совместно с BuildRaytracingAccelerationStructure. Дополнительные сведения см. в разделе D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS.
Реализация позволяет просмотреть все параметры ЦП в этой структуре и вложенных структур. Он не может проверять или разыменовывать виртуальные адреса GPU, кроме проверка, чтобы узнать, имеет ли указатель значение NULL или нет, например необязательное преобразование в D3D12_RAYTRACING_GEOMETRY_TRIANGLES_DESC, без разыменовки. Иными словами, вычисление требований к ресурсам для структуры ускорения не зависит от фактических геометрических данных (например, положений вершин), а может зависеть только от общих свойств, таких как число треугольников, количество экземпляров и т. д.
[out] pInfo
Результат запроса.
Возвращаемое значение
None
Remarks
Описание структуры ускорения входных данных совпадает с описанием в BuildRaytracingAccelerationStructure. Результат этой функции позволяет приложению предоставить правильный объем хранилища выходных данных и временное хранилище для BuildRaytracingAccelerationStructure, учитывая ту же геометрию.
Сборки также можно выполнять с той же конфигурацией, переданной в GetAccelerationStructurePrebuildInfo в целом, за исключением равного или меньшего количества геометрий или экземпляров или числа вершин, индексов и AABB в любой заданной геометрии. В этом случае требования к хранилищу, сообщаемые с исходными размерами, переданными в GetRaytracingAccelerationStructurePrebuildInfo , будут действительными — сборка может занимать меньше места, но не больше. Это удобно для сценариев приложений, где для структур ускорения выделяется консервативно большое хранилище.
Этот метод используется в интерфейсе устройства, в отличие от списка команд, так как предполагается, что драйверы должны иметь возможность вычислять требования к ресурсам для структуры ускорения, исходя из просмотра только видимых ЦП частей вызова без разыменования указателей на память GPU, содержащую фактические данные вершин, данные индекса и т. д.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10, версия 1809 [только классические приложения] |
Минимальная версия сервера | Windows Server 2016 [только классические приложения] |
Целевая платформа | Windows |
Header | d3d12.h |
Библиотека | D3d12.lib |
DLL | D3d12.dll |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по