2011년 12월 6일 화요일

Python Rif Layer - 2

import prman
import sys

class myRif(prman.Rif):
    def __init__(self, ri):
        prman.Rif.__init__(self, ri)

    def Option(self, name, plist):
        if name == 'user':
            if 'uniform float linearize' in plist:
                self.m_ri.Option('user', {'uniform float linearize': 0})
            else:
                self.m_ri.Option('user', plist)
        else:
            self.m_ri.Option(name, plist)

if len(sys.argv) == 3:
    infile = sys.argv[1]
    outfile = sys.argv[2]
    prman.Init(["-catrib", outfile, "-progress"])
    ri = prman.Ri()
    rif1 = myRif(ri)
    prman.RifInit([rif1])
    ri.Option("rib", {"string asciistyle": "indented"})
    ri.Begin(ri.RENDER)
    prman.ParseFile(infile)
    ri.End()

댓글 없음: