D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE 枚举 (d3d12sdklayers.h)
指定 GPU-Based 验证在设备或命令列表级别使用的着色器修补的类型。
语法
typedef enum D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE {
D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_NONE = 0,
D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_STATE_TRACKING_ONLY,
D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_UNGUARDED_VALIDATION,
D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_GUARDED_VALIDATION,
NUM_D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODES
} ;
常量
D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_NONE 值: 0 无需执行着色器修补。 这将保留原始着色器字节代码。 可能导致某些 GPU-Based 验证状态跟踪出错,因为未修补的着色器仍可能更改资源状态 (请参阅 常见状态提升) 但升级将取消跟踪而不修补着色器。 这可以提高性能,但不会执行验证,还可能导致误导性 GPU-Based 验证错误。 请非常小心地使用此模式。 |
D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_STATE_TRACKING_ONLY 可以使用资源状态跟踪代码修补着色器,但不能进行验证。 这可以提高性能,但不会执行验证。 |
D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_UNGUARDED_VALIDATION 默认值。 着色器已使用验证代码进行修补,但仍会执行错误指令。 |
D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_GUARDED_VALIDATION 着色器使用验证代码进行修补,在执行过程中会跳过错误指令。 这有助于避免崩溃或设备删除。 |
NUM_D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODES 未使用,只是模式数的计数。 |
备注
此枚举由 D3D12_DEBUG_DEVICE_GPU_BASED_VALIDATION_SETTINGS 结构使用。
要求
标头 | d3d12sdklayers.h |