UParticleModuleLocationSkelVertSurface

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

Engine

Header

/Engine/Source/Runtime/Engine/Classes/Particles/Location/ParticleModuleLocationSkelVertSurface.h

Include

#include "Particles/Location/ParticleModuleLocationSkelVertSurface.h"

Syntax

class UParticleModuleLocationSkelVertSurface : public UParticleModuleLocationBase

Variables

Name Description

Public variable

uint32: 1

 

bEnforceNormalCheck

When true use the RestrictToNormal and NormalTolerance values to check surface normals

Public variable

uint32: 1

 

bInheritBoneVelocity

If true, particles inherit the associated bone velocity when spawned

Public variable

uint32: 1

 

bInheritUV

If true, particles inherit the associated UV data on spawn.

Public variable

uint32: 1

 

bInheritVertexColor

If true, particles inherit the associated vertex color on spawn.

Public variable

uint32: 1

 

bOrientMeshEmitters

If true, rotate mesh emitter meshes to orient w/ the vert/surface

Public variable

uint32: 1

 

bUpdatePositionEachFrame

If true, update the particle locations each frame with that of the vert/surface

Public variable

USkeletalMesh &...

 

EditorSkelMesh

The name of the skeletal mesh to use in the editor

Public variable

uint32

 

InheritUVChannel

UV channel to inherit from the spawn mesh, internally clamped to those available.

Public variable

float

 

InheritVelocityScale

A scale on how much of the bone's velocity a particle will inherit.

Public variable

float

 

NormalCheckTolerance

Normal tolerance.

Public variable

float

 

NormalCheckToleranceDegrees

Normal tolerance. 0 degrees means it must be an exact match, 180 degrees means it can be any angle.

Public variable

FVector

 

NormalToCompare

Use this normal to restrict spawning locations

Public variable

FName

 

SkelMeshActorParamName

The parameter name of the skeletal mesh actor that supplies the SkelMeshComponent for in-game.

Public variable

TEnumAsByte< en...

 

SourceType

Whether the module uses Verts or Surfaces for locations.

Public variable

FVector

 

UniversalOffset

An offset to apply to each vert/surface

Public variable

TArray< FName >

 

ValidAssociatedBones

This module will only spawn from verts or surfaces associated with the bones in this list

Public variable

TArray< int32 >

 

ValidMaterialIndices

Array of material indices that are valid materials to spawn from.

Constructors

Name Description

Public function

UParticleModuleLocationSkelVertSurface

(
    const FObjectInitializer& ObjectIn...
)

Functions

Name Description

Public function

bool

 

GetParticleLocation

(
    FParticleEmitterInstance* Owne...,
    FModuleLocationVertSurfaceInstanceP...,
    USkeletalMeshComponent* InSkel...,
    int32 InPrimaryVertexIndex,
    FVector& OutPosition,
    FQuat& OutRotation,
    bool bSpawning
)

Retrieve the position for the given socket index.

Public function

void

 

GetSkeletalMeshComponentSource

Retrieve the skeletal mesh component source to use for the current emitter instance.

Public function

void

 

UpdateBoneIndicesList

(
    FParticleEmitterInstance* Owne...
)

Updates the indices list with the bone index for each named bone in the editor exposed values.

Public function

bool

 

VertInfluencedByActiveBone

(
    FParticleEmitterInstance* Owne...,
    FModuleLocationVertSurfaceInstanceP...,
    USkeletalMeshComponent* InSkel...,
    int32 InVertexIndex,
    int32* OutBoneIndex
)

Check to see if the vert is influenced by a bone on our approved list.

Overridden from UParticleModule

Name Description

Public function Virtual

void

 

AutoPopulateInstanceProperties

(
    UParticleSystemComponent* PSys...
)

Helper function used by the editor to auto-populate a placed AEmitter with any instance parameters that are utilized.

Public function Virtual

bool

 

CanTickInAnyThread()

Return false if this emitter requires a game thread tick

Public function Virtual

void

 

FinalUpdate

(
    FParticleEmitterInstance* Owne...,
    int32 Offset,
    float DeltaTime
)

Called on an emitter when all other update operations have taken place INCLUDING bounding box cacluations!

Public function Virtual Const

bool

 

GetCustomMenuEntryDisplayString

(
    int32 InEntryIndex,
    FString& OutDisplayString
)

Get the display name of the custom menu entry.

Public function Virtual Const

int32

 

GetNumberOfCustomMenuOptions()

Custom Cascade module menu entries support Get the number of custom entries this module has.

Public function Virtual

bool

 

IsValidForLODLevel

(
    UParticleLODLevel* LODLevel,
    FString& OutErrorString
)

Returns true if the module is valid for the provided LOD level.

Public function Virtual

bool

 

PerformCustomMenuEntry

(
    int32 InEntryIndex
)

Perform the custom menu entry option.

Public function Virtual

uint32

 

PrepPerInstanceBlock

(
    FParticleEmitterInstance* Owne...,
    void* InstData
)

Allows the module to prep its 'per-instance' data block.

Public function Virtual

uint32

 

RequiredBytes

(
    UParticleModuleTypeDataBase* T...
)

Returns the number of bytes that the module requires in the particle payload block.

Public function Virtual

uint32

 

RequiredBytesPerInstance()

Returns the number of bytes the module requires in the emitters 'per-instance' data block.

Public function Virtual

void

 

Spawn

(
    FParticleEmitterInstance* Owne...,
    int32 Offset,
    float SpawnTime,
    FBaseParticle* ParticleBase
)

Called on a particle that is freshly spawned by the emitter.

Public function Virtual Const

bool

 

TouchesMeshRotation()

Return true if this module impacts rotation of Mesh emitters

Public function Virtual

void

 

Update

(
    FParticleEmitterInstance* Owne...,
    int32 Offset,
    float DeltaTime
)

Called on a particle that is being updated by its emitter.

Overridden from UObject

Name Description

Public function Virtual

void

 

PostEditChangeProperty

(
    FPropertyChangedEvent& PropertyCha...
)

Called when a property on this object has been modified externally

Public function Virtual

void

 

PostLoad()

Do any object-specific cleanup required immediately after loading an object.

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss