UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FAsyncGrassBuilder Struct Reference
+ Inheritance diagram for FAsyncGrassBuilder:

Public Member Functions

 FAsyncGrassBuilder (ALandscapeProxy *Landscape, ULandscapeComponent *Component, const ULandscapeGrassType *GrassType, const FGrassVariety &GrassVariety, ERHIFeatureLevel::Type FeatureLevel, UGrassInstancedStaticMeshComponent *GrassInstancedStaticMeshComponent, int32 SqrtSubsections, int32 SubX, int32 SubY, uint32 InHaltonBaseIndex, TArray< FBox > &InExcludedBoxes)
 
void InitLandscapeLightmap (ULandscapeComponent *Component)
 
void SetInstance (int32 InstanceIndex, const FMatrix &InXForm, float RandomFraction)
 
FVector GetDefaultScale () const
 
FVector GetRandomScale (float InWeight) const
 
bool IsExcluded (const FVector &LocationWithHeight)
 
void Build ()
 
FORCEINLINE_DEBUGGABLE void SampleLandscapeAtLocationLocal (const FVector &InLocation, FVector &OutLocation, float &OutLayerWeight, FVector *OutNormal=nullptr)
 
- Public Member Functions inherited from FGrassBuilderBase
 FGrassBuilderBase (ALandscapeProxy *Landscape, ULandscapeComponent *Component, const FGrassVariety &GrassVariety, ERHIFeatureLevel::Type FeatureLevel, int32 SqrtSubsections=1, int32 SubX=0, int32 SubY=0, bool bEnableDensityScaling=true)
 

Public Attributes

FLandscapeComponentGrassAccess GrassData
 
EGrassScaling Scaling
 
FFloatInterval ScaleX
 
FFloatInterval ScaleY
 
FFloatInterval ScaleZ
 
FFloatInterval AllowedDensityRange
 
bool bWeightAttenuatesMaxScale
 
float MaxScaleWeightAttenuation
 
bool bRandomRotation
 
bool bRandomScale
 
bool bAlignToSurface
 
bool bAlignToTriangleNormals
 
float PlacementJitter
 
FRandomStream RandomStream
 
FMatrix XForm
 
FBox MeshBox
 
int32 DesiredInstancesPerLeaf
 
double BuildTime
 
int32 TotalInstances
 
uint32 HaltonBaseIndex
 
bool bUseLandscapeLightmap
 
FVector2D LightmapBaseBias
 
FVector2D LightmapBaseScale
 
FVector2D ShadowmapBaseBias
 
FVector2D ShadowmapBaseScale
 
FVector2D LightMapComponentBias
 
FVector2D LightMapComponentScale
 
bool bRequiresCPUAccess
 
TArray< FBoxExcludedBoxes
 
FStaticMeshInstanceData InstanceBuffer
 
TArray< FClusterNodeClusterTree
 
int32 OutOcclusionLayerNum
 
- Public Attributes inherited from FGrassBuilderBase
bool bHaveValidData
 
float GrassDensity
 
FVector DrawScale
 
FVector DrawLoc
 
FMatrix LandscapeToWorld
 
FIntPoint SectionBase
 
FIntPoint LandscapeSectionOffset
 
int32 ComponentSizeQuads
 
FVector Origin
 
FVector Extent
 
FVector ComponentOrigin
 
int32 SqrtMaxInstances
 

Constructor & Destructor Documentation

◆ FAsyncGrassBuilder()

FAsyncGrassBuilder::FAsyncGrassBuilder ( ALandscapeProxy *  Landscape,
ULandscapeComponent *  Component,
const ULandscapeGrassType GrassType,
const FGrassVariety GrassVariety,
ERHIFeatureLevel::Type  FeatureLevel,
UGrassInstancedStaticMeshComponent GrassInstancedStaticMeshComponent,
int32  SqrtSubsections,
int32  SubX,
int32  SubY,
uint32  InHaltonBaseIndex,
TArray< FBox > &  InExcludedBoxes 
)
inline

Member Function Documentation

◆ Build()

void FAsyncGrassBuilder::Build ( )
inline

◆ GetDefaultScale()

FVector FAsyncGrassBuilder::GetDefaultScale ( ) const
inline

