Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL

Similar documents
GLOBAL EDITION. Interactive Computer Graphics. A Top-Down Approach with WebGL SEVENTH EDITION. Edward Angel Dave Shreiner

CHAPTER 1 Graphics Systems and Models 3

Computer Graphics I Lecture 11

QUESTION BANK 10CS65 : COMPUTER GRAPHICS AND VISUALIZATION

SRM INSTITUTE OF SCIENCE AND TECHNOLOGY

Introduction to Computer Graphics

CS2401 COMPUTER GRAPHICS ANNA UNIV QUESTION BANK

COMPUTER GRAPHICS, MULTIMEDIA AND ANIMATION, Second Edition (with CD-ROM) Malay K. Pakhira

Course Title: Computer Graphics Course no: CSC209

Models and Architectures

CHETTINAD COLLEGE OF ENGINEERING & TECHNOLOGY CS2401 COMPUTER GRAPHICS QUESTION BANK

OXFORD ENGINEERING COLLEGE (NAAC Accredited with B Grade) DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING LIST OF QUESTIONS

End-Term Examination

Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11

CS230 : Computer Graphics Lecture 4. Tamar Shinar Computer Science & Engineering UC Riverside

Computer Graphics: Programming, Problem Solving, and Visual Communication

Pipeline Operations. CS 4620 Lecture 14

Topics and things to know about them:

Lahore University of Management Sciences. CS 452 Computer Graphics

CS 130 Final. Fall 2015


Introduction to Computer Graphics with WebGL

Models and Architectures. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico

Lahore University of Management Sciences. CS 452 Computer Graphics

Orthogonal Projection Matrices. Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015

CS452/552; EE465/505. Clipping & Scan Conversion

Mathematical Tools in Computer Graphics with C# Implementations Table of Contents

Graphics and Interaction Rendering pipeline & object modelling

GEOMETRIC TOOLS FOR COMPUTER GRAPHICS

Computer Graphics Disciplines. Grading. Textbooks. Course Overview. Assignment Policies. Computer Graphics Goals I

Module Contact: Dr Stephen Laycock, CMP Copyright of the University of East Anglia Version 1

Computer Graphics. Instructor: Oren Kapah. Office Hours: T.B.A.

Institutionen för systemteknik

Pipeline Operations. CS 4620 Lecture 10

Computer Graphics CS 543 Lecture 13a Curves, Tesselation/Geometry Shaders & Level of Detail

Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include

CS451Real-time Rendering Pipeline

FROM VERTICES TO FRAGMENTS. Lecture 5 Comp3080 Computer Graphics HKBU

CS 464 Review. Review of Computer Graphics for Final Exam

MODELING AND HIERARCHY

CS 130 Exam I. Fall 2015

Chapter 2 A top-down approach - How to make shaded images?

Points and lines, Line drawing algorithms. Circle generating algorithms, Midpoint circle Parallel version of these algorithms

COURSE DELIVERY PLAN - THEORY Page 1 of 6

For each question, indicate whether the statement is true or false by circling T or F, respectively.

1 Preview. Dr. Scott Gordon Computer Science Dept. CSUS. Virtual Cameras, Viewing Transformations: CSc-155 Advanced Computer Graphics

Real-Time Rendering. Tomas Möller Eric Haines. A K Peters Natick, Massachusetts

Aptitude Test Question

3D Rasterization II COS 426

CS GAME PROGRAMMING Question bank

Homework #2. Hidden Surfaces, Projections, Shading and Texture, Ray Tracing, and Parametric Curves

Topic 12: Texture Mapping. Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping

Overview. Pipeline implementation I. Overview. Required Tasks. Preliminaries Clipping. Hidden Surface removal

птта,.л^яшнря i #*% I C!# % л«*у1 W\ I I "в С^ Ш* I jy* #*% **% ^^ I g"% C"" Prentice Hall Upper Saddle River, NJ PEARSON

Review. Stephen J. Guy

Lecture 12: Advanced Rendering

Welcome to COMP 770 (236) Introduction. Prerequisites. Prerequisites

Topic 11: Texture Mapping 11/13/2017. Texture sources: Solid textures. Texture sources: Synthesized

