OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 1.4, 4/e
暫譯: OpenGL 程式設計指南:學習 OpenGL 的官方指南,版本 1.4,第四版

OpenGL Architecture Review Board, Dave Shreiner, Mason Woo, Jackie Neider, Tom Davis

  • 出版商: Addison Wesley
  • 出版日期: 2003-11-13
  • 售價: $1,700
  • 貴賓價: 9.8$1,666
  • 語言: 英文
  • 頁數: 816
  • 裝訂: Paperback
  • ISBN: 0321173481
  • ISBN-13: 9780321173485
  • 相關分類: OpenGL
  • 已絕版

買這商品的人也買了...

商品描述

Description:

The OpenGL Programming Guide provides definitive and comprehensive information on OpenGL and the OpenGL Utility Library. The previous edition covered OpenGL through version 1.2. This fourth edition of the bestselling guide will describe all of the latest features of OpenGL versions 1.3 and 1.4, as well as the important OpenGL ARB extensions. Some of the new features in the core library include cube-mapped texture mapping, multi-texturing, multi-sampled anti-aliasing, depth-texturing and shadows, and advanced texture application modes. Most importantly, the ARB vertex and fragment program extension (commonly referred to as “shaders”) will be introduced. Many new example programs and color slides have been incorporated as well. As with all of the previous editions, this one was developed under the auspices of the OpenGL Architecture Review Board, and industry consortium responsible for guiding the evolution of OpenGL, and written by some of the most influential developers in the field.

 

Table of Contents:

About This Guide.

What This Guide Contains.

What's New in This Edition.

What You Should Know Before Reading This Guide.

How to Obtain the Sample Code.

Nate Robins' OpenGL Tutors.

Errata.

Style Conventions.



Acknowledgments.


1. Introduction to OpenGL.

What Is OpenGL?

A Smidgen of OpenGL Code.

OpenGL Command Syntax.

OpenGL as a State Machine.

OpenGL Rendering Pipeline.

OpenGL-Related Libraries.

Animation.



2. State Management and Drawing Geometric Objects.

A Drawing Survival Kit.

Describing Points, Lines, and Polygons.

Basic State Management.

Displaying Points, Lines, and Polygons.

Normal Vectors.

Vertex Arrays.

Attribute Groups.

Some Hints for Building Polygonal Models of Surfaces.



3. Viewing.

Overview: The Camera Analogy.

Viewing and Modeling Transformations.

Projection Transformations.

Viewport Transformation.

Troubleshooting Transformations.

Manipulating the Matrix Stacks.

Additional Clipping Planes.

Examples of Composing Several Transformations.

Reversing or Mimicking Transformations.



4. Color.

Color Perception.

Computer Color.

Specifying a Color and a Shading Model.



5. Lighting.

A Hidden-Surface Removal Survival Kit.

Real-World and OpenGL Lighting.

A Simple Example: Rendering a Lit Sphere.

Creating Light Sources.

Selecting a Lighting Model.

Defining Material Properties.

The Mathematics of Lighting.

Lighting in Color-Index Mode.



6. Blending, Antialiasing, Fog, and Polygon Offset.

Blending.

Antialiasing.

Fog.

Point Parameters.

Polygon Offset.



7. Display Lists.

Why Use Display Lists?

An Example of Using a Display List.

Display List Design Philosophy.

Creating and Executing a Display List.

Executing Multiple Display Lists.

Managing State Variables with Display Lists.



8. Drawing Pixels, Bitmaps, Fonts, and Images.

Bitmaps and Fonts.

Images.

Imaging Pipeline.

Reading and Drawing Pixel Rectangles.

Tips for Improving Pixel Drawing Rates.

Imaging Subset.



9. Texture Mapping.

An Overview and an Example.

Specifying the Texture.

Filtering.

Texture Objects.

Texture Functions.

Assigning Texture Coordinates.

Automatic Texture-Coordinate Generation.

Multitexturing.

Texture Combiner Functions.

Applying Secondary Color after Texturing.

The Texture Matrix Stack.

Depth Textures.



10. The Framebuffer.

Buffers and Their Uses.

Testing and Operating on Fragments.

The Accumulation Buffer.



11. Tessellators and Quadrics.

Polygon Tessellation.

Quadrics: Rendering Spheres, Cylinders, and Disks.



12. Evaluators and NURBS.

Prerequisites.

Evaluators.

The GLU NURBS Interface.



13. Selection and Feedback.

Selection.

Feedback.



14. Now That You Know.

Error Handling.

Which Version Am I Using?

Extensions to the Standard.

Cheesy Translucency.

An Easy Fade Effect.

Object Selection Using the Back Buffer.

Cheap Image Transformation.

Displaying Layers.

Antialiased Characters.

Drawing Round Points.

Interpolating Images.

Making Decals.

Drawing Filled, Concave Polygons Using the Stencil Buffer.

Finding Interference Regions.

Shadows.

Hidden-Line Removal.

Texture Mapping Applications.

Drawing Depth-Buffered Images.

Dirichlet Domains.

Life in the Stencil Buffer.

Alternative Uses for glDrawPixels() and glCopyPixels().



Appendix A. Order of Operations.

Overview.

Geometric Operations.

Pixel Operations.

Fragment Operations.

Odds and Ends.



Appendix B. State Variables.

The Query Commands.

OpenGL State Variables.



Appendix C. OpenGL and Window Systems.

Accessing New OpenGL Functions.

GLX: OpenGL Extension for the X Window System.

AGL: OpenGL Extensions for the Apple Macintosh.

PGL: OpenGL Extension for IBM OS/2 Warp.

WGL: OpenGL Extension for Microsoft Windows 95/98/NT/ME/2000/XP.



Appendix D. Basics of GLUT: The OpenGL Utility Toolkit.

Initializing and Creating a Window.

Handling Window and Input Events.

Loading the Color Map.

Initializing and Drawing Three-Dimensional Objects.

Managing a Background Process.

Running the Program.



Appendix E. Calculating Normal Vectors.

Finding Normals for Analytic Surfaces.

Finding Normals from Polygonal Data.



Appendix F. Homogeneous Coordinates and Transformation Matrices.

Homogeneous Coordinates.

Transformation Matrices.



Appendix G. Programming Tips.

OpenGL Correctness Tips.

OpenGL Performance Tips.

GLX Tips.



Appendix H. OpenGL Invariance.


Glossary.


Index. 0321173481T10302003

商品描述(中文翻譯)

描述:


《OpenGL 程式設計指南》提供了關於 OpenGL 及 OpenGL 實用程式庫的權威且全面的資訊。前一版涵蓋了 OpenGL 版本 1.2。本書的第四版將描述 OpenGL 版本 1.3 和 1.4 的所有最新功能,以及重要的 OpenGL ARB 擴展。核心庫中的一些新功能包括立方體映射紋理映射、多重紋理、多重取樣抗鋸齒、深度紋理和陰影,以及先進的紋理應用模式。最重要的是,將介紹 ARB 頂點和片段程式擴展(通常稱為“著色器”)。還納入了許多新的範例程式和彩色幻燈片。與所有前幾版一樣,本書是在 OpenGL 架構審查委員會的支持下開發的,該委員會負責指導 OpenGL 的演進,並由該領域一些最具影響力的開發者撰寫。


 


目錄:


關於本指南。



本指南的內容。



本版的新內容。



在閱讀本指南之前您應該知道的事項。



如何獲取範例程式碼。



Nate Robins 的 OpenGL 教學。



勘誤表。



風格慣例。




致謝。


1. OpenGL 簡介。



什麼是 OpenGL?



一小段 OpenGL 代碼。



OpenGL 命令語法。



OpenGL 作為狀態機。



OpenGL 渲染管線。



與 OpenGL 相關的庫。



動畫。




2. 狀態管理與繪製幾何物件。



繪圖生存工具包。



描述點、線和多邊形。



基本狀態管理。



顯示點、線和多邊形。



法向量。



頂點陣列。



屬性組。



構建表面多邊形模型的一些提示。




3. 觀景。



概述:相機類比。



觀景和建模變換。



投影變換。



視口變換。



故障排除變換。



操作矩陣堆疊。



附加裁剪平面。



組合多個變換的範例。



反轉或模仿變換。




4. 顏色。



顏色感知。



計算機顏色。



指定顏色和著色模型。




5. 照明。



隱藏表面移除生存工具包。



現實世界與 OpenGL 照明。



簡單範例:渲染一個發光的球體。



創建光源。



選擇照明模型。



定義材質屬性。



照明的數學。



顏色索引模式下的照明。




6. 混合、抗鋸齒、霧和多邊形偏移。



混合。



抗鋸齒。



霧。



點參數。



多邊形偏移。




7. 顯示列表。



為什麼使用顯示列表?



使用顯示列表的範例。



顯示列表設計理念。



創建和執行顯示列表。



執行多個顯示列表。



使用顯示列表管理狀態變數。




8. 繪製像素、位圖、字型和影像。



位圖和字型。



影像。



影像管線。



讀取和繪製像素矩形。



提高像素繪製速率的提示。



影像子集。




9. 紋理映射。



概述和範例。



指定紋理。



過濾。



紋理物件。



紋理函數。



分配紋理坐標。



自動生成紋理坐標。



多重紋理。



紋理合併函數。



紋理後應用次要顏色。



紋理矩陣堆疊。



深度紋理。




10. 幀緩衝區。



緩衝區及其用途。



測試和操作片段。



累積緩衝區。




11. 切割器和二次曲面。



多邊形切割。



二次曲面:渲染球體、圓柱和圓盤。




12. 評估器和 NURBS。



前提條件。



評估器。



GLU NURBS 介面。




13. 選擇和反饋。



選擇。



反饋。




14. 現在您知道了。



錯誤處理。



我正在使用哪個版本?



標準的擴展。



簡單的半透明效果。



簡單的淡出效果。



使用後緩衝區進行物件選擇。



便宜的影像變換。



顯示圖層。



抗鋸齒字元。



繪製圓形點。



插值影像。



製作貼花。



使用模板緩衝區繪製填充的凹多邊形。



尋找干擾區域。



陰影。



隱藏線移除。



紋理映射應用。



繪製深度緩衝影像。



Dirichlet 領域。



在模板緩衝區中的生命。



glDrawPixels() 和 glCopyPixels() 的替代用途。




附錄 A. 操作順序。



概述。



幾何操作。



像素操作。



片段操作。



零碎的東西。




附錄 B. 狀態變數。



查詢命令。



OpenGL 狀態變數。




附錄 C. OpenGL 與視窗系統。



訪問新的 OpenGL 函數。



GLX:X 窗口系統的 OpenGL 擴展。



AGL:Apple Macintosh 的 OpenGL 擴展。



PGL:IBM OS/2 Warp 的 OpenGL 擴展。



WGL:Microsoft Windows 95/98/NT/ME/2000/XP 的 OpenGL 擴展。




附錄 D. GLUT 基礎:OpenGL 實用工具包。



初始化和創建窗口。



處理窗口和輸入事件。



加載顏色映射。



初始化和繪製三維物件。



管理背景進程。



運行程式。




附錄 E. 計算法向量。



計算法向量的步驟。

最後瀏覽商品 (20)