空间映射 (Spatial mapping) 是将真实世界对象映射到虚拟世界的过程。这是为 Windows Holographic 应用程序提供更出色的真实世界交互体验的好方法。
HoloLens 设备不断扫描周围环境,并根据新传感器数据优化对世界的理解。更新将频繁进行以便捕捉到环境变化,例如有人出入房间或开关门。世界映射数据集保存到设备上,并且将在多个应用程序之间以及设备重新启动后持续保留。
透明、黑色和反射表面在很大程度上对设备不可见。如果设备无法检测到某些内容,则通常会在空间映射数据中留下一个空洞。对于设备尚未看到或未能看到的世界部分,也是如此。例如,未观察到的房间将不存在任何数据。
设备的世界映射被切割成常规大小的块,称为__表面。系统以一种对自身而言非常方便的方式在世界中定位__表面。无法保证系统会以任何特定方向排列__表面__,而表面也可能与给定的真实世界空间(例如房间)不正确地相交。为某个__表面__生成的数据会与相邻的__表面__轻微重叠。
请注意,不存在与任何__表面__数据相关联的语义或解释。系统不知道也无法报告__表面__上是什么。
例如:系统无法分辨出桌子上的斑点是一个杯子,也不能判断房间中间的模糊椅子状物体到底是什么。系统仅根据自身对世界的理解(使用传感输入数据构建对世界的认知)报告该区域中几何体的配置。
You access spatial mapping data through a SurfaceObserver. This is a volume describing a view into the system’s spatial mapping world. A SurfaceObserver can report on the set of Surfaces it intersects with that have been added, changed, or removed. This is the main API point for working with spatial mapping data.
您需要了解以下问题。它们取决于系统的工作方式。
1.空间映射数据量可能非常庞大,因此会在可扩展性方面带来挑战。 2.在房间内快速移动的物体或人可能会使数据非常不规则。 3.数据中的空洞有时会导致问题,特别是出于设计原因需要连续数据时。
请参阅 Microsoft 关于空间映射 (Spatial mapping) 的文档以进一步了解空间映射概念。