为多维数据集创建一个地图编辑器

我被告知我应该创建一个地图编辑器,而不是硬编码我的地图的所有网格。 这听起来像一个有趣的项目,从长远来看会让事情变得更容易,但我甚至不知道从哪里开始。 这将是非常简单的,3个立方体types,一个1000×1000网格,并能够堆叠立方体在彼此之上。 将地图导出到我可以在我的游戏中使用的东西将是一个问题。 同时为编辑器创建用户界面将是我完全新的东西。 有没有可以帮助这个的任何链接?

Solutions Collecting From Web of "为多维数据集创建一个地图编辑器"

这是一个相当广泛的问题,但我会尽量给你一些指示。 看看他们对你有没有帮助

导出/导入地图数据

为了能够使用您的地图编辑器创建的地图,您将需要为地图数据定义数据格式 。 确切的格式是不相关的,但它可以像纯文本文件或XML文件一样简单。 你应该创建一个MapSerializer类,它应该具有serializedeserialize serialize的function。

serialize函数应该将地图结构作为参数。 如果您已经将一些地图硬编码到您的游戏中,那么您已经定义了这种表示。 函数的输出应该是序列化的,例如string格式的数据表示。

deserialize方法应该做相反的事情:取序列化的地图数据,例如一个string,并在内部生成你在游戏中使用的表示。

实际编辑器

界面应该使用你的渲染引擎来表示地图的当前状态,控件可以自由地在地图上移动。 您可以使用光线追踪在用户点击的3D世界中find光点。

在地图编辑阶段不需要将多维数据集分成块,在加载/绘制地图时可以这样做。