Navigation
API > API/Runtime > API/Runtime/Engine
| Name | UParticleModuleLocationBoneSocket |
| Type | class |
| Header File | /Engine/Source/Runtime/Engine/Classes/Particles/Location/ParticleModuleLocationBoneSocket.h |
| Include Path | #include "Particles/Location/ParticleModuleLocationBoneSocket.h" |
Syntax
UCLASS (EditInlineNew, HideCategories=Object, Meta=(DisplayName="Bone/Socket Location"),
MinimalAPI)
class UParticleModuleLocationBoneSocket : public UParticleModuleLocationBase
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UParticleModule → UParticleModuleLocationBase → UParticleModuleLocationBoneSocket
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
UParticleModuleLocationBoneSocket
(
const FObjectInitializer& ObjectInitializer |
Particles/Location/ParticleModuleLocationBoneSocket.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bInheritBoneVelocity | uint32 | If true, particles inherit the associated bone velocity when spawned | Particles/Location/ParticleModuleLocationBoneSocket.h |
|
| bOrientMeshEmitters | uint32 | If true, rotate mesh emitter meshes to orient w/ the socket. Currently does nothing. | Particles/Location/ParticleModuleLocationBoneSocket.h | |
| bUpdatePositionEachFrame | uint32 | If true, update the particle locations each frame with that of the bone/socket | Particles/Location/ParticleModuleLocationBoneSocket.h |
|
| EditorSkelMesh | TObjectPtr< class USkeletalMesh > | The name of the skeletal mesh to use in the editor | Particles/Location/ParticleModuleLocationBoneSocket.h |
|
| InheritVelocityScale | float | A scale on how much of the bone's velocity a particle will inherit. | Particles/Location/ParticleModuleLocationBoneSocket.h |
|
| NumPreSelectedIndices | int32 | When we have no source locations and we need to track bone velocities due to bInheritBoneVelocity, we pre select a set of bones to use each frame. | Particles/Location/ParticleModuleLocationBoneSocket.h |
|
| SelectionMethod | TEnumAsByte< enum ELocationBoneSocketSelectionMethod > | The method by which to select the bone/socket to spawn at. | Particles/Location/ParticleModuleLocationBoneSocket.h |
|
| SkelMeshActorParamName | FName | The parameter name of the skeletal mesh actor that supplies the SkelMeshComponent for in-game. | Particles/Location/ParticleModuleLocationBoneSocket.h |
|
| SourceIndexMode | EBoneSocketSourceIndexMode | How particle SourceIndex should be interpreted. | Particles/Location/ParticleModuleLocationBoneSocket.h | |
| SourceLocations | TArray< struct FLocationBoneSocketInfo > | The name(s) of the bone/socket(s) to position at. | Particles/Location/ParticleModuleLocationBoneSocket.h |
|
| SourceType | TEnumAsByte< enum ELocationBoneSocketSource > | Whether the module uses Bones or Sockets for locations. | Particles/Location/ParticleModuleLocationBoneSocket.h |
|
| UniversalOffset | FVector | An offset to apply to each bone/socket | Particles/Location/ParticleModuleLocationBoneSocket.h |
|
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool GetBoneInfoForSourceIndex
(
FModuleLocationBoneSocketInstancePayload* InstancePayload, |
Particles/Location/ParticleModuleLocationBoneSocket.h | ||
int32 GetMaxSourceIndex
(
FModuleLocationBoneSocketInstancePayload* Payload, |
Particles/Location/ParticleModuleLocationBoneSocket.h | ||
bool GetParticleLocation
(
FModuleLocationBoneSocketInstancePayload* InstancePayload, |
Retrieve the position for the given socket index. | Particles/Location/ParticleModuleLocationBoneSocket.h | |
void GetSkeletalMeshComponentSource
(
const FContext& Context, |
Retrieve the skeletal mesh component source to use for the current emitter instance. | Particles/Location/ParticleModuleLocationBoneSocket.h | |
bool GetSocketInfoForSourceIndex
(
FModuleLocationBoneSocketInstancePayload* InstancePayload, |
Particles/Location/ParticleModuleLocationBoneSocket.h | ||
bool InheritingBoneVelocity() |
If we're updating our position each frame, there's no point in inheriting bone velocity. | Particles/Location/ParticleModuleLocationBoneSocket.h | |
void RegeneratePreSelectedIndices
(
FModuleLocationBoneSocketInstancePayload* InstancePayload, |
Particles/Location/ParticleModuleLocationBoneSocket.h | ||
int32 SelectNextSpawnIndex
(
FModuleLocationBoneSocketInstancePayload* InstancePayload, |
Selects the next socket or bone index to spawn from. | Particles/Location/ParticleModuleLocationBoneSocket.h | |
void SetSourceIndexMode() |
Particles/Location/ParticleModuleLocationBoneSocket.h | ||
void UpdatePrevBoneLocationsAndVelocities
(
FModuleLocationBoneSocketInstancePayload* InstancePayload, |
Particles/Location/ParticleModuleLocationBoneSocket.h |
Overridden from UParticleModule
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void AutoPopulateInstanceProperties
(
UParticleSystemComponent* PSysComp |
Helper function used by the editor to auto-populate a placed AEmitter with any instance parameters that are utilized. | Particles/Location/ParticleModuleLocationBoneSocket.h | |
virtual bool CanTickInAnyThread() |
Return false if this emitter requires a game thread tick | Particles/Location/ParticleModuleLocationBoneSocket.h | |
virtual void FinalUpdate
(
const FUpdateContext& Context |
Called on an emitter when all other update operations have taken place INCLUDING bounding box cacluations! | Particles/Location/ParticleModuleLocationBoneSocket.h | |
virtual bool GetCustomMenuEntryDisplayString
(
int32 InEntryIndex, |
Get the display name of the custom menu entry. | Particles/Location/ParticleModuleLocationBoneSocket.h | |
virtual int32 GetNumberOfCustomMenuOptions () |
Custom Cascade module menu entries support Get the number of custom entries this module has. | Particles/Location/ParticleModuleLocationBoneSocket.h | |
virtual bool PerformCustomMenuEntry
(
int32 InEntryIndex |
Perform the custom menu entry option. | Particles/Location/ParticleModuleLocationBoneSocket.h | |
virtual uint32 PrepPerInstanceBlock
(
FParticleEmitterInstance* Owner, |
Allows the module to prep its 'per-instance' data block. | Particles/Location/ParticleModuleLocationBoneSocket.h | |
virtual uint32 RequiredBytes
(
UParticleModuleTypeDataBase* TypeData |
Returns the number of bytes that the module requires in the particle payload block. | Particles/Location/ParticleModuleLocationBoneSocket.h | |
virtual uint32 RequiredBytesPerInstance() |
Returns the number of bytes the module requires in the emitters 'per-instance' data block. | Particles/Location/ParticleModuleLocationBoneSocket.h | |
virtual void Spawn
(
const FSpawnContext& Context |
Particles/Location/ParticleModuleLocationBoneSocket.h | ||
virtual bool TouchesMeshRotation() |
Return true if this module impacts rotation of Mesh emitters | Particles/Location/ParticleModuleLocationBoneSocket.h | |
virtual void Update
(
const FUpdateContext& Context |
Particles/Location/ParticleModuleLocationBoneSocket.h |
Overridden from UObject
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void PostEditChangeProperty
(
FPropertyChangedEvent& PropertyChangedEvent |
Particles/Location/ParticleModuleLocationBoneSocket.h | ||
virtual void PostLoad() |
Particles/Location/ParticleModuleLocationBoneSocket.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static void ValidateLODLevels
(
UParticleEmitter* Emitter, |
Validate that all LOD levels will not have issues with indexing into SourceLocations | Particles/Location/ParticleModuleLocationBoneSocket.h |