游戲引擎的知識首先,要玩游戲的話,對完美的引擎構(gòu)造需要知識。特別是像原來的神一樣使用商業(yè)引擎的團(tuán)隊(duì),對于各種商業(yè)引擎需要一定的理解和認(rèn)識。這里介紹的是《Game Engine Architecture 3.ed.》。因?yàn)樵趪鴥?nèi)只有第一版的翻譯,所以可能有很多人不知道和這個(gè)評論員一樣,這本書已經(jīng)更新了好幾次了。這樣的書一般技術(shù)更新很快,所以可以看到新的。請盡量不要看舊的。而且因?yàn)榉g跟不上,所以有能力的朋友會(huì)盡量去看英語版。渲染在游戲引擎中是相當(dāng)重要的。在這里介紹3本書。“Advanced Global Illumination 2.ed.”“Physically based Rendering 3.ed.”AGI是一本相當(dāng)薄的書,但是它明確地說明了光傳輸?shù)母鞣N理論。
與AGI相比,PBRT全書1000頁以上的版面被很多人看到和退縮,它可以讓你理解更多的光線追蹤里面的細(xì)節(jié)。RTR這本書的時(shí)效性很強(qiáng)。其中有只有歷史意義的內(nèi)容。可以說價(jià)格性能比沒有那么高。所以最后推薦。我想說的是,特別是RTR不推薦給新人。眾所周知,很多人在各種各樣的平臺上推薦這樣的書,但是大部分人都沒有讀完。實(shí)時(shí)呈現(xiàn)理論與離線呈現(xiàn)相同,只需使用更多trick近似一些效果,所有理論都可以在離線呈現(xiàn)(AGI/PBRT)中找到。而且,那個(gè)時(shí)效性非常強(qiáng),RTR4中已經(jīng)有很多算法在未來幾年內(nèi)已經(jīng)不能使用了。另外,這本書里也沒有新的算法。請不要被這些推薦書的人騙了。自己讀一遍最有說服力。如果實(shí)時(shí)渲染的話,我想可以學(xué)到很多API的使用和設(shè)計(jì)的想法。任何API都可以。通過實(shí)踐性的學(xué)習(xí),可以知道DX12和DX11的性能哪里不好。繪圖效率有多大不同?計(jì)算機(jī)科學(xué)的共同表現(xiàn)是游戲中可以看到的最表面的部分。游戲的其他技術(shù)有什么?答案應(yīng)該是各種計(jì)算機(jī)科學(xué)知識的總和。想優(yōu)化CPU的執(zhí)行性能的話,應(yīng)該怎么做?緩存如何影響我的游戲效率?聯(lián)合國的ECS是什么?99行寫的雪和雪的女王Taichi是什么?
我學(xué)習(xí)了體系結(jié)構(gòu)。我相信自己能知道這些問題的答案。游戲開發(fā)為什么使用lua?我們在說虛擬機(jī),到底指的是什么?在Unity的C宅怎么稱呼lua腳本?C波段的反射又是什么?反射的開銷都是編譯和運(yùn)行的什么環(huán)節(jié)?Ureal Header Tool是實(shí)現(xiàn)最高反射的機(jī)制嗎?我學(xué)習(xí)了關(guān)于編譯原理和編程語言的理論。這些問題都很簡單。多人游戲怎么做?網(wǎng)上可以收到的最多人數(shù)是多少?如果有人用外掛會(huì)怎么樣?我的游戲程序?yàn)槭裁床槐粍e人解讀?少年,電腦網(wǎng)絡(luò),甚至是密碼學(xué),都在等你。游戲中的沖突是怎么實(shí)現(xiàn)的?物體的破損是怎么實(shí)現(xiàn)的?水、布、煙等物體怎么動(dòng)?整體的照片怎么顯示?計(jì)算解析學(xué)、力學(xué)、數(shù)值分析、幾何學(xué)?你現(xiàn)在后悔沒能很好地聽清大學(xué)一年級的分?jǐn)?shù)嗎?也就是說,我切實(shí)感受到大部分知識都可以應(yīng)用于游戲。我們的理解不像專家那么深刻,但是在游戲開發(fā)過程中應(yīng)用這些知識也是一個(gè)很大的挑戰(zhàn)