2019年9月15日 星期日

DIY體驗式頭戴顯示器HMD

  先做個提醒,這個DIY只有HMD的部分,看起來很像VR或AR,但是因為沒有額外的感測器去偵測使用者動作,基本上就是個純頭顯! 這次來DIY組裝的頭戴顯示器(以下簡稱HMD)適合以下的人嘗試,
1. 有智慧型手機,不論是iOS或Android系統都可以。
2. 想嘗試HMD、VR或AR,但種種因素沒有購入的嚐鮮玩家。
3. 有擷取盒的話可以用在家機上。
  再次強調,這是純HMD,而HMD也是VR、AR裡基礎的設備之一,可以讓使用者體驗看看戴上HMD大概可以帶來甚麼樣的體驗。

  下面分三個情境來體驗,而其中必備的另一個材料是VR Box。買之前要記得注意下手機尺寸有沒有相容,我挑的這款有支援到6.3"螢幕,Galaxy Note 8還放得下。

  第一種情境,就是很單純的將手機當成VR使用,只要APP(MX Player VR或是Xorn hub之類的)有使用到手機裡的感測器,基本上就可以體驗到所謂的VR,而這也是VR Box主要的工作,這邊就不多說明。

  第二種情境,就是將HMD當作電腦顯示器來用,可以用有線或無線的方式完成。
先介紹有線的方式,我是使用Android手機和Win10,iOS的使用者可以Google下Duet Display的用法,原理上都是一樣的。
  首先手機上安裝Splashtop Wired Xdisplay,PC端則是安裝Adb driver、Splashtop Wired Xdisplay PC端和OBS。然後測試手機用USB線連到電腦時能不能被認成延伸螢幕,在Windows下設成延伸螢幕後,同時確認可以支援的螢幕解析度為何。
  接著到OBS裡面進行設定,第一步先新增一個場景,這裡命名成VR test。
  第二步,進入設定->影像,將畫布設定成跟延伸螢幕解析度一樣的大小,這樣理論上會比較好tune畫面,我這裡偷懶就設1920x1080了。
  第三步在來源裡新增兩個顯示器擷取,記得這兩個是要選同一個螢幕。

  第四步,將兩個顯示器擷取調整成相同大小,並排塞入畫布當中,就像下圖一樣。

  最後,將這個畫面全螢幕投影到延伸螢幕,也就是連線的手機上面。然後手機裝上VR Box,開始調整VR Box上的瞳距和焦距,如果都調整不出來,那就調整看看OBS裡面螢幕擷取的位置或大小,基本上就沒問題了。

  接下來介紹無線的方式,使用這個方式的使用者在電腦端本身要有雙螢幕才有辦法操作。
  假設有螢幕1和螢幕2,你想操作的是螢幕1,並將畫面投影在螢幕2上面。OBS上畫布大小就改成螢幕2的解析度,兩個顯示器擷取都設定為螢幕1,然後將OBS畫布全螢幕投影投到螢幕2上面。然後在手機端使用Chrome遠端桌面或是Teamviewer,將手機畫面調整到螢幕2,並將畫面填滿手機螢幕,然後就可以看到在VR Box裡面看到一樣的效果。
  Android上有另一個APP,Space Desk是可以用區網Wifi來將手機當作延伸螢幕,不過實際使用上真的延遲很嚴重,這裡完全不推薦這種連線方式。

  最後一個情境,就是拿來玩家機,不過這個成本就比較高,首先你必須要有個擷取盒將家機影像input到電腦端才行,好處就是不論哪台家機(PS4、XBox、NS),只要有影像輸出功能的主機都可以使用,所以NS Lite就沒辦法這樣玩了。我使用的擷取盒是GC550,再來只要把上面OBS的設定,從顯示器擷取改成視訊裝置擷取,再用有線或無線的方式投影到手機上就可以囉,這個情境下無線連接就不需要用到雙螢幕了。
  至於手機也可以用的免驅動USB擷取卡我就不確定是不是可以做到一樣的事情,這邊留給有用手機直播的大大們來試試看吧

  基本上HMD和VR的顯示器都是用同樣的原理,將要看的畫面放在兩個完全一樣大小的螢幕,或者在一個螢幕上並排顯示兩個相同的畫面,然後通過放大鏡或是改良過的專用透鏡顯示給使用者看,而VR則是多加了畫面變形和許多sensor讓使用者有沉浸感。

這就是用無線方式連線的配置,右邊螢幕設定OBS,投影到左邊螢幕。

手機上再用Chrome遠端看左邊螢幕

遠遠看當然是很模糊啦。

正常來說,對焦完可以看到的左眼影像。

右眼的影像。


  接著我們來總結一下體下HMD的感受:
1. 使用Splashtop Wired Xdisplay還滿穩的,售價也不貴,還有無限次(應該是?)免費試用十分鐘給你考慮。
2. 用Chrome遠端桌面也滿穩的,缺點有點多... 第一,APP版沒辦法PC版一樣指定只顯示某個螢幕,要手動去縮放螢幕大小。第二,螢幕還是會跟著系統螢幕休眠時間走,最長十分鐘到了就會關螢幕,不過這個好像在Android開發者模式下可以強制螢幕常亮。第三個缺點比較無解,我用了大概十幾分鐘,打MR蒼火龍打到一半就顯示手機過熱強制關螢幕了 QAQ,第一次遇到Note 8過熱。
3. 用TeamViewer,雖然可以指定顯示螢幕,不過default連線設定連看個Youtube都會Lag,這個就要再研究下TeamViewver的設定。

  從這邊也可以衡量看看,市售的HMD或VR可能會給使用者甚麼樣的體驗,像是HMZ-T3Z提供720P+無線顯示,上面的做法就有辦到一樣的事情。PS VR如果沒有搭配VR專用遊戲,和這個方案相比,其實大同小異,只是PS VR會將螢幕模擬成定點,比較符合現實環境下看著螢幕的情境。如果沒辦法砸下成本玩高階VR或是沒有配套的軟體、遊戲,這裡提供的做法我認為已經可以滿足大部分使用者的體驗或需求了。