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