A package containing the Khronos OpenGL(R) ES interfaces. Although this specification incorporates portions of the OpenGL ES documentation, the documentation available at the Khronos Web site should always be considered definitive.

An implementation of this specification must utilize an underlying OpenGL ES engine that has been certified as conformant. The TCK for this specification will not address the conformance of the underlying engine.

The object of an implementation of this specification is to pass the OpenGL ES command stream generated by the application to the underlying OpenGL ES engine without any semantic alterations. An implementation may rewrite the command stream provided that the resulting command stream is guaranteed by the rules of OpenGL ES to produce identical results. For example, a duplicate state setting may be removed from the command stream.

Because some implementations may need to reformat the image data generated by the OpenGL ES engine in order to convert it to a format that matches those used elsewhere in the Java platform implementation, color values are allowed to be modified as long as no pixel is observed to differ from the value that would be produced by an equivalent native OpenGL ES program by more than +- 16.

This specification defines exception behavior that is intended to enhance platform security by preventing invalid memory accesses from occuring in the underlying OpenGL ES implementation. The TCK for this specification will test for proper generation of exceptions.