Package physx.physics

Enum Class PxMaterialFlagEnum

java.lang.Object
java.lang.Enum<PxMaterialFlagEnum>
physx.physics.PxMaterialFlagEnum
All Implemented Interfaces:
Serializable, Comparable<PxMaterialFlagEnum>, Constable

public enum PxMaterialFlagEnum extends Enum<PxMaterialFlagEnum>
Flags which control the behavior of a material.

See also: PxMaterial

  • Enum Constant Details

    • eDISABLE_FRICTION

      public static final PxMaterialFlagEnum eDISABLE_FRICTION
      If this flag is set, friction computations are always skipped between shapes with this material and any other shape.
    • eDISABLE_STRONG_FRICTION

      public static final PxMaterialFlagEnum eDISABLE_STRONG_FRICTION
      Whether to use strong friction. The difference between "normal" and "strong" friction is that the strong friction feature remembers the "friction error" between simulation steps. The friction is a force trying to hold objects in place (or slow them down) and this is handled in the solver. But since the solver is only an approximation, the result of the friction calculation can include a small "error" - e.g. a box resting on a slope should not move at all if the static friction is in action, but could slowly glide down the slope because of a small friction error in each simulation step. The strong friction counter-acts this by remembering the small error and taking it to account during the next simulation step.

      However, in some cases the strong friction could cause problems, and this is why it is possible to disable the strong friction feature by setting this flag. One example is raycast vehicles that are sliding fast across the surface, but still need a precise steering behavior. It may be a good idea to reenable the strong friction when objects are coming to a rest, to prevent them from slowly creeping down inclines.

      Note: This flag only has an effect if the PxMaterialFlag::eDISABLE_FRICTION bit is 0.

    • eCOMPLIANT_ACCELERATION_SPRING

      public static final PxMaterialFlagEnum eCOMPLIANT_ACCELERATION_SPRING
      If this flag is raised in combination with negative restitution, the computed spring-damper output will be interpreted as acceleration instead of force targets, analog to acceleration spring constraints. The flag has no effect for non-compliant contacts (i.e., if restitution is nonnegative). In an interaction between a compliant-force and a compliant-acceleration body the latter will dominate. See also: PxMaterial.setRestitution, PxMaterial.setDamping See also: Px1DConstraintFlag.eACCELERATION_SPRING
  • Field Details

    • value

      public final int value
  • Method Details

    • values

      public static PxMaterialFlagEnum[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static PxMaterialFlagEnum valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • forValue

      public static PxMaterialFlagEnum forValue(int value)