Navigation
API > API/Runtime > API/Runtime/Engine
A StaticMesh is a piece of geometry that consists of a static set of polygons. Static Meshes can be translated, rotated, and scaled, but they cannot have their vertices animated in any way. As such, they are more efficient to render than other types of geometry such as USkeletalMesh, and they are often the basic building block of levels created in the engine.
| Name | UStaticMesh |
| Type | class |
| Header File | /Engine/Source/Runtime/Engine/Classes/Engine/StaticMesh.h |
| Include Path | #include "Engine/StaticMesh.h" |
Syntax
UCLASS (HideCategories=Object, CustomConstructor, MinimalAPI, BlueprintType, Config=Engine)
class UStaticMesh :
public UStreamableRenderAsset ,
public IInterface_CollisionDataProvider ,
public IInterface_AssetUserData ,
public IInterface_AsyncCompilation
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UStreamableRenderAsset → UStaticMesh
Implements Interfaces
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
UStaticMesh
(
const FObjectInitializer& ObjectInitializer |
Default constructor | Engine/StaticMesh.h | |
UStaticMesh
(
const FObjectInitializer& ObjectInitializer |
Engine/StaticMesh.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
~UStaticMesh() |
Engine/StaticMesh.h |
Structs
| Name | Remarks |
|---|---|
| FBuildMeshDescriptionsLODParams | |
| FBuildMeshDescriptionsParams | Structure that defines parameters passed into the build mesh description function |
| FBuildParameters | Contains all the parameters required to build the mesh. |
| FCommitMeshDescriptionParams | Structure that defines parameters passed into the commit mesh description function |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FOnExtendedBoundsChanged | TMulticastDelegate_OneParam< void, const FBoxSphereBounds & > | Notification when bounds changed | Engine/StaticMesh.h |
| FOnMeshChanged | TMulticastDelegate_NoParams< void > | Notification when anything changed | Engine/StaticMesh.h |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| MinimumAutoLODPixelError | const float | Engine/StaticMesh.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| AssetImportData | TObjectPtr< class UAssetImportData > | Importing data and options used for this mesh | Engine/StaticMesh.h |
|
| AsyncTask | TUniquePtr< FStaticMeshAsyncBuildTask > | Engine/StaticMesh.h | ||
| bAllowCPUAccess | uint8 | If true, will keep geometry data CPU-accessible in cooked builds, rather than uploading to GPU memory and releasing it from CPU memory. | Engine/StaticMesh.h |
|
| bAutoComputeLODScreenSize | uint8 | If true, the screen sizes at which LODs swap are computed automatically. | Engine/StaticMesh.h | |
| bCustomizedCollision | bool | If the user has modified collision in any way or has custom collision imported. | Engine/StaticMesh.h |
|
| bDoFastBuild | uint8 | Engine/StaticMesh.h | ||
| bGenerateMeshDistanceField | uint8 | Whether to generate a distance field for this mesh, which can be used by DistanceField Indirect Shadows. | Engine/StaticMesh.h |
|
| bHasNavigationData | uint8 | If true, mesh will have NavCollision property with additional data for navmesh generation and usage. | Engine/StaticMesh.h |
|
| bRequiresLODDistanceConversion | uint8 | If true on post load we need to calculate Display Factors from the loaded LOD distances. | Engine/StaticMesh.h | |
| bRequiresLODScreenSizeConversion | uint8 | If true on post load we need to calculate resolution independent Display Factors from the loaded LOD screen sizes. | Engine/StaticMesh.h | |
| bSupportGpuUniformlyDistributedSampling | uint8 | If true, a GPU buffer containing required data for uniform mesh surface sampling will be created at load time. | Engine/StaticMesh.h |
|
| bSupportPhysicalMaterialMasks | uint8 | If true, complex collision data will store UVs and face remap table for use when performing PhysicalMaterialMask lookups in cooked builds. | Engine/StaticMesh.h |
|
| bSupportRayTracing | uint8 | If true, a ray tracing acceleration structure will be built for this mesh and it may be used in ray tracing effects | Engine/StaticMesh.h |
|
| bSupportUniformlyDistributedSampling | uint8 | Mesh supports uniformly distributed sampling in constant time. | Engine/StaticMesh.h |
|
| BuildCacheAutomationTestGuid | FGuid | This transient guid is use by the automation framework to modify the DDC key to force a build. | Engine/StaticMesh.h | |
| ComplexCollisionMesh | TObjectPtr< class UStaticMesh > | Engine/StaticMesh.h |
|
|
| DistanceFieldSelfShadowBias | float | Useful for reducing self shadowing from distance field methods when using world position offset to animate the mesh's vertices. | Engine/StaticMesh.h |
|
| EditorCameraPosition | FAssetEditorOrbitCameraPosition | The stored camera position to use as a default for the static mesh editor | Engine/StaticMesh.h | |
| ExtendedBounds | FBoxSphereBounds | Original mesh bounds extended with Positive/NegativeBoundsExtension | Engine/StaticMesh.h | |
| ImportVersion | int32 | The last import version | Engine/StaticMesh.h | |
| LightMapCoordinateIndex | int32 | The light map coordinate index | Engine/StaticMesh.h |
|
| LightMapResolution | int32 | Engine/StaticMesh.h |
|
|
| LODForCollision | int32 | Specifies which mesh LOD to use for complex (per-poly) collision. | Engine/StaticMesh.h |
|
| LODGroup | FName | The LOD group to which this mesh belongs. | Engine/StaticMesh.h |
|
| MaterialRemapIndexPerImportVersion | TArray< FMaterialRemapIndex > | Engine/StaticMesh.h | ||
| MeshPaintTextureCoordinateIndex | int32 | The default coordinate index to use when texture color painting on this mesh. | Engine/StaticMesh.h |
|
| MeshPaintTextureResolution | int32 | The resolution of texture color mesh paint textures on this mesh. | Engine/StaticMesh.h |
|
| MinLOD | FPerPlatformInt | Minimum LOD to use for rendering. | Engine/StaticMesh.h | |
| MinQualityLevelLOD | FPerQualityLevelInt | PerQuality override. | Engine/StaticMesh.h | |
| NaniteSettings | FMeshNaniteSettings | Settings related to building Nanite data. | Engine/StaticMesh.h |
|
| NegativeBoundsExtension | FVector | Bound extension values in the negative direction of XYZ, positive value increases bound size | Engine/StaticMesh.h |
|
| NumStreamedLODs | FPerPlatformInt | If non-negative, specify the maximum number of streamed LODs. | Engine/StaticMesh.h | |
| OnExtendedBoundsChanged | FOnExtendedBoundsChanged | Engine/StaticMesh.h | ||
| OnMeshChanged | FOnMeshChanged | Engine/StaticMesh.h | ||
| PositiveBoundsExtension | FVector | Bound extension values in the positive direction of XYZ, positive value increases bound size | Engine/StaticMesh.h |
|
| RayTracingProxySettings | FMeshRayTracingProxySettings | Settings related to building Ray Tracing Proxy data. | Engine/StaticMesh.h |
|
| ReleaseResourcesFence | FRenderCommandFence | A fence which is used to keep track of the rendering thread releasing the static mesh resources. | Engine/StaticMesh.h | |
| Sockets | TArray< TObjectPtr< class UStaticMeshSocket > > | Array of named socket locations, set up in editor and used as a shortcut instead of specifying everything explicitly to AttachComponent in the StaticMeshComponent. | Engine/StaticMesh.h | |
| SpeedTreeWind | TSharedPtr< class FSpeedTreeWind > | Data that is only available if this static mesh is an imported SpeedTree | Engine/StaticMesh.h | |
| StaticMeshPaintSupport | EStaticMeshPaintSupport | Whether to support per instance texture color mesh painting on components using this mesh. | Engine/StaticMesh.h |
|
| ThumbnailInfo | TObjectPtr< class UThumbnailInfo > | Information for thumbnail rendering | Engine/StaticMesh.h |
|
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| AssemblyReferenceCache | TArray< TObjectPtr< UStaticMesh > > | Engine/StaticMesh.h |
|
|
| bCleanUpRedundantMaterialPostLoad | bool | Fixes up the material when it was converted to the new staticmesh build process | Engine/StaticMesh.h | |
| bIsInPostEditChange | bool | Guard to ignore re-entrant PostEditChange calls. | Engine/StaticMesh.h | |
| BodySetup | TObjectPtr< class UBodySetup > | Physics data. | Engine/StaticMesh.h |
|
| bUseLegacyTangentScaling | uint8 | If true, will incorrectly scale tangents when applying a non-uniform BuildScale to match what legacy code did. | Engine/StaticMesh.h |
|
| CachedMeshDescriptionBounds | TOptional< FBoxSphereBounds > | Filled at CommitDescription time and reused during build. | Engine/StaticMesh.h | |
| HiResSourceModel | FStaticMeshSourceModel | Optional hi-res source data | Engine/StaticMesh.h |
|
| LightingGuid | FGuid | Unique ID for tracking/caching this mesh during distributed lighting | Engine/StaticMesh.h | |
| LightmapUVDensity | float | Engine/StaticMesh.h | ||
| LightmapUVVersion | int32 | The lightmap UV generation version used during the last derived data build | Engine/StaticMesh.h | |
| LockedProperties | std::atomic< uint32 > | Used as a bit-field indicating which properties are currently accessed/modified by async compilation. | Engine/StaticMesh.h | |
| MaterialsInfoCriticalSection | FCriticalSection | Engine/StaticMesh.h | ||
| NavCollision | TObjectPtr< UNavCollisionBase > | Pre-build navigation collision | Engine/StaticMesh.h |
|
| OriginalSectionInfoMap | FMeshSectionInfoMap | We need the OriginalSectionInfoMap to be able to build mesh in a non destructive way. | Engine/StaticMesh.h | |
| PostMeshBuild | FOnPostMeshBuild | Engine/StaticMesh.h | ||
| PreMeshBuild | FOnPreMeshBuild | Engine/StaticMesh.h | ||
| RenderData | TUniquePtr< class FStaticMeshRenderData > | Pointer to the data used to render this static mesh. | Engine/StaticMesh.h | |
| SectionInfoMap | FMeshSectionInfoMap | Map of LOD+Section index to per-section info. | Engine/StaticMesh.h | |
| ShaderModelNotificationPtr | TWeakPtr< class SNotificationItem > | Notification about missing Nanite required shader models. | Engine/StaticMesh.h | |
| SourceModels | TArray< FStaticMeshSourceModel > | Imported raw mesh bulk data. | Engine/StaticMesh.h |
|
| StaticMaterials | TArray< FStaticMaterial > | Engine/StaticMesh.h |
|
|
| StaticMaterialsInfoCache | TArray< FStaticMaterialMinimalInfo > | Engine/StaticMesh.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FName AddMaterial
(
UMaterialInterface* Material |
Adds a new material and return its slot name | Engine/StaticMesh.h |
|
void AddMaterialRemapIndex
(
const FMaterialRemapIndex& Index |
Engine/StaticMesh.h | ||
void AddSocket
(
UStaticMeshSocket* Socket |
Add a socket object in this StaticMesh. | Engine/StaticMesh.h |
|
FStaticMeshSourceModel & AddSourceModel() |
SourceModels API. | Engine/StaticMesh.h | |
bool AddUVChannel
(
int32 LODIndex |
Adds an empty UV channel at the end of the existing channels on the given LOD of a StaticMesh. | Engine/StaticMesh.h | |
bool AreRenderingResourcesInitialized() |
Engine/StaticMesh.h | ||
void BroadcastNavCollisionChange() |
Engine/StaticMesh.h | ||
void Build
(
const FBuildParameters& BuildParameters |
Rebuilds renderable data for this static mesh, automatically made async if enabled. | Engine/StaticMesh.h | |
| Rebuilds renderable data for this static mesh, automatically made async if enabled. | Engine/StaticMesh.h | ||
void BuildFromMeshDescription
(
const FMeshDescription& MeshDescription, |
Builds a LOD resource from a MeshDescription | Engine/StaticMesh.h | |
bool BuildFromMeshDescriptions
(
const TArray< const FMeshDescription* >& MeshDescriptions, |
Builds static mesh render buffers from a list of MeshDescriptions, one per LOD. | Engine/StaticMesh.h | |
void BuildFromStaticMeshDescriptions
(
const TArray< UStaticMeshDescription* >& StaticMeshDescriptions, |
Builds static mesh LODs from the array of StaticMeshDescriptions passed in | Engine/StaticMesh.h |
|
void CacheDerivedData() |
Caches derived renderable data. | Engine/StaticMesh.h | |
void CalculateExtendedBounds() |
Calculates the extended bounds | Engine/StaticMesh.h | |
bool CanLODsShareStaticLighting() |
Returns true if LODs of this static mesh may share texture lightmaps. | Engine/StaticMesh.h | |
bool CanMeshPaintTextureColors() |
Whether to support per instance texture color mesh painting on components using this mesh. | Engine/StaticMesh.h | |
| Removes references previously cached using RecacheNaniteAssemblyReferences(). | Engine/StaticMesh.h | ||
void ClearHiResMeshDescription() |
Engine/StaticMesh.h | ||
void ClearMeshDescription
(
int32 LodIndex |
Clears the cached mesh description for the given LOD. Note that this does not empty the bulk data. | Engine/StaticMesh.h | |
void ClearMeshDescriptions() |
Clears cached mesh descriptions for all LODs. | Engine/StaticMesh.h | |
bool CloneHiResMeshDescription
(
FMeshDescription& OutMeshDescription |
Engine/StaticMesh.h | ||
bool CloneMeshDescription
(
int32 LodIndex, |
Clone the MeshDescription associated to the LODIndex. | Engine/StaticMesh.h | |
void CommitHiResMeshDescription
(
const FCommitMeshDescriptionParams& Params |
Engine/StaticMesh.h | ||
void CommitMeshDescription
(
int32 LodIndex, |
Serialize the mesh description into its more optimized form. | Engine/StaticMesh.h | |
void CreateBodySetup() |
Create BodySetup for this staticmesh if it doesn't have oneCreate BodySetup for this staticmesh | Engine/StaticMesh.h | |
FMeshDescription * CreateHiResMeshDescription
(
FMeshDescription MeshDescription |
Engine/StaticMesh.h | ||
| Engine/StaticMesh.h | |||
FMeshDescription * CreateMeshDescription
(
int32 LodIndex, |
Engine/StaticMesh.h | ||
FMeshDescription * CreateMeshDescription
(
int32 LodIndex |
Engine/StaticMesh.h | ||
void CreateNavCollision
(
const bool bIsUpdate |
Calculates navigation collision for caching | Engine/StaticMesh.h | |
void EnforceLightmapRestrictions
(
bool bUseRenderData |
Make sure the Lightmap UV point on a valid UVChannel | Engine/StaticMesh.h | |
void ExportStaticMeshLOD
(
const FStaticMeshLODResources& InLODResources, |
Exports static mesh LOD render data to a MeshDescription | Engine/StaticMesh.h | |
UStaticMeshSocket * FindSocket
(
FName InSocketName |
Find a socket object in this StaticMesh by name. | Engine/StaticMesh.h |
|
void GenerateLodsInPackage() |
Engine/StaticMesh.h | ||
PRAGMA_DISABLE_DEPRECATION_WARNINGS class UAssetImportData * GetAssetImportData() |
Get AssetImportData for the static mesh | Engine/StaticMesh.h | |
bool GetAutoComputeLODScreenSize() |
Engine/StaticMesh.h | ||
UBodySetup * GetBodySetup() |
Engine/StaticMesh.h | ||
FBox GetBoundingBox() |
Returns the bounding box, in local space including bounds extension(s), of the StaticMesh asset | Engine/StaticMesh.h |
|
FBoxSphereBounds GetBounds() |
Returns the number of bounds of the mesh. | Engine/StaticMesh.h |
|
int64 GetBuildRequiredMemoryEstimate() |
Get an estimate of the peak amount of memory required to build this mesh. | Engine/StaticMesh.h | |
const TArray< TObjectPtr< UStaticMesh > > & GetCachedNaniteAssemblyReferences () |
Retrieves the cached array of static meshes referenced by the Nanite Assembly data. | Engine/StaticMesh.h | |
const TArray< FStaticMaterialMinimalInfo > GetCopyOfStaticMaterialsInfo() |
Engine/StaticMesh.h | ||
bool GetCustomizedCollision() |
Engine/StaticMesh.h | ||
int32 GetDefaultMinLOD() |
Engine/StaticMesh.h | ||
const FAssetEditorOrbitCameraPosition & GetEditorCameraPosition() |
Engine/StaticMesh.h | ||
bool GetEnableLODStreaming
(
const ITargetPlatform* TargetPlatform |
Get whether this mesh should use LOD streaming for the given platform. | Engine/StaticMesh.h | |
const FBoxSphereBounds & GetExtendedBounds() |
Engine/StaticMesh.h | ||
FMeshDescription * GetHiResMeshDescription() |
Engine/StaticMesh.h | ||
| Engine/StaticMesh.h | |||
const FStaticMeshSourceModel & GetHiResSourceModel () |
Engine/StaticMesh.h | ||
int32 GetImportVersion() |
Engine/StaticMesh.h | ||
bool GetLegacyTangentScaling() |
Engine/StaticMesh.h | ||
const FGuid & GetLightingGuid() |
Engine/StaticMesh.h | ||
int32 GetLightMapCoordinateIndex() |
Engine/StaticMesh.h | ||
int32 GetLightMapResolution() |
Engine/StaticMesh.h | ||
float GetLightmapUVDensity() |
Engine/StaticMesh.h | ||
int32 GetLightmapUVVersion() |
Engine/StaticMesh.h | ||
const FStaticMeshLODResources & GetLODForExport
(
int32 LODIndex |
Returns the render data to use for exporting the specified LOD. | Engine/StaticMesh.h | |
PRAGMA_DISABLE_DEPRECATION_WARNINGSFName GetLODGroup() |
Engine/StaticMesh.h | ||
UMaterialInterface * GetMaterial
(
int32 MaterialIndex |
Gets a Material given a Material Index and an LOD number | Engine/StaticMesh.h |
|
FBox GetMaterialBox
(
int32 MaterialIndex, |
Returns the material bounding box. Computed from all lod-section using the material index. | Engine/StaticMesh.h | |
int32 GetMaterialIndex
(
FName MaterialSlotName |
Gets a Material index given a slot name | Engine/StaticMesh.h |
|
int32 GetMaterialIndexFromImportedMaterialSlotName
(
FName ImportedMaterialSlotName |
Engine/StaticMesh.h | ||
const TArray< FMaterialRemapIndex > & GetMaterialRemapIndexPerImportVersion() |
Engine/StaticMesh.h | ||
FMeshDescription * GetMeshDescription
(
int32 LodIndex |
Return the MeshDescription associate to the LODIndex. | Engine/StaticMesh.h | |
int32 GetMinimumLODForPlatform
(
const FName& PlatformName |
Engine/StaticMesh.h |
|
|
| Engine/StaticMesh.h |
|
||
int32 GetMinimumLODForQualityLevel
(
const FName& QualityLevel |
Engine/StaticMesh.h |
|
|
| Engine/StaticMesh.h |
|
||
const FPerPlatformInt & GetMinLOD() |
Engine/StaticMesh.h | ||
void GetMinLODForQualityLevels
(
TMap< EPerQualityLevels, int32 >& QualityLevelMinimumLODs, |
Engine/StaticMesh.h |
|
|
int32 GetMinLODIdx
(
bool bForceLowestLODIdx |
Choose either PerPlatform or PerQuality override. | Engine/StaticMesh.h | |
| Engine/StaticMesh.h | |||
const FMeshNaniteSettings & GetNaniteSettings () |
Engine/StaticMesh.h | ||
UNavCollisionBase * GetNavCollision() |
Engine/StaticMesh.h | ||
FBox GetNavigationBounds
(
const FTransform& LocalToWorld |
Engine/StaticMesh.h | ||
const FVector & GetNegativeBoundsExtension() |
Engine/StaticMesh.h | ||
int32 GetNumLODs() |
Returns the number of LODs used by the mesh. | Engine/StaticMesh.h |
|
int32 GetNumNaniteTriangles() |
Returns the number of triangles of the Nanite representation of this mesh. | Engine/StaticMesh.h | |
int32 GetNumNaniteVertices() |
Returns the number of vertices of the Nanite representation of this mesh. | Engine/StaticMesh.h | |
int32 GetNumSections
(
int32 InLOD |
Returns number of Sections that this StaticMesh has, in the supplied LOD (LOD 0 is the highest) | Engine/StaticMesh.h |
|
int32 GetNumSectionsWithCollision() |
Return the number of sections of the StaticMesh with collision enabled | Engine/StaticMesh.h | |
int32 GetNumSourceModels() |
Engine/StaticMesh.h | ||
const FPerPlatformInt & GetNumStreamedLODs () |
Engine/StaticMesh.h | ||
| Engine/StaticMesh.h | |||
int32 GetNumTexCoords
(
int32 LODIndex |
Returns the number of tex coords for the specified LOD. | Engine/StaticMesh.h | |
int32 GetNumTriangles
(
int32 LODIndex |
Returns the number of triangles in the render data for the specified LOD. | Engine/StaticMesh.h |
|
int32 GetNumUVChannels
(
int32 LODIndex |
Returns the number of UV channels for the given LOD of a StaticMesh. | Engine/StaticMesh.h | |
int32 GetNumVertices
(
int32 LODIndex |
Returns the number of vertices for the specified LOD. | Engine/StaticMesh.h |
|
FOnExtendedBoundsChanged & GetOnExtendedBoundsChanged() |
Engine/StaticMesh.h | ||
FOnMeshChanged & GetOnMeshChanged() |
Engine/StaticMesh.h | ||
| Engine/StaticMesh.h | |||
const FMeshSectionInfoMap & GetOriginalSectionInfoMap () |
Engine/StaticMesh.h | ||
const FVector & GetPositiveBoundsExtension() |
Engine/StaticMesh.h | ||
const FPerQualityLevelInt & GetQualityLevelMinLOD() |
Engine/StaticMesh.h | ||
| Engine/StaticMesh.h | |||
PRAGMA_DISABLE_DEPRECATION_WARNINGS const FMeshRayTracingProxySettings & GetRayTracingProxySettings () |
Engine/StaticMesh.h | ||
FMeshReductionSettings GetReductionSettings
(
int32 LODIndex |
Get a copy of the reduction settings for a specified LOD index. | Engine/StaticMesh.h | |
const FStaticMeshRenderData * GetRenderData () |
Engine/StaticMesh.h | ||
| Engine/StaticMesh.h | |||
bool GetRequiresLODDistanceConversion() |
Engine/StaticMesh.h | ||
bool GetRequiresLODScreenSizeConversion() |
Engine/StaticMesh.h | ||
| Engine/StaticMesh.h | |||
const FMeshSectionInfoMap & GetSectionInfoMap () |
Engine/StaticMesh.h | ||
TArray< UStaticMeshSocket * > GetSocketsByTag
(
const FString& InSocketTag |
Returns a list of sockets with the provided tag. | Engine/StaticMesh.h |
|
FStaticMeshSourceModel & GetSourceModel
(
int32 Index |
Engine/StaticMesh.h | ||
const FStaticMeshSourceModel & GetSourceModel
(
int32 Index |
Engine/StaticMesh.h | ||
const TArray< FStaticMeshSourceModel > & GetSourceModels() |
Engine/StaticMesh.h | ||
const TArray< FStaticMaterial > & GetStaticMaterials () |
Engine/StaticMesh.h |
|
|
TArray< FStaticMaterial > & GetStaticMaterials () |
Engine/StaticMesh.h | ||
UStaticMeshDescription * GetStaticMeshDescription
(
int32 LODIndex |
Return a new StaticMeshDescription referencing the MeshDescription of the given LOD | Engine/StaticMesh.h |
|
UThumbnailInfo * GetThumbnailInfo() |
Get ThumbnailInfo for the static mesh | Engine/StaticMesh.h | |
void GetUsedMaterials
(
TArray< UMaterialInterface* >& OutMaterials, |
Engine/StaticMesh.h | ||
const FMeshUVChannelInfo * GetUVChannelData
(
int32 MaterialIndex |
Returns the UV channel data for a given material index. | Engine/StaticMesh.h | |
void GetVertexColorData
(
TMap< FVector3f, FColor >& VertexColorData |
Returns vertex color data by position. | Engine/StaticMesh.h | |
bool HasAnyDependenciesCompiling() |
Engine/StaticMesh.h | ||
bool HasCachedNaniteAssemblyReferences() |
Returns whether or not Nanite Assembly reference meshes are adequately cached for build (always true for non-assemblies). | Engine/StaticMesh.h | |
bool HasNaniteFallbackMesh
(
EShaderPlatform ShaderPlatform |
Returns true if the mesh has Nanite fallback on a specific shader platform. | Engine/StaticMesh.h | |
bool HasValidNaniteData() |
Returns true if the mesh has valid Nanite render data. | Engine/StaticMesh.h | |
bool HasValidRenderData
(
bool bCheckLODForVerts, |
Returns true if the mesh has data that can be rendered. | Engine/StaticMesh.h | |
virtual void InitResources() |
Initialize the static mesh's render resources.Initializes the static mesh's render resources. | Engine/StaticMesh.h | |
bool InsertUVChannel
(
int32 LODIndex, |
Inserts an empty UV channel at the specified channel index on the given LOD of a StaticMesh. | Engine/StaticMesh.h | |
bool IsAsyncTaskComplete() |
Engine/StaticMesh.h | ||
bool IsBuiltAtRuntime() |
Engine/StaticMesh.h | ||
bool IsHiResMeshDescriptionValid() |
Engine/StaticMesh.h | ||
bool IsLODScreenSizeAutoComputed() |
Engine/StaticMesh.h |
|
|
bool IsMeshDescriptionValid
(
int32 LodIndex |
Engine/StaticMesh.h | ||
bool IsMinLodQualityLevelEnable() |
Check the QualitLevel property is enabled for MinLod. | Engine/StaticMesh.h | |
bool IsNaniteAssembly() |
Returns true if this SM is comprised of instanced copies of other SMs for at least part of its own internal structure. | Engine/StaticMesh.h | |
bool IsNaniteEnabled () |
Returns true if this SM should have Nanite built for it. | Engine/StaticMesh.h | |
bool IsNaniteForceEnabled () |
Returns true if this SM should always have Nanite data built. | Engine/StaticMesh.h | |
bool IsNaniteLandscape() |
TODO: Temp/deprecated hack - Do not call. | Engine/StaticMesh.h | |
bool IsNavigationRelevant() |
Engine/StaticMesh.h | ||
bool IsReductionActive
(
int32 LODIndex |
Return true if the reduction settings are setup to reduce a LOD | Engine/StaticMesh.h | |
bool IsSourceModelValid
(
int32 Index |
Engine/StaticMesh.h | ||
bool LoadHiResMeshDescription
(
FMeshDescription& OutMeshDescription |
Engine/StaticMesh.h | ||
void MarkAsNotHavingNavigationData() |
Configures this SM as bHasNavigationData = false and clears stored NavCollision | Engine/StaticMesh.h | |
bool ModifyAllMeshDescriptions
(
bool bAlwaysMarkDirty |
Performs a Modify on StaticMeshDescription objects for all LODs | Engine/StaticMesh.h | |
bool ModifyHiResMeshDescription
(
bool bAlwaysMarkDirty |
Performs a Modify on the hi-res StaticMeshDescription | Engine/StaticMesh.h | |
bool ModifyMeshDescription
(
int32 LodIndex, |
Performs a Modify on the StaticMeshDescription object pertaining to the given LODIndex | Engine/StaticMesh.h | |
FStaticMeshSourceModel && MoveHiResSourceModel() |
Engine/StaticMesh.h | ||
TArray< FStaticMeshSourceModel > && MoveSourceModels() |
Engine/StaticMesh.h | ||
void NotifyNaniteSettingsChanged() |
Engine/StaticMesh.h | ||
void NotifyRayTracingProxySettingsChanged() |
Engine/StaticMesh.h | ||
FOnPostMeshBuild & OnPostMeshBuild() |
Get multicast delegate broadcast after mesh building | Engine/StaticMesh.h | |
FOnPreMeshBuild & OnPreMeshBuild() |
Get multicast delegate broadcast prior to mesh building | Engine/StaticMesh.h | |
void PrepareDerivedDataForActiveTargetPlatforms() |
Caches derived renderable for cooked platforms currently active. | Engine/StaticMesh.h | |
void RecacheNaniteAssemblyReferences
(
bool bWaitForAsyncCompile |
Caches the static meshes referenced by the Nanite Assembly data for the mesh to be used for build. | Engine/StaticMesh.h | |
void RecreateNavCollision() |
Delete current NavCollision and create a new one if needed | Engine/StaticMesh.h | |
virtual void ReleaseResources() |
Releases the static mesh's render resources. | Engine/StaticMesh.h | |
void RemoveSocket
(
UStaticMeshSocket* Socket |
Remove a socket object in this StaticMesh by providing it's pointer. | Engine/StaticMesh.h |
|
void RemoveSourceModel
(
int32 Index |
Engine/StaticMesh.h | ||
bool RemoveUVChannel
(
int32 LODIndex, |
Removes the UV channel at the specified channel index on the given LOD of a StaticMesh. | Engine/StaticMesh.h | |
void RemoveVertexColors() |
Removes all vertex colors from this mesh and rebuilds it (Editor only | Engine/StaticMesh.h | |
void RequestUpdateCachedRenderState() |
Engine/StaticMesh.h | ||
void SetAssetImportData
(
UAssetImportData* InAssetImportData |
Set AssetImportData for the static mesh | Engine/StaticMesh.h | |
void SetAutoComputeLODScreenSize
(
bool bShouldCompute |
Engine/StaticMesh.h | ||
void SetBodySetup
(
UBodySetup* InBodySetup |
Engine/StaticMesh.h | ||
void SetCustomizedCollision
(
bool bInCustomizedCollision |
Engine/StaticMesh.h | ||
bool SetCustomLOD
(
const UStaticMesh* SourceStaticMesh, |
Add or change the LOD data specified by LodIndex with the content of the sourceStaticMesh. | Engine/StaticMesh.h | |
void SetEditorCameraPosition
(
const FAssetEditorOrbitCameraPosition& Position |
Engine/StaticMesh.h | ||
void SetExtendedBounds
(
const FBoxSphereBounds& InExtendedBounds |
Engine/StaticMesh.h | ||
void SetHiResSourceModel
(
FStaticMeshSourceModel&& SourceModel |
Engine/StaticMesh.h | ||
void SetImportVersion
(
int32 Version |
Engine/StaticMesh.h | ||
void SetIsBuiltAtRuntime
(
bool InIsBuiltAtRuntime |
Engine/StaticMesh.h | ||
void SetLegacyTangentScaling
(
bool bInUseLegacyTangentScaling |
Engine/StaticMesh.h | ||
void SetLightingGuid
(
const FGuid& InLightingGuid |
Engine/StaticMesh.h | ||
void SetLightMapCoordinateIndex
(
int32 InLightMapCoordinateIndex |
Engine/StaticMesh.h | ||
void SetLightMapResolution
(
int32 InLightMapResolution |
Engine/StaticMesh.h | ||
void SetLightmapUVDensity
(
float InLightmapUVDensity |
Engine/StaticMesh.h | ||
void SetLODGroup
(
FName NewGroup, |
Engine/StaticMesh.h | ||
void SetLODGroup_Unsafe
(
FName InLODGroup |
Engine/StaticMesh.h | ||
void SetMaterial
(
int32 MaterialIndex, |
Sets a Material given a Material Index | Engine/StaticMesh.h |
|
void SetMinimumLODForPlatform
(
const FName& PlatformName, |
Engine/StaticMesh.h |
|
|
| Engine/StaticMesh.h |
|
||
void SetMinLOD
(
FPerPlatformInt InMinLOD |
Engine/StaticMesh.h | ||
void SetMinLODForQualityLevels
(
const TMap< EPerQualityLevels, int32 >& QualityLevelMinimumLODs, |
Engine/StaticMesh.h |
|
|
void SetMinLODIdx
(
int32 InMinLOD |
Engine/StaticMesh.h | ||
void SetNaniteSettings
(
const FMeshNaniteSettings& Settings |
Engine/StaticMesh.h | ||
void SetNavCollision
(
UNavCollisionBase* |
Engine/StaticMesh.h | ||
void SetNegativeBoundsExtension
(
FVector InNegativeBoundsExtension |
Engine/StaticMesh.h | ||
void SetNumSourceModels
(
int32 Num |
Engine/StaticMesh.h |
|
|
void SetPositiveBoundsExtension
(
FVector InPositiveBoundsExtension |
Engine/StaticMesh.h | ||
void SetQualityLevelMinLOD
(
FPerQualityLevelInt InMinLOD |
Engine/StaticMesh.h | ||
void SetRayTracingProxySettings
(
const FMeshRayTracingProxySettings& Settings |
Engine/StaticMesh.h | ||
void SetRenderData
(
TUniquePtr< class FStaticMeshRenderData >&& InRenderData |
Engine/StaticMesh.h | ||
void SetRequiresLODDistanceConversion
(
bool bRequiresConversion |
Engine/StaticMesh.h | ||
void SetRequiresLODScreenSizeConversion
(
bool bRequiresConversion |
Engine/StaticMesh.h | ||
void SetSourceModels
(
TArray< FStaticMeshSourceModel >&& SourceModels |
Engine/StaticMesh.h | ||
void SetStaticMaterials
(
const TArray< FStaticMaterial >& InStaticMaterials |
Engine/StaticMesh.h |
|
|
void SetThumbnailInfo
(
UThumbnailInfo* InThumbnailInfo |
Set ThumbnailInfo for the static mesh | Engine/StaticMesh.h | |
bool SetUVChannel
(
int32 LODIndex, |
Sets the texture coordinates at the specified UV channel index on the given LOD of a StaticMesh. | Engine/StaticMesh.h | |
bool SetUVChannel
(
int32 LODIndex, |
Sets the texture coordinates at the specified UV channel index on the given LOD of a StaticMesh. | Engine/StaticMesh.h | |
void SetVertexColorData
(
const TMap< FVector3f, FColor >& VertexColorData |
Sets vertex color data by position. | Engine/StaticMesh.h | |
bool TryCancelAsyncTasks () |
Try to cancel any pending async tasks. | Engine/StaticMesh.h | |
void UpdateUVChannelData
(
bool bRebuildAll |
Update missing material UV channel data used for texture streaming. | Engine/StaticMesh.h |
Overridden from UStreamableRenderAsset
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual int32 CalcCumulativeLODSize
(
int32 NumLODs |
Engine/StaticMesh.h | ||
virtual bool DoesMipDataExist
(
const int32 MipIndex |
Engine/StaticMesh.h | ||
virtual FIoFilenameHash GetMipIoFilenameHash
(
const int32 MipIndex |
Engine/StaticMesh.h | ||
virtual EStreamableRenderAssetType GetRenderAssetType() |
Engine/StaticMesh.h | ||
virtual bool HasPendingRenderResourceInitialization() |
Also returns false if the render resource is non existent, to prevent stalling on an event that will never complete. | Engine/StaticMesh.h | |
virtual bool StreamIn
(
int32 NewMipCount, |
Loads mips from disk to memory. Only usable if the asset is streamable. | Engine/StaticMesh.h | |
virtual bool StreamOut
(
int32 NewMipCount |
Unload some mips from memory. Only usable if the asset is streamable. | Engine/StaticMesh.h |
Overridden from UObject
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void BeginCacheForCookedPlatformData
(
const ITargetPlatform* TargetPlatform |
Engine/StaticMesh.h | ||
virtual void BeginDestroy() |
Engine/StaticMesh.h | ||
virtual void ClearAllCachedCookedPlatformData() |
Engine/StaticMesh.h | ||
virtual void ClearCachedCookedPlatformData
(
const ITargetPlatform* TargetPlatform |
Engine/StaticMesh.h | ||
| Engine/StaticMesh.h | |||
virtual void GetAssetRegistryTags
(
FAssetRegistryTagsContext Context |
Engine/StaticMesh.h | ||
virtual void GetAssetRegistryTags
(
TArray< FAssetRegistryTag >& OutTags |
Engine/StaticMesh.h | ||
virtual FString GetDesc() |
Returns a one line description of an object for viewing in the thumbnail view of the generic browser | Engine/StaticMesh.h | |
virtual void GetResourceSizeEx
(
FResourceSizeEx& CumulativeResourceSize |
Engine/StaticMesh.h | ||
virtual bool IsCachedCookedPlatformDataLoaded
(
const ITargetPlatform* TargetPlatform |
Engine/StaticMesh.h | ||
virtual EDataValidationResult IsDataValid
(
FDataValidationContext& Context |
Engine/StaticMesh.h | ||
virtual bool IsPostLoadThreadSafe() |
Engine/StaticMesh.h | ||
virtual bool IsReadyForFinishDestroy() |
Engine/StaticMesh.h | ||
virtual void PostDuplicate
(
bool bDuplicateForPIE |
Engine/StaticMesh.h | ||
virtual void PostEditChangeProperty
(
FPropertyChangedEvent& PropertyChangedEvent |
Engine/StaticMesh.h | ||
virtual void PostEditUndo() |
Engine/StaticMesh.h | ||
virtual void PostInitProperties() |
Engine/StaticMesh.h | ||
virtual void PostLoad() |
Engine/StaticMesh.h | ||
virtual void PreEditChange
(
FProperty* PropertyAboutToChange |
Engine/StaticMesh.h | ||
virtual void Serialize
(
FArchive& Ar |
UStaticMesh::Serialize | Engine/StaticMesh.h | |
virtual void WillNeverCacheCookedPlatformDataAgain() |
Engine/StaticMesh.h |
Overridden from UObjectBaseUtility
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool CanBeClusterRoot() |
Engine/StaticMesh.h |
Overridden from IInterface_CollisionDataProvider
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool ContainsPhysicsTriMeshData
(
bool InUseAllTriData |
Interface for checking if the implementing objects contains triangle mesh collision data | Engine/StaticMesh.h | |
virtual void GetMeshId
(
FString& OutMeshId |
An optional string identifying the mesh data. | Engine/StaticMesh.h | |
virtual bool GetPhysicsTriMeshData
(
FTriMeshCollisionData* CollisionData, |
Interface for retrieving triangle mesh collision data from the implementing object | Engine/StaticMesh.h | |
virtual bool GetTriMeshSizeEstimates
(
FTriMeshCollisionDataEstimates& OutTriMeshEstimates, |
Returns an estimate of how much data would be retrieved by GetPhysicsTriMeshData. | Engine/StaticMesh.h | |
virtual bool PollAsyncPhysicsTriMeshData
(
bool InUseAllTriData |
Poll for availability of asynchronously-populated triangle mesh collision data | Engine/StaticMesh.h | |
virtual bool WantsNegXTriMesh() |
Do we want to create a negative version of this mesh | Engine/StaticMesh.h |
Overridden from IInterface_AssetUserData
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void AddAssetUserData
(
UAssetUserData* InUserData |
Engine/StaticMesh.h | ||
virtual const TArray< UAssetUserData * > * GetAssetUserDataArray() |
Engine/StaticMesh.h | ||
virtual UAssetUserData * GetAssetUserDataOfClass
(
TSubclassOf< UAssetUserData > InUserDataClass |
Returns an instance of the provided AssetUserData class if it's contained in the target asset. | Engine/StaticMesh.h | |
virtual void RemoveUserDataOfClass
(
TSubclassOf< UAssetUserData > InUserDataClass |
Engine/StaticMesh.h |
Overridden from IInterface_AsyncCompilation
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool IsCompiling() |
Returns whether or not the asset is currently being compiled | Engine/StaticMesh.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static void AppendToClassSchema
(
FAppendToClassSchemaContext& Context |
Engine/StaticMesh.h | ||
static void BatchBuild
(
const TArray< UStaticMesh* >& InStaticMeshes, |
Rebuilds renderable data for a batch of static meshes. | Engine/StaticMesh.h | |
static void BatchBuild
(
const TArray< UStaticMesh* >& InStaticMeshes, |
Rebuilds renderable data for a batch of static meshes. | Engine/StaticMesh.h | |
static void CancelAllPendingStreamingActions () |
Cancels any pending static mesh streaming actions if possible. | Engine/StaticMesh.h | |
| Static: Processes the specified static mesh for light map UV problems | Engine/StaticMesh.h | ||
static float ComputeLODScreenSize
(
int32 LODIndex, |
Computes the LOD Screen Size based on the LODIndex while keeping it within tolerance from the previous LODScreenSize | Engine/StaticMesh.h | |
static UStaticMeshDescription * CreateStaticMeshDescription
(
UObject* Outer |
Create an empty StaticMeshDescription object, to describe a static mesh at runtime | Engine/StaticMesh.h |
|
static void DeclareConstructClasses
(
TArray< FTopLevelAssetPath >& OutConstructClasses, |
Engine/StaticMesh.h | ||
static FName GetAssetImportDataMemberName() |
Engine/StaticMesh.h | ||
static FName GetAutoComputeLODScreenSizeMemberName() |
Engine/StaticMesh.h | ||
static FName GetBodySetupName() |
Engine/StaticMesh.h | ||
static FName GetLightMapCoordinateIndexName() |
Engine/StaticMesh.h | ||
static FName GetLightMapResolutionName() |
Engine/StaticMesh.h | ||
static FName GetLODGroupMemberName() |
Engine/StaticMesh.h | ||
| Retrieves the names of all LOD groups. | Engine/StaticMesh.h | ||
| Retrieves the localized display names of all LOD groups. | Engine/StaticMesh.h | ||
static FName GetLODPathName
(
const UStaticMesh* Mesh, |
Helper function for resource tracking, construct a name using the mesh's path name and LOD index . | Engine/StaticMesh.h | |
static FName GetNaniteSettingsMemberName() |
Engine/StaticMesh.h | ||
static FName GetNegativeBoundsExtensionName() |
Engine/StaticMesh.h | ||
static FStaticMeshRenderData & GetPlatformStaticMeshRenderData
(
UStaticMesh* Mesh, |
Get a static mesh render data for requested platform. | Engine/StaticMesh.h | |
static FName GetPositiveBoundsExtensionName() |
Engine/StaticMesh.h | ||
static FName GetQualityLevelMinLODMemberName() |
Engine/StaticMesh.h | ||
static FName GetRayTracingProxySettingsMemberName() |
Engine/StaticMesh.h | ||
static FName GetSectionInfoMapName() |
Engine/StaticMesh.h | ||
static FName GetStaticMaterialsName() |
Engine/StaticMesh.h | ||
static FName GetSupportRayTracingMemberName() |
Engine/StaticMesh.h | ||
static FName GetThumbnailInfoMemberName() |
Engine/StaticMesh.h | ||
static const TArray< FStaticMaterialMinimalInfo > ImportStaticMaterialsInfo
(
const FString& InData |
Engine/StaticMesh.h | ||
static void OnLodStrippingQualityLevelChanged
(
IConsoleVariable* Variable |
Engine/StaticMesh.h | ||
static void RegisterMeshAttributes
(
FMeshDescription& MeshDescription |
Registers the mesh attributes required by the mesh description for a static mesh. | Engine/StaticMesh.h | |
static void RemoveUnusedMaterialSlots
(
UStaticMesh* StaticMesh |
Static function that remove any trailing unused material. | Engine/StaticMesh.h |
Deprecated Variables
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bStripComplexCollisionForConsole_DEPRECATED | uint8 | If true, strips unwanted complex collision data aka kDOP tree when cooking for consoles. | Engine/StaticMesh.h | |
| EditableMesh_DEPRECATED | TObjectPtr< class UObject > | Engine/StaticMesh.h |
|
|
| Materials_DEPRECATED | TArray< TObjectPtr< UMaterialInterface > > | Materials used by this static mesh. Individual sections index in to this array. | Engine/StaticMesh.h | |
| SourceFilePath_DEPRECATED | FString | Path to the resource used to construct this static mesh | Engine/StaticMesh.h | |
| SourceFileTimestamp_DEPRECATED | FString | Date/Time-stamp of the file from the last import | Engine/StaticMesh.h |