3DTiles Next研究

news2024/11/24 16:11:46

3DTiles Next是Cesium发布的下一代3DTiles规范。

元数据

在这一代规范中,更重视元数据(metadata,如建筑物ID或者类型等),通过这些元数据可以对3dtiles进行样式调整或者过滤显示。

关于详细的元数据规范介绍看这里。

下图显示了3DTiles Next中不同粒度实体(tilesets、tiles、contents和groups)之间的关系:

每个纹素的最精细粒度允许元数据比几何图形更频繁地变化。例如,考虑建筑物的一侧可以用两个三角形建模,然后应用元数据纹理来定义什么是玻璃、砖块或石头。它们中的每一个在分析中都会以不同的方式交互,例如射线如何在 RF 传播和渲染中反弹,例如将元数据映射到 glTF 的基于物理的渲染 (PBR) 材料。

3D Tiles Next 旨在以整个世界的数字表示实现游戏般的元宇宙体验。在那个规模上,我们不仅需要代表每座城市、每栋建筑、每个房间、每个门把手和每个对象的元数据,我们还需要知道元数据的语义,以便不同的应用程序知道元数据如何影响交互. 例如,混凝土与草地的摩擦系数会影响车辆的速度,而知道门以何种方式打开会影响人群模拟。

隐式瓦片

3D Tiles Next 优化了空间细分,支持快速空间查询、更快分析以及与 GIS 和模拟生态系统的更高互操作性。

在3dtiles 1.0中,空间细分是在tileset.json中定义的,有KD树、松散四叉树和八叉树等细分方式,子瓦片的内容在空间上要位于父瓦片的边界体积内。

在Next版本里,出现了一个叫3DTILES_implicit_tiling的扩展,无需显式列出瓦片边界体积,允许随机访问显示或分析区域所需的任何图块或任意数量的图块。如果一个瓦片包含了这个扩展,这样的瓦片被称为隐式根瓦片(implicit root tile)。

隐式瓦片简洁地表示了一个 3D tileset 的空间数据结构,包括:

  • 八叉树或四叉树细分;
  • 根瓦片的几何误差和边界体积,例如,支持全局和局部瓦片集;
  • 每个图块的可用性,因此运行时仅请求存在的图块,以及存储在二进制 Morton z - 顺序曲线中的其他每个图块数据;
  • 模板 URI 来定义用于随机访问图块的 URI。

与显示瓦片相比,隐式瓦片能够节省存储空间和网络带宽。

新的细分方式-S2

新增了一种新的细分方式,用3DTILES_bounding_volume_S2扩展。它使用隐式和显式瓦片来为S2单元格定义新的边界体积类型。这是基于立方体的全局细分,其中同一级别的每个瓦片具有大致相等的面积,并且极点处的失真最小,特别是与四叉树细分相比,其中靠近极点的瓦片变得非常薄。

S2细分比较适合全球性范围的瓦片数据集,它其实是相当于在地球外面罩一个立方体,根据立方体六个面投影到地球上的范围进行划分。

同类元数据放在同一图层

一个常见的地理空间用例是将具有相同元数据的对象分组到一个图层中,例如高速公路、兴趣点和城市建筑物的图层。然后可以一起对图层进行样式设置、切换等。

使用 3D Tiles Next,3DTILES_multiple_contents可用于通过在图块组中定义层的元数据然后将多个内容(例如 glTF 资产)分配给该组来有效地支持层。

与gltf生态系统集成

使用3DTILES_content_gltf,瓦片现在直接引用 .gltf 或 .glb 文件;而不是引用带有嵌入式 glTF 的 .b3dm 或 .i3dm。

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

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

相关文章

Spark SQL生产优化经验--任务参数配置模版

大表扫描 特殊case说明:当任务存在扫event_log表时需注意,若对event_log表进行了过滤,且过滤比很高,如下图的case,input为74T,但shuffle write仅为3.5G,那么建议提高单partition的读取数据量&a…

Redis数据库高可用之RDB和AOF持久化

Redis数据库高可用、RDB和AOF持久化、性能管理 一、Redis 高可用二、Redis 持久化Ⅰ、持久化的功能Ⅱ、两种持久化方式Ⅲ、RDB 和 AOF 的区别 三、RDB 持久化Ⅰ、触发条件Ⅱ、执行流程 四、AOF持久化Ⅰ、开启AOFⅡ、执行流程 五、RDB 和 AOF 的优缺点Ⅰ、RDB 持久化Ⅱ、AOF 持久…

金鹰优化算法,附MATLAB代码,直接复制

金鹰优化算法(golden eagle optimizer, GEO)是于2020年提出的新型智能优化算法,该算法建立于金鹰个体 捕食过程中的巡航和攻击行为之上,通过平衡两者关系,帮助函数寻找最优值,已经在许多方面得到了应用。 关…

Google 将为高端 Chromebook 推出独立品牌

说起 Chromebook,一般大家的第一印象就是价格便宜、配置不高、做工普通,所选的材料也都是以塑料为主,产品主打的市场也是学生和教育群体。在不少人看来,Chromebook 就是一个配备了功能齐全的浏览器,外加一定的文件管理…

GOLANG进阶:Viper,Mysql,Swagger

GOLANG从浅入深必须学习的一些工具包 1.Viper: Viper 是一个完整的 Go 应用程序配置解决方案,优势就在于开发项目中你不必去操心配置文件的格式而是让你腾出手来专注于项目的开发。其特性如下: 支持 JSON/TOML/YAML/HCL/envfile/Java proper…

数据结构--栈在函数递归中的调用

数据结构–栈在函数递归中的调用 void func2(int x) {int n, m;//... }void func1(int a, int b) {int x;//...func2(x);x 5201314;//... }int main() {int a, b, c;//...func1(a, b);//... }函数调用的特点:最后被调用的函数最先执行结束(LIFO) 函数调用时,需要用…

【人工智能与机器学习】基于卷积神经网络CNN的猫狗识别

文章目录 1 引言2 卷积神经网络概述2.1 卷积神经网络的背景介绍2.2 CNN的网络结构2.2.1 卷积层2.2.2 激活函数2.2.3 池化层2.2.4 全连接层 2.3 CNN的训练过程图解2.4 CNN的基本特征2.4.1 局部感知(Local Connectivity)2.4.2 参数共享(Parameter Sharing)…

顶点数据加入颜色数据

顶点着色器代码: #version 330 core layout(location 0) in vec3 aPos; layout(location 1) in vec3 aColor; out vec3 ourColor; void main(){gl_Position vec4(aPos.x, aPos.y, aPos.z, 1.0f);ourColoraColor; }片段着色器代码: #version 330 cor…

11-切片有什么用?【视频版】

目录 问题视频解答 问题 视频解答 点击观看: 11-切片有什么用?

学习 vue3版本

文章目录 创建各种函数setup注意点 ref函数总结 reactive总结 响应式vue2vue3总结 ref与reactive的比较计算属性监视watch的value的问题 watchEffect函数生命周期Hooks函数总结 toRef总结 其他CompositionApishallowReactive与shallowRefreadonly与shallowReadonlytoRaw与markR…

React Antd Form.List 组件嵌套多级动态增减表单 + 表单联动复制实现

Antd Form.List 组件嵌套多级动态增减表单 表单联动复制实现 一、业务需求 有一个页面的组件,其中一部分需要用到动态的增减 复制表单,然后就想起 了使用 Antd 的 Form.List 去完成这个功能。 这个功能的要求是: 首先是一个动态的表单&…

事后多重比较案例分析

一、案例介绍 由单因素方差分析案例中,为研究郁金对低张性缺氧小鼠存活时间的影响,将36只小鼠随机生成A、B以及 C 三组,每组12个,雌雄各半,分别以10g/kg、20g/kg、40g/kg三种不同剂量的郁金灌胃,各组小鼠均…

08-C++学习笔记-类与对象

🔟🔒 08-C学习笔记-类与对象 在本篇学习笔记中,我们将详细讲解C中的类与对象的概念和相关知识。类是C中一种重要的数据类型,它允许我们自定义数据结构和相应的操作。 📚 C类与对象详细讲解 ✨类的概念 类是一种用户…

黑客(网络安全)自学

前言: 1.这是一条坚持的道路,三分钟的热情可以放弃往下看了. 2.多练多想,不要离开了教程什么都不会了.最好看完教程自己独立完成技术方面的开发. 3.有时多 google,baidu,我们往往都遇不到好心的大神,谁会无聊天天给你做解答 .4.遇到实在搞不懂的,可以先放放,以后…

3dmax导出cad

3dmax2022 导出cad 导入arcmap 10.2 导出版本为AutoCAD 2007 DWG

玩转Matplotlib的10个高级技巧

Matplotlib是Python中流行的数据可视化库,仅使用简单的几行代码就可以生成图表。但是默认的方法是生成的图表很简单,如果想增强数据演示的影响和清晰度,可以试试本文总结的10个高级技巧,这些技巧可以将可视化提升到一个新的水平: …

Hyperledger Fabric网络快速启动

目录 1、网络服务配置 2、关联的docker-compose-base.yaml 各Peer节点容器设置如下信息。 3、被关联的Peer-base.yaml 4、启动网络 2、完成通道的创建 2.1将节点加入应用通道 更新锚节点 2.为什么要创建节点并将其加入应用通道中? 1、网络服务配置 由于要启动…

人工智能(pytorch)搭建模型16-基于LSTM+CNN模型的高血压预测的应用

大家好,我是微学AI,今天给大家介绍一下人工智能(pytorch)搭建模型16-基于LSTMCNN模型的高血压预测的应用,LSTMCNN模型搭建与训练,本项目将利用pytorch搭建LSTMCNN模型,涉及项目:高血压预测,高血…

鼠标点击切换图片(使用js中的src属性)

使用到的知识点&#xff1a; 模板字符串 js中的src属性 img.src ./images/${i}.jpg 效果展示&#xff1a; 具体代码实现&#xff1a; <body><div class"box" style"width:500px;height:300px;margin:100px auto;"><img src&quo…

Python中获取指定目录下所有文件名的方法

在《Python中文件名和路径的操作》中提到&#xff0c;os模块中的函数可以对文件进行操作。通过递归以及os模块中提供的函数&#xff0c;可以获取指定目录下所有的文件名。 1 基本流程 通过递归获取指定目录下所有文件名的基本流程&#xff0c;如图1所示。 图1 基本流程 2 函…