AR 开发最常用的编程语言是 Swift、Kotlin/Java、C# 和 JavaScript,选择这些语言是因为它们与主要的平台、引擎和工具集成良好。这些语言与构建 AR 应用程序的主要生态系统相对应:原生移动开发、游戏引擎和基于网络的体验。每种语言根据目标平台和开发方法服务于特定的目的。
在原生移动 AR 开发中,Swift 被广泛用于利用苹果 ARKit 框架的 iOS 应用。Swift 现代化的语法以及与 Xcode 等 iOS 工具的紧密集成,使其能高效地在 iPhones 和 iPads 上构建高性能的 AR 体验。类似地,Kotlin 和 Java 是使用谷歌 ARCore 开发安卓 AR 应用的标准语言。Kotlin 现在是谷歌推荐的安卓开发语言,它通过简洁的语法和与现有 Java 库的互操作性简化了 ARCore 的集成。例如,AR 导航应用可能使用 ARCore 的运动跟踪功能,用 Kotlin 在实时摄像头画面上叠加方向指示。这些语言因可以直接访问设备传感器和特定平台优化,而成为原生开发的首选。
C# 在跨平台 AR 开发领域占主导地位,主要通过 Unity 游戏引擎实现,许多商业 AR 应用都由 Unity 提供支持。Unity 的 AR Foundation 框架允许开发者使用 C# 脚本创建同时适用于 ARKit 和 ARCore 的应用,从而实现 iOS 和安卓的代码共享。例如,一个在 Unity 中构建的家具零售应用可以让用户在不同设备上在家中可视化 3D 模型。C# 的简洁性和 Unity 的资源商店简化了原型开发,而对性能要求高的组件可能会使用 C++ 插件。Unreal Engine 在 AR 领域的应用相对较少,但使用 C++ 实现类似功能,需要更专业的知识。
JavaScript 结合 WebXR 和 AR.js 等库,是基于浏览器的 AR 开发的关键。这种方法避免了应用安装,并且可以在兼容浏览器的设备上运行。营销活动可能通过一个网页链接使用 AR.js 来展示 3D 产品预览,并使用 JavaScript 处理摄像头访问和渲染。虽然网页 AR 相较于原生应用牺牲了一些性能,但它更容易访问和部署。Python 和其他语言偶尔出现在 AR 相关任务中,例如后端服务或机器学习模型训练,但它们不是核心 AR 逻辑的主要选择。