3D Graphics - OpenGL

Rendering

URL Description
3D Engine Snippets It lists useful snippets of code I've developed while learning OpenGL programming, as well as definitions of words, explanation of terms and references to sites and books where I found more info.
Alternate ways of drawing primitives in Java

WE HAVE BEEN EXCLUSIVELY USING glBegin/glEnd for drawing primitives, but that is just one of the approaches to drawing that OpenGL makes available. In fact, the glBegin/glEnd paradigm is considered to be a little old-fashioned and it has even been deprecated in the latest versions of OpenGL. This section will discuss alternative approaches.

The alternative approaches are more efficient, because they make many fewer calls to OpenGL commands and because they offer the possibility of storing data in the graphics card's memory instead of retransmitting the data every time it is used. Unfortunately, the alternative drawing methods are more complicated than glBegin/glEnd. This is especially true in Java (as opposed to C), because the implementation of arrays in Java makes Java arrays unsuitable for use in certain OpenGL methods that have array parameters in C. Jogl's solution to the array problem is to use "nio buffers" instead of arrays in those cases were Java arrays are not suitable. The first subsection, below, discusses nio buffers.

Andrew Glassner

Dr. Andrew Glassner is a writer-director, and a consultant in story structure, interactive fiction, and computer graphics. He started working in 3D computer graphics in 1978, and has carried out research at the NYIT Computer Graphics Lab, Case Western Reserve University, the IBM TJ Watson Research Lab, the Delft University of Technology, Bell Communications Research, Xerox PARC, and Microsoft Research. The New York Times wrote, "Andrew Glassner [is one] of the most respected talents in the world of computer graphics research." (12/11/95).

Graphics and Rendering This is an overview of the process of rendering. Do not worry if you do not understand everything right away; every step will be covered in lavish detail in later tutorials.
OpenGL Primitives Learn to draw OpenGL primitives (points, lines, triangles, polygons, quads, fans and strips) using glBegin and glVertex commands
Render to offscreen buffer in OpenGL
The Little Grasshopper
  • Quad Meshes
  • Organic Animation
  • Ear Clipping
  • Knot Gallery
  • ModernOpengl
  • Fluid Sim
  • Sympy Surfaces
  • Barrel Distortion
Tutorial: OpenGL 3.1 First Triangle
glGetFloatv