Class PhysicsBodyStateUpdater

java.lang.Object
com.hypixel.hytale.server.core.modules.physics.util.PhysicsBodyStateUpdater
Direct Known Subclasses:
PhysicsBodyStateUpdaterMidpoint, PhysicsBodyStateUpdaterRK4, PhysicsBodyStateUpdaterSymplecticEuler

public class PhysicsBodyStateUpdater extends Object
  • Field Details

    • MIN_VELOCITY

      protected static double MIN_VELOCITY
    • acceleration

      @Nonnull protected Vector3d acceleration
    • accumulator

      protected final ForceAccumulator accumulator
  • Constructor Details

    • PhysicsBodyStateUpdater

      public PhysicsBodyStateUpdater()
  • Method Details

    • update

      public void update(@Nonnull PhysicsBodyState before, @Nonnull PhysicsBodyState after, double mass, double dt, boolean onGround, @Nonnull ForceProvider[] forceProvider)
    • updatePositionBeforeVelocity

      protected static void updatePositionBeforeVelocity(@Nonnull PhysicsBodyState before, @Nonnull PhysicsBodyState after, double dt)
    • updatePositionAfterVelocity

      protected static void updatePositionAfterVelocity(@Nonnull PhysicsBodyState before, @Nonnull PhysicsBodyState after, double dt)
    • updateAndClampVelocity

      protected void updateAndClampVelocity(@Nonnull PhysicsBodyState before, @Nonnull PhysicsBodyState after, double dt)
    • updateVelocity

      protected void updateVelocity(@Nonnull PhysicsBodyState before, @Nonnull PhysicsBodyState after, double dt)
    • computeAcceleration

      protected void computeAcceleration(double mass)
    • computeAcceleration

      protected void computeAcceleration(@Nonnull PhysicsBodyState state, boolean onGround, @Nonnull ForceProvider[] forceProviders, double mass, double timeStep)
    • assignAcceleration

      protected void assignAcceleration(@Nonnull PhysicsBodyState state)
    • addAcceleration

      protected void addAcceleration(@Nonnull PhysicsBodyState state, double scale)
    • addAcceleration

      protected void addAcceleration(@Nonnull PhysicsBodyState state)
    • convertAccelerationToVelocity

      protected void convertAccelerationToVelocity(@Nonnull PhysicsBodyState before, @Nonnull PhysicsBodyState after, double scale)