位置: IT常识 - 正文

Three.js基础入门系列(九)--导入3D模型(three.js入门指南)

编辑:rootadmin
Three.js基础入门系列(九)--导入3D模型

推荐整理分享Three.js基础入门系列(九)--导入3D模型(three.js入门指南),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:three. js,three. js,three.js菜鸟教程,three.js bim,three.js 入门,three.js bim,three.js 入门,three.js中文教程,内容如对您有帮助,希望把文章链接给更多的朋友!

先来学习今天的知识——Three.js导入3D模型

复杂的3D模型(比如制作一个飞机模型)一般都是用第三方建模工具生成,然后加载到Three.js中。

01

常用建模制作工具

3Dmax

链接地址:https://www.autodesk.com.cn/products/3ds-max/overview?referrer=%2Fproducts%2F3ds-max%2Foverview

最常见的3D建模软件,广泛应用于广告、影视、工业设计、建筑设计、三维动画、多媒体制作、游戏、辅助教学以及工程可视化等领域。

SketchUp

链接地址:https://www.sketchup.com/zh-CN

SketchUp是一个极受欢迎并且易于使用的3D设计软件,官方网站将它比喻作电子设计中的“铅笔”。它的主要卖点就是使用简便,人人都可以快速上手。

02

常用3D模型素材网站

ketchupbar

链接地址:https://www.sketchupbar.com/default.php

sketchfab

链接地址:https://sketchfab.com/

03

Three.js支持的3D模型格式

Three.js支持的导出格式

Three.js在线编辑器:https://threejs.org/editor/

Three.js支持的全部格式

https://github.com/mrdoob/three.js/tree/dev/examples/js/loaders

04

在Three.js中导出3D模型步骤

1️⃣ 打开 Three.js在线编辑器

 https://threejs.org/editor/

2️⃣ 点击添加按钮,选择将要添加的几何体模型

3️⃣ 设置几何体模型的材质类型和材质颜色

4️⃣ 设置几何体模型的属性(比如:位置、旋转、缩放)

Three.js基础入门系列(九)--导入3D模型(three.js入门指南)

5️⃣ 将3D模型导出(选择导出场景,导出的是一个json格式的文件)

json格式,一般用于Three.js官方的editor导出

05

在Three.js中导入3D模型步骤

1️⃣ 把下载好的json文件放入项目目录中(放入的位置随意)

2️⃣ json文件中的JSON格式指的是Three.js可以将其转换为场景的3D对象的JSON格式模型。这种格式内部一般必有的四项为:

◾ metadata 当前模型的相关信息以及生成的工具信息

◾ geometries 存储当前模型所使用的几何体的数组

◾ materials 存储当前模型所使用的材质的数组

◾ object 当前模型的结构以及标示所应用到的材质和几何体标示

所有的模型网格,几何体和材质都有一个固定的uuid标识符,JSON格式中都是通过uuid作为引用。

3️⃣ 使用ObjectLoader加载JSON模型

既然我们能够导出模型,肯定就可以导入。这里我们将使用到Three.js内置的对象THREE.ObjectLoader来加载模型:

案例截图:

完整代码如下:

注意:只要是通过 loader.load()方法导入,必须要使用VSCode编辑器中的 live-server插件的方式打开页面。

不然会有跨域的问题。

06

glTF格式文件的导出和导入

Three.js官方推荐我们使用的3D模型的格式为glTF,由于glTF专注于传输,因此它的传输和解析的速度都很快。

glTF模型功能包括:网格、材质、纹理、灯光、相机等。

先在VSCode编辑器中安装glTF Tools插件,安装这个插件后我们就能在VSCode编辑器中查看 .gltf的文件效果了

glTF格式的3D格式文件我们可以在sketchfab官网下载,这是一个国外比较知名的模型网站。

sketchfab官网模型下载地址:

https://sketchfab.com/3d-models?date=week&features=downloadable&sort_by=-likeCount

下载其中一个模型,选择gltf格式下载

