轩辕kuku
论坛版主
论坛版主
  • UID14
  • 粉丝6
  • 关注1
  • 发帖数78
  • 社区居民
  • 原创写手
阅读:1066回复:4

Vuforia5.5提供MixedRealityController for Unity支持AR/VR

楼主#
更多 发布于:2016-04-12 23:25
MixedRealityController 是一个支持ARVR开发的工具类,能够在场景中定义AR/VR模式,并在ARVR之间能够很轻松的过度。
MixedRealityController支持三种view模式和三种handheld模式(个人理解是头戴追踪和手持移动设备追踪),通过类提供的这写模式你能很轻松的在view模式设备和handheld设备之间切换。
六种模式对比图:

图片:11.png


MixedRealityController自动处理头戴设备和手指设备中ARVR之间切换的必要任务。它主要是使用TransitionManager.cs类。
主要作用:
1控制立体渲染
2视频背景渲染
3VR案例设备追踪
4设置目标Fps来优化数字眼睛设备App的性能
MixedRealityController 是一个单例类,暴露了一个方法来切换ARVR模式:
MixedRealityController.Instance.SetMode(MixedRealityController.Mode.VIEWER_VR);

混合现实模式涉及到一个枚举-MixedRealityController.Mode ,枚举中的每一项的属性都包含在了上面的那张表里。
从手持方式切换至观察模式
如果你的混合显示例子从手持模式开始,屏切换到观察模式,需要定义好观察类型,然后通过SetMode()来设置场景。如果观察者类型已经被定义在UnityEditor中,那这一步就已忽略。
MixedRealityController.Instance.SetViewerParameters(viewerParameters);

无论怎样,如果你的App开始是在手持模式中配置,那么久需要通过以下的方式来告诉它哪一种观察者被用:
MixedRealityController.Instance.SetViewerParameters(viewerParameters);

预先定义的Viewer变量能够通过Device单例类获取:
Device.Instance.GetViewerList();

查询和设置viewer:
// find all names in the viewer list:
IEnumerable<IViewerParameters> viewerParameters = Device.Instance.GetViewerList().GetAllViewers();
// set Cardboard v1 viewer: 
foreach (IViewerParameters vp in viewerParameters)
    if (vp.GetName().Equals("Cardboard v1"))
        MixedRealityController.Instance.SetViewerParameters(vp);
// now tell Vuforia that it's being put into the headset:
MixedRealityController.Instance.SetMode(MixedRealityController.Mode.VIEWER_AR);

通过MixedRealityController 很容易在沉浸式的VR应用中增加AR功能,你通过使用图片和目标物体来合并一些真实的物体到你的VR场景中。当你的应用从AR切换到VR,目标的姿态依然被保留在VR场景,依然能被追踪。
为了支持ARVR,你需要交替使用ARVR模式。建议用ROTATIONAL_VIEWER_AR 来初始化。在工程中设置 World Center Mode FIRST_TARGET SPECIFIC_TARGET中的任何一个。
MixedRealityController.Instance.SetMode(MixedRealityController.Mode.ROTATIONAL_VIEWER_AR);

一旦物体被检测并被追踪,你能切换到VR模式:
MixedRealityController.Instance.SetMode(MixedRealityController.Mode.VIEWER_VR);

提示:
1确保无力目标被按照正确的朝向放置
2让目标的底部与地面平行
3ARVR中使用同样的Camera属性
4用一些切换效果来遮挡ARVR模式中目标姿态的轻微的差异(ps:文章仅仅个人粗译,后面请冠希大神找个时间做个demo)

最新喜欢:

liugang121liugan... kingdong020543kingdo... 归海一啸归海一啸

欢迎分享

kingdong020543
管理员
管理员
  • UID6
  • 粉丝41
  • 关注2
  • 发帖数138
  • 社区居民
  • 忠实会员
  • 原创写手
沙发#
发布于:2016-04-12 23:30
沙发!
归海一啸
管理员
管理员
  • 社区居民
  • 最爱沙发
  • 忠实会员
  • 喜欢达人
  • 原创写手
板凳#
发布于:2016-04-12 23:35
bandeng
AR学院(www.arvrschool.com),从这里感触未来!
Csharp
侠客
侠客
  • UID179
  • 粉丝0
  • 关注1
  • 发帖数9
地板#
发布于:2016-04-13 09:23
小板凳
啄木鸟
侠客
侠客
  • UID1568
  • 粉丝0
  • 关注0
  • 发帖数25
4楼#
发布于:2016-05-30 11:19
我生成apk ,在android手机运行,结果黑屏是什么原因啊
游客

返回顶部