-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Unity 3D實戰核心技術詳解

( 簡體 字)
作者:姜雪偉類別:1. -> 多媒體 -> 遊戲引擎 -> Unity
譯者:
出版社:電子工業出版社Unity 3D實戰核心技術詳解 3dWoo書號: 45716
詢問書籍請說出此書號!

缺書
不接受訂購

出版日:1/1/2017
頁數:336
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
不接受訂購
ISBN:9787121304323
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

推 薦 序


Unity跨平臺引擎這幾年在國內的發展勢頭非常迅猛,截至目前已經橫跨27個主流游戲平臺,尤其是在手游開發領域發展勢頭尤為凸顯。大量的中小型公司幾乎都使用Unity開發游戲。所以在App Store和Android Market上有大量用Unity開發的優質游戲或應用。開發者青睞Unity主要有兩個方面原因,一方面是Unity很方便就能跨平臺,另一方面是Unity上手快,但是在我看來它受歡迎最主要的原因是上手快。
跨平臺。Unity能一鍵發布在27個平臺上,但是每個平臺的特性是不同的,甚至可以說完全不一樣。比如代碼層面,接入移動SDK,不是所有廠商都能提供Unity的SDK接口。一些平臺特定的API,Unity可能沒有提供,或者說還沒來得及提供,在這些復雜情況下我們只能通過原生方法去調用它。此外,硬件層面內存CPU性能的不同,操作層面觸屏、手柄、PC實體按鍵也都不同,游戲玩法從設計上不可能都一樣,所以真正的跨平臺并不是隨隨便便打個包就能完事的。
上手快。Unity 底層全部使用 C/C++與 OpenGL ES 3D 渲染引擎交互,C#端封裝了UnityEditor.DLL和UnityEngine.DLL,通過與Unity內部C/C++代碼交互從而與底層代碼相互調用。從開發層面看,開發者不用考慮怎么實現復雜的圖形學、3D數學算法,甚至完全不懂OpenGL ES 的同學也能用 Unity 開發游戲。因為一切復雜的東西 Unity 在底層都封裝好了,開發者只需要編寫C#代碼訪問Unity提供的UnityEditor.DLL及其提供的API接口即可從容地開發3D游戲。聽起來是不是很酷炫呢?可是Unity依然存在很多隱患。
目前看來Unity確實很強大,能做的東西確實很多。但是它卻有點“臃腫”了。做過Unity手游開發的人應該都知道,Unity的效率并不高。在UI層面,無論是NGUI,還是UGUI,界面元素稍微多一點打開界面的時候就會出現卡頓。在3D層面,同屏人數多一點或者Shader復雜一些,幀率馬上就掉下去了。Unity引擎“大而全”,它為了各個平臺的兼容性,性能問題必然會顯現出來,因為沒辦法對某個游戲平臺做針對性的優化,加上Unity沒有開放源碼,開發者更多時候只能靠“猜”,所以有些更大的公司會使用自研引擎。
關于熱更新,我覺得它更多是用來修正游戲Bug的。如果沒有熱更新,修改一個Bug后需要重新提交App Store評審,這樣來來回回可能要耽誤好幾天時間,不是很合理。由于蘋果禁止了JIT,Unity官方沒有提供熱更新的方案,因此我們都采用Lua進行熱更新的開發。雖然Lua的解釋器可以用C++代碼解釋,但是在處理Lua與C#之間穿透的時候依然會很慢,程序設計不合理就會產生性能問題。
所以Unity最大的痛點就是性能問題,它上手確實很快,但是想學好卻是一件很難的事情。腳本開發非常地靈活,但是太靈活就可能會被濫用。現在的互聯網上已經充滿了各式各樣的Unity教程,但是大多數都比較零散,我們太需要一本從實戰項目總結出來的好書。姜雪偉的這本新書,從數學以及Shader層面出發,通過實戰項目經驗的分享以及框架層面的剖析為大家揭露開發的機密,不可不讀。


宣雨松MOMO
資深Unity 3D開發者


前  言


在IT行業中游戲程序員的薪資相對于其他領域來說還是比較高的,這也導致了許許多多的軟件開發者轉入游戲行業,從事Unity 3D游戲開發。Unity引擎因為具有上手快并且能跨平臺開發的優點,被眾多開發者所喜愛。雖然游戲研發公司對開發人員的需求越來越大,但是初次踏入游戲行業的開發者由于游戲產品項目經驗不足,并不被游戲公司所認可。我在泰課在線教育做講座時發現,有的學員水平還是不錯的,但由于他們在游戲行業的工作經驗不足,最終很難被游戲公司錄用。如今,政府和公司支持的各種創客空間的興起,為開發者提供了非常好的硬件條件,極大地促進了IT行業的繁榮發展,特別是游戲和軟件開發的發展。
但是游戲行業也是一種技術濃縮型行業,作為一名從業者,要想在這個行業生存和發展,沒有過硬的技術是不行的。可是,多年的從業經歷讓我見到許許多多的年輕人,他們在公司里只能寫一些簡單的邏輯,長期被邊緣化,隨時都有被辭退的危險。究其原因,還是他們缺乏解決實際問題的經驗,在公司的產品開發中無法提供價值。在和他們接觸的過程中,我發現了一個很嚴重的問題:這些能力欠佳的年輕人也有強烈的欲望去學習專業知識,但是市場上的Unity書籍講述的都是一些入門的基礎知識,已經遠遠不能滿足手游開發工作的需要,他們急需能夠與實際開發相結合并且能夠幫助他們解決實際問題的書籍。作為他們的前輩,我也有過相似的經歷,花費了很多時間去摸索,我一直在思考如何才能讓后來者少走彎路。經過多年的經驗積累,我終于奉上了這本嘔心瀝血之作。本書講述的所有知識點都是與實際開發密切相關的,很多代碼可以直接拿過來運用到項目中,實用性超強!
本書致力于用最通俗的語言講述初學者最需要的知識。在寫作形式上,本書采用圖文并茂的方式,讓讀者更容易掌握知識,為開發能力的提升提供了巨大的幫助。在技術知識的安排上,本書并沒有把核心技術一一講解,而是選擇了一些游戲開發中經常使用的技術。
本書的編寫不同于只寫對Unity編輯器的一些基本操作的書籍。本書重點講解游戲開發中實際運用的技術,分享游戲開發經驗,閱讀完本書,游戲開發者在技術方面和開發經驗方面都會有一個質的提升。本書并不是介紹一個游戲是如何制作的,而是介紹游戲開發中的各個核心技術點。因為對于現在的游戲公司來說,核心技術只掌握在少數幾個人手里,其他人很難接觸到,他們或者是在已有框架的基礎上開發,或者是使用已經封裝好的技術模塊開發。這樣對于開發者技術的提升是非常不利的,也不利于增長實際項目開發經驗。本書的宗旨就是把游戲中使用的核心技術無償奉獻給開發者,讓開發者在最短的時間內提高自己的技能。


