FindWidgetWindow no longer returns a path and uses parent pointers to find the parent window safely and more efficently.
#rb chris.gagnon, nick.darnell
[CL 4680301 by Matt Kuhlenschmidt in Dev-Editor branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3808185 by Cody.Albert
Added missing calls to FEditorViewportClient::AddReferencedObjects in overrides
Change 3809824 by Michael.Trepka
Improved the way we generate groups in Xcode project's source code navigator. They are now sorted alphabetically and have correct paths so Xcode no longer displays them in red. Also, added __INTELLISENSE__ to preprocessor definitions for indexing to improve indexing without game header files generated.
Change 3810089 by Jamie.Dale
Fixed PO files failing to import translations containing only whitespace
Change 3811281 by Matt.Kuhlenschmidt
PR #4331: Toggle SIE shortcut only in PIE (Contributed by projectgheist)
Change 3813031 by Matt.Kuhlenschmidt
Fix undocked tabs not dropping at users mouse location
#jira UE-53427
Change 3813361 by Brandon.Schaefer
Print what SDL video driver we are using
Change 3818430 by Matt.Kuhlenschmidt
PR #4365: Incorrect font name and forgotten undef (Contributed by projectgheist)
Change 3818432 by Matt.Kuhlenschmidt
PR #4366: Asset Color Strip updates correct on drag and drop (Contributed by projectgheist)
Change 3818436 by Matt.Kuhlenschmidt
PR #4367: Improved logging (Contributed by projectgheist)
Change 3819886 by Matt.Kuhlenschmidt
Add a way to optionally disable the warning about referenced actors being moved to other levels. Useful for bulk actor moves via script
Change 3819888 by Matt.Kuhlenschmidt
Avoid crashing when a window size becomes too large to render. Instead just ensure and clamp to the maximum allowed size. Avoids crashes where the screen dimensions are saved with super large numbers for unknown reasons
Change 3821773 by Brandon.Schaefer
Fix crash when importing to level
#jira UE-31573
Change 3821892 by Jamie.Dale
Improved the localized asset cooking so that it only cooks L10N variants if their source asset is cooked
#jira UE-53010
Change 3823714 by Christina.TempelaarL
#jira UE-52179 added support for grayscale PSD files
Change 3826805 by Christina.TempelaarL
#jira UE-49636 SceneCaptureComponent2D hidden actor and show only actors disabled in blueprints
#jira UE-53445 SceneCaptureComponent2D hidden actors always disabled in details layout
Change 3828444 by Anthony.Bills
Add LXC container script for building third party libraries.
The intention is that this should become the only way to rebuild the third party libraries that require system dependencies not included in the cross-compile toolchain and also to rebuild the toolchains. Other third party libraries without any system dependencies could be rebuilt via the cross-compile toolchains/UBT.
This script has been tested running on CentOS 7 and Ubuntu 17.10.
Buy default the x86 and x86_64 builds will be built against a CentOS 6 container (and targeting glibc 1.12) and the aarch64 and armhf builds will use an Ubuntu Ubuntu Trusty (14.04) but this is not yet complete.
Change 3828754 by Brandon.Schaefer
Linux: Fix gamepad thumbstick clicks not registering (github #4209 thanks J??rn M??ller)
#jira UE-45722
#review-3828733 Arciel.Rekman
Change 3830414 by Brandon.Schaefer
Remove circular referencing to a parent window. Move to use AddSP vs AddRaw as well to be safe manually remove ourselves from the selection event delegate list due to Linux pending deletion of windows.
Looks like this should fix UE-28322 as well which I've removed the work around placed in for that.
#jira UE-53918
#review @michael.trepka, @matt.kuhlenschmidt, @arciel.rekman
Change 3830916 by Brandon.Schaefer
More verbose message about missing VK extensions (from Marcin Undak)
#review-3830710 marcin.undak, arciel.rekman
Change 3831339 by Brandon.Schaefer
Default to as-needed for debug mode
#jira none
#review-3830658 Arciel.Rekman
Change 3833102 by Jamie.Dale
Re-added warning for duplicate package localization IDs when gathering asset localization
Change 3834600 by Jamie.Dale
Optimized asset registry filter intersection
Change 3838024 by Brandon.Schaefer
Remove tracking of CLion/CMake build files (from github #4346 thanks reapazor!)
#jira UE-53551
#review-3835803 arciel.rekman
Change 3839969 by Michael.Dupuis
#jira UE-52289: When OnRegister is called on the component make sure our PerInstanceRenderData is up to date
Prevent a possible crash if ClearInstanceSelection was called on a component with no PerInstanceRenderData existing
Change 3840049 by Michael.Dupuis
#jira UE-52975: Was always performing the equivalent of an Add, so now we use the Transform during the duplicate
Change 3840071 by Matt.Kuhlenschmidt
- Combine some shader params for slate in order to reduce overhead setting uniform buffers
- Added better stats for slate draw call rendering
- cleaned up huge lambda in Slate rendering main function so we can read the main slate rendering function again
Change 3840291 by Michael.Dupuis
#jira UE-53053: Was having a mismatch between the remove reorder and the actual remove
Change 3840840 by Michael.Dupuis
#jira UE-53944: Make sure the LOD generated is in the valid range to prevent the crash
Change 3842072 by Michael.Dupuis
#jira UE-50299: Include NumSubsection in calculation of component quad factor
Change 3842487 by Christina.TempelaarL
#jira UE-50573 HighResShot has wrong res in immersive mode
Change 3845702 by Matt.Kuhlenschmidt
PR #4381: DefaultASTCQualityBySpeed too high max value. (Contributed by kallehamalainen)
Change 3845706 by Matt.Kuhlenschmidt
PR #4388: Only restore window if minimized (Contributed by projectgheist)
Change 3845993 by Christina.TempelaarL
#jira UE-41558 crash when selecting PostProcessingVolumes in separate levels
Change 3856395 by Brandon.Schaefer
No longer using ALAudio on Linux
#jira UE-53717
Change 3858324 by Michael.Trepka
Preserve command line arguments in Xcode project when regenerating it
Change 3858365 by Michael.Dupuis
#jira UE-52049: There was a case where adding and removing multiple time would lead to reordering the instances and this would cause the regeneration of the random stream for all the reorded instances.
Change 3858492 by Michael.Trepka
Updated dependencies for Mac dSYM files so that only cross-referenced modules have their dSYMs recreated on subsequent builds instead of all modules.
Change 3859470 by Michael.Trepka
CIS fix. Make sure a scheme file exists before trying to read it when generating Xcode project.
Change 3859900 by Joe.Conley
Fix for "Check Out Assets" window not properly receiving focus.
Change 3865218 by Michael.Dupuis
#jira UE-45784: Exposed the possibility to edit LDMaxDrawDistance
Change 3866957 by Michael.Dupuis
#jira UE-42509: Added BodyInstance to ULandscapeSplineSegment and ULandscapeSplineControlPoint
Deprecated bEnabledCollision and migrate data as it's replaced by BodyInstance
Change 3867220 by Cody.Albert
Fixed Project Launcher scrollbar to properly stay anchored at the bottom of the scroll area.
Change 3869117 by Michael.Dupuis
#jira UE-42509:Fixed compile error when not having editor data
Change 3872478 by Arciel.Rekman
Linux: disable PIE if compiler enables it by default.
Change 3874786 by Michael.Dupuis
#jira UE-46925: Remove the guessing functionality when importing a heightmap, and instead propose to the user valid size that can be used for the import through a combo button.
Improved usability of the UI by disabling size field when no file was specified
Change 3875859 by Jamie.Dale
Implemented our own canonization for culture codes
Change 3877604 by Cody.Albert
We now validate actor names passed to SetActorLabel to ensure None isn't passed in, which can corrupt levels
Change 3877777 by Nick.Shin
PhysX build fix - this came from CL: 3809757
#jira UE-54924 Cannot rebuild Apex/PhysX/NvCloth .emscripten missing
Change 3881693 by Alexis.Matte
Fix local path search to not search in memory only
#jira UE-55018
Change 3882512 by Michael.Dupuis
#jira none : Fixed screen size calculation to take aspect ratio into account correctly
Change 3886926 by Arciel.Rekman
Linux: fixed checking clang settings during the cross-build (UE-55132).
#jira UE-55132
Change 3887080 by Anthony.Bills
Updated SDL2 build script.
- Now allows compiling inside a CentOS 6 or Ubuntu 12.04 container with wayland support when using the ContainerBuildThirdParty.sh.
- Added multiple build arch support to the BuildThirdParty script and pass this down to the SDL2 build script.
Change 3887260 by Arciel.Rekman
Linux: fix leaking process handles in the cross-toolchain.
Change 3889072 by Brandon.Schaefer
Fix RPath workaround, to better handle both cases
#jira UE-55150
#review-3888119 @Arciel.Rekman, @Ben.Marsh
Change 3892546 by Alexis.Matte
Remove fbx exporter welded vertices options
#jira UE-51575
Change 3893516 by Michael.Dupuis
Remove static mesh instancing async buffer filling, as with all the changes made, it's no longer necessary, the cost of loading very large buffer is negligable
Rebuild the occlusion tree when using foliage.DensityScale with something other than 1.0
Change 3894365 by Brandon.Schaefer
Pass FileReference over a raw string to the LinkEnvironment
#jira none
#review-3894241 @Ben.Marsh, @Arciel.Rekman
Change 3895251 by Brandon.Schaefer
Use X11 pointer barriers to bound the cursor to a region over warping the pointers. Patch from Cengiz
#jira UE-25615
#jira UE-30714
#review-3894886 @Arciel.Rekman
Change 3897541 by Michael.Dupuis
#jira UE-53787: Added guard if for some reason the material is null we should not try to draw using this material
Change 3904143 by Rex.Hill
#jira UE-55366: Fix crash when overwriting existing level during level save as
#jira UE-42426: Map '_BuiltData' can now be deleted when selected at same time as map
- Map '_BuiltData' package is now garbage collected when switching maps in the editor
Change 3906373 by Brandon.Schaefer
Fix splash image. Use alias format for big/little endian machines.
#jira none
Change 3906711 by Rex.Hill
#jira UE-42426: BuiltData now deleted with maps
Change 3907221 by Cody.Albert
Add support for relative asset source paths in content plugins
Change 3911670 by Alexis.Matte
Fix assetimportdata creation owner
#jira UE-55567
Change 3912382 by Anthony.Bills
Linux: Add binaries for GoogleTest and add to BuildThirdParty script.
Change 3914634 by Cody.Albert
Added missing include that could cause compile errors if IWYU was disabled.
Change 3916227 by Cody.Albert
Fixing some cases where we check #ifdef WITH_EDITOR instead of #if WITH_EDITOR
Change 3917245 by Michael.Dupuis
#jira UE-35097: Fixed crash when creating a new landscape with 2x2 subsection and material containing grass spawning
Change 3918331 by Anthony.Bills
Linux: Bundled Mono - Explicilty pick libc.so.6 as libc.so is a linker script and store the config file directly.
Change 3920191 by Rex.Hill
#jira UE-44197 Fix saving sub-level level causing MapBuildData to be deleted
Improved MapBuildData rename, move, duplicate, copy
Change 3920333 by Matt.Kuhlenschmidt
Render target clear color property now settable in editor
#jira UE-55347
Change 3926094 by Michael.Dupuis
#jira UE-51502: Added some min/max values to foliage and grass settings to prevent overflow/crash
#coderevew jack.porter
Change 3926243 by Michael.Dupuis
#jira UE-54669: cleaned up invalid/duplicate shader and moved some shaders to appropriate list
Change 3926760 by Jamie.Dale
Added support for TTC/OTC fonts
These can be used via a sub-face index on FFontData, which can be set via a new combo in the font editor. You can also see the cached list of sub-faces within a font file from the UFontFace asset.
Change 3927793 by Anthony.Bills
Mono: Remove SharpZipLib and references from bundled Mono.
#review-3887212 @ben.marsh, @michael.trepka
Change 3928029 by Anthony.Bills
Linux: Add support for UnrealVersionSelector.
- Supports using UVS to launch without a project file. This will then launch the selected engine's project wizard.
- Linux UVS uses Slate for the version selection and error log dialogs.
- Mime-types and desktop file support added to DesktopPlatformLinux to allow associating with UVS as per the Windows binary and git builds.
- Icons added for Linux.
#review-3882197 @arciel.rekman, @brandon.schaefer
Change 3931293 by Alexis.Matte
Add generic Levenshtein edit distance to core algo. This algorithm will help suggesting name matching when users have to resolve material name conflict when re-import fbx meshes.
Add also plenty of automation tests for it.
#jira none
Change 3931436 by Arciel.Rekman
Stop RHI thread before shutting down RHI.
- Prevents crashes for some drivers that create TLS objects with destructors; those destructors will get called after the thread exited, but the library will already be unloaded on RHI shutdown.
Change 3934287 by Alexis.Matte
Fix crash when re-importing skeletal mesh. Skinned component render data resource is now release when re-importing.
#jira none
Change 3937585 by Lauren.Ridge
Added labels to the colors stored in the theme bar.
Change 3937738 by Alexis.Matte
Make sure content browser do not show a preview asset created when we cancel an export animation preview
#jira UE-49743
Change 3941345 by Michael.Dupuis
#jira UE-26959: Prevent reusing multiple type the same grass type into the same material grass output node
Change 3941453 by Michael.Dupuis
#jira UE-47492: Added a guard to validate LayerIndex
Change 3942065 by Jamie.Dale
Fixed crash trying to use FSlateApplication when it wasn't available (eg, in a commandlet)
Change 3942573 by Alexis.Matte
Fix static analysis
Change 3942623 by Michael.Dupuis
#jira 0
Cast to ulong as TaskIndex * NumStripes could exceed an int limit and add an assert if the wraparound is negative
Change 3942993 by Matt.Kuhlenschmidt
PR #4547: Verify the return value of FT_New_Memory_Face (Contributed by jorgenpt)
Change 3942998 by Matt.Kuhlenschmidt
PR #4554: Cleanup log printing (Contributed by projectgheist)
Change 3943003 by Matt.Kuhlenschmidt
PR #4534: Prevent Fatal log when alt tabbing during a level save (Contributed by projectgheist)
Change 3943011 by Matt.Kuhlenschmidt
PR #4518: edit (Contributed by pdlogingithub)
Change 3943027 by Matt.Kuhlenschmidt
PR #4524: Notifications always render on the screen with the main viewport (Contributed by projectgheist)
Change 3943074 by Matt.Kuhlenschmidt
PR #4484: Add group actor to folder (Contributed by ggsharkmob)
Change 3943079 by Matt.Kuhlenschmidt
PR #4431: Git Plugin: replace usage of the 2 cli args "--work-tree" and "--git-dir" by "-C" (Contributed by SRombauts)
Change 3943092 by Matt.Kuhlenschmidt
PR #4434: Git plugin: configure the default remote URL 'origin' (Contributed by SRombauts)
Change 3943132 by Matt.Kuhlenschmidt
PR #4247: Add File picker to Git Path setting on GitSourceControl (Contributed by shiena)
Change 3943141 by Matt.Kuhlenschmidt
PR #4303: Fix ULevelExporterT3D so that it works in a commandlet (Contributed by DSDambuster)
Change 3943349 by Jamie.Dale
Cleaned up PR #4547
Made the assert non-fatal to avoid it being able to take down the editor if you load up a bad font.
Fixed some code that was deleted during the merge.
Change 3943976 by Michael.Trepka
Copy of CL 3940687
Fixed long link times when building for Mac in Debug by passing -no_deduplicate flag to the linker, which is what Xcode does in Debug configs.
#jira none
Change 3944882 by Matt.Kuhlenschmidt
Fix a few regressions with scene viewport activation locking can capturing the cursor in editor
#jira UE-56080, UE-56081
Change 3947339 by Michael.Dupuis
#jira UE-55664: Fixed undo/redo buffer handling so we remove from the beginning of the buffer during undo buffer where buffer is at max memory and from the end during redo operation.
Fixed cancel also to re add removed transaction at the end or the start depending if we're doing a redo or undo operation
Fixed the Undo History UI to listen to an event when the undo buffer changed instead of checking every frame, as when the buffer was full, no changes would occur, thus no UI update.
Change 3948179 by Jamie.Dale
Fixed monochromatic font rendering
- All non-8bpp images are now converted to 8bpp images for processing in Slate.
- We convert the gray color of any images not using 256 grays (eg, monochromatic images that use 2 grays).
- Fixed a case where the temporary bitmap wasn't being deleted.
- Fixed a case where the bitmap could be used after it was deleted.
- Added a CVar (Slate.EnableFontAntiAliasing) to control whether you want anti-aliased (256 grayscale) rendering (default), or monochromatic (2 grayscale) rendering.
Change 3949922 by Alexis.Matte
Ensure fbx node name are not empty when loading a fbx file. I use the same naming convention as Maya
#jira UE-56079
Change 3950202 by Rex.Hill
Fix crash during editor asset automation tests.
Now skips showing modal progress window when opening asset editor window. ActiveTopLevelWindow is not set when modal windows are open.
#jira UE-56112
Change 3950484 by Michael.Dupuis
#jira UE-52176: delete the Cluster tree when the builder is no longer needed
Change 3954628 by Michael.Dupuis
Bring back 4.19/4.19.1 Landscape changes
Change 3957037 by Michael.Dupuis
#jira UE-53343: Add foliage instances back when changing component size
Changed the formulation for the Clip/Expand behavior to make it more explicit on what will happen
Added SlowTask stuff to manage big landscape change
Change 3959020 by Rex.Hill
Rename/move file MallocLeakDetection.h
Change 3960325 by Michael.Dupuis
Fixed static analysis
Change 3961416 by Michael.Dupuis
#jira UE-46100: Exposed UseDynamicInstanceBuffer on Foliage type, so user can decide if they want to update them dynamically
#jira UE-55092: Fixed the warning to appear when having resource array as empty but VB as set up
Added data conssitency that when using Dynamic buffer, Keep CPU Access should also be true, even if implicitly it's already the case, now it's explicit
Change 3962372 by Michael.Trepka
Copy of CL 3884121
Fix for SProgressBar rendering incorreclty on Mac
#jira UE-56241
Change 3964931 by Anthony.Bills
Linux: Add cross-compiled binary of UVS Shipping.
Change 3966719 by Matt.Kuhlenschmidt
Fix parameters out of order here
#jira UE-56399
Change 3966724 by Matt.Kuhlenschmidt
PR #4585: Export symbols for the FDragTool (Contributed by Begounet)
Change 3966734 by Matt.Kuhlenschmidt
PR #4596: fix the slider issue of the HighResolutionScreenshot window (Contributed by mamoniem)
Change 3966739 by Matt.Kuhlenschmidt
Removed duplicated code
#jira UE-56369
Change 3966744 by Matt.Kuhlenschmidt
PR #4602: Fixes check for existing extensions when generating "All Extensions". (Contributed by PhilBax)
Change 3966758 by Matt.Kuhlenschmidt
PR #4604: Fixed an issue where the Modules and DebugTools tabs would be unrecognized after startup if docked in the level editor (Contributed by tstaples)
Change 3966780 by Matt.Kuhlenschmidt
Fix crash accessing graph node title widgets when objects have become stale.
#jira UE-56442
Change 3966884 by Alexis.Matte
Fix speedtree uninitialized values
#jira none
Change 3967568 by Alexis.Matte
Do not override the screensize when importing a skeletal mesh, let the value set by the AddLodInfo function
#jira UE-56493
Change 3968333 by Brandon.Schaefer
Fix order of operation
#jira UE-56400
Change 3969070 by Anthony.Bills
Linux: Make sure to set the UE_ENGINE_DIRECTORY
#jira UE-56503
#review-3966609 @arciel.rekman, @brandon.schaefer
Change 3971431 by Michael.Dupuis
#jira UE-56515: Fixed an issue where ForcedLOD > MaxLOD and make sure that LastLOD will at least contain current streamed in LOD.
#jira UE-56517: When using ParallelInitView 1 there was a memory leak related to a reallocate that happen with the TArray of FMemstack
Pass correctly LODDistanceFactor instead of View.LODScale as we do not want StaticMeshScale to affect us.
Change 3971467 by Matt.Kuhlenschmidt
Fixed crash deleting a texture with texture painting on it
#jira UE-56994
Change 3971557 by Matt.Kuhlenschmidt
Fix temporary exporter objects being potentially GC'd and causing crashes during export
#jira UE-56981
Change 3971713 by Cody.Albert
PR #4597: [FPS Template] Small null pointer check fix and cleanup (Contributed by TheCodez)
Change 3971846 by Michael.Dupuis
#jira UE-56517: Properly "round" the count so we have the right amount of memory reserved
#jira UE-56515: Still had a edge case left, so when using forced lod i simply make sure the value is in valid range, and allocate all the required data for this range
Change 3973035 by Nick.Atamas
Line and Spline rendering changes:
* Lines/Splines now use 1 UV channel to anti-alias (this channel can be used for texturing)
* Anti-aliasing filter now adjusted based on resolution
* Modified Line/Spline topology to accomodate new UV requirements
* Disabled vertex snapping for anti-aliased lines/splines; previously vertexes were snapped, but vertex positions did not affect line rendering (behavior effectively unchanged)
* Splines now adaptively subdivided to avoid certain edge-cases
Change 3973345 by Nick.Atamas
- Number tweaks to maintain previously perceived wire thickness in various editors.
Change 3977764 by Rex.Hill
MallocTBB no longer debug fills bytes in development configuration
Change 3978713 by Arciel.Rekman
UVS: Fix stale dependency.
Change 3980520 by Matt.Kuhlenschmidt
Fix typo
#jira UE-57059
Change 3980557 by Matt.Kuhlenschmidt
Fixed negative pie window sizes causing crashes
#jira UE-57100
Change 3980565 by Matt.Kuhlenschmidt
PR #4628: Fixed revert action, now correctly uses CanRevert() condition (Contributed by Kryofenix)
Change 3980568 by Matt.Kuhlenschmidt
PR #4626: UE-57111: Handle CaptureRegion for HighResShot in PIE (Contributed by projectgheist)
Change 3980580 by Matt.Kuhlenschmidt
PR #4567: [Editor UI] Pick Parent Class dialog: set keyboard focus and handle Escape & Enter (Contributed by SRombauts)
Change 3980581 by Matt.Kuhlenschmidt
PR #4565: [Editor UI] Add C++ Class dialog: set keyboard focus and handle Escape & Enter (Contributed by SRombauts)
Change 3981341 by Jamie.Dale
Re-added GIsEditor condition around package namespace access
#jira UE-55816
Change 3981808 by Ryan.Brucks
Added LandscapeProxy functions to push RenderTarget data to Heightmaps and Weightmaps
Change 3983344 by Jack.Porter
#include fixes for CL 3981808
#jira 0
Change 3983391 by Jack.Porter
One for #include fix for CL 3981808
#jira 0
Change 3983562 by Michael.Dupuis
#jira UE-53787: Make sure the material array is valid before trying to generate static mesh batch element
#jira UE-56451: Instead of asserting, simply skip this element as it had invalid custom data anyway, so we can't render it
Change 3983600 by Matt.Kuhlenschmidt
PR #4289: Pragma Once/Include guard cleanup (Contributed by projectgheist)
Change 3983637 by Matt.Kuhlenschmidt
PR #4408: Add a template pregeneration hook (Contributed by mhutch)
Change 3984392 by Michael.Dupuis
#jira UE-56314: Correctly apply LODBias on calculated LOD
Fixed some Landscape popping that could occur when we were forcing a LOD that didn't match the component screen size
Change 3984950 by Rex.Hill
Optimized texture import speed 2-3x depending on number of cpu cores and image size
Change 3985033 by Rex.Hill
File drag and drop is more quick to respond when editor is in background
#jira UE-57192
Change 3986218 by Jack.Porter
Missing template parameter fix for CL 3981808
#jira 0
Change 3986376 by Michael.Dupuis
#jira UE-56453: Do not use the CreateDynamicMaterialInstance as it will change the parenting of the actor used material, instead simply use the function to generate the MID and parent it correctly.
Change 3989391 by Matt.Kuhlenschmidt
Fix constant FName lookup in level editor when checking various states of level editor tabs
Change 3990182 by Rex.Hill
Optimize editor startup time: GetCurrentProjectModules
Change 3990365 by Alexis.Matte
Fix crash with spline mesh when the attach SM get a new imported LOD
#jira UE-57119
Change 3991151 by Rex.Hill
VR Editor module now waits to load images until VR mode activated in editor. Saves 0.4 seconds of editor startup time.
Change 3991164 by Rex.Hill
Optimize editor startup time: FindModulePaths()
- Invalidates cache when search paths added
- Use cache during wildcard searches containing * and ?
Change 3995366 by Anthony.Bills
Update BuildCrossToolchain script to allow a Linux host targeting multiple Linux architectures (including the hosts arch). Added a patch to support a gcc 4.8.5 based toolchain on windows (potentially useful for users crosscompiling using GCC and libstdc++ and targeting CentOS 7).
#review-3848487 @arciel.rekman, @brandon.schaefer
Change 3996109 by Jamie.Dale
Reworked BP error messages to be more localization friendly
#jira UETOOL-1356
Change 3996123 by Michael.Dupuis
#jira UE-57427: Update random color on load of the component
#jira UE-56272:
Change 3996279 by Merritt.Cely
Removed hardware survey from editor
#jira an-2243
#tests launched the editor
Change 3996626 by Alexis.Matte
Fix crash when SkeletalMesh tangent buffer is empty after the build and we serialize the tangent array.
#jira UE-57227
Change 3996663 by Max.Chen
Sequencer: Fix fbx animation export - rotation and scale channels were flipped.
#jira UE-57509
#jira UE-57512
#jira UE-57514
Change 4000331 by Brandon.Schaefer
Add a GFNameTableForDebuggerVisualizers_MT back only for Unix under the Core module
#review-3999426 @Arciel.Rekman
#jira UE-55298
Change 4000450 by Matt.Kuhlenschmidt
Another guard against a factory being destroyed during import
#jira UE-57674
Change 4000459 by Matt.Kuhlenschmidt
Added check for valid game viewport to see if this is the problem in UE-57677
#jira UE-57677
Change 4000493 by Matt.Kuhlenschmidt
Remove stale GC'd components when refreshing paint mode to prevent crashes
#jira UE-52618
Change 4000683 by Jamie.Dale
Fixed target being incorrect when added via the Localization Dashboard
#jira UE-57588
Change 4000738 by Alexis.Matte
Add a section settings to ignore the section when reducing
#jira UE-52580
Change 4000920 by Alexis.Matte
PR #4219: Fix for SColorGradingPicker preventing PIE (Contributed by projectgheist)
author projectgheist projectgheist@gmail.com
Change 4001432 by Alexis.Matte
Add a fbx re-import resolve material windows, user can now help resolving the material in case the importer fail to found a match.
Change 4001447 by Jamie.Dale
Fixed property table not working with multi-line editable text
Change 4001449 by Jamie.Dale
PR #4531: Localization multiline fix (Contributed by Lallapallooza)
Change 4001557 by Alexis.Matte
Fix a check in fbx scene importer, in case the user import a fbx LOD group with no geometry under it
#jira UE-57676
Change 4002539 by Alexis.Matte
Make the fbx importer global transform options persist in the config file
#jira UE-50897
Change 4002562 by Anthony.Bills
Linux: Enable UVS registering for git builds only and remove old Mono and pre-UVS script code.
Change 4003241 by Alexis.Matte
Fix the staticmesh import socket logic, it was duplicating socket when re-importing
#jira UE-53635
Change 4003368 by Michael.Dupuis
#jira UE-57276:
#jira UE-56239:
#jira UE-54547:
Make sure we can't go above MaxLOD even for texture streaming
Change 4003534 by Alexis.Matte
Fix re-import mesh name match
#jira UE-56485
Change 4005069 by Michael.Dupuis
#jira UE-57594: Add a guard to prevent crash if we have an invalid resource for the heightmap texture (happen when component is deleted, for example)
Change 4005468 by Lauren.Ridge
Widgets should not be removed from parent when they are pending GC
#jira UE-52260
Change 4006075 by Michael.Dupuis
Fixed foliage density scaling to be applied even in editor, except in Foliage edit mode.
Change 4006332 by Arciel.Rekman
UBT: Adding support for bundled toolchains on Linux.
- Authored by Anthony Bills, with modifications.
Change 4007528 by Matt.Kuhlenschmidt
PR #4665: Source control History Window: enlarge column Description (Contributed by SRombauts)
Change 4007531 by Matt.Kuhlenschmidt
PR #4656: UE-57200: Ignore reference to actor if same actor (Contributed by projectgheist)
Change 4007548 by Matt.Kuhlenschmidt
PR #4664: Set Password on EditableText (Contributed by projectgheist)
Change 4007730 by Brandon.Schaefer
Add a new way to symbolicate symbols for a crash at runtime
Two new tools are used for this.
1) dump_syms Will generate a symbol file, which is to large to read from at runtime
2) BreakpadSymbolEncoder Takes the dump_syms file and encodes it in such a way we can do
a binary search at runtime to find a Program Counter to a symbol we are looking for
#review @Arciel.Rekman, @Anthony.Bills
#jira UETOOL-1206
Change 4008429 by Lauren.Ridge
Fixing undo bug when deleting user widgets from the widget tree
#jira UE-56394
Change 4008581 by Cody.Albert
Reinitialize needs to set the audio and caption tracks in addition to the video track or the currently selected track will be lost
Change 4009605 by Lauren.Ridge
Added Recently Opened assets filter under Other Filters in the Content Browser
Change 4009797 by Anthony.Bills
Linux: Update MultiArchRoot path to not cache. Move in tree toolchain location to match UBT convention and make sure the MultiArchRoot is checked before the system.
Change 4010266 by Michael.Trepka
Copy of CL 4010052
Moved some key event handling calls to the main thread on Mac to satisfy new macOS requirements
#jira UE-54623
Change 4010838 by Arciel.Rekman
Linux: limit allowed clang versions to 3.8-6.0.
Change 4012160 by Matt.Kuhlenschmidt
Changed the messagiing on the crash reporter dialog to reflect new bug submission process
#jira UE-56475
Change 4013432 by Lauren.Ridge
Fix for non-assets attempting to add to the Content Browser's recent filter
#jira none
Change 4016353 by Cody.Albert
Improved copy/paste behavior for UMG editor:
-Pasting in the designer while a canvas is selected will place the new widget under the cursor
-Pasting multiple times while a canvas panel is selected in the hierarchy view will cascade the widgets starting at 0,0
-Pasting while something that isn't a panel is selected is now allowed, and will cascade the pasted widgets off the position of the selected widget (as siblings)
-Newly pasted widgets will now be selected automatically
-Pasting multiple widgets at once will try and maintain their relative positions if they're being pasted into a canvas panel
Change 4017274 by Matt.Kuhlenschmidt
Added some guards against invalid property handle access
#jira UE-58026
Change 4017295 by Matt.Kuhlenschmidt
Fix trying to apply delta to a mix of scene components and non scene components. Its acceptable to not have scene components in the selected component list
#jira UE-57980
Change 4022021 by Rex.Hill
Fix for audio desync and video fast-forwarding behavior.
There long delay (500ms+) until samples start arriving unless we use RequestedTimeCurrent.
After delay occurs samples begin arriving at accelerated speed until caught up to playback time leading to visual and audio problems.
#jira UE-54592
Change 4023608 by Brandon.Schaefer
Downscale memory if we dont have enough
#jira UE-58073
#review-4023609 @Arciel.Rekman
Change 4025618 by Michael.Dupuis
#jira UE-58036: Apply world position offset correctly
Change 4025661 by Michael.Dupuis
#jira UE-57681: Added guard to prevent possible crash if either we have an invalid material or the material parent is invalid
Change 4025675 by Michael.Dupuis
#jira UE-52919: if no actor was found in the level skip moving the instances
Change 4026336 by Brandon.Schaefer
Manually generate *.sym files for Physx3
This should be done in the BuildPhysx file
Change 4026627 by Rex.Hill
Fix memory leak fix when playing video and main thread blocks
#jira UE-57873
Change 4029635 by Yannick.Lange
Fix VRMode loading assets only when VRMode starts.
#jira UE-57797
Change 4030288 by Jamie.Dale
Null FreeType face on load error to prevent potential crashes
Change 4030782 by Rex.Hill
Fix save BuildData after changing reflection capture in a new level
#jira UE-57949
Change 4033560 by Michael.Dupuis
#jira UE-57710: Added some guard to prevent crash/assert
Change 4034244 by Michael.Trepka
Copy of CL 4034116
Fixed arrow keys handling on Mac
Change 4034708 by Lauren.Ridge
PR #4699: UE-8508: Update config file to keep folder color in sync (Contributed by projectgheist)
#jira UE-58251
Change 4034746 by Lauren.Ridge
PR #4701: Add option to close tabs to the right of the active tab (Contributed by jesseyeh)
#jira UE-58277
Change 4034873 by Lauren.Ridge
Fix for not being able to enter simulate more than once in a row.
#jira UE-58261
Change 4034922 by Lauren.Ridge
PR #4387: Commands mapped in incorrect location (Contributed by projectgheist)
#jira UE-53752
Change 4035484 by Lauren.Ridge
Tentative fix for crash on pasting comment. All other accesses to UMaterialExpressionComment check its validity first
#jira UE-57979
Change 4037111 by Brandon.Schaefer
Try to use absolute path from dladdr if we can to find the sym files
#jira UE-57858
#review-4013964 @Arciel.Rekman
Change 4037366 by Brandon.Schaefer
Dont check the command line before its inited
#review-4037183 @Arciel.Rekman
#jira UE-57947
Change 4037418 by Alexis.Matte
Remove the checkSlow when adding polygon
Change 4037745 by Brandon.Schaefer
Use as much info as we can during ensure
Just as fast as the old way but with more information
#review-4037495 @Arciel.Rekman
#jira UE-47770
Change 4037816 by Rex.Hill
Import mesh optimization, BuildVertexBuffer
Change 4037957 by Arciel.Rekman
UBT: make it easier to try XGE on Linux.
Change 4038401 by Lauren.Ridge
Reordering is now correctly handled by undo. Reordering and then undoing will no longer cause a "ghost" widget to also be part of the tree.
#jira UE-58206
Change 4039612 by Anthony.Bills
Unix: Check for null StdOut and ReturnCode parameters, otherwise the code may dereference a null variable when the process fails to create.
Change 4039754 by Alexis.Matte
Remove the Render meshdescription, no need to carry this temporary data in the staticmesh
Change 4039806 by Anthony.Bills
Linux: UVS fixes
- Update to use new Unix base platform.
- Use bin/bash instead of usr/bin/bash (may need revisiting later).
- Recompile Shipping version with changes.
- Update Setup.sh to run from correct CWD (due to current limitations in the relative directory handling).
Change 4039883 by Lauren.Ridge
PR #4576: Save editor config to file first time a fav folder is added in the co. (Contributed by projectgheist)
#jira UE-56249
Change 4040117 by Lauren.Ridge
Replacing widgets should now also clear out references to the widget
#jira UE-57045
Change 4040790 by Lauren.Ridge
Tentative fix for Project Launcher crash when platform info not found
#jira UE-58371
Change 4042136 by Arciel.Rekman
UBT: refactor of LinuxToolChain to make it leaner and more configurable.
- Made it possible to override SDK passed to the toolchain.
- Simplified the code by using the same executable names on Windows and Linux (as .exe is optional), except where File.Exists() is needed (also remove a few)
- Some minor renames to make it clear that SystemSDK means system compiler (which otherwise may be unclear)
- Made changes to accomodate the new debug format.
Change 4042930 by Brandon.Schaefer
GCoreObjectArrayForDebugVisualizers was changed to FChunkedFixedUObjectArray reflect that in the Unix part
Change 4043539 by Brandon.Schaefer
Fix callsite address being used at times for the Program Counter
Fix only reporting the actual callstack and not the crash handling callstacks
#review-4041370 @Arciel.Rekman
#jira UE-58477
Change 4043674 by Arciel.Rekman
Added Linux ARM64 (AArch64) lib for MikkTSpace.
- Now required for standalone games due to EditableMesh runtime plugin.
Change 4043677 by Arciel.Rekman
Linux: updated ARM64 (AArch64) version of SDL2.
Change 4043690 by Arciel.Rekman
Linux: allow compiling VulkanRHI for AArch64 (ARM64).
Change 4045467 by Brandon.Schaefer
Add Anthony Bills SetupToolchain.sh script
Used to download the latest toolchain
Change 4045940 by Michael.Trepka
Return empty list instead of null from Mac GetDebugInfoExtensions() in UBT
#jira UE-58470
Change 4046542 by Alexis.Matte
Fix skeletal re-import material assignation
#jira UE-58551
Change 4048262 by Brandon.Schaefer
Rebuild SDL with pulse audio libs
#jira UE-58577
Change 3887093 by Anthony.Bills
Add bundled mono binary for Linux.
- Unify some of the script structure across Mac and Linux.
- This currently uses the same mono C# assemblies as Mac to keep the additional source size down.
- If the Mac mono version is updated, the Linux version will also need to be updated to match the same mono git revision.
- The system version of mono can still be used by setting the UE_USE_SYSTEM_MONO env var to 1.
Change 4003226 by Michael.Dupuis
Refactored StaticMeshInstancing to now use a command buffer to communicate with the GPU to prevent concurent access issues. It's mostly used in Editor or if runtime changes occur, otherwise the data is built and send to the GPU directly without keeping CPU copy.
Changed how the density scaling was applied to be more optimal
Removed UseDynamicInstanceBuffer as the concept is now irrelevant
Change 3833097 by Jamie.Dale
Localization Pipeline Optimization
Manifest/Archives:
Added FLocKey to keep an immutable string and its hash. This is used in several places within manifests and archives to minimize string hashing. FLocTextHelper also now take these in its API.
This also fixes some places where manifests were being iterated by key rather than source string (as this was causing redundant work).
Portable Object:
Cleaned up a lot of redundant code, changed things to use FLocKey, and simplified a lot of string manipulation to use algorithms instead (which proved to be faster).
Asset Gathering:
Optimized the way garbage collection runs while gathering from assets so that we avoid purging assets that we still need to gather from (or are still active dependencies). This also sorts the assets so that we can try and evict dependencies from memory as soon as possible (in much the same way that the cooker does).
Automation:
The gather commandlet can now take multiple configs to process. This is used by automation to avoid starting the editor several times (which can save a significant amount of start-up overhead).
[CL 4052378 by Lauren Ridge in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3805828 by Gil.Gribb
UE4 - Fixed a bug in the lock free stalling task queue and adjusted a comment. The code is not current used, so this is not actually change the way the code works.
Change 3806784 by Ben.Marsh
UAT: Remove code to compile UBT when using UE4Build. It should already be compiled as a dependency of UAT.
Change 3807549 by Graeme.Thornton
Add a cook timer around VerifyCanCookPackage. A licensee reports this taking a lot of time so it'll be good to account for it.
Change 3807727 by Graeme.Thornton
Unhide the text asset format experimental editor option
Change 3807746 by Josh.Engebretson
Remove WER from iOS platform
Change 3807928 by Robert.Manuszewski
When async loading, GC Clusters will be created after packages have been processed to avoid situations where some of the objects that are being added to a cluster haven't been fully loaded yet
Change 3808221 by Steve.Robb
GitHub #4307 - Made GetModulePtr() thread safe by not using GetModule()
^ I'm not convinced by how much thread-safer this is really, but it's tidier anyway.
Change 3809233 by Graeme.Thornton
TBA: Misc changes to text asset commandlet
- Rename mode to "loadsave"
- Add -outputFormat option which can be assigned "text" or "binary"
- When saving binary, use a differentiated filename so that source assets aren't overwritten
Change 3809518 by Ben.Marsh
Remove the outdated UnrealSync automation script.
Change 3809643 by Steve.Robb
GitHub #4277 : fix bug; FMath::FormatIntToHumanReadable 3rd comma and negative value
#jira UE-53037
Change 3809862 by Steve.Robb
GitHub #3342 : [FRotator.h] Fix to DecompressAxisFromByte to be more efficient and reflect its intent accurately
#jira UE-42593
Change 3811190 by Graeme.Thornton
Add support for writing specific log channels to their own files
Change 3811197 by Graeme.Thornton
Minor updates to output formatting and timing for the text asset commandlet
Change 3811257 by Robert.Manuszewski
Cluster creation will now be time-sliced
Change 3811565 by Steve.Robb
Define out non-monolithic module functions.
Change 3812561 by Steve.Robb
GitHub #3886 : Enable Brace-Initialization for Declaring Variables
Incorrect semi-colon search removed after discussion with author.
Test added.
#jira UE-48242
Change 3812864 by Steve.Robb
Removal of some unproven code which was supposed to fix hot reloading BP class functions in plugins.
See: https://udn.unrealengine.com/questions/376978/aitask-blueprint-nodes-disappear-when-their-module.html
#jira UE-53089
Change 3820358 by Ben.Marsh
PR #4358: Incredibuild use ShowAgent by default (Contributed by projectgheist)
Change 3822594 by Ben.Marsh
UAT: Improvements to log file handling.
- Always create log files in the final location, rather than writing to a temp directory and copying in later.
- Now supports -Verbose and -VeryVerbose for increasing log verbosity, rather than -Verbose=XXX.
- Keep a backlog of log output before the log system is initialized, and flush it to the log file once it is.
- Allow buildmachines to specify the uebp_FinalLogFolder environment variable, which is used to form paths for display. When build machines copy log files elsewhere after UAT finishes (eg. a network share), this allows error messages to display the right location.
Change 3823695 by Ben.Marsh
UGS: Fix issue where precompiled binaries would not be shown as available for a change until scrolling the last submitted code change into the buffer (other symptoms, like de-focussing the main window would cause it to go back to an unavailable state, since the changes buffer was shrunk).
Now always queries changes up to the last change for which zipped binaries are available.
Change 3823845 by Ben.Marsh
UBT: Exclude C# projects for unsupported platforms when generating project files.
Change 3824180 by Ben.Marsh
UGS: Add an option to show changes by build machines, and move the "only show reviewed" option in there too (Options > Show Changes).
#jira
Change 3825777 by Steve.Robb
Fix to return value of StringToBytes.
Change 3825810 by Ben.Marsh
UBT: Reduce length of include paths for MSVC toolchain.
Change 3825822 by Robert.Manuszewski
Optimized PIE lazy pointer fixup. Should be up to 8x faster now.
Change 3826734 by Ben.Marsh
Remove code to disable TextureFormatAndroid on Linux. It seems to be an editor dependency.
Change 3827730 by Steve.Robb
Try to avoid decltype(auto) if it's not supported.
See: https://udn.unrealengine.com/questions/395644/build-417-with-c11-on-linux-ttuple-errors.html
Change 3827745 by Steve.Robb
Initializer list support for TMap.
Change 3827770 by Steve.Robb
GitHub #4399 : Added a CONSTEXPR qualifiers to FVariant::GetType()
#jira UE-53813
Change 3829189 by Ben.Marsh
UBT: Now always writes a minimal log file. By default, just contains the regular console output and any reasons why actions are outdated and needed to be executed. UAT directs child UBT instances to output logs into its own log folder, so that build machines can save them off.
Change 3830444 by Steve.Robb
BuildVersion and ModuleManifest moved to Core, and parsing of these files reimplemented to avoid a JSON library.
This should be revisited when Core has its own JSON library.
Change 3830718 by Ben.Marsh
Fix incorrect group name being returned by FStatNameAndInfo::GetGroupName() for stat groups.
The editor populates the viewport stats list by calling this for every registered stat and stat group (via FLevelViewportCommands::HandleNewStatGroup). The menu entry attempts to show the stat name with STAT_XXX stripped from the start as the menu item label, with the free-form text description as a tooltip.
For stat groups, the it would previously just return the stat group name as "Groups" (due to the raw naming convention of "//Groups//STATGROUP_Foo//..."). Since this didn't match the expected naming convention in FLevelViewportCommands::HandleNewStat (ie. STAT_XXX or STATGROUP_XXX), it would fail to add it.
When the first actual stat belonging to that group is added, it would add a menu entry for the group based on that, but the stat description no longer makes sense as a tooltip for the group. As a result, all the editor tooltips were junk.
#jira UE-53845
Change 3831064 by Ben.Marsh
Fix log file contention when spawning UBT recursively.
Change 3832654 by Ben.Marsh
UGS: Fix error panel not being selected when opened, and weird alignment/color issues on it.
Change 3832680 by Ben.Marsh
UGS: Fix failing to detect workspace if synced to a different stream. Seems to be a regression caused by recent P4D upgrade.
Change 3832695 by Ben.Marsh
UGS: Invert the options in the 'Show Changes' submenu for simplicity.
Change 3833528 by Ben.Marsh
UAT: Script to rewrite source files with public include paths relative to the 'Public' folder. Usage is: RebasePublicIncludePaths -UpdateDir=<Dir> [-Project=<Dir>] [-Write].
Change 3833543 by Ben.Marsh
UBT: Allow targets to opt-out of having public include paths added for every dependent module. This reduces the command line length when building a target, which has recently become a problem with larger games (due to Microsoft's compiler embedding the command line into each object file, with a maximum length of 64kb). All engine modules are compiled with this enabled; games may opt into it by setting bLegacyPublicIncludePaths = false; from their .target.cs, as may individual modules.
Change 3834354 by Robert.Manuszewski
Archetype pointer will now be cached to avoid locking the object tables when acquiring its info. It should also be faster this way regardless of any locks.
#jira UE-52035
Change 3834400 by Robert.Manuszewski
Fixing crash on exit caused by cached archetypes not being cleaned up before static exit cleanup.
#jira UE-52035
Change 3834947 by Steve.Robb
USE_FORMAT_STRING_TYPE_CHECKING removed from FMsg::Logf and FMsg::Logf_Internal.
Change 3835004 by Ben.Marsh
Fix code that relies on dubious behavior of requiring referenced "include path only" modules having their _API macros set to be empty, even if the module is actually implemented in a separate DLL.
Change 3835340 by Ben.Marsh
Fix errors making installed build from directories with spaces in the name.
Change 3835972 by Ben.Marsh
UBT: Improved diagnostic message for targets which don't need a version file.
Change 3836019 by Ben.Marsh
UBT: Fix warnings caused by defining linkage macros for third party libraries.
Change 3836269 by Ben.Marsh
Fix message box larger than the screen height being created when a large number of modules are incompatible on startup.
Change 3836543 by Ben.Marsh
Enable SoundMod plugin on Linux, since it's already supported through the editor.
Change 3836546 by Ben.Marsh
PR #4412: fix type mismatch (Contributed by nakapon)
Change 3836805 by Ben.Marsh
Fix commandlet to compile marketplace plugins.
Change 3836829 by Ben.Marsh
UBT: Fix ability to precompile plugins from installed engine builds.
Change 3837036 by Ben.Marsh
UBT: Write the previous and new contents of intermediate files to the log if they change. Makes it easier to debug unexpected rebuilds.
Change 3837037 by Ben.Marsh
UBT: Fix engine modules having inconsistent definitions depending on whether modules are only referenced for their include paths vs being linked into a binary (due to different _API macro).
Change 3837040 by Ben.Marsh
UBT: Remove code that initializes members in ModuleRules and TargetRules objects before the constructor is run. This is no longer necessary, now that the backwards-compatible default constructors have been removed.
Change 3837247 by Ben.Marsh
UBT: Remove UELinkerFixups module, now that plugins and precompiled modules do not require hacks to force initialization (since they're linked in as object files).
Encryption and signing keys are now set via macros expanded from the IMPLEMENT_PRIMARY_GAME_MODULE macro, via project-specific macros added in the TargetRules constructor.
Change 3837262 by Ben.Marsh
UBT: Set whether a module is an engine module or not via a default value for the rules assembly. All non-program engine and enterprise modules are created with this flag set to true; program targets and modules are now created from a different assembly that sets it to false. This removes hacks from UEBuildModule needed to adjust behavior for different module types based on the directory containing the module.
Also add a bUseBackwardsCompatibleDefaults flag to the TargetRules class, also initialized to a default value from a setting passed to the RulesAssembly constructor. This controls whether modules created for the target should be configured to allow breaking changes to default settings, and is set to false for all engine targets, and true for all project targets.
Change 3837343 by Ben.Marsh
UBT: Remove the OverrideExecutableFileExtension target property. Change the only current use for this (the MayaLiveLinkPlugin target) to use a post build step to copy the file instead.
Change 3837356 by Ben.Marsh
Fix invalid character encodings.
Change 3837727 by Graeme.Thornton
UnrealPak: KeyGenerator: Only generate prime table when required, not all the time
Change 3837823 by Ben.Marsh
UBT: Output warnings and errors when compiling module rules assembly in a way that allows them to be double-clicked in the Visual Studio output window.
Change 3837831 by Graeme.Thornton
UBT: When parsing crypto settings, always load legacy data first, then allow the new system to override it. Provides the same key backwards compatibility that the editor settings class gives
Change 3837857 by Robert.Manuszewski
PR #4404: Make FGCArrayPool singleton global instead of per-CU (Contributed by mhutch)
Change 3837943 by Robert.Manuszewski
PR #4405: Fix FGarbageCollectionTracer (Contributed by mhutch)
Change 3838451 by Ben.Marsh
UBT: Fix exceptions thrown on a background thread while caching C++ includes not being caught and logged correctly. Now captures exceptions and re-throws on the main thread.
#jira UE-53996
Change 3839519 by Ben.Marsh
UBT: Simplify configuring bPrecompile and bUsePrecompile settings for modules. Each rules assembly can now be configured as installed, which defaults the module rules it creates to use precompiled data.
Change 3843790 by Graeme.Thornton
UnrealPak: Log the size of all encrypted data
Change 3844258 by Ben.Marsh
Fix plugin compile failure when created via new plugin wizard. Passing -plugin on the command line is unnecessary, and is now reserved for packaging external plugins for the marketplace.
Also extend the length of time that the error toast stays visible, and don't delete the plugin on failure.
#jira UE-54157
Change 3845796 by Ben.Marsh
Workaround for slow performance of String.EndsWith() on Mono.
Change 3845823 by Ben.Marsh
Fix case sensitive matching of platform names in -TargetPlatform=X argument to BuildCookRun.
#jira UE-54123
Change 3845901 by Arciel.Rekman
Linux: fix crash due to lambda lifetime issues (UE-54040).
- The lambda goes out of scope in FBufferVisualizationMenuCommands::CreateVisualizationCommands, crashing the editor if compiled with a recent clang (5.0+).
(Edigrating 3819174 to Dev-Core)
Change 3846439 by Ben.Marsh
Revert CL 3822742 to always call Process.WaitForExit(). The Android target platform module in the editor spawns ADB.EXE, which inherits the editor's stdout/stderr handles and forks itself. Process.WaitForExit() waits for EOF on those pipes, which never occurs because the forked process never terminates.
Proper fix is probably to have the engine explicitly duplicate stdout/stderr handles for new pipes to output process, but too risky before copying up to Main.
Change 3816608 by Ben.Marsh
UBT: Use DirectoryReference objects for all include paths.
Change 3816954 by Ben.Marsh
UBT: Remove bIncludeDependentLibrariesInLibrary option. This is not widely supported by platform toolchains, and is not used anywhere.
Change 3816986 by Ben.Marsh
UBT: Remove UEBuildBinaryConfig; UEBuildBinary objects are now just created directly.
Change 3816991 by Ben.Marsh
UBT: Deprecate PlatformSpecificDynamicallyLoadedModules. We no longer have any special behavior for these modules.
Change 3823090 by Ben.Marsh
UAT: Improve logging for child UAT instances.
- Calling RunUAT now requires an identifier for prefixing into the parent log, which is also used to determine the name of the log folder.
- Stdout is no longer written to its own output file, since it's written to the parent stdout, the parent log file, and the child log file anyway.
- Log folders for child UAT instances are left intact, rather than being copied to the parent folder. The derived names for the copied names were confusing and hard to read.
- Output from UAT is no longer returned as a string. It should not be parsed anyway (but may be huge!). ProcessResult now supports running without capturing output.
Change 3826082 by Ben.Marsh
UBT: Add a check to make sure that all modules that are precompiled are correctly marked to enable it, even if they are part of the build target.
Change 3827025 by Ben.Marsh
UBT: Move the compile output directory into a property on the module, and explicitly pass it to the toolchain when compiling.
Change 3829927 by James.Hopkin
Made HTTP interface const correct
Change 3833533 by Ben.Marsh
Rewrite engine source files to base include paths relative to the "Public" directory. This allows reducing the number of public include paths that have to be added for engine modules.
Change 3835826 by Ben.Marsh
UBT: Precompiled targets now generate a separate manifest for each precompiled module, rather than adding object files to a library. This fixes issues where object files from static libraries would not be linked into a target if a symbol in them was not referenced.
Change 3835969 by Ben.Marsh
UBT: Fix cases where text is being written directly to the console rather than via logging functions.
Change 3837777 by Steve.Robb
Format string type checking added to FOutputDevice::Logf.
Fixes for those.
Change 3838569 by Steve.Robb
Algo moved up a folder.
[CL 3847482 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3358367 by tim.gautier
Submitting resaved QAGame assets - Materials, Material Instances, Material Functions and Parameters
Change 3624848 by Jamie.Dale
Added a composite font for the editor (and Slate core)
This is defined in FLegacySlateFontInfoCache::GetDefaultFont and uses our default Roboto fonts (and the culture specific fallback fonts), and is now used as the default font for Slate and the editor.
This change removes all the manual TTF/OTF file references from the various Slate styles, as well as updating 200+ hard-coded font references to use the new default font.
This fixes various rendering issues with fonts in the editor when using different languages, and clears a big barrier for removing the legacy localized fallback font support.
Change 3654993 by Jamie.Dale
'Native' (now called 'FNativeFuncPtr') is now a function pointer that takes a UObject* context, rather than a UObject member function pointer
This avoids ambiguity when binding a native function pointer to a type that doesn't match the context pointer, as you could end up getting a function called with an incorrect 'this' pointer
Breaking changes:
- Native has been renamed to FNativeFuncPtr.
- The signature of a native function has changed (use the DECLARE_FUNCTION and DEFINE_FUNCTION macro pair).
- Use P_THIS if you were previously using the 'this' pointer in your native function.
Change 3699591 by Jamie.Dale
Added support for displaying and editing numbers in a culture correct way
Numeric input boxes in Slate will now display and accept numbers using the culture correct decimal separators. This is enabled by default, and can be disabled by setting "ShouldUseLocalizedNumericInput" to "False" in XEditorSettings.ini (for the editor), or XGameUserSettings.ini (for a game).
#jira UE-4028
Change 3719568 by Jamie.Dale
Allow platforms to override the default ICU timezone calculation
Change 3622366 by Bradut.Palas
#jira UE-46677
Don't allow OnLevelRemovedFromWorld to reset the transaction buffer if we're in PIE mode.
Also, remove one undo barrier in case the event was triggered in PIE mode or else we block the user from undoing previous actions.
Change 3622378 by Bradut.Palas
#jira UE-46590
we have a general bug with detecting the size of the last column, but the clamping prevents it from appearing with the other resize modes. The Content Browser is the only one to use fixed width.
The bug is that the size of the last element is incorrectly reported, after we drag back and forth.
Fixed by not reading the size real time, but reading it from the SlotInfo structure that is created earlier, which holds the correct value.
Change 3622552 by Jamie.Dale
Added support for per-culture sub-fonts within a composite font
This allows you to do things like create a Japanese specific Han sub-font to override the Han characters used in a CJK font (previously you needed to create a localized font asset to achieve this).
Change 3623170 by Jamie.Dale
Fixing warning
Change 3624846 by Jamie.Dale
Composite font cache optimizations
- Converted a typically small sized map to a sorted array + binary search.
- Converted the already sorted range array to use binary search.
- Contiguous ranges using the same typeface are now merged in the cache.
Change 3625576 by Cody.Albert
We now only set the widget tree to transient instead of passing the flag through StaticDuplicateObject. This was causing instanced subobjects to be flagged with RF_DuplicateTransient, preventing them from properly being duplicated when an array of instanced subobjects was modified.
#jira UE-47971
Change 3626057 by Matt.Kuhlenschmidt
Expose EUmgSequencePlayMode to blueprints
#jira UE-49255
Change 3626556 by Matt.Kuhlenschmidt
Fix window size and position adjustment not accounting for primary monitor not being a high DPI monitor when a secondary monitor is. Causes flickering and incorrect window positioning.
#jira UE-48922, UE-48957
Change 3627692 by Matt.Kuhlenschmidt
PR #3977: Source control submenu menu customization (Contributed by Kryofenix)
Change 3628600 by Arciel.Rekman
Added AutoCheckout to FAssetRenameManager for commandlet usage.
Change 3630561 by Richard.Hinckley
Deprecating the version of UFunctionalTestingManager::RunAllFunctionalTests that feature an unused bool parameter, replacing with a new version without that parameter.
Change 3630656 by Richard.Hinckley
Compile fix.
Change 3630964 by Arciel.Rekman
Fix CrashReporterClient headless build.
Change 3631050 by Matt.Kuhlenschmidt
Back out revision 9 from //UE4/Dev-Editor/Engine/Source/Runtime/Slate/Private/Widgets/Layout/SSplitter.cpp
Causes major problems with resizing splitters in editor
Change 3631140 by Arciel.Rekman
OpenAL: update Linux version to 1.18.1 (UETOOL-1253)
- Also remove a hack for RPATH and make it use a generic RPATH mechanism.
- Bulk of the change from Cengiz.Terzibas
#jira UETOOL-1253
Change 3632924 by Jamie.Dale
Added support for a catch-all fallback font within composite fonts
This allows you to provide broad "font of last resort" behavior on a per-composite font basis, in a way that can also work with different font styles.
Change 3633055 by Jamie.Dale
Fixed some refresh issues in the font editor
Change 3633062 by Jamie.Dale
Fixed localization commands being reported as unknown
Change 3633906 by Nick.Darnell
UMG - You can now store refrences to widgets in the same UserWidget. If you need to create links between widgets this is valuable. Will likely introduce new ways to utilize this in the future, for now just getting it working.
Change 3634070 by Arciel.Rekman
Display actually used values of material overrides.
Change 3634254 by Arciel.Rekman
Fix ResavePackages working poorly with projects on other drives (UE-49465).
#jira UE-49465
Change 3635985 by Matt.Kuhlenschmidt
Fixed typo in function name used by maps
PR #3975: Add tooltip to Arrays in Editor (Contributed by projectgheist)
Change 3636012 by Matt.Kuhlenschmidt
PR #3982: Unhide mouse cursor after using Ansel (Contributed by projectgheist)
Change 3636706 by Lauren.Ridge
Epic Friday: Save parameters to child or sibling instance functionality
Change 3638706 by Jamie.Dale
Added an improved Japanese font to the editor
This is only used when displaying Japanese text when the editor is set to Japanese, and uses a font with Japanese-style unified Han characters (our default fallback font uses Chinese-style unified Han characters).
#jira UE-33268
Change 3639438 by Arciel.Rekman
Linux: Repaired ARM server build (UE-49635).
- Made Steam* plugins compile.
- Disabled OpenEXR as the libs aren't compiled (need to be done separately).
(Edigrating CL 3639429 from Release-4.17 to Dev-Editor)
Change 3640625 by Matt.Kuhlenschmidt
PR #4012: FSlateApplication::ProcessReply use &Reply (Contributed by projectgheist)
Change 3640626 by Matt.Kuhlenschmidt
PR #4011: Remove space from filename (Contributed by projectgheist)
Change 3640697 by Matt.Kuhlenschmidt
PR #4010: PNG alpha fix (Contributed by mmdanggg2)
Change 3641137 by Jamie.Dale
Fixed an issue where a culture specific sub-font could produce incorrect measurements during a culture switch
It would fallback to the last resort font for a frame or two while the font cache flushed. This has it update the ranges immediately.
Change 3641351 by Jamie.Dale
Fixing incorrect weights on the Japanese sub-font
Change 3641356 by Jamie.Dale
Fixing inconsistent font sizes between CoreStyle and EditorStyle
Change 3641710 by Jamie.Dale
Fixed pure-virtual function call on UMulticastDelegateProperty
Change 3641941 by Lauren.Ridge
Adding a Parameter Details tab to the Material Editor so users can change default parameter details
Change 3644141 by Jamie.Dale
Added an improved Korean font to the editor
This is only used when displaying Korean text when the editor is set to Korean
Change 3644213 by Arciel.Rekman
Fix the side effects of a fix for UE-49465.
- Default materials were apparently not being found while building DDC (e.g. making an installed build), now they are
and we should not reset loaders on them lest we trigger HasDefaultMaterialsPostLoaded() assert later.
#jira UE-49465
Change 3644777 by Jamie.Dale
Reverting Korean editor font back to NanumGothic as NanumBarunGothic looked too squished
Change 3644879 by tim.gautier
QAGame: Optimized assets for Procedural Foliage testing
- Added camera bookmarks to Stations in QA-Foliage
- Renamed QA-FoliageTypeInst assets to ProcFoliage_Shape
- Fixed up redirectors
Change 3645109 by Matt.Kuhlenschmidt
PR #3990: Git plugin: fix status of renamed, removed, missing, untracked assets (Contributed by SRombauts)
Change 3645114 by Matt.Kuhlenschmidt
PR #3991: Git Plugin: Fix RunDumpToFile() leaking Process handles (Contributed by SRombauts)
Change 3645116 by Matt.Kuhlenschmidt
PR #3996: Git Plugin: run an "UpdateStatus" at "Connect" time to populate the Source Control cache (Contributed by SRombauts)
Change 3645118 by Matt.Kuhlenschmidt
PR #4005: Git Plugin: Expand the size of the Button "Initialize project with Git" (Contributed by SRombauts)
Change 3645876 by Arciel.Rekman
Linux: fix submenus of context menu not working (UE-47639).
- Change by icculus (Ryan Gordon).
- QA-ClickHUD seems to be not affected by this change (it is already broken alas).
#jira UE-47639
Change 3648088 by Jamie.Dale
Fixed some case-sensitivity issues with FText format argument names/pins
These were originally case-sensitive, but that was lost somewhere along the way. This change restores their original behavior.
#jira UE-47122
Change 3648097 by Jamie.Dale
Moved common macOS/iOS localization implementation into FApplePlatformMisc
#jira UE-49940
Change 3650858 by Arciel.Rekman
UBT: improve CodeLite project generator (UE-49400).
- PR #3987 submitted by yaakuro (Cengiz Terzibas).
#jira UE-49400
Change 3651231 by Arciel.Rekman
Linux: default to SM5 for Vulkan.
- Change by Timothee.Bessett.
Change 3653627 by Matt.Kuhlenschmidt
PR #4020: Source Control Submit Files now interprets Escape key as if the user clicked cancel (Contributed by SRombauts)
Change 3653628 by Matt.Kuhlenschmidt
PR #4022: Add New C++ Class dialog remember previously selected module. (Contributed by Koderz)
Change 3653984 by Jamie.Dale
Fixed some redundant string construction
Change 3658528 by Joe.Graf
UE-45141 - Added CMAKE_CXX_COMPILER and CMAKE_C_COMPILER settings to the generated CMake files
Change 3658594 by Jamie.Dale
Zipping in UAT now always uses UTF-8 encoding to prevent Unicode issues
#jira UE-27263
Change 3659643 by Michael.Trepka
Added a call to FCoreDelegates::ApplicationWillTerminateDelegate.Broadcast(); in Mac RequestExit() to match Windows behavior
#jira UETOOL-1238
Change 3661908 by Matt.Kuhlenschmidt
USD asset importing improvements
Change 3664100 by Matt.Kuhlenschmidt
Fix static analysis
Change 3664107 by Matt.Kuhlenschmidt
PR #4051: UE-49448: FPropertyChangedEvent to include TopLevelObjects (Contributed by projectgheist)
Change 3664125 by Matt.Kuhlenschmidt
PR #4036: Add missing GRAPHEDITOR_API (Contributed by projectgheist)
Change 3664340 by Jamie.Dale
PR #3648: Prevent GatherTextFromSource from failing the commandlet (Contributed by projectgheist)
Change 3664403 by Jamie.Dale
PR #3769: Fixes UE-46973 - Drag and Dropping Folders with Names (Contributed by LordNed)
Change 3664539 by Jamie.Dale
PR #3280: Added EditableText functionality (Contributed by projectgheist)
Change 3665433 by Alexis.Matte
When we finish importing morph target we must re-initialise the render resources since we now use GPU morph target.
#jira UE-50231
Change 3666747 by Cody.Albert
Change 3669280 by Jamie.Dale
PR #4060: UE-50455: Verify folder is newly created before removing from tree (Contributed by projectgheist)
Change 3669718 by Jamie.Dale
PR #4061: Clear Content Browser folder search box on escape key (Contributed by projectgheist)
Change 3670838 by Alexis.Matte
Fix crash when deleting a skeletal mesh LOD and the mouse is over the "reimport" button.
#jira UE-50387
Change 3671559 by Matt.Kuhlenschmidt
Update SimpleUI automation test ground truth
#jira UE-50325
Change 3671587 by Alexis.Matte
Fix fbx importer scale not always apply. A cache array was not reset when opening a fbx file.
#jira UE-50147
Change 3671730 by Jamie.Dale
Added PostInitInstance to UClass to allow class types to perform construction time initialization of their instances
Change 3672104 by Michael.Dupuis
#jira UE-50427: Update the volume visibility list of the editor viewport when changing the procedural foliage settings
Change 3674906 by Alexis.Matte
Make sure the export LOD option is taken in consideration when exporting a level or the current level selection
#jira UE-50248
Change 3674942 by Matt.Kuhlenschmidt
Fix static analysis
Change 3675401 by Alexis.Matte
-fix export animation, do not truncate the last frame anymore
-fix the import animation, there was a display issue in the progress bar. Also a floorToInt sometime truncate the last valid frame. We also have a better way to calculate the time increment we use to sample the fbx curves.
#jira UE-48231
Change 3675990 by Alexis.Matte
Remove morph target when doing a re-import, so morph will be remove if they do not exist anymore in the fbx.
This is to avoid driving random vertex with old morph target.
#jira UE-50391
Change 3676169 by Alexis.Matte
When we re-import with dialog the option, "Override Full Name" was set to false and save with the option dialog. We now not set it to false, since it was not use during re-import.
Change 3676396 by Alexis.Matte
Make all LOD 0 name consistent in staticmesh editor
#jira UE-49461
Change 3677730 by Cody.Albert
Enable locking of Persistent Level in Levels tab
#jira UE-50686
Change 3677838 by Jamie.Dale
Replaced broken version of Roboto Light
Change 3679619 by Alexis.Matte
Integrate GitHub pr #4029 to fix import fbx chunk material assignation.
#jira UE-50001
Change 3680093 by Alexis.Matte
Fix the skeletal mesh so the vertex color is part of the vertex equality like with the static mesh.
Change 3680931 by Arciel.Rekman
SlateDialogs: show image icon for *.tga (UE-25106).
- Also reworked the logic somewhat.
#jira UE-25106
Change 3681966 by Yannick.Lange
MaterialEditor post-process preview.
#jira UE-45307
Change 3682407 by Lauren.Ridge
Fixes for material editor compile errors
Change 3682628 by Lauren.Ridge
Content browser filters for Material Layers, Blends, and their instances
Change 3682725 by Lauren.Ridge
Adding filter assets and instance assets to Material Layers and Material Layer Blends. Turning Material Layering on by default
Change 3682921 by Lauren.Ridge
Fix for instance layers not initializing fully
Change 3682954 by Lauren.Ridge
Creating Material Layer Test Assets
Change 3683582 by Alexis.Matte
Fix static analysis build
Change 3683614 by Matt.Kuhlenschmidt
PR #4062: Git Plugin: Fix UE-44637: Deleting an asset is unsuccessful if the asset is marked for add (Contributed by SRombauts)
Change 3684130 by Lauren.Ridge
Allow visible parameter retrieval to correctly recurse through internally called functions. Previous check was intended to prevent function previews from leaving their graph through unhooked inputs, but unintentionally blocked all function inputs.
Change 3686289 by Arciel.Rekman
Remove the pessimization (UE-23791).
Change 3686455 by Lauren.Ridge
Fixes for adding/removing a layer parameter from the parent not updating the child
Change 3686829 by Jamie.Dale
No longer include trailing whitespace in the justification calculation for soft-wrapped lines
#jira UE-50266
Change 3686970 by Lauren.Ridge
Making material parameter preview work for functions as well
Change 3687077 by Jamie.Dale
Fixed crash using FActorDetails with the struct details panel
Change 3687152 by Jamie.Dale
Fixed the row structure tag not appearing in the Content Browser for Data Table assets
The CDO is used to filter these tags, and the CDO was omiting that tag which caused it to be filtered for all Data Tables.
#jira UE-48691
Change 3687174 by Lauren.Ridge
Fix for material layer sub-parameters showing up in the default material parameters panel
Change 3688100 by Lauren.Ridge
Fixing static analysis error
Change 3688317 by Jamie.Dale
Fixed crash using the widget reflector in a cooked game
Editor-style isn't available in cooked games. Core-style should be used instead for the widget reflector.
Change 3689054 by Jamie.Dale
Reference Viewer can now show/copy references lists for nodes with multiple objects, or multiple selected nodes
#jira UE-45751
Change 3689513 by Jamie.Dale
Fixed justification bug with RTL text caused by CL# 3686829
Also implemented the same alignment fix for visually left-aligned RTL text.
#jira UE-50266
Change 3690231 by Lauren.Ridge
Added Material Layers Parameters Preview (all editing disabled) panel to the Material Editor
Change 3690234 by Lauren.Ridge
Adding Material Layers Function Parameter to Static Parameter Compare
Change 3690750 by Chris.Bunner
Potential nullptr crash.
Change 3690751 by Chris.Bunner
Fixed logic on overridden vector parameter retrieval for material instances checking a function owned parameter.
Change 3691010 by Jamie.Dale
Fixed some clipping issues that could occur with right-aligned text
FTextBlockLayout::OnPaint was passing an unscaled offset to SetVisibleRegion, and it also wasn't correctly adjusting the offset for RTL text with left-alignment (which becomes a visual right-alignment)
#jira UE-46760
Change 3691091 by Jamie.Dale
Renamed FTextBlockLayout to FSlateTextBlockLayout to reflect that it's a Slate specific type
Change 3691134 by Alexis.Matte
Make sure we instance also the collision mesh when exporting a level to fbx file.
#jira UE-51066
Change 3691157 by Lauren.Ridge
Fix for reset to default not refreshing sub-parameters
Change 3691192 by Jamie.Dale
Fixed Content Browser selection resetting when changing certain view settings
#jira UE-49611
Change 3691204 by Alexis.Matte
Remove fbx export file version 2010 compatibility. The 2018 fbx sdk refuse to export earlier then 2011.
#jira UE-51023
Change 3692335 by Lauren.Ridge
Setting displayed asset to equal filter asset if no instance has been selected
Change 3692479 by Jamie.Dale
Fixed whitespace
Change 3692508 by Alexis.Matte
Make sure we warn the user that there is nothing to export when exporting to fbx using "export selected" or "export All" from the file menu.
We also prevent the export dialog to show
#jira UE-50973
Change 3692639 by Jamie.Dale
Translation Editor now shows stale translations as "Untranslated"
Change 3692743 by Lauren.Ridge
Smaller blend icons, added icon size override to FObjectEntryBox
Change 3692830 by Alexis.Matte
Fix linux build
Change 3692894 by Lauren.Ridge
Tooltip on "Parent" in material layers
Change 3693141 by Jamie.Dale
Removed dead code
FastDecimalFormat made this redundant
Change 3693580 by Jamie.Dale
Added AlwaysSign number formatting option
#jira UE-10310
Change 3693784 by Jamie.Dale
Fixed assert extracting the number formatting rules for Arabic
It uses a character outside the BMP for its plus and minus sign, so we need these to be a string to handle that.
#jira UE-10310
Change 3694428 by Arciel.Rekman
Linux: make directory watch request a warning so they don't block cooking.
- See https://answers.unrealengine.com/questions/715206/cook-error-on-linux.html
Change 3694458 by Matt.Kuhlenschmidt
Made duplicate keybinding warning non-fatal
Change 3694496 by Alexis.Matte
fix static analysis build
Change 3694515 by Jamie.Dale
Added support for culture correct parsing of decimal numbers
#jira UE-4028
Change 3694621 by Jamie.Dale
Added a variant of FastDecimalFormat::StringToNumber that takes a string length
This can be useful if you want to convert a number from within a non-null terminated string
#jira UE-4028
Change 3694958 by Jamie.Dale
Added a parsed length output to FastDecimalFormat::StringToNumber to allow permissive parsing
You can test this rather than the result if you want to attempt to parse a number from a string that may have other data after it. This also fixes the sign-suffix causing the parsing to fail.
#jira UE-4028
Change 3695083 by Alexis.Matte
Optimisation of the morph target import
- We now compute only the normal for the shape the tangent are not necessary
- The async tasks are create when there is some available cpu thread to avoid filling the memory
- When we re-import the morph target are deleted in bulk avoiding to initialize the morph map for every morphs targets
#jira UE-50945
Change 3695122 by Jamie.Dale
GetCultureAgnosticFormattingRules no longer returns a copy
Change 3695835 by Arciel.Rekman
TestPAL: greatly expanded malloc test.
Change 3695918 by Arciel.Rekman
TestPAL: Added thread priority test.
Change 3696589 by Arciel.Rekman
TestPAL: tweak thread priorities test (better readability).
Change 3697345 by Alexis.Matte
Fix reorder of material when importing a LOD with new material
#jira UE-51135
Change 3699590 by Jamie.Dale
Updated SGraphPinNum to use a numeric editor
#jira UE-4028
Change 3699698 by Matt.Kuhlenschmidt
Fix crash opening the level viewport context menu if the actor-component selection is out of sync
#jira UE-48444
Change 3700158 by Arciel.Rekman
Enable packaging for Android Vulkan on Linux (UETOOL-1232).
- Change by Cengiz Terzibas
Change 3700224 by Arciel.Rekman
TestPAL: fixed a memory leak.
Change 3700775 by Cody.Albert
Don't need to initialize EnvironmentCubeMap twice.
Change 3700866 by Michael.Trepka
PR #3223: Remove unnecessary reallocation. (Contributed by foollbar)
#jira UE-41643
Change 3701132 by Michael.Trepka
Copy of CL 3671538
Fixed issues with editor's game mode in high DPI on Mac.
#jira UE-49947, UE-51063
Change 3701421 by Michael.Trepka
Fixed a crash in FScreenShotManager caused by an attempt to access a deleted FString in async lambda expression
Change 3701495 by Alexis.Matte
Fix fbx importer "import normals" option when mix with "mikkt" tangent build it was recomputing the normals instead of importing them.
#jira UE-UE-51359
Change 3702982 by Jamie.Dale
Cleaned up some localization setting names
These now have consistent names and avoid double negatives. This also fixes needing to restart the editor when changing the "ShouldUseLocalizedPropertyNames" setting.
Change 3703517 by Arciel.Rekman
TestPAL: improved thread test.
- Changed the counter to a normal variable to reduce possible contentions (threads used to share the counter in an early prototype, hence the usage of an atomic).
Change 3704378 by Michael.Trepka
Disable Zoom button on Mac if project requests a resizeable window without it.
#jira UE-51335
Change 3706316 by Jamie.Dale
Fixed the asset search suggestions list closing if you clicked on its scrollbar
#jira UE-28885
Change 3706855 by Alexis.Matte
Support importing animation that has some keys with negative time
#jira UE-51305
Change 3709634 by Matt.Kuhlenschmidt
PR #4146: Null access check on ForceLOD in FViewport::HighResScreenshot (Contributed by projectgheist)
Change 3711085 by Michael.Trepka
Reenabled UBT makefiles on Mac
Change 3713049 by Josh.Engebretson
The ConfigPropertyEditor now generates a unique runtime UClass. It uses the outer name on the property instead of a unique ID as a unique id would generate a new UClass every time (and these are RF_Standalone). I also removed some static qualifiers for Section and Property names which were incorrect.
#jira UE-51319
Change 3713144 by Lauren.Ridge
Fixing automated test error
#jira UE-50982
Change 3713395 by Alexis.Matte
Fix auto import mountpoint
#jira UE-51524
Change 3713881 by Michael.Trepka
Added -buildscw to Mac Build.sh script to build ShaderCompileWorker in addition to the requested target. Xcode passes it to the script when building non-program targets.
#jira UE-31093
Change 3714197 by Michael.Trepka
Send IMM key down event to the main window instead of Cocoa key window, as that's what the Slate's active window is. This solves problems with IMM not working in context menu text edit fields.
#jira UE-47915
Change 3714911 by Joe.Graf
Merge of cmake changes from Dev-Rendering
Change 3715973 by Michael.Trepka
Disable OS close button on Windows if project settings request that
#jira UE-45522
Change 3716390 by Lauren.Ridge
The color picker summoned when double-clicking vector3 nodes now has its intended "do not refresh until OK is clicked" behavior.
#jira UE-50916
Change 3716529 by Josh.Engebretson
Content Browser: Clamp "Assets to Load at Once Before Warning" so it cannot be set below 1
#jira UE-51341
Change 3716885 by Josh.Engebretson
Tracking transactions such as a duplication operation can modify a selection which differs from the initial one. Added package state tracking to restore unmodified state when necessary.
#jira UE-48572
Change 3716929 by Josh.Engebretson
Unshelved from pending changelist '3364093':
PR #3420: Exe's icons and properties (Contributed by projectgheist)
Change 3716937 by Josh.Engebretson
Unshelved from pending changelist '3647428':
PR #4026: Fixed memory leaks for pipe writes and added data pipe writes (Contributed by Hemofektik)
Change 3717002 by Josh.Engebretson
Fix FileReference/string conversion
Change 3717355 by Joe.Graf
Fixed CMake file generation on Windows including Engine/Source/ThirdParty source
Change 3718256 by Arciel.Rekman
TestPAL: slight mod to the malloc test.
- Touch the allocated memory to check actual resident usage.
Change 3718290 by Arciel.Rekman
BAFO: place descriptor after the allocation to save some VIRT memory.
- We're relying on passing correct "Size" argument to Free() anyway, and this modification makes use of that extra information to save on memory for the descriptor.
Change 3718508 by Michael.Trepka
Fixed vsnprintf on platforms that use our custom implementation in StandardPlatformString.cpp to ignore length modifier for certain types (floating point, pointer)
#jira UE-46148
Change 3718855 by Lauren.Ridge
Adding content browser favorite folders. Add or remove folders from the favorite list in the folder's right-click context menu, and hide or show the favorites list in the Content Browser options.
Change 3718932 by Cody.Albert
Update ActorSequence plugin loading phase to PreDefault
#jira UE-51612
Change 3719378 by tim.gautier
QAGame: Renamed multiTxt_Justification > UMG_TextJustification.
Added additional Text Widgets for testing
Change 3719413 by Lauren.Ridge
Resubmit of content browser favorites
Change 3719803 by Yannick.Lange
VREditor: Fix crash with null GEditor
#jira UE-50103
Change 3721127 by tim.gautier
QAGame: Fixed up a ton of redirectors within /Content and /Content/Materials
- Added M_ParamDefaults and MF_ParamDefaults
- Moved legacy MeshPaint materials into /Content/Materials/MeshPaint
- Renamed ColorPulse assets from MatFunction_ > MF_, moved into /Content/Materials/Functions
Change 3721255 by Alexis.Matte
Replace skeletal mesh import option "keep overlapping vertex" by 3 float thresholds allowing the user to control the welding thresholds.
#jira UE-51363
Change 3721594 by Lauren.Ridge
Material Blends now have plane mesh previews in their icons.
Change 3722072 by tim.gautier
QAGame: Updated MF_ParamDefaults - using red channel as roughness
Updated M_ParamDefaults - tweaked Scalar values
Change 3722180 by Michael.Trepka
Updated Xcode project generator to sort projects in the navigator by name (within folders) and also sort the list of schemes so that their order matches the order of projects in the navigator.
#jira UE-25941
Change 3722220 by Michael.Trepka
Fixed a problem with Xcode project generator not handling quoted preprocessor definitions correctly
#jira UE-40246
Change 3722806 by Lauren.Ridge
Fixing non-editor compiles
Change 3722914 by Alexis.Matte
Fbx importer: Add new attribute type(eSkeleton) for staticmesh socket import.
#jira UE-51665
Change 3723446 by Michael.Trepka
Copy of CL 3688862 from 4.18 + one more fix for a deadlock related to window resizing when using IME
Don't do anything in Mac window's windowWillResize: if we're simply chaning the z order of windows. This way we avoid a rare dead lock when hiding the window.
#jira UE-48257
Change 3723505 by Matt.Kuhlenschmidt
Fix duplicate actors being created for USD primitives that specify a custom actor class
Change 3723555 by Matt.Kuhlenschmidt
Fix crash loading the gameplayabilities module
#jira UE-51693
Change 3723557 by Matt.Kuhlenschmidt
Fixed tooltip on viewport dpi scaling option
Change 3723870 by Lauren.Ridge
Fixing incorrect reset to default visibility, adding clear behavior to fields
Change 3723917 by Arciel.Rekman
Linux: fix compilation with glibc 2.26+ (UE-51699).
- Fixes compilation on Ubuntu 17.10 among others.
(Merging 3723489 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3723918 by Arciel.Rekman
Linux: do not test for popcnt presence unnecessarily (UE-51677).
(Merging 3723904 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3724229 by Arciel.Rekman
Fix FOutputDeviceStdOutput to use printf() on Unix platforms.
Change 3724261 by Arciel.Rekman
TestPAL: fix thread priority test (zero the counter).
Change 3724978 by Arciel.Rekman
Linux: fix priority calculation.
- Rlimit values are always positive, so this was completely broken when the RLIMIT_NICE is non-0.
Change 3725382 by Matt.Kuhlenschmidt
Guard against crashes and add more logging when actor creation fails.
Looks like it could be manual garbage collections triggered before conversion is complete so those have been removed
#jira UE-47464
Change 3725559 by Matt.Kuhlenschmidt
Added a setting to enable/disable high dpi support in editor. This currently only functions in Windows.
Moved some files around for better consistency
Change 3725640 by Arciel.Rekman
Fix Linux thread/process priorities.
- Should also speed up SCW on Linux by deprioritizing them less.
Change 3726101 by Matt.Kuhlenschmidt
Fix logic bug in USD child "kind" type resolving
Change 3726244 by Joe.Graf
Added an option to generate a minimal set of targets for cmake files
Added shader and config files to cmake file generation for searching within IDEs
Change 3726506 by Arciel.Rekman
Fix compile issue after DPI change.
Change 3726549 by Matt.Kuhlenschmidt
Remove unnecessary indirection to cached widgets in the hit test grid
Change 3726660 by Arciel.Rekman
Enable DPI switch on Linux.
Change 3726763 by Arciel.Rekman
Fix mismatching "noperspective" qualifier (UE-50807).
- Pull request #4080 by TTimo.
Change 3727080 by Michael.Trepka
Added support for editor's EnableHighDPIAwareness setting on Mac
Change 3727658 by Matt.Kuhlenschmidt
Fix shutdown crash if level editor is still referenced after the object system has been gc'd
#jira UE-51630
Change 3728270 by Matt.Kuhlenschmidt
Remove propertyeditor dependency from editorstyle
Change 3728291 by Arciel.Rekman
Linux: fix for a crash on a headless system (UE-51714).
- Preliminary change before merging to 4.18.
Change 3728293 by Arciel.Rekman
Linux: remove unneeded dependency on CEF.
- Old workaround should no longer be needed, while this dependency makes UE4 depend on a ton of external libs.
Change 3728524 by Michael.Trepka
Copy of CL 3725570
Removed Enable Fullscreen option from editor's Window menu on Mac. Windowed fullscreen mode is currently unavailable on Mac in editor mode as supporting it properly would require it to work with multiple spaces and split screen, which we currently don't handle (requested in UE-27240)
#jira UE-51709
Change 3728875 by Michael.Trepka
Fixed compile error in Mac SlateOpenGLContext.cpp
Change 3728880 by Matt.Kuhlenschmidt
Guard against invalid worlds in thumbnail renderers
Change 3728924 by Michael.Trepka
Don't defer MacApplication->CloseWindow() call. This should fix a rare problem with deferred call executing during Slate's PrepassWindowAndChildren call.
#jira UE-51711
Change 3729288 by Joe.Graf
Added the .idea/misc.xml file generation to speed up CLion indexing
Change 3729935 by Michael.Dupuis
#jira UE-51722: Hide from UI invalid enum values
Change 3730234 by Matt.Kuhlenschmidt
Fix "Game Gets Mouse Control" setting no longer functioning and instead the mouse was always captured.
#jira UE-51801
Change 3730349 by Michael.Dupuis
#jira UE-51324: Clear the UI selection when rebuilding the palette, as we destroyed all items and recreate them, so selection is on invalid item
Change 3730438 by Lauren.Ridge
Cleaning up material layering UI functions
Change 3730723 by Jamie.Dale
Fixed FastDecimalFormat::StringToNumber incorrectly reporting that number-like sequences that lacked digits had been parsed as numbers
#jira UE-51799
Change 3731008 by Lauren.Ridge
Changing Layers and Blends from proxy assets to real assets
Change 3731026 by Arciel.Rekman
libelf: make elf_end() visible (UE-51843).
- This repairs compilation for a case when CUDA is being used.
- Also added some missing files for ARM 32-bit.
Change 3731081 by Lauren.Ridge
New material layer test assets
Change 3731186 by Josh.Engebretson
Adding camera speed scalar setting and Toolbar UI to increase range on camera speed presets
#jira UE-50104
Change 3731188 by Mike.Erwin
Improve responsiveness of Open Asset dialog.
On large projects, there's a noticeable delay when opening and searching/filtering assets.
Stopwatch measurements on my machine (seconds for ~122,000 assets):
before with this CL
ctrl-P 1.4 0.45
search 1.8 0.55
CollectionManagerModule was the main culprit for search/filter slowness.
Open Asset delay was due to filtering out plugin content. We were doing a lot of redundant work for what is essentially a read-only operation.
Change 3731682 by Arciel.Rekman
UnrealEd: Allow unattended commandlets to rename/save packages.
Change 3732305 by Michael.Dupuis
#jira UE-48434 : Only register if the foliage type still has a valid mesh
Change 3732361 by Matt.Kuhlenschmidt
Fix two settings objects being created in the transient package with the same name
#jira UE-51891
Change 3732895 by Josh.Engebretson
https://jira.it.epicgames.net/browse/UE-51706
If a shared DDC is not being used, present a notification to the licensee with a link on how to setup a shared DDC.
Adds DDC notification events for check/put and query for whether a shared DDC is in use.
#jira UE-51706
Change 3733025 by Arciel.Rekman
UBT: make sure new clang versions are invoked.
Change 3733311 by Mike.Erwin
Fix Linux compile warning from CL 3731188
It didn't like mixing && and || without parentheses. Reworked logic to do one test at a time, put cheaper tests first to avoid calls to more expensive IsPluginFolder.
Change 3733658 by Josh.Engebretson
Add a missing #undef LOCTEXT_NAMESPACE
Change 3734003 by Arciel.Rekman
Fix Windows attempting to use printf %ls and crashing at that (UE-51934).
Change 3734039 by Michael.Trepka
Fixed a couple of merge issues in Mac ApplicationCore
Change 3734052 by Michael.Trepka
One more Mac ApplicationCore fix
Change 3734244 by Lauren.Ridge
Fix for accessing Slate window on render thread
Change 3734950 by Josh.Engebretson
Fixing clang warning
Change 3734978 by Jamie.Dale
Relaxed enum property importing to allow valid numeric values to be imported too
This was previously made more strict which caused a regression in Data Table importing
#jira UE-51848
Change 3734999 by Arciel.Rekman
Linux: add LTO support and more.
- Adds ability to use link-time opitimization (reusing current target property bAllowLTCG).
- Supports using llvm-ar and lld instead of ar/ranlib and ld.
- More build information printed (and in a better organized way).
- Native scripts updated to install packages with the appropriate tools on supported systems
- AutoSDKs updated to require a new toolchain (already checked in).
- Required disabling OpenAL due to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219089
Change 3735268 by Matt.Kuhlenschmidt
Added support for canvas based DPI scaling.
-Scene canvas is by default not scaled as this could severely impact any game using a canvas based UI
-The debug canvas for stats is always dpi scaled in editor and pie.
-Eliminated text scaling workaround now that the entire canvas is properly scaled
-Enabled canvas scaling in cascade UI
Change 3735329 by Matt.Kuhlenschmidt
Fix potential crash if an asset editor has an object deleted out from under it
#jira UE-51941
Change 3735502 by Arciel.Rekman
Fix compile issue (bShouldUpdateScreenPercentage).
Change 3735878 by Jamie.Dale
Updated FString::SanitizeFloat to allow you to specify the min number of fractional digits to have in the resultant string
This defaults to 1 as that was the old behavior of FString::SanitizeFloat, but can also be set to 0 to prevent adding .0 to whole numbers.
Change 3735881 by Jamie.Dale
JsonValue no longer stringifies whole numbers as floats
Change 3735884 by Jamie.Dale
Only allow enums to import integral values
Change 3735912 by Josh.Engebretson
Improving cook process error/warning handling including asset warning/error content browser links and manual dismiss for cook error notifications
#jira UE-48131
Change 3736280 by Matt.Kuhlenschmidt
Fix 0 dpi scale for canvases
#jira UE-51995
Change 3736298 by Matt.Kuhlenschmidt
Force focus of game viewports in vr mode
Change 3736374 by Jamie.Dale
Fixed some places where input chords were being used without testing that they had a valid key set
#jira UE-51799
Change 3738543 by Matt.Kuhlenschmidt
Better fix for edit condition crashes
#jira UE-51886
Change 3738603 by Lauren.Ridge
Copy over of drag and drop non-array onto array fix
Change 3739701 by Chris.Babcock
Fix crashlytics merge error
#jira UE-52064
#ue4
#android
[CL 3739980 by Matt Kuhlenschmidt in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3550452 by Ben.Marsh
UAT: Improve readability of error message when an editor commandlet fails with an error code.
Change 3551179 by Ben.Marsh
Add methods for reading text files into an array of strings.
Change 3551260 by Ben.Marsh
Core: Change FFileHelper routines to use enum classes for flags.
Change 3555697 by Gil.Gribb
Fixed a rare crash when the asset registry scanner found old cooked files with package level compression.
#jira UE-47668
Change 3556464 by Ben.Marsh
UGS: If working in a virtual stream, use the name of the first non-virtual ancestor for writing version files.
Change 3557630 by Ben.Marsh
Allow the network version to be set via Build.version if it's not overriden from Version.h.
Change 3561357 by Gil.Gribb
Fixed crashes related to loading old unversioned files in the editor.
#jira UE-47806
Change 3565711 by Graeme.Thornton
PR #3839: Make non-encoding specific Base64 functions accessible (Contributed by stfx)
Change 3565864 by Robert.Manuszewski
Temp fix for a race condition with the async loading thread enabled - caching the linker in case it gets removed (but not deleted) from super class object.
Change 3569022 by Ben.Marsh
PR #3849: Update gitignore (Contributed by mhutch)
Change 3569113 by Ben.Marsh
Fix Japanese errors not displaying correctly in the cook output log.
#jira UE-47746
Change 3569486 by Ben.Marsh
UGS: Always sync the Enterprise folder if the selected .uproject file has the "Enterprise" flag set.
Change 3570483 by Graeme.Thornton
Minor C# cleanups. Removing some redundant "using" calls which also cause dotnetcore compile errors
Change 3570513 by Robert.Manuszewski
Fix for a race condition with async loading thread enabled.
Change 3570664 by Ben.Marsh
UBT: Use P/Invoke to determine number of physical processors on Windows rather than using WMI. Starting up WMIC adds 2.5 seconds to build times, and is not compatible with .NET core.
Change 3570708 by Robert.Manuszewski
Added ENABLE_GC_OBJECT_CHECKS macro to be able to quickly toggle UObject pointer checks in shipping builds when the garbage collector is running.
Change 3571592 by Ben.Marsh
UBT: Allow running with -installed without creating [InstalledPlatforms] entries in BaseEngine.ini. If there is no HasInstalledPlatformInfo=true setting, assume that all platforms are still available.
Change 3572215 by Graeme.Thornton
UBT
- Remove some unnecessary using directives
- Point SN-DBS code at the new Utils.GetPhysicalProcessorCount call, rather than trying to calculate it itself
Change 3572437 by Robert.Manuszewski
Game-specific fix for lazy object pointer issues in one of the test levels. The previous fix had to be partially reverted due to side-effects.
#jira UE-44996
Change 3572480 by Robert.Manuszewski
MaterialInstanceCollections will no longer be added to GC clusters to prevent materials staying around in memory for too long
Change 3573547 by Ben.Marsh
Add support for displaying log timestamps in local time. Set LogTimes=Local in *Engine.ini, or pass -LocalLogTimes on the command line.
Change 3574562 by Robert.Manuszewski
PR #3847: Add GC callbacks for script integrations (Contributed by mhutch)
Change 3575017 by Ben.Marsh
Move some functions related to generating window resolutions out of Core (FParse::Resolution, GenerateConvenientWindowedResolutions). Also remove a few headers from shared PCHs prior to splitting application functionality out of Core.
Change 3575689 by Ben.Marsh
Add a fixed URL for opening the API documentation, so it works correctly in "internal" and "perforce" builds.
Change 3575934 by Steve.Robb
Fix for nested preprocessor definitions.
Change 3575961 by Steve.Robb
Fix for nested zeros.
Change 3576297 by Robert.Manuszewski
Material resources will now be discarded in PostLoad (Game Thread) instead of in Serialize (potentially Async Loading Thread) so that shader deregistration doesn't assert when done from a different thread than the game thread.
#jira FORT-38977
Change 3576366 by Ben.Marsh
Add shim functions to allow redirecting FPlatformMisc::ClipboardCopy()/ClipboardPaste() to FPlatformApplicationMisc::ClipboardCopy()/ClipboardPaste() while they are deprecated.
Change 3578290 by Graeme.Thornton
Changes to Ionic zip library to allow building on dot net core
Change 3578291 by Graeme.Thornton
Ionic zip library binaries built for .NET Core
Change 3578354 by Graeme.Thornton
Added FBase64::GetDecodedDataSize() to determine the size of bytes of a decoded base64 string
Change 3578674 by Robert.Manuszewski
After loading packages flush linker cache on uncooked platforms to free precache memory
Change 3579068 by Steve.Robb
Fix for CLASS_Intrinsic getting stomped.
Fix to EClassFlags so that they are visible in the debugger.
Re-added mysteriously-removed comments.
Change 3579228 by Steve.Robb
BOM removed.
Change 3579297 by Ben.Marsh
Fix exception if a plugin lists the same module twice.
#jira UE-48232
Change 3579898 by Robert.Manuszewski
When creating GC clusters and asserting due to objects still being pending load, the object name and cluster name will now be logged with the assert.
Change 3579983 by Robert.Manuszewski
More fixes for freeing linker cache memory in the editor.
Change 3580012 by Graeme.Thornton
Remove redundant copy of FileReference.cs
Change 3580408 by Ben.Marsh
Validate that arguments passed to the checkf macro are valid sprintf types, and fix up a few places which are currently incorrect.
Change 3582104 by Graeme.Thornton
Added a dynamic compilation path that uses the latest roslyn apis. Currently only used by the .NET Core path.
Change 3582131 by Graeme.Thornton
#define out some PerformanceCounter calls that don't exist in .NET Core. They're only used by mono-specific calls anyway.
Change 3582645 by Ben.Marsh
PR #3879: fix bug when creating a new VS2017 C++ project (Contributed by mnannola)
#jira UE-48192
Change 3583955 by Robert.Manuszewski
Support for EDL cooked packages in the editor
Change 3584035 by Graeme.Thornton
Split RunExternalExecutable into RunExternaNativelExecutable and RunExternalDotNETExecutable. When running under .NET Core, externally launched DotNET utilities must be launched via the 'dotnet' proxy to work correctly.
Change 3584177 by Robert.Manuszewski
Removed unused member variable (FArchiveAsync2::bKeepRestOfFilePrecached)
Change 3584315 by Ben.Marsh
Move Android JNI accessor functions into separate header, to decouple it from the FAndroidApplication class.
Change 3584370 by Ben.Marsh
Move hooks which allow platforms to load any modules into the FPlatformApplicationMisc classes.
Change 3584498 by Ben.Marsh
Move functions for getting and setting the hardware window pointer onto the appropriate platform window classes.
Change 3585003 by Steve.Robb
Fix for TChunkedArray ranged-for iteration.
#jira UE-48297
Change 3585235 by Ben.Marsh
Remove LogEngine extern from Core; use the platform log channels instead.
Change 3585942 by Ben.Marsh
Move MessageBoxExt() implementation into application layer for platforms that require it.
Change 3587071 by Ben.Marsh
Move Linux's UngrabAllInput() function into a callback, so DebugBreak still works without SDL.
Change 3587161 by Ben.Marsh
Remove headers which will be stripped out of the Core module from Core.h and PlatformIncludes.h.
Change 3587579 by Steve.Robb
Fix for Children list not being rebuilt after hot reload.
Change 3587584 by Graeme.Thornton
Logging improvements for pak signature check failures
- Added "PakCorrupt" console command which corrupts the master signature table
- Added some extra log information about which block failed
- Re-hash the master signature table and to make sure that it hasn't changed since startup
- Moved the ensure around so that some extra logging messages can make it out before the ensure is hit
- Added PAK_SIGNATURE_CHECK_FAILS_ARE_FATAL to IPlatformFilePak.h so we have a single place to make signature check failures fatal again
Change 3587586 by Graeme.Thornton
Changes to make UBT build and run on .NET Core
- Added *_DNC csproj files for DotNETUtilities and UnrealBuildTool projects which contain the .NET Core build setups
- VCSharpProjectFile can no be asked for the CsProjectInfo for a particular configuration, which is cached for future use
- After loading VCSharpProjectFiles, .NET Core based projects will be excluded unless generating VSCode projects
Change 3587953 by Steve.Robb
Allow arbitrary UENUM initializers for enumerators.
Editor-only data UENUM support.
Enumerators named MAX are now treated as the UENUM's maximum, and will not cause a MAX+1 value to be generated.
#jira UE-46274
Change 3589827 by Graeme.Thornton
More fixes for VSCode project generation and for UBT running on .NET Core
- Use a different file extension for rules assemblies when build on .NET Core, so they never get used by their counterparts
- UEConsoleTraceListener supports stdout/stderror constructor parameter and outputs to the appropriate channel
- Added documentation for UEConsoleTraceListener
- All platforms .NET project compilation tasks/launch configs now use "dotnet" and not the normal batch files
- Restored the default UBT log verbosity to "Log" rather than "VeryVeryVerbose"
- Renamed assemblies for .NETCore versions of DotNETUtilities and UnrealBuildTool so they don't conflict with the output of the existing .NET Desktop Framework stuff
Change 3589868 by Graeme.Thornton
Separate .NET Core projects for UBT and DotNETCommon out into their own directories so that their intermediates don't overlap with the standard .NET builds, causing failures.
UBT registers ONLY .NET Core C# projects when generating VSCode solutions, and ONLY standard C# projects in all other cases
Change 3589919 by Robert.Manuszewski
Fixing crash when cooking textures that have already been cooked for EDL (support for cooked content in the editor)
Change 3589940 by Graeme.Thornton
Force UBT to think it's running on mono when actually running on .NET Core. Disables a lot of windows specific code paths.
Change 3590078 by Graeme.Thornton
Fully disable automatic assembly info generation in .NET Core projects
Change 3590534 by Robert.Manuszewski
Marking UObject as intrinsic clas to fix a crash on UFE startup.
Change 3591498 by Gil.Gribb
UE4 - Fixed several edge cases in the low level async loading code, especially around cancellation. Also PakFileTest is a console command which can be used to stress test pak file loading.
Change 3591605 by Gil.Gribb
UE4 - Follow up to fixing several edge cases in the low level async loading code.
Change 3592577 by Graeme.Thornton
.NET Core C# projects now reference source files explicitly, to stop it accidentally compiling various intermediates
Change 3592684 by Steve.Robb
Fix for EObjectFlags being passed as the wrong argument to csgCopyBrush.
Change 3592710 by Steve.Robb
Fix for invalid casts in ListProps command.
Some name changes in command output.
Change 3592715 by Ben.Marsh
Move Windows event log code into cpp file, and expose it to other modules even if it's not enabled by default.
Change 3592767 by Gil.Gribb
UE4 - Changed the logic so that engine UObjects boot before anything else. The engine classes are known to be cycle-free, so we will get them done before moving onto game modules.
Change 3592770 by Gil.Gribb
UE4 - Fixed a race condition with async read completion in the prescence of cancels.
Change 3593090 by Steve.Robb
Better error message when there two clashing type names are found.
Change 3593697 by Steve.Robb
VisitTupleElements function, which calls a functor for each element in the tuple.
Change 3595206 by Ben.Marsh
Include additional diagnostics for missing imports when a module load fails.
Change 3596140 by Graeme.Thornton
Batch file for running MSBuild
Change 3596267 by Steve.Robb
Thread safety fix to FPaths::GetProjectFilePath().
Change 3596271 by Robert.Manuszewski
Added code to verify compression flags in package file summary to avoid cases where corrupt packages are crashing the editor
#jira UE-47535
Change 3596283 by Steve.Robb
Redundant casts removed from UHT.
Change 3596303 by Ben.Marsh
EC: Improve parsing of Android Clang errors and warnings, which are formatted as MSVC diagnostics to allow go-to-line clicking in the Output Window.
Change 3596337 by Ben.Marsh
UBT: Format messages about incorrect headers in a way that makes them clickable from Visual Studio.
Change 3596367 by Steve.Robb
Iterator checks in ranged-for on TMap, TSet and TSparseArray.
Change 3596410 by Gil.Gribb
UE4 - Improved some error messages on runtime failures in the EDL.
Change 3596532 by Ben.Marsh
UnrealVS: Fix setting command line to empty not affecting property sheet. Also remove support for VS2013.
#jira UE-48119
Change 3596631 by Steve.Robb
Tool which takes a .map file and a .objmap file (from UBT) and creates a report which shows the size of all the symbols contributed by the source code per-folder.
Change 3596807 by Ben.Marsh
Improve Intellisense when generated headers are missing or out of date (eg. line numbers changed, etc...). These errors seem to be masked by VAX, but are present when using the default Visual Studio Intellisense.
* UCLASS macro is defined to empty when __INTELLISENSE__ is defined. Previous macro was preventing any following class declaration being parsed correctly if generated code was out of date, causing squiggles over all class methods/variables.
* Insert a semicolon after each expanded GENERATED_BODY macro, so that if it parses incorrectly, the compiler can still continue parsing the next declaration.
Change 3596957 by Steve.Robb
UBT can be used to write out an .objsrcmap file for use with the MapFileParser.
Renaming of ObjMap to ObjSrcMap in MapFileParser.
Change 3597213 by Ben.Marsh
Remove AutoReporter. We don't support this any more.
Change 3597558 by Ben.Marsh
UGS: Allow adding custom actions to the context menu for right clicking on a changelist. Actions are specified in the project's UnrealEngine.ini file, with the following syntax:
+ContextMenu=(Label="This is the menu item", Execute="foo.exe", Arguments="bar")
The standard set of variables for custom tools is expanded in each parameter (eg. $(ProjectDir), $(EditorConfig), etc...), plus the $(Change) variable.
Change 3597982 by Ben.Marsh
Add an option to allow overriding the local DDC path from the editor (under Editor Preferences > Global > Local Derived Data Cache).
#jira UE-47173
Change 3598045 by Ben.Marsh
UGS: Add variables for stream and client name, and the ability to escape any variables for URIs using the syntax $(VariableName:URI).
Change 3599214 by Ben.Marsh
Avoid string duplication when comparing extensions.
Change 3600038 by Steve.Robb
Fix for maps being modified during iteration in cache compaction.
Change 3600136 by Steve.Robb
GitHub #3538 : Fixed a bug with the handling of 'TMap' key/value types in the UnrealHeaderTool
Change 3600214 by Steve.Robb
More accurate error message when unsupported template parameters are provided in a TSet property.
Change 3600232 by Ben.Marsh
UBT: Force UHT to run again if the .build.cs file for a module has changed.
#jira UE-46119
Change 3600246 by Steve.Robb
GitHub #3045 : allow multiple interface definition in a file
Change 3600645 by Ben.Marsh
Convert QAGame to Include-What-You-Use.
Change 3600897 by Ben.Marsh
Fix invalid path (multiple slashes) in LibCurl.build.cs. Causes exception when scanning for includes.
Change 3601558 by Graeme.Thornton
Simple first pass VSCode editor integration plugin
Change 3601658 by Graeme.Thornton
Enable intellisense generation for VS Code project files and setup include paths properly
Change 3601762 by Ben.Marsh
UBT: Add support for adaptive non-unity builds when working from a Git repository.
The ISourceFileWorkingSet interface is now used to query files belonging to the working set, and has separate implementations for Perforce (PerforceSourceFileWorkingSet) and Git (GitSourceFileWorkingSet). The Git implementation is used if a .git directory is found in the directory containing the Engine folder, the directory containing the project file, or the parent directory of the project file, and spawns a "git status" process in the background to determine which files are untracked or staged.
Several new settings are supported in BuildConfiguration.xml to allow modifying default behavior:
<SourceFileWorkingSet>
<Provider>Default</Provider> <!-- May be None, Default, Git or Perforce -->
<RepositoryPath></RepositoryPath> <!-- Specifies the path to the repository, relative to the directory containing the Engine folder. If not set, tries to find a .git directory in the locations listed above. -->
<GitPath>git</GitPath> <!-- Specifies the path to the Git executable. Defaults to "git", which assumes that it will be on the PATH -->
</SourceFileWorkingSet>
Change 3604032 by Graeme.Thornton
First attempt at automatically detecting the existance and location of visual studio code in the source code accessor module. Only works for windows.
Change 3604038 by Graeme.Thornton
Added FSourceCodeNavigation::GetSelectedSourceCodeIDE() which returns the name of the selected source code accessor.
Replaced all usages of FSourceCodeNavigation::GetSuggestedSourceCodeIDE() with GetSelectedSourceCodeIDE(), where the message is referring to the opening or editing of code.
Change 3604106 by Steve.Robb
GitHub #3561 : UE-44950: Don't see all caps struct constructor as macro
Change 3604192 by Steve.Robb
GitHub #3911 : Improving ToUpper/ToLower efficiency
Change 3604273 by Graeme.Thornton
IWYU build fixes when malloc profiler is enabled
Change 3605457 by Ben.Marsh
Fix race for intiialization of ThreadID variable on FRunnableThreadWin, and restore a previous check that was working around it.
Change 3606720 by James.Hopkin
Dave Ratti's fix to character base recursion protection code - was missing a GetOwner call, instead attempting to cast a component to a pawn.
Change 3606807 by Graeme.Thornton
Disabled optimizations around FShooterStyle::Create(), which was crashing in Win64 shipping game builds due to some known compiler issue. Same variety of fix as BenZ did in CL 3567741.
Change 3607026 by James.Hopkin
Fixed incorrect ABrush cast - was attempting to cast a UModel to ABrush, which can never succeed
Change 3607142 by Graeme.Thornton
UBT - Minor refactor of BackgroundProcess shutdown in SourceFileWorkingSet. Check whether the process has already exited before trying to kill it during Dispose.
Change 3607146 by Ben.Marsh
UGS: Fix exception due to formatting string when Perforce throws an error.
Change 3607147 by Steve.Robb
Efficiency fix for integer properties, which were causing a property mismatch and thus a tag lookup every time.
Float and double conversion support added to int properties.
NAME_DoubleProperty added.
Fix for converting enum class enumerators > 255 to int properties.
Change 3607516 by Ben.Marsh
PR #3935: Fix DECLARE_DELEGATE_NineParams, DECLARE_MULTICAST_DELEGATE_NineParams. (Contributed by enginevividgames)
Change 3610421 by Ben.Marsh
UAT: Move help for RebuildLightMapsCommand into attributes, so they display when running with -help.
Change 3610657 by Ben.Marsh
UAT: Unify initialization of command environment for build machines and local execution. Always derive parameters which aren't manually set via environment variables.
Change 3611000 by Ben.Marsh
UAT: Remove the -ForceLocal command line option. Settings are now determined automatically, independently of the -Buildmachine argument.
Change 3612471 by Ben.Marsh
UBT: Move FastJSON into DotNETUtilities.
Change 3613479 by Ben.Marsh
UBT: Remove the bIsCodeProject flag from UProjectInfo. This was only really being used to determine which projects to generate an IDE project for, so it is now checked in the project file generator.
Change 3613910 by Ben.Marsh
UBT: Remove unnecessary code to guess a project from the target name; doesn't work due to init order, actual project is determined later.
Change 3614075 by Ben.Marsh
UBT: Remove hacks for testing project file attributes by name.
Change 3614090 by Ben.Marsh
UBT: Remove global lookup of project by name. Projects should be explicitly specified by path when necessary.
Change 3614488 by Ben.Marsh
UBT: Prevent annoying (but handled) exception when constructing SQLiteModuleSupport objects with -precompile enabled.
Change 3614490 by Ben.Marsh
UBT: Simplify generation of arguments for building intellisense; determine the platform/configuration to build from the project file generation code, rather than inside the target itself.
Change 3614962 by Ben.Marsh
UBT: Move the VS2017 strict conformance mode (/permissive-) behind a command line option (-Strict), and disable it by default. Building with this mode is not guaranteed to work correctly without updated Windows headers.
Change 3615416 by Ben.Marsh
EC: Include an icon showing the overall status of a build in the grid view.
Change 3615713 by Ben.Marsh
UBT: Delete any files in output directories which match output files in other directories. Allows automatically deleting build products which are moved into another folder.
#jira UE-48987
Change 3616652 by Ben.Marsh
Plugins: Fix incorrect dialog when binaries for a plugin are missing. Should only prompt to disable if starting a content-only project.
#jira UE-49007
Change 3616680 by Ben.Marsh
Add the CodeAPI-HTML.tgz file into the installed engine build.
Change 3616767 by Ben.Marsh
Plugins: Tweak error message if the FModuleManager::IsUpToDate() function returns false for a plugin module; the module may be missing, not just incompatible.
Change 3616864 by Ben.Marsh
Cap the length of the temporary package name during save, to prevent excessively long filenames going over the limit once a GUID is appended.
#jira UE-48711
Change 3619964 by Ben.Marsh
UnrealVS: Fix single file compile for foreign projects, where the command line contains $(SolutionDir) and $(ProjectName) variables.
Change 3548930 by Ben.Marsh
UBT: Remove UEBuildModuleCSDLL; there is no codepath that still supports creating them. Remove the remaining UEBuildModule/UEBuildModuleCPP abstraction.
Change 3558056 by Ben.Marsh
Deprecate FString::Trim() and FString::TrimTrailing(), and replace them with separate versions to mutate (TrimStartInline(), TrimEndInline()) or return by copy (TrimStart(), TrimEnd()). Also add a functions to trim whitespace from both ends of a string (TrimStartAndEnd(), TrimStartAndEndInline()).
Change 3563309 by Graeme.Thornton
Moved some common C# classes into the DotNETCommon assembly
Change 3570283 by Graeme.Thornton
Move some code out of RPCUtility and into DotNETCommon, removing the dependency between the two projects
Added UEConsoleTraceListener to replace ConsoleTraceListener, which doesn't exist in DotNetCore
Change 3572811 by Ben.Marsh
UBT: Add -enableasan / -enabletsan command line options and bEnableAddressSanitizer / bEnableThreadSanitizer settings in BuildConfiguration.xml (and remove environment variables).
Change 3573397 by Ben.Marsh
UBT: Create a <ExeName>.version file for every target built by UBT, in the same JSON format as Engine/Build/Build.version. This allows monolithic targets to read a version number at runtime, unlike when it's embedded in a modules file, and allows creating versioned client executables that will work with versioned servers when syncing through UGS.
Change 3575659 by Ben.Marsh
Remove CHM API documentation.
Change 3582103 by Graeme.Thornton
Simple ResX writer implemetation that the xbox deloyment code can use instead of the one from the windows forms assembly, which isn't supported on .NET Core
Removed reference to System.Windows.Form from UBT.
Change 3584113 by Ben.Marsh
Move key-mapping functionality into the InputCore module.
Change 3584278 by Ben.Marsh
Move FPlatformMisc::RequestMinimize() into FPlatformApplicationMisc.
Change 3584453 by Ben.Marsh
Move functionality for querying device display density to FApplicationMisc, due to dependence on application-level functionality on mobile platforms.
Change 3585301 by Ben.Marsh
Move PlatformPostInit() into an FPlatformApplicationMisc function.
Change 3587050 by Ben.Marsh
Move IsThisApplicationForeground() into FPlatformApplicationMisc.
Change 3587059 by Ben.Marsh
Move RequiresVirtualKeyboard() into FPlatformApplicationMisc.
Change 3587119 by Ben.Marsh
Move GetAbsoluteLogFilename() into FPlatformMisc.
Change 3587800 by Steve.Robb
Fixes to container visualizers for types whose pointer type isn't simply Type*.
Change 3588393 by Ben.Marsh
Move platform output devices into their own headers.
Change 3588868 by Ben.Marsh
Move creation of console, error and warning output devices int PlatformApplicationMisc.
Change 3589879 by Graeme.Thornton
All automation projects now have a reference to DotNETUtilities
Fixed a build error in the WEX automation library
Change 3590034 by Ben.Marsh
Move functionality related to windowing and input out of the Core module and into an ApplicationCore module, so it is possible to build utilities with Core without adding dependencies on XInput (Windows), SDL (Linux), and OpenGL (Mac).
Change 3593754 by Steve.Robb
Fix for tuple debugger visualization.
Change 3597208 by Ben.Marsh
Move CrashReporter out of a public folder; it's not in a form that is usable by subscribers and licensees.
Change 3600163 by Ben.Marsh
UBT: Simplify how targets are cleaned. Delete all intermediate folders for a platform/configuration, and delete any build products matching the UE4 naming convention for that target, rather than relying on the current build configuration or list of previous build products. This will ensure that build products which are no longer being generated will also be cleaned.
#jira UE-46725
Change 3604279 by Graeme.Thornton
Move pre/post garbage collection delegates into accessor functions so they can be used by globally constructed objects
Change 3606685 by James.Hopkin
Removed redundant 'Cast's (casting to either the same type or a base).
In SClassViewer, replaced cast with TAssetPtr::operator* call to get the wrapped UClass.
Also removed redundant 'IsA's from AnimationRetargetContent::AddRemappedAsset in EditorAnimUtils.cpp.
Change 3610950 by Ben.Marsh
UAT: Simplify logic for detecting Perforce settings, using environment variables if they are set, otherwise falling back to detecting them. Removes special cases for build machines, and makes it simpler to set up UAT commands on builders outside Epic.
Change 3610991 by Ben.Marsh
UAT: Use the correct P4 settings to detect settings if only some parameters are specified on the command line.
Change 3612342 by Ben.Marsh
UBT: Change JsonObject.Read() to take a FileReference parameter.
Change 3612362 by Ben.Marsh
UBT: Remove some more cases of paths being passed as strings rather than using FileReference objects.
Change 3619128 by Ben.Marsh
Include builder warnings and errors in the notification emails for automated tests, otherwise it's difficult to track down non-test failures.
[CL 3620189 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3494741 by Steve.Robb
Generated code size savings.
#jira UE-43048
Change 3495484 by Steve.Robb
Fix for generated indices of static arrays when saving configs.
Change 3497926 by Robert.Manuszewski
Removed FPackageFileSummary's CompressedChunks array as it was no longer being used by anything.
Change 3498077 by Robert.Manuszewski
Only use the recursion guard in async loading code when the event driven loader is enabled.
Change 3498112 by Ben.Marsh
UBT: Respect the option to not create debug info in the Android toolchain. This option is already being respected by the compiler, but the linker adds debug info of its own.
Change 3500239 by Robert.Manuszewski
Made sure the Super Class token stream is also locked when assembling Class token stream with async loading thread enabled. This to to prevent race conditions when loading BP classes.
Change 3500395 by Steve.Robb
Extra codegen savings when not in hot reload.
Change 3501004 by Steve.Robb
EObjectFlags now have constexpr operators.
Change 3502079 by Ben.Marsh
UBT: Pad multi-line error messages so that they align under the prefix for the first line, and include the timestamp if necessary.
Change 3502527 by Steve.Robb
Fix for zero-sized array compile error in generated code when all functions are editor-only.
Change 3502542 by Ben.Marsh
UAT: Remove the custom source parameter from log functions, and add support for a customizable indent instead.
Change 3502868 by Steve.Robb
Workaround for inefficient generated code with stateless lambdas on Clang.
Change 3503550 by Steve.Robb
Another generated code lambda optimization.
Change 3503582 by Ben.Marsh
BuildGraph: Add support for nullable parameter types.
Change 3504424 by Steve.Robb
New AllOf, AnyOf and NoneOf algorithms.
Change 3504712 by Ben.Marsh
UAT: Less spammy log and error output from UAT.
* Callstacks for AutomationExceptions are suppressed by default but still included in the log (the path to the log is noted in console output with the message from the exception).
* Add a mechanism for any exceptions to be caught and rethrown with additional lines of context (CommandUtils.AddContext()) that will be appended to the error output by UAT. Avoids decaying the exception type or masking the inner exception message while still adding additional information.
* AggregateExceptions resulting from exceptions on child threads are automatically unwrapped (full details are still appended to the log)
* Name of the calling function is not included in console output by default, but still included in the log.
Change 3504808 by Ben.Marsh
UAT: Suppress P4 output when running a recursive instance of UAT.
Change 3505044 by Steve.Robb
Code generation improved for TCppClassType code.
Change 3505485 by Ben.Marsh
Fix deterministic cooking issue; always use a pseudo-random number stream when compiling a module.
Change 3505699 by Ben.Marsh
Plugins: Store the bEnabledByDefault flag exactly as it was read from disk rather than collapsing it to an absolute value based on the default for the location it was read from. This allows loading/saving plugin descriptors without any knowledge of whether they are game or engine plugins.
Change 3506055 by Ben.Marsh
UAT: Add a class to apply a log indent for the lifetime of an object (ScopedLogIndent), and use it to apply an indent to MegaXGE/ParallelExecutor output.
Change 3507745 by Robert.Manuszewski
Moved FSimpleObjectReferenceCollectorArchive and FSimpleObjectReferenceCollectorArchive to be internal archives used only by FReferenceCollector so that they are constructed only once per GC task instead of potentially multiple times per GC (as was the case with UDataTables and BlueprintGeneratedClasses).
Change 3507911 by Ben.Marsh
Plugins: Minor changes to plugin descriptors.
* Add a distinct setting for an unspecified EnabledByDefault setting in plugin descriptors.
* Add a function to IPlugin to determine the effective EnabledByDefault setting, based on where the plugin was loaded from.
Change 3508669 by Ben.Marsh
EC: Parse multi-line messages from UBT and UAT.
Change 3508691 by Ben.Marsh
Fix double-spacing of cook stats.
Change 3509245 by Steve.Robb
UHT makefiles removed.
Flag audit removed.
Change 3509275 by Steve.Robb
Fix for mismatched stat categories in AudioMixer.
#jira UE-46129
Change 3509289 by Robert.Manuszewski
Custom Version Container will no longer be always constructed in FArchive constructor. This reduces the number of the Custom Version Container allocations considerably.
Change 3509294 by Robert.Manuszewski
UDataTable::AddReferencedObjects will no longer try to iterate over the RowMap if there's no UObject references in it.
Change 3509312 by Steve.Robb
GitHub# 3679: Add TArray constructor that takes a raw pointer and a count
Check improved for Append() to allow nullptr in empty ranges, and added to new constructor too.
#jira UE-46136
Change 3509396 by Steve.Robb
GitHub# 3676: Fix TUnion operator<< compile error
#jira UE-46099
Change 3509633 by Steve.Robb
Fix for line numbers on multiline macros.
Change 3509938 by Gil.Gribb
UE4 - Fix rare assert involving cancelled precache requests and non-pak-file loading.
Change 3510593 by Daniel.Lamb
Fixed up unsoilicited files getting populated with files which aren't finished being created yet.
#test None
Change 3510594 by Daniel.Lamb
Fixed up temp files directory for patching.
Thanks David Yerkess @ Milestone
#review@Ben.Marsh
Change 3511628 by Ben.Marsh
PR #3707: Fixed UBT stack size (Contributed by gildor2)
Change 3511808 by Ben.Marsh
Optimize checks for whether the game project contains source code. Now stops as soon as the first file is found and ignores directories beginning with a '.' character (eg. .git)
#jira UE-46540
Change 3512017 by Ben.Marsh
Plugins: Deprecate the QueryStatusForAllPlugins() function; the same functionality is available via the IPlugin interface.
Change 3513935 by Steve.Robb
Reverted array iteration in FPropertyNode::PropagatePropertyChange as this is now covered in TProperty::InitializeValueInternal() as of CL# 3293477.
Change 3514142 by Steve.Robb
MemoryProfiler2 added to generated solution.
Change 3516463 by Ben.Marsh
Plugins: Create a manifest for each PAK file containing all the plugin descriptors in one place. Eliminates need to recurse through directories and read separate multiple files in serial at startup, and allows reading all plugin descriptors with one read. The "Mods" directory is excluded from the manifest, since these are intended to be installed separately by the user.
Change 3517860 by Ben.Marsh
PR #3727: FString Dereference Fixes (Contributed by jovisgCL)
Change 3517967 by Ben.Marsh
Suppress additional system error dialogs when loading DLLs if -unnattended is on the command line.
Change 3518070 by Steve.Robb
Disable Binned2 stats in shipping non-editor builds.
Change 3520079 by Steve.Robb
Fixed bad codegen TAssetPtrs being passed into BlueprintImplementableEvent functions.
#jira UE-24034
Change 3520080 by Robert.Manuszewski
Made max package summary size to be configurable with ini setting
Change 3520083 by Steve.Robb
Force a GC after hot reload to clean up reinstanced objects which may still tick.
#jira UE-40421
Change 3520480 by Robert.Manuszewski
Improved assert message when the initial package read request was too small.
Change 3520590 by Graeme.Thornton
SignedArchiveReader optimizations
- Loads more stats
- Stop chunk cache worker from waking up continuously to poll for work. Only wake up when triggered by the archive reader
- Signed archive reader just yields when waiting for buffers to finish loading, rather than sleeping for some arbitrary amount of time
- Track the number of pending read requests in an atomic counter, to save having to lock the request queue to check for new entries
Change 3521023 by Graeme.Thornton
Remove spin from signed archive reader. Main thread waits on an event triggered by the chunk worker to indicate that new chunks are ready for processing
Change 3521787 by Ben.Marsh
PR #3736: Small static code analysis fixes (Contributed by jovisgCL)
Change 3521789 by Ben.Marsh
PR #3735: Fix case sensitivity issue in FWindowsPlatformProcess::IsApplicationRunning. (Contributed by samhocevar)
Change 3524721 by Ben.Marsh
Move Linux SDL initialization into FLinuxPlatformApplicationMisc. Attempting to move functionality related to interactive applications (graphics, input, etc...) into a separate place, so it can ultimately be moved out of Core.
Change 3524741 by Ben.Marsh
Move PumpMessages() into FPlatformApplicationMisc.
Change 3525399 by Ben.Marsh
UGS: Use the default Perforce server port when opening P4V if there is not one set in the environment.
Change 3525743 by Ben.Marsh
UAT: Add a parameter to allow updating version files without updating Version.h, to allow faster link times on incremental builds.
Change 3525746 by Ben.Marsh
EC: Include the clobber option on new workspaces, to allow overriding version files when syncing.
Change 3526453 by Ben.Marsh
UGS: Do not generate project files when syncing precompiled binaries.
Change 3527045 by Ben.Marsh
Fix hot reload generating import libraries without DLLs. Now that they are produced by separate actions by default, it was removing DLLs from the action graph due to the bSkipLinkingWhenNothingToCompile setting.
Change 3527420 by Ben.Marsh
UGS: Add additional search paths for UGS config files, and fix a few cosmetic issues (inability to display ampersands in tools menu, showing changelist -1 when running a tool without syncing).
Config files are now read from:
Engine/Programs/UnrealGameSync/UnrealGameSync.ini
Engine/Programs/UnrealGameSync/NotForLicensees/UnrealGameSync.ini
If a project is selected:
<ProjectDir>/Build/UnrealGameSync.ini
<ProjectDir>/Build/NotForLicensees/UnrealGameSync.ini
If the .uprojectdirs file is selected:
Engine/Programs/UnrealGameSync/DefaultProject.ini
Engine/Programs/UnrealGameSync/NotForLicensees/DefaultProject.ini
Change 3528063 by Ben.Marsh
Fix non-thread safe construction of FPluginManager singleton. Length of time spent in the constructor resulted in multiple instances being constructed at startup, making the time to enumerate plugins on slow media significantly worse.
Change 3528415 by Ben.Marsh
UAT: Remove \r characters from the end of multiline log messages.
Change 3528427 by Ben.Marsh
EC: Fix spaces being converted to tabs at start of line in failure emails (by Gmail), and wrap following lines at the same indent.
Change 3528485 by Ben.Marsh
EC: Remove zero-width word break characters from slashes in notification emails; can cause really hard to debug problems when copy pasted into other places.
Change 3528505 by Steve.Robb
PR #3755: MallocProfiler - Remove subfolder from profiling save directory (Contributed by Josef-CL)
#jira UE-46819
Change 3528772 by Robert.Manuszewski
Enabling actor and blueprint clustering in ShooterGame
Change 3528786 by Robert.Manuszewski
PR #3760: Fix typo (Contributed by jesseyeh)
Change 3528792 by Steve.Robb
PR #3764: MallocProfiler - Refactoring Scopelock (Contributed by Josef-CL)
#jira UE-46962
Change 3528941 by Robert.Manuszewski
Fixed lazy object pointers not being updated for streaming sub-levels in PIE. Fixed lazy pointers returning object that is still being loaded which could lead to undefined behavior when client code started modifying the returned object.
#jira UE-44996
Change 3530241 by Ben.Marsh
UAT: Only pass -submit or -nosubmit to child instances of UAT if they were specified on the original command line. BuildCookRun uses this flag to determine whether to submit, rather than just whether to allow submitting, so we shouldn't pass an inferred value.
Change 3531377 by Ben.Marsh
Plugins: Allow plugins to specify a list of supported target platforms, which is propagated to any .uproject file that enables it.
This has several advantages over the per-module platform whitelist/blacklist:
* Platform-specific .uplugin files can now be excluded when staging other platforms. Previously, it was only possible to determine which platforms a plugin supports by reading the plugin descriptor itself. Now that information is copied into the .uproject file, so the runtime knows which plugins to ignore.
* References to dependent plugins from platform-specific plugins can now be eliminated.
* Plugins containing content can now be unambiguously disabled on a per-platform basis (having no modules for a platform does not confer that a plugin doesn't support that platform; now it is possible to specify supported platforms explicitly).
* The editor can load any plugins without having to whitelist supported editor host platforms.
UE4 targets which support loading plugins for target platforms can set TargetRules.bIncludePluginsForTargetPlatforms (true for the editor by default, false for any other target types). This defines the LOAD_PLUGINS_FOR_TARGET_PLATFORMS macro at runtime, which allows the plugin system to filter which plugins to look for at runtime.
Any .uproject file will be updated at startup to contain the list of supported platforms for each referenced plugin if necessary.
Change 3531502 by Jin.Zhang
Add support for GPUCrash #rb
Change 3531664 by Ben.Marsh
UBT: Change output format from C# JSON writer to match output by the engine.
Change 3531848 by Ben.Marsh
UAT: Add script to resaving all project descriptors under a folder, embedding information for any supported platforms for the plugins they enable.
Change 3531869 by Ben.Marsh
UAT: Add parameter to the ResaveProjectDescriptors command to update the engine association field.
Change 3532474 by Ben.Marsh
UBT: Use the same mechanism as UAT for logging exceptions.
Change 3532734 by Graeme.Thornton
Initial VSCode Support
- Tasks generated for building all game/engine/program targets
- Debugging support for targets on Win64
Change 3532789 by Steve.Robb
FScriptSet::Add and TScriptMap::Add now replace the element, matching the behavior of TSet and TMap.
Set_Add and Map_Add no longer have a return value.
FScriptSet::Find and FScriptMap::Find functions are now FindIndex.
FScriptSetHelper::FindElementFromHash is now FindElementIndexFromHash.
Change 3532845 by Steve.Robb
Obsolete UHT settings deleted.
Change 3532875 by Graeme.Thornton
VSCode
- Add debug targets for different target configurations
- Choose between VS debugger (windows) and GDB (mac/linux)
Change 3532906 by Graeme.Thornton
VSCode
- Point all builds directly at UBT rather than the batch files
- Adjust mac build tasks to run through mono
Change 3532924 by Ben.Marsh
UAT: Set the UAT working directory immediately on startup. This ensures that any command line arguments containing paths are resolved consistently to the branch root.
Change 3535234 by Graeme.Thornton
VSCode - Pass intellisense system a list of paths to use for header resolution
Change 3535247 by Graeme.Thornton
UBT - Add a ToString to ProjectFile.Source file to help with debugger watch presentation
Change 3535376 by Graeme.Thornton
VSCode
- Added build jobs for C# projects
- Linked launch tasks to relevant build task
Change 3537083 by Ben.Marsh
EC: Change P4 swarm links to start at the changelist for a build.
Change 3537368 by Graeme.Thornton
Fix for crash in FSignedArchiveReader when multithreading is disabled
Change 3537550 by Graeme.Thornton
Fixed a crash in the taskgraph when running single threaded
Change 3537922 by Steve.Robb
Missing PF_ATC_RGBA_I added to FOREACH_ENUM_EPIXELFORMAT.
Change 3539691 by Graeme.Thornton
VSCode - Various updates to get PC and Mac C++ projects building and debugging.
- Some other changes to C# setup to allow compilation. Debugging doesn't work.
Change 3539775 by Ben.Marsh
Plugins: Various fixes to settings for enabling plugins.
* Fix crash on startup when trying to disable a missing plugin (was keeping pointers to elements in the project's plugin reference array, which may be modified if a plugin is disabled).
* Revert fix to set PluginDescriptor.bRequiresBuildPlatform = true by default. This was the originally intended behavior, but it was accidentally defaulted to false during serialization unless specified in the .uplugin file. Many plugins may rely on this behavior (they may not declare asset classes otherwise, for example, which could result in loss of data), so change the default value to false instead. Also fixes popups to disable platform-specific plugins if platform SDKs are not installed.
* Fix plugins which are referenced but do not exist not showing the appropriate prompt to disable them.
Change 3540788 by Ben.Marsh
UBT: Add support for declaring custom pre-build steps and post-build steps from .target.cs files. Similarly to the custom build steps configurable from .uproject and .uplugin files, these specify commands which will be executed by the host platform's shell before or after a build. The following variables are expanded within the list of commands before execution: $(EngineDir), $(ProjectDir), $(TargetName), $(TargetPlatform), $(TargetConfiguration), $(TargetType), $(ProjectFile).
Example usage:
public class UnrealPakTarget : TargetRules
{
public UnrealPakTarget(TargetInfo Target) : base(Target)
{
Type = TargetType.Program;
LinkType = TargetLinkType.Monolithic;
LaunchModuleName = "UnrealPak";
if(HostPlatform == UnrealTargetPlatform.Win64)
{
PreBuildSteps.Add("echo Before building:");
PreBuildSteps.Add("echo This is $(TargetName) $(TargetConfiguration) $(TargetPlatform)");
PostBuildSteps.Add("echo After building!");
PostBuildSteps.Add("echo This is $(TargetName) $(TargetConfiguration) $(TargetPlatform)");
}
}
}
Change 3541664 by Graeme.Thornton
VSCode - Add problemMatcher tag to cpp build targets
Change 3541732 by Graeme.Thornton
VSCode - Change UBT command line switch to "-vscode" for simplicity
Change 3541967 by Graeme.Thornton
VSCode - Fixes for Mac/Linux build steps
Change 3541968 by Ben.Marsh
CRP: Pass through the EnabledPlugins element in crash context XML files.
#jira UE-46912
Change 3542519 by Ben.Marsh
UBT: Add chain of references to error messages when configuring plugins.
Change 3542523 by Ben.Marsh
UBT: Add more useful error message when attempt to parse a JSON object fails.
Change 3542658 by Ben.Marsh
UBT: Include a chain of references when reporting errors instantiating modules.
Change 3543432 by Ben.Marsh
Plugins: Fix plugins which are enabled by default not being enabled unless a project file is set.
Change 3543436 by Ben.Marsh
UBT: Prevent recursing through the same module more than once when building out the referenced modules. Produces much shorter reference chains when something fails.
Change 3543536 by Ben.Marsh
UBT: Downgrade message about redundant plugin references to a warning.
Change 3543871 by Gil.Gribb
UE4 - Fixed a critical crash bug with non-EDL loading from pak files.
Change 3543924 by Robert.Manuszewski
Fixed a crash on UnrealFrontend startup caused by re-assembling GC token stream for one of the classes.
+Small optimization to token stream generation code.
Change 3544469 by Jin.Zhang
Crashes page displays the list of plugins from the crash context #rb
Change 3544608 by Steve.Robb
Fix for nativized generated code.
#jira UE-47452
Change 3544612 by Ben.Marsh
Add callback into FMacPlatformMisc::PumpMessages() from FMacPlatformApplicationMisc::PumpMessages().
#jira UE-47449
Change 3545954 by Gil.Gribb
Fixed a critical crash bug relating to a race condition in async package summary reading.
Change 3545968 by Ben.Marsh
UAT: Fix incorrect username in BuildGraph <Submit> task. Should use the username from the Perforce environment, not assume the logged in user name is the same.
#jira UE-47419
Change 3545976 by Ben.Marsh
EC: Delete the AutoSDK client if the directory doesn't exist. When we format build machines, we need to force everything to be resynced from scratch.
Change 3546185 by Ben.Marsh
Hacky fix for deployment on IOS/TVOS. Since deployment directly references the NonUFS manifest files that are written out, merge all the SystemNonUFS files back into the NonUFS list after the regular NonUFS files have been remapped.
Change 3547084 by Gil.Gribb
Fixed a critical race condition in the new async loader. This was only reproducible on IOS, but may affect other platforms.
Change 3547968 by Gil.Gribb
Fixed critical race which potentially could cause a crash in the pak precacher.
Change 3504722 by Ben.Marsh
BuildGraph: Improved tracing for error messages. All errors are now propagated as exceptions, and are tagged with additional context information about the task currently being run.
For example, throwing new AutomationException("Unable to write foo.txt") from SetVersionTask.Execute is now displayed in the log as:
ERROR: Unable to write to foo.txt
while executing <SetVersion Change="0" CompatibleChange="0" Branch="Unknown" Promoted="True" />
at Engine\Build\InstalledEngineBuild.xml(91)
(see D:\P4 UE4\Engine\Programs\AutomationTool\Saved\Logs\UAT_Log.txt for full exception trace)
Change 3512255 by Ben.Marsh
Rename FPaths functions with a "Game" prefix (GameDir(), GameContentDir(), etc...) to have a "Project" prefix (ProjectDir(), ProjectContentDir(), etc...) for clarity with non-game uses of UE4. Old functions still exist but are deprecated.
Change 3512332 by Ben.Marsh
Rename "Game" functions in FApp to be "Project" functions (FApp::GetGameName() -> FApp::GetProjectName(), etc...) for clarity with non-game uses of UE4.
Change 3512393 by Ben.Marsh
Rename FPaths::GameLogDir() to FPaths::ProjectLogDir().
Change 3513452 by Ben.Marsh
Plugins: Rename EPluginLoadedFrom::GameProject to EPluginLoadedFrom::Project.
Change 3516262 by Ben.Marsh
Add support for a "Mods" folder distinct from the project's "Plugins" folder, instead of using the bIsMod flag on the plugin descriptor.
* Mods are enumerated similarly to regular plugins, but IPlugin::GetType() will return EPluginType::Mod.
* The DLCName parameter to BuildCookRun and the cooker now correctly finds any plugin in the Plugins or Mods directory (or any subfolders).
Change 3517565 by Ben.Marsh
Remove fixed engine version numbers from OSS plugins.
Change 3518005 by Ben.Marsh
UAT: Remove the bUFSFile parameter from DeployLowerCaseFilenames(). Every platform returns false if the argument is false.
Change 3518054 by Ben.Marsh
UAT: Use an enum to direct whether all directories should be searched when finding files to stage, rather than a bool. Having so many optional boolean arguments makes code unreadable and refactoring hard.
Change 3524496 by Ben.Marsh
Start moving GUI application code into a separate static platform class, hopefully ultimately removing it from Core.
Change 3524641 by Ben.Marsh
Move more functionality related to windowed/graphical applications into FPlatformApplicationMisc.
Change 3528723 by Steve.Robb
MoveTemp now static asserts if passed a const reference or rvalue.
MoveTempIfPossible still follows the old (std::move) rule, which is useful for templates where the nature of the argument is not obvious.
Fixes to violations of these new rules.
Change 3528876 by Ben.Marsh
Move FPlatformMisc::ClipboardCopy and FPlatformMisc::ClipboardPaste to FPlatformApplicationMisc::ClipboardCopy and FPlatformApplicationMisc::ClipboardPaste.
Change 3529073 by Ben.Marsh
Add script to package ShooterGame for any platforms.
Change 3531493 by Ben.Marsh
Update platform-specific plugins to declare the target platforms they support.
Change 3531611 by Ben.Marsh
UAT: Add a ResavePluginDescriptors command, which resaves all plugin descriptors under a given folder, removing any outdated fields and rewrites them in a consistent style. Many plugins in the wild contain redundant or no-longer used fields due to using our plugins as templates.
Change 3531868 by Ben.Marsh
Resaving project descriptors to remove invalid fields.
Change 3531983 by Ben.Marsh
UAT: Simplify logic for staging code, and add validation against shipping files in restricted folders.
* Added a new SystemNonUFS type for staged files, which excludes files from being remapped or renamed by the platform layer.
* Replaced the DeplyomentContext.StageFiles() function with simpler overloads for particular use cases (options for remapping are replaced with the SystemNonUFS file type)
* Config entries in the [Staging] category in DefaultGame.ini file allow remapping one directory to another, so restricted content can be made public in packaged builds (Example syntax: +RemapDirectory=(From="Foo/NoRedist", To="Foo"))
* An error is output if any restricted folder names other than the output platform are in the staged output.
Change 3540315 by Ben.Marsh
UAT: Moving StreamCopyDescription command into a NotForLicensees folder, since it's only meant to be used by engine developers.
Change 3542410 by Ben.Marsh
UBT: Deprecate accessing properties through BuildConfiguration.* or UEBuildConfiguration.* from .target.cs files. These have been aliases to the current TargetRules instance for several releases already.
Change 3543018 by Ben.Marsh
UBT: Deprecate the BuildConfiguration and UEBuildConfiguration aliases from the ModuleRules class. These have been implemented as an alias ot the ReadOnlyTargetRules instance passed to the constructor for several engine versions.
Change 3544371 by Steve.Robb
Fixes to TSet_Add and TMap_Add BPs.
#jira UE-47441
[CL 3548391 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3209340 on 2016/11/23 by Ben.Marsh
Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.
Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.
* Every header now includes everything it needs to compile.
* There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
* There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
* Every .cpp file includes its matching .h file first.
* This helps validate that each header is including everything it needs to compile.
* No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
* You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
* There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
* No engine code explicitly includes a precompiled header any more.
* We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
* PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.
Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.
[CL 3209342 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
#rb None
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3108929 on 2016/08/31 by Jon.Nabozny
PR #2745: Add FQuat version of SetWorldRotation functions (Contibuted by EverNewJoy)
#jira UE-35260
Change 3108930 on 2016/08/31 by Jon.Nabozny
Fix out of date URadialForceComponent::CollisionObjectQueryParams by adding a BeginPlay event callback.
#jira UE-33880
Change 3108934 on 2016/08/31 by Jon.Nabozny
Fix check in UCharacterMovement::StepUp to properly account for distance the component is above the floor.
#jira UE-33051
Change 3108971 on 2016/08/31 by Jon.Nabozny
Add missing URadialForceComponent.h changes from CR 3108930
Change 3109557 on 2016/09/01 by Thomas.Sarkanen
Copying //Tasks/Dev-Framework/Dev-PersonaUpgrade to Dev-Framework (//UE4/Dev-Framework)
Persona Upgrade
Summary of changes:
- Persona module is now a repository of re-usable components, rather than an asset editor in itself.
- Multiple asset editors now exist for specific asset types (Animation, Skeleton, anim BP etc).
- Skeleton editing is now performed via the new IEditableSkeleton interface. This wraps up all mutations that can be performed on a skeleton in a model-view type architecture.
- Skeleton tree acts as the view of the editable skeleton's data. When an edit is made in one version of a skeleton tree, it is reflected in all of them.
- Removed all 'PersonaPtr's. Communication is now performed via delegates and appropriate API bindings (preview scene, editable skeleton etc.)
- Viewport reworked to use editor modes for its more specific inputs. Skeletal controls now use editor modes for their inputs.
- Better control of 'focus on draw' in the viewport. We can now optionally interpolate in approriate circumstances.
- Animation preview scene resurrected. Now we manage much of the underlying objects in the preview scene. It also acts as a messaging conduit for events related to the scene.
- We can now add additional meshes to a skeleton for use as previews. This is perfomred via a new UPreviewMeshCollection asset type & edited in the viewport.
- Removed old SAdditionalMeshesEditor as the new system replaces its functionality.
- Added asset family shortcut bar (and IAssetFamily to support this).
- Const corrected some engine functions.
- Added the ability for a skel mesh component to function without a primary skeletal mesh. This is usually a transient state in-editor but now the engine will not crash.
- Padding, layouts and appearance of all editors have been polished.
- Moved recording controls to the viewport and recording code into the preview scene. Now anything that uses a Persona viewport can use recording.
- Tweaked recording icon to always use some red (feedback was it was non-obvious that it was a recording button).
- Improved anim BP preview editor. We now have a bubtton that copies values that have changed to the defaults so that preview edits can more easily be seen & transferred.
- Removed sequence recorder from non-level editor windows.
Change 3109628 on 2016/09/01 by Thomas.Sarkanen
Fix non-unity build
Change 3109639 on 2016/09/01 by Thomas.Sarkanen
CIS fix: Monolithic non-editor builds
Change 3109648 on 2016/09/01 by Thomas.Sarkanen
Properly fix monolithic CIS this time
Change 3109683 on 2016/09/01 by Thomas.Sarkanen
Fix Mac editor CIS
Change 3109689 on 2016/09/01 by Benn.Gallagher
Fix crash in when a client spawns a destructible in a world with multiple players, caused by assuming we have a scene when the insertion may be deferred.
#jira UE-35353
Change 3109699 on 2016/09/01 by Thomas.Sarkanen
More Mac Editor CIS fixes.
Change 3109727 on 2016/09/01 by Danny.Bouimad
Fixing UE-34814, issue where a socket was not rendering correctly. Note: The old socket wasn't attached to a bone to fix the issue so it was attached to the root bone.
Change 3109758 on 2016/09/01 by Thomas.Sarkanen
More Mac editor CIS fixes
Somehow includes from engine and unrealed were still getting picked up outside of PCH on windows. Updated PCH's and other includes to cover the mssing types.
Change 3109829 on 2016/09/01 by Thomas.Sarkanen
Fix crash when attaching slave components with differing bone counts
Change 3111672 on 2016/09/02 by Thomas.Sarkanen
Populated UV channels correctly
Delegate for preview mesh change was being fired early (when the preview scene was created), so UV channels were never populated. Added a call to populate on construction.
Change 3111924 on 2016/09/02 by Martin.Wilson
Clean up references to GetBoneTree and deprecate
#jira UE-35525
Change 3112086 on 2016/09/02 by Martin.Wilson
Fix pose flickering on LOD change when using Layered Blend by Bone node
#Jira UE-35471
Change 3112097 on 2016/09/02 by Aaron.McLeran
UE-35533 StopQuietest concurrency not resulting in sounds returning to play
- Issue is due to the fact that once an active sound was flagged as needing to stop due to max concurrency, it was never unflagging as needing to stop
- Fix is to make sure to unflag active sounds in a concurrency group as bShouldStopDueToMaxConcurrency before flagging the ones that do.
Change 3112467 on 2016/09/02 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3112269
Change 3112604 on 2016/09/02 by Lina.Halper
Fixed merge compile error
Change 3113524 on 2016/09/05 by Thomas.Sarkanen
Prevent invalid assets from causing crashes with asset families
Store asset references as weak object ptrs as assets can go away underneath us.
Also dont preserve asset families when all referencing asset editors are shut down, use weak references instead.
#jira UE-35572 - Crash when opening Child Montage after force deleting an older child montage with the same name from the same asset
Change 3114118 on 2016/09/06 by Marc.Audy
Add boolean return to AGameMode::ClearPause to indicate whether pausing was cleared
#jira UE-32852
Change 3114201 on 2016/09/06 by Lina.Halper
#ANMI: Moving animation curves from asset to skeleton
- Backward compatibility
- AnimCurve Viewer contains the setting of changing curve type - only material or morph would display.
- Morphtarget curves are automatically set on loading
- Asset still contains curve type including editable or disabled and so on. I was going to make this to be editor only but I can't until we copy over all the data - because morphtarget/material deprecated flags are needed to be loaded in game
- TODO: Moving cached UI to FBoneContainer, so that it can work with RequiredBones
- TODO: Linking curve to joint
- TODO: Allow Layer blending to use this data to blend curves
#Code review:Martin.Wilson, James.Golding
#jira: UEFW-179
Change 3114391 on 2016/09/06 by Lina.Halper
Build warning fix
Change 3114399 on 2016/09/06 by Lina.Halper
Fix build error.
Change 3114403 on 2016/09/06 by Lina.Halper
Attempt to fix build error
Change 3114591 on 2016/09/06 by Lina.Halper
Fix compile error
Change 3114963 on 2016/09/06 by Lina.Halper
Fixed crash on deleting skeleton when placed in the level
#jira: UE-35601
Change 3114985 on 2016/09/06 by Lina.Halper
Fix crash with copy pose mesh node not checking registered or not.
#jira: UE-35602
Change 3115933 on 2016/09/07 by James.Golding
UE-33251 - add 'restart required' to bSupportUVFromHitResults option
Change 3116021 on 2016/09/07 by Marc.Audy
Fix spelling
de-auto
NULL to nullptr
minor optimization
Change 3116046 on 2016/09/07 by James.Golding
Move AnimNode_LegIK.h to Public and .cpp for Private
Change 3116048 on 2016/09/07 by James.Golding
UE-34640 Fix bogus tooltips for collision channels
Change 3116050 on 2016/09/07 by James.Golding
PR #2728: UE-34953: Improved comments for Hit callbacks (Contributed by projectgheist)
Change 3116060 on 2016/09/07 by Lina.Halper
#ANIM:
- Fix crash of setting multiple times in the same menu
- Make sure you can set to original animation, and not break
#jira: UE-35580
Change 3116064 on 2016/09/07 by James.Golding
Fix missing change for LegIK file move
Change 3116291 on 2016/09/07 by Marc.Audy
FindObjectWithOuter once again allows ClassToLookFor to be null as comment indicates is allowed
Change 3116590 on 2016/09/07 by Dan.Reynolds
Audio Test Map Content WIP
Change 3116649 on 2016/09/07 by mason.seay
Updated map to test flying
Change 3116712 on 2016/09/07 by dan.reynolds
Test Content Update EQTest Map WIP
Change 3117257 on 2016/09/08 by Benn.Gallagher
Fixed skeletal mesh details not working in new standalone mesh editor. Duplicated the detail customization and reworked to handle the new host app (no longer FPersona).
Change 3117348 on 2016/09/08 by Benn.Gallagher
Added "Post-Process" Animation Blueprints. These run after the main anim instance, and the class used is set on the mesh so that any instance of that mesh uses that class as a post process. If there is a sub-input node inside the post process graph then the pose at the end of the main instance will be passed through into that instance.
#jira UEFW-180
Change 3117393 on 2016/09/08 by Benn.Gallagher
Hid UDestructibleMesh properties that are unsupported on destructibles in the destrucitble mesh editor (shadow assets and post process blueprints are only for normal skeletal meshes)
#jira UE-34508
Change 3117507 on 2016/09/08 by Jurre.deBaare
Streamline Persona Asset Browser
#added ability to set whether or not a column should generate widgets in STableViews
#added filtering code to SAssetview to allow for hiding/showing columns related to the asset type
#added an ini path for saving the column filter state in SAnimationSequenceBrowser
#jira UEFW-148
Change 3118003 on 2016/09/08 by mason.seay
Updating meshes to use complex collision
Change 3118020 on 2016/09/08 by Zak.Middleton
#ue4 - Auto-register UpdatedComponent in MovementComponent in InitializeComponent() if not found during OnRegister(). This can occur for non-native (BP) root components.
Change 3118437 on 2016/09/08 by Lina.Halper
Fix grammar error
#jira: UE-35729, UE-35730, UE-35729
Change 3118456 on 2016/09/08 by Lina.Halper
Removed space because slate showed long spaces. It's long line now but at least in UI, it looks cleaner.
Change 3118492 on 2016/09/08 by Aaron.McLeran
Copying //UE4/Dev-Audio to Dev-Framework (//UE4/Dev-Framework)
Change 3118517 on 2016/09/08 by Lina.Halper
Went back to original without spaces
Change 3118711 on 2016/09/08 by Aaron.McLeran
Fixing build errors with CL 3118492
Change 3118712 on 2016/09/08 by Aaron.McLeran
Fixing a build warning with CL 3118492
Change 3118745 on 2016/09/08 by Aaron.McLeran
Fixing a build warning with CL 3118492
- Fixed init order in FSoundSource
Change 3119201 on 2016/09/09 by Benn.Gallagher
Fix static analysis warnings (Accessing nullptr), added check on the pointer
#jira UE-35755
Change 3119338 on 2016/09/09 by Benn.Gallagher
Fixed destructible import throwing out meshes where 1 or more submeshes are empty
Change 3119371 on 2016/09/09 by Lina.Halper
fix texts
Change 3119453 on 2016/09/09 by Lina.Halper
Change text style of the child montage instruction.
#jira: UE-35144
Change 3119454 on 2016/09/09 by Lina.Halper
Add option to open asset from context menu of the segment
#jira: UE-35632
Change 3119457 on 2016/09/09 by mason.seay
Updated maps and rebuilt lighting
Change 3119584 on 2016/09/09 by Marc.Audy
Support for new metadata ShowInnerProperties (written by Matt K)
Change 3119667 on 2016/09/09 by Aaron.McLeran
Fixing compile errors on Mac.
- Commandlet can't run on Mac (or other desktop platforms) right now since audio mixer isn't yet supported there
Change 3119732 on 2016/09/09 by Aaron.McLeran
Fixing clang compile error
- Apparently clang didn't like my ascii art of the wavetable shapes. Switched to /* */ style comment.
Change 3119734 on 2016/09/09 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3119702
Change 3119787 on 2016/09/09 by Lina.Halper
Move cached UID to required bone
- removed skeleton cached UID list
- removed skeletalmeshcomponent cached UID list
- FBoneContainer will contain UID list and can be re-cached anytime bones are recalculated
- added versioning to up-to-date skeleton curve list with skeletalmeshcomponent
#code review:Benn.Gallagher, Martin.Wilson
Change 3119800 on 2016/09/09 by Aaron.McLeran
Changing audio mixer's GetAudioClock to GetAudioTime to avoid conflicting with other GetAudioClock function merged into dev-framework.
Change 3120260 on 2016/09/09 by Marc.Audy
Fix if statement
Change 3120790 on 2016/09/12 by Thomas.Sarkanen
Reordered skeletal mesh and animations in asset shortcut bar
#jira UE-35845 - Move anim asset shortcut bar ordering to Skeleton > Skeletal Mesh > Animation > AnimBP
Change 3120793 on 2016/09/12 by Thomas.Sarkanen
Improved fix for missing mesh details customization
Improves on CL 3117257.
Removed extra RefreshViewports function. Communication should be done via the preview scene to accomodate future multiple viewports.
Re-used generic asset properties tab with a callback delegate that allows post-construction customization. Removed older custom tab.
Removed dependency between FSkeletalMeshDetails and FSkeletonEditor. Trying to avoid back-pointer dependencies to monolithic editors, as this was the main bulk of refactoring work when teasing Persona apart.
Change 3120867 on 2016/09/12 by Marc.Audy
Fix incorrect condition in for causing static analysis warning
Change 3120900 on 2016/09/12 by mason.seay
Actually build lighting this time
Change 3120904 on 2016/09/12 by Thomas.Sarkanen
Skeletons can now be deleted once opened (once more)
Editable skeleton manager now holds onto weak ptrs instread of shared ptrs.
Added logic to compact if weak ptrs are invalid.
#jira UE-35848 - Can't delete skeletons that have been opened in the new standalone editor
Change 3120927 on 2016/09/12 by Thomas.Sarkanen
Details panel now shows selected items when re-opened
Kept the underlying widget around so that any item selections can still correctly update the (hidden) UI.
#jira UE-35445 - Details tab in persona dosn't populate with information when first opened
Change 3120979 on 2016/09/12 by Thomas.Sarkanen
Re-added the ability to create pose assets
This was added at a similar time to my final merges and didnt get merged over to the standalone animation editor.
#jira UE-35740 - Create Pose asset missing from create animation dropdown
Change 3121208 on 2016/09/12 by Benn.Gallagher
Added bulk reimport to the reimport manager that uses slow tasks to give users an idea how far they are through large operations.
#jira UE-33216
Change 3121274 on 2016/09/12 by James.Golding
PR #2264: Added functions that can change a UTimelineComponent's curve(s) via Blueprints. (Contributed by hgamiel)
#jira UE-29346
Change 3121276 on 2016/09/12 by James.Golding
UE-33242 : Add option to copy morph target names to clipboard
Change 3121278 on 2016/09/12 by James.Golding
UE-33004 : Add proper commands for Curve Viewer
Change 3121472 on 2016/09/12 by Zak.Middleton
#ue4 - Fix UGameplayStatics::SpawnEmitterAttached() using wrong scale when SnapToTarget (Keep World Scale) option is used. Improve comments for SpawnEmitterAttached().
#jira UE-34482
Change 3121829 on 2016/09/12 by dan.reynolds
Audio Blueprints Content Example WIP Update checked in to backlog by request of ZakB and Nick BB.
Change 3122218 on 2016/09/12 by Aaron.McLeran
Minor cleanup in XAudio2Source.cpp
Change 3122823 on 2016/09/13 by Thomas.Sarkanen
Fix incorrect camera offset when opening some skeletal meshes
Skeletons that had no preview skeletal mesh set up gave incorrect bounds on first tick. This is fixed by updating the preview mesh in the scene desc so that bounds are correctly calculated on first viewport tick.
#jira UE-35550 - Persona camera is far away from some skeletal meshes
Change 3122857 on 2016/09/13 by Lina.Halper
Importing frame count issue with blendshapes
- with this change when calculating sample rate, it checks blendshape curves.
#jira: UE-27706
Change 3122992 on 2016/09/13 by Marc.Audy
Child Actor Component now have an editable template
* Template is stored as a child inside the child actor template
* When gathering components for an actor, need to stop searching beyond any nested AActor
#jira UEFW-125, UE-16474
Change 3123087 on 2016/09/13 by Marc.Audy
Fix Child Actor Template being nulled out on template
Change 3123170 on 2016/09/13 by mason.seay
Updated test map to test SpawnEmitterAttached SnapToTarget settings
UEENGQA-9268
Change 3123203 on 2016/09/13 by Marc.Audy
Multi-select of child actor components allows editing of template properties
Change 3123205 on 2016/09/13 by Marc.Audy
Fix details panel constantly updating and not being interactable when multi-selected objects have ShowInnerProperty property
#author Matt.Kuhlenschmidt
Change 3123422 on 2016/09/13 by Aaron.McLeran
UE-35950 Fixing XboxOne spatialization
- XBoxOne doesn't support device details, so we need to manually set it to the output channels and channel mask. Unfortunately, that was incorrectly set.
Change 3123484 on 2016/09/13 by Lina.Halper
Fix animation frame UI issue
- This now displays from [0, numframes -1]
#jira: UE-33437
Change 3123500 on 2016/09/13 by Marc.Audy
Undo/redo of mobility changes will also undo/redo the mobility changes on ancestors/descendants that were changed along with it
#jira UE-35885
Change 3123549 on 2016/09/13 by Marc.Audy
Fix warning message
Change 3123581 on 2016/09/13 by Marc.Audy
PR #2751: Editor Only UActorComponents for Blueprints (Contributed by moritz-wundke)
#jira UE-35424
Change 3123688 on 2016/09/13 by Ben.Zeigler
Add logic to K2Node_Variable that updates the variable reference to the correct class, if the variable has moved up or down in the class hierarchy. This is similar to code in UK2Node_CallFunction::CreateSelfPin which already handled this case correctly
Change 3123768 on 2016/09/13 by Marc.Audy
Go away auto
NULL to nullptr
Use ranged for instead of iterators
Change 3123906 on 2016/09/13 by Aaron.McLeran
UE-34615 Supporting Pausing Sounds on Audio Components
Change 3123949 on 2016/09/13 by Aaron.McLeran
UE-35965 Spatialization no longer occurs when Non-Spatialized Radius is set above 0
Change 3124109 on 2016/09/13 by Aaron.McLeran
UE-33364 Making bSuppressSubtitles a UPROPERTY EditAnywhere, BlueprintReadWrite
Change 3124137 on 2016/09/13 by Aaron.McLeran
PR #2601: made looping sound waves searchable by the asset registry
Change 3124396 on 2016/09/14 by James.Golding
Allow anim node edit modes to work on all nodes, not just skel controls
Change 3124498 on 2016/09/14 by Benn.Gallagher
Added method to get swing and twist quaternions from FQuat
#jira UE-34054
Change 3124504 on 2016/09/14 by James.Golding
Missed a few references to SkeletalControlEditMode
Change 3124508 on 2016/09/14 by James.Golding
Fix function groupings in animnode editmode headers
Change 3124625 on 2016/09/14 by james.cobbett
Rebuilding lighting.
Change 3124632 on 2016/09/14 by James.Golding
UEFW-205 Adding support for PoseDriver to drive bones (based on PoseAsset)
- Converted PoseDriver from SkelControl to AnimNode
- Added PoseDriverEditMode
- Added debug drawing to show target poses and current ref position
- Aded support for PoseDriver using translation instead of rotation
- Added AnimGraphNode_PoseHandler class, with code corresponding with AnimNode_PoseHandler
Change 3124636 on 2016/09/14 by James.Golding
Missed file
Change 3124652 on 2016/09/14 by Marc.Audy
Fix initialization order warning
#jira UE-35980
Change 3124658 on 2016/09/14 by Marc.Audy
Fix if statement
#jira UE-35976
Change 3124685 on 2016/09/14 by James.Golding
Move PoseDriver files from BoneControllers to AnimNodes folder
Rename AnimNode_PosePriver.cpp to AnimNode_PoseDriver.cpp
Move AnimGraphNode_AssetPlayerBase.cpp from Classes to Private
Change 3124690 on 2016/09/14 by James.Golding
Missing header edit after file move
Change 3124707 on 2016/09/14 by Danny.Bouimad
Fixing UE-34814, issue where a socket was not rendering correctly. Note: The old socket wasn't attached to a bone to fix the issue so it was attached to the root bone.
Somehow this was undone.
Change 3124954 on 2016/09/14 by Jurre.deBaare
Import Alembic file gets editor crash
#fix double check if Alembic isn't lying and there are no actual normals
#misc fixed type in function signature
#jira UE-35702
Change 3124980 on 2016/09/14 by Lina.Halper
Tweak UI of child anim montage
- removed padding, changed font size
Change 3124981 on 2016/09/14 by Lina.Halper
Changed text of keys to Frames
Change 3124998 on 2016/09/14 by Lina.Halper
Fix curve issue when evaluting with # of frames.
#jira: UE-35782
Change 3125034 on 2016/09/14 by Aaron.McLeran
Changes to 3123906 based on feedback from Marc Audy
Change 3125109 on 2016/09/14 by Aaron.McLeran
PR #2463: Support parsing .WAV files with a WAVE_FORMAT_EXTENSIBLE format chunk (Contributed by Mattiwatti)
Change 3125184 on 2016/09/14 by Lukasz.Furman
vehicle RVO fixes
#ue4
Change 3125191 on 2016/09/14 by Lukasz.Furman
added blueprint interface for component's navigation influence control
#ue4
Change 3125348 on 2016/09/14 by Mason.Seay
Added GamepadFaceButtonRight as an input mapping for Crouch
Change 3125352 on 2016/09/14 by Lina.Halper
#ANIM: Pose Asset - Insert pose support
- made sure pose asset editor updates if the new pose is inserted.
#jira: UE-32608
Change 3125413 on 2016/09/14 by Ben.Zeigler
#jira UEFW-32 Game Mode Cleanup
Add GameModeBase and GameStateBase classes that are parent classes of existing GameMode and GameState. The classes have been split in half so the base functionality needed by all games are in the Base classes, with legacy and match-specific code in the children
Added BP access to several GameState and GameMode functions, and GetGameState/GetGameMode now return the base classes.
World->GetAuthGameMode now returns GameModeBase, so direct accesses to the return value may not work. The casted template works as before.
World->GameState is now private, and GetGameState returns GameStateBase. Code that accessed GameState should now call GetGameState<>.
GameModeBase::StartNewPlayer has been deprecated, and split into InitializeHUDForPlayer and HandleStartingNewPlayer.
Several Login functions on GameModeBase that take TSharedPtr<const FUniqueNetId> are now deprecated correctly, they previously stopped working correctly in 4.13
The ShouldShowGore feature on GameState has been fully deprecated, along with hooks in Matinee
Change 3125414 on 2016/09/14 by Ben.Zeigler
#jira UEFW-32 Game Mode Cleanup
Convert all internal templates to use GameModeBase
Convert most sample games, ShooterGame and several legacy projects are still using GameMode
Change 3125415 on 2016/09/14 by Ben.Zeigler
#jira UEFW-32 Game Mode Cleanup
Internal game compile fixes needed to support GameMode refactor
Fixed a few places that overrode StartNewPlayer to override new functions instead
Change 3125438 on 2016/09/14 by Ben.Zeigler
Log compile fix
Change 3125460 on 2016/09/14 by Ben.Zeigler
Another try at log compile issues
Change 3125685 on 2016/09/14 by Aaron.McLeran
Attempt to fix compile error
Change 3125700 on 2016/09/14 by Aaron.McLeran
UE-35958 Undo in sound cue editor does not undo looping changes.
Issue was sound cues were not being flagged as transactional and ignoring undo transactions
Change 3125857 on 2016/09/14 by Aaron.McLeran
-Adding a RF_Transactional flag to postload for sound nodes so older sound nodes created incorrectly will work properly with the undo system.
-Changed to setting flag directly in NewObject line instead of calling SetFlags
Change 3125888 on 2016/09/14 by Aaron.McLeran
Adding call to super post load in USoundNode::PostLoad()
Change 3125964 on 2016/09/14 by Aaron.McLeran
Fixing attenuation on 2D multichannel files (specifically 3, 7 and 8-channel files).
Change 3125974 on 2016/09/14 by Aaron.McLeran
UE-35892 Not loading audio data when in -nosound mode
Change 3125983 on 2016/09/14 by Ben.Zeigler
Better Nogore fix for lens effect
Change 3125985 on 2016/09/14 by Ben.Zeigler
Fix fortnite compile failure on mac, it was inside non instantiated template
Change 3126409 on 2016/09/15 by Benn.Gallagher
Fixed crash when adding a reroute node on a line with another reroute node in an anim graph. Becuase we use poselinks as an exec line we weren't killing the output links.
#jira UE-35657
Change 3126507 on 2016/09/15 by Thomas.Sarkanen
Prevent crash when calling SetAnimationMode on a component with no skeletal mesh
Guard against the mesh being NULL, as with other calls to InitializeAnimScriptInstance.
#jira UE-36003 - Crash playing Ocean
Change 3126539 on 2016/09/15 by Marc.Audy
Fix Win32 compilation error
#jira UE-36018
Change 3126575 on 2016/09/15 by Marc.Audy
Properly fix compile
Change 3126635 on 2016/09/15 by Benn.Gallagher
Fix for crash when setting collision responses on destructible components after they have been fractured.
#jira UE-35604
Change 3126649 on 2016/09/15 by Lina.Halper
- Fixed issue with updating cache UID List, so certain curves did not work.
- Fixed issue with not finding meta data because the name has changed - converted to SmartName, and if it is going to look for by UID.
Change 3126816 on 2016/09/15 by Lukasz.Furman
Back out changelist 3125191
Change 3126903 on 2016/09/15 by Marc.Audy
Fix !WITH_APEX compile errors from CL# 3126635
Change 3126908 on 2016/09/15 by Mieszko.Zielinski
Added initialization of FBlackboardEntry properties #UE4
Change 3127081 on 2016/09/15 by Ben.Zeigler
#jira UEFW-32 Game Mode Cleanup
Change the way that the GameMode is picked based on URL to be handled by GameInstance instead of World/GameMode.
Add PreloadContentForURL, CreateGameModeForURL, and OverrideGameModeClass to GameInstance and deprecate GameMode versions.
GameMode::GameModeClassAliases has moved to GameMapsSettings::GameModeClassAliases and WorldSettings::DefaultMapPrefixes has moved to GameMapsSettings::GameModeMapPrefixes and unified in format.
Fixed internal game ini files and added example to BaseEngine.ini
Removed some outdated seekfree preload code and replace with GameInstance::PreloadContentForURL
Change 3127102 on 2016/09/15 by Ben.Zeigler
Crash fix if there is no deprecated config section
Change 3127103 on 2016/09/15 by Aaron.McLeran
UE-34100 audio playback of an individual source
Change 3127109 on 2016/09/15 by Marc.Audy
Remove inconsistently used AUDIO_DEVICE_HANDLE_INVALID and use INDEX_NONE everywhere instead
Change 3127143 on 2016/09/15 by Aaron.McLeran
Missing file in CL 3127103
Change 3127218 on 2016/09/15 by Ori.Cohen
PR #2766: More vehicle stats for profiler (Contributed by DenizPiri)
#JIRA UE-35564
Change 3127264 on 2016/09/15 by Aaron.McLeran
Switching to using USoundWave instead of USoundBase in notification delegate for play progress percent
Change 3127285 on 2016/09/15 by Marc.Audy
Make it easier to create an audio component that will exist across level transitions
Refactor FAudioDevice::CreateComponent to use a Params block instead of long parameter list
UAudioComponent can now store which AudioDevice it is targetted at instead of being limited to its registered world or the main audio device (breaks in multi-PIE)
#jira UE-16451
Change 3127360 on 2016/09/15 by Marc.Audy
Consolidate a few GetWorld()s
Change 3127931 on 2016/09/16 by Benn.Gallagher
Fixed holes appearing in clothing meshes after reskinning changes. Caused by mismatched triangle counts when applying the clothing mesh.
#jira UE-36054
Change 3128001 on 2016/09/16 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3127918
Change 3128005 on 2016/09/16 by James.Cobbett
#jira UE-29618 Submitting test assets
Change 3128022 on 2016/09/16 by Lina.Halper
Allow re-merge all skeletalmeshes back to skeleton when recreating skeleton from scratch
#jira: UE-27256
Change 3128044 on 2016/09/16 by James.Cobbett
Submitting gamemode test asset
Change 3128169 on 2016/09/16 by Mieszko.Zielinski
Fixed couple of static analysis warnings in AI code #UE4
Change 3128430 on 2016/09/16 by Marc.Audy
Fix infinite loop when running a pause frame with tick interval functions (4.13.1)
#jira UE-36096
Change 3128558 on 2016/09/16 by Mieszko.Zielinski
Refactored FEnvQueryInstance::AddItemData to not require second template parameter (TypeValue) #UE4
#jira UE-33036
Change 3128678 on 2016/09/16 by Jon.Nabozny
#rn Added a delegate to GameViewportClient that notifies when the Game's platform specific window is being closed.
#rn This can be used to prevent the game from being exited.
#jira UE-34123
Change 3128693 on 2016/09/16 by Marc.Audy
Add UnpausedTimeSeconds to UWorld to accumulate the dilated/clamped game time even when paused
Change 3128753 on 2016/09/16 by Mieszko.Zielinski
Fixed aborting previous movements as part requesting a new one needlesly reseting move agent's current velocity #UE4
#jira UE-35852
Change 3128791 on 2016/09/16 by Marc.Audy
PR #2777: Accurate DeltaSeconds for objects with TickIntervals (Contributed by YossiMHWF)
Tick Functions with a Tick Interval will now return the dilated/clamped game DeltaSeconds since the last time it ticked
#jira UE-35719
Change 3128974 on 2016/09/16 by Mieszko.Zielinski
Fixes to BB key synchronization #UE4
syncing between two BBs associated by a common parent now works
Change 3128984 on 2016/09/16 by Jon.Nabozny
Fix FConstraintBaseParams ContactDistance clamping.
The value is intended to be in either degrees or cm units (depending on constraint type), so clamping max to 1 doesn't make sense.
Change 3129010 on 2016/09/16 by Dan.Reynolds
Updating developer folder content for external referencing
Change 3129093 on 2016/09/16 by Ben.Zeigler
#jira UE-35424
Switch from using AlwaysLoadOnServer/Client to bIsEditorOnly for components that should be editor only. This works better with cooking and is clearer in usage
Move MarkAsEditorOnlySubobject to ActorComponent so it works for all components and not just primitive ones
Change 3129103 on 2016/09/16 by Marc.Audy
Fix initialization order CIS warning
Change 3129361 on 2016/09/16 by Dan.Reynolds
Fixes to QASoundWaveProcedural.h
Change 3129994 on 2016/09/19 by Thomas.Sarkanen
Skeletal mesh to Static mesh conversion
Added feature to convert selected actors' meshes into static meshes.
Supports static and skeletal meshes.
Added extension points to all Persona-based editors so their toolbars can be overriden with context about the editor itself.
Added IHasPersonaToolkit interface that all of these editors implement.
Added toolbar button to each Persona-based editor.
Added level editor right-click menu option.
Added CPU skinning path for cloth sections (non-SIMD for now).
Moved CPU skinning flag from UDebugSkelMeshComponent into USkinnedMeshComponent.
Moved a few structures around so CPU skinned renderdata is more readily exposed.
#jira UE-35549 - Convert skel mesh on specific anim frame to StaticMesh
Change 3130008 on 2016/09/19 by Benn.Gallagher
Fixed crash when creating a destructible mesh from a speed tree mesh. The materials are incompatible - after discussion decided to report the error to the user and bail on making the destructible
#jira UE-3687
Change 3130009 on 2016/09/19 by Thomas.Sarkanen
Fixed static analysis warnings in Persona and AnimationBlueprintEditor
Also moved a bool check inside (original line number for the warning led me to that code instead, but thought it was worth fixing anyways).
Change 3130012 on 2016/09/19 by Thomas.Sarkanen
CIS fix (implcit use of copy constructor)
Change 3130016 on 2016/09/19 by Thomas.Sarkanen
Mac CIS fix - forward declare some classes.
Change 3130027 on 2016/09/19 by Thomas.Sarkanen
Fix shadow variables found with Clang
Change 3130044 on 2016/09/19 by Jurre.deBaare
Improved Texture Merging using the Merge Actors Tool
#feature added simple binning algorithm to be used with texture importance values
#misc small array indexing copy-paste error
#jira UE-33823
Change 3130068 on 2016/09/19 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3129803
Change 3130181 on 2016/09/19 by Jurre.deBaare
G++ compile errors
#fix array enum size requires cast to be valid
Change 3130182 on 2016/09/19 by Jurre.deBaare
Remove FColor operator after feedback from Marc, assuming color order is indeed icky and can tackle the problem differently
Change 3130250 on 2016/09/19 by Marc.Audy
Fix flag check indicated by static analysis
Change 3130256 on 2016/09/19 by Benn.Gallagher
Changed "Create Physics Asset" context menu options to allow creation without assigning the physics asset to the selected mesh to make it easier to set up capsule shadows.
#jira UE-34796
Change 3130267 on 2016/09/19 by Marc.Audy
Post integration WEX fixups for GameMode and FAudioDevice::CreateComponent changes
Change 3130551 on 2016/09/19 by Ben.Zeigler
Change WEX OnlineSubsystem plugin to exactly match Engine one with GameMode refactors, no functionaly change but this should make merging easier
Change 3130564 on 2016/09/19 by Jurre.deBaare
More CIS fixes
Change 3130572 on 2016/09/19 by Ben.Zeigler
#jira UE-36142 Fix 1v1 and 2v2 game mode references, they were always wrong but are now being cooked properly with the game mode changes
Change 3130586 on 2016/09/19 by Ben.Zeigler
#jira UE-36124 Fix orion crash, the class layout of OrionGameState_MOBA differed between BlueprintContext and OrionGame modules because of the server perf define being different
Change 3130587 on 2016/09/19 by Martin.Wilson
Add start time to Montage_Play and PlaySlotAnimationAsDynamicMontage
#jira UE-34798
Change 3130694 on 2016/09/19 by Ben.Zeigler
#jira UE-35424 Restore BrushComponent to the 4.13 behavior for computing editor only, as they set AlwaysLoadOnClient/Server to false even if they're not editor only unlike other primitive components
Change 3130700 on 2016/09/19 by Ben.Zeigler
#jira UE-36141 Fix it so PlayerCanRestart is called before restarting player on initial login, to match behavior when requesting a restart or match starting. This is a bug fix in the core code that UT was working around originally
Change 3130778 on 2016/09/19 by Dan.Reynolds
WIP Content update for external referencing
Change 3130812 on 2016/09/19 by Marc.Audy
No longer use inconsistently applied bWantsBeginPlay
#jira UE-21048
Change 3130876 on 2016/09/19 by Richard.Hinckley
Fixing comments for documentation purposes.
Change 3131076 on 2016/09/19 by Marc.Audy
PR #2775: Make WorldContextObj arguments const pointers (Contributed by jorgenpt)
#jira UE-35625
Change 3131102 on 2016/09/19 by Richard.Hinckley
Fixing typo that slipped through.
Change 3131254 on 2016/09/19 by Ben.Zeigler
#jira UE-36162 Remove bad game mode reference
Change 3131396 on 2016/09/19 by Marc.Audy
Undo CL# 3125974 to fix Fortnite crash until investigation can be done
#jira -UE-36164
Change 3131846 on 2016/09/20 by Thomas.Sarkanen
Recording now functional again in blendspace editor
Blendspaces now use the anim editor base.
Anim editor base now has the option of a scrollable or non-scrollable widget area. Blendspaces use the non-scrollable one as before.
Scrub widget now seperates the concepts of frames and scrub cursor. This is to allow blendspaces to still use scrubbing when they use normalized time.
Removed PURE_VIRTUAL from SAnimEditorBase as it is not a UObject class.
#jira UE-35843 - Missing record option for Blendspaces
Change 3131921 on 2016/09/20 by Thomas.Sarkanen
Re-added anim slot manager tab
Anim slot manager was not added back into the standalone editors when they were split up.
#jira UE-35954 - Anim Slot Manager opens up to unrecognized tab
Change 3131922 on 2016/09/20 by Thomas.Sarkanen
Added 'dirty' indicator to asset shortcut bar
#jira UE-36015 - No 'dirty' indicator in anim asset shortcut bar
Change 3131950 on 2016/09/20 by Thomas.Sarkanen
Animation stepping now functions as it did previously
Recent changes to deal with different frame counts left off an epsilon in the frame increment/decrement logic. Re-instating the epsilon fixes this.
#jira UE-36172 - The To Next button in the Animation timeline doesn't work consistently
Change 3131953 on 2016/09/20 by james.cobbett
Updating test assets.
Change 3132241 on 2016/09/20 by Martin.Wilson
Fix crash when importing a pose to pose asset.
#jira UE-36122
Change 3132417 on 2016/09/20 by Thomas.Sarkanen
Fixed crash when anim instance is set to NULL when URO is turned on (and GC occurs)
A dangling pointer to the UID array on the instance was hanging around. We now make sure to clear this when necessary.
#jira UE-36182 - Fornite cooked crashed when hitting a husk near/on a chest - CurveToCopyFrom.IsValid()
Change 3132790 on 2016/09/20 by Ori.Cohen
Ensure that physics handle automatically wakes up any object it's grabbing on release. Also fix editor case where moving camera grabs component
#JIRA UE-35257
Change 3132795 on 2016/09/20 by Ori.Cohen
Fix typo where enable swing drive was used for both swing and twist.
#JIRA UE-35634
Change 3132838 on 2016/09/20 by Ori.Cohen
Move flush deferred actor to EndPhysics
#JIRA UE-35899
Change 3133088 on 2016/09/20 by Ori.Cohen
Back out defer flush change. This requires more thought.
Change 3133185 on 2016/09/20 by Wes.Hunt
QoS Analytics providers now use the real final Data Router URL #jira UE-30655
Change 3133262 on 2016/09/20 by Wes.Hunt
HttpServiceTracker now uses UserID fields that match what we expect for all other apps. Part of #jira UE-33354.
Change 3133266 on 2016/09/20 by Wes.Hunt
Make anonymous analytics UserID match format expected by the backend to remove ambiguity. Part of #jira UE-33354.
Change 3133277 on 2016/09/20 by Chris.Evans
!N Pose asset test
Change 3133504 on 2016/09/20 by dan.reynolds
Updating WIP Test Content
Change 3133761 on 2016/09/21 by Thomas.Sarkanen
Fixed 100% crash when killing a husk
Interpolation was still getting performed when we had an invalid UID container. We now check this before kicking off a task.
#jira UE-36203 - Fornite cooked crashed when killing a husk and jumping backwards
Change 3133766 on 2016/09/21 by Thomas.Sarkanen
Fixed crash when compiling animation blueprint when a node outside of the tree evaluation is selected
The OnNodeSelected callback was not getting called for deselection when the node could not be found (i.e. was NULL). Removed NULL check as it is valid to call. ALso added comment warning that the passed in runtime node can be NULL.
#jira UE-35974 - Crash in FSkeletalControlEditMode when compiling an anim blueprint
Change 3133774 on 2016/09/21 by Danny.Bouimad
Translation Pose Driver test assets content/animation/posedrivertests
Change 3133796 on 2016/09/21 by Thomas.Sarkanen
Added metadata to remove "reset to default" button for certain properties
Allows removal of the reset button without a cumbersome details customization.
Fixes crash where a parent struct of an editfixedsize array was reset.
#jira UE-36109 - Crash when resetting shape properties on a BodySetup in PhAT
Change 3133831 on 2016/09/21 by Jurre.deBaare
Vert Color Background not contained to Asset's Viewport
#fix Added a way to directly set the visibility of the floor/environment in the static mesh editor
#jira UE-35052
Change 3133832 on 2016/09/21 by Jurre.deBaare
Geometry Cache asset will stop animating when Elapsed Time exceeds an excessively high number
#fix set UI/clamp min/max for playback speed (-512 - 512x playback speed) and start offset (-14400 - 14400, 4 hours) and clamp at runtime as well
#jira UE-34629
Change 3133833 on 2016/09/21 by Jurre.deBaare
Geometry Cache asset will continue to loop when running in reverse when Loop is turned off and Elapsed Time is has reached 0
#fix do not wrap around for non-looping negative sampling times :)
#jira UE-34630
Change 3133834 on 2016/09/21 by Jurre.deBaare
Merge Actors button is not enabled when selecting assets in the viewport if they are not visible in the Merge Actor window
#fix moved selected mesh count functionality so that it is not dependent on the listview being rendered (this is an awesome bug)
#jira UE-34303
Static mesh does not show after using "Merge Actors" if the mesh is part of a child actor component that has been added to the blueprint
#fix recursively add child actor components to include all static meshes
#jira UE-25187
Change 3133835 on 2016/09/21 by Jurre.deBaare
Mesh Preview Scene: Remove bottom quad from floor mesh to make viewing from below easier. (in loving memory of Tom Looman)
#fix new mesh with removed bottom quad, allowing for see-through from below
#jira UE-35022
Change 3133836 on 2016/09/21 by Jurre.deBaare
It isn't clear when a profile is added to the Preview Scene Settings
#fix selected profile now changes to newly added one
#jira UE-33848
Change preview scene profile naming to validate name input in UI instead of PostEditChange
#fix added ui feedback for duplicate naming
#misc extra checks for having a correct profile name when adding a new profile
#jira UE-34078
Adding Preview Scene Profile after Removing One duplicates the name of the last added profile
#fix determine correct name by checking existing ones
#jira UE-33898
Change 3133838 on 2016/09/21 by Jurre.deBaare
Prevent preview scene assets being loaded in game (proper fix)
#fix now saving direct FString path to the environment cube map and load them once we ::Get the assetviewer settings
#jira UE-36082
Change 3133839 on 2016/09/21 by Jurre.deBaare
Moving over UE-35254 from 4.13.1
Change 3133840 on 2016/09/21 by Jurre.deBaare
Moving over UE-35639 from 4.13.1
Change 3133844 on 2016/09/21 by Jurre.deBaare
Alembic import causing a crash
#jira UE-35551
#fix handle the case where there is not hierarchy found for a specific object, in that case just output the identity matrix as object matrix
#jira UE-35451
#fix handle case where we imported an empty object in the Geometry cache path
#misc alembic importer signature change
#misc typo in function signature
Change 3133951 on 2016/09/21 by Mieszko.Zielinski
Fixed deprecation message on UAIPerceptionComponent::GetPerceivedActors #UE4
Change 3134014 on 2016/09/21 by Jon.Nabozny
#rn Ensure the runaway loop counter gets reset when processing parallel animation.
#jira UE-33946
Change 3134032 on 2016/09/21 by Jurre.deBaare
Remove comments
Change 3134100 on 2016/09/21 by James.Golding
UE-35300 Support UV traces for UV on BSP
Change 3134103 on 2016/09/21 by Lukasz.Furman
fixed NavLinkProxy not working correctly in PIE
#jira UE-36194
Change 3134104 on 2016/09/21 by James.Golding
UE-33004 Use UI commands for PoseEditor, allow keyboard shortcuts
Change 3134106 on 2016/09/21 by James.Golding
UE-36138 Fix crash in procmesh slicing, avoid creating, and skip processing, sections with no verts
Change 3134109 on 2016/09/21 by James.Golding
UE-35813 Don't do srgb conversion for proc mesh vertex colors
UE-35821 Procedural Mesh component not respecting 'Bound Scale' setting
Change 3134145 on 2016/09/21 by Mieszko.Zielinski
Fixed persistent BB key changes not getting propagated to child BB assets #UE4
Change 3134296 on 2016/09/21 by Lukasz.Furman
fixed navlink's "snap to cheapest area" mode not working correctly with dynamic navmesh
copy of CL# 3133219
Change 3134390 on 2016/09/21 by mason.seay
Blueprint for collision bug repro
Change 3134517 on 2016/09/21 by Mieszko.Zielinski
CIS fix #UE4
Change 3134746 on 2016/09/21 by Ben.Zeigler
Documentation and comment cleanup pass for GameMode changes, it's ready for a Doc team pass
Change GameStateBase::GetDefaultGameMode to return a const * as it's a CDO that is not safe to modify, and remove Blueprint acessibility as there's no way to make that safe
Change 3134850 on 2016/09/21 by Ben.Zeigler
Fix PlatformShowcase warnings
Change 3134852 on 2016/09/21 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3134107
Change 3134853 on 2016/09/21 by Marc.Audy
Resolve of reimport portions
Change 3134857 on 2016/09/21 by Marc.Audy
Fixes related to show inner properties for Map and Set now that Dev-Editor has made it to Dev-Framework
Change 3135002 on 2016/09/21 by Ori.Cohen
Fix compiler errors
Change 3135147 on 2016/09/21 by dan.reynolds
AEOverview Test WIP Update
Change 3135168 on 2016/09/21 by Wes.Hunt
Edigrate of CL3135131: EngineAnalytics uses EngineVersion once again instead of BuildVersion, which doesn't contain major.minor.hotfix info.
#jira UE-36211
Change 3135216 on 2016/09/21 by Marc.Audy
Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3135156
Change 3135238 on 2016/09/21 by Aaron.McLeran
UE-36288 Fixing concurrency resolution stop quietest
Change 3135257 on 2016/09/21 by Ben.Zeigler
Fix Orion version of OnlineGameFramework plugin
Change 3135258 on 2016/09/21 by Ben.Zeigler
Other Orion GameMode fixes
Change 3135290 on 2016/09/21 by dan.reynolds
AEOverview test map skeleton complete with comments per Nick BB request
Change 3135323 on 2016/09/21 by dan.reynolds
Update to AEOverview test maps
Change 3135385 on 2016/09/21 by Marc.Audy
Fix static analysis warnings in automation tests
Change 3135634 on 2016/09/22 by Thomas.Sarkanen
Remove duplicated details customization
Now we only have one customization that both 'old' Persona and the skeletal mesh editor can use.
Change 3135660 on 2016/09/22 by Thomas.Sarkanen
CIS fix: Fixed deleted file still being included.
Change 3135949 on 2016/09/22 by Thomas.Sarkanen
Fixed (another) crash with invalid curve data when an anim instance is GCed
Invalidated cached curve as it can hold onto a reference to anim instance data. Also added a check for valididty in the non-parallel eval, non-interpolation case.
#jira UE-36292 - Fortnite Editor Crashed when shooting a husk during defense phase - CurveToCopyFrom.IsValid()
[CL 3136620 by Marc Audy in Main branch]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2973846 on 2016/05/11 by Jamie.Dale
Exposed FConfigValue::ExpandValue and added FConfigValue::CollapseValue
These are both static and can be used to expand or collapse the macros used in our config files (mostly when dealing with paths), in code that has to deal with the config system, but isn't internal to the config system (mostly things that deal with default configs outside of UObjects).
The old non-static version of FConfigValue::ExpandValue is now FConfigValue::ExpandValueInternal, which just calls FConfigValue::ExpandValue on SavedValue and ExpandedValue.
This also changes some code that was using FString.Replace to use FString.ReplaceInline. This reduces allocations, and also allows us to avoid another string comparison to see whether the strings are identical (as ReplaceInline returns the number of replacements that were made).
Change 2973847 on 2016/05/11 by Jamie.Dale
Changing the loading phase in the localization dashboard now writes to the default config
#jira UE-30482
Change 2973866 on 2016/05/11 by Jamie.Dale
Deprecated some functions that were taking an unused position.
These unused parameters caused confusion and lead to UE-30276. The old versions have been deprecated, and new versions without those parameters have been added. Existing code has been updated to call the non-deprecated version.
- FViewportFrame::ResizeFrame
- FSceneViewport::ResizeFrame
- FSceneViewport::ResizeViewport
Change 2974505 on 2016/05/11 by Nick.Darnell
PR #2309: Added Combobox styling (Contributed by Chris528)
Change 2975241 on 2016/05/12 by Richard.TalbotWatkin
Made sRGB Preview the default in the Color Picker.
Change 2975390 on 2016/05/12 by Jamie.Dale
Made sure that en-US-POSIX is in our list of available cultures
Some people use machine tags as their native text, so they need an invariant machine like culture to use as their native culture. en-US-POSIX is perfect for this.
Change 2975411 on 2016/05/12 by Jamie.Dale
PR #2237: Fixed formatting of Error_TooManyMaterials message (Contributed by pfranz)
Change 2975559 on 2016/05/12 by Jamie.Dale
Dialogue Wave VO direction can now be localized
This is gathered as editor-only data.
#jira UE-28715
Change 2975710 on 2016/05/12 by Jamie.Dale
Implemented UObject::IsLocalizedResource to test whether the object belongs to a localized package
Change 2975728 on 2016/05/12 by Jamie.Dale
Exported dialogue scripts now include a column that says whether they have a localized recording of that line of dialogue
#jira UETOOL-794
Change 2975763 on 2016/05/12 by Jamie.Dale
We no longer warn if asked to check out a UNC path when running the GatherText commandlets
#jira UE-25833
Change 2975766 on 2016/05/12 by Jamie.Dale
Resolved some loc key conflicts
#jira UE-25833
Change 2975774 on 2016/05/12 by Jamie.Dale
PO files now only contain a single entry in the case of a native translation being exported
They used to contain the original entry, as well as an entry for the native translation, however the original entry would never be used.
This change also cleans up some directory walking code that was looking for archive files, and replaces it with code to load the specific archive file.
Change 2975776 on 2016/05/12 by Jamie.Dale
Downgraded a PO file import warning that isn't really an issue
#jira UE-25833
Change 2976675 on 2016/05/13 by Jamie.Dale
Fixed some more fallout from changes to use the window position when changing the game viewport mode
- FSceneViewport::ResizeFrame:
- Fixed the HMD monitor info setting the wrong variables.
- Fixed SetWindowMode and ResizeViewport potentially being passed two different modes.
- We now only move the window if we need to (this avoids issues with WindowedFullscreen window positioning).
- FWindowsWindow::MoveWindowTo:
- Now treats the screen space position it's given as relative to the top-left of the window, rather than the top-left of the windows' client area.
- FWindowsApplication:
- WM_MOVE was passing a screen space position relative to the top-left of the windows' client area, rather than its window area like Slate expected.
#jira UE-30276
#jira UE-30677
Change 2976804 on 2016/05/13 by Jamie.Dale
Slight optimization to FICUInternationalization::FindOrMakeCulture to avoid hitting the filesystem until we know we need to
Change 2976967 on 2016/05/13 by Alexis.Matte
#jira UE-30687 Cannot import a skeletal mesh scale to zero
Change 2977042 on 2016/05/13 by Alexis.Matte
#jira UE-29952 log a warning if fbx exceed the maximum number of LOD.
#2326 Github PR
#code review matt.kuhlenschmidt
Change 2977074 on 2016/05/13 by Jamie.Dale
Follow up to CL# 2976804 to avoid a potential change in behavior
Change 2977076 on 2016/05/13 by Jamie.Dale
Some tidy up and optimization to SCulturePicker
Change 2977327 on 2016/05/13 by Alex.Delesky
Now deleting the Redirector package on Redirector Fix Up rather than simply removing it from the Content Browser.
#jira UE-30423
Change 2977499 on 2016/05/13 by Alexis.Matte
#jira UE-29475
Enable UStruct child property to be favorite
Change 2978415 on 2016/05/16 by Jamie.Dale
We now pre-load all the culture data when starting the editor to avoid a UI hitch later
Change 2978517 on 2016/05/16 by Alex.Delesky
#jira UE-29406
Creating a static mesh from a geometry brush and then attempting to reimport the mesh will no longer crash the editor.
Change 2978518 on 2016/05/16 by Alex.Delesky
#jira UE-28210
The FBX Importer no longer runs cleanup upon failing to import an FBX file and won't crash the engine the next time an FBX is imported within the same editor session.
Change 2978556 on 2016/05/16 by Alexis.Matte
Fbx tests automation
#jira UE-29635
Change 2978797 on 2016/05/16 by Alexis.Matte
#jira UE-30774
- prevent baking the pivot if we transform the vertex with the absolute transform.
- Also make sure we set the identity for the Max puivot in case we dont bake the pivot and we dont transform the vertex with the absolute transform.
#code review matt.kuhlenschmidt
Change 2978965 on 2016/05/16 by Alexis.Matte
FBX importer, fix the socket rotation.
#jira UE-30094
Change 2980613 on 2016/05/17 by Jamie.Dale
Moved the XLOC UAT localization provider to be publicly accessible
Change 2980614 on 2016/05/17 by Jamie.Dale
Reference update for project move
Change 2980633 on 2016/05/17 by Jamie.Dale
Made the culture mapping used between XLOC and UE4 configurable on a per-project basis
You can now override GetEpicCultureToXLocLanguageId in your custom localization provider in order to change the default mappings.
Change 2980836 on 2016/05/17 by Jamie.Dale
Added -LocalizationSteps flag to allow you to only run a subset of the UAT "Localise" command
You can pass any of the following steps: Download, Gather, Import, Export, Compile, GenerateReports, Upload
Change 2982700 on 2016/05/18 by Jamie.Dale
Fixed the loc package gather potentially adding the same source location multiple times
Change 2983906 on 2016/05/19 by Jamie.Dale
Slight cleanup of the way we register localization gatherer callbacks
Change 2984356 on 2016/05/19 by Chris.Wood
Removed temporary analytics API change needed for earlier hot fix
[UE-31005] - Undo temp Hardware Survey API change from 4.10 - CL 2782817
Change 2986679 on 2016/05/23 by Alex.Delesky
#jira UE-24747 - Importing FBX files that contain meshes that do not have non-degenerate triangles will no longer crash the editor on import, and will warn the user that the meshes are bad.
Change 2986798 on 2016/05/23 by Alex.Delesky
#jira UE-31136 - Chord Input fields will no longer display the blinking edit cursor if they do not have focus.
Change 2987106 on 2016/05/23 by Alexis.Matte
Fbx importer, fail import must not create a package in the content browser
#jira UE-31154
Change 2987563 on 2016/05/23 by Alex.Delesky
#jira UE-30988 - Changed the default window mode when launching a game from the .uproject file to Windowed
Change 2987564 on 2016/05/23 by Alex.Delesky
#jira UE-28856 - Fixed a crash that could potentially occur when starting up PIE while dragging objects like widgets in the editor.
Change 2988321 on 2016/05/24 by Jamie.Dale
Added a way to backup and restore the selection state of a level (its actors and components) in a way that can be reapplied even if the level is reloaded
Change 2988708 on 2016/05/24 by Jamie.Dale
Fix for crash when missing the fallback/last resort font
Change 2988782 on 2016/05/24 by Jamie.Dale
Added the ability to version each localized string individually when loaded into the localization manager
The single 32-bit global history has now been replaced with two 16-bit histories. One is global, and is updated whenever the culture is changed (or a LocRes file is loaded), and the other is local to each string, and is updated if the display string is changed outside of a culture update (to handle cases where the display string is changed, but the key is preserved). Changing the global history will reset all local histories.
Because of the change from an int32 to a uint16, 0, rather than INDEX_NONE, is now considered the "unset" value for a history.
Change 2988856 on 2016/05/24 by Jamie.Dale
Added a way to get the package(s) of the object(s) being edited by a property panel
Typically the package is just the outermost of the object being edited, however there are some cases where this may not be the case:
- UMG widgets edit a transient copy of the real data, so we use the SetObjectPackageOverrides to override the package these objects should use to be the real asset package.
- Structs (UDS, Data Table, etc) don't have a way to get to their package, so you have to specify it on their FStructOnScope instance (see FStructOnScope::GetPackage and FStructOnScope::SetPackage). This has been hooked up for the UDS and Data Table editors.
Change 2988955 on 2016/05/24 by Alex.Delesky
#jira UE-30645 - Adding in support for splash images to support .png and .jpg files. In general, this adds multi-extension support for external image references and external image picker modules.
Git Request #2376
Change 2989418 on 2016/05/25 by Jamie.Dale
Added a way to count text references within a package that match the given search criteria
This can be used to detect whether a localization ID is unique within its package.
The following search modes are available:
- MatchId: Detect a reference if it matches the given ID (ignoring the source text)
- MatchSource: Detect a reference if it matches the given ID and source string
- MismatchSource: Detect a reference if it matches the given ID but has a different source string
Change 2989436 on 2016/05/25 by Jamie.Dale
Added "root-level" meta-data (meta-data associated with the package rather than an object within it)
Change 2989471 on 2016/05/25 by Alexis.Matte
Fbx scene importer, fix naming clash when creating package we now also look in memory to find existing package not just on disk
Change 2989639 on 2016/05/25 by Jamie.Dale
Added static version of FName::IsValidXName
This allows you to verify name-like strings without having to convert them to an FName (and thus add them to the name table)
Change 2989716 on 2016/05/25 by Alex.Delesky
#jira UE-30828 - The Standalone Session Frontend will now render the names of automation tests correctly instead of as solid white blocks.
Change 2990100 on 2016/05/25 by Alexis.Matte
Fix crash when reimporting a mesh that originaly exceed the maximum number of LOD
#jira UE-30907
Change 2991442 on 2016/05/26 by Bob.Tellez
#UE4 Fix components in world not rendering when saved without a physics scene.
Change 2991736 on 2016/05/26 by Bob.Tellez
#UE4 Fix duplicated worlds not being initialized when inactive. Re-enabled duplication of worlds in the content browser.
Change 2991942 on 2016/05/26 by Alex.Delesky
#jira UE-31012 - Setting a Decimal Grid Interval value to 0 and using it will no longer crash the editor or cause an editor crash on startup.
Change 2991994 on 2016/05/26 by Alex.Delesky
#jira UE-31177 - Attempting to export an entire level as an object file and choosing to export all materials as images will no longer crash the editor.
Change 2994037 on 2016/05/30 by Alexis.Matte
Add Fbx Automation Tests
- static mesh import reimport (sections and materials)
- skeletal mesh import and reimport (sections and materials also bone position)
- static/skeletal mesh LODs (import, add, reimport)
- rigid mesh (import, reimport)
Change 2994253 on 2016/05/31 by Alexis.Matte
Mikkt crash when computing the normals if there is more vertex then the number of wedge
#jira UE-29143
Change 2994260 on 2016/05/31 by Alexis.Matte
Make sure we cannot modify fbx test plan when json file is read only
Change 2994431 on 2016/05/31 by Alex.Delesky
#jira UE-21900 - The scale widget should now render all axes when using an orthographic camera.
Change 2994432 on 2016/05/31 by Alex.Delesky
#jira UE-31328 - New objects dragged into the scene will now comply with the Surface Snapping option in the viewport, and will not use the Surface Offset if snapping is disabled.
Change 2994537 on 2016/05/31 by Richard.TalbotWatkin
Fixed potential crash in the Mesh Paint tool when non-transactable actors are in the SelectedActors list following a Redo.
#jira UE-31172 - Crash related to Vertex Painting - MeshPaint!CastChecked<AActor,UObject>()
Change 2994983 on 2016/05/31 by Richard.TalbotWatkin
Added some guard code to protect against a crash when editing geometry. Repro currently unknown, ensure was added in order to try to get more information.
#jira UE-30820 - UT EDITOR: CRASH: Crash in Public Release CL#2973693
Change 2995022 on 2016/05/31 by Jamie.Dale
PR #2428: Added missing END_OPTIMIZATION macro to SOutputLog (Contributed by MatzeOGH)
Change 2995027 on 2016/05/31 by Jamie.Dale
PR #2409: fixed a small typo in GraphEditor.h (Contributed by MatzeOGH)
Change 2995963 on 2016/06/01 by Alex.Delesky
#jira UE-31317 - The transform gizmo will no longer block the placement of a material onto a mesh.
Change 2997002 on 2016/06/01 by Cody.Albert
Fix to ensure ActiveTopLevelWindow is properly set after a window is destroyed
#jira UE-31448
Change 2998013 on 2016/06/02 by Alexis.Matte
Prevent static mesh materials array to grow when using the reset button in the staticmesh editor.
#jira UE-12931
Change 2998370 on 2016/06/02 by Alexis.Matte
Fbx Automation, add some import LOD test in case the options are not ok
Change 2999709 on 2016/06/03 by Jamie.Dale
Fixed some issues with gathering text from BP bytecode
Bytecode in Blueprints is very volatile, and can only be safely gathered after it's been compiled (which is not guaranteed to have happened by the time we save the package). This change avoids caching any assets that contain scripts (non-data-only Blueprints), and instead will always load them to perform a gather (which will ensure the Blueprint bytecode is up-to-date due to compile-on-load).
Change 2999755 on 2016/06/03 by Richard.TalbotWatkin
Fixes to Spline Mesh collision generation.
- Fixed a serious issue with DDC ID generation, in that the static mesh wasn't forming a part of the key, hence any two spline meshes with identical properties but different meshes would yield the same cache entry.
- Fixed how different collision boxes are transformed when rebuilding physics meshes. Convex collision transforms are now correctly taken into account, and spherical and capsule collision now gets correctly translated when a scale is applied to the start or end of the spline mesh.
- Optimized physics rebuilding. A new BodySetup object is now only created when needed, otherwise it is reused.
#jira UE-31361 - Splines handle box collision and collision from other shapes differently
Change 2999973 on 2016/06/03 by Jamie.Dale
We now skip bulk data when detecting text references
#jira UE-31596
Change 3000159 on 2016/06/03 by Alex.Delesky
#jira UE-30244 - Added a safeguard against a potential crash when editing BSP brushes before placing another BSP brush into the level.
Change 3001814 on 2016/06/06 by Alexis.Matte
Make sure the staticmesh Materials list dont grow when we reimport or override a LOD other then the base mesh.
Add a fbx test to make sure the problem is flag by automation test
#jira UE-1394
Change 3001820 on 2016/06/06 by Alex.Delesky
#jira UE-19079 - Widget Blueprints should no longer crash when dragging widgets from one blueprint to a second and then compiling the second blueprint.
Change 3001915 on 2016/06/06 by Alexis.Matte
Make sure we check attribute type before checking attribute unique ID in case of unique id clash.
#jira UE-31214
Change 3002026 on 2016/06/06 by Alexis.Matte
Importing morph target should not import textures like materials since the base mesh already import thoses.
UDN Question:
https://udn.unrealengine.com/questions/293973/does-importing-an-fbx-with-morph-targets-cause-a-m.html
Change 3002623 on 2016/06/06 by Jamie.Dale
Fixing more loc conflicts
Change 3002883 on 2016/06/06 by Jamie.Dale
Adding retry when dealing with OneSky
This is attempting to compensate for some timeouts with OneSky, which were also noticed when testing UE-31413
Change 3003004 on 2016/06/06 by Trung.Le
#jira UE-13101 - Make "Description" field for a BluePrint Function multiline
Change 3003859 on 2016/06/07 by Alexis.Matte
#jira UE-30436 Refresh the property editor when a array element is added, remove, insert, delete and the property is favorite
Change 3004132 on 2016/06/07 by Jamie.Dale
Fixed a hash conflict that could occur when both the case-sensitive and case-insensitive FName hashes were identical
This resulted in the case-preserving FName being added to the head of the linked list for the bucket, which caused any subsequent name lookups to return that name index for the comparison index (since it matched an insensitive string comparison), rather than the name index of the first case-variant of that name that was added to the bucket.
This change has new entries be inserted at the tail of the list, which ensures that enumeration for a case-insensitive name will always find the same entry in the bucket (the first one that was ever added) and will continue to compare correctly.
Change 3004286 on 2016/06/07 by Jamie.Dale
Ensured that assignments that publish new names to the bucket are atomic
Change 3004310 on 2016/06/07 by Jamie.Dale
Ensured FName internal hashes are returned as uint16
Change 3004381 on 2016/06/07 by Jamie.Dale
FAsyncPackage now creates the meta-data before processing the remaining exports
This matches the behavior of FLinkerLoad::LoadAllObjects, as other objects may depend on the meta-data being loaded before them.
Change 3004765 on 2016/06/07 by Alex.Delesky
#jira UE-31498 - Material thumbnails will now render the full sphere rather than an extreme close-up of the material.
Change 3005754 on 2016/06/08 by Trung.Le
Allow whitespace for meta class names
#jira UE-31668
Change 3005755 on 2016/06/08 by Stephan.Jiang
UMGSequencePlayer implements GetPlaybackContext() and return UserWidget->GetWorld() if it's valid
#jira UE-31299
Change 3006512 on 2016/06/08 by Alex.Delesky
#jira UE-31572 - The "All Classes" tab in the Modes panel will now refresh when a placeable asset is created, renamed, or deleted without needed to navigate away from the tab first.
Change 3006760 on 2016/06/08 by Jamie.Dale
Added support for stable localization keys
This feature adds support for preserving the existing key of an FText property when editing the source string, providing that it is the only reference to that string within the package. A side effect of this is that you're now able to specify custom keys for FText properties since we can now verify that the custom key won't cause an identity conflict.
In order to limit the search domain for uniqueness to a single package, we've added the concept of a "localization namespace" to packages (stored in the meta-data). Each package is given a unique namespace, which is appended to the user-defined namespace of the text when it is modified, saved, or duplicated. This package namespace ensures that the same user-defined namespace and key may be used in different packages without causing an identity conflict.
In order to access the package namespace within the Core code that hosts FText (which doesn't know about UPackage), FArchive now provides a GetLocalizationNamespace function to access the package namespace within the Core code, and a SetLocalizationNamespace function for CoreUObject and Engine code to pass down the package namespace from their packages.
If you have an archive that handles duplicating objects into a different package, or duplicating packages themselves, then you'll want to make sure it's setting the package namespace correctly. FObjectReader and FObjectWriter have been updated to do this, and serve as a good example. FDuplicateDataReader (used by StaticDuplicateObject), and FCopyPropertiesArchiveObjectWriter (used when compiling Blueprints) have also been updated to set the package namespace, as they both handle copying objects between packages. TextNamespaceUtil provides a suite of functions for getting at (or setting) the namespace for a package.
Keys will start to stabilize naturally over time once this feature is enabled, however the StabilizeLocalizationKeys commandlet may also be used to stabilize all the keys for a game at once. Running it for a game under source control would look something like this:
MyGame -run=StabilizeLocalizationKeys -IncludeGame -NativeCulture=en -EnableSCC
This commandlet also updates your localization archives to use the new text identities, however you'll still need to run a localization gather and localization compile before the updated translations will be available for your game.
Note: This feature is currently disabled via the USE_STABLE_LOCALIZATION_KEYS define. It will be enabled at a later date.
#jira UETOOL-796
Change 3007501 on 2016/06/09 by Trung.Le
#jira UE-31722
Fix MaterialFunctions crash when editing text in Libraries Category Text field. Solution: Removed PredEdit and PostEdit from IEditableTextProperty, its derived types and other code that was calling them. The new SetText method already calls NotifyPreChange and NotifyPostChange to properly create/destroy ScopedTransaction.
Change 3007524 on 2016/06/09 by Jamie.Dale
Added some additional checks to avoid re-keying text when duplicating for PIE
Change 3007564 on 2016/06/09 by Jamie.Dale
PR #2401: DataTable import/export improvements (Contributed by bozaro)
Change 3007653 on 2016/06/09 by Jamie.Dale
PR #2459: Generate JSON for nested structs in DataTable rows (Contributed by jorgenpt)
Change 3008019 on 2016/06/09 by Jamie.Dale
Updated structs to export as JSON when displaying them in the Data Table editor
This produces much cleaner results than using the text export method (which will use the internal names for user defined structs).
This also cleans up the FDataTableExporterCSV and FDataTableExporterJSON APIs so that you don't need to pass in a UDataTable if you're not going to use it.
#jira UE-29958
Change 3008052 on 2016/06/09 by Jamie.Dale
Fixed bug importing an array inside a JSON Data Table
This was noticed when testing a GitHub PR, but the JSON importer for a Data Table was appending the new data to the array rather than replacing it. It now clears the array prior to importing.
Change 3008875 on 2016/06/10 by Jamie.Dale
PR #2406: Git plugin: Fix for Git diff not working in UE 4.12 (and master) (Contributed by SRombauts)
Change 3008879 on 2016/06/10 by Jamie.Dale
PR #2484: Git Plugin: fix the Submit To Source Control menu broken by new "migrate" support in 4.12 (and master) (Contributed by SRombauts)
Change 3008990 on 2016/06/10 by Alex.Delesky
#jira UE-15699 - Submitting to source control via the editor should now check for current asset status before prompting the user to submit their changes. This should prevent files that had been previously deleted from being readded to source.
Change 3008991 on 2016/06/10 by Alex.Delesky
#jira UE-31688 - The Output Log will now automatically anchor to the bottom of the scroll bar when the user scrolls all the way down using the mouse wheel or clicking and dragging the content window.
Change 3010856 on 2016/06/13 by Alexis.Matte
#jira UE-31713 Fix a serialize issue for skeletal mesh with apex cloth.
Change 3011736 on 2016/06/13 by Jamie.Dale
Adding missing plurals.res file
This is needed to get plural form information from ICU.
#jira UETOOL-875
Change 3012387 on 2016/06/14 by Richard.TalbotWatkin
Disabled the Paste context menu action if the property is marked as EditConst.
#jira UE-27469 - User is able to paste values into a read-only setting
Change 3012971 on 2016/06/14 by Stephan.Jiang
Editor Preferences->Widget Designer now have two options to toggle the visibilities of widgets created from Engine content folder and Developers folder.
By default, visibility for engine content is off and developers is on
#jira UE-31657
Change 3013111 on 2016/06/14 by Jamie.Dale
Unified the number, percentage, and currency formatting between the ICU and Legacy text implementations
Removed all the old legacy number formatting code, and removed the calls to the ICU specific number formatting. Everything is now using FastDecimalFormat as this will allow some optimizations later when formatting numbers in FText::Format.
Change 3015438 on 2016/06/15 by Cody.Albert
Fixing ScrollBy function to calculate new scroll offset based on the current scroll offset and not the current desired scroll offset (which may not be the same during an animation)
#jira UE-32082
Change 3016782 on 2016/06/16 by Richard.TalbotWatkin
Corrected ConvexHull2D so that it returns an empty set of indices when passed an empty points array.
Change 3016949 on 2016/06/16 by Jamie.Dale
Added FastDecimalFormat overloads to write into an existing string
This helps avoid an extra allocation if you already have a pre-sized string that you're writing the number to (as is the case in FText::Format).
Change 3016952 on 2016/06/16 by Jamie.Dale
Changed an Add for an Emplace to avoid moving a temporary
Change 3016954 on 2016/06/16 by Jamie.Dale
Updated some FText code to avoid creating temporary objects just to move data through a hierarchy
There was some code in FText and its internal types that were using pass-by-value as a marshaller to move data through a hierarchy. This resulted in temporary objects being created and destroyed to facilitate the movement of data.
This change has all the internal FText code (private FText constructors, internal text data, and internal text history) take its movable types as an r-value reference. This avoids the temporary objects, but also makes it impossible to accidentally copy a construction argument when you meant to move it (you can still copy, but the copy must be explicit).
In addition to this, FText::FromString and FText::AsCultureInvariant now have two overloads, const FString& and FString&&, to avoid them creating a temporary when you're invoking a move. FText::ChangeKey now takes its parameters by const& as their data wasn't being moved further down the chain, so the by-value copy was wasteful.
Change 3019021 on 2016/06/19 by Richard.TalbotWatkin
When deleting a brush, ensure geometry is rebuilt before updating the details panel according to the selection change, so that the old Surface Properties don't continue to appear.
#jira UE-8966 - Surface Properties of a BSP remain in the details panel after the BSP is deleted
Change 3019022 on 2016/06/19 by Richard.TalbotWatkin
Fixed issue where the Surface Properties category in the Details panel doesn't appear after selecting a surface on a Brush which has just been placed.
#jira UE-31916 - Selecting an edge of BSP geometry then a face does not show Surface Properties while in Place mode
#jira UE-31915 - Selecting BSP face does not show Surface Properties in Details
Change 3019025 on 2016/06/19 by Richard.TalbotWatkin
Fixed issue which was stopping 'Cancel' from correctly returning a 'Cancelled' result during P4 asynchronous ops.
#jira UE-28595 - Submit to Source Control: "Checking for assets to check in..." cancel button does not cancel operation, editor becomes unresponsive
Change 3020050 on 2016/06/20 by Cody.Albert
Changed window centering logic to correctly work when monitor 1 isn't set to primary monitor.
#jira UE-32173
Change 3021145 on 2016/06/21 by Jamie.Dale
Added support for text format argument modifiers
These can be used to mutate a format argument before appending it to the resultant formatted string, and are applied to the preceding argument via a pipe, eg) "{Arg}|plural(one=is,other=are)".
We provide a few of these by default:
- |plural(key=val,...)
- |ordinal(key=val,...)
Provides support for cardinal and ordinal plural forms, where key may be any of "one", "two", "few", "many", or "other", and val may be any optionally quoted string.
- |gender(masculine,feminine,[neuter])
Provides support for gender forms, where the 0th item is the masculine version, the 1st item is the feminine version, and the 2nd item is an optional neuter version. The values may be any optionally quoted string.
- |hpp(consonant,vowel)
Provides support for Hangul post-positions, where the 0th item is the consonant suffix, and the 1st item is the verb suffix. The values may be any optionally quoted string.
Major changes:
- Exposed the ICU plural form handling via FCulture::GetPluralForm.
- Updated the FText formatting code to use an expression evaluator (to support the more complex expressions needed for the argument modifiers).
- Added FTextFormat to store a pre-compiled format expression. Re-using one of these if you're performing a lot of formats with the same FText will increase your performance (as around half of the FText::Format cost can be compilation, via an implicit construction of FTextFormat).
- Updated the FText::Format(...) family of functions to take their format string as FTextFormat, and take their arguments as FFormatArgumentValue. This allows us access to the real numeric types within the format code, but doesn't break the existing API as these types are implicitly constructible from the old parameters (FText).
- Converted text history to store their format string as an FTextFormat in-case they need to perform a re-format (this is still saved as an FText).
Breaking changes:
- The rules for the escape token have been simplified, and there is an incredibly unlikely chance that this may affect some text:
- The ` character will now only escape a valid character (producing only the escaped character in the final string), or it will be ignored and inserted as a literal character, eg) "`{F" -> "{F", and "`F" -> "`F".
- Previously it would also remove the escape character when it followed { or }, eg) "{`" -> "{" and "}`" -> "}", rather than "{`" and "}`" like you might expect. It would also have previously removed a ` at the end of a string due to a parser bug.
Change 3021156 on 2016/06/21 by Jamie.Dale
Updated LinuxToolChain to use the same output delegate for all of its actions when cross-compiling
This avoids the compile and link actions being split into different batches.
Change 3021280 on 2016/06/21 by Richard.TalbotWatkin
Fixed bug in parsing LOD in UStaticMeshComponent::ImportCustomProperties (thanks to Aurelien Cordonnier).
#jira UE-31937 - UDN code submission for UStaticMeshComponent::ImportCustomProperties parsing bug
Change 3022949 on 2016/06/22 by Alex.Delesky
#jira UE-31944 - Upgrading Subversion binaries to version 1.9.4.
Change 3023092 on 2016/06/22 by Jamie.Dale
Downgraded some checks to ensures and added an early out
#jira UE-32009
Change 3023154 on 2016/06/22 by Jamie.Dale
Ported over CL# 3018771 to the UE automation
This fixes an issue where a downloaded PO file smaller than the one already on disk leaving a mix of both files on disk (rather than the existing file on disk being truncated).
Change 3023579 on 2016/06/22 by Jamie.Dale
Expanded the Blueprint FormatText node to support numeric and gender types
These are needed to correctly support the new plural and gender forms that can be used in format strings, as these require actual numeric/enum data to be passed into the format arguments, rather than pre-formatted text.
Major changes:
- The FormatText node for Blueprints now uses PC_Wildcard as its pin type for format arguments instead of PC_Text.
- Any existing literal text argument data in the pin is hoisted out into a "Make Literal Text" node which is then connected to the pin.
- FFormatArgumentData has been updated to be variant on the data needed by Blueprints. It's now a less comprehensive and non-unioned version of FFormatArgumentValue.
- The version of FText::Format taking FFormatArgumentData has been deprecated as its usage was internal to Blueprints and we have much better ways to format text in C++. Any existing C++ using that (of which we have none internally) should be updated to use FFormatArgumentValue instead.
Change 3023915 on 2016/06/22 by Jamie.Dale
Cleaned up some of the UK2Node_FormatText expansion code to avoid unchecked literals
Change 3024813 on 2016/06/23 by Jamie.Dale
Renamed FContext to FManifestContext to better reflect its purpose and avoid naming conflicts with other code
Change 3024852 on 2016/06/23 by Nick.Darnell
FBX - Updating automation tests with the changes to chunk and chunk index removal and them being merged with sections.
Change 3024994 on 2016/06/23 by Nick.Darnell
UMG - Removing the DesignerWidgetTree, instead going to directly inject the widget tree into the partially constructed UUserWidget during design time, when refreshing the preview. This avoids doing something a little dangerous and sketchy like updating the living class instance with a new designer tree that all new instances will begin biasing using. Also making the preview widget explictly non-transactional as there's no reason to track changes to the preview, all the changes that need to be tracked should be on the template widget. This should fix the crash in the widget designer when you Undo just after compiling the widget blueprint.
#jira UE-31155
Change 3025194 on 2016/06/23 by Alex.Delesky
#jira UE-31155 - Compilation error fix.
Change 3025255 on 2016/06/23 by Alex.Delesky
#jira UE-21900 - Redoing changes done in CL 2994431 since it got stomped. Reinstates the grabber handles and ensures consistent scaling on the scale widget in orthographic viewports.
Change 3025460 on 2016/06/23 by Cody.Albert
Fixed issue where widget components would misalign when aspect ratio was being constrained
#jira UE-29637
Change 3025508 on 2016/06/23 by Cody.Albert
Adding support for adjusting animation playback speed
#jira UE-32222
Change 3026444 on 2016/06/24 by Jamie.Dale
Fixed crash caused by bad access of shared this when closing an active IME context
This was only needed to get the owner window, which we now cache when the IME context is created.
#jira UE-32240
Change 3028358 on 2016/06/27 by Jamie.Dale
Fixed IMEs not working due to no window being cached
#jira UE-32240
Change 3028464 on 2016/06/27 by Alex.Delesky
#jira UE-31873 - A single "Files need check-out" notification will now be shown instead of multiple notifications if multiple files need to be checked out, and updated as more files need to be checked out.
Change 3028524 on 2016/06/27 by Chris.Wood
Switched off uploads to legacy Crash Report Receiver.
[UE-31252] - Switch off deprecated CRR upload in Crash Report Client
Also added CRC version string, added to crash context from CRC config
Change 3028840 on 2016/06/27 by Alexis.Matte
#jira UE-32306 replace material bad name character by an underscore when doing a scen import.
Change 3028924 on 2016/06/27 by Alexis.Matte
#jira UE-32125 Make sure we can add a plan when a fbx file is drop in the fbx automation test folder
Change 3029044 on 2016/06/27 by Alex.Delesky
#jira UE-31944 - Updating SVN binaries for Mac to 1.9.4
Change 3029276 on 2016/06/27 by Alex.Delesky
#jira UE-31531 - A user can now select the base class when creating a new physical material.
PR #2462: added dialog, which enables picking base class for asset (Contributed by iniside)
Change 3029459 on 2016/06/27 by Alexis.Matte
#jira UE-32354 Make sure we set all blueprint component to the correct mobility set in the scene import options.
Change 3030577 on 2016/06/28 by Nick.Darnell
PR #2531: Git plugin: fix wrong status icons (Contributed by SRombauts)
Change 3030587 on 2016/06/28 by Alexis.Matte
#jira UE-32251 add missing body setup variables when restoring the body setup value after a re-import of a staticmesh
Change 3030946 on 2016/06/28 by Alexis.Matte
#jira UE-32515 prevent crash when re-import staticmesh userdata
Change 3031115 on 2016/06/28 by Jamie.Dale
The DDC builder now gives the shader compile worker a chance to catch up when it pauses to run a GC pass
This prevents an issue where the shader backlog could cause massive amounts of memory to be consumed.
Change 3031146 on 2016/06/28 by Jamie.Dale
Fixed errors when building with USE_STABLE_LOCALIZATION_KEYS enabled caused by UEdGraphPin no longer being a UObject
Change 3031357 on 2016/06/28 by Nick.Darnell
PR #2431: Add plugin support to the editor class wizard. (Contributed by Koderz)
Change 3031515 on 2016/06/28 by Jamie.Dale
Fixed game targets not being able to depend on other game targets
Change 3031520 on 2016/06/28 by Jamie.Dale
Localization compilation now specifies an ArchiveName to use
Change 3031671 on 2016/06/28 by Nick.Darnell
Editor - Checking to see if a weak variable is valid before using it in the editor build window.
Change 3032013 on 2016/06/28 by Matt.Kuhlenschmidt
Added ability to invert the Y axis in editor viewports for mouse look and orbit
Change 3032495 on 2016/06/29 by Jamie.Dale
Fixed some measuring issues with bi-directional text within a right-flowed document
There were three main issues:
1) Measuring blocks was measuring visual glyphs rather than logical glyphs (this caused bad measures/wrapping and overlapped rendering).
2) The text layout would consider blocks visually contiguous without making sure the block flow direction matched the line flow direction (this caused bad highlights).
3) The text layout would fail to compensate for a non-contiguous block that had a flow direction different to the line flow direction (it was hard-coded for RTL in LTR, so broke for LTR in RTL - this caused bad highlights).
#jira UE-32526
Change 3032533 on 2016/06/29 by Nick.Darnell
UMG - The widget component now extends from UMeshComponent, it can have a custom material applied to it, in order to achieve cooler effects - like ignoring the depth buffer. Users who use this option are encouraged to start with the widget components default material and work from there. The widget component now offers the ability to automatically size the render target to be the desired size of the widget - note that this can go real bad if your widget wants to be really big.
Change 3032855 on 2016/06/29 by Alexis.Matte
#jira UE-32508 Remove the cachewindow from the FTextInputMethodContext constructor since it will be cache only when the IME is activated
#test please re-test also UE-32240
Change 3033145 on 2016/06/29 by Alex.Delesky
#jira UE-32239 - The PropertyEditorModule will no longer cause a crash on editor shutdown if a SDetailsView widget tries to force refresh itself when the Slate application is no longer initialized.
Change 3033147 on 2016/06/29 by Alex.Delesky
#jira UE-32326 - Clicking on the "Install {compiler}" button when trying to create a new code class or code project will now not crash the engine if it fails to open the installation file for write, nor will it create multiple notifications if the button is pressed repeatedly.
This also addresses a potential issue with static initialization order when it comes to adding TickableEditorObjects to its corresponding array, since it was wholly possible for a statically initialized TickableEditorObject to initialize itself and add itself to the tickable objects arra before the tickable objects array was initialized, causing that object to not get ticked at runtime and causing a crash when the editor was closed.
Change 3033162 on 2016/06/29 by Alex.Delesky
#jira UE-31827 - Undo/redo now works in the Material function editor.
Change 3033391 on 2016/06/29 by Matt.Kuhlenschmidt
Fix post process settings blendable picker not being readable in the details panel
Change 3033498 on 2016/06/29 by Matt.Kuhlenschmidt
Fixed huge number of redundant calls to CanEditChange and
DiffersFromDefault that were causing massive performance loss when
thousands of objects are selected. CanEditChange and DiffersFromDefault
are now cached each time a property value changes.
Fixed redundant calls for getting visualizers for each selected
object. This is now cached on selection
Change 3033504 on 2016/06/29 by Matt.Kuhlenschmidt
Fix Mass customization on the body instance not working with undo/redo or reset to default
Change 3034357 on 2016/06/30 by Alex.Delesky
#jira UE-31184 - Renamed the multiple collision components in the cascade particle system to more accurately reflect what they represent.
Change 3035915 on 2016/07/01 by Richard.TalbotWatkin
Fix to SListPanel so that those with horizontal arrangement (i.e. from STileView) use the number of desired items instead of the number of actual items in order to calculate the desired size of the geometry. This fixes the case where an STileView is contained within an SScrollBox.
#jira UE-32195 - STileView no longer works correctly when placed inside of a SScrollBox
Change 3035951 on 2016/07/01 by Richard.TalbotWatkin
Fixed issue when importing a brush, so that the brush is always validated (relinked), whether it be a static or dynamic brush. This is because the process of rebuilding a dynamic brush sets the link indices to signify FBspSurf indices from the UModel instead of FPoly indices (the FPoly::iLink member is overloaded in its meaning). Always forcing a relink correctly sets the linked list of coplanars.
#jira UE-32087 - Crash occurs when creating Static Mesh from Trigger Volume
Change 3036991 on 2016/07/04 by Alexis.Matte
#jira UETOOL-901 Scene importer now support the rigid mesh animation
Change 3037037 on 2016/07/04 by Jamie.Dale
Fixed regression in editable text box alignment
Text was no longer vertically aligned center since SEditableText was converted to use a text layout. This vertical alignment is now handled by the outer SEditableTextBox instead.
Change 3037057 on 2016/07/04 by Richard.TalbotWatkin
Fixed screenshots when running automation tests so that they are saved locally when a FAutomationWorkerScreenMessage is received.
#jira UE-29815 - In-game screenshot isn't working under certain circumstances
Change 3037082 on 2016/07/04 by Chris.Wood
Added detection of asserts and passing assert flag and crash type string to crash reports.
[UE-30592] - Crash Reporter should determine crash type on client and pass string to server
Reviewe by Steve with reservations about the static variable for setting asserted state. While not thread-aware, this is probably accurate enough for the purpose of crash reporting, certainly for now. I'm submitting it like this because the work required to add fully thread-aware fix is not necessary at this point.
Change 3037095 on 2016/07/04 by Alexis.Matte
Fix the bone name when duplicating a socket.
Change 3037453 on 2016/07/05 by Stephan.Jiang
Adding ability to animate the root wigdet #2
FHierarchyRoot adds the preview widget instead of CDO to selectedobjects in widgetblueprint
the properties are then migrated back to the CDO
#UE 31810
Change 3037487 on 2016/07/05 by Jamie.Dale
Fixed crash caused by stale BP pointer
#jira UE-32325
Change 3037488 on 2016/07/05 by Jamie.Dale
Fixed a crash that could occur when a class and a folder had the same name
Change 3037526 on 2016/07/05 by Jamie.Dale
Speculative fix for a potential race condition when shutting down the editor while a "launch" was in progress
The launch-thread could potentially queue up a request after the game-thread had requested it cancel, and cleared out any queued tasks. This change has the game-thread wait for the launch-thread to acknowledge its cancellation before continuing with editor shutdown.
#jira UE-17688
Change 3037557 on 2016/07/05 by Alex.Delesky
#jira UE-32424 - Added a safeguard to ensure that renaming a world that was duplicated from another world would not crash the editor if both worlds' lightmaps and shadowmaps were still active in memory, due to the editor attempting to rename identical textures from different packages to the same location.
The actual fix to this issue was performed in an earlier CL, but this should prevent the editor from crashing if the issue returns.
Change 3037558 on 2016/07/05 by Alex.Delesky
#jira UE-32285 - Importing assets to the Content Browser via drag and drop operations are no longer permitted while the UI file picker dialog is opened.
Change 3037559 on 2016/07/05 by Alex.Delesky
#jira UE-32075 - The user can no longer attempt to import non-FBX and non-OBJ files when importing into a level.
Change 3037593 on 2016/07/05 by Stephan.Jiang
GitHub #2549: Add function for setting the playback rate of UMG animations
original code shelved in CL 3033449
#UE-32653
Change 3037605 on 2016/07/05 by Jamie.Dale
Fixed infinite recursion that could happen when gather loc from an object with a custom callback
#jira UE-32670
Change 3037649 on 2016/07/05 by Nick.Darnell
PR #2538: [WidgetBlueprintLibrary] GetAllWidgetsOfClass, Added META ~ DeterminesOutputType, DynamicOutputParam, removes the need for extra cast, Rama (Contributed by EverNewJoy)
Change 3037652 on 2016/07/05 by Nick.Darnell
Clean - Removing commented out code.
Change 3037658 on 2016/07/05 by Matt.Kuhlenschmidt
Fix initial hitch when dragging around in a color picker opened from a material expression node.
Change 3037679 on 2016/07/05 by Nick.Darnell
Engine - Texture2D no longer forces the MIP level to 0 for TextureGroup_UI textures.
Change 3037757 on 2016/07/05 by Nick.Darnell
PR #2447: WebBrowser widget: Added GetUrl method and OnUrlChanged property (Contributed by nelbok)
Change 3037840 on 2016/07/05 by Nick.Darnell
UMG - Now allowing for spirtes to be used just like textures and materials on UMG widgets anywhere that takes a brush, can now also take a Sprite. There is now a ISlateTextureAtlasInterface interface that any UObject may now implement if it wishes to integrate with UMG to provide its atlas data in a form Slate can understand.
Change 3037924 on 2016/07/05 by Jamie.Dale
Re-ordered variable initialization to appease a warning on Mac
Change 3037981 on 2016/07/05 by Jamie.Dale
Fixed crash where FColorStructCustomization could call SetPerObjectValues with an empty array
#jira UE-32639
Change 3038075 on 2016/07/05 by Cody.Albert
Removed misleading error message in HandleCECommand
#jira 28007
Change 3038231 on 2016/07/05 by Alexis.Matte
#jira UE-30694 We set the section collision only if there is an imported collision or a generated one. If there is no collision we do not set the collision flag.
Change 3038275 on 2016/07/05 by Alex.Delesky
#jira UE-32689 - "Game Gets Mouse Control" will now override the Capture Mouse on Launch setting when launching the game from within a Level Viewport (i.e., within the editor window itself).
Change 3039310 on 2016/07/06 by Trung.Le
#jira UE-25005 Change PIE Key Bindings
- Removed Shift+F1 and Esc from BaseInput.ini
- Created new customizable key binding for
+ Shift+F1: same functionality.
+ Esc: now will pause the play session and bring back the mouse cursor. Clicking the mouse on the viewport should resume play session.
+ Shift+Esc: now will stop the play session
Change 3039458 on 2016/07/06 by Trung.Le
Removed unused code in StaticMeshLight.cpp
Change 3039827 on 2016/07/06 by Frank.Fella
FString - Fix divide overload path concatenation for empty paths since there are several places in the engine that expect using that doing { path / "" } will append a / onto path.
#jira UE-31959
Change 3041094 on 2016/07/07 by Nick.Darnell
WebBrowser - Fixing an issue where the web browser widget plugin wasn't loading soon enough to be properly loaded in time if it was referenced by game nessesary content thatloads in the Default stage of the pipeline, so moving it to PreDefault.
#jira UE-32694
Change 3041110 on 2016/07/07 by Matt.Kuhlenschmidt
Fix visualizers on blueprint actors not working when the internal components are trashed and replaced
Change 3041302 on 2016/07/07 by Chris.Wood
Increased buffer size for crash uploads.
[UE-32151] - High number of crashes read from S3 by Crash Report Process are failing to unpack
Trivial change in dev branch - no code review
Change 3041969 on 2016/07/07 by Nick.Darnell
UMG - Input Key Selector now no longer adds a bogus Selected Key property to the details panel.
Change 3041971 on 2016/07/07 by Nick.Darnell
UMG - Not using separate settings for the Engine/Developer folders visible in the UMG palette, now just using the same setting that powers the content browser.
Change 3042612 on 2016/07/08 by Trung.Le
#jira UE-25005, set Shift+Esc defaults to toggle play/pause and Esc remains defaults to quit
Change 3042732 on 2016/07/08 by mitchell.wilson
Adding test content for UMG Paper 2d Atlas test
Change 3042780 on 2016/07/08 by mitchell.wilson
Updating UMG_Paper2d test content for UMG Paper 2d Atlas testing
Change 3042870 on 2016/07/08 by mitchell.wilson
Renaming UMG_Paper2d to UMG_Sprite
Change 3044104 on 2016/07/10 by Nick.Darnell
PR #2104: Improved widget input support (Contributed by projectgheist)
Change 3044107 on 2016/07/10 by Nick.Darnell
Slate - Fixing the slider handle rendering to no longer run off the edge and get cut off.
#jira UE-25750
Change 3044377 on 2016/07/11 by Chris.Wood
Add Slack messaging module - Epic Friday
Change 3044536 on 2016/07/11 by Alex.Delesky
#jira UE-7293 - Mouse locking to viewport is now determined off an enum instead of a boolean, to allow for more flexibility when upgrading with new features.
Change 3044922 on 2016/07/11 by Nick.Darnell
Slate/UMG - Working on better support for VR interactions with Slate widgets. This change fixes a lot of issues with the way interaction works with slate widgets rendered in the virtual world. Breakages, direct mouse interaction with widgets in the virtual world is no longer supported. Those kinds of interactions must all use the WidgetInteractionComponent now, which by default works similar to the lasers in VREditor for interaction. However - you can disable automatic hittesting, and instead provide a custom hitresult instead if you want to use screen tracing and act like you're just a mouse cursor that is supported. Menu anchors now properly function inside of widgets in the virtual world. Performance improvements - the viewport no longer arranges all 3d widgets every frame. Additionally, Widget Components now support a whole bunch of methods for reducing how often they redraw to help control performance, they also support manual refresh. This automatically works in tandem with the widget interaction component to request refresh whenever the widget interaction component is interacting with the widget, thus giving you a simple way to only redraw widgets that the user is hovering on top of. Unrelated - this change also fixes Stop navigation commands not working with Next/Prev navigation - Wrap is still unsupported.
Change 3045157 on 2016/07/11 by Nick.Darnell
Slate - Always consume the bottom face button of the analog cursor, even if it's a repeat.
Change 3045355 on 2016/07/11 by Matt.Kuhlenschmidt
Added logging for unreproducible top 10 crash in matinee when a track ends up not being able to add a keyframe
Change 3045358 on 2016/07/11 by Alex.Delesky
#jira UE-31179 - The editor should now log additional information and hit an assertion if the editor tries to construct FObjectOrAssetData using invalid data. This doesn't stop the crash, but should help get some extra info when it does break.
Change 3045371 on 2016/07/11 by Matt.Kuhlenschmidt
Enable the widget reflector from the editor console by typing "widgetreflector"
Change 3045387 on 2016/07/11 by Stephan.Jiang
Stripping off 'b' in the propertyname so that "Is Enabled" is animated properly.
#UE-31874
Change 3046093 on 2016/07/12 by Nick.Darnell
UMG - The Slider now exposes the IsFocusable option from Slate.
#jira UE-32960
Change 3046094 on 2016/07/12 by Alexis.Matte
#jira UE-32807 scene re-import blueprint hierarchy kept some part of old blueprint component value.
Change 3046104 on 2016/07/12 by Stephan.Jiang
typo "Syc" causing the "Sync" button doesn't show Slateicon
#UE-31409
Change 3046142 on 2016/07/12 by Nick.Darnell
Orion - Upgrading more code to use the new input mode functions and not the deprecated ones.
Change 3046165 on 2016/07/12 by Nick.Darnell
UMG - Fixing a crash on the widget component if the render target is null when reapplied through widget component data.
#jira UE-32844
Change 3046255 on 2016/07/12 by Nick.Darnell
UT - More build warning fixes for the new Input Mode methods.
Change 3046604 on 2016/07/12 by Richard.Hinckley
Adding a template file and code to support creating a UInterface directly from the New C++ Class wizard.
Change 3047071 on 2016/07/12 by Matt.Kuhlenschmidt
Better way of summoning the widget reflector from the console
Change 3047842 on 2016/07/13 by Matt.Kuhlenschmidt
Mark Subdivision surface setting as advanced since it is experimental and definitely for advanced users only
Change 3048754 on 2016/07/13 by Trung.Le
#jira UE-32159 Automatically regain focus after user gets mouse control during PIE session so we can continue process PIE keybinding commands
Change 3048756 on 2016/07/13 by Trung.Le
Removed default toggle pause/play keybinding from BaseInput.ini, instead we should use the action defined in DebuggerCommands that is customizable
Change 3048865 on 2016/07/13 by Trung.Le
#jira UE-32159 SGlobalPlayWorldActions widget shouldn't clear out active widget pointer when it's being handled properly
Change 3048892 on 2016/07/13 by Nick.Darnell
UMG - Fixing a problem with the interaction component, it now does some basic intelligent ignoring of anything it's attached to - excluding widget components. So it's easier to attach it to things that might be inside of a say a player collision capsule. Also removing the 'Max Interaction Distance' from the widget component as that is no longer the arbitor of interaction distance.
#jira UE-33250
Change 3049096 on 2016/07/13 by Trung.Le
Wrap SGlobalPlayActions around ViewportWidget instead of making it a child of ViewportWidget. This was causing PIE to stop working when there are other UMG in game.
#jira UE-33259
Change 3049177 on 2016/07/13 by Stephan.Jiang
Fixing the "No Animation Selected" tag shows up after switching back from Graph to Designer.
#UE-33016
Change 3049726 on 2016/07/14 by Stephan.Jiang
Adding icons for terrain mirror tool
#UE-20588
Change 3049957 on 2016/07/14 by Nick.Darnell
Slate - Fixing a small bug in the virtual user function - was preventing getting the same virtual user multiple times if it had already been created. Adding an option to the widget component to control the focusabilty of the underlying slate window that's created to host the widget content. Adding an option to the widget interaction component to control if it should be simulating mouse input at all - use this to effectively disable hit testing, and changing hover states and the like.
Change 3049994 on 2016/07/14 by Stephan.Jiang
Set viewed animtion to current animtion after switching from Graph to Designer
(This is for "No Animation Selected" showing up when switching)
#UE-33016
Change 3050194 on 2016/07/14 by Stephan.Jiang
Added ability to replace the widget the track is currently bound to
Also includes changes in WidgetBlueprintEditor to send delegate to AnimationtabSummoner when switching from Graph to Designer
#UE-31809
[CL 3050870 by Matt Kuhlenschmidt in Main branch]
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2756103 on 2015/11/05 by Jamie.Dale
Implemented UFont::GetResourceSize to work correctly with the Size Map tool
Change 2756104 on 2015/11/05 by Jamie.Dale
Changed the font used when a font is missing or invalid to be the last resort font, rather than the localized fallback font
The localized fallback font could cause different results based on your culture, and the last resort font makes it clearer that something is set-up incorrectly as it just draws invalid glyph markers for all of the text.
Change 2756105 on 2015/11/05 by Jamie.Dale
Fixed a crash when using an empty FKey property with a Data Table
FKeyStructCustomization was asserting because there were no objects being edited, due to a newly added Data Table containing zero rows.
I've removed this assert, and also updated SKeySelector to no longer require a separate argument to say whether multiple keys with different values are selected (this is now calculated from the call to get the current key, which will return an empty TOptional for multiple values).
#jira UE-22897
Change 2757015 on 2015/11/06 by Joe.Tidmarsh
SSProgressBar marquee tint. Accounts for widget color and opacity.
PR #1698
Change 2757156 on 2015/11/06 by Joe.Tidmarsh
Implemented "Go to Variable" functionality for widgets in Widget Blueprint Editor.
When we switch modes in UMG from Designer to Graph. We select the variable (In "My Blueprint"), if one exists, for the currently selected widget. Additionally we update the details panel.
* Added SelectGraphActionItemByName to FBlueprintEditor. This selects an item in My Blueprint and also displays it in the details panel of graph mode. SMyBlueprint is not available to FWidgetBlueprintEditor in UMGEditor module as it's privately implemented within Kismet.
#rb Ben.Cosh
#jira UE-20170
Change 2757181 on 2015/11/06 by Jamie.Dale
Cleaned up some duplication in UMG text widgets, and exposed the text shaping options
The common properties used by all text widgets that are text layout based have been moved into a UTextLayoutWidget base class, and all text layout based widgets now derive from this.
The options needed to control the text shaping method used by a text based widget have been exposed via the FShapedTextOptions struct. This contains a way to manage these optional (and advanced) overrides. You typically wouldn't change these from the default unless you knew exactly what you were doing (eg, you have a text block containing only numbers).
This change also updates SRichTextBlock to work with an invalidation panel in the same way that STextBlock does
Change 2757734 on 2015/11/06 by David.Nikdel
#UE4 #Editor
- Added support for meta=(TitleProperty="StructPropertyNameHere") on properties of type TArray<FSomeStruct>.
- This changes the editor rolled-up display of these values from "{0} members" to a stringified version of the specified property (if found).
#CodeReview: Matt.Kuhlenschmidt
Change 2758786 on 2015/11/09 by Joe.Tidmarsh
Border widget now correctly synchronizes padding property
#jira UE-23070
Change 2758791 on 2015/11/09 by Joe.Tidmarsh
Shadow of FCanvasTextItem should be drawn before the outline color. Consulted with Bruce.N who believes this is not the intended behavior and was an oversight when refactoring FCanvas (CL 1695138)
#jira UE-21623
#1608
#rb Simon.Tovey, Bruce.Nesbit
Change 2758813 on 2015/11/09 by Joe.Tidmarsh
UMG: Attempting to parent multiple widgets (in Hierarchy tree) to a widget that can't have multiple children will notify the user and ignore the operation.
[UE-22921] [CrashReport] Parenting multiple actors under border crashes editor
#jira UE-22921
Change 2759234 on 2015/11/09 by Nick.Darnell
Slate - Improving the way we track references to materials in slate to better keep things alive until they're no longer needed for rendering. Additionally, making it so the we use the material and texture free list when possible when cleaning up things as to not allocate new memory if not required. Concidentually this can help with problems with corrupted memory on destruct as well, because it means the memory isn't really going to become garbage any more.
#codereview Matt.Kuhlenschmidt, Bob.Tellez
Change 2760954 on 2015/11/10 by Nick.Darnell
Slate - A bug in the introduction of custom rendered elements accidentally broke filling out the texture coordinates for standard material usage. Materials should once again tile correctly just like images do.
#jira UE-23118
Change 2761129 on 2015/11/10 by Nick.Darnell
Slate - Removing the Pre-Multiply alpha path the way it was added, introducing it in a way that doesn't require changes inside the shader. Continuing to improve the SRetainerWidget to no longer have a frame delay between resizes and painting, also working on getting it handle clipping correctly but still not there yet.
Change 2761391 on 2015/11/10 by Alexis.Matte
jira UE-20281 and UE-22259
Fbx scene Re-import workflow
- First draft of the reimport workflow using a reimport asset in the content browser
#codereview nick.darnell
Change 2762323 on 2015/11/11 by Alexis.Matte
fix build compilation
Change 2762407 on 2015/11/11 by Jamie.Dale
UDataTable::SaveStructData now writes out dummy data when RowStruct is null
This didn't used to happen, which would cause a miss-match between what UDataTable::LoadStructData was expecting, and would result in a Data Table that could never be loaded again.
This change also improves the error message when editing a Data Table with a null row struct, and adds the editor-only RowStructName property to cache the name of the last used struct (for error reporting).
#jira UE-22789
Change 2762508 on 2015/11/11 by Nick.Darnell
UMG - Making it more obvious what keys do special stuff with anchors in UMG. Fixing the way snapping to anchors works with Control, it now only zeros out the side you're dragging instead of the entire widget, which was silly. Enhancing the designer message system to no longer be based on an enum and instead let arbitrary systems push and pop FText messages. Fixing animations in the anchor drop down to properly animate, broke when we introduced active timers.
Change 2763241 on 2015/11/11 by Nick.Darnell
Slate - We no longer allow popup windows to be larger than the primary display window for windows where max width/height is unspecified. This is to prevent accidential creation of tooltip windows that are larger than the driver allows causing crashes.
#jira UE-20336
- Fixed many Slate modules that failing to bracket compiler optimizations correctly (triggers new compiler error)
- Worked around compiler bug triggered by enums in Shared Pointer code
- Disabled compiler warnings about ".." in relative include paths (UE4's build system requires this)
[CL 2747901 by Mike Fricker in Main branch]
UE-14158 - Description of Parent Object Class
Fixed some issues where getting a localized string for a class tooltip would fail, and updated the class wizard to use FText so it can display localized descriptions.
[CL 2554964 by Jamie Dale in Main branch]
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]
The fact that the error message said "failed to add class" despite the class itself being added was causing confusion.
In the case where adding a new class fails to hot-reload (probably due a compiler error) we now state that the class itself has been added, but that you'll need to recompile the module before it will appear in the editor, and offer an easy way to open the output log to see more detailed compiler output. We also automatically close the class wizard so that you're not left looking at an error message saying that "the class name is already in use".
[CL 2515833 by Jamie Dale in Main branch]
Slate Widget was failing, because of missing Slate dependencies. Testing introduced a couple of problems which all was fixed by this CL:
1. I introduced AdditionalDependencies in .uproject file and change "Add Code To Project..." procedure to fill this array if needed. UBT reads this field and builds the project with required modules. Needed for Slate classes.
2. Changed UHT to #include missing headers in generated.h files if it was missing an include for it's super class. It was causing problems if we were trying to add a subclass of BrushShape -- BrushShape.h didn't have #include "Brush.h" and UBrushShape was inheriting from UBrush.
3. Above problems also occured for Slate classes, but not all of them was UCLASSes, so I had to fixed that manually.
4. "Add Code To Project..." functionality was not invalidating UBT makefiles, which lead to omitting new source files during hot-reloading (even thought it was reporting a success). This change also should improve a bit performance, cause right now there is no "gathering" step -- there is only invalidate step which is a lot quicker.
5. Fixed "Selected Class Source" link to source class in Slate Widget and Slate Widget Style class.
#codereview Robert.Manuszewski
[CL 2481488 by Jaroslaw Palczynski in Main branch]