3D圖形編程基礎(chǔ)

出版時(shí)間:2012-4  出版社:清華大學(xué)出版社  作者:姚莉  頁(yè)數(shù):275  
Tag標(biāo)簽:無(wú)  

內(nèi)容概要

  《3d圖形編程基礎(chǔ)——基于directx 11》介紹如何利用directx
11的direct3d開(kāi)發(fā)交互式3d圖形程序。首先介紹必要的數(shù)學(xué)基礎(chǔ);然后結(jié)合direct3d介紹3d圖形的基本實(shí)現(xiàn)過(guò)程,例如顏色、紋理、光照、模板等;接著對(duì)3d圖形的部分應(yīng)用主題進(jìn)行了詳細(xì)介紹,例如粒子系統(tǒng)、拾取等;最后對(duì)direct3d的圖形渲染管道的各個(gè)階段進(jìn)行了介紹,特別是對(duì)direct3d
11的新技術(shù)進(jìn)行了詳細(xì)描述。
  《3d圖形編程基礎(chǔ)——基于directx
11》可作為大學(xué)本科和研究生3d游戲編程課程參考書(shū)和培訓(xùn)教材,也可供廣大3d圖形游戲編程用戶學(xué)習(xí)和參考。

書(shū)籍目錄

第一部分 數(shù)學(xué)基礎(chǔ)
 第1章 向量
  1.1向量的概念
  1.2向量的長(zhǎng)度及規(guī)范化
  1.3向量的加法和減法
  1.4數(shù)乘
  1.5點(diǎn)積
  1.6叉積
  1.7齊次坐標(biāo)
  1.8xna向量
  1.9本章 小結(jié)
 第2章 矩陣
  2.1矩陣定義
  2.2矩陣乘法
  2.3矩陣的轉(zhuǎn)置
  2.4單位矩陣
  2.5逆矩陣
  2.6xna矩陣
  2.7本章 小結(jié)   
 第3章 矩陣變換
  3.1基本變換
  3.2xna矩陣變換函數(shù)
  3.3幾何變換的組合
  3.4本章 小結(jié)
第二部分 direcod基礎(chǔ)
 第4章 direct3d 11概述
  4.1directx概述
  4.2direct3d 11新特性
  4.3direct3d 11與opengl 4.0比較
  4.4direct3d 11與direct3d 10渲染管線比較
  4.5著色器概述
  4.6各個(gè)管線階段
  4.7本章 小結(jié)
 第5章 初始化direct3d
  5.1一些準(zhǔn)備工作
  5.2初始化direct3d
  5.3本章 小結(jié)
 第6章 hlsl入門(mén)
  6.1effect文件
  6.2高級(jí)著色語(yǔ)言
  6.3effect框架
  6.4本章 小結(jié)
 第7章 direct3d11中的繪制
  7.1三維圖元
  7.2三角形的繪制
  7.3基于effect框架的立方體繪制
 第8章 顏色
  8.1direct3d中的顏色表示
  8.2頂點(diǎn)顏色
  8.3著色處理
  8.4實(shí)例程序:colorcube
  8.5本章 小結(jié)
 第9章 光照
  9.1光照與材質(zhì)
  9.2頂點(diǎn)法線
  9.3光照類型
  9.4光源類型
  9.5光照實(shí)例
  9.6本章 小結(jié)
 第10章 紋理
  10.1紋理坐標(biāo)
  10.2創(chuàng)建并使用紋理
  10.3紋理過(guò)濾器
  10.4紋理采樣
  10.5紋理尋址模式
  10.6實(shí)例:木箱
  10.7本章 小結(jié)
 第11章 混合
  11.1開(kāi)啟混合
  11.2混合公式的設(shè)置
  11.3應(yīng)用顏色混合
  11.4本章 小結(jié)
 第12章 模板
  12.1建立緩存區(qū)
  12.2建立緩存視圖
  12.3創(chuàng)建模板描述和模板狀態(tài)對(duì)象
  12.4使用模板緩存
  12.5本章 小結(jié)
第三部分 direct3d應(yīng)用
 第13章 相機(jī)設(shè)計(jì)
  13.1基本概念
  13.2camera設(shè)計(jì)
  13.3camera工作原理
  13.4camera的實(shí)現(xiàn)
  13.5camera的使用
  13.6本章 小結(jié)
 第14章 網(wǎng)格
  14.1obj格式介紹
  14.3本章 小結(jié)
 第15章 粒子系統(tǒng)
  15.1粒子系統(tǒng)的工作原理
  15.2粒子系統(tǒng)的設(shè)計(jì)
  15.3粒子系統(tǒng)的實(shí)現(xiàn)
  15.4本章 小結(jié)
 第16章 拾取
  16.1拾取流程
  16.2求拾取射線
  16.3射線—物體相交判斷
  16.4本章 小結(jié)
第四部分 direct3d 11渲染管線及高級(jí)主題
 第17章 輸入裝配階段
  17.11a階段的步驟
  17.2圖元拓?fù)漕愋?br />  17.3不需要輸入緩存的ia階段
  17.4本章 小結(jié)
 第18章 頂點(diǎn)著色階段
  18.1頂點(diǎn)著色器的設(shè)置步驟
  18.2進(jìn)行空間變換
  18.3例程:人物波動(dòng)
  18.4例程:頂點(diǎn)光照
  18.5本章 小結(jié)
 第19章 曲面細(xì)分技術(shù)
  19.1direct3d 11中的曲面細(xì)分
  19.2新的渲染階段
  19.3實(shí)例1:簡(jiǎn)單的曲面細(xì)分的例子
  19.4實(shí)例2:利用曲面細(xì)分實(shí)現(xiàn)置換紋理映射
  19.5本章 小結(jié)
 第20章 幾何著色階段
  20.1幾何著色器的設(shè)計(jì)
  20.2幾何著色器的使用
  20.3本章 小結(jié)
 第21章 流輸出階段和光柵化階段
  21.1流輸出階段
  21.2光柵化階段
  21.3本章 小結(jié)
 第22章 繪制階段
  22.1像素著色階段
  22.2合并輸出階段
  22.3本章 小結(jié)
 第23章 計(jì)算著色器
  23.1計(jì)算著色器的介紹
  23.2計(jì)算著色器線程和線程組
  23.3計(jì)算著色器狀態(tài)
  23.4實(shí)例:分形算法
  23.5本章 小結(jié)
 附錄awindows編程基礎(chǔ)
  a.1語(yǔ)言的選擇
  a.2“類”和類
  a.3人口函數(shù)
  a.4注冊(cè)窗口“類”并創(chuàng)建窗口
  a.5顯示窗口并處理消息隊(duì)列
  a.6響應(yīng)消息
 附錄bxna數(shù)學(xué)庫(kù)
  b.1編譯指令
  b.2常量
  b.3宏命令
  b.4結(jié)構(gòu)和類型
  b.5函數(shù)
 參考文獻(xiàn)
    

章節(jié)摘錄

版權(quán)頁(yè):   插圖:   三維(3D)圖形試圖在計(jì)算機(jī)上模擬真實(shí)的世界,但計(jì)算機(jī)是一個(gè)處理數(shù)據(jù)的工具,因此用數(shù)據(jù)來(lái)描述虛擬世界就成為一個(gè)很重要的過(guò)程,數(shù)學(xué)則成為編寫(xiě)圖形程序必不可少的基礎(chǔ)。 本部分將介紹學(xué)習(xí)本書(shū)所需要的基本數(shù)學(xué)知識(shí),包括向量、矩陣和相應(yīng)的變換等方面的內(nèi)容,這些知識(shí)幾乎在本書(shū)所有的例子程序中都有所涉及。本書(shū)在介紹數(shù)學(xué)概念的同時(shí),闡述了一些Direct3D 11中對(duì)應(yīng)的類或數(shù)據(jù)結(jié)構(gòu),以增加讀者對(duì)這些知識(shí)的理解。 需要說(shuō)明的是,本書(shū)不可能在有限的篇幅內(nèi)闡述所有計(jì)算機(jī)圖形學(xué)所涉及的數(shù)學(xué)知識(shí),而只能就使用最多的一些數(shù)學(xué)知識(shí)簡(jiǎn)單地進(jìn)行一些講解,如果讀者希望了解更詳細(xì)的內(nèi)容,可參考相應(yīng)的數(shù)學(xué)書(shū)籍。 向量是圖形程序中最為基礎(chǔ)的數(shù)學(xué)工具,可以用來(lái)向量表示位置、方向、速度和作用力等。本章將介紹向量的相關(guān)概念及其操作方法。 目標(biāo): ?熟悉向量的定義和表示方式。 ?學(xué)習(xí)向量的運(yùn)算,包括加、減、數(shù)乘、點(diǎn)乘和叉積。 ?學(xué)習(xí)向量的標(biāo)準(zhǔn)化。 ?了解坐標(biāo)系和齊次坐標(biāo)。 ?學(xué)習(xí)XNA庫(kù)中向量的表示和操作方法。 1.1  向量的概念 在數(shù)學(xué)中,既有方向又有大小的線段叫做向量(又稱為矢量)。 向量與位置無(wú)關(guān)。具有同樣長(zhǎng)度和方向的兩個(gè)向量是相等的,即使它們?cè)诓煌奈恢蒙稀?1.1.1  向量的表示 向量最初被應(yīng)用于物理學(xué)。數(shù)學(xué)中的向量概念是從復(fù)數(shù)中引入的。在數(shù)學(xué)上表示向量有如下3種方式。 (1)幾何表示:規(guī)定了起點(diǎn)和終點(diǎn)的線段叫做有向線段,可以使用一條有向線段來(lái)表示一個(gè)向量。有向線段的長(zhǎng)度表示向量的大小,箭頭所指的方向表示向量的方向。起點(diǎn)不固定的向量叫做自由向量,數(shù)學(xué)中研究的向量都是自由向量。 (2)坐標(biāo)表示:在坐標(biāo)系中對(duì)向量進(jìn)行平移,使其起點(diǎn)與坐標(biāo)原點(diǎn)重合,用此時(shí)向量終點(diǎn)的坐標(biāo)來(lái)表示該向量。在圖形編程中,一般只需要處理二維和三維向量,這兩種坐標(biāo)系下向量的坐標(biāo)分別為a=(x,y)和b=(x,y,z),其中x,y,z稱為向量的分量。 注意:因?yàn)橄蛄亢忘c(diǎn)的坐標(biāo)表示是一樣的,都是表示為一個(gè)有序數(shù)集,所以讀者在遇到一個(gè)坐標(biāo)值時(shí),需要首先根據(jù)上下文判斷出它是用于表示一個(gè)向量還是表示一個(gè)點(diǎn)。這二者的差別在于,點(diǎn)描述的是位置信息,而向量同時(shí)描述了長(zhǎng)度和方向信息。 (3)線性組合表示:向量還可以表示為如下形式:a=ux×i+uy×j+uz﹡k,其中,i,j,k分別表示與x,y,z軸平行的單位向量。向量的這種表示方法和坐標(biāo)表示是一一對(duì)應(yīng)的,如:1i—2i+3z=(1,2,3)。 注意:本書(shū)中向量的記法:本書(shū)中統(tǒng)一使用小寫(xiě)的黑斜體字母來(lái)標(biāo)記向量,比如:a=(1,2,3)。 1.1.2  左手坐標(biāo)系和右手坐標(biāo)系 三維空間有多種表示方法,最常用的是笛卡兒坐標(biāo)系。三維笛卡兒坐標(biāo)系基于3條相。

媒體關(guān)注與評(píng)論

  移動(dòng)互聯(lián)網(wǎng)的發(fā)展為人們的日常生活帶來(lái)了革命性的創(chuàng)新,用戶體驗(yàn)越來(lái)越成為業(yè)務(wù)開(kāi)發(fā)的最大驅(qū)動(dòng)力,三維圖形技術(shù)將在未來(lái)的技術(shù)發(fā)展和應(yīng)用中提供重要的支撐。本書(shū)是一本不可多得的三維圖形技術(shù)專著,理論與實(shí)踐兼顧,它將逐步引領(lǐng)讀者領(lǐng)略三維編程的奧妙!本書(shū)作者在三維圖形處理方面有深厚積累,希望通過(guò)本書(shū),為大家分享專業(yè)的處理技術(shù)和豐富的業(yè)務(wù)應(yīng)用。  ——羅圣美(中興通訊有限公司首席架構(gòu)師)    作為微軟定制的一套全新的圖形APl標(biāo)準(zhǔn),DirectXll給圖形開(kāi)發(fā)者以及用戶提供了極大的想象空間。本書(shū)通過(guò)豐富的例程深入淺出地介紹了利用DirectXll進(jìn)行3D編程的原理和方法。我相信無(wú)論是初學(xué)者還是有一定經(jīng)驗(yàn)的3D圖形開(kāi)發(fā)人員都能從此書(shū)中獲益?!  ?jiǎng)摚ㄊ⒋笥螒蛸Y深圖形系統(tǒng)架構(gòu)師)    從事游戲開(kāi)發(fā)多年,有很多朋友經(jīng)常問(wèn)我:如何才能進(jìn)入這行?如何開(kāi)始學(xué)習(xí)游戲開(kāi)發(fā)?事實(shí)上開(kāi)發(fā)游戲是充滿挑戰(zhàn)性的,需要開(kāi)發(fā)人員具備大量的知識(shí)和技能,而這本書(shū)就是讓你具備這些知識(shí)的最好切入點(diǎn)。希望這本書(shū)能幫助大家早日實(shí)現(xiàn)自己的游戲夢(mèng)想。  ——洪怡?。ㄊ⒋笥螒蛸Y深引擎開(kāi)發(fā)工程師)

編輯推薦

《21世紀(jì)高等學(xué)校數(shù)字媒體專業(yè)規(guī)劃教材?3D圖形編程基礎(chǔ):基于DirectX 11》可作為大學(xué)本科和研究生3D游戲編程課程參考書(shū)和培訓(xùn)教材,也可供廣大3D圖形游戲編程用戶學(xué)習(xí)和參考。《21世紀(jì)高等學(xué)校數(shù)字媒體專業(yè)規(guī)劃教材?3D圖形編程基礎(chǔ):基于DirectX 11》內(nèi)容豐富而系統(tǒng),基礎(chǔ)內(nèi)容和擴(kuò)展性主題相結(jié)合。本書(shū)涉及了計(jì)算機(jī)圖形學(xué)的主要內(nèi)容,包括三維空間變換和基本算法、光照與材質(zhì)、紋理映射、粒子系統(tǒng)等,結(jié)合Direct3D可編程渲染管線介紹了著色器編程、粒子系統(tǒng)、曲面細(xì)分等高級(jí)繪制內(nèi)容。具有知識(shí)性和實(shí)用性相結(jié)合的特點(diǎn)。本書(shū)在講述原理的同時(shí),采用實(shí)例教學(xué)法,使讀者既能夠基于Direct3D 11迅速編寫(xiě)自己的三維圖形程序,又能夠了解相關(guān)的圖形學(xué)基本原理和最新技術(shù)。

名人推薦

移動(dòng)互聯(lián)網(wǎng)的發(fā)展為人們的日常生活帶來(lái)了革命性的創(chuàng)新,用戶體驗(yàn)越來(lái)越成為業(yè)務(wù)開(kāi)發(fā)的最大驅(qū)動(dòng)力。三維圖形技術(shù)將在未來(lái)的技術(shù)發(fā)展和應(yīng)用中提供重要的支撐。本書(shū)是一本不可多得的三維圖形技術(shù)專著,理論與實(shí)踐兼顧,它將逐步引領(lǐng)讀者領(lǐng)略三維編程的奧妙!本書(shū)作者在三維圖形處理方面有深厚積累,希望通過(guò)本書(shū),為大家分享專業(yè)的處理技術(shù)和豐富的業(yè)務(wù)應(yīng)用。 ——羅圣美(中興通訊有限公司首席架構(gòu)師) 作為微軟定制的一套全新的圖形API標(biāo)準(zhǔn),DirectX 11給圖形開(kāi)發(fā)者以及用戶提供了極大的想象空間。本書(shū)通過(guò)豐富的例程深入淺出地介紹了利用DirectX 11進(jìn)行3D編程的原理和方法。我相信無(wú)論是初學(xué)者還是有一足經(jīng)驗(yàn)的3D圖形開(kāi)發(fā)人員都能從此書(shū)中獲益。 ——?jiǎng)摚ㄊ⒋笥螒蛸Y深圖形系統(tǒng)架構(gòu)師) 叢事游戲開(kāi)發(fā)多年。有很多朋友經(jīng)常問(wèn)我:如何才能進(jìn)入這行?如何開(kāi)始學(xué)習(xí)游戲開(kāi)發(fā)?事實(shí)上開(kāi)發(fā)游戲是充滿挑戰(zhàn)性的。需要開(kāi)發(fā)人員具備大量的知識(shí)和技能,而這本書(shū)就是讓你具備這些知識(shí)的最好切入點(diǎn)。希望這本書(shū)能幫助大家早日實(shí)現(xiàn)自己的游戲夢(mèng)想。 ——洪怡?。ㄊ⒋笥螒蛸Y深引擎開(kāi)發(fā)工程師)

圖書(shū)封面

圖書(shū)標(biāo)簽Tags

無(wú)

評(píng)論、評(píng)分、閱讀與下載


    3D圖形編程基礎(chǔ) PDF格式下載


用戶評(píng)論 (總計(jì)3條)

 
 

  •   老師說(shuō)看這本書(shū)倒不如看sdk幫助文檔
  •   書(shū)的內(nèi)容很好 但是沒(méi)有光盤(pán) 我在閱讀時(shí)在書(shū)中提到本書(shū)是配有光盤(pán)的 但是我沒(méi)收到
  •   這本書(shū)是本工具書(shū),可以直接拿來(lái)上手,代碼也可以運(yùn)行,但是本書(shū)主題比較簡(jiǎn)單,如果想了解DX 11的可以買,如果想學(xué)一些高級(jí)主題如碰撞檢測(cè)等等就不推薦。
 

250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7