using Syntriax.Engine.Physics2D.Abstract; using Syntriax.Engine.Physics2D.Primitives; namespace Syntriax.Engine.Physics2D; public class Collider2DShapeBehaviour : Collider2DBehaviourBase, IShapeCollider2D { public Shape2D ShapeWorld { get => _shapeWorld; protected set => _shapeWorld = value; } public Shape2D ShapeLocal { get; set; } = Shape2D.Box; private Shape2D _shapeWorld = Shape2D.Box.CreateCopy(); public override void CalculateCollider() => Transform.TransformShape(ShapeLocal, ref _shapeWorld); public Collider2DShapeBehaviour() { } public Collider2DShapeBehaviour(Shape2D shape) => ShapeLocal = shape; }