与USD一起工作(一)

iOS中.obj、.usdz、.dae和.scn格式之间的转化(思路清晰版) 作者最近在写项目的过程中遇到了一些3d模型格式问题,故写下这篇文章记录一下解决问题的过程。 阅读详情

作者:禮龍
声明:转发本文,请联系作者授权

iOS整合在这里插入图片描述

Messages、Mail、Notes、News、Safari、Files以及其他第三方应用。

什么是USD?

在这里插入图片描述

USD全称为Universal Scene Description,即通用场景描述。

由Pixar开发

  • 3D文件格式
  • Python绑定的C++库
    • 读取/写入
    • 合成引擎
    • 更多。。。

专注于速度、可扩展性、 协作

USD文件类型

在这里插入图片描述

什么是USD?

在这里插入图片描述
USD的分配格式
紧凑的单个文件
共享优化
AR快速查看的基础
支持iOS,macOS和tvOS

usdz剖析

  • 未压缩的存档 64位对齐文件(内存映射)
  • 场景描述文件 .usda, .usd, .usdc, .usdz
  • 纹理 .png或.jpeg
    在这里插入图片描述

转换3D内容

在这里插入图片描述

新的命令行工具 usdzconvert

  • .obj, .fbx, .gltf, .abc等
  • 执行资产校验
  • 基于Python
  • 平台独立

% usdzconvert esprit.gltf
usdzconvert: converting file: esprit.gltf
usdzconvert: converted usdz file: esprit.usdz
usdARKitChecker: [Pass] esprit.usdz
% usdzconvert -h
[…]
% usdzconvert esprit.obj -diffuseColor d.png -normal n.png -metallic m.png -roughness r.png
[…]

usdzconvert工具下载

https://developer.apple.com/augmented-reality/quick-look/ 点击“Download usdz tools”

