blob: 8a0f4eb66230b16284f97cfbea52b02ccbe9ae1e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
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 );
|