为任意网格生成三平面UV?

时间:2013-09-08 04:02:30

标签: c++ textures normals splat

我有一个3D地形(体素网格,我的“任意网格”)。我知道如何从网格上方“向下”纹理,但是在垂直或陡峭的斜坡上它会被涂抹。

我可以访问每个顶点的法线和位置。我如何生成UV(不使用着色器,因此没有真正的三平面颜色混合),以便纹理不会在陡峭的斜坡上涂抹并与自身很好地相遇(没有尖锐的接缝)?

1 个答案:

答案 0 :(得分:1)

没有着色器,你有点卡住了。三平面通过对uvs使用三个平面投影(每个世界平面一个:XY,YZ和XZ),然后将三个层与正常值pow混合一些值作为系数。

渲染地形有哪些选项,是否可以编辑几何图形?你能用alpha混合进行多次渲染吗?

一切都是着色的,为什么它们无法进入?