HoloLens开发手记 - Unity development overview 使用Unity开发概述
Unity Technical Preview for HoloLens最新发行版为:Beta 24,发布于 09/07/2016
开始使用Unity开发HoloLens应用之前,确保你已经安装好了必要的工具,包括Unity HoloLens Technical Preview。Unity HoloLens Technical Preview是基于Unity 5.4 Beta版本来构建的,记得定期检查版本更新。
使用Unity是构建HoloLens全息应用最快的方式。推荐你花点时间来学习Unity入门教程,如果缺少资源素材,可以到Unity Asset Store获取。一旦你对Unity引擎有了基础的认知后,请访问 Holographic Academy 学习如何开发HoloLens应用。记得去Unity官方论坛获取最新的知识和解决方案。
Adding holographic capabilities and inputs 为应用添加全息能力和输入方式
标准的Unity对象组件可以直接使用,例如摄像机,摄像机的位置会随着人在世界中移动而自动更新。
可以通过Unity内置的API来为应用添加Windows Holographic支持的特性,比如手势识别和语音输入。
用于全息应用的核心特性以和其他Unity API一致的方式暴露给开发者使用:
- Camera 摄像头
- Gaze 凝视
- Gestures 手势
- Voice input 语音输入
- World anchor 空间锚
- Persistence 场景保持
- Spatial sound 空间声音
- Spatial mapping 空间映射
其他一些许多全息应用使用的特性也被暴露给Unity应用:
- Shared holographic experiences 场景共享
- Locatable camera 使用相机
- Focus point 焦点
- Tracking loss 追踪丢失
- Keyboard 键盘输入
Configuring a Unity project for HoloLens 配置Unity项目
对于HoloLens来讲,Unity只需要改动很少的项目配置即可,每个场景和每个项目都需要配置一遍。
Per Scene Settings 配置场景
Unity场景使用摄像头组件来处理头部追踪和实时渲染。我们不必自定义摄像头组件,只需要对系统组件配置一下即可。对于HoloLens来说,只需要做很少改动:
- 选中主摄像机 Main Camera
- 打开检视面板,将transform位置设为 0,0,0.这样用户头部就会从世界原点开始
- 将Clear Flags值改为 Solid Color
- 将Background color 改为RGBA 0,0,0,0
- 将Clipping Planes - Near值改为推荐值 0.85
如果你删除了主摄像机并新建了一个,请确保你的摄像机被标记为MainCamera
Per Project Settings 配置项目
对于需要使用HoloLens特定功能的应用,需要在项目清单里启用对应的能力。Unity里也可以启动应用能力,可以在Player Settings > Windows Store > Publishing Settings > Capabilities下设置。全息应用常用的API对应能力如下:
Capability | API's requiring capability |
---|---|
WebCam | PhotoCapture,VideoCapture |
SpatialPerception | SurfaceObserver, SpatialAnchor |
Microphone | VideoCapture, DictationRecognizer, GrammarRecognizer, and KeywordRecognizer |
picturesLibrary / videosLibrary / musicLibrary | PhotoCapture , VideoCapture |
此外还需要指定Unity项目导出平台为 Universal Windows Platform应用。
- 选中File > Build Settings...
- 从平台列表中选择 Windows Store
- 将SDK 设为 Universal 10
- 将Build Type 设为 D3D
因为对HoloLens来讲,高帧率很重要,所以我们要将项目画面质量设为fastest。
- 选中 Edit > Project Settings > Quality
- 在Windows Store图标下拉框下选中Fastest
最后,我们需要让Unity知道我们的应用是HoloLens全息应用而不是2D应用,所以需要把HoloLens加入到VR设备列表中。
- 打开Player Settings
- 选中 Settings for Windows Store 标签页
- 展开Other Settings
- 在Rendering部分,勾选Virtual Reality Supported单选框,并确认 Windows Holographic在Virtual Reality Devices列表中
Unity documents 参考文档
除了Windows开发者中心提供的文档以外,Unity也提供了针对Windows Holographic和HoloLens的安装文档。Unity提供的文档主要包括两部分:
- Unity 脚本参考
- 这部分文档包含了Unity提供的API的细节
- 可以从Unity编辑器Help > Scripting Reference菜单访问
- Unity手册
- 手册被设计来帮助我们学习如何使用Unity,从简单到高级技巧都有
- 可以从Unity编辑器Help > Manual菜单访问
转载于:https://www.cnblogs.com/mantgh/p/5685035.html
HoloLens开发手记 - Unity development overview 使用Unity开发概述相关推荐
- DTS北洋曳舞社网站开发手记
关于我的第一次WEB开发手记: 主页已经开发完成 跳转地址 www.study.shengjunli.com 版块: header: 二级菜单: 舞团纪实 舞团队员 曳舞教学 优秀视频 友谊社团 ...
- python中文开发文档_pydoc (Development Tools) – Python 中文开发手册
Python 中文开发手册 pydoc (Development Tools) - Python 中文开发手册 2.1版本中的新功能. 源代码: Lib / pydoc.py pydoc模块自动从Py ...
- HoloLens开发手记 - HoloLens shell概述 HoloLens shell overview
使用HoloLens时,shell是由你周围的世界和来自系统的全息图像构成.我们将这种空间成为混合世界(mixed world). shell包含了一个可以让你将全息图像和应用放置在世界中的开始菜单( ...
- Unity 2D独立开发手记(九):UGUI仿GTA地图系统
一直觉着GTA的小地图很方便,在地图上的图标能够实时反映出各种任务点.设施等的方位,那么我也仿照它的地图系统做一个简陋的. 还有,提前说一下,这篇文章面向至少用UGUI做过按钮点击事件的读者,因为一些 ...
- Unity 2D独立开发手记(五):通用任务系统
一年多没写博了,因为迫不得已转行,这破游戏也搁置了好久,过完年也有一个月了,回来找找感觉.那就记录一下任务系统的开发吧,方便以后回忆.(2022年3月注:文章中的任务系统太旧了,仅供思路参考,获取新版 ...
- HoloLens开发手记-配置开发环境 Install the tools
随着Build 2016开发者大会的结束,HoloLens开发包也正式开放下载.Hololens没有独立的SDK,开发特性被集成到最新的Visual Studio Update 2中.如果你没有Hol ...
- HoloLens开发手记-硬件细节 Hardware Detail
微软HoloLens是世界第一款完全无线缆的全息计算机.通过在新方式上赋予用户的全息体验,HoloLens重新定义了个人计算(Personal Computing).为了将3D全息图形固定到你周围的真 ...
- HoloLens开发手记-全息Hologram
全息 Hologram HoloLens使我们可以通过周边世界的光线和声音来创建全息场景和物体,使得它们像真实物体那样.全息场景能够响应你的凝视.手势和语音指令,同时还会和你周边世界的表面交互.借助全 ...
- Unity网络多玩家游戏开发教程(上册)
Unity网络多玩家游戏开发教程(上册) 试读文档下载地址:http://pan.baidu.com/s/1jGwwxam Unity作为强大的游戏开发平台,为网络游戏的的开发提供大量的组件和API. ...
最新文章
- 敏捷方法适合什么样的团队?
- 寒假与春节终归,新学期和新任务又至
- c++ 计算正弦的近似值_一篇文章搞懂正弦保真性
- 检验密码强度的JS类(from thin's blog)
- 论卢伟冰加入小米公司后的变化
- gitlab 删除分支_idea gitlab 分支 pull、push 实践笔记
- PHP设计模式——代理模式
- 企业微信api,企业微信sdk接口java调用源码
- 程序员为什么要写博客?怎么写博客?
- 谷歌卫星地图不同级别对应的比例尺、分辨率、视点高度
- LTE FDD 时频资源
- python使用matplotlib绘图 -- barChart
- 计算机脚本发生错误,我的电脑开机后显示当前页面的脚本发生错误?
- Pytorch入门学习(九)---detach()的作用(从GAN代码分析)
- C语言8.14文曲星上的猜数游戏
- Contect Me
- 英国易捷航空遭黑客入侵 约900万客户数据被窃取
- 力扣:121. 买卖股票的最佳时机 题解
- 2015年ACM长春区域赛比赛感悟
- 个人学习(解决)练习ssm框架遇到的问题No qualifying bean of type ‘service.BookTypeService‘ available: