Commit Graph
338 Commits
Author SHA1 Message Date
6f557ac821 cleans up copy and removes ipopulatedefaultvalues (#3085)
Co-authored-by: Paul <ritter.paul1@gmail.com>
2022-08-13 23:12:04 +02:00
752d4dfe8b prototype composition (#3070)
* prototype composition

* oops

* better

* fixes build

* should fix

* misc fixes & circle test

* moar circle checks

* adds tests

Co-authored-by: Paul <ritter.paul1@gmail.com>
2022-08-01 14:22:46 +02:00
Pieter-Jan Briers 1c28782d5d Fix some grid-related warnings 2022-07-21 17:35:09 +02:00
Paul RitterandGitHub 1d4eec4855 make serv3 null reading sane and yaml-complaint (#3027) 2022-07-06 14:17:10 +10:00
metalgearslothandGitHub 8bea8237f8 Fix physicsmap recursive changes (#3014)
* Fix physicsmap recursive changes

* Fix recursion
2022-07-03 14:49:32 +10:00
metalgearslothandGitHub 93e26fd88a Add test for recursive broadphase updates (#3010) 2022-07-02 14:10:57 +10:00
metalgearslothandGitHub 852d1874db Add test that detachparenttonull mapid is recursive (#3009) 2022-07-01 15:07:25 +10:00
TekuNutandGitHub 47c56ffcf4 Fix crash in ReflectionManager (#2987) 2022-06-29 03:35:28 +10:00
metalgearslothandGitHub 62a24a320c Make raiselocalevent not broadcast by default (#2972)
* Make raiselocalevent not broadcast by default

* I forgor to commit
2022-06-22 09:52:50 +10:00
Pieter-Jan Briers 1ea18b9448 Move analyzer tests over to separate project.
Safe to say the build system and Rider do not like the double-project-reference shenanigans going on in Robust.UnitTesting.
2022-06-12 12:35:57 +02:00
Pieter-Jan Briers 1e7956eaa8 Remove MarshalHelper
Not necessary anymore since .NET Core
2022-06-12 11:30:30 +02:00
Leon FriedrichandGitHub b360c4439b Matrix3 and Angle: add readonly and ref->in (#2919)
* Matrix3 and Angle readonly and ref->in

* fix precision
2022-06-08 17:53:17 +02:00
Vera Aguilera PuertoandGitHub 82a67ecd99 Add Access Permissions to friends, friend attributes now work in members too. (#2799) 2022-06-07 11:27:36 +02:00
Pieter-Jan BriersandGitHub 832672149b Entity creation performance improvements (#2911) 2022-06-06 14:49:36 +02:00
Pieter-Jan BriersandGitHub 4226976821 Ordered EventBus optimizations (#2902) 2022-06-05 14:49:59 +02:00
Leon FriedrichandGitHub fc4eb664e2 Make TryGetComponent output nullable (#2905)
* Make TryGetComponent output nullable

* figs

* ah. there are more. Why do you fail me VS
2022-06-05 00:13:53 +02:00
Pieter-Jan BriersandGitHub bf1cc8fd7c Minor performance improvements (#2860) 2022-05-28 15:28:08 +02:00
Pieter-Jan Briers 6fc1daf978 Some compiler warning fixes. 2022-05-28 13:36:35 +02:00
Pieter-Jan BriersandGitHub e3b26e80bf Sync CurTime base. (#2858) 2022-05-28 13:03:42 +02:00
metalgearslothandGitHub be86b12b14 Fix collisionwake on spawn (#2859)
* Fix collisionwake on spawn

Stuff that was immediately slept wasn't checked correctly.

* Testy
2022-05-25 00:55:11 +10:00
41e9d9b08b Client profiling system (#2783)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-05-14 15:08:46 +10:00
metalgearslothandGitHub 32bdc19fe9 Final grid movement optimisation (#2711) 2022-05-14 14:54:31 +10:00
Vera Aguilera PuertoandGitHub 64cd6ea9be Adds GridUid field to TileRef. (#2815)
* Adds GridUid field to TileRef.

* actually compiles
2022-05-13 18:00:33 +10:00
Pieter-Jan Briers 15932fb9aa DebugTools.Assert(bool, string) does not allocate if string is a format string anymore. 2022-05-10 00:59:36 +02:00
Paul RitterandGitHub ba23a989a9 make pvs account for lastack properly (#2733) 2022-05-06 18:09:30 +02:00
metalgearslothandGitHub c6c69668c8 Fix polyshape centroids (#2793) 2022-05-05 22:42:35 +10:00
442de12b99 Grid splitting (#2743)
Co-authored-by: Vera Aguilera Puerto <gradientvera@outlook.com>
2022-04-24 00:57:56 +10:00
81ec61bcc8 overflowqueue (#2721)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2022-04-14 10:57:28 +02:00
DrSmugleafandGitHub 649178fa54 Rename engine prototypes folder to EnginePrototypes (#2723) 2022-04-14 05:46:29 +02:00
metalgearslothandGitHub 6714a99b38 EntityLookup anchor flag test (#2699) 2022-04-08 13:36:24 +10:00
metalgearslothandGitHub 4989842057 Remove IgnorePause (#2649) 2022-04-04 15:41:38 +10:00
8491f7be24 New Serv3 api just dropped (#2605)
Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2022-04-03 01:59:48 +02:00
AcruidandGitHub 6b9b56ca83 Grid Components Allocate Grids (#2597)
* Deleting a map is now routed through MapComponent deletion.

* Remove map and grid deletions from map networking, just delete the entity if you want to remove the map.

* Moved the chunkSize property of created grids from the networked MapData to the MapGridComponent state.

* Remove unused IMapManager.DefaultMap property.

* Removed MapCreationTick field from MapManager.MapCollection.

* Removed _maps hashset field from MapManager.

* Removed CreatedMaps array from network MapData.

* MapGrid.ParentMapId is now derived from the bound TransformComponent, and isn't required in the MapGrid ctor.
Removed MapGrid.CreatedTick, it can be found on MapGridComponent.CreationTick.

* Remove a bunch of ApplyGameStatePre code duplication.

* Completely refactored CreateGrid.

* Adds AddComponentUninitialized to the ECS system. This allows you to access a component before it is initialized in a using block.

* Use AddComponentUninitialized to allocate a grid after the component is allocated.

* MapLoader now creates the grids after creating the map entities.

* Chunksize and TileSize properties are now actually read out of the map yaml.
TileSize has a public Setter.

* Minor cleanup.

* Moved grid allocation onto the MapGridComponent.

* Final Cleanup.

* Merge Fail.

* Fixed test, grid was getting deleted because it was empty.

* Remove DeletedChunkDatum from grid networking.

* ApplyMapGridState moved from map manager to the MapGridComponent.
2022-03-13 18:28:59 -07:00
97db1712f3 Fix grid traversal velocities (#2594)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-03-12 23:57:30 +11:00
MoonyandGitHub d3eaea5697 Add support for tile variants. (#2577) 2022-03-09 20:56:58 +01:00
metalgearslothandGitHub 33251222cd EntityLookup as a system (#2573) 2022-03-03 21:17:01 +11:00
metalgearslothandGitHub 4b20bae597 RobustUnitTest tweaks (#2568) 2022-03-01 13:35:32 +11:00
AcruidandGitHub 08a52fb892 MapChunk Cleanup (#2555)
* All IPhysShapes now expose a property to get the local AABB.

* Removed IMapChunk. It's internal, we only have 1 implementation in the engine, no need for abstraction, and removing it helps perf.

* Cleaned up issues in MapChunk file.

* Encapsulate _tiles access inside MapChunk.

* Remove IEnumerable<TileRef> from MapChunk.

* Remove CollidesWithChunk

* Move CalcWorldAABB and RegenerateCollision from MapChunk to MapGrid.
Remove MapChunk.GridId.

* Removed MapChunk.GetAllTiles

* Removed the terrible mocked unit tests.

* Moved the GetTileRef functions from MapChunk to MapGrid.

* Add an event raised on MapChunk when a tile is modified.
Completely remove the IMapGrid dependency from MapChunk.

* Fix bug where you cannot change the tile damage of a tile.
2022-02-21 20:49:30 -08:00
AcruidandGitHub bec4297ce1 Move Map Pause data from MapManager to MapComponent. (#2543)
* Encapsulated existing _pausedMaps access in MapManager.Pause.
Added more unit tests.

* Moved the MapPaused flag from MapManager.Pause to MapComponent.

* Moved the MapPreInit flag from MapManager.Pause to MapComponent.

* Changed visibility so content can't access the flags directly.

* It's not the code that is wrong, it's the tests that are wrong!

* Removed completely obsolete bookkeeping event.
2022-02-20 13:36:45 -08:00
metalgearslothandGitHub 9ec38b5538 Optimise PVS recursion (#2524) 2022-02-17 18:03:14 +11:00
Ygg01 f61ae5da6b Update Linguini and line info in errors 2022-02-14 01:50:11 +01:00
Ygg01 3f7e89e006 Merge remote-tracking branch 'origin/master' into linguini-multiline-error-fix 2022-02-13 23:35:28 +01:00
AcruidandGitHub 5a28c16cae Map Pausing Fixes (#2520) 2022-02-12 15:54:03 +11:00
metalgearslothandGitHub 973406b91d Cleanup contact code a lot (#2480) 2022-02-07 13:10:58 +11:00
de4d255841 Analyzer to enforce classes to be either [Virtual], abstract, or sealed. (#2469)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-02-05 19:31:58 +01:00
Ygg01 2a7f1cbf48 Ensure that tests work regardless of platform 2022-02-03 04:06:53 +01:00
Ygg01 c4e63cfdc7 Fix multiline errors, add some tests 2022-02-03 01:43:45 +01:00
Leon FriedrichandGitHub c077e09436 Add explicit transform matrices (#2483) 2022-02-02 10:03:45 +11:00
metalgearslothandGitHub fcbb97ec55 Fix edge collisions (#2482) 2022-02-01 15:28:12 +11:00
metalgearslothandGitHub 73b73cd9da Fix InvWorldMatrix helper (#2478) 2022-01-31 16:20:21 +11:00