className: UPolyEditCutFacesActivity

CameraState

type: FViewCameraStat...

SurfacePathMechanic

type: TObjectPtr<UCo...


className: UPolyEditCutProperties

module: MeshModelingTools

bSnapToVertices

type: bool

Orientation

type: EPolyEditCutPla...


code: virtual void ApplyExtrude()


description: IHoverBehaviorTargetimplementation.

code: virtual [FInputRayHit](API\Runtime\InteractiveToolsFramework\FInputRayHit) BeginHoverSequenceHitTest ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & PressPos )


code: virtual void BeginExtrude()


description: If true, calling End with EToolShutdownType::Accept will result in a valid completion of the activity. It's up to the tool whether to respect this or not, sinceEnd()should still end the activity.

code: virtual bool CanAccept() const


description: Force an end to the activity.

code: virtual [EToolActivityEndResult](API\Plugins\ModelingComponents\EToolActivityEndResult) End ( EToolShutdownType )


description: Check whether aStart()call will result in a success.

code: virtual bool CanStart() const


className: EPropertySetToUse

code: enum EPropertySetToUse { Extrude, Offset, PushPull, }


code: virtual void EndInternal()


code: FVector3d GetExtrudeDirection() const


description: Similar to a tool, this determines whether the activity prefers an accept/cancel option to be displayed (if true) vs a "complete".

code: virtual bool HasAccept() const


description: IClickBehaviorTargetAPI.

code: virtual [FInputRayHit](API\Runtime\InteractiveToolsFramework\FInputRayHit) IsHitByClick ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & ClickPos )


description: IDynamicMeshOperatorFactory.


description: Check whether the activity is running (though the tool can just check the result ofStart()itself).

code: virtual bool IsRunning() const


description: Initialize hover sequence at given position

code: virtual void OnBeginHover ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & DevicePos )


description: Notify Target that click ocurred

code: virtual void OnClicked ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & ClickPos )


description: Terminate active hover sequence

code: virtual void OnEndHover()


description: Update active hover sequence with new input position

code: virtual bool OnUpdateHover ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & DevicePos )


description: If the activity is running, should be called from the tool'sRender()

code: virtual void Render ( [IToolsContextRenderAPI](API\Runtime\InteractiveToolsFramework\IToolsContextRenderAPI) * RenderAPI )


description: IInteractiveToolActivity.

code: virtual void Setup ( [UInteractiveTool](API\Runtime\InteractiveToolsFramework\UInteractiveTool) * ParentTool )


description: Should be called during a tool's Shutdown()Should be called during a tool's Shutdown()

code: virtual void Shutdown ( EToolShutdownType ShutdownType )


description: Attempt to start the activity.


description: If the activity is running, should be called from the tool'sOnTick()

code: virtual void Tick ( float DeltaTime )


className: UPolyEditExtrudeActivity

ActivityContext

type: TObjectPtr<UPo...

ExtrudeHeightMechanic

type: TObjectPtr<UPl...

ExtrudeMode

description: Set to different values depending on whether we're using this activity on behalf of extrude, offset, or push/pull

NewSelectionGids

type: TArray< int32 >

PropertySetToUse

type: EPropertySetToU...

UVScaleFactor

type: float


className: UPolyEditExtrudeProperties

bShellsToSolids

description: Controls whether extruding an entire open-border patch should create a solid or an open shell

bUseColinearityForSettingBorderGroups

description: When extruding regions that touch the mesh border, assign the side groups (groups on the stitched side of the extrude) in a way that considers edge colinearity.

DirectionMode

type: EPolyEditExtrud...

description: How to move the vertices during the extrude

DistanceMode

description: How the extrude distance is set.

EditConditionHides

description: Distance to extrude.

meta

description: Direction in which to extrude.


description: IHoverBehaviorTarget.

code: virtual [FInputRayHit](API\Runtime\InteractiveToolsFramework\FInputRayHit) BeginHoverSequenceHitTest ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & PressPos )


code: virtual bool CanAccept() const


code: virtual bool CanStart() const


code: void ClearPreview ( bool bClearDrawnElements )


description: Update the preview unless we've already computed one with the same parameters (such as when snapping to the same vertex despite moving the mouse).

code: void ConditionallyUpdatePreview ( const [FGroupEdgeInserter::FGroupEdgeSplitPoint](API\Plugins\DynamicMesh\Operations\FGroupEdgeInserter\FGroupEdgeSplitPoint) & NewEndPoint, int32 NewEndTopologyID, bool bNewEndIsCorner, int32 NewCommonGroupID, int32 NewBoundaryIndex )


description: Force an end to the activity.

code: virtual [EToolActivityEndResult](API\Plugins\ModelingComponents\EToolActivityEndResult) End ( EToolShutdownType )


description: Expires the tool-associated changes in the undo/redo stack. The ComponentTarget changes will stay (we want this).

code: void ExpireChanges()


className: EState

code: enum EState { GettingStart, GettingEnd, WaitingForInsertComplete, }


code: void GetCornerTangent ( int32 CornerID, int32 GroupID, int32 BoundaryIndex, FVector3d & TangentOut )


code: bool GetHoveredItem ( const FRay & WorldRay, [FGroupEdgeInserter::FGroupEdgeSplitPoint](API\Plugins\DynamicMesh\Operations\FGroupEdgeInserter\FGroupEdgeSplitPoint) & PointOut, int32 & TopologyElementIDOut, bool & bIsCornerOut, FVector3d & PositionOut, FRay3d * LocalRayOut )


description: IClickBehaviorTarget.

code: virtual [FInputRayHit](API\Runtime\InteractiveToolsFramework\FInputRayHit) IsHitByClick ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & ClickPos )


code: virtual bool IsRunning() const


description: IDynamicMeshOperatorFactory.


description: Notify Target that click ocurred

code: virtual void OnClicked ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & ClickPos )


description: Terminate active hover sequence

code: virtual void OnEndHover()


code: virtual void OnPropertyModified ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * PropertySet, [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * Property )


code: virtual bool OnUpdateHover ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & DevicePos )


description: IInteractiveToolActivity.

code: virtual void Setup ( [UInteractiveTool](API\Runtime\InteractiveToolsFramework\UInteractiveTool) * ParentTool )


code: virtual void Shutdown ( EToolShutdownType ShutdownType )


code: virtual void OnBeginHover ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & DevicePos )


description: Attempt to start the activity.


code: virtual void Tick ( float DeltaTime )


code: bool TopologyHitTest ( const FRay & WorldRay, FVector3d & RayPositionOut, FRay3d * LocalRayOut )


code: void UpdateComputeInputs()


code: UPolyEditInsertEdgeActivity()


className: UPolyEditInsertEdgeActivity

description: Interactive activity for inserting a group edge into a mesh.

ComputeStartMesh

type: TSharedPtr< con...

description: Safe inputs for the background compute to use, untouched by undo/redo/other CurrentMesh updates.

EndPoint

type: FGroupEdgeInser...

ExistingEdgesRenderer

type: FToolDataVisual...

LastEndPointWorldRay

type: FRay

LatestOpChangedTids

type: TSharedPtr<TSe...

PreviewEdges

type: TArray< TPair< ...

PreviewPoints

type: TArray< FVector...

Settings

type: TObjectPtr<UGr...

StartPoint

description: Inputs from user interaction:

TargetTransform

type: FTransform

ToolState

type: EState

description: State control:

TopologySelector

type: TSharedPtr<FMe...

TopologySelectorSettings

type: FMeshTopologySe...


code: virtual void Render ( [IToolsContextRenderAPI](API\Runtime\InteractiveToolsFramework\IToolsContextRenderAPI) * RenderAPI )


description: IHoverBehaviorTarget.

code: virtual [FInputRayHit](API\Runtime\InteractiveToolsFramework\FInputRayHit) BeginHoverSequenceHitTest ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & PressPos )


description: If true, calling End with EToolShutdownType::Accept will result in a valid completion of the activity. It's up to the tool whether to respect this or not, sinceEnd()should still end the activity.

code: virtual bool CanAccept() const


description: Check whether aStart()call will result in a success.

code: virtual bool CanStart() const


description: Update the preview unless we've already computed one with the same parameters (such as when using "even" or non-interactive parameter setting)

code: void ConditionallyUpdatePreview ( int32 NewGroupID, double * NewInputLength )


description: Force an end to the activity.

code: virtual [EToolActivityEndResult](API\Plugins\ModelingComponents\EToolActivityEndResult) End ( EToolShutdownType )


code: [FInputRayHit](API\Runtime\InteractiveToolsFramework\FInputRayHit) HitTest ( const FRay & WorldRay )


description: IClickBehaviorTarget.

code: virtual [FInputRayHit](API\Runtime\InteractiveToolsFramework\FInputRayHit) IsHitByClick ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & ClickPos )


description: Check whether the activity is running (though the tool can just check the result ofStart()itself).

code: virtual bool IsRunning() const


description: IDynamicMeshOperatorFactory.


description: Initialize hover sequence at given position


description: Notify Target that click ocurred

code: virtual void OnClicked ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & ClickPos )


description: Terminate active hover sequence

code: virtual void OnEndHover()


code: virtual void OnPropertyModified ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * PropertySet, [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * Property )


description: Update active hover sequence with new input position

code: virtual bool OnUpdateHover ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & DevicePos )


description: IInteractiveToolActivity.

code: virtual void Setup ( [UInteractiveTool](API\Runtime\InteractiveToolsFramework\UInteractiveTool) * ParentTool )


description: Attempt to start the activity.


code: virtual void Tick ( float DeltaTime )


code: virtual void Shutdown ( EToolShutdownType ShutdownType )


code: void UpdateComputeInputs()


code: bool UpdateHoveredItem ( const FRay & WorldRay )


code: UPolyEditInsertEdgeLoopActivity()


className: UPolyEditInsertEdgeLoopActivity

description: Interactive activity for inserting (group) edge loops into a mesh.

ActivityContext

type: TObjectPtr<UPo...

bIsRunning

type: bool

bLastComputeSucceeded

description: Copied over on op completion.

bWaitingForInsertionCompletion

description: On valid clicks, we wait to finish the background op and apply it before taking more input.

CameraState

type: FViewCameraStat...

InputGroupEdgeID

description: Taken from user interaction, read as inputs by the op factory.

InteractiveInputLength

type: double

ProblemTopologyEdges

description: Used to highlight problematic topology (non-quad groups) when it stops a loop.

Settings

type: TObjectPtr<UEd...


description: IHoverBehaviorTargetimplementation.

code: virtual [FInputRayHit](API\Runtime\InteractiveToolsFramework\FInputRayHit) BeginHoverSequenceHitTest ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & PressPos )


code: virtual bool CanAccept() const


description: Force an end to the activity.


code: virtual bool CanStart() const


description: IClickBehaviorTargetAPI.


description: Notify Target that click ocurred


code: virtual void OnBeginHover ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & DevicePos )


