ARKit-交互設計指南

翻譯自https://developer.apple.com/ios/human-interface-guidelines/technologies/augmented-reality/

應用可以使用Apple的AR技術也就是ARKit來創(chuàng)建沉浸的參與感強的體驗就好像把擬真的虛擬物體和真實的世界融合在一起折汞。在AR的應用中介蛉,設備的攝像頭用來呈現一個栩栩如生的在屏幕上的物理世界昭齐。3D虛擬物體疊加在畫面上,造成他們確實存在的假象峦萎,用戶可以旋轉他們的設備來從不同的角度觀察這些物體,然后再合適的體驗下革半,用手勢或者動作與他們交互

設計一個吸引人的體驗

用完整的顯示來吸引人們丛晦。利用盡可能多的屏幕來觀察體驗真實的世界以及你的應用中的虛擬物體,防止因為控制或者信息分割你的屏幕而降低體驗的沉浸感

放置擬真的物體時創(chuàng)造令人信服的假象涩馆。并不是所有的AR體驗都要擬真的虛擬物體行施。那些需要的,需要融入那個他們被放置的物理環(huán)境。為了最好的效果魂那,設計一些具有和平常生活相近紋理細節(jié)的3D素材蛾号,然后把他們放在ARKit檢測出來的真實世界的平面上,把物體調整到合適的大小涯雅,給虛擬物體添加環(huán)境光源的放射鲜结,把虛擬物體的影子打到真實世界的平面上,并且隨著攝像頭位置的變化更新顯示效果

考慮物理限制。牢記人們可能嘗試在一個并不理想的環(huán)境下使用的你的應用精刷。比如說拗胜,他們可能在一個空間很小沒有什么可以移動的空火箭或者沒有什么比較大的平坦的表面區(qū)域的地方打開你的應用。嘗試添加一些情節(jié)去防止這些挑戰(zhàn)怒允,清晰的吧要求或者預期在一開始告訴使用者埂软。考慮添加多樣的功能設置讓用戶在不同的環(huán)境下使用

考慮用戶的舒適度纫事。讓用戶長時間在特定距離或者角度拿著設備可能很痛苦仰美。考慮一下用戶用你的應用時是怎么拿設備的儿礼,然后設計一個不會造成不舒適的有趣的體驗咖杂。比如說你可以把物體放置在一個合適的距離,不需要用戶走近蚊夫。游戲可以設計的關卡短一些诉字,在間隔時間也短一些

如果你的應用鼓勵用戶運動,循序漸進的介紹他知纷。比如說在游戲中壤圃,用戶不應該在一進入到AR里面就要移開去躲避一個虛擬的炸彈。首先應該給他們時間去適應整個體驗琅轧,然后再慢慢的鼓勵他們動起來

考慮用戶的安全伍绳。移動的太多可能會很危險,假如旁邊有人或者什么東西乍桂〕迳保考慮一些方法使你的應用可以安全的運作。比如游戲可以杜絕一些突然的大幅度的動作

使用音頻和觸覺的反饋來增強整個沉浸的體驗睹酌。一個音效或者凹凸感是一個很好的方式去確認一個虛擬的物體碰到了實際的表面或者其他虛擬的物體权谁。在一個沉浸的游戲中,背景音樂可以讓用戶沉浸在整個虛擬的世界當中

good hint
good hint
bad hint
bad hint

對于一些拓展可能性憋沿,把線索放到內容當中旺芽。比如說放置一個3D旋轉的標示在物體周圍比在物體下面用文字添加介紹直觀很多。當然在表面檢測之前或者用戶沒有對提示做出反應的時候辐啄,疊加的信息更有保障

如果你必須顯示介紹的文字采章,使用平易近人一些的語句。AR對于很多用戶來說可能是比較高級的內容會被嚇到壶辜。杜絕使用一些技術開發(fā)性的詞匯比如說ARKit悯舟,世界檢測,追蹤會使體驗更易于接受士复。用一些友善的對話式的可以讓大多數用戶理解