% usdcat model.usdz
[…]
% usdtree model.usdz
/
--Parent [def Xform] (kind = component) |--CubeChild [def Cube] |--SphereChild [def Sphere]–Materials [def Scope]
`–Glass [def Material]
% usdchecker model.usdz —-arkit
Success!
% fixOpacity model.usdz
[…]

创建3D内容

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

从SceneKit中导出usdz

创建或加载SCNScene
导出.usdz

let scene = SCNScene(...)
...
scene.write(to: baseURL.appendingPathComponent("file.usdz"), delegate: nil)

USD特性

在这里插入图片描述

USD与Omniverse如何革新BIM协作工作流 建筑信息模型(BIM)技术通过数字化手段整合建筑全生命周期数据,但传统工作流中存在严重的数据孤岛问题。不同专业软件间的格式转换导致信息损耗,版本冲突造成大量返工。Universal Scene Description(USD)框架作为新一代3D场景描述技术,其分层合成与非破坏性编辑特性完美适配建筑行业需求。结合NVIDIA Omniverse平台的实时协作能力,USD可实现跨专业模型的毫米级同步,解决BIM协作中的最后保存者冲突问题。在Vectorworks等BIM软件中应用Omniverse Connec 阅读详情

相关推荐

Substance Painter到UE5的USD材质工作流实战指南

USD(Universal Scene Description)作为跨应用场景描述语言,正逐步替代传统FBX成为高级PBR材质资产交换的核心标准。其本质不是文件格式,而是定义材质语义、UV映射与参数契约的数据协议。在Substance Painter与虚幻引擎5的协同中,关键挑战在于确保SP导出的USD能被UE5 USD Importer准确解析为可编辑的UMaterialInstanceConstant,并实现纹理嵌入、Prim结构对齐、浮点精度可控等工程级要求。该流程显著提升美术-技术美术协作效率,支撑

weixin_30800807的博客 818

[visionOS] [Apple Vision Pro] 3D模型文件格式转换:obj转usdz

visionOS, 3D模型文件 obj格式转为usdz格式

H_O_W_E的专栏 2139

usdzconvert_webui:Web界面,可将3d内容转换为usdz格式

USDZconverter网站ui Web界面,可将3d内容转换为usdz格式 目录 关于该项目 Web服务旨在在本地网络上提供GUI,以将3d内容转换为usd / usdc / usda / usdz格式。 该应用程序添加了有用的默认值和一些服务器端场景后处理,以帮助您获得所需的输出。 如果您只需要本地usdz转换器并且不想与某些云服务共享资产或从头开始构建USD,则很有用。 入门 对于Windows,只需获取最新。 所需的二进制文件将在首次运行时下载。 先决条件 在经过Ubuntu 18.04 WSL测试的Unix上,您需要安装python3(最好是3.8)以及python2.7解释器。 转换脚本需要numpy和pillow。 可以使用pipenv设置Web ui: 的Unix python2.7 -m pip install --user numpy python2.7 -

OpenUSD完全指南:如何快速掌握3D场景构建核心技术

OpenUSD(Universal Scene Description)是皮克斯动画工作室开发的革命性开源3D场景描述技术,正在彻底改变3D内容创作和交换的方式。作为一款高效、可扩展的系统,OpenUSD专门用于创作、读取和流式传输时间采样的3D场景数据,解决了传统3D文件格式在复杂场景处理、多应用程序协作等方面的核心痛点。无论您是3D艺术家、技术美术还是开发者,本指南都将带您从零开始,快速掌握O

gitblog_01145的博客 981

Untitled_Scan.usdz

Untitled_Scan.usdz

:T-Rex:obj2usdz,转换。obj文件到。usdz在iOS上

:T-Rex:obj2usdz,转换。obj文件到。usdz在iOS上-源码

Blender USD插件实用指南:如何用USD实现跨软件协作高效工作流

在3D内容创作领域,格式兼容性一直是影响团队协作效率的关键瓶颈。Blender USD插件作为连接不同数字内容创作工具(DCC)的桥梁,通过USD(Universal Scene Description)格式的强大兼容性,让模型、材质和动画数据在Blender、Maya、Houdini等软件间无缝流转。本文将以技术伙伴的视角,带你3分钟上手插件基础操作,掌握跨软件协作的核心技巧,避开90%的常见坑

gitblog_00804的博客 716

28、解码清华SSVEP基准数据集:从EEG信号到深度学习模型的实战指南

本文详细解析了清华大学SSVEP基准数据集的处理与深度学习模型构建全流程。从EEG信号预处理、数据维度变换到SSVEP分类模型设计,提供了实战代码示例和关键技巧,帮助读者掌握脑机接口领域的数据处理方法与模型优化策略。

weixin_29029995的博客 176

USD Viewer安装与配置指南

USD Viewer安装与配置指南 1. 项目基础介绍 USD Viewer是一个基于Web的USD(Universal Scene Description)文件查看器。它允许用户在网页浏览器中查看USDZ文件和文件夹。该项目主要用于展示和查看3D场景数据,主要编程语言为JavaScript。 2. 关键技术和框架 USD WASM Bindings:由Autodesk提供,将USD的功能通过W...

gitblog_00494的博客 1071

GD32F103实战:用ADC+DMA实现高精度多通道电压采集与OLED实时显示(附完整工程)

本文详细介绍了如何利用GD32F103的ADC+DMA技术实现高精度多通道电压采集,并通过OLED实时显示数据。文章包含硬件架构设计、ADC配置技巧、DMA传输优化及显示系统实现方案,提供完整工程代码和调试指南,适用于工业传感器和环境监测设备开发。

weixin_42567497的博客 399

n8n智能体开发:Microsoft Outlook 节点

使用 Microsoft Outlook 节点可以自动化 Microsoft Outlook 工作流程,并将其与其他应用程序集成。n8n 内置支持多种 Microsoft Outlook 功能,包括创建、更新、删除和获取文件夹、邮件及草稿等操作。

王国平的博客 570

USD教程

参照层USD在Github存储库中提供了一组教程。除非另有说明,否则教程代码位于extras/usd/tutorials目录中。每个教程都指出了它使用的是哪个版本的USD。这些版本对应于Github上的版本。这些教程几乎完全使用USD的内置Python绑定,并且USD工具集中的一些程序相互依赖。因此,请设置以下环境变量以成功完成教程。请确保使用与用于构建USD的版本相对应的Python解释器(有关支持的Python版本,请参阅第三方库和应用程序版本,请注意不支持Python 2.x)。

明阳 1250

ARM功耗管理软件之DVFS&AVS

思考:功耗管理软件栈及示例?WFI&WFE?时钟&电源树?DVFS&AVS?

AI-安全-功耗 1230

与USD一起工作(三)

Python样例 "样例"文件夹 场景图 网格 材质和网格组 变换动画 皮肤和骨骼动画 Subdivision Surfaces 细分曲面 Efficient representation of curved surfaces 曲面的有效表示 Dynamic tessellation 动态曲面细分 (e.g. based on distance to camera) 例如,基于与相机...

Philm_iOS的博客 1322

YOLO26改进策略【YOLO和Mamba】| CVPR 2025:EfficientViM 压缩隐藏状态空间进行通道混合、单头设计减少内存操作,提升目标检测效率与精度

本文记录的是利用模块优化的目标检测网络模型。EfficientViM Block(基于隐藏状态混合器的状态空间对偶性模块) 的设计旨在,提升特征提取效率,同时兼顾全局依赖捕捉与局部细节保留。本文将深入研究的原理,并将其应用到中,通过重构特征提取流程、减少内存绑定操作、融合多阶段特征,增强模型在资源受限环境下的检测性能与速度。EfficientViM: Efficient Vision Mamba with Hidden State Mixer based State Space DualityEfficie

Limiiiing的博客 399

高通MBIM拨号流程简述

高通平台MBIM流程简述

不秃头的程序猿Gabriel的博客 5070

glTF材质转换工具:从USD到glTF工作流

在3D内容开发中,USD(Universal Scene Description)格式以其强大的场景组合能力成为创作阶段的首选,而glTF(GL Transmission Format)凭借高效的传输性能成为实时渲染的行业标准。然而,两种格式的材质系统差异常导致资产转换时出现视觉失真、数据丢失等问题。本文将系统梳理从USD到glTF的完整工作流,解决材质映射、扩展支持、性能优化等核心痛点,帮助开发...

gitblog_00710的博客 1102

《派出你的AI同事:WorkBuddy案例实战》062:投研资讯摘要与预警

投研资讯摘要与预警:新闻、公告、行情交给 AI 同事提炼与预警,投研从“刷资讯”变成“读摘要”。

LuckyHanMo的博客 182

usd-viewer:在网页上查看USD文件的强大工具

usd-viewer:在网页上查看USD文件的强大工具 项目介绍 usd-viewer是一个基于网页的USD文件查看器。USD(Universal Scene Description)是一种用于描述场景数据的文件格式,被广泛应用于电影、游戏和建筑可视化领域。usd-viewer让用户能够在浏览器中轻松查看USD和USDZ文件,为开发者提供了一个便捷的USD场景预览工具。 项目技术分析 usd-vi...

gitblog_01080的博客 1843

【WRF-GHG 教程上】完整教程(2024年更新版)

完整教程(2024年更新版)

WW、forever的博客 1432

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

浅谈USD格式

在 USD 体系里,上述这种存储在层内的编辑被称为“观点”(Opinion),这是非常形象的,下游的设计师可以根据实际情况选择性地接受上游的“观点”,避免了以往线性工作流中上游对下游的决定性影响。例如上面 USD 官方示例文件的厨房场景,“观点A”提供了原始的场景布局数据,“观点B”在“观点A”的基础上添加了装饰资产,“观点C”又在“观点B”的基础上添加、变换,最后,“观点D”在“观点C”的基础上对椅子模型进行变换。可以看出,上述的观点是有层次结构的,更强的观点可以覆盖(override)更弱的观点。

qq_45611002的博客 2906

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

与USD一起工作(二)

作者: 声明:转发本文,请联系作者授权 USD本质 1. File Structure 文件结构 #usda 1.0 ( upAxis = "Y" ) def Xform “simpleMesh” ( kind = "component" ) { def Mesh "cube" // 属性定义 { point3f[] points = [(0,0,0), (1,0,0), ...

Philm_iOS的博客 933

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

gltf2usd:glTF到USD转换工具指南

gltf2usd:glTF到USD转换工具指南 项目介绍 gltf2usd 是一个基于Python命令行工具,专为将glTF 2.0模型转换为Pixar的USD(Universal Scene Description)格式设计。此工具旨在提供简单、高效的管道转换方案,支持将glTF模型转换成USD、USDZ、USDA或USDC格式。开发和测试在Windows 10及Mac OS 10.14 Mo...

gitblog_00253的博客 1032

3ds Max 2026 新功能详解:USD 工作流与重新拓扑工具应用

例如,游戏团队中,建模师在 3ds Max 中完成基础模型后,可导出 USD 格式交由 Houdini 制作特效,再将特效文件导回 3ds Max 进行整合,全程无需反复调整格式,大幅减少了冗余操作。例如,在影视角色制作中,创作者可通过重新拓扑工具将高模优化为适配绑定的低模,再通过 USD 工作流将模型与初步材质导出至 Substance Painter 绘制纹理,完成后导回 3ds Max 进行灯光、渲染整合,全流程无缝衔接,大幅缩短了制作周期。实操中,重新拓扑工具的操作门槛极低,适配各类场景需求。

CG_MAGIC的博客 846

mlpack 数据缺失值处理指南:Imputer 与四种插补策略的完整实践

mlpack 是一套 header-only 的 C++ 机器学习库,其 `core::data` 模块提供了统一的缺失值处理工具 `Imputer`,用于将数据集中指定维度的缺失值替换为均值、中位数、自定义值,或直接删除含缺失值的数据点。本文以 `doc/user/core/imputation.md` 文档为主线,结合 `src/mlpack/core/data/` 下的源码实现与 `src/

gitblog_01062的博客 749
上一篇: iOS 启动图和 appIcon 整理
下一篇: 与USD一起工作(二)
Philm_iOS
博客等级 码龄8年 74粉丝 53原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值