OpenGL Shading Language
暫譯: OpenGL 着色器語言
Randi J. Rost
- 出版商: Addison Wesley
- 出版日期: 2004-02-12
- 售價: $1,800
- 貴賓價: 9.8 折 $1,764
- 語言: 英文
- 頁數: 608
- 裝訂: Paperback
- ISBN: 0321197895
- ISBN-13: 9780321197894
-
相關分類:
OpenGL
已絕版
買這商品的人也買了...
-
$980$774 -
$600$510 -
$399CCNA Self-Study: CCNA Basics (CCNAB) (Hardcover)
-
$1,720$1,634 -
$760$600 -
$590$466 -
$1,264Linear Circuit Analysis: Time Domain, Phasor, and Laplace Transform Approaches, 2/e
-
$1,007C How to Program, 4/e
-
$750$638 -
$560$476 -
$2,130$2,024 -
$850$723 -
$280$218 -
$480$379 -
$750$593 -
$780$616 -
$580$493 -
$780$663 -
$490$382 -
$590$460 -
$490$382 -
$890$703 -
$620$490 -
$990$782 -
$780$616
相關主題
商品描述
"The author has done an excellent job at setting the stage for shader
development, what the purpose is, how to do it, and how it all fits
together."
—Jeffery GalinovskyStrategic Software Program Manager, Intel
Corporation
The OpenGL® Shading Language, a high-level procedural shading language for OpenGL®, is the most important new development in graphics programming to emerge in years. OpenGL is the leading cross-platform 3D-graphics API, and the OpenGL Shading Language allows developers to take total control over the most important stages of the graphics-processing pipeline.
OpenGL® Shading Language is the experienced application programmer's guide to writing shaders. Part reference, part tutorial, this book thoroughly explains the shift from fixed-functionality graphics hardware to the new era of programmable graphics hardware and the additions to the OpenGL API that support this programmability. With OpenGL and shaders written in the OpenGL Shading Language, applications can perform better, achieving stunning graphics effects by utilizing the capabilities of both the visual processing unit and the central processing unit.
In this book, you will find a detailed introduction to the OpenGL Shading Language and the new OpenGL function calls that support it. The text begins by describing the syntax and semantics of this high-level programming language. Once this foundation has been established, the book explores the creation and manipulation of shaders using new OpenGL function calls.
OpenGL® Shading Language features extensive examples of shaders and their underlying algorithms, including
- Procedural texturing
- Noise
- Particle systems
- Hatching
- Analytic antialiasing
- Image processing
The color plate section illustrates the power and sophistication of the OpenGL Shading Language. The API Function Reference at the end of the book is an excellent quick reference to the API entry points that support the OpenGL Shading Language. An enhanced online index allows readers to quickly and easily search the entire text for specific topics
Table of Contents:
Foreword.
Preface.
About the Author.
About the Contributors.
Acknowledgments.
1. Review of OpenGL Basics.
2. Basics.
3. Language Definition.
4. The OpenGL Programmable Pipeline.
5. Built-in Functions.
6. Simple Shading Example.
7. OpenGL Shading Language API.
8. Shader Development.
9. Traditional Shaders.
10. Stored Texture Shaders.
11. Procedural Texture Shaders.
12. Noise.
13. Animated Shaders.
14. Antialiasing Procedural Textures.
15. Non-Photorealistic Shaders.
16. Shaders for Imaging.
17. Language Comparison.
Appendix A. Language Grammar.
Appendix B. API Function Reference.
Afterword.
Glossary.
Further Reading.
Index.
商品描述(中文翻譯)
「作者在設定著色器開發的背景方面做得非常出色,說明了其目的、如何進行以及如何將所有內容整合在一起。」—Jeffery Galinovsky,英特爾公司戰略軟體計畫經理
OpenGL®著色語言是一種高階程序性著色語言,專為OpenGL®設計,是近年來圖形編程中最重要的新發展。OpenGL是領先的跨平台3D圖形API,而OpenGL著色語言則允許開發者完全控制圖形處理管線中最重要的階段。
《OpenGL®著色語言》是經驗豐富的應用程式開發者撰寫著色器的指南。本書部分為參考資料,部分為教程,徹底解釋了從固定功能圖形硬體到可編程圖形硬體的新時代的轉變,以及支持這種可編程性的OpenGL API的新增功能。使用OpenGL和用OpenGL著色語言編寫的著色器,應用程式可以表現得更好,通過利用視覺處理單元和中央處理單元的能力來實現驚人的圖形效果。
在本書中,您將找到對OpenGL著色語言及其支持的新OpenGL函數調用的詳細介紹。文本首先描述了這種高階編程語言的語法和語義。一旦建立了這一基礎,本書將探討使用新的OpenGL函數調用來創建和操作著色器。
《OpenGL®著色語言》包含了大量著色器及其底層算法的範例,包括:
- 程序性紋理
- 噪音
- 粒子系統
- 陰影
- 分析抗鋸齒
- 圖像處理
顏色板部分展示了OpenGL著色語言的強大和複雜性。本書末尾的API函數參考是支持OpenGL著色語言的API入口點的極佳快速參考。增強的在線索引允許讀者快速輕鬆地搜索整個文本中的特定主題。
目錄:
前言
序言
關於作者
關於貢獻者
致謝
1. OpenGL基礎回顧
OpenGL歷史
演變中的OpenGL
執行模型
幀緩衝區
狀態
處理管線
繪製幾何圖形
指定幾何圖形
每個頂點操作
原始組合
原始處理
光柵化
片段處理
每個片段操作
幀緩衝區操作
繪製圖像
像素解包
像素傳輸
光柵化和後端處理
讀取控制
坐標變換
紋理映射
總結
進一步資訊
2. 基礎知識
OpenGL著色語言介紹
為什麼要編寫著色器?
OpenGL可編程處理器
頂點處理器
片段處理器
語言概述
語言設計考量
C基礎
對C的擴展
來自C++的擴展
不支持的C特性
其他差異
系統概述
驅動程式模型
OpenGL著色語言編譯器/鏈接器
OpenGL API擴展
主要優勢
總結
進一步資訊
3. 語言定義
範例著色器對
數據類型
標量
向量
矩陣
取樣器
結構
數組
空類型
聲明和範圍
類型匹配和提升
初始化器和構造函數
類型轉換
修飾符和著色器接口
屬性修飾符
統一修飾符
變量修飾符
常量修飾符
缺失修飾符
流程控制
函數
調用約定
內建函數
操作
索引
混合
分量操作
預處理器
預處理器表達式
錯誤處理
總結
進一步資訊
4. OpenGL可編程管線
頂點處理器
頂點屬性
統一變量
特殊輸出變量
內建變量
用戶定義變量
片段處理器
變量
統一變量
特殊輸入變量
特殊輸出變量
內建統一變量
內建常量
與OpenGL固定功能的互動
雙面顏色模式
點大小模式
裁剪
光柵位置
位置不變性
紋理映射
總結
進一步資訊
5. 內建函數
角度和三角函數
指數函數
常用函數
幾何函數
矩陣函數
向量關係函數
紋理訪問函數
片段處理函數
噪音函數
總結
進一步資訊
6. 簡單著色範例
磚塊著色器概述
頂點著色器
片段著色器
觀察
總結
進一步資訊
7. OpenGL著色語言API
創建著色器對象
編譯著色器對象
鏈接和使用著色器
清理
查詢函數
指定頂點屬性
指定統一變量
取樣器
開發輔助工具
實現依賴的API值
磚塊著色器的應用程式代碼
總結