Advanced 3D Game Programming with DirectX* 10.0

Graphics Pipeline 2D Geometric Transformations

Direct Rendering of Trimmed NURBS Surfaces

Blue colour text questions Black colour text sample answers Red colour text further explanation or references for the sample answers

Introduction to 3D Graphics

Three Main Themes of Computer Graphics

Topic 11: Texture Mapping 10/21/2015. Photographs. Solid textures. Procedural

RASTERISED RENDERING

(a) rotating 45 0 about the origin and then translating in the direction of vector I by 4 units and (b) translating and then rotation.

Introduction to Visualization and Computer Graphics

Topics. From vertices to fragments

TDA362/DIT223 Computer Graphics EXAM (Same exam for both CTH- and GU students)

Graphics Hardware and Display Devices

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

Spring 2009 Prof. Hyesoon Kim

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

Spring 2012 Final. CS184 - Foundations of Computer Graphics. University of California at Berkeley

Chapter 7 - Light, Materials, Appearance

COMP30019 Graphics and Interaction Rendering pipeline & object modelling

Lecture outline. COMP30019 Graphics and Interaction Rendering pipeline & object modelling. Introduction to modelling

L1 - Introduction. Contents. Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming

The University of Calgary

CS 465 Program 4: Modeller

Shading Languages. Seminar Computer Graphics. Markus Kummerer

Adaptive Point Cloud Rendering

Interpolation using scanline algorithm

Curves and Surfaces Computer Graphics I Lecture 10

The Traditional Graphics Pipeline

Chapter 4. Chapter 4. Computer Graphics 2006/2007 Chapter 4. Introduction to 3D 1

Computer Graphics Introduction. Taku Komura

SAZ4C COMPUTER GRAPHICS. Unit : 1-5. SAZ4C Computer Graphics

Graphics and Visualization (GV)

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane

Hardware Accelerated Volume Visualization. Leonid I. Dimitrov & Milos Sramek GMI Austrian Academy of Sciences

lecture 18 - ray tracing - environment mapping - refraction

The Viewing Pipeline Coordinate Systems

Computer Graphics 1. Chapter 7 (June 17th, 2010, 2-4pm): Shading and rendering. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2010

Shape modeling Modeling technique Shape representation! 3D Graphics Modeling Techniques

Ray Casting of Trimmed NURBS Surfaces on the GPU

Computer Graphics. - Texturing Methods -

Lets assume each object has a defined colour. Hence our illumination model is looks unrealistic.

C P S C 314 S H A D E R S, O P E N G L, & J S RENDERING PIPELINE. Mikhail Bessmeltsev

Transcription:

International Edition Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL Sixth Edition Edward Angel Dave Shreiner

Interactive Computer Graphics: A Top-Down Approach with Shader-Based OpenGL - PDF - PDF - PDF Table of Contents Cover Title Page Contents Preface CHAPTER 1 GRAPHICS SYSTEMS AND MODELS 1.1 Applications of Computer Graphics 1.1.1 Display of Information 1.1.2 Design 1.1.3 Simulation and Animation 1.1.4 User Interfaces 1.2 A Graphics System 1.2.1 Pixels and the Frame Buffer 1.2.2 The CPU and the GPU 1.2.3 Output Devices 1.2.4 Input Devices 1.2.5 Physical Input Devices 1.2.6 Logical Devices 1.2.7 Input Modes 1.3 Images: Physical and Synthetic 1.3.1 Objects and Viewers 1.3.2 Light and Images 1.3.3 Imaging Models 1.4 Imaging Systems 1.4.1 The Pinhole Camera 1.4.2 The Human Visual System 1.5 The Synthetic-Camera Model 1.6 The Programmers Interface 1.6.1 The Pen-Plotter Model 1.6.2 Three-Dimensional APIs 1.6.3 A Sequence of Images 1.6.4 The ModelingRendering Paradigm 1.7 Graphics Architectures 1.7.1 Display Processors 1.7.2 Pipeline Architectures 1.7.3 The Graphics Pipeline 1.7.4 Vertex Processing 1.7.5 Clipping and Primitive Assembly

