Пример #1
0
    def createLayer(self, layer, useExisting =True):
        """ Creates a display layer with the specified name. """

        if useExisting and cmds.objExists(layer):
            return

        priorSelection = MayaUtils.getSelectedTransforms()
        cmds.select(clear=True)
        cmds.createDisplayLayer(name=layer)
        MayaUtils.setSelection(priorSelection)
Пример #2
0
    def createRenderEnvironment(self):
        lightName = 'scenic_light1'
        if not cmds.objExists(lightName):
            lightName = cmds.directionalLight(name=lightName, intensity=0.5)
            cmds.move(0, 2500, 0, lightName)
            cmds.rotate('-45deg', '-45deg', 0, lightName)

        lightName = 'scenic_light2'
        if not cmds.objExists(lightName):
            lightName = cmds.directionalLight(name=lightName, intensity=0.5)
            cmds.move(0, 2500, 0, lightName)
            cmds.rotate('-45deg', '135deg', 0, lightName)

        floorName = 'floor'
        if not cmds.objExists(floorName):
            floorName = cmds.polyPlane(width=10000, height=10000, name=floorName)[0]
        shader, shaderEngine = self.createShader('Whiteout_Surface', 'surfaceShader')
        cmds.setAttr(shader + '.outColor', 1.0, 1.0, 1.0, type='double3')
        cmds.select([floorName])
        cmds.sets(forceElement=shaderEngine)
Пример #3
0
    def createShader(self, shaderName, shaderType ='blinn'):
        shaderEngine = None
        if not cmds.objExists(shaderName):
            shader       = cmds.shadingNode(shaderType, asShader=True)
            shader       = cmds.rename(shader, shaderName)
            shaderEngine = cmds.sets(renderable=True, empty=True, noSurfaceShader=True, name=shader + '_SG')
            cmds.connectAttr(shader + '.outColor', shaderEngine + '.surfaceShader')
        else:
            shader  = shaderName
            engines = cmds.listConnections(shader + '.outColor')
            if engines:
                shaderEngine = engines[0]

        return shader, shaderEngine
Пример #4
0
    def initializeCadenceCam(self):
        """ This creates an orthographic camera that looks down the Y axis onto
            the XZ plane, and rotated so that the AI file track labels are
            legible.  This camera is positioned so that the given track nodeName
            is centered in its field by setCameraFocus. """

        if cmds.objExists(self.CADENCE_CAM):
            return

        priorSelection = MayaUtils.getSelectedTransforms()

        c = cmds.camera(
            orthographic=True,
            nearClipPlane=1,
            farClipPlane=100000,
            orthographicWidth=400)
        cmds.setAttr(c[0] + '.visibility', False)
        cmds.rename(c[0], self.CADENCE_CAM)
        cmds.rotate(-90, 180, 0)
        cmds.move(0, 100, 0, self.CADENCE_CAM, absolute=True)

        MayaUtils.setSelection(priorSelection)
Пример #5
0
    def deleteLayer(self, layer):
        """ Deletes a display layer. """

        if not cmds.objExists(layer):
            cmds.delete(layer)
Пример #6
0
 def shaderExistsInScene(cls, shaderConfig):
    return cmds.objExists(shaderConfig['uid'])