更改THREE.js中的Collada材质属性,同时保留贴图
基本上,我希望动态更改collada对象的环境光和镜面反射值,同时保持原始纹理。所以我想要这样的东西:更改THREE.js中的Collada材质属性,同时保留贴图,three.js,hierarchy,collada,Three.js,Hierarchy,Collada,基本上,我希望动态更改collada对象的环境光和镜面反射值,同时保持原始纹理。所以我想要这样的东西: var changeMaterial = function(node, ambient, specular) { if (node.material != null) { var material = new THREE.MeshPhongMaterial(); material.clone(node.material); material.
var changeMaterial = function(node, ambient, specular) {
if (node.material != null) {
var material = new THREE.MeshPhongMaterial();
material.clone(node.material);
material.ambient = ambient;
material.specular = specular;
node.material = material;
}
if (node.children) {
for (var i = 0; i < node.children.length; i++) {
setMaterial(node.children[i]);
}
}
}
为什么要创建新材质?只需执行以下操作:
material.specular.set(0x050505)
或material.specular.setRGB(.1.1.1)
<代码>材质.环境通常应与材质.颜色
匹配。
material.map = node.material.map;