Search Results for

    Show / Hide Table of Contents

    Interface IRigidBody3D

    Interface for RigidBody in 3D physics.

    Inherited Members
    IPhysicBody3D.BodyComponent
    IPhysicBody3D.InternalBody
    IPhysicBody3D.IsSensor
    IPhysicBody3D.Friction
    IPhysicBody3D.Restitution
    IPhysicBody3D.Flags
    IPhysicBody3D.CollisionCategories
    IPhysicBody3D.MaskBits
    IPhysicBody3D.ColliderShapes
    IPhysicBody3D.Transform
    IPhysicBody3D.AddColliderShape(IColliderShape3D)
    IPhysicBody3D.RemoveColliderShape(IColliderShape3D)
    IPhysicBody3D.GetColliderShapeByIndex(int)
    IPhysicBody3D.SetTransform(Vector3, Quaternion, Vector3)
    IPhysicBody3D.AnisotropicFriction
    IPhysicBody3D.CcdMotionThreshold
    IPhysicBody3D.CcdSweptSphereRadius
    IPhysicBody3D.CompanionId
    IPhysicBody3D.ContactDamping
    IPhysicBody3D.ContactProcessingThreshold
    IPhysicBody3D.ContactStiffness
    IPhysicBody3D.DeactivationTime
    IPhysicBody3D.HasContactResponse
    IPhysicBody3D.HitFraction
    IPhysicBody3D.InterpolationAngularVelocity
    IPhysicBody3D.InterpolationLinearVelocity
    IPhysicBody3D.InterpolationWorldTransform
    IPhysicBody3D.IsActive
    IPhysicBody3D.IslandTag
    IPhysicBody3D.IsStaticObject
    IPhysicBody3D.RollingFriction
    IPhysicBody3D.SpinningFriction
    Namespace: Evergine.Framework.Physics3D
    Assembly: Evergine.Framework.dll
    Syntax
    public interface IRigidBody3D : IPhysicBody3D

    Properties

    Aabb

    Gets the bounding box.

    Declaration
    BoundingBox Aabb { get; }
    Property Value
    Type Description
    BoundingBox

    ActivationState

    Gets or sets the activation state.

    Declaration
    ActivationState ActivationState { get; set; }
    Property Value
    Type Description
    ActivationState

    AngularDamping

    Gets the angular damping used to reduce the angular velocity. The damping parameter can be larger than 1.0f, but the damping effect becomes sensitive to the time step when the damping parameter is large.

    Declaration
    float AngularDamping { get; }
    Property Value
    Type Description
    float

    AngularFactor

    Gets or sets the angular factor.

    Declaration
    Vector3 AngularFactor { get; set; }
    Property Value
    Type Description
    Vector3

    AngularSleepingThreshold

    Gets the sleep threshold for angular velocity.

    Declaration
    float AngularSleepingThreshold { get; }
    Property Value
    Type Description
    float

    AngularVelocity

    Gets or sets the angular velocity.

    Declaration
    Vector3 AngularVelocity { get; set; }
    Property Value
    Type Description
    Vector3

    CenterOfMassPosition

    Gets the center of mass.

    Declaration
    Vector3 CenterOfMassPosition { get; }
    Property Value
    Type Description
    Vector3

    CenterOfMassTransform

    Gets or sets the center of mass transformation.

    Declaration
    Matrix4x4 CenterOfMassTransform { get; set; }
    Property Value
    Type Description
    Matrix4x4

    Gravity

    Gets or sets the gravity applied to this rigid body.

    Declaration
    Vector3 Gravity { get; set; }
    Property Value
    Type Description
    Vector3

    InvInertiaDiagLocal

    Gets or sets the InvInertiaDiagLocal vector of the rigid body.

    Declaration
    Vector3 InvInertiaDiagLocal { get; set; }
    Property Value
    Type Description
    Vector3

    InvInertiaTensorWorld

    Gets the inverse vector of the inertia tensor of the world.

    Declaration
    Matrix4x4 InvInertiaTensorWorld { get; }
    Property Value
    Type Description
    Matrix4x4

    InvMass

    Gets the inverse of the mass.

    Declaration
    float InvMass { get; }
    Property Value
    Type Description
    float

    IsInWorld

    Gets a value indicating whether this body is in the world.

    Declaration
    bool IsInWorld { get; }
    Property Value
    Type Description
    bool

    IsKinematicObject

    Gets a value indicating whether this body is kinematic.

    Declaration
    bool IsKinematicObject { get; }
    Property Value
    Type Description
    bool

    IsStaticOrKinematicObject

    Gets a value indicating whether this body is kinematic.

    Declaration
    bool IsStaticOrKinematicObject { get; }
    Property Value
    Type Description
    bool

    LinearDamping

    Gets the linear damping used to reduce the linear velocity. The damping parameter can be larger than 1.0f, but the damping effect becomes sensitive to the time step when the damping parameter is large.

    Declaration
    float LinearDamping { get; }
    Property Value
    Type Description
    float

    LinearFactor

    Gets or sets the linear factor.

    Declaration
    Vector3 LinearFactor { get; set; }
    Property Value
    Type Description
    Vector3

    LinearSleepingThreshold

    Gets the sleep threshold for linear velocity.

    Declaration
    float LinearSleepingThreshold { get; }
    Property Value
    Type Description
    float

    LinearVelocity

    Gets or sets the linear velocity.

    Declaration
    Vector3 LinearVelocity { get; set; }
    Property Value
    Type Description
    Vector3

    LocalInertia

    Gets the local inertia.

    Declaration
    Vector3 LocalInertia { get; }
    Property Value
    Type Description
    Vector3

    Mass

    Gets or sets the mass of the rigid body.

    Declaration
    float Mass { get; set; }
    Property Value
    Type Description
    float

    Orientation

    Gets the orientation.

    Declaration
    Quaternion Orientation { get; }
    Property Value
    Type Description
    Quaternion

    TotalForce

    Gets the total force applied to the rigid body.

    Declaration
    Vector3 TotalForce { get; }
    Property Value
    Type Description
    Vector3

    TotalTorque

    Gets the total torque applied to the rigid body.

    Declaration
    Vector3 TotalTorque { get; }
    Property Value
    Type Description
    Vector3

    Methods

    ApplyCentralForce(Vector3)

    Applies a central force to the rigid body.

    Declaration
    void ApplyCentralForce(Vector3 force)
    Parameters
    Type Name Description
    Vector3 force

    The force.

    ApplyCentralImpulse(Vector3)

    Applies an impulse to the center of the rigid body.

    Declaration
    void ApplyCentralImpulse(Vector3 impulse)
    Parameters
    Type Name Description
    Vector3 impulse

    The impulse.

    ApplyDamping(float)

    Applies the damping.

    Declaration
    void ApplyDamping(float step)
    Parameters
    Type Name Description
    float step

    Delta time.

    ApplyForce(Vector3, Vector3)

    Apply a force to the rigid body.

    Declaration
    void ApplyForce(Vector3 force, Vector3 relativePosition)
    Parameters
    Type Name Description
    Vector3 force

    The force vector.

    Vector3 relativePosition

    Relative position of the point where the force will be applied.

    ApplyGravity()

    Applies the gravity.

    Declaration
    void ApplyGravity()

    ApplyImpulse(Vector3, Vector3)

    Apply an impulse to the rigid body.

    Declaration
    void ApplyImpulse(Vector3 impulse, Vector3 relativePosition)
    Parameters
    Type Name Description
    Vector3 impulse

    The impulse.

    Vector3 relativePosition

    Relative position of the point where the force will be applied.

    ApplyTorque(Vector3)

    Applies a torque force to the rigid body.

    Declaration
    void ApplyTorque(Vector3 torque)
    Parameters
    Type Name Description
    Vector3 torque

    The torque.

    ApplyTorqueImpulse(Vector3)

    Applies a torque impulse to the rigid body.

    Declaration
    void ApplyTorqueImpulse(Vector3 torque)
    Parameters
    Type Name Description
    Vector3 torque

    The torque impulse.

    ClearForces()

    Clears all forces applied to the rigid body.

    Declaration
    void ClearForces()

    ComputeAngularImpulseDenominator(Vector3)

    Computes the angular impulse denominator.

    Declaration
    float ComputeAngularImpulseDenominator(Vector3 axis)
    Parameters
    Type Name Description
    Vector3 axis

    The axis.

    Returns
    Type Description
    float

    The angular impulse denominator.

    ComputeGyroscopicForceExplicit(float)

    Compute the gyroscopic impulse implicitly.

    Declaration
    Vector3 ComputeGyroscopicForceExplicit(float step)
    Parameters
    Type Name Description
    float step

    The step.

    Returns
    Type Description
    Vector3

    The gyroscopic impulse.

    ComputeGyroscopicImpulseImplicit_Body(float)

    Computes the gyroscopic impulse imparted by the body.

    Declaration
    Vector3 ComputeGyroscopicImpulseImplicit_Body(float step)
    Parameters
    Type Name Description
    float step

    The step.

    Returns
    Type Description
    Vector3

    The gyroscopic impulse.

    ComputeGyroscopicImpulseImplicit_World(float)

    Computes the gyroscopic impulse implied by the world.

    Declaration
    Vector3 ComputeGyroscopicImpulseImplicit_World(float step)
    Parameters
    Type Name Description
    float step

    The step.

    Returns
    Type Description
    Vector3

    The gyroscopic impulse.

    ComputeImpulseDenominator(Vector3, Vector3)

    Computes the impulse denominator.

    Declaration
    float ComputeImpulseDenominator(Vector3 pos, Vector3 normal)
    Parameters
    Type Name Description
    Vector3 pos

    The position.

    Vector3 normal

    The normal.

    Returns
    Type Description
    float

    The impulse denominator.

    GetVelocityInLocalPoint(Vector3)

    Gets the velocity at a local point of the rigid body.

    Declaration
    Vector3 GetVelocityInLocalPoint(Vector3 relativePosition)
    Parameters
    Type Name Description
    Vector3 relativePosition

    The relative position.

    Returns
    Type Description
    Vector3

    The velocity at the specified point.

    IntegrateVelocities(float)

    Integrates velocities.

    Declaration
    void IntegrateVelocities(float step)
    Parameters
    Type Name Description
    float step

    Delta time.

    ResetMassProperty(float, Vector3)

    Resets the mass property.

    Declaration
    void ResetMassProperty(float mass, Vector3 inertia)
    Parameters
    Type Name Description
    float mass

    The mass.

    Vector3 inertia

    The inertia.

    SetDamping(float, float)

    Sets damping values.

    Declaration
    void SetDamping(float linearDamping, float angularDamping)
    Parameters
    Type Name Description
    float linearDamping

    Linear damping value.

    float angularDamping

    Angular damping value.

    SetSleepingThresholds(float, float)

    Sets sleeping threshold values.

    Declaration
    void SetSleepingThresholds(float linear, float angular)
    Parameters
    Type Name Description
    float linear

    Linear threshold value.

    float angular

    Angular threshold value.

    UpdateDeactivation(float)

    Updates the deactivation.

    Declaration
    void UpdateDeactivation(float step)
    Parameters
    Type Name Description
    float step

    The time step.

    UpdateInertiaTensor()

    Updates the inertia tensor.

    Declaration
    void UpdateInertiaTensor()

    WakeUp()

    Wakes up the rigid body.

    Declaration
    void WakeUp()

    WantsSleeping()

    Returns whether the entity needs to sleep.

    Declaration
    bool WantsSleeping()
    Returns
    Type Description
    bool

    The rigid body needs to sleep.

    Extension Methods

    ReflectionHelper.GetMemberAssembly(object)
    ReflectionHelper.GetTypeName(object)
    In this article
    Back to top
    Generated by DocFX