Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
Starbase Technical Addendum for the July, 1997 Workstation ACE for 10.20 HP-UX: HP 9000 Workstations and Servers > Chapter 4 The HP Visualize-FX Family of Devices

Device Descriptions

» 

Technical documentation

Complete book in PDF
» Feedback
Content starts here

 » Table of Contents

 » Index

The information contained in this section is true for all HP Visualize-FX devices. See the sections "HP Visualize-FX2 Device Description" and "HP Visualize-FX4 and HP Visualize-FX6 Device Descriptions" for device-specific information.

Each graphics device in the HP Visualize-FX family has four hardware color maps in the image planes and two hardware color maps in the overlay planes. They support HP Color Recovery in all depth 8 image visuals, as explained in the section "HP Color Recovery Technology" in this chapter.

You can render to the image planes in three ways:

  • 8-bit color (CMAP_NORMAL, CMAP_MONOTONIC, CMAP_FULL) on all HP Visualize-FX devices (HP Visualize-FX2, HP Visualize-FX4, and HP Visualize-FX6)

  • 12-bit color (CMAP_FULL) on HP Visualize-FX2 only

  • 24-bit color (CMAP_FULL) on all HP Visualize-FX devices (24-plane single-buffered on HP Visualize-FX2 and 24/24 double-buffered on HP Visualize-FX4 and HP Visualize-FX6)

The rendering mode is selected on a per-window basis. The mode selected is a function of the depth of the window created and double-buffer mode.

In 8-bit mode, each pixel is used as an index into a 256-entry color map. Each entry in the color map provides eight bits per color for each of the red, green, and blue components, providing a color palette of over 16 million colors. Double-buffering is achieved by switching between two banks of 8-bit indexes. You can perform 3:3:2 direct color emulation in this mode.

In 12-bit mode, each pixel is represented by four bits each for red, green, and blue.

In 24-bit mode, a pixel is represented by eight bits each for red, green, and blue.

There are four hardware color maps available for use with the image planes. All four color maps are shared by all graphics processes. The information in this chapter provides more specific details on using these color maps.

In addition to the four hardware color maps in image planes, there are two hardware color maps for the overlay planes. One of the hardware color maps has the default X11 color map permanently installed in it. This is done to avoid technicolor in X11 and HP CDE windows and backgrounds.

The X server works only in combined mode. For information on supported X server modes, read the section "Supported X Server Modes" in the Graphics Administration Guide.

The HP Visualize-FX family's device driver dithers all vectors, when dithering is enabled. This is true even when Color Recovery is enabled.

HP Visualize-FX2 Device Description

The HP Visualize-FX2 frame buffer includes 24 image planes and 8 overlay planes. The image-plane visuals that are supported by the HP Visualize-FX2 are 8/8 double-buffered, 8-plane single-buffered, 12/12 double-buffered, 12-plane single-buffered, and 24-plane single-buffered. Note that Starbase does not support the following visuals on any device:

  • depth 4 PseudoColor visual, single- or double-buffered

  • depth 12 PseudoColor visual

The screen resolution is 1280x1024 pixels. There is no offscreen memory in the frame buffer.

HP Visualize-FX4 and HP Visualize-FX6 Device Descriptions

From an application developer's or user's point of view, the only difference between the HP Visualize-FX4 and the HP Visualize-FX6 is that the HP Visualize-FX6 has higher performance.

The HP Visualize-FX4 and HP Visualize-FX6 frame buffers include 48 image planes and 8 overlay planes. Visuals supported by the HP Visualize-FX4 and HP Visualize-FX6 are 8/8 double-buffered, 8-plane single-buffered, 24/24 double-buffered, and 24-plane single-buffered. Visuals that are not supported by the HP Visualize-FX4 and HP Visualize-FX6 are 12/12 double-buffered, 12-plane single-buffered, and 48-plane single-buffered. Note that Starbase does not support the following visuals on any device:

  • depth 4 PseudoColor, single- or double-buffered

  • depth 12 PseudoColor visual

The screen resolution is 1280x1024 pixels. There is no offscreen memory in the frame buffer.

Performance Information

The following performance information is specific to the HP Visualize-FX family of graphics devices. See the Graphics Administration Guide for device-general performance information. In cases where this performance information conflicts with the device-general information in the Graphics Administration Guide, this device-specific information should be considered correct for HP Visualize-FX devices.

  • Performance is fastest for unobscured windows, or windows obscured by overlay windows only. There is a slight performance degradation for obscured windows.

  • The number of vertices in a polygon does not cause HP Visualize-FX devices to leave the performance-optimized path.

  • Z-buffering enabled or disabled does not impact performance on HP Visualize-FX devices.

Geometry Accelerator

Each HP Visualize-FX device includes, by default, at least one geometry accelerator to provide high performance 3D solids modeling and high performance 3D wireframe with anti-aliasing. The HP Visualize-FX geometry accelerators have a dedicated 24-bit Z-buffer. The primary use of the HP Visualize-FX geometry accelerators is for 3D solids modeling, including drawing Starbase polygons, polyhedrons, rectangles, triangle strips, quadrilateral meshes, spline surfaces, geometry transform, and lighting and shading of primitives. The geometry accelerators have capabilities for both surface rendering and volumetric rendering.

Note that the geometry accelerators are not used for rendering in the overlay planes.

The following lists provide information to help you maximize your application performance. The first list describes operations that yield the best performance on the HP Visualize-FX devices:

  • Isotropic modeling transformations

  • Lighting, with no more than 8 lights of any type

  • View clipping

  • Perspective and orthographic (parallel) transformations

  • Depth cueing

  • 3- and 4-sided filled primitives, with or without RGB, alpha, and normal data per vertex

  • Triangle strips, with or without RGB, alpha, and normal data per vertex

  • 2D and 3D polylines

  • Wide lines

The following features use the HP Visualize-FX geometry accelerators, but yield somewhat lower performance than the base features listed above.

  • Non-convex polygons with more than 4 vertices

  • Polyhedrons with move/draw flags

  • Facet normal lighting

  • Facet color

The following features bypass the HP Visualize-FX geometry accelerators and use PowerShade instead:

  • Self-intersecting polygons

  • Model clipping/capping

  • Deformation

  • Backface distinguishing (but not back-face culling)

  • Starbase INT_OUTLINE interior style

  • Circles, ellipses, arcs

  • Picking

  • move3d()/draw3d()

  • Polymarkers

  • Rectangles

  • Text

Note that the geometry accelerator directly handles polygons with 3 or 4 vertices only; more complicated polygons are decomposed into triangles. Convex polygons will be decomposed most easily. Non-convex polygons set will be decomposed less easily. Polyhedrons with move/draw flags will be decomposed, but with a significant penalty in execution time. Self-intersecting polygons can not be decomposed by the geometry accelerator. Instead, they are lit, shaded, and transformed by PowerShade, with only the final rendering steps performed by the HP Visualize-FX scan conversion hardware. Nonplanar polygons or polygons with greatly differing colors or normals at the vertices will vary more than planar polygons or polygons with more homogeneous vertex data. For example, a quadrilateral with vertices that are slightly different shades of green is decomposed more easily than the same quadrilateral with one green, one blue, one red, and one black vertex.

Also, note that compound primitives (triangle strips, quadrilateral meshes, and polyhedrons) will perform better than the equivalent multiple discrete polygon calls, since the shared library call overhead is less.

For more information about specific primitives and their relative speeds, see the Graphics Administration Guide.

Texture Mapping Accelerator

An optional accelerator for texture mapped primitives may be purchased for use with the HP Visualize-FX4 and HP Visualize-FX6 hardware. From an application developer's or user's point of view, the only difference between these texture mapping accelerators is that HP Visualize-FX6 has better texture mapping performance than HP Visualize-FX4. HP Visualize-FX2 does not support a texture mapping accelerator. Use the graphinfo program to determine whether your system has this optional accelerator. The line:

texture accelerator:        yes

will be present if and only if the texture accelerator hardware is installed. If the texture accelerator hardware is not installed, the line will read:

texture accelerator:        no

On supported devices, this hardware accelerates the following texture mapping features:

  • Single texture map per primitive

  • Full MIP mapping with all MIP interpolation filters

  • All post-lighting texturing and pre-light replace and modulate texturing

The accelerator has memory built into it to hold up to 16 megabytes of texture data (with 8-bits red, green, blue, and alpha data per texel). This is enough memory for three 1024×1024 fully MIP-mapped textures, or a single 2048×2048 point-sampled texture map. However, through a caching scheme for the hardware texture memory, textures as large as 32768×32768 may be accelerated. Note that up to 4096 textures of size 64×64 or smaller, or 256 textures of size 256×256 or larger can be supported at one time.

To support the HP Visualize-FX4 and HP Visualize-FX6 texture cache, a texture interrupt management daemon runs continuously. This daemon, named timd, is responsible for ensuring that the appropriate sections of texture maps reside in the hardware texture memory. As with other system processes, do not attempt to kill timd, as this may cause the hardware to enter a "hung" state from which it is difficult to recover.

Overlay Plane Rendering

Either the hpvmx or sox11 device driver is used for Starbase rendering to the overlay planes. For more information on these device drivers, see the chapters "HP Virtual Memory and X" in this Addendum and "The Starbase-on-X11 Device Driver" in the HP-UX Starbase Device Drivers Manual.

If an overlay plane window is gopened with a driver name of NULL, the hpvmx driver will be used. See the table, "Driver Selection at gopen" in the chapter "HP Virtual Memory and X" in this Addendum for details.

8/8 VM double-buffering is supported in the overlay planes using the hpvmx driver.

HP Color Recovery Technology

The HP Visualize-FX devices use HP Color Recovery for shaded fill areas in depth 8 image-plane visuals (for example, polygons and spline surfaces). Color Recovery will generate a better picture by attempting to eliminate the graininess caused by dithering. HP Color Recovery is available in all depth 8 visuals on the HP Visualize-FX graphics devices.

There are two components to HP Color Recovery. A different dither cell size (16×2) is used when rendering shaded polygons, and a digital filter is used when displaying the contents of the frame buffer to the screen.

The HP Visualize-FX devices provide HP Color Recovery whenever you are in CMAP_FULL mode and you have used the INIT flag in the gopen, shade_mode, or the double_buffer function to initialize color maps. Keep in mind that the default color map mode is CMAP_NORMAL for PseudoColor visuals. Therefore, the HP Color Recovery color map will not be downloaded until you call shade_mode to set the mode to CMAP_FULL and use INIT.

HP Color Recovery is available when using either PseudoColor or TrueColor visuals. The HP Color Recovery color map is a read-only color map. Any attempts to change it will be ignored and no error will be reported.

In CMAP_FULL shade mode, disabling HP Color Recovery results in normal dithering of shaded fill areas. HP Color Recovery is not available with any other shade mode.

HP Color Recovery is enabled in conjunction with a particular X color map that is associated with your window. If that X color map is not currently installed in hardware by your window manager, you will not see the effect of the HP Color Recovery filter.

Note that vectors are always dithered, even in an HP Color Recovery window.

Under some conditions HP Color Recovery can produce undesirable artifacts in the image. This also happens with 4×4 dithering, but the artifacts are different. However, images rendered with HP Color Recovery are seldom worse than what dithering produces, and in most cases, HP Color Recovery produces significantly better pictures than dithering. Note that 4×4 dithering, like HP Color Recovery, is available in the CMAP_FULL color map mode, but not in the CMAP_NORMAL color map mode.

HP Color Recovery is available by default. If you wish to disable HP Color Recovery, you can do it in one of three ways:

  • Add the screen option DisableColorRecovery to your X*screens file. Setting this screen option prior to starting up the X server disables HP Color Recovery for all applications and any attempts to enable HP Color Recovery will be ignored. Remember, if you set this screen option prior to starting up the X server, you cannot re-enable HP Color Recovery from the command line or from within an application. To set this screen option, add the following lines to your 〈x11-admin[12]/X*screens file:

    ScreenOptions
    DisableColorRecovery

    and restart HP CDE or X11. To restart HP CDE, log out, then select "Reset Login Screen" from the "Options" pull-down on the HP CDE log-in window.

  • Export the environment variable HP_DISABLE_COLOR_RECOVERY before running your application. Setting this environment variable to any value disables HP Color Recovery for subsequently executed applications. To set this environment variable in your current X11 window, execute this command on the command line before running your application (assuming you are using the Korn shell):

    export HP_DISABLE_COLOR_RECOVERY=TRUE
  • Disable HP Color Recovery programmatically by using the Starbase gescape COLOR_RECOVERY_CONTROL. For details on this gescape, read the subsequent section "Gescapes."

Gescapes

The COLOR_RECOVERY_CONTROL gescape can be used to disable HP Color Recovery. Passing it a 0 value in arg1 will disable HP Color Recovery, a 1 value will enable it (HP Color Recovery is enabled by default). The arg2 parameter is ignored. The effect of this gescape will not take place until the next time you call shade_mode or double_buffer with the INIT flag. For example:

gescapearg  arg1;
/* Disable HP Color Recovery */
arg1.i0 = 0;
gescape(fildes, COLORRECOVERYCONTROL, &arg1, NULL);
shademode(fildes, CMAPFULLINIT,0);


[12] The actual path names of directories in angle brackets depend on the file system structure. See the Graphics Administration Guide for details.

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1996 Hewlett-Packard Development Company, L.P.