mirror of
https://github.com/n64decomp/mk64
synced 2026-08-17 21:03:10 -04:00
+267
-242
File diff suppressed because it is too large
Load Diff
+44
-44
@@ -6,7 +6,7 @@
|
||||
|
||||
void func_8029E158(void);
|
||||
void cleanup_red_and_green_shells(struct ShellActor*);
|
||||
void actor_init(struct Actor*, f32*, s16*, f32*, s16);
|
||||
void actor_init(struct Actor*, Vec3f, s16*, f32*, s16);
|
||||
void func_80297230(Camera*, struct Actor*);
|
||||
void func_802972B8(Camera*, struct Actor*);
|
||||
void func_80297340(Camera*);
|
||||
@@ -16,45 +16,45 @@ void func_802976EC(Collision*, Vec3s);
|
||||
void func_80297760(struct Actor*, Vec3f);
|
||||
void func_802977B0(Player*);
|
||||
void func_802977E4(Player*);
|
||||
void func_80297818(void);
|
||||
void init_red_shell_texture(void);
|
||||
void func_80297944(void);
|
||||
void func_8029794C(Vec3f, Vec3s, f32);
|
||||
void func_802979F8(struct Actor*, f32);
|
||||
void func_80297A50(Camera*, Mat4, struct Actor*);
|
||||
void update_obj_yoshi_valley_egg(struct YoshiValleyEgg*);
|
||||
void update_obj_trees_cacti_shrubs(struct Actor*);
|
||||
void update_obj_kiwano_fruit(struct KiwanoFruit*);
|
||||
void update_obj_paddle_wheel(struct PaddleWheelBoat*);
|
||||
void update_obj_train_engine(struct TrainCar*);
|
||||
void update_obj_train_car1(struct TrainCar*);
|
||||
void update_obj_train_car2(struct TrainCar*);
|
||||
void update_obj_piranha_plant(struct PiranhaPlant*);
|
||||
void func_80298328(Camera*, Mat4, struct PiranhaPlant*);
|
||||
void render_actor_cow(Camera*, Mat4, struct Actor*);
|
||||
void update_actor_yoshi_valley_egg(struct YoshiValleyEgg*);
|
||||
void update_actor_trees_cacti_shrubs(struct Actor*);
|
||||
void update_actor_kiwano_fruit(struct KiwanoFruit*);
|
||||
void update_actor_paddle_wheel(struct PaddleWheelBoat*);
|
||||
void update_actor_train_engine(struct TrainCar*);
|
||||
void update_actor_train_car1(struct TrainCar*);
|
||||
void update_actor_train_car2(struct TrainCar*);
|
||||
void update_actor_piranha_plant(struct PiranhaPlant*);
|
||||
void render_actor_piranha_plant(Camera*, Mat4, struct PiranhaPlant*);
|
||||
void func_802986B4(Camera*, Mat4, struct Actor*);
|
||||
void func_80298AC0(Player*);
|
||||
void func_80298D7C(Camera*, Mat4, struct Actor*);
|
||||
void func_80298C94(void);
|
||||
void func_80298D10(void);
|
||||
void func_80299144(Camera*, Mat4, struct Actor*);
|
||||
void func_8029930C(Camera*, Mat4, struct Actor*);
|
||||
void func_802994D4(Camera*, Mat4, struct Actor*);
|
||||
void func_8029969C(Camera*, Mat4, struct Actor*);
|
||||
void render_actor_tree_mario_raceway(Camera*, Mat4, struct Actor*);
|
||||
void render_actor_tree_yoshi_valley(Camera*, Mat4, struct Actor*);
|
||||
void render_actor_tree_royal_raceway(Camera*, Mat4, struct Actor*);
|
||||
void render_actor_tree_moo_moo_farm(Camera*, Mat4, struct Actor*);
|
||||
void func_80299864(Camera*, Mat4, struct Actor*);
|
||||
void func_80299A2C(Camera*, Mat4, struct Actor*);
|
||||
void func_80299BF4(Camera*, Mat4, struct Actor*);
|
||||
void func_80299DBC(Camera*, Mat4, struct Actor*);
|
||||
void func_80299EDC(Camera*, Mat4, struct Actor*);
|
||||
void func_80299FFC(Camera*, Mat4, struct Actor*);
|
||||
void func_8029A11C(Camera*, Mat4, struct Actor*);
|
||||
void func_8029A23C(Camera*, Mat4, struct Actor*);
|
||||
void func_8029A3AC(Camera*, Mat4, struct ShellActor*);
|
||||
void func_8029A690(Camera*, Mat4, struct ShellActor*);
|
||||
void func_8029A75C(Camera*, Mat4, struct ShellActor*);
|
||||
void func_8029A828(Camera*, Mat4, struct ShellActor*);
|
||||
void func_8029A8F4(Camera*, Mat4, struct BananaActor*);
|
||||
void update_obj_wario_stadium_sign(struct Actor*);
|
||||
void update_obj_railroad_crossing(struct RailroadCrossing*);
|
||||
void update_obj_mario_raceway_sign(struct Actor*);
|
||||
void render_actor_tree_bowser_castle(Camera*, Mat4, struct Actor*);
|
||||
void render_actor_bush_bowser_castle(Camera*, Mat4, struct Actor*);
|
||||
void render_actor_tree_frappe_snowland(Camera*, Mat4, struct Actor*);
|
||||
void render_actor_tree_cactus1_kalimari_desert(Camera*, Mat4, struct Actor*);
|
||||
void render_actor_tree_cactus2_kalimari_desert(Camera*, Mat4, struct Actor*);
|
||||
void render_actor_tree_cactus3_kalimari_desert(Camera*, Mat4, struct Actor*);
|
||||
void render_actor_kiwano_fruit_dks_jungle_parkway(Camera*, Mat4, struct Actor*);
|
||||
void render_actor_shell(Camera*, Mat4, struct ShellActor*);
|
||||
void render_actor_green_shell(Camera*, Mat4, struct ShellActor*);
|
||||
void render_actor_red_shell(Camera*, Mat4, struct ShellActor*);
|
||||
void render_actor_blue_shell(Camera*, Mat4, struct ShellActor*);
|
||||
void render_actor_banana(Camera*, Mat4, struct BananaActor*);
|
||||
void update_actor_wario_stadium_sign(struct Actor*);
|
||||
void update_actor_railroad_crossing(struct RailroadCrossing*);
|
||||
void update_actor_mario_raceway_sign(struct Actor*);
|
||||
void func_8029ABD4(Vec3f, s16);
|
||||
void func_8029AC18(Camera*, Mat4, struct Actor*);
|
||||
void func_8029AE14(void);
|
||||
@@ -66,12 +66,12 @@ void func_8029B6EC(Camera*, struct Actor*);
|
||||
void func_8029B8E8(Camera*, struct TrainCar*);
|
||||
void func_8029BFB0(Camera*, struct TrainCar*);
|
||||
void func_8029C3CC(Camera*, struct TrainCar*);
|
||||
void func_8029CA90(Camera*, struct FallingRock*);
|
||||
void render_actor_falling_rock(Camera*, struct FallingRock*);
|
||||
void place_piranha_plants(struct ActorSpawnData*);
|
||||
void place_palm_trees(struct ActorSpawnData*);
|
||||
void func_8029CF0C(struct ActorSpawnData*, struct FallingRock*);
|
||||
void place_falling_rocks(struct ActorSpawnData*);
|
||||
void update_obj_falling_rocks(struct FallingRock*);
|
||||
void update_actor_falling_rocks(struct FallingRock*);
|
||||
void spawn_foliage(struct ActorSpawnData*);
|
||||
void place_all_item_boxes(struct ActorSpawnData*);
|
||||
void init_kiwano_fruit(void);
|
||||
@@ -96,10 +96,10 @@ void func_802A0450(Player*, struct Actor*);
|
||||
void evaluate_player_collision(void);
|
||||
void func_802A0E44(void);
|
||||
void func_802A1064(struct FakeItemBox*);
|
||||
void update_obj_fake_item_box(struct FakeItemBox*);
|
||||
void update_actor_fake_item_box(struct FakeItemBox*);
|
||||
void func_802A14BC(f32, f32, f32);
|
||||
void update_obj_item_box_hot_air_balloon(struct ItemBox*);
|
||||
void update_obj_item_box(struct ItemBox*);
|
||||
void update_actor_item_box_hot_air_balloon(struct ItemBox*);
|
||||
void update_actor_item_box(struct ItemBox*);
|
||||
void func_802A171C(Camera*, struct FakeItemBox*);
|
||||
void func_802A1EA0(Camera*, struct ItemBox*);
|
||||
void func_802A269C(Camera*, struct Actor*);
|
||||
@@ -108,8 +108,8 @@ void func_802A29BC(Camera*, Mat4, struct Actor*);
|
||||
void func_802A2AD0(Camera*, struct RailroadCrossing*);
|
||||
void func_802A2C78(Camera*, Mat4, struct Actor*);
|
||||
void func_802A2F34(struct UnkStruct_800DC5EC*);
|
||||
void func_802A3008(struct UnkStruct_800DC5EC*);
|
||||
void update_simple_objects(void);
|
||||
void render_course_actors(struct UnkStruct_800DC5EC*);
|
||||
void update_course_actors(void);
|
||||
|
||||
// audio/external.c
|
||||
extern void func_800C98B8(Vec3f, Vec3f, u32);
|
||||
@@ -121,7 +121,7 @@ extern u8 *D_802BA050;
|
||||
extern u8 *D_802BA054;
|
||||
extern u8 *D_802BA058;
|
||||
extern struct Actor *D_802BA05C;
|
||||
extern s8 D_802BA060[512]; // tlut 256
|
||||
extern s8 gTLUTRedShell[512]; // tlut 256
|
||||
extern u16 D_802BA260;
|
||||
|
||||
extern s32 gPlayerCountSelection1;
|
||||
@@ -141,7 +141,7 @@ extern Camera *camera1;
|
||||
extern Gfx *gDisplayListHead;
|
||||
extern s32 gModeSelection;
|
||||
extern s16 gCurrentCourseId;
|
||||
extern f32 D_80150130[];
|
||||
extern f32 gCameraZoom[];
|
||||
extern u16 isCrossingTriggeredByIndex[];
|
||||
extern Lights1 D_800DC610[];
|
||||
|
||||
@@ -188,8 +188,8 @@ extern Gfx D_0D001BD8[];
|
||||
extern Gfx D_0D001C20[];
|
||||
extern Gfx D_0D001C88[];
|
||||
extern Gfx D_0D002EE8[];
|
||||
extern Gfx D_0D002F80[];
|
||||
extern Gfx D_0D003008[];
|
||||
extern Gfx common_model_fake_itembox[];
|
||||
extern Gfx itemBoxQuestionMarkModel[];
|
||||
extern Gfx D_0D003090[];
|
||||
extern Gfx D_0D0030F8[];
|
||||
extern Gfx D_0D003128[];
|
||||
@@ -197,8 +197,8 @@ extern Gfx D_0D003158[];
|
||||
extern Gfx D_0D003188[];
|
||||
extern Gfx D_0D0031B8[];
|
||||
extern Gfx D_0D0031E8[];
|
||||
extern Gfx D_0D004B48[];
|
||||
extern Gfx D_0D004BD8[];
|
||||
extern Gfx common_model_banana[];
|
||||
extern Gfx common_model_flat_banana[];
|
||||
|
||||
extern u8 D_0F04CBE0[];
|
||||
extern u8 D_0F04CE30[];
|
||||
|
||||
@@ -213,7 +213,7 @@ s32 func_802B09C0(s16 bananaId) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
void update_obj_banana_bunch(struct BananaBunchParent *banana_bunch) {
|
||||
void update_actor_banana_bunch(struct BananaBunchParent *banana_bunch) {
|
||||
UNUSED s32 pad[2];
|
||||
Player *owner;
|
||||
struct Controller *controller;
|
||||
@@ -329,7 +329,7 @@ s32 func_802B0E14(s16 arg0) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
void update_obj_triple_shell(TripleShellParent *parent, s16 shellType) {
|
||||
void update_actor_triple_shell(TripleShellParent *parent, s16 shellType) {
|
||||
UNUSED s32 pad[2];
|
||||
s16 playerId;
|
||||
UNUSED s32 pad2;
|
||||
@@ -665,7 +665,7 @@ void func_802B1FFC(Player *player) {
|
||||
gActorList[func_802B1E48(player)].type = ACTOR_BLUE_SPINY_SHELL;
|
||||
}
|
||||
|
||||
void update_obj_banana(struct BananaActor *banana) {
|
||||
void update_actor_banana(struct BananaActor *banana) {
|
||||
UNUSED f32 pad;
|
||||
Player *player;
|
||||
struct BananaActor *elderBanana;
|
||||
@@ -1103,7 +1103,7 @@ void func_802B30EC(void) {
|
||||
}
|
||||
}
|
||||
|
||||
void update_obj_green_shell(struct ShellActor *shell) {
|
||||
void update_actor_green_shell(struct ShellActor *shell) {
|
||||
Player *player;
|
||||
UNUSED f32 pad9;
|
||||
UNUSED f32 padA;
|
||||
@@ -1469,7 +1469,7 @@ void func_802B4104(struct ShellActor *shell) {
|
||||
}
|
||||
}
|
||||
|
||||
void update_obj_red_blue_shell(struct ShellActor *shell) {
|
||||
void update_actor_red_blue_shell(struct ShellActor *shell) {
|
||||
UNUSED f32 pad9;
|
||||
Player *player;
|
||||
f32 temp_f0;
|
||||
|
||||
@@ -13,28 +13,28 @@ void func_802B0570(struct BananaActor*);
|
||||
void func_802B0648(struct BananaBunchParent*);
|
||||
void func_802B0788(s16, struct BananaBunchParent*, Player*);
|
||||
s32 func_802B09C0(s16);
|
||||
void update_obj_banana_bunch(struct BananaBunchParent*);
|
||||
void update_actor_banana_bunch(struct BananaBunchParent*);
|
||||
s32 func_802B0E14(s16);
|
||||
void update_obj_triple_shell(TripleShellParent*, s16);
|
||||
void update_actor_triple_shell(TripleShellParent*, s16);
|
||||
s32 func_802B17F4(Player*);
|
||||
s32 func_802B18E4(Player*, s16);
|
||||
s32 func_802B19EC(TripleShellParent*, Player*, s16, u16);
|
||||
s32 func_802B1C9C(Player*);
|
||||
s32 func_802B1E48(Player*);
|
||||
void func_802B1FFC(Player*);
|
||||
void update_obj_banana(struct BananaActor*);
|
||||
void update_actor_banana(struct BananaActor*);
|
||||
void func_802B2914(struct BananaBunchParent*, Player*, s16);
|
||||
s32 func_802B2C40(Player*);
|
||||
s32 func_802B2D70(Player*);
|
||||
void func_802B2EBC(Player*);
|
||||
void func_802B2FA0(Player*);
|
||||
void func_802B30EC(void);
|
||||
void update_obj_green_shell(struct ShellActor*);
|
||||
void update_actor_green_shell(struct ShellActor*);
|
||||
void func_802B3B44(struct ShellActor*);
|
||||
void func_802B3E7C(struct ShellActor*, Player*);
|
||||
s16 func_802B3FD0(Player*, struct ShellActor*);
|
||||
void func_802B4104(struct ShellActor*);
|
||||
void update_obj_red_blue_shell(struct ShellActor*);
|
||||
void update_actor_red_blue_shell(struct ShellActor*);
|
||||
void func_802B4E30(struct Actor*);
|
||||
|
||||
// audio/external.c
|
||||
|
||||
+40
-37
@@ -39,7 +39,8 @@ UNUSED void func_802B4FF0() {
|
||||
|
||||
}
|
||||
|
||||
s32 func_802B4FF8(Mat4 arg0, s32 arg1) {
|
||||
// set the position, rotation and mode of where to render the next object and check number of object already render
|
||||
s32 render_set_position(Mat4 arg0, s32 arg1) {
|
||||
if (gMatrixObjectCount >= MTX_OBJECT_POOL_SIZE) {
|
||||
return 0;
|
||||
}
|
||||
@@ -72,7 +73,7 @@ f32 func_802B51E8(Vec3f arg0, Vec3f arg1) {
|
||||
return (temp_f2 * temp_f2) + (temp_f12 * temp_f12) + temp_f14 + temp_f14;
|
||||
}
|
||||
//u32 atan2s(f32, f32); // might be s32
|
||||
u32 func_802B5224(Vec3f arg0, Vec3f arg1) {
|
||||
u32 get_angle_between_points(Vec3f arg0, Vec3f arg1) {
|
||||
f32 temp_v1;
|
||||
f32 temp_v2;
|
||||
temp_v1 = arg1[0] - arg0[0];
|
||||
@@ -1030,7 +1031,7 @@ f32 coss(u16 arg0) {
|
||||
return gCosineTable[arg0 >> 4];
|
||||
}
|
||||
|
||||
s32 func_802B8058(u16 arg0, u16 arg1, u16 arg2) {
|
||||
s32 is_visible_between_angle(u16 arg0, u16 arg1, u16 arg2) {
|
||||
if (arg1 < arg0) {
|
||||
if (arg1 >= arg2) {
|
||||
return 0;
|
||||
@@ -1046,65 +1047,67 @@ s32 func_802B8058(u16 arg0, u16 arg1, u16 arg2) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
//generated by m2c commit 3b40ab93768f52ac241c5ae84ef58ef6bc4cb1de
|
||||
f32 func_802B80D0(Vec3f arg0, Vec3f arg1, u16 arg2, f32 arg3, f32 arg4, f32 arg5) {
|
||||
u16 temp_a2;
|
||||
/**
|
||||
* Returns distance or -1.0f if exceeds render distance.
|
||||
*/
|
||||
f32 is_within_render_distance(Vec3f cameraPos, Vec3f objectPos, u16 orientationY, f32 minDistance, f32 fov, f32 maxDistance) {
|
||||
u16 angleObject;
|
||||
UNUSED u16 pad;
|
||||
u16 temp_v0;
|
||||
f32 temp_f0;
|
||||
f32 temp_f20;
|
||||
f32 temp_f2;
|
||||
s32 temp_t6;
|
||||
s32 temp_t7;
|
||||
f32 distanceX;
|
||||
f32 distance;
|
||||
f32 distanceY;
|
||||
s32 plus_fov_angle;
|
||||
s32 minus_fov_angle;
|
||||
u16 temp;
|
||||
UNUSED s32 pad2[3];
|
||||
u16 temp_v1 = ((u16) arg4 * 0xB6);
|
||||
u16 extended_fov = ((u16) fov * 0xB6);
|
||||
|
||||
temp_f0 = arg1[0] - arg0[0];
|
||||
temp_f0 = temp_f0 * temp_f0;
|
||||
if (arg5 < temp_f0) {
|
||||
distanceX = objectPos[0] - cameraPos[0];
|
||||
distanceX = distanceX * distanceX;
|
||||
if (maxDistance < distanceX) {
|
||||
return -1.0f;
|
||||
}
|
||||
|
||||
temp_f2 = arg1[2] - arg0[2];
|
||||
temp_f2 = temp_f2 * temp_f2;
|
||||
if (arg5 < temp_f2) {
|
||||
distanceY = objectPos[2] - cameraPos[2];
|
||||
distanceY = distanceY * distanceY;
|
||||
if (maxDistance < distanceY) {
|
||||
return -1.0f;
|
||||
}
|
||||
|
||||
temp_f20 = temp_f0 + temp_f2;
|
||||
if (temp_f20 < arg3) {
|
||||
return temp_f20;
|
||||
distance = distanceX + distanceY;
|
||||
if (distance < minDistance) {
|
||||
return distance;
|
||||
}
|
||||
|
||||
if (temp_f20 > arg5) {
|
||||
if (distance > maxDistance) {
|
||||
return -1.0f;
|
||||
}
|
||||
|
||||
temp_a2 = func_802B5224(arg0, arg1);
|
||||
temp_t7 = (arg2 - temp_v1);
|
||||
temp_t6 = (arg2 + temp_v1);
|
||||
angleObject = get_angle_between_points(cameraPos, objectPos);
|
||||
minus_fov_angle = (orientationY - extended_fov);
|
||||
plus_fov_angle = (orientationY + extended_fov);
|
||||
|
||||
if (arg3 == 0.0f) {
|
||||
if (func_802B8058((arg2 + temp_v1), (arg2 - temp_v1), temp_a2) == 1) {
|
||||
return temp_f20;
|
||||
if (minDistance == 0.0f) {
|
||||
if (is_visible_between_angle((orientationY + extended_fov), (orientationY - extended_fov), angleObject) == 1) {
|
||||
return distance;
|
||||
}
|
||||
return -1.0f;
|
||||
}
|
||||
|
||||
if (func_802B8058((u16) temp_t6, (u16) temp_t7, temp_a2) == 1) {
|
||||
return temp_f20;
|
||||
if (is_visible_between_angle((u16) plus_fov_angle, (u16) minus_fov_angle, angleObject) == 1) {
|
||||
return distance;
|
||||
}
|
||||
temp_v0 = func_802B7CA8(arg3 / temp_f20);
|
||||
temp = temp_a2 + temp_v0;
|
||||
temp_v0 = func_802B7CA8(minDistance / distance);
|
||||
temp = angleObject + temp_v0;
|
||||
|
||||
if (func_802B8058(temp_t6, temp_t7, temp) == 1) {
|
||||
return temp_f20;
|
||||
if (is_visible_between_angle(plus_fov_angle, minus_fov_angle, temp) == 1) {
|
||||
return distance;
|
||||
}
|
||||
|
||||
temp = temp_a2 - temp_v0;
|
||||
if (func_802B8058(temp_t6, temp_t7, temp) == 1) {
|
||||
return temp_f20;
|
||||
temp = angleObject - temp_v0;
|
||||
if (is_visible_between_angle(plus_fov_angle, minus_fov_angle, temp) == 1) {
|
||||
return distance;
|
||||
}
|
||||
return -1.0f;
|
||||
}
|
||||
|
||||
@@ -19,9 +19,9 @@ double fabs(double x);
|
||||
void func_802B6A84(Mat3, s16, f32, f32, f32);
|
||||
void func_802B4FF0(void);
|
||||
void func_802B5794(Mat4, Vec3f, Vec3f);
|
||||
s32 func_802B4FF8(Mat4, s32);
|
||||
s32 render_set_position(Mat4, s32);
|
||||
f32 func_802B51E8(Vec3f, Vec3f);
|
||||
u32 func_802B5224(Vec3f, Vec3f);
|
||||
u32 get_angle_between_points(Vec3f, Vec3f);
|
||||
u32 func_802B5258(Vec3f, Vec3s);
|
||||
void vec3f_set(Vec3f, f32, f32, f32);
|
||||
void vec3s_set(Vec3s, s16, s16, s16);
|
||||
@@ -72,8 +72,8 @@ s16 func_802B7F34(f32, f32, f32, f32);
|
||||
void func_802B7F7C(Vec3f, Vec3f, Vec3s);
|
||||
f32 sins(u16);
|
||||
f32 coss(u16);
|
||||
s32 func_802B8058(u16, u16, u16);
|
||||
f32 func_802B80D0(Vec3f, Vec3f, u16, f32, f32, f32);
|
||||
s32 is_visible_between_angle(u16, u16, u16);
|
||||
f32 is_within_render_distance(Vec3f, Vec3f, u16, f32, f32, f32);
|
||||
void func_802B8414(uintptr_t, Mat4, s16, s16, s32);
|
||||
|
||||
extern u16 gRandomSeed16;
|
||||
|
||||
@@ -228,7 +228,7 @@ void func_8029122C(struct UnkStruct_800DC5EC *arg0, s32 arg1) {
|
||||
break;
|
||||
}
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
switch (gCurrentCourseId) {
|
||||
case COURSE_BOWSER_CASTLE:
|
||||
if (gActiveScreenMode != 0) { return; }
|
||||
@@ -277,7 +277,7 @@ void func_8029122C(struct UnkStruct_800DC5EC *arg0, s32 arg1) {
|
||||
vector[1] = D_8015F8E4;
|
||||
vector[2] = 0.0f;
|
||||
mtxf_translate(matrix, vector);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
|
||||
gDPSetRenderMode(gDisplayListHead++, G_RM_AA_ZB_XLU_INTER, G_RM_NOOP2);
|
||||
gDPSetBlendMask(gDisplayListHead++, 0xFF);
|
||||
@@ -300,7 +300,7 @@ void func_8029122C(struct UnkStruct_800DC5EC *arg0, s32 arg1) {
|
||||
gDPSetTexturePersp(gDisplayListHead++, G_TP_PERSP);
|
||||
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
load_surface_map((uintptr_t) &D_090001D0, arg0);
|
||||
|
||||
gDPSetAlphaCompare(gDisplayListHead++, G_AC_NONE);
|
||||
@@ -315,7 +315,7 @@ void func_8029122C(struct UnkStruct_800DC5EC *arg0, s32 arg1) {
|
||||
case COURSE_RAINBOW_ROAD:
|
||||
gDPPipeSync(gDisplayListHead++);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
gSPClearGeometryMode(gDisplayListHead++, G_CULL_BACK);
|
||||
load_surface_map((uintptr_t) &d_course_rainbow_road_dl_list, arg0);
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_CULL_BACK);
|
||||
@@ -333,7 +333,7 @@ void func_8029122C(struct UnkStruct_800DC5EC *arg0, s32 arg1) {
|
||||
gDPSetTexturePersp(gDisplayListHead++, G_TP_PERSP);
|
||||
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
|
||||
gSPClearGeometryMode(gDisplayListHead++, G_CULL_BACK);
|
||||
gDPSetCombineMode(gDisplayListHead++, G_CC_MODULATEIDECALA, G_CC_MODULATEIDECALA);
|
||||
@@ -354,7 +354,7 @@ void func_8029122C(struct UnkStruct_800DC5EC *arg0, s32 arg1) {
|
||||
gDPSetTexturePersp(gDisplayListHead++, G_TP_PERSP);
|
||||
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
|
||||
gDPSetCombineMode(gDisplayListHead++, G_CC_MODULATEIA, G_CC_MODULATEIA);
|
||||
gDPSetRenderMode(gDisplayListHead++, G_RM_AA_ZB_XLU_INTER, G_RM_NOOP2);
|
||||
@@ -714,7 +714,7 @@ void render_banshee_boardwalk(struct UnkStruct_800DC5EC *arg0) {
|
||||
spA8[1] = -82.0f;
|
||||
spA8[2] = camera->pos[2];
|
||||
mtxf_translate(spCC, spA8);
|
||||
func_802B4FF8(spCC, 0);
|
||||
render_set_position(spCC, 0);
|
||||
|
||||
gSPDisplayList(gDisplayListHead++, d_course_banshee_boardwalk_dl_B278);
|
||||
gDPPipeSync(gDisplayListHead++);
|
||||
|
||||
@@ -567,22 +567,22 @@ void func_802A4D18(void) {
|
||||
void func_802A4EF4(void) {
|
||||
switch(gActiveScreenMode) {
|
||||
case SCREEN_MODE_1P:
|
||||
func_8001F394(gPlayerOne, &D_80150130[0]);
|
||||
func_8001F394(gPlayerOne, &gCameraZoom[0]);
|
||||
break;
|
||||
|
||||
case SCREEN_MODE_2P_SPLITSCREEN_VERTICAL:
|
||||
func_8001F394(gPlayerOne, &D_80150130[0]);
|
||||
func_8001F394(gPlayerTwo, &D_80150130[1]);
|
||||
func_8001F394(gPlayerOne, &gCameraZoom[0]);
|
||||
func_8001F394(gPlayerTwo, &gCameraZoom[1]);
|
||||
break;
|
||||
case SCREEN_MODE_2P_SPLITSCREEN_HORIZONTAL:
|
||||
func_8001F394(gPlayerOne, &D_80150130[0]);
|
||||
func_8001F394(gPlayerTwo, &D_80150130[1]);
|
||||
func_8001F394(gPlayerOne, &gCameraZoom[0]);
|
||||
func_8001F394(gPlayerTwo, &gCameraZoom[1]);
|
||||
break;
|
||||
case SCREEN_MODE_3P_4P_SPLITSCREEN:
|
||||
func_8001F394(gPlayerOne, &D_80150130[0]);
|
||||
func_8001F394(gPlayerTwo, &D_80150130[1]);
|
||||
func_8001F394(gPlayerThree, &D_80150130[2]);
|
||||
func_8001F394(gPlayerFour, &D_80150130[3]);
|
||||
func_8001F394(gPlayerOne, &gCameraZoom[0]);
|
||||
func_8001F394(gPlayerTwo, &gCameraZoom[1]);
|
||||
func_8001F394(gPlayerThree, &gCameraZoom[2]);
|
||||
func_8001F394(gPlayerFour, &gCameraZoom[3]);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -598,9 +598,9 @@ void func_802A5004(void) {
|
||||
|
||||
func_802A39E0(D_800DC5F0);
|
||||
if (D_800DC5B4 != 0) {
|
||||
func_802A4A0C((Vtx *) D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[1]);
|
||||
func_802A4A0C((Vtx *) D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &gCameraZoom[1]);
|
||||
func_80057FC4(2);
|
||||
func_802A487C((Vtx *) D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[1]);
|
||||
func_802A487C((Vtx *) D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &gCameraZoom[1]);
|
||||
func_80093A30(2);
|
||||
}
|
||||
}
|
||||
@@ -615,9 +615,9 @@ void func_802A50EC(void) {
|
||||
|
||||
func_802A39E0(D_800DC5EC);
|
||||
if (D_800DC5B4 != 0) {
|
||||
func_802A4A0C((Vtx *) D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[0]);
|
||||
func_802A4A0C((Vtx *) D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &gCameraZoom[0]);
|
||||
func_80057FC4(1);
|
||||
func_802A487C((Vtx *) D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[0]);
|
||||
func_802A487C((Vtx *) D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &gCameraZoom[0]);
|
||||
func_80093A30(1);
|
||||
}
|
||||
}
|
||||
@@ -632,9 +632,9 @@ void func_802A51D4(void) {
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_SHADE | G_SHADING_SMOOTH | G_CLIPPING);
|
||||
|
||||
if (D_800DC5B4 != 0) {
|
||||
func_802A4A0C((Vtx *) D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[0]);
|
||||
func_802A4A0C((Vtx *) D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &gCameraZoom[0]);
|
||||
func_80057FC4(3);
|
||||
func_802A487C((Vtx *) D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[0]);
|
||||
func_802A487C((Vtx *) D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &gCameraZoom[0]);
|
||||
func_80093A30(3);
|
||||
}
|
||||
}
|
||||
@@ -649,9 +649,9 @@ void func_802A52BC(void) {
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_SHADE | G_SHADING_SMOOTH | G_CLIPPING);
|
||||
|
||||
if (D_800DC5B4 != 0) {
|
||||
func_802A4A0C((Vtx *) D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[1]);
|
||||
func_802A4A0C((Vtx *) D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &gCameraZoom[1]);
|
||||
func_80057FC4(4);
|
||||
func_802A487C((Vtx *) D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[1]);
|
||||
func_802A487C((Vtx *) D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &gCameraZoom[1]);
|
||||
func_80093A30(4);
|
||||
}
|
||||
}
|
||||
@@ -668,11 +668,11 @@ void func_802A53A4(void) {
|
||||
init_z_buffer();
|
||||
select_framebuffer();
|
||||
if (D_800DC5B4 != 0) {
|
||||
func_802A4A0C((Vtx *) D_802B8890, D_800DC5EC, 0x140, 0xF0, &D_80150130[0]);
|
||||
func_802A4A0C((Vtx *) D_802B8890, D_800DC5EC, 0x140, 0xF0, &gCameraZoom[0]);
|
||||
if (gGamestate != CREDITS_SEQUENCE) {
|
||||
func_80057FC4(0);
|
||||
}
|
||||
func_802A487C((Vtx *) D_802B8890, D_800DC5EC, 0x140, 0xF0, &D_80150130[0]);
|
||||
func_802A487C((Vtx *) D_802B8890, D_800DC5EC, 0x140, 0xF0, &gCameraZoom[0]);
|
||||
func_80093A30(0);
|
||||
}
|
||||
}
|
||||
@@ -687,9 +687,9 @@ void func_802A54A8(void) {
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_SHADE | G_SHADING_SMOOTH | G_CLIPPING);
|
||||
|
||||
if (D_800DC5B4 != 0) {
|
||||
func_802A4A0C((Vtx *) D_802B8890, D_800DC5EC, 0x140, 0xF0, &D_80150130[0]);
|
||||
func_802A4A0C((Vtx *) D_802B8890, D_800DC5EC, 0x140, 0xF0, &gCameraZoom[0]);
|
||||
func_80057FC4(8);
|
||||
func_802A487C((Vtx *) D_802B8890, D_800DC5EC, 0x140, 0xF0, &D_80150130[0]);
|
||||
func_802A487C((Vtx *) D_802B8890, D_800DC5EC, 0x140, 0xF0, &gCameraZoom[0]);
|
||||
func_80093A30(8);
|
||||
}
|
||||
}
|
||||
@@ -704,9 +704,9 @@ void func_802A5590(void) {
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_SHADE | G_SHADING_SMOOTH | G_CLIPPING);
|
||||
|
||||
if (D_800DC5B4 != 0) {
|
||||
func_802A4A0C((Vtx *) D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[1]);
|
||||
func_802A4A0C((Vtx *) D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &gCameraZoom[1]);
|
||||
func_80057FC4(9);
|
||||
func_802A487C((Vtx *) D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[1]);
|
||||
func_802A487C((Vtx *) D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &gCameraZoom[1]);
|
||||
func_80093A30(9);
|
||||
}
|
||||
}
|
||||
@@ -721,9 +721,9 @@ void func_802A5678(void) {
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_SHADE | G_SHADING_SMOOTH | G_CLIPPING);
|
||||
|
||||
if (D_800DC5B4 != 0) {
|
||||
func_802A4A0C((Vtx *) D_802B8990, D_800DC5F4, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[2]);
|
||||
func_802A4A0C((Vtx *) D_802B8990, D_800DC5F4, SCREEN_WIDTH, SCREEN_HEIGHT, &gCameraZoom[2]);
|
||||
func_80057FC4(10);
|
||||
func_802A487C((Vtx *) D_802B8990, D_800DC5F4, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[2]);
|
||||
func_802A487C((Vtx *) D_802B8990, D_800DC5F4, SCREEN_WIDTH, SCREEN_HEIGHT, &gCameraZoom[2]);
|
||||
func_80093A30(10);
|
||||
}
|
||||
}
|
||||
@@ -757,9 +757,9 @@ void func_802A5760(void) {
|
||||
func_802A39E0(D_800DC5F8);
|
||||
|
||||
if (D_800DC5B4 != 0) {
|
||||
func_802A4A0C(D_802B8A10, D_800DC5F8, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[3]);
|
||||
func_802A4A0C(D_802B8A10, D_800DC5F8, SCREEN_WIDTH, SCREEN_HEIGHT, &gCameraZoom[3]);
|
||||
func_80057FC4(11);
|
||||
func_802A487C(D_802B8A10, D_800DC5F8, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[3]);
|
||||
func_802A487C(D_802B8A10, D_800DC5F8, SCREEN_WIDTH, SCREEN_HEIGHT, &gCameraZoom[3]);
|
||||
func_80093A30(11);
|
||||
}
|
||||
}
|
||||
@@ -778,7 +778,7 @@ void func_802A59A4(void) {
|
||||
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_LIGHTING | G_SHADING_SMOOTH);
|
||||
gDPSetRenderMode(gDisplayListHead++, G_RM_AA_ZB_OPA_SURF, G_RM_AA_ZB_OPA_SURF2);
|
||||
guPerspective(&gGfxPool->mtxPersp[0], &perspNorm, D_80150130[0], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
guPerspective(&gGfxPool->mtxPersp[0], &perspNorm, gCameraZoom[0], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
gSPPerspNormalize(gDisplayListHead++, perspNorm);
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPersp[0]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
|
||||
@@ -788,7 +788,7 @@ void func_802A59A4(void) {
|
||||
if (D_800DC5C8 == 0) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[0]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
} else {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[0]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
}
|
||||
@@ -796,9 +796,9 @@ void func_802A59A4(void) {
|
||||
if (D_800DC5C8 == 1) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[0]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
}
|
||||
func_802A3008(D_800DC5EC);
|
||||
render_course_actors(D_800DC5EC);
|
||||
func_80058090(0);
|
||||
func_800212B4();
|
||||
func_8029122C(D_800DC5EC, 0);
|
||||
@@ -826,7 +826,7 @@ void func_802A5CB4(void) {
|
||||
func_802A3730(D_800DC5EC);
|
||||
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
|
||||
guPerspective(&gGfxPool->mtxPersp[0], &perspNorm, D_80150130[0], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
guPerspective(&gGfxPool->mtxPersp[0], &perspNorm, gCameraZoom[0], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
gSPPerspNormalize(gDisplayListHead++, perspNorm);
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPersp[0]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
guLookAt(&gGfxPool->mtxLookAt[0], camera->pos[0], camera->pos[1], camera->pos[2], camera->lookAt[0], camera->lookAt[1], camera->lookAt[2], camera->up[0], camera->up[1], camera->up[2]);
|
||||
@@ -835,7 +835,7 @@ void func_802A5CB4(void) {
|
||||
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[0]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
} else {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[0]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
}
|
||||
@@ -845,9 +845,9 @@ void func_802A5CB4(void) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[0]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
}
|
||||
func_802A3008(D_800DC5EC);
|
||||
render_course_actors(D_800DC5EC);
|
||||
func_80058090(1);
|
||||
func_800212B4();
|
||||
func_8029122C(D_800DC5EC, 0);
|
||||
@@ -876,7 +876,7 @@ void func_802A5FAC(void) {
|
||||
func_802A3730(D_800DC5F0);
|
||||
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
|
||||
guPerspective(&gGfxPool->mtxPersp[1], &perspNorm, D_80150130[1], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
guPerspective(&gGfxPool->mtxPersp[1], &perspNorm, gCameraZoom[1], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
gSPPerspNormalize(gDisplayListHead++, perspNorm);
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPersp[1]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
guLookAt(&gGfxPool->mtxLookAt[1], camera->pos[0], camera->pos[1], camera->pos[2], camera->lookAt[0], camera->lookAt[1], camera->lookAt[2], camera->up[0], camera->up[1], camera->up[2]);
|
||||
@@ -884,7 +884,7 @@ void func_802A5FAC(void) {
|
||||
if (D_800DC5C8 == 0) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[1]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
} else {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[1]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
}
|
||||
@@ -892,9 +892,9 @@ void func_802A5FAC(void) {
|
||||
if (D_800DC5C8 == 1) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[1]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
}
|
||||
func_802A3008(D_800DC5F0);
|
||||
render_course_actors(D_800DC5F0);
|
||||
func_80058090(2);
|
||||
func_800215DC();
|
||||
func_8029122C(D_800DC5F0, 1);
|
||||
@@ -924,7 +924,7 @@ void func_802A62A4(void) {
|
||||
func_802A3730(D_800DC5EC);
|
||||
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
|
||||
guPerspective(&gGfxPool->mtxPersp[0], &perspNorm, D_80150130[0], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
guPerspective(&gGfxPool->mtxPersp[0], &perspNorm, gCameraZoom[0], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
gSPPerspNormalize(gDisplayListHead++, perspNorm);
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPersp[0]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
guLookAt(&gGfxPool->mtxLookAt[0], camera->pos[0], camera->pos[1], camera->pos[2], camera->lookAt[0], camera->lookAt[1], camera->lookAt[2], camera->up[0], camera->up[1], camera->up[2]);
|
||||
@@ -933,7 +933,7 @@ void func_802A62A4(void) {
|
||||
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[0]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
} else {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[0]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
}
|
||||
@@ -941,9 +941,9 @@ void func_802A62A4(void) {
|
||||
if (D_800DC5C8 == 1) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[0]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
}
|
||||
func_802A3008(D_800DC5EC);
|
||||
render_course_actors(D_800DC5EC);
|
||||
func_80058090(3);
|
||||
func_800212B4();
|
||||
func_8029122C(D_800DC5EC, 0);
|
||||
@@ -974,7 +974,7 @@ void func_802A65B8(void) {
|
||||
func_802A3730(D_800DC5F0);
|
||||
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
|
||||
guPerspective(&gGfxPool->mtxPersp[1], &perspNorm, D_80150130[1], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
guPerspective(&gGfxPool->mtxPersp[1], &perspNorm, gCameraZoom[1], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
gSPPerspNormalize(gDisplayListHead++, perspNorm);
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPersp[1]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
guLookAt(&gGfxPool->mtxLookAt[1], camera->pos[0], camera->pos[1], camera->pos[2], camera->lookAt[0], camera->lookAt[1], camera->lookAt[2], camera->up[0], camera->up[1], camera->up[2]);
|
||||
@@ -982,7 +982,7 @@ void func_802A65B8(void) {
|
||||
if (D_800DC5C8 == 0) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[1]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
} else {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[1]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
}
|
||||
@@ -990,9 +990,9 @@ void func_802A65B8(void) {
|
||||
if (D_800DC5C8 == 1) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[1]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
}
|
||||
func_802A3008(D_800DC5F0);
|
||||
render_course_actors(D_800DC5F0);
|
||||
func_80058090(4);
|
||||
func_800215DC();
|
||||
func_8029122C(D_800DC5F0, 1);
|
||||
@@ -1021,7 +1021,7 @@ void func_802A68CC(void) {
|
||||
func_802A3730(D_800DC5EC);
|
||||
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
|
||||
guPerspective(&gGfxPool->mtxPersp[0], &perspNorm, D_80150130[0], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
guPerspective(&gGfxPool->mtxPersp[0], &perspNorm, gCameraZoom[0], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
gSPPerspNormalize(gDisplayListHead++, perspNorm);
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPersp[0]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
guLookAt(&gGfxPool->mtxLookAt[0], camera->pos[0], camera->pos[1], camera->pos[2], camera->lookAt[0], camera->lookAt[1], camera->lookAt[2], camera->up[0], camera->up[1], camera->up[2]);
|
||||
@@ -1029,7 +1029,7 @@ void func_802A68CC(void) {
|
||||
if (D_800DC5C8 == 0) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[0]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
} else {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[0]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
}
|
||||
@@ -1037,9 +1037,9 @@ void func_802A68CC(void) {
|
||||
if (D_800DC5C8 == 1) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[0]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
}
|
||||
func_802A3008(D_800DC5EC);
|
||||
render_course_actors(D_800DC5EC);
|
||||
func_80058090(8);
|
||||
func_800212B4();
|
||||
func_8029122C(D_800DC5EC, 0);
|
||||
@@ -1068,7 +1068,7 @@ void func_802A6BB0(void) {
|
||||
func_802A3730(D_800DC5F0);
|
||||
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
|
||||
guPerspective(&gGfxPool->mtxPersp[1], &perspNorm, D_80150130[1], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
guPerspective(&gGfxPool->mtxPersp[1], &perspNorm, gCameraZoom[1], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
gSPPerspNormalize(gDisplayListHead++, perspNorm);
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPersp[1]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
|
||||
@@ -1076,7 +1076,7 @@ void func_802A6BB0(void) {
|
||||
if (D_800DC5C8 == 0) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[1]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
} else {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[1]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
}
|
||||
@@ -1084,9 +1084,9 @@ void func_802A6BB0(void) {
|
||||
if (D_800DC5C8 == 1) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[1]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
}
|
||||
func_802A3008(D_800DC5F0);
|
||||
render_course_actors(D_800DC5F0);
|
||||
func_80058090(9);
|
||||
func_800215DC();
|
||||
func_8029122C(D_800DC5F0, 1);
|
||||
@@ -1115,7 +1115,7 @@ void func_802A6E94(void) {
|
||||
func_802A3730(D_800DC5F4);
|
||||
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
|
||||
guPerspective(&gGfxPool->mtxPersp[2], &perspNorm, D_80150130[2], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
guPerspective(&gGfxPool->mtxPersp[2], &perspNorm, gCameraZoom[2], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
gSPPerspNormalize(gDisplayListHead++, perspNorm);
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPersp[2]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
guLookAt(&gGfxPool->mtxLookAt[2], camera->pos[0], camera->pos[1], camera->pos[2], camera->lookAt[0], camera->lookAt[1], camera->lookAt[2], camera->up[0], camera->up[1], camera->up[2]);
|
||||
@@ -1123,7 +1123,7 @@ void func_802A6E94(void) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[2]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
} else {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[2]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
}
|
||||
@@ -1131,9 +1131,9 @@ void func_802A6E94(void) {
|
||||
if (D_800DC5C8 == 1) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[2]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
}
|
||||
func_802A3008(D_800DC5F4);
|
||||
render_course_actors(D_800DC5F4);
|
||||
func_80058090(10);
|
||||
func_8002186C();
|
||||
func_8029122C(D_800DC5F4, 2);
|
||||
@@ -1171,14 +1171,14 @@ void func_802A7178(void) {
|
||||
func_802A3730(D_800DC5F8);
|
||||
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
|
||||
guPerspective(&gGfxPool->mtxPersp[3], &perspNorm, D_80150130[3], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
guPerspective(&gGfxPool->mtxPersp[3], &perspNorm, gCameraZoom[3], D_80150148, D_80150150, D_8015014C, 1.0f);
|
||||
gSPPerspNormalize(gDisplayListHead++, perspNorm);
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPersp[3]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
guLookAt(&gGfxPool->mtxLookAt[3], camera->pos[0], camera->pos[1], camera->pos[2], camera->lookAt[0], camera->lookAt[1], camera->lookAt[2], camera->up[0], camera->up[1], camera->up[2]);
|
||||
if (D_800DC5C8 == 0) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[3]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
} else {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[3]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
}
|
||||
@@ -1186,9 +1186,9 @@ void func_802A7178(void) {
|
||||
if (D_800DC5C8 == 1) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxLookAt[3]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
mtxf_identity(matrix);
|
||||
func_802B4FF8(matrix, 0);
|
||||
render_set_position(matrix, 0);
|
||||
}
|
||||
func_802A3008(D_800DC5F8);
|
||||
render_course_actors(D_800DC5F8);
|
||||
func_80058090(11);
|
||||
func_800219BC();
|
||||
func_8029122C(D_800DC5F8, 3);
|
||||
|
||||
@@ -73,7 +73,7 @@ extern s32 D_800DC5D4;
|
||||
extern s32 D_800DC5D8;
|
||||
extern u16 D_800DC5BC;
|
||||
extern struct GfxPool *gGfxPool;
|
||||
extern f32 D_80150130[];
|
||||
extern f32 gCameraZoom[];
|
||||
extern u16 D_800DC5B4;
|
||||
extern f32 D_80150148;
|
||||
extern f32 D_8015014C;
|
||||
|
||||
Reference in New Issue
Block a user