◆ GetRandomScale()

FVector FAsyncGrassBuilder::GetRandomScale ( float  InWeight) const
inline

◆ InitLandscapeLightmap()

void FAsyncGrassBuilder::InitLandscapeLightmap ( ULandscapeComponent *  Component)
inline

◆ IsExcluded()

bool FAsyncGrassBuilder::IsExcluded ( const FVector LocationWithHeight)
inline

◆ SampleLandscapeAtLocationLocal()

FORCEINLINE_DEBUGGABLE void FAsyncGrassBuilder::SampleLandscapeAtLocationLocal ( const FVector InLocation,
FVector OutLocation,
float OutLayerWeight,
FVector OutNormal = nullptr 
)
inline

◆ SetInstance()

void FAsyncGrassBuilder::SetInstance ( int32  InstanceIndex,
const FMatrix InXForm,
float  RandomFraction 
)
inline

Member Data Documentation

◆ AllowedDensityRange

FFloatInterval FAsyncGrassBuilder::AllowedDensityRange

◆ bAlignToSurface

bool FAsyncGrassBuilder::bAlignToSurface

◆ bAlignToTriangleNormals

bool FAsyncGrassBuilder::bAlignToTriangleNormals

◆ bRandomRotation

bool FAsyncGrassBuilder::bRandomRotation

◆ bRandomScale

bool FAsyncGrassBuilder::bRandomScale

◆ bRequiresCPUAccess

bool FAsyncGrassBuilder::bRequiresCPUAccess

◆ BuildTime

double FAsyncGrassBuilder::BuildTime

◆ bUseLandscapeLightmap

bool FAsyncGrassBuilder::bUseLandscapeLightmap

◆ bWeightAttenuatesMaxScale

bool FAsyncGrassBuilder::bWeightAttenuatesMaxScale

◆ ClusterTree

TArray<FClusterNode> FAsyncGrassBuilder::ClusterTree

◆ DesiredInstancesPerLeaf

int32 FAsyncGrassBuilder::DesiredInstancesPerLeaf

◆ ExcludedBoxes

TArray<FBox> FAsyncGrassBuilder::ExcludedBoxes

◆ GrassData

FLandscapeComponentGrassAccess FAsyncGrassBuilder::GrassData

◆ HaltonBaseIndex

uint32 FAsyncGrassBuilder::HaltonBaseIndex

◆ InstanceBuffer

FStaticMeshInstanceData FAsyncGrassBuilder::InstanceBuffer

◆ LightmapBaseBias

FVector2D FAsyncGrassBuilder::LightmapBaseBias

◆ LightmapBaseScale

FVector2D FAsyncGrassBuilder::LightmapBaseScale

◆ LightMapComponentBias

FVector2D FAsyncGrassBuilder::LightMapComponentBias

◆ LightMapComponentScale

FVector2D FAsyncGrassBuilder::LightMapComponentScale

◆ MaxScaleWeightAttenuation

float FAsyncGrassBuilder::MaxScaleWeightAttenuation

◆ MeshBox

FBox FAsyncGrassBuilder::MeshBox

◆ OutOcclusionLayerNum

int32 FAsyncGrassBuilder::OutOcclusionLayerNum

◆ PlacementJitter

float FAsyncGrassBuilder::PlacementJitter

◆ RandomStream

FRandomStream FAsyncGrassBuilder::RandomStream

◆ ScaleX

FFloatInterval FAsyncGrassBuilder::ScaleX

◆ ScaleY

FFloatInterval FAsyncGrassBuilder::ScaleY

◆ ScaleZ

FFloatInterval FAsyncGrassBuilder::ScaleZ

◆ Scaling

EGrassScaling FAsyncGrassBuilder::Scaling

◆ ShadowmapBaseBias

FVector2D FAsyncGrassBuilder::ShadowmapBaseBias

◆ ShadowmapBaseScale

FVector2D FAsyncGrassBuilder::ShadowmapBaseScale

◆ TotalInstances

int32 FAsyncGrassBuilder::TotalInstances

◆ XForm

FMatrix FAsyncGrassBuilder::XForm

The documentation for this struct was generated from the following file: