2012-01-15 46 views
0

我开始开发2D等距(平铺,roguelike)游戏,我正在集思广益那种数据结构我会用来存储运行时数据像瓷砖和实体,但我不'不想使用二维数组(因为这个世界将是巨大的)。我在这种情况下如何处理渲染?等距游戏数据结构和渲染

+1

这个问题有点过于宽泛,也许你可能想在游戏开发者论坛上提出这个问题:http://gamedev.stackexchange.com/ – Thomas 2012-01-15 11:59:56

回答

1

虽然你可能有更多的成功要求上https://gamedev.stackexchange.com/我会尽力提供一些思路:

您应该创建一个Tile类可能包含对瓷砖实体的集合。此外,实体可能会持有对其位于的图块的引用。

至于地图表示,它取决于如何表示地图。如果您有固定大小的地图,则可以使用2D数组(如果当前不需要,该数组只能包含指向瓦片的链接,否则可以使用索引为瓦片位置的地图)。然后在地图上查询您需要显示的拼贴。

此外,您可能需要使用一些缓存并加载显示区域周围的几个图块。当切片位于缓存区域之外并且您需要内存时,它们可能会从地图中移除。