書籍簡(jiǎn)介:
本書的作者是日本知名游戲公司萬代南夢(mèng)宮的資深開發(fā)人員,書中通過10個(gè)不同類型的游戲?qū)嵗?,展示了真正的游戲設(shè)計(jì)和實(shí)現(xiàn)過程。本書的重點(diǎn)不在于講解Unity的各種功能細(xì)節(jié),而在于介紹核心玩法的設(shè)計(jì)和實(shí)現(xiàn)思路。每個(gè)實(shí)例都從一個(gè)idea開始,不斷豐富,進(jìn)而自然而然地推出各種概念,引導(dǎo)讀者思考必要的數(shù)據(jù)結(jié)構(gòu)和編程方法。掌握了這些思路,即便換成另外一種引擎,也可以輕松地開發(fā)出同類型的游戲。
作者簡(jiǎn)介:
加藤政樹
就職于日本著名的游戲制造商南夢(mèng)宮。除產(chǎn)品開發(fā)外,還負(fù)責(zé)公司內(nèi)部中間件的開發(fā)和技術(shù)研究、高端項(xiàng)目支持、新游戲的研發(fā)等工作。近年來也開始致力于NPR(Non Photorealistic Rendering)的研究。代表作品有Fitness Party、Muscle March。
出版時(shí)間:
2017年03月
章節(jié)目錄:
第0章 游戲開發(fā)前的準(zhǔn)備 1
0.1 Unity入門 Concept 2
0.1.1 概要 2
0.1.2 游戲?qū)ο蟆 ?
0.1.3 組件 5
0.1.4 資源 8
0.1.5 流程 10
0.1.6 場(chǎng)景 11
0.1.7 預(yù)設(shè) 13
0.1.8 小結(jié) 16
0.2 先來復(fù)習(xí)一下Unity的基礎(chǔ)知識(shí)吧 Concept 17
0.2.1 腳本一覽 17
0.2.2 本章小節(jié) 18
0.2.3 本章開發(fā)的小游戲 18
0.3 入門教程(上)——?jiǎng)?chuàng)建項(xiàng)目 Tips 18
0.3.1 概要 18
0.3.2 創(chuàng)建新項(xiàng)目 19
0.3.3 創(chuàng)建地面(創(chuàng)建游戲?qū)ο螅 ?0
0.3.4 創(chuàng)建場(chǎng)景,保存項(xiàng)目 21
0.3.5 調(diào)整場(chǎng)景視圖的攝像機(jī) 23
0.3.6 創(chuàng)建方塊和小球(創(chuàng)建游戲?qū)ο蟛⒄{(diào)整坐標(biāo)) 24
0.3.7 運(yùn)行游戲 27
0.3.8 攝像機(jī)的便捷功能 28
0.3.9 修改游戲?qū)ο蟮拿帧 ?8
0.3.10 模擬物理運(yùn)動(dòng)(添加Rigidbody組件) 29
0.3.11 讓玩家角色跳起來(添加游戲腳本) 30
0.3.12 修改游戲?qū)ο蟮念伾▌?chuàng)建材質(zhì)) 35
0.3.13 調(diào)整游戲畫面的尺寸(調(diào)整播放器設(shè)置) 36
0.3.14 小結(jié) 38
0.4 入門教程(下)——讓游戲更有趣 Tips 38
0.4.1 概要 38
0.4.2 讓小球飛起來(物理運(yùn)動(dòng)和速度) 38
0.4.3 創(chuàng)建大量小球(預(yù)設(shè)游戲?qū)ο螅 ?9
0.4.4 整理項(xiàng)目視圖 41
0.4.5 發(fā)射小球(通過腳本創(chuàng)建游戲?qū)ο螅 ?3
0.4.6 刪除畫面外的小球(通過腳本刪除游戲?qū)ο螅 ?6
0.4.7 防止玩家角色在空中起跳(發(fā)生碰撞時(shí)的處理) 48
0.4.8 禁止玩家角色旋轉(zhuǎn)(抑制旋轉(zhuǎn)) 50
0.4.9 讓玩家角色不被彈開(設(shè)置重量) 51
0.4.10 讓小球強(qiáng)烈反彈(設(shè)置物理材質(zhì)) 52
0.4.11 消除“漂浮感”(調(diào)整重力大?。 ?4
0.4.12 調(diào)整攝像機(jī)的位置 56
0.4.13 修復(fù)空中起跳的bug(區(qū)分碰撞對(duì)象) 57
0.4.14 小結(jié) 63
0.5 關(guān)于預(yù)設(shè) Tips 64
0.5.1 概要 64
0.5.2 改良“小方塊”游戲?qū)ο蟆 ?4
0.5.3 預(yù)設(shè)與對(duì)象實(shí)例 65
0.5.4 預(yù)設(shè)和實(shí)例的變更 67
0.5.5 小結(jié) 70
0.6 C#和JavaScript的對(duì)比 Tips 71
0.6.1 概要 71
0.6.2 類的定義 72
0.6.3 變量的定義 72
0.6.4 函數(shù)的定義 73
0.6.5 作用域 74
0.6.6 靜態(tài)函數(shù)和靜態(tài)變量的定義 74
0.6.7 泛型方法的調(diào)用 74
0.6.8 Bool類型和字符串類型 75
0.6.9 數(shù)組 75
0.6.10 小結(jié) 75
第1章 點(diǎn)擊動(dòng)作游戲——怪物 77
1.1 玩法介紹 How toPlay 78
1.2 簡(jiǎn)單的操作和爽快感 Concept 80
1.2.1 腳本一覽 80
1.2.2 本章小節(jié) 82
1.3 無限滾動(dòng)的背景 Tips 82
1.3.1 關(guān)聯(lián)文件 82
1.3.2 概要 82
1.3.3 背景組件的顯示位置 83
1.3.4 小結(jié) 85
1.4 無限滾動(dòng)的背景的改良 Tips 85
1.4.1 關(guān)聯(lián)文件 85
1.4.2 概要 86
1.4.3 稍作嘗試 86
1.4.4 背景組件顯示位置的改良 87
1.4.5 小結(jié) 89
1.5 怪物出現(xiàn)模式的管理 Tips 89
1.5.1 關(guān)聯(lián)文件 89
1.5.2 概要 89
1.5.3 怪物出現(xiàn)的時(shí)間點(diǎn) 90
1.5.4 怪物出現(xiàn)模式的變化 92
1.5.5 小結(jié) 96
1.6 武士和怪物的碰撞檢測(cè) Tips 96
1.6.1 關(guān)聯(lián)文件 96
1.6.2 概要 96
1.6.3 分別對(duì)各個(gè)怪物進(jìn)行碰撞檢測(cè)時(shí)的問題 97
1.6.4 把怪物編成小組 98
1.6.5 小結(jié) 100
1.7 得分高低的判定 Tips 100
1.7.1 概要 100
1.7.2 武士的攻擊判定 100
1.7.3 判斷在多近的距離斬殺 101
1.7.4 小結(jié) 104
1.8 使被砍中的怪物向四處飛散 Tips 104
1.8.1 概要 104
1.8.2 想象一下“圓錐體” 104
1.8.3 具體的計(jì)算方法 106
1.8.4 小結(jié) 108
第2章 拼圖游戲——迷你拼圖 109
2.1 玩法介紹 How toPlay 110
排列拼圖碎片,拼出最后的圖案! 110
2.2 流暢的拖曳操作 Concept 112
2.2.1 腳本一覽 112
2.2.2 本章小節(jié) 112
2.3 點(diǎn)住碎片的任意位置拖動(dòng) Tips 114
2.3.1 關(guān)聯(lián)文件 114
2.3.2 概要 114
2.3.3 透視變換和逆透視變換 114
2.3.4 被點(diǎn)擊處即為光標(biāo)的位置 114
2.3.5 測(cè)試拖曳碎片的中心 117
2.3.6 小結(jié) 118
2.4 打亂拼圖碎片 Tips 118
2.4.1 關(guān)聯(lián)文件 118
2.4.2 概要 118
2.4.3 設(shè)置拼圖碎片的坐標(biāo)為隨機(jī)數(shù) 118
2.4.4 改進(jìn)策略 119
2.4.5 小結(jié) 124
第3章 吃豆游戲——地牢吞噬者 125
3.1 玩法介紹 How toPlay 126
3.2 適時(shí)進(jìn)退和逆轉(zhuǎn)的機(jī)會(huì) Concept 128
3.2.1 腳本一覽 128
3.2.2 本章小節(jié) 130
3.3 平滑的網(wǎng)格移動(dòng) Tips 130
3.3.1 關(guān)聯(lián)文件 130
3.3.2 概要 130
3.3.3 能夠改變方向的時(shí)機(jī) 131
3.3.4 穿過網(wǎng)格的時(shí)機(jī) 131
3.3.5 小結(jié) 133
3.4 地圖數(shù)據(jù) Tips 134
3.4.1 關(guān)聯(lián)文件 134
3.4.2 概要 134
3.4.3 文本文件的格式 134
3.4.4 擴(kuò)展編輯器的功能 139
3.4.5 小結(jié) 141
3.5 攝像機(jī)變焦功能的運(yùn)用 Tips 141
3.5.1 關(guān)聯(lián)文件 141
3.5.2 概要 141
3.5.3 調(diào)整策略 142
3.5.4 攝像機(jī)的視野 143
3.5.5 緩動(dòng)動(dòng)畫 145
3.5.6 變焦效果的代碼實(shí)現(xiàn) 146
3.5.7 小結(jié) 149
3.6 幽靈的AI Tips 149
3.6.1 關(guān)聯(lián)文件 149
3.6.2 概要 149
3.6.3 跟蹤的算法 150
3.6.4 埋伏等待型、包圍攻擊型和隨機(jī)型 153
3.6.5 觀察幽靈的行動(dòng) 155
3.6.6 小結(jié) 157
第4章 3D聲音探索游戲——In the Dark Water 159
4.1 玩法介紹 How toPlay 160
4.2 只依靠聲音 Concept 162
4.2.1 腳本一覽 162
4.2.2 本章小節(jié) 164
4.3 僅依靠聲音定位 Tips 164
4.3.1 概要 164
4.3.2 3D 聲音的特性 164
4.3.3 用于實(shí)驗(yàn)的項(xiàng)目 166
4.3.4 小結(jié) 167
4.4 3D聲音的控制 Tips 167
4.4.1 關(guān)聯(lián)文件 167
4.4.2 概要 167
4.4.3 3D 聲音的設(shè)置 167
4.4.4 按一定間隔發(fā)出聲音 168
4.4.5 聲音的淡出 169
4.4.6 小結(jié) 170
4.5 潛水艇的操縱 Tips 171
4.5.1 關(guān)聯(lián)文件 171
4.5.2 概要 171
4.5.3 操作方法 171
4.5.4 轉(zhuǎn)彎速度的衰減 173
4.5.5 小結(jié) 177
4.6 聲納的制作方法 Tips 177
4.6.1 概要 177
4.6.2 Perspective和Ortho 178
4.6.3 Dark Water的聲納攝像機(jī) 179
4.6.4 攝像機(jī)和對(duì)象的層 180
4.6.5 稍作嘗試 183
4.6.6 攝像機(jī)的視口 184
4.6.7 小結(jié) 185
第5章 節(jié)奏游戲——搖滾女孩 187
5.1 玩法介紹 How toPlay 188
5.2 Band-girl的世界 Concept 189
5.2.1 腳本一覽 190
5.2.2 本章小節(jié) 190
5.3 顯示點(diǎn)擊時(shí)刻的節(jié)拍標(biāo)記 Tips 192
5.3.1 關(guān)聯(lián)文件 192
5.3.2 概要 192
5.3.3 定位單元 192
5.3.4 標(biāo)記的顯示 195
5.3.5 小結(jié) 198
5.4 判斷是否配合了音樂點(diǎn)擊 Tips 198
5.4.1 關(guān)聯(lián)文件 198
5.4.2 概要 198
5.4.3 得分高低的判斷 198
5.4.4 避免重復(fù)判斷 200
5.4.5 小結(jié) 205
5.5 演出數(shù)據(jù)的管理和執(zhí)行 Tips 205
5.5.1 關(guān)聯(lián)文件 205
5.5.2 概要 205
5.5.3 事件數(shù)據(jù)的檢索 205
5.5.4 定位單元和執(zhí)行單元 207
5.5.5 小結(jié) 211
5.6 其他調(diào)整功能 Tips 211
5.6.1 關(guān)聯(lián)文件 211
5.6.2 概要 211
5.6.3 什么是turnaround 212
5.6.4 顯示時(shí)刻的偏移值 212
5.6.5 定位條 214
5.6.6 顯示標(biāo)記的行號(hào) 216
5.6.7 小結(jié) 216
第6章 全方位滾動(dòng)射擊游戲——噬星者 217
6.1 玩法介紹 How toPlay 218
6.2 功能強(qiáng)大的激光制導(dǎo) Concept 219
6.2.1 腳本一覽 220
6.2.2 本章小節(jié) 220
6.3 索敵激光的碰撞檢測(cè) Tips 222
6.3.1 關(guān)聯(lián)文件 222
6.3.2 概要 222
6.3.3 索敵激光的碰撞檢測(cè) 222
6.3.4 碰撞網(wǎng)格的生成方法 224
6.3.5 確認(rèn)碰撞網(wǎng)格 229
6.3.6 小結(jié) 229
6.4 不會(huì)重復(fù)的鎖定 Tips 230
6.4.1 關(guān)聯(lián)文件 230
6.4.2 概要 230
6.4.3 鎖定的管理 230
6.4.4 小結(jié) 233
6.5 制導(dǎo)激光 Tips 233
6.5.1 關(guān)聯(lián)文件 233
6.5.2 概要 233
6.5.3 根據(jù)TrailRenderer生成網(wǎng)格 233
6.5.4 制導(dǎo)激光的移動(dòng) 234
6.5.5 稍作嘗試 238
6.5.6 小結(jié) 238
6.6 消息窗口 Tips 239
6.6.1 關(guān)聯(lián)文件 239
6.6.2 概要 239
6.6.3 消息隊(duì)列和顯示緩沖區(qū) 239
6.6.4 小結(jié) 244
第7章 消除動(dòng)作解謎游戲——吃月亮 245
7.1 玩法介紹 How toPlay 246
7.2 爽快的連鎖和有趣的方塊移動(dòng) Concept 248
7.2.1 腳本一覽 248
7.2.2 本章小節(jié) 250
7.3 同色方塊相鄰與否的判斷 Tips 250
7.3.1 關(guān)聯(lián)文件 250
7.3.2 概要 250
7.3.3 連結(jié)與連鎖 250
7.3.4 不停地檢測(cè)相鄰方塊 251
7.3.5 遞歸調(diào)用 253
7.3.6 用于測(cè)試連結(jié)檢測(cè)的項(xiàng)目 256
7.3.7 防止無限循環(huán)檢測(cè) 257
7.3.8 小結(jié) 258
7.4 方塊的初始設(shè)置 Tips 259
7.4.1 關(guān)聯(lián)文件 259
7.4.2 概要 259
7.4.3 顏色的選擇方法 259
7.4.4 隨機(jī)選取方塊的擺放位置 262
7.4.5 小結(jié) 264
7.5 動(dòng)畫的父子構(gòu)造關(guān)系 Tips 264
7.5.1 關(guān)聯(lián)文件 264
7.5.2 概要 264
7.5.3 方塊的運(yùn)動(dòng) 264
7.5.4 動(dòng)畫的父子構(gòu)造——用于測(cè)試的項(xiàng)目 267
7.5.5 《吃月亮》中面板的位置和角度的計(jì)算 272
7.5.6 小結(jié) 274
7.6 方塊的平滑移動(dòng) Tips 274
7.6.1 關(guān)聯(lián)文件 274
7.6.2 概要 274
7.6.3 數(shù)組的索引和畫面上的位置 275
7.6.4 桶列方法 277
7.6.5 小結(jié) 280
第8章 跳躍動(dòng)作游戲——貓?zhí)埓啊 ?81
8.1 玩法介紹 How toPlay 282
8.2 刺激的跳躍 Concept 284
8.2.1 腳本一覽 284
8.2.2 本章小節(jié) 286
8.3 角色的狀態(tài)管理 Tips 286
8.3.1 關(guān)聯(lián)文件 286
8.3.2 概要 286
8.3.3 角色的動(dòng)作 286
8.3.4 狀態(tài)的遷移 287
8.3.5 狀態(tài)管理的流程 288
8.3.6 小結(jié) 292
8.4 可以控制高度的跳躍 Tips 293
8.4.1 關(guān)聯(lián)文件 293
8.4.2 概要 293
8.4.3 跳躍的物理規(guī)律 293
8.4.4 自由控制跳躍高度的操作 294
8.4.5 小結(jié) 297
8.5 窗戶紙的碰撞檢測(cè) Tips 297
8.5.1 關(guān)聯(lián)文件 297
8.5.2 概要 297
8.5.3 “碰撞”的內(nèi)部實(shí)現(xiàn)機(jī)制 297
8.5.4 窗戶對(duì)象 299
8.5.5 矛盾的碰撞結(jié)果 299
8.5.6 平滑地穿過格子眼 309
8.5.7 小結(jié) 312
第9章 角色扮演游戲——村子里的傳說 313
9.1 玩法介紹 How toPlay 314
9.2 移動(dòng)簡(jiǎn)單,人人都是主人公 Concept 316
9.2.1 腳本一覽 316
9.2.2 本章小節(jié) 318
9.3 事件和Actor Tips 318
9.3.1 關(guān)聯(lián)文件 318
9.3.2 概要 318
9.3.3 事件 318
9.3.4 事件的數(shù)據(jù)結(jié)構(gòu) 322
9.3.5 Actor 324
9.3.6 事件的執(zhí)行 327
9.3.7 試著執(zhí)行一個(gè)事件 330
9.3.8 小結(jié) 332
9.4 游戲內(nèi)參數(shù) Tips 332
9.4.1 關(guān)聯(lián)文件 332
9.4.2 概要 332
9.4.3 游戲內(nèi)參數(shù) 332
9.4.4 小結(jié) 336
9.5 事件文件的讀取 Tips 336
9.5.1 關(guān)聯(lián)文件 336
9.5.2 概要 336
9.5.3 文件的讀取 336
9.5.4 小結(jié) 340
9.6 特殊的事件 Tips 341
9.6.1 關(guān)聯(lián)文件 341
9.6.2 概要 341
9.6.3 選項(xiàng)指令 341
9.6.4 寶箱事件 343
9.6.5 進(jìn)入屋子的事件 345
9.6.6 小結(jié) 346
第10章 駕駛游戲——迷蹤賽道 347
10.1 玩法介紹 How toPlay 348
10.2 自行創(chuàng)建,即作即用 Concept 350
10.2.1 腳本一覽 350
10.2.2 本章小節(jié) 352
10.2.3 關(guān)于CarTutorial腳本 352
10.3 透視變換和逆透視變換 Tips 352
10.3.1 關(guān)聯(lián)文件 352
10.3.2 概要 352
10.3.3 透視變換 353
10.3.4 逆透視變換 355
10.3.5 小結(jié) 357
10.4 多邊形網(wǎng)格的生成方法 Tips 358
10.4.1 關(guān)聯(lián)文件 358
10.4.2 概要 358
10.4.3 生成道路的中心線 359
10.4.4 多邊形的生成方法 361
10.4.5 生成道路多邊形 362
10.4.6 急轉(zhuǎn)彎時(shí)的多邊形重疊 367
10.4.7 用于測(cè)試多邊形生成的項(xiàng)目 368
10.4.8 小結(jié) 368
10.5 模型的變形 Tips 368
10.5.1 關(guān)聯(lián)文件 368
10.5.2 概要 368
10.5.3 變形后頂點(diǎn)的位置坐標(biāo) 369
10.5.4 小結(jié) 373
10.6 點(diǎn)綴實(shí)例 Tips 373
10.6.1 關(guān)聯(lián)文件 373
10.6.2 概要 373
10.6.3 生成基準(zhǔn)線 374
10.6.4 把樹木設(shè)置到基準(zhǔn)線上 378
10.6.5 小結(jié) 382
后記 383
封面圖: