- Added "Thickness" parameter to some functions (only for wired shapes rendering and with 0 as default value)
- Added GetHalfSphereMesh, GetConeMesh and GetCapsuleMesh functions
#codereview Daniel.Wright
[CL 2363368 by sebastian kowalczyk in Main branch]
* Moved Slate.h into SlateBasics.h and began shifting less commonly used headers into SlateExtras.h.
* Slate.h now simply includes SlateBasics.h and SlateExtras.h.
* Slate.h includes a deprecated warning now to indicate that SlateBasics.h + specific includes should be used instead.
* Moved dozens of inlined functions using Slate widgets into .cpp files to avoid header dependencies.
* All code samples now include SlateBasics.h and SlateExtras.h so future shifts will not break most those projects, but not trigger the deprecation warning of including Slate.h.
#BUN
[CL 2329610 by Wes Hunt in Main branch]
#ttp 338259 - SplineComponent: Add an option flag to close the spline
#branch UE4
#proj Editor.ComponentVisualizers, Runtime.Engine
[CL 2315996 by Richard TalbotWatkin in Main branch]
#ttp 341724 - FEATURE REQUEST: PAPER2D: Add or insert a key into a terrain spline
#ttp 341720 - FEATURE REQUEST: PAPER2D: Rename Key on terrain splines
#ttp 341378 - Spline Component/Meshs: Controls points only editable in worldspace. no localpace transformation
#reviewedby James.Golding
[CL 2228433 by Richard TalbotWatkin in Main branch]
- Changed USplineComponent::SplineReparamTable to a transient member and force rebuild each time in PostLoad() / PostDuplicate().
- Initialize the SplineReparamTable size at the start to save needless reallocations (as its size is known from the beginning).
- Added menu options to set spline key types (curve, linear, constant)
- Added Reset to Automatic Tangent to allow resetting to either a clamped or an unclamped tangent.
#branch UE4
#proj Runtime.Engine, Editor.ComponentVisualizers
#reviewedby James.Golding, Michael.Noland
[CL 2119717 by Richard TalbotWatkin in Main branch]
#add Added a new FUICommandList::ProcessCommandBindings overload, which can be called from a Viewport Client's InputKey() method (in the absence of an FKeyboardEvent object).
#add Fixed key binding handling in SplineComponentVisualizer so that it works through the FUICommandList, instead of being hardcoded.
#change USplineComponent - changed method by which spline reparam table is created (now uses the old method of splitting each segment into a fixed number of steps, instead of using fixed arc length reparameterization, which doesn't lead to such good results where the distance between control points varies largely throughout the spline). The ReparamStepsPerSegment parameter remains, although I'd like to remove it when I can hit upon a better way to adaptively step through the spline. Merged UpdateSplineReparamTable and AutoSetTangents into a single UpdateSpline method.
#add Added a parameter to FInterpCurve::AutoSetTangents - bStationaryEndpoints - which determines whether the endpoints should be assigned zero tangents, or whether the tangents should be set in order to extrapolate the curve beyond the endpoints, essentially providing a constant velocity at the start/end.
#add Added bStationaryEndpoints as an editable parameter to USplineComponent. Use this if you only wish to traverse the spline at constant velocity, as it will lead to more accurate results.
#codereview James.Golding, Michael.Noland
[CL 2112073 by Richard TalbotWatkin in Main branch]
Breaking changes include:
* Rename of GEditorModeTools -> GLevelEditorModeTools to signify that it applies only to the level editor modes
* Addition of FEditorModeRegistry, responsible for managing and creating new editor modes. Modes are no longer registered with an instance of the mode, instead with a mode factory that is able to create a new mode of that type.
* Editor modes now operate on FEditorViewportClients rather than FLevelEditorViewportClients
* Added ability to specify an FEditorModeTools when creating an FEditorViewport
Moved component vizualiser manager handling outside of individual editor modes, and into FLevelEditorViewportClient. This should make it easier to transplant in future.
This work addresses TTP#334640 - EDITOR: Investigate making editor modes a per-'editor' concept
Reviewed by Michael Noland, Matt Kuhlenschmidt
[CL 2109245 by Andrew Rodham in Main branch]