【发布时间】:2015-03-06 14:28:48
【问题描述】:
我在 Unity 中生成了一个灰度高度图,我想渲染它。类似于 Unity 中的地形,但不使用地形组件,并且能够经常更改而不会造成太多性能损失。
目前我生成一个网格(在 c# 中),然后在脚本中更改每一帧的顶点。然而,这很慢,并且限制了我的高度图的分辨率(Unity 只允许最多 65000 个顶点的网格)。
所以我想知道,有没有更好的方法来渲染这个高度图?
注意事项:
- 几乎每一帧都会更改高度图。
- 我使用纹理的一个通道(当前为红色通道)来存储高度。
- 分辨率是主要问题,它应该允许 512、1024 及以上。
- 我在 Mac 上使用 Unity5。
非常感谢!
【问题讨论】:
-
我不是专家,但我很确定使用网格而不是高度图无论如何都会降低你的性能。
-
是的。使用“作为网格”,我只是表示几何实际上是移动的。所以不像法线贴图,假装它。我删除了“作为网格”部分,因为它确实可能被误解。
-
您是否需要生成的几何图形在场景中具有重要意义,或者如果它只是视觉效果,是否可以接受?如果是后者,顶点着色器可能能够在 GPU 上处理。
-
目前仅可视化是可以的。然而,它后来成为游戏的一部分。我生成的高度图用于水和地面模拟,类似于 From Dusk。
标签: unity3d