注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)圖形圖像、多媒體、網(wǎng)頁制作其他處理軟件OpenGL著色語言

OpenGL著色語言

OpenGL著色語言

定 價(jià):¥59.00

作 者: (美)羅斯特(Rost,R.J.) 著,天宏工作室 譯
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: OpenGL

ISBN: 9787115151391 出版時(shí)間: 2006-10-01 包裝: 膠版紙
開本: 800*1000 1/16 頁數(shù): 406 字?jǐn)?shù):  

內(nèi)容簡介

  《OpenGL著色語言》要求讀者需要具有一定的數(shù)學(xué)知識,適合有興趣編寫著色器的應(yīng)用程序開發(fā)人員,可作為GLSL開發(fā)者的參考手冊。不論專家或著色器編程初學(xué)者,都能在《OpenGL著色語言》中發(fā)現(xiàn)所需的財(cái)富。OpenGL著色語言是一種用于OpenGL的高級過程著色語言,它是近年來圖形編程領(lǐng)域中出現(xiàn)的最重要的新型開發(fā)技術(shù)。OpenGL是業(yè)界領(lǐng)先的跨平臺3D圖形API,而OpenGL著色語言允許開發(fā)人員控制圖形處理管理線中最重要的階段。《OpenGL著色語言》全面覆蓋從算法到API,書中更含豐富的API函數(shù)參考及頂級的案例分析。全書首先闡述了這種高級編程語言的語法和語義,在此基礎(chǔ)上,詳盡介紹了一系列著色器實(shí)例,同時(shí)對底層算法進(jìn)行了解釋,透析從固定功能圖形硬件到可編程圖形硬件的新時(shí)代轉(zhuǎn)變,探究使用新的OpenGL函數(shù)調(diào)用來創(chuàng)建和操作著色器的方法,最后將該語言與其他著名的商業(yè)著色語言進(jìn)行了比較。

