private void UpdateRunPose() { spine.angularVelocity = TSVector.zero; head.angularVelocity = TSVector.zero; pelvis.angularVelocity = TSVector.zero; spine.velocity = TSVector.zero; head.velocity = TSVector.zero; pelvis.velocity = TSVector.zero; head.AddForce(TSVector.up * 300); spine.AddForce(TSVector.up * 300); pelvis.AddForce(TSVector.up * 300); leftLeg.AddForce(TSVector.down * 300); rightLeg.AddForce(TSVector.down * 300); leftFoot.AddForce(TSVector.down * 150); rightFoot.AddForce(TSVector.down * 150); Debug.Log(spine.angularVelocity); Debug.Log(head.angularVelocity); Debug.Log(pelvis.angularVelocity); JitterPhysicsTools.AlignToVector(spine, spine.tsTransform.forward, direction.normalized, 0.001f, 20.0f); JitterPhysicsTools.AlignToVector(head, head.tsTransform.forward, direction.normalized, 0.001f, 20.0f); JitterPhysicsTools.AlignToVector(pelvis, pelvis.tsTransform.forward, direction.normalized, 0.001f, 20.0f); }
// Update is called once per frame void FixedUpdate() { head.AddForce(TSVector.up.ToVector() * 400); spine.AddForce(TSVector.up.ToVector() * 400); pelvis.AddForce(TSVector.up.ToVector() * 400); leftLeg.AddForce(TSVector.down.ToVector() * 400); rightLeg.AddForce(TSVector.down.ToVector() * 400); leftFoot.AddForce(TSVector.down.ToVector() * 200); rightFoot.AddForce(TSVector.down.ToVector() * 200); JitterPhysicsTools.PhyxAlignToVector(spine, spine.transform.forward, pelvis.transform.forward, 0.1f, 6.0f); JitterPhysicsTools.PhyxAlignToVector(head, head.transform.forward, pelvis.transform.forward, 0.1f, 6.0f); }
private void UpdateStandingPose() { JitterPhysicsTools.AlignToVector(spine, spine.tsTransform.forward, direction.normalized, 0.001f, 12.0f); JitterPhysicsTools.AlignToVector(head, head.tsTransform.forward, direction.normalized, 0.001f, 12.0f); JitterPhysicsTools.AlignToVector(pelvis, pelvis.tsTransform.forward, direction.normalized, 0.001f, 12.0f); head.AddForce(TSVector.up * 3000); spine.AddForce(TSVector.up * 3000); pelvis.AddForce(TSVector.up * 3000); leftLeg.AddForce(TSVector.down * 3000); rightLeg.AddForce(TSVector.down * 3000); leftFoot.AddForce(TSVector.down * 1500); rightFoot.AddForce(TSVector.down * 1500); }