Commit Graph

281 Commits (main)

Author SHA1 Message Date
Evan Hemsley f24ee21de0 pruning empty entities 2020-03-17 17:40:11 -07:00
Evan Hemsley 511a05f18e AddComponent for newly created Entities 2020-03-17 15:29:16 -07:00
Evan Hemsley 62a717cfbb Merge remote-tracking branch 'origin/fix_lookup_crash' into new_stuff 2020-03-16 19:01:34 -07:00
Evan Hemsley 77272f10d7 message read checks + started AddComponent 2020-03-16 19:00:42 -07:00
Evan Hemsley 4be62122ab fix lookup crash on component that is only read by renderers 2020-03-11 17:02:00 -07:00
thatcosmonaut c1e1f7f5ca ordered renderers register components with world builder 2020-01-28 14:05:11 -08:00
thatcosmonaut 4f75aeebf1 add SomeMessageWithEntity method to Engine 2020-01-13 14:59:18 -08:00
Evan Hemsley fada124b39 Merge branch 'master' of github.com:thatcosmonaut/encompass-cs 2019-12-31 13:42:05 -08:00
Evan Hemsley ab85428970 0.19.0 2019-12-31 13:42:01 -08:00
Evan Hemsley 926c05a4db rename to ReadMessagesWithEntity 2019-12-29 23:55:48 -08:00
Evan Hemsley 9057228795 fix bug when no messages existed for queried entity 2019-12-29 20:41:35 -08:00
Evan Hemsley df7abf4cf3 adds ability to retrieve messages by entity 2019-12-29 20:36:23 -08:00
Evan Hemsley 3ef34d37ae fix bug where priorities were not cleared at end of frame 2019-12-29 19:43:05 -08:00
Evan Hemsley 6f00191258 tightening up replay behavior 2019-12-29 19:08:32 -08:00
Evan Hemsley 4d47a60125 fix some bugs with new replay structure 2019-12-29 17:37:19 -08:00
Evan Hemsley a8669a6c67 starting replay system to avoid replaying every component every frame 2019-12-29 16:28:22 -08:00
Evan Hemsley 1eb72874c1 replace entity storage with int 2019-12-29 13:54:08 -08:00
Evan Hemsley f7095ffdfb refactor to remove ComponentUpdateManager 2019-12-29 13:24:51 -08:00
Evan Hemsley a2d29a6591 slight component manager optimization 2019-12-29 01:48:38 -08:00
Evan Hemsley 28f2ba969a remove unnecessary component store 2019-12-28 22:20:17 -08:00
Evan Hemsley d4115b231c replace bitset 2019-12-28 21:39:35 -08:00
Evan Hemsley 05fa578652 untrack destroyed entities 2019-12-28 16:16:21 -08:00
Evan Hemsley 936b97c4ec better error message when component is not found on entity 2019-12-28 15:08:07 -08:00
Evan Hemsley 9b0bf34c73 immediate tracking 2019-12-28 14:30:26 -08:00
Evan Hemsley 41e9dd4451 tracking for non-immediate components 2019-12-28 13:53:02 -08:00
Evan Hemsley e3343e4a00 fix non immediate component remove 2019-12-26 21:25:24 -08:00
Evan Hemsley 1a17f9a8e1 changes to component update handling 2019-12-26 20:18:46 -08:00
Evan Hemsley b644f4fb4b add extra component store 2019-12-23 20:36:12 -08:00
Evan Hemsley 7029b9f52e tightening up component write logic 2019-12-23 20:15:01 -08:00
Evan Hemsley bd17a86dec rename pending to immediate 2019-12-23 19:04:26 -08:00
Evan Hemsley 2076919f06 fix unmerged bitset updates 2019-12-23 18:51:15 -08:00
Evan Hemsley 47e1072c8d internal storage using int ID instead of entity to avoid hash lookups 2019-12-23 18:45:49 -08:00
Evan Hemsley 7885c2e0f4 component removes are treated as priority writes 2019-12-23 18:01:49 -08:00
Evan Hemsley b1c09a20a0 change bitset to be cross platform 2019-12-22 22:34:58 -08:00
Evan Hemsley 51a248156e fix bug on BitSet UnSet 2019-12-22 22:02:17 -08:00
Evan Hemsley d6b96cd470 halve size of bitset for cpu compatibility 2019-12-22 21:13:54 -08:00
Evan Hemsley 1e73351b07 restructure entity queries to enable caching 2019-12-22 18:13:35 -08:00
Evan Hemsley 4e3aaa7d47 restructuring entity set query system for caching benefits 2019-12-22 17:16:54 -08:00
Evan Hemsley 9a1a210039 implement internal BitSet1024 2019-12-22 16:21:07 -08:00
Evan Hemsley 570b6832ad check entity in store before remove component 2019-12-22 12:00:59 -08:00
Evan Hemsley 5299d6ddad remove bitarray allocations on query 2019-12-22 11:54:37 -08:00
Evan Hemsley 50974c181a advanced query system 2019-12-22 01:15:58 -08:00
Evan Hemsley 728109bfc6 beginning query syntax system 2019-12-21 17:58:07 -08:00
Evan Hemsley 1f0009b9fb integer IDs and entity capacity 2019-12-20 12:52:38 -08:00
Evan Hemsley 642f8df4d5 pooling bit arrays 2019-12-20 11:28:56 -08:00
Evan Hemsley 494a583240 started system for efficiently doing entity queries 2019-12-20 11:10:42 -08:00
evan 664f08c446 optimized away some LINQ 2019-12-16 20:40:15 -08:00
evan 84876ebc87 uber renderer 2019-12-16 20:16:46 -08:00
evan d8a5cd6493 message JIT preload 2019-12-16 19:55:27 -08:00
evan 67ac748a29 initial JIT preload 2019-12-16 18:51:45 -08:00
thatcosmonaut 629e23e98c start working on preloading generic code paths for JIT 2019-12-16 14:51:12 -08:00
Evan Hemsley f6d93c7579 slight entity manager optimization 2019-12-16 02:17:39 -08:00
Evan Hemsley db8964b54c generating stores at init time 2019-12-15 23:28:02 -08:00
Evan Hemsley f904f566ac 0.18.0 2019-12-06 13:17:03 -08:00
Evan Hemsley 9e25494b2f 0.18.0-preview8 2019-12-06 12:02:16 -08:00
Evan Hemsley 4a2771d6a2 optimize away boxing for messages 2019-12-06 12:01:56 -08:00
Evan Hemsley a29251f3d8 0.18.0-preview7 2019-12-06 00:37:16 -08:00
Evan Hemsley 25b8dc6749 fixes various write priority related bugs 2019-12-06 00:36:54 -08:00
Evan Hemsley bb5173f4e4 0.18.0-preview6 2019-12-05 23:55:38 -08:00
Evan Hemsley 436cd9c5d2 fix write priorities not breing cleared after frame 2019-12-05 23:55:17 -08:00
Evan Hemsley 6ec05a1625 0.18.0-preview5 2019-12-05 23:17:10 -08:00
Evan Hemsley f0ef0fbb21 fix erroneous engine cycle detection 2019-12-05 23:16:47 -08:00
Evan Hemsley ba286f337c 0.18.0-preview4 2019-12-05 22:32:52 -08:00
Evan Hemsley 8218ada6d1 fix emitters not being generated for certain component types +rename component message manager 2019-12-05 22:32:09 -08:00
Evan Hemsley 005405512e remove component messages 2019-12-05 19:55:17 -08:00
Evan Hemsley d4c6b9416d 0.18.0-preview3 2019-12-05 17:50:40 -08:00
Evan Hemsley ec191c69d8 fix issue where components would not be readable by renderers if they were not updated the previous frame 2019-12-05 17:50:05 -08:00
Evan Hemsley 8a676b3e4b hashsets cant set capacity lol 2019-12-05 17:07:54 -08:00
Evan Hemsley c11b5720b7 adding default capacities to avoid lots of initial runtime resizing 2019-12-05 17:07:06 -08:00
Evan Hemsley 65e5ea2ec0 remove Collections.Pooled 2019-12-05 16:23:39 -08:00
Evan Hemsley 23b3241f60 0.18.0-preview2 2019-12-05 16:19:54 -08:00
Evan Hemsley bdac3d8541 fix panic when using runtime HasComponent 2019-12-05 16:19:35 -08:00
Evan Hemsley 2a62adee51 0.18.0-preview1 2019-12-05 16:01:09 -08:00
Evan Hemsley 571310e579 fixed world initialization and draw component removal issues 2019-12-05 16:00:00 -08:00
Evan Hemsley 0293263684 fix component updates 2019-12-05 15:14:28 -08:00
Evan Hemsley 5513402573 removed all component ID stuff 2019-12-05 14:59:55 -08:00
Evan Hemsley a4c3040239 start removing component ID system 2019-12-05 12:10:33 -08:00
Evan Hemsley 506aee8c37 started rewriting managers to not reference interfaces 2019-12-04 20:50:08 -08:00
Evan Hemsley 2a7e97463e forgot to rename SendMessageDelayed on WorldBuilder 2019-11-25 19:37:03 -08:00
Evan Hemsley 1424ae8593 0.17.0 2019-11-25 19:29:46 -08:00
Evan Hemsley d76c991447 0.17.0-preview3 2019-11-22 16:43:31 -08:00
Evan Hemsley 1195f03fb2 Merge branch 'master' of github.com:thatcosmonaut/encompass-cs 2019-11-22 16:43:10 -08:00
Evan Hemsley 038b3aceee SetComponent should not require Reads 2019-11-22 16:43:07 -08:00
thatcosmonaut 3ca8c50e82 0.17.0-preview2 2019-11-22 13:19:00 -08:00
thatcosmonaut f05b7f725d remove time dilation priority system in favor of averaging 2019-11-22 13:14:36 -08:00
thatcosmonaut 3aeb8bf252 0.17.0-preview1 2019-11-22 10:16:19 -08:00
thatcosmonaut d45295ae87 messages with time dilation system 2019-11-21 14:22:10 -08:00
thatcosmonaut fc50bf9b81 implementation of time dilation system for engines 2019-11-21 13:53:33 -08:00
Evan Hemsley 83b180fadb system for changing drawable component layer 2019-11-20 19:26:44 -08:00
Evan Hemsley d53bf043db replace IDrawComponent with IDrawableComponent and remove SetDrawComponent 2019-11-20 19:16:44 -08:00
Evan Hemsley 62dfdb758a remove exposed GUIDs from the API 2019-11-20 19:01:29 -08:00
Evan Hemsley 6579c706c5 0.16.0 2019-11-17 10:55:28 -08:00
Evan Hemsley b8d66e7642 adds Engine.RemoveComponent<TComponent>(Entity) 2019-11-17 10:48:39 -08:00
thatcosmonaut bc66012c3d 0.15.0 2019-11-14 10:57:37 -08:00
Evan Hemsley c994e9d7fe add component reader methods that include entities 2019-11-13 20:08:11 -08:00
thatcosmonaut 3b6d473aeb implement runtime type GetComponent 2019-11-13 13:24:20 -08:00
thatcosmonaut 591cd980d9 runtime type HasComponent 2019-11-13 13:15:43 -08:00
thatcosmonaut 0920b9a8f7 fix bug where multiple messages between same engines caused build crash 2019-11-13 13:05:31 -08:00
Evan Hemsley 1172866c9f 0.14.0 2019-10-24 13:18:05 -07:00
Evan Hemsley 790e36b2d3 graph logic depends on MoonTools.Core.Graph 2019-10-24 13:13:43 -07:00