|
void | func_8001F980 (s32 *, s32 *) |
|
void | func_8001F9E4 (Player *, Camera *, s8) |
|
u16 | check_player_camera_collision (Player *, Camera *, f32, f32) |
|
u16 | func_8001FD78 (Player *, f32, f32, f32) |
|
void | init_render_player (Player *, Camera *, s8, s8) |
| one of his function is to put the frame to load in to a list to load it to be only applied for the next frame
|
|
void | load_kart_texture_and_render_kart_particle_on_screen_one (void) |
|
void | load_kart_texture_and_render_kart_particle_on_screen_two (void) |
|
void | load_kart_texture_and_render_kart_particle_on_screen_three (void) |
|
void | load_kart_texture_and_render_kart_particle_on_screen_four (void) |
|
void | try_rendering_player (Player *, s8, s8) |
|
void | render_players_on_screen_one (void) |
|
void | render_players_on_screen_two (void) |
|
void | render_players_on_screen_three (void) |
|
void | render_players_on_screen_four (void) |
|
void | func_80021B0C (void) |
|
void | func_80021C78 (void) |
|
void | func_80021D40 (void) |
|
void | func_80021DA8 (void) |
|
void | mtxf_translate_rotate (Mat4, Vec3f, Vec3s) |
|
void | func_80021F50 (Mat4, Vec3f) |
|
void | mtxf_scale2 (Mat4, f32) |
|
void | failed_fixed_point_matrix_conversion (Mtx *, Mat4) |
|
void | convert_to_fixed_point_matrix (Mtx *, Mat4) |
|
bool | adjust_angle (s16 *, s16, s16) |
|
void | move_s32_towards (s32 *, s32, f32) |
|
void | move_f32_towards (f32 *, f32, f32) |
|
void | move_s16_towards (s16 *, s16, f32) |
|
void | move_u16_towards (u16 *, s16, f32) |
|
void | func_80022744 (void) |
|
void | func_8002276C (void) |
|
void | func_80022A98 (Player *, s8) |
|
void | func_80022B50 (Player *, s8) |
|
void | func_80022BC4 (Player *, s8) |
|
void | func_80022CA8 (Player *, s8, s8, s8) |
|
void | func_80022D60 (Player *, s8, s8, s8) |
|
void | func_80022DB4 (Player *, s8) |
|
void | func_80022E84 (Player *, s8, s8, s8) |
|
void | change_player_color_effect_rgb (Player *, s8, s32, f32) |
|
void | change_player_color_effect_cmy (Player *, s8, s32, f32) |
|
bool | is_player_under_light_luigi_raceway (Player *, s8) |
|
void | render_light_environment_on_player (Player *, s8) |
|
void | func_800235AC (Player *, s8) |
|
void | func_80023BF0 (Player *, s8, s8, s8) |
|
void | render_player_shadow (Player *, s8, s8) |
|
void | render_player_shadow_credits (Player *, s8, s8) |
|
void | render_kart (Player *, s8, s8, s8) |
|
void | render_ghost (Player *, s8, s8, s8) |
|
void | func_80025DE8 (Player *, s8, s8, s8) |
|
void | render_player_ice_reflection (Player *, s8, s8, s8) |
|
void | render_player (Player *, s8, s8) |
|
void | func_80026A48 (Player *, s8) |
|
void | update_wheel_palette (Player *, s8, s8, s8) |
|
void | func_80030A34 (Player *) |
|
void | func_8002701C (void) |
|
void | func_80027024 (s32, s32, s32) |
|
void move_f32_towards |
( |
f32 * | startingValue, |
|
|
f32 | targetValue, |
|
|
f32 | somePercent ) |
Function: move_f32_towards
Parameters: f32 *startingValue - Pointer to the float that will be modified f32 targetValue - Float value to move startingValue towards f32 somePercent - The percent of the difference between startingValue and targetValue to actually move
Moves a given startingValue the given somePercent towards the targetValue
f32 *thing = 2500; move_f32_towards(thing, 500, 0.75f); thing now has a value of 1000
If after the move startingValue is inside of the range [-0.001, 0.001], force it to exactly 0.0f
This is probably a precision thing. The scaling with somePercent likely can't hit exactly 0 with any reliability, so they force it to 0 if you're in a small range around it. Why they only do this for 0 is anyone's guess though