]> git.xonotic.org Git - xonotic/darkplaces.git/commitdiff
fix another case of Trace.endpos being set too early
authorhavoc <havoc@d7cf8633-e32d-0410-b094-e92efae38249>
Sun, 4 Oct 2009 00:31:48 +0000 (00:31 +0000)
committerhavoc <havoc@d7cf8633-e32d-0410-b094-e92efae38249>
Sun, 4 Oct 2009 00:31:48 +0000 (00:31 +0000)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@9294 d7cf8633-e32d-0410-b094-e92efae38249

collision.c

index b6bdc443d326099087a31e6ea877635e1b747ac2..6583d34d990487382ab0e13ebfed2990cb6e76f9 100644 (file)
@@ -1613,7 +1613,6 @@ void Collision_ClipPointToGenericEntity(trace_t *trace, dp_model_t *model, int f
 
        memset(trace, 0, sizeof(*trace));
        trace->fraction = trace->realfraction = 1;
-       VectorCopy(start, trace->endpos);
 
        Matrix4x4_Transform(inversematrix, start, starttransformed);
 #if COLLISIONPARANOID >= 3
@@ -1628,6 +1627,7 @@ void Collision_ClipPointToGenericEntity(trace_t *trace, dp_model_t *model, int f
        // transform plane
        // NOTE: this relies on plane.dist being directly after plane.normal
        Matrix4x4_TransformPositivePlane(matrix, trace->plane.normal[0], trace->plane.normal[1], trace->plane.normal[2], trace->plane.dist, trace->plane.normal);
+       VectorCopy(start, trace->endpos);
 }
 
 void Collision_ClipPointToWorld(trace_t *trace, dp_model_t *model, const vec3_t start, int hitsupercontents)