Страница 1 из 1

Кантование куба.(Решено)

СообщениеДобавлено: 07 дек 2011, 21:30
Rip
Здравствуйте. Сразу к делу :)
Мне нужно сделать кантование куба, с условиями:
1) Куб не должен проваливаться(своим углом) в пол.
2) Карта сделана из кубов, и куб должен ложится на куб(четко) 1 в 1.
3) Уже по сетке(из кубов) я определяю где лежит куб. Т.е обычный 2мерный массив.
4)Логика, куб стоит на клетке (1,1), затем перемещается за счет кантования в след клетку(1,2).Движение по клеточкам.

Подскажите как бы это сделать? :-?

Re: Кантование куба.

СообщениеДобавлено: 08 дек 2011, 06:41
Order
Сделать точки по центрам ребер куба, и такие же точки на поле на гранях клеток.(на поле из кубов будет проблематично я думаю).

Далее имеем четыре ключевые точки, когда кубик стоит на клетке, при начале движения нужно проверять наличие свободной клетки по направлению движения., если есть свободное место , то есть разрешение на движение, При этом получаем две ключевые точки, шарнир и целевая. шарнир становится центром вращения ГО, поворачиваем пока целевая точка не совпадет с нужной точкой ребра.

Еще вариант. Делаем центры граней куба ключевыми точками. И центры клеток поля. Проверяем наличие свободного места, Двигаем физикой на вращение(экспериментально), далее при завершении движения центрируем на поле кубик.

Re: Кантование куба.

СообщениеДобавлено: 08 дек 2011, 11:51
Rip
Еще вариант. Делаем центры граней куба ключевыми точками. И центры клеток поля. Проверяем наличие свободного места, Двигаем физикой на вращение(экспериментально), далее при завершении движения центрируем на поле кубик.

А физика не лишне? Может анимацией лучше будет?

Re: Кантование куба.

СообщениеДобавлено: 08 дек 2011, 15:41
Rip
Ок, вопрос закрыт. Оказалось все просто :D .
Сделать точки по центрам ребер куба, и такие же точки на поле на гранях клеток.(на поле из кубов будет проблематично я думаю).

Нужна 1 точка(чилд куба), которая будет перемещаться к нужному ребру. Затем меняем парент и чил местами и крутим на 90градусов( и мало ли погрешность, приравнивать к координатам клетки). :ymparty: