Как повернуть Vector3 в Unity - PullRequest
       1

Как повернуть Vector3 в Unity

0 голосов
/ 30 октября 2018

У меня есть разные векторы ( Vector3 ) V1 и V2 .

Необходимо повернуть V1 , чтобы оно смотрело в направлении V2.normalized .

Некоторые из Quaternion методов класса теперь устарели, поэтому все, что я нашел, устарело.

1 Ответ

0 голосов
/ 30 октября 2018

Предполагая, что V1 и V2 оба направления, вы хотите, чтобы V1 смотрел в том же направлении, что и V2, но сохранил его длину:

V1 = V2.normalized * V1.magnitude; // direction from V2, length from V1

Если вы хотите плавного перехода:

target = V2.normalized * V1.magnitude;
V1 = Vector3.Lerp(V1, target, Time.deltaTime); // this dampens towards the end

Если вы хотите, чтобы V1 было направлением, указывающим на положение V2, тогда я не понимаю, почему вы хотите нормализовать V2. Но в любом случае: Quaternion.LookRotation

V1 = Quaternion.LookRotation(V2 - V1, Vector3.up).eulerAngles;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...