Class CharacterSettingsRef

All Implemented Interfaces:
ConstCharacterBaseSettings, ConstCharacterSettings, ConstJoltPhysicsObject, AutoCloseable, Comparable<JoltPhysicsObject>

public final class CharacterSettingsRef extends Ref implements ConstCharacterSettings
A counted reference to a CharacterSettings object. (native type: Ref<CharacterSettings>)
  • Constructor Details

    • CharacterSettingsRef

      public CharacterSettingsRef()
      Instantiate an empty reference.
  • Method Details

    • setEnhancedInternalEdgeRemoval

      public void setEnhancedInternalEdgeRemoval(boolean remove)
      Alter whether to make an extra effort to remove contacts with internal edges. (native attribute: mEnhancedInternalEdgeRemoval)
      Parameters:
      remove - true to remove ghost contacts (default=false)
    • setFriction

      public void setFriction(float friction)
      Alter the friction ratio. (native attribute: mFriction)
      Parameters:
      friction - the desired ratio (typically ≥0 and ≤1, default=0.2)
    • setGravityFactor

      public void setGravityFactor(float factor)
      Alter the gravity multiplier. (native attribute: mGravityFactor)
      Parameters:
      factor - the desired multiplier (default=1)
    • setLayer

      public void setLayer(int objLayer)
      Alter the object layer to which the character will be added. (native attribute: mLayer)
      Parameters:
      objLayer - the ID of the desired object layer (≥0, <numObjectLayers, default=0)
    • setMass

      public void setMass(float mass)
      Alter the character's mass. (native attribute: mMass)
      Parameters:
      mass - the desired mass (in kilograms, default=80)
    • setMaxSlopeAngle

      public void setMaxSlopeAngle(float angle)
      Alter the maximum slope that the character can walk on. (native attribute: mMaxSlopeAngle)
      Parameters:
      angle - (in radians, default=5*Pi/18)
    • setShape

      public void setShape(ConstShape shape)
      Replace the shape. (native attribute: mShape)
      Parameters:
      shape - the desired shape (not null, unaffected, default=null)
    • setSupportingVolume

      public void setSupportingVolume(ConstPlane plane)
      Alter the supporting volume. (native attribute: mSupportingVolume)
      Parameters:
      plane - the desired plane of support (not null, unaffected, default={(0,1,0),-1e10})
    • setUp

      public void setUp(Vec3Arg direction)
      Alter the character's "up" direction. (native attribute: mUp)
      Parameters:
      direction - the desired direction (not null, unaffected, default=(0,1,0))
    • getEnhancedInternalEdgeRemoval

      public boolean getEnhancedInternalEdgeRemoval()
      Test whether to make an extra effort to remove contacts with internal edges. The settings are unaffected. (native attribute: mEnhancedInternalEdgeRemoval)
      Specified by:
      getEnhancedInternalEdgeRemoval in interface ConstCharacterBaseSettings
      Returns:
      true to remove ghost contacts, otherwise false
    • getFriction

      public float getFriction()
      Return the friction ratio. The settings are unaffected. (native attribute: mFriction)
      Specified by:
      getFriction in interface ConstCharacterSettings
      Returns:
      the ratio (typically ≥0 and ≤1)
    • getGravityFactor

      public float getGravityFactor()
      Return the gravity factor. The settings are unaffected. (native attribute: mGravityFactor)
      Specified by:
      getGravityFactor in interface ConstCharacterSettings
      Returns:
      the factor
    • getLayer

      public int getLayer()
      Return the index of the object layer. The settings are unaffected. (native attribute: mLayer)
      Specified by:
      getLayer in interface ConstCharacterSettings
      Returns:
      the layer index (≥0, <numObjectLayers)
    • getMass

      public float getMass()
      Return the character's mass. The settings are unaffected. (native attribute: mMass)
      Specified by:
      getMass in interface ConstCharacterSettings
      Returns:
      the mass (in kilograms)
    • getMaxSlopeAngle

      public float getMaxSlopeAngle()
      Return the maximum slope that the character can walk on. The settings are unaffected. (native attribute: mMaxSlopeAngle)
      Specified by:
      getMaxSlopeAngle in interface ConstCharacterBaseSettings
      Returns:
      the angle (in radians)
    • getShape

      public ConstShape getShape()
      Access the Shape. (native attribute: mShape)
      Specified by:
      getShape in interface ConstCharacterBaseSettings
      Returns:
      a new JVM object with the pre-existing native object assigned, or null
    • getSupportingVolume

      public Plane getSupportingVolume()
      Copy the supporting volume. The settings are unaffected. (native attribute: mSupportingVolume)
      Specified by:
      getSupportingVolume in interface ConstCharacterBaseSettings
      Returns:
      a new object
    • getUp

      public Vec3 getUp()
      Copy the character's "up" direction. The settings are unaffected. (native attribute: mUp)
      Specified by:
      getUp in interface ConstCharacterBaseSettings
      Returns:
      a new direction vector (in system coordinates)
    • getPtr

      public CharacterSettings getPtr()
      Temporarily access the referenced CharacterSettings.
      Specified by:
      getPtr in class Ref
      Returns:
      a new JVM object with the pre-existing native object assigned
    • targetVa

      public long targetVa()
      Return the address of the native CharacterSettings. No objects are affected.
      Specified by:
      targetVa in interface ConstJoltPhysicsObject
      Overrides:
      targetVa in class JoltPhysicsObject
      Returns:
      a virtual address (not zero)
    • toRef

      public CharacterSettingsRef toRef()
      Create another counted reference to the native CharacterSettings.
      Specified by:
      toRef in class Ref
      Returns:
      a new JVM object with a new native object assigned