D3D12DDI_RAYTRACING_INSTANCE_FLAGS 枚举 (d3d12umddi.h)

在光线跟踪加速结构生成期间,在 CPU 上生成实例数据以上传到 GPU 时标记选项。

语法

typedef enum D3D12DDI_RAYTRACING_INSTANCE_FLAGS {
  D3D12DDI_RAYTRACING_INSTANCE_FLAG_NONE,
  D3D12DDI_RAYTRACING_INSTANCE_FLAG_TRIANGLE_CULL_DISABLE,
  D3D12DDI_RAYTRACING_INSTANCE_FLAG_TRIANGLE_FRONT_COUNTERCLOCKWISE,
  D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE,
  D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE
} ;

常量

 
D3D12DDI_RAYTRACING_INSTANCE_FLAG_NONE
没有指定选项。
D3D12DDI_RAYTRACING_INSTANCE_FLAG_TRIANGLE_CULL_DISABLE
禁用此实例的剔除。 D3D12DDI_CULL_MODE_FRONT和D3D12DDI_CULL_MODE_BACK的D3D12DDI_CULL_MODE枚举标志对此实例没有影响。
D3D12DDI_RAYTRACING_INSTANCE_FLAG_TRIANGLE_FRONT_COUNTERCLOCKWISE
此标志反转正面和后向,例如,如果应用程序的自然缠绕顺序不同于默认值,则非常有用。
默认情况下,如果三角形的顶点从光线原点顺时针显示,则其顶点在左手坐标系中的对象空间中逆时针显示,则为正面。
由于这些绕组方向规则是在对象空间中定义的,因此它们不受实例转换影响。 例如,具有负行列 (例如镜像某些几何图形) 的实例转换矩阵不会更改实例中三角形的面。 相比之下,每个几何图形转换 (在 D3D12DDI_RAYTRACING_GEOMETRY_DESC_0054) 中定义,与对象空间中的关联顶点数据组合在一起,因此,有一个负决定矩阵会翻转三角形绕组
D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE
实例的作用就像为实例引用的底层加速结构中的所有几何图形指定了 D3D12DDI_RAYTRACING_GEOMETRY_FLAGS枚举的D3D12DDI_RAYTRACING_GEOMETRY_FLAG_OPAQUE标志。

请注意,此行为可由光线标志D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE重写。 此标志与D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE标志互斥。
D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE
实例的作用就像没有为实例引用的底层加速结构中的任何几何图形指定 D3D12DDI_RAYTRACING_GEOMETRY_FLAGS枚举的D3D12DDI_RAYTRACING_GEOMETRY_FLAG_OPAQUE标志一样。

请注意,此行为可由光线标志D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE重写。 此标志与D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE标志互斥。

注解

此枚举在 D3D12DDI_RAYTRACING_INSTANCE_DESC_0054 结构中用于指定要应用于实例的选项。

要求

要求
最低受支持的客户端 Windows 10 版本 1809
标头 d3d12umddi.h