Я хочу заствить куб поворачиватся на 90 градусов каждый раз когда я нажимаю на одну из половин экрана. (С нажатием и определением сторон экрана проблем нет) Куб должен повернутся строго на 90 градусов и после каждого его поворота его позицию нужно признать (0,0,0) но я не могу понять как это реальзовать. На премере этого скриншота, я поверну куб на 90 градусов по оси z и у меня фиолетовый цвет будет на верху. После чего я поверну куб по оси X и у меня должен зеленый цвет встать на место фиолетогого. Но выходит иначе, я вижу такую картину что оси смещаются во время поворота.
if (touch.position.x > Camera.main.scaledPixelWidth/2)
{
Box.transform.Rotate(new Vector3(90, 0, 0), 90f);
}
if (touch.position.x < Camera.main.scaledPixelWidth/2)
{
Box.transform.Rotate(new Vector3(0, 0, -90), 90f);
Если вращение происходит вокруг начала координат, то после поворота на 90 градусов вокруг любой базовой оси куб сместится в другой октант пространства.
Чтобы он оставался в том же положении (но с другой ориентацией), матрицу преобразования нужно модифицировать - смещение на -Size/2
по всем координатам, вращение, обратное смещение.
Edit:
Посмотрел - в unity есть функция
RotateAround(Vector3 point, Vector3 axis, float angle);
point в данном случае середина куба, axis соответственно оси вращения - например, (1,0,0) для вращения вокруг оси, параллельной OX.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
приведите, пожалуйста, пример использования библиотеки workermanВесь интернет испещрен примерами типа helloworld, которых я уже по памяти десяток...
В кастомном обработчике ивента, произвожу запись из одного поля товара в другое, но изображение почему-то не записываетсяКод:
Подскажите, пожалуйста, идеи, как можно сгруппировать такого рода массивы: