在開始本文之前,先來了解下什麼是MR視頻。
你可能看過這個視頻:
官方驚豔的宣傳片,至今都是MR視頻大作
MR(Mixed Reality)視頻就是VR影像+人的影像合成的視頻。具體來說,就是當你在玩VR遊戲的時候,攝影師能把你玩的過程拍攝下來,而且能把你本人融入到遊戲場景當中去,再製作成一個MR視頻。
但是,大多數情況下,MR視頻都是土豪的玩具,拍攝設備非常昂貴,比如以下這個方案:
斯坦尼康穩定器和單眼相機的土豪方案,價格至少2 萬
那麼,窮屌絲就不能玩MR了麼?
NO!要搞MR,窮屌絲就要玩創新了。
需要準備什麼?
硬體部分:
攝影棚:牆和地面鋪上綠布,大概6m*6m即可,同時為了實時摳像,需要布光,如果沒有專業經驗請專業的燈光師幫忙吧,星佳也是折騰了很久,因為預算有限沒辦法做到足夠完美。
低預算條件下搭建出的攝影棚
攝像機:
窮逼星佳的支架單反方案(Gopro支架很好用)
像我一樣的窮人用網絡攝像頭就行,比如網吧的聊天攝像頭,五百塊左右的羅技就挺好,例如Logitech Webcam C930e。
我託朋友借了臺佳能70D,又買不起視頻採集卡(由於主機插槽不夠用,還得買外置巨貴的採集卡),所以情急之下,星佳把相機通過usb直接連接PC主機的USB3.0口,配合佳能官方的實時攝影調節套件直接可以在電腦端軟體實時調節相機參數捕捉拍攝畫面,真是小聰明啊,雖然可能燒了CMOS。
高性能主機+第三隻Vive手柄(USB延長線連接電腦):第三隻手柄的作用如上圖,綁定在佳能相機上,手柄作為作為遊戲裡的虛擬攝像機和物理環境的真實攝像機同步位置和焦距視野等數據,即可拍到正確位置的體驗者。
軟體部分:
目前只有Unity3D製作的虛擬實境程序支持MR模式,我們期待Value能夠早日攜手UE4放出來Unreal Engine for SteamVR的程序,當然SteamVR的版本得至少是1.0.8或以上哦。
OBS或者其他視頻合成軟體,用於實時獲取應用窗口和簡單摳圖。
乾貨來了,實際拍攝教程:
1. 找到Steam安裝路徑下的config目錄,新建文件名:steamvr.vrsettings
代碼段如下:
{"camera": {"enableCamera" : true, "enableCameraForCollisionBounds": true, "enableCameraInDashboard" : true},"collisionBounds" : {"CollisionBoundsColorGammaA" : 169,"CollisionBoundsColorGammaB" : 0,"CollisionBoundsColorGammaG" : 255, "CollisionBoundsColorGammaR": 163, "CollisionBoundsGroundPerimeterOn" : false,"CollisionBoundsStyle" : 0}, "jsonid" :"vrsettings", "keyboard" : {"TutorialCompletions": 1}, "notifications" : {"DoNotDisturb" : true},"perfcheck" : {"heuristicActive" : true},"steamvr" : {"allowReprojection" : true,"background" : "C:\\Program Files(x86)\\Steam\\steamapps\\common\\SteamVR\\resources\\backgrounds\\viveNight.png"},"version" : "1"},{"steamvr" : { "activateMultipleDrivers": true } }
2.解壓壓縮包裡的後綴為driver_null.dll的文件覆蓋到指定文件夾,
目錄C:\Program Files(x86)\ViveSetup\SteamVR\drivers\null\bin\win32 :
3.以上兩步工作做完後,啟動SteamVR軟體,在成功識別兩隻手柄後,通過USB延長線連接第三隻手柄和PC,成功出現如下的SteamVR畫面即代表配置文件生效:
4.生成externalcamera.cfg文件:
運行壓縮包裡的cameraAgn.exe文件,之後可以戴上頭盔拿起兩個手柄可以在虛擬世界裡看到第三隻綁在攝像機上的手柄,按照程序要求配置各項參數即可生成cfg文件,之後把cfg文件放在可執行遊戲程序的同目錄下即可生成傳說中的四分屏。
cameraAgn.exe運行後的四分屏界面
externalcamera.cfg文件內容:
x=0
y=0
z=0
rx=0
ry=0
rz=0
fov=60
near=0.1
far=100
以上參數只是默認值,最終要用什麼數和虛擬攝像機的參數及攝像機和第三隻手柄的擺放有關,需要在cameraAgn程序裡進行仔細的調節,同時注意在運行房間教程的時候頭盔和電腦畫面正面和反面的不同結果哦。
5.星佳測試成功的切西瓜遊戲的MR視頻截圖:
出現四分屏畫面後,基本就成功了一大半,目前此方式還只支持unity開發的程序,所以不能保證所有遊戲應用都可以通過此辦法來實現四分屏。
說起來好笑,起初還找了個拍電影的朋友信誓旦旦的就要做"摳像",覺得有個綠幕+攝像機+HTC Vive就可以輕鬆解決,萬萬沒想到,居然搞了這麼久才折騰出來拿得出手的成果....
所以,我們來看看我們的成果唄(請忽略因場地和資金造成的穿幫):
說說此次探索MR視頻的一些感觸
1.實現方案:
硬體部分:至少5*5的綠幕和均勻布光,佳能單反或者羅技攝像頭,第三隻HTC手柄,USB延長線和支架。
軟體部分:首先需要開源軟體OBS做圖層合成和直播功能,配合若干Unity引擎開發的適配固定視角的虛擬實境內容即可成功的開啟四分屏模式(需要調整了很久的cfg配置參數文件在內容根目錄下的幫助),
2.還需要完善的一些地方:
①由於辦公室地方限制,導致綠幕空間達不到理想標準,而燈光也因為確實窮所以買不起貴的而打的並不均勻,由此造成了成果視頻裡摳圖的不乾淨和穿幫。由於資金限制,能做到這不錯了。
②我們正在探索移動機位的可能性,一方面是由於場地小,除此之外移動相機和綁在上面的第三隻映射手柄不得不再採購一套巨貴的斯坦尼康,所以移動鏡頭的解決方案不得不暫時擱淺了,但是如上面成果視頻的固定機位已經很酷了是不是?
③此種方法目前還只適用於Unity引擎開發的遊戲,大家都在等UE4引擎給出和SteamVR底層的接口,而經過嘗試可以在某些遊戲上搞出來四分屏,換句話說,能成功弄出來四分屏也就離成功確實不遠了,可惜的是,缺乏足夠技術能力的星佳團隊在底層接口這方面不得不繼續埋頭苦幹,希望能找到業內樂意合作的前輩們一起做一款集成傻瓜式的軟體,最大程度的解放MR技術在配置參數上的種種麻煩。除此之外,眼前的當務之急是尋找一款比OBS更好用的專業軟體,在實時摳像和圖層疊加,解析度損失上都可以做的更好。
④目前很多遊戲應用內置的虛擬攝像機並不支持移動,換句話說,我們真的很希望以後虛擬實境遊戲應用開發者可以直接在開發的時候就規劃好虛擬攝像機,甚至可以考慮直接內置多機位的虛擬攝像機,方便在做MR視頻和直播的時候一鍵切換最優質的視野和觀看角度。
⑤希望Unity和UE4官方可以儘早開放MR底層的接口,也可以給廣大的虛擬實境內容開發者給一些相關MR虛擬攝像機開發的DEMO工程文件學習,和很多像星佳這樣行業內第一批的吃螃蟹的從業者們一起把虛擬實境更早更全面完整的普及到尋常百姓家。
註:本文由星佳是個小人物(公眾號:xingjia10086)投稿,魔多君整理。同時歡迎大家積極投稿,分享更多的優質內容。投稿郵箱:ajun@moduovr.com。
亞洲首屆VR黑客馬拉松!挑戰者可點擊以下「戰帖」了解詳情
▼
魔多,最專業的VR媒體,有料更有趣