diff options
| author | azhirnov <zh1dron@gmail.com> | 2020-08-19 15:50:31 +0000 |
|---|---|---|
| committer | azhirnov <zh1dron@gmail.com> | 2020-08-19 15:50:31 +0000 |
| commit | 801c65731c10ae61a0fb9252ab8add6bb65ba4d0 (patch) | |
| tree | 2feb970e34be88030d0387f304ceffa1d6d8462f /Graphics/GraphicsEngineD3D11 | |
| parent | Rename ***_PIPELINE to PIPELINE_TYPE_*** (diff) | |
| download | DiligentCore-801c65731c10ae61a0fb9252ab8add6bb65ba4d0.tar.gz DiligentCore-801c65731c10ae61a0fb9252ab8add6bb65ba4d0.zip | |
Use ShaderVersion instead of Uint8
Diffstat (limited to 'Graphics/GraphicsEngineD3D11')
| -rw-r--r-- | Graphics/GraphicsEngineD3D11/src/ShaderD3D11Impl.cpp | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/Graphics/GraphicsEngineD3D11/src/ShaderD3D11Impl.cpp b/Graphics/GraphicsEngineD3D11/src/ShaderD3D11Impl.cpp index 8bf17567..eb63485c 100644 --- a/Graphics/GraphicsEngineD3D11/src/ShaderD3D11Impl.cpp +++ b/Graphics/GraphicsEngineD3D11/src/ShaderD3D11Impl.cpp @@ -34,24 +34,24 @@ namespace Diligent { -static const Uint8 HLSLVersionToShaderModelString(const ShaderVersion& Version, Uint8 MaxMajorRevision, Uint8 MaxMinorRevision) +static const ShaderVersion HLSLValidateShaderVersion(const ShaderVersion& Version, const ShaderVersion& MaxVersion) { - Uint8 ModelVer; - if (Version.Major > MaxMajorRevision || Version.Major == MaxMajorRevision && Version.Minor > MaxMinorRevision) + ShaderVersion ModelVer; + if (Version.Major > MaxVersion.Major || (Version.Major == MaxVersion.Major && Version.Minor > MaxVersion.Minor)) { - ModelVer = Uint8((MaxMajorRevision << 4) | MaxMinorRevision); + ModelVer = MaxVersion; LOG_ERROR_MESSAGE("Shader model ", Uint32{Version.Major}, "_", Uint32{Version.Minor}, " is not supported by this device. Maximum supported model: ", - MaxMajorRevision, "_", MaxMinorRevision, ". Attempting to use ", MaxMajorRevision, "_", MaxMinorRevision, '.'); + MaxVersion.Major, "_", MaxVersion.Minor, ". Attempting to use ", MaxVersion.Major, "_", MaxVersion.Minor, '.'); } else { - ModelVer = Uint8((Version.Major << 4) | Version.Minor); + ModelVer = Version; } return ModelVer; } -static const Uint8 GetD3D11ShaderModel(ID3D11Device* pd3d11Device, const ShaderVersion& HLSLVersion) +static const ShaderVersion GetD3D11ShaderModel(ID3D11Device* pd3d11Device, const ShaderVersion& HLSLVersion) { auto d3dDeviceFeatureLevel = pd3d11Device->GetFeatureLevel(); switch (d3dDeviceFeatureLevel) @@ -66,22 +66,22 @@ static const Uint8 GetD3D11ShaderModel(ID3D11Device* pd3d11Device, const ShaderV case D3D_FEATURE_LEVEL_11_1: case D3D_FEATURE_LEVEL_11_0: return (HLSLVersion.Major == 0 && HLSLVersion.Minor == 0) ? - Uint8(0x50) : - HLSLVersionToShaderModelString(HLSLVersion, 5, 0); + ShaderVersion(5, 0) : + HLSLValidateShaderVersion(HLSLVersion, {5, 0}); case D3D_FEATURE_LEVEL_10_1: return (HLSLVersion.Major == 0 && HLSLVersion.Minor == 0) ? - Uint8(0x41) : - HLSLVersionToShaderModelString(HLSLVersion, 4, 1); + ShaderVersion(4, 1) : + HLSLValidateShaderVersion(HLSLVersion, {4, 1}); case D3D_FEATURE_LEVEL_10_0: return (HLSLVersion.Major == 0 && HLSLVersion.Minor == 0) ? - Uint8(0x40) : - HLSLVersionToShaderModelString(HLSLVersion, 4, 0); + ShaderVersion(4, 0) : + HLSLValidateShaderVersion(HLSLVersion, {4, 0}); default: UNEXPECTED("Unexpected D3D feature level ", static_cast<Uint32>(d3dDeviceFeatureLevel)); - return Uint8(0x40); + return ShaderVersion(4, 0); } } |
