【问题标题】:Change Unity terrain resolution without losing the terrain在不丢失地形的情况下更改 Unity 地形分辨率
【发布时间】:2016-03-24 22:33:44
【问题描述】:

我在 Unity 中有一个非常复杂的地形,到处都是树木、草、花等。

当我运行游戏时,帧率非常低,可能是 1 到 3 fps。

我读到一些地方说地形分辨率可能是问题,因为我把它调高了。

当我尝试降低地形分辨率时,统一会擦除整个地形,这很糟糕,因为我可以花两个月的时间重新制作它。

有人知道在不丢失整个地形的情况下更改地形分辨率和其他地形参数的方法吗?

也许unity资产商店中有一个脚本可以导出地形并降低分辨率,然后重新导入,或者类似的东西?

有人知道执行此操作的脚本或方法吗?我没有时间自己开发脚本,也没有花费大量时间。

【问题讨论】:

  • 我知道这太宽泛但可能值得一提:您可以在编辑器脚本中使用Terrain.activeTerrain.terrainData.GetHeights() 将数据保存在文件或其他东西中。然后更改地形的分辨率并使用Terrain.activeTerrain.terrainData.SetHeights() 并使用保存文件中的所有其他值或介于两者之间的其他值...

标签: unity3d


【解决方案1】:

我知道您可以做的一件事是降低您用于地形、草地或树木的纹理的分辨率。

【讨论】:

    【解决方案2】:

    您正在尝试做的事情非常复杂,并且会花费大量时间。获得更高 FPS 的另一种方法是选择所有非移动对象,或者只选择 prefabs 文件夹中的 prefab,然后检查检查器右上角的 Static。这将提高您的 FPS,但如果您有昼夜循环,则应通过按检查器中静态按钮旁边的向下箭头来取消选中 Lightmap Static。

    【讨论】:

    • 这不是问题
    猜你喜欢
    • 2011-09-24
    • 1970-01-01
    • 1970-01-01
    • 2022-12-12
    • 1970-01-01
    • 1970-01-01
    • 2023-01-15
    • 2014-05-31
    • 2014-12-30
    相关资源
    最近更新 更多