好的提示 不好的提示
找不到表面图谷。嘗試移動到邊上或者重新放置你的手機 找不到平面翩活。調整追蹤
點擊一個位置放置物體 點擊一個平面錨定物體
打開更多的燈然后再周圍移動一下 沒有足夠的特征點
慢一些移動你的手機 檢測到過度的移動

在AR體驗中避免不必要的中斷阱洪。環(huán)境分析和平面檢測會在每次用戶退出和進入AR時進行便贵。更多的是,手機和攝像頭的位置很可能發(fā)生了改變冗荸。結果承璃,之前放置的物體有可能被重新放置到其他位置--甚至由于重置了真實世界的表面,他們可能都不見了蚌本。讓用戶改變設置和改變物體時在AR內進行是一個比較好的方式盔粹。比如說,一個用戶在他的起居室放置了一個他們想買的椅子程癌,他們可能會向嘗試其他樣式

進入AR

enter
enter

當初始化正在進行中的時候給出提示舷嗡。每次進入AR都會啟動一個初始化的進程,會計算周圍的環(huán)境嵌莉。這個過程可能持續(xù)幾秒鐘进萄。為了減少可能的疑惑并且加速這個流程,在初始化過程中給出一個提示锐峭,鼓勵用戶探索周圍的環(huán)境或者尋找一個平面

放置虛擬物體

Surface detection indicator
Surface detection indicator
Object placement indicator
Object placement indicator
App-specific indicator
App-specific indicator

幫助用戶理解什么時候確定表面的位置放置一個物體中鼠。一個可視的提示是一個很好的方式去告訴這個表面目標模式是激活的。一個梯形網線在屏幕中央幫助人們理解他們要找一個水平的表面沿癞。一旦這個平面被選中了援雇,這個提示要變化樣式去告訴這個地方是可以放置物體的了,如何設計提示是你的應用體驗的一部分

當用戶放置了物體的時候給合適的反饋椎扬。在表面檢測的過程中準確度一直在改善惫搏。如果用戶點擊屏幕放置一個物體,立即用目前可以用的信息放置這個物體蚕涤。然后當平面檢測完成的時候再優(yōu)化這個物體的位置晶府。加入一個物體超出了檢測的平面邊界,輕輕的把這個物體推回表面

杜絕精確地把物體放置在檢測的表面邊緣钻趋。在AR中川陆,表面邊界可能隨著用戶的周圍環(huán)境的進一步分析而改變

用戶與虛擬物體的交互

right
right
wrong
wrong

傾向于直接的操作而不是獨立的屏幕上的控制鍵。用戶可以直接觸摸屏幕上的物體和他交互是更加具有沉浸感和直觀的相對于屏幕上獨立的控制按鍵蛮位。盡管你應該記住直接的操作有時會造成困惑或者很困難當用戶移動到周圍

允許用戶勇士標準熟悉的手勢與虛擬的物體進行交互较沪。比如說用一個手指移動物體,用兩個手指旋轉縮放物體

一般來說失仁,保持交互簡單尸曼。觸摸手勢是2維的,但是AR體驗是3維的萄焦】亟危可以通過下面的方式簡化用戶與虛擬物體的交互

把物體的移動限制在二維的表面

Limit movement
Limit movement

把物體的旋轉限制在一個軸

Limit rotation
Limit rotation

在與虛擬物體合適的交互范圍內響應手勢冤竹。對于用戶來說精準對一些小的細的物體進行交互或者把他放到一個位置是很困難的。所以當你的應用在一個可以交互的物體旁邊檢測到了手勢茬射,通常來說認為用戶想與這個物體進行交互

考慮是否需要對用戶創(chuàng)建的物體進行縮放鹦蠕。縮放在一些沒有固定的大小的物體而且用戶可能想要放大縮小他比如說玩具或者游戲人物上門是合適的在抛。對于一些在實際中有固定大小的的物體比如說一件家具钟病,如果要把他當在一個準確的尺寸下,縮放是沒有必要的刚梭〕澹縮放不是用來調整物體的距離的--想要通過把一個物體放大來使它看起來更近只會變成在比較遠的地方有一個大物體

