v(3G) v(3G)
v2d, v2f, v2i, v2s, v3d, v3f, v3i, v3s, v4d, v4f, v4i, v4s - transfers a
2-D, 3-D, or 4-D vertex to the graphics pipe
void v2s(vector) void v2f(vector)
short vector[2]; float vector[2];
void v2i(vector) void v2d(vector)
long vector[2]; double vector[2];
void v3s(vector) void v3f(vector)
short vector[3]; float vector[3];
void v3i(vector) void v3d(vector)
long vector[3]; double vector[3];
void v4s(vector) void v4f(vector)
short vector[4]; float vector[4];
void v4i(vector) void v4d(vector)
long vector[4]; double vector[4];
vector expects a 2, 3, or 4 element array, depending on whether you
call the v2, v3, or v4 version of the routine. The elements of
the array are the coordinates of the vertex (point) that you
want to transfer to the graphics pipe. Put the x coordinate in
element 0, the y coordinate in element 1, the z coordinate in
element 2 (for v3 and v4), and the w coordinate in element 3
(for v4).
v transfers a single 2-D (v2), 3-D (v3), or 4-D (v4) vertex to the
graphics pipe. The coordinates are passed to v as an array. Separate
subroutines are provided for 16-bit integers (s), 32-bit integers limited
to a signed 24-bit range (i), 32-bit IEEE single precision floats (f),
and 64-bit IEEE double precision floats (d). The z coordinate defaults
to 0.0 if not specified. w defaults to 1.0.
The Graphics Library subroutines bgnpoint, endpoint, bgnline, endline,
bgnclosedline, endclosedline, bgnpolygon, endpolygon, bgntmesh, endtmesh,
bgnqstrip, and endqstrip determine how the vertex is interpreted. For
example, vertices specified between bgnpoint and endpoint draw single
pixels (points) on the screen. Likewise, those specified between bgnline
and endline draw a sequence of lines (with the line stipple continued
through internal vertices). Closed lines return to the first vertex
specified, producing the equivalent of an outlined polygon.
Vertices specified when none of bgnpoint, bgnline, bgnclosedline,
bgnpolygon, bgntmesh, and bgnqstrip are active simply set the current
graphics position. They do not have any effect on the frame buffer
Page 1
v(3G) v(3G)
contents. (Refer to the pages for bgnpoint, bgnline, bgnclosedline,
bgnpolygon, bgntmesh, and bgnqstrip for their effect on the current
graphics position.)
bgnclosedline, bgnline, bgnpoint, bgnpolygon, bgntmesh, bgnqstrip
On the IRIS-4D/120GTX and IRIS-4D/140GTX, there is problem with the
graphics DMA hardware that can cause data to be sent to the hardware
after the subroutine call has returned. If the data is modified immediately
after the subroutine call, the modified data may get sent down. To
avoid this, don't modify the data until after another n, v, or c call has
been made.
This is an example of the bug:
vertex[2] = 1.0;
v3f(vertex); /* 4D/1x0 GTX hardware may receive 3.0 for the z value */
vertex[2] = 3.0;
v3f(vertex);
This is one way to work around the problem:
vertexA[2] = 1.0;
v3f(vertexA);
vertexB[2] = 3.0;
v3f(vertexB);
PPPPaaaaggggeeee 2222 [ Back ]
|