All Classes Files Functions Variables Pages
PhysxSchemaPhysxParticleSystem Class Reference

WARNING: This is a draft API; the design is not fixed and may change in the future. More...

Inherits UsdGeomGprim.

Public Member Functions

 PhysxSchemaPhysxParticleSystem (const UsdPrim &prim=UsdPrim())
 Construct a PhysxSchemaPhysxParticleSystem on UsdPrim prim . More...
 
 PhysxSchemaPhysxParticleSystem (const UsdSchemaBase &schemaObj)
 Construct a PhysxSchemaPhysxParticleSystem on the prim held by schemaObj . More...
 
virtual PHYSXSCHEMA_API ~PhysxSchemaPhysxParticleSystem ()
 Destructor. More...
 
PHYSXSCHEMA_API UsdAttribute GetParticleSystemEnabledAttr () const
 Enable or disable the particle system. More...
 
PHYSXSCHEMA_API UsdAttribute CreateParticleSystemEnabledAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetParticleSystemEnabledAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetContactOffsetAttr () const
 Contact offset used for collisions with non-particle objects such as rigid or deformable bodies. More...
 
PHYSXSCHEMA_API UsdAttribute CreateContactOffsetAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetContactOffsetAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetRestOffsetAttr () const
 Rest offset used for collisions with non-particle objects such as rigid or deformable bodies. More...
 
PHYSXSCHEMA_API UsdAttribute CreateRestOffsetAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetRestOffsetAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetParticleContactOffsetAttr () const
 Contact offset used for interactions between particles. More...
 
PHYSXSCHEMA_API UsdAttribute CreateParticleContactOffsetAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetParticleContactOffsetAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetSolidRestOffsetAttr () const
 Rest offset used for solid-solid or solid-fluid particle interactions. More...
 
PHYSXSCHEMA_API UsdAttribute CreateSolidRestOffsetAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetSolidRestOffsetAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetFluidRestOffsetAttr () const
 Rest offset used for fluid-fluid particle interactions. More...
 
PHYSXSCHEMA_API UsdAttribute CreateFluidRestOffsetAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetFluidRestOffsetAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetEnableCCDAttr () const
 Enable continuous collision detection for particles to help avoid tunneling effects. More...
 
PHYSXSCHEMA_API UsdAttribute CreateEnableCCDAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetEnableCCDAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetSolverPositionIterationCountAttr () const
 Number of solver iterations for position. More...
 
PHYSXSCHEMA_API UsdAttribute CreateSolverPositionIterationCountAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetSolverPositionIterationCountAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetMaxDepenetrationVelocityAttr () const
 The maximum velocity permitted to be introduced by the solver to depenetrate intersecting particles. More...
 
PHYSXSCHEMA_API UsdAttribute CreateMaxDepenetrationVelocityAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetMaxDepenetrationVelocityAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetWindAttr () const
 The wind applied to the current particle system. More...
 
PHYSXSCHEMA_API UsdAttribute CreateWindAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetWindAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetMaxNeighborhoodAttr () const
 The particle neighborhood size. More...
 
PHYSXSCHEMA_API UsdAttribute CreateMaxNeighborhoodAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetMaxNeighborhoodAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetMaxVelocityAttr () const
 Maximum particle velocity. More...
 
PHYSXSCHEMA_API UsdAttribute CreateMaxVelocityAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetMaxVelocityAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetGlobalSelfCollisionEnabledAttr () const
 If True, self collisions follow particle-object-specific settings. More...
 
PHYSXSCHEMA_API UsdAttribute CreateGlobalSelfCollisionEnabledAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetGlobalSelfCollisionEnabledAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetNonParticleCollisionEnabledAttr () const
 Enable or disable particle collision with nonparticle objects for all particles in the system. More...
 
PHYSXSCHEMA_API UsdAttribute CreateNonParticleCollisionEnabledAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetNonParticleCollisionEnabledAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdRelationship GetSimulationOwnerRel () const
 Single PhysicsScene that simulates this particle system. More...
 
PHYSXSCHEMA_API UsdRelationship CreateSimulationOwnerRel () const
 See GetSimulationOwnerRel(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 

Static Public Member Functions

static PHYSXSCHEMA_API const
TfTokenVector & 
GetSchemaAttributeNames (bool includeInherited=true)
 Return a vector of names of all pre-declared attributes for this schema class and all its ancestor classes. More...
 
static PHYSXSCHEMA_API
PhysxSchemaPhysxParticleSystem 
Get (const UsdStagePtr &stage, const SdfPath &path)
 Return a PhysxSchemaPhysxParticleSystem holding the prim adhering to this schema at path on stage. More...
 
static PHYSXSCHEMA_API
PhysxSchemaPhysxParticleSystem 
Define (const UsdStagePtr &stage, const SdfPath &path)
 Attempt to ensure a UsdPrim adhering to this schema at path is defined (according to UsdPrim::IsDefined()) on this stage. More...
 

Static Public Attributes

static const UsdSchemaType schemaType = UsdSchemaType::ConcreteTyped
 Compile time constant representing what kind of schema this class is. More...
 

Protected Member Functions

PHYSXSCHEMA_API UsdSchemaType _GetSchemaType () const override
 Returns the type of schema this class belongs to. More...
 

Friends

class UsdSchemaRegistry
 

Detailed Description

WARNING: This is a draft API; the design is not fixed and may change in the future.

PhysX particle system, used to simulate fluids, cloth and inflatables. This prim allows the user to configure the solver parameters that are common to the particle objects associated with this system via their particleSystem relationship.

Definition at line 59 of file physxParticleSystem.h.

Constructor & Destructor Documentation

PhysxSchemaPhysxParticleSystem ( const UsdPrim &  prim = UsdPrim())
inlineexplicit

Construct a PhysxSchemaPhysxParticleSystem on UsdPrim prim .

Equivalent to PhysxSchemaPhysxParticleSystem::Get(prim.GetStage(), prim.GetPath()) for a valid prim, but will not immediately throw an error for an invalid prim

Definition at line 71 of file physxParticleSystem.h.

PhysxSchemaPhysxParticleSystem ( const UsdSchemaBase &  schemaObj)
inlineexplicit

Construct a PhysxSchemaPhysxParticleSystem on the prim held by schemaObj .

Should be preferred over PhysxSchemaPhysxParticleSystem(schemaObj.GetPrim()), as it preserves SchemaBase state.

Definition at line 79 of file physxParticleSystem.h.

virtual PHYSXSCHEMA_API ~PhysxSchemaPhysxParticleSystem ( )
virtual

Destructor.

Member Function Documentation

PHYSXSCHEMA_API UsdSchemaType _GetSchemaType ( ) const
overrideprotected

Returns the type of schema this class belongs to.

See Also
UsdSchemaType
PHYSXSCHEMA_API UsdAttribute CreateContactOffsetAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetContactOffsetAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.

If specified, author defaultValue as the attribute's default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

PHYSXSCHEMA_API UsdAttribute CreateEnableCCDAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetEnableCCDAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.

If specified, author defaultValue as the attribute's default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

PHYSXSCHEMA_API UsdAttribute CreateFluidRestOffsetAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetFluidRestOffsetAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.

If specified, author defaultValue as the attribute's default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

PHYSXSCHEMA_API UsdAttribute CreateGlobalSelfCollisionEnabledAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetGlobalSelfCollisionEnabledAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.

If specified, author defaultValue as the attribute's default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

PHYSXSCHEMA_API UsdAttribute CreateMaxDepenetrationVelocityAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetMaxDepenetrationVelocityAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.

If specified, author defaultValue as the attribute's default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

PHYSXSCHEMA_API UsdAttribute CreateMaxNeighborhoodAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetMaxNeighborhoodAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.

If specified, author defaultValue as the attribute's default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

PHYSXSCHEMA_API UsdAttribute CreateMaxVelocityAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetMaxVelocityAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.

If specified, author defaultValue as the attribute's default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

PHYSXSCHEMA_API UsdAttribute CreateNonParticleCollisionEnabledAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetNonParticleCollisionEnabledAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.

If specified, author defaultValue as the attribute's default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

PHYSXSCHEMA_API UsdAttribute CreateParticleContactOffsetAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetParticleContactOffsetAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.

If specified, author defaultValue as the attribute's default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

PHYSXSCHEMA_API UsdAttribute CreateParticleSystemEnabledAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetParticleSystemEnabledAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.

If specified, author defaultValue as the attribute's default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

PHYSXSCHEMA_API UsdAttribute CreateRestOffsetAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetRestOffsetAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.

If specified, author defaultValue as the attribute's default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

PHYSXSCHEMA_API UsdRelationship CreateSimulationOwnerRel ( ) const

See GetSimulationOwnerRel(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.

PHYSXSCHEMA_API UsdAttribute CreateSolidRestOffsetAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetSolidRestOffsetAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.

If specified, author defaultValue as the attribute's default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

PHYSXSCHEMA_API UsdAttribute CreateSolverPositionIterationCountAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetSolverPositionIterationCountAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.

If specified, author defaultValue as the attribute's default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

PHYSXSCHEMA_API UsdAttribute CreateWindAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetWindAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.

If specified, author defaultValue as the attribute's default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

static PHYSXSCHEMA_API PhysxSchemaPhysxParticleSystem Define ( const UsdStagePtr &  stage,
const SdfPath &  path 
)
static

Attempt to ensure a UsdPrim adhering to this schema at path is defined (according to UsdPrim::IsDefined()) on this stage.

If a prim adhering to this schema at path is already defined on this stage, return that prim. Otherwise author an SdfPrimSpec with specifier == SdfSpecifierDef and this schema's prim type name for the prim at path at the current EditTarget. Author SdfPrimSpec s with specifier == SdfSpecifierDef and empty typeName at the current EditTarget for any nonexistent, or existing but not Defined ancestors.

The given path must be an absolute prim path that does not contain any variant selections.

If it is impossible to author any of the necessary PrimSpecs, (for example, in case path cannot map to the current UsdEditTarget's namespace) issue an error and return an invalid UsdPrim.

Note that this method may return a defined prim whose typeName does not specify this schema class, in case a stronger typeName opinion overrides the opinion at the current EditTarget.

static PHYSXSCHEMA_API PhysxSchemaPhysxParticleSystem Get ( const UsdStagePtr &  stage,
const SdfPath &  path 
)
static

Return a PhysxSchemaPhysxParticleSystem holding the prim adhering to this schema at path on stage.

If no prim exists at path on stage, or if the prim at that path does not adhere to this schema, return an invalid schema object. This is shorthand for the following:

* PhysxSchemaPhysxParticleSystem(stage->GetPrimAtPath(path));
*
PHYSXSCHEMA_API UsdAttribute GetContactOffsetAttr ( ) const

Contact offset used for collisions with non-particle objects such as rigid or deformable bodies.

Must be larger than restOffset. Default value -inf results in a simulation-determined value. Range: (restOffset, inf) Units: distance

Declaration float contactOffset = -inf
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetEnableCCDAttr ( ) const

Enable continuous collision detection for particles to help avoid tunneling effects.

Declaration bool enableCCD = 0
C++ Type bool
Usd Type SdfValueTypeNames->Bool
PHYSXSCHEMA_API UsdAttribute GetFluidRestOffsetAttr ( ) const

Rest offset used for fluid-fluid particle interactions.

Must be smaller than particleContactOffset. Default value -inf results in a simulation-determined value. Range: [0, particleContactOffset) Units: distance

Declaration float fluidRestOffset = -inf
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetGlobalSelfCollisionEnabledAttr ( ) const

If True, self collisions follow particle-object-specific settings.

If False, all particle self collisions are disabled, regardless of any other settings. Improves performance if self collisions are not needed.

Declaration bool globalSelfCollisionEnabled = 1
C++ Type bool
Usd Type SdfValueTypeNames->Bool
PHYSXSCHEMA_API UsdAttribute GetMaxDepenetrationVelocityAttr ( ) const

The maximum velocity permitted to be introduced by the solver to depenetrate intersecting particles.

Range: [0, inf) Units: distance / seconds

Declaration float maxDepenetrationVelocity = inf
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetMaxNeighborhoodAttr ( ) const

The particle neighborhood size.

Declaration int maxNeighborhood = 96
C++ Type int
Usd Type SdfValueTypeNames->Int
PHYSXSCHEMA_API UsdAttribute GetMaxVelocityAttr ( ) const

Maximum particle velocity.

See also cflCoefficient in PhysxPBDMaterialAPI for limiting particle-particle relative velocity. Range: [0, inf] Units: distance / seconds

Declaration float maxVelocity = inf
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetNonParticleCollisionEnabledAttr ( ) const

Enable or disable particle collision with nonparticle objects for all particles in the system.

Improves performance if nonparticle collisions are not needed.

Declaration bool nonParticleCollisionEnabled = 1
C++ Type bool
Usd Type SdfValueTypeNames->Bool
PHYSXSCHEMA_API UsdAttribute GetParticleContactOffsetAttr ( ) const

Contact offset used for interactions between particles.

Must be larger than solid and fluid rest offsets. Range: (max(solidRestOffset, fluidRestOffset), inf) Units: distance

Declaration float particleContactOffset = 0.05
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetParticleSystemEnabledAttr ( ) const

Enable or disable the particle system.

Declaration bool particleSystemEnabled = 1
C++ Type bool
Usd Type SdfValueTypeNames->Bool
PHYSXSCHEMA_API UsdAttribute GetRestOffsetAttr ( ) const

Rest offset used for collisions with non-particle objects such as rigid or deformable bodies.

Must be smaller than contact offset. Default value -inf results in a simulation-determined value. Range: [0, contactOffset) Units: distance

Declaration float restOffset = -inf
C++ Type float
Usd Type SdfValueTypeNames->Float
static PHYSXSCHEMA_API const TfTokenVector& GetSchemaAttributeNames ( bool  includeInherited = true)
static

Return a vector of names of all pre-declared attributes for this schema class and all its ancestor classes.

Does not include attributes that may be authored by custom/extended methods of the schemas involved.

PHYSXSCHEMA_API UsdRelationship GetSimulationOwnerRel ( ) const

Single PhysicsScene that simulates this particle system.

By default, this is the first PhysicsScene found in the stage using UsdStage::Traverse().

PHYSXSCHEMA_API UsdAttribute GetSolidRestOffsetAttr ( ) const

Rest offset used for solid-solid or solid-fluid particle interactions.

Must be smaller than particleContactOffset. Default value -inf results in a simulation-determined value. Range: [0, particleContactOffset) Units: distance

Declaration float solidRestOffset = -inf
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetSolverPositionIterationCountAttr ( ) const

Number of solver iterations for position.

Range: [1, 255]

Declaration int solverPositionIterationCount = 16
C++ Type int
Usd Type SdfValueTypeNames->Int
PHYSXSCHEMA_API UsdAttribute GetWindAttr ( ) const

The wind applied to the current particle system.

Range: (-inf, inf) Units: distance / seconds

Declaration float3 wind = (0, 0, 0)
C++ Type GfVec3f
Usd Type SdfValueTypeNames->Float3

Member Data Documentation

const UsdSchemaType schemaType = UsdSchemaType::ConcreteTyped
static

Compile time constant representing what kind of schema this class is.

See Also
UsdSchemaType

Definition at line 65 of file physxParticleSystem.h.


The documentation for this class was generated from the following file: