Mario Kart 64
collision.h File Reference
#include "common_structs.h"
Include dependency graph for collision.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void nullify_displaylist (uintptr_t)
 
void func_802AAAAC (Collision *)
 
f32 func_802AAB4C (Player *)
 
s8 get_surface_type (u16)
 
s16 func_802ABD40 (u16)
 
s16 func_802ABD7C (u16)
 
s16 func_802ABDB8 (u16)
 
s16 func_802ABDF4 (u16)
 
f32 func_802ABE30 (f32, f32, f32, u16)
 
f32 func_802ABEAC (Collision *, Vec3f)
 
void process_shell_collision (Vec3f, f32, Vec3f, f32)
 
u16 process_collision (Player *player, KartBoundingBoxCorner *corner, f32 cornerPosX, f32 cornerPosY, f32 cornerPosZ)
 
void func_802AC114 (Vec3f, f32, Vec3f, f32)
 
u16 func_802AD950 (Collision *, f32, f32, f32, f32, f32, f32, f32)
 
u16 func_802ADDC8 (Collision *, f32, f32, f32, f32)
 
f32 func_802AE1C0 (f32, f32, f32)
 
void set_vtx_buffer (uintptr_t, u32, u32)
 
s32 is_line_intersecting_rectangle (s16, s16, s16, s16, s16, s16, s16, s16)
 
s32 is_triangle_intersecting_bounding_box (s16, s16, s16, s16, u16)
 
void func_802AF314 (void)
 
void set_vertex_data_with_defaults (Gfx *)
 
void set_vertex_data_with_default_section_id (Gfx *, s8)
 
void find_and_set_vertex_data (Gfx *, s8, u16)
 
void find_and_set_tile_size (uintptr_t, s32, s32)
 
void set_vertex_colours (u32, u32, s32, s8, u8, u8, u8)
 
void find_vtx_and_set_colours (uintptr_t, s8, u8, u8, u8)
 
void subtract_scaled_vector (Vec3f, f32, Vec3f)
 

Function Documentation

◆ find_and_set_tile_size()

void find_and_set_tile_size ( uintptr_t  addr,
s32  uls,
s32  ult 
)

Search for G_SETTILESIZE and set its args.

Here is the caller graph for this function:

◆ find_and_set_vertex_data()

void find_and_set_vertex_data ( Gfx *  addr,
s8  surfaceType,
u16  sectionId 
)

Recursive search and set for vertex data

Here is the call graph for this function:
Here is the caller graph for this function:

◆ find_vtx_and_set_colours()

void find_vtx_and_set_colours ( uintptr_t  displayList,
s8  alpha,
u8  red,
u8  green,
u8  blue 
)

Recursive search for vertices and set their colour values.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802AAAAC()

void func_802AAAAC ( Collision collision)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802AAB4C()

f32 func_802AAB4C ( Player player)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802ABD40()

s16 func_802ABD40 ( u16  index)
Here is the caller graph for this function:

◆ func_802ABD7C()

s16 func_802ABD7C ( u16  index)
Here is the caller graph for this function:

◆ func_802ABDB8()

s16 func_802ABDB8 ( u16  index)
Here is the caller graph for this function:

◆ func_802ABDF4()

s16 func_802ABDF4 ( u16  index)
Here is the caller graph for this function:

◆ func_802ABE30()

f32 func_802ABE30 ( f32  x,
f32  y,
f32  z,
u16  index 
)
Here is the caller graph for this function:

◆ func_802ABEAC()

f32 func_802ABEAC ( Collision collision,
Vec3f  pos 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802AC114()

void func_802AC114 ( Vec3f  ,
f32  ,
Vec3f  ,
f32   
)

◆ func_802AD950()

u16 func_802AD950 ( Collision collision,
f32  boundingBoxSize,
f32  x1,
f32  y1,
f32  z1,
f32  x2,
f32  y2,
f32  z2 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802ADDC8()

u16 func_802ADDC8 ( Collision collision,
f32  boundingBoxSize,
f32  posX,
f32  posY,
f32  posZ 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802AE1C0()

f32 func_802AE1C0 ( f32  posX,
f32  posY,
f32  posZ 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802AF314()

void func_802AF314 ( void  )

Appears to initialize some variables and struct members after course displaylists have been parsed.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ get_surface_type()

s8 get_surface_type ( u16  index)
Here is the caller graph for this function:

◆ is_line_intersecting_rectangle()

s32 is_line_intersecting_rectangle ( s16  minX,
s16  maxX,
s16  minZ,
s16  maxZ,
s16  x1,
s16  z1,
s16  x2,
s16  z2 
)
Returns
1 intersecting triangle, 0 not intersecting.
Here is the caller graph for this function:

◆ is_triangle_intersecting_bounding_box()

s32 is_triangle_intersecting_bounding_box ( s16  minX,
s16  maxX,
s16  minZ,
s16  maxZ,
u16  index 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ nullify_displaylist()

void nullify_displaylist ( uintptr_t  addr)
Here is the caller graph for this function:

◆ process_collision()

u16 process_collision ( Player player,
KartBoundingBoxCorner corner,
f32  cornerPosX,
f32  cornerPosY,
f32  cornerPosZ 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ process_shell_collision()

void process_shell_collision ( Vec3f  ,
f32  ,
Vec3f  ,
f32   
)

◆ set_vertex_colours()

void set_vertex_colours ( u32  ,
u32  ,
s32  ,
s8  ,
u8  ,
u8  ,
u8   
)

◆ set_vertex_data_with_default_section_id()

void set_vertex_data_with_default_section_id ( Gfx *  gfx,
s8  surfaceType 
)

Recursive search for vtx and set sectionId's to 0xFF

Here is the call graph for this function:
Here is the caller graph for this function:

◆ set_vertex_data_with_defaults()

void set_vertex_data_with_defaults ( Gfx *  gfx)

Recursive search for vtx and set surfaceTypes to -1 and sectionId's to 0xFF

Here is the call graph for this function:
Here is the caller graph for this function:

◆ set_vtx_buffer()

void set_vtx_buffer ( uintptr_t  addr,
u32  numVertices,
u32  bufferIndex 
)

Generates a list of pointers to course vtx.

Here is the caller graph for this function:

◆ subtract_scaled_vector()

void subtract_scaled_vector ( Vec3f  pos1,
f32  boundingBoxSize,
Vec3f  pos2 
)
Here is the caller graph for this function: