GPU/Internal Registers: Difference between revisions
Fragment lighting, part 1 |
Fragment lighting, part 2 |
||
Line 1,664: | Line 1,664: | ||
|- | |- | ||
| 0140 | | 0140 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR0|GPUREG_LIGHT0_SPECULAR0]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT0_SPECULAR0 / PICA_REG_FRAG_LIGHT_START | |PICA_REG_FRAG_LIGHT0_SPECULAR0 / PICA_REG_FRAG_LIGHT_START | ||
|- | |- | ||
| 0141 | | 0141 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR1|GPUREG_LIGHT0_SPECULAR1]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT0_SPECULAR1 | |PICA_REG_FRAG_LIGHT0_SPECULAR1 | ||
Line 1,744: | Line 1,744: | ||
|- | |- | ||
| 0150 | | 0150 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR0|GPUREG_LIGHT1_SPECULAR0]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT1_SPECULAR0 | |PICA_REG_FRAG_LIGHT1_SPECULAR0 | ||
|- | |- | ||
| 0151 | | 0151 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR1|GPUREG_LIGHT1_SPECULAR1]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT1_SPECULAR1 | |PICA_REG_FRAG_LIGHT1_SPECULAR1 | ||
|- | |- | ||
| 0152 | | 0152 | ||
| [[# | | [[#GPUREG_LIGHTx_DIFFUSE|GPUREG_LIGHT1_DIFFUSE]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT1_DIFFUSE | |PICA_REG_FRAG_LIGHT1_DIFFUSE | ||
|- | |- | ||
| 0153 | | 0153 | ||
| [[# | | [[#GPUREG_LIGHTx_AMBIENT|GPUREG_LIGHT1_AMBIENT]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT1_AMBIENT | |PICA_REG_FRAG_LIGHT1_AMBIENT | ||
|- | |- | ||
| 0154 | | 0154 | ||
| [[# | | [[#GPUREG_LIGHTx_XY|GPUREG_LIGHT1_XY]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT1_POSITION_XY | |PICA_REG_FRAG_LIGHT1_POSITION_XY | ||
|- | |- | ||
| 0155 | | 0155 | ||
| [[# | | [[#GPUREG_LIGHTx_Z|GPUREG_LIGHT1_Z]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT1_POSITION_Z | |PICA_REG_FRAG_LIGHT1_POSITION_Z | ||
|- | |- | ||
| 0156 | | 0156 | ||
| [[# | | [[#GPUREG_LIGHTx_SPOTDIR_XY|GPUREG_LIGHT1_SPOTDIR_XY]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT1_SPOT_XY | |PICA_REG_FRAG_LIGHT1_SPOT_XY | ||
|- | |- | ||
| 0157 | | 0157 | ||
| [[# | | [[#GPUREG_LIGHTx_SPOTDIR_Z|GPUREG_LIGHT1_SPOTDIR_Z]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT1_SPOT_Z | |PICA_REG_FRAG_LIGHT1_SPOT_Z | ||
Line 1,789: | Line 1,789: | ||
|- | |- | ||
| 0159 | | 0159 | ||
| [[# | | [[#GPUREG_LIGHTx_CONFIG|GPUREG_LIGHT1_CONFIG]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT1_TYPE | |PICA_REG_FRAG_LIGHT1_TYPE | ||
|- | |- | ||
| 015A | | 015A | ||
| [[# | | [[#GPUREG_LIGHTx_ATTENUATION_BIAS|GPUREG_LIGHT1_ATTENUATION_BIAS]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT1_DIST_ATTN_BIAS | |PICA_REG_FRAG_LIGHT1_DIST_ATTN_BIAS | ||
|- | |- | ||
| 015B | | 015B | ||
| [[# | | [[#GPUREG_LIGHTx_ATTENUATION_SCALE|GPUREG_LIGHT1_ATTENUATION_SCALE]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT1_DIST_ATTN_SCALE | |PICA_REG_FRAG_LIGHT1_DIST_ATTN_SCALE | ||
Line 1,824: | Line 1,824: | ||
|- | |- | ||
| 0160 | | 0160 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR0|GPUREG_LIGHT2_SPECULAR0]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT2_SPECULAR0 | |PICA_REG_FRAG_LIGHT2_SPECULAR0 | ||
|- | |- | ||
| 0161 | | 0161 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR1|GPUREG_LIGHT2_SPECULAR1]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT2_SPECULAR1 | |PICA_REG_FRAG_LIGHT2_SPECULAR1 | ||
|- | |- | ||
| 0162 | | 0162 | ||
| [[# | | [[#GPUREG_LIGHTx_DIFFUSE|GPUREG_LIGHT2_DIFFUSE]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT2_DIFFUSE | |PICA_REG_FRAG_LIGHT2_DIFFUSE | ||
|- | |- | ||
| 0163 | | 0163 | ||
| [[# | | [[#GPUREG_LIGHTx_AMBIENT|GPUREG_LIGHT2_AMBIENT]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT2_AMBIENT | |PICA_REG_FRAG_LIGHT2_AMBIENT | ||
|- | |- | ||
| 0164 | | 0164 | ||
| [[# | | [[#GPUREG_LIGHTx_XY|GPUREG_LIGHT2_XY]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT2_POSITION_XY | |PICA_REG_FRAG_LIGHT2_POSITION_XY | ||
|- | |- | ||
| 0165 | | 0165 | ||
| [[# | | [[#GPUREG_LIGHTx_Z|GPUREG_LIGHT2_Z]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT2_POSITION_Z | |PICA_REG_FRAG_LIGHT2_POSITION_Z | ||
|- | |- | ||
| 0166 | | 0166 | ||
| [[# | | [[#GPUREG_LIGHTx_SPOTDIR_XY|GPUREG_LIGHT2_SPOTDIR_XY]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT2_SPOT_XY | |PICA_REG_FRAG_LIGHT2_SPOT_XY | ||
|- | |- | ||
| 0167 | | 0167 | ||
| [[# | | [[#GPUREG_LIGHTx_SPOTDIR_Z|GPUREG_LIGHT2_SPOTDIR_Z]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT2_SPOT_Z | |PICA_REG_FRAG_LIGHT2_SPOT_Z | ||
Line 1,869: | Line 1,869: | ||
|- | |- | ||
| 0169 | | 0169 | ||
| [[# | | [[#GPUREG_LIGHTx_CONFIG|GPUREG_LIGHT2_CONFIG]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT2_TYPE | |PICA_REG_FRAG_LIGHT2_TYPE | ||
|- | |- | ||
| 016A | | 016A | ||
| [[# | | [[#GPUREG_LIGHTx_ATTENUATION_BIAS|GPUREG_LIGHT2_ATTENUATION_BIAS]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT2_DIST_ATTN_BIAS | |PICA_REG_FRAG_LIGHT2_DIST_ATTN_BIAS | ||
|- | |- | ||
| 016B | | 016B | ||
| [[# | | [[#GPUREG_LIGHTx_ATTENUATION_SCALE|GPUREG_LIGHT2_ATTENUATION_SCALE]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT2_DIST_ATTN_SCALE | |PICA_REG_FRAG_LIGHT2_DIST_ATTN_SCALE | ||
Line 1,904: | Line 1,904: | ||
|- | |- | ||
| 0170 | | 0170 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR0|GPUREG_LIGHT3_SPECULAR0]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT3_SPECULAR0 | |PICA_REG_FRAG_LIGHT3_SPECULAR0 | ||
|- | |- | ||
| 0171 | | 0171 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR1|GPUREG_LIGHT3_SPECULAR1]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT3_SPECULAR1 | |PICA_REG_FRAG_LIGHT3_SPECULAR1 | ||
|- | |- | ||
| 0172 | | 0172 | ||
| [[# | | [[#GPUREG_LIGHTx_DIFFUSE|GPUREG_LIGHT3_DIFFUSE]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT3_DIFFUSE | |PICA_REG_FRAG_LIGHT3_DIFFUSE | ||
|- | |- | ||
| 0173 | | 0173 | ||
| [[# | | [[#GPUREG_LIGHTx_AMBIENT|GPUREG_LIGHT3_AMBIENT]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT3_AMBIENT | |PICA_REG_FRAG_LIGHT3_AMBIENT | ||
|- | |- | ||
| 0174 | | 0174 | ||
| [[# | | [[#GPUREG_LIGHTx_XY|GPUREG_LIGHT3_XY]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT3_POSITION_XY | |PICA_REG_FRAG_LIGHT3_POSITION_XY | ||
|- | |- | ||
| 0175 | | 0175 | ||
| [[# | | [[#GPUREG_LIGHTx_Z|GPUREG_LIGHT3_Z]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT3_POSITION_Z | |PICA_REG_FRAG_LIGHT3_POSITION_Z | ||
|- | |- | ||
| 0176 | | 0176 | ||
| [[# | | [[#GPUREG_LIGHTx_SPOTDIR_XY|GPUREG_LIGHT3_SPOTDIR_XY]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT3_SPOT_XY | |PICA_REG_FRAG_LIGHT3_SPOT_XY | ||
|- | |- | ||
| 0177 | | 0177 | ||
| [[# | | [[#GPUREG_LIGHTx_SPOTDIR_Z|GPUREG_LIGHT3_SPOTDIR_Z]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT3_SPOT_Z | |PICA_REG_FRAG_LIGHT3_SPOT_Z | ||
Line 1,949: | Line 1,949: | ||
|- | |- | ||
| 0179 | | 0179 | ||
| [[# | | [[#GPUREG_LIGHTx_CONFIG|GPUREG_LIGHT3_CONFIG]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT3_TYPE | |PICA_REG_FRAG_LIGHT3_TYPE | ||
|- | |- | ||
| 017A | | 017A | ||
| [[# | | [[#GPUREG_LIGHTx_ATTENUATION_BIAS|GPUREG_LIGHT3_ATTENUATION_BIAS]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT3_DIST_ATTN_BIAS | |PICA_REG_FRAG_LIGHT3_DIST_ATTN_BIAS | ||
|- | |- | ||
| 017B | | 017B | ||
| [[# | | [[#GPUREG_LIGHTx_ATTENUATION_SCALE|GPUREG_LIGHT3_ATTENUATION_SCALE]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT3_DIST_ATTN_SCALE | |PICA_REG_FRAG_LIGHT3_DIST_ATTN_SCALE | ||
Line 1,984: | Line 1,984: | ||
|- | |- | ||
| 0180 | | 0180 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR0|GPUREG_LIGHT4_SPECULAR0]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT4_SPECULAR0 | |PICA_REG_FRAG_LIGHT4_SPECULAR0 | ||
|- | |- | ||
| 0181 | | 0181 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR1|GPUREG_LIGHT4_SPECULAR1]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT4_SPECULAR1 | |PICA_REG_FRAG_LIGHT4_SPECULAR1 | ||
|- | |- | ||
| 0182 | | 0182 | ||
| [[# | | [[#GPUREG_LIGHTx_DIFFUSE|GPUREG_LIGHT4_DIFFUSE]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT4_DIFFUSE | |PICA_REG_FRAG_LIGHT4_DIFFUSE | ||
|- | |- | ||
| 0183 | | 0183 | ||
| [[# | | [[#GPUREG_LIGHTx_AMBIENT|GPUREG_LIGHT4_AMBIENT]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT4_AMBIENT | |PICA_REG_FRAG_LIGHT4_AMBIENT | ||
|- | |- | ||
| 0184 | | 0184 | ||
| [[# | | [[#GPUREG_LIGHTx_XY|GPUREG_LIGHT4_XY]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT4_POSITION_XY | |PICA_REG_FRAG_LIGHT4_POSITION_XY | ||
|- | |- | ||
| 0185 | | 0185 | ||
| [[# | | [[#GPUREG_LIGHTx_Z|GPUREG_LIGHT4_Z]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT4_POSITION_Z | |PICA_REG_FRAG_LIGHT4_POSITION_Z | ||
|- | |- | ||
| 0186 | | 0186 | ||
| [[# | | [[#GPUREG_LIGHTx_SPOTDIR_XY|GPUREG_LIGHT4_SPOTDIR_XY]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT4_SPOT_XY | |PICA_REG_FRAG_LIGHT4_SPOT_XY | ||
|- | |- | ||
| 0187 | | 0187 | ||
| [[# | | [[#GPUREG_LIGHTx_SPOTDIR_Z|GPUREG_LIGHT4_SPOTDIR_Z]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT4_SPOT_Z | |PICA_REG_FRAG_LIGHT4_SPOT_Z | ||
Line 2,029: | Line 2,029: | ||
|- | |- | ||
| 0189 | | 0189 | ||
| [[# | | [[#GPUREG_LIGHTx_CONFIG|GPUREG_LIGHT4_CONFIG]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT4_TYPE | |PICA_REG_FRAG_LIGHT4_TYPE | ||
|- | |- | ||
| 018A | | 018A | ||
| [[# | | [[#GPUREG_LIGHTx_ATTENUATION_BIAS|GPUREG_LIGHT4_ATTENUATION_BIAS]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT4_DIST_ATTN_BIAS | |PICA_REG_FRAG_LIGHT4_DIST_ATTN_BIAS | ||
|- | |- | ||
| 018B | | 018B | ||
| [[# | | [[#GPUREG_LIGHTx_ATTENUATION_SCALE|GPUREG_LIGHT4_ATTENUATION_SCALE]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT4_DIST_ATTN_SCALE | |PICA_REG_FRAG_LIGHT4_DIST_ATTN_SCALE | ||
Line 2,064: | Line 2,064: | ||
|- | |- | ||
| 0190 | | 0190 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR0|GPUREG_LIGHT5_SPECULAR0]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT5_SPECULAR0 | |PICA_REG_FRAG_LIGHT5_SPECULAR0 | ||
|- | |- | ||
| 0191 | | 0191 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR1|GPUREG_LIGHT5_SPECULAR1]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT5_SPECULAR1 | |PICA_REG_FRAG_LIGHT5_SPECULAR1 | ||
|- | |- | ||
| 0192 | | 0192 | ||
| [[# | | [[#GPUREG_LIGHTx_DIFFUSE|GPUREG_LIGHT5_DIFFUSE]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT5_DIFFUSE | |PICA_REG_FRAG_LIGHT5_DIFFUSE | ||
|- | |- | ||
| 0193 | | 0193 | ||
| [[# | | [[#GPUREG_LIGHTx_AMBIENT|GPUREG_LIGHT5_AMBIENT]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT5_AMBIENT | |PICA_REG_FRAG_LIGHT5_AMBIENT | ||
|- | |- | ||
| 0194 | | 0194 | ||
| [[# | | [[#GPUREG_LIGHTx_XY|GPUREG_LIGHT5_XY]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT5_POSITION_XY | |PICA_REG_FRAG_LIGHT5_POSITION_XY | ||
|- | |- | ||
| 0195 | | 0195 | ||
| [[# | | [[#GPUREG_LIGHTx_Z|GPUREG_LIGHT5_Z]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT5_POSITION_Z | |PICA_REG_FRAG_LIGHT5_POSITION_Z | ||
|- | |- | ||
| 0196 | | 0196 | ||
| [[# | | [[#GPUREG_LIGHTx_SPOTDIR_XY|GPUREG_LIGHT5_SPOTDIR_XY]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT5_SPOT_XY | |PICA_REG_FRAG_LIGHT5_SPOT_XY | ||
|- | |- | ||
| 0197 | | 0197 | ||
| [[# | | [[#GPUREG_LIGHTx_SPOTDIR_Z|GPUREG_LIGHT5_SPOTDIR_Z]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT5_SPOT_Z | |PICA_REG_FRAG_LIGHT5_SPOT_Z | ||
Line 2,109: | Line 2,109: | ||
|- | |- | ||
| 0199 | | 0199 | ||
| [[# | | [[#GPUREG_LIGHTx_CONFIG|GPUREG_LIGHT5_CONFIG]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT5_TYPE | |PICA_REG_FRAG_LIGHT5_TYPE | ||
|- | |- | ||
| 019A | | 019A | ||
| [[# | | [[#GPUREG_LIGHTx_ATTENUATION_BIAS|GPUREG_LIGHT5_ATTENUATION_BIAS]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 019B | | 019B | ||
| [[# | | [[#GPUREG_LIGHTx_ATTENUATION_SCALE|GPUREG_LIGHT5_ATTENUATION_SCALE]] | ||
| | | | ||
| | | | ||
Line 2,144: | Line 2,144: | ||
|- | |- | ||
| 01A0 | | 01A0 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR0|GPUREG_LIGHT6_SPECULAR0]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT6_SPECULAR0 | |PICA_REG_FRAG_LIGHT6_SPECULAR0 | ||
|- | |- | ||
| 01A1 | | 01A1 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR1|GPUREG_LIGHT6_SPECULAR1]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT6_SPECULAR1 | |PICA_REG_FRAG_LIGHT6_SPECULAR1 | ||
|- | |- | ||
| 01A2 | | 01A2 | ||
| [[# | | [[#GPUREG_LIGHTx_DIFFUSE|GPUREG_LIGHT6_DIFFUSE]] | ||
| | | | ||
|PICA_REG_FRAG_LIGHT6_DIFFUSE | |PICA_REG_FRAG_LIGHT6_DIFFUSE | ||
|- | |- | ||
| 01A3 | | 01A3 | ||
| [[# | | [[#GPUREG_LIGHTx_AMBIENT|GPUREG_LIGHT6_AMBIENT]] | ||
| | | | ||
|PICA_REG_FRAG_LIGHT6_AMBIENT | |PICA_REG_FRAG_LIGHT6_AMBIENT | ||
|- | |- | ||
| 01A4 | | 01A4 | ||
| [[# | | [[#GPUREG_LIGHTx_XY|GPUREG_LIGHT6_XY]] | ||
| | | | ||
|PICA_REG_FRAG_LIGHT6_POSITION_XY | |PICA_REG_FRAG_LIGHT6_POSITION_XY | ||
|- | |- | ||
| 01A5 | | 01A5 | ||
| [[# | | [[#GPUREG_LIGHTx_Z|GPUREG_LIGHT6_Z]] | ||
| | | | ||
|PICA_REG_FRAG_LIGHT6_POSITION_Z | |PICA_REG_FRAG_LIGHT6_POSITION_Z | ||
|- | |- | ||
| 01A6 | | 01A6 | ||
| [[# | | [[#GPUREG_LIGHTx_SPOTDIR_XY|GPUREG_LIGHT6_SPOTDIR_XY]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT6_SPOT_XY | |PICA_REG_FRAG_LIGHT6_SPOT_XY | ||
|- | |- | ||
| 01A7 | | 01A7 | ||
| [[# | | [[#GPUREG_LIGHTx_SPOTDIR_Z|GPUREG_LIGHT6_SPOTDIR_Z]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT6_SPOT_Z | |PICA_REG_FRAG_LIGHT6_SPOT_Z | ||
Line 2,189: | Line 2,189: | ||
|- | |- | ||
| 01A9 | | 01A9 | ||
| [[# | | [[#GPUREG_LIGHTx_CONFIG|GPUREG_LIGHT6_CONFIG]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT6_TYPE | |PICA_REG_FRAG_LIGHT6_TYPE | ||
|- | |- | ||
| 01AA | | 01AA | ||
| [[# | | [[#GPUREG_LIGHTx_ATTENUATION_BIAS|GPUREG_LIGHT6_ATTENUATION_BIAS]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 01AB | | 01AB | ||
| [[# | | [[#GPUREG_LIGHTx_ATTENUATION_SCALE|GPUREG_LIGHT6_ATTENUATION_SCALE]] | ||
| | | | ||
| | | | ||
Line 2,224: | Line 2,224: | ||
|- | |- | ||
| 01B0 | | 01B0 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR0|GPUREG_LIGHT7_SPECULAR0]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT7_SPECULAR0 | |PICA_REG_FRAG_LIGHT7_SPECULAR0 | ||
|- | |- | ||
| 01B1 | | 01B1 | ||
| [[# | | [[#GPUREG_LIGHTx_SPECULAR1|GPUREG_LIGHT7_SPECULAR1]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT7_SPECULAR1 | |PICA_REG_FRAG_LIGHT7_SPECULAR1 | ||
|- | |- | ||
| 01B2 | | 01B2 | ||
| [[# | | [[#GPUREG_LIGHTx_DIFFUSE|GPUREG_LIGHT7_DIFFUSE]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT7_DIFFUSE | |PICA_REG_FRAG_LIGHT7_DIFFUSE | ||
|- | |- | ||
| 01B3 | | 01B3 | ||
| [[# | | [[#GPUREG_LIGHTx_AMBIENT|GPUREG_LIGHT7_AMBIENT]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT7_AMBIENT | |PICA_REG_FRAG_LIGHT7_AMBIENT | ||
|- | |- | ||
| 01B4 | | 01B4 | ||
| [[# | | [[#GPUREG_LIGHTx_XY|GPUREG_LIGHT7_XY]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT7_POSITION_XY | |PICA_REG_FRAG_LIGHT7_POSITION_XY | ||
|- | |- | ||
| 01B5 | | 01B5 | ||
| [[# | | [[#GPUREG_LIGHTx_Z|GPUREG_LIGHT7_Z]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT7_POSITION_Z | |PICA_REG_FRAG_LIGHT7_POSITION_Z | ||
|- | |- | ||
| 01B6 | | 01B6 | ||
| [[# | | [[#GPUREG_LIGHTx_SPOTDIR_XY|GPUREG_LIGHT7_SPOTDIR_XY]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT7_SPOT_XY | |PICA_REG_FRAG_LIGHT7_SPOT_XY | ||
|- | |- | ||
| 01B7 | | 01B7 | ||
| [[# | | [[#GPUREG_LIGHTx_SPOTDIR_Z|GPUREG_LIGHT7_SPOTDIR_Z]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT7_SPOT_Z | |PICA_REG_FRAG_LIGHT7_SPOT_Z | ||
Line 2,269: | Line 2,269: | ||
|- | |- | ||
| 01B9 | | 01B9 | ||
| [[# | | [[#GPUREG_LIGHTx_CONFIG|GPUREG_LIGHT7_CONFIG]] | ||
|? | |? | ||
|PICA_REG_FRAG_LIGHT7_TYPE | |PICA_REG_FRAG_LIGHT7_TYPE | ||
|- | |- | ||
| 01BA | | 01BA | ||
| [[# | | [[#GPUREG_LIGHTx_ATTENUATION_BIAS|GPUREG_LIGHT7_ATTENUATION_BIAS]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 01BB | | 01BB | ||
| [[# | | [[#GPUREG_LIGHTx_ATTENUATION_SCALE|GPUREG_LIGHT7_ATTENUATION_SCALE]] | ||
| | | | ||
| | | | ||
Line 4,240: | Line 4,240: | ||
=== GPUREG_LIGHTING_NUM_LIGHTS === | === GPUREG_LIGHTING_NUM_LIGHTS === | ||
The number of active lights (0..8) | The number of active lights (0..8) is written to this register. | ||
=== GPUREG_LIGHTING_LIGHT_PERMUTATION === | === GPUREG_LIGHTING_LIGHT_PERMUTATION === | ||
Line 4,418: | Line 4,418: | ||
|} | |} | ||
This register controls the scaling that is applied to the output | This register controls the scaling that is applied to the output of a LUT. | ||
=== GPUREG_LIGHTING_LUT_INDEX === | === GPUREG_LIGHTING_LUT_INDEX === | ||
This register controls which LUT and what offset into it the LUT_DATA register writes to. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 4,498: | Line 4,500: | ||
| Sign bit of the difference (0=positive, 1=negative) | | Sign bit of the difference (0=positive, 1=negative) | ||
|} | |} | ||
=== GPUREG_LIGHTING_AMBIENT === | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 0-7 | |||
| Blue component (0..255) | |||
|- | |||
| 10-17 | |||
| Green component (0..255) | |||
|- | |||
| 20-27 | |||
| Red component (0..255) | |||
|} | |||
This register contains the initial value of the fragment primary color before the partial colors that correspond to each enabled light are added. Usually set to material_emission + material_ambient*scene_ambient. | |||
=== GPUREG_LIGHTx_CONFIG === | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 0 | |||
| Light type (0 = directional light, 1 = positional light) | |||
|- | |||
| 1 | |||
| Two side diffuse (0=disable, 1=enable) | |||
|- | |||
| 2 | |||
| Geometric factor 0 (0=disable, 1=enable) | |||
|- | |||
| 3 | |||
| Geometric factor 1 (0=disable, 1=enable) | |||
|} | |||
=== GPUREG_LIGHTx_XY === | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 0-15 | |||
| X coordinate (float16 = 1.5.10) | |||
|- | |||
| 16-31 | |||
| Y coordinate (float16 = 1.5.10) | |||
|} | |||
These registers (along with _Z) represent the light position (for a positional light) or the light direction vector (for a directional light) of the corresponding light. | |||
=== GPUREG_LIGHTx_Z === | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 0-15 | |||
| Z coordinate (float16 = 1.5.10) | |||
|} | |||
These registers (along with _XY) represent the light position (for a positional light) or the light direction vector (for a directional light) of the corresponding light. | |||
=== GPUREG_LIGHTx_SPOTDIR_XY === | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 0-12 | |||
| X coordinate (2.11 signed fixed point) (Usually the input value is negated) | |||
|- | |||
| 16-28 | |||
| Y coordinate (2.11 signed fixed point) (Usually the input value is negated) | |||
|} | |||
These registers (along with _Z) represent the spot direction (unitary) vector of the corresponding light . | |||
=== GPUREG_LIGHTx_SPOTDIR_Z === | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 0-12 | |||
| Z coordinate (2.11 signed fixed point) (Usually the input value is negated) | |||
|} | |||
These registers (along with _XY) represent the spot direction (unitary) vector of the corresponding light. | |||
=== GPUREG_LIGHTx_ATTENUATION_BIAS === | |||
These registers contain the distance attenuation bias value (float20 = 1.7.12) of the corresponding light. | |||
=== GPUREG_LIGHTx_ATTENUATION_SCALE === | |||
These registers contain the distance attenuation scale value (float20 = 1.7.12) of the corresponding light. | |||
=== GPUREG_LIGHTx_AMBIENT === | |||
These registers contain the ambient color (same format as GPUREG_LIGHTING_AMBIENT) of the corresponding light. Usually set to material_ambient*lightX_ambient. | |||
=== GPUREG_LIGHTx_DIFFUSE === | |||
These registers contain the diffuse color (same format as GPUREG_LIGHTING_AMBIENT) of the corresponding light. Usually set to material_diffuse*lightX_diffuse. | |||
=== GPUREG_LIGHTx_SPECULAR0 === | |||
These registers contain the specular0 color (same format as GPUREG_LIGHTING_AMBIENT) of the corresponding light. Usually set to material_specular0*lightX_specular0. | |||
=== GPUREG_LIGHTx_SPECULAR1 === | |||
These registers contain the specular1 color (same format as GPUREG_LIGHTING_AMBIENT) of the corresponding light. Usually set to material_specular1*lightX_specular1. | |||
== Geometry pipeline registers == | == Geometry pipeline registers == |