Add Direct3D 12 RenderingDevice implementation

This commit is contained in:
Pedro J. Estébanez
2023-01-09 16:56:16 +01:00
parent 208c1020f5
commit 2f47c57385
42 changed files with 75707 additions and 14 deletions

View File

@ -67,6 +67,13 @@ static Vector<uint8_t> _compile_shader_glsl(RenderingDevice::ShaderStage p_stage
} else {
// use defaults
}
} else if (capabilities->device_family == RenderingDevice::DeviceFamily::DEVICE_DIRECTX) {
// NIR-DXIL is Vulkan 1.1-conformant.
ClientVersion = glslang::EShTargetVulkan_1_1;
// The SPIR-V part of Mesa supports 1.6, but:
// - SPIRV-Reflect won't be able to parse the compute workgroup size.
// - We want to play it safe with NIR-DXIL.
TargetVersion = glslang::EShTargetSpv_1_3;
} else {
// once we support other backends we'll need to do something here
if (r_error) {