OpenGL Programming for Windows 95 and Windows Nt

Ron Fosner

  • 出版商: Addison-Wesley Professional
  • 出版日期: 1996-11-08
  • 定價: USD $44.99
  • 售價: $980
  • 貴賓價: 9.8$960
  • 語言: 英文
  • 頁數: 288
  • 裝訂: Paperback
  • ISBN: 0201407094
  • ISBN-13: 9780201407099




Back to Top

Appropriate Courses

Computer Graphics--Intro.

Back to Top


Back to Top

Table Of Contents

OpenGL for Windows Programmers.
Overview of Device Contexts, Rendering.
Contexts, and Pixel Format.
Pixel Formats.
Pixel Format Structure.
Selecting and Examining a Pixel Format.
Rendering Contexts.
The WGL Context-Rendering Functions.
Methods for Creating an RC.
Fonts and OpenGL.
Double Buffering.
Advanced Miscellaneous Functions.
Creating a Simple OpenGL Program with the Windows CAPI.
Creating a Simple MFC C++ OpenGL Program.

Understanding OpenGL.
What Does OpenGL Do?
Why OpenGL?
Who Controls OpenGL?
How OpenGL Works.
How a Vertex Becomes a Pixel.
The z-Buffer.
Hardware Accelerators.
Constructing Primitives.
The glBegin()/glEnd() Wrappers.
OpenGL Command Notation.
Vertex Commands.
OpenGL and DLLs.
OpenGL's Main Library.
OpenGL's Utility Library.
OpenGL's Auxiliary Library.

Rendering with OpenGL.
OpenGL Points.
OpenGL Lines.
OpenGL Polygons.
Rendering Primitives.
Specifying a Color.
Calculating Normal Vectors.
Clearing the Rendering Window.

Matrix Transformations Are Your Friends!
Elementary Transformations.
Rotation and Translations.
Scaling Transformations.
OpenGL's Modelview Matrix.
Modeling Transformations.
Viewing Transformations.
The Components of the Modelview Matrix.
Manipulating the Matrix Directly.
Viewport and Projection Transformations.
Viewport Transformations.
Projection Transformations.

Try This: Creating a Windows OpenGL View Class.
Encapsulating OpenGL.
Architecture of the Model-View-Controller.
Building the OpenGL View Class Framework.
Customizing the View for OpenGL.
Using the CopenGLView Class.

Try This: Display Lists and Fonts.
Caching OpenGL Commands.
Creating a Display List.
Recording a Display List.
Executing a Display List.
Generating a Unique Display List ID.
Deleting and Reusing Display List IDs.
Sequential Display Lists.
Sharing Display Lists between RCs and Threads.
Hierarchical Display Lists.
Using Display Lists in the CopenGLView Class.
Rendering Windows Fonts in OpenGL.
The wglUseFontBitmaps () Function.
Adding Bitmapped Text to CopenGLView.
The wglUseFontOutlines () Function.

Try This: OpenGL and Animation.
Animation Loops in Windows.
A Slightly Less Extreme Animation Loop.
Letting Windows Tell Us When to Redraw.
Getting the Smoothest Animation Possible.

Try This: Colors, Materials, and Lights.
Color and Lighting.
Color and Shading.
Types of Material Properties.
Specifying a Material Property.
Enabling Lighting.
Global Lighting.
Individual Light Sources.
Creating a Scene with Multiple Light Sources.
Optimizing the Rendering of Dynamically.
Changing Material Properties.

Try This: Textures.
Windows Bitmap Files.
A Quick Look at Windows DIB Format.
A Special Microsoft Extension.
Reading a Windows Bitmap into an OpenGL Image.
Changing an Image's Size.
Specifying a Texture.
Multiple Images and Large Images.
Generating Images of Multiple Levels of Detail.
Introducing the CopenGLImage Class.
Deciding between Decal and Modulation Mode.
Using CopenGLImage to Select the Image.
Controlling Image Quality.
Applying a Textures to a Surface.
Repeating Textures and the glTexParameter* () Function.
Texture Quality and Filtering.
Texture Objects in OpenGL 1.1.
Other Texture-Mapping Features.

Try This: Picking Objects in 3-Space.
Manipulating OpenGL Objects.
Using Selection Mode.
Creating Names and a Name Stack.
Determining Which Objects Are Picked.

Advanced OpenGL Features.
Overview of OpenGL Extensions.
In Pursuit of Extensions.
Getting an Extension's Address.
The Vertex Array Extensions Found in OpenGL.

OpenGL 1.1.
Using Vertex Array Pointers.
Using Color Array Pointers.
Using Color-Index Array Pointers.
Using Normal Vector Array Pointers.
Using Edge-Flag Array Pointers.
Using Texture-Coordinate Array Pointers.
Enabling Vertex Array Functionality.
Rendering an Element of the Array.
Rendering All or Part of the Array.
Indirectly Rendering All or Part of the Array.
Manipulating Arrays of Vertex Arrays.
When to Modify Vertex Array Data.
OpenGL 1.1's Texture Objects.
OpenGL 1.1 Extensions.
The Silicon Graphics OpenGL Drivers-Cosmo OpenGL.
OpenGL and Windows 95.
Measuring Code Speed.
Hardware Accelerators.

Try This: OpenGL Resources.

Back to Top