要开始使用Unity创建全息应用,点此安装包含Unity HoloLens技术预览的开发工具。Unity HoloLens技术预览基于Unity 5.4 Beta,请定期保持更新。
构建全息应用最快捷的途径就是使用Unity。我们推荐您花费一些时间查阅 Unity 教程。如果你需要资源,Unity内置了内容丰富的Asset Store。一旦建立了对Unity最基础的认识,你就可以浏览Holographic Academy 以学习使用Unity开发全息应用的细节。希望你能够浏览Unity HoloLens forums 以参与使用Unity创建全息应用的社区活动中,并能够在其中找寻你在开发中遇到的问题。
本文内容
- 1 添加全息特性和输入
- 2 为HoloLens配置Unity项目
- 2.1 每个场景(Scene)的设置
- 2.2 每个项目(Project)的设置
- 3 Unity 开发文档
- 4 了解更多
添加全息特性和输入
标准Unity game objects(比如相机camera)对全息应用仍然适用,当用户的头部在空间中移动时,相机(camera)的位置将会自动更新。
Windows全息特性如手势和语音输入,已经内置进Unity中,开发者可以使用API调用这些特性。
以下列出了构建全息应用的核心模块,它们就像其他Unity API一样:
- 相机
- 凝视
- 手势
- 语音输入
- 空间锚
- 存留(Persistence)
- 空间音响(Spatial sound)
- 空间映射(Spatial mapping)
以下是众多全息应用需要的其他关键特性,它们也被暴露给Unity应用:
- 共享全息体验
- 定位相机
- 焦点
- 追踪损失
- 键盘
为HoloLens配置Unity项目
有部分Unity设置需要为HoloLens改变,这些设置被分为两类:每个场景(per-scene)和每个项目(per-project)
每个场景设置(Per Scene Settings)
Settings for a holographic camera
为全息相机的设置
Unity相机部件(The Unity Camera component)处理头部跟踪和立体渲染。我们不需要为了达到这个目的而使用一个特定相机代替它。为了Unity相机部件能够作为一个全息相机工作,将有部分设置需要改变。
- 在 Hierarchy中, 选择 Main Camera
- 在 Inspector 面板中, 设置Transform中的 position 为 0, 0, 0 ,这样使用者的头部位置就在Unity的世界原点(Unity world origin)。
- 设置 Clear Flags 为 Solid Color.
- 设置 Background 的颜色为 RGBA 0,0,0,0。在HoloLens中,黑色被渲染为透明。
- 设置 Clipping Planes - Near 为 HoloLens推荐的 0.85 (米)。
如果你希望删除或者创建一个新相机(camera),确保你的相机被标记为MainCamera。
关于全息渲染的更多细节,请参阅渲染。
每个项目设置(Per Project Settings)
为了发挥应用在HoloLens平台上的特性,我们需要在它的清单(manifest)中声明一些功能(capabilities)。在Unity中的清单声明,将使他们包括在以后的每一次项目导出中。你可以在Player Settings > Windows Store > Publishing Settings > Capabilities找到这些设置。以下是开启全息应用常用API的功能列表:
功能 | API要求功能 |
网络摄像机 | 图像和视频捕获 |
空间感知 | 表面观测和空间锚 |
麦克风 | 视频捕获,语音命令识别,语法识别和关键字识别 |
图片库/视频库/音乐库 | 图像和视频捕获 (分别为静态图片,视频,音频) |
我们还需要指定Unity项目作为通用应用(Universal Windows Platform app)输出。.
- 选择 File > Build Settings...
- 在平台列表中选择 Windows Store
- 设置 SDK 为 Universal 10
- 设置 Build Type 为 D3D.
由于在HoloLens上保持高帧速是很重要的,所以我们将输出质量(Unity QualitySettings)设置为Fastest。
- 选择 Edit > Project Settings > Quality
- 在Windows Store 标志下点击 下拉按钮 并选择Fastest. 当你看到Windows Store所在列和Fastest所在行变绿,就代表你设置正确了。
Unity QualitySettings
最后,我们需要让Unity知道,将要输出的应用是全息视图而非2D视图。我们必须添加HoloLens作为虚拟设备。
- 在 Build Settings... 窗口, 打开 Player Settings...
- 选择 Settings for Windows Store 选项卡。
- 展开 Other Settings
- 在 Rendering 部分, 选中 Virtual Reality Supported 复选框,添加一个 Virtual Reality Devices 列表,并确保 "Windows Holographic" 作为一个支持的设备列于其中。
Unity文档
除了在Windows Dev Center中的这些文档可供参考,Unity也随Unity编辑器安装了Windows全息和HoloLens功能的相关文档。Unity提供的文档包括以下两部分:
- Unity 脚本参考
- 这部分文档包含了Unity提供的API相关细节。
- 我们可以通过 Help > Scripting Reference查看它们
2. Unity 手册
- 该手册是为了帮助你由浅入深地学习Unity.
- 我们可以通过 Help > Manual查看它们
了解更多
- Holograms 100
- Recommended settings for Unity
- Performance recommendations for Unity
- Exporting and building a Unity Visual Studio solution
- Using the Windows namespace with Unity apps for HoloLens
- Best practices for working with Unity and Visual Studio