description: If the activity is running, should be called from the tool'sRender()

code: virtual void Render ( [IToolsContextRenderAPI](API\Runtime\InteractiveToolsFramework\IToolsContextRenderAPI) * RenderAPI )


description: Terminate active hover sequence


className: UPolyEditInsetOutsetProperties

bBoundaryOnly

description: Controls whether outset operation will move interior vertices as well as border vertices

bReproject

description: When insetting, determines whether vertices in inset region should be projected back onto input surface

meta

description: Amount of smoothing applied to outset boundary


className: UPolyEditInsetOutsetActivity

CurveDistMechanic

type: TObjectPtr<USp...

UVScaleFactor

type: float


className: UPolyEditOffsetProperties

bShellsToSolids

description: Controls whether offsetting an entire open-border patch should create a solid or an open shell

bUseColinearityForSettingBorderGroups

description: When offsetting regions that touch the mesh border, assign the side groups (groups on the stitched side of the extrude) in a way that considers edge colinearity.

DirectionMode

type: EPolyEditOffset...

description: Which way to move vertices during the offset

DistanceMode

type: EPolyEditExtrud...

description: How the offset distance is set.

EditCondition

description: What axis to measure the extrusion distance along.

meta

description: Offset distance.


description: IInteractiveToolActivity.


description: Should be called during a tool's Shutdown()Should be called during a tool's Shutdown()


description: Attempt to start the activity.


description: If the activity is running, should be called from the tool'sOnTick()


className: UPolyEditPlanarProjectionUVActivity

SurfacePathMechanic

type: TObjectPtr<UCo...


code: virtual void GenerateMesh ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) * OutMesh ) const


className: UPolyEditSetUVProperties


className: UPolyEditPushPullProperties

DirectionMode

type: EPolyEditPushPu...

DistanceMode

description: How the offset distance is set.

meta

description: Offset distance.


className: UAddArrowPrimitiveTool

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAddArrowPrimitiveTool : public [UAddPrimitiveTool](API\Plugins\MeshModelingTools\UAddPrimitiveTool)


code: UAddBoxPrimitiveTool ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UAddBoxPrimitiveTool

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAddBoxPrimitiveTool : public [UAddPrimitiveTool](API\Plugins\MeshModelingTools\UAddPrimitiveTool)


code: UAddConePrimitiveTool ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UAddConePrimitiveTool

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAddConePrimitiveTool : public [UAddPrimitiveTool](API\Plugins\MeshModelingTools\UAddPrimitiveTool)


code: UAddArrowPrimitiveTool ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


code: UAddCylinderPrimitiveTool ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


description: Register default primary-button-click InputBehaviors

code: virtual void Setup()


code: UAddDiscPrimitiveTool ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UAddDiscPrimitiveTool

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAddDiscPrimitiveTool : public [UAddPrimitiveTool](API\Plugins\MeshModelingTools\UAddPrimitiveTool)


description: Do hover hit-test


className: UAddCylinderPrimitiveTool

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAddCylinderPrimitiveTool : public [UAddPrimitiveTool](API\Plugins\MeshModelingTools\UAddPrimitiveTool)


description: true if this Tool is currently in a state where it can be Accepted. This may be false if for example there was an error in the Tool.


code: enum EState { PlacingPrimitive, AdjustingSettings, }


description: Makes the change to the object

code: virtual void Apply &40; UObject &42; Object &41;


description: Reverts change to the object

code: virtual void Revert &40; UObject &42; Object &41;


code: FStateChange &40; const FTransform & MeshTransformIn &41;


description: Describes this change (for debugging)

code: virtual FString ToString&40;&41; const


className: FStateChange

description: Used to make the initial placement of the mesh undoable.

code: class FStateChange : public [FToolCommandChange](API\Runtime\InteractiveToolsFramework\FToolCommandChange)


code: virtual void GenerateAsset()


code: virtual void GenerateMesh ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) * OutMesh ) const


description: the current Focus Box

code: virtual FBox GetWorldSpaceFocusBox()


description: true if a Focus Point was found, can return false if (eg) the ray missed the target objects

code: virtual bool GetWorldSpaceFocusPoint ( const FRay & WorldRay, FVector & PointOut )


description: true if this Tool support being Accepted, ie calling Shutdown(EToolShutdownType::Accept)

code: virtual bool HasAccept() const


description: true if this Tool support being Cancelled, ie calling Shutdown(EToolShutdownType::Cancel)

code: virtual bool HasCancel() const


description: Test if the Target is hit at this 2D position / 3D ray

code: virtual [FInputRayHit](API\Runtime\InteractiveToolsFramework\FInputRayHit) IsHitByClick ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & ClickPos )


description: Initialize hover sequence at given position

code: virtual void OnBeginHover ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & DevicePos )


description: USingleClickTool.

code: virtual void OnClicked ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & ClickPos )


description: Terminate active hover sequence

code: virtual void OnEndHover()


description: Automatically called byUInteractiveToolPropertySet.OnModifieddelegate to notify Tool of child property set changes

code: virtual void OnPropertyModified ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * PropertySet, [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * Property )


description: Update active hover sequence with new input position

code: virtual bool OnUpdateHover ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & DevicePos )


description: Allow the Tool to do any custom drawing (ie via PDI/RHI)

code: virtual void Render ( [IToolsContextRenderAPI](API\Runtime\InteractiveToolsFramework\IToolsContextRenderAPI) * RenderAPI )


code: void SetState ( [EState](API\Plugins\MeshModelingTools\UAddPrimitiveTool\EState) NewState )


code: virtual void Setup()


code: virtual void SetWorld ( [UWorld](API\Runtime\Engine\Engine\UWorld) * World )


description: IInteractiveToolCameraFocusAPIimplementation.


description: Called by ToolManager to shut down the Tool

code: virtual void Shutdown ( EToolShutdownType ShutdownType )


description: true if the implementation can provide a Focus Point


code: void UpdatePreviewMesh() const


code: void UpdatePreviewPosition ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & ClickPos )


code: UAddPrimitiveTool ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & )


className: UAddPrimitiveTool

description: Base tool to create primitives

AssetName

type: FString

DragAlignmentMechanic

type: TObjectPtr<UDr...

MaterialProperties

type: TObjectPtr<UNe...

OutputTypeProperties

type: TObjectPtr<UCr...

description: Property set for type of output object (StaticMesh, Volume, etc)

PreviewMesh

type: TObjectPtr<UPr...

TargetWorld

type: UWorld*


description:
Create a new instance of this builder's Tool
a new instance of the Tool, or nullptr on error/failure

code: virtual [UInteractiveTool](API\Runtime\InteractiveToolsFramework\UInteractiveTool) * BuildTool ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


className: EMakeMeshShapeType

code: enum EMakeMeshShapeType { Box, Cylinder, Cone, Arrow, Rectangle, Disc, Torus, Sphere, Stairs, }


description:
Check if, given the current scene state, a new instance of this builder's Tool can be created
true if a new Tool instance can be created

code: virtual bool CanBuildTool ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


className: UAddPrimitiveToolBuilder

description: Builder

ShapeType

type: EMakeMeshShapeT...


code: virtual void GenerateMesh ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) * OutMesh ) const


code: UAddRectanglePrimitiveTool ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UAddRectanglePrimitiveTool

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAddRectanglePrimitiveTool : public [UAddPrimitiveTool](API\Plugins\MeshModelingTools\UAddPrimitiveTool)


code: UAddSpherePrimitiveTool ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UAddSpherePrimitiveTool

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAddSpherePrimitiveTool : public [UAddPrimitiveTool](API\Plugins\MeshModelingTools\UAddPrimitiveTool)


code: UAddStairsPrimitiveTool ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UAddStairsPrimitiveTool

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAddStairsPrimitiveTool : public [UAddPrimitiveTool](API\Plugins\MeshModelingTools\UAddPrimitiveTool)


code: UAddTorusPrimitiveTool ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UAddTorusPrimitiveTool

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAddTorusPrimitiveTool : public [UAddPrimitiveTool](API\Plugins\MeshModelingTools\UAddPrimitiveTool)


code: void BuildCombinedMaterialSet ( [TArray](API\Runtime\Core\Containers\TArray)< [UMaterialInterface](API\Runtime\Engine\Materials\UMaterialInterface) * > & NewMaterialsOut, [TArray](API\Runtime\Core\Containers\TArray)< [TArray](API\Runtime\Core\Containers\TArray)< int32 >> & MaterialIDRemapsOut )


code: virtual bool HasAccept() const


code: virtual void OnShutdown ( EToolShutdownType ShutdownType )


code: virtual bool HasCancel() const


code: virtual void SetDuplicateMode ( bool bDuplicateMode )


description: Called by ToolManager to initialize the ToolafterToolBuilder::BuildTool() has been called

code: virtual void Setup()


code: void UpdateExistingAsset()


className: UCombineMeshesTool

description: Simple tool to combine multiple meshes into a single mesh asset

bDuplicateMode

type: bool

HandleSourceProperties

type: TObjectPtr<UOn...


description:
Check if, given the current scene state, a new instance of this builder's Tool can be created
true if mesh sources can be found in the active selection

code: virtual bool CanBuildTool ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


description: new Tool instance. Override this in subclasses to build a different Tool class type

code: virtual [UMultiSelectionMeshEditingTool](API\Plugins\ModelingComponents\BaseTools\UMultiSelectionMeshEditingTool) * CreateNewTool ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


className: UCombineMeshesToolBuilder


className: UCombineMeshesToolProperties

description: Common properties

EditCondition

description: Defines the object the tool output is written to.

OutputExistingName

type: NoResetToDefaul...

OutputWriteTo

type: HideEditConditi...


description: UBaseCreateFromSelectedToolAPI - subclasses typically implement these functions After preview is created, this is called to convert inputs and set preview materials (grouped together because materials may come from inputs) Subclasses should always implement this.

code: virtual void ConvertInputsAndSetPreviewMaterials ( bool bSetPreviewMesh )


description: Return the name of the action to be used in the Undo stack

code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetActionName() const


description: Return the name to be used for generated assets. Note: Asset name will be prefixed by source actor name if only actor was selected.

code: virtual [FString](API\Runtime\Core\Containers\FString) GetCreatedAssetName() const


description: Which of the transform gizmos to hide, or -1 if all gizmos can be shown.

code: virtual int32 GetHiddenGizmoIndex() const


description: IDynamicMeshOperatorFactory API.


description: Automatically called byUInteractiveToolPropertySet.OnModifieddelegate to notify Tool of child property set changes

code: virtual void OnPropertyModified ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * PropertySet, [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * Property )


description: Overload to save any added properties in the subclasses; called on shutdown

code: virtual void SaveProperties()


description: Optional overload to set callbacks on preview, e.g. to visualize results; called after preview is created.

code: virtual void SetPreviewCallbacks()


description: Overload to initialize any added properties in subclasses; called during setup

