Forces a rigidbody to sleep at least one frame.
A common use is to call this from Awake in order to make a rigidbody sleep at startup. See the Rigidbodies Overview in the manual for more information about Rigidbody sleeping.
using UnityEngine;
public class ExampleScript : MonoBehaviour { private float fallTime; private Rigidbody rbGO; private bool sleeping;
void Start() { rbGO = gameObject.AddComponent<Rigidbody>(); rbGO.mass = 10.0f; Physics.gravity = new Vector3(0, -2.0f, 0); sleeping = false; fallTime = 0.0f; }
void Update() { if (fallTime > 1.0f) { if (sleeping) { rbGO.WakeUp(); Debug.Log("wakeup"); } else { rbGO.Sleep(); Debug.Log("sleep"); }
sleeping = !sleeping;
fallTime = 0.0f; }
fallTime += Time.deltaTime; } }