Commit Graph

22 Commits

Author SHA1 Message Date
Ryan Schmidt
86afe5a9fe ToolsFramework: GizmoManager can now spawn customized variants of the standard transform gizmo. Minor API changes.
#rb none
#rnx

[CL 8684609 by Ryan Schmidt in Dev-Editor branch]
2019-09-14 00:59:31 -04:00
Ryan Schmidt
2332e92367 ToolsFramework: replace FString/TCHAR in various PostMessage functions with FText. Fix up call sites. Add area to modeling panel to display notification messages.
#fyi lauren.barnes
#rb none
#rnx

[CL 8684596 by Ryan Schmidt in Dev-Editor branch]
2019-09-14 00:17:10 -04:00
Ryan Schmidt
5f19bbb123 ToolsFramework: gizmo actors should not be transactional
#rb none
#rnx

[CL 8644466 by Ryan Schmidt in Dev-Editor branch]
2019-09-11 16:11:59 -04:00
Ryan Schmidt
1eb915b53c resolve minor CIS errors/warnings and remove initials from comment
#rb none
#rnx

[CL 8639855 by Ryan Schmidt in Dev-Editor branch]
2019-09-11 13:24:49 -04:00
Ryan Schmidt
23111ff977 ToolsFramework: minor Gizmo improvements. Gizmo unique identifier is now optional, allowing multiple TransformGizmo to be created. Added several options to TransformProxy to support moving pivot and separated rotations.
#rb none
#rnx

[CL 8631791 by Ryan Schmidt in Dev-Editor branch]
2019-09-10 21:58:36 -04:00
Ryan Schmidt
1dd5787dec ToolsFramework: add new USelectionSet and UMeshSelectionSet to represent sub-selections of objects/meshes
#rb none
#rnx

[CL 8618879 by Ryan Schmidt in Dev-Editor branch]
2019-09-10 14:48:32 -04:00
Ryan Schmidt
406c4dbbe3 ToolsFramework: Improve Undo/Redo handling with new "Expired" functionality.
InteractiveToolManager now wraps incoming FChanges from the Tools in a FToolChangeWrapperChange that Expires itself once the Tool is no longer active.

InteractiveToolManager now pushes new FBeginToolChange at the start of each Tool. Undoing past start of Tool cancels the Tool, and then this change is Expired.

#rb none
#rnx

[CL 8618478 by Ryan Schmidt in Dev-Editor branch]
2019-09-10 14:40:38 -04:00
Ryan Schmidt
573d9becde add missing header
#rb none
#rnx

[CL 8618066 by Ryan Schmidt in Dev-Editor branch]
2019-09-10 14:20:52 -04:00
Ryan Schmidt
e0aaaed056 ToolsFramework: Standard implementations of Gizmos for axis position/angle and plane position. Used to implement a standard 3-axis translate/rotate transformer.
InteractiveGizmoManager now tracks Owner of Gizmos, for delete-by-owner support. Added Create3AxisTransformGizmo() to create standard Gizmo.

GizmoInterfaces.h: UInterfaces for gizmo components
AxisPositionGizmo, AxisAngleGizmo, PlanePositionGizmo: standard implementations of UInteractiveGizmo
GizmoBaseComponent, GizmoArrowComponent, GizmoRectangleComponent, GizmoCircleComponent: custom UPrimitiveComponent implementations for standard Gizmos
TransformGizmo: 3-axis transform gizmo built out of above elements
AxisSources.h, ParameterSourcesFloat/Vec2.h, StateTargets.h, HitTargets.h, TransformSources.h: UObjects used by Gizmos to expose implementation for customization.
ParameterToTransformAdapters.h: Gizmo ParameterSource implementations that convert axis/plane position and axis-angle to 3D translations/rotations
TransformProxy: wrapper around set of objects that provides a single FTransform, used by TransformGizmo to apply to multiple objects/etc
GizmoMath.h, GizmoRenderingUtil.h: utility functions for Gizmo implementation

