遊戲引擎科普:開發遊戲必須使用引擎嗎?

腳本語言 雷神之錘 EA DICE 戰爭機器 97973手遊網 2017-04-13

前段時間在知乎上看到一個腦洞大開的問題:存在用0和1一位數一位數敲出的視頻嗎?

遊戲引擎科普:開發遊戲必須使用引擎嗎?

很多網友在下面評論,其中一個ID叫“看星星的Go熊”說:

我居然真的去算了一下。確實不管是視頻還是其他的計算機程序,最最最底層就是一串0或1的數字串。

1、假設視頻大小為100MB,也就是102400KB,也就是104857600字節,也就是838860800個二進制位。

2、假設你有某種工具可以像這樣直接敲一串二進制串並且把它轉換成視頻文件。

3、假設你每秒敲2個數字,不吃不喝,不中斷,不出錯。

敲完這些,你需要419430400秒,也就是6990506分鐘,也就是116508小時,也就是4854天,也就是13年。不吃不喝要敲13年,而且還不能出錯哦。這還僅僅是100MB的視頻,如果是500MB,這個數字就再乘以5,65年……

從理論上來說,這種可能的確是存在的,但現實中,真的有人會花費幾十年的時間做這種低效率的事情嗎?實際上也沒有這個必要,計算機完全可以幫我們處理這些海量的數據。

這個例子和我們今天要討論的問題十分相似,所以拿來做一個引子,正如標題所提問的,開發遊戲必須使用引擎嗎?不過,想要回答這個問題,首先得解釋:

什麼是引擎?

百科上是這樣解釋的:遊戲引擎是指一些已編寫好的可編輯電腦遊戲系統或者一些交互式實時圖像應用程序的核心組件。

通俗一點就是說,遊戲開發者完全沒必要從零開始費時費力做一款遊戲,而遊戲引擎就可以理解成一系列的工具集成,包括渲染、碰撞、物理、動畫、音效、網絡、腳本等等模塊,這是一套解決方案,它能夠讓你快速地製作併發布一款遊戲。

遊戲引擎科普:開發遊戲必須使用引擎嗎?

那麼,開發遊戲必須使用引擎呢?

以國外一些商業引擎為例,如瑞典EA DICE工作室的寒霜引擎(Frostbite Engine),就是為了《戰地》系列製作的,起源引擎(Source Engine)則是由Valve公司為了《半條命2》而開發,國外遊戲大廠動用數十上百人耗費數年時間開發大型遊戲,在這個過程中,衍生出了遊戲引擎這樣一個副產品,開發《雷神之錘》的Quake引擎和《戰爭機器》的虛幻引擎均是如此。

但是對國內開發者而言,尤其是研發手遊和H5遊戲,除了騰訊、網易有資金去做一些自研引擎,小團隊則更適合選擇一款商業引擎,縮短開發週期、節約成本。退一步說,就算能力強大到可以憑一己之力編寫出各種工具,這些工具實質上也是引擎,稱呼不同而已。

例如策劃做一個PPT,沒有模板當然也可以做,區別在於製作的速度以及最終的效果如何。Stop Trying to Reinvent the Wheel(不要重複造輪子),這一概念在軟件開發領域尤其重要。

遊戲引擎名詞解析

上文已經提到,遊戲引擎可以理解成一套遊戲開發的解決方案,隨著技術的進步,這套方案的複雜程度也越來越高。這裡簡單地解釋一下這些技術名詞背後的含義(C2engine引擎技術交流群:189087351)。

遊戲引擎科普:開發遊戲必須使用引擎嗎?

1。攝像機

電影用鏡頭把故事呈現給觀眾,而引擎則用攝像機把遊戲世界呈現給玩家。在場景中,至少需要擺放一個攝像機,當然也可以擺放多個。多相機的使用可以給你一個雙人分屏效果或創建高級自定義效果。你可以讓攝像機動起來,或者用物理組件控制它們。幾乎你想到的任何畫面,都可以用攝像機變成可能。

遊戲引擎科普:開發遊戲必須使用引擎嗎?

2。碰撞

在引擎中,創建的遊戲對象是不具有屬性的。比如說,雖然在引擎中放置了一顆樹,但是如果沒有添加屬性,那它僅僅只是一個有形狀、有貼圖的模型。所以,遊戲中房屋的牆壁、樹木等你不希望玩家“穿過”的物體,都需要加上網格碰撞屬性,否則就會出現一些讓玩家吐槽的BUG。

3。動畫

腳本可以控制模型參數生成動畫,但是腳本的編寫不夠直觀,而且較為複雜,所以這時候就需要一個更加高效的實現方式,那就是動畫編輯器。基本的人物待機動作和招式、規律運動的地刺、山上滾落的巨石等等,都可以通過動畫編輯器實現。但是一些複雜模型動畫(如:骨骼連帶動畫)還是需要在3DMAX或Maya等專業軟件中製作。

遊戲引擎科普:開發遊戲必須使用引擎嗎?

4。粒子

簡單地說,粒子系統是一些粒子的集合,通過指定發射源在發射粒子流的同時創建各種動畫效果。你在遊戲中看到的火焰、煙霧、水流、雨雪、灰塵、流星尾跡等等這些視覺效果都是通過粒子系統實現的。強大的粒子系統可以渲染出美輪美奐的震撼視覺效果。

5。打包

這裡說的打包自然不是去餐館吃飯吃不完打包帶回家,遊戲開發領域的“打包”,指的是將編譯好的代碼及烘焙好的內容打包到一個可發佈的文件集合中,比如一個針對Windows的。exe安裝包,或者Android的。apk文件。例如C2engine,就可以一鍵發佈到ios、Android、Mac、windows等等平臺,或者以H5的形式發佈,能夠幫開發者節約大量時間。當然,如果項目包含很多內容及地圖,那麼打包的時間也會相對較長。

遊戲引擎科普:開發遊戲必須使用引擎嗎?

“遊戲引擎科普”,這是專門為遊戲愛好者策劃的一系列新手向科普類型的文章,和大家一起去揭開遊戲引擎行業的神祕面紗,包括國內外引擎的最新情報。下一期我們會重點介紹引擎的可視化、無編程這一方向,請繼續關注我們,有任何想法,比如你想了解引擎的哪一方面,都可以加群和小編交流哦。

97973手遊網聲明:97973手遊網登載此文出於傳遞更多信息之目的,並不意味著贊同其觀點或證實其描述。

相關推薦

推薦中...