Have More Fun with Graphics
OpenGL standard delivers 3-D graphics for Windows NT and 95.
-- by Lou Grinzo
When Microsoft announced Windows NT 3.5 would support OpenGL back in 1994, many PC users had no idea why they should care. At that time, OpenGL was new to the desktop-computing mainstream, and even many power users knew nothing about it.
Far from being mysterious, OpenGL is an industry-standard programming interface that makes it easier for applications to draw 3-D graphics. As the installed base of OpenGL-enabled systems grows, you'll see more workstation and X Windows programs ported to the Intel platform. If you ever have use for such specialized programs, you'll be able to run them on your less-expensive PC hardware.
Where's It Going?
Because OpenGL so greatly simplifies the creation of photo-realistic 3-D graphics, many business graphics can graduate from single-shade bar and pie charts to much more lifelike pictures that include shadows, subtle shading and lighting effects, and even animation. Many programs that make little or no use of advanced graphics will likely gain such features in new releases.
Where'd It Come From?
Originally developed by Silicon Graphics as GL, OpenGL was used on high-powered workstations for graphics-intensive applications such as CAD/CAM. Since then it's been standardized and renamed, and it now includes support for shading, mapping textures onto surfaces and defining lighting conditions.
If you're running Windows NT 3.5 or later you've probably already used OpenGL in the form of one of the operating system's standard screen savers, such as 3D Pipes. Even though screen savers don't do any real work, they provide a revealing glimpse into what OpenGL makes possible. For example, under NT 4.0, 3D Pipes fills the screen with random plumbing at a respectable clip, even when drawing a texture on the pipes. And it manages this on a 75MHz Pentium with an entry-level ATI Mach 64 video board-humble hardware by today's standards.
Essentially, OpenGL provides a 3-D abstraction, which lets your program pretend your computer screen is really three-dimensional. Graphics device interface (GDI), the native Windows graphics API, provides only 2-D operations, such as drawing points, lines, rectangles and circles. OpenGL extends that view to a third dimension.
For example, to draw a realistic-looking cube, a program that uses only GDI support would have to calculate where on the screen each corner of the cube will fall, taking into account various criteria: perspective; the cube's size, orientation and location; the distance between the imagined viewer and the cube; and lighting effects. Then it would use GDI's 2-D facilities to draw lines and shade areas of the screen. If everything's just right, you'll get a perfectly reasonable picture of a cube, but your program (and you) will have worked hard to make it happen.
By contrast, OpenGL allows a program to forget about the 2-D reality of your screen, so that it works exclusively in 3-D coordinates. Then, OpenGL and Windows do the rest.
Where Is It?
OpenGL 1.1 is available for Windows 95 as part of the OEM Service Release 2 package that's already been delivered to vendors and programmers. You can also download the approximately 500KB OPENGL95.EXE from Microsoft's Web site for free and install the support yourself. This version is also included with NT 4.0 and has several significant enhancements that applications can use to improve their graphics support:
-- Programs can now batch certain graphics tasks, improving performance significantly. While this is a common technique, it requires a partial program rewrite, so you won't automatically get a performance boost from this feature by upgrading to OpenGL 1.1.
-- Overall performance tuning results in an improvement in software image rendering of two- to fourfold, according to Microsoft.
-- It supports the storing of OpenGL commands and data in extended metafiles. This allows NT 4.0 to print OpenGL graphics on a print server at high resolution.
-- It offers a new, simpler driver interface for accelerated graphics boards. NT 4.0 includes a mini-client driver for the Matrox Millenium board; Microsoft says a similar driver for Windows 95 is in the offing.
Programs that already heavily use 3-D graphics will benefit much more slowly. These programs conquer their 3-D graphics problems without OpenGL's help, and it would take a huge amount of work to build in the capability, even assuming it provided all the needed features.
When Only 'Too Fast' Is Fast Enough
Windows Magazine, May 1997, page 192.
[ Go to Cover Story Online Front Page ]
[ Go to May 1997 Table of Contents ]