diff options
| author | navewindre <boneyaard@gmail.com> | 2025-09-03 20:10:09 +0200 |
|---|---|---|
| committer | navewindre <boneyaard@gmail.com> | 2025-09-03 20:10:09 +0200 |
| commit | f8b92ce3aa08b1445c9f956d8166830946562d12 (patch) | |
| tree | 94e63a5aec9f8f52b577f56799e0c9201fd976a5 /src/game/world/trace.h | |
a
Diffstat (limited to 'src/game/world/trace.h')
| -rw-r--r-- | src/game/world/trace.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/game/world/trace.h b/src/game/world/trace.h new file mode 100644 index 0000000..8a0f4eb --- /dev/null +++ b/src/game/world/trace.h @@ -0,0 +1,29 @@ +#pragma once + +#include "bsp.h" +#include "../../util/aabb.h" + +// quake uses 1 / 32 +const F32 BSP_TRACE_EPSILON = 1.f / 64.f; + +struct BSP_TRACE { + VEC3 in_start; + VEC3 in_end; + + U8 hit; + F32 frac; + VEC3 point; + VEC3 normal; + U32 propid; + I32 leafid; + U32 faceid; +}; + +extern U8 bsp_trace( BSP_TRACE* trace, BSP* bsp ); +extern U8 bsp_trace( BSP_TRACE* trace, BSP* bsp, VEC3 start, VEC3 end ); + +extern U8 bsp_trace( BSP_TRACE* trace, BSP* bsp, AABB aabb ); +extern U8 bsp_trace( BSP_TRACE* trace, BSP* bsp, AABB aabb, VEC3 start, VEC3 end ); + +extern U8 bsp_trace( BSP_TRACE* trace ); +extern U8 bsp_trace( BSP_TRACE* trace, VEC3 start, VEC3 end ); |