#fyi Lauren.Ridge
#rb Michael.Daum
#rnx

[CL 8618015 by Ryan Schmidt in Dev-Editor branch]
2019-09-10 14:14:29 -04:00
Lauren Barnes
b4b7f96557 UEdMode initial implementation and handling by FEdModeManager
#jira UETOOL-1722
#rb none
#rnx
#fyi Ryan.Schmidt

[CL 8614167 by Lauren Barnes in Dev-Editor branch]
2019-09-10 12:01:07 -04:00
Ryan Schmidt
7d3b0485aa ToolsFramework: Add FInputRayHit that can be used by InputBehaviors and BehaviorTarget interfaces to return more detailed hit info (hit distance, integer ID, etc).
#rb none
#rnx

[CL 8435605 by Ryan Schmidt in Dev-Editor branch]
2019-09-03 17:20:30 -04:00
Ryan Schmidt
692ed0d34d add missing UPrimitiveComponent header
#jira UE-79714
#rb none
#rnx

[CL 8435282 by Ryan Schmidt in Dev-Editor branch]
2019-09-03 17:09:29 -04:00
michael daum
e118c5d0c9 Convert remaining ToolBuilderUtil funcs to use TArray instead of USelection
#rb none

#rnx

[CL 8288528 by michael daum in Dev-Editor branch]
2019-08-25 11:49:01 -04:00
michael daum
77c5559dad Change ToolContextInterfaces to use TArray instead of USelection
#rb none
#rnx

[CL 8244251 by michael daum in Dev-Editor branch]
2019-08-24 10:42:57 -04:00
michael daum
d3e162b42a Allow MeshModeling tools to operate on ProceduralMeshComponent
#rnx none

#rb ryan.schmidt

[CL 7623648 by michael daum in Dev-Editor branch]
2019-07-25 10:09:32 -04:00
michael daum
e306770ba7 Split MeshSource into TargetComponent, MeshSource, and MeshSink
#review-7228172 ryan.schmidt

#rnx

[CL 7275509 by michael daum in Dev-Editor branch]
2019-07-11 10:57:29 -04:00
Max Chen
4561801a81 Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) @7119039
#rb none

[CL 7120528 by Max Chen in Dev-Editor branch]
2019-06-21 01:21:43 -04:00
michael daum
aa54cfaa8b Add straggler ComponentSourceInterfaces.cpp to fix the build
#rb none
#rnx

[CL 7096058 by michael daum in Dev-Editor branch]
2019-06-19 15:13:48 -04:00
michael daum
ab449c6efc Simplify mechanism to provide and obtain MeshDescriptionSources. Also expose an API to provide and control access to Sources for custom Components types
#rb ryan.schmidt

#rnx

[CL 7090612 by michael daum in Dev-Editor branch]
2019-06-19 09:28:08 -04:00
Ryan Schmidt
ecd2e3e847 add missing header
#rb none
#rnx

[CL 7021454 by Ryan Schmidt in Dev-Editor branch]
2019-06-14 21:03:44 -04:00
Ryan Schmidt
2609b88e8f Add AInternalToolFrameworkActor base AActor subclass for Actors that Tools create internally. EdModeInteractiveToolsContext::ProcessEditDelete() checks if any to-be-deleted Actors can be cast to this type, and if so, ignores delete operation.
#rb none
#fyi jonathan.koelzer
#rnx

[CL 7012639 by Ryan Schmidt in Dev-Editor branch]
2019-06-14 16:46:25 -04:00
Ryan Schmidt
f5ead98087 Move InteractiveToolsFramework and EditorInteractiveToolsFramework modules to Experimental
#rb none
#rnx
#robomerge UE4-Main

[CL 6913333 by Ryan Schmidt in Dev-Editor branch]
2019-06-10 14:03:03 -04:00