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