1.7.6 Rasterization 1.7.7 Fragment Processing 1.8 Programmable Pipelines 1.9 Performance Characteristics CHAPTER 2 GRAPHICS PROGRAMMING 2.1 The Sierpinski Gasket 2.2 Programming Two-Dimensional Applications 2.3 The OpenGL Application Programming Interface 2.3.1 Graphics Functions 2.3.2 The Graphics Pipeline and State Machines 2.3.3 The OpenGL Interface 2.3.4 Coordinate Systems 2.4 Primitives and Attributes 2.4.1 Polygon Basics 2.4.2 Polygons in OpenGL 2.4.3 Approximating a Sphere 2.4.4 Triangulation 2.4.5 Text 2.4.6 Curved Objects 2.4.7 Attributes 2.5 Color 2.5.1 RGB Color 2.5.2 Indexed Color 2.5.3 Setting of Color Attributes 2.6 Viewing 2.6.1 The Orthographic View 2.6.2 Two-Dimensional Viewing 2.7 Control Functions 2.7.1 Interaction with the Window System 2.7.2 Aspect Ratio and Viewports 2.7.3 The main, display, and init Functions 2.7.4 Program Structure 2.8 The Gasket Program 2.8.1 Rendering the Points 2.8.2 The Vertex Shader 2.8.3 The Fragment Shader 2.8.4 Combining the Parts

2.8.5 The initshader Function 2.9 Polygons and Recursion 2.10 The Three-Dimensional Gasket 2.10.1 Use of Three-Dimensional Points 2.10.2 Use of Polygons in Three Dimensions 2.10.3 Hidden-Surface Removal 2.11 Adding Interaction 2.11.1 Using the Pointing Device 2.11.2 Window Events 2.11.3 Keyboard Events 2.11.4 The Idle Callback 2.11.5 Double Buffering 2.11.6 Window Management 2.12 Menus CHAPTER 3 GEOMETRIC OBJECTS AND TRANSFORMATIONS 3.1 Scalars, Points, and Vectors 3.1.1 Geometric Objects 3.1.2 Coordinate-Free Geometry 3.1.3 The Mathematical View: Vector and Affine Spaces 3.1.4 The Computer Science View 3.1.5 Geometric ADTs 3.1.6 Lines 3.1.7 Affine Sums 3.1.8 Convexity 3.1.9 Dot and Cross Products 3.1.10 Planes 3.2 Three-Dimensional Primitives 3.3 Coordinate Systems and Frames 3.3.1 Representations and N-Tuples 3.3.2 Change of Coordinate Systems 3.3.3 Example Change of Representation 3.3.4 Homogeneous Coordinates 3.3.5 Example Change in Frames 3.3.6 Working with Representations 3.4 Frames in OpenGL 3.5 Matrix and Vector Classes 3.6 Modeling a Colored Cube

3.6.1 Modeling the Faces 3.6.2 Inward- and Outward-Pointing Faces 3.6.3 Data Structures for Object Representation 3.6.4 The Color Cube 3.6.5 Interpolation 3.6.6 Displaying the Cube 3.7 Affine Transformations 3.8 Translation, Rotation, and Scaling 3.8.1 Translation 3.8.2 Rotation 3.8.3 Scaling 3.9 Transformations in Homogeneous Coordinates 3.9.1 Translation 3.9.2 Scaling 3.9.3 Rotation 3.9.4 Shear 3.10 Concatenation of Transformations 3.10.1 Rotation About a Fixed Point 3.10.2 General Rotation 3.10.3 The Instance Transformation 3.10.4 Rotation About an Arbitrary Axis 3.11 Transformation Matrices in OpenGL 3.11.1 Current Transformation Matrices 3.11.2 Rotation, Translation, and Scaling 3.11.3 Rotation About a Fixed Point 3.11.4 Order of Transformations 3.12 Spinning of the Cube 3.12.1 Updating in the Display Callback 3.12.2 Uniform Variables 3.13 Interfaces to Three-Dimensional Applications 3.13.1 Using Areas of the Screen 3.13.2 A Virtual Trackball 3.13.3 Smooth Rotations 3.13.4 Incremental Rotation 3.14 Quaternions 3.14.1 Complex Numbers and Quaternions 3.14.2 Quaternions and Rotation CHAPTER 4 VIEWING

