正如题目所说,我正在寻找关于如何在一个像Minecraft或Terraria这样的voxel球体行星上设计一个基建系统的建议、想法和游戏例子。

背景:我和我的朋友已经在Godot上工作了3年,目前我们有一个可破坏的平滑voxel行星。由于我们正在实现更多基本功能,这个问题不断地困扰着我们:在我们的行星上如何处理基建。

与平坦游戏世界不同,块网不能清晰地映射到我们的地形上。这会产生几个问题:

- 如何允许玩家在世界不同点上连接两个不同的建筑?
- 如何确保建筑物正确地对齐(建筑物与重力对齐)?
- 如何避免垂直轴上的扭曲?
- 如何将平滑voxel世界与块建筑(美观或碰撞)合并?
- 如何处理大型建筑上的曲率?

当前解决方案:
当前的解决方案是将第一块“锚点”块放置在地形表面上。这个块会与重力对齐,创建自己的坐标系。然后玩家可以放置“正常”块,正常块只能放置在锚点块或后续正常块上。这些块会与锚点块保持相同的方向,形成平坦的墙壁和地板。这个解决方案解决了与地形和垂直扭曲有关的问题,这会在使用一个球体网格时产生。

当前解决方案的问题:
如何连接两个独立的建筑?例如,玩家试图建造一座桥梁横跨河流,先在两侧各建造一座桥梁端,每个端点都有自己的锚点块(这意味着两个端点不一定是平行或平坦的)。玩家如何建造桥梁,使两端都能合并在一起,避免交叉或留下空隙?

反正我也很抱歉,这个解释太长了。如果您有任何建议或想法都非常感谢!