Newly installed versions of the engine will now attempt to copy the project-agnostic config settings from a previous engine installation. This happens by way of a versioned manifest that copies old versions when the manifest does not exist, or is a different version. This code path is benign for non-installed versions of the engine (or FPaths::ShouldSaveToUserDir() is false).
EditorGameAgnosticSettings and EditorUserSettings ini paths have been renamed to EditorSettings and EditorPerProjectUserSettings respectively to better convey their purpose. In general, most settings should be saved in EditorSettings (project-agnostic) so that they apply regardless of which project is open. We have some way to go migrating existing settings for this to be the case, however.
Some previously per-project configuration files are now project-agnostic (such as Editor.ini, EditorKeyBindings.ini, and EditorLayout.ini)
GEditor->Access...Settings and GEditor->Get...Settings have been removed in favor of direct access of the CDO through GetMutableDefault<> and GetDefault<> respectively. Global config ini filenames that are not set up are now neither loaded nor saved on build machines, to handle the problem of indeterminate state more generically.
This addresses UETOOL-270 (Most editor preferences should be project-agnostic)
[CL 2517558 by Andrew Rodham in Main branch]
Moved the "GoToDocumentation" command from MaterialEditorCommands up to GraphEditorCommands.
#jira UE-11783 - Right click on BP nodes should offer link to API docs for node.
[CL 2506859 by Michael Schoell in Main branch]
#jira UE-7007 - Preview mesh button does not become highlighted when selected
#reviewedby Matt.Kuhlenschmidt
[CL 2472014 by Richard TalbotWatkin in Main branch]
Simplify/fix FText name generation for modifier keys
Have FInputGesture store a bit mask and expose helper functions instead of public boolean parameters (required to switch meaning of command/control on Mac)
#codereview Michael.Trepka
[CL 2365131 by Marc Audy in Main branch]
Scalar and Vector Parameter default value changes are applied to materials in the scene in realtime
Code view tab no longer updates or compiles shaders on each edit while closed
Right click menu options to convert between float parameter and constant types
[CL 2339422 by Daniel Wright in Main branch]
- Removed UI for Built-In Stats. Martin didn't like the feature but I've left the code in just in case people miss it.
- Removed useless bar at the bottom of the stats window.
- Hackily canceled some unnessessary compilaton when opening the editor.
[CL 2272297 by Simon Tovey in Main branch]
Toggles the compilation of the preview material everytime an edit is made.
#ttp 333463 - LIVE: RENDERING: Shaders compile automatically even when Live Nodes and Live Updates are Deselected
The Live Update, Live Nodes (and now Live Preview) toggles clearly aren't universally understood. I've added the live preview toggle to do what this user wanted. It may be an idea to have some UI guys see if extra clarity can be had from tootips/docs/icons etc.
#reviewedby Graeme.Thornton
[CL 2130403 by Simon Tovey in Main branch]
#ttp 332908 - Material editor: shortcut for component mask
#branch UE4
#proj Editor.MaterialEditor
#add Added new material editor action for CreateComponentMaskNode.
#add Created callback for creating a component mask node at the cursor.
#reviewedby Chris.Wood
[CL 2066775 by Richard TalbotWatkin in Main branch]
I've altered the preview material directly to compile with release shaders so that this incurs no overhead.
Refactored the empty material stuff to be neater and to report the base cost of the shader.
Reduced the shaders compiled for this empty stats material to the bare minimum. Typically 3-5, adding a near insignificat cost.
[CL 2054645 by Simon Tovey in Main branch]
#proj UE4.Engine
#summary Added Find Results tab to Material Editor
#add Added SFindInMaterial class to search and display results from materials, similar to the Blueprint version but didn't seem like there was an obvious method of splitting it up into a base class that could be used by both. Made sure to use the search functions from Material Expressions as well to ensure that the results will be the same or better than they were previously.
#change Added new function to UMaterialExpression to get a one line description of it. Most of the time this is just all of the expressions captions combined into one line using spaces, though there were exceptions for constants, textures and function calls so that better information is shown in the results window. Also added a JumpToNode function to FMaterialEditor so that the find results can show the nodes when clicked on.
#extra This is only for searching the current material at present, adding support for searching all assets would be a lot more work as we would need to store meta data allowing materials to be searched before they are loaded.
[CL 2043640 by Matthew Griffin in Main branch]