Тема: 2,5D
Показать сообщение отдельно
Старый 15.01.2012, 17:12   #10
YellowAfterlife
ПроЭктировщик
 
Аватар для YellowAfterlife
 
Регистрация: 19.02.2011
Сообщений: 134
Написано 81 полезных сообщений
(для 219 пользователей)
Ответ: 2,5D

Сделал пример шести-угольной изометрии (javascript, "онлайн" демка):
http://www.yellow.indieis.me/html5/iso6sided/
Исходный код там же. Демонстрирует определение координат, рисование, и выбор ячейки мышкой.

По-сути, шестиугольная изометрия является сеткой прямоугольников, где каждый второй ряд смещен на половину ячейки вправо. Если "наклон" на ячейках состовляет несколько пикселей, то можно даже не мучаться с определением точки внутри шестиугольника и просто делать выбор "по сетке".

Наиболее интересная часть начинается когда нужно делать нахождение пути по такой шестиугольной карте - реализация алгоритма (лучше всего модифицировать существующий A*) требует перемещения по ячейкам в 6 направлениях, для примера (смещения) это:
+1, 0
+1, -1
0, -1
-1, 0
0, +1
+1, +1
Надеюсь JavaScript достаточно хорошо выступает в роли концепции\псевдокода в данном случае)
__________________

Мой сайт-блог. Игры, обновления, примеры для Haxe, JavaScript(+HTML5), GameMaker, Love2d...
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо YellowAfterlife за это полезное сообщение:
ffinder (16.01.2012), pax (15.01.2012)