three.js学习点滴(2)— 模型导入

three.js没有像mmcmm这样的单位,为了和three.js的大部分插件代码的参数一致 ,本人以cm为最小单位在3dmax中建模

3Dmax中设置 :

一、单位问题: 最小单位为cm  , 以现实实际大小建模 ,如人物高度:1.8m。

二、以原点为模型基准点:

三、中文问题:材质球名称、贴图名称、贴图路径不能有中文。

四、导出模型为obj格式、并保留.mtl, 即导出文件有两个如(floor.obj , floor.mtl),所有导出模型名称有意义,不能包含中文。

导出模型参数设置, 这里个人建议使用 Triangles三角面

OBJ转换成Json格式数据:(以cube.obj为例:)

将模型cube.obj 和 cube.mtl两个文件放到同一个文件中,运行cmd,并cd到该文件目录下,用Python(Python安装2.x的不要安装3.x的) 调用convert_obj_three.py 进行格式转换:

如图:

转换程序 convert_obj_three.py  在github上可以下载 ,three.js源码和例子和.doc 托管在 :https://github.com/mrdoob/three.js/ 上

三、将模型导入场景:

代码如下所示:

loader = new THREE.JSONLoader(); 
	var callbackCube= function( geometry, materials ) {
		var cube = new THREE.Mesh( geometry, new THREE.MeshBasicMaterial({color : 0xff0000}) );
		cube.position.set( 0, 0, 0 ); 
		cube.scale.set( 1, 1, 1 );
		cube.name = 'cube';
		scene.add( cube );
	};
	loader.load( cubeModelPath, callbackCube );


three.js还支持其他格式的导入,如.Obj,  .STL 等,详情查看 :http://threejs.org/examples/

以下是截图 :


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值