图形语言传输格式glTF和三维瓦片数据3Dtiles(b3dm、pnts)学习

news2024/11/15 9:45:11

文章目录

  • 3DTiles
  • b3dm
  • 一、glTF
    • 1.glTF 3D模型格式有两种
    • 2.glTF 场景描述结构
    • 3.glTF的JSON结构
  • 二、

3DTiles

原文
工具+资料
格式详解
格式详解!
3D Tiles 是一种开源的、优化的文件格式,支持逐级细节(LOD)和空间索引,使得数据可以根据视点距离动态加载和卸载。
3DTiles由tileset.json和tile组成,其中tile可以是.b3dm、.i3dm、.pnts、.vctr和.cmpt中的任一种格式文件。

  • 即并没有统一的数据格式,实际上它定义数据的基本框架是瓦片集,瓦片集包括瓦片集数据(tileset.json)和瓦片数据(tile),其中瓦片数据可以是多种文件类型:
    在这里插入图片描述

b3dm

B3DM 是 3D Tiles 格式中的一种子格式,专门用于表示和存储三维模型。它通常包含几何数据、纹理和其他属性,适用于大规模的3D城市模型和建筑物。B3DM 文件通常封装了 glTF 模型,可以通过 3D Tiles 渲染引擎进行高效展示和流式传输。

即b3dm数据是基于 gltf 的 ( 单模型基础上做了批量化处理 )。
解析
读取工具TinyGLTFLoader——picojson库
格式详解参考文章、
工具+格式详解参考文章
在这里插入图片描述

一、glTF

原文
是一种针对GL(WebGL,OpenGL ES以及OpenGL)接口的运行时资产传递格式,是一种开放标准的3D模型文件格式,glTF通过提供高效、可扩展、可互操作的格式来传输和加载三维内容,填补了3D建模工具与现代图形应用程序之间的空白。

1.glTF 3D模型格式有两种

*.gltf: 基于JSON的文本文件,可使用文本编辑器轻松编辑,通常会引用外部文件,例如纹理贴图、二进制网格数据等;

即以JSON 格式描述模型的结构,并可以包含二进制数据(如顶点数据和纹理)来优化加载性能。

*.glb: 是二进制格式,通常文件较小且自包含所有资源,但不容易编辑。

VS Code编辑器,建议安装 glTF Tools 扩展工具,能够非常方便的查看glTF的数据结构、glTF和glb互转等。
可以说glTF是3D 模型的JPEG格式。

2.glTF 场景描述结构

格式与规范!!!!!!
官方教程!!!!!!!
格式详解参考文章
格式详解参考文章

  • JSON格式的文件(.gltf)

包含完整的场景描述,并通过场景结点引用网格进行定义 。包括:节点层次结构、材质(定义了3D对象的外观)、相机(定义义了渲染程序的视锥体设置 )、mesh(网格)、动画(定义了3D对象的变换操作,比如选择、平移操作)、蒙皮(定义了3D对象如何进行骨骼变换)等;

  • .bin包含几何和动画数据以及其他基于缓冲区的数据的二进制文件
  • 图像文件(.jpg,.png)的纹理
  • GLSL 着色器源代码的 GLSL 文本文件 ().glsl

以其他格式定义的资源(例如图像和 GLSL 着色器源代码)可以存储在通过 URI 引用的外部文件中,也可以使用数据 URI 直接嵌入到 JSON 中。
在这里插入图片描述在这里插入图片描述

3.glTF的JSON结构

二、

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2103189.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

生成模型之训练

如图1所示。生成器和判 别器是两个网络,在训练前我们要先分别进行参数初始化。训练的第一步是固定生成器,只训 练判别器。因为生成器的初始参数是随机初始化的,所以它什么都没有学习到,输入一系列采 样得到的向量给它,…

Qt第三课 ----------widget的控件属性及stylesheet样式(css样式)的简单介绍

作者前言 🎂 ✨✨✨✨✨✨🍧🍧🍧🍧🍧🍧🍧🎂 ​🎂 作者介绍: 🎂🎂 🎂 🎉🎉&#x1f389…

“论面向服务架构设计及其应用”写作框架,软考高级论文写作,系统架构设计师

第一章 项目摘要 2023年,我参与了某公司汽车物流系统的研发项目,担任系统架构设计师的角色。该项目旨在构建一个高效、灵活且可扩展的汽车物流管理系统,以优化物流流程,提升业务响应速度,并降低运营成本。系统涵盖了订…

RISC-V (八)定时器中断

​​​​​​​riscv中断的分类 Core local INTerrupt: CLINT CLINT编程接口-寄存器 mtime寄存器,由中断触发的时钟,按照固定频率计数。

中国化学工程第七建设校招|EAS测评题库智联招聘攻略考什么

中国化学工程第七建设有限公司(简称“七化建”)是一家隶属于中国化学工程集团有限公司的全资子公司,属于央企。公司业务领域广泛,包括石油化工、房屋建筑、水利水电、市政公用、道路桥梁等EPC总承包、技术开发、实业投资、贸易等。…

【Python 千题 —— 算法篇】回文字符串

Python 千题持续更新中 …… 脑图地址 👉:⭐https://twilight-fanyi.gitee.io/mind-map/Python千题.html⭐ 题目背景 在计算机科学中,字符串操作是基础且广泛应用的内容之一。回文字符串是一个非常经典的问题,回文是一种对称的结构,这种结构在数学、文学和计算机科学中都…

css三点闪烁(可用于加载样式、标题等)

