內容簡介
《Windows遊戲程序設計基礎》講述瞭如何使用Visual C++來開發Windows平颱遊戲的基礎知識,主要針對想學習遊戲設計以及希望進行Windows程序設計的初學者。
全書分為4篇共14章。第1篇為Windows編程基礎,除瞭基本的概念和工具的使用外,還介紹瞭窗口與消息機製、Unicode編程、GDI編程等內容;第2篇為遊戲編程基礎,介紹瞭庫的編程技術、設計模式、幀的基本概念,並搭建瞭一個Windows下遊戲編程的框架;第3篇的射擊遊戲綜閤運用前麵兩篇的所有知識,完成瞭一款射擊遊戲,並講述瞭XML的基本編程以及關卡設計;第4篇為進一步學習打下基礎,講解瞭最基礎的Windows核心編程,包括進程管理、多綫程編程、互斥訪問和同步,以及Direct X應用於2D編程的內容。《Windows遊戲程序設計基礎》介紹瞭在Windows環境下進行遊戲編程所用到的各種基礎知識,而並非局限於Windows API本身的編程。
《Windows遊戲程序設計基礎》每個章節都以簡單的實例輔助對知識點的理解,力求深入淺齣,並且逐漸遞增難度。
目錄
第1篇Windows編程基礎
第1章 引言
1.1 電子遊戲産業
1.1.1 概述
1.1.2 遊戲産業價值鏈
1.1.3 電子遊戲的曆史
1.1.4 電子遊戲産業的遊戲分類
1.2 Windows的發展曆史
1.3 Windows應用程序開發
1.4 一些說明
1.5 習題
第2章 學習使用VisualC++
2.1 VisualC++安裝和使用
2.1.1 VisualC++的版本信息
2.1.2 創建Win32應用程序
2.2 Win32控製颱應用程序設計
2.2.1 預編譯頭文件
2.2.2 Unicode編碼
2.2.3 TCHAR
2.2.4 Debug和Release
2.2.5 基本的調試方法
2.3 良好的編程習慣
2.3.1 使用正確的代碼格式
2.3.2 采用匈牙利命名法
2.4 Win32API中的常見數據類型
2.5 習題
第3章 創建窗口與消息響應
3.1 Windows應用程序的基本概念
3.1.1 窗口
3.1.2 入口函數
3.1.3 消息和窗口函數
3.1.4 進隊消息與不進隊消息
3.1.5 使用MSDN來學習窗口消息
3.2 創建窗口
3.2.1 包含頭文件
3.2.2 定義類名和標題字符串
3.2.3 注冊窗口
3.2.4 窗口類的風格
3.2.5 創建窗口
3.2.6 窗口風格
3.2.7 顯示窗口
3.2.8 更新窗口
3.2.9 消息循環
3.2.10 窗口函數
3.2.11 應用程序的退齣
3.3 關鍵在於應用
3.4 習題
第4章 Windows程序設計基礎
4.1 GDI的各種概念
4.1.1 什麼是GDI
4.1.2 圖形設備上下文
4.1.3 WM_PAINT消息
4.2 GDI版本的Hello,World!
4.2.1 BeginPaint和EndPaint
4.2.2 輸齣文本
4.3 打字程序
4.3.1 按鍵消息
4.3.2 字符消息
4.3.3 強製刷新
4.3.4 簡陋的打字程序
4.4 塗鴉程序
4.4.1 GDI函數
4.4.2 塗鴉程序
4.4.3 鼠標消息
4.4.4 GetDC與ReleaseDC
4.4.5 設置字符串
4.4.6 畫綫與填充
4.4.7 塗鴉程序2
4.5 時鍾
4.5.1 獲取係統時間
4.5.2 生成和銷毀定時器
4.5.3 獲取按鍵的輸入狀態
4.5.4 WM_NCHITTEST
4.5.5 使用右鍵菜單
4.6 使用資源
4.6.1 使用圖標資源
4.6.2 使用鼠標指針
4.6.3 使用菜單
4.6.4 加速鍵
4.7 文件內核對象
4.7.1 CreateFile
4.7.2 文件大小和文件位置
4.7.3 讀/寫文件
4.7.4 與文件相關的通用對話框
4.7.5 實現塗鴉文件讀/寫
4.8 習題
第5章 進一步提高Windows編程
5.1 圖像文件的格式
5.2 位圖
5.2.1 位圖的概念
5.2.2 加載位圖
5.2.3 設備DC與內存DC
5.2.4 BitBlt
5.2.5 繪製位圖文件的基本流程
5.2.6 完整的代碼
5.2.7 改變窗口的位置與尺寸
5.3 內存DC的應用
5.3.1 鏤空圖
5.3.2 一個小程序
5.3.3 為什麼會有屏閃
5.3.4 背景滾動
5.4 俄羅斯方塊
5.4.1 設計思路
5.4.2 設計BLOCK
5.4.3 CGame的設計
5.4.4 CGame的實現
5.5 習題
第2篇 遊戲編程基礎
第6章 庫與CxImage庫
6.1 庫的基本概念
6.2 編譯、鏈接、執行
6.3 靜態庫的基本編程
6.4 動態庫編程
6.4.1 動態庫基本編程過程
6.4.2 使用統一的頭文件
6.4.3 再次審視編譯鏈接執行
6.5 使用CxImage庫
6.5.1 生成CxImage
6.5.2 通過DLL使用CxImage
6.5.3 使用CxImage顯示圖片
6.5.4 鏇轉圖片
6.5.5 封裝CxImage
6.6 習題
第7章 常用設計模式的介紹
7.1 麵嚮對象程序設計
7.1.1 麵嚮對象程序設計的三大機製
7.1.2 麵嚮對象程序設計的原則
7.2 設計模式概論
7.3 模闆方法模式
7.4 策略模式
7.5 習題
第8章 搭建Windows遊戲程序框架
8.1 分析Win32項目的基本代碼
8.2 遊戲循環
8.3 “糟糕”的消息機製
8.3.1 同步函數與異步函數
8.3.2 實現遊戲循環
8.4 利用模闆方法模式搭建Windows遊戲程序框架
8.5 使用並完善框架類
8.5.1 使用cApplication
8.5.2 實現雙緩衝技術避免屏閃
8.5.3 計算並顯示幀率
8.6 查詢按鍵及退齣遊戲的實現
8.6.1 獲取按鍵狀態
8.6.2 Escape退齣
8.7 遊戲暫停功能的實現
8.7.1 單擊空格鍵暫停遊戲
8.7.2 是否當前窗口判斷遊戲暫停
8.8 六字真言:輸入、計算、輸齣
8.9 習題
第3篇 射擊遊戲
第9章 圖像顯示與背景
9.1 必要的數學運算
9.1.1 坐標和角度運算
9.1.2 敵機的鏇轉角度
9.1.3 邊界檢測
9.2 管理器的概念
9.2.1 怪物
9.2.2 怪物管理器
9.2.3 怪物仿真程序的邏輯
9.3 圖片資源的管理
9.4 實現背景的滾動
9.4.1 背景類cBackground的聲明
9.4.2 背景類cBackground的實現
9.4.3 背景類cBackground的使用
9.5 可移動對象接口類IMovable
9.5.1 可移動對象
9.5.2 可移動對象管理器
9.6 實現雲彩
9.7 習題
第10章 飛機和子彈
10.1 總體設計
10.2 飛機
10.3 實現戰機
10.4 敵機
10.4.1 整體設計
10.4.2 敵機類cEnemy
10.4.3 敵機管理器
10.4.4 敵機與戰機的碰撞
10.4.5 使用敵機管理器類
10.5 敵機飛起來
10.5.1 敵機與策略
10.5.2 勻速策略類
10.5.3 策略管理器
10.5.4 直綫型策略
10.5.5 讓敵機具備跟蹤功能
10.6 子彈
10.6.1 總體思路
10.6.2 子彈管理器
10.6.3 碰撞檢測
10.6.4 發射
10.7 習題
第11章 實現關卡
11.1 XML編程基礎
11.1.1 XML的基本概念
11.1.2 XML文件示例
11.1.3 使用XMLNotepad
11.2 通過XML實現關卡
11.2.1 使用TinyXML
11.2.2 XML實現敵機類型
11.2.3 XML實現子彈類型
11.2.4 XML實現戰機子彈
11.2.5 XML實現關卡腳本
11.3 習題
第4篇 知識拓展
第12章 Windows體係結構
12.1 多任務的操作係統
12.2 Windows的體係結構
12.2.1 核心態
12.2.2 用戶態
12.3 搶先式多任務工作方式
12.4 Windows內存管理機製
12.5 多綫程
12.6 習題
第13章 Windows高級編程
13.1 內核對象與內核對象句柄
13.1.1 內核對象
13.1.2 創建內核對象
13.1.3 使用計數
13.1.4 進程間共享內核對象
13.1.5 觸發/未觸發狀態
13.2 進程
13.2.1 進程與綫程
13.2.2 通過任務管理器查看程序的信息
13.2.3 創建子進程
13.2.4 終止進程
13.3 多綫程編程
13.3.1 進程與綫程
13.3.2 引入綫程的好處
13.3.3 如何使用多綫程
13.3.4 創建綫程
13.3.5 多個綫程使用同一個綫程函數
13.3.6 綫程的調度
13.4 互斥訪問共享資源
13.4.1 提齣問題
13.4.2 互鎖函數
13.4.3 關鍵段操作
13.4.4 使用內核對象保證互斥訪問
13.5 綫程同步
13.5.1 單嚮的同步關係
13.5.2 循環的同步關係
13.6 習題
第14章 使用DirectX完成二維遊戲繪製
14.1 DirectX概述
14.2 初始化Direct3D
14.2.1 獲取IDirect3D9接口
14.2.2 構造D3DPRESENT_PARAMETERS結構體
14.2.3 創建IDirect3DDevice9對象
14.2.4 創建Direct3D窗口
14.3 顯示圖形
14.3.1 頁麵切換
14.3.2 在響應WM_PAINT消息的代碼中進行繪製
14.3.3 頂點與FVF(靈活頂點格式)
14.3.4 三角形
14.3.5 繪製二維三角形
14.4 使用DirectGraphics進行2D圖像處理
14.4.1 紋理
14.4.2 創建並使用紋理
14.4.3 常用渲染狀態
14.5 把Direct3D融入框架中
14.5.1 紋理類
14.5.2 渲染係統類
14.5.3 使用渲染係統
14.6 習題
附錄 AVisualC++編譯常見錯誤
附錄 BASCII碼錶
附錄 C標準模闆庫的使用
C.1 STL概述
C.1.1 要點
C.1.2 頭文件
C.1.3 名字空間
C.1.4 迭代器
C.2 常用數據容器與數據結構
C.3 vector
C.3.1 插入數據
C.3.2 遍曆
C.4 list
C.4.1 list的迭代器
C.4.2 遍曆
C.4.3 刪除元素
C.5 map
C.5.1 數據的插入和修改
C.5.2 數據的遍曆
C.5.3 數據的查找
C.5.4 數據的清空與判空
C.6 使用標準模闆庫(STL)
參考文獻
前言/序言
Windows遊戲程序設計基礎 下載 mobi epub pdf txt 電子書
評分
☆☆☆☆☆
還不錯吧~還不錯啊~~~
評分
☆☆☆☆☆
這本遊戲程序設計基礎我很喜歡噢,太喜歡瞭啊。寫的的書都寫得很好,還是朋友推薦我看的,後來就非非常喜歡,他
評分
☆☆☆☆☆
"[SM]在書店看上瞭這本書一直想買可惜太貴又不打摺,迴傢決定上京東看看,果然有摺扣。毫不猶豫的買下瞭,京東速度果然非常快的,從配貨到送貨也很具體,快遞非常好,很快收到書瞭。書的包裝非常好,沒有拆開過,非常新,可以說無論自己閱讀傢人閱讀,收藏還是送人都特彆有麵子的說,特彆精美;各種十分美好雖然看著書本看著相對簡單,但也不遑多讓,塑封都很完整封麵和封底的設計、繪圖都十分好畫讓我覺得十分細膩具有收藏價值。書的封套非常精緻推薦大傢購買。 打開書本,書裝幀精美,紙張很乾淨,文字排版看起來非常舒服非常的驚喜,讓人看得欲罷不能,每每捧起這本書的時候 似乎能夠感覺到作者毫無保留的把作品呈現在我麵前。 作業深入淺齣的寫作手法能讓本人猶如身臨其境一般,好似一杯美式咖啡,看似快餐,其實值得迴味 無論男女老少,第一印象最重要。”從你留給彆人的第一印象中,就可以讓彆人看齣你是什麼樣的人。所以多讀書可以讓人感覺你知書答禮,頗有風度。 多讀書,可以讓你多增加一些課外知識。培根先生說過:“知識就是力量。”不錯,多讀書,增長瞭課外知識,可以讓你感到渾身充滿瞭一股力量。這種力量可以激勵著你不斷地前進,不斷地成長。從書中,你往往可以發現自己身上的不足之處,使你不斷地改正錯誤,擺正自己前進的方嚮。所以,書也是我們的良師益友。 多讀書,可以讓你變聰明,變得有智慧去戰勝對手。書讓你變得更聰明,你就可以勇敢地麵對睏難。讓你用自己的方法來解決這個問題。這樣,你又嚮你自己的人生道路上邁齣瞭一步。 多讀書,也能使你的心情便得快樂。讀書也是一種休閑,一種娛樂的方式。讀書可以調節身體的血管流動,使你身心健康。所以在書的海洋裏遨遊也是一種無限快樂的事情。用讀書來為自己放鬆心情也是一種十分明智的。 讀書能陶冶人的情操,給人知識和智慧。所以,我們應該多讀書,為我們以後的人生道路打下好的、紮實的基礎!讀書養性,讀書可以陶冶自己的性情,使自己溫文爾雅,具有書捲氣;讀書破萬捲,下筆如有神,多讀書可以提高寫作能力,寫文章就纔思敏捷;舊書不厭百迴讀,熟讀深思子自知,讀書可以提高理解能力,隻要熟讀深思,你就可以知道其中的道理瞭;讀書可以使自己的知識得到積纍,君子學以聚之。總之,愛好讀書是好事。讓我們都來讀書吧。 其實讀書有很多好處,就等有心人去慢慢發現. 最大的好處是可以讓你有屬於自己的本領靠自己生存。 最後在好評一下京東客服服務態度好,送貨相當快,包裝仔細!這個也值得贊美下 希望京東這樣保持下去,越做越好
評分
☆☆☆☆☆
大收獲,活動買的,速度也很快,超值!!!
評分
☆☆☆☆☆
正品,不錯的一次購物
評分
☆☆☆☆☆
還不錯吧~還不錯啊~~~
評分
☆☆☆☆☆
Android火,但是不要忘記pc用戶,win下的遊戲纔是王道
評分
☆☆☆☆☆
評分
☆☆☆☆☆
劃得來值這個價解決問題多