diff options
author | neoraider <devnull@localhost> | 2006-10-20 14:57:05 +0200 |
---|---|---|
committer | neoraider <devnull@localhost> | 2006-10-20 14:57:05 +0200 |
commit | 1021d32f7ccb9f3f10253934fd4e5202b7382b2d (patch) | |
tree | 61dd0e93d0171a5fcc8b0fe854a2f50df52652d5 /collision.c | |
parent | f5ef6536cc243acd39bf563c3d9064d1908483b3 (diff) | |
download | libneofx-1021d32f7ccb9f3f10253934fd4e5202b7382b2d.tar libneofx-1021d32f7ccb9f3f10253934fd4e5202b7382b2d.zip |
Physik-Engine angefangen.
Lightmaps implementiert.
Diffstat (limited to 'collision.c')
-rw-r--r-- | collision.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/collision.c b/collision.c index 27e00b7..d093432 100644 --- a/collision.c +++ b/collision.c @@ -27,7 +27,7 @@ int CollisionPointTriangle(VERTEX p, TRIANGLE t) { int CollisionRayTriangle(VERTEX p, VECTOR vec, TRIANGLE t, float* f) { VECTOR pvec, tvec, qvec, edge1, edge2; - float det, u, v, invDet; + float det, u, v; edge1 = VectorSub(t.vertices[1], t.vertices[0]); edge2 = VectorSub(t.vertices[2], t.vertices[0]); @@ -46,11 +46,7 @@ int CollisionRayTriangle(VERTEX p, VECTOR vec, TRIANGLE t, float* f) { v = VectorDot(vec, qvec); if(v < 0.0 || u+v > det) return 0; - if(f) { - *f = VectorDot(edge2, qvec); - invDet = 1.0 / det; - *f *= invDet; - } + if(f) *f = VectorDot(edge2, qvec) / det; return 1; } |