新到貨2本75折
Irrlicht 3D游戲引擎程序設計

Irrlicht 3D游戲引擎程序設計

  • 定價:354
  • 優惠價:87308
  • 運送方式:
  • 臺灣與離島
  • 海外
  • 可配送點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
  • 可取貨點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
載入中...
  • 分享
 

內容簡介

Irrlicht(鬼火)引擎是一款用C++編寫的高性能3D引擎,是經典的3D游戲引擎之一,可以應用於在C++程序中開發3D游戲。

本書以實例的形式向讀者展示Irrlicht的編程精髓,融入了3D游戲設計的理論基礎、技巧等方面的知識。

本書內容共分為15章,包括Irrlicht概述與游戲引擎安裝,編寫第一個Irrlicht程序,Irrlicht圖形學基礎,網格、紋理、覆蓋層,場景管理,攝像機,地形、紋理和渲染,光照與材質,聲音,粒子系統,碰撞檢測,數據和文件的處理,着色器,游戲人工智能,部署Irrlicht程序等。

本書適合C++游戲編程初學者和具有一定編程經驗的C++游戲編程人員,也可作為高等院校和培訓學校游戲軟件開發課程的教學參考書。

許志聞,吉林大學計算機科學與技術學院教授、博士生導師,中國計算機學會多媒體專業委員會委員,中國圖形、圖像學會多媒體專業委員會委員。2006年,美國佐治亞大學高級訪問學者。主要研究方向為計算機圖形學、動畫與游戲、虛擬現實、圖像處理、網絡多媒體和生物信息學等。

 

目錄