作者簡介

  本書提供作譯者介紹Randi Rost目前是科羅拉多州3Dlabs’Fort Collions圖形軟件小組的經(jīng)理。這個(gè)小組推動了openGL 2.0標(biāo)準(zhǔn)的定義,并實(shí)現(xiàn)了用于3Dlabs圖形產(chǎn)品的OpenGL驅(qū)動程序。在加入3Dlabs之前,Randi是Hewlett-Packard公司圖形軟件實(shí)驗(yàn)室的一位圖形軟件架構(gòu)師及KubotaGraphics公司的圖形軟件設(shè)首席架構(gòu)師。.Randi在圖形行業(yè)有超過25年的從業(yè)經(jīng)驗(yàn),他為新興圖形標(biāo)準(zhǔn)的制定付出了15年的心血。自1992年發(fā)布OpenGLl.0以來,他一直致力于OpenGL的設(shè)計(jì)和革新。他是少數(shù)幾個(gè)對OpenGL的每一個(gè)主要版本(O...

圖書目錄

第1章 OpenGL基礎(chǔ)知識概述 
1.1 OpenGL的歷史 
1.2 發(fā)展OpenGL 
1.3 執(zhí)行模型 
1.4 幀緩沖區(qū) 
1.5 狀態(tài) 
1.6 處理管線 
1.7 繪制幾何對象 
1.7.1 指定幾何對象 
1.7.2 逐個(gè)頂點(diǎn)操作 
1.7.3 圖元組裝 
1.7.4 圖元處理 
1.7.5 柵格化 
1.7.6 片元處理 
1.7.7 逐個(gè)片元的操作 
1.7.8 幀緩沖區(qū)操作 
1.8 繪制圖像 
1.8.1 像素解碼 
1.8.2 像素傳輸 
1.8.3 柵格化和后端處理 
1.8.4 讀取控制 
1.9 坐標(biāo)變換
1.10 紋理 
1.11 小結(jié) 
1.12 參考資料 
第2章 基礎(chǔ)知識 
2.1 OpenGL著色語言簡介 
2.2 為什么要編寫著色器 
2.3 OpenGL可編程處理器 
2.3.1 頂點(diǎn)處理器 
2.3.2 片元處理器 
2.4 語言概述 
2.4.1 語言的設(shè)計(jì)考慮 
2.4.2 以C為基礎(chǔ) 
2.4.3 對C的增加 
2.4.4 來自C++的增加 
2.4.5 不受支持的C特性 
2.4.6 其他差異 
2.5 系統(tǒng)概述 
2.5.1 驅(qū)動程序模型 
2.5.2 OpenGL著色語言編譯器/鏈接器 
2.5.3 OpenGL API擴(kuò)展 
2.6 主要優(yōu)點(diǎn) 
2.7 小結(jié) 
2.8 參考資料 
第3章 語言定義 
3.1 著色器對的實(shí)例 
3.2 數(shù)據(jù)類型 
3.2.1 標(biāo)量 
3.2.2 矢量 
3.2.3 矩陣 
3.2.4 取樣器 
3.2.5 結(jié)構(gòu) 
3.2.6 數(shù)組 
3.2.7 Void 
3.2.8 聲明和作用域 
3.2.9 類型匹配與提升 
3.3 初始化器和構(gòu)造函數(shù) 
3.4 類型轉(zhuǎn)換 
3.5 限定符和著色器接口 
3.5.1 Attribute限定符 
3.5.2 Uniform限定符 
3.5.3 Varying限定符 
3.5.4 常量限定符 
3.5.5 缺少限定符
3.6 流控制 
3.6.1 函數(shù) 
3.6.2 調(diào)用約定 
3.6.3 內(nèi)置函數(shù) 
3.7 操作 
3.7.1 索引 
3.7.2 混合 
3.7.3 按部分操作 
3.8 預(yù)處理器 
3.9 預(yù)處理器表達(dá)式 
3.10 錯(cuò)誤處理 
3.11 小結(jié) 
3.12 參考資料 
第4章 OpenGL可編程管線 
4.1 頂點(diǎn)處理器 
4.1.1 頂點(diǎn)屬性 
4.1.2 一致變量 
4.1.3 特殊的輸出變量 
4.1.4 內(nèi)置的易變變量 
4.1.5 用戶定義的易變變量 
4.2 片元處理器 
4.2.1 易變變量 
4.2.2 一致變量 
4.2.3 特殊的輸入變量 
4.2.4 特殊的輸出變量 
4.3 內(nèi)置一致變量 
4.4 內(nèi)置常量 
4.5 與OpenGL的固定功能交互 
4.5.1 兩側(cè)顏色模式 
4.5.2 點(diǎn)大小模式 
4.5.3 裁剪 
4.5.4 光柵位置 
4.5.5 位置不變性 
4.5.6 紋理處理 
4.6 小結(jié) 
4.7 參考資料 
第5章 內(nèi)置函數(shù) 
5.1 角度和三角函數(shù) 
5.2 指數(shù)函數(shù) 
5.3 常見函數(shù) 
5.4 幾何函數(shù) 
5.5 矩陣函數(shù) 
5.6 矢量關(guān)系函數(shù) 
5.7 紋理訪問函數(shù) 
5.8 片元處理函數(shù) 
5.9 噪聲函數(shù) 
5.10 小結(jié) 
5.11 參考資料 
第6章 簡單的著色實(shí)例 
6.1 磚塊著色器簡介
6.2 頂點(diǎn)著色器 
6.3 片元著色器 
6.4 觀察 
6.5 小結(jié) 
6.6 參考資料
第7章 OpenGL著色語言API
7.1 創(chuàng)建著色器對象 
7.2 編譯著色器對象 
7.3 鏈接和使用著色器 
7.4 清理工作 
7.5 查詢函數(shù) 
7.6 指定頂點(diǎn)屬性 
7.7 指定一致變量 
7.8 采樣器 
7.9 開發(fā)輔助工具 
7.10 與實(shí)現(xiàn)有關(guān)的API值 
7.11 磚塊著色器的應(yīng)用程序代碼 
7.12 小結(jié) 
7.13 參考資料 
第8章 開發(fā)著色器 
8.1 一般原則 
8.1.1 理解問題 
8.1.2 逐步提高復(fù)雜性 
8.1.3 測試和重復(fù) 
8.1.4 盡量簡化 
8.1.5 模塊化 
8.2 性能考慮 
8.2.1 考慮計(jì)算頻率 
8.2.2 分析算法 
8.2.3 使用內(nèi)置函數(shù) 
8.2.4 使用矢量 
8.2.5 使用紋理編寫復(fù)雜函數(shù) 
8.2.6 回顧信息日志 
8.3 著色器調(diào)試 
8.3.1 使用頂點(diǎn)著色器的輸出 
8.3.2 使用片元著色器的輸出
8.3.3 使用簡單的幾何對象 
8.4 著色器開發(fā)工具 
8.4.1 RenderMonkey 
8.4.2 OpenGL著色語言編譯器前端 
8.5 小結(jié) 
8.6 參考資料
第9章 傳統(tǒng)著色器 
9.1 變換 
9.2 光源 
9.2.1 定向光源 
9.2.2 點(diǎn)光源 
9.2.3 聚光燈 
9.3 材質(zhì)屬性和光照 
9.4 兩側(cè)光照 
9.5 無光照 
9.6 霧化 
9.7 紋理坐標(biāo)生成 
9.8 用戶裁剪 
9.9 紋理應(yīng)用 
9.10 小結(jié) 
9.11 參考資料 
第10章 存儲的紋理著色器 
10.1 從著色器內(nèi)部訪問紋理貼圖 
10.2 簡單的紋理處理實(shí)例
10.2.1 應(yīng)用程序設(shè)置 
10.2.2 頂點(diǎn)著色器 
10.2.3 片元著色器 
10.3 多重紋理處理實(shí)例 
10.3.1 應(yīng)用程序設(shè)置 
10.3.2 頂點(diǎn)著色器 
10.3.3 片元著色器 
10.4 環(huán)境貼圖實(shí)例 
10.4.1 應(yīng)用程序設(shè)置 
10.4.2 頂點(diǎn)著色器 
10.4.3 片元著色器 
10.5 使用BRDF數(shù)據(jù)的多項(xiàng)式紋理貼圖 
10.5.1 應(yīng)用程序設(shè)置 
10.5.2 頂點(diǎn)著色器 
10.5.3 片元著色器 
10.6 小結(jié)
10.7 參考資料
第11章 程序紋理著色器 
11.1 常規(guī)圖案 
11.1.1 條紋頂點(diǎn)著色器 
11.1.2 條紋片元著色器 
11.2 玩具球 
11.2.1 應(yīng)用程序設(shè)置 
11.2.2 頂點(diǎn)著色器 
11.2.3 片元著色器 
11.3 網(wǎng)格 
11.4 凹凸貼圖 
11.4.1 應(yīng)用程序設(shè)置 
11.4.2 頂點(diǎn)著色器
11.4.3 片元著色器 
11.4.4 法向量貼圖 
11.5 小結(jié) 
11.6 參考資料
第12章 噪聲 
12.1 定義噪聲 
12.1.1 2D噪聲 
12.1.2 更高維度的噪聲 
12.1.3 在OpenGL著色器中使用噪聲 
12.2 噪聲紋理 
12.3 權(quán)衡考慮 
12.4 一個(gè)簡單的噪聲著色器 
12.4.1 應(yīng)用程序設(shè)置 
12.4.2 頂點(diǎn)著色器 
12.4.3 片元著色器 
12.5 擾動 
12.5.1 太陽表面著色器 
12.5.2 大理石 
12.6 花崗巖 
12.7 木材 
12.7.1 應(yīng)用程序設(shè)置 
12.7.2 片元著色器 
12.8 小結(jié) 
12.9 參考資料 
第13章 動畫著色器 
13.1 開/關(guān) 
13.2 閾值 
13.3 轉(zhuǎn)換 
13.4 關(guān)鍵幀插值 
13.5 其他混合效果 
13.6 粒子系統(tǒng) 
13.6.1 應(yīng)用程序設(shè)置 
13.6.2 紙炮頂點(diǎn)著色器 
13.6.3 紙炮片元著色器 
13.6.4 進(jìn)一步增強(qiáng) 
13.7 搖擺 
13.8 小結(jié) 
13.9 參考資料 
第14章 反走樣過程紋理 
14.1 走樣的原因 
14.2 避免走樣 
14.3 提高分辨率 
14.4 反走樣的條紋實(shí)例 
14.4.1 生成條紋 
14.4.2 分析預(yù)過濾 
14.4.3 自適應(yīng)分析預(yù)過濾 
14.4.4 分析積分 
14.4.5 反走樣的磚塊片元著色器 
14.5 頻率限定 
14.6 小結(jié) 
14.7 參考資料 
第15章 反真實(shí)著色器 
15.1 剖面線實(shí)例 
15.1.1 應(yīng)用程序設(shè)置 
15.1.2 頂點(diǎn)著色器 
15.1.3 生成剖面線 
15.1.4 獲得一致的線條密度 
15.1.5 光照 
15.1.6 添加特征 
15.1.7 剖面線片元著色器 
15.2 技術(shù)示意圖實(shí)例 
15.2.1 應(yīng)用程序設(shè)置 
15.2.2 頂點(diǎn)著色器 
15.2.3 片元著色器 
15.3 Mandelbrot實(shí)例 
15.3.1 Mandelbrot set簡介 
15.3.2 頂點(diǎn)著色器 
15.3.3 片元著色器 
15.3.4 Julia set 
15.4 小結(jié) 
15.5 參考資料 
第16章 用于圖像處理的著色器 
16.1 幾何圖像變換
16.2 數(shù)學(xué)貼圖 
16.3 查找表操作 
16.4 顏色空間變換 
16.5 圖像內(nèi)插和外插
16.5.1 亮度 
16.5.2 對比度
16.5.3 飽和度
16.5.4 銳度 
16.6 混合模式
16.6.1 正?!?br /> 16.6.2 平均 
16.6.3 溶解 
16.6.4 背面 
16.6.5 清除 
16.6.6 變暗 
16.6.7 變亮 
16.6.8 正片疊底 
16.6.9 屏幕 
16.6.10 顏色加深 
16.6.11 顏色減淡 
16.6.12 疊加 
16.6.13 柔光 
16.6.14 強(qiáng)光 
16.6.15 相加 
16.6.16 相減 
16.6.17 差值 
16.6.18 反差值 
16.6.19 排除 
16.6.20 不透明度 
16.7 卷積 
16.7.1 平滑
16.7.2 邊緣檢測 
16.7.3 銳化 
16.8 小結(jié) 
16.9 參考資料 
第17章 語言的比較 
17.1 著色語言的歷史 
17.2 RenderMan 
17.3 OpenGL Shader(ISL) 
17.4 HLSL 
17.5 Cg 
17.6 小結(jié) 
17.7 參考資料 
附錄A 語言的語法 
附錄B API函數(shù)參考 
glAttachObjectARB 
glBindAttribLocationARB 
glCompileShaderARB 
glCreateProgramObjectARB 
glCreateShaderObjectARB 
glDeleteObjectARB 
glDetachObjectARB 
glEnableVertexAttribArrayARB
glGetActiveAttribARB 
glGetActiveUniformARB 
glGetAttachedObjectsARB 
glGetAttribLocationARB 
glGetHandleARB 
glGetinfoLogARB 
glGetObjectParameterARB 
glGetShaderSourceARB 
glGetUniformARB 
glGetUniformLocationARB 
glGetVertexAttribARB 
glGetVertexAttribPointervARB 
glLinkProgramARB 
glShaderSourceARB 
glUniformARB 
glUseProgramObjectARB 
glValidateProgramARB 
glVertexAttribARB 
glVertexAttribPointerARB 
后記

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號