Commit Graph

168 Commits

Author SHA1 Message Date
Marc Audy
74f7654eb7 Copying //UE4/Fortnite-Staging to //UE4/Dev-Main (Source: //Fortnite/Main/Engine @ 3780923)
#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]
2017-12-05 21:57:41 -05:00
Joe Barnes
c8b108b1ed Copying //UE4/Dev-Console to //UE4/Dev-Main (Source: //UE4/Dev-Console @ 3632338)
#rb none
#lockdown Nick.Penwarden

============================
  MAJOR FEATURES & CHANGES
============================

Change 3443778 by Ben.Woodhouse

	Aliasing for transient resources + new high level API

	Changelists integrated:
	3368830
	3368887
	3377762
	3377763
	3379513
	3381840
	3382046
	3382138
	3385390
	3385391
	3385531
	3396613
	3388752
	3396756
	3397007
	3397059
	3397780
	3397883
	3401716
	3415179

Change 3576521 by Bart.Hawthorne

	ShooterGame - update the game instance's online mode when the LAN option is changed

Change 3587252 by Ben.Woodhouse

	Integrate from //UE4/Main/...@3584123 to //UE4/Dev-Console/...

Change 3587943 by Luke.Thatcher

	[CONSOLE] [+] Improved XGE shader compiler
	 - Added support for XGE interception interface, which allows asynchronous streaming of shader tasks into XGE, and eliminates the stalling/flushing found in the old system.
	 - Old system has been renamed "Xml interface"
	 - Both systems are available and selectable based on r.XGEShaderCompile.Mode CVar.

	Overview of the new system:
	 - New system uses an additional XGEControlWorker process to manage communication between the engine and XGE. This is simply a copy of ShaderCompileWorker.exe (the implementation is part of SCW, but XGE requires the two files to be separate, hence the duplicate).
	 - When shader jobs arrive from the engine, the shader compiler thread spawns an instance of XGEControlWorker within an XGE context, and connects to it via named pipes.
	 - Job command lines are fed to the control worker via the pipe, which the worker enqueues within XGE by issuing a CreateProcess call, which is intercepted. Job completion is reported back to the engine via the named pipes.

	 - New system is preferred over the old one, and is enabled with "-xgeshadercompile" command line switch or "r.XGEShaderCompile" cvar.
	 - The new system depends on the "XGEController" engine module. Support for which is based on the WITH_XGE_CONTROLLER #define, or -xgecontroller/-noxgecontroller command line options.

	#jira UECON-263

Change 3590037 by Luke.Thatcher

	[CONSOLE] [!] Fix compile/link errors with XGE controller module
	 - Various unity related fixes needed.

Change 3590047 by Luke.Thatcher

	[CONSOLE] [!] Compile XGE controller module for Editor builds only
	 - The module should only be used in uncooked, non-monolitic binaries (i.e. the editor).

Change 3594074 by Luke.Thatcher

	[CONSOLE] [!] Fix Linux build - case sensitive header include was wrong in XGEControllerModule.cpp

Change 3596292 by Luke.Thatcher

	[CONSOLE] [!] Actually fix unity/nopch build errors in XGE Controller!

Change 3596776 by Jonathan.Fitzpatrick

	cherry pick CL 3595292
	cooker change which fixes a condition where DLC would always cook with all maps regardless of which maps were specified.

Change 3596795 by Jonathan.Fitzpatrick

	Back out changelist 3596776

Change 3596816 by Jonathan.Fitzpatrick

	Moved the DLC map check ahead of the "no maps found" condition so that include-all-maps can be skipped if DLC maps are found.

Change 3604282 by Ben.Marsh

	UBT: Add support for pre-build and post-build steps when using MegaXGE.

Change 3606862 by Ben.Marsh

	Fix missing header guard warning.

Change 3611644 by Ben.Woodhouse

	Integrate from //UE4/Main/...@3610522 to //UE4/Dev-Console/...

Change 3614089 by Joe.Barnes

	Call GRHICommandList.LatchBypass() after variables it checks are set.

	#jira ue-48130

Change 3617783 by Daniel.Eldar

	Headers for the HDR changes (they are pre-requisites for compilation).

	Integrated from:
	//UE4/Partner-Microsoft-DX12/Engine/Source/ThirdParty/Windows/DirectX/...

	to //UE4/Dev-Console/Engine/Source/ThirdParty/Windows/DirectX/...

	#jira UECON-226

Change 3619117 by Ben.Woodhouse

	Integrate from //UE4/Main/...@3617655 to //UE4/Dev-Console/...

Change 3619123 by Ben.Woodhouse

	Integrate from //UE4/Main/...@3618361 to //UE4/Dev-Console/...

Change 3619603 by Stewart.Lynch

	Merging

	//Fortnite/Dev-Athena/Engine/Source/Runtime/Engine/Private/Materials/MaterialInstanceConstant.cpp

	to //UE4/Dev-Console/Engine/Source/Runtime/Engine/Private/Materials/MaterialInstanceConstant.cpp

	Changed UMaterialInstance::PostLoad(); to Super::PostLoad();

Change 3619608 by Stewart.Lynch

	Merging

	//Fortnite/Dev-Athena/Engine/Source/Runtime/...

	to //UE4/Dev-Console/Engine/Source/Runtime/...

	LLM update

	* made sure that all csv stat tracking is disabled if running without -LLMCSV
	* added new UObject scopes
	* increased LLM_MAX_THREAD_SCOPE_STACK_DEPTH to 128 to cope with new UObject scopes
	* added material scopes
	* changed UMaterialInstance::PostLoad(); to Super::PostLoad();

Change 3619634 by Stewart.Lynch

	Merging

	//Fortnite/Main/...

	to //UE4/Dev-Console/...

	General LLM improvements

	* added tracking for misc task graph tasks (moves 20MB out of Untagged)
	* renamed EngineTick to EngineMisc
	* added tracking for FName
	* added tracking for GC_ProcessObjectArray potential leak
	* renamed index & vertex buffers stat to Meshes
	* added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h.
	* removed AVAILABLE_PHYSICAL stat from LLM csv
	* csv files now include the date in the filename
	* fixed potential threading bug when reading stat values to csv
	* added lots more scopes
	* started changing Stat scopes to enum scopes. Stat scopes will be phased out.
	* added tracking of FName memory
	* added llm tracking for CPU symbol allocations (20MB)
	* added tracking for GC
	* fixed tracking for TransientMemoryAllocator
	* added tracking for networking memory
	* added more audio memory tracking
	* added tracking for blueprints
	* added tracking for static meshes
	* show on screen warning if debug memory is enabled
	* added tracking for particles
	* renamed Phys to PhysX and added more scopes
	* renamed Slate to UI and added more scopes
	* much better coverage of networking memory
	* improved coverage of audio

Change 3619642 by Stewart.Lynch

	Merging

	//Fortnite/Main/Engine/Source/Runtime/Core/...

	to //UE4/Dev-Console/Engine/Source/Runtime/Core/...

	Windows builds were incorrectly showing the debug memory enabled warning. Made IsDebugMemoryEnabled always return false on Windows.

Change 3619799 by Luke.Thatcher

	[CONSOLE] [-] Disable peak memory tracking in LLM.

Change 3619809 by Luke.Thatcher

	[CONSOLE] [^] Merging CL 3580894 from //Fortnite/Main/... to //UE4/Dev-Console/...
	 - Add Render Target Pool Stats. Use "stat rendertargetpool" to view.

Change 3619928 by Luke.Thatcher

	[CONSOLE] [^] Enable symbol compression on symstore task (Merging CL 3606945 from //Fortnite/Main/... to //UE4/Dev-Console/...)

Change 3620571 by Keith.Judge

	Double the size of the occlusion query buffer in D3D12. This costs 256KB of memory.

	We need to refactor this in future to resize according to content on demand like D3D11.x.

	#jira FORT-53103
	#jira FORT-53119

Change 3622419 by Daniel.Eldar

	[General] Fix for occasional ensure to do with retriving the new cvar value.

	#JIRA UE-46644

Change 3622491 by Daniel.Eldar

	[General] Added support for scaling on stat unit and unitgraph.

	#JIRA UE-46644

Change 3622610 by Daniel.Eldar

	[General] Fixed a compilation warning

Change 3624659 by Ben.Woodhouse

	Integrate from //UE4/Main/...@3624175 to //UE4/Dev-Console/...

Change 3624678 by Ben.Woodhouse

	Integrate from //UE4/Main/...@3624415 to //UE4/Dev-Console/...

Change 3624878 by Ben.Woodhouse

	Integrate as edit CLs 3611835 3611844 3616942 3617607
	Descriptor heap memory fix (saves up to ~100MB).
	 * Fix a bug where rolling over a thread-local heap immediately after switching to context-local would crash due to an uninitialized syncpoint
	 * Add a separate value for context local heaps (LOCAL_HEAP_SIZE) and set it to a sensible value (2MB) instead of the current 16MB. This means thread local heaps will be allocated in chunks of ~2MB instead of 16MB. There can be up to 6 thread-local heaps, since they're per-context.

	Measured peak descriptor heap memory with LLM: 45MB (compared to 145MB previously)

	This improves behaviour, but this code could use a bit of a rewrite to allow it to reclaim memory better. For example, the global heap memory is almost entirely wasted currently, since when a context switches to "context local strategy" it simply throws this memory away, never to be reclaimed. Having the pools thread-local is also not a good strategy. Ideally we want a thread-safe pool allocator for descriptor heaps which is shared between all the contexts .

Change 3624882 by Ben.Woodhouse

	Fix virtual destructor warning in D3DX12.h

Change 3626419 by Stewart.Lynch

	Merging
	//Fortnite/Main/...

	to //UE4/Dev-Console/...

	LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags

	* Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB)
	* re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes.
	* changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8)
	* summary page for content creators where all lower-level stats are grouped under one Engine stat
	* renamed ELLMScopeTag enum to ELLMTag
	* renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE
	* removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro
	* fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore
	* fixed BackupOOMMemoryPool stat (now shows in both default and platform pages)
	* lots of changes adding/removing/renaming tags
	* added LLMArray and FLLMObjectAllocator classes
	* disabled asset tag tracking by default because it takes up so much memory even when not used
	* enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv.
	* all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging.
	* disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed.
	* added a CVar to control the csv write interval: LLM.LLMWriteInterval
	* added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements.
	* renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum

	#jira UECON-264

Change 3626906 by Joe.Barnes

	Fix compile errors when nativizing when a property references a sub object of a dervied type with modified default properties

Change 3628045 by Stewart.Lynch

	Merging

	//Fortnite/Main/Engine/Source/Runtime/Core/...

	to //UE4/Dev-Console/Engine/Source/Runtime/Core/...

	LLM - enabled LLM on Windows

	* fixed crash in FLLMObjectAllocator destructor. Only happens on Windows shutdown.
	* changed Align to AlignArbitrary in LLMArray. Small memory saving.
	* clear ThreadStateAllocator in FLLMTracker::Clear(). Small memory saving
	* set program size to zero on windows because it isn't relevant

	#jira UECON-282

Change 3632279 by Ben.Woodhouse

	Back out changelist 3619862
	#jira UE-49472

[CL 3632432 by Joe Barnes in Main branch]
2017-09-07 22:18:47 -04:00
Ben Marsh
fedc653232 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3620134)
#lockdown Nick.Penwarden
#rb none

============================
  MAJOR FEATURES & CHANGES
============================

Change 3550452 by Ben.Marsh

	UAT: Improve readability of error message when an editor commandlet fails with an error code.

Change 3551179 by Ben.Marsh

	Add methods for reading text files into an array of strings.

Change 3551260 by Ben.Marsh

	Core: Change FFileHelper routines to use enum classes for flags.

Change 3555697 by Gil.Gribb

	Fixed a rare crash when the asset registry scanner found old cooked files with package level compression.

	#jira UE-47668

Change 3556464 by Ben.Marsh

	UGS: If working in a virtual stream, use the name of the first non-virtual ancestor for writing version files.

Change 3557630 by Ben.Marsh

	Allow the network version to be set via Build.version if it's not overriden from Version.h.

Change 3561357 by Gil.Gribb

	Fixed crashes related to loading old unversioned files in the editor.

	#jira UE-47806

Change 3565711 by Graeme.Thornton

	PR #3839: Make non-encoding specific Base64 functions accessible (Contributed by stfx)


Change 3565864 by Robert.Manuszewski

	Temp fix for a race condition with the async loading thread enabled - caching the linker in case it gets removed (but not deleted) from super class object.

Change 3569022 by Ben.Marsh

	PR #3849: Update gitignore (Contributed by mhutch)


Change 3569113 by Ben.Marsh

	Fix Japanese errors not displaying correctly in the cook output log.

	#jira UE-47746

Change 3569486 by Ben.Marsh

	UGS: Always sync the Enterprise folder if the selected .uproject file has the "Enterprise" flag set.

Change 3570483 by Graeme.Thornton

	Minor C# cleanups. Removing some redundant "using" calls which also cause dotnetcore compile errors

Change 3570513 by Robert.Manuszewski

	Fix for a race condition with async loading thread enabled.

Change 3570664 by Ben.Marsh

	UBT: Use P/Invoke to determine number of physical processors on Windows rather than using WMI. Starting up WMIC adds 2.5 seconds to build times, and is not compatible with .NET core.

Change 3570708 by Robert.Manuszewski

	Added ENABLE_GC_OBJECT_CHECKS macro to be able to quickly toggle UObject pointer checks in shipping builds when the garbage collector is running.

Change 3571592 by Ben.Marsh

	UBT: Allow running with -installed without creating [InstalledPlatforms] entries in BaseEngine.ini. If there is no HasInstalledPlatformInfo=true setting, assume that all platforms are still available.

Change 3572215 by Graeme.Thornton

	UBT
	- Remove some unnecessary using directives
	- Point SN-DBS code at the new Utils.GetPhysicalProcessorCount call, rather than trying to calculate it itself

Change 3572437 by Robert.Manuszewski

	Game-specific fix for lazy object pointer issues in one of the test levels. The previous fix had to be partially reverted due to side-effects.

	#jira UE-44996

Change 3572480 by Robert.Manuszewski

	MaterialInstanceCollections will no longer be added to GC clusters to prevent materials staying around in memory for too long

Change 3573547 by Ben.Marsh

	Add support for displaying log timestamps in local time. Set LogTimes=Local in *Engine.ini, or pass -LocalLogTimes on the command line.

Change 3574562 by Robert.Manuszewski

	PR #3847: Add GC callbacks for script integrations (Contributed by mhutch)


Change 3575017 by Ben.Marsh

	Move some functions related to generating window resolutions out of Core (FParse::Resolution, GenerateConvenientWindowedResolutions). Also remove a few headers from shared PCHs prior to splitting application functionality out of Core.

Change 3575689 by Ben.Marsh

	Add a fixed URL for opening the API documentation, so it works correctly in "internal" and "perforce" builds.

Change 3575934 by Steve.Robb

	Fix for nested preprocessor definitions.

Change 3575961 by Steve.Robb

	Fix for nested zeros.

Change 3576297 by Robert.Manuszewski

	Material resources will now be discarded in PostLoad (Game Thread) instead of in Serialize (potentially Async Loading Thread) so that shader deregistration doesn't assert when done from a different thread than the game thread.

	#jira FORT-38977

Change 3576366 by Ben.Marsh

	Add shim functions to allow redirecting FPlatformMisc::ClipboardCopy()/ClipboardPaste() to FPlatformApplicationMisc::ClipboardCopy()/ClipboardPaste() while they are deprecated.

Change 3578290 by Graeme.Thornton

	Changes to Ionic zip library to allow building on dot net core

Change 3578291 by Graeme.Thornton

	Ionic zip library binaries built for .NET Core

Change 3578354 by Graeme.Thornton

	Added FBase64::GetDecodedDataSize() to determine the size of bytes of a decoded base64 string

Change 3578674 by Robert.Manuszewski

	After loading packages flush linker cache on uncooked platforms to free precache memory

Change 3579068 by Steve.Robb

	Fix for CLASS_Intrinsic getting stomped.
	Fix to EClassFlags so that they are visible in the debugger.
	Re-added mysteriously-removed comments.

Change 3579228 by Steve.Robb

	BOM removed.

Change 3579297 by Ben.Marsh

	Fix exception if a plugin lists the same module twice.

	#jira UE-48232

Change 3579898 by Robert.Manuszewski

	When creating GC clusters and asserting due to objects still being pending load, the object name and cluster name will now be logged with the assert.

Change 3579983 by Robert.Manuszewski

	More fixes for freeing linker cache memory in the editor.

Change 3580012 by Graeme.Thornton

	Remove redundant copy of FileReference.cs

Change 3580408 by Ben.Marsh

	Validate that arguments passed to the checkf macro are valid sprintf types, and fix up a few places which are currently incorrect.

Change 3582104 by Graeme.Thornton

	Added a dynamic compilation path that uses the latest roslyn apis. Currently only used by the .NET Core path.

Change 3582131 by Graeme.Thornton

	#define out some PerformanceCounter calls that don't exist in .NET Core. They're only used by mono-specific calls anyway.

Change 3582645 by Ben.Marsh

	PR #3879: fix bug when creating a new VS2017 C++ project (Contributed by mnannola)

	#jira UE-48192

Change 3583955 by Robert.Manuszewski

	Support for EDL cooked packages in the editor

Change 3584035 by Graeme.Thornton

	Split RunExternalExecutable into RunExternaNativelExecutable and RunExternalDotNETExecutable. When running under .NET Core, externally launched DotNET utilities must be launched via the 'dotnet' proxy to work correctly.

Change 3584177 by Robert.Manuszewski

	Removed unused member variable (FArchiveAsync2::bKeepRestOfFilePrecached)

Change 3584315 by Ben.Marsh

	Move Android JNI accessor functions into separate header, to decouple it from the FAndroidApplication class.

Change 3584370 by Ben.Marsh

	Move hooks which allow platforms to load any modules into the FPlatformApplicationMisc classes.

Change 3584498 by Ben.Marsh

	Move functions for getting and setting the hardware window pointer onto the appropriate platform window classes.

Change 3585003 by Steve.Robb

	Fix for TChunkedArray ranged-for iteration.

	#jira UE-48297

Change 3585235 by Ben.Marsh

	Remove LogEngine extern from Core; use the platform log channels instead.

Change 3585942 by Ben.Marsh

	Move MessageBoxExt() implementation into application layer for platforms that require it.

Change 3587071 by Ben.Marsh

	Move Linux's UngrabAllInput() function into a callback, so DebugBreak still works without SDL.

Change 3587161 by Ben.Marsh

	Remove headers which will be stripped out of the Core module from Core.h and PlatformIncludes.h.

Change 3587579 by Steve.Robb

	Fix for Children list not being rebuilt after hot reload.

Change 3587584 by Graeme.Thornton

	Logging improvements for pak signature check failures
	 - Added "PakCorrupt" console command which corrupts the master signature table
	 - Added some extra log information about which block failed
	 - Re-hash the master signature table and to make sure that it hasn't changed since startup
	 - Moved the ensure around so that some extra logging messages can make it out before the ensure is hit
	 - Added PAK_SIGNATURE_CHECK_FAILS_ARE_FATAL to IPlatformFilePak.h so we have a single place to make signature check failures fatal again

Change 3587586 by Graeme.Thornton

	Changes to make UBT build and run on .NET Core
	 - Added *_DNC csproj files for DotNETUtilities and UnrealBuildTool projects which contain the .NET Core build setups
	 - VCSharpProjectFile can no be asked for the CsProjectInfo for a particular configuration, which is cached for future use
	 - After loading VCSharpProjectFiles, .NET Core based projects will be excluded unless generating VSCode projects

Change 3587953 by Steve.Robb

	Allow arbitrary UENUM initializers for enumerators.
	Editor-only data UENUM support.
	Enumerators named MAX are now treated as the UENUM's maximum, and will not cause a MAX+1 value to be generated.

	#jira UE-46274

Change 3589827 by Graeme.Thornton

	More fixes for VSCode project generation and for UBT running on .NET Core
	 - Use a different file extension for rules assemblies when build on .NET Core, so they never get used by their counterparts
	 - UEConsoleTraceListener supports stdout/stderror constructor parameter and outputs to the appropriate channel
	 - Added documentation for UEConsoleTraceListener
	 - All platforms .NET project compilation tasks/launch configs now use "dotnet" and not the normal batch files
	 - Restored the default UBT log verbosity to "Log" rather than "VeryVeryVerbose"
	 - Renamed assemblies for .NETCore versions of DotNETUtilities and UnrealBuildTool so they don't conflict with the output of the existing .NET Desktop Framework stuff

Change 3589868 by Graeme.Thornton

	Separate .NET Core projects for UBT and DotNETCommon out into their own directories so that their intermediates don't overlap with the standard .NET builds, causing failures.

	UBT registers ONLY .NET Core C# projects when generating VSCode solutions, and ONLY standard C# projects in all other cases

Change 3589919 by Robert.Manuszewski

	Fixing crash when cooking textures that have already been cooked for EDL (support for cooked content in the editor)

Change 3589940 by Graeme.Thornton

	Force UBT to think it's running on mono when actually running on .NET Core. Disables a lot of windows specific code paths.

Change 3590078 by Graeme.Thornton

	Fully disable automatic assembly info generation in .NET Core projects

Change 3590534 by Robert.Manuszewski

	Marking UObject as intrinsic clas to fix a crash on UFE startup.

Change 3591498 by Gil.Gribb

	UE4 - Fixed several edge cases in the low level async loading code, especially around cancellation. Also PakFileTest is a console command which can be used to stress test pak file loading.

Change 3591605 by Gil.Gribb

	UE4 - Follow up to fixing several edge cases in the low level async loading code.

Change 3592577 by Graeme.Thornton

	.NET Core C# projects now reference source files explicitly, to stop it accidentally compiling various intermediates

Change 3592684 by Steve.Robb

	Fix for EObjectFlags being passed as the wrong argument to csgCopyBrush.

Change 3592710 by Steve.Robb

	Fix for invalid casts in ListProps command.
	Some name changes in command output.

Change 3592715 by Ben.Marsh

	Move Windows event log code into cpp file, and expose it to other modules even if it's not enabled by default.

Change 3592767 by Gil.Gribb

	UE4 - Changed the logic so that engine UObjects boot before anything else. The engine classes are known to be cycle-free, so we will get them done before moving onto game modules.

Change 3592770 by Gil.Gribb

	UE4 - Fixed a race condition with async read completion in the prescence of cancels.

Change 3593090 by Steve.Robb

	Better error message when there two clashing type names are found.

Change 3593697 by Steve.Robb

	VisitTupleElements function, which calls a functor for each element in the tuple.

Change 3595206 by Ben.Marsh

	Include additional diagnostics for missing imports when a module load fails.

Change 3596140 by Graeme.Thornton

	Batch file for running MSBuild

Change 3596267 by Steve.Robb

	Thread safety fix to FPaths::GetProjectFilePath().

Change 3596271 by Robert.Manuszewski

	Added code to verify compression flags in package file summary to avoid cases where corrupt packages are crashing the editor

	#jira UE-47535

Change 3596283 by Steve.Robb

	Redundant casts removed from UHT.

Change 3596303 by Ben.Marsh

	EC: Improve parsing of Android Clang errors and warnings, which are formatted as MSVC diagnostics to allow go-to-line clicking in the Output Window.

Change 3596337 by Ben.Marsh

	UBT: Format messages about incorrect headers in a way that makes them clickable from Visual Studio.

Change 3596367 by Steve.Robb

	Iterator checks in ranged-for on TMap, TSet and TSparseArray.

Change 3596410 by Gil.Gribb

	UE4 - Improved some error messages on runtime failures in the EDL.

Change 3596532 by Ben.Marsh

	UnrealVS: Fix setting command line to empty not affecting property sheet. Also remove support for VS2013.

	#jira UE-48119

Change 3596631 by Steve.Robb

	Tool which takes a .map file and a .objmap file (from UBT) and creates a report which shows the size of all the symbols contributed by the source code per-folder.

Change 3596807 by Ben.Marsh

	Improve Intellisense when generated headers are missing or out of date (eg. line numbers changed, etc...). These errors seem to be masked by VAX, but are present when using the default Visual Studio Intellisense.

	* UCLASS macro is defined to empty when __INTELLISENSE__ is defined. Previous macro was preventing any following class declaration being parsed correctly if generated code was out of date, causing squiggles over all class methods/variables.
	* Insert a semicolon after each expanded GENERATED_BODY macro, so that if it parses incorrectly, the compiler can still continue parsing the next declaration.

Change 3596957 by Steve.Robb

	UBT can be used to write out an .objsrcmap file for use with the MapFileParser.
	Renaming of ObjMap to ObjSrcMap in MapFileParser.

Change 3597213 by Ben.Marsh

	Remove AutoReporter. We don't support this any more.

Change 3597558 by Ben.Marsh

	UGS: Allow adding custom actions to the context menu for right clicking on a changelist. Actions are specified in the project's UnrealEngine.ini file, with the following syntax:

	+ContextMenu=(Label="This is the menu item", Execute="foo.exe", Arguments="bar")

	The standard set of variables for custom tools is expanded in each parameter (eg. $(ProjectDir), $(EditorConfig), etc...), plus the $(Change) variable.

Change 3597982 by Ben.Marsh

	Add an option to allow overriding the local DDC path from the editor (under Editor Preferences > Global > Local Derived Data Cache).

	#jira UE-47173

Change 3598045 by Ben.Marsh

	UGS: Add variables for stream and client name, and the ability to escape any variables for URIs using the syntax $(VariableName:URI).

Change 3599214 by Ben.Marsh

	Avoid string duplication when comparing extensions.

Change 3600038 by Steve.Robb

	Fix for maps being modified during iteration in cache compaction.

Change 3600136 by Steve.Robb

	GitHub #3538 : Fixed a bug with the handling of 'TMap' key/value types in the UnrealHeaderTool

Change 3600214 by Steve.Robb

	More accurate error message when unsupported template parameters are provided in a TSet property.

Change 3600232 by Ben.Marsh

	UBT: Force UHT to run again if the .build.cs file for a module has changed.

	#jira UE-46119

Change 3600246 by Steve.Robb

	GitHub #3045 : allow multiple interface definition in a file

Change 3600645 by Ben.Marsh

	Convert QAGame to Include-What-You-Use.

Change 3600897 by Ben.Marsh

	Fix invalid path (multiple slashes) in LibCurl.build.cs. Causes exception when scanning for includes.

Change 3601558 by Graeme.Thornton

	Simple first pass VSCode editor integration plugin

Change 3601658 by Graeme.Thornton

	Enable intellisense generation for VS Code project files and setup include paths properly

Change 3601762 by Ben.Marsh

	UBT: Add support for adaptive non-unity builds when working from a Git repository.

	The ISourceFileWorkingSet interface is now used to query files belonging to the working set, and has separate implementations for Perforce (PerforceSourceFileWorkingSet) and Git (GitSourceFileWorkingSet). The Git implementation is used if a .git directory is found in the directory containing the Engine folder, the directory containing the project file, or the parent directory of the project file, and spawns a "git status" process in the background to determine which files are untracked or staged.

	Several new settings are supported in BuildConfiguration.xml to allow modifying default behavior:

	<SourceFileWorkingSet>
	    <Provider>Default</Provider> <!-- May be None, Default, Git or Perforce -->
	    <RepositoryPath></RepositoryPath> <!-- Specifies the path to the repository, relative to the directory containing the Engine folder. If not set, tries to find a .git directory in the locations listed above. -->
	    <GitPath>git</GitPath> <!-- Specifies the path to the Git executable. Defaults to "git", which assumes that it will be on the PATH -->
	</SourceFileWorkingSet>

Change 3604032 by Graeme.Thornton

	First attempt at automatically detecting the existance and location of visual studio code in the source code accessor module. Only works for windows.

Change 3604038 by Graeme.Thornton

	Added FSourceCodeNavigation::GetSelectedSourceCodeIDE() which returns the name of the selected source code accessor.
	Replaced all usages of FSourceCodeNavigation::GetSuggestedSourceCodeIDE() with GetSelectedSourceCodeIDE(), where the message is referring to the opening or editing of code.

Change 3604106 by Steve.Robb

	GitHub #3561 : UE-44950: Don't see all caps struct constructor as macro

Change 3604192 by Steve.Robb

	GitHub #3911 : Improving ToUpper/ToLower efficiency

Change 3604273 by Graeme.Thornton

	IWYU build fixes when malloc profiler is enabled

Change 3605457 by Ben.Marsh

	Fix race for intiialization of ThreadID variable on FRunnableThreadWin, and restore a previous check that was working around it.

Change 3606720 by James.Hopkin

	Dave Ratti's fix to character base recursion protection code - was missing a GetOwner call, instead attempting to cast a component to a pawn.

Change 3606807 by Graeme.Thornton

	Disabled optimizations around FShooterStyle::Create(), which was crashing in Win64 shipping game builds due to some known compiler issue. Same variety of fix as BenZ did in CL 3567741.

Change 3607026 by James.Hopkin

	Fixed incorrect ABrush cast - was attempting to cast a UModel to ABrush, which can never succeed

Change 3607142 by Graeme.Thornton

	UBT - Minor refactor of BackgroundProcess shutdown in SourceFileWorkingSet. Check whether the process has already exited before trying to kill it during Dispose.

Change 3607146 by Ben.Marsh

	UGS: Fix exception due to formatting string when Perforce throws an error.

Change 3607147 by Steve.Robb

	Efficiency fix for integer properties, which were causing a property mismatch and thus a tag lookup every time.
	Float and double conversion support added to int properties.
	NAME_DoubleProperty added.
	Fix for converting enum class enumerators > 255 to int properties.

Change 3607516 by Ben.Marsh

	PR #3935: Fix DECLARE_DELEGATE_NineParams, DECLARE_MULTICAST_DELEGATE_NineParams. (Contributed by enginevividgames)


Change 3610421 by Ben.Marsh

	UAT: Move help for RebuildLightMapsCommand into attributes, so they display when running with -help.

Change 3610657 by Ben.Marsh

	UAT: Unify initialization of command environment for build machines and local execution. Always derive parameters which aren't manually set via environment variables.

Change 3611000 by Ben.Marsh

	UAT: Remove the -ForceLocal command line option. Settings are now determined automatically, independently of the -Buildmachine argument.

Change 3612471 by Ben.Marsh

	UBT: Move FastJSON into DotNETUtilities.

Change 3613479 by Ben.Marsh

	UBT: Remove the bIsCodeProject flag from UProjectInfo. This was only really being used to determine which projects to generate an IDE project for, so it is now checked in the project file generator.

Change 3613910 by Ben.Marsh

	UBT: Remove unnecessary code to guess a project from the target name; doesn't work due to init order, actual project is determined later.

Change 3614075 by Ben.Marsh

	UBT: Remove hacks for testing project file attributes by name.

Change 3614090 by Ben.Marsh

	UBT: Remove global lookup of project by name. Projects should be explicitly specified by path when necessary.

Change 3614488 by Ben.Marsh

	UBT: Prevent annoying (but handled) exception when constructing SQLiteModuleSupport objects with -precompile enabled.

Change 3614490 by Ben.Marsh

	UBT: Simplify generation of arguments for building intellisense; determine the platform/configuration to build from the project file generation code, rather than inside the target itself.

Change 3614962 by Ben.Marsh

	UBT: Move the VS2017 strict conformance mode (/permissive-) behind a command line option (-Strict), and disable it by default. Building with this mode is not guaranteed to work correctly without updated Windows headers.

Change 3615416 by Ben.Marsh

	EC: Include an icon showing the overall status of a build in the grid view.

Change 3615713 by Ben.Marsh

	UBT: Delete any files in output directories which match output files in other directories. Allows automatically deleting build products which are moved into another folder.

	#jira UE-48987

Change 3616652 by Ben.Marsh

	Plugins: Fix incorrect dialog when binaries for a plugin are missing. Should only prompt to disable if starting a content-only project.

	#jira UE-49007

Change 3616680 by Ben.Marsh

	Add the CodeAPI-HTML.tgz file into the installed engine build.

Change 3616767 by Ben.Marsh

	Plugins: Tweak error message if the FModuleManager::IsUpToDate() function returns false for a plugin module; the module may be missing, not just incompatible.

