Esempio n. 1
0
    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)
Esempio n. 3
0
    def loadShader(self, shader):

        return IECoreRI.SLOReader(
            os.path.join(os.environ["SHADER_PATH"], shader + ".sdl")).read()