选择引擎
我们的文档中有几种开发途径供你采用。 首先是找到适合你的技术。 如果你已经有了想法,请继续操作,直接跳到下面其相应的选项卡。 如果你还在观望或者刚刚起步,请查看每一种途径,了解它们提供的内容、可用的平台和工具,然后开始创建吧!
重要
如果你有现成的项目想要引入到 HoloLens 2 或沉浸式 VR 头戴显示设备(例如 Reverb G2)中,请查看我们的移植指南概述。 对于使用 HTK、MRTK v1、SteamVR 或针对沉浸式头戴显示设备开发的项目(例如 Oculus Rift 或 HTC Vive),我们有一些指导。
引擎概述
Unity 是市面上领先的实时开发平台之一,其中基础运行时代码采用 C++ 编写,所有开发脚本设置均以 C# 写成。 无论你是想创建游戏、电影和动画,还是想在虚拟世界中呈现建筑或工程概念,Unity 都有提供支持的基础结构。
注意
在选择 Unity 版本之前,请确保查看某些 Unity 版本中的已知问题。
Unreal Engine 4 是一种强大的开源创建引擎,全面支持采用 C++ 和蓝图编写的混合现实。 从 Unreal Engine 4.25 开始,HoloLens 提供完备的支持,且已准备好投入生产。 借助灵活的 Blueprints Visual Scripting 系统等功能,设计师可直观地使用全套概念和功能,而这些内容通常仅适用于编程人员。 跨多个行业的创建者可利用自由操作和掌控力来提供前沿内容、交互式体验和沉浸式虚拟世界。
具有编写自己的 3D 渲染器经验的本机开发人员可以使用 OpenXR 生成自定义引擎。 OpenXR 是来自 Khronos 的开放式免版税 API 标准,它对供应商提供的涵盖广泛的混合现实的各种设备提供引擎本机访问。 你可在桌面上的 HoloLens 2 或 Windows Mixed Reality 沉浸式头戴显示设备上使用 OpenXR 进行开发。
创建引人注目的跨浏览器 AR/VR web 体验的Web 开发人员可以使用 WebXR。
功能和设备
物流 | Unity | Unreal | JavaScript | 自定义引擎 (使用 OpenXR) |
---|---|---|---|---|
语言 | C# | C++ | JavaScript | C/C++ |
定价 | Unity 定价 | Unreal 定价 | 免费 | 免费 |
设备功能 | Unity | Unreal | JavaScript | 自定义引擎 (使用 OpenXR) |
---|---|---|---|---|
设备/显示器跟踪 | ✔ | ✔ | ✔ | ✔ |
手部输入 | ✔ | ✔ | ✔ | ✔ |
眼部输入 | ✔ | ✔ | ❌ | ✔ |
语音输入 | ✔ | ✔ | ✔ | ✔ |
运动控制器 | ✔ | ✔ | ✔ | ✔ |
平面/网格命中测试 | ✔ | ✔ | ✔ | ✔ |
场景理解 | ✔ | ✔ | ❌ | ✔ |
空间音效 | ✔ | ✔ | ✔ | ✔ |
QR 码检测 | ✔ | ✔ | ❌ | ✔ |
硬件 | Unity | Unreal | JavaScript | 自定义引擎 (使用 OpenXR) |
---|---|---|---|---|
HoloLens 2 | ✔ | ✔ | ✔ | ✔ |
HoloLens(第一代) | ✔ | ✔ | ❌ | 仅限 WinRT(旧版) |
Windows Mixed Reality 头戴显示设备 | ✔ | ✔ | ✔ | ✔ |
SteamVR 头戴显示设备 | ✔ | ✔ | ✔ | ✔ |
Oculus Quest/Rift | ✔ | ✔ | ✔ | ✔ |
移动 (ARCore/ARKit) | ✔ | ✔ | ✔ | ❌ |
工具 | Unity | Unreal | JavaScript | 自定义引擎 (使用 OpenXR) |
---|---|---|---|---|
混合现实工具包 | ✔ | ✔ | ❌ | ❌ |
世界锁定工具 | ✔ | ❌ | ❌ | ❌ |
云服务 | Unity | Unreal | JavaScript | 自定义引擎 (使用 OpenXR) |
---|---|---|---|---|
Azure 空间定位点 | ✔ | ✔ | ❌ | ✔ |
Azure Object Anchors | ✔ | ❌ | ❌ | ✔ |
Azure 远程渲染 | ✔️* | ❌ | ❌ | ✔️* |
注意
- 目前,在使用旧版 WinRT API(Unity 中的 Windows XR 插件)的应用中支持 Azure 远程渲染。 即将推出对 OpenXR 应用的 ARR 支持。
后续步骤
下一个开发检查点
如果你遵循我们规划的针对 HoloLens 的 Unity 开发检查点历程,下一项任务就是完成我们的 HoloLens 2 教程系列。
否则,请继续安装正确的 Unity 版本,并使用你的第一个混合现实 Unity 项目进行设置: