Mat Stack Fix

* Implemented new lightweight CPU/RDP profiler
* Added RSP profiling to the lightweight profiler
* Added CPU audio to lightweight profiler
* Changed lingering manual light struct definitions to gdSPDefLights1, made a dummy light for Koopa's pink shorts
* Ran script to convert all light commands to lightcolor commands
* Added define guards for the profiler
* Wrote function for setting up global light direction in the frame
* Moved camera matrix into projection stack
* Corrected cameraToObject for the new matrix stack (fixes culling and sound)
* Fixed billboarding with new matrix stack
* Fixed shadows with new matrix stack
* Fixed some areas where the game was previously extracting the camera matrix from various matrices
* Restored vanilla light and env map directions under new matrix stack
* Fix goddard crash
* Fix geo_process_level_of_detail
* Remove 'construct_float' from 'geo_process_level_of_detail'
* Removed some accidentally added files
* Removed unnecessary matrix multiplications in geo_process_object
* Added fixlights script to build system for fixing custom assets and added option to disable it if needed
* Fixed visual debug with new matstack and cleaned up visual debug code
* Fixed handling of WORLD_SCALE in view matrix so it doesn't get cancelled out
* Fixed clip planes not scaling based on WORLD_SCALE

Co-authored-by: Mr-Wiseguy <mrwiseguyromhacking@gmail.com>
Co-authored-by: Arceveti <arceveti@gmail.com>
Co-authored-by: thecozies <collinpferguson@gmail.com>
This commit is contained in:
Reonu
2022-07-19 14:04:54 +01:00
committed by GitHub
parent 1820b146c0
commit 5a9b5a9751
441 changed files with 3271 additions and 7508 deletions

View File

@@ -1,16 +1,8 @@
// Bub
// 0x0600E278
static const Lights1 bub_seg6_lights_0600E280 = gdSPDefLights1(
0x3f, 0x3f, 0x3f,
0xff, 0xff, 0xff, 0x28, 0x28, 0x28
);
// 0x0600E290
static const Lights1 bub_seg6_lights_0600E290 = gdSPDefLights1(
0x3f, 0x1d, 0x25,
0xff, 0x75, 0x94, 0x28, 0x28, 0x28
);
// 0x0600E2A8
ALIGNED8 static const Texture bub_seg6_texture_0600E2A8[] = {
@@ -163,8 +155,8 @@ const Gfx bub_seg6_dl_06011848[] = {
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bub_seg6_texture_0600E2A8),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
gsSPLight(&bub_seg6_lights_0600E280.l, 1),
gsSPLight(&bub_seg6_lights_0600E280.a, 2),
gsSPLightColor(LIGHT_1, 0xffffffff),
gsSPLightColor(LIGHT_2, 0x3f3f3fff),
gsSPVertex(bub_seg6_vertex_060112A8, 14, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 1, 3, 2, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 5, 7, 6, 0x0),
@@ -222,8 +214,8 @@ const Gfx bub_seg6_dl_06011968[] = {
// 0x06011A50 - 0x06011B28
const Gfx bub_seg6_dl_06011A50[] = {
gsSPLight(&bub_seg6_lights_0600E290.l, 1),
gsSPLight(&bub_seg6_lights_0600E290.a, 2),
gsSPLightColor(LIGHT_1, 0xff7594ff),
gsSPLightColor(LIGHT_2, 0x3f1d25ff),
gsSPVertex(bub_seg6_vertex_06011718, 12, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
gsSP2Triangles( 1, 4, 2, 0x0, 1, 3, 4, 0x0),
@@ -232,8 +224,8 @@ const Gfx bub_seg6_dl_06011A50[] = {
gsSP2Triangles( 8, 9, 10, 0x0, 8, 5, 0, 0x0),
gsSP2Triangles( 0, 11, 8, 0x0, 8, 10, 5, 0x0),
gsSP2Triangles( 5, 10, 6, 0x0, 10, 9, 6, 0x0),
gsSPLight(&bub_seg6_lights_0600E280.l, 1),
gsSPLight(&bub_seg6_lights_0600E280.a, 2),
gsSPLightColor(LIGHT_1, 0xffffffff),
gsSPLightColor(LIGHT_2, 0x3f3f3fff),
gsSPVertex(bub_seg6_vertex_060117D8, 7, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 2, 3, 4, 0x0),
gsSP2Triangles( 2, 1, 5, 0x0, 2, 5, 6, 0x0),
@@ -284,8 +276,8 @@ const Gfx bub_seg6_dl_06011C58[] = {
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bub_seg6_texture_0600EAA8),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
gsSPLight(&bub_seg6_lights_0600E280.l, 1),
gsSPLight(&bub_seg6_lights_0600E280.a, 2),
gsSPLightColor(LIGHT_1, 0xffffffff),
gsSPLightColor(LIGHT_2, 0x3f3f3fff),
gsSPVertex(bub_seg6_vertex_06011BD8, 8, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 0, 2, 0x0),
gsSP2Triangles( 4, 5, 0, 0x0, 0, 5, 6, 0x0),
@@ -328,8 +320,8 @@ const Gfx bub_seg6_dl_06011DC0[] = {
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bub_seg6_texture_0600EAA8),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
gsSPLight(&bub_seg6_lights_0600E280.l, 1),
gsSPLight(&bub_seg6_lights_0600E280.a, 2),
gsSPLightColor(LIGHT_1, 0xffffffff),
gsSPLightColor(LIGHT_2, 0x3f3f3fff),
gsSPVertex(bub_seg6_vertex_06011D50, 7, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 2, 0x0),
gsSP2Triangles( 2, 4, 0, 0x0, 3, 2, 1, 0x0),
@@ -371,8 +363,8 @@ const Gfx bub_seg6_dl_06011F18[] = {
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bub_seg6_texture_0600EAA8),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
gsSPLight(&bub_seg6_lights_0600E280.l, 1),
gsSPLight(&bub_seg6_lights_0600E280.a, 2),
gsSPLightColor(LIGHT_1, 0xffffffff),
gsSPLightColor(LIGHT_2, 0x3f3f3fff),
gsSPVertex(bub_seg6_vertex_06011EA8, 7, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
gsSP2Triangles( 4, 3, 0, 0x0, 0, 5, 6, 0x0),