unity-game-engine - 如何制作一个像地球一样的地形?

标签 unity-game-engine terrain unity3d-terrain

我想制作一个终点也是起点的地形。所以,就像在地球上一样,你可以继续笔直行走,一段时间后你就会到达你再次开始的地方。

感谢您的帮助!

最佳答案

Unity 的地形系统只能创建方形地形区域。所以不能这样做。

However, you can approximate it ,我将告诉您我是如何在我的项目中取得成功的。

计算出需要多少地形来覆盖“地球”,我们会说它需要 NxN block 地形,我们称之为“图 block ”。

接下来您要做的就是制作 9 个 NxN block ,并将它们排列在 3x3 网格中。将相机放在网格的中心图 block 中,每当相机离开该图 block 时,确定它在其所在图 block 上的位置,然后将其位置更改为中心图 block 上的相应位置。

这将为您提供一个“环形”世界。我发现这是最简单的解决方案,可以让玩家看到世界地图另一个“角落”上的东西,然后进入其中,而不会出现图形问题。

如果世界上还有其他物体,那就会带来一些额外的挑战。您可以开始的一件事是将它们复制 9 倍,并在每个图 block 的相同相对位置开始它们。如果他们只与玩家交互,那应该没问题,只要玩家与 1 交互,其他 8 个就会做 1 所做的事情。

如果地球上的其他居民必须相互交互,您将需要一种方法来弄清楚如何使所有 9 个副本的行为保持一致,但这个问题太宽泛,无法在这里解决。

关于unity-game-engine - 如何制作一个像地球一样的地形?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56227521/

相关文章:

c# - 团结 : Create a texture from Terrain

c# - 参数可以用基类型声明

javascript - Cesium - 使用相机缩放多边形以在放大/缩小时匹配经纬度位置

javascript - 从 Array THREE.js 创建纹理

c++ - 有效地为地形物理提供几何

c# - 地形树实例无法正确设置

c# - Unity,获取 "actual"当前地形?

caching - Unity 3D : Asset Bundles vs. 资源文件夹与 www.Texture

c# - 我想在unity的通用windows平台开发中使用windows运行时API

ios - 适用于 iOS 的统一构建 : Not able to change Bundle Identifier