|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
The basic interface to OpenGL, providing access to core functionality up through the OpenGL 2.0 specification as well as all vendor extensions.
While the APIs for vendor extensions are unconditionally
exposed, the underlying functions may not be present. The method
isFunctionAvailable(java.lang.String) should be used to query the
availability of any non-core function before it is used for the
first time; for example,
gl.isFunctionAvailable("glProgramStringARB"). On
certain platforms (Windows in particular), the most "core"
functionality is only OpenGL 1.1, so in theory any routines first
exposed in OpenGL 1.2, 1.3, and 1.4, 1.5, or 2.0 as well as vendor
extensions should all be queried. Calling an unavailable function
will cause a GLException to be raised.
isExtensionAvailable(java.lang.String) may also be used to determine whether
a specific extension is available before calling the routines or
using the functionality it exposes: for example,
gl.isExtensionAvailable("GL_ARB_vertex_program");.
However, in this case it is up to the end user to know which
routines or functionality are associated with which OpenGL
extensions.
Exceptions to the window system extension naming rules:
wglAllocateMemoryNV /
glXAllocateMemoryNV and associated routines. glAllocateMemoryNV(int, float, float, float) has been provided for window system-independent
access to VAR. isFunctionAvailable(java.lang.String) will translate an argument
of "glAllocateMemoryNV" or "glFreeMemoryNV" into the appropriate
window system-specific name.
isExtensionAvailable(java.lang.String) with an argument of
"GL_ARB_pbuffer" or "GL_ARB_pixel_format".