写点什么

iOS 上手 Vision Pro 还未摸到门道?快来听听淘宝 Vision Pro 的最佳实践

  • 2024-10-12
    北京
  • 本文字数:3000 字

    阅读完需:约 10 分钟

大小:1.45M时长:08:27
iOS 上手 Vision Pro 还未摸到门道?快来听听淘宝 Vision Pro 的最佳实践

今年 4 月,淘宝 Vision Pro 版上线,为电商行业带来了全新的购物体验。通过将商品以 3D 立体的方式投影到现实世界中,用户可以近距离、多角度地观察商品,甚至可以实现 1:1 比例的真实模拟。这种“身临其境”的购物体验,无疑将改变我们传统的消费习惯。

 


对于 iOS 开发者来说,Vision Pro 代表着一个充满机遇的全新领域。淘宝作为国内领先的电商平台,率先将 Vision Pro 应用于购物场景,为开发者提供了宝贵的经验。淘宝 XR 工程技术团队负责人蒋志远在接受 InfoQ 采访时分享了他们在 Vision Pro 开发方面的心得体会。蒋志远指出,Vision Pro 作为一个全新的平台,其实也给开发者带来了巨大的挑战。而淘宝团队则在没有任何前例可循、不断探索的情况下,成功上线了淘宝 Vision Pro 版本。

 

采访嘉宾:蒋志远,来自淘宝 XR 工程技术团队,曾经负责过淘宝 iOS 客户端性能、架构和创新业务,现在负责淘宝 Vision Pro 版本的软件架构工作。重新设计了 淘宝 Vision Pro 版本的软件架构,支持了淘宝 Vision Pro 版本开发上线的全流程。在即将召开的 QCon 上海 2024_ 全球软件开发大会暨智能软件开发生态展_InfoQ 技术大会上,蒋志远将分享更多关于淘宝在 visionOS 上的最佳实践细节。

 


InfoQ:从常规 iOS 开发转为 VR/MR 方向,您感觉这中间过渡大吗?进入 Vision Pro 开发领域,技能 Gap 主要有哪些?

 

蒋志远:Vision Pro 的开发得益于苹果的跨平台策略,它大量采用了与 iOS 相同的基础技术,并且基础 SDK 的 API 与 iOS 相差无几。因此,对于 iOS 开发者而言,转向 Vision Pro 的学习曲线相对平缓。你可以将开发 iOS 应用的经验直接应用于 Vision Pro 应用的开发。这正是 Vision Pro 相对于其他 VR/MR 头显设备的优势所在。

 

在开发 Vision Pro 应用时,主要分为两种类型:纯 2D 应用和结合 3D 内容的应用。对于前者,开发者无需额外学习;而对于后者,则需要对 3D 内容开发流程有所了解。独立开发者可能需要解决 3D 模型的获取、格式处理、3D 内容控制等问题,并需要具备一定的游戏开发知识,如渲染技术和数学变换等。尽管苹果已经提供了简洁的 API,但这些知识仍然是必要的。

 

InfoQ:构建 Apple Vision Pro 应用有两种基本方法:改造现有应用以使其与 Vision Pro 兼容,以及从头开始为 Vision Pro 的空间计算环境构建新应用。那么淘宝选择的是哪一种?为什么这么选?

 

蒋志远:在 Vision Pro 上,现有的 iPhone 和 iPad 应用可以通过兼容模式运行,这意味着即使不做任何修改,我们的 App 也能在 Vision Pro 上运行。这里假设你指的是使用现有代码对 Vision Pro 进行适配。这要求代码具有很高的兼容性,尤其是考虑到 Vision Pro 在 UI 上的显著变化和平台差异性。如果您的 App 已经很好地适配了 iPad 的 UI 并正确处理了多窗口逻辑,尤其是使用 SwiftUI 开发的 App,那么迁移到原生 Vision Pro 的难度会相对较小。然后,您可以针对 Vision Pro 平台微调 UI,并利用新的内容特性。

 

如果情况并非如此,我建议针对 Vision Pro 从头开始开发一个应用。因为面对这个全新的领域,我们更倾向于贴近平台,充分利用 Vision Pro 的潜力,提供全新的用户体验。

 

InfoQ:开发过程中,您认为最大的难点是什么?(某个功能的实现过程、遇到的问题以及解决方法)

 

