18 lines
		
	
	
		
			541 B
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			18 lines
		
	
	
		
			541 B
		
	
	
	
		
			C#
		
	
	
	
	
	
using Engine.Core;
 | 
						|
 | 
						|
namespace Engine.Physics2D;
 | 
						|
 | 
						|
public class RigidBody2D : Behaviour2D, IRigidBody2D
 | 
						|
{
 | 
						|
    private const float LOWEST_ALLOWED_MASS = 0.00001f;
 | 
						|
    private float _mass = 1f;
 | 
						|
 | 
						|
    public IPhysicsMaterial2D Material { get; set; } = new PhysicsMaterial2DDefault();
 | 
						|
 | 
						|
    public Vector2D Velocity { get; set; } = Vector2D.Zero;
 | 
						|
    public float AngularVelocity { get; set; } = 0f;
 | 
						|
    public bool IsStatic { get; set; } = false;
 | 
						|
 | 
						|
    public float Mass { get => _mass; set => _mass = Core.Math.Max(value, LOWEST_ALLOWED_MASS); }
 | 
						|
}
 |