VRCORE系列公開課 | 《VR游戲進階攻略》已放出,請點擊領??!
VRCORE系列公開課第八站來到了美麗的廈門,VRCORE與四位在VR游戲開發領域有著豐富經驗的主講人攜手,為開發者們獻上一份《VR游戲進階攻略》。
VRCORE系列公開課第八站來到了美麗的廈門,在這個空氣中處處彌漫著文藝和浪漫氣息的海島城市,VRCORE與四位在VR游戲開發領域有著豐富經驗的主講人攜手,為開發者們獻上一份《VR游戲進階攻略》。
第一位主講人是來自指揮家VR的聯合創始人&COO陳銘心,他分享的主題是《如何打造VR游戲的沉浸感》。他從為什么要做VR游戲、什么是沉浸感以及在VR中要注意哪些方面來幫助打造它的沉浸感、AI與真人三個方面入手,以射擊類游戲為例進行了深入地討論。
1.為什么要做VR游戲?
游戲開發者們追求的終極目標:純粹的游戲體驗。在傳統的二維游戲世界,設備和技術存在非常多的局限。而VR游戲是解放人類游戲天性的過程,VR帶給我們的沉浸感超出了我們以往的所有想象,也非常符合“純粹的游戲體驗”這樣一個終級目標。
2.什么是沉浸感?在VR中要注意哪些方面來幫助打造它的沉浸感?
“粹的游戲體驗”秘訣在于沉浸感,在一款好的VR游戲中,應該從畫面、交互和玩法3個方面入手,體現沉浸感。
畫面——在傳統的二維屏幕游戲中,容納性非常高,即使出現小的bug,也不會太過分散玩家的注意力。但是在VR游戲中,帶上頭盔以后,看到的畫面就是你所在的世界,周圍環境的一點點不和諧也能引起玩家的注意,讓其產生不真實感,從而嚴重影響玩家的注意力。
交互——傳統的交互就是鍵盤wasd+鼠標,完成行走和射擊的體驗。在VR游戲中,我們是否能夠做到真正的行走?什么樣是符合本能反應的射擊體驗?用什么樣的設備去匹配它?這是我們在交互方面可以去思考和探索的事情?,F在手柄已經非常能夠滿足游戲射擊交互的需求。
玩法——“忘記虛擬現實,才是虛擬現實”。玩家也許沒有玩過真的槍,但是基于生活中的知識,大家會知道射擊是一個怎樣的過程。所以在設計玩法時,需要對每個細節進行深度處理。
3.AI與真人。
在傳統的游戲中,加入一個擬人類的角色是非常常見的,但是在VR游戲中完全不一樣。虛擬現實是一個非常擬真的環境,如果有一個人物出現在你面前,極其像人,會產生恐怖谷(Uncanny Vally)的效應,玩家會產生莫名的恐懼感。所以,在VR游戲中放置一個擬人的NPC的角色需要經過慎重考慮。
如果一定要在游戲中安排NPC角色,要限定其形象設計,盡可能不要像人,同時限制NPC出現的時間和路徑。因為在VR的世界中,要追蹤每一個物體的來源和去蹤,不然會破壞純粹的游戲體驗。
人是最高級的AI,建議大家如果要做一款VR游戲的話,盡可能加入真人互動,這樣可以在最大程度上避免NPC以及設計上對游戲產生的影響。
第二位主講人是來自晶石互娛的CEO高翔,他分享的主題是《VR游戲開發的實踐分享》。他先介紹了VR平臺的特點以及VR游戲的特點,最后結合自己制作產品的過程和心得進行了VR案例分享,針對初創團隊給出了游戲制作和開發的建議。
1. VR平臺的特點
首先,高翔列舉了目前在PC端、主機端和移動端的代表平臺。
從技術角度來看,PC端各廠商在推出時非常注重對開發者的支持,在SDK這一塊是非常便利的。移動端在SDK層面也沒有太大難度,但是在資源優化上有很大壓力,例如Gear VR要求游戲能跑到60幀,這個要求是非常高的。PS(Play Station)VR(主機端)來看,對不同材質的渲染的支持都是有差別的,甚至包括整個的開發環境和其他幾個平臺差異也是比較大的,相對而言是一個偏封閉的開發環境。
(中國團隊使用PS VR平臺制作游戲需要經歷的環節)
2. VR游戲的特點
沉浸式的輸出。沉浸感來自兩方面,首先是模擬人眼的成像原理,這樣能讓大家看到真實的3D環境。其次是觸覺輸出,傳統游戲的沉浸感主要在視覺和聽覺上,VR在觸覺的輸出上會有所強調,例如震動、手柄和手感槍。慢慢地甚至會加入味覺和嗅覺的輸出。
參與式的輸入。PC階段是鼠標鍵盤為主的輸入,在主機上更多是手柄的輸入,在移動端更多是手指的觸摸。在VR中,這方面的變化非常多。例如戒指,可以追蹤你的手指的位置和角度變化,周圍也有按鍵可以進行一些操作。還有手勢的識別、玩家通過自己移動所做出的輸入等。VR游戲的輸入端會比之前任何游戲階段都豐富,從而提升游戲體驗。
3.VR案例分享
高翔從產品立項、制作難點和解決方案以及美術制作三個方面進行了介紹。
制作難點——
性能差異:PC端和移動端計算能力和渲染能力差異很大,怎么能使產品在比較高畫質的情況下,可以在PC端和移動端都能跑。各端對美術的承載能力也存在巨大差異,例如PC端對貼圖會有材質和大小等方面的限制。同步頻率和運算周期上都會有差異,在設計時需要考慮進去。
操作差異:各端輸入設備不同,導致操作方式和游戲體驗的差異。
解決方案——
統一標準:Q版風格定位,不采用實時光照系統;制作便捷性的插件工具,降低維護成本;采用預渲染的方式,提高移動端的畫質。
差異處理:模型針對性微調;光照控制和玩法微調。
第三位主講人是來自HYPEREAL的游戲總監章海靈,他就《VR游戲設計探索和快速迭代開發》進行了分享,從什么是VR游戲以及VR游戲相對于傳統游戲的優勢出發,進而重點介紹了打造VR沉浸感所需的9個元素。
VR游戲不僅僅是視覺沉浸,更重要的是玩法交互。游戲作為一種娛樂體驗,需要讓用戶能夠深度的參與到游戲體驗中,而不僅僅是觀賞。和傳統游戲相比,VR游戲具有三大優勢:
更強的虛擬世界交互的沉浸感
更真實的體感交互帶來的自然本能反饋
更深入的虛擬多人交互的代入感
沉浸感是多種視覺體驗和交互操作融合在一起帶給人的心流(FLOW)狀態,其實是一種綜合的感官體驗,缺一不可。打造VR沉浸感需要以下9個元素。
90幀——是一切成功的基礎,脫離穩定的幀數講功能和需求就是耍流氓。當你的幀率正在改變,不能和屏幕(在本例中為90Hz)的刷新速率匹配均勻,玩家感知到的顫動/撕裂和各種視覺就會出現扭曲、畸變,影響沉浸體驗。
第一人稱——好的沉浸感可以讓用戶忘記自我,第三人稱雖然可以減少眩暈,但是它始終讓用戶感覺是在游戲,而不是在真實環境,身體本能會排斥這種臨場感。
自由移動——很多人擔心自由移動會讓玩家頭暈,但是第一人稱移動真的會暈嗎?這個問題還有待驗證。在游戲制作中,放棄自由移動等于放棄了未來的擴展性。
自然無拘束的雙手——解放用戶的雙手,讓用戶的雙手能夠自由操作,可以使其更加投入。
寫實的場景——達到身臨其境的效果。
基于現實的武器和操作——真實的武器更容易引起用戶共鳴,而不是思考。特別對于動作操作體驗,需要讓用戶按照本能感官操作,而不是讓用戶思考操作是否合理。
操作的視覺反饋——盡量通過角色動畫和目標本身的特效來表現;配合手柄力給出回饋;鼓勵用戶探索不同的手勢和力度使用武器;減少鏡頭特效對于玩家的干擾。
契合游戲的交互界面——懸浮界面保證用戶可以瀏覽到信息而不被阻擋;觸感交互讓操作更真實和自然;VR內的GUI全3D化,而不是傳統的2D UI,避免畫面突兀。
音效反饋——沒聲音再好的戲也出不來。需要注意的是,VR游戲中音效播放使用3D音效,和人耳位置前后,高低角度要做好適配。
如何減少用戶眩暈感
優化再優化,提高幀數、保持穩定。
減慢移動速度,可以用傳送作為候補。
左右旋轉可以,但不要上下翻轉。
放棄Camera Shake。
淡入淡出也是個好選擇!
控制單局時長,因為暈動癥會跟隨時間加強
設計上也可以減少用戶移動頻率
幀數!幀數??!還是幀數?。?!
如何快速迭代開發?
采用突擊小隊的開發模式,啟動2~3人的核心小團隊,團隊中每個人都是多面手,了解程序、美術和策劃各個工種,能夠相互承擔功能需求。團隊主要承擔核心功能原型制作,在有限資源情況下快速驗證和實現功能原型。
團隊工作原則:
原型說話
樂趣和體驗第一位
快速驗證,快速試錯
放棄冗長的文檔,緊密溝通
積極擁抱變化
第四位主講人是來自AMD的中國首席架構師&VR首席設計師鄧力,他分享的主題是《Performance Considerations for Virtual Realities》,主要討論了VR中的性能優化問題。
為什么性能對VR這么重要?如果性能跟不上,會造成眩暈等諸多問題。
VR在性能上最大的挑戰就是10ms(毫秒)的限制。傳統的手機游戲是24-30幀每秒,轉換下來就是33-42ms每幀,而現在需要做到10ms。挑戰不僅僅是時間上縮短3-4倍,還有運算量成倍的增加以及設備發熱的問題。
分辨率從720P到4K,運算量增加10倍。
幀數從30提升到90,運算量至少增加3倍。
單眼渲染到雙眼渲染,性能增加至少1.5倍。
總結下來,技術上需要40-60倍的渲染能力的提高。
渲染技巧
低級——雙眼渲染的話,很多人會把左邊渲染一次,再把右邊渲染一次,這是一個非常簡單低效的辦法。
中級——用幾何著色器把幾何圖形從左眼復制到右眼,但是這個過程很慢。
高級——使用硬件instancing的支持。
更高階的做法是使用uber instancing。
Instancing是硬件廠商設計用來降低渲染運算量的一項技巧,使用之后可以降低20%的運算量。
像素渲染的做法:
View Distortion Stencil——把周圍看不到的區域去掉,可以節省10%-17%的渲染運算。
View Distortion Warp——在VR中,所有的圖像都存在鏡頭的畸變,需要進行一次反畸變。反畸變會造成的問題是,之前非渲染的地方之后仍需要渲染,否則會出現黑邊,用View Warping可以把這部分去掉,再次獲得15%的性能提升。
View Bypass:傳統的渲染管線模型不適用于VR,因為計算眼睛參數的時間太提前了,會造成視覺的延遲,使用戶感覺眩暈。把view mapping的環節替換到即將渲染的時候,再進行一次計算,可以去掉延時,這種方法叫做view bypassing。
最后,鄧力通過一個具體的案例展示了instancing技術的運用。
更多詳細內容,請繼續關注后續推出的公開課視頻。
VRCORE虛擬現實開發者大賽仍在火熱征集開發者作品,看完了講師們精彩的分享,別忘了報名參賽哦!
最后,記得關注微信公眾號:鎂客網(im2maker),更多干貨在等你!
硬科技產業媒體
關注技術驅動創新
