Mario Kart 64
Loading...
Searching...
No Matches
render.inc.c
Go to the documentation of this file.
1#include <camera.h>
2#include <actors.h>
3#include <main.h>
4#include <libultra/gbi.h>
6
15void render_actor_cow(Camera* camera, Mat4 arg1, struct Actor* arg2) {
16 if (is_within_render_distance(camera->pos, arg2->pos, camera->rot[1], 0, gCameraZoom[camera - camera1],
17 4000000.0f) < 0 &&
18 CVarGetInteger("gNoCulling", 0) == 0) {
19 return;
20 }
21
22 // @port: Tag the transform.
23 FrameInterpolation_RecordOpenChild("render_actor_cow", TAG_OBJECT(arg2));
24
25 arg1[3][0] = arg2->pos[0];
26 arg1[3][1] = arg2->pos[1];
27 arg1[3][2] = arg2->pos[2];
28
29 if (render_set_position(arg1, 0) != 0) {
30 switch (arg2->state) {
31 case 0:
32 gSPDisplayList(gDisplayListHead++, d_course_moo_moo_farm_dl_cow1);
33 break;
34 case 1:
35 gSPDisplayList(gDisplayListHead++, d_course_moo_moo_farm_dl_cow2);
36 break;
37 case 2:
38 gSPDisplayList(gDisplayListHead++, d_course_moo_moo_farm_dl_cow3);
39 break;
40 case 3:
41 gSPDisplayList(gDisplayListHead++, d_course_moo_moo_farm_dl_cow4);
42 break;
43 case 4:
44 gSPDisplayList(gDisplayListHead++, d_course_moo_moo_farm_dl_cow5);
45 break;
46 }
47 }
48
49 // @port Pop the transform id.
51}
void FrameInterpolation_RecordOpenChild(const void *a, uintptr_t b)
Definition FrameInterpolation.cpp:646
void FrameInterpolation_RecordCloseChild(void)
Definition FrameInterpolation.cpp:656
#define TAG_OBJECT(x)
Definition FrameInterpolation.h:24
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
void render_actor_cow(Camera *camera, Mat4 arg1, struct Actor *arg2)
Renders the cow actor. Actor used in Moo Moo Farm.
Definition render.inc.c:15
Gfx * gDisplayListHead
Definition main.c:144
f32 gCameraZoom[4]
Definition main.c:134
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
Definition actor_types.h:124
s16 state
Definition actor_types.h:128
Vec3f pos
Definition actor_types.h:133
Definition camera.h:27
Vec3s rot
Definition camera.h:34
Vec3f pos
Definition camera.h:28