我在Unreal中工作,但这确实是一个关于一般的过程式网格的问题。

我正在处理一个在运行时生成的网格(一个过程式网格,而不是高度图地形)。我混合了几种地形类型,雪/泥/岩,使用顶点颜色驱动,RGB每种类型加上岩石的透明度。

问题是混合遵循网格。它是基于顶点的,所以在每个三角形上会插值,从雪到岩石的边缘就坐在三角形边缘上,读起来很块状,类似于伪装,尤其是在网格密度不高的地方。放松网格有助于分布,但转变仍然是面向的。

我无法预先烘焙为静态网格+虚拟纹理,因为geometry是在运行时生成的,而不是事先编写的。

那么运行时网格的解决方案是什么?我想到了以下几点:
- 三维平面/世界空间噪声,使混合忽略拓扑结构
- 基于高度或斜率的世界空间混合
- 在运行时设置虚拟纹理
- 直接使用更多三角形

我很好奇,正在处理过程式几何的人们实际上使用了什么。顶点颜色的路线显然遇到了壁障。