姜雪偉
2016年10月
內容簡介:

《Unity 3D實戰核心技術詳解》詳細介紹了實際游戲開發中使用的核心技術,每一章都結合了游戲開發的實戰案例。首先,介紹了3D數學在Unity中的運用,3D數學知識包括:Unity坐標系統、向量、矩陣、四元數、歐拉角等基礎知識。其次,介紹了游戲開發中常用的核心技術:Avatar換裝系統、消息事件系統、Protobuf在游戲中的運用,以及游戲中的文本文件加密算法等。再次,介紹了游戲中的AI行為樹算法、殘影算法、移動端實時陰影繪制、移動端海水的繪制等技術。然后,在游戲架構設計方面,介紹了最經典的針對UI的MVC架構設計和對于角色動作和技能的FSM有限狀態機架構,以及游戲版本迭代使用的熱更新技術方案。最后,介紹了移動端GPU編程和游戲開發的一些經驗。《Unity 3D實戰核心技術詳解》適合具備一定Unity開發經驗的初學者和有一定Unity項目開發經驗的游戲開發者閱讀。

目錄:

推薦序
推薦語
前言
第1章 3D數學與UNITY
1.1 Unity坐標系
1.2 向量
1.2.1 向量的加法
1.2.2 向量的減法
1.2.3 向量點乘
1.2.4 向量叉乘
1.3 矩陣
1.3.1 平移矩陣
1.3.2 矩陣縮放
1.3.3 矩陣旋轉
1.4 四元數
1.5 歐拉角
1.6 小結
第2章 AVATAR換裝系統
2.1 換裝原理
2.2 換裝代碼實現
2.3 小結
第3章 消息事件封裝
3.1 消息類型定義和封裝
3.2 消息事件的監聽與分發
3.3 小結
第4章 PROTOBUF在游戲中運用
4.1 Protobuf消息結構體定義
4.2 編寫Protobuf結構體
4.3 Protobuf轉換工具制作
4.4 Protobuf文件在Unity中的運用
4.5 小結
第5章 游戲中的文本文件加密
5.1 配置文件格式
5.2 文件加載接口
5.3 文本文件加密算法及應用
5.4 小結
第6章 行為樹在游戲中的運用
6.1 行為樹插件介紹
6.2 案例講解
6.3 小結
第7章 殘影
7.1 殘影的技術實現
7.2 Demo展示
7.3 小結
第8章 移動端實時陰影繪制
8.1 移動端實時陰影實現原理
8.2 技術實現
8.3 透明材質實時陰影處理
8.4 小結
第9章 移動端海水仿真技術
9.1 海水實現的技術原理
9.2 海水網格
9.3 海水算法
9.4 海水的技術實現
9.5 海水浮力的實現
9.6 海面風力實現
9.7 操作界面
9.8 海水的渲染
9.9 海水案例分享
9.10 小結
第10章 MVC架構設計
10.1 MVC代碼模塊設計
10.2 事件代碼實現案例
10.3 窗體基類的實現案例
10.4 窗體子類代碼實現案例
10.5 控制類實現案例
10.6 狀態類設計實現
10.7 窗體管理類實現案例
10.8 MVC案例分享
10.9 小結
第11章 FSM有限狀態機在游戲中的運用
11.1 FSM基類設計
11.2 子類設計
11.3 實體類設計
11.4 技能子類
11.5 游戲案例分享
11.6 小結
第12章 移動端熱更新技術實現
12.1 熱更新架構設計
12.2 資源打包工具的開發
12.3 C#與Lua接口相互結合
12.4 模塊化接口實現
12.5 Lua腳本邏輯編寫
12.6 案例實現
12.7 小結
第13章 移動端SHADER技術
13.1 可編程流水線
13.2 頂點著色器
13.3 片段著色器
13.4 Shader案例分享
13.5 小結
第14章 游戲開發經驗分享
14.1 關于調試經驗分享
14.2 移動端游戲防破解技術
14.3 減小包體的大小
14.4 動態對象資源的優化
14.5 多線程資源下載技術
14.6 小結
序: