コード例 #1
0
        // ------------------
        public void Add(
            AxisBinding binding,
            InputRig.InputSource sourceType,
            string name,
            string menuPath,
            Object undoObject)
        {
            if ((this.typeMask & BindingDescription.BindingType.Axis) == 0)
            {
                return;
            }

            if ((this.axisInputSourceMask & (1 << (int)sourceType)) == 0)
            {
                return;
            }

            string nameFormatted = ((this.menuNameFormatter != null) ? this.menuNameFormatter(binding, name) : name);

            BindingDescription desc = new BindingDescription();

            desc.type          = BindingDescription.BindingType.Axis;
            desc.axisSource    = sourceType;
            desc.name          = name;
            desc.nameFormatted = nameFormatted;
            desc.menuPath      = menuPath;
            desc.undoObject    = undoObject;
            desc.binding       = binding;

            this.Add(desc);
        }
コード例 #2
0
        // ------------------
        public AxisBindingInspector(/*Editor editor, */ Object undoObject, GUIContent labelContent, bool allowAxisSeparation, InputRig.InputSource inputSource,
                                    System.Action customExtraGUI = null)
        {
            this.labelContent        = labelContent;
            this.allowAxisSeparation = allowAxisSeparation;
            this.undoObject          = undoObject;
            this.inputSource         = inputSource;

            this.customExtraGUI = customExtraGUI;
        }
コード例 #3
0
        // ---------------------
        public void SyncFloat(float val, InputRig.InputSource source, InputRig rig)
        {
            if ((rig == null) || !this.enabled)
            {
                return;
            }

            for (int i = 0; i < this.targetList.Count; ++i)
            {
                this.targetList[i].SyncFloat(val, source, rig);
            }
        }
コード例 #4
0
        // ------------------
        public void ChangeInputSource(InputRig.InputSource source)
        {
            if (this.targetElemInspList != null)
            {
                for (int i = 0; i < this.targetElemInspList.Count; ++i)
                {
                    this.targetElemInspList[i].SetInputSource(source);
                }
            }

            this.inputSource = source;
        }
コード例 #5
0
 // ---------------------
 public void SyncFloat(float val, InputRig.InputSource source, InputRig rig)
 {
     if (this.separateAxes)
     {
         if (val >= 0)
         {
             rig.SetAxis(this.positiveAxis, ref this.positiveAxisId, (this.positiveAxisAsPositive ? val : -val), source);
         }
         else
         {
             rig.SetAxis(this.negativeAxis, ref this.negativeAxisId, (this.negativeAxisAsPositive ? -val : val), source);
         }
     }
     else
     {
         rig.SetAxis(this.singleAxis, ref this.singleAxisId, (this.reverseSingleAxis ? -val : val), source);
     }
 }
コード例 #6
0
 // -----------------
 public void ChangeInputSource(InputRig.InputSource inputSource)
 {
     this.inputSource = inputSource;
 }
コード例 #7
0
 // -----------------
 public RigAxisNameDrawer(InputRig.InputSource inputSource)
 {
     this.inputSource      = inputSource;
     this.menuSelectedName = null;
 }
コード例 #8
0
 // ---------------------
 public void SetInputSource(InputRig.InputSource source)
 {
     this.singleAxisField.ChangeInputSource(source);
     this.positiveAxisField.ChangeInputSource(source);
     this.negativeAxisField.ChangeInputSource(source);
 }