import sys sys.path.append('/opt/pixar/RenderManProServer/bin') import re import prman SLICE_SHADER = \ '/temp/hosuk/spheres/project/renderman/geos/shaders/slicePoint' class ClipRif(prman.Rif): def __init__(self, ri, near, far, nearFadeWidth, farFadeWidth, sliceImgpath): self.near = near self.far = far self.nearFadeWidth = nearFadeWidth self.farFadeWidth = farFadeWidth self.sliceImgpath = sliceImgpath self.realNear = near - nearFadeWidth self.realFar = far + farFadeWidth prman.Rif.__init__(self, ri) def Display(self, path, format, mode, args): if mode != 'z': #print self.sliceImgpath+ '\n' self.m_ri.Display(self.sliceImgpath, format, mode, args) print ('rendering...') print (self.sliceImgpath+ '\n') def Clipping(self, near, far): self.m_ri.Clipping(self.realNear, self.realFar) def Surface(self, shaderPath, args): args = {} args['float near'] = (self.near,) args['float nearFadeWidth'] = (self.nearFadeWidth,) args['float far'] = (self.far,) args['float farFadeWidth'] = (self.farFadeWidth,) args['Kd'] = (0.8,) args['Ks'] = (0.5,) args['roughness'] = (0.4,) self.m_ri.Surface( SLICE_SHADER, args)