Как вращать объект, оставляя оси на прежнем месте?

Общие вопросы о Unity3D

Как вращать объект, оставляя оси на прежнем месте?

Сообщение iNji555 07 фев 2020, 21:54

Есть куб. Есть стрелки на экране для управления вращением: вверх, вниз, влево, вправо.
По нажатию на стрелки куб вращается. Но вращаясь по одной оси, он вращает и свои остальные.
В итоге прокрутив куб на 90гр по Х вверх, нажимаем влево (по Y), а он крутится не влево, а по часовой стрелке(по Z), хотя относительно себя он крутится по Y.

Как сделать, чтобы оси для вращения всегда оставались изначальными? Чтобы нажимая на стрелки управления четко понимать куда он будет крутиться.
iNji555
UNец
 
Сообщения: 15
Зарегистрирован: 07 фев 2020, 21:40

Re: Как вращать объект, оставляя оси на прежнем месте?

Сообщение iNji555 07 фев 2020, 22:29

Нашел ответ у вас же на форуме, но только после создания сообщения. Извиняюзь, но до того долго гуглил и мучил моск, и аж решился зарегаться и написать вопрос.

kube.RotateAround(new Vector3(0,0,0), new Vector3(1f, 0f, 0f), rotSpeed * Time.deltaTime);
iNji555
UNец
 
Сообщения: 15
Зарегистрирован: 07 фев 2020, 21:40

Re: Как вращать объект, оставляя оси на прежнем месте?

Сообщение larcun 08 фев 2020, 11:50

transform.position.rotate = new Vector3(90,transform.position.rotate.y,transform.position.rotate.z);
Аватара пользователя
larcun
UNец
 
Сообщения: 18
Зарегистрирован: 22 ноя 2019, 14:04


Вернуться в Общие вопросы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9