全身追蹤,顧名思義就是在使用VR時可以追蹤到全身的動作,而非只有頭部和手柄。
一般的實現方式是購買HTC的全身追蹤感測器,一套下來超過兩千塊,可以說是很貴了。而且這一套只有搭配HTC Vive系列的VR才是最適合的,其他的VR玩家可能需要hack一下。
為了省錢以及好玩,歐洲某有閑程序員團體製作了Driver4VR,可以使用Kinect或Nolo來進行全身追蹤。其中Kinect 360的方案最為便宜,我也使用了一下,踩了一些坑。我並沒有找到相關中文教程,而且折騰的過程本身也是頗有趣的,因此在此記錄一下。
Driver4VR有多種追蹤方式,某些方式甚至不用使用VR設備,我這裡只記錄我已經嘗試過的。以下前提都是有Driver4VR這款SteamVR驅動本身:
Driver4VR官網?www.driver4vr.com追蹤方式包括鏈接VR設備、使用Kinect自帶的骨骼追蹤、使用光球追蹤(類似於PSVR的光球追蹤)等,可以多種追蹤互相搭配。我自己的VR設備是使用了Oculus Rift CV1,所以以下實驗都是在此基礎上加入對腰、腳的追蹤。
以下部分在Youtube上有官方視頻教程,在Driver4VR下載頁面有前往這些教程的鏈接。英語過關的朋友可以直接看官方視頻教程:
Download?www.driver4vr.com
Driver4VR+Kinect 360 + Skeleton Tracking
成本:Driver4VR->19.9歐元, 二手Kinect 360->15新加坡元,Kinect 360 USB 轉接線->18新加坡元。共計摺合人民幣約161.5+165.5 = 327人民幣。
效果:Kinect 360延遲較高,約為70ms,在VRChat中踢人時明顯感覺腿部是在慢動作。Kinect 360無法識別坐姿,所以在用Kinect 360骨骼追蹤時,坐在椅子上就會丟失定位。且Kinect的識別演算法有限,有時會把周圍物體也識別為人。Kinect 360的識別要求人離Kinect的距離較遠(我實測2米以上效果才比較正常),對於房間小的用戶來說使用Kinect for Windows(識別距離要求較近)更好。但是不管怎麼說,不用在身上綁任何感測器,就可以在VRChat里踹人了,還是可以有的。
綜合評價:價格最低,效果也最差,但是還算可以用。
實現步驟:
第一步: 安裝Kinect所需的驅動以及Kinect Developer Toolkit。安裝完之後可以打開Kinect Tookit Browser(在Tookit安裝的文件夾里可以找到),試一試Skeleton Basics Application,看看能否追蹤骨骼成功。
* Kinect 360 –https://www.microsoft.com/en-us/download/details.aspx?id=40278
* Kinect One –https://www.microsoft.com/en-us/download/details.aspx?id=44559
第二步:安裝Driver4VR。(免費版每周只有30分鐘試用時間,Gold版(19.9歐元)不限制試用)安裝之後打開Driver4VR就會一併開啟SteamVR,打開SteamVR也會開啟Driver4VR,但是在你點擊Driver4VR窗口中的「Start Driver4VR」按鈕之前,SteamVR不會識別為你使用了全身追蹤,這樣不想使用Driver4VR時不點擊「Start Driver4VR」就可以了。
第三步:校準(Calibration)
在Driver4VR的Tracking欄中,找到Body Tracking(身體追蹤),選擇「Kinect:Skeleton」(Kinect:骨骼追蹤),這樣你的身體追蹤方式就被設定為Kinect骨骼追蹤了。
然後點擊「Start Driver4VR」按鈕,在Body Tracking右邊的「Calibrate」(校準)和「Calibrate NEW」(新的校準方式)按鈕就都可以點擊了。
兩種校準方式都要去戴著VR頭盔。
「Calibrate」是對應舊的校準方式:
在彈出的Calibrate窗口中點擊「Calibrate」,校準就開始了,這時你應該戴上頭盔。
舊的校準一共五次採樣,前三個是分別在Kinect前三個位置保持站姿,並頭朝Kinect方向。後兩個是在Kinect前保持彎腰半蹲,並頭朝Kinect方向。每次採樣都需要Kinect能識別你的骨骼,且你的VR頭顯有被追蹤到,採樣成功時會聽到鼓掌聲,採樣失敗會聽到噓聲。
「Calibrate NEW」是新的校準方式:
在彈出的Calibrate窗口,點擊Calibrate,校準就開始了。這時你應該戴上頭盔,保持站姿,直視Kinect的方向,手和手上的VR手柄放在身體兩側,且手稍微展開一點。