holopy3/Assets/Plugins/RootMotion/FinalIK/_DEMOS/FBBIK/Scripts/RagdollUtilityDemo.cs

34 lines
934 B
C#
Raw Permalink Normal View History

2020-12-10 14:25:12 +00:00
using UnityEngine;
using System.Collections;
using RootMotion.FinalIK;
namespace RootMotion.Demos {
// Demonstrating the use of RagdollUtility.cs.
public class RagdollUtilityDemo : MonoBehaviour {
public RagdollUtility ragdollUtility;
public Transform root;
public Rigidbody pelvis;
void OnGUI() {
GUILayout.Label(" Press R to switch to ragdoll. " +
"\n Weigh in one of the FBBIK effectors to make kinematic changes to the ragdoll pose." +
"\n A to blend back to animation");
}
void Update() {
if (Input.GetKeyDown(KeyCode.R)) ragdollUtility.EnableRagdoll();
if (Input.GetKeyDown(KeyCode.A)) {
// Move the root of the character to where the pelvis is without moving the ragdoll
Vector3 toPelvis = pelvis.position - root.position;
root.position += toPelvis;
pelvis.transform.position -= toPelvis;
ragdollUtility.DisableRagdoll();
}
}
}
}