World Locking Tools for Unity (一)指南部分

World Locking Tools for Unity

前言

本系列主要翻译自Microsoft的官方文档,我简要了解了其原理,整理了介绍框架.

World Lock: 本文暂时翻译成"世界锁定",意思是(将虚拟空间与)现实世界锁定

介绍

World Locking Tools for Unity提供了一个稳定可靠的世界锁定坐标系统.
World Locking Tools减轻了开发者将全息图绑定到物理世界的负担,并支持从前无法实现的场景.它目前通过Unity内置VR
兼容Hololens系列设备.还可以通过Unity的新XR SDK插件系统对其他平台提供初始支持.
WLT将应用中的整个全息图锁定到物理世界.相对于物理世界特征的位置放置的全息图将相对于这些特征保持固定,同时也对其他全息图保持固定.
WLT可以根据场景的大小和复杂性自然缩放.大型模型,大型模型集合和多房间环境都得到了优雅的处理.
WLT的入门非常简单,只需将prefab拖动到Unity场景即可.
然而,了解WLT的Unity层所执行的工作,以及底层的Frozen World引擎,即有帮助又有教育意义.

目标

这篇文章的首要目标是解释WLT是做什么的.这有助于界定它可以解决哪些问题.

WLT核心的数字运算优化实现为一个C风格的DLL.一个C# shim用于从Unity脚本直接连接到WLT引擎.

WLT的Unity层充当了一个代理程序,执行多数基于Unity的程序在管理FrozenWolrd引擎时需要执行的任务.共享此引擎线束(engine harness)可以避免每个应用开发者重复实现基本相同的控制结构.

对于少数有特殊要求的应用程序,WLT的Unity层充当构建引擎自定义线束的示例框架.理解所提供的脚手架(scaffolding)正在做什么对于修改它或者实现它的变种是必要的.

大量的自定义线束是可行的,甚至不需要修改代码.理解WLT在做什么以及自定义属性,有助于微调(fine tuning)WLT支持特殊应用.

最后,当出现问题时,了解WLT有助于缩小系统故障的范围,提供有用的错误报告,并创建迂回的解决方案(workaround).

入门之前

Unity的WLT提供了一个非常强大的API,用于对其提供的服务进行精确控制.乍一看,它可能具有相当压倒性的优势.
WLT经过精心设计,可以通过简单的拖放界面处理绝大多数使用情况.如本文所述,对场景进行一些轻微的修改,应用程序是世界锁定且无定位点(anchor)的.
有两种情况,开发人员需要针对WLT APIs进行额外编码.
一.开发人员想定制客户的体验,特别在特殊情况下,例如丢失跟踪.在"处理异常情况"中描述了此类定制形为.
二.开发人员的应用程序因为执行服务需要额外的输入.例如,为了以所需的方式将坐标系与物理世界要素对齐,必须指示坐标系的对齐方式.这种额外的输入以虚拟和"跟踪空间姿势"对的形式出现.

要获得最常用的功能仅需要最少设置,无需编码.当然WLT中也有大量API界面和未来拓展性.

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值