Kp
742c67b935
Pass fvi_* args by &
2014-11-02 03:42:50 +00:00
Kp
5bb9c88979
Add vm_vec_sub that returns result
2014-10-29 03:24:31 +00:00
Kp
53aa70cecb
Use vsegptridx_t
2014-10-28 03:08:51 +00:00
Kp
9a32e151ff
Pass check_effect_blowup vms_vector arg by &
2014-10-26 21:36:35 +00:00
Kp
a79bb365f9
Pass get_seg_masks arg by &
2014-10-26 21:28:38 +00:00
Kp
a32547af16
Pass position-related vms_vector arg by &
2014-10-22 02:46:03 +00:00
Kp
6299bb099a
Remove unused file/line from create_abs_vertex_lists
...
Exception handling generates automatic line information.
2014-10-16 02:47:17 +00:00
Kp
a99466f8c8
Pass vm_vec_crossprod arg by &
2014-10-01 02:28:42 +00:00
Kp
b5f443f21e
Pass vm_vec_normalized_dir arg by &
2014-10-01 02:28:41 +00:00
Kp
0b691365a7
Pass vm_vec_copy_normalize arg by &
2014-10-01 02:28:41 +00:00
Kp
ac39749382
Pass vm_vec_dist arg by &
2014-10-01 02:28:41 +00:00
Kp
05a91f9b58
Pass vm_vec_scale_add2 arguments by &
2014-09-28 21:43:14 +00:00
Kp
4104bf4f11
Pass vm_vec_scale_add arguments by &
2014-09-28 21:43:14 +00:00
Kp
00b59c3058
Pass vm_vec_dot arguments by &
2014-09-28 21:11:48 +00:00
Kp
321bbe37d8
Pass vm_vec_sub arguments by &
2014-09-28 21:11:45 +00:00
Kp
2107b52764
Pass vm_vec_add arguments by &
2014-09-28 21:11:40 +00:00
Kp
6c30bb5d98
Pass vm_vec_scale2 dest by &
2014-09-28 21:11:36 +00:00
Kp
a550673639
Pass vm_vec_normalize v by &
2014-09-28 21:11:03 +00:00
Kp
1e6bf36e20
Pass vm_vec_mag v by const&
2014-09-28 21:11:03 +00:00
Kp
02e2e77ee6
Tighten processing of WALL_IS_DOORWAY flags
2014-09-06 22:26:11 +00:00
Kp
fc30079c0b
Remove use of vms_vector_array in check_point_to_face
2014-08-22 02:26:51 +00:00
Kp
39d29e17fa
Use pointer-to-member access in find_hitpoint_uv
2014-08-22 02:22:10 +00:00
zico
ee828c9b15
Removed conditional handling of collision point calculation from check_vector_to_sphere_1 due to testing showing too many problems which could not be solved without drastic changes. Calculate valid collision point in collide.cpp if necessary (CED, you were right :))
2014-08-18 12:09:54 +02:00
zico
cc2f1cb040
Have objects with PF_PERSISTENT (never supposed to stop) flag also trigger original condition in check_vector_to_sphere_1
2014-08-18 10:48:02 +02:00
zico
d2b0a4d02d
Fixed incorrect/missing calculation of collision point in check_vector_to_sphere_1 and added special check in check_vector_to_object to only apply for certain objects; Removed extrapolation of physics as it would unintentionally cause premature collisions (requires further fixing of do_physics_sim and do_physics_sim_rot to properly scale to FrameTime)
2014-08-17 23:57:56 +02:00
Kp
125d9257be
Use special type names for segment/object numbers
2014-08-13 02:57:12 +00:00
Kp
1c064b8efb
Remove unused find_hitpoint_uv l parameter
2014-08-08 02:51:02 +00:00
Kp
e9c5a64c7e
Use object helper to iterate in fvi
2014-08-03 03:17:34 +00:00
Kp
6370292202
Pass array<> to create_*_vertex_lists
2014-07-17 03:29:57 +00:00
Kp
d135e93b94
Use std::min_element to find least vertex
2014-07-17 03:29:57 +00:00
Kp
c0e6804fb0
Use assignment for vms_vector_array in fvi
2014-07-05 03:48:57 +00:00
zico
ad7cb106bc
Changed custom D1X license to GPLv3
2014-06-01 19:55:23 +02:00
Kp
9a5d0f6f09
Use symbolic values for segment/object first/none
2014-01-06 04:17:55 +00:00
Kp
094dfbf3d4
Reduce header inclusions
2013-12-31 03:22:03 +00:00
Kp
073f00974a
Eliminate uses of the typedef struct X { ... } X; pattern
...
C++ does not require this pattern.
import re, fileinput
to = re.compile(r'^typedef struct ([a-z_A-Z]+)\s*{')
tc = re.compile(r'^}(.*?)\s*([a-z_A-Z]+);$')
osn = None
for line in fileinput.input(inplace=True):
m = to.match(line)
if m:
osn = m.group(1)
print 'struct %s\n{' % osn
continue
if osn:
m = tc.match(line)
if m:
csn = m.group(2)
if osn == csn:
print '}%s;' % m.group(1)
osn = None
continue
else:
osn = None
print line,
2013-12-28 22:48:07 +00:00
Kp
fbd35de5f0
Remove bogus fvi assertion
2013-12-28 22:40:11 +00:00
Kp
6cb6faf5ce
Switch fvi to use a local visited_segment_bitarray_t
2013-12-22 20:56:55 +00:00
Kp
4460b16d0e
Simplify visited check in sphere_intersects_wall
...
Non-segments can never be visited, so check for existence first.
2013-12-22 20:56:55 +00:00
Kp
a7bd19a7ca
Convert fvi to use countarray for segment list
...
Also fixes a bug where seglist could receive wrong elements when
fvi_sub recursive call returns a type other than HIT_NONE. Bug caused
by badly named variables:
int ii;
for (ii=0;i < temp_n_segs && *n_segs < MAX_FVI_SEGS-1;)
seglist[(*n_segs)++] = temp_seglist[ii++];
The wrong counter is used for first part of the conditional, so
uninitialized elements of temp_seglist could be read back if i
(==n_segs_visited) is smaller than temp_n_segs or elements could be
skipped if i is greater than temp_n_segs.
2013-12-22 20:56:53 +00:00
Kp
2714679284
Mark private functions static
2013-11-02 04:23:55 +00:00
Kp
5b0c4b10ac
Use accessor for most get/set object->id accesses
2013-10-20 22:49:09 +00:00
Kp
6f152aa016
Move similar/main/fvi.c -> similar/main/fvi.cpp
2013-10-05 21:35:58 +00:00