蒋志远:在开发过程中,我们遇到了各种预料之中和预料之外的问题。Vision Pro 作为一个全新的平台,自然也存在各种挑战。并且苹果在很多细节方面并没有提供详细的文档,我们需要在没有任何经验可借鉴的情况下不断的摸索。

 

淘宝在原生的 visionOS 平台上开发,虽然原生平台已经给了很多能力,但是还有很多能力没有提供,我们自建了很多框架能力来弥补原生平台的不足。还有在如何协调好原生平台和自建的能力方面,我们也付出了很多的努力。

 

InfoQ:从当前实践角度来看,目前的三维显示、三维交互技术是否还存在一些对 VR/MR 发展造成掣肘的地方?

 

蒋志远:目前市面上的三维显示方案主要有两种:以 Vision Pro 为代表的视频透视(VST)方案,还有光学透视(OST)方案。VST 方案对摄像头的质量和图像拼接能力要求较高;而 OST 方案则对光学显示技术有较高要求。两者各有优势和局限。

 

实际上,这些技术的限制主要源于芯片技术,即如何在体积和算力之间找到最佳平衡点。XR 设备作为可穿戴设备,其设计要求是轻便舒适。例如,OST 设备为了实现轻便的眼镜形态,牺牲了一定的算力;而 VST 设备为了提供完整的 XR 体验,往往体积较大且重量较重。

 

在 Vision Pro 上,由于隐私问题,应用无法访问摄像头信息,唯一感知世界的方式是使用苹果的 ARKit,这在一定程度上限制了我们的发挥。我们希望能够继续探索 XR 隐私问题,找到应用感知世界和用户隐私之间的平衡点。

 

InfoQ:Vision Pro 的价格高昂,您认为个人开发者在 Vision Pro 实物调试过程中,除了高昂的硬件成本,还会面临哪些其他的技术门槛或限制?是否有一些开源工具或社区资源,可以帮助个人开发者更方便地进行 Vision Pro 的开发和调试?

 

蒋志远:Xcode 提供的模拟器已经能够满足我们大部分开发需求。然而,对于图像密集型的游戏或应用,模拟器的性能可能无法与真机相媲美。如果需要快速开发 Vision Pro 应用,目前开源的 iOS 能力库大多可以迁移到 Vision Pro 上。您可以在 GitHub 上搜索相关资源,如 Lookin、FLEX 等。

 

InfoQ:淘宝 Vision Pro 版本的开发过程中,您团队在实物调试方面有哪些独特的经验和教训?

 

蒋志远:苹果直接销售的 Vision Pro 没有外部接口,因此调试时需要一个低延迟且高速的局域网环境。如果您开发的是图形密集型应用,或者觉得无线调试速度慢且卡顿,可能需要购买官方推出的 Developer Strap,这是目前唯一支持有线调试 Vision Pro 的解决方案。

 

由于 Vision Pro 在 Xcode 中移除了 View Hierarchy 功能,调试视图时可能需要借助 Lookin 等工具进行辅助。

 

InfoQ:您认为未来的 Vision Pro 应用会呈现出怎样的趋势?是否可以预测下 Vision Pro 在电商领域的发展?

 

蒋志远:我认为 Vision Pro 应用在短期内将主要聚焦于沉浸式观影、效率工具和低交互的放置类 3D 游戏。长期来看,随着 AI、空间感知和协作能力的增强,应用将更倾向于虚拟与现实紧密结合,如协作设计、数字助手、立体说明书等。对于企业用户,Vision Pro 将在关键工序提供支持,如基于空间的设备状态监测、新人虚拟实操培训、增强人工视觉能力等。

 

对于传统电商应用,Vision Pro 提供了一个新的维度来展示商品。在手机上购物通常只能通过文字和图片了解商品,而 Vision Pro 可以通过 3D 技术将商品直观地展示在用户面前。开发者将充分利用这一新维度,以更沉浸、更高效的方式展示内容,如沉浸式逛店、线上车展、商品展览、AI 导购等。

 


InfoQ:对想入门 VR/MR 开发的程序员,您有哪些建议给他们?

 

蒋志远:我认为最重要的是明确自己想要开发的应用类型,然后有针对性地学习。XR 开发目前仍然依赖于特定平台。通用知识包括了解游戏开发的相关工具链、3D 模型相关知识、基础渲染知识以及 OpenXR 等。如果是针对 visionOS 的开发,Swift 和 SwiftUI 是一个很好的入门选择。

 

