Skip to content

Commit 73c1f75

Browse files
authored
Adsk Contrib - Remove the 'unknown' shader language (#1208)
* Adsk Contrib - Remove the 'unknown' shader language Signed-off-by: Patrick Hodoul <Patrick.Hodoul@autodesk.com> * Fix a code review comment Signed-off-by: Patrick Hodoul <Patrick.Hodoul@autodesk.com>
1 parent 2ba304e commit 73c1f75

6 files changed

Lines changed: 93 additions & 93 deletions

File tree

include/OpenColorIO/OpenColorTypes.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -409,8 +409,7 @@ enum Allocation {
409409
/// Used when there is a choice of hardware shader language.
410410
enum GpuLanguage
411411
{
412-
GPU_LANGUAGE_UNKNOWN = 0,
413-
GPU_LANGUAGE_CG, ///< Nvidia Cg shader
412+
GPU_LANGUAGE_CG = 0, ///< Nvidia Cg shader
414413
GPU_LANGUAGE_GLSL_1_2, ///< OpenGL Shading Language
415414
GPU_LANGUAGE_GLSL_1_3, ///< OpenGL Shading Language
416415
GPU_LANGUAGE_GLSL_4_0, ///< OpenGL Shading Language

src/OpenColorIO/GpuShaderDesc.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ class GpuShaderCreator::Impl
2020
{
2121
public:
2222
std::string m_uid; // Custom uid if needed.
23-
GpuLanguage m_language = GPU_LANGUAGE_UNKNOWN;
23+
GpuLanguage m_language = GPU_LANGUAGE_GLSL_1_2;
2424
std::string m_functionName;
2525
std::string m_resourcePrefix;
2626
std::string m_pixelName;
@@ -91,7 +91,7 @@ GpuShaderCreator::~GpuShaderCreator()
9191
void GpuShaderCreator::setUniqueID(const char * uid) noexcept
9292
{
9393
AutoMutex lock(getImpl()->m_cacheIDMutex);
94-
getImpl()->m_uid = uid;
94+
getImpl()->m_uid = uid ? uid : "";
9595
getImpl()->m_cacheID.clear();
9696
}
9797

src/OpenColorIO/GpuShaderUtils.cpp

Lines changed: 23 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -53,14 +53,12 @@ std::string getVecKeyword(GpuLanguage lang)
5353
kw << "half" << N;
5454
break;
5555
}
56-
5756
case GPU_LANGUAGE_HLSL_DX11:
5857
{
5958
kw << "float" << N;
6059
break;
6160
}
6261

63-
case GPU_LANGUAGE_UNKNOWN:
6462
default:
6563
{
6664
throw Exception("Unknown GPU shader language.");
@@ -102,7 +100,6 @@ void getTexDecl(GpuLanguage lang,
102100
break;
103101
}
104102

105-
case GPU_LANGUAGE_UNKNOWN:
106103
default:
107104
{
108105
throw Exception("Unknown GPU shader language.");
@@ -112,9 +109,9 @@ void getTexDecl(GpuLanguage lang,
112109

113110
template<int N>
114111
std::string getTexSample(GpuLanguage lang,
115-
const std::string & textureName,
116-
const std::string & samplerName,
117-
const std::string & coords)
112+
const std::string & textureName,
113+
const std::string & samplerName,
114+
const std::string & coords)
118115
{
119116
std::ostringstream kw;
120117

@@ -142,7 +139,6 @@ std::string getTexSample(GpuLanguage lang,
142139
break;
143140
}
144141

145-
case GPU_LANGUAGE_UNKNOWN:
146142
default:
147143
{
148144
throw Exception("Unknown GPU shader language.");
@@ -360,7 +356,8 @@ void GpuShaderText::declareIntArrayConst(const std::string & name, int size, con
360356
auto nl = newLine();
361357
if (m_lang != GPU_LANGUAGE_HLSL_DX11)
362358
{
363-
nl << "const " << intKeyword() << " " << name << "[" << size << "]" << " = " << intKeyword() << "[" << size << "](";
359+
nl << "const " << intKeyword() << " " << name << "[" << size << "]"
360+
<< " = " << intKeyword() << "[" << size << "](";
364361
for (int i = 0; i < size; ++i)
365362
{
366363
nl << v[i];
@@ -703,7 +700,6 @@ std::string matrix4Mul(const T * m4x4, const std::string & vecName, GpuLanguage
703700
break;
704701
}
705702

706-
case GPU_LANGUAGE_UNKNOWN:
707703
default:
708704
{
709705
throw Exception("Unknown GPU shader language.");
@@ -745,7 +741,6 @@ std::string GpuShaderText::lerp(const std::string & x,
745741
break;
746742
}
747743

748-
case GPU_LANGUAGE_UNKNOWN:
749744
default:
750745
{
751746
throw Exception("Unknown GPU shader language.");
@@ -760,26 +755,25 @@ std::string GpuShaderText::float3GreaterThan(const std::string & a,
760755
std::ostringstream kw;
761756
switch (m_lang)
762757
{
763-
case GPU_LANGUAGE_GLSL_1_2:
764-
case GPU_LANGUAGE_GLSL_1_3:
765-
case GPU_LANGUAGE_GLSL_4_0:
766-
case GPU_LANGUAGE_CG:
767-
{
768-
kw << float3Keyword() << "(greaterThan( " << a << ", " << b << "))";
769-
break;
770-
}
771-
case GPU_LANGUAGE_HLSL_DX11:
772-
{
773-
kw << float3Keyword() << "((" << a << " > " << b << ") ? "
774-
<< float3Const(1.0f) << " : " << float3Const(0.0f) << ")";
775-
break;
776-
}
758+
case GPU_LANGUAGE_GLSL_1_2:
759+
case GPU_LANGUAGE_GLSL_1_3:
760+
case GPU_LANGUAGE_GLSL_4_0:
761+
case GPU_LANGUAGE_CG:
762+
{
763+
kw << float3Keyword() << "(greaterThan( " << a << ", " << b << "))";
764+
break;
765+
}
766+
case GPU_LANGUAGE_HLSL_DX11:
767+
{
768+
kw << float3Keyword() << "((" << a << " > " << b << ") ? "
769+
<< float3Const(1.0f) << " : " << float3Const(0.0f) << ")";
770+
break;
771+
}
777772

778-
case GPU_LANGUAGE_UNKNOWN:
779-
default:
780-
{
781-
throw Exception("Unknown GPU shader language.");
782-
}
773+
default:
774+
{
775+
throw Exception("Unknown GPU shader language.");
776+
}
783777
}
784778
return kw.str();
785779
}
@@ -805,7 +799,6 @@ std::string GpuShaderText::float4GreaterThan(const std::string & a,
805799
break;
806800
}
807801

808-
case GPU_LANGUAGE_UNKNOWN:
809802
default:
810803
{
811804
throw Exception("Unknown GPU shader language.");
@@ -836,7 +829,6 @@ std::string GpuShaderText::atan2(const std::string & y,
836829
break;
837830
}
838831

839-
case GPU_LANGUAGE_UNKNOWN:
840832
default:
841833
{
842834
throw Exception("Unknown GPU shader language.");

0 commit comments

Comments
 (0)