Commit Graph

235 Commits

Author SHA1 Message Date
8177754821 revert to non-swept epa 2024-09-10 13:56:26 -05:00
8050c39496 minor cleanup 2024-09-09 12:08:28 -05:00
5c03288c53 formatting 2024-09-09 10:56:54 -05:00
14163d2a09 semi working sweeping collision along velocity 2024-09-06 16:00:44 -05:00
11759dc6cd better direction gjk testing (still bugged since edge is furthest in velocity rather than closest projected, even though point is now correctly projected from end of velocity ray) 2024-09-05 09:16:01 -05:00
f608000b85 re-add/enable gjk debug visualization 2024-09-04 10:26:04 -05:00
8c36552659 collision resolution testing (janky bc angular velocity not taken into account) 2024-09-03 17:00:40 -05:00
9cb34ea1cd gjk.c & gjk.h 2024-09-03 15:59:06 -05:00
c3b96d1597 join logic for gjk expansion into one function 2024-09-03 14:30:42 -05:00
beccc17b7f working gjk penetration direction test 2024-09-03 12:04:22 -05:00
ed1a788821 gjk closest point working for non-colliding entities 2024-08-30 17:15:26 -05:00
8fd92c55a1 gjk expanded testing non-colliding closest face 2024-08-30 13:39:28 -05:00
8de566cad5 gjk step tweaking in debug mode 2024-08-29 18:46:08 -05:00
7e125e864e tweaking 2024-08-29 15:45:01 -05:00
2150d0e3c4 working epa test 2024-08-29 11:31:57 -05:00
818ffa7eba start on scuffed epa 2024-08-28 20:21:55 -05:00
2453ceb239 fixed skew & child entity interpolation (still drifting skew bug due to accumulated sin & atan2 imprecision) 2024-08-27 18:35:43 -05:00
1e8b6973c1 replace atan2 approximation with one that seems more stable 2024-08-26 19:21:14 -05:00
bdcc6a8c81 set local xform when applying child attachment 2024-08-26 16:13:34 -05:00
4ce85c1bef skew testing 2024-08-26 14:48:40 -05:00
8bcc0bd356 working gjk test 2024-08-24 13:45:12 -05:00
86f1f1f6e0 start on scuffed gjk collision detection 2024-08-23 20:30:22 -05:00
17f7e3daaa small tweak 2024-08-23 13:25:23 -05:00
bd237e211b divide forces by mass only once during physics sim 2024-08-22 13:05:43 -05:00
687ebb4eb9 accumulate forces and impulses in one pass 2024-08-22 11:33:09 -05:00
c4dd372041 store and calculate mass from unscaled mass instead of density 2024-08-21 17:17:05 -05:00
9a2ec4ebe4 take mass to account when applying impulse 2024-08-19 19:45:12 -05:00
10c9c833ba better impulse & force application 2024-08-19 19:20:55 -05:00
0ed2a403dc impulses & forces 2024-08-19 15:02:41 -05:00
83b0b3f255 start verlet integration 2024-08-18 22:44:55 -05:00
00560af92c unlink existing parent when linking 2024-08-16 15:55:16 -05:00
0e658749b1 track key repeats in user binds 2024-08-15 16:18:14 -05:00
bd4e560f67 allow error in aim angle 2024-08-15 14:41:01 -05:00
f48a059397 weapon attachment to parent 2024-08-15 13:59:42 -05:00
9424c9c2c9 correct bullet starting point 2024-08-14 18:40:07 -05:00
38075e5efd entity_prop_kinematic 2024-08-14 18:22:06 -05:00
2a357c127f more bullet testing 2024-08-14 14:21:51 -05:00
ca6c058675 bullet trail testing 2024-08-13 19:29:03 -05:00
45c6d94009 more bullet testing 2024-08-13 16:34:31 -05:00
bcbf9c9588 bullet testing 2024-08-13 14:30:42 -05:00
cad25d24b2 entity release prop 2024-08-13 14:04:01 -05:00
52db86b012 entity active field 2024-08-13 12:58:13 -05:00
57e0d0a84a begin firing/bullet work 2024-08-12 19:41:39 -05:00
81d02f3c80 debug pausing 2024-08-12 18:50:10 -05:00
065986384e move separate game updates into individual iterations 2024-08-12 18:00:11 -05:00
c0517a7df6 rename next_tick -> tick 2024-08-12 16:20:36 -05:00
b629f53f16 formatting 2024-08-12 16:15:31 -05:00
e6d3506035 rename published_tick & world -> prev_tick & next_tick 2024-08-12 15:27:35 -05:00
787bb9e0d1 mark published tick entity store read only 2024-08-12 15:18:51 -05:00
d17727c133 minor cleanup 2024-08-09 23:13:24 -05:00
1125015ff7 weapon triggering testing 2024-08-09 22:57:38 -05:00
911208a926 triggering beginnings. 2024-08-09 22:27:02 -05:00
f5400b0205 equip/fire beginnings. player input cmd change. 2024-08-09 21:03:51 -05:00
dbeb0f0f72 only re-calculate all xforms before publishing game tick 2024-08-08 14:23:18 -05:00
a7d8e19784 use pivot dir to determine sprite transform rotation. 2024-08-08 13:38:25 -05:00
28af2c9fc9 potentially fixed entity release function 2024-08-07 16:36:33 -05:00
8afeea3b9a store user player aim as active camera focus 2024-08-07 14:40:09 -05:00
0f113f640f child xform fixes 2024-08-07 14:13:06 -05:00
f5e28a04af add entitity_get/set_xform functions 2024-08-07 11:48:19 -05:00
91f7299274 re-enable test entities at start 2024-08-06 22:16:18 -05:00
f8549618bb await sprite sheet in game thread 2024-08-06 18:11:04 -05:00
38a2478325 fix updates not ran on new entities added from game commands 2024-08-06 17:58:52 -05:00
bac9d797b9 fix entity gen comparison 2024-08-06 16:05:29 -05:00
53ae299816 add root entity. release children with parent. 2024-08-06 15:09:57 -05:00
c7ee34037a begin entity xform tree refactor 2024-08-06 13:44:24 -05:00
bda472d15e update tim test image 2024-08-05 13:10:15 -05:00
3049e02b57 working aim from hold slice correctly 2024-08-05 13:01:15 -05:00
c25afa72b9 implement partially broken slice based aiming 2024-08-01 14:47:37 -05:00
91d7812f8a rename rel_xform -> exform. world_xform -> xform_world. sprite_quad_xform -> sprite_xform_world. add rel sprite_xform field. 2024-08-01 13:10:37 -05:00
219acd3927 calculate sprite xform from world xform, and add calculation to world xform recurse step 2024-08-01 12:43:49 -05:00
5c51b555b2 fix sprite slice size off-by-one. dont calculate entity animation in user thread. debug draw slices 2024-07-31 20:01:43 -05:00
fd3ab6146b calculate sprite xform from pivot in game thread 2024-07-31 18:20:31 -05:00
1dd8a4d659 store slices & spans in array 2024-07-25 13:04:12 -05:00
a314f1b8f4 ase slice parsing first pass 2024-07-23 14:15:02 -05:00
91ea995209 cleanup double semicolons 2024-07-22 13:04:44 -05:00
04db1226e2 refactor mutexes to use 'sys_lock' objects. make all mutexes rw mutexes. 2024-06-25 19:54:33 -05:00
3061d465d1 minor tweaks & fixes 2024-06-25 18:35:53 -05:00
63c309b64f replace with placeholder graphics 2024-06-25 15:17:14 -05:00
9eabdcd222 msvc support in progress 2024-05-03 02:35:25 -05:00
00629aa988 merge texture & sheet into 'sprite' 2024-05-01 15:50:50 -05:00
cf3d678699 texture cache w/ eviction & reloading 2024-05-01 00:22:06 -05:00
f414cd874b sheet eviction when over memory budget 2024-04-30 14:04:18 -05:00
35ded9dbac sheet loader thread 2024-04-26 14:00:31 -05:00
e3830fccae working sheet cache prototype 2024-04-24 18:19:19 -05:00
228bef5a68 more proper sys_panic 2024-04-15 19:31:22 -05:00
511364ee05 app exit / shutdown callbacks 2024-04-15 18:02:38 -05:00
d646d3434c rename ase & sheet 'tag' -> 'span'. begin sheet testing. 2024-04-15 14:25:10 -05:00
2d593fee03 rename global 'L' vars to 'G' 2024-04-11 12:50:28 -05:00
02b31ab441 rename DEBUG_LVAR -> DEBUG_ALIAS 2024-04-11 12:42:44 -05:00
773a221b44 more unified tls model. testing json parsing & unicode display. 2024-04-05 18:02:17 -05:00
900e841228 rewrite json parser to be dumber 2024-04-01 15:09:14 -05:00
04eb118e60 system startup receipts 2024-03-28 13:31:35 -05:00
508c77abfd use macros for typedef'd function definitions 2024-03-28 11:46:43 -05:00
81c4b10def minor cleanup 2024-03-28 08:51:06 -05:00
cdb0d2bf58 minor tweaks 2024-03-28 08:44:27 -05:00
0a1761627b camera debug drawing and less direct rel xform application 2024-03-20 13:36:57 -05:00
c6ca5c0c9a viewport scaling by camera size 2024-03-19 21:17:49 -05:00
4a68e0c6c7 begin aspect ratio work 2024-03-15 23:16:54 -05:00
ba7769fba9 make published tick id atomic 2024-03-15 23:16:39 -05:00
3b0cdfd1f4 more fleshed out atomics for i32, i64, u32, u64 2024-03-15 22:37:49 -05:00
8b5b32ba76 add args to cursor clip set, stop rounding screen size to even number 2024-03-15 17:35:42 -05:00
744a6f8d65 use cursor position as aim direction 2024-03-15 16:52:40 -05:00
39f7b09036 ln, exp, pow, camera lerping 2024-03-15 01:10:24 -05:00
fa6df3152c add interp enable def in config 2024-03-14 14:00:25 -05:00
fd486bb71b remove 'view' type, replace with xform 2024-03-14 01:08:55 -05:00
e91a66f5b3 xform movement & focus directions by world view basis 2024-03-13 23:08:18 -05:00
bdd8db60c3 player focus dir relative to player. raw mouse input. crosshair. 2024-03-13 21:44:25 -05:00
aa8dd7a4fa minor tweaks 2024-03-13 15:10:16 -05:00
bac001947b interp tick ratio rather than time offset. set world tick timestamp at beginning of frame 2024-03-13 14:00:56 -05:00
8f33957bf9 use a blend time for interpolation 2024-03-13 13:15:20 -05:00
85ff4d5e2e minor cleanup 2024-03-12 11:50:59 -05:00
efa639c971 separate entity handling from world to new entity_store 2024-03-11 20:55:49 -05:00
495d7c97ee testing 2024-03-11 20:11:12 -05:00
4f52d24c94 rename ui_canvas -> screen_canvas 2024-03-11 19:43:17 -05:00
0f67701761 proper xform tree iteration 2024-03-11 19:39:26 -05:00
452e922e23 rework animation logic, don't loop increasingly as time goes on 2024-03-11 13:21:31 -05:00
76c609f8d5 fix entities arena not growing 2024-03-11 12:16:34 -05:00
adce14bbf3 rework tick -> world, move related logic from game into world api 2024-03-08 19:56:34 -06:00
8a2c40c817 rename cpy -> copy 2024-03-08 17:41:39 -06:00
8f3aaba794 alter DEBUG_LVAR semantics 2024-03-08 17:19:09 -06:00
46495d5815 rework sprite_trs -> sprite_xform 2024-03-08 15:56:07 -06:00
ba4dafcb4d convert entity rel_trs -> rel_xform 2024-03-08 11:50:28 -06:00
77421d7c09 change type mtx3x3 to xform 2024-03-07 15:43:51 -06:00
ed9841c1b1 sprite tag / animating logic touchup 2024-03-06 19:26:00 -06:00
a25941d364 merge 2024-03-06 13:59:34 -06:00
c5d0f8b6ea player acceleration, debug draw & camera mode 2024-03-06 12:53:47 -06:00
a4dc273480 camera entity 2024-03-05 22:51:10 -06:00
255626f934 nil entity 2024-03-05 18:05:14 -06:00
f260bf6579 fix fmod 2024-03-05 14:34:35 -06:00
48fef5ce2e player movement 2024-03-05 13:21:50 -06:00
bb9b374471 entity trees, xform storing & lerping 2024-03-04 18:39:10 -06:00
e9dc6b2854 testing sprite scaling 2024-03-02 02:17:18 -06:00
fb2e026665 entity & sprite translation 2024-03-02 02:09:01 -06:00
7b2437889e view zooming & panning 2024-02-29 19:01:51 -06:00
8284923173 initial commit 2024-02-29 16:01:51 -06:00