Skip to content

Instantly share code, notes, and snippets.

@redglasses67
redglasses67 / addAttrMFnMatrixAttribute.py
Created December 23, 2022 18:54
MFnMatrixAttribute での addAttribute
import maya.api.OpenMaya as om2
selList = om2.MGlobal.getActiveSelectionList()
mObject = selList.getDependNode(0)
fnDepNode = om2.MFnDependencyNode(mObject)
matrixAttr = om2.MFnMatrixAttribute()
matrixAttrObj = matrixAttr.create("matrixLongName", "matrixShortName", om2.MFnMatrixAttribute.kDouble)
matrixAttr.default = om2.MMatrix([(1, 0, 0, 0), (0, 1, 0, 0), (0, 0, 1, 0), (0, 0, 0, 1)])
fnDepNode.addAttribute(matrixAttrObj)
@redglasses67
redglasses67 / addAttrMFnEnumAttribute.py
Created December 23, 2022 18:50
MFnEnumAttribute での addAttribute
import maya.api.OpenMaya as om2
selList = om2.MGlobal.getActiveSelectionList()
mObject = selList.getDependNode(0)
fnDepNode = om2.MFnDependencyNode(mObject)
enumAttr = om2.MFnEnumAttribute()
enumAttrObj = enumAttr.create("enumLongName", "enumShortName", 0)
enumAttr.addField("AAA", 0)
enumAttr.addField("BBB", 1)
@redglasses67
redglasses67 / addAttrMFnNumericAttribute.py
Last active December 23, 2022 19:21
MFnNumericAttribute での addAttribute
import maya.api.OpenMaya as om2
selList = om2.MGlobal.getActiveSelectionList()
mObject = selList.getDependNode(0)
fnDepNode = om2.MFnDependencyNode(mObject)
floatAttr = om2.MFnNumericAttribute()
floatAttrObj = floatAttr.create("floatLongName", "floatShortName", om2.MFnNumericData.kFloat, 1.0)
# create後じゃないと設定できない
floatAttr.writable = True
@redglasses67
redglasses67 / DynamicBranchShaderComplex.shader
Created November 6, 2022 15:25
Unity dynamic branch variants complex shader - Sample
Shader "Dynamic Branch Shader Complex"
{
Properties
{
_TexAAA ("Tex AAA", 2D) = "white" {}
_TexBBB ("Tex BBB", 2D) = "white" {}
_TexCCC ("Tex CCC", 2D) = "white" {}
[KeywordEnum(None, AAA, BBB, CCC)] _Var_Test ("Variant Test", Float) = 1
}
@redglasses67
redglasses67 / DynamicBranchShaderSimple.shader
Created November 6, 2022 15:24
Unity dynamic branch variants simple shader - Sample
Shader "Dynamic Branch Shader Simple"
{
Properties
{
_TexAAA ("Tex AAA", 2D) = "white" {}
_TexBBB ("Tex BBB", 2D) = "white" {}
_TexCCC ("Tex CCC", 2D) = "white" {}
[KeywordEnum(None, AAA, BBB, CCC)] _Var_Test ("Variant Test", Float) = 1
}
@redglasses67
redglasses67 / MultiCompileShaderSimple_Toggle.shader
Created October 16, 2022 16:41
Unity multi compile variants simple shader - Sample (Toggle ver)
Shader "Multi Compile Shader Simple Toggle"
{
Properties
{
[Toggle(_VAR_TEST_AAA)] _Use_TexAAA ("Use Tex AAA", int) = 0
_TexAAA ("Tex AAA", 2D) = "white" {}
[Toggle(_VAR_TEST_BBB)] _Use_TexBBB ("Use Tex BBB", int) = 0
_TexBBB ("Tex BBB", 2D) = "white" {}
[Toggle(_VAR_TEST_CCC)] _Use_TexCCC ("Use Tex CCC", int) = 0
_TexCCC ("Tex CCC", 2D) = "white" {}
@redglasses67
redglasses67 / MultiCompileShaderComplex_Toggle.shader
Created October 16, 2022 16:41
Unity multi compile variants complex shader - Sample (Toggle ver)
Shader "Multi Compile Shader Complex Toggle"
{
Properties
{
[Toggle(_VAR_TEST_AAA)] _Use_TexAAA ("Use Tex AAA", int) = 0
_TexAAA ("Tex AAA", 2D) = "white" {}
[Toggle(_VAR_TEST_BBB)] _Use_TexBBB ("Use Tex BBB", int) = 0
_TexBBB ("Tex BBB", 2D) = "white" {}
[Toggle(_VAR_TEST_CCC)] _Use_TexCCC ("Use Tex CCC", int) = 0
_TexCCC ("Tex CCC", 2D) = "white" {}
@redglasses67
redglasses67 / MultiCompileShaderComplex.shader
Created October 16, 2022 16:37
Unity multi compile variants complex shader - Sample
Shader "Multi Compile Shader Complex"
{
Properties
{
_TexAAA ("Tex AAA", 2D) = "white" {}
_TexBBB ("Tex BBB", 2D) = "white" {}
_TexCCC ("Tex CCC", 2D) = "white" {}
[KeywordEnum(None, AAA, BBB, CCC)] _Var_Test ("Variant Test", Float) = 1
}
@redglasses67
redglasses67 / MultiCompileShaderSimple.shader
Created October 16, 2022 16:36
Unity multi compile variants simple shader - Sample
Shader "Multi Compile Shader Simple"
{
Properties
{
_TexAAA ("Tex AAA", 2D) = "white" {}
_TexBBB ("Tex BBB", 2D) = "white" {}
_TexCCC ("Tex CCC", 2D) = "white" {}
[KeywordEnum(None, AAA, BBB, CCC)] _Var_Test ("Variant Test", Float) = 1
}
@redglasses67
redglasses67 / addIconPathToXBMLANGPATH.py
Created May 24, 2022 04:11
Add Icon path to XBMLANGPATH
import maya.mel as mel
try:
xbmLangPaths = mel.eval("getenv XBMLANGPATH;")
except:
xbmLangPaths = ''
addPath = r";D:/Test/icons"
if not addPath in xbmLangPaths:
xbmLangPaths += addPath