欢迎光临散文网 会员登陆 & 注册

【Unity学习笔记】Introduction to XR VR, AR, and MR Foundations

2023-03-06 09:01 作者:菜肉四喜丸子  | 我要投稿

1. 用Google Cardboard开发VR游戏

1.1 什么是XR?

1.1.1 XR简介

主讲:Pete Patterson

课程准备:(1)有一定Unity开发经验;(2)可以运行Google Cardboard的手机(Google Cardboard:https://arvr.google.com/cardboard/);(3)Unity 2018.1或之后的版本

课程框架:(1)如何用Google Cardboard启动VR;(2)Google Cardboard诞生后的VR技术发展;(3)精灵宝可梦和其他AR游戏背后的技术;(4)XR的未来

1.1.2 什么是XR

虚拟现实创造出一个数字化环境,它替代了用户身处的实际世界环境。

增强现实将数字化内容叠加到用户身处的实际世界环境中。

混合现实是将用户身处的实际世界环境与数字化内容无缝混合的体验,两种环境可以共存并互动。

深度信息(depth information)允许实际世界与虚拟世界之间进行复杂互动。

1.2 练习:评估一款XR应用

1.2.1评估一款XR应用

选择一款现成的XR应用进行体验,并使用下列模板评估该应用。它可能是任何平台上的VR、AR或MR应用。它不一定有多流行或多重要——评估任何应用都能获得有价值的见解。

至少花10分钟和该应用互动并写下你的反应。这项练习将帮你了解让应用成功的原因,并且当你准备好创建自己的XR应用时,它会为你的开发和设计决策提供信息。

1.2.2 评估哪些内容?

·应用名称与平台-写下应用名称和你使用的平台。

·简介-用1、2个句子介绍该应用。

·目标受众-你认为该应用是为谁设计的?它是否成功满足了这些用户或受众的要求?

·XR实现-该应用属于XR、AR还是MR?如果是VR,它是6DOF(6自由度)还是3DOF(3自由度)?如果是AR或MR,它是手持式(例如iPhone app)还是可穿戴式(例如Hololens)?该应用是否利用了该平台的特定功能?

·支持技术-该应用还利用了其他什么技术(例如GPS、触觉反馈等),为什么它们很重要?

·应用优点-该应用的优点有哪些?

·有待改进的方面-您将如何改进该应用?

1.3 XR开发:输入、处理和输出

1.3.1 输入

惯性测量装置(IMUs)-传感器融合-CPU

理想情况下,VR的IMU和内耳感受器之间应该无时滞。

移动时间延迟(Motion to Photon Latency):头部移动和看到虚拟世界相应移动之间的时间。

IMU和触摸屏是XR需要的主要输入设备。

1.3.2 处理

GPU:图形处理单元

1.3.3 输出

桶形失真(Barrel Distortion)

枕形失真(Pincushion Distortion)

边缘失真(Edge Distortion)

1.4 挑战:XR应用创意

1.4.1 创意头脑风暴

·使用最适合你的媒体和表达形式(例如打字、在索引卡上手写、画草图、录音),通过头脑风暴提出6-10种XR应用。用尽可能少的词语/图像描述每种应用。你在这个练习上花费的时间不应少于30分钟。关于头脑风暴方法的灵感和指南,见https://www.ideou.com/pages/brainstorming。

·检查你的清单并快速划去糟糕或有问题的创意。至少划去半数创意。

·在剩下的创意中,选出3个你希望进一步开发的创意。

1.4.2 记录创意

对于选中的3个概念,在一份文档中填写下列信息:

·项目标题-给你的概念起一个简短的项目标题。

·XR类型和目标平台-决定这是VR、AR还是MR应用,以及你的目标平台是什么(例如,Google Cardboard、Oculus Rift、Hololens,等等)。

·简介-用1-2个描述性句子总结该应用。

·视觉参考- 绘制、粘贴图形,或者粘贴链接到你的应用的视觉参考中。这可能是用户界面的初始草图,为你提供灵感的应用或电影截屏,甚至是你心目中框架美工/APP图表的样子。任何有助于沟通应用视觉体验的东西都可以。

1.4.3 评估创意

花时间评估并打磨每个创意

·超越预期-项目概念清晰、易懂、有力、简洁。视觉参考为书面概念增加了重要细节或趣味。

·符合要求-项目概念完整充分。视觉参考明确呈现出概念并与之息息相关。

·不符合要求-项目概念不完整或过度模糊或一般化。视觉参考不能明显呈现概念或与之关系不明确。

如果你感觉你的创意不符合上述要求,请检查并重新定义它们,使之成为可行的创意。

2.1 从Google Cardboard到Google Earth中的VR

2.1.1 VR-奇妙年代

2.1.2 揭开VR的神秘面纱

站立式VR体验让用户可以在VR屏幕中四处走动。

坐式VR体验假设用户坐在椅子上,允许它们用控制器转动。

外向内追踪(Outside in tracking):机器视野镜头朝内看向用户

内向外追踪(Inside out tracking):镜头直接装在头戴式设备上

VR的安全问题

-晕动症(Motion sickness)

-控制器撞到东西或人

-绊到或磕到障碍物

2.2 设置Unity以便进行移动设备VR开发

2.2.1 下载Unity Hub

2.2.2 了解Unity Hub

2.2.3 安装Unity

2.2.4 设置开发环境(仅iOS)

2.2.5 设置开发环境(仅安卓)

设置-关于手机-Build number(按7次)

设置-开发者选项-Debugging and enable USB debugging

2.3 在你的设备上建立VR应用

2.3.1 创建新的Unity项目

2.3.2 安装TextMesh PRO以正确渲染教程项目中的文本

2.3.3 打开Unity中的虚拟现实支持功能

2.4 挑战:XR产品摘要

2.4.1 选择一个概念

2.4.2 增加概念文档的细节,写成一份产品摘要

·目标受众

·谁不是目标受众

·市场规模与销售渠道(可选)

·XR执行

·支持技术

·关键特征

2.4.3 评估你的产品摘要

 

(1)Edit>Project Settings>Player

(2)点击Android图标,打开安卓设置菜单

(3)点击XR Settings菜单,勾选“Virtual Reality Supported”

(4)点击空列表右下的加号,选择“Cardboard”

(5)确保“Stereo Rendering Method”设置为“Single Pass Multiview or Instanced”(安卓)

(6)对于安卓设备,需打开“Other Settings”菜单,确定Colar Space设为“Gamma”(许多手机不支持色彩空间),并将Package Name中的Company and Product Name改为有意义的字段(例如com.YourName.vrMuseum)。最后,将Minimum API Level设置为“Android 4.4' Kit Kat”(API Level 19)。

2.3.4 导入VR Museum资源包

2.3.5 打开并浏览VR博物馆场景

2.3.6 在你的设备上生成并运行VR博物馆应用

用USB线连接手机和电脑,并点击“Build and Run”,之后打开Cardboard浏览器体验。

2.4 浏览VR博物馆

2.4.1 运行VR博物馆应用并观察四周

2.4.2 激活立体模型上方的3DOF/6DOF开关并观察结果

2.4.3 激活明亮/昏暗开关并观察结果

2.4.4 激活活跃/安静开关并观察结果

2.4.5 激活延迟/平滑开关并观察结果

2.5 VR平台图景

2.5.1 手机VR平台

2.5.2 房间规模的VR平台

2.6 VR App生态系统

2.6.1 舒适度评级

2.6.2 VR App商店和360视频

2.6.3 VR App的类别


3. 准备好跟随宝可梦来一场心动之旅

3.1 机器视觉与空间计算

3.1.1 空间计算

3.1.2 MR与VR的区别

3.1.3 标记侦测与面部侦测

3.2 你桌子上有个机器人

3.2.1 Unity的AR库、SDK和API

3.2.2 安装Vuforia SDK

Edit>Project Settings>Player

在XR Settings菜单中点击Vuforia Augmented Reality

新版本Unity直接安装Vuforia Engine AR插件

3.2.3 在场景中加入Vuforia AR镜头

GameObject>Vuforia>AR Camera

删掉主镜头

3.2.4 生成Image Target

(1)在Vuforia developer portal上创建免费的开发者账户:http://developer.vuforia.com/vui/auth/register

(2)在网站上点击Develop>License Manager>Get Development Key。重命名为“ARLesson”。

(3)从其他资源标签下载压缩包,它包括你需要的资源。解压缩后,导入资源包。

(4)回到Vuforia网站,点击Develop>Target Manager>Add Database,重命名为“VuforiaLesson_Image Targets”。

(5)创建数据库后,点击并增加新目标。选择Single Image,浏览ImageTargetRobot.jpg,设置宽度为0.07米。命名为“Robot”。

(6)点击Download Database,然后点击Download for Unity Editor。导入资源包。

(7)回到Vuforia网站并浏览License Manager页面。点击“ARLesson”并复制许可证码。

(8)在Unity中,找到项目中的VuforiaConfiguration资源,并把许可证码贴到“App License Key”一栏中。

3.2.5 在场景中加入目标

(1)GameObject>Vuforia>Image

(2)使用“VuforiaLesson_ImageTargets”数据库设置目标,然后是“Robot”图像目标。

(3)加入RobotAnimated预制件作为图像目标的子对象。确保其local scale为1。

(4)将场景加入Build Settings并安装到设备上。

(5)打印ImageTargetRobot.jpg的实物图。当你运行应用程序时,只要将手机镜头对准该图像,一个3D机器人就将显示出来。

3.3 位置、位置、位置

3.3.1 现实是你创造出来的样子

3.3.2 位置是关键

几个支持Unity的地图网站:www.mapbox.com、google maps platform

3.3.3 AR的安全问题

4. 我的植入程序不能区别现实了

4.1 XR趋同

4.2 XR触觉学、硬件趋势与未来

4.2.1 你能感觉到我吗?

4.2.2 进一步了解触觉学

触觉系统网站https://www.3dsystems.com/haptics-devices/touch

VR locomotion treadmill

https://www.indiegogo.com/projects/jamie-hyneman-s-virtual-reality-electric-shoes-vr#/

https://taclim.cerevo.com/en/

4.2.3 神奇的飞跃

光场光子学:将允许AR中的虚拟物体存在于使用者视野中的任意深度

内向外追踪:使用头戴式设备前方的摄像头追踪

房间扫描与网格划分

姿势与手势追踪

6DOF控制器追踪

眼动追踪

视网膜凹式渲染:以高于周围区域的分辨率描绘使用者注视的区域

固定视网膜凹式渲染:以高于周围区域的分辨率描绘视野中心区域

语音识别与姿势识别

4.2.4 XR的未来

Lightweight Render Pipeline for VR(Unity的模块)

360度视频录像

第三方支持

4.3 练习:设计未来

4.3.1 指导说明

(1)研究最前沿的科技

选择本节介绍的一种未来XR技术或你感兴趣的另一种技术,最好和你自己的应用概念设计相关。花时间在网上研究这种技术,记笔记并总结最有用的网络资源链接

(2)起草研究总结

简短地总结你的研究。新建并上传文档。

(3)应用你的研究

重新打开之前完成的应用评估或产品简介,增加要素。

4.3.2 在自我评估

研究摘要

产品简介/应用评估更新

【Unity学习笔记】Introduction to XR VR, AR, and MR Foundations的评论 (共 条)

分享到微博请遵守国家法律