Difference between revisions of "Nintendo OpenGL"
(added some known registers) |
(added some dmp_FragmentLightSource register info) |
||
Line 531: | Line 531: | ||
| dmp_FragmentLightSource[0].enabled | | dmp_FragmentLightSource[0].enabled | ||
| 0x0012BD24 | | 0x0012BD24 | ||
− | | | + | | 0xA20+0*0x70+0x00 |
− | | | + | | 0x01C5 |
|- | |- | ||
| 0x3A | | 0x3A | ||
Line 538: | Line 538: | ||
| dmp_FragmentLightSource[1].enabled | | dmp_FragmentLightSource[1].enabled | ||
| 0x0012BD24 | | 0x0012BD24 | ||
− | | | + | | 0xA20+1*0x70+0x00 |
− | | | + | | 0x01C5 |
|- | |- | ||
| 0x3B | | 0x3B | ||
Line 545: | Line 545: | ||
| dmp_FragmentLightSource[2].enabled | | dmp_FragmentLightSource[2].enabled | ||
| 0x0012BD24 | | 0x0012BD24 | ||
− | | | + | | 0xA20+2*0x70+0x00 |
− | | | + | | 0x01C5 |
|- | |- | ||
| 0x3C | | 0x3C | ||
Line 552: | Line 552: | ||
| dmp_FragmentLightSource[3].enabled | | dmp_FragmentLightSource[3].enabled | ||
| 0x0012BD24 | | 0x0012BD24 | ||
− | | | + | | 0xA20+3*0x70+0x00 |
− | | | + | | 0x01C5 |
|- | |- | ||
| 0x3D | | 0x3D | ||
Line 559: | Line 559: | ||
| dmp_FragmentLightSource[4].enabled | | dmp_FragmentLightSource[4].enabled | ||
| 0x0012BD24 | | 0x0012BD24 | ||
− | | | + | | 0xA20+4*0x70+0x00 |
− | | | + | | 0x01C5 |
|- | |- | ||
| 0x3E | | 0x3E | ||
Line 566: | Line 566: | ||
| dmp_FragmentLightSource[5].enabled | | dmp_FragmentLightSource[5].enabled | ||
| 0x0012BD24 | | 0x0012BD24 | ||
− | | | + | | 0xA20+5*0x70+0x00 |
− | | | + | | 0x01C5 |
|- | |- | ||
| 0x3F | | 0x3F | ||
Line 573: | Line 573: | ||
| dmp_FragmentLightSource[6].enabled | | dmp_FragmentLightSource[6].enabled | ||
| 0x0012BD24 | | 0x0012BD24 | ||
− | | | + | | 0xA20+6*0x70+0x00 |
− | | | + | | 0x01C5 |
|- | |- | ||
| 0x40 | | 0x40 | ||
Line 580: | Line 580: | ||
| dmp_FragmentLightSource[7].enabled | | dmp_FragmentLightSource[7].enabled | ||
| 0x0012BD24 | | 0x0012BD24 | ||
− | | | + | | 0xA20+7*0x70+0x00 |
− | | | + | | 0x01C5 |
|- | |- | ||
| 0x41 | | 0x41 | ||
Line 587: | Line 587: | ||
| dmp_FragmentLightSource[0].ambient | | dmp_FragmentLightSource[0].ambient | ||
| 0x001579CC | | 0x001579CC | ||
− | | | + | | 0xA20+0*0x70+0x04 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x42 | | 0x42 | ||
Line 594: | Line 594: | ||
| dmp_FragmentLightSource[1].ambient | | dmp_FragmentLightSource[1].ambient | ||
| 0x001579CC | | 0x001579CC | ||
− | | | + | | 0xA20+1*0x70+0x04 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x43 | | 0x43 | ||
Line 601: | Line 601: | ||
| dmp_FragmentLightSource[2].ambient | | dmp_FragmentLightSource[2].ambient | ||
| 0x001579CC | | 0x001579CC | ||
− | | | + | | 0xA20+2*0x70+0x04 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x44 | | 0x44 | ||
Line 608: | Line 608: | ||
| dmp_FragmentLightSource[3].ambient | | dmp_FragmentLightSource[3].ambient | ||
| 0x001579CC | | 0x001579CC | ||
− | | | + | | 0xA20+3*0x70+0x04 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x45 | | 0x45 | ||
Line 615: | Line 615: | ||
| dmp_FragmentLightSource[4].ambient | | dmp_FragmentLightSource[4].ambient | ||
| 0x001579CC | | 0x001579CC | ||
− | | | + | | 0xA20+4*0x70+0x04 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x46 | | 0x46 | ||
Line 622: | Line 622: | ||
| dmp_FragmentLightSource[5].ambient | | dmp_FragmentLightSource[5].ambient | ||
| 0x001579CC | | 0x001579CC | ||
− | | | + | | 0xA20+5*0x70+0x04 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x47 | | 0x47 | ||
Line 629: | Line 629: | ||
| dmp_FragmentLightSource[6].ambient | | dmp_FragmentLightSource[6].ambient | ||
| 0x001579CC | | 0x001579CC | ||
− | | | + | | 0xA20+6*0x70+0x04 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x48 | | 0x48 | ||
Line 636: | Line 636: | ||
| dmp_FragmentLightSource[7].ambient | | dmp_FragmentLightSource[7].ambient | ||
| 0x001579CC | | 0x001579CC | ||
− | | | + | | 0xA20+7*0x70+0x04 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x49 | | 0x49 | ||
Line 643: | Line 643: | ||
| dmp_FragmentLightSource[0].diffuse | | dmp_FragmentLightSource[0].diffuse | ||
| 0x00157C10 | | 0x00157C10 | ||
− | | | + | | 0xA20+0*0x70+0x14 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x4A | | 0x4A | ||
Line 650: | Line 650: | ||
| dmp_FragmentLightSource[1].diffuse | | dmp_FragmentLightSource[1].diffuse | ||
| 0x00157C10 | | 0x00157C10 | ||
− | | | + | | 0xA20+1*0x70+0x14 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x4B | | 0x4B | ||
Line 657: | Line 657: | ||
| dmp_FragmentLightSource[2].diffuse | | dmp_FragmentLightSource[2].diffuse | ||
| 0x00157C10 | | 0x00157C10 | ||
− | | | + | | 0xA20+2*0x70+0x14 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x4C | | 0x4C | ||
Line 664: | Line 664: | ||
| dmp_FragmentLightSource[3].diffuse | | dmp_FragmentLightSource[3].diffuse | ||
| 0x00157C10 | | 0x00157C10 | ||
− | | | + | | 0xA20+3*0x70+0x14 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x4D | | 0x4D | ||
Line 671: | Line 671: | ||
| dmp_FragmentLightSource[4].diffuse | | dmp_FragmentLightSource[4].diffuse | ||
| 0x00157C10 | | 0x00157C10 | ||
− | | | + | | 0xA20+4*0x70+0x14 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x4E | | 0x4E | ||
Line 678: | Line 678: | ||
| dmp_FragmentLightSource[5].diffuse | | dmp_FragmentLightSource[5].diffuse | ||
| 0x00157C10 | | 0x00157C10 | ||
− | | | + | | 0xA20+5*0x70+0x14 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x4F | | 0x4F | ||
Line 685: | Line 685: | ||
| dmp_FragmentLightSource[6].diffuse | | dmp_FragmentLightSource[6].diffuse | ||
| 0x00157C10 | | 0x00157C10 | ||
− | | | + | | 0xA20+6*0x70+0x14 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x50 | | 0x50 | ||
Line 692: | Line 692: | ||
| dmp_FragmentLightSource[7].diffuse | | dmp_FragmentLightSource[7].diffuse | ||
| 0x00157C10 | | 0x00157C10 | ||
− | | | + | | 0xA20+7*0x70+0x14 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x51 | | 0x51 | ||
Line 699: | Line 699: | ||
| dmp_FragmentLightSource[0].specular0 | | dmp_FragmentLightSource[0].specular0 | ||
| 0x00157E5C | | 0x00157E5C | ||
− | | | + | | 0xA20+0*0x70+0x24 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x52 | | 0x52 | ||
Line 706: | Line 706: | ||
| dmp_FragmentLightSource[1].specular0 | | dmp_FragmentLightSource[1].specular0 | ||
| 0x00157E5C | | 0x00157E5C | ||
− | | | + | | 0xA20+1*0x70+0x24 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x53 | | 0x53 | ||
Line 713: | Line 713: | ||
| dmp_FragmentLightSource[2].specular0 | | dmp_FragmentLightSource[2].specular0 | ||
| 0x00157E5C | | 0x00157E5C | ||
− | | | + | | 0xA20+2*0x70+0x24 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x54 | | 0x54 | ||
Line 720: | Line 720: | ||
| dmp_FragmentLightSource[3].specular0 | | dmp_FragmentLightSource[3].specular0 | ||
| 0x00157E5C | | 0x00157E5C | ||
− | | | + | | 0xA20+3*0x70+0x24 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x55 | | 0x55 | ||
Line 727: | Line 727: | ||
| dmp_FragmentLightSource[4].specular0 | | dmp_FragmentLightSource[4].specular0 | ||
| 0x00157E5C | | 0x00157E5C | ||
− | | | + | | 0xA20+4*0x70+0x24 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x56 | | 0x56 | ||
Line 734: | Line 734: | ||
| dmp_FragmentLightSource[5].specular0 | | dmp_FragmentLightSource[5].specular0 | ||
| 0x00157E5C | | 0x00157E5C | ||
− | | | + | | 0xA20+5*0x70+0x24 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x57 | | 0x57 | ||
Line 741: | Line 741: | ||
| dmp_FragmentLightSource[6].specular0 | | dmp_FragmentLightSource[6].specular0 | ||
| 0x00157E5C | | 0x00157E5C | ||
− | | | + | | 0xA20+6*0x70+0x24 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x58 | | 0x58 | ||
Line 748: | Line 748: | ||
| dmp_FragmentLightSource[7].specular0 | | dmp_FragmentLightSource[7].specular0 | ||
| 0x00157E5C | | 0x00157E5C | ||
− | | | + | | 0xA20+7*0x70+0x24 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x59 | | 0x59 | ||
Line 755: | Line 755: | ||
| dmp_FragmentLightSource[0].specular1 | | dmp_FragmentLightSource[0].specular1 | ||
| 0x001580B4 | | 0x001580B4 | ||
− | | | + | | 0xA20+0*0x70+0x34 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x5A | | 0x5A | ||
Line 762: | Line 762: | ||
| dmp_FragmentLightSource[1].specular1 | | dmp_FragmentLightSource[1].specular1 | ||
| 0x001580B4 | | 0x001580B4 | ||
− | | | + | | 0xA20+1*0x70+0x34 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x5B | | 0x5B | ||
Line 769: | Line 769: | ||
| dmp_FragmentLightSource[2].specular1 | | dmp_FragmentLightSource[2].specular1 | ||
| 0x001580B4 | | 0x001580B4 | ||
− | | | + | | 0xA20+2*0x70+0x34 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x5C | | 0x5C | ||
Line 776: | Line 776: | ||
| dmp_FragmentLightSource[3].specular1 | | dmp_FragmentLightSource[3].specular1 | ||
| 0x001580B4 | | 0x001580B4 | ||
− | | | + | | 0xA20+3*0x70+0x34 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x5D | | 0x5D | ||
Line 783: | Line 783: | ||
| dmp_FragmentLightSource[4].specular1 | | dmp_FragmentLightSource[4].specular1 | ||
| 0x001580B4 | | 0x001580B4 | ||
− | | | + | | 0xA20+4*0x70+0x34 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x5E | | 0x5E | ||
Line 790: | Line 790: | ||
| dmp_FragmentLightSource[5].specular1 | | dmp_FragmentLightSource[5].specular1 | ||
| 0x001580B4 | | 0x001580B4 | ||
− | | | + | | 0xA20+5*0x70+0x34 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x5F | | 0x5F | ||
Line 797: | Line 797: | ||
| dmp_FragmentLightSource[6].specular1 | | dmp_FragmentLightSource[6].specular1 | ||
| 0x001580B4 | | 0x001580B4 | ||
− | | | + | | 0xA20+6*0x70+0x34 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x60 | | 0x60 | ||
Line 804: | Line 804: | ||
| dmp_FragmentLightSource[7].specular1 | | dmp_FragmentLightSource[7].specular1 | ||
| 0x001580B4 | | 0x001580B4 | ||
− | | | + | | 0xA20+7*0x70+0x34 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x61 | | 0x61 | ||
Line 811: | Line 811: | ||
| dmp_FragmentLightSource[0].position | | dmp_FragmentLightSource[0].position | ||
| 0x001584B0 | | 0x001584B0 | ||
− | | | + | | 0xA20+0*0x70+0x44 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x62 | | 0x62 | ||
Line 818: | Line 818: | ||
| dmp_FragmentLightSource[1].position | | dmp_FragmentLightSource[1].position | ||
| 0x001584B0 | | 0x001584B0 | ||
− | | | + | | 0xA20+1*0x70+0x44 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x63 | | 0x63 | ||
Line 825: | Line 825: | ||
| dmp_FragmentLightSource[2].position | | dmp_FragmentLightSource[2].position | ||
| 0x001584B0 | | 0x001584B0 | ||
− | | | + | | 0xA20+2*0x70+0x44 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x64 | | 0x64 | ||
Line 832: | Line 832: | ||
| dmp_FragmentLightSource[3].position | | dmp_FragmentLightSource[3].position | ||
| 0x001584B0 | | 0x001584B0 | ||
− | | | + | | 0xA20+3*0x70+0x44 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x65 | | 0x65 | ||
Line 839: | Line 839: | ||
| dmp_FragmentLightSource[4].position | | dmp_FragmentLightSource[4].position | ||
| 0x001584B0 | | 0x001584B0 | ||
− | | | + | | 0xA20+4*0x70+0x44 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x66 | | 0x66 | ||
Line 846: | Line 846: | ||
| dmp_FragmentLightSource[5].position | | dmp_FragmentLightSource[5].position | ||
| 0x001584B0 | | 0x001584B0 | ||
− | | | + | | 0xA20+5*0x70+0x44 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x67 | | 0x67 | ||
Line 853: | Line 853: | ||
| dmp_FragmentLightSource[6].position | | dmp_FragmentLightSource[6].position | ||
| 0x001584B0 | | 0x001584B0 | ||
− | | | + | | 0xA20+6*0x70+0x44 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x68 | | 0x68 | ||
Line 860: | Line 860: | ||
| dmp_FragmentLightSource[7].position | | dmp_FragmentLightSource[7].position | ||
| 0x001584B0 | | 0x001584B0 | ||
− | | | + | | 0xA20+7*0x70+0x44 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x69 | | 0x69 | ||
Line 867: | Line 867: | ||
| dmp_FragmentLightSource[0].spotDirection | | dmp_FragmentLightSource[0].spotDirection | ||
| 0x001587E4 | | 0x001587E4 | ||
− | | | + | | 0xA20+0*0x70+0x54 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x6A | | 0x6A | ||
Line 874: | Line 874: | ||
| dmp_FragmentLightSource[1].spotDirection | | dmp_FragmentLightSource[1].spotDirection | ||
| 0x001587E4 | | 0x001587E4 | ||
− | | | + | | 0xA20+1*0x70+0x54 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x6B | | 0x6B | ||
Line 881: | Line 881: | ||
| dmp_FragmentLightSource[2].spotDirection | | dmp_FragmentLightSource[2].spotDirection | ||
| 0x001587E4 | | 0x001587E4 | ||
− | | | + | | 0xA20+2*0x70+0x54 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x6C | | 0x6C | ||
Line 888: | Line 888: | ||
| dmp_FragmentLightSource[3].spotDirection | | dmp_FragmentLightSource[3].spotDirection | ||
| 0x001587E4 | | 0x001587E4 | ||
− | | | + | | 0xA20+3*0x70+0x54 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x6D | | 0x6D | ||
Line 895: | Line 895: | ||
| dmp_FragmentLightSource[4].spotDirection | | dmp_FragmentLightSource[4].spotDirection | ||
| 0x001587E4 | | 0x001587E4 | ||
− | | | + | | 0xA20+4*0x70+0x54 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x6E | | 0x6E | ||
Line 902: | Line 902: | ||
| dmp_FragmentLightSource[5].spotDirection | | dmp_FragmentLightSource[5].spotDirection | ||
| 0x001587E4 | | 0x001587E4 | ||
− | | | + | | 0xA20+5*0x70+0x54 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x6F | | 0x6F | ||
Line 909: | Line 909: | ||
| dmp_FragmentLightSource[6].spotDirection | | dmp_FragmentLightSource[6].spotDirection | ||
| 0x001587E4 | | 0x001587E4 | ||
− | | | + | | 0xA20+6*0x70+0x54 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x70 | | 0x70 | ||
Line 916: | Line 916: | ||
| dmp_FragmentLightSource[7].spotDirection | | dmp_FragmentLightSource[7].spotDirection | ||
| 0x001587E4 | | 0x001587E4 | ||
− | | | + | | 0xA20+7*0x70+0x54 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x71 | | 0x71 | ||
Line 923: | Line 923: | ||
| dmp_FragmentLightSource[0].shadowed | | dmp_FragmentLightSource[0].shadowed | ||
| 0x0012C20C | | 0x0012C20C | ||
− | | | + | | 0x7C0 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x72 | | 0x72 | ||
Line 930: | Line 930: | ||
| dmp_FragmentLightSource[1].shadowed | | dmp_FragmentLightSource[1].shadowed | ||
| 0x0012C20C | | 0x0012C20C | ||
− | | | + | | 0x7C0 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x73 | | 0x73 | ||
Line 937: | Line 937: | ||
| dmp_FragmentLightSource[2].shadowed | | dmp_FragmentLightSource[2].shadowed | ||
| 0x0012C20C | | 0x0012C20C | ||
− | | | + | | 0x7C0 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x74 | | 0x74 | ||
Line 944: | Line 944: | ||
| dmp_FragmentLightSource[3].shadowed | | dmp_FragmentLightSource[3].shadowed | ||
| 0x0012C20C | | 0x0012C20C | ||
− | | | + | | 0x7C0 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x75 | | 0x75 | ||
Line 951: | Line 951: | ||
| dmp_FragmentLightSource[4].shadowed | | dmp_FragmentLightSource[4].shadowed | ||
| 0x0012C20C | | 0x0012C20C | ||
− | | | + | | 0x7C0 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x76 | | 0x76 | ||
Line 958: | Line 958: | ||
| dmp_FragmentLightSource[5].shadowed | | dmp_FragmentLightSource[5].shadowed | ||
| 0x0012C20C | | 0x0012C20C | ||
− | | | + | | 0x7C0 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x77 | | 0x77 | ||
Line 965: | Line 965: | ||
| dmp_FragmentLightSource[6].shadowed | | dmp_FragmentLightSource[6].shadowed | ||
| 0x0012C20C | | 0x0012C20C | ||
− | | | + | | 0x7C0 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x78 | | 0x78 | ||
Line 972: | Line 972: | ||
| dmp_FragmentLightSource[7].shadowed | | dmp_FragmentLightSource[7].shadowed | ||
| 0x0012C20C | | 0x0012C20C | ||
− | | | + | | 0x7C0 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x79 | | 0x79 | ||
Line 979: | Line 979: | ||
| dmp_FragmentLightSource[0].geomFactor0 | | dmp_FragmentLightSource[0].geomFactor0 | ||
| 0x0012C018 | | 0x0012C018 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x7A | | 0x7A | ||
Line 986: | Line 986: | ||
| dmp_FragmentLightSource[1].geomFactor0 | | dmp_FragmentLightSource[1].geomFactor0 | ||
| 0x0012C018 | | 0x0012C018 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x7B | | 0x7B | ||
Line 993: | Line 993: | ||
| dmp_FragmentLightSource[2].geomFactor0 | | dmp_FragmentLightSource[2].geomFactor0 | ||
| 0x0012C018 | | 0x0012C018 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x7C | | 0x7C | ||
Line 1,000: | Line 1,000: | ||
| dmp_FragmentLightSource[3].geomFactor0 | | dmp_FragmentLightSource[3].geomFactor0 | ||
| 0x0012C018 | | 0x0012C018 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x7D | | 0x7D | ||
Line 1,007: | Line 1,007: | ||
| dmp_FragmentLightSource[4].geomFactor0 | | dmp_FragmentLightSource[4].geomFactor0 | ||
| 0x0012C018 | | 0x0012C018 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x7E | | 0x7E | ||
Line 1,014: | Line 1,014: | ||
| dmp_FragmentLightSource[5].geomFactor0 | | dmp_FragmentLightSource[5].geomFactor0 | ||
| 0x0012C018 | | 0x0012C018 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x7F | | 0x7F | ||
Line 1,021: | Line 1,021: | ||
| dmp_FragmentLightSource[6].geomFactor0 | | dmp_FragmentLightSource[6].geomFactor0 | ||
| 0x0012C018 | | 0x0012C018 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x80 | | 0x80 | ||
Line 1,028: | Line 1,028: | ||
| dmp_FragmentLightSource[7].geomFactor0 | | dmp_FragmentLightSource[7].geomFactor0 | ||
| 0x0012C018 | | 0x0012C018 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x81 | | 0x81 | ||
Line 1,035: | Line 1,035: | ||
| dmp_FragmentLightSource[0].geomFactor1 | | dmp_FragmentLightSource[0].geomFactor1 | ||
| 0x0012C114 | | 0x0012C114 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x82 | | 0x82 | ||
Line 1,042: | Line 1,042: | ||
| dmp_FragmentLightSource[1].geomFactor1 | | dmp_FragmentLightSource[1].geomFactor1 | ||
| 0x0012C114 | | 0x0012C114 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x83 | | 0x83 | ||
Line 1,049: | Line 1,049: | ||
| dmp_FragmentLightSource[2].geomFactor1 | | dmp_FragmentLightSource[2].geomFactor1 | ||
| 0x0012C114 | | 0x0012C114 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x84 | | 0x84 | ||
Line 1,056: | Line 1,056: | ||
| dmp_FragmentLightSource[3].geomFactor1 | | dmp_FragmentLightSource[3].geomFactor1 | ||
| 0x0012C114 | | 0x0012C114 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x85 | | 0x85 | ||
Line 1,063: | Line 1,063: | ||
| dmp_FragmentLightSource[4].geomFactor1 | | dmp_FragmentLightSource[4].geomFactor1 | ||
| 0x0012C114 | | 0x0012C114 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x86 | | 0x86 | ||
Line 1,070: | Line 1,070: | ||
| dmp_FragmentLightSource[5].geomFactor1 | | dmp_FragmentLightSource[5].geomFactor1 | ||
| 0x0012C114 | | 0x0012C114 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x87 | | 0x87 | ||
Line 1,077: | Line 1,077: | ||
| dmp_FragmentLightSource[6].geomFactor1 | | dmp_FragmentLightSource[6].geomFactor1 | ||
| 0x0012C114 | | 0x0012C114 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x88 | | 0x88 | ||
Line 1,084: | Line 1,084: | ||
| dmp_FragmentLightSource[7].geomFactor1 | | dmp_FragmentLightSource[7].geomFactor1 | ||
| 0x0012C114 | | 0x0012C114 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x89 | | 0x89 | ||
Line 1,091: | Line 1,091: | ||
| dmp_FragmentLightSource[0].twoSideDiffuse | | dmp_FragmentLightSource[0].twoSideDiffuse | ||
| 0x0012BF10 | | 0x0012BF10 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x8A | | 0x8A | ||
Line 1,098: | Line 1,098: | ||
| dmp_FragmentLightSource[1].twoSideDiffuse | | dmp_FragmentLightSource[1].twoSideDiffuse | ||
| 0x0012BF10 | | 0x0012BF10 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x8B | | 0x8B | ||
Line 1,105: | Line 1,105: | ||
| dmp_FragmentLightSource[2].twoSideDiffuse | | dmp_FragmentLightSource[2].twoSideDiffuse | ||
| 0x0012BF10 | | 0x0012BF10 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x8C | | 0x8C | ||
Line 1,112: | Line 1,112: | ||
| dmp_FragmentLightSource[3].twoSideDiffuse | | dmp_FragmentLightSource[3].twoSideDiffuse | ||
| 0x0012BF10 | | 0x0012BF10 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x8D | | 0x8D | ||
Line 1,119: | Line 1,119: | ||
| dmp_FragmentLightSource[4].twoSideDiffuse | | dmp_FragmentLightSource[4].twoSideDiffuse | ||
| 0x0012BF10 | | 0x0012BF10 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x8E | | 0x8E | ||
Line 1,126: | Line 1,126: | ||
| dmp_FragmentLightSource[5].twoSideDiffuse | | dmp_FragmentLightSource[5].twoSideDiffuse | ||
| 0x0012BF10 | | 0x0012BF10 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x8F | | 0x8F | ||
Line 1,133: | Line 1,133: | ||
| dmp_FragmentLightSource[6].twoSideDiffuse | | dmp_FragmentLightSource[6].twoSideDiffuse | ||
| 0x0012BF10 | | 0x0012BF10 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x90 | | 0x90 | ||
Line 1,140: | Line 1,140: | ||
| dmp_FragmentLightSource[7].twoSideDiffuse | | dmp_FragmentLightSource[7].twoSideDiffuse | ||
| 0x0012BF10 | | 0x0012BF10 | ||
− | | | + | | 0x7D8 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x91 | | 0x91 | ||
Line 1,147: | Line 1,147: | ||
| dmp_FragmentLightSource[0].samplerSP | | dmp_FragmentLightSource[0].samplerSP | ||
| 0x0012C31C | | 0x0012C31C | ||
− | | | + | | 0xA20+0*0x70+0x60 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x92 | | 0x92 | ||
Line 1,154: | Line 1,154: | ||
| dmp_FragmentLightSource[1].samplerSP | | dmp_FragmentLightSource[1].samplerSP | ||
| 0x0012C31C | | 0x0012C31C | ||
− | | | + | | 0xA20+1*0x70+0x60 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x93 | | 0x93 | ||
Line 1,161: | Line 1,161: | ||
| dmp_FragmentLightSource[2].samplerSP | | dmp_FragmentLightSource[2].samplerSP | ||
| 0x0012C31C | | 0x0012C31C | ||
− | | | + | | 0xA20+2*0x70+0x60 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x94 | | 0x94 | ||
Line 1,168: | Line 1,168: | ||
| dmp_FragmentLightSource[3].samplerSP | | dmp_FragmentLightSource[3].samplerSP | ||
| 0x0012C31C | | 0x0012C31C | ||
− | | | + | | 0xA20+3*0x70+0x60 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x95 | | 0x95 | ||
Line 1,175: | Line 1,175: | ||
| dmp_FragmentLightSource[4].samplerSP | | dmp_FragmentLightSource[4].samplerSP | ||
| 0x0012C31C | | 0x0012C31C | ||
− | | | + | | 0xA20+4*0x70+0x60 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x96 | | 0x96 | ||
Line 1,182: | Line 1,182: | ||
| dmp_FragmentLightSource[5].samplerSP | | dmp_FragmentLightSource[5].samplerSP | ||
| 0x0012C31C | | 0x0012C31C | ||
− | | | + | | 0xA20+5*0x70+0x60 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x97 | | 0x97 | ||
Line 1,189: | Line 1,189: | ||
| dmp_FragmentLightSource[6].samplerSP | | dmp_FragmentLightSource[6].samplerSP | ||
| 0x0012C31C | | 0x0012C31C | ||
− | | | + | | 0xA20+6*0x70+0x60 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x98 | | 0x98 | ||
Line 1,196: | Line 1,196: | ||
| dmp_FragmentLightSource[7].samplerSP | | dmp_FragmentLightSource[7].samplerSP | ||
| 0x0012C31C | | 0x0012C31C | ||
− | | | + | | 0xA20+7*0x70+0x60 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x99 | | 0x99 | ||
Line 1,204: | Line 1,204: | ||
| 0x0012C380 | | 0x0012C380 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x9A | | 0x9A | ||
Line 1,211: | Line 1,211: | ||
| 0x0012C380 | | 0x0012C380 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x9B | | 0x9B | ||
Line 1,218: | Line 1,218: | ||
| 0x0012C380 | | 0x0012C380 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x9C | | 0x9C | ||
Line 1,225: | Line 1,225: | ||
| 0x0012C380 | | 0x0012C380 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x9D | | 0x9D | ||
Line 1,232: | Line 1,232: | ||
| 0x0012C380 | | 0x0012C380 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x9E | | 0x9E | ||
Line 1,239: | Line 1,239: | ||
| 0x0012C380 | | 0x0012C380 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0x9F | | 0x9F | ||
Line 1,246: | Line 1,246: | ||
| 0x0012C380 | | 0x0012C380 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xA0 | | 0xA0 | ||
Line 1,253: | Line 1,253: | ||
| 0x0012C380 | | 0x0012C380 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xA1 | | 0xA1 | ||
Line 1,259: | Line 1,259: | ||
| dmp_FragmentLightSource[0].distanceAttenuationBias | | dmp_FragmentLightSource[0].distanceAttenuationBias | ||
| 0x00158AE8 | | 0x00158AE8 | ||
− | | | + | | 0xA20+0*0x70+0x64 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xA2 | | 0xA2 | ||
Line 1,266: | Line 1,266: | ||
| dmp_FragmentLightSource[1].distanceAttenuationBias | | dmp_FragmentLightSource[1].distanceAttenuationBias | ||
| 0x00158AE8 | | 0x00158AE8 | ||
− | | | + | | 0xA20+1*0x70+0x64 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xA3 | | 0xA3 | ||
Line 1,273: | Line 1,273: | ||
| dmp_FragmentLightSource[2].distanceAttenuationBias | | dmp_FragmentLightSource[2].distanceAttenuationBias | ||
| 0x00158AE8 | | 0x00158AE8 | ||
− | | | + | | 0xA20+2*0x70+0x64 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xA4 | | 0xA4 | ||
Line 1,280: | Line 1,280: | ||
| dmp_FragmentLightSource[3].distanceAttenuationBias | | dmp_FragmentLightSource[3].distanceAttenuationBias | ||
| 0x00158AE8 | | 0x00158AE8 | ||
− | | | + | | 0xA20+3*0x70+0x64 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xA5 | | 0xA5 | ||
Line 1,287: | Line 1,287: | ||
| dmp_FragmentLightSource[4].distanceAttenuationBias | | dmp_FragmentLightSource[4].distanceAttenuationBias | ||
| 0x00158AE8 | | 0x00158AE8 | ||
− | | | + | | 0xA20+4*0x70+0x64 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xA6 | | 0xA6 | ||
Line 1,294: | Line 1,294: | ||
| dmp_FragmentLightSource[5].distanceAttenuationBias | | dmp_FragmentLightSource[5].distanceAttenuationBias | ||
| 0x00158AE8 | | 0x00158AE8 | ||
− | | | + | | 0xA20+5*0x70+0x64 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xA7 | | 0xA7 | ||
Line 1,301: | Line 1,301: | ||
| dmp_FragmentLightSource[6].distanceAttenuationBias | | dmp_FragmentLightSource[6].distanceAttenuationBias | ||
| 0x00158AE8 | | 0x00158AE8 | ||
− | | | + | | 0xA20+6*0x70+0x64 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xA8 | | 0xA8 | ||
Line 1,308: | Line 1,308: | ||
| dmp_FragmentLightSource[7].distanceAttenuationBias | | dmp_FragmentLightSource[7].distanceAttenuationBias | ||
| 0x00158AE8 | | 0x00158AE8 | ||
− | | | + | | 0xA20+7*0x70+0x64 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xA9 | | 0xA9 | ||
Line 1,315: | Line 1,315: | ||
| dmp_FragmentLightSource[0].distanceAttenuationScale | | dmp_FragmentLightSource[0].distanceAttenuationScale | ||
| 0x00158C44 | | 0x00158C44 | ||
− | | | + | | 0xA20+0*0x70+0x68 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xAA | | 0xAA | ||
Line 1,322: | Line 1,322: | ||
| dmp_FragmentLightSource[1].distanceAttenuationScale | | dmp_FragmentLightSource[1].distanceAttenuationScale | ||
| 0x00158C44 | | 0x00158C44 | ||
− | | | + | | 0xA20+1*0x70+0x68 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xAB | | 0xAB | ||
Line 1,329: | Line 1,329: | ||
| dmp_FragmentLightSource[2].distanceAttenuationScale | | dmp_FragmentLightSource[2].distanceAttenuationScale | ||
| 0x00158C44 | | 0x00158C44 | ||
− | | | + | | 0xA20+2*0x70+0x68 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xAC | | 0xAC | ||
Line 1,336: | Line 1,336: | ||
| dmp_FragmentLightSource[3].distanceAttenuationScale | | dmp_FragmentLightSource[3].distanceAttenuationScale | ||
| 0x00158C44 | | 0x00158C44 | ||
− | | | + | | 0xA20+3*0x70+0x68 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xAD | | 0xAD | ||
Line 1,343: | Line 1,343: | ||
| dmp_FragmentLightSource[4].distanceAttenuationScale | | dmp_FragmentLightSource[4].distanceAttenuationScale | ||
| 0x00158C44 | | 0x00158C44 | ||
− | | | + | | 0xA20+4*0x70+0x68 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xAE | | 0xAE | ||
Line 1,350: | Line 1,350: | ||
| dmp_FragmentLightSource[5].distanceAttenuationScale | | dmp_FragmentLightSource[5].distanceAttenuationScale | ||
| 0x00158C44 | | 0x00158C44 | ||
− | | | + | | 0xA20+5*0x70+0x68 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xAF | | 0xAF | ||
Line 1,357: | Line 1,357: | ||
| dmp_FragmentLightSource[6].distanceAttenuationScale | | dmp_FragmentLightSource[6].distanceAttenuationScale | ||
| 0x00158C44 | | 0x00158C44 | ||
− | | | + | | 0xA20+6*0x70+0x68 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xB0 | | 0xB0 | ||
Line 1,364: | Line 1,364: | ||
| dmp_FragmentLightSource[7].distanceAttenuationScale | | dmp_FragmentLightSource[7].distanceAttenuationScale | ||
| 0x00158C44 | | 0x00158C44 | ||
− | | | + | | 0xA20+7*0x70+0x68 |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xB1 | | 0xB1 | ||
Line 1,372: | Line 1,372: | ||
| 0x0012C4A0 | | 0x0012C4A0 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xB2 | | 0xB2 | ||
Line 1,379: | Line 1,379: | ||
| 0x0012C4A0 | | 0x0012C4A0 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xB3 | | 0xB3 | ||
Line 1,386: | Line 1,386: | ||
| 0x0012C4A0 | | 0x0012C4A0 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xB4 | | 0xB4 | ||
Line 1,393: | Line 1,393: | ||
| 0x0012C4A0 | | 0x0012C4A0 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xB5 | | 0xB5 | ||
Line 1,400: | Line 1,400: | ||
| 0x0012C4A0 | | 0x0012C4A0 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xB6 | | 0xB6 | ||
Line 1,407: | Line 1,407: | ||
| 0x0012C4A0 | | 0x0012C4A0 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xB7 | | 0xB7 | ||
Line 1,414: | Line 1,414: | ||
| 0x0012C4A0 | | 0x0012C4A0 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xB8 | | 0xB8 | ||
Line 1,421: | Line 1,421: | ||
| 0x0012C4A0 | | 0x0012C4A0 | ||
| ? | | ? | ||
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xB9 | | 0xB9 | ||
Line 1,427: | Line 1,427: | ||
| dmp_FragmentLightSource[0].samplerDA | | dmp_FragmentLightSource[0].samplerDA | ||
| 0x0012C578 | | 0x0012C578 | ||
− | | ? | + | | 0xA20+0*0x70+0x6C ? |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xBA | | 0xBA | ||
Line 1,434: | Line 1,434: | ||
| dmp_FragmentLightSource[1].samplerDA | | dmp_FragmentLightSource[1].samplerDA | ||
| 0x0012C578 | | 0x0012C578 | ||
− | | ? | + | | 0xA20+1*0x70+0x6C ? |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xBB | | 0xBB | ||
Line 1,441: | Line 1,441: | ||
| dmp_FragmentLightSource[2].samplerDA | | dmp_FragmentLightSource[2].samplerDA | ||
| 0x0012C578 | | 0x0012C578 | ||
− | | ? | + | | 0xA20+2*0x70+0x6C ? |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xBC | | 0xBC | ||
Line 1,448: | Line 1,448: | ||
| dmp_FragmentLightSource[3].samplerDA | | dmp_FragmentLightSource[3].samplerDA | ||
| 0x0012C578 | | 0x0012C578 | ||
− | | ? | + | | 0xA20+3*0x70+0x6C ? |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xBD | | 0xBD | ||
Line 1,455: | Line 1,455: | ||
| dmp_FragmentLightSource[4].samplerDA | | dmp_FragmentLightSource[4].samplerDA | ||
| 0x0012C578 | | 0x0012C578 | ||
− | | ? | + | | 0xA20+4*0x70+0x6C ? |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xBE | | 0xBE | ||
Line 1,462: | Line 1,462: | ||
| dmp_FragmentLightSource[5].samplerDA | | dmp_FragmentLightSource[5].samplerDA | ||
| 0x0012C578 | | 0x0012C578 | ||
− | | ? | + | | 0xA20+5*0x70+0x6C ? |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xBF | | 0xBF | ||
Line 1,469: | Line 1,469: | ||
| dmp_FragmentLightSource[6].samplerDA | | dmp_FragmentLightSource[6].samplerDA | ||
| 0x0012C578 | | 0x0012C578 | ||
− | | ? | + | | 0xA20+6*0x70+0x6C ? |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xC0 | | 0xC0 | ||
Line 1,476: | Line 1,476: | ||
| dmp_FragmentLightSource[7].samplerDA | | dmp_FragmentLightSource[7].samplerDA | ||
| 0x0012C578 | | 0x0012C578 | ||
− | | ? | + | | 0xA20+7*0x70+0x6C ? |
− | | ? | + | | 0x01C8 ? |
|- | |- | ||
| 0xC1 | | 0xC1 |
Revision as of 02:15, 11 November 2014
This page's goal is to describe parts of Nintendo's OpenGL implementation for the 3DS as we reverse engineer it to better understand how to use the PICA200. Some of the information on this page is specific to Steeldiver : Sub Wars. The reason for this is that it's a fairly graphics-heavy game that's available on the eShop for free, so it seems like a good target for a community REing effort.
Description
The PICA200 is an opengl ES 1.1 compliant GPU manufactured by DMP. It comes loaded with a number of extensions that make it similar to an openGL ES 2.0 compliant GPU (ability to run programmable vertex/geometry shaders, for instance). Because of this, Nintendo wrapped GPU access into an openGL ES 2.0 implementation with some limitations. As the fragment stage of the pipeline is non-programmable, Nintendo instead gives developers the ability to configure a number of fragment-related values through glGetUniformLocation and glUniformXX. See below for the full list.
Shader program structure
When uniform values are set (in shm_uniformfv/shm_uniformiv), they are attached to the current shader program and stored into the corresponding shader program structure. They are later written to the GPU command buffer in __shv_validateShaderValidator or equivalent.
Shader program struct :
Offset | Size | Description |
---|---|---|
0x000 | 0x04 | Value 0x0 ? |
0x004 | 0x04 | Program ID |
0x008 | 0x04 | Value -1 ? |
0x01C | 0x04 | Pointer to program-specific uniform table |
0x020 | 0x04 | Total number of uniforms for program |
0x028 | 0x04 | Number of program-specific uniforms |
0x64C | 0x04 | Value for GPU register 0x0104 |
0x7C0 | 0x04 | Bitfield containing dmp_FragmentLightSource[n].shadowed values |
0x7D8 | 0x04 | Bitfield containing dmp_FragmentLightSource[n].geomFactor0 / dmp_FragmentLightSource[n].geomFactor1 / dmp_FragmentLightSource[n].twoSideDiffuse values |
0xA20 | 0x70*8 | Table of structs for 8 dmp_FragmentLightSource |
dmp_FragmentLightSource struct:
Offset | Size | Description |
---|---|---|
0x00 | 0x01 | dmp_FragmentLightSource[k].enabled |
0x04 | 0x10 | dmp_FragmentLightSource[k].ambient (float[4]) |
0x14 | 0x10 | dmp_FragmentLightSource[k].diffuse (float[4]) |
0x24 | 0x10 | dmp_FragmentLightSource[k].specular0 (float[4]) |
0x34 | 0x10 | dmp_FragmentLightSource[k].specular1 (float[4]) |
0x44 | 0x10 | dmp_FragmentLightSource[k].position (float[4]) |
0x54 | 0x10 | dmp_FragmentLightSource[k].spotDirection (float[3]) |
0x60 | 0x04 | dmp_FragmentLightSource[k].samplerSP (u32) |
0x64 | 0x04 | dmp_FragmentLightSource[k].distanceAttenuationBias (float) |
0x68 | 0x04 | dmp_FragmentLightSource[k].distanceAttenuationScale (float) |
Proposed REing methodology
1. Choose a "uniform" you want to RE below
2. Take note of its ID and type !
3. Depending on whether its a float or not, go through the gigantic switches in shm_uniformfv or shm_uniformiv (non-float) based on the ID of your uniform (in the case of steeldiver: sub wars you can now just go directly to the handler as it's listed in the table below)
4. Once you find the piece of code specific to your uniform, take note of how the values passed to shm_uniformfv/shm_uniformiv are written to the shader object
5. Go through __shv_validateShaderValidator looking for where those fields written to in shm_uniformfv/shm_uniformiv are used and written to the GPU command buffer either directly or through __cb_writeRegs, __cb_multiWriteReg or __cb_fillRegs.
6. Document findings on 3Dbrew ! (that's the most important step)
Fragment "uniform" list
Uniform ID | Type | Name | Handler address (Steeldiver : Sub Wars) | Shader Program struct offset | GPU Register |
---|---|---|---|---|---|
0x0 | GL_BOOL | dmp_Texture[0].perspectiveShadow | 0x0012A504 | ? | ? |
0x1 | GL_FLOAT | dmp_Texture[0].shadowZBias | 0x00155584 | ? | ? |
0x2 | GL_FLOAT | dmp_Texture[0].shadowZScale | 0x001556A0 | ? | ? |
0x3 | GL_INT | dmp_Texture[0].samplerType | 0x0012A5D0 | ? | ? |
0x4 | GL_INT | dmp_Texture[1].samplerType | 0x0012A6F8 | ? | ? |
0x5 | GL_INT | dmp_Texture[2].samplerType | 0x0012A774 | ? | ? |
0x6 | GL_INT | dmp_Texture[3].samplerType | 0x0012A7F0 | ? | ? |
0x7 | GL_INT | dmp_Texture[2].texcoord | 0x0012A8B4 | ? | ? |
0x8 | GL_INT | dmp_Texture[3].texcoord | 0x0012A97C | ? | ? |
0x9 | GL_INT | dmp_Texture[3].ptRgbMap | 0x0012AA54 | ? | ? |
0xA | GL_INT | dmp_Texture[3].ptAlphaMap | 0x0012AB94 | ? | ? |
0xB | GL_BOOL | dmp_Texture[3].ptAlphaSeparate | 0x0012ACD4 | ? | ? |
0xC | GL_INT | dmp_Texture[3].ptClampU | 0x0012ADB8 | ? | ? |
0xD | GL_INT | dmp_Texture[3].ptClampV | 0x0012AEC0 | ? | ? |
0xE | GL_INT | dmp_Texture[3].ptShiftU | 0x0012AFD0 | ? | ? |
0xF | GL_INT | dmp_Texture[3].ptShiftV | 0x0012B0A0 | ? | ? |
0x10 | GL_INT | dmp_Texture[3].ptMinFilter | 0x0012B168 | ? | ? |
0x11 | GL_INT | dmp_Texture[3].ptTexWidth | 0x0012B270 | ? | ? |
0x12 | GL_INT | dmp_Texture[3].ptTexOffset | 0x0012B334 | ? | ? |
0x13 | GL_FLOAT | dmp_Texture[3].ptTexBias | 0x001556B4 | ? | ? |
0x14 | GL_BOOL | dmp_Texture[3].ptNoiseEnable | 0x0012B3E0 | ? | ? |
0x15 | GL_FLOAT_VEC3 | dmp_Texture[3].ptNoiseU | 0x00155878 | ? | ? |
0x16 | GL_FLOAT_VEC3 | dmp_Texture[3].ptNoiseV | 0x00155A7C | ? | ? |
0x17 | GL_SAMPLER_1D | dmp_Texture[3].ptSamplerRgbMap | 0x0012B4B0 | ? | ? |
0x18 | GL_SAMPLER_1D | dmp_Texture[3].ptSamplerAlphaMap | 0x0012B4F4 | ? | ? |
0x19 | GL_SAMPLER_1D | dmp_Texture[3].ptSamplerNoiseMap | 0x0012B540 | ? | ? |
0x1A | GL_SAMPLER_1D | dmp_Texture[3].ptSamplerR | 0x0012B58C | ? | ? |
0x1B | GL_SAMPLER_1D | dmp_Texture[3].ptSamplerG | 0x0012B5D8 | ? | ? |
0x1C | GL_SAMPLER_1D | dmp_Texture[3].ptSamplerB | 0x0012B624 | ? | ? |
0x1D | GL_SAMPLER_1D | dmp_Texture[3].ptSamplerA | 0x0012B670 | ? | ? |
0x1E | GL_INT | dmp_FragOperation.mode | 0x0012B6BC | ? | ? |
0x1F | GL_FLOAT | dmp_FragOperation.penumbraScale | 0x00155C98 | ? | ? |
0x20 | GL_FLOAT | dmp_FragOperation.penumbraBias | 0x00155D8C | ? | ? |
0x21 | GL_FLOAT | dmp_FragOperation.wScale | 0x00155E9C | ? | ? |
0x22 | GL_BOOL | dmp_FragOperation.enableClippingPlane | 0x0012EAEC | ? | ? |
0x23 | GL_FLOAT_VEC4 | dmp_FragOperation.clippingPlane | 0x00159474 | ? | ? |
0x24 | GL_BOOL | dmp_FragOperation.enableAlphaTest | 0x0012EBAC | ? | ? |
0x25 | GL_INT | dmp_FragOperation.alphaTestFunc | 0x0012EC64 | ? | ? |
0x26 | GL_FLOAT | dmp_FragOperation.alphaRefValue | 0x0015971C | ? | ? |
0x27 | GL_FLOAT_VEC3 | dmp_Gas.lightXY | 0x001560EC | ? | ? |
0x28 | GL_FLOAT_VEC4 | dmp_Gas.lightZ | 0x00156268 | ? | ? |
0x29 | GL_FLOAT | dmp_Gas.deltaZ | 0x001564D4 | ? | ? |
0x2A | GL_FLOAT | dmp_Gas.accMax | 0x001565C0 | ? | ? |
0x2B | GL_BOOL | dmp_Gas.autoAcc | 0x0012B790 | ? | ? |
0x2C | GL_FLOAT | dmp_Gas.attenuation | 0x00156684 | ? | ? |
0x2D | GL_INT | dmp_Gas.colorLutInput | 0x0012B7A4 | ? | ? |
0x2E | GL_INT | dmp_Gas.shadingDensitySrc | 0x0012B854 | ? | ? |
0x2F | GL_SAMPLER_1D | dmp_Gas.samplerTR | 0x0012B910 | ? | ? |
0x30 | GL_SAMPLER_1D | dmp_Gas.samplerTG | 0x0012B95C | ? | ? |
0x31 | GL_SAMPLER_1D | dmp_Gas.samplerTB | 0x0012B9A8 | ? | ? |
0x32 | GL_BOOL | dmp_FragmentLighting.enabled | 0x0012B9F4 | ? | ? |
0x33 | GL_FLOAT_VEC4 | dmp_FragmentLighting.ambient | 0x00156744 | ? | ? |
0x34 | GL_FLOAT_VEC4 | dmp_FragmentMaterial.emission | 0x00156E1C | ? | ? |
0x35 | GL_FLOAT_VEC4 | dmp_FragmentMaterial.ambient | 0x0015696C | ? | ? |
0x36 | GL_FLOAT_VEC4 | dmp_FragmentMaterial.diffuse | 0x00157048 | ? | ? |
0x37 | GL_FLOAT_VEC4 | dmp_FragmentMaterial.specular0 | 0x001572E0 | ? | ? |
0x38 | GL_FLOAT_VEC4 | dmp_FragmentMaterial.specular1 | 0x0015756C | ? | ? |
0x39 | GL_BOOL | dmp_FragmentLightSource[0].enabled | 0x0012BD24 | 0xA20+0*0x70+0x00 | 0x01C5 |
0x3A | GL_BOOL | dmp_FragmentLightSource[1].enabled | 0x0012BD24 | 0xA20+1*0x70+0x00 | 0x01C5 |
0x3B | GL_BOOL | dmp_FragmentLightSource[2].enabled | 0x0012BD24 | 0xA20+2*0x70+0x00 | 0x01C5 |
0x3C | GL_BOOL | dmp_FragmentLightSource[3].enabled | 0x0012BD24 | 0xA20+3*0x70+0x00 | 0x01C5 |
0x3D | GL_BOOL | dmp_FragmentLightSource[4].enabled | 0x0012BD24 | 0xA20+4*0x70+0x00 | 0x01C5 |
0x3E | GL_BOOL | dmp_FragmentLightSource[5].enabled | 0x0012BD24 | 0xA20+5*0x70+0x00 | 0x01C5 |
0x3F | GL_BOOL | dmp_FragmentLightSource[6].enabled | 0x0012BD24 | 0xA20+6*0x70+0x00 | 0x01C5 |
0x40 | GL_BOOL | dmp_FragmentLightSource[7].enabled | 0x0012BD24 | 0xA20+7*0x70+0x00 | 0x01C5 |
0x41 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[0].ambient | 0x001579CC | 0xA20+0*0x70+0x04 | 0x01C8 ? |
0x42 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[1].ambient | 0x001579CC | 0xA20+1*0x70+0x04 | 0x01C8 ? |
0x43 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[2].ambient | 0x001579CC | 0xA20+2*0x70+0x04 | 0x01C8 ? |
0x44 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[3].ambient | 0x001579CC | 0xA20+3*0x70+0x04 | 0x01C8 ? |
0x45 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[4].ambient | 0x001579CC | 0xA20+4*0x70+0x04 | 0x01C8 ? |
0x46 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[5].ambient | 0x001579CC | 0xA20+5*0x70+0x04 | 0x01C8 ? |
0x47 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[6].ambient | 0x001579CC | 0xA20+6*0x70+0x04 | 0x01C8 ? |
0x48 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[7].ambient | 0x001579CC | 0xA20+7*0x70+0x04 | 0x01C8 ? |
0x49 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[0].diffuse | 0x00157C10 | 0xA20+0*0x70+0x14 | 0x01C8 ? |
0x4A | GL_FLOAT_VEC4 | dmp_FragmentLightSource[1].diffuse | 0x00157C10 | 0xA20+1*0x70+0x14 | 0x01C8 ? |
0x4B | GL_FLOAT_VEC4 | dmp_FragmentLightSource[2].diffuse | 0x00157C10 | 0xA20+2*0x70+0x14 | 0x01C8 ? |
0x4C | GL_FLOAT_VEC4 | dmp_FragmentLightSource[3].diffuse | 0x00157C10 | 0xA20+3*0x70+0x14 | 0x01C8 ? |
0x4D | GL_FLOAT_VEC4 | dmp_FragmentLightSource[4].diffuse | 0x00157C10 | 0xA20+4*0x70+0x14 | 0x01C8 ? |
0x4E | GL_FLOAT_VEC4 | dmp_FragmentLightSource[5].diffuse | 0x00157C10 | 0xA20+5*0x70+0x14 | 0x01C8 ? |
0x4F | GL_FLOAT_VEC4 | dmp_FragmentLightSource[6].diffuse | 0x00157C10 | 0xA20+6*0x70+0x14 | 0x01C8 ? |
0x50 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[7].diffuse | 0x00157C10 | 0xA20+7*0x70+0x14 | 0x01C8 ? |
0x51 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[0].specular0 | 0x00157E5C | 0xA20+0*0x70+0x24 | 0x01C8 ? |
0x52 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[1].specular0 | 0x00157E5C | 0xA20+1*0x70+0x24 | 0x01C8 ? |
0x53 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[2].specular0 | 0x00157E5C | 0xA20+2*0x70+0x24 | 0x01C8 ? |
0x54 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[3].specular0 | 0x00157E5C | 0xA20+3*0x70+0x24 | 0x01C8 ? |
0x55 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[4].specular0 | 0x00157E5C | 0xA20+4*0x70+0x24 | 0x01C8 ? |
0x56 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[5].specular0 | 0x00157E5C | 0xA20+5*0x70+0x24 | 0x01C8 ? |
0x57 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[6].specular0 | 0x00157E5C | 0xA20+6*0x70+0x24 | 0x01C8 ? |
0x58 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[7].specular0 | 0x00157E5C | 0xA20+7*0x70+0x24 | 0x01C8 ? |
0x59 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[0].specular1 | 0x001580B4 | 0xA20+0*0x70+0x34 | 0x01C8 ? |
0x5A | GL_FLOAT_VEC4 | dmp_FragmentLightSource[1].specular1 | 0x001580B4 | 0xA20+1*0x70+0x34 | 0x01C8 ? |
0x5B | GL_FLOAT_VEC4 | dmp_FragmentLightSource[2].specular1 | 0x001580B4 | 0xA20+2*0x70+0x34 | 0x01C8 ? |
0x5C | GL_FLOAT_VEC4 | dmp_FragmentLightSource[3].specular1 | 0x001580B4 | 0xA20+3*0x70+0x34 | 0x01C8 ? |
0x5D | GL_FLOAT_VEC4 | dmp_FragmentLightSource[4].specular1 | 0x001580B4 | 0xA20+4*0x70+0x34 | 0x01C8 ? |
0x5E | GL_FLOAT_VEC4 | dmp_FragmentLightSource[5].specular1 | 0x001580B4 | 0xA20+5*0x70+0x34 | 0x01C8 ? |
0x5F | GL_FLOAT_VEC4 | dmp_FragmentLightSource[6].specular1 | 0x001580B4 | 0xA20+6*0x70+0x34 | 0x01C8 ? |
0x60 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[7].specular1 | 0x001580B4 | 0xA20+7*0x70+0x34 | 0x01C8 ? |
0x61 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[0].position | 0x001584B0 | 0xA20+0*0x70+0x44 | 0x01C8 ? |
0x62 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[1].position | 0x001584B0 | 0xA20+1*0x70+0x44 | 0x01C8 ? |
0x63 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[2].position | 0x001584B0 | 0xA20+2*0x70+0x44 | 0x01C8 ? |
0x64 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[3].position | 0x001584B0 | 0xA20+3*0x70+0x44 | 0x01C8 ? |
0x65 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[4].position | 0x001584B0 | 0xA20+4*0x70+0x44 | 0x01C8 ? |
0x66 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[5].position | 0x001584B0 | 0xA20+5*0x70+0x44 | 0x01C8 ? |
0x67 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[6].position | 0x001584B0 | 0xA20+6*0x70+0x44 | 0x01C8 ? |
0x68 | GL_FLOAT_VEC4 | dmp_FragmentLightSource[7].position | 0x001584B0 | 0xA20+7*0x70+0x44 | 0x01C8 ? |
0x69 | GL_FLOAT_VEC3 | dmp_FragmentLightSource[0].spotDirection | 0x001587E4 | 0xA20+0*0x70+0x54 | 0x01C8 ? |
0x6A | GL_FLOAT_VEC3 | dmp_FragmentLightSource[1].spotDirection | 0x001587E4 | 0xA20+1*0x70+0x54 | 0x01C8 ? |
0x6B | GL_FLOAT_VEC3 | dmp_FragmentLightSource[2].spotDirection | 0x001587E4 | 0xA20+2*0x70+0x54 | 0x01C8 ? |
0x6C | GL_FLOAT_VEC3 | dmp_FragmentLightSource[3].spotDirection | 0x001587E4 | 0xA20+3*0x70+0x54 | 0x01C8 ? |
0x6D | GL_FLOAT_VEC3 | dmp_FragmentLightSource[4].spotDirection | 0x001587E4 | 0xA20+4*0x70+0x54 | 0x01C8 ? |
0x6E | GL_FLOAT_VEC3 | dmp_FragmentLightSource[5].spotDirection | 0x001587E4 | 0xA20+5*0x70+0x54 | 0x01C8 ? |
0x6F | GL_FLOAT_VEC3 | dmp_FragmentLightSource[6].spotDirection | 0x001587E4 | 0xA20+6*0x70+0x54 | 0x01C8 ? |
0x70 | GL_FLOAT_VEC3 | dmp_FragmentLightSource[7].spotDirection | 0x001587E4 | 0xA20+7*0x70+0x54 | 0x01C8 ? |
0x71 | GL_BOOL | dmp_FragmentLightSource[0].shadowed | 0x0012C20C | 0x7C0 | 0x01C8 ? |
0x72 | GL_BOOL | dmp_FragmentLightSource[1].shadowed | 0x0012C20C | 0x7C0 | 0x01C8 ? |
0x73 | GL_BOOL | dmp_FragmentLightSource[2].shadowed | 0x0012C20C | 0x7C0 | 0x01C8 ? |
0x74 | GL_BOOL | dmp_FragmentLightSource[3].shadowed | 0x0012C20C | 0x7C0 | 0x01C8 ? |
0x75 | GL_BOOL | dmp_FragmentLightSource[4].shadowed | 0x0012C20C | 0x7C0 | 0x01C8 ? |
0x76 | GL_BOOL | dmp_FragmentLightSource[5].shadowed | 0x0012C20C | 0x7C0 | 0x01C8 ? |
0x77 | GL_BOOL | dmp_FragmentLightSource[6].shadowed | 0x0012C20C | 0x7C0 | 0x01C8 ? |
0x78 | GL_BOOL | dmp_FragmentLightSource[7].shadowed | 0x0012C20C | 0x7C0 | 0x01C8 ? |
0x79 | GL_BOOL | dmp_FragmentLightSource[0].geomFactor0 | 0x0012C018 | 0x7D8 | 0x01C8 ? |
0x7A | GL_BOOL | dmp_FragmentLightSource[1].geomFactor0 | 0x0012C018 | 0x7D8 | 0x01C8 ? |
0x7B | GL_BOOL | dmp_FragmentLightSource[2].geomFactor0 | 0x0012C018 | 0x7D8 | 0x01C8 ? |
0x7C | GL_BOOL | dmp_FragmentLightSource[3].geomFactor0 | 0x0012C018 | 0x7D8 | 0x01C8 ? |
0x7D | GL_BOOL | dmp_FragmentLightSource[4].geomFactor0 | 0x0012C018 | 0x7D8 | 0x01C8 ? |
0x7E | GL_BOOL | dmp_FragmentLightSource[5].geomFactor0 | 0x0012C018 | 0x7D8 | 0x01C8 ? |
0x7F | GL_BOOL | dmp_FragmentLightSource[6].geomFactor0 | 0x0012C018 | 0x7D8 | 0x01C8 ? |
0x80 | GL_BOOL | dmp_FragmentLightSource[7].geomFactor0 | 0x0012C018 | 0x7D8 | 0x01C8 ? |
0x81 | GL_BOOL | dmp_FragmentLightSource[0].geomFactor1 | 0x0012C114 | 0x7D8 | 0x01C8 ? |
0x82 | GL_BOOL | dmp_FragmentLightSource[1].geomFactor1 | 0x0012C114 | 0x7D8 | 0x01C8 ? |
0x83 | GL_BOOL | dmp_FragmentLightSource[2].geomFactor1 | 0x0012C114 | 0x7D8 | 0x01C8 ? |
0x84 | GL_BOOL | dmp_FragmentLightSource[3].geomFactor1 | 0x0012C114 | 0x7D8 | 0x01C8 ? |
0x85 | GL_BOOL | dmp_FragmentLightSource[4].geomFactor1 | 0x0012C114 | 0x7D8 | 0x01C8 ? |
0x86 | GL_BOOL | dmp_FragmentLightSource[5].geomFactor1 | 0x0012C114 | 0x7D8 | 0x01C8 ? |
0x87 | GL_BOOL | dmp_FragmentLightSource[6].geomFactor1 | 0x0012C114 | 0x7D8 | 0x01C8 ? |
0x88 | GL_BOOL | dmp_FragmentLightSource[7].geomFactor1 | 0x0012C114 | 0x7D8 | 0x01C8 ? |
0x89 | GL_BOOL | dmp_FragmentLightSource[0].twoSideDiffuse | 0x0012BF10 | 0x7D8 | 0x01C8 ? |
0x8A | GL_BOOL | dmp_FragmentLightSource[1].twoSideDiffuse | 0x0012BF10 | 0x7D8 | 0x01C8 ? |
0x8B | GL_BOOL | dmp_FragmentLightSource[2].twoSideDiffuse | 0x0012BF10 | 0x7D8 | 0x01C8 ? |
0x8C | GL_BOOL | dmp_FragmentLightSource[3].twoSideDiffuse | 0x0012BF10 | 0x7D8 | 0x01C8 ? |
0x8D | GL_BOOL | dmp_FragmentLightSource[4].twoSideDiffuse | 0x0012BF10 | 0x7D8 | 0x01C8 ? |
0x8E | GL_BOOL | dmp_FragmentLightSource[5].twoSideDiffuse | 0x0012BF10 | 0x7D8 | 0x01C8 ? |
0x8F | GL_BOOL | dmp_FragmentLightSource[6].twoSideDiffuse | 0x0012BF10 | 0x7D8 | 0x01C8 ? |
0x90 | GL_BOOL | dmp_FragmentLightSource[7].twoSideDiffuse | 0x0012BF10 | 0x7D8 | 0x01C8 ? |
0x91 | GL_SAMPLER_1D | dmp_FragmentLightSource[0].samplerSP | 0x0012C31C | 0xA20+0*0x70+0x60 | 0x01C8 ? |
0x92 | GL_SAMPLER_1D | dmp_FragmentLightSource[1].samplerSP | 0x0012C31C | 0xA20+1*0x70+0x60 | 0x01C8 ? |
0x93 | GL_SAMPLER_1D | dmp_FragmentLightSource[2].samplerSP | 0x0012C31C | 0xA20+2*0x70+0x60 | 0x01C8 ? |
0x94 | GL_SAMPLER_1D | dmp_FragmentLightSource[3].samplerSP | 0x0012C31C | 0xA20+3*0x70+0x60 | 0x01C8 ? |
0x95 | GL_SAMPLER_1D | dmp_FragmentLightSource[4].samplerSP | 0x0012C31C | 0xA20+4*0x70+0x60 | 0x01C8 ? |
0x96 | GL_SAMPLER_1D | dmp_FragmentLightSource[5].samplerSP | 0x0012C31C | 0xA20+5*0x70+0x60 | 0x01C8 ? |
0x97 | GL_SAMPLER_1D | dmp_FragmentLightSource[6].samplerSP | 0x0012C31C | 0xA20+6*0x70+0x60 | 0x01C8 ? |
0x98 | GL_SAMPLER_1D | dmp_FragmentLightSource[7].samplerSP | 0x0012C31C | 0xA20+7*0x70+0x60 | 0x01C8 ? |
0x99 | GL_BOOL | dmp_FragmentLightSource[0].spotEnabled | 0x0012C380 | ? | 0x01C8 ? |
0x9A | GL_BOOL | dmp_FragmentLightSource[1].spotEnabled | 0x0012C380 | ? | 0x01C8 ? |
0x9B | GL_BOOL | dmp_FragmentLightSource[2].spotEnabled | 0x0012C380 | ? | 0x01C8 ? |
0x9C | GL_BOOL | dmp_FragmentLightSource[3].spotEnabled | 0x0012C380 | ? | 0x01C8 ? |
0x9D | GL_BOOL | dmp_FragmentLightSource[4].spotEnabled | 0x0012C380 | ? | 0x01C8 ? |
0x9E | GL_BOOL | dmp_FragmentLightSource[5].spotEnabled | 0x0012C380 | ? | 0x01C8 ? |
0x9F | GL_BOOL | dmp_FragmentLightSource[6].spotEnabled | 0x0012C380 | ? | 0x01C8 ? |
0xA0 | GL_BOOL | dmp_FragmentLightSource[7].spotEnabled | 0x0012C380 | ? | 0x01C8 ? |
0xA1 | GL_FLOAT | dmp_FragmentLightSource[0].distanceAttenuationBias | 0x00158AE8 | 0xA20+0*0x70+0x64 | 0x01C8 ? |
0xA2 | GL_FLOAT | dmp_FragmentLightSource[1].distanceAttenuationBias | 0x00158AE8 | 0xA20+1*0x70+0x64 | 0x01C8 ? |
0xA3 | GL_FLOAT | dmp_FragmentLightSource[2].distanceAttenuationBias | 0x00158AE8 | 0xA20+2*0x70+0x64 | 0x01C8 ? |
0xA4 | GL_FLOAT | dmp_FragmentLightSource[3].distanceAttenuationBias | 0x00158AE8 | 0xA20+3*0x70+0x64 | 0x01C8 ? |
0xA5 | GL_FLOAT | dmp_FragmentLightSource[4].distanceAttenuationBias | 0x00158AE8 | 0xA20+4*0x70+0x64 | 0x01C8 ? |
0xA6 | GL_FLOAT | dmp_FragmentLightSource[5].distanceAttenuationBias | 0x00158AE8 | 0xA20+5*0x70+0x64 | 0x01C8 ? |
0xA7 | GL_FLOAT | dmp_FragmentLightSource[6].distanceAttenuationBias | 0x00158AE8 | 0xA20+6*0x70+0x64 | 0x01C8 ? |
0xA8 | GL_FLOAT | dmp_FragmentLightSource[7].distanceAttenuationBias | 0x00158AE8 | 0xA20+7*0x70+0x64 | 0x01C8 ? |
0xA9 | GL_FLOAT | dmp_FragmentLightSource[0].distanceAttenuationScale | 0x00158C44 | 0xA20+0*0x70+0x68 | 0x01C8 ? |
0xAA | GL_FLOAT | dmp_FragmentLightSource[1].distanceAttenuationScale | 0x00158C44 | 0xA20+1*0x70+0x68 | 0x01C8 ? |
0xAB | GL_FLOAT | dmp_FragmentLightSource[2].distanceAttenuationScale | 0x00158C44 | 0xA20+2*0x70+0x68 | 0x01C8 ? |
0xAC | GL_FLOAT | dmp_FragmentLightSource[3].distanceAttenuationScale | 0x00158C44 | 0xA20+3*0x70+0x68 | 0x01C8 ? |
0xAD | GL_FLOAT | dmp_FragmentLightSource[4].distanceAttenuationScale | 0x00158C44 | 0xA20+4*0x70+0x68 | 0x01C8 ? |
0xAE | GL_FLOAT | dmp_FragmentLightSource[5].distanceAttenuationScale | 0x00158C44 | 0xA20+5*0x70+0x68 | 0x01C8 ? |
0xAF | GL_FLOAT | dmp_FragmentLightSource[6].distanceAttenuationScale | 0x00158C44 | 0xA20+6*0x70+0x68 | 0x01C8 ? |
0xB0 | GL_FLOAT | dmp_FragmentLightSource[7].distanceAttenuationScale | 0x00158C44 | 0xA20+7*0x70+0x68 | 0x01C8 ? |
0xB1 | GL_BOOL | dmp_FragmentLightSource[0].distanceAttenuationEnabled | 0x0012C4A0 | ? | 0x01C8 ? |
0xB2 | GL_BOOL | dmp_FragmentLightSource[1].distanceAttenuationEnabled | 0x0012C4A0 | ? | 0x01C8 ? |
0xB3 | GL_BOOL | dmp_FragmentLightSource[2].distanceAttenuationEnabled | 0x0012C4A0 | ? | 0x01C8 ? |
0xB4 | GL_BOOL | dmp_FragmentLightSource[3].distanceAttenuationEnabled | 0x0012C4A0 | ? | 0x01C8 ? |
0xB5 | GL_BOOL | dmp_FragmentLightSource[4].distanceAttenuationEnabled | 0x0012C4A0 | ? | 0x01C8 ? |
0xB6 | GL_BOOL | dmp_FragmentLightSource[5].distanceAttenuationEnabled | 0x0012C4A0 | ? | 0x01C8 ? |
0xB7 | GL_BOOL | dmp_FragmentLightSource[6].distanceAttenuationEnabled | 0x0012C4A0 | ? | 0x01C8 ? |
0xB8 | GL_BOOL | dmp_FragmentLightSource[7].distanceAttenuationEnabled | 0x0012C4A0 | ? | 0x01C8 ? |
0xB9 | GL_SAMPLER_1D | dmp_FragmentLightSource[0].samplerDA | 0x0012C578 | 0xA20+0*0x70+0x6C ? | 0x01C8 ? |
0xBA | GL_SAMPLER_1D | dmp_FragmentLightSource[1].samplerDA | 0x0012C578 | 0xA20+1*0x70+0x6C ? | 0x01C8 ? |
0xBB | GL_SAMPLER_1D | dmp_FragmentLightSource[2].samplerDA | 0x0012C578 | 0xA20+2*0x70+0x6C ? | 0x01C8 ? |
0xBC | GL_SAMPLER_1D | dmp_FragmentLightSource[3].samplerDA | 0x0012C578 | 0xA20+3*0x70+0x6C ? | 0x01C8 ? |
0xBD | GL_SAMPLER_1D | dmp_FragmentLightSource[4].samplerDA | 0x0012C578 | 0xA20+4*0x70+0x6C ? | 0x01C8 ? |
0xBE | GL_SAMPLER_1D | dmp_FragmentLightSource[5].samplerDA | 0x0012C578 | 0xA20+5*0x70+0x6C ? | 0x01C8 ? |
0xBF | GL_SAMPLER_1D | dmp_FragmentLightSource[6].samplerDA | 0x0012C578 | 0xA20+6*0x70+0x6C ? | 0x01C8 ? |
0xC0 | GL_SAMPLER_1D | dmp_FragmentLightSource[7].samplerDA | 0x0012C578 | 0xA20+7*0x70+0x6C ? | 0x01C8 ? |
0xC1 | GL_BOOL | dmp_LightEnv.absLutInputD0 | 0x0012C5D8 | ? | ? |
0xC2 | GL_BOOL | dmp_LightEnv.absLutInputD1 | 0x0012C5D8 | ? | ? |
0xC3 | GL_BOOL | dmp_LightEnv.absLutInputSP | 0x0012C5D8 | ? | ? |
0xC4 | GL_BOOL | dmp_LightEnv.absLutInputFR | 0x0012C5D8 | ? | ? |
0xC5 | GL_BOOL | dmp_LightEnv.absLutInputRB | 0x0012C5D8 | ? | ? |
0xC6 | GL_BOOL | dmp_LightEnv.absLutInputRG | 0x0012C5D8 | ? | ? |
0xC7 | GL_BOOL | dmp_LightEnv.absLutInputRR | 0x0012C5D8 | ? | ? |
0xC8 | GL_INT | dmp_LightEnv.lutInputD0 | 0x0012C6E8 | ? | ? |
0xC9 | GL_INT | dmp_LightEnv.lutInputD1 | 0x0012C6E8 | ? | ? |
0xCA | GL_INT | dmp_LightEnv.lutInputSP | 0x0012C6E8 | ? | ? |
0xCB | GL_INT | dmp_LightEnv.lutInputFR | 0x0012C6E8 | ? | ? |
0xCC | GL_INT | dmp_LightEnv.lutInputRB | 0x0012C6E8 | ? | ? |
0xCD | GL_INT | dmp_LightEnv.lutInputRG | 0x0012C6E8 | ? | ? |
0xCE | GL_INT | dmp_LightEnv.lutInputRR | 0x0012C6E8 | ? | ? |
0xCF | GL_FLOAT | dmp_LightEnv.lutScaleD0 | 0x00155404 | ? | ? |
0xD0 | GL_FLOAT | dmp_LightEnv.lutScaleD1 | 0x00155404 | ? | ? |
0xD1 | GL_FLOAT | dmp_LightEnv.lutScaleSP | 0x00155404 | ? | ? |
0xD2 | GL_FLOAT | dmp_LightEnv.lutScaleFR | 0x00155404 | ? | ? |
0xD3 | GL_FLOAT | dmp_LightEnv.lutScaleRB | 0x00155404 | ? | ? |
0xD4 | GL_FLOAT | dmp_LightEnv.lutScaleRG | 0x00155404 | ? | ? |
0xD5 | GL_FLOAT | dmp_LightEnv.lutScaleRR | 0x00155404 | ? | ? |
0xD6 | GL_SAMPLER_1D | dmp_FragmentMaterial.samplerD0 | 0x0012C7D0 | ? | ? |
0xD7 | GL_SAMPLER_1D | dmp_FragmentMaterial.samplerD1 | 0x0012C7D0 | ? | ? |
0xD8 | GL_SAMPLER_1D | dmp_FragmentMaterial.samplerFR | 0x0012C7D0 | ? | ? |
0xD9 | GL_SAMPLER_1D | dmp_FragmentMaterial.samplerRB | 0x0012C7D0 | ? | ? |
0xDA | GL_SAMPLER_1D | dmp_FragmentMaterial.samplerRG | 0x0012C7D0 | ? | ? |
0xDB | GL_SAMPLER_1D | dmp_FragmentMaterial.samplerRR | 0x0012C7D0 | ? | ? |
0xDC | GL_INT | dmp_LightEnv.shadowSelector | 0x0012CE44 | ? | ? |
0xDD | GL_INT | dmp_LightEnv.bumpSelector | 0x0012CD88 | ? | ? |
0xDE | GL_INT | dmp_LightEnv.bumpMode | 0x0012D4B4 | ? | ? |
0xDF | GL_BOOL | dmp_LightEnv.bumpRenorm | 0x0012D8A0 | ? | ? |
0xE0 | GL_INT | dmp_LightEnv.config | 0x0012D5E4 | ? | ? |
0xE1 | GL_BOOL | dmp_LightEnv.invertShadow | 0x0012CF04 | ? | ? |
0xE2 | GL_BOOL | dmp_LightEnv.shadowPrimary | 0x0012CFD4 | ? | ? |
0xE3 | GL_BOOL | dmp_LightEnv.shadowSecondary | 0x0012D1B8 | ? | ? |
0xE4 | GL_BOOL | dmp_LightEnv.shadowAlpha | 0x0012D350 | ? | ? |
0xE5 | GL_INT | dmp_LightEnv.fresnelSelector | 0x0012D720 | ? | ? |
0xE6 | GL_BOOL | dmp_LightEnv.clampHighlights | 0x0012D9B0 | ? | ? |
0xE7 | GL_BOOL | dmp_LightEnv.lutEnabledD0 | 0x0012DA80 | ? | ? |
0xE8 | GL_BOOL | dmp_LightEnv.lutEnabledD1 | 0x0012DB58 | ? | ? |
0xE9 | GL_BOOL | dmp_LightEnv.lutEnabledRefl | 0x0012C83C | ? | ? |
0xEA | GL_INT | dmp_TexEnv[0].combineRgb | 0x0012DC2C | ? | 0xC2 |
0xEB | GL_INT | dmp_TexEnv[1].combineRgb | 0x0012DC2C | ? | 0xCA |
0xEC | GL_INT | dmp_TexEnv[2].combineRgb | 0x0012DC2C | ? | 0xD2 |
0xED | GL_INT | dmp_TexEnv[3].combineRgb | 0x0012DC2C | ? | 0xDA |
0xEE | GL_INT | dmp_TexEnv[4].combineRgb | 0x0012DC2C | ? | 0xF2 |
0xEF | GL_INT | dmp_TexEnv[5].combineRgb | 0x0012DC2C | ? | 0xFA |
0xF0 | GL_INT | dmp_TexEnv[0].combineAlpha | 0x0012DD9C | ? | 0xC2 |
0xF1 | GL_INT | dmp_TexEnv[1].combineAlpha | 0x0012DD9C | ? | 0xCA |
0xF2 | GL_INT | dmp_TexEnv[2].combineAlpha | 0x0012DD9C | ? | 0xD2 |
0xF3 | GL_INT | dmp_TexEnv[3].combineAlpha | 0x0012DD9C | ? | 0xDA |
0xF4 | GL_INT | dmp_TexEnv[4].combineAlpha | 0x0012DD9C | ? | 0xF2 |
0xF5 | GL_INT | dmp_TexEnv[5].combineAlpha | 0x0012DD9C | ? | 0xFA |
0xF6 | GL_INT_VEC3 | dmp_TexEnv[0].srcRgb | 0x0012DF08 | ? | 0xC0 |
0xF7 | GL_INT_VEC3 | dmp_TexEnv[1].srcRgb | 0x0012DF08 | ? | 0xC8 |
0xF8 | GL_INT_VEC3 | dmp_TexEnv[2].srcRgb | 0x0012DF08 | ? | 0xD0 |
0xF9 | GL_INT_VEC3 | dmp_TexEnv[3].srcRgb | 0x0012DF08 | ? | 0xD8 |
0xFA | GL_INT_VEC3 | dmp_TexEnv[4].srcRgb | 0x0012DF08 | ? | 0xF0 |
0xFB | GL_INT_VEC3 | dmp_TexEnv[5].srcRgb | 0x0012DF08 | ? | 0xF8 |
0xFC | GL_INT_VEC3 | dmp_TexEnv[0].srcAlpha | 0x0012E0FC | ? | 0xC0 |
0xFD | GL_INT_VEC3 | dmp_TexEnv[1].srcAlpha | 0x0012E0FC | ? | 0xC8 |
0xFE | GL_INT_VEC3 | dmp_TexEnv[2].srcAlpha | 0x0012E0FC | ? | 0xD0 |
0xFF | GL_INT_VEC3 | dmp_TexEnv[3].srcAlpha | 0x0012E0FC | ? | 0xD8 |
0x100 | GL_INT_VEC3 | dmp_TexEnv[4].srcAlpha | 0x0012E0FC | ? | 0xF0 |
0x101 | GL_INT_VEC3 | dmp_TexEnv[5].srcAlpha | 0x0012E0FC | ? | 0xF8 |
0x102 | GL_INT_VEC3 | dmp_TexEnv[0].operandRgb | 0x0012E2F0 | ? | 0xC1 |
0x103 | GL_INT_VEC3 | dmp_TexEnv[1].operandRgb | 0x0012E2F0 | ? | 0xC9 |
0x104 | GL_INT_VEC3 | dmp_TexEnv[2].operandRgb | 0x0012E2F0 | ? | 0xD1 |
0x105 | GL_INT_VEC3 | dmp_TexEnv[3].operandRgb | 0x0012E2F0 | ? | 0xD9 |
0x106 | GL_INT_VEC3 | dmp_TexEnv[4].operandRgb | 0x0012E2F0 | ? | 0xF1 |
0x107 | GL_INT_VEC3 | dmp_TexEnv[5].operandRgb | 0x0012E2F0 | ? | 0xF9 |
0x108 | GL_INT_VEC3 | dmp_TexEnv[0].operandAlpha | 0x0012E51C | ? | 0xC1 |
0x109 | GL_INT_VEC3 | dmp_TexEnv[1].operandAlpha | 0x0012E51C | ? | 0xC9 |
0x10A | GL_INT_VEC3 | dmp_TexEnv[2].operandAlpha | 0x0012E51C | ? | 0xD1 |
0x10B | GL_INT_VEC3 | dmp_TexEnv[3].operandAlpha | 0x0012E51C | ? | 0xD9 |
0x10C | GL_INT_VEC3 | dmp_TexEnv[4].operandAlpha | 0x0012E51C | ? | 0xF1 |
0x10D | GL_INT_VEC3 | dmp_TexEnv[5].operandAlpha | 0x0012E51C | ? | 0xF9 |
0x10E | GL_FLOAT | dmp_TexEnv[0].scaleRgb | 0x00155464 | ? | ? |
0x10F | GL_FLOAT | dmp_TexEnv[1].scaleRgb | 0x00155464 | ? | ? |
0x110 | GL_FLOAT | dmp_TexEnv[2].scaleRgb | 0x00155464 | ? | ? |
0x111 | GL_FLOAT | dmp_TexEnv[3].scaleRgb | 0x00155464 | ? | ? |
0x112 | GL_FLOAT | dmp_TexEnv[4].scaleRgb | 0x00155464 | ? | ? |
0x113 | GL_FLOAT | dmp_TexEnv[5].scaleRgb | 0x00155464 | ? | ? |
0x114 | GL_FLOAT | dmp_TexEnv[0].scaleAlpha | 0x00158EDC | ? | ? |
0x115 | GL_FLOAT | dmp_TexEnv[1].scaleAlpha | 0x00158EDC | ? | ? |
0x116 | GL_FLOAT | dmp_TexEnv[2].scaleAlpha | 0x00158EDC | ? | ? |
0x117 | GL_FLOAT | dmp_TexEnv[3].scaleAlpha | 0x00158EDC | ? | ? |
0x118 | GL_FLOAT | dmp_TexEnv[4].scaleAlpha | 0x00158EDC | ? | ? |
0x119 | GL_FLOAT | dmp_TexEnv[5].scaleAlpha | 0x00158EDC | ? | ? |
0x11A | GL_FLOAT_VEC4 | dmp_TexEnv[0].constRgba | 0x00158FF4 | ? | 0xC3 |
0x11B | GL_FLOAT_VEC4 | dmp_TexEnv[1].constRgba | 0x00158FF4 | ? | 0xCB |
0x11C | GL_FLOAT_VEC4 | dmp_TexEnv[2].constRgba | 0x00158FF4 | ? | 0xD3 |
0x11D | GL_FLOAT_VEC4 | dmp_TexEnv[3].constRgba | 0x00158FF4 | ? | 0xDB |
0x11E | GL_FLOAT_VEC4 | dmp_TexEnv[4].constRgba | 0x00158FF4 | ? | 0xF3 |
0x11F | GL_FLOAT_VEC4 | dmp_TexEnv[5].constRgba | 0x00158FF4 | ? | 0xFB |
0x120 | GL_FLOAT_VEC4 | dmp_TexEnv[0].bufferColor | 0x001591C0 | ? | ? |
0x121 | GL_INT_VEC2 | dmp_TexEnv[1].bufferInput | 0x0012E6D0 | ? | ? |
0x122 | GL_INT_VEC2 | dmp_TexEnv[2].bufferInput | 0x0012E6D0 | ? | ? |
0x123 | GL_INT_VEC2 | dmp_TexEnv[3].bufferInput | 0x0012E6D0 | ? | ? |
0x124 | GL_INT_VEC2 | dmp_TexEnv[4].bufferInput | 0x0012E6D0 | ? | ? |
0x125 | GL_INT | dmp_Fog.mode | 0x0012E7F8 | ? | ? |
0x126 | GL_FLOAT_VEC3 | dmp_Fog.color | 0x00159338 | ? | ? |
0x127 | GL_BOOL | dmp_Fog.zFlip | 0x0012E9DC | ? | ? |
0x128 | GL_SAMPLER_1D | dmp_Fog.sampler | 0x0012EAA4 | ? | ? |
On steeldiver's uniform handlers : R1 is a pointer to the current shader program object, R12 is a pointer to the data the uniform is being set to.