使用Map Box SDK 製作多人AR體驗
蘿蔔醬
嗶嗶嗶,翻得不好不要逼逼
作者
Adam Debreczeni
Map box 工程師
GIF
目前來說,大多AR體驗,都是只能單人體驗,這是有原因的。
讓多個用戶實時地進行交互和協作是一項重大的技術和設計挑戰。
目前的設備無法理解它周圍的環境,只能探測到基本的平面,也不知道其他設備的位置。
每次你啟動一個AR Session,一切都會重置。
這些都是大問題。
我一直覺得,最具影響力的工具讓人們可以合作和分享想法。
加入Mapbox之後,我想解決這個問題。
我們的團隊已經用Map SDK 的Unity SDK創建了第一個多用戶的AR體驗。
幾年前,如果你想和朋友一起旅行,你會鋪開一張紙質地圖。
當你在地圖上畫上路線,你能感受到那種討論和通過手來互動的感覺。
我們的一生都在訓練我們的手去接觸現實世界,我們不想在為AR設計UI時放棄那些天生的交互方式
我們希望這段經歷能讓你立刻感到熟悉,就像拿起一個高亮筆,然後標註地圖。
這就給我們帶來了一些具有挑戰性的設計探索:
與朋友實時注釋數字地圖會是什麼樣子?
與朋友實時注釋數字地圖會是什麼樣子?
如果你在一起,你如何擁有不止一種輸入設備?
如果你在一個不同的城市,你如何分享你的兩個屏幕?
如何在平面的平面上處理2D注釋工具的局限性?
你的大拇指很難精確。
蘋果的ARKit和谷歌的ARCore使得人們可以在日常設備上創建AR體驗,並將其分發給數十億人。
然而,他們的粗糙追蹤是我們演示的協作性方面的一大障礙。
我們的解決方案是讓設備報告他們檢測到哪個平面。
通過使用所選平面的距離、角度和位置,我們可以建立一個設備相對位置的3D模型。
當我們在設備之間分享這些數據時,他們知道彼此之間的相對位置。
我們使用Map SDK來將設備的3D模型對應到地圖上。
通過使用SDK,我們投射地圖,並展示玩家(由宇航員代表)可以觀察的興趣點。
GIF
當我們在手機上進行演示時,我們可以在AR體驗這個體驗。
由於通信是由伺服器處理的,所以這個演示也適用於在不同地方的兩個用戶進行溝通的場景
通過ARKit和ARCore,這款設備既是屏幕又是控制器。
要想在地圖上選擇點興趣點,點擊屏幕上相應的位置就可以了。這讓我們覺得很直觀。
把這個在平面上的點擊像激光筆一樣投射到3D環境中,叫做「Ray-casting」。
通常來說,當有一個精確的控制器時,這種方法能很好地工作,但通過手指操作卻沒有同樣的精確度。
我們通過投射一個根據距離調整的錐面來擴展Ray-Casting 的區域,而不是投射固定大小的光線。
這樣一來,當一個虛擬物體離目標離得近時就能精確的選中。
「吶,做 AR VR,最重要的就是開心啦」
夢想重要,開心也重要
當你有有趣的想法時,也要來AR醬上
和我們一起分享啊
關注一下好不好


TAG:AR醬 |