#jira UE-213569
#rb jimmy.andrews
#[robomerge][bot5] -FNActiveRelease
#ushell-cherrypick of 33376717 by jimmy.andrews
[CL 33459514 by Jimmy Andrews in 5.4 branch]
[FYI] Yoan.StAmant
Original CL Desc
-----------------------------------------------------------------
Removed some headers dependencies on 'FHitResult' and 'FOverlapResult'
#rb Mieszko.Zielinski
[CL 32477731 by alex kahn in 5.4 branch]
We now early out when the raycast misses the plane if snapping is disabled. If the tool plane is missed, then we use a point along the camera ray to find scene snap point (passed to FindSceneSnapPoint). A related bug is also fixed in this change in the snapping manager which caused only small sections of snappable edges to be considered. This was because the point passed to FindSceneSnapPoint was used to find a point on the 3 edges of a hit triangle, which is sensitive to camera position. Instead, we now use the raycast's impact point for the purposes of finding snap points on edges.
#rb Jimmy.Andrews, semion.piskarev
#jira UE-203169
[CL 31479814 by nickolas drake in 5.4 branch]
Our approach to deleting actors was apparently not sufficient to notify various editor systems of the deletion. This CL replaces AActor::Destroy with calls to UUnrealEdEngine::DeleteActors and UWorld::DeleteActor (depending on the context)
#rb lonnie.li
#jira UE-204240
[CL 31297677 by nickolas drake in 5.4 branch]
Two behaviors now exist. When selecting from the Level Editor viewport, relative transforms between all selected objects are preserved in the subsequent UVEditor's viewport. When selecting from the Content Browser, or other sources that don't wrap the selected objects in a Component, the UVEditor will provide an automatic layout based on the object's bounding spheres.
Further, there are two new CVARs:
modeling.UVEditor.EnableLivePreviewArrangement - Enables or Disables the auto arrangement feature when selecting from the Content Browser. This exists to support legacy behavior where users might want the object's baked in transform to position objects in the UVEditor.
modeling.UVEditor.LivePreviewArrangementMode - Selects the mode of the auto arrangement. 0 indicates a line formation. 1 indicates an adaptive circular arrangement.
#rb lonnie.li
#jira UE-202730
[CL 30948349 by nathan mitchell in 5.4 branch]
This was mistakenly included as I thought the SubmitTool had finished its work and I started messing around and it picked up my change
[FYI] lonnie.li
[CL 30862923 by nickolas drake in 5.4 branch]
When we have a valid topology type (Triangle or Poly, not None), we render selectable mesh elements.
Added AccumulateElementsFromPredicate to the GeometrySelector interface which allows a predicate function to filter which geometry elements ought to be included in the provided FGeometrySelectionElements. The predicate is aware of the type of element (vert, edge, tri) and the selected element ID (which is a single value encoding the topology ID and the element ID). The predicate returns true for elements to include and false for elements to exclude. Internally, this function builds transient vert, edge, and tri selections with this predicate and then accumulates all selection elements into the provided FGeometrySelectionElements.
#rb lonnie.li
#jira UE-202674
[CL 30862050 by nickolas drake in 5.4 branch]