【iOS ARKit】USDZ文件

 USDZ 概述

        ARKit 支持 USDZ(Universal Scene Description Zip,通用场景描述文件包)、Reality 两种格式的模型文件,得益于 USDZ的强大描述能力与网络传输便利性,使得iOS 设备能够在其信息(Message)、邮件(Mail)、浏览器(Safari)等多种应用中实现 AR功能,AR 体验的共享传播也变得前所未有地方便。USDZ从 USD(Universal Scene Description,通用场景描述)格式文件发展而来,是在 ARKit 中广泛使用的模型文件格式,而 Reality 文件格式则是由 Reality Composer 生成专用于 RealityKit 的优化、压缩格式文件。

USD

       USDZ 格式文件从 USD 格式发展而来,USD 格式文件由皮克斯(Pixar)公司为提升图形渲染与动画效果、改善大场景动画制作工作流、方便3D内容交换而设计的一种通用场景描述文件,是一种专为大型资源管线设计、注重并行工作流和可交换性的文件格式。

      由于USD文件的强大动画、流程管理能力,以及皮克斯公司对相关技术的开源,USD 格式逐渐成为行业领域下一代3D 图形与动画制作的事实标准。USD 文件对几何网格(Geometry)、渲染(Shading)、骨骼(Skeletal)变形交换有强大支持能力,其灵活的架构易于适应未来不断变化的需求。USD 格式也包含一个强大的,重点关注速度、可伸缩性、协作性的组合引擎,并支持实时合成,对复杂场景有着良好的支持,因此越来越多的公司开始支持 USD 格式。

     为不同的设计目的,USD 文件支持3种后缀格式:USDA、USDC、USD。其中 USDA格式是方便人类阅读和理解的纯文本格式;USDC格式则是为高效存取数据设计的二进制文件格式;USD 可以是文本文件格式,也可以是二进制文件格式。USDA 与 USDC格式可以相互转换。

USDZ

     2018年,苹果公司引入 USD 格式并将其修改成 USDZ,字母Z表示该文件是 Zip 存档文件,USDZ 格式在USD 格式文件基础上进行了改进和优化,使其更适合于 AR渲染展示、网络传播。USDZ文件主要特性如下:

(1) USDZ本质上是 USD文件的另一种变体。

(2) USDZ 将某特定场景中的文件打包并压缩到一个单一文件中。

(3)USDZ 为网络传输共享专门进行了优化,构成了iOS、iPadOS、 macOS.tvOS 等系统都支持的ARQuick Look 基础。

(4) USDZ 同样支持复杂场景的扩展。

(5) USDZ 数据采用64字节对齐方式,将所有文件打包到一个单一文件中,为提高性能并未对数据进行压缩。

     USDZ 格式文件包体内包含两种类型的文件格式:一种是场景描述文件,可以为 USD、USDA、USDC、USDZ 中的任意一种;另一种是纹理资源文件,纹理支持JPEG 和 PNG 两种格式。

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

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

相关文章

ryu、python安装、版本问题

conda conda create --name py35 python3.5 创建 conda activate py35 //激活 conda deactivate py35//退出 conda remove --name py35 --all//移除 conda info -e //已安装环境/miniconda3/bin/python base位置/etc/python /usr/lib/python3.5m /usr/bin/python2.7 minine…

Mapbox 教程: 改变地图样式

注:相关功能在Mapbox GL JS v3中可用。在新版本中,默认使用标准样式,在创建地图时,可以在构造函数中明确指定style option 设置指定样式,也可以不设置style option 从而使用默认样式。 本示例通过Mapbox加载了一份带三…

esxi配置使用以及虚拟机管理

vSphere Client安装和esxi主机 esxi配置 许可证 虚拟机管理 vSphere Client中创建、删除等虚拟机的管理。 vSphere Client中创建虚拟机并安装操作系统; 步骤1 创建虚拟机 密码:Tongxin2023 (1) 厚置备延迟置零 以默认的厚格式创建虚拟磁盘。创建过…

佛山市人工智能产业生态交流会:实在智能Agent引领“智造浪潮”

制造业,实体经济的核心,技术创新的先锋,供给侧结构性改革的关键。在新一轮产业竞争中,数字化转型成为制造业升级的必由之路,是引领未来的重要抓手。 为促进数字经济赋能实体经济,加快人工智能技术的推广应用…

设计模式|建造者模式(Builder Pattern)

