本書介紹了游戲設(shè)計與實現(xiàn)所需掌握的各方面基礎(chǔ)知識,側(cè)重于給讀者介紹游戲開發(fā)所需的各種基礎(chǔ)理論和編程工具,進而引導(dǎo)讀者掌握基于游戲引擎的游戲開發(fā)思想,通過較完整的游戲案例來解釋游戲設(shè)計與實現(xiàn)的整個流程。本書所選用游戲引擎或開源代碼庫均為OGRE、Unity3D等主流引擎。
第1章 游戲開發(fā)概述
1.1 計算機游戲歷史
1.2 什么是游戲
1.3 游戲的分類
1.3.1 角色扮演游戲
1.3.2 網(wǎng)頁游戲
1.3.3 動作游戲
1.3.4 冒險游戲
1.3.5 策略模擬類游戲
1.4 游戲設(shè)計的相關(guān)知識
1.4.1 計算機圖形學
1.4.2 藝術(shù)設(shè)計
1.4.3 人工智能
1.4.4 人機交互
1.5 案例分析:一個典型的游戲循環(huán)代碼框架
1.5.1 典型游戲循環(huán)結(jié)構(gòu)
1.5.2 打字游戲?qū)嵗?/span>
本章小結(jié)
習題1
參考文獻
第2章 Windows游戲開發(fā)基礎(chǔ)
2.1 事件模型
2.2 匈牙利符號表示法
2.2.1 變量的命名
2.2.2 函數(shù)的命名
2.2.3 類型和常量的命名
2.2.4 類的命名
2.2.5 參數(shù)的命名
2.3 最簡單的Windows程序
2.3.1 總是從WinMain()開始
2.3.2 程序剖析
2.3.3 設(shè)置MessageBox樣式
2.4 Windows應(yīng)用程序基本結(jié)構(gòu)
2.5 創(chuàng)建Windows窗口類
2.6 注冊Windows類
2.7 創(chuàng)建窗口
2.8 事件句柄
2.9 主事件循環(huán)
2.10 產(chǎn)生一個實時事件循環(huán)
本章小結(jié)
習題2
參考文獻
第3章 2D游戲引擎編程接口
3.1 精靈動畫
3.1.1 基本概念
3.1.2 圖像合成
3.1.3 精靈動畫的閃爍問題
3.2 2D地圖技術(shù)
3.2.1 固定地圖
3.2.2 滾屏地圖
3.3 2D碰撞檢測
3.3.1 地圖格子劃分檢測
3.3.2 外包圍盒檢測
3.3.3 像素檢測
3.4 二維游戲案例
3.4.1 界面設(shè)計
3.4.2 程序流程
3.4.3 關(guān)鍵數(shù)據(jù)結(jié)構(gòu)
3.4.4 核心函數(shù)
本章小結(jié)
習題3
第4章 3D游戲編程的數(shù)學基礎(chǔ)
4.1 坐標系
4.1.1 笛卡兒坐標系
4.1.2 常用坐標系
4.1.3 坐標系嵌套
4.1.4 坐標系轉(zhuǎn)換
4.2 向量
4.2.1 向量的數(shù)學定義
4.2.2 向量的幾何定義
4.1 矩陣
4.3.1 矩陣的數(shù)學定義
4.3.2 矩陣的幾何解釋
4.3.3 矩陣和旋轉(zhuǎn)
4.4 3D空間中方位與角位移
4.4.1 什么是方位
4.4.2 矩陣形式
4.4.3 歐拉角
4.4.4 四元數(shù)
4.4.5 各種方法比較
4.5 OGRE中的數(shù)學應(yīng)用
4.5.1 平移
4.5.2 縮放
4.5.3 旋轉(zhuǎn)
4.5.4 其他
4.5.5 總結(jié)
4.6 OGRE簡介
4.6.1 OGRE的設(shè)計理念
4.6.2 OGRE的設(shè)計亮點
4.6.3 OGRE子系統(tǒng)概述
4.7 OGRE簡單數(shù)學應(yīng)用實例實現(xiàn)
4.7.1 OGRE配置
4.7.2 OGRE中的重要知識點
4.7.3 平移
4.7.4 縮放
4.7.5 旋轉(zhuǎn)
4.7.6 投影
本章小結(jié)
習題4
參考文獻
第5章 一個基于Un卸的3D射擊游戲
5.1 Un卸的工程組織結(jié)構(gòu)
5.2 新建工程,導(dǎo)人資源
5.2.1 新建工程
5.2.2 Unity工作界面介紹
5.2.3 Unit資源導(dǎo)人
5.3 創(chuàng)建開始場景
5.3.1 創(chuàng)建開始場景
5.3.2 腳本講解
5.4 創(chuàng)建設(shè)置場景
5.4.1 創(chuàng)建設(shè)置場景
5.4.2 腳本講解
5.5 創(chuàng)建游戲場景
5.5.1 場景創(chuàng)建
5.5.2 地形
5.5.3 城墻底部
5.5.4 城墻上部
5.5.5 平行光光源和點光源
5.5.6 襲擊物爆炸時的幾種音效
5.5.7 各種襲擊物
5.5.8 子彈
5.5.9 手槍
5.5.10 沙塵暴效果
5.5.11 技能:流星火雨
5.5.12 技能:極度冰寒
5.5.13 主攝像機
5.5.14 為場景添加索引
5.6 生成游戲exe
5.7 游戲運行效果
本章小結(jié)
習題5
第6章 3D游戲引擎編程接口
6.1 3D游戲引擎框架分析
6.1.1 硬件層、設(shè)備驅(qū)動層、操作系統(tǒng)層、第三方SDK與中間件
6.1.2 平臺無關(guān)層、核心系統(tǒng)層、資源管理器層、用戶界面設(shè)備層
6.1.3 繪制器層、調(diào)優(yōu)調(diào)試工具層碰撞處理與物理計算層
6.1.4 動畫層、聲音層、網(wǎng)絡(luò)層、Gameplay基礎(chǔ)系統(tǒng)層
6.1.5 游戲特定相關(guān)系統(tǒng)層
6.2 場景管理子系統(tǒng)
6.3 基于UDK的游戲場景設(shè)計
6.3.1 場景搭建簡介
6.3.2 UDK場景編輯器介紹
6.3.3 地形模式基礎(chǔ)操作
6.3.4 攝像機模式基礎(chǔ)操作
6.3.5 場景光源光照設(shè)置
6.3.6 游戲場景構(gòu)建
6.4 資源管理子系統(tǒng)
6.4.1 脫機資源管理
6.4.2 運行時的資源管理
本章小結(jié)
習題6
參考文獻
第7章 游戲場景管理與加速計算
7.1 場景可視化處理
7.1.1 八叉樹
7.1.2 BSP二叉空間分割
7.1.3 BVH層次包圍盒技術(shù)
7.2 PVS技術(shù)
7.2.1 潛在可見集的構(gòu)造
7.2.2 使用潛在可見集
7.2.3 潛在可見集的其他編碼方法
7.2.4 流行的PVS計算方法
7.3 遮掩剔除技術(shù)
7.3.1 遮掩體
7.3.2 選擇遮掩物
7.3.3 7昆合型遮掩物選擇方法
本章小結(jié)
習題7
參考文獻
第8章 游戲用戶界面
8.1 游戲界面設(shè)備種類
8.1.1 命令行界面
8.1.2 圖形用戶界面
8.1.3 基于觸屏技術(shù)的圖形用戶界面
8.1.4 語音識別界面
8.1.5 基于攝像機的界面
8.1.6 基于傳感器的界面
8.2 人機交互編程技術(shù)
8.2.1 CEGUI
8.2.2 Kinect
8.2.3 Ieap Motion
8.3 三維游戲界面設(shè)計
8.3.1 用戶界面設(shè)計原則
8.3.2 用戶界面設(shè)計過程
8.3.3 用HID進行交互
本章小結(jié)
習題8
參考文獻
參考答案