Change 3616864 by Ben.Marsh

	Cap the length of the temporary package name during save, to prevent excessively long filenames going over the limit once a GUID is appended.

	#jira UE-48711

Change 3619964 by Ben.Marsh

	UnrealVS: Fix single file compile for foreign projects, where the command line contains $(SolutionDir) and $(ProjectName) variables.

Change 3548930 by Ben.Marsh

	UBT: Remove UEBuildModuleCSDLL; there is no codepath that still supports creating them. Remove the remaining UEBuildModule/UEBuildModuleCPP abstraction.

Change 3558056 by Ben.Marsh

	Deprecate FString::Trim() and FString::TrimTrailing(), and replace them with separate versions to mutate (TrimStartInline(), TrimEndInline()) or return by copy (TrimStart(), TrimEnd()). Also add a functions to trim whitespace from both ends of a string (TrimStartAndEnd(), TrimStartAndEndInline()).

Change 3563309 by Graeme.Thornton

	Moved some common C# classes into the DotNETCommon assembly

Change 3570283 by Graeme.Thornton

	Move some code out of RPCUtility and into DotNETCommon, removing the dependency between the two projects
	Added UEConsoleTraceListener to replace ConsoleTraceListener, which doesn't exist in DotNetCore

Change 3572811 by Ben.Marsh

	UBT: Add -enableasan / -enabletsan command line options and bEnableAddressSanitizer / bEnableThreadSanitizer settings in BuildConfiguration.xml (and remove environment variables).

Change 3573397 by Ben.Marsh

	UBT: Create a <ExeName>.version file for every target built by UBT, in the same JSON format as Engine/Build/Build.version. This allows monolithic targets to read a version number at runtime, unlike when it's embedded in a modules file, and allows creating versioned client executables that will work with versioned servers when syncing through UGS.

Change 3575659 by Ben.Marsh

	Remove CHM API documentation.

Change 3582103 by Graeme.Thornton

	Simple ResX writer implemetation that the xbox deloyment code can use instead of the one from the windows forms assembly, which isn't supported on .NET Core

	Removed reference to System.Windows.Form from UBT.

Change 3584113 by Ben.Marsh

	Move key-mapping functionality into the InputCore module.

Change 3584278 by Ben.Marsh

	Move FPlatformMisc::RequestMinimize() into FPlatformApplicationMisc.

Change 3584453 by Ben.Marsh

	Move functionality for querying device display density to FApplicationMisc, due to dependence on application-level functionality on mobile platforms.

Change 3585301 by Ben.Marsh

	Move PlatformPostInit() into an FPlatformApplicationMisc function.

Change 3587050 by Ben.Marsh

	Move IsThisApplicationForeground() into FPlatformApplicationMisc.

Change 3587059 by Ben.Marsh

	Move RequiresVirtualKeyboard() into FPlatformApplicationMisc.

Change 3587119 by Ben.Marsh

	Move GetAbsoluteLogFilename() into FPlatformMisc.

Change 3587800 by Steve.Robb

	Fixes to container visualizers for types whose pointer type isn't simply Type*.

Change 3588393 by Ben.Marsh

	Move platform output devices into their own headers.

Change 3588868 by Ben.Marsh

	Move creation of console, error and warning output devices int PlatformApplicationMisc.

Change 3589879 by Graeme.Thornton

	All automation projects now have a reference to DotNETUtilities
	Fixed a build error in the WEX automation library

Change 3590034 by Ben.Marsh

	Move functionality related to windowing and input out of the Core module and into an ApplicationCore module, so it is possible to build utilities with Core without adding dependencies on XInput (Windows), SDL (Linux), and OpenGL (Mac).

Change 3593754 by Steve.Robb

	Fix for tuple debugger visualization.

Change 3597208 by Ben.Marsh

	Move CrashReporter out of a public folder; it's not in a form that is usable by subscribers and licensees.

Change 3600163 by Ben.Marsh

	UBT: Simplify how targets are cleaned. Delete all intermediate folders for a platform/configuration, and delete any build products matching the UE4 naming convention for that target, rather than relying on the current build configuration or list of previous build products. This will ensure that build products which are no longer being generated will also be cleaned.

	#jira UE-46725

Change 3604279 by Graeme.Thornton

	Move pre/post garbage collection delegates into accessor functions so they can be used by globally constructed objects

Change 3606685 by James.Hopkin

	Removed redundant 'Cast's (casting to either the same type or a base).

	In SClassViewer, replaced cast with TAssetPtr::operator* call to get the wrapped UClass.
	Also removed redundant 'IsA's from AnimationRetargetContent::AddRemappedAsset in EditorAnimUtils.cpp.

Change 3610950 by Ben.Marsh

	UAT: Simplify logic for detecting Perforce settings, using environment variables if they are set, otherwise falling back to detecting them. Removes special cases for build machines, and makes it simpler to set up UAT commands on builders outside Epic.

Change 3610991 by Ben.Marsh

	UAT: Use the correct P4 settings to detect settings if only some parameters are specified on the command line.

Change 3612342 by Ben.Marsh

	UBT: Change JsonObject.Read() to take a FileReference parameter.

Change 3612362 by Ben.Marsh

	UBT: Remove some more cases of paths being passed as strings rather than using FileReference objects.

Change 3619128 by Ben.Marsh

	Include builder warnings and errors in the notification emails for automated tests, otherwise it's difficult to track down non-test failures.

[CL 3620189 by Ben Marsh in Main branch]
2017-08-31 12:08:38 -04:00
Marcus Wassmer
0341e5d5c1 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3607928)
#lockdown Nick.Penwarden

============================
  MAJOR FEATURES & CHANGES
============================

Change 3441680 by Uriel.Doyon

	Added units to point light intensity, to allow the user to specify the value in candelas or lumens.
	New point light actors now configure the intensity in candelas by default.
	Replaced viewport exposure settings by an EV100 slider.
	Hidding the tone mapper in the show flag now still applies the exposure.
	Added a new AutoExposure method called EV100 which allows to specify :
	- MinEV100, MaxEV100
	- Calibration Constnat
	- Exposure Compensation
	#jira UE-42783

Change 3454934 by Chris.Bunner

	Backing out changelists 3441680, 3454636 and 3454844 for the sake of integration stability.

Change 3512118 by Marc.Olano

	Fix rare Sobol shader data problem. Mismatch with CPU code after a large number of points

	Resubmit of portion of //UE4/Dev-Rendering@3509854 that was rolled back to avoid massive shader recompiles during integration testing

Change 3512129 by Benjamin.Hyder

	Fixing up content in TM-SobolNoise

Change 3512151 by Rolando.Caloca

	DR - Fixed some layouts that were general
	- Added some extra dump information

Change 3512160 by Benjamin.Hyder

	Still Fixing TM-Sobol

Change 3512180 by Marc.Olano

	PCSS for spotlights. Like directional PCSS this is experimental, activated by r.Shadow.FilterMethod.

Change 3512261 by Michael.Lentine

	Move Subsurface to shared properties.

	Previously the same code could be executed multiple times without being optimized out if multiple inputs used the same subsurface output.

	#jira UE-44405

Change 3512288 by Rolando.Caloca

	DR - Fix issue when recycling image handles

Change 3512338 by Michael.Lentine

	Fix precision if user enters a multiple of 90 degree rotation for transforms.

	This will only work for exact values. Generally comparing float point numbers using == is unsafe but it should be ok in this case as they are exact values entered from the UI. We may want to later expand this to include thresholding using a value ~1e-7.

	#jira UE-46137

Change 3512424 by Michael.Lentine

	Regenerate BaseColor.uasset and Specular.uasset to not have the notforclient flags set.

	#jira UE-44315

Change 3512686 by Brian.Karis

	Fix for quadric assert in infiltrator. Due to bad tangents in source mesh.

Change 3512696 by Brian.Karis

	Unrevert TAA. Fixed DOF NaN artifacts

Change 3512717 by Marcus.Wassmer

	PR #3714: Fix typo in EOcclusionCombineMode (Contributed by Mumbles4)


Change 3513112 by Richard.Wallis

	Crash when packaging for iOS with Shared Material Native Libraries and Share Material Shader Code from windows platform.  Offline shader compile for archiving not done - shader header has missing offline compile flag for native Metal library archiving.

	Fix includes:
	- Handle offline compile failure when not running on Mac and no remote is configured (or remote fails). (I think it's this point at which the crash in the bug report is at).
	- Make sure remote can build for native Metal libraries and archive correctly - this should now support Linux platforms or Mac to Mac (if enabled in MetalShaderCompiler.cpp) for testing if required.
	- Updated to include remote calling into the xcode 9 Metal pch fix already submitted by Mark Satt.

	#jira UE-45657

Change 3513357 by Richard.Wallis

	Windows compile fix.

Change 3513375 by Guillaume.Abadie

	Exposes the possibility to manually destroy the GPU ressource of UTextureRenderTarget2D.

Change 3513685 by Richard.Hinckley

	#jira UEDOC-3822
	Fixing a comment that refers to a non-existent function, for documentation purposes.

Change 3513705 by Marc.Olano

	Updates to Sobol test levels in RenderTest project

Change 3513730 by Rolando.Caloca

	DR - Fix mip size copying resolve targets
	- Fix compute fence
	- Fix descriptor set texture layout
	- More dump info

Change 3513742 by Marc.Olano

	Texture-free numeric print for shader debugging

Change 3513777 by Daniel.Wright

	Handled edge case where no furthest samples are found in precomputed visibility

Change 3514852 by Rolando.Caloca

	DR - Fix -directcompile on SCW

Change 3515049 by Rolando.Caloca

	DR - hlslcc dump crash fix

Change 3515167 by Rolando.Caloca

	DR - hlslcc - Fix bogus string pointer
	- Allow reading from non-scalar UAVs

Change 3515745 by Rolando.Caloca

	DR - Linux compile fix

Change 3515862 by Rolando.Caloca

	DR - Remove old reference to CCT
	- Link with hlslcc debug libs on SCW debug config for easier debugging

Change 3516292 by Rolando.Caloca

	DR - glslang exe fixes

Change 3516568 by Rolando.Caloca

	DR - hlslcc - Copy fix for *Buffer as functionparameters

Change 3516659 by Marcus.Wassmer

	Fix some d3derrors with distance fields

Change 3516801 by Daniel.Wright

	Fixed crash when doing editor 'Force Delete' on a static mesh whose distance field is still being built.  Any UObject reference that is to an asset can be NULL'ed by the editor.

Change 3516825 by Rolando.Caloca

	DR - Some initial fixes for structured buffers

Change 3516843 by Rolando.Caloca

	DR - Fix for Vulkan dist fields

Change 3516869 by Marcus.Wassmer

	Add format to the createrendertarget blueprint node

Change 3516957 by Daniel.Wright

	Fixed bUsesDistortion being editable

Change 3516965 by Daniel.Wright

	Still mark the distance field task completed, even if the static mesh has been deleted

Change 3517039 by Yujiang.Wang

	GitHub #2655: Optimization for shadow map resolution selection for spot lights

	* Use the radius of the inscribed sphere at the cone end as the spot light's screen radius

	Note: slight drop of shadow quality of spot lights may occur when they are far away from the camera. This is intended, since before this optimization they tend to be always rendered with the maximum shadow map resolution (2048), which is very costly

	#jira UE-33982

Change 3517069 by Yujiang.Wang

	Fix for ScissorRect settings in d3d11 being lost under certain scenarios

	* Scissor rectangle is always enabled in the low-level d3d11 pipeline, and it is expected that at least one ScissorRect is present no matter whether RHISetScissorRect is called with bEnable=false (when it is false we just use a big rect to make it effectively disabled)
	* However FD3D11StateCacheBase::ClearState() clears all the states, which removes scissor rectangles and causes problems for certain routines (FScene::UpdateSkyCaptureContents)
	* Now SetScissorRectIfRequiredWhenSettingViewport will always set a effectively disabled ScissorRect on each FD3D11DynamicRHI::RHISetViewport call, just like d3d12 does

	#jira UE-45465 UE-44760

Change 3517134 by Yujiang.Wang

	CIS fix

Change 3517662 by Rolando.Caloca

	DR - Execute upload Vulkan cmds on the RHI thread
	- Fix crash with structured buffer

Change 3517677 by Rolando.Caloca

	DR - Update/copy textures on RHI thread

Change 3517680 by Rolando.Caloca

	DR - Copy texture bulk data on rhi thread

Change 3517748 by Marcus.Wassmer

	temporary workaround for one class of GPU crashes

Change 3518832 by Rolando.Caloca

	DR - Copy & extend 3518077
	- Fix for movable skylight shader missing on simple forward (low lighting quality mode)

Change 3519973 by Richard.Wallis

	Jittering in Engine Menu Dropdown Options.  Jitter fix: Fix some areas that hadn't been changed from RoundToInt (from previous CL's) to CeilToInt.

	#jira UE-46505

Change 3520849 by Uriel.Doyon

	Fixed issue with investigate texture command and dynamic component entries.

Change 3521064 by Guillaume.Abadie

	Returns absolute path of shader files on error to avoid work loss in visual studio that can't figure out that a sln relative and absolute path might leading to same file on disk.

Change 3521834 by Rolando.Caloca

	DR - Fix decals on Vulkan

Change 3521892 by Rolando.Caloca

	DR - Fix Vulkan texture streaming

Change 3523181 by Rolando.Caloca

	DR - Copy from 3523176
	UE4.17 - Fix Vulkan scissor causing text to not clip

Change 3523534 by Yujiang.Wang

	UE-46631: Implement a scalable LongGPUTask to fix ProfileGPU

	* A new, scalable, platform-independent IssueLongGPUTask is now implemented in UtilityShaders
	* Removed IssueLongGPUTask and G*Vector4VertexDeclaration from RHI implementations
	* The measurement of the execution time of a basic LongGPUTask unit is kicked off on the very first frame

	#jira UE-46631

Change 3524552 by Yujiang.Wang

	Fix iteration number calculation of LongGPUTask

Change 3524975 by Joe.Graf

	Moved the Hamming-weight function from StaticMeshDrawList.inl to FGenericPlatformMath
	Added SSE versions using _mm_popcnt_u64 for platforms that support it
	Added a SSE check to gracefully exit when missing the instruction and it was expected to be there

	#CodeReview: arciel.rekman, brian.karis

Change 3525306 by Daniel.Wright

	Fixed ensure from LPV

Change 3525346 by Rolando.Caloca

	DR - Fix linking issue

Change 3525459 by Daniel.Wright

	Volumetric Lightmaps - higher quality precomputed GI on dynamic objects and GI on Volumetric Fog
	* Enabled by default on all maps, effective after a lighting build.  This replaces the existing Precomputed Light Volume and Indirect Lighting Cache features.
	* New Lightmass World Settings: VolumeLightingMethod, VolumetricLightmapDetailCellSize and VolumetricLightmapMaximumBrickMemoryMb.
	* Lightmass computes lighting samples in an adaptive grid, with higher density around geometry inside the importance volume.  Positions outside the importance volume get lit with the border texels.
	* Improved Lightmass volume solver to use importance photons and full adaptive final gather, so volume samples have similar quality to 2d lightmaps.
	* A static indirection texture is built covering the importance volume and flattening the brick tree by storing the offset to the highest density brick at each indirection cell.
	* Seamless and efficient GPU interpolation across density levels is achieved by adding a single row of padding to bricks, copied from neighbors, and stitching up bricks with lower density neighbors
	* The Volumetric lightmap stores Irradiance as a 3 band SH, which is 27 floats, quantized into 28 bytes, 7 texture lookups.
	* A full screen barebones material using Volumetric Lightmaps costs .42ms on 970 GTX, while Indirect Lighting Cache Point costs .32ms
	* Sky bent normal is also stored for stationary skylights and Directional Light Shadowing for Single Sample Shadow receiving.
	* Volumetric fog, Movable components, unbuilt Static Components, SingleSampleShadow receiving and Capsule Shadows use Volumetric Lightmaps if available
	* New Visualization show flag for Volumetric Lightmap sample points
	* Level streaming of volume light data is not currently supported with this method

Change 3525461 by Daniel.Wright

	Lowered default r.Shadow.RadiusThreshold for Epic shadow settings as it was causing a lot of visible artifacts from small objects popping out.  This will increase shadowmap cost slightly (13.5ms RT -> 14.3ms RT in Fortnite on PS4, no measurable GPU difference).

Change 3526459 by Rolando.Caloca

	DR - Fix validation error

Change 3526474 by Rolando.Caloca

	DR - Integrate from GV

Change 3526487 by Daniel.Wright

	Disabled Volumetric Lightmap filtering with neighbors due to artifacts
	Fix linux compile errors

Change 3526833 by Rolando.Caloca

	DR - Workaround for hlslcc

Change 3526991 by Uriel.Doyon

	Integrated 3526859 : Texture mip bias is now reset whenever the streaming budget increases. This fixes an issue where textures persistently become low res after a memory spike.

Change 3527574 by Rolando.Caloca

	DR - Added some missing resource entries for SCW direct mode

Change 3527625 by Rolando.Caloca

	DR - Copy from 3527113
	UE4.17 - Fix Vulkan not calling Present

Change 3528461 by Brian.Karis

	Support larger hash sizes. Added uint list hashing function.

Change 3528780 by Rolando.Caloca

	DR - Default Vulkan resources

Change 3528818 by Rolando.Caloca

	DR - glslang - Added missing accessor

Change 3528839 by Rolando.Caloca

	DR - Fix virtual path issue when using non-engine relative absolute paths

Change 3528900 by Daniel.Wright

	Fixed variable shadowing

Change 3529039 by Rolando.Caloca

	DR - Read Spirv reflection data (not used yet)

Change 3529040 by Joe.Graf

	Fixed the 32bit compile failures for the popcnt optimization

	#CodeReview: arciel.rekman

Change 3529060 by Rolando.Caloca

	DR - hlslcc - New flag for keeping resource names

Change 3529344 by Rolando.Caloca

	DR - Delete unused file

Change 3529723 by Brian.Karis

	Fixed static analysis cleaner.

Change 3531357 by Michael.Trepka

	Updated Mac glslang libraries with latest changes. Also, updated the Xcode project (generated with CMake) and moved it to a different location so that it no longer uses hardcoded absolute paths. It should be easy to rebuild these libraries in the future.

Change 3531517 by Joe.Graf

	Added support for ddx_fine, ddy_fine, ddx_coarse, ddy_coarse to hlslcc

	#CodeReview: arciel.rekman, mark.satterthwaite, rolando.caloca

Change 3531626 by Joe.Graf

	Mac version of the popcount optimization
	Changed Linux version to use the same builtin

	#CodeReview: mark.satterthwaite, arciel.rekman

Change 3531837 by Chris.Bunner

	SetScissorRectIfRequiredWhenSettingViewport sets the viewport size by default rather than disabling the scissor rect.

	#jra UE-46753

Change 3533415 by Joe.Graf

	Renamed the SSSE3 checks per feedback

	#CodeReview: arciel.rekman

Change 3533480 by Michael.Lentine

	Use more accurate descriptions for shader recompile options

Change 3533511 by Joe.Graf

	Updated the GenericPlatformMisc to match the SSSE3 name change

	#CodeReview: arciel.rekman

Change 3533521 by Marcus.Wassmer

	Fix scenerenderer leak when updating out of view planar reflections

Change 3533528 by Joe.Graf

	Updated comments

	#CodeReview: n/a

Change 3533608 by Mark.Satterthwaite

	New manual Xcode project for glslang so that we include all the necessary code and can link again.

Change 3534260 by Mark.Satterthwaite

	Fix the Xcode 9 Beta 3 compile errors in MetalRHI without breaking Xcode 8.3.3.

Change 3535789 by Yujiang.Wang

	Fix for wrong hair shading in forward shading

	* IBL reflections should be turned off for hairs

Change 3537059 by Ben.Marsh

	Fixing case of iOS directories, pt1

Change 3537060 by Ben.Marsh

	Fixing case of iOS directories, pt2

Change 3538297 by Michael.Lentine

	Add shader comparison test.

	Adding the basic test case.
	Adding logic to Common.ush to enable FP16 conditionally on a define (which is not set by default)
	Adding more exported functionality to automation for use in the shader test.

Change 3538309 by Michael.Lentine

	Add missing file from Shader Test CL.

Change 3538751 by Michael.Lentine

	Add missing pragma once.

Change 3539236 by Michael.Lentine

	Do not ignore return values.

Change 3539237 by Michael.Lentine

	Check in the correct file

Change 3540343 by Rolando.Caloca

	DR - Added t.DumpHitches.AllThreads

Change 3540661 by Yujiang.Wang

	Fix spot tube light direction

	* The tube direction for a spot light was pointing along the light direction, now it is along the local Z axis which is perpendicular to the light direction. Lightmass is also touched
	* A new LightTangent is added to FDeferredLightData
	* Packed all the values from LightSceneProxy->GetParameters into a single FLightParameters struct to avoid copy-pasting them everywhere

Change 3541129 by Rolando.Caloca

	DR - vk - Copy all Vulkan fixes from 4.17

Change 3541347 by Yujiang.Wang

	Fix wrong ViewFlags being set between objects when rendering shadow depth maps

	* Bug caused by trying to share DrawRenderState between objects, but SetViewFlagsForShadowPass was designed to start from a fresh render state
	* Now SetViewFlagsForShadowPass recalculates and sets the flags on each call

Change 3542603 by Rolando.Caloca

	DR - vk - Allow sharing samplers on Vulkan

Change 3542639 by Jian.Ru

	Changed warning text to better indicate that global clip plane needs to be enabled for planar reflection
	#RB Marcus.Wassmer

Change 3543167 by Michael.Lentine

	Fix naming for the shader comparison tests.

Change 3543210 by Uriel.Doyon

	Fixed an issue when computing material scales where the default material ends up being used instead of the required material.
	In that case, we used the default settings for texture streaming (assuming a scale of 1).

Change 3543221 by Brian.Karis

	Simplifier optimizations

Change 3543239 by Arciel.Rekman

	hlslcc: remove FCustomStd* workarounds.

	- This was previous attempt to work around problems arising from different STL used for building libhlslcc (in the cross-toolchain) and possibly different STL used for building engine (on the system).
	- The same problem has been resolved by bundling libc++.

Change 3543946 by Michael.Lentine

	Add comparison output.

Change 3544277 by Brian.Karis

	Fixed uninitialized var error

Change 3544404 by Rolando.Caloca

	DR - Fix broken textures

Change 3544503 by Jian.Ru

	Ensure lighting failure delegates are always called
	#RB Marcus.Wassmer,Daniel.Wright
	#3689

Change 3545241 by Daniel.Wright

	Fixed spotlight whole scene shadows using a radius 2x too long

Change 3545347 by Daniel.Wright

	Fixed shadow occlusion culling broken by shadowmap caching change.  FProjectedShadowKey is now computed correctly for whole scene shadows and SDCM_StaticPrimitivesOnly shadowmaps will fall back to the query for a SDCM_MovablePrimitivesOnly, since the static primitives shadowmap's query is not issued every frame.

Change 3546196 by Marcus.Wassmer

	Fix minor typo

Change 3546459 by Daniel.Wright

	ULevel::PostEditChangeProperty recreates rendering resources if MapBuildData is modified - fixes a crash when Force Deleting the MapBuildData package.

Change 3546469 by Jian.Ru

	Take into account CVarStaticMeshLODDistanceScale during static mesh LOD calculation

Change 3546804 by Daniel.Wright

	[Copy] Added SendAllEndOfFrameUpdates draw event to wrap skin cache events

Change 3546814 by Daniel.Wright

	[Copy] Only use skylight OcclusionMaxDistance for the global distance field if it casts shadows

Change 3546815 by Daniel.Wright

	[Copy] Snap volumetric fog light function target resolution to a factor of 32 to avoid constant texture reallocation

Change 3546817 by Daniel.Wright

	[Copy] Warmup time warning

Change 3546828 by Daniel.Wright

	[Copy] Fixed UWorld::DestroyActor in PIE calling InvalidateLightingCacheDetailed which can do a FlushRenderingCommands and cause a large hitch

Change 3546836 by Daniel.Wright

	[Copy] ULightComponent::InvalidateLightingCacheInner uses MarkRenderStateDirty instead of slow reregister + FlushRendingCommands, and only for lights which might have static lighting data

Change 3546849 by Rolando.Caloca

	DR - vk - Fix missing samplerstates
	- Fixes for structured buffers
	- Add missing Draw and Dispatch Indirect

Change 3547516 by Brian.Karis

	Linear time 5-coloring for planar graphs.

	Brought in the Planarity library written by John Boyer, heavily edited and trimmed down to only include code necesary for graph coloring. Put behind a simple wrapper.

Change 3547542 by Brian.Karis

	Linear time 5-coloring for planar graphs.

	Brought in the Planarity library written by John Boyer, heavily edited and trimmed down to only include code necesary for graph coloring. Put behind a simple wrapper.

Change 3547563 by Brian.Karis

	Fixed some compiler warnings and hopefully some errors.

Change 3547610 by Brian.Karis

	Replaced macros with inlined functions

Change 3547620 by Brian.Karis

	Clean up includes

Change 3547770 by Marcus.Wassmer

	GPU Crash for MTBF analytics

Change 3547773 by Marcus.Wassmer

	Updated doxygen comment for new analytic

Change 3548244 by Rolando.Caloca

	DR - Fix for translucency

Change 3548352 by Yujiang.Wang

	Added soft source radius for point and spot lights

	* Soft source radius controls how 'blurry' the shape of specular lighting looks
	* Implemented by LobeRoughness modification
	* Better approximation for spherical lights so that they don't look sharp when the radius is large using 'smoothed representative point' method
	* Suppoted LightTangent in forward shading

Change 3548530 by Brian.Karis

	Fix for mac build

Change 3548770 by Rolando.Caloca

	DR - vk - Prereq work for Vulkan parallel RHI contexts

Change 3548772 by Jian.Ru

	Fixed an issue that caused an ensure when switching levels in D3D10. #rb Marcus.Wassmer

Change 3548865 by Daniel.Wright

	With shadowmap caching of whole scene shadows, only one of the cache modes issues an occlusion query.  Fixes a crash where the static primitive shadowmap is culled but the movable primitive shadowmap is visible, which is normally not possible.

Change 3548952 by Rolando.Caloca

	DR - Allow separate samplers in the shaders on Vulkan

Change 3549197 by Marcus.Wassmer

	Fix DX12 PIx not working in cooked builds

Change 3549209 by Daniel.Wright

	Occlusion culling for CSM, from the main camera, controlled by 'r.Shadow.OcclusionCullCascadedShadowMaps'.  Disabled by default as rapid view changes don't work well with latent occlusion queries.

Change 3549943 by Ben.Marsh

	Include better diagnostic information when a modified build product is detected after running a build step.

Change 3550546 by Rolando.Caloca

	DR - Fix merge issue

Change 3550962 by Marcus.Wassmer

	EarlyZ Masking requires full depth prepass, so just force it to.

Change 3551062 by Daniel.Wright

	Handle NULL skylight

Change 3551104 by Rolando.Caloca

	DR - vk - Remove assert to match other platforms

Change 3551221 by Rolando.Caloca

	DR - vk - Add mirror clamp to edge extension
	- Fix framebuffer deletion

Change 3551224 by Daniel.Wright

	Volumetric lightmap increase density around static lights affecting a voxel brighter than LightBrightnessSubdivideThreshold.

Change 3551495 by Rolando.Caloca

	DR - vk - Intiial support for async queue

Change 3552101 by Rolando.Caloca

	DR - vk - Fix for async

Change 3552102 by Rolando.Caloca

	DR - SkinCache - Fix potential leak on staging buffers for recompute tangents
	- Integrate changes from 4.17 for memory optimizations

Change 3552104 by Rolando.Caloca

	DR - vk - Support for SRVs for index buffers

Change 3552838 by Rolando.Caloca

	DR - vk - Enable debug markers if found

Change 3553106 by Rolando.Caloca

	DR - vk - Fixes for index buffer SRVs

Change 3553107 by Rolando.Caloca

	DR - vk - Enable recompute tangents on Vulkan

Change 3553154 by Rolando.Caloca

	DR - vk - Fix crash with null uav

Change 3553342 by Yujiang.Wang

	Fix redundant skylights in AdvancedPreviewScene

	* PreviewScene was changed to using a skylight instead of ambient cubemap to support forward shading
	* AdvancedPreviewScene originally had a skylight, now it is changed to using the one inherited from PreviewScene

Change 3553481 by Rolando.Caloca

	DR - Integrate fix for D3D12 support of index buffers SRVs

	#jira UE-47674

Change 3553715 by Rolando.Caloca

	DR - Fix crash when launching PC with -featureleveles31

Change 3553725 by Rolando.Caloca

	DR - Redo fix

Change 3553803 by Rolando.Caloca

	DR - Shader compile fixes for ES3.1

Change 3553963 by Rolando.Caloca

	DR - vk - Remove extra IRDump

Change 3554741 by Ben.Marsh

	CIS fix.

Change 3555222 by Rolando.Caloca

	DR - vk - static analysis fix

Change 3555362 by Rolando.Caloca

	DR - vk - Prep work for separate present queue

Change 3556800 by Daniel.Wright

	Fixed screenshot for simple volume material doc

Change 3556942 by Brian.Karis

	Fixed Bokeh DOF regression.

Change 3556959 by Rolando.Caloca

	DR - vk - Rework staging buffer peak usage

Change 3557497 by Daniel.Wright

	Better display name for Unbound property on post process volume

Change 3557499 by Daniel.Wright

	Disable r.GenerateLandscapeGIData by default, opt-in for kite demo.  Projects that want to use heightfield GI need to opt-in to r.GenerateLandscapeGIData.

Change 3557068 by Olaf.Piesche

	Configurable spawn rate scaling reference value; sets the zero-scale reference value (default: 2),  so additional quality levels can be added and scaling customized further.
	IMPORTANT: This sets the reference to 3 in PS4Scalability.ini; effects on PS4 are again going to have reduced spawn rates versus PC and Neo, as intended by the FX artists starting with this change.

	#tests QAGame test maps

Change 3558123 by Rolando.Caloca

	DR - vk - static analysis fix

Change 3558685 by Yujiang.Wang

	Github #3323: Two sided foliage lightmap directionality fix

	* Subsurface is not intended to work with lightmaps that don't have directionality, however we still want it to look similar to a directional one
	* Now it uses a constant directionality value

	#jira UE-42523

Change 3559052 by Brian.Karis

	Hopefully fix static analysis

Change 3559113 by Rolando.Caloca

	DR - Fix crash witrh planar reflections

Change 3559275 by Yujiang.Wang

	Fix race condition on several scalability CVars between rendering thread and game thread

Change 3559612 by Rolando.Caloca

	DR - vk - SM5 with uniform buffers backend support

Change 3559716 by Rolando.Caloca

	DR - hlslcc - Fix linker warning on SCW debug

Change 3559768 by Rolando.Caloca

	DR - vk - Keep ub names for bindings

Change 3560195 by Rolando.Caloca

	DR - accessor

Change 3560275 by Rolando.Caloca

	DR - vk - Support for uniform buffers

Change 3560913 by Rolando.Caloca

	DR - vk - Fix static analysis

Change 3561145 by Rolando.Caloca

	DR - Don't crash if out of resource table bits

Change 3561194 by Rolando.Caloca

	DR - vk - Integrate timestamp fixes

Change 3562009 by Rolando.Caloca

	DR - vk - Workaround for bad UTexture data

Change 3563884 by Chris.Bunner

	VK_NULL_HANDLE fix.

Change 3563885 by Jian.Ru

	Ignore a warning caused by enabling distance field generation so that test Cube_Blue and Cube_Section don't fail. #rb Chris.Bunner

Change 3565943 by Jian.Ru

	Add extra warning log triggered when attempt to create FRWBuffer greater than 256MB in ComputeLightGrid() #rb Chris.Bunner

Change 3569479 by Michael.Lentine

	Integrate rhino shader changes to dev-rendering

Change 3569511 by Michael.Lentine

	Fix formating and string out on windows.

Change 3569572 by Yujiang.Wang

	Fix MeasureLongGPUTaskExecutionTime crashing on AMD on Macs