文章目录 结构优点缺点适用场景示例建造者模式(Builder Pattern)是一种创建型设计模式,用于将一个复杂对象的构建过程与其表示分离,以便可以使用相同的构建过程创建不同的表示。 结构 Builder(建造者)接口或抽象类: 定义了构建对象的各个步骤的方法。ConcreteBuilder(具…

C# 冻结Excel窗口以锁定行列、或解除冻结

在处理大型Excel工作簿时,有时候我们需要在工作表中冻结窗格,这样可以在滚动查看数据的同时保持某些行或列固定不动。冻结窗格可以帮助我们更容易地导航和理解复杂的数据集。相反,当你不需要冻结窗格时,你可能需要解冻它们以获得完…

数据结构 | 线性表的顺序表示(王道)

文章目录 顺序表定义综合应用顺序表定义 静态分配 #define MaxSize 50 typedef struct{ElemType data[MaxSize];int length; }SqList;动态分

ubuntu 20.04 设置国内镜像源(阿里源、清华源)

在网上搜了好多设置国内镜像源,都写的乱七八糟的,都是随便换,最后还是换得一堆问题。 镜像源也是跟版本一一对应的,不能随便一个国内源就还过去用,否则会出现各种各样的问题,我也是吃过亏之后才发现的。 国…

【Vue 自定义事件】

组件的自定义事件 一种组件间通讯的方式&#xff0c;适用于&#xff1a;子组件 —> 父组件 绑定自定义事件 第一种方式:在父组件中写单标签1.<Demo 事件名"方法">2.<Demo v-on:事件名"方法"/>第二种方式:使用ref绑定(配置在生命周期中)this…

通讯录项目(用c语言实现)

一.什么是通讯录 通讯录是一种用于存储联系人信息的工具或应用程序。它是一种电子化的地址簿&#xff0c;用于记录和管理个人、机构或组织的联系方式&#xff0c;如姓名、电话号码、电子邮件地址和邮寄地址等。通讯录的目的是方便用户在需要时查找和联系他人。 通讯录通常以列…

手眼标定问题排查_2_圆网格数据排查

经过昨天晚上的调试&#xff0c;发现了一个主要问题&#xff1a;使用圆网格标定板标定时&#xff0c;不能使用cornerSubPix()函数&#xff0c;否则寻找角点时&#xff0c;会导致图一的情况(裁剪为30万像素)。就找到能参考的程序&#xff0c;推进还是很快的。 图一 一些数据对比…

imu6xl点灯(C语言)

参考正点原子开发指南 根据原理图可以看出&#xff0c;我们需要设置低电平导通电路。 在原理图上找到LED0&#xff0c;对应IO为GPIO3 IO复用配置 IMX6UL每个引脚都可以复用 在用户手册第30章可以找到IOMUXC_SW_MUX_CTL_PAD_GPIO1_IO03这个寄存器&#xff0c;地址为0x020E0068&…

Linux网络名称空间和虚拟机有何区别

在Linux系统中&#xff0c;网络名称空间和虚拟机都是实现资源隔离和虚拟化的技术&#xff0c;但它们在设计理念、实现机制、资源消耗、使用场景等方面存在着显著的区别。本文旨在全方位、系统性地分析这两种技术的区别。&#x1f50d; 1. 设计理念与实现机制 1.1. 网络名称空…

未来汽车硬件安全的需求(2)

目录 4.汽车安全控制器 4.1 TPM2.0 4.2 安全控制器的硬件保护措施 5. EVITA HSM和安全控制器结合 6.小结 4.汽车安全控制器 汽车安全控制器是用于汽车工业安全关键应用的微控制器。 他们的保护水平远远高于EVITA HSM。今天的典型应用是移动通信&#xff0c;V2X、SOTA、…

bat脚本中使用gradle命令后,脚本不继续执行,直接退出

在window 的bat脚本执行的时候&#xff0c;执行完一个gradlew 目标后会自动退出&#xff0c;pause命令也无效。 原因&#xff1a;gradlew本身是一个bat命令&#xff0c;因此在exit退出的时候&#xff0c;整个脚本进程将退出&#xff0c;加入call命令调用即可&#xff1a; 如下…

python使用ffmpeg分割视频为Hls分片文件/使用OpenSSL加密m3u8和TS文件

FFmpeg和OpenSSL是一个开源免费的软件&#xff0c;在官网上就能下载&#xff0c; FFmpage网址&#xff08;建议选择文件名full结尾的文件&#xff09;&#xff1a;Builds - CODEX FFMPEG gyan.dev OpenSSL网址&#xff08;建议选择win64的MSI文件&#xff09;&#xff1a;Win3…

TS中interface和type的区别

前言 在面试中如果问TS的话&#xff0c;经常会问的一个问题就是interface和type有什么区别&#xff0c;这里做个记录 interface和type的区别 Interface 支持声明合并&#xff1a;如果你有两个相同名称的接口&#xff0c;TypeScript会合并它们 interface User {name: string…

maven依赖管理:依赖仓库管理

1、Maven的依赖如何存放管理&#xff1f; Maven中存在依赖组件&#xff08;常用的是jar包、war包、pom等&#xff0c;也可把Zip包等通过POM文件定义为依赖组件&#xff09;的地方称为仓库&#xff08;Repository&#xff09;。 在Maven中&#xff0c;仓库有三种类型&#xff1…

CSS中grid网格布局(秒懂如何实现网格布局)-菜鸟教程

目录 一、概念 二、使用 1.网格元素 2.display属性 3.网格轨道 4.fr 单位 5.网格单元 6.网格区域 7.网格列与行 8.CSS 网格属性 三、网格容器 display&#xff1a; grid-template-columns 和 grid-template-rows&#xff1a; grid-gap、grid-row-gap 和 grid-column-…

如何使用SQL注入工具?

前言 今天来讲讲SQL注入工具&#xff0c;sqlmap。如何使用它来一步步爆库。 sqlmap官方地址如下。 sqlmap: automatic SQL injection and database takeover tool 前期准备&#xff0c;需要先安装好docker、docker-compose。 一个运行的后端服务&#xff0c;用于写一个存在…