Navigation
API > API/Plugins > API/Plugins/Niagara
References
| Module | Niagara |
| Header | /Engine/Plugins/FX/Niagara/Source/Niagara/Classes/NiagaraDataInterfaceSkeletalMesh.h |
| Include | #include "NiagaraDataInterfaceSkeletalMesh.h" |
Syntax
struct FNDISkeletalMesh_InstanceData
Variables
| Type | Name | Description | |
|---|---|---|---|
| bool | bAllowCPUMeshDataAccess | Flag to stub VM functions that rely on mesh data being accessible on the CPU | |
| uint32: 1 | bComponentValid | True if SceneComponent was valid on initialization (used to track invalidation of the component on tick) | |
| uint32: 1 | bIsGpuUniformlyDistributedSampling | True if the mesh we're using allows area weighted sampling on GPU. | |
| uint32: 1 | bMeshValid | True if StaticMesh was valid on initialization (used to track invalidation of the mesh on tick) | |
| bool | bResetOnLODStreamedIn | Whether to reset the emitter if any LOD get streamed in. | |
| uint32: 1 | bUnlimitedBoneInfluences | True if the mesh we're using is to be rendered in unlimited bone influences mode. | |
| TWeakObjectPtr< USceneComponent > | CachedAttachParent | Always reset the DI when the attach parent changes. | |
| TRefCountPtr< const FSkeletalMeshLODRenderData > | CachedLODData | The referenced LOD data, used to prevent streaming out LODs while they are being referenced | |
| int32 | CachedLODIdx | The cached LODIdx used to initialize the FNDIStaticMesh_InstanceData. | |
| UObject * | CachedUserParam | ||
| uint32 | ChangeId | ||
| FSkeletalMeshConnectivityHandle | Connectivity | Handle to connectivity data. | |
| float | DeltaSeconds | Time separating Transform and PrevTransform. | |
| int32 | ExcludedBoneIndex | Excluded bone for some specific functions, generally the root bone which you don't want to include when picking a random bone. | |
| TArray< uint16 > | FilteredAndUnfilteredBones | Indices of the bones filtered by the user followed by the unfiltered bones, if this array is empty no filtering is in effect. | |
| int32 | FilteredSocketBoneOffset | Bone index of the first socket, sockets are appended to the end of the bone array | |
| TArray< FCachedSocketInfo > | FilteredSocketInfo | ||
| TStaticArray< TArray< FTransform3f >, 2 > | FilteredSocketTransforms | Transforms for sockets. | |
| uint32 | FilteredSocketTransformsIndex | Index into which socket transforms to use. | |
| FSkeletalMeshGpuDynamicBufferProxy * | MeshGpuSpawnDynamicBuffers | ||
| FSkeletalMeshGpuSpawnStaticBuffers * | MeshGpuSpawnStaticBuffers | Extra mesh data upload to GPU. | |
| const FSkinWeightDataVertexBuffer * | MeshSkinWeightBuffer | ||
| uint32 | MeshSkinWeightIndexSizeByte | ||
| const FSkinWeightLookupVertexBuffer * | MeshSkinWeightLookupBuffer | ||
| uint32 | MeshWeightStrideByte | ||
| int32 | NumFilteredBones | Number of filtered bones in the array. | |
| int32 | NumUnfilteredBones | Number of unfiltered bones in the array. | |
| FVector3f | PreSkinnedLocalBoundsCenter | Preskinned local bounds pulled from attached skeletal mesh | |
| FVector3f | PreSkinnedLocalBoundsExtents | ||
| FMatrix | PrevTransform | Cached ComponentToWorld from previous tick. | |
| FSkeletalMeshSamplingRegionAreaWeightedSampler | SamplingRegionAreaWeightedSampler | Additional sampler for if we need to do area weighting sampling across multiple area weighted regions. | |
| TArray< int32 > | SamplingRegionIndices | Indices of all valid Sampling regions on the mesh to sample from. | |
| TWeakObjectPtr< USceneComponent > | SceneComponent | Cached ptr to SkeletalMeshComponent we sample from, when found. | |
| TWeakObjectPtr< USkeletalMesh > | SkeletalMesh | ||
| FSkeletalMeshSkinningDataHandle | SkinningData | Handle to our skinning data. | |
| FMatrix | Transform | Cached ComponentToWorld of the mesh (falls back to WorldTransform of the system instance). | |
| FMatrix | TransformInverseTransposed | InverseTranspose of above for transforming normals/tangents. | |
| FNiagaraParameterDirectBinding< UObject * > | UserParamBinding | A binding to the user ptr we're reading the mesh from (if we are). | |
| FSkeletalMeshUvMappingHandle | UvMapping | Handle to our uv mapping data. |
Functions
| Type | Name | Description | |
|---|---|---|---|
| const TArray< FTransform3f > & | |||
| const TArray< FTransform3f > & | |||
| TArray< FTransform3f > & | |||
| int32 | GetLODIndex () |
||
| const FSkinWeightVertexBuffer * | |||
| bool | HasColorData () |
||
| bool | Init
(
UNiagaraDataInterfaceSkeletalMesh* Interface, |
||
| void | Release () |
||
| bool | ResetRequired
(
UNiagaraDataInterfaceSkeletalMesh* Interface, |
||
| bool | Tick
(
UNiagaraDataInterfaceSkeletalMesh* Interface, |
||
| void |
Classes
| Type | Name | Description | |
|---|---|---|---|
| FCachedSocketInfo | Name of all the sockets we use. |