#rnx
#rb none
#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869210 via CL 10869511 via CL 10869900
#ROBOMERGE-BOT: (v613-10869866)
[CL 10870549 by ryan durand in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 4125165 by Ben.Woodhouse
[INTEGRATE] Integrate from //UE4/Main/...@4124306 to //UE4/Dev-Console/...
Change 4136060 by Marcin.Undak
Editor: fixed device unclaiming
#jira UE-58464
Change 4190321 by Marcin.Undak
Linux: fixes for automation and RecordPerformance
#jira UE-61053
Change 4199010 by Marcin.Undak
Linux: remove unnecessary -g option
Change 4201876 by Marcin.Undak
First implementation of WebM media player for Windows and Linux
Change 4201922 by Marcin.Undak
Whitelisted WebMem plugin only for Windows and Linux
Change 4202203 by Marcin.Undak
WebM build fixes
Change 4223102 by Marcin.Undak
Vulkan: console commands for testing device lost
#jira UE-61789
Change 4225028 by Marcin.Undak
WebMMedia: disabled on Linux until fixed compilation issues
Change 4231444 by David.Harvey
UI - Fixing where the virtual cursor renders. It doesn't correctly take into account DPI scale, which isn't apparent except on the Xbox One.
Integrate as edit from CL 4166648.
#jira UE-62115
Change 4233057 by Marcin.Undak
TestPAL: added new test for string allocation size
Change 4234649 by Marcin.Undak
Linux: switched linux plaform to 16bit wide strings
Change 4235253 by Marcin.Undak
TestPAL: compilation fix for platforms that don't use DirectoryWatcher
Change 4235477 by Marcin.Undak
Linux: re-enabled WebMMedia plugin
Change 4242242 by Marcin.Undak
WebMMediaPlayer: implemented proper format retrieving. MediaFrameworkTest now works.
Change 4243321 by Marcin.Undak
WebMPlayer: static code analisys fix
Change 4243505 by Marcin.Undak
MediaFrameworkTest: added WebM video for testing
Change 4244646 by Marcin.Undak
WebMMedia: improved concurrency
Change 4244735 by Arciel.Rekman
Vulkan: skip unnecessary transitions properly (UE-62348, merge).
(Edigrating CL 4244274 from Release-4.20)
Change 4246685 by Arciel.Rekman
PhysX: remove Cygwin from %PATH% on Windows as it confuses CMake (UE-62326).
Change 4247808 by Marcin.Undak
WebMMediaPlayer: added support for seeking
Change 4254841 by Marcin.Undak
WebM: module dependencies fix
Change 4255124 by laz.matech
Updated UMG_AllPaletterWidgets' combo box to include options so that when selected, the dropdown presents 2 options instead of it appearing like it is broken
#jira none
Change 4256415 by Marcin.Undak
WebM: added missing editor module
Change 4256716 by Arciel.Rekman
Make SetReuseAddr() also set SO_REUSEPORT where available (UE-57076).
- Pull request #4617 by malavon.
#jira UE-57076
Change 4266049 by Marcin.Undak
Linux: UnrealLightmass and CrashReportClient compilation fixes
#jira UE-62521
#jira UE-62522
Change 4266678 by Arciel.Rekman
Merge speculative commit to get aligned pointer on mmap().
(Edigrating CL 4225330)
Change 4267998 by Anthony.Bills
Fix DBufferC clear color due to bad merge.
#jira UE-62649
Change 4269441 by Marcin.Undak
GenericPlatformStrings::VarArgs() implemented %-*s, %lu, %z, %h formatting
#jira UE-62582
Change 4269712 by Marcin.Undak
WebMMediaPlayer: removed LibSimpleWebM
Change 4272849 by Marcin.Undak
WebMMediaPlayer: fixed re-initialisation
Change 4277931 by Arciel.Rekman
Linux: switch to Vulkan by default (UE-62807).
- Default behavior: attempt Vulkan first, but in case of failure instead of quitting silently fall back to GL, unless -vulkan is passed.
- Forcing GL is still possible.
Change 4277965 by Arciel.Rekman
Fix standalone applications after the Vulkan switch.
Change 4277968 by Arciel.Rekman
Linux: make CrashReportClient headful (UE-14089).
- The -unattended flags keep even a headful CRC usable on the servers.
- ldd did not change. Need to check Localization stuff to see if there are any deployment concerns.
#jira UE-14089
Change 4279402 by Arciel.Rekman
Merge from 4.20.1: Vulkan: log validation errors. Also fix handling of some message types (UE-62628).
(Edigrating 4273516 from //UE4/Release-4.20/... to //UE4/Dev-Console/...)
Change 4279992 by Marcin.Undak
Linux: fix SlateViewer compilation
#jira UE-62831
Change 4285613 by Arciel.Rekman
Vulkan: fix mismatched layout.
- I tested with RecordPerformance on InfiltratorDemo and haven't found any impact.
Change 4285622 by Arciel.Rekman
Merged from 4.20.2: Linux: do not refuse to start if system limits cannot be raised (UE-62515).
- Too aggressive behavior, which can break cooking for no valid reason.
- If a commandline argument is used, the engine will still treat inability to raise the limits as an error.
(Edigrating 4273547 from //UE4/Release-4.20/... to //UE4/Dev-Console/...)
Change 4293083 by Arciel.Rekman
Merging //UE4/Main@4291654 to //UE4/Dev-Console
Change 4295297 by Marcin.Undak
Vulkan: temporary disable generic pipeline cache saving to prevent crashes
#jira UE-62848
Change 4300191 by Arciel.Rekman
Delete files added under lowercase directories.
Change 4300211 by Arciel.Rekman
Re-add files deleted in previous commit under camel-cased paths.
Change 4300895 by Arciel.Rekman
Linux: fix editor build
Change 4303543 by Ben.Marsh
Fix compile error for FortGPUTestBed.
Change 4305659 by Marcin.Undak
[Vulkan][Engine] Update the Vulkan RHI to obey r.VSync (and the vsync and novsync command-line arguments).
Change 4222769 by Jason.Stewart@Jason.Stewart_AMD_Dev_Rendering_threadripper-win10 on 2018/07/19 10:55:48
The original implementation ran into a latent thread hazard between the RHI thread and the rendering thread, where the rendering thread would try to use the backbuffer of the swap chain while the swap chain was being recreated (specifically after the swap chain recreation code had released and nulled out the back buffer, but before swap chain creation had actually happened to get a new back buffer). This implementation addresses that issue.
This is Tim's code. I'm just submitting it as Tim is currently out of office.
Change 4305661 by Marcin.Undak
Moved libwebm and libvpx inside WebMMediaPlayer directory
Change 4308659 by Marcin.Undak
Linux: fixed LLDB visualizers
#jira UE-52619
Change 4313650 by Marcin.Undak
WebMMediaPlayer: implemented looping
Change 4321713 by David.Harvey
removed hard-coded platform labels from device output log window in favour of ITargetPlatform::SupportsFeature + updated editor tooltip with correct platform list.
https://ec-01.epicgames.net/commander/link/jobDetails/jobs/8641984?
Change 4321942 by Brandon.Schaefer
Linux: Use the Target RHI list as the default ordering for which RHI is prefered
Also update the RHI list in the project settings for our default list
#jira UE-59487
#review-4316134 @Arciel.Rekman
Change 4322230 by Brandon.Schaefer
Treat %lf as %f in GenericWidePlatformString
#jira UE-62582
Change 4322392 by Brandon.Schaefer
Make sure our fmt size is large enough to check indexes
#jira none
Change 4322895 by Brandon.Schaefer
Actually get the current size of Src as it could have been moved down
#jira none
Change 4327866 by Brandon.Schaefer
Linux: Tell the platform misc what RHI we are using
#jira none
Change 4328926 by Brandon.Schaefer
Linux: Add haptic support for controllers
Github PR #4167 (thanks maiself!)
#jira UE-51681
Change 4328963 by Arciel.Rekman
TestPAL: improve the test by randomizing allocation size.
- The range will no longer be constrained to <=128KB at once, allocations can be as big as 16MB but they will unevenly distributed, with smaller sizes being more frequent.
Change 4329208 by Arciel.Rekman
hlslcc: suppressed benign compiler warning during the Linux build (UE-43988).
Change 4329283 by Arciel.Rekman
Linux: replace CachedOSPageAllocator with PooledVirtualMemoryAllocator for Linux.
For the explanation of FPooledVirtualMemoryAllocator, see PooledVirtualMemoryAllocator.h
For the details, test data and comparisons, message Arciel Rekman.
Relevant command line args added:
-vmapoolscale=<float> (defaults to 1.4)
-vmapoolevict
-novmapoolevict
By default, freed memory will not be evicted from RAM (unless running on a server)
Also changed:
- Removed the fixed-size pool previously used by Linux (and supporting machinery like scaling it on start)
- Replaced the way we manage free blocks from pointers to a bitmap to reduce memory footprint.
Change 4331946 by Luke.Thatcher
[CONSOLE] [^] (merging CL 4162064) Implement new thread heart beat clock to solve the suspend/resume problem across all platforms.
- The hang and hitch detectors now maintain their own clocks which are ticked by their respective threads.
- If the title is suspended, the ticking thread will stop and the clock will stop advancing. On resume, the maximum delta in the clock is clamped to a small value, so we ignore all the time the thread was not ticking for (i.e. the duration of the title being suspended).
- As such, we don't need any logic for handling PLM suspend/resume in the hang and hitch detectors, so this change removes that too.
#jira FORT-96886
Change 4331973 by Luke.Thatcher
[CONSOLE] [^] (merging CL 4183499) Add frame-present-based hang detection.
- RHIs call FThreadHeartBeat::PresentFrame() whenever they present a frame to the swap chain.
- These calls form a separate heartbeat from the thread-based ones, allowing the hang detector to fire if, for example, the game thread is stuck in an async loading loop and is ticking the game thread heartbeat, but making no progress.
- Also refactored ThreadHeartBeat.cpp to move hang detection logging into a FORCENOINLINE function. This will put OnHang and OnPresentHang at the top of the callstack in retail crash dumps, making the bucketing easier to recognise.
Change 4332200 by Luke.Thatcher
[CONSOLE] [+] (merging CL 4227517) Add PlatformDebugData to FShaderResource.
- We can use this to store platform specific shader symbols etc. The data gets serialized to the DDC and can be retrieved during a cook.
- Data is entirely discarded in cooked builds, and is a no-op on platforms which don't implement support for shader debug data.
- Bumped shader version to invalidate DDC keys.
Change 4332407 by Luke.Thatcher
[CONSOLE] [CORE] [!] (merging CL 4279686) Fixed unaligned integer load macro inconsistencies.
- Renamed PLATFORM_SUPPORTS_UNALIGNED_INT_LOADS to PLATFORM_SUPPORTS_UNALIGNED_LOADS
- Merged it with REQUIRES_ALIGNED_ACCESS and REQUIRES_ALIGNED_INT_ACCESS
- Fixed Linux platform which had both the old macros defined to 1, which is wrong because they are mutually exclusive.
Change 4333386 by Luke.Thatcher
[CONSOLE] [!] (merging CL 4317367) Fix compile error in AnimationCompression.h
Change 4334395 by Arciel.Rekman
Corrected PLATFORM_DESKTOP definition.
Change 4336190 by Anthony.Bills
(Original CL4314280) Use the debug file writer when using framepro. This buffers more data which should reduce stalls when writing out on certain platforms.
#jira none
Change 4336291 by Anthony.Bills
Use a clamped local clock when timing out the renderthread.
- This prevents suspend and resume issues on platforms where suspend events may not occur or the system clock is not set to the process time.
#jira none
Change 4336292 by Anthony.Bills
(Orignal CL 4195778) Fix printing of the hang detector multiplier and other logging.
"f" is the correct format specifier for a double.
#jira none
Change 4336307 by Anthony.Bills
(Orignal CL 4257875) Use the correct clock when printing the scoped hitch stat.
- Needs to be the internal FGameThreadHitchHeartBeat clock incase FPlatformTime::Seconds becomes out of sync with FrameStartTime.
#jira none
Change 4336321 by Anthony.Bills
(Original CL 4258186) Add GetNoInit function to FGameThreadHitchHeartBeat.
#jira none
Change 4336397 by Anthony.Bills
Fix redefinition of macro.
#jira none
Change 4336738 by Brandon.Schaefer
Linux: Add options for ASan, TSan, and UBSan
#jira UE-62784 UE-62803 UE-62804
Change 4336791 by Brandon.Schaefer
Linux: Add missing xml comments
#jira none
Change 4336957 by Joe.Barnes
Integrate as edit CL#4218145:
Convert some of our Vector macros to inline functions as thier names class with 3rd party functions.
#jira ue-61733
Change 4338228 by Arciel.Rekman
Switch to v12 Linux cross-toolchain (UE-63589).
#jira UE-63589
Change 4339195 by Ben.Woodhouse
Integrate-as-edit latest CSV profiler changes up to CL 4292187
Change 4339237 by Ben.Woodhouse
Integrate-as-edit CL 4226269
Add support for extern GPU stats, so we can use one stat across multiple CPPs
Fix the Forward rendering GPUProjection stat
Change 4339239 by Ben.Woodhouse
Integrate-as-edit CL 4292520
Support different sized buffers for FArchiveFileWriterGeneric per-platform so we can tune per-platform as needed.
No changes to existing defaults values of 1KB for read, 4KB for write:
#define PLATFORM_FILE_READER_BUFFER_SIZE 1024
#define PLATFORM_FILE_WRITER_BUFFER_SIZE 4096
#define PLATFORM_DEBUG_FILE_WRITER_BUFFER_SIZE 4096
Change 4339241 by Ben.Woodhouse
Integrate-as-edit CL 4210462
Comment out an assert while I investigate properly (doesn't appear to be fatal)
Change 4339265 by Anthony.Bills
[Linux] Fix ContainerBuildThirdParty.sh to pick the first default interface.
#jira none
Change 4339274 by Anthony.Bills
[Linux] Cache the bundled toolchain when using git builds.
- Also will not attempt to download the toolchain if AutoSDK or Multiarch root are specified.
#jira UE-63394
Change 4339623 by Anthony.Bills
[Linux] Update native toolchain buildscript to support clang 6.0.1
- Main issue was due to libxml2 as an extra dependency of some test libraries, so needs to be disabled via DLLVM_ENABLE_LIBXML2.
#jira UE-63588
Change 4339685 by Anthony.Bills
[Linux] Update toolchain setup script to download v12 when it is available.
#jira UE-63588
Change 4339833 by Ben.Woodhouse
[INTEGRATE] Integrate from //UE4/Main/...@4339548 to //UE4/Dev-Console/...
Change 4339843 by Ben.Woodhouse
Attempt to fix a weird possible bad merge issue
Change 4339890 by Ben.Woodhouse
Fix a build issue
#jira nojira
Change 4340314 by Anthony.Bills
Fix mesh decal rendering when write mask is enabled and no deferred decals are in the scene.
#jira UE-55159
Change 4341099 by Marcin.Undak
Mediashader fix
#jira UE-63650
Change 4341106 by Marcin.Undak
QAGame: added MediaPlayer for Linux test
#jira UE-59667
#jira UE-62775
#jira UE-62780
Change 4341107 by Marcin.Undak
WebMMediaPlayer: blacklist all not supported platforms
#jira UE-59667
#jira UE-62775
#jira UE-62780
Change 4341110 by Marcin.Undak
WebMMediaPlayer: enable for Unix platforms
#jira UE-59667
#jira UE-62775
#jira UE-62780
Change 4341804 by Luke.Thatcher
[CONSOLE] [!] Fix memory scribble in black depth texture cube on platforms with 16-bit depth.
- Original code was writing a FColor into the locked texture data, which causes a 2 byte scribble if the PF_ShadowDepth format is 16-bits.
[!] Also fixed GWhiteTextureCube being black. FColor::White is not a compile-time constant, so an initialization order problem meant the value of FColor::White is actually black when the GWhiteTextureCube constructor runs.
#jira none
Change 4342244 by Anthony.Bills
[Linux] Allow restarting the crashed application from the crash report client
#jira UE-62903
Change 4342636 by Brandon.Schaefer
Linux: Update LLVM libc++.a libc++abi.a with version 6.0.1
#jira UE-63587
Change 4343420 by Marcin.Undak
Fixed assert in console
#jira UE-63643
Change 4345166 by Luke.Thatcher
[CONSOLE] [!] (merging CL 4345072) Fix initialization order bug with FColor and FLinearColor constants.
- The original constants were dynamically initialized during startup. Using these constants from other global constructors may result in getting the wrong value (transparent black) if a given constructor runs before FColor/FLinearColor's constructor.
- Adding constexpr to the FColor/FLinearColor constructor makes these constants known at compile-time, and included in the readonly data section, so they don't require dynamic initialization.
[~] Also restores the original constant color values in RenderUtils.cpp
#jira none
Change 4345860 by Arciel.Rekman
Make StompMalloc return 16-byte aligned memory on 64 bit platforms (UE-63743).
#jira UE-63743
(Edigrating 4345734 from Release-4.20)
Change 4345950 by Brandon.Schaefer
Linux: Remove libelf/libdwarf fallback for symbolicating symbols during a crash
#jira UE-63103
Change 4350249 by David.Harvey
helper function to retrieve an LLM tag's name, including platform tags.
Change 4351184 by Ben.Woodhouse
[INTEGRATE] Integrate from //UE4/Main/...@4348973 to //UE4/Dev-Console/...
Change 4351593 by Ben.Woodhouse
Clean up aggressive batching (remove xbox specific #if and //TODO)
#jira UE-46780
Change 4351734 by James.Cobbett
Setting TM-ShaderModels_Niagara to always load
Change 4351984 by Marcin.Undak
QAGame: restored platform media source in TM-ShaderModels map
Change 4353508 by Ben.Woodhouse
[INTEGRATE] Integrate from //UE4/Main/...@4353110 to //UE4/Dev-Console/...
Change 4354237 by Anthony.Bills
[Linux] Fix Linux compilation issues due to change over to TCHAR being char16_t.
#jira UE-63544
Change 4354334 by Anthony.Bills
[Linux] (Missing file from CL 4354237) Fix Linux compilation issues due to change over to TCHAR being char16_t.
#jira UE-63544
Change 4355994 by Brandon.Schaefer
Linux: Agree not Agreed
#jira UE-63937
Change 4356068 by Joe.Barnes
Replace a duplicate DEFINE_EXPRESSION_NODE_TYPE(bool,...) causing errors with iOS unity build compiles. Remove version in ExpressionParser.cpp and include TextFilterExpressionEvaluator.h.
#jira ue-63877
Change 4357726 by David.Harvey
[iOS] add clean support for device output log, after catchup.
#jira none
Change 4357724 by Ben.Woodhouse
[INTEGRATE] Integrate from //UE4/Main/...@4357176 to //UE4/Dev-Console/...
Change 4359634 by Ben.Woodhouse
[INTEGRATE] Integrate from //UE4/Main/...@4359072 to //UE4/Dev-Console/...
Change 4359958 by Ben.Woodhouse
Fix FortGPUTestbed merge issues via p4 copy (content files didn't get moved before for some reason)
Change 4361108 by Anthony.Bills
Fix webm deprecation issues with DrawPrimitiveUp.
#jira UE-64012
Change 4361896 by James.Cobbett
Re-saving materials so that they render correctly outside of the editor.
Change 4362262 by Anthony.Bills
Fix for WebM video decoder crash.
#jira UE-64025
[CL 4362700 by Joe Barnes 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 3528776 by Yannick.Lange
Allow thumbnails to be captured from a viewport always.
#jira UE-45392
Change 3564359 by Yannick.Lange
Back out part of changelist 3528776: Revert allowing thumbnails to be captured from a viewport to fix UE-47827 & UE-47785.
#jira UE-47785, UE-47827
Change 3740671 by Matt.Kuhlenschmidt
Make the font editor canvas respect dpi scale
Change 3740810 by Josh.Engebretson
PR #4138: Log GenerateProjectFiles to file when using UVS (Contributed by projectgheist)
#jira UE-51358
Change 3740939 by Cody.Albert
Fixing some #ifdefs that should be #ifs
Change 3741089 by Alexis.Matte
Make sure bImportBoneTracks is set to true when importing into level
#jira UE-51999
Change 3741101 by Alexis.Matte
Fix the import material search
#jira UE-51857
Change 3741690 by Jamie.Dale
Guard against an invalid index in SLocalizationCommandletExecutor::Tick
#jira UE-52067
Change 3741710 by Jamie.Dale
Made a static variable also const
Change 3741724 by Michael.Dupuis
Added missing shader cache
Change 3742037 by Lauren.Ridge
Details panels can now "own" a color picker so a different details panel refreshing doesn't close it. Also fixed refreshing state of the graph after changing texture or color parameter values
Change 3742250 by Matt.Kuhlenschmidt
PR #4185: Output Log Filter tooltip shows %s instead of category. (Contributed by LordNed)
Change 3742308 by Lauren.Ridge
Adding axis input to the material editor's viewport client
Change 3742380 by Matt.Kuhlenschmidt
USD importer improvements
- USD now stores source file information for reimports
- Fixed bug where no geometry would be imported if an exporter had set a time code even without animated data
- Prevent a crash if a mesh doesnt have enough valid data to be imported
Change 3742536 by Matt.Kuhlenschmidt
Remove usd wrapper test project
Change 3743564 by Alexis.Matte
Fix skeletal mesh screen size auto set value when importing a LOD
#test none
#jira UE-52100
Change 3743582 by Lauren.Ridge
Fixing non-desktop compiles
Change 3743598 by Lauren.Ridge
Fixing shadowed variable by renaming the global color picker weak ptr variable.
Change 3743636 by Lauren.Ridge
Creating a new parameter immediately allows naming
Change 3743855 by Michael.Dupuis
Added missing shader from cache
Change 3744277 by Lauren.Ridge
Don't show empty Global group if it only contained the material layer param.
Change 3744330 by Lauren.Ridge
Clarifying "no parameter" text
Change 3744529 by Lauren.Ridge
Making Save to Child and Save To Sibling buttons work for material layer params, show on material layer param panel
Change 3744668 by Chris.Bunner
Added shared layer input collection asset, a list of float/texture redirectors that allow setting globally in a material graph then retrieving within layer/blend graphs.
Added output for number of unique shaders generated by a particular material instance.
Show instruction counts when working on a material layer.
Relaxed restrictions on material layers, base MA input is now optional.
#jira UETOOL-1271, UETOOL-1278, UETOOL-1279
Change 3744669 by Chris.Bunner
Added automated test for material layers, layer/blend instances and shared inputs.
Change 3744754 by Laz.Matech
Adding localization data to QAGame for the Realtime Preview localization test.
#jira none
Change 3744860 by Michael.Dupuis
#jira UE-52049 : Do not update random stream in most case, only when adding new instances, or filling from built data
Change 3744965 by Chris.Bunner
Rebuilt lighting in automated test map and updated reflection capture screenshot.
Change 3746015 by Michael.Dupuis
#jira UE-52090: Added missing shader for forward rendering
Change 3746038 by Michael.Dupuis
#jira UE-51494: Make sure index is valid for this instance as instances from template and instance could mismatch due to in level changes
Change 3746076 by Michael.Dupuis
Removed unused code
Change 3746998 by Tim.Gautier
QAGame: - Renamed UMG_RealtimePreview > UMG_InEditorPreview
- Moved UMG_InEditorPreview into UMG > Localization, setting up for future Localization tests
Change 3747206 by Arciel.Rekman
Linux: make UI scale more coarse to prevent unnecessary scaling (UE-52086).
- Monitors whose physical dimensions fall in range of 80-110 DPI should still have scale=1.0.
(Edigrating CL 3740942 from Release-4.18 to Dev-Editor)
Change 3747211 by Arciel.Rekman
Make failure to launch SCW more apparent to the user (UE-47263).
- Fixes frequent crash on Linux.
(Merging 3747070 from Release-4.18 to Dev-Editor)
Change 3747726 by Tim.Gautier
QAGame: Resubmitting updated Loc files
Change 3747872 by Tim.Gautier
QAGame: Resubmitting compiled Loc assets
Change 3748118 by Lauren.Ridge
Adding help text to the material layers preview tab
Change 3748398 by Lauren.Ridge
Fixing tooltips for the material layer read-only preview
Change 3748565 by Arciel.Rekman
Linux: fix RHIs settings being wrong when removed via project properties (UE-51203).
- This was a deeper issue with config system than just Linux RHIs.
- This is a better fix than one submitted to 4.18 branch in CL 3747086.
Change 3749441 by Matt.Kuhlenschmidt
PR #4201: Fix a typo in a comment. (Contributed by dneelyep)
Change 3749442 by Matt.Kuhlenschmidt
PR #4195: Incorrect specifier used for FText::Format (Contributed by projectgheist)
Change 3749496 by Matt.Kuhlenschmidt
Fix static analysis
Change 3749805 by Lauren.Ridge
Fixing reset to default on MaterialLayerParam in base material
Change 3749838 by Lauren.Ridge
Also correctly resetting names and layer states
Change 3750442 by Mieszko.Zielinski
Added a safety check which addresses the crash #UE4
Note that this is a temp fix. A proper fix is making sure ConvexShapeIndices doesn't contain any duplicates and will be inplemented in Dev-Framework.
#jira UE-52123
Change 3752266 by Arciel.Rekman
OpenGL: remove PLATFORM_WINDOWS exceptions.
- Discrepancy in behavior between Windows and Linux OpenGL is unhelpful for bug reproducibility.
- VAB bug should have been fixed long ago (on both platforms).
Change 3752929 by Arciel.Rekman
Linux: avoid crashing on unknown drivers.
- See https://answers.unrealengine.com/questions/724100/crashes-on-startup-after-first-run.html
- Checks in IsDeviceIntel() and such fail if the drivers were not detected.
Change 3753254 by Michael.Dupuis
Added missing shader for shader cache
Change 3753426 by Michael.Dupuis
#jira UE-5751: Added the possibility to change material instance exposed params at runtime using a MID for texture, vector and scalar for 1 component or all components
Change 3753440 by Alexis.Matte
Fix fbx scene importer morph target import crash
#jira UE-52255
Change 3753457 by Michael.Dupuis
build fix
Change 3753700 by Chris.Bunner
Make GetSharedInput preview fallback always available in editor as this should handle previews, thumbnails and other editor-only cases.
Refactor to remove duplicate code in material translator.
Material layer expressions are required for client load, fixes cooked builds using layer instances in the base material layer stack.
Change 3754760 by Chris.Bunner
Tidying up EngineTest/ShaderModels map.
Change 3754765 by Arciel.Rekman
Avoid placing tooltip windows under the cursor (UE-12288).
- Fixes inability to use some corners of the screen on Linux (the tooltips there aren't click-through).
Change 3754788 by Matt.Kuhlenschmidt
Fix details panel crash after compiling blueprints that have edit conditon properties
Change 3754933 by Christina.TempelaarL
Fixed typo in heightLerp (transistion->transition).
#jira UE-46736
Change 3754946 by Cody.Albert
Update loading movie code to properly calculate delta time when throttled at 60fps
Change 3755059 by Jamie.Dale
Fixed game preview language not updating in realtime while PIE was enabled
#jira UE-52209
Change 3755130 by Jamie.Dale
Fixed game preview language not updating from native when switching between preview languages
#jira UE-52348
Change 3755664 by Michael.Dupuis
Fixed compile warning
Change 3755714 by Yannick.Lange
Always allow capturing thumbnails from viewport.
This also hides the thumbnail editing UI when a thumbnail was captured from a viewport.
Change 3755944 by Alexis.Matte
Fix crash when importing morph target with "built in" tangent option
#jira UE-52319
Change 3756109 by Christina.TempelaarL
fixed FBX importer Import Textures tooltip, UMaterial -> Material in tooltip text
#jira UE-48389
Change 3756169 by Jamie.Dale
Added plural form pattern to SContentBrowser::GetPathText
Change 3756493 by Laz.Matech
Updating Localization content to further test InEditor Preview Language in UMG
#jira none
Change 3758336 by Alexis.Matte
Fix a crash when importing morph target there was a unsync between some buffer depending on the import options
#jira UE-52319
Change 3758947 by Jamie.Dale
Fixed cursor position regression in search boxes
This was caused by a call to SetText that was added in CL# 3627864
This caused the text to update as it was changed, which made the cursor jump to the end of the text and made it impossible to type in the middle of a search term.
This was done as a bound FText value had been passed to the InitalText of SSearchBox, which made the text resolution behave strangely. InitalText should always be a value, and SSearchBox now resolves any bindings during its constructor.
#jira UE-48874
Change 3759000 by Laz.Matech
Submitting the .PO file for CL 3756493
#jira none
Change 3759480 by Matt.Kuhlenschmidt
Safe guard against brush details crash
#jira UE-52278
Change 3759665 by Matt.Kuhlenschmidt
PR #4214: UE-52249: Use valid PreviewShadowsIndicatorMaterialName (Contributed by projectgheist)
Change 3761211 by Matt.Kuhlenschmidt
Remove the restriction that a level must be writable to be locked/unlocked.
Fixed duplicate icons being used by the level browser
Change 3761304 by Chris.Bunner
MaterialAttributeLayers graph node BaseMA input is no longer required.
Note: Requires "Use Preview Value" set to true on inputs.
Change 3761307 by Chris.Bunner
New material layers and blends will have "Use Preview Value" set to true by default to avoid the need for connected inputs - Missed file on previous commit.
Change 3761357 by Chris.Bunner
Renamed material shared input enum.
Change 3761419 by Chris.Bunner
Updating material layers automated test assets after recent changes.
Reverted some naming changes so existing screenshot tests can be reused.
Change 3762058 by tim.gautier
QAGame: Adding Material Layer assets for testing (Content/Materials/LayerFunction)
Change 3763328 by Matt.Kuhlenschmidt
Fix Slate warning at editor startup
Change 3763354 by Alexis.Matte
Fix skeletal mesh material assign when reducing a LOD that was import from a file using simplygon reduction
#jira UE-52505
Change 3763501 by Matt.Kuhlenschmidt
Prevent shared asset thumbnail pools from having their resources forcefully released when they are in use. ReleaseResources is now private and only called on destruction of the pool
Change 3763574 by Matt.Kuhlenschmidt
Fix slate material box brushes not being keyed off image size
#jira UE-40219
Change 3763678 by Jamie.Dale
Disable realtime level editor viewport if running under remote desktop
This makes the main editor window much more responsive by default under remote desktop
Change 3763679 by Jamie.Dale
Added asset caching metrics for the loc gather
Change 3763693 by Matt.Kuhlenschmidt
Changed the code that activates the actor details tab when selection changes to a flash. There are simply too many things that change the selection and steal focus away from a tab being used
#jira UE-51754
Change 3763826 by Michael.Dupuis
Fixed Fortnite cooking crash
Change 3763864 by Harrison.Moore
Adding New Default 'LayerBlend' assets
Change 3764028 by Christina.TempelaarL
#jira UE-47695 Auto LOD bug
Moved the sections dropdown to the LOD Picker category and modified Custom cb behavior, based on suggestions from charlie.
Change 3764031 by Christina.TempelaarL
#jira UE-47695 Auto LOD in StaticMeshViewer
moved LOD combo widget to LOD picker category and hide custom checkboxes until custom checked.
Change 3764076 by tim.gautier
QAGame: Submitting UMG_Multitouch_test for initial Multitouch testing
Change 3764263 by Matt.Kuhlenschmidt
Fix the floor mesh thumbnail
Change 3764284 by Chris.Bunner
Removing some asserts for cases that can validly fail and are already handled.
Change 3764372 by Matt.Kuhlenschmidt
PR #4196: Show edit icons in editor (Contributed by projectgheist)
Change 3764388 by Chris.Bunner
Fixing logic for material, function and instance updating active materials and instances and their editors.
Change 3764674 by Harrison.Moore
test materials added, Blend updates
Change 3764681 by Harrison.Moore
Adding HMtest map
Change 3766238 by Chris.Bunner
Material layer callers need to let their internal material function calls update their inputs/outputs.
Change 3766556 by Jamie.Dale
Fixed crashes that could happen if some of the data table panels were closed
We now always create the underlying widgets, even if they're currently hidden from view
#jira UE-52552
Change 3767753 by Chris.Bunner
When rebuilding a material function instance editor we must re-create and re-apply the proxies as the expressions have likely changed. Take care to maintain local parameter changes as these have not been saved yet.
Change 3768719 by Michael.Dupuis
#jira UE-52521: Prevent possible crash if a segment have no point or invalid point
Change 3769157 by Jamie.Dale
Fixed incorrect text selection if selecting via double click beyond the bounds of the line
It would previously select the second to last word, rather than the last word
#jira UE-51609
Change 3769159 by Harrison.Moore
Belica Test update, New layer blends updated with texture type fix.
Change 3769205 by Jamie.Dale
Fixed Windows file save dialog not appending the correct extension when there were multiple options available
#jira UE-52180
Change 3769220 by Harrison.Moore
Layer blend tweaks
Change 3769292 by Jamie.Dale
Removing redundant code
Applying the correct package ID, only to then strip it off again is rather pointless
Change 3769479 by Arciel.Rekman
UBT: Use response files for compiler when compiling for Linux.
- Some command lines are too long when cross-compiling on Windows.
Change 3769920 by Arciel.Rekman
Linux: convert yet another initialization crash to a user-friendly message (UE-52457).
#jira UE-52457
Change 3771055 by Alexis.Matte
Make sure we set the Used by morph target material flag to material use by the morphtarget instead of all skinned mesh component
Use the morph vertex factory only for section that has active morph target
#jira UE-51483
Change 3771135 by Michael.Dupuis
Fixed fortnite cooking
Change 3773054 by Yannick.Lange
Avoid loading viewport interaction assets when starting the editor.
Change 3774184 by Arciel.Rekman
Linux: disabled some gdb visualizers until the issue is fixed.
- CL 3773942 by CengizT.
Change 3774303 by Matt.Kuhlenschmidt
Pull requests to fix various typos
Change 3774305 by Matt.Kuhlenschmidt
PR #4237: Visual Studio Repeatedly Opens (UE-51608) (Contributed by LordNed)
#jira UE-51608
Change 3774701 by Arciel.Rekman
OpenGL: fix ARB callback errors when hitting Build Lighting.
- Merged from 4.18 shelf.
Change 3775812 by Matt.Kuhlenschmidt
Fix One-off crash undo-ing while working with Material Params / Material Functions
#jira UE-52680
Change 3775849 by Matt.Kuhlenschmidt
More info for UE-52610
Change 3775850 by Matt.Kuhlenschmidt
Guard against mesh paint crashes
#jira UE-52618
Change 3775904 by Matt.Kuhlenschmidt
Added logging to track down window shutdown issues
Change 3775913 by Matt.Kuhlenschmidt
Pull requests for typos
#jira UE-52751, UE-52748
Change 3776676 by Jamie.Dale
Fixed being able to insert tabs into spin boxes with units
#jira UE-52776
Change 3777006 by Michael.Trepka
Process Mac windowDidBecomeMain and windowDidResignMain notifications immediately instead of deferring them. This solves issues with Slate code that closes and immediately opens new menu windows. Previously closing a window would schedule menu parent's activation event that could be processed after another menu's creation, making it immediately disappear.
#jira UE-52145
Change 3777170 by Arciel.Rekman
Linux: use Xft.dpi (most desktop environments expose their scale through that) as a DPI value (UE-52086, UE-52766).
- Change by Brandon.Schaefer.
- Limitation: no per-monitor DPI.
(Edigrating CL 3776509 //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3777292 by Arciel.Rekman
Linux: fix symbol collision causing problems with AMD drivers (UE-51843).
- We cannot have elf_end() hidden, because libcuda.so calls elf_end from libnvidia-fatbinaryloader.so and this breaks linking monolithic binaries ("hidden symbol referenced in DSO").
- We cannot have elf_end() visible, because of a name collision with a different libelf used by AMD drivers.
- The only possible workaround is to have elf_end() renamed.
(Edigrating CL 3777242 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)
Change 3777686 by Joe.Conley
Blueprint editor variable type tooltips: fix case mismatch that was preventing type name to be displayed properly in soft object/class reference tooltips.
Change 3778180 by Jamie.Dale
Avoid a crash if a regex pattern or matcher outlive ICU during shutdown
#jira UE-52770
Change 3778182 by Jamie.Dale
Avoid a crash if a break iterator outlives ICU during shutdown
Change 3778368 by Jamie.Dale
Added missing pragma once
Change 3778560 by Matt.Kuhlenschmidt
Prevent non-shared DDC notification from triggering for epic internal builds
Change 3778709 by Lauren.Ridge
Copying 4.18.2 array reordering propagating to children fix (originally 3778547)
Change 3779205 by Lauren.Ridge
Duplicating 3776649 to fix a crash on compile due to partial GC of a widget.
#jira UE-52260
Change 3779217 by Brandon.Schaefer
GitHub #3678 Fix Setup.sh handling of special characters in PNG path
#jira UE-46103
Change 3779341 by Brandon.Schaefer
GitHub #3012 Use elemtry OS versions to set the ubuntu versions for depencies
#jira UE-39364
Change 3780274 by Joe.Conley
DataTables: Add documentation tooltips showing type information to header columns
Change 3780840 by Alexis.Matte
Do a re-import when user re-import LOD 0
Prevent importing more then MAX_SKELETAL_MESH_LODS
#jira UE-52373
Change 3781067 by Arciel.Rekman
Linux: fix OSSSteam cross-compilation (and CIS).
- Broken by previous change that put compile-time arguments into response file and bulk-replaced \ with /, which affected things like Definitions.Add("STEAM_SDK_VER_PATH=TEXT(\"Steam" + SteamVersion + "\")");
Change 3781110 by Christina.TempelaarL
#jira UE-47695 moved Static Mesh Editor LOD menu from tools to viewport tool bar
Change 3781531 by Christina.TempelaarL
#jira UE-47695 added LOD menu to Static Mesh Editor viewport
Change 3781663 by Alexis.Matte
Fix for cancel export fbx when previewing animation sequence export
#jira UE-49743
Change 3782007 by Jamie.Dale
Improved the ability to lockdown available game languages
In addition to the previous "DisabledCultures" array, you can now add an array of "EnabledCultures" (using the same per-build config filters) to explicitly list the cultures that are allowed to be used in your build (if the list is empty, then everything is allowed unless otherwise disabled).
This also stops the game from attempting to fallback to the native language if the native language has been disabled (we will fallback to the first available language instead).
Change 3782122 by Jordan.Walker
test assets for material layers
Change 3782131 by Joe.Graf
Added support for IOS and TVOS targets when generating CMake files on Mac
Change 3782218 by Christina.TempelaarL
fixing include paths and capitalization causing build errors.
Change 3783171 by Michael.Dupuis
Added the possibility to override default LOD rules for visible primitive and whole scene shadow casting primitive
Added the possibility to store Custom data per view for the frame duration
Change 3783172 by Michael.Dupuis
#jira UE-35097 : Refactored landscape rendering logic to improve general performance while using new custom data and custom lod feature
Exposed many new settings to control component using sub sections rendering, tessellated component, shadow should be include into tessellation, tessellation falloff based on camera location
Changed how LOD distribution is done to be in screen size instead of distance.
Give the possibility to have a different distribution for LOD0 vs the other one.
Change 3783174 by Michael.Dupuis
missing file to landscape refactor
Change 3783315 by Lauren.Ridge
Changing a parameter in the Material Parameter Panel now dirties the material correctly.
Changing a layer parameter in the Material Instance Editor now refreshes the details panel as well.
Change 3783374 by Chris.Bunner
Adding MaterialSharedInputCollection to hidden list when MaterialLayers disabled.
Change 3783617 by Chris.Bunner
Added a Channel Mask material expression parameter. Wraps up a vector parameter and dot product with a single channel selection interface, internally a regular vector parameter.
Fixed GetSharedInput failing to return the preview texture in the Function Instance editor.
Change 3783676 by Lauren.Ridge
Adding access to a material function instance's parent in the Material Instance Editor
Change 3783751 by Michael.Trepka
PR #4248: Fixed C++ std in generated Xcode project to match rest of engine (C++14) (Contributed by Bo98)
Change 3783971 by Brandon.Schaefer
Rename/Move all deploy/Deploy folder/files into AlembicDeploy. Due to case sensitivity on linux, need to maintain the correct case.
#jira UE-37631
Change 3783992 by Michael.Dupuis
#jira UE-35097: Remove tessellation on editor tools
Fixed a case where tessellation multiplier at 0 would cause the component to not be visible
Fixed minor tessellation falloff calculation error
Change 3784502 by Chris.Bunner
Restored missing bool setter.
Coding standards fix.
Change 3784614 by Arciel.Rekman
Linux: better error message when running out of inotify watches (UE-50459).
#jira UE-50459
Change 3784620 by Chris.Bunner
Updated LayerBlend_TextureMask to use new ChannelMask parameter.
Change 3784725 by Lauren.Ridge
Fixing groups not sorting correctly
Change 3785645 by Chris.Bunner
Non-editor compile fix.
Change 3785666 by Arciel.Rekman
Linux: restore ability to use Wayland instead of X11.
- SDL libs recompiled and Wayland version is set to lower one to be compatible with the compositor shipped on Ubuntu 16.04 LTS
- Change by Anthony.Bills.
Change 3785708 by Arciel.Rekman
Linux: implement voice capture using SDL (non-server only) (UE-51298).
- Based on pull request #4131 by mkirzinger.
Change 3785878 by Arciel.Rekman
UBT: add VSCode to default generators on Linux.
Change 3786058 by Arciel.Rekman
Do not add dependencies on other RHIs for servers (UE-48894).
- Pull request #3944 contributed by pfoote.
#jira UE-48894
Change 3786845 by Arciel.Rekman
Code changes to make gcc support easier (UE-51978).
- Contributed by a licensee (pull request #4181 by tomwardio "Collection of fixes to allow UE4 to be compiled by GCC on Linux").
Change 3786871 by Matt.Kuhlenschmidt
Fix static analysis
Change 3786883 by Matt.Kuhlenschmidt
Fix HTML5
Change 3786923 by Matt.Kuhlenschmidt
Fix engine layer blend asset referencing game content. This is not allowed
#jira UE-52888
Change 3786927 by Brandon.Schaefer
Linux: Alembic support
#jira: UE-37631
Change 3786994 by Arciel.Rekman
Remove support for /-prefixed switches (UE-47429).
- They collide with absolute file paths on Mac/Linux and a source of inconsistencies between platforms.
#jira UE-47429
Change 3787032 by Michael.Trepka
Initial support for building and running Niagara on Mac
Change 3787035 by Brandon.Schaefer
GitHub #4166 Undef GL entrypoint macros after use
#jira UE-51663
Change 3787144 by Lauren.Ridge
Fixing material parameter group association resetting after undo
#jira UE-52514
Change 3787839 by Jordan.Walker
updated engine level layer blends to not include game content
switched them to use Chris B's new mask selection node
Change 3787967 by Lauren.Ridge
Fix for broken layer groups, related crash
Change 3787991 by Lauren.Ridge
Fixing thumbnails for material function instances, resolving not being able to delete new function instances
#jira UE-52967
Change 3788226 by Michael.Trepka
Fixed a deadlock when closing Mac CrashReportClient which resulted from changes in CL 3777006
#jira UE-53002
Change 3788557 by Brandon.Schaefer
Fix shadow compiler warnings around our includes
Change 3789700 by Lauren.Ridge
Experimental setting for turning on Material Layers - off by default.
Change 3789703 by Jamie.Dale
Harden the LocMeta and LocRes loading to prevent loading files that are too new
Change 3789706 by Jamie.Dale
Added localization ID to the package summary
This will allow the localization gatherer to query it without having to load the entire package
Change 3789708 by Jamie.Dale
Added a way to display and reset the package localization ID via the Content Browser
Change 3789709 by Jamie.Dale
Added warning for duplicate package localization IDs when gathering asset localization
Change 3789713 by Jamie.Dale
Special case zero-width space in the text shaper to avoid fonts rendering the fallback glyph
Change 3789736 by Christina.TempelaarL
Fixed recently-introduced StaticMeshEditor bug - changing LOD dropdown menu selection was not changing LOD sections category.
Change 3789853 by Chris.Bunner
Material instances should return overridden values when the caller is requesting the default, not leaving the request to fall through to the base material.
#jira UE-52796
Change 3790185 by Brandon.Schaefer
Add better error handling when using new SDK for linux on windows.
#jira UE-50527
Change 3790195 by Jamie.Dale
Fixed line-ending inconsistency when retrieving rich-text
We were using LINE_TERMINATOR when getting the offsets, but \n when getting the text
Change 3790473 by Chris.Bunner
When finding expression by GUID, only return FunctionCall result if expression was found. Fixes cases where searched-for expression is after a FunctionCall in the expressions list.
#jira UE-52729
Change 3790650 by Arciel.Rekman
UBT: Linux: print build details first before refusing to build.
- Tweak to the previous feature that we forgot.
Change 3790681 by Arciel.Rekman
UBT: Linux: tweaks to wording (SDK -> toolchain).
Change 3791459 by Brandon.Schaefer
Linux: libcurl rebuild for version 7.57
#jira OGS-870
Change 3791533 by Arciel.Rekman
Better error messaging when UMB is unusable (UE-50658).
- Should be replaced by a better fix, but merging this workaround in case the better fix will not be done in time for 4.19.
(Edigrating CL 3789387, 3789787 from Release-4.18 to Dev-Editor)
Change 3791885 by Matt.Kuhlenschmidt
Fix static analysis
#jira UE-53097
Change 3791910 by Brandon.Schaefer
Fix for not using proper libraries on x86_64 for libcurl
#jira OGS-870
Change 3792017 by Jamie.Dale
Fixed a conflict between the path settings and favorite settings
Change 3792022 by Jamie.Dale
Fixed a crash that could happen when performing ARO on the property chains of a struct
#jira UE-52999
Change 3792025 by Jamie.Dale
Changed package summary localization ID to be versioned by the object version to avoid changing data in unversioned cooked assets
Change 3792066 by Michael.Dupuis
#jira UE-5751: Fixed possible crash when using dynamic matrial instance
Added missing shaders for landscape when using tessellation
Change 3792718 by Arciel.Rekman
OpenGL: bringing back Windows workarounds to unblock copy-up (UE-52534).
#jira UE-52534
Change 3793018 by Mike.Erwin
new glTF importer plugin
Import StaticMesh, Material, and Texture assets from the Khronos glTF 2.0 format. Text (.gltf) and binary (.glb) files are supported.
Limitations:
- There is no options UI. All assets from the file are imported.
- The glTF format can describe animation and whole scenes, but the initial version of this plugin does not attempt either.
- Data encoded as Base64 data URI is not supported. This is uncommon but is part of the glTF spec.
#jira: UE-50695
Change 3793626 by Matt.Kuhlenschmidt
Logging for HTML5 issue
Change 3794034 by Matt.Kuhlenschmidt
Fix CIS
Change 3794271 by Michael.Dupuis
#jira UE-53133: Fxed shadow calculation when using non whole scene shadow
Change 3794273 by Chris.Bunner
Function call material nodes should be created with no outputs by default.
#jira UE-53127, UE-53128, UE-52616
Change 3794334 by Lina.Halper
- Fix animation reinitializing when just setting new animation with single node
- Deprecated GetScalarParameterDefault and replace that with GetScalarParameterDefaultValue
#jira: UE-52796
Change 3794338 by Michael.Dupuis
Fixed lod visual popping when texture mip used for landscape is not ready
Change 3794350 by Mike.Erwin
Fix glTF importer header includes.
Build was failing on Linux.
Change 3794357 by Michael.Dupuis
#jira UE-53166: buildfix: removed phase 2 landscape optim leftover...
Change 3794549 by Michael.Dupuis
#jira UE-53166 : fixed compile error
Change 3794755 by Matt.Kuhlenschmidt
Fix automation warning
Change 3794910 by Lina.Halper
Change material default value to be red to keep the behavior same.
- Previous code was getting default value of parent, which was wrong, but now since we're grabbing correct value, it's not doing what it meant to do. Changed content to keep same value as parent as default.
Change 3795296 by Mike.Erwin
glTF: fix Linux build errors
A variable was being shadowed.
The other errors are due to an obscure corner of the C++ spec which clang enforces.
https://stackoverflow.com/questions/21900237/do-i-really-need-to-implement-user-provided-constructor-for-const-objects
#jira UE-53204
Change 3797313 by Chris.Bunner
Re-built lighting in Rendering/ShaderModels automated test map and updated failing screenshots.
#jira UE-53198
Change 3803962 by Jamie.Dale
Fixed struct instances not comparing against the correct default values when gathering for localization
Change 3804771 by Michael.Dupuis
Back out changelist 3783171
Change 3804772 by Michael.Dupuis
Back out changelist 3783172
Change 3805258 by Michael.Dupuis
Added missing shader cache for landscape
Change 3806105 by Matt.Kuhlenschmidt
Disable harware benchmarking during automation tests, commandlets, and on the build machine
Change 3806438 by Michael.Dupuis
#jira UE-53228: Fixed rendering path of new landscape optim when using GDoInitViewsLightingAfterPrepass(used in Orion)
Change 3806577 by Matt.Kuhlenschmidt
Change plugin uploading to crash reporter to only do so in editor builds
Change 3806588 by Michael.Dupuis
Remove temp test version in landscape version
Change 3806900 by Jamie.Dale
Fixed 'inconsistent DLL linkage' error when using older versions of Python 2.7
#jira UE-53353
Change 3807125 by Jamie.Dale
Fixed UBT warning after Dev-Core merge
Change 3807299 by tim.gautier
QAGame: Checking in test asset M_LandscapeMaterial_Foliage, quicker repro for UE-53442
[CL 3807911 by Matt Kuhlenschmidt in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3623004 by Ben.Marsh
Fix RemoteExecutor not taking the remote machine specs into account.
Change 3623172 by Ben.Marsh
UGS: Fix "More Info..." button not using P4 server override.
Change 3628820 by Ben.Marsh
PR #3979: Get working directory from task element, not tool node (Contributed by nullbus)
Change 3630424 by Graeme.Thornton
Make the AES key parameter const in FAES::EncryptData()
Change 3632786 by Steve.Robb
FString constructor fixed to not take an ignored void* parameter, which can be misleading.
Change 3639534 by Ben.Marsh
Remove old P4.NET library. Doesn't seem to be used by anything.
Change 3640536 by Steve.Robb
GitHub #4007 : Delete unnecessary specialization of MakeArrayView
#jira UE-49617
Change 3641155 by Gil.Gribb
UE4 - Speculative fix for problem with summary reading in FAsyncArchive2.
Change 3643932 by Ben.Marsh
Add an example build script for updating the version number, then compiling and staging the editor and tools to an output directory. Optionally submits at the end (requires -Submit argument).
Change 3644825 by Ben.Marsh
Use VSWHERE to find the location of MsBuild.exe, if available.
https://github.com/EpicGames/UnrealEngine/pull/3879#issuecomment-329688645
Change 3647395 by Ben.Marsh
Allow compiling of monolithic binaries from BuildEditorAndTools.xml, using the -set:GameTarget=FooGame -set:TargetPlatforms=Win32;Win64 options.
Change 3650300 by Ben.Marsh
UAT: Remove code that deletes cooked data on a failed cook. The engine should write packages out transactionally now (by writing to a temporary file and moving into place), and deleting the cooked data just prevents post-mortem analysis.
Change 3650856 by Robert.Manuszewski
Adding checks to prevent FlushAsyncLoading and LoadObject/LoadPackage from being called from any threads other than the game thread
Change 3651022 by Gil.Gribb
UE4 - Possible fix for mysterious ensure indicating problematic recursion in the pak precacher.
Change 3658331 by Steve.Robb
Fix for the parsing of large integer values.
Change 3661958 by Gil.Gribb
UE4 - Fixed rare hang in task graph.
Change 3664021 by Robert.Manuszewski
Fix for a potential GC crash caused by stale pointer in AnimInstanceProxy
See https://udn.unrealengine.com/questions/392432/gc-issue-uaniminstancemontageinstances-empty-but-u.html
Change 3664254 by Steve.Robb
Use ANSI allocator when thread sanitizer is enabled. This allows the generation of more accurate and meaningful reports.
Change 3664436 by Steve.Robb
Use TUniquePtr instead of a thread-unsafe TSharedPtr to move data between threads.
Change 3666461 by Graeme.Thornton
Improvements to signing/encryption key embedding and runtime access
- Changed method of embedding key into the executable to make it more secure
- Added FAESKey class to wrap a 32 byte key
Change 3666462 by Graeme.Thornton
Cut ShooterGame AES key down to 32 characters
Change 3677560 by Ben.Marsh
PR #4074: UBT: Add include and library-related fields to module JSON output (Contributed by adamrehn)
Change 3683534 by Steve.Robb
Refactoring of enum/struct lookup during hot reload.
Change 3683754 by Steve.Robb
Alignment fixes to allow int64 on 32-bit platforms
Support for integral types in IsAligned.
Static asserts so that alignment functions will no longer be called with non-intergal, non-pointer types.
Some fixes to existing code.
Change 3686670 by Steve.Robb
Fix for thread-unsafe modification of static array in FString::ParseIntoArrayWS.
Change 3687540 by Ben.Marsh
Fix all UBT/UAT output going to stderr rather than stdout.
Change 3688931 by Gil.Gribb
UE4 - Critical fix for a rare race condition in the pak file async IO layer.
Change 3690000 by Graeme.Thornton
Manual copy of 4.18 CL 3687869
Make UBT include the destination INI file for a given hierarchy if it exists
Renamed VSCode enum value to VisualStudioCode, so it matches the source accessor plugin name
Change 3690030 by Graeme.Thornton
VSCode fixes
- Source Code Accessor plugin changes. Add new interface method to open a solution at a given path
- GameProjectUtils now uses the source navigation API to open solutions rather than hardcoding which solution file types to look for
- Various fixes for vscode project file generation
#jira UE-50554
Change 3690885 by Steve.Robb
Atomic reads in FReferenceControllerOps<ESPMode::ThreadSafe>.
Change 3691052 by Steve.Robb
Free stats thread on shutdown.
Change 3695138 by Steve.Robb
AsConst helper function added.
Change 3696627 by James.Hopkin
Changed player controller iterator typedefs to use TWeakObjectPtr rather than the deprecated TAutoWeakObjectPtr
(review-3606695)
Change 3697099 by Steve.Robb
GitHub #4105 : Removed redundant class access modifier
Change 3697154 by Steve.Robb
Removal of deprecated functions in delegates.
Mutable lambdas to can now be bound to delegates.
Change 3697180 by Steve.Robb
GitHub #4115 : Incorrect CPPMacroType used for USoftClassProperty
Change 3697239 by Steve.Robb
Allow TArray::Insert to take an array with any allocator type.
Change 3697269 by Steve.Robb
RelocateConstructItems instead of MoveConstructItems.
Change 3697558 by Steve.Robb
New _GetRef functions for TArray, which return a reference to the newly-added element.
Unit tests for these functions.
Change 3699776 by Steve.Robb
TSAN warning suppression around IAsyncReadRequest::bCompleteAndCallbackCalled.
Change 3702397 by Steve.Robb
TIsTrivial type trait.
Change 3702569 by Steve.Robb
Allow a TGuardValue to be assigned to a different type from the one being guarded.
Change 3706644 by Robert.Manuszewski
Different stack ingore count for development builds for FArchiveStackTrace
Change 3709272 by Steve.Robb
Removal of redundant UpdateVertices, which causes a race condition on the renderer thread.
Change 3709452 by Robert.Manuszewski
Fixed a bug where with async time limit set to a low value the async loading could hang because the linker would keep reloading the preload dependencies
Change 3709454 by Robert.Manuszewski
Added command line option -NOEDL to disable EDL
Change 3709487 by Steve.Robb
Remove use of PLATFORM_HAS_64BIT_ATOMICS, which is always 1.
Change 3709645 by Ben.Marsh
Fix race condition between multiple instances of UBT trying to write out the XML config cache.
Change 3711193 by Ben.Marsh
Add an editor setting for the shared DDC location to use.
#jira UE-51487
Change 3713811 by Steve.Robb
Update .modules files after a hot reload.
Don't check for directory timestamp changes as a way of detecting new files if hot reloading with a makefile, as this is already done during makefile invalidation checks.
Pass hotreload flags around in UBT instead of relying on global state.
This fixes the hot reload iteration speed regression without also regressing the fix to UE-42205.
#jira UE-51472
Change 3715654 by Steve.Robb
GitHub #4156 : Fixed not compiling template function Algo::UpperBoundBy.
Change 3718782 by Steve.Robb
TSharedPtr, TSharedRef and TWeakPtr assignment are now implemented as copy-and-swap to avoid an invalid smart pointer state being visible to any destructors being called.
Change 3720830 by Steve.Robb
Initial import of TAtomic object wrapper, which guarantees atomic access to an object.
Change 3720881 by Steve.Robb
FCompression ThreadSanitizer data race fixes.
Change 3722640 by Graeme.Thornton
Guard network platform file heartbeat function with the socket critical section. Stop heartbeat from causing a crash when firing during async loading.
#jira UE-51463
Change 3722655 by Steve.Robb
Don't null name table because it's already zeroed at startup.
Some tidy-ups.
Change 3722754 by Steve.Robb
Thread sanitizer fix.
Small typo fix.
Change 3722849 by Graeme.Thornton
Improve "caching file" message in networkplatformfile so it says "Requesting file..." and is only output when we actually request the file from the server
Change 3723081 by Steve.Robb
TAtomic is now aligned to the underlying integer type.
TAtomic will now static assert with a better error message when given an unsupported type.
Define added for the maximum platform-supported atomic type, and used instead of a (wrong) hardcoded number.
Misc renames.
Change 3723270 by Ben.Marsh
Include /d2cgsummary argument when running UBT with -Timing.
Change 3723683 by Ben.Marsh
Do not include documentation in the generated project files by default. Suspect that the 30,000 UDN files that get added to the solution take up memory and degrate performance.
Change 3725422 by Robert.Manuszewski
When serializing compressed archive with multithreaded compression enabled, wait for the oldest async task instead of spinning.
Change 3725735 by Robert.Manuszewski
Making all CheckDefaultSubobjects related functions const
Change 3726167 by Steve.Robb
FMinimalName::IsNone added.
Change 3726458 by Steve.Robb
TAtomic will no longer instantiate for types which are not exactly a size supported by the platform layer.
Change 3726542 by Ben.Marsh
UGS: Always include the project filename in the editor build command. The project may not be in one of the .uprojectdirs paths.
Change 3726595 by Ben.Marsh
Allow building multiple game targets in the example BuildEditorAndTools.xml script.
Change 3726724 by Ben.Marsh
Fix ambiguities in calculating root directory. (GitHub #4172)
Change 3726959 by Ben.Marsh
Make sure that AutomationTool uses the same list of preprocessor definitions when compiling *.target.cs files as UnrealBuildTool does.
Change 3728437 by Steve.Robb
VisitTupleElements now supports invocation of a functor taking arguments from multiple tuples in parallel.
Some improved documentation.
NOTE: This is a backward-incompatible change to VisitTupleElements. Any existing calls will need their arguments swapping.
Change 3732262 by Gil.Gribb
UE4 - Fixed rare hangs in the task graph.
Change 3732755 by Steve.Robb
Stats TSAN fixes.
Optimizations to FCycleCounter::Start() to only read the stat name once.
Change 3735000 by Robert.Manuszewski
Always preload the AssetRegistry module on startup. even if EDL is disabled.
Even without EDL, if the async loading thread is enabled the AssetRegistryModule will otherwise be loaded from the ASL thread and that will assert.
Change 3735292 by Robert.Manuszewski
Made sure component visualizer is removed from VisualizersForSelection when UnregisterComponentVisualizer() is called otherwise it may cause crashes when the engine terminates.
Change 3735332 by Steve.Robb
Refactoring of UDelegateProperty::Identical() to clarify logic.
Fixed UMulticastDelegateProperty::Identical() to compare the bound function names.
PPF_DeltaComparison removed, as it doesn't seem useful.
Change 3737960 by Graeme.Thornton
VSCode - Add launch task for generating project files for the given folder
Change 3738398 by Graeme.Thornton
Make Visual Studio source code accessor's module hotreload handler pass the 'save all files' message to the current accesor, rather than direct to the visual studio accessor
#jira UE-51451
Change 3738405 by Graeme.Thornton
VSCode: Format c/cpp settings strings using comment path formatting function
Change 3738928 by Steve.Robb
Fix for lack of null conditional operators in some older Monos. (replicated from CL# 3729574 in Release-4.18)
#jira UE-51842
Change 3739135 by Ben.Marsh
Fix being unable to package projects in a folder called "Wolf". This is only a restricted folder for Epic's Perforce history.
#jira UE-51855
Change 3739360 by Ben.Marsh
UAT: Fix issue with P4PORT setting not being parsed correctly.
Change 3745959 by James.Hopkin
#core Added ImplicitConv for safe upcasts to a specific required type, e.g. deduced delegate payload types
Change 3746125 by Steve.Robb
FName ThreadSanitizer fixes.
Change 3747274 by Steve.Robb
TSAN fix for FMediaTicker::Stopping.
Change 3747618 by Steve.Robb
ThreadSanitizer data race fix for FShaderCompileThreadRunnableBase::bForceFinish.
Change 3747720 by Steve.Robb
ThreadSanitizer fix for FMessageRouter::Stopping.
Change 3749207 by Graeme.Thornton
First pass of CryptoKeys plugin. Allows creation/editing/cycling of AES/RSA keys.
Change 3749323 by Graeme.Thornton
Fix UAT crash when only -targetplatform is specifiied
Change 3749349 by Steve.Robb
TSAN_SAFE guards around LockFreeList to silence ThreadSanitizer.
Change 3749617 by Steve.Robb
Logf static_assert for formatting string enabled.
Change 3749897 by Steve.Robb
FDebug::LogAssertFailedMessage static assert for formatting string enabled.
Change 3754011 by Steve.Robb
Static asserts that the allocator supports move.
Move-enabled our allocators which don't support move.
Change 3754227 by Ben.Marsh
Fix build command line in generated projects missing a space before the compiler version override.
#jira UE-52226
Change 3754562 by Ben.Marsh
PR #4206: Replace deprecated wsprintf with secure swprintf for Bootstrap executable (Contributed by jessicafalk)
Change 3755616 by Graeme.Thornton
Runtime code for using the new crypto ini files to define signing/encryption keys
#jira UE-46580
Change 3755666 by James.Hopkin
Used ImplicitConv to remove Casts being used for up-casts
#review-3745965
Change 3755671 by Graeme.Thornton
Add log message in unrealpak to say which config file system it is using for crypto keys
Change 3755672 by Graeme.Thornton
Updating ShooterGame with new CryptoKeys based security setup
Change 3756778 by Ben.Marsh
Add support for running multiple jobs simultaneously on a single builder.
When running job or agent setup, the --num-slots=X parameter defines the number of steps that can run simultaneously (EC procedures pass in the resource step limit). A lock file is created under the workspace root (D:\Build) and a reservation file is created for the first slot that can be allocated (slot-1, slot-2, etc...). The slot number is used to define the workspace name that should be used.
Change 3758498 by Ben.Marsh
Re-throw exceptions when a file cannot be deleted when cleaning a target.
Change 3758921 by Steve.Robb
ThreadSanitizer fix to FThreadSafeStaticStatBase::HighPerformanceEnable to do a relaxed atomic load on access.
DoSetup() now returns the newly-allocated pointer, instead of reloading it from memory.
Change 3760599 by Graeme.Thornton
Added missing epic header comment to some new source files
Change 3760642 by Steve.Robb
ThreadSanitizer fix for concurrent access to GMainThreadBlockedOnRenderThread.
Change 3760669 by Graeme.Thornton
Improvement to OpenSSL based signing key generator. Generate a full RSA key then steal the primes from it, rather than generating the primes manually.
Added a test mode to the cryptokeys commandlet to test signing key generation
Change 3760711 by Steve.Robb
ThreadSanitizer fixes to GIsRenderingThreadSuspended.
Change 3760739 by Steve.Robb
ThreadSanitizer fix for FQueuedThread::TimeToDie.
Change 3760763 by Steve.Robb
ThreadSanitizer fix for GRunRenderingThreadHeartbeat.
Removal of unnecessary/dangerous initializer for GMainThreadBlockedOnRenderThread.
Change 3760793 by Steve.Robb
Some simple refactoring to remove some volatile reads of BufferStartPos and BufferEndPos.
Change 3760817 by Steve.Robb
ThreadSanitizer fixes for FAsyncWriter::BufferStartPos and BufferEndPos.
Change 3761331 by Josh.Engebretson
UnrealBuildTool enforcement of Development and Debug configurations in existing .csproj
#jira UE-52416
Change 3761521 by Steve.Robb
ThreadSanitizer fixes for FEvent::EventStartCycles and EventUniqueId.
Change 3763117 by Graeme.Thornton
PR #3722: Optimising FPaths::IsRelative() (Contributed by jovisgCL)
Change 3763358 by Graeme.Thornton
Ensure that all branches within FGenericPlatformMisc::RootDir() produce an absolute path with no duplicate slashes
Remove relative->abs conversion of root dir from FPaths::MakeStandardFilename(), now that we know RootDir() always returns an absolute path
Derived from the content of this PR:
PR #3742: Treat RootDirectory the same way as Standardized (Contributed by TroutZhang)
Change 3764058 by Graeme.Thornton
Generate a .code-workspace file for the current workspace. Allows foreign projects to "mount" the UE4 folder so that the engine tasks are avaible, and all engine source is visible to VSCode for searching purposes
#jira UE-52359
Change 3764705 by Steve.Robb
Better handling of whitespace in ImportText_Internal() for set and map properties.
Containers are now emptied upon import failure, to avoid leaving bad container states (unhashed, partial data).
Fix to USetProperty's temp buffer size to avoid buffer overruns.
Duplicate map keys are now skipped during import, same as USetProperty's behavior.
Change 3764731 by Steve.Robb
Don't re-run UHT if only source files have changed in the same folder as headers. This was already done for hot reload, but there's no reason why it should be limited to that.
Change 3765923 by Graeme.Thornton
VSCode - "taskName" -> "label" for C# build tasks
Change 3766018 by Steve.Robb
constexpr constructor for TAtomic.
Change 3766037 by Steve.Robb
Misc tidyings in HotReload.cpp.
Change 3766046 by Steve.Robb
ThreadSanitizer fixes to ENamedThreads::RenderThread and ENamedThreads::ENamedThreads_Local.
Change 3766288 by Steve.Robb
Improved efficiency of adding/removing elements to UGCObjectReferencer::ReferencedObjects.
Change 3766374 by Josh.Engebretson
Fix issue with ini quoted value comparison
#jira UE-52066
Change 3766532 by Josh.Engebretson
PR #3680: Added NetSerialize to FDateTime fixing UE-22533 (Contributed by druhasu)
#jira UE-46156
Change 3766740 by Steve.Robb
TMultiMap::Append added.
Change 3767523 by Steve.Robb
ThreadSanitizer fix for UE4Delegates_Private::GNextID.
Change 3767601 by Steve.Robb
ThreadSanitizer fix for FStats::GameThreadStatsFrame.
Change 3770567 by Ben.Marsh
Add a FAnnotatedArchiveFormatter interface which allows querying structural type information that may not be in binary archives.
Change 3770826 by Ben.Marsh
Move StructuredArchive implementation into Core, so primitive types can implement serialization overloads for it.
Change 3770875 by Steve.Robb
Redundant UScriptStruct::PostLoad removed, which was causing a race condition in async loading. This was re-establishing the CppStructOps, but that is unnecessary because native classes cannot change as a result of a load - only BP structs can, and they don't have CppStructOps.
Change 3772167 by Ben.Marsh
Add a context-free binary formatter that can serialize tagged data. This functions as a lower-overhead binary intermediate format for JSON data.
Change 3772248 by Steve.Robb
ThreadSanitizer fixes to FMalloc call counters.
Change 3772383 by Ben.Marsh
Separate archive metadata from FArchive into FArchiveContext, so it can be safely exposed to consumers of FStructuredArchive.
Change 3772906 by Graeme.Thornton
TextAssetCommandlet - Utility commandlet for testing/converting to text asset format
Change 3772932 by Ben.Marsh
Fix "String:" prefix not being stripped from escaped string values.
Change 3772942 by Graeme.Thornton
Add experimental setting to enable in-editor text asset format functionality
Add "export to text" option into the content browser asset actions context menu
Change 3772955 by Ben.Marsh
Add a new "stream" compound type to FStructuredArchive, which allows serializing a sequence of elements similarly to an array, but without serializing an explicit size. Allows passing through data to an underlying binary archive without breaking compatibility.
Change 3772963 by Ben.Marsh
Allow querying record keys and stream lengths from annotated archive formatters, since these archives have markup for field boundaries.
Change 3773010 by Graeme.Thornton
Added CORE_API to FArchiveFromStructuredArchive
Gave text asset format experimental option a slightly less random tooltip comment
Change 3773057 by Ben.Marsh
Add a flag to FArchive to determine whether the archive is text (IsTextFormat()).
Add support for seeking within FArchiveFromStructuredArchive. For text formats, data is serialized to an in-memory buffer, with names and objects serialized as indices into an array. For non-text formats, data is serialized directly to the underlying archive.
Also rename FStructuredArchive::TryEnterSlot() to TryEnterField().
Change 3773118 by Steve.Robb
TSignedIntType and TUnsignedIntType type traits for getting an integer type of a given size.
Change 3773122 by Steve.Robb
TAtomic fixes for pointer arithmetic.
TSignedIntType used instead of reimplementing its own trait.
Change 3773123 by Steve.Robb
Unit tests for TAtomic.
Change 3773138 by Steve.Robb
Run numeric tests on integer types instead of basic tests.
Fix for compiler warnings when subtracting from unsigned atomics.
Change 3773166 by Steve.Robb
Refactoring of arithmetic operations into its own class, then basing the pointer and integral versions on that.
Change 3774216 by Gil.Gribb
UE4 - Fix rare crash in the pak precacher immediately after unmounting a pak file.
Change 3774426 by Ben.Marsh
Copy all C# tools to a staging directory before compiling them. This prevents access violations when compiling tools like iPhonePackager that reference DotNETCommon, and ensures we strip NotForLicensees folders out of them all.
See: https://answers.unrealengine.com/questions/726010/418-will-not-build-from-source.html
Change 3774658 by Ben.Marsh
Improve error reporting while generating intellisense for project files. Include the name of the target being compiled, and allow project file generation to continue without it.
Change 3775141 by Ben.Marsh
Always output HTML5 diagnostics at "information" verbosity, to avoid every line being prefixed with "WARNING:" and screwing up the EC postprocessor.
Change 3775459 by Ben.Marsh
Removing .NET Framework Perforce DLL as runtime dependency of engine third party library. The actual library is linked statically.
Change 3775522 by Ben.Marsh
UGS: Treat .uproject and .uplugin files as code changes.
Change 3775597 by Ben.Marsh
Fix post-build steps for plugins not being executed.
#jira UE-52754
Change 3777895 by Graeme.Thornton
StructuredArchiveFromArchive - An adapter class for wrapping an existing FArchive with a structured archive
Change 3777931 by Graeme.Thornton
Refactored FArchiveUObjects serialization code into some static helpers
Added FArchiveUObjectFromStructuredArchive which allows the adaption of a structured archive into an FArchive that supports the extra UObect serialization functions for weak/soft pointers
Change 3777942 by Graeme.Thornton
Added missing CORE_API to FStructuredArchive::FStream
Added FStructuredArchive::FSlot insertion operator for char
Added specialization of TArray<uint8> serializer for structured archives which serializes the contents as one value
Change 3778084 by Graeme.Thornton
Adding FPackageName::GetTextAssetPackageExtension() to access the file extension we use for text asset files
Change 3778096 by Graeme.Thornton
Add a constructor to FArchiveUObjectFromStructuredArchive that takes a slot and passes it to the base class
Change 3778389 by Josh.Engebretson
Fix an optimization issue with CPU benchmarking
Add better support for debugging/testing local rocket builds
UDN Link: https://udn.unrealengine.com/questions/400909/command-scalability-auto-gives-inaccurate-cpu-benc.html
#jira UE-52192
Change 3778701 by Josh.Engebretson
Ensure plugin content folders are mounted consistently. Fixes TryConvertFilenameToLongPackageName failing to work on plugin assets
UDN Link: https://udn.unrealengine.com/questions/276386/tryconvertfilenametolongpackagename-fails-for-plug.html
#jira UE-40317
Change 3778832 by Chad.Garyet
Adding enterprise path support for PCB's for UGS
Change 3780258 by Graeme.Thornton
TextAssetCommandlet - Accumulate timings for loading packages and saving packages
Change 3780463 by Graeme.Thornton
CryptoKeys improvements
- Enable CryptoKeys plugin by default
- Attempt to inherit settings from the old system by default
- Hide ini/index encryption settings from packaging settings and just inherit previous values into new system
Minor UBT change to remove a trailing comma from the end of encryption/signing key binary strings
Change 3780557 by Ben.Marsh
Fix LoginFlow module not being precompiled for the binary release.
Change 3780846 by Josh.Engebretson
Improve filename to long package name resolution when provided a relative path
Change 3780863 by Ben.Marsh
UAT: Add a better error message when a C# project has an invalid reference.
Change 3780911 by Ben.Marsh
Update the BuildEditorAndTools.xml script to allow submitting archived binaries to Perforce.
The "Submit To Perforce For UGS" node creates a zip of all the binaries that have been built, and submits it to the stream specified by the 'ArchiveStream' argument.
Change 3780956 by Josh.Engebretson
Add support for ! (RemoveKey) config command to UBT
UDN Link: https://udn.unrealengine.com/questions/397267/index.html
#jira UE-52033
Change 3782957 by Robert.Manuszewski
UE4 - Fixed a linear search in EDL that caused performance problems for very large maps.
Change 3784503 by Ben.Marsh
Optimizations for FStructuredArchive:
* Store the depth explicitly in element objects, to avoid having to loop through the scope stack to find it.
* Prevent shrinking of arrays when removing elements.
* Add an inline allocator to the scope and container stacks.
Change 3784700 by Ben.Marsh
Remove the inline allocator from FStructuredArchive; checking whether the inline or backup allocator is being used is slower than just allocating up-front.
Change 3784989 by Ben.Marsh
Compile out all the FStructuredArchive validation code when WITH_TEXT_ARCHIVE_SUPPORT = 0.
Change 3786860 by Gil.Gribb
UE4 - Remove no buffering flag from windows async IO because it disabled the disk cache entirely.
Change 3787159 by Ben.Marsh
Guard against UE4.0 backwards compatibility path when determining if an engine is a source distribution.
Change 3787493 by Josh.Engebretson
Parallel pak generation now uses MaxDegreeOfParallelism option which is now set to the number of CPU cores
Moved cryptography settings parsing out of threaded CreatePak method to avoid concurrency issue in ConfigCache.TryReadFile
Fix for multiple threads parsing ini keys (PR 3995)
#PR 3995
#jira 52913
#jira 49503
Change 3787773 by Steve.Robb
Fix for missing final values from FOREACH_ENUM_ macros.
Change 3788287 by Ben.Marsh
TBA: Add checks in debug builds that key names in maps and records for FStructuredArchive are unique.
Change 3788678 by Ben.Marsh
Fix compile error due to inability to instantiate TArray<> of forward declared struct. Convert set of key names to an array to avoid including Set.h in public header for FStructuredArchive.
Change 3789353 by Graeme.Thornton
Removed unused/rotten modes from TextAsset commandlet.
Used existing "-iterations=n" switch to control a global iteration over the given command. Useful for performance testing.
Change 3789396 by Ben.Marsh
Move code to validate container keys/sizes into DO_GUARD_SLOW checks, and allocate container metadata instances dynamically to fix problems with references to things not declared in headers that can't be included from StructuredArchive.h
Change 3789772 by Ben.Marsh
Always strip trailing slashes from the end of paths specified by .build.cs files; they can cause quoted paths to be escaped on the command line.
Change 3790003 by Ben.Marsh
TBA: Rename FStructuredArchive::EElementType::Object to FStructuredArchive::EElementType::Record.
Change 3790051 by Steve.Robb
PIE is disabled during a hot reload.
Hot reload in editor is disabled during PIE.
Hot reload from IDE is deferred until after PIE is exited.
Compiling multiple times before a hot reload (e.g. compiling multiple times in PIE) will now load the most recent change.
#jira UE-20357
#jira UE-52137
Change 3790709 by Steve.Robb
Better move support for TVariant.
EVariantTypes switched over to using an enum class to aid debugger visualization.
Change 3791422 by Ben.Marsh
TBA: Return the type of a field from an annotated archive formatter at the point that we enter it, rather than querying all the time.
Change 3791489 by Graeme.Thornton
TBA: Change StructuredArchiveFromArchive adapter to use the archive.Open() result directly, now that it's a slot and not a record
Change 3792344 by Ben.Marsh
Improvements to base64 encoding library.
* Now supports encoding and decoding with ANSICHAR and WIDECHAR implementations.
* Added support for decoding base-64 blobs without padding marks.
* Added support for decoding into pre-allocated buffer.
* Added constexpr functions for determining the encoded and maximum decoded size of an input buffer.
* Prevent writes past the end of allocated buffer (no longer need to manually remove padding bytes).
Change 3792949 by Ben.Marsh
TBA: Rename FAnnotatedArchiveFormatter to FAnnotatedStructuredArchiveFormatter.
Change 3794078 by Robert.Manuszewski
Fixing a crash that could happen when FGCObjects were constructed and destructed when shutting down the engine
#jira UE-52392
Change 3794413 by Ben.Marsh
TBA: Remove the element type parameter to SetScope(). It isn't really needed; we can just assume the element ID correctly identifies the item on the stack.
Change 3794731 by Ben.Marsh
TBA: Optimize creation of stack elements for empty slots in FStructuredArchive. This saves a lot of bookkeeping when serializing a large number of individual fields. Since only one slot can be active at a time (and it only exists temporarily, until we write into it), we can just store the element ID assigned to it in a member variable.
Change 3795081 by Ben.Marsh
UBT: Move LinuxCommon.cs into Platform/Linux folder.
Change 3795137 by Ben.Marsh
UBT: Allow modules to specify private compiler definitions from the build.cs file, only visible within that module (via the "PrivateDefinitions" property).
Change 3795247 by Ben.Marsh
Fix missing header when creating a new interface from the editor new code wizard.
#jira UE-53174
Change 3796025 by Graeme.Thornton
Fixed some deprecated "Definitions" warnings in OpenCV build files
Change 3796103 by Graeme.Thornton
Disable experimental text asset option - it does nothing useful yet.
Change 3796157 by Graeme.Thornton
Fix path type mismatch in visual studio source code accessor meaning that the DTE comms wouldn't identify a running instance of VS as having the current solution open.
#jira UE-53206
Change 3796315 by Ben.Marsh
Move Formatter to the correct position for initializer.
#jira UE-53208
Change 3797082 by Ben.Marsh
UAT: Work around for exception thrown by launching cook with "-platform=Android_ETC1 -targetplatform=Android -cookflavor=ETC1". Anrdoid_ETC1 is not a valid platform (it's a cook platform), and can't be parsed by UAT.
#jira UE-53232
Change 3799050 by Ben.Marsh
Make UnrealPak.version files writable for Mac and Linux.
Change 3801012 by Graeme.Thornton
VSCode - Update source accessor to use code workspace as it's target, rather than just the project directory
Change 3801214 by Gil.Gribb
UE4 - Remove assert to work around minor problem with lock free lists.
#jira UE-49600
Change 3801219 by Steve.Robb
WeakObjectPtrs now warn when casting away const.
Change 3801299 by Graeme.Thornton
Fix quote issue with foreign project build tasks on PC
Change 3803292 by Graeme.Thornton
Fix crash on startup when using cook-on-the-side. Force a flush of the asset registry background scanning when creating the cook-on-the-side platform registries
Change 3803559 by Steve.Robb
TSAN fix for FMalloc::MaxSingleAlloc.
Change 3803735 by Graeme.Thornton
Last set of cryptokeys changes
- Added some comments for editor exposed settings
- Split "encrypt assets" option into "encrypt uassets" and "encrypt all assets"
Change 3803929 by Ben.Marsh
UGS: Show an in-place error panel when a project fails to open, allowing the user to retry and have their tabs saved instead of creating a modal dialog.
Change 3624590 by Steve.Robb
AddReferencedObjects now generates a compile error with containers of UObject*s where the UObjectType is forward-declared, as these which won't be added to the reference collector.
Tidy-up of existing calls to AddReferencedObjects.
Change 3629473 by Ben.Marsh
Build: Rename the option for embedding source server information in PDB files for installed engine builds.
Change 3632894 by Steve.Robb
VARARG* macros deprecated and usage replaced with variadic templates.
Change 3640704 by Steve.Robb
MakeWeakObjectPtr added, which deduces a TWeakObjectPtr type from a raw pointer type.
Fix to TWeakObjectPtr's constructor which implicitly removed const.
Fixes to everything which didn't compile as a result.
Change 3650813 by Graeme.Thornton
Removed FStartupPackages and associated code
Change 3651000 by Ben.Marsh
Return the stack size from FPlatformStackWalk::CaptureStackBacktrace() rather than checking for the first null pointer, to prevent truncated callstacks if parts of the stack are zeroed out.
#jira UE-49980
Change 3690842 by Steve.Robb
FPlatformAtomics::AtomicRead added - needs optimizing.
AtomicRead() used in FThreadSafeCounter::GetValue().
Change 3699416 by Steve.Robb
Fix to debugger visualization of TArray with a TInlineAllocator or TFixedAllocator.
Improved readability of TSparseArray visualization.
Change 3720812 by Steve.Robb
Atomic functions for 8-bit and 16-bit.
Android, Linux and Switch implementations now just use the Clang implementation.
AtomicRead64 deprecated in favor of the int64* AtomicRead overload.
Change 3722698 by Steve.Robb
VS debugger visualizers for TAtomic.
Change 3732270 by Steve.Robb
Relaxed stores and loads.
Change 3749315 by Graeme.Thornton
If UAT is invoked with platforms in both the -platform and -targetplatform command line switches, build using all of them rather than just the ones in -targetplatform
#jira UE-52034
Change 3750657 by Josh.Engebretson
Fixed issue when debugging editor cook/package and project launch operations
#jira UE-52207
Change 3758514 by Steve.Robb
Fixes to FString::Printf having non-literals being passed as its formatting string.
Change 3763356 by Steve.Robb
ENamedThreads::RenderThread and ENamedThreads::RenderThread_Local encapsulated by getters and setters.
Change 3770549 by Steve.Robb
Removal of obsolete PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS and PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES.
Tidy up of existing code which uses it.
Change 3770553 by Ben.Marsh
Adding structured serialization API to Core/CoreUObject for use with text-based assets.
* FStructuredArchive abstracts an archive which is made up of compound types (records, arrays, and maps). Values are stored in slots within these types.
* Records are string -> value dictionaries where the key names can be compiled out in non-editor builds or when WITH_TEXT_ARCHIVE_SUPPORT = 0.
* Maps are string -> value dictionaries where the key names are present regardless of the build type.
* Proxy objects are defined to express the context for serialization (FStructuredArchive::FRecord, FStructuredArchive::FArray, FStructuredArchive::FMap, FStructuredArchive::FSlot) which allows basic validation through static typing. These objects act as lightweight handles, and can be cheaply constructed and passed around on the stack. Most serialization to and from the archive is done through these objects.
* Runtime checks perform additional validation to ensure that serialized data is well formed and written in a forward-only manner, regardless of the underlying archive type.
* The actual input/output format is determined by a separate interface (FArchiveFormatter). Context validation (always causing matching LeaveArray for every EnterArray, etc...) is done by FStructuredArchive, so implementing these classes is fairly trivial. FArchiveFormatter can be de-virtualized in non-editor builds, where WITH_TEXT_ARCHIVE_SUPPORT = 0.
* Includes implementations of FArchiveFormatter for binary and JSON formats.
Change 3771105 by Steve.Robb
Deprecation warnings for PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES and PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS.
Fix for incorrect warning formatting on Clang platforms.
Change 3771520 by Steve.Robb
Start moving Clang-using platforms' pre-setup stuff into a Clang-specific header.
Change 3771564 by Steve.Robb
More common macros moved to the Clang pre-setup header.
Change 3771613 by Steve.Robb
EMIT_CUSTOM_WARNING_AT_LINE moved to ClangPlatformCompilerPreSetup.h.
Change 3772881 by Ben.Marsh
Add support for serializing FName and UObject through FStructuredArchive.
In order to allow custom linker behavior when serializing objects:
* The constructor to JSON input formatter now takes a delegate to convert a string object name into a UObject pointer.
* The constructor to tagged binary formatter takes a delegate to serialize a UObject pointer into any form it chooses (likely an integer index into the import table)
Object and name types are stored as strings in JSON, using an "Object:" or "Name:" prefix to differentiate them from regular strings. Any strings that already contain one of these prefixes are prepended with a "String:" prefix (as is any string that already has a "String:" prefix).
Change 3772941 by Graeme.Thornton
Make build work when including StructuredArchive.h from core container types
Added standard header to new files
Add structured archive serializer for TArray
Fix bug in structured archive where containers weren't being popped from the scope stack
Change 3772972 by Ben.Marsh
Add an adapter which presents a legacy FArchive interface to a FStructuredArchive slot.
Data is serialized into this slot as a stream of elements; raw data is buffered up into fixed size chunks, names and objects are serialized separately.
When used with FBinaryArchiveFormatter, this should result in all data being passed through to the underlying archive in a backwards compatible way, wiith no additional bookkeeping fields.
Change 3773006 by Ben.Marsh
Rename FStructuredArchive::FRecord::EnterSlot() to EnterField().
Change 3773013 by Steve.Robb
bUseInlining target rule added to UnrealBuildTool, which defaults to true, to allow inlining to be disabled for debugging purposes.
Change 3774499 by Ben.Marsh
Minor fixes for FStructuredArchive related classes:
* Text-based archive formats are now compiled out when WITH_TEXT_ARCHIVE_SUPPORT = 0.
* Fixed issue with FTaggedBinaryArchiveFormatter state becoming corrupted when looking ahead at field types.
* FArchiveFieldName constructor is now explicit, to fix cases where strings were being passed directly to serialize functions.
Change 3774600 by Ben.Marsh
Add CopyFormattedData() function, which can copy data from one formatter to another. Add a test case to SerializationAPI that converts from data -> JSON -> binary -> JSON -> data.
This function can be used to implement a generic visitor pattern, by implementing a FArchiveFormatter which receives the deserialized data.
Change 3789721 by Ben.Marsh
TBA: Split FTaggedBinaryArchiveFormatter into separate classes for reading and writing.
Change 3789920 by Ben.Marsh
TBA: Support automatic coercion between any numeric types in tagged binary archives. Also report the smallest type that can contain a value, rather than just in32/double.
#jira UECORE-364
Change 3789982 by Ben.Marsh
TBA: Change FStructuredArchive::Open() to return a slot, rather than a record, to make it easier to implement a raw FArchive adapter.
Change 3792466 by Ben.Marsh
TBA: Better handling of raw data in text based assets. Short sequences of binary data are Base64 encoded as a single string. Longer sequences are stored as an array of Base64 encoded lines, push a SHA1 hash to detect cases where the data was merged incorrectly.
In order to allow inference of the correct type for a field, other fields called "Base64" will be escaped to "_Base64", and any field beginning with "_" will have an additional underscore inserted. Reading files back in reverses these transformations.
Change 3792935 by Ben.Marsh
TBA: Rename FArchiveFormatter to FStructuredArchiveFormatter for consistency with FStructuredArchive.
Change 3795100 by Ben.Marsh
UBT: Rename the ModuleRules Definitions property to PublicDefinitions, to make its semantics clearer.
Change 3795106 by Ben.Marsh
Replace all internal usages of ModuleRules.Definitions, and replace it with ModuleRules.PublicDefinitions.
Change 3796275 by Ben.Marsh
Fix paths to Version.h includes from resource files.
Change 3800683 by Josh.Engebretson
Remove WER from Mac and Linux crash reports in favor of unified runtime-xml format
#jira UE-50073
Change 3803545 by Steve.Robb
TWeakObjPtr const-dropping assignment fix.
Fixes to change.
[CL 3805231 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 3567301 by Arciel.Rekman
Linux: fix for importing failure when clicking shortcuts (UE-47932).
- Slate dialog would return incorrect relative paths (not matching CWD) if Engine or Project shortcuts were used.
#jira UE-47932
Change 3567687 by Arciel.Rekman
Minor fixes to gdb pretty printers by icculus.
Change 3568024 by Arciel.Rekman
Made SDL_SetWindowInputFocus() wait until window is viewable (UE-33369).
- Pull request #2608 contributed by Ereski.
- Updated x86_64 lib only (anticipating more changes to SDL).
#coderview Cengiz.Terzibas, Ryan.Gordon
Change 3568173 by Max.Chen
Movie Scene Capture: Delay on shot boundaries by setting the sequencer play rate to 0.
This allows particles, TAA, and other effects to settle on the shot cuts.
#jira UE-44598
Change 3568174 by Max.Chen
Sequencer: Added option to rerun construction scripts on bound actors in the sequence every frame.
#jira UE-31193
Change 3568331 by Matt.Kuhlenschmidt
PR #3850: Add extensible source navigation service (Contributed by mhutch)
Change 3568350 by Matt.Kuhlenschmidt
PR #3851: Add argument to pass params to standalone play session (Contributed by mhutch)
Change 3568387 by Matt.Kuhlenschmidt
PR #3852: Add FEditorDelegates::BeginLocalPlay event (Contributed by mhutch)
Change 3568541 by Arciel.Rekman
Merged Icculus' patch for copy-paste (UE-40071).
- Alas does not seem to fix inability to copy/paste between Output log and kate.
- Updated x86_64 lib only (anticipating more changes).
Change 3568547 by Arciel.Rekman
Fix OpenGL queries reused after deletion.
Change 3568790 by Matt.Kuhlenschmidt
PR #3857: Loading screen widgets not scaled correctly (Contributed by projectgheist)
Change 3568900 by Alexis.Matte
Fix the fbx re-import factory handler to say failed in case there was no geometry to import.
#jira UE-47506
Change 3568902 by Alexis.Matte
Reduce memory footprint when importing large FBX scene PR #3834
#jira UE-47833
Change 3569061 by Arciel.Rekman
Linux: remove unnecessary symbols for MSVC visualizers.
- Reported by ASan as collision because they exist in each DSO.
Change 3569782 by Cody.Albert
Updated ImportAssets Commandlet help text to properly reflect supported features.
Change 3569843 by Arciel.Rekman
SDL: add logic to select headless EGL device.
- SDL will try to guess which device is GPU using CUDA device id (can also be hinted explicitly).
- Also fixes the problem of engine not starting on some drivers that don't support the necessary EGL extensions.
Change 3570234 by Max.Chen
Sequencer: Import FBX settings. Added settings to toggle force front x axis and whether to create cameras that don't already exist in the level.
#jira UE-46754
Change 3570578 by Arciel.Rekman
Linux: make FAnsiMalloc compatible with malloc()/free().
- Prerequisite for ASan. Also helps fringe cases when we have to use FAnsiMalloc.
Change 3571015 by Alexis.Matte
Issue warning when we found zero normal, tangent or binormal
#jira UE-46419
Change 3571376 by Jamie.Dale
Force a unique package localization ID when loading packages for diffing
Change 3571412 by Jamie.Dale
Removed unused setting
Change 3571487 by Alexis.Matte
fix speed tree import cancel workflow
#jira UE-47482
Change 3571614 by Jamie.Dale
Games now use the native culture of any of the game targets as the fallback (rather than always using English)
This replaces the previously removed redundant setting from CL# 3571412
Change 3572649 by Jamie.Dale
SavePackageHelper now always honors KeepObjectFlags
Change 3572730 by Matt.Kuhlenschmidt
Guard against crash in the details panel when there is a message in the queue and something scrolls into view when the list has been invalidated
#jira UE-48037
Change 3572773 by Matt.Kuhlenschmidt
Guard against high res screenshot crashing if the requested image size doesnt match the image data size
#jira UE-47765
Change 3572813 by Michael.Trepka
Workaround for a mysterious issue in Xcode 9 beta 3 and 4 which makes it generate -Wnullability-inferred-on-nested-type warnings/errors in MetalDebugCommandEncoder.h even though we tell Clang to ignore them in MacPlatformCompilerPreSetup.h
Change 3573043 by Arciel.Rekman
FAnsiMalloc: fix compile issue (UE-48066).
#jira UE-48066
Change 3573236 by Arciel.Rekman
Linux: add UnrealLightmass to the installed build.
- Was also requested by a licensee on UDN.
Change 3573705 by Arciel.Rekman
SDL: update UE4 fork to the latest trunk (UETOOL-1242).
- Revision 11184 form 2017-08-04: http://hg.libsdl.org/SDL/rev/04063928c4a8
- Change by icculus (Ryan Gordon).
- Rebuilt x86_64 library only for now.
Change 3573741 by Arciel.Rekman
Fix crash when capturing a movie (UE-48093).
#jira UE-48093
Change 3574389 by Max.Chen
Sequencer: Array bounds check.
#jira UE-48095
Change 3574399 by Max.Chen
Sequencer: Fix crash in removing delegate
#jira UE-47461
Change 3574415 by Max.Chen
Sequencer: Put level visibility tracks in the SpawnObjects evaluation group to ensure levels are streamed before any possessable bindings are resolved
Change 3574416 by Max.Chen
Prevent slow task feedback from performing slow operations (flushing rendering commands, checking if shaders are initialized) when there are no modal dialogs open
Change 3574726 by Matt.Kuhlenschmidt
Focus the details view when actor selection changes if it is not focused
Change 3574922 by Michael.Trepka
Copy of CL 3574653 by Richard.Wallis
XCode Beta 4 Compile fixes. "Inferring '_Nonnull' for pointer type within array is deprecated "
Change 3576525 by Nick.Darnell
Editor - Data table rows names sort correctly in the property customization.
Blueprint - Fixing some crashes due to holding onto raw pointers instead of TWeakObjectPtrs.
UMG - SetWidgetClass now reinstances the widget if you change it at runtime.
Editor - Deleting actors that are still referenced now at least logs to the console what still references it.
Change 3576714 by Nick.Darnell
Editor - Build fix.
Change 3576770 by Jamie.Dale
Removed some dead code
It seems to be left over from the first attempt at stable localization keys
Change 3578433 by Matt.Kuhlenschmidt
Fix content browser settings being per project and having created a "Global" category for one setting
Change 3578556 by Max.Chen
Editor: Fix toolbar shared ref which was keeping the viewport toolbar around when switching between default and cinematic viewports.
#jira UE-48125
Change 3578561 by Matt.Kuhlenschmidt
Fix USD importing not respecting DestinationPath for automated import
Change 3580124 by Matt.Kuhlenschmidt
Fix bogus warning message when a property has an editcondition that is not marked edit aynwhere. This has always been supported and is the correct way to make an editcondition
Change 3581936 by Jamie.Dale
Restoring defaults for UContentBrowserSettings
Change 3582039 by Matt.Kuhlenschmidt
High DPI mode changes
- Editor viewport screen percentage is now adjusted automatically to account for DPI scaling. By default the scene will be rendered at a lower resolution based on screen percentage calculated based on 100/DPIScale. Users can override this automatic calcuation in the performance options if desired.
- DPI awareness is only set on windows in the editor now (still disabled by default)
- Fixed hit proxy calculation not working properly with screen percentage
- Developers can now register a delegate with SlateApplication to tell when a window's DPI changes
Change 3582049 by Matt.Kuhlenschmidt
Fix color picker not properly converting FColor properties back to gamma space
Change 3582054 by Matt.Kuhlenschmidt
Fix mac menus updating during unsafe times such as modal windows and slow tasks
#jira UE-47874
Change 3582084 by Jamie.Dale
Make sure to update the rendering resources for the active world if reloading its map build data
This prevents a crash in the renderer due to it holding onto stale data
Change 3582257 by Matt.Kuhlenschmidt
Fix widget component spawning widgets on cook
#jira UE-48201
Change 3582655 by Matt.Kuhlenschmidt
Fix DPI scale not being accounted for when entering immersive.
Change 3582706 by Matt.Kuhlenschmidt
Fix automation tests
Change 3582728 by Matt.Kuhlenschmidt
Turn on high dpi by default for windows editor
Change 3582732 by Matt.Kuhlenschmidt
Turn on high DPI by default for mac editor
Change 3583112 by Max.Chen
Sequencer: Add OnPlayReverse() event for when playback is in reverse
Change 3584130 by Matt.Kuhlenschmidt
PR #3897: Git plugin: fix action icon in history window (Contributed by SRombauts)
Change 3584237 by Matt.Kuhlenschmidt
Added the beginnings of a way to extend the usd importer with a custom resolver class that optionally handles prim identification and mesh and actor spawning.
Added a test resolver that handles prims based on usd "kind" metadata.
Change 3584535 by Matt.Kuhlenschmidt
Fix LOD identification in USD files
Change 3587703 by Matt.Kuhlenschmidt
Fix tooltip
Change 3587901 by Matt.Kuhlenschmidt
Fixed USD importing not finding and importing LODs properly
Change 3588380 by Matt.Kuhlenschmidt
Fix ctrl+w not duplicating on mac
#jira UE-46573
Change 3590435 by Jamie.Dale
Added support for in-editor previews of localized game text
This is configured by the "Preview Game Culture" setting, and will automatically be active when PIE is running (the preview language is also passed to any standalone games that are launched via the editor). This preview can also be used in the UMG editor to preview widgets in different languages.
While a preview is running, all editable FText fields are locked-down (read-only) to prevent accidentally clobbering source data with translation data. You can also use this new lock-down feature to prevent any localization changes in your project (set "LockLocalization" to "True" under the "Internationalization" section of either your DefaultGame or DefaultEngine INI).
In order to allow the game translations to be used in the editor, we now map the translation to any package localization ID variants when the LocRes data is loaded (or when looking up a specific piece of text). This is needed as the LocRes files only ever contain the "clean" versions of the IDs (without the package localization ID the editor uses), and also means that we no longer need to gather the "editor-only" variants of the text within assets.
Change 3592131 by Matt.Kuhlenschmidt
Log for newly converted actors being pending kill
#jira UE-47464
Change 3592200 by Matt.Kuhlenschmidt
Made the class viewer menu function properly on mac. Since it as a nomad tab it wasnt properly inserting itself into the top level menu on mac nor should it since it could be docked anywhere. The filters menu is now consistent with other filters menus
Change 3592227 by Matt.Kuhlenschmidt
Fix drag drop of actors being offset with high dpi monitors.
Change 3592719 by Bradut.Palas
#jira UE-45632 - dual key bindings feature
My approach was transforming the ActiveChord and DefaultChord into arrays and accessing them through an enum class called EMultipleKeyBindingIndex. A lot of connecting code, function prototypes, and data structures had to be changed to accomodate this. Most menus and tooltip texts are generated using the first valid active shortcut.
Change 3592793 by Bradut.Palas
Fix compile warnings for InputBindingManager (there were actually hidden bugs among them)
Change 3593128 by Matt.Kuhlenschmidt
Force low quality mode for background blurs by default on android
Change 3593579 by Michael.Dupuis
#jira UE-47223 :
If we have no world simply return null when GetLandscapeInfo is called
Handle the cases in PostEditChange to handle null returned from GetLandscapeInfo
Change 3593580 by Michael.Dupuis
Added missing shaders while generating thumbnails
Change 3593582 by Michael.Dupuis
#jira UE-47492 : Make sure LayerInfo is valid before accessing data
Change 3593584 by Michael.Dupuis
#jira UE-47253: Do not recreate the scene info in simulation mode
Change 3593585 by Michael.Dupuis
#jira UE-48484: no longer mark the package dirty while generating the GrassMap if they were not existing
Change 3593586 by Michael.Dupuis
#jira UE-48483 : hide the Rendering property group so user can't by mistake change the actor visibility
Change 3593593 by Michael.Dupuis
#jira UE-48327: Added guard to prevent crash when using CVarFoliageDiscardDataOnLoad and having invalid foliage in your map
Change 3593597 by Michael.Dupuis
#jira UE-48309: Do not build the tree if the static mesh is not even loaded yet
#jira UE-48340: Properly support the Random stream and partial buffer update
#jira UE-48228: Instance from blueprint are now visible in standalone game
#jira UE-45854: Crash probably linked to post load called on not loaded static mesh
#jira UE-48035: Properly init the per instance render data when creating a new component
Only update instance in non archetype or CDO.
Change 3594060 by Matt.Kuhlenschmidt
Fix high DPI mode being set for non-editor. Also prevent possible crashes due to dll handle for high DPI method being freed before called
Change 3594355 by Matt.Kuhlenschmidt
Change API help link to point to a website since offline CHM based docs are no longer used
#jira UE-48230
Change 3595358 by Matt.Kuhlenschmidt
Fixed bad initial window position and sizes for editor windows
By default SWindow.ClientSize will assume unscaled window size and will scale it based on DPI as needed. AdjustInitialSizeAndPositionForDPIScale argument can be used to disable this if needed
Fixed a dock tabs and the main frame not taking into account dpi scale when saving their layout. Now we always save window size at 1.0 scale and auto scale it based on DPI of the monitor it opens on.
#jira UE-48446
Change 3595590 by Matt.Kuhlenschmidt
Fix missing includes
Change 3595792 by Matt.Kuhlenschmidt
Fix style warnings
Change 3596418 by Bradut.Palas
fixing initial issue with dual keybinds (removed ensure macro to speedup first use of alternate key)
Change 3598679 by Max.Chen
PR #3872: Fix small typo in ImagePlate Plugin (Contributed by TheCodez)
#jira UE-48141
Change 3598720 by Max.Chen
Cine Camera: Add toggle to disable constraining the roll when look at tracking is enabled. This allows the user to animate the roll while tracking an object.
#jira UE-48316
Change 3600236 by Alexis.Matte
Create a LOD Custom Mode in the meshes editor UI. This allow user to compare details values between LODs
#jira UE-46822
Change 3600260 by Alexis.Matte
Make sure temporary rename do not create redirector
#jira UE-48364
Change 3600671 by Lauren.Ridge
PR #3913: Fixed 3D preview issue in the material editor (Contributed by YuchenMei)
#jira UE-48539
#jira UE-48180
#jira UE-48182
Change 3600812 by Jamie.Dale
We now defer the registration of IME contexts until an editable text first gains focus
Certain IMEs can have very high per-context costs, so this avoids that cost until we know that we definitely need to use the context
#jira UE-48100
Change 3601839 by Matt.Kuhlenschmidt
Fix USD import crash with "facevarying" normals
Change 3602434 by Jamie.Dale
Removing dead code
These flags were never being tested or used in any meaningul way
Change 3602611 by Jamie.Dale
Ensure PackageToReload is non-null
#jira UE-46655
Change 3602648 by Jamie.Dale
Fixed custom columns with the same name as fixed columns causing infinite duplications in the content browser
#jira UE-47392
Change 3602651 by Lauren.Ridge
Fix for parameter tooltips not being found
#jira UE-47417
Change 3604172 by Bradut.Palas
#jira UE-48449
#jira UE-48380
#jira UE-48381
#jira UE-48423
I moved the IsFilenameValidForSaving() function from FEditorFileUtils to FFileHelper so that it is accessible from CollectionManager.cpp in order to validate collection names as file names and no longer trigger any of the bugs.
Change 3604210 by Bradut.Palas
#jira UE-48718
Regression issue appeared from fixing a crash when using console command "open"
Reworked by only refusing to open local URLs in case of client mode and multiprocess being active simultaneously.
Change 3604258 by Jamie.Dale
IME contexts can now flag themselves as dead to avoid latent IME callbacks trying to access a deleted widget
#jira UE-46815
#jira UE-47295
Change 3604312 by Matt.Kuhlenschmidt
PR #3931: Fixing a few obvious copy & paste errors. (Contributed by DaveC79)
Change 3604352 by Matt.Kuhlenschmidt
Fix crash accessing potentially invalid parent layout from a detail category
#jira UE-48729
Change 3604402 by Lauren.Ridge
Epic Friday - array drag and drop
Change 3605228 by Cody.Albert
TSets and TMaps should now properly rehash if a key is modified in the details panel.
Change 3605275 by Alexis.Matte
Merge actor do not keep the material slot name
#jira UE-43246
Change 3605715 by Max.Chen
Sequencer: Fix cinematic mode getting activated on BeginPlay() instead of OnStartedPlaying().
#jira UE-48770
Change 3606411 by Max.Chen
Sequencer: Fix a few player state issues. When paused, calling stop now tears down properly (spawnables are removed, etc). When a level sequence is deleted, tears down properly as well.
#jira UE-42008
Change 3606440 by Max.Chen
Sequencer: Update spawanble name when the spawnable actor name is changed.
#jira UE-47815
Change 3606899 by Lauren.Ridge
Disabling enum-based arrays from reordering
Change 3606958 by Lauren.Ridge
Visual polish on array handles
Change 3607733 by Max.Chen
Sequencer: Check null in camera cut
Change 3607849 by Max.Chen
Sequencer: Clip transport controls.
#jira UE-48812
Change 3608181 by Max.Chen
#jira UE-48813 Correctly set GPlayInEditorID when initializing the PIE gameinstance, which does the initial tick. This fixes autoplay sequences
Copy from Dev-Framework
Change 3608361 by christopher.biancard
QAGame: Submitting test content for Array Element Reorder testing
Change 3608512 by Alexis.Matte
Add fbx exporter option dialog, support export all and cancel all functionality when doing bulk export.
#jira UE-48058
Change 3608629 by Max.Chen
Camera Rig: Fix crane and rail not being packaged properly.
#jira UE-48829
Change 3609217 by Matt.Kuhlenschmidt
Added a lock around access to slate active timers to protect it against race conditions when accessed on the slate movie thread and the game thread
Change 3609722 by Alexis.Matte
Make sure a warning is log when we cannot export an animation sequence.
#jira UE-48390
Change 3609774 by Alexis.Matte
Fix the merge actor build LOD scale again, a previous merge erase the fix
#jira UE-48156
Change 3609891 by christopher.biancard
QAGame: Minor additions for test coverage on Array Element Reorder
Change 3610171 by Lauren.Ridge
Fixes for reordering metadata, creating actual swap function out of three element functions
#jira UE-48823
Change 3610407 by Lauren.Ridge
Fixing highlighting and behavior to place dragged row in the spot you release (not below)
Change 3610472 by Lauren.Ridge
Moving final location logic
Change 3610797 by Lauren.Ridge
Disabling dragging handles during PIE
Change 3611089 by Lauren.Ridge
Disabling handles when overall tree is disabled
Change 3612479 by Lauren.Ridge
Fix for asset contex menu warning
#jira UE-46667
Change 3612791 by Michael.Dupuis
#jira UE-48914 : Add the possibility to specify if we need CPU access to the instance buffer depending on the usage.
Grass should always have CPU access.
Change 3612802 by Michael.Dupuis
missing file from checkin 3612791
Change 3612805 by Max.Chen
Sequencer: Fix crash with null GEditor
Copy from Release-4.17
#jira UE-48443
Change 3612806 by Max.Chen
Sequencer: Fix crash when capturing a movie with options enabling separate process and close editor.
Copy from Release-4.17
#jira UE-48487
Change 3612807 by Max.Chen
Sequencer: Fix crash upgrading the time range of a null track.
Copy from Release-4.17
#jira UE-48490
Change 3612808 by Max.Chen
Sequencer: Fixed dragging skeletal animations causing them to revert back to t-pose
Copy from Release-4.17
#jira UE-48367
Change 3612849 by Arciel.Rekman
Fix tesselation in packaged Linux projects (UE-24301).
- Change by Cengiz.Terzibas.
#jira UE-24301
Change 3613022 by Nick.Darnell
Editor - Fixing a crash on load with a null CoordIndex json node.
Change 3613030 by Matt.Kuhlenschmidt
PR #3932: UE-48693: if instead of while statement (Contributed by projectgheist)
#jira UE-48747
Change 3613047 by Matt.Kuhlenschmidt
PR #3933: Git plugin: add "branch source" in history window (Contributed by SRombauts)
Change 3613050 by Matt.Kuhlenschmidt
PR #3942: Sort Data Table Structures Alphabetically (Contributed by Nick-Pearson)
Change 3613062 by Matt.Kuhlenschmidt
PR #3939: Fix a typo in RecordQualityLevelsAnalytics(). (Contributed by samhocevar)
Change 3613241 by Nick.Darnell
Editor - Fixing the content browser's view settings to be project agnostic, and they will start saving again.
Change 3613329 by Lauren.Ridge
Moving favorite levels to a standard submenu so they also work on Mac
Change 3613344 by Nick.Darnell
Editor - Fixing the achorgrid show up as white in HDPI mode, seems because we were upsampling the image, the blend was between dark and a transparent white, so that caused everything to turn white in HDPI mode.
#jira UE-48921
Change 3613380 by Matt.Kuhlenschmidt
Fix FBX window being off the screen in high DPI
#jira UE-48872
Change 3614598 by Matt.Kuhlenschmidt
Fixed Sequencer Keyframes appearing out of place on High DPI Monitors
#jira UE-48915
Change 3614625 by Matt.Kuhlenschmidt
Fixed not being able to click on BSP correctly in high dpi
#jira UE-48947
Change 3614672 by Matt.Kuhlenschmidt
Fix combo box windows being larger than necessary on high dpi monitors
#jira UE-48908
Change 3614699 by Matt.Kuhlenschmidt
Fix typo
#jira UE-48941
Change 3615011 by Matt.Kuhlenschmidt
Fix color picker calculation appearing offscreen for high dpi
Change 3615013 by Michael.Dupuis
#jira UE-48897: Properly rebuild the tree when reapplying instance to the component
Change 3615014 by Colin.Benoit
Sequencer Recorder test content
Change 3615048 by Colin.Benoit
Sequencer Recorder: more test content
Change 3615118 by Lauren.Ridge
Updating realtime state of viewports to also change when settings toggled
#jira UE-48884
Change 3615127 by Lauren.Ridge
Remove delegate binding on viewport destruction
Change 3615180 by Bradut.Palas
#jira UE-48167 profiler crash
Don't duplicate the graph data when rebuilding because that completely voids the OneToOneMapping mechanism, resulting in the crash. Looking up objects in the mapping would always return null because the mapping contains the old addresses, before the rebuild.
One option would have been to completely rebuild the mapping according to the duplicate graph, which would be dubious because the duplicate method isn't specifically designed so that the result would replace the source.
But it looks like duplicating the data is not needed, it's safe to rebuild in-place, RebuildForFilter() doesn't do anything illegal with the objects. This is also the only purpose and the only reference of the function.
Change 3615232 by Lauren.Ridge
Adding input handling to the material editor viewport client
#jira UE-48909
Change 3615703 by Jamie.Dale
Fixed crash when fixing up references after a package rename failed
#jira UE-48856
Change 3615752 by Matt.Kuhlenschmidt
More generic fix for color picker and other windows that use CalculatePopupWindowPostion not accounting for DPI scale
Change 3615907 by Jamie.Dale
Fixed some crashes caused by CL# 3600812
Change 3616031 by Matt.Kuhlenschmidt
Added guard against invalid blueprints (ones without a generated class) being trying to be opened in the property matrix and failing
#jira UE-48986
Change 3616151 by Arciel.Rekman
Fixing adding array elements in config.
- "+Blah=Foo" will do Blah.AddUnique(Foo)
- ".Blah=Foo" will do Blah.Add(Foo)
- See JoshA re: why (also see: https://udn.unrealengine.com/questions/388157/incorrect-behavior-in-configcacheinicpp.html?childToView=389307)
Change 3616439 by Andrew.Porter
QAGame: Updating level visibility content in sequencer smoke map
Change 3616441 by Matt.Kuhlenschmidt
Fix more sequencer track offsetting with DPI scale
#jira UE-48981
Change 3617263 by Max.Chen
Sequencer: Fix crash in level visibility teardown. Null playback context.
#jira UE-49012
Change 3617316 by Max.Chen
Sequencer: Fixed a regression where the frame rate isn't getting initialized for a movie scene.
Change 3617648 by Matt.Kuhlenschmidt
Adding some windows specific logging around setting or failing to set process dpi awareness
Change 3617665 by Matt.Kuhlenschmidt
Guard against layers module not being loaded in keybinding automation test
Change 3617731 by Arciel.Rekman
Fix crashes on AMD Mesa drivers (UE-48374).
- Do not expose unnecessary symbols from libelf.a to avoid symbol collision with system library used by drivers.
Change 3617923 by Bradut.Palas
#jira UE-47072
Editor was crashing because deleted actor was not cleaned properly from asset editors. Changed IAssetEditorInstance to offer a function for deleting an object from the editor.
Change 3618088 by Matt.Kuhlenschmidt
Guard against crash with potentially invalid worlds in preview scenes
#jira UE-48997
Change 3618373 by Matt.Kuhlenschmidt
Force worldsettings to be hidden in editor so that it is not considered for selection
#jira UE-48996
Change 3618464 by Max.Chen
Sequencer: Fix regression where spawnables don't play because they're defined as temporary editor actors.
#jira UE-48923
Change 3619789 by Matt.Kuhlenschmidt
Fix DPI scale warnings in any kind of headless editor mode
Change 3619802 by Jamie.Dale
Fixed deprecation warning in malloc profiler
Change 3619841 by Matt.Kuhlenschmidt
Fix missing icons in the package project menu
#jira UE-48674
Change 3619991 by Lauren.Ridge
Fix typo in transaction message
#jira UE-48993
Change 3620086 by Lauren.Ridge
Moving realtime viewport logic to refresh instead of construct so it is always triggered upon opening a new material editor
#jira UE-48884
Change 3620616 by Matt.Kuhlenschmidt
Fix up file
Change 3621002 by Matt.Kuhlenschmidt
Back out change to apply scaling rules in loading screens since blueprint based DPI scaling rule classes will not have been created yet
#jira UE-49125
Change 3621049 by Arciel.Rekman
Fix a build error.
- Also make sure that we don't print confusing message when no messagebox can be shown
(this code changed during the merge).
Change 3621064 by Arciel.Rekman
Deleted too much in the previous changelist.
Change 3621369 by Matt.Kuhlenschmidt
Fix keybindings automation test failing due to multiple entries in the active choords array pointing to the same thing
#jira UE-49131
[CL 3621569 by Matt Kuhlenschmidt in Main branch]