我目前正在尝试创建一个three.js网格,其中有大量的面(数千),并使用纹理。但是,我的问题是,每个人脸在运行时可能会更改其纹理,因此每个人脸都有可能具有不同的纹理。three.js与许多纹理网格
我尝试使用默认纹理预加载材料数组(对于MeshFaceMaterial),并为每个面分配一个不同的materialIndex,但这会产生很大的滞后。
的研究的位导致here,它说
如果数量是大的(例如每个面可能是潜在地不同),可以考虑不同的解决方案,使用属性/纹理,以驱动不同的每面的外观。
我对着色器是如何工作有点困惑,特别是我甚至不确定如何使用具有属性的纹理。我找不到任何这种在线的例子,因为大多数纹理着色相关的例子,我发现使用制服。
所以我的问题是这样的:有没有一种有效的方式来创建一个大量的纹理网格,可以在运行时改变?如果没有,是否有任何上述属性/纹理想法的例子?
使用单个纹理和改变uv坐标似乎是一个更容易的解决方案,并且工作得很好。谢谢! – Sp3000
很高兴能够提供帮助,在未来,如果我学会了使用Shader来做到这一点的方法,我也会添加。 –