Add statically disabled geometry shaders on mobile

This commit is contained in:
Wojtek Figat
2024-03-30 22:08:44 +01:00
parent 369c19bd5d
commit e1944bce96
17 changed files with 74 additions and 8 deletions

View File

@@ -374,7 +374,7 @@ bool GPUDeviceDX12::Init()
auto& limits = Limits;
limits.HasCompute = true;
limits.HasTessellation = GPU_ALLOW_TESSELLATION_SHADERS;
limits.HasGeometryShaders = true;
limits.HasGeometryShaders = GPU_ALLOW_GEOMETRY_SHADERS;
limits.HasInstancing = true;
limits.HasVolumeTextureRendering = true;
limits.HasDrawIndirect = true;

View File

@@ -85,6 +85,7 @@ GPUShaderProgram* GPUShaderDX12::CreateGPUShaderProgram(ShaderStage type, const
shader = New<GPUShaderProgramVSDX12>(initializer, header, cacheBytes, cacheSize, inputLayout, inputLayoutSize);
break;
}
#if GPU_ALLOW_TESSELLATION_SHADERS
case ShaderStage::Hull:
{
int32 controlPointsCount;
@@ -97,11 +98,14 @@ GPUShaderProgram* GPUShaderDX12::CreateGPUShaderProgram(ShaderStage type, const
shader = New<GPUShaderProgramDSDX12>(initializer, header, cacheBytes, cacheSize);
break;
}
#endif
#if GPU_ALLOW_GEOMETRY_SHADERS
case ShaderStage::Geometry:
{
shader = New<GPUShaderProgramGSDX12>(initializer, header, cacheBytes, cacheSize);
break;
}
#endif
case ShaderStage::Pixel:
{
shader = New<GPUShaderProgramPSDX12>(initializer, header, cacheBytes, cacheSize);

View File

@@ -79,6 +79,7 @@ public:
}
};
#if GPU_ALLOW_TESSELLATION_SHADERS
/// <summary>
/// Hull Shader for DirectX 12 backend.
/// </summary>
@@ -105,7 +106,9 @@ public:
{
}
};
#endif
#if GPU_ALLOW_GEOMETRY_SHADERS
/// <summary>
/// Geometry Shader for DirectX 12 backend.
/// </summary>
@@ -118,6 +121,7 @@ public:
{
}
};
#endif
/// <summary>
/// Pixel Shader for DirectX 12 backend.