sm64/shape/enemy2_f/rabbit/rabi_head_shape.sou
2022-12-04 22:27:02 -05:00

141 lines
5.7 KiB
Plaintext

/***************************************************************************************************
Convert from NINGEN (rabi_head)
****************************************************************************************************/
#define rabi_head_AMB_SCALE 0.4
#define ShapeColor_rabi_head(R,G,B) {{R*rabi_head_AMB_SCALE ,G*rabi_head_AMB_SCALE ,B*rabi_head_AMB_SCALE ,0 ,R*rabi_head_AMB_SCALE ,G*rabi_head_AMB_SCALE ,B*rabi_head_AMB_SCALE ,0 },{ R, G, B, 0, R, G, B, 0, LIGHT_X, LIGHT_Y, LIGHT_Z, 0} }
static Lights1 light_rabi_head[] = {
ShapeColor_rabi_head(255,255,255),
ShapeColor_rabi_head( 39, 33, 11),
};
static Vtx vtx_rabi_head_0[] = {
{ 60, 25, -62, 0, -146, -1034, 29, 33, -118, 255},
{ 102, 15, -32, 0, 144, -1598, 101, 13, -75, 255},
{ 46, -61, -46, 0, 8, -848, 35, -102, -65, 255},
{ 4, -54, -41, 0, 56, -296, -78, -65, -75, 255},
{ 100, -30, 0, 0, 458, -1572, 107, -67, 0, 255},
{ 4, -54, 42, 0, 858, -296, -71, -84, 62, 255},
{ 46, -61, 48, 0, 906, -848, 47, -88, 77, 255},
{ 60, 25, 64, 0, 1062, -1034, 28, 33, 119, 255},
{ -7, 16, 0, 0, 458, -128, -124, 23, 0, 255},
{ 2, 8, 67, 0, 1094, -262, -82, 22, 93, 255},
{ 2, 8, -66, 0, -178, -262, -81, 24, -93, 255},
{ 102, 15, 33, 0, 770, -1598, 102, 13, 74, 255},
{ 115, 13, 0, 0, 458, -1770, 116, 49, 0, 255},
{ 16, 44, 47, 0, 902, -454, -48, 93, 71, 255},
{ 16, 44, -45, 0, 14, -454, -47, 92, -72, 255},
{ 9, 60, 0, 0, 458, -352, -94, 84, 0, 255},
{ 115, 13, 0, 0, 468, 0, 116, 49, 0, 255},
{ 64, 56, -13, 0, 308, 632, 69, 89, -58, 255},
{ 64, 56, 15, 0, 632, 632, 68, 90, 56, 255},
{ 102, 15, -32, 0, 104, 80, 101, 13, -75, 255},
{ 102, 15, 33, 0, 834, 80, 102, 13, 74, 255},
{ 16, 44, -45, 0, -46, 922, -47, 92, -72, 255},
{ 45, 77, 0, 0, 468, 910, -5, 126, -2, 255},
{ 60, 25, -62, 0, -236, 468, 29, 33, -118, 255},
{ 9, 60, 0, 0, 468, 1082, -94, 84, 0, 255},
{ 16, 44, 47, 0, 988, 922, -48, 93, 71, 255},
{ 60, 25, 64, 0, 1176, 468, 28, 33, 119, 255},
{ 2, 8, -66, 0, -272, 800, -81, 24, -93, 255},
{ 2, 8, 67, 0, 1212, 800, -82, 22, 93, 255},
};
static Vtx vtx_rabi_head_1[] = {
{ 45, 77, 0, 0, 0, 0, -5, 126, -2, 255},
{ 64, 56, 15, 0, 0, 0, 68, 90, 56, 255},
{ 64, 76, 0, 0, 0, 0, 86, 93, -3, 255},
{ 64, 56, -13, 0, 0, 0, 69, 89, -58, 255},
{ -9, 52, -5, 0, 0, 0, -1, -1, -1, 255},
{ 11, 50, -12, 0, 0, 0, -1, -1, -1, 255},
{ 11, 50, 13, 0, 0, 0, -1, -1, -1, 255},
{ -9, 52, 6, 0, 0, 0, -1, -1, -1, 255},
};
static Gfx gfx_rabi_head_0[] = {
gs_Tani_LoadTextureImage2(rabi_face_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
gsSPLight((&light_rabi_head[0].l[0]),1 ),
gsSPLight((&light_rabi_head[0].a ),2 ),
gsSPVertex(&vtx_rabi_head_0[0], 16, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 0, 2, 0),
gsSP1Triangle( 2, 1, 4, 0),
gsSP1Triangle( 2, 5, 3, 0),
gsSP1Triangle( 2, 6, 5, 0),
gsSP1Triangle( 2, 4, 6, 0),
gsSP1Triangle( 5, 6, 7, 0),
gsSP1Triangle( 8, 3, 5, 0),
gsSP1Triangle( 5, 9, 8, 0),
gsSP1Triangle( 9, 5, 7, 0),
gsSP1Triangle( 3,10, 0, 0),
gsSP1Triangle( 8,10, 3, 0),
gsSP1Triangle( 6,11, 7, 0),
gsSP1Triangle( 4,11, 6, 0),
gsSP1Triangle(12,11, 4, 0),
gsSP1Triangle( 4, 1,12, 0),
gsSP1Triangle( 8, 9,13, 0),
gsSP1Triangle(14,10, 8, 0),
gsSP1Triangle( 8,15,14, 0),
gsSP1Triangle(13,15, 8, 0),
gsSPVertex(&vtx_rabi_head_0[16], 13, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 1, 0, 0),
gsSP1Triangle( 2, 4, 0, 0),
gsSP1Triangle( 5, 6, 1, 0),
gsSP1Triangle( 5, 1, 7, 0),
gsSP1Triangle( 7, 1, 3, 0),
gsSP1Triangle( 5, 8, 6, 0),
gsSP1Triangle( 6, 9, 2, 0),
gsSP1Triangle( 2, 9,10, 0),
gsSP1Triangle( 2,10, 4, 0),
gsSP1Triangle(11, 5, 7, 0),
gsSP1Triangle( 9,12,10, 0),
gsSP1Triangle( 6, 8, 9, 0),
gsSPEndDisplayList()
};
static Gfx gfx_rabi_head_1[] = {
gsSPLight((&light_rabi_head[1].l[0]),1 ),
gsSPLight((&light_rabi_head[1].a ),2 ),
gsSPVertex(&vtx_rabi_head_1[0], 4, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 0, 2, 0),
gsSP1Triangle( 3, 2, 1, 0),
gsSPLight((&light_rabi_head[0].l[0]),1 ),
gsSPLight((&light_rabi_head[0].a ),2 ),
gsSPVertex(&vtx_rabi_head_1[4], 4, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 0, 2, 3, 0),
gsSP1Triangle( 3, 2, 0, 0),
gsSP1Triangle( 2, 1, 0, 0),
gsSPEndDisplayList()
};
Gfx gfx_rabi_head[] = {
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_MODULATERGB),
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_CLAMP|G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP|G_TX_NOMIRROR, 5, G_TX_NOLOD),
gsSPDisplayList(gfx_rabi_head_0),
gsSPTexture(0xffff, 0xffff, 0, 0, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPDisplayList(gfx_rabi_head_1),
gsSPEndDisplayList()
};