41 Commits

Author SHA1 Message Date
f5fbd4e5ef feat: IPhysicsIteration interface added 2025-06-05 23:23:34 +03:00
beecefec1c refactor: switched from universe objects to behaviours on all managers like update, draw & physics etc. 2025-06-03 23:59:40 +03:00
7a3202a053 chore: simplified type names on physics engine 2D 2025-06-01 10:26:38 +03:00
1acc8bdb8f perf!: improved sorted behaviour collector by using binary insertion to reduce performance impact 2025-05-31 12:00:32 +03:00
61e2761580 perf!: events refactored throughout all the project to use Event<> class
All delegate events are refactored to use the Event<TSender> and Event<TSender, TArgument> for performance issues regarding delegate events creating garbage, also this gives us better control on event invocation since C# Delegates did also create unnecessary garbage during Delegate.DynamicInvoke
2025-05-31 00:32:58 +03:00
b0f8b0dad6 refactor: behaviour collector Count and indexer accessors added 2025-05-29 23:17:11 +03:00
9bf17cc191 perf: physics engine memory leaks fixed 2025-05-29 22:33:47 +03:00
bf8fbebae3 perf: DelegateExtensions.InvokeSafe marked obsolete for memory allocation reasons, soon to be removed 2025-05-29 21:48:08 +03:00
a3b03efd47 feat: IPhysicsEngine2D.StepIndividual method for individual object simulation 2025-05-27 15:54:07 +03:00
4213b3f8b5 fix: fixed an issue where when there is an inactive collider in the universe messing up the physics engine 2025-05-27 13:52:53 +03:00
877a004a13 refactor: added pre, regular & post physics update interfaces 2025-05-24 13:59:07 +03:00
8293c58f9f refactor: removed X.Abstract namespaces and moved StateMachine to under Systems namespace 2025-04-15 23:33:58 +03:00
70c884acfe refactor!: renamed GameManager to Universe and HierarchyObject to UniverseObject 2025-04-13 21:57:05 +03:00
58eb373c79 feat: safe delegate invocation helper added 2025-04-13 19:08:47 +03:00
48710b0a7f fix: physics engine not progressing properly due to wrong delta time parameter 2025-04-09 23:19:20 +03:00
3f7a646bf0 refactor: updated PhysicsEngine2D to be plug & play 2025-04-08 20:30:32 +03:00
61488aa0e5 fix: physics engines not triggering with correct parameters 2025-04-08 18:22:29 +03:00
f9785462b0 refactor: delegate names updated to have no "On" prefix 2025-03-29 21:51:51 +03:00
9af44d48b3 refactor: code styles enforced with .editorconfig 2025-03-17 21:32:37 +03:00
e725a4e89c refactor: Renamed Delegate Declarations as EventHandler 2024-11-23 23:14:44 +03:00
55ed8b84f6 Refactor: CollisionDetectionInformation Names 2024-11-03 20:25:28 +03:00
9f522bdb66 fix: Physics Engine Not Resolving Static Objects Correctly 2024-11-02 09:39:53 +03:00
62e50aefc1 feat: IPhysicsEngine2D Events 2024-10-25 23:10:32 +03:00
ef21cdf213 refactor: Actions to Delegates 2024-07-15 01:13:39 +03:00
ab0e868d52 style: IterationCount to IterationPerStep 2024-02-01 11:33:23 +03:00
de336d0ee5 refactor: Dependency Injection to PhysicsEngine2Ds 2024-01-31 10:08:13 +03:00
4facfdb6cf fix: Physics Engine Stepping Inactive Rigid Bodies Fixed 2024-01-31 09:59:42 +03:00
1c7d941bc1 feat(core): IBehavior.IsActive 2024-01-28 14:56:50 +03:00
dc96b93024 feat(physics): Engine Rigidbody2D Static Check 2024-01-28 14:56:13 +03:00
affd2bb8c4 feat: ICollider.OnTriggered 2024-01-27 20:31:51 +03:00
a3c4afb223 refactor: Basic Collision Resolver 2024-01-27 20:08:16 +03:00
4d9121118d refactor: Renamed OnCollisionPreResolve to OnCollisionDetected 2024-01-27 19:59:27 +03:00
05d88f7ca2 refactor: Renamed ICollisionDetector to ICollisionDetector2D 2024-01-27 19:58:55 +03:00
309c8db6e1 feat: ICollider2D Action Calls 2024-01-27 19:22:59 +03:00
0ba6913a61 fix: Static Rigidbodies Moving When Velocity or AngularVelocity Assigned 2024-01-27 19:21:18 +03:00
9556be6f17 feat: Static & Mass Consideration For Rigidbodies 2024-01-27 15:07:40 +03:00
b14d10db0c perf: Drastically Improved Memory Usage
TIL, records are not value types and are actually just reference types. So I was pretty much allocating from heap every time I used any of my data types (Like Vector2D). Needless to say, they are all now readonly structs as I originally intended them to be.
2024-01-27 00:35:12 +03:00
058c6dafe3 refactor: Removed Unused Methods 2024-01-26 17:09:21 +03:00
266443504f feat: Improved Test Collision Resolving 2024-01-25 21:54:23 +03:00
0af1b11396 feat: Test Collision Detection & Move 2024-01-25 17:45:22 +03:00
a9485475c7 feat: Initial Physics Code From Previous Repo 2024-01-23 15:40:04 +03:00