4.1 Classical and Computer Viewing 4.1.1 Classical Viewing 4.1.2 Orthographic Projections 4.1.3 Axonometric Projections 4.1.4 Oblique Projections 4.1.5 Perspective Viewing 4.2 Viewing with a Computer 4.3 Positioning of the Camera 4.3.1 Positioning of the Camera Frame 4.3.2 Two Viewing APIs 4.3.3 The Look-At Function 4.3.4 Other Viewing APIs 4.4 Parallel Projections 4.4.1 Orthogonal Projections 4.4.2 Parallel Viewing with OpenGL 4.4.3 Projection Normalization 4.4.4 Orthogonal-Projection Matrices 4.4.5 Oblique Projections 4.4.6 An Interactive Viewer 4.5 Perspective Projections 4.5.1 Simple Perspective Projections 4.6 Perspective Projections with OpenGL 4.6.1 Perspective Functions 4.7 Perspective-Projection Matrices 4.7.1 Perspective Normalization 4.7.2 OpenGL Perspective Transformations 4.7.3 Perspective Example 4.8 Hidden-Surface Removal 4.8.1 Culling 4.9 Displaying Meshes 4.9.1 Displaying Meshes as a Surface 4.9.2 Polygon Offset 4.9.3 Walking Through a Scene 4.10 Projections and Shadows CHAPTER 5 LIGHTING AND SHADING 5.1 Light and Matter 5.2 Light Sources Table of Contents

5.2.1 Color Sources 5.2.2 Ambient Light 5.2.3 Point Sources 5.2.4 Spotlights 5.2.5 Distant Light Sources 5.3 The Phong Reflection Model 5.3.1 Ambient Reflection 5.3.2 Diffuse Reflection 5.3.3 Specular Reflection 5.3.4 The Modified Phong Model 5.4 Computation of Vectors 5.4.1 Normal Vectors 5.4.2 Angle of Reflection 5.5 Polygonal Shading 5.5.1 Flat Shading 5.5.2 Smooth and Gouraud Shading 5.5.3 Phong Shading 5.6 Approximation of a Sphere by Recursive Subdivision 5.7 Specifying Lighting Parameters 5.7.1 Light Sources 5.7.2 Materials 5.8 Implementing a Lighting Model 5.8.1 Applying the Lighting Model in the Application 5.8.2 Efficiency 5.8.3 Lighting in the Vertex Shader 5.9 Shading of the Sphere Model 5.10 Per-Fragment Lighting 5.10.1 Nonphotorealistic Shading 5.11 Global Illumination CHAPTER 6 FROM VERTICES TO FRAGMENTS 6.1 Basic Implementation Strategies 6.2 Four Major Tasks 6.2.1 Modeling 6.2.2 Geometry Processing 6.2.3 Rasterization 6.2.4 Fragment Processing 6.3 Clipping

6.4 Line-Segment Clipping 6.4.1 Cohen-Sutherland Clipping 6.4.2 Liang-Barsky Clipping 6.5 Polygon Clipping 6.6 Clipping of Other Primitives 6.6.1 Bounding Boxes and Volumes 6.6.2 Curves, Surfaces, and Text 6.6.3 Clipping in the Frame Buffer 6.7 Clipping in Three Dimensions 6.8 Rasterization 6.9 Bresenhams Algorithm 6.10 Polygon Rasterization 6.10.1 InsideOutside Testing 6.10.2 OpenGL and Concave Polygons 6.10.3 Fill and Sort 6.10.4 Flood Fill 6.10.5 Singularities 6.11 Hidden-Surface Removal 6.11.1 Object-Space and Image-Space Approaches 6.11.2 Sorting and Hidden-Surface Removal 6.11.3 Scanline Algorithms 6.11.4 Back-Face Removal 6.11.5 The z-buffer Algorithm 6.11.6 Scan Conversion with the z-buffe 6.11.7 Depth Sort and the Painters Algorithm 6.12 Antialiasing 6.13 Display Considerations 6.13.1 Color Systems 6.13.2 The Color Matrix 6.13.3 Gamma Correction 6.13.4 Dithering and Halftoning CHAPTER 7 DISCRETE TECHNIQUES 7.1 Buffers 7.2 Digital Images 7.3 Writing into Buffers 7.3.1 Writing Modes 7.3.2 Writing with XOR

7.4 Mapping Methods 7.5 Texture Mapping 7.5.1 Two-Dimensional Texture Mapping 7.6 Texture Mapping in OpenGL 7.6.1 Two-Dimensional Texture Mapping 7.6.2 Texture Objects 7.6.3 The Texture Array 7.6.4 Texture Coordinates and Samplers 7.6.5 Texture Sampling 7.6.6 Working with Texture Coordinates 7.6.7 Multitexturing 7.7 Texture Generation 7.8 Environment Maps 7.9 Reflection Map Example 7.10 Bump Mapping 7.10.1 Finding Bump Maps 7.10.2 Bump Map Example 7.11 Compositing Techniques 7.11.1 Opacity and Blending 7.11.2 Image Compositing 7.11.3 Blending and Compositing in OpenGL 7.11.4 Antialiasing Revisited 7.11.5 Back-to-Front and Front-to-Back Rendering 7.11.6 Scene Antialiasing and Multisampling 7.11.7 Image Processing 7.11.8 Other Multipass Methods 7.12 Sampling and Aliasing 7.12.1 Sampling Theory 7.12.2 Reconstruction 7.12.3 Quantization CHAPTER 8 MODELING AND HIERARCHY 8.1 Symbols and Instances 8.2 Hierarchical Models 8.3 A Robot Arm 8.4 Trees and Traversal 8.4.1 A Stack-Based Traversal 8.5 Use of Tree Data Structures

8.6 Animation 8.7 Graphical Objects 8.7.1 Methods, Attributes, and Messages 8.7.2 A Cube Object 8.7.3 Implementing the Cube Object 8.7.4 Objects and Hierarchy 8.7.5 Geometric Objects 8.8 Scene Graphs 8.9 Open Scene Graph 8.10 Graphics and the Internet 8.10.1 Hypermedia and HTML 8.10.2 Java and Applets 8.10.3 Interactive Graphics and the Web 8.10.4 WebGL 8.11 Other Tree Structures 8.11.1 CSG Trees 8.11.2 BSP Trees 8.11.3 Quadtrees and Octrees CHAPTER 9 PROCEDURAL METHODS 9.1 Algorithmic Models 9.2 Physically Based Models and Particle Systems 9.3 Newtonian Particles 9.3.1 Independent Particles 9.3.2 Spring Forces 9.3.3 Attractive and Repulsive Forces 9.4 Solving Particle Systems 9.5 Constraints 9.5.1 Collisions 9.5.2 Soft Constraints 9.6 A Simple Particle System 9.6.1 Displaying the Particles 9.6.2 Updating Particle Positions 9.6.3 Collisions 9.6.4 Forces 9.6.5 Flocking 9.7 Language-Based Models 9.8 Recursive Methods and Fractals

9.8.1 Rulers and Length 9.8.2 Fractal Dimension 9.8.3 Midpoint Division and Brownian Motion 9.8.4 Fractal Mountains 9.8.5 The Mandelbrot Set 9.9 Procedural Noise CHAPTER 10 CURVES AND SURFACES 10.1 Representation of Curves and Surfaces 10.1.1 Explicit Representation 10.1.2 Implicit Representations 10.1.3 Parametric Form 10.1.4 Parametric Polynomial Curves 10.1.5 Parametric Polynomial Surfaces 10.2 Design Criteria 10.3 Parametric Cubic Polynomial Curves 10.4 Interpolation 10.4.1 Blending Functions 10.4.2 The Cubic Interpolating Patch 10.5 Hermite Curves and Surfaces 10.5.1 The Hermite Form 10.5.2 Geometric and Parametric Continuity 10.6 Bezier Curves and Surfaces 10.6.1 Bezier Curves 10.6.2 Bezier Surface Patches 10.7 Cubic B-Splines 10.7.1 The Cubic B-Spline Curve 10.7.2 B-Splines and Basis 10.7.3 Spline Surfaces 10.8 General B-Splines 10.8.1 Recursively Defined B-Splines 10.8.2 Uniform Splines 10.8.3 Nonuniform B-Splines 10.8.4 NURBS 10.8.5 Catmull-Rom Splines 10.9 Rendering Curves and Surfaces 10.9.1 Polynomial Evaluation Methods 10.9.2 Recursive Subdivision of Be zier Polynomials

10.9.3 Rendering Other Polynomial Curves by Subdivision 10.9.4 Subdivision of Be zier Surfaces 10.10 The Utah Teapot 10.11 Algebraic Surfaces 10.11.1 Quadrics 10.11.2 Rendering of Surfaces by Ray Casting 10.12 Subdivision Curves and Surfaces 10.12.1 Mesh Subdivision 10.13 Mesh Generation from Data 10.13.1 Height Fields Revisited 10.13.2 Delaunay Triangulation 10.13.3 Point Clouds CHAPTER 11 ADVANCED RENDERING 11.1 Going Beyond Pipeline Rendering 11.2 Ray Tracing 11.3 Building a Simple Ray Tracer 11.3.1 Recursive Ray Tracing 11.3.2 Calculating Intersections 11.3.3 Ray-Tracing Variations 11.4 The Rendering Equation 11.5 Radiosity 11.5.1 The Radiosity Equation 11.5.2 Solving the Radiosity Equation 11.5.3 Computing Form Factors 11.5.4 Carrying Out Radiosity 11.6 RenderMan 11.7 Parallel Rendering 11.7.1 Sort-Middle Rendering 11.7.2 Sort-Last Rendering 11.7.3 Sort-First Rendering 11.8 Volume Rendering 11.8.1 Volumetric Data Sets 11.8.2 Visualization of Implicit Functions 11.9 Isosurfaces and Marching Cubes 11.10 Mesh Simplification 11.11 Direct Volume Rendering

11.11.1 Assignment of Color and Opacity 11.11.2 Splatting 11.11.3 Volume Ray Tracing 11.11.4 Texture Mapping of Volumes 11.12 Image-Based Rendering 11.12.1 A Simple Example APPENDIX A SAMPLE PROGRAMS A.1 Shader Initialization Function A.1.1 Application Code A.2 Sierpinski Gasket Program A.2.1 Application Code A.2.2 Vertex Shader A.2.3 Fragment Shader A.3 Recursive Generation of Sierpinski Gasket A.3.1 Application Code A.3.2 Vertex Shader A.3.3 Fragment Shader A.4 Rotating Cube with Rotation in Shader A.4.1 Application Code A.4.2 Vertex Shader A.4.3 Fragment Shader A.5 Perspective Projection A.5.1 Application Code A.5.2 Vertex Shader A.5.3 Fragment Shader A.6 Rotating Shaded Cube A.6.1 Application Code A.6.2 Vertex Shader A.6.3 Fragment Shader A.7 Per-Fragment Lighting of Sphere Model A.7.1 Application Code A.7.2 Vertex Shader A.7.3 Fragment Shader A.8 Rotating Cube with Texture A.8.1 Application Code A.8.2 Vertex Shader A.8.3 Fragment Shader

A.9 Figure with Tree Traversal A.9.1 Application Code A.9.2 Vertex Shader A.9.3 Fragment Shader A.10 Teapot Renderer A.10.1 Application Code A.10.2 Vertex Shader A.10.3 Fragment Shader APPENDIX B SPACES B.1 Scalars B.2 Vector Spaces B.3 Affine Spaces B.4 Euclidean Spaces B.5 Projections B.6 Gram-Schmidt Orthogonalization APPENDIX C MATRICES C.1 Definitions C.2 Matrix Operations C.3 Row and Column Matrices C.4 Rank C.5 Change of Representation C.6 The Cross Product C.7 Eigenvalues and Eigenvectors C.8 Vector and Matrix Classes APPENDIX D SYNOPSIS OF OPENGL FUNCTIONS D.1 Initialization and Window Functions D.2 Vertex Buffer Objects D.3 Interaction D.4 Setting Attributes and Enabling Features D.5 Texture and Image Functions D.6 State and Buffer Manipulation D.7 Query Functions D.8 GLSL Functions References

OpenGL Function Index Subject Index A B C D E F G H I J K L M N O P Q R S T U V W X Y Z