引擎的基本概念及常見的遊戲引擎介紹

4 人贊了文章

一、引擎的基本概念

關於遊戲引擎和中間件

過去開發遊戲的時候,遊戲機生產商提供的只是硬體的規格書和非常基本的「庫」。所以,遊戲需要的各種程序功能都需要遊戲開發團隊自己開發。從PC,FC的8位機時代開始,到SFC,MD的16位機時代結束,這樣的開發都沒有產生大的問題。遊戲硬體的規模,以及在上面運行的軟體規模還能允許使用這種粗糙的辦法。我們可以將其稱之為遊戲開發「過去的好時光」。

在初代PS的時代,除去部分大型開發商,主流還是這樣的開發環境,到了PS2中後期,先進的工作室開始引入了「遊戲引擎」的概念。讓遊戲運行首先需要「完成各種固定任務的程序」,比如圖像處理,音頻處理,網路處理,遊戲控制器各種輸出的處理,存儲設備(記憶卡和硬碟等)的輸入輸出處理等等。先進的遊戲開發工作室,會將這些固定的程序以「庫」的形式保存共享,在開發其他遊戲時利用上。不過,遊戲硬體隨著時代發展越來越複雜,機能功能越來越多越來越強,中小規模的工作社已經很難自己解決一切問題。於是,擅長特定領域的開發者們開始提供能更簡單便捷地利用設備性能,實現遊戲所需特定機能,可以跨機種共通使用的程序。這些就是針對遊戲開發生產出來的中間件。許多中間件都是遊戲開發經驗豐富的程序員完成的。

中間件:字面定義就是在應用軟體與操作系統,驅動程序之間的軟體。在遊戲開發領域,中間件的定義更加廣泛。我們可以理解成在遊戲軟體中實現特定功能的軟體。

著名的中間件:將Silicon Studio的「YEBIS 2」整合到圖像引擎中,就可以產生實際攝影一般的特效。「YEBIS 2」是由照片真實級圖像聞名的日產XBOX作品《Double STEAL》的開發者著手研發的。

YEBIS 2 中間件效果YEBIS2

左邊是YEBIS 2使用前,右邊是使用後。高光溢出的效果和鏡頭虛化的效果都是YEBIS 2生成的。

在Agnis Philosophy中YEBIS 2 中間件的效果。

SE製作的DEMO影像「Agnis Philosophy" 中,散佈在背景中,能反應鏡頭光圈形狀的光芒,魔法發動的閃光的溢出效果,還有火星的虛化都是YEBIS 2完成的。

關於遊戲引擎,中間件的定義:遊戲引擎和遊戲開發中間件這兩個辭彙之間,沒有非常明確的界線。而且,將各種軟體模塊系統整理起來的庫既不算遊戲引擎,也不算中間件。要進一步分類的話,我們可以這麼理解,遊戲引擎就是「單獨使用,不需要更多東西就能開發遊戲」的工具。遊戲開發用中間件就是「完全負責遊戲需要的某個特定機能」的工具。庫就是「將已經開發完成的遊戲程序代碼再利用的軟體模塊」。

遊戲引擎的興起和意義所在

隨著時代進步,到PS3和360這一代遊戲機,遊戲開發的規模更加龐大。在這樣的環境下,除了提供遊戲開發必要功能的「庫」,負責「內容流水線」,涵蓋遊戲開發整體的中間件開始興起。

內容流水線:遊戲開發中,編程以外還有3D建模,紋理,聲音等數據製作的內容。哪種數據,用什麼工具,生成什麼數據形式,怎麼整合到遊戲程序中,這樣的結構和流程,就是內容流水線。

為了將這種中間件和之前的區分,同時還為了說明它們是讓遊戲運作的「根本驅動」,人們將其稱之為遊戲引擎。遊戲引擎,遊戲開發中間件,庫之間是共存共榮的關係。實際遊戲開發中會根據遊戲的需要使用特定的工具,有必要的地方也會將其組合起來靈活運用。比如說,打算開發的遊戲和某個遊戲引擎的功能與特性非常合拍,那就單獨使用這個引擎進行開發。如果遊戲當中需要特殊的物理模擬,就可以開發能整合到遊戲引擎中的特定物理模擬中間件。大型遊戲開發工作室擁有經過長期開發積澱下來的「庫」,也會結合特殊專用中間件進行開發。

DMC鬼泣就是用了UE3和HAVOK的物理模擬

整合中間件的遊戲開發:CAPCOM的《DMC鬼泣》使用了EPIC的遊戲引擎「Unreal Engine 3」,但場景破壞方面選擇了HAVOK的物理模擬中間件「HAVOC Physics」,因為物理模擬專業性強,大工作室也會經常使用社外的中間件。遊戲機的性能隨著時代發展迅速提升,這也抬高了玩家們對新遊戲體驗的期待。伴隨著的就是開發成本的飆升。由於這些原因,新世代遊戲開發在規模上更大,質量上要求更高。對遊戲品質的需要促使著開發者提高開發效率,並且降低開發成本,實現這些目標的,就是遊戲引擎和中間件。

二、常見的遊戲引擎介紹

1. GameBryo

Gamebryo Element引擎是由C++編寫的多平臺遊戲引擎

支持平臺:

Windows、Wii、PlayStation 2、PlayStation 3、Xbox和Xbox 360。

特點:

雖然Gamebryo的渲染引擎部分是私有的,但他允許使用者添加自己的圖形繪製代碼。Gamebryo包含了長達3500頁的說明書,然而關於Maya的部分卻不完整,有的已經過時。Emergent為部分客戶提供開發套件,但不提供這些套件的源代碼,而且套件只提供給EGT公司代表面談後認為可以提供的客戶。

代表遊戲:

騰訊:御龍在天、軒轅傳奇、QQ飛車

盛大:星辰變

更詳細的參考鏈接:

gamebryo.cn/

2. Unreal Engine

Unreal Engine(虛幻引擎,簡稱UE)是美國EPIC GAME從自家的FPS遊戲《虛幻》延伸出來的。UE2取得了商業上的巨大成功,使用的各家公司多會獨立對其進行擴張修改,呈現出獨特的發展面貌。UE2改造版製作的作品,知名的有育碧的《分裂細胞》系列。遊戲引擎業務獲得成功的EPIC贏得了遊戲機開發商的信賴,360和PS3登臺前的2004年,EPIC發布了UE3。UE3對PS3和360的跨平臺遊戲開發起到了非常重要的作用。2012年,EPIC發布了次時代的遊戲引擎UE4,2013年又表示UE4支持PS4。

UE4支持平臺:

DirectX 9/10 PC、Xbox 360、PlayStation 3、 PS3、 PS4、

特點:

UE是一個以「所見即所得」為設計理念的操作工具,在可視化的編輯窗口中遊戲開發人員可以直接對遊戲中角色、NPC、物品道具、AI的路點及光源進行自由的擺放和屬性的控制,並且全部是實時渲染的(並且這種實時渲染還有動態的光影效果)。 並且還有完整的數據屬性編輯功能,可以讓關卡設計人員自由地對遊戲中的物件進行設置或是由程序人員通過腳本編寫的形式直接進行優化設置。目前UE4全部免費,有興趣的朋友可以下載來試下。

更詳細的參考鏈接:docs.unrealengine.com/l

3. Unity3D

Unity是由Unity Technologies開發的一個讓玩家輕鬆創建諸如三維視頻遊戲、建築可視化、實時三維動畫等類型互動內容的多平臺的綜合型遊戲開發工具,是一個全面整合的專業遊戲引擎。Unity類似於Director,Blender game engine, Virtools 或 Torque Game Builder等利用交互的圖型化開發環境為首要方式的軟體。其編輯器運行在Windows 和Mac OS X下,可發布遊戲至Windows、Mac、Wii、iPhone、Windows phone 8和Android平臺。也可以利用Unity web player插件發布網頁遊戲,支持Mac和Windows的網頁瀏覽。它的網頁播放器也被Mac widgets所支持。

支持平臺:

Windows、Mac、Wii、iPhone、Windows phone 8、android

特點:

入門快,開發效率高, 插件、工具多; 非開源,收費,但是技術支持好。

更多詳細的參考鏈接:unity3d.com/cn/

Source Engine

起源(source)引擎是一款3d遊戲引擎,由Valve軟體公司為了第一人稱射擊遊戲《半條命2》開發,並且對其他的遊戲開發者開放授權。作為一款整合引擎,起源引擎可以對開發者提供從物理模擬、畫面渲染到伺服器管理、用戶界面設計等所有服務。引擎附帶「起源開發包」和「起源電影製作人」兩款程序,前一個可以製作遊戲,而後一個更是業界首個專門製作遊戲電影cg的程序。

引用:spec.tgbus.com/hard/441

spec.tgbus.com/hard/453

blog.csdn.net/gogoda/ar

baike.baidu.com/link?

文章來源:騰訊遊戲安全實驗室


推薦閱讀:
相關文章