Commit Graph

230 Commits

Author SHA1 Message Date
Jack Porter
079be7f538 Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)
#rb None
#jira 0

[CL 4293080 by Jack Porter in Dev-Mobile branch]
2018-08-16 13:53:43 -04:00
Jack Porter
5434a02fed Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)
#rb None
#jira 0

[CL 4213959 by Jack Porter in Dev-Mobile branch]
2018-07-16 11:43:36 -04:00
Jack Porter
2792c7c559 Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)
#jira 0
#rb None

[CL 4161603 by Jack Porter in Dev-Mobile branch]
2018-06-26 08:42:47 -04:00
Lauren Ridge
b46b1ce9ed Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 4048875)
#lockdown Nick.Penwarden
#rb none

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

Change 3808185 by Cody.Albert

	Added missing calls to FEditorViewportClient::AddReferencedObjects in overrides

Change 3809824 by Michael.Trepka

	Improved the way we generate groups in Xcode project's source code navigator. They are now sorted alphabetically and have correct paths so Xcode no longer displays them in red. Also, added __INTELLISENSE__ to preprocessor definitions for indexing to improve indexing without game header files generated.

Change 3810089 by Jamie.Dale

	Fixed PO files failing to import translations containing only whitespace

Change 3811281 by Matt.Kuhlenschmidt

	PR #4331: Toggle SIE shortcut only in PIE (Contributed by projectgheist)


Change 3813031 by Matt.Kuhlenschmidt

	Fix undocked tabs not dropping at users mouse location

	#jira UE-53427

Change 3813361 by Brandon.Schaefer

	Print what SDL video driver we are using

Change 3818430 by Matt.Kuhlenschmidt

	PR #4365: Incorrect font name and forgotten undef (Contributed by projectgheist)


Change 3818432 by Matt.Kuhlenschmidt

	PR #4366: Asset Color Strip updates correct on drag and drop (Contributed by projectgheist)


Change 3818436 by Matt.Kuhlenschmidt

	PR #4367: Improved logging (Contributed by projectgheist)


Change 3819886 by Matt.Kuhlenschmidt

	Add a way to optionally disable the warning about referenced actors being moved to other levels.  Useful for bulk actor moves via script

Change 3819888 by Matt.Kuhlenschmidt

	Avoid crashing when a window size becomes too large to render.  Instead just ensure and clamp to the maximum allowed size.  Avoids crashes where the screen dimensions are saved with super large numbers for unknown reasons

Change 3821773 by Brandon.Schaefer

	Fix crash when importing to level

	#jira UE-31573

Change 3821892 by Jamie.Dale

	Improved the localized asset cooking so that it only cooks L10N variants if their source asset is cooked

	#jira UE-53010

Change 3823714 by Christina.TempelaarL

	#jira UE-52179 added support for grayscale PSD files

Change 3826805 by Christina.TempelaarL

	#jira UE-49636 SceneCaptureComponent2D hidden actor and show only actors disabled in blueprints
	#jira UE-53445 SceneCaptureComponent2D hidden actors always disabled in details layout

Change 3828444 by Anthony.Bills

	Add LXC container script for building third party libraries.

	The intention is that this should become the only way to rebuild the third party libraries that require system dependencies not included in the cross-compile toolchain and also to rebuild the toolchains. Other third party libraries without any system dependencies could be rebuilt via the cross-compile toolchains/UBT.

	This script has been tested running on CentOS 7 and Ubuntu 17.10.

	Buy default the x86 and x86_64 builds will be built against a CentOS 6 container (and targeting glibc 1.12) and the aarch64 and armhf builds will use an Ubuntu Ubuntu Trusty (14.04) but this is not yet complete.

Change 3828754 by Brandon.Schaefer

	Linux: Fix gamepad thumbstick clicks not registering (github #4209 thanks J??rn M??ller)

	#jira UE-45722

	#review-3828733 Arciel.Rekman

Change 3830414 by Brandon.Schaefer

	Remove circular referencing to a parent window. Move to use AddSP vs AddRaw as well to be safe manually remove ourselves from the selection event delegate list due to Linux pending deletion of windows.
	Looks like this should fix  UE-28322 as well which I've removed the work around placed in for that.

	#jira UE-53918

	#review @michael.trepka, @matt.kuhlenschmidt, @arciel.rekman

Change 3830916 by Brandon.Schaefer

	More verbose message about missing VK extensions (from Marcin Undak)

	#review-3830710 marcin.undak, arciel.rekman

Change 3831339 by Brandon.Schaefer

	Default to as-needed for debug mode

	#jira none

	#review-3830658 Arciel.Rekman

Change 3833102 by Jamie.Dale

	Re-added warning for duplicate package localization IDs when gathering asset localization

Change 3834600 by Jamie.Dale

	Optimized asset registry filter intersection

Change 3838024 by Brandon.Schaefer

	Remove tracking of CLion/CMake build files (from github #4346 thanks reapazor!)

	#jira UE-53551

	#review-3835803 arciel.rekman

Change 3839969 by Michael.Dupuis

	#jira UE-52289: When OnRegister is called on the component make sure our PerInstanceRenderData is up to date
	Prevent a possible crash if ClearInstanceSelection was called on a component with no PerInstanceRenderData existing

Change 3840049 by Michael.Dupuis

	#jira UE-52975: Was always performing the equivalent of an Add, so now we use the Transform during the duplicate

Change 3840071 by Matt.Kuhlenschmidt

	- Combine some shader params for slate in order to reduce overhead setting uniform buffers
	- Added better stats for slate draw call rendering
	- cleaned up huge lambda in Slate rendering main function so we can read the main slate rendering function again

Change 3840291 by Michael.Dupuis

	#jira UE-53053: Was having a mismatch between the remove reorder and the actual remove

Change 3840840 by Michael.Dupuis

	#jira UE-53944: Make sure the LOD generated is in the valid range to prevent the crash

Change 3842072 by Michael.Dupuis

	#jira UE-50299: Include NumSubsection in calculation of component quad factor

Change 3842487 by Christina.TempelaarL

	#jira UE-50573 HighResShot has wrong res in immersive mode

Change 3845702 by Matt.Kuhlenschmidt

	PR #4381: DefaultASTCQualityBySpeed too high max value. (Contributed by kallehamalainen)


Change 3845706 by Matt.Kuhlenschmidt

	PR #4388: Only restore window if minimized (Contributed by projectgheist)


Change 3845993 by Christina.TempelaarL

	#jira UE-41558 crash when selecting PostProcessingVolumes in separate levels

Change 3856395 by Brandon.Schaefer

	No longer using ALAudio on Linux

	#jira UE-53717

Change 3858324 by Michael.Trepka

	Preserve command line arguments in Xcode project when regenerating it

Change 3858365 by Michael.Dupuis

	#jira UE-52049: There was a case where adding and removing multiple time would lead to reordering the instances and this would cause the regeneration of the random stream for all the reorded instances.

Change 3858492 by Michael.Trepka

	Updated dependencies for Mac dSYM files so that only cross-referenced modules have their dSYMs recreated on subsequent builds instead of all modules.

Change 3859470 by Michael.Trepka

	CIS fix. Make sure a scheme file exists before trying to read it when generating Xcode project.

Change 3859900 by Joe.Conley

	Fix for "Check Out Assets" window not properly receiving focus.

Change 3865218 by Michael.Dupuis

	#jira UE-45784: Exposed the possibility to edit LDMaxDrawDistance

Change 3866957 by Michael.Dupuis

	#jira UE-42509: Added BodyInstance to ULandscapeSplineSegment and ULandscapeSplineControlPoint
	Deprecated bEnabledCollision and migrate data as it's replaced by BodyInstance

Change 3867220 by Cody.Albert

	Fixed Project Launcher scrollbar to properly stay anchored at the bottom of the scroll area.

Change 3869117 by Michael.Dupuis

	#jira UE-42509:Fixed compile error when not having editor data

Change 3872478 by Arciel.Rekman

	Linux: disable PIE if compiler enables it by default.

Change 3874786 by Michael.Dupuis

	#jira UE-46925: Remove the guessing functionality when importing a heightmap, and instead propose to the user valid size that can be used for the import through a combo button.
	Improved usability of the UI by disabling size field when no file was specified

Change 3875859 by Jamie.Dale

	Implemented our own canonization for culture codes

Change 3877604 by Cody.Albert

	We now validate actor names passed to SetActorLabel to ensure None isn't passed in, which can corrupt levels

Change 3877777 by Nick.Shin

	PhysX build fix - this came from CL: 3809757

	#jira UE-54924  Cannot rebuild Apex/PhysX/NvCloth .emscripten missing

Change 3881693 by Alexis.Matte

	Fix local path search to not search in memory only

	#jira UE-55018

Change 3882512 by Michael.Dupuis

	#jira none : Fixed screen size calculation to take aspect ratio into account correctly

Change 3886926 by Arciel.Rekman

	Linux: fixed checking clang settings during the cross-build (UE-55132).

	#jira UE-55132

Change 3887080 by Anthony.Bills

	Updated SDL2 build script.

	- Now allows compiling inside a CentOS 6 or Ubuntu 12.04 container with wayland support when using the ContainerBuildThirdParty.sh.
	- Added multiple build arch support to the BuildThirdParty script and pass this down to the SDL2 build script.

Change 3887260 by Arciel.Rekman

	Linux: fix leaking process handles in the cross-toolchain.

Change 3889072 by Brandon.Schaefer

	Fix RPath workaround, to better handle both cases

	#jira UE-55150

	#review-3888119 @Arciel.Rekman, @Ben.Marsh

Change 3892546 by Alexis.Matte

	Remove fbx exporter welded vertices options

	#jira UE-51575

Change 3893516 by Michael.Dupuis

	Remove static mesh instancing async buffer filling, as with all the changes made, it's no longer necessary, the cost of loading very large buffer is negligable

	Rebuild the occlusion tree when using foliage.DensityScale with something other than 1.0

Change 3894365 by Brandon.Schaefer

	Pass FileReference over a raw string to the LinkEnvironment

	#jira none

	#review-3894241 @Ben.Marsh, @Arciel.Rekman

Change 3895251 by Brandon.Schaefer

	Use X11 pointer barriers to bound the cursor to a region over warping the pointers. Patch from Cengiz

	#jira UE-25615
	#jira UE-30714

	#review-3894886 @Arciel.Rekman

Change 3897541 by Michael.Dupuis

	#jira UE-53787: Added guard if for some reason the material is null we should not try to draw using this material

Change 3904143 by Rex.Hill

	#jira UE-55366: Fix crash when overwriting existing level during level save as
	#jira UE-42426: Map '_BuiltData' can now be deleted when selected at same time as map

	- Map '_BuiltData' package is now garbage collected when switching maps in the editor

Change 3906373 by Brandon.Schaefer

	Fix splash image. Use alias format for big/little endian machines.

	#jira none

Change 3906711 by Rex.Hill

	#jira UE-42426: BuiltData now deleted with maps

Change 3907221 by Cody.Albert

	Add support for relative asset source paths in content plugins

Change 3911670 by Alexis.Matte

	Fix assetimportdata creation owner

	#jira UE-55567

Change 3912382 by Anthony.Bills

	Linux: Add binaries for GoogleTest and add to BuildThirdParty script.

Change 3914634 by Cody.Albert

	Added missing include that could cause compile errors if IWYU was disabled.

Change 3916227 by Cody.Albert

	Fixing some cases where we check #ifdef WITH_EDITOR instead of #if WITH_EDITOR

Change 3917245 by Michael.Dupuis

	#jira UE-35097: Fixed crash when creating a new landscape with 2x2 subsection and material containing grass spawning

Change 3918331 by Anthony.Bills

	Linux: Bundled Mono - Explicilty pick libc.so.6 as libc.so is a linker script and store the config file directly.

Change 3920191 by Rex.Hill

	#jira UE-44197 Fix saving sub-level level causing MapBuildData to be deleted

	Improved MapBuildData rename, move, duplicate, copy

Change 3920333 by Matt.Kuhlenschmidt

	Render target clear color property now settable in editor

	#jira UE-55347

Change 3926094 by Michael.Dupuis

	#jira UE-51502: Added some min/max values to foliage and grass settings to prevent overflow/crash

	#coderevew jack.porter

Change 3926243 by Michael.Dupuis

	#jira UE-54669: cleaned up invalid/duplicate shader and moved some shaders to appropriate list

Change 3926760 by Jamie.Dale

	Added support for TTC/OTC fonts

	These can be used via a sub-face index on FFontData, which can be set via a new combo in the font editor. You can also see the cached list of sub-faces within a font file from the UFontFace asset.

Change 3927793 by Anthony.Bills

	Mono: Remove SharpZipLib and references from bundled Mono.

	#review-3887212 @ben.marsh, @michael.trepka

Change 3928029 by Anthony.Bills

	Linux: Add support for UnrealVersionSelector.

	- Supports using UVS to launch without a project file. This will then launch the selected engine's project wizard.
	- Linux UVS uses Slate for the version selection and error log dialogs.
	- Mime-types and desktop file support added to DesktopPlatformLinux to allow associating with UVS as per the Windows binary and git builds.
	- Icons added for Linux.

	#review-3882197 @arciel.rekman, @brandon.schaefer

Change 3931293 by Alexis.Matte

	Add generic Levenshtein edit distance to core algo. This algorithm will help suggesting name matching when users have to resolve material name conflict when re-import fbx meshes.
	Add also plenty of automation tests for it.

	#jira none

Change 3931436 by Arciel.Rekman

	Stop RHI thread before shutting down RHI.

	- Prevents crashes for some drivers that create TLS objects with destructors; those destructors will get called after the thread exited, but the library will already be unloaded on RHI shutdown.

Change 3934287 by Alexis.Matte

	Fix crash when re-importing skeletal mesh. Skinned component render data resource is now release when re-importing.

	#jira none

Change 3937585 by Lauren.Ridge

	Added labels to the colors stored in the theme bar.

Change 3937738 by Alexis.Matte

	Make sure content browser do not show a preview asset created when we cancel an export animation preview

	#jira UE-49743

Change 3941345 by Michael.Dupuis

	#jira UE-26959: Prevent reusing multiple type the same grass type into the same material grass output node

Change 3941453 by Michael.Dupuis

	#jira UE-47492: Added a guard to validate LayerIndex

Change 3942065 by Jamie.Dale

	Fixed crash trying to use FSlateApplication when it wasn't available (eg, in a commandlet)

Change 3942573 by Alexis.Matte

	Fix static analysis

Change 3942623 by Michael.Dupuis

	#jira 0
	Cast to ulong as TaskIndex * NumStripes could exceed an int limit and add an assert if the wraparound is negative

Change 3942993 by Matt.Kuhlenschmidt

	PR #4547: Verify the return value of FT_New_Memory_Face (Contributed by jorgenpt)


Change 3942998 by Matt.Kuhlenschmidt

	PR #4554: Cleanup log printing (Contributed by projectgheist)


Change 3943003 by Matt.Kuhlenschmidt

	PR #4534: Prevent Fatal log when alt tabbing during a level save (Contributed by projectgheist)


Change 3943011 by Matt.Kuhlenschmidt

	PR #4518: edit (Contributed by pdlogingithub)


Change 3943027 by Matt.Kuhlenschmidt

	PR #4524: Notifications always render on the screen with the main viewport (Contributed by projectgheist)


Change 3943074 by Matt.Kuhlenschmidt

	PR #4484: Add group actor to folder (Contributed by ggsharkmob)


Change 3943079 by Matt.Kuhlenschmidt

	PR #4431: Git Plugin: replace usage of the 2 cli args "--work-tree" and "--git-dir" by "-C" (Contributed by SRombauts)


Change 3943092 by Matt.Kuhlenschmidt

	PR #4434: Git plugin: configure the default remote URL 'origin' (Contributed by SRombauts)


Change 3943132 by Matt.Kuhlenschmidt

	PR #4247: Add File picker to Git Path setting on GitSourceControl (Contributed by shiena)


Change 3943141 by Matt.Kuhlenschmidt

	PR #4303: Fix ULevelExporterT3D so that it works in a commandlet (Contributed by DSDambuster)


Change 3943349 by Jamie.Dale

	Cleaned up PR #4547

	Made the assert non-fatal to avoid it being able to take down the editor if you load up a bad font.
	Fixed some code that was deleted during the merge.

Change 3943976 by Michael.Trepka

	Copy of CL 3940687

	Fixed long link times when building for Mac in Debug by passing -no_deduplicate flag to the linker, which is what Xcode does in Debug configs.

	#jira none

Change 3944882 by Matt.Kuhlenschmidt

	Fix a few regressions with scene viewport activation locking can capturing the cursor in editor

	#jira UE-56080, UE-56081

Change 3947339 by Michael.Dupuis

	#jira UE-55664: Fixed undo/redo buffer handling so we remove from the beginning of the buffer during undo buffer where buffer is at max memory and from the end during redo operation.
	Fixed cancel also to re add removed transaction at the end or the start depending if we're doing a redo or undo operation
	Fixed the Undo History UI to listen to an event when the undo buffer changed instead of checking every frame, as when the buffer was full, no changes would occur, thus no UI update.

Change 3948179 by Jamie.Dale

	Fixed monochromatic font rendering

	- All non-8bpp images are now converted to 8bpp images for processing in Slate.
	- We convert the gray color of any images not using 256 grays (eg, monochromatic images that use 2 grays).
	- Fixed a case where the temporary bitmap wasn't being deleted.
	- Fixed a case where the bitmap could be used after it was deleted.
	- Added a CVar (Slate.EnableFontAntiAliasing) to control whether you want anti-aliased (256 grayscale) rendering (default), or monochromatic (2 grayscale) rendering.

Change 3949922 by Alexis.Matte

	Ensure fbx node name are not empty when loading a fbx file. I use the same naming convention as Maya

	#jira UE-56079

Change 3950202 by Rex.Hill

	Fix crash during editor asset automation tests.

	Now skips showing modal progress window when opening asset editor window. ActiveTopLevelWindow is not set when modal windows are open.

	#jira UE-56112

Change 3950484 by Michael.Dupuis

	#jira UE-52176: delete the Cluster tree when the builder is no longer needed

Change 3954628 by Michael.Dupuis

	Bring back 4.19/4.19.1 Landscape changes

Change 3957037 by Michael.Dupuis

	#jira UE-53343: Add foliage instances back when changing component size
	Changed the formulation for the Clip/Expand behavior to make it more explicit on what will happen
	Added SlowTask stuff to manage big landscape change

Change 3959020 by Rex.Hill

	Rename/move file MallocLeakDetection.h

Change 3960325 by Michael.Dupuis

	Fixed static analysis

Change 3961416 by Michael.Dupuis

	#jira UE-46100: Exposed UseDynamicInstanceBuffer on Foliage type, so user can decide if they want to update them dynamically
	#jira UE-55092: Fixed the warning to appear when having resource array as empty but VB as set up
	Added data conssitency that when using Dynamic buffer, Keep CPU Access should also be true, even if implicitly it's already the case, now it's explicit

Change 3962372 by Michael.Trepka

	Copy of CL 3884121

	Fix for SProgressBar rendering incorreclty on Mac

	#jira UE-56241

Change 3964931 by Anthony.Bills

	Linux: Add cross-compiled binary of UVS Shipping.

Change 3966719 by Matt.Kuhlenschmidt

	Fix parameters out of order here

	#jira UE-56399

Change 3966724 by Matt.Kuhlenschmidt

	PR #4585: Export symbols for the FDragTool (Contributed by Begounet)


Change 3966734 by Matt.Kuhlenschmidt

	PR #4596: fix the slider issue of the HighResolutionScreenshot window (Contributed by mamoniem)


Change 3966739 by Matt.Kuhlenschmidt

	Removed duplicated code

	#jira UE-56369

Change 3966744 by Matt.Kuhlenschmidt

	PR #4602: Fixes check for existing extensions when generating "All Extensions". (Contributed by PhilBax)


Change 3966758 by Matt.Kuhlenschmidt

	PR #4604: Fixed an issue where the Modules and DebugTools tabs would be unrecognized after startup if docked in the level editor (Contributed by tstaples)


Change 3966780 by Matt.Kuhlenschmidt

	Fix crash accessing graph node title widgets when objects have become stale.

	#jira UE-56442

Change 3966884 by Alexis.Matte

	Fix speedtree uninitialized values

	#jira none

Change 3967568 by Alexis.Matte

	Do not override the screensize when importing a skeletal mesh, let the value set by the AddLodInfo function

	#jira UE-56493

Change 3968333 by Brandon.Schaefer

	Fix order of operation

	#jira UE-56400

Change 3969070 by Anthony.Bills

	Linux: Make sure to set the UE_ENGINE_DIRECTORY

	#jira UE-56503

	#review-3966609 @arciel.rekman, @brandon.schaefer

Change 3971431 by Michael.Dupuis

	#jira UE-56515: Fixed an issue where ForcedLOD > MaxLOD and make sure that LastLOD will at least contain current streamed in LOD.
	#jira UE-56517: When using ParallelInitView 1 there was a memory leak related to a reallocate that happen with the TArray of FMemstack
	Pass correctly LODDistanceFactor instead of View.LODScale as we do not want StaticMeshScale to affect us.

Change 3971467 by Matt.Kuhlenschmidt

	Fixed crash deleting a texture with texture painting on it

	#jira UE-56994

Change 3971557 by Matt.Kuhlenschmidt

	Fix temporary exporter objects being potentially GC'd and causing crashes during export

	#jira UE-56981

Change 3971713 by Cody.Albert

	PR #4597: [FPS Template] Small null pointer check fix and cleanup (Contributed by TheCodez)


Change 3971846 by Michael.Dupuis

	#jira UE-56517: Properly "round" the count so we have the right amount of memory reserved
	#jira UE-56515: Still had a edge case left, so when using forced lod i simply make sure the value is in valid range, and allocate all the required data for this range

Change 3973035 by Nick.Atamas

	Line and Spline rendering changes:
	 * Lines/Splines now use 1 UV channel to anti-alias (this channel can be used for texturing)
	 * Anti-aliasing filter now adjusted based on resolution
	 * Modified Line/Spline topology to accomodate new UV requirements
	 * Disabled vertex snapping for anti-aliased lines/splines; previously vertexes were snapped, but vertex positions did not affect line rendering (behavior effectively unchanged)
	 * Splines now adaptively subdivided to avoid certain edge-cases

Change 3973345 by Nick.Atamas

	- Number tweaks to maintain previously perceived wire thickness in various editors.

Change 3977764 by Rex.Hill

	MallocTBB no longer debug fills bytes in development configuration

Change 3978713 by Arciel.Rekman

	UVS: Fix stale dependency.

Change 3980520 by Matt.Kuhlenschmidt

	Fix typo

	#jira UE-57059

Change 3980557 by Matt.Kuhlenschmidt

	Fixed negative pie window sizes causing crashes

	#jira UE-57100

Change 3980565 by Matt.Kuhlenschmidt

	PR #4628: Fixed revert action, now correctly uses CanRevert() condition (Contributed by Kryofenix)


Change 3980568 by Matt.Kuhlenschmidt

	PR #4626: UE-57111: Handle CaptureRegion for HighResShot in PIE (Contributed by projectgheist)


Change 3980580 by Matt.Kuhlenschmidt

	PR #4567: [Editor UI] Pick Parent Class dialog: set keyboard focus and handle Escape & Enter (Contributed by SRombauts)


Change 3980581 by Matt.Kuhlenschmidt

	PR #4565: [Editor UI] Add C++ Class dialog: set keyboard focus and handle Escape & Enter (Contributed by SRombauts)


Change 3981341 by Jamie.Dale

	Re-added GIsEditor condition around package namespace access

	#jira UE-55816

Change 3981808 by Ryan.Brucks

	Added LandscapeProxy functions to push RenderTarget data to Heightmaps and Weightmaps

Change 3983344 by Jack.Porter

	#include fixes for CL 3981808

	#jira 0

Change 3983391 by Jack.Porter

	One for #include fix for CL 3981808

	#jira 0

Change 3983562 by Michael.Dupuis

	#jira UE-53787: Make sure the material array is valid before trying to generate static mesh batch element
	#jira UE-56451: Instead of asserting, simply skip this element as it had invalid custom data anyway, so we can't render it

Change 3983600 by Matt.Kuhlenschmidt

	PR #4289: Pragma Once/Include guard cleanup (Contributed by projectgheist)


Change 3983637 by Matt.Kuhlenschmidt

	PR #4408: Add a template pregeneration hook (Contributed by mhutch)


Change 3984392 by Michael.Dupuis

	#jira UE-56314: Correctly apply LODBias on calculated LOD
	Fixed some Landscape popping that could occur when we were forcing a LOD that didn't match the component screen size

Change 3984950 by Rex.Hill

	Optimized texture import speed 2-3x depending on number of cpu cores and image size

Change 3985033 by Rex.Hill

	File drag and drop is more quick to respond when editor is in background

	#jira UE-57192

Change 3986218 by Jack.Porter

	Missing template parameter fix for CL 3981808

	#jira 0

Change 3986376 by Michael.Dupuis

	#jira UE-56453: Do not use the CreateDynamicMaterialInstance as it will change the parenting of the actor used material, instead simply use the function to generate the MID and parent it correctly.

Change 3989391 by Matt.Kuhlenschmidt

	Fix constant FName lookup in level editor when checking various states of level editor tabs

Change 3990182 by Rex.Hill

	Optimize editor startup time: GetCurrentProjectModules

Change 3990365 by Alexis.Matte

	Fix crash with spline mesh when the attach SM get a new imported LOD
	#jira UE-57119

Change 3991151 by Rex.Hill

	VR Editor module now waits to load images until VR mode activated in editor. Saves 0.4 seconds of editor startup time.

Change 3991164 by Rex.Hill

	Optimize editor startup time: FindModulePaths()
	- Invalidates cache when search paths added
	- Use cache during wildcard searches containing * and ?

Change 3995366 by Anthony.Bills

	Update BuildCrossToolchain script to allow a Linux host targeting multiple Linux architectures (including the hosts arch). Added a patch to support a gcc 4.8.5 based toolchain on windows (potentially useful for users crosscompiling using GCC and libstdc++ and targeting CentOS 7).

	#review-3848487 @arciel.rekman, @brandon.schaefer

Change 3996109 by Jamie.Dale

	Reworked BP error messages to be more localization friendly

	#jira UETOOL-1356

Change 3996123 by Michael.Dupuis

	#jira UE-57427: Update random color on load of the component
	#jira UE-56272:

Change 3996279 by Merritt.Cely

	Removed hardware survey from editor
	#jira an-2243

	#tests launched the editor

Change 3996626 by Alexis.Matte

	Fix crash when SkeletalMesh tangent buffer is empty after the build and we serialize the tangent array.

	#jira UE-57227

Change 3996663 by Max.Chen

	Sequencer: Fix fbx animation export - rotation and scale channels were flipped.

	#jira UE-57509
	#jira UE-57512
	#jira UE-57514

Change 4000331 by Brandon.Schaefer

	Add a GFNameTableForDebuggerVisualizers_MT back only for Unix under the Core module

	#review-3999426 @Arciel.Rekman

	#jira UE-55298

Change 4000450 by Matt.Kuhlenschmidt

	Another guard against a factory being destroyed during import

	#jira UE-57674

Change 4000459 by Matt.Kuhlenschmidt

	Added check for valid game viewport to see if this is the problem in UE-57677

	#jira UE-57677

Change 4000493 by Matt.Kuhlenschmidt

	Remove stale GC'd components when refreshing paint mode to prevent crashes

	#jira UE-52618

Change 4000683 by Jamie.Dale

	Fixed target being incorrect when added via the Localization Dashboard

	#jira UE-57588

Change 4000738 by Alexis.Matte

	Add a section settings to ignore the section when reducing

	#jira UE-52580

Change 4000920 by Alexis.Matte

	PR #4219: Fix for SColorGradingPicker preventing PIE (Contributed by projectgheist)
	author projectgheist projectgheist@gmail.com

Change 4001432 by Alexis.Matte

	Add a fbx re-import resolve material windows, user can now help resolving the material in case the importer fail to found a match.

Change 4001447 by Jamie.Dale

	Fixed property table not working with multi-line editable text

Change 4001449 by Jamie.Dale

	PR #4531: Localization multiline fix (Contributed by Lallapallooza)


Change 4001557 by Alexis.Matte

	Fix a check in fbx scene importer, in case the user import a fbx LOD group with no geometry under it

	#jira UE-57676

Change 4002539 by Alexis.Matte

	Make the fbx importer global transform options persist in the config file
	#jira UE-50897

Change 4002562 by Anthony.Bills

	Linux: Enable UVS registering for git builds only and remove old Mono and pre-UVS script code.

Change 4003241 by Alexis.Matte

	Fix the staticmesh import socket logic, it was duplicating socket when re-importing

	#jira UE-53635

Change 4003368 by Michael.Dupuis

	#jira UE-57276:
	#jira UE-56239:
	#jira UE-54547:
	Make sure we can't go above MaxLOD even for texture streaming

Change 4003534 by Alexis.Matte

	Fix re-import mesh name match

	#jira UE-56485

Change 4005069 by Michael.Dupuis

	#jira UE-57594: Add a guard to prevent crash if we have an invalid resource for the heightmap texture (happen when component is deleted, for example)

Change 4005468 by Lauren.Ridge

	Widgets should not be removed from parent when they are pending GC

	#jira UE-52260

Change 4006075 by Michael.Dupuis

	Fixed foliage density scaling to be applied even in editor, except in Foliage edit mode.

Change 4006332 by Arciel.Rekman

	UBT: Adding support for bundled toolchains on Linux.

	- Authored by Anthony Bills, with modifications.

Change 4007528 by Matt.Kuhlenschmidt

	PR #4665: Source control History Window: enlarge column Description (Contributed by SRombauts)


Change 4007531 by Matt.Kuhlenschmidt

	PR #4656: UE-57200: Ignore reference to actor if same actor (Contributed by projectgheist)


Change 4007548 by Matt.Kuhlenschmidt

	PR #4664: Set Password on EditableText (Contributed by projectgheist)


Change 4007730 by Brandon.Schaefer

	Add a new way to symbolicate symbols for a crash at runtime

	Two new tools are used for this.
	1) dump_syms Will generate a symbol file, which is to large to read from at runtime
	2) BreakpadSymbolEncoder Takes the dump_syms file and encodes it in such a way we can do
	    a binary search at runtime to find a Program Counter to a symbol we are looking for

	#review @Arciel.Rekman, @Anthony.Bills

	#jira UETOOL-1206

Change 4008429 by Lauren.Ridge

	Fixing undo bug when deleting user widgets from the widget tree

	#jira UE-56394

Change 4008581 by Cody.Albert

	Reinitialize needs to set the audio and caption tracks in addition to the video track or the currently selected track will be lost

Change 4009605 by Lauren.Ridge

	Added Recently Opened assets filter under Other Filters in the Content  Browser

Change 4009797 by Anthony.Bills

	Linux: Update MultiArchRoot path to not cache. Move in tree toolchain location to match UBT convention and make sure the MultiArchRoot is checked before the system.

Change 4010266 by Michael.Trepka

	Copy of CL 4010052

	Moved some key event handling calls to the main thread on Mac to satisfy new macOS requirements

	#jira UE-54623

Change 4010838 by Arciel.Rekman

	Linux: limit allowed clang versions to 3.8-6.0.

Change 4012160 by Matt.Kuhlenschmidt

	Changed the messagiing on the crash reporter dialog to reflect new bug submission process

	#jira UE-56475

Change 4013432 by Lauren.Ridge

	Fix for non-assets attempting to add to the Content Browser's recent filter

	#jira none

Change 4016353 by Cody.Albert

	Improved copy/paste behavior for UMG editor:

	-Pasting in the designer while a canvas is selected will place the new widget under the cursor
	-Pasting multiple times while a canvas panel is selected in the hierarchy view will cascade the widgets starting at 0,0
	-Pasting while something that isn't a panel is selected is now allowed, and will cascade the pasted widgets off the position of the selected widget (as siblings)
	-Newly pasted widgets will now be selected automatically
	-Pasting multiple widgets at once will try and maintain their relative positions if they're being pasted into a canvas panel

Change 4017274 by Matt.Kuhlenschmidt

	Added some guards against invalid property handle access

	#jira UE-58026

Change 4017295 by Matt.Kuhlenschmidt

	Fix trying to apply delta to a mix of scene components and non scene components.  Its acceptable to not have scene components in the selected component list

	#jira  UE-57980

Change 4022021 by Rex.Hill

	Fix for audio desync and video fast-forwarding behavior.
	There long delay (500ms+) until samples start arriving unless we use RequestedTimeCurrent.
	After delay occurs samples begin arriving at accelerated speed until caught up to playback time leading to visual and audio problems.

	#jira UE-54592

Change 4023608 by Brandon.Schaefer

	Downscale memory if we dont have enough

	#jira UE-58073

	#review-4023609 @Arciel.Rekman

Change 4025618 by Michael.Dupuis

	#jira UE-58036: Apply world position offset correctly

Change 4025661 by Michael.Dupuis

	#jira UE-57681: Added guard to prevent possible crash if either we have an invalid material or the material parent is invalid

Change 4025675 by Michael.Dupuis

	#jira UE-52919: if no actor was found in the level skip moving the instances

Change 4026336 by Brandon.Schaefer

	Manually generate *.sym files for Physx3

	This should be done in the BuildPhysx file

Change 4026627 by Rex.Hill

	Fix memory leak fix when playing video and main thread blocks
	#jira UE-57873

Change 4029635 by Yannick.Lange

	Fix VRMode loading assets only when VRMode starts.
	#jira UE-57797

Change 4030288 by Jamie.Dale

	Null FreeType face on load error to prevent potential crashes

Change 4030782 by Rex.Hill

	Fix save BuildData after changing reflection capture in a new level
	#jira UE-57949

Change 4033560 by Michael.Dupuis

	#jira UE-57710: Added some guard to prevent crash/assert

Change 4034244 by Michael.Trepka

	Copy of CL 4034116

	Fixed arrow keys handling on Mac

Change 4034708 by Lauren.Ridge

	PR #4699: UE-8508: Update config file to keep folder color in sync (Contributed by projectgheist)


	#jira UE-58251

Change 4034746 by Lauren.Ridge

	PR #4701: Add option to close tabs to the right of the active tab (Contributed by jesseyeh)

	#jira UE-58277

Change 4034873 by Lauren.Ridge

	Fix for not being able to enter simulate more than once in a row.

	#jira UE-58261

Change 4034922 by Lauren.Ridge

	PR #4387: Commands mapped in incorrect location (Contributed by projectgheist)

	#jira UE-53752

Change 4035484 by Lauren.Ridge

	Tentative fix for crash on pasting comment. All other accesses to UMaterialExpressionComment check its validity first
	#jira UE-57979

Change 4037111 by Brandon.Schaefer

	Try to use absolute path from dladdr if we can to find the sym files

	#jira UE-57858

	#review-4013964 @Arciel.Rekman

Change 4037366 by Brandon.Schaefer

	Dont check the command line before its inited

	#review-4037183 @Arciel.Rekman
	#jira UE-57947

Change 4037418 by Alexis.Matte

	Remove the checkSlow when adding polygon

Change 4037745 by Brandon.Schaefer

	Use as much info as we can during ensure

	Just as fast as the old way but with more information

	#review-4037495 @Arciel.Rekman
	#jira UE-47770

Change 4037816 by Rex.Hill

	Import mesh optimization, BuildVertexBuffer

Change 4037957 by Arciel.Rekman

	UBT: make it easier to try XGE on Linux.

Change 4038401 by Lauren.Ridge

	Reordering is now correctly handled by undo. Reordering and then undoing will no longer cause a "ghost" widget to also be part of the tree.

	#jira UE-58206

Change 4039612 by Anthony.Bills

	Unix: Check for null StdOut and ReturnCode parameters, otherwise the code may dereference a null variable when the process fails to create.

Change 4039754 by Alexis.Matte

	Remove the Render meshdescription, no need to carry this temporary data in the staticmesh

Change 4039806 by Anthony.Bills

	Linux: UVS fixes

	- Update to use new Unix base platform.
	- Use bin/bash instead of usr/bin/bash (may need revisiting later).
	- Recompile Shipping version with changes.
	- Update Setup.sh to run from correct CWD (due to current limitations in the relative directory handling).

Change 4039883 by Lauren.Ridge

	PR #4576: Save editor config to file first time a fav folder is added in the co. (Contributed by projectgheist)

	#jira UE-56249

Change 4040117 by Lauren.Ridge

	Replacing widgets should now also clear out references to the widget

	#jira UE-57045

Change 4040790 by Lauren.Ridge

	Tentative fix for Project Launcher crash when platform info not found
	#jira UE-58371

Change 4042136 by Arciel.Rekman

	UBT: refactor of LinuxToolChain to make it leaner and more configurable.

	- Made it possible to override SDK passed to the toolchain.
	- Simplified the code by using the same executable names on Windows and Linux (as .exe is optional), except where File.Exists() is needed (also remove a few)
	- Some minor renames to make it clear that SystemSDK means system compiler (which otherwise may be unclear)
	- Made changes to accomodate the new debug format.

Change 4042930 by Brandon.Schaefer

	GCoreObjectArrayForDebugVisualizers was changed to FChunkedFixedUObjectArray reflect that in the Unix part

Change 4043539 by Brandon.Schaefer

	Fix callsite address being used at times for the Program Counter
	Fix only reporting the actual callstack and not the crash handling callstacks

	#review-4041370 @Arciel.Rekman
	#jira UE-58477

Change 4043674 by Arciel.Rekman

	Added Linux ARM64 (AArch64) lib for MikkTSpace.

	- Now required for standalone games due to EditableMesh runtime plugin.

Change 4043677 by Arciel.Rekman

	Linux: updated ARM64 (AArch64) version of SDL2.

Change 4043690 by Arciel.Rekman

	Linux: allow compiling VulkanRHI for AArch64 (ARM64).

Change 4045467 by Brandon.Schaefer

	Add Anthony Bills SetupToolchain.sh script

	Used to download the latest toolchain

Change 4045940 by Michael.Trepka

	Return empty list instead of null from Mac GetDebugInfoExtensions() in UBT

	#jira UE-58470

Change 4046542 by Alexis.Matte

	Fix skeletal re-import material assignation

	#jira UE-58551

Change 4048262 by Brandon.Schaefer

	Rebuild SDL with pulse audio libs

	#jira UE-58577

Change 3887093 by Anthony.Bills

	Add bundled mono binary for Linux.

	- Unify some of the script structure across Mac and Linux.
	- This currently uses the same mono C# assemblies as Mac to keep the additional source size down.
	- If the Mac mono version is updated, the Linux version will also need to be updated to match the same mono git revision.
	- The system version of mono can still be used by setting the UE_USE_SYSTEM_MONO env var to 1.

Change 4003226 by Michael.Dupuis

	Refactored StaticMeshInstancing to now use a command buffer to communicate with the GPU to prevent concurent access issues. It's mostly used in Editor or if runtime changes occur, otherwise the data is built and send to the GPU directly without keeping CPU copy.
	Changed how the density scaling was applied to be more optimal
	Removed UseDynamicInstanceBuffer as the concept is now irrelevant

Change 3833097 by Jamie.Dale

	Localization Pipeline Optimization

	Manifest/Archives:
	Added FLocKey to keep an immutable string and its hash. This is used in several places within manifests and archives to minimize string hashing. FLocTextHelper also now take these in its API.
	This also fixes some places where manifests were being iterated by key rather than source string (as this was causing redundant work).

	Portable Object:
	Cleaned up a lot of redundant code, changed things to use FLocKey, and simplified a lot of string manipulation to use algorithms instead (which proved to be faster).

	Asset Gathering:
	Optimized the way garbage collection runs while gathering from assets so that we avoid purging assets that we still need to gather from (or are still active dependencies). This also sorts the assets so that we can try and evict dependencies from memory as soon as possible (in much the same way that the cooker does).

	Automation:
	The gather commandlet can now take multiple configs to process. This is used by automation to avoid starting the editor several times (which can save a significant amount of start-up overhead).

[CL 4052378 by Lauren Ridge in Main branch]
2018-05-04 14:14:10 -04:00
Marcus Wassmer
25eed01c13 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 4041614)
#lockdown Nick.Penwarden

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

Change 3774677 by Arne.Schober

	DR - Deprecated SetLocal from the RHICmdlist
	Fixed some unnecessary PSO collisions.

Change 3809579 by Chris.Bunner

	Back out changelist 3774677.

	#jira UE-53483

Change 3810363 by Mark.Satterthwaite

	More random fixes to mtlpp: most important is the extension to Buffer that allows creation of sub-buffers that are merely views onto a sub-range of the parent. These sub-buffers are valid to use throughout the mtlpp API with two exceptions: they may not be used for visibilityResultsBuffers and Set*BufferOffset functions cannot take this offset into account (as the encoder does not hold onto the buffers and I don't want it to). In the case of Set*BufferOffset the caller has to know what is going on and in the case of visibilityResultsBuffers it'll just assert as it isn't sensible.

	This makes it *much* easier to do things like sub-buffer allocation, though the caller must be aware of the alignment restrictions of their intended usage as they are not possible to enforce. For example, a call to SetVertexBuffer requires an offset alignment must match the alignment of the data-type in the shader for "device" resources, or for "constant" data it must be max(4, sizeof(datatype)) on iOS and 256 on macOS. This should allow for much more tightly packed sub-allocations than earlier approaches, though older drivers (e.g. Mac OS X 10.11) enforce only the coarser "constant" data restriction everywhere.

Change 3810407 by Marcus.Wassmer

	PR #4322: ShadowSetup Bug Fix: Only stencil mask drawn meshes (Contributed by DSDambuster)

Change 3810676 by Guillaume.Abadie

	Makes r.Test.SecondaryUpscaleOverride work with any arbitrary pixel size.

Change 3810696 by Guillaume.Abadie

	Adds support for #include "../MyFile.ush" in the shader compiler.

Change 3810698 by Guillaume.Abadie

	Implements enum class based shader permutation dimension.

Change 3810699 by Guillaume.Abadie

	Implements Diaphragm DOF ground work.

Change 3811536 by Guillaume.Abadie

	Pulls the trigger on CircleDOF's setup pass for DiaphragmDOF.

Change 3811958 by Mark.Satterthwaite

	More fixes for mtlpp.

Change 3811964 by Mark.Satterthwaite

	Only views onto a mtlpp::Buffer should return a valid parent-buffer.

Change 3812604 by Guillaume.Abadie

	Changes Diaphragm DOF's source file layout.

Change 3812827 by Mark.Satterthwaite

	More missing/broken functionality in mtlpp fixed and fixed obvious leaks.

Change 3812920 by Guillaume.Abadie

	Adds support for per mip level UAV in FSceneRenderTarget.

Change 3812926 by Mark.Satterthwaite

	Change the way we handle mtlpp resource construction to avoid leaks.

Change 3812960 by Rolando.Caloca

	DR - vk - Disable DFGI

Change 3812968 by Rolando.Caloca

	DR - Linker fix

Change 3813318 by Mark.Satterthwaite

	Fix linear texture allocation from a buffer sub-view.

Change 3813326 by Mark.Satterthwaite

	Fix another Metal mtlpp sub-buffer allocation failure.

Change 3813328 by Guillaume.Abadie

	Removes global samplers in TAA for GL4, Vulkan and Switch.

Change 3813937 by Rolando.Caloca

	DR - Fix logs not getting dumped when r.DumpSCWQueuedJobs is on

Change 3813947 by Rolando.Caloca

	DR - noshaderworker should override r.XGEShaderCompile

Change 3817017 by Uriel.Doyon

	Fixed texture editor black screen
	#jira UE-53653

Change 3818568 by Rolando.Caloca

	DR - Fix log when shader jobs crash
	- Move log10 to common
	- Added COMPILER_VULKAN define

Change 3818603 by Uriel.Doyon

	Fix to static analysis warning

Change 3818623 by Rolando.Caloca

	DR - Workaround hlslcc loop unrolling bug

Change 3819070 by Uriel.Doyon

	Fix to stat duplication.

Change 3819105 by Uriel.Doyon

	Refactored volume sample shader to avoid using texture dimension.

Change 3819136 by Rolando.Caloca

	DR - vk - Per platform files (empty)

Change 3819180 by Rolando.Caloca

	DR - vk - Move defines out of config into per platform

Change 3819247 by Rolando.Caloca

	DR - vk - Remove more defines into platform settings

Change 3819318 by Rolando.Caloca

	DR - vk - Fixes for linking

Change 3819868 by Rolando.Caloca

	DR - vk - Linux & Android fixes

Change 3819873 by Guillaume.Abadie

	Adds support for PermutationId on r.DumpShaderDebugInfo=1

Change 3819940 by Rolando.Caloca

	DR - vk - Fix Linux issues

Change 3819956 by Rolando.Caloca

	DR - vk - Invalid check

Change 3819961 by Michael.Lentine

	Hide attributes when plugin is not present

Change 3819980 by Rolando.Caloca

	DR - vk - Standard validation always

Change 3820039 by Rolando.Caloca

	DR - vk - Fix invalid ensure

Change 3820326 by Rolando.Caloca

	DR - vk - Linux compile fix

Change 3820422 by Michael.Lentine

	Add back GBufferAO.

Change 3820433 by Rolando.Caloca

	DR - Fix D3D12 crash on 20 thread (10x2 cores) machines

Change 3821677 by Rolando.Caloca

	DR - vk - Win32 compile fix

Change 3821961 by Rolando.Caloca

	DR - Vulkan uses real UB by default on non-Android

Change 3821968 by Rolando.Caloca

	DR - vk - Update glslang 1.0.65.1

Change 3821969 by Uriel.Doyon

	Added support for stat groups that must be sorted by name. Defined by DECLARE_STATS_GROUP_SORTBYNAME.

Change 3821983 by Rolando.Caloca

	DR - vk - Change to static array (0.1ms on 10k draw calls)

Change 3824141 by Rolando.Caloca

	DR - vk - Fix static analysis
	- Bumped up some (c) 2017->2018

Change 3824355 by Rolando.Caloca

	DR - vk - Accessor to find out if a cmd buffer has been submitted

Change 3824420 by Rolando.Caloca

	DR - Sanity check number of queries per batch on D3D11 as to not break other RHIs

Change 3824463 by Rolando.Caloca

	DR - Removed dummy ensure for D3D12

Change 3824609 by Rolando.Caloca

	DR - vk - Linux compile fix

Change 3826074 by Mark.Satterthwaite

	Start IMP-caching the various descriptor types in mtlpp.

Change 3826098 by Rolando.Caloca

	DR - vk - Dump layer compile fixes

Change 3826113 by Rolando.Caloca

	DR - vk - Missing dump functions

Change 3826302 by Rolando.Caloca

	DR - vk - Compile fix
	- Change dump handles to %p

Change 3826635 by Mark.Satterthwaite

	Forward declarations required for mtlpp compilation without exposing Metal headers - plus fixes to the mtlpp test compiler.

Change 3827072 by Mark.Satterthwaite

	Switch some more mtlpp descriptors over to IMPTables from objc_msgSend.

Change 3827909 by Guillaume.Abadie

	Replaces diaphragm DOF's prefiltering with LDS bank coherent bilateral reduction, and implements 1/8 res background gathering pass.

Change 3827952 by Guillaume.Abadie

	Updates copy right to year 2018 on diaphragm DOF's new files.

Change 3828055 by Rolando.Caloca

	DR - vk - Rename in prep for changes

Change 3828229 by Guillaume.Abadie

	Avoids to log multiple time global shader type name that have multiple permutations when verifying global shader map.

Change 3828427 by Guillaume.Abadie

	Reimplements Max3x3 gathering post filtering for Diaphragm DOF with proper shader permutation.

Change 3829979 by Guillaume.Abadie

	Fixes a color NaN source in diaphragm DOF's TAA pass.

Change 3830116 by Rolando.Caloca

	DR - vk - Fix GPU queries/frame time on old system
	- New system in place, disabled temporarily

Change 3830169 by Rolando.Caloca

	DR - vk - Fix async pso creation crash

Change 3830193 by Rolando.Caloca

	DR - vk - CPU RHI thread improvement

Change 3830291 by Guillaume.Abadie

	Automatically lower the number of gathering rings on background half res gather pass as far CoC is getting smaller.

Change 3830300 by Rolando.Caloca

	DR - vk - Static analysis fix: Split VulkanCommon.h out of VulkanConfiguration.h

Change 3830589 by Mark.Satterthwaite

	In mtlpp cache the IMPTables for all the Metal @protocol's that are dependent on the MTLDevice, this avoids a mutex & map lookup. Also make all the concrete types store their IMPTable statically as it won't change.

Change 3830793 by Mark.Satterthwaite

	Fix a small number of bugs introduced with the mtlpp descriptor and table caching.

Change 3831491 by Jian.Ru

	Fix driver version unknown
	#jira UE-53688

Change 3832335 by Rolando.Caloca

	DR - vk - Change include

Change 3832550 by Rolando.Caloca

	DR - vk - Occlusion query rewrite WIP

Change 3832589 by Rolando.Caloca

	DR - vk - Minor refactor to pools in prep for timestamps

Change 3832618 by Rolando.Caloca

	DR - vk - Do not block timestamp queries

Change 3832636 by Rolando.Caloca

	DR - vk - Fix old timestamp queries

Change 3833138 by Rolando.Caloca

	DR - vk - Fix timestamp queries

Change 3833249 by Rolando.Caloca

	DR - vk - Test lock

Change 3833667 by Rolando.Caloca

	DR - vk - Old queries wait on the RHI thread now instead of the driver (disabled)

Change 3833907 by Daniel.Wright

	Fixed NextStartOffset UAV index out of bounds

Change 3833918 by Daniel.Wright

	D3D12 RHI: only refcount uniform buffers if GRHINeedsExtraDeletionLatency is false, which is no longer the case for PC or Xbox.  The refcounting was heavy on performance as reported by a licensee because FRHIResource uses atomics for refcounting, which is only necessary when GRHINeedsExtraDeletionLatency is disabled.

Change 3834852 by Rolando.Caloca

	DR - vk - Missing file

Change 3834858 by Guillaume.Abadie

	Implements r.DOF.MinimalFullresBlurringRadius

Change 3834979 by Rolando.Caloca

	DR - vk - Fix

Change 3836117 by Rolando.Caloca

	DR - vk - Update to 1.0.65.1

Change 3836122 by Rolando.Caloca

	DR - vk - Added r.Vulkan.SubmitOcclusionBatchCmdBuffer
	- Added new error codes/messages

Change 3836421 by Mark.Satterthwaite

	For the purposes of debugging and conformance testing mtlpp make it possible to compile *without* the IMP cache so that we call the underlying Objective-C.

Change 3836896 by Uriel.Doyon

	Fixed concurrency and exit issues  around d3d12 pipeline states on windows.

Change 3837385 by Rolando.Caloca

	DR - vk - Dump memory on OOM

Change 3837427 by Rolando.Caloca

	DR - vk - Change some arrays to array views

Change 3837800 by Guillaume.Abadie

	Implements SHADER_PERMUTATION_RANGE_INT to make contiguous integer permutations that does not start to 0.

Change 3838128 by Rolando.Caloca

	DR - vk - Support for non-cached memory types

Change 3838540 by Guillaume.Abadie

	Refactors Diaphragm DOF's CoC tile buffer under a single API for better maintainability.

Change 3838731 by Rolando.Caloca

	DR - vk - Descriptor pools per command buffer pool (turned off)

Change 3838961 by Rolando.Caloca

	DR - vk - Use ring buffer for per frame uniform buffers
	- Enable descriptor pools per layout recycled per command buffer

Change 3839087 by Rolando.Caloca

	DR - vk - Compile fixes for Android

Change 3839106 by Marcus.Wassmer

	PR #4413: Removing unnecessary call to FString::ToLower (Contributed by gsfreema)


Change 3839252 by Mark.Satterthwaite

	Fix mtlpp::Resource move operators.

Change 3839426 by Marcus.Wassmer

	Duplicate 380972
	Make PC GPU Benchmarks more reliable

Change 3840041 by Guillaume.Abadie

	Fixes shader compilation failure in TAA with alpha channel through post processing support.

Change 3840257 by Chris.Bunner

	Swapping a mul() to * in HLSLTranslator::Dot to allow scalar transformations per a UDN ticket.

Change 3840308 by Rolando.Caloca

	DR - vk - Support for UB & non-UB on emulation mode

Change 3840586 by Rolando.Caloca

	DR - Copy 3840577
	Fix for CPUs with more than 16 cores

Change 3840671 by Rolando.Caloca

	DR - vk - Copy from 3840663
	Fix for layout ensure on HMD projects on Vulkan

Change 3840980 by Rolando.Caloca

	DR - vk - Android compile fixes

Change 3841989 by Guillaume.Abadie

	Slices Diaphragm DOF's Gather pass in multi shader files, and CFLAG_StandardOptimization flag for faster iteration time.

Change 3842216 by Guillaume.Abadie

	Fixes DDOF's foreground alpha channel.

Change 3842217 by Guillaume.Abadie

	Implements r.DOF.MaximalForegroundBlurringRadius

Change 3842353 by Guillaume.Abadie

	Allows to disable foreground gathering with r.DOF.MaximalForegroundBlurringRadius=0

Change 3842747 by Rolando.Caloca

	DR - vk - Missing use of GPoolSizeVRAMPercentage
	- Support for smaller allocations if page size is not available

Change 3842791 by Rolando.Caloca

	DR - vk - Use 95% of available GPU memory to handle some fragmentation

Change 3843690 by Guillaume.Abadie

	Fixes diaphragm DOF's foreground after all this refactoring.

Change 3844439 by Guillaume.Abadie

	Improves Coc dilate pass to make the gather pass as fast as possible, but still without artifacts caused by the fast gathering optimisation.

Change 3844946 by Mark.Satterthwaite

	rd_route v1.1.1 with attached TPS approval.

	For macOS function interposition which is useful for debugging and the occasional workaround.

Change 3845164 by Mark.Satterthwaite

	Add LLM support for macOS, including tracking of memory allocated in Objective-C. This makes use of runtime method swizzling in the Objective-C runtime and the rd_route library I added for Richard Wallis, which allows for arbitrary runtime function interposition and allows me to hook the custom allocators used in Apple's many Objective-C frameworks on which the whole macOS edifice is built. Objective-C objects are charged to the calling scope as they are too common to impose their own without murdering frame rate.

	We would need a TPS approval for an iOS function interposition library for this to work fully on iOS, if desired in the short term discarding LowLevelFree events that aren't in the map rather than asserting will workaround the problem.

Change 3845849 by Marcus.Wassmer

	Fix clang and some normal refactor errors

Change 3846026 by Rolando.Caloca

	DR - vk - Descriptor set allocation scheme rewrite
	- Type hash for each pool
	- Desc sets Pool on device

Change 3846169 by Rolando.Caloca

	DR - vk - Remove old code for non-layout descriptor set pools

Change 3846205 by Mark.Satterthwaite

	Disambiguate the PatchControlPointOut struct definitions in Metal tessellation shaders at Apple's suggestion to avoid a metallib gotcha.

Change 3846346 by Arne.Schober

	DR - Missing Vector instructions

Change 3847037 by Arne.Schober

	DR - Fix issue with GPU skincache where the offset of the clothbuffer is not relative to the offset of the actual vertexbuffer.
	Fixed MorphTarget Skincache Offset mixxup

Change 3847275 by Marcus.Wassmer

	Copying MGPU to Dev-Rendering (//UE4/Dev-Rendering)

Change 3847464 by Rolando.Caloca

	DR - vk - Fix static analysis warning

Change 3847707 by Michael.Lentine

	Only use MorphTargetOffset when the shader enables morph targets.

Change 3848533 by Richard.Wallis

	Handle Metal adding FirstInstance into [[ instance_id ]] which is different to other APIs.  SV_InstanceID and SV_VertexID should now have their respective base instance and base vertex ID's subtracted before use in the shader.

	#jira UE-51716

Change 3848625 by Richard.Wallis

	Compile Fix

Change 3848725 by Rolando.Caloca

	DR - Remove use of Build/SetLocalGraphicsPipelineState

Change 3848797 by Rolando.Caloca

	DR - Deprecate Build/SetLocalGraphicsPipelineState

Change 3849237 by Arne.Schober

	DR - AddCustom Ver for ModelVertex Serialization

Change 3851247 by Rolando.Caloca

	DR - vk - Util functions

Change 3851523 by Arne.Schober

	DR - Update Reflection Comparission shot from the BuildFarm.

Change 3851859 by Rolando.Caloca

	DR - vk - Skip loader

Change 3851889 by Krzysztof.Narkowicz

	Removed lights with lighting channels out of tiled deferred light list. Tiled deferred lights do not support lighting channels and it's wasn't worth to add extra complexity to this shader in order support this special case.

	#jira UE-51512

Change 3852181 by Rolando.Caloca

	DR - vk - Linux compile fix

Change 3852547 by Uriel.Doyon

	Fixed Pre-Exposure shader compilation and Temporal AA issue.

	#jira UE-54276

Change 3852637 by Arne.Schober

	DR - Fixing Normal Automated Test Result

Change 3853167 by Richard.Wallis

	AvfPlayer - support for streaming media.  Due to an operator new/delete mismatch in Apples CFNetwork - we've had to change out one of that framework allocators using rd_route to avoid  the memory corruption.

	#jira UE-35637

Change 3853447 by Chris.Bunner

	Fixing typos.

Change 3853645 by Krzysztof.Narkowicz

	Fixed light functions on subsurface materials
	Removed strange code from blending between static and dynamic shadows

	#jira UE-50275

Change 3853660 by Rolando.Caloca

	DR - Fix OpenGL overwriting texture samplers on forward renderer

Change 3853945 by Mark.Satterthwaite

	Duplicate #3831616

	Fix the black ground scattering on Metal - we've had issues with the atmospheric fog calculations for a long time - one or more intermediate operations generates different precision on Metal so we end up passing -ve values into sqrt which then generates NaN/INF. For Metal when compiling this file and this file only #define sqrt() to sqrt(abs()) so that we don't see anymore unexpected black in atmospheric rendering. This is far from ideal but I don't want to make abs all inputs into every sqrt because AFAIK this is the only case where we have an issue, and until we to investigate each intermediate calculation that isn't ridiculously, soul-crushingly tedious, it isn't practical to identify the source of the error.

	#jira UE-53720

Change 3853966 by Mark.Satterthwaite

	Duplicate #3835852

	Fix tessellation shaders in Metal with Manual Vertex Fetch enabled:
	- The control points idnex buffer shouldn't collide with anything else.
	- We can't use the optimisation of loading texture width & height from the buffer meta-table in tessellation shaders as the combined stages don't guarantee not to clobber unused buffer slots and screw it up when we use linear textures.

	#jira UE-53851

Change 3854250 by Uriel.Doyon

	Fix fbx automation tests

Change 3854736 by Uriel.Doyon

	Added a tooltip to the EV100 slider in the exposure menu.
	Using game settings now disables the slider.
	#jira UE-53945

Change 3855047 by Jian.Ru

	Fix DFAO getting NANs when samples out of ViewRect
	#jira UE-54403

Change 3858197 by Krzysztof.Narkowicz

	View frustum shadow caster culling for pointlights/spotlights

	#jira UE-54381

Change 3860081 by Krzysztof.Narkowicz

	Tighter bounding sphere for a spotlight
	Replaced IntersectSphere(LightProxy->Origin, LightProxy->Radius) with LightProxy->SphereBounds for tighter culling of spotlights
	Directional light GetBoundingSphere() now everywhere returns Sphere((0,0,0),HALF_WORLD_MAX) for consistency and proper SphereBounds

	#jira UE-54258

Change 3860324 by Mark.Satterthwaite

	Update the macOS deployment target version to 10.12 from 10.11 as we officially ended support for El Capitan a while ago. Should mean that libraries compiled for 10.12 and up won't cause link warnings.

Change 3860945 by Arne.Schober

	DR - Fix not releaseing SRV on render thread for FPositionVertexBuffer, FStaticMeshVertexBuffer, FColorVertexBuffer, FStaticMeshInstanceBuffer.

	#jira UE-54587

Change 3861129 by Jian.Ru

	Prevent distance culled objects from casting distance field direct shadows
	#jira UE-54533

Change 3861502 by Jian.Ru

	Exclude distance culled objects from DFAO calculation
	#jira UE-54533

Change 3862243 by Krzysztof.Narkowicz

	Changed radius of a directional light's bounding sphere from HALF_WORLD_MAX to WORLD_MAX in order to encopass entire WORLD_MAX box

Change 3863476 by Krzysztof.Narkowicz

	Added BuildReflections option to ResavePackages commandlet

	#jira UE-54581

Change 3863717 by Rolando.Caloca

	DR - vk - Missed using pipeline cache on compute PSOs

Change 3865332 by Arne.Schober

	DR - Fix UE-52356 Bone Weight

Change 3866220 by Rolando.Caloca

	DR - vk - Fixed GetNativeResource missing on textures
	- Added support for -preferNvidia|AMD|Intel
	- Added VulkanRHIBridge.h
	- Minor fixes

Change 3866222 by Rolando.Caloca

	DR - vk - Missed file

Change 3866951 by Krzysztof.Narkowicz

	Fixed FreezeRendering on non editor builds: ComputeAndMarkRelevanceForViewParallel was calling FrozenMatricesGuard on multiple threads, reading and writing view matrices state in parallel.

	#jira UE-53640

Change 3867231 by Guillaume.Abadie

	Adds alpha mode to allow the tonemapper to passthrough the alpha channel for broadcast industry.

Change 3867233 by Guillaume.Abadie

	Fixes a compilation failures in TAAU with r.PostProcessing.PropagateAlpha==2

Change 3867594 by Daniel.Wright

	Removed EditorOnlyDefaultMaterials, which added 79s of shader compilation during startup
	Added a dialog when opening the Material Editor on a Default Material, warning of advanced workflow
	Preventing Material Editor Apply or Save for a Default Material when the preview material has compilation errors

Change 3870048 by Daniel.Wright

	Cleaned up formatting in TranslucentRendering from merges

Change 3870106 by Krzysztof.Narkowicz

	Fixed some FArchive Tell()/Seek() 64bit->32bit truncations

Change 3870211 by Rolando.Caloca

	DR - vk - Added -vulkanvalidation=N/-vulkanstandardvalidation/-novulkanstandardvalidation to set validation layer behaviour from cmd line

Change 3870225 by Rolando.Caloca

	DR - vk - Some platforms do not use a standard swapchain

Change 3870267 by Arne.Schober

	DR - SafeRelease SRVs that might be hold by the Vertexfactories (maybe due to indirect use in GlobalResources)
	Note that the VFs are not owners of the data, e.g the underlying Buffers might be released before this and this reference counting should be uneccessary

Change 3870647 by Daniel.Wright

	Moved FogRendering.h to Renderer

Change 3872130 by Krzysztof.Narkowicz

	Disable USE_GLOBAL_CLIP_PLANE for MATERIAL_DOMAIN_POSTPROCESS and MERIAL_DOMAIN_UI

	Merging GitHub Pull request #4459
	"When material domain is not needing global clip plane there is no need to generate any code involving it. This does not alter output but removes lot of code at vertex shader and pixel shaders. At least on mobile rendered was actually generating clipping code for ui materials."

	#jira UE-54616

Change 3872145 by Rolando.Caloca

	DR - vk - Optional SupportsMarkersWithoutExtension

Change 3872404 by Uriel.Doyon

	Added some guards when streaming virtual textures.
	Fixed optimized UCanvasRenderTarget2D::RepaintCanvas() to prevent resolving the texture twice.
	Fixed bad mipmap generation with UCanvasRenderTarget2D.

Change 3872507 by Arne.Schober

	Back out changelist 3870267

Change 3874176 by Ben.Marsh

	IncludeTool: Add an flag to prevent scanning source files for exported symbols.

Change 3874935 by Krzysztof.Narkowicz

	Fixed white thumbnails and other issues with sky lighting on ES3_1 path, by disabling GGX prefiltering, as mobile path doesn't have a single cubemap with all initialized mips. Instead it ping-pongs between 2 partially initialized.
	#jira UE-54656

Change 3875710 by Daniel.Wright

	Renamed uniform buffer member macros to be much shorter for readability

Change 3876665 by Guillaume.Abadie

	Cherry-pick 3870715: Implements DOF's hybrid scatering bare bones.

Change 3876666 by Guillaume.Abadie

	Cherry-pick 3871786: DOF hybrid scatering: fixes NaN source, transition to gather on close to screen edge and low intensity.

Change 3876677 by Guillaume.Abadie

	Cherry-pick 3872348: Implements neighbor comparison for DOF's scattering compilation pass.

Change 3876680 by Guillaume.Abadie

	Cherry-pick 3872357: Oups... fixes build...

Change 3876683 by Guillaume.Abadie

	Cherry-pick 3872475: Controls number of mip to generate with DOF's reduce pass.

Change 3876687 by Guillaume.Abadie

	Cherry-pick 3874104: Fixes various bugs in diaphragm DOF's hybrid scattering.

Change 3876690 by Guillaume.Abadie

	Cherry-pick 3874144: Packs multiple DOF scattering group into same draw instance.

Change 3876694 by Guillaume.Abadie

	Cherry-pick 3874275: Switches hybrid scattering with indexed indirect draw call to reduce scatter vertex shader invocation.

Change 3876695 by Guillaume.Abadie

	Cherry-pick 3874674: Records min and max coc on DOF's setup's draw event.

Change 3876783 by Rolando.Caloca

	DR - Static analysis fix

Change 3876845 by Guillaume.Abadie

	Implements USceneCaptureComponent::ProfilingEventName

Change 3877197 by Rolando.Caloca

	DR - vk - OQ fixes (disabled)

Change 3877428 by Krzysztof.Narkowicz

	Merged with tiny tweaks Ansel photography plugin improvements from Adam Moss (GitHub pull request #4426):
	-The free-roaming photography camera has new constraints by default, i.e. it can't pass through walls
	-Photography session can be started and stopped programmatically, e.g. making it possible to bind photography to an alternative hotkey or button combo. This was an often-requested feature.
	-Tweakables and utilities are now exposed through a Blueprint Function Library (rather than direct manipulation of console variables)
	-The Ansel photography session UI now exposes some engine effect tweakables as sliders. For example, if the game is using depth-of-field then sliders are made available to allow the photographer to change the focal depth etc. The developer may suppress this behavior through the Blueprint Function Library.
	-Letterboxing is now removed during multi-part capture, d'oh.
	-Tiled shots are taken at full resolution even if ScreenPercentage < 100
	-SSR is enabled during super-resolution shots since Ansel is now better at hiding any ensuing artifacts
	-Postprocess settings are frozen at session start to avoid discontinuities during photography, i.e. wandering between postprocess volumes when the camera auto-moves for stereo and 360 shots.
	#jira UE-54244
	#4426

Change 3879086 by Krzysztof.Narkowicz

	Fixed sky/reflection capture (without owner) update - they are now updated only with a correspoding world

Change 3879090 by Guillaume.Abadie

	Fixes tones of regressions on diaphragm DOF's recombine passes.

Change 3879198 by Rolando.Caloca

	DR - vk - Support for real uniform buffers on Android platforms

Change 3879993 by Krzysztof.Narkowicz

	-Fixed int64->int32 FArchive offset truncation in TShaderMap, VertexFactory and TextureDerivedData
	-Fixed FSerializationHistory bug, when trying to serialize 0 bytes
	#jira UE-43203

Change 3881462 by Guillaume.Abadie

	Implements full res DOF's setup pass for cheaper full res gathering in recombine pass.

Change 3881524 by Krzysztof.Narkowicz

	Fixed compilation by removing FTickableEditorObject from FPreviewScene

Change 3881724 by Chris.Bunner

	Static analysis fix.

	#jira UE-54762

Change 3881861 by Rolando.Caloca

	DR - vk - Fix layout warning when generating mip chain

Change 3881864 by Rolando.Caloca

	DR - Use render passes on HZB

Change 3882236 by Yuriy.ODonnell

	IndirectLightingColorScale is now applied to SubsurfaceLighting and DiffuseLighting. Was previously only applied to DiffuseLighting.

	#jira UE-42534
	#github 3326

Change 3882325 by Guillaume.Abadie

	Implements FocusOnly lower gathering pass for Diaphragm DOF's slight out focus temporal stability.

Change 3882340 by Rolando.Caloca

	DR - vk - Fix api dump

Change 3882430 by Rolando.Caloca

	DR - vk - KHR_maintenance2

Change 3882563 by Rolando.Caloca

	DR - Add depth-stencil access mode to PSO initializer

Change 3882929 by Rolando.Caloca

	DR - vk - Proper fix for maintenance extension macros

Change 3883087 by Mark.Satterthwaite

	Allow disabling VSync in windowed mode for macOS 10.13.4+ and above.

Change 3883597 by Guillaume.Abadie

	Collapses full and half res DOF setup passes together.

Change 3883702 by Guillaume.Abadie

	Fixes mac's build.

Change 3884747 by Uriel.Doyon

	Fix for static analysis warning

Change 3884975 by Rolando.Caloca

	DR - vk - Move some platform defines to platform properties

Change 3884988 by Rolando.Caloca

	DR - vk - Make an override per platform

Change 3885832 by Rolando.Caloca

	DR - vk - Cosmetic change to group similar members

Change 3885891 by Rolando.Caloca

	DR - vk - Some _RenderThread functions to avoid stalls

Change 3886044 by Rolando.Caloca

	DR - Added RHI api _RenderThread version of
	RHICreateTextureReference
	RHICreateShaderLibrary
	RHICreateRenderQuery

Change 3886560 by Guillaume.Abadie

	Fixes strong aliasing on TAAU's fast shader permutation.

	This adds a 6th neighbor sampling, and switch AA_TONE ON as TAA does for its fast shader permutation.

Change 3886749 by Guillaume.Abadie

	Cherry-pick 3884748: Implements DOF's BuildBokehLUT for diaphragm blades simulation.

	Only used in hybrid scattering for now.

Change 3886750 by Guillaume.Abadie

	Cherry-pick 3885457: Simulates diaphragm blades' curvature on bokeh.

Change 3886752 by Rolando.Caloca

	DR - Fix metal static analysis

Change 3887460 by Uriel.Doyon

	Fixed to more static analysis warning.

Change 3888201 by Rolando.Caloca

	DR - vk - Added r.Vulkan.SubmitAfterEveryEndRenderPass
	- Fixed bad layout on rendering back buffer

Change 3888209 by Rolando.Caloca

	DR - vk - Unity compile fix

Change 3888254 by Rolando.Caloca

	DR - vk - Fix async texture layout

Change 3888893 by Guillaume.Abadie

	Simulates bokeh in DOF's slight out of focus.

Change 3889085 by Guillaume.Abadie

	Fixes DOF's reduce pass sampling outside viewport.

Change 3889924 by Rolando.Caloca

	DR - vk - Skip seemingly bad validation error

Change 3890573 by Daniel.Wright

	Only initialize FDiaphragmDOFGlobalResource in Feature Level 5

Change 3890590 by Arne.Schober

	DR - Fix Paper2d crash. When addMesh is called the Vertex and Indexbuffers are nulled out. re-create Dynamic Mesh builder for every Mesh instead.

	#jira UE-55063

Change 3890638 by Arne.Schober

	DR - Better fix for Paper2d which honors batching

	#jira UE-55063

Change 3891099 by Krzysztof.Narkowicz

	1.5 texel shadow offset fix inside Manual2x2PCF based on #4485 GitHub pull request
	#jira UE-54985
	#4485

Change 3891234 by Krzysztof.Narkowicz

	Optimized PCF2x2 and PCF3x3 - merged #4494 GithHub pull request
	#jira UE-55121

Change 3891407 by Rolando.Caloca

	DR - vk - Set vendor id earlier

Change 3891417 by Rolando.Caloca

	DR - vk - Missing layout transitions

Change 3891718 by Arne.Schober

	DR - Do not recreate one Frame Resource for dynamic draws

	#jira UE-55063

Change 3891925 by Yuriy.ODonnell

	Fix/workaround for inconsistent preprocessor definitions for NVAftermath that result in FD3D11DynamicRHI class layout mismatch. NVAftermath support is now enabled by default for Win64.

	NVAftermath is declared as a private dependency in D3D11RHI. It does not automatically propagate to modules that explicitly include private RHI headers (OculusHMD, OSVR, OSVRInput). This results in NV_AFTERMATH being defined while compiling RHI module and not defined when compiling other modules, causing memory corruption at runtime.

	The long-term solution for this and similar issues requires some mechanism for adding transitive module dependencies, so that anyone that depends on D3D11RHI module would automatically also get the NVAftermath. Additionally, private headers should *never* be included directly by external modules.

	The short-term solution is to explicitly add NVAftermath dependency to OculusHMD, OSVR and OSVRInput.

	Additionally, NV_AFTERMATH is no longer forced by D3D11RHIPrivate.h when it's not defined. This allows catching this kind of mismatch in the future through a compiler warning (C4668).

	#jira UE-53065

Change 3891987 by Rolando.Caloca

	DR - vk - Support for dedicated allocations

Change 3892339 by Jian.Ru

	Fix a crash when tessellation shaders are used in dx12
	#jira UE-55127

Change 3892528 by Rolando.Caloca

	DR - vk - Update Linux headers

Change 3892867 by Rolando.Caloca

	DR - vk - Don't create swapchain if not needed

Change 3893416 by Guillaume.Abadie

	Implements bokeh simmulation on foreground and background gather.

Change 3893732 by Chris.Bunner

	GetRelevance_Internal should use the immediate parent resource, not the base, as some features are overridden by permutations e.g. UsesWorldPositionOffset.

	#jira UE-53404

Change 3893868 by Guillaume.Abadie

	Allocates diaphragm DOF's buffers and structered buffer only on supported platforms.

Change 3893917 by Chris.Bunner

	Potential fix for CIS.

Change 3893933 by Chris.Bunner

	Duplicating CL 2647737 as this is the same issue from that JIRA where accessing game-thread data was being prevented. We don't have this check in UMaterial::GetMaterialResource already, but presumably the UMaterialInstance case was never removed as we've not been calling it until now.

Change 3894218 by Rolando.Caloca

	DR - vk - Remove stat counters per draw call, gains 10% CPU on Infiltrator

Change 3894579 by Arne.Schober

	RT - Fix assert not in RenderingThread from Triangle Renderer.
	#jira UE-55247

Change 3894724 by Rolando.Caloca

	DR - vk - New API for batching barriers

Change 3894909 by Arne.Schober

	DR - Fix crash in Speedtree wind where Renderdata is unavailable
	#jira UE-54544

Change 3895414 by Rolando.Caloca

	DR - Add a configurable threshold for SCWs time outs

Change 3896429 by Marcus.Wassmer

	Allow variable frame-latency delay in FrameGrabber frames.  For performance you want at least a 1 frame delay so you don't sync the GPU to the CPU.

Change 3896495 by Marcus.Wassmer

	Set pointer properly
	Fix CIS

Change 3897253 by Guillaume.Abadie

	Fixes CIS warning in diaphragm DOF

Change 3899179 by Guillaume.Abadie

	Implements background hybrid scatter occlusion for diaphragm DOF.

Change 3903654 by Rolando.Caloca

	DR - vk - Rework dump layer to allow other layers

Change 3903766 by Rolando.Caloca

	DR - vk - More wrappers

Change 3904025 by Rolando.Caloca

	DR - vk - More wrappers

Change 3904342 by Rolando.Caloca

	DR - vk - Track image resources & callstacks

Change 3904346 by Rolando.Caloca

	DR - vk - Copy fix from 4.19 for flickering grass

Change 3904510 by Rolando.Caloca

	DR - vk - Compile fix

Change 3904914 by Daniel.Wright

	[Integrate] Fixed PS4 transitions with forward shading

Change 3904916 by Daniel.Wright

	[Integrate] Fixed PS4 transitions with occlusion queries

Change 3905975 by Rolando.Caloca

	DR - vk - Missing wrappers

Change 3905977 by Rolando.Caloca

	DR - vk - Missed file

Change 3907829 by Rolando.Caloca

	DR - Move depth bounds to the PSO

Change 3907832 by Rolando.Caloca

	DR - vk - Prep for delaying transitions

Change 3907834 by Rolando.Caloca

	DR - vk - Fix for depth stencil issues/validation errors

Change 3907967 by Rolando.Caloca

	DR - vk - Linux compile

Change 3908093 by Rolando.Caloca

	DR - vk - Fix depthstencil layout on descriptors

Change 3908393 by Rolando.Caloca

	DR - vk - Disable dedicated allocation as it causes crashes on Nvidia 700 series

Change 3908401 by Rolando.Caloca

	DR - Do transitions outside render pass

Change 3908422 by Rolando.Caloca

	DR - vk - Fix transition state not getting stored

Change 3908735 by Guillaume.Abadie

	Cherry-pick 3896619: Fixes after TAAU post process material that had wrong default buffer UV.

	#jira UE-55317

Change 3908736 by Guillaume.Abadie

	Cherry-pick 3891352: Fixes ensure when visualizing HDR with TAAU.

	#jira UE-55019

Change 3908753 by Guillaume.Abadie

	Lets the renderer layout the views in the internal render targets like it prefers.

Change 3909119 by Daniel.Wright

	Fix some static analysis warnings

Change 3911943 by Rolando.Caloca

	DR - vk - Fix for packaging Vulkan projects

Change 3912145 by Rolando.Caloca

	DR - vk - Fix layout on streaming textures

Change 3913029 by Rolando.Caloca

	DR - Fix missing transition

Change 3913048 by Rolando.Caloca

	DR - Fix for hlslcc

Change 3913054 by Rolando.Caloca

	DR - vk - Fix number of layers on barrier

Change 3913171 by Rolando.Caloca

	DR - vk - Fix for decal missing transition

Change 3913211 by Rolando.Caloca

	DR - vk - Add debug name to image tracking

Change 3913449 by Rolando.Caloca

	DR - vk - Restore transition

Change 3913466 by Rolando.Caloca

	DR - Fix Vulkan EngineTest

Change 3913537 by Rolando.Caloca

	DR - vk - Fixes independent samplers & textures (contributed by AMD)

Change 3913548 by Rolando.Caloca

	DR - vk - Warning fix

Change 3913691 by Rolando.Caloca

	DR - vk - Fixes for parallel (wip)

Change 3914656 by Rolando.Caloca

	DR - vk - Fix bug when using separate samplerstates and textures

Change 3914730 by Rolando.Caloca

	DR - vk - Bump version

Change 3914764 by Rolando.Caloca

	DR - vk - Don't crash on exit

Change 3915532 by Rolando.Caloca

	DR - vk - Parallel context fixes

Change 3915589 by Rolando.Caloca

	DR - vk - Hoist and rename transition and layout manager class out of the context

Change 3915592 by Rolando.Caloca

	DR - Fix gpu marker name

Change 3917607 by Rolando.Caloca

	DR - vk - Fix depth bounds on Vulkan

Change 3917609 by Rolando.Caloca

	DR - vk - Fix static analysis

Change 3917616 by Rolando.Caloca

	DR - Fix D3D11 initialization

Change 3920569 by Rolando.Caloca

	DR - vk - Prep for layout mgr refactor

Change 3921023 by Rolando.Caloca

	DR - vk - Dump layer fixes

Change 3921623 by Rolando.Caloca

	DR - vk - Prep refactor for layouts
	- Dump now shows marker tree

Change 3922007 by Rolando.Caloca

	DR - vk - Fix extra allocation per draw call

Change 3922442 by Rolando.Caloca

	DR - vk - Detect potential issues

Change 3922470 by Rolando.Caloca

	DR - vk - Minor optimization

Change 3922482 by Rolando.Caloca

	DR - vk - More minor optimizations

Change 3923158 by Rolando.Caloca

	DR - Move r.DisableEngineAndAppRegistration out to common RHI and use it on Vulkan

Change 3923486 by Rolando.Caloca

	DR - vk - Minor cpu optimizations

Change 3923505 by Rolando.Caloca

	DR - vk - Use bigger allocations for uniform buffers

Change 3923516 by Rolando.Caloca

	DR - vk - Android compile fix

Change 3923557 by Rolando.Caloca

	DR - vk - Cache descriptorset layouts, refactor duplicated code

Change 3923851 by Rolando.Caloca

	DR - vk - Linux compile fix

Change 3924153 by Rolando.Caloca

	DR - vk - Support for dynamic UBs

Change 3924193 by Rolando.Caloca

	DR - vk - Remove old per pso descriptor pools

Change 3924197 by Rolando.Caloca

	DR - vk - Remove unused global uniform buffer pool

Change 3924220 by Rolando.Caloca

	DR - vk - Wrap some unused classes in their define

Change 3924234 by Rolando.Caloca

	DR - vk - Show ring buffer wrapping messages

Change 3924243 by Rolando.Caloca

	DR - vk - Fix bad dynamic buffer

Change 3924902 by Rolando.Caloca

	DR - vk - Fix crash running infiltrator

Change 3925209 by Rolando.Caloca

	DR - vk - Fix bug with dynamic buffers
	- Remove old defines

Change 3925300 by Rolando.Caloca

	DR - vk - Allow packed uniforms as dynamic UBs (with r.Vulkan.DynamicGlobalUBs)

Change 3925627 by Rolando.Caloca

	DR - vk - Move DynamicOffsets into the pipeline state

Change 3925834 by Rolando.Caloca

	DR - vk - Cache per stage information

Change 3925835 by Daniel.Wright

	Fixed DisplayName for UParticleModuleCollisionGPU

Change 3925897 by Rolando.Caloca

	DR - vk - Split update descriptors loop

Change 3926488 by Rolando.Caloca

	DR - vk - 16MB for ring buffer on desktop, 8 MB for mobile

Change 3928168 by Guillaume.Abadie

	Cherry-pick 3917219: Implements r.DOF.RecombineQuality

Change 3928173 by Guillaume.Abadie

	Cherry-pick 3927888: Enables r.DOF.HybridScatter.BackgroundCompositing and r.DOF.HybridScatter.ForegroundCompositing to work when both enabled.

Change 3928216 by Rolando.Caloca

	DR - vk - Fix Android
	- Fix static analysis

Change 3929119 by Rolando.Caloca

	DR - vk - Rename some classes for clarity
	- Fix read-only cvar

Change 3929151 by Rolando.Caloca

	DR - vk - Rename class

Change 3930046 by Rolando.Caloca

	DR - Temp fix Vulkan flickering grass

Change 3930148 by Rolando.Caloca

	DR - vk - Only update dirty descriptors
	- Use dynamic descriptors for packed global uniform buffers

Change 3930998 by Guillaume.Abadie

	Packs shader permutation in different XGE submissions.

Change 3931079 by Rolando.Caloca

	DR - vk - Fixes for Android and non-real ubs platforms

Change 3931942 by Krzysztof.Narkowicz

	Depth rendering - When EarlyZPassMode is set to DDM_AllOccluders, dynamic objects need also to test bUseAsOccluder just like static ones

	#jira none

Change 3932819 by Daniel.Wright

	[Integrate] Scene Textures uniform buffer
	* Base Pass Uniform Buffer now contains a Scene Textures uniform buffer.  Previously the translucent base pass had to check ~40 loose scene texture parameters every draw.
	* FMeshMaterialShader's must now bind PassUniformBuffer and supply a valid pass uniform buffer.  For most passes this is just FSceneTextureUniformParameters.
	* FRendererModule::DrawTileMesh can now cleanly set dummy scene texture resources, just by configuring how the pass uniform buffer is created.
	* Moved scene texture shader functions out of Common, into SceneTexturesCommon which must be manually included by shaders that want to use them
	* Separate Mobile Scene Textures uniform buffer to silo the platform complexities

	Moved DBuffer inputs out of FDeferredPixelShaderParameters and into FOpaqueBasePassUniformParameters

	Removed per-frame material uniform expressions.  GameTime material node with period is now implemented with an fmod in the shader, without the use of MaterialFloat, so that it will happen at full precision.
	* Per-frame expressions were used when the GameTime material node had a period, to do the fmod on the CPU where 32 bit precision is guaranteed, for mobile GPU's where pixel shader precision is sometimes less than 32fp.

	Moved forward shading data into the Base Pass Uniform Buffer
	Removed instanced stereo support for the light cull grid - will have to be reimplemented without changing SRV's per draw
	Base pass sets View Uniform Buffer from DrawRenderState instead of choosing which one to set per-draw

	Fixed padding in nested uniform buffer structs
	Skip SRV members on Feature Level SM4 and below

Change 3932964 by Rolando.Caloca

	DR - vk - Renderdoc on Android

Change 3933095 by Daniel.Wright

	Moved FSceneTextureUniformParameters out of the opaque base pass uniform buffer.
	* Base Pass shaders now enable SCENE_TEXTURES_DISABLED when compiling for a material of any domain other than MD_Surface.  These are used when rendering thumbnails of a material in a different domain, which could be opaque, but the opaque base pass drawing policy does not bind a scene textures uniform buffer, so the shader must not bind it.
	* Opaque materials can no longer use EyeAdaptation.

Change 3933096 by Daniel.Wright

	Better d3d11 assert message when a uniform buffer was not set by the renderer

Change 3933176 by Rolando.Caloca

	DR - vk - Prefer mailbox if available

Change 3933271 by Ryan.Vance

	#jira UE-55936
	Fixed missing referenced uniform bindings on AR pass-through camera shaders.

Change 3934000 by Guillaume.Abadie

	Fixes Win32 build in ShaderCompilerXGE.cpp

Change 3934299 by Guillaume.Abadie

	Fixes a bug in DOF's reduce operator that was casusing color leaking between background and foreground.

Change 3934699 by Daniel.Wright

	Added bAffectDistanceFieldLighting to landscape

Change 3935190 by Daniel.Wright

	Forward Light Grid SRV's use StructuredBuffer on Metal, instead of 'invariant Buffer', which throws off RemoveUniformBuffersFromSource parsing

Change 3935606 by Daniel.Wright

	Removed LightmapPolicy::Set which was needed for vertex lightmaps
	Renamed FVertexFactory::Set to SetStreams to make it findable

Change 3936510 by Rolando.Caloca

	DR - vk - Update glslangValidator.exe to 1.0.65.1 for dumped debug SPIRV shaders

Change 3936545 by Richard.Wallis

	Clone of CL's (3925763, 3925430, 3925424, 3925385, 3925278) Mark Satt's Xcode fixes from task stream //Tasks/UE4/Dev-UERNDR-354-mtlpp/

	Plus XCode 9.2 compile fix in ApplicationPlatformCompilerPreSetup.h for -Wunused-lambda-capture.

Change 3938061 by Daniel.Wright

	Vulkan: Added support for SRV's in Uniform Buffers

Change 3938123 by Daniel.Wright

	Vulkan: Slightly better assert for null resources in uniform buffer

Change 3939197 by Rolando.Caloca

	DR - vk - Disable custom memory mgmt

Change 3939677 by Rolando.Caloca

	DR - vk - Fix static analysis warning

Change 3939809 by Rolando.Caloca

	DR - vk - Fixes for async compute

Change 3939875 by Rolando.Caloca

	DR - vk - Support for -vktrace

Change 3939977 by Rolando.Caloca

	DR - vk - Skip a condition during gather UBs
	- Set up efficient compute async var
	- Fix validation cmd line

Change 3939982 by Rolando.Caloca

	DR - vk - Revert mipchain

Change 3939984 by Rolando.Caloca

	DR - vk - Remove unnecessary asserts

Change 3940082 by Rolando.Caloca

	DR - vk - Custom mem mgr

Change 3940475 by Rolando.Caloca

	DR - vk - Fix DFAO (indirect draw offset)

Change 3940555 by Rolando.Caloca

	DR - vk - Minor fixes

Change 3940675 by Rolando.Caloca

	DR - vk - Fix indirect type mismatch

Change 3941111 by Rolando.Caloca

	DR - Renderpass bGeneratingMips

Change 3941847 by Daniel.Wright

	Fixed Volumetric Lightmaps on Static geometry only working if the geometry had been built with Surface Lightmaps before

Change 3941978 by Rolando.Caloca

	DR - vk - Minor fixes for presenting on compute queue

Change 3942074 by Rolando.Caloca

	DR - vk - Remove some RHI stalls
	- Fixed swap chain stat

Change 3943946 by Daniel.Wright

	Fixed Texcoord0 on Volume materials on a particle sprite, including SubUV particles.

Change 3944065 by Daniel.Wright

	Fixed SceneDepth collision getting broken on GPU particles when a scene capture is rendering

Change 3944158 by Daniel.Wright

	Fixed ViewUniformShaderParameters accessing GEngine->PreIntegratedSkinBRDFTexture too early during slate loading screen

Change 3944865 by Rolando.Caloca

	DR - vk - Prep for render passes

Change 3945196 by Rolando.Caloca

	DR - Move render pass validate to cpp

Change 3945202 by Rolando.Caloca

	DR - vk - Some fixes for using real render passes

Change 3945357 by Rolando.Caloca

	DR - Fix bad condition

Change 3946295 by Yuriy.ODonnell

	Added a sentinel member to FLightMap, which is initialized in the ctor and reset in the dtor. Sentinel is then checked in FLightCacheInterface::GetLightMapInteraction().
	This aims to shed some more light on a hard-to-repro crash, which is suspected to be a use-after-free bug: http://crashreporter/Buggs/Show/1785593

Change 3946407 by Rolando.Caloca

	DR - vk - Prep for refactor

Change 3946648 by Rolando.Caloca

	DR - vk - Fixes for async compute (wip)

Change 3947299 by Rolando.Caloca

	DR - vk - FIx static analysis

Change 3948434 by Rolando.Caloca

	DR - vk - Fix exiting with parallel

Change 3948928 by Rolando.Caloca

	DR - vk - Fix enabling draw markers for tools

Change 3949021 by Rolando.Caloca

	DR - vk - Buffer tracking layer

Change 3949602 by Rolando.Caloca

	DR - vk - static analysis fix

Change 3949757 by Rolando.Caloca

	DR - vk - Remove bogus parameter

Change 3949810 by Rolando.Caloca

	DR - vk - Move waits for cmd buffer

Change 3950270 by Guillaume.Abadie

	Implements dedicated gather pass for foreground hole filling to avoid being VGPR bound in foreground gather pass, but still being hable to amend foreground.

Change 3950272 by Rolando.Caloca

	DR - vk - Minor refactor for semaphores

Change 3950279 by Guillaume.Abadie

	Oups... fixes build

Change 3950298 by Rolando.Caloca

	DR - vk - Gather wait semaphores in the cmd buffers

Change 3950371 by Rolando.Caloca

	DR - vk - fixes for async compute

Change 3950597 by Rolando.Caloca

	DR - vk - Fix for clip distance (fixes planar reflections)

Change 3951075 by Rolando.Caloca

	DR - vk - Fix for async compute

Change 3952524 by Guillaume.Abadie

	Some DOF enum refactoring.

Change 3955016 by Daniel.Wright

	Fixed BuiltData package getting renamed into the map package during a content browser folder move, causing a redirector to be incorrectly placed in the map package

Change 3955668 by Guillaume.Abadie

	Fixes a bug where full res coc buffer was computed even if not doing slight out of focus.

Change 3956722 by Guillaume.Abadie

	Fixes a bug where r.DOF.MaximalForegroundBlurringRadius was screen percentage dependent.

Change 3959212 by Guillaume.Abadie

	Prefixes all DOF's shaders files with DOF keyword.

Change 3959705 by Guillaume.Abadie

	Optimises the DOF setup pass outputing half res and full res with LDS downsample.

Change 3959941 by Guillaume.Abadie

	Halfs DOF's hybrid scatter compilation by using a unique downsampling for both foreground and background, instead of 2 reduce passes.

Change 3962273 by Rolando.Caloca

	DR - Fix typos

	#jira UE-56317
	PR #4586

Change 3962615 by Rolando.Caloca

	DR - vk - Compile fix

Change 3962949 by Rolando.Caloca

	DR - Fix DOFDownsample extension

Change 3962993 by Guillaume.Abadie

	Back out changelist 3962949

Change 3963016 by Guillaume.Abadie

	Adds missing DOFDownsample.usf

Change 3963041 by Rolando.Caloca

	DR - vk - Misc changes to help integrate

Change 3964293 by Guillaume.Abadie

	Fixes DOF's setup pass reading outside of the viewport.

Change 3964475 by Guillaume.Abadie

	Collapses DOF's hybrid scatter compilation passes into reduce passes.

Change 3964883 by Daniel.Wright

	Fixed 3d texture in uniform buffer on unsupporting RHI

Change 3964897 by Rolando.Caloca

	DR - Compile fixes

Change 3964914 by Guillaume.Abadie

	Fixes a bug on r.DOF.RecombineQuality=0

Change 3965153 by Guillaume.Abadie

	Fixes compile warning in D3D12Commands.cpp.

Change 3965814 by Rolando.Caloca

	DR - Prep for integration conflict resolve

Change 3965899 by Rolando.Caloca

	DR - Fix odd linkage issue

Change 3966072 by Rolando.Caloca

	DR - More prep for merge

Change 3966163 by Rolando.Caloca

	DR - Merge prep

Change 3966844 by Guillaume.Abadie

	Packs multiple DOF scattered bokeh per instance and uses PT_RectList in DOF for platforms that can.

Change 3967116 by Rolando.Caloca

	DR - Compile fixes for integration

Change 3967273 by Rolando.Caloca

	DR - Use same path for mip generation

Change 3967277 by Rolando.Caloca

	DR - vk - Fix mips on cubemaps

Change 3967693 by Rolando.Caloca

	DR - Copying //UE4/Dev-Main@3912313 to //UE4-DevRendering, missing shaders

Change 3967851 by Rolando.Caloca

	DR - Copying //UE4/Dev-Main@3912313 to //UE4-DevRendering, Engine 2/2

Change 3968083 by Rolando.Caloca

	DR - Integration compile fixes

Change 3968240 by Rolando.Caloca

	DR - Shader compile fixes for integration

Change 3968270 by Rolando.Caloca

	DR - Fix for missing hash calculation

Change 3969426 by Rolando.Caloca

	DR - vk - Fix warning

Change 3969869 by Krzysztof.Narkowicz

	Back out changelist 3946295 - UE-54537 is fixed, so no need for this debug sentinel.
	#jira none

Change 3969944 by Rolando.Caloca

	DR - Warning fix

Change 3970020 by Rolando.Caloca

	DR - Bump after integration

Change 3970052 by Rolando.Caloca

	DR - Fix for mobile

Change 3970236 by Daniel.Wright

	Causing decal shader to recompile to fix a merge bug

Change 3970270 by Daniel.Wright

	Bump shader version from merge

Change 3970339 by Olaf.Piesche

	Replace series of locks/unlocks with a single one for curve injection

	#tests QAGame

Change 3970390 by Rolando.Caloca

	DR - Rename FSceneTextureUniformParameters to FSceneTexturesUniformParameters
	- Remove duplicate method for occlusion queries

Change 3970523 by Rolando.Caloca

	DR - Fix serialization of shaders

Change 3970533 by Arne.Schober

	DR - fix for removing the Speed tree wind when the scene gets deleted. The original enque rendercommand requeues the element onto the renderthread although the call already came from the Renderthread and the scene can get lost in between.

	#jira UE-56322

Change 3971160 by Guillaume.Abadie

	Fixes CompositeEditorPrimtive pass and SelectionOutline pass for VR editor to work with TAAU.

Change 3971516 by Guillaume.Abadie

	Cherry-pick 3912629: Fixes SSR that was computing vigneting according to PrevScreen that could let some outside viewport samples going through when rotating the camera.

	#jira UE-55353

Change 3971594 by Krzysztof.Narkowicz

	Fixed assert inside BindLightMapVertexBuffer. FSplineMeshSceneProxy was calling BindLightMapVertexBuffer for invalid (still not generated) lightmap UV channel after mesh reimport. Simplified assert, as at the moment almost all of the high callsites already clamp lightmap uv channel.
	#jira UE-56321

Change 3971622 by Krzysztof.Narkowicz

	Fixed crash inside Indirect Lighting Cache. Data (reflection captures and lightmap) generation calls ULevel::GetOrCreateMapBuildData(), which can destroy lightmap data if level has legacy data. Last Lightmap generation step recreates this data, but if user cancels lightmap generation - it won't do that.
	#jira UE-56171

Change 3974788 by Rolando.Caloca

	DR - Remove GSupportsGenerateMips

Change 3974789 by Rolando.Caloca

	DR - Remove bogus function

Change 3974986 by Rolando.Caloca

	DR - vk - Tracking fixes

Change 3974989 by Rolando.Caloca

	DR - vk - Don't submit dummy barriers

Change 3975075 by Olaf.Piesche

	Update for particle curve injection improvement, fixing ES2 problems

	#tests QAGame tm-shadermodels, various color curve tests in-editor

Change 3975957 by Uriel.Doyon

	Fixed invalid max texture resolution when using the bake material tools.

Change 3978471 by Daniel.Wright

	New cvar r.SkylightUpdateEveryFrame

Change 3978779 by Rolando.Caloca

	DR - Accessor for texture sizes

Change 3978797 by Rolando.Caloca

	DR - Clean up RHI CopyTexture API

Change 3978832 by Rolando.Caloca

	DR - vk - Workaround for RenderDoc crashing due to Descriptor Pool reset

Change 3978836 by Rolando.Caloca

	DR - vk - Remove generate mips

Change 3979201 by Rolando.Caloca

	DR - vk - RHI CopyTexture. Uses general layout for generating mips

Change 3979204 by Rolando.Caloca

	DR - Use render passes and CopyTexture to generate mips

Change 3979592 by Rolando.Caloca

	DR - Warning fix

Change 3980855 by Krzysztof.Narkowicz

	Optimize bounding sphere radius after non-uniform scale by using bounding box extent.

	#jira UE-56227

Change 3981065 by Rolando.Caloca

	DR - vk - Fix bad layout

	#jira UE-56238

Change 3981346 by Rolando.Caloca

	DR - Copy from 3707257
	Support for not flushing compute jobs (r.D3D11.UAVFlushNV)

Change 3981347 by Rolando.Caloca

	DR - Copy from 3707257
	Don't flush between morph dispatched

Change 3981932 by Mark.Satterthwaite

	Generate the shader hash and function name when a Metal shader error needs to be reported so that even without shader code we get something to go on.

Change 3982442 by Rolando.Caloca

	DR - Fix warning

Change 3982652 by Rolando.Caloca

	DR - vk - Signal semaphore cleanup

Change 3983917 by Richard.Wallis

	Clone of CL 3974146 converted for mtlpp along with extra mtlpp usage suggestions by Mark Satt:

	Fix for black flickering on first paint with weighted material landscape on Mac.  When using AsyncCopyFromBufferToTexture in Metal we put the blit operation on the prologue encoder - however after a draw call using that resource the copy operation should happen after on the current encoder, this keeps the correct order of operations.

	Added Bool return from various Asnyc renderpass resource requests so caller can decide correct further action.  Updated to include the other async functions.

Change 3984409 by Guillaume.Abadie

	Attempts to make static analysis happy again.

Change 3984435 by Nick.Bullard

	Checking in Performance Test level provided to us by Tor Frick based on UE-44841.
	This has been utilized for checking issues against Aftermath performance impact.
	The Map includes 2 Level Book marks, most testing has been done against Bookmark 1 view, in fullscreen, in game mode

Change 3985087 by Mark.Satterthwaite

	Make sure that the particle scratch buffer is large enough to hold all the data for the curve texture we are rendering to, otherwise a full set of curves will start scribbling memory after 64Kb (the curve texture is 256Kb of data - 512x512x4 as sizeof(RGBAUInt8) == 4). This happens in ElementalDemo.

Change 3985201 by Rolando.Caloca

	DR - Fix bad CopyTexture

Change 3985258 by Mark.Satterthwaite

	Try and detect orientation changes so that we don't blow-up on iOS due to a huge mismatch between the drawable texture for the display and the scene's depth-stencil target. I can't just fiddle with the depth-stencil texture itself without running  the risk of obliterating in-use data and really we shouldn't permit such a mismatch anyway but it is fallout from 3620990.

	#jira UE-55756

Change 3986449 by Rolando.Caloca

	DR - vk - Update & consolidate Vulkan headers to 1.1.70.1
	Consolidate SDK into one

Change 3986571 by Guillaume.Abadie

	Makes PVS-Studio happy again in DOF.

Change 3987039 by Yuriy.ODonnell

	Initial implementation of tracing profiler to show CPU and multiple GPUs on the same timeline. Currently only supported on DX12 platforms.

	Use `TracingProfiler frames=N` console command to trigger a capture of the next N frames. Trace is saved to disk as a JSON file into `Saved/Profiling/Traces` directory.
	Trace file uses Google Tracing format and can be visualized in Chrome built-in profiler (chrome://tracing).

	`r.GPUStatsChildTimesIncluded=1` CVar makes timing scopes hierarchical.
	`TracingProfiler.BufferSize=N` CVar controls the size of the tracing buffer, which may need to be increased for long traces (default is 65k events). Only can be set at startup.

Change 3987074 by Yuriy.ODonnell

	Implemented timestamp calibration on DX11. Calibration is only performed when tracing profiler session starts.

Change 3987160 by Yuriy.ODonnell

	Added thread naming and ordering to the tracing profiler output

Change 3987331 by Mark.Satterthwaite

	Remove the Nvidia hack to retain resource references in command-buffers for UE-46604 as the mtlpp refactor provides stronger resource lifetime guarantees.

	#jira UE-46604

Change 3987754 by Mark.Satterthwaite

	Fix MetalRHI memory reporting in non-default path.

	PR #4568

Change 3988184 by Arciel.Rekman

	Linux: Fix editor OpenGL performance (UE-55960).

	- GetCurrentThreadId() calls became much more frequent with the OpenGL RHIT refactor.
	- We used to only cache that value in monolithic builds, because having per-thread static variables in dynamic libraries is risky due to OS limits.
	- This change adds dynamically-managed per-thread cache for non-monolithic builds.

	#jira UE-55960

Change 3988394 by Rolando.Caloca

	DR - vk - Improve memory mgmt
	- Use 256MB pages for Device heap (or 1/8th if less).
	- Remove texture allocations not going through resource manager

Change 3988405 by Marcin.Undak

	Fix VulkanQuery crash on exit #codereview rolando.caloca #codereview arciel.rekman #rb arciel.rekman

Change 3988567 by Rolando.Caloca

	DR - vk - Support for packed global UBs on pci aperture heap

Change 3988668 by Rolando.Caloca

	DR - vk - Remove old comments

Change 3988956 by Marcin.Undak

	RecordPerformance: added option to skip building/cooking before tests #rb none #codereview arciel.rekman

Change 3989161 by Yuriy.ODonnell

	Static analysis error fix

Change 3989196 by Guillaume.Abadie

	Fixes a crash in light shaft's TAA pass.

	#jira UE-57366

Change 3989207 by Yuriy.ODonnell

	Refactored FRealtimeGPUProfilerFrame to avoid splitting profile events when calculating exclusive times of scopes. This allows tracing profiler to retain the hierarchical view of the data, while keeping CSV and GPU Stat system behavior intact.

Change 3989469 by Rolando.Caloca

	DR - vk - Fix for bad index; fix for bad transition

Change 3989772 by Yuriy.ODonnell

	Implemented timestamp calibration on Vulkan

Change 3990040 by Marcus.Wassmer

	Aftermath enabled by default.
	Removed unnecessary warning for other vendors

Change 3990064 by Mark.Satterthwaite

	Ensure that packed globals are reuploaded when the command-encoder is restarted - don't simply invalidate the existing parameters. This properly handles cases where a single logical render-pass is broken into multiple command-encoders and/or command-buffers - otherwise all shaders must reset all parameters each time. When we move between frames we *do* want to perform a full state reset though as previous frame globals are treated as invalid.

Change 3990080 by Mark.Satterthwaite

	Change the way we invalidate the visibility buffer between command-buffers and command-encoders so that on iOS you can reuse the same buffer within the same command-buffer, but not across more than one. The code provides an exception to this rule when running under the MetalRHI validation tools which can break each draw call into its own buffer.

Change 3990084 by Mark.Satterthwaite

	Get MetalStatistics compiling again.

Change 3990381 by Arciel.Rekman

	Bring back D3D12 in RecordPerformance.

Change 3991113 by Rolando.Caloca

	DR - Fix crash on RHI thread on mobile preview
	- Check RHI objects are not null in the PSO initializer

Change 3991191 by Ryan.Vance

	#jira UE-55952

	Reimplemented instanced stereo for forward lighting cull grid after the srv/ub clean up.

Change 3991343 by Rolando.Caloca

	DR - Copy from 3911492
	UE4 - Disabled parallel mobile bass pass by default. This is experiemental and not known to be useful on any mobile platform.

Change 3991375 by Mark.Satterthwaite

	Proper copyright assignment in the mtlpp debugger header.

Change 3993151 by Daniel.Wright

	Fix RTDF resource transition found by Rolando

Change 3993818 by Rolando.Caloca

	DR - Missed file

Change 3993923 by Krzysztof.Narkowicz

	Fixed crashes inside RemoveSpeedTreeWind() and RemoveSpeedTreeWind_RenderThread().
	FStaticMeshComponentRecreateRenderStateContext didn't flush deferred render updates causing stale RenderData to be left:
	1. Thumbnail manager called SetStaticMesh(nullptr), which added StaticMeshComponent to deferred render updates.
	2. UStaticMesh::Build called FStaticMeshComponentRecreateRenderStateContext and destroyed DenderData, but didn't touch Thumbnail's manager StaticMeshComponent as it was nullptr.
	3. This resulted in a StaticMeshComponent with stale RenderData pointer.

	#jira UE-54544

Change 3994033 by Rolando.Caloca

	DR - vk - Reworked layers & extensions, as we were not doing it properly
	- Remove -vulkanstandardvalidation and -novulkanstandardvalidation as they are not needed anymore

Change 3994275 by Mark.Satterthwaite

	Change to linking against mtlpp via AddEngineThirdPartyPrivateStaticDependencies and marking its header with THIRD_PARTY_* macros in the vain hope that might convince the remote compilation code to distribute the module to the remote machine when building MetalRHI.

	#jira UE-57507

Change 3994365 by Mark.Satterthwaite

	Pilfer some code from the old MetalHeap file to handle calculating texture memory size on older macOS and iOS builds when running with stats or LLM enabled.

	#jira UE-57513

Change 3994382 by Rolando.Caloca

	DR - vk - Some missing locks during image tracking

Change 3994422 by Rolando.Caloca

	DR - vk - Remove bogus shader format

Change 3995530 by Rolando.Caloca

	DR - vk - Fix for crash when validation is enabled

Change 3995531 by Rolando.Caloca

	DR - vk - Fix static analysis

Change 3995532 by Rolando.Caloca

	DR - vk - Added support for r.Vulkan.SaveValidationCache

Change 3995610 by Uriel.Doyon

	Texture Streaming Changes and Fixes:
	- Using the small FOV items (like scopes) now only affect visible primitives (through "r.Streaming.MaxHiddenPrimitiveViewBoost").
	- Static components added after the level is registered in the streaming manager are now handled correctly (fixes the low quality on the chests)
	- Dynamic components do not need to register to the streaming manager anymore.
	- Optimized dynamic component management by removing duplicate entries in the update list.
	- Added a pregarbage collect pass to the dynamic component management to optimize GC handling.
	- Added a budget reset logic whenever the scene requirements change significantly.
	- PIE worlds now have correct visibility information.
	- Fixed possible invalid memory access when processing the streaming manager slave views.
	- Refactored the incremental level texture data build to prevent new components from being unhandled.
	- Removed StreamingManager callbacks for NotifyActorSpawned() and NotifyPrimitiveAttached()
	- Added a StreamingManager callback NotifyPrimitiveUpdated(), to be used whenever a primitive streaming state must be updated.

	#jira none

Change 3995908 by Arciel.Rekman

	Fix compile errors when using new Vulkan queries.

Change 3995990 by Arciel.Rekman

	More compile fixes to new Vulkan queries.

	- MSVC did not catch this, clang did.

Change 3996101 by Rolando.Caloca

	DR - vk - Win32 compile fix

Change 3996323 by Mark.Satterthwaite

	Use the right include path to export the mtlpp headers.

	#jira UE-57507

Change 3996392 by Arciel.Rekman

	Vulkan: fix crash on start when using new queries.

	- CommandBufferManager was not yet set at that point and the code in queries relied on it.

Change 3996585 by Rolando.Caloca

	DR - Slight improvement to GL being black, but just a temporary 'workaround' as it's not correct.

Change 3998806 by Arciel.Rekman

	Fix Linux build (UE-57602).

	#jira UE-57602

Change 3998866 by Arciel.Rekman

	SubwaySequencer: fix old shader platform name.

Change 3998947 by Mark.Satterthwaite

	Silence deprecation warnings in CEF on macOS now that we've moved to 10.12 as the minimum.

	#jira UE-57577

Change 3998951 by Mark.Satterthwaite

	Fix last of the deprecation errors that I am aware of for macOS 10.12.

	#jira UE-57581

Change 3998984 by Mark.Satterthwaite

	Build mtlpp for iOS 9.0 not 9.3.

	#jira UE-57586

Change 3999065 by Rolando.Caloca

	DR - vk - Make sure we use version 1.0.0

	#jira UE-57521

Change 3999071 by Arne.Schober

	DR - [UE-55433, UE-57361] Hack SNORM support in OpenGL by re-interpreting UNORM. Underlying data is always SNORM.

	#jira UE-55433, UE-57361

Change 3999494 by Rolando.Caloca

	DR - Enable r.UnbindResourcesBetweenDrawsInDX11 in debug
	- Clear compute resources when r.UnbindResourcesBetweenDrawsInDX11 is enabled

Change 4000197 by Krzysztof.Narkowicz

	Mesh simplifier - normalize TexCoordWeights using min/max TexCoord range. This fixes precision issues for very big TexCoord values and allows to optimize for all TexCoord channels when channels have values of different magnitudes (e.g. non standard TexCoord data).
	#jira UE-54935

Change 4000305 by Yuriy.ODonnell

	Suppress PVS Studio warning V547 (Expression is always true) related to Aftermath

	Reported issue to PVS team and to NVIDIA. Confirmed false positive, fix coming in future PVS version (v6.24).

	#jira UE-57579

Change 4000853 by Arciel.Rekman

	Linux: fix not calling CrashReportClient (UE-57678).

	#jira UE-57678

Change 4001504 by Rolando.Caloca

	DR - vk - Fix transition

Change 4002460 by Krzysztof.Narkowicz

	Toggle for contant shadow length in word space
	Exposed contact shadows to Blueprints
	#jira none

Change 4002608 by Rolando.Caloca

	DR - vk - Fix static analysis
	- Fix potential debug image tracking crash
	- Comment out unused methods

Change 4002615 by Rolando.Caloca

	DR - vk - Allow r.Vulkan.WaitForIdleOnSubmit to be set at startup (e.g. in ConsoleVariables.ini)
	Previously, if your map needed to UpdateSkyCaptureContents on startup, an ensure would fail if GWaitForIdleOnSubmit was set.
	PrepareForCPURead needs to wait for the command buffer to finish before trying to read the results back, but the wait has already happened when r.Vulkan.WaitForIdleOnSubmit is set. Trying to wait again correctly complains that the command buffer is not in the correct state. So, skip the WaitForCmdBuffer call when r.Vulkan.WaitForIdleOnSubmit is set.

Change 4002640 by Rolando.Caloca

	DR - vk - Missing support for CVarDefaultBackBufferPixelFormat

Change 4002919 by Guillaume.Abadie

	Implements DOF's temporal upsampling pass for better dynamic resolution stability.

Change 4002984 by Guillaume.Abadie

	Integrates Sebastian Aaltonen's ALU optimisations for TAAU.

Change 4003112 by Olaf.Piesche

	Fir for TBB stall (resulting in severe hitches and hangs in the editor with stats active); tested multiple scenarios and encountered no hitches.

	#tests QAGame PerformanceTest and RenderTest map with various stats on and off

Change 4003159 by Mark.Satterthwaite

	Undo parts of changelist 3970553 - the ref-counted pointer approach to returning textures to the pool is not working as expected so we'll remove that. It'll be faster on the CPU without it and everything works thanks to the changes this CL made to the way textures were released.

	#jira UE-57538

Change 4003287 by zachary.wilson

	Adding reflection capture content to TM-LightingScenarios

Change 4003395 by Arne.Schober

	DR - Fix unitzialised value when clicking Go To in the editor
	#jira UE-57048

Change 4003425 by Rolando.Caloca

	DR - vk - Fix for new occlusion queries

Change 4003530 by Arne.Schober

	DR - Disable GPU Benchmark in headless configurations

	#jira UE-57673

Change 4003717 by Rolando.Caloca

	DR - vk - Fix for depth not store, stencil store

Change 4003719 by Rolando.Caloca

	DR - Minor switch to render pass

Change 4003720 by Mark.Satterthwaite

	Don't suballocate private memory buffers on Vega and only Vega as there is something wrong with the blits in those cases but I can't capture a GPU trace to find out what right now (the driver is broken) - could be a bug in my code but this works on Polaris and Nvidia so it will need to be filed as a radar for AMD.
	Remove the FMetalBufferChunk from FMetalBuffer and simply store a pointer to the owning Heap/Magazine allocator. The FMetalResourceHeap now calls a new Release function to return the buffer to the allocator which will be faster on the CPU.

	#jira UE-57659

Change 4003854 by Mark.Satterthwaite

	Undo parts of 3990064 and try a different approach to get the uniforms to upload and remain available in the right places. As the original bug has been lost to time we should keep an eye out for missing buffer bindings by running under the Metal validation layer periodically.

	#jira UE-57576

Change 4004709 by Rolando.Caloca

	DR - Support for D3D 11, 12 & Vulkan for UAVs off Index Buffers

Change 4005149 by Guillaume.Abadie

	Adds shader permutation to avoid clamping input buffer UV in DOF's gather pass.

Change 4005284 by Uriel.Doyon

	Resaved volume texture assets with proper engine version.

	#jira UE-57534

Change 4005286 by Guillaume.Abadie

	Reduces constant setup in DOF's gather pass.

Change 4005359 by Rolando.Caloca

	DR - vk - Fix annoying warning

Change 4005363 by Rolando.Caloca

	DR - Fix android not finding vulkan shaders

Change 4005457 by Rolando.Caloca

	DR - vk - Fix swapchain crash

Change 4005473 by Patrick.Kelly

	UE-57135: Editor crash if set Reflection Capture Resolution to be 64 and New a Default level

	Codde by Daniel
	Tested by Patrick

Change 4005474 by Rolando.Caloca

	DR - vk - Remove glsl code from shaders. Packaged QAGame goes from 176MB to 162MB

Change 4005759 by Krzysztof.Narkowicz

	Fixed a bug, where reflection capture build is called, even though we are in mobile preview mode.
	#jira UE-57743

Change 4005774 by Mark.Satterthwaite

	Update the wave intrinsics to avoid implicit bool->uint conversion that Apple don't like.

	#jira UE-57750

Change 4005974 by Mark.Satterthwaite

	Don't use cubemap array types on iOS Metal as they aren't available on all devices and we need to maintain backward compatibiliy for years to come.

	#jira UE-57083

Change 4006056 by Mark.Satterthwaite

	Remove the use of the PrimitiveType argument from Metal draw calls.

	#jira UE-57822

Change 4006139 by Mark.Satterthwaite

	- Move the render-pass functions into the MetalRHI implementation for later alteration.
	- Implement Index buffer UAVs for Metal - makes them more like vertex-buffers so this is one more step on the road to a unified buffer base-class implementation.

Change 4006215 by Mark.Satterthwaite

	Metal's begin & end render/compute pass API implementation will take some time, but for now make it not depend on the parent stub implementation.

Change 4006394 by Mark.Satterthwaite

	In lieu of a real instruction count just use the number of lines in the "Main" function of the shader as the instruction count for Metal.

	#jira UE-57551

Change 4006493 by Mark.Satterthwaite

	MetalRHI can currently support 4-component formats for Buffer UAVs - this might need some thought in the future as the API evolves but we might as well take advantage while we can.

Change 4006495 by Daniel.Wright

	Integrate from Refactor branch
	* New FMaterialRenderProxy function GetMaterialWithFallback which provides both the FMaterialRenderProxy and FMaterial.  Needed when falling back to default material, so that proxy and material resource match.
	* Local vertex factory uniform buffer

Change 4006851 by Brian.Karis

	Fix for joined charts forming an L to inflate both axii.

	Thanks to Jess Kube of The Coalition.

Change 4006852 by Brian.Karis

	Fix for hard coded reflection capture cube map size. Should fix light static light aliasing in captures

Change 4006918 by Brian.Karis

	New ByteBuffer functionality. Memcpy and scatter upload. Can implement GPU side TArray reflection.

	Not yet used by checked in code. WIP optimization.

Change 4007246 by Guillaume.Abadie

	Creates lower quality permutation for DOF's gathering pass, without Coc based weighting of the samples, and lower number of gathering ring for fast accumulator.

Change 4007291 by Guillaume.Abadie

	Exposes more DOF scalability settings.

Change 4007328 by Guillaume.Abadie

	Optimises DOF's half res only setup pass using gather4

Change 4007627 by Richard.Wallis

	Fix for when Magic Mouse cannot zoom in World Composition editor.  Missing default SNodePanel::OnMouseMove behaviour.  Tested using a classic 2xbutton + wheel mouse and a Mac MagicMouse.

	#jira UE-57030

Change 4007682 by Richard.Wallis

	No video when playing HLS streaming video on Mac.  2 Issues, FPS was zero making duration for video sample buffer nonsense and Video Track dimensions were going to zero on the AVAsset once fully initialized when playing HSL streams.  Now cache relevant details and handle zero frame rate.

	Notes:
	- Caching the frame rate is not as important as we could look it up each time and fix for zero - ignoring that at the moment.
	- Assume we DO NOT want the FrameSize to be the last fetched video frame size from the AvfMediaVideoSampler as I think that is the video quality for streaming video and not the media frame size.
	- Renamed a variable in the AvfMediaVideoSample - was called FrameRate but it was the FrameDuration by that point.

	#jira UE-56734

Change 4007731 by Rolando.Caloca

	DR - Disable byte buffers on non-hlsl based platforms

	#jira UE-57851

Change 4007741 by Rolando.Caloca

	DR - Disable byte buffers on hlslcc platforms

Change 4007782 by Mark.Satterthwaite

	Force Metal shaders, including the stdlib, to recompile.

Change 4007918 by Rolando.Caloca

	DR - vk - Some static asserts

Change 4008404 by Arciel.Rekman

	Do not crash on incompatible Vulkan drivers (UE-57521).

	#jira UE-57521

Change 4008442 by Daniel.Wright

	Better comments on ERHIFeatureLevel expectations

Change 4008494 by Arne.Schober

	DR - moved bDeletedThroughDeferredCleanup before begincleanup to catch cases where the reference is added twice to the array. also removed finishcleanup as all they ever did was deleting the pointer anyway, and it sould be adfded if such functionallity is ever required fom outside of the regular destructor.

	#jira UE-57754

Change 4008730 by Mark.Satterthwaite

	After the most recent changes to handling uniform buffer dirty bits in MetalRHI we should guard against attempts to set an unbound uniform buffer.

	#jira UE-57870

Change 4008949 by Brian.Karis

	Fix compile warning

Change 4008951 by Brian.Karis

	Added LTC LUT textures

Change 4009326 by Guillaume.Abadie

	Compiles out DOF's gathering bokeh simulation on platform other than desktop.

Change 4009380 by Krzysztof.Narkowicz

	Moved area light code before the contact shadows, so contact shadows use representative light's direction.
	Merged all contact shadows shader code.
	Contact shadows keep constant screen space length independent of FoV settings.
	Contact shadows for translucents.
	Contact shadows for eye.

Change 4009555 by Guillaume.Abadie

	Splits DOFCocTile.usf in two.

Change 4009999 by Yuriy.ODonnell

	MallocStomp can now be enabled on certain platforms using '-stompmalloc' command line argument.

	Previously it was necessary to modify MallocaStomp.h and re-compile the engine.
	Currently supported platforms: Win64, Mac, Linux.

	Replaced hard-coded page size with FPlatformMemory::GetConstants().PageSize.

Change 4010288 by Rolando.Caloca

	DR - vk - Fix for vertex streams

Change 4010289 by Krzysztof.Narkowicz

	D3D12 - fixed depth bounds bug, where depth bounds wasn't properly set to [0;1] after disabling.

	#jira UE-57510

Change 4010297 by Rolando.Caloca

	DR - vk - Remove some functions for android

Change 4010315 by Rolando.Caloca

	DR - vk - Remove create info macro

Change 4010451 by Rolando.Caloca

	DR - vk - Reuse samplers
	- Infiltrator goes from 5759 to 24 samplers!

Change 4010627 by Rolando.Caloca

	DR - vk - Fix missing values for tracking swapchain validation

Change 4011924 by Guillaume.Abadie

	Implements tile based early return optimisation on DOF's postfiltering method.

Change 4011941 by Guillaume.Abadie

	Shaves some ALU in DOF's accumulator for LowQuality permutation.

Change 4012093 by Yuriy.ODonnell

	Disable MallocStompOverrunTest() in static analysis config, as it intentionally performs an out-of-bounds access.

Change 4012195 by Rolando.Caloca

	DR - vk - Fix for mobile backbuffer layout

Change 4012202 by Rolando.Caloca

	DR - vk - Don't use staging buffers on UMA

Change 4012467 by Rolando.Caloca

	DR - Remove redundant check

Change 4012486 by Rolando.Caloca

	DR - Fix missing transition

Change 4012518 by Guillaume.Abadie

	Implements fast shader permutation for DOF's TAA pass.

Change 4013084 by Arciel.Rekman

	Fix for Linux clock discrepancy.

	- Causing at least one precision issue, possibly more.

	(Edigrating 4003273, 4012462 from //UE4/Dev-Editor/... to //UE4/Dev-Rendering/...)

Change 4013266 by Uriel.Doyon

	Fixed crash when setting SceneDepthTextureNonMS and not having valid depth buffers in the  SceneContext.

Change 4013626 by Uriel.Doyon

	Fixed crash in the lighting build when creating a blueprint of the ALight and placing a light component in it.
	#jira UE-51672

Change 4013805 by Rolando.Caloca

	DR - Fix more missing transitions

Change 4014128 by Arne.Schober

	DR - Do not create LocalVFUniformBuffer when running without MVF

	#jira UE-57929

Change 4014193 by Uriel.Doyon

	Editing component transforms now invalidate the component's lighting cache.

	#jira UE-48134

Change 4014282 by Rolando.Caloca

	DR - vk - Remove extra validation during dump

Change 4014584 by Uriel.Doyon

	Duplicated static meshes now generate a new GUID to prevent possible issues with lightmass.
	#jira UE-49064

Change 4014604 by Uriel.Doyon

	UStaticMesh  postduplicate now only generates a new GUID if !bDuplicateForPIE.

Change 4015460 by Guillaume.Abadie

	Composes separate translucency within DOF's recombine pass.

Change 4015571 by Guillaume.Abadie

	Refactors tonemapper to use global shader permutation API, that adds permutation for HDR output device rather than dynamic branching that some shader compiler are not very well optimizing.

Change 4015984 by Krzysztof.Narkowicz

	Fixed crash inside DFAO resource allocation, when DFAO viewport has zero area.

	#jira UE-58000

Change 4016056 by Mark.Satterthwaite

	Fix Mac Metal shader compilation of texture cube arrays.

Change 4016062 by Richard.Wallis

	Convert things like Space, Delete, F6 etc to unicode so they display correctly on the Mac menu rather than first letter of word.  Added the default Mac commands to the GenericCommands so we get a Chord overwrite message and stop things like cmd+ q / w / h from getting bound.

	#jira UE-46999

Change 4016109 by Mark.Satterthwaite

	One unified Metal buffer implementation - will make further changes a heck of a lot easier.

Change 4016221 by Patrick.Kelly

	UE-57617: Ensure changing viewmode to ShaderComplexity while in -game

Change 4016238 by Guillaume.Abadie

	Makes clang happy again in Tonemapper.

Change 4016309 by Mark.Satterthwaite

	More *_RenderThread implementations for MetalRHI.

Change 4016414 by Mark.Satterthwaite

	And MetalRHI version of CreateStructuredBuffer_RenderThread...

Change 4016498 by Mark.Satterthwaite

	Don't hold on to the uniform buffers bound to the hull shader when switching to a tessellated draw call as they'll have the wrong buffer layout.

	#jira UE-57930

Change 4017394 by Juan.Canada

	OpenGL: Fixed shading artifacts due incorrect UNORM/SNORM conversions in skin/skincache/computetangent shaderss.
	#jira UE-57691

Change 4017522 by Rolando.Caloca

	DR - vk - Remove unused code path (old mip generation detection)

Change 4017539 by Rolando.Caloca

	DR - vk - Fix for sky lighting mips showing green on AMD

Change 4017542 by Arciel.Rekman

	Moved appCountTrailingZeros to a non-SSE header (fixes ARM64 build).

	- Arguably WITH_SLI shouldn't apply to Linux on ARM but the fact that the function wasn't available is bad on its own.

Change 4017827 by Guillaume.Abadie

	Optimises DOF's scattering cost by a third.

Change 4017835 by Rolando.Caloca

	DR - Only allow a render pass to generate mips for one color render target

Change 4017889 by Mark.Satterthwaite

	Cache all the Metal state objects to avoid hitting the API unnecessarily.

Change 4018251 by Mark.Satterthwaite

	Fix broken rendering on Metal that tracked back to the innocuous looking changes in CL #4006495 (no blame attached - these changes are entirely reasonable) and cause various bugs in QAGame's TM-DistanceFields, ElementalDemo and probably more. Doesn't fix broken SpeedTree rendering :(.

	MetalRHI was allowing uniform buffers to blow away linear texture buffers when the constant buffer has been elided due to dead-code elimination. This problem can manifest without linear textures if the uniform buffer contains both constant data and a resource-table but the shader doesn't use any of the constant data. That's because Metal doesn't separate constant buffers from any other kind of buffer unlike D3D which separates all the slots out - and Metal doesn't provide enough buffers to emulate the D3D arrangement. So far this has only manifested in the MVF + Linear Texture case but a more robust solution will be necessary long term.

Change 4018514 by Guillaume.Abadie

	Implements r.DOF.Scatter.MinCocRadius.

Change 4018553 by Guillaume.Abadie

	Implements r.DOF.Scatter.MaxSpriteRatio to control the budget upperbound of DOF's scattering

Change 4020369 by Yuriy.ODonnell

	Disable MallocStompOverrunTest in all static analysis configs (using USING_CODE_ANALYSIS macro)

	Previously was only disabled for PVS-Studio.

Change 4020620 by Arciel.Rekman

	Fix XboxOne CIS (fallout of appCountTrailingZeros move).

Change 4020949 by Guillaume.Abadie

	Configures DOF in scalability settings.

Change 4021593 by Rolando.Caloca

	DR - vk - Support for Aftermath style api on AMD

Change 4021740 by Rolando.Caloca

	DR - vk - Change log output

Change 4022008 by Uriel.Doyon

	Fixed renderthread stalls when streaming texture mips on low end systems.

Change 4022135 by Rolando.Caloca

	DR - vk - Fix last mip's layout during mip chain creation

Change 4022607 by Jian.Ru

	Speculative fix for a bug where an invalid vertex buffer is deferenced
	#jira UE-56229

Change 4022890 by Rolando.Caloca

	DR - Fix reference count not getting released

Change 4023540 by Mark.Satterthwaite

	Avoid some pointless retain/release calls on Metal Encoders.

Change 4023796 by Marcus.Wassmer

	Tell users they are over the maximum size when allocating very large rendertargets.

Change 4025337 by Yuriy.ODonnell

	Improved use-after-free detection mechanism and physical memory usage of MallocStomp on Windows.

	MallocStomp on Windows will now reserve virtual address space for every allocation and then commit physical pages only to the valid usable part.
	Physical pages will be unmapped on Free, but virtual address space will not be released and therefore will never be re-used.

	Virtual address space is allocated from the OS in blocks of 1GB and then linearly sub-allocated.
	This reduces VA space usage, as VirtualAlloc returns blocks on 64KB granularity even if we just need 4KB. As a small bonus, this also reduces number of syscalls per allocation.

	This dramatically increases accuracy of use-after-free detection, but consumes significant amount of memory for the OS page table.
	Virtual memory limit for a process on Win10 is 128 TB, which means we can afford to keep virtual memory reserved for a long time.
	Running Infiltrator demo consumes ~700MB of virtual address space per second.

	Additionally, committing physical pages only for the usable part of the entire virtual block reduces physical memory usage by ~30% compared to old behavior,
	which allocated and committed entire block of pages via BinnedAllocFromOS and then marks border page as non-accessible.

Change 4026047 by Rolando.Caloca

	DR - Fix test/shipping

	#jira UE-58148

Change 4026150 by Krzysztof.Narkowicz

	Force proper ordering of buffer visualization materials - after tonemapping (so exposure doesn't influence it) and before editor stuff like icons.
	#jira UE-57992

Change 4026226 by Rolando.Caloca

	DR - Fix static analysis

	#jira UE-58150

Change 4026354 by Jian.Ru

	Debug check trying to catch a crash. Only enabled in editor build
	#jira UE-50111

Change 4026655 by Rolando.Caloca

	DR - Fix for static analysis

	#jira UE-58149

Change 4026763 by Rolando.Caloca

	DR - Remove references to defunct CCT to avoid confusing licensees

Change 4027167 by Uriel.Doyon

	Fixed possible out of bound buffer access when serializing with FDuplicateDataWriter.

	#jira UE-56509

Change 4027850 by Jian.Ru

	Prevent log spam
	#jira UE-50111

Change 4029546 by Rolando.Caloca

	DR - Compile fixes

Change 4029624 by Yuriy.ODonnell

	Addressed static analysis errors in MallocStomp

	- VirtualAlloc return value is now explicitly checked.
	- C6250 is suppressed, as VirtualFree does not release address space by design.

Change 4030225 by Yuriy.ODonnell

	Static analysis warning fix: make sure declaration of Sleep() is consistent between Windows headers and TBB

	The complexity with this particular case is that the warning is generated in synchapi.h, which is included by some Windows headers.
	If a module includes TBB and then Windows platform headers, static analyzer will report this warning.
	Suppressing it would require wrapping all instances of Windows header includes in third-party macros.

	Current pragmatic solution is to modify the Sleep() declaration in TBB header to be consistent with Windows and to report the issue to Intel for a permanent fix.

Change 4030440 by Rolando.Caloca

	DR - Fix crash on mobile

	#jira UE-58222

Change 4030570 by Daniel.Wright

	Allow null SRV's in uniform buffers for feature levels that don't support SRV's in shaders

Change 4030618 by Arne.Schober

	DR - missing tangent/normal sign conversion after integration from main
	#jira UE-58224

Change 4031588 by Rolando.Caloca

	DR - vk - Fix compile error when missing vkCmdWriteBufferMarkerAMD

Change 4032145 by Mark.Satterthwaite

	Fix UE-58268 by only emitting the base_instance/base_vertex variables required to fix-up the instance/vertex ID values to match D3D when the Metal version is 1.1 or higher, earlier versions don't support these features.

	#jira UE-58268

Change 4032209 by Rolando.Caloca

	DR - Fix crash on EngineTest: Mesh Batch's UserIndex is not a union anymore

Change 4033178 by Guillaume.Abadie

	Fixes FXAA sampling outside viewports, that was causing black outline on bottom and right edge of the screen when ViewSize != BufferSize, problematic for some screenshot automated test.

	#jira UE-58151

Change 4034489 by Daniel.Wright

	Fixed UStaticMeshComponent modifying its UStaticMesh when undoing a change.  This caused a crash when other static mesh components using the same mesh asset were rendered, since their rendering state was not recreated.  A component should not modify its asset during PostEditUndo.
	 * This behavior has been present for a long time but was previously hidden because only the vertex factory of the mesh asset is cached in static draw lists, not any of its rendering resources (eg vertex declaration).

Change 4035157 by Uriel.Doyon

	Fixed deadlock in the streaming code when running with -onethread.
	#jira UE-58299

Change 4035198 by Rolando.Caloca

	DR - vk - Fix issue when an older SDK was installed, UBT would pick it (should pick the newer of ThirdParty\Vulkan or installed SDK).

	#jira UE-58267

Change 4035730 by Arne.Schober

	DR - Fix missing Fog parameters during LightScattering Injection

	#jira UE-57608

Change 4035843 by Daniel.Wright

	Reimplemented support for EyeAdaptation node in opaque materials

Change 4036837 by Marcus.Wassmer

	Replace some of the screenshots to match new un-tonemapped buffer visualization

Change 4036980 by Rolando.Caloca

	DR - vk - Fix deadlock contention during mem allocation on Linux

Change 4037225 by Guillaume.Abadie

	Fixes jittering selection outline.

	#jira UE-58350

Change 4038056 by Marcus.Wassmer

	roll back changelist 4026150.  breaks a bunch of automated tests by cutting off half the image.
	Change can go back in later with that part fixed also

Change 4038296 by Jian.Ru

	Static analysis fix
	#jira UE-58377

Change 4038402 by Ben.Marsh

	Suppress IncludeTool warnings caused by CL 3998947.

Change 4038514 by Arne.Schober

	DR - Fix case with MVF where instance offset is not supported by the API (in this case only foliage OpenGL and TvOS), usually the buffers are offsetted instead but with MVF we do not use offsetted buffers, therfore the offset needs to be passed into the shader although we are drawing with offset of 0.

	#jira UE-57652

Change 4038747 by Marcus.Wassmer

	Back out changelist 3853645, causing us to lose shadows in the shaderhair test

Change 4040138 by Rolando.Caloca

	DR - Fix compile warning

Change 4041614 by Rolando.Caloca

	DR - vk - Fix for Oculus module

	#jira UE-58267

Change 3810277 by Daniel.Wright

	Ray Traced Distance Field shadows use a two pass tile culling algorithm with no tile max - fixes flickering from tile overflow in dense areas or with a low sun angle.  Costs .2ms on PS4.
	The distance field scene buffers now use float4 on PS4 and Xbox, saves .1ms on PS4.

Change 3817029 by Uriel.Doyon

	Added UVolumeTexture, which use 3D textures. Compressed formats are supported on DX11, DX12, PS4 and XB1.
	Projects targetting OpengGL don't have access to compressed formats (as the implementation has texture tiling issues).
	Add "r.AllowVolumeTextureAssetCreation" set as 0 by default, which controls whether volume texture can be sampled in materials and whether they can be created from 2D texture assets.
	Platform not supporting BC7, will now fallback on RGBA8 instead of DXT to preserve quality, in an attemps to increase usage of BC7.

	#jira UE-32263

Change 3819960 by Michael.Lentine

	Expose UEPhysics Clothing Parameters through UI.

Change 3823401 by Rolando.Caloca

	DR - Add NumQueriesInBatch to RHIBeginOcclusionQueryBatch

Change 3844805 by Arne.Schober

	DR - Increased Intermediate normal of Umodel and Skelmesh from 8bit Unorm Compressed to float. A resave/rebuid/reimport of the meshes is recommended to recover some lost precision.
	Fixed an issue with compressed (packed) normals on the GPU which were off by one integer representation. Also switched from UNORM to SNORM to get a discrete zero representation and removed some mads from all the VertexShaders.

Change 3847283 by Marcus.Wassmer

	Extra fixes from Uriel

Change 3876607 by Rolando.Caloca

	DR - Use render passes when running occlusion queries
	- Removes the RHI(Begin|End)OcclusionQueryBatch API

Change 3903799 by Daniel.Wright

	[Integrate] Pass Uniform Buffers
	* All pass-constant shader inputs should go into the appropriate pass uniform buffer, instead of being set per-draw
	* Moved many per-draw base pass parameters over to the Base Pass Uniform Buffer
	* Opaque and Translucent base pass shaders have different uniform buffers, which allows compile errors when accessing an invalid resource (eg GBuffer in Opaque), instead of silently falling back to GBlackTexture

	Uniform buffers can now contain nested structs with UNIFORM_MEMBER_STRUCT()
	* This allows composing a uniform buffer at a particular update frequency out of many features, with encapsulation of each feature's parameters in a struct.
	* Eg deferred fog uses FFogUniformParameters, but so does translucency in the base pass, where FFogUniformParameters is reused nested inside the base pass uniform buffer.
	* Resources can now be located anywhere in the uniform buffer.  Padding is inserted to the cbuffer representation to keep memory layouts matching.  In the future the cbuffer could be compacted.
	* RemoveUniformBuffersFromSource() which works around HLSLCC lack of struct initializers now handles nested structs

Change 3917500 by Rolando.Caloca

	DR - Change depth bounds so only the enable bit is in the PSO, allow min/max to be dynamically modified

Change 3964907 by Guillaume.Abadie

	Implements RectList topology support in RHI.

Change 3979171 by Mark.Satterthwaite

	Copying //Tasks/UE4/Dev-UERNDR-354-mtlpp to Dev-Rendering (//UE4/Dev-Rendering):

	Rewrites MetalRHI in terms of mtlpp, which is a C++ wrapper library built around Metal's Objective-C API that attempts to reduce overheads and eliminate resource lifetime errors.

	Regarding mtlpp:
	- The mtlpp library uses C++ constructor/destructor and smart-pointer style management of Objective-C retain/release calls to prevent over- and under-release problems.
	- To reduce Objective-C overheads the mtlpp library caches the internal C-function that implements the Objective-C selectors for the most commonly used Metal protocol types and calls the function directly - this avoids objc_msgSend which does this look-up dynamically and thus improves CPU performance slightly.
	- Another advantage is that mtlpp provides infrastructure to extend the Metal API slightly to help improve MetalRHI - the two important aspects are mtlpp::CommandBufferFence which provides a consistent CPU<->GPU synchronisation primitive and sub-buffer allocations from mtlpp::Buffer which allow for far superior memory management.
	- Validation functionality is also provided by mtlpp to detect CPU vs. GPU data races and resource lifetime validation - this is expensive and is thus optional and compiled out from Shipping binaries that should be used when performance is most critical. The validation only works between resource modification and *submitted* command-buffers - anything that is being actively encoded on the CPU is ignored and it remains the responsibility of the application to validate the order of operations when encoding.

	Apple Platform:
	- LLM support which tracks Objective-C objects is enabled only on macOS - we don't have the necessary libraries to intercept and override the internal system calls on iOS.

	MetalRHI:
	- All the types are switched over, (mostly) insuling the external API from the horror of Metal and Objective-C.
	- Buffers are now managed quite differently, small buffers are allocated from a magazine allocator that allocates in fixed blocks from a larger parent buffer, intermediate sized buffers are allocated from a simple heap allocator that wraps a larger buffer and anything of reasonable size (>2Mb) will use the pooled allocator. This *radically* reduces the number of buffer resources, by as much as a factor of 10, because they are now sub-allocated without the need to use MTLHeap or MTLFence so they are performance equivalent to the existing implementation on the GPU and much faster on the CPU. Total memory use is approximately the same.
	- Vertex & index buffer management has been updated to reflect changes in the management and to avoid reallocating buffers which provide a Linear Texture (for SRVs) unless strictly necessary. This ensures that even in cases where a dynamic buffer is updated multiple times in a frame it will still work acceptably well.
	- The Metal ring-buffer implementation is completely different again, this time it can use Managed memory on macOS which allows for much better performance on eGPUs which will be more and more important for Mac.
	- Everyone that needs to wait on a command-buffer fence (rather than a command-buffer itself) now use mtlpp::CommandBufferFence, which prevents race conditions between the different command-buffer handlers (which sometimes execute out of order).
	- LLM tracking should now report the same data as the MetalRHI stats group for buffer & texture allocations - there is no segmentation for Vertex/index/Structured/Uniform allocations in Metal so these numbers are going to be wrong and will need to be rethought.
	- What will be unseen are the number of small but important resource usage fixes that avoid stale resources from being bound to the device after the point at which they become invalid. This should eliminate a class of errors where the GPU uses a resource pointer that is modified by the CPU and was necessary to satisfy the new mtlpp validation code.

	Other:
	- Remove the Metal focused workarounds from the ClothBuffer resource binding and related vertex-buffer SRV - these were put in when MetalRHI/MetalShaderFormat couldn't handle float->uint conversions correctly and they should now.
	- Fix a validation error caused by trying to render a 0-sized scissor rect which is invalid in Metal and simply pointless elsewhere.
	- Consistency of disabling the Manual Vertex Fetch behaviour in shaders.

	#jira UERNDR-354

Change 3979312 by Rolando.Caloca

	DR - Remove bogus bKeepOriginalSurface parameter in CopyToResolveTarget

Change 4005122 by Rolando.Caloca

	DR - Support for PS4 Index Buffer UAVs

Change 4016298 by Guillaume.Abadie

	Fixes DOF hybrid scattering on platforms that supports RectList topology.

Change 4018575 by Guillaume.Abadie

	Optimises DOF's reduce pass when doing scattering compilation.

Change 4020317 by Guillaume.Abadie

	Implements WaveBroadcastIntrinsics.ush.

[CL 4042226 by Marcus Wassmer in Main branch]
2018-05-01 10:36:33 -04:00
Ben Marsh
7ce4c05fda Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 4034418)
#lockdown Nick.Penwarden
#rb none

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

Change 3851142 by Robert.Manuszewski

	When BP clustering is enabled, make sure to add the template to the BP cluster when replacing it.

Change 3853797 by Ben.Marsh

	BuildGraph: Add a <Trace> element, which allows logging messages after the string is parsed (as opposed to the Log task, which logs them at runtime). Useful for debugging macro expansion, etc...

	Also add a -showdiagnostics parameter, to have diagnostic messages output even when running with the -listonly option.

Change 3857540 by Graeme.Thornton

	Properly process the uexp file for a umap asset when generating a pak patch. Stop those uexp files being included in the patch even when they haven't changed

Change 3860062 by Steve.Robb

	Fix for FString::Reset()'s buffer not being an empty null-terminated string (affects FString::ParseIntoArray, for example).

Change 3860138 by Steve.Robb

	Fix for FString::ParseIntoArray() for when string memory has been allocated but has no characters.

Change 3860273 by Steve.Robb

	Tidy up of FHotReloadClassReinstancer::FCDOWriter to not do stuff in constructors.

Change 3863203 by Steve.Robb

	Crash fix for UObjects whose constructors are defined as = default;, which would re-null the UObject state (ClassPrivate, OuterPrivate etc.).

	See: https://udn.unrealengine.com/questions/412930/crash-due-to-default-constructor.html

Change 3864588 by Graeme.Thornton

	Crypto Keys Improvements
	 - Removed UAT command line params for encryption. Centrally configured by the editor settings now.
	 - UAT staging now creates a small json file containing the keys and settings used for encryption and signing and stores it in the build metadata
	 - Minor refactoring of UAT encryption processing to use the new cryptokeys json file
	 - UnrealPak can be told to get its encryption settings from a json crypto file with the "-CryptoKeys=<filename>"
	 - UnrealPak can now accept a "PatchCryptoKeys=<filename" parameter which gives it a filename to a cryptokeys json file that it can use to unpack the patch reference paks

Change 3864691 by Robert.Manuszewski

	Don't add objects that are in root set to GC clusters to prevent them from keeping the clusters alive forever.

Change 3864744 by Robert.Manuszewski

	Added the ability to get the actual filename of the log file FOutputDeviceFile writes to.

Change 3864816 by Graeme.Thornton

	TBA: Minor formatting improvements to textasset commandlet

Change 3868939 by Graeme.Thornton

	TBA: If -outputPath isn't supplied to TextAsset commandlet, output converted files to the {ProjectSaved}/TextAssets directory

Change 3869031 by Graeme.Thornton

	TBA: Changed timing logs in TextAsset commandlet to be Display so we can see them in the EC log

Change 3871802 by Steve.Robb

	Class cast flags and property flags are now visible in the debugger.

Change 3871863 by Robert.Manuszewski

	Serializing object will now be passed to GC so that it can be logged in case the referenced objects is garbage.

Change 3874413 by Steve.Robb

	Algo::MinElement and Algo::MaxElement, for finding the minimum and maximum element in a range, and *By versions which take projections.
	TRangePointerType moved to its own file and used in Algo::MinElement and Algo::MaxElement.

Change 3874457 by Ben.Marsh

	When spawning child processes, only allow them to inherit the writable ends of the stderr and stdout pipe. Fixes an issue related to AutomationTool hanging when the editor closes after running automation tests.

	The editor launches ADB.EXE (Android Debug Bridge) on editor startup, which forks itself to initialize a server. Even though the child process has its own stdout and stderr pipes, it also inherits the pipes for the editor. When run from C#, as we do for automation tests, Process.WaitForExit() waits for all pipes to be closed before returning. This can't happen if the forked ADB instance still has a reference to the editor's pipes.

Change 3876435 by Robert.Manuszewski

	Don't add root set objects to level actor container to prevent situations where clusters are kept alive forever

Change 3878762 by Robert.Manuszewski

	Fixing potential LinkerLoad leak when a package that still has a linker associated with it is being destroyed.

Change 3878850 by Robert.Manuszewski

	SerializePreloadDependencies will now serialize raw data into the array instead of serializing one element at a time to speed up serialization performance.

Change 3881331 by Graeme.Thornton

	TBA: SavePackage rejigged to write all header information in terms of FStructuredArchive, with all exports written through an FArchive adapter

Change 3886983 by Ben.Marsh

	UGS: Fix notification window not expanding to fit long captions.

Change 3887006 by Ben.Marsh

	UGS: Change modal dialog to regular window style to avoid weird alignment issues under Windows 10.

Change 3887500 by Ben.Marsh

	UGS: Add support for grouping build badges by a prefix. Badges such as "Foo:Bar1", "Foo:Bar2" will be grouped together (with "Foo:" stripped from the displayed badge names).

	Also add a separate column showing the type of each change, rather than including it in the CIS column, and change badges to a more angular Windows 10 style.

Change 3887513 by Ben.Marsh

	UGS: Fix badge text drawing outside the clipping bounds.

Change 3888010 by Josh.Engebretson

	Fix UVS logging to UnrealVersionSelector/Saved/Logs and instead use project's log path
	#jira none

Change 3888418 by Ben.Marsh

	UGS: Add a cache for computed badge layout information. Improves responsiveness when redrawing.

Change 3889457 by Steve.Robb

	GitHub #4457 : Display abbreviations properly when converting FNames to display string

	#jira UE-54611

Change 3889547 by Ben.Marsh

	UGS: Add an extensible method for adding arbitrary badges to the right of the "description" column, by running a regular expression over the changelist description.

	Epic uses a "#tag" style annotations in changelist descriptions and Perforce triggers to verify them. "#jira" is used to link a changelist to an issue tracked in Jira, for example. A matcher to add a badge next to every changelist with a #jira tag, and link to the corresponding issue in Jira, could be set up with an addition to the project's Build/UnrealGameSync.ini file like this:

	[Badges]
	+DescriptionBadges=(Pattern="(?i)#\\s*jira\\s*:?\\s+([A-Za-z]+-[0-9]+)", Name="$1", Group="Jira", Color="#c0c0c0", HoverColor="#e0e0e0", Url="https://jira.it.epicgames.net/browse/$1")

	The "Pattern" attribute specifies the regex to match, and may capture portions of the matched text to be substituted later. "Label" specifies the label to appear on the badge. "Group" specifies an arbitrary identifier used to group related badges together rather than separating them with whitespace. "Color" and "HoverColor" specify hex RGB colors for the badges. "Url" specifies the path to open with a C# Process.Open call if the badge is clicked.

Change 3889726 by Ben.Marsh

	UGS: Fix description badges that don't have any associated URL.

Change 3889995 by Ben.Marsh

	UGS: Fix issue where popup menus can create top level windows in the taskbar. Seemlingly caused by capturing mouse before the window has been activated - removed capture code, and replaced with handling of OnMouseLeave() event instead.

Change 3890007 by Ben.Marsh

	UGS: Add a caption underneath the project logo which shows the current stream, to make it more obvious.

Change 3890057 by Ben.Marsh

	UGS: Fix repainting glitch when resizing window; bounds for status panel lines was not being reset correctly.

Change 3891069 by Robert.Manuszewski

	Fixing a crash in MallocBinned2 when running with malloc profiler enabled.

Change 3891084 by Steve.Robb

	Back out changelist 3881331 because it's causing cook errors.

Change 3891100 by Ben.Marsh

	UGS: Add support for a per-branch "message of the day"-style feature. Messages can be specified in a project's config file in Perforce (eg. <ProjectDir>/Build/UnrealGameSync.ini) as follows:

	[//UE4/Main/Samples/Games/ShooterGame.uproject]
	Message=:alert:  Lockdown for fixes is **5pm on Friday**. Only fixes for the 2.0 release should be submitted to this branch. [34 issues](https://jira.it.epicgames.net) are remaining as of 2/15.

	A limited subset of Markdown is supported: [web links](http://www.google.com), *italic*, _italic_, **bold**, __bold__. Icons will be supported through :icon: syntax; the only icon currently available is :alert:

Change 3891346 by Steve.Robb

	TSharedPtr::operator bool, and some usage of it.

Change 3891787 by Steve.Robb

	Fix for buffer overflow in FDebug::LogFormattedMessageWithCallstack().

Change 3892379 by Ben.Marsh

	UGS: Fix notification window containing the group fix for each build type.

Change 3892400 by Ben.Marsh

	UGS: Shrink the size of the alert panel.

Change 3892496 by Ben.Marsh

	UGS: Dim badges for changes which aren't eligable for syncing.

Change 3893932 by Steve.Robb

	Re-removal of SetShouldHandleAsWeakRef, which was originally removed in CL# 3437205.

Change 3895872 by Ben.Marsh

	UGS: Show the stream name in tab labels by default.

Change 3896366 by Ben.Marsh

	UGS: Automatically resize columns when the main window is resized, and allow specifying desired column widths for projects that have a large number of CIS badges.

	Columns are now resized proportionally, clamped to a minimum size. Columns will automatically expand up to a desired maximum size, though can be explicitly resized larger if necessary. Columns will not be resized if they are already larger than the window can show, or smaller than the window has space to show.

Change 3896367 by Ben.Marsh

	UGS: UI tweaks - change and time columns are now centered, "Unknown" badge is displayed until a change's type has been determined, increase height of status panel.

Change 3896425 by Ben.Marsh

	UGS: Speculative fix for race condition on clients displaying "under investigation" state. If the DB event is received before a change where an investigation is cancelled is polled from Perforce, we will exclude the resolve event from the list of active investigations.

Change 3896461 by Ben.Marsh

	UGS: Add an option to allow setting a tint color to be applied to the status panel, to allow identifying streams more easily. To use, add a setting similar to the following to a project's Build/UnrealGameSync.ini file:

	[//UE4/Main/Samples/Games/ShooterGame/ShooterGame.uproject]
	StatusPanelColor=#dcdcf0

Change 3899530 by Ben.Marsh

	Add unified syntax for overriding branch specific settings. Checks branch settings first, then [Default] section.

Change 3901164 by Ben.Marsh

	UGS: Add a class to store all the resources for the status panel.

Change 3901165 by Graeme.Thornton

	TBA: Attempt #2 at submitting the text asset saving code. SavePackage rejigged to write all header information in terms of FStructuredArchive, with all exports written through an FArchive adapter. Minimal amount of structured archive serialization functions added to allow this data to be written

Change 3901301 by Ben.Marsh

	UGS: Add support for reading the latest version of the project config file from Perforce. Some settings should be read depending on the CL you are synced to (eg. build steps), whereas others (MOTD, branch status) should always use the latest version. Will read the local version if checked out, to allow testing local changes.

Change 3902454 by Ben.Marsh

	UGS: Fix logo not being redrawn in the correct position when starting to sync.

Change 3903416 by Ben.Marsh

	UGS: Group badges explicitly through INI file rather than by expecting name to contain ':'.

Change 3904154 by Josh.Engebretson

	Adding Breakpad to ThirdParty sources (Git Commit: 49907e1c3457570f56d959ae26dec6c3a5edd417 https://chromium.googlesource.com/breakpad/breakpad)
	#jira UE-55442

Change 3904648 by Ben.Marsh

	UGS: Remove files from the workspace that are excluded by the sync filter.

	The user's config file stores a hash of the last sync filter. During syncing, if this hash doesn not match the previous value, we enumerate all the files in the #have list and remove anything masked out by the filter.

	#jira UE-47335

Change 3905442 by Steve.Robb

	Change of the ConvertFromType() multi-bool return value to a more descriptive enum.
	Some return values here do not make sense - this is because the existing logic is being preserved and will be fixed in a separate change.

Change 3905629 by Ben.Marsh

	UGS: Fix race condition between two child processes starting on different threads, and inheriting the other's intended stdout/stderr pipes. This prevents pipes being closed when one of the child processes shuts down, and causes waits on the read ends of those pipes to continue indefinitely.

Change 3906447 by Steve.Robb

	Rename EConvertFromTypeResult enumerators.

Change 3906574 by Steve.Robb

	Crash fix for container conversion failure during tagged property import.

Change 3909255 by Daniel.Lamb

	Fixed issue with DLCpackaging crashing on windows
	#jira UE-42880
	#test EngineTest windows

Change 3909270 by Steve.Robb

	Seek instead of skipping bad properties byte-by-byte.

Change 3909324 by Steve.Robb

	Use switch statement instead of repeated if/else.

Change 3909525 by Ben.Marsh

	UGS: Use the StudioEditor target when syncing content-only Enterprise projects.

Change 3911754 by Daniel.Lamb

	Fix for building pak patches.

	#jira UE-55340

Change 3911942 by Robert.Manuszewski

	Fixing an ensure when MediaPlayer is being constructed from any thread other than the main one.

Change 3913067 by Ben.Marsh

	UGS: Allow workspace sync filter categories to re-enable categories that are disabled by the global filter.

Change 3913209 by Ben.Marsh

	UGS: Fix incorrect target name when compiling Enterprise projects.

Change 3917358 by Steve.Robb

	Fix for GetLen(FString).

Change 3919610 by Ben.Marsh

	Put data for CrashReportClient in a PAK file of its own (under Engine/Programs/CrashReportClient/Content/Paks/CrashReportClient.pak). There are a large number of small files required for it to run with loose files, which takes a lot of space on disk (due to cluster sizes), and is unweildy to move around.

	CrashReporter UFS files are tracked in a separate dictionary to regular UFS files to allow construction of the additional PAK file.

Change 3921002 by Ben.Marsh

	UGS: Add option for syncing all projects in a branch. Off by default. Also add support for masking in additional paths to be synced (eg. one or two extra projects).

Change 3921008 by Ben.Marsh

	UGS: Prevent pause waiting for mutual exclusivity when syncing precompiled binaries. We don't need to generate project files or build, so there's no need to wait in line.

Change 3921906 by Steve.Robb

	New interpolation functions for quaternions.

	https://udn.unrealengine.com/questions/419028/quaternion-interp-to-functions.html

Change 3921978 by Graeme.Thornton

	TBA: Make "Loader" member of FLinkerLoad private to prevent use outside of FLinkerLoad. This archive could be something unexpected if the linker is for a text asset package, so we need to stop people accessing it.

Change 3924520 by Graeme.Thornton

	UnrealPak: Improve encryption summary log messages

Change 3924522 by Graeme.Thornton

	UAT: Add *Encryption.ini to the list of auto-blacklisted config filenames

Change 3924604 by Graeme.Thornton

	UnrealPak: If encryption keys are parsed and fail the encrypt/decrypt test, throw a fatal error. The exectutable will have those same keys embedded so there is no point allowing the paks to be created with broken keys.

Change 3924638 by Graeme.Thornton

	Crypto: Improvements to parsing of old fashioned encryption.ini settings:
	 - AES keys that are too long or short (need to be 32 bytes) will now emit a warning when being parsed, and be truncated or expanded before adding to the crypto settings.
	 - Signing keys will emit an error when they are too long (>64bytes)
	 - Unrealpak will still assert when invalid settings are passed via the other mechanisms (command line or -encryptionini mode). Settings via the crypto json file should now be sanitized and not cause issues

	#jira UE-55080

Change 3924747 by Steve.Robb

	Fix for degrees.

Change 3925459 by Chad.Garyet

	Adding check to not to attempt to delete autosdk workspace if it doesn't already exist.

Change 3926703 by Ben.Marsh

	BuildGraph: Include the path to the XML file when displaying an XML parse error.

Change 3926917 by Ben.Marsh

	UBT: Allow overriding the name of the UE4 solution on a branch-specific basis. Useful for switching between multiple UE4 workspaces. Also add support to the editor and UGS for opening the correct solution (determined via a text file saved to Engine/Intermediate/ProjectFiles).

	Set the solution name using an entry in BuildConfiguration.xml as follows:

		<ProjectFileGenerator>
			<MasterProjectName>UE4_Main</MasterProjectName>
		</ProjectFileGenerator>

Change 3927683 by Graeme.Thornton

	UAT: When building with chunk installs enabled, don't generate the master manifest from each pak creation thread. Just do it once after all pak files have been created. Avoids intermittent crash with multiple threads trying to write the same json file.

Change 3928111 by Ben.Marsh

	UBT: Add an option <bMasterProjectNameFromFolder> which allows setting the solution name based on the folder that it's in.

Change 3928926 by Ben.Marsh

	BuildGraph: Add support for enumerating content copied by the <CsCompile> task. Also add support for invoking methods on string properties.

Change 3931041 by Graeme.Thornton

	TBA: Add option to textasset commandlet to also include engine content in a resave

Change 3931043 by Graeme.Thornton

	TBA: Redirect some more FArchive members in FArchiveProxy

Change 3931913 by Ben.Marsh

	UGS: Do not create a modal dialog if a scheduled sync is unable to run because the editor is open, and do not run the editor after a scheduled sync.

	#jira UE-47368

Change 3932419 by Ben.Marsh

	UGS: Allow selecting which projects to sync on schedule. Any projects not already opened at the time the schedule is triggered will be opened first.

	#jira UE-33541

Change 3932483 by Ben.Marsh

	PR #3949: UnrealGameSync: Add environment path field to custom BuildStep (Contributed by frankie-dipietro-epic)


Change 3932624 by Ben.Marsh

	UGS: Add an error dialog when trying to clean the workspace before closing the editor.

	#jira UE-42308

Change 3932679 by Ben.Marsh

	UGS: Add the date/time to the end of the sync log.

	#jira UE-33540

Change 3932705 by Ben.Marsh

	UGS: Prompt to close the editor before allowing the user to enter a changelist to sync to, when syncing to a specific changelist.

	#jira UE-53182

Change 3933318 by Ben.Marsh

	UGS: Detect more programs running before allowing a sync to start, show a dialog listing them, and add an option to ignore if necessary.

	#jira UE-33535, UE-53914

Change 3933840 by Graeme.Thornton

	TBA: When loading assets, only use structured archive adapters for exports when loading text files.

Change 3936040 by Ben.Marsh

	UGS: Rewrite application lifecycle to fix issues with scheduled syncs on background windows not activating, and window jumping to the front after auto-update.

	Now uses a custom application context to allow creating separate 'main' windows (first the "opening projects" form, then the regular form), and does not require any forms to be shown in order to be updating in the background.

	#jira UE-52870

Change 3940230 by Robert.Manuszewski

	Fixes for FilenameToLongPackageName crashes when runnign commandlets

Change 3940240 by Graeme.Thornton

	Automated cycling of encryption and signing keys

Change 3940243 by Graeme.Thornton

	UAT: CryptoKeys automation script

Change 3940321 by Ben.Marsh

	UGS: Add a "Bisect" mode for regressing bugs between a certain range of changes. To use, select a range of changes by holding down the shift key or individual changes by holidng the control key, then right click and select "Bisect these changes". Individual changes in the list can be marked as "Bisect: Pass" or "Bisect: Fail" from the context menu, and syncing will find the next change in the center of the range.

Change 3940538 by Ben.Marsh

	UBT: Always determine whether a project is a foreign project or not from the valid .uprojectdirs entries, rather than relying on the user passing -game on the command line.

Change 3941285 by Gil.Gribb

	UE4 - Removed PRAGMA_DISABLE_OPTIMIZATION from PlatformFileCommon.h. It was an oversight.
	#jira none

Change 3942404 by Graeme.Thornton

	Pak Signing:
	 - Unify naming of pak precacher and signedarchivereader signature check functions to make it easier to search for them in crash reporter
	 - Format the signedarchivereader output to match the pak precacher
	 - When signedarchivereader detects a signature check, do the same master signature hash check that the pak precacher does to confirm that the .sig file contents haven't been corrupted since load.
	 - Add PAK_SIGNATURE_CHECK_FAILS_ARE_FATAL guarded exit to signedarchivereader signature failure
	 - Optimization for pakprecacher signature checks. Instead of locking the cached files mutex for every decoded signature, take a local copy in blocks of 16. Only re-lock if we need more. Grab the initial batch when setting up. In most cases, reduces the number of locks to 1 per signature check call.

Change 3942825 by Ben.Marsh

	UAT: Allow passing -Project<N>=Foo.uproject arguments to the MegaXGE commandlet (eg. -Target1="ShooterGame Win64 Development" -Project1="D:\ShooterGame\ShooterGame.uproject") so it can be used from an installed engine build.

Change 3942839 by Ben.Marsh

	UBT: Explicitly query the number of logical processors in the system, to fix Environment.ProcessorCount just returning the number available to the .NET framework. For machines with > 64 cores, processors in a different processor group will not be included in this number.

Change 3943153 by Ben.Marsh

	Use the correct logical processor count in ParallelExecutor.

Change 3943210 by Ben.Marsh

	UGS: Add an option to the editor arguments window that allows prompting before launching the editor.

Change 3943329 by Ben.Marsh

	UGS: Tweak appearance of bisect mode; now shows slightly transparent version of pass/fail icons, and includes remaining CL range in status panel.

Change 3944294 by Ben.Marsh

	UGS: Prompt for confirmation before removing any files from the workspace.

Change 3945283 by Ben.Marsh

	UGS: Add support for project-specific connection settings, and detection of Perforce login tickets expiring.

Change 3945325 by Ben.Marsh

	PR #4558: Changed incorrect obsolete message for ReceiptPropertyList in Modules.cs (Contributed by ryanjon2040)


Change 3947359 by Graeme.Thornton

	TBA: Fixes to loading code to allow bulk data to get a pointer from its loader archive to an archive that it can load from at a later date. For binary archives, this is just a pointer back to the same archive, but for text assets it is a pointer to a "child reader" which maintains its own structured archive that is scoped to the current location in the file.

Change 3947360 by Graeme.Thornton

	TBA: Added RoundTrip mode to text asset commandlet. Performs determinism tests in project assets to see whether they save deterministically to binary and text files, and also when they are ping-ponged between the two formats.

Change 3949431 by Graeme.Thornton

	TBA: Refactored string escaping code in json output formatter FString serializer into a common function which is now used by FName and UObject path serialization too. Fixes some odd cases where an FName contained quotation marks

Change 3950843 by Ben.Marsh

	UBT: Add a better error if an XML config file is corrupt.

Change 3952504 by Steve.Robb

	GitHub #4545 : UE-55924: CaseSensitive token recognition

	#jira UE-55961
	#jira UE-55924

Change 3952707 by Graeme.Thornton

	Make RandInit(...) log message verbose

Change 3954694 by Ben.Marsh

	BuildGraph: Add support for user-defined macros, which can contain a list of buildgraph commands and be expanded within a node. Example script in Engine/Build/Graph/Examples/Macros.xml.

	To define a Macro, use the syntax:

		<Macro Name="MyTestMacro" Arguments="PrintFirstMessage;PrintSecondMessage" OptionalArguments="PrintThirdMessage">
			<Log Message="First message" If="$(PrintFirstMessage)"/>
			<Log Message="Second message" If="$(PrintSecondMessage)"/>
			<Log Message="Third message" If="'$(PrintThirdMessage)' == 'true'"/>
		</Macro>

	To expand a macro, use the syntax:

		<Expand Name="MyTestMacro" PrintFirstMessage="true" PrintSecondMessage="true"/>

	An error will be thrown if any required arguments are missing. Optional arguments default to empty if not specified.

	Tasks within a macro are validated by the schema at the point of definition using the same rules as apply to a <Node> element, but properties are not evaluated until the macro is expanded. This allows macros to get and set properties in scope at the point that it is expanded. Local properties that are introduced within a macro do not otherwise leak to the scope that they are expanded.

Change 3954695 by Ben.Marsh

	PR #4582: Fixed incorrect condition in StagedFileSystemReference.cs (Contributed by moadib)


	#jira UE-56283

Change 3954961 by Ben.Marsh

	UBT: Fix issues caused by toolchain assuming that the editor target will be the name of the project with an "Editor" suffix. This is not necessarily the case; the launcher will allow you to instantiate a project with any name, and it will not rename the target files.

	#jira UE-56040

Change 3955785 by Steve.Robb

	GitHub #4546 : Don't discard errors from zlib inflate

	#jira UE-55969

Change 3955940 by Steve.Robb

	Redundant and confusing macro check removed.

Change 3956809 by Ben.Marsh

	Guard against project paths passed on the command line to UBT being treated as project names. Previous code used to just take the first, which would mask this problem.

Change 3959590 by Steve.Robb

	Useless IsIntrinsic constant and COMPILED_IN_INTRINSIC macro removed.

Change 3959864 by Robert.Manuszewski

	Increasing the size of permanent object pool to fix warnings in cooked ShooterGame

	#jira UE-56001

Change 3960956 by Steve.Robb

	New ToCStr function which generically gets a TCHAR* from a 'string-like' argument.

Change 3963628 by Ben.Marsh

	UBT: Fix intellisense issues caused by _API macros being defined as DLLIMPORT (imported symbols cause an error if they are defined). Generate intellisense macros with the -Monolithic argument to work around it.

Change 3964349 by Ben.Marsh

	Move support for reading .modules files into FModuleManager, and always use it in modular builds. Pathway which discovers modules by filename only is no longer supported for simplicity, and due to platform-specific version checks being unreliable on any platforms other than Windows.

Change 3964821 by Ben.Marsh

	Use a custom tool for deleting directories on Windows, to handle paths longer than MAX_PATH correctly.

Change 3965269 by Ben.Marsh

	Add more [RequiresUniqueBuildEnvironment] attributes to target settings that modify the global environment.

Change 3966554 by James.Hopkin

	#core Removed redundant cast

Change 3966558 by James.Hopkin

	#core Removed redundant casts and changed some MakeShareables to MakeShared

	#robomerge #fortnite

Change 3966754 by Ben.Marsh

	Always use the compiled-in app name when looking for a module manifest. Fixes issues with XGEControlWorker.exe being a renamed copy of ShaderCompileWorker.exe.

Change 3967397 by Ben.Marsh

	Fix "copy local" files not being included in build products enumerated from C# projects. Remove files with "Embed Interop Types" from the output list.

Change 3967664 by Ben.Marsh

	Update UGS solution to use Visual Studio 2017.

Change 3967838 by Ben.Marsh

	Couple of fixes to conform scripts.

Change 3968767 by Ben.Marsh

	Compile the name of the module manifest into the executable via a define explicitly set by UBT, rather than guessing at runtime.

Change 3968771 by Ben.Marsh

	Fix compiled-in engine path being subject to macro expansion.

	#jira UE-56504

Change 3968886 by Robert.Manuszewski

	Merging 3914301:

	Remove any references we had added to the GGCObjectReferencer during Init

Change 3968978 by Steve.Robb

	FString->FName fixes for module names in HotReload.

Change 3969019 by Steve.Robb

	Minor refactor of property skipping logic in SerializeTaggedProperties().

Change 3969041 by Steve.Robb

	Simplification of Build.version filename construction.

Change 3969049 by Steve.Robb

	Always do rolling names when recompiling in editor, because an unloaded module may still actually by loaded-but-abandoned by the executable.

	This also removes HotReload's dependence on FModuleManager::GetCleanModuleFilename().

	#jira UE-52405

Change 3969120 by Ben.Marsh

	Enable errors for using undefined identifiers in conditional expressions by default.

Change 3969161 by Ben.Marsh

	Remove log line that should only be included in the log.

Change 3969216 by Steve.Robb

	Dump a list of module names - rather than DLL filenames - when the editor detects modules which need recompiling.
	This removes the only remaining use of FModuleManager::GetCleanModuleFilename(), which is also now removed.

	#jira UE-52405

Change 3969346 by Steve.Robb

	Missed some bad FScript(Map/Set)Helper usage from CL# 3698969.

Change 3969598 by Ben.Marsh

	Fix warning from VS2017.

Change 3971101 by Graeme.Thornton

	TBA: Added RoundTrip mode to TextAsset commandlet which does a sequence of saves and checks for determinism. It will do 3 binary saves, 3 text saves, then 3 alternate binary->text saves.

Change 3971407 by Ben.Marsh

	UBT: Fix exception when enumerating toolchains if the directory does not exist yet.

Change 3971523 by Graeme.Thornton

	Make compressed block offsets in a pak file store offsets relative to the file header, rather than absolute. Reduces the amount of entropy when data changes in the pak file, making it play nicely with patching

Change 3971613 by Ben.Marsh

	Fix Lightmass non-unity compile errors.

Change 3971649 by Ben.Marsh

	Disable optimization around FTickerObjectBase constructor on Win32 due to ICE.

Change 3971829 by Ben.Marsh

	Fix deprecated header warning from PVS Studio.

Change 3972503 by Ben.Marsh

	Changes to build failure notifications:

	* Only people that submitted between builds with different error messages will be included on emails by default.
	* Email subject line will be different for each failing build step, but will include the CL of the first failing step. This will result in one thread for each build failure (a success email is sent with the same subject line).
	* Anyone that starts a build will be included on all failure emails.

Change 3972732 by Ben.Marsh

	Changes to ensure notification messages are stable.

Change 3972810 by Ben.Marsh

	Write debug information about the digest computed for a change, to assist with debugging it if it's not stable.

Change 3973331 by Ben.Marsh

	Fix missing dependency on linker response file. Prevents target being relinked when build environment changes.

Change 3973343 by Ben.Marsh

	PR #4612: Adding support for PVS-Studio settings file to PVS-Studio Unreal Build Tool toolchain. (Contributed by PaulEremeeff)


Change 3973820 by Ben.Marsh

	Fix incorrect error message when unable to find Visual C++ install directory.

Change 3974295 by Robert.Manuszewski

	Made sure that lazy object pointers are only fixed up for PIE in actual PIE worlds.

Change 3975336 by Robert.Manuszewski

	CIS fix after the last merge from main

Change 3976999 by Ben.Marsh

	Move the Windows stack size settings onto the WindowsTargetRules object, and add the [RequiresUniqueBuildEnvironment] attribute to ensure it's not overwritten incorrectly.

	This should cause CIS to better errors for compiling Odin editor.

Change 3977934 by Ben.Marsh

	UBT: Allow setting additional compiler/linker arguments through properties on the TargetRules object.

Change 3977953 by Ben.Marsh

	UBT: Enumerate all Visual Studio 2017 install locations using the Visual Studio Setup interop SDK. Multiple simultaneous Visual Studio installations are now supported, and using registry keys to determine installation directories has been deprecated. Allows choosing toolchains from preview versions as well as full versions.

Change 3978544 by Ben.Marsh

	UBT: Include verbose timing information from compiler frontend if using VS2017 15.7 preview 2 or later.

Change 3978780 by Ben.Marsh

	Add Visual C++ 2017 redist files to AppLocalDependencies, and update the prereq installer to include 2017 support DLLs.

Change 3979313 by Ben.Marsh

	UBT: Add the EngineDirectory property to ModuleRules. Makes it easier to find paths to files under the engine folder.

Change 3980499 by Ben.Marsh

	UBT: Automatically enable /DEBUG:FASTLINK if we're using the VS2017 15.7 toolchain or newer and not doing a formal build. This contains fixes for debugger OOM issues present in older versions.

Change 3980890 by Ben.Marsh

	UBT: Update project file generator to support VS2017 solution options file; fixes C# projects being opened by default when generating new project files.

Change 3981495 by Ben.Marsh

	Do not include embedded interop assemblies in the list of references required by a C# project; they are not required build products.

	#jira UE-54343

Change 3982157 by Ben.Marsh

	Only output a warning message if BuildConfiguration.xml schema validation fails; we may have settings that only apply to code in another branch.

Change 3982239 by Ben.Marsh

	Update tooltip directing users to install Visual Studio 2017 instead of 2015.

Change 3983395 by Graeme.Thornton

	Fix reference to BUILD_VERSION in BootstrapPackagedGame RC file

Change 3983523 by Graeme.Thornton

	Backwards compatibility for pak files with compressed chunk offsets

Change 3983769 by Ben.Marsh

	UAT: Allow using PDBCOPY.EXE installed as part of the Windows 10 SDK to strip symbols, and add a better message if it can't be found.

Change 3984529 by Ben.Marsh

	BuildGraph: When run with the -Preprocess=... argument, no steps will be executed.

Change 3984557 by Ben.Marsh

	BuildGraph: Return the updated patterns from FilePattern.CreateMapping(), so we can print accurate messages when displaying the source and target directories for a copy or move task.

Change 3986520 by Ben.Marsh

	Remove hacks to uniquify response file name on Android and Linux.

Change 3987166 by Steve.Robb

	Allow overloading of functions which take TFunctions or TFunctionRefs with mutually exclusive signatures.

Change 3989061 by Graeme.Thornton

	TBA: Text asset loading/saving work
	 - Start using FStructuredArchive flavours of UObject Serialize functions when loading and saving exports.
	 - Only use FStructuredArchive interface for text assets, and for classes that have the CLASS_MatchingSerializers which tells us that the class can serialize to both FStructuredArchives and FArchives.
	 - Add GetCacheableArchive to FArchive, which allows transient archives to return a pointer to another archive that will outlive it. Used by bulk data to get a pointer to an archive that can be held and used at a later time to lazy load things. For text assets where the bulk data might be held inside a base64 encoded FArchiveFromStructuredArchive block, we can't dynamically seek back to that location after the on-stack wrapper has been destroyed after the original serialize, so this will return null. For binary assets, we just return a pointer to the same binary archive which can be used freely.

Change 3989109 by Graeme.Thornton

	TBA: TextAsset commandlet emits a warning when binary package determinism fails

Change 3990823 by Ben.Marsh

	UGS: Allow project settings to specify a client path rather than a filesystem path. Not currently usable through UI.

Change 3990832 by Ben.Marsh

	UGS: Make the schedule window resizable.

Change 3991569 by Steve.Robb

	GitHub #4636 : Fixed typo in HeaderParser.cpp for "missed WithValidation keyword" error message

Change 3991970 by Steve.Robb

	Fix for 4096 char limit on FParse::Value.

Change 3992222 by Steve.Robb

	Advice added to the coding standard for using default member initializers.

Change 3993675 by Ben.Marsh

	UGS: Add UI to allow creating new workspaces and selecting projects from existing workspaces that are not currently synced.

Change 3994199 by Ben.Marsh

	UGS: Fix child processes being unable to spawn other child processes with the CREATE_BREAKAWAY_FROM_JOB flag, to add them to their own job objects.

	In Windows 7 or earlier job objects cannot be nested, so child processes have to create separate job objects and spawn processes with CREATE_BREAKAWAY_FROM_JOB to be able to add them. This fails unless parent process' job object was created with JOB_OBJECT_LIMIT_BREAKAWAY_OK.

	Discussed here: https://msdn.microsoft.com/en-us/library/windows/desktop/hh448388(v=vs.85).aspx

Change 3994243 by Ben.Marsh

	UGS: Use the select stream dialog instead of displaying a drop list unless there's a stream filter specified. We have way too many streams for this to be useful in a menu unless it's filtered.

Change 3994260 by Ben.Marsh

	UGS: Tweak the stream filter dialog to only use the previous selected node if the filter terms match. It may be a parent node of something that matches, even though it doesn't match itself.

Change 3994350 by Ben.Marsh

	UGS: Automatically guess the correct root path for new workspaces based on the most common existing workspaces for the current user.

Change 3995159 by Ben.Marsh

	UGS: Do not delete files which are outside the sync filter. People expect to be able to sync different projects within a stream without having to update sync filters.

	Indend to re-introduce this functionality through the manual 'clean workspace' operation.

Change 3995169 by Ben.Marsh

	UGS: Show options as dimmed in the open project dialog, if the radio button for those controls is not checked. Automatically set the radio button if the focus is given to one of those controls.

Change 3995228 by Ben.Marsh

	UGS: Update recently opened projects list when editing project for an existing tab.

Change 3995312 by Ben.Marsh

	UGS: Stop showing all dialogs in the taskbar.

Change 3995929 by Robert.Manuszewski

	Completely rewritten FReferenceChainSearch class used by 'obj refs' command.

	- 3+ times faster
	- Uses the same code as GC to track all the references down
	- Actually reports all reference chains properly
	- Less code that is more readable than the previous version

Change 3995981 by Ben.Marsh

	UGS: Clean workspace window will now force-sync files that have been deleted or which are writable.

Change 3996113 by Ben.Marsh

	UGS: Fix crash upgrading config files from older versions.

Change 3997990 by Ben.Marsh

	UGS: Prevent error when syncing an empty workspace.

Change 3998095 by Ben.Marsh

	UGS: Change logic for dealing with job objects: rather than creating breakaway jobs (requires co-operation with spawning process), always try to use nested job objects (requires Windows 8.1+). If it fails, ignore the error if we're already part of a job.

	Also forcibly terminate the process on dispose to handle cases where the job object wasn't created.

Change 3998264 by Ben.Marsh

	UGS: Fix exception when switching projects in-place.

Change 3998643 by Ben.Marsh

	Fix shared DDC not being used for installed engine builds.

	#jira UE-57631

Change 4000266 by Ben.Marsh

	UnrealPak: Add an option that allows rebuilding a set of PAK files with different settings. Usage is:

	    UnrealPak [PakFile] -Repack [-Output=FileOrDirectory] [Options]

	The input pak file may be a single file or wildcard, and is overwritten unless the -Output parameter is specified.

Change 4000293 by Ben.Marsh

	Add a compression flag that allows selecting compressor without using the default platform implementation.

Change 4000315 by Ben.Marsh

	Add support for custom compressors implemented via modular features. Specify -compressor=<PathToDll> on the command line to UnrealPak to load a compressor from an external DLL.

Change 4000610 by Ben.Marsh

	UnrealPak: Add a parameter for compression block size (-compressionblocksize=XXX). Accepts arguments with MB/KB suffixes, as well as byte counts.

Change 4000627 by Ben.Marsh

	UBT: Include enabled plugin info in the UBT log.

Change 4000793 by Ben.Marsh

	UBT: Remove some member variables from VCEnvironment that don't need to be stored.

Change 4000909 by Ben.Marsh

	UBT: Add VS2017 installations to the list of paths checked for MSBuild installations.

Change 4001923 by Ben.Marsh

	UBT: Allow any plugins which are enabled by default to be included in the enabled list, even if they don't have any modules for the current platform. This changes the build-time logic to match the runtime logic.

	At some point in the future we may add a separate SupportedHostPlatforms list to each plugin to do this explicitly, rather than guessing via the per-module whitelist.

Change 4001927 by Ben.Marsh

	Fixes for compiling against the Windows 10 SDK.

Change 4002439 by Robert.Manuszewski

	Added TDefaultReferenceCollector and FSimpleReferenceProcessorBase to extract common code for clients of  TFastReferenceCollector

Change 4003508 by Ben.Marsh

	UGS: Fix new workspaces not having the correct owner and host set.

Change 4003622 by Ben.Marsh

	UGS: Add support for "skipped" as a build result.

Change 4004049 by Robert.Manuszewski

	Significantly improved performance of Reference Chain Search for objects that are nested deep in the object hierarchy

Change 4005077 by Ben.Marsh

	UGS: Update version number.

Change 4005112 by Ben.Marsh

	UBT: Reduce number of times a target has to be constructed while generating project files.

Change 4005513 by Ben.Marsh

	UBT: Reduce number of checks for directories existing when adding include paths to a module. Accounted for 40% of runtime time when generating project files.

Change 4005516 by Ben.Marsh

	UBT: Add warnings whenever a module adds an include path or library path that doesn't exist

Change 4006168 by Ben.Marsh

	CIS fixes.

Change 4006236 by Ben.Marsh

	UGS: Populate the workspace name/root directory text box with the cue banner when focus moves to the control.

Change 4006266 by Ben.Marsh

	UGS: Swap around the new workspace/existing file boxes on the open project dialog.

Change 4006552 by Ben.Marsh

	If staging fails because a restricted folder name is found, include a list of them in the error message.

Change 4007397 by Steve.Robb

	Comments added to make it clear that GetAllocatedSize() only counts direct allocations made by the container.

Change 4007458 by Ben.Marsh

	UBT: Change RPC utility to abort early, rather than continue to try to build even though SSH init failed.

Change 4009343 by Ben.Marsh

	UGS: Set the rmdir option on new workspaces by default.

Change 4009501 by Ben.Marsh

	UBT: Add Windows include paths to the compiler command line, rather than setting through environment variables. This ensures that incremental builds work correctly when SDK versions change.

Change 4009509 by Ben.Marsh

	UBT: Check in a non-versioned directory under the Windows 10 SDK for the resource compiler.

Change 4010543 by Ben.Marsh

	Remove the "Device" and "Simulator" platform groups, because they're unused and overly generic for folder names. Also remove source code for the HTML5 simulator (which is no longer supported).

Change 4010553 by Ben.Marsh

	UAT: Include platform groups in restricted folder names when staging.

Change 4012030 by Ben.Marsh

	UGS: Increase the size of the main window, and set the current stream as the default when creating a new workspace.

Change 4012204 by Chad.Garyet

	- Cleanup to get the POSTs returning 400s the same way the GETs would (now no longer returns the exception text)
	- Create directory for sqlite db if it doesn't exist
	#jira none

Change 4014209 by Brandon.Schaefer

	New changes in breakpad dump_syms to allow for producing a symbol file for elf files on windows

	#review-3998840 @Arciel.Rekman, @Ben.Marsh, @Josh.Engebreston, @Anthony.Bills

Change 4015606 by Brandon.Schaefer

	Missed a code project that needed updating for new Breakpad changes for Mac

Change 4017795 by Robert.Manuszewski

	GC assumption verification should now be 3-4x faster.

	- Refactored Disregard For GC to use TFastReferenceCollector
	- Move both Disregard For GC and Cluster verification code to separate source files

Change 4020381 by Ben.Marsh

	Add link to the new official doc page for UnrealGameSync.

Change 4020665 by Ben.Marsh

	UBT: Prevent plugins being precompiled if they don't support the current target platform.

Change 4021829 by Ben.Marsh

	Update message about downloading a new version of Visual Studio.

Change 4022063 by Ben.Marsh

	UBT: Suppress toolchain output when generating project files.

Change 4023248 by Ben.Marsh

	Install an unhandled exception filter to ensure we get crash reports from threads that are not spawned by the engine. At the moment, we only receive crashes that are routed through ReportCrash() via our structured exception handlers in WinMain() and FRunnableThreadWin::Run().

	(Also fix an exception within the exception handler, if GError has not been created yet)

Change 4025759 by Ben.Marsh

	Fix universal CRT include paths not being added to compile environment for VS2015.

Change 4026002 by Ben.Marsh

	UBT: Check the old registry locations for the Windows SDK installation directory.

Change 4026068 by Ben.Marsh

	UBT: Use the correct compiler version in the error message for not having the UCRT.

Change 4026181 by Ben.Marsh

	Fix DebugGame editor configurations not enumerating modules correctly.

	#jira UE-58153

Change 4026285 by Ben.Marsh

	UBT: Add additional logging for enumerating Windows SDKs.

Change 4026708 by Ben.Marsh

	UBT: Keep a separate list of installed Universal CRT versions to the list of Windows 10 SDK versions. It's possible to install C++ support without the Windows 10 SDK, which still includes UCRT files in Windows 10 SDK folders.

Change 4029404 by Ben.Marsh

	Remove incorrect include paths to fix CIS warnings.

Change 4031517 by Steve.Robb

	Fix for UHT errors not being clickable in the Message Log.

	#jira UE-58173

Change 4031544 by Ben.Marsh

	Fix errors building asset catalog for IOS due to modifying shared build environment.

	#jira UE-58240

Change 4032227 by Ben.Marsh

	BuildGraph: Print out a warning message when trying to submit without the -Submit argument in BuildGraph.

Change 4032262 by Ben.Marsh

	BuildGraph: Remove the need to copy files to the staging directory in BuildEditorAndTools.xml.

Change 4032288 by Ben.Marsh

	Remove UFE from the BuildEditorAndTools script.

Change 3833533 by Ben.Marsh

	Rewrite engine source files to base include paths relative to the "Public" directory. This allows reducing the number of public include paths that have to be added for engine modules.

Change 3838569 by Steve.Robb

	Algo moved up a folder.

Change 3848581 by Robert.Manuszewski

	Changing the UObjectArray to not be allocated up front but in 64K-FUObjectItem chunks. This is to fix strange OOM reports on editor startup where it's trying to allocate space for 1M+ FUObjectItems.

	#jira UE-49446

Change 3864743 by Steve.Robb

	Fix for buffer overrun when copying a context string.
	Fix for being unable to link to MallocLeakDetection.
	Fix to prefix for FMallocLeakDetection::ContextString.
	New MALLOCLEAK_SCOPED_CONTEXT macro to push/pop a context string.
	Overload for const TCHAR* added to FMallocLeakDetection::PushContext to save on redundant memory allocations.

	#jira UE-54612

Change 3865020 by Graeme.Thornton

	TBA: Changed FIELD_NAME macro to FIELD_NAME_TEXT so that FIELD_NAME can be used for non-literal name definitions

Change 3869550 by Josh.Engebretson

	New SymGen and SymUpload tasks (ShooterGame usage example)
	Example C# symbolicator (using saved crash and data router formats)
	Updates for stack walking and crash runtime xml on Windows/Mac

Change 3905453 by Steve.Robb

	USE_TUPLE_AUTO_RETURN_TYPES moved to PLATFORM_COMPILER_HAS_DECLTYPE_AUTO.

Change 3910012 by Ben.Marsh

	UGS: Show an error window and allow setting default P4 server settings if syncing UGS fails.

Change 3920044 by Graeme.Thornton

	TBA: Text asset loading

	* Added a structured archive layer to FLinkerLoad
	* Wrapped export loading in a ArchiveUObjectFromStructuredArchive
	* Updated TextAssetCommandlet to have a "loadtext" mode which will try to load every text asset in the project content
	* Changed text asset extensions to .utextasset and .utextmap. Couldn't go with the favourite .uasset.json because our various path functions (FPaths::GetCleanFilename etc.) will only strip one layer of extension, so leave a bogus filename.
	* Relaxed a few checks in structured archive where it was checking for field reentrance, which isn't a problem for loading.
	* Changed FArchiveFromStructuredArchive to not load all referenced objects at construction time. This introduced some changes to load order which don't work in the engine. Object names are resolved at the point that a reference to them is serialized from the main data block, same as with legacy archives.

Change 3921587 by Steve.Robb

	Static asserts inside ensureMsgf() macros to prevent them being passed invalid arguments or non-literal formatting strings.
	Fixes for various misuses.

	#jira UE-55681

Change 3942873 by Ben.Marsh

	UBT: Allow link time code generation on any configurations where bAllowLTCG is set to true. Microsoft platforms were previously only allowing this option in shipping; the target can decide when to enable it or not.

Change 3944629 by Graeme.Thornton

	Merging back a couple of fixes from Fortnite
	 - Extra parenthesis around some calculations in the pakprecacher
	 - Changed FChunkCacheWorker::DoSignatureCheck() back to ::CheckSignature()
	 - Added documentation for build script crypto options

Change 3945381 by Ben.Marsh

	Disable warning C4770 on Windows (partially validated enum 'xxx' used as index), which occurs when enabling LTCG. Can't find a reference online for this warning, but I suspect it's due to LTCG allowing the compiler to trace code paths where we don't validate that an enum is a known value.

Change 3968969 by Steve.Robb

	Fixes to incorrect uses of FScriptMapHelper and FScriptSetHelper, which weren't accounting for gaps in the sparse array.

Change 3969417 by Ben.Marsh

	Make Visual Studio 2017 the default compiler for UE4 projects, and add support using Visual C++ toolchains from an AutoSDKs.

	Also add support for selecting a specific toolchain version to use through the WindowsPlatform.CompilerVersion property, which can be configured via a Target.cs files or BuildConfiguration.xml (eg. <WindowsPlatform><CompilerVersion>14.13.26128</CompilerVersion></WindowsPlatform). As well as allowing a specific version number, you can always use the latest toolchain by setting it to "Latest".

Change 3972443 by Ben.Marsh

	Change build scripts to allow running any steps on non-compile workspaces. Setup Dev-Core to just use a non-compile Win64 workspace for everything.

Change 3977198 by Ben.Marsh

	Remove INI file override for editor stack size on Windows. This is rarely valid since editor targets share build products with other games by deafult. Fix to add linker response file as prerequisite exposed targets overriding this as a bug.

Change 3979632 by Ben.Marsh

	Consolidate codepaths for embedding versioning information in the engine. Engine/Build/Build.version is now the authoritative place to read version information; Engine/Source/Runtime/Launch/Resources/Version.h no longer includes macros for the current branch and changelist.

	* Settings from Build.version are compiled into the (tiny) BuildSettings module via macros set in BuildSettings.build.cs, which is used to initialize version information inside the engine at runtime.
	* The IsPromotedBuild value is now set to zero by default (but set to 1 by the UpdateLocalVersion UAT command).
	* The -Licensee argument to the UpdateLocalVersion UAT command, and the IsLicenseeVersion setting for UnrealGameSync, is determined automatically by looking for the Engine/Build/NotForLicensees/EpicInternal.txt file. This path is not visible to licensees.

Change 3981738 by Ben.Marsh

	Move utility classes for filtering files and matching wildcards into DotNETUtilities.

Change 3983888 by Steve.Robb

	Warning C4868 disabled, about evaluation order of braced initializer lists.

	https://udn.unrealengine.com/questions/426081/help-with-error-c4868-braced-initializers.html

Change 3984019 by Steve.Robb

	FString::Printf formatting argument checking added.
	Vararg support for FText::Format.
	All remaining usage fixed.

Change 3985502 by Steve.Robb

	Change to TFunction debugger visualization to allow right-clicking on the [Lambda] and selecting 'Go To Source Code'.

Change 3985999 by Graeme.Thornton

	TBA: Serialize function generation for FArchive and FStructuredArchive overloads on a UObject, using UHT.
	 - Adds a restriction that UObject::Serialize() functions MUST be declared outside of any conditional compilation directives, except for WITH_EDITORONLY_DATA

Change 3986461 by Ben.Marsh

	Fixup lots of platforms not adding response files as a prerequisite.

	This can cause incremental builds to fail if input files/compile arguments change, because the action graph does not know that the response file being updated invalidates the build artifacts.

Change 3990081 by Ben.Marsh

	Remove custom output formatters for errors and warnings. These are not well supported by different executors, and cause fences between actions with the same formatter with external executors like XGE.

	Clang supports -fdiagnostics-format=msvc for all platforms, which should do a better job than our crude attempts at regexing errors (causing botched output in some cases).

Change 3996714 by Chad.Garyet

	UGSRestAPI, conversion of UGS to use it.

	#jira none

Change 4008287 by Ben.Marsh

	UBT: Change the engine to use the Windows 10 SDK by default.

	Also add support for switching between specific Windows SDK versions. The WindowsPlatform.WindowsSdkVersion property in the target rules can be used to select a desired version, which can also be configured by the <WindowsPlatform><WindowsSdkVersion>Foo</WindowsSdkVersion></WindowsPlatform> parameter in the BuildConfiguration.xml file.

	The version of Windows to target (ie. the WINVER macro) can be modified by setting WindowsPlatform.TargetWindowsVersion. The default is 0x0601 (Windows 7).

Change 4008516 by Chad.Garyet

	- Adding support for both SQLite and MsSql
	- API now reads from only MsSql, but writes to both
	- Added support for POST to CIS for badges
	- PostBadgeStatus now writes out via API Url rather than a direct connection to the DB

	#jira none

Change 4010296 by Chad.Garyet

	Moving SQLite db initilization into Application_Start.  An exception thrown creating or seeding the db will unload the entire AppDomain and all pages will return a 404.
	#jira none

Change 4024045 by Ben.Marsh

	Set the list of supported target platforms for OnlineSubsystemGameCircle.

	#jira UE-57887

Change 4031014 by Ben.Marsh

	UAT: Add a WhitelistDirectories list in DefaultEngine.ini, which allows specifying folders that can be staged despite having restricted folder names.

[CL 4034515 by Ben Marsh in Main branch]
2018-04-26 14:11:04 -04:00
Arciel Rekman
cc996a982a Copying Quail@3980758 to Dev-Main (//UE4/Dev-Main)
#rb Nick.Penwarden
#lockdown Nick.Penwarden

[CL 3981888 by Arciel Rekman in Main branch]
2018-04-03 15:23:51 -04:00
Arciel Rekman
4141229f52 Copying //UE4/PQ-Staging@3957047 to Dev-Main (//UE4/Dev-Main)
#rb Ben.Marsh
#fyi Josh.Adams
#lockdown Nick.Penwarden

[CL 3957060 by Arciel Rekman in Main branch]
2018-03-21 11:09:41 -04:00
Marc Audy
7a0f229e8d Copying //UE4/Fortnite-Staging to //UE4/Dev-Main (Source: //Fortnite/Main/Engine @ 3876564)
#lockdown Nick.Penwarden
#rnx
#rb none

[CL 3903710 by Marc Audy in Main branch]
2018-02-22 11:25:06 -05:00
Ben Marsh
30f891786a Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3847469)
#lockdown Nick.Penwarden
#rb none

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

Change 3805828 by Gil.Gribb

	UE4 - Fixed a bug in the lock free stalling task queue and adjusted a comment. The code is not current used, so this is not actually change the way the code works.

Change 3806784 by Ben.Marsh

	UAT: Remove code to compile UBT when using UE4Build. It should already be compiled as a dependency of UAT.

Change 3807549 by Graeme.Thornton

	Add a cook timer around VerifyCanCookPackage. A licensee reports this taking a lot of time so it'll be good to account for it.

Change 3807727 by Graeme.Thornton

	Unhide the text asset format experimental editor option

Change 3807746 by Josh.Engebretson

	Remove WER from iOS platform

Change 3807928 by Robert.Manuszewski

	When async loading, GC Clusters will be created after packages have been processed to avoid situations where some of the objects that are being added to a cluster haven't been fully loaded yet

Change 3808221 by Steve.Robb

	GitHub #4307 - Made GetModulePtr() thread safe by not using GetModule()

	^ I'm not convinced by how much thread-safer this is really, but it's tidier anyway.

Change 3809233 by Graeme.Thornton

	TBA: Misc changes to text asset commandlet
	 - Rename mode to "loadsave"
	 - Add -outputFormat option which can be assigned "text" or "binary"
	 - When saving binary, use a differentiated filename so that source assets aren't overwritten

Change 3809518 by Ben.Marsh

	Remove the outdated UnrealSync automation script.

Change 3809643 by Steve.Robb

	GitHub #4277 : fix bug; FMath::FormatIntToHumanReadable 3rd comma and negative value

	#jira UE-53037

Change 3809862 by Steve.Robb

	GitHub #3342 : [FRotator.h] Fix to DecompressAxisFromByte to be more efficient and reflect its intent accurately

	#jira UE-42593

Change 3811190 by Graeme.Thornton

	Add support for writing specific log channels to their own files

Change 3811197 by Graeme.Thornton

	Minor updates to output formatting and timing for the text asset commandlet

Change 3811257 by Robert.Manuszewski

	Cluster creation will now be time-sliced

Change 3811565 by Steve.Robb

	Define out non-monolithic module functions.

Change 3812561 by Steve.Robb

	GitHub #3886 : Enable Brace-Initialization for Declaring Variables

	Incorrect semi-colon search removed after discussion with author.
	Test added.

	#jira UE-48242

Change 3812864 by Steve.Robb

	Removal of some unproven code which was supposed to fix hot reloading BP class functions in plugins.

	See: https://udn.unrealengine.com/questions/376978/aitask-blueprint-nodes-disappear-when-their-module.html

	#jira UE-53089

Change 3820358 by Ben.Marsh

	PR #4358: Incredibuild use ShowAgent by default (Contributed by projectgheist)


Change 3822594 by Ben.Marsh

	UAT: Improvements to log file handling.

	- Always create log files in the final location, rather than writing to a temp directory and copying in later.
	- Now supports -Verbose and -VeryVerbose for increasing log verbosity, rather than -Verbose=XXX.
	- Keep a backlog of log output before the log system is initialized, and flush it to the log file once it is.
	- Allow buildmachines to specify the uebp_FinalLogFolder environment variable, which is used to form paths for display. When build machines copy log files elsewhere after UAT finishes (eg. a network share), this allows error messages to display the right location.

Change 3823695 by Ben.Marsh

	UGS: Fix issue where precompiled binaries would not be shown as available for a change until scrolling the last submitted code change into the buffer (other symptoms, like de-focussing the main window would cause it to go back to an unavailable state, since the changes buffer was shrunk).

	Now always queries changes up to the last change for which zipped binaries are available.

Change 3823845 by Ben.Marsh

	UBT: Exclude C# projects for unsupported platforms when generating project files.

Change 3824180 by Ben.Marsh

	UGS: Add an option to show changes by build machines, and move the "only show reviewed" option in there too (Options > Show Changes).

	#jira

Change 3825777 by Steve.Robb

	Fix to return value of StringToBytes.

Change 3825810 by Ben.Marsh

	UBT: Reduce length of include paths for MSVC toolchain.

Change 3825822 by Robert.Manuszewski

	Optimized PIE lazy pointer fixup. Should be up to 8x faster now.

Change 3826734 by Ben.Marsh

	Remove code to disable TextureFormatAndroid on Linux. It seems to be an editor dependency.

Change 3827730 by Steve.Robb

	Try to avoid decltype(auto) if it's not supported.

	See: https://udn.unrealengine.com/questions/395644/build-417-with-c11-on-linux-ttuple-errors.html

Change 3827745 by Steve.Robb

	Initializer list support for TMap.

Change 3827770 by Steve.Robb

	GitHub #4399 : Added a CONSTEXPR qualifiers to FVariant::GetType()

	#jira UE-53813

Change 3829189 by Ben.Marsh

	UBT: Now always writes a minimal log file. By default, just contains the regular console output and any reasons why actions are outdated and needed to be executed. UAT directs child UBT instances to output logs into its own log folder, so that build machines can save them off.

Change 3830444 by Steve.Robb

	BuildVersion and ModuleManifest moved to Core, and parsing of these files reimplemented to avoid a JSON library.
	This should be revisited when Core has its own JSON library.

Change 3830718 by Ben.Marsh

	Fix incorrect group name being returned by FStatNameAndInfo::GetGroupName() for stat groups.

	The editor populates the viewport stats list by calling this for every registered stat and stat group (via FLevelViewportCommands::HandleNewStatGroup). The menu entry attempts to show the stat name with STAT_XXX stripped from the start as the menu item label, with the free-form text description as a tooltip.

	For stat groups, the it would previously just return the stat group name as "Groups" (due to the raw naming convention of "//Groups//STATGROUP_Foo//..."). Since this didn't match the expected naming convention in FLevelViewportCommands::HandleNewStat (ie. STAT_XXX or STATGROUP_XXX), it would fail to add it.

	When the first actual stat belonging to that group is added, it would add a menu entry for the group based on that, but the stat description no longer makes sense as a tooltip for the group. As a result, all the editor tooltips were junk.

	#jira UE-53845

Change 3831064 by Ben.Marsh

	Fix log file contention when spawning UBT recursively.

Change 3832654 by Ben.Marsh

	UGS: Fix error panel not being selected when opened, and weird alignment/color issues on it.

Change 3832680 by Ben.Marsh

	UGS: Fix failing to detect workspace if synced to a different stream. Seems to be a regression caused by recent P4D upgrade.

Change 3832695 by Ben.Marsh

	UGS: Invert the options in the 'Show Changes' submenu for simplicity.

Change 3833528 by Ben.Marsh

	UAT: Script to rewrite source files with public include paths relative to the 'Public' folder. Usage is: RebasePublicIncludePaths -UpdateDir=<Dir> [-Project=<Dir>] [-Write].

Change 3833543 by Ben.Marsh

	UBT: Allow targets to opt-out of having public include paths added for every dependent module. This reduces the command line length when building a target, which has recently become a problem with larger games (due to Microsoft's compiler embedding the command line into each object file, with a maximum length of 64kb). All engine modules are compiled with this enabled; games may opt into it by setting bLegacyPublicIncludePaths = false; from their .target.cs, as may individual modules.

Change 3834354 by Robert.Manuszewski

	Archetype pointer will now be cached to avoid locking the object tables when acquiring its info. It should also be faster this way regardless of any locks.

	#jira UE-52035

Change 3834400 by Robert.Manuszewski

	Fixing crash on exit caused by cached archetypes not being cleaned up before static exit cleanup.

	#jira UE-52035

Change 3834947 by Steve.Robb

	USE_FORMAT_STRING_TYPE_CHECKING removed from FMsg::Logf and FMsg::Logf_Internal.

Change 3835004 by Ben.Marsh

	Fix code that relies on dubious behavior of requiring referenced "include path only" modules having their _API macros set to be empty, even if the module is actually implemented in a separate DLL.

Change 3835340 by Ben.Marsh

	Fix errors making installed build from directories with spaces in the name.

Change 3835972 by Ben.Marsh

	UBT: Improved diagnostic message for targets which don't need a version file.

Change 3836019 by Ben.Marsh

	UBT: Fix warnings caused by defining linkage macros for third party libraries.

Change 3836269 by Ben.Marsh

	Fix message box larger than the screen height being created when a large number of modules are incompatible on startup.

Change 3836543 by Ben.Marsh

	Enable SoundMod plugin on Linux, since it's already supported through the editor.

Change 3836546 by Ben.Marsh

	PR #4412: fix type mismatch (Contributed by nakapon)


Change 3836805 by Ben.Marsh

	Fix commandlet to compile marketplace plugins.

Change 3836829 by Ben.Marsh

	UBT: Fix ability to precompile plugins from installed engine builds.

Change 3837036 by Ben.Marsh

	UBT: Write the previous and new contents of intermediate files to the log if they change. Makes it easier to debug unexpected rebuilds.

Change 3837037 by Ben.Marsh

	UBT: Fix engine modules having inconsistent definitions depending on whether modules are only referenced for their include paths vs being linked into a binary (due to different _API macro).

Change 3837040 by Ben.Marsh

	UBT: Remove code that initializes members in ModuleRules and TargetRules objects before the constructor is run. This is no longer necessary, now that the backwards-compatible default constructors have been removed.

Change 3837247 by Ben.Marsh

	UBT: Remove UELinkerFixups module, now that plugins and precompiled modules do not require hacks to force initialization (since they're linked in as object files).

	Encryption and signing keys are now set via macros expanded from the IMPLEMENT_PRIMARY_GAME_MODULE macro, via project-specific macros added in the TargetRules constructor.

Change 3837262 by Ben.Marsh

	UBT: Set whether a module is an engine module or not via a default value for the rules assembly. All non-program engine and enterprise modules are created with this flag set to true; program targets and modules are now created from a different assembly that sets it to false. This removes hacks from UEBuildModule needed to adjust behavior for different module types based on the directory containing the module.

	Also add a bUseBackwardsCompatibleDefaults flag to the TargetRules class, also initialized to a default value from a setting passed to the RulesAssembly constructor. This controls whether modules created for the target should be configured to allow breaking changes to default settings, and is set to false for all engine targets, and true for all project targets.

Change 3837343 by Ben.Marsh

	UBT: Remove the OverrideExecutableFileExtension target property. Change the only current use for this (the MayaLiveLinkPlugin target) to use a post build step to copy the file instead.

Change 3837356 by Ben.Marsh

	Fix invalid character encodings.

Change 3837727 by Graeme.Thornton

	UnrealPak: KeyGenerator: Only generate prime table when required, not all the time

Change 3837823 by Ben.Marsh

	UBT: Output warnings and errors when compiling module rules assembly in a way that allows them to be double-clicked in the Visual Studio output window.

Change 3837831 by Graeme.Thornton

	UBT: When parsing crypto settings, always load legacy data first, then allow the new system to override it. Provides the same key backwards compatibility that the editor settings class gives

Change 3837857 by Robert.Manuszewski

	PR #4404: Make FGCArrayPool singleton global instead of per-CU (Contributed by mhutch)


Change 3837943 by Robert.Manuszewski

	PR #4405: Fix FGarbageCollectionTracer (Contributed by mhutch)


Change 3838451 by Ben.Marsh

	UBT: Fix exceptions thrown on a background thread while caching C++ includes not being caught and logged correctly. Now captures exceptions and re-throws on the main thread.

	#jira UE-53996

Change 3839519 by Ben.Marsh

	UBT: Simplify configuring bPrecompile and bUsePrecompile settings for modules. Each rules assembly can now be configured as installed, which defaults the module rules it creates to use precompiled data.

Change 3843790 by Graeme.Thornton

	UnrealPak: Log the size of all encrypted data

Change 3844258 by Ben.Marsh

	Fix plugin compile failure when created via new plugin wizard. Passing -plugin on the command line is unnecessary, and is now reserved for packaging external plugins for the marketplace.

	Also extend the length of time that the error toast stays visible, and don't delete the plugin on failure.

	#jira UE-54157

Change 3845796 by Ben.Marsh

	Workaround for slow performance of String.EndsWith() on Mono.

Change 3845823 by Ben.Marsh

	Fix case sensitive matching of platform names in -TargetPlatform=X argument to BuildCookRun.

	#jira UE-54123

Change 3845901 by Arciel.Rekman

	Linux: fix crash due to lambda lifetime issues (UE-54040).

	- The lambda goes out of scope in FBufferVisualizationMenuCommands::CreateVisualizationCommands, crashing the editor if compiled with a recent clang (5.0+).

	(Edigrating 3819174 to Dev-Core)

Change 3846439 by Ben.Marsh

	Revert CL 3822742 to always call Process.WaitForExit(). The Android target platform module in the editor spawns ADB.EXE, which inherits the editor's stdout/stderr handles and forks itself. Process.WaitForExit() waits for EOF on those pipes, which never occurs because the forked process never terminates.

	Proper fix is probably to have the engine explicitly duplicate stdout/stderr handles for new pipes to output process, but too risky before copying up to Main.

Change 3816608 by Ben.Marsh

	UBT: Use DirectoryReference objects for all include paths.

Change 3816954 by Ben.Marsh

	UBT: Remove bIncludeDependentLibrariesInLibrary option. This is not widely supported by platform toolchains, and is not used anywhere.

Change 3816986 by Ben.Marsh

	UBT: Remove UEBuildBinaryConfig; UEBuildBinary objects are now just created directly.

Change 3816991 by Ben.Marsh

	UBT: Deprecate PlatformSpecificDynamicallyLoadedModules. We no longer have any special behavior for these modules.

Change 3823090 by Ben.Marsh

	UAT: Improve logging for child UAT instances.

	- Calling RunUAT now requires an identifier for prefixing into the parent log, which is also used to determine the name of the log folder.
	- Stdout is no longer written to its own output file, since it's written to the parent stdout, the parent log file, and the child log file anyway.
	- Log folders for child UAT instances are left intact, rather than being copied to the parent folder. The derived names for the copied names were confusing and hard to read.
	- Output from UAT is no longer returned as a string. It should not be parsed anyway (but may be huge!). ProcessResult now supports running without capturing output.

Change 3826082 by Ben.Marsh

	UBT: Add a check to make sure that all modules that are precompiled are correctly marked to enable it, even if they are part of the build target.

Change 3827025 by Ben.Marsh

	UBT: Move the compile output directory into a property on the module, and explicitly pass it to the toolchain when compiling.

Change 3829927 by James.Hopkin

	Made HTTP interface const correct

Change 3833533 by Ben.Marsh

	Rewrite engine source files to base include paths relative to the "Public" directory. This allows reducing the number of public include paths that have to be added for engine modules.

Change 3835826 by Ben.Marsh

	UBT: Precompiled targets now generate a separate manifest for each precompiled module, rather than adding object files to a library. This fixes issues where object files from static libraries would not be linked into a target if a symbol in them was not referenced.

Change 3835969 by Ben.Marsh

	UBT: Fix cases where text is being written directly to the console rather than via logging functions.

Change 3837777 by Steve.Robb

	Format string type checking added to FOutputDevice::Logf.
	Fixes for those.

Change 3838569 by Steve.Robb

	Algo moved up a folder.

[CL 3847482 by Ben Marsh in Main branch]
2018-01-20 11:19:29 -05:00
Marc Audy
994a524453 Merging //UE4/Release-4.19 to Release-Staging-4.19 (//UE4/Release-Staging-4.19) @ 3833288
#rb none
#jira no
#rnx

[CL 3833418 by Marc Audy in Staging-4.19 branch]
2018-01-11 16:07:16 -05:00
Ben Marsh
13d012685f Merging copyright update from 4.19 branch.
#rb none
#rnx
#jira

[CL 3818977 by Ben Marsh in Staging-4.19 branch]
2018-01-02 15:30:26 -05:00
Matt Kuhlenschmidt
cd967bc733 Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3807299)
#lockdown Nick.Penwarden
#rb none

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

Change 3528776 by Yannick.Lange

	Allow thumbnails to be captured from a viewport always.

	#jira UE-45392

Change 3564359 by Yannick.Lange

	Back out part of changelist 3528776: Revert allowing thumbnails to be captured from a viewport to fix UE-47827 & UE-47785.

	#jira UE-47785,  UE-47827

Change 3740671 by Matt.Kuhlenschmidt

	Make the font editor canvas respect dpi scale

Change 3740810 by Josh.Engebretson

	PR #4138: Log GenerateProjectFiles to file when using UVS (Contributed by projectgheist)
	#jira UE-51358

Change 3740939 by Cody.Albert

	Fixing some #ifdefs that should be #ifs

Change 3741089 by Alexis.Matte

	Make sure bImportBoneTracks is set to true when importing into level
	#jira UE-51999

Change 3741101 by Alexis.Matte

	Fix the import material search
	#jira UE-51857

Change 3741690 by Jamie.Dale

	Guard against an invalid index in SLocalizationCommandletExecutor::Tick

	#jira UE-52067

Change 3741710 by Jamie.Dale

	Made a static variable also const

Change 3741724 by Michael.Dupuis

	Added missing shader cache

Change 3742037 by Lauren.Ridge

	Details panels can now "own" a color picker so a different details panel refreshing doesn't close it. Also fixed refreshing state of the graph after changing texture or color parameter values

Change 3742250 by Matt.Kuhlenschmidt

	PR #4185: Output Log Filter tooltip shows %s instead of category. (Contributed by LordNed)


Change 3742308 by Lauren.Ridge

	Adding axis input to the material editor's viewport client

Change 3742380 by Matt.Kuhlenschmidt

	USD importer improvements

	- USD now stores source file information for reimports
	- Fixed bug where no geometry would be imported if an exporter had set a time code even without animated data
	- Prevent a crash if a mesh doesnt have enough valid data to be imported

Change 3742536 by Matt.Kuhlenschmidt

	Remove usd wrapper test project

Change 3743564 by Alexis.Matte

	Fix skeletal mesh screen size auto set value when importing a LOD

	#test none
	#jira UE-52100

Change 3743582 by Lauren.Ridge

	Fixing non-desktop compiles

Change 3743598 by Lauren.Ridge

	Fixing shadowed variable by renaming the global color picker weak ptr variable.

Change 3743636 by Lauren.Ridge

	Creating a new parameter immediately allows naming

Change 3743855 by Michael.Dupuis

	Added missing shader from cache

Change 3744277 by Lauren.Ridge

	Don't show empty Global group if it only contained the material layer param.

Change 3744330 by Lauren.Ridge

	Clarifying "no parameter" text

Change 3744529 by Lauren.Ridge

	Making Save to Child and Save To Sibling buttons work for material layer params, show on material layer param panel

Change 3744668 by Chris.Bunner

	Added shared layer input collection asset, a list of float/texture redirectors that allow setting globally in a material graph then retrieving within layer/blend graphs.
	Added output for number of unique shaders generated by a particular material instance.
	Show instruction counts when working on a material layer.
	Relaxed restrictions on material layers, base MA input is now optional.

	#jira UETOOL-1271, UETOOL-1278, UETOOL-1279

Change 3744669 by Chris.Bunner

	Added automated test for material layers, layer/blend instances and shared inputs.

Change 3744754 by Laz.Matech

	Adding localization data to QAGame for the Realtime Preview localization test.

	#jira none

Change 3744860 by Michael.Dupuis

	#jira UE-52049 : Do not update random stream in most case, only when adding new instances, or filling from built data

Change 3744965 by Chris.Bunner

	Rebuilt lighting in automated test map and updated reflection capture screenshot.

Change 3746015 by Michael.Dupuis

	#jira UE-52090: Added missing shader for forward rendering

Change 3746038 by Michael.Dupuis

	#jira UE-51494: Make sure index is valid for this instance as instances from template and instance could mismatch due to in level changes

Change 3746076 by Michael.Dupuis

	Removed unused code

Change 3746998 by Tim.Gautier

	QAGame: - Renamed UMG_RealtimePreview > UMG_InEditorPreview
	- Moved UMG_InEditorPreview into UMG > Localization, setting up for future Localization tests

Change 3747206 by Arciel.Rekman

	Linux: make UI scale more coarse to prevent unnecessary scaling (UE-52086).

	- Monitors whose physical dimensions fall in range of 80-110 DPI should still have scale=1.0.

	(Edigrating CL 3740942 from Release-4.18 to Dev-Editor)

Change 3747211 by Arciel.Rekman

	Make failure to launch SCW more apparent to the user (UE-47263).

	- Fixes frequent crash on Linux.

	(Merging 3747070 from Release-4.18 to Dev-Editor)

Change 3747726 by Tim.Gautier

	QAGame: Resubmitting updated Loc files

Change 3747872 by Tim.Gautier

	QAGame: Resubmitting compiled Loc assets

Change 3748118 by Lauren.Ridge

	Adding help text to the material layers preview tab

Change 3748398 by Lauren.Ridge

	Fixing tooltips for the material layer read-only preview

Change 3748565 by Arciel.Rekman

	Linux: fix RHIs settings being wrong when removed via project properties (UE-51203).

	- This was a deeper issue with config system than just Linux RHIs.
	- This is a better fix than one submitted to 4.18 branch in CL 3747086.

Change 3749441 by Matt.Kuhlenschmidt

	PR #4201: Fix a typo in a comment. (Contributed by dneelyep)


Change 3749442 by Matt.Kuhlenschmidt

	PR #4195: Incorrect specifier used for FText::Format (Contributed by projectgheist)


Change 3749496 by Matt.Kuhlenschmidt

	Fix static analysis

Change 3749805 by Lauren.Ridge

	Fixing reset to default on MaterialLayerParam in base material

Change 3749838 by Lauren.Ridge

	Also correctly resetting names and layer states

Change 3750442 by Mieszko.Zielinski

	Added a safety check which addresses the crash #UE4

	Note that this is a temp fix. A proper fix is making sure ConvexShapeIndices doesn't contain any duplicates and will be inplemented in Dev-Framework.

	#jira UE-52123

Change 3752266 by Arciel.Rekman

	OpenGL: remove PLATFORM_WINDOWS exceptions.

	- Discrepancy in behavior between Windows and Linux OpenGL is unhelpful for bug reproducibility.
	- VAB bug should have been fixed long ago (on both platforms).

Change 3752929 by Arciel.Rekman

	Linux: avoid crashing on unknown drivers.

	- See https://answers.unrealengine.com/questions/724100/crashes-on-startup-after-first-run.html
	- Checks in IsDeviceIntel() and such fail if the drivers were not detected.

Change 3753254 by Michael.Dupuis

	Added missing shader for shader cache

Change 3753426 by Michael.Dupuis

	#jira UE-5751: Added the possibility to change material instance exposed params at runtime using a MID for texture, vector and scalar for 1 component or all components

Change 3753440 by Alexis.Matte

	Fix fbx scene importer morph target import crash

	#jira UE-52255

Change 3753457 by Michael.Dupuis

	build fix

Change 3753700 by Chris.Bunner

	Make GetSharedInput preview fallback always available in editor as this should handle previews, thumbnails and other editor-only cases.
	Refactor to remove duplicate code in material translator.
	Material layer expressions are required for client load, fixes cooked builds using layer instances in the base material layer stack.

Change 3754760 by Chris.Bunner

	Tidying up EngineTest/ShaderModels map.

Change 3754765 by Arciel.Rekman

	Avoid placing tooltip windows under the cursor (UE-12288).

	- Fixes inability to use some corners of the screen on Linux (the tooltips there aren't click-through).

Change 3754788 by Matt.Kuhlenschmidt

	Fix details panel crash after compiling blueprints that have edit conditon properties

Change 3754933 by Christina.TempelaarL

	Fixed typo in heightLerp (transistion->transition).
	#jira UE-46736

Change 3754946 by Cody.Albert

	Update loading movie code to properly calculate delta time when throttled at 60fps

Change 3755059 by Jamie.Dale

	Fixed game preview language not updating in realtime while PIE was enabled

	#jira UE-52209

Change 3755130 by Jamie.Dale

	Fixed game preview language not updating from native when switching between preview languages

	#jira UE-52348

Change 3755664 by Michael.Dupuis

	Fixed compile warning

Change 3755714 by Yannick.Lange

	Always allow capturing thumbnails from viewport.
	This also hides the thumbnail editing UI when a thumbnail was captured from a viewport.

Change 3755944 by Alexis.Matte

	Fix crash when importing morph target with "built in" tangent option

	#jira UE-52319

Change 3756109 by Christina.TempelaarL

	fixed FBX importer Import Textures tooltip, UMaterial -> Material in tooltip text
	#jira UE-48389

Change 3756169 by Jamie.Dale

	Added plural form pattern to SContentBrowser::GetPathText

Change 3756493 by Laz.Matech

	Updating Localization content to further test InEditor Preview Language in UMG

	#jira none

Change 3758336 by Alexis.Matte

	Fix a crash when importing morph target there was a unsync between some buffer depending on the import options

	#jira UE-52319

Change 3758947 by Jamie.Dale

	Fixed cursor position regression in search boxes

	This was caused by a call to SetText that was added in CL# 3627864

	This caused the text to update as it was changed, which made the cursor jump to the end of the text and made it impossible to type in the middle of a search term.

	This was done as a bound FText value had been passed to the InitalText of SSearchBox, which made the text resolution behave strangely. InitalText should always be a value, and SSearchBox now resolves any bindings during its constructor.

	#jira UE-48874

Change 3759000 by Laz.Matech

	Submitting the .PO file for CL 3756493

	#jira none

Change 3759480 by Matt.Kuhlenschmidt

	Safe guard against brush details crash

	#jira UE-52278

Change 3759665 by Matt.Kuhlenschmidt

	PR #4214: UE-52249: Use valid PreviewShadowsIndicatorMaterialName (Contributed by projectgheist)


Change 3761211 by Matt.Kuhlenschmidt

	Remove the restriction that a level must be writable to be locked/unlocked.
	Fixed duplicate icons being used by the level browser

Change 3761304 by Chris.Bunner

	MaterialAttributeLayers graph node BaseMA input is no longer required.
	Note: Requires "Use Preview Value" set to true on inputs.

Change 3761307 by Chris.Bunner

	New material layers and blends will have "Use Preview Value" set to true by default to avoid the need for connected inputs - Missed file on previous commit.

Change 3761357 by Chris.Bunner

	Renamed material shared input enum.

Change 3761419 by Chris.Bunner

	Updating material layers automated test assets after recent changes.
	Reverted some naming changes so existing screenshot tests can be reused.

Change 3762058 by tim.gautier

	QAGame: Adding Material Layer assets for testing (Content/Materials/LayerFunction)

Change 3763328 by Matt.Kuhlenschmidt

	Fix Slate warning at editor startup

Change 3763354 by Alexis.Matte

	Fix skeletal mesh material assign when reducing a LOD that was import from a file using simplygon reduction

	#jira UE-52505

Change 3763501 by Matt.Kuhlenschmidt

	Prevent shared asset thumbnail pools from having their resources forcefully released when they are in use.  ReleaseResources is now private and only called on destruction of the pool

Change 3763574 by Matt.Kuhlenschmidt

	Fix slate material box brushes not being keyed off image size

	#jira UE-40219

Change 3763678 by Jamie.Dale

	Disable realtime level editor viewport if running under remote desktop

	This makes the main editor window much more responsive by default under remote desktop

Change 3763679 by Jamie.Dale

	Added asset caching metrics for the loc gather

Change 3763693 by Matt.Kuhlenschmidt

	Changed the code that activates the actor details tab  when selection changes to a flash. There are simply too many things that change the selection and steal focus away from a tab being used

	#jira UE-51754

Change 3763826 by Michael.Dupuis

	Fixed Fortnite cooking crash

Change 3763864 by Harrison.Moore

	Adding New Default 'LayerBlend' assets

Change 3764028 by Christina.TempelaarL

	#jira UE-47695 Auto LOD bug

	Moved the sections dropdown to the LOD Picker category and modified Custom cb behavior, based on suggestions from charlie.

Change 3764031 by Christina.TempelaarL

	#jira UE-47695 Auto LOD in StaticMeshViewer

	moved LOD combo widget to LOD picker category and hide custom checkboxes until custom checked.

Change 3764076 by tim.gautier

	QAGame: Submitting UMG_Multitouch_test for initial Multitouch testing

Change 3764263 by Matt.Kuhlenschmidt

	Fix the floor mesh thumbnail

Change 3764284 by Chris.Bunner

	Removing some asserts for cases that can validly fail and are already handled.

Change 3764372 by Matt.Kuhlenschmidt

	PR #4196: Show edit icons in editor (Contributed by projectgheist)


Change 3764388 by Chris.Bunner

	Fixing logic for material, function and instance updating active materials and instances and their editors.

Change 3764674 by Harrison.Moore

	test materials added, Blend updates

Change 3764681 by Harrison.Moore

	Adding HMtest map

Change 3766238 by Chris.Bunner

	Material layer callers need to let their internal material function calls update their inputs/outputs.

Change 3766556 by Jamie.Dale

	Fixed crashes that could happen if some of the data table panels were closed

	We now always create the underlying widgets, even if they're currently hidden from view

	#jira UE-52552

Change 3767753 by Chris.Bunner

	When rebuilding a material function instance editor we must re-create and re-apply the proxies as the expressions have likely changed. Take care to maintain local parameter changes as these have not been saved yet.

Change 3768719 by Michael.Dupuis

	#jira UE-52521: Prevent possible crash if a segment have no point or invalid point

Change 3769157 by Jamie.Dale

	Fixed incorrect text selection if selecting via double click beyond the bounds of the line

	It would previously select the second to last word, rather than the last word

	#jira UE-51609

Change 3769159 by Harrison.Moore

	Belica Test update, New layer blends updated with texture type fix.

Change 3769205 by Jamie.Dale

	Fixed Windows file save dialog not appending the correct extension when there were multiple options available

	#jira UE-52180

Change 3769220 by Harrison.Moore

	Layer blend tweaks

Change 3769292 by Jamie.Dale

	Removing redundant code

	Applying the correct package ID, only to then strip it off again is rather pointless

Change 3769479 by Arciel.Rekman

	UBT: Use response files for compiler when compiling for Linux.

	- Some command lines are too long when cross-compiling on Windows.

Change 3769920 by Arciel.Rekman

	Linux: convert yet another initialization crash to a user-friendly message (UE-52457).

	#jira UE-52457

Change 3771055 by Alexis.Matte

	Make sure we set the Used by morph target material flag to material use by the morphtarget instead of all skinned mesh component
	Use the morph vertex factory only for section that has active morph target

	#jira UE-51483

Change 3771135 by Michael.Dupuis

	Fixed fortnite cooking

Change 3773054 by Yannick.Lange

	Avoid loading viewport interaction assets when starting the editor.

Change 3774184 by Arciel.Rekman

	Linux: disabled some gdb visualizers until the issue is fixed.

	- CL 3773942 by CengizT.

Change 3774303 by Matt.Kuhlenschmidt

	Pull requests to fix various typos

Change 3774305 by Matt.Kuhlenschmidt

	PR #4237: Visual Studio Repeatedly Opens (UE-51608) (Contributed by LordNed)


	#jira UE-51608

Change 3774701 by Arciel.Rekman

	OpenGL: fix ARB callback errors when hitting Build Lighting.

	- Merged from 4.18 shelf.

Change 3775812 by Matt.Kuhlenschmidt

	Fix One-off crash undo-ing while working with Material Params / Material Functions

	#jira UE-52680

Change 3775849 by Matt.Kuhlenschmidt

	More info for UE-52610

Change 3775850 by Matt.Kuhlenschmidt

	Guard against mesh paint crashes

	#jira UE-52618

Change 3775904 by Matt.Kuhlenschmidt

	Added logging to track down window shutdown issues

Change 3775913 by Matt.Kuhlenschmidt

	Pull requests for typos

	#jira UE-52751, UE-52748

Change 3776676 by Jamie.Dale

	Fixed being able to insert tabs into spin boxes with units

	#jira UE-52776

Change 3777006 by Michael.Trepka

	Process Mac windowDidBecomeMain and windowDidResignMain notifications immediately instead of deferring them. This solves issues with Slate code that closes and immediately opens new menu windows. Previously closing a window would schedule menu parent's activation event that could be processed after another menu's creation, making it immediately disappear.

	#jira UE-52145

Change 3777170 by Arciel.Rekman

	Linux: use Xft.dpi (most desktop environments expose their scale through that) as a DPI value (UE-52086, UE-52766).

	- Change by Brandon.Schaefer.
	- Limitation: no per-monitor DPI.

	(Edigrating CL 3776509 //UE4/Release-4.18/... to //UE4/Dev-Editor/...)

Change 3777292 by Arciel.Rekman

	Linux: fix symbol collision causing problems with AMD drivers (UE-51843).

	- We cannot have elf_end() hidden, because libcuda.so calls elf_end from libnvidia-fatbinaryloader.so and this breaks linking monolithic binaries ("hidden symbol referenced in DSO").
	- We cannot have elf_end() visible, because of a name collision with a different libelf used by AMD drivers.
	- The only possible workaround is to have elf_end() renamed.

	(Edigrating CL 3777242 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)

Change 3777686 by Joe.Conley

	Blueprint editor variable type tooltips: fix case mismatch that was preventing type name to be displayed properly in soft object/class reference tooltips.

Change 3778180 by Jamie.Dale

	Avoid a crash if a regex pattern or matcher outlive ICU during shutdown

	#jira UE-52770

Change 3778182 by Jamie.Dale

	Avoid a crash if a break iterator outlives ICU during shutdown

Change 3778368 by Jamie.Dale

	Added missing pragma once

Change 3778560 by Matt.Kuhlenschmidt

	Prevent non-shared DDC notification from triggering for epic internal builds

Change 3778709 by Lauren.Ridge

	Copying 4.18.2 array reordering propagating to children fix (originally 3778547)

Change 3779205 by Lauren.Ridge

	Duplicating 3776649 to fix a crash on compile due to partial GC of a widget.

	#jira UE-52260

Change 3779217 by Brandon.Schaefer

	GitHub #3678 Fix Setup.sh handling of special characters in PNG path

	#jira UE-46103

Change 3779341 by Brandon.Schaefer

	GitHub #3012 Use elemtry OS versions to set the ubuntu versions for depencies

	#jira UE-39364

Change 3780274 by Joe.Conley

	DataTables: Add documentation tooltips showing type information to header columns

Change 3780840 by Alexis.Matte

	Do a re-import when user re-import LOD 0
	Prevent importing more then MAX_SKELETAL_MESH_LODS
	#jira UE-52373

Change 3781067 by Arciel.Rekman

	Linux: fix OSSSteam cross-compilation (and CIS).

	- Broken by previous change that put compile-time arguments into response file and bulk-replaced \ with /, which affected things like Definitions.Add("STEAM_SDK_VER_PATH=TEXT(\"Steam" + SteamVersion + "\")");

Change 3781110 by Christina.TempelaarL

	#jira UE-47695 moved Static Mesh Editor LOD menu from tools to viewport tool bar

Change 3781531 by Christina.TempelaarL

	#jira UE-47695 added LOD menu to Static Mesh Editor viewport

Change 3781663 by Alexis.Matte

	Fix for cancel export fbx when previewing animation sequence export
	#jira UE-49743

Change 3782007 by Jamie.Dale

	Improved the ability to lockdown available game languages

	In addition to the previous "DisabledCultures" array, you can now add an array of "EnabledCultures" (using the same per-build config filters) to explicitly list the cultures that are allowed to be used in your build (if the list is empty, then everything is allowed unless otherwise disabled).

	This also stops the game from attempting to fallback to the native language if the native language has been disabled (we will fallback to the first available language instead).

Change 3782122 by Jordan.Walker

	test assets for material layers

Change 3782131 by Joe.Graf

	Added support for IOS and TVOS targets when generating CMake files on Mac

Change 3782218 by Christina.TempelaarL

	fixing include paths and capitalization causing build errors.

Change 3783171 by Michael.Dupuis

	Added the possibility to override default LOD rules for visible primitive and whole scene shadow casting primitive
	Added the possibility to store Custom data per view for the frame duration

Change 3783172 by Michael.Dupuis

	#jira UE-35097	: Refactored landscape rendering logic to improve general performance while using new custom data and custom lod feature
	Exposed many new settings to control component using sub sections rendering, tessellated component, shadow should be include into tessellation, tessellation falloff based on camera location
	Changed how LOD distribution is done to be in screen size instead of distance.
	Give the possibility to have a different distribution for LOD0 vs the other one.

Change 3783174 by Michael.Dupuis

	missing file to landscape refactor

Change 3783315 by Lauren.Ridge

	Changing a parameter in the Material Parameter Panel now dirties the material correctly.
	Changing a layer parameter in the Material Instance Editor now refreshes the details panel as well.

Change 3783374 by Chris.Bunner

	Adding MaterialSharedInputCollection to hidden list when MaterialLayers disabled.

Change 3783617 by Chris.Bunner

	Added a Channel Mask material expression parameter. Wraps up a vector parameter and dot product with a single channel selection interface, internally a regular vector parameter.
	Fixed GetSharedInput failing to return the preview texture in the Function Instance editor.

Change 3783676 by Lauren.Ridge

	Adding access to a material function instance's parent in the Material Instance Editor

Change 3783751 by Michael.Trepka

	PR #4248: Fixed C++ std in generated Xcode project to match rest of engine (C++14) (Contributed by Bo98)


Change 3783971 by Brandon.Schaefer

	Rename/Move all deploy/Deploy folder/files into AlembicDeploy. Due to case sensitivity on linux, need to maintain the correct case.

	#jira UE-37631

Change 3783992 by Michael.Dupuis

	#jira UE-35097: Remove tessellation on editor tools
	Fixed a case where tessellation multiplier at 0 would cause the component to not be visible
	Fixed minor tessellation falloff calculation error

Change 3784502 by Chris.Bunner

	Restored missing bool setter.
	Coding standards fix.

Change 3784614 by Arciel.Rekman

	Linux: better error message when running out of inotify watches (UE-50459).

	#jira UE-50459

Change 3784620 by Chris.Bunner

	Updated LayerBlend_TextureMask to use new ChannelMask parameter.

Change 3784725 by Lauren.Ridge

	Fixing groups not sorting correctly

Change 3785645 by Chris.Bunner

	Non-editor compile fix.

Change 3785666 by Arciel.Rekman

	Linux: restore ability to use Wayland instead of X11.

	- SDL libs recompiled and Wayland version is set to lower one to be compatible with the compositor shipped on Ubuntu 16.04 LTS
	- Change by Anthony.Bills.

Change 3785708 by Arciel.Rekman

	Linux: implement voice capture using SDL (non-server only) (UE-51298).

	- Based on pull request #4131 by mkirzinger.

Change 3785878 by Arciel.Rekman

	UBT: add VSCode to default generators on Linux.

Change 3786058 by Arciel.Rekman

	Do not add dependencies on other RHIs for servers (UE-48894).

	- Pull request #3944 contributed by pfoote.


	#jira UE-48894

Change 3786845 by Arciel.Rekman

	Code changes to make gcc support easier (UE-51978).

	- Contributed by a licensee (pull request #4181 by tomwardio "Collection of fixes to allow UE4 to be compiled by GCC on Linux").

Change 3786871 by Matt.Kuhlenschmidt

	Fix static analysis

Change 3786883 by Matt.Kuhlenschmidt

	Fix HTML5

Change 3786923 by Matt.Kuhlenschmidt

	Fix engine layer blend asset referencing game content.  This is not allowed

	#jira UE-52888

Change 3786927 by Brandon.Schaefer

	Linux: Alembic support

	#jira: UE-37631

Change 3786994 by Arciel.Rekman

	Remove support for /-prefixed switches (UE-47429).

	- They collide with absolute file paths on Mac/Linux and a source of inconsistencies between platforms.

	#jira UE-47429

Change 3787032 by Michael.Trepka

	Initial support for building and running Niagara on Mac

Change 3787035 by Brandon.Schaefer

	GitHub #4166 Undef GL entrypoint macros after use

	#jira UE-51663

Change 3787144 by Lauren.Ridge

	Fixing material parameter group association resetting after undo

	#jira UE-52514

Change 3787839 by Jordan.Walker

	updated engine level layer blends to not include game content
	switched them to use Chris B's new mask selection node

Change 3787967 by Lauren.Ridge

	Fix for broken layer groups, related crash

Change 3787991 by Lauren.Ridge

	Fixing thumbnails for material function instances, resolving not being able to delete new function instances

	#jira UE-52967

Change 3788226 by Michael.Trepka

	Fixed a deadlock when closing Mac CrashReportClient which resulted from changes in CL 3777006

	#jira UE-53002

Change 3788557 by Brandon.Schaefer

	Fix shadow compiler warnings around our includes

Change 3789700 by Lauren.Ridge

	Experimental setting for turning on Material Layers - off by default.

Change 3789703 by Jamie.Dale

	Harden the LocMeta and LocRes loading to prevent loading files that are too new

Change 3789706 by Jamie.Dale

	Added localization ID to the package summary

	This will allow the localization gatherer to query it without having to load the entire package

Change 3789708 by Jamie.Dale

	Added a way to display and reset the package localization ID via the Content Browser

Change 3789709 by Jamie.Dale

	Added warning for duplicate package localization IDs when gathering asset localization

Change 3789713 by Jamie.Dale

	Special case zero-width space in the text shaper to avoid fonts rendering the fallback glyph

Change 3789736 by Christina.TempelaarL

	Fixed recently-introduced StaticMeshEditor bug - changing LOD dropdown menu selection was not changing LOD sections category.

Change 3789853 by Chris.Bunner

	Material instances should return overridden values when the caller is requesting the default, not leaving the request to fall through to the base material.

	#jira UE-52796

Change 3790185 by Brandon.Schaefer

	Add better error handling when using new SDK for linux on windows.

	#jira UE-50527

Change 3790195 by Jamie.Dale

	Fixed line-ending inconsistency when retrieving rich-text

	We were using LINE_TERMINATOR when getting the offsets, but \n when getting the text

Change 3790473 by Chris.Bunner

	When finding expression by GUID, only return FunctionCall result if expression was found. Fixes cases where searched-for expression is after a FunctionCall in the expressions list.

	#jira UE-52729

Change 3790650 by Arciel.Rekman

	UBT: Linux: print build details first before refusing to build.

	- Tweak to the previous feature that we forgot.

Change 3790681 by Arciel.Rekman

	UBT: Linux: tweaks to wording (SDK -> toolchain).

Change 3791459 by Brandon.Schaefer

	Linux: libcurl rebuild for version 7.57

	#jira OGS-870

Change 3791533 by Arciel.Rekman

	Better error messaging when UMB is unusable (UE-50658).

	- Should be replaced by a better fix, but merging this workaround in case the better fix will not be done in time for 4.19.

	(Edigrating CL 3789387, 3789787 from Release-4.18 to Dev-Editor)

Change 3791885 by Matt.Kuhlenschmidt

	Fix static analysis

	#jira UE-53097

Change 3791910 by Brandon.Schaefer

	Fix for not using proper libraries on x86_64 for libcurl

	#jira OGS-870

Change 3792017 by Jamie.Dale

	Fixed a conflict between the path settings and favorite settings

Change 3792022 by Jamie.Dale

	Fixed a crash that could happen when performing ARO on the property chains of a struct

	#jira UE-52999

Change 3792025 by Jamie.Dale

	Changed package summary localization ID to be versioned by the object version to avoid changing data in unversioned cooked assets

Change 3792066 by Michael.Dupuis

	#jira UE-5751: Fixed possible crash when using dynamic matrial instance
	Added missing shaders for landscape when using tessellation

Change 3792718 by Arciel.Rekman

	OpenGL: bringing back Windows workarounds to unblock copy-up (UE-52534).

	#jira UE-52534

Change 3793018 by Mike.Erwin

	new glTF importer plugin

	Import StaticMesh, Material, and Texture assets from the Khronos glTF 2.0 format. Text (.gltf) and binary (.glb) files are supported.

	Limitations:
	- There is no options UI. All assets from the file are imported.
	- The glTF format can describe animation and whole scenes, but the initial version of this plugin does not attempt either.
	- Data encoded as Base64 data URI is not supported. This is uncommon but is part of the glTF spec.

	#jira: UE-50695

Change 3793626 by Matt.Kuhlenschmidt

	Logging for HTML5 issue

Change 3794034 by Matt.Kuhlenschmidt

	Fix CIS

Change 3794271 by Michael.Dupuis

	#jira UE-53133: Fxed shadow calculation when using non whole scene shadow

Change 3794273 by Chris.Bunner

	Function call material nodes should be created with no outputs by default.

	#jira UE-53127, UE-53128, UE-52616

Change 3794334 by Lina.Halper

	- Fix animation reinitializing when just setting new animation with single node
	- Deprecated GetScalarParameterDefault and replace that with GetScalarParameterDefaultValue

	#jira: UE-52796

Change 3794338 by Michael.Dupuis

	Fixed lod visual popping when texture mip used for landscape is not ready

Change 3794350 by Mike.Erwin

	Fix glTF importer header includes.
	Build was failing on Linux.

Change 3794357 by Michael.Dupuis

	#jira UE-53166: buildfix: removed phase 2 landscape optim leftover...

Change 3794549 by Michael.Dupuis

	#jira UE-53166 : fixed compile error

Change 3794755 by Matt.Kuhlenschmidt

	Fix automation warning

Change 3794910 by Lina.Halper

	Change material default value to be red to keep the behavior same.

	- Previous code was getting default value of parent, which was wrong, but now since we're grabbing correct value, it's not doing what it meant to do. Changed content to keep same value as parent as default.

Change 3795296 by Mike.Erwin

	glTF: fix Linux build errors

	A variable was being shadowed.

	The other errors are due to an obscure corner of the C++ spec which clang enforces.
	https://stackoverflow.com/questions/21900237/do-i-really-need-to-implement-user-provided-constructor-for-const-objects

	#jira UE-53204

Change 3797313 by Chris.Bunner

	Re-built lighting in Rendering/ShaderModels automated test map and updated failing screenshots.

	#jira UE-53198

Change 3803962 by Jamie.Dale

	Fixed struct instances not comparing against the correct default values when gathering for localization

Change 3804771 by Michael.Dupuis

	Back out changelist 3783171

Change 3804772 by Michael.Dupuis

	Back out changelist 3783172

Change 3805258 by Michael.Dupuis

	Added missing shader cache for landscape

Change 3806105 by Matt.Kuhlenschmidt

	Disable harware benchmarking during automation tests, commandlets, and on the build machine

Change 3806438 by Michael.Dupuis

	#jira UE-53228: Fixed rendering path of new landscape optim when using GDoInitViewsLightingAfterPrepass(used in Orion)

Change 3806577 by Matt.Kuhlenschmidt

	Change plugin uploading to crash reporter to only do so in editor builds

Change 3806588 by Michael.Dupuis

	Remove temp test version in landscape version

Change 3806900 by Jamie.Dale

	Fixed 'inconsistent DLL linkage' error when using older versions of Python 2.7

	#jira UE-53353

Change 3807125 by Jamie.Dale

	Fixed UBT warning after Dev-Core merge

Change 3807299 by tim.gautier

	QAGame: Checking in test asset M_LandscapeMaterial_Foliage, quicker repro for UE-53442

[CL 3807911 by Matt Kuhlenschmidt in Main branch]
2017-12-14 10:07:13 -05:00
Ben Marsh
cfc9f4775f Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3805092)
#lockdown Nick.Penwarden
#rb none

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

Change 3623004 by Ben.Marsh

	Fix RemoteExecutor not taking the remote machine specs into account.

Change 3623172 by Ben.Marsh

	UGS: Fix "More Info..." button not using P4 server override.

Change 3628820 by Ben.Marsh

	PR #3979: Get working directory from task element, not tool node (Contributed by nullbus)


Change 3630424 by Graeme.Thornton

	Make the AES key parameter const in FAES::EncryptData()

Change 3632786 by Steve.Robb

	FString constructor fixed to not take an ignored void* parameter, which can be misleading.

Change 3639534 by Ben.Marsh

	Remove old P4.NET library. Doesn't seem to be used by anything.

Change 3640536 by Steve.Robb

	GitHub #4007 : Delete unnecessary specialization of MakeArrayView

	#jira UE-49617

Change 3641155 by Gil.Gribb

	UE4 - Speculative fix for problem with summary reading in FAsyncArchive2.

Change 3643932 by Ben.Marsh

	Add an example build script for updating the version number, then compiling and staging the editor and tools to an output directory. Optionally submits at the end (requires -Submit argument).

Change 3644825 by Ben.Marsh

	Use VSWHERE to find the location of MsBuild.exe, if available.

	https://github.com/EpicGames/UnrealEngine/pull/3879#issuecomment-329688645

Change 3647395 by Ben.Marsh

	Allow compiling of monolithic binaries from BuildEditorAndTools.xml, using the -set:GameTarget=FooGame -set:TargetPlatforms=Win32;Win64 options.

Change 3650300 by Ben.Marsh

	UAT: Remove code that deletes cooked data on a failed cook. The engine should write packages out transactionally now (by writing to a temporary file and moving into place), and deleting the cooked data just prevents post-mortem analysis.

Change 3650856 by Robert.Manuszewski

	Adding checks to prevent FlushAsyncLoading and LoadObject/LoadPackage from being called from any threads other than the game thread

Change 3651022 by Gil.Gribb

	UE4 - Possible fix for mysterious ensure indicating problematic recursion in the pak precacher.

Change 3658331 by Steve.Robb

	Fix for the parsing of large integer values.

Change 3661958 by Gil.Gribb

	UE4 - Fixed rare hang in task graph.

Change 3664021 by Robert.Manuszewski

	Fix for a potential GC crash caused by stale pointer in AnimInstanceProxy

	See https://udn.unrealengine.com/questions/392432/gc-issue-uaniminstancemontageinstances-empty-but-u.html

Change 3664254 by Steve.Robb

	Use ANSI allocator when thread sanitizer is enabled.  This allows the generation of more accurate and meaningful reports.

Change 3664436 by Steve.Robb

	Use TUniquePtr instead of a thread-unsafe TSharedPtr to move data between threads.

Change 3666461 by Graeme.Thornton

	Improvements to signing/encryption key embedding and runtime access
	 - Changed method of embedding key into the executable to make it more secure
	 - Added FAESKey class to wrap a 32 byte key

Change 3666462 by Graeme.Thornton

	Cut ShooterGame AES key down to 32 characters

Change 3677560 by Ben.Marsh

	PR #4074: UBT: Add include and library-related fields to module JSON output (Contributed by adamrehn)


Change 3683534 by Steve.Robb

	Refactoring of enum/struct lookup during hot reload.

Change 3683754 by Steve.Robb

	Alignment fixes to allow int64 on 32-bit platforms
	Support for integral types in IsAligned.
	Static asserts so that alignment functions will no longer be called with non-intergal, non-pointer types.
	Some fixes to existing code.

Change 3686670 by Steve.Robb

	Fix for thread-unsafe modification of static array in FString::ParseIntoArrayWS.

Change 3687540 by Ben.Marsh

	Fix all UBT/UAT output going to stderr rather than stdout.

Change 3688931 by Gil.Gribb

	UE4 - Critical fix for a rare race condition in the pak file async IO layer.

Change 3690000 by Graeme.Thornton

	Manual copy of 4.18 CL 3687869

	Make UBT include the destination INI file for a given hierarchy if it exists
	Renamed VSCode enum value to VisualStudioCode, so it matches the source accessor plugin name

Change 3690030 by Graeme.Thornton

	VSCode fixes
	 - Source Code Accessor plugin changes. Add new interface method to open a solution at a given path
	 - GameProjectUtils now uses the source navigation API to open solutions rather than hardcoding which solution file types to look for
	 - Various fixes for vscode project file generation

	#jira UE-50554

Change 3690885 by Steve.Robb

	Atomic reads in FReferenceControllerOps<ESPMode::ThreadSafe>.

Change 3691052 by Steve.Robb

	Free stats thread on shutdown.

Change 3695138 by Steve.Robb

	AsConst helper function added.

Change 3696627 by James.Hopkin

	Changed player controller iterator typedefs to use TWeakObjectPtr rather than the deprecated TAutoWeakObjectPtr

	(review-3606695)

Change 3697099 by Steve.Robb

	GitHub #4105 : Removed redundant class access modifier

Change 3697154 by Steve.Robb

	Removal of deprecated functions in delegates.
	Mutable lambdas to can now be bound to delegates.

Change 3697180 by Steve.Robb

	GitHub #4115 : Incorrect CPPMacroType used for USoftClassProperty

Change 3697239 by Steve.Robb

	Allow TArray::Insert to take an array with any allocator type.

Change 3697269 by Steve.Robb

	RelocateConstructItems instead of MoveConstructItems.

Change 3697558 by Steve.Robb

	New _GetRef functions for TArray, which return a reference to the newly-added element.
	Unit tests for these functions.

Change 3699776 by Steve.Robb

	TSAN warning suppression around IAsyncReadRequest::bCompleteAndCallbackCalled.

Change 3702397 by Steve.Robb

	TIsTrivial type trait.

Change 3702569 by Steve.Robb

	Allow a TGuardValue to be assigned to a different type from the one being guarded.

Change 3706644 by Robert.Manuszewski

	Different stack ingore count for development builds for FArchiveStackTrace

Change 3709272 by Steve.Robb

	Removal of redundant UpdateVertices, which causes a race condition on the renderer thread.

Change 3709452 by Robert.Manuszewski

	Fixed a bug where with async time limit set to a low value the async loading could hang because the linker would keep reloading the preload dependencies

Change 3709454 by Robert.Manuszewski

	Added command line option -NOEDL to disable EDL

Change 3709487 by Steve.Robb

	Remove use of PLATFORM_HAS_64BIT_ATOMICS, which is always 1.

Change 3709645 by Ben.Marsh

	Fix race condition between multiple instances of UBT trying to write out the XML config cache.

Change 3711193 by Ben.Marsh

	Add an editor setting for the shared DDC location to use.

	#jira UE-51487

Change 3713811 by Steve.Robb

	Update .modules files after a hot reload.
	Don't check for directory timestamp changes as a way of detecting new files if hot reloading with a makefile, as this is already done during makefile invalidation checks.
	Pass hotreload flags around in UBT instead of relying on global state.

	This fixes the hot reload iteration speed regression without also regressing the fix to UE-42205.

	#jira UE-51472

Change 3715654 by Steve.Robb

	GitHub #4156 : Fixed not compiling template function Algo::UpperBoundBy.

Change 3718782 by Steve.Robb

	TSharedPtr, TSharedRef and TWeakPtr assignment are now implemented as copy-and-swap to avoid an invalid smart pointer state being visible to any destructors being called.

Change 3720830 by Steve.Robb

	Initial import of TAtomic object wrapper, which guarantees atomic access to an object.

Change 3720881 by Steve.Robb

	FCompression ThreadSanitizer data race fixes.

Change 3722640 by Graeme.Thornton

	Guard network platform file heartbeat function with the socket critical section. Stop heartbeat from causing a crash when firing during async loading.

	#jira UE-51463

Change 3722655 by Steve.Robb

	Don't null name table because it's already zeroed at startup.
	Some tidy-ups.

Change 3722754 by Steve.Robb

	Thread sanitizer fix.
	Small typo fix.

Change 3722849 by Graeme.Thornton

	Improve "caching file" message in networkplatformfile so it says "Requesting file..." and is only output when we actually request the file from the server

Change 3723081 by Steve.Robb

	TAtomic is now aligned to the underlying integer type.
	TAtomic will now static assert with a better error message when given an unsupported type.
	Define added for the maximum platform-supported atomic type, and used instead of a (wrong) hardcoded number.
	Misc renames.

Change 3723270 by Ben.Marsh

	Include /d2cgsummary argument when running UBT with -Timing.

Change 3723683 by Ben.Marsh

	Do not include documentation in the generated project files by default. Suspect that the 30,000 UDN files that get added to the solution take up memory and degrate performance.

Change 3725422 by Robert.Manuszewski

	When serializing compressed archive with multithreaded compression enabled, wait for the oldest async task instead of spinning.

Change 3725735 by Robert.Manuszewski

	Making all CheckDefaultSubobjects related functions const

Change 3726167 by Steve.Robb

	FMinimalName::IsNone added.

Change 3726458 by Steve.Robb

	TAtomic will no longer instantiate for types which are not exactly a size supported by the platform layer.

Change 3726542 by Ben.Marsh

	UGS: Always include the project filename in the editor build command. The project may not be in one of the .uprojectdirs paths.

Change 3726595 by Ben.Marsh

	Allow building multiple game targets in the example BuildEditorAndTools.xml script.

Change 3726724 by Ben.Marsh

	Fix ambiguities in calculating root directory. (GitHub #4172)

Change 3726959 by Ben.Marsh

	Make sure that AutomationTool uses the same list of preprocessor definitions when compiling *.target.cs files as UnrealBuildTool does.

Change 3728437 by Steve.Robb

	VisitTupleElements now supports invocation of a functor taking arguments from multiple tuples in parallel.
	Some improved documentation.

	NOTE: This is a backward-incompatible change to VisitTupleElements.  Any existing calls will need their arguments swapping.

Change 3732262 by Gil.Gribb

	UE4 - Fixed rare hangs in the task graph.

Change 3732755 by Steve.Robb

	Stats TSAN fixes.
	Optimizations to FCycleCounter::Start() to only read the stat name once.

Change 3735000 by Robert.Manuszewski

	Always preload the AssetRegistry module on startup. even if EDL is disabled.

	Even without EDL, if the async loading thread is enabled the AssetRegistryModule will otherwise be loaded from the ASL thread and that will assert.

Change 3735292 by Robert.Manuszewski

	Made sure component visualizer is removed from VisualizersForSelection when UnregisterComponentVisualizer() is called otherwise it may cause crashes when the engine terminates.

Change 3735332 by Steve.Robb

	Refactoring of UDelegateProperty::Identical() to clarify logic.
	Fixed UMulticastDelegateProperty::Identical() to compare the bound function names.
	PPF_DeltaComparison removed, as it doesn't seem useful.

Change 3737960 by Graeme.Thornton

	VSCode - Add launch task for generating project files for the given folder

Change 3738398 by Graeme.Thornton

	Make Visual Studio source code accessor's module hotreload handler pass the 'save all files' message to the current accesor, rather than direct to the visual studio accessor

	#jira UE-51451

Change 3738405 by Graeme.Thornton

	VSCode: Format c/cpp settings strings using comment path formatting function

Change 3738928 by Steve.Robb

	Fix for lack of null conditional operators in some older Monos. (replicated from CL# 3729574 in Release-4.18)

	#jira UE-51842

Change 3739135 by Ben.Marsh

	Fix being unable to package projects in a folder called "Wolf". This is only a restricted folder for Epic's Perforce history.

	#jira UE-51855

Change 3739360 by Ben.Marsh

	UAT: Fix issue with P4PORT setting not being parsed correctly.

Change 3745959 by James.Hopkin

	#core Added ImplicitConv for safe upcasts to a specific required type, e.g. deduced delegate payload types

Change 3746125 by Steve.Robb

	FName ThreadSanitizer fixes.

Change 3747274 by Steve.Robb

	TSAN fix for FMediaTicker::Stopping.

Change 3747618 by Steve.Robb

	ThreadSanitizer data race fix for FShaderCompileThreadRunnableBase::bForceFinish.

Change 3747720 by Steve.Robb

	ThreadSanitizer fix for FMessageRouter::Stopping.

Change 3749207 by Graeme.Thornton

	First pass of CryptoKeys plugin. Allows creation/editing/cycling of AES/RSA keys.

Change 3749323 by Graeme.Thornton

	Fix UAT crash when only -targetplatform is specifiied

Change 3749349 by Steve.Robb

	TSAN_SAFE guards around LockFreeList to silence ThreadSanitizer.

Change 3749617 by Steve.Robb

	Logf static_assert for formatting string enabled.

Change 3749897 by Steve.Robb

	FDebug::LogAssertFailedMessage static assert for formatting string enabled.

Change 3754011 by Steve.Robb

	Static asserts that the allocator supports move.
	Move-enabled our allocators which don't support move.

Change 3754227 by Ben.Marsh

	Fix build command line in generated projects missing a space before the compiler version override.

	#jira UE-52226

Change 3754562 by Ben.Marsh

	PR #4206: Replace deprecated wsprintf with secure swprintf for Bootstrap executable (Contributed by jessicafalk)


Change 3755616 by Graeme.Thornton

	Runtime code for using the new crypto ini files to define signing/encryption keys

	#jira UE-46580

Change 3755666 by James.Hopkin

	Used ImplicitConv to remove Casts being used for up-casts

	#review-3745965

Change 3755671 by Graeme.Thornton

	Add log message in unrealpak to say which config file system it is using for crypto keys

Change 3755672 by Graeme.Thornton

	Updating ShooterGame with new CryptoKeys based security setup

Change 3756778 by Ben.Marsh

	Add support for running multiple jobs simultaneously on a single builder.

	When running job or agent setup, the --num-slots=X parameter defines the number of steps that can run simultaneously (EC procedures pass in the resource step limit). A lock file is created under the workspace root (D:\Build) and a reservation file is created for the first slot that can be allocated (slot-1, slot-2, etc...). The slot number is used to define the workspace name that should be used.

Change 3758498 by Ben.Marsh

	Re-throw exceptions when a file cannot be deleted when cleaning a target.

Change 3758921 by Steve.Robb

	ThreadSanitizer fix to FThreadSafeStaticStatBase::HighPerformanceEnable to do a relaxed atomic load on access.
	DoSetup() now returns the newly-allocated pointer, instead of reloading it from memory.

Change 3760599 by Graeme.Thornton

	Added missing epic header comment to some new source files

Change 3760642 by Steve.Robb

	ThreadSanitizer fix for concurrent access to GMainThreadBlockedOnRenderThread.

Change 3760669 by Graeme.Thornton

	Improvement to OpenSSL based signing key generator. Generate a full RSA key then steal the primes from it, rather than generating the primes manually.

	Added a test mode to the cryptokeys commandlet to test signing key generation

Change 3760711 by Steve.Robb

	ThreadSanitizer fixes to GIsRenderingThreadSuspended.

Change 3760739 by Steve.Robb

	ThreadSanitizer fix for FQueuedThread::TimeToDie.

Change 3760763 by Steve.Robb

	ThreadSanitizer fix for GRunRenderingThreadHeartbeat.
	Removal of unnecessary/dangerous initializer for GMainThreadBlockedOnRenderThread.

Change 3760793 by Steve.Robb

	Some simple refactoring to remove some volatile reads of BufferStartPos and BufferEndPos.

Change 3760817 by Steve.Robb

	ThreadSanitizer fixes for FAsyncWriter::BufferStartPos and BufferEndPos.

Change 3761331 by Josh.Engebretson

	UnrealBuildTool enforcement of Development and Debug configurations in existing .csproj

	#jira UE-52416

Change 3761521 by Steve.Robb

	ThreadSanitizer fixes for FEvent::EventStartCycles and EventUniqueId.

Change 3763117 by Graeme.Thornton

	PR #3722: Optimising FPaths::IsRelative() (Contributed by jovisgCL)


Change 3763358 by Graeme.Thornton

	Ensure that all branches within FGenericPlatformMisc::RootDir() produce an absolute path with no duplicate slashes
	Remove relative->abs conversion of root dir from FPaths::MakeStandardFilename(), now that we know RootDir() always returns an absolute path

	Derived from the content of this PR:
	PR #3742: Treat RootDirectory the same way as Standardized (Contributed by TroutZhang)


Change 3764058 by Graeme.Thornton

	Generate a .code-workspace file for the current workspace. Allows foreign projects to "mount" the UE4 folder so that the engine tasks are avaible, and all engine source is visible to VSCode for searching purposes

	#jira UE-52359

Change 3764705 by Steve.Robb

	Better handling of whitespace in ImportText_Internal() for set and map properties.
	Containers are now emptied upon import failure, to avoid leaving bad container states (unhashed, partial data).
	Fix to USetProperty's temp buffer size to avoid buffer overruns.
	Duplicate map keys are now skipped during import, same as USetProperty's behavior.

Change 3764731 by Steve.Robb

	Don't re-run UHT if only source files have changed in the same folder as headers.  This was already done for hot reload, but there's no reason why it should be limited to that.

Change 3765923 by Graeme.Thornton

	VSCode - "taskName" -> "label" for C# build tasks

Change 3766018 by Steve.Robb

	constexpr constructor for TAtomic.

Change 3766037 by Steve.Robb

	Misc tidyings in HotReload.cpp.

Change 3766046 by Steve.Robb

	ThreadSanitizer fixes to ENamedThreads::RenderThread and ENamedThreads::ENamedThreads_Local.

Change 3766288 by Steve.Robb

	Improved efficiency of adding/removing elements to UGCObjectReferencer::ReferencedObjects.

Change 3766374 by Josh.Engebretson

	Fix issue with ini quoted value comparison

	#jira UE-52066

Change 3766532 by Josh.Engebretson

	PR #3680: Added NetSerialize to FDateTime fixing UE-22533 (Contributed by druhasu)
	#jira UE-46156

Change 3766740 by Steve.Robb

	TMultiMap::Append added.

Change 3767523 by Steve.Robb

	ThreadSanitizer fix for UE4Delegates_Private::GNextID.

Change 3767601 by Steve.Robb

	ThreadSanitizer fix for FStats::GameThreadStatsFrame.

Change 3770567 by Ben.Marsh

	Add a FAnnotatedArchiveFormatter interface which allows querying structural type information that may not be in binary archives.

Change 3770826 by Ben.Marsh

	Move StructuredArchive implementation into Core, so primitive types can implement serialization overloads for it.

Change 3770875 by Steve.Robb

	Redundant UScriptStruct::PostLoad removed, which was causing a race condition in async loading.  This was re-establishing the CppStructOps, but that is unnecessary because native classes cannot change as a result of a load - only BP structs can, and they don't have CppStructOps.

Change 3772167 by Ben.Marsh

	Add a context-free binary formatter that can serialize tagged data. This functions as a lower-overhead binary intermediate format for JSON data.

Change 3772248 by Steve.Robb

	ThreadSanitizer fixes to FMalloc call counters.

Change 3772383 by Ben.Marsh

	Separate archive metadata from FArchive into FArchiveContext, so it can be safely exposed to consumers of FStructuredArchive.

Change 3772906 by Graeme.Thornton

	TextAssetCommandlet - Utility commandlet for testing/converting to text asset format

Change 3772932 by Ben.Marsh

	Fix "String:" prefix not being stripped from escaped string values.

Change 3772942 by Graeme.Thornton

	Add experimental setting to enable in-editor text asset format functionality
	Add "export to text" option into the content browser asset actions context menu

Change 3772955 by Ben.Marsh

	Add a new "stream" compound type to FStructuredArchive, which allows serializing a sequence of elements similarly to an array, but without serializing an explicit size. Allows passing through data to an underlying binary archive without breaking compatibility.

Change 3772963 by Ben.Marsh

	Allow querying record keys and stream lengths from annotated archive formatters, since these archives have markup for field boundaries.

Change 3773010 by Graeme.Thornton

	Added CORE_API to FArchiveFromStructuredArchive
	Gave text asset format experimental option a slightly less random tooltip comment

Change 3773057 by Ben.Marsh

	Add a flag to FArchive to determine whether the archive is text (IsTextFormat()).

	Add support for seeking within FArchiveFromStructuredArchive. For text formats, data is serialized to an in-memory buffer, with names and objects serialized as indices into an array. For non-text formats, data is serialized directly to the underlying archive.

	Also rename FStructuredArchive::TryEnterSlot() to TryEnterField().

Change 3773118 by Steve.Robb

	TSignedIntType and TUnsignedIntType type traits for getting an integer type of a given size.

Change 3773122 by Steve.Robb

	TAtomic fixes for pointer arithmetic.
	TSignedIntType used instead of reimplementing its own trait.

Change 3773123 by Steve.Robb

	Unit tests for TAtomic.

Change 3773138 by Steve.Robb

	Run numeric tests on integer types instead of basic tests.
	Fix for compiler warnings when subtracting from unsigned atomics.

Change 3773166 by Steve.Robb

	Refactoring of arithmetic operations into its own class, then basing the pointer and integral versions on that.

Change 3774216 by Gil.Gribb

	UE4 - Fix rare crash in the pak precacher immediately after unmounting a pak file.

Change 3774426 by Ben.Marsh

	Copy all C# tools to a staging directory before compiling them. This prevents access violations when compiling tools like iPhonePackager that reference DotNETCommon, and ensures we strip NotForLicensees folders out of them all.

	See: https://answers.unrealengine.com/questions/726010/418-will-not-build-from-source.html

Change 3774658 by Ben.Marsh

	Improve error reporting while generating intellisense for project files. Include the name of the target being compiled, and allow project file generation to continue without it.

Change 3775141 by Ben.Marsh

	Always output HTML5 diagnostics at "information" verbosity, to avoid every line being prefixed with "WARNING:" and screwing up the EC postprocessor.

Change 3775459 by Ben.Marsh

	Removing .NET Framework Perforce DLL as runtime dependency of engine third party library. The actual library is linked statically.

Change 3775522 by Ben.Marsh

	UGS: Treat .uproject and .uplugin files as code changes.

Change 3775597 by Ben.Marsh

	Fix post-build steps for plugins not being executed.

	#jira UE-52754

Change 3777895 by Graeme.Thornton

	StructuredArchiveFromArchive - An adapter class for wrapping an existing FArchive with a structured archive

Change 3777931 by Graeme.Thornton

	Refactored FArchiveUObjects serialization code into some static helpers
	Added FArchiveUObjectFromStructuredArchive which allows the adaption of a structured archive into an FArchive that supports the extra UObect serialization functions for weak/soft pointers

Change 3777942 by Graeme.Thornton

	Added missing CORE_API to FStructuredArchive::FStream
	Added FStructuredArchive::FSlot insertion operator for char
	Added specialization of TArray<uint8> serializer for structured archives which serializes the contents as one value

Change 3778084 by Graeme.Thornton

	Adding FPackageName::GetTextAssetPackageExtension() to access the file extension we use for text asset files

Change 3778096 by Graeme.Thornton

	Add a constructor to FArchiveUObjectFromStructuredArchive that takes a slot and passes it to the base class

Change 3778389 by Josh.Engebretson

	Fix an optimization issue with CPU benchmarking
	Add better support for debugging/testing local rocket builds

	UDN Link: https://udn.unrealengine.com/questions/400909/command-scalability-auto-gives-inaccurate-cpu-benc.html

	#jira UE-52192

Change 3778701 by Josh.Engebretson

	Ensure plugin content folders are mounted consistently.  Fixes TryConvertFilenameToLongPackageName failing to work on plugin assets

	UDN Link: https://udn.unrealengine.com/questions/276386/tryconvertfilenametolongpackagename-fails-for-plug.html

	#jira UE-40317

Change 3778832 by Chad.Garyet

	Adding enterprise path support for PCB's for UGS

Change 3780258 by Graeme.Thornton

	TextAssetCommandlet - Accumulate timings for loading packages and saving packages

Change 3780463 by Graeme.Thornton

	CryptoKeys improvements
	 - Enable CryptoKeys plugin by default
	 - Attempt to inherit settings from the old system by default
	 - Hide ini/index encryption settings from packaging settings and just inherit previous values into new system

	Minor UBT change to remove a trailing comma from the end of encryption/signing key binary strings

Change 3780557 by Ben.Marsh

	Fix LoginFlow module not being precompiled for the binary release.

Change 3780846 by Josh.Engebretson

	Improve filename to long package name resolution when provided a relative path

Change 3780863 by Ben.Marsh

	UAT: Add a better error message when a C# project has an invalid reference.

Change 3780911 by Ben.Marsh

	Update the BuildEditorAndTools.xml script to allow submitting archived binaries to Perforce.

	The "Submit To Perforce For UGS" node creates a zip of all the binaries that have been built, and submits it to the stream specified by the 'ArchiveStream' argument.

Change 3780956 by Josh.Engebretson

	Add support for ! (RemoveKey) config command to UBT

	UDN Link: https://udn.unrealengine.com/questions/397267/index.html

	#jira UE-52033

Change 3782957 by Robert.Manuszewski

	UE4 - Fixed a linear search in EDL that caused performance problems for very large maps.

Change 3784503 by Ben.Marsh

	Optimizations for FStructuredArchive:

	* Store the depth explicitly in element objects, to avoid having to loop through the scope stack to find it.
	* Prevent shrinking of arrays when removing elements.
	* Add an inline allocator to the scope and container stacks.

Change 3784700 by Ben.Marsh

	Remove the inline allocator from FStructuredArchive; checking whether the inline or backup allocator is being used is slower than just allocating up-front.

Change 3784989 by Ben.Marsh

	Compile out all the FStructuredArchive validation code when WITH_TEXT_ARCHIVE_SUPPORT = 0.

Change 3786860 by Gil.Gribb

	UE4 - Remove no buffering flag from windows async IO because it disabled the disk cache entirely.

Change 3787159 by Ben.Marsh

	Guard against UE4.0 backwards compatibility path when determining if an engine is a source distribution.

Change 3787493 by Josh.Engebretson

	Parallel pak generation now uses MaxDegreeOfParallelism option which is now set to the number of CPU cores
	Moved cryptography settings parsing out of threaded CreatePak method to avoid concurrency issue in ConfigCache.TryReadFile
	Fix for multiple threads parsing ini keys (PR 3995)

	#PR 3995
	#jira 52913
	#jira 49503

Change 3787773 by Steve.Robb

	Fix for missing final values from FOREACH_ENUM_ macros.

Change 3788287 by Ben.Marsh

	TBA: Add checks in debug builds that key names in maps and records for FStructuredArchive are unique.

Change 3788678 by Ben.Marsh

	Fix compile error due to inability to instantiate TArray<> of forward declared struct. Convert set of key names to an array to avoid including Set.h in public header for FStructuredArchive.

Change 3789353 by Graeme.Thornton

	Removed unused/rotten modes from TextAsset commandlet.
	Used existing "-iterations=n" switch to control a global iteration over the given command. Useful for performance testing.

Change 3789396 by Ben.Marsh

	Move code to validate container keys/sizes into DO_GUARD_SLOW checks, and allocate container metadata instances dynamically to fix problems with references to things not declared in headers that can't be included from StructuredArchive.h

Change 3789772 by Ben.Marsh

	Always strip trailing slashes from the end of paths specified by .build.cs files; they can cause quoted paths to be escaped on the command line.

Change 3790003 by Ben.Marsh

	TBA: Rename FStructuredArchive::EElementType::Object to FStructuredArchive::EElementType::Record.

Change 3790051 by Steve.Robb

	PIE is disabled during a hot reload.
	Hot reload in editor is disabled during PIE.
	Hot reload from IDE is deferred until after PIE is exited.
	Compiling multiple times before a hot reload (e.g. compiling multiple times in PIE) will now load the most recent change.

	#jira UE-20357
	#jira UE-52137

Change 3790709 by Steve.Robb

	Better move support for TVariant.
	EVariantTypes switched over to using an enum class to aid debugger visualization.

Change 3791422 by Ben.Marsh

	TBA: Return the type of a field from an annotated archive formatter at the point that we enter it, rather than querying all the time.

Change 3791489 by Graeme.Thornton

	TBA: Change StructuredArchiveFromArchive adapter to use the archive.Open() result directly, now that it's a slot and not a record

Change 3792344 by Ben.Marsh

	Improvements to base64 encoding library.

	* Now supports encoding and decoding with ANSICHAR and WIDECHAR implementations.
	* Added support for decoding base-64 blobs without padding marks.
	* Added support for decoding into pre-allocated buffer.
	* Added constexpr functions for determining the encoded and maximum decoded size of an input buffer.
	* Prevent writes past the end of allocated buffer (no longer need to manually remove padding bytes).

Change 3792949 by Ben.Marsh

	TBA: Rename FAnnotatedArchiveFormatter to FAnnotatedStructuredArchiveFormatter.

Change 3794078 by Robert.Manuszewski

	Fixing a crash that could happen when FGCObjects were constructed and destructed when shutting down the engine

	#jira UE-52392

Change 3794413 by Ben.Marsh

	TBA: Remove the element type parameter to SetScope(). It isn't really needed; we can just assume the element ID correctly identifies the item on the stack.

Change 3794731 by Ben.Marsh

	TBA: Optimize creation of stack elements for empty slots in FStructuredArchive. This saves a lot of bookkeeping when serializing a large number of individual fields. Since only one slot can be active at a time (and it only exists temporarily, until we write into it), we can just store the element ID assigned to it in a member variable.

Change 3795081 by Ben.Marsh

	UBT: Move LinuxCommon.cs into Platform/Linux folder.

Change 3795137 by Ben.Marsh

	UBT: Allow modules to specify private compiler definitions from the build.cs file, only visible within that module (via the "PrivateDefinitions" property).

Change 3795247 by Ben.Marsh

	Fix missing header when creating a new interface from the editor new code wizard.

	#jira UE-53174

Change 3796025 by Graeme.Thornton

	Fixed some deprecated "Definitions" warnings in OpenCV build files

Change 3796103 by Graeme.Thornton

	Disable experimental text asset option - it does nothing useful yet.

Change 3796157 by Graeme.Thornton

	Fix path type mismatch in visual studio source code accessor meaning that the DTE comms wouldn't identify a running instance of VS as having the current solution open.

	#jira UE-53206

Change 3796315 by Ben.Marsh

	Move Formatter to the correct position for initializer.

	#jira UE-53208

Change 3797082 by Ben.Marsh

	UAT: Work around for exception thrown by launching cook with "-platform=Android_ETC1 -targetplatform=Android -cookflavor=ETC1". Anrdoid_ETC1 is not a valid platform (it's a cook platform), and can't be parsed by UAT.

	#jira UE-53232

Change 3799050 by Ben.Marsh

	Make UnrealPak.version files writable for Mac and Linux.

Change 3801012 by Graeme.Thornton

	VSCode - Update source accessor to use code workspace as it's target, rather than just the project directory

Change 3801214 by Gil.Gribb

	UE4 - Remove assert to work around minor problem with lock free lists.

	#jira UE-49600

Change 3801219 by Steve.Robb

	WeakObjectPtrs now warn when casting away const.

Change 3801299 by Graeme.Thornton

	Fix quote issue with foreign project build tasks on PC

Change 3803292 by Graeme.Thornton

	Fix crash on startup when using cook-on-the-side. Force a flush of the asset registry background scanning when creating the cook-on-the-side platform registries

Change 3803559 by Steve.Robb

	TSAN fix for FMalloc::MaxSingleAlloc.

Change 3803735 by Graeme.Thornton

	Last set of cryptokeys changes
	 - Added some comments for editor exposed settings
	 - Split "encrypt assets" option into "encrypt uassets" and "encrypt all assets"

Change 3803929 by Ben.Marsh

	UGS: Show an in-place error panel when a project fails to open, allowing the user to retry and have their tabs saved instead of creating a modal dialog.

Change 3624590 by Steve.Robb

	AddReferencedObjects now generates a compile error with containers of UObject*s where the UObjectType is forward-declared, as these which won't be added to the reference collector.
	Tidy-up of existing calls to AddReferencedObjects.

Change 3629473 by Ben.Marsh

	Build: Rename the option for embedding source server information in PDB files for installed engine builds.

Change 3632894 by Steve.Robb

	VARARG* macros deprecated and usage replaced with variadic templates.

Change 3640704 by Steve.Robb

	MakeWeakObjectPtr added, which deduces a TWeakObjectPtr type from a raw pointer type.
	Fix to TWeakObjectPtr's constructor which implicitly removed const.
	Fixes to everything which didn't compile as a result.

Change 3650813 by Graeme.Thornton

	Removed FStartupPackages and associated code

Change 3651000 by Ben.Marsh

	Return the stack size from FPlatformStackWalk::CaptureStackBacktrace() rather than checking for the first null pointer, to prevent truncated callstacks if parts of the stack are zeroed out.

	#jira UE-49980

Change 3690842 by Steve.Robb

	FPlatformAtomics::AtomicRead added - needs optimizing.
	AtomicRead() used in FThreadSafeCounter::GetValue().

Change 3699416 by Steve.Robb

	Fix to debugger visualization of TArray with a TInlineAllocator or TFixedAllocator.
	Improved readability of TSparseArray visualization.

Change 3720812 by Steve.Robb

	Atomic functions for 8-bit and 16-bit.
	Android, Linux and Switch implementations now just use the Clang implementation.
	AtomicRead64 deprecated in favor of the int64* AtomicRead overload.

Change 3722698 by Steve.Robb

	VS debugger visualizers for TAtomic.

Change 3732270 by Steve.Robb

	Relaxed stores and loads.

Change 3749315 by Graeme.Thornton

	If UAT is invoked with platforms in both the -platform and -targetplatform command line switches, build using all of them rather than just the ones in -targetplatform

	#jira UE-52034

Change 3750657 by Josh.Engebretson

	Fixed issue when debugging editor cook/package and project launch operations

	#jira UE-52207

Change 3758514 by Steve.Robb

	Fixes to FString::Printf having non-literals being passed as its formatting string.

Change 3763356 by Steve.Robb

	ENamedThreads::RenderThread and ENamedThreads::RenderThread_Local encapsulated by getters and setters.

Change 3770549 by Steve.Robb

	Removal of obsolete PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS and PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES.
	Tidy up of existing code which uses it.

Change 3770553 by Ben.Marsh

	Adding structured serialization API to Core/CoreUObject for use with text-based assets.

	* FStructuredArchive abstracts an archive which is made up of compound types (records, arrays, and maps). Values are stored in slots within these types.
	* Records are string -> value dictionaries where the key names can be compiled out in non-editor builds or when WITH_TEXT_ARCHIVE_SUPPORT = 0.
	* Maps are string -> value dictionaries where the key names are present regardless of the build type.
	* Proxy objects are defined to express the context for serialization (FStructuredArchive::FRecord, FStructuredArchive::FArray, FStructuredArchive::FMap, FStructuredArchive::FSlot) which allows basic validation through static typing. These objects act as lightweight handles, and can be cheaply constructed and passed around on the stack. Most serialization to and from the archive is done through these objects.
	* Runtime checks perform additional validation to ensure that serialized data is well formed and written in a forward-only manner, regardless of the underlying archive type.
	* The actual input/output format is determined by a separate interface (FArchiveFormatter). Context validation (always causing matching LeaveArray for every EnterArray, etc...) is done by FStructuredArchive, so implementing these classes is fairly trivial. FArchiveFormatter can be de-virtualized in non-editor builds, where WITH_TEXT_ARCHIVE_SUPPORT = 0.
	* Includes implementations of FArchiveFormatter for binary and JSON formats.

Change 3771105 by Steve.Robb

	Deprecation warnings for PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES and PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS.
	Fix for incorrect warning formatting on Clang platforms.

Change 3771520 by Steve.Robb

	Start moving Clang-using platforms' pre-setup stuff into a Clang-specific header.

Change 3771564 by Steve.Robb

	More common macros moved to the Clang pre-setup header.

Change 3771613 by Steve.Robb

	EMIT_CUSTOM_WARNING_AT_LINE moved to ClangPlatformCompilerPreSetup.h.

Change 3772881 by Ben.Marsh

	Add support for serializing FName and UObject through FStructuredArchive.

	In order to allow custom linker behavior when serializing objects:

	* The constructor to JSON input formatter now takes a delegate to convert a string object name into a UObject pointer.
	* The constructor to tagged binary formatter takes a delegate to serialize a UObject pointer into any form it chooses (likely an integer index into the import table)

	Object and name types are stored as strings in JSON, using an "Object:" or "Name:" prefix to differentiate them from regular strings. Any strings that already contain one of these prefixes are prepended with a "String:" prefix (as is any string that already has a "String:" prefix).

Change 3772941 by Graeme.Thornton

	Make build work when including StructuredArchive.h from core container types
	Added standard header to new files
	Add structured archive serializer for TArray
	Fix bug in structured archive where containers weren't being popped from the scope stack

Change 3772972 by Ben.Marsh

	Add an adapter which presents a legacy FArchive interface to a FStructuredArchive slot.

	Data is serialized into this slot as a stream of elements; raw data is buffered up into fixed size chunks, names and objects are serialized separately.

	When used with FBinaryArchiveFormatter, this should result in all data being passed through to the underlying archive in a backwards compatible way, wiith no additional bookkeeping fields.

Change 3773006 by Ben.Marsh

	Rename FStructuredArchive::FRecord::EnterSlot() to EnterField().

Change 3773013 by Steve.Robb

	bUseInlining target rule added to UnrealBuildTool, which defaults to true, to allow inlining to be disabled for debugging purposes.

Change 3774499 by Ben.Marsh

	Minor fixes for FStructuredArchive related classes:

	* Text-based archive formats are now compiled out when WITH_TEXT_ARCHIVE_SUPPORT = 0.
	* Fixed issue with FTaggedBinaryArchiveFormatter state becoming corrupted when looking ahead at field types.
	* FArchiveFieldName constructor is now explicit, to fix cases where strings were being passed directly to serialize functions.

Change 3774600 by Ben.Marsh

	Add CopyFormattedData() function, which can copy data from one formatter to another. Add a test case to SerializationAPI that converts from data -> JSON -> binary -> JSON -> data.

	This function can be used to implement a generic visitor pattern, by implementing a FArchiveFormatter which receives the deserialized data.

Change 3789721 by Ben.Marsh

	TBA: Split FTaggedBinaryArchiveFormatter into separate classes for reading and writing.

Change 3789920 by Ben.Marsh

	TBA: Support automatic coercion between any numeric types in tagged binary archives. Also report the smallest type that can contain a value, rather than just in32/double.

	#jira UECORE-364

Change 3789982 by Ben.Marsh

	TBA: Change FStructuredArchive::Open() to return a slot, rather than a record, to make it easier to implement a raw FArchive adapter.

Change 3792466 by Ben.Marsh

	TBA: Better handling of raw data in text based assets. Short sequences of binary data are Base64 encoded as a single string. Longer sequences are stored as an array of Base64 encoded lines, push a SHA1 hash to detect cases where the data was merged incorrectly.

	In order to allow inference of the correct type for a field, other fields called "Base64" will be escaped to "_Base64", and any field beginning with "_" will have an additional underscore inserted. Reading files back in reverses these transformations.

Change 3792935 by Ben.Marsh

	TBA: Rename FArchiveFormatter to FStructuredArchiveFormatter for consistency with FStructuredArchive.

Change 3795100 by Ben.Marsh

	UBT: Rename the ModuleRules Definitions property to PublicDefinitions, to make its semantics clearer.

Change 3795106 by Ben.Marsh

	Replace all internal usages of ModuleRules.Definitions, and replace it with ModuleRules.PublicDefinitions.

Change 3796275 by Ben.Marsh

	Fix paths to Version.h includes from resource files.

Change 3800683 by Josh.Engebretson

	Remove WER from Mac and Linux crash reports in favor of unified runtime-xml format
	#jira UE-50073

Change 3803545 by Steve.Robb

	TWeakObjPtr const-dropping assignment fix.
	Fixes to change.

[CL 3805231 by Ben Marsh in Main branch]
2017-12-12 18:32:45 -05:00
Chris Babcock
edb4242cb2 Copying //UE4/Dev-Mobile to //UE4/Dev-Main (Source: //UE4/Dev-Mobile @ 3771565)
#lockdown Nick.Penwarden
#rb none

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

Change 3627858 by Sorin.Gradinaru

	#jira UE-48948 Crash when pressing backspace on empty line

	Fixed:
	UE-48948 Backspace on empty line crashes app (virtual keyboard)
	UE-49112 Virtual keyboard text field isn't visible after rotating from landscape to portrait
	UE-49117 Chinese and Korean virtual keyboards don't allow native characters
	UE-49120 Virtual keyboard number pad "kicks" user back to regular keyboard
	UE-49121 Gboard and Swift swipe entry are not supported by Virtual keyboard
	UE-49124 Cursor in virtual keyboard and UMG don't match
	UE-49128 Virtual Keyboard text field doesn't appear if there is too much text
	UE-49141 Virtual keyboard is unresponsive with repeated tapping in control (some devices)
	UE-49139 Tapping in the same text box doesn't make the virtual keyboard disappear

Change 3630732 by Sorin.Gradinaru

	#jira UE-43488 GitHub 3440 : Fixes exposure with planar reflections.

	#3440
	Cancelled the applied exposure scale for non-hdr mobile

Change 3631436 by Nick.Shin

	HTML5

	recommended fix for "RuntimeError: integer result unrepresentable" from the emscripten makers

	#jira UE-49059  HTML5 - Unable to launch project onto HTML 5 from editor

Change 3632689 by Sorin.Gradinaru

	#jira UE - 49301 Text in UMG controls flickers during update from Virtual Keyboard

	Full refresh of the Slate control for Android experimental VK - the control has focus, but the cursor was removed

Change 3632769 by Adrian.Chelu

	#jira UEMOB-403 Improvements to "Device Mobile Preview" feature

Change 3633305 by Allan.Bentham

	Print out the callstack when a fatal error occurs.

Change 3633510 by Chris.Babcock

	Remove unneeded logging
	#jira none

Change 3634827 by Adrian.Chelu

	#fixed build editor buildsystem linux

Change 3640610 by Adrian.Chelu

	#fixed Cook Win64 warnings
	#fixed UE4Editor Static Analysis Win64 warnings

Change 3663057 by Sorin.Gradinaru

	UE-49301 Text in UMG controls flickers during update from Virtual Keyboard
	#jira UE-49301
	#ue4
	#android

	On some Android devices TextWatcher.onTextChanged gets called multiple times when typing/deleting the content of a EditText (internally, the first call resets the entire content, the second fills it with the new value)
	The workaround is to delays sending "empty string" to the Slate, waiting for 100ms to see if there is a second call (the "real" string to update)

	The CL contains a fix for a 5/5 crash : select some/all the text from the native edittext, press delete.

Change 3663630 by Jack.Porter

	Fix shader compile error on Galaxy S6

Change 3663972 by Allan.Bentham

	add ES3.1 framebuffer fetch.
	#jira UE-46251

Change 3671843 by Nick.Shin

	HTML5 - silence CIS warnings (changed to INFO message type)

	#jira UE-50415  ( Pri:1 - 4.18 )  //UE4/Release-4.18: Step "Package ShooterClient HTML5" has completed with 1 Warning: "File packager is creating an asset bundle of 815 MB. This is very large"

Change 3677675 by Sorin.Gradinaru

	Android Experimental Virtual Keyboard 4.18 issues
	#jira UE-49124 Cursor in virtual keyboard and UMG don't match
	#jira UE-49139 Tapping in the same text box doesn't make the virtual keyboard disappear
	#jira UE-49141 Virtual keyboard is unresponsive with repeated tapping in control (some devices)
	#ue4
	#android

	UE-49124 Cursor in virtual keyboard and UMG don't match - change in SlateTextLayout.cpp  - OnPaint() don't display the cursor

	Changed the show/hide vk routines (Game activity.java) to solve low-repro, Android O issues related to multiple click events.
	Should also be tested with multiple text boxes (fast click in/out different types of TextBox controls)

Change 3681555 by Adrian.Chelu

	UEMOB-403 Improvements to "Device Mobile Preview" feature

Change 3692020 by Sorin.Gradinaru

	#jira UE-50645 Carriage returns can be pasted into single line UMG fields on Android
	#ue4
	#4.19
	#android

Change 3692741 by Sorin.Gradinaru

	Andoid 3D WebBrowser
	#jira UE-32740 Web Browser on a Widget Component appears to be 2D when launching on to Android
	#ue4
	#android

Change 3695475 by Chris.Babcock

	Per project Android NDK/SDK API settings
	#jira UEMOB-394
	#ue4
	#android

Change 3701364 by Dmitriy.Dyomin

	Fixed: WEX - Android - Log spammed with "LogRHI: Error: Unsupported EPixelFormat 28"
	#jira UE-50714

Change 3701664 by Jack.Porter

	Fix typo

Change 3702355 by Cosmin.Sulea

	UEMOB-393 - Support "ETC 1.5" packaging
	#jira UEMOB-393

Change 3704950 by Chris.Babcock

	Add verification of support for cooked texture format(s) on device at runtime (optional with Validate texture formats checkbox in Android project settings) and skipped for cook on the fly
	#jira UE-50837
	#ue4
	#android

Change 3709817 by Nick.Shin

	HTML5 - silence CIS warnings (changed to INFO message type)

	finally have a repo case to test this proper fix

	#jira UE-50415  ( Pri:1 - 4.18 )  "Package ShooterClient HTML5" has completed with 1 Warning: "File packager is creating an asset bundle of 815 MB. This is very large"

Change 3717598 by Chris.Babcock

	Fix Android icon paths
	#jira UE-51585
	#ue4
	#android

Change 3718456 by Adrian.Chelu

	#fixed spelling in category localized name

Change 3719643 by Nick.Shin

	nuke PLATFORM_HTML5_WIN32

	more "old" code to remove

	#jira UEMOB-433  Remove Win32 SDL "HTML5 Simulator" code

Change 3720342 by Nick.Shin

	HTML5 redirect logs to console window

	#jira UE-50747  HTML5 log is not easily accessible to users

Change 3720652 by Sorin.Gradinaru

	UE-50382 Xcode Address Sanitizer feature does not work on iOS
	#jira 50382
	#iOS
	#ue4

	Address sanitizer dylib loader depends on the default SDKROOT parameter (<scheme> => Build Settings => Base SDK => <Build Configuration>)
	For macosx or missing (also translated as macosx), the path is incorrect for iphone/appletv.

Change 3720654 by Sorin.Gradinaru

	UE-48499 Android Voice Module has a few issues
	#jira 48499
	#Android
	#ue4

	1.Circular Buffer:  Does the engine already have an implementation? Do we want this into core libraries?
	R: There is an generic template class TCircularBuffer, but it lacks functionality like write/read checks, reading/writing data chunks.
	Plus the code from VoiceModuleAndroid is optimized for circular byte array. I suggest to keep it.

	2. Possible memory leaks: void free_circular_buffer (circular_buffer *p) is implemented, but not used. Presumably a memory leak on the variable inrb. Does CreateAudioRecorder need to be paired with any kind of destroy on shutdown?
	R: Fixed. Using an array ActiveVoiceCaptures to store VoiceCapture references (same as on Windows)

	3. Init() There are 4 calls to setup/init things that store the result in "result" but only the last call is checked against success. Should more checks against the values be made at each stage with informative log messaging in the event of failure?
	R: Fixed.

	4. GetVoiceData()
	// Workaround for dealing with noise after stand-by
	while(bytes<InVoiceBufferSize)
	{
		OutVoiceBuffer[bytes++]=0;
	}
	Isn't this just a memzero?
	R: Fixed.

	5. Missing features. Need to implement GetBufferSize and DumpState
	R: Added GetBufferSize. Can be used like in TestVoice.cpp
	DumpState is never used (same on Mac, iOS), plus the OpenSL objects do not expose internal properties.

Change 3722554 by Cosmin.Sulea

	UE-44224 - iOS - Remote Build - rsync error: files not transferred
	#jira UE-44224

Change 3723265 by Allan.Bentham

	Assign a texture format priority for ETC1a.
	prevents launch on from using ETC1a all the time..

Change 3729764 by Dmitriy.Dyomin

	Removed deprecated LightmapUVBias, ShadowmapUVBias from instanced static mesh component per-instance data (80 -> 64 bytes)

Change 3729899 by Dmitriy.Dyomin

	Fixed tiled landcape re-import

Change 3730895 by Bogdan.Vasilache

	UEMOB-442 --> [ Support texture streaming on Android ES 3.1 ]
	#jira UEMOB-442

Change 3733463 by Chris.Babcock

	Return error for external texture if not used in pixel shader
	#jira UE-51763
	#ue4

Change 3736226 by Chris.Babcock

	Change ExposureScale to PreExposure
	#jira UE-52007
	#jira UE-51691
	#ue4
	#android

Change 3740509 by Allan.Bentham

	Add LQ (direct lighting from stationary spot/point lights) to volumetric lightmaps.
	#jira UE-50551

Change 3740586 by Cosmin.Sulea

	UE-51747 - GitHub 4174 : [BUG-FIX] Invalid ASTC texture versioning is corrected.
	#jira UE-51747

Change 3741110 by Chris.Babcock

	Fix functional code in checks removed for shipping
	#ue4

Change 3741117 by Chris.Babcock

	Fix checkin error for check -> ensure fix
	#ue4

Change 3741156 by Chris.Babcock

	Swap order of SDK and NDK overrides in menu to match Android SDK settings
	#jira UE-52019
	#ue4
	#android

Change 3741271 by Chris.Babcock

	Use final NDK and SDK levels only in UEBuildSettings.txt and rename the overrides to be clearer
	#jira UE-52058
	#ue4
	#android

Change 3741464 by Chris.Babcock

	Add NDK and SDK platform validation (installed) for Android
	#jira UE-52069
	#ue4
	#android

Change 3744602 by Josh.Adams

	From Meerkat: - Added optional 0 or 1 param to showlayer that will set the visibility instead of toggling it for entire layer

Change 3744603 by Josh.Adams

	From Meerkat: - Fixed a comment about debug view modes on consoles

Change 3744607 by Josh.Adams

	From Meerkat: - Added HWInstances to the PrimitiveStats view in Statistics window

Change 3754890 by Chris.Babcock

	Updated IntelISPCTexComp DLLs to fix crashes with some processors on Windows
	#jira UE-52281
	#ue4

Change 3755147 by Jack.Porter

	Fixed Google Cardboard rendering upside down on iPhone 6S+
	#jira  UE-38555

Change 3755458 by Cosmin.Sulea

	UE-47801 - RSync Error when Generating SSH Key for Remote Mac Building when Mac username contains a space
	#jira UE-47801

Change 3755492 by Jack.Porter

	Fix merge error

Change 3759140 by Bogdan.Vasilache

	UE-52396 --> Assertion in FOpenGLDynamicRHI::CreateOpenGLTexture when launching on Mali Galaxy S III
	#jira UE-52396

Change 3760536 by Sorin.Gradinaru

	UE-51262 values for pinch input produce very different results for same area on android device
	#jira 51262
	#iOS
	#Android
	#ue4

	1. When the pinch goes beyond the viewport boundaries (when zooming out),  the touch that goes off-screen is "released" and the zooming effect is over.
	Solved by remembering last pinch event values

	2. "Hack" the initial distance for the pinch/ rotate, by touching the screen and moving the finger to another position before using the second finger.
	Solved by using the correct values  when the pinch event starts

Change 3761279 by Chris.Babcock

	Flag vertex and fragment shaders belonging to materials with external textures
	#jira UE-52398
	#ue4
	#android

Change 3761494 by Chris.Babcock

	Fix access to FrameUpdateInfo in MediaPlayer14.java and CameraPlayer14.java with Proguard
	#jira UE-52471
	#ue4
	#android

Change 3763146 by Jack.Porter

	Default assets for web browser widget
	#jira UE-51374

Change 3764242 by Chris.Babcock

	Disable Niagara vertex factories for mobile and Switch
	#jira UE-52425
	#ue4
	#mobile
	#switch

Change 3766027 by Allan.Bentham

	Fix crash when no LQ volumetric lightmap data exists
	#jira UE-52508

Change 3766075 by Josh.Adams

	- Updating UDKRemote. Still needs art updated, and some some unneeded assets removed

Change 3766141 by Allan.Bentham

	Show unbuilt lightmap warning when LQ data is missing from volumetric lightmap in mobile shading mode.

Change 3766163 by Josh.Adams

	- Updated icons and added a generator script when we get a new one

Change 3766560 by Allan.Bentham

	Workaround for broken offsets with automation screenshots.

	#jira UE-52491

Change 3767193 by Peter.Sauerbrei

	remove Oculus shader from being cached
	force a metal shader re-compile

	#jira UE-52587

Change 3767604 by Peter.Sauerbrei

	fix the Oculusshader the right way

	#jira UE-52587

Change 3768543 by Sorin.Gradinaru

	Android WebBrowser 3D - webbrowser plugin contins the assets, 2D behaviour restored

	#Android
	#UE4
	#4.19
	#jira UE-51374 Web Browser widget is not working on Android
	#jira UE-52399 Android web browser does not accept input


Change 3663915 by Jack.Porter

	Prevent FTcpListener from busy polling while waiting for connections
	#jira UE-50125

Change 3709224 by Allan.Bentham

	Add android target device to gauntlet.
	Automation screenshot uses high res screenshot api for mobile.

	#jira UEMOB-360

Change 3741453 by Chris.Babcock

	Match the 4.18.1 fixes for shipping checks removing code (from CL3741091)
	#ue4

Change 3769301 by Peter.Sauerbrei

	fix for missing ue4_stdmetal.lib, courtesty of MarkS
	#jira UE-52587

Change 3770597 by Sorin.Gradinaru

	Android WebBrowser - remove the WebBrowser plugin reference from the Engine
	Load the default material directly from the resources.

	#Android
	#UE4
	#jira UE-51374 Web Browser widget is not working on Android
	#jira UE-52399 Android web browser does not accept input

[CL 3771573 by Chris Babcock in Main branch]
2017-11-22 16:42:04 -05:00
Marc Audy
78ce1089a6 Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3716594)
#lockdown Nick.Penwarden

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

Change 3623720 by Phillip.Kavan

	#jira UE-49239 - Temp fix for QAGame animations not updating in a nativized build.

	Change summary:
	- Temporarily excluded all AnimBP assets from nativization as a workaround.

Change 3626305 by Phillip.Kavan

	#jira UE-49269 - Workaround fix for crash after packaging a nativized QAGame build with all AnimBP assets disabled for nativization by default.

Change 3629145 by Marc.Audy

	Don't hide developer nativization tool behind ini

Change 3630849 by Marc.Audy

	Fix nativization uncompilable code when using a non-referenceable term in a switch statement.
	#jira UE-44085

Change 3631037 by Marc.Audy

	(4.17.2) Fix crash when nativizing blueprint with MakeMap or MakeSet node in it
	#jira UE-49440

Change 3631206 by Marc.Audy

	Make NAME_None == TEXT("") behave the same as NAME_None == FName(TEXT(""))

Change 3631232 by Marc.Audy

	Remove outdated diagnostic code throwing false positives
	#jira UE-47986

Change 3631573 by Marc.Audy

	Fix containers of vector, rotator, or transform placing a space between the type and the pluralization 's'

Change 3633168 by Lukasz.Furman

	fixed behavior tree changing its state during latent abort,
	modified order of operations during abort to: abort & wait -> change aux nodes -> execute

Change 3633609 by Marc.Audy

	Don't get unneeded string

Change 3633691 by Marc.Audy

	Fix copy-pasting of a collapsed graph containing a map input losing the value type
	#jira UE-49517

Change 3633967 by Ben.Zeigler

	Actor.h header cleanup, fix various comments and reorganize some members,  saves 80 bytes per actor in a cooked Win64 build
	bRunningUserConstructionScript is now private, exposed with IsRunningUserConstructionScript
	Fixed a few other fields to be private that were accidentally made public in 4.17

Change 3633984 by Michael.Noland

	Blueprints: Fixed a potential crash when collapsing nodes to a function when a potential entry pin had no links

Change 3634464 by Ben.Zeigler

	Header cleanups for Pawn, Controller, Character, and PlayerController

Change 3636858 by Marc.Audy

	In preview worlds don't display the light error sprite
	#jira UE-49555

Change 3636903 by Marc.Audy

	Fix numerous issues with copy/pasting editable pin bases
	#jira UE-49532

Change 3638898 by Marc.Audy

	Allow right-click creation of local variables in blueprint function libraries
	#jira UE-49590

Change 3639086 by Marc.Audy

	PR #4006: Mark UEdGraphSchema::BreakSinglePinLink as const (Contributed by leyyin)
	#jira UE-49591

Change 3639445 by Marc.Audy

	Fix mistaken override and virtual markup on niagara schema function.

Change 3641202 by Marc.Audy

	(4.17.2) Fix crash undoing pin changes with split pins
	#jira UE-49634

Change 3643825 by Marc.Audy

	(4.17.2) Fix crash right clicking a struct pin when the struct it represented has been deleted
	#jira UE-49756

Change 3645110 by mason.seay

	Fixed up QA-ClickHUD map so it's usable and makes more sense

Change 3646428 by Dan.Oconnor

	Fix for UbergraphFrame layout changing during bytecode recompile, which would cause actual ubergraph frame layout to mismatch reflection data
	#jira None

Change 3647298 by Marc.Audy

	PR #4016: Rename argument name for SetInputMode (Contributed by projectgheist)
	#jira UE-49748

Change 3647815 by Marc.Audy

	Minor performance improvements

Change 3648931 by Lina.Halper

	#Compiler : fixed so that each type of BP can provide module info, and compiler info
	- Moved out AnimBlueprint Compiler
	- Refactored WidgetBlueprint

	- DUPE - Merging using ControlRig_Dev-Framework

Change 3654310 by Marc.Audy

	Shrink USkinnedMeshComponent 64 bytes
	Shrink USkeletalMeshComponent 224 bytes (160 bytes internal)

Change 3654636 by Lina.Halper

	Fix crashing on shutdown

	#jira: UE-50004

Change 3654960 by Lina.Halper

	- Fix with automation test of creation/duplication
	- Fixed shut down crash with editor again due to uobject GCed

	#jira: UE-50028

Change 3655023 by Ben.Zeigler

	#jira UE-50101 Fix level streaming transform when PIE-duplicating a level that has been preloaded but not made visible in the editor. Instead of always saying actors have been moved we copy the source level's flag

Change 3655426 by Ben.Zeigler

	#jira UE-50019 Fix issue where StreamableManager could return objects that are partially loaded if called from PostLoad. StreamableManager never wants half-loaded objects, so change it to explicitly skip them

Change 3657627 by Ben.Zeigler

	#jira UE-50157 Fix EDL load dependency issue where the simple construction script/ICH are not guaranteed to be serialized in time for subobject construction

Change 3662086 by Mieszko.Zielinski

	Fixed navmesh not loading properly in PIE when owning world has been duplicated-for-play #UE4

	This can happen when navigation containing level is loaded via AsyncLoadPrimaryAssetList

	#jira UE-50101

Change 3662294 by Ben.Zeigler

	Fix enum redirects to handle non-class enums properly where a value redirect is not specified. It needs to convert from EOldEnum::Value to ENewEnum::Value before doing the name check

Change 3662825 by Mieszko.Zielinski

	Fixed VisLog debug drawing crashing when using UI to change log lines to be displayed #UE4

	there was a loop iterating over elements of a map and was modifying the map as it went, which is a big no-no

Change 3664424 by Marc.Audy

	UE-50076 test assets #rb none #rnx

Change 3664441 by Mieszko.Zielinski

	PR #3993: UE-25907: Added logging to Log Text, Log Location, and Log Box Shape (Contributed by projectgheist)

	Piggybacking on this PR I've redone how visual log is using categories. Now it's using FName rather than FLogCategoryBase to indicated log category. All UE_VLOG macros have been updated.


Change 3664506 by Phillip.Kavan

	#jira UE-47852 - Fix various issues with both UAT/UBT-driven and manually-configured code/data build workflows involving nativized Blueprint assets.

	Change summary:
	- UAT: Removed '-nativizedAssets' command-line option. It's no longer required to specify this flag when cooking/building in order to enable nativization.
	- UAT: Removed AutomationTool.ProjectParams.BlueprintPluginPaths.
	- UAT: Modified AutomationTool.ProjectParams.ProjectParams() to initialize the 'RunAssetNativization' field based on the current 'BlueprintNativizationMethod' config setting. This flag is now used just to direct UAT to defer invoking UBT for '-build' until after the '-cook' stage has finished.
	- UAT: Modified BuildCookRun.DoBuildCookRun() to remove the 'bWarnIfPackagedWithoutNativizationFlag' case (since we removed the '-nativizedAssets' command-line option).
	- UAT: Removed Project.AddBlueprintPluginPathArgument() and Project.GetBlueprintPluginPathArgument(). These utility functions are no longer needed.
	- UAT: Modified Project.Cook() to remove the registration of each NativizedAssets plugin path for '-build' along with the addition of the '-nativizedAssets' argument with the platform-agnostic path to the NativizedAssets plugin when invoking UE4Editor.exe for '-cook'. This is now handled by the UE4Editor cook commandlet instead.
	- UAT: Modified Project.Build() to remove the addition of the '-plugin' argument with the path to the NativizedAssets plugin when invoking UBT for '-build'. This is now handled by UBT instead.
	- UBT: Modified UnrealBuildTool.ProjectFileGenerator.DiscoverExtraPlugins() to remove the previously-added search for intermediate plugin assets based on the 'AdditionalPluginDirectories' optionally found in the .uproject file. Instead, this search is now handled via a Plugins.EnumeratePlugins() LINQ query. It is also gated by a new Advanced project setting in DefaultGame.ini that defaults to off, but this way users can still add generated assets into the solution file.
	- UBT: Added UnrealBuildTool.UEBuildTarget.ShouldIncludeNativizedAssets() as a utility method for checking the current 'BlueprintNativizationMethod' setting in the game's config file.
	- UBT: Modified UnrealBuildTool.UEBuildTarget.CreateTarget() to confirm the existence of a NativizedAssets plugin (generated at cook time) when the project is configured for nativization. If the plugin is found, it is added to the RulesAssembly chain and the ProjectDescriptor.ForeignPlugins list. If the plugin is not found, then a BuildException is thrown informing the user that the plugin must exist in order to build (with a note to make sure to cook the target platform first).
	- UE4: Added 'Lex' namespace utility functions for converting PlatformInfo::EPlatformType to/from an FString. Note: Lex::FromString() is simply a proxy to the already-existing PlatformInfo::EPlaformTypeFromString() API, but it was included for completeness.
	- UE4: Removed the UProjectPackagingSettings::bWarnIfPackagedWithoutNativizationFlag. This is no longer needed since the '-nativizedAssets' command-line option has been removed.
	- UE4: Added UProjectPackagingSettings::bIncludeNativizedAssetsInProjectGeneration (advanced setting). This defaults to 'false' (off). When true, running GenerateProjects.bat will also generate project files for any NativizedAssets plugins previously generated at cook time. This gives advanced users/engineers an option to include nativized Blueprint class sources in the set of generated C++ code projects for faster browsing, etc.
	- UE4: Modified UProjectPackagingSettings::PostEditChangeProperty() to remove the case that handles the 'BlueprintNativizationMethod' property. When this value changes, we no longer make an attempt to modify the .uproject file.
	- UE4: Removed BlueprintNativeCodeGenManifestImpl::PlatformPlaceholderPattern. This pattern string is no longer in use. Also modified the FBlueprintNativeCodeGenPaths ctor to remove the replacement logic for the pattern string.
	- UE4: Modified FBlueprintNativeCodeGenPaths::GetDefaultCodeGenPaths() to construct and return a new directory pattern for the generated NativizedAssets plugin. This is now generated to: Intermediate/Plugins/NativizedAssets/<Platform>/<Type:Game|Client|Server>.
	- UE4: Modified FBlueprintNativeCodeGenPaths::PluginRootDir() to no longer append "NativizedAssets" to the end of the path to the generated NativizedAssets plugin.
	- UE4: Removed FCookByTheBookStartupOptions::bNativizeAssets and NativizedPluginPath (no longer in use since the '-nativizeAssets' command-line option has been removed).
	- UE4: Modified UCookCommandlet::CookByTheBook() to remove initialization of the 'bNativizeAssets' field in the startup options (since the corresponding command-line argument has been removed).
	- UE4: Removed FNativeCodeGenData::DestPluginPath and modified FBlueprintNativeCodeGenModule::Initialize() to remove the check for it.
	- UE4: Added FBlueprintNativeCodeGenModule::ShutdownModule(). This now handles cleanup for the nativization module after the cook process has finished.
	- UE4: Modified UCookCommandlet::CookByTheBook() to no longer look for the '-nativizedAssets' command-line option as well as to remove the initialization of the nativization-related startup option flags that were removed.
	- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to check the 'BlueprintNativizationMethod' config setting in order to determine whether or not to nativize assets. This replaces the '-nativizedAssets' command-line flag.
	- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to remove the case that previously handled the 'bWarnIfPackagedWithoutNativizationFlag' check. This is no longer needed since the '-nativizedAssets' flag was removed.
	- UE4: Modified UCookOnTheFlyServer::CookByTheBookFinished() to unload the IBlueprintNativeCodeGenModule instance after cooking, in order to reset module state for another potential pass within the same process context.
	- UE4: Modified UWidgetBlueprintGeneratedClass::InitializeTemplate() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we shift the OldArchetype object into the transient package, it doesn't invalidate the outer package's linker. We need that to remain valid so that multiple nativized cooks within the same process don't fail.
	- UE4: Modified FMainFrameActionCallbacks::PackageProject() to remove the addition of '-nativizedAssets' to the UAT command line based on project settings (this is no longer needed, as it is now handled internally by UAT).
	- UE4: Modified SaveWorld() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we rename the world instead of duplicating it, it no longer triggers a reset of *all* object loaders.

	Notes:
	- After this change, all nativization workflows (e.g. UAT, UBT and UE4Editor) now look to the 'BlueprintNativizationMethod' flag in the Project settings (UProjectPackagingSettings). This unifies everything on a single flag by default, and removes the feature added in 4.17 that touched the .uproject file when that setting changed (which itself introduced a couple of new regressions in that release).
	- Advanced users and build engineers can override this value per task. Instructions to do that are as follows:
	    - For UAT/UBT/UE4Editor.exe tasks, adding '-ini:Game:[/Script/UnrealEd.ProjectPackagingSettings]:BlueprintNativizationMethod=<Disabled|Inclusive|Exclusive>' will allow the current setting to be overridden on the command line.
	    - When '-cook' is included on the RunUAT BuildCookRun command line, the above needs to also be embedded within the '-AdditionalCookerOptions' command-line argument. This means that if both '-cook' and '-build' are included, then both the '-ini' argument shown above as well as the same '-ini' argument embedded inside the '-AdditionalCookerOptions' argument will need to be included for the build pipeline to work properly.
	- We should add a release note instructing users to check their .uproject file and remove any 'AdditionalPluginDirectories' entries that list the "Intermediate/Plugins" path. This will avoid issues when building the cooked target with UBT.
	- We should also add a release note and/or documentation to explain the "advanced" build pipeline options (i.e. the '-ini' argument noted above).

Change 3665061 by Phillip.Kavan

	Fix crash on load in a nativized build caused by a reference to a BP class containing a nativized enum.

	Mirrored from //UE4/Release-4.18 (CL# 3664993).

	#3969
	#jira UE-49233

Change 3665108 by Marc.Audy

	(4.18) Fix  crash when diffing a blueprint whose older version's parent blueprint has been deleted
	+ additional code cleanup
	#jira UE-50076

Change 3665114 by Marc.Audy

	Minor change that could potentially improve performance in some cases

Change 3665410 by Mieszko.Zielinski

	Fixed naming of Vislog's BP API #UE4

Change 3665634 by Ben.Zeigler

	#jira UE-50045 Mark PIE-duplicated packages as explicitly fully loaded to fix PIE networking crash. These used to be accidentally treated as fully loaded because it was checking the wrong package name on disk

Change 3666970 by Phillip.Kavan

	Do not emit a BOM when generating nativized Blueprint asset source files encoded as UTF-8.

	#jira UE-46814

Change 3667058 by Phillip.Kavan

	Ensure that '-build' is always passed to BuildCookRun automation for projects configured with Blueprint nativization enabled so that it doesn't skip that stage.

	Mirrored from //UE4/Release-4.18 (CL# 3667043).

	#jira UE-50403

Change 3667150 by Mieszko.Zielinski

	PR #4042: BT CompositeDecorator node clears RF_Transient flag for all owned Decorator nodes. (Contributed by BibbitM)

	Minor tweak from the original PR - made UBehaviorTreeDecoratorGraphNode_Decorator::ResetNodeOwner protected and added UBehaviorTreeGraphNode_CompositeDecorator class a a friend.


	#jira UE-50249

Change 3667152 by Mieszko.Zielinski

	PR #4047: Clearing RF_Transient flag when reseting EQS node owner - single change. (Contributed by BibbitM)


	#jira UE-50298

Change 3667166 by Mieszko.Zielinski

	Fixed FRichCurve baking so that it doesn't loose its curvature #UE4

	Also, added some baking sanity checking (like if the range is larger than a single point).

Change 3668025 by Dan.Oconnor

	Added a step to the compilation manager to skip recompilation of classes that are dependent on a given classes function signatures when those signatures have not changed

	#jira UE-50453

Change 3672063 by Ben.Zeigler

	#jira UE-49049 Fix issue with StreamableHandle ParentHandles array being modified during iteration, I had already fixed the Cancel case but not the complete case

Change 3672306 by Ben.Zeigler

	#jira UE-50571 Fix issue where PrimaryAsset blueprints would be incorrectly added to the dictionary if their base class had an active class redirect referencing it

Change 3672683 by Marc.Audy

	Code cleanup

Change 3672749 by Ben.Zeigler

	Fix issue where deleting a source package would not cause the generated cooked package to get deleted while doing an incremental build

Change 3672831 by Ben.Zeigler

	#jira UE-50507 Add a cook/save warning when a registered PrimaryAssetId does not match the object's real exported PrimaryAssetId.
	Make PrimaryDataAsset blueprintable so you can make primary assets in a blueprint-only project

Change 3673551 by Ben.Zeigler

	#jira UE-50029 Fix it so data-only blueprints will never create a UCS function in the final class. If you manually compiled the blueprint or it got recompiled due to inheritance it would create a UCS function that just calls its parent, which could cause problems later on when it did not create a UCS function during normal load

Change 3675074 by mason.seay

	Test map for VisLog Testing

Change 3675084 by Mieszko.Zielinski

	Fixed BT editor constantly marking BT asset as dirty if it has a "RunBehavior" node #UE4

	#jira UE-43430

Change 3676490 by Ben.Zeigler

	#jira UE-50635 Fix it so directly blueprinting PrimaryDataAsset will give you a useful PrimaryAssetType. Unless overridden the Type of a PrimaryDataAsset will be the first native class found in the hierarchy, or the the blueprint class that directly blueprints PrimaryDataAsset

Change 3676579 by Lukasz.Furman

	fixed crash in behavior tree's search rollback

Change 3676586 by Lukasz.Furman

	added local scope mode to behavior tree's composite nodes

Change 3676587 by Ben.Zeigler

	Swap PrimaryAssetId property customization to use the same ui as the Pin customization. This one better handles objects that aren't loaded into memory, the old Property one would show None in that case
	Add browse, use selected, and clear buttons, and make ID selector font the normal property font

Change 3676715 by Lukasz.Furman

	changed order of behavior tree's aux node ticking

Change 3676867 by Ben.Zeigler

	#jira UE-50665 Fix issue where resolving Soft Object Ptrs that are stored inside static assets or Blueprint CDOs from PIE will return the editor actor, not the PIE actor. So when resolving a path/ptr during PIE add a failsafe to do a PIE fixup
	Fix issue where Lazy pointer fixup could corrupt Soft Object Ptrs by applying the PIE fixup too early

Change 3677892 by Ben.Zeigler

	Fix crash when additional level viewport sprites are added after level editor module is loaded. This is basically the same fix as CL #3491406, but for sprites

Change 3678247 by Marc.Audy

	Fix static analysis warning

Change 3678357 by Ben.Zeigler

	#jira UE-50696 Add some container variables to diff test to track down crashes

Change 3678385 by Ben.Zeigler

	#jira UE-50696 Fix crash diffing blueprints where array properties were changed. It needs to not run the generic identical check until it's sure the container types match

Change 3678600 by Ben.Zeigler

	#jira UE-50703 Fix crash when a soft actor reference is not actually pointing to an actor, treat it like a broken reference

Change 3679075 by Dan.Oconnor

	Mirror 3679030 from Release-4.18
	Fix crash when compiling a level blueprint that has delegates to a blueprint that it also has a direct dependency on
	#jira UE-48692

Change 3679087 by Dan.Oconnor

	Filter out unnecessary relink jobs from the compilation manager

	#jira None

Change 3680221 by Ben.Zeigler

	#jira UE-50764 Fix crash when converting a property from a soft object reference to hard, it needs to validate the class after the conversion and null if necessary

Change 3680561 by Lukasz.Furman

	fixed unsafe StopTree calls in behavior tree
	#jira nope

Change 3680788 by Ben.Zeigler

	Fix issue where scrubbing sequencer in simulate would not modify actors. We need to temporarily set the PIE context global when doing this specific type of actor bind

Change 3683001 by mason.seay

	Submitting various test maps and assets

Change 3686837 by Mieszko.Zielinski

	Fixed NavMeshBoundsVolume not updating navmesh when its location gets changed via the Transform Details widget #Orion

	#jira UE-50857

Change 3688451 by Marc.Audy

	Fix up new material expression to work with String -> Name refactor

Change 3689097 by Mason.Seay

	Test content for nativization and enum testing

Change 3689106 by Mieszko.Zielinski

	Made NavMeshBoundsVolume react to undo in the editor #Orion

	#jira UE-51013

Change 3689347 by Mieszko.Zielinski

	Fixed a crash on FAIDynamicParam creation resulting from uninitialized member variables #UE4

	Manual merge of CL#3689316 over from 4.18

	#jira UE-51019

Change 3692524 by mason.seay

	Moved some assets to folder for org, fixed up redirectors

Change 3692540 by mason.seay

	Renaming test maps so they are clearly indicated for testing nativization

Change 3692577 by mason.seay

	Deleted a bunch of old assets I created specifically for various bugs reported.  All issues are closed so they're no longer needed

Change 3692724 by mason.seay

	Deleting handful of assets found in developer folders of those no longer with the team.  Moved assets that are still used by test maps

Change 3693184 by mason.seay

	Assets for testing nativization with structs

Change 3693367 by mason.seay

	Improvements to test content

Change 3695395 by Dan.Oconnor

	Fix for rare linker issue, IsBlueprintFinalizationPending would return true when we were trying to force load subobjects that were now ready to be loaded. This would prevent some placeholder objects from being replaced

	#jira None

Change 3695484 by Marc.Audy

	Fix sound cue connection drawing policy not getting returned.
	#jira UE-51032

Change 3695494 by mason.seay

	More test content for nativization testing

Change 3697829 by Mieszko.Zielinski

	PR #4104: Fixed a typo CaclulateMaxTilesCount to CalculateMaxTilesCount (Contributed by YuchenMei)


Change 3700541 by mason.seay

	Test map for containers with function bug

Change 3703459 by Marc.Audy

	Remove poorly named InverseLerp
	Fix degenerate behavior returning bad value
	#jira UE-50295

Change 3703803 by Marc.Audy

	Clean up autos
	Minor improvement to ShouldGenerateCluster

Change 3704496 by Mason.Seay

	More test content for testing nativization

Change 3706314 by Marc.Audy

	PR #4085: GetDefaultPawnClassForController -> BlueprintCallable (Contributed by Allar)
	#jira UE-50874

Change 3707502 by Mason.Seay

	Final changes to nativization test content (hopefully)

Change 3709478 by Marc.Audy

	PR #4144: Exposed MassageAxisInput for inheritence (Contributed by jackknobel)
	Same as CL# 3689702 implemented in Fortnite
	#jira UE-51453

Change 3709967 by Marc.Audy

	PR #4139: fixed a typo in a comment (Contributed by derekvanvliet)
	#jira UE-51372

Change 3709970 by Marc.Audy

	PR #4150: Fixed a typo in movement override comment (Contributed by ruffenman)
	#jira UE-51495

Change 3709971 by Marc.Audy

	PR #4149: Fixing typo on movement pawn component (Contributed by celsodantas)
	#jira UE-51492

Change 3710041 by Marc.Audy

	Minor code cleanup

Change 3711223 by Phillip.Kavan

	Move some Blueprint nativization log spam into the verbose category.

	#jira UE-49770

Change 3713398 by Marc.Audy

	PR #4157: Renamed AActor::InternalTakePointDamage function's parameter. (Contributed by BibbitM)
	#jira UE-51517

Change 3713601 by Marc.Audy

	Fix merge error

Change 3713994 by Marc.Audy

	(4.18) Just mark level script actor pending kill when the level script blueprint has been recompiled, instead of trying to send it through the destroy actor lifecycle event.
	#jira UE-50738

Change 3714270 by Marc.Audy

	Fix crashes with tickables as a result of virtuals not being usable in constructors/destructors
	#jira UE-51534

Change 3714406 by Marc.Audy

	Fix dumb inverted boolean check

Change 3716594 by Dan.Oconnor

	Integrate 3681301 from 4.18
	Only run OnLevelScriptBlueprintChanged when explicitly compiling a level blueprint, this matches the old behavior
	#jira UE-50780, UE-51568

Change 3686450 by Marc.Audy

	PinCategory, PinSubcategory, and PinName are now stored as FName instead of FString.
	CreatePin has several simplified overrides so you can only specify Subcategory or SubcategoryObject or neither.
	CreatePin also takes a parameter bundle for reference, const, container type, index, and value terminal type rather than a long list of default parameters.
	Material Expressions now store input and output names as FName instead of FString
	FNiagaraParameterHandle now stores the parameter handle, namespace, and name as FName instead of FString
	Most existing pin related functions using string have been deprecated.

Change 3713796 by Marc.Audy

	Added virtual GetTickableType function to FTickableBaseObject that can return Conditional (default), Always, or Never. Tickable Never objects will not get added to the tickable array or ever evaluated. Tickable Always objects do not call IsTickable and assume it will return true. Tickable Conditional objects work as in the past with IsTickable called each frame to make the determination whether to call Tick or not.

	IsTickable no longer a pure virtual (defaults to true).

	Applied fixes to avoid array corruption when a FTickableEditorObject is deleted during the tick phase consistent with previous fixes to FTickableGameObject.

Change 3638554 by Marc.Audy

	Add enum expansion functional test to validate that the metadata ExpandEnumAsExecs works as expected.

Change 3676502 by Ben.Zeigler

	Add Blueprint-only primary asset type to EngineTest, to cover testing UE-50635

[CL 3718205 by Marc Audy in Main branch]
2017-10-25 09:30:36 -04:00
Ben Marsh
4cf17e6c44 Merging //UE4/Release-4.18 @ 3660388 to Release-Staging-4.18 (//UE4/Release-Staging-4.18)
#rb none
#jira

[CL 3662266 by Ben Marsh in Staging-4.18 branch]
2017-09-25 14:08:25 -04:00
Matt Kuhlenschmidt
bb08e8c000 Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3621452)
#lockdown Nick.Penwarden
#rb none
============================
  MAJOR FEATURES & CHANGES
============================

Change 3567301 by Arciel.Rekman

	Linux: fix for importing failure when clicking shortcuts (UE-47932).

	- Slate dialog would return incorrect relative paths (not matching CWD) if Engine or Project shortcuts were used.

	#jira UE-47932

Change 3567687 by Arciel.Rekman

	Minor fixes to gdb pretty printers by icculus.

Change 3568024 by Arciel.Rekman

	Made SDL_SetWindowInputFocus() wait until window is viewable (UE-33369).

	- Pull request #2608 contributed by Ereski.
	- Updated x86_64 lib only (anticipating more changes to SDL).

	#coderview Cengiz.Terzibas, Ryan.Gordon

Change 3568173 by Max.Chen

	Movie Scene Capture: Delay on shot boundaries by setting the sequencer play rate to 0.

	This allows particles, TAA, and other effects to settle on the shot cuts.

	#jira UE-44598

Change 3568174 by Max.Chen

	Sequencer: Added option to rerun construction scripts on bound actors in the sequence every frame.

	#jira UE-31193

Change 3568331 by Matt.Kuhlenschmidt

	PR #3850: Add extensible source navigation service (Contributed by mhutch)


Change 3568350 by Matt.Kuhlenschmidt

	PR #3851: Add argument to pass params to standalone play session (Contributed by mhutch)


Change 3568387 by Matt.Kuhlenschmidt

	PR #3852: Add FEditorDelegates::BeginLocalPlay event (Contributed by mhutch)


Change 3568541 by Arciel.Rekman

	Merged Icculus' patch for copy-paste (UE-40071).

	- Alas does not seem to fix inability to copy/paste between Output log and kate.
	- Updated x86_64 lib only (anticipating more changes).

Change 3568547 by Arciel.Rekman

	Fix OpenGL queries reused after deletion.

Change 3568790 by Matt.Kuhlenschmidt

	PR #3857: Loading screen widgets not scaled correctly (Contributed by projectgheist)


Change 3568900 by Alexis.Matte

	Fix the fbx re-import factory handler to say failed in case there was no geometry to import.
	#jira UE-47506

Change 3568902 by Alexis.Matte

	Reduce memory footprint when importing large FBX scene PR #3834
	#jira UE-47833

Change 3569061 by Arciel.Rekman

	Linux: remove unnecessary symbols for MSVC visualizers.

	- Reported by ASan as collision because they exist in each DSO.

Change 3569782 by Cody.Albert

	Updated ImportAssets Commandlet help text to properly reflect supported features.

Change 3569843 by Arciel.Rekman

	SDL: add logic to select headless EGL device.

	- SDL will try to guess which device is GPU using CUDA device id (can also be hinted explicitly).
	- Also fixes the problem of engine not starting on some drivers that don't support the necessary EGL extensions.

Change 3570234 by Max.Chen

	Sequencer: Import FBX settings. Added settings to toggle force front x axis and whether to create cameras that don't already exist in the level.

	#jira UE-46754

Change 3570578 by Arciel.Rekman

	Linux: make FAnsiMalloc compatible with malloc()/free().

	- Prerequisite for ASan. Also helps fringe cases when we have to use FAnsiMalloc.

Change 3571015 by Alexis.Matte

	Issue warning when we found zero normal, tangent or binormal
	#jira UE-46419

Change 3571376 by Jamie.Dale

	Force a unique package localization ID when loading packages for diffing

Change 3571412 by Jamie.Dale

	Removed unused setting

Change 3571487 by Alexis.Matte

	fix speed tree import cancel workflow
	#jira UE-47482

Change 3571614 by Jamie.Dale

	Games now use the native culture of any of the game targets as the fallback (rather than always using English)

	This replaces the previously removed redundant setting from CL# 3571412

Change 3572649 by Jamie.Dale

	SavePackageHelper now always honors KeepObjectFlags

Change 3572730 by Matt.Kuhlenschmidt

	Guard against crash in the details panel when there is a message in the queue and something scrolls into view when the list has been invalidated

	#jira UE-48037

Change 3572773 by Matt.Kuhlenschmidt

	Guard against high res screenshot crashing if the requested image size doesnt match the image data size

	#jira UE-47765

Change 3572813 by Michael.Trepka

	Workaround for a mysterious issue in Xcode 9 beta 3 and 4 which makes it generate -Wnullability-inferred-on-nested-type warnings/errors in MetalDebugCommandEncoder.h even though we tell Clang to ignore them in MacPlatformCompilerPreSetup.h

Change 3573043 by Arciel.Rekman

	FAnsiMalloc: fix compile issue (UE-48066).

	#jira UE-48066

Change 3573236 by Arciel.Rekman

	Linux: add UnrealLightmass to the installed build.

	- Was also requested by a licensee on UDN.

Change 3573705 by Arciel.Rekman

	SDL: update UE4 fork to the latest trunk (UETOOL-1242).

	- Revision 11184 form 2017-08-04: http://hg.libsdl.org/SDL/rev/04063928c4a8
	- Change by icculus (Ryan Gordon).
	- Rebuilt x86_64 library only for now.

Change 3573741 by Arciel.Rekman

	Fix crash when capturing a movie (UE-48093).

	#jira UE-48093

Change 3574389 by Max.Chen

	Sequencer: Array bounds check.

	#jira UE-48095

Change 3574399 by Max.Chen

	Sequencer: Fix crash in removing delegate

	#jira UE-47461

Change 3574415 by Max.Chen

	Sequencer: Put level visibility tracks in the SpawnObjects evaluation group to ensure levels are streamed before any possessable bindings are resolved

Change 3574416 by Max.Chen

	Prevent slow task feedback from performing slow operations (flushing rendering commands, checking if shaders are initialized) when there are no modal dialogs open

Change 3574726 by Matt.Kuhlenschmidt

	Focus the details view when actor selection changes if it is not focused

Change 3574922 by Michael.Trepka

	Copy of CL 3574653 by Richard.Wallis

	XCode Beta 4 Compile fixes. "Inferring '_Nonnull' for pointer type within array is deprecated "

Change 3576525 by Nick.Darnell

	Editor - Data table rows names sort correctly in the property customization.
	Blueprint - Fixing some crashes due to holding onto raw pointers instead of TWeakObjectPtrs.
	UMG - SetWidgetClass now reinstances the widget if you change it at runtime.
	Editor - Deleting actors that are still referenced now at least logs to the console what still references it.

Change 3576714 by Nick.Darnell

	Editor - Build fix.

Change 3576770 by Jamie.Dale

	Removed some dead code

	It seems to be left over from the first attempt at stable localization keys

Change 3578433 by Matt.Kuhlenschmidt

	Fix content browser settings being per project and having created a "Global" category for one setting

Change 3578556 by Max.Chen

	Editor: Fix toolbar shared ref which was keeping the viewport toolbar around when switching between default and cinematic viewports.

	#jira UE-48125

Change 3578561 by Matt.Kuhlenschmidt

	Fix USD importing not respecting DestinationPath for automated import

Change 3580124 by Matt.Kuhlenschmidt

	Fix bogus warning message when a property has an editcondition that is not marked edit aynwhere.  This has always been supported and is the correct way to make an editcondition

Change 3581936 by Jamie.Dale

	Restoring defaults for UContentBrowserSettings

Change 3582039 by Matt.Kuhlenschmidt

	High DPI mode changes
	- Editor viewport screen percentage is now adjusted automatically to account for DPI scaling.  By default the scene will be rendered at a lower resolution based on screen percentage calculated based on 100/DPIScale. Users can override this automatic calcuation in the performance options if desired.

	- DPI awareness is only set on windows in the editor now (still disabled by default)

	- Fixed hit proxy calculation not working properly with screen percentage

	- Developers can now register a delegate with SlateApplication to tell when a window's DPI changes

Change 3582049 by Matt.Kuhlenschmidt

	Fix color picker not properly converting FColor properties back to gamma space

Change 3582054 by Matt.Kuhlenschmidt

	Fix mac menus updating during unsafe times such as modal windows and slow tasks

	#jira UE-47874

Change 3582084 by Jamie.Dale

	Make sure to update the rendering resources for the active world if reloading its map build data

	This prevents a crash in the renderer due to it holding onto stale data

Change 3582257 by Matt.Kuhlenschmidt

	Fix widget component spawning widgets on cook

	#jira UE-48201

Change 3582655 by Matt.Kuhlenschmidt

	Fix DPI scale not being accounted for when entering immersive.

Change 3582706 by Matt.Kuhlenschmidt

	Fix automation tests

Change 3582728 by Matt.Kuhlenschmidt

	Turn on high dpi by default for windows editor

Change 3582732 by Matt.Kuhlenschmidt

	Turn on high DPI by default for mac editor

Change 3583112 by Max.Chen

	Sequencer: Add OnPlayReverse() event for when playback is in reverse

Change 3584130 by Matt.Kuhlenschmidt

	PR #3897: Git plugin: fix action icon in history window (Contributed by SRombauts)


Change 3584237 by Matt.Kuhlenschmidt

	Added the beginnings of a way to extend the usd importer with a custom resolver class that optionally handles prim identification and mesh and actor spawning.

	Added a test resolver that handles prims based on usd "kind" metadata.

Change 3584535 by Matt.Kuhlenschmidt

	Fix LOD identification in USD files

Change 3587703 by Matt.Kuhlenschmidt

	Fix tooltip

Change 3587901 by Matt.Kuhlenschmidt

	Fixed USD importing not finding and importing LODs properly

Change 3588380 by Matt.Kuhlenschmidt

	Fix ctrl+w not duplicating on mac

	#jira UE-46573

Change 3590435 by Jamie.Dale

	Added support for in-editor previews of localized game text

	This is configured by the "Preview Game Culture" setting, and will automatically be active when PIE is running (the preview language is also passed to any standalone games that are launched via the editor). This preview can also be used in the UMG editor to preview widgets in different languages.

	While a preview is running, all editable FText fields are locked-down (read-only) to prevent accidentally clobbering source data with translation data. You can also use this new lock-down feature to prevent any localization changes in your project (set "LockLocalization" to "True" under the "Internationalization" section of either your DefaultGame or DefaultEngine INI).

	In order to allow the game translations to be used in the editor, we now map the translation to any package localization ID variants when the LocRes data is loaded (or when looking up a specific piece of text). This is needed as the LocRes files only ever contain the "clean" versions of the IDs (without the package localization ID the editor uses), and also means that we no longer need to gather the "editor-only" variants of the text within assets.


Change 3592131 by Matt.Kuhlenschmidt

	Log for newly converted actors being pending kill

	#jira UE-47464

Change 3592200 by Matt.Kuhlenschmidt

	Made the class viewer menu function properly on mac.  Since it as a nomad tab it wasnt properly inserting itself into the top level menu on mac nor should it since it could be docked anywhere.  The filters menu is now consistent with other filters menus

Change 3592227 by Matt.Kuhlenschmidt

	Fix drag drop of actors being offset with high dpi monitors.

Change 3592719 by Bradut.Palas

	#jira UE-45632 - dual key bindings feature

	My approach was transforming the ActiveChord and DefaultChord into arrays and accessing them through an enum class called EMultipleKeyBindingIndex. A lot of connecting code, function prototypes, and data structures had to be changed to accomodate this. Most menus and tooltip texts are generated using the first valid active shortcut.

Change 3592793 by Bradut.Palas

	Fix compile warnings for InputBindingManager (there were actually hidden bugs among them)

Change 3593128 by Matt.Kuhlenschmidt

	Force low quality mode for background blurs by default on android

Change 3593579 by Michael.Dupuis

	#jira UE-47223 :
	If we have no world simply return null when GetLandscapeInfo is called
	Handle the cases in PostEditChange to handle null returned from GetLandscapeInfo

Change 3593580 by Michael.Dupuis

	Added missing shaders while generating thumbnails

Change 3593582 by Michael.Dupuis

	#jira UE-47492 : Make sure LayerInfo is valid before accessing data

Change 3593584 by Michael.Dupuis

	#jira UE-47253: Do not recreate the scene info in simulation mode

Change 3593585 by Michael.Dupuis

	#jira UE-48484: no longer mark the package dirty while generating the GrassMap if they were not existing

Change 3593586 by Michael.Dupuis

	#jira UE-48483 : hide the Rendering property group so user can't by mistake change the actor visibility

Change 3593593 by Michael.Dupuis

	#jira UE-48327: Added guard to prevent crash when using CVarFoliageDiscardDataOnLoad and having invalid foliage in your map

Change 3593597 by Michael.Dupuis

	#jira UE-48309: Do not build the tree if the static mesh is not even loaded yet
	#jira UE-48340: Properly support the Random stream and partial buffer update
	#jira UE-48228: Instance from blueprint are now visible in standalone game
	#jira UE-45854: Crash probably linked to post load called on not loaded static mesh
	#jira UE-48035: Properly init the per instance render data when creating a new component

	Only update instance in non archetype or CDO.

Change 3594060 by Matt.Kuhlenschmidt

	Fix high DPI mode being set for non-editor.  Also prevent possible crashes due to dll handle for high DPI method being freed before called

Change 3594355 by Matt.Kuhlenschmidt

	Change API help link to point to a website since offline CHM based docs are no longer used

	#jira UE-48230

Change 3595358 by Matt.Kuhlenschmidt

	Fixed bad initial window position and sizes for editor windows
	By default SWindow.ClientSize will assume unscaled window size and will scale it based on DPI as needed.  AdjustInitialSizeAndPositionForDPIScale argument can be used to disable this if needed
	Fixed a dock tabs and the main frame not taking into account dpi scale when saving their layout.  Now we always save window size at 1.0 scale and auto scale it based on DPI of the monitor it opens on.

	#jira UE-48446

Change 3595590 by Matt.Kuhlenschmidt

	Fix missing includes

Change 3595792 by Matt.Kuhlenschmidt

	Fix style warnings

Change 3596418 by Bradut.Palas

	fixing initial issue with dual keybinds (removed ensure macro to speedup first use of alternate key)

Change 3598679 by Max.Chen

	PR #3872: Fix small typo in ImagePlate Plugin (Contributed by TheCodez)

	#jira UE-48141


Change 3598720 by Max.Chen

	Cine Camera: Add toggle to disable constraining the roll when look at tracking is enabled. This allows the user to animate the roll while tracking an object.

	#jira UE-48316

Change 3600236 by Alexis.Matte

	Create a LOD Custom Mode in the meshes editor UI. This allow user to compare details values between LODs
	#jira UE-46822

Change 3600260 by Alexis.Matte

	Make sure temporary rename do not create redirector
	#jira UE-48364

Change 3600671 by Lauren.Ridge

	PR #3913: Fixed 3D preview issue in the material editor (Contributed by YuchenMei)


	#jira UE-48539
	#jira UE-48180
	#jira UE-48182

Change 3600812 by Jamie.Dale

	We now defer the registration of IME contexts until an editable text first gains focus

	Certain IMEs can have very high per-context costs, so this avoids that cost until we know that we definitely need to use the context

	#jira UE-48100

Change 3601839 by Matt.Kuhlenschmidt

	Fix USD import crash with "facevarying" normals

Change 3602434 by Jamie.Dale

	Removing dead code

	These flags were never being tested or used in any meaningul way

Change 3602611 by Jamie.Dale

	Ensure PackageToReload is non-null

	#jira UE-46655

Change 3602648 by Jamie.Dale

	Fixed custom columns with the same name as fixed columns causing infinite duplications in the content browser

	#jira UE-47392

Change 3602651 by Lauren.Ridge

	Fix for parameter tooltips not being found

	#jira UE-47417

Change 3604172 by Bradut.Palas

	#jira UE-48449
	#jira UE-48380
	#jira UE-48381
	#jira UE-48423

	I moved the IsFilenameValidForSaving()  function from FEditorFileUtils to FFileHelper so that it is accessible from CollectionManager.cpp in order to validate collection names as file names and no longer trigger any of the bugs.

Change 3604210 by Bradut.Palas

	#jira UE-48718

	Regression issue appeared from fixing a crash when using console command "open"
	Reworked by only refusing to open local URLs in case of client mode and multiprocess being active simultaneously.

Change 3604258 by Jamie.Dale

	IME contexts can now flag themselves as dead to avoid latent IME callbacks trying to access a deleted widget

	#jira UE-46815
	#jira UE-47295

Change 3604312 by Matt.Kuhlenschmidt

	PR #3931: Fixing a few obvious copy & paste errors. (Contributed by DaveC79)


Change 3604352 by Matt.Kuhlenschmidt

	Fix crash accessing potentially invalid parent layout from a detail category

	#jira UE-48729


Change 3604402 by Lauren.Ridge

	Epic Friday - array drag and drop

Change 3605228 by Cody.Albert

	TSets and TMaps should now properly rehash if a key is modified in the details panel.

Change 3605275 by Alexis.Matte

	Merge actor do not keep the material slot name

	#jira UE-43246

Change 3605715 by Max.Chen

	Sequencer: Fix cinematic mode getting activated on BeginPlay() instead of OnStartedPlaying().

	#jira UE-48770

Change 3606411 by Max.Chen

	Sequencer: Fix a few player state issues. When paused, calling stop now tears down properly (spawnables are removed, etc). When a level sequence  is deleted, tears down properly as well.

	#jira UE-42008

Change 3606440 by Max.Chen

	Sequencer: Update spawanble name when the spawnable actor name is changed.

	#jira UE-47815

Change 3606899 by Lauren.Ridge

	Disabling enum-based arrays from reordering

Change 3606958 by Lauren.Ridge

	Visual polish on array handles

Change 3607733 by Max.Chen

	Sequencer: Check null in camera cut

Change 3607849 by Max.Chen

	Sequencer: Clip transport controls.

	#jira UE-48812

Change 3608181 by Max.Chen

	#jira UE-48813 Correctly set GPlayInEditorID when initializing the PIE gameinstance, which does the initial tick. This fixes autoplay sequences
	Copy from Dev-Framework

Change 3608361 by christopher.biancard

	QAGame: Submitting test content for Array Element Reorder testing

Change 3608512 by Alexis.Matte

	Add fbx exporter option dialog, support export all and cancel all functionality when doing bulk export.
	#jira UE-48058

Change 3608629 by Max.Chen

	Camera Rig: Fix crane and rail not being packaged properly.

	#jira UE-48829

Change 3609217 by Matt.Kuhlenschmidt

	Added a lock around access to slate active timers to protect it against race conditions when accessed on the slate movie thread and the game thread

Change 3609722 by Alexis.Matte

	Make sure a warning is log when we cannot export an animation sequence.
	#jira UE-48390

Change 3609774 by Alexis.Matte

	Fix the merge actor build LOD scale again, a previous merge erase the fix
	#jira UE-48156

Change 3609891 by christopher.biancard

	QAGame: Minor additions for test coverage on Array Element Reorder

Change 3610171 by Lauren.Ridge

	Fixes for reordering metadata, creating actual swap function out of three element functions

	#jira UE-48823

Change 3610407 by Lauren.Ridge

	Fixing highlighting and behavior to place dragged row in the spot you release (not below)

Change 3610472 by Lauren.Ridge

	Moving final location logic

Change 3610797 by Lauren.Ridge

	Disabling dragging handles during PIE

Change 3611089 by Lauren.Ridge

	Disabling handles when overall tree is disabled

Change 3612479 by Lauren.Ridge

	Fix for asset contex menu warning

	#jira UE-46667

Change 3612791 by Michael.Dupuis

	#jira UE-48914 : Add the possibility to specify if we need CPU access to the instance buffer depending on the usage.
	Grass should always have CPU access.

Change 3612802 by Michael.Dupuis

	missing file from checkin 3612791

Change 3612805 by Max.Chen

	Sequencer: Fix crash with null GEditor

	Copy from Release-4.17

	#jira UE-48443

Change 3612806 by Max.Chen

	Sequencer: Fix crash when capturing a movie with options enabling separate process and close editor.

	Copy from Release-4.17

	#jira UE-48487

Change 3612807 by Max.Chen

	Sequencer: Fix crash upgrading the time range of a null track.

	Copy from Release-4.17

	#jira UE-48490

Change 3612808 by Max.Chen

	Sequencer: Fixed dragging skeletal animations causing them to revert back to t-pose

	Copy from Release-4.17

	#jira UE-48367

Change 3612849 by Arciel.Rekman

	Fix tesselation in packaged Linux projects (UE-24301).

	- Change by Cengiz.Terzibas.

	#jira UE-24301

Change 3613022 by Nick.Darnell

	Editor - Fixing a crash on load with a null CoordIndex json node.

Change 3613030 by Matt.Kuhlenschmidt

	PR #3932: UE-48693: if instead of while statement (Contributed by projectgheist)

	#jira UE-48747

Change 3613047 by Matt.Kuhlenschmidt

	PR #3933: Git plugin: add "branch source" in history window (Contributed by SRombauts)


Change 3613050 by Matt.Kuhlenschmidt

	PR #3942: Sort Data Table Structures Alphabetically (Contributed by Nick-Pearson)


Change 3613062 by Matt.Kuhlenschmidt

	PR #3939: Fix a typo in RecordQualityLevelsAnalytics(). (Contributed by samhocevar)


Change 3613241 by Nick.Darnell

	Editor - Fixing the content browser's view settings to be project agnostic, and they will start saving again.

Change 3613329 by Lauren.Ridge

	Moving favorite levels to a standard submenu so they also work on Mac

Change 3613344 by Nick.Darnell

	Editor - Fixing the achorgrid show up as white in HDPI mode, seems because we were upsampling the image, the blend was between dark and a transparent white, so that caused everything to turn white in HDPI mode.

	#jira UE-48921

Change 3613380 by Matt.Kuhlenschmidt

	Fix FBX window being off the screen in high DPI

	#jira UE-48872

Change 3614598 by Matt.Kuhlenschmidt

	Fixed Sequencer Keyframes appearing out of place on High DPI Monitors

	#jira UE-48915

Change 3614625 by Matt.Kuhlenschmidt

	Fixed not being able to click on BSP correctly in high dpi

	#jira UE-48947

Change 3614672 by Matt.Kuhlenschmidt

	Fix combo box windows being larger than necessary on high dpi monitors

	#jira UE-48908

Change 3614699 by Matt.Kuhlenschmidt

	Fix typo

	#jira UE-48941

Change 3615011 by Matt.Kuhlenschmidt

	Fix color picker calculation appearing offscreen for high dpi

Change 3615013 by Michael.Dupuis

	#jira UE-48897: Properly rebuild the tree when reapplying instance to the component

Change 3615014 by Colin.Benoit

	Sequencer Recorder test content

Change 3615048 by Colin.Benoit

	Sequencer Recorder: more test content

Change 3615118 by Lauren.Ridge

	Updating realtime state of viewports to also change when settings toggled

	#jira UE-48884

Change 3615127 by Lauren.Ridge

	Remove delegate binding on viewport destruction

Change 3615180 by Bradut.Palas

	#jira UE-48167 profiler crash

	Don't duplicate the graph data when rebuilding because that completely voids the OneToOneMapping mechanism, resulting in the crash. Looking up objects in the mapping would always return null because the mapping contains the old addresses, before the rebuild.

	One option would have been to completely rebuild the mapping according to the duplicate graph, which would be dubious because the duplicate method isn't specifically designed so that the result would replace the source.

	But it looks like duplicating the data is not needed, it's safe to rebuild in-place, RebuildForFilter() doesn't do anything illegal with the objects. This is also the only purpose and the only reference of the function.

Change 3615232 by Lauren.Ridge

	Adding input handling to the material editor viewport client

	#jira UE-48909

Change 3615703 by Jamie.Dale

	Fixed crash when fixing up references after a package rename failed

	#jira UE-48856

Change 3615752 by Matt.Kuhlenschmidt

	More generic fix for color picker and other windows that use CalculatePopupWindowPostion not accounting for DPI scale

Change 3615907 by Jamie.Dale

	Fixed some crashes caused by CL# 3600812

Change 3616031 by Matt.Kuhlenschmidt

	Added guard against invalid blueprints (ones without a generated class) being trying to be opened in the property matrix and failing

	#jira UE-48986

Change 3616151 by Arciel.Rekman

	Fixing adding array elements in config.

	- "+Blah=Foo" will do Blah.AddUnique(Foo)
	- ".Blah=Foo" will do Blah.Add(Foo)
	- See JoshA re: why (also see: https://udn.unrealengine.com/questions/388157/incorrect-behavior-in-configcacheinicpp.html?childToView=389307)

Change 3616439 by Andrew.Porter

	QAGame: Updating level visibility content in sequencer smoke map

Change 3616441 by Matt.Kuhlenschmidt

	Fix more sequencer track offsetting with DPI scale

	#jira UE-48981

Change 3617263 by Max.Chen

	Sequencer: Fix crash in level visibility teardown. Null playback context.

	#jira UE-49012

Change 3617316 by Max.Chen

	Sequencer: Fixed a regression where the frame rate isn't getting initialized for a movie scene.

Change 3617648 by Matt.Kuhlenschmidt

	Adding some windows specific logging around setting or failing to set process dpi awareness

Change 3617665 by Matt.Kuhlenschmidt

	Guard against layers module not being loaded in keybinding automation test

Change 3617731 by Arciel.Rekman

	Fix crashes on AMD Mesa drivers (UE-48374).

	- Do not expose unnecessary symbols from libelf.a to avoid symbol collision with system library used by drivers.

Change 3617923 by Bradut.Palas

	#jira UE-47072

	Editor was crashing because deleted actor was not cleaned properly from asset editors. Changed  IAssetEditorInstance to offer a function for deleting an object from the editor.

Change 3618088 by Matt.Kuhlenschmidt

	Guard against crash with potentially invalid worlds in preview scenes

	#jira UE-48997

Change 3618373 by Matt.Kuhlenschmidt

	Force worldsettings to be hidden in editor so that it is not considered for selection

	#jira UE-48996

Change 3618464 by Max.Chen

	Sequencer: Fix regression where spawnables don't play because they're defined as temporary editor actors.

	#jira UE-48923

Change 3619789 by Matt.Kuhlenschmidt

	Fix DPI scale warnings in any kind of headless editor mode

Change 3619802 by Jamie.Dale

	Fixed deprecation warning in malloc profiler

Change 3619841 by Matt.Kuhlenschmidt

	Fix missing icons in the package project menu

	#jira UE-48674

Change 3619991 by Lauren.Ridge

	Fix typo in transaction message

	#jira UE-48993

Change 3620086 by Lauren.Ridge

	Moving realtime viewport logic to refresh instead of construct so it is always triggered upon opening a new material editor

	#jira UE-48884

Change 3620616 by Matt.Kuhlenschmidt

	Fix up file

Change 3621002 by Matt.Kuhlenschmidt

	Back out change to apply scaling rules in loading screens since blueprint based DPI scaling rule classes will not have been created yet

	#jira UE-49125

Change 3621049 by Arciel.Rekman

	Fix a build error.

	- Also make sure that we don't print confusing message when no messagebox can be shown
	  (this code changed during the merge).

Change 3621064 by Arciel.Rekman

	Deleted too much in the previous changelist.

Change 3621369 by Matt.Kuhlenschmidt

	Fix keybindings automation test failing due to multiple entries in the active choords array pointing to the same thing

	#jira UE-49131

[CL 3621569 by Matt Kuhlenschmidt in Main branch]
2017-08-31 21:51:42 -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
Ben Marsh
f461ea68e9 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3548365)
#lockdown Nick.Penwarden

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

Change 3494741 by Steve.Robb

	Generated code size savings.

	#jira UE-43048

Change 3495484 by Steve.Robb

	Fix for generated indices of static arrays when saving configs.

Change 3497926 by Robert.Manuszewski

	Removed FPackageFileSummary's CompressedChunks array as it was no longer being used by anything.

Change 3498077 by Robert.Manuszewski

	Only use the recursion guard in async loading code when the event driven loader is enabled.

Change 3498112 by Ben.Marsh

	UBT: Respect the option to not create debug info in the Android toolchain. This option is already being respected by the compiler, but the linker adds debug info of its own.

Change 3500239 by Robert.Manuszewski

	Made sure the Super Class token stream is also locked when assembling Class token stream with async loading thread enabled. This to to prevent race conditions when loading BP classes.

Change 3500395 by Steve.Robb

	Extra codegen savings when not in hot reload.

Change 3501004 by Steve.Robb

	EObjectFlags now have constexpr operators.

Change 3502079 by Ben.Marsh

	UBT: Pad multi-line error messages so that they align under the prefix for the first line, and include the timestamp if necessary.

Change 3502527 by Steve.Robb

	Fix for zero-sized array compile error in generated code when all functions are editor-only.

Change 3502542 by Ben.Marsh

	UAT: Remove the custom source parameter from log functions, and add support for a customizable indent instead.

Change 3502868 by Steve.Robb

	Workaround for inefficient generated code with stateless lambdas on Clang.

Change 3503550 by Steve.Robb

	Another generated code lambda optimization.

Change 3503582 by Ben.Marsh

	BuildGraph: Add support for nullable parameter types.

Change 3504424 by Steve.Robb

	New AllOf, AnyOf and NoneOf algorithms.

Change 3504712 by Ben.Marsh

	UAT: Less spammy log and error output from UAT.

	* Callstacks for AutomationExceptions are suppressed by default but still included in the log (the path to the log is noted in console output with the message from the exception).
	* Add a mechanism for any exceptions to be caught and rethrown with additional lines of context (CommandUtils.AddContext()) that will be appended to the error output by UAT. Avoids decaying the exception type or masking the inner exception message while still adding additional information.
	* AggregateExceptions resulting from exceptions on child threads are automatically unwrapped (full details are still appended to the log)
	* Name of the calling function is not included in console output by default, but still included in the log.

Change 3504808 by Ben.Marsh

	UAT: Suppress P4 output when running a recursive instance of UAT.

Change 3505044 by Steve.Robb

	Code generation improved for TCppClassType code.

Change 3505485 by Ben.Marsh

	Fix deterministic cooking issue; always use a pseudo-random number stream when compiling a module.

Change 3505699 by Ben.Marsh

	Plugins: Store the bEnabledByDefault flag exactly as it was read from disk rather than collapsing it to an absolute value based on the default for the location it was read from. This allows loading/saving plugin descriptors without any knowledge of whether they are game or engine plugins.

Change 3506055 by Ben.Marsh

	UAT: Add a class to apply a log indent for the lifetime of an object (ScopedLogIndent), and use it to apply an indent to MegaXGE/ParallelExecutor output.

Change 3507745 by Robert.Manuszewski

	Moved FSimpleObjectReferenceCollectorArchive and FSimpleObjectReferenceCollectorArchive to be internal archives used only by FReferenceCollector so that they are constructed only once per GC task instead of potentially multiple times per GC (as was the case with UDataTables and BlueprintGeneratedClasses).

Change 3507911 by Ben.Marsh

	Plugins: Minor changes to plugin descriptors.

	* Add a distinct setting for an unspecified EnabledByDefault setting in plugin descriptors.
	* Add a function to IPlugin to determine the effective EnabledByDefault setting, based on where the plugin was loaded from.

Change 3508669 by Ben.Marsh

	EC: Parse multi-line messages from UBT and UAT.

Change 3508691 by Ben.Marsh

	Fix double-spacing of cook stats.

Change 3509245 by Steve.Robb

	UHT makefiles removed.
	Flag audit removed.

Change 3509275 by Steve.Robb

	Fix for mismatched stat categories in AudioMixer.

	#jira UE-46129

Change 3509289 by Robert.Manuszewski

	Custom Version Container will no longer be always constructed in FArchive constructor. This reduces the number of the Custom Version Container allocations considerably.

Change 3509294 by Robert.Manuszewski

	UDataTable::AddReferencedObjects will no longer try to iterate over the RowMap if there's no UObject references in it.

Change 3509312 by Steve.Robb

	GitHub# 3679: Add TArray constructor that takes a raw pointer and a count

	Check improved for Append() to allow nullptr in empty ranges, and added to new constructor too.

	#jira UE-46136

Change 3509396 by Steve.Robb

	GitHub# 3676: Fix TUnion operator<< compile error

	#jira UE-46099

Change 3509633 by Steve.Robb

	Fix for line numbers on multiline macros.

Change 3509938 by Gil.Gribb

	UE4 - Fix rare assert involving cancelled precache requests and non-pak-file loading.

Change 3510593 by Daniel.Lamb

	Fixed up unsoilicited files getting populated with files which aren't finished being created yet.

	#test None

Change 3510594 by Daniel.Lamb

	Fixed up temp files directory for patching.

	Thanks David Yerkess @ Milestone
	#review@Ben.Marsh

Change 3511628 by Ben.Marsh

	PR #3707: Fixed UBT stack size (Contributed by gildor2)


Change 3511808 by Ben.Marsh

	Optimize checks for whether the game project contains source code. Now stops as soon as the first file is found and ignores directories beginning with a '.' character (eg. .git)

	#jira UE-46540

Change 3512017 by Ben.Marsh

	Plugins: Deprecate the QueryStatusForAllPlugins() function; the same functionality is available via the IPlugin interface.

Change 3513935 by Steve.Robb

	Reverted array iteration in FPropertyNode::PropagatePropertyChange as this is now covered in TProperty::InitializeValueInternal() as of CL# 3293477.

Change 3514142 by Steve.Robb

	MemoryProfiler2 added to generated solution.

Change 3516463 by Ben.Marsh

	Plugins: Create a manifest for each PAK file containing all the plugin descriptors in one place. Eliminates need to recurse through directories and read separate multiple files in serial at startup, and allows reading all plugin descriptors with one read. The "Mods" directory is excluded from the manifest, since these are intended to be installed separately by the user.

Change 3517860 by Ben.Marsh

	PR #3727: FString Dereference Fixes (Contributed by jovisgCL)


Change 3517967 by Ben.Marsh

	Suppress additional system error dialogs when loading DLLs if -unnattended is on the command line.

Change 3518070 by Steve.Robb

	Disable Binned2 stats in shipping non-editor builds.

Change 3520079 by Steve.Robb

	Fixed bad codegen TAssetPtrs being passed into BlueprintImplementableEvent functions.

	#jira UE-24034

Change 3520080 by Robert.Manuszewski

	Made max package summary size to be configurable with ini setting

Change 3520083 by Steve.Robb

	Force a GC after hot reload to clean up reinstanced objects which may still tick.

	#jira UE-40421

Change 3520480 by Robert.Manuszewski

	Improved assert message when the initial package read request was too small.

Change 3520590 by Graeme.Thornton

	SignedArchiveReader optimizations
	 - Loads more stats
	 - Stop chunk cache worker from waking up continuously to poll for work. Only wake up when triggered by the archive reader
	 - Signed archive reader just yields when waiting for buffers to finish loading, rather than sleeping for some arbitrary amount of time
	 - Track the number of pending read requests in an atomic counter, to save having to lock the request queue to check for new entries

Change 3521023 by Graeme.Thornton

	Remove spin from signed archive reader. Main thread waits on an event triggered by the chunk worker to indicate that new chunks are ready for processing

Change 3521787 by Ben.Marsh

	PR #3736: Small static code analysis fixes (Contributed by jovisgCL)


Change 3521789 by Ben.Marsh

	PR #3735: Fix case sensitivity issue in FWindowsPlatformProcess::IsApplicationRunning. (Contributed by samhocevar)


Change 3524721 by Ben.Marsh

	Move Linux SDL initialization into FLinuxPlatformApplicationMisc. Attempting to move functionality related to interactive applications (graphics, input, etc...) into a separate place, so it can ultimately be moved out of Core.

Change 3524741 by Ben.Marsh

	Move PumpMessages() into FPlatformApplicationMisc.

Change 3525399 by Ben.Marsh

	UGS: Use the default Perforce server port when opening P4V if there is not one set in the environment.

Change 3525743 by Ben.Marsh

	UAT: Add a parameter to allow updating version files without updating Version.h, to allow faster link times on incremental builds.

Change 3525746 by Ben.Marsh

	EC: Include the clobber option on new workspaces, to allow overriding version files when syncing.

Change 3526453 by Ben.Marsh

	UGS: Do not generate project files when syncing precompiled binaries.

Change 3527045 by Ben.Marsh

	Fix hot reload generating import libraries without DLLs. Now that they are produced by separate actions by default, it was removing DLLs from the action graph due to the bSkipLinkingWhenNothingToCompile setting.

Change 3527420 by Ben.Marsh

	UGS: Add additional search paths for UGS config files, and fix a few cosmetic issues (inability to display ampersands in tools menu, showing changelist -1 when running a tool without syncing).

	Config files are now read from:

	Engine/Programs/UnrealGameSync/UnrealGameSync.ini
	Engine/Programs/UnrealGameSync/NotForLicensees/UnrealGameSync.ini

	If a project is selected:

	<ProjectDir>/Build/UnrealGameSync.ini
	<ProjectDir>/Build/NotForLicensees/UnrealGameSync.ini

	If the .uprojectdirs file is selected:

	Engine/Programs/UnrealGameSync/DefaultProject.ini
	Engine/Programs/UnrealGameSync/NotForLicensees/DefaultProject.ini

Change 3528063 by Ben.Marsh

	Fix non-thread safe construction of FPluginManager singleton. Length of time spent in the constructor resulted in multiple instances being constructed at startup, making the time to enumerate plugins on slow media significantly worse.

Change 3528415 by Ben.Marsh

	UAT: Remove \r characters from the end of multiline log messages.

Change 3528427 by Ben.Marsh

	EC: Fix spaces being converted to tabs at start of line in failure emails (by Gmail), and wrap following lines at the same indent.

Change 3528485 by Ben.Marsh

	EC: Remove zero-width word break characters from slashes in notification emails; can cause really hard to debug problems when copy pasted into other places.

Change 3528505 by Steve.Robb

	PR #3755: MallocProfiler - Remove subfolder from profiling save directory (Contributed by Josef-CL)


	#jira UE-46819

Change 3528772 by Robert.Manuszewski

	Enabling actor and blueprint clustering in ShooterGame

Change 3528786 by Robert.Manuszewski

	PR #3760: Fix typo (Contributed by jesseyeh)


Change 3528792 by Steve.Robb

	PR #3764: MallocProfiler - Refactoring Scopelock (Contributed by Josef-CL)


	#jira UE-46962

Change 3528941 by Robert.Manuszewski

	Fixed lazy object pointers not being updated for streaming sub-levels in PIE. Fixed lazy pointers returning object that is still being loaded which could lead to undefined behavior when client code started modifying the returned object.

	#jira UE-44996

Change 3530241 by Ben.Marsh

	UAT: Only pass -submit or -nosubmit to child instances of UAT if they were specified on the original command line. BuildCookRun uses this flag to determine whether to submit, rather than just whether to allow submitting, so we shouldn't pass an inferred value.

Change 3531377 by Ben.Marsh

	Plugins: Allow plugins to specify a list of supported target platforms, which is propagated to any .uproject file that enables it.

	This has several advantages over the per-module platform whitelist/blacklist:

	* Platform-specific .uplugin files can now be excluded when staging other platforms. Previously, it was only possible to determine which platforms a plugin supports by reading the plugin descriptor itself. Now that information is copied into the .uproject file, so the runtime knows which plugins to ignore.
	* References to dependent plugins from platform-specific plugins can now be eliminated.
	* Plugins containing content can now be unambiguously disabled on a per-platform basis (having no modules for a platform does not confer that a plugin doesn't support that platform; now it is possible to specify supported platforms explicitly).
	* The editor can load any plugins without having to whitelist supported editor host platforms.

	UE4 targets which support loading plugins for target platforms can set TargetRules.bIncludePluginsForTargetPlatforms (true for the editor by default, false for any other target types). This defines the LOAD_PLUGINS_FOR_TARGET_PLATFORMS macro at runtime, which allows the plugin system to filter which plugins to look for at runtime.

	Any .uproject file will be updated at startup to contain the list of supported platforms for each referenced plugin if necessary.

Change 3531502 by Jin.Zhang

	Add support for GPUCrash #rb

Change 3531664 by Ben.Marsh

	UBT: Change output format from C# JSON writer to match output by the engine.

Change 3531848 by Ben.Marsh

	UAT: Add script to resaving all project descriptors under a folder, embedding information for any supported platforms for the plugins they enable.

Change 3531869 by Ben.Marsh

	UAT: Add parameter to the ResaveProjectDescriptors command to update the engine association field.

Change 3532474 by Ben.Marsh

	UBT: Use the same mechanism as UAT for logging exceptions.

Change 3532734 by Graeme.Thornton

	Initial VSCode Support
	 - Tasks generated for building all game/engine/program targets
	 - Debugging support for targets on Win64

Change 3532789 by Steve.Robb

	FScriptSet::Add and TScriptMap::Add now replace the element, matching the behavior of TSet and TMap.
	Set_Add and Map_Add no longer have a return value.
	FScriptSet::Find and FScriptMap::Find functions are now FindIndex.
	FScriptSetHelper::FindElementFromHash is now FindElementIndexFromHash.

Change 3532845 by Steve.Robb

	Obsolete UHT settings deleted.

Change 3532875 by Graeme.Thornton

	VSCode
	 - Add debug targets for different target configurations
	 - Choose between VS debugger (windows) and GDB (mac/linux)

Change 3532906 by Graeme.Thornton

	VSCode
	 - Point all builds directly at UBT rather than the batch files
	 - Adjust mac build tasks to run through mono

Change 3532924 by Ben.Marsh

	UAT: Set the UAT working directory immediately on startup. This ensures that any command line arguments containing paths are resolved consistently to the branch root.

Change 3535234 by Graeme.Thornton

	VSCode - Pass intellisense system a list of paths to use for header resolution

Change 3535247 by Graeme.Thornton

	UBT - Add a ToString to ProjectFile.Source file to help with debugger watch presentation

Change 3535376 by Graeme.Thornton

	VSCode
	 - Added build jobs for C# projects
	 - Linked launch tasks to relevant build task

Change 3537083 by Ben.Marsh

	EC: Change P4 swarm links to start at the changelist for a build.

Change 3537368 by Graeme.Thornton

	Fix for crash in FSignedArchiveReader when multithreading is disabled

Change 3537550 by Graeme.Thornton

	Fixed a crash in the taskgraph when running single threaded

Change 3537922 by Steve.Robb

	Missing PF_ATC_RGBA_I added to FOREACH_ENUM_EPIXELFORMAT.

Change 3539691 by Graeme.Thornton

	VSCode - Various updates to get PC and Mac C++ projects building and debugging.
	 - Some other changes to C# setup to allow compilation. Debugging doesn't work.

Change 3539775 by Ben.Marsh

	Plugins: Various fixes to settings for enabling plugins.

	* Fix crash on startup when trying to disable a missing plugin (was keeping pointers to elements in the project's plugin reference array, which may be modified if a plugin is disabled).
	* Revert fix to set PluginDescriptor.bRequiresBuildPlatform = true by default. This was the originally intended behavior, but it was accidentally defaulted to false during serialization unless specified in the .uplugin file. Many plugins may rely on this behavior (they may not declare asset classes otherwise, for example, which could result in loss of data), so change the default value to false instead. Also fixes popups to disable platform-specific plugins if platform SDKs are not installed.
	* Fix plugins which are referenced but do not exist not showing the appropriate prompt to disable them.

Change 3540788 by Ben.Marsh

	UBT: Add support for declaring custom pre-build steps and post-build steps from .target.cs files. Similarly to the custom build steps configurable from .uproject and .uplugin files, these specify commands which will be executed by the host platform's shell before or after a build. The following variables are expanded within the list of commands before execution: $(EngineDir), $(ProjectDir), $(TargetName), $(TargetPlatform), $(TargetConfiguration), $(TargetType), $(ProjectFile).

	Example usage:

	public class UnrealPakTarget : TargetRules
	{
		public UnrealPakTarget(TargetInfo Target) : base(Target)
		{
			Type = TargetType.Program;
			LinkType = TargetLinkType.Monolithic;
			LaunchModuleName = "UnrealPak";

			if(HostPlatform == UnrealTargetPlatform.Win64)
			{
				PreBuildSteps.Add("echo Before building:");
				PreBuildSteps.Add("echo This is $(TargetName) $(TargetConfiguration) $(TargetPlatform)");

				PostBuildSteps.Add("echo After building!");
				PostBuildSteps.Add("echo This is $(TargetName) $(TargetConfiguration) $(TargetPlatform)");
			}
		}
	}

Change 3541664 by Graeme.Thornton

	VSCode - Add problemMatcher tag to cpp build targets

Change 3541732 by Graeme.Thornton

	VSCode - Change UBT command line switch to "-vscode" for simplicity

Change 3541967 by Graeme.Thornton

	VSCode - Fixes for Mac/Linux build steps

Change 3541968 by Ben.Marsh

	CRP: Pass through the EnabledPlugins element in crash context XML files.

	#jira UE-46912

Change 3542519 by Ben.Marsh

	UBT: Add chain of references to error messages when configuring plugins.

Change 3542523 by Ben.Marsh

	UBT: Add more useful error message when attempt to parse a JSON object fails.

Change 3542658 by Ben.Marsh

	UBT: Include a chain of references when reporting errors instantiating modules.

Change 3543432 by Ben.Marsh

	Plugins: Fix plugins which are enabled by default not being enabled unless a project file is set.

Change 3543436 by Ben.Marsh

	UBT: Prevent recursing through the same module more than once when building out the referenced modules. Produces much shorter reference chains when something fails.

Change 3543536 by Ben.Marsh

	UBT: Downgrade message about redundant plugin references to a warning.

Change 3543871 by Gil.Gribb

	UE4 - Fixed a critical crash bug with non-EDL loading from pak files.

Change 3543924 by Robert.Manuszewski

	Fixed a crash on UnrealFrontend startup caused by re-assembling GC token stream for one of the classes.
	+Small optimization to token stream generation code.

Change 3544469 by Jin.Zhang

	Crashes page displays the list of plugins from the crash context #rb

Change 3544608 by Steve.Robb

	Fix for nativized generated code.

	#jira UE-47452

Change 3544612 by Ben.Marsh

	Add callback into FMacPlatformMisc::PumpMessages() from FMacPlatformApplicationMisc::PumpMessages().

	#jira UE-47449

Change 3545954 by Gil.Gribb

	Fixed a critical crash bug relating to a race condition in async package summary reading.

Change 3545968 by Ben.Marsh

	UAT: Fix incorrect username in BuildGraph <Submit> task. Should use the username from the Perforce environment, not assume the logged in user name is the same.

	#jira UE-47419

Change 3545976 by Ben.Marsh

	EC: Delete the AutoSDK client if the directory doesn't exist. When we format build machines, we need to force everything to be resynced from scratch.

Change 3546185 by Ben.Marsh

	Hacky fix for deployment on IOS/TVOS. Since deployment directly references the NonUFS manifest files that are written out, merge all the SystemNonUFS files back into the NonUFS list after the regular NonUFS files have been remapped.

Change 3547084 by Gil.Gribb

	Fixed a critical race condition in the new async loader. This was only reproducible on IOS, but may affect other platforms.

Change 3547968 by Gil.Gribb

	Fixed critical race which potentially could cause a crash in the pak precacher.

Change 3504722 by Ben.Marsh

	BuildGraph: Improved tracing for error messages. All errors are now propagated as exceptions, and are tagged with additional context information about the task currently being run.

	For example, throwing new AutomationException("Unable to write foo.txt") from SetVersionTask.Execute is now displayed in the log as:

	ERROR: Unable to write to foo.txt
	         while executing <SetVersion Change="0" CompatibleChange="0" Branch="Unknown" Promoted="True" />
	         at Engine\Build\InstalledEngineBuild.xml(91)
	       (see D:\P4 UE4\Engine\Programs\AutomationTool\Saved\Logs\UAT_Log.txt for full exception trace)

Change 3512255 by Ben.Marsh

	Rename FPaths functions with a "Game" prefix (GameDir(), GameContentDir(), etc...) to have a "Project" prefix (ProjectDir(), ProjectContentDir(), etc...) for clarity with non-game uses of UE4. Old functions still exist but are deprecated.

Change 3512332 by Ben.Marsh

	Rename "Game" functions in FApp to be "Project" functions (FApp::GetGameName() -> FApp::GetProjectName(), etc...) for clarity with non-game uses of UE4.

Change 3512393 by Ben.Marsh

	Rename FPaths::GameLogDir() to FPaths::ProjectLogDir().

Change 3513452 by Ben.Marsh

	Plugins: Rename EPluginLoadedFrom::GameProject to EPluginLoadedFrom::Project.

Change 3516262 by Ben.Marsh

	Add support for a "Mods" folder distinct from the project's "Plugins" folder, instead of using the bIsMod flag on the plugin descriptor.

	* Mods are enumerated similarly to regular plugins, but IPlugin::GetType() will return EPluginType::Mod.
	* The DLCName parameter to BuildCookRun and the cooker now correctly finds any plugin in the Plugins or Mods directory (or any subfolders).

Change 3517565 by Ben.Marsh

	Remove fixed engine version numbers from OSS plugins.

Change 3518005 by Ben.Marsh

	UAT: Remove the bUFSFile parameter from DeployLowerCaseFilenames(). Every platform returns false if the argument is false.

Change 3518054 by Ben.Marsh

	UAT: Use an enum to direct whether all directories should be searched when finding files to stage, rather than a bool. Having so many optional boolean arguments makes code unreadable and refactoring hard.

Change 3524496 by Ben.Marsh

	Start moving GUI application code into a separate static platform class, hopefully ultimately removing it from Core.

Change 3524641 by Ben.Marsh

	Move more functionality related to windowed/graphical applications into FPlatformApplicationMisc.

Change 3528723 by Steve.Robb

	MoveTemp now static asserts if passed a const reference or rvalue.
	MoveTempIfPossible still follows the old (std::move) rule, which is useful for templates where the nature of the argument is not obvious.
	Fixes to violations of these new rules.

Change 3528876 by Ben.Marsh

	Move FPlatformMisc::ClipboardCopy and FPlatformMisc::ClipboardPaste to FPlatformApplicationMisc::ClipboardCopy and FPlatformApplicationMisc::ClipboardPaste.

Change 3529073 by Ben.Marsh

	Add script to package ShooterGame for any platforms.

Change 3531493 by Ben.Marsh

	Update platform-specific plugins to declare the target platforms they support.

Change 3531611 by Ben.Marsh

	UAT: Add a ResavePluginDescriptors command, which resaves all plugin descriptors under a given folder, removing any outdated fields and rewrites them in a consistent style. Many plugins in the wild contain redundant or no-longer used fields due to using our plugins as templates.

Change 3531868 by Ben.Marsh

	Resaving project descriptors to remove invalid fields.

Change 3531983 by Ben.Marsh

	UAT: Simplify logic for staging code, and add validation against shipping files in restricted folders.

	* Added a new SystemNonUFS type for staged files, which excludes files from being remapped or renamed by the platform layer.
	* Replaced the DeplyomentContext.StageFiles() function with simpler overloads for particular use cases (options for remapping are replaced with the SystemNonUFS file type)
	* Config entries in the [Staging] category in DefaultGame.ini file allow remapping one directory to another, so restricted content can be made public in packaged builds (Example syntax: +RemapDirectory=(From="Foo/NoRedist", To="Foo"))
	* An error is output if any restricted folder names other than the output platform are in the staged output.

Change 3540315 by Ben.Marsh

	UAT: Moving StreamCopyDescription command into a NotForLicensees folder, since it's only meant to be used by engine developers.

Change 3542410 by Ben.Marsh

	UBT: Deprecate accessing properties through BuildConfiguration.* or UEBuildConfiguration.* from .target.cs files. These have been aliases to the current TargetRules instance for several releases already.

Change 3543018 by Ben.Marsh

	UBT: Deprecate the BuildConfiguration and UEBuildConfiguration aliases from the ModuleRules class. These have been implemented as an alias ot the ReadOnlyTargetRules instance passed to the constructor for several engine versions.

Change 3544371 by Steve.Robb

	Fixes to TSet_Add and TMap_Add BPs.

	#jira UE-47441

[CL 3548391 by Ben Marsh in Main branch]
2017-07-21 12:42:36 -04:00
Matt Kuhlenschmidt
70d3bd4b72 Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3497164)
#lockdown Nick.Penwarden
#rb none

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

Change 3433074 by Matt.Kuhlenschmidt

	Fix crash when clicking on certian tutorial blueprints.

	#jira UE-44593

Change 3433075 by Matt.Kuhlenschmidt

	Remove hittest grid log spam.  The underlying problem causing this has been fixed

Change 3433077 by Matt.Kuhlenschmidt

	Fix lighting becoming unbuilt when mesh painting

	#jira UE-44837

Change 3433081 by Matt.Kuhlenschmidt

	PR #3553: Crashfix for static array properties (Contributed by Pierdek)


Change 3433104 by Alexis.Matte

	Make sure re-import skeletal mesh follow the import morph option
	#jira UE-42846

Change 3434825 by Matt.Kuhlenschmidt

	Fix crash when GC happens while the vr editor radial menu is open.

Change 3434831 by Matt.Kuhlenschmidt

	Added missing file

Change 3434868 by Shaun.Kime

	If you have a reroute node between a Material Function texture input and its usage, the parent material will fail to resolve the reroute node.

	#jira ue-44670

Change 3434998 by Alexis.Matte

	Meshes editors material/section panel are now fully transactional
	- Staticmesh editor: section material slot, section cast shadow, section collision, material slot instance, material slot name
	- Skeletal mesh editor: material slot instance, material slot name
	Also fix some transaction description

	#jira UE-44462

Change 3435195 by Jamie.Dale

	Fixed incorrect handling of some LTR scripts that require shaping

	These scripts need to go through HarfBuzz, and this also fixes a case where HarfBuzz wasn't applying font scale correctly.

	#jira UE-44767

Change 3435199 by Jamie.Dale

	Fixed some crashes/artifacts with bidirectional text

	It was possible for a line to compute an incorrect range, which could cause crashes or other highlighting issues. The highlighting logic has also been updated as the old code didn't handle all bidirectional cases correctly.

Change 3435200 by Jamie.Dale

	Fixed a grapheme cluster metrics issue in the font editor viewport

	The viewport also now respects the default shaping method CVar.

Change 3435771 by Alexis.Matte

	Fix degenerated bounds calculation for skeletalmesh when the skeleton is remove from a re-import
	(PhysicAsset API change, adding 1 function)
	#jira UE-44609

Change 3436856 by Jamie.Dale

	Added some missing Unicode block ranges

Change 3436914 by Jamie.Dale

	Adding some missing combining character ranges to the text shaper

Change 3436923 by Alexis.Matte

	PR #3463: Get bounds for all triangles, not just the first one. WedgeIndex was . (Contributed by DaveC79)
	#jira UE-43764


Change 3436948 by Jamie.Dale

	Updated the Portal to use the predefined Unicode block ranges

Change 3436961 by Max.Chen

	Sequencer: Show camera shake/anim track menus even if there aren't any assets.

Change 3437244 by Max.Chen

	Sequencer: Clear locked cameras when releasing Sequencer.

	#jira UE-44967

Change 3437515 by Arciel.Rekman

	UBT: improvements for LocalExecutor.

	- Larger number of parallel jobs on 16GB+ machines.
	- Use WaitForExit() instead of polling.
	- Tested on Linux and Mac.

Change 3437629 by Matt.Kuhlenschmidt

	Improve asset import data display in static and skeletal meshes

Change 3438047 by Arciel.Rekman

	Fix overlapping ranges being passed to memcpy().

Change 3438822 by Yannick.Lange

	ViewportInteraction: Move gizmo handle files to make them private.

Change 3438906 by Matt.Kuhlenschmidt

	PR #3556: Git Plugin: fix new option "init Git LFS" that make assets read-only (master/UE4.17) (Contributed by SRombauts)


Change 3438907 by Matt.Kuhlenschmidt

	PR #3565: add -quality option to buildlighing commandlet (Contributed by kayama-shift)


Change 3438908 by Matt.Kuhlenschmidt

	PR #3558: UE-44862: Always update SColorPicker color on OK button (Contributed by projectgheist)


Change 3439393 by Matt.Kuhlenschmidt

	Force highest LOD for highres screenshots

Change 3439819 by Matt.Kuhlenschmidt

	Turned FAssetData into a struct for some upcoming script exposure of FAssetData

Change 3439949 by Arciel.Rekman

	Fixed selection logic for the UE4_LINUX_USE_LIBCXX environment variable.

	- Allows disabling libc++ by setting the variable to 0.
	- Pull request #3576 contributed by jared-improbable.


Change 3441078 by Jamie.Dale

	The culture/language/locale console commands are now available in all build configs

Change 3441109 by Jamie.Dale

	Text containing surrogate pairs now runs through HarfBuzz when shaping in Auto mode

	This is needed as the kerning-only shaping code assumes that everything is within the BMP

Change 3441275 by Matt.Kuhlenschmidt

	Disable spinning on location and scale.  These dont work because we have no notion of infinite spinning

Change 3442748 by Yannick.Lange

	ViewportInteraction: Remove unused console variables.

Change 3442775 by James.Golding

	Add support for editing MaterialFunctions to MaterialEditingLibrary
	Pull Material recompile/update code into UMaterialEditingLibrary::RecompileMaterial
	Pull MaterialFunction update code into UMaterialEditingLibrary::UpdateMaterialFunction util
	Move RebuildMaterialInstanceEditors to UMaterialEditingLibrary
	Added test content for Material/MaterialFunction editing
	Add needed BlueprintReadWrite to expressions (constants, function input/output)
	Expose UMaterialExpressionMaterialFunctionCall::SetMaterialFunction to BP, rename old func (which takes old function) to SetMaterialFunctionEx, also expose GetInputNameWithType

Change 3442779 by James.Golding

	Fix header order

Change 3442817 by Yannick.Lange

	ViewportInteraction: Add can execute checks for level editor commands.

Change 3443038 by Michael.Dupuis

	#jira UE-43377: When you select a foliage actor we will move all instance contained in it to the new level as we can't move a foliage actor
	Only permit moving foliage instance if there is some selected

Change 3443855 by Michael.Dupuis

	#jira UE-44885:  Unregister from PerModuleDataObjects when the object is destroyed

Change 3446096 by Max.Chen

	Sequencer: Add OnFinished() event when a level sequence completes playback

	#jira UE-45173

Change 3446097 by Max.Chen

	Sequencer: Evaluate one last time before the sequence is torn down and reset

	#jira UE-45174

Change 3446242 by Jamie.Dale

	Fixed caret not appearing in empty text layouts

	Caret selections have no range, and therefore have no width

Change 3446361 by Matt.Kuhlenschmidt

	Fix WITH_EDITOR only functions causing generated code compile errors when the all functions on the class are WITH_EDITOR

Change 3446457 by Alexis.Matte

	Polish the speed tree import dialog

	#jira UE-44963

Change 3446946 by Michael.Trepka

	Modified FWindowsWindow::GetRestoredDimensions to return correct window position for normal windows for which GetWindowPlacement returns position in workspace coordinates

	#jira UE-37934

Change 3447543 by Arciel.Rekman

	Reduce VMAs on Linux.

	- Trades off increased address space (VIRT in terms of ps/htop) for smaller number of distinct mappings (VMAs, virtual memory areas).
	  This decreases possibility to run into vm.max_map_count limit on Linux.
	- Tested on Linux and Mac.

Change 3448468 by Arciel.Rekman

	Fix race condition during creation of GMalloc.

	- On Mac GMalloc can be created on two different thread that are racing with each other - app's main thread and a system thread.

Change 3449012 by Max.Chen

	Sequencer: Add time to transform, color and vector key structs so that key times are editable from the key editors.

	#jira UE-45089

Change 3449018 by Max.Chen

	Sequencer: Add OnCameraCut event that fires when there is a camera cut.

	#jira UE-45137

Change 3449195 by Max.Chen

	Sequencer: Add setting for limit scrubbing to playback range.

	#jira UE-43502

Change 3449198 by Max.Chen

	Sequencer: Reorder hierarchical bias so that group priority takes precedence.

Change 3449217 by Max.Chen

	Sequencer: Add setting to activate realtime viewports when in sequencer.

Change 3449219 by Max.Chen

	Sequencer: Focus on search boxes when opened.

Change 3449238 by Max.Chen

	Sequencer: Assign actor should replace the actor itself after it has updated all the components. Also, replace components be fullname rather than by class.

Change 3449239 by Max.Chen

	Sequencer: Fix offsets when moving multiple sections. Dragging should be clamped to the bounds that any of the selected sections hits against the unselected sections.

Change 3449241 by Max.Chen

	Sequencer: Restore section selection after full tree rebuild.

Change 3449279 by Max.Chen

	Sequencer: Set movie scene capture frames only when not using custom frames. This allows the user entered frame numbers to persist in config, rather than overwriting them when doing a "Render Shot"

Change 3449280 by Max.Chen

	Sequencer: Spawn in the persistent level. Otherwise, they get spawned into whatever sublevel is current.

	#jira UE-44552

Change 3449294 by Max.Chen

	Sequencer: Null check for sequencer ed mode crash.

Change 3449297 by Max.Chen

	Sequencer: Fix delay in sliding values. Mark changed when sliding values. Mark refresh immediately when committing values since OnValueChanged will be called and needs to have the correct value that was refreshed immediately.

	#jira UE-42866

Change 3449542 by Max.Chen

	Sequencer: Fix scrubber hit testing so that the time scrubber is really favored over the playback ranges.

	#jira UE-44569

Change 3451507 by Matt.Kuhlenschmidt

	Fix extra slate uv coords not functioning on ES2

Change 3451510 by Matt.Kuhlenschmidt

	PR #3595: Fixed wrong colour for level status (Contributed by ronve)


Change 3451529 by Alexis.Matte

	fbx scene importer: Make sure we set INVALID_UNIQUE_ID to node that has no attribute.
	#jira UE-34410

Change 3451611 by Yannick.Lange

	ViewportInteraction: Dragging gizmo without second pass for snapped calculations.

Change 3452134 by Jamie.Dale

	Fixed constant font cache flushing if a widget had no font set

Change 3452239 by Jamie.Dale

	Fixed constant font measure flushing if a widget had no font set

Change 3452243 by Jamie.Dale

	Removed deprecated code for creating fonts from bulk data

Change 3452277 by Jamie.Dale

	The concept of "stale" composite fonts is now editor-only

Change 3452358 by Alexis.Matte

	Fbx scene importer: Do not remove existing attribute reference from the blueprint if the reimport of the associate mesh attribute is not tick.
	#jira UE-45232

Change 3452678 by Max.Chen

	Sequencer: Fix crash on export if there's no shot data.

Change 3453057 by Matt.Kuhlenschmidt

	Exposed asset exporting to script

Change 3453782 by Andrew.Rodham

	Sequencer: Fixed deterministic cooking issues with movie scene data
	  - Movie scene signatures are now initialized in PostInitProperties
	  - A warning is now presented when attempting to cook old data that was never serialized with a signature.
	  - Removed redundant legacy data upgrade logic that could dirty level sequences on load.

	#jira UE-44912

Change 3453788 by Yannick.Lange

	ViewportInteraction: Custom scene proxy for gizmo handles.

Change 3453938 by Max.Chen

	Sequencer: Hotkeys (shift , and shift .)  to step to next/previous shot

	#jira UE-45119

Change 3454058 by Michael.Dupuis

	Fixed StaticAnalysis

Change 3454077 by Max.Chen

	Sequencer: Fix not saving the pre-animated track value when creating a track/key.

	On pre object change, broadcast property change so that a track or key can be created. That track/key needs to be evaluated immediately so that the pre-animated state can be saved properly. This is done now with RefreshAllImmediately and is only called when a track has been created. Also, added a return value for OnKeyProperty, so that it's known what changed in particular (ie. track created, track modified, etc)

	Also, fixed transform keying so that if a transform track already exists for the object or the scene component, the existing track is used.

	#jira UE-45130

Change 3454108 by Nick.Darnell

	UMG - Fixing the WIC to properly record cursor delta so that scrollbars work.

Change 3454109 by Jamie.Dale

	Cache the text layout source info in non-shipping builds so you can inspect it in the debugger

Change 3454202 by Matt.Kuhlenschmidt

	Fix bogus error message about the number of usable texture coordinates on ES2 when compiling a UI domain material

Change 3454390 by Yannick.Lange

	Fix creating a plugin in a C++ project opens a second instance of Visual Studio. Use SourceCodeAccessor to open solution when necessary.
	#jira UE-45035

Change 3454564 by Matt.Kuhlenschmidt

	#rnx Fix deprecation warnings

Change 3455471 by Yannick.Lange

	ViewportInteraction: Fix entering and exiting VR Mode disables gizmo in desktop editor viewport.
	#jira UE-44965

Change 3456183 by Max.Chen

	Sequencer: Auto key, auto track refactor.

	Auto key - create a key when the property changes and there's an existing track.
	Auto track - create a track when the property changes. This is only exposed in the level sequence editor.
	All - create a key and a track when the property changes. This is only exposed in VR Editor.
	None - do nothing.

	#jira UE-43469

Change 3456349 by Andrew.Rodham

	Sequencer: Only perform legacy signature checks on instances, and only where signatures match the CDO

Change 3456678 by Alexis.Matte

	Allow to add null level instance override material via the advance material array. But still limit the override material number to the mesh material number.
	#jira UE-45306

Change 3456945 by Max.Chen

	UMG: Add restore state to 2d transform section.

	#jira UE-45372

Change 3457196 by Arciel.Rekman

	Linux: serialize allocations from the memory pool.

Change 3458434 by Max.Chen

	Sequencer: Remove obsolete set tick prerequites functions.

Change 3458671 by James.Golding

	Added MIC editing support to MaterialEditingLibrary
	Fix static analysis warning

Change 3458888 by Matt.Kuhlenschmidt

	PR #3615: More detailed log messages for debugging warnings/errors (Contributed by projectgheist)


Change 3458893 by Matt.Kuhlenschmidt

	PR #3583: UE-44960: Delta value wasn't being used (Contributed by projectgheist)


Change 3458895 by Matt.Kuhlenschmidt

	Fix typo

Change 3458902 by Matt.Kuhlenschmidt

	PR #3607: Improved InputKeySelector functionality (Contributed by projectgheist)


Change 3458917 by Matt.Kuhlenschmidt

	Fix crash with invalid object properties in the class picker

	#jira UE-39000

Change 3458939 by Matt.Kuhlenschmidt

	Fix compile error

Change 3458984 by andrew.porter

	QAGame: Initial check in of sequencer smoke test map

Change 3459510 by Matt.Kuhlenschmidt

	Fixed ensure when deleting a map that contains build data which also happens to be the currently loaded map.

	#jira UE-45052

Change 3460985 by Max.Chen

	Sequencer: Snap play time to keys now allows scrubbing between keys and snaps to key times within a certain screenspace tolerance.

	#jira UE-45090

Change 3461698 by Arciel.Rekman

	Avoid using ARRAY_COUNT in Vulkan.

	- Sometimes those arrays can have no extensions whatsoever, and it is illegal to declare a 0 element C array.

Change 3462053 by Max.Chen

	Sequencer: Show sequencer spawnables in the world outliner and add the icon overlay for spawnables.

	#jira UE-43470

Change 3462139 by Max.Chen

	Property Editor: Add objects to FPropertyAndParent

Change 3462202 by Arciel.Rekman

	Fix FSocket::Recv() blocking with Peek when there's no data.

Change 3462253 by Nick.Darnell

	Slate - New Clipping System

	Clipping is now a stateful choice made during composition of the slate hierarchy.  Previously every widget got to respect or modify the clipping rect on an as needed basis.  The problem was that clipping was only allowed in the layout space of the widget, and it wasn't possible to properly clip elements with render transforms.  The new system permits all kinds of transforms on any widget, and they will all be clipped correctly.  It tries to use Scissor Rects as they are much cheaper, but will switch over to stenciling if need be to represent a complicated masking structure with several rotated clipping rects all needed to be combined together.

	Here are the new clipping states a widget can have, almost all widgets are set to No.  Only change it from No if your widget actually needs to clip, generally speaking most widgets don't need to clip.

	/**
	 * This widget does not clip children, it and all children inherit the clipping area of the last widget that clipped.
	 */
	Inherit,
	/**
	 * This widget clips content the bounds of this widget.  It intersects those bounds with any previous clipping area.
	 */
	ClipToBounds,
	/**
	 * This widget clips to its bounds.  It does NOT intersect with any existing clipping geometry, it pushes a new clipping
	 * state.  Effectively allowing it to render outside the bounds of hierarchy that does clip.
	 *
	 * NOTE: This will NOT allow you ignore the clipping zone that is set to [Yes - Always].
	 */
	ClipToBoundsWithoutIntersecting UMETA(DisplayName = "Yes - Without Intersecting (Advanced)"),
	/**
	* This widget clips to its bounds.  It intersects those bounds with any previous clipping area.
	*
	* NOTE: This clipping area can NOT be ignored, it will always clip children.  Useful for hard barriers
	* in the UI where you never want animations or other effects to break this region.
	*/
	ClipToBoundsAlways UMETA(DisplayName = "Yes - Always (Advanced)"),
	/**
	 * This widget clips to its bounds when it's Desired Size is larger than the allocated geometry
	 * the widget is given.  If that occurs, it behaves like [Yes].
	 *
	 * NOTE: This mode was primarily added for Text, which is often placed into containers that eventually
	 * are resized to not be able to support the length of the text.  So rather than needing to tag every
	 * container that could contain text with [Yes], which would result in almost no batching, this mode
	 * was added to dynamically adjust the clipping if needed.  The reason not every panel is set to OnDemand,
	 * is because not every panel returns a Desired Size that matches what it plans to render at.
	 */
	OnDemand UMETA(DisplayName = "On Demand (Advanced)")

	- Large API Change -

	All FSlateDrawElement::Make_____ calls have been deprecated that involved passing in a clipping rect.  You no longer should are passed a Clipping rect via OnPaint.  You are still passed a rect, but this rect represents a Culling Rect, which is valuable if you need to just out right not paint things the user can't possibly see.

	If you were previously trying to determine if you should cull widgets, by doing something like this,

	if ( FSlateRect::DoRectanglesIntersect(MyClippingRect, CurWidget.Geometry.GetRenderBoundingRect()) )

	That's no longer a good option since there are ways for widgets to ignore the culling bounds.  You should convert anything like above to the one below,

	if (!SWidget::IsWidgetCulled(MyCullingRect, CurWidget))

	To assist in debugging efforts, there are several new debugging console flags in Slate,

	Slate.ShowClipping 1 - Controls whether we should render a clipping zone outline.  Yellow = Axis Scissor Rect Clipping (cheap).  Red = Stencil Clipping (expensive).

	Slate.DebugCulling 1 - Disables pushing clipping or stencil rects to the GPU, but continues to intersect culling rects, so that you can tell if a widget is properly culling children it can't possibly draw.

	Slate.ShowTextDebugging 1 - Show debugging painting for text rendering.

	I've added a new Experimental Feathering Option, it adds AA geometry around the outside of Box and Image brushes.

	Slate.Feathering 1

	If you're using RenderDoc or something similar, you can now enable render events for slate, so that you can better grok how we're batching and changing states for each UI render pass.

	Slate.EnableDrawEvents 1

	#jira UE-4659

	#rn

Change 3462714 by Nick.Darnell

	Fixing a few more compiler issues with the clipping changes.

Change 3462726 by Max.Chen

	Switch OnEditStructChildContentsChanged to use FObjectWriter instead of FMemoryWriter which supports serializeing UObjects. This fixes a crash when adding actor array elements to a user defined event struct.

	#jira UE-45431

Change 3462801 by Nick.Darnell

	Adding a UMG dependency to EngineTestBuild.

Change 3462914 by Max.Chen

	Sequencer: Fix regression where spawnables aren't getting saved. Caused by 3407138

	#jira UE-30007
	#jira UE-39003

Change 3462946 by Nick.Darnell

	Automation - Tweaking the UI automation tests converting them over to use the new UI Screenshot automation test.
	Automation - Adding a blur widget test.

Change 3462987 by Matt.Kuhlenschmidt

	Back out changelist 3458893

Change 3464774 by Matt.Kuhlenschmidt

	PR #3629: Bugfix: Missing small icon in Project Launcher profile editor (Contributed by aarmbruster)


Change 3464785 by Nick.Darnell

	Fixing some clipping stuff in the editor.

Change 3464830 by andrew.porter

	QAGame: Second pass on sequencer smoke test map

Change 3464902 by Nick.Darnell

	Loading - Adding some additional checks to the the loading code to ensure we're on the main thread.  Additionally adding a fix from UDN that prevents deadlocks in the rare case a user hits Alt+Tab in a fullscreen game while in a hard loading screen.

Change 3464988 by Max.Chen

	Sequencer: Add attenuation settings for attached audio components.

	#jira UE-33080

Change 3465024 by Nick.Darnell

	MoviePlayer - Impoving the playback mode displaynames.

Change 3465074 by Arciel.Rekman

	Fix shadowing issues of GraphicsPSOInit.

Change 3465097 by Matt.Kuhlenschmidt

	Some refactoring of the details panel

	Exposed new methods of adding a struct on scope to a details panel and have it work properly with customizations. The scruct on scope has a "fake" ustructproperty that allows the details panel to show the whole struct not just an individual property.

	Refactored the API for adding rows to details panels to make it more consistent\
	AddChildCustomBuilder->AddCustomBuilder
	AddChildGroup->AddGroup
	AddChildContent->AddCustomRow
	AddChildPropert->AddProperty
	AddChildStructure->AddExternalStructureProperty
	AddStructure->AddAllExternalStructureProperties
	AddExternalProperty->AddExternalObjectProperty or AddExternalStructureProperty

Change 3465186 by Max.Chen

	Sequencer: Save the BindingID in the pre animated token producer so that it can be destroyed properly. This fixes a bug where the default state of a spawnable isn't saved.

	#jira UE-43780

Change 3465315 by Matt.Kuhlenschmidt

	Fix Fortnite and Orion details panel customization warnings

Change 3465424 by Nick.Darnell

	Automation - Moving the step for setting the link to the automation reports to be set before we start the engine.

Change 3465488 by Nick.Darnell

	Automation - Forcing textures to load before taking screenshot, so that the scene gets another opportunity to render before we render with Slate.  This should fix the Blur UI Test.

Change 3466277 by Arciel.Rekman

	Linux: fix window drift when dragging (UE-40380).

	- Change by Cengiz Terzibas.

Change 3466370 by Nick.Darnell

	UMG - Fixing the colors for the resize handle in the designer.

Change 3466372 by Nick.Darnell

	UMG - Fixing the ruler ticks sometimes not being drawn.

Change 3466374 by Nick.Darnell

	UMG - Fixing the designer showing multiple options for sequencer.

Change 3466377 by Nick.Darnell

	UMG - Cleaning up some clipping bits.

Change 3467025 by Andrew.Rodham

	Re-saving assets that contain legacy (<4.15) movie scene data to remove deterministic cook warning.
	If conflicts arise during merging of these assets, please ignore the changes made in dev-editor, and accept game-side changes.

	(CIS step 62283298, jobId 7773146)
	(CIS step 62283297, jobId 7773146)

Change 3467099 by Max.Chen

	Fix GetObjectPropertyClass ensure logic. This was returning UObject::StaticClass when valid.

Change 3467172 by Max.Chen

	Sequencer: Evaluation optimizations. Also, fixes subsequences not getting expired, leaving dangling spawnables.

	#jira UE-43690

Change 3467192 by Matt.Kuhlenschmidt

	Fix transactions getting stuck in the color grading controls.  This prevents PIE from working properly and causes shutdown crashes

	#jira UE-45527

Change 3467251 by Yannick.Lange

	ViewportInteraction: Fix scale and rotation snap while dragging with two lasers.

	#jira UE-43489

Change 3467331 by Matt.Kuhlenschmidt

	Fix D3D shader compiler hard coding shader path and not giving proper warnings when it cannot find the shaders

Change 3467335 by Matt.Kuhlenschmidt

	Remove DarkStyle attribute from SNumericEntryBox and allow a spin box style to be passed to it.

Change 3467558 by Max.Chen

	Scene Outliner: Generic support to add default columns to a scene outliner.

Change 3467565 by Jamie.Dale

	Removing old screenshot data for test

Change 3467589 by Nick.Darnell

	Editor - Random cleanup.

Change 3467596 by Nick.Darnell

	Progress Bar - Exposing Border Padding to UMG.

Change 3467600 by Nick.Darnell

	Slate - Adjusting the rendering of the splitter, previously it could be off by a pixel or two, which becomes more apparent now with the clipping changes.

Change 3467601 by Max.Chen

	Property Editor: Fix static analysis warning

Change 3467662 by Nick.Darnell

	Automation - Fixing a bug with the screenshot comparison tool not replacing (removing) the old screenshot data.

Change 3467674 by Max.Chen

	Property Editor: Fix static analysis warning

Change 3467737 by Max.Chen

	Sequencer: Added OnMovieSceneBindingsChanged delegate

Change 3468053 by tim.gautier

	QAGame: Updating Editor Smoke Map

	- Updated landscapes into Stations for testing

	- Added Foliage Sublevel

Change 3468194 by Arciel.Rekman

	Linux: fix problems communicating with various STL-using libs.

	- Stop hiding global new/delete signatures.
	- Disable CEF3 since this change uncovers the problem with libcef.so not built to use bundled libpng.

Change 3468678 by Max.Chen

	Sequencer: Set "Sequencer Actor" tag before setting the actor label so that the outliner refreshes after the actor has the tag.

Change 3469314 by tim.gautier

	QAGame: Added Painted Foliage / Spline section to EditorSmoke map

Change 3469377 by Nick.Darnell

	Slate - Fixing some warnings in a couple of sample games due to the clipping changes.

	#rnx

Change 3469767 by Max.Chen

	Sequencer: Outliner column and sequencer binding data

	#jira UE-43470

Change 3469974 by Arciel.Rekman

	Fix code projects not working in Linux installed build.

Change 3470082 by Nick.Darnell

	Slate - The GetRenderer() call on SlateApplication no longer returns a SharedPtr, rather than convert it to a thread safe ptr, going to just make accessing it a raw ptr return, so it can be safely referenced on the game thread while being used on the slate loading thread.

Change 3470174 by Nick.Darnell

	Slate - Get the last widget in a widget path utility.

Change 3470176 by Nick.Darnell

	UMG - User Widgets now have an easy way to know if they're part of or have been removed from the focused widget path, which is handy for doing effects.

Change 3470261 by Nick.Darnell

	Slate - The GetRenderer() call on SlateApplication no longer returns a SharedPtr, rather than convert it to a thread safe ptr, going to just make accessing it a raw ptr return, so it can be safely referenced on the game thread while being used on the slate loading thread.

Change 3470286 by Max.Chen

	Sequencer: Scene Component's HiddenInGame now goes through the VisibilityTrack and the visibility template.

Change 3470366 by Nick.Darnell

	Slate - We now version focus per user, that way during focus events, we can safely abort focus events and state transitions if someone interrrupts the active focus event with something new.

Change 3470649 by Matt.Kuhlenschmidt

	Fix deprecation warnings

Change 3470695 by Matt.Kuhlenschmidt

	Fixed typo

	#jira UE-45580

Change 3470721 by Matt.Kuhlenschmidt

	Fix static analysis

Change 3471254 by Michael.Dupuis

	#jira UE-42952: Keep occlusion result per view

Change 3471287 by Nick.Darnell

	UMG - Render Focus Rule now defaults to never.

Change 3471291 by Nick.Darnell

	Slate - Fixing FSlateRenderer* change fallout.

Change 3471299 by Nick.Darnell

	Slate - Fixing FSlateRenderer* change.

Change 3471323 by Nick.Darnell

	Automation - Fixing automation and Static Analysis warning.

Change 3471413 by andrew.porter

	QAGame: Added test content for anim blending and material parameteres to sequencer smoke level

Change 3471649 by Max.Chen

	Sequencer: Modify the track when adding animation

	#jira UE-45618

Change 3471659 by Matt.Kuhlenschmidt

	Added a way to check if a movie is playing from the engine.
	Prevented viewport redraws for canvas loading screens if a slate based loading movie is playing

Change 3471734 by Matt.Kuhlenschmidt

	Added basic material hookup to USD.  Similar to FBX it will find materials based on rules specified by the user in the import settings

Change 3472176 by Nick.Darnell

	UMG - Improving the display of the +Track menu in sequencer for UMG.  Renamed it from +Add, which is repetitve to +Track.  Additionally, the dropdown now shows the currently selected widgets, as well as a submenu containing all the 'important' widgets, so we no longer populate that list with a ton of irrelevant widgets that are just Buton_1 - N, which is pointless in showing people, they'll never guess which is the right button.

Change 3472740 by Max.Chen

	Sequencer: Add GetThisFrameMetaData accessor

Change 3472748 by Max.Chen

	Sequencer: Added OnBeginScrubbing and OnEndScrubbing event delegates

Change 3472753 by Max.Chen

	Sequencer: Add EMovieSceneDataChangeType parameter to OnMovieSceneDataChanged delegate

Change 3472870 by Nick.Darnell

	Clipping - Fixing the deprecated tip for scissor rect boxes to be correct.  Removing it's usage from UT.

Change 3473340 by Max.Chen

	Scene Outliner: Add ability to register additional filters

Change 3473348 by Max.Chen

	Details View: Make ForceRefresh virtual. Added accessors to delegates (ie. GetIsPropertyReadOnlyDelegate)

Change 3473441 by Max.Chen

	Sequencer: Autokey Refactor Part 2.

	Autokey is now a single toggleable state.

	Allow Edits Mode has 3 states:
	  Allow All Edits - Allow any edits to occur, some of which may produce tracks/keys or modify default properties.
	  Allow Sequencer Edits Only - All edits will produce either a track or a key.
	  Allow Level Edits Only - Properties in the details panel will be disabled if they have a track.

	#jira UE-45229

Change 3473670 by Nick.Darnell

	Modules - The module manager no longer returns sharedptrs to IModuleInterfaces, this was the source of rare hard to track down crashes due to a shared ptr reference leak when GetModule was called on non-main threads.  We now store a TUniquePtr internally, and only lease out raw pointers.

	#rn

Change 3473711 by Nick.Darnell

	Disabling the ensure in the module manager.

Change 3473747 by Max.Chen

	Sequencer: Fix tooltip

Change 3474091 by Jamie.Dale

	Added a warning when cooking a UFontFace that is outered to a UFont asset

	These cause issues with iterative COTF, and should be split off into their own assets (as the UI has been asking people to do for several versions)

Change 3475052 by Yannick.Lange

	VR Editor: Fix Crash when quitting the editor with VR Mode enabled. VR Editor was being enabled when saving the map on closing the editor.

	#jira UE-45415

Change 3475054 by Yannick.Lange

	Fix crash when adding a camera to the world in VR Mode the second time. The slate application did not reset when stop dragging in VR Mode, so the second time when starting to drag a camera out of the UI it would already by in a dragging state.

	#jira UE-45574

Change 3475263 by Nick.Darnell

	Fixing some additional cases of IModuleInteface SharedPtr usage.

Change 3475268 by Max.Chen

	Sequencer: Set jumped state when looping playback. This fixes an issue where audio doesn't stop and restart when looped.

	#jira UE-45654

Change 3475269 by Max.Chen

	Scene Outliner: Additional filters should only apply to actor browsing mode

Change 3475407 by Nick.Darnell

	Fixing some clipping / module shared ptr changes in the launcher code.

Change 3475542 by Max.Chen

	Sequencer: Update thumbnail and section highlighting to use new clipping behavior.

	#jira UE-45692
	#jira UE-45689

Change 3475743 by Michael.Dupuis

	#jira UE-45183: When updating phyx region take into account simple collision mip

Change 3475949 by Arciel.Rekman

	Remove PhysX deoptimization (no longer needed).

	- OR-24947 has been closed three months ago.

Change 3476022 by Michael.Dupuis

	#jira UE-45560: Make sure we're not going out of range

Change 3476063 by Michael.Dupuis

	#jira UE-45562: Do not try to unregister from static mesh if no static mesh is specified for the component

Change 3476168 by Michael.Trepka

	Added handling of directory symlinks to FApplePlatformFile::IterateDirectory

	#jira UE-43704

Change 3476172 by Nick.Darnell

	Fixing a Imoduleinterface change.

Change 3476183 by Jamie.Dale

	Exposing GoTo/ScrollTo to single-line editable text for API parity with multi-line editable text

Change 3476385 by Arciel.Rekman

	Linux: handle symlinks when iterating directories.

Change 3476522 by Michael.Trepka

	Solved a problem with Mac FMallocTBB::Malloc() returning nullptr for 0 bytes allocations, which is inconsistent with other platforms. On Mac we always scalable_aligned_malloc, which behaves differently than scalable_malloc, so for 0 bytes requests we allocate sizeof(size_t), which is exactly what scalable_malloc does internally in such case.

Change 3476806 by Nick.Darnell

	UMG - Focus the designer after dropping a widget onto the surface.

Change 3476809 by Nick.Darnell

	Curve Editor - Enable Clipping on the curve editor.

Change 3477475 by Nick.Darnell

	Fixing a module interface shared ptr usage in UT.

Change 3477553 by Yannick.Lange

	VR Editor: Removed AssetEditorPanelID and replaced it with TabManagerPanelID. A panel for AssetEditorPanelID was never created making it impossible to open an asset editor.

Change 3477734 by Yannick.Lange

	VR Editor: Fix Warning: SetRelativeScale3D : Invalid Scale entered (X=inf Y=inf Z=inf). Resetting to 1.f. warning when adding CineCameraActor to World from Modes Panel. Make sure to not divide by zero when there is no boundary scale.

	#jira UE-44933

Change 3477761 by Jamie.Dale

	Some improvements to avoid loading the native .locres files twice when we don't need to

Change 3477780 by Nick.Darnell

	PR #3250: Return correct VirtualUserIndex (Contributed by projectgheist)


Change 3477786 by Nick.Darnell

	PR #3650: Changed TestNull to accept const pointers. (Contributed by e-agaubatz)


Change 3477795 by Nick.Darnell

	PR #2844: UE-36936: Don't stretch container for Plugin Image (Contributed by projectgheist)


Change 3478092 by Nick.Darnell

	PR #2341: Optional Middle Mouse Button panning in Graph Editor (Contributed by flipswitchingmonkey)
	Engine Edit - Made some small changes to the enum type, and some naming.


Change 3478450 by Nick.Darnell

	Fixing some uninitialized variable errors.

Change 3479827 by Andrew.Rodham

	Sequencer: Addressed serialization issues with some struct types

Change 3479874 by Jamie.Dale

	Fixed "NativeGameLanguage" not being used correctly during localization initialization

Change 3480012 by Andrew.Rodham

	Sequencer: Fixed loading tagged properties as native for track identifiers

	#jira UE-45823

Change 3480337 by Alexis.Matte

	Fix morph target crash missing some valid index check

Change 3480804 by Alexis.Matte

	Fix crash with ColorGradingMode custom detail

	#jira UE-45638

Change 3480892 by Andrew.Rodham

	Sequencer: Ensure that movie scene sequences know about the editor object version

	#jira UE-45842

Change 3481073 by Nick.Darnell

	Fix the shader compiler error from main in Slate.

Change 3481303 by Nick.Darnell

	UMG - Fixing a bug with the drag handle not working correctly in HDPI mode.

Change 3481308 by Nick.Darnell

	Slate - Tweaking the IsWidgetCulled logic to consider both the layout and rendering bounds.  If we do this, we get a much more desireable outcome for people that want to animate widgets and such and plan to have temporary animations to move the widget offscreen, but want the layout bounds to anchor that widget in the visible frame so that it animates even when normally it would be culled b/c the render transform and therefore the renderbounds moved it completely outside the culling rect.

Change 3481629 by Max.Chen

	Sequencer: Add Level Sequence Actor as an output for CreateLevelSequencePlayer()

	#jira UE-45785

Change 3481899 by Yannick.Lange

	VR Editor: Added debug modetoggle command with an event that is broadcasted whenever this happens. Currently this is used to show all the floating UIs of the UI system to debug without HMD using VREd.ForceVRMode.

Change 3481984 by Michael.Dupuis

	#jira UE-45845: always validate if we have a static mesh before trying to access it as user can decide to not assign one and use the tools

Change 3482047 by Nick.Darnell

	Slate - Adding some comments to IsWidgetCulled.

Change 3482110 by Nick.Darnell

	Slate - IsWidgetCulled is no longer static and is now called IsChildWidgetCulled.

Change 3482136 by Jamie.Dale

	The CamelCase break iterator now treats digits around character tokens as part of the identifier

Change 3482138 by Michael.Dupuis

	#jira UE-45854: Properly unregister during undo operation

Change 3482150 by Michael.Dupuis

	#jira UE-45845 : Add missing nullcheck for GetStaticMesh

Change 3482153 by Nick.Darnell

	Slate - IsWidgetCulled is no longer static and is now called IsChildWidgetCulled.

Change 3482180 by Nick.Darnell

	UMG - Widget Components do not need to define a widget class to be rendererd, they can have native slate widgets only.  This was a regression from main.

Change 3482273 by Nick.Darnell

	UMG - Tweaking some more things about the widget component box outline.

Change 3482308 by Alexis.Matte

	Fixing morph target smooth group support. Do not call FillSkeletalMeshImportData more then once on FbxNode since this fonction is doing some conversion and change the FbxNode, applying those conversion twice do not return the same faces smooth group.
	#jira UE-45696

Change 3482327 by Nick.Darnell

	UMG - More tweaks to the WidgetComponent so both shows the box outline, but works in game and VR editor.

Change 3482705 by Andrew.Rodham

	Resaving assets that contain legacy data to suppress CIS warnings.
	  - If conflicts arise in these assets, please take game-side changes and ignore these.

Change 3484245 by Max.Chen

	Sequencer: Evaluate on end scrub. This fixes a bug where audio doesn't evaluate in a stopped position at the end of scrubbing, causing it to not stop all sounds. This fixes a bug introduced from 3365018 where evaluate on end scrub was removed.

	#jira UE-45905

Change 3484263 by Max.Chen

	Sequencer: Fix crash on forcing refresh of details panel on release.

	#jira UE-45911

Change 3484431 by Andrew.Rodham

	Resaving assets that contain legacy data to suppress CIS warnings.
	  - If conflicts arise in these assets, please take game-side changes and ignore these.

Change 3484474 by Alexis.Matte

	Fix the morph target animation curve name matching.

	#jira UE-20294

Change 3484475 by Alexis.Matte

	When removing a LOD, make sure we remove all morph target data associate to the LOD.

Change 3484489 by Nick.Darnell

	PR #3668: UE-45908: Cache debug line locations when performing a LineTraceMulti (Contributed by projectgheist)

	#jira UE-45908

Change 3484692 by Nick.Darnell

	Slate - Reverting a change from a game stream.  All Arranged Children don't need to allocated 42 to begin with.  Do need to initialize WidgetPaths better.

Change 3484703 by Nick.Darnell

	Player Input - Making the input event loop for players obey EKeys::NUM_TOUCH_KEYS, rather than being set to Touch10, as the maximum touch input amount, to make supporting greater than 10 touches easier.  Also making the seeding of keys use EKeys::NUM_TOUCH_KEYS.

	#jira UE-43213

Change 3484918 by Jamie.Dale

	Fixed font measuring regression with RTL text

	RTL applies the character count to the next glyph, so it shouldn't process the end of the loop (this was how the older code used to work).

Change 3485718 by Nick.Darnell

	Editor - Removing Super Search & User Feedback button.

Change 3485719 by Nick.Darnell

	Portal - Removing SuperSearch.

Change 3485751 by Matt.Kuhlenschmidt

	Fix crash accessing platformer game menu if the menu is open during a console based load

	#jira UE-45950

Change 3486047 by Arciel.Rekman

	Linux: add OpenEXR implementation (UE-40270).

	#jira UE-40270

Change 3486467 by Max.Chen

	Sequencer: Reset max tick rate when destroyed.

	#jira UE-45956

Change 3486477 by Max.Chen

	Sequencer: Refresh outliner when column is removed.

	#jira UE-45891

Change 3486667 by Andrew.Rodham

	Added missing include

Change 3486724 by Andrew.Rodham

	Sequencer: Fixed curves with no default value, and no keys being evaluated and applied to properties
	  - Also fixed an edge case where a zero (but non-animated) channel could be applied to a final transform

Change 3486730 by Alexis.Matte

	In the Auto-Reimport options, hide the mout point only for the default /Game/ folder
	#UE-45684

Change 3486749 by Alexis.Matte

	Make sure the parent window of the monitor directory browse folder is set properly
	#jira UE-45682

Change 3486805 by Matt.Kuhlenschmidt

	Additional safety against invalid objects being accessed by slate

Change 3486848 by Alexis.Matte

	Make sure Monitor folder feature support root mount point map folder
	During auto import, give priority to asset import factory over the scene import factory
	#jira UE-45691

Change 3486879 by Andrew.Rodham

	Removing obsolete QA assets

Change 3486950 by Nick.Darnell

	PR #2281: Scrollbar missing features and SScrollbar fixes (Contributed by SNikon)
	Review - made some adjustments from the original.


Change 3486954 by Nick.Darnell

	Slate - Moving the STableViewBase over to the FOverscroll class, rather than it's own clone.

Change 3486967 by Nick.Darnell

	Slate - Fixing some HDPI calculations for fitting new windows on screen, it was using the unscaled size of the widgets for fitting, when it needed to scale them up.

Change 3486970 by Andrew.Rodham

	Sequencer: Delay mouse capture until drag for sequencer time slider
	  - Fixes context menus not opening as a result of mouse capture being taken on mouse down

	#jira UE-45937

Change 3486984 by Andrew.Rodham

	Sequencer: Improved blending type iconography

Change 3486996 by Nick.Darnell

	UMG - Adding a way for games to opt-out of the slow widget path, to completely prevent them from being cooked.
	UMG - The movie data is no longer cloned for each new instance that inhabits.  It now keeps a reference to the now publically accessible movie scene data on the class instead.

Change 3487070 by Andrew.Rodham

	Sequencer: Added graphics for key areas that represent empty space

Change 3487195 by Andrew.Rodham

	Sequencer: Changed evaluation groups to always flush implicitly
	  - Due to the latent nature of blended token types, it's no longer safe to rely solely on execution token order between tracks
	  - This fixes an issue where events set in the PostEvaluation stage were executed before blended token actuation

Change 3487322 by Nick.Darnell

	PR #2457: Add .gitdeps.xml-files for plugins support (Contributed by bozaro)


Change 3487363 by Nick.Darnell

	PR #2481: Fix for packing of a project with users plugins (Contributed by yatagarasu25)


Change 3487439 by Nick.Darnell

	PR #2642: Changed private to protected in SVirtualJoystick.h (Contributed by Skylonxe)


Change 3487500 by Arciel.Rekman

	Removed LinuxNativeDialogs.

	- No longer used; has been superceded by SlateDialogs since UE 4.8 (2 years ago).

Change 3487630 by Lauren.Ridge

	Don't create Landscape Info Maps for Editor Preview Worlds or thumbnail worlds

	#jira UE-44885

Change 3487864 by Matt.Kuhlenschmidt

	Exposed the asset registry to blueprints and script.  Works in editor scripts and runtime scripts

	AssetRegistry is now a UInterface object.
	Blueprint users can access various asset registry methods using the asset registry interface (via GetAssetRegistry) and various static helpers in  the AssetRegistryHelpers object
	C++ users should still continue to use IAssetRegistry.

Change 3487879 by Matt.Kuhlenschmidt

	Renamed asset tools uobject helper to UAssetToolsHelpers

Change 3487926 by Lauren.Ridge

	Fixing reset to default not showing up for custom widgets

	#jira UE-44164

Change 3488184 by Matt.Kuhlenschmidt

	PR #3656: Make References/Referencers List copyable (Contributed by user37337)


	#jira UE-45763

Change 3488240 by Matt.Kuhlenschmidt

	Fix compiler issue

Change 3488350 by Lauren.Ridge

	Landscape info map transactional state is based on its world's transactional state

	#jira UE-44885
	#jira UE-46019

Change 3488412 by Matt.Kuhlenschmidt

	Fix reset to default showing up in two different places for some customizations

Change 3488413 by Matt.Kuhlenschmidt

	Fix slate font customization

Change 3488414 by Matt.Kuhlenschmidt

	Fix slate font customization

Change 3488415 by Matt.Kuhlenschmidt

	Missed file

Change 3488565 by Arciel.Rekman

	Add pretty printers for gdb (UETOOL-1171).

	- Committing shelf by Cengiz.Terzibas, with some modifications.

	#jira UETOOL-1171

Change 3489094 by Nick.Darnell

	Slate - The Slate RHI Renderer now caches the TextureLODGroups so that it can properly lookup the filtering of different texture groups that are set to Default, instead of a particular filter override on a texture.
	Engine/Rendering - Simplifying some of the setup logic in TextureLODSettings so that code is shared for setting them up properly after loading from a config file.

Change 3489095 by Nick.Darnell

	PR #2699: GameViewportClient - Added a method to allow setting the viewport cur. (Contributed by rfenner)
	Review - Fixed spacing.


Change 3489108 by Matt.Kuhlenschmidt

	Fix deprecation warning

Change 3489120 by Nick.Darnell

	PR #3478: Fix possible UComboBoxString crash (Contributed by nakosung)


Change 3489147 by Andrew.Rodham

	Sequencer: Adding return value to function to appease static analysis
	  - This function is never compiled, and if it is, it won't compile, but static analysis doesn't know that

Change 3489264 by Nick.Darnell

	Testing - Finishing the thought behind an enum comment.

Change 3489265 by Nick.Darnell

	PR #2750: UE-35164: Button padding (Contributed by projectgheist)


Change 3489267 by Nick.Darnell

	PR #3645: UE-45464: Handle SSlider mouse interaction more accurately (Contributed by projectgheist)


Change 3489632 by Arciel.Rekman

	Correctness changes to MallocPoisonProxy.

	- Missing forwarding functions added.  Incorrect comment removed.
	- Change by Steve.Robb, doing here so it is in 4.17.

Change 3489689 by Arciel.Rekman

	More MallocPoisonProxy changes I missed in previous CL.

Change 3489751 by Matt.Kuhlenschmidt

	Moved editor performance settings out of per-project settings so they can be shared across projects

Change 3489837 by Lauren.Ridge

	Keyboard shortcut for entering/leaving VR Mode is now Alt+V

Change 3491082 by Arciel.Rekman

	Linux: better fix for the crash due to name collision (UE-46040).

	- Put classes in Sequencer module into Sequencer namespace instead of SceneOutliner namespace.
	- Undid change in the SceneOutliner module.

	#jira UE-46040

Change 3491096 by Arciel.Rekman

	Fix UAT compilation on the newest mono.

Change 3491240 by Max.Chen

	Sequencer: Disable key button when allow level edits only is on.

	#jira UE-46060

Change 3491406 by Yannick.Lange

	Fix editor crashes when opening a project that includes a plugin with more than two custom Volume classes. This issue was caused because registering show volume commands is based on finding volume classes. Finding these classes at multiple times resulted in a mismatch of the returned array of volume classes because modules/plugins were still being loaded.

	#jira UE-45806

Change 3491559 by Alexis.Matte

	Make sure we use the good preview mesh when doing a preview
	#jira UE-45963

Change 3491563 by Alexis.Matte

	Fix crash with staticmesh editor LodLevel selection

Change 3491564 by Nick.Darnell

	UMG - Fixing an offset with the grab handles in HDPI mode.

Change 3491595 by Nick.Darnell

	Editor - Fixing a clipping artifact in the pin type dropdown in the blueprint editor.

Change 3491604 by Nick.Darnell

	Back out changelist 3489265

Change 3491615 by Arciel.Rekman

	Added malloc replay proxy (Linux only for now).

	- Allows to dump malloc callstream (without regard to threads) and replay later to study the behavior of different mallocs and/or repro problems.

Change 3491684 by Arciel.Rekman

	Added FMalloc functions I missed.

	- Also moved function bodies into the .cpp file, this does not make a difference in performance in this case.

Change 3491692 by Matt.Kuhlenschmidt

	Some minor fixes to the static mesh editor
	- Fix UV combo button looking non-standard on the toolbar
	- Fix a few combo buttons in the details panel looking too big.

Change 3491702 by Arciel.Rekman

	Do not compile replay proxy-specific code when not used.

Change 3491717 by Michael.Dupuis

	#jira UE-35083:
	The component is now the owner of the PerInstanceRenderData instead of the proxy
	Add an Update path to only update specified instances range
	Always call BuildTreeIfOutdated so we have a standard code path to make sure static mesh are fully loaded before trying to build the tree
	Moved the Instance Buffer aysnc to the base class, as it's not related to UHierarchicalInstancedStaticMeshComponent
	Expose a new property to decide if we require dynamic instance buffer

Change 3491758 by Matt.Kuhlenschmidt

	Fix crash on static mesh editor shutdown

Change 3491873 by Cody.Albert

	Fixed clipping issue in Sequencer curve editor

	#rnx

Change 3491956 by Matt.Kuhlenschmidt

	Fix crash opening the Previewing sub-menu in the level editor settings menu

	#jira UE-46095

Change 3492046 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3492076 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3492165 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3492222 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3492274 by Michael.Dupuis

	#jira UE-46105: Fixed Clang warning

Change 3492338 by andrew.porter

	QAGame: Testing ensure when submitting

Change 3492371 by Nick.Darnell

	UMG - Reverting the animation sharing, cossed GLEO regressions in cooking.  Will look for a better solution.

Change 3492462 by Matt.Kuhlenschmidt

	Fix ensure checking in files through perforce

Change 3492491 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3492505 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3492517 by Jamie.Dale

	The package localization ID is no longer used at all at runtime, and is now truly editor-only

	This should have always been the case, but it was leaked into manifest/archives/PO files in 4.14, and while 4.15 removed it from PO files it was still present in the manifest/archives. This change removes it entirely (unless gathering editor-only data, and even then the PO file will still collapse the entries together for translation), and the deprecated 4.14 export behavior will now produce an error if you attempt to use it.

	After taking this change you'll need to run a gather, import, and compile of your LocRes files to update your game localization to use the new localization IDs.

Change 3492630 by Nick.Darnell

	UMG - Removing some extra cleanup code that's probably overkill and is causing a crash for uses of  "Within" in class meta.

	#jira UE-46124

Change 3492692 by Matt.Kuhlenschmidt

	Fix drop shadows inheriting the outline color of the font.  The outline should still appear but not have a different outline color from fill color

Change 3492714 by Matt.Kuhlenschmidt

	Added outline with drop shadow to font automation test

Change 3492737 by Matt.Kuhlenschmidt

	Fix linux

Change 3492992 by tim.gautier

	Resaving Ocean Widget Blueprints / Sequences to resolve Legacy Sequence Data warnings

	#jira UE-46132

Change 3493089 by Jamie.Dale

	Ensure that the composite font of a font asset is flushed when the font object is GC'd

Change 3493322 by Jamie.Dale

	Fixing null crash

	#jira UE-45758

Change 3494467 by Andrew.Rodham

	Fix Xbox warning

Change 3494852 by tim.gautier

	QAGame: Changed streaming method of QA-EditorSmoke-Landscape to Always Loaded

Change 3494853 by Nick.Darnell

	Another attempt at fixing the automation blueprint SA warning.

Change 3494896 by Arciel.Rekman

	Fix possible null pointer access during Vulkan init.

	- May fix static analysis warnings in UE-46142, although warnings seem to be referring to something else.

	#jira UE-46142

Change 3494987 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3495010 by Matt.Kuhlenschmidt

	Adding additional logging to track down html5 issue

Change 3495212 by Michael.Dupuis

	#jira UE-46143: Properly init the InstanceRenderData during the cooking phase (required by fortnite)

Change 3495536 by Jamie.Dale

	Updating UGameEngine to call its Super::PreExit after performing its own teardown

	This prevents UEngine cleaning up resources that UGameEngine still needs.

	#jira UE-46159

Change 3495551 by Arciel.Rekman

	Another attempt to fix analyzer problem (UE-46142).

Change 3495794 by Jamie.Dale

	Fixing some font cooking warnings by splitting out font faces from their font assets

	#jira UE-45843

Change 3495905 by Matt.Kuhlenschmidt

	Fix USD crash when importing a meshwith no material

[CL 3499771 by Matt Kuhlenschmidt in Main branch]
2017-06-19 20:27:30 -04:00
Peter Sauerbrei
46a3007613 Copying //UE4/Dev-Mobile to //UE4/Dev-Main (Source: //UE4/Dev-Mobile @ 3496193)
#lockdown Nick.Penwarden
#rb none

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

Change 3385029 on 2017/04/07 by Chris.Babcock

	Remove unneeded BILLING permission for Android (it is added by enabling IAP)
	#jira UE-43583
	#ue4
	#android

Change 3388541 on 2017/04/11 by Will.Fissler

	Removed "MacNoEditor" and "WindowsNoEditor" as target platforms in the StrategyTV.uproject.

Change 3390026 on 2017/04/12 by Allan.Bentham

	Allow vertex texture reads on ES3.1 feature level
	#jira UE-43774

Change 3408788 on 2017/04/25 by Dmitriy.Dyomin

	Fixed: -iterativedeploy UAT option

Change 3418253 on 2017/05/02 by Allan.Bentham

	Enable ICF linker option in android tool chain.
	#jira UEMOB-167

Change 3426789 on 2017/05/05 by Jonathan.Fitzpatrick

	#jira UE-43518

	Fixed a missing cast to the proper game mode

Change 3427859 on 2017/05/08 by Dmitriy.Dyomin

	Avoid creating unnecessary FUniqueObjectGuid in foliage (prevents package dirty on actor deletion)

Change 3428842 on 2017/05/08 by Chris.Babcock

	Fix environment variable leakage in ant.bat patch (already in 4.16, didn't make the integration/merge)
	Fix Intermediate/Android/APK/src cleanup (already in 4.16, didn't make the integration/merge)
	#ue4
	#android

Change 3432096 on 2017/05/09 by Dmitriy.Dyomin

	Android LaunchOn improvements

Change 3433937 on 2017/05/10 by Chris.Babcock

	Enable XGE on non-build machine
	#ue4
	#android

Change 3434556 on 2017/05/11 by Dmitriy.Dyomin

	Added mobile separate translucency
	#jira UEMOB-146

Change 3436664 on 2017/05/12 by Dmitriy.Dyomin

	Fixed: missing translucent objects on mobile, fallout from separate translucency

Change 3437328 on 2017/05/12 by Allan.Bentham

	Add android versions of PRAGMA_DISABLE_OPTIMIZATION_ACTUAL and PRAGMA_ENABLE_OPTIMIZATION_ACTUAL

Change 3446874 on 2017/05/18 by Chris.Babcock

	Change FGenericPlatformMemoryConstants and FGenericPlatformMemoryStats to use uint64 instead of SIZE_T to handle >4GB Android devices running in ARMv7 mode
	#jira
	#ue4
	#android

Change 3448354 on 2017/05/19 by Dmitriy.Dyomin

	Added: Support sRGB texture sampling on Android ES 3.1 and Vulkan
	#jira UEMOB-190

Change 3451129 on 2017/05/21 by Dmitriy.Dyomin

	Added project option to limit gpu skinning to 2 bone per vertex (Rendering Settings -> Optimizations -> Limit GPU skinning to 2 bones influence)
	#jira UEMOB-154

Change 3451131 on 2017/05/21 by Dmitriy.Dyomin

	Fixed: NavMesh streaming - stable tile addressing

Change 3451141 on 2017/05/21 by Dmitriy.Dyomin

	Avoid drawing quads for clears on mobile

Change 3453549 on 2017/05/23 by Dmitriy.Dyomin

	Fixed wrong memreport for STAT_TextureMemoryCube, STAT_PrecomputedLightVolumeMemory, STAT_ReflectionCaptureMemory

Change 3458488 on 2017/05/25 by Dmitriy.Dyomin

	Added RenderDoc integration for Android

Change 3458589 on 2017/05/25 by Dmitriy.Dyomin

	Fixed foliage occlusion culling after world origin was rebased

Change 3462146 on 2017/05/26 by Nick.Shin

	HTML5 - merge from Release-4.16 to Dev-Mobile

	#jira none

	#rnx

Change 3462166 on 2017/05/26 by Nick.Shin

	HTML5 - fix viewport after returning from fullscreen

	PR: 113b9ea104

	#jira UE-44419  HTML5 - View does not redraw properly after returning from Fullscreen

	#rn fix viewport after returning from fullscreen

Change 3464093 on 2017/05/28 by Jack.Porter

	Fix for GenerateProjectFiles warnings

	#codereview: Nick.Shin

Change 3465335 on 2017/05/30 by Nick.Shin

	HTML5LaunchHelper.exe - current working directory "/" check

	#jira UE-45302  HTML5LaunchHelper.exe hosts the files in the current working directory on Linux

	#rnx

Change 3465499 on 2017/05/30 by Nick.Shin

	HTML5 - TaskGraph crash fix & compiler fix when STATS disabled

	#jira UE-44811  Projects crash when launching onto Firefox 64-bit

	#rnx

Change 3468295 on 2017/05/31 by Chris.Babcock

	Allow mediaplayer audio to be disable on Android
	#jira UE-45570
	#ue4
	#android

Change 3469099 on 2017/06/01 by Dmitriy.Dyomin

	Fixing mobile separate translucency after merge

Change 3470541 on 2017/06/01 by Chris.Babcock

	Fix Android.NewKeyboard behavior
	#jira UE-45612
	#ue4
	#android

Change 3470576 on 2017/06/01 by Chris.Babcock

	Blacklist DefaultBloomKernel on mobile platforms (unneeded and takes 32MB)
	#jira UE-45548
	#ue4
	#android

Change 3471583 on 2017/06/02 by Allan.Bentham

	#jira UEMOB-361
	Add experimental mobile PIE with device preview launch option.

Change 3471708 on 2017/06/02 by Allan.Bentham

	Fixes for no unity no pch CIS build.
	Add missing #includes

Change 3474619 on 2017/06/05 by Chris.Babcock

	Add support for optional Gradle build system
	#jira UEMOB-229
	#ue4
	#android

Change 3477357 on 2017/06/07 by Dmitriy.Dyomin

	Added GLES for RenderDoc capture on Android

	#contributed by Jimmy Lee (https://github.com/Oculus-VR/UnrealEngine/pull/7)

Change 3477953 on 2017/06/07 by Nick.Shin

	HTML5 memory/executable size pass

	these fixes contains:
	+ build shipping asmjs compressed files (remove serving non-compressed data file)
	+ phsyx updated emscripten toolchain cmake config override (i.e. removed EPIC_BUILD_FLAGS match)
	+ retired "/Script/BuildSettings.BuildSettings" config code
	+ added better verbose feedback to print optimization levels during packaging

	#jira UEMOB-382  HTML5 memory/executable size pass

	#rn a lot of stability fixes

Change 3479142 on 2017/06/07 by Chris.Babcock

	Update Clang version checks and handle 3.9
	#jira UE-45812
	#ue4
	#android

Change 3479416 on 2017/06/08 by Dmitriy.Dyomin

	Fixed UBT crash introduced in CL# 3477357

Change 3479425 on 2017/06/08 by Dmitriy.Dyomin

	Fixed: CustomDepth sampling outside of PP materials on Mobile
	#jira UE-44700

Change 3479600 on 2017/06/08 by Dmitriy.Dyomin

	Do "-skipdeploy" when packaging

Change 3481938 on 2017/06/09 by Dmitriy.Dyomin

	Fixed: LG G6, Samsung Galaxy S8 Letter box issue
	#jira UE-45164

Change 3482725 on 2017/06/09 by Chris.Babcock

	Fix out of bounds access to iChild
	#jira none

Change 3482735 on 2017/06/09 by Chris.Babcock

	Support for NDK14b and start of NDK15 support (Clang 5.0)
	#jira UEMOB-240
	#ue4
	#android

Change 3484209 on 2017/06/11 by Dmitriy.Dyomin

	fixed warning introduced in CL# 3481938

Change 3484256 on 2017/06/11 by Dmitriy.Dyomin

	Fixed: HighresShot with 'Use Customdepth as mask' in Feature level ES2 (Android preview rendering level) leads to Engine crash
	#jira UE-43655

	also requires content changes in CL# 3484255

Change 3484295 on 2017/06/12 by Dmitriy.Dyomin

	Fixed: Deferred Decals move with the camera in HTML5
	#jira UE-45606

Change 3484748 on 2017/06/12 by Chris.Babcock

	Add detection of Houdini (running on Intel Android CPU emulating ARM)
	#jira UE-45934
	#ue4
	#android

Change 3484766 on 2017/06/12 by Chris.Babcock

	Add missing log message for UsingHoudini
	#jira UE-45934
	#ue4
	#android

Change 3485762 on 2017/06/12 by Chris.Babcock

	Check in Gradle TPS
	#jira none
	#ue4
	#android

Change 3486596 on 2017/06/13 by Jack.Porter

	Fixed merge error

Change 3487559 on 2017/06/13 by Peter.Sauerbrei

	disable bEnableREmoteNotifications in binary builds

	#jira UE-44156

Change 3487875 on 2017/06/13 by Peter.Sauerbrei

	make it so we don't crash if the device isn't paired

	#jira UE-38247

Change 3487949 on 2017/06/13 by Peter.Sauerbrei

	fix for casing of DotNET in several locations from PR#3112 (portaloffreedom and Madh93)

	#jira UE-40396

Change 3488155 on 2017/06/13 by Peter.Sauerbrei

	fix for intermediate being lower cased when we want mixed case, keeps commandline txt file lower
	cased (original PR#2939 from kosz78, modified from that change)

	#jira UE-38737

Change 3488428 on 2017/06/13 by Chris.Babcock

	Fix permissions on gradlew on Mac and Linux
	#jira UE-46002
	#ue4
	#android

Change 3488735 on 2017/06/13 by Dmitriy.Dyomin

	Removed MDG note about crash on none-mali devices

Change 3488961 on 2017/06/14 by Dmitriy.Dyomin

	Fixed: scene capture component was applying only default ShowFlags in game

Change 3489162 on 2017/06/14 by Jack.Porter

	Removed checkbox "Deferred Rendering with Metal" on iOS.  This feature is no longer supported and will be replaced by a Metal 2-based renderer.

	#jira UE-41766

Change 3489192 on 2017/06/14 by Peter.Sauerbrei

	hide 32-bit and OpenGL options for IOS

	#jira none

Change 3489207 on 2017/06/14 by Peter.Sauerbrei

	make the MetalMRT setting hidden instead of removed

Change 3489593 on 2017/06/14 by Jack.Porter

	Removed the Android_All cook flavor as it's deprecated in favor of Android_Multi
	#jira UE-45469

Change 3491385 on 2017/06/15 by Dmitriy.Dyomin

	Fixed: SM_FireFX Particle not rendering for various Android texture compressions
	#jira UE-46083

Change 3491402 on 2017/06/15 by Dmitriy.Dyomin

	Fixed: Static + CSM shadows cause a crash
	#jira UE-46091

Change 3493586 on 2017/06/15 by Chris.Babcock

	Remove extra > in AndroidManifest
	#jira UE-46134
	#ue4
	#android

Change 3496193 on 2017/06/16 by Chris.Babcock

	Fix DeviceProfileManager setting in WEX
	#jira UE-46176
	#ue4
	#android

[CL 3496903 by Peter Sauerbrei in Main branch]
2017-06-16 20:17:59 -04:00
Peter Sauerbrei
dbc4422ee5 Copying //UE4/WEX-Staging to //UE4/Dev-Main (Source: //WEX/Main @ 3440877)
#lockdown nick.penwarden
#rb none

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

Change 3437481 on 2017/05/12 by Brian.Zaugg@Brian.Zaugg_A4140_WexDevMain

	#wex - Put the change to sort the CookedAssetRegistry back in.

	#jira WEX-5841

	Back out changelist 3437412

Change 3437412 on 2017/05/12 by Brian.Zaugg@brian.zaugg_8402_WexDevMain

	#wex - Back out change to CookedAssetRegistry, which turned out to be unnecessary.

	#jira WEX-5841

	Back out changelist 3437372

Change 3437372 on 2017/05/12 by Brian.Zaugg@brian.zaugg_8402_WexDevMain

	#wex - Sort the cooked asset registry on save to fix nondeterministic cook.

	#jira WEX-5841

Change 3435902 on 2017/05/11 by Brian.Zaugg@brian.zaugg_8402_WexDevMain

	#wex - Removed UpgradeTrackRows from MovieScenes. It was no longer needed and was causing nondeterministic cooks.

	#jira WEX-5841

Change 3435900 on 2017/05/11 by Brian.Zaugg@brian.zaugg_8402_WexDevMain

	#wex - Merge in fix for nondeterministic script compilation from Dev-General.

	#jira WEX-5841

	Merging

	//Orion/Dev-General/Engine/Source/Runtime/MovieScene/Private/MovieSceneSignedObject.cpp

	to //WEX/Main/Engine/Source/Runtime/MovieScene/Private/MovieSceneSignedObject.cpp

Change 3435897 on 2017/05/11 by Brian.Zaugg@brian.zaugg_8402_WexDevMain

	#wex - Merge in fix for nondeterministic blueprint cook from Dev-Editor

	#jira WEX-5841

	Merging

	//UE4/Dev-Editor/Engine/Source/Runtime/MovieScene/...

	to //WEX/Main/Engine/Source/Runtime/MovieScene/...

Change 3435896 on 2017/05/11 by Brian.Zaugg@brian.zaugg_8402_WexDevMain

	#wex - Merge in fix for nondeterministic script compilation from Dev-Framework.

	#jira WEX-5841

	Merging

	//UE4/Dev-Framework/Engine/Source/Editor/...

	to //WEX/Main/Engine/Source/Editor/...

Change 3435387 on 2017/05/11 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Upload Crashlytics symbols after succesful build by build machine
	#jira none

Change 3433935 on 2017/05/10 by Brian.Zaugg@brian.zaugg_8402_WexDevMain

	#wex - Resaved more assets to fix nondeterministic cooks.

	#jira WEX-5841

Change 3433707 on 2017/05/10 by robomerge@ROBOMERGE_WEX_Main

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

Change 3433634 on 2017/05/10 by peter.sauerbrei@peter.sauerbrei_WEX

	fix for loading a null object when the object is just pending kill
	not happy with this fix, but it works
	#jira WEX-6265

Change 3432228 on 2017/05/10 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Added LoadTimes.Reset console command to reset accumulated data reported by LoadTimes.DumpReport
	#jira WEX-6319

Change 3431341 on 2017/05/09 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Make sure file handle is valid for flush
	#jira none

Change 3431036 on 2017/05/09 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Capture UE_LOG for Crashlytics (can be disabled by setting ENABLE_CRASHLYTICS_LOGGING to 0 in CrashlyticsModule.cpp)
	- Added IFileHandle::Flush() to get the full pre-init log
	#jira WEX-6311

Change 3429394 on 2017/05/08 by robomerge@ROBOMERGE_WEX_Main

	fix for missing logs when crashing in crash reporter
	#jira none

Change 3428450 on 2017/05/08 by Josh.May@WEX-Main-JMAY

	#WEX
	#JIRA: WEX-6248, WEX-6285
	- Converted the MonsterPit hero list over to using the new UListView-based WExpHexGrid.
	- Generalized some of the item selection logic from B_HexGrid_Heroes.
	- Removed a bunch of MonsterPit-specific cruft from the HeroIcons.

Change 3428177 on 2017/05/08 by robomerge@ROBOMERGE_WEX_Main

	fix for no symbols on the crashreport site
	#jira none

Change 3428110 on 2017/05/08 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Enable CL as store version for Android
	#jira WEX-5432
	#ue4
	#android

Change 3427082 on 2017/05/05 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Crashlytics for Android
	- also adds support for CL used as StoreVersion (requires bUseChangleListAsStoreVersion=true and environment variable IsBuildMachine=1), but
not enabled yet
	#jira WEX-5785

Change 3426577 on 2017/05/05 by robomerge@ROBOMERGE_WEX_Main

	another pass at deprecation warnings
	#jira none

Change 3426360 on 2017/05/05 by robomerge@ROBOMERGE_WEX_Main

	write out the UUID for the dSYM when generating the debug symbols
	#jira none

Change 3426356 on 2017/05/05 by robomerge@ROBOMERGE_WEX_Main

	fix for deprecation warnings on IOS
	#jira none

Change 3424160 on 2017/05/04 by robomerge@ROBOMERGE_WEX_Main

	fix for resetting the load status when attempting a second load of an asset
	#jira WEX-6226

Change 3423174 on 2017/05/04 by robomerge@ROBOMERGE_WEX_Main

	made an extra change I didn't need
	#jira none

Change 3423173 on 2017/05/04 by robomerge@ROBOMERGE_WEX_Main

	fix for crash reports from build machine builds not symbolicating
	#jira none

Change 3422009 on 2017/05/03 by Josh.May@WEX-Main-JMAY

	#WEX
	#JIRA: None
	- Added generic widget pooling support. Among other things, this allows us to reuse the same pool of HeroIcon widgets between all HeroLists.

Change 3421747 on 2017/05/03 by robomerge@ROBOMERGE_WEX_Main

	[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

Change 3420916 on 2017/05/03 by Brian.Zaugg@brian.zaugg_8402_WexDevMain

	#wex - Resaved Entry.umap to fix nondeterministic cooks.

	#jira WEX-5841

Change 3420757 on 2017/05/03 by robomerge@ROBOMERGE_WEX_Main

	fix for debug symbols not showing up in the ipa
	#jira none

Change 3420620 on 2017/05/03 by robomerge@ROBOMERGE_WEX_Main

	fix for some more warnings
	#jira none

Change 3420069 on 2017/05/02 by robomerge@ROBOMERGE_WEX_Main

	fix for build warning
	#JIRA none

Change 3419305 on 2017/05/02 by robomerge@ROBOMERGE_WEX_Main

	crashreporter part 2, now sending reports to the database on successive run
	#jira WEX-5531

Change 3419050 on 2017/05/02 by Josh.May@WEX-Main-JMAY

	#WEX
	#JIRA: WEX-6037
	- Added support for alert-less local notifications on iOS.

Change 3418171 on 2017/05/02 by David.Nikdel@david.nikdel_WEX

	#WEX: Merging 3385512 by Aaron.McLeran minus 2 XBOX specific merge conflicts in XBoxOneTargetPlatform.cpp and libOpus.build.cs
	#JIRA: WEX-5829

Change 3412179 on 2017/04/27 by robomerge@ROBOMERGE_WEX_Main

	fix for new warnings from CrashDebugHelper in IOS
	#jira none

Change 3411573 on 2017/04/27 by robomerge@ROBOMERGE_WEX_Main

	initial crash reporter changes (pt. 1)
	* client side to generate the crash report
	* inclusion of the debug symbols in the ipa
	#jira WEX-5531

Change 3410200 on 2017/04/26 by robomerge@ROBOMERGE_WEX_Main

	update to the dSymExporter to handle IOS
	#jira none

Change 3409679 on 2017/04/26 by Rob.Cannaday@rob.cannaday_wex

	OpenSSL 1.0.2g updates from //UE4/Main
	Fixes prompt asking user to insert a disk on a removable drive
	#jira WEX-6136

Change 3408188 on 2017/04/25 by robomerge@ROBOMERGE_WEX_Main

	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

Change 3405129 on 2017/04/23 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Removed ZOrder manipulations for world map region widgets and restored caching in B_MenuBars
	#jira WEX-6071

Change 3404674 on 2017/04/21 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Better Android web browser closing
	#jira WEX-5871
	#ue4
	#android

Change 3404003 on 2017/04/21 by robomerge@ROBOMERGE_WEX_Main

	revert out the lock free list change, was bleed over from a memory test
	#jira WEX-6077

Change 3403125 on 2017/04/21 by robomerge@ROBOMERGE_WEX_Main

	#WEX
	#JIRA: WEX-5669
	- Exposed binadable OnRowReleased delegate for UListView.
	- Added UListView widget resuse for the FriendsList. As is, each FriendsList instance now uses at most 16 FriendWidget's apiece.

Change 3402992 on 2017/04/20 by josh.may@WEX-Main-JMAY

	#WEX
	#JIRA: WEX-5669
	- Refactored the FriendsList to use a UListView. Instead of handling UWExpFriendWidgets directly, the UListView tracks an array of
UWExpFriendProxy objects and sets up the widgets based on what's visible.
	- Exposed a few STableViewBase functions to UListView's blueprint interface (scroll to start/end, list refreshing).

Change 3402970 on 2017/04/20 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Fix copy-paste bug
	#jira WEX-5871

Change 3402914 on 2017/04/20 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Better behavior for Android LaunchURL
	#jira WEX-5871
	#ue4
	#android

Change 3401897 on 2017/04/20 by robomerge@ROBOMERGE_WEX_Main

	Xcode 8.3 compiler fixes
	#jira none

Change 3397963 on 2017/04/18 by robomerge@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: josh.may
	#WEX
	#JIRA: WEX-5966
	- Added safer SAndroidWebBrowserWidget lookups. Rather than using the GetNativePtr result directly, we treat it as a key to lookup a WeakPtr
to the corresponding SAndroidWebBrowserWidget. For the future, we may want to convert the key type to an FName to make this relationship more clear.

Change 3397360 on 2017/04/18 by robomerge@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: michael.noland
	UMG - Fixing widget alignment in the viewport when using the widget component with screen space, with an aspect ratio lock on the player's
camera.  The widgets should now show up in the right locations.
	#reimplementing CL# 3371590 from Dev-Editor
	#jira None

Change 3387613 on 2017/04/10 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - moving Android Facebook SDK to NFL directory
	#jira OGS-636

Change 3383489 on 2017/04/06 by Peter.Sauerbrei@peter.sauerbrei_WEX

	use pngs for iconbs in the plist
	properly copy icon pngs
	#jira none

Change 3375079 on 2017/03/31 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Add missing keycodes for Android keyboard
	#jira WEX-5777
	#android

Change 3369953 on 2017/03/29 by David.Nikdel@david.nikdel_WEX

	#Android: (from ChrisB)
	- Workaround to not having GET_ACCOUNTS permission but calling GoogleAuthUtil.getToken anyway (causes a crash)
	- We don't need this token anyway so band-aiding it out
	#JIRA: WEX-5730

Change 3369826 on 2017/03/29 by Daniel.Vogel@battle_breakers

	trimmed include to only include what is needed

	#jira none

Change 3369563 on 2017/03/29 by Allan.Bentham@allan.bentham_WEX

	Fix Android build error.
	fallout from 3358094
	#jira WEX-5193
	#rb none

Change 3368945 on 2017/03/28 by Josh.May@WEX-Main-JMAY

	#WEX
	#JIRA: WEX-5675
	- Ensure the local scope ScreenRect passed into OnVirtualKeyboardShown in AndroidJNI is captured by value instead of by reference.
	- Moved ShowVirtualKeyboardInput's bKeyboardShowing early-out checks into the UI thread task. This allows the keyboard to continue showing
when changing focus between multiple EditableTextBox widgets.

Change 3368793 on 2017/03/28 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - java toolchain changes for OnlineSubsystemGoogle
	- update google auth to 9.8.0
	- update required sdk to 25
	#jira none

Change 3366529 on 2017/03/27 by Daniel.Vogel@battle_breakers

	added CSV output w/ class type
	skip /Script/ dependencies

	#jira n/a

Change 3366478 on 2017/03/27 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Updated Android newkeyboard support
	* AndroidRuntimeSetting bEnableNewKeyboard instead of commandline to enable
	* Calculating the area covered by the virtual keyboard
	* Calling OnVirtualKeyboardShown and OnVirtualKeyboardHidden events
	* Passing the Rect of the area covered by the virtual keyboard OnVirtualKeyboardShown event
	#jira WEX-5675

Change 3364155 on 2017/03/24 by Josh.May@WEX-Main-JMAY

	#WEX
	#JIRA: WEX-5538
	- Removed FPlatformMisc::IsPluggedIn() and migrated the iOS/Android implementations over to FPlatformMisc::IsRunningOnBattery().
	- Fixed EBatteryState enumeration ordering in FAndroidMisc. According to Google's documentation, BATTERY_STATUS_CHARGING=2,
BATTERY_STATUS_DISCHARGING=3, BATTERY_STATUS_FULL=5, BATTERY_STATUS_NOT_CHARGING=4, BATTERY_STATUS_UNKNOWN=1.

Change 3363599 on 2017/03/24 by Josh.May@WEX-Main-JMAY

	#WEX
	#JIRA: WEX-5538
	- Added FPlatformMisc::IsPluggedIn().
	- Block battery drainage tracking when the device is plugged in.

Change 3363498 on 2017/03/24 by robomerge@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	fix for archives having truncated directory names
	#jira none

Change 3363297 on 2017/03/24 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Fix Android password hiding
	#jira WEX-5159
	#ue4
	#android
	#rb Peter.Sauerbrei

Change 3362117 on 2017/03/23 by Josh.May@WEX-Main-JMAY

	#WEX
	#JIRA: WEX-5538, WEX-5591
	- Added FPlatformMisc::GetBatteryLevel().
	- Added battery usage tracking to the PerformanceTrackingManger. This is tracked per SecondaryContext and accumulated whenever the
SecondaryContext changes.
	- Added BatteryTimeSpent and BatteryDelta attributes to the Perf_Menu analytics events.
	- Added OnEnterForeground and OnEnterBackground handling for performance analytics tracking. FWExpAnalytics now maintains it's own multicast
delegates for both scenarios to avoid delegate registration ordering issues (i.e. OnEnterBackground informs subscribers prior to flushing it's
AnalyticsProvider). Unfortunately, events sent during these transitions need to use the AnalyticsProvider directly to get around IsInGameThread()
checks in FWExpAnalytics. I've added notes in FWExpAnalytics explaining this.
	- Added DevicePerfBucket to the FWExpAnalytics::StartSessionAttrs().

Change 3359313 on 2017/03/22 by David.Nikdel@david.nikdel_WEX

	#WidgetComponent
	- Create a simple box proxy for cases where the widget wouldn't otherwise be visible in the editor.
	#JIRA: none

Change 3359294 on 2017/03/22 by David.Nikdel@david.nikdel_WEX

	#Engine #ActorComponents: Pasting components
	- Try to respect the pasted component's name if possible.
	- Disable tree updates while pasting (pasting 100 components generated O(100^2) node updates)
	- Scroll into view after pasting
	#JIRA: none

Change 3359262 on 2017/03/22 by Josh.May@WEX-Main-JMAY

	#WEX
	#JIRA: WEX-5286
	- Added an ActionMapping for toggling a 4th ParticleLODBias preset (VeryLow).
	- Added editor hotkeys for switching between specific LODLevels in Cascade. As is, the hotkeys are CTRL+M for LOD0, CTRL+Comma for LOD1, CTRL
+Period for LOD3, and CTRL+Slash for LOD4.
	- Remapped the in-game ParticleLODBias hotkeys to match the hotkeys in Cascade.

Change 3358952 on 2017/03/22 by Josh.May@WEX-Main-JMAY

	#WEX
	#JIRA: None
	Reverted my change that reversed Cascade's LOD ordering.

Change 3358816 on 2017/03/22 by robomerge@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	some changes to track down this rare streaming crash
	#jira WEX-5631

Change 3358544 on 2017/03/22 by robomerge@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	fix for IOS 8 crash when trying to link Facebook
	addition of IOSVersionCompare to FIOSPlatformMisc
	#jira WEX-5613

Change 3358099 on 2017/03/22 by Allan.Bentham@allan.bentham_WEX

	Add 'bBuildWithHiddenSymbolVisibility' to AndroidPlatform.HasDefaultBuildConfig()
	bBuildWithHiddenSymbolVisibility defaults to false in BaseEngine.ini
	#jira WEX-5193

Change 3358094 on 2017/03/22 by Allan.Bentham@allan.bentham_WEX

	Added Android option to enable builds with hidden symbol visbility by default. (bBuildWithHiddenSymbolVisibility)
	Android links with -gc-sections to remove unused code/data
	Add JNI_METHOD for java accessible native functions, fix up existing JNI functions to use macro.
	Add support to generate a map file with android.
	#rb chris.babcock
	#jira WEX-5193

Change 3357775 on 2017/03/21 by Josh.May@WEX-Main-JMAY

	#WEX
	#JIRA: WEX-5286
	- Promoted r.ParticleLODBias to a full-blown scalability setting.
	- Ensure DirectSet particle systems don't set their initial LODLevel based on LOD distances.
	- Ensure ParticleSystems get their initial LODLevel set on activation relative to the LODBias.
	- Reversed the Cascade's LOD ordering to be consistent with other systems.

Change 3352516 on 2017/03/17 by David.Nikdel@david.nikdel_WEX

	#WEX: perforce is the devil
	#JIRA: none

Change 3352404 on 2017/03/17 by David.Nikdel@david.nikdel_WEX

	#WEX: Moving LocalMCP into the WEX folder so UGS will sync it along with everything else
	#JIRA: none

Change 3352291 on 2017/03/17 by David.Nikdel@david.nikdel_WEX

	#WEX: Fix for a bug in run-local-mcp-main.bat
	#JIRA: none

Change 3352242 on 2017/03/17 by David.Nikdel@david.nikdel_WEX

	#WEX: Change build.gradle to pull from the EPIC_BUILD_CREDENTIALS_NEXUS_* env vars and hardcode repo url for now
	#JIRA: none

Change 3352046 on 2017/03/17 by David.Nikdel@david.nikdel_WEX

	#WEX: Get the stream name from P4 in the run-local-mcp-main.bat script
	- removed wex's run-release.bat (won't be necessary)
	- removed the product_version param (going off stream name now)
	#JIRA: none

Change 3351635 on 2017/03/17 by David.Nikdel@david.nikdel_WEX

	#WEX: LocalMCP changes to support release branch MCP download (still need maven to support RELEASE in addition to LATEST)
	#JIRA: none

Change 3351165 on 2017/03/16 by robomerge@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	compile fix
	#jira none

Change 3351162 on 2017/03/16 by robomerge@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	pull chunk 1 back out
	#jira WEX-4037

Change 3351075 on 2017/03/16 by robomerge@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	put all of the onboarding data in the apk, iinitial windows install, IOS is still too large for now
	#jira WEX-4037

Change 3351059 on 2017/03/16 by Josh.May@WEX-Main-JMAY

	#WEX
	#JIRA: WEX-5526
	- Added analytics events for map load times (on Chance's behalf). No info about chunk downloading yet, though.

Change 3350595 on 2017/03/16 by robomerge@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	move some of the onboarding data in to the IPA
	#jira WEX-4037

Change 3349934 on 2017/03/16 by robomerge@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	fix for splash screen disappearing on iPhone 5s and iPod Touch
	#jira none

Change 3348093 on 2017/03/15 by robomerge@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	fix for iPod Touch 6 splash screen
	#jira WEX-5482

Change 3346183 on 2017/03/14 by robomerge@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	fix for portrait only not being respected
	#jira WEX-5517

Change 3344276 on 2017/03/13 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Fix target value 1.5 obsolete warning
	#android
	#jira: none

Change 3344177 on 2017/03/13 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Add new notification icons
	#jira WEX-5173
	#ue4
	#android

Change 3343706 on 2017/03/13 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Update script version for CarefullyRedist (need to use jdk1.8)
	#jira: none
	#android

Change 3342571 on 2017/03/11 by David.Nikdel@david.nikdel_WEX

	#GooglePlay #Android #IAP: compile fix
	#JIRA: WEX-5479

Change 3342524 on 2017/03/11 by David.Nikdel@david.nikdel_WEX

	#IAP #GooglePlay #Engine: Fix for possible integer overflow getting price_amount_micros out of JSON. Really we should be returning this value
(unadjusted) to C++ as a long to avoid precision loss, but converting to double until after removing micros is probably fine for all practical
currency prices.
	#JIRA: WEX-5479

Change 3340549 on 2017/03/09 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Update handling of device and advertiser IDs for Android
	- remove GetUniqueDeviceId() - deprecated
	- add GetLoginId() - uses GUID approach
	- remove fallback from GetUnqiueAdvertisingId()
	- changed CreateUserId
	- don't send Attribution and UniqueDeviceId from USERLOGIN
	#jira WEX-5461
	#ue4
	#android
	#rb Wes.Hunt

Change 3339488 on 2017/03/09 by David.Nikdel@david.nikdel_WEX

	#Engine #JSON
	- Expose FJsonObjectConverter::GetTextFromObject conversion method so this can be used elsewhere as appropriate
	#JIRA: none

Change 3338332 on 2017/03/08 by Josh.May@WEX-Main-JMAY

	#WEX
	#JIRA: WEX-5367
	- Added background transparency support for AndroidWebBrowserWidget.

Change 3338176 on 2017/03/08 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Support large OBB files in APK
	- moved over since it also reduces process space used because OBB previously was mmapped
	#jira: none

Change 3336630 on 2017/03/07 by Josh.May@WEX-Main-JMAY

	#WEX
	#JIRA: WEX-5367
	- Ensure pending HTML content and URL are properly retained for IOSWebViewWrapper instances. This was a fix I added in CL 3214410 that got
clobbered by the most recent engine merge. After repro'ing the crash again consistently on older devices, I figured I should readd it.
	- Added background transparency support for IOSWebViewWrapper.

Change 3331981 on 2017/03/03 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - Online Subsystem consistency cleanup
	- all OSS classes use the instance name passed into the CreateFactory function
	- nothing should be using the default constructor
	- OnlineSubsystemImpl requires two params now (OSS name, Instance name)
	- added GetSubsystemName to return OSS name from OnlineSubsystemNames.h
	#JIRA none

Change 3331955 on 2017/03/03 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - Google sign-in first pass
	- discovery service query
	- user consent screen
	- token exchange for access/refresh token
	- retrieve user profile
	- logout
	#JIRA WEX-5103

Change 3331947 on 2017/03/03 by Daniel.Vogel@battle_breakers

	added GDF export support

	#JIRA n/a

Change 3331709 on 2017/03/03 by Daniel.Vogel@battle_breakers

	Added ExportDependencies to UnrealPak. It spits out a JSON of the game's package dependencies joined with size information from the PAK file.

	The format of the Json is

	array<Packages>
	   InclusiveSize
	   ExclusiveSize
	   Name
	   array<string> DirectlyReferencing
	   array<string> DirectlyReferencedBy
	   array<string> AllReferences

	allowing easy graph building and digestion of data.


	Usage example

	C:\Development\BB\WEX\Saved\StagedBuilds\WindowsNoEditor\WorldExplorers\Content\Paks\WorldExplorers-WindowsNoEditor.pak WorldExplorers WEX -
exportdependencies=c:\dvtemp\output.json -debug -NoAssetRegistryCache -ForceDependsGathering


	#JIRA n/a

Change 3329259 on 2017/03/02 by Peter.Sauerbrei@peter.sauerbrei_WEX

	switch to using jpgs for icons and splash screens

Change 3329240 on 2017/03/02 by Peter.Sauerbrei@peter.sauerbrei_WEX

	remove all duplicate data from the paks

Change 3328658 on 2017/03/01 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for low resolution on iPad Pro
	#jira WEX-5157

Change 3326751 on 2017/03/01 by Josh.May@WEX-Main-JMAY

	#WEX
	#JIRA: WEX-5278
	- Reenable the system idle timer after FinalizeLevel has completed, as per David's feedback.
	- Added hooks for enabling/disabling the idle timer based on auto-battle being "paused" (i.e. having he options menu open).
	- Reworked the idle timer enable/disable logic for iOS to get around a silly platform limitation. As it turns out, re-enabling the system idle
timer won't reset the system-recorded idle time, meaning the idle timeout can kick-in immediately after re-enabling the idle timer after long periods
of inactivity (i.e. finishing a level with auto-battle enabled).

Change 3323981 on 2017/02/27 by Josh.May@WEX-Main-MacBookPro

	#WEX
	- Fixed a iOS startup crash. It looks like the splash image path-string was getting released prematurely in cases where the JPG splash image
doesn't exist.

Change 3323478 on 2017/02/27 by Peter.Sauerbrei@peter.sauerbrei_WEX

	check for png and then jpg for splash screens

Change 3320989 on 2017/02/24 by Chris.Babcock@Home_WEX

	Ignore AAR/JAR dependencies with scope "test"
	#android

Change 3319897 on 2017/02/23 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - Last of the facebook cleanup
	- moved profile fields to common
	- added facebook profile picture to profile and friends structures
	- moved FacebookError to OnlineSubsystemFacebookTypes.h

Change 3318425 on 2017/02/22 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Remove eglSwapInterval causing S6 to freeze
	#jira WEX-5147
	#android

Change 3317974 on 2017/02/22 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - Java toolchain fix for Facebook SDK
	- hack per ChrisB
	@codereview Chris.Babcock

Change 3317968 on 2017/02/22 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - Facebook SDK for Android enabled

Change 3317216 on 2017/02/22 by David.Nikdel@david.nikdel_WEX

	#Engine: Break out cursor building from settings into UGameViewportClient::RebuildCursors so that game code can call this method after
RemoveAllViewportWidgets if we don't want to lose cursor settings.

Change 3315560 on 2017/02/21 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - Facebook TPS files for iOS and Android latest SDKs

Change 3315541 on 2017/02/21 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#WEX - Fixes for Facebook SDK changes
	- Fix for comment in DefaultPlatformService ini entry

Change 3315529 on 2017/02/21 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - Android toolchain changes

Change 3315492 on 2017/02/21 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - Facebook IOS

Change 3315490 on 2017/02/21 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - Facebook Common

Change 3315283 on 2017/02/21 by Colin.Pyle@Colin.Pyle_WEX_Main

	#WEX
	#JIRA: WEX-5114, WEX-5116
	- Buttons now only respond to first finger touch events.

Change 3315045 on 2017/02/21 by Peter.Sauerbrei@peter.sauerbrei_WEX

	enable compile for size on iOS

Change 3310519 on 2017/02/17 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Implement GetUniqueDeviceId for Android
	- this doesn't identify the device uniquely if reinstalled; it will show as a new device since it uses GUID stored to local file
	#android

Change 3310043 on 2017/02/17 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Fix bad merge related to UPL configuration variable (needed for Adjust on Android to use correct server)

Change 3310024 on 2017/02/17 by David.Nikdel@david.nikdel_WEX

	#Android #AdvertisingId
	Merging shelf CL 3195079 for Chris.Babcock

Change 3309580 on 2017/02/17 by Josh.May@WEX-Main-JMAY

	#WEX
	- Moved SOURCE_IN_LINEAR_SPACE shader #define to SlateShaderCommon.

Change 3308653 on 2017/02/17 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	ShaderCache will use up to 16 samplers
	#rb jack.porter

Change 3307584 on 2017/02/16 by Josh.May@WEX-Main-MacBookPro

	#WEX
	#JIRA: WEX-5019
	- Fixed "washed out" UMG widget coloring on iOS.

Change 3305699 on 2017/02/16 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Clear for viewport instead of drawing quad on top, when scene rendering is disabled
	#rb Jack.Porter

Change 3305662 on 2017/02/16 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Update invalidation panel to account for a new LayoutToRenderTransform

Change 3305615 on 2017/02/16 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Invalidation panel fixes.
	Moved geometry checks and caching from Tick to OnPaint to account for Window resize transforms.
	Updating scissor rect inside cached elements.

Change 3305019 on 2017/02/15 by Peter.Sauerbrei@peter.sauerbrei_WEX

	Merging using WEX_Main_to_UE4_WEX_Staging

Change 3301188 on 2017/02/14 by Jack.Porter@Jack.Porter_WEX_Stream

	Added support for runtime change of the Android GT and RT affinity masks at the console.
	eg  "android.DefaultThreadAffinity GT 0x1 RT 0x2". args are bitmasks for core(s) to run on, 0=all

	#rb Dmitriy.Dyomin

Change 3300968 on 2017/02/13 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Option for invalidation panel to cache just drawable elements instead of render data (slate.CacheRenderData=0)
	Iinvalidation panel fixes
	#rb nick.darnell

Change 3300554 on 2017/02/13 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: david.nikdel
	#WEX: serialize ClientVersion as a number instead of a string of the form "CL_####"

Change 3300114 on 2017/02/13 by Peter.Sauerbrei@peter.sauerbrei_MacWEX

	fix for iOS build failure

Change 3300059 on 2017/02/13 by Peter.Sauerbrei@peter.sauerbrei_WEX

	turn on PLCrashReporter for iOS

Change 3300057 on 2017/02/13 by Peter.Sauerbrei@peter.sauerbrei_MacWEX

	built PLCrashReporter for IOS

Change 3298338 on 2017/02/10 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Updated Java files that look like were missed in merge
	#rb none

Change 3295755 on 2017/02/09 by Aaron.McLeran@Wex2

	UE-41567 Fixes for duplicating sound assets

Change 3295429 on 2017/02/09 by Peter.Sauerbrei@peter.sauerbrei_MacWEX

	re-enable pak pre-cache

Change 3294463 on 2017/02/09 by Allan.Bentham@allan.bentham_WEX

	Bump shader version, hopefully will make WEX-4517 go away...
	#rb none

Change 3294229 on 2017/02/09 by Allan.Bentham@allan.bentham_WEX

	Prevent UI materials producing encoded results.
	#jira WEX-4975
	#rb Jack.Porter

Change 3293759 on 2017/02/08 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Don't enqueue TickVideo since it is causing a hang (movies not used in WEX) DO NOT MOVE BACK
	#jira WEX-5046
	#rb Max.Preussner

Change 3291872 on 2017/02/08 by Allan.Bentham@allan.bentham_WEX

	add RGBA8 mode to mobile HDR 32bpp encoding methods. (render directly to RGBA8 scene colour target)
	r.MobileHDR32bppMode == 3 to override devices encoding mode with RGBA
	enabled in WEX for android low end devices.
	add mosaic state to android window's resolution cache conditions.
	#jira WEX-4927
	#rb chris.babcock, jack.porter

Change 3289698 on 2017/02/07 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Enabled bExplicitCanvasChildZOrder by default (saves more than 100 drawcalls in Heroes tab)
	Fixed ordering of CommanderBar image in B_HeroIcon
	Removed unique ZOrder for world map region widgets (saves more than 100 drawcalls in WorldMap)

Change 3289082 on 2017/02/06 by Josh.Markiewicz@JMARKIEWICZ_WEX_MACPRO

	#UE4 - cleaned up some dev garbage in Facebook module file

Change 3288589 on 2017/02/06 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Temporarily limit GMaxTextureSamples to 16 for Android
	#jira WEX-5051
	#rb Peter.Sauerbrei

Change 3286181 on 2017/02/03 by Tyler.Cole@tyler.cole-Z6140-stream-wex

	[Engine]
	LocalMcp run script:
	- Remove quotes from output.
	- Display progress bar when downloading artifact.
	- Output MongoDB data directory.

Change 3286118 on 2017/02/03 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	[NULL MERGE]
	turn off logging in test builds in release stream

Change 3286106 on 2017/02/03 by Kevin.Abbott@WEX2017

	#LocalMCP: Fix for BAT file terribleness (the whole if command is evailuated at once so an internal SET doesn't take effect until outside the
block)

Change 3285065 on 2017/02/03 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	better fix for the app name in the archive

Change 3285060 on 2017/02/03 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	fix for archive failure

Change 3284408 on 2017/02/02 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	properly naming the dSYM for uploading
	#rb none

Change 3284022 on 2017/02/02 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - Facebook changes to get Windows/iOS up to date
	- Facebook user data structure gets information from proper URL request with valid public fields, stores consistently on both platforms
	-- store values in generic key value pairs
	- RequestElevatedPermissions feature that goes through external ui to grant more permissions (Windows)
	- Reorder shutdown so that sharing interface can properly register/unregister from LoginStatusChanged events

Change 3283978 on 2017/02/02 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	[NULL MERGE]
	potential fix for dSYM not uploading properly
	#rb none

Change 3283672 on 2017/02/02 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Fix for web browser crash on Android distribution (from 4.15)
	#jira WEX-4947
	#rb none

Change 3283329 on 2017/02/02 by Tyler.Cole@tyler.cole-Z6140-stream-wex

	[Engine]
	Add support for uberjar MCPs in LocalMcp scripts.

	[WEX]
	Use uberjar when launching local MCP.

Change 3283030 on 2017/02/02 by Allan.Bentham@allan.bentham_WEX

	Fix for tangents not being avaliable in ES2 pixel shader when transformvector/transformposition nodes are used.
	#jira WEX-4517.
	#rb jack.porter

Change 3281190 on 2017/02/01 by Peter.Sauerbrei@peter.sauerbrei_MacWEX

	pull over the metal state rasterizer fix from main
	#jira WEX-4855

Change 3280541 on 2017/01/31 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	More GCM work
	- platform=ANDROID for registration URL (case-sensitive)
	- hooked up registration through FPlatformMisc like iOS
	- removed old retrigger for delegates (not needed)
	- stubbed in unregister for later
	- added notification generation on message (disabled for now)

Change 3280255 on 2017/01/31 by Michael.Noland@mnoland_T2801_WEX_Main

	Canvas: Fixed a bug where UCanvas::K2_DrawMaterial did not respect the currently active canvas draw color
	Upgrade Notes: This does change the behavior, so K2_DrawMaterial calls with a non-white color set will now be affected by the color *if* they
use a vertex color node.  Impact is expected to be minimal because most of the materials people used with it were unlikely to include the vertex color
node.

Change 3280150 on 2017/01/31 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for double add to manifests

Change 3279807 on 2017/01/31 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for iOS build failure

Change 3279583 on 2017/01/31 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for animation crash
	#jira WEX-4906

Change 3279310 on 2017/01/31 by Peter.Sauerbrei@peter.sauerbrei_WEX

	reduce the parallelism of the packaging step to alleviate strain on Mac

Change 3278827 on 2017/01/31 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Fixed: Multiple UI assets appear too dark when accessed (replicated CL#3278637, 3278802 from 4.15)
	#jira WEX-4862

Change 3278558 on 2017/01/30 by Chance.Lyon@Chance.Lyon_WEX_Dev-Main

	#WEX
	#JIRA: WEX-4634
	- Attempt to re-hide the navigation bar when we detect a few different events

Change 3277376 on 2017/01/30 by Peter.Sauerbrei@peter.sauerbrei_WEX

	disable pak precaching as it seems to be causing crashes

Change 3276469 on 2017/01/28 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Fixes for GoogleCloudMessaging
	- moved registration later to correct issues with engine not ready
	- save registration status message and token for later retrigger
	- UWExpMcpProfile::Initialize uses retrigger after binding to delegate so it gets the earlier success/fail
	- send correct platform in OnRegisteredForRemoteNotifications (Android or IOS)

Change 3276308 on 2017/01/27 by Michael.Noland@mnoland_T2801_WEX_Main

	UBT: Improved the error message when the wrong header is first in an engine file to include the wrong file name

Change 3275574 on 2017/01/27 by David.Nikdel@david.nikdel_WEX

	#WEX: performance tracking analytics tags
	- make FPerformanceTrackingChart::DumpChartToAnalyticsParams const-correct
	- Broke out the event firing code into their own functions and added scraper documentation (unsure if 100% correct, Michael please review)
	- changed #if to regular if so inner code gets compiled in all cases
	#JIRA: WEX-4838

Change 3275275 on 2017/01/27 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for missing virtual keyboard
	#jira WEX-4859

Change 3275266 on 2017/01/27 by Josh.Markiewicz@JMARKIEWICZ_WEX_MACPRO

	#UE4 - Facebook iOS upgrade to 4.18
	IdentityInterface should be using proper in app dialogs now

Change 3275263 on 2017/01/27 by Josh.Markiewicz@JMARKIEWICZ_WEX_MACPRO

	Facebook SDK 4.18

Change 3274408 on 2017/01/26 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for tower collision

Change 3273928 on 2017/01/26 by Peter.Sauerbrei@peter.sauerbrei_WEX

	Merging

	//UE4/Release-4.15/Engine/Source/Runtime/...

	to //WEX/Main/Engine/Source/Runtime/...

Change 3273907 on 2017/01/26 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - moved parsing of LogCategory verbosity slightly sooner to occur before plugins are loaded
	- fixes plugins not printing proper log levels if initialized too early
	#rb gil.gribb

Change 3272834 on 2017/01/25 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Add GoogleCloudMessaging plugin for Android

Change 3272124 on 2017/01/25 by Jamie.Dale@JamieDale_BHX-WD-7636_WEX

	Updated the GatherText commandlet to no longer hold a ConfigFile pointer while it runs

	This pointer is internal to GConfig, and may be updated (or invalidated) when other config files are loaded (as can happen via game code while
gathering text).

	#rb Peter.Sauerbrei

Change 3272044 on 2017/01/25 by David.Nikdel@david.nikdel_WEX

	#Json: Adding MapProperty support to JsonObjectConverter
	- Only TMaps with FString keys are allowed (to match JSON spec)
	- ScheduledEvents module is dependent on this commit (at runtime, compile is ok)

Change 3272035 on 2017/01/25 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for crash when trying to pre-cache a pak file smaller than the cache granularity

Change 3271618 on 2017/01/25 by Allan.Bentham@allan.bentham_WEX

	Avoid unneeded stencil clear in mobile renderer.
	#rb jack.porter

Change 3271536 on 2017/01/25 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for non-unity compile failures

Change 3270865 on 2017/01/24 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for another warning

Change 3270781 on 2017/01/24 by Peter.Sauerbrei@peter.sauerbrei_WEX

	some warning fixes

Change 3270395 on 2017/01/24 by Nick.Darnell@Nick.Darnell_BattleBreakers

	UMG - Adding a way to config the default option for how Scaleboxes should perform layout, single or double.

	#rb none

Change 3270051 on 2017/01/24 by Peter.Sauerbrei@peter.sauerbrei_WEX

	Merging using WEX_Main_to_UE4_WEX_Staging
	#rb none

Change 3268999 on 2017/01/23 by Colin.Pyle@Colin.Pyle_WEX_Main

	#WEX
	#JIRA: WEX-4685
	- Scale boxes now default to single pass

Change 3263481 on 2017/01/19 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Enabled shader cache on Android
	Also added recorded shader cache from my play session (need to record more complete cache later)
	#rb jack.porter
	#jira WEX-4691

Change 3258935 on 2017/01/16 by David.Nikdel@david.nikdel_WEX

	#WebBrowser: Fix field initialization order warning.

Change 3258614 on 2017/01/16 by David.Nikdel@david.nikdel_WEX

	#Engine #WebBrowser:
	- LoadString literally didn't work on strings with line breaks in them due to our forwarding of the request content via the headers (wut?).
Cef barfed trying to parse header values with newlines in them.
	- Changed locally generated requests to use PostData instead.
	- Added a way to specify the mime type by appending a hash to the dummy url (the BP params for this are all kinds of weird, but I don't want
to change the signature)
	- Default mime type to text/html to support the old behavior

Change 3257030 on 2017/01/13 by Peter.Sauerbrei@peter.sauerbrei_WEX

	turn on test logging
	DO NOT SUBMIT THIS TO UE4/MAIN
	#rb none

Change 3256835 on 2017/01/13 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Slate - Fixing the size of Paper2D sprites when used as box brushes in Slate.

	#rb none

Change 3256813 on 2017/01/13 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Slate/UMG - The ScaleBox now supports a SingleLayoutPass mode.  This mode is not the default, but it can save a considerable amount of time in
the right situation.  Generally when wrapped around a large UI, where the outer bounds of the scalebox are constant.

	#rb none

Change 3256777 on 2017/01/13 by Nick.Darnell@Nick.Darnell_BattleBreakers

	UMG - Adding a way to access the absolute size of a piece of Geometry in blueprints.

	#rb none

Change 3256774 on 2017/01/13 by Nick.Darnell@Nick.Darnell_BattleBreakers

	UMG - Adding a way to access the absolute size of a piece of Geometry in blueprints.

	#rb none

Change 3256656 on 2017/01/13 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Slate pixel shaders will use half precision where possible on mobile
	#rb jack.porter

Change 3256586 on 2017/01/13 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Fixed redundant blend state changes in opengl
	#rb jack.porter

Change 3256584 on 2017/01/13 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Reduced state setup for slate draw calls (saves about 4ms RT time on mobile)
	#rb jack.porter

Change 3256380 on 2017/01/12 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	properly set the file extension for the dSYM for the manifest
	#rb none

Change 3256260 on 2017/01/12 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	trying to track down why the dSYM isn't working
	#rb none

Change 3255825 on 2017/01/12 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	return the zip version for now
	#rb none

Change 3255652 on 2017/01/12 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	add dSYM.zip to the output produced if we want the dSYMBundle
	utilize that if it exists to populate the xcarchive
	#rb none

Change 3254552 on 2017/01/11 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	fix for build error
	#rb none

Change 3254462 on 2017/01/11 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	C string is not null terminated in FCurlHttpRequest::DebugCallback
	#jira WEX-4610

Change 3254448 on 2017/01/11 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	make it so xcarchives can be archived to a directory on build machines
	make it so the build machine puts the CL in as the CFBundleVersion
	make it so we generated an XCArchive and a dSYM
	#rb none

Change 3251055 on 2017/01/09 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Platform - Adding the degree symbol to the log statement for android's temperature update, and noting that it's celsius.

	#rb none

Change 3250488 on 2017/01/08 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Fixed: Device output log partial lines
	#rb jack.porter

Change 3249072 on 2017/01/06 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Disable java console cmd receiver only in shipping builds
	#rb jack.porter

Change 3248990 on 2017/01/06 by Jack.Porter@Jack.Porter_WEX_Stream

	Support Dynamic r.MobileContentScaleFactor change on Android
	#rb Dmitriy.Dyomin

Change 3248989 on 2017/01/06 by Jack.Porter@Jack.Porter_WEX_Stream

	Integrating Mobile Support for r.ScreenPercentage
	#rb Dmitriy.Dyomin

Change 3248156 on 2017/01/05 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Added trackSubsessionStart to iOS Adjust plugin (for real)
	#ios

Change 3248131 on 2017/01/05 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Added trackSubsessionStart to iOS Adjust plugin
	#ios

Change 3245184 on 2017/01/03 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - FB OSS for PC
	- login flow implemented using web based LoginFlow module
	- implemented ShowLoginUI for external UI interface
	- added Login function with existing access token
	- fixed GetAuthType function
	- added reference to main online subsystem to Friend/Identity interfaces

Change 3243067 on 2016/12/22 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - used more prpoer shared pointer cast

Change 3241011 on 2016/12/20 by Chance.Lyon@Chance.Lyon_WEX_Dev-Main

	#WEX
	#JIRA WEX-4557
	- An engine change that separates serializing the actor from file operations
	- Serialize the saved level on the main thread, save it to a slot during the async task

Change 3240508 on 2016/12/19 by Michael.Noland@mnoland_T2801_WEX_Main

	Engine: Added GetGameInstance<T> and GetGameInstanceChecked<T> wrappers to UWorld that automatically Cast/CastChecked to the specified
subclass of UGameInstance

Change 3240366 on 2016/12/19 by Josh.May@josh.may-WEX-MacBookPro-DevMain

	#WEX
	#JIRA: WEX-4475
	- Block UIWebView closure from granting keyboard focus to the parent IOSView. This was causing the keyboard to show when closing the UIWebView
after interacting with it in any way.

Change 3239026 on 2016/12/16 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Slate - Removing a crashing check that turned out to not be nessesary.


Change 3238569 on 2016/12/16 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Slate - Disabling the deferred desired size optimization.

Change 3237052 on 2016/12/15 by David.Nikdel@david.nikdel_WEX

	#PlatformMisc: GetUniqueAdvertisingId should return empty string unless one is defined by the platform (no fallback to GetUniqueDeviceId)

Change 3237024 on 2016/12/15 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Slate - Core Refactor.  Found a way to save about 2ms on mobile for an average screen.  It involves deferring when slate computes the desired
size of a widget, from during prepass, to instead doing it on demand, and only invalidating it during Prepass.  It saves time because not every widget
cares what the desired size of their children is.

	I'm enabling it with the code define SLATE_DEFERRED_DESIRED_SIZE.

	I've added an ensure prints the message, "The layout is cyclically dependent.  A child widget can not ask the desired size of a parent while
the parent is asking the desired size of its children."

Change 3236593 on 2016/12/15 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Slate - Optimizing some usage of FWidgetPath and other reduction on copies on the stack/heap.

Change 3236579 on 2016/12/15 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Slate - You can now visualize batching by doing Slate.ShowBatching 1.


Change 3236453 on 2016/12/15 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Slate - Further refactoring how the scrollbox manages when and how to perform scrolling when dealing with touch input.  Feels really tight to
me now and this change should resolve the problem where it sometimes doesn't respond to input, or where it over-responds to touch and amplifies
movement by the user, not able to reproduce those conditions now.


Change 3236435 on 2016/12/15 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Core - Fixing some bugs with FrameValue, making it a bit simpler by just being composed of a TOptional and a uint64.

Change 3236410 on 2016/12/15 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Engine - Fixing a crash in the game viewport client if no debug canvas is provded.

Change 3236405 on 2016/12/15 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Android - Fixing the code that sends remote commands to android.

Change 3233400 on 2016/12/13 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for console entry
	#jira WEX-4488

Change 3233247 on 2016/12/13 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Slate - Adding some scoped performance counters for more rendering infromation in slate.

Change 3233242 on 2016/12/13 by Nick.Darnell@Nick.Darnell_BattleBreakers

	UMG - Making a few calls more efficent for mobile, by caching values for a frame that end up getting called a lot if you have several widget
components.

Change 3233236 on 2016/12/13 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Core - Adding a frame cached value struct that keeps a value as valid for one GFrameCounter, which is incremented once an engine tick.

Change 3233229 on 2016/12/13 by Nick.Darnell@Nick.Darnell_BattleBreakers

	UMG - Don't layout components if they're not marked as visible in the world widget screen layer for widget componets.

Change 3233219 on 2016/12/13 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Blueprints - Making the array K2 Nodes not self referencial in doing layout logic, that causes really strange behavior.

Change 3233209 on 2016/12/13 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Slate - You can now show overdraw in slate by doing Slate.ShowOverdraw 1, or 0 to disable.

Change 3233202 on 2016/12/13 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Slate - We now have a scope counter for text layout now, to let people determine when their text is a massive performance drain usually due to
scaleboxes.

Change 3233012 on 2016/12/13 by Michael.Noland@mnoland_T2801_WEX_Main

	Sound: Added SoundClassObject to the asset registry searchable data for sound assets, to make it easier to track down volume/muting bugs when
assets have the wrong sound class set
	- Note: Assets will need to be resaved before this data will show up for unloaded assets (loaded assets should work immediately)

Change 3230757 on 2016/12/12 by Andrew.Brown@Andrew.Brown_G5751_WEX_Main

	LauncherCheck module no longer has a dependancy on the DesktopPlatform module

	#jira OPP-6491 : LauncherCheck module is dependent on a DeveloperModule

	#branch WEX_Dev-Main

	#change Removed all the Launcher specific calls that the LauncherCheck module makes out of DesktopPlatform and into a new runtime module
called LauncherPlatform (and fixed up all the associated calls).

	#change Also removed DesktopPlatform header/module usage from files if it's no longer needed.

Change 3229399 on 2016/12/09 by Josh.May@josh.may-WEX-MacBookPro-DevMain

	#WEX
	#JIRA: WEX-3793
	- Added config support for enabling/disabling the iOS integrated keyboard implementation.
	- Switched over to using the iOS integrated keyboard implementation.
	- Ensure the character code, rather than the key code, is passed in to IOSInputInterface's calls to OnKeyChar. This caused the backspace key
to not function as intended...
	- Expanded the iOS integrated keyboard implementation to support different keyboard types and keyboard deactivation when text field widget
focus is lost.

Change 3228702 on 2016/12/09 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Widget Compiler - Improving the error message for multiple widget trees.

Change 3228369 on 2016/12/08 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Engine - Adding an OnStart to UGameInstance that is called for both StartPIEGameInstance and StartGameInstance.

Change 3228267 on 2016/12/08 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Windows - Adding code to catch remote desktop cases where no mouse was detected, but it's a remote session, which sometimes doesn't list a
mouse, which affects how the engine handles input.

Change 3226374 on 2016/12/07 by Nick.Darnell@Nick.Darnell_BattleBreakers

	UMG - Exposing a way to dynamically set the touch/click method on buttons.

Change 3226320 on 2016/12/07 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	fix for get-task-allow being true when distribution is enabled

Change 3226103 on 2016/12/07 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Editor - Adding PPI/DPI to the unit conversion tables.

Change 3225274 on 2016/12/07 by Michael.Noland@mnoland_T2801_WEX_Main

	Engine: Made "Can't load invalid package" warning clearer that it has a name (and thus clearer when there was no name at all)

Change 3224426 on 2016/12/06 by Michael.Noland@mnoland_T2801_WEX_Main

	Platform: Improved the warning message slightly when there is no local notification service

Change 3224421 on 2016/12/06 by Michael.Noland@mnoland_T2801_WEX_Main

	Engine: Prevent fighting between GEngine->SetMaxFPS and UGameUserSettings::SetFrameRateLimitCVar that caused log spam by preserving the 'last
set' reason when changing the value

Change 3224401 on 2016/12/06 by Michael.Noland@mnoland_T2801_WEX_Main

	[Reimplemented CL# 3134965 from Dev-Blueprints]
	Fix for crash in FCDODiffControl when CDOs have different numbers of properties. First branch in the while loop would incorrectly advance Iter
past the end of the array. Comments courtesy of Jon.Nabozny
	#jira UE-36263

Change 3224380 on 2016/12/06 by Michael.Noland@mnoland_T2801_WEX_Main

	UMG: Added a compilation warning for naughty child blueprints that define a widget hierarchy if the parent also has one (only the children
widgets will be created, the parent ones are ignored)

Change 3224084 on 2016/12/06 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - Add ue4.displaymetrics.dpi metadata to query device DPI for Android
	*MERGED* Change: 3216126 Date: 11/30/2016 6:10 PM

Change 3223665 on 2016/12/06 by Chance.Lyon@Chance.Lyon_WEX_Dev-Main

	#WEX
	#JIRA: WEX-3557
	- Reduce the uniform buffer size for Android GPU's

Change 3222576 on 2016/12/05 by Michael.Noland@mnoland_T2801_WEX_Main

	MediaPlayer: Fixed a typo in the editor style that included .png twice

Change 3222574 on 2016/12/05 by Michael.Noland@mnoland_T2801_WEX_Main

	Editor: Added the missing editor Slate brush WhiteGroupBorder (been missing since branch creation, no idea why)

Change 3222487 on 2016/12/05 by Michael.Noland@mnoland_T2801_WEX_Main

	[Reimplementing CL# 3149669 from Dev-Core]
	Lower verbosity of warnings from deleting native properties. These cases do not cause any problems and are not fixable without resaving the
content after it has started warning. I checked Jira history and neither of these warnings has ever found a real bug, but has caused a lot of content
to be resaved unnecessarily.

Change 3222486 on 2016/12/05 by Michael.Noland@mnoland_T2801_WEX_Main

	[Reimplementing CL# 3149397 from Dev-Framework]
	Fix collision profile writing out response values to channels that don't exist.

Change 3222485 on 2016/12/05 by Michael.Noland@mnoland_T2801_WEX_Main

	Engine: Undoing a temporary workaround for one kind of warning that caused a different kind of warning (RE: property in collision profiles)

Change 3222341 on 2016/12/05 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: david.nikdel
	Back out changelist 3220848 now that NickD's proper fix is in

Change 3222327 on 2016/12/05 by Nick.Darnell@Nick.Darnell_BattleBreakers

	UI  - Missions markers should now accept a single click to become activated.
	UI - This should resolve the majority of problems with the game getting stuck in a state where mouse capture was stolen permanatly.
	UI - Game should no longer register swipe too easily, it's now using the physical distance calculation for the screen.

	#jira WEX-4390
	#jira WEX-4137
	#jira WEX-4373

Change 3222046 on 2016/12/05 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Android / IOS / Platform - Updating the logic for screen density to call an internal one overridden by each platform, and to cache that in
GenericPlatformMisc, also adding some calls to convert Inches to Pixels and Pixels to Inches.  Did some general cleanup around this work with names
and such.

	Slate - Also fixing an issue in SlateApp, we now always break mouse lock on Touch input when a finger is released.

Change 3221875 on 2016/12/05 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: david.nikdel
	#ChunkInstaller:
	- Added support for errors that may occur during ParseManifest
	- Renamed BuildVersion (variable) to BuildUrl to match JSON key
	- Fail parsing on bad file entry
	- In the event of a client mismatch, fail manifest download with a specific error (will need to plus this later at the app level)
	- Don't rebind delegates when entering Setup after a Retry
	- Check bNeedsRetry befpre doing countdown for auto-retry

Change 3221737 on 2016/12/05 by Michael.Noland@mnoland_T2801_WEX_Main

	Engine: Added the ability to suppress warnings when using on-screen log warning/error display (DurationOfErrorsAndWarningsOnHUD > 0) by
setting Engine.SupressWarningsInOnScreenDisplay to 1

Change 3221593 on 2016/12/05 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	fix for icons missing in the IPA
	#jira WEX-4380

Change 3220588 on 2016/12/03 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: david.nikdel
	#IOS #PlatformMisc: Adding PPI information for IOS_IPhone7 and IOS_IPhone7Plus

Change 3220084 on 2016/12/02 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	fix for iPhone 7/7Plus not finding the correct splash screen image for holding
	addition of iPhone 7/7Plus device profiles
	hold the splash screen until the manifest is downloaded

Change 3220056 on 2016/12/02 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	changes to make it so we only copy the images needed for the support orientations
	set minimu iOS to 8

Change 3220036 on 2016/12/02 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	make it so the engine doesn't try to load editor only content in the game
	#jira WEX-4319

Change 3219992 on 2016/12/02 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Slate - Locking down the exposure of ComputeDesiredSize, this function was never intended to be public on widgets, so trying to prevent that.

Change 3219754 on 2016/12/02 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Adding the console command Slate.ShowDebugTextLayout to help debug layout issues in Slate.

Change 3218374 on 2016/12/01 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	some code missed in an earlier check-in to reduce data duplication in chunks

Change 3218358 on 2016/12/01 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: michael.noland
	Engine: Changed FPSChart analytics events to send IniPlatformName instead of PlatformName for the PlatformName parameter
	- Most platforms don't change
	- Android removes the texture format suffix from it (main goal of the change, though it also unifies behavior with a number of other analytics
events that were already using IniPlatformName)
	- Desktop platforms remove the editor/client/server distinction, which should be fine since the event names for client/server are different
already
	#rb david.nikdel

Change 3218354 on 2016/12/01 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: michael.noland
	Engine: Added FPlatformMisc::GetDeviceMakeAndModel() which tries to return DeviceMake|DeviceModel where possible, and CPUVendor|CPUBrand
otherwise
	#rb david.nikdel

Change 3218353 on 2016/12/01 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: michael.noland
	Engine: Added reporting of PeakPhysical and PeakVirtual memory usage to FPS chart analytics
	#rb david.nikdel
	#jira WEX-4342

Change 3217769 on 2016/12/01 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Slate - Disabled widgets now render correctly on mobile.  Previously they were being transformed as if they were in linear space, on mobile
the textures and fonts are already in gamma space, so the transform for luminance needs to also be done in gamma space.

Change 3217059 on 2016/12/01 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Slate/UMG - Tweaking how the scrollbars fade on different platforms to be a platform defined feature.  Cleaning up some logic in the
InertialScrollManager to be configurable externally.

Change 3216605 on 2016/12/01 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Fixed precision issues on Adreno devices when sampling sRGB textures
	#rb Jack.Porter

Change 3216388 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers

	IOS - Tweaking the unknown screen density value to be a multiple of the native CSF, which should get us pretty close.

Change 3216382 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Android - Calculating CSF using the surface size vs window size.

Change 3216376 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers

	IOS - Fixing a bug with scaling screen density by the content scale factor.

Change 3216335 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Android - Converting the code over in GetPhysicalScreenDensity to use an average of xdpi and ydpi as the approximate density, as the direct
density call is affected by users adjusting their screen size option in the OS, which we definitely are not interested in taking into account here.

Change 3216313 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Build - Fixing the build on mac.

Change 3216126 on 2016/11/30 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Add ue4.displaymetrics.dpi metadata to query device DPI for Android

Change 3215983 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Slate - Reverting a change to button I was testing things with.

Change 3215971 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers

	UMG/Android - Making several improvements to the way mobile scrolling is handled in UMG/Slate.  Introducing a way to get the Physical Screen
Density on Android and iOS.  On iOS it's a hardcoded set of densities, for android they're loaded from the AndroidEngine.ini.  If we can't find a
match to the model phone you're on, we rely on the OS to report a reasonable screen density.  With physical screen dimension knowledge, we can make
much better decisions about deadzones around the finger before things like Drags are triggered.  This change also introduces a gesture detector to
Slate so that Slate can simulate gestures that may not be provided by the OS.  The first and only gesture we currently support is the new Long Press
gesture that has been added.  The innertial scrolling logic has been rewriten on the ScrollBox, and the inertial scroll manager now has a better
default experience.

Change 3215963 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers

	UMG - Making a pass on invalidation.  The ability to store invalidated elements in local space locations and apply transforms in the GPU had
rotted, restoring that functionality.

Change 3214960 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers

	Android - Adding a visualizers file for the Nsight Tegra debugger for visual studio for UE4 types.

Change 3214557 on 2016/11/29 by Dmitriy.Dyomin@dmitriy.dyomin-wex

	Disable dynamic buffer discarding on Adreno330 (was casuing 10ms stalls on slate buffers update)
	#rb Jack.Porter

Change 3214410 on 2016/11/29 by Josh.May@josh.may-WEX-MacBookPro-DevMain

	#WEX
	#JIRA: WEX-4255
	- Ensure pending HTML content and URL are properly retained for IOSWebViewWrapper instances.

Change 3213890 on 2016/11/29 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	update to the notification delegates to add a parameter for the state of the app when the notification was recieved

Change 3212287 on 2016/11/28 by Josh.May@josh.may-WEX-JMAY-Main

	#WEX
	#JIRA: WEX-4135
	- Added a full purge of GC array pool following full GC purges.

Change 3212256 on 2016/11/28 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Adjust analytics plugin for Android and iOS
	#jira WEX-3939
	#rb David.Nikdel

Change 3211730 on 2016/11/28 by Allan.Bentham@allan.bentham_WEX

	Create and set PrimitiveSceneProxy->PrimitiveSceneInfo before SetTransform render thread command is enqueued. Avoids race condition with
FPrimitiveSceneInfo's constructor which can occur on out-of-order CPUs.
	#jira WEX-3691
	#rb jack.porter

Change 3207395 on 2016/11/22 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: bruce.knapik
	#WEX Final fix for buildmachine crash

Change 3207375 on 2016/11/22 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: bruce.knapik
	#WEX Fix for crash on buildmachine part 2: this time I saved the file!

Change 3207341 on 2016/11/22 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: bruce.knapik
	#WEX Fix for crash on buildmachine

Change 3207019 on 2016/11/21 by Jason.Bestimt@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	temporary fix for crash after logging in
	#jira WEX-4085

Change 3205594 on 2016/11/20 by Jack.Porter@Jack.Porter_WEX_Stream

	Added workaround for WEX-2079 - Fog effects on the map are rendering as circles.

Change 3204498 on 2016/11/18 by Peter.Sauerbrei@peter.sauerbrei_WEX

	update IPP to look at Library/Caches as well when backing up the documents

Change 3204238 on 2016/11/18 by Peter.Sauerbrei@peter.sauerbrei_MacWEX

	implement peak memory stats on IOS
	#jira WEX-3947

Change 3204187 on 2016/11/18 by Peter.Sauerbrei@peter.sauerbrei_WEX

	GPU vendor data from MichaelN

Change 3203487 on 2016/11/17 by Peter.Sauerbrei@peter.sauerbrei_WEX

	latest changes to generate the proper manifest and be ready for MCP

Change 3203362 on 2016/11/17 by Peter.Sauerbrei@peter.sauerbrei_WEX

	bringing over fix for Apple HTTP requests

Change 3203188 on 2016/11/17 by Peter.Sauerbrei@peter.sauerbrei_WEX

	slightly better fix for the curl crash

Change 3202785 on 2016/11/17 by Peter.Sauerbrei@peter.sauerbrei_MacWEX

	IOS now reads/writes from Library/Caches instead of Documents

Change 3202565 on 2016/11/17 by Peter.Sauerbrei@peter.sauerbrei_WEX

	switch to platform manifest names in prep for switch to MCP
	disable screen saver while downloading chunks
	another potential build machine speed up

Change 3202141 on 2016/11/17 by Peter.Sauerbrei@peter.sauerbrei_WEX

	correct fix for cook crash

Change 3201994 on 2016/11/17 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for crash when cooking without chunks

Change 3201552 on 2016/11/16 by Peter.Sauerbrei@peter.sauerbrei_WEX

	chunk assignment fixes

Change 3201315 on 2016/11/16 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Return Android Make, Model, and Version for GetCPUVendor, GetCPUBrand, GetOSVersions
	#rb Michael.Noland

Change 3200892 on 2016/11/16 by Michael.Noland@mnoland_T2801_WEX_Main

	Editor: Fixed a crash when opening the cooker settings panel (and got rid of some junk string literals)

Change 3200737 on 2016/11/16 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for Android build error

Change 3200719 on 2016/11/16 by Peter.Sauerbrei@peter.sauerbrei_WEX

	potential speed up of builds

Change 3200608 on 2016/11/16 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for crash in the curl debug info callback
	#jira WEX-4039

Change 3200237 on 2016/11/16 by Jack.Porter@Jack.Porter_WEX_Stream

	Remove mosaic resolution limitation on ES3 devices
	#jira WEX-3119
	#rb Dmitriy.Dyomin

Change 3199640 on 2016/11/15 by Peter.Sauerbrei@peter.sauerbrei_WEX

	addition of the device token to the log

Change 3199313 on 2016/11/15 by Peter.Sauerbrei@peter.sauerbrei_WEX

	switch back to IOSCompile-01 for default mac

Change 3198769 on 2016/11/15 by Peter.Sauerbrei@peter.sauerbrei_WEX

	allow different deployments from the command line when using chunking
	NOTE: you can NOT change the deployment after starting due to the way chunking downloads data
	#jira WEX-3951

Change 3198423 on 2016/11/15 by Peter.Sauerbrei@peter.sauerbrei_WEX

	potential fix for audio cued at different speeds
	#jira WEX-3637

Change 3197915 on 2016/11/15 by Josh.May@josh.may-WEX-MacBookPro-DevMain

	#WEX
	- Disabled freed alloc caching for MallocBinned on mobile.

Change 3197734 on 2016/11/14 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for IOS never enabling the chunk data

Change 3197732 on 2016/11/14 by Michael.Noland@mnoland_T2801_WEX_Main

	Engine: Moved FDumpFPSChartToEndpoint to the public header, and fixed an ensure if sending FPS chart analytics during shutdown (now sends 0,0
for SizeX/SizeY rather than omitting them entirely)

Change 3197720 on 2016/11/14 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#WEX - reconciled android settings
	- added placeholder app id

Change 3196696 on 2016/11/14 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for missing platform for promotion

Change 3196628 on 2016/11/14 by David.Nikdel@david.nikdel_WEX

	#Analytics: Added "AttributionId" field to SessionStart event. This reflects the advertising tracking ID for a given device (for iOS this is
the IDFA).

Change 3196534 on 2016/11/14 by Peter.Sauerbrei@peter.sauerbrei_WEX

	missed one texture on the resave

Change 3196310 on 2016/11/14 by Peter.Sauerbrei@peter.sauerbrei_WEX

	warning reduction

Change 3196287 on 2016/11/14 by Peter.Sauerbrei@peter.sauerbrei_WEX

	resaved engine materials to a version

Change 3196103 on 2016/11/12 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for heroes not showing up in the hero inspect menu for chunking
	they will briefly show as a question mark until the download completes, might want an animated effect instead for the future
	#jira WEX-3936
	#jira WEX-3958

Change 3195827 on 2016/11/11 by Michael.Noland@mnoland_T2801_WEX_Main

	UMG: Changed wording of warning slightly

Change 3195806 on 2016/11/11 by Michael.Noland@mnoland_T2801_WEX_Main

	UMG: Added a warning message to UWidget::RemoveFromParent when being used to remove an instantiated widget that has no UMG parent owner (e.g.,
someone manually called TakeWidget and placed it in a native Slate slot).  In this case it is a no-op, and the user was probably expecting it to
remove it from the native parent widget and destroy the slot, which is impossible at this level (the calling code needs to handle that directly)

Change 3195210 on 2016/11/11 by Peter.Sauerbrei@peter.sauerbrei_WEX

	addition of advertising id, IOS implemented

Change 3195124 on 2016/11/11 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#WEX - android setup for new permanent backend
	- added BattleBreakers keystore
	- added billing settings for android in both Engine/Game AndroidEngine.ini (why do we have settings in both that overlap, DefaultPlatform for
OSS was wrong there)
	- turned on ForDistribution (not sure how this affects other platforms, but Android won't work without this)

Change 3194283 on 2016/11/10 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - hopefully last of the Android/GooglePlay cleanup
	- QueryInAppPurchases never needed an array of consumables flag
	- BeginPurchase doesn't take a bConsumable flag (old code calls it inside PurchaseComplete, new interface requires call to  FinalizePurchase)
	- all java functions now return the productToken as part of the callback if applicable
	-- token easily accessible in java, saves Base64 decode and json calls to get in native
	- ** note ** fixed up GameCircle/Amazon, fortunately it didn't use these flags either

Change 3194208 on 2016/11/10 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - GooglePlay purchasing refactor
	- finished QueryReceipts to not care about bRestorePurchases and left comment with explanation
	- delegates to low level GooglePlay calls return FGoogleTransactionData to sooner encapsulate the opaque data
	- fixed up RestoreTransactions for StoreV1 to use multicast delegate as well
	- changed delegate assignment to use thread safe shared pointers (required adding Init() and moving code out of constructor where .AsShared is
premature)
	- reduced log verbosity and log spam

Change 3194205 on 2016/11/10 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#Android - small java code cleanup

Change 3194003 on 2016/11/10 by Michael.Noland@mnoland_T2801_WEX_Main

	Engine: Made the set of interesting FPS thresholds for FPS charts configurable (as a comma separated list in cvar
t.FPSChart.InterestingFramerates)
	Engine: Exposed helpers on FPerformanceTrackingChart (GetAverageFramerate() and GetPercentMissedVSync())
	#rb david.nikdel

Change 3194002 on 2016/11/10 by Michael.Noland@mnoland_T2801_WEX_Main

	Core: Added FHistogram::InitFromArray to create a histogram from an explicit list of thresholds
	#rb david.nikdel

Change 3193771 on 2016/11/10 by Chance.Lyon@Chance.Lyon_WEX_Dev-Main

	#WEX
	#JIRA: WEX-3856
	- Refactored how loading screens work
	- Allow Pre / Post load map to handle loading screen setup / teardown by default
	- Manually show the loading screen when we perform the initial level save
	- Re-enable the loading screen ensure

Change 3193723 on 2016/11/10 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for crash when bringing up the console in chunked build
	#jira WEX-3922
	fix for missing assets at game start in chunked build

Change 3193503 on 2016/11/10 by Peter.Sauerbrei@peter.sauerbrei_WEX

	start pushing streaming data to the appropriate deployment

Change 3193210 on 2016/11/10 by Peter.Sauerbrei@peter.sauerbrei_WEX

	allow CloudStorage to be re-initialized with new credentials if necessary

Change 3192750 on 2016/11/09 by Josh.May@josh.may-WEX-JMAY-Main

	#WEX
	- Added a mechanism for force-disabling GPU particles.
	- Disabled GPU particles for all iOS devices. This was eating up a constant 56MB of render target memory, whether or not the feature was used.

Change 3192686 on 2016/11/09 by Peter.Sauerbrei@peter.sauerbrei_WEX

	latest s3 chunk data placement

Change 3192468 on 2016/11/09 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#Android - added features to GooglePlay IAP apis
	- audited code against example code
	- added some code to JNI to make IAP functions not optional if store is enabled
	- added ConsumePurchase call to separate consumption until after entitlements have been granted
	- added QueryExistingPurchases call to enumerate pending/permanent transactions

Change 3192246 on 2016/11/09 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for windows build failure
	first attempt at promotion code

Change 3191660 on 2016/11/09 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for PC build of IOS

Change 3191598 on 2016/11/09 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for too many open handles

Change 3191459 on 2016/11/09 by Peter.Sauerbrei@peter.sauerbrei_WEX

	more fixes for building chunks on the build machines

Change 3190565 on 2016/11/08 by Peter.Sauerbrei@peter.sauerbrei_MacWEX

	fixes for Remote notifications

Change 3190466 on 2016/11/08 by Peter.Sauerbrei@peter.sauerbrei_WEX

	pointing at the s3 servers

Change 3189120 on 2016/11/07 by Peter.Sauerbrei@peter.sauerbrei_WEX

	optimization for obtaining chunk data
	startup screen which checks for updated data before loading the entry (not yet enabled)

Change 3186019 on 2016/11/03 by David.Nikdel@david.nikdel_WEX

	#Engine: Empty string is a valid ImportText for an array (indicates an empty array)

Change 3185461 on 2016/11/03 by Chris.Babcock@Chris.Babcock_Z2433_WEX

	Corrections to memory stats for Android
	#jira WEX-3760
	#ue4
	#android

Change 3184309 on 2016/11/02 by Chance.Lyon@Chance.Lyon_WEX_Main

	#WEX
	#JIRA: WEX-3721
	- Remove all the "WaitForLoadingScreen" calls.  These actually kill the loading screen before the travel, causing the actual travel to be a
visible hang instead of a spinner
	- Commented out and ensure that got hit before it killed the loading screen. Seems like the wrong check to me.

Change 3184029 on 2016/11/02 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for some load hitches on mobile

Change 3183761 on 2016/11/02 by Peter.Sauerbrei@peter.sauerbrei_WEX

	allow Android to specify which texture format to get

Change 3183760 on 2016/11/02 by Peter.Sauerbrei@peter.sauerbrei_WEX

	updates for chunking on the various platforms

Change 3182107 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX

	when chunking is disable, initialize the chunk installer in a paused state

Change 3182068 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for Scheme name when project is not UE4Game

Change 3182007 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX

	more logging to track down this iOS signing failure

Change 3181844 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX

	attempt to generate the plist before trying to generate the project for stub generation for iOS

Change 3181816 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX

	revert out the extra logging for the iOS build now that I have verified it is working correctly

Change 3181806 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for warnings on IOS

Change 3181779 on 2016/11/01 by David.Nikdel@david.nikdel_WEX

	#Engine: Fix for null pointer dereference if you have closed the animation tool window.

Change 3181773 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for shipping build failure

Change 3181763 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for Android compile failure

Change 3181667 on 2016/11/01 by Josh.May@josh.may-WEX-JMAY-Main

	#WEX
	#JIRA: WEX-3753
	- Ensure the input type of Android keyboard input textbox is set before populating the initial content.

Change 3181666 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX

	initial chunk installer submission, first pass, disabled by default
	#rb none

Change 3181408 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX

	some logging to track down why the build machine is using the wrong certificate and provision

Change 3181070 on 2016/11/01 by Nathan.Green@Nathan.Green_Friday_Main

	#WEX
	- Fixing broken android build temporarily

Change 3180690 on 2016/10/31 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#WEX - Android support enabled
	- some better java logging
	- added ini placeholder for GooglePlay features that need setting (set locally, not ready to check in yet without backend app setup)

Change 3180322 on 2016/10/31 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - setup catalog to be GooglePlay aware
	- fixed up some log output inconsistencies

Change 3180307 on 2016/10/31 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - updating libPNG to 1.5.27 for Android only (from Main, early integration)
	- wolf platform commented out (needs to be reinstated before merge to main)

Change 3175413 on 2016/10/26 by Peter.Sauerbrei@peter.sauerbrei_MacWEX

	fix for buffer being re-used before it was out of use by GPU
	#rb mark.satterthwaite
	#jira WEX-3482

Change 3175143 on 2016/10/26 by Steve.Allison@steve.allison_Z4797_6338

	Adding:

	Personal_iPhone6SP_DavidN
	Personal_iPhone7P_DonaldM

Change 3174322 on 2016/10/25 by Steve.Allison@steve.allison_Z4797_6338

	Adding:

	Personal_iPhone6P_ZakP

Change 3173760 on 2016/10/25 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for incorrect icons and missing splash screens
	#rb none
	#jira wex-3012

Change 3169892 on 2016/10/20 by Steve.Allison@steve.allison_Friday_Main_Stream

	Adding:

	UX_iPadMini4_UX8
	UX_iPadMini4_UX7
	UX_iPadAir2_UX6
	UX_iPadAir2_UX5
	UX_iPhone6SP_UX4
	UX_iPhone6SP_UX3
	UX_iPhone6S_UX2
	UX_iPhone6S_UX1
	Personal_iPhone5S_PaulH
	Personal_iPhone6_PaulI
	Personal_iPhone6_EdZ

Change 3169848 on 2016/10/20 by Steve.Allison@steve.allison_Friday_Main_Stream

	Adding:

	Personal_iPhone6S_NickP
	Personal_iPhone6SP_SteveA
	Personal_iPhone6_NickC
	Personal_iPhone6_GeremyM
	Personal_iPhone6S_AndyK_HSL
	Personal_iPhone6_LizS_HSL
	Personal_iPhone7_JoshM_HSL
	Personal_iPhone6_CaseyS
	Personal_iPhone6S_GregL
	Personal_iPhone6S_BruceK
	Personal2_iPhone7P_DavidH
	Personal1_iPhone7P_DavidH
	Personal_iPhone6SP_SimonH

Change 3169651 on 2016/10/20 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for profile captures not working with Metal

Change 3169537 on 2016/10/20 by Josh.May@josh.may-WEX-MacPro2-Main

	#WEX
	#JIRA: WEX-3059
	- Added injection of TouchMoved events whenever a TouchBegin is triggered. This allows legacy iOS devices (i.e. pre-3D Touch) to properly
emulate MouseOver/MouseMoved events for rapid taps.

Change 3169294 on 2016/10/20 by Josh.May@josh.may-WEX-JMAY-Main

	#WEX
	#JIRA: WEX-3497, WEX-3499
	- Downgraded a few Engine-level log warnings to verbose. These are cases where the logs are either redundent or triggering in spite of nothing
being functionally wrong.

Change 3168564 on 2016/10/19 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - typo fix

Change 3165381 on 2016/10/17 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - changed log formatting line for GFrameCounter to properly use %llu instead of %d
	- fixes Android display problems
	#rb josh.adams

Change 3165359 on 2016/10/17 by Steve.Allison@steve.allison_Friday_Main_Stream

	Adding:

	Partner_01_iPhone6SP_HardSuit

Change 3165127 on 2016/10/17 by Nathan.Green@Nathan.Green_Friday_Main

	#WEX
	#JIRA: WEX-3320
	- Putting back code erased by the merge, since the viewport is always handling touch commands we'll never get a chance to attempt to drop the
object and cancel the operation if we fail, instead we should handle DropEvents first as otherwise our widgets will never recieve an
NativeOnDragCancelled event.

Change 3164936 on 2016/10/17 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN

	#UE4 - missing code related to the OSS plugin refactor to respect the "enabled by default" settings in the .plugin file

Change 3164933 on 2016/10/17 by Josh.May@josh.may-WEX-MacPro2-Main

	#WEX
	- Fixed naming conventions for the iPadPro device profile configs.

Change 3162452 on 2016/10/13 by Peter.Sauerbrei@peter.sauerbrei_WEX

	missed one engine texture for optimization, do not merge back to engine
	#rb none

Change 3162414 on 2016/10/13 by Peter.Sauerbrei@peter.sauerbrei_WEX

	reduce the engine texture sizes, do not merge this back to the main engine stream
	#rb none

Change 3162326 on 2016/10/13 by Nathan.Green@Nathan.Green_Friday_Main

	#WEX
	- Reverting change, with Peter's ok, to fix scrollboxes behaving strangely on mobile devices

Change 3160261 on 2016/10/12 by Steve.Allison@steve.allison_Friday_Main_Stream

	Adding:

	9744_iPhone7P_EpicQA
	9745_iPhone7_EpicQA

Change 3157269 on 2016/10/10 by Peter.Sauerbrei@peter.sauerbrei_WEX

	removed a line that shouldn't have been in, fixes MattH save crash
	#rb none

Change 3155086 on 2016/10/07 by David.Nikdel@david.nikdel_WEX

	#Analytics: Better support for connection loss scenarios
	- Enforce a minimum delay (2 min) after any failed submission.
	- Delay only applies to timeout/capcaity flushes, not flushes due to end of session or manually requested flushes.
	- Remove URL from the DroppedSubmission event per Wes

Change 3154873 on 2016/10/07 by Steve.Allison@steve.allison_Friday_Main_Stream

	Add:

	8034_iPhone7_EpicQA

Change 3153367 on 2016/10/06 by Steve.Allison@steve.allison_Friday_Main_Stream

	Adding:

	9597_iPhone6SP_Epic

Change 3153322 on 2016/10/06 by Peter.Sauerbrei@peter.sauerbrei_WEX

	disable shadows for android devices as well

Change 3152758 on 2016/10/05 by Peter.Sauerbrei@peter.sauerbrei_MacWEX

	disable shadows for all IOS device profiles
	enable arm64 for development and shipping
	#rb none

Change 3150660 on 2016/10/04 by David.Nikdel@ROBOMERGE_WEX_Main

	#ROBOMERGE-AUTHOR: peter.sauerbrei
	Merging

	//WEX/Main/Engine/...

	to //WEX/Release-03/Engine/...

Change 3150347 on 2016/10/04 by Steve.Allison@steve.allison_Friday_Main_Stream

	Adding:

	9724_iPadAir2_EpicQA

Change 3149190 on 2016/10/03 by Peter.Sauerbrei@peter.sauerbrei_WEX

	bring over the rest of the code signing fixes for Xcode 8
	#rb none

Change 3149101 on 2016/10/03 by Peter.Sauerbrei@peter.sauerbrei_WEX

	re-submit a built IPP with the code signing changes

Change 3147338 on 2016/09/30 by David.Nikdel@david.nikdel_WEX

	Merging CL 3136158
	from //UE4/Main/...
	to //WEX/Main/...

	UBT: Fix support for the x64-on-x86 compiler shipped with Visual Studio Express, which is causing errors for artists generating project files
with UGS. Was not looking for the compiler executable at the correct path.

Change 3143944 on 2016/09/28 by Peter.Sauerbrei@peter.sauerbrei_WEX

	Merging using WEX_Main_to_UE4_WEX_Staging

	Bringing in Main from WEX-Staging

	#rb none

Change 3138249 on 2016/09/23 by Chad.Garyet@cgaryet_wex_main

	Integrating codesign fix into WEX/Main

Change 3137757 on 2016/09/23 by Peter.Sauerbrei@peter.sauerbrei_WEX

	fix for code signing on Xcode 8 (re-made from 4.13 stream)
	#rb none

Change 3133037 on 2016/09/20 by Chance.Lyon@Chance.Lyon_WEX_Main

	#WEX
	- Fix warning about architecture mismatch

Change 3131645 on 2016/09/19 by Josh.May@josh.may-WEX-MacPro2-Main

	#WEX
	- Changed hard-coded TextureCube asset defaults from SunsetAmbientCubemap to DefaultTextureCube. This buys us ~16MB memory savings on mobile.

Change 3131515 on 2016/09/19 by David.Nikdel@david.nikdel_WEX

	#Slate: Replace WheelScrollAmount constant with a CVAR

Change 3130602 on 2016/09/19 by Nathan.Green@Nathan.Green_Friday_Main

	#WEX
	#JIRA: WEX-3154, WEX-2954, WEX-2953
	- Fix location of WidgetComponents when we're offsetting the screen of the game (fullscreen mode in the game state)

[CL 3479958 by Peter Sauerbrei in Main branch]
2017-06-08 10:21:39 -04:00
Jamie Dale
6caaba7cca Fixed Windows file picker potentially mangling the returned path
#jira UE-43319
#rb Matt.Kuhlenschmidt
#lockdown Nick.Penwarden

[CL 3384976 by Jamie Dale in Main branch]
2017-04-07 14:35:24 -04:00