UBaseDynamicMeshComponent

[UBaseDynamicMeshComponent](API\Runtime\GeometryFramework\Components\UBaseDynamicMeshComponent) is a base interface for a [UMeshComponent](API\Runtime\Engine\Components\UMeshComponent) based on a [UDynamicMesh](API\Runtime\GeometryFramework\UDynamicMesh).

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

References

Module

GeometryFramework

Header

/Engine/Source/Runtime/GeometryFramework/Public/Components/BaseDynamicMeshComponent.h

Include

#include "Components/BaseDynamicMeshComponent.h"

Syntax

class UBaseDynamicMeshComponent :
    public UMeshComponent,
    public IToolFrameworkComponent,
    public IMeshVertexCommandChangeTarget,
    public IMeshCommandChangeTarget,
    public IMeshReplacementCommandChangeTarget

Remarks

UBaseDynamicMeshComponent is a base interface for a UMeshComponent based on a UDynamicMesh.

Variables

Name Description

Public variable

TArray< TObject...

 

BaseMaterials

Protected variable

bool

 

bDrawSecondaryBuffers

Public variable

bool

 

bEnableRaytracing

Raytracing support.

Public variable

bool

 

bEnableViewModeOverrides

This flag controls whether Editor View Mode Overrides are enabled for this mesh.

Public variable

bool

 

bExplicitShowWireframe

Built-in Wireframe-on-Shaded Rendering support.

Protected variable

TObjectPtr< UMa...

 

OverrideRenderMaterial

Protected variable

TObjectPtr< UMa...

 

SecondaryRenderMaterial

Constructors

Name Description

Public function

UBaseDynamicMeshComponent

(
    const FObjectInitializer& ObjectIn...
)

Functions

Name Description

Public function Virtual

void

 

ApplyTransform

(
    const UE::Geometry::FTransform3d& ...,
    bool bInvert
)

Apply a transform to the mesh

Public function Virtual

void

 

ClearOverrideRenderMaterial()

Clear any active override render material

Public function Virtual

void

 

ClearSecondaryRenderMaterial()

Clear any active secondary render material

Protected function Virtual

FBaseDynamic...

 

GetBaseSceneProxy()

Subclass must implement this to return scene proxy if available, or nullptr

Public function Virtual

UDynamicMesh...

 

GetDynamicMesh()

Public function Virtual Const

bool

 

GetEnableRaytracing()

Public function Virtual Const

bool

 

GetEnableWireframeRenderPass()

Public function Virtual

FDynamicMesh...

 

GetMesh()

Avoid usage of this function, access via GetDynamicMesh() instead

Public function Virtual Const

const FDynam...

 

GetMesh()

Public function Virtual Const

UMaterialInt...

 

GetOverrideRenderMaterial

(
    int MaterialIndex
)

Public function Virtual Const

bool

 

GetSecondaryBuffersVisibility()

Public function Virtual Const

UMaterialInt...

 

GetSecondaryRenderMaterial()

Public function Virtual Const

bool

 

GetShadowsEnabled()

Public function Virtual Const

bool

 

GetViewModeOverridesEnabled()

Public function Virtual Const

bool

 

HasOverrideRenderMaterial

(
    int k
)

Public function Virtual Const

bool

 

HasSecondaryRenderMaterial()

Protected function Virtual

void

 

NotifyMaterialSetUpdated()

Subclass must implement this to notify allocated proxies of updated materials

Public function Virtual

void

 

NotifyMeshUpdated()

Call this if you update the mesh via GetMesh()

Protected function Virtual

void

 

OnRenderingStateChanged

(
    bool bForceImmedateRebuild
)

Public function Virtual Const

void

 

ProcessMesh

(
    TFunctionRef< void...
)

Allow external code to read the internal mesh.

Public function Virtual

void

 

SetEnableRaytracing

(
    bool bSetEnabled
)

Enable/Disable raytracing support.

Public function Virtual

void

 

SetEnableWireframeRenderPass

(
    bool bEnable
)

Configure whether wireframe rendering is enabled or not

Public function Virtual

void

 

SetMesh

(
    UE::Geometry::FDynamicMesh3&& Move...
)

UBaseDynamicMeshComponent API.

Public function Virtual

void

 

SetNumMaterials

(
    int32 NumMaterials
)

Public function Virtual

void

 

SetOverrideRenderMaterial

(
    UMaterialInterface* Material
)

Override rendering material support.

Public function Virtual

void

 

SetSecondaryBuffersVisibility

(
    bool bSetVisible
)

Show/Hide the secondary triangle buffers. Does not invalidate SceneProxy.

Public function Virtual

void

 

SetSecondaryRenderMaterial

(
    UMaterialInterface* Material
)

Secondary Render Buffers support.

Public function Virtual

void

 

SetShadowsEnabled

(
    bool bEnabled
)

API for changing Rendering settings.

Public function Virtual

void

 

SetViewModeOverridesEnabled

(
    bool bEnabled
)

Overridden from UMeshComponent

Name Description

Public function Virtual Const

FMaterialRel...

 

GetMaterialRelevance

(
    ERHIFeatureLevel::Type InFeatureLev...
)

Accesses the scene relevance information for the materials applied to the mesh.

Overridden from UPrimitiveComponent

Name Description

Public function Virtual Const

UMaterialInt...

 

GetMaterial

(
    int32 ElementIndex
)

Returns the material used by the element at the specified index

Public function Virtual Const

int32

 

GetNumMaterials()

Standard Component interfaces

Public function Virtual Const

void

 

GetUsedMaterials

(
    TArray< UMaterialInterface* > ...,
    bool bGetDebugMaterials
)

Retrieves the materials used in this component

Public function Virtual

void

 

SetMaterial

(
    int32 ElementIndex,
    UMaterialInterface* Material
)

Changes the material applied to an element of the mesh.

Overridden from UObject

Name Description

Public function Virtual

void

 

PostEditChangeProperty

(
    FPropertyChangedEvent& PropertyCha...
)

Called when a property on this object has been modified externally

Overridden from IMeshVertexCommandChangeTarget

Name Description

Public function Virtual

void

 

ApplyChange

(
    const FMeshVertexChange* Chang...,
    bool bRevert
)

Apply a vertex deformation change to the internal mesh (implements IMeshVertexCommandChangeTarget)

Overridden from IMeshCommandChangeTarget

Name Description

Public function Virtual

void

 

ApplyChange

(
    const FMeshChange* Change,
    bool bRevert
)

Apply a general mesh change to the internal mesh (implements IMeshCommandChangeTarget)

Overridden from IMeshReplacementCommandChangeTarget

Name Description

Public function Virtual

void

 

ApplyChange

(
    const FMeshReplacementChange* ...,
    bool bRevert
)

Apply a full mesh replacement change to the internal mesh (implements IMeshReplacementCommandChangeTarget)