three.js将纹理应用于stl网格

时间:2013-04-17 15:58:11

标签: javascript three.js material

我正在加载从Rhino导出的STL。一切正常,但是,当我尝试将简单的纹理应用于网格时,STL对象根本不会渲染。

我缺少什么

代码如下:

var diamondTexture = THREE.ImageUtils.loadTexture('images/diamond.jpg');
...
var loader = new THREE.STLLoader();
loader.addEventListener( 'load', function ( event ) {

    var geometry = event.content;
    stones = new THREE.Mesh( geometry, new THREE.MeshPhongMaterial({color:0x99CC3B, ambient:0x99CC3B, map:diamondTexture}) );

    scene.add( stones );

} );
loader.load( 'models/jwl0020-stones.stl' );

1 个答案:

答案 0 :(得分:1)

您可以尝试geometry.computeTangents()。一旦我添加了我的stl文件就能够有纹理......纹理没有正确“适合”模型,因为没有UV。