第1章 Irrlicht游戲引擎 1
1.1 Irrlicht使用許可與系統要求 1
1.2 獲得Irrlicht引擎 2
1.3 在Windows下設置編譯器 4
1.3.1 設置編譯器的原理 4
1.3.2 設置動態鏈接庫的方法 5
1.3.3 其他設置方法 10
1.3.4 環境變量的設置方法 11
1.3.5 設置過程中常見的問題 12
1.4 重新編譯Irrlicht引擎 13
1.5 測試是否已經正確設置 15
1.6 在Linux環境中使用鬼火游戲引擎 16
1.6.1 在Linux下編譯靜態庫 16
1.6.2 編譯Hello World程序並運行 17
1.6.3 在Linux下創建第一個項目 18
1.6.4 第三方編程工具Code::Blocks 19
第2章 編寫第一個Irrlicht程序 20
2.1 Irrlicht引擎的結構 202.1.1 引入命名空間 20
2.1.2 了解Irrlicht引擎的結構 21
2.2 分析簡單的代碼 21
2.3 簡單的擴展 24
2.4 類的形式 26
2.5 讓窗口顯示內容 28
2.6 比較成型的模式 29
2.7 讓我們的程序發生變化 30
第3章 圖形學基礎 33
3.1 計算機顯示原理 33
3.1.1 圖形系統的硬件 33
3.1.2 光柵掃描系統 34
3.1.3 計算機圖形標准 35
3.2 圖形學的數學基礎 36
3.2.1 向量及向量運算 36
3.2.2 坐標 36
3.2.3 基本幾何變換 38
3.2.4 三維空間的變換 40
3.3 雙緩存和垂直同步 42
3.4 紋理 43
3.5 Z緩沖 45
3.6 攝像機 46
3.7 粒子系統 47
第4章 網格、紋理、覆蓋層 50
4.1 網格簡介 50
4.2 不同格式網格模型的區別 52
4.3 初識紋理 54
4.4 動態網格模型 56
4.5 覆蓋層 59
4.6 使用精靈表 63
4.7 繪制基本圖形 67
第5章 場景管理 69
5.1 場景節點和實體 69
5.1.1 場景節點 69
5.1.2 實體 71
5.2 場景節點類型 72
5.3 場景管理器 74
5.4 動態節點 74
5.5 場景的應用示例 77
5.5.1 場景節點的應用 77
5.2.2 動態節點的應用 81
5.5.3 自定義場景節點 83
第6章 攝像機 87
6.1 攝像機投影 87
6.1.1 正交投影 88
6.1.2 透視投影 89
6.1.3 兩種投影在代碼上的實現 90
6.2 裁剪 92
6.3 攝像機觀看視角的類型 95
6.3.1 普通攝像機 95
6.3.2 第一人稱射擊攝像機 95
6.3.3 Maya攝像機 96
6.4 FPS攝像機的使用示例 96
第7章 地形、紋理和渲染 99
7.1 地形場景節點類 99
7.2 高度圖 101
7.3 紋理 102
7.3.1 紋理簡介 102
7.3.2 使用紋理 103
7.4 渲染示例 106
7.4.1 渲染地形 106
7.4.2 紋理渲染 111
7.5 創建地形 114
第8章 光照與材質 119
8.1 光照模型 119
8.2 光源 119
8.3 深入光源 120
8.3.1 模擬環境光 121
8.3.2 模擬漫射光 123
8.3.3 燈光的衰減 123
8.4 光源 124
8.4.1 光源的類型 124
8.4.2 光源屬性 125
8.4.3 添加燈光 126
8.5 一些簡單的光照示例 127
8.5.1 用代碼實現環境光 127
8.5.2 用代碼實現漫射光 129
8.5.3 用代碼實現鏡面反射光 132
8.6 材質 135
8.7 陰影 136
8.8 着色 137
8.8.1 着色模式 137
8.8.2 設置着色模式 138
8.9 示例 138
8.9.1 光照和材質示例 138
8.9.2 顯示實時動態陰影 140
第9章 聲 音 144
9.1 聲音基礎 144
9.1.1 聲音的生成 144
9.1.2 聲音的編碼存儲 145
9.1.3 聲音的合成 146
9.2 irrKlang簡介 146
9.3 irrKlang的使用 147
9.3.1 實踐 Hello World 147
9.3.2 播放3D聲音文件 151
9.3.3 聲音特效 154
第10章 粒子系統 157
10.1 粒子系統簡介 157
10.2 粒子編輯器——irrEdit 158
10.2.1 添加自己的粒子系統 158
10.2.2 設置粒子系統 159
10.3 粒子系統各部分的代碼實現 160
10.3.1 粒子結構 160
10.3.2 發射器 161
10.3.3 影響器 163
10.4 繪制一個粒子系統 164
10.4.1 編寫代碼完成一個簡單的粒子系統 164
10.4.2 使用代碼制作水面 169
10.4.3 環形粒子系統 173
第11章 碰撞檢測 177
11.1 碰撞檢測概述 177
11.2 幾何和數學知識 178
11.2.1 多邊形和多面體 178
11.2.2 BSP樹 179
11.2.3 空間四叉樹和空間八叉樹 179
11.2.4 Minkowski和與Minkowski差 180
11.2.5 包圍體 181
11.3 常用的碰撞檢測算法 183
11.3.1 距離跟蹤法 183
11.3.2 基於圖像空間的碰撞檢測法 183
11.3.3 空間分解法 184
11.3.4 層次包圍盒法 185
11.4 代碼解析 185
第12章 數據和文件的處理 192
12.1 Irrlicht文件系統簡介 192
12.2 文件的讀取和寫入 194
12.2.1 寫文件 194
12.2.2 普通文件的讀寫 195
12.2.3 一行一行讀取和按分隔符讀取 198
12.2.4 XML文件的讀寫 200
12.2.5 從XML文件中加載數據 201
12.2.6 向XML文件寫入數據 204
12.2.7 從XML文件中讀取特殊數據類型的數據 205
12.3 從檔案中讀取數據 207
第13章 着色器 210
13.1 圖形渲染管線簡介 210
13.2 着色器簡介 211
13.2.1 頂點着色器 211
13.2.2 片斷(像素)着色器 211
13.2.3 幾何着色器 212
13.3 使用着色器 212
13.3.1 安裝並使用GLSL demo 212
13.3.2 在Irrlicht引擎中使用着色器 214
13.4 進一步了解着色器 223
第14章 游戲人工智能 224
14.1 什麼是智能 224
14.2 什麼是游戲AI 225
14.3 AI的組成與設計 226
14.3.1 抉擇與推理 226
14.3.2 解決方案的類型 226
14.3.3 智能體的反應能力 226
14.3.4 系統的真實性 226
14.3.5 游戲類型 227
14.3.6 游戲內容 227
14.3.7 游戲平台 227
14.4 AI的輸入處理和感知 228
14.4.1 感知系統 228
14.4.2 更新規則 229
14.4.3 反應時間 229
14.4.4 門限 229
14.4.5 負荷平衡 229
14.4.6 計算代價與預處理 229
14.5 OpenSteer 230
第15章 部署一個Irrlicht應用程序 232
15.1 什麼是部署 232
15.2 針對不同平台打包發布應用 232
15.2.1 在Windows平台下部署Irrlicht應用程序 232
15.2.2 在Linux平台下部署Irrlicht應用程序 233
15.2.3 在Mac OS X平台下部署Irrlicht應用程序 234
15.3 部署源代碼 236
15.3.1 為什麼要部署源代碼 236
15.3.2 如何部署 236
 

