OpenGL遊戲編程

OpenGL遊戲編程

《OpenGL遊戲編程》是2008年機械工業出版社出版的圖書,作者是徐明亮盧紅星王琬

基本介紹

基本信息,內容提要,編輯推薦,作者簡介,目錄,

基本信息

作者徐明亮盧紅星王琬編著
ISBN:10位[7111226704]13位[9787111226703]
出版日期:2008-1-1
定價:¥55.00元

內容提要

本書講解OpenGL的遊戲開發中的實用技術。主要內容包括:遊戲開發快速入門、OpenGL程式框架、OpenGL變換、OpenGL光照、材質和紋理、OpenGL字型、攝像漫遊、構造開空和地形、模型載入、實時陰影、DirectInput的使用、DirectSound的使用、遊戲中的物理模擬、粒子系統、構造遊戲引擎、3DRPG遊戲、Quake室內場景實例等。本書講解清晰,言簡意,提供大量原創實例。可幫助讀者快速進入遊戲開發領域。

編輯推薦

3D遊戲是當前遊戲的主流,對於初學者來說,其核心技術就是3D圖形編程。長久以來。,OpenGL都是3D遊戲開發領域的主流開發包之一,也是開發者追逐頂尖技術的利器。
與DirectX相比,OpenGL一語言簡單易懂,前後版本的兼容性也比較好,對於希望進入遊戲開發、3D圖形處理、模擬仿真、虛擬現實等領域的初學者來說,學習OpenGL一是他們最好的起點。基於此,本書將在遊戲開發的背景下,捨棄OpenGL中與遊戲開發關聯不大的瑣碎知識細節,引導讀者快速掌握遊戲開發中所必須掌握的最重要、最實用的概念、原理和編程技巧,事半功倍地進入遊戲開發領域。
本書特色:
·參閱了國內外大量最新的圖形開發和遊戲編程方面的資料,所講解的內容都依據圖形開發領域的成熟方法和技術。
·所有的例子都共用一個在實際項目中經過嚴格測試的方便、穩定、實用的程式框架,該框架提供兩個版本:面向過程的傳統Wirl32API風格和更方便實用的面向對象風格,讀者只要具有C/C++和圖形學基本知識就可以看懂。
·全書代碼保持一種良好的編碼風格,提供清晰的注釋和規範的UML一設計。
·所有實例都力求實用、新穎、有趣,並取材於實際項目,具有極高的可復用價值,完全能在實際項目中“即插即用”。
·涵蓋遊戲開發、仿真系統、多媒體套用等主要圖形套用領域。
·實例中深度剖析一些目前市面圖書中所從未涉及的實用技術細節。

作者簡介

徐明亮,鄭州大學碩士研究生畢業,曾在大學生挑戰杯科技競賽中以“3DMMO網路遊戲通用引擎”項目獲獎。讀研期間,研究方向為遊戲引擎與遊戲人工智慧,先後參與了遊戲A吲擎、山盟網路休閒遊戲平台、3D虛擬酒吧、專業圍棋網路對弈平台等項目的研發工作,並在相關會議和期刊上發表多篇有關遊戲引擎的論文。

目錄