注意潛在的手勢沖突。雙指的縮放手勢和雙指的旋轉手勢很接近朴读。如果你用了兩個相近的手勢屹徘,一定要測試你的應用保證他的交互是合適的

確保虛擬物體的移動是平緩的。物體不要出現跳動當用戶調整他們的時候

探索更多吸引人的交互方法衅金。手勢不是用戶與虛擬物體交互的唯一的方式噪伊。你的應用可以用其他元素,比如說運動和近似度把這些內容帶進生活典挑。一個游戲人物可以吧頭朝向用戶當用戶走向他的時候

處理問題

允許用戶重置當沒有達到他們預期的時候酥宴。不要強制用戶等待條件改善或者艱難的處理物體的放置。給他們一個方式去重新啟動看看有沒有更好的效果

right
right
wrong
wrong

在問題發(fā)生時給出建議的解決方式您觉。分析用戶的環(huán)境和平面檢測失敗可能有很多的原因--沒有足夠的光拙寡,平面反射太嚴重,平面細節(jié)太少琳水,或者攝像頭移動過度肆糕。如果你的應用檢測到了這些給出解決這些問題的建議

問題 解決建議
沒有檢測到足夠的特征點 試著打開更多的燈然后再周圍走一下
檢測到過度的移動 試著慢一些移動你的手機
表面檢測花了過長的時間 試著移動到周圍,打開更多的燈在孝,確保你的手機對著一個有足夠多紋理的平面

只給合適的設備提供AR功能诚啃。如果你的應用的主要目的是AR,確保你的醫(yī)用只在支持ARKit的設備上可以使用私沮。如果你是把AR作為輔助功能始赎。比如家具商品,其中包括產品圖片仔燕,并且可以讓用戶在AR中查看一些產品造垛,如果用戶的設備不支持AR但是嘗試使用AR功能,請避免彈出錯誤提示晰搀。如果不支持ARKit就直接不要給用戶顯示可以選的AR功能五辽。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市外恕,隨后出現的幾起案子杆逗,更是在濱河造成了極大的恐慌乡翅,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件罪郊,死亡現場離奇詭異蠕蚜,居然都是意外死亡,警方通過查閱死者的電腦和手機排龄,發(fā)現死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進店門波势,熙熙樓的掌柜王于貴愁眉苦臉地迎上來翎朱,“玉大人橄维,你說我怎么就攤上這事∷┣” “怎么了争舞?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長澈灼。 經常有香客問我竞川,道長,這世上最難降的妖魔是什么叁熔? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任委乌,我火速辦了婚禮,結果婚禮上荣回,老公的妹妹穿的比我還像新娘遭贸。我一直安慰自己,他們只是感情好心软,可當我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布壕吹。 她就那樣靜靜地躺著,像睡著了一般删铃。 火紅的嫁衣襯著肌膚如雪耳贬。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天猎唁,我揣著相機與錄音咒劲,去河邊找鬼。 笑死诫隅,一個胖子當著我的面吹牛腐魂,可吹牛的內容都是我干的。 我是一名探鬼主播阎肝,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼挤渔,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了风题?” 一聲冷哼從身側響起判导,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤嫉父,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后眼刃,有當地人在樹林里發(fā)現了一具尸體绕辖,經...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年擂红,在試婚紗的時候發(fā)現自己被綠了仪际。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡昵骤,死狀恐怖树碱,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情变秦,我是刑警寧澤成榜,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站蹦玫,受9級特大地震影響赎婚,放射性物質發(fā)生泄漏。R本人自食惡果不足惜樱溉,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一挣输、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧福贞,春花似錦撩嚼、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至肠套,卻和暖如春舰涌,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背你稚。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工瓷耙, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人刁赖。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓搁痛,卻偏偏與公主長得像,于是被迫代替她去往敵國和親宇弛。 傳聞我的和親對象是個殘疾皇子鸡典,可洞房花燭夜當晚...
    茶點故事閱讀 42,916評論 2 344

推薦閱讀更多精彩內容