code: virtual void SetupProperties()


description: Update the material of ghostly preview meshes (used to show trimming or subtracting surface)

code: void UpdatePreviewsMaterial()


code: void UpdateVisualization()


description: Update visibility of ghostly preview meshes (used to show trimming or subtracting surface)

code: void UpdatePreviewsVisibility()


className: UCSGMeshesTool

description: Simple Mesh Plane Cutting Tool

CreatedBoundaryEdges

type: TArray< int >

description: For visualization of any errors in the currently-previewed CSG operation

CSGProperties

type: TObjectPtr<UCS...

DrawnLineSet

type: TObjectPtr<ULi...

OriginalDynamicMeshes

type: TArray<TShared...

OriginalMeshPreviews

type: TArray<TObject...

PreviewsGhostMaterial

type: TObjectPtr<UMa...

description: Material used to show the otherwise-invisible cutting/trimming mesh.

TrimProperties

type: TObjectPtr<UTr...


code: virtual int32 MinComponentsSupported() const


code: virtual [TOptional](API\Runtime\Core\IO\TOptional)< int32 > MaxComponentsSupported() const


className: UCSGMeshesToolProperties

description: Color of the translucent subtracted mesh |

bShowNewBoundaries

description: Show boundary edges created by the Boolean operation, which might happen due to numerical errors

bShowSubtractedMesh

description: Show a translucent version of the subtracted mesh, to help visualize geometry that is being removed

bTryCollapseEdges

description: Try to collapse extra edges created by the Boolean operation

bTryFixHoles

description: Try to fill holes created by the Boolean operation, e.g. due to numerical errors

bUseFirstMeshMaterials

description: If true, only the first mesh will keep its material assignments, and all other faces will have the first material assigned

EditCondition

description: Opacity of the translucent subtracted mesh


className: UCSGMeshesToolBuilder


code: virtual void OnShutdown ( EToolShutdownType ShutdownType )


className: UCutMeshWithMeshTool

description: UCutMeshWithMeshToolcuts an input mesh into two pieces based on a second input mesh. Essentially this just both a Boolean Subtract and a Boolean Intersection. However doing those as two separate operations involves quite a few steps, so this Tool does it in a single step and with some improved efficiency.

CutProperties

type: TObjectPtr<UCu...

OriginalCuttingMesh

type: TSharedPtr<FDy...


description: new Tool instance. Override this in subclasses to build a different Tool class type


className: UCutMeshWithMeshToolBuilder


code: virtual CanAccept() const


className: UCutMeshWithMeshToolProperties

description: Standard properties of the CutMeshWithMesh operation

WindingThreshold

type: float

description: Threshold to determine whether a triangle in one mesh is inside or outside of the other


className: FarDrawPlaneThreshold

code: static constexpr double FarDrawPlaneThreshold = 100 * 100;


code: virtual HasAccept() const


code: virtual HasCancel() const


code: virtual OnPointDeletionKeyPress()


description: Automatically called byUInteractiveToolPropertySet.OnModifieddelegate to notify Tool of child property set changes

code: virtual OnPropertyModified()


description: Allow the Tool to do any necessary processing on Tick

code: virtual OnTick()


description: Allow the Tool to do any custom drawing (ie via PDI/RHI)

code: virtual Render()


description: Override this function to register the set of Actions this Tool supports, usingFInteractiveToolActionSet::RegisterAction. Note that for the actions to be triggered, you will also need to add corresponding registration per tool  see Engine\Plugins\Editor\ModelingToolsEditorMode\Source\ModelingToolsEditorMode\Public\ModelingToolsActions.h for examples

code: virtual RegisterActions()


description: Called by ToolManager to initialize the ToolafterToolBuilder::BuildTool() has been called

code: virtual Setup()


description: Called by ToolManager to shut down the Tool

code: virtual Shutdown()


description: Uses the settings currently stored in the properties object to update the revolution axis.

code: UpdateRevolutionAxis()


className: UDrawAndRevolveTool

description: Draws a profile curve and revolves it around an axis.


description: Create a new instance of this builder's Tool

code: virtual BuildTool() const


description: Check if, given the current scene state, a new instance of this builder's Tool can be created

code: virtual CanBuildTool() const


className: UDrawAndRevolveToolBuilder


className: AngleSnapModifier

code: static constexpr int AngleSnapModifier = 2;


code: virtual void AppendVertex ( const FVector3d & Vertex )


code: virtual void ApplyUndoPoints ( const [TArray](API\Runtime\Core\Containers\TArray)< FVector3d > & ClickPointsIn, const [TArray](API\Runtime\Core\Containers\TArray)< FVector3d > & PolygonVerticesIn )


code: virtual void BeginInteractiveExtrude()


description: true if this Tool is currently in a state where it can be Accepted. This may be false if for example there was an error in the Tool.

code: virtual bool CanAccept() const


description:
Test if target would like to begin sequence based on this click. Gets checked both on mouse down and mouse up.
true if target wants to begin sequence

code: virtual bool CanBeginClickSequence ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & ClickPos )


code: bool CheckInCurve ( int32 Timestamp ) const


description: Whether to allow the draw plane to be updated in the UI returns false if there is an in-progress shape relying on the current draw plane

code: bool AllowDrawPlaneUpdates()


code: virtual void EmitCurrentPolygon()


code: virtual void EndInteractiveExtrude()


code: virtual bool FindDrawPlaneHitPoint ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & ClickPos, FVector3d & HitPosOut )


code: void GenerateFixedPolygon ( const [TArray](API\Runtime\Core\Containers\TArray)< FVector3d > & FixedPoints, [TArray](API\Runtime\Core\Containers\TArray)< FVector3d > & VerticesOut, [TArray](API\Runtime\Core\Containers\TArray)< [TArray](API\Runtime\Core\Containers\TArray)< FVector3d >> & HolesVerticesOut )


description: Generate extruded meshes. Returns true on success.

code: bool GeneratePolygonMesh ( const [TArray](API\Runtime\Core\Containers\TArray)< FVector3d > & Polygon, const [TArray](API\Runtime\Core\Containers\TArray)< [TArray](API\Runtime\Core\Containers\TArray)< FVector3d >> & PolygonHoles, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) * ResultMeshOut, [UE::Geometry::FFrame3d](API\Runtime\GeometryCore\FFrame3d_1) & WorldFrameOut, bool bIncludePreviewVtx, double ExtrudeDistance, bool bExtrudeSymmetric )


description: true if this Tool support being Accepted, ie calling Shutdown(EToolShutdownType::Accept)

code: virtual bool HasAccept() const


code: void GetPolygonParametersFromFixedPoints ( const [TArray](API\Runtime\Core\Containers\TArray)< FVector3d > & FixedPoints, FVector2d & FirstReferencePt, FVector2d & BoxSize, double & YSign, double & AngleRad )


description: true if this Tool support being Cancelled, ie calling Shutdown(EToolShutdownType::Cancel)

code: virtual bool HasCancel() const


className: IgnoreSnappingModifier

description: Flags used to identify modifier keys/buttons

code: static constexpr int IgnoreSnappingModifier = 1;


description: Notify Target about the first click in the sequence.

code: virtual void OnBeginClickSequence ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & ClickPos )


description: Notify Target device position has changed but a click sequence hasn't begun yet (eg for interactive previews)

code: virtual void OnBeginSequencePreview ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & ClickPos )


description:
Notify Target about next click in sqeuence
false if Target wants to terminate sequence

code: virtual bool OnNextSequenceClick ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & ClickPos )


description: Notify Target device position has changed but a click hasn't ocurred yet (eg for interactive previews)

code: virtual void OnNextSequencePreview ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & ClickPos )


description: Notify Target that click sequence has been explicitly terminated (eg by escape key, cancel tool, etc). Also called if sequence is terminated from querying target withRequestAbortClickSequence().

code: virtual void OnTerminateClickSequence()


description: Allow the Tool to do any necessary processing on Tick

code: virtual void OnTick ( float DeltaTime )


description: Notify target of current modifier state

code: virtual void OnUpdateModifierState ( int ModifierID, bool bIsOn )


description: Called on PlaneMechanic.OnPlaneChanged

code: void PlaneTransformChanged()


description: Override this function to register the set of Actions this Tool supports, usingFInteractiveToolActionSet::RegisterAction. Note that for the actions to be triggered, you will also need to add corresponding registration per tool  see Engine\Plugins\Editor\ModelingToolsEditorMode\Source\ModelingToolsEditorMode\Public\ModelingToolsActions.h for examples

code: virtual void RegisterActions ( [FInteractiveToolActionSet](API\Runtime\InteractiveToolsFramework\FInteractiveToolActionSet) & ActionSet )


description: Allow the Tool to do any custom drawing (ie via PDI/RHI)

code: virtual void Render ( [IToolsContextRenderAPI](API\Runtime\InteractiveToolsFramework\IToolsContextRenderAPI) * RenderAPI )


description: Target overrides this and returns true if it wants to abort click sequence. Behavior checks every update and if this ever returns true, terminates sequence


description: Polygon drawing functions

code: virtual void ResetPolygon()


description: Called by ToolManager to initialize the ToolafterToolBuilder::BuildTool() has been called

code: virtual void Setup()


code: virtual void SetWorld ( [UWorld](API\Runtime\Engine\Engine\UWorld) * World )


code: void ShowExtrudeMessage()


description: User feedback messages

code: void ShowStartupMessage()


description: Called by ToolManager to shut down the Tool

code: virtual void Shutdown ( EToolShutdownType ShutdownType )


code: void UndoCurrentOperation ( const [TArray](API\Runtime\Core\Containers\TArray)< FVector3d > & ClickPointsIn, const [TArray](API\Runtime\Core\Containers\TArray)< FVector3d > & PolygonVerticesIn )


code: virtual void UpdatePreviewVertex ( const FVector3d & PreviewVertex )


code: void UpdateLivePreview()


description: Can close poly if current segment intersects existing segment

code: bool UpdateSelfIntersection()


className: UDrawPolygonTool

description: This tool allows the user to draw and extrude 2D polygons

bHaveSurfaceHit

description: Only used when SnapSettings.bSnapToSurfaces = true

CameraState

type: FViewCameraStat...

DragAlignmentMechanic

type: TObjectPtr<UDr...

FixedPolygonClickPoints

type: TArray< FVector...

HeightMechanic

type: TObjectPtr<UPl...

LastSnapGeometry

type: ToolSceneQuerie...

MaterialProperties

type: TObjectPtr<UNe...

OutputTypeProperties

type: TObjectPtr<UCr...

description: Property set for type of output object (StaticMesh, Volume, etc)

PlaneMechanic

type: TObjectPtr<UCo...

PolygonHolesVertices

type: TArray<TArray<...

description: Vertices of holes in current preview polygon

PolygonProperties

description: Properties that control polygon generation exposed to user via details view

PolygonVertices

description: Vertices of current preview polygon

PreviewMesh

