Unity 3D腳本編程:使用C#語言開發跨平颱遊戲

Unity 3D腳本編程:使用C#語言開發跨平颱遊戲 下載 mobi epub pdf 電子書 2024


簡體網頁||繁體網頁
陳嘉棟 著



點擊這裡下載
    

想要找書就要到 圖書大百科
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

發表於2024-11-21

類似圖書 點擊查看全場最低價


圖書介紹

齣版社: 電子工業齣版社
ISBN:9787121297182
版次:1
商品編碼:12035114
包裝:平裝
開本:16開
齣版時間:2016-09-01
用紙:膠版紙
頁數:404
字數:560000
正文語種:中文


相關圖書





圖書描述

編輯推薦

適讀人群 :無論是初次接觸Unity 3D腳本編程的新人,還是有一定經驗的老手,都可以藉由本書來提高自己的水平。
  1 微軟MVP張善友傾情作序,力薦本書。
  2 本書作者是2015年微軟MVP,博客園推薦博客博主,在遊戲蠻牛及InfoQ網站發錶過多篇文章。
  3 本書以Unity 3D的跨平颱基礎Mono及其遊戲腳本語言C#為基礎進行講解,全麵係統地剖析瞭Unity 3D的跨平颱原理以及遊戲腳本開發的特點。
  4 無論是初次接觸Unity 3D腳本編程的新人,還是有一定經驗的老手,相信都可以藉本書來提高自己在Unity 3D 方麵的水平。



內容簡介

  本書以Unity 3D的跨平颱基礎Mono以及其遊戲腳本語言C#為基礎進行講解。全麵係統地剖析瞭Unity 3D的跨平颱原理以及遊戲腳本開發的特點。第1章主要介紹瞭Unity 3D引擎的曆史以及編輯器的基本知識;第2章主要介紹瞭Mono,以及Unity 3D利用Mono實現跨平颱的原理,並且分析瞭C#語言為何更加適閤Unity 3D遊戲開發;第3章到第10章主要介紹瞭Unity 3D遊戲腳本語言C#在使用Unity 3D開發過程中的知識點,包括Unity 3D腳本的類型基礎、數據結構、在Unity 3D腳本中使用泛型、使用委托和事件打造自己的消息係統、利用定製特性來拓展Unity 3D的編輯器、Unity 3D協程背後的秘密――迭代器以及可空類型和序列化在Unity 3D中使用的相關知識;第11章到第14章,則主要介紹瞭Unity 3D的資源管理以及優化和編譯的內容。

作者簡介

陳嘉棟,畢業於大連海事大學,目前任光宇在綫客戶端高級開發工程師。博客園推薦博客作者,微軟2015年度Visual Studio and Development Technologies有價值專傢(Most Valuable Professional)。認為編程首先是愛好,其次纔是職業。專注前沿技術,熱愛開源。深信代碼改變世界。

沒有值得吹噓的項目,隻有不斷前行的動力。


目錄

第1 章 Hello Unity 3D 1

1.1 Unity 3D 遊戲引擎進化史 1

1.2 Unity 3D 編輯器初印象 5

1.2.1 Project 視圖 5

1.2.2 Inspector 視圖8

1.2.3 Hierarchy 視圖 9

1.2.4 Game 視圖 10

1.2.5 Scene 視圖12

1.2.6 繪圖模式 14

1.2.7 渲染模式16

1.2.8 場景視圖控製 17

1.2.9 Effects 菜單和Gizmos 菜單18

1.3 Unity 3D 的組成 18

1.4 為何需要遊戲腳本 20

1.5 本章總結 21

第2 章 Mono 所搭建的腳本核心基礎22

2.1 Mono 是什麼22

2.1.1 Mono 的組成22

2.1.2 Mono 運行時 23

2.2 Mono 如何扮演腳本的角色24

2.2.1 Mono 和腳本 24

2.2.2 Mono 運行時的嵌入26

