samana писал(а):Я думаю вам подойдёт метод RotateAround. https://docs.unity3d.com/ScriptReferenc ... round.html
samana писал(а):Да, вокруг любой точки, по любой оси.
А разве обычный поворот не подходит?Синтаксис:Используется csharptransform.Rotate(otherObject.right, 3);
NOVA писал(а):Вращение вокруг точки и оси - это разные вещи.
NOVA писал(а):Если мы вращаем объект вокруг точки, он вращается как попало.
NOVA писал(а):Но юнити вечно выравнивает вращение объектов в глобальные оси.
Надо что-то типа этого, только transform.Rotate
Надо просто в глобальных координатах довернуть объект на угол, между совершенно другими векторами.
samana писал(а):NOVA писал(а):Вращение вокруг точки и оси - это разные вещи.
Но я же не говорил, что это одно и то же.NOVA писал(а):Если мы вращаем объект вокруг точки, он вращается как попало.
Поэтому нужно выбрать как точку, так и ось, чтобы вращалось в нужной точке по нужной оси.NOVA писал(а):Но юнити вечно выравнивает вращение объектов в глобальные оси.
Надо что-то типа этого, только transform.Rotate
Надо просто в глобальных координатах довернуть объект на угол, между совершенно другими векторами.
Что-то я ничего уже не пойму из вашего задания.
samana писал(а): Почему вы используете её, она же идеально подходит.
NOVA писал(а):На счёт Rotate around как-то сомнительно.
NOVA писал(а):Наконец что-то выходит.
Синтаксис:Используется csharpif (SpineBoneDirectionY > 0)
{
SpineBoneRotateY += 0.1f * SpineBoneRotate.y * 4;
}
if (SpineBoneDirectionY < 0)
{
SpineBoneRotateY -= 0.1f * SpineBoneRotate.y * 4;
}
Сейчас этот форум просматривают: GoGo.Ru [Bot] и гости: 31