diff --git a/libraries/pbrlib/genosl/mx_chiang_hair_roughness.osl b/libraries/pbrlib/genosl/mx_chiang_hair_roughness.osl
new file mode 100644
index 0000000000..002bdc3044
--- /dev/null
+++ b/libraries/pbrlib/genosl/mx_chiang_hair_roughness.osl
@@ -0,0 +1,7 @@
+void mx_chiang_hair_roughness(float longitudinal, float azimuthal, float scale_TT, float scale_TRT, output vector2 roughness_R, output vector2 roughness_TT, output vector2 roughness_TRT)
+{
+ // TODO: Write OSL implementation of this node.
+ roughness_R = vector2(0.0, 0.0);
+ roughness_TT = vector2(0.0, 0.0);
+ roughness_TRT = vector2(0.0, 0.0);
+}
diff --git a/libraries/pbrlib/genosl/pbrlib_genosl_impl.mtlx b/libraries/pbrlib/genosl/pbrlib_genosl_impl.mtlx
index d3849a5ddb..beac984518 100644
--- a/libraries/pbrlib/genosl/pbrlib_genosl_impl.mtlx
+++ b/libraries/pbrlib/genosl/pbrlib_genosl_impl.mtlx
@@ -22,6 +22,9 @@
+
+
+
@@ -71,4 +74,13 @@
+
+
+
+
+
+
+
+
+
diff --git a/resources/Materials/TestSuite/pbrlib/bsdf/hair_bsdf.mtlx b/resources/Materials/TestSuite/pbrlib/bsdf/chiang_hair_bsdf.mtlx
similarity index 100%
rename from resources/Materials/TestSuite/pbrlib/bsdf/hair_bsdf.mtlx
rename to resources/Materials/TestSuite/pbrlib/bsdf/chiang_hair_bsdf.mtlx
diff --git a/resources/Materials/TestSuite/pbrlib/surfaceshader/hair_surfaceshader.mtlx b/resources/Materials/TestSuite/pbrlib/surfaceshader/chiang_hair_surfaceshader.mtlx
similarity index 100%
rename from resources/Materials/TestSuite/pbrlib/surfaceshader/hair_surfaceshader.mtlx
rename to resources/Materials/TestSuite/pbrlib/surfaceshader/chiang_hair_surfaceshader.mtlx
diff --git a/source/MaterialXTest/MaterialXGenMsl/GenMsl.cpp b/source/MaterialXTest/MaterialXGenMsl/GenMsl.cpp
index 414bc3dd5d..b0309ea44d 100644
--- a/source/MaterialXTest/MaterialXGenMsl/GenMsl.cpp
+++ b/source/MaterialXTest/MaterialXGenMsl/GenMsl.cpp
@@ -84,12 +84,7 @@ TEST_CASE("GenShader: MSL Implementation Check", "[genmsl]")
mx::StringSet generatorSkipNodeTypes;
mx::StringSet generatorSkipNodeDefs;
- generatorSkipNodeDefs.insert("ND_chiang_hair_roughness");
- generatorSkipNodeDefs.insert("ND_chiang_hair_absorption_from_color");
- generatorSkipNodeDefs.insert("ND_deon_hair_absorption_from_melanin");
- generatorSkipNodeDefs.insert("ND_chiang_hair_bsdf");
-
- GenShaderUtil::checkImplementations(context, generatorSkipNodeTypes, generatorSkipNodeDefs, 34);
+ GenShaderUtil::checkImplementations(context, generatorSkipNodeTypes, generatorSkipNodeDefs, 30);
}
TEST_CASE("GenShader: MSL Unique Names", "[genmsl]")
diff --git a/source/MaterialXTest/MaterialXGenMsl/GenMsl.h b/source/MaterialXTest/MaterialXGenMsl/GenMsl.h
index 692c283fda..7c96279d8b 100644
--- a/source/MaterialXTest/MaterialXGenMsl/GenMsl.h
+++ b/source/MaterialXTest/MaterialXGenMsl/GenMsl.h
@@ -43,8 +43,6 @@ class MslShaderGeneratorTester : public GenShaderUtil::ShaderGeneratorTester
void addSkipFiles() override
{
- _skipFiles.insert("hair_bsdf.mtlx");
- _skipFiles.insert("hair_surfaceshader.mtlx");
}
void setupDependentLibraries() override
diff --git a/source/MaterialXTest/MaterialXGenOsl/GenOsl.cpp b/source/MaterialXTest/MaterialXGenOsl/GenOsl.cpp
index c89f9ab19d..612d134753 100644
--- a/source/MaterialXTest/MaterialXGenOsl/GenOsl.cpp
+++ b/source/MaterialXTest/MaterialXGenOsl/GenOsl.cpp
@@ -89,12 +89,8 @@ TEST_CASE("GenShader: OSL Implementation Check", "[genosl]")
generatorSkipNodeTypes.insert("light");
mx::StringSet generatorSkipNodeDefs;
- generatorSkipNodeDefs.insert("ND_chiang_hair_roughness");
- generatorSkipNodeDefs.insert("ND_chiang_hair_absorption_from_color");
- generatorSkipNodeDefs.insert("ND_deon_hair_absorption_from_melanin");
- generatorSkipNodeDefs.insert("ND_chiang_hair_bsdf");
- GenShaderUtil::checkImplementations(context, generatorSkipNodeTypes, generatorSkipNodeDefs, 35);
+ GenShaderUtil::checkImplementations(context, generatorSkipNodeTypes, generatorSkipNodeDefs, 31);
}
TEST_CASE("GenShader: OSL Unique Names", "[genosl]")
diff --git a/source/MaterialXTest/MaterialXGenOsl/GenOsl.h b/source/MaterialXTest/MaterialXGenOsl/GenOsl.h
index f02f750d26..959c12d48b 100644
--- a/source/MaterialXTest/MaterialXGenOsl/GenOsl.h
+++ b/source/MaterialXTest/MaterialXGenOsl/GenOsl.h
@@ -45,8 +45,6 @@ class OslShaderGeneratorTester : public GenShaderUtil::ShaderGeneratorTester
void addSkipFiles() override
{
- _skipFiles.insert("hair_bsdf.mtlx");
- _skipFiles.insert("hair_surfaceshader.mtlx");
}
// Ignore light shaders in the document for OSL