2.3 Unity 3D 為何能跨平颱?聊聊CIL38

2.3.1 Unity 3D 為何能跨平颱 38

2.3.2 CIL 是什麼 40

2.3.3 Unity 3D 如何使用CIL 跨平颱 44

2.4 腳本的選擇,C# 或 JavaScript48

2.4.1 最熟悉的陌生人——UnityScript48

2.4.2 UnityScript 與 JavaScript 51

2.4.3 C#與UnityScript 55

2.5 本章總結57

第3 章 Unity 3D 腳本語言的類型係統58

3.1 C#的類型係統 58

3.2 值類型和引用類型 65

3.3 Unity 3D 腳本語言中的引用類型73

3.4 Unity 3D 遊戲腳本中的值類型90

3.4.1 Vector2、Vector3 以及Vector4 90

3.4.2 其他常見的值類型94

3.5 裝箱和拆箱95

3.6 本章總結98

第4 章 Unity 3D 中常用的數據結構99

4.1 Array 數組100

4.2 ArrayList 數組101

4.3 List<T>數組102

4.4 C#中的鏈錶——LinkedList<T>103

4.5 隊列(Queue<T>)和棧(Stack<T>)107

4.6 Hash Table(哈希錶)和Dictionary<K,T>(字典)112

4.7 本章總結120

第5 章 在Unity 3D 中使用泛型121

5.1 為什麼需要泛型機製121

5.2 Unity 3D 中常見的泛型 124

5.3 泛型機製的基礎127

5.3.1 泛型類型和類型參數 128

5.3.2 泛型類型和繼承131

5.3.3 泛型接口和泛型委托 131

5.3.4 泛型方法136

5.4 泛型中的類型約束和類型推斷139

5.4.1 泛型中的類型約束139

5.4.2 類型推斷144

5.5 本章總結146

第6 章 在Unity 3D 中使用委托149

6.1 嚮Unity 3D 中的SendMessage 和BroadcastMessage 說拜拜150

6.2 認識迴調函數機製——委托151

6.3 委托是如何實現的154

6.4 委托是如何調用多個方法的 160

6.5 用事件(Event)實現消息係統164

6.6 事件是如何工作的 169

6.7 定義事件的觀察者,實現觀察者模式 172

6.8 委托的簡化語法 177

6.8.1 不必構造委托對象177

6.8.2 匿名方法 178

6.8.3 Lambda 錶達式 196

6.9 本章總結 201

第7 章 Unity 3D 中的定製特性 202

7.1 初識特性——Attribute 202

7.1.1 DllImport 特性203

7.1.2 Serializable 特性 205

7.1.3 定製特性到底是誰 207

7.2 Unity 3D 中提供的常用定製特性208

7.3 定義自己的定製特性類 213

7.4 檢測定製特性 216

7.5 親手拓展Unity 3D 的編輯器 217

7.6 本章總結227

第8 章 Unity 3D 協程背後的迭代器 228

8.1 初識Unity 3D 中的協程 228

8.1.1 使用StartCoroutine 方法開啓協程 229

8.1.2 使用StopCoroutine 方法停止一個協程 233

8.2 使用協程實現延時效果234

8.3 Unity 3D 協程背後的秘密——迭代器 238

8.3.1 你好,迭代器 238

8.3.2 原來是狀態機 242

8.3.3. 狀態管理 248

8.4 WWW和協程 253

8.5 Unity 3D 協程代碼實例 257

8.6 本章總結259

第9 章 在Unity 3D 中使用可空型 260

9.1 如果沒有值260

9.2 錶示空值的一些方案 261

9.2.1 使用魔值 261

9.2.2 使用標誌位 261

9.2.3 藉助引用類型來錶示值類型的空值 265

9.3 使用可空值類型 267

9.4 可空值類型的簡化語法 272

9.5 可空值類型的裝箱和拆箱 278

9.6 本章總結 280

第10 章 從序列化和反序列化看Unity 3D 的存儲機製 281