Change 3569614 by Yujiang.Wang

	Flush rendering commands before measuring the long GPU task's excution time to get accurate results

Change 3570524 by Jian.Ru

	Add extra parentheses to avoid compilation warning #rb Chris.Bunner

Change 3570722 by Chris.Bunner

	Static analysis workaround - same code, just validating compile-time assumptions a little further.

Change 3570880 by Jian.Ru

	Add small depth offset to avoid depth test failing during velocity pass

	#jira UE-37556

Change 3572532 by Jian.Ru

	Disable a warning to let tests pass

	#jira UE-48021

Change 3573109 by Michael.Lentine

	Checkin Michael.Trepka's fix for external dynamic libraries on mac.
	This is needed to make the build go green on mac.

Change 3573995 by Jian.Ru

	Move an include out of define to let nightly build pass

Change 3574777 by Chris.Bunner

	Continued merge fixes.

Change 3574792 by Rolando.Caloca

	DR - Rename todo

Change 3574794 by Chris.Bunner

	Re-adding includes lost in a pre-merge merge.

Change 3574879 by Michael.Trepka

	Disabled a couple of Mac deprecation warnings

Change 3574932 by Chris.Bunner

	Merge fix.

Change 3575048 by Michael.Trepka

	Fixed iOS compile warnings

Change 3575530 by Chris.Bunner

	Duplicating static analysis fix CL 3539836.

Change 3575582 by Chris.Bunner

	Fixed GetDimensions return type in depth resolve shaders.
	Compile error fix.

Change 3576326 by Chris.Bunner

	Static analysis fixes.

Change 3576513 by Michael.Trepka

	Updated Mac MCPP lib to be compatible with OS X 10.9

Change 3576555 by Richard.Wallis

	Metal Validation Errors.  Dummy black volume texture is in the wrong format in the Metal shader for the VolumetricLightmapIndirectionTexture.  Create a new dummy texture with pixel format PF_R8G8B8A8_UINT.

	#jira UE-47549

Change 3576562 by Chris.Bunner

	OpenGL SetStreamSource stride updates.

Change 3576589 by Michael.Trepka

	Fixed Mac CIS warnings and errors in Dev-Rendering

Change 3576708 by Jian.Ru

	Fix cascade preview viewport background color not changing
	#jira UE-39687

Change 3576827 by Rolando.Caloca

	DR - Minor fix for licensee

Change 3576973 by Chris.Bunner

	Fixing up HLSLCC language spec mismatch (potential shader compile crashes in GL and Vulkan).

Change 3577729 by Rolando.Caloca

	DR - Fix for info on SCW crashes

Change 3578723 by Chris.Bunner

	Fixed issue where custom material attribute was using display name as hlsl function name.

Change 3578797 by Chris.Bunner

	Fixed pixel inspector crashing on high-precision normals gbuffer format.

	#jira UE-48094

Change 3578815 by Yujiang.Wang

	Fix for UE-48207 Orion cooked windows server crash on startup

	* Crash caused by rendering features not available in a dedicated server build
	* Skip over MeasureLongGPUTaskExecutionTime when !FApp::CanEvenRender()

	#jira UE-48207

Change 3578828 by Daniel.Wright

	Disable volumetric lightmap 3d texture creation on mobile

Change 3579473 by Daniel.Wright

	Added View.SharedBilinearClampSampler and View.SharedBilinearWrapSampler.  Used these to reduce base pass sampler counts with volumetric lightmaps.

Change 3580088 by Jian.Ru

	Fix QAGame TM-CharacterMovement crashing on PIE
	#jira UE-48031

Change 3580388 by Daniel.Wright

	Fixed shadowed light injection into volumetric fog fallout from Rhino merge

Change 3580407 by Michael.Trepka

	Updated Mac UnrealPak binaries

Change 3581094 by Michael.Trepka

	Fix for ScreenSpaceReflections not working properly on iOS 11

Change 3581242 by Michael.Trepka

	Fixed a crash on startup on Mac when launching TM-ShaderModels in QAGame

	#jira UE-48255

Change 3581489 by Olaf.Piesche

	Replicating CL 3578030 from Fortnite-Main to fix #jira UE-46475

	#jira FORT-47068, FORT-49705
	Don't inappropriaely touch game thread data on the render thread. Push SubUV cutout data into a RT side object owned by the sprite dynamic data.

	#tests FN LastPerfTest

Change 3581544 by Simon.Tovey

	Fix for ensure accessing cvar from task thread.

	#tests no more ensure

Change 3581934 by Chris.Bunner

	Fixed ConsoleVariables.ini break from merge.

Change 3581968 by Jian.Ru

	Fix QAGame TM-ShaderModels PIE crash when resizing game viewport
	#jira UE-48251

Change 3581989 by Richard.Wallis

	Fix for NULL PrecomputedLightingBuffer.  It is null for first frame request in forward rendering so should have the GEmptyPrecomputedLightingUniformBuffer set in these cases after it's been initially tried to be set not before.

	#jira UE-46955

Change 3582632 by Chris.Bunner

	Resolved merge error.

Change 3582722 by Rolando.Caloca

	DR - Workaround for PF_R8G8B8A8_UINT on GL

	#jira UE-48208

Change 3584096 by Rolando.Caloca

	DR - Fix for renderdoc crashing in shipping

	#jira UE-46867

Change 3584245 by Jian.Ru

	Fix System.Promotion.Editor.Particle Editor test crash
	#jira UE-48235

Change 3584359 by Yujiang.Wang

	Fix for UE-48315 Wall behind base in Monolith is flickering white in -game Orion

	* Caused by dot(N, V) being negative
	* Clamp to (0, 1)

	#jira UE-48315

Change 3587864 by Mark.Satterthwaite

	Fix the GPU hang on iOS caused by changes to the Depth-Stencil MSAA handling: you can't store the MSAA stencil results on iOS < 10 unless you use the slower MTLStoreActionStoreAndMultisampleResolve which we don't need for the mobile renderer.
	#jira UE-48342

Change 3587866 by Mark.Satterthwaite

	Correctly fix iOS compilation errors against Xcode 9 Beta 5 and Xcode 8.3.3 - duplicating function definitions is guaranteed to be wrong.

Change 3588168 by Mark.Satterthwaite

	Move the Xcode version into the Metal shader format header, not the DDC key, so that we can handle bad compiler/driver combinations in the runtime and don't force all users to recompile every time the Xcode version changes.

Change 3588192 by Rolando.Caloca

	DR - Fix d3d12 linker error when EXECUTE_DEBUG_COMMAND_LISTS is enabled

Change 3588291 by Rolando.Caloca

	DR - Fix for d3d12 command list crash: Commited resources can not have aliasing barriers

	#jira UE-48299

Change 3590134 by Michael.Trepka

	Copy of CL 3578963

	Reset automation tests timer after shader compilation when preparing for screenshots taking to make sure tests don't time out.

Change 3590405 by Rolando.Caloca

	DR - hlslcc - support for sqrt(uint)

Change 3590436 by Mark.Satterthwaite

	Rebuild Mac hlslcc for CL #3590405 - without the various compiler workarounds left over from before the recent code changes.

Change 3590674 by Rolando.Caloca

	DR - vk - Integration from working branch
	- Fixes distance field maps
	- Compute pipelines stored in saved file
	- Adds GRHIRequiresRenderTargetForPixelShaderUAVs for platforms that need dummy render targets

Change 3590699 by Rolando.Caloca

	DR - Fix distance fields mem leak

Change 3590815 by Rolando.Caloca

	DR - vk - Fixes for uniform buffers and empty resource tables

Change 3590818 by Mark.Satterthwaite

	Temporarily switch back to OpenVR v1.0.6 for Mac only until I can clarify what to do about a required but missing API hook for Metal. Re-enabled and fixed compile errors with Mac SteamVR plugin code.

Change 3590905 by Mark.Satterthwaite

	For Metal shader compilation where the bytecode compiler is unavailable force the debug compiler flag and disable the archiving flag because storing text requires this.

	#jira UE-48163

Change 3590961 by Mark.Satterthwaite

	Submitted on Richard Wallis's behalf as he's on holiday:

	Mac fixes for Compute Skin Cache rendering issues (resulting in incorrect positions and tangents) and for recomputing tangents.  Problem sampling from buffers/textures as floats with packed data.  Some of the data appears as denorms so get flushed to zero then reinterpreted as uints via asuint or in Metal as_type<uint>().  Fix here for Metal seems to be to use uint types for the skin cache SRV's and as_type<> to floats instead.

	There could be some other areas where we're unpacking via floats that could affect Metal and I'm not sure how this will impact on other platforms.

	#jira UE-46688, UE-39256, UE-47215

Change 3590965 by Mark.Satterthwaite

	Remove the Z-bias workaround from Metal MRT as it isn't required and actually causes more problems.

Change 3590969 by Mark.Satterthwaite

	Make all Metal shader platforms compile such that half may be used, unless the material specifies full precision.

Change 3591871 by Rolando.Caloca

	DR - Enable PCSS on Vulkan & Metal
	- Enable capsule shadows on Vulkan

Change 3592014 by Mark.Satterthwaite

	Remove support for Mac OS X El Capitan (10.11) including the stencil view workaround.
	Bump the minimum Metal shader standard for Metal SM4, SM5 & Metal MRT to v1.2 (macOS 10.12 Sierra & iOS 10) so we can use FMAs and other newer shader language features globally.
	Enable the new GRHIRequiresRenderTargetForPixelShaderUAVs flag as Metal is like Vulkan and needs a target for fragment rendering.
	Also fix the filename for direct-compile & remove the old batch file generation in the Metal shader compiler.

Change 3592171 by Rolando.Caloca

	DR - CIS fix

Change 3592753 by Jian.Ru

	repeat Daniel's fix on xb1 profilegpu crash (draw events cannot live beyond present)

Change 3594595 by Rolando.Caloca

	DR - Fix D3D shader compiling run time stack corruption failure on debug triggering falsely

Change 3594794 by Michael.Trepka

	Call FPlatformMisc::PumpMessages() before attempting to toggle fullscreen on Mac to fix an issue on some Macs running 10.13 beta that would ignore the toggle fullscreen call freezing the app

Change 3594999 by Mark.Satterthwaite

	Disable MallocBinned2 for iOS as on Rhino it worked but on iOS 10.0.2 there are bugs (munmap uses 64kb granularity, not the 4096 the code expects given the reported page-size).
	While we are here remove the spurious FORCE_MALLOC_ANSI from the iOS platform header.

	#jira UE-48342

Change 3595004 by Mark.Satterthwaite

	Disable Metal's Deferred Store Actions and combined Depth/Stencil formats on iOS < 10.3 as there are bugs on earlier versions of iOS 10.

	#jira UE-48342

Change 3595386 by Mark.Satterthwaite

	Silence the deprecation warning for kIOSurfaceIsGlobal until SteamVR switches to one of the newer IOSurface sharing mechanisms.

Change 3595394 by Rolando.Caloca

	DR - Added function for tracking down errors in the hlsl parser
	- Added support for simple #if 0...#endif

Change 3599352 by Rolando.Caloca

	DR - Fixes for HlslParser
	- Added missing attributes for functions
	- Fixed nested assignment

Change 3602440 by Michael.Trepka

	Fixed Metal shader compilation from Windows with remote compilation disabled

	#jira UE-48163

Change 3602898 by Chris.Bunner

	Resaving assets.

Change 3603731 by Jian.Ru

	fix a crash caused by a material destroyed before the decal component
	#jira UE-48587

Change 3604629 by Rolando.Caloca

	DR - Workaround for PF_R8G8B8A8_UINT on Android

	#jira UE-48208

Change 3604984 by Peter.Sauerbrei

	fix for orientation not being limited to that specified in the plist

	#jira UE-48360

Change 3605738 by Chris.Bunner

	Allow functional screenshot tests to request a camera cut (e.g. tests relying on temporal aa history).

	#jira UE-48748

Change 3606009 by Mark.Satterthwaite

	Correctly implement ClipDistance for Metal as an array of floats as required by the spec. and fix a few irritating issues from the merge that should not have.
	- When compiling a tessellation vertex shader in the SCW direct mode we can't evaluate non-existant defines and we don't actually need to.
	- The define names, values & shader file name are irrelevant to the Metal output key, but the shader format name & Metal standard really do matter - should speed up Metal shader compilation a bit.
	- Move the shader vertex layer clip-distance to index 2 to avoid conflicts.
	- Don't default initialise the debug code string for Metal shaders or it won't print out the actual code....

	#jira UE-47663

Change 3606108 by Mark.Satterthwaite

	Temporary hack to avoid a crash in AVPlayer.

	#jira UE-48758

Change 3606121 by Mark.Satterthwaite

	Fix Windows compilation.

Change 3606992 by Chris.Bunner

	Static analysis fix.

[CL 3608256 by Marcus Wassmer in Main branch]
2017-08-24 15:38:57 -04:00
Peter Sauerbrei
547f9cd31c Copying //UE4/WEX-Staging/... to //UE4/Main (Source: //WEX/Main @ 3580612)
#rb none
#lockdown nick.penwarden

=================================================================================================
MAJOR FEATURES + CHANGES
=================================================================================================

Change 3526838 by David.Nikdel

	#WEX: make map elements support TitleProperty on their values in the editor
	#JIRA: none

Change 3517937 by Ben.Zeigler

	#jira UE-46574 Deprecate IPlatformChunkInstall::SetChunkInstallDelgate as it was spelled wrong, was only half implemented, and did not support success vs failure
	Replace with AddChunkInstallDelegate, which supports a bool error code and is bound once instead of separately for each chunk. All implementations support this delegate at a basic level, although several could be improved to call the failure delegate in more cases

Change 3498765 by David.Nikdel

	#WEX: Added a way to bind a delegate that fires whenever an analytics event is queued.
	- Bind this delegate and use it to log analytics events (for now)
	#JIRA: none

Change 3495796 by Josh.May

	#WEX
	#JIRA: None
	- Reworked the LoadTimes.DumpReport console command to accept command arguments and added options for alphanumeric sorting (-alphasort), tweakable asset time cutoff (lowtime=X), and file output to the Saved/Profiling directory (file).
	- Added hooks for automatically generating load time reports for every map load (enabled using the DUMP_LOAD_REPORT_PER_MAP #define).

Change 3489241 by Josh.Markiewicz

	#UE4 - First unfinished pass to GoogleIOS
	- SDK auth token data needs to copy auth into TMap properly
	#jira none

Change 3487767 by David.Nikdel

	#Analytics: Make FAnalyticsEventAttribute support typed values
	- This makes sure the value types in the resultant JSON reflect the code.
	- Added support for Number (double), Boolean, Null, and JsonFragment types
	- This should make it so we don't have to whitelist everything to be converted to number on the Grafana processing side.
	- Made all attributes on FAnalyticsEventAttribute immutable
	#JIRA: WEX-6696, WEX-6706

Change 3478818 by Chris.Babcock

	Add detection of Houdini (running on Intel Android CPU)
	#jira WEX-5009
	#ue4
	#android

	#robomerge R1.2

Change 3475449 by Allan.Bentham

	Add disable force inline option for iOS build, enabled for WEX.
	#jira UEMOB-167

[CL 3588553 by Peter Sauerbrei in Main branch]
2017-08-15 16:16:21 -04:00
Ben Marsh
398d16ab8a Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3491552)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3421703 on 2017/05/03 by Ben.Marsh

	Surround invalid character message in quotes, so it's clear when a space is listed.

	#jira UE-44606

Change 3422644 on 2017/05/04 by Steve.Robb

	Ranged-for support for TChunkedArray.

Change 3422754 on 2017/05/04 by Steve.Robb

	IAsyncReadFileHandle made non-copyable to prevent accidental wrong stat calculation.

Change 3422758 on 2017/05/04 by Steve.Robb

	Misc readability/standards improvements in stats code.

Change 3427955 on 2017/05/08 by Steve.Robb

	Version fix for IOS optimization pragmas, copied from equivalent Mac code.

Change 3428017 on 2017/05/08 by Steve.Robb

	Unused property types removed.

Change 3428641 on 2017/05/08 by Ben.Marsh

	UAT: Remove failed attempt to separate out BuildCookRun into separate commands, which have since rotted.

Change 3430407 on 2017/05/09 by Ben.Marsh

	UBT: Define UE_4_X_OR_LATER macros for every UE4 version greater than 4.17 (eg. UE_4_17_OR_LATER, etc...).

Change 3430682 on 2017/05/09 by Gil.Gribb

	UE4 - Added a fatal error for asking for very large alignments from MallocBinned2 and also return the true size of the memory block in GetAllocationSize().

Change 3430685 on 2017/05/09 by Gil.Gribb

	UE4 - Fixed a bug with the windows async IO stuff related to an unsafe pointer cast to LPDWORD from int64*.

Change 3430756 on 2017/05/09 by Ben.Marsh

	UBT: Switch some receipt stuff to use FileReference/DirectoryReference objects rather than raw paths.

Change 3431157 on 2017/05/09 by Ben.Marsh

	UBT: Store absolute paths when receipts are in memory; only insert pseudo-variables for $(EngineDir) and $(ProjectDir) when saved to disk.

Change 3432334 on 2017/05/10 by Graeme.Thornton

	Include project name in the UBT error message which appears when a plugin is missing

Change 3432481 on 2017/05/10 by Gil.Gribb

	UE4 - Fixed code to detect cycles in parallel tick sorting.

Change 3432485 on 2017/05/10 by Steve.Robb

	Simplified templating around bitfield offset calculation.

Change 3432608 on 2017/05/10 by Steve.Robb

	'bool == byte' static_assert restored after being removed in CL# 3432485.

Change 3432767 on 2017/05/10 by Ben.Marsh

	UBT: Fix exception when a missing plugin is encountered if the target does not have a project.

Change 3433031 on 2017/05/10 by Ben.Marsh

	UAT: Add classes to allow safer manipulation of paths within the staging directory (StagedFileReference, StagedDirectoryReference), and convert staging code over to using those and their regular filesystem counterparts (FileReference/DirectoryReference). Lots of cleanup and refactoring of staging code.

Change 3433049 on 2017/05/10 by Ben.Marsh

	Add more diagnostic information to asserts in TStaticIndirectArrayThreadSafeRead, to try and shed light on what sort of corrupted data is being passed in from the cooker.

	#jira UE-44336

Change 3433097 on 2017/05/10 by Steve.Robb

	Value initialization fix for MakeUnique<T[]>().

Change 3433972 on 2017/05/10 by Daniel.Lamb

	Stop unrealpak from crashing if generating a patch with more pak files then the original game.

Change 3434124 on 2017/05/10 by Ben.Marsh

	UAT: Remove hacky bUseWebSocketNetDriver option.

Change 3434824 on 2017/05/11 by Gil.Gribb

	UE4 - Printed an error instead of asserting when there are missing native classes.

Change 3434916 on 2017/05/11 by Ben.Marsh

	UAT: Separate the list of files to be staged into a separate class.

Change 3435427 on 2017/05/11 by Gil.Gribb

	UE4 - Fixed attempts to load compiled in packages, which produces warnings and is slow.

Change 3436240 on 2017/05/11 by Ben.Marsh

	UAT: Add a command to search for restricted folders under a given base directory.

Change 3438068 on 2017/05/12 by James.Fox

	Checking in Phase 1 of the Dev-Core test map for repro purposes. UE-44996 #rb none

Change 3438855 on 2017/05/15 by Robert.Manuszewski

	When verbose cluster logging is enabled and new object is added to an already existing cluster, the cluster will be dumped to log.

Change 3438929 on 2017/05/15 by Robert.Manuszewski

	Merging CL # 3436939 using Dev-Core_To_Dev-LoadTimes:

	Fix for potential crashes caused by levels staying in memory through material references.

Change 3439021 on 2017/05/15 by Ben.Marsh

	PR #3566: fix non-ascii characters in help command HTML converted to "?" (Contributed by kayama-shift)


Change 3439079 on 2017/05/15 by Ben.Marsh

	PR #2832: Implement missing MessageBox (Contributed by projectgheist)


Change 3439258 on 2017/05/15 by Ben.Marsh

	Highlight lines containing the strings "Error:" or "Warning:" in the output log, so that diagnostics from child processes are highlighted appropriately. The build system already relies similar logic for scraping diagnostics from logs, so it should be safe and predictable to check for messages in this way.

	#jira UE-43673

Change 3439358 on 2017/05/15 by Ben.Marsh

	UBT: Fix Visual Studio solution referencing the incorrect platform for existing C# project ("Any CPU" instead of "AnyCPU"). Was causing prompt to save the solution the first time it is opened.

Change 3439665 on 2017/05/15 by Ben.Marsh

	UAT: Remove DeployPakInternalLowerCaseFilenames(). No platforms require this to be true.

Change 3440735 on 2017/05/16 by Robert.Manuszewski

	UBT compile fix after the last merge

Change 3440889 on 2017/05/16 by Ben.Marsh

	EC: Fix regex for matching path to source files included in error messages from the Linux toolchain.

Change 3442776 on 2017/05/17 by Steve.Robb

	Platform fix for FPaths::IsSamePath.

Change 3445411 on 2017/05/17 by Ben.Marsh

	UBT: Fix typo in makefile diagnostic string.

Change 3446070 on 2017/05/18 by Steve.Robb

	Fix to array sizes in generated UFunction code, which should now handle editor-only functions.

Change 3446091 on 2017/05/18 by Steve.Robb

	Another array size fix for generated code.

Change 3446605 on 2017/05/18 by Steve.Robb

	BuildConfiguration option for static analysis.

Change 3448601 on 2017/05/19 by Richard.Fawcett

	Change FWindowsPlatformProcess::ApplicationSettingsDir() so that it no longer returns a path with a mixture of "\" and "/" characters, and only contains "/" characters.

	This makes it consistent with other related functions like FWindowsPlatformProcess::UserSettingsDir().

Change 3449026 on 2017/05/19 by Ben.Marsh

	Fix whitespace in template file.

Change 3449697 on 2017/05/19 by James.Fox

	Checking in Phase 2 of Dev-Core test map for QAGame
	Also enabled Blueprint and Actor clustering by default in QAGame for more thorough GC testing.

Change 3451352 on 2017/05/22 by Steve.Robb

	UFunction flags are now viewable in the debugger.

Change 3451355 on 2017/05/22 by Steve.Robb

	ARRAY_COUNT fix for zero-sized arrays in Clang.

Change 3451379 on 2017/05/22 by Steve.Robb

	C++14 operator delete overloads with size, for consistency.

Change 3451398 on 2017/05/22 by Graeme.Thornton

	Add AES and RSA encryption keys to the list of config fields that get stripped from ini files when staging
	When creating a pak file, do a filtered copy of all ini files to a temp directory so that all confidential fields can be stripped. Equivalent behaviour to staging a loose file distribution

Change 3451476 on 2017/05/22 by Ben.Marsh

	Compile shipping builds for WEX and Ocean, and post telemetry for the resulting executable size.

Change 3451478 on 2017/05/22 by Graeme.Thornton

	PR #3197: Improved log message formatting (Contributed by projectgheist)


Change 3451868 on 2017/05/22 by Steve.Robb

	Static log category moved out of header.
	ENUM_CLASS_FLAGS macro used instead of explicit operators.

Change 3452319 on 2017/05/22 by Ben.Marsh

	UBT: Add a new "package" build product type, which can be used for APK files on Android and Stub files on iOS. Treating these files as executables is causing the measured executable size to be incorrect.

Change 3452607 on 2017/05/22 by Ben.Marsh

	UBT: Filter out folders for other platforms when searching for headers to pass to UHT.

Change 3453600 on 2017/05/23 by Graeme.Thornton

	PR #3226 - Updated some code comments to better describe the usage of the log category definition macros

Change 3453616 on 2017/05/23 by Steve.Robb

	Error reported instead of a crash when there's a space between UCLASS or UINTERFACE and the open parenthesis.

Change 3453714 on 2017/05/23 by Ben.Marsh

	Build: Add some Visual Studio 2017 test compiles to the build system.

Change 3453795 on 2017/05/23 by Ben.Marsh

	UBT: Fix parsing of command line attributes that have a specific value assigned. We should never have an '=' suffix for such arguments.

Change 3454606 on 2017/05/23 by Ben.Marsh

	UAT: Make sure log filenames are unique by creating a 0-byte file in its place.

Change 3454709 on 2017/05/23 by Ben.Marsh

	UBT: Enable the /permissive- option for stricter standards compliance on Visual Studio 2017. Currently have /Zc:strictStrings disabled due to violations in Windows headers; all UE4 instances have been fixed up.

Change 3456445 on 2017/05/24 by Graeme.Thornton

	MemoryProfiler2 - Add mprof filename into title bar after opening

Change 3457129 on 2017/05/24 by Ben.Marsh

	Fix comment for FVector::Normalize().

	#jira UE-45369

	#rnx

Change 3457228 on 2017/05/24 by Ben.Marsh

	Do not allow forward-declaring Rect structs. They are not public, and it conflicts with third party libraries.

	#rnx

Change 3458357 on 2017/05/24 by Ben.Marsh

	Fix name resolution issue with /permissive- in VS2017.

Change 3458812 on 2017/05/25 by Robert.Manuszewski

	PR #2407: Fix LoadLibrary error with Microsoft Group Policy CWDIllegalinDllSearch mode 1 or 2 (Contributed by bozaro)


Change 3458894 on 2017/05/25 by Robert.Manuszewski

	PR #2096: Fix argument parsing in DiffAssets Comandlet (Contributed by cgrebeld)


Change 3461205 on 2017/05/26 by Robert.Manuszewski

	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 3464714 on 2017/05/30 by Robert.Manuszewski

	Fixing potential deadlock caused by a race condition when using FMallocVerifyProxy with FMallocBinned

Change 3465310 on 2017/05/30 by Ben.Marsh

	UBT: Enable bAdaptiveUnityDisablesOptimizations by default.

Change 3465346 on 2017/05/30 by Ben.Marsh

	UBT: Require Update 3 to be installed when compiling using VS2015.

Change 3465389 on 2017/05/30 by Ben.Marsh

	UBT: Fix support for RTTI when creating PCHs and shared PCHs.

Change 3466084 on 2017/05/30 by Ben.Marsh

	Fix compiling plain C files, where it would incorrectly use a C++ PCH.

Change 3467018 on 2017/05/31 by Robert.Manuszewski

	Async loading code will now properly handle cases when the requested package could not be created.

Change 3467113 on 2017/05/31 by Ben.Marsh

	UGS: When opening a solution in Visual Studio, always start the process in the solution's directory.

Change 3467508 on 2017/05/31 by Ben.Marsh

	Add a function to fix a long package name so it matches the case of a file on disk. Fixes deterministic cooking issues when on-disk case changes.

Change 3467510 on 2017/05/31 by Ben.Marsh

	Fix deterministic cooking issue caused by LODGroup only being initialized in the CDO if it's serialized, causing inconsistent delta serialization for instances.

Change 3467967 on 2017/05/31 by Ben.Marsh

	Always allow UAT to compile on non-Windows platforms, even if a debugger is present, since MSVC is the only one that will load C# PDBs.

Change 3468544 on 2017/05/31 by Ben.Marsh

	UBT: Add a more helpful message when a module is being compiled with implicit PCHs, but a source file is not configured correctly.

Change 3469241 on 2017/06/01 by Ben.Marsh

	UBT: Fix single-file compile causing a different UHT manifest to be generated, potentially excluding hidden dependencies.

Change 3471709 on 2017/06/02 by Daniel.Lamb

	Rebuild lighting commandlet now rebuilds reflections also instead of trashing them.

	#test None

Change 3471719 on 2017/06/02 by Daniel.Lamb

	Fixed crash in cooker while trying to cook for multiple platforms

	#test Launch on shootergame windows + ps4
	#jira UE-45356

Change 3472261 on 2017/06/02 by Ben.Marsh

	CRP: Clear out MDD logs whenever we clear out CRP logs.

Change 3473169 on 2017/06/05 by Graeme.Thornton

	PR #3622: Log category code cleanup (Contributed by projectgheist)


Change 3473176 on 2017/06/05 by Graeme.Thornton

	PR #3622: Log category code cleanup (Contributed by projectgheist) (Part II)

	 - Missed some files from my previous checkin


Change 3473597 on 2017/06/05 by Ben.Marsh

	UnrealVS: Fix massive slowdown on startup caused by searching the directory tree under the solution for *.uproject files (including intermediate folders, etc...). Now reads *.uprojectdirs files and only checks the listed directories within. Measured it taking > 30s to run before, now takes < 0.1s.

Change 3473722 on 2017/06/05 by Steve.Robb

	GitHub #3444: UE-42521: Added missing macro's for TMap and TSet

	PREPROCESSOR_COMMA_SEPARATED added as a better solution for the hacky comma separator solution in the PR.

Change 3475073 on 2017/06/06 by Steve.Robb

	Fix for TPromise's move assignment operator return value.

Change 3475331 on 2017/06/06 by Ben.Marsh

	UAT: Fix invalid paths being generated when stripping encryption settings from config files.

	* In cases where INI files were in a subfolder of the Config folder (eg. Config\Localization), it was not stripping the separating slash, resulting in files being written to the root directory of the current drive.
	* Paths under the config folder are not guaranteed to be unique.

Change 3475453 on 2017/06/06 by Ben.Marsh

	UBT: Add an error if a plugin lists a non-plugin module as belonging to it.

	#jira UE-45178

Change 3475668 on 2017/06/06 by Ben.Marsh

	Add a message showing when we begin creating the asset registry, since it can take a long time.

	#jira UE-41675

Change 3475747 on 2017/06/06 by Steve.Robb

	Replicated from CL# 3332960:

	Force a gather on hot reload, so we don't use stale state from the makefile.

	#jira UE-42205

Change 3475897 on 2017/06/06 by Ben.Marsh

	PR #3655: Improved behavior for Automation.IsBuildMachine (Contributed by projectgheist)


Change 3477432 on 2017/06/07 by Robert.Manuszewski

	Removed AsyncIOBandwidthLimit as it was no longer being used by anything.

Change 3478582 on 2017/06/07 by Ben.Marsh

	UBT: Allow setting the UE_ENGINE_DIRECTORY macro for any monolithic builds, to fix being able to debug cooked foreign projects in the binary release.

Change 3480035 on 2017/06/08 by Gil.Gribb

	UE4 - Fixed async loading from pak files < 64k.

Change 3484348 on 2017/06/12 by Robert.Manuszewski

	Removed private_subobject macro which was a temporary measure to make all subobjects private without breaking game code.

Change 3484863 on 2017/06/12 by Steve.Robb

	Fix for TSparseArray::operator= corrupting non-POD objects.
	InCopy.ArrayMax cached in a local instead of being read each time.
	Const-correctness fix for element copy construction.
	SrcData and DestData names flipped as they were the wrong way around.

	Source: https://udn.unrealengine.com/questions/374840/possible-bug-in-tsparsearray-assignment-operator.html

Change 3485003 on 2017/06/12 by Ben.Marsh

	UGS: Add support for multiple tabs. Each tab can monitor changes in a separate workspace, and scheduled syncs will run for all open tabs.

Change 3485063 on 2017/06/12 by Ben.Marsh

	UGS: Fix a null reference exception when right clicking on the notification icon during startup.

Change 3485104 on 2017/06/12 by Ben.Marsh

	PR #2084: [UAT] Command-line parameter to override branch name (Contributed by nbjk667)


Change 3485112 on 2017/06/12 by Steve.Robb

	TSetElement generic constructor protected from becoming a copy constructor.
	Redundant #include removed from AreTypesEqual.h.

	Source: https://udn.unrealengine.com/questions/374840/possible-bug-in-tsparsearray-assignment-operator.html

Change 3485452 on 2017/06/12 by Ben.Marsh

	UnrealVS: Fix command line not being updated for C# projects. IVsBuildPropertyStorage.SetPropertyValue does not seem to update properties that are cached in memory.

	#jira UE-45716

Change 3486182 on 2017/06/12 by Ben.Marsh

	UGS: Include option to selet tab names in the options menu.

Change 3486189 on 2017/06/12 by Ben.Marsh

	UGS: Fix browse button from context menu always opening a new tab.

Change 3486636 on 2017/06/13 by Steve.Robb

	FStatMessagesArray iteration changed to use ranged-for instead of indexing.