type: TObjectPtr<UPr...

PreviewVertex

description: Last vertex of polygon that is actively being updated as input device is moved

SelfIntersectSegmentIdx

type: int


description:
Create a new instance of this builder's Tool
a new instance of the Tool, or nullptr on error/failure

code: virtual [UInteractiveTool](API\Runtime\InteractiveToolsFramework\UInteractiveTool) * BuildTool ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


description:
Check if, given the current scene state, a new instance of this builder's Tool can be created
true if a new Tool instance can be created

code: virtual bool CanBuildTool ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


className: UDrawPolygonToolBuilder


className: UDrawPolygonToolSnapProperties

bEnableSnapping

type: bool

description: Enables additional snapping controls. If false, all snapping is disabled.

bSnapToAxes

description: Snap to axes of the drawing grid and axes relative to the last segment.

bSnapToEdges

description: Snap to edges in other meshes. Requires Enable Snapping to be true.

bSnapToLengths

description: When snapping to axes, also try to snap to the length of an existing segment in the polygon.

bSnapToSurfaces

description: Snap to surfaces of existing objects.

bSnapToVertices

description: Snap to vertices in other meshes. Requires Enable Snapping to be true.

EditCondition

description: Offset for snap point on the surface of an existing object in the direction of the surface normal.


code: UDrawPolygonToolStandardProperties()


className: UDrawPolygonToolStandardProperties

bShowGridGizmo

description: If true, shows a gizmo to manipulate the additional grid used to draw the polygon on

Distance

description: Distance between the last clicked point and the current point

description: Size of secondary features, e.g. the rounded corners of a rounded rectangle, as fraction of the overall shape size

ExtrudeMode

type: EDrawPolygonExt...

description: If and how the drawn polygon gets extruded

meta

description: Allow freehand drawn polygons to self-intersect

PolygonDrawMode

type: EDrawPolygonDra...

description: Type of polygon to draw in the viewport


description:
Check if, given the current scene state, a new instance of this builder's Tool can be created
true if a single mesh source can be found in the active selection


className: UEditMeshPolygonsActionModeToolBuilder

StartupAction

type: EEditMeshPolygo...


description: Called by BuildTool to configure the Tool with the input MeshSource based on the SceneState

code: virtual void InitializeNewTool ( [USingleTargetWithSelectionTool](API\Plugins\ModelingComponents\BaseTools\USingleTargetWithSelectionTool) * Tool, const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


code: void ApplyBridgeEdges()


description: IMeshVertexCommandChangeTarget.

code: virtual void ApplyChange ( const [FMeshVertexChange](API\Runtime\GeometryFramework\Changes\FMeshVertexChange) * Change, bool bRevert )


code: void ApplyCollapseEdge()


code: void ApplyCollapseSingleEdge()


code: void ApplyFlipNormals()


code: void ApplyFlipSingleEdge()


code: void ApplyPokeSingleFace()


code: void ApplyRecalcNormals()


code: void ApplyRegenerateExtraCorners()


code: void ApplyRetriangulate()


code: void ApplySimplifyAlongEdges()


code: void ApplySplitSingleEdge()


code: void ApplyStraightenEdges()


code: void BeginDeformerChange()


code: bool BeginMeshBoundaryEdgeEditChange ( bool bOnlySimple )


code: bool BeginMeshEdgeEditChange()


code: bool BeginMeshEdgeEditChange ( [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< bool(int32)> GroupEdgeIDFilterFunc )


code: bool BeginMeshFaceEditChange()


description: true if the implementor of this API can currently consume an Accept action

code: virtual bool CanCurrentlyNestedAccept()


description: true if the implementor of this API can currently consume a Cancel action

code: virtual bool CanCurrentlyNestedCancel()


code: void ComputeUpdate_Gizmo()


description: Allow the Tool to do any custom screen space drawing

code: virtual void DrawHUD ( [FCanvas](API\Runtime\Engine\FCanvas) * Canvas, [IToolsContextRenderAPI](API\Runtime\InteractiveToolsFramework\IToolsContextRenderAPI) * RenderAPI )


description: Emit an undoable start of an activity.

code: void EmitActivityStart ( const [FText](API\Runtime\Core\Internationalization\FText) & TransactionLabel )


description: Emit an undoable change to CurrentMesh and update related structures (preview, spatial, etc)

code: void EmitCurrentMeshChangeAndUpdate ( const [FText](API\Runtime\Core\Internationalization\FText) & TransactionLabel, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [UE::Geometry::FDynamicMeshChange](API\Runtime\GeometryCore\DynamicMesh\FDynamicMeshChange) > MeshChangeIn, const [UE::Geometry::FGroupTopologySelection](API\Plugins\DynamicMesh\FGroupTopologySelection) & OutputSelection )


code: void EnableTriangleMode()


code: void EndCurrentActivity ( EToolShutdownType ShutdownType )


code: void EndDeformerChange()


className: EPreviewMaterialType

code: enum EPreviewMaterialType { SourceMaterials, PreviewMaterial, UVMaterial, }


description:
Called by Editor levels to tell the implementor (eg Tool) to execute a nested Accept action
true if the implementor consumed the Accept action


description:
Called by Editor levels to tell the implementor (eg Tool) to execute a nested Cancel action
true if the implementor consumed the Cancel action


className: FSelectedEdge

code: struct FSelectedEdge

EdgeIDs

type: TArray< int32 >


description: IInteractiveToolCameraFocusAPIimplementation.

code: virtual FBox GetWorldSpaceFocusBox()


description: true if a Focus Point was found, can return false if (eg) the ray missed the target objects

code: virtual bool GetWorldSpaceFocusPoint ( const FRay & WorldRay, FVector & PointOut )


description: true if this Tool support being Accepted, ie calling Shutdown(EToolShutdownType::Accept)

code: virtual bool HasAccept() const


description: true if this Tool support being Cancelled, ie calling Shutdown(EToolShutdownType::Cancel)

code: virtual bool HasCancel() const


description: IToolActivityHost.

code: virtual void NotifyActivitySelfEnded ( [UInteractiveToolActivity](API\Plugins\ModelingComponents\UInteractiveToolActivity) * Activity )


code: void OnBeginGizmoTransform ( [UTransformProxy](API\Runtime\InteractiveToolsFramework\BaseGizmos\UTransformProxy) * Proxy )


code: void OnEndGizmoTransform ( [UTransformProxy](API\Runtime\InteractiveToolsFramework\BaseGizmos\UTransformProxy) * Proxy )


code: void OnGizmoTransformChanged ( [UTransformProxy](API\Runtime\InteractiveToolsFramework\BaseGizmos\UTransformProxy) * Proxy, FTransform Transform )


code: void OnSelectionModifiedEvent()


code: virtual void OnShutdown ( EToolShutdownType ShutdownType )


description: Allow the Tool to do any necessary processing on Tick

code: virtual void OnTick ( float DeltaTime )


description: Used by undo/redo

code: void RebuildTopologyWithGivenExtraCorners ( const [TSet](API\Runtime\Core\Containers\TSet)< int32 > & Vids )


description: Override this function to register the set of Actions this Tool supports, usingFInteractiveToolActionSet::RegisterAction. Note that for the actions to be triggered, you will also need to add corresponding registration per tool  see Engine\Plugins\Editor\ModelingToolsEditorMode\Source\ModelingToolsEditorMode\Public\ModelingToolsActions.h for examples

code: virtual void RegisterActions ( [FInteractiveToolActionSet](API\Runtime\InteractiveToolsFramework\FInteractiveToolActionSet) & ActionSet )


code: virtual void RequestAction ( [EEditMeshPolygonsToolActions](API\Plugins\MeshModelingTools\EEditMeshPolygonsToolActions) ActionType )


description: Allow the Tool to do any custom drawing (ie via PDI/RHI)

code: virtual void Render ( [IToolsContextRenderAPI](API\Runtime\InteractiveToolsFramework\IToolsContextRenderAPI) * RenderAPI )


code: virtual void RequestSingleShotAction ( [EEditMeshPolygonsToolActions](API\Plugins\MeshModelingTools\EEditMeshPolygonsToolActions) ActionType )


description: Automatically called byUInteractiveToolPropertySet.OnModifieddelegate to notify Tool of child property set changes

code: virtual void OnPropertyModified ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * PropertySet, [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * Property )


code: void ResetUserMessage()


code: void SetActionButtonsVisibility ( bool bVisible )


code: void SetToSelectionModeInterface()


description: Called by ToolManager to initialize the ToolafterToolBuilder::BuildTool() has been called

code: virtual void Setup()


code: void SimplifyByGroups()


code: void StartActivity ( [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UInteractiveToolActivity](API\Plugins\ModelingComponents\UInteractiveToolActivity) > Activity )


description: true if the implementor of this API may be able to consume an Accept action


description: IInteractiveToolNestedAcceptCancelAPI.


code: void UpdateDeformerFromSelection ( const [UE::Geometry::FGroupTopologySelection](API\Plugins\DynamicMesh\FGroupTopologySelection) & Selection )


code: void UpdateDeformerChangeFromROI ( bool bFinal )


code: void UpdateEditPreviewMaterials ( [EPreviewMaterialType](API\Plugins\MeshModelingTools\UEditMeshPolygonsTool\EPreviewMaterialType) MaterialType )


code: void UpdateFromCurrentMesh ( bool bRebuildTopology )


code: void SetActionButtonPanelsVisible ( bool bVisible )


code: void UpdateGizmoFrame ( const [FFrame3d](API\Runtime\GeometryCore\TFrame3) * UseFrame )


code: void UpdateGizmoVisibility()


code: UEditMeshPolygonsTool()


className: UEditMeshPolygonsTool

AcceptCancelAction

type: TObjectPtr<UEd...

ActiveEdgeSelection

type: TArray<FSelect...

ActiveVertexChange

type: FMeshVertexChan...

ActivityContext

type: TObjectPtr<UPo...

BevelEdgeActivity

type: TObjectPtr< UPo...

bToolDisabled

description: TODO: This is a hack to allow us to disallow any actions inside the tool afterSetup()is called.

bTriangleMode

description: If bTriangleMode = true, then we use a per-triangle FTriangleGroupTopology instead of polygroup topology.

CurrentActivity

type: TObjectPtr<UIn...

description: Points to one of the activities when it is active

CurrentPreviewMaterial

type: EPreviewMateria...

DefaultMessage

type: FText

ExtraCornerDotProductThreshold

type: double

ExtrudeActivity

description: Activity objects that handle multi-interaction operations

LinearDeformer

description: Data for current drag

PostSetupFunction

type: TUniqueFunction...

Preview

type: TObjectPtr<UMe...

TransformProxy

type: TObjectPtr<UTr...

UVScaleFactor

type: float

description: UV Scale factor to apply to texturing on any new geometry (e.g. new faces added by extrude)


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=CurrentOperation, Meta=(DisplayName="Apply", DisplayPriority=1)) void Apply()


className: UEditMeshPolygonsToolAcceptCancelAction

description: TODO: This is currently a separate action set so that we can show/hide it depending on whether we have an activity running. We should have a cleaner alternative.


code: void Initialize ( [UEditMeshPolygonsTool](API\Plugins\MeshModelingTools\UEditMeshPolygonsTool) * ParentToolIn )


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=CurrentOperation, Meta=(DisplayName="Cancel", DisplayPriority=2)) void Cancel()


code: void PostAction ( [EEditMeshPolygonsToolActions](API\Plugins\MeshModelingTools\EEditMeshPolygonsToolActions) Action )


className: UEditMeshPolygonsToolActionPropertySet

ParentTool

type: TWeakObjectPtr<...


description: Bevel the edge loops around the selected faces, inserting edge-aligned faces that interpolate the normals of the selected faces

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=FaceEdits, Meta=(DisplayName="Bevel", DisplayPriority=4)) void Bevel()


description: Cut the current set of selected faces. Click twice in viewport to set cut line.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=FaceEdits, Meta=(DisplayName="CutFaces", DisplayPriority=5)) void CutFaces()


description: Delete the current set of selected faces

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=FaceEdits, Meta=(DisplayName="Delete", DisplayPriority=4)) void Delete()


description: Split each of the selected faces into a separate polygon for each triangle

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=FaceEdits, Meta=(DisplayName="Decompose", DisplayPriority=10)) void Decompose()


description: Separate the selected faces at their borders

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=FaceEdits, Meta=(DisplayName="Disconnect", DisplayPriority=11)) void Disconnect()


description: Duplicate the selected faces at their borders

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=FaceEdits, Meta=(DisplayName="Duplicate", DisplayPriority=12)) void Duplicate()


description: Extrude the current set of selected faces by moving and stitching them.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=FaceEdits, Meta=(DisplayName="Extrude", DisplayPriority=1)) void Extrude()


description: Flip normalsand face orientation for the current set of selected faces

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=FaceEdits, Meta=(DisplayName="Flip", DisplayPriority=7)) void Flip()


description: Insert a new edge connecting existing edges or vertices on a single face

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=ShapeEdits, Meta=(DisplayName="Insert Edge", DisplayPriority=14)) void InsertEdge()


description: Insert a chain of edges across quads (faces with four edges) in the mesh. Due to ambiguity, edges will not be inserted on non-quad faces.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=ShapeEdits, Meta=(DisplayName="InsertEdgeLoop", DisplayPriority=13)) void InsertEdgeLoop()


description: (An Inset operation stitches in a smaller version of selected faces inside the existing ones)

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=FaceEdits, Meta=(DisplayName="Inset", DisplayPriority=2)) void Inset()


description: Merge the current set of selected faces into a single face

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=FaceEdits, Meta=(DisplayName="Merge", DisplayPriority=4)) void Merge()


description: Like Extrude, but defaults to moving verts along vertex normals instead of a single direction.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=FaceEdits, Meta=(DisplayName="Offset", DisplayPriority=1)) void Offset()


description: (An Outset operation stitches in a larger version of selected faces inside the existing ones)

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=FaceEdits, Meta=(DisplayName="Outset", DisplayPriority=3)) void Outset()


description: Like Extrude/Offset, but performed in a boolean way, meaning that the faces can cut away the mesh or bridge mesh parts.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=FaceEdits, Meta=(DisplayName="Push/Pull", DisplayPriority=1)) void PushPull()


description: Recalculate normals for the current set of selected faces

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=FaceEdits, Meta=(DisplayName="RecalcNormals", DisplayPriority=6)) void RecalcNormals()


description: Simplify every polygon group by removing vertices on shared straight edges and retriangulating

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=ShapeEdits, Meta=(DisplayName="SimplifyByGroups", DisplayPriority=15)) void SimplifyByGroups()


description: Retriangulate each of the selected faces

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=FaceEdits, Meta=(DisplayName="Retriangulate", DisplayPriority=9)) void Retriangulate()


className: UEditMeshPolygonsToolActions

description: PolyEdit Actions


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=TriangleEdits, Meta=(DisplayName="Delete", DisplayPriority=4)) void Delete()


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=TriangleEdits, Meta=(DisplayName="Disconnect", DisplayPriority=11)) void Disconnect()


description: Cut the current set of selected faces. Click twice in viewport to set cut line.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=TriangleEdits, Meta=(DisplayName="CutFaces", DisplayPriority=5)) void CutFaces()


description: Duplicate the selected faces

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=TriangleEdits, Meta=(DisplayName="Duplicate", DisplayPriority=12)) void Duplicate()


description: Extrude the current set of selected faces. Click in viewport to confirm extrude height.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=TriangleEdits, Meta=(DisplayName="Extrude", DisplayPriority=1)) void Extrude()


description: Flip normals and face orientation for the current set of selected faces

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=TriangleEdits, Meta=(DisplayName="Flip", DisplayPriority=7)) void Flip()


description: Inset the current set of selected faces. Click in viewport to confirm inset distance.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=TriangleEdits, Meta=(DisplayName="Inset", DisplayPriority=2)) void Inset()


description: Outset the current set of selected faces. Click in viewport to confirm outset distance.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=TriangleEdits, Meta=(DisplayName="Outset", DisplayPriority=3)) void Outset()


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=TriangleEdits, Meta=(DisplayName="Offset", DisplayPriority=1)) void Offset()


description: Insert a new vertex at the center of each selected face

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=TriangleEdits, Meta=(DisplayName="Poke", DisplayPriority=13)) void Poke()


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=TriangleEdits, Meta=(DisplayName="Push/Pull", DisplayPriority=1)) void PushPull()


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=TriangleEdits, Meta=(DisplayName="RecalcNormals", DisplayPriority=6)) void RecalcNormals()


description: new Tool instance. Override this in subclasses to build a different Tool class type

code: virtual [USingleTargetWithSelectionTool](API\Plugins\ModelingComponents\BaseTools\USingleTargetWithSelectionTool) * CreateNewTool ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


description: Called by BuildTool to configure the Tool with the input MeshSource based on the SceneState

code: virtual void InitializeNewTool ( [USingleTargetWithSelectionTool](API\Plugins\ModelingComponents\BaseTools\USingleTargetWithSelectionTool) * Tool, const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


description: true if this Tool requires an input selection

code: virtual bool RequiresInputSelection() const


className: UEditMeshPolygonsToolBuilder

description: ToolBuilder

bTriangleMode

type: bool


className: UEditMeshPolygonsToolCancelAction

description: TODO: This is currently a separate action set so that we can show/hide it depending on whether we have an activity running. We should have a cleaner alternative.


description: Collapse the selected edges, deleting the attached triangles and merging its two vertices into one

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=EdgeEdits, Meta=(DisplayName="Collapse", DisplayPriority=1)) void Collapse()


description: Fill the adjacent hole for any selected boundary edges

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=EdgeEdits, Meta=(DisplayName="Fill Hole", DisplayPriority=1)) void FillHole()


description: Flip the selected (non-border, non-seam) edges, replacing them with new edges in the crossing direction

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=EdgeEdits, Meta=(DisplayName="Flip", DisplayPriority=1)) void Flip()


description: Split the selected edges, inserting a new vertex at each edge midpoint

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=EdgeEdits, Meta=(DisplayName="Split", DisplayPriority=1)) void Split()


description: Merge selected edges, moving the first edge to the second

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=EdgeEdits, Meta=(DisplayName="Weld", DisplayPriority=1)) void Weld()


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=CurrentOperation, Meta=(DisplayName="Cancel", DisplayPriority=1)) void Done()


description: Bevel the selected edges, replacing them with angled faces

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=EdgeEdits, Meta=(DisplayName="Bevel", DisplayPriority=4)) void Bevel()


description: Create a new face that connects the selected edges

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=EdgeEdits, Meta=(DisplayName="Bridge", DisplayPriority=5)) void Bridge()


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=EdgeEdits, Meta=(DisplayName="Fill Hole", DisplayPriority=3)) void FillHole()


description: Simplify the underlying triangulation along the selected edges, when doing so won't change the shape or UVs, or make low-quality triangles

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=EdgeEdits, Meta=(DisplayPriority=6)) void Simplify()


description: Make each selected polygroup edge follow a straight path between its endpoints

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=EdgeEdits, Meta=(DisplayName="Straighten", DisplayPriority=2)) void Straighten()


className: UEditMeshPolygonsToolEdgeActions


description: Assign planar-projection UVs to mesh

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(CallInEditor, Category=UVs, Meta=(DisplayName="PlanarProjection", DisplayPriority=11)) void PlanarProjection()


className: UEditMeshPolygonsToolUVActions


className: UPolyEditCommonProperties

description: These are properties that do not get enabled/disabled based on the action

bGizmoVisible

description: When true, allows the transform gizmo to be rendered

bLocalCoordSystem

description: This gets updated internally so that properties can respond to whether the coordinate system is set to local or global

bLockRotation

description: When true, keeps rotation of gizmo constant through selection changes and manipulations (but not middle-click repositions).

LocalFrameMode

type: ELocalFrameMode

description: Determines whether, on selection changes, the gizmo's rotation is taken from the object transform, or from the geometry elements selected.


className: UPolyEditTopologyProperties

bAddExtraCorners

description: When true, adds extra corners at sharp group edge bends (in addition to the normal corners that are placed at junctures of three or more group edges).

ExtraCornerAngleThresholdDegrees

description: When generating extra corners, how sharp the angle needs to be to warrant an extra corner placement there.


className: UProceduralArrowToolProperties

HeadHeight

description: Height of arrow head

HeadRadius

description: Radius of the arrow head base

HeightSubdivisions

type: int

description: Number of subdivisions along each part of the arrow, i.e. shaft, head base, head cone

RadialSlices

description: Number of radial slices for the arrow

ShaftHeight

description: Height of arrow shaft

ShaftRadius

description: Radius of the arrow shaft


className: UProceduralBoxToolProperties

Depth

description: Depth of the box

DepthSubdivisions

description: Number of subdivisions along the depth

Height

description: Height of the box

HeightSubdivisions

description: Number of subdivisions along the height

Width

description: Width of the box

WidthSubdivisions

description: Number of subdivisions along the width


className: UProceduralConeToolProperties

Height

description: Height of the cone

HeightSubdivisions

description: Number of subdivisions along the height of the cone

RadialSlices

description: Number of radial slices for the cylinder

Radius

description: Radius of the cone


className: UProceduralCylinderToolProperties

Height

description: Height of the cylinder

HeightSubdivisions

description: Number of subdivisions along the height of the cylinder

description: Radius of the cylinder


className: UProceduralDiscToolProperties

DiscType

type: EProceduralDisc...

description: Type of disc

meta

description: Radius of the hole in the disc. This is only available for Punctured Discs.

RadialSlices

description: Number of radial slices for the disc

RadialSubdivisions

