// =========================================================================== // 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. // =========================================================================== // // Procedure Name: // AEnClothTemplate // // Description Name; // Creates the attribute editor controls for the nCloth Node // // Input Value: // nodeName // // Output Value: // None // global proc AEnClothDimSelfCol( string $nodeName ) { int $sc = getAttr( $nodeName + ".selfCollisionFlag" ); editorTemplate -dimControl $nodeName "selfTrappedCheck" ($sc == 1); } global proc AEnClothDimHierarchy( string $nodeName ) { int $h = getAttr( $nodeName + ".stretchHierarchyLevels" ); editorTemplate -dimControl $nodeName "stretchHierarchyPercent" ($h == 0); } global proc AEnClothDimWindDist( string $nodeName ) { int $wd = getAttr( $nodeName + ".windShadowDistance" ); editorTemplate -dimControl $nodeName "windShadowDiffusion" ($wd == 0.0); } global proc AEnClothDimForce( string $nodeName ) { int $f = getAttr( $nodeName + ".forceField" ); editorTemplate -dimControl $nodeName "fieldMagnitude" ($f == 0); editorTemplate -dimControl $nodeName "fieldDistance" ($f == 0); editorTemplate -dimControl $nodeName "fieldScale" ($f == 0); } //global proc AEnClothDimPointForce( string $nodeName ) //{ // int $f = getAttr( $nodeName + ".pointForceField" ); // editorTemplate -dimControl $nodeName "pointFieldMagnitude" ($f == 0); // editorTemplate -dimControl $nodeName "selfAttract" ($f == 0); // editorTemplate -dimControl $nodeName "pointFieldDistance" ($f == 0); // editorTemplate -dimControl $nodeName "pointFieldDropoff" ($f == 0); //} global proc AEmapTypeCB(string $node, string $attr) { string $mapAttr = ($attr+"Map"); string $mapTypeAttr = ($node+"."+$attr+"MapType"); int $mapVal = `getAttr $mapTypeAttr`; int $enableVal = ($mapVal == 2); if (`attrNavigationControlGrp -exists $mapAttr`) { attrNavigationControlGrp -edit -at ($node+"."+$mapAttr) -enable $enableVal $mapAttr; } } proc AEnClothMapCommon( string $attrName, int $createControlGroup ) // // Description // Common method called by AEnClothMapNew & AEnClothMapReplace. // { string $label; string $attr = `plugAttr $attrName`; if( $attr == "thicknessMap" ){ $label = (uiRes("m_AEnClothTemplate.kThicknessMap")); } else if( $attr == "bounceMap"){ $label = (uiRes("m_AEnClothTemplate.kBounceMap")); } else if( $attr == "frictionMap"){ $label = (uiRes("m_AEnClothTemplate.kFrictionMap")); } else if( $attr == "stickinessMap"){ $label = (uiRes("m_AEnClothTemplate.kStickinessMap")); } else if( $attr == "collideStrengthMap"){ $label = (uiRes("m_AEnClothTemplate.kCollideStrengthMap")); } else if( $attr == "massMap"){ $label = (uiRes("m_AEnClothTemplate.kMassMap")); } else if( $attr == "dampMap"){ $label = (uiRes("m_AEnClothTemplate.kDampMap")); } else if( $attr == "fieldMagnitudeMap"){ $label = (uiRes("m_AEnClothTemplate.kFieldMagnitudeMap")); } else if( $attr == "stretchMap"){ $label = (uiRes("m_AEnClothTemplate.kStretchMap")); } else if( $attr == "compressionMap"){ $label = (uiRes("m_AEnClothTemplate.kCompressionMap")); } else if( $attr == "bendMap"){ $label = (uiRes("m_AEnClothTemplate.kBendMap")); } else if( $attr == "bendAngleDropoffMap"){ $label = (uiRes("m_AEnClothTemplate.kBendAngleDropoffMap")); } else if( $attr == "restitutionAngleMap"){ $label = (uiRes("m_AEnClothTemplate.kRestitutionAngleMap")); } else if( $attr == "rigidityMap"){ $label = (uiRes("m_AEnClothTemplate.kRigidityMap")); } else if( $attr == "deformMap"){ $label = (uiRes("m_AEnClothTemplate.kDeformMap")); } else if( $attr == "inputAttractMap"){ $label = (uiRes("m_AEnClothTemplate.kInputAttractMap")); } else if( $attr == "restLengthScaleMap"){ $label = (uiRes("m_AEnClothTemplate.kRestLengthScaleMap")); } else if( $attr == "wrinkleMap"){ $label = (uiRes("m_AEnClothTemplate.kWrinkleMap")); } else if( $attr == "liftMap"){ $label = (uiRes("m_AEnClothTemplate.kLiftMap")); } else if( $attr == "dragMap"){ $label = (uiRes("m_AEnClothTemplate.kDragMap")); } else if( $attr == "tangentialDragMap"){ $label = (uiRes("m_AEnClothTemplate.kTangentialDragMap")); } else { error((uiRes("m_AEnClothTemplate.kUnsupportedAttr")) ); return; } // Find out if this is an active node // string $nodeName = `plugNode $attrName`; // A mappable attribute is enabled if the node is either active, or the // attribute is not strictly for active nodes. // if( $createControlGroup ){ // Create the control group // setUITemplate -pst attributeEditorTemplate; attrNavigationControlGrp -label $label -at $attrName -enable true $attr; setUITemplate -ppt; } // enable or disable the navigation group based on the map type // string $baseAttr = `substring $attr 1 (size($attr)-3)`; AEmapTypeCB($nodeName,$baseAttr); } global proc AEnClothMapNew (string $attrName ) // // Description: // This method is called for mappable attributes the first time we // need to create UI for an nCloth. // { AEnClothMapCommon( $attrName, true ); } global proc AEnClothMapReplace (string $attrName ) // // Description: // This method is called for mappable attributes when a new node of the // same type is now being edited. // { AEnClothMapCommon( $attrName, false ); } global proc AEnClothUpdateInputAttract( string $nodeName ) { float $attract = getAttr($nodeName + ".inputMeshAttract"); editorTemplate -dimControl $nodeName "inputAttractDamp" ($attract == 0); editorTemplate -dimControl $nodeName "inputAttractMethod" ($attract == 0); } global proc AEnClothUpdateDisplayThickness( string $nodeName ) { float $dt = getAttr($nodeName + ".displayThickness"); editorTemplate -dimControl $nodeName "displayColor" ($dt == 0); } global proc AEnClothUpdatePressure( string $nodeName ) { float $pm = getAttr($nodeName + ".pressureMethod"); editorTemplate -dimControl $nodeName "pressure" ($pm != 0); editorTemplate -dimControl $nodeName "incompressibility" ($pm == 0); editorTemplate -dimControl $nodeName "pumpRate" ($pm == 0); editorTemplate -dimControl $nodeName "airTightness" ($pm == 0); editorTemplate -dimControl $nodeName "startPressure" ($pm == 0); } global proc AEthicknessMapCB(string $node) { AEmapTypeCB($node,"thickness"); } global proc AEbounceMapCB(string $node) { AEmapTypeCB($node,"bounce"); } global proc AEfrictionMapCB(string $node) { AEmapTypeCB($node,"friction"); } global proc AEstickinessMapCB(string $node) { AEmapTypeCB($node,"stickiness"); } global proc AEcollideStrengthMapCB(string $node) { AEmapTypeCB($node,"collideStrength"); } global proc AEdampMapCB(string $node) { AEmapTypeCB($node,"damp"); } global proc AEmassMapCB(string $node) { AEmapTypeCB($node,"mass"); } global proc AEfieldMagnitudeMapCB(string $node) { AEmapTypeCB($node,"fieldMagnitude"); } global proc AEwrinkleMapCB(string $node) { AEmapTypeCB($node,"wrinkle"); } global proc AEstretchMapCB(string $node) { AEmapTypeCB($node,"stretch"); } global proc AEcompressionMapCB(string $node) { AEmapTypeCB($node,"compression"); } global proc AEbendMapCB(string $node) { AEmapTypeCB($node,"bend"); } global proc AEbendAngleDropoffMapCB(string $node) { AEmapTypeCB($node,"bendAngleDropoff"); } global proc AErestitutionAngleMapCB(string $node) { AEmapTypeCB($node,"restitutionAngle"); } global proc AErigidityMapCB(string $node) { AEmapTypeCB($node,"rigidity"); } global proc AEdeformMapCB(string $node) { AEmapTypeCB($node,"deform"); } global proc AEinputAttractMapCB(string $node) { AEmapTypeCB($node,"inputAttract"); } global proc AErestLengthScaleMapCB(string $node) { AEmapTypeCB($node,"restLengthScale"); } global proc AEliftMapCB(string $node) { AEmapTypeCB($node,"lift"); } global proc AEdragMapCB(string $node) { AEmapTypeCB($node,"drag"); } global proc AEtangentialDragMapCB(string $node) { AEmapTypeCB($node,"tangentialDrag"); } // //========================================================= // Procedure Name: AEnClothTemplate // global proc AEnClothTemplate ( string $nodeName ) { editorTemplate -beginScrollLayout; editorTemplate -label (uiRes("m_AEnClothTemplate.kEnable")) -addControl "isDynamic"; editorTemplate -beginNoOptimize; editorTemplate -beginLayout (uiRes("m_AEnClothTemplate.kCollisions")) -collapse 1; editorTemplate -label (uiRes("m_AEnClothTemplate.kCollide")) -addControl "collide"; editorTemplate -label (uiRes("m_AEnClothTemplate.kSelfCollide")) -addControl "selfCollide"; editorTemplate -label (uiRes("m_AEnClothTemplate.kCollisionFlag")) -addControl "collisionFlag"; editorTemplate -label (uiRes("m_AEnClothTemplate.kSelfCollisionFlag")) -addControl "selfCollisionFlag" "AEnClothDimSelfCol"; editorTemplate -label (uiRes("m_AEnClothTemplate.kCollideStrength")) -addControl "collideStrength"; editorTemplate -label (uiRes("m_AEnClothTemplate.kCollisionLayer")) -addControl "collisionLayer"; editorTemplate -addSeparator; editorTemplate -label (uiRes("m_AEnClothTemplate.kThickness")) -addControl "thickness"; editorTemplate -label (uiRes("m_AEnClothTemplate.kSelfCollideWidthScale")) -addControl "selfCollideWidthScale"; editorTemplate -addSeparator; editorTemplate -label (uiRes("m_AEnClothTemplate.kSolverDisplay")) -addControl "solverDisplay"; editorTemplate -label (uiRes("m_AEnClothTemplate.kDisplayColor")) -addControl "displayColor"; editorTemplate -addSeparator; editorTemplate -label (uiRes("m_AEnClothTemplate.kBounce")) -addControl "bounce"; editorTemplate -label (uiRes("m_AEnClothTemplate.kFriction")) -addControl "friction"; editorTemplate -label (uiRes("m_AEnClothTemplate.kStickiness")) -addControl "stickiness"; editorTemplate -beginLayout (uiRes("m_AEnClothTemplate.kCollisionPropertiesMaps")) -collapse 1; editorTemplate -addControl "collideStrengthMapType" "AEcollideStrengthMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "collideStrengthMap"; editorTemplate -addControl "thicknessMapType" "AEthicknessMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "thicknessMap"; editorTemplate -addControl "bounceMapType" "AEbounceMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "bounceMap"; editorTemplate -addControl "frictionMapType" "AEfrictionMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "frictionMap"; editorTemplate -addControl "stickinessMapType" "AEstickinessMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "stickinessMap"; editorTemplate -endLayout; editorTemplate -endLayout; editorTemplate -beginLayout (uiRes("m_AEnClothTemplate.kDynamicProperties")) -collapse 1; editorTemplate -label (uiRes("m_AEnClothTemplate.kStretchResistance")) -addControl "stretchResistance"; editorTemplate -label (uiRes("m_AEnClothTemplate.kCompressionResistance")) -addControl "compressionResistance"; editorTemplate -label (uiRes("m_AEnClothTemplate.kBendResistance")) -addControl "bendResistance"; editorTemplate -label (uiRes("m_AEnClothTemplate.kBendAngleDropoff")) -addControl "bendAngleDropoff"; editorTemplate -label (uiRes("m_AEnClothTemplate.kShearResistance")) -addControl "shearResistance"; editorTemplate -addSeparator; editorTemplate -label (uiRes("m_AEnClothTemplate.kRestitutionAngle")) -addControl "restitutionAngle"; editorTemplate -label (uiRes("m_AEnClothTemplate.kRestitutionTension")) -addControl "restitutionTension"; editorTemplate -addSeparator; editorTemplate -label (uiRes("m_AEnClothTemplate.kRigidity")) -addControl "rigidity"; editorTemplate -label (uiRes("m_AEnClothTemplate.kDeformResistance")) -addControl "deformResistance"; editorTemplate -label (uiRes("m_AEnClothTemplate.kUsePolygonShells")) -addControl "usePolygonShells"; editorTemplate -label (uiRes("m_AEnClothTemplate.kInputMeshAttract")) -addControl "inputMeshAttract" "AEnClothUpdateInputAttract"; editorTemplate -label (uiRes("m_AEnClothTemplate.kInputAttractMethod")) -addControl "inputAttractMethod"; editorTemplate -label (uiRes("m_AEnClothTemplate.kInputAttractDamp")) -addControl "inputAttractDamp"; editorTemplate -label (uiRes("m_AEnClothTemplate.kInputMotionDrag")) -addControl "inputMotionDrag"; editorTemplate -addSeparator; editorTemplate -label (uiRes("m_AEnClothTemplate.kRestLengthScale")) -addControl "restLengthScale"; editorTemplate -label (uiRes("m_AEnClothTemplate.kBendAngleScale")) -addControl "bendAngleScale"; editorTemplate -addSeparator; editorTemplate -label (uiRes("m_AEnClothTemplate.kMass")) -addControl "pointMass"; editorTemplate -label (uiRes("m_AEnClothTemplate.kLift")) -addControl "lift"; editorTemplate -label (uiRes("m_AEnClothTemplate.kDrag")) -addControl "drag"; editorTemplate -label (uiRes("m_AEnClothTemplate.kTangentialDrag")) -addControl "tangentialDrag"; editorTemplate -label (uiRes("m_AEnClothTemplate.kDamp")) -addControl "damp"; editorTemplate -label (uiRes("m_AEnClothTemplate.kStretchDamp")) -addControl "stretchDamp"; editorTemplate -addSeparator; editorTemplate -label (uiRes("m_AEnClothTemplate.kScalingRelation")) -addControl "scalingRelation"; editorTemplate -label (uiRes("m_AEnClothTemplate.kIgnoreSolverGravity")) -addControl "ignoreSolverGravity"; editorTemplate -label (uiRes("m_AEnClothTemplate.kIgnoreSolverWind")) -addControl "ignoreSolverWind"; editorTemplate -label (uiRes("m_AEnClothTemplate.kLocalForce")) -addControl "localForce"; editorTemplate -label (uiRes("m_AEnClothTemplate.kLocalWind")) -addControl "localWind"; editorTemplate -beginLayout (uiRes("m_AEnClothTemplate.kDynamicPropertiesMaps")) -collapse 1; editorTemplate -addControl "stretchMapType" "AEstretchMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "stretchMap"; editorTemplate -addControl "compressionMapType" "AEcompressionMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "compressionMap"; editorTemplate -addControl "bendMapType" "AEbendMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "bendMap"; editorTemplate -label (uiRes("m_AEnClothTemplate.kBendDropoffType")) -addControl "bendAngleDropoffMapType" "AEbendAngleDropoffMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "bendAngleDropoffMap"; editorTemplate -label (uiRes("m_AEnClothTemplate.kRestitutionType")) -addControl "restitutionAngleMapType" "AErestitutionAngleMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "restitutionAngleMap"; editorTemplate -addSeparator; editorTemplate -addControl "rigidityMapType" "AErigidityMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "rigidityMap"; editorTemplate -addControl "deformMapType" "AEdeformMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "deformMap"; editorTemplate -addControl "inputAttractMapType" "AEinputAttractMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "inputAttractMap"; editorTemplate -addSeparator; editorTemplate -label (uiRes("m_AEnClothTemplate.kRestLengthType")) -addControl "restLengthScaleMapType" "AErestLengthScaleMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "restLengthScaleMap"; editorTemplate -addSeparator; editorTemplate -addControl "dampMapType" "AEdampMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "dampMap"; editorTemplate -addControl "massMapType" "AEmassMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "massMap"; editorTemplate -addControl "liftMapType" "AEliftMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "liftMap"; editorTemplate -addControl "dragMapType" "AEdragMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "dragMap"; editorTemplate -addControl "tangentialDragMapType" "AEtangentialDragMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "tangentialDragMap"; editorTemplate -addControl "wrinkleMapType" "AEwrinkleMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "wrinkleMap"; editorTemplate -label (uiRes("m_AEnClothTemplate.kWrinkleMapScale")) -addControl "wrinkleMapScale"; editorTemplate -endLayout; editorTemplate -endLayout; editorTemplate -beginLayout (uiRes("m_AEnClothTemplate.kForceFieldGeneration")) -collapse 1; editorTemplate -label (uiRes("m_AEnClothTemplate.kForceField")) -addControl "forceField" "AEnClothDimForce"; editorTemplate -label (uiRes("m_AEnClothTemplate.kFieldMagnitude")) -addControl "fieldMagnitude"; editorTemplate -label (uiRes("m_AEnClothTemplate.kFieldDistance")) -addControl "fieldDistance"; AEaddRampControl ($nodeName+".fieldScale"); // The point field is minimally useful on the cloth node it is not presented in the attribute editor currently //editorTemplate -label _L10N( kPointForceField, "Point Force Field" ) -addControl "pointForceField" "AEnClothDimPointForce"; //editorTemplate -label _L10N( kPointFieldMagnitude, "Point Field Magnitude" ) -addControl "pointFieldMagnitude"; //editorTemplate -label _L10N( kSelfAttract, "Self Attract" ) -addControl "selfAttract"; //editorTemplate -label _L10N( kPointFieldDistance, "Point Field Distance" ) -addControl "pointFieldDistance"; //AEaddRampControl ($nodeName+".pointFieldDropoff"); editorTemplate -beginLayout (uiRes("m_AEnClothTemplate.kForceFieldMaps")) -collapse 1; editorTemplate -addControl "fieldMagnitudeMapType" "AEfieldMagnitudeMapCB"; editorTemplate -callCustom "AEnClothMapNew" "AEnClothMapReplace" "fieldMagnitudeMap"; editorTemplate -endLayout; editorTemplate -endLayout; editorTemplate -beginLayout (uiRes("m_AEnClothTemplate.kWindFieldGeneration")) -collapse 1; editorTemplate -label (uiRes("m_AEnClothTemplate.kAirPushDistance")) -addControl "airPushDistance"; editorTemplate -label (uiRes("m_AEnClothTemplate.kAirPushVorticity")) -addControl "airPushVorticity"; editorTemplate -label (uiRes("m_AEnClothTemplate.kShadowDropoff")) -addControl "windShadowDistance"; editorTemplate -label (uiRes("m_AEnClothTemplate.kShadowDiffusion")) -addControl "windShadowDiffusion"; editorTemplate -label (uiRes("m_AEnClothTemplate.kSelfShadow")) -addControl "windSelfShadow"; editorTemplate -endLayout; editorTemplate -beginLayout (uiRes("m_AEnClothTemplate.kPressureSettings")) -collapse 1; editorTemplate -label (uiRes("m_AEnClothTemplate.kPressureMethod")) -addControl "pressureMethod" "AEnClothUpdatePressure"; editorTemplate -label (uiRes("m_AEnClothTemplate.kPressure")) -addControl "pressure"; editorTemplate -label (uiRes("m_AEnClothTemplate.kPressureDamping")) -addControl "pressureDamping"; editorTemplate -label (uiRes("m_AEnClothTemplate.kStartPressure")) -addControl "startPressure"; editorTemplate -label (uiRes("m_AEnClothTemplate.kPumpRate")) -addControl "pumpRate"; editorTemplate -label (uiRes("m_AEnClothTemplate.kAirTightness")) -addControl "airTightness"; editorTemplate -label (uiRes("m_AEnClothTemplate.kIncompressibility")) -addControl "incompressibility"; editorTemplate -label (uiRes("m_AEnClothTemplate.kSealHoles")) -addControl "sealHoles"; editorTemplate -endLayout; editorTemplate -beginLayout (uiRes("m_AEnClothTemplate.kQualitySettings")) -collapse 1; editorTemplate -label (uiRes("m_AEnClothTemplate.kMaxIterations")) -addControl "maxIterations"; editorTemplate -label (uiRes("m_AEnClothTemplate.kMaxSelfCollisionIterations")) -addControl "maxSelfCollisionIterations"; editorTemplate -label (uiRes("m_AEnClothTemplate.kCollideLastThreshold")) -addControl "collideLastThreshold"; editorTemplate -addSeparator; editorTemplate -label (uiRes("m_AEnClothTemplate.kAddCrossLinks")) -addControl "addCrossLinks"; editorTemplate -label (uiRes("m_AEnClothTemplate.kEvaluationOrder")) -addControl "evaluationOrder"; editorTemplate -label (uiRes("m_AEnClothTemplate.kBendSolver")) -addControl "bendSolver"; //editorTemplate -suppress "bendSolver"; editorTemplate -label (uiRes("m_AEnClothTemplate.kSortLinks")) -addControl "sortLinks"; editorTemplate -addSeparator; editorTemplate -label (uiRes("m_AEnClothTemplate.kTrappedCheck")) -addControl "trappedCheck"; editorTemplate -label (uiRes("m_AEnClothTemplate.kSelfTrappedCheck")) -addControl "selfTrappedCheck"; editorTemplate -label (uiRes("m_AEnClothTemplate.kPushOut")) -addControl "pushOut"; editorTemplate -label (uiRes("m_AEnClothTemplate.kPushOutRadius")) -addControl "pushOutRadius"; editorTemplate -label (uiRes("m_AEnClothTemplate.kCrossoverPush")) -addControl "crossoverPush"; editorTemplate -label (uiRes("m_AEnClothTemplate.kSelfCrossoverPush")) -addControl "selfCrossoverPush"; editorTemplate -suppress "numSubdivisions"; editorTemplate -suppress "pointCollideCore"; editorTemplate -suppress "dampMap"; editorTemplate -suppress "thicknessPerVertex"; editorTemplate -suppress "bouncePerVertex"; editorTemplate -suppress "frictionPerVertex"; editorTemplate -suppress "stickinessPerVertex"; editorTemplate -suppress "collideStrengthPerVertex"; editorTemplate -suppress "dampPerVertex"; editorTemplate -suppress "massPerVertex"; editorTemplate -suppress "fieldMagnitudePerVertex"; editorTemplate -suppress "stretchPerVertex"; editorTemplate -suppress "compressionPerVertex"; editorTemplate -suppress "bendPerVertex"; editorTemplate -suppress "bendAngleDropoffPerVertex"; editorTemplate -suppress "restitutionAnglePerVertex"; editorTemplate -suppress "rigidityPerVertex"; editorTemplate -suppress "deformPerVertex"; editorTemplate -suppress "inputAttractPerVertex"; editorTemplate -suppress "restLengthScalePerVertex"; editorTemplate -suppress "liftPerVertex"; editorTemplate -suppress "dragPerVertex"; editorTemplate -suppress "tangentialDragPerVertex"; editorTemplate -suppress "wrinklePerVertex"; editorTemplate -suppress "thicknessMapType"; editorTemplate -suppress "bounceMapType"; editorTemplate -suppress "frictionMapType"; editorTemplate -suppress "stickinessMapType"; editorTemplate -suppress "collideStrengthMapType"; editorTemplate -suppress "massMapType"; editorTemplate -suppress "dampMapType"; editorTemplate -suppress "fieldMagnitudeMapType"; editorTemplate -suppress "stretchMapType"; editorTemplate -suppress "compressionMapType"; editorTemplate -suppress "bendMapType"; editorTemplate -suppress "bendAngleDropoffMapType"; editorTemplate -suppress "restitutionAngleMapType"; editorTemplate -suppress "rigidityMapType"; editorTemplate -suppress "deformMapType"; editorTemplate -suppress "inputAttractMapType"; editorTemplate -suppress "restLengthScaleMapType"; editorTemplate -suppress "liftMapType"; editorTemplate -suppress "dragMapType"; editorTemplate -suppress "tangentialDragMapType"; editorTemplate -suppress "restShapeMesh"; editorTemplate -suppress "localSpaceOutput"; editorTemplate -endNoOptimize; editorTemplate -endLayout; editorTemplate -beginLayout (uiRes("m_AEnClothTemplate.kCaching")) -collapse 1; editorTemplate -label (uiRes("m_AEnClothTemplate.kCacheableAttributes")) -addControl "cacheableAttributes"; editorTemplate -endLayout; editorTemplate -beginLayout (uiRes("m_AEnClothTemplate.kDiagnosticSettings")) -collapse 1; editorTemplate -label (uiRes("m_AEnClothTemplate.kCacheUsedDiagnostic")) -addControl "cacheUsage"; editorTemplate -endLayout; editorTemplate -endLayout; editorTemplate -suppress "active"; editorTemplate -suppress "nextState"; editorTemplate -suppress "collisionMesh"; editorTemplate -suppress "inputMesh"; editorTemplate -suppress "outputMesh"; editorTemplate -suppress "playFromCache"; // Attributes to control time in the solver. editorTemplate -beginLayout (uiRes("m_AEnClothTemplate.kTimeAttributes")) -collapse true; editorTemplate -addControl "startFrame"; editorTemplate -addControl "currentTime"; editorTemplate -endLayout; // mental ray override per shape editorTemplate -suppress mentalRayControls; // particle attributes to suppress // Suppress this attribute until we implement it // later in the Volume Controls stage editorTemplate -suppress "normalizeVelocity"; // Suppress attributes so they don't appear under "Extras." // editorTemplate -suppress "cacheWidth"; editorTemplate -suppress "inheritColor"; editorTemplate -suppress "age"; editorTemplate -suppress "particleId"; editorTemplate -suppress "idQuery"; editorTemplate -suppress "attributeQuery"; editorTemplate -suppress "levelOfDetail"; editorTemplate -suppress "shapeNameMsg"; editorTemplate -suppress "event"; editorTemplate -suppress "eventCount"; editorTemplate -suppress "eventTest"; editorTemplate -suppress "centroid"; editorTemplate -suppress "opacityPP"; editorTemplate -suppress "lifespanPP"; editorTemplate -suppress "rgbPP"; editorTemplate -suppress "goalPP"; editorTemplate -suppress "ageNormalized"; editorTemplate -suppress "expressionsAfterDynamics"; editorTemplate -suppress "seed"; editorTemplate -suppress "useLifespanPP"; editorTemplate -suppress "collisionData"; editorTemplate -suppress "collisionResilience"; editorTemplate -suppress "collisionFriction"; editorTemplate -suppress "traceDepth"; editorTemplate -suppress "goalGeometry"; editorTemplate -suppress "goalActive"; editorTemplate -suppress "goalSmoothness"; editorTemplate -suppress "inputGeometry"; editorTemplate -suppress "inputGeometrySpace"; editorTemplate -suppress "enforceCountFromHistory"; editorTemplate -suppress "targetGeometrySpace"; editorTemplate -suppress "targetGeometryWorldMatrix"; editorTemplate -suppress "goalPP0"; editorTemplate -suppress "goalPPCache"; editorTemplate -suppress "opacityPP0"; editorTemplate -suppress "opacityPPCache"; editorTemplate -suppress "rgbPP0"; editorTemplate -suppress "rgbPPCache"; editorTemplate -suppress "lifespanPP0"; editorTemplate -suppress "lifespanPPCache"; editorTemplate -suppress "input"; editorTemplate -suppress "output"; editorTemplate -suppress "nextId"; editorTemplate -suppress "nextId0"; editorTemplate -suppress "currentSceneTime"; editorTemplate -suppress "lastSceneTime"; editorTemplate -suppress "inputForce"; editorTemplate -suppress "goalWeight"; editorTemplate -suppress "goalStatus"; editorTemplate -suppress "age0"; editorTemplate -suppress "particleId0"; editorTemplate -suppress "mass"; editorTemplate -suppress "eventSeed"; editorTemplate -suppress "eventRandState"; editorTemplate -suppress "eventRandStateX"; editorTemplate -suppress "eventRandStateY"; editorTemplate -suppress "eventRandStateZ"; editorTemplate -suppress "eventCountCache"; editorTemplate -suppress "eventName"; editorTemplate -suppress "eventValid"; editorTemplate -suppress "eventCount"; editorTemplate -suppress "eventEmit"; editorTemplate -suppress "eventSplit"; editorTemplate -suppress "eventDie"; editorTemplate -suppress "eventRandom"; editorTemplate -suppress "eventSpread"; editorTemplate -suppress "eventProc"; editorTemplate -suppress "traceDepthPP"; editorTemplate -suppress "currentTimeSave"; editorTemplate -suppress "useStartupCache"; editorTemplate -suppress "startupCachePath"; editorTemplate -suppress "startupCacheFrame"; // suppress any rendering attributes // editorTemplate -suppress "spriteNumPP"; editorTemplate -suppress "spriteScaleXPP"; editorTemplate -suppress "spriteScaleYPP"; editorTemplate -suppress "spriteTwistPP"; editorTemplate -suppress "radiusPP"; editorTemplate -suppress "incandescencePP"; // suppress the instancing attributes // editorTemplate -suppress "instanceData"; editorTemplate -suppress "instanceAttributeMapping"; editorTemplate -suppress "instancePointData"; // suppress the sprite attributes // editorTemplate -suppress "__ApplySprite__"; editorTemplate -suppress "startIndexPP"; editorTemplate -suppress "spriteNumRamp"; editorTemplate -suppress "spriteNumRampU"; editorTemplate -suppress "worldVelocityInObjectSpace"; // suppress pointfield attributes editorTemplate -suppress "pointForceField"; editorTemplate -suppress "pointFieldMagnitude"; editorTemplate -suppress "selfAttract"; editorTemplate -suppress "pointFieldDistance"; editorTemplate -suppress "pointFieldDropoff"; // include/call base class/node attributes // actually these are now in the particle shape // AEdynObjectInclude $nodeName; // Suppress the dynamic attributes for the fireworks clip effect, // as the appropriate ones will be put in a special layout. // editorTemplate -suppress "_fireworksRocket"; editorTemplate -suppress "fireworksColors"; editorTemplate -suppress "rocketTrailColors"; editorTemplate -suppress "launchPositionManipMessage"; editorTemplate -suppress "burstPositionManipMessage"; editorTemplate -suppress "minSparksCount"; editorTemplate -suppress "maxSparksCount"; editorTemplate -suppress "sparksColorSpread"; editorTemplate -suppress "maxBurstSpeed"; editorTemplate -suppress "rocketGravity"; editorTemplate -suppress "launchPositionPP"; editorTemplate -suppress "burstPositionPP"; editorTemplate -suppress "launchFramePP"; editorTemplate -suppress "burstFramePP"; editorTemplate -suppress "initialVelocity"; editorTemplate -suppress "launched"; editorTemplate -suppress "hasBurst"; editorTemplate -suppress "colorPaletteProc"; editorTemplate -suppress "spin"; editorTemplate -suppress "showAllBurstPositions"; editorTemplate -suppress "showAllLaunchPositions"; editorTemplate -suppress "localGravX"; editorTemplate -suppress "localGravY"; editorTemplate -suppress "localGravZ"; editorTemplate -suppress "burstColorIndex"; editorTemplate -suppress "explodeChance"; editorTemplate -suppress "displayGeometry"; editorTemplate -suppress "spinSpeed"; editorTemplate -suppress "spinSpread"; editorTemplate -suppress "rocketsMessage"; editorTemplate -suppress "deformedPosition"; // more particle attrs to suppress - those that were not pre-suppressed for us editorTemplate -suppress "position"; editorTemplate -suppress "velocity"; editorTemplate -suppress "acceleration"; editorTemplate -suppress "dieOnEmissionVolumeExit"; editorTemplate -suppress "lifespan"; editorTemplate -suppress "lifespanMode"; editorTemplate -suppress "lifespanRandom"; editorTemplate -suppress "dynamicsWeight"; editorTemplate -suppress "forcesInWorld"; editorTemplate -suppress "conserve"; editorTemplate -suppress "emissionInWorld"; editorTemplate -suppress "maxCount"; editorTemplate -suppress "inheritFactor"; editorTemplate -suppress "cacheData"; editorTemplate -suppress "depthSort"; editorTemplate -suppress "particleRenderType"; AEshapeTemplate $nodeName; // suppress all the surface and geometry shape attrs editorTemplate -suppress "ignoreSelfShadowing"; editorTemplate -suppress "controlPoints"; editorTemplate -suppress "weights"; editorTemplate -suppress "tweak"; editorTemplate -suppress "relativeTweak"; editorTemplate -suppress "currentUVSet"; editorTemplate -suppress "uvSet"; editorTemplate -suppress "compInstObjGroups"; editorTemplate -suppress "smoothShading"; editorTemplate -suppress "castsShadows"; editorTemplate -suppress "receiveShadows"; editorTemplate -suppress "motionBlur"; editorTemplate -suppress "primaryVisibility"; editorTemplate -suppress "visibleInReflections"; editorTemplate -suppress "visibleInRefractions"; editorTemplate -suppress "doubleSided"; editorTemplate -suppress "opposite"; editorTemplate -suppress "geometryAntialiasingOverride"; editorTemplate -suppress "antialiasingLevel"; editorTemplate -suppress "shadingSamplesOverride"; editorTemplate -suppress "shadingSamples"; editorTemplate -suppress "maxShadingSamples"; editorTemplate -suppress "volumeSamplesOverride"; editorTemplate -suppress "volumeSamples"; editorTemplate -suppress "depthJitter"; editorTemplate -suppress "maxVisibilitySamplesOverride"; editorTemplate -suppress "maxVisibilitySamples"; editorTemplate -suppress "boundingBoxScale"; editorTemplate -suppress "featureDisplacement"; editorTemplate -suppress "initialSampleRate"; editorTemplate -suppress "extraSampleRate"; editorTemplate -suppress "textureThreshold"; editorTemplate -suppress "normalThreshold"; editorTemplate -suppress "displayImmediate"; editorTemplate -addExtraControls; // non-storable attrs which will go away next after Beta2 editorTemplate -suppress "numStretchIter"; editorTemplate -suppress "maxStretchIter"; editorTemplate -suppress "stretchSubcycles"; editorTemplate -suppress "linksTension"; editorTemplate -suppress "selfCrossoverCheck"; editorTemplate -suppress "newStretchModel"; editorTemplate -suppress "selfCollisionThicknessScale"; editorTemplate -suppress "pressureStrength"; editorTemplate -suppress "betterVolumeConserve"; editorTemplate -suppress "maxPressureIter"; editorTemplate -suppress "dragOffset"; editorTemplate -suppress "gravity"; editorTemplate -suppress "gravityDirection"; editorTemplate -suppress "windSpeed"; editorTemplate -suppress "windDirection"; editorTemplate -suppress "numBendIter"; editorTemplate -suppress "numShearIter"; editorTemplate -suppress "numRigidityIterations"; editorTemplate -suppress "solverOverride"; editorTemplate -suppress "collisionDrag"; editorTemplate -suppress "numDampingIterations"; editorTemplate -suppress "numSelfCollisionSubcycles"; editorTemplate -suppress "numSelfCollisionIterations"; editorTemplate -suppress "sphereTree"; editorTemplate -suppress "displayThickness"; editorTemplate -endScrollLayout; }