Change 3486688 on 2017/06/13 by Steve.Robb

	Fix for CDO pointer replacement in non-UObject properties during hot reload.

	#jira UE-38146

Change 3486704 on 2017/06/13 by Ben.Marsh

	UGS: Fix exception when closing the last open tab.

Change 3486707 on 2017/06/13 by Ben.Marsh

	UGS: Fix exception on load if UGS was closed with no projects open.

Change 3486715 on 2017/06/13 by Ben.Marsh

	UGS: Change tabs to show the project file by default.

Change 3486718 on 2017/06/13 by Ben.Marsh

	UGS: Only allow one workspace to sync at a time.

Change 3486880 on 2017/06/13 by Ben.Marsh

	UGS: Show the sync progress of each tab via the underline on the tab button.

Change 3486912 on 2017/06/13 by Ben.Marsh

	UGS: Include the open project and recent project list as separate top-level menu items.

Change 3486914 on 2017/06/13 by Ben.Marsh

	UGS: Update version to 1.101.

Change 3487092 on 2017/06/13 by Ben.Marsh

	UGS: Fix crash on startup if log window is minimized.

Change 3487099 on 2017/06/13 by Ben.Marsh

	UGS: Update version to 1.102

Change 3487198 on 2017/06/13 by Ben.Marsh

	Remove debug code.

Change 3487285 on 2017/06/13 by Ben.Marsh

	Restore Remap() function that was accidentally removed in merge.

Change 3487769 on 2017/06/13 by Ben.Marsh

	Disable the promoted flag when using the SyncProject command on Mac; doing so prevents UE4Game being compiled when packaging blueprint projects.

	#jira UE-45995

Change 3487915 on 2017/06/13 by Ben.Marsh

	UAT: Fix exception due to collection being modified while packaging for Linux.

	#jira UE-46013

Change 3487972 on 2017/06/13 by Ben.Marsh

	UAT: Always allow staged files to overwrite previously staged files. New iOS code relies on old behavior to overwrite engine icons and metadata with game copies.

	#jira UE-46014

Change 3487991 on 2017/06/13 by Ben.Marsh

	UAT: Ensure that the directory exists before trying to create a placeholder log filename.

	#jira UE-46015

Change 3489062 on 2017/06/14 by Robert.Manuszewski

	Removed FPackageFileSummary's AdditionalPackagesToCook as it was not used by anything. This should reduce the package header size considerably for levels with many streaming sublevels.

	#jira UE-45563

Change 3489063 on 2017/06/14 by Robert.Manuszewski

	Increasing the maximum package summary size to handle levels with multiple streaming sublevels.

	#jira UE-45563

Change 3491552 on 2017/06/15 by Ben.Marsh

	Handle failures to load *MeshReduction modules.

[CL 3492074 by Ben Marsh in Main branch]
2017-06-15 12:43:54 -04:00
Sam Zamani
841026250e Copying //UE4/GamePlugins-Staging to //UE4/Dev-Main (Source: //GamePlugins/Main @ 3440529)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3439153 on 2017/05/15 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Fix xbox build in non-unity
	- Also add a IsValid check to MatchmakingInterfaceLive

	#ROBOMERGE-SOURCE: CL 3438293

Change 3439152 on 2017/05/15 by robomerge

	#ROBOMERGE-AUTHOR: rob.cannaday
	Merge Twitch login changes from Dev-FortniteTwitch

	3423163 Add Twitch login widget

	3424581 Move GetUrlDomain from HttpManager to GenericPlatformHttp

	3425614 Expose the default cookies location

	3425645 Add a delegate OnLoginFlowLogout to IOnlineIdentity to be executed when logout occurs so Login Flow Manager can perform any cleanup tasks.

	3426310 Add a Reset function to login flow to clear registered OSSs and bound delegates
	Bind to OnLoginFlowLogout and reset cookies for given domains on logout
	CodeReview josh.markiewicz

	3426320 On logout, forward login domains to login flow to clear cookies.
	CodeReview josh.markiewicz
	#twitch

	3426373 Delete commented out block, intent fulfilled elsewhere in CL 3426320

	3427994 Twitch OSS improvements after code review
	codereview ian.fox, josh.markiewicz

	3428911 Enable Twitch OSS plugin in Fortnite

	3429303 Fix compile error from missing include

	3435609 Add option to revoke a Twitch access token on Logout.
	#jira OGS-694

	3435669 Use web browser for Twitch login on consoles
	#jira FORT-43425
	#jira FORT-43428

	3435685 Use Twitch's force_verify parameter to allow players to switch Twitch users instead of automatically completing the authorization flow

	#ROBOMERGE-SOURCE: CL 3436301

Change 3439151 on 2017/05/15 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - missing checkin

	#ROBOMERGE-SOURCE: CL 3435911


Change 3439150 on 2017/05/15 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - moved GetInputInterface to common location to fixed unity compiler error
	[FYI] bob.tellez

	#ROBOMERGE-SOURCE: CL 3435894


Change 3439145 on 2017/05/15 by josh.markiewicz

	#UE4 - made common GetInputInterface funciton in ExternaUILive similar to IdentityLive for code sharing
	#ryi ryan.gerleve

	#ROBOMERGE-SOURCE: CL 3435378

Change 3437802 on 2017/05/12 by robomerge

	#ROBOMERGE-AUTHOR: bart.hawthorne
	Fix issue where session visibility and party size would not get updated on PS4 if the player changed their party visibility from public to private.

	[CODEREVIEW] ian.fox, sam.zamani

	#ROBOMERGE-SOURCE: CL 3435079


Change 3437801 on 2017/05/12 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - only do "platform environment check" when on PS4
	- all other platforms don't need this feature
	- prevents premature calls to Login() on platforms that need to pick a user

	#ROBOMERGE-SOURCE: CL 3435076


Change 3437800 on 2017/05/12 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemPS4 - Ignore entitlements with no name
	- These may be deleted entilements?
	[CODEREVIEW] Bart.Hawthorne
	[FYI] Sam.Zamani

	#ROBOMERGE-SOURCE: CL 3433650


Change 3437797 on 2017/05/12 by robomerge

	#ROBOMERGE-AUTHOR: bob.tellez
	[AUTOMERGE]

	#UE4 IWYU fix

	#JIRA FORT-43436

	#ROBOMERGE-SOURCE: CL 3429743


Change 3437796 on 2017/05/12 by robomerge

	#ROBOMERGE-AUTHOR: bob.tellez
	[AUTOMERGE]

	#UE4 Added a -NoAchievements command line option to disable achievement tracking on PS4 to override what is configured in ini

	#JIRA FORT-43436

	#ROBOMERGE-SOURCE: CL 3429601


Change 3437791 on 2017/05/12 by todd.eckert

	Fixed Bug# FORT-43116 - FQA (Must Fix): Incorrect Brand Guideline displayed within the application when a network error occurs.
	Fixed Bug# FORT-43109 - FQA (Must Fix): Incorrect reference to a Sony Entertainment Network account displayed within the application.

	- Added ??? to Playstation???Network

	#fortnite
	#jira FORT-43116, FORT-43109

	#ROBOMERGE-SOURCE: CL 3428764


	#ROBOMERGE-SAYS: Unresolved conflicts. todd.eckert, please merge this change by hand.
	//ROBOMERGE_OGS_Main/PluginTestGame/Plugins/Online/PS4/OnlineSubsystemPS4Server/Source/Private/OnlineSubsystemPS4Server.cpp
	#CodeReview: todd.eckert, david.nikdel, greg.latcovich, sam.zamani

Change 3437788 on 2017/05/12 by robomerge

	#ROBOMERGE-AUTHOR: rob.cannaday
	Merging Online plugins from Dev-FortniteTwitch task stream

	#ROBOMERGE-SOURCE: CL 3428687


Change 3437786 on 2017/05/12 by robomerge

	#ROBOMERGE-AUTHOR: bob.tellez
	Back out revision 15 from OnlineSubsystemPS4.cpp

	Same issue as was found in OnlineSubsystemPS4Server.cpp

	[CODEREVIEW] Todd.Eckert

	#ROBOMERGE-SOURCE: CL 3427016


Change 3437781 on 2017/05/12 by todd.eckert

	Removed the ??? from the PS4 Server .cpp online sub system because it didn't compile on linux. Need to investigate further.

	#fortnite

	#ROBOMERGE-SOURCE: CL 3426537


	#ROBOMERGE-SAYS: Unresolved conflicts. todd.eckert, please merge this change by hand.
	//ROBOMERGE_OGS_Main/PluginTestGame/Plugins/Online/PS4/OnlineSubsystemPS4Server/Source/Private/OnlineSubsystemPS4Server.cpp
	#CodeReview: todd.eckert, david.nikdel, greg.latcovich, sam.zamani

Change 3437770 on 2017/05/12 by todd.eckert

	Fixed Bug# FORT-43116 - FQA (Must Fix): Incorrect Brand Guideline displayed within the application when a network error occurs.
	Fixed Bug# FORT-43109 - FQA (Must Fix): Incorrect reference to a Sony Entertainment Network account displayed within the application.

	- Added ??? to Playstation???Network

	#fortnite
	#jira FORT-43116, FORT-43109

	[CODEREVIEW] ari.patrick

	#ROBOMERGE-SOURCE: CL 3426422


	#ROBOMERGE-SAYS: Unresolved conflicts. todd.eckert, please merge this change by hand.
	//ROBOMERGE_OGS_Main/PluginTestGame/Plugins/Online/PS4/OnlineSubsystemPS4Server/Source/Private/OnlineSubsystemPS4Server.cpp
	#CodeReview: todd.eckert, david.nikdel, greg.latcovich, sam.zamani

Change 3436843 on 2017/05/12 by robomerge

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	accidentally disabled the wifi check
	#jira none

	#ROBOMERGE-SOURCE: CL 3436841 in ... via CL 3436842


Change 3436031 on 2017/05/11 by robomerge

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	fix for some of the title files being missed when requesting chunk locations
	#jira none

	#ROBOMERGE-SOURCE: CL 3436029 in ... via CL 3436030


Change 3433725 on 2017/05/10 by peter.sauerbrei

	fix for thinking Android is always on WiFi even when it is on LTE
	#jira none

	#ROBOMERGE-SOURCE: CL 3433704 in ... via CL 3433707


Change 3431377 on 2017/05/09 by robomerge

	#ROBOMERGE-AUTHOR: david.nikdel
	#CatalogHelper #Analytics
	- Go back to reporting all receipts in ECom.ClientInAppPurchase (no quantity check)
	- Adjust PS4 Purchasing OSS to not return quantity <= 0 entitlements in the results from Checkout (since they definitely didn't come from this checkout). They'll still come back from QueryPurchases so we can restore
	- Adjust MCP Purchase flow to enforce Quantity >= 1 on entitlements directly resulting from a purchase. This seems to be the case (Q=0) when purchasing a non-consumable entitlement
	- Generate the PurchaseCorrelationId sooner and store it on the RealMoneyParams structure so it's available even in the absence of receipts.
	[CODEREVIEW] Sam.Zamani, Ian.Fox
	#JIRA: WEX-6060

	#ROBOMERGE-SOURCE: CL 3431372 in ... via CL 3431373


Change 3426530 on 2017/05/05 by robomerge

	#ROBOMERGE-AUTHOR: justin.sargent
	Copying //Portal/Dev-Main-Staging to Main (//Portal/Main)

	#ROBOMERGE-SOURCE: CL 3426526 in //Portal/Main/Portal/Plugins/...


Change 3425976 on 2017/05/05 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - changed unique ids to heap memory so they can be AsShared() externally
	[CODEREVIEW] ian.fox, ryan.gerleve

	#tests Fortnite profile switching

	#ROBOMERGE-SOURCE: CL 3424004


Change 3424739 on 2017/05/04 by robomerge

	#ROBOMERGE-AUTHOR: peter.knepley
	OnlineBeacons should have bRelevantForNetworkReplays=false

	#ROBOMERGE-SOURCE: CL 3424738 in //UT/Main/UnrealTournament/Plugins/...


Change 3422765 on 2017/05/04 by robomerge

	#ROBOMERGE-AUTHOR: ben.marsh
	Various fixes for CIS.

	#ROBOMERGE-SOURCE: CL 3422763 in //UE4/Main/Engine/Plugins/...


Change 3421749 on 2017/05/03 by robomerge

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	[NULL MERGE]
	make it so we are back to 100MB
	temporary fix until I can either download the symbol file or symbolicate on the server
	#jira WEX-6142

	#ROBOMERGE-SOURCE: CL 3421746 in ... via CL 3421747


Change 3421372 on 2017/05/03 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - separated out the canceled account picker state from the generic error state
	- valid when the HOME button is pressed while in the account picker
	- also valid when adding a new account to the account picker
	[CODEREVIEW] ian.fox
	#tests using Y account picker in Fortnite

	#ROBOMERGE-SOURCE: CL 3421371


Change 3419554 on 2017/05/02 by robomerge

	#ROBOMERGE-AUTHOR: bart.hawthorne
	- Change the connection timeout value from 90 seconds to 30 and the initial connect value to 45, so that disconnections happen earlier (these are the same values as Paragon)
	- Add a WebApiTimeoutInSeconds config value for the PS4 OSS for web requests made with the PS4 Web Api library. This matches the timeout in the Http module.
	- Individual PS4 Web Api tasks can have their own timeout values as appropriate

	[CODEREVIEW] carlos.cuello, sam.zamani
	#jira FORT-42428

	#ROBOMERGE-SOURCE: CL 3419551


Change 3418470 on 2017/05/02 by Sam.Zamani

	=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
	#OGF, #OnlineSubsystemLive, #OnlineSubsystemPS4 - Normalize epic-used authtypes to lowercase
	- Revert OSS Live AuthType to "xbl" from "xbl_xtoken" (but still send xbl_xtoken as auth method)
	- Add helper for XBL authtype to present the correct AuthMethod for xbox (and future other token auths)
	- Fixes GetExternalIds api requests expecting "psn" instead of "PSN"
	- Fixes a bunch of instances where we're expect GetAuthType to return the platform "xbl", not "xbl_xtoken"
	[CODEREVIEW] Sam.Zamani
	[FYI] Jamal.Fanaian

	#ROBOMERGE-SOURCE: CL 3417624

	=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Change 3417581 on 2017/05/01 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemMCP - Remove bogus ensure
	- This ensure doesn't make sense logically, as we can only be the inverse case in this branch
	- Not sure what this was trying to prove?
	[CODEREVIEW] Rob.Cannaday

	#ROBOMERGE-SOURCE: CL 3417580


Change 3415425 on 2017/04/30 by robomerge

	#ROBOMERGE-AUTHOR: rob.cannaday
	Twitch External UI interface
	#jira FORT-41161
	Ian.Fox, Josh.MarkieWicz

	#ROBOMERGE-SOURCE: CL 3415424


Change 3414181 on 2017/04/28 by robomerge

	#ROBOMERGE-AUTHOR: rob.cannaday
	Use TEXT macro

	#ROBOMERGE-SOURCE: CL 3414180


Change 3414167 on 2017/04/28 by robomerge

	#ROBOMERGE-AUTHOR: rob.cannaday
	Add LeaderDisplayName to "Party Info" line for DumpPartyState
	#jira FORT-42530

	#ROBOMERGE-SOURCE: CL 3414166


Change 3412571 on 2017/04/27 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - fixed crash in UnregisterLocalTalkers when the User was null presumably because they were logged out while the game was constrained
	[CODEREVIEW] ian.fox, ryan.gerleve

	#ROBOMERGE-SOURCE: CL 3412564


Change 3411953 on 2017/04/27 by robomerge

	#ROBOMERGE-AUTHOR: bart.hawthorne
	Add comment to previous presence fix

	#ROBOMERGE-SOURCE: CL 3411952


Change 3411815 on 2017/04/27 by robomerge

	#ROBOMERGE-AUTHOR: bart.hawthorne
	Use a different overload of PresenceService::GetPresenceForMultipleUsersAsync  and specify the parameters to retrieve presence - even though the parameters we're using should match the defaults in the other overload, the other overload was not working.

	[CODEREVIEW] ryan.gerleve, ian.fox
	#jira FORT-41659

	#ROBOMERGE-SOURCE: CL 3411814


Change 3410328 on 2017/04/26 by robomerge

	#ROBOMERGE-AUTHOR: rob.cannaday
	Twitch OSS improvements after code review

	#ROBOMERGE-SOURCE: CL 3410326


Change 3410295 on 2017/04/26 by robomerge

	#ROBOMERGE-AUTHOR: bart.hawthorne
	Fix detailed presence not showing up in the friends list on PS4 - the API group changed after the SDK 4.0 upgrade.

	[CODEREVIEW] sam.zamani

	#ROBOMERGE-SOURCE: CL 3410294


Change 3409227 on 2017/04/26 by rob.cannaday

	#fort #twitch
	Twitch Online Subsystem
	Implements Login with an existing client token.  Next step will prompt the user to login if there is no existing token
	#jira FORT-41158
	#jira FORT-41160

	#ROBOMERGE-SOURCE: CL 3409215


Change 3408719 on 2017/04/25 by Ian.Fox

	#HTTPChunkInstaller - Fix bad merge

	#CodeReview Peter.Sauerbrei

Change 3408245 on 2017/04/25 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - missing comments in mcp
	#jira none

	#ROBOMERGE-SOURCE: CL 3408241


Change 3408202 on 2017/04/25 by peter.sauerbrei

	update to the chunk data to allow characters to have some duplicate data in their chunks
	this increases the installed size only slightly
	#jira WEX-6118
	#jira WEX-5996

	#ROBOMERGE-SOURCE: CL 3408187 in ... via CL 3408188


Change 3407037 on 2017/04/25 by robomerge

	#ROBOMERGE-AUTHOR: james.hopkin
	#oss #stomp Added the correct flow for requesting/refreshing auth for both user and client Stomp connections.

	Logic follows the same pattern as ProcessRequestAsUser/Client in OnlineSubsystemMcp. Apart from obtaining the appropriate token, the main difference between the client and user code paths is:
	 - client connection attempts will request auth if there is no current token, even if previous auth requests failed
	 - user connections will refresh auth if a valid token has expired, but fail if there is no valid auth token for the user
	In either case, Stomp connections wait for the response from a pending auth request before attempting to connect.

	Note that the dedicated server-specific code has moved from the manager to the individual connection, since each connection keeps track of whether it is waiting on an auth request.

	Also tightend up some TSharedPtrs to be TSharedRefs and replaced MakeShareables with MakeShared.

	#jira OGS-633,FORT-41696

	#ROBOMERGE-SOURCE: CL 3407036


Change 3406177 on 2017/04/24 by robomerge

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	fix for not all pak files being mounted when trying to load items for the profile
	#jira WEX-6065

	#ROBOMERGE-SOURCE: CL 3406170 in ... via CL 3406173


Change 3406159 on 2017/04/24 by robomerge

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	fix for crash on exit in OnlineSubsystem for IOS
	#jira none

	#ROBOMERGE-SOURCE: CL 3406156 in ... via CL 3406158


Change 3404579 on 2017/04/21 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#Fortnite - Set console parties not joinable when epic party is unjoinable
	- This fixes the case where we're advertising our session during things like the tutorial

	#jira FORT-40318

	#ROBOMERGE-SOURCE: CL 3404578


Change 3404201 on 2017/04/21 by peter.sauerbrei

	fix for paks not being mounted before attempting to use them
	#jira WEX-6065

	#ROBOMERGE-SOURCE: CL 3404179 in ... via CL 3404182


Change 3401877 on 2017/04/20 by robomerge

	#ROBOMERGE-AUTHOR: alex.thurman
	Theater Map Tiles cannot be clicked on while the Update Manager has an update in progress.

	#JIRA FORT-42085
	[CODEREVIEW] Ashley.Rog, Jennifer.Miller, Chris.Gagnon

	#ROBOMERGE-SOURCE: CL 3401873


Change 3401737 on 2017/04/20 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - added Google error parsing now that I have an example
	#jira none

	#ROBOMERGE-SOURCE: CL 3401736


Change 3401142 on 2017/04/19 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemPS4 - Fix PS4 purchasing not copying product label into purchase
	[CODEREVIEW] Luke.Thatcher
	#jira FORT-41627

	#ROBOMERGE-SOURCE: CL 3401141


Change 3401087 on 2017/04/19 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#Fortnite - Fix cancelling purchases as being an exceptional error
	#jira FORT-41627
	[CODEREVIEW] Saad.Nader

	#ROBOMERGE-SOURCE: CL 3401086


Change 3401085 on 2017/04/19 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OGF, MCP - Rollback change to OnlineIdentity in favour of fix from Orion
	[CODEREVIEW] Josh.Markiewicz, Sam.Zamani

	#ROBOMERGE-SOURCE: CL 3401084


Change 3399421 on 2017/04/19 by robomerge

	#ROBOMERGE-AUTHOR: bart.hawthorne
	Set the cached presence in the presence interface for each friend after retrieving the friend list. Fixes an issue where the "Join Party" in-game button wouldn't join a friend's party because it was looking for the presence data from the friend's interface, which wasn't there.

	#jira FORT-39724

	#ROBOMERGE-SOURCE: CL 3399419


Change 3399065 on 2017/04/19 by ian.fox

	#Fortnite - Fix headless account creation
	- On successful headless account creation, pass new account id to game so it knows we were successful
	- Added virtual SetPlatformUniqueNetId to store a logged in console users net id
	- Moved storing of platform net id to OnLoginConsoleComplete as it's always called even if logged in (whereas OnLoginUIConsoleComplete is only called when not logged in)
	- Removed virtual overrides in favour of just calling SetPlatforumUniqueNetId to do storing functionality
	[CODEREVIEW] Adam.Szpakowski, Josh.Markiewicz
	#jira FORT-41787

	#ROBOMERGE-SOURCE: CL 3399061


Change 3398873 on 2017/04/18 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemPS4 - Fix PS4 store products querying for SDK 4.500
	- Our version of strncpy auto-nulls the last character, so we need to +1 the length (and ensure that fits with a static_assert)
	- This worked before without the +1 because PRODUCT_ID_LEN was 47, whereas now PRODUCT_LABEL_MAX_LEN is 16 (same as our id)
	[CODEREVIEW] Luke.Thatcher, Sam.Zamani
	#jira FORT-42062

	#ROBOMERGE-SOURCE: CL 3398872


Change 3398774 on 2017/04/18 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemPS4 - Only report unconsumed entitlements
	- This is the behaviour licensees likely want
	- This fixes clients trying to reclaim already claimed entitlements after account resets
	[CODEREVIEW] Sam.Zamani, David.Nikdel
	#jira FORT-41757
	#jira FORT-40836

	#ROBOMERGE-SOURCE: CL 3398771


Change 3398480 on 2017/04/18 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#Fortnite - Add ShowWebUrl blueprint function for handling whitelisted domains/embeded browser on consoles
	- Fixed PS4 ShowWebURL to not use out-of-scope values from TCHAR_TO_UTF8
	- We need to use the OSS implementation for all web browser stuff for PS4 website permissions
	[CODEREVIEW] Saad.Nader, Saul.Abreu, Bart.Hawthorne
	#jira FORT-39699

	#ROBOMERGE-SOURCE: CL 3398478


Change 3398418 on 2017/04/18 by robomerge

	#ROBOMERGE-AUTHOR: james.longstreet
	#fortnite #jira FORT-28656 Fix PS4 trophies

	I had PS4Engine.ini stashed in another changelist and missed checking it in.  Changes to UnlockAchievementForQuest() for GameProgress on Xbox broke PS4 as well, so make the platform achievement ID mapping changes to PS4 as well.

	#ROBOMERGE-SOURCE: CL 3398416


Change 3398378 on 2017/04/18 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - Session resiliency OGS-563
	- all session events detect connection failures
	- server is authoritative, continues to keep track of session state changes regardless of backend failures
	-- game code will be alerted to problems however
	- all subsequent events prior to a successful heartbeat immediately fail
	-- prevents build up of session calls that will inevitably fail but take a long time due to http retry code
	- first successful heartbeat after any number of failures will trigger a full update on the backend
	-- only a successful full update will bring the session back to normal
	- more logging of state of sessions while out of sync with backend

	#tests charles tool to block calls to the server during empty state all the way through moba completion

	#ROBOMERGE-SOURCE: CL 3398373


Change 3397666 on 2017/04/18 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - async task manager comments

	#tests none

	#ROBOMERGE-SOURCE: CL 3397665


Change 3397243 on 2017/04/18 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Error hresults now log as hex and error messages use the proper wide string formatter for wchar_t

	#ROBOMERGE-SOURCE: CL 3397242


Change 3397241 on 2017/04/18 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Don't query session information for users we don't fully know about yet
	- This helps ignore the first "stat updated" event we get when we initially listen to a user

	#ROBOMERGE-SOURCE: CL 3397240


Change 3397233 on 2017/04/17 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Batch friend user stats requests
	- We were hitting a cap requesting the entire friendslist at once on an account with 100+ friends
	- Batch size is 50 for now; maximum is undocumented(?) but this is safe enough
	- Moved multiplayersession friends query out from behind the presence query now that we're not squishing presence
	[CODEREVIEW] Ryan.Gerleve
	#jira FORT-41812

	#ROBOMERGE-SOURCE: CL 3397232


Change 3397062 on 2017/04/17 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Remove spammy presence log
	- This warning was a valid case when we subscribe to friends' status changes initially before querying friends is complete, so not worth logging

	#ROBOMERGE-SOURCE: CL 3397061


Change 3396939 on 2017/04/17 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Fix error log typo while I'm at it

	#ROBOMERGE-SOURCE: CL 3396938


Change 3396935 on 2017/04/17 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Fix error message to use TCHAR correctly instead of ansichar

	#ROBOMERGE-SOURCE: CL 3396933


Change 3396593 on 2017/04/17 by Sam.Zamani

	Unshelved from pending changelist '3396269':

	=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
	#UE4 Do not attempt to PS4 create subsystem multiple times if it failed to init. Multiple failed init requests cause system messages to get emitted that accumulate bad state that manifests in IME device logic failing and controller id management code failing.

	#ROBOMERGE-SOURCE: CL 3396268


Change 3394908 on 2017/04/14 by robomerge

	#ROBOMERGE-AUTHOR: james.longstreet
	#fortnite #jira FORT-38142 Cross-platform achievement unlocking

	In InitQuests, if a) a quest has a valid achievement unlock state, b) the quest is in its achievement unlock state, and c) the corresponding achievement exists and is not unlocked, then unlock the achievement.  This covers unlocking achievements that were achieved on a different platform.

	To support checking if the achievement is unlocked, change the behavior of FOnlineAchievementsLive::GetCachedAchievement()/GetCachedAchievementDescription() to treat the AchievementId passed in as the game-side achievement ID (in Fortnite's case, the quest ID), not the platform-side ID -- the client code shouldn't care about the platform ID.

	#ROBOMERGE-SOURCE: CL 3394907


Change 3393149 on 2017/04/13 by robomerge

	#ROBOMERGE-AUTHOR: ryan.gerleve
	Clear cached XboxLiveContexts when resuming from suspend and re-subscribe to multiplayer events, since they are stale at this point.

	#jira FORT-40115

	#ROBOMERGE-SOURCE: CL 3393147


Change 3392843 on 2017/04/13 by robomerge

	#ROBOMERGE-AUTHOR: eric.newman
	Allow server to try to report match results for up to 15 minutes when connection issues are encountered.  Configurable maximum retry count and retry time limit via INI.
	#jira OR-37112

	#tests Ran through several connection failure test cases with a local mcp.  Rejecting port connections (stopping local mcp) triggers retries, timeouts (pausing debugger, socket still accepting data) correctly does not retry the call in case it has already been recorded

	#ROBOMERGE-SOURCE: CL 3392842


Change 3391810 on 2017/04/12 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#Fortnite, #Xbox - Block mcp private chat to XB users (who are not on xbox)

	#ROBOMERGE-SOURCE: CL 3391809


Change 3391610 on 2017/04/12 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Fix crash if you failed to join a session
	- We were using the NamedSession pointer in TriggerDelegates after we deleted it in Finalize
	- We now store the SessionName FName separately and use that everywhere
	[CODEREVIEW] Ryan.Gerleve

	#ROBOMERGE-SOURCE: CL 3391608


Change 3391595 on 2017/04/12 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Add logging for failing to parse xb invites

	#ROBOMERGE-SOURCE: CL 3391594


Change 3391593 on 2017/04/12 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Change error format for HResults to always log as hex value

	#ROBOMERGE-SOURCE: CL 3391592


Change 3391165 on 2017/04/12 by robomerge

	#ROBOMERGE-AUTHOR: luke.thatcher
	[FORTNITE] [PS4] [^] Merging PS4 SDK 4.500 upgrade from //UE4/Fortnite-Staging (CL 3390958) to //Fortnite/Main
	 - Resolves memory corruption crash bug when users sign out of PSN

	#jira FORT-41496

	#ROBOMERGE-SOURCE: CL 3391164


Change 3389595 on 2017/04/11 by robomerge

	#ROBOMERGE-AUTHOR: ryan.gerleve
	Duplicate CL 3386892 from Dev-Networking to prevent modifying an array during range-for iteration.

	#jira FORT-40583

	#ROBOMERGE-SOURCE: CL 3389288


Change 3388922 on 2017/04/11 by robomerge

	#ROBOMERGE-AUTHOR: ryan.gerleve
	PS4 voice interface always accesses the PS4 online subsystem explicity in case the default subsystem is not PS4.

	#ROBOMERGE-SOURCE: CL 3388920


Change 3388393 on 2017/04/11 by robomerge

	#ROBOMERGE-AUTHOR: james.longstreet
	#fortnite #jira FORT-38507 Implement GameProgress for Xbox as a percentage of completed achievements.

	FOnlineAchievementsLive did not handle the case where GetAchievementsForTitleIdAsync() does not return all of the achievements (Result->HasNext).  It seems to return a maximum of 32, although this isn't documented.  Change FOnlineAchievementsLive to query each new "page" of achievements until we've received all of them.

	#ROBOMERGE-SOURCE: CL 3388392


Change 3388216 on 2017/04/11 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - forgot to compare against the url encoded login url (only the startswith element was preventing failure) (FB/Google)
	- added parsing of facebook login failure to close browser window rather than allow it to go back to facebook homepage
	#jira none

	#ROBOMERGE-SOURCE: CL 3388213


Change 3388211 on 2017/04/11 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - added setting to persist cookies or force in memory only
	- limited redirect URL delegate firing to just "before browse" call and not on on "url change"
	-- also limited to main frame
	- cleanup
	#jira none

	#ROBOMERGE-SOURCE: CL 3388210


Change 3388202 on 2017/04/11 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - removed Facebook access token from logs on shipping builds
	#jira none

	#ROBOMERGE-SOURCE: CL 3388200


Change 3387618 on 2017/04/10 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - code support for moving Android Facebook SDK to NFL directory
	#jira OGS-636

	#ROBOMERGE-SOURCE: CL 3387614


Change 3387617 on 2017/04/10 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - moving Android Facebook SDK to NFL directory
	#jira OGS-636

	#ROBOMERGE-SOURCE: CL 3387613


Change 3387605 on 2017/04/10 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - small fixup to GoogleLogin init function on Android
	#JIRA none

	#ROBOMERGE-SOURCE: CL 3387602


Change 3387577 on 2017/04/10 by robomerge

	#ROBOMERGE-AUTHOR: jeff.campeau
	Select MCP environment by sandbox id

	#ROBOMERGE-SOURCE: CL 3387576


Change 3387460 on 2017/04/10 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemMcp - Encode XMPP usernames so that splitting on ":" is safe
	[CODEREVIEW] Rob.Cannaday

	#ROBOMERGE-SOURCE: CL 3387458


Change 3386909 on 2017/04/10 by robomerge

	#ROBOMERGE-AUTHOR: bart.hawthorne
	Temporary change to skip the rejoin check if we are handling an invite. Eventually we will delay handling the invite until after the player has a chance to choose whether to rejoin the session or not.

	#ROBOMERGE-SOURCE: CL 3386904


Change 3386816 on 2017/04/10 by robomerge

	#ROBOMERGE-AUTHOR: ryan.gerleve
	Add ability for the Xbox Live presence and friends interfaces to retrieve configured stats as presence properties along with the default presence string.
	Add support for uint32 parameters to Xbox Live events.

	#ROBOMERGE-SOURCE: CL 3386813


Change 3386282 on 2017/04/10 by robomerge

	#ROBOMERGE-AUTHOR: eric.newman
	Changed MCP's verify auth to only return false if an explicit invalidation was received.  Intent is more resiliency to temporary connection issues.
	[CODEREVIEW] josh.markiewicz,sam.zamani

	#tests Connected to a server after changing the verify URL to an invalid URL, and verified server allowed player to join despite timeout attempting to verify auth
	#jira OGS-521

	#ROBOMERGE-SOURCE: CL 3385935


Change 3385235 on 2017/04/07 by robomerge

	#ROBOMERGE-AUTHOR: ryan.gerleve
	[AUTOMERGE]

	Rename OnlineSubsystemLiveDedicatedServer and OnlineSubsystemPS4DedicatedServer to mitigate Windows maximum path length issues.

	#jira FORT-1

	#ROBOMERGE-SOURCE: CL 3385231


Change 3385205 on 2017/04/07 by robomerge

	#ROBOMERGE-AUTHOR: sam.zamani
	fix for not properly detecting missing auth association

	[CODEREVIEW] ian.fox
	#tests PS4 run with an unlinked account

	#ROBOMERGE-SOURCE: CL 3385204


Change 3383881 on 2017/04/06 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemMcp - Add warning information so you know what about a build is incompatible
	[CODEREVIEW] Rob.Cannaday

	#ROBOMERGE-SOURCE: CL 3383687


Change 3381205 on 2017/04/05 by Ian.Fox

	#OnlineSubsystemLive, #OnlineSubsystemPS4 - Add unique namespaces for dedicated server OSS online service names
	- This prevents any possible issues if these values change

Change 3380991 on 2017/04/05 by Ian.Fox

	#OnlineSubsystemSwitch - Rename OnlineSubsystem Service name to Nintendo

Change 3380564 on 2017/04/05 by James.Hopkin

	#gameplugins #facebook Fixed typo (wrong class name)

Change 3380520 on 2017/04/05 by robomerge

	#ROBOMERGE-AUTHOR: james.hopkin
	#mcp #profile

	- Added specific notification type for profile update notifications instead of HTTP response type.
	- Notifications are now finer grained: each Stomp notification is either a Notification (e.g. LootNotification), or an update for a single profile.
	- Updates can be broken into chunks. Currently updates with more than 20 changes are broken into 20 change chunks. This is mostly for cheat commands, which sometimes bust the 128k limit on notification size.
	- This change only affects profile notifications. HTTP responses have not changed and the handling code is the same.

	Notifications changes tested extensively in Fortnite. Change smoke tested in Paragon and in Fortnite with notifications disabled to verify no changes.

	#jira ogs-554

	#ROBOMERGE-SOURCE: CL 3380519


Change 3380118 on 2017/04/04 by ian.fox

	#OnlineSubsystem - Add Online Services name to every Online Subsystem
	#jira FORT-34457
	[CODEREVIEW] Josh.Markiewicz, Bart.Hawthrone, Ryan.Gerleve
	I wasn't sure what we called our own online services, so I called them "Epic Services"; Mcp seemed wrong?  Let me know what you think.

	Bart, I'm not sure what Nintendo calls their Switch online services?  I put "Nintendo Online" for now, used like "Failed to login to your Nintendo Online account"

	#ROBOMERGE-SOURCE: CL 3380086


Change 3377890 on 2017/04/03 by Andrew.Grant

	%^$#@!

Change 3377554 on 2017/04/03 by andrew.grant

	Fix for non-unity compilation
	#tests compiled non-unity

	#ROBOMERGE-SOURCE: CL 3377495


	#ROBOMERGE-SAYS: Unresolved conflicts. andrew.grant, please merge this change by hand.
	//ROBOMERGE_OGS_Main/PluginTestGame/Plugins/Online/HTTPChunkInstaller/Source/Public/HTTPOnlineTitleFile.h
	#CodeReview: andrew.grant, david.nikdel, greg.latcovich, sam.zamani

Change 3374349 on 2017/03/31 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - added missing initializers on OSS IOS
	#jira none

	#ROBOMERGE-SOURCE: CL 3374348


Change 3374138 on 2017/03/31 by robomerge

	#ROBOMERGE-AUTHOR: james.hopkin
	#oss Fixed hidden member warning

	#ROBOMERGE-SOURCE: CL 3374137


Change 3374066 on 2017/03/31 by robomerge

	#ROBOMERGE-AUTHOR: james.hopkin
	#oss Fixed Stomp crash in PIE after unexpected disconnection from server and then stopping play

	Also reduced fallback multiplier to 1.5x - was getting up to large delays too quickly

	#ROBOMERGE-SOURCE: CL 3374065


Change 3373675 on 2017/03/30 by robomerge

	#ROBOMERGE-AUTHOR: andrew.grant
	Merging //Orion/Main to Dev-General (//Orion/Dev-General)
	#tests #rb na

	#ROBOMERGE-SOURCE: CL 3373674


Change 3373248 on 2017/03/30 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - missing initializer for heartbeat value caused possible race condition on heartbeat failure retries
	- added some logging

	#tests dedicated server launching with charles blocking access

	#ROBOMERGE-SOURCE: CL 3373246


Change 3372907 on 2017/03/30 by robomerge

	#ROBOMERGE-AUTHOR: rob.cannaday
	Remove ensure in chatroom left completion
	It's possible for the Chatroom object to be re-used while we are waiting for the completion delegate, for example when using Clumsy to delay XMPP traffic
	#jira FORT-40691

	#ROBOMERGE-SOURCE: CL 3372905


Change 3371739 on 2017/03/30 by andrew.grant

	Merging //UE4/Main @ 3365166
	#tests QA pass, preflighted

	#ROBOMERGE-SOURCE: CL 3371635


	#ROBOMERGE-SAYS: Unresolved conflicts. andrew.grant, please merge this change by hand.
	//ROBOMERGE_OGS_Main/PluginTestGame/Plugins/Online/HTTPChunkInstaller/Source/Private/HTTPChunkInstaller.cpp
	//ROBOMERGE_OGS_Main/PluginTestGame/Plugins/OnlineGameplayFramework/Source/Account/Private/OnlineAccountCommon.cpp
	#CodeReview: andrew.grant, david.nikdel, greg.latcovich, sam.zamani

Change 3371704 on 2017/03/30 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - forget to add include directories for iOS Google
	#jira none

	#ROBOMERGE-SOURCE: CL 3371612


Change 3371137 on 2017/03/30 by Josh.Markiewicz

	#UE4  - Back out changelist 3371123
	- made things worse, not sure what the issue is atm

Change 3371125 on 2017/03/29 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - Android google subsystem clean up
	#jira none

	#ROBOMERGE-SOURCE: CL 3371124


Change 3371123 on 2017/03/29 by Josh.Markiewicz

	#UE4 - speculative fix related to IWYU header errors on build machine

Change 3371116 on 2017/03/29 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - missing Google source code for iOS stubs
	- fixed init order in constructor
	#jira none

	#ROBOMERGE-SOURCE: CL 3371115


Change 3370994 on 2017/03/29 by Ian.Fox

	#HTTPChunkInstaller - Mark HttpChunkInstaller PCH for both engine and game inclusion
	- Fixes the build in non-engine builds

Change 3370985 on 2017/03/29 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Correct comment

	#ROBOMERGE-SOURCE: CL 3370984


Change 3370863 on 2017/03/29 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Fix crash if you use an invalid localuser xuid for the show profile screen
	[CODEREVIEW] Saad.Nadder

	Saad, I'm going to fix the code calling this with an invalid ID as well, but just an FYI this is why this didn't work

	#ROBOMERGE-SOURCE: CL 3370862


Change 3370861 on 2017/03/29 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#Fortnite, #Xbox - Dedicated server now creates an additional game session for xbox clients
	- This only happens if xbox clients actually connect to the server
	- Only xbox clients are asked to join this session
	- Xbox clients should leave this session anytime they leave the game session
	- MCP manages creating the actual session for us
	#jira FORT-36913

	#ROBOMERGE-SOURCE: CL 3370857


Change 3370860 on 2017/03/29 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Allow joining a session without making it your presense session
	- bUsesPresence now controls whether or not a session will be advertised to friends as your active session
	[CODEREVIEW] Ryan.Gerleve

	#ROBOMERGE-SOURCE: CL 3370853


Change 3370859 on 2017/03/29 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Add debug logging for xbox friend session presence

	#ROBOMERGE-SOURCE: CL 3370836


Change 3370668 on 2017/03/29 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - TPS for Google Sign In Android
	#jira none

	#ROBOMERGE-SOURCE: CL 3370666


Change 3370620 on 2017/03/29 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - fixed crash in GooglePlay during client API connect because when the default online subsystem isn't GooglePlay
	- added a little more logging
	#jira none
	[CODEREVIEW] david.nikdel, chris.babcock, ryan.gerleve

	#ROBOMERGE-SOURCE: CL 3370618


Change 3370558 on 2017/03/29 by robomerge

	#ROBOMERGE-AUTHOR: bart.hawthorne
	- Fix issue where the PS4 Read Friends List request might never return on failure
	- It is now possible to log back in from the login screen after a network disconnection and transition to the frontend properly

	#ROBOMERGE-SOURCE: CL 3370553


Change 3369621 on 2017/03/29 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#Gamecircle - Fix compile error
	#jira UE-43442

	#ROBOMERGE-SOURCE: CL 3369599 in //UE4/Main/Engine/Plugins/...


Change 3369091 on 2017/03/28 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Fix joining dedicated server sessions never finishing correctly

	#ROBOMERGE-SOURCE: CL 3369068


Change 3368884 on 2017/03/28 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - OnlineSubsystemGoogle for Android first pass
	#jira none

	#ROBOMERGE-SOURCE: CL 3368792


Change 3368883 on 2017/03/28 by robomerge

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - fixed typo in Facebook logout function
	- added FacebookLogin.java to proguard just in case
	#jira none

	#ROBOMERGE-SOURCE: CL 3368779


Change 3367175 on 2017/03/28 by robomerge

	#ROBOMERGE-AUTHOR: ian.fox
	#OnlineSubsystemLive - Remove completed todo comment
	- This feature is implemented above

	#ROBOMERGE-SOURCE: CL 3367174

[CL 3453171 by Sam Zamani in Main branch]
2017-05-22 21:33:57 -04:00
Steve Robb
e379b53202 Merging CL# 3449001 from //UE4/Dev-Core to Main (//UE4/Main).
.generated shortened to .gen.

#rb none
#lockdown ben.marsh

[CL 3449078 by Steve Robb in Main branch]
2017-05-19 15:08:33 -04:00
Simon Tourangeau
e97c622e09 Copying //UE4/Dev-Enterprise to //UE4/Dev-Main (Source: //UE4/Dev-Enterprise @ 3438070)
#lockdown Nick.Penwarden
#rb JeanMichel.Dignard

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3434228 on 2017/05/10 by Simon.Tourangeau

	Integrate UBT Task stream changes by JeanMichel.Dignard

	Unreal Build Tool
	- Added support for a new root folder /Enterprise with its own rules assembly, binaries and intermediate folders.
	- Supports enterprise specific modules, plugins, programs, samples and templates.
	- Enterprise plugins are automatically discovered by the PluginManager.

[CL 3438097 by Simon Tourangeau in Main branch]
2017-05-12 19:19:12 -04:00
Ben Marsh
aa969f9931 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3420477)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3386262 on 2017/04/10 by Ben.Marsh

	Add app-local deployment of DirectX components that are no longer included with newer versions of Windows by default (XAudio 2.7, XInput 1.3). Also add a one-click button to the packaging settings to include the default app-local dependencies, rather than having to specify the path.

Change 3386999 on 2017/04/10 by Ben.Marsh

	Plugins: Add support for explicit dependencies from one plugin onto another. Required plugins can be configured in an identical manner to project files, by adding a "Plugins" key to the .uplugin file. Dependencies are automatically built and loaded, and the plugin browser will warn if you try to disable a plugin that something else has a dependency on.

Change 3387073 on 2017/04/10 by Ben.Marsh

	Move FLightPropagationRuntimeSettings into the Renderer module, to remove engine dependency on a plugin.

Change 3387988 on 2017/04/11 by Steve.Robb

	Comments added to clarify the role of DestructItem and DestructItems.

Change 3388085 on 2017/04/11 by Ben.Marsh

	UBT: Fix bEnabled flag on plugin references being ignored. Now collect up all the plugin references in order of priority before creating plugin instances for them. Fixes CIS fail for UT.

Change 3390048 on 2017/04/12 by Richard.Hinckley

	#jira UE-43876
	Fixed description of Streaming settings (within Project Settings).

Change 3390697 on 2017/04/12 by Steve.Robb

	CLASS_PointersDefaultToAutoWeak and CLASS_PointersDefaultToWeak removed.

Change 3390711 on 2017/04/12 by Steve.Robb

	AGRESSIVE_ARRAY_FORCEINLINE removed.

Change 3392167 on 2017/04/13 by Robert.Manuszewski

	UObject can be added to GC cluster only if all of its Outers can also be added to it.

	Fixing asserts caused by components that are added to GC clusters even if their owner actors that can't be in GC clusters.

	#jira UE-42948

Change 3392309 on 2017/04/13 by Robert.Manuszewski

	When adding objects to clusters after these clusters have been created it's possible to come across objects that are already in the cluster we're adding the object to so instead of crashing, allow it.

Change 3392620 on 2017/04/13 by Ben.Marsh

	UGS: Only check for updates every 5 minutes.

Change 3392623 on 2017/04/13 by Ben.Marsh

	UGS: Only poll for new changes every 60 seconds.

Change 3392744 on 2017/04/13 by Ben.Marsh

	UGS: Query changelist descriptions individually to determine whether changes affect code or content, to hopefully reduce Perforce server load.

Change 3392874 on 2017/04/13 by Ben.Marsh

	UGS: Allow specifying regexes in the project config file which filters which changes to be displayed. Useful for changes submitted by build machines, updates to collections, etc...

Change 3392878 on 2017/04/13 by Ben.Marsh

	Update UGS to version 1.96

Change 3395635 on 2017/04/17 by Ben.Marsh

	UAT: Prefix log output from executing UAT commands through BuildGraph with the name of that command.

Change 3395655 on 2017/04/17 by Ben.Marsh

	UAT: Add a command for syncing a DDC over the network (SyncDDC). Allows specifying a maximum size to copy, number of days worth of modified files to copy, and time limit not to be exceeded.

Change 3396989 on 2017/04/17 by Wes.Hunt

	CrashReporter configurable tweaks.
	* Added QueueWaitingTimeAlertThreshold (used to be hardcoded to 1 min).
	  - When the queue waiting time gets beyond this many seconds, trigger a slack alert message. Default is 10 min.
	  - Zero means never alert.
	* Added DiskSpaceAvailableAlertInterval (used to be hardcoded to 1 day).
	  - Interval by which to report disk space availability.
	  - Default is never (Zero)
	* Updated config file to match production config.
	#codereview:jin.zhang

Change 3397656 on 2017/04/18 by Ben.Marsh

	UBT: Allow modules to opt-out of getting the default include paths from being added, by setting bAddDefaultIncludePaths = false from their build.cs file.

Change 3397677 on 2017/04/18 by Robert.Manuszewski

	PR #3167 : Adding more descriptive error text to DetatchLinker error check (by rooneym)


Change 3397722 on 2017/04/18 by Robert.Manuszewski

	PR #2252: Increase linker reporting for failed imports (Contributed by FineRedMist)


Change 3397739 on 2017/04/18 by Richard.Hinckley

	#jira UE-44100
	Fixed SanitizePackageName() to remove double-slash, triple-slash, etc. from package names. Also updated CreatePackage() to call SanitizePackageName() before creating.

Change 3398023 on 2017/04/18 by Ben.Marsh

	PR #3105: Cook/package with editor and debugger attached (Contributed by projectgheist)


Change 3398095 on 2017/04/18 by Ben.Marsh

	PR #3051: Generate map file from UAT (Contributed by projectgheist)


Change 3398212 on 2017/04/18 by Ben.Marsh

	PR #2915: UE-38232: Removed duplicate stats (Contributed by projectgheist)


Change 3399304 on 2017/04/19 by Ben.Marsh

	UGS: Prevent editor target files being removed when running custom tools.

Change 3399306 on 2017/04/19 by Robert.Manuszewski

	Moved InitPropertiesFromCustomList to UbLueprintGeneratedClass and made it thread safe

Change 3399729 on 2017/04/19 by Steve.Robb

	Simple optimization to TBitArray::RemoveAt() when all removed bits are at the end of the array.
	RemoveAtSwap() now simply decrements the count instead of calling RemoveAt().
	Checks for a positive count added to RemoveAt() and RemoveAtSwap().

Change 3399750 on 2017/04/19 by Jin.Zhang

	Order branch alphabetically #RB

Change 3400186 on 2017/04/19 by Steve.Robb

	Per-header generated code.

Change 3401458 on 2017/04/20 by Steve.Robb

	Static log categories moved out of headers to prevent duplicates when the header is included multiple times.

	#jira UE-37507

Change 3401657 on 2017/04/20 by Gil.Gribb

	UE4 - Simplified and reworked lock free lists and the task graph bringing all platforms under the same scheme.

Change 3401735 on 2017/04/20 by Gil.Gribb

	UE4 - Updated apple platform atomics with a new clang version which is intended to be shared among all clang platforms.

Change 3403362 on 2017/04/21 by Steve.Robb

	Algo::Sort() fixed to support C arrays.
	Size+count versions of Also::IsSorted() deprecated.
	Algo::IsSortedBy() added.
	Algo::FindBy() added to allow an element to be found by projection.
	Simplifications and generalizations.

Change 3404017 on 2017/04/21 by Ben.Marsh

	Fix issue where referenced plugin descriptors were missing from console builds, and prevent monolithic builds from offering to disable missing plugins.

Change 3405299 on 2017/04/24 by Steve.Robb

	Clarified the class of the incompatible function in the error message about incompatible BP event specifiers.

	#jira UE-35106

Change 3405302 on 2017/04/24 by Ben.Marsh

	UBT: Allow excluding documentation from generated project files, by setting <ProjectFileGenerator><bIncludeDocumentation>false</bIncludeDocumentation></ProjectFileGenerator> in the XML configuration file.

Change 3405629 on 2017/04/24 by Ben.Marsh

	Rename CPPEnvironment to CppCompileEnvironment, to reflect the class name.

Change 3406431 on 2017/04/24 by Ben.Marsh

	UAT: Fix incorrect handling of P4SubmitOptions when multiple values are present.

Change 3406670 on 2017/04/24 by Ben.Marsh

	UBT: Enable warnings for classes with virtual functions and no virtual destructor (C4265 on Windows, -fdelete-non-virtual-dtor on Clang).

Change 3407080 on 2017/04/25 by Gil.Gribb

	UE4 - Critical fix: Propoerly disambiguate imports with the same name and the same outer name. This fixes an assert: LocalExportIndex.IsNull.

Change 3407486 on 2017/04/25 by Gil.Gribb

	UE4 - Made changes so that servers, programs and non-engine executables do not create background or high priority threads.

Change 3407495 on 2017/04/25 by Gil.Gribb

	UE4 - Tweaked out XBox and Windows low level file IO.

Change 3407497 on 2017/04/25 by Gil.Gribb

	UE4 - Fixed bug in the pak precacher that would result in blocks being discarded too soon, which, in turn, resulted in redudnant reads.

Change 3407705 on 2017/04/25 by Ben.Marsh

	Removing most of the junk in DotNETUtilities.

Change 3409701 on 2017/04/26 by Ben.Marsh

	Disable another static analyzer warning for third party libraries.

Change 3410074 on 2017/04/26 by Daniel.Lamb

	Network platform file runs heart beats and responds to modified file changes.
	Cook on the fly server in the editor (COTS) now detects changes to content and notifies client.
	Fixed issue with network platform file not using correct sandbox.

	#test cook on the side shootergame

Change 3411131 on 2017/04/27 by Steve.Robb

	TIsTriviallyDestructible now supports forward-declared enums.

Change 3411186 on 2017/04/27 by Steve.Robb

	Fix for #includes in generated code for Within classes which are in a different module from the generated class.

Change 3411917 on 2017/04/27 by Steve.Robb

	Fixes to pushing/popping the CPP macro.

Change 3411966 on 2017/04/27 by Steve.Robb

	Include spam reduced in generated code.

Change 3412155 on 2017/04/27 by Ben.Marsh

	Fix for PVS Studio warning: VFOVInRadians used instead of HFOVInRadians.

Change 3412223 on 2017/04/27 by Ben.Marsh

	Fix for PVS-Studio warning: Calling SetHelperA.Num() twice.

Change 3412273 on 2017/04/27 by Ben.Marsh

	Fix for PVS-Studio warning: Duplicated variable name.

Change 3412511 on 2017/04/27 by Ben.Marsh

	PR #3462: Fixed PVS-Studio issues (Part 1) (Contributed by PaulEremeeff)


Change 3412582 on 2017/04/27 by Ben.Marsh

	Fix for PVS-Studio warning: Incorrect variable name in copy/pasted code

Change 3413136 on 2017/04/28 by Robert.Manuszewski

	Helper functions for dissolving specific GC clusters

Change 3413310 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Incorrect variable name in copy/pasted code.

Change 3413341 on 2017/04/28 by Gil.Gribb

	UE4 - Add prestream capability to allow us to preload always loaded sublevels. Only turned on for Shootergame.

Change 3413351 on 2017/04/28 by Ben.Marsh

	Include code analysis macros directly from Platform.h, so that macros are available to everything.

Change 3413352 on 2017/04/28 by Ben.Marsh

	Fixing a few more PVS studio warnings.

Change 3413437 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Comparison is always true.

Change 3413759 on 2017/04/28 by Ben.Marsh

	Suppressing warnings for PVS-Studio.

Change 3413784 on 2017/04/28 by Ben.Marsh

	Fix PVS-Studio warning.

Change 3413898 on 2017/04/28 by Ben.Marsh

	Fix PVS-Studio warning: Same conditional is checked twice.

Change 3413915 on 2017/04/28 by Ben.Marsh

	Fix PVS-Studio warning: LHS of expression is identical to RHS.

Change 3413989 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: If CurrentGraph->SubGraphs.Num() == 1, it will always enter the first conditional block.

Change 3414053 on 2017/04/28 by Ben.Marsh

	More PVS-Studio fixes.

Change 3414062 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Pointer to object goes out of scope without being freed.

Change 3414070 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Fix incorrect condition.

Change 3414071 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Array index is always zero.

Change 3414116 on 2017/04/28 by Ben.Marsh

	BuildGraph: Allow marking compile tasks as unsuitable for use with the parallel executor, via an AllowParallelExecutor="false" attribute.

Change 3414160 on 2017/04/28 by Ben.Marsh

	Add support for running PVS-Studio through UnrealBuildTool. To use, pass -StaticAnalyzer=PVSStudio to the build command line (similarly, the Visual C++ analyzer can now be invoked using -StaticAnalyzer=VisualCpp). A log file will be written to the Engine/Saved/PVS-Studio or <Project>/Saved/PVS-Studio directory containing diagnostics, which can be opened using the "unparsed output" filter in the PVS-Studio standalone application. High priority warnings are printed to stdout.

Change 3414237 on 2017/04/28 by Ben.Marsh

	EC: Allow disabling and enabling the log preprocessor via special markers in the log.

	To disable: <-- Suspend Log Parsing -->
	To enable: <-- Resume Log Parsing -->

Change 3414343 on 2017/04/28 by Ben.Marsh

	UBT: Exclude ThirdParty folders from PVS output.


Change 3414392 on 2017/04/28 by Ben.Marsh

	Fix regular strings being casted to BSTRs; BSTRs have a hidden length prefix in the two bytes before the first character, so passing a regular TCHAR* is reading random memory.

Change 3414459 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Object goes out of scope without being freed.

Change 3414495 on 2017/04/28 by Ben.Marsh

	Suppress some more PVS-Studio warnings.

Change 3414514 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Testing WorldType being equal to EditorPreview and not equal to Inactive is redundant; changing to match description in comment instead.

Change 3414526 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Variable assigned to itself has no effect.

Change 3415183 on 2017/04/29 by Ben.Marsh

	Fix conflict in macro definitions for ENABLE_HTTP_FOR_NFS - rename the macro defined by NetworkFile to ENABLE_HTTP_FOR_NF. Hopefully fix CIS.

Change 3415765 on 2017/05/01 by Ben.Marsh

	Suppressing PVS-Studio warning to get things building cleanly. Not sure if FContentHelper is being leaked or not.

Change 3415853 on 2017/05/01 by Ben.Marsh

	EC: Fix jobs never completing if a "Sync & Build" step fails. Dependent jobs should evaluate their run conditions as soon as the parent step finishes, rather than waiting for child job steps to be created.

Change 3416138 on 2017/05/01 by Ben.Marsh

	Fix Fortnite cook failures. Not sure what the exact problem is here, but my hunch is that discarded "const" causes blueprint compile failures due to not being able to connect output pins between nodes for overloaded functions, or something like that.

Change 3416309 on 2017/05/01 by Ben.Marsh

	Build: Fix node names for static analysis.

Change 3416360 on 2017/05/01 by Ben.Marsh

	UBT: Remove unused arguments to PrepForUATPackageOrDeploy for Windows.

Change 3416398 on 2017/05/01 by Daniel.Lamb

	Cook on the fly NetworkFileServerConnection Remove FileModifiedCallback delegate when the connection is closed.

	#test Cook on the side shootergame.

Change 3416826 on 2017/05/01 by Daniel.Lamb

	Added callback to game when files are requested reload from networkfileserver.
	Game will need to unload / reload effected objects.
	Working on simple reload capability in shootergame.

	#test Cook on the side shootergame with reloading

Change 3417983 on 2017/05/02 by Ben.Marsh

	EC: Remove warning for lines not matching p4 tag syntax when running preflights; multi-line descriptions in shelved changelists break this pattern.

Change 3418747 on 2017/05/02 by Steve.Robb

	Fix for const pointer properties.
	Fix for UHT debugging manifest.
	Test added for pointer properties.

Change 3420477 on 2017/05/03 by Gil.Gribb

	UE4 - Removed check from windows async IO layer.

[CL 3421020 by Ben Marsh in Main branch]
2017-05-03 14:18:32 -04:00
Ben Marsh
9bf24bb276 Merging //UE4/Release-4.16@3405315 to Release-Staging-4.16 (//UE4/Release-Staging-4.16)
#rb none

[CL 3409211 by Ben Marsh in Staging-4.16 branch]
2017-04-26 08:28:56 -04:00
Luke Thatcher
22b2ad89ea Copying //UE4/Dev-Console to //UE4/Dev-Main (Source: //UE4/Dev-Console @ 3378220)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3301794 on 2017/02/14 by Josh.Adams

	Fixed a crash with clothing on platforms that don't support NV_CLOTH

Change 3302696 on 2017/02/14 by Chad.Garyet

	adding dev-console json

Change 3306418 on 2017/02/16 by Ben.Woodhouse

	Fix prepass/basepass zfighting, caused by bad vertex welding in depth-only indexbuffer. Requires bumping the staticmesh DDC key
	Duplicated from Fortnite/Main CL 3302965
	#jira UE-34332

Change 3308922 on 2017/02/17 by Josh.Adams

	- Disabled the game analytics anon usage data sent to Epic on the console platforms

Change 3311506 on 2017/02/20 by Keith.Judge

	Replicate fix for FD3D12UniqueDescriptorTable leak in async compute contexts from another branch.

Change 3313445 on 2017/02/20 by Josh.Adams

	- Various Vulkan fixes:
	  - Compiles in Linux
	  - Many cubemap bugs squashed
	  - Changed the scratch reflection cubemap clear to SetRenderTargestsAndClear, instead of SetRenderTarget() / Clear()
	  - Added compute fences

