引擎開發(fā)如何入門?
最近有同學(xué)在群里問我引擎開發(fā)相關(guān)的問題,希望能夠從事這方面的工作。
借此機(jī)會我就和大家說一說。
引擎開發(fā),顧名思義做的是游戲引擎,也就是我們常說的“造輪子”。
雖然現(xiàn)在好像每家大公司都有自己的游戲引擎,但實(shí)際上,這些“自研引擎”基本上都有虛幻四和Unity的影子。
所以研究明白上述任意一個都對引擎開發(fā)有巨大幫助。
我說的研究指的是源碼方面。
Unity雖然只是部分開源,但是內(nèi)行人手里有全部源碼很正常。

那么引擎開發(fā)如何入門呢?
我的建議是一定要精通C語言。
引擎開發(fā),我個人的建議是最好先精通C語言,其次才是C++。
這是我的一個切身體會。
大部分游戲引擎核心模塊用的都是C語言。
如果說游戲追求的是好玩,那么做游戲引擎追求的是什么?
是快和方便。
前者是引擎開發(fā)者需要解決的問題。后者則是產(chǎn)品或者策劃需要考慮的。
快可以指的是啟動快、編譯快、加載物體快和打包快,甚至是渲染快。
每一個快都對應(yīng)著專業(yè)技能的精進(jìn)。
甚至有的游戲引擎最核心的模塊還用C語言嵌入了匯編,就是為了增加效率。
其次是C++
C++的長處之一就是寫界面。
游戲引擎中工作量最大的不是那幾個核心模塊,而是界面,界面是最需要人手的。鑒于有些同學(xué)還是搞不清計算機(jī)圖形學(xué)和引擎開發(fā)的區(qū)別。
在這我給大家科普一下。
計算機(jī)圖形學(xué)對應(yīng)著游戲中的渲染模塊,而渲染只是游戲引擎中的一個模塊。
游戲引擎還有不少其他模塊,比如游戲物理、游戲AI、游戲動畫等。
每一個模塊都對應(yīng)著一門專業(yè)技能。
標(biāo)簽: