Long ago I recorded a 20m tutorial/explanation about doritos for TDSurvival: https://vimeo.com/68359879
I think it might help you. Let me know if anything is not clear. On Thu, Jul 23, 2015, 2:01 AM Eric Turman <i.anima...@gmail.com> wrote: > I am way too tired to make a clean scene let alone a clean script, but > this python script builds a very simple scene that has a "dorito" deforming > a cloned mesh and being influenced by the driver mesh. The "move" null > functions like a COG and everything plays nice: > > Application.CreatePrim("Sphere", "MeshSurface", "", "") > Application.GetPrim("Null", "", "", "") > Application.SetValue("null.Name", "bottom", "") > Application.Translate("", 0, -4, 0, "siRelative", "siParent", "siObj", > "siXYZ", "", "", "", "", "", "", "", "", "", 0, "") > Application.SetValue("bottom.null.shadow_icon", 2, "") > Application.SetValue("bottom.null.shadow_scaleY", 0, "") > Application.SetValue("bottom.null.primary_icon", 0, "") > Application.SetValue("bottom.null.size", 3, "") > Application.Duplicate("bottom", "", 2, 1, 1, 0, 0, 1, 0, 1, "", "", "", > "", "", "", "", "", "", "", 0) > Application.Translate("", 0, 8, 0, "siRelative", "siParent", "siObj", > "siXYZ", "", "", "", "", "", "", "", "", "", 0, "") > Application.SetValue("bottom1.Name", "top", "") > Application.SelectObj("sphere", "", True) > Application.Clone("", "", 1, 1, 0, 0, 1, 0, 1, "", "", "", "", "", "", "", > "", "", "") > Application.SelectObj("sphere", "", "") > Application.SetValue("sphere.Name", "driver", "") > Application.SelectObj("sphere1", "", "") > Application.SetValue("sphere1.Name", "clone", "") > Application.SelectObj("driver", "", "") > Application.ApplyFlexEnv("driver;bottom,top", "", 2) > Application.GetPrim("Null", "", "", "") > Application.SetValue("null.Name", "clusterConstrainedNull", "") > Application.GetPrim("Null", "", "", "") > Application.SetValue("null.Name", "dorito", "") > Application.SetValue("dorito.null.primary_icon", 0, "") > Application.SetValue("dorito.null.shadow_icon", 8, "") > Application.SetValue("dorito.null.shadow_scaleX", 0, "") > Application.SelectObj("clusterConstrainedNull", "", "") > Application.SelectObj("clone", "", "") > Application.ToggleVisibility("", "", "") > Application.SelectObj("clusterConstrainedNull", "", "") > Application.ApplyCns("ObjectToCluster", "clusterConstrainedNull", > "driver.pnt[19]", "") > Application.SetValue("clusterConstrainedNull.kine.objclscns.tangent", > True, "") > Application.SetValue("clusterConstrainedNull.kine.objclscns.upvct_active", > True, "") > Application.SelectObj("dorito", "", "") > Application.ParentObj("B:clusterConstrainedNull", "dorito") > Application.SelectObj("B:clusterConstrainedNull", "", "") > Application.SelectObj("dorito", "", "") > Application.ResetTransform("", "siObj", "siSRT", "siXYZ") > Application.GetPrim("Null", "", "", "") > Application.SetValue("null.Name", "move", "") > Application.SetValue("move.null.primary_icon", 0, "") > Application.SetValue("move.null.shadow_icon", 2, "") > Application.SetValue("move.null.shadow_scaleY", 0, "") > Application.SetValue("move.null.size", 5, "") > Application.SelectObj("bottom", "", "") > Application.ToggleSelection("top", "", "") > Application.ParentObj("B:move", "bottom,top") > Application.SelectObj("B:move", "", "") > Application.DeselectAll() > Application.SelectObj("bottom", "", "") > Application.SelectObj("bottom,top", "", "") > Application.SetNeutralPose("", "siSRT", "") > Application.SelectObj("move", "", "") > Application.AddProp("Display Property", "", "", "", "") > Application.SetValue("move.display.wirecolorr", 0.381, "") > Application.SetValue("move.display.wirecolorg", 0.381, "") > Application.SetValue("move.display.wirecolorb", 0.381, "") > Application.SetValue("move.display.wirecolorr", 0.76, "") > Application.SetValue("move.display.wirecolorg", 0, "") > Application.SetValue("move.display.wirecolorb", 0, "") > Application.SetValue("move.display.wirecolorr", 0.110376, "") > Application.SetValue("move.display.wirecolorg", 0.756, "") > Application.SetValue("move.display.wirecolorb", 0, "") > Application.GetPrim("Null", "", "", "") > Application.SetValue("null.Name", "noDeform", "") > Application.ApplyCns("Pose", "noDeform", "move", "") > Application.SelectObj("clusterConstrainedNull", "", "") > Application.SelectObj("dorito", "", "") > Application.SelectObj("move", "", True) > Application.SelectObj("driver", "", True) > Application.ToggleVisibility("", "", "") > Application.SelectObj("clone", "", "") > Application.ToggleVisibility("", "", "") > Application.ApplyFlexEnv("clone;noDeform,dorito", "", 2) > Application.SetValue("clone.polymsh.cls.EnvelopWeightCls.Envelope_Weights.autoenvassign.defnbskelobj", > 1, "") > Application.SetValue("clone.polymsh.cls.EnvelopWeightCls.Envelope_Weights.autoenvassign.defnbskelobj", > 2, "") > Application.SelectObj("noDeform", "", "") > Application.CopyPaste("move.kine.global.posz", "", > "noDeform.Static_KineState.posz", 1) > Application.CopyPaste("move.kine.global.posy", "", > "noDeform.Static_KineState.posy", 1) > Application.CopyPaste("move.kine.global.posx", "", > "noDeform.Static_KineState.posx", 1) > Application.CopyPaste("move.kine.global.rotz", "", > "noDeform.Static_KineState.oriz", 1) > Application.CopyPaste("move.kine.global.roty", "", > "noDeform.Static_KineState.oriy", 1) > Application.CopyPaste("move.kine.global.rotx", "", > "noDeform.Static_KineState.orix", 1) > Application.CopyPaste("move.kine.global.sclz", "", > "noDeform.Static_KineState.sclz", 1) > Application.CopyPaste("move.kine.global.scly", "", > "noDeform.Static_KineState.scly", 1) > Application.CopyPaste("move.kine.global.sclx", "", > "noDeform.Static_KineState.sclx", 1) > Application.SelectObj("dorito", "", True) > Application.CopyPaste("clusterConstrainedNull.kine.global.posz", "", > "dorito.Static_KineState.posz", 1) > Application.CopyPaste("clusterConstrainedNull.kine.global.posy", "", > "dorito.Static_KineState.posy", 1) > Application.CopyPaste("clusterConstrainedNull.kine.global.posx", "", > "dorito.Static_KineState.posx", 1) > Application.CopyPaste("clusterConstrainedNull.kine.global.rotz", "", > "dorito.Static_KineState.oriz", 1) > Application.CopyPaste("clusterConstrainedNull.kine.global.roty", "", > "dorito.Static_KineState.oriy", 1) > Application.CopyPaste("clusterConstrainedNull.kine.global.rotx", "", > "dorito.Static_KineState.orix", 1) > Application.CopyPaste("clusterConstrainedNull.kine.global.sclz", "", > "dorito.Static_KineState.sclz", 1) > Application.CopyPaste("clusterConstrainedNull.kine.global.scly", "", > "dorito.Static_KineState.scly", 1) > Application.CopyPaste("clusterConstrainedNull.kine.global.sclx", "", > "dorito.Static_KineState.sclx", 1) > > Cheers, > -=Eric > > -- > > > > > -=T=- >