【发布时间】:2014-07-03 05:15:33
【问题描述】:
我在 Three.js 中的模型中添加了一个法线贴图,该贴图在中间镜像。看起来其中一个通道(可能是绿色?)在镜像侧翻转。
我有一个环境灯、一个定向头灯和一个聚光灯。这是我用来制作材料的代码:
// Create a MeshPhongMaterial for the model
var material = new THREE.MeshPhongMaterial();
material.map = THREE.ImageUtils.loadTexture(texture_color);
// Wrapping modes
//THREE.RepeatWrapping = 1000;
//THREE.ClampToEdgeWrapping = 1001;
//THREE.MirroredRepeatWrapping = 1002;
material.map.wrapS = THREE.RepeatWrapping;
material.map.wrapT = THREE.MirroredRepeatWrapping;
if (texture_normal != null) {
material.normalMap = THREE.ImageUtils.loadTexture(texture_normal);
material.normalMap.wrapS = THREE.RepeatWrapping;
material.normalMap.wrapT = THREE.MirroredRepeatWrapping;
}
material.wrapAround = true;
material.morphTargets = true;
material.shininess = 15;
material.specular = new THREE.Color(0.1, 0.1, 0.1);
material.ambient = new THREE.Color(0, 0, 0);
material.alphaTest = 0.5;
var mesh = new THREE.MorphAnimMesh( geometry, material );
// Turn on shadows
mesh.castShadow = true;
if (shadows) {
mesh.receiveShadow = true;
}
scene.add( mesh );
我尝试了material.normalMap.wrapS 和material.normalMap.wrapT 的所有不同组合,但这并没有解决问题(也尝试了漫反射贴图)。我做错了什么?
谢谢!
【问题讨论】:
标签: javascript three.js webgl