10.1 初識序列化和反序列化 281

10.2 控製類型的序列化和反序列化 290

10.2.1 如何使類型可以序列化 290

10.2.2 如何選擇序列化的字段和控製反序列化的流程 292

10.2.3 序列化、反序列化中流的上下文介紹及應用 296

10.3 Unity 3D 中的序列化和反序列化 299

10.3.1 Unity 3D 的序列化概覽 299

10.3.2 對Unity 3D 遊戲腳本進行序列化的注意事項302

10.3.3 如何利用Unity 3D 提供的序列化器對自定義類型進行序列化 305

10.4 Prefab 和實例化之謎——序列化和反序列化的過程309

10.4.1 認識預製體Prefab 309

10.4.2 實例化一個遊戲對象311

10.4.3 序列化和反序列化之謎314

10.5 本章總結317

第11 章 移動平颱動態讀取外部文件 318

11.1 假如我想在編輯器裏動態讀取文件318

11.2 移動平颱的資源路徑問題 320

11.3 移動平颱讀取外部文件的方法323

11.4 使用Resources 類加載資源330

11.5 使用WWW類加載資源332

11.5.1 利用WWW類的構造函數實現資源下載332

11.5.2 利用 WWW.LoadFromCacheOrDownload 方法實現資源下載333

11.5.3 利用WWWForm 類實現POST 請求335

11.6 本章總結335

第12 章 在Unity 3D 中使用AssetBundle 336

12.1 初識AssetBundle 336

12.2 使用AssetBundle 的工作流程337

12.2.1 開發階段 337

12.2.2 運行階段340

12.3 如何使用本地磁盤中的AssetBundle 文件344

12.4 AssetBundle 文件的平颱兼容性345

12.5 AssetBundle 如何識彆資源345

12.6 本章總結346

第13 章 Unity 3D 優化347

13.1 看看Unity 3D 優化需要從哪裏著手 347

13.2 CPU 方麵的優化348

13.2.1 對DrawCall 的優化 348

13.2.2 對物理組件的優化 354

13.2.3 處理內存,卻讓CPU 受傷的GC355

13.2.4 對代碼質量的優化356

13.3 對GPU 的優化 357

13.3.1 減少繪製的數目358

13.3.2 優化顯存帶寬358

13.4 內存的優化 359

13.4.1 Unity 3D 的內部內存 359

13.4.2 Mono 的托管內存 360

13.5 本章總結 363

第14 章 Unity 3D 的腳本編譯 365

14.1 Unity 3D 腳本編譯流程概覽365

14.2 JIT 即時編譯368

14.2.1 使用編譯器將遊戲腳本編譯為托管模塊368

14.2.2 托管模塊和程序集 369

14.2.3 使用JIT 編譯執行程序集的代碼 370

14.2.4 使用JIT 即時編譯的優勢 371

14.3 AOT 提前編譯372

14.3.1 在Unity 3D 中使用AOT 編譯372

14.3.2 iOS 平颱和Full-AOT 編譯 373

14.3.3 AOT 編譯的優勢 374

14.4 誰偷瞭我的熱更新?Mono、JIT 還是iOS 374

14.4.1 從一個常見的報錯說起375

14.4.2 美麗的JIT 377

14.4.3 模擬JIT 的過程 378

14.4.4 iOS 平颱的自我保護 381

14.5 Unity 3D 項目的編譯與發布 382

14.5.1 選擇遊戲場景和目標平颱 382

14.5.2 Unity 3D 發布項目的內部過程384

14.5.3 Unity 3D 部署到Android 平颱 384

14.5.4 Unity 3D 部署到iOS 平颱 386

14.6 本章總結 389


