Atualmente, estou trabalhando em um jogo de PC 3D (escrito em C ++ e DirectX 9.0) e estou tentando encontrar a melhor maneira de armazenar dados de nível na memória.
A ação do jogo acontece embaixo da terra, então sempre há um teto acima do jogador. O chão é bastante acidentado e existem coisas como estalagmites presentes o tempo todo. Os níveis são pequenos e geralmente parecem corredores. Aqui estão as opções que eu consegui encontrar até agora:
Dois mapas de altura armazenados no disco rígido como um bitmap ou um arquivo binário / de texto. Um mapa de altura para o teto (em cima) e outro para o chão.
OU
Uma única malha 3D em algum formato de modelo 3D (por exemplo, .fbx, .x, .obj, o que for).
Como devo abordar o armazenamento de dados em nível? Qual seria a minha melhor opção, em termos de desempenho? Também estou tendo problemas quando se trata de texturizar um nível carregado através de um mapa de altura; o uso de um modelo 3D facilita a texturização.
Obrigado!