Maya着色节点中的锁定文件纹理
我在使用 shadingNode
的时候遇到了一些奇怪的情况,每当我通过 Python 在 Maya 中创建一个文件节点时,颜色空间就被锁住了,颜色空间的下拉菜单也变成灰色,无法选择。
fileNode = cmds.shadingNode( "file", asTexture=True, name="dispMap" )
请看附上的图片,不过当我在 Hypershade
的创建着色器选项卡中创建文件节点时,结果是正常的。
相关问题:
- 暂无相关问题
2 个回答
1
太好了,设置文件格式为“原始”后,它就正常工作了,谢谢你,Andy。
import maya.cmds as cmds
import pymel.core as pm
fileNode = cmds.shadingNode("file",asTexture=True, name = "dispMap")
def InputColorRules():
colMgmtGlob = pm.PyNode( 'defaultColorMgtGlobals' )
for f in pm.ls( type='file' ):
colMgmtGlob.cmEnabled >> f.colorManagementEnabled
colMgmtGlob.configFileEnabled >> f.colorManagementConfigFileEnabled
colMgmtGlob.configFilePath >> f.colorManagementConfigFilePath
colMgmtGlob.workingSpaceName >> f.workingSpace
cmds.setAttr('%s.colorSpace' %f, 'Raw', type='string')
InputColorRules()
1
你需要重新应用 输入颜色空间规则
。
import maya.cmds as cmds
import pymel.core as pm
shader = cmds.shadingNode( 'anisotropic', asShader=True )
file_node = cmds.shadingNode( 'file', asTexture=True, name="dispMap" )
# file = ( '/Users/me/Desktop/texture.jpg' )
shading_group = cmds.sets( renderable=True, noSurfaceShader=True, empty=True )
cmds.connectAttr( '%s.outColor' %shader , '%s.surfaceShader' %shading_group )
cmds.connectAttr( '%s.outColor' %file_node, '%s.color' %shader )
cmds.polySphere( n='mySphere', radius=5, sx=40, sy=30 )
cmds.select( 'mySphere', visible=True )
cmds.hyperShade( assign=shader )
colMgmtGlob = pm.PyNode( 'defaultColorMgtGlobals' )
for f in pm.ls( type='file' ):
colMgmtGlob.cmEnabled >> f.colorManagementEnabled
colMgmtGlob.configFileEnabled >> f.colorManagementConfigFileEnabled
colMgmtGlob.configFilePath >> f.colorManagementConfigFilePath
colMgmtGlob.workingSpaceName >> f.workingSpace