.Babylon格式的模型转化为glb模型,并使用ThreeJS加载显示
2024-10-21 03:19:58
问题描述:手里有几个.babylon格式的三维模型,但是没用过babylon,只对ThreeJS熟悉;但是最新的ThreeJS里发现已经没有BabylonLoader的加载器,能查到的暮志未晚提供的例子,应该是因为Three.js版本不一样导致在新的里边不能用(也应该是自己水平不行没能解决这个问题。。。)
那么我想的解决思路是,将.babylon格式的三维模型转换为ThreeJS经常用的格式,查资料发现,Babylon的在线模型查看工具可以导出csv格式模型和glb格式的模型,而ThreeJS支持glb。所以,开搞。。。
大致流程如下:
1、访问地址https://sandbox.babylonjs.com/ ,如下图:
2、点击如上图的右下角箭头按钮,浏览.babylon格式的三维模型存放位置,将模型文件,和贴图文件都选中,点打开
3、如下图所示,可以看到三维模型已经正常展示出来,按照图示操作,可以看到GLTF格式文件的导出按钮,点击“Export to GLB”按钮,可导出.glb格式的三维模型,该模型会带上三维模型的贴图。
4、导出的glb格式模型,就按照官方常规加载方式加载就行了
import * as THREE from '../build/three.module.js'; //import语法声明用于从已导出的模块、脚本中导入函数、对象、指定文件(或模块)的原始值。 import Stats from './jsm/libs/stats.module.js'; import { OrbitControls } from './jsm/controls/OrbitControls.js';
import { FBXLoader } from './jsm/loaders/FBXLoader.js'; //fbx文件的加载库
import { GLTFLoader } from './jsm/loaders/GLTFLoader.js' var loader4 = new GLTFLoader();
loader4.load('models/gltf/scene.glb',function (object4) {
console.log(object4);
scene.add(object4.scene)
object4.scene.position.set(0,-100,0)
});
话说:像Blender、3DMAX等软件应该也是能直接去导入导出不同的格式,还没研究,备注一下
留尾巴,话说最新的ThreeJS真的不支持.babylon格式的模型了?我感觉应该不是,还是研究的不够深入,有知道的人欢迎评论
最新文章
- file_get_contents模仿浏览器头(user_agent)获取数据
- php开发中怎么获取服务端MAC地址?
- crawler
- math方法集合
- Docker,容器,虚拟机和红烧肉
- python之@property
- 【RL-TCPnet网络教程】第15章 RL-TCPnet之创建多个TCP连接
- Linux学习历程——Centos 7 uptime 、free命令
- java编译过程(字节码编译和即时编译)
- Unity3D外包 团队更新一下UE4和Unity3D案例
- postman+jenkins+newman自动化api接口测试
- WebForm母版页
- ( function(){…} )()和( function (){…} () )是两种立即执行函数
- MySQL基准测试(二)--方法
- JobService相关
- word中公式居中编号在最右端
- MySQL基础练习(三)
- P4329 [COCI2006-2007#1] Bond
- JS判断图片上传时文件大小和图片尺寸
- Unity3d-Particle System系统的学习(三)