description: Number of radial subdivisions for each radial slice of the disc

Radius

description: Radius of the disc


className: UProceduralRectangleToolProperties

bMaintainDimension

description: Whether to preserve the overall Width and Depth for a Rounded Rectangle, or to allow the rounded corners to extend outside those dimensions.

Depth

description: Depth of the rectangle

DepthSubdivisions

description: Number of subdivisions along the depth

meta

description: Radius of rounded corners.

RectangleType

type: EProceduralRect...

description: Type of rectangle

Width

description: Width of the rectangle

WidthSubdivisions

description: Number of subdivisions along the width


className: UProceduralShapeToolProperties

bAlignToNormal

description: If true, aligns the shape along the normal of the surface it is placed on.

bShowGizmo

description: Show a gizmo to allow the mesh to be repositioned after the initial placement click.

PivotLocation

type: EMakeMeshPivotL...

description: Location of pivot within the shape

PolygroupMode

type: EMakeMeshPolygr...

description: How PolyGroups are assigned to shape primitives.

Rotation

description: Rotation of the shape around its up axis

TargetSurface

type: EMakeMeshPlacem...

description: How the shape is placed in the scene.


className: UProceduralStairsToolProperties

meta

description: Depth of each step of linear stairs

NumSteps

description: Number of steps

StairsType

type: EProceduralStai...

description: Type of staircase

StepHeight

description: Height of each step

StepWidth

description: Width of each step


className: UProceduralSphereToolProperties

EditCondition

description: Number of subdivisions for each side of the sphere.

Radius

description: Radius of the sphere

SubdivisionType

type: EProceduralSphe...

description: Type of subdivision for the sphere


className: UProceduralTorusToolProperties

MajorRadius

description: Major radius of the torus, measured from the torus center to the center of the torus tube

MajorSlices

description: Number of radial slices along the torus tube

MinorRadius

description: Minor radius of the torus, measured from the center ot the torus tube to the tube surface

MinorSlices

description: Number of radial slices around the torus tube


description: true if this Tool is currently in a state where it can be Accepted. This may be false if for example there was an error in the Tool.

code: virtual bool CanAccept() const


code: int32 GetSelectedUVChannel() const


description: true if this Tool support being Accepted, ie calling Shutdown(EToolShutdownType::Accept)

code: virtual bool HasAccept() const


description: true if this Tool support being Cancelled, ie calling Shutdown(EToolShutdownType::Cancel)

code: virtual bool HasCancel() const


code: void OnPreviewMeshUpdated()


description: Automatically called byUInteractiveToolPropertySet.OnModifieddelegate to notify Tool of child property set changes

code: virtual void OnPropertyModified ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * PropertySet, [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * Property )


code: void OnSelectedGroupLayerChanged()


code: virtual void OnShutdown ( EToolShutdownType ShutdownType )


description: Allow the Tool to do any necessary processing on Tick

code: virtual void OnTick ( float DeltaTime )


description: Allow the Tool to do any custom drawing (ie via PDI/RHI)

code: virtual void Render ( [IToolsContextRenderAPI](API\Runtime\InteractiveToolsFramework\IToolsContextRenderAPI) * RenderAPI )


description: Called by ToolManager to initialize the ToolafterToolBuilder::BuildTool() has been called

code: virtual void Setup()


code: void UpdateActiveGroupLayer()


className: URecomputeUVsTool

description: URecomputeUVsToolRecomputes UVs based on existing segmentations of the mesh

MaterialSettings

type: TObjectPtr<UEx...

PolygroupLayerProperties

type: TObjectPtr<UPo...

RecomputeUVsOpFactory

type: TObjectPtr<URe...

UVLayoutView

type: TObjectPtr<UUV...


className: URecomputeUVsToolBuilder


description:
Check if, given the current scene state, a new instance of this builder's Tool can be created
true if a single mesh source can be found in the active selection

code: virtual bool CanBuildTool ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


description: new Tool instance. Override this in subclasses to build a different Tool class type

code: virtual [USingleSelectionMeshEditingTool](API\Plugins\ModelingComponents\BaseTools\USingleSelectionMeshEditingTool) * CreateNewTool ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


className: URevolveOperatorFactory


description: IDynamicMeshOperatorFactory API.

code: virtual MakeNewOperator()


code: virtual GetCapFillMode() const


className: UTrimMeshesToolProperties

description: Properties of the trim mode

bShowTrimmingMesh

description: Whether to show a translucent version of the trimming mesh, to help visualize what is being cut

ColorOfTrimmingMesh

type: FLinearColor

description: Color of translucent version of the trimming mesh

OpacityOfTrimmingMesh

description: Opacity of translucent version of the trimming mesh

TrimSide

type: ETrimSide

description: Whether to remove the surface inside or outside of the trimming geometry

WhichMesh

type: ETrimOperation

description: Which object to trim

WindingThreshold

description: Threshold to determine whether a triangle in one mesh is inside or outside of the other


code: void GenerateAsset ( const [TArray](API\Runtime\Core\Containers\TArray)< [FDynamicMeshOpResult](API\Plugins\ModelingComponents\FDynamicMeshOpResult) > & Results )


code: void OnPreviewMeshUpdated ( [UMeshOpPreviewWithBackgroundCompute](API\Plugins\ModelingComponents\UMeshOpPreviewWithBackgroundComp-) * Compute )


code: void UpdateNumPreviews()


code: void UpdatePreviewMaterial()


code: void UpdateVisualization()


className: UUVLayoutTool

description: The level editor version of the UV layout tool.

CameraState

type: FViewCameraStat...

Factories

type: TArray<TObject...

OriginalDynamicMeshes

type: TArray<TShared...

UVChannelProperties

type: TObjectPtr<UMe...


description:
Check if, given the current scene state, a new instance of this builder's Tool can be created
true if mesh sources can be found in the active selection


code: virtual [UMultiSelectionMeshEditingTool](API\Plugins\ModelingComponents\BaseTools\UMultiSelectionMeshEditingTool) * CreateNewTool ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


code: virtual void OnPropertyModified ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * PropertySet, [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * Property )


className: UUVProjectionOperatorFactory

description: Factory with enough info to spawn the background-thread Operator to do a chunk of work for the tool stores a pointer to the tool and enough info to know which specific operator it should spawn


code: ApplyInitializationMode()


code: virtual CanAccept() const


code: GetProjectionBox() const


code: virtual HasAccept() const


code: virtual HasCancel() const


code: OnInitializationModeChanged()


code: virtual OnPropertyModified()


code: OnMaterialSettingsChanged()


code: virtual OnTick()


code: virtual Render()


code: virtual RequestAction()


code: virtual Setup()


className: UUVProjectionTool

description: UV projection tool


code: virtual CanBuildTool() const


code: virtual CreateNewTool() const


code: virtual RequiresInputSelection() const


className: UUVProjectionToolBuilder


description: Automatically orient the projection and then automatically fit the UV Projection Dimensions

code: AutoFitAlign()


description: Automatically fit the UV Projection Dimensions based on the current projection orientation

code: AutoFit()


description: Re-initialize the projection based on the UV Projection Initialization property

code: Reset()


className: UUVProjectionToolEditActions


className: UUVProjectionToolProperties

description: Standard properties


description: Called when details should be customized

module: MeshModelingToolsEditorOnly

code: virtual void CustomizeDetails ( [IDetailLayoutBuilder](API\Editor\PropertyEditor\IDetailLayoutBuilder) & DetailBuilder )


code: void EvaluateLayoutTypeRestrictions ( [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IPropertyHandle](API\Editor\PropertyEditor\IPropertyHandle) > IslandGenerationModeHandle, [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IPropertyHandle](API\Editor\PropertyEditor\IPropertyHandle) > UnwrapTypeHandle, [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IPropertyHandle](API\Editor\PropertyEditor\IPropertyHandle) > LayoutTypeHandle )


code: static [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IDetailCustomization](API\Editor\PropertyEditor\IDetailCustomization) > MakeInstance()


className: FRecomputeUVsToolDetails

description: Customization for UUVEditorRecomputeUVsToolProperties.

code: class FRecomputeUVsToolDetails : public [IDetailCustomization](API\Editor\PropertyEditor\IDetailCustomization)

LayoutTypeEnumRestriction

type: TSharedPtr<FPr...

description: Property restriction applied to blend paint enum dropdown box


code: void OnPostEngineInit()


description: IModuleInterfaceimplementation

code: virtual void StartupModule()


description: Called before the module is unloaded, right before the module object is destroyed. During normal shutdown, this is called in reverse order that modules finishStartupModule(). This means that, as long as a module references dependent modules in it'sStartupModule(), it can safely reference those dependencies inShutdownModule()as well.

code: virtual void ShutdownModule()


className: FMeshModelingToolsEditorOnlyModule

code: class FMeshModelingToolsEditorOnlyModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)

ClassesToUnregisterOnShutdown

type: TArray<FName>


description: true if this Tool is currently in a state where it can be Accepted. This may be false if for example there was an error in the Tool.

code: virtual bool CanAccept() const


description: true if this Tool support being Cancelled, ie calling Shutdown(EToolShutdownType::Cancel)

code: virtual bool HasCancel() const


description: true if this Tool support being Accepted, ie calling Shutdown(EToolShutdownType::Accept)

code: virtual bool HasAccept() const


code: void OnPreviewMeshUpdated()


code: void OnMethodTypeChanged()


description: Automatically called byUInteractiveToolPropertySet.OnModifieddelegate to notify Tool of child property set changes

code: virtual void OnPropertyModified ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * PropertySet, [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * Property )


code: virtual void OnShutdown ( EToolShutdownType ShutdownType )


description: Allow the Tool to do any custom drawing (ie via PDI/RHI)

code: virtual void Render ( [IToolsContextRenderAPI](API\Runtime\InteractiveToolsFramework\IToolsContextRenderAPI) * RenderAPI )


description: Allow the Tool to do any necessary processing on Tick

code: virtual void OnTick ( float DeltaTime )


description: Called by ToolManager to initialize the ToolafterToolBuilder::BuildTool() has been called

code: virtual void Setup()


className: UParameterizeMeshTool

description: UParameterizeMeshToolautomatically decomposes the input mesh into charts, solves for UVs, and then packs the resulting charts

bCreateUVLayoutViewOnSetup

type: bool

Factory

type: TObjectPtr<UPa...


description: new Tool instance. Override this in subclasses to build a different Tool class type

code: virtual [USingleSelectionMeshEditingTool](API\Plugins\ModelingComponents\BaseTools\USingleSelectionMeshEditingTool) * CreateNewTool ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


description:
Check if, given the current scene state, a new instance of this builder's Tool can be created
true if a single mesh source can be found in the active selection

code: virtual bool CanBuildTool ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


className: UParameterizeMeshToolBuilder


className: EAttributeEditorAttribType

module: MeshModelingToolsEditorOnlyExp