Irrlicht(鬼火)引擎是一款用C++編寫的高性能3D引擎,是經典的3D游戲引擎之一,可以應用於在C++程序中開發3D游戲。該引擎提供商業級別的藝術特性,如動態陰影、粒子系統、角色動畫、碰撞檢測等。Irrlicht引擎的優點有:精悍的引擎框架,和Orge極其相似;高質量的圖形渲染,雖然沒有Orge的質量優越,但是與一般商業引擎相比仍然略勝一籌;清晰單一的C++語言實現,使得引擎沒有繁冗龐大的外部腳本編譯器;支持根據硬件加速調整渲染模塊的參數和算法機制。整體程序會跑得很快、很流暢,但是畫質會降低,是犧牲畫質而保證性能。
 

詳細資料

  • ISBN:9787302475934
  • 規格:236頁 / 21 x 14.8 x 1.5 cm / 普通級 / 1-1
  • 出版地:中國

最近瀏覽商品

 

相關活動

  • 從「格」的概念出發|
 

購物說明

溫馨提醒您:若您訂單中有購買簡體館無庫存/預售書或庫存於海外廠商的書籍,建議與其他商品分開下單,以避免等待時間過長,謝謝。

大陸出版品書況:因裝幀品質及貨運條件未臻完善,書況與台灣出版品落差甚大,封面老舊、出現磨痕、凹痕等均屬常態,故簡體字館除封面破損、內頁脫落...等較嚴重的狀態外,其餘所有商品將正常出貨。 

 

請注意,部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

調貨時間:若您購買海外庫存之商品,於您完成訂購後,商品原則上約45個工作天內抵台(若有將延遲另行告知)。為了縮短等待的時間,建議您將簡體書與其它商品分開訂購,以利一般商品快速出貨。 

若您具有法人身份為常態性且大量購書者,或有特殊作業需求,建議您可洽詢「企業採購」。 

退換貨說明 

會員所購買的商品均享有到貨十天的猶豫期(含例假日)。退回之商品必須於猶豫期內寄回。 

辦理退換貨時,商品必須是全新狀態與完整包裝(請注意保持商品本體、配件、贈品、保證書、原廠包裝及所有附隨文件或資料的完整性,切勿缺漏任何配件或損毀原廠外盒)。退回商品無法回復原狀者,恐將影響退貨權益或需負擔部分費用。 

訂購本商品前請務必詳閱商品退換貨原則

  • 針灸匠張寶旬
  • 手作新書79折起
  • 浪漫小說精選3本72折