Three.js-导入带有纹理的三维对象
Three.js - Import a 3d object with textures
我有一个从3ds max导出的.obj文件和一个包含材质的.mtl文件。我想用three.js渲染这个对象,但它似乎没有加载纹理。这是我的javascript代码
var texture = THREE.ImageUtils.loadTexture( 'items/m16/m16.jpg' );
var loader = new THREE.OBJLoader();
loader.load( "items/m16/m16.obj", function ( object ) {
for ( var i = 0, l = object.children.length; i < l; i ++ ) {
object.children[ i ].material.map = texture;
}
// object.position.y = -100;
scene.add( object );
} );
以下是.mtl文件的上下文
newmtl Material__25
Ns 10.0000
Ni 1.5000
d 1.0000
Tr 0.0000
Tf 1.0000 1.0000 1.0000
illum 2
Ka 0.5880 0.5880 0.5880
Kd 0.5880 0.5880 0.5880
Ks 0.0000 0.0000 0.0000
Ke 0.0000 0.0000 0.0000
map_Ka m16.jpg
map_Kd m16.jpg
我看不出我错在哪里了。
由于您有一个.mtl文件,因此应该使用OBJMTLLoader。这样,你发布的所有代码都将变成:
var loader = new THREE.OBJMTLLoader();
loader.load( "items/m16/m16.obj", function ( object ) { scene.add( object ); } );
相关文章:
- 通过拖动可以更改三维模型对象在Three.js场景中的位置
- 在哪里可以找到可用的开源三维图表
- 如何在three.js中加载指定文件内容而非路径的三维模型
- 创建三维维度数组
- 如何用javascript创建三维数组我想把数据插入数组中,这有助于我的代码
- 使用三个js加载三维模型示例
- CSS三维旋转;不能在Chrome上使用列布局
- JavaScript交互式三维对象
- 二维对象/将数组关联到三维对象Javascript中
- 使用THRE.js通过坐标自定义三维对象
- 在three.js中勾勒出一个三维对象的轮廓
- 渐进地“;揭示“;Three.js中的一个三维对象--我做得对吗
- 从Blender导出的json对象中操作Three.js中的三维
- 如何在HTML中导入和操作三维对象
- 三js对象三维旋转
- 如何居中和缩放对象三维
- 旋转css三维对象;工作不正常
- Three.js-导入带有纹理的三维对象
- 将相机W.R.T三维对象放置在三个.js中
- Javascript三维数组与对象文字