如何把設(shè)計元素應(yīng)用到MR混合現(xiàn)實場景中呢?

認識Fluent Design后,開發(fā)者如何把這些設(shè)計元素應(yīng)用到場景實現(xiàn)中呢?微軟的設(shè)計團隊為大家提供了快速的集成的選項,即開源項目MR Design Labs。

MR Design Labs是一套豐富的Unity prefab組件,主要分為5類:

  1. 可交互對象(Interactable Object)
  2. 應(yīng)用欄和邊框盒(App Bar & Bounding Box)
  3. 對象集合(Object Collection)
  4. 提示框(Dialog)
  5. 進度組件(Progress)

可交互對象(Interactable Object)

可交互對象對于混合現(xiàn)實場景而言,用戶具有很多種輸入方式,包括手勢Gesture、視線Gaze、語音Voice、手柄和鍵盤鼠標等,如此多的輸入方式需要我們能夠?qū)χС痔幚硭麄???山换ο蠼M件就為我們提供了對所有輸入設(shè)備的統(tǒng)一處理,開發(fā)者不必自己花費大量經(jīng)歷自己實現(xiàn)。開發(fā)者基于此類組件可以實現(xiàn)從普通按鈕、燈光高亮按鈕再到具有動畫響應(yīng)的按鈕或?qū)ο?,提供良好的交互體驗。

應(yīng)用欄和邊框盒(App Bar & Bounding Box)

應(yīng)用欄和邊框盒對于2D場景而言,很少會直接對3D內(nèi)容進行縮放拖拽處理,但這在混合現(xiàn)實場景中是很常見的操作。因此,MR Design Labs直接為開發(fā)者提供了一套標準的操作組件,可快速的為全息物體集成標準縮放控制行為的實現(xiàn)。

對象集合(Object Collection)

對象集合排列UI元素同樣是場景的內(nèi)容展現(xiàn)形式,對于2D屏幕而言,因為只是平面排列,并無太多挑戰(zhàn)。但是對于在3D空間展開的混合現(xiàn)實內(nèi)容而言,對象集合的排列則具有更豐富的形式。MR Design Labs中提供了四類常見的集合排列方式,包括平面排列、柱狀排列、球形排列以及散列集合。柱狀排列可以充分利用用戶左右視角,球形排列可以充分利用上下左右360度的視野空間,散列集合則適合在空間中展示豐富的離散信息。

提示框(Dialog)

提示框?qū)τ陂_發(fā)者而言,同樣是非常熟悉的UI元素了,它總是呈現(xiàn)在2D內(nèi)容的最頂層。但是對于全息場景而言,我們無法讓提示框呈現(xiàn)在人眼最頂層,因為視錐最近距離的限制。因此,這類組件在項目中也做了封裝,開發(fā)者直接使用即可獲得空間定位良好能夠跟隨視野移動的標準提示框,避免自己再去實現(xiàn)的挑戰(zhàn)。

進度組件(Progress)

進度組件類似于對話框組件,進度條同樣是常用的UI元素,面臨類似。因此,項目同樣對它進行了封裝,它可以在真實世界中良好的定位,而且可以選擇進度條和動畫的不同類型,非常的實用。