DirectX遊戲程式設計,揭祕Direct3D遊戲開發核心技術
DirectX遊戲程式設計
(揭祕Direct3D遊戲開發核心技術)
王鵬傑 李威 王聰 編著
978-7-111-29331-6
49.00
281
出版社:機械工業出版社
上市時間:2010年3月
前言
作為《OpenGL遊戲程式設計
》的姊妹篇,《DirectX遊戲程式設計
》也是遊戲程式設計的入門書籍,不同的是選用了另一個非常流行(甚至已經成為主流技術)的遊戲軟體開發包
DirectX進行遊戲程式設計。本書是作者近幾年來在高校教授遊戲程式設計課程的經驗凝結,力求凸顯“低門檻、重實踐、精理論”的特色,其規劃和設計融入了
作者多年來對該課程教學的經驗總結和思考。全書共有16章,包括兩部分內容:基礎部分和高階部分。基礎部分包括第1章~第8章,主要講述了DirectX
的基礎知識,包括遊戲開發的基本數學知識、DirectX開發的基本配置、基本開發框架、基本圖形的繪製、文字顯示、變換、紋理對映。高階部分包括第9
章~第16章,根據DirectX技術的發展趨勢,介紹了一些有生命力的技術,主要包括深度測試和反走樣、網格、混合、模板以及頂點著色器和畫素著色器等
知識。本書面向的讀者是有一定程式設計能力的DirectX初學者或愛好者。
各章主要內容分別為:第1章介紹遊戲開發相關的一些數學基礎知識;第2章對DirectX的歷史、功能及基本配置做了介紹;第3章介紹了本書所涉及的Direct3D程式設計框架,並通過例項詳細講解了基本的
Win32框架和DXUT框架;第4章介紹了文字顯示程式的編寫,為後續章節例項中的文字顯示做準備;第5章介紹了基本圖形的繪製過程,主要講解了基本圖
元的型別,以及使用頂點快取和索引快取繪製基本圖形的方法;第6章介紹了3種基本變換並輔以例項對其進行詳細說明;第7章介紹了材質和光照的使用,給出了
不同光照和不同材質下的例項效果對比;第8章介紹了紋理的載入和繪製方式;第9章介紹了深度測試和反走樣的基本原理,並分別給出了例項;第10章和第11
章介紹了網格的定義,包括網格中頂點快取和索引快取的填充,X檔案匯入生成網格的過程,漸進網格的生成和控制;第12章介紹了混合和模板,並分別給出了例項;第13章~第15章介紹了著色器部分的內容,主要對頂點著色器和畫素著色器的功能、使用、語義等進行了詳細闡述,並給出了例項解析;第16章給出了一個完整的用DirectX開發的RPG遊戲例項,主要介紹了遊戲開發的一個簡單但完整的過程。
對於初學者來說,按照本書的章節順序進行閱讀是很好的選擇,書中所有的例項都是按照章節的內容有序安排的;而對於有經驗的讀者,可以按需要有選擇地閱讀。本書的特點是每章都有詳細的例項程式,並且對程式程式碼進行了清晰的編號和詳細的解釋。可以作為高等院校遊戲專業的教材,也可供遊戲開發及研究人員參考。
經過對本書的學習,你可以掌握
DirectX遊戲開發的基礎知識。通過這些基礎知識的學習,你甚至可以編寫一個自己的遊戲。祝學習愉快!
本書附帶的光碟中為書中主要例項的
源程式,經測試可以在VC 2003及以上版本環境下執行。
本書第4、7章及第12章的模板部分由王鵬傑編寫,第1、2、11章和其餘章節的
例項部分由李威編寫,其餘內容由王聰和賈彥磊編寫。在編寫過程中本書參考和引用了很多現有的DirectX書籍和網路資源(見書後的參考文獻列表),在此向原作者表示深深的謝意。最後,本書要特別感謝機械工業出版社華章分社的陳冀康編輯所給予的指導、幫助和鼓勵。
同時感謝關旭成、方鬱、王江,
他們為本書的編寫做了大量的工作,沒有他們的努力,本書是不可能順利完成的。
王鵬傑
2009年10月25日於浙大紫金港
目錄
前言
第1章3D遊戲開發的數學基礎
- 1.1點和向量
- 1.2直線與平面
- 1.3矩陣與座標變換
- 1.4座標系
第2章DirectX快速入門
- 2.1DirectX概述
- 2.2Direct3D底層結構概述
- 2.3DirectX 9.0的配置和安裝
第3章DirectX程式框架
- 3.1Win32+C+Direct3D的基礎框架
- 3.2DXUT框架
第4章文字顯示
- 4.1文字繪製流程
- 4.2Win32程式框架實現
- 4.3DXUT程式框架實現
第5章基本圖形的繪製
- 5.1圖元
- 5.2座標系
- 5.3靈活頂點格式(FVF)
- 5.4使用頂點快取繪製圖形
- 5.5索引快取
- 5.6顏色表示法
- 5.7渲染狀態
- 5.8繪製準備
- 5.9D3DX幾何物體
- 5.10例項設計與實現
第6章變換
- 6.1攝像機
- 6.2頂點變換
- 6.3光柵化
- 6.4例項
第7章光照和材質
- 7.1真實感圖形基本概念
- 7.2Direct3D中的光照
- 7.3Direct3D中的材質
- 7.4光照和材質小結
- 7.5光照和材質例子
第8章紋理對映
- 8.1紋理貼圖
- 8.2紋理座標
- 8.3紋理定址模式
- 8.4紋理過濾
- 8.5紋理混合狀態
- 8.6紋理例項解析
第9章深度測試和反走樣
- 9.1深度快取與深度測試
- 9.2圖形反走樣
- 9.3深度測試例項
- 9.4反走樣例項
第10章網格(一)
- 10.1ID3DXMesh
- 10.2子集和屬性快取
- 10.3繪製
- 10.4鄰接資訊
- 10.5優化
- 10.6屬性表
- 10.7建立一個Mesh
- 10.8例子:從已有的頂點序列中建立一個網格
第11章網格(二)
- 11.1X檔案格式解析
- 11.2讀取X檔案
- 11.3X檔案的材質
- 11.4讀X檔案例子
- 11.5漸進網格
- 11.6漸進網格例子
第12章混合和模板
- 12.1混合因子
- 12.2混合計算
- 12.3Alpha來源
- 12.4Alpha測試
- 12.5Alpha混合例項
- 12.6模板
第13章著色器入門
- 13.1著色器概述
- 13.2HLSL的變數
- 13.3HLSL的函式
- 13.4HLSL基本語法
- 13.5在Direct3D中使用HLSL
第14章頂點著色器
- 14.1頂點著色器概述
- 14.2頂點宣告
- 14.3使用頂點著色器
- 14.4頂點著色器例項1:TeapotVS
- 14.5頂點著色器例項2:漸變動畫MorphingVS
第15章畫素著色器
- 15.1畫素著色器概述
- 15.2使用畫素著色器
- 15.3HLSL取樣器物件
- 15.4多重紋理
- 15.5例子程式:畫素著色器實現多紋理MultiTex
第16章一個遊戲例項
- 16.1前言
- 16.2遊戲整體架構
- 16.3遊戲初始化
- 16.4場景渲染
- 16.5遊戲控制
- 16.6聲效控制
參考文獻
相關文章
- DirectX程式設計技術 --- 想學遊戲程式設計嗎?必讀 (轉)程式設計遊戲
- 遊戲反外掛技術揭祕遊戲
- Deco 智慧程式碼技術揭祕:設計稿智慧生成程式碼
- 揭祕《Arduino技術內幕》UI
- Taro 技術揭祕:taro-cli
- 揭祕GitHub CSS技術細節GithubCSS
- 揭祕有狀態服務上 Kubernetes 的核心技術
- DirectX5.0最新遊戲程式設計指南 (轉)遊戲程式設計
- 揭祕 MWU 最佳畫質遊戲《永劫無間》技術歷程遊戲
- OUYA遊戲開發核心技術剖析OUYA遊戲入門示例——StarterKit遊戲開發
- PingCode 技術架構揭祕GC架構
- Taro 技術揭祕之taro-cli
- 金秋十月當然是分享下重磅技術文——網路程式設計大揭祕程式設計
- 遊戲開發者的思考:什麼是遊戲設計的核心?遊戲開發遊戲設計
- 《HTML5遊戲程式設計核心技術與實戰》—1.3小結HTML遊戲程式設計
- 《HTML5遊戲程式設計核心技術與實戰》——2.8小結HTML遊戲程式設計
- 全景探祕遊戲設計藝術(1):遊戲設計師遊戲設計師
- 揭祕區塊鏈的核心技術之“雜湊與加密演算法”區塊鏈加密演算法
- 揭祕區塊鏈的核心技術之「雜湊與加密演算法 」區塊鏈加密演算法
- 一口氣看完45個暫存器,CPU核心技術大揭祕
- DirectX5.0最新遊戲程式設計指南 DirectDraw教程篇 一、配置DirectX SDK (轉)遊戲程式設計
- VMware的雲原生應用技術揭祕
- PingCode Flow技術架構揭祕GC架構
- 華章揭祕系列精品圖書(《Android應用開發揭祕》、《GWT揭祕》、《Spring技術內幕》)AndroidSpring
- 《HTML5遊戲程式設計核心技術與實戰》一1.3小結HTML遊戲程式設計
- 螞蟻金服核心技術:百億特徵實時推薦演算法揭祕特徵演算法
- 大揭祕:女性不愛程式設計的緣由程式設計
- OUYA遊戲開發核心技術剖析大學霸內部資料遊戲開發
- 鴨鴨星球遊戲系統程式設計開發丨NFT鏈遊遊戲開發技術語言程式設計遊戲開發
- 揭祕.NET Core剪裁器背後的技術
- 揭祕TPM安全晶片技術及加密應用晶片加密
- DirectX 7 程式設計初步 (轉)程式設計
- RPG遊戲開場設計:揭祕“教學”與“代入感”兩本祕籍遊戲
- fir.im Weekly - 揭祕 iOS 面向協議程式設計iOS協議程式設計
- 《HTML52D遊戲程式設計核心技術》——第2章,第2.6節小結HTML遊戲程式設計
- 對話式互動技術原理及流程揭祕
- 揭祕騰訊程式碼管理核心—工蜂Git系統架構Git架構
- 微軟、亞馬遜、谷歌、蘋果、Facebook、雅虎程式設計師面試大揭祕微軟亞馬遜谷歌蘋果程式設計師面試