New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@dimforge/rapier3d-compat

Package Overview
Dependencies
Maintainers
0
Versions
76
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@dimforge/rapier3d-compat - npm Package Versions

1
68

0.8.0-alpha.0

Diff

Changelog

Source

0.8.0-alpha.0 (2022-01-16)

This release updates to Rapier 0.12.0-alpha.0 which contains:

  • A complete rewrite of the joint and contact constraint solver.
  • The support for locking individual translation axes.
  • The support for multibody joint.

This is an alpha release because the new solver still needs some tuning, and the spherical joint motors/limits is currently not working.

Breaking changes
  • In 3D: renamed BallJoint to SphericalJoint.
  • In 2D: renamed BallJoint to RevoluteJoint.
  • Remove the joint motors and limits for the spherical joint (this is a temporary removal until with leave alpha).
  • All the joint-related structures and methods (RevoluteJoint, PrismaticJoint, createJoint, etc.) have renamed to include impulse in the names: RevoluteImpulseJoint, PrismaticImpulseJoint, createImpulseJoint, etc. This is to differentiate them from the new multibody joints.
  • Remove from the integration parameters all the parameters that are no longer meaningful (maxPositionIterations, jointErp, warmstartCoeff, allowedAngularError, maxLinearCorrection, maxAngularCorrection).
Added
  • Add multibody joints. They are created the same way as impulse joints, except that they are created by world.createMultibodyJoint instead of world.createImpulseJoint.
  • Add the ability to lock individual translation axes. Use rigidBody.restrictTranslation.
Fixed
  • Fixed an issue with velocity-based kinematic bodies applying kinematic rotation improperly.
  • Fixed the second witness points and normals returned by shape-casts.
  • Fixed the second local contact normal and points returned by contact manifolds.
sebcrozet
published 0.7.6 •

Changelog

Source

0.7.6

This release updates to Rapier 0.11.1 which contains several bug fixes.

Fixed
  • Fix a bug causing large moving colliders to miss some collisions after some time.
  • Fix invalid forces generated by contacts with position-based kinematic bodies.
  • Fix a bug where two colliders without parent would not have their collision computed even if the appropriate flags were set.
sebcrozet
published 0.7.5 •

Changelog

Source

0.7.5

Fixed
  • Fixed an issue where a collider with no parent attached would not be created under some conditions.
sebcrozet
published 0.7.4 •

Changelog

Source

0.7.4

This release was broken and has been unpublished.

sebcrozet
published 0.7.3 •

Changelog

Source

0.7.3

Fixed
  • The collider.halfExtents() methods now returns a valid value for round cuboids.
sebcrozet
published 0.7.2 •

Changelog

Source

0.7.2 (rapier-compat only)

Modified
  • The rapier-compat packages don’t need the Buffer polyfill anymore.
sebcrozet
published 0.7.1 •

Changelog

Source

0.7.1

Modified
  • Update to use Rapier 0.11.0.
  • The rapier-compat packages are now generated by rollup.
sebcrozet
published 0.7.0 •

Changelog

Source

v0.7.0

The typescripts bindings for Rapier have a brand new user-guide covering all the features of the physics engine!

Breaking change

  • The World.castRay and World.castRayAndGetNormal methods have a different signature now, making them more flexible.
  • Rename ActiveHooks::FILTER_CONTACT_PAIR to ActiveHooks.FILTER_CONTACT_PAIRS.
  • Rename ActiveHooks::FILTER_INTERSECTION_PAIR to ActiveHooks.FILTER_INTERSECTION_PAIRS.
  • Rename BodyStatus to RigidBodyType.
  • Rename RigidBody.bodyStatus() to RigidBody.bodyType().
  • Rename RigidBodyDesc.setMassProperties to RigidBodyDesc.setAdditionalMassProperties.
  • Rename RigidBodyDesc.setPrincipalAngularInertia to RigidBodyDesc.setAdditionalPrincipalAngularInertia.
  • Rename ColliderDesc.setIsSensor to `ColliderDesc.setSensor.
Added
  • Add Ray.pointAt(t) that conveniently computes ray.origin + ray.dir * t.
  • Add access to joint motors by defining each joint with its own class deriving from Joint. Each joint now have its relevant motor configuration methods: configurMotorModel, configureMotorVelocity, configureMotorPosition, configureMotor.
  • Add World.collidersWithAabbIntersectingAabb for retrieving the handles of all the colliders intersecting the given AABB.
  • Add many missing methods for reading/modifying a rigid-body state after its creation:
    • RigidBody.lockTranslations
    • RigidBody.lockRotations
    • RigidBody.restrictRotations
    • RigidBody.dominanceGroup
    • RigidBody.setDominanceGroup
    • RigidBody.enableCcd
  • Add RigidBodyDesc.setDominanceGroup for setting the dominance group of the rigid-body being built.
  • Add many missing methods for reading/modifying a collider state after its creation:
    • Collider.setSendor
    • Collider.setShape
    • Collider.setRestitution
    • Collider.setFriction
    • Collider.frictionCombineRule
    • Collider.setFrictionCombineRule
    • Collider.restitutionCombineRule
    • Collider.setRestitutionCombineRule
    • Collider.setCollisionGroups
    • Collider.setSolverGroups
    • Collider.activeHooks
    • Collider.setActiveHooks
    • Collider.activeEvents
    • Collider.setActiveEvents
    • Collider.activeCollisionTypes
    • Collider.setTranslation
    • Collider.setTranslationWrtParent
    • Collider.setRotation
    • Collider.setRotationWrtParent
  • Add ColliderDesc.setMassProperties for setting explicitly the mass properties of the collider being built (instead of relying on density).
Modified
  • Colliders are no longer required to be attached to a rigid-body. Therefore, the second argument of World.createCollider is now optional.
sebcrozet
published 0.6.0 •

Changelog

Source

v0.6.0

Breaking changes
  • The BodyStatus::Kinematic variant has been replaced by BodyStatus::KinematicPositionBased and BodyStatus::KinematicVelocityBased. Position-based kinematic bodies are controlled by setting (at each frame) the next kinematic position of the rigid-body (just like before), and the velocity-based kinematic bodies are controlled by setting (at each frame) the velocity of the rigid-body.
  • The RigidBodyDesc.newKinematic has been replaced by RigidBodyDesc.newKinematicPositionBased and RigidBodyDesc.newKinematicVelocityBased in order to build a position-based or velocity-based kinematic body.
  • All contact and intersection events are now disabled by default. The can be enabled for each collider individually by setting its ActiveEvents: ColliderDesc.setActiveEvents(ActiveEvents.PROXIMITY_EVENTS | ActiveEvents.ContactEvents).
Added
  • It is now possible to read contact information from the narrow-phase using:
    • world.narrowPhase.contactsWith(collider1, callback)
    • world.narrowPhase.intersectionsWith(collider1, callback)
    • world.narrowPhase.contactPair(collider1, collider2, callback)
    • world.narrowPhase.intersectionPair(collider1, collider2, callback)
  • It is now possible to apply custom collision-detection filtering rules (more flexible than collision groups) based on a JS object by doing the following:
    • Enable physics hooks for the colliders you want the custom rules to apply to: ColliderDesc.setActiveHooks(ActiveHooks.FILTER_CONTACT_PAIR | ActiveHooks.FILTER_CONTACT_PAIR)
    • Define an object that implements the PhysicsHooks interface.
    • Pass and instance of your physics hooks object as the second argument of the World.step method.
  • It is now possible to enable collision-detection between two non-dynamic bodies (e.g. between a kinematic body and a fixed body) by setting the active collision types of a collider: ColliderDesc.setActiveCollisionTypes(ActiveCollisionTypes.ALL)
sebcrozet
published 0.5.3 •

Changelog

Source

v0.5.3

  • Fix a crash when loading the WASM file on iOS safari.
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc