Introducing OpenGL

OpenGL1 was developed by Silicon Graphics in 1992. It provides a unified interface for programmers to take advantage of hardware from any manufacturer. At its core, OpenGL implements familiar concepts such as viewports and lighting and tries to hide most of the hardware layer from the developer.

Because it was designed for workstations, OpenGL is too large to fit on a mobile device. So, Android implements a subset of OpenGL called OpenGL for Embedded Systems (OpenGL ES).2 This standard was cre-

1. http://www.opengl.org

2. http://www.khronos.org/opengles

OpenGL has proven to be very successful, but it almost wasn't. In 1995, Microsoft introduced a competitor called Direct3D. Owing to Microsoft's dominant market position and significant R&D investments, for a while it looked like Direct3D was going to take over as a de facto industry standard for gaming. However, one man, John Carmack, cofounder of id Software, refused to comply His wildly popular Doom and Quake games almost single-handedly forced hardware manufacturers to keep their OpenGL device drivers up-to-date on the PC. Today's Linux, Mac OS X, and mobile device users can thank John and id Software for helping to keep the OpenGL standard relevant.

ated by the Khronos Group, an industry consortium of companies such as Intel, AMD, Nvidia, Nokia, Samsung, and Sony. The same library (with minor differences) is now available on major mobile platforms including Android, Symbian, and iPhone.

Every language has its own language bindings for OpenGL ES, and Java is no exception. Java's language binding was defined by Java Specification Request (JSR) 239.3 Android implements this standard as closely as possible, so you can refer to a variety of books and documentation on JSR 239 and OpenGL ES for a full description of all its classes and methods.

Now let's take a look at how to create a simple OpenGL program in Android.

0 0

Post a comment