• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1XXX - Not complete yet!!!
2XXX - Obsolete; implemented as part of GL_SGIX_igloo_interface
3    We still need to talk to myoung about error behavior.
4
5Name
6
7    IGLOO_swap_triangle_strip_vertex_pointerXXX
8
9
10Name Strings
11
12    GL_IGLOO_swap_triangle_strip_vertex_pointerXXX
13
14    No name should be returned by glGetString, glXQueryExtensionsString, or gluGetString .
15    The name string here is used solely in the registry.
16
17Version
18
19    $Date: 1999/04/03 08:40:51 $ $Revision: 1.3 $
20
21Number
22
23    None
24
25	Igloo extensions should be compatible with *ALL* other extensions.
26	(i.e. igloo extensions must document their interactions with subsequent
27	extensions preceding it, so there is no number).
28
29Dependencies
30
31	None
32
33Overview
34
35	This extensions allows a single triangle fan to be generated within
36	a glBegin(GL_TRIANGLE_STRIP) . . .glEnd();
37
38New Procedures and Functions
39
40	void SwapTriangleStripVertexPointerXXX(void);
41
42New Tokens
43
44	None
45
46Additions to Chapter 2 of the 1.0 Specification (OpenGL Operation)
47
48	Note: It is not explicitely stated but glGetError returns INVALID OPERATION
49	when this is called between glBegin and glEnd if this extension is not supported.
50
51	Section 2.6.3 -- GL Commands within Begin/End
52	    The only GL command that are allowed within any Begin/End Pairs are the
53	commands for specifying vertex coordinates, vertex color, normal coordinates,
54	and texture coordinates (Vertex, Color, Index, Normal, TexCoord),
55	EvalCoord and EvalPoint commands (see section 5.1)
56	commands for specifying lighting material parameters
57	(Material commnads: see section 2.12.2) display list invocation commands
58	(callList and CallLists: see section 5.4), *SwapTriangleStripVertexPointerXXX*
59	(see section 2.7) and the EdgeFlag command.
60
61	Section 2.6.1 --- Begin and End Objects
62	Triangle strips.  second paragraph
63	    The state required to support triangle strips consists of a flag
64	indicating if the first triangle has been completed, two stored
65	processed vertices, (called vertex A and vertex B), and a one bit pointer
66	indicating which stored vertex will be replaced with the next vertex.
67	After a Begin(TRIANGLE_STRIP), the pointer is initialized to point to
68	vertex A. Each vertex set between a Begin/End pair toggles the pointer.
69	Therefore, the first vertex is stored as vertex A, the second stored
70	as vertex B, the third stored as vertex A, and so on.
71	***SwapTriangleStripVertexPointerXXX
72	causes the pointer to point to the vertex it is not pointing to. Therefore
73	if the pointer points to vertex A then SwapTriangleStripVertexPointerXXX will
74	cause it to point to vertex B and vice-versa. ***  Any vertex after the second one sent
75	forms a triangle from vertex A, vertex B, and the current vertex (in that order).
76
77	same section the following should be appended to the end.
78	    SwapTriangleStripVertexPointerXXX has no effect unless it is called between
79	a Begin with the argument TRIANGLE_STRIP, and the corresponding call to End.
80
81Additions to Chapter 3 of the 1.0 Specification (Rasterization)
82    None
83
84Additions to Chapter 4 of the 1.0 Specification (Per-Fragment Operations
85and the Frame Buffer)
86    None
87
88Additions to Chapter 5 of the 1.0 Specification (Special Functions)
89
90	Currently Igloo doesn't use OpenGL display lists. But this command
91	should be display listable. So it is *NOT* included in the set of
92	commands which are *NOT* display listable.
93
94	The way this is spec'd this will *NOT* generate an extra feedback vertex,
95	or selection hit.  So nothing is added here regarding feedback and selection.
96	HOWEVER,  if this is implemented in the future in software it is
97	likely to be implemented by redundantly re-issuing the	second
98	to the last vertex issued,  and this *WILL* generate a couple of
99	feedback or selection vertices.
100
101
102Additions to Chapter 6 of the 1.0 Specification (State and State Requests)
103
104    None
105
106Additions to the GLX Specification
107
108GLX Protocol
109
110    This command does not need to be recognized by GLX.
111    IGLOO doesn't use indirect rendering.
112
113Dependencies on SGI_extension_name
114
115    None
116
117Errors
118
119    This command  should be a no-op for other primitive types
120    (and outside of glBegin/glEnd.)   However, this implies that
121    the Error state knows if you are within Begin/End. and
122    worse it means that it knows if you are generating a Triangle
123    Strip.  I'm assuming that if it is possible to flag
124    an error it is also possible to ignore it.	SO. . .there is
125    no error generated outside of glBegin(GL_TRIANGLE_STRIP) glEnd()
126    and so nothing is written into this section.
127
128    Blythe said that he'd talk to Myoung and make sure that this
129    is ok.
130
131
132
133New State
134
135*	Description of all state values in table format.  Note that client
136*	state should have "client" listed in the Attrib column.
137
138								Initial
139    Get Value				Get Command	Type	Value	Attrib
140    ---------				-----------	----	------- ------
141None
142
143New Implementation Dependent State
144
145*	Description of all implementation dependent state in table format.
146
147									Minimum
148    Get Value				Get Command	Type		Value
149    ---------				-----------	----		-------
150
151None
152
153