在《使用ARCore創建新型用戶交互體驗》系列文章的第一篇中,我們分享了一些充滿創意的想法,教你如何使用光照估計這樣的功能來實現新型用戶交互和游戲體驗。第二篇文章中,我們將分享更多使用案例,讓你了解如何使用ARCore的即時預覽和運動跟蹤功能。
你能想象在AR中玩“抽積木”游戲嗎?如果你不了解這個游戲,這里簡單介紹一下,它的玩法是通過從積木塔中移走積木然后放到塔頂,從而逐漸把積木塔搭得更高。在本文中,我們將分享一些更為實用的方法,包括使用ARCore的運動跟蹤功能來構建手持式AR游戲“抽積木”,或是使用AR會話暫停功能,幫助ARCore應用在失去焦點時,保持用戶的參與度。
運動跟蹤和距離判斷
使用運動跟蹤功能,你可以實現非常多的效果,包括:基于設備位置和朝向觸發動畫,以及基于設備與數字對象之間的距離把設備用作物理保險杠。“
抽積木”便是一個應用AR距離檢測的有趣案例。通過使用設備和數字積木塔之間的距離信息,你可以在積木塔周圍移動,尋找要移動的積木,然后使用簡單而熟悉的手勢操作移動積木,將它放到塔頂。
這是一個非常有趣的ARCore體驗,在案例中,你將通過使用熟悉而簡單的操作直接控制數字對象,例如:在屏幕上按住積木來握住它,然后移動設備尋找到合適位置后,松開手指來放下積木。基于距離和運動跟蹤的用戶交互功能將繼續在手持式AR的同類功能中扮演重要角色。
暫停AR會話
usingSystem.Collections;
usingSystem.Collections.Generic;
usingUnityEngine;
usingGoogleARCore;
publicclassPauseAR:MonoBehaviour
{
publicARCoreSessionSessionController;
privateboolm_sessionPaused=false;
publicvoidTooglePauseMode()
{
if(SessionController==null)
{
return;
}
SessionController.enabled=m_sessionPaused;
m_sessionPaused=!m_sessionPaused;
}
}
AR應用的暫停功能不僅能讓用戶稍作休息。這個功能還有其它值得一提的用處,例如在單個設備的多人游戲中,它能在回合之間暫停會話,或是讓用戶在使用AR應用時接聽電話,而不丟失接電話前應用中的信息。
AR活動已經暫停,在屏幕上出現了UI,在結束暫停后平面和花朵又回來了
需要注意暫停是臨時的,如果用戶移動得太遠,使應用無法重新找到原有平面或特征點的話,AR中的物品或許會在暫停后丟失。
即時預覽
ARCore v1.1.0 for Unity中新增了即時預覽(Instant preview)功能。它僅可以在Unity中使用,當你在Unity中構建項目時,這個工具能允許你跳過構建過程,直接在ARCore支持設備上測試對AR應用的改動。這將把流程時間從數分鐘縮短為幾毫秒,從而讓你近乎實時地在Unity編輯器中進行迭代、檢查對象狀態,調試錯誤,并查看對象的位置和大小比例。
開發人員直接在Unity中對比現實世界中的畫面,從而更好測試和迭代對象材質
即時預覽功能先已上線,在ARCore v1.1.0 for Unity中默認使用,歡迎開發者們使用體驗!
-
Ar
+關注
關注
24文章
5108瀏覽量
170168 -
運動跟蹤
+關注
關注
0文章
7瀏覽量
6455
原文標題:使用ARCore創建新型用戶交互體驗
文章出處:【微信號:WW_CGQJS,微信公眾號:傳感器技術】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論