sm64/shape/enemy1_j/peach/p_waist_shape.sou
2022-12-04 22:27:02 -05:00

227 lines
11 KiB
Plaintext

/***************************************************************************************************
Convert from NINGEN (p_waist)
****************************************************************************************************/
#define p_waist_AMB_SCALE 0.5
#define ShapeColor_p_waist(R,G,B) {{R*p_waist_AMB_SCALE ,G*p_waist_AMB_SCALE ,B*p_waist_AMB_SCALE ,0 ,R*p_waist_AMB_SCALE ,G*p_waist_AMB_SCALE ,B*p_waist_AMB_SCALE ,0 },{ R, G, B, 0, R, G, B, 0, LIGHT_X, LIGHT_Y, LIGHT_Z, 0} }
static Lights1 light_p_waist[] = {
ShapeColor_p_waist(255,255,255),
};
static Vtx vtx_p_waist_0[] = {
{ 93, 12, 39, 0, 676, 1080, 44, 19, 117, 255},
{ 92, 36, 28, 0, 618, 1092, 70, 88, 56, 255},
{ 54, 35, 28, 0, 618, 1468, 62, 83, 72, 255},
{ 33, 62, -56, 0, 196, -1380, 90, 74, -48, 255},
{ 32, 71, 0, 0, 478, -1376, 90, 89, 0, 255},
{ 54, 35, -27, 0, 340, -1596, 60, 95, -57, 255},
{ 35, 12, -80, 0, 76, -1404, 95, 10, -82, 255},
{ 55, 11, -39, 0, 280, -1606, 70, 19, -103, 255},
{ -18, 76, -80, 0, 72, -868, 33, 82, -90, 255},
{ -19, 99, 0, 0, 480, -856, 28, 123, 0, 255},
{ 54, 44, 0, 0, 480, -1590, 40, 119, 9, 255},
{ 57, -12, -27, 0, 338, -1618, 72, -64, -81, 255},
{ 33, 62, 57, 0, 766, -1380, 90, 74, 48, 255},
{ 54, 35, 28, 0, 618, -1596, 62, 83, 72, 255},
{ 54, 44, 0, 0, 480, 1474, 40, 119, 9, 255},
{ 94, -10, 28, 0, 618, 1070, 95, -52, 64, 255},
{ 91, 46, 0, 0, 480, 1096, 99, 78, -8, 255},
{ 92, 36, 28, 0, 618, 1092, 70, 88, 56, 255},
{ 94, -10, 28, 0, 618, 1070, 95, -52, 64, 255},
{ 55, 10, 40, 0, 678, 1458, 71, -4, 104, 255},
{ 93, 12, 39, 0, 676, 1080, 44, 19, 117, 255},
{ 54, 35, 28, 0, 618, 1468, 62, 83, 72, 255},
{ 57, -12, 28, 0, 620, 1446, 73, -79, 66, 255},
{ 95, -20, 0, 0, 480, 1064, 78, -98, 11, 255},
{ 54, 44, 0, 0, 480, 1474, 40, 119, 9, 255},
{ 54, 35, -27, 0, 340, 1468, 60, 95, -57, 255},
{ 92, 36, -27, 0, 340, 1092, 72, 69, -78, 255},
{ 94, -10, -27, 0, 340, 1070, 96, -66, -48, 255},
{ 57, -22, 0, 0, 478, 1440, 84, -94, -8, 255},
{ 57, -12, -27, 0, 338, 1446, 72, -64, -81, 255},
{ 93, 12, -38, 0, 284, 1080, 46, -19, -116, 255},
{ 55, 11, -39, 0, 280, 1458, 70, 19, -103, 255},
{ 35, 12, -80, 0, 76, -1404, 95, 10, -82, 255},
{ -14, 8, -114, 0, -94, -900, 44, -3, -119, 255},
{ -18, 76, -80, 0, 72, -868, 33, 82, -90, 255},
{ 38, -47, -56, 0, 194, -1434, 96, -59, -57, 255},
{ 57, -12, -27, 0, 338, -1618, 72, -64, -81, 255},
{ 57, -22, 0, 0, 478, -1624, 84, -94, -8, 255},
{ 55, 11, -39, 0, 280, 1458, 70, 19, -103, 255},
{ 93, 12, -38, 0, 284, 1080, 46, -19, -116, 255},
{ 57, -12, -27, 0, 338, 1446, 72, -64, -81, 255},
{ 55, 10, 40, 0, 678, -1606, 71, -4, 104, 255},
{ 54, 35, 28, 0, 618, -1596, 62, 83, 72, 255},
{ 33, 62, 57, 0, 766, -1380, 90, 74, 48, 255},
{ 39, -70, 0, 0, 478, -1444, 100, -78, 0, 255},
{ -11, -72, -80, 0, 72, -938, 33, -79, -93, 255},
{ -9, -102, 0, 0, 480, -954, 41, -119, 1, 255},
{ 38, -47, 57, 0, 764, -1434, 98, -62, 50, 255},
{ 57, -22, 0, 0, 478, -1624, 84, -94, -8, 255},
{ 57, -12, 28, 0, 620, -1618, 73, -79, 66, 255},
{ 38, -47, 57, 0, 764, -1434, 98, -62, 50, 255},
{ 35, 12, 81, 0, 882, -1404, 92, 2, 86, 255},
{ 55, 10, 40, 0, 678, -1606, 71, -4, 104, 255},
{ -11, -68, 81, 0, 886, -938, 39, -72, 96, 255},
{ -9, -102, 0, 0, 480, -954, 41, -119, 1, 255},
{ 39, -70, 0, 0, 478, -1444, 100, -78, 0, 255},
{ 33, 62, 57, 0, 766, -1380, 90, 74, 48, 255},
{ -43, 6, 114, 0, 1050, -610, 0, 1, 126, 255},
{ -40, -71, 81, 0, 882, -648, 9, -101, 76, 255},
{ -14, 8, 115, 0, 1054, -900, 36, 4, 121, 255},
{ -18, 76, 81, 0, 886, -868, 33, 82, 90, 255},
{ -19, 99, 0, 0, 480, -856, 28, 123, 0, 255},
{ -18, 76, -80, 0, 72, -868, 33, 82, -90, 255},
{ -47, 79, -80, 0, 76, -574, 1, 109, -64, 255},
{ -19, 99, 0, 0, 480, -856, 28, 123, 0, 255},
{ -47, 79, 81, 0, 882, -574, 1, 109, 64, 255},
{ -18, 76, 81, 0, 886, -868, 33, 82, 90, 255},
{ -47, 79, -80, 0, 76, -574, 1, 109, -64, 255},
{ -48, 96, 0, 0, 480, -566, -13, 126, 0, 255},
{ -43, 6, 114, 0, 1050, -610, 0, 1, 126, 255},
{ -14, 8, 115, 0, 1054, -900, 36, 4, 121, 255},
{ -11, -68, 81, 0, 886, -938, 39, -72, 96, 255},
{ -40, -71, 81, 0, 882, -648, 9, -101, 76, 255},
{ -9, -102, 0, 0, 480, -954, 41, -119, 1, 255},
{ -11, -72, -80, 0, 72, -938, 33, -79, -93, 255},
{ -40, -74, -80, 0, 76, -650, 7, -102, -74, 255},
{ -43, 6, -113, 0, -90, -610, 0, 2, -126, 255},
{ -38, -104, 0, 0, 480, -664, 8, -126, 1, 255},
{ -14, 8, -114, 0, -94, -900, 44, -3, -119, 255},
{ -18, 76, -80, 0, 72, -868, 33, 82, -90, 255},
};
static Gfx gfx_p_waist_0[] = {
gs_Tani_LoadTextureImage2(peach_skirt_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
gsSPLight((&light_p_waist[0].l[0]),1 ),
gsSPLight((&light_p_waist[0].a ),2 ),
gsSPVertex(&vtx_p_waist_0[0], 16, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 4, 5, 0),
gsSP1Triangle( 6, 3, 7, 0),
gsSP1Triangle( 3, 8, 9, 0),
gsSP1Triangle( 9, 4, 3, 0),
gsSP1Triangle( 3, 5, 7, 0),
gsSP1Triangle( 8, 3, 6, 0),
gsSP1Triangle( 4,10, 5, 0),
gsSP1Triangle( 6, 7,11, 0),
gsSP1Triangle( 4,12,13, 0),
gsSP1Triangle(13,10, 4, 0),
gsSP1Triangle(12, 4, 9, 0),
gsSP1Triangle( 2, 1,14, 0),
gsSP1Triangle( 1, 0,15, 0),
gsSPVertex(&vtx_p_waist_0[16], 16, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 4, 5, 0),
gsSP1Triangle( 2, 4, 3, 0),
gsSP1Triangle( 6, 2, 3, 0),
gsSP1Triangle( 0, 2, 7, 0),
gsSP1Triangle( 7, 2, 6, 0),
gsSP1Triangle( 8, 0, 9, 0),
gsSP1Triangle(10, 0,11, 0),
gsSP1Triangle( 0, 7,11, 0),
gsSP1Triangle( 1, 0, 8, 0),
gsSP1Triangle( 0,10, 9, 0),
gsSP1Triangle(12, 7, 6, 0),
gsSP1Triangle(11, 7,12, 0),
gsSP1Triangle(13,11,12, 0),
gsSP1Triangle(11,14,10, 0),
gsSP1Triangle(14,11,13, 0),
gsSP1Triangle( 9,10,15, 0),
gsSP1Triangle(10,14,15, 0),
gsSPVertex(&vtx_p_waist_0[32], 16, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 0, 4, 0),
gsSP1Triangle( 1, 0, 3, 0),
gsSP1Triangle( 3, 4, 5, 0),
gsSP1Triangle( 6, 7, 8, 0),
gsSP1Triangle( 9,10,11, 0),
gsSP1Triangle(12, 3, 5, 0),
gsSP1Triangle( 3,13, 1, 0),
gsSP1Triangle(14,13, 3, 0),
gsSP1Triangle( 3,12,14, 0),
gsSP1Triangle(15,12, 5, 0),
gsSPVertex(&vtx_p_waist_0[48], 16, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 2, 1, 0),
gsSP1Triangle( 1, 4, 3, 0),
gsSP1Triangle( 2, 5, 6, 0),
gsSP1Triangle( 6, 7, 2, 0),
gsSP1Triangle( 5, 2, 3, 0),
gsSP1Triangle( 8, 3, 4, 0),
gsSP1Triangle( 9,10, 5, 0),
gsSP1Triangle( 3,11, 5, 0),
gsSP1Triangle(12,11, 3, 0),
gsSP1Triangle( 3, 8,12, 0),
gsSP1Triangle(13,12, 8, 0),
gsSP1Triangle(14,15,13, 0),
gsSPVertex(&vtx_p_waist_0[64], 16, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 4, 0, 0),
gsSP1Triangle( 0, 4, 1, 0),
gsSP1Triangle( 2, 5, 6, 0),
gsSP1Triangle( 2, 1, 5, 0),
gsSP1Triangle( 7, 8, 9, 0),
gsSP1Triangle( 6, 5, 7, 0),
gsSP1Triangle(10,11,12, 0),
gsSP1Triangle( 9,11,10, 0),
gsSP1Triangle( 9,13,11, 0),
gsSP1Triangle( 8,13, 9, 0),
gsSP1Triangle(14,12,15, 0),
gsSP1Triangle(10,12,14, 0),
gsSP1Triangle(12, 3,15, 0),
gsSPEndDisplayList()
};
/* ====================================================================================
: Normal XLU polygon.
======================================================================================= */
Gfx gfx_p_waist[] = {
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_MODULATERGB_ENVA, G_CC_MODULATERGB_ENVA),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, 7, 0, 0,0,0, 0,0,0),
gsSPTexture(0xffff,0xffff, 0, 0, G_ON),
gs_Tani_SetUpTileDescrip(G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 0, G_TX_WRAP|G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP|G_TX_NOMIRROR, 5, G_TX_NOLOD),
gsSPDisplayList(gfx_p_waist_0),
gsSPTexture(0xffff, 0xffff, 0, 0, G_OFF),
gsDPPipeSync(),
gsSPEndDisplayList()
};
/* ====================================================================================
: XLU polygon with Z-Buffer.
======================================================================================= */
#define RM_AA_ZBXLU_SURF1(clk) \
AA_EN | Z_CMP | Z_UPD | IM_RD | FORCE_BL | CVG_DST_WRAP | CLR_ON_CVG | ZMODE_XLU | \
GBL_c##clk(G_BL_CLR_IN, G_BL_A_IN, G_BL_CLR_MEM, G_BL_1MA)
#define RM_AA_WITH_ZB_XLU_SURF RM_AA_ZBXLU_SURF1(1)
Gfx gfx_p_waist_zbxlu[] = {
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_MODULATERGB_ENVA, G_CC_MODULATERGB_ENVA),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, 7, 0, 0,0,0, 0,0,0),
gsDPSetRenderMode(RM_AA_WITH_ZB_XLU_SURF, RM_AA_WITH_ZB_XLU_SURF),
gsSPTexture(0xffff,0xffff, 0, 0, G_ON),
gs_Tani_SetUpTileDescrip(G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 0, G_TX_WRAP|G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP|G_TX_NOMIRROR, 5, G_TX_NOLOD),
gsSPDisplayList(gfx_p_waist_0),
gsSPTexture(0xffff, 0xffff, 0, 0, G_OFF),
gsDPPipeSync(),
gsSPEndDisplayList()
};