Попробуйте:
Обновление: исправлено алгоритм рендеринга карты, добавлено больше иллюстраций, изменено форматирование.
Возможно, преимуществом «зигзагообразной» техники отображения тайлов на экране является то, что x
и y тайла
координаты указаны по вертикальной и горизонтальной осям.
Подход «Рисование ромбом»:
Рисование изометрической карты с использованием «рисования ромбом»,
Использование размеров изображения будет работать, если размеры изображения и размеры плитки совпадают. В противном случае тайловая карта могла бы быть визуализирована с промежутками между тайлами.
В любом случае работа будет выполнена. Я предполагаю, что под зигзагом вы имеете в виду что-то вроде этого: (числа - это порядок рендеринга)
.. .. 01 .. ..
.. 06 02 ..
.. 11 07 03 ..
16 12 08 04
21 17 13 09 05
22 18 14 10
.. 23 19 15 ..
.. 24 20 ..
.. .. 25 .. ..
И под ромбиком вы имеете в виду:
.. .. .. .. ..
01 02 03 04
.. 05 06 07 ..
08 09 10 11
.. 12 13 14 ..
15 16 17 18
.. 19 20 21 ..
22 23 24 25
.. .. .. .. ..
Первый метод требует отрисовки большего количества тайлов, чтобы отображался весь экран, но вы можете легко сделать проверка границ и пропуск любых плиток полностью за пределами экрана. Оба метода потребуют некоторой обработки чисел, чтобы выяснить, где находится плитка 01. В конце концов, оба метода примерно равны с точки зрения математики, необходимой для определенного уровня эффективности.