FNDIHairStrandsData

Data stored per strand base instance

Windows
MacOS
Linux

References

Module

HairStrandsCore

Header

/Engine/Plugins/Runtime/HairStrands/Source/HairStrandsCore/Public/Niagara/NiagaraDataInterfaceHairStrands.h

Include

#include "Niagara/NiagaraDataInterfaceHairStrands.h"

Syntax

struct FNDIHairStrandsData

Remarks

Data stored per strand base instance

Variables

Name Description

Public variable

float

 

AirDrag

Coefficient between 0 and 1 to be used for the air drag

Public variable

FVector

 

AirVelocity

Velocity of the surrounding air in cm/s

Public variable

float

 

BendDamping

Damping for the bend constraint between 0 and 1

Public variable

float

 

BendStiffness

Stiffness for the bend constraint in GPa

Public variable

float

 

CollisionRadius

Radius scale along the strand

Public variable

bool

 

ForceReset

Force reset simulation

Public variable

bool

 

GlobalInterpolation

Global Interpolation

Public variable

FVector

 

GravityVector

Acceleration vector in cm/s2 to be used for the gravity

Public variable

FIntVector

 

GridDimension

Grid Dimension used to compute the viscosity forces

Public variable

FNDIHairStrands...

 

HairStrandsBuffer

Strands Gpu buffer

Public variable

int32

 

IterationCount

Number of iterations for the constraint solver

Public variable

float

 

KineticFriction

Kinetic friction used for collision against the physics asset

Public variable

int32

 

NumStrands

Number of strands

Public variable

TStaticArray< f...

 

ParamsScale

Scales along the strand

Public variable

bool

 

ProjectBend

Enable the solve of the bend constraint during the xpbd loop

Public variable

bool

 

ProjectCollision

Enable ther projection of the collision constraint after the xpbd loop

Public variable

bool

 

ProjectStretch

Enable the projection of the stretch constraint after the xpbd loop

Public variable

uint32

 

SkeletalMeshes

List of all the skel meshes in the hierarchy

Public variable

bool

 

SolveBend

Velocity of the surrounding air in cm/s

Public variable

bool

 

SolveCollision

Enable the solve of the collision constraint during the xpbd loop

Public variable

bool

 

SolveStretch

Enable the solve of the stretch constraint during the xpbd loop

Public variable

float

 

StaticFriction

Static friction used for collision against the physics asset

Public variable

float

 

StrandsDensity

Density of the strands in g/cm3

Public variable

int32

 

StrandsSize

Strand size

Public variable

float

 

StrandsSmoothing

Smoothing between 0 and 1 of the incoming guides curves for better stability

Public variable

float

 

StrandsThickness

Strands thickness in cm that will be used for mass and inertia computation

Public variable

float

 

StrandsViscosity

Radius that will be used for the collision detection against the physics asset

Public variable

float

 

StretchDamping

Damping for the stretch constraint between 0 and 1

Public variable

float

 

StretchStiffness

Stiffness for the stretch constraint in GPa

Public variable

int32

 

SubSteps

Number of substeps to be used

Public variable

int32

 

TickCount

Tick Count

Public variable

ETickingGroup

 

TickingGroup

The instance ticking group

Public variable

FTransform

 

WorldTransform

Cached World transform.

Constructors

Name Description

Public function

FNDIHairStrandsData()

Functions

Name Description

Public function

void

 

CopyDatas

(
    const FNDIHairStrandsData* Oth...
)

Public function

bool

 

Init

(
    UNiagaraDataInterfaceHairStrands&#...,
    FNiagaraSystemInstance* System...
)

Initialize the buffers

Public function

void

 

Release()

Release the buffers

Public function

void

 

ResetDatas()

Public function

void

 

Update

(
    UNiagaraDataInterfaceHairStrands&#...,
    FNiagaraSystemInstance* System...,
    const FHairStrandsDatas* HairS...,
    UGroomAsset* GroomAsset,
    const int32 GroupIndex,
    const FTransform& LocalToWorld
)

Update the buffers

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