Exposed libsm64's raycasting/collision logic via its API.

This commit is contained in:
MeltyPlayer
2022-11-07 19:40:46 -06:00
parent 1380e17066
commit ff41ecfceb
2 changed files with 51 additions and 0 deletions
+10
View File
@@ -5,6 +5,7 @@
#include <stdint.h>
#include <stdbool.h>
#include "decomp/engine/surface_collision.h"
#include "decomp/include/types.h"
#ifdef _WIN32
@@ -90,4 +91,13 @@ extern SM64_LIB_FN uint32_t sm64_surface_object_create( const struct SM64Surface
extern SM64_LIB_FN void sm64_surface_object_move( uint32_t objectId, const struct SM64ObjectTransform *transform );
extern SM64_LIB_FN void sm64_surface_object_delete( uint32_t objectId );
extern SM64_LIB_FN s32 sm64_surface_find_wall_collision(f32 *xPtr, f32 *yPtr, f32 *zPtr, f32 offsetY, f32 radius);
extern SM64_LIB_FN s32 sm64_surface_find_wall_collisions(struct WallCollisionData *colData);
extern SM64_LIB_FN f32 sm64_surface_find_ceil(f32 posX, f32 posY, f32 posZ, struct Surface **pceil);
extern SM64_LIB_FN f32 sm64_surface_find_floor_height_and_data(f32 xPos, f32 yPos, f32 zPos, struct FloorGeometry **floorGeo);
extern SM64_LIB_FN f32 sm64_surface_find_floor_height(f32 x, f32 y, f32 z);
extern SM64_LIB_FN f32 sm64_surface_find_floor(f32 xPos, f32 yPos, f32 zPos, struct Surface **pfloor);
extern SM64_LIB_FN f32 sm64_surface_find_water_level(f32 x, f32 z);
extern SM64_LIB_FN f32 sm64_surface_find_poison_gas_level(f32 x, f32 z);
#endif//LIB_SM64_H