我有一个通过挤出png图像创建的网格。我已经提到了代码http://wizgrav.github.io/three.js/runner/。我在网格上使用了THREE.MeshPhongMaterial。我正在使用纹理贴图,但纹理仅应用于网格的正面和背面,而不是侧面。请参阅下面的附图。
两侧呈现出最黑暗的纹理颜色。
我去了threejs.org/editor并添加了一个简单的立方体,并应用了相同纹理的相同THREE.MeshPhongMaterial材质,并将其应用于立方体的所有侧面。但在我的情况下,纹理不会应用在两侧。
代码:
var texture = THREE.ImageUtils.loadTexture('/Content/texture-green.jpg');
var bumpTexture = THREE.ImageUtils.loadTexture('/Content/texture-green-bump.jpg');
var specularTexture = THREE.ImageUtils.loadTexture('/Content/texture-green-specular.jpg');
var material = new THREE.MeshPhongMaterial({
map: texture,
bumpMap: bumpTexture,
bumpScale: 0.03,
specularMap: specularTexture
});
var g = new THREE.CanvasGeometry(canvas, { "height": 0.1, "solid": solid, "offset": window.thr, "steps": (steps ? Math.abs(steps) : 5) });
g.center();
mesh = new THREE.Mesh(g, material);
scene.add(mesh);
那么,几何形成的方式是否存在问题(http://wizgrav.github.io/three.js/runner/CanvasGeometry.js)?或者是否有另一种方法可以在网格的两侧添加纹理?
谢谢。
答案 0 :(得分:1)
我关注this链接,它对我有用。我必须对纹理做一个小的时间才能使它正确。
texture.wrapS = texture.wrapT = THREE.MirroredRepeatWrapping;
texture.offset.set(0.5, 0.5);
希望这也有助于某人。