Рисование Изометрических игровых миров

Попробуйте:

  1. Очистить проект
  2. Опция + Продукт -> Очистить папку сборки
  3. Удалить эту папку Library / Developer / Xcode / DerivedData / ModuleCache
  4. Найдите папку вашего проекта в Library / Developer / Xcode / DerivedData / и удалите
  5. Перезапустите Xcode
177
задан Timotei 10 December 2017 в 09:30
поделиться

2 ответа

Обновление: исправлено алгоритм рендеринга карты, добавлено больше иллюстраций, изменено форматирование.

Возможно, преимуществом «зигзагообразной» техники отображения тайлов на экране является то, что x и y тайла координаты указаны по вертикальной и горизонтальной осям.

Подход «Рисование ромбом»:

Рисование изометрической карты с использованием «рисования ромбом»,

Image showing the tile width and height

Использование размеров изображения будет работать, если размеры изображения и размеры плитки совпадают. В противном случае тайловая карта могла бы быть визуализирована с промежутками между тайлами.

495
ответ дан 23 November 2019 в 20:17
поделиться

В любом случае работа будет выполнена. Я предполагаю, что под зигзагом вы имеете в виду что-то вроде этого: (числа - это порядок рендеринга)

..  ..  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. В конце концов, оба метода примерно равны с точки зрения математики, необходимой для определенного уровня эффективности.

10
ответ дан 23 November 2019 в 20:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: