UMeshVertexSculptTool

Mesh Vertex Sculpt Tool Class

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

References

Module

MeshModelingToolsExp

Header

/Engine/Plugins/Experimental/MeshModelingToolsetExp/Source/MeshModelingToolsExp/Public/MeshVertexSculptTool.h

Include

#include "MeshVertexSculptTool.h"

Syntax

UCLASS()
class UMeshVertexSculptTool : public UMeshSculptToolBase

Remarks

Mesh Vertex Sculpt Tool Class

Variables

Name Description

Protected variable

TSet< int32 >

 

AccumulatedTriangleROI

Protected variable

TUniquePtr< UE:...

 

ActiveGroupSet

Protected variable

FMeshVertexChan...

 

ActiveVertexChange

Public variable UProperty

TObjectPtr< UVe...

 

AlphaProperties

Protected variable

FDynamicMesh3

 

BaseMesh

Protected variable

TArray< int32 >

 

BaseMeshIndexBuffer

Protected variable

TFunction< bool...

 

BaseMeshQueryFunc

Protected variable

UE::Geometry::F...

 

BaseMeshSpatial

Protected variable

bool

 

bCachedFreezeTarget

Protected variable

bool

 

bHaveBrushAlpha

Public variable UProperty

TObjectPtr< UTe...

 

BrushAlpha

Protected variable

UE::Geometry::F...

 

BrushAlphaDimensions

Protected variable

UE::Geometry::T...

 

BrushAlphaValues

Protected variable

bool

 

bStampUpdatePending

Protected variable

bool

 

bTargetDirty

Whether normal needs recompute.

Protected variable

bool

 

bUndoUpdatePending

Protected variable UProperty

TObjectPtr< UDy...

 

DynamicMeshComponent

Protected variable

int32

 

InitialStrokeTriangleID

Protected variable

TArray< int >

 

NormalsBuffer

Protected variable

TArray< std::at...

 

NormalsFlags

Protected variable

UE::Geometry::F...

 

NormalsROIBuilder

Protected variable

UE::Geometry::F...

 

Octree

Protected variable

TArray< uint32 ...

 

OctreeUpdateTempBuffer

Protected variable

TArray< bool >

 

OctreeUpdateTempFlagBuffer

Protected variable

FDelegateHandle

 

OnDynamicMeshComponentChangedHandle

Protected variable

EMeshVertexScul...

 

PendingStampType

Protected variable UProperty

TObjectPtr< AIn...

 

PreviewMeshActor

Protected variable

TArray< int >

 

RangeQueryTriBuffer

Protected variable

TArray< FVector...

 

ROIPositionBuffer

Protected variable

TArray< FVector...

 

ROIPrevPositionBuffer

Protected variable

double

 

SculptMaxFixedHeight

Public variable UProperty

TObjectPtr< UVe...

 

SculptProperties

Properties that control sculpting

Protected variable

FRandomStream

 

StampRandomStream

Protected variable

TFuture< void >

 

StampUpdateOctreeFuture

Protected variable

TArray< int32 >

 

TriangleComponentIDs

Protected variable

TArray< int >

 

TriangleROIArray

Protected variable

UE::Geometry::F...

 

TriangleROIBuilder

Protected variable

TArray< UE::Geo...

 

TriangleROIInBuf

Protected variable

TFuture< bool >

 

UndoNormalsFuture

Protected variable

TFuture< bool >

 

UndoUpdateBaseMeshFuture

Protected variable

TFuture< bool >

 

UndoUpdateOctreeFuture

Protected variable

TArray< int >

 

VertexROI

Protected variable

UE::Geometry::F...

 

VertexROIBuilder

Functions

Name Description

Protected function

TFuture< voi...

 

ApplyStamp()

Protected function

void

 

BeginChange()

Protected function

void

 

EndChange()

Protected function

bool

 

GetBaseMeshNearest

(
    int32 VertexID,
    const FVector3d& Position,
    double SearchRadius,
    FVector3d& TargetPosOut,
    FVector3d& TargetNormalOut
)

Protected function

bool

 

IsHitTriangleBackFacing

(
    int32 TriangleID,
    const FDynamicMesh3* QueryMesh
)

Protected function

void

 

OnDynamicMeshComponentChanged

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

Realtime visualization

Protected function Const

double

 

SampleBrushAlpha

(
    const FSculptBrushStamp& Stamp,
    const FVector3d& Position
)

Public function Virtual

void

 

SetActiveBrushType

(
    int32 Identifier
)

Public function Virtual

void

 

SetActiveFalloffType

(
    int32 Identifier
)

Public function Virtual

void

 

SetRegionFilterType

(
    int32 Identifier
)

Protected function

void

 

UpdateBaseMesh

(
    const TSet< int32 >* TriangleR...
)

Public function Virtual

void

 

UpdateBrushAlpha

(
    UTexture2D* NewAlpha
)

Protected function

bool

 

UpdateBrushPosition

(
    const FRay& WorldRay
)

Protected function

void

 

UpdateBrushType

(
    EMeshVertexSculptBrushType BrushTyp...
)

Protected function

void

 

UpdateROI

(
    const FVector3d& BrushPos
)

Protected function

bool

 

UpdateStampPosition

(
    const FRay& WorldRay
)

Protected function

void

 

WaitForPendingStampUpdate()

Protected function

void

 

WaitForPendingUndoRedo()

Overridden from UMeshSculptToolBase

Name Description

Public function Virtual

void

 

DecreaseBrushSpeedAction()

Protected function Virtual

int32

 

FindHitSculptMeshTriangle

(
    const FRay3d& LocalRay
)

Protected function Virtual

int32

 

FindHitTargetMeshTriangle

(
    const FRay3d& LocalRay
)

Protected function Virtual

FDynamicMesh...

 

GetBaseMesh()

Protected function Virtual Const

const FDynam...

 

GetBaseMesh()

Protected function Virtual

UBaseDynamic...

 

GetSculptMeshComponent()

Subclass must implement this and return relevant rendering component

Public function Virtual

void

 

IncreaseBrushSpeedAction()

Client currently needs to implement these...

Protected function Virtual

void

 

InitializeIndicator()

UMeshSculptToolBase API.

Protected function Virtual

UPreviewMesh...

 

MakeBrushIndicatorMesh

(
    UObject* Parent,
    UWorld* World
)

Called by InitializeIndicator to create a mesh for the brush ROI indicator. Default is sphere.

Protected function Virtual

void

 

OnBeginStroke

(
    const FRay& WorldRay
)

Protected function Virtual

void

 

OnEndStroke()

Protected function Virtual Const

bool

 

ShowWorkPlane()

Protected function Virtual

void

 

UpdateHoverStamp

(
    const FFrame3d& StampFrame
)

Overridden from UInteractiveTool

Name Description

Public function Virtual Const

bool

 

HasAccept()

Public function Virtual Const

bool

 

HasCancel()

Public function Virtual

void

 

OnPropertyModified

(
    UObject* PropertySet,
    FProperty* Property
)

Automatically called by UInteractiveToolPropertySet.OnModified delegate to notify Tool of child property set changes

Public function Virtual

void

 

OnTick

(
    float DeltaTime
)

Action support/system

Public function Virtual

void

 

Setup()

Register InputBehaviors, etc

Public function Virtual

void

 

Shutdown

(
    EToolShutdownType ShutdownType
)

Called by ToolManager to shut down the Tool

Overridden from IHoverBehaviorTarget

Name Description

Public function Virtual

bool

 

OnUpdateHover

(
    const FInputDeviceRay& DevicePos
)

Update active hover sequence with new input position