第1章 游戲程序設計概述 11.1 計算機游戲的概念 11.2 計算機游戲的分類 21.2.1 角色扮演游戲(rpg,role-playing game) 21.2.2 動作類游戲(act, action game) 31.2.3 實時策略游戲(rts,real-time strategy game ) 31.2.4 **視覺射擊游戲(fps,first-person shooter) 31.2.5 模擬游戲(simulation game) 41.2.6 體育類游戲(srt,sports game) 41.3 設計游戲的要素 41.3.1 策劃 51.3.2 程序 51.3.3 美術 51.3.4 音樂 61.4 計算機游戲的發展趨勢 61.4.1 沉浸感 61.4.2 交互性 61.4.3 國際化 7第2章 win32應用程序 82.1 vs2010中win32應用程序創建過程 82.2 windows主函數 112.3 窗口建立過程 122.4 windows消息循環 142.5 窗口過程函數 152.6 win32應用程序示例 162.7 游戲程序框架 18第3章 windows繪圖函數 223.1 屏幕繪圖的相關概念 223.1.1 窗口和視口 223.1.2 gdi 坐標系 233.2 畫筆,畫刷與文字 253.2.1 gdi對象的建立 253.2.2 gdi對象的選用與刪除 273.2.3 gdi示例 273.3 gdi繪圖函數 313.3.1 點線函數 313.3.2 形狀函數 323.3.3 填充函數 33第4章 游戲中的角色與場景 344.1 位圖顯示 344.2 鏤空貼圖 374.2.1 使用bitblt()中的參數raster完成鏤空貼圖 384.2.2 使用transparentblt()函數完成鏤空貼圖 394.3 地圖顯示 404.3.1 平面拼接地圖 404.3.2 斜角拼接地圖 43第5章 動畫 485.1 使用定時器完成游戲動畫 485.1.1 建立定時器 485.1.2 刪除定時器 495.1.3 示例 495.2 利用消息循環完成游戲動畫 515.2.1 利用消息循環完成動畫原理 515.2.2 示例 53第6章 鍵盤與鼠標交互 556.1 windows鍵盤消息處理 556.1.1 windows鍵盤概述 556.1.2 鍵盤消息處理 566.1.3 鍵盤交互程序示例 576.2 windows鼠標消息處理 616.2.1 鼠標消息的處理方式 616.2.2 示例 636.2.3 相關函數的講解 69第7章 運動與碰撞檢測 717.1 運動 717.1.1 勻速直線運動 717.1.2 變速運動 757.2 碰撞檢測 777.2.1 以物體框架來檢測碰撞 777.2.2 用顏色來檢測碰撞 797.3 粒子系統 83第8章 3d游戲概述 848.1 3d坐標系及轉換 848.2 模型對象的建立 858.3 視圖變換 858.3.1 平移變換 868.3.2 旋轉變換 868.3.3 縮放變換 878.4 投影變換 878.5 3d游戲的開發手段 88第9章 direct3d簡介 909.1 direct3d的體系結構 909.1.1 direct3d的繪制流程 909.1.2 direct3d繪制程序框架圖 919.2 direct3d開發環境配置 929.3 direct3d初始化 949.3.1 創建direct3d接口對象。 959.3.2 獲取設備的硬件信息 959.3.3 填充d3dpresent_parameters結構體 969.3.4 idirect3d設備接口的創建 989.4 direct3d渲染 999.4.1 清屏操作 999.4.2 繪制 1009.4.3 翻轉顯示 1009.4.4 direct3d的渲染過程 1019.5 direct3d中二維文本的繪制 1029.6 direct3d框架程序 104第10章 direct3d圖形繪制基礎 11110.1 以頂點緩存為數據源的圖形繪制 11210.1.1 基礎知識 11210.1.2 在direct3d編程中使用頂點緩存的四個步驟 11310.2 頂點緩存程序示例 12010.3 以索引緩存為數據源的圖形繪制 12310.2.1 索引緩存繪圖 12410.4 索引緩存程序示例 12810.5 direct3d內置幾何體概述 13210.3.1 立方體的創建 13210.3.2 圓柱體的創建 13310.3.3 2d 多邊形的創建 13410.3.4 球體創建 13410.3.5 圓環的創建 13510.3.6 茶壺的創建 135第11章 direct3d變換 13711.1 視圖變換 13711.2 投影變換 14111.3 視口變換 14211.4 direct3d變換示例 14311.5 direct3d固定功能渲染流水線概述 148第12章 direct3d光照與材質 15012.1 光照類型 15012.1.1 環境光 15012.1.2 漫反射光 15112.1.3 鏡面反射光 15112.1.4 自發光 15212.2 光源類型。 15212.2.1 點光源 15412.2.2 方向光源 15412.2.3 聚光燈光源 15512.3 材質 15512.4 燈光與材質示例 157第13章 紋理映射 16313.1 紋理映射的概念 16313.2 direct3d中紋理映射的實現方法 16313.2.1 紋理坐標的定義 16313.2.2 頂點坐標與紋理坐標的對應 16413.2.3 紋理的創建 16513.2.4 紋理的啟用 16613.3 紋理繪制示例 168第14章 游戲引擎 17414.1 什么是游戲引擎 17414.2 目前比較流行的幾款主流引擎 17514.3 unity游戲引擎簡介 17614.4 unity下載與安裝 178第15章 unity程序開發框架和編輯器使用 18115.1 unity程序開發框架、工程和應用以及場景的關系 18115.2 工程的創建和導入 18215.3 unity編輯器介紹 18415.3.1 官方資源導入方法: 18415.3.2 場景中的6個視圖 18515.3.3 編輯器界面設置。 18615.3.1 unity編輯器——project(項目視圖) 18615.3.2 unity編輯器——hierarchy(層次視圖) 18815.3.3 unity編輯器——inspector(檢視視圖) 19015.3.4 unity編輯器——scene(場景視圖) 19215.3.5 unity編輯器——game(游戲視圖) 19415.3.6 unity編輯器——console(控制臺視圖) 195第16章 資源和游戲對象 19616.1 unity資源 19616.1.1 場景、資源、游戲對象、組件間的關系 19616.1.2 內部資源創建 19816.1.3 外部資源導入 19916.1.4 unity中預設的創建 20016.1.5 unity中圖片、模型和音頻、視頻的支持 20016.2 unity 常用組件介紹 20116.2.1 transform(變換組件) 20216.2.2 camera(攝像機組件) 20316.2.3 lights(光源) 20416.3 常用物理引擎組件 20516.3.1 rigidbody(剛體組件) 20616.3.2 collider(碰撞器組件) 207第17章 unity腳本程序基礎 20917.1 什么是腳本程序 20917.2 unity腳本編輯器 21017.3 unity腳本的創建與編輯 21117.3.1 script(腳本)創建 21117.3.2 編輯腳本程序 21217.3.3 常用事件函數 21417.3.4 游戲對象和組件訪問 215第18章 unity gui圖形用戶界面 21818.1 ugui的基本介紹 21818.2 ugui的創建和基本操作 21918.3 ugui實例演示 22018.3.1 gui之button和text 22118.3.2 gui之toggle應用 22218.3.3 gui的image和scrollbar應用 22418.3.4 通過button調用其他場景 22518.3.5 slider與游戲對象 22618.4 打包與發布 227第19章 mecanim動畫系統 22919.1 mecanim動畫系統及其優勢 22919.2 mecanim工作流程 23019.3 人形角色動畫講解 230第20章 游戲開發實例——奔跑的輪胎 239參考文獻 261