В настоящее время я работаю над 3D-игрой для ПК (написанной на C ++ и DirectX 9.0) и пытаюсь найти лучший способ хранения данных уровня в памяти.
Действие игры разворачивается под землей, поэтому над игроком всегда есть потолок. Земля довольно ухабистая, и всегда есть такие вещи, как сталагмиты. Уровни небольшого размера и в основном похожи на коридоры. Вот варианты, которые мне удалось найти до сих пор:
Две карты высоты хранятся на жестком диске в виде растрового изображения или двоичного / текстового файла. Одна карта высот для потолка (сверху), другая для земли.
ИЛИ
Единственная трехмерная сетка в некотором формате трехмерной модели (скажем, .fbx, .x, .obj, что угодно).
Как мне приблизиться к уровню хранения данных? Каким будет мой лучший вариант, если говорить о производительности? У меня также есть некоторые проблемы, когда дело доходит до текстурирования уровня, загруженного с помощью карты высот; Использование 3D-модели делает текстурирование на одном дыхании.
Спасибо!