MeshBasicMaterial颜色调整纹理贴图three.js

5
我正在使用一个MeshBasicMaterial,并已经应用了颜色。
var material = new THREE.MeshBasicMaterial({color: myColor});

在某个时刻,我需要向材质中添加一种纹理。

material.map = new THREE.ImageUtils.loadTexture(...);

这个可以正常工作,但材质的颜色会影响纹理。我意识到可以将材质的颜色改为白色以消除这种影响,但找不到删除材质颜色或更改颜色和纹理混合方式的方法 - 这可能吗?如果可能的话,我想避免创建新材质并进行替换。
在Lee Stemkoski的示例中演示 - 将映射更改为“grass”,然后更改材质颜色。
参考链接:http://threejs.org/docs/scenes/material-browser.html#MeshBasicMaterial

你的原始纹理色调是通过将颜色设置为白色(当你没有设置时的默认颜色)来获得的。 - Mouloud85
1个回答

0

事实上,您可以在事后设置材质的.map,因此您应该能够在事后设置材质的.color

material.color = myColor;

当然,这种新颜色应该是白色,这样你的纹理才能显示出来,而不是黑色。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接