《Unity 3D 遊戲開發(第2版)》讀後感

貓冬發表於2018-11-26

首先感謝作者能出版一本乾貨滿滿的書。

和市面上大多數Unity入門書不一樣的是,這本書不會手把手地教你做出一個完整的小遊戲,也不會教你入門C#。這本書更像是Unity 開發實用手冊(Cookbook 系列),作者依靠其十多餘年的遊戲開發經驗,針對不同的實際開發需求,提供了實用的解決方案,同時也講解了不少 Unity 開發的技巧和要點。

其中我最喜歡的是第三章擴充套件編輯器的內容,作者詳細地講解如何在各種檢視下擴充編輯器皮膚。在其他你看過的 Unity 教程中,他們可能更著重於教你如何用 Unity 提供的工具和元件做完一個遊戲。而在較大型的遊戲中,你常需要給程式、美術或者策劃寫一些有獨特需求的小工具,以此來制定規範和提高效率。

如果你想要搞清楚所有紋理的壓縮情況(例如找出所有高清無壓縮的 RGBA32 格式),你可以寫個擴充編輯器選單的指令碼來遍歷所有圖片壓縮格式。又或者你想給你的行為樹做一個可互動的皮膚,這些你想到的都能通過擴充套件編輯器來實現。這就像是親手做屬於自己的外掛一樣,令人振奮!

作者在講解基本的皮膚擴充的同時,還講解如何通過反編譯 Unity UI 原始碼來檢視原生皮膚的實現程式碼,從而借鑑來做出更完美的編輯器。

在後文中,作者也通過提出一個個小需求來講解我們開發時要注意的問題,例如通過把複用性強的圖片放在公共圖集(Atlas)下來減少 DrawCall、不要在不響應事件的元件上勾選 RaycastTarget 等等菜鳥可能不瞭解的小知識點。具體涉及到的知識點可以參考下書籍目錄。

前文說了這本書更像是 Cookbook,書中涵蓋的內容較多,因此程式碼也偏多,其中還包含些 Shader 程式碼。作者在程式碼解釋上做的不太夠,我在讀的時候會遇到些陌生的術語,但書中幾乎沒有腳註來提供額外的解釋。

總而言之,這本書能給像我一樣的新手開闊視野,讓我知道進階所要了解的領域有哪些。遊戲開發本身對綜合能力要求高,我相信讀過這本書的朋友能漲更多姿勢,能更從容地面對開發會遇到的各種問題。

最後用今天參加 Unity Meetup 獲贈的杯子鎮樓!

相關文章