使用FlatShading和纹理的three.js平面颜色

时间:2015-08-20 14:45:57

标签: three.js shader

我正在创建一个带有three.js和纹理的地形,我发现了一些草纹,然后应用FlatShading使它看起来很低,但是阴影只修改了它,我仍然看到应用的纹理,我需要每个面部有一个平面颜色而不是纹理,如下图所示:

http://i.ytimg.com/vi/9WFBnc_gPMo/maxresdefault.jpg

Unity使用PolyWorld资源,例如,从具有草纹理的地形,它应用平面着色并使用平面颜色作为纹理(主色?)

1 个答案:

答案 0 :(得分:0)

你看起来想要的效率很低,但实现它的一种方法是确保每个三角形面的所有三个faceVertexUV值都相同:那就是三角形 ABC UV坐标都是,例如(.4,.6),(。4,.6),(。4,.6)

这意味着渲染三角形的所有像素都将具有一个均匀的UV,并且您将始终在三角形上获得相同的纹理颜色(尽管在非常极端的缩短情况下仍会进行一些过滤)