UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FSkeletalMeshLODInfo Struct Reference

#include <SkinnedAssetCommon.h>

+ Inheritance diagram for FSkeletalMeshLODInfo:

Public Member Functions

 FSkeletalMeshLODInfo ()
 

Public Attributes

FPerPlatformFloat ScreenSize { 1.0 }
 
float LODHysteresis = 0.0f
 
TArray< int32LODMaterialMap
 
FSkeletalMeshBuildSettings BuildSettings
 
FSkeletalMeshOptimizationSettings ReductionSettings
 
TArray< FBoneReferenceBonesToRemove
 
TArray< FBoneReferenceBonesToPrioritize
 
TArray< FSectionReferenceSectionsToPrioritize
 
float WeightOfPrioritization = 1.0f
 
TObjectPtr< UAnimSequenceBakePose
 
TObjectPtr< UAnimSequenceBakePoseOverride
 
ESkinCacheUsage SkinCacheUsage = ESkinCacheUsage::Auto
 
float MorphTargetPositionErrorTolerance = 20.0f
 
TArray< FSkeletalMeshVertexAttributeInfoVertexAttributes
 
uint8 bHasBeenSimplified:1
 
uint8 bHasPerLODVertexColors: 1
 
uint8 bAllowCPUAccess: 1
 
uint8 bBuildHalfEdgeBuffers: 1
 
uint8 bAllowMeshDeformer: 1
 
uint8 bSupportUniformlyDistributedSampling: 1
 

Detailed Description

Struct containing information for a particular LOD level, such as materials and info for when to use it.

Constructor & Destructor Documentation

◆ FSkeletalMeshLODInfo()

FSkeletalMeshLODInfo::FSkeletalMeshLODInfo ( )
inline

Member Data Documentation

◆ BakePose

TObjectPtr<UAnimSequence> FSkeletalMeshLODInfo::BakePose

Pose which should be used to reskin vertex influences for which the bones will be removed in this LOD level, uses ref-pose by default

◆ BakePoseOverride

TObjectPtr<UAnimSequence> FSkeletalMeshLODInfo::BakePoseOverride

This is used when you are sharing the LOD settings, but you'd like to override the BasePose. This precedes prior to BakePose

◆ bAllowCPUAccess

uint8 FSkeletalMeshLODInfo::bAllowCPUAccess

Keeps this LODs data on the CPU so it can be used for things such as sampling in FX.

◆ bAllowMeshDeformer

uint8 FSkeletalMeshLODInfo::bAllowMeshDeformer

Whether a Mesh Deformer applied to the mesh asset or Skinned Mesh Component should be used on this LOD or not

◆ bBuildHalfEdgeBuffers

uint8 FSkeletalMeshLODInfo::bBuildHalfEdgeBuffers

Whether to force cache/cook half edge data that provides vertex connectivity information across material sections, which may be useful for other systems like Mesh Deformer. Please note that Half Edge buffers are always built if the Skeletal Mesh Asset has Default Mesh Deformer assigned, and the LOD has AllowMeshDeformer enabled,

◆ bHasBeenSimplified

uint8 FSkeletalMeshLODInfo::bHasBeenSimplified

Whether to disable morph targets for this LOD.

◆ bHasPerLODVertexColors

uint8 FSkeletalMeshLODInfo::bHasPerLODVertexColors

◆ BonesToPrioritize

TArray<FBoneReference> FSkeletalMeshLODInfo::BonesToPrioritize

Bones which should be prioritized for the quality, this will be weighted toward keeping source data. Use WeightOfPrioritization to control the value.

◆ BonesToRemove

TArray<FBoneReference> FSkeletalMeshLODInfo::BonesToRemove

Bones which should be removed from the skeleton for the LOD level

◆ bSupportUniformlyDistributedSampling

uint8 FSkeletalMeshLODInfo::bSupportUniformlyDistributedSampling

Mesh supports uniformly distributed sampling in constant time. Memory cost is 8 bytes per triangle. Example usage is uniform spawning of particles.

◆ BuildSettings

FSkeletalMeshBuildSettings FSkeletalMeshLODInfo::BuildSettings

build settings to apply when building render data.

◆ LODHysteresis

float FSkeletalMeshLODInfo::LODHysteresis = 0.0f

Used to avoid 'flickering' when on LOD boundary. Only taken into account when moving from complex->simple.

◆ LODMaterialMap

TArray<int32> FSkeletalMeshLODInfo::LODMaterialMap

Mapping table from this LOD's materials to the USkeletalMesh materials array. section index is the key remapped material index is the value, can be INDEX_NONE for no remapping

◆ MorphTargetPositionErrorTolerance

float FSkeletalMeshLODInfo::MorphTargetPositionErrorTolerance = 20.0f

The Morph target position error tolerance in microns. Larger values result in better compression and lower memory footprint, but also lower quality.

◆ ReductionSettings

FSkeletalMeshOptimizationSettings FSkeletalMeshLODInfo::ReductionSettings

Reduction settings to apply when building render data.

◆ ScreenSize

FPerPlatformFloat FSkeletalMeshLODInfo::ScreenSize { 1.0 }

ScreenSize to display this LOD. The screen size is based around the projected diameter of the bounding sphere of the model. i.e. 0.5 means half the screen's maximum dimension.

◆ SectionsToPrioritize

TArray<FSectionReference> FSkeletalMeshLODInfo::SectionsToPrioritize

Sections which should be prioritized for the quality, this will be weighted toward keeping source data. Use WeightOfPrioritization to control the value.

◆ SkinCacheUsage

ESkinCacheUsage FSkeletalMeshLODInfo::SkinCacheUsage = ESkinCacheUsage::Auto

How this LOD uses the skin cache feature. Auto will defer to the default project global option. If Support Ray Tracing is enabled on the mesh, will imply Enabled

◆ VertexAttributes

TArray<FSkeletalMeshVertexAttributeInfo> FSkeletalMeshLODInfo::VertexAttributes

List of vertex attributes to include for rendering and what type they should be

◆ WeightOfPrioritization

float FSkeletalMeshLODInfo::WeightOfPrioritization = 1.0f

How much to consideration to give BonesToPrioritize and SectionsToPrioritize. The weight is an additional vertex simplification penalty where 0 means nothing.


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