2014-07-26 30 views
0

我正在做一个开放的世界游戏,我想知道是否有一种做地形流的方式(只有当玩家靠近它时才加载地形到内存中)而不使用LoadLevelAdditiveAsync函数。我正在使用免费版本,所以这个功能不适用于我。在团结中的地形流3D

回答

0

你可以做到这一点,并有不同的方式来做到这一点。我认为最简单的方法是使用TerrainStitcher工具来处理接缝,但是绝对不是最具记忆力的方法,那就是在一个具有多个小地形的场景中定义整个关卡。然后,您可以将每个地形下的所有对象都包含在一个单独的变换中,并使用Instantiate在运行时(在另一个场景中)创建/销毁它们。有一些工具可以进一步采用这种方法,如this one

但请记住,一般来说,Unity中的大地形对记忆不友好,会降低您的表现。当使用无尽地形时,在运行前你不需要定义地形,你可以重复使用几个地形对象并简单地重新定位它们,但是如果你先设计它们,除了地形以外,没有太多可以做的事情降低像素错误等地形设置,限制细节和草地。

0

不要忘记,只要你的地形很好地贴在一起,你可以在运行时总是实例化地形预制件。

根据你对它的熟练程度,你也可以在运行时以程序方式创建地形。