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
HP PEX Implementation and Programming Supplement: HP9000 Series 700 Color Workstations > Chapter 1 An Overview of the HP PEX Product

The HP PEX Product

» 

Technical documentation

Complete book in PDF
» Feedback
Content starts here

 » Table of Contents

 » Glossary

 » Index

The HP PEX product brings high-performance, full-featured 3D graphics through the X server to the HP 9000 Series 700 workstations. PEX is composed of two parts:

  • PEX: Technically, PEX is only a protocol — a set of rules that an implementation follows.

  • PEXlib: This part is a set of subroutines that follow the rules defined in the PEX protocol.

The name "PEX" is often used to refer to the above two entities as a unit. In this document, this convention is followed: "HP PEX" refers to the whole product, and if only the PEX protocol is being discussed, it will be stated as such. When the implementation itself — the subroutine library — is being discussed, it is referred to as "HP PEXlib."

HP PEX is a powerful combination of Application Programmer's Interface (API) and workstation technology that provides integrated, distributed graphics — from low-cost workstations for simple 2D drawings or 3D wireframe to advanced 3D workstations with sophisticated lighting, shading, and texture-mapping for complex 3D models.

The industry-standard PEX developed by the X Consortium is a 3D Protocol Extension to the X Window System. Hewlett-Packard's PEXlib is a low-level 3D API or library to the PEX protocol that conforms to the PEXlib 5.1 standard. Hewlett-Packard's implementation of PEXlib can use Direct Hardware Access (DHA) to provide full performance, advanced 3D graphics in a local X window.

For remote rendering, HP's PEXlib emits PEX protocol requests over the network, to be finally rendered by a remote X server that supports PEX, or by a PEX terminal. To enable HP PEXlib client applications to run to an X server or X terminal that does not support the PEX extension, HP PEXlib can generate X protocol. HP PEXlib does not support raw-mode graphics (no-windows mode).

For displaying pictures, HP PEX supports immediate-mode, structure-mode, and mixed-mode rendering to local and remote displays.

Several capabilities serve animation and visualization applications; for example, MBX (multi-buffering extension), texture mapping capabilities, alpha transparency, and others.

Structure mode calculates structures once, saving a database of information in memory on the server. When a user manipulates the 3D object, the client formulates instructions to set up graphical operations such as rotating, clipping, and zooming. The client sends instructions to the server to perform the calculations and redisplay the object with minimum changes to the database. Mixed mode offers users a combination of the two modes.

HP PEX implements the 5.1 PEXlib Specification with the CGE extensions (see below), and ANSI-C Language Binding. You may compile programs using either the ANSI C or Kernighan and Ritchie C compiler options.

In the HP PEX releases 5.1v3, HP released new functionality defined in 5.2 PEXlib. Specific key features were selected to enhance performance and ease of use in the HP PEX product. In the HP PEX release 5.1v4, HP releases more new functionality defined in 5.2 PEXlib, including new features and supported devices. HP PEX 5.1v4 also includes some extensions added by HP that are not part of the 5.2 PEXlib standard.

Supporting The Common Graphics Environment (CGE)

Hewlett-Packard encourages programmers in programming practices that assure the greatest portability and interoperability of programs and minimize the need for vendor-specific drivers or code paths. Several workstation vendors, including HP, provide Common Graphics Environment (CGE PEX 5.1), a library of functions with utilities that will assist you in establishing the uniformity necessary for programs to compile and run seamlessly regardless of the platform vendor.

One of the most exciting benefits about CGE is that it provides early availability of many functions slated for future releases of PEX. The early availability of these functions with the CGE PEX 5.1 Extensions can help you put more powerful and more widely usable applications into the hands of your customers.

Supporting Selected PEX 5.2 Functionality and HP Extensions

