封麵頁
內容簡介
作者簡介
來自本書之前版本讀者的贊譽(摘自亞馬遜、京東:當當網絡書店)
前言
第1章 Unity基礎
1.1 初識遊戲引擎和Unity
1.2 運行Unity
1.2.1 Unity的版本
1.2.2 下載並安裝Unity
1.2.3 在綫激活Unity
1.2.4 運行示例工程
1.3 創建一個Hello World程序
1.3.1 安裝Visual Studio
1.3.2 編寫腳本
1.3.3 編譯輸齣
1.4 調試程序
1.4.1 顯示Log
1.4.2 在Visual Studio中設置斷點
1.4.3 在MonoDevelop中設置斷點
1.5 Unity腳本基礎
1.5.1 Script(腳本)組件
1.5.2 腳本的執行順序
1.5.3 腳本的序列化
1.5.4 組件式的編程
1.5.5 協程編程
1.6 預置文件Prefab
1.7 實例化
1.8 讀取資源
1.9 保存工程
1.10 小結
第2章 太空射擊遊戲
2.1 遊戲介紹
2.1.1 遊戲操作
2.1.2 主角和敵人
2.1.3 遊戲UI
2.2 導入美術資源
2.3 創建場景
2.3.1 創建火星背景和星空動畫
2.3.2 設置攝像機和燈光
2.4 創建主角
2.4.1 創建腳本
2.4.2 控製飛船移動
2.4.3 創建子彈
2.4.4 創建子彈Prefab
2.4.5 發射子彈
2.5 創建敵人
2.6 物理碰撞
2.6.1 添加碰撞體
2.6.2 觸發碰撞
2.7 高級敵人
2.7.1 創建敵人
2.7.2 發射子彈
2.8 聲音與特效
2.9 敵人生成器
2.10 遊戲UI和戰鬥管理
2.10.1 創建顯示得分的UI界麵
2.10.2 創建顯示遊戲失敗的UI界麵
2.10.3 編寫腳本
2.11 關卡跳轉
2.12 用鼠標控製主角
2.13 精確的碰撞檢測
2.14 自動創建Prefab
2.15 發布遊戲
2.16 使用Pool Boss創建緩存池
2.17 小結
第3章 第一人稱射擊遊戲
3.1 策劃
3.1.1 遊戲介紹
3.1.2 UI界麵
3.1.3 主角
3.1.4 敵人
3.2 遊戲場景
3.3 主角
3.3.1 角色控製器
3.3.2 攝像機
3.3.3 武器
3.4 敵人
3.4.1 尋路
3.4.2 設置動畫
3.4.3 行為
3.5 UI界麵
3.6 交互
3.6.1 主角的射擊
3.6.2 敵人的進攻與死亡
3.7 齣生點
3.8 小地圖
3.9 小結
第4章 塔防遊戲
4.1 策劃
4.1.1 場景
4.1.2 攝像機
4.1.3 勝負判定
4.1.4 敵人
4.1.5 防守單位
4.1.6 UI界麵
4.2 地圖編輯器
4.2.1 “格子”數據
4.2.2 在Inspector窗口添加自定義UI控件
4.2.3 創建一個自定義窗口
4.3 遊戲場景
4.4 製作UI
4.5 創建遊戲管理器
4.6 攝像機
4.7 路點
4.8 敵人
4.9 敵人生成器
4.9.1 創建敵人生成器
4.9.2 遍曆敵人
4.10 防守單位
4.11 生命條
4.12 小結
第5章 2D遊戲
5.1 Unity 2D係統簡介
5.2 創建Sprite
5.2.1 使用SpriteEditor創建Sprite
5.2.2 使用SpritePacker創建Sprite
5.2.3 圖層排序
5.2.4 Sprite邊框和重復顯示
5.3 動畫製作
5.3.1 序列幀動畫
5.3.2 使用腳本實現序列幀動畫
5.3.3 骨骼動畫
5.4 2D物理
5.5 捕魚遊戲
5.5.1 遊戲玩法
5.5.2 準備2D資源
5.5.3 創建魚
5.5.4 創建魚群生成器
5.5.5 創建子彈和大炮
5.5.6 物理碰撞
5.6 2D材質
5.6.1 修改Sprite顔色
5.6.2 自定義的黑白效果材質
5.7 小結
第6章 與Web服務器的交互
6.1 Web服務器簡介
6.2 在Windows上安裝部署Apache
6.2.1 安裝Apache
6.2.2 Apache常用命令
6.2.3 安裝MySQL
6.2.4 安裝PHP
6.2.5 安裝Redis
6.3 PHP開發環境
6.3.1 第一個PHP程序
6.3.2 調試PHP代碼
6.3.3 PHP基本語法
6.4 WWW基本應用
6.4.1 HTTP協議
6.4.2 GET請求
6.4.3 POST請求
6.4.4 上傳下載圖片
6.4.5 下載聲音文件
6.5 分數排行榜
6.5.1 創建數據庫
6.5.2 創建PHP腳本
6.5.3 上傳下載分數
6.5.4 使用Redis緩存數據
6.6 MD5驗證
6.7 Best HTTP
6.8 Linux環境部署
6.8.1 Linux管理工具
6.8.2 安裝Apache
6.8.3 安裝MySQL
6.8.4 安裝PHP
6.8.5 安裝Redis
6.9 小結
第7章 基於TCP/IP協議的聊天實例
7.1 TCP/IP開發簡介
7.2 一個簡單的網絡程序
7.3 網絡引擎
7.3.1 數據包
7.3.2 邏輯處理
7.3.3 網絡功能
7.3.4 創建聊天協議
7.4 聊天客戶端
7.5 聊天服務器端
7.6 JSON.NET簡介
7.7 小結
第8章 HTML5(WebGL)遊戲移植
8.1 關於HTML5和WebGL
8.2 導齣Unity遊戲到WebGL平颱
8.2.1 導齣WebGL遊戲
8.2.2 設置WebGL模闆
8.2.3 默認的index.html
8.2.4 文件訪問
8.3 自定義Loading頁麵
8.4 編寫WebGL遊戲插件
8.4.1 訪問Javascript示例一
8.4.2 訪問Javascript示例二
8.5 在網頁上保存遊戲記錄
8.6 AssetBundle
8.6.1 創建AssetBundle資源
8.6.2 下載、實例化AssetBundle資源
8.6.3 批量創建AssetBundle
8.7 小結
第9章 iOS遊戲移植
9.1 iOS簡介
9.2 軟件安裝
9.3 申請開發權限
9.4 設置iOS開發環境
9.5 測試iOS遊戲
9.6 發布iOS遊戲
9.7 對接iOS原生語言
9.7.1 在Xcode中創建Objectiv-C代碼
9.7.2 在Unity中引用Objectiv-C代碼
9.8 內消費
9.9 本地存儲位置
9.10 小結
第10章 Android遊戲移植
10.1 Android簡介
10.2 安裝Android SDK
10.3 運行Android遊戲
10.3.1 準備一部Android手機
10.3.2 設置Android遊戲工程
10.3.3 測試Android遊戲
10.3.4 發布Android遊戲
10.4 使用Android Studio
10.4.1 Android Studio簡介
10.4.2 配置Android Studio
10.4.3 創建Hello world程序
10.5 從Unity到Android Studio
10.5.1 創建Unity工程
10.5.2 創建Android Studio工程
10.5.3 查看Log
10.5.4 發布程序
10.6 使用腳本編譯遊戲
10.6.1 使用腳本導齣Android工程
10.6.2 使用腳本編譯Android工程
10.7 獲得簽名證書的sha1值
10.8 導入庫文件
10.9 Plugins目錄
10.10 代碼混淆
10.11 百度地圖實例
10.11.1 導入百度地圖SDK
10.11.2 實現百度地圖控件
10.12 觸屏操作
10.13 小結
第11章 Unity新GUI完全攻略
11.1 Unity的GUI係統
11.2 Canvas(畫布)
11.2.1 創建Canvas
11.2.2 設置Canvas
11.2.3 Canvas的屏幕適應模式
11.2.4 Canvas層級內UI控件的排序
11.2.5 Canvas的隱藏和顯示
11.2.6 查找UI層級下的子控件
11.3 UI坐標對齊方式
11.4 Text(文字)
11.5 自定義字體
11.5.1 創建字體貼圖
11.5.2 創建Shader
11.6 Image(圖像)
11.6.1 創建Image控件
11.6.2 設置Alpha
11.6.3 設置Raycast Target
11.6.4 設置UI圖像為Sliced類型
11.6.5 設置UI圖像為Tiled類型
11.6.6 設置UI圖像為Filled類型
11.6.7 Mask(濛版)
11.7 Button(按鈕)控件
11.7.1 創建按鈕
11.7.2 設置按鈕狀態變化
11.7.3 在編輯器中設置按鈕觸發事件
11.7.4 在腳本中定義按鈕單擊事件
11.7.5 判斷按壓按鈕事件
11.8 Toggle(開關)控件
11.8.1 創建Toggle控件
11.8.2 Toggle組
11.8.3 Toggle控件的腳本
11.9 Raw Image控件
11.10 Slider(滑塊)控件
11.10.1 創建Slider控件
11.10.2 改變滑塊大小
11.10.3 使用腳本控製滑塊
11.11 Input Field(文本輸入)控件
11.12 Scroll View(捲軸視圖)控件
11.13 Dropdown(下拉列錶)控件
11.14 實用UI功能
11.14.1 判斷是否單擊瞭UI
11.14.2 拖動UI控件
11.14.3 在UI前麵顯示粒子特效
11.15 使用插件DOTween製作動畫
11.15.1 在編輯器中設置DOTween動畫
11.15.2 在腳本中設置DOTween動畫
11.16 使用插件EnhancedScroller優化捲軸視圖
11.16.1 創建數據模型
11.16.2 創建UI視圖控製腳本
11.16.3 創建控製器
11.16.4 創建捲軸視圖UI
11.17 小結
第12章 遊戲開發中的美術工作流程
12.1 Unity和藝術傢
12.2 視圖操作捕捉
12.3 光照和渲染係統
12.3.1 光源類型
12.3.2 渲染管道
12.3.3 質量設置
12.3.4 實時陰影
12.3.5 環境光
12.3.6 Fog(霧)
12.3.7 直接照明與間接照明
12.3.8 Lightmapping(光照貼圖)
12.3.9 環境反射采樣
12.3.10 光照采樣
12.4 色彩空間
12.5 物理材質
12.6 攝像機
12.7 地形
12.8 粒子特效簡單教程
12.9 物理設置簡單教程
12.10 遊戲資源
12.10.1 貼圖
12.10.2 在3ds Max中創建法綫貼圖
12.10.3 3ds Max靜態模型導齣
12.10.4 3ds Max動畫導齣
12.10.5 Maya模型導齣
12.11 Unity兩足動畫係統
12.11.1 修改3ds Max兩足動畫骨骼
12.11.2 導入3ds Max兩足角色到Unity
12.11.3 導入角色動畫到Unity
12.11.4 錶情動畫
12.11.5 動畫控製器
12.12 動畫插件Skele
12.13 美術資源的優化
12.14 小結
第13章 Behavior Designer——行為樹AI
13.1 行為樹和AI
13.1.1 行為樹插件的安裝
13.1.2 簡單的AI處理方式
13.1.3 狀態機AI處理方式
13.1.4 Behavior Designer的行為樹AI處理方式
13.2 行為樹任務
13.2.1 任務返迴值
13.2.2 Action(動作)
13.2.3 Composite(組閤)
13.2.4 Conditional(條件)
13.2.5 Decorator(修飾)
13.3 行為樹實例教程
13.3.1 主角的行為樹
13.3.2 遊蕩的敵人
13.3.3 行為樹的交互
13.4 行為樹係統擴展
13.4.1 外部行為樹
13.4.2 自定義任務
13.4.3 自定義共享數據類型
13.4.4 在腳本中設置行為樹
13.4.5 在腳本中發送事件
13.5 優化
13.6 小結
第14章 玩玩PlayMaker
14.1 關於PlayMaker
14.1.1 優點和缺點
14.1.2 安裝
14.2 PlayMaker的模塊和工作機製
14.2.1 有限狀態機
14.2.2 創建PlayMaker狀態機
14.2.3 State(狀態)
14.2.4 Event(事件)
14.2.5 Action(動作)
14.2.6 變量
14.2.7 發送事件
14.3 自定義Action
14.4 小結
附錄A C#語言
A.1 C#基礎
A.1.1 C#簡介
A.1.2 運行控製颱程序
A.1.3 類型
A.1.4 內置類型
A.1.5 標識符
A.1.6 語句和錶達式
A.1.7 變量和常量
A.1.8 枚舉
A.1.9 數學操作符
A.1.10 關係操作符
A.1.11 邏輯操作符
A.1.12 操作符優先級
A.1.13 方法
A.1.14 條件分支語句
A.1.15 循環語句
A.1.16 三元操作符
A.1.17 預處理
A.2 麵嚮對象編程
A.2.1 類
A.2.2 this關鍵字
A.2.3 封裝
A.2.4 繼承與多態
A.2.5 靜態成員
A.2.6 通過字段名稱序列化對象
A.3 字符串
A.4 數組和排序
A.4.1 創建數組
A.4.2 遍曆數組
A.4.3 插入、刪除、查找
A.4.4 排序
A.5 I/O操作
A.5.1 寫文件
A.5.2 讀文件
A.5.3 刪除文件
A.5.4 讀寫bytes
A.6 委托
A.6.1 委托與事件
A.6.2 泛型委托
A.6.3 Action
A.7 小結
附錄B 特殊文件夾
附錄C Unity編輯器菜單中英文對照
· · · · · · (
收起)