РЕДАКТИРОВАТЬ: Обновлено с итогом обсуждения
Вы можете использовать разреженную статическую матрицу для каждого «чанка» в кеше и курсор для представления текущего окна просмотра.Затем вы можете использовать модуль математики или Quad Tree для доступа к каждому чанку, в зависимости от конкретного варианта использования.
Старый ответ:
Если они расположены на одинаковом расстоянии, они зачем вам нужныхеш вообще?Вы можете просто использовать матрицу объектов с NULL, где это значение по умолчанию, если там ничего не кэшируется.
Поскольку вы используете объекты, массив на самом деле является просто ссылками под капотом, поэтому на пустую область массива не будут влиять нулевые значения.
Если вам действительно это нужночтобы быть бесконечным, вы вкладываете матрицы в Quad Tree и создаете какую-то систему "Chunk".