使用 CPU 增強《Star Trek™:Bridge Crew》的虛擬現實沉浸感

簡介
一般而言,CPU 通常不是影響遊戲中震撼的沉浸式場景的主要因素。過去,少數遊戲將設置呈現給玩家,允許他們調整 CPU 使用,但是許多開發人員認爲針對不同的硬件等級實施基於 CPU 的多層系統有些得不償失。通過與 Ubisoft 的 Red Storm Entertainment* 工作室的通力合作,《Star Trek™:Bridge Crew*》得到了明顯改進,我們的目標是藉助本文糾正該誤解。在虛擬現實 (VR) 細分市場中,環境交互、增強的物理模擬和摧毀的結合爲遊戲錦上添花,延長了玩家在遊戲中花費的時間,增強了他們對遊戲的興趣。鑑於 Oculus* 所需的低端硬件規格,清除根據全球最低規格定製 CPU 工作的想法變得越來越重要。使用可用的系統資源增強動態性和沉浸感將幫助您創建理想的遊戲,同時允許儘可能多的玩家訪問,我們進行了前所未有的簡化。

本文將向您逐一介紹《Star Trek™:Bridge Crew*》中實施的所有 CPU 密集型特性,提供用於使用基礎系統的指令。後面的章節簡要介紹了對於每個性能層級,認定 CPU 工作過量的標準。最後一部分展示瞭如何輕鬆設置 CPU 性能類別,以自動檢測最終用戶的硬件等級。

《Star Trek™:Bridge Crew*》通過 Unity* 創建,後者將是本文的重點,但是所有概念也適用其他引擎。

請觀看以下視頻,查看關於運行這些效果的遊戲的詳細對比。
《Star Trek™:Bridge Crew*》中的 CPU 密集型特性圖片描述
艦橋破壞 結合了物理粒子剛體物理和實時全局照明 (GI)

Sparks
圖片描述
概述
USS Aegis 的艦橋是遊戲的主要焦點之一。幾乎所有遊戲環節均要求玩家在艦橋中完成,因此,顯然應在艦橋中應用絕大多數 CPU 任務,從而爲玩家帶來超值的體驗。大部分時間均消耗在改進艦橋的各種摧毀順序,將強度元素添加至場景。例如,艦橋被摧毀後,大塊碎片飛出,火光在牆壁和地板上飛濺,火勢蔓延,照亮了周圍物體,並不是從光源直接照射。
什麼原因使它成爲 CPU 密集型任務?
破壞艦橋充分使用了 Unity 的實時剛體物理、帶有大量小粒子的粒子系統(啓用碰撞支持)以及各種火焰和火花效果創建的實時全局照明 (GI) 更新,它們可在可用 CPU 內核上擴展。生成了在破壞事件中使用剛體物理的各種碎片對象,激活高端效果後,粒子數量大幅提高。添加了面向粒子的全局碰撞支持和碰撞基元,內含用於創建火花跳躍和分散行爲的詳細信息。添加了其他使用 CPU 的 Unity 粒子特性,以增強場景,如使用子發射器爲火球或火焰添加拖尾。艦橋破壞粒子在屏幕覆蓋尺寸中保持較小的外形,以將 GPU 影響降至最低,同時實現預期的外觀。破壞事件發生時,某些光源和放射面將閃爍以模擬電源中斷。光源閃爍且艦橋上的火焰激活後,更新 GI。下面,我們將進入每個系統,瞭解如何單獨使用它們。
概述
雲尾製造了敵方戰艦和 Aegis 通過太空時攪動塵埃的假象,增強了沉浸感。太陽閃焰通過將玩家目光從天空盒移開,使玩家認爲自己身處遙遠的太空,實現了相同的效果。
什麼原因使它成爲 CPU 密集型任務?
雲尾與太陽閃焰使用了腳本化的粒子行爲,該行爲要求使用主線程上的腳本單獨更新粒子。從循環數百個粒子到循環數千個粒子以及通過腳本更新屬性佔用了大量 CPU 時間,但是支持粒子的自定義行爲,這是 Unity* 提供的即購即用普通粒子系統屬性無法實現的。請記住,目前必須在主線程上完成,以防止系統像前面提到的粒子碰撞系統那樣使用過多內核。請繼續關注 Unity* 在 Unite Europe 2017 大會上提到的全新 C# 工作系統,後者將通過擴展 Unity* API 優化腳本代碼中的多線程。

是否內置於 Unity*?
雲尾和太陽閃焰使用了 Unity* 的粒子系統,但是 Red Storm Entertainment 通過編輯腳本,確定粒子如何隨時間的推移而移動和改變。尾流效應使用一個粒子系統,從戰艦的若干發射器點發射粒子拖尾。單個拖尾內粒子的大小和生命週期取決於它的發射器。拖尾粒子在世界空間內發射,但是發射器點一直附着於戰艦,以確保在戰艦轉向與傾斜時也能從正確位置發射。定製粒子行爲腳本在戰艦後面添加虛擬“吸引器”對象,該對象通過隨機振盪拉回附近的粒子,穿過雲層時向戰艦後面的拖尾引入湍流。太陽閃焰也使用吸引器行爲向外散開粒子,或在向外發射粒子後,將其拉回太陽表面。以下簡單示例展示瞭如何使所有粒子飛向世界起源點。圖片描述
圖片描述
摧毀戰艦

查看原文


瞭解更多相關內容,請關注CSDN英特爾開發專區

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章