This script allows the user to add the VRay gamma correct tag to the selected file nodes and set your gamma value.
To Run: Select the file nodes you want to change the run the script.
#VRay File Gamma Attributes for Maya version 1.0.0
#Bryanna London
#!/usr/bin/env python
import maya.cmds as cmds
import maya.mel as mel
#delete window if a window already exisits
if cmds.window('gammaWindow', exists=True):
cmds.deleteUI('gammaWindow')
#Create my GUI
def createGUI():
#window layout
gammaWindow= cmds.window('gammaWindow',title="Gamma Correction", rtf=True)
cmds.columnLayout(adjustableColumn= True)
cmds.floatFieldGrp('textureInputGamma',numberOfFields=1, label="Texture Input Gamma", precision= 2, value1=2.2)
cmds.rowColumnLayout(numberOfRows = 1)
cmds.button( label='GAMMA ON', width= 100, command=('fileSelection()'))
cmds.button( label='GAMMA OFF', width= 100, command=('gammaOff()'))
cmds.setParent('..')
cmds.columnLayout()
cmds.button( label='Close', width= 200, command=('cmds.deleteUI(\"' + gammaWindow + '\", window=True)'))
cmds.setParent('..')
cmds.showWindow('gammaWindow')
#Query Values inputed in GUI for Subdivision tab
def queryValues():
x= cmds.floatFieldGrp('textureInputGamma', query=True, value=True)
#query floatFieldGrp
queriedValuesX = x
#print and return values from GUI
print queriedValuesX
return queriedValuesX[0]
#File Selection Definition
def fileSelection():
#Queried Values
queriedValuesX = queryValues()
print queriedValuesX
#Define variable textures as all the selected file nodes
tex = ''
textures = cmds.ls(selection = True, visible=True, type = 'file')
#if there are file nodes selected run the for loop
if cmds.ls(sl=True, type = 'file'):
#for all the selected files, add the gamma attribute
for tex in textures:
mel.eval('vray addAttributesFromGroup %s vray_file_gamma 1' % tex)
cmds.evalDeferred("cmds.setAttr('%s.vrayFileGammaEnable', %s)" %(tex, 1))
cmds.evalDeferred("cmds.setAttr('%s.vrayFileColorSpace', %s)" %(tex, 1))
cmds.evalDeferred("cmds.setAttr('%s.vrayFileGammaValue', %s)" %(tex, queriedValuesX))
#if nothing is selected don't do anything
else:
cmds.confirmDialog(title='Confirm', message='Nothing Selected. Nothing Done.' , button =['Ok'])
#Off button command to turn the Gamma tags off
#this will run if the Turn SubD Off button is selected
def gammaOff():
files = cmds.ls(selection = True, dag = True, lf = True, visible=True, type = 'file')
if cmds.ls(sl=True):
for fi in files:
mel.eval('vray addAttributesFromGroup %s vray_file_gamma 0' % fi)
else:
cmds.confirmDialog(title='Confirm', message='Nothing Selected. Nothing Done.' , button =['Ok'])
#show window
createGUI()
© 2016 Bryanna London