出版時間:2007-5 出版社:人民郵電 作者:王德才 頁數(shù):668 字?jǐn)?shù):1281000
Tag標(biāo)簽:無
內(nèi)容概要
本書系統(tǒng)全面地介紹了Direct3D三維圖形程序設(shè)計的相關(guān)內(nèi)容。全書共分5個部分。第一部分介紹了Direct3D程序設(shè)計基礎(chǔ),包括三維坐標(biāo)變換、光照處理、紋理貼圖、霧化效果、文件模型、文本和字體等內(nèi)容。第二部分介紹了Direct3D程序設(shè)計的相關(guān)高級技術(shù),包括多層紋理映射、紋理坐標(biāo)自動生成與變換、環(huán)境映射、凹凸紋理映射、立體紋理、紋理壓縮、.X文件格式分析、網(wǎng)格模型優(yōu)化、層次細(xì)節(jié)網(wǎng)格模型、增強網(wǎng)格模型、蒙皮骨骼動畫網(wǎng)格模型以及粒子系統(tǒng)等。第三部分介紹了Direct3D GPU編程(即可編程流水線),包括HLSL渲染語言、HLSL頂點渲染、HLSL像素渲染、Effect及其高級應(yīng)用、ASM頂點渲染、ASM像素渲染。第四部分介紹了三維圖形程序設(shè)計領(lǐng)域目前流行的許多實用技術(shù),包括廣告板技術(shù)、紋理動畫技術(shù)、自然現(xiàn)象模擬、三維地形模擬、海浪效果模擬、柔性物體模擬、凹凸紋理應(yīng)用、短毛發(fā)模擬以及體積霧等。第五部分是附錄,包括學(xué)習(xí)Direct3D之前所必須掌握的基礎(chǔ)知識和DirectX SDK提供的各種工具的簡要說明。 本書配套光盤提供了書中所有示例程序的可執(zhí)行文件、工程文件和完整源代碼,以方便讀者編譯、調(diào)試示例程序。 本書主要面向?qū)irect3D三維圖形程序設(shè)計感興趣的編程人員、游戲開發(fā)人員以及可視化仿真工程技術(shù)人員,也可作為高等院校相關(guān)專業(yè)和培訓(xùn)機構(gòu)的Direct3D程序設(shè)計用書。
書籍目錄
第一部分 基礎(chǔ)篇 第1章 DirectX與Direct3D簡介 1.1 什么是DirectX和Direct3D 1.2 DirectX的發(fā)展歷史 1.3 DirectX 9.0的安裝與配置 1.3.1 DirectX 9.0的安裝 1.3.2 選擇調(diào)試或發(fā)布庫 1.3.3 在Visual Studio.NET IDE中配置DirectX 1.3.4 瀏覽DirectX SDK示例程序 1.4 DirectX功能組件 1.5 DirectX的幾種開發(fā)方式 1.6 小結(jié) 第2章 Direct3D程序設(shè)計基礎(chǔ) 2.1 相關(guān)基礎(chǔ)知識 2.2 Direct3D體系結(jié)構(gòu) 2.3 Direct3D對象 2.4 Direct3D設(shè)備對象 2.4.1 Direct3D設(shè)備類型 2.4.2 創(chuàng)建Direct3D設(shè)備對象 2.5 Direct3D程序基本結(jié)構(gòu) 2.6 最簡單的Direct3D程序 2.6.1 工程項目和開發(fā)環(huán)境設(shè)置 2.6.2 創(chuàng)建窗口 2.6.3 初始化Direct3D 2.6.4 消息循環(huán) 2.6.5 渲染圖形 2.6.6 結(jié)束Direct3D程序 2.7 Direct3D設(shè)備對象深入探討 2.8 Direct3D表面 2.9 小結(jié) 第3章 坐標(biāo)系與基本圖元 3.1 Direct3D坐標(biāo)系 3.2 Direct3D基本圖元 3.3 使用頂點緩沖區(qū)繪制圖形 3.3.1 創(chuàng)建頂點緩沖區(qū) 3.3.2 渲染頂點緩沖區(qū)圖形 3.3.3 各種基本圖元繪制 3.4 使用索引緩沖區(qū)繪制圖形 3.5 圖形渲染其他相關(guān)內(nèi)容 3.5.1 靈活頂點格式 3.5.2 渲染狀態(tài) 3.5.3 場景提交 3.5.4 圖形反鋸齒(antialiasing) 3.5.5 全屏幕顯示 3.6 Direct3D中的顏色表示 3.7 資源的概念 3.8 小結(jié) 第4章 頂點坐標(biāo)變換 4.1 頂點坐標(biāo)變換和光照流水線概述 4.2 矩陣類型及其操作 4.3 世界變換 4.4 取景變換 4.5 投影變換 4.6 視區(qū)變換 4.7 獲取Direct3D坐標(biāo)變換矩陣 4.8 三維坐標(biāo)變換示例程序 4.9 小結(jié) 第5章 光照與材質(zhì) 5.1 光照計算模型 5.2 光源 5.2.1 光源類型 5.2.2 光源屬性 5.2.3 設(shè)置燈光 5.2.4 對光源的幾點說明 5.3 材質(zhì) 5.3.1 設(shè)置材質(zhì) 5.3.2 獲取材質(zhì)屬性 5.4 光照和材質(zhì)示例程序 5.4.1 簡單光照示例程序 5.4.2 多光源光照示例程序 5.4.3 使用燈光的幾點說明 5.5 深入理解光照計算模型 5.6 小結(jié) 第6章 紋理映射基礎(chǔ) 6.1 基本概念 6.2 使用紋理 6.3 紋理過濾方式 6.3.1 最近點采樣 6.3.2 線性紋理過濾 6.3.3 各項異性紋理過濾 6.3.4 多級漸進紋理過濾 6.3.5 紋理過濾方式示例程序 6.4 紋理尋址模式 6.4.1 重疊紋理尋址模式 6.4.2 鏡像紋理尋址模式 6.4.3 夾取紋理尋址模式 6.4.4 邊框顏色紋理尋址模式 6.4.5 紋理尋址模式示例程序 6.5 紋理階段混合狀態(tài) 6.5.1 紋理階段混合狀態(tài)設(shè)置 6.5.2 紋理階段混合狀態(tài)示例程序 6.6 紋理包裝 6.7 小結(jié) 第7章 使用文件模型 7.1 三維模型基礎(chǔ) 7.2 模型文件格式轉(zhuǎn)換 7.2.1 ds Max制作的模型轉(zhuǎn)換為.X文件模型 7.2.2 Maya制作的模型轉(zhuǎn)換為.X文件模型 7.3 在Direct3D程序中載入模型 7.3.1 網(wǎng)格模型接口ID3DXMESH 7.3.2 載入.X文件并生成網(wǎng)格模型 7.4 渲染網(wǎng)格模型 7.5 三維模型旋轉(zhuǎn) 7.5.1 通過矩陣實現(xiàn)模型旋轉(zhuǎn) 7.5.2 通過四元數(shù)實現(xiàn)模型旋轉(zhuǎn) 7.6 使用文件模型的幾點提示 7.7 小結(jié) 第8章 深度測試與Alpha混合 8.1 深度測試 8.1.1 深度緩沖區(qū)與深度測試 8.1.2 使用深度測試 8.2 半透明物體的繪制 8.2.1 Alpha混合原理 8.2.2 利用Alpha混合實現(xiàn)半透明效果 8.2.3 Alpha混合系數(shù) 8.3 Alpha測試 8.3.1 Alpha測試原理 8.3.2 使用Alpha測試 8.4 小結(jié) 第9章 霧化 9.1 霧化效果實現(xiàn)原理 9.2 霧化混合因子計算方法 9.3 頂點霧化與像素霧化 9.3.1 頂點霧化與基于范圍的霧化 9.3.2 像素霧化和與眼相關(guān)深度霧化 9.4 為場景添加霧化效果 9.4.1 頂點霧化示例程序 9.4.2 像素霧化示例程序 9.4.3 基于范圍的霧化示例程序 9.5 對霧化效果的幾點說明 9.6 小結(jié) 第10章 字體與文本顯示 10.1 二維文本繪制 10.2 三維文本繪制 10.3 小結(jié)第二部分 高級技術(shù)篇 第11章 應(yīng)用程序框架 11.1 生成一個Direct3D程序框架 11.2 使用Direct3D程序框架 11.3 Direct3D程序框架剖析 11.3.1 DXUT簡介 11.3.2 初始化DXUT 11.3.3 DXUT框架與應(yīng)用程序窗口 11.3.4 DXUT框架與Direct3D設(shè)備 11.3.5 DXUT框架與消息循環(huán) 11.3.6 DXUT框架與錯誤處理 11.3.7 通過DXUT選擇高級設(shè)備 11.3.8 其他DXUT函數(shù) 11.4 添加文本 11.4.1 初始化ID3DXSprite和ID3DXFont對象 11.4.2 繪制文本 11.4.3 處理鍵盤消息 11.5 添加控件 11.5.1 初始化對話框 11.5.2 渲染控件 11.5.3 處理控件消息 11.5.4 釋放對話框 11.6 小結(jié) 第12章 高級紋理技術(shù) 12.1 多層紋理映射 12.2 紋理階段混合操作 12.2.1 黑暗映射 12.2.2 黑暗貼圖動畫 12.2.3 混合紋理與材質(zhì)漫反射顏色 12.2.4 混合黑暗貼圖與材質(zhì)漫反射顏色 12.2.5 發(fā)光映射 12.2.6 細(xì)節(jié)映射 12.2.7 Alpha混合操作 12.3 紋理坐標(biāo)處理 12.3.1 紋理坐標(biāo)自動生成 12.3.2 紋理坐標(biāo)變換 12.4 環(huán)境紋理映射 12.4.1 立方體環(huán)境映射 12.4.2 球形環(huán)境映射 12.5 凹凸紋理映射 12.6 立體紋理 12.7 紋理壓縮 12.7.1 DXT紋理壓縮格式 12.7.2 使用DXT壓縮紋理 12.8 紋理管理 12.9 小結(jié) 第13章 網(wǎng)格模型高級技術(shù) 13.1 .X文件格式分析 13.1.1 首部 13.1.2 網(wǎng)格 13.1.3 網(wǎng)格材質(zhì)列表 13.1.4 法向量 13.1.5 紋理 13.1.6 框架和變換矩陣 13.1.7 動畫 13.1.8 蒙皮信息 13.2 網(wǎng)格模型優(yōu)化 13.2.1 網(wǎng)格模型優(yōu)化函數(shù) 13.2.2 網(wǎng)格模型優(yōu)化方式 13.2.3 示例程序OptimizedMesh具體實現(xiàn) 13.3 層次細(xì)節(jié)網(wǎng)格模型 13.3.1 生成層次細(xì)節(jié)網(wǎng)格模型前的準(zhǔn)備工作 13.3.2 生成層次細(xì)節(jié)模型 13.3.3 示例程序ProgressMesh的具體實現(xiàn) 13.4 增強網(wǎng)格模型 13.4.1 增強網(wǎng)格模型的生成 13.4.2 示例程序EnhancedMesh的具體實現(xiàn) 13.5 漸變網(wǎng)格模型 13.5.1 實現(xiàn)漸變網(wǎng)格模型的準(zhǔn)備工作 13.5.2 生成漸變網(wǎng)格模型 13.5.3 渲染漸變網(wǎng)格模型 13.6 DXUT網(wǎng)格模型類 13.6.1 CDXUTMesh類 13.6.2 CDXUTMeshFrame類和CDXUTMeshFile類 13.6.3 使用類CDXUTMesh和CDXUTMeshFile渲染網(wǎng)格模型 13.7 骨骼動畫網(wǎng)格模型 13.7.1 骨骼動畫基本原理 13.7.2 骨骼動畫類的設(shè)計與實現(xiàn) 13.7.3 骨骼動畫類的使用 13.8 蒙皮骨骼動畫網(wǎng)格模型 13.8.1 圖形混合 13.8.2 索引頂點混合 13.8.3 頂點混合示例 13.8.4 蒙皮骨骼動畫網(wǎng)格模型類的設(shè)計與實現(xiàn) 13.8.5 蒙皮骨骼動畫網(wǎng)格模型類的使用 13.9 多骨骼動畫網(wǎng)格模型 13.10 其他文件格式模型 13.11 小結(jié) 第14章 模板測試與模板緩沖區(qū) 14.1 模板測試 14.2 模板緩沖區(qū) 14.3 模板測試設(shè)置 14.4 使用模板測試實現(xiàn)特殊效果 14.5 實時陰影效果 14.6 小結(jié) 第15章 粒子系統(tǒng) 15.1 粒子系統(tǒng)技術(shù)簡介 15.2 粒子系統(tǒng)基本原理 15.3 點精靈(point sprites) 15.4 粒子系統(tǒng)具體實現(xiàn) 15.5 綜合開發(fā)實例 15.6 小結(jié)第三部分 GPU編程篇 第16章 Direct3D GPU編程概述 16.1 可編程流水線 16.2 頂點渲染 16.3 像素渲染 16.4 渲染語言 16.5 小結(jié) 第17章 高級渲染語言基礎(chǔ) 17.1 數(shù)據(jù)類型 17.1.1 標(biāo)準(zhǔn)數(shù)據(jù)類型 17.1.2 向量 17.1.3 矩陣 17.1.4 復(fù)雜數(shù)據(jù)類型 17.2 表達式與運算符 17.3 語句 17.3.1 語句塊 17.3.2 返回語句 17.3.3 流程控制語句 17.4 函數(shù) 17.5 段落 17.5.1 渲染器段落基本概念 17.5.2 渲染器段落語法 17.6 編寫HLSL渲染器 17.6.1 添加文件 17.6.2 編寫渲染器代碼 17.7 小結(jié) 第18章 HLSL頂點渲染 18.1 HLSL頂點渲染基本步驟 18.2 使用HLSL頂點渲染實現(xiàn)基本光照模型 18.2.1 環(huán)境光光照模型 18.2.2 漫反射光照模型 18.2.3 鏡面反射光照模型 18.3 小結(jié) 第19章 HLSL像素渲染 19.1 HLSL像素渲染基本步驟 19.2 使用HLSL實現(xiàn)基本紋理映射 19.3 渲染器的編譯與調(diào)試 19.3.1 渲染器的編譯 19.3.2 渲染器的調(diào)試 19.4 小結(jié) 第20章 效果(effect) 20.1 效果、技術(shù)與通道 20.1.1 效果和Direct3D流水線 20.1.2 保存和恢復(fù)狀態(tài) 20.1.3 共享參數(shù) 20.2 編寫效果 20.3 使用效果 20.4 效果示例程序 20.4.1 光照計算 20.4.2 紋理映射 20.4.3 多技術(shù)效果 20.4.4 參數(shù)塊與共享參數(shù) 20.5 建立并渲染段落 20.5.1 從效果中建立并渲染段落 20.5.2 不通過效果建立并渲染段落 20.5.3 段落使用示例程序 20.6 小結(jié) 第21章 HLSL高級應(yīng)用 21.1 自身遮蔽陰影 21.2 凹凸紋理映射 21.3 立方體環(huán)境映射 21.3.1 立方體貼圖 21.3.2 反射環(huán)境映射 21.3.3 折射/反射環(huán)境映射 21.3.4 動態(tài)折射/反射環(huán)境映射 21.4 漸變動畫 21.5 蒙皮骨骼動畫 21.6 小結(jié) 第22章 ASM頂點渲染 22.1 ASM頂點渲染基本步驟 22.2 頂點聲明對象 22.3 ASM頂點渲染簡介 22.3.1 頂點渲染版本聲明 22.3.2 頂點渲染寄存器 22.3.3 頂點渲染指令 22.4 ASM頂點渲染示例 22.4.1 光照計算 22.4.2 漸變動畫 22.4.3 蒙皮骨骼動畫 22.5 小結(jié) 第23章 ASM像素渲染 23.1 ASM像素渲染基本步驟 23.2 ASM像素渲染簡介 23.2.1 版本聲明 23.2.2 像素渲染寄存器 23.2.3 像素渲染指令 23.3 ASM像素渲染示例 23.4 使用效果 23.4.1 ASM效果 23.4.2 利用效果實現(xiàn)HLSL和ASM混合編程 23.5 小結(jié) 第四部分 實用技術(shù)篇 第24章 DXUT控件 24.1 DXUT控件介紹 24.2 DXUT控件使用示例程序 24.3 小結(jié) 第25章 廣告板技術(shù)與十字交叉紋理 25.1 廣告板技術(shù) 25.1.1 廣告板技術(shù)介紹 25.1.2 廣告板技術(shù)示例程序 25.2 十字交叉紋理 25.2.1 十字交叉紋理介紹 25.2.2 十字交叉紋理示例程序 25.3 小結(jié) 第26章 紋理動畫 26.1 紋理動畫原理 26.2 紋理動畫示例程序 26.3 小結(jié) 第27章 自然現(xiàn)象模擬 27.1 動態(tài)云彩效果模擬 27.2 雨景效果模擬 27.3 雪景效果模擬 27.4 小結(jié) 第28章 三維地形模擬 28.1 三維地形模擬概述 28.2 三維地形模擬示例程序 28.3 小結(jié) 第29章 海浪效果模擬 29.1 使用紋理貼圖實現(xiàn)海浪效果 29.2 實時生成海浪效果 29.3 小結(jié) 第30章 柔性物體模擬 30.1 柔性物體模擬介紹 30.2 粒子系統(tǒng)和彈簧結(jié)構(gòu) 30.3 定義并實現(xiàn)CFlutterFlag類 30.4 示例程序的具體實現(xiàn) 30.5 小結(jié) 第31章 三維場景交互 31.1 使用鼠標(biāo)選擇三維場景中的物體 31.2 使用鼠標(biāo)控制三維場景中角色的運動 31.3 小結(jié) 第32章 運動模糊效果 32.1 運動模糊效果的基本原理 32.2 示例程序MotionBlur 32.3 小結(jié) 第33章 凹凸紋理映射應(yīng)用 33.1 水下效果模擬 33.2 水波效果模擬 33.3 小結(jié) 第34章 短毛發(fā)實時繪制 第35章 體積霧第五部分 附錄 附錄A C++基礎(chǔ)知識 A.1 類及其成員和封裝 A.2 繼承 A.3 this指針 A.4 虛函數(shù)、動態(tài)綁定和多態(tài) A.5 雙指針 A.6 內(nèi)聯(lián)函數(shù) A.7 默認(rèn)函數(shù)參數(shù) A.8 聲明變量的位置 A.9 const常量表達式 A.10 函數(shù)重載 A.11 運算符重載 附錄B Win32 API程序設(shè)計基礎(chǔ) B.1 API和SDK B.2 Win32程序框架 B.3 Win32 API程序框架分析 附錄C COM使用基礎(chǔ) C.1 什么是COM對象 C.2 創(chuàng)建一個COM對象 C.3 使用COM接口 C.4 管理COM對象的生命期 C.5 使用C訪問COM對象 C.6 用宏調(diào)用DirectX COM方法 附錄D 計算機圖形學(xué)數(shù)學(xué)基礎(chǔ) D.1 坐標(biāo)參照系 D.2 點與向量 D.3 矩陣 D.4 四元數(shù) 附錄E 計算機圖形學(xué)基礎(chǔ) E.1 概述 E.1.1 計算機圖形學(xué)的概念 E.1.2 計算機圖形學(xué)的研究內(nèi)容 E.2 圖形系統(tǒng)與圖形設(shè)備 E.2.1 圖形系統(tǒng) E.2.2 圖形設(shè)備 E.3 圖形變換 E.3.1 圖形的幾何變換 E.3.2 形體的投影變換 E.3.3 裁剪 E.3.4 窗口到視口的變換 附錄F DirectX SDK提供的各種工具使用說明 F.1 DirectX瀏覽器 F.2 紋理轉(zhuǎn)換工具 F.3 DirectX紋理工具 F.4 DirectX性能瀏覽工具 F.5 DirectX錯誤查詢工具 F.6 DirectX診斷工具 F.7 DirectX Ops(dxops.exe)
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載
精通DirectX 3D圖形與動畫程序設(shè)計 PDF格式下載