示例#1
0
 def createShaderCmd(self, name, objs=None):
     #创建IDP材质球按钮命令
     print name
     if objs:
         geos = objs
     else:
         geos = pm.ls(sl=1)
     shader, sg = CNG.createIDPNode(name)
     CNG.assignShader(geos, shader, sg)
示例#2
0
 def createShaderCmd(self, name, objs = None):
     #创建IDP材质球按钮命令 
     print name
     if objs : 
         geos = objs
     else :
         geos = pm.ls(sl=1)
     shader, sg = CNG.createIDPNode(name)
     CNG.assignShader(geos, shader, sg)
def createRenderLayer(name):
    #创建渲染层
    #
    #参数name: 需要输入渲染层的名字
    #
    #获取所有的模型对象
    allgeos = getallGeos()
    topgrp = list(set([i.getParent(-1) for i in allgeos]))

    members = getallTops()
    #切换渲染器
    try:
        defaultLayer = pm.nodetypes.RenderLayer.defaultRenderLayer()
        defaultLayer.setCurrent()
    except:
        pass

    #删除所有的AOV
    at.delAOV()

    #删除所有的渲染层
    renderLayers = pm.ls(type='renderLayer')
    for rl in renderLayers:
        if 'defaultRenderLayer' not in rl.name():
            pm.delete(rl)

    #创建渲染层
    if name == "bg_color":
        for key in ['AO', 'NOM', 'Fre', 'Z']:
            at.createAOV(key)
        members = getsetTops() + getlightTops()
    elif name == "chr_color":
        for key in ['AO', 'NOM', 'Fre', 'sss']:
            at.createAOV(key)
        im = importLight()
        members = getchrandpropTops() + im
    elif name == "night_chr_color":
        for key in ['AO', 'NOM', 'Fre', 'sss']:
            at.createAOV(key)
        im = importLight()
        members = getchrandpropTops() + im
    elif name in [
            "chr_idp1", "chr_idp2", "chr_idp3", "bg_idp1", "bg_idp2", "bg_idp3"
    ]:
        delAllShaders(topgrp)
        shader, sg = CNG.createIDPNode('Maeet')
        CNG.assignShader(topgrp, shader, sg)
    elif name == "shadow":
        delAllShaders(topgrp)
        at.createAOV('COCC')
        shader, sg = CNG.createShadow()
        CNG.assignShader(topgrp, shader, sg)
    elif name == "RGBlight":
        delAllShaders(topgrp)
        shader, sg = CNG.createRGBlight()
        CNG.assignShader(topgrp, shader, sg)
    elif name == "FOGlight":
        delAllShaders(topgrp)
        shader, sg = CNG.createFOGlight()
        CNG.assignShader(topgrp, shader, sg)
    else:
        pass

    if name == 'night_chr_color':
        layerName = 'chr_color'
    else:
        layerName = name
    try:
        layer = pm.nodetypes.RenderLayer.findLayerByName(layerName)
    except:
        layer = pm.createRenderLayer(name=layerName, e=1)
    try:
        defaultLayer = pm.nodetypes.RenderLayer.defaultRenderLayer()
        defaultLayer.renderable.set(0)
    except:
        pass
    layer.setCurrent()
    if members:
        layer.addMembers(members)
    try:
        saveFile(name)
    except:
        pass
def createRenderLayer(name):
    # 创建渲染层
    #
    # 参数name: 需要输入渲染层的名字
    #
    # 获取所有的模型对象
    allgeos = getallGeos()
    topgrp = list(set([i.getParent(-1) for i in allgeos]))

    members = getallTops()
    # 切换渲染器
    try:
        defaultLayer = pm.nodetypes.RenderLayer.defaultRenderLayer()
        defaultLayer.setCurrent()
    except:
        pass

    # 删除所有的AOV
    at.delAOV()

    # 删除所有的渲染层
    renderLayers = pm.ls(type="renderLayer")
    for rl in renderLayers:
        if "defaultRenderLayer" not in rl.name():
            pm.delete(rl)

    # 创建渲染层
    if name == "bg_color":
        for key in ["AO", "NOM", "Fre", "Z"]:
            at.createAOV(key)
        members = getsetTops() + getlightTops()
    elif name == "chr_color":
        for key in ["AO", "NOM", "Fre", "sss"]:
            at.createAOV(key)
        im = importLight()
        members = getchrandpropTops() + im
    elif name == "night_chr_color":
        for key in ["AO", "NOM", "Fre", "sss"]:
            at.createAOV(key)
        im = importLight()
        members = getchrandpropTops() + im
    elif name in ["chr_idp1", "chr_idp2", "chr_idp3", "bg_idp1", "bg_idp2", "bg_idp3"]:
        delAllShaders(topgrp)
        shader, sg = CNG.createIDPNode("Maeet")
        CNG.assignShader(topgrp, shader, sg)
    elif name == "shadow":
        delAllShaders(topgrp)
        at.createAOV("COCC")
        shader, sg = CNG.createShadow()
        CNG.assignShader(topgrp, shader, sg)
    elif name == "RGBlight":
        delAllShaders(topgrp)
        shader, sg = CNG.createRGBlight()
        CNG.assignShader(topgrp, shader, sg)
    elif name == "FOGlight":
        delAllShaders(topgrp)
        shader, sg = CNG.createFOGlight()
        CNG.assignShader(topgrp, shader, sg)
    else:
        pass

    if name == "night_chr_color":
        layerName = "chr_color"
    else:
        layerName = name
    try:
        layer = pm.nodetypes.RenderLayer.findLayerByName(layerName)
    except:
        layer = pm.createRenderLayer(name=layerName, e=1)
    try:
        defaultLayer = pm.nodetypes.RenderLayer.defaultRenderLayer()
        defaultLayer.renderable.set(0)
    except:
        pass
    layer.setCurrent()
    if members:
        layer.addMembers(members)
    try:
        saveFile(name)
    except:
        pass