Kp
9be3c8e2e8
Move Walls into d_level_unique_wall_state
2018-12-30 00:43:58 +00:00
Kp
1a5844e218
Move Vertices out of global scope
2018-12-30 00:43:57 +00:00
Kp
2f537133e8
Use vcobjidx_t for fvi ignore_obj_list
...
Enforce that callers provide vcobjidx_t, instead of permitting any type
compatible with objnum_t.
2018-12-30 00:43:57 +00:00
Kp
706a704c6d
Move unique_side to unique_segment
2018-12-13 02:31:38 +00:00
Kp
f7ad4d9b1a
Pass segments to find_point_seg
2018-09-19 02:13:30 +00:00
Kp
30a83eec41
Eliminate some uses of valptridx::operator->
2018-06-24 05:06:15 +00:00
Kp
0fd7e0e4ce
Pass context arrays to WALL_IS_DOORWAY
2018-06-24 05:06:15 +00:00
Kp
fb68e7f9ec
Eliminate use of side *
2018-06-24 05:06:15 +00:00
Kp
6d0d68d188
Split some segment uses based on shared vs unique
...
Leave `sides` in `shared_segment` to minimize churn. Parts of it must
move to `unique_segment` before this project finishes.
2018-06-24 05:06:14 +00:00
Kp
fa5d8b0be0
Move fvi.cpp fvi_hit_object out of global scope
2018-03-05 01:40:44 +00:00
Kp
ba81e0becb
Move fvi.cpp fvi_hit_side_seg out of global scope
2018-03-05 01:40:44 +00:00
Kp
2686bdc32b
Move fvi.cpp fvi_hit_seg2 out of global scope
...
Rename to fvi_hit_pt_seg based on comment explaining its purpose.
2018-03-05 01:40:44 +00:00
Kp
7ffd54377c
Move fvi.cpp fvi_hit_side out of global scope
2018-03-05 01:40:44 +00:00
Kp
f640917052
Move fvi.cpp wall_norm out of global scope
2018-03-05 01:40:44 +00:00
Kp
ad654648a6
Move fvi.cpp fvi_nest_count out of global scope
2018-03-05 01:40:44 +00:00
Kp
aa56477742
Propagate objects_in arguments
2017-08-13 20:38:31 +00:00
Kp
b4899aafac
Pass vcvertptr to get_seg_masks
2017-08-11 23:43:54 +00:00
Kp
5eec2a5ce5
Use valptridx for Vertices
2017-08-11 23:43:54 +00:00
Kp
e8d82d7d85
Pass valptridx factories to static functions
2017-07-26 03:15:59 +00:00
Kp
7b16571cb2
Rename countarray method count -> size
2017-06-10 03:31:03 +00:00
Kp
a03291b036
Rename countarray method size -> max_size
2017-06-10 03:31:03 +00:00
Kp
599ac9dee0
Always qualify valptridx type/factory
...
Previously, valptridx used PREFIX for allow-invalid+mutable, c#PREFIX
for allow-invalid+const, v#PREFIX for require-valid+mutable, vc#PREFIX
for require-valid+const. Convert the types, factories, and all usage
sites to specify a qualifier for all four combinations:
im#PREFIX -> allow-invalid+mutable
ic#PREFIX -> allow-invalid+const
vm#PREFIX -> require-valid+mutable
vc#PREFIX -> require-valid+const
Changes to common/include/valptridx.h and common/include/fwd-valptridx.h
are manual. All other changes are generated by:
git grep -lz -e '\(obj\|seg\|clwall\|wall\|actdoor\|trg\)\(ptridx\|ptr\|idx\)\(_t\)\?\>' | xargs -0 sed -i -e 's/\<\(v\?\)\(\(obj\|seg\|clwall\|wall\|actdoor\|trg\)\(ptridx\|ptr\|idx\)\(_t\)\?\)\>/\1m\2/g'
for the 'm' prefix and:
git grep -lz -e '\(obj\|seg\|clwall\|wall\|actdoor\|trg\)\(ptridx\|ptr\|idx\)\(_t\)\?\>' | xargs -0 sed -i -e 's/\<\([cm]\(obj\|seg\|clwall\|wall\|actdoor\|trg\)\(ptridx\|ptr\|idx\)\(_t\)\?\)\>/i&/g'
for the 'i' prefix.
2017-06-10 03:31:02 +00:00
Kp
482dcf0ba3
Avoid temporarily moving boss while probing layout
...
Expose sphere_intersects_wall and call it directly from
boss_fits_in_seg, so that boss_fits_in_seg does not need to modify the
position and segment of the boss during the test.
2017-03-01 02:48:40 +00:00
Kp
ba914fea81
Pass up various return values
2017-02-26 00:00:02 +00:00
Kp
df54e345fe
Remove write-only fvi_hit_seg
2017-02-22 03:05:43 +00:00
Kp
9821a77372
Simplify use of get_num_faces
2017-02-19 19:33:38 +00:00
Kp
cdb193c053
Use unsigned for sides/verts in more places
2017-02-19 19:33:38 +00:00
Kp
17208cca79
Disallow int for vm_distance_squared
2017-02-11 21:42:43 +00:00
zico
8bd3eaad4c
Fixed misleading indentations.
2016-10-31 11:36:48 +01:00
Kp
ee1003f29f
Move conditionally compiled code into namespace dsx
2016-08-25 04:05:32 +00:00
Kp
854907aa1b
Move find_hitpoint_uv into namespace dsx
2016-08-25 04:05:32 +00:00
Kp
3c71aa812e
Use static_cast for check_trans_wall
2016-07-06 01:54:25 +00:00
Kp
cc18ad2b68
Fix some -Wshadow warnings
2016-02-12 04:02:28 +00:00
Kp
a3ae630829
Remove default argument for basic_ptridx(index)
2016-01-09 16:38:14 +00:00
Kp
9ceedc96a8
Propagate valptridx requirement up
2016-01-09 16:38:14 +00:00
Kp
cefc79f869
Construct find_point_seg segptridx explicitly
2016-01-09 16:38:13 +00:00
Kp
0c0dff9def
Fix fvi sqrt
...
A previous optimization restructured the code in a way that lost the
>>16 normally applied to the product of two fix values.
Fixes: 707b69220d
("Skip sqrt,square in check_vector_to_sphere_1")
2016-01-03 20:21:36 +00:00
Kp
708dc0a7e1
Use vobjptr/vcobjptr for more Objects[] access
2015-12-03 03:26:49 +00:00
Kp
48af374924
Reduce direct use of Segments[]
2015-10-21 02:45:43 +00:00
Kp
6f94cc933c
Fold create_abs_vertex_lists into create_all_vertnum_lists
2015-10-18 21:01:20 +00:00
Kp
af2d8f7deb
Factor out create_vert*_lists switch
2015-10-18 21:01:20 +00:00
Kp
1f63bfeee5
Reduce lifetime of returned get_seg_masks result
2015-10-18 21:01:19 +00:00
Kp
9d4a55ae47
Move fvi globals into anonymous namespace
2015-10-03 17:17:49 +00:00
Kp
080e052d65
Reorder fvi_sub object tests
...
Change to individual continue statements to reduce number of negations.
2015-08-17 02:44:56 +00:00
Kp
e5683593ef
Expand ZERO_VECTOR inline
2015-08-13 03:15:53 +00:00
Kp
17b1943c5e
Mark various per-file structures as static
2015-08-12 03:11:46 +00:00
Kp
bda7fef3a0
Use get_local_player to compute reference to local player
2015-07-25 23:10:46 +00:00
Kp
53b6d25eeb
Use valptr for fvi.cpp
2015-07-12 01:04:19 +00:00
Kp
1b6999ff4d
Switch get_seg_masks from vcsegptridx_t to vcsegptr_t
...
The index component is not needed.
2015-07-12 01:04:17 +00:00
Kp
148c0f44c8
Convert segnum_t to uint16_t
2015-06-13 22:42:15 +00:00