D3D12DDI_RAYTRACING_INSTANCE_DESC_0054结构 (d3d12umddi.h)
描述光线跟踪实例。 此数据结构在加速结构生成期间在 GPU 内存中使用,如果先在 CPU 上生成实例数据,然后再上传到 GPU,则很有用。
语法
typedef struct D3D12DDI_RAYTRACING_INSTANCE_DESC_0054 {
FLOAT Transform[3][4];
UINT InstanceID : 24;
UINT InstanceMask : 8;
UINT InstanceContributionToHitGroupIndex : 24;
UINT Flags : 8;
D3D12DDI_GPU_VIRTUAL_ADDRESS AccelerationStructure;
} D3D12DDI_RAYTRACING_INSTANCE_DESC_0054;
成员
Transform[3]
表示实例到世界转换的行主布局中的 3x4 转换矩阵。
InstanceID
着色器类型的任意 24 位值。
InstanceMask
分配给实例的 8 位掩码,可用于按光线包含或拒绝一组实例。 如果值为零,则永远不会包含该实例。 将此值设置为非零值。
InstanceContributionToHitGroupIndex
要添加到着色器表索引中的每实例贡献,以选择要使用的命中组。
Flags
要应用于实例的标志。
AccelerationStructure
正在实例化底层加速结构的地址。 地址必须与 256 个字节对齐。
指向的内存必须处于 资源状态 D3D12DDI_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 10 版本 1809 |
标头 | d3d12umddi.h |