前言/序言

  推薦序
  Unity 3D 是由兩個具有巨大吸引力而極其令人愉悅的領域混閤而成的——C#語言和遊戲開發。Unity 團隊設計Unity 3D 將這兩者有機地結閤起來。
  對於C#語言的喜愛要迴溯至2000 年,當時微軟嚮世界推齣瞭新的語言C#,不僅震驚瞭
  Windows 領域,它同時也震驚瞭開源世界。GNOME 項目的領導者Meguel de Icaza 就看到瞭C#語言在桌麵開發的前景,著手創建瞭開源的.NET 跨平颱實現Mono,如今Mono 已經用於從嵌入式係統到服務器、工業控製、移動開發和遊戲的所有方麵。.NET 語言不僅確保瞭我們不再受限於某一種當下的語言,而且確保瞭我們可以繼續重用之前使用C 和C++編寫的現有代碼,C#使我們和我們所處的世界更加高效。隨著微軟成立.NET 基金會,大力發展開源跨平颱的.NET,同時Unity 公司也是.NET 基金會成員,我們有理由相信使用C#的Unity 3D 平颱也會發展得更好。
  正如Unity Technologies 的CEO David Helgason 先生所說:“Unity 是一個用來構建遊戲的工具箱,它整閤瞭圖像、音頻、物理引擎、人機交互以及網絡等技術。”Unity 3D 因為它的快速開發以及跨平颱能力而為人所知。Unity 3D 的快速開發和跨平颱能力正是來自於它對Mono平颱和C#語言的依賴,使用C/C++來編寫高性能要求的引擎代碼,針對開發人員采用高級的C#、UnityScript、Boo 語言作為遊戲開發的腳本。
  本書作者陳嘉棟帶著激情投身於Unity 遊戲開發,他在Unity 社區也非常活躍,他也通過博客寫瞭大量和Unity 3D 相關的文章,如今他將這些在社區上的貢獻匯集成這樣一個涉及Unity 3D 跨平颱原理分析、Unity 3D 和Mono 的結閤,以及在遊戲腳本編程中使用C#語言的作品。希望無論是初次接觸Unity 3D 腳本編程的新人,還是有一定經驗的老手都能對Unity 3D 瞭解得更全麵深刻,對C#語言在開發遊戲腳本過程中的知識點掌握得更牢固,寫齣更高效的代碼。
  使用C#和Unity 3D 構建遊戲是一件極佳的事情。你能夠使用一種強類型的、類型安全的、垃圾迴收的、具有最熱門API 的語言來開發遊戲,下麵開始學習陳嘉棟創作的這本佳作吧!
  微軟MVP 張善友
  2016.7.13 書於 深圳



Unity 3D腳本編程:使用C#語言開發跨平颱遊戲 下載 mobi epub pdf txt 電子書 格式

Unity 3D腳本編程:使用C#語言開發跨平颱遊戲 mobi 下載 pdf 下載 pub 下載 txt 電子書 下載 2024

Unity 3D腳本編程:使用C#語言開發跨平颱遊戲 下載 mobi pdf epub txt 電子書 格式 2024

Unity 3D腳本編程:使用C#語言開發跨平颱遊戲 下載 mobi epub pdf 電子書
想要找書就要到 圖書大百科
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

用戶評價

評分

速度很快,書還沒來得及看,感覺還可以。

評分

京東正版熱賣暢銷好評最多讀者推薦

評分

書挺好的,我準備好好學習啦!

評分

這本書非常實用,很喜歡,感謝京東。謝謝。價格也好啊

評分

包裝和質量都很好。內容也不錯,學習中。

評分

書有塑封,整體感覺不錯,適閤使用C#開發UNITY腳本。~~

評分

。。。。。。。。。。。。。。。。。。。。。。。。。

評分

送貨很快,618減的特彆多,也是全新的

評分

書質量不錯 內容也不錯 人各有誌

類似圖書 點擊查看全場最低價

Unity 3D腳本編程:使用C#語言開發跨平颱遊戲 mobi epub pdf txt 電子書 格式下載 2024


分享鏈接




相關圖書


本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

友情鏈接

© 2024 book.teaonline.club All Rights Reserved. 圖書大百科 版權所有