Syntriax.Engine/Engine.Physics2D/Collider2DShapeBehaviour.cs

19 lines
633 B
C#
Raw Normal View History

2024-01-24 19:21:53 +03:00
using Syntriax.Engine.Physics2D.Abstract;
using Syntriax.Engine.Physics2D.Primitives;
namespace Syntriax.Engine.Physics2D;
2024-01-25 20:42:49 +03:00
public class Collider2DShapeBehaviour : Collider2DBehaviourBase, IShapeCollider2D
2024-01-24 19:21:53 +03:00
{
public Shape ShapeWorld { get => _shapeWorld; protected set => _shapeWorld = value; }
public Shape ShapeLocal { get; set; } = Shape.Box;
2024-01-24 19:21:53 +03:00
private Shape _shapeWorld = Shape.Box.CreateCopy();
2024-01-24 19:21:53 +03:00
public override void CalculateCollider() => Transform.TransformShape(ShapeLocal, ref _shapeWorld);
public Collider2DShapeBehaviour() { }
public Collider2DShapeBehaviour(Shape shape) => ShapeLocal = shape;
2024-01-24 19:21:53 +03:00
}