// =========================================================================== // Copyright 2018 Autodesk, Inc. All rights reserved. // // Use of this software is subject to the terms of the Autodesk license // agreement provided at the time of installation or download, or which // otherwise accompanies this software in either electronic or hard copy form. // =========================================================================== global proc HIKCharacterNodeSuppressControl (string $nodeName ) { editorTemplate -suppress $nodeName; editorTemplate -suppress ($nodeName + "T"); editorTemplate -suppress ($nodeName + "R"); editorTemplate -suppress ($nodeName + "S"); editorTemplate -suppress ($nodeName + "RotateOrder"); editorTemplate -suppress ($nodeName + "RotateAxis"); editorTemplate -suppress ($nodeName + "JointOrient"); editorTemplate -suppress ($nodeName + "MinRLimit"); editorTemplate -suppress ($nodeName + "MinRLimitEnablex"); editorTemplate -suppress ($nodeName + "MinRLimitEnabley"); editorTemplate -suppress ($nodeName + "MinRLimitEnablez"); editorTemplate -suppress ($nodeName + "MaxRLimit"); editorTemplate -suppress ($nodeName + "MaxRLimitEnablex"); editorTemplate -suppress ($nodeName + "MaxRLimitEnabley"); editorTemplate -suppress ($nodeName + "MaxRLimitEnablez"); } global proc HIKCharacterNodeAddInvertedAttributeControls( string $nodeName ) { string $labelInvertibleJoints = (uiRes("m_AEHIKCharacterNodeTemplate.kInvertibleJoints")); editorTemplate -beginLayout $labelInvertibleJoints -collapse 1; editorTemplate -addControl "leftKneeInverted"; editorTemplate -addControl "rightKneeInverted"; editorTemplate -addControl "leftElbowInverted"; editorTemplate -addControl "rightElbowInverted"; editorTemplate -endLayout; } global proc HIKCharacterNodeAddControl (string $attrName ) { string $niceLabel = $attrName; if( !`exists isOldRollBone` ){ eval("source \"hikSkeletonUtils.mel\""); } if( isOldRollBone( $attrName ) ){ // Hide old roll bones // editorTemplate -suppress $attrName; editorTemplate -suppress ($attrName + "MinRLimit"); editorTemplate -suppress ($attrName + "MinRLimitEnablex"); editorTemplate -suppress ($attrName + "MinRLimitEnabley"); editorTemplate -suppress ($attrName + "MinRLimitEnablez"); editorTemplate -suppress ($attrName + "MaxRLimit"); editorTemplate -suppress ($attrName + "MaxRLimitEnablex"); editorTemplate -suppress ($attrName + "MaxRLimitEnabley"); editorTemplate -suppress ($attrName + "MaxRLimitEnablez"); editorTemplate -suppress ($attrName + "T"); editorTemplate -suppress ($attrName + "R"); editorTemplate -suppress ($attrName + "S"); editorTemplate -suppress ($attrName + "RotateOrder"); editorTemplate -suppress ($attrName + "RotateAxis"); editorTemplate -suppress ($attrName + "JointOrient"); return; } else { $niceLabel = hikNiceLabel( $attrName ); } string $labelMinRotationLimit = (uiRes("m_AEHIKCharacterNodeTemplate.kMinRotLimit")); string $labelEnableX = (uiRes("m_AEHIKCharacterNodeTemplate.kEnableX")); string $labelEnableY = (uiRes("m_AEHIKCharacterNodeTemplate.kEnableY")); string $labelEnableZ = (uiRes("m_AEHIKCharacterNodeTemplate.kEnableZ")); string $labelMaxRotationLimit = (uiRes("m_AEHIKCharacterNodeTemplate.kMaxRotLimit")); editorTemplate -beginLayout $niceLabel -collapse 1; if( $niceLabel == $attrName ){ editorTemplate -addControl $attrName; } else { editorTemplate -label $niceLabel -addControl $attrName; } editorTemplate -label $labelMinRotationLimit -addControl ($attrName + "MinRLimit"); editorTemplate -label $labelEnableX -addControl ($attrName + "MinRLimitEnablex"); editorTemplate -label $labelEnableY -addControl ($attrName + "MinRLimitEnabley"); editorTemplate -label $labelEnableZ -addControl ($attrName + "MinRLimitEnablez"); editorTemplate -label $labelMaxRotationLimit -addControl ($attrName + "MaxRLimit"); editorTemplate -label $labelEnableX -addControl ($attrName + "MaxRLimitEnablex"); editorTemplate -label $labelEnableY -addControl ($attrName + "MaxRLimitEnabley"); editorTemplate -label $labelEnableZ -addControl ($attrName + "MaxRLimitEnablez"); // characterization T, R, S - not useful for users // editorTemplate -suppress ($attrName + "T"); editorTemplate -suppress ($attrName + "R"); editorTemplate -suppress ($attrName + "S"); editorTemplate -suppress ($attrName + "RotateOrder"); editorTemplate -suppress ($attrName + "RotateAxis"); editorTemplate -suppress ($attrName + "JointOrient"); editorTemplate -endLayout; }; global proc AEHIKCharacterNodeTemplate (string $nodeName ) { editorTemplate -beginScrollLayout; genericHIKLayout "HIKCharacterNodeAddControl"; HIKCharacterNodeAddInvertedAttributeControls( $nodeName ); HIKCharacterNodeSuppressControl "Props0"; HIKCharacterNodeSuppressControl "Props1"; HIKCharacterNodeSuppressControl "Props2"; HIKCharacterNodeSuppressControl "Props3"; HIKCharacterNodeSuppressControl "Props4"; editorTemplate -suppress OutputCharacterDefinition; editorTemplate -suppress SkeletonGenerator; editorTemplate -suppress HipsTranslation; editorTemplate -suppress HipsTranslationT; editorTemplate -suppress HipsTranslationR; editorTemplate -suppress HipsTranslationS; editorTemplate -suppress HipsTranslationRotateAxis; editorTemplate -suppress HipsTranslationRotateOrder; editorTemplate -suppress HipsTranslationJointOrient; editorTemplate -suppress HipsTranslationMinRLimit; editorTemplate -suppress HipsTranslationMaxRLimit; editorTemplate -suppress HipsTranslationMinRLimitEnablex; editorTemplate -suppress HipsTranslationMinRLimitEnabley; editorTemplate -suppress HipsTranslationMinRLimitEnablez; editorTemplate -suppress HipsTranslationMaxRLimitEnablex; editorTemplate -suppress HipsTranslationMaxRLimitEnabley; editorTemplate -suppress HipsTranslationMaxRLimitEnablez; editorTemplate -suppress LeftShoulderExtra; editorTemplate -suppress LeftShoulderExtraT; editorTemplate -suppress LeftShoulderExtraR; editorTemplate -suppress LeftShoulderExtraS; editorTemplate -suppress LeftShoulderExtraRotateOrder; editorTemplate -suppress LeftShoulderExtraRotateAxis; editorTemplate -suppress LeftShoulderExtraJointOrient; editorTemplate -suppress LeftShoulderExtraMinRLimit; editorTemplate -suppress LeftShoulderExtraMaxRLimit; editorTemplate -suppress LeftShoulderExtraMinRLimitEnablex; editorTemplate -suppress LeftShoulderExtraMinRLimitEnabley; editorTemplate -suppress LeftShoulderExtraMinRLimitEnablez; editorTemplate -suppress LeftShoulderExtraMaxRLimitEnablex; editorTemplate -suppress LeftShoulderExtraMaxRLimitEnabley; editorTemplate -suppress LeftShoulderExtraMaxRLimitEnablez; editorTemplate -suppress RightShoulderExtra; editorTemplate -suppress RightShoulderExtraT; editorTemplate -suppress RightShoulderExtraR; editorTemplate -suppress RightShoulderExtraS; editorTemplate -suppress RightShoulderExtraRotateOrder; editorTemplate -suppress RightShoulderExtraRotateAxis; editorTemplate -suppress RightShoulderExtraJointOrient; editorTemplate -suppress RightShoulderExtraMinRLimit; editorTemplate -suppress RightShoulderExtraMaxRLimit; editorTemplate -suppress RightShoulderExtraMinRLimitEnablex; editorTemplate -suppress RightShoulderExtraMinRLimitEnabley; editorTemplate -suppress RightShoulderExtraMinRLimitEnablez; editorTemplate -suppress RightShoulderExtraMaxRLimitEnablex; editorTemplate -suppress RightShoulderExtraMaxRLimitEnabley; editorTemplate -suppress RightShoulderExtraMaxRLimitEnablez; editorTemplate -suppress InputCharacterizationLock; // include/call base class/node attributes AEdependNodeTemplate $nodeName; editorTemplate -addExtraControls; editorTemplate -endScrollLayout; }