Next: 3.6 Display Lists Up: 5 Comparing OpenGL to Previous: 5.2 Programming Interfaces

5.3 Rendering Functionality

PEX and OpenGL both support basic 3D rendering functionality. Both allow 3D and 2D lines and polygons to be rendered using standard modeling and viewing methods. PEX (depending on the implementation) and OpenGL also support picking, lighting, depth cueing, and hidden line and surface removal.

There are a number of sophisticated rendering features supported by OpenGL that PEX completely lacks. Alpha blending, texture and environment mapping, antialiasing (though some PEX implementations supply it as a nonstandard extension), accumulation buffer methods, and stencil buffering are all missing from PEX.

PEX does support features not available in OpenGL. PEX has extensive text support for stroke fonts which are fully transformable in 3D. B-Spline surfaces and curves are supported directly by PEX while OpenGL supports NURBS functionality via routines which are part of the GLU library. PEX can support cell arrays but the functionality is seldom implemented. Markers and quadrilateral meshes are supported by PEX as a rendering primitive; neither are supported as primitives by OpenGL. PEX supports self-intersecting contours and polygon lists with shared geometry, while OpenGL does not.

Double buffering and stereo support are built into OpenGL (though not all implementations will support double buffered or stereo visuals) while PEX relies on proprietary support or not yet nonstandardized X extensions for double buffering and stereo.


mjk@asd.sgi.com
Wed Oct 19 18:06:42 PDT 1994