/// <summary> /// Calibrate size /// </summary> public void Calibrate() { if (DEBUG.enabled) { Debug.Log("Calibrate character..."); } // Calculate offset between characters hip height and actors hip height charactersJoints.pelvis.position -= footOffset; footOffset = (defaultPelvisPosition - charactersJoints.pelvis.position).y * Vector3.up; if (DEBUG.enabled) { Debug.Log("Set Foot Offset to " + footOffset); } // Calculate Body Data if (skeletonBuilder != null) { skeletonBuilder.SetBodyData(actorHeight, actorMass); } if (DEBUG.enabled) { Debug.Log("Set Body Height to " + actorHeight + "cm and Mass to " + actorMass + "kg"); } }
/// <summary> /// ... /// </summary> public void ResetSkeleton() { if (DEBUG.enabled) { Debug.Log("Reset Skeleton..."); } charactersJoints.SetLimbs(this.transform, UseFingers); //charactersJoints.PrintAll(); skeletonBuilder = new SkeletonBuilder(); skeletonBuilder.MarkerPrefix = ActorMarkerPrefix; skeletonBuilder.SetBodyData(actorHeight, actorMass); skeletonBuilder.SolveWithIK = UseIK; skeletonBuilder.UseTrackingMarkers = UseTrackingMarkers; if (markerData != null) { skeleton = skeletonBuilder.SolveSkeleton(markerData); } else { skeleton = new BipedSkeleton(); } if (ScaleMovementToSize) { scale = FindScale(); } else { scale = 0; } }