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

Описание

Используйте Transform.Rotate для поворота игровых объектов различными способами. Поворот часто предоставляется как угол Эйлера, а не как кватернион.

Вы можете указать вращение по мировым или локальным осям.

Вращение мировой оси использует систему координат Scene, поэтому, когда вы начинаете вращать GameObject, его x, y , и оси z выровнены с мировыми осями x, y и z. Итак, если вы вращаете куб в мировом пространстве, его оси совпадают с миром. Когда вы выбираете куб в представлении Scene в редакторе Unity, отображаются Gizmos для поворота влево/вправо, вверх/вниз и вперед. /оси обратного вращения. Перемещение этих приспособлений приводит к вращению куба вокруг осей. Если вы отмените выбор, а затем снова выберите куб, оси перезагрузятся в мировом выравнивании.

Локальное вращение использует систему координат самого GameObject. Таким образом, только что созданный куб использует свои оси x, y и z, установленные на нулевое вращение. Вращение куба обновляет оси вращения. Если вы отмените выбор и снова выберите куб, оси будут отображаться в той же ориентации, что и раньше.

Куб не вращается в Local Gizmo Toggle
Куб, повернутый в Local Gizmo Toggle
Куб не вращается в Global Gizmo Toggle
Куб, повернутый в Global Gizmo Toggle

Дополнительную информацию о вращении в Unity см. в разделе Поворот и ориентация в Unity.


Объявление

public void Rotate(Vector3 eulers, Space relativeTo = Space.Self);

Параметры

eulers Поворот, применяемый в углах Эйлера.
relativeTo Определяет, следует ли вращать GameObject локально относительно GameObject или относительно сцены в мировом пространстве.

Описание

Применяет поворот на eulerAngles.z градусов вокруг оси Z, eulerAngles.x градусов вокруг оси X и eulerAngles.y градусов вокруг оси Y (в указанном порядке).

Поворот принимает аргумент Vector3 в качестве угла Эйлера. Второй аргумент — это оси вращения, которые могут быть установлены как локальные оси (Space.Self) или глобальные оси (Space. Мир). Поворот осуществляется на величину Эйлера.


Объявление

public void Rotate(float xAngle, float yAngle, float zAngle, Space relativeTo = Space.Self);

Параметры

relativeTo Определяет, следует ли вращать GameObject либо локально относительно GameObject, либо относительно Scene в мировом пространстве.
xAngle Градусы для поворота GameObject вокруг оси X.
yAngle Градусы для поворота GameObject вокруг оси Y.
zAngle Градусы для поворота GameObject вокруг оси Z.

Описание

Реализация этого метода применяет поворот на zAngle градусов вокруг оси z, xAngle градусов вокруг оси x, и yAngle градусов вокруг оси Y (именно в таком порядке).

Поворот может иметь угол Эйлера, указанный в 3 числах с плавающей запятой для x, y и z.

В примере показаны два куба: один куб использует Space.Self (локальное пространство и оси GameObject ), а другой использует Space.World (пространство и оси по отношению к /Scene/). Они оба сначала повернуты на 90 по оси X, поэтому по умолчанию они не выровнены с мировой осью. Используйте значения xAngle, yAngle и zAngle, отображаемые в инспекторе, чтобы увидеть, как разные значения поворота применяются к обоим кубам. Вы могли заметить, что способ визуального вращения кубов зависит от текущей ориентации и используемого параметра «Пробел». Поэкспериментируйте со значениями, выбирая кубы в представлении сцены, чтобы попытаться понять, как взаимодействуют значения.

using UnityEngine; // Пример Transform.Rotate // // Этот скрипт создает два разных куба: один красный, который вращается с помощью Space.Self; один зеленый, который вращается с помощью Space.World. // Добавьте его на любой GameObject в сцене и нажмите кнопку воспроизведения, чтобы увидеть, как он запускается. Вращение управляется с помощью xAngle, yAngle и zAngle, которые можно изменить в инспекторе. public class ExampleScript : MonoBehaviour { public float xAngle, yAngle, zAngle; private GameObject cube1, cube2; void Awake() { cube1 = GameObject.CreatePrimitive(PrimitiveType.Cube); cube1.transform.position = new Vector3(0.75f, 0.0f, 0.0f); cube1.transform.Rotate(90.0f, 0.0f, 0.0f, Space.Self); cube1.GetComponent<Renderer>().material.color = Color.red; cube1.name = "Self"; cube2 = GameObject.CreatePrimitive(PrimitiveType.Cube); cube2.transform.position = new Vector3(-0.75f, 0.0f, 0.0f); cube2.transform.Rotate(90.0f, 0.0f, 0.0f, Space.World); cube2.GetComponent<Renderer>().material.color = Color.green; cube2.name = "World"; } void Update() { cube1.transform.Rotate(xAngle, yAngle, zAngle, Space.Self); cube2.transform.Rotate(xAngle, yAngle, zAngle, Space.World); } }

Объявление

public void Rotate(Vector3 axis, float angle, Space relativeTo = Space.Self);

Параметры

angle Применяемые градусы вращения.
axis Ось, к которой применяется вращение.
relativeTo Определяет, следует ли вращать GameObject локально относительно GameObject или относительно сцены в мировом пространстве.

Описание

Поворачивает объект вокруг заданной оси на число градусов, определяемое заданным углом.

Поворот имеет ось, угол и локальные или глобальные параметры. Ось вращения может быть в любом направлении.


Объявление

public void Rotate(Vector3 eulers);

Параметры

eulers Поворот, применяемый в углах Эйлера.

Описание

Применяет поворот на eulerAngles.z градусов вокруг оси Z, eulerAngles.x градусов вокруг оси X и eulerAngles.y градусов вокруг оси Y (в указанном порядке).

Вращение происходит относительно локального пространства GameObject (Space.Self).


Объявление

public void Rotate(float xAngle, float yAngle, float zAngle);

Параметры

xAngle Градусы для поворота GameObject вокруг оси X.
yAngle Градусы для поворота GameObject вокруг оси Y.
zAngle Градусы для поворота GameObject вокруг оси Z.

Описание

Реализация этого метода применяет поворот на zAngle градусов вокруг оси z, xAngle градусов вокруг оси x, и yAngle градусов вокруг оси Y (именно в таком порядке).

Вращение происходит относительно локального пространства GameObject (Space.Self).


Объявление

public void Rotate(Vector3 axis, float angle);

Параметры

axis Ось, к которой применяется вращение.
angle Применяемые градусы вращения.

Описание

Поворачивает объект вокруг заданной оси на число градусов, определяемое заданным углом.

Поворот имеет ось, угол и локальные или глобальные параметры. Ось вращения может быть в любом направлении. Вращение происходит относительно локального пространства GameObject (Space.Self).

Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3