Exemple #1
0
        public static MFnDependencyNode CreateShadingNode(ShadingNodeType snt, string nodeType)
        {
            //Debug.Log("try create shadingNode:" + snt + " :" + nodeType);
            CmdStrConstructor csc = new CmdStrConstructor("shadingNode");

            switch (snt)
            {
            case ShadingNodeType.Texture:
            {
                csc.UpdateToggle("at", true);
                break;
            }

            case ShadingNodeType.Utility:
            {
                csc.UpdateToggle("au", true);
                break;
            }

            case ShadingNodeType.Shader:
            {
                csc.UpdateToggle("as", true);
                break;
            }

            case ShadingNodeType.Light:
            {
                csc.UpdateToggle("al", true);
                break;
            }

            case ShadingNodeType.PostProcess:
            {
                csc.UpdateToggle("app", true);
                break;
            }

            case ShadingNodeType.Rendering:
            {
                csc.UpdateToggle("ar", true);
                break;
            }
            }
            csc.UpdateFinalAppend(nodeType);
            string cmdStr = csc.ToString();
            //Debug.Log("command:" + cmdStr);
            string nodeName = MGlobal.executeCommandStringResult(cmdStr, true);

            //Debug.Log("create node result:" + nodeName);
            return(new MFnDependencyNode(BasicFunc.GetObjectByName(nodeName)));
        }