glTF格式加载器(loader)地址:

https://github.com/mrdoob/three.js/blob/master/examples/js/loaders/GLTFLoader.js

1️⃣ 首先,将GLTFLoader加载器插件引入到页面。

2️⃣ 然后创建一个加载器:

3️⃣ 使用加载器去加载模型,并调节一下模型大小在场景内展示:

注意:以上的scene.gltf文件必须跟3D_gltf在同一个目录中,不能单独把scene.gltf移动到3D_gltf目录的外边。

案例截图:

完整代码如下:

本文链接地址:https://www.jiuchutong.com/zhishi/290808.html 转载请保留说明!

上一篇:日落时分的阿萨巴斯卡瀑布,加拿大 (© Robert Postma/Getty Images)(日落时分谭咏麟歌词)

下一篇:使用“Opencv“时遇到terminate called after throwing an instance of ‘cv::Exception‘问题的解决方案(opencv如何使用)

  • 苹果nfc地铁卡怎么开通(苹果nfc地铁卡怎么开通重庆)

    苹果nfc地铁卡怎么开通(苹果nfc地铁卡怎么开通重庆)

  • teamviewer无法建立连接请检查您的互联网(teamviewer无法建立连接原因未知)

    teamviewer无法建立连接请检查您的互联网(teamviewer无法建立连接原因未知)

  • 解除京东不能领券限制(解除京东不能领优惠券)

    解除京东不能领券限制(解除京东不能领优惠券)

  • 手机营业厅的通话记录怎么删除(手机营业厅的通话记录怎么导出打印?)

    手机营业厅的通话记录怎么删除(手机营业厅的通话记录怎么导出打印?)

  • mate30指纹解锁不灵敏(mate30指纹解锁不灵敏需要更换屏幕吗)

    mate30指纹解锁不灵敏(mate30指纹解锁不灵敏需要更换屏幕吗)

  • 为什么快手登录显示无法连接网络(为什么快手登录要人脸识别)

    为什么快手登录显示无法连接网络(为什么快手登录要人脸识别)

  • 注销微信号后原来的好友还有吗(注销微信号后原来的账号)

    注销微信号后原来的好友还有吗(注销微信号后原来的账号)

  • 闲鱼可以两个手机同时登录吗(闲鱼两个手机登录同一个账号会有影响吗?)

    闲鱼可以两个手机同时登录吗(闲鱼两个手机登录同一个账号会有影响吗?)

  • 一个手机号只能申请一个健康码吗(一个手机号只能注册一个微博吗)

    一个手机号只能申请一个健康码吗(一个手机号只能注册一个微博吗)

  • 手机充满电关机能维持多久(手机充满电关机后再开机就没电了)

    手机充满电关机能维持多久(手机充满电关机后再开机就没电了)

  • 快手打不开是什么原因(快手打不开是什么原因造成的)

    快手打不开是什么原因(快手打不开是什么原因造成的)

  • 华为手机屏幕往右偏(华为手机屏幕往下拉是设置什么的)

    华为手机屏幕往右偏(华为手机屏幕往下拉是设置什么的)

  • 什么是系统主板(系统和主板的关系)

    什么是系统主板(系统和主板的关系)

  • iphone11的热点为什么其他手机连不上(iphone11热点连上不能上网)

    iphone11的热点为什么其他手机连不上(iphone11热点连上不能上网)

  • ipad怎么创建qq群(ipad如何注册qq)

    ipad怎么创建qq群(ipad如何注册qq)

  • 手机照片怎么压缩变小(手机照片怎么压缩到200k以内)

    手机照片怎么压缩变小(手机照片怎么压缩到200k以内)

  • 亲情号的初始额度是多少(亲情号初始额度)

    亲情号的初始额度是多少(亲情号初始额度)

  • 华为mate30新机有保护膜吗(华为mate 30新机多少钱)

    华为mate30新机有保护膜吗(华为mate 30新机多少钱)

  • 探探app什么时候出的(探探什么时候开始的)

    探探app什么时候出的(探探什么时候开始的)

  • 快手怎么切换视频(快手怎么切换视频看法)

    快手怎么切换视频(快手怎么切换视频看法)

  • 小米蓝牙耳机有延迟吗(小米蓝牙耳机有一个连不上怎么办)

    小米蓝牙耳机有延迟吗(小米蓝牙耳机有一个连不上怎么办)

  • 手机如何监控汽车(手机如何监控汽车的适时动态)

    手机如何监控汽车(手机如何监控汽车的适时动态)

  • Node.js安装,npm安装yarn步骤(Node.js安装过程)

    Node.js安装,npm安装yarn步骤(Node.js安装过程)

  • python如何将字典内容写入json文件(python如何将字典中的键值互换)

    python如何将字典内容写入json文件(python如何将字典中的键值互换)

  • 电子设备租赁费专票税率
  • 增值税发票阅读器干什么用的
  • 出口退免税是什么意思
  • 未认证的进项税能做转出处理吗
  • 企业购入免税农产品
  • 应交城建税分录
  • 房屋租赁的发票备注怎么写
  • 收入入账会计分录
  • 生产型企业出口退税计算公式
  • 报关金额多报了3000美金
  • 医院收费单能当凭证用吗
  • 申请发票增额有没有什么条件
  • 个人住房转让纳税标准
  • 固定资产房屋原值增加折旧月数怎么算
  • 从支付宝里可以查出结婚个人信息吗
  • 开票资料上的电话可以是手机吗?
  • 加速折旧税收优惠
  • 固定资产发生非正常损失相关题目
  • 一般企业利润表格式
  • 企业接收股东划入资产作为收入处理有所得税差异吗
  • 企业收到政府补助时,无需开发票,双方根据银行电汇单
  • 家里的无线网连着连着就断了
  • 爱奇艺以图搜剧不见了
  • kzip_main.exe是什么
  • php system函数的用法
  • 期票是不是承兑汇票
  • 退货的增值税专票怎么开
  • 接受捐赠会计准则
  • 委托加工物资实际成本构成一般包括
  • 结存材料实际成本分录
  • 企业预缴所得税怎么算
  • 火爆全网的头像男
  • 报废机器设备会计分录
  • javaweb总结笔记
  • vue关闭路由
  • 可回收垃圾有哪些?
  • win10日历点不开
  • 劳务公司账务处理流程简易计税
  • 个体工商户属于灵活就业人员吗
  • 进项税发票可以跨年认证吗
  • 生育保险断缴后果
  • sqlserver2008还原数据库 错误3624
  • 矿产资源补偿费属于管理费用吗
  • 税控盘每年要交年费吗
  • 差旅补助要计入成本吗
  • 利润表季报的本期金额
  • 2013年11号公告企业政策性搬迁
  • 软件开发服务费计入什么科目
  • 固定资产抵债交不交增值税
  • 施工总包能分包土方吗
  • 免费品尝活动广告语
  • 接受投资者投入的资产
  • 生产成本怎么结转主营业务成本分录
  • mysql macbook安装教程
  • 查看sqlserver操作记录
  • sql server 2000安装包
  • MySQL 5.0.96 for Windows x86 32位绿色精简版安装教程
  • 系统问题怎么处理
  • 控制面板中的添加和删除在哪里
  • win7系统怎么用
  • Linux磁盘分区的作用
  • centos启动有三个选项
  • centos如何安装vim
  • 卸载声卡驱动有什么影响
  • win10预览版好吗
  • nodejss
  • 游戏输入法安卓
  • html&js+前端
  • angular keyup
  • jquery从左到右渐渐显示
  • javascript 继承
  • 如何使用wordpress
  • python打印出none
  • 安卓怎么压缩
  • 税务人员廉洁自律承诺书
  • 浙江电子税务局网上开票
  • 安徽增值税普通发票税率1%
  • 补办契税需要哪些资料
  • 九江税务总局
  • 内蒙民生认证系统
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设