[ Previous | Next | Contents | Glossary | Home | Search ]
GL3.2 for AIX: Graphics Library (GL) Technical Reference

bgntmesh or endtmesh Subroutine

Purpose

Begins or ends interpretation of vertex subroutines as triangle mesh vertices.

Libraries

Graphics Library

C (libgl.a)

FORTRAN (libfgl.a)

C Syntax

void bgntmesh( )
void endtmesh( )

FORTRAN Syntax

SUBROUTINE BGNTME
SUBROUTINE ENDTME

Description

The bgntmesh subroutine begins the system interpretation of vertex (begin-end style) subroutines as triangle mesh vertices, which are used to define a mesh of triangles.

The graphics pipeline maintains two vertex registers. The first and second vertices are loaded into the registers. When the third vertex routine is executed, the system draws a triangle through the vertices and replaces the older of the register vertices with the third vertex.

For each new vertex subroutine, the system draws a triangle through the new vertex and the stored vertices, then replaces the older stored vertex with the new vertex.

To replace the more recent of the stored vertices, call the swaptmesh subroutine. For example, the code sequence:

bgntmesh();
 v3f(zero);
 v3f(one);
 v3f(two);
 v3f(three);
endtmesh();

draws two triangles, (zero,one,two) and (one,two,three) , while the code sequence:

bgntmesh();
 v3f(zero);
 v3f(one);
 swaptmesh();
 v3f(two);
 v3f(three);
endtmesh();

draws two triangles, (zero,one,two) and (zero,two,three) . There is no limit to the number of times that the swaptmesh subroutine can be called.

Between the bgntmesh and endtmesh subroutines, you can issue only the following Graphics Library subroutines:

Use the lmbind and lmdef subroutines to respecify only materials and their properties.

If you want to use the backface subroutine, specify the vertices of the first triangle in counterclockwise order. All triangles in the mesh have the same rotation as the first triangle in a mesh so that backfacing works correctly.

Implementation Specifics

This subroutine is part of GL in the AIXwindows Environment/6000 Version 1, Release 2 with AIXwindows/3D Feature.

The POWER Gt4 and POWER Gt4x adapters support only a limited number of vertices between the bgntmesh and endtmesh subroutines. The actual limit can vary from less than 200 vertices to more than 400 vertices, depending on whether or not colors, normals, or material properties are specified between the begin and end pair. If only vertices are specified between a begin and end pair, then at least 255 vertices are supported. Specifying normals, colors, material properties, or the swaptmesh subroutine decreases the overall maximum. If all attributes are specified, only 198 vertices are supported.

The POWERgraphics GTO and the 3D Color Graphics Processor support a maximum of 255 vertices between the bgntmesh and endtmesh subroutines.

The POWERgraphics GXT1000 supports an arbitrary number of vertices between the bgntmesh and endtmesh subroutines.

Files

/usr/include/gl/gl.h Contains C language constant and variable type definitions for GL.
/usr/include/gl/fgl.h Contains FORTRAN constant and variable type definitions for GL.

Related Information

Setting the current color in RGB mode with the c subroutine.

Toggling the triangle mesh register pointer with the swaptmesh subroutine.

Transferring a vertex to the graphics pipe with the v subroutine.

AIX Graphics Library Overview, Drawing with Begin-End Style Subroutines, and Understanding the Hardware Used by GL in GL3.2 Version 4 for AIX: Programming Concepts.


[ Previous | Next | Contents | Glossary | Home | Search ]