public override void Enter() { base.Enter(); // _walkCycleLength = 2 * _strideLength.Value; _distanceValue = 0; _walkCyclePercent = 0; _walkSpeedFactor = 0; _walkCycleLength = 2 * _targetStrideLength.Value; _targetStrideLength.Subscribe(() => { _walkCycleLength = 2 * _targetStrideLength.Value; }); _animatable.Animancer.States.GetOrCreate(_move); // _animatable.Animancer.Layers[BaseLayer].SetMask(_locomotionMask); _animatable.Animancer.Layers[BaseLayer].Play(_move, 0.5f, FadeMode.FixedDuration); // Init lean _leanForward = new SpecificLean(_animatable.Animancer.Playable, _leanBones.Select(b => b.Value)); // _leanAngle.Subscribe(() => // { // _lean.Angle = _leanAngle.Value; // }); _leanForwardAxis.Subscribe(() => { _leanForward.Axis = _leanForwardAxis.Value; }); _leanForward.Axis = _leanForwardAxis.Value; _leanSide = new SpecificLean(_animatable.Animancer.Playable, _leanBones.Select(b => b.Value)); // _leanSideAngle.Subscribe(() => // { // _leanSide.Angle = _leanSideAngle.Value; // }); _leanSideAxis.Subscribe(() => { _leanSide.Axis = _leanSideAxis.Value; }); _leanSide.Axis = _leanSideAxis.Value; // Init bob _bob = new TranslateRoot(_animatable.Animancer.Playable, _bobBones.Select(b => b.Value)); // _bobAmplitude.Subscribe(() => // { // _bob.Distance = _bobAmplitude.Value; // }); _bobAxis.Subscribe(() => { _bob.Axis = _bobAxis.Value; }); _bob.Distance = 0 + _bobConstantOffset.Value; _bob.Axis = _bobAxis.Value; // _damping = new Damping(_animatable.Animancer.Playable, _dampingBoneCount.Value, _dampingEndBone.Value); }
public override void Enter() { base.Enter(); _lean = new SpecificLean(_animatable.Animancer.Playable); _angle.Subscribe(() => { _lean.Angle = _angle.Value; }); _axis.Subscribe(() => { _lean.Axis = _axis.Value; }); }
public override void Enter() { base.Enter(); if (SetOnEnter) { UpdateValue(); } if (SetOnUpdate) { Vector.Subscribe(UpdateValue); } }
public override void Enter() { base.Enter(); _previousValues = new LinkedList <Vector3>(); _previousValues.AddFirst(_vector.Value); if (SetOnEnter) { UpdateValue(); } if (SetOnUpdate) { _vector.Subscribe(UpdateValue); } }
private void OnEnable() { _vector.Subscribe(OnVectorChanged); }