sm64pc/levels/jrb/areas/1/1/model.inc.c

201 lines
12 KiB
C

// 0x07002800 - 0x070028F0
static const Vtx jrb_seg7_vertex_07002800[] = {
{{{ 2813, 1536, 5598}, 0, { -2074, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2813, 1331, 5598}, 0, { -2074, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 4284, 1331, 7069}, 0, { 8308, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2668, 1536, 6322}, 0, { 0, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2668, 1331, 6322}, 0, { 0, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 3611, 1331, 7264}, 0, { 6620, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 3611, 1536, 7264}, 0, { 6620, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 3861, 1331, 7182}, 0, { 7214, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2835, 1331, 6155}, 0, { 0, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2835, 1536, 6155}, 0, { 0, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 3861, 1536, 7182}, 0, { 7214, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2980, 1536, 5431}, 0, { 0, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2980, 1331, 5431}, 0, { 0, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2813, 1331, 5598}, 0, { 990, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2813, 1536, 5598}, 0, { 990, 0}, {0xff, 0xff, 0xff, 0xff}}},
};
// 0x070028F0 - 0x070029E0
static const Vtx jrb_seg7_vertex_070028F0[] = {
{{{ 3392, 1536, 5018}, 0, { 0, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 4909, 1331, 6535}, 0, { 10670, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 4909, 1536, 6535}, 0, { 10670, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2813, 1536, 5598}, 0, { -2074, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 4284, 1331, 7069}, 0, { 8308, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 4284, 1536, 7069}, 0, { 8308, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 4460, 1331, 6912}, 0, { 8372, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2980, 1536, 5431}, 0, { -2074, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 4460, 1536, 6912}, 0, { 8372, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2980, 1331, 5431}, 0, { -2074, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 3559, 1536, 4852}, 0, { -5140, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 3559, 1331, 4852}, 0, { -5140, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 3392, 1331, 5018}, 0, { -4118, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 3392, 1536, 5018}, 0, { -4118, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 3392, 1331, 5018}, 0, { 0, 990}, {0xff, 0xff, 0xff, 0xff}}},
};
// 0x070029E0 - 0x07002A60
static const Vtx jrb_seg7_vertex_070029E0[] = {
{{{ 5084, 1331, 6377}, 0, { 10734, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 3559, 1331, 4852}, 0, { 0, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 5084, 1536, 6377}, 0, { 10734, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 3559, 1536, 4852}, 0, { 0, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2835, 1536, 6155}, 0, { 3034, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2668, 1331, 6322}, 0, { 4056, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2668, 1536, 6322}, 0, { 4056, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2835, 1331, 6155}, 0, { 3034, 990}, {0xff, 0xff, 0xff, 0xff}}},
};
// 0x07002A60 - 0x07002B60
static const Vtx jrb_seg7_vertex_07002A60[] = {
{{{ -3991, 1126, -97}, 0, { 19524, 956}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -3443, 1024, 319}, 0, { 19132, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -705, 1024, 2401}, 0, { 17252, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 1480, 4096, 7814}, 0, { 6336, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 1480, 1024, 7814}, 0, { 6336, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -805, 1024, 7672}, 0, { 4776, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -805, 4096, 7672}, 0, { 4776, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -4161, 4096, 6315}, 0, { 2440, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -4161, 1024, 6315}, 0, { 2440, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -6561, 4096, 4330}, 0, { 856, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -6561, 1126, 4330}, 0, { 856, 956}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -5762, 4096, -1125}, 0, { 20512, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -3991, 4096, -97}, 0, { 19524, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 5221, 4096, -669}, 0, { 13320, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 7435, 1024, 615}, 0, { 12176, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 7435, 4096, 615}, 0, { 12176, 0}, {0xff, 0xff, 0xff, 0xff}}},
};
// 0x07002B60 - 0x07002C60
static const Vtx jrb_seg7_vertex_07002B60[] = {
{{{ -705, 4096, 2401}, 0, { 17252, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -705, 1024, 2401}, 0, { 17252, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 1136, 1024, 2287}, 0, { 16276, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -3991, 4096, -97}, 0, { 19524, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 1136, 4096, 2287}, 0, { 16276, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2350, 1024, 1215}, 0, { 15468, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 2350, 4096, 1215}, 0, { 15468, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 3121, 1024, -112}, 0, { 14632, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 3121, 4096, -112}, 0, { 14632, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 5221, 1024, -669}, 0, { 13320, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 5221, 4096, -669}, 0, { 13320, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 7435, 1024, 615}, 0, { 12176, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 7435, 4096, 615}, 0, { 12176, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 7992, 1024, 2714}, 0, { 11144, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 7992, 4096, 2714}, 0, { 11144, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 6707, 1024, 4928}, 0, { 9936, 990}, {0xff, 0xff, 0xff, 0xff}}},
};
// 0x07002C60 - 0x07002D60
static const Vtx jrb_seg7_vertex_07002C60[] = {
{{{ 7992, 4096, 2714}, 0, { 11144, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 6707, 1024, 4928}, 0, { 9936, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 6707, 4096, 4928}, 0, { 9936, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 4279, 1024, 7071}, 0, { 8148, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 4279, 4096, 7071}, 0, { 8148, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 1480, 1024, 7814}, 0, { 6336, 990}, {0xff, 0xff, 0xff, 0xff}}},
{{{ 1480, 4096, 7814}, 0, { 6336, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -5762, 4096, -1125}, 0, { 20512, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -5762, 1126, -1125}, 0, { 20512, 956}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -3991, 1126, -97}, 0, { 19524, 956}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -7494, 4096, 173}, 0, { 21392, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -6980, 1126, -712}, 0, { 20948, 956}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -6980, 4096, -712}, 0, { 20948, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -7494, 1126, 173}, 0, { 21392, 956}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -7818, 4096, 2416}, 0, { 22384, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -7818, 1126, 2416}, 0, { 22384, 956}, {0xff, 0xff, 0xff, 0xff}}},
};
// 0x07002D60 - 0x07002DA0
static const Vtx jrb_seg7_vertex_07002D60[] = {
{{{ -6561, 4096, 4330}, 0, { 23340, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -7818, 1126, 2416}, 0, { 22384, 956}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -7818, 4096, 2416}, 0, { 22384, 0}, {0xff, 0xff, 0xff, 0xff}}},
{{{ -6561, 1126, 4330}, 0, { 23340, 956}, {0xff, 0xff, 0xff, 0xff}}},
};
// 0x07002DA0 - 0x07002E68
static const Gfx jrb_seg7_dl_07002DA0[] = {
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, water_09006000),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
gsSPVertex(jrb_seg7_vertex_07002800, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 3, 5, 6, 0x0, 7, 8, 9, 0x0),
gsSP2Triangles( 7, 9, 10, 0x0, 11, 12, 13, 0x0),
gsSP1Triangle(11, 13, 14, 0x0),
gsSPVertex(jrb_seg7_vertex_070028F0, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 6, 9, 7, 0x0),
gsSP2Triangles(10, 11, 12, 0x0, 10, 12, 13, 0x0),
gsSP1Triangle( 0, 14, 1, 0x0),
gsSPVertex(jrb_seg7_vertex_070029E0, 8, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 1, 3, 2, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 7, 5, 0x0),
gsSPEndDisplayList(),
};
// 0x07002E68 - 0x07002FD0
static const Gfx jrb_seg7_dl_07002E68[] = {
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, water_0900B800),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 64 * 32 - 1, CALC_DXT(64, G_IM_SIZ_16b_BYTES)),
gsSPVertex(jrb_seg7_vertex_07002A60, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 3, 5, 6, 0x0, 5, 7, 6, 0x0),
gsSP2Triangles( 5, 8, 7, 0x0, 7, 8, 9, 0x0),
gsSP2Triangles( 8, 10, 9, 0x0, 11, 0, 12, 0x0),
gsSP2Triangles(13, 14, 15, 0x0, 12, 0, 2, 0x0),
gsSPVertex(jrb_seg7_vertex_07002B60, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 1, 0, 0x0),
gsSP2Triangles( 0, 2, 4, 0x0, 4, 2, 5, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 6, 5, 7, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 8, 7, 9, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 10, 9, 11, 0x0),
gsSP2Triangles(12, 11, 13, 0x0, 12, 13, 14, 0x0),
gsSP1Triangle(14, 13, 15, 0x0),
gsSPVertex(jrb_seg7_vertex_07002C60, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 2, 1, 3, 0x0),
gsSP2Triangles( 2, 3, 4, 0x0, 4, 3, 5, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 7, 8, 9, 0x0),
gsSP2Triangles(10, 11, 12, 0x0, 12, 8, 7, 0x0),
gsSP2Triangles(12, 11, 8, 0x0, 10, 13, 11, 0x0),
gsSP2Triangles(14, 13, 10, 0x0, 14, 15, 13, 0x0),
gsSPVertex(jrb_seg7_vertex_07002D60, 4, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
gsSPEndDisplayList(),
};
// 0x07002FD0 - 0x070030A8
const Gfx jrb_seg7_dl_07002FD0[] = {
gsDPPipeSync(),
gsDPSetCycleType(G_CYC_2CYCLE),
gsDPSetRenderMode(G_RM_FOG_SHADE_A, G_RM_AA_ZB_TEX_EDGE2),
gsDPSetDepthSource(G_ZS_PIXEL),
gsDPSetFogColor(15, 65, 100, 255),
gsSPFogFactor(0x0724, 0xF9DC), // This isn't gsSPFogPosition since there is no valid min/max pair that corresponds to 0x0724F9DC
gsSPSetGeometryMode(G_FOG),
gsDPSetCombineMode(G_CC_DECALRGBA, G_CC_PASS2),
gsSPClearGeometryMode(G_LIGHTING),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
gsDPTileSync(),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD),
gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
gsSPDisplayList(jrb_seg7_dl_07002DA0),
gsDPTileSync(),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 6, G_TX_NOLOD),
gsDPSetTileSize(0, 0, 0, (64 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
gsSPDisplayList(jrb_seg7_dl_07002E68),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
gsDPPipeSync(),
gsDPSetCycleType(G_CYC_1CYCLE),
gsDPSetRenderMode(G_RM_AA_ZB_TEX_EDGE, G_RM_NOOP2),
gsSPClearGeometryMode(G_FOG),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPSetGeometryMode(G_LIGHTING),
gsSPEndDisplayList(),
};