譯者序
作者簡介
第一部分 入門
第1章 序
第2章 前言
2.1 本書主要內容
2.2 本書讀者對象
2.3 本書結構
2.4 安裝說明
2.4.1 Unity引擎
2.4.2 使用光盤裏的內容
2.4.3 可選安裝
第3章 Unity引擎概覽
3.1 熟悉界麵
3.1.1 Project視圖
3.1.2 Hierarchy視圖
3.1.3 Inspector視圖
3.1.4 工具欄
3.1.5 Scene視圖
3.1.6 Game視圖
3.1.7 Animation視圖
3.1.8 控製颱和狀態欄
3.1.9 性能分析器和資源服務器
3.1.10 定製編輯器
3.2 Unity的基本概念
3.3 可用的Unity許可證
3.4 編輯器小結
第4章 第一款遊戲:從哪裏開始
4.1 基本設計理論
4.2 找到核心思想
4.2.1 頭腦風暴
4.2.2 研究其他的遊戲
4.2.3 紙麵原型:這並不僅僅適用於商業軟件
4.3 進行計劃
4.3.1 基本的大綱
4.3.2 一個簡單的關卡文檔
4.4 開始
第二部分 收集遊戲資源
第5章 用地形搭建舞颱
5.1 Unity的地形引擎
5.2 定製地形
5.2.1 使用高度圖來創建高度
5.2.2 使用筆刷來繪製高度
5.2.3 繪製貼圖
5.2.4 放置樹木
5.2.5 使用草以及細節網格讓場景變得更為散亂
5.2.6 地形設置
5.3 光照和陰影
5.4 添加天空盒和基於距離的霧化效果
5.5 在地形上加入水體
第6章 創建環境:導入基本的定製資源
6.1 先設計,後創建
6.2 導入貼圖
6.2.1 關於導入的更多細節
6.2.2 支持的格式
6.2.3 為《Widget》的地形導入貼圖
6.3 導入基本網格
6.4 設置簡單的著色器和材質
6.4.1 Unity提供的著色器
6.4.2 凹凸貼圖、高光貼圖、立方環境貼圖和細節貼圖
6.4.3 指定著色器和材質
6.4.4 創建一種定製的天空盒材質
6.4.5 添加水體
6.5 使用資源時的有用技巧
6.5.1 預製模型
6.5.2 大規模對象選擇和分組
6.5.3 根據網格對齊
6.5.4 重做地形
第7章 創建角色
7.1 玩傢角色基礎101
7.2 導入角色以及其他非靜態網格
第三部分 用交互性使道具更逼真
第8章 Unity中的腳本編程
8.1 一個編輯器、三種語言、大量的選擇
8.2 選擇一個腳本編輯器,你是否想要它實現自動完成
8.3 Unity腳本編程基礎
8.4 運算符和比較
8.4.1 運算符
8.4.2 比較
8.5 條件
8.5.1 if語句
8.5.2 if-else語句
8.5.3 switch語句
8.5.4 條件運算符
8.6 循環
8.6.1 for循環
8.6.2 while循環
8.7 函數
8.8 命名約定
第9章 編寫角色和狀態控製腳本
9.1 計劃和設計
9.2 一個簡單的第三人稱控製器
9.2.1 控製器變量
9.2.2 Unity的MonoBehaviour類
9.2.3 FixedUpdate:讓Widget移動
9.3 設置Unity的輸入管理器
9.3.1 Input類迴顧
9.3.2 軸的命名約定
9.3.3 Xbox風格控製器的設置示例
9.4 連接攝像機
9.5 裝配狀態控製器
9.5.1 協程
9.5.2 更新角色控製器
9.6 完整的腳本
9.6.1 Widget_Controller.js
9.6.2 Widget_Status.js
9.6.3 Widget_Camera.js
第10章 連接動畫
10.1 Unity中的動畫
10.2 動畫API
10.3 設置玩傢控製器的動畫
10.3.1 定義問題
10.3.2 更新控製器
10.3.3 創建動畫狀態管理器
10.4 在Unity內部創建動畫
10.4.1 一些基本概念
10.4.2 Animation視圖
10.5 設置一段新的動畫剪輯
10.5.1 創建定製動畫
10.5.2 連接
10.6 添加動畫事件
10.7 完整的腳本
10.7.1 Widget_Controller.js更新
10.7.2 Widget_Animation.js
第11章 使用觸發器並創建環境交互
11.1 觸發器和碰撞
11.2 設置一個簡單的觸發器對象
11.2.1 為瞭清晰而使用gizmo
11.2.2 背囊管理
11.3 設置其他類型的觸發器
11.3.1 死亡觸發器
11.3.2 檢查點——避免死亡的觸發器
11.4 完成的腳本
11.4.1 PickupItems.js
11.4.2 Widget_Inventory.js
11.4.3 DamageTrigger.js
11.4.4 CheckPoint.js
11.4.5 Widget_Status.js
第12章 創建探險和AI
12.1 人工智能:絕對人工、沒多少智能
12.1.1 一些簡單的AI指導方針
12.1.2 簡單的工作流
12.2 設置一個簡單的敵人
12.2.1 AI控製器
12.2.2 為一隻簡單的小兔子編寫的簡單的狀態管理器
12.3 設置Widget的攻擊
12.4 在完成任務後奬勵玩傢
12.5 産生和優化
12.6 完整代碼
12.6.1 EBunny_AIController.js
12.6.2 EBunny_Status.js
12.6.3 Widget_AttackController.js
12.6.4 Enemy_RespawnPoint.js
第13章 設計遊戲的GUI
13.1 基本的界麵理論
13.1.1 交互的步驟
13.1.2 為用戶設計
13.2 Unity的GUI係統
13.2.1 按鈕
13.2.2 滑塊
13.2.3 標簽和框
13.2.4 文本輸入
13.2.5 Toggle
13.2.6 工具欄和選擇矩陣
13.2.7 窗口
13.3 為Widget製作定製的皮膚
13.3.1 創建GUISkin
13.3.2 定義定製風格
13.3.3 導入新字體
13.4 設置HUD
13.4.1 GUIContent
13.4.2 角色顯示
13.4.3 分辨率
13.5 彈齣屏幕示例
13.6 添加全屏菜單
13.7 完整和更新的腳本
13.7.1 GUI_CustomControls.js
13.7.2 GUI_HUD.js
13.7.3 Widget_AttackController.js
13.7.4 EBunny_Status.js
13.7.5 GUI_WaypointStore.js
13.7.6 WaypointBehavior.js
13.7.7 GUI_MainMenu.js
第四部分 完善和最後的修飾
第14章 創建光影
14.1 燈光的類型
14.1.1 光源屬性
14.1.2 光照基礎
14.2 照亮遊戲世界
14.3 創建陰影
14.3.1 光照圖
14.3.2 使用陰影投射器製作的陰影
14.4 其他光照效果
14.4.1 鏡頭眩光
14.4.2 遮光
第15章 使用粒子係統
15.1 粒子:從煙到星塵
15.2 設置一個簡單的係統
15.2.1 粒子發射器
15.2.2 粒子動畫器
15.2.3 粒子渲染器和材質
15.3 高級粒子組件
15.3.1 世界粒子碰撞體
15.3.2 拖尾渲染器
15.3.3 綫條渲染器
15.4 Widget的粒子
15.4.1 拾取物品
15.4.2 檢查點激活
15.4.3 Widget的攻擊
15.4.4 敵人爆炸
15.5 更新的腳本
15.5.1 PickupItems.js
15.5.2 CheckPoint.js
15.5.3 Widget_AttackController.js
15.5.4 EBunny_Status.js
第16章 加入聲音和音樂
16.1 反饋和環境
16.2 設置一段簡單的聲音剪輯
16.2.1 環境音效
16.2.2 通過腳本控製聲音
16.2.3 加入背景音樂
16.3 更新的腳本
第五部分 發行和發布版本
第17章 基本的Unity調試和優化
17.1 Unity中的調試
17.1.1 Console
17.1.2 日誌文件
17.2 優化
17.2.1 Profiler
17.2.2 基本代碼優化
17.2.3 模擬
17.2.4 渲染Statistics頁麵
17.2.5 壓縮文件
17.2.6 優化圖形的其他方式
第18章 創建最終版本
18.1 準備版本
18.1.1 設置播放器
18.1.2 設置Application類
18.1.3 版本設置
18.2 其他版本特性
18.2.1 新的資源和DLC
18.2.2 打包資源以便今後使用
18.3 展望
· · · · · · (
收起)