 |
» |
|
|
 |
This section contains information on Starbase calls that are
not supported by the HP Visualize-48
and HP Visualize-48XP. This section also contains
information on gescapes
that are supported by the HP Visualize-48 and
HP Visualize-48XP. Calls Not Supported on the HP VISUALIZE-48 and HP
VISUALIZE-48XP |  |
The following calls are not supported when using the HP
Visualize-48 and HP Visualize-48XP: bf_texture_index contour_enable define_contour_table define_texture texture_index texture_viewport texture_window |
Conditional Support of Starbase Calls on the HP VISUALIZE-48
and HP VISUALIZE-48XP |  |
The following calls are supported with the listed exceptions: Title not available (Conditional Support of Starbase Calls on the HP VISUALIZE-48
and HP VISUALIZE-48XP ) - alpha_transparency
The HP Visualize-48
and HP Visualize-48XP support alpha transparency.
Alpha only applies to filled areas such as polygons, quadrilateral
meshes, triangular strips, and spline surfaces. Vector primitives
are not rendered with alpha_transparency.
The alpha transparency feature is limited to CMAP_FULL
in a depth 24 visual. Only the floating point version of these primitives
will be rendered with alpha transparency; device coordinate primitives
do NOT use alpha. The HP Visualize-48 and HP
Visualize-48XP do not support alpha transparency with
attenuation. (See alpha_transparency(3G)
in the Starbase Reference manual for the
list of parameters).
- block_read,
block_write
The raw parameter for the block_read
andblock_write
commands is used by this driver to do plane-major reads and writes.
It is enabled by the gescape R_BIT_MODE. The storage destination supplied by the user as the source
or destination must be organized as follows. The data from each plane is packed
with eight pixels per byte. Each row must begin on a byte boundary. Thus, the
size of the rectangle as specified by the 〈length_x〉
and 〈length_y〉 parameters
must correspond to an integral number of bytes. The data for the next plane begins on the following
byte boundary. Clip to the screen limits. The first pixel in the source rectangle is placed
in the high-order bit of the first byte in each plane region. When clipping, part of each plane region will not
be read (block_read)
or altered (block_write).
A bit mask selects the planes to read or write.
The initial value of this mask is 1 (one) indicating that only plane
0 is to be accessed. The value of the mask may be changed using
the R_BIT_MASK
or GR2D_PLANE_MASK
gescapes. GR2D_PLANE_MASK
is discussed in the appendix of this manual. The planes selected
by the mask are expected to reside in consecutive plane locations
in the user storage area. This reduces the storage requirements
to exactly what is needed but also presents the potential for addressing
violations or undesirable results. For example, if the plane mask is changed to specify more
planes between a block_read
and a following block_write
from the same location, the block_write
will attempt to access storage for planes that were not read (and
perhaps not allocated). The application program must ensure consistency
in these operations. - fill_dither
The ability to dither is disabled if the number
of colors specified by fill_dither
is one. However, if the number of colors specified is greater than
1, the default dither cell size of 16 is used. Dithering is only
used in depth 8 windows while in either the CMAP_FULL
or CMAP_MONOTONIC
color map mode. - interior_style
The styles
INT_PATTERN and
INT_HATCH are
not supported by the HP Visualize-48 andHP
Visualize-48XP graphics devices.
- light_source
Up to 15 directional light sources are available
on the HP Visualize-48 and HP Visualize-48XP.
These devices' hardware accelerates up to eight directional light
sources. Using nine to fifteen directional light sources will cause
a noticeable performance degradation. - line_filter,
perimeter_filter
Anti-aliasing is supported on the HP
Visualize-48 and HP Visualize-48XP.
Anti-aliasing for this device applies only to floating point vectors.
Device coordinate primitives do not use anti-aliasing. The anti-aliasing
features are also limited to the CMAP_FULL
color map mode in a depth 24 visual.
The HP Visualize-48 and HP Visualize-48XP
have two anti-aliasing modes that may be specified with the line_filter
and perimeter_filter
procedures. The index values are assigned as follows: Title not available (Conditional Support of Starbase Calls on the HP VISUALIZE-48
and HP VISUALIZE-48XP ) - 0
Anti-aliasing disabled, all vectors have one pixel
wide output. - 1
Anti-aliasing enabled, all vectors have two pixel
wide output. Pixel values are multiplied by the alpha value and
blended with the background according the the formula: pixel_color = (new_pixel × α) + (old_pixel × (1 - α)); |
- 2
Anti-aliasing enabled, all vectors have two pixel
wide output. Pixel values are multiplied by the alpha value and
blended with the background according to the formula: pixel_color= (new_pixel
× α) + old_pixel
Note that this implementation of 2 pixel wide anti-aliasing
differs from the CRX-48Z (with 3-wide anti-aliasing). - shade_mode
The color map mode may be selected. Shading can
be turned on only if using PowerShade. Shading is not supported
on device coordinate primitives even with PowerShade. Note that
the HP Visualize-48 and HP Visualize-48XP
automatically use PowerShade. - text_precision
Only STROKE_TEXT
precision is supported.
- vertex_format
If using PowerShade software, vertex_format
is fully functional. Note that the HP Visualize-48
and HP Visualize-48XP automatically use PowerShade. - *_with_data
The following routines are called with_data
routines because they allow you to send extra vertex data. These
with_data routines
are supported by the HP Visualize-48 and HP
Visualize-48XP. partial_polygon_with_data3d quadrilateral_mesh_with_data
Note that the TEXTURE_MAP
flag applies to the TurboVRX devices via the texture_*
routines. This extra data per vertex is not used in the tm_*
routines. For detailed information on these routines, read the Starbase
Reference and "Appendix A" of this document. In some
cases, you will be able to find the routines under their own name,
but in other cases, you will need to use the first part of the routine
name to locate these routines (e.g., polyline_with_data3d
is described on the man page for polyline(3G)).
Supported Gescapes |  |
The hphcrx48z
device driver supports the following gescape operations on the HP
Visualize-48 and HP Visualize-48XP
configurations. Refer to Appendix A of the HP-UX Starbase
Device Drivers Manual for details on gescapes. BLOCK_WRITE_SKIPCOUNT
— Specify byte skip count during block write. COLOR_RECOVERY_CONTROL
— Disable HP Color Recovery. CUBIC_POLYPOINT
— Specify points to be rendered in a cubic volume specified
in modeling coordinates. DC_PIXEL_WRITE
— Specify points to be rendered along a horizontal scan
line. DRAW_POINTS
— Select different modes of rounding for rendered points. GAMMA_CORRECTION
— Enable/disable gamma correction. GCRX_PIXEL_REPLICATE
— Pan and zoom a raster image. IGNORE_RELEASE
— Trigger only when button pressed. ILLUMINATION_ENABLE
— Turn on/off illumination bits. LINEAR_POLYPOINT
— Specify points to be rendered along a line specified
in modeling coordinates. LS_OVERFLOW_CONTROL
— Set light source overflow handling. POLYGON_TRANSPARENCY
— Segment control over front/back face screen. READ_COLOR_MAP
— Read Color Map. R_GET_FRAME_BUFFER
— Read frame buffer address. R_LINE_TYPE
— User defined line style and repeat length. R_LOCK_DEVICE
— Lock device. R_UNLOCK_DEVICE
— Unlock device. TRIGGER_ON_RELEASE
— Trigger only when button is released. SET_POLYGON_OFFSET
— Enable Z-buffer biasing of fill pixels. STEREO
— Activate stereo output mode. SWITCH_SEMAPHORE
— Semaphore Control. TRANSPARENCY
— Set screen door transparency mask (front face and back
face). WIDELINE_CONTROL
— Turn on/off and set attributes of widelines. ZBANK_ACCESS
— Enable/disable Z-buffer block operations. ZWRITE_ENABLE
— Enable/disable replacement of Z value.
Exceptions to Gescape Support |  |
 |  |  |  |  | NOTE: Because gescape operations are device-dependent, the
exceptions discussed below may be removed in future drivers. |  |  |  |  |
Title not available (Exceptions to Gescape Support ) - GAMMA_CORRECTION
Gamma correction is implemented by modifying
the color map. It is available only in 24-bit DirectColor visuals
on the HP Visualize-48 and HP Visualize-48XP.
For information on the gescape GAMMA_CORRECTION,
refer to Appendix A in the HP-UX Starbase Device Drivers
Manual. If a global gamma correction value has been
set via the X server or the gamma correction tool, that global gamma
correction value will be used and the color map will not be modified.
See the Graphics Administration Guide for
more information about the gamma correction tool.
When the gescape operations listed below are used with a backing
store graphics window, they will have the desired effect for the
visible portion of the window, but may cause the backing store for
obscured parts to be altered in inconsistent ways. The features
involved (along with the names of the affected gescape operations)
are listed below. For more details on the gescape operations, refer
to Appendix A in the HP-UX Starbase Device Drivers Manual. Title not available (Exceptions to Gescape Support ) - R_BIT_MASK
The gescape operation R_BIT_MASK
defines a plane mask to the driver that is used for bit/pixel access
to a single plane in the frame buffer. As with other device drivers,
only the plane corresponding to the highest bit set in the mask
is transferred. - R_BIT_MODE
When calling block_read
or block_write
with the raw parameter set to TRUE,
the driver supports bit/pixel frame buffer access to single planes.
The HP Visualize-48 and HP Visualize-48XP
support the Z_CLIP_VOXEL
flag for the CUBIC_POLYPOINT
and LINEAR_POLYPOINT
gescapes. This flag enables read-only Z-clipping of the point primitives
against the existing contents of the Z-buffer. The Z-buffer is not
modified. For CUBIC_POLYPOINT,
the Z_CLIP_VOXEL
flag is one of several in the vertex format argument, arg1.i[8].
For LINEAR_POLYPOINT,
the Z_CLIP_VOXEL
flag is one of several in arg1.i[8].
Consult the gescape chapter for more information about LINEAR_POLYPOINT
and CUBIC_POLYPOINT.
|