Navigation
API > API/Runtime > API/Runtime/InteractiveToolsFramework
Inheritance Hierarchy
- UObject
- UInteractionMechanic
- UCollectSurfacePathMechanic
- UCollisionPrimitivesMechanic
- UConstructionPlaneMechanic
- UCurveControlPointsMechanic
- UDragAlignmentMechanic
- UInteractiveToolActivity
- UPolyEditCutFacesActivity
- UPolyEditExtrudeActivity
- UPolyEditInsertEdgeActivity
- UPolyEditInsertEdgeLoopActivity
- UPolyEditInsetOutsetActivity
- UPolyEditPlanarProjectionUVActivity
- ULatticeControlPointsMechanic
- UMeshPaintSelectionMechanic
- UMeshTopologySelectionMechanic
- UBoundarySelectionMechanic
- UPolygonSelectionMechanic
- UPlaneDistanceFromHitMechanic
- UPolyLassoMarqueeMechanic
- URectangleMarqueeMechanic
- USpaceCurveDeformationMechanic
- USpatialCurveDistanceMechanic
- UUVEditorMeshSelectionMechanic
- UUVToolSelectionHighlightMechanic
References
| Module | InteractiveToolsFramework |
| Header | /Engine/Source/Runtime/InteractiveToolsFramework/Public/InteractionMechanic.h |
| Include | #include "InteractionMechanic.h" |
Syntax
UCLASS (Transient, MinimalAPI)
class UInteractionMechanic : public UObject
Remarks
A UInteractionMechanic implements a "user interaction". This is generally a subset of an InteractiveTool, for example an interaction to draw a polygon could be used in many tools, but requires handling input events and converting them to click points on a plane, handling various cases like closing a loop, undo/redo of points, etc. Ideally all these aspects should be able to be wrapped up in an UInteractionMechanic that multiple Tools can use.
(This class is still a work in progress)
Variables
| Type | Name | Description | |
|---|---|---|---|
| TWeakObjectPtr< UInteractiveTool > | ParentTool |
Constructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | AddToolPropertySource
(
UInteractiveToolPropertySet* PropertySet |
Add a PropertySet object for this Mechanic to parent Tool | |
| UInteractiveTool * | |||
| void | Render
(
IToolsContextRenderAPI* RenderAPI |
Allow the Mechanic to do any custom drawing (ie via PDI/RHI) | |
| bool | SetToolPropertySourceEnabled
(
UInteractiveToolPropertySet* PropertySet, |
Enable/Disable a PropertySet object for the parent tool. | |
| void | Setup
(
UInteractiveTool* ParentTool |
Called to initialize the InteractionMechanic | |
| void | Shutdown () |
Called to clean up the InteractionMechanic | |
| void | Tick
(
float DeltaTime |
ALlow the Mechanic to Tick |