36 lines
970 B
C#
36 lines
970 B
C#
using Syntriax.Engine.Core;
|
|
using Syntriax.Engine.Core.Abstract;
|
|
|
|
namespace Syntriax.Engine.Physics2D.Abstract;
|
|
|
|
/// <summary>
|
|
/// Represents a 2D rigid body in the engine.
|
|
/// </summary>
|
|
public interface IRigidBody2D : IBehaviour, IAssignableTransform
|
|
{
|
|
/// <summary>
|
|
/// The physics material of the <see cref="IRigidBody2D"/>.
|
|
/// </summary>
|
|
IPhysicsMaterial2D Material { get; set; }
|
|
|
|
/// <summary>
|
|
/// The velocity of the <see cref="IRigidBody2D"/>.
|
|
/// </summary>
|
|
Vector2D Velocity { get; set; }
|
|
|
|
/// <summary>
|
|
/// The angular velocity (rotation rate) of the <see cref="IRigidBody2D"/>.
|
|
/// </summary>
|
|
float AngularVelocity { get; set; }
|
|
|
|
/// <summary>
|
|
/// The mass of the <see cref="IRigidBody2D"/>.
|
|
/// </summary>
|
|
float Mass { get; set; }
|
|
|
|
/// <summary>
|
|
/// The value indicating whether the <see cref="IRigidBody2D"/> is static/immovable.
|
|
/// </summary>
|
|
bool IsStatic { get; set; }
|
|
}
|