 |
» |
|
|
 |
|  |  |
This section provides information about HP's implementation
of the OpenGL product as well as information about the standard
OpenGL product. HP's Implementation
of OpenGL |  |
Topics covered in this section are: HP's implementation of the OpenGL
libraries Supported graphics devices Visual support for other graphics devices Buffer sharing between multiple processes
HP's Implementation of the OpenGL Libraries HP's implementation of OpenGL provides the following libraries: libGL.sl:
OpenGL shared library libGLU.sl:
OpenGL utilities library
The OpenGL product does not support archived libraries. Supported Graphics
Devices This section covers the graphics devices and visuals that
are supported by the OpenGL product. Here is a list to the graphics
devices that are supported: In this section, each visual table will have a graphics device
associated with it. For information on visual support for graphics
devices not in the above list, read the subsequent section "Visual
Support for Other Graphics Devices." Table 2-1 Visual
Table for HP Visualize-FX2 X Visual
Information | OpenGL
GLX Information |
|---|
Class | Depth | Color Map Size | Bfr Size | Ovrly=1 or Img =0 | RGBA =1 or
Idx =0 | Dbl Bfr | # Aux Bfrs | Color
Buffer | Z | St en cil | Accum.
Buffer |
|---|
R | G | B | A | R | G | B | A |
|---|
PseudoColor | 8 | 255 | 8 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | PseudoColor | 8 | 256 | 8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | PseudoColor | 8 | 256 | 8 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | PseudoColor | 12[1] | 4096 | 12 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | PseudoColor | 12[1] | 4096 | 12 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | TrueColor | 12 | 16 | 12 | 0 | 1 | 1 | 0 | 4 | 4 | 4 | 0 | 24 | 4 | 16 | 16 | 16 | 0 | TrueColor | 24 | 256 | 24 | 0 | 1 | 0 | 0 | 8 | 8 | 8 | 0 | 24 | 4 | 16 | 16 | 16 | 0 | The
12-bit PseudoColor visuals are not present by default. They can
be enabled by invoking the "X Server Configuration" component under
SAM, or by manually adding the enable 12-bit PseudoColor visual
option to your /etc/X11/X*Screens
file as documented in the Graphics Administration Guide.
|
Table 2-2 Visual
Table for HP Visualize-FX4 X Visual
Information | OpenGL
GLX Information |
|---|
Class | Dpth | Color Map Size | Bfr Size | Ovrly=1 or Img=0 | RGBA=1 or Idx=0 | Dbl Bfr | # Aux Bfrs | Color
Buffer | Z | St en cil | Accum.
Buffer |
|---|
R | G | B | A | R | G | B | A |
|---|
PseudoColor | 8 | 255 | 8 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | PseudoColor | 8 | 256 | 8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | PseudoColor | 8 | 256 | 8 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | PseudoColor | 12[1] | 4096 | 12 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | PseudoColor | 12[1] | 4096 | 12 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | TrueColor | 24 | 256 | 24 | 0 | 1 | 0 | 0 | 8 | 8 | 8 | 0 | 24 | 4 | 16 | 16 | 16 | 0 | TrueColor | 24 | 256 | 24 | 0 | 1 | 1 | 0 | 8 | 8 | 8 | 0 | 24 | 4 | 16 | 16 | 16 | 0 | The
12-bit PseudoColor visuals are not present by default. They can
be enabled by invoking the "X Server Configuration" component under
SAM, or by manually adding the enable 12-bit PseudoColor visual
option to your /etc/X11/X*Screens
file as documented in the Graphics Administration Guide.
|
Table 2-3 Visual
Table for HP Visualize-FX6 X Visual
Information | OpenGL
GLX Information |
|---|
Class | Dpth | Color Map Size | Bfr Size | Ovrly=1 or Img=0 | RGBA=1 or Idx=0 | Dbl Bfr | # Aux Bfrs | Color
Buffer | Z | St en cil | Accum.
Buffer |
|---|
R | G | B | A | R | G | B | A |
|---|
PseudoColor | 8 | 255 | 8 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | PseudoColor | 8 | 256 | 8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | PseudoColor | 8 | 256 | 8 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | PseudoColor | 12[1] | 4096 | 12 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | PseudoColor | 12[1] | 4096 | 12 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | TrueColor | 24 | 256 | 24 | 0 | 1 | 0 | 0 | 8 | 8 | 8 | 8 | 24 | 4 | 16 | 16 | 16 | 16 | TrueColor | 24 | 256 | 24 | 0 | 1 | 1 | 0 | 8 | 8 | 8 | 8 | 24 | 4 | 16 | 16 | 16 | 16 | TrueColor | 24 | 256 | 24 | 0 | 1 | 0 | 0 | 8 | 8 | 8 | 8 | 24 | 4 | 16 | 16 | 16 | 0 | TrueColor | 24 | 256 | 24 | 0 | 1 | 1 | 0 | 8 | 8 | 8 | 8 | 24 | 4 | 16 | 16 | 16 | 0 | The
12-bit PseudoColor visuals are not present by default. They can
be enabled by invoking the "X Server Configuration" component under
SAM, or by manually adding the enable 12-bit PseudoColor visual
option to your /etc/X11/X*Screens
file as documented in the Graphics Administration Guide.
|
Stereo Visual Support for Visualize-FX4
and Visualize-FX6When a monitor is configured in a stereo capable mode, HP
Visualize-FX4 and
HP Visualize-FX6 will
have the following additional stereo visuals available. For more
information on OpenGL stereo, read the section "Running HP's Implementation
of the OpenGL Stereo Application" found in Chapter 3 of this document. Table 2-4 Stereo
Visual Support for HP Visualize-FX 4
and HP Visualize-FX 6 X Visual
Information | OpenGL
GLX Information |
|---|
Class | Depth | Color Map Size | Bfr Size | Ovrly=1 or Img=0 | RGBA=1 or Idx=0 | Dbl Bfr | St er eo | # Aux Bfrs | Color
Buffer | Z | St en cil | Accum.
Buffer |
|---|
R | G | B | A | R | G | B | A |
|---|
PseudoColor | 8 | 256 | 8 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | PseudoColor | 8 | 256 | 8 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | PseudoColor | 12 | 4096 | 12 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | PseudoColor | 12 | 4096 | 12 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 24 | 7 | 0 | 0 | 0 | 0 | TrueColor | 12 | 16 | 12 | 0 | 1 | 1 | 1 | 0 | 4 | 4 | 4 | 0 | 24 | 4 | 16 | 16 | 16 | 0 | TrueColor | 12 | 16 | 12 | 0 | 1 | 0 | 1 | 0 | 4 | 4 | 4 | [1] | 24 | 4 | 16 | 16 | 16 | [1] | Alpha
planes are only available on the HP Visualize-FX
6.
|
Visual Support for Other Graphics Devices The OpenGL product can be used with the Visualize-FX
family of devices as well as the Visualize-EG
device using the Virtual Memory Driver (VMD) in Virtual GLX mode
(VGL). In addition, VMD allows you to use many X11 drawables (local
or remote) as "virtual devices" for three-dimensional graphics with
OpenGL. This includes rendering to X terminals and other non-GLX
extended X servers. Table 2-5 Visuals
Table for VMD X Visual
Information | OpenGL
GLX Information |
|---|
Class | Depth | Color Map Size | Bfr Size | Ovrly=1 or Img=0 | RGBA=1 or Idx=0 | Dbl Bfr | # Aux Bfrs | Color
Buffer | Z3 | St enc il3 | Accum.
Buffer |
|---|
R | G | B | A | R | G | B | A |
|---|
PseudoColor | 4 | 16 | 4 | 0 | 0 | [1] | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | PseudoColor | 8 | 256 | 8 | 0 | 0 | [1] | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | PseudoColor | 8 | 255 | 8 | 1 | 0 | [1] | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | TrueColor | 8 | 256 | 8 | 0 | 1 | [1] | 0 | 3 | 3 | 2 | 0 | 24 | 4 | 16 | 16 | 16 | 0 | PseudoColor | 12 | 4096 | 12 | 0 | 0 | [1] | 0 | 0 | 0 | 0 | 0 | 24 | 4 | 0 | 0 | 0 | 0 | TrueColor | 12 | 16 | 12 | 0 | 1 | [1] | 0 | 4 | 4 | 4 | [2] | 24 | 4 | 16 | 16 | 16 | 16 | DirectColor | 12 | 16 | 12 | 0 | 1 | [1] | 0 | 4 | 4 | 4 | [2] | 24 | 4 | 16 | 16 | 16 | 16 | TrueColor | 24 | 256 | 24 | 0 | 1 | [1] | 0 | 8 | 8 | 8 | [2] | 24 | 4 | 16 | 16 | 16 | 16 | DirectColor | 24 | 256 | 24 | 0 | 1 | [1] | 0 | 8 | 8 | 8 | [2] | 24 | 4 | 16 | 16 | 16 | 16 | Double
buffering is set to True (1) if the X visual supports the X Double
Buffering Extension (DBE). Alpha will only work correctly on 12- and 24-bit
TrueColor and DirectColor visuals when the X server does not use
the high order nybble/byte in the X visual. Also, note that when
alpha is present, Buffer Size will be 16
for the 12-bit visuals and 32 for the 24-bit visuals. Depth and stencil buffers are only allocated for
image plane visuals.
|
Buffer Sharing between Multiple Processes In the OpenGL implementation, all drawable buffers that are
allocated in virtual memory are not sharable among multiple processes.
As an example, on a HP Visualize-FX4
configuration, the accumulation buffer for a drawable resides in
virtual memory (VM) and therefore, each OpenGL process rendering
to the same drawable through a direct rendering context, will have
its own separate copy of the accumulation buffer. For more information
on hardware and software buffer configurations for OpenGL devices,
see Tables 1-1 through 1-5 in this chapter. True buffer sharing between multiple processes can be accomplished
by utilizing indirect rendering contexts. In this case, rendering
on behalf of all GLX clients is performed by the X server OpenGL
daemon process, and there is only one set of virtual memory buffers
per drawable. SIGCHLD and the GRM
Daemon The Graphics Resource Manager daemon (grmd)
is started when the X11 server is started. In normal operation,
an OpenGL application will not start the daemon, and as a result
grmd will not
be affected by the SIGCHLD
manipulation that occurs as part of that start-up. However, if grmd
dies for some reason, the graphics libraries will restart grmd
whenever they need shared memory. An example of where this can occur
is during calls to glXCreateContext
or glXMakeCurrent. The Standard OpenGL
Product |  |
This section covers the following topics: The OpenGL Utilities Library (GLU) Input and Output Routines The OpenGL Extensions for the X Window System (GLX)
The OpenGL Utilities
Library (GLU) The OpenGL Utilities Library (GLU) provides a useful set of
drawing routines that perform such tasks as: Generating texture coordinates Providing descriptions of curves and surfaces (NURBS)
For a detailed description of these routines, read the OpenGL
Reference Manual. Input and Output RoutinesOpenGL was designed to be independent of operating systems
and window systems, therefore, it does not have commands that perform
such tasks as reading events from a keyboard or mouse, or opening
windows. To obtain these capabilities, you will need to use X Windows
routines. The OpenGL Extensions for the X Window System (GLX)The OpenGL Extensions to the X Window System (GLX) provide
routines for: Managing the OpenGL rendering context
For a detailed description of these routines, read the OpenGL
Reference Manual.
|