1Name
2
3    SGIX_cylinder_texgen
4
5Name Strings
6
7    GL_SGIX_cylinder_texgen
8
9Version
10
11    $Date: 1999/04/03 08:40:44 $ $Revision: 1.3 $
12
13Number
14
15    140
16
17Dependencies
18
19Overview
20
21    This extension adds two texture coordinate generation modes, both
22    of which generate a texture coordinate based on an intersection
23    of the reflected ray with a local cylinder.  The difference between
24    the two modes lies in the coordinate space in which the reflected
25    ray is assumed to reside.
26
27New Procedures and Functions
28
29    None
30
31New Tokens
32
33    Accepted by the <params> parameters of TexGeni, TexGenf, TexGend,
34    TexGeniv, TexGenfv, and TexGendv:
35
36	EYE_CYLINDER_SGIX
37	OBJECT_CYLINDER_SGIX
38	EYE_CYLINDER_RADIUS_SGIX
39	OBJECT_CYLINDER_RADIUS_SGIX
40
41Additions to Chapter 2 of the 1.0 Specification (OpenGL Operation)
42
43    If TEXTURE_GEN_MODE indicates OBJECT_CYLINDER_SGIX, then the
44    generating function for the coordinate indicated by <coord> is
45
46	XXX
47
48    In other words, compute the reflection vector in object space from
49    the point P in object space, and find the intersection of this
50    reflection vector with a cylinder of radius r oriented along the x
51    axis in object space.  If the cylinder is cut perpendicular to its
52    axis at the point where the reflected ray intersects the cylinder,
53    g is the normalized arclength of the arc from the xy plane to the
54    intersection point along this cross section.
55
56    r is specified by calling TexGeni, TexGenf, or TexGend with <pname>
57    set to OBJECT_CYLINDER_SGIX and <params> set to r or by calling
58    TexGeniv, TexGenfv, or TexGendv set to OBJECT_CYLINDER_SGIX and
59    <params> pointing to an array containing r.
60
61    If TEXTURE_GEN_MODE indicates EYE_DISTANCE_TO_POINT_SGIS, then the
62    generating function for the coordinate indicated by <coord> is the
63    same as above, but ...
64
65	XXX
66
67    In other words, compute the reflection vector in eye space from the
68    point P in eye space, and find the intersection of this reflection
69    vector with a cylinder of radius r oriented along the x axis in
70    eye space.  If the cylinder is cut perpendicular to its axis at the
71    point where the reflected ray intersects the cylinder, g is the
72    normalized arclength of the arc from the xy plane to the intersection
73    point along this cross section.
74
75    r is specified by calling TexGeni, TexGenf, or TexGend with <pname>
76    set to EYE_CYLINDER_SGIX and <params> set to r or by calling
77    TexGeniv, TexGenfv, or TexGendv set to EYE_CYLINDER_SGIX and <params>
78    pointing to an array containing r.
79
80Additions to Chapter 3 of the 1.1 Specification (Rasterization)
81
82    None
83
84Additions to Chapter 4 of the 1.1 Specification (Per-Fragment Operations
85and the Frame Buffer)
86
87    None
88
89Additions to Chapter 5 of the 1.1 Specification (Special Functions)
90
91    None
92
93Additions to Chapter 6 of the 1.1 Specification (State and State Requests)
94
95    None
96
97New State
98							Initial
99    Get Value			Get Command	Type	Value			Attrib
100    ---------			-----------	----	-------			------
101    EYE_CYLINDER_SGIX		GetTexGeniv	1 x R	{0}			texture
102    OBJECT_CYLINDER_SGIX	GetTexGeniv	1 x R	{0}			texture
103    EYE_CYLINDER_RADIUS_SGIX	GetTexGeniv	1 x R	{1}			texture
104    OBJECT_CYLINDER_RADIUS_SGIX	GetTexGeniv	1 x R	{1}			texture
105
106
107