From e3845a2f5ca1afa30902f31e1b565ad77b5aa172 Mon Sep 17 00:00:00 2001 From: Syntriax Date: Wed, 9 Apr 2025 12:25:56 +0300 Subject: [PATCH] fix: colliders broken after previous commit --- Engine.Physics2D/Collider2DCircleBehaviour.cs | 6 +++--- Engine.Physics2D/Collider2DShapeBehaviour.cs | 5 ++--- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/Engine.Physics2D/Collider2DCircleBehaviour.cs b/Engine.Physics2D/Collider2DCircleBehaviour.cs index be7fbc8..7a2e769 100644 --- a/Engine.Physics2D/Collider2DCircleBehaviour.cs +++ b/Engine.Physics2D/Collider2DCircleBehaviour.cs @@ -5,6 +5,8 @@ namespace Syntriax.Engine.Physics2D; public class Collider2DCircleBehaviour : Collider2DBehaviourBase, ICircleCollider2D { + private Circle _circleLocal = Circle.UnitCircle; + public Circle CircleWorld { get; protected set; } = Circle.UnitCircle; public Circle CircleLocal { @@ -16,9 +18,7 @@ public class Collider2DCircleBehaviour : Collider2DBehaviourBase, ICircleCollide } } - private Circle _circleLocal = Circle.UnitCircle; - - public override void CalculateCollider() => CircleWorld = Transform.Transform(CircleLocal); + public override void CalculateCollider() => CircleWorld = Transform.Transform(_circleLocal); public Collider2DCircleBehaviour() { } public Collider2DCircleBehaviour(Circle circle) => CircleLocal = circle; diff --git a/Engine.Physics2D/Collider2DShapeBehaviour.cs b/Engine.Physics2D/Collider2DShapeBehaviour.cs index 6120de0..b005e80 100644 --- a/Engine.Physics2D/Collider2DShapeBehaviour.cs +++ b/Engine.Physics2D/Collider2DShapeBehaviour.cs @@ -16,15 +16,14 @@ public class Collider2DShapeBehaviour : Collider2DBehaviourBase, IShapeCollider2 } } - private Shape2D _shapeWorld = Shape2D.Square; + private Shape2D _shapeWorld = Shape2D.Square.CreateCopy(); private Shape2D _shapeLocal = Shape2D.Square; - public override void CalculateCollider() => ShapeLocal.Transform(Transform, ref _shapeWorld); + public override void CalculateCollider() => Transform.Transform(ShapeLocal, ref _shapeWorld); public Collider2DShapeBehaviour() { } public Collider2DShapeBehaviour(Shape2D shape) { ShapeLocal = shape; - ShapeWorld.CreateCopy(); } }