code: enum EAttributeEditorAttribType { Int32 = 0, Boolean = 1, Float = 2, Vector2 = 3, Vector3 = 4, Vector4 = 5, String = 6, Unknown = 7, }


className: EAttributeEditorElementType

code: enum EAttributeEditorElementType { Vertex = 0, VertexInstance = 1, Triangle = 2, Polygon = 3, Edge = 4, PolygonGroup = 5, }


className: EAttributeEditorToolActions

code: enum EAttributeEditorToolActions { NoAction, ClearNormals, DiscardTangents, ClearAllUVs, ClearSelectedUVs, AddUVSet, DeleteSelectedUVSet, DuplicateSelectedUVSet, AddAttribute, AddWeightMapLayer, AddPolyGroupLayer, DeleteAttribute, ClearAttribute, CopyAttributeFromTo, EnableLightmapUVs, DisableLightmapUVs, ResetLightmapUVChannels, }


className: EBspConversionMode

code: enum EBspConversionMode { ConvertFirst = 0, CombineFirst = 1, }


className: EBspConversionToolAction

code: enum EBspConversionToolAction { NoAction, SelectAllValidBrushes, DeselectVolumes, DeselectNonValid, }


className: EDrawSplineDrawMode

code: enum EDrawSplineDrawMode { TangentDrag, ClickAutoTangent, FreeDraw, }


className: EDrawSplineOutputMode

code: enum EDrawSplineOutputMode { EmptyActor, ExistingActor, CreateBlueprint, }


className: EDrawSplineUpVectorMode

code: enum EDrawSplineUpVectorMode { AlignToPrevious, UseHitNormal, }


className: EEditMeshMaterialsToolActions

code: enum EEditMeshMaterialsToolActions { NoAction, AssignMaterial, }


className: EISMEditorToolActions

code: enum EISMEditorToolActions { NoAction, ClearSelection, Delete, Duplicate, Replace, }


className: EISMEditorTransformMode

description: Mesh Transform modes

code: enum EISMEditorTransformMode { SharedGizmo = 0, SharedGizmoLocal = 1, PerObjectGizmo = 2, LastValue, }


className: EMeshToVolumeMode

code: enum EMeshToVolumeMode { TriangulatePolygons, MinimalPolygons, }


className: EPolygonOnMeshToolActions

code: enum EPolygonOnMeshToolActions { NoAction, DrawPolygon, }


className: EPolygonType

code: enum EPolygonType { Circle, Square, Rectangle, RoundRect, Custom, }


className: EVoxelCSGOperation

code: enum EVoxelCSGOperation { DifferenceAB = 0, DifferenceBA = 1, Intersect = 2, Union = 3, }


description: Reverts change to the object

code: virtual void Revert ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * Object )


description: Describes this change (for debugging)

code: virtual [FString](API\Runtime\Core\Containers\FString) ToString() const


code: class FAttributeEditor_AttributeListsChange : public [FToolCommandChange](API\Runtime\InteractiveToolsFramework\FToolCommandChange)


className: FDynamicMeshFaceArray


description: Makes the change to the object

code: virtual void Apply ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * Object )


code: class FEditMeshMaterials_MaterialSetChange : public [FToolCommandChange](API\Runtime\InteractiveToolsFramework\FToolCommandChange)

MaterialsAfter

type: TArray<UMateri...


className: FISMEditorSceneChange

code: class FISMEditorSceneChange : public [FToolCommandChange](API\Runtime\InteractiveToolsFramework\FToolCommandChange)

Components

type: TArray<UInstan...


className: FISMEditorSelectionChange

code: class FISMEditorSelectionChange : public [FToolCommandChange](API\Runtime\InteractiveToolsFramework\FToolCommandChange)

NewSelection

type: TArray<UISMEdi...


code: virtual void ShutdownModule()


className: FISMEditorTarget

TransformGizmo

type: TObjectPtr<UCo...

TransformProxy

type: TObjectPtr<UTr...


description: IModuleInterfaceimplementation

code: virtual void StartupModule()


className: FMeshModelingToolsEditorOnlyExpModule

code: class FMeshModelingToolsEditorOnlyExpModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


className: BoneIndex

code: typedef int32 BoneIndex


className: EEditingOperation

description: EEditingOperation represents the current tool's operation

code: enum EEditingOperation { Select, Create, Remove, Transform, Parent, Rename, Mirror, }


className: EMirrorDirection

description: Mirror direction mode

code: enum EMirrorDirection { PositiveToNegative, NegativeToPositive, }


className: EProjectionType

description: EProjectionType

code: enum EProjectionType { CameraPlane, OnMesh, WithinMesh, Perspective, Orghographic, }


className: ESkinWeightsBindType

description: A mirror ofUE::Geometry::ESkinBindingType.

code: enum ESkinWeightsBindType { DirectDistance = 0, GeodesicVoxel = 1, }


className: EWeightBrushFalloffMode

description: Brush falloff mode

code: enum EWeightBrushFalloffMode { Surface, Volume, }


className: EWeightColorMode

description: Weight color mode

code: enum EWeightColorMode { MinMax, Ramp, }


className: EWeightEditMode

description: Weight edit mode

code: enum EWeightEditMode { Brush, Vertices, }


className: EWeightEditOperation

description: Operation type when editing weights

code: enum EWeightEditOperation { Add, Replace, Multiply, Relax, }


code: void AddBoneWeightEdit ( const [FSingleBoneWeightEdits](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\FSingleBoneWeightEdits) & BoneWeightEdit )


description: Makes the change to the object

code: virtual void Apply ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * Object )


description: Reverts change to the object

code: virtual void Revert ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * Object )


description: Describes this change (for debugging)

code: virtual [FString](API\Runtime\Core\Containers\FString) ToString() const


code: FMeshSkinWeightsChange()


className: FMeshSkinWeightsChange

code: class FMeshSkinWeightsChange : public [FToolCommandChange](API\Runtime\InteractiveToolsFramework\FToolCommandChange)


code: float GetVertexDeltaFromEdits ( const int32 BoneIndex, const int32 VertexIndex )


code: void MergeEdits ( const [FSingleBoneWeightEdits](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\FSingleBoneWeightEdits) & BoneWeightEdits )


code: void MergeSingleEdit ( const int32 BoneIndex, const int32 VertexID, const float OldWeight, const float NewWeight )


className: FMultiBoneWeightEdits

description: Store a sparse set of modifications to a set of vertex weights for a SET of bones with support for merging edits. these are used for transaction history undo/redo.

code: struct FMultiBoneWeightEdits

PerBoneWeightEdits

type: TMap<BoneIndex...

description: Map of bone indices to weight edits made to that bone


code: void StoreSkeleton ( const [USkeletonEditingTool](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\USkeletonEditingTool) * InTool )


code: FRefSkeletonChange ( const [USkeletonEditingTool](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\USkeletonEditingTool) * InTool )


className: FRefSkeletonChange

description: A wrapper change class that stores a reference skeleton and the bones' indexes trackers to be used for undo/redo.

code: class FRefSkeletonChange : public [FToolCommandChange](API\Runtime\InteractiveToolsFramework\FToolCommandChange)


className: FSingleBoneWeightEdits

description: Store a sparse set of modifications to a set of vertex weights on a SINGLE bone

code: struct FSingleBoneWeightEdits

NewWeights

type: TMap<VertexInd...


description: Override this function to react to notifications locally.