活动推荐

10 月 18 日 -19 日,QCon 全球软件开发大会将在上海举办。从云原生工程、架构、线上可靠性、大前端、技术管理等经典内容,到 AI Agent、AI Infra、RAG 等大热的 AI 话题,60+ 资深专家共聚一堂,深度剖析相关落地实践案例,共话前沿技术趋势。大会火热报名中,详情可联系票务经理  17310043226 咨询。

 


2024-10-12 17:134

评论

发布
暂无评论

2024-04-03:用go语言,在一个小城市里,有 m 个房子排成一排, 你需要给每个房子涂上 n 种颜色之一(颜色编号为 1 到 n ), 有的房子去年夏天已经涂过颜色了,所以这些房子不可以被重新

福大大架构师每日一题

福大大架构师每日一题

当设计遇见技术—低代码开发平台设计探索

inBuilder低代码平台

设计 交互式设计

美股上市辅导合伙人苏凌丘调研万达影业 欲打造VR眼镜沉浸式影院平台

科技热闻

Flink 流批一体在模型特征场景的使用

Apache Flink

大数据 flink 流批一体

【论文速读】| MASTERKEY:大语言模型聊天机器人的自动化越狱

云起无垠

ChatGPT全方位解析:如何培养 AI 智能对话技能?

测试人

软件测试

新兴势力展露头角? ERC-1111 协议能否开启下一个热潮

NFT Research

NFT NFT\

行云绽放签约湾区协同创新计划,共创数字新篇章

行云管家

云计算 数字化 湾区

深入探索:主流低代码开发平台的应用场景及开发流程

优秀

低代码开发平台 低代码平台 低代码平台应用场景

你真的会写侧边栏收起动画吗?

前夕

CSS css3 前端

让 AI 帮你写代码,开发提效神器来了

阿里云云效

阿里云 AI 云原生

4款免费可用的数据集成平台亮点

RestCloud

ETL 数据集成平台

度安讲 | 首期「数据安全与隐私保护合规」技术沙龙顺利召开

百度安全

我后悔了,智慧公厕来了

光明源智慧厕所

智慧厕所 智慧公厕

NineData云原生智能数据管理平台新功能发布|2024年3月版

NineData

NineData 研发流程 数据库DevOps 企业级数据库 敏感数据管理

Linux中的conntrack命令深入解析

GousterCloud

Linux 运维

Postman 请求参数传递技巧:详解 Query、Path 和 Body 的用法

Liam

Java 后端 Postman 开发工具 API

【FAQ】HarmonyOS SDK 闭源开放能力 —Asset Store Kit

HarmonyOS SDK

HarmonyOS

Penpad Season 2 质押突破350ETH,还有望获Scroll生态空投

长安区块链

适合新锐机构的教务管理系统——“校猩猩”正式上线

科技热闻

Penpad Season 2 质押突破350ETH,参与可获Scroll生态空投

西柚子

IT外包行业未来发展趋势

Ogcloud

IT外包 IT外包公司 IT外包服务 IT外包企业 IT驻场外包

IT外包服务:企业数据资产化加速利器

Ogcloud

IT外包 IT外包公司 IT外包服务 IT外包企业

视频创作者必备应用!三步帮你解决前置内容条件,打造专属大片!

飞桨PaddlePaddle

百度 BAIDU 百度飞桨 AI应用 飞桨星河社区

🔥🔥🔥最好用的SDK版本管理器(version-manager)

Geek_5bcc45

Java Go node.js Py Version

OpenMLDB vs Redis 内存占用量测试报告

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

什么是智慧厕所?如何打造智慧厕所?

光明源智慧厕所

智慧厕所 智慧公厕

一定要避坑:关于微信H5分享,温馨提示你不要再踩坑了!!!

Immerse

Vue 分享 H5

面试官:Session和JWT有什么区别?

王磊

Java 面试题

探寻开发好的体育赛事直播系统源码:谁会成为购买者?

软件开发-梦幻运营部

嘉为蓝鲸DevOps研发效能管理平台V6.0重磅发布!

嘉为蓝鲸

DevOps 研发管理 研发效能 价值流

iOS 上手 Vision Pro 还未摸到门道?快来听听淘宝 Vision Pro 的最佳实践_Android/iOS_Tina_InfoQ精选文章