Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
MorsGames
GitHub Repository: MorsGames/sm64plus
Path: blob/master/actors/cyan_fish/model.inc.c
7857 views
1
// Cyan Fish
2
3
// ???
4
UNUSED static const u64 cyan_fish_unused_1 = 0;
5
6
// 0x0600D468
7
ALIGNED8 static const Texture cyan_fish_seg6_texture_0600D468[] = {
8
#include "actors/cyan_fish/cyan_fish.rgba16.inc.c"
9
};
10
11
static const Lights1 cyan_fish_seg6_lights_0600DC68 = gdSPDefLights1(
12
0x7f, 0x7f, 0x7f,
13
0xff, 0xff, 0xff, 0x28, 0x28, 0x28
14
);
15
16
// 0x0600DC80
17
static const Vtx cyan_fish_seg6_vertex_0600DC80[] = {
18
{{{ -95, 32, 0}, 0, { 32, 436}, {0xa9, 0x5b, 0xff, 0xff}}},
19
{{{ -39, 20, 28}, 0, { 184, 480}, {0xf4, 0x0a, 0x7d, 0xff}}},
20
{{{ 32, 112, 0}, 0, { 376, 144}, {0xe2, 0x7b, 0xff, 0xff}}},
21
{{{ -39, 20, -27}, 0, { 184, 478}, {0xf5, 0x09, 0x82, 0xff}}},
22
{{{ -115, 0, 0}, 0, { -22, 552}, {0x95, 0xbd, 0x00, 0xff}}},
23
{{{ 28, -79, 8}, 0, { 366, 844}, {0xd7, 0xb9, 0x60, 0xff}}},
24
{{{ 161, 14, 0}, 0, { 724, 500}, {0x69, 0x46, 0x00, 0xff}}},
25
{{{ 161, -13, 0}, 0, { 724, 604}, {0x69, 0xba, 0x00, 0xff}}},
26
{{{ 28, -79, -7}, 0, { 366, 844}, {0xd7, 0xba, 0xa0, 0xff}}},
27
{{{ 56, -111, 0}, 0, { 442, 960}, {0xc2, 0x92, 0x00, 0xff}}},
28
};
29
30
// 0x0600DD20 - 0x0600DDD8
31
const Gfx cyan_fish_seg6_dl_0600DD20[] = {
32
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, cyan_fish_seg6_texture_0600D468),
33
gsDPLoadSync(),
34
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
35
gsSPLight(&cyan_fish_seg6_lights_0600DC68.l, 1),
36
gsSPLight(&cyan_fish_seg6_lights_0600DC68.a, 2),
37
gsSPVertex(cyan_fish_seg6_vertex_0600DC80, 10, 0),
38
gsSP2Triangles( 0, 1, 2, 0x0, 3, 0, 2, 0x0),
39
gsSP2Triangles( 0, 4, 1, 0x0, 4, 0, 3, 0x0),
40
gsSP2Triangles( 4, 5, 1, 0x0, 1, 6, 2, 0x0),
41
gsSP2Triangles( 1, 5, 7, 0x0, 1, 7, 6, 0x0),
42
gsSP2Triangles( 6, 3, 2, 0x0, 4, 3, 8, 0x0),
43
gsSP2Triangles( 7, 8, 3, 0x0, 6, 7, 3, 0x0),
44
gsSP2Triangles( 5, 9, 7, 0x0, 7, 9, 8, 0x0),
45
gsSP2Triangles( 4, 8, 5, 0x0, 5, 8, 9, 0x0),
46
gsSPEndDisplayList(),
47
};
48
49
// 0x0600DDD8 - 0x0600DE38
50
const Gfx cyan_fish_seg6_dl_0600DDD8[] = {
51
gsDPPipeSync(),
52
gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_MODULATERGB),
53
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),
54
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
55
gsDPTileSync(),
56
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
57
gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
58
gsSPDisplayList(cyan_fish_seg6_dl_0600DD20),
59
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
60
gsDPPipeSync(),
61
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
62
gsSPEndDisplayList(),
63
};
64
65
// 0x0600DE38
66
static const Lights1 cyan_fish_seg6_lights_0600DE38 = gdSPDefLights1(
67
0x7f, 0x7f, 0x7f,
68
0xff, 0xff, 0xff, 0x28, 0x28, 0x28
69
);
70
71
// 0x0600DE50
72
static const Vtx cyan_fish_seg6_vertex_0600DE50[] = {
73
{{{ 9, -26, 0}, 0, { 420, 230}, {0x00, 0x00, 0x7f, 0xff}}},
74
{{{ 57, -48, 0}, 0, { 560, 260}, {0x00, 0x00, 0x7f, 0xff}}},
75
{{{ 120, 0, 0}, 0, { 688, 26}, {0x00, 0x00, 0x7f, 0xff}}},
76
{{{ 0, 0, 0}, 0, { 376, 144}, {0x00, 0x00, 0x7f, 0xff}}},
77
};
78
79
// 0x0600DE90 - 0x0600DED8
80
const Gfx cyan_fish_seg6_dl_0600DE90[] = {
81
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, cyan_fish_seg6_texture_0600D468),
82
gsDPLoadSync(),
83
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
84
gsSPLight(&cyan_fish_seg6_lights_0600DE38.l, 1),
85
gsSPLight(&cyan_fish_seg6_lights_0600DE38.a, 2),
86
gsSPVertex(cyan_fish_seg6_vertex_0600DE50, 4, 0),
87
gsSP2Triangles( 0, 1, 2, 0x0, 2, 3, 0, 0x0),
88
gsSPEndDisplayList(),
89
};
90
91
// 0x0600DED8 - 0x0600DF48
92
const Gfx cyan_fish_seg6_dl_0600DED8[] = {
93
gsDPPipeSync(),
94
gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_MODULATERGB),
95
gsSPClearGeometryMode(G_CULL_BACK),
96
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),
97
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
98
gsDPTileSync(),
99
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
100
gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
101
gsSPDisplayList(cyan_fish_seg6_dl_0600DE90),
102
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
103
gsDPPipeSync(),
104
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
105
gsSPSetGeometryMode(G_CULL_BACK),
106
gsSPEndDisplayList(),
107
};
108
109
// 0x0600DF48
110
static const Lights1 cyan_fish_seg6_lights_0600DF48 = gdSPDefLights1(
111
0x7f, 0x7f, 0x7f,
112
0xff, 0xff, 0xff, 0x28, 0x28, 0x28
113
);
114
115
// 0x0600DF60
116
static const Vtx cyan_fish_seg6_vertex_0600DF60[] = {
117
{{{ 55, -37, 6}, 0, { 868, 690}, {0x4e, 0xae, 0x37, 0xff}}},
118
{{{ 55, -37, -5}, 0, { 868, 690}, {0x15, 0xc0, 0x95, 0xff}}},
119
{{{ 88, 64, -3}, 0, { 958, 318}, {0x64, 0x15, 0xb6, 0xff}}},
120
{{{ 0, -13, 0}, 0, { 718, 604}, {0xca, 0xb5, 0x56, 0xff}}},
121
{{{ 0, 14, 0}, 0, { 718, 500}, {0xc7, 0x4c, 0xad, 0xff}}},
122
{{{ 88, 64, 4}, 0, { 958, 318}, {0x13, 0x24, 0x78, 0xff}}},
123
};
124
125
// 0x0600DFC0 - 0x0600E038
126
const Gfx cyan_fish_seg6_dl_0600DFC0[] = {
127
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, cyan_fish_seg6_texture_0600D468),
128
gsDPLoadSync(),
129
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
130
gsSPLight(&cyan_fish_seg6_lights_0600DF48.l, 1),
131
gsSPLight(&cyan_fish_seg6_lights_0600DF48.a, 2),
132
gsSPVertex(cyan_fish_seg6_vertex_0600DF60, 6, 0),
133
gsSP2Triangles( 0, 1, 2, 0x0, 1, 3, 4, 0x0),
134
gsSP2Triangles( 1, 4, 2, 0x0, 0, 3, 1, 0x0),
135
gsSP2Triangles( 3, 5, 4, 0x0, 3, 0, 5, 0x0),
136
gsSP2Triangles( 2, 4, 5, 0x0, 0, 2, 5, 0x0),
137
gsSPEndDisplayList(),
138
};
139
140
// 0x0600E038 - 0x0600E098
141
const Gfx cyan_fish_seg6_dl_0600E038[] = {
142
gsDPPipeSync(),
143
gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_MODULATERGB),
144
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),
145
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
146
gsDPTileSync(),
147
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
148
gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
149
gsSPDisplayList(cyan_fish_seg6_dl_0600DFC0),
150
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
151
gsDPPipeSync(),
152
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
153
gsSPEndDisplayList(),
154
};
155
156