Хотя вы, возможно, с большим успехом будете спрашивать по https://gamedev.stackexchange.com/ Я попытаюсь представить несколько идей:
Вам следует создать класс Tile
, который может содержать коллекцию сущностей на этой плитке.Кроме того, объекты могут содержать ссылку на плитку, на которой они расположены.
Что касается представления карты, то это зависит от того, как карта будет представлена.Если у вас есть карта фиксированного размера, вы можете использовать 2D-массив (массив будет содержать только ссылки на тайлы, которые могут быть нулевыми, если в данный момент не нужны), в противном случае вы можете использовать карту, индекс которой будет положением тайла.Затем запросите карту для плиток, которые нужно отобразить.
Кроме того, вы можете использовать кэширование и загрузить несколько плиток, которые окружают отображаемую область.Когда плитки находятся вне этой области кэширования и вам нужна память, они могут быть удалены с карты.