public static Rigidbody AddRigidbodyComponent(GameObject go, glTF_VCAST_vci_Rigidbody rigidbody) { var result = go.GetOrAddComponent <Rigidbody>(); result.mass = rigidbody.mass; result.drag = rigidbody.drag; result.angularDrag = rigidbody.angularDrag; result.useGravity = rigidbody.useGravity; result.isKinematic = rigidbody.isKinematic; result.interpolation = InterpolateString.GetInterpolationFromString(rigidbody.interpolate); result.collisionDetectionMode = CollisionDetectionModeString.GetDetectionModeFromString(rigidbody.collisionDetection); result.constraints = GetConstraints(rigidbody); return(result); }
public static glTF_VCAST_vci_Rigidbody GetglTfRigidbodyFromUnityRigidbody(Rigidbody rigidbody) { var result = new glTF_VCAST_vci_Rigidbody(); result.mass = rigidbody.mass; result.drag = rigidbody.drag; result.angularDrag = rigidbody.angularDrag; result.useGravity = rigidbody.useGravity; result.isKinematic = rigidbody.isKinematic; result.interpolate = InterpolateString.GetStringFromInterpolation(rigidbody.interpolation); result.collisionDetection = CollisionDetectionModeString.GetStringFromCollisionDetectionMode(rigidbody.collisionDetectionMode); result.freezePositionX = rigidbody.constraints.HasFlag(RigidbodyConstraints.FreezePositionX); result.freezePositionY = rigidbody.constraints.HasFlag(RigidbodyConstraints.FreezePositionY); result.freezePositionZ = rigidbody.constraints.HasFlag(RigidbodyConstraints.FreezePositionZ); result.freezeRotationX = rigidbody.constraints.HasFlag(RigidbodyConstraints.FreezeRotationX); result.freezeRotationY = rigidbody.constraints.HasFlag(RigidbodyConstraints.FreezeRotationY); result.freezeRotationZ = rigidbody.constraints.HasFlag(RigidbodyConstraints.FreezeRotationZ); return(result); }