Change 3314916 on 2017/02/21 by Josh.Adams

	- Fixed an issue with 4 and 8 vertex instanced particles using the wrong VertexFactory objects (D3D didn't even need separate VFs due to the VertexDecl updating the stride at draw call time)

Change 3315398 on 2017/02/21 by Ben.Woodhouse

	Fix GPUTestbed packaging

Change 3316340 on 2017/02/22 by Ben.Woodhouse

	Duplicate hotfix from Release-4.15:
	CL 3316322
	Fix for GPU Cubemap copy crash - Guard for invalid indices before marking cubemap indices as removed
	#jira UE-42165

Change 3317345 on 2017/02/22 by Ben.Woodhouse

	Integrate from //UE4/Main/...@3316239

Change 3319186 on 2017/02/23 by Josh.Adams

	Added /VIRTUALIZEDIRECTX option to XgConsole for XGE shader compiling to work  on remote machines without DX installed

Change 3323514 on 2017/02/27 by Chad.Garyet

	adding populate ddc for dev-console, removing RDU agent type

Change 3335889 on 2017/03/07 by Luke.Thatcher

	[CONSOLE] [STREAMS] [^] Merge //UE4/Main (CL 3335229) to //UE4/Dev-Console

	#tests Build Win64 Editor, run QAGame editor, Launch on PS4.

Change 3336550 on 2017/03/07 by Ben.Woodhouse

	Duplicate CL 3336456
	#jira UE-42468
	Fix a bug in the rendertargetpool handling of fastVRAM targets, reported on UDN

Change 3340385 on 2017/03/09 by Ben.Woodhouse

	Optimized fastVRAM layout and configurability. CVars can be configured based title rendering requirements and resolution
	With these changes, we try to store the GBuffer in Fast VRAM if possible. Transient/non perf critical surfaces are now disabled by default
	In content w/ dynamic lighting @ 900p we see a 1.8ms gain. In RenderTestMap QAGame @ 1080p we see 0.4ms gains (further improvements may be possible with additional tweaking).

Change 3355982 on 2017/03/21 by Ben.Woodhouse

	Duplicate from CL 3354688:
	Fix async SSAO not actually running asynchronously. This was because bHZBBeforeBasePass  was set to false even though we had a full prepass (EDepthDrawingMode::DDM_AllOpaque), so we didn't process it until after the basepass.
	This saved 0.6ms in GPUTestbed

Change 3356166 on 2017/03/21 by Ben.Woodhouse

	Duplicate from 3347033
	Subsurface postprocess optimization, courtesy of Mike O'Connor at Iron Galaxy Studios.

	Add a branch to reduce bandwidth. Halved the cost of the setup pass according to PIX (0.3ms to 0.15ms)

Change 3360243 on 2017/03/23 by Luke.Thatcher

	[CONSOLE] [STREAMS] [^] Merge //UE4/Main (CL 3358685) to //UE4/Dev-Console

	#tests Build Win64 Editor, run FortGPUTestbed editor, Launch on PS4.

Change 3365746 on 2017/03/27 by Joe.Barnes

	- Handle NULL source data.
	- Log failed surround conversion.

Change 3368022 on 2017/03/28 by Ben.Woodhouse

	Cherry pick reflection capture hotfix from release-4.15 CL 3365830:
	Fixed reflection capture crash when repeatedly adding/removing captures
	Previously we used an array of indices (CubemapIndicesRemovedSinceLastRealloc) to keep track of indices which had been removed, however this caused issues when those indices were reused by subsequent allocations before the array was reallocated
	The new method uses a simple bitfield to track usage (one bit per cubemap slot index).
	Also fixed order(N^2) index search in the index allocator - now just a fast bit scan

	#jira UE-42165
	#jira UE-42911

Change 3371568 on 2017/03/30 by Luke.Thatcher

	[CONSOLE] [STREAMS] [^] Merging //UE4/Dev-Main (CL 3371054) to Dev-Console (//UE4/Dev-Console)

Change 3372780 on 2017/03/30 by Joe.Barnes

	Add support for multi-channel ADPCM encoding. Format based on game side ADPCM decompressor.

Change 3374847 on 2017/03/31 by Ben.Woodhouse

	Fix shipping warning
	#jira UE-43522

Change 3376442 on 2017/04/03 by Ben.Woodhouse

	Fix FortGPUTestbed animnotify cook errors (delete the offending animnotifies)

[CL 3378288 by Luke Thatcher in Main branch]
2017-04-04 09:10:29 -04:00
Ben Marsh
a61cbe6d12 UBT: Add a slightly better error message when a module that is invalid in the current configuration is referenced.
#rb none
#lockdown Nick.Penwarden

[CL 3366076 by Ben Marsh in Main branch]
2017-03-27 14:37:04 -04:00
Thomas Sarkanen
1547db70c9 Copying //UE4/Dev-AnimPhys to //UE4/Dev-Main (Source: //UE4/Dev-AnimPhys @ 3362413)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3281394 on 2017/02/01 by Chad.Garyet

	one more try on the name here, with the extension this time

Change 3286009 on 2017/02/03 by Jon.Nabozny

	Fix SkelMeshMerge duplicating Skeleton sockets.

	#jira UE-39690

Change 3288374 on 2017/02/06 by Jon.Nabozny

	Fix MaterialIndex checks in USkinnedMeshComponent::GetMaterial

Change 3288640 on 2017/02/06 by Jon.Nabozny

	#rn Fix UPhysicsConstraintComponent details to allow modification of MaxForce, Stiffness, and Damping for Linear and Angular constraints.

	#jira UE-40261

Change 3288978 on 2017/02/06 by Jon.Nabozny

	Add code to debug for duplicate sockets in UQAMeshMergeComponent::MergeMeshes.

Change 3290332 on 2017/02/07 by Marc.Audy

	Add AnimPhys object version

Change 3290753 on 2017/02/07 by Jon.Nabozny

	Update CoM documentation for CoM offset.

	#jira UE-40136

Change 3290783 on 2017/02/07 by Jon.Nabozny

	Update mass dependent wheel properties in UWheeledVehicleMovementComponent when mass is updated.

	#jira UE-39820

Change 3292286 on 2017/02/08 by Jon.Nabozny

	Fix OSSNull query filtering.

	#codereview: John.Pollard, Josh.Markiewicz, JohnHenry.Carawon
	#jira: UE-37512

Change 3294138 on 2017/02/09 by Thomas.Sarkanen

	Add more descriptive name for sub-struct members in property tracks

Change 3294139 on 2017/02/09 by Thomas.Sarkanen

	Moving to individual structs for limbs

Change 3294140 on 2017/02/09 by Thomas.Sarkanen

	Updated base human asset to reflect limb changes

	Updated map to just contain the mannequin for now
	Updated Sequence to contain some default IK keys

Change 3294178 on 2017/02/09 by Thomas.Sarkanen

	Fix shadow variable warning

Change 3294554 on 2017/02/09 by Thomas.Sarkanen

	Fixed persistent limb drift issues with non-participant bones

	Still have rotational drift with IK chain nodes (still to fix).
	Also fixes the addition of initial keys on binding when animating.
	Also fixes not being able to pick the widget sometimes when picking nodes in the tree.

Change 3294826 on 2017/02/09 by Chad.Garyet

	fixing up busted defaultvalues on physx and precompiled binaries

Change 3294827 on 2017/02/09 by Thomas.Sarkanen

	CIS fixes for non-editor and monolithic builds

Change 3296363 on 2017/02/10 by Thomas.Sarkanen

	Fix bone drifting

	Re-using local transforms then resetting each update pass was accumulating error (via GetRelativeTransform), causing limbs to drift. To address this, simply set the global transform in the case where we know the local transform wont change.
	Also optimized the hierarchy API a little & prevented excess work when nothing changes.

Change 3296393 on 2017/02/10 by James.Golding

	Add support for clicking on PoseDriver targets in viewport

Change 3296465 on 2017/02/10 by Thomas.Sarkanen

	Removed component visualizer (no longer used)

Change 3296467 on 2017/02/10 by Thomas.Sarkanen

	Fixed extra keys being made when switching IK/FK mode. Now we only key on user action.

	Added ability to hide nodes (advanced setting) and manipualtors (on playback)

Change 3296554 on 2017/02/10 by Thomas.Sarkanen

	Fixed up some workflow issues

	Widget visibility and the ability to move actors around is now corrected by calling the base FEdMode class functions appropriately.
	Added a focus of the chosen actor so orbiting the actor is easier. There is a hitch when we do this (probably because Sequencer is re-initialized the next frame), so we miss the nice transition.

Change 3296621 on 2017/02/10 by Thomas.Sarkanen

	Added ability to specify manipulator type when adding

	Not exposed in the 'add' UI yet, just enough to allow me to batch-change the ones we have for now
	Also tweaked default extents for box manipulators.

Change 3296622 on 2017/02/10 by Thomas.Sarkanen

	Changed FK manipulators to boxes

Change 3296740 on 2017/02/10 by James.Golding

	Added bOnlyDriveSelectedBones option to PoseDriver

Change 3296957 on 2017/02/10 by James.Golding

	Fix AnimNode_PoseHandler using mesh bone index not compact bone index for setting up BoneBlendWeights array

Change 3297092 on 2017/02/10 by Jon.Nabozny

	#rn Fix InstancedStaticMesh not properly creating physics state when Stationary.

	#JIRA UE-39876

Change 3297160 on 2017/02/10 by Ori.Cohen

	Temp fix for physx immediate mode crashing when 0 rows are generated.

Change 3297203 on 2017/02/10 by Ori.Cohen

	Temp fix for immediate mode crash when free joints are batched together

	#JIRA UE-41026

Change 3297326 on 2017/02/10 by Jon.Nabozny

	PR #2965: Update comments in several classes within demo projects to match style present and provide more detail for new users (Contributed by Markyroson)

	Changed some of the comment blocks to multiple single line (inside definitions). This is for consistency with our codebase.

	#JIRA UE-38981

Change 3297618 on 2017/02/10 by Charles.Anderson

	Arcblade - GDC
	- Created a new mor polished Phat for this.  Probably not gonna use it.
	- Created a Ragdoll asset. Need to talk to Ori about getting it working better.

Change 3297799 on 2017/02/10 by mason.seay

	Test map for testing audio attenuation

Change 3297940 on 2017/02/10 by Jon.Nabozny

	#rn Fix ConstraintComponentVisualizer with AngularOffset.

	Needed to apply local transform before world.

	#JIRA UE-39597

Change 3297947 on 2017/02/10 by Chad.Garyet

	adding automated test build option

Change 3299203 on 2017/02/13 by Thomas.Sarkanen

	Fixed local coord system issues with rotation (etc).

	Delta transforms are supplied in the space we specify in GetCustomDrawingCoordSystem(), so we now perform our operations in that space, then convert back when applying to the animation.
	Fixed up to allow for animating actors with transformed skeletal mesh components.
	Also added some proximity scaling to manipulators.

Change 3299220 on 2017/02/13 by Thomas.Sarkanen

	Fixed CIS missing include

Change 3299343 on 2017/02/13 by Lina.Halper

	Spine twist/roll check in
	- control points are disabled

	#rb: Thomas.Sarkanen

Change 3299388 on 2017/02/13 by James.Cobbett

	Updating QA-Physics map

Change 3299518 on 2017/02/13 by Lina.Halper

	fix build issue

	#rb: none

Change 3299701 on 2017/02/13 by Ori.Cohen

	Add finer grain physx stat information.

Change 3299894 on 2017/02/13 by Ori.Cohen

	Added LOD support for immediate mode physics

Change 3299906 on 2017/02/13 by James.Cobbett

	Updating QA-Collision map with new test scenarios

Change 3299962 on 2017/02/13 by Ori.Cohen

	Fix shadow warning

Change 3300100 on 2017/02/13 by Lina.Halper

	- renamed Constraint Axes option to FFilterOptionPerAxis : was going to reuse it for something else but didn't have to but left name changed because it makes more sense
	- enable control point reading part
	- twist/roll controll is localspace reader - BaseHuman

	#rb: none
	#code review:Thomas.Sarkanen

Change 3300206 on 2017/02/13 by Ori.Cohen

	Rename Ragdoll node to RigidBody node

Change 3300899 on 2017/02/13 by Alan.Noon

	Migrating Paragon Origin and Origin Small maps content.

Change 3301279 on 2017/02/14 by Jurre.deBaare

	Mesh paint refactor

Change 3301288 on 2017/02/14 by Jurre.deBaare

	Incremental CIS fixes

Change 3301290 on 2017/02/14 by Jurre.deBaare

	Another CIS fix

Change 3301311 on 2017/02/14 by Thomas.Sarkanen

	Fixed non-editor builds

Change 3301313 on 2017/02/14 by Jurre.deBaare

	More CIS fixes

Change 3301315 on 2017/02/14 by Jurre.deBaare

	Include CIS fix

Change 3301333 on 2017/02/14 by Jurre.deBaare

	Non-Unity CIS fixes

Change 3301388 on 2017/02/14 by Benn.Gallagher

	CIS fix for cloth create panel

Change 3301445 on 2017/02/14 by Benn.Gallagher

	Last few changes over from the mesh paint branch
	hooked up LOD dropdown box
	Moved asset selection out of details panel

Change 3301527 on 2017/02/14 by mason.seay

	Deleting unneeded map

Change 3301531 on 2017/02/14 by mason.seay

	Renaming Map to fix naming scheme

Change 3301558 on 2017/02/14 by Ori.Cohen

	Fix physx stats not being counted properly as we were not using static data.

Change 3301604 on 2017/02/14 by Ori.Cohen

	Fix static analysis warning

Change 3301615 on 2017/02/14 by Jurre.deBaare

	All. The. CIS. Fixes

Change 3301630 on 2017/02/14 by mason.seay

	Updating Map for testing

Change 3301697 on 2017/02/14 by mason.seay

	Final change to map

Change 3301734 on 2017/02/14 by Jurre.deBaare

	- Crash CTRL-Z when having cloth painter and paint mode open
	- Fill action not being undo-able
	- Import vertex colors should default to to-instance
	- Paint mode buttons in level painter are now toggle buttons (clarifies UI for user)

Change 3301763 on 2017/02/14 by Jurre.deBaare

	- Fix for asset without engine version
	- Fix for crash due to missing skeletal mesh permutation in mesh paint view modes

Change 3302421 on 2017/02/14 by Lina.Halper

	Fixed issue where spline gets incorrect position when it has many control points.

	#rb: Thomas.Sarkanen

Change 3302667 on 2017/02/14 by Lina.Halper

	- added spine control points to work
	  - FK/IK switch isn't working great yet. Don't try
	  - disabled all twist/roll handling since control point itself can twist also and they were conflicting each other
	- added option to add fk nodes, change parnets
	  - fixed issue with drawing skeleton drawing, when parents weren't added yet.
	- Added neck/head/body control

	#code review: Thomas.Sarkanen
	#rb: none

Change 3303200 on 2017/02/14 by Alan.Noon

	Collision shapes for Immediate Mode Ragdolls

Change 3303201 on 2017/02/14 by Alan.Noon

	Adding Origin, Full Map

Change 3303477 on 2017/02/15 by James.Golding

	Add Get and SetComponentForAxis to FVector and FRotator

Change 3303478 on 2017/02/15 by James.Golding

	Add support for multiple source bones to PoseDriver

Change 3303480 on 2017/02/15 by James.Golding

	Added per-scene frame number, handles cases like motion blur caching.
	Refactored GPUSkinCache to have an explicit frame advance function, called after all viewports have rendered in game/editor, PostRenderAllViewportClients.
	(Original author Chris.Bunner)

Change 3303513 on 2017/02/15 by Jurre.deBaare

	CIS: Linux file name case fixes and incorrect pragma once

Change 3303576 on 2017/02/15 by Thomas.Sarkanen

	Sub-sequence sections can now override how they instance their template

	Added UMovieSceneSubSection::GenerateTemplateForSubSequence. This just performs the original call to SubSequenceStore.GetCompiledTemplate in the dcefault case.
	Allowed non-const access to FMovieSceneEvaluationTemplate::GetTracks so they can be potentially modified once instanced.
	Added access for FMovieSceneEvaluationTrack::ChildTemplates.

Change 3303578 on 2017/02/15 by Thomas.Sarkanen

	Rich curves can now be transformed post-copy correctly

	Using GetKeyIterator rather than aquiring the iterator directly makes sure we have valid key handles, which we dont if we have just copied the curve.

Change 3303579 on 2017/02/15 by Thomas.Sarkanen

	Added GetLinkNode to complement SetLinkNode in FAnimNode_Base

Change 3303580 on 2017/02/15 by Thomas.Sarkanen

	Made the logic around when sub-tracks can be primed for recording more specific

	Prevents rig control sub tracks form being able to be primed.

Change 3303581 on 2017/02/15 by Thomas.Sarkanen

	Allowing alpha on rig tracks to work

	Alpha curve is now pushed down to tracks on template compilation along with bone masks & additive flag.
	Sequencer anim instance updated to use new flags. Structure altered to accomodate layered blending for masked body parts (should probably push this to the regulat sequence instance too).
	Moved anim node to local space (now it is just derived form FAnimNode_Base).
	Also fixed opening/binding order issues - Now you should be able to open a sequence, bind to an actor and create a new rig control in a sequence in any order.

Change 3303582 on 2017/02/15 by Thomas.Sarkanen

	Fixed UE4Game CIS - Moved AddConstraint() to non-editor-only

	Also fixed crash in property chain iteration (for non-existent array properties)

Change 3303594 on 2017/02/15 by Jurre.deBaare

	Fix for crash on deleting painted actors

Change 3303636 on 2017/02/15 by Lina.Halper

	-remove temp code to add constraints. - they serialize, so once you add them you don't have to add these anymore.
	This will move to editor menu soon.

	#rb: none

Change 3303648 on 2017/02/15 by Martin.Wilson

	Fix reimport crashes if the animation uses additive transform tracks.

	#jira UE-41929
	#jira UE-41921

Change 3303652 on 2017/02/15 by Benn.Gallagher

	Added merged Ice mesh with new simulation mesh to match mesh from APEX version.

Change 3303660 on 2017/02/15 by Benn.Gallagher

	map update for clothing demo

Change 3303662 on 2017/02/15 by Benn.Gallagher

	State machine update for Ice anim

Change 3303676 on 2017/02/15 by mason.seay

	Adjusted sound actor location

Change 3303689 on 2017/02/15 by Benn.Gallagher

	Updated Ice mesh to have clothing present on the back part of the dress

Change 3303691 on 2017/02/15 by Jurre.deBaare

	CIS fixes for pose driver details

Change 3303704 on 2017/02/15 by Lina.Halper

	Add FK limb links
	- enabled temp code to add constraints. It's not serialized from BP editor, so this has to be added everytime. Will fix this in the futre check-ins

	#rb:none

Change 3303716 on 2017/02/15 by Thomas.Sarkanen

	Updated manipulators to always draw in front of the mesh

	Added material & enabled content for the plugin.

Change 3303730 on 2017/02/15 by thomas.sarkanen

	Resaving manipulator material with correct engine version

Change 3303754 on 2017/02/15 by Thomas.Sarkanen

	Fix manipulators popping to max size when manipulating

Change 3303835 on 2017/02/15 by Thomas.Sarkanen

	Fix hitch by not displaying spawned objects if we dont have a sequence focused.

Change 3303843 on 2017/02/15 by Lina.Halper

	Added normalize rotation on inputs/outputs

	#code review: Thomas.Sarkanen
	#rb: none

Change 3303916 on 2017/02/15 by Jurre.deBaare

	CIS: Linux incorrect pragma once

Change 3304084 on 2017/02/15 by James.Golding

	Update pose driver test after addition of multi-bone input

Change 3304188 on 2017/02/15 by James.Golding

	Add custom remap curve option per-target in PoseDriver

Change 3304189 on 2017/02/15 by James.Golding

	Fix CIS for ControlManipulator.cpp

Change 3304210 on 2017/02/15 by Alan.Noon

	Added hidden collision objects for stairs area. Added brighter lighting on plinth area. Hooked up minion placement randomization. Added 100 minions to minion level for ragdol

Change 3304327 on 2017/02/15 by Alan.Noon

	Created new Persistent levels for each Anim Tech demo, which loads in Origin_Small_P

Change 3304337 on 2017/02/15 by Alan.Noon

	renamed minion demo level for GDC

Change 3304508 on 2017/02/15 by Lina.Halper

	- You can see constraints in the tree view (full edit mode)
	- YOu can add or update constraints (using update constraints button)
	- You can delete constraints
	- Cleaned up constraints interface

	#rb: none
	#code review: Thomas.Sarkanen

Change 3304537 on 2017/02/15 by chris.evans

	!N Initial PSD test [chrise]

Change 3304551 on 2017/02/15 by James.Golding

	Fix missing 'break's from SetComponentForAxis in FVector and FRotator

Change 3304570 on 2017/02/15 by Chris.Evans

	!N Source assets for psd test
	#RB none

Change 3304964 on 2017/02/15 by Lina.Halper

	fix build issue

	#code review: James.Golding
	#rb: none

Change 3304998 on 2017/02/15 by Chris.Evans

	!B Checking in correct FBX
	#RB none

Change 3305314 on 2017/02/15 by chris.evans

	!N Adding materials driven

	!N Adding 'simulation' animation which simulates the driven result

Change 3305355 on 2017/02/15 by chris.evans

	!N Initial test shoulder pose

Change 3305357 on 2017/02/15 by chris.evans

	!N Initial Mambo shoulder ROM

Change 3305446 on 2017/02/15 by Lina.Halper

	fixed CIS error

	#rb: none
	#code review: Thomas.Sarkanen

Change 3305768 on 2017/02/16 by Jurre.deBaare

	CIS: Clang compile errors

Change 3305857 on 2017/02/16 by thomas.sarkanen

	Removed particle systems from top plinth as they interfere with selection and obscure demo somewhat.

Change 3305907 on 2017/02/16 by Thomas.Sarkanen

	Fix hitches on selection of multiple keys

	Prevented multiple seleciton callbacks being called for each key (we now just edit the selection then broadcast later).
	Dont force the details panel to refresh if nothing has changed.
	Make sure we make a list of unique object IDs when processing the selection delegate, as we get an object ID per track.

Change 3305910 on 2017/02/16 by Thomas.Sarkanen

	Allow multiple instances ot the same parameterized subsequence to exist and function correctly

	Subsequences in the store are now keyed off an optionally specified 'other' object. In the case of parameterized subsequences, this object is the section.
	Editor only right now - cooked builds are still to come

Change 3305911 on 2017/02/16 by Thomas.Sarkanen

	Fix NaNs from uninitialized poses

Change 3305922 on 2017/02/16 by Thomas.Sarkanen

	BuiltData for Origin_Small_P

Change 3305927 on 2017/02/16 by Thomas.Sarkanen

	Moved ControlRig->ControlRigDemo in preparation for keeping all assets in one folder

	Added some test assets

Change 3305928 on 2017/02/16 by Thomas.Sarkanen

	Dont select actors when we bind to them

	Selection can sometimes look bad and obscure the character.

Change 3306118 on 2017/02/16 by Thomas.Sarkanen

	CIS fix

Change 3306230 on 2017/02/16 by Jurre.deBaare

	CIS fix for linking errors on specific platforms

	#test compile PS4 OrionGame

Change 3306378 on 2017/02/16 by Martin.Wilson

	First pass Live Link system (Initially from //Tasks/UE4/Dev-Causeway)

	- Live Link Maya plugin build files (builds a .mll file that can be loaded into Maya)
	- Live Link Interface (editor module with interface files)
	- Live Link Message Bus Framework (editor module with files needed for building message bus based live link plugins)
	- Live Link (experiemental plugin that contains editor part of live link system)

Change 3306388 on 2017/02/16 by Lina.Halper

	- build issue fix
	- also tweaked display name to display only node name in editing mode

	#rb: none

Change 3306455 on 2017/02/16 by Jon.Nabozny

	#rn Perf improvements to FAnimNode_RigidBody.

	Cache bounds to prevent unnecessary overlap updates.
	Move overlaps off game thread.

Change 3306591 on 2017/02/16 by Martin.Wilson

	Updates to live link

	- Copyright changes (some were still 2016)
	- Rename BlankMayaPlugin to LiveLinkMayaPlugin

Change 3306907 on 2017/02/16 by Jon.Nabozny

	MinionDemo Content Perf Pass.

Change 3306914 on 2017/02/16 by Thomas.Sarkanen

	Back out changelist 3305857 and 3305922

	Reverts particle system changes to Origin_Small_P

Change 3306942 on 2017/02/16 by Martin.Wilson

	Live link demo content

	-Feng mao mesh that matches maya scene
	- LiveLinkGDC Map
	- Beginning of camera control sequencer

Change 3307154 on 2017/02/16 by Alan.Noon

	Merged in new content to fix badly collapsed BP Static meshes deleted ragdoll minions for new posing. Stopped animation on spawn pad materials

Change 3307382 on 2017/02/16 by Martin.Wilson

	Fix CIS (Add virtual destructor to ILiveLinkSource)

Change 3307497 on 2017/02/16 by chris.evans

	!N Moving mats

Change 3307541 on 2017/02/16 by Chris.Evans

	!B Rebuilding test assets with new skeleton

Change 3307873 on 2017/02/16 by Chris.Evans

	!N Mambo updates

Change 3307875 on 2017/02/16 by Chris.Evans

	!R Update to blueprint

Change 3308030 on 2017/02/16 by Alan.Noon

	Changed lighting of Origin_Small_P based on feedback. Placed new objects were previous were exhibiting bad lightmaps.

Change 3308246 on 2017/02/16 by Alan.Noon

	Consolidated new lighting content from sublevels into Origin_Small_P. Hooked up Physics asset to ArcBlade Skeletal mesh

Change 3308470 on 2017/02/16 by Lina.Halper

	- make sure all are hooked up properly to pelvis and spine_03
	  - no multiple pelvis anymore. Using one to tweak all of them. all limbs are connected through constraints
	- make sure end effector rotation is modifying IK's last chain rotation
	  - had to hack for saving offset for IK/FK switch mode but it works fine
	- fixed lots of constraint issue with deleting node, parent constraints. Added new spine after that fix.

	#rb:none
	#code review: Thomas.Sarkanen

Change 3308764 on 2017/02/17 by Jurre.deBaare

	Fix for non-unity Orion game build

Change 3308774 on 2017/02/17 by Thomas.Sarkanen

	Added multi-selection of manipulators

	Allowed BoxSelect, FrustumSelect and SelectNone to be overriden by the edit mode. Our edit mode doesnt have a sub-tool, it handles everything itself.
	Also fixed manipulators drawing in front of widget
	Changed manipualtors to be world-relative rather than screen relative scaled.
	Tweaked proximity to be stateful so we only highlight the closest node
	Also fixed slow FPS when dragging.

Change 3308802 on 2017/02/17 by James.Golding

	Fix 'apply custom curve' for pose driver targets being on by default

Change 3308824 on 2017/02/17 by Lina.Halper

	Fix build issue

	#code review:Thomas.Sarkanen
	#rb: none

Change 3308851 on 2017/02/17 by James.Golding

	Add new control manipulator picking UI

Change 3308863 on 2017/02/17 by Martin.Wilson

	Enable Live Link plugin in AnimTechDemo

Change 3308880 on 2017/02/17 by Thomas.Sarkanen

	Getting instanced subsequences working in cooked builds

Change 3309009 on 2017/02/17 by Benn.Gallagher

	Mask support and UI, not hooked up to painter yet
	Added clothing tools experimental flag and hooked up

Change 3309016 on 2017/02/17 by Martin.Wilson

	Clean up engine provided output devices and supply a Maya one, stops Maya hanging on shutdown

Change 3309108 on 2017/02/17 by Jurre.deBaare

	CIS fix: missing definition of FWeakObjectPtr (strangely not part of CoreMinimal)

Change 3309134 on 2017/02/17 by Jurre.deBaare

	Crash in texure painting mode
	#fix Required some extra checks for new setup (can only paint while having one mesh selected)

	Issue with vertex paint propagating to lower LOD levels
	#fix There was no setup to propagate colors from source static mesh data so added the path

	#misc Re-added flow painting and removed flow-strength property
	#misc Added detail customization for texture paint UV channel

Change 3309256 on 2017/02/17 by Benn.Gallagher

	CIS fix

Change 3309393 on 2017/02/17 by James.Golding

	Set color for kinematic controls

Change 3309410 on 2017/02/17 by Ori.Cohen

	PR #3221: Kinematic body interpolation in substepping causes invalid raycasting/sweeping/overlapping (Contributed by PhoenixBlack)

Change 3309469 on 2017/02/17 by Benn.Gallagher

	Added ContentExamples cloth assets

	Added camera transitions and controls

	Cleanup logic

	Move characters and materials onto upper plinth

	Hid actor mesh from game view.

Change 3309625 on 2017/02/17 by mason.seay

	Resaving assets to remove warnings

Change 3309802 on 2017/02/17 by Alan.Noon

	Modified Origin_Small_P lighting. Set up ArcBlade for presentation

Change 3309985 on 2017/02/17 by Thomas.Sarkanen

	Fixed crash adding multiple rigs to sequence

	If a hierarchy is empty, dont attempt to access a non-existent node

	#jira UE-42103

Change 3310209 on 2017/02/17 by Lina.Halper

	- Fix limbs detaching issues
	- added set translation to override translation
	  - moved joint targets away from the limbs
	- Spine FK is on by default
	- spnie IK/FK switch should work better. It can still pop depending on your control point can handle or not.

	#rb: none

Change 3310389 on 2017/02/17 by Chris.Evans

	!N Mambo multi-joint pose demo

Change 3310911 on 2017/02/18 by Lina.Halper

	Ice/Mambo mapping fix with BaseHuman

Change 3311138 on 2017/02/19 by James.Golding

	- Allow multi-select in control picker
	- Clicking on background clears selection
	- Add 'Select All' button
	- Darken controls that are disabled (is in different kinematic mode)
	- Use selection color from control instead of outline
	- Center and fit picker to details panel width
	- Remove entire Nodes section of edit mode panel (not just tree)
	- Fix rig properties not scrolling
	- Place picker in expandable area, collapsed when no rig selected

Change 3311147 on 2017/02/19 by Thomas.Sarkanen

	Fix spine keying

	Add the ablity for array elements to be keyed directly. The spine properties are FTransforms in an array and previously it ignored them because of assumptions about allowed structures.

	This should probably be refactored to a more generic 'traverse up my property chain looking for Interp properties' at some point in the future.

Change 3311150 on 2017/02/19 by Thomas.Sarkanen

	Synchronizing sequencer selection

	Now enter key works for keying selected tracks

	Added new way to select sequencer tracks externally via property paths.

Change 3311152 on 2017/02/19 by Thomas.Sarkanen

	Missed files

Change 3311153 on 2017/02/19 by Thomas.Sarkanen

	CIS fixes

Change 3311154 on 2017/02/19 by Thomas.Sarkanen

	File I missed (CIS fix)

Change 3311156 on 2017/02/19 by James.Golding

	Change 'ControlRig Edit Mode' icon

Change 3311176 on 2017/02/19 by Lina.Halper

	Fix build issue

	#rb:none
	#code review: Thomas.Sarkanen, Jurre.DeBarre, James.Golding

	p.s. not sure who's code, so just adding everybody I can think of

Change 3311261 on 2017/02/19 by Lina.Halper

	- Fixed an issue when you don't have parent in the rig
	  - get all component space, and convert to local

	#rb:none
	#code review: Thomas.Sarkanen

Change 3311282 on 2017/02/19 by Lina.Halper

	Fixed issue where pivot location is incorrect when mapping to other meshes

	#rb: none
	#code review:Thomas.Sarkanen

Change 3311491 on 2017/02/20 by Thomas.Sarkanen

	CIS fix

Change 3311497 on 2017/02/20 by Jurre.deBaare

	Game editor compile error
	#fix WITH_EDITORONLY_DATA instead of WITH_EDITOR ifdef around UPROPERTY

Change 3311507 on 2017/02/20 by Jurre.deBaare

	Cloth paint progress
	- Different approach / refactored out paint ray retrieval
	- Added key input callback to IMeshPainter and derived classes
	- Added toggle for showing invisible vertices
	- Added gradient paint tool
	- Details customization for brush/gradient tool settings
	- Some cleaning

Change 3311527 on 2017/02/20 by Jurre.deBaare

	CIS header guard warning

Change 3311530 on 2017/02/20 by Jurre.deBaare

	CIS dereferencing possible nullptr warning

Change 3311533 on 2017/02/20 by Jurre.deBaare

	CIS dereferencing warning (better fix)

Change 3311543 on 2017/02/20 by James.Golding

	Add buttons for switching IK/FK mode of limb/spine to picker
	Put picker and details panel in a scroll box
	Fix spine manipulators not being hidden when disabled

Change 3311649 on 2017/02/20 by James.Golding

	R key now toggles manipulator visibility

Change 3311707 on 2017/02/20 by Lina.Halper

	Added Clavicle FK controls

	#code review: Danny.Bouimad

Change 3311764 on 2017/02/20 by Martin.Wilson

	Update cameras for Live link demo map and turn on recompute tangents on Feng Mao

Change 3311858 on 2017/02/20 by Chris.Evans

	!R Updated with pose values

Change 3312043 on 2017/02/20 by Jon.Nabozny

	Change SkelMeshMerge logic to fix duplicates (again) and fix crash.

	#jira UE-39690, UE-42146

Change 3312046 on 2017/02/20 by Thomas.Sarkanen

	Fix crash drag/dropping skeletal mesh

	#jira UE-42139 - Crash when adding SK_Mannequin to a Level Sequence in QAGame

Change 3312052 on 2017/02/20 by James.Golding

	Change manipulator colors to red for right, blue for left, white for middle
	Change IK/FK switch buttons to yellow/purple
	Move picker buttons to take up less horizontal space
	Move IK/FK switch button positions out of C++

Change 3312137 on 2017/02/20 by Ben.Marsh

	Fix settings for using precompiled binaries in Dev-AnimPhys.

Change 3312517 on 2017/02/20 by Alan.Noon

	Created new persistent level for Chris E's demo. Placed a few minions for CharlesA to test improved ragdoll asset. Tuned lighting in Origin_Small_P and fixed light leaks.

Change 3312570 on 2017/02/20 by Charles.Anderson

	More work on Arcblade Ragdoll for GDC

Change 3312594 on 2017/02/20 by Alan.Noon

	MultipleJointPoseDriving_GDC_P_pose_test_level

Change 3312637 on 2017/02/20 by Alan.Noon

	Reconciling offline content

Change 3312902 on 2017/02/20 by Charles.Anderson

	Minions for GDC

Change 3313206 on 2017/02/20 by Ori.Cohen

	Added trimesh support for immediate mode.

Change 3313247 on 2017/02/20 by Chris.Evans

	!N updated with both demo assets in one map

Change 3313447 on 2017/02/20 by Ori.Cohen

	Fix immediate mode collision not working with convex transforms being baked in

Change 3313472 on 2017/02/20 by Ori.Cohen

	Fix crash caused by missing switch case break

Change 3313518 on 2017/02/20 by Lina.Halper

	IK knee issue/Twist issue

	#code review: Thomas.Sarkanen, James.Golding
	#rb: none

Change 3313547 on 2017/02/20 by Lina.Halper

	Fixed Body-Ctrl to work with every node.

Change 3313617 on 2017/02/20 by Lina.Halper

	- Fix for limbs delaying when moving BodyCtrl
	- Fix for additive issue for control rig anim node

	#rb: none
	#code review: Thomas.Sarkanen

Change 3313618 on 2017/02/20 by Lina.Halper

	remove unnecessary calc

	#rb:none

Change 3313625 on 2017/02/20 by Lina.Halper

	Fixed body ctrl move keys

	- all IK keys also have to be in local space (but they're local to body_ctrl)

Change 3313633 on 2017/02/20 by Alan.Noon

	Quick laying out of Minions for stress testing. Iterated on Environment collision.Built lighting

Change 3313655 on 2017/02/20 by Lina.Halper

	- Fixed so that you can tweak pelvis and move body also
	- Fixed mambo mapping

Change 3313897 on 2017/02/21 by James.Golding

	Make all FK manipulators smaller (3 instead of 4.5)

Change 3313898 on 2017/02/21 by James.Golding

	Integrate CL 3311876 to Dev-AnimPhys (original author Rolando.Caloca)
	DR - Expose skin cache cvar r.SkinCache.AccumulationBufferSizeInKB

Change 3313902 on 2017/02/21 by James.Golding

	Draw lines from IK target to mid-joint

Change 3313906 on 2017/02/21 by Thomas.Sarkanen

	Fix undo/redo/save t-pose and crashes

	Binding now only does what it needs to do an no more (i.e. force a reig evaluation and re-select the rig we are looking at).
	Object spawner now does not root its objects. Rather it hangs them off of a 'holder' object so that they can exist safely in the transaciton buffer.

Change 3313938 on 2017/02/21 by Benn.Gallagher

	Migrated clothing assets

Change 3313982 on 2017/02/21 by James.Golding

	Fix static analysis in ClothPainter.cpp

Change 3313985 on 2017/02/21 by Benn.Gallagher

	Fixed crash when attempting to create clothing with degenerate triangles. Now a log error and toast warn the user of conincident tri points.

	#jira UE-41935
	#rnx

Change 3314052 on 2017/02/21 by James.Golding

	Fix CIS in ControlRigEditModeSettings.cpp

Change 3314100 on 2017/02/21 by Lina.Halper

	IK fix for retargeting

	- using rig transform and remapping doesn't work. I'll have to use mesh space for IK at least. It still does blend in rig space, though with FK.

	#rb: none

Change 3314160 on 2017/02/21 by Thomas.Sarkanen

	Added optional node trajectories

	Added trajectory cache which uses similar mechanisms to the thumbnail cache to build trajectories for nodes.
	Builds trajectories and their meshes incrementally when relevant things change

Change 3314167 on 2017/02/21 by James.Golding

	Fix undo when pushing IK/FK toggle buttons

Change 3314168 on 2017/02/21 by Benn.Gallagher

	Disabled skin cache on tech demo project

Change 3314290 on 2017/02/21 by Lina.Halper

	- Cleaned up code a bit
	- Fixed thigh to rotate to target and fixed a bug that caused jittering

	#rb: none

Change 3314418 on 2017/02/21 by Thomas.Sarkanen

	Fix CIS issue

Change 3314428 on 2017/02/21 by Thomas.Sarkanen

	Fixup anim node to be of correct editor-time type

	Caused crash when placed in an anim BP

Change 3314574 on 2017/02/21 by Thomas.Sarkanen

	Fixed crash on shutdown

	#jira UE-42214

Change 3314705 on 2017/02/21 by Alan.Noon

	Iterating on map collision. Made minion weapon joint unbreakable

Change 3314722 on 2017/02/21 by Alan.Noon

	Moved minions back into Minion demo Persistent level.

Change 3314778 on 2017/02/21 by Lina.Halper

	added neck/ball_r/l control

	#code review: Daniel.Bouimad

Change 3314908 on 2017/02/21 by Ori.Cohen

	Temp fix for cloth bounds issue.

Change 3314920 on 2017/02/21 by Alan.Noon

	Placing minions. Iterating collision

Change 3314970 on 2017/02/21 by Lina.Halper

	added bone picker for toes, neck

Change 3315006 on 2017/02/21 by Benn.Gallagher

	Fixed clothing bounds issue with empty simulations.

Change 3315017 on 2017/02/21 by Lina.Halper

	fix crash on null proxy

	#rb: Benn.Gallagher

Change 3315054 on 2017/02/21 by Alan.Noon

	Placing minions

Change 3315671 on 2017/02/21 by Chris.Evans

	!B Fixed default material
	!N Added physics subgraph for Mambo
	!N Added third 'gameplay' complex example

Change 3315693 on 2017/02/21 by chris.evans

	!N Enabling tangent recompute on Mambo face and arm pits.

Change 3315838 on 2017/02/21 by Alan.Noon

	New Orbital Laser Pawn. New ragdoll sublevels for minion demo (400 minions)

Change 3316206 on 2017/02/22 by Thomas.Sarkanen

	Fix shadowed variables

Change 3316207 on 2017/02/22 by Thomas.Sarkanen

	Manipulators are now transparent

Change 3316258 on 2017/02/22 by Jurre.deBaare

	- Fix for changing levels while force painting to a specific LOD
	- Brush depth not same as in main

Change 3316259 on 2017/02/22 by Jurre.deBaare

	Fix for paint verts being rendered outside of painting area
	#misc want to change underlying behaviour for the brush representation but this'll patch it up for now

Change 3316260 on 2017/02/22 by Jurre.deBaare

	Changed default paint brush settings

Change 3316267 on 2017/02/22 by Jurre.deBaare

	Added channel paint flags to texture painting settings
	#misc might want to create base class for common paint settings

Change 3316268 on 2017/02/22 by Jurre.deBaare

	Fix for issue with viewport color mode not being reset when exiting mesh paint mode
	#jira UE-42221

Change 3316278 on 2017/02/22 by James.Golding

	Fix crash when pose asset contains a bone that is not in the mesh

Change 3316304 on 2017/02/22 by Thomas.Sarkanen

	Prevent sequencer from reselecting tracks when keys are selected

	Also fixed crash concurrently modifying an itterating TSet when removing selection nodes.
	Also made manipualtors not grow and shrink when transacting.
	Also tweaked sequencer selection to not allow movement of infinite areas - this allows us to start drag-selecting over these tracks rather than trying to move a seciton that cannot be moved.

	#jira UE-42164

Change 3316325 on 2017/02/22 by James.Golding

	Hook up Mambo physics as 'Pose Process AnimBP'

Change 3316384 on 2017/02/22 by James.Golding

	Slow down mambo anim playback rate

Change 3316385 on 2017/02/22 by Jurre.deBaare

	CIS: Deprecation warning fix

Change 3316424 on 2017/02/22 by Lina.Halper

	#fix : control rig mapping fix for Mambo

	#lockdown: James.Golding

Change 3316525 on 2017/02/22 by Lina.Halper

	- Fixed so that the mapping happening with retarget base pose, not ref pose
	- Added refresh mapping option for all nodes to refresh bone transform - in case you change retarget base pose
	- WIP of fingers, don't think we'll make it to demo, but it is still wip going in.

	#lockdown: James.Golding
	#rb: none
	#code review: Thomas.Sarkanen, James.Golding

Change 3316684 on 2017/02/22 by Lina.Halper

	fix shadow warning

	#rb: none
	#lockdown: james.golding

Change 3316748 on 2017/02/22 by Thomas.Sarkanen

	Fix t-pose bindings in various demo workflow situations

	Fix a crash when clearing actor
	Fix t-pose when opening a new sequence over an old one
	Fix t-pose on save

	Note: Added a couple of 'nuke it from orbit' re-binds to the actor because some code paths were not correctly setting up all of our data. Particularily we were always setting up the anim instance. We should revisit this after GDC.

	#jira UE-42136

Change 3316895 on 2017/02/22 by Jurre.deBaare

	Incorrect simulation verts getting painted
	#fix added an early rejection test
	#misc fixed sqrd vs non-sqrd check
	#misc level painting already did this in other specific code

Change 3316917 on 2017/02/22 by thomas.sarkanen

	Disabling threaded update on Mambo's post process anim BP

	We dont support running the main BP non-threaded and the post process threaded right now.

Change 3316933 on 2017/02/22 by Thomas.Sarkanen

	Fixed linux shadow variable warning

Change 3317104 on 2017/02/22 by Chris.Evans

	!N Initial animation with face

Change 3317483 on 2017/02/22 by Alan.Noon

	Added controls to resize the Orbital Laser Impulse in the minion demo

Change 3317592 on 2017/02/22 by Alan.Noon

	Tweaking Parameters on orbital Laser Pawn

Change 3317608 on 2017/02/22 by Lina.Halper

	Sorry - missed this files from previous check-in
	It should have gone with CL 3316525

	#rb:none
	#code review:Thomas.Sarkanen, James.Golding

	#lockdown: James.Golding

Change 3317762 on 2017/02/22 by Lina.Halper

	- allow dependency array to be added by IK effectors - but this isn't actual bug in this case
	- the bug was property was overriding the value, so we'll  have to make sure to update property from code change (bForceUpdatePropertyInTheNextTick)

	#rb:none
	#code review: Thomas.Sarkanen, James.Golding
	#lockdown: James.Golding

Change 3317807 on 2017/02/22 by Martin.Wilson

	Update for Live link code

	-Rename Maya Source to Message Bus Source
	-Fix typo in ReceiveClient function name

Change 3318031 on 2017/02/22 by Alan.Noon

	100 more minions in a sublevel. Tuned new pawn. Added sound, particle effects to impulse

Change 3318217 on 2017/02/22 by Jon.Nabozny

	Re-enable Dynamic Shadows for minions. Also enable Single Sample Shadow for perf reasons.

Change 3318365 on 2017/02/22 by Alan.Noon

	Created new shadow capsule asset for minion. Disabled DOF.

Change 3318421 on 2017/02/22 by Alan.Noon

	Adding more minion anims for variety

Change 3318435 on 2017/02/22 by Alan.Noon

	Tweak to minion anim BP: minions pick and idle and stay with it.

Change 3318860 on 2017/02/23 by James.Golding

	Force update nodes and manipulators when changing IK/FK mode
	Better fix for UE-42257

Change 3318869 on 2017/02/23 by James.Golding

	Key limb manipulators when switching IK/FK mode

Change 3318870 on 2017/02/23 by James.Golding

	Fix head button picker location

Change 3318875 on 2017/02/23 by James.Golding

	Add 'T' key shortcut for toggling trajectory drawing

Change 3318907 on 2017/02/23 by Benn.Gallagher

	Added rail for clothing sheet examples

Change 3318909 on 2017/02/23 by Thomas.Sarkanen

	Fix trajectories jittering as they generate

	The rig needs ticking twice because of what looks like some stateful assumptions that were recently made.
	Basically to get the rig to a state it needs ticking more than once.
	This also means that we need to tick sequencer twice to make sure the rig state gets pushed to the anim instance too.
	This may be to do with the latent IK/FK switching, and needs to be investigated.
	For now, I'm leaving it like this but its not ideal because it makes the trajectory generation twice as expensive.

Change 3318929 on 2017/02/23 by James.Golding

	Make PoseDriver Details not assume there is always a posedrivernode (fix potential crash during demo)

Change 3318930 on 2017/02/23 by James.Golding

	Resave pose_test_level with camera in better default position

Change 3318969 on 2017/02/23 by thomas.sarkanen

	Added demo map with mannequin and mambo

Change 3318975 on 2017/02/23 by thomas.sarkanen

	Improved embededed test sequence

	Kept blends away from initial binding because of t-pose issues

Change 3318979 on 2017/02/23 by thomas.sarkanen

	Added sequence showing retargeting to multiple skeletons

Change 3318983 on 2017/02/23 by thomas.sarkanen

	Improved retargeting sequence so that loop points dont pop animation

Change 3318991 on 2017/02/23 by Thomas.Sarkanen

	Prevent division by zero in trajectory generation

	Newly created sequences dont have a frame interval set up.

Change 3319013 on 2017/02/23 by Lina.Halper

	Fixed twist issue

	#lockdown: James.Golding
	#rb: none

Change 3319017 on 2017/02/23 by Lina.Halper

	Checked in wrong line - disabling optimization

	#rb:none
	#lockdown:James.Golding

Change 3319034 on 2017/02/23 by Lina.Halper

	sorry about that - for some reason p4 reverted the merged changes, and removing function that was merged

	#rb: none
	#lockdown: James.Golding

Change 3319056 on 2017/02/23 by Lina.Halper

	Back out changelist 3319013
	#lockdown:James.Golding

Change 3319090 on 2017/02/23 by Thomas.Sarkanen

	Added bookmarks to level, fixed up animation sequeces to be used in demo

	Cleaned up unused assets from demo folder

Change 3319209 on 2017/02/23 by Chris.Evans

	!R Lighting rebuilt
	!N cameras added, camera switching functionality

Change 3319219 on 2017/02/23 by Chris.Evans

	!R Disabling physics on the snake head on left shoulder

Change 3319268 on 2017/02/23 by Chris.Evans

	!R Says it's dirty, could have sworn checked in latest, tested and works fine, sync'd to last rev can't see what changed.

Change 3319290 on 2017/02/23 by James.Golding

	Default bShowManipulatorsDuringPlayback to on

Change 3319291 on 2017/02/23 by James.Golding

	Add GDC2017 shared collection

Change 3319867 on 2017/02/23 by Alan.Noon

	Moved Audio to a level and removed from sublevel list. Deleted particles.

Change 3320056 on 2017/02/23 by Alan.Noon

	Built lighting in Clothing_GDC_P

Change 3320067 on 2017/02/23 by Ori.Cohen

	Fix rigid body tooltip having the same loctext key as the node name causing bad node name (matters for live demo)

Change 3320085 on 2017/02/23 by Alan.Noon

	Changed Origin_Small_P in ControlRigDemoMap to "Always Loaded"

Change 3320098 on 2017/02/23 by Martin.Wilson

	Final updates for Live Link GDC Demo

	-Add maya scene for demo
	-Add binary for maya plugin + installation instructions
	-Update actor location from based on latest maya scene and fix cameras in sequencer
	-Updates on live link system for demo that I have been running with locally. Should be safe.

Change 3320579 on 2017/02/23 by Alan.Noon

	Bound Spacebar to GoRagdoll in ArcBlade map. Built lighting. Killed printing to screen/log in MinionBP.

Change 3321144 on 2017/02/24 by Chris.Evans

	!B Lighting was bad in PIE,  forced -1.5 exposure bias on all cameras

Change 3321317 on 2017/02/24 by James.Golding

	PIE on pose_test_level jumps to first placed camera

Change 3321956 on 2017/02/24 by Alan.Noon

	Adding missing minion anims. And Stuff.

Change 3324190 on 2017/02/27 by Lina.Halper

	Removed ensure from EvaluateAnimation

	- this is invalid because of worker thread but I'll have more conversation over this change.

	#rb: none
	#code review: Laurent.Delayen, Martin.Wilson
	#jira: UE-41731

Change 3324309 on 2017/02/27 by Lina.Halper

	fixed issue with skeleton bone not displaying for curve picker

	#jira: UE-41909
	#rb: Marc.Audy

Change 3324342 on 2017/02/27 by mason.seay

	First round of assets for testing root motion with framerate

Change 3324562 on 2017/02/27 by Lina.Halper

	Fix build error

	#rb: none

Change 3325010 on 2017/02/28 by mason.seay

	Finished map

Change 3325124 on 2017/02/28 by mason.seay

	Updated test to use trigger instead of delay

Change 3325205 on 2017/02/28 by mason.seay

	Deleting old map

Change 3325207 on 2017/02/28 by mason.seay

	Deleting old map

Change 3325752 on 2017/02/28 by Lina.Halper

	Back out changelist 3319056

	- adding upper twist back again

	#rb: none

Change 3325759 on 2017/02/28 by James.Cobbett

	Moving Weld automated tests to EngineTest project

Change 3326039 on 2017/02/28 by Lina.Halper

	Fix spine issues

	This is almost like content change as this contains lots of rigging changes from code. So I'm just checking with no review.

	#jira: UE-42260, UE-42268
	#rb: none

Change 3326246 on 2017/02/28 by mason.seay

	Test map and assets for overlap functional tests

Change 3327926 on 2017/03/01 by Lina.Halper

	- disabled pelvis animation on WaveAnimationGDC
	- added pelvis controls so that you can animate without worring about gmibal lock.

	#code review: danny.bouimad

Change 3327971 on 2017/03/01 by Lina.Halper

	Moved BaseHuman to ControlRig/Content folder

	- checking in redirector for the people who have local contents that want to keep

	#code review: Thomas.Sarkanen

Change 3329196 on 2017/03/02 by James.Cobbett

	Deleting from QAGame. These maps and assets were migrated over to EngineTest in CL 3325759 and CL 3325802.

Change 3329263 on 2017/03/02 by mason.seay

	Temp submission as I reorganize other content

Change 3329321 on 2017/03/02 by mason.seay

	Reorganizing content

Change 3329493 on 2017/03/02 by James.Cobbett

	Moving/renaming automated tests

Change 3332044 on 2017/03/03 by mason.seay

	Procedural Mesh Functional Tests

Change 3332049 on 2017/03/03 by Mason.Seay

	Screenshot comparisons for Procedural Mesh Tests

Change 3333080 on 2017/03/06 by Lina.Halper

	Fix crash on not sorted OutBoneTransforms from Hand IK Retargeting node

	#jira: UE-42460

Change 3333826 on 2017/03/06 by Lina.Halper

	Renamed nodes -
	- adding rename feature for HumanRig

	#rb: none

Change 3333847 on 2017/03/06 by Lina.Halper

	Fixed build error

Change 3333865 on 2017/03/06 by Lina.Halper

	Fixed build error on shadow warning

Change 3333957 on 2017/03/06 by Lina.Halper

	Fixed issue where limb length wasn't applied correctly on human rig

	#jira: UE-42307

Change 3335109 on 2017/03/07 by Thomas.Sarkanen

	Prevent us from rebuilding node tree in 'view' mode

	This means that a rare crash cant occur any more

	#jira UE-42568 - Editor crashes when using the eye dropper to switch actor skeleton after deleting sequence

Change 3335110 on 2017/03/07 by Jurre.deBaare

	Editor crashes on importing Alembic file
	#fix ensure that we generate objects with a valid object name (used to be able to include invalid characters such as periods)
	#jira UE-40189

Change 3335117 on 2017/03/07 by Jurre.deBaare

	Crash when opening cloth painter with Paint mode open and selecting different actor
	#fix ensure that we only initialize static adapter factory data once, now that we have multiple painters
	#jira UE-42573

Change 3335119 on 2017/03/07 by Jurre.deBaare

	In Persona, the lighting rig rotation changes when switching between profiles
	#fix don't know how I wrote this code before, but made it so it makes sense now
	#jira UE-40877

Change 3335120 on 2017/03/07 by Jurre.deBaare

	Auto-Exposure Overriding Preview Scene Profile Settings
	#fix also update showflags when passed property is Name_none, on opening static mesh editor make sure we pick last set profile instead of default 0, and make sure we push propertyt change when changing profiles
	#misc made same changes for animation editors
	#jira UE-39217

Change 3335121 on 2017/03/07 by Jurre.deBaare

	Points not marked as invalid in Aim Offset graph when in invalid positions
	#fix ensure that samples which have a valid grid point when checking their animation ptr
	#misc whitespace fixes
	#jira UE-40715

Change 3335122 on 2017/03/07 by Jurre.deBaare

	Cannot right-click a blend point if the green preview point is in the way
	#fix changed condition slightly, now do gather highlighted index so it can be used in rightclick instead of not setting it while hovering the preview pin point
	#jira UE-39060

Change 3335123 on 2017/03/07 by Jurre.deBaare

	It's not clear which Grid Stretch  mode in blend space is currently on
	#jira UE-39080
	#fix added color change on grid stretch type state

Change 3335124 on 2017/03/07 by Jurre.deBaare

	Not clear that material baking is only supported for single lod merge actors
	#fix extended tooltip to include requirement for material merging
	#jira UE-39621

Change 3335125 on 2017/03/07 by Jurre.deBaare

	#fix Alembic import fix (indexed UVs) copy-pasta error

Change 3335126 on 2017/03/07 by Jurre.deBaare

	Accessor and Modifier for StartTimeOffset in GeometryCacheComponent.h
	#jira UE-37080
	#feature Added bp exposed get/set-er
	#misc Corrected some comments

Change 3335127 on 2017/03/07 by Jurre.deBaare

	Blend space interpolation settings do not update until the user reopens the asset
	#fix made reintializing of interpolation filter editor only to start with, and update the filter when necessary (this way multiple players, e.g. thumbnail renderer and persona) both give the expected result, before only one of them would be reinitialized see comment on flag in header
	#jira UE-40950

Change 3335129 on 2017/03/07 by Jurre.deBaare

	Store imported mesh names for Alembic files (makes reimporting easier)
	#jira UE-39034

Change 3335161 on 2017/03/07 by Jurre.deBaare

	CIS fix: Partial back out changelist 3335129

Change 3335426 on 2017/03/07 by Jurre.deBaare

	Crash fix for importing random maya shapes through Alembic
	#fix add safety checks for writing material indices
	#jira UE-40189

Change 3335427 on 2017/03/07 by Jurre.deBaare

	Editor hard locks when adding Profile in Preview Scene Settings
	#fix previous change created an infinite loop while adding a new profile, now calling OnAssetViewerSettingsChanged directly and from a different spot
	#jira UE-42609

Change 3335448 on 2017/03/07 by Thomas.Sarkanen

	Fixed binding (and re-binding) of rig that was broken by main integration

	Templates are no longer always regenerated, so re-binding doesnt work if we rely on template regeneration
	Moved runtime and compile-time binding into the template (rather than the track).
	Removed hacky 'static stack' of binding IDs. This is no longer needed now we have a way to propgate per-instance template data at compile time.

Change 3336018 on 2017/03/07 by Ori.Cohen

	Make sure InstantiatePhysicsAsset does not create uninitialized bodies and constraints when it is given a physics asset with inappropriate bone names. Fixes crash in rigid body node when re-targetting.

	#JIRA UE-42090

Change 3336508 on 2017/03/07 by Ori.Cohen

	PR #3325: Allow Physics Notification Dispatching with Engine API (Contributed by 0lento)

	#JIRA UE-42533

Change 3336524 on 2017/03/07 by Ori.Cohen

	Added compiler error when component space sim and world collision is used.

	#JIRA UE-41402

Change 3336700 on 2017/03/07 by Ben.Marsh

	Fix stream name for bulding PhysX.

Change 3336949 on 2017/03/08 by James.Golding

	In BindToSkeletalMesh, make sure skel mesh resources are init'd before calling Register on SkelMeshComp

	#jira UE-42377

Change 3337008 on 2017/03/08 by Lina.Halper

	- Fix for lagging update
	- Removed unnecessary update from trajectory cache

	#rb: Thomas.Sarkanen

Change 3337190 on 2017/03/08 by James.Golding

	Remove defunct PhysX 3.3 libs

Change 3337562 on 2017/03/08 by Ori.Cohen

	Touch engine to force re-link of latest PhysX libs. Fixes crash when free joints are used with immediate mode.

	#JIRA UE-41026, UE-42628

Change 3337779 on 2017/03/08 by Ori.Cohen

	Added skeletal mesh component override for sync vs async scene.

	#JIRA UE-39829

Change 3337859 on 2017/03/08 by Ori.Cohen

	Fix CIS

Change 3338593 on 2017/03/08 by Ori.Cohen

	Remove physx get geometry macro and replace with calls to .any which should be faster.

	#JIRA UE-40503

Change 3338614 on 2017/03/08 by Ori.Cohen

	Fix warning about missing EditAnywhere

	#JIRA UE-41361

Change 3338677 on 2017/03/08 by Ori.Cohen

	Fix new generated physics assets not properly setting user settings to default profile.

	#JIRA UE-41135

Change 3338683 on 2017/03/08 by Ori.Cohen

	PR #3225: UPhysicsConstraintComponent works as expected when target is an UChildActorComponent (Contributed by PhoenixBlack)

	#JIRA UE-3225

Change 3338694 on 2017/03/08 by Ori.Cohen

	Added a getter to physical animation component (PR #3163)
	#JIRA UE-41047

Change 3339131 on 2017/03/09 by James.Golding

	Merging Engine changes from //UE4/Private-GDC17-FaceRig
	- Set default CurveSourceBindingName on AudioCurveSourceComponent to 'Default' (to match node default)
	- Add CurveSyncOffset option to AudioCurveSourceComponent
	- Add 'Copy Curves To SoundWave' option to Anim Editor
	- Bind possible curve sources by iterating over component properties, rather than owned components
	- Add ref-pose override option to SkinnedMeshComponent
	- Major fixes for per-instance skin-weights (was not using per-section map)
	- Improve warnings for per-instance skin weight problems

Change 3339223 on 2017/03/09 by Thomas.Sarkanen

	Exposed preview scene settings in the existing settings tab rather than in a hidden menu in the viewport

	Tab is now shown by default
	Added default preview scene collection so you dont end up having to create assets all the time just to preview meshes (although this is still possible).

	#jira UE-39365 - Make Preview scene setup more discoverable

Change 3339270 on 2017/03/09 by Lina.Halper

	Added create animation blueprint back since now we have a separate editor.

	#jira: UE-39457
	#rb: Martin.Wilson

Change 3339318 on 2017/03/09 by Danny.Bouimad

	TM-TangentNormals, Test map for checking tangent recalculation with and without skin cache.

Change 3339431 on 2017/03/09 by James.Golding

	Make UDestructibleComponent::SpawnFractureEffectsFromDamageEvent virtual
	(UDN request: https://udn.unrealengine.com/questions/335389/custom-destructible-fracture-effects.html)

Change 3339809 on 2017/03/09 by James.Golding

	Add support for 'UCP' prefix for importing capsule collision on static meshes via FBX

	#jira UE-5262

Change 3339955 on 2017/03/09 by Ori.Cohen

	Allow kinematic leaf bodies in immediate mode

Change 3339995 on 2017/03/09 by mason.seay

	Collision functional tests

Change 3340085 on 2017/03/09 by Ori.Cohen

	Change default contact-gen method to PCM. This is the default in PhysX 3.4

	#JIRA UE-40365

Change 3340562 on 2017/03/09 by Ori.Cohen

	Added physx simulation shader override.

	#JIRA UE-35304

Change 3341155 on 2017/03/10 by Ori.Cohen

	Fix CIS warnings

Change 3341295 on 2017/03/10 by Martin.Wilson

	Cache compact pose bone index on FBoneReference and remove manual caching in Paragon

	#jira UE-42302

Change 3341943 on 2017/03/10 by mason.seay

	Cleaned up logic for map blueprints.  Worked around delays

Change 3342029 on 2017/03/10 by mason.seay

	Cleaned up blueprint logic to remove dependency on delays

Change 3342063 on 2017/03/10 by mason.seay

	Disabling tests

Change 3342071 on 2017/03/10 by mason.seay

	Updated map to use assertions

Change 3342884 on 2017/03/13 by James.Golding

	Expose 'trace by profile' functions to BP
	Refactor duplicated code in KismetSystemLibrary collision functions
	#jira UE-32912

Change 3342886 on 2017/03/13 by James.Golding

	Moving sprite from PhysicsThruster actor to PhysicsThrusterComponent (like light and audio, for example)

	#jira UE-6015

Change 3342921 on 2017/03/13 by Benn.Gallagher

	Added some checking to anim dynamics pre update to avoid crashes when world isn't available
	#jira UE-42729

Change 3342970 on 2017/03/13 by James.Golding

	Fix incorrect display names for some ..ByProfile trace funcs

Change 3342972 on 2017/03/13 by James.Golding

	PR #3060: Added virtual keyword to DestructibleComponent ApplyDamage, ApplyDamageRadius (Contributed by looterz)

Change 3343032 on 2017/03/13 by Josh.Stoddard

	Enable stabilization in PhysX by default
	 - set PxSceneFlag::eENABLE_STABILIZATION by default
	 - removed USE_ADAPTIVE_FORCES_FOR_ASYNC_SCENE because eADAPTED_FORCES is incompatible with eENABLE_STABILIZATION
	 - added FBodyInstance parameter StabilizationThresholdMultiplier to control PxRigidDynamic stabilization threshold
	#jira UE-6612 #rb ori.cohen

Change 3343073 on 2017/03/13 by Martin.Wilson

	Properly initialize single bone controller bone references

	#jira UE-42776

Change 3343074 on 2017/03/13 by Martin.Wilson

	Clear raw curve data during cooking

	#jira UE-37897

Change 3343317 on 2017/03/13 by Jurre.deBaare

	Crash after clearing the animation from a sample point in a 1D Blendspace
	#jira UE-42672
	#misc made sure that we do not deem empty blend spaces as additive

Change 3343498 on 2017/03/13 by Lina.Halper

	Fix on odin cook crash
	- fallout from CL 3336018

	#rb:Marc.Audy
	#code review:Ori.Cohen

Change 3343548 on 2017/03/13 by Lina.Halper

	Fix crash on ocean -

	#rb: none
	#code review: Ori.Cohen

Change 3344764 on 2017/03/14 by Thomas.Sarkanen

	Fixed crash right-clicking empty space in the asset shortcut dropdown

	#jira UE-42782 - Crash right-clicking in anim blueprint asset picker
	#jira UE-42799 - GitHub 3366 : Asset selection null check before Opening Editor

Change 3344776 on 2017/03/14 by James.Golding

	Really fix names for BP-expose 'ByProfile' traces

Change 3344780 on 2017/03/14 by James.Golding

	PR #3359: UE4.15 Morpheme integration changes (Contributed by NaturalMotionTechnology)
	#jira UE-42771

Change 3344781 on 2017/03/14 by James.Golding

	PR #3346: Expose URadialForceComponent for inheritance (Contributed by projectgheist)
	#jira UE-42610

Change 3344782 on 2017/03/14 by James.Golding

	Fix procmesh->staticmesh conversion if only a single triangle
	#jira UE-42310

Change 3344783 on 2017/03/14 by James.Golding

	PR #3234: Fix the incorrect UIMin value for InitialAverageFrameRate physics setting. (Contributed by 0lento)
	#jira UE-41832

Change 3344785 on 2017/03/14 by James.Golding

	PR #3196: Improved Constraint warning message (Contributed by projectgheist)

Change 3344790 on 2017/03/14 by James.Golding

	PR #3362: Fix NULL pointer dereference when debugging null animation sequence. (Contributed by ill)

Change 3344891 on 2017/03/14 by Jurre.deBaare

	Incorporate back list of animations into blendspace editor
	#feature added labels toggle to blend space grid
	#feature can now override animations when drop on sample
	#jira UE-39368

Change 3344921 on 2017/03/14 by Jurre.deBaare

	Expose Opacity and Opacity Mask options on material flattening
	#feature added support for baking out opacity and opacity masks
	#jira UE-39563

Change 3344963 on 2017/03/14 by Jurre.deBaare

	Need Simplygon to create LODs on animated pose, vs skeletal mesh pose
	#feature added ability to specify an animation sequence from which frame 0 will be baked into the LOD mesh
	#jira UE-38909

Change 3345060 on 2017/03/14 by Jurre.deBaare

	CIS fix: missing include

Change 3345929 on 2017/03/14 by Jon.Nabozny

	Fix Grux skeletal mesh to properly point at Grux Phys Asset (instead of Steel's).

	#jira UE-42772

Change 3346970 on 2017/03/15 by Jurre.deBaare

	#feature Support importing vertex colours from Alembic files
	#jira UE-39032

Change 3346976 on 2017/03/15 by Jurre.deBaare

	Missing files from CL 3344921

Change 3346983 on 2017/03/15 by Jurre.deBaare

	Static mesh editor crashes when opening
	#fix default value for additional settings

Change 3347019 on 2017/03/15 by James.Cobbett

	Tidying up blueprint comments

Change 3347128 on 2017/03/15 by mason.seay

	Updated descriptions on tests

Change 3347146 on 2017/03/15 by mason.seay

	Updated descriptions on tests

Change 3347178 on 2017/03/15 by Martin.Wilson

	PR #3358: Actually compress CompressedCurveData during anim compression (Contributed by stefanzimecki)

Change 3347257 on 2017/03/15 by Thomas.Sarkanen

	Fixed crash when canceling saving a new preview mesh collection

Change 3347314 on 2017/03/15 by mason.seay

	Narrowed collision volumes by half

Change 3347386 on 2017/03/15 by mason.seay

	Updated descriptions

Change 3347388 on 2017/03/15 by mason.seay

	Forgot to disable tests :P

Change 3347397 on 2017/03/15 by James.Cobbett

	Tidying up blueprint comments for WeldingScreenshots.umap automated test

Change 3347433 on 2017/03/15 by Thomas.Sarkanen

	Fix IK/FK switch on first frame (clobbering FK data)

	Added a 'first frame' flag to limbs etc.

Change 3347436 on 2017/03/15 by Thomas.Sarkanen

	Control rig sequences can now be exported to anim sequences

	Control rig sequences can now be exported from sequencer and exported, re-exported, imported and re-imported from the content browser.
	Added converter function that performs similar logic to the animation recorder.
	Fixed binding template in cooked builds.
	Exposed anim sequence factory via UNREALED_API to allow for me to derive from it (I force the skeleton to a known value)

	#jira UE-42608 - Add "export to anim sequence" to control rig sequences

Change 3347475 on 2017/03/15 by Lina.Halper

	#LookAt node refactor
	 - you can use LookAtLocation based on joint or socket (jira UE-8972)
	 - improved visualizer (jira UE-2737) - clamp was there but now you can visuzlie it

	 - GetOnScreenDebugInfo changed parameter - added runtime node
	  - possibly we could query runtime node only but right now GetOnScrrenDebugInfo belongs to AnimGraphNode
	  - deprecated previous GetOnScreenDebugInfo

	 - Added AnimPhys Object version GUID

	#rb:Thomas.Sarkanen

Change 3347512 on 2017/03/15 by Thomas.Sarkanen

	Filter anim sequences to the correct skeleton when exporting

	Feeback from code review of CL 3347436.

Change 3347543 on 2017/03/15 by Thomas.Sarkanen

	Fix shadow variable warnings

Change 3347556 on 2017/03/15 by Jurre.deBaare

	Unable to select bones in the animation editor viewport
	#fix issues came from hit proxies being turned on and always being hit instead of the bone physic shapes
	#feature added toggle button to skeletal mesh editor to enable mesh section selection
	#jira UE-42893

Change 3347559 on 2017/03/15 by James.Golding

	By default, re-use anim editor with correct Skeleton when double clicking anim asset
	Add menu option to force a new edtor to open
	#jira UE-42912

Change 3347749 on 2017/03/15 by Lina.Halper

	Fix build issue.

	#rb: none

Change 3347926 on 2017/03/15 by James.Cobbett

	Adding new test to Welding.umap for children welding when attached to ragdoll

Change 3347938 on 2017/03/15 by Lina.Halper

	Fix build error

	#rb: none

Change 3347939 on 2017/03/15 by Mason.Seay

	General cleanup of bp logic in maps and blueprint actors
	Added scenarios to test actor descriptions
	Fixed an error in blueprints (I think I failed to submit changes before)

Change 3348074 on 2017/03/15 by Lina.Halper

	build error fix

	#rb: none
	#code review: martin.wilson

Change 3348154 on 2017/03/15 by Lina.Halper

	last fix, hopefully

	#rb: none
	#code review: MArtin.wilson

Change 3349160 on 2017/03/16 by Thomas.Sarkanen

	Adding 'set preview mesh' to toolbar

	#jira UE-42910 - Add 'preview mesh' button to toolbar

Change 3349175 on 2017/03/16 by Jurre.deBaare

	Notification on reimported animations that might be bad
	#fix added two warning messages for different sequence length and missing curve in reimported file (hidden behind editor user setting -> bAnimationReimportWarnings)
	#jira UE-34522

Change 3349197 on 2017/03/16 by Martin.Wilson

	Add ability to choose slot to preview to montage editor

	#jira UE-38910

Change 3349216 on 2017/03/16 by James.Cobbett

	Additional Welding tests: static meshes attached to ragdolls and simulated children detaching and retaining welded children

Change 3349217 on 2017/03/16 by James.Cobbett

	Disabling new Welding tests pending review

Change 3349314 on 2017/03/16 by Benn.Gallagher

	Fixed clothing not running in PS4 packaged builds

	#jira UE-42857

Change 3349504 on 2017/03/16 by James.Fox

	Enabling RootMotion automation tests. Approved: UEENGQA-12277

Change 3349611 on 2017/03/16 by Lina.Halper

	retargeting pose options change

	 - now reset, import pose, use current pose

	#rb: Martin.Wilson
	#jira: UE-19768

Change 3349738 on 2017/03/16 by Martin.Wilson

	Remove force inline from virtual compression functions.

	#jira UE-33070

Change 3349787 on 2017/03/16 by James.Golding

	Fix xbox one compile (FControlRigBindingTemplate::ObjectBinding was not all wrapped in WITH_EDITORONLY_DATA)

Change 3349827 on 2017/03/16 by Josh.Stoddard

	- Expose PhysX stabilization as project setting, disabled by default
	- remove obsolete USE_SPECIAL_FRICTION_MODEL_FOR_ASYNC_SCENE
	#jira UE-42868

Change 3349932 on 2017/03/16 by James.Golding

	Possible fix for cooking crash - ContentBrowser module not necessarily being loaded

Change 3350011 on 2017/03/16 by Jon.Nabozny

	Created AddForceAtLocationLocal function to allow component space forces.

	#jira UE-38115

Change 3350134 on 2017/03/16 by Josh.Stoddard

	Fix memory leak from GPhysXSDK->createShape()
	#jira UE-42733 #rb ori.cohen

Change 3351166 on 2017/03/16 by Lina.Halper

	Fixed build issue

	#code review:Jon.Nabozny

Change 3351451 on 2017/03/17 by Benn.Gallagher

	Fixed clothing reimports not working correctly and possibly leading to editor crash
	#jira UE-42953

Change 3351564 on 2017/03/17 by Benn.Gallagher

	Xbox NvCloth fix, module rules incorrectly set up and were not actually compiling NvCloth into the binary

	#jira UE-42224

Change 3351594 on 2017/03/17 by mason.seay

	Updated BP logic to use Set Actor Location (speeds up tests)

	Gave actors distinct names

	Reworded descriptions

Change 3351629 on 2017/03/17 by Jon.Nabozny

	Add methods to determine the WeldParent and WeldChildren of a given component.

	#jira UE-40733

Change 3351639 on 2017/03/17 by Jon.Nabozny

	Fix StopMovementImmediately for WheeledVehicleMovementComponent.

	#jira UE-40078

Change 3351649 on 2017/03/17 by Jon.Nabozny

	Update comment on AddForceAtLocationLocal to be explicit that both Force vector and Location are in Body space.

Change 3351663 on 2017/03/17 by Thomas.Sarkanen

	Anim notify blueprints now start with a 'received notify' event node (ghosted)

	#jira UE-27386 - A new anim notify blueprints should start with a Received Notify override

Change 3351696 on 2017/03/17 by Thomas.Sarkanen

	Refactored EvaluateBoneTransforms to prevent usage of skeletal mesh component

	Deprecated EvaluateBoneTransforms in favor of new EvaluateSkeletalControl_AnyThread.
	Added various useful transforms to the proxy as these were the most used data from the skeletal mesh component.
	Some instances still require access to skeletal mesh to access the world for debug rendering. I'm leaving these alone for the moment as they should be addressed for 4.17 with the fixes for multi-threaded debug rendering.
	Commented & re-formatted ConvertCSTransformToBoneSpace and ConvertBoneSpaceTransformToCS. Deprecated signatures that take a skeletal mesh component.
	Commented FAnimNode_Base interface.

	#jira UE-35238 - FAnimNode_SkeletalControlBase::EvaluateBoneTransforms takes in SkeletalMeshComponent which is not safe

Change 3351698 on 2017/03/17 by James.Golding

	Add GetMaterialFromFaceIndex to MeshComponent, implement for StaticMeshComponent and ModelComponent
	#jira UE-42802

Change 3351701 on 2017/03/17 by James.Golding

	Change from Ctrl to Shift for 'open new editor' when double-clicking anim assets

Change 3351703 on 2017/03/17 by James.Golding

	Change Box and Sphyl elements to use Rotator instead of Quat, to make them easier to edit via details panel
	#jira UE-39664

Change 3351704 on 2017/03/17 by James.Golding

	Fix scrubbing curves that aren't selected
	#jira UE-39574

Change 3351805 on 2017/03/17 by Thomas.Sarkanen

	Prevent crash when trying to implement a function in a child anim blueprint

	The assumption that the ubergraph was the zeroth entry in the array didnt hold for child anim BPs with overriden functions. Now we just search for the ubergraph and check it if we find it.

	#jira UE-42996 - Editor Crashes when creating a function in Child Anim Blueprint

Change 3352000 on 2017/03/17 by James.Cobbett

	Adding VehicleAdvBP assets for use in upcoming Welding tests

Change 3352067 on 2017/03/17 by Lina.Halper

	Removed AnimGraph from GraphEditor module
	- Created node factory, pin factory, pin connection policy factory
	- Moved all anim related files out of GraphEditor

	#code review: Michael.Noland
	#jira: UE-37976
	#rb: Michael.Noland

Change 3352178 on 2017/03/17 by Lina.Halper

	Moved to AnimationBlueprintEditor as these are just graph visual nodes

	#code review:Michael.Noland

Change 3352753 on 2017/03/17 by James.Fox

	Checking in some naming convention changes for Overlap automation test.

Change 3353371 on 2017/03/19 by Lina.Halper

	Fix build error

	#code review: Bob.Tellez

Change 3353644 on 2017/03/20 by Jurre.deBaare

	Animation thumbnails vanishing
	#fix ensure that we draw the mesh regardless of whether or not we have dynamic render data
	#jira UE-42974

Change 3353654 on 2017/03/20 by James.Golding

	Move SGraphNodeK2Default and SGraphNodeK2Event to Public as well, as they are used by Fortnite
	Update includes in SFortGrtaphNodeK2ExecuteEvent and HandleEvent to only include parent class header

Change 3353684 on 2017/03/20 by Jurre.deBaare

	Separate asset viewer profiles for local / shared
	- Split out profiles in local/shared UProperty
	- Modifications to ini writing :(
	- Extra checks for default ini writing
	- Add checkout/make writable for default editor ini file

Change 3353803 on 2017/03/20 by Jurre.deBaare

	CIS fixes

Change 3353830 on 2017/03/20 by Martin.Wilson

	Fix additives breaking when pose link not connected to anything

	#jira ue-39174

Change 3353847 on 2017/03/20 by Martin.Wilson

	Add property to blend space player nodes to specify whether the blend space current time is reset when the blend space changes

	#jira UE-40446

Change 3353950 on 2017/03/20 by Ori.Cohen

	Undo the null entries for invalid body/bodysetup pairs. Instead we check if the body and constraints are valid in the rigid body node.

	#JIRA UE-42090

Change 3353956 on 2017/03/20 by Ori.Cohen

	Back out changelist 3343498 (this was needed for the null entries on bodies array which has been fixed)

Change 3354003 on 2017/03/20 by Thomas.Sarkanen

	Back out changelist 3353914

Change 3354031 on 2017/03/20 by Benn.Gallagher

	Speculative fix for clothing crashes using Mambo. It was possible that the skeletal mesh component could have triggered deletion or creation of simulation state objects while the simulation was in flight on another thread, added tracking and waiting for outstanding tasks.
	#jira UE-42975

Change 3354151 on 2017/03/20 by Lina.Halper

	Make sure nullptr tick function still works
	- this is prerequisite for the play and export option

	#rb:Ori.Cohen

Change 3354229 on 2017/03/20 by James.Golding

	Add 'default camera' options for skel meshes
	#jira UE-42762

Change 3354342 on 2017/03/20 by Martin.Wilson

	Strip out identity raw tracks when baking additives.

	#jira UE-40508

Change 3354388 on 2017/03/20 by Martin.Wilson

	Fix false anim blueprint compile errors with aim offset pins

	#jira UE-38196

Change 3354494 on 2017/03/20 by Martin.Wilson

	Serialize compressed anim data when counting memory

	#jira UE-39691

Change 3354515 on 2017/03/20 by Josh.Stoddard

	Expose PxSceneFlag::eENABLE_ENHANCED_DETERMINISM
	#jira UE-41484 #rb ori.cohen

Change 3355932 on 2017/03/21 by Thomas.Sarkanen

	Back out changelist 3354003

	Reinstating merge from Main:

	Merging //UE4/Dev-Main to Dev-AnimPhys (//UE4/Dev-AnimPhys)

Change 3355954 on 2017/03/21 by Thomas.Sarkanen

	Fixed up CIS issues post merge from Main

Change 3355974 on 2017/03/21 by James.Golding

	Fix Mac CIS warning (constructor order of FAnimNode_BlendSpacePlayer)

Change 3355981 on 2017/03/21 by Jurre.deBaare

	Whitelisted circular dependencies between meshpaintmode and VR editor modules

Change 3355986 on 2017/03/21 by Jurre.deBaare

	Linux CIS file, non-capital M

Change 3356072 on 2017/03/21 by James.Golding

	Fix UStaticMeshComponent::GetMaterialFromCollisionFaceIndex to not depend on editor-only data
	#jira UE-43117

Change 3356073 on 2017/03/21 by James.Golding

	Implement GetMaterialFromCollisionFaceIndex for ProceduralMeshComponent

Change 3356300 on 2017/03/21 by Ori.Cohen

	Allow kinematic bodies with simulated parents using the full scene solver

Change 3356362 on 2017/03/21 by Lina.Halper

	- Support create animation from Play
	- Support export animation from Play
	 - this allows retargeting, post graph, or anything you see in engine will be baked to the animation

	#rb: Thomas.Sarkanen
	#jira: UE-19746

Change 3356482 on 2017/03/21 by Martin.Wilson

	Fix crash when opening a new montage

	#UE-43132

Change 3356709 on 2017/03/21 by James.Golding

	Check for NaN when converting rotator->quat (very large inputs can result in nan's, need to handle to avoid hitting asserts elsewhere)
	Add clamps when editing rotation of collision shapes, to avoid massive rotation entries

	#jira UE-39664

Change 3356968 on 2017/03/21 by Ori.Cohen

	Fix physics asset bounds to be as small as 1cm.
	This introduces flicker, but passing to rendering to fix that on their end.

Change 3357092 on 2017/03/21 by Josh.Stoddard

	Don't update kinematic target if the body isn't moving
	#jira UE-42784 #rb ori.cohen

Change 3357194 on 2017/03/21 by Lina.Halper

	Fix on vehicle anim instance look at node issue

	#rb: Ori.Cohen
	#jira: UE-43116

Change 3357298 on 2017/03/21 by Ori.Cohen

	Fix invalid warning when dragging actors into the world. This is invalid because we manually disable collision on actors when this happens, and the warning is only needed for actual runtime.

	#JIRA UE-42211

Change 3357494 on 2017/03/21 by Jon.Nabozny

	Fix FPropertyEditorInlineClassFilter filtering classes incorrectly.

	#jira UE-43098

Change 3357892 on 2017/03/21 by Lina.Halper

	fix build error
	#rb: none

Change 3358078 on 2017/03/22 by James.Golding

	Fix CIS - AnimNode_FootPlacement in Platformer game after SkelControl refactor (from CL 3351696)

Change 3358080 on 2017/03/22 by Jurre.deBaare

	Updating Alembic importer thirdparty dependencies for Windows and Mac

Change 3358081 on 2017/03/22 by James.Golding

	Add comment to help people fix up code after moving many properties in ContraintInstance to ProfileInstance member

Change 3358092 on 2017/03/22 by James.Golding

	Fix undo for saving/clearing default cam on mesh (also marks mesh dirty)

Change 3358093 on 2017/03/22 by James.Golding

	Panning in orbit mode now takes in account camera speed

	#jira UE-43082

Change 3358106 on 2017/03/22 by Thomas.Sarkanen

	Fix fallout from Main integration

Change 3358454 on 2017/03/22 by Ori.Cohen

	Temporarily disable phat immediate mode previewing to break the dependency on immediate physics plugin. Will be turned back on in later refactor

	#JIRA UE-41711

Change 3358886 on 2017/03/22 by Ori.Cohen

	Fix AutoWeld not being disabled in blueprint editor when the object is simulated

	#JIRA UE-40193

Change 3358950 on 2017/03/22 by Lina.Halper

	reverted code asking about asset name when create asset

	#rb: none

Change 3359034 on 2017/03/22 by Lina.Halper

	#fix fall out from previous revert
	 - because now export also shows the window. we don't want export to FBX to show name dialog
	 - it will use asset name as base

	#rb: none
	#code review:Thomas.Sarkanen

Change 3359165 on 2017/03/22 by Ori.Cohen

	Fix welded capsules not using the right rotation

	#JIRA UE-41546

Change 3359232 on 2017/03/22 by Ori.Cohen

	Bump DDC key for new bvh34.

Change 3359233 on 2017/03/22 by mason.seay

	Added a couple more scenarios and updated names.  Needs more organization

Change 3359293 on 2017/03/22 by tim.gautier

	Submitting MeshPaint test content for QAGame.

Change 3359389 on 2017/03/22 by Ori.Cohen

	Back out changelist 3356589

Change 3359402 on 2017/03/22 by Jon.Nabozny

	Move GetWeldParent and GetWeldChildren to EngineTest.

Change 3359978 on 2017/03/23 by Jurre.deBaare

	Mesh Paint brush disappears when painting in VR
	#fix removed conditional clause for painting the interactors
	#jira UE-43150

Change 3359980 on 2017/03/23 by Jurre.deBaare

	Mesh Paint hotkeys to modify brush size are inconsistent with other Paint modes
	#fix reverted to old behavior, paint mode overriding catching key input to viewport
	#jira UE-43158

Change 3360052 on 2017/03/23 by James.Golding

	Back out changelist 3359165, as it was made after smoke testing. Will re-submit after copy to main.

Change 3360121 on 2017/03/23 by James.Golding

	Fix perf regression from testing for NaN's in FRotator::Quaternion in shipping builds

Change 3360177 on 2017/03/23 by Jurre.deBaare

	Related to previous brush size check in, early out when the painter has handled the input, that way the rest of the editor can't take the brackets [] input anymore

Change 3360358 on 2017/03/23 by mason.seay

	Updated naming and organization of actors in Outliner

Change 3362050 on 2017/03/23 by Lina.Halper

	Back out changelist 3343074

	#rb:none
	#code review: Martin.Wilson, James.Golding

[CL 3362661 by Thomas Sarkanen in Main branch]
2017-03-24 09:53:37 -04:00
Lauren Ridge
d089a861aa Circular reference changes
#codereview Mike.Fricker

#rb none

[CL 3345704 by Lauren Ridge in Dev-VREditor branch]
2017-03-14 15:30:46 -04:00
Ben Marsh
111ec7adc5 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3314870)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3284872 on 2017/02/03 by Graeme.Thornton

	Seperate pak cache granularity from pak signing chunk size

Change 3285765 on 2017/02/03 by Graeme.Thornton

	Fix stats warnings because each slate new loading screen thread has the same stat name, but is assigned to a different thread

	#jira UE-41478

Change 3286913 on 2017/02/04 by Ben.Marsh

	IncludeTool: Merging fixes.

	* Don't remove existing forward declarations unless explicitly instructed to do so. Files are optimized with these declarations in place, so removing them can cause output files to fail to build. It can be a useful separate step though, so expose it as a command-line option instead.
	* Add a specific option for which files should be output by the tool. Any files which are excluded from this list are treated specially when generating output files, so as to prevent them from causing files to be omitted from other files that include them. Also add an option to force this mode for all headers, for use when testing formatting/include path generation.

Change 3287100 on 2017/02/05 by Ben.Marsh

	UBT: Move platform settings into platform-specific TargetRules objects.

Change 3287106 on 2017/02/05 by Ben.Marsh

	Merge UEBuildPlatformContext into UEBuildPlatform. Now that targets can have platform-specific settings, there is no need to separate a platform class which contains target-specific information.

Change 3287398 on 2017/02/06 by Steve.Robb

	Fix for UHT failing when -WarningsAsErrors and -Verbose are specified together.

Change 3287399 on 2017/02/06 by Steve.Robb

	Log verbosities made more readable in the debugger.

Change 3287410 on 2017/02/06 by Steve.Robb

	Fix for TStructOpsTypeTraits where WithCopy gives a different result between specializing the traits and not providing WithCopy and not specializing the traits at all.

	#fyi marc.audy

Change 3288020 on 2017/02/06 by Ben.Marsh

	Prevent forward declaration of the ITextData class. We need to include the header for the debugger visualizers to work correctly.

Change 3291817 on 2017/02/08 by Steve.Robb

	New EBlueprintCompileReinstancerFlags used to construct FBlueprintCompileReinstancer, instead of lots of bools.

Change 3292090 on 2017/02/08 by Graeme.Thornton

	Crash fix - don't update font engine services if it was never created

	#jira UE-33953

Change 3292993 on 2017/02/08 by Ben.Marsh

	Add an option to disable force-including PCHs for files in the non-unity working set. (bAdaptiveUnityDisablesPCH)

Change 3293231 on 2017/02/08 by Ben.Marsh

	BuildGraph: Allow overriding the changelist that a badge should be displayed for (with the Change="" attribute on the Badge declaration in XML), so the code changelist can be used if necessary. Also link to the failed step if only one has failed.

Change 3294213 on 2017/02/09 by Ben.Marsh

	EC: Allow setting a property on frequent CI jobs that allows us to exclude it from job searches for generating the dashboard. Filtering on the client side is causing dashboard pages to be almost empty.

Change 3294753 on 2017/02/09 by Ben.Zeigler

	#jira UE-41151 Fix UObjectLibrary::RemoveObject to remove from the correct array, and add comment mentioning that the dynamic use of Object Library is semi-deprecated

Change 3296070 on 2017/02/09 by Ben.Zeigler

	Explicitly turn off Copy for a struct that has a linked list internally. I think turning Copy on by default for all non POD Types is pretty risky and is likely to crash for other games. In this case it was being copied for network replication, and it didn't have one defined so the default C++ one copied the linked list and crashed on destruction.

Change 3296420 on 2017/02/10 by Graeme.Thornton

	Remove remaining references to AES_KEY, instead using the encryption key delegates to access the key where needed
	Refactored encryption and signing key access in unrealpak to make it easier to use

Change 3296609 on 2017/02/10 by Ben.Marsh

	BuildGraph: Fix error running the <Copy> task with an empty "From" argument.

	* FileSystemReference.IsUnderDirectory() was not correctly handling cases where the directory was a root directory (and has to end in a path separator)
	* FilePattern.AsDirectoryReference() with an empty token would append a path separator to an empty string, resulting in it referencing the root directory rather than the given base directory.

Change 3297440 on 2017/02/10 by Ben.Marsh

	UBT: Move the FileFilter class into UnrealBuildTool.

Change 3297725 on 2017/02/10 by Ben.Zeigler

	#jira UE-39199 Fix issue with enum value redirects using the wrong short or long name, it now fully supports both.
	Clean up a lot of confusingly named and broken functions on UEnum:
	#jira UE-41348 Deprecate FindEnumIndex, GetEnum, GetEnumName, replace with GetIndexByName, GetNameByIndex, and GetNameStringByIndex and clean up warnings
	#jira UE-38187 Deprecate GetDisplayNameText and GetEnumText, replaced both with GetDisplayNameTextAtIndex which is now callable outside the editor and has a better comment
	Deprecate FindEnumRedirects and replace with GetIndexByNameString. Fix code to not check the redirects array 5 times per enum lookup
	Fix GetValueAsString to actually act on a value, not an index. This matches common usage and the function's name
	While fixing deprecation warnings on internal games, fixed dozens of cases where it was using Index functions when it should have been using Value functions
	Delete some now redundant enum editor code and pipe everything through UEnum

Change 3297979 on 2017/02/10 by Ben.Zeigler

	Fix issues parsing Enums that are literally the string "None", which is allowed but leads to some odd behavior

Change 3298299 on 2017/02/10 by Steve.Robb

	TTuple improvements:
	- equality comparable
	- serializable
	- in the correct folder

	2-tuples are specialized to be syntactically compatible with both TPair and TTuple.
	TPair is now an alias for a 2-tuple and is no longer bound to TPairInitializer.

	#fyi robert.manuszewski,ben.marsh

Change 3298460 on 2017/02/11 by Ben.Marsh

	UGS: Set the correct result from running custom tasks.

Change 3298462 on 2017/02/11 by Ben.Marsh

	UBT: Fix some deprecated messages that have the wrong release version, and add a better message for how ModuleRules constructors need to be updated.

Change 3299447 on 2017/02/13 by Graeme.Thornton

	Fix AES and pak signing key embedding for content only projects
	 - Force temp target when any keys are specified by project config

Change 3299649 on 2017/02/13 by Steve.Robb

	PLATFORM_HAS_DEFAULTED_OPERATORS fixed.
	Other obsolete compiler switches removed.

Change 3299787 on 2017/02/13 by Steve.Robb

	IsAbstract() for testing if a reflected native type contains pure virtual functions.  Needed for BP nativization.

	#fyi robert.manuszewski

Change 3300576 on 2017/02/13 by Ben.Marsh

	EC: Add support for starting builds on any agent type. Mapping from agent types to resource pools is stored in an EC property sheet (/Generated/<Stream>/AgentTypes), allowing EC procedures to map it to a resource pool from a parameter.

Change 3300600 on 2017/02/13 by Ben.Marsh

	EC: Add the -ClearHistory argument to UAT run to export BuildGraph settings, to allow running on incremental workspaces.

Change 3300624 on 2017/02/13 by Ben.Marsh

	Switch incremental builds for all streams to start up on the incremental agent.

Change 3302134 on 2017/02/14 by Steve.Robb

	UnrealCodeAnalyzer removed.

	#fyi ben.marsh,robert.manuszewski

Change 3302639 on 2017/02/14 by Ben.Zeigler

	Fix crash cooking odin with default command line
	#jira UE-41952 Delete StealthTeleport map that crashes on load, and update default cook list that gets used if nothing specified

Change 3303002 on 2017/02/14 by Ben.Zeigler

	#jira UE-41061 Fix it so editor only filtering on savepackage is uniformly applied regardless of if it's at package or object level
	#jira UE-41880 Rewrite editor/client/server only filtering logic in SavePackage to fix various bugs. It now does all of the filtering up front, and won't process any filtered objects for imports or exports
	Rename NotForEditorGame to NotAlwaysLoadedForEditorGame and improve comments, this flag says that the asset should be loaded EVEN IF it is editor only, it does not affect loading for normal objects
	Change the non-map cook flags to RF_Public instead of RF_Standalone. Blueprint classes aren't RF_Standalone so were only being cooked before due to an accident of the dependency checker
	Change it so anything with a Transient outer is marked transient at save time. These objects would not save out properly anyway
	Fix it so -cooksinglepackage works properly again and excludes localization and startup packages
	Tested with Fortnite and Odin, Odin works but with lots of warnings with nativization on which I need to investigate

Change 3303084 on 2017/02/14 by Ben.Zeigler

	Attempt to get Nativization and EDL working without warnings

	Change 3305153 on 2017/02/15 by Ben.Zeigler

	Fix Fortnite and Orion cook, I don't understand why this passed my local testing
	Fix the CDO subobject finder to actually return things instead of doing nothing, and fix a shadow variable warning

Change 3305959 on 2017/02/16 by Gil.Gribb

	UE4 - Tweaked out the EDL loader for the switch with benefits to all platforms.

Change 3306159 on 2017/02/16 by Ben.Marsh

	Fix path to target binaries when building non-monolithic in a unique build environment.

Change 3306584 on 2017/02/16 by Steve.Robb

	UEnum internal functions renamed from Index to Value.
	GetValueAsString_Internal() parameter now takes an int64, as is expected for enum values.

	#fyi ben.zeigler

Change 3307836 on 2017/02/16 by Ben.Zeigler

	#jira UE-42055 Load very old redirects in cooked builds. Matinee has no way of resaving redirects, so as long as matinee exists we need to keep them around forever, or fix matinee manually
	Fixes lighting in Infiltrator demo

Change 3307929 on 2017/02/16 by Ben.Zeigler

	#jira UE-42055 Second half of matinee redirector fix

Change 3308840 on 2017/02/17 by Matthew.Griffin

	Reimplementing CL#3305808 from 4.15

		Changed QA label build process so that it only allows version with 3 components (we always add the .0 for initial releases)

Change 3309115 on 2017/02/17 by Ben.Marsh

	Windows: Fix the GetModulesDirectory() function always returning the engine binaries directory. It's possible to build non-monolithic targets which output all engine binaries to the game binaries directory - a requirement to being able to set game-specific defines or build settings, because we don't want shared engine binaries to be tainted with them. The module manager needs to be able to operate early on,  before many of the game settings have been initialized, so just return the directory containing the Core module instead.

Change 3309120 on 2017/02/17 by Ben.Marsh

	Fix support for creating modular builds which don't use the shared build environment.

Change 3309125 on 2017/02/17 by Ben.Marsh

	Require that -CookDir arguments are specified separately on the command line. '+' is a valid path character (and common in build versions), so we shouldn't treat it as an argument separator.

Change 3309128 on 2017/02/17 by Ben.Marsh

	Fix UnrealPak failures when enumerating all files from a source directory, if that directory happens to contain spaces.

Change 3309131 on 2017/02/17 by Ben.Marsh

	Fix list of discovered assets being cleared by second call to FindFilesRecursive() when building DDC. Disable the -cookdir parameter again.

Change 3309140 on 2017/02/17 by Ben.Marsh

	UAT: Fix exception moving a file from one location to another if the target directory does not exist.

Change 3309212 on 2017/02/17 by Ben.Marsh

	Fixes/improvements for mod editor and code mods:

	* A separate top-level project is generated for each code mod in the Visual Studio solution.
	* Plugin descriptors now have a flag to identify themselves as mod as opposed to a regular game plugin, which prevents project plugins from getting their own VS project. New mods created with the mod editor will have this set by default, as do the three existing sample mods.
	* Cleaning and building code mods will never modify engine binaries. Presence of the Engine/Build/InstalledProjectBuild.txt file is used to indicate running in this environment. This flag also disables options to edit metadata for non-mod plugins in installed builds.
	* Plugin browser now includes a separate category for mods.
	* Mod editor now behaves as an "installed" program by default, and will use the user's home folder for storing settings.

Change 3309231 on 2017/02/17 by Steve.Robb

	Fix for Ar << bSomeBool where Ar is a derived class which overrides an operator<<.

	#jira UE-42052

Change 3309248 on 2017/02/17 by Ben.Marsh

	Add support for hot-reloading game plugin modules from Visual Studio, as long as their module returns IsGameModule() = true.

Change 3309257 on 2017/02/17 by Ben.Marsh

	Prevent game binaries from being renamed for hot reload when working with installed projects.

Change 3309355 on 2017/02/17 by Steven.Hutton

	Changes to make the website compatible with the new database changes.

Change 3309371 on 2017/02/17 by Ben.Marsh

	Fix exception on shutdown when running asset registry with threads disabled.

	#jira UE-41951

Change 3309389 on 2017/02/17 by Ben.Zeigler

	#jira UE-42051 Fix ensure and crash when loading a null asset ID via the LoadAsset BP node

Change 3309570 on 2017/02/17 by Gil.Gribb

	UE4 - Switch load time performace tweaks, plus abstracted the IO tracker and handle manager for other platforms and applied it to the PS4.

Change 3310039 on 2017/02/17 by Ben.Marsh

	BuildGraph: Prevent exception when trying to delete a file that does not exist.

Change 3311484 on 2017/02/20 by Chris.Wood

	CrashReportProcess crash add retry logic improvements (CRP v1.2.16)

Change 3311600 on 2017/02/20 by Matthew.Griffin

	Updated StripSymbols functions so that all platforms can deal with the source and target file being the same

Change 3311675 on 2017/02/20 by Steve.Robb

	FNativeClassHeaderGenerator::CurrentSourceFile stack replaced with C++ stack.

Change 3311893 on 2017/02/20 by Ben.Marsh

	UGS: Add support for notifying users if CIS steps fail for content changes. Badges which test content should be listed in the [Notifications] section of the project-specific INI file, through +ContentBadges= lines.

Change 3313966 on 2017/02/21 by Ben.Marsh

	Fix EC parsing of error messages output by the editor in the form "LogXYZ:Error:". Greedy optional subexpression in regex was matching everything until a space, so terminate a colon too.

Change 3314398 on 2017/02/21 by Ben.Zeigler

	#jira UE-42212 Fix shutdown of AnimGraph module to be safer

[CL 3315211 by Ben Marsh in Main branch]
2017-02-21 15:51:42 -05:00
Josh Adams
60b019520c Copying //UE4/Dev-Platform to //UE4/Dev-Main (Source: //UE4/Dev-Platform @ 3295257)
#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]
2017-02-09 19:20:55 -05:00
Ben Marsh
5275490168 Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3277940)
#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]
2017-01-30 16:52:08 -05:00