public void Update(IAdaptiveContainer <IFsmInputCommand> commands, int frameInterval, Action <FsmOutput> addOutput, FsmUpdateType updateType, List <FsmInput> limits) { if (_needReset) { _needReset = false; RebindAnimator(addOutput); _posture.Reset(addOutput); _movement.Reset(addOutput); _action.Reset(addOutput); } if ((updateType & FsmUpdateType.ResponseToInput) != 0) { ApplyNewCommand(commands, addOutput, limits); } _posture.Update(commands, frameInterval, addOutput, updateType, limits); _movement.Update(commands, frameInterval, addOutput, updateType, limits); _action.Update(commands, frameInterval, addOutput, updateType, limits); UpdateFullBodySpeedScale(addOutput); }
public void Update(IAdaptiveContainer <IFsmInputCommand> commands, int frameInterval, Action <FsmOutput> addOutput, FsmUpdateType updateType) { if ((_commonUpdateType & updateType) != 0) { _commonFsm.Update(commands, frameInterval, addOutput); } if ((_leanUpdateType & updateType) != 0) { _leanFsm.Update(commands, frameInterval, addOutput); } }
public void Update(IAdaptiveContainer <IFsmInputCommand> commands, int frameInterval, Action <FsmOutput> addOutput, FsmUpdateType updateType) { if ((updateType & _directionUpdateType) != 0) { UpdateDirection(commands, addOutput); } if ((updateType & _movementUpdateType) != 0) { _commonFsm.Update(commands, frameInterval, addOutput); } }
public void Update(IAdaptiveContainer <IFsmInputCommand> commands, int frameInterval, Action <FsmOutput> addOutput, FsmUpdateType updateType, List <FsmInput> limits) { if ((updateType & _commonUpdateType) != 0) { _commonFsm.Update(commands, frameInterval, addOutput); } if ((updateType & _keepUpdateType) != 0) { _keepFsm.Update(commands, frameInterval, addOutput); _transfigurationFsm.Update(commands, frameInterval, addOutput); } }