Example #1
0
    public void SetDefaultWeightsSetting3(bool hasRootCopy)
    {
        //set default weights
        CalcWeights();

        //apply weights if biped
        if (combinedbones.ContainsKey("Main"))
        {
            CombinedBone cb = combinedbones["Main"];
            cb.SetPositionWeightRecursive(0.0f);
            cb.SetPositionLockRecursive(false);
            cb.SetRotationWeightRecursive(0.0f);
            cb.SetRotationLockRecursive(false);
            cb.SetScaleWeightRecursive(0.0f);
            cb.SetScaleLockRecursive(false);
        }
        string bonesUp = "Main/Root_M/BackA_M";

        if (hasRootCopy)
        {
            bonesUp = "Main/RootCopy/Root_M/BackA_M";
        }
        if (combinedbones.ContainsKey(bonesUp))
        {
            CombinedBone cb = combinedbones[bonesUp];
            cb.SetPositionWeightRecursive(1.0f);
            cb.SetPositionLockRecursive(true);
            cb.SetRotationWeightRecursive(1.0f);
            cb.SetRotationLockRecursive(false);
            cb.SetScaleWeightRecursive(1.0f);
            cb.SetScaleLockRecursive(false);
        }
    }
Example #2
0
    public override void OnInspectorGUI()
    {
        //base.OnInspectorGUI();

        CombinedBone cb = (CombinedBone)target;


        GUILayout.BeginVertical("Box");

        GUILayout.BeginHorizontal("Box");
        cb.poslock = EditorGUILayout.Toggle("position lock", cb.poslock);
        GUILayout.EndHorizontal();
        if (GUILayout.Button("Apply Position Lock to Childrens"))
        {
            cb.SetPositionLockRecursive(cb.poslock);
        }

        GUILayout.BeginHorizontal("Box");
        cb.posweight = EditorGUILayout.Slider("position weight", cb.posweight, 0.0f, 1.0f);
        GUILayout.EndHorizontal();
        if (GUILayout.Button("Apply Position Weight to Childrens"))
        {
            cb.SetPositionWeightRecursive(cb.posweight);
        }

        GUILayout.BeginHorizontal("Box");
        cb.rotationlock = EditorGUILayout.Toggle("rotation lock", cb.rotationlock);
        GUILayout.EndHorizontal();
        if (GUILayout.Button("Apply Position Lock to Childrens"))
        {
            cb.SetRotationLockRecursive(cb.rotationlock);
        }

        GUILayout.BeginHorizontal("Box");
        cb.rotationweight = EditorGUILayout.Slider("rotation weight", cb.rotationweight, 0.0f, 1.0f);
        GUILayout.EndHorizontal();
        if (GUILayout.Button("Apply Rotation Weight to Childrens"))
        {
            cb.SetRotationWeightRecursive(cb.rotationweight);
        }

        GUILayout.BeginHorizontal("Box");
        cb.scalelock = EditorGUILayout.Toggle("scale lock", cb.scalelock);
        GUILayout.EndHorizontal();
        if (GUILayout.Button("Apply Scale Lock to Childrens"))
        {
            cb.SetScaleLockRecursive(cb.scalelock);
        }

        GUILayout.BeginHorizontal("Box");
        cb.scaleweight = EditorGUILayout.Slider("scale weight", cb.scaleweight, 0.0f, 1.0f);
        GUILayout.EndHorizontal();
        if (GUILayout.Button("Apply Rotation Weight to Childrens"))
        {
            cb.SetScaleWeightRecursive(cb.scaleweight);
        }

        GUILayout.EndVertical();
    }
Example #3
0
 public void SetAll(bool rotationlock, float rotationweight, bool poslock, float posweight)
 {
     if (combinedbones.ContainsKey("Main"))
     {
         CombinedBone cb = combinedbones["Main"];
         cb.SetPositionWeightRecursive(rotationweight);
         cb.SetPositionLockRecursive(rotationlock);
         cb.SetRotationWeightRecursive(posweight);
         cb.SetRotationLockRecursive(poslock);
         cb.SetScaleWeightRecursive(posweight);
         cb.SetScaleLockRecursive(poslock);
     }
 }