структура D3D12DDI_HIT_GROUP_DESC_0054 (d3d12umddi.h)
Описывает группу попаданий.
Синтаксис
typedef struct D3D12DDI_HIT_GROUP_DESC_0054 {
LPCWSTR HitGroupExport;
D3D12DDI_HIT_GROUP_TYPE Type;
LPCWSTR AnyHitShaderImport;
LPCWSTR ClosestHitShaderImport;
LPCWSTR IntersectionShaderImport;
D3D12DDI_EXPORT_SUMMARY_FLAGS SummaryFlags;
} D3D12DDI_HIT_GROUP_DESC_0054;
Члены
HitGroupExport
Имя группы попаданий.
Type
Перечисление D3D12DDI_HIT_GROUP_TYPE , представляющее тип группы попаданий.
AnyHitShaderImport
Импорт любого шейдера попадания.
ClosestHitShaderImport
Ближайший импорт шейдера попадания.
IntersectionShaderImport
Импорт шейдера пересечения.
SummaryFlags
Флаг D3D12DDI_EXPORT_SUMMARY_FLAGS , указывающий свойства, определенные средой выполнения для экспорта шейдера.
Комментарии
Группа попаданий — это один или несколько шейдеров, которые состоят из следующих элементов:
- Шейдер 0 или 1 пересечения
- 0 или 1 любой шейдер попадания
- 0 или 1 ближайший шейдер попадания
Отдельные геометрические объекты в данном экземпляре ссылаются на группу попаданий для предоставления кода шейдера. Смысл группировки заключается в том, чтобы реализации могли компилировать и выполнять группу так же эффективно, как лучи, взаимодействующие с геометрией.
Шейдеры создания лучей и шейдеры пропусков не являются частью групп попаданий, так как они не связаны непосредственно с геометрией.
Если группа попаданий содержит шейдер пересечения, ее можно использовать только с процедурной примитивной геометрией. Если группа попаданий не содержит шейдер пересечения, ее можно использовать только с геометрией треугольника.
Группа попаданий без шейдеров также возможна, просто используя NULL в качестве идентификатора шейдера.
Пустая группа попаданий может быть полезна, например, если приложение не хочет ничего делать для попаданий и заботится только о том, чтобы шейдер промахов работает, когда ничего не произошло.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10, версия 1809 |
Верхняя часть | d3d12umddi.h |
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по