代码案例 HTML <div class"flexAlign loading"><div class"loading_item"></div><div class"loading_item"></div><div class"loading_item"></div> </div> <div class"ot…

山东省行政执法证照片要求及图像处理方法

在山东省&#xff0c;行政执法证是执法人员身份的重要标识&#xff0c;其照片的规范性对于证件的有效性至关重要。本文将详细介绍山东省行政执法证照片的要求&#xff0c;并提供使用手机相机拍照的实用方法&#xff0c;以确保照片符合标准。 一、山东省行政人员执法证照片拍摄要…

论文解读 | ACL2024 Outstanding Paper:因果指导的主动学习方法:助力大语言模型自动识别并去除偏见...

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入&#xff01; 点击阅读原文观看作者直播讲解回放&#xff01; 作者简介 孙洲浩&#xff0c;哈尔滨工业大学SCIR实验室博士生 概述 尽管大语言模型&#xff08;LLMs&#xff09;展现出了非常强大的能力&#xff0c;但它们仍然…

常见概念 -- DCM色散补偿

色散的概念 光是一种电磁波&#xff0c;在特定介质中&#xff0c;光的相速度随频率&#xff08;波长&#xff09;或传输模式有差异&#xff0c;造成光波在通过介质后&#xff0c;不同频率成分光波的相位形成分散或分离的效果&#xff0c;称为色散。 日常生活中&#xff0c;最…

时间与白酒风味:陈酿的奥秘与魅力

在漫长的历史长河中&#xff0c;白酒不仅是中华文化的瑰宝&#xff0c;更是时间的艺术品。每一滴白酒都承载着时间的沉淀&#xff0c;经过岁月的洗礼&#xff0c;散发出不同的韵味。今天&#xff0c;我们就来一同探寻陈酿的奥秘与魅力&#xff0c;感受豪迈白酒&#xff08;HOMA…

数学建模强化宝典(9)遗传算法

前言 遗传算法&#xff08;Genetic Algorithm, GA&#xff09;是一种模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型&#xff0c;它通过模拟自然进化过程来搜索最优解。遗传算法最早由美国的John Holland于20世纪70年代提出&#xff0c;并逐渐成为解决复…

C++竞赛初阶L1-15-第六单元-多维数组(34~35课)551: T456501 计算矩阵边缘元素之和

题目内容 输入一个整数矩阵&#xff0c;计算位于矩阵边缘的元素之和。 所谓矩阵边缘的元素&#xff0c;就是第一行和最后一行的元素以及第一列和最后一列的元素。 输入格式 第 1 行包含两个整数&#xff0c;分别为行数 m 和列数 n&#xff0c;两个整数之间空格隔开。 第 2 …

2024-pip install torch为CPU版本,GPU没有被使用的解决方法(windows和linux均适用)

问题原因 如果你的下载命令是&#xff1a; pip install torch就会有问题。 torch的官网上 如果是CPU版本 如果是GPU版本 对比可以发现问题所在。 CUDA版本确定 输入 nvidia-smi右上角就是。 (一般来说之后下载的对应版本不高于CUDA_VERSION即可) 下载命令 CUDA 11.8 …

2-85 基于matlab的FrFT下时变幅度LFM信号参数估计

基于matlab的FrFT下时变幅度LFM信号参数估计&#xff0c;输入高斯白噪声LFM信号(信噪比可定义)&#xff0c;采用二维峰值搜索算法及一维插值峰值搜索方式提供计算速度&#xff0c;输出LFM信号参数估计结果。程序已调通&#xff0c;可直接运行。 2-85 一维插值峰值搜索方式 - 小…

传统CV算法——背景建模算法介绍

帧差法 由于场景中的目标在运动&#xff0c;目标的影像在不同图像帧中的位置不同。该类算法对时间上连续的两帧图像进行差分运算&#xff0c;不同帧对应的像素点相减&#xff0c;判断灰度差的绝对值&#xff0c;当绝对值超过一定阈值时&#xff0c;即可判断为运动目标&#xf…

【Python】一文详细向您介绍 `bisect_right` 函数

【Python】一文详细向您介绍 bisect_right 函数 下滑即可查看博客内容 &#x1f308; 欢迎莅临我的个人主页 &#x1f448;这里是我静心耕耘深度学习领域、真诚分享知识与智慧的小天地&#xff01;&#x1f387; &#x1f393; 博主简介&#xff1a;985高校的普通本硕&#…

从JavaScript入门Go三

前情提要 上一章中我们讲了Go中的变量与函数&#xff0c;这一节我们说说Go中的逻辑语法for、if、switch。最近正好有空&#xff0c;正好给大家更新一下入门的第三章。 PS&#xff1a;没看过的第一章、第二章的小伙伴&#xff0c;可以进入下面的链接查看 从JavaScript入门Go一 从…

新手c语言讲解及题目分享(十)——数组专项练习

C语言中的数组是一个用于存储多个同类型数据的集合。数组在内存中是连续分配的&#xff0c;可以通过索引访问其中的元素。以下是对C语言数组的详细讲解&#xff1a; 1. 数组的定义 数组的定义格式如下&#xff1a; type arrayName[arraySize]; - type&#xff1a;数组中元素…

1Panel 服务器运维面板

文章目录 相关介绍下载安装 1Panel启动 1Panel安装中间件 相关介绍 1Panel是一款现代化、开源的Linux服务器运维管理面板&#xff0c;它采用最新的前端技术和容器技术&#xff0c;使得服务器的运维管理更加简单、更安全&#xff0c;通过Web端轻松管理Linux服务器&#xff0c;包…