Vegastrike 0.5.1 rc1
1.0
Original sources for Vegastrike Evolved
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
OPC_PlanesTriOverlap.h
Go to the documentation of this file.
1
8
inline_
bool
PlanesCollider::PlanesTriOverlap
(
udword
in_clip_mask)
10
{
11
// Stats
12
mNbVolumePrimTests
++;
13
14
const
Plane
* p =
mPlanes
;
15
udword
Mask = 1;
16
17
while
(Mask<=in_clip_mask)
18
{
19
if
(in_clip_mask & Mask)
20
{
21
float
d0 = p->
Distance
(*
mVP
.
Vertex
[0]);
22
float
d1 = p->
Distance
(*
mVP
.
Vertex
[1]);
23
float
d2 = p->
Distance
(*
mVP
.
Vertex
[2]);
24
if
(d0>0.0f && d1>0.0f && d2>0.0f)
return
FALSE
;
25
// if(!(IR(d0)&SIGN_BITMASK) && !(IR(d1)&SIGN_BITMASK) && !(IR(d2)&SIGN_BITMASK)) return FALSE;
26
}
27
Mask+=Mask;
28
p++;
29
}
30
/*
31
for(udword i=0;i<6;i++)
32
{
33
float d0 = p[i].Distance(mLeafVerts[0]);
34
float d1 = p[i].Distance(mLeafVerts[1]);
35
float d2 = p[i].Distance(mLeafVerts[2]);
36
if(d0>0.0f && d1>0.0f && d2>0.0f) return false;
37
}
38
*/
39
return
TRUE
;
40
}
src
cmd
collide2
OPC_PlanesTriOverlap.h
Generated on Fri May 29 2015 23:07:13 for Vegastrike 0.5.1 rc1 by
1.8.4