HP PEX releases 5.1v3 and 5.1v4 include some functionality and interfaces from the future PEX/PEXlib 5.2 standards, as well as extensions designed by HP. These features are being implemented in advance of the final standards, because HP believes that they will have significant value in many PEXlib applications. In some cases, minor differences between the HP implementation and the final PEX 5.2 standard may occur, but none should require more than very minor adjustments to make your application 5.2 conformant. It is important to note that the 5.1v3 and 5.1v4 releases are not a complete PEX 5.2 implementation; instead, as the release name implies, it is PEX 5.1 plus CGE PEX 1.0 extensions, plus certain selected items from the PEX 5.2 draft standard. Release 5.1v4 also includes HP extensions. Some of these 5.2 features may be available only from HP for some time to come, so use of them is a consideration for portability and interoperability. Nevertheless, you may find them very valuable in the interest of performance, functionality, and experimentation with some important features of PEX/PEXlib 5.2.

Product Structure

Hewlett-Packard makes two PEX products available — a developer's environment, bundled with the HP-UX Developer's Toolkit, and a runtime-only environment, bundled with the operating system. If you ordered the Instant Ignition option, the installation of HP PEXlib is greatly simplified because the operating files have been pre-loaded for you and the system is ready to run the moment you set up your workstation. This run-time product is required for each workstation that runs HP PEXlib applications.

Supported Workstation Configurations

This release of HP PEX is supported on the HP 9000 Series 700 3D Workstations running HP-UX 10.20 and HP CDE 1.0 (or HP VUE 3.0). However, you can choose not to use HP CDE and use only the X Windows environment instead.

The PowerShade product (B2156B/C) provides full lighting and shading functionality. HP work stations without PowerShade provide wireframe rendering and flat-shaded polygons.

Some devices enable you to create transparent overlay planes that are useful, for example, to add annotations that "float" over images rendered in the image planes.

As mentioned, the HP PEX Developer's environment is bundled with the HP-UX Developer's Toolkit or the ANSI/C HP-UX Developer's Toolkit for the header files and development tools for the X Window System Version 11, Release 6, that are included.

Supported Environments

When running to a Hewlett-Packard server, an HP PEX client not using the X protocol mode supports only the visual types shown below (as returned by the Xlib call XGetVisualInfo). These are image visuals and overlay plane visuals, not pixmap drawables.

Table 1-1 Visual Types Supported by HP PEX/PEXlib

Visual Depth

Visual Class

Double Buffer

Supported Devices

8

PseudoColor

SW 8/8

Series 700 Color Workstations, HP Visualize-EG

8

PseudoColor

HW 8/8

CRX, CRX-24, CRX-24Z, CRX-48Z, HCRX-8, HCRX-24, HP Visualize-8/-24/-48

8

TrueColor

SW 8/8

Model 712, HP Visualize-EG

8

TrueColor

HW 8/8

HCRX-8 HCRX-24, HP Visualize-8/-24/-48/-48XP

12

DirectColor

HW 12/12

CRX-24, CRX-24Z, HCRX-24, HP Visualize-24/-48/-48XP

12

TrueColor

HW 12/12

CRX-24, CRX-24Z, HCRX-24, HP Visualize-24/-48/-48XP

24

DirectColor

None

CRX-24, CRX-24Z, HCRX-24, HP Visualize-24/-48/-48XP

24

DirectColor

HW 24/24

CRX-48Z, HP Visualize-48, HP Visualize-48XP

24

TrueColor

None

CRX-24, CRX-24Z, HCRX-24, HP Visualize-24/-48/-48XP

24

TrueColor

HW 24/24

CRX-48Z, HP Visualize-48/-48XP

 

When running to a Hewlett-Packard server, the X protocol method of producing PEX graphics supports only the visual types shown below (as returned by the Xlib call XGetVisualInfo). These are image visuals and overlay plane windows, not pixmap drawables.

Table 1-2 Visual Types Supported in the X Protocol Mode (VMX Driver)

Visual Depth

Visual Class

Double-Buffer Support

8

PseudoColor

SW 8/8

8

DirectColor

SW 8/8

8

TrueColor

SW 8/8

24

DirectColor

SW 24/24

24

TrueColor

SW 24/24

 

Mixing Graphics APIs

The combinations of graphics APIs that are supported are these: Calls to Xlib and PEXlib can be mixed within an application, while calls to Starbase, PHIGS, and GKS cannot be made from a PEXlib application.

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