前言
作者簡介
第1章 遊戲開發快速入門
1.1 遊戲軟體開發概述
1.1.1 遊戲軟體開發流程
1.1.2 遊戲軟體的構成
1.1.3 遊戲軟體的運行原理
1.2 OpenGL與DirectX簡介
1.2.1 OpenGL基礎知識
1.2.2 DirectX基礎知識
1.3 3D圖形學快速入門
1.3.1 點和向量
1.3.2 坐標系與矩陣
1.3.3 3D圖形處理流程
1.3.4 坐標變換
第2章 OpenGL.程式框架
2.1 視窗渲染環境
2.1.1 GDI設備環境
2.1.2 OpenGL渲染環境
2.2 創建Win32SDK風格的視窗
2.3 面向對象風格的視窗框架
2.3.1 視窗類GLWindow的設計及實現
2.3.2 鍵盤類Keys的設計與實現
2.3.3 應用程式類GIApplication的設計與實現
2.3.4 一個簡單的實例
第3章 OpenGL變換
3.1 OpenGL的數據類型
3.2 函式命名的語法
3.3 OpenGL是種狀態機
3.4 OpenGL變換
3.4.1 視點變換
3.4.2 模型變換
3.4.3 投影變換
3.4.4 視口變換
3.4.5 裁剪變換
3.4.6 矩陣堆疊
3.5 OpenGL變換實例
第4章 OpenGL光照、材質和紋理
4.1 真實感圖形基本概念
4.2 OpenGL光照模型
4.2.1 法線向量
4.2.2 創建光源
4.2.3 選擇光照模型
4.2.4 光照實例
4.3 材質
4.3.1 材質RGB值與光源RGB值的關係
4.3.2 材質的定義
4.3.3 顏色材質模式
4.3.4 材質實例
4.4 紋理映射
4.4.1 紋理資源的載入
4.4.2 OpenGL紋理映射
4.4.3 OpenGL多重紋理
第5章 OpenGL字型
5.1 點陣圖字型
5.1.1 點陣圖字型類
5.1.2 具體實現
5.1.3 實例
5.2 顯示中文
5.2.1 字型類
5.2.2 具體實現
5.2.3 實例
第6章 攝像漫遊
6.1 漫遊原理
6.2 準備工作
6.3 攝像機類
6.4 攝像漫遊實例
第7章 構造天空和地形
7.1 天空構造
7.1.1 天空盒原理
7.1.2 天空類實現
7.2 地形
7.2.1 地形構造原理
7.2.2 地形類實現
7.3 實例
第8章 模型載入
8.1 3DS檔案載入
8.1.1 3DS檔案簡介
8.1.2 準備工作
8.1.3 載入類定義
8.1.4 3DS檔案載入實例
8.2 MD2檔案載入
8.2.1 MD2檔案簡介
8.2.2 準備工作
8.2.3 MD2檔案載入類
8.2.4 MD2檔案載入實例
第9章 實時陰影
9.1 簡介
9.2 實時陰影
9.2.1 平面投射
9.2.2 陰影體
9.3 平面投射實例
9.4 陰影體實例
第10章 Directlnput的使用
10.1 Directlnput簡介
10.2 Directlnput的使用
10.2.1 安裝和配置DirectX9.0
10.2.2 創建Directlnput接口對象
10.2.3 創建設備對象
10.2.4 設定設備的數據格式
10.2.5 設定設備的協作層次
10.2.6 設定設備的屬性
10.2.7 設備的捕獲
10.2.8 設備輸入的獲取
10.2.9 關閉
10.3 建立輸入系統
10.3.1 鍵盤類CKeyboard
10.3.2 滑鼠類CMouse
10.3.3 遊戲桿類CJoystick
10.3.4 輸入系統類CInputSystem
10.4 DirectSound套用實例
10.4.1 鍵盤實例
10.4.2 滑鼠實例
第11章 DirectSound的使用
11.1 聲音的基礎知識
11.2 DirectSound介紹
11.3 DirectSound的使用
11.3.1 創建DirectSound對象
11.3.2 設定設備的協作級別
11.3.3 創建主緩衝區
11.3.4 創建輔助緩衝區
11.3.5 載入聲音數據
11.3.6 聲音的播放與控制
11.4 3D音效
11.4.1 3D空間與緩衝區
11.4.2 最大最小距離
11.4.3 處理模式
11.4.4 聲音圓錐
11.4.5 聲源的創建
11.4.6 聽者對象的創建
11.5 封裝音頻處理模組
11.6 音頻實例
第12章 遊戲中的物理模擬
12.1 物理學基礎知識
12.1.1 基本概念
12.1.2 牛頓運動定律
12.1.3 衝量、動量
12.2 物理規律的模擬
12.2.1 勻速運動模擬
12.2.2 平拋運動模擬
12.2.3 摩擦力模擬
12.3 碰撞檢測
12.3.1 碰撞檢測概述
12.3.2 碰撞檢測
12.3.3 碰撞檢測實例
第13章 粒子系統
13.1 粒子系統簡介
13.1.1 概述
13.1.2 分類
13.1.3 粒子系統的生命周期
13.2 粒子系統設計
13.2.1 形式描述
13.2.2 數據結構
13.3 粒子系統的實現
13.4 粒子系統實例l——雪花
13.5 粒子系統實例2——噴泉
第14章 構造遊戲引擎
14.1 遊戲引擎簡介
14.2 遊戲引擎的體系結構
14.3 基礎公用模組
14.3.1 基礎結構和操作
14.3.2 數學運算模組
14.3.3 計時器CT'imer類
14.3.4 字型類
14.3.5 攝像機類
14.3.6 INI檔案讀取類
14.4 視窗引擎模組
14.5 輸入系統模組
14.5.1 輸入法IME編程
14.5.2 輸入系統類
14.6 場景管理模組
14.6.1 對象管理模組
14.6.2 遊戲場景模組
14.6.3 場景管理模組
14.7 資源管理模組
14.8 GuI界面設計模組
14.8.1 GUI模組構架
14.8.2 按鈕類CButton
14.8.3 複選框類CCheckBox
14.8.4 文本編輯類Edit
14.8.5 對話框類Dialog
14.8.6 滾動條類CScrollBar’
14.8.7 列表框類L,istView
14.8.8 進度條類CProgressBar
14.8.9 小地圖類MapView
14.9 訊息系統模組
14.10 音頻系統模組
14.11 粒子特效模組
第15章 3DRPG遊戲
15.1 遊戲簡介
15.2 角色設計
15.3 加入怪物
15.4 遊戲場景
15.5 游標動畫
15.6 遊戲界面
15.7 運行界面
第16章 Quake室內場景實例
16.1 BSP技術
16.1.1 為什麼要使用:BSP
16.1.2 BSP原理
16.1.3 渲染BSP
16.2 隱藏面剔除
16.3 Quake室內場景繪製
16.3.1 Quake3BSP檔案格式
16.3.2 Quake3BSP檔案的載入
16.3.3 運行結果
第17章 指環王動畫特效
17.1 實例介紹
17.2 關鍵技術
17.2.1 ASE模型讀取
17.2.2 火焰的繪製
17.2.3 場景的繪製

相關詞條

熱門詞條

聯絡我們