【发布时间】:2015-08-25 08:25:48
【问题描述】:
我需要一些关于在three.js 中进行纹理处理的帮助。我有多个具有随机宽度/高度的块,我需要对它们应用相同的纹理,但沿整个块重复。正如我从另一个答案中看到的那样,我可以使用以下代码设置纹理重复:
lavaTexture.wrapS = lavaTexture.wrapT = THREE.RepeatWrapping;
lavaTexture.repeat.set( 2, 2 );
但在这种情况下,我应该手动设置纹理将重复多少次。在我的情况下,这意味着如果我想要 100 个随机大小的块 - 我应该创建 200 个纹理(调用 THREE.ImageUtils.loadTexture 200 次)和 200 个材料(MeshFaceMaterial - 因为我应该为每一侧应用具有重复设置的纹理)似乎对性能有不良影响。
那么在three.js中处理这种情况的正确方法是什么?是否有类似auto repeat 的选项,这样我就不必费心计算应该重复多少时间纹理?
【问题讨论】:
标签: three.js