WebVR Lab 的核心互動功能

VR 實驗室

查看研究室

網站設計人員很熟悉回應式設計的概念,也就是建立可在各種裝置上運作的網站,例如手機、平板電腦和電腦,以及不同的螢幕解析度和像素比例。WebVR 針對回應式設計帶來更多挑戰。

我們可以根據兩項指標 (沉浸式程度和輸入程度) 將 WebVR 體驗分類。這些層級是依據「自由程度」(DOF) 區分。6 DOF 是指追蹤位置和方向,3 DOF 僅用於追蹤方向和 0 DOF 軌道,兩者都不會追蹤位置和方向。

沈浸式

  • 沒有 VR - 裝設螢幕或行動裝置。
  • Stationary VR:支援 3DOF 追蹤的裝置。
  • Seated VR:6 個 DOF 追蹤,但顯示位置和角度有限。
  • Room Scale VR - 提供房間大小的 6 DOF 追蹤技術。

輸入層級

  • 0 DOF:唯一輸入的內容為點選或輕觸。這種輸入法與使用者面對的方向相關聯。我們有時會把這個例子稱為「凝視控制器」。
  • 3 DOF - 追蹤方向的控制器可像雷射指標一樣使用,以指定方向或位置。控制器位置是根據使用者的觀點估算而得。其中包括 Daydream 控制器。
  • 6 DOF - 追蹤其位置和方向的控制器。這可在 VR 中仔細模擬手部。

如您所見,單一應用程式可能會支援非 VR 行動裝置螢幕的任何功能,只要按一下滑鼠,就能完整追蹤兩個全面追蹤的手部控制器。

WebVR 研究室

PlayCanvas WebVR Lab 中,我們已在您的應用程式中實作部分可能需要的核心互動,並擴充至不同程度的體驗。

互動的運作方式

WebVR 研究室中的互動運作方式為光線交集的基本機制。樓層、房間和任何可以進行互動的物體,都會根據三種形狀基元之一定義:

  • 軸對齊的定界框 (或 AABB) - 未旋轉的方塊。
  • 方向定界框 - 可旋轉的方塊。
  • Sphere - 以空間中點為中心的半徑範圍。

要瞭解操作是否可能,我們會向世界發光,並測試該光柵與世界的物體形狀交錯。可用的互動類型取決於光線來源的位置 (攝影機或控制器) 和光柵長度 (特寫操作或指向距離)。

簡易操作

首先,我們會定義幾個簡單的動作,以及如何將這些動作與不同的控制器搭配使用。

醒目顯示

如要醒目顯示位置或物件,可以透過查看位置或物件 (使用視線控制器) 或指向該位置 (使用手部控制器)。方法可以是沒有按下按鈕,也可以僅限按下按鈕時執行。

(按一下滑鼠)

只要醒目顯示該位置或物件,再按下或放開按鈕即可。做法是以凝視控制器的形式查看物件,然後按下按鈕或螢幕,使用手控制器方法是指向物件,然後按一下按鈕。

核心互動

利用醒目顯示和點擊功能,我們在 WebVR Lab 中實作了部分核心互動。

瞬間移動

瞬間移動

當使用者建構可供使用者探索的虛擬環境時,該環境可能會比使用者不移動也能看見的小區域更大。舉例來說,WebVR 研究室分成三個部分。主要客房、夾層地板和 Hi-Fi 音樂播放器的側邊空間。

讓使用者的可視區域在世界上移動往往會導致不適。透過 WebVR Lab,使用者可以醒目顯示位置,按一下畫面就能瞬間移動。使用者的觀點永遠不會移動,因此即使玩家會瞬間移動到大型空間,也不會感到不適。

以手持控制器為例,我們會要求使用者按住按鈕來啟動瞬間移動目標。如此一來,當使用者四處尋找時,就能讓視線保持井然有序。

移動使用者的觀點

有時一定要移動觀察點。舉例來說,使用固定式或 Seated VR 功能時,最終可能會朝向一面牆,但無法呈現實際世界。讓使用者可以用控制器旋轉攝影機在 WebVR Lab 中使用 Daydream 控制器的左右手把旋轉相機。

為避免造成不適,我們將攝影機以這種方式移動,會在攝影機上套用受限制的檢視畫面,藉此減少週邊裝置的視覺影響。這以 Ubisoft 的工作為基礎,我們發現僅將檢視畫面聚焦於畫面中央有助於降低不適感。

啟用

啟用

啟用是一種 VR,相當於點選網頁上的按鈕。在 WebVR 研究室中,我們根據實際情況採用了,並提供可啟用的簡易按鈕。

針對 0 DOF 和 3 DOF 控制器,啟用後即可醒目顯示,按一下即可。針對 6 DOF 控制器,我們可以升級體驗,藉由直接檢查你的手部控制器是否在按鈕內來「推送」按鈕。

Grab

Grab

WebVR Lab 含有許多「重組」項目。透過這種行為,物件啟用時,便可擷取及移動物件。視您想支援的輸入層級而定,會出現兩個明顯不同的行為。

針對按住輸入按鈕的 6 個 DOF 控制器,可將可擷取項目附加至控制器。然後透過精細的控制項移動及放置其位置。放開此按鈕後,即可啟用與項目的合併或放置動作。

如果控制器較不容易操作,則點擊會選取該項目,並附加至使用者的可視區域。通常在螢幕的「下半部」內顯示一個項目的部分內容。第二次點擊就會捨棄或合併商品。

Combine

Combine

「合併」是指當您在另一個項目「使用」項目時,會發生此動作。涵蓋多種用途。在 WebVR Lab 中,我們使用它播放 Hi-Fi 的記錄擷取項目時,就可以將擷取的項目與其他項目合併。所有類型的控制器都會醒目顯示目標項目,同時擷取另一個項目後再放開擷取作業,將合併這兩個項目。

摔落 / 還原

當使用者按住擷取項目,且未醒目顯示其他項目時,系統會捨棄項目。

在 WebVR Lab 中,我們未對任何項目進行物理模擬,因此能將效能需求降低。也就是說,我們不會將項目拖曳到地面,而是讓物件懸浮在放置的位置。捨棄項目後,如未在特定時間範圍內啟用項目,該項目會自行「還原」至原始位置。這項還原功能可讓輸入程度較低的使用者 (0 DOF 或 3 DOF) 操作許多項目,並維持可用的工作區域。較舊的項目會自動清除。

透過 6 DOF 輸入,可讓你輕鬆將項目移出。延遲還原作業可讓 6 DOF 使用者沉浸在移動項目的位置,但仍有助於自行清理該區域。

摘要

WebVR Lab 是 PlayCanvas 團隊的一項持續計畫。也就是說,我們會持續研究如何建構 WebVR 應用程式,因此會持續開發及更新這個應用程式,並持續更新使用體驗。

從「魔術視窗」樣式的行動裝置體驗調整為電腦互動式遊戲。我們已開始定義一組核心互動,供使用者在自己的專案中使用。我們希望 WebVR Lab 提供良好的學習體驗 讓所有想透過 WebVR 打造 3D 世界的人都能享受優質的學習體驗。

如果您擁有 PlayCanvas 帳戶,可直接前往 WebVR 研究室專案瞭解詳情。