본문 바로가기
VR, AR, MR

MR 홀로렌즈의 spatial mapping

by Park Hyun Kook 2019. 2. 26.

Microsoft. Hololens



홀로렌즈의 특징 


1. 홀로렌즈에서 HUD(Head Up Display)부분은 다른 VR기기와 다르게 HUD에 영상을 투영하므로서 바깥 사물을 그대로 볼 수 있다.


2. 입체영상을 출력해주는 부분은 기존 VR기기와 원리가 동일하다.


3. 홀로렌즈를 특별하게 만들어주는 Spatial mapping. 실시간으로 주변 공간을 스캔한 후 삼각형 리스트로 만들어, 현재 사용자의 위치와 공간을 인식한다. 



Spatial mapping의 진행 방


SpatialSurfaceObserver 객체가 생성된다. 


SpatialSurfaceObserver의 GetObserveredSurfaces()에서 최초로 주변을 한번 스캔하며, SurfaceMesh를 가져온다.


SpatialSurfaceObserver::ObservedSurfacesChanged의 이벤트 Handler를 세팅해서, 특정 SurfaceMesh에 변화가 있을 때마다 GUID(Global Unique Identifer)와 mesh들 목록을 받아온다.


SurfaceMesh로부터 Vertex Buffer, Index Buffer를 얻을수 있으며, 여기서 시스템 메모리와 점 데이터와 삼각형 인덱스 데이터를 얻어온다.


받아온 점데이터와 삼각형 인덱스 데이터를 렌더링할지 안할지 정할 수 있다.


SurfaceMesh에 변경이 생겼다는 이벤트를 받으면, 스캔을 통해서 또다시 새로운 Vertex data, Index data의 갱신이 필요해진다.



Spatial-mapping 도식화




홀로렌즈 spatial mapping 영상


https://www.youtube.com/watch?v=zff2aQ1RaVo



홀로렌즈가 착용자에게 홀로그램을 보여주는 방법


홀로렌즈는 두개의 Light engine을 가지고 있으며, 초당 수백만번의 빛조각을 방출하여 홀로렌즈이 이미지를 만들고., 이 이미지는 투명 디스플레이에 반사되어 눈에 도착한다.


평판 디스플레이를 사용하는 VR과 크게 다른 점은 수정체에 도착하는 빛의 방향이 다양한 광장(Light Field)를 형성한다는 점이다. 이를 통해서 실제거리에 따른 초점 문제를 해결할 수 있다.







reference

https://spri.kr/posts/view/15880?code=column

 

'VR, AR, MR' 카테고리의 다른 글

유니티 오큘러스 GO 연동, 빌드하기  (0) 2019.11.27

댓글