code: virtual void HandleNotification ( const [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > & BoneNames, const [ESkeletalMeshNotifyType](API\Developer\SkeletalMeshUtilitiesCommon\ESkeletalMeshNotifyType) InNotifyType )


code: FSkeletalMeshToolNotifier ( [TWeakInterfacePtr](API\Runtime\CoreUObject\UObject\TWeakInterfacePtr)< [ISkeletalMeshEditingInterface](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\ISkeletalMeshEdi-) > InInterface )


className: FSkeletalMeshToolNotifier

description: FSkeletalMeshToolNotifier

code: class FSkeletalMeshToolNotifier : public [ISkeletalMeshNotifier](API\Developer\SkeletalMeshUtilitiesCommon\ISkeletalMeshNotifier)

Interface

type: TWeakInterfaceP...


code: bool GetAllVerticesMirrored() const


code: const [TMap](API\Runtime\Core\Containers\TMap)< int32, int32 > & GetBoneMap() const


code: const [TMap](API\Runtime\Core\Containers\TMap)< int32, int32 > & GetVertexMap() const


code: void RegenerateMirrorData ( const [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > & BoneNames, const [TMap](API\Runtime\Core\Containers\TMap)< [FName](API\Runtime\Core\UObject\FName), [BoneIndex](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\BoneIndex) > & BoneNameToIndexMap, const [FReferenceSkeleton](API\Runtime\Engine\FReferenceSkeleton) & RefSkeleton, const [TArray](API\Runtime\Core\Containers\TArray)< FVector > & RefPoseVertices, [EAxis::Type](API\Runtime\Core\Math\EAxis__Type) InMirrorAxis, [EMirrorDirection](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\EMirrorDirection) InMirrorDirection )


className: FSkinMirrorData

code: struct FSkinMirrorData


code: void Initialize ( const [USkeletalMeshComponent](API\Runtime\Engine\Components\USkeletalMeshComponent) * SkeletalMeshComponent, const [FMeshDescription](API\Runtime\MeshDescription\FMeshDescription) * Mesh )


code: void SetAllVerticesToBeUpdated()


code: void SetVertexNeedsUpdated ( int32 VertexIndex )


code: void UpdateVertexDeformation ( [USkinWeightsPaintTool](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\USkinWeightsPaintTool) * Tool )


className: FSkinToolDeformer

description: Data required to preview the skinning deformations as you paint

code: struct FSkinToolDeformer

BoneNames

description: Bone index to bone name

BoneNameToIndexMap

type: TMap<FName,Bo...

Component

type: constUSkeletal...

description: The skeletal mesh to get the current pose from

InvCSRefPoseTransforms

type: TArray< FTransf...

description: Inverted, component space ref pose transform of each bone

RefPoseVertexPositions

type: TArray< FVector...

description: Position of all vertices in the reference pose

VerticesWithModifiedWeights

type: TSet< int32 >

description: Which vertices require updating (partially re-calculated skinning deformation while painting)


code: void ApplyCurrentWeightsToMeshDescription ( [FMeshDescription](API\Runtime\MeshDescription\FMeshDescription) * EditedMesh )


code: void ApplyEditsToWeightMap ( const [FMultiBoneWeightEdits](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\FMultiBoneWeightEdits) & Edits, [TArray](API\Runtime\Core\Containers\TArray)< [VertexWeights](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\VertexWeights) > & InOutWeights )


description: Applies an edit to a single vertex weight on a single bone, then normalizes the remaining weights while keeping the edited weight intact (ie, adapts OTHER influences to achieve normalization)

code: void EditVertexWeightAndNormalize ( const int32 BoneIndex, const int32 VertexId, float NewWeightValue, [FMultiBoneWeightEdits](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\FMultiBoneWeightEdits) & WeightEdits )


code: static float GetWeightOfBoneOnVertex ( const int32 BoneIndex, const int32 VertexID, const [TArray](API\Runtime\Core\Containers\TArray)< [VertexWeights](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\VertexWeights) > & InVertexWeights )


description: Copy the initial weight values from the skeletal mesh

code: void InitializeSkinWeights ( const [USkeletalMeshComponent](API\Runtime\Engine\Components\USkeletalMeshComponent) * SkeletalMeshComponent, [FMeshDescription](API\Runtime\MeshDescription\FMeshDescription) * Mesh )


code: float SetCurrentFalloffAndGetMaxFalloffThisStroke ( int32 VertexID, float CurrentStrength )


code: void SetWeightOfBoneOnVertex ( const int32 BoneIndex, const int32 VertexID, const float Weight, [TArray](API\Runtime\Core\Containers\TArray)< [VertexWeights](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\VertexWeights) > & InOutVertexData )


className: FSkinToolWeights

description: Intermediate storage of the weight maps for duration of tool

code: struct FSkinToolWeights

CurrentWeights

type: TArray<VertexW...

Deformer

type: FSkinToolDeform...

description: Update deformation when vertex weights are modified

MaxFalloffPerVertexThisStroke

type: TArray< float >

description: Record the current maximum amount of falloff applied to each vertex during the current stroke values range from 0-1, this allows brushes to sweep over the same vertex, and apply only the maximum amount of modification (add/replace/relax etc) that was encountered for the duration of the stroke.

PreChangeWeights

description: Double-buffer of the entire weight matrix (stored sparsely for fast deformation) "Pre" is state of weights at stroke start "Current" is state of weights during stroke When stroke is over, PreChangeWeights are synchronized with CurrentWeights


code: void ResetAfterChange()


code: FVertexBoneWeight()


className: FSkinWeightBrushConfig

description: For saveing/restoring the brush settings separately for each brush mode (Add, Replace, etc...)

Falloff

type: float

FalloffMode

type: EWeightBrushFal...


code: FVertexBoneWeight ( int32 InBoneIndex, const FVector & InPosInRefPose, float InWeight )


className: FVertexBoneWeight

code: struct FVertexBoneWeight

VertexInBoneSpace

type: FVector


code: virtual [HHitProxyType](API\Runtime\Engine\HHitProxyType) * GetType() const


description: Override to change the mouse based on what it is hovering over.


code: static [HHitProxyType](API\Runtime\Engine\HHitProxyType) * StaticGetType()


code: HBoneHitProxy ( int32 InBoneIndex, [FName](API\Runtime\Core\UObject\FName) InBoneName )


className: HBoneHitProxy

description: HBoneHitProxy

code: struct HBoneHitProxy : public [HHitProxy](API\Runtime\Engine\HHitProxy)

BoneName

type: FName


code: void BindTo ( [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [ISkeletalMeshEditorBinding](API\Developer\SkeletalMeshUtilitiesCommon\ISkeletalMeshEditorBinding) > InBinding )


code: [TOptional](API\Runtime\Core\IO\TOptional)< [FName](API\Runtime\Core\UObject\FName) > GetBoneName ( [HHitProxy](API\Runtime\Engine\HHitProxy) * InHitProxy ) const


code: virtual [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [USkeletonModifier](API\Plugins\SkeletalMeshModifiers\USkeletonModifier) > GetModifier() const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > GetSelectedBones() const


code: void HandleSkeletalMeshModified ( const [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > & BoneNames, const [ESkeletalMeshNotifyType](API\Developer\SkeletalMeshUtilitiesCommon\ESkeletalMeshNotifyType) InNotifyType )


code: bool NeedsNotification() const


code: void Unbind()


className: operator&

code: constexpr USkeletonEditingTool::EBoneSelectionMode operator& ( USkeletonEditingTool::EBoneSelectionMode Lhs, USkeletonEditingTool::EBoneSelectionMode Rhs )


className: ISkeletalMeshEditingInterface

description: ISkeletalMeshEditionInterface

code: class ISkeletalMeshEditingInterface

Binding

type: TWeakPtr<ISkel...


className: operator&=

code: USkeletonEditingTool::EBoneSelectionMode & operator&= ( USkeletonEditingTool::EBoneSelectionMode & Lhs, USkeletonEditingTool::EBoneSelectionMode Rhs )


className: operator~

code: constexpr USkeletonEditingTool::EBoneSelectionMode operator~ ( USkeletonEditingTool::EBoneSelectionMode E )


className: operator^

code: constexpr USkeletonEditingTool::EBoneSelectionMode operator^ ( USkeletonEditingTool::EBoneSelectionMode Lhs, USkeletonEditingTool::EBoneSelectionMode Rhs )


className: operator^=

code: USkeletonEditingTool::EBoneSelectionMode & operator^= ( USkeletonEditingTool::EBoneSelectionMode & Lhs, USkeletonEditingTool::EBoneSelectionMode Rhs )


className: operator!

code: constexpr bool operator! ( USkeletonEditingTool::EBoneSelectionMode E )


code: void Initialize ( [USkeletonEditingTool](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\USkeletonEditingTool) * ParentToolIn )


code: void MirrorBones()


className: UMirroringProperties

description: UMirroringProperties

Options

type: FMirrorOptions

ParentTool

type: TWeakObjectPtr<...


code: void OrientBones()


description: this function is currently only called in Editor (not at runtime)

code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


className: UOrientingProperties

description: UOrientingProperties

bAutoOrient

type: bool

Options

type: FOrientOptions


code: bool GetProjectionPoint ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & InRay, FVector & OutHitPoint ) const


code: void Initialize ( [USkeletonEditingTool](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\USkeletonEditingTool) * ParentToolIn, [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UPreviewMesh](API\Plugins\ModelingComponents\UPreviewMesh) > PreviewMesh )


code: void UpdatePlane ( const [UGizmoViewContext](API\Runtime\InteractiveToolsFramework\BaseGizmos\UGizmoViewContext) & InViewContext, const FVector & InOrigin )


className: UProjectionProperties

description: UProjectionProperties

CameraState

type: FViewCameraStat...

ProjectionType

type: EProjectionType


className: USkeletalMeshEditingInterface

description: USkeletalMeshEditionInterface

code: class USkeletalMeshEditingInterface : public [UInterface](API\Runtime\CoreUObject\UObject\UInterface)


code: virtual void BindTo ( [ISkeletalMeshEditingInterface](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\ISkeletalMeshEdi-) * InEditingInterface )


code: virtual void HideSkeleton()


code: virtual void ShowSkeleton()


code: virtual void UnbindFrom ( [ISkeletalMeshEditingInterface](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\ISkeletalMeshEdi-) * InEditingInterface )


className: USkeletalMeshEditorContextObjectBase

description: USkeletalMeshEditorContextObjectBase

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract) class USkeletalMeshEditorContextObjectBase : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


code: virtual [USkeletalMeshGizmoWrapperBase](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\USkeletalMeshGiz-_1) * GetNewWrapper ( [UInteractiveToolManager](API\Runtime\InteractiveToolsFramework\UInteractiveToolManager) * InToolManager, [UObject](API\Runtime\CoreUObject\UObject\UObject) * Outer, [IGizmoStateTarget](API\Runtime\InteractiveToolsFramework\BaseGizmos\IGizmoStateTarget) * InStateTarget )


className: USkeletalMeshGizmoContextObjectBase

description: USkeletalMeshGizmoContextObjectBase

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract) class USkeletalMeshGizmoContextObjectBase : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


code: virtual bool CanInteract() const


code: virtual void Clear()


className: FGetTransform

code: typedef [TUniqueFunction](API\Runtime\Core\Templates\TUniqueFunction)< FTransform(void)> FGetTransform


className: FSetTransform

code: typedef [TUniqueFunction](API\Runtime\Core\Templates\TUniqueFunction)< void(const FTransform &)> FSetTransform


code: virtual void HandleBoneTransform ( [FGetTransform](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\USkeletalMeshGiz-_1\FGetTransform) GetTransformFunc, [FSetTransform](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\USkeletalMeshGiz-_1\FSetTransform) SetTransformFunc )


code: virtual void Initialize ( const FTransform & InTransform, const EToolContextCoordinateSystem & InTransformMode )


code: virtual bool IsGizmoHit ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & PressPos ) const


className: USkeletalMeshGizmoWrapperBase

description: USkeletalMeshGizmoWrapperBase

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract) class USkeletalMeshGizmoWrapperBase : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


code: void Initialize ( [USkeletonEditingTool](API\Plugins\MeshModelingToolsEditorOnlyExp\SkeletalMesh\USkeletonEditingTool) * ParentToolIn )


code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


className: USkeletonEditingProperties

description: USkeletonEditingProperties

Transform

type: FTransform


description:
Create a new instance of this builder's Tool
a new instance of the Tool, or nullptr on error/failure

code: virtual [UInteractiveTool](API\Runtime\InteractiveToolsFramework\UInteractiveTool) * BuildTool ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


description: USkeletonEditingToolBuilder

code: virtual bool CanBuildTool ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState ) const


description: Gives the target requirements of the associated tool. Usually, it is the tool builder will use this function in CanBuildTool and BuildTool to find and create any necessary targets.

code: virtual const [FToolTargetTypeRequirements](API\Runtime\InteractiveToolsFramework\ToolTargets\FToolTargetTypeRequirements) & GetTargetRequirements() const


className: USkeletonEditingToolBuilder

description: USkeletonEditingToolBuilder


className: AddToSelectionModifier

description: Flags used to identify behavior modifier keys/buttons

code: static constexpr int AddToSelectionModifier = 1;


description: Ref skeleton transactions

code: void BeginChange()


description: true if this Tool is currently in a state where it can be Accepted. This may be false if for example there was an error in the Tool.

code: virtual bool CanAccept() const


description:
Test if target can begin click-drag interaction at this point
hit information at this point

code: virtual [FInputRayHit](API\Runtime\InteractiveToolsFramework\FInputRayHit) CanBeginClickDragSequence ( const [FInputDeviceRay](API\Runtime\InteractiveToolsFramework\FInputDeviceRay) & PressPos )


code: void CancelChange()


description: Modifier functions.

code: void CreateNewBone()


className: EBoneSelectionMode

code: enum EBoneSelectionMode { Single = 0, Additive = 1 << 0, Toggle = 1 << 1, }


code: void EndChange()


code: virtual [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [USkeletonModifier](API\Plugins\SkeletalMeshModifiers\USkeletonModifier) > GetModifier() const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > GetSelectedBones() const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > & GetSelection() const


code: const FTransform & GetTransform ( const [FName](API\Runtime\Core\UObject\FName) InBoneName, const bool bWorld ) const


description: the current Focus Box

code: virtual FBox GetWorldSpaceFocusBox()