SpaghettiKart
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, camera->fieldOfView,
17 4000000.0f) < 0 &&
18 CVarGetInteger("gNoCulling", 0) == 0) {
19 return;
20 }
21
22 FrameInterpolation_RecordOpenChild("render_actor_cow", TAG_OBJECT(((uintptr_t)arg2 << 5) | camera->cameraId));
23
24 arg1[3][0] = arg2->pos[0];
25 arg1[3][1] = arg2->pos[1];
26 arg1[3][2] = arg2->pos[2];
27
28 if (render_set_position(arg1, 0) != 0) {
29 switch (arg2->state) {
30 case 0:
31 gSPDisplayList(gDisplayListHead++, d_course_moo_moo_farm_dl_cow1);
32 break;
33 case 1:
34 gSPDisplayList(gDisplayListHead++, d_course_moo_moo_farm_dl_cow2);
35 break;
36 case 2:
37 gSPDisplayList(gDisplayListHead++, d_course_moo_moo_farm_dl_cow3);
38 break;
39 case 3:
40 gSPDisplayList(gDisplayListHead++, d_course_moo_moo_farm_dl_cow4);
41 break;
42 case 4:
43 gSPDisplayList(gDisplayListHead++, d_course_moo_moo_farm_dl_cow5);
44 break;
45 }
46 }
47
48 // @port Pop the transform id.
50}
void FrameInterpolation_RecordOpenChild(const void *a, uintptr_t b)
Definition FrameInterpolation.cpp:640
void FrameInterpolation_RecordCloseChild(void)
Definition FrameInterpolation.cpp:650
#define TAG_OBJECT(x)
Definition FrameInterpolation.h:24
void gSPDisplayList(Gfx *pkt, Gfx *dl)
Definition GBIMiddleware.cpp:12
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:129
s32 render_set_position(Mat4 mtx, s32 arg1)
Definition math_util.c:53
f32 is_within_render_distance(Vec3f cameraPos, Vec3f objectPos, u16 orientationY, f32 minDistance, f32 fov, f32 maxDistance)
Definition math_util.c:1099
Definition actor_types.h:124
s16 state
Definition actor_types.h:128
Vec3f pos
Definition actor_types.h:133
Definition camera.h:35
Vec3s rot
Definition camera.h:42
size_t cameraId
Definition camera.h:67
f32 fieldOfView
Definition camera.h:43
Vec3f pos
Definition camera.h:36