在Three.js中围绕立方体包裹材料

时间:2013-06-18 17:02:35

标签: javascript canvas 3d three.js cube

我一直关注this tutorial,创建一个带纹理的多维数据集。 问题是,纹理在立方体的每个面上重复。 我想使用一个“包裹”在立方体周围的单一纹理。这可能吗?

// material
var material = new THREE.MeshLambertMaterial({
    map: THREE.ImageUtils.loadTexture('http://www.html5canvastutorials.com/demos/assets/crate.jpg')
});
// this has no effect!
material.wrapAround = true;

// cube
var cube = new THREE.Mesh(new THREE.CubeGeometry(200, 200, 200), material);
cube.overdraw = true;
cube.rotation.x = Math.PI * 0.1;
scene.add(cube);

1 个答案:

答案 0 :(得分:3)

通常,使用THREE.CubeGeometry,您可以:

(1)选择在立方体每侧重复的单个纹理,或者
(2)六面各有一个不同的纹理

您还可以使用重复纹理在每一侧显示的次数。

有关其中每个示例的示例,请查看演示的源代码:

http://stemkoski.github.io/Three.js/Textures.html

http://stemkoski.github.io/Three.js/Texture-Repeat.html

希望这有帮助!