TGeometryParticle

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

Chaos

Header

/Engine/Source/Runtime/Experimental/Chaos/Public/Chaos/ISpatialAcceleration.h

Include

#include "Chaos/ISpatialAcceleration.h"

Syntax

template<typename T, int d>
class TGeometryParticle

Variables

Name Description

Public variable

friend

 

FData

Protected variable

FParticleDirtyF ...

 

MDirtyFlags

Public variable

IPhysicsProxyBa ...

 

Proxy

Pointer to any data that the solver wants to associate with this particle TODO: It's important to eventually hide this! Right now it's exposed to lubricate the creation of the whole proxy system.

Protected variable

EParticleType

 

Type

Constructors

Name Description

Protected function

TGeometryParticle

(
    const TGeometryParticleParameters < ...
)

Public function

TGeometryParticle

(
    const TGeometryParticle &
)

Destructors

Name Description

Public function Virtual

~TGeometryParticle()

Functions

Name Description

Public function

TKinematicGe ...

 

CastToKinematicParticle()

Public function Const

const TKinem ...

 

CastToKinematicParticle()

Public function

TPBDRigidPar ...

 

CastToRigidParticle()

Public function Const

const TPBDRi ...

 

CastToRigidParticle()

Public function

void

 

ClearDirtyFlags()

Public function Static

TUniquePtr < ...

 

CreateParticle

(
    const TGeometryParticleParameters < ...
)

Public function Const

const FParti ...

 

DirtyFlags()

Public function Const

TSerializabl ...

 

Geometry()

Public function Const

TSharedPtr < ...

 

GeometrySharedLowLevel()

Ryan: FGeometryCollectionPhysicsProxy needs access to GeometrySharedLowLevel() , as it needs access for the same reason as ParticleData.

Public function Const

const TPerSh ...

 

GetImplicitShape

(
    const FImplicitObject * InImpli...
)

Public function Const

TGeometryPar ...

 

Handle()

Public function Const

bool

 

IsDirty

(
    const EParticleFlags CheckBits
)

Public function Const

bool

 

IsDirty()

Public function Virtual Const

bool

 

IsParticleValid()

Protected function

void

 

MapImplicitShapes()

Public function

void

 

MarkClean

(
    const EParticleFlags CleanBits
)

Protected function

void

 

MarkDirty

(
    const EParticleFlags DirtyBits,
    bool bInvalidate
)

Protected function

void

 

MarkDirty

(
    const EParticleFlags DirtyBits,
    bool bInvalidate
)

Protected function

void

 

MarkDirty

(
    const EParticleFlags DirtyBits,
    bool bInvalidate
)

Public function

void

 

MarkShapeSimDataDirty()

TODO: This is an awful side effect of housing the dirty flag for shape data inside the particle, but not setting the shape data through it.

Public function Const

FParticleDat ...

 

NewData()

Public function Const

EObjectState ...

 

ObjectState()

Public function Const

EParticleTyp ...

 

ObjectType()

Public function Const

const TRotat ...

 

R()

Public function Static

TGeometryPar ...

 

SerializationFactory

(
    FChaosArchive & Ar,
    TGeometryParticle < T, d >* Ser...
)

Public function Virtual

void

 

Serialize

(
    FChaosArchive & Ar
)

Public function

void

 

SetGeometry

(
    TSharedPtr < FImplicitObject , ESPMod ...
)

TODO: Right now this method exists so we can do things like FPhysTestSerializer::CreateChaosData.

Public function

void

 

SetGeometry

Public function

void

 

SetGeometry

(
    TUniquePtr < FImplicitObject >&& Un...
)

Todo: geometry should not be owned by particle

Public function

void

 

SetIgnoreAnalyticCollisions

(
    bool bIgnoreAnalyticCollisions
)

Public function

void

 

SetIgnoreAnalyticCollisionsImp

(
    FImplicitObject * Implicit,
    bool bIgnoreAnalyticCollisions
)

Public function

void

 

SetObjectState

(
    const EObjectStateType InState,
    bool bAllowEvents
)

Public function

void

 

SetR

(
    const TRotation < T, d >& InR,
    bool bInvalidate
)

Public function

void

 

SetShapeCollisionDisable

(
    int32 InShapeIndex,
    bool bInDisable
)

Public function

void

 

SetShapeCollisionTraceType

(
    int32 InShapeIndex,
    EChaosCollisionTraceFlag TraceType
)

Public function

void

 

SetShapesArray

(
    TShapesArray < T, d >&& InShapesArr...
)

Note: this must be called after setting geometry. This API seems bad. Should probably be part of setting geometry.

Public function

void

 

SetShapeSimData

(
    int32 InShapeIndex,
    const FCollisionFilterData & SimDat...
)

Public function

void

 

SetSpatialIdx

(
    FSpatialAccelerationIdx Idx
)

Public function

void

 

SetUniqueIdx

(
    const FUniqueIdx UniqueIdx,
    bool bInvalidate
)

Public function

void

 

SetUserData

(
    void * InUserData
)

Public function

void

 

SetX

(
    const TVector < T, d >& InX,
    bool bInvalidate
)

Public function Const

const TShape ...

 

ShapesArray()

Public function Const

FSpatialAcce ...

 

SpatialIdx()

Public function Const

FUniqueIdx

 

UniqueIdx()

Public function

void

 

UpdateShapeBounds()

Protected function

void

 

UpdateShapesArray()

Public function Const

void *

 

UserData()

Public function Const

const TVecto ...

 

X()

Operators

Name Description

Public function

TGeometryPar ...

 

operator=

(
    const TGeometryParticle &
)

Typedefs

Name

Description

FData

FHandle

Constants

Name

Description

AlwaysSerializable

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback