def __readShader(self): sp = IECore.SearchPath(os.environ.get("DL_SHADERS_PATH"), ":") f = sp.find(self["name"].getValue() + ".sdl") if not f: return None reader = IECoreRI.SLOReader(f) return reader.read()
def testSLOReaderSupport(self): self.assertEqual( os.system( "shaderdl -o test/IECoreRI/shaders/coshaderTest.sdl test/IECoreRI/shaders/coshaderTest.sl" ), 0) s = IECoreRI.SLOReader("test/IECoreRI/shaders/coshaderTest.sdl").read() # old versions of 3delight reported the type as <unknown> (which we don't really want) but # new versions report it correctly as "shader". self.failUnless(s.type == "<unknown>" or s.type == "shader") k = s.parameters.keys() self.assertEqual(len(k), 2) self.failUnless("f" in k) self.failUnless("s" in k)
def loadShader(self, shader): return IECoreRI.SLOReader( os.path.join(os.environ["SHADER_PATH"], shader + ".sdl")).read()