• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1XXX this could be converted/formatted for Sphinx someday.
2XXX do not use tabs in this file.
3
4
5
6            position                     ]
7            primary/secondary colors     ]
8            generics (normals,           ]
9               texcoords, fog)           ] User vertices / arrays
10            point size                   ]
11            edge flag                    ]
12            primitive ID                 } System-generated values
13            vertex ID                    }
14              | | |
15              V V V
16      +-------------------+
17      |  Vertex shader    |
18      +-------------------+
19              | | |
20              V V V
21            position
22            clip distance
23            generics
24            front/back & primary/secondary colors
25            point size
26            edge flag
27            primitive ID
28              | | |
29              V V V
30      +------------------------+
31      |     Geometry shader    |
32      | (consume vertex ID)    |
33      | (may change prim type) |
34      +------------------------+
35              | | |
36              V V V
37            [...]
38            fb layer
39              | | |
40              V V V
41      +--------------------------+
42      |         Clipper          |
43      | (consume clip distances) |
44      +--------------------------+
45              | | |
46              V V V
47      +-------------------+
48      |  Polygon Culling  |
49      +-------------------+
50              | | |
51              V V V
52      +-----------------------+
53      |    Choose front or    |
54      |    back face color    |
55      | (consume other color) |
56      +-----------------------+
57              | | |
58              V V V
59            [...]
60            primary/secondary colors only
61              | | |
62              V V V
63      +-------------------+
64      |   Polygon Offset  |
65      +-------------------+
66              | | |
67              V V V
68      +----------------------+
69      | Unfilled polygons    |
70      | (consume edge flags) |
71      | (change prim type)   |
72      +----------------------+
73              | | |
74              V V V
75            position
76            generics
77            primary/secondary colors
78            point size
79            primitive ID
80            fb layer
81              | | |
82              V V V
83  +---------------------------------+
84  | Optional Draw module helpers    |
85  | * Polygon Stipple               |
86  | * Line Stipple                  |
87  | * Line AA/smooth (as tris)      |
88  | * Wide lines (as tris)          |
89  | * Wide points/sprites (as tris) |
90  | * Point AA/smooth (as tris)     |
91  | (NOTE: these stages may emit    |
92  |  new/extra generic attributes   |
93  |  such as texcoords)             |
94  +---------------------------------+
95              | | |
96              V V V
97            position                     ]
98            generics (+ new/extra ones)  ]
99            primary/secondary colors     ] Software rast vertices
100            point size                   ]
101            primitive ID                 ]
102            fb layer                     ]
103              | | |
104              V V V
105      +---------------------+
106      | Triangle/Line/Point |
107      |    Rasterization    |
108      +---------------------+
109              | | |
110              V V V
111            generic attribs
112            primary/secondary colors
113            primitive ID
114            fragment win coord pos   } System-generated values
115            front/back face flag     }
116              | | |
117              V V V
118      +-------------------+
119      |  Fragment shader  |
120      +-------------------+
121              | | |
122              V V V
123            zero or more colors
124            zero or one Z value
125
126
127NOTE: The instance ID is not shown.  It can be imagined to be a global variable
128accessible to all shader stages.
129