Mario Kart 64
Loading...
Searching...
No Matches
render_player.h
Go to the documentation of this file.
1#ifndef CODE_8001F980_H
2#define CODE_8001F980_H
3
4#include "types.h"
5#include "common_structs.h"
6#include "buffers.h"
7
8#define SOME_TEXTURE_POINTER_MATH 0x800
9
10/* Function Prototypes */
11
12void func_8001F980(s32*, s32*);
17void func_80020524(void);
18void func_8002088C(void);
19void func_80020BF4(void);
20void func_80020F1C(void);
26void func_80021B0C(void);
27void func_80021C78(void);
28void func_80021D40(void);
29void func_80021DA8(void);
32void mtxf_scale2(Mat4, f32);
33void func_80021FF8(Mtx*, Mat4);
40void func_80022744(void);
41void func_8002276C(void);
42void func_80022A98(Player*, s8);
53void func_800235AC(Player*, s8);
54void func_80023BF0(Player*, s8, s8, s8);
57void kart_render(Player*, s8, s8, s8);
58void ghost_render(Player*, s8, s8, s8);
59void func_80025DE8(Player*, s8, s8, s8);
61void player_render(Player*, s8, s8);
62void func_80026A48(Player*, s8);
63void func_80026B4C(Player*, s8, s8, s8);
65void func_8002701C(void);
67
68/* This is where I'd put my static data, if I had any */
69
71extern u8 *D_80164B08;
72extern u8 *D_80164B0C;
73
74extern s32 D_80164A28;
75extern s16 D_80164AB0[];
76extern s16 D_80164ABE[];
77extern s16 D_80164AC0[];
78extern Player *D_80164AD0[];
80extern u16 gPlayerRedEffect[];
81extern u16 gPlayerGreenEffect[];
82extern u16 gPlayerBlueEffect[];
83extern u16 gPlayerCyanEffect[];
86extern s32 D_80164B80[];
87
88extern s32 D_8018D930[];
89
91extern Gfx D_0D008D58[];
92
94extern void *D_800DDB5C[];
95extern Vtx *D_800DDBB4[];
96extern f32 gCharacterSize[];
97extern s32 D_800DDE74[];
98extern Vtx D_800E51D0[];
99extern Vtx D_800E5210[];
100extern f64 D_800ED680;
101extern f64 D_800ED688;
102extern f32 D_800ED6A8;
103
104// There are actually found in data_0DD0A0_2_0.s
105extern Vtx D_800E49C0[];
106extern Vtx D_800E4AC0[];
107extern Vtx D_800E4BC0[];
108extern Vtx D_800E4CC0[];
109extern Vtx D_800E4DC0[];
110extern Vtx D_800E4EC0[];
111extern Vtx D_800E4FD0[];
112extern Vtx D_800E50D0[];
113
114extern u8 **gKartMarioWheels0[];
115extern u8 **gKartMarioWheels1[];
116extern u8 **gKartLuigiWheels0[];
117extern u8 **gKartLuigiWheels1[];
118extern u8 **gKartBowserWheels0[];
119extern u8 **gKartBowserWheels1[];
120extern u8 **gKartToadWheels0[];
121extern u8 **gKartToadWheels1[];
122extern u8 **gKartYoshiWheels0[];
123extern u8 **gKartYoshiWheels1[];
124extern u8 **gKartDKWheels0[];
125extern u8 **gKartDKWheels1[];
126extern u8 **gKartPeachWheels0[];
127extern u8 **gKartPeachWheels1[];
128extern u8 **gKartWarioWheels0[];
129extern u8 **gKartWarioWheels1[];
130
131
132extern u16 **D_800DDE34[];
133extern u16 **D_800DDE54[];
134
135
136// These all come the kart data stuff, they should end up in their own inc.c eventually
137extern u8 *gKartMario168Wheel0[];
138extern u8 *gKartMario147Wheel0[];
139extern u8 *gKartMario126Wheel0[];
140extern u8 *gKartMario105Wheel0[];
141extern u8 *gKartMario084Wheel0[];
142extern u8 *gKartMario063Wheel0[];
143extern u8 *gKartMario042Wheel0[];
144extern u8 *gKartMario021Wheel0[];
145extern u8 *gKartMario000Wheel0[];
146extern u8 *gKartMario269Wheel0[];
148extern u8 *gKartMario249Wheel0[];
149extern u8 *gKartMario229Wheel0[];
151extern u8 *gKartMario229Wheel0[];
152extern u8 *gKartMario209Wheel0[];
153extern u8 *gKartMario189Wheel0[];
155extern u8 *gKartLuigi168Wheel0[];
156extern u8 *gKartLuigi147Wheel0[];
157extern u8 *gKartLuigi126Wheel0[];
158extern u8 *gKartLuigi105Wheel0[];
159extern u8 *gKartLuigi084Wheel0[];
160extern u8 *gKartLuigi063Wheel0[];
161extern u8 *gKartLuigi042Wheel0[];
162extern u8 *gKartLuigi021Wheel0[];
163extern u8 *gKartLuigi000Wheel0[];
164extern u8 *gKartLuigi269Wheel0[];
166extern u8 *gKartLuigi249Wheel0[];
167extern u8 *gKartLuigi229Wheel0[];
169extern u8 *gKartLuigi229Wheel0[];
170extern u8 *gKartLuigi209Wheel0[];
171extern u8 *gKartLuigi189Wheel0[];
173extern u8 *gKartBowser168Wheel0[];
174extern u8 *gKartBowser147Wheel0[];
175extern u8 *gKartBowser126Wheel0[];
176extern u8 *gKartBowser105Wheel0[];
177extern u8 *gKartBowser084Wheel0[];
178extern u8 *gKartBowser063Wheel0[];
179extern u8 *gKartBowser042Wheel0[];
180extern u8 *gKartBowser021Wheel0[];
181extern u8 *gKartBowser000Wheel0[];
182extern u8 *gKartBowser269Wheel0[];
184extern u8 *gKartBowser249Wheel0[];
185extern u8 *gKartBowser229Wheel0[];
187extern u8 *gKartBowser229Wheel0[];
188extern u8 *gKartBowser209Wheel0[];
189extern u8 *gKartBowser189Wheel0[];
191extern u8 *gKartToad168Wheel0[];
192extern u8 *gKartToad147Wheel0[];
193extern u8 *gKartToad126Wheel0[];
194extern u8 *gKartToad105Wheel0[];
195extern u8 *gKartToad084Wheel0[];
196extern u8 *gKartToad063Wheel0[];
197extern u8 *gKartToad042Wheel0[];
198extern u8 *gKartToad021Wheel0[];
199extern u8 *gKartToad000Wheel0[];
200extern u8 *gKartToad269Wheel0[];
202extern u8 *gKartToad249Wheel0[];
203extern u8 *gKartToad229Wheel0[];
205extern u8 *gKartToad229Wheel0[];
206extern u8 *gKartToad209Wheel0[];
207extern u8 *gKartToad189Wheel0[];
209extern u8 *gKartYoshi168Wheel0[];
210extern u8 *gKartYoshi147Wheel0[];
211extern u8 *gKartYoshi126Wheel0[];
212extern u8 *gKartYoshi105Wheel0[];
213extern u8 *gKartYoshi084Wheel0[];
214extern u8 *gKartYoshi063Wheel0[];
215extern u8 *gKartYoshi042Wheel0[];
216extern u8 *gKartYoshi021Wheel0[];
217extern u8 *gKartYoshi000Wheel0[];
218extern u8 *gKartYoshi269Wheel0[];
220extern u8 *gKartYoshi249Wheel0[];
221extern u8 *gKartYoshi229Wheel0[];
223extern u8 *gKartYoshi229Wheel0[];
224extern u8 *gKartYoshi209Wheel0[];
225extern u8 *gKartYoshi189Wheel0[];
227extern u8 *gKartDK168Wheel0[];
228extern u8 *gKartDK147Wheel0[];
229extern u8 *gKartDK126Wheel0[];
230extern u8 *gKartDK105Wheel0[];
231extern u8 *gKartDK084Wheel0[];
232extern u8 *gKartDK063Wheel0[];
233extern u8 *gKartDK042Wheel0[];
234extern u8 *gKartDK021Wheel0[];
235extern u8 *gKartDK000Wheel0[];
236extern u8 *gKartDK269Wheel0[];
238extern u8 *gKartDK249Wheel0[];
239extern u8 *gKartDK229Wheel0[];
241extern u8 *gKartDK229Wheel0[];
242extern u8 *gKartDK209Wheel0[];
243extern u8 *gKartDK189Wheel0[];
245extern u8 *gKartPeach168Wheel0[];
246extern u8 *gKartPeach147Wheel0[];
247extern u8 *gKartPeach126Wheel0[];
248extern u8 *gKartPeach105Wheel0[];
249extern u8 *gKartPeach084Wheel0[];
250extern u8 *gKartPeach063Wheel0[];
251extern u8 *gKartPeach042Wheel0[];
252extern u8 *gKartPeach021Wheel0[];
253extern u8 *gKartPeach000Wheel0[];
254extern u8 *gKartPeach269Wheel0[];
256extern u8 *gKartPeach249Wheel0[];
257extern u8 *gKartPeach229Wheel0[];
259extern u8 *gKartPeach229Wheel0[];
260extern u8 *gKartPeach209Wheel0[];
261extern u8 *gKartPeach189Wheel0[];
263extern u8 *gKartWario168Wheel0[];
264extern u8 *gKartWario147Wheel0[];
265extern u8 *gKartWario126Wheel0[];
266extern u8 *gKartWario105Wheel0[];
267extern u8 *gKartWario084Wheel0[];
268extern u8 *gKartWario063Wheel0[];
269extern u8 *gKartWario042Wheel0[];
270extern u8 *gKartWario021Wheel0[];
271extern u8 *gKartWario000Wheel0[];
272extern u8 *gKartWario269Wheel0[];
274extern u8 *gKartWario249Wheel0[];
275extern u8 *gKartWario229Wheel0[];
277extern u8 *gKartWario229Wheel0[];
278extern u8 *gKartWario209Wheel0[];
279extern u8 *gKartWario189Wheel0[];
281
282extern s16 D_80165020[40];
283extern Vec3f D_80165070[8];
284extern s16 D_801650D0[4][8];
285extern s16 D_80165110[4][8];
286extern s16 D_80165150[4][8];
287extern s16 D_80165190[4][8];
288extern s16 D_801651D0[4][8];
289
290#endif
s16 D_8015F6E8
Definition code_800029B0.c:86
f32 Vec3f[3]
Definition common_structs.h:6
s16 Vec3s[3]
Definition common_structs.h:8
f32 Mat4[4][4]
Definition common_structs.h:13
void * D_800DDB5C[]
Definition render_player.c:32
u8 * gKartDK168Wheel0[]
void func_80020BF4(void)
Definition render_player.c:301
void func_80021B0C(void)
Definition render_player.c:609
u8 * gKartDK084Wheel0[]
u8 ** gKartBowserWheels1[]
Definition render_player.c:444
s32 is_player_under_light_luigi_raceway(Player *, s8)
Definition render_player.c:1031
void func_80020F1C(void)
Definition render_player.c:320
void func_80022B50(Player *, s8)
u8 * gKartDK147Wheel0[]
Vtx D_800E5210[]
void func_80021C78(void)
Definition render_player.c:636
void render_player_shadow_credits(Player *, s8, s8)
Definition render_player.c:1295
u8 * gKartWario063Wheel0[]
u8 * gKartWario126Wheel0[]
u8 * gKartYoshi229Wheel0[]
Definition render_player.h:222
u8 ** gKartMarioWheels0[]
Definition render_player.c:414
u8 ** gKartToadWheels0[]
Definition render_player.c:450
u8 ** gKartPeachWheels0[]
Definition render_player.c:486
void func_8002701C(void)
Definition render_player.c:1746
u8 * gKartDK249Wheel0[]
u8 ** gKartPeachWheels1[]
Definition render_player.c:492
u8 * gKartToad126Wheel0[]
u8 * gKartWario249Wheel0[]
u8 * gKartMario189Wheel0[]
Definition render_player.h:154
u8 * gKartWario229Wheel0[]
Definition render_player.h:276
u8 * gKartBowser209Wheel0[]
void player_render(Player *, s8, s8)
Definition render_player.c:1635
u8 * gKartToad063Wheel0[]
u8 * gKartPeach042Wheel0[]
u8 * gKartBowser189Wheel0[]
Definition render_player.h:190
u8 * gKartWario189Wheel0[]
Definition render_player.h:280
u16 check_player_camera_collision(Player *, Camera *, f32, f32)
Definition render_player.c:94
u8 ** gKartDKWheels0[]
Definition render_player.c:474
u16 gPlayerGreenEffect[]
Definition render_player.c:45
void func_80022DB4(Player *, s8)
u8 * gKartWario147Wheel0[]
void mtxf_scale2(Mat4, f32)
Definition render_player.c:696
u8 * gKartLuigi042Wheel0[]
u8 * gKartMario063Wheel0[]
u8 * gKartBowser168Wheel0[]
u8 * gKartBowser147Wheel0[]
u8 * gKartDK229Wheel0[]
Definition render_player.h:240
u8 * gKartDK189Wheel0[]
Definition render_player.h:244
u8 * gKartLuigi063Wheel0[]
u16 ** D_800DDE54[]
Definition render_player.c:515
s16 D_80165190[4][8]
Definition render_player.c:58
u8 * gKartYoshi269Wheel0[]
Definition render_player.h:219
s32 gPlayersToRenderCount
Definition render_player.c:28
u8 * gKartBowser229Wheel0[]
Definition render_player.h:186
u8 * gKartMario042Wheel0[]
u8 * gKartWario042Wheel0[]
void func_8001F980(s32 *, s32 *)
Definition render_player.c:61
u8 * gKartPeach269Wheel0[]
Definition render_player.h:255
u8 * gKartToad229Wheel0[]
Definition render_player.h:204
u8 * gKartLuigi147Wheel0[]
u8 * gKartToad168Wheel0[]
void player_ice_reflection_render(Player *, s8, s8, s8)
Definition render_player.c:1591
u8 * gKartPeach168Wheel0[]
s32 D_80164A28
Definition camera.c:34
void render_player_shadow(Player *, s8, s8)
Definition render_player.c:1220
u8 * gKartYoshi042Wheel0[]
u8 * gKartWario105Wheel0[]
u8 * gKartDK269Wheel0[]
Definition render_player.h:237
Vtx D_800E4BC0[]
u8 * gKartPeach000Wheel0[]
u8 * gKartPeach126Wheel0[]
u8 * D_80164B08
Definition render_player.c:42
f32 D_800ED6A8
Vtx D_800E4CC0[]
u8 * gKartYoshi189Wheel0[]
Definition render_player.h:226
void render_players_on_screen_two(void)
Definition render_player.c:528
u16 func_8001FD78(Player *, f32, f32, f32)
u8 * gKartPeach084Wheel0[]
void move_s32_towards(s32 *, s32, f32)
Definition render_player.c:777
void move_f32_towards(f32 *, f32, f32)
Definition render_player.c:803
u16 ** D_800DDE34[]
Definition render_player.c:510
u8 * gKartLuigi000Wheel0[]
u8 * gKartDK209Wheel0[]
Vtx D_800E4AC0[]
u8 * gKartLuigi209Wheel0[]
void mtxf_translate_rotate(Mat4, Vec3f, Vec3s)
Definition render_player.c:663
u8 * gKartYoshi168Wheel0[]
void func_80022E84(Player *, s8, s8, s8)
u8 * gKartMario209Wheel0[]
u8 * gKartLuigi084Wheel0[]
Vec3f D_80165070[8]
Definition render_player.c:54
u8 * gKartYoshi126Wheel0[]
s16 D_80165110[4][8]
Definition render_player.c:56
u8 ** gKartWarioWheels1[]
Definition render_player.c:504
u8 * gKartBowser084Wheel0[]
u8 * gKartLuigi021Wheel0[]
struct_D_802F1F80 * gPlayerPalette
Definition render_player.c:41
void render_players_on_screen_four(void)
Definition render_player.c:588
s16 D_80164ABE[]
void render_players_on_screen_one(void)
Definition render_player.c:349
u8 * gKartDK000Wheel0[]
void func_80026B4C(Player *, s8, s8, s8)
Definition render_player.c:1701
void func_8002276C(void)
Definition render_player.c:823
u8 * gKartMario084Wheel0[]
u8 * gKartYoshi000Wheel0[]
u8 * gKartToad042Wheel0[]
u8 * gKartPeach021Wheel0[]
s32 D_8018D930[]
Definition effects.c:22
u8 * gKartYoshi021Wheel0[]
u8 * gKartToad000Wheel0[]
u8 * gKartMario249Wheel0[]
u8 * gKartLuigi249Wheel0[]
void func_80022CA8(Player *, s8, s8, s8)
u8 ** gKartLuigiWheels1[]
Definition render_player.c:432
s32 adjust_angle(s16 *, s16, s16)
Definition render_player.c:748
u8 * gKartLuigi189Wheel0[]
Definition render_player.h:172
void func_80022A98(Player *, s8)
Definition render_player.c:895
void render_light_environment_on_player(Player *, s8)
Definition render_player.c:1051
void func_80022BC4(Player *, s8)
s32 D_800DDE74[]
Definition render_player.c:520
u8 * gKartYoshi209Wheel0[]
Vtx * D_800DDBB4[]
Definition render_player.c:404
Gfx common_square_plain_render[]
Definition common_textures.inc.c:2143
s16 D_80165150[4][8]
Definition render_player.c:57
u8 * gKartWario168Wheel0[]
void func_80026A48(Player *, s8)
Definition render_player.c:1672
u8 * gKartPeach063Wheel0[]
u8 * gKartPeach229Wheel0[]
Definition render_player.h:258
u8 * gKartWario269Wheel0[]
Definition render_player.h:273
u8 ** gKartYoshiWheels1[]
Definition render_player.c:468
u8 * gKartWario084Wheel0[]
Vtx D_800E49C0[]
u8 * gKartYoshi084Wheel0[]
void init_render_player(Player *, Camera *, s8, s8)
Definition render_player.c:172
u8 * gKartDK105Wheel0[]
u8 * gKartToad269Wheel0[]
Definition render_player.h:201
Vtx D_800E4DC0[]
u8 ** gKartWarioWheels0[]
Definition render_player.c:498
u8 * gKartPeach147Wheel0[]
u8 * gKartMario147Wheel0[]
Vtx D_800E51D0[]
u8 * gKartPeach249Wheel0[]
u8 ** gKartBowserWheels0[]
Definition render_player.c:438
u8 * gKartMario105Wheel0[]
void func_80021D40(void)
Definition render_player.c:649
void try_render_player(Player *, s8, s8)
Definition render_player.c:339
void func_80020524(void)
Definition render_player.c:247
void move_u16_towards(u16 *, s16, f32)
Definition render_player.c:814
void ghost_render(Player *, s8, s8, s8)
Definition render_player.c:1480
u8 * gKartBowser269Wheel0[]
Definition render_player.h:183
u8 * gKartBowser000Wheel0[]
u8 * gKartDK021Wheel0[]
u8 * gKartToad147Wheel0[]
u16 gPlayerRedEffect[]
Definition render_player.c:44
u16 gPlayerBlueEffect[]
Definition render_player.c:46
void change_player_color_effect_rgb(Player *, s8, s32, f32)
void func_80022D60(Player *, s8, s8, s8)
f64 D_800ED680
u8 * gKartBowser126Wheel0[]
void func_80027024(s32, s32, s32)
u8 * gKartYoshi063Wheel0[]
u8 ** gKartToadWheels1[]
Definition render_player.c:456
u8 * gKartBowser042Wheel0[]
u8 * gKartPeach105Wheel0[]
s32 D_80164B80[]
Definition render_player.c:52
u8 * gKartToad209Wheel0[]
u8 * gKartLuigi105Wheel0[]
u8 * gKartYoshi249Wheel0[]
void change_player_color_effect_cmy(Player *, s8, s32, f32)
u16 gPlayerCyanEffect[]
Definition render_player.c:47
u8 * gKartMario168Wheel0[]
s16 gMatrixEffectCount
Definition render_player.c:39
u8 * gKartMario021Wheel0[]
Vtx D_800E50D0[]
u8 * gKartWario000Wheel0[]
s16 D_801651D0[4][8]
Definition render_player.c:59
f32 gCharacterSize[]
Definition render_player.c:409
Vtx D_800E4EC0[]
u8 * gKartWario021Wheel0[]
u8 * gKartLuigi126Wheel0[]
u8 * gKartToad249Wheel0[]
void func_80021DA8(void)
Definition render_player.c:656
void func_80021FF8(Mtx *, Mat4)
Definition render_player.c:708
u8 * gKartLuigi168Wheel0[]
void render_players_on_screen_three(void)
Definition render_player.c:567
u8 * gKartMario126Wheel0[]
void func_80025DE8(Player *, s8, s8, s8)
Definition render_player.c:1550
u8 ** gKartMarioWheels1[]
Definition render_player.c:420
u8 * gKartBowser021Wheel0[]
u8 ** gKartLuigiWheels0[]
Definition render_player.c:426
u8 * gKartDK063Wheel0[]
u8 * gKartMario229Wheel0[]
Definition render_player.h:150
u8 * gKartLuigi269Wheel0[]
Definition render_player.h:165
u8 * D_80164B0C
Definition render_player.c:43
u16 gPlayerYellowEffect[]
Definition render_player.c:49
s16 D_80165020[40]
Definition render_player.c:53
u8 * gKartBowser249Wheel0[]
u8 * gKartMario269Wheel0[]
Definition render_player.h:147
u8 * gKartToad105Wheel0[]
s16 D_80164AB0[]
Definition render_player.c:36
u8 ** gKartDKWheels1[]
Definition render_player.c:480
s16 D_801650D0[4][8]
Definition render_player.c:55
u8 * gKartPeach189Wheel0[]
Definition render_player.h:262
void func_80022744(void)
Definition render_player.c:818
u8 * gKartToad021Wheel0[]
u8 * gKartYoshi105Wheel0[]
u8 * gKartToad189Wheel0[]
Definition render_player.h:208
u16 gPlayerMagentaEffect[]
Definition render_player.c:48
u8 * gKartYoshi147Wheel0[]
Player * D_80164AD0[]
Definition render_player.c:38
u8 * gKartDK126Wheel0[]
u8 * gKartDK042Wheel0[]
void func_8002088C(void)
Definition render_player.c:276
u8 * gKartBowser105Wheel0[]
u8 * gKartWario209Wheel0[]
Gfx D_0D008D58[]
Definition common_textures.inc.c:2183
u8 * gKartMario000Wheel0[]
Vtx D_800E4FD0[]
void kart_render(Player *, s8, s8, s8)
Definition render_player.c:1347
void func_8001F9E4(Player *, Camera *, s8)
Definition render_player.c:74
u8 * gKartLuigi229Wheel0[]
Definition render_player.h:168
u8 ** gKartYoshiWheels0[]
Definition render_player.c:462
void func_80030A34(Player *)
Definition player_controller.c:3156
void move_s16_towards(s16 *, s16, f32)
Definition render_player.c:810
u8 * gKartToad084Wheel0[]
void func_80023BF0(Player *, s8, s8, s8)
Definition render_player.c:1209
u8 * gKartBowser063Wheel0[]
void func_800235AC(Player *, s8)
Definition render_player.c:1112
f64 D_800ED688
void convert_to_fixed_point_matrix(Mtx *, Mat4)
Definition render_player.c:728
void func_80021F50(Mat4, Vec3f)
Definition render_player.c:690
s16 D_80164AC0[]
Definition render_player.c:37
u8 * gKartPeach209Wheel0[]
Definition camera.h:26
Definition common_structs.h:245
Definition buffers.h:51
signed int s32
Definition ultratypes.h:15
signed char s8
Definition ultratypes.h:11
signed short int s16
Definition ultratypes.h:13
float f32
Definition ultratypes.h:33
double f64
Definition ultratypes.h:34
unsigned short int u16
Definition ultratypes.h:14
unsigned char u8
Definition ultratypes.h:12