Mario Kart 64
Loading...
Searching...
No Matches
render.inc.c
Go to the documentation of this file.
1#include <actors.h>
2#include <libultra/gbi.h>
3#include <main.h>
4#include <defines.h>
5
14void render_actor_school_bus(Camera* arg0, struct Actor* arg1) {
15 UNUSED s32 pad[6];
16 Mat4 spC8;
17 UNUSED s32 pad2[32];
18 f32 temp_f0;
19
20 temp_f0 =
21 is_within_render_distance(arg0->pos, arg1->pos, arg0->rot[1], 2500.0f, gCameraZoom[arg0 - camera1], 9000000.0f);
22
23 if (CVarGetInteger("gNoCulling", 0) == 1) {
24 temp_f0 = MAX(temp_f0, 0.0f);
25 }
26
27 if (temp_f0 < 0.0f) {
28 return;
29 }
30
31 if (CVarGetInteger("gDisableLod", 1) == 1) {
32 temp_f0 = 0.0f;
33 }
34
35 gSPTexture(gDisplayListHead++, 0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON);
36 gSPClearGeometryMode(gDisplayListHead++, G_LIGHTING);
37
38 mtxf_pos_rotation_xyz(spC8, arg1->pos, arg1->rot);
39 if (render_set_position(spC8, 0) != 0) {
40
42 if (temp_f0 < 160000.0f) {
43 gSPDisplayList(gDisplayListHead++, &toads_turnpike_dl_3);
44 } else if (temp_f0 < 640000.0f) {
45 gSPDisplayList(gDisplayListHead++, &toads_turnpike_dl_4);
46 } else {
47 gSPDisplayList(gDisplayListHead++, toads_turnpike_dl_5);
48 }
49 } else if (temp_f0 < 160000.0f) {
50 gSPDisplayList(gDisplayListHead++, &toads_turnpike_dl_4);
51 } else {
52 gSPDisplayList(gDisplayListHead++, &toads_turnpike_dl_5);
53 }
54 }
55}
void gSPDisplayList(Gfx *pkt, Gfx *dl)
Definition GBIMiddleware.cpp:11
Camera * camera1
Definition camera.c:29
f32 Mat4[4][4]
Definition common_structs.h:20
#define SCREEN_MODE_1P
Options for gScreenModeSelection and gActiveScreenMode.
Definition defines.h:234
#define UNUSED
Definition macros.h:26
#define MAX(a, b)
Definition macros.h:130
Gfx * gDisplayListHead
Definition main.c:136
f32 gCameraZoom[4]
Definition main.c:126
s32 gActiveScreenMode
Definition main.c:181
s32 render_set_position(Mat4 mtx, s32 arg1)
Definition math_util.c:54
f32 is_within_render_distance(Vec3f cameraPos, Vec3f objectPos, u16 orientationY, f32 minDistance, f32 fov, f32 maxDistance)
Definition math_util.c:1100
void mtxf_pos_rotation_xyz(Mat4 out, Vec3f pos, Vec3s orientation)
Definition math_util.c:450
void render_actor_school_bus(Camera *arg0, struct Actor *arg1)
Renders the school bus actor. Actor used in Toad's Turnpike. His update are made in vehicle.
Definition render.inc.c:14
Definition actor_types.h:124
Vec3s rot
Definition actor_types.h:131
Vec3f pos
Definition actor_types.h:133
Definition camera.h:27
Vec3s rot
Definition camera.h:34
Vec3f pos
Definition camera.h:28