Package physx.physics

Class PxConstraintConnector

java.lang.Object
physx.NativeObject
physx.physics.PxConstraintConnector
Direct Known Subclasses:
PxVehicleConstraintConnector

public class PxConstraintConnector extends NativeObject
This class connects a custom constraint to the SDK

This class connects a custom constraint to the SDK, and functions are called by the SDK to query the custom implementation for specific information to pass on to the application or inform the constraint when the application makes calls into the SDK which will update the custom constraint's internal implementation

  • Field Details

    • SIZEOF

      public static final int SIZEOF
    • ALIGNOF

      public static final int ALIGNOF
      See Also:
  • Constructor Details

    • PxConstraintConnector

      protected PxConstraintConnector()
    • PxConstraintConnector

      protected PxConstraintConnector(long address)
  • Method Details

    • wrapPointer

      public static PxConstraintConnector wrapPointer(long address)
    • arrayGet

      public static PxConstraintConnector arrayGet(long baseAddress, int index)
    • destroy

      public void destroy()
    • prepareData

      public void prepareData()
      Pre-simulation data preparation when the constraint is marked dirty, this function is called at the start of the simulation step for the SDK to copy the constraint data block.
    • updateOmniPvdProperties

      public void updateOmniPvdProperties()
      this function is called by the SDK to update OmniPVD's view of it
    • onConstraintRelease

      public void onConstraintRelease()
      Constraint release callback

      When the SDK deletes a PxConstraint object this function is called by the SDK. In general custom constraints should not be deleted directly by applications: rather, the constraint should respond to a release() request by calling PxConstraint::release(), then wait for this call to release its own resources.

      This function is also called when a PxConstraint object is deleted on cleanup due to destruction of the PxPhysics object.

    • onComShift

      public void onComShift(int actor)
      Center-of-mass shift callback

      This function is called by the SDK when the CoM of one of the actors is moved. Since the API specifies constraint positions relative to actors, and the constraint shader functions are supplied with coordinates relative to bodies, some synchronization is usually required when the application moves an object's center of mass.

    • onOriginShift

      public void onOriginShift(PxVec3 shift)
      Origin shift callback

      This function is called by the SDK when the scene origin gets shifted and allows to adjust custom data which contains world space transforms.

      Note: If the adjustments affect constraint shader data, it is necessary to call PxConstraint::markDirty() to make sure that the data gets synced at the beginning of the next simulation step.

      Parameters:
      shift - Translation vector the origin is shifted by.
      See Also:
    • getSerializable

      public PxBase getSerializable()
      Obtain a reference to a PxBase interface if the constraint has one.

      If the constraint does not implement the PxBase interface, it should return NULL.

    • getPrep

      public PxConstraintSolverPrep getPrep()
      Obtain the shader function pointer used to prep rows for this constraint
    • getConstantBlock

      public void getConstantBlock()
      Obtain the pointer to the constraint's constant data
    • connectToConstraint

      public void connectToConstraint(PxConstraint constraint)
      Let the connector know it has been connected to a constraint.