Don't split on a plane parallel to the motion.

This seems to improve the start/all solid cases a little, and it should
speed things up a little by avoiding unnecessary polygon tests.
This commit is contained in:
Bill Currie 2011-12-04 12:46:22 +09:00
parent ed8e09608a
commit 4e76aa3025

View file

@ -785,6 +785,10 @@ MOD_TraceLine (hull_t *hull, int num,
tstack->num = num;
tstack->side = side;
tstack->plane = plane;
// if the move is parallel to the plane, then the plane is not a good
// split plane
if (start_dist == end_dist)
tstack->plane = split_plane;
VectorCopy (end, tstack->end);
VectorMultAdd (start, frac[side ^ 1], dist, tstack->start);
tstack->start_frac = frac[side ^ 1];