sm64/shape/enemy2_h/bat/bat_head_shape.sou
2022-12-04 22:27:02 -05:00

154 lines
6.9 KiB
Plaintext

/***************************************************************************************************
Convert from NINGEN (bat_head)
****************************************************************************************************/
#define bat_head_AMB_SCALE 0.475
#define ShapeColor_bat_head(R,G,B) {{R*bat_head_AMB_SCALE ,G*bat_head_AMB_SCALE ,B*bat_head_AMB_SCALE ,0 ,R*bat_head_AMB_SCALE ,G*bat_head_AMB_SCALE ,B*bat_head_AMB_SCALE ,0 },{ R, G, B, 0, R, G, B, 0, LIGHT_X, LIGHT_Y, LIGHT_Z, 0} }
static Lights1 light_bat_head[] = {
ShapeColor_bat_head(255,255,255),
};
static Vtx vtx_bat_head_0[] = {
{ 80, 38, -44, 0, 40, 86, 63, 48, -98, 255},
{ 65, 77, -24, 0, 1108, 796, 68, 89, -58, 255},
{ 112, 54, 0, 0, 768, -454, 105, 70, 0, 255},
{ -14, 57, 28, 0, 622, 254, -106, 49, 48, 255},
{ -11, -13, 0, 0, 536, 234, -115, -52, 0, 255},
{ 17, -18, 89, 0, 804, 76, -52, -19, 114, 255},
{ 29, 71, 45, 0, 668, -2, 5, 68, 106, 255},
{ -14, 57, -27, 0, 450, 246, -106, 49, -48, 255},
{ 17, -18, -88, 0, 254, 54, -27, -33, -119, 255},
{ 29, 71, -44, 0, 386, -14, 5, 68, -107, 255},
{ 82, 4, -52, 0, -728, -328, 63, -2, -109, 255},
{ 17, -18, -88, 0, -1332, 810, -27, -33, -119, 255},
{ 29, 71, -44, 0, 878, 1484, 5, 68, -107, 255},
{ 114, 5, -24, 0, -496, -1006, 113, -25, -50, 255},
{ 82, 4, 53, 0, 758, 1078, 64, -15, 108, 255},
{ 83, -37, 25, 0, 628, 1076, 84, -85, 39, 255},
{ 114, 5, 25, 0, 626, 928, 111, -12, 60, 255},
{ 29, 71, 45, 0, 386, 1344, 5, 68, 106, 255},
{ 80, 38, 45, 0, 184, 100, 64, 49, 98, 255},
{ 65, 77, 25, 0, 1194, 792, 68, 89, 58, 255},
{ 112, 54, 0, 0, 1590, -282, 105, 70, 0, 255},
{ 17, -18, 89, 0, -2258, 574, -52, -19, 114, 255},
{ 82, 4, 53, 0, -608, -318, 64, -15, 108, 255},
{ 112, 54, 0, 0, 514, 940, 105, 70, 0, 255},
{ 80, 38, 45, 0, 722, 1090, 64, 49, 98, 255},
{ 34, -55, 44, 0, 722, 1312, 6, -118, 44, 255},
{ 17, -18, 89, 0, 928, 1394, -52, -19, 114, 255},
{ 83, -37, -24, 0, 402, 1080, 72, -92, -47, 255},
{ 82, 4, -52, 0, 272, 1086, 63, -2, -109, 255},
{ 114, 5, -24, 0, 400, 932, 113, -25, -50, 255},
{ 34, -55, 44, 0, 722, 1312, 6, -118, 44, 255},
{ 34, -55, -43, 0, 314, 1318, -26, -118, -36, 255},
{ 83, -37, -24, 0, 402, 1080, 72, -92, -47, 255},
{ 83, -37, 25, 0, 628, 1076, 84, -85, 39, 255},
{ 114, 5, -24, 0, 400, 932, 113, -25, -50, 255},
{ 114, 5, 25, 0, 626, 928, 111, -12, 60, 255},
{ 112, 54, 0, 0, 514, 940, 105, 70, 0, 255},
{ -11, -13, 0, 0, 522, 1540, -115, -52, 0, 255},
{ 17, -18, 89, 0, 928, 1394, -52, -19, 114, 255},
{ 17, -18, -88, 0, 112, 1406, -27, -33, -119, 255},
{ 82, 4, -52, 0, 272, 1086, 63, -2, -109, 255},
};
static Vtx vtx_bat_head_1[] = {
{ 112, 54, 0, 0, 702, 6, 105, 70, 0, 255},
{ 65, 77, -24, 0, 382, 266, 68, 89, -58, 255},
{ 65, 77, 25, 0, 878, 288, 68, 89, 58, 255},
{ 40, 113, 0, 0, 478, 480, -7, 126, 0, 255},
{ 65, 77, 25, 0, 726, 230, 68, 89, 58, 255},
{ 65, 77, -24, 0, 232, 230, 68, 89, -58, 255},
{ 29, 71, 45, 0, 932, 586, 5, 68, 106, 255},
{ 29, 71, -44, 0, 26, 586, 5, 68, -107, 255},
{ -14, 57, 28, 0, 756, 1022, -106, 49, 48, 255},
{ -14, 57, -27, 0, 202, 1022, -106, 49, -48, 255},
};
static Gfx gfx_bat_head_0[] = {
gs_Tani_LoadTextureImage2(bat_eye_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
gsSPLight((&light_bat_head[0].l[0]),1 ),
gsSPLight((&light_bat_head[0].a ),2 ),
gsSPVertex(&vtx_bat_head_0[0], 14, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 4, 5, 0),
gsSP1Triangle( 5, 6, 3, 0),
gsSP1Triangle( 3, 7, 4, 0),
gsSP1Triangle( 8, 4, 7, 0),
gsSP1Triangle( 7, 9, 8, 0),
gsSP1Triangle(10,11,12, 0),
gsSP1Triangle(10,12, 0, 0),
gsSP1Triangle( 0, 2,13, 0),
gsSP1Triangle( 0,13,10, 0),
gsSP1Triangle( 1, 0,12, 0),
gsSPVertex(&vtx_bat_head_0[14], 16, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 4, 5, 0),
gsSP1Triangle( 5, 4, 6, 0),
gsSP1Triangle( 3, 7, 8, 0),
gsSP1Triangle( 3, 8, 4, 0),
gsSP1Triangle( 2, 9,10, 0),
gsSP1Triangle( 2,10, 0, 0),
gsSP1Triangle(11, 1, 0, 0),
gsSP1Triangle(11, 0,12, 0),
gsSP1Triangle(13,14,15, 0),
gsSPVertex(&vtx_bat_head_0[30], 11, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 0, 2, 3, 0),
gsSP1Triangle( 4, 5, 3, 0),
gsSP1Triangle( 4, 3, 2, 0),
gsSP1Triangle( 4, 6, 5, 0),
gsSP1Triangle( 7, 1, 0, 0),
gsSP1Triangle( 0, 8, 7, 0),
gsSP1Triangle( 9, 1, 7, 0),
gsSP1Triangle( 2, 1, 9, 0),
gsSP1Triangle( 2, 9,10, 0),
gsSPEndDisplayList()
};
static Gfx gfx_bat_head_1[] = {
gs_Tani_LoadTextureImage2(bat_hana_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
gsSPVertex(&vtx_bat_head_1[0], 10, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 4, 5, 0),
gsSP1Triangle( 4, 3, 6, 0),
gsSP1Triangle( 7, 3, 5, 0),
gsSP1Triangle( 6, 3, 8, 0),
gsSP1Triangle( 3, 9, 8, 0),
gsSP1Triangle( 7, 9, 3, 0),
gsSPEndDisplayList()
};
Gfx gfx_bat_head[] = {
gsDPPipeSync(),
gsDPSetCycleType(G_CYC_2CYCLE),
gsDPSetRenderMode(G_RM_FOG_SHADE_A, G_RM_AA_ZB_OPA_SURF2),
gsDPSetDepthSource(G_ZS_PIXEL),
gsDPSetFogColor(STAGE7_BAT_FOG_R, STAGE7_BAT_FOG_G, STAGE7_BAT_FOG_B, 255),
gsSPFogPosition(STAGE7_BAT_FOG_START, 1000),
gsSPSetGeometryMode(G_FOG),
gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_PASS2),
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_bat_head_0),
gsSPDisplayList(gfx_bat_head_1),
gsSPTexture(0xffff, 0xffff, 0, 0, G_OFF),
gsDPPipeSync(),
gsDPSetCycleType(G_CYC_1CYCLE),
gsDPSetRenderMode(G_RM_AA_ZB_OPA_SURF, G_RM_AA_ZB_OPA_SURF),
gsSPClearGeometryMode(G_FOG),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPEndDisplayList()
};