This fix reverts the logic so that old sounds don't go through a pcm->float->pcm conversion.
#rb Jimmy.Smith, Dan.Thompson
#preflight 636ae824dc30a4ce96c34f99
[CL 23069835 by phil popp in ue5-main branch]
Removed redundant private include paths from build.cs files.
Fixed include paths to be relative to the private or public folders.
Hid or removed includes that reached into other private module folders.
Updated PublicInclude paths when necessary.
#jira
#preflight 631e281694758d0bf2ea1399
[CL 21960082 by bryan sefcik in ue5-main branch]
#jira UE-159832
#rb Aaron.mcleran Phil.Popp Dan.Thompson Josh.Adams
#preflight 62d260033c3df323907eaa93
[CL 21153330 by jimmy smith in ue5-main branch]
- Make the basic sound compression thread-safe by gathering immutable inputs from USoundWave before going async
- Report oggvorbis, adpcm and bink codec as thread-safe
- Remove old USoundWave write-back during cook as it is not needed anymore and would not be executed on DDC hit anyway.
- Fix missing RawData lock protection where RawData is used in editor
- 2h47m to 2h03m when cooking FN content with sound not present in the local DDC cache
#tests
- No binary diff on ShooterGame and FN cooked content
- Sound related automation tests all pass in EngineTest
#rnx
#rb Jimmy.Smith
#preflight 623dc8b84368f558e3167cc0
[CL 19525145 by danny couture in ue5-main branch]
#rnx
#rb none
#ROBOMERGE-SOURCE: CL 10869240 via CL 10869516 via CL 10869902
#ROBOMERGE-BOT: (v613-10869866)
[CL 10870584 by ryan durand in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3780878 by Nick.Darnell
UMG - Providing more information when the compile fails to find a bindable widget.
Change 3780855 by Gil.Gribb
UE4 - Fixed a linear search in EDL that caused performance problems for very large maps. Saves half the load time in FN-BR.
Change 3780803 by Thomas.Sarkanen
Dont create animation tasks for skeletal meshes that have no anim instance
This avoids some wasted work for non-animated attachments, such as pickaxes
#jira FORT-61523 - Don't create anim worker tasks if no AnimBP
Change 3780741 by Yenal.Kal
#jira FORT-60177
Fixed the bug where the anim branching points (begin and end) may be triggered twice incorrectly.
Change 3780663 by Gil.Gribb
UE4 - Batching for audio thread commands.
Change 3780466 by Ben.Marsh
Add error matcher for generic Microsoft errors (eg. 'cl : Command line error D8049 : command line too long to fit in debug record')
Change 3779937 by Nick.Darnell
UMG - Adding an accessor on UUserWidget to get the owning player state easier, since it's a common operation.
Change 3779858 by Sam.Zamani
#http
use separate "-multihomehttp" instead of "-multihome" for routing http socket
#jira FORT-61666
#tests none
Change 3779288 by Michael.Trepka
Changed FMacConsoleOutputDevice::Serialize to use FString's GetNSString() instead of converting the string using FPlatformString::TCHARToCFString to make it safer in case of garbage text passed in Data
#jira FORT-59762
Change 3779062 by Mike.Fricker
Merged CL 3731188 and CL 3733311 from //UE4/Dev-Editor.
----
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 3778954 by Nick.Darnell
Slate - Making the Horizontal and Vertical analog keys configurable in the navigation config. Tweaking how fast the navigation is with the analog stick, trying to tune the feeling.
Change 3778896 by Ben.Marsh
Separate FNameEntrySerialized from FNameEntry, rather than deriving from it. It has to be allocated differently, and many fields cannot be shared between the two.
#jira
Change 3778807 by Ben.Marsh
Fix Tencent include paths not registering if workspace directory contains a space.
Tencent include paths currently have a trailing backslash, and this is surrounded by quotes if the root directory contains a space. The backslash is interpreted as escaping the trailing double quote.
#jira
Change 3778686 by Luke.Thatcher
Reduced impact of dynamic vertex buffer RHI stall in D3D12
- In most cases we can avoid the stall if the vertex buffer has never been used before.
- Only when a buffer has an existing SRV do we need to stall.
- Also, delete copy and move constructors of FD3D12ResourceLocation. Moving or copying an instance of this class leads to double free crashes, so this is now a compile error rather than a runtime crash.
This saves an average of 2ms frame time in a StW lastperftest replay, with r.screenpercentage 10.
#jira FORT-61390
Change 3778679 by Thomas.Sarkanen
Fix Linux server crash - dont attempt to run threaded work in a single-threaded environment
We dont attempt to run animation update work multi-threaded in the same conditions that we didnt attempt to run animation eval work previously.
#jira FORT-61548
Change 3778591 by Ben.Woodhouse
Add build config to FPSChart HTML output
#jira FORT-56478
Change 3778175 by ben.marsh
Remove code to trigger an ensure on Arxan guards. We already send analytics for this, and don't need this legacy path. There is a large number of incoming ensures with this callstack that are clogging up crash reporter.
Will remove all the surrounding code in a later update to a development branch.
#jira
Change 3777750 by Chris.Gagnon
- Slate now supports a CustomBoundary Navigation type wich allows a custom handler if the boundary is hit.
- This provides the ability to have normal navigation while within the boundary and the custom function only on the boundary.
- This differs from Custom which is a full override of the navigation behavior.
Change 3777678 by Bob.Tellez
#UE4 Fix a bug that was causing fastpath nodes in non-nativized BPs to not be fastpath
Change 3776962 by Bob.Tellez
#UE4 Fix warning about missing virtual destructor by making a struct final (like other RHICommands)
Change 3776656 by Thomas.Sarkanen
Fix notifies not getting fired in cases where AlwaysTickPose was set on skeletal mesh components
This was causing AIs to get stuck in montage playback in some circumstances
#jira FORT-61324, FORT-60558
Change 3776655 by Bob.Tellez
#UE4 CIS fix after 3776629
Change 3776650 by Bob.Tellez
Counting uplugin and uproject files as code changes so UGS will trigger code builds on checkins containing these files
Change 3776649 by Nick.Darnell
UMG - Fixing a rare crash when destructing a widget in the designer. It's trying to remove widgets from a half garbage collected panel.
Change 3776629 by Bob.Tellez
#UE4 Using a more efficient data structure for keeping track of visited nodes when verifying EDL.
Change 3776328 by James.Golding
Add command line option (-statnamedevents) for enabling named events
Change 3776024 by Nick.Darnell
Slate - Adding an accessor to SSafeZone to get the amount of padding that will be added, given some scale.
Change 3775569 by Gil.Gribb
UE4 - Fixed bugs with r.DelaySceneRenderCompletion
Change 3775543 by Luke.Thatcher
[XBOXONE] [~] Remove stall in D3D12 CreateRHIBuffer
- Buffer update is enqueued as a task on the RHI thread instead of stalling the RHI thread for the duration of the update.
Change 3775488 by Thomas.Sarkanen
Prevented skeletal meshes that are not being ticked due to URO from dispatching tick tasks
#jira FORT-61157 - Run anim update on worker, even if not visible
Change 3775219 by Bob.Tellez
#UE4 Dont SerializeThumbnails when calling savepackage while editoronly data is excluded (cooking). This saves a lot of memory while cooking
Change 3774886 by Mike.Fricker
Fixed occasional crash when backing out to lobby
- Don't force DF data to be updated when the mesh isn't in the world or has no scene interface
#jira FORT-60863
Change 3774767 by Ori.Cohen
Fix race condition for creating statid in test configs
Change 3774682 by Bob.Tellez
#UE4 Don't bother clearing cached platform data during shutdown purge since there may be a lot of it and it takes a while to destroy it.
Change 3774621 by Bob.Tellez
#UE4 Move Tree rebuilding during cook from Serialize to PreSave to avoid building the tree multiple times for a single platform. Also properly clear out CacheMeshExtendedBounds.
Change 3774201 by Gil.Gribb
UE4 - Fixed rare crash caused by unmounting pak files.
Change 3773920 by Gil.Gribb
UE4 - Added experimental option r.StartPrepassParallelTranslatesImmediately which allows the parallel translate tasks from the prepass to start before we init shadows. Disabled by default.
Change 3773896 by Thomas.Sarkanen
Push non-rendered anim updates back onto the worker thread
Now when meshes are set to EMeshComponentUpdateFlag::AlwaysTickPose, we optionally kick of a task to perform parallel update only (no evaluation).
#jira FORT-61157 - Run anim update on worker, even if not visible
Change 3773886 by Gil.Gribb
UE4 - Reduced r.RHICmdMinCmdlistForParallelSubmit from 2 to 1.
Change 3773882 by Gil.Gribb
UE4 - Improved profiler markers when they are used without stats to cover the task graph and some things related to the parallel renderer.
Change 3773461 by Gil.Gribb
UE4 - Increased the granularity of the ParallelFor blocks for greater load balancing.
Change 3773459 by Gil.Gribb
UE4 - Adds TLS caches for MallocBinned2 to the Audio thread.
Change 3773458 by Gil.Gribb
UE4 - Added an experimental option to do the slate render before waiting for the rendering tasks.
Change 3773011 by Robert.Manuszewski
Header (uasset) and export (uexp) files will now be compared seperately when running cook commandlet with -diffonly to avoid situations where a mismatch in size of the header produces more differences between exports.
+ Renamed ini setting to ignore header differences from SkipHeaderDiff to IgnoreHeaderDiff
Change 3772867 by Thomas.Sarkanen
Nativization now correctly generates and builds code for "Client" builds
Overall this is a bunch of hacks, but necessary for nativization to work at present. Once the cooker and UAT both have a concept of "Client" targets, this can be implemented properly.
Instead of building to a "Client" directory, we build to "Game" for client-only platforms (like PS4, XboxOne)
Also we need to add "Client" targets to the whitelist for the nativized assets plugin, as UBT still thinks it is building for "Client"
#jira FORT-52823 - Nativizing Player Animation Blueprints
Change 3772408 by Robert.Manuszewski
Cook commandlet will now report full property name when running a diff against the existing cook (-diffonly)
Change 3772359 by Thomas.Sarkanen
Improvements to the Cpp backend to allow VC++ to compile nativized code more effectively
Added a new scoped helper to wrap areas of the code in PRAGMA_DISABLE_OPTIMIZATION. This helps with functions that are large tables or long lists of initializations.
Split anim node initialization up into functions, called from a seperate function dedicated to initializing anim nodes. This splits the 5k+ line constructor into mutiple smaller functions, which the compiler has no problems with.
Overall (along with splitting up the anim BP into functions in the asset) this reduces compilation time for the worst-case compilation unit from ~11m 40s to ~2m 32s.
#jira FORT-52823 - Nativizing Player Animation Blueprints
Change 3771975 by Zak.Middleton
Fix character proxies doing up to two floor check when only rotation changes. Add some optional verbose logging to FindFloor() and ComputeFloorDist().
#jira FORT-61134
Change 3771421 by Ori.Cohen
Fix CIS
Change 3771052 by Robert.Manuszewski
Package diff improvements (-diffonly mode for cooker). Exposed max diffs to report to ini and added the ability to suppress header differences reporting as they are usually a result of differences in exports anyway.
Change 3771039 by Bob.Tellez
#UE4 Allowing use of -FPS in PGO profile builds
Change 3770747 by Ori.Cohen
Added missing stat named events for anim bp
Change 3769616 by Arciel.Rekman
UBT: Use response files for compiler when compiling for Linux.
- Some command lines are too long when cross-compiling on Windows, which is a problem for non-unity builds (or local changes that result in exclusion of checked out files from the lumped units).
Change 3769457 by Gil.Gribb
UE4 - Added eviction to r.DoLazyStaticMeshUpdate. It just removes 10 prims a frame in a rolling fashion.
Change 3769136 by Michael.Noland
Engine: Improve IsServerDelegateForOSS to allow it to use the play world during PIE even if no context was passed in
Change 3768736 by Robert.Manuszewski
More debug info for ensure in FLinkerSave when a name that has not yet been mapped is being serialized
#jira FORT-60943
Change 3768634 by Robert.Manuszewski
Small optimization to FEDLCookChecker::Verify function
Change 3768603 by Robert.Manuszewski
Merging CL #3766740 by Steve.Robb
TMultiMap::Append added.
Change 3768586 by Ben.Woodhouse
csv profiler screen message
Change 3768506 by Thomas.Sarkanen
Duplicating CL 3764661 from Paragon:
Only update Children attached to Sockets in USkeletalMeshComponent::PostBlendPhysics().
Saves ~20% of STAT_UpdateChildTransforms and ~10% of STAT_UpdateLocalToWorldAndOverlaps in 5ofEach_Dusk_vs_Dusk automation test.
#jira OR-46341
#tests LaneMinionFXTests, monolith w/ full teams.
Change 3768504 by Thomas.Sarkanen
Duplicating CL 3758315 from Paragon:
Optimized PostAnimEvaluation when URO is skipping a frame with no interpolation. Skip unnecessary work.
PreEvaluateAnimation() is now only called if we're about to evaluate anims. PostEvaluateAnimation() is also called only if we have evaluated animations.
Therefore PostEvaluateAnimation() has been pulled inside of PostAnimEvaluation() instead of FinalizeTransforms.
Added a call to ConditionallyDispatchQueuedAnimEvents() in the event that we're not calling PostBlendPhysics because we have not evaluated or interpolated anims.
Added missing call to PostEvaluateAnimation() for PostProcessAnimInstance.
#jira OR-46341
#tests minion FX perf map, lane minion test map, monolith match with 2 full teams.
Change 3768097 by Bob.Tellez
#UE4 Fix non-editor CIS
Change 3767957 by Bob.Tellez
#UE4 Fix an issue that was causing FullLoadAndSave to fail to cache platform data for textures that were created by landscape on mobile and another issue that caused parallel saving to fail in landscape (when cooking for mobile targets)
Change 3767906 by Mike.Fricker
Add Blueprint functions to query parameters from MIC
- GetScalarParameterValue
- GetTextureParameterValue
- GetVectorParameterValue
MIDs already had these functions, but MICs did not.
Change 3767737 by Max.Preussner
Engine: Fix for external textures referenced by a material before being associated with a media player never having their uniform expressions recached
#author jack.porter
#jira FORT-59777
Change 3767735 by Bob.Tellez
#UE4 Setting Opened to false in FOutputDeviceFile::TearDown so if the device file gets initialized again it will do the same initialization logic as the first time.
#jira FORT-60918
Change 3767244 by Ethan.Geller
#jira FORT-60885 Merge in fix for memory leak from 4.18.1.
Change 3766567 by Marc.Audy
Fix initialization ordering warnings
Change 3766443 by Jian.Ru
Submit PSO locking fix again as it has passed local tests
Change 3766362 by Ori.Cohen
Added the ability to get concurrent captures in Test configurations without having to turn full stats on
Change 3766277 by Marc.Audy
Shrink Skinned and Skeletal Mesh Component, FBodyInstance, and UBodySetup
Change 3766275 by Marc.Audy
Better pack UTexture* classes
Change 3766272 by Thomas.Sarkanen
Fixes to enable auto-nativization for animation blueprints
For blend profiles in particular, I've added subobject support to the fake import table building for nativized assets:
- In FEmitterLocalContext::FindGloballyMappedObject, if we dont find the referenced asset then we traverse the object's outer chain if it is a subobject. We add it to UsedObjectInCurrentClass if we find its outer.
- Updated the structure used to build the fake import table to include a specified outer. Beforehand we assumed that all objects referenced by the import table were 'top-level'.
- Updated the fake import table building code in FLinkerLoad::CreateDynamicTypeLoader() to use the new specified outer if found. This asserts if it couldnt find the outer in the already-parsed dependencies (as it reverse-iterates). If in the general case thius turns out to be a problem we can move this to a two-pass system.
Disabled fast-path optimization when running a native anim BP, as native code is faster!
#jira FORT-52823 - Nativizing Player Animation Blueprints
#jira FORT-57378 - Perf optimization: animation blueprint improvements
Change 3766215 by Marc.Audy
Shink FFromatContainer from 88 bytes to 24 by storing in TSortedMap instead of TMap
Change 3765664 by Michael.Noland
Engine: Add support for sets to FJsonObjectConverter::JsonValueToUProperty
Change 3765624 by Marc.Audy
Create helper macro in Archive.h for encapsulating needed steps for serializing a bitpacked boolean
Change 3765200 by Nick.Darnell
Slate - Fixing a memory leak in the invalidation panel. It never cleared out the cached textures and materials it kept alive during retention.
Change 3764881 by Wes.Hunt
Fix FApp::Get/SetIdleTimeOvershoot. It was overwriting IdleTime, which made FrameTimeWithoutSleep look like FrameTimeWithSleep.
#jira FORT-60585
#review-3764882 @arciel.rekman
Change 3763872 by Max.Chen
Sequencer: Set default completion mode for all sections to project default.
Copy from Dev-Sequencer
#jira UE-49480
Change 3763871 by Max.Chen
Sequencer: Add config for default completion mode for movie scene sequences. The default for level sequences is RestoreState. All others, such as UMG are set to KeepState.
Copy from Dev-Sequencer
#jira UE-49480
Change 3763810 by Gil.Gribb
UE4 - remove some init timing spew in programs (i.e. UHT)
Change 3762939 by Robert.Manuszewski
Removing all locks from FEDLCookChecker to improve SavePackage performance
Change 3762851 by Bob.Tellez
Duplicating CL#3740778 from //UE4/Dev-Editor
Fixed issue with content browser column sorting
#jira UE-49460
Change 3762660 by Bob.Tellez
#UE4 Fix a few parallelsave threading problems.
Change 3761861 by Marc.Audy
Fix archive complaints about bitfield
Change 3761802 by Marc.Audy
Pack FTimeline, FHitResult, FAnimUpdateRateParameters, FMeshBuildSettings
Change 3761299 by Matt.Kuhlenschmidt
Fix levels not being lockable/unlockable if they are not checked out
#jira FORT-60086
Change 3760422 by Bob.Tellez
#UE4 Stop caching or clearing platform data when saving concurrently. This was causing threading problems in materials.
Change 3760113 by Jian.Ru
Back out changelist 3759715 as it causes a crash on UGS autotest
Change 3759761 by Jian.Ru
Clean up some debug comments
Change 3759715 by Jian.Ru
Removing excessive locking when accessing PSO caches.
Change 3759285 by Nick.Darnell
Editor - Fixing the length of the datatable row dropdown in the editor.
Change 3758334 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 3758332 by Ben.Marsh
Fix output subfolder being appended twice when generating project files. Causes incorrect command line when launching from Visual Studio.
#jira
Change 3758215 by Brian.Bekich
Make Tint property of FSlateBrush NotReplicated now that it is WITH_EDITORONLY_DATA so that cooked clients can connect to uncooked servers
Change 3757702 by Bob.Tellez
#UE4 Fix -NoConcurrentSave cook option in FullLoadAndSave
Change 3757545 by ben.marsh
Suppress Arxan warning about being unable to install a default guard at it's default location.
Change 3757452 by Aaron.McLeran
#jira FORT-59675 Client Crash in __delayLoadHelper2()
Fixing build error on linux.
Change 3757389 by Hongyi.Yu
Fixed the crash in UEditorEngine::CheckForWorldGCLeaks() when load a level (level A), PIE, load a sublevel of level A and then load another level.
#jira FORT-58283
Change 3757229 by Aaron.McLeran
#jira FORT-59675 Client Crash in __delayLoadHelper2()
Change 3757077 by Max.Preussner
MediaAssets: Fix for media texture crashing if media player is generated from GC clustered blueprint
#jira FORT-59774
#jira UE-51943
#tests none
Change 3756854 by Mike.Fricker
Fix "double-delete" crash when using level streaming
- Backed out unintentional network checksum change!
Change 3756790 by Bob.Tellez
#UE4 Fix inconsistency with how FSoftObjectPtr case is managed between FLinkerSave and FArchiveSaveTagImports, which would cause a cook ensure under some circumstances
Change 3756639 by Arciel.Rekman
Pool memory (only 64KB allocations) on servers (FORT-60342).
- Has a fixed cost of 1GB virtual memory usage.
#jira FORT-60342
Change 3755995 by Alexis.Matte
Fix crash when importing morph target with "built in" tangent option
#jira UE-52319
Change 3755896 by Arciel.Rekman
Remove unnecessary switch for profiling (part of FORT-58878).
- -fno-omit-stack-pointer is only needed when getting callstacks for perf.
#jira FORT-58878
Change 3755711 by Mike.Fricker
Fix "double-delete" crash when using level streaming
- Initialize network GuidCache entries as soon as Guids are registered on the server so that we can fill them out with valid information before the object is destroyed. Fixes issues when a guid is exported for the first time to send a destroy to clients. (from RyanG)
Change 3755701 by David.Ratti
FObjectReplicator no longer a GCObject since adding/removing from the global GCObject list is too slow. Managing FObjectReplciators's object references at the NetDriver level now.
#jira FORT-60317
#review-3755702 @Ryan.Gerleve
Change 3754928 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
#jira FORT-58878
Change 3753986 by Ben.Zeigler
#jira UE-45505 Fix issue where FCoreUObjectDelegates::OnAssetLoaded was being called from an inner loop inside EndLoad. Maps would register components from that callback, and if those registers started their own loads, those objects would be returned in a partially loaded state. We now defer the asset loaded callback to the very end of the loop so recursive loads work properly
Change 3753274 by Ben.Marsh
Fix blank lines in errors and warnings being omitted from notification emails.
#jira
Change 3753175 by Thomas.Sarkanen
Fix hang in animation editor menus
Sound waves were being loaded by the visibility delegate for the 'play' button overlay. This caused major hangs as the ogg compressed data was built on the fly. Handled the unloaded asset case in the various delegates.
Also made the menu larger, as picking a sound wave was all but impossible when you couldnt even see one in the list.
#jira UE-52271 - Persona menu option locks up editor
Change 3752887 by Nick.Darnell
Slate - Adding automatic invalidation to a few more widgets that were found lacking when adding or removing children.
Change 3752785 by Marc.Audy
Avoid doing any work to evaluate streaming volumes if there are no player controllers using streaming volumes
Change 3752185 by Ben.Marsh
Reduce cook time regression caused by correcting package names to match case on disk (to fix deterministic cooking problems). Switched to use IPlatformFile::GetFilenameOnDisk(), and improved performance of FWindowsPlatformFile::GetFilenameOnDisk() by using GetFinalPathNameByHandle() instead of recursively searching up the directory tree.
#jira
Change 3751813 by Ben.Marsh
Improve parsing of diagnostics for deterministic cooking test. Now allows multiple lines in the generic EC error/warning matcher if indented more than the first line, and skips over empty lines.
#jira
Change 3750413 by Ben.Zeigler
Fixes for cook save performance regressions. Add GetAllMarks to object and use that to dramatically reduce contention for the object mark annotation. Implement ShouldLoadForServer/Client directly on some core classes to stop it from calling the slow generic one
Fix issue where refreshing tags for asset registry would do a very slow array delete/add
Improve speed of redirectcollector, there's no need to force-rehash the soft object path list as the remove handles it conditionally
Change 3750014 by Lina.Halper
- duplicate change from following changelists
CL 3669273 - delete all tracks option
- allow to opt out on bone track importing
- fixed pose preview for fullbody to select weights that has pose from asset.
CL 3672170 Remove track support for Animation Blueprint Library
This is required for facial pose retargeting
Change 3749714 by Brian.Bekich
Back out changelist 3748287
#jira FORT-60125
Change 3749377 by Robert.Manuszewski
Improved log formatting for reporting deterministic cook issues.
#jira FORT-59919
Change 3749360 by Robert.Manuszewski
Improved performance of -diffonly mode for cook commandlet for assets with hundreds of thousands of differences.
#jira FORT-59919
Change 3748746 by Hongyi.Yu
Fixed compiling error in Automation project
#jira FORT-59621
Change 3748530 by Mike.Fricker
Fixed non-determinism of landscape grass across platforms/compilers
This causes bushes to be located in different places depending on what platform you were playing on.
1) Random number reseeds were happening as part of function arguments to FVector(), but function argument evaluation order is unspecified, and behaved differently on Consoles/Mac/Windows. Fixed this bug.
2) Strings used for foliage CRCs could use different character sizes on different platforms. Now we always use ANSI.
3) Strings used for CRCs could have possibly have different case. Now forced lowercase.
#jira FORT-60109
Change 3748471 by Zak.Middleton
Added stats to NetDriver TickFlush and stats gathering within that function.
Change 3748287 by Brian.Bekich
Adding net.MaxStringSerializationSize to cap maximum string read from network, default to 4096, used by FNetBitReader
Deprecating MAX_STRING_SERIALIZE_SIZE in favor of the cvar
FInBunch defaults to prior behavior if cvar is 0
UPackageMap::SerializeName and UPackageMapClient::SerializeNameAsString will always cap at NAME_SIZE
Check for path name serialization error before tryng to read checksum
#jira FORT-57974
Change 3747980 by Bart.Hawthorne
In Oodle, only generate and write dictionaries on Windows, Mac, and Linux
Change 3747642 by Gil.Gribb
Fix CIS
Change 3747635 by Zak.Middleton
Avoid string alloc on every ServerMove() call on the server.
Change 3747560 by Gil.Gribb
UE4 - Fixed XBox and Windows thread priorities. Only 2 though -2 seem usable and some of the old values were being ignored.
Change 3747548 by Gil.Gribb
UE4 - Changed thread pool to be TPri_SlightlyBelowNormal so that they will not preempt HP task graph tasks.
Change 3747544 by Bart.Hawthorne
When detecting if Oodle is installed, use the newest version instad of the oldest one.
Change 3746440 by Robert.Manuszewski
Dterministic cook issues reporting improvements
- Huge performance improvements
- Added new metric to the summary: NumberOfDifferencesInPackages
- Diff stats have their own section now (Package.Diff)
- When running with -diffonly there commandlet will not log the Warning/Error summary anymore
- Callstacks are no longer logged with instruction addresses
- Because callstacks are no longer logged with addresses I can collapse them for structures that otherwise would be split into multiple separate callstacks
- Callstacks, Serialized Object and Serialized Property are now indented
- Each asset is capped at 5 entries. If there's more differences, they'll be logged as single warning.
- Replaced \r\n with \n in the callstack log to make it work better with EC
#jira FORT-59919
Change 3746426 by Gil.Gribb
UE4 - Tuned dispatch in the deferred renderer. Added r.DoPrepareDistanceFieldSceneAfterRHIFlush and defaulted it to on.
Change 3746348 by Mike.Fricker
Added new CVars to toggle level streaming behavior
- No effective change to engine yet. The defaults values enable the same default behavior.
- New CVar: "s.ForceGCAfterLevelStreamedOut" (Whether to force a GC after levels are streamed out to instantly reclaim the memory at the expensive of a hitch.)
- New CVar: "s.ContinuouslyIncrementalGCWhileLevelsPendingPurge" (Whether to repeatedly kick off incremental GC when there are levels still waiting to be purged.)
- New CVar: "s.AllowLevelRequestsWhileAsyncLoadingInMatch" (Enables level streaming requests while async loading (of anything) while the match is already in progress and no loading screen is up)
Change 3746127 by Gil.Gribb
UE4 - Slight tweak to more agressively batch occlusion queries.
Change 3746111 by Cecil.McRae
Change 3745681 by Bob.Tellez
#UE4 Prevent attempting to execute a remote process to get the metal shader compiler version if no remove process machine has been configured. (Fixes a warning)
Change 3745631 by Matt.Kuhlenschmidt
Fix details panel crash after compiling blueprints that have edit conditon properties
Change 3744544 by Gil.Gribb
UE4 - Downgraded a fatal error to a warning. Example: Found package without a linker, could find SceneComp in /Game/AIDirector/AIDirector_Fortnite, but somehow wasn't finished loading. This is a sort of cook mismatched caused by the fact that all PS4 cooks have server-only data in them.
#jira FORT-59879
Change 3744419 by Matt.Kuhlenschmidt
Fix opening color picker causing values to change. Was due to conversion between srgb and linear color.
Change 3744270 by Ben.Marsh
Merging change to include deterministic cooking summary from Dev-Core (CL 3743182).
#jira FORT-59919
Change 3743621 by Guillaume.Abadie
Fixes subsurface profile fallback to lit shading model when Opacity == 0, introduced by 3447144.
#jira UE-51569
Change 3743403 by Gil.Gribb
UE4 - Merged lockfree / taskgraph fix from //UE4 (CL 3732262)
Change 3743392 by Gil.Gribb
Merged IO fixed from //UE4 (CL 3641155)
Change 3743376 by Gil.Gribb
UE4 - Added r.WarningOnRedundantTransformUpdate to produce warnings on redundant transform updates.
Change 3743372 by Gil.Gribb
UE4 - Added a stat for distance field verification...which takes a very long time, but does not affect test or shipping config.
Change 3743030 by Bob.Tellez
#UE4 Revert some code the was accidentally merged to UE4Main
#jira UE-52032
Change 3742611 by Josh.Markiewicz
#UE4 - fix for crash in destructor probably related to the freeing of memory via default destructors AFTER CefShutdown() has been called
#tests crashes before, no crash after (not sure if it was a 100% crash but this seems better regardless)
Change 3742187 by Nick.Darnell
Slate - Adding a new optional parameter to direct routing for the widgets under the cursor in Slate Application. Essentially ProcessReply occasionally needs to know the widgets under the cursor, the previous implementation, just used the routing path, this results in missing sending mouse leave messages to widgets under the cursor when dragging begins, which often left things with hover effects in bad states.
Change 3742053 by Michael.Trepka
Copy of CL 3713881
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 3742050 by Michael.Trepka
Copy of CL 3711085
Reenabled UBT makefiles on Mac
Change 3741924 by Josh.Markiewicz
#UE4 - delete EpicSurvey module
- working toward engine/plugins/online removal from game branch
Change 3741865 by Nick.Darnell
UMG - Fixing a High DPI bug that wasn't scaling the offset for DragDrop widgets when using In-Window rendering that games depend on for DragDrop effects.
Change 3741442 by Ryan.Gerleve
Fix initialization order warnings
Change 3741370 by Ryan.Gerleve
Back out changelist 3689397. The memcpy in one of the FInBunch constructors is not portable and causes this change to break networking on Android.
Change 3740914 by Peter.Knepley
Restore player name obsfuscation
Change 3740828 by Marc.Audy
Dynamically create FKey if the char code is unknown
#jira FORT-59735
Change 3740811 by Ben.Marsh
UAT: Fix double-spacing of lines output by Utils.RunLocalProcess, and use a non-local function to output them for more readable logs.
#jira
Change 3740328 by Bob.Tellez
#UE4 Fix FullLoadAndSave cook method
Change 3740327 by Bob.Tellez
#UE4 Minor movie scene cooking improvements
Change 3740280 by Bob.Tellez
#UE4 Fix shipping config CIS
Change 3740232 by Bob.Tellez
#UE4 Gave OodleHandlerComponent a short name so it doesnt hit maxpath length issues on build machines.
Change 3740209 by Nick.Darnell
UMG - Finishing the ability to add a "Custom" method for Navigation. Currently the editor implementation leaves me wanting, but it works for now. You can put the name of a function to call (needs to match a signature that returns a UWidget).
Change 3740207 by Nick.Darnell
Slate - Navigation attempts when the user claims they are doing custom or explicit, if those methods don't return a valid widget, we don't treat it like the attempt failed and fallback to default navigation methods. Instead we use it as a trigger to indicate that no navigation should occur and treat it like a stop.
Change 3740189 by Bob.Tellez
#UE4 Fix mouse cursor position being set when hovering over the viewport in windowed mode despite not having focus
Change 3740171 by Marc.Audy
Fix merge issue causing compile error for AutomationTool
Change 3739270 by Ben.Woodhouse
Use background task graph affinity on platforms that implement it (e.g. XB1). Saves 8ms on GC spikes and ~0.5ms on the renderthread
#jira FORT-56961
Change 3739244 by Ben.Woodhouse
-statunit commandline option
Change 3738920 by peter.knepley
Fix issue where simulated proxies had bad crouch state when re-entering relevancy
Change 3738904 by Gil.Gribb
UE4 - Moved audio decompression tasks to the background thread pool. Controlled by a cvar AudioThread.UseBackgroundThreadPool, which defaults to 1.
Change 3738378 by Ori.Cohen
Added better profiling for scene query hitches
Change 3736984 by Ben.Woodhouse
Dummy merge: Accept main version of windowsrunnablethread.h, so Windows gets the new priorities
#jira FORT-56700
Change 3736754 by Zak.Middleton
Remove engine hacks of K2_SetActorLocation etc for pending engine merge. Will replace with delegates on transform updates for relevant classes.
Change 3736282 by Hongyi.Yu
Don't check target file while doing iterative shared prebuild cooking.
#jira FORT-58911
Change 3736109 by Michael.Trepka
Updated FMallocLeakDetectionProxy to not use a critical section internally on top of thread safety measures performed by FMallocLeakDetection and the underlying FMalloc implementation. The improvements are biggest on Mac, in particular in low framerate situations, as Metal RHI uses malloc heavily on multiple threads, but it's also a nice 10% improvement on a high end PC.
#jira FORT-55309
Change 3735765 by Ben.Woodhouse
Fix GTSynctype logic when vsync is disabled. This was breaking profiling
Change 3734436 by Marcus.Wassmer
More reliable Aftermath data.
#jira FORT-45518
Change 3734103 by Bob.Tellez
#UE4 Exposing GetRefPosePosition on SkinnedMeshComponent to BPs
Change 3733985 by Saul.Abreu
#jira FORT-58816
"Special case zero-width space in the text shaper to avoid fonts rendering the fallback glyph" - Jamie Dale
Needed to workaround an issue with guillemets (weird arrow quotes).
Change 3733922 by Brian.Bekich
Setting max serialization size in FNetBitReader to prevent runaway string reads from replicated object paths
Check for path name serialization error before tryng to read checksum
#jira FORT-57974
Change 3733850 by Max.Chen
Sequencer: Return unhandled only if not dragged. This fixes a bug where dragging in the track area would sometimes leave the handled state with the time slider controller and not allow you to pop up a menu with the movement tool.
#jira FORT-56092
Change 3733299 by Ethan.Geller
#jira FORT-58943 Handle corner cases for repeated calls to precache buffers.
Change 3732907 by Gil.Gribb
UE4 - Removed slow HLOD code from frustum cull loop and set things up at AddPrim time instead. Saves 1-3ms.
Change 3732728 by Robert.Manuszewski
Fixing a crash when dumping stats with massive callstacks
#jira FORT-58901
Change 3732438 by Marc.Audy
When a client informs the server that it has loaded a streaming level force a net update on all dormant actors that have at one point replicated data to relevant clients and ensure that the connection's destroyed startup/dormant actors list is properly populated.
#jira FORT-56997
Change 3730413 by Lukasz.Furman
fixed PlayerName encryption key
#jira FORT-59066
Change 3729588 by Bob.Tellez
#UE4 Only calling FixupData on load. Fixes crash during parallel saving.
Change 3729475 by Marc.Audy
Fix missing ;
Change 3729444 by Marc.Audy
Fix cases where GetWorld() being called multiple times per function
Change 3729143 by Hongyi.Yu
Added support to extract pak files to mount point.
- Extract with "-ExtractToMountPoint" when extracting pak in DiffCookedContent()
#jira FORT-58635
Change 3728981 by Nick.Darnell
Slate - Fixing a bug with Slate turning on statid tracking even when the slate verbose stats are not being used.
Change 3728838 by Zak.Middleton
Compile out GetWorld() call in check() in Test and Shipping builds, to avoid skewing profiling.
Change 3728604 by Jian.Ru
Submit one render command rather than many in FScene::UpdateParameterCollections
Change 3728434 by Marc.Audy
PostSignificance should always fire when unregistering regardless of whether this is the last object in the tag.
Change 3728427 by Gil.Gribb
UE4 - reduce stat overhead when not collecting stats.
Change 3728197 by Marc.Audy
Properly call post significance on initial registration if the post significance type is sequential
Change 3726266 by Gil.Gribb
UE4 - Force HISMC trees to rebuild during cook. This allow us to change parameters without resaving maps.
Change 3724501 by Marc.Audy
Fix initialization order
Change 3724411 by Ben.Woodhouse
Point light shadow rendering optimization - Made per-triangle culling take Z into account.
In FortGPUTestbed (with grass shadow casting enabled), GSVerticesOut reduced from 464k to 234k.
On xbox one, a pointlight GPU cost reduced from 6.7 to 4.1ms.
On PS4, GPU cost went from 2.3 to 1.9ms.
#jira FORT-58921
Change 3724367 by Chad.Garyet
Downgrading lock warning about still waiting to a message instead of a warning.
Change 3723903 by Max.Preussner
MediaAssets: Merged workaround for uninitialized media sound waves from 4.17
#jira FORT-57260
Change 3723134 by Lukasz.Furman
added deprecation for PlayerState.PlayerName, it should remain accessible only through Get/Set functions to control obfuscation
Change 3722955 by Jian.Ru
Fix a compilation warning
#jira FORT-58749
Change 3722667 by Luke.Thatcher
[BUILD] [!] Fix PGO failures on build machines.
- The strings "Failed" and "error" are always treated as build failures, even if the build task returns a success code.
- Failure to reserve a device should not be fatal.
#jira FORT-58001
Change 3722291 by Lukasz.Furman
restored public access to PlayerName for now, current code will be going through accessor
Change 3721012 by Alicia.Cano
chunk title file generation
#jira FORT-53605
Change 3720961 by Marcus.Wassmer
Fix bad UVDensities on objects causing texture streaming to fail. Better fix will come with the engine merge.
#jira FORT-58240
Change 3719318 by Lukasz.Furman
replaced old branch name assertions
Change 3719047 by Lukasz.Furman
added branch name assertion to core headers to avoid duplicating it
Change 3718499 by peter.knepley
Fix for a crash when calling FSlateApplication::Get().FindPathToWidget in response to a widget destructing. Widget must be invalidated before the reference is cleared or else someone else might assign a shared reference to it during destruction.
Change 3716965 by Alicia.Cano
No sound was playing for Android.
#jira FORT-58302
#android
Change 3715746 by Ben.Marsh
Hide Arxan warnings about PDB files not being present.
#jira
Change 3715172 by Bob.Tellez
#UE4 FullLoadAndSave now does SavePackage in parallel.
Change 3715055 by Bob.Tellez
#UE4 Fix to actually use the precached streaming audio DDC data when cooking.
Change 3714130 by Bob.Tellez
#UE4 Core changes to allow SavePackage to be done concurrently
Change 3714099 by Bob.Tellez
#UE4 Pull the logic to initialize and uninitialize the physics scene for a world out into separate functions
Change 3713145 by Ben.Marsh
Disable an Arxan warning in EC.
#jira FORT-56926
Change 3712904 by Ben.Woodhouse
Fix for gpu profiler crash on pre-maxwell nvidia (or when r.gpuprofiler is set to false)
Change 3712693 by Ben.Woodhouse
Workaround for PS4 flip thread crash in dev builds. Caused by the flip thread/offset threads being shutdown before being initialized. The high level logic is now robust to that. We should fix the PS4 RHI ideally, but this is simpler for now.
#jira FORT-58409
Change 3712544 by Ben.Woodhouse
add missing skylight diffuse gpu stat
Change 3712515 by Ben.Woodhouse
CSV profiler GPU and pre-declared stat support
- refactor the GPU profiler so it's no longer dependent on the stats system and can work in Test builds
- add support for pre-declared CSV stats, using FNames (these are required for GPU stats)
- add DECLARE_GPU_STAT macro which handles STATS and CsvProfiler declarations
Note: still a few issues to resolve with GPU stats: these randomly go to 0 at times during a replay on XB1, the GPU total is lower than the stat unit number, and the unaccounted stat is too large due to missing stats
Change 3712297 by Mike.Fricker
Fixed huge client hitch when applying changes to in-game options
- Every component was being re-registered when r.SimpleForwardShading was updated by the scalability system, even if the value hadn't changed. Now, it only re-registers components if the value changes on the fly. (e.g. when turning Shadows off or on PC)
#jira FORT-57661
Change 3711501 by Ben.Marsh
Fix build failure on Linux.
#jira
Change 3710962 by David.Ratti
Add SCOPE_CYCLE_UOBJECT for SourceObject of GE - this will tell us what weaponw as applying the GE
Change 3710602 by Marc.Audy
Only create MIDs as a child of the calling object if construction script is running
Change 3710421 by Ben.Woodhouse
Bring over a couple of XB1 rendering fixes from 4.18
3692692: Integrate XB1 translucent lighting fix
3674543: D3D12 : Fix bug with non-CS version of UpdateTexture3D caused by bad depthstride. This was causing corruption in the indirect lighting cache
#jira UE-49416
Change 3710338 by Marc.Audy
Fix Json <-> Property converter to handle maps with struct keys
Merged from CL# 3521195
#jira UE-46616
Change 3710226 by Bob.Tellez
#UE4 Increase TaskGraph stack size in editor builds since. SavePackage uses a deep callstack which exceeds the 384 memory limit
Change 3709046 by andrew.grant
Added ALLOW_CONSOLE_IN_SHIPPING define that Target.cs files can set to turn on console in shipping builds
#jira FORT-57180
Change 3709040 by andrew.grant
Fixed issue where this could fail if a messagebox was spawned early during initialization
Change 3708830 by Bob.Tellez
#UE4 Commandline switches/options are no longer detected when found between quote characters. This causes options from not being incorrectly detected when passed in as a value from another options. i.e. -Option="-log" no longer causes -log to be picked up. This removes the syntax of specifying parameters like "Option=Value", which should now be replaced with -Option="Value"
#jira FORT-57833
Change 3708826 by Bob.Tellez
#UE4 Removed needless calls to RegisterSerializedShaders in the saving codepath of material serialization. This function is only relevant when loading shaders.
Change 3707905 by Ori.Cohen
Fix attached skinned mesh never being unhidden due to scale 0 and render tick optimization
#jira UE-51485
Change 3706450 by Chris.Bunner
Removing illegal material set on decal component in GameplayStatics.
Set a related JIRA, this doesn't actually fix the issue but contributes.
#jira FORT-51597
Change 3706223 by Marc.Audy
Shrink UPackage class size substantially
Change 3706221 by Marc.Audy
Store CustomVersions in array rather than set
Change 3705798 by Bob.Tellez
#UE4 ShadowDepthVertexShader.usf fix to fix Mac cook.
Change 3705613 by Uriel.Doyon
Texture streaming integration from Main.
#jira FORT-57376
Change 3705137 by Michael.Trepka
Fixed MetalRHI warning when compiling without MALLOC_LEAKDETECTION defined
#jira FORT-55309
Change 3704310 by Marcus.Wassmer
fix d3ddebug error with shadowcasting pointlights
also suppress spammy d3ddebug data about texture debug names
#jira FORT-58063
Change 3703477 by Marc.Audy
Minor tweak to keep Padding on one cache line.
Change 3703449 by Michael.Trepka
Don't use parallel RHI execute on Mac if MALLOC_LEAKDETECTION is enabled as this combination affects performance significantly due to mutex locking in FMallocLeakDetectionProxy
#jira FORT-55309
Change 3703217 by Marcus.Wassmer
Update PS signatures to match VS. Fixes crashes when running witih -d3ddebug which we need to catch real problems
#jira FORT-58021
Change 3702926 by Aaron.Eady
#JIRA na
Engine Code Improvements (that this project doesn't have yet);
Added engine code for drawing a debug 2D box.
Added engine code that allows for Keyboard Shortcuts to be special characters like backslash \.
-- Code --
DrawDebugHelpers:
DrawDebugCanvas2DBox() - Added this to allow us to draw debug 2D boxes.
RemoteConfigIni:
SpecialCharMap - Updated this TCHAR* property to be in the right order so you can use special characters like backslash as keyboard shortcuts.
Change 3701976 by Michael.Noland
Editor: Rewrote CallInEditor support and promoted it so it can be used on functions in any class, not just blueprints derived from AActor:
- CallInEditor used on native UFUNCTION() declarations will now show up without having to make a BP subclass
- CallInEditor can now be used as a top-level keyword in the UFUNCTION() declaration (e.g., UFUNCTION(Category=CoolCommands, CallInEditor))
- Now shows each function as a separate button, placed in the category associated with the function
- The button strip entry is now searchable by function name or tooltip
- Prevented operating on functions that have parameters or return values, which would crash before
- Removed the duplicate copies of properties placed in the Blutility section
- Added a scoped transaction around CallInEditor execution
- Allowed functions to be marked as CallInEditor in addition to custom events (currently we don't allow editing category or tooltip on custom events...)
Editor: Moved Experimental/EarlyAccessPreview details customizations up to UObject so it can be used on any class, not just actors/components
Edigrating CL# 3374995, 3375121, and 3375308 from Dev-Framework to FN main
Change 3700836 by Bob.Tellez
Modified commandline parse function, to detect when it is incorrectly parsing a parameter, from within another parameters value (not exhaustive).
For example, this commandline only contains the parameter ParamA. It should not be possible to parse ParamB, as it is part of ParamA's value:
-ParamA="-ParamB=Value"
#jira FORT-57833
Change 3700821 by Bob.Tellez
Merging CL#3461205 from //UE4/Dev-Core
Fixed parameter parsing so that arguments are not parsed if not preceeded by a whitespace (for example "-Log" was parsed in "TM-Log")
#jira UE-33790
Change 3699584 by Chad.Garyet
Upping the timeout on symstore to half an hour instead of 15 minutes. Symstore on xbox takes about ~22 minutes and if two builds are going simultaneously it can cause a job to fail due to the timeout being hit.
#jira FORT-0
Change 3698692 by Aaron.McLeran
#jira FORT-57582 crash in sound mix state code
- Removed the assert as it looks like that state is now possible.
Change 3698411 by Bob.Tellez
#UE4 One last correctness fix for when to not save generated base ini files.
#jira FORT-57315
Change 3698390 by Bob.Tellez
#UE4 Slightly more accurate logic to prevent writing of base ini files (old logic may have prevented writing of non-base ini files)
#JIRA FORT-57315
Change 3698369 by Bob.Tellez
#UE4 Ensure that Tcp/Udp messaging plugins are disabled in shipping config
Change 3698352 by Bob.Tellez
#UE4 Minor additional fix to make sure DISABLE_GENERATED_INI_WHEN_COOKED only affects cooked builds
#jira FORT-57315
Change 3698341 by Bob.Tellez
#UE4 DISABLE_GENERATED_INI_WHEN_COOKED now properly prevents all base ini file loads from happening from a generated folder. It also prevents writing generated ini files completely.
#JIRA FORT-57315
Change 3697553 by Nick.Darnell
Slate - When setting the content of an SBox it should always invalidate.
Change 3697330 by Bart.Hawthorne
APlayerController::ServerShortTimeout_Implementation now only iterates over the active object list instead of uisng an actor iterator, since non-replicated actors wont have a network object info to update.
#jira FORT-57099
#tests ran 100 player bot match
Change 3695578 by Bob.Tellez
#UE4 Fix Win32
Change 3695508 by Eric.Newman
Tweaked LogInit logging to clarify when the command line is being filtered
* Encountered this red herring when evaluating crash logs
#jira FORT-55839
#tests ran shipping & debug client builds, and editor game build
Change 3694898 by Michael.Trepka
Fixed Vorbis audio not playing on non-Windows platforms due to changes in CL 3668361
#jira FORT-57121
Change 3694655 by David.Ratti
Reimplement TweakObjetPtr optimizations with FObjectReplicator as an FGCObject instead of the owning channel being responsible for adding the replciator's ObjectPtr to the reference collection. (There are cases where object replicator ownership is transferred).
#JIRA FORT-57298
Change 3694491 by Ben.Woodhouse
Change courtesy of Gil: Drop the priority of the texture streamer using a new low-priority thread pool. This saves a 1-2ms in heavy combat in PVE (XB1 Test)
#jira FORT-57376
Change 3693609 by Ryan.Gerleve
Back out CL 3689050 since it was likely causing a crash.
#jira FORT-57298
Change 3693327 by Aaron.McLeran
#jira FORT-57416 Fixing PS4 cook.
Making sure zero pad bytes stays positive without a check.
Change 3693136 by David.Ratti
fix clang warning
Change 3692703 by Thomas.Sarkanen
Fix CIS warning on PS4/Linux
Change 3692589 by Thomas.Sarkanen
Moved exposed value handler bound function initialization to CDO postload
This means that FindPropertyByName and FindFunctionChecked dont incur any overhead when spawning in new anim instances
#jira FORT-56968 - Hitch - SkeletalMeshComponent initialization (110ms)
#tests PIE PvE, 20-bot BR game on PC/PS4.
Change 3692552 by Alex.Delesky
Change 3692495 by Bart.Hawthorne
Fix build
Change 3692488 by Bart.Hawthorne
Check for actor relevancy and level initialization when there's no channel first when prioritizing actors for replication. Dormancy checks in this case are useless because ShouldActorGoDormant will always be false, and if IsActorDormant is also true, then the result of skipping the actor is the same.
#jira FORT-57104
#tests played 100 player bot match
Change 3691819 by Bob.Tellez
#UE4 No longer conditionally including SlateDebug fonts in the cook based on configuraiton. When builds are produced that contain more than one configuration it changes what is cooked in unexpected ways so now we just always cook this font.
Change 3691805 by Bob.Tellez
#UE4 CIS fix
Change 3691784 by Bob.Tellez
#UE4 Optimization for exiting PIE. Texture streaming managers have an optimization for game worlds but were not using them for PIE worlds
Change 3691273 by Aaron.McLeran
#jira UE-50650 Fix memory/event leak in USoundWave::AudioDecompressor
Fix is to only delete the decompress/pre-cache task in game thread during FinishDestroy and not allow sounds to start playing unless the precache task has finished.
Change 3691268 by Aaron.McLeran
#jira FORT-56228 LogAudio:Warning: spam causes severe performance drop on the Mac Platform
Reducing log level
Change 3690547 by Ryan.Gerleve
Speculative fix#2 for a server crash/assert. If the timing is right, it's possible for the server to try to re-load a placed-in-map actor that was previously garbage collected. This was happening because CanClientLoadObject was always returning true for these (null) objects, even if the NetGUID corresponded to a map actor that shouldn't be loaded. Also added/improved some logging that will help in case this doesn't fix the issue.
#jira FORT-55763
Change 3690451 by Lukasz.Furman
changed branch name testing in engine hacks to use case insensitive match
Change 3690270 by David.Ratti
Cache weak object ptr in FNetworkObjectInfo to avoid reconstructing one every time we need to lookup its actor channel.
#jira FORT-57156
Change 3690227 by David.Ratti
Added optional TWeakObjectPtr parameter to packagemap functions GetOrAssignNetGUID, SUpportsObject. This allows you to pass in a weak ptr for an object if its already created. If you pass in null, the functions will create them internally.
This fixes some common cases where we were converting the same object into weak ptr multiple times in a frame.
#jira FORT-57156
Change 3690184 by David.Ratti
Cache net connection weakobjectptr when building consider list instead of constructing it again for every actor.
#jira FORT-57156
Change 3689805 by Peter.Knepley
Make ConditionalInitAxisProperties protected instead of private
#jira FORT-56414
Change 3689789 by Marcus.Wassmer
Hack workaround for missing shadowdepthps for XB1 until we get a handle on why things are exploding
#jira FORT-56792
Change 3689702 by Peter.Knepley
Allow games to have a custom MassageAxisInput function
#jira FORT-56414
Change 3689687 by Bob.Tellez
#UE4 Avoid copying the shaders array to avoid changing refcounts of shaders while serializing
Change 3689655 by Peter.Knepley
Make SmoothMouse virtual so games can have their own smoothing
#jira FORT-56417
Change 3689499 by Bart.Hawthorne
Fix Linux CIS warnings
Change 3689397 by Bart.Hawthorne
Changed FOutBunch and FInBunch uint8 entries to use bitfields instead of bytes which knocked 86% off of our net tick time
Change 3689056 by Lukasz.Furman
3rd attempt for branch name checking in engine code hacks
Change 3689050 by David.Ratti
First pass at removing use of TWeakObjectPtr from core replication classes. This should reduce FWeakObjectPtr::Get usage.
Still expecting to see FWeakObjectPtr::operator= come up a lot. Going to tackle this in a second pass which will require some deeper refactors.
#jira FORT-57156
Change 3688972 by Bob.Tellez
#UE4 Add build target flag to control DISABLE_GENERATED_INI_WHEN_COOKED
Change 3688864 by Ryan.Gerleve
Fix broken logic to find the "best" replay sample for character movement when we don't find two samples to interpolate between. Now uses the sample closest to the current time. Also added some debug drawing.
#jira FORT-56553
Change 3687654 by Bob.Tellez
#UE4 Added compile time option to disable reading generated ini files other than GameUserSettings in cooked builds.
Change 3686615 by Lukasz.Furman
Back out changelist 3686610
Change 3686592 by Matt.Kuhlenschmidt
Gave the CL description in the source control submit window more room
Change 3686020 by Ben.Marsh
Remove debug code that prints to logs while building.
#jira FORT-56923
Change 3684414 by Peter.Knepley
Back out changelist 3678336
#jira FORT-56512
Change 3683894 by Gil.Gribb
UE4 - By default, do not check for illegal calls to MarkPendingKill in the garbage collector in test and shipping configuations. This was slow.
Change 3683686 by peter.knepley
Raise MTU from 512 to 1024
#jira FORT-56756
Change 3683343 by Rob.Cannaday
Fixes insert disk popup
#jira FORT-56500
Change 3683156 by Peter.Knepley
Network optimizations to reduce alloc/free & memcpy churn saving about 10% of net tick time
Change 3682234 by Guillaume.Abadie
Cherrypick TAA refactor 3512696 and TAA fix 3668108
#jira FORT-56303
Change 3681494 by Bob.Tellez
#UE4 IsLoadedByEditorPropertiesOnly is not working properly so I removed it from FullLoadAndSave
Change 3681342 by Bob.Tellez
#UE4 Added a FullLoadAndSave option to cooking, which simply loads all content then saves it to avoid the overhead of managing which packages need to be cooked. Large perf improvement for those who cook by the book and can fit the entire game in memory
Change 3681014 by Yenal.Kal
#jira FORT-56209
#jira FORT-56272
Fixed a bug in the ability system where the ability ended callbacks could cause the ability end to be called again in the same call stack even though the ability is activated only once.
This was happening because we were broadcasting the event before we decrement the active count.
Change 3680739 by Michael.Trepka
Warn about NaN float literal values when translating HLSL to Metal instead of failing, plus added more detailed warning/error messages for NaN and unhandled values
#jira FORT-56425
Change 3679237 by Bob.Tellez
#UE4 Remove some debug logging
Change 3679187 by Bob.Tellez
#UE4 Dramatically imrpove speed of writing cookloadorder log file
Change 3678926 by Bob.Tellez
#UE4 Minor savepackage speed improvements
Change 3678336 by Aaron.McLeran
#jira UE-50650 Fix memory/event leak in USoundWave::AudioDecompressor
Fix is to only delete the decompress/pre-cache task in game thread during FinishDestroy and not allow sounds to start playing unless the precache task has finished.
Change 3676998 by Ben.Woodhouse
Fix XGE shader compilation so it doesn't crash randomly
Change 3676606 by Ori.Cohen
Update GC to be 61.1 to avoid heartbeat collision
Change 3676447 by Ori.Cohen
Fix CIS warning
Change 3676286 by Max.Preussner
Fixed client Crash UMediaSoundWave::GeneratePCMData (FORT-56107)
#jira FORT-56107
Change 3674591 by Ryan.Gerleve
Don't filter out PendingKillPending actors from FNetworkObjectList::Find. This was causing actors that get destroyed while dormant on the server to never be destroyed on clients.
#jira FORT-55802
Change 3674181 by Michael.Noland
Framework: DLL export LogGameplayTags
Change 3674138 by Billy.Bramer
#jira FORT-56138, FORT-56139
- Duplicate CL 3396590 from //Orion/Main re: ranged-base for iteration ensure from montage changes
Change 3672464 by Lukasz.Furman
removed recast layers crash tracking code
Change 3672153 by Daniel.Lamb
Added some debugging code to help track down why shaders are hashing poorly.
Change 3671498 by Luke.Thatcher
[~] Modify new frame syncing to reduce performance regression seen when the game is running over budget.
- Rather than forcing a flip sync after we kick off one frame early, we just continue to kick frames if we time out. This allows the game thread to get ahead when we're over budget.
- The game thread will naturally resync with the vsync when we return to being in budget.
#jira FORT-55842
Change 3671079 by Ryan.Gerleve
Fix an edge case where the PackageMap on the server would try to resolve objects from default NetGUIDs even if their outer has already been garbage collected. This could lead to a completely unrelated object being returned instead of null, leading to asserts and potentially other issues.
#jira FORT-55763
Change 3670487 by Zak.Middleton
Optimize some low level details of UNetConnection::ClientHasInitializedLevelFor() and UNetDriver::IsLevelInitializedForActor(). Add cached WorldPackage for NetDriver to avoid repeated GetOuterMost() and Casts. Remove rendundant virtual GetWorld() calls, and mark UNetDriver's version "final" to let it optimize away virtual call. Made UNetConnection::ClientVisibleLevelNames a TSet instead of TArray, since it is searched frequently when there are streaming levels present.
#jira FORT-55999
Change 3670351 by Zak.Middleton
Back out changelist 3669817 (networking optimizations). Would rather have more testing before it goes to Release-Next. Will resub just for main and RP.
#jira FORT-55999
Change 3670344 by Josh.Markiewicz
#UE4 - more verbose logging for SetExpectedClientLoginMsgType
Change 3670323 by Wes.Hunt
Fix for dedicated servers not flushing events in a timely manner.
#jira FORT-56015
Doh, using GFrameNumber was NOT a good idea on servers... :-/
Change 3669817 by Zak.Middleton
Optimize some low level details of UNetConnection::ClientHasInitializedLevelFor() and UNetDriver::IsLevelInitializedForActor(). Add cached WorldPackage for NetDriver to avoid repeated GetOuterMost() and Casts. Remove rendundant virtual GetWorld() calls, and mark UNetDriver's version "final" to let it optimize away virtual call. Made UNetConnection::ClientVisibleLevelNames a TSet instead of TArray, since it is searched frequently when there are streaming levels present.
#jira FORT-55999
Change 3668416 by Michael.Noland
Core: Changed FString::ParseIntoArray to use Reset instead of Empty on the passed in array, allowing it to be approximately resized
#jira FORT-55887
Change 3668411 by Olaf.Piesche
Always cache depth collision particle shader
#jira FORT-51307
Change 3668361 by Aaron.McLeran
#jira FORT-55628 Attempt to bypass crash and log an error if libvorbisdll fails to load.
Change 3667892 by Rob.Cannaday
libwebsocket libs to handle getprotobyname("TCP") failing the libwebsockets connection
#jira FORT-55917
Touch LwsWebSocket.cpp to ensure the module gets built with the new libs
Change 3667308 by Uriel.Doyon
Postponed the release of IO requests when canceling mip updates to prevent threading issue.
#jira FORT-54491
Change 3666835 by Lukasz.Furman
fixed overlapping index buffers when static mesh exports both convex and simple collisions for navigation
#jira UE-50370
Change 3665374 by Mike.Fricker
Fixed server crashing after hotfixes have re-imported curve table data
- The hotfix system is capable of replacing the content of a UCurveTable on the fly
- If any systems had references to inner curves on that curve table, they would become invalid
- This needs to be fixed in 1.6.4 (tonight) and also in 1.7
#jira FORT-55792
Change 3665063 by Daniel.Broder
Fixed crash in GameplayTagQueryCustomization when choosing "Save and Close" on GameplayTagQuery after setting a query due to nullptr NotifyHook in CloseWidgetWindow.
Added additional if (StructPropertyHandle.IsValid()) wrappers and one check(StructPropertyHandle.IsValid()); the former to be consistent with other code and prevent possible crashes, the latter to at least catch the cause of a possible crash properly without having to change the code more significantly to handle it gracefully.
Also changed some if( X ) to if (X) to match coding standards and provide consistency within the file.
Michael, I'm Reviewing you on this fix since you brought this change over from Framework. And Marc because you reviewed him on that change.
#UE4 #NoReleaseNotes #RNX
Change 3664948 by Lukasz.Furman
reduced number of allocations in StorePathfindingDebugData, optimized path length calculations to avoid recursion
#jira FORT-51111
Change 3664916 by John.Abercrombie
Copy CLs 3383318 & 3388506 from //Orion/Main/Engine/Source/Runtime/Engine/...
- Been testing with this for a while now
- This change makes particle effects show up on the current frame's pose for skel meshes as well
Removed my StopAllMontagesByGroupName temp hack
CL 3383318
Delay dispatching of AnimEvents (Notifies and Montage Events) until after we receive an updated animation pose (if applicable).
This fixes AnimNotifies playing particle effects using a socket location using last frame's pose. Now they use the current frame's pose.
CL 3388506
Delay clearing of MontageInstances and triggering 'OnAllMontageInstancesEnded' until all Montage Events have been dispatched.
Also fix SkelMeshComponent ticking on dedicated servers when rejoining in progress.
#jira FORT-55102 - Server Crash UAnimInstance::StopAllMontagesByGroupName
Change 3780616 by Gil.Gribb
Fixed and reenabled r.DelaySceneRenderCompletion
Change 3778979 by Gil.Gribb
UE4 - Improved the performance of grass updates and added the ability to not do all of them every frame.
Change 3778200 by Nick.Darnell
UMG - Making it possible to cancel delays and all animations on widgets. Useful when destroying a widget and needing to stop any async state.
Change 3777612 by Zak.Middleton
Perf: Added option to CharacterMovementComponent to skip immediate forward prediction for proxies on the frame they receive a network update (bNetworkSkipProxyPredictionOnNetUpdate). This avoids all forward prediction sweeps and floor checks on those updates. Intermediate frames will interpolate with prediction. This can also be disabled globally with the CVar "p.NetEnableSkipProxyPredictionOnNetUpdate 0".
Added NetworkSmoothingDisableProxyPredictionForPawnLOD to force disabling full simulation for LOD >= this value (currently 3, so bottom 75 pawns). This takes precedence over current distance and view angle checks for prediction (mesh interpolation is untouched).
Change 3774338 by Ben.Woodhouse
Convert the D3D12 PSO caches to use RwScopeLocks. This change is courtesy of a shelf from Gil, plus a couple of minor fixes.
Saves up to a millsecond of frame time in CPU-bound scenarios
Change 3773462 by Gil.Gribb
UE4 - Add particle batching. This is disabled by default but can improve thread scheduling when there are lots of very fast particle systems.
Change 3771375 by Hongyi.Yu
Fixed the crash where ability components are unregistered and then re-registered, which usually happens in PIE.
Change 3771368 by Ben.Zeigler
#jira UE-52670 Add project setting bValidateUnloadedSoftActorReferences that is true by default to match current behavior. If you set it to false it will no longer load packages to look for soft actor references when deleting/renaming actors.
Change 3771173 by Seth.Weedin
Auto manage attachment support for AudioComponent- An opt-in feature that allows AudioComponents to cache their AttachParent/AttachSocket and only attach themselves when playing audio, detaching after playback is completed. Set to false by default.
Change 3768811 by Ori.Cohen
Change animation scale collision code so that it uses the physics asset.
Change 3768148 by Brian.Bekich
Fix muting being unable to find remote player controller
Change 3768117 by Ori.Cohen
Prevent pawn collision from updating during animation
Change 3766554 by Gil.Gribb
UE4 - Added a new option to add and remove from static draw lists on demand. This is off by default.
Change 3766427 by Nick.Darnell
Slate - Finally adding Opacity to SWidget. Any widget can now be alpha animated at will, no more need to waste overhead by wrapping things with SBorder or making them userwidgets just to be able to animate a fade.
Change 3761682 by nick.darnell
Athena - Introducing a way to interrupt the request to scroll and item into view. In cases where you're animating, quickly showing and hiding, with the item widgets unavailable for a few frames, you enter cases where the deferred navigation is resolved after you've canceled showing a dialog stealing focus.
Change 3761416 by Ben.Zeigler
#jira UE-52287 Prevent cook metadata like DevelopmentAssetRegistry.bin from being packed into a shipping game, by moving it into a Metadata subdirectory and updating deployment scripts to avoid that directory.
Right now it doesn't package them at all, we could change it to package them as Debug Non-UFS if desired
Change it so the asset audit UI will only load DevelopmentAssetRegistry.bin files, the cooked registry files don't have enough information any more to be useful
Remove ability for runtime game to load DevelopmentAssetRegistry.bin, this ended up not being useful
Change 3750998 by Ethan.Geller
#jira FORT-60191 Allow -audiomixer command line arg to work on all platforms.
Change 3749540 by Marc.Audy
SignificanceManager now takes viewpoints in as TArrayView instead of const TArray&
Change 3748102 by Marc.Audy
Allow cheat cvars to work in Test builds by default
Can be overriden by defining ALLOW_CHEAT_CVARS_IN_TEST as 0 in Target.cs files
Change 3744756 by Bart.Hawthorne
Upgrade Oodle to version 2.5.5. Also, iOS, Android, and Switch platforms have been added. The new dictionary has been generated with old and local captures.
Change 3741168 by Max.Preussner
MediaUtils: Fixed movies not playing properly in Shipping builds
Change 3739256 by Jian.Ru
Set distance field self-shadow bias without recreating all render states
Change 3730756 by Ben.Woodhouse
HISM optimization:
Gil's change to skip trees with only one level of hierarchy (working around badly tuned content issues)
Change vert threshold to 2K.
1-2ms renderthread win without impacting GPU when rendering point lights
Change 3724029 by Zak.Middleton
Increase allowed time for movement substep duration. Don't want to lower between 2 iterations, as this is not used much in practice other than deflection and movement mode changes, and that will change behavior (lose momentum). This new setting will absorb longer hitches in the common case (moving without collision or falling).
Change 3723985 by Marc.Audy
SignificanceManager PostSignificanceUpdate functions can now be executed sequentially on the game thread as well as concurrently in the parallel for (old behavior)
Change 3722910 by Jian.Ru
Amortize shadow cache update caused by resolution change
Changed to use view distance vs. view space z when calculating whole scene shadow resolution which is less sensitive to camera rotation
Change 3718247 by Yenal.Kal
Fixed the bug where the gameplay effect durations can show incorrect values after rejoin or after server time drifting away from the client.
Change 3716343 by Jamie.Dale
Adding Korean and Turkish to the localization automation
Change 3710534 by Uriel.Doyon
Texture streaming optimization where a maximum texture resolution for each level streaming data is computed per view.
This is used to cull irrelevant levels and reduce the async task number of iterations.
The culled size is defined by the new r.Streaming.MinLevelTextureScreenSize.
This requires to remove primitives with big UV density from the level data.
Those primitives get moved to the dynamic lists.
This is controlled by r.Streaming.MaxTextureUVDensity
Change 3707207 by David.Ratti
Remove look ahead-vectors prediction in FNetViewer. This (requires) a line trace which is not desirable or really accurate anymore. This saves us a line trace per connection per multicast rpc.
unify reliable multicast rpc handling: these now do relevancy checks and are not sent to non relevant clients
Change 3706272 by Thomas.Sarkanen
Added utility/math functions to aid in optimizing anim blueprints
Added VectorLengthXY to get the 2D length of a 3D vector. Avoids unecessary conversions.
Added polar->cartesian->polar conversion helper functions for expensive frequently-used anim graph functionality.
Change 3706159 by David.Ratti
PlayerState/ASC replication optimizations from Polge: this puts the net update frequnecy on player state back to 1hz while forcing netupdates on the player state actor when the ability system component needs to update
Change 3692891 by David.Ratti
Optimizations for UNetConnection::ClientHasInitializedLevelFor: build acceleration map of actor outer's (ULevels) -> Visibility bool. Existing logic stays the same.
Change 3691392 by Aaron.McLeran
#jira UE-50628 Fix audio trying to sync load bulk data with EDL enabled
- Fix log error in BulkData.cpp
- Make the first stream chunk be force inline payload in bulk data flags so it loads immediately vs in async IO system
- Make audio stream chunks get as close to 256 k chunks as it can, zero-pad rest to be 256 k aligned
- Fix up DDC key, serialize AudioDataSize separately from chunk DataSize
Change 3682683 by Zak.Middleton
Add bOnlyTickMontageOnDedicatedServer variable to AnimInstance, to avoid anim bp updates on dedicated server. Turn on to fix hitching from queued ServerMove() calls, and some free perf during all montages on the server.
Change 3678771 by Ori.Cohen
Added the ability to turn on stack walk during hitching vs lightweight stats
Change 3676363 by Ori.Cohen
Added the ability to get callstacks as part of hitch detection
Change 3674877 by Keith.Judge
Move definition of GFailedToFindParamCollectionBufferQueue to ShaderBaseClasses.cpp so that all targets can successfully compile.
Change 3672515 by Bob.Tellez
Added code to play wind particle effects
Change 3670909 by Zak.Middleton
Fixed ForcePositionUpdate() not calling CheckJumpInput(). Added "p.NetForceClientServerMoveLossPercent" cvar to simulate loss of client->server movement RPCs (without hosing the rest of networking).
[CL 3791033 by Marc Audy in Main branch]
#rb none
#lockdown nick.penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3292215 on 2017/02/08 by Nick.Shin
HTML5 emscripten: wasm and wbegl2 support
- emscripten toolchain
#jira UEPLAT-1437 Switch [to] web assembly
#rb none
Change 3293994 on 2017/02/09 by Nick.Shin
HTML5 emscripten: wasm and webgl2 support
- OSX toolchain
#jira UEPLAT-1437 Switch [to] web assembly
#rb none
Change 3317951 on 2017/02/22 by Nick.Shin
HTML5 emscripten: wasm & webgl2 support - RC1
- emscripten toolchain
WARNING: emscripten/incoming/source/include/libc/bit (the file) might need to be deleted first
#jira UEMOB-263 Switch [to] web assembly
#jira UEMOB-201 Support ES3 / WebGL2 in HTML5
#rb none
Change 3318669 on 2017/02/23 by Nick.Shin
HTML5 emscripten: wasm & webgl2 support - RC1
- OSX toolchain
#jira UEMOB-263 Switch [to] web assembly
#jira UEMOB-201 Support ES3 / WebGL2 in HTML5
#rb none
Change 3462146 on 2017/05/26 by Nick.Shin
HTML5 - merge from Release-4.16 to Dev-Mobile
#jira none
#rb none
#rnx
Change 3504996 on 2017/06/22 by Cosmin.Sulea
UEMOB-362 - Add per-texture and per-format compression quality override settings
#rb Dmitriy.Dyomin
#jira UEMOB-362
#codereview Dmitriy.Dyomin
#codereview Jack.Porter
Change 3505056 on 2017/06/22 by Cosmin.Sulea
Back out changelist 3504996 - due to errors generated in xboxOne, PS4 and Switch versions
#rb none
Change 3508049 on 2017/06/23 by Nick.Shin
HTML5 toolchain notes corrections
#jira none
#rb none
#rnx
Change 3508663 on 2017/06/24 by Nick.Shin
HTML5LaunchHelper.exe on linux - redo
- it seems that i need to also check-in the exe and pdb file instead of having CIS make and checking-in them itself...
- modified c# program to output a version number to help track which version of HTML5LaunchHelper is running...
#jira UE-45302 HTML5LaunchHelper.exe hosts the files in the current working directory on Linux
#rnx
#rb none
Change 3509210 on 2017/06/26 by Dmitriy.Dyomin
ExposureScale will be applied during tonemap pass when MobileHDR is on
#rb jack.porter
#codereview Allan.Bentham
Change 3511058 on 2017/06/27 by Cosmin.Sulea
UEMOB-362 - Add per-texture and per-format compression quality override settings - resubmitted
#rb Dmitriy.Dyomin
#jira UEMOB-362
#codereview Dmitriy.Dyomin
Change 3511069 on 2017/06/27 by Jack.Porter
PS4, XboxOne and Switch fixes for changes to ITextureFormat interface
#rb Dmitriy.Dyomin
#jira UEMOB-362
Change 3513028 on 2017/06/28 by Jack.Porter
Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)
#rb None
Change 3517409 on 2017/06/30 by Jack.Porter
Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)
#rb None
Change 3517730 on 2017/06/30 by Cosmin.Sulea
UEMOB-328 - Improve handling of iOS signing key on remote Mac system keychain when using remote toolchain
#rb Jack.Porter
#jira UEMOB-328
#codereview: peter.sauerbrei
Change 3517757 on 2017/06/30 by Cosmin.Sulea
UE-46245 - Building with remote toolchain does not use Project Setting for iOS signing identity which can cause signing errors
#rb Jack.Porter
#jira UE-46245
#codereview: peter.sauerbrei
Change 3518149 on 2017/06/30 by Adrian.Chelu
UE-43035 Tilt axis for X and Z are not consistent between Android and iOS devices
#rb Jack.Porter
#jira UE-46245
#codereview: Chris Babcock <chris.babcock@epicgames.com>
Change 3524242 on 2017/07/06 by Nick.Shin
HTML5 - refraction shader
note: this CL also contains fixes to webgl2 [float4 vs half2] and a [% vs Mod()] material custom function changes to some TM-ShaderModels shaders
specifically: fixes to and similar with: DitherTemporalAA
#jria UE-46434 No Refraction in QA Game TM-Shadermodels HTML5
#rb none
#rn
#codereview jack.porter dmitriy.dyomin
Change 3535295 on 2017/07/13 by Allan.Bentham
#jira UEMOB-390
Add Android cpu stats.
add 'stat AndroidCPU' to android's console spinner UI.
increase GetCPUState's core count support to 16.
#jira UE-45888
Use cvar value to limit android cpu stat update rate.
#rb none
Change 3535306 on 2017/07/13 by Allan.Bentham
Add missing pragma once
#rb none
Change 3537047 on 2017/07/13 by Ben.Marsh
Fixing case of iOS directories, pt1
#rb none
Change 3537051 on 2017/07/13 by Ben.Marsh
Fixing case of iOS directories, pt2
#rb none
Change 3537373 on 2017/07/14 by Allan.Bentham
Add scope level android egl error verification.
work around minor issue with invalid egl config property.
#rb chris.babcock
Change 3541735 on 2017/07/18 by Allan.Bentham
Add 'sustained performance mode' support for API 24+ devices.
#jira UEMOB-386
#rb chris.babcock
Change 3543001 on 2017/07/18 by Sorin.Gradinaru
#jira UE-45766 Improved Virtual Keyboard cannot receive non-English characters.
- for Android, add an native EditBox above the virtual keyboard to receive the text and pass it to the object from the slate
#rb Chris.Babcock
Change 3554399 on 2017/07/25 by Nick.Shin
STATS disabled for non multi-threaded platforms
#jira UE-47485 ( Pri:1 - 4.18 ) Crash running Stat Command test in TM-Core on Firefox
#rnx
#rb none
Change 3554402 on 2017/07/25 by Nick.Shin
STATS TaskGraph disabled for non multi-threaded platforms
#jira UE-47486 ( Pri:1 - 4.18 ) QAGame hard locks on Firefox when triggering Task Graph Benchmark test
#rb none
#rnx
Change 3556957 on 2017/07/26 by Nick.Shin
HTML5 - WASM enabled by default - part 1 -- commenting out asmjs stuff
begin sunsetting ASM.JS
note to self: CL#3462146 "backout" asmjs
#jira UEMOB-416 WASM enabled by default
#rnx
#rb none
Change 3557654 on 2017/07/26 by Nick.Shin
HTML5 - WASM enabled by default - part 2 -- remove asmjs code
sunsetting ASM.JS
note to self: CL#3462146 "backout" asmjs
#jira UEMOB-416 WASM enabled by default
#rn
#rb none
Change 3557910 on 2017/07/27 by Jack.Porter
Support Client configuration when packaging in the editor
#jira UE-39973
#rb Dmitriy.Dyomin
Change 3557917 on 2017/07/27 by Jack.Porter
Missing file from CL 3557910
#rb trivial
Change 3559642 on 2017/07/27 by Nick.Shin
STATS TaskGraph disabled for non multi-threaded platforms
- both "LockFree stress test" and "task graph benchmark" are disabled - no multi-threading for WASM exist yet (note: ASM.JS has been sunsetted)
- stat command crash "fixed" - but, font size are totally broken - i can look at this (much) later...
- new bug: physx will crash on "gc and level load stress test" -- please bug this as a new jira
#jira UE-47486 ( Pri:1 - 4.18 ) QAGame hard locks on Firefox when triggering Task Graph Benchmark test
#rb none
#rnx
Change 3565656 on 2017/07/31 by Dmitriy.Dyomin
Added a way to lock level position in Word Composition
#jira UE-47713
#rb none
Change 3565757 on 2017/08/01 by Dmitriy.Dyomin
compile fix
#rb none
Change 3567446 on 2017/08/01 by Chris.Babcock
Allow addElement and addElements to only insert once with once="true" attribute in UPL
#jira UE-47951
#ue4
#android
#rb Peter.Sauerbrei
Change 3567592 on 2017/08/01 by Chris.Babcock
Use absolute path for repositories for Gradle
#jira UE-47952
#ue4
#android
#rb Tim.Lincoln
Change 3568690 on 2017/08/02 by Chris.Babcock
Removed warnings for once attribute in UPL
#ue4
#android
#rb none
Change 3569975 on 2017/08/02 by Chris.Babcock
Add <baseBuildGradleAdditions> to UPL to allow additions to the root-level build.gradle
#jira UE-47995
#ue4
#android
#rb Tim.Lincoln
Change 3570117 on 2017/08/02 by Chris.Babcock
Add <setBoolFromPropertyContains> to UPL
- sets bool to true if string list in ini matches contains attribute
#jira UE-47996
#ue4
#android
#rb Jack.Porter
Change 3571552 on 2017/08/03 by Chris.Babcock
Removed unneeded settings.gradle file (generated)
#jira UE-48041
#ue4
#android
#rb none
Change 3572224 on 2017/08/04 by Dmitriy.Dyomin
Better selection tracking in world composition
#rb none
Change 3573662 on 2017/08/04 by Nick.Shin
HTML5 remove PreLoadMap "feature" (was only available/used with HTML5)
- asyncronous loads are not allowed during UEngine::LoadMap()
- the files/code will be repurposed for pakfile CHUNK support
#jira UEMOB-425 HTML5 streaming content investigation (part 1 of 2)
#rn
#rb none
Change 3574471 on 2017/08/07 by Dmitriy.Dyomin
Export ULevelStreamingKismet::LoadLevelInstance function
#rb none
Change 3576262 on 2017/08/08 by Dmitriy.Dyomin
Fixed: widget clipping issues in world composition
#rb none
Change 3576845 on 2017/08/08 by Nick.Shin
set HTML5LaunchHelper application's icon to UE4.ico
#jira UE-19225 HTML5LaunchHelper application does not have an unreal icon
#rb none
#rnx
Change 3578313 on 2017/08/09 by Dmitriy.Dyomin
Added: an RHI call to invalidate/clear cached state, RHIInvalidateCachedState
#jira UEMOB-435
#rb jack.porter
Change 3578364 on 2017/08/09 by Dmitriy.Dyomin
Vertex Fog is disabled on mobile by default. If scene uses vertex fog - Mobile preview and device will show on screen message: PROJECT HAS VERTEX FOG ON MOBILE DISABLED
This saves about 90 instructions in VS and a few in PS
#jira UEMOB-166
#rb jack.porter
Change 3578703 on 2017/08/09 by Nick.Shin
set HTML5LaunchHelper application's icon to UE4.ico
forgot to check in exe and pdb file
#jira UE-19225 HTML5LaunchHelper application does not have an unreal icon
#rb none
#rnx
Change 3578961 on 2017/08/09 by Peter.Sauerbrei
deprecate IOS 8 as the minimum OS supported.
#jira UEMOB-429
#rb chris.babcock
Change 3579319 on 2017/08/09 by Peter.Sauerbrei
fixes for compile errors with Xcode 9 beta 4
#rb none
Change 3579356 on 2017/08/09 by Peter.Sauerbrei
modified minimum IOS to build with
#rb chris.babcock
Change 3579687 on 2017/08/09 by Chris.Babcock
Fix GoogleVR Gradle packaging
#jira UE-48239
#ue4
#android
#rb none
Change 3579921 on 2017/08/10 by Dmitriy.Dyomin
GitHub 3670 : More zoom levels for World Composition (300)
#contributedby: user37337
#jira UE-45977
#3670
#rb none
Change 3580576 on 2017/08/10 by Peter.Sauerbrei
detection of iPad Pro 10.5 and IPad Pro 12.9 (2nd Gen)
#rb chris.babcock
Change 3580611 on 2017/08/10 by Chris.Babcock
Set online provider back to GooglePlay and remove forcing IAP permission (contributed by umerov1999)
#jira UE-48185
#PR #3876
#ue4
#android
#rb Peter.Sauerbrei
Change 3582166 on 2017/08/11 by Nick.Shin
nuke PLATFORM_HTML5_WIN32
PLATFORM_HTML5_WIN32 code removal tested successfully with (force rebuild and repackaging):
* Win64 server (WindowsServer)
* Win64 client (WindowsNoEditor)
* HTML5 client
all playing together via websocket net driver (i've attached a screen shot of this in jira)
code changes touches: physics, audio and main build files
#jira UEMOB-433 Remove Win32 SDL "HTML5 Simulator" code
#rb ben.marsh
#rnx
#codereview josh.adams
#fyi ori.cohen, aaron.mclera
Change 3582474 on 2017/08/11 by Chris.Babcock
Don't use V2 signing for Gear VR APKs
#jira UE-48354
#ue4
#android
#rb Peter.Sauerbrei
Change 3582614 on 2017/08/11 by Chris.Babcock
Filter out unneeded architectures from APK for Gradle builds
#jira UE-48355
#ue4
#android
#rb Peter.Sauerbrei
Change 3582923 on 2017/08/11 by Nick.Shin
backport release 4.17 to dev-mobile
#jira none
#rb none
#rnx
Change 3582924 on 2017/08/11 by Nick.Shin
FNetworkFileServerHttp - error gracefully when port is already in use
#jira UE-46409 [CrashReport] Assertion on Mac: Could not create a libwebsocket - FNetworkFileServerHttp::Init()
#rnx
#rb none
Change 3582925 on 2017/08/11 by Nick.Shin
HTML5 - turn off pak file compression in favor of gzip packages
#jira UE-46729 HTML5 - on shipping builds - turn off pak file compression in favor of gzip packages
#rn
#rb none
Change 3583943 on 2017/08/14 by Cosmin.Sulea
UEMOB-363 - second iteration - Project wide texture quality control by texture group
#rb Dmitriy Dyomin
#jira UEMOB-363
Change 3583967 on 2017/08/14 by Cosmin.Sulea
Back out changelist 3583943
#rb none
Change 3584121 on 2017/08/14 by Peter.Sauerbrei
fix for mac compile failure
#rb none
Change 3587877 on 2017/08/15 by Peter.Sauerbrei
josh's suggested fix is not working for Xcode 8.3, so brute forcing for now
#rb none
Change 3588612 on 2017/08/15 by Peter.Sauerbrei
Xcode 9 project compatbility updates
#rb chris.babcock
#codereview michael.trepka
Change 3589223 on 2017/08/15 by Dmitriy.Dyomin
Fixed: bNavigationAutoUpdateEnabled was not always working when reopeinig the map
Fixed: Navigation Build was not clearing some mesh tiles when bNavigationAutoUpdateEnabled is enabled
Fixed: Streaming out a level in editor was not always updating NavMesh debug draw
#rb lukasz.furman
Change 3589900 on 2017/08/16 by Dmitriy.Dyomin
Support vulkan validation layers on Android, only in Debug and Development configuration (requires r.Vulkan.EnableValidation=1)
#codereview chris.babcock, rolando.caloca
#rb none
Change 3590592 on 2017/08/16 by Nick.Shin
HTML5 emscripten 1.37.19 OSX
#jira UE-47813
#rb none
#rn HTML5 emscripten 1.37.19 OSX
Change 3590597 on 2017/08/16 by Nick.Shin
HTML5 emscripten 1.37.19 Linux
#jira UE-47813
#rb none
#rn HTML5 emscripten 1.37.19 Linux
Change 3590624 on 2017/08/16 by Nick.Shin
HTML5 emscripten 1.37.19 toolchain
#jira UE-47813
#rb none
#rn HTML5 emscripten 1.37.19 toolchain
Change 3591720 on 2017/08/16 by Chris.Babcock
Enable Gradle by default and add button to accept Android SDK license to project settings
#jira UE-48519
#ue4
#android
#rb Tim.Lincoln
#fyi Peter.Sauerbrei
Change 3591998 on 2017/08/16 by Chris.Babcock
Fix nonunity build
#ue4
#android
#rb none
Change 3592407 on 2017/08/17 by Nick.Shin
HTML5 emscripten 1.37.19 Win64
#jira UE-47813
#rb none
#rn HTML5 emscripten 1.37.19 Win64
Change 3592479 on 2017/08/17 by Nick.Shin
HTML5 3rd Party Libs - compiled with emscripten 1.37.19
#jira UE-47813
#rb none
#rn HTML5 3rd Party Libs - compiled with emscripten 1.37.19 toolchain
Change 3592480 on 2017/08/17 by Nick.Shin
HTML5 emscripten 1.37.19 toolchain Epic edits
as well as setting UE4 HTML c# scripts to use new toolchain
#jira UE-47813
#rb none
#rn HTML5 emscripten 1.37.19 toolchain Epic edits
Change 3592481 on 2017/08/17 by Nick.Shin
HTML5 remove old emscripten toolchain
#jira UE-47813
#rb none
#rn HTML5 remove old emscripten toolchain
Change 3592485 on 2017/08/17 by Nick.Shin
HTML5 undo CanUseXGE - this might be breaking CIS for HTML5 builds...
#jira UE-47813
#rb none
#rnx
Change 3592549 on 2017/08/17 by Dmitriy.Dyomin
Added GetDiskTotalAndFreeSpace for IOS and Android
#jira UE-46479
#codereview chris.babcock, peter.sauerbrei
#rb none
Change 3594045 on 2017/08/17 by Peter.Sauerbrei
comment about potential failure case in the remote tool chain
#rb none
Change 3594342 on 2017/08/17 by Peter.Sauerbrei
Merging
//UE4/Main/...
to //UE4/Dev-Mobile/...
#rb none
Change 3594920 on 2017/08/17 by Peter.Sauerbrei
fix for non-unity builds (accidentally merged something incorrectly)
#rb none
Change 3595347 on 2017/08/17 by Chris.Babcock
merge fixes for Android
#ue4
#android
#rb Peter.Sauerbrei
#lockdown Peter.Sauerbrei
Change 3595752 on 2017/08/17 by Chris.Babcock
Update Facebook plugin to support Gradle
#jira UE-48569
#ue4
#android
#fyi Josh.Markiewicz
#rb none
#lockdown Peter.Sauerbrei
Change 3595849 on 2017/08/17 by Chris.Babcock
Fix issue with libovrplatformloader.so for non armv7 targets
#jira UE-48533
#ue4
#android
#rb none
#lockdown Peter.Sauerbrei
Change 3596419 on 2017/08/18 by Peter.Sauerbrei
fix for Mac Editor build failure
#rb none
Change 3597023 on 2017/08/18 by Peter.Sauerbrei
fix for game editor build failure
#rb none
Change 3597032 on 2017/08/18 by Peter.Sauerbrei
fix for app bundle id in Info-Editor.plist
#rb none
Change 3597034 on 2017/08/18 by Peter.Sauerbrei
put back the info.plist, found the real problem
#rb none
Change 3597197 on 2017/08/18 by Peter.Sauerbrei
pull Info.plist from the build products
#rb none
[CL 3600450 by Chris Babcock in Main branch]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3235199 on 2016/12/14 by Joe.Barnes
Fix new compile error for missing #define
Change 3235340 on 2016/12/14 by Arciel.Rekman
Linux: refactor of some PlatformMisc functions.
- RootDir() removed since it was a no-op.
- Old EngineDir() implementation removed in favor of more generic one that should handle foreign engine dir.
- Change by CengizT,
Change 3237014 on 2016/12/15 by Michael.Trepka
Fixed a crash in FChunkCacheWorker constructor
Change 3238305 on 2016/12/16 by Josh.Adams
- Added a None option to the FKey customization, unless the FKey property had NoClear on it
Change 3240823 on 2016/12/20 by Josh.Stoddard
Device profiles don't work for iPadPro 9.7 and 12.9
#jira UE-39943
Change 3241103 on 2016/12/20 by Alicia.Cano
Android support from Visual Studio
#jira UEPLAT-1421
#android
Change 3241357 on 2016/12/20 by Chris.Babcock
Add gameActivityOnNewIntentAddtions section to Android UPL
#jira UE-38986
#PR #2969
#ue4
#android
Change 3241941 on 2016/12/21 by Alicia.Cano
Build Fix
Change 3249832 on 2017/01/06 by Nick.Shin
refetch on timed out GET/POST requests
#jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure"
Change 3249837 on 2017/01/06 by Nick.Shin
black box issues fixed:
use device pixel ratio during width and height checks
and use canvas dimensions if in full screen -- otherwise store SDL_window dimensions for future use
#jira UE-36341 HTML5 - View is incorrectly drawn
#jira UE-32311 Templates on Firefox/Chrome on HTML5 are not full screen during Launch On
Change 3249988 on 2017/01/06 by Josh.Adams
- Disable the HeartBeat() function on platforms that don't actually want to use the HeartbeatThread
#jira UE-40305, UE-39291, UE-40113
Change 3253720 on 2017/01/11 by Josh.Adams
- Added support for a config class to use a specific platform's config hierarchy, so that the editor can read NDA'd platform default settings without needing the settings to in Base*.ini
- See SwitchRuntimeSettings.h / GetConfigOverridePlatform()
- Addiontally made it so that NDAd platforms are saved to Project/Platform/Platform*.ini, instead of Project/Default*.ini (to keep samples .ini files free of NDAd platform settings).
- See UObject::GetDefaultConfigFilename()
- Updated some minor ShooterGame switch settings while cleaning this up
Change 3254162 on 2017/01/11 by Daniel.Lamb
Avoid trying to load empty package names.
Fixed issue with iterative ini files being unparseable if they inlcude a colon in them.
#jira UE-40257, UE-35001
#test Cook QAGame
Change 3255309 on 2017/01/12 by Daniel.Lamb
In the derived datacache commandlet wait for texture building to finish before we GC.
#test DDC QAGame
Change 3255311 on 2017/01/12 by Daniel.Lamb
Removed debug logging for shader compilation.
Issue hasn't occured in a while and the logging is annoying.
#test Cook QAGame
Change 3257024 on 2017/01/13 by Josh.Adams
- Reread in the target RHIs array every time the list of shader types is needed, instead of caching, because the user could change the settings in the editor, then click cook.
#jira UE-38691
Change 3259636 on 2017/01/16 by Josh.Adams
- Fixed split screen render issue with payer 2 getting no geometry
#jira UE-40684
Change 3260159 on 2017/01/17 by Ben.Marsh
Added extra logging when deleting a directory fails during ReconcileWorkspace.
Change 3260300 on 2017/01/17 by Ben.Marsh
More logging for cleaning workspaces.
Change 3261056 on 2017/01/17 by Daniel.Lamb
Cook on the fly builds now resolve string asset references.
#test Trivial
Change 3262803 on 2017/01/18 by Joe.Graf
Added missing support for compiling plugins external to Engine/Plugins & Game/Plugins
Change 3262852 on 2017/01/18 by Joe.Graf
Fixed the bad robomerge
Don't try to regenerate projects when adding a content only plugin to a content only project
Change 3264930 on 2017/01/19 by Joe.Barnes
#include some header files needed when building UFE.
Change 3265728 on 2017/01/20 by Will.Fissler
PlatformShowcase - Added TestBed_MobileFeatures .umap and related test content.
Change 3267188 on 2017/01/21 by Josh.Adams
Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)
Change 3267439 on 2017/01/22 by Arciel.Rekman
Fix Dev-Platform build.
- Fixed just to have it compile; perhaps a proper fix is needed.
- Seems to be caused by CL 3265587 (delegate was changed to return an array of search results instead of a single one).
Change 3267556 on 2017/01/23 by Arciel.Rekman
Linux: fix MoveFile to work across file systems.
- PR #3141 with slight changes.
Change 3267843 on 2017/01/23 by Arciel.Rekman
Remove name collision (macro vs libc++).
- Redoing CL 3259310.
Change 3267850 on 2017/01/23 by Arciel.Rekman
Fix wrong always true condition.
- PLATFORM_LINUX is always defined, but can be 0.
Change 3268048 on 2017/01/23 by Daniel.Lamb
Integrated fix for rebuild lighting commandlet from Greg Korman @ Impulse Gear.
#test Rebuild lighting Paragon
Change 3268403 on 2017/01/23 by Josh.Adams
#BUILDUPGRADENOTES
- Moved XboxOne and PS4 settings into platform specific .ini files (after using GetConfigOverridePlatform() in their class delcarations)
- Licensee games that have PS4, XboxOne, Switch settings in DefaultEngine.ini will have those settings saved in the platform version next time the project settings are edited. DOCUMENT THIS!
Change 3272441 on 2017/01/25 by Chris.Babcock
Fixed documentation error in UnrealPluginLanguage
#ue4
#android
Change 3272478 on 2017/01/25 by Chris.Babcock
Fix another documentation error in UnrealPluginLanguage
#ue4
Change 3272826 on 2017/01/25 by Chris.Babcock
Google Cloud Messaging plugin for Android
#jira UEPLAT-1458
#ue4
#android
Change 3272839 on 2017/01/25 by Chris.Babcock
Fix name of Google Cloud Messaging Sender ID
#ue4
#android
Change 3273837 on 2017/01/26 by Daniel.Lamb
Added check to ensure editor never saves source texture data which has had ReleaseSourceMemory called on it.
Instead crash as this is a loss of content situation.
#test Cook paragon cook qagame
Change 3274122 on 2017/01/26 by Alicia.Cano
Runtime permissions support on Android
- Removing certain permissions
#jira UE-38512
#android
Change 3274311 on 2017/01/26 by Josh.Adams
Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)
Change 3274794 on 2017/01/27 by Arciel.Rekman
Linux: fix installed SDK check (UE-40392).
- Pull request #3111 by rubu.
Change 3274803 on 2017/01/27 by Arciel.Rekman
Linux: added few more exceptions to .gitignore (UE-39612).
- Pull request #3026 by ardneran.
Change 3276247 on 2017/01/27 by Nick.Shin
HTML5 HeapSize settings - make use of it from UE4 Editor:Platforms:HTML5:Memory:HeapSize
note: emscripten says this is really no longer needed when using [ -s ALLOW_MEMORY_GROWTH=1 ] -- but tests have shown when using that, the game load/compile times takes longer
#jira UE-34753 Zen Garden cannot compile in HTML5
#jira UE-40815 Launching QAGame for HTML5 creates an 'uncaught exception: out of memory'.
Change 3276347 on 2017/01/27 by dan.reynolds
Android Streaming Test Content
Change 3276682 on 2017/01/29 by Nick.Shin
HTML5 thirdparty build scripts
- fix up what looks like a bad merge
- allow linux to also build these libs
- fixed harfbuzz to use freetype2-2.6 when building HTML5 libs
- tested on mac, linux, and windows (git-bash)
Change 3276796 on 2017/01/29 by Nick.Shin
HTML5 thirdparty (python) build scripts
- linux patches from mozilla's jukka
- tested on mac and, linux, and windows (git-bash)
part of:
#jira UEPLAT-1437 (4.16) Switch [to] web assembly
Change 3276803 on 2017/01/29 by Nick.Shin
HTML5 thirdparty build scripts
- getting ready to build with (new toolchain that has) wasm support
- minor fix to handle whitespace in project path
- tested on mac and, linux, and windows (git-bash)
part of:
#jira UEPLAT-1437 (4.16) Switch [to] web assembly
Change 3278007 on 2017/01/30 by Arciel.Rekman
SteamVR: whitelist for Linux.
- Makes Blueprint functions available in Linux builds, even if stubbed.
- Can be probably whitelisted for Mac too.
Change 3278172 on 2017/01/30 by Arciel.Rekman
Do not rebuild UnrealPak locally (UE-41285).
Change 3279873 on 2017/01/31 by Brent.Pease
+ Implement streaming in Vorbis
+ Add streaming to Android audio
+ Fix audio streaming chunk race condition
Change 3280063 on 2017/01/31 by Brent.Pease
GitHub 2949 : Fix for crashes when backgrounding/sleeping on iOS metal devices
#2949
#jira UE-38829
Change 3280072 on 2017/01/31 by Brent.Pease
PR #2889: Add -distribution when iOS distribution Packaging. with IPhonePackage.exe (Contributed by sangpan)
https://github.com/EpicGames/UnrealEngine/pull/2889
#jira ue-37874
#2889
Change 3280091 on 2017/01/31 by Arciel.Rekman
Linux: fix "unable to make writable" toast (UE-37228).
- Also fixed other platforms that returned inverted the error result.
Change 3280624 on 2017/01/31 by Brent.Pease
PR #2891: iOS IDFV string allocation fix (Contributed by robertfsegal)
https://github.com/EpicGames/UnrealEngine/pull/2891#2891
#jira ue-37891
Change 3280625 on 2017/01/31 by Brent.Pease
GitHub 2576 - Fix UIImagePickerController crash
#2576
#jira UE-328888
Change 3281618 on 2017/02/01 by Josh.Adams
- Fixed hopeful compile error with missing inlcude
#jira UE-41415
Change 3282277 on 2017/02/01 by Josh.Adams
- Support 0.12.16 and 1.1.1 (the first versions that can share Oasis)
Change 3282441 on 2017/02/01 by Arciel.Rekman
Fix Linux editor splash screen (UE-28123).
Change 3282580 on 2017/02/01 by Nick.Shin
HTML5 - fix "firefox nighly" issue with:
failed to compile wasm module: CompileError: at offset XXX: initial memory size too big:
WARNING: this greatly impacts (in browser) compile times
Change 3285991 on 2017/02/03 by Chris.Babcock
Fix executable path for stripping Android debug symbols (handle non-Windows properly)
#jira UE-41238
#ue4
#android
Change 3286406 on 2017/02/03 by Chris.Babcock
Save and restore texture filtering for movie playback in all cases
#jira UE-41565
#ue4
#android
Change 3286800 on 2017/02/04 by Chris.Babcock
Fix executable path for stripping Android debug symbols (handle non-Windows properly)
#jira UE-41238
#ue4
#android
Change 3288598 on 2017/02/06 by Arciel.Rekman
CodeLite fixes.
- Use *-Linux-Debug binary for Debug configuration.
- Fix virtual paths.
Change 3288864 on 2017/02/06 by Josh.Adams
Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)
- Note, Switch is known to not boot with this, fix coming next
Change 3289364 on 2017/02/06 by Josh.Adams
[BUILDUPGRADENOTES] - Fixed the "type" of the desktop device profiles to be Windows, not WindowsNoEditor, etc. It should be the platform, not a random string.
- Updated how DeviceProfiles are loaded, especially in the editor, so that we can have NDAd platforms have their default DP values in platform-hidden files
- This makes use of the ability for a class to override the platform hierarchy in the editor (like we do with other editor-exposed platform objects)
- Added Config/[PS4|XboxOne|Switch]/ConfidentialPlatform.ini files so that the DP loading code knows to look in their directories for DPs. See FGenericPlatformMisc::GetConfidentialPlatforms() for more information
- Note that saving still saves the entire DP to the .ini. Next DP change is to have them properly save against their 2(!) parents - the .ini file earlier in the hierarchy, and the parent DP object. Makes it tricky, for sure.
- Added FConfigFile::GetArray (previous was only on FConfigCacheIni)
Change 3289796 on 2017/02/07 by Arciel.Rekman
Linux: remove leftover CEF build script.
Change 3289872 on 2017/02/07 by Arciel.Rekman
Linux: install MIME types (UE-40954).
- Pull request #3154 by RicardoEPRodrigues.
Change 3289915 on 2017/02/07 by Josh.Adams
- Fixed CIS warnings
Change 3289916 on 2017/02/07 by Arciel.Rekman
Linux: remove -opengl4 from the default invocation.
Change 3290009 on 2017/02/07 by Gil.Gribb
UE4 - Fixed boot time EDL causing some issues even when it wasn't being used.
Change 3290120 on 2017/02/07 by Josh.Adams
Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)
Change 3290948 on 2017/02/07 by Arciel.Rekman
Linux: fix crash when clicking on question mark (UE-41634).
- Symbol interposition problem (proper fix is still to be investigated).
(Edigrating part of CL 3290683 from Release-4.15 to Dev-Platform)
Change 3291074 on 2017/02/07 by Arciel.Rekman
Speculative build fix.
Change 3292028 on 2017/02/08 by Josh.Adams
- Fixed Incremental CIS build failures
Change 3292105 on 2017/02/08 by Nick.Shin
emcc.py - change warning to info
#jira UE-41747 //UE4/Dev-Platform Compile UE4Game HTML5 completed with 50 warnings
Change 3292201 on 2017/02/08 by JohnHenry.Carawon
Change comment to fix XML warning when generating project files on Linux
Change 3292242 on 2017/02/08 by Arciel.Rekman
Linux: avoid unnecessary dependency on CEF (UE-41634).
- Do not apply CEF workaround to monolithic builds (eg. stock Game/Server targets).
- Also disable CEF compilation for ShaderCompileWorker.
- Based on CL 3292077 in 4.15.
Change 3292559 on 2017/02/08 by Josh.Adams
- Added more platforms to disable the file handle caching (all the ones that use MANAGED_FILE_HANDLES)
Change 3294333 on 2017/02/09 by Josh.Adams
Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)
Change 3294506 on 2017/02/09 by Josh.Adams
- Fixed GoogleCloudMessaging.uplugin to fix the Installed flag. Every other plugin had false, this one had true, which caused various checks to go haywire
#jira UE-41710
Change 3294984 on 2017/02/09 by Josh.Adams
- Worked around the remote compiling issue with code-based projects on a different drive than the engine
#jira UE-41704
Change 3295056 on 2017/02/09 by Josh.Adams
- Fixed the remote compiling issue by unconverting the path back to host when reading from the module filename
Change 3295161 on 2017/02/09 by Josh.Adams
- Fixed new bug when buildin native ios that was caused by a remote compile break
Change 3295229 on 2017/02/09 by Josh.Adams
- Fixed a crash in clothing on platforms that don't support clothing
#jira UE-41830
[CL 3295859 by Josh Adams in Main branch]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3233612 on 2016/12/13 by Ben.Marsh
UGS: Fix cases where precompiled binaries are submitted for a content change.
Change 3235584 on 2016/12/14 by Ben.Marsh
UBT: Deprecate the overridable TargetRules.ShouldUseSharedBuildEnvironment() function; targets should specify which build environment to use by setting the BuildEnvironment field in their constructor instead.
Change 3235741 on 2016/12/14 by Ben.Marsh
UBT: Deprecate the SetupBinaries() callback on the TargetRules class. Instead of overriding this, targets may override their launch module through the "LaunchModuleName" property in their constructor, and add extra modules to the "ExtraModuleNames" field on the TargetRules object itself.
Change 3238176 on 2016/12/16 by Ben.Marsh
UBT: New XML config file parser. Now reads once at startup and can be applied to instanced objects rather than global fields, and caches parsed output in a binary form for quicker initialization on subsequent runs.
Change 3238249 on 2016/12/16 by Ben.Marsh
UBT: Add attribute-driven command line parser.
Change 3238462 on 2016/12/16 by Ben.Marsh
UBT: Include the Platform, Configuration and Architecture on the TargetRules. Add a constructor which takes the TargetInfo object and deprecate the parameterless one; these fields are currently initialized before invoking the constructor in RulesAssembly.
Change 3238564 on 2016/12/16 by Ben.Marsh
UBT: Deprecate the ModuleRules constructor which takes a TargetInfo argument. Replace it with a read-only wrapper around the target rules instead, so target-specific configuration options can be read without needing to access global static variables. Also require that it's passed to the base class constructor.
Change 3239919 on 2016/12/19 by Ben.Marsh
UBT: Remove the "PreferredSubPlatform" property. This is only used for Windows XP support, which is being retired anyway. Having the target define its own architecture is an awkward contractiction to maintain support for, since the target rules are constructed after the architecture already has been determined.
Change 3240061 on 2016/12/19 by Ben.Marsh
UBT: Remove ThirdPartyHeaderFinder. I don't think anything is using this any more.
Change 3240175 on 2016/12/19 by Ben.Marsh
UBT: Add the target name and project file location to the target rules.
Change 3240490 on 2016/12/19 by Ben.Marsh
UAT: Remove Mac staging code that requires UAT to compile and construct .target.cs files when packaging, to check bUseSteam and bUseCEF3 flags. libsteam_api.dylib is now staged at build time by adding it as a bundle resource, CEF3 is already marked as a runtime dependency by CEF3.build.cs, and UnrealCEFSubProcess.app is already marked as a runtime dependency from WebBrowser.build.cs.
Change 3240717 on 2016/12/20 by Ben.Marsh
UAT: Allow configuring UAT to run as if on a build machine by passing the -buildmachine argument on the command line.
Change 3240718 on 2016/12/20 by Ben.Marsh
UAT: Remove target-specific properties that are no longer used by staging (bUsesSlate, bUsesCEF3, etc...). This stuff should all be handled inside UBT.
Change 3241002 on 2016/12/20 by Ben.Marsh
UBT: Move most target configuration settings from UEBuildConfiguration to TargetRules. This encapsulates target specific settings that will allow instancing multiple targets in the future. To facilitate migration of settings to their new location, "UEBuildConfiguration" is now a property that returns the current target rules instance.
Change 3241027 on 2016/12/20 by Ben.Marsh
Only copy the Steamworks dylib into the app bundle for monolithic builds. For all other times, just add it as a runtime dependency.
Change 3241055 on 2016/12/20 by Ben.Marsh
UBT: Only store a ReadOnlyTargetRules object on the instanced build target; finalize the configuration before it's instantiated.
Change 3241156 on 2016/12/20 by Ben.Marsh
Update SwarmInterface.csproj to .NET framework 4.5, to match what all other C# tools are using.
Change 3241205 on 2016/12/20 by Ben.Marsh
Replace all uses of TargetRules.TargetType with TargetType.
Change 3241881 on 2016/12/21 by Ben.Marsh
UBT: Remove project file information from UEBuildContext base class. As configurable properties are moved on to the TargetRules object, it will no longer be a dependency to instantiate the platform with this path.
Change 3241895 on 2016/12/21 by Ben.Marsh
UBT: Remove toolchain support for Windows XP.
Change 3241908 on 2016/12/21 by Ben.Marsh
UBT: Move settings for windows targets into a WindowsTargetRules class, which is exposed for targets to modify via the TargetRules.WindowsPlatform field.
Change 3242835 on 2016/12/22 by Ben.Marsh
UBT: Fix multiple binaries being created if plugins specify module names more than once. MfMedia.uplugin has MfMediaFactory listed twice.
Change 3242837 on 2016/12/22 by Ben.Marsh
Change UE4EditorServices to include MacSystemIncludes rather than Cocoa.h directly; causes FVector to be defined incorrectly in non-unity builds.
Change 3242923 on 2016/12/22 by Ben.Marsh
Build: Fixes for conforming incremental workspaces:
* P4 have table is now reset before deleting all the files. This prevents Perforce being out of sync if the delete fails for some reason.
* Incremental workspaces are skipped when running a clean operation, because they do not have a workspace capture file (causing a full re-sync, always). The "P4 Clean" option is still effective for cleaning these workspaces.
Change 3242961 on 2016/12/22 by Ben.Marsh
UBT: Move entry points from PreBuildSync() and PostBuildSync() from UEToolChain to UEBuildPlatform, and make the original toolchain versions static. These functions are already at odds with the rest of the data flow within UBT because they rely on global state cached outside the toolchain instance, making assumptions that UBT is only ever going to be invoked with one target that's constructed in the same run and that nothing is being cached (eg. UBT makefiles). Moving them onto UEBuildPlatform simplifies the toolchain lifecycle for other platforms without leaving Mac and IOS any more limited than they were before.
Change 3242981 on 2016/12/22 by Ben.Marsh
UBT: Remove symbol server handling code into UAT's platform library, since it's never needed from inside UBT.
Change 3242999 on 2016/12/22 by Ben.Marsh
UBT: Remove the StripSymbols() function from the UEToolChain base class. This functionality is only required by UAT, so it's better suited to being exposed through UAT's modular platform classes.
Change 3243022 on 2016/12/22 by Ben.Marsh
UBT: Require an instance of the target rules to be able to construct a toolchain in UBT. This will allow configuring toolchain-specific options from the target, using reflection from config files, and the command line.
Change 3243083 on 2016/12/22 by Ben.Marsh
UBT: Move settings for the Windows compiler version to use onto the Windows-specific target rules.
Change 3243090 on 2016/12/22 by Ben.Marsh
UBT: Change the third party paths in UEBuildConfiguration to constants. Changing these would not work.
Change 3243423 on 2016/12/23 by Ben.Marsh
UBT: Move a lot of settings from BuildConfiguration to TargetRules. This allows different targets to have different settings, naturally, and moves converts argument parsing and config to be driven by attributes.
Change 3243516 on 2016/12/23 by Ben.Marsh
UBT: Remove the ValidateUEBuildConfiguration callback, which is no longer used. (XGE settings validation occurs in XGE.cs)
Change 3244020 on 2016/12/28 by Ben.Marsh
UBT: Remove the BaseIntermediatePath static property. Precursor to removing RelativeEnginePath and IntermediateFolder properties.
Change 3244074 on 2016/12/28 by Ben.Marsh
UBT: Remove the RelativeEnginePath variable from BuildConfiguration. UnrealBuildTool.EngineDirectory gives the absolute path, and can be used to construct a relative path when necessary.
Change 3244076 on 2016/12/28 by Ben.Marsh
UBT: Remove BuildConfiguration.BaseIntermediateFolder; just use a fixed directory everywhere instead.
Change 3244083 on 2016/12/28 by Ben.Marsh
UBT: Replace FileReference and DirectoryReference instance methods for manipulating files and directories with static methods, to mirror the System.IO.File and System.IO.Directory classes.
Change 3244441 on 2016/12/31 by Ben.Marsh
UBT: Remove code to force PDBs when building with no debug info under XGE. Verified described symptoms (that it causes PCH generation to be serialized) no longer occur.
Change 3244687 on 2017/01/03 by Matthew.Griffin
Changed Exception to use FirstInclude.IncludeName as PrecompiledHeaderIncludeFilename can be null when this occurs
Change 3246112 on 2017/01/04 by Ben.Marsh
UBT: Fix UHT failures building some targets with the -useprecompiled option, due to differences in the order that circularly dependent modules are parsed. Precompiled binaries are now kept in the regular AppBinaries list, but are excluded from the build at the last minute. Also change some checks from IsEngineInstalled() to bUsePrecompiled, to prevent headers being overwritten when running in a non-installed precompiled build.
Change 3246223 on 2017/01/04 by Ben.Marsh
UBT: Prevent version manifests being overridden if a file is not being built as part of the target.
Change 3246387 on 2017/01/04 by Ben.Marsh
UBT: Remove BuildConfiguration settings for UnrealCodeAnalyzer. This tool isn't used at the moment, but it's configured using global variables accessed from all over the UBT codebase, making it difficult to refactor the build options into an instanced object. If we bring this tool back from the dead in the future, it should be possible to implement it using the exported JSON target definition or the XGE manifest, similarly to how IncludeTool uses it.
Change 3247004 on 2017/01/04 by Ben.Marsh
UBT: Simplify the logic for cleaning targets in UBT. Now uses FileReference/DirectoryReference objects everywhere, doesn't require the compile/link environment, and does all the checking to avoid deleting precompiled binaries in one place.
Change 3247250 on 2017/01/04 by Ben.Marsh
UBT: Prevent precompiled binaries being added to the list of app binaries twice.
Change 3247594 on 2017/01/05 by Ben.Marsh
Build: Run sample and template editors on the same agents as the other incremental builds. Remove ProtoStar, which does not have any non-precompiled editor target to build.
Change 3247763 on 2017/01/05 by Ben.Marsh
UBT: Allow the toolchain to update the list of build products for each module linked into a binary. Allows Mac to add dylibs and bundle resources specified per-module without having to construct a link environment and try to link them.
Change 3247775 on 2017/01/05 by Ben.Marsh
UBT: Instance the target compile and link environments when they are required during building, and don't persist them on the UEBuildTarget instance.
Change 3247811 on 2017/01/05 by Ben.Marsh
EC: Add a batch file for testing postp filters.
Change 3247839 on 2017/01/05 by Ben.Marsh
EC: Include the name of the file being compiled when parsing MSVC errors and warnings.
Change 3248101 on 2017/01/05 by Ben.Marsh
UBT: Fix Android support for force included headers.
Change 3248533 on 2017/01/05 by Ben.Marsh
PR #3097: UBT project supports optional platforms (Contributed by PrimalJohnScott)
Change 3249205 on 2017/01/06 by Ben.Marsh
UAT: Fix ParseTaggedP4Output throwing an exception if the same key name is specified more than once. This can happen when parsing the output from "P4 INFO", where multiple brokers are present.
Change 3249249 on 2017/01/06 by Ben.Marsh
UBT: Check for the existance of AndroidManifest.xml within extracted AAR directories, rather than just checking for the existance of the directory itself. Perforce does not remove empty directories when cleaning a workspace unless the rmdir option is on the workspace, so this can cause incremental build failures to fail on build machines.
Change 3249486 on 2017/01/06 by Ben.Marsh
UBT: Use relative paths in unity files when compiling for Mac/IOS, rather than generating a separate local/remote version of the file for gathering include dependencies. Absolute paths are only used to work around the way that MSVC concatenates paths internally; we don't hit the same problems when checking dependencies.
Change 3249736 on 2017/01/06 by Ben.Marsh
UBT: Rename CPPEnvironment to CppCompileEnvironment, and remove the separate CPPEnvironmentConfiguration object. All settings are now stored directly on the CppCompileEnvironment object.
Change 3250179 on 2017/01/07 by Ben.Marsh
Fix creating installed build when root directory contains a space in the name.
Change 3250181 on 2017/01/07 by Ben.Marsh
UBT: Remove some esoteric (and unused, AFAIK) options for orthogonally building different platforms.
Change 3250223 on 2017/01/07 by Ben.Marsh
UBT: Merge the LinkEnvironment and LinkEnvironmentConfiguration classes together.
Change 3250233 on 2017/01/07 by Ben.Marsh
UGS: Allow specifying a workspace-specific sync filter, which is applied on top of the standard filter. Also fix filter being cleared if the cancel button is pressed, and help text being stripped out.
Change 3250241 on 2017/01/07 by Ben.Marsh
UBT: Move the options for specifying additional Android architectures to target onto an Android-specific object on the TargetRules.
Change 3250400 on 2017/01/08 by Ben.Marsh
UBT: Move executor config settings onto the executor instances.
Change 3257708 on 2017/01/13 by Ben.Marsh
UBT: Remove the ThirdPartySourceDirectory constant; there are many places which hard-code or assume this location anyway, and it's not going to change.
Change 3260535 on 2017/01/17 by Ben.Marsh
Add an optional "RequiredSubmittedChange" setting to EC settings files. Allows a scheduled job to run even if there have been no code changes submitted. Test with the utilization capture job.
Change 3260875 on 2017/01/17 by Ben.Marsh
EC: Fix workspaces getting out of sync wrt. newly added files when jobs are aborted during a sync. In such cases, the P4 have table indicates the new files have been synced locally, but the workspace is forced back to a state before it had them due to the capture file. When a following sync tries to add them again, P4 believes the workspace already has them synced.
To work around this, we now write an additional file to the root folder of a workspace containing the last CL that was captured, and sync back to it before doing the reconcile.
Change 3261724 on 2017/01/18 by Ben.Marsh
Allow filtering job types from the list view in EC. Hide the utilization capture job by default. Also set up notifications for the utilization capture job.
Change 3261756 on 2017/01/18 by Ben.Marsh
IncludeTool: Prevent matching a full enum declaration as a forward declaration.
Change 3261932 on 2017/01/18 by Ben.Marsh
EC: Add support for specifying days of the week in schedules. The following syntaxes are supported:
"Monday, Tuesday and Wednesday at 10:30"
"Daily except Sunday and Wednesday at 14:30"
Also tweak display of dates relative to now to handle dates/times in the future, and include the date when specifying a day name.
#jira UEB-729
Change 3262676 on 2017/01/18 by Ben.Marsh
UBT: Split UBTMakefile into its own file. (From PR #3106)
Change 3263893 on 2017/01/19 by Ben.Marsh
UBT: Stop exporting platform classes from UBT, as well as all the referenced classes that have to be made public as a result. Any platform-specific functionality that needs to be shared with UAT is now exposed through wrappers in separate public classes, eg. WindowsExports.cs, IOSExports.cs, etc...
Change 3264291 on 2017/01/19 by Ben.Marsh
UBT: Fix errors generating documentation in UBT, and enable it by default. Will catch more errors with new code being added. Originally in PR #3106, but redone due to conflicts.
Change 3264534 on 2017/01/19 by Ben.Marsh
UBT: Include plugin config files in generated projects.
Change 3264571 on 2017/01/19 by Ben.Marsh
UBT: Prevent overwriting .modules files if nothing has changed. On builders, it's common to build multiple editors in the same workspace, and changing the last modified timestamp causes BuildGraph to fail due to tampered files.
Change 3265745 on 2017/01/20 by Ben.Marsh
UGS: Automatically open UGS when running the launcher for a second time, rather than prompting to close the original instance.
Change 3265777 on 2017/01/20 by Ben.Marsh
UGS: Automatically close and reopen when UGS is re-ran with the shift key held down to switch into unstable mode.
Change 3268314 on 2017/01/23 by Ben.Marsh
UBT: Make sure version manifests are stable by sorting the list of build products, so they are only touched if the contents have really changed.
Change 3269601 on 2017/01/24 by Ben.Marsh
UBT: Fix symbol files being added to manifest for some platforms even though debug info is disabled.
Change 3269607 on 2017/01/24 by Ben.Marsh
UBT: Fix bug where UBT would need to be invoked when switching between two editors sharing the same engine binaries on Mac. The location of the .modules file cannot be guessed on Mac by looking in the same directory as the primary output executable because it's an .app bundle, and the actual modules are nested several directories below that.
Change 3269608 on 2017/01/24 by Ben.Marsh
UBT: Fix additional files copied into the app bundle always being updated on Mac. Now uses rsync --checksum to make sure only modified files are updated.
Change 3271062 on 2017/01/24 by Ben.Marsh
UBT: Fixes for bugs detected by PVS Studio (PR #3161)
Change 3272421 on 2017/01/25 by Ben.Marsh
Fix commends regarding DDC in BaseEngine.ini
#jira UE-41076
Change 3272810 on 2017/01/25 by Ben.Marsh
Fix VS2017 being displayed as 'Visual Studio 15' in the Windows target settings panel.
Change 3272935 on 2017/01/25 by Ben.Marsh
Fix Metal errors launching on Mac due to use of OSX environment settings before they are initialized. Toolchain settings are now constructed on demand in a separate class, for Mac, iOS and TVOS.
Change 3274167 on 2017/01/26 by Ben.Marsh
Fix resource files not being compiled in installed builds on Windows. Was causing metadata not to be embedded into executables.
#jira UE-36457
Change 3275557 on 2017/01/27 by Ben.Marsh
Expand checks for propagation of restricted folder names to include source files, and to ensure that each restricted folder is represented in the output. Also improve messaging to show the dependency chain leading to a restricted folder being referenced, and which folder it is.
Change 3275628 on 2017/01/27 by Ben.Marsh
UBT: Splitting configuration files into one class per-file.
Change 3276784 on 2017/01/29 by Ben.Marsh
Add an authoritative list of confidential folder names, and expose it through global BuildGraph properties ($(RestrictedFolderNames) and $(RestrictedFolderFilter)). Also switch existing scripts to use it.
Change 3276792 on 2017/01/29 by Ben.Marsh
UBT: Use UE4CSharp.prog files to indicate which projects should be included in the solution without having to hard-code a list of them in UBT.
Change 3277263 on 2017/01/30 by Ben.Marsh
IncludeTool: Merging various fixes.
* Fix warnings about #include directives after first code block from parsing monolithic headers.
* Fix exception on startup if the intermediate directory does not already exist.
* Add a special case for ignoring missing header guards from MonolithicHeaderBoilerplate.h, rather than marking it as an inline header. Marking it as inline prevents parsing include directives, which results in including CoreTypes.h from the wrong location.
* Create job objects for spawned compiler instances to prevent them trying allocating more memory than the system can spare.
* Remove (unused) code which makes assumptions about files ending with "Classes.h".
* Add a verbose per-file output log to aid with debugging.
* Negate the MakeStandalone command line option, which was added to allow tweaking forward declarations in already optimized files, so the optimized output does not have missing headers by default.
* Fix missing headers when creating standalone files, due to incorrect list of previous files being passed in to the OutputFile constructor. Now passes the original list of included files, not the output list.
* Fix initial header for a cpp file sometimes being removed. Forcibly including a header at the start of the file does not use the normal pathway for spidering through includes, so a second include of the same file was being generated. Any includes of that header were being forced into output, and the earlier include was then removed due to being redundant.
* Prevent forward declaring enums which have to be parsed by UHT. UHT relies on includes to determine a parse order, and will fail if the enum definition has not been parsed first.
* Use a relative path for private includes in the same module if there are any. Fixes some incorrect paths, and makes it clearer that we're doing something we shouldn't.
Change 3277307 on 2017/01/30 by Ben.Marsh
UBT: Fix private PCHs not using correct header. Causes custom definitions to be excluded from the command line.
[CL 3278101 by Ben Marsh in Main branch]