bgntme(3G)bgntme(3G)NAME
bgntme, endtme - delimit the vertices of a triangle mesh
FORTRAN 77 SPECIFICATION
subroutine bgntme
subroutine endtme
PARAMETERS
none
DESCRIPTION
Vertices specified between bgntme and endtme are used to define a mesh of
triangles. The graphics pipe maintains two vertex registers. The first
and second vertices are loaded into the registers, but no triangle is
drawn until the system executes the third vertex routine. Upon executing
the third vertex routine, the system draws a triangle through the
vertices, then replaces the older of the register vertices with the third
vertex.
For each new vertex routine, the system draws a triangle through the new
vertex and the stored vertices, then (by default) replaces the older
stored vertex with the new vertex. If you want the system to replace the
more recent of the stored vertices, call swaptm prior to calling v.
Between bgntme and endtme you can issue the following Graphics Library
routines: c, color, cpack, lmbind, lmcolo, lmdef, n, RGBcol, swaptm, t,
and v. Use lmdef and lmbind only to respecify materials and their
properties.
If you want to use backfa, you should specify the vertices of the first
triangle in counter-clockwise order. All triangles in the mesh have the
same rotation as the first triangle in a mesh so that backfacing works
correctly.
There is no limit to the number of vertices that can be specified between
bgntme and endtme.
By default triangle vertices are forced to the nearest pixel center prior
to scan conversion. Triangle accuracy is improved when this coercion is
defeated with the subpix command. Subpixel vertex positioning is
especially important when triangles are scan converted with antialiasing
enabled (see polysm).
After endtme the current graphics position is undefined.
EXAMPLE
For example, the code sequence:
Page 1
bgntme(3G)bgntme(3G)
call bgntme
call v3f(v0)
call v3f(v1)
call v3f(v2)
call v3f(v3)
call endtme
draws two triangles, (v0,v1,v2) and (v3,v2,v1), while the code sequence:
bgntmev3f(v0)v3f(v1)
swaptm
v3f(v2)v3f(v3)
endtme
draws two triangles, (v0,v1,v2) and (v0,v2,v3). There is no limit to the
number of times that swaptm can be called.
NOTE
On Impact and Infinite Reality lmcolo cannot be called between bgntme and
endtme
SEE ALSO
backfa, c, concav, frontf, polymo, polysm, scrsub, setpat, shadem,
subpix, swaptm, v
Page 2