Unity 6.3
0 онлайн 65 гостей 3 в системе
Вход

Rigidbody.MoveRotation

Declaration

public void MoveRotation(Quaternion rotation);

Параметры

Параметр Описание
ротация Новая ротация для Rigidbody.

Описание

Вращает rigidbody в rotation.

Используйте Rigidbody.MoveRotation для вращения Rigidbody, соответствующего настройкам интерполяции Rigidbody.

Если интерполяция Rigidbody включена на Rigidbody, вызов Rigidbody.MoveRotation приведет к плавному переходу между двумя вращениями в любых промежуточных кадрах, которые будут отображены. Это должно использоваться, если вы хотите непрерывно вращать жесткое тело в каждом FixedUpdate.

Установите Rigidbody.rotation вместо этого, если вы хотите телепортировать жесткое тело от одного вращения к другому, без промежуточных позиций, которые будут отображены.

using UnityEngine;

public class Example : MonoBehaviour { Rigidbody m_Rigidbody; Vector3 m_EulerAngleVelocity;

void Start() { //Fetch the Rigidbody from the GameObject with this script attached m_Rigidbody = GetComponent<Rigidbody>();

//Set the angular velocity of the Rigidbody (rotating around the Y axis, 100 deg/sec) m_EulerAngleVelocity = new Vector3(0, 100, 0); }

void FixedUpdate() { Quaternion deltaRotation = Quaternion.Euler(m_EulerAngleVelocity * Time.fixedDeltaTime); m_Rigidbody.MoveRotation(m_Rigidbody.rotation * deltaRotation); } }