Структура данных для roguelike карты

Мне нужна структура данных для карты в мошеннической игре

Каждая ячейка должна содержать массив объектов. Карта будет иметь большие размеры, но содержимое ячейки с указанными координатами должно быть доступно очень быстро. Карта должна быть частично сериализуемой (карта 2kx4k, я хочу читать только плитки от (3,4) до (40,20)).

Лучший вариант, который у меня сейчас есть, это NSMutableDictionary с координатами в качестве ключей и NSMutableSets в качестве заполнителя непустых ячеек. Но я не уверен в скорости очень частой операции: считывание с этой карты части ячеек для рисования на экран. Может быть, я должен хранить указатели для соседних ячеек в каждой ячейке?

Целевая платформа - Objective-C/iOS/Cocos2d

Есть ли какие-либо решения на Objective-C (или, может быть, даже библиотеки для фреймворка Cocos2d) по этому поводу?

1 ответ

Решение

У меня не было бы 1 большой карты 2k*4k, эти размеры слишком велики для мобильных устройств. Просто определите "порталы" между различными картами, которые указывают друг на друга.

Что касается структуры данных, то даже разработчики, работающие на полную ставку, не уверены, это обсуждение должно пролить некоторый свет: ссылка на гугл-группы rgrd

Другие вопросы по тегам