Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

CollisionDetectionMode.ContinuousSpeculative

Описание

Включено спекулятивное непрерывное обнаружение столкновений для статических и динамических геометрий

Это режим обнаружения столкновений, который можно использовать как для динамических, так и для кинематических объектов. Как правило, это дешевле, чем в других режимах ПЗС. Он также намного лучше справляется с угловым движением. Однако в некоторых случаях высокоскоростные объекты могут по-прежнему проходить через другие геометрические формы.

//Этот скрипт позволяет вам переключать режим обнаружения столкновений нажатием клавиши пробела и перемещать ваш GameObject. Он также выводит возникающие коллизии на консоль. //Прикрепите этот скрипт к GameObject и убедитесь, что он имеет компонент Rigidbody //Если у него нет компонента Rigidbody, щелкните GameObject, перейдите к его инспектору и щелкните Добавить компонент. Затем перейдите в раздел Физика>Rigidbody. //Создаем еще один GameObject. Убедитесь, что у него есть коллайдер, чтобы вы могли проверить коллизии между ними. using UnityEngine; public class Example : MonoBehaviour { Rigidbody m_Rigidbody; void Start() { //Attach this script to a GameObject. Ensure that it has a Rigidbody component. m_Rigidbody = GetComponent<Rigidbody>(); } void Update() { //Press the space key to switch the collision detection mode if (Input.GetKeyDown(KeyCode.Space)) SwitchCollisionDetectionMode(); } //Switch between the different Collision Detection Modes void SwitchCollisionDetectionMode() { switch (m_Rigidbody.collisionDetectionMode) { //If the current mode is continuous, switch it to continuous dynamic mode case CollisionDetectionMode.Continuous: m_Rigidbody.collisionDetectionMode = CollisionDetectionMode.ContinuousDynamic; break; //If the current mode is continuous dynamic, switch it to continuous speculative case CollisionDetectionMode.ContinuousDynamic: m_Rigidbody.collisionDetectionMode = CollisionDetectionMode.ContinuousSpeculative; break; // If the curren mode is continuous speculative, switch it to discrete mode case CollisionDetectionMode.ContinuousSpeculative: m_Rigidbody.collisionDetectionMode = CollisionDetectionMode.Discrete; break; //If the current mode is discrete, switch it to continuous mode case CollisionDetectionMode.Discrete: m_Rigidbody.collisionDetectionMode = CollisionDetectionMode.Continuous; break; } } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3