Commit Graph

24 Commits

Author SHA1 Message Date
sebastien hillaire
92962d5206 Fixed sky diffuse being invisible in project with movable skylight and r.SupportStationarySkylight is false.
Behavior was changed in 4691984.

SupportStationarySkylight should not be used to conditionally create a sky or not. Sky is always used for default environment diffuse (just can be rendered in non base pass but environment pass depending on whether lighting/sky is static/stationary of movable).
A SphereReflectionCapture is not enough to get diffuse light (it can only be used for specular). Which is what we see in this JIRA bug.

Fix is to always create the sky and just make it visible or not (the new behavior added in 4691984 and that is correct)

#rb Jurre.deBaare


#ROBOMERGE-SOURCE: CL 5683666 via CL 5683884

[CL 5683886 by sebastien hillaire in Main branch]
2019-04-02 06:05:37 -04:00
Thomas Sarkanen
e0f6136524 Merging //UE4/Dev-Main to Dev-Anim (//UE4/Dev-Anim) @ CL 4704791
#rb none
#jiira none

[CL 4708070 by Thomas Sarkanen in Dev-Anim branch]
2019-01-11 04:11:30 -05:00
Jurre deBaare
c671148b54 Add functionality to Preview Scene Settings that allows the user to hide Environment Cubemap without disabling lighting
#fix Add bUseImageBasedLighting flag to preview scene, so new behaviour when hiding the enviroment is that IBL is still on
#misc Fixed up comment and readded missing code from old merge
#jira UE-54102
#rb Thomas.Sarkanen

[CL 4691984 by Jurre deBaare in Dev-Anim branch]
2019-01-09 06:57:18 -05:00
Thomas Sarkanen
7088a2f273 Merging //UE4/Dev-Main to Dev-Anim (//UE4/Dev-Anim) @ CL 4683693
#rb none
#jira none

[CL 4684302 by Thomas Sarkanen in Dev-Anim branch]
2019-01-07 05:38:46 -05:00
Thomas Sarkanen
8ba3c4c087 Merging //UE4/Dev-Main to Dev-Anim (//UE4/Dev-Anim) @ CL 4643671
#rb none
#jira none

[CL 4665410 by Thomas Sarkanen in Dev-Anim branch]
2018-12-17 06:31:16 -05: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
95dbcb7f47 Disabling more benign PVS-Studio warnings.
#rb none
#lockdown Nick.Penwarden

[CL 3951982 by Ben Marsh in Main branch]
2018-03-17 20:46:41 -04: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
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
Marc Audy
9d110f953e Copying //UE4/Dev-AnimPhys to //UE4/Dev-Main (Source: //UE4/Dev-AnimPhys @ 3806524) (Part2)
#lockdown Nick.Penwarden
#rb none
#rnx

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

Change 3783110 by Thomas.Sarkanen

	Added support for logical negation when copying to array properties in the fast path

	#jira UE-52043 - Anim fast path correctly doesn't handle copying to arrays of bools with logical negation

Change 3783112 by Thomas.Sarkanen

	Fixed not being able to assign/unassign constraint and physical animation profiles from the context menu

	#jira UE-50205 - Constraint cannot be assigned or unassigned from current profile when using "Unassign" from the context menu in the Skeleton Tree and Graph

Change 3783114 by Thomas.Sarkanen

	Asset picker now only reports 'picks' on user interactions

	In Ocean and other projects with lots of animation assets, the asset picker amortizes its filter queries over a number of frames. This causes the list to temporarily not include the currently selected item, which then gets reported to client code as a 'deselection'. To address this (and to maintain backwards compatibility) I've added a new delegate that gives more context for selections to the SAssetPicker, allowing us to not report selections that are 'Direct'.

	#jira UE-46802 - Searching for an animation from the dropdown in persona causes it to instantly close

Change 3783118 by Thomas.Sarkanen

	Added inline time/frame settings to notify context menu

	#jira UE-45410 - Inline MontageSection/Notify Time Entry

Change 3783122 by Thomas.Sarkanen

	Collision Response dropdown is now a checkbox

	Added details customization to allow the enum to masquerate as a bool property

	#jira UE-47916 - Drop down used for Collision Response enable/disable in Physics Asset Editor

Change 3783183 by Jurre.deBaare

	Follow up fix for toggling post processing in the preview scene

Change 3783186 by Jurre.deBaare

	Material Baking Options has two Mesh Settings sections
	#fix Changed category names for to allow for two distinct categories (would have preferred to merge them, but am limited by the way detailsview handles multiple objects with containing same category)
	#jira UE-52645

Change 3783188 by Jurre.deBaare

	Duplicating:
	"Simplygon Skelmesh "Regenerate" button remains for content that had Lods created in simplygon, even when it's not installed. On regenerating editor crashes - FPersonaMeshDetails::ApplyChanges()
	#fix Ensure the regenerate button is disabled when there is no MeshReduction interface available
	#jira UE-52641

Change 3783205 by Jurre.deBaare

	Bounds are not shown correctly in Persona for imported alembic skeletal mesh
	#fix Ensured that we do not add invalid of (0,0,0) bounds to outgoing mesh bounds
	#jira UE-49338

Change 3783248 by Jurre.deBaare

	Preview Scene Settings window is missing Search bar
	#fix changed search bar flag on Details View
	#jira UE-50063

Change 3783267 by Jurre.deBaare

	Animation Modifiers: GetBonePosesForTime does not create valid data for GetBonePose
	#fix changed the way we retrieve bone transforms, now take it directly from the raw data rather than from a pose
	#jira UE-52057

Change 3783281 by Jurre.deBaare

	Tool Tip issues in Animation Editor Preferences
	#fix corrected typos in comments
	#jira UE-51338

Change 3783373 by Thomas.Sarkanen

	Added error-reporting to the profile name widgets

	This means that the effect of renaming profiles the same as an existing one is clear (i.e. we deny it now).

	#jira UE-48120 - Renaming Physics profiles the same as existing Physics profiles switches profiles and is confusing

Change 3783438 by Jurre.deBaare

	Vertex paint fill tool fills all channels
	#fix Ensure that the current channel fill selection in the Mesh Painter is also used for the fill tool, to allow the user masking out certain channels when using fill
	#jira UE-49256

Change 3783583 by Thomas.Sarkanen

	Correctly return whether a mesh section is shown or not when it has not been edited

	This fixes skeletal->static mesh conversion

Change 3783598 by Thomas.Sarkanen

	Fix multi-convex generastion for skeletal meshes

	Some triangle indices were being missed out of the index buffer, so the mesh that the convex hull was generated from was corrupt. Removing an early-out fixes this.

	#jira UE-52529 - Inaccurate Collision is Generated When Using Multi Convex Hull (PhysicsAsset Editor)

Change 3783615 by Jurre.deBaare

	OpacityMask/Opacity bug in MeshUtilities
	#fix ensured that material baking uses correct texture samples for Opacity Mask property
	#misc deprecated all of this functionality as users should be using the MaterialBaking module
	#jira UE-52382

Change 3783620 by Martin.Wilson

	Fix crash due to oversampling animation during compression

	#Jira UE-52713

Change 3783633 by Jurre.deBaare

	Fix deprecation warnings on CIS

Change 3783636 by Benn.Gallagher

	Fixed non-working tethers in clothing
	Fixed clothing config not applying to active simulation after editing
	Fixed and re-enabled accurate wind mode

	#jira UE-50797, UE-43611

Change 3783637 by Benn.Gallagher

	Github PR: Fix world to actor transform bug in anim dynamics

	Fixed incorrect Actor-space calculations for simulation transforms and world vector transformations inside AnimDynamics highlighted when testing the above PR

	#jira UE-48681
	#3929

Change 3783638 by Benn.Gallagher

	Fixed UBlendProfile properties not being correctly customized on anim nodes - and animation sequence references not being correctly filtered on anim nodes.

Change 3783660 by Danny.Bouimad

	Fixing #UE-40686 Mass TranslatedMass Automated test, instead of decreasing tolrence I changed the content to preserve granularity.

Change 3783974 by Ori.Cohen

	Refactor when sync components is called and how we pass the data into plugins. Simplifies how we handle physx data getting invalidated by UE4 during updates.

	Also fixed crash when scene query returns a destructible component that's been destroyed, but final apex delete flush hasn't happened yet.

	#jira UE-50215

Change 3784112 by Benn.Gallagher

	Fixed subinstance nodes inside states failing to correctly create bridge variables on their skeleton class due to not correctly processing subgraphs in the anim blueprint compiler.

	#jira UE-51000

Change 3784277 by Martin.Wilson

	Fix socket name getting an appended _0

	#jira UE-46625

Change 3785589 by Ori.Cohen

	Fix cis

Change 3786336 by Martin.Wilson

	Pushing skeleton to live link can now take source guid
	-Message bus source pushes guid when sending skeleton

Change 3786778 by Martin.Wilson

	Added ability for worker thread animation blueprint code to report to Message Log + added additive warning when playing an animation on an additive pose

	#jira UE-49780

Change 3786847 by Martin.Wilson

	Initialization and delta time for live link retargeter

	#Jira UE-52112

Change 3786852 by Lina.Halper

	Sequencer blending support

	#jira: UE-52183

Change 3786924 by Lina.Halper

	PR #4210: FIX: Incorrectly passing an unrelated bool rather than the expected pose ind. (Contributed by ruffenman)


Change 3787114 by Jurre.deBaare

	Discrepancy in description of Preview Scene setting and keyboard shortcut
	#fix Changed naming of the settings to match the Advanced Preview Scene panel
	#jira UE-50060

Change 3787115 by Jurre.deBaare

	Animation Editor Preferences do not update the preview scene
	#fix Removed unused preference from PersonaOptions
	#jira UE-51318

Change 3787117 by Jurre.deBaare

	Off-by one error in frame time calculations
	#fix Fixed up UAnimSequenceBase::GetTimeAtFrame and UAnimSequenceBase::GetFrameAtTime to return correct frame indices, similar to FAnimationRuntime::GetKeyIndicesFromTime
	#jira UE-52037

Change 3787412 by Martin.Wilson

	CIS Fix

Change 3787622 by Ethan.Geller

	Include Google Resonance SDK.

Change 3787633 by Ethan.Geller

	Promote AmibsonicsMixerPtr to FAudioDevice

Change 3788026 by Lina.Halper

	Retarget source reference to soft object ptr

	#jira: UE-48570

Change 3788252 by Ethan.Geller

	Add blueprint functions for Resonance Global Reverb

Change 3788750 by Ethan.Geller

	fix single file compile for Resonance plugin

Change 3788763 by Ethan.Geller

	include IModularFeatures.h explicitly for incremental build

Change 3789108 by Martin.Wilson

	Fix animations with scaled root bone generating incorrect root motion

	#jira UE-52088

Change 3789642 by Martin.Wilson

	Fix transition nodes from referencing the wrong state node due to non unique node guids being introduced by copy and paste

	#jira UE-43891

Change 3790165 by Martin.Wilson

	Fix marker sync position not being maintained across instant transitions

	#jira UE-21355

Change 3790182 by Ethan.Geller

	Final Resonance edits pass.

Change 3790184 by Lina.Halper

	Fix issue with crash when montage is streamed out while event is queued.

	https://udn.unrealengine.com/questions/404318/anim-montage-queued-montage-event-crash.html

Change 3790207 by dan.reynolds

	#UE-50774 Updated AEOverviewReverb to not attempt to destroy Audio Component that has already been destroyed.

Change 3790215 by Martin.Wilson

	CIS Fix

Change 3790953 by Ethan.Geller

	#jira UE-53023 bypass filters when at max frequency for LPF, DC for HPF

Change 3791832 by Martin.Wilson

	Don't load animations for preview tooltip in Persona

	#jira UE-52118

Change 3792873 by David.Hill

	Fix CIS.  Remove timer from proxylod code.

Change 3793251 by David.Hill

	ProxyLOD Thirdparty libs  build cs files.

	Update from ModuleRules.WindowsPlatform to ReadOnlyTargetRules.WindowsPlatform
	-- The WindowsPlatform alias is deprecated in 4.18

Change 3793400 by Ethan.Geller

	Update Resonance blueprint library to fit google naming conventions

Change 3794097 by Benn.Gallagher

	Fixed clothing visualizations no longer functioning
	#jira UE-52995

Change 3794250 by Danny.Bouimad

	Regenerated ground truth on LODCurveLinkingTest1 and AnimatedCloth, expected change as a result of Ben fixing a bug.
	Needed to update Owens cloth settings too.
	Should resolve automation test CIS fails

Change 3794352 by David.Hill

	ProxyLOD code:

	Disable openvdb-centric warnings within the openvdb platform.h file.
	C6326: Potential comparison of a constant with another constant

	and add annotations
	C28251: Inconsistent annotation for 'copysign'

	also added a warning suppress for static analysis CA_SUPPRESS(6011) within the proxylod version of the simplifier.

Change 3794786 by Lina.Halper

	Pose asset retarget source bug fix

	#jira: UE-52429

Change 3794841 by Danny.Bouimad

	Hopefully fixes the cloth automation CIS

Change 3795191 by Lina.Halper

	Fix build issue

Change 3795486 by Ethan.Geller

	re-enable android support for Oculus Audio

Change 3796162 by Danny.Bouimad

	Third attempt to fix the cloth CIS error. Hopefuly this will solve it.

Change 3796311 by Martin.Wilson

	Remove recompress animation from curve track actions. Allows smoother interaction on animations with slow recompress time.

	#jira UE-51740

Change 3796321 by Thomas.Sarkanen

	Duplicating CL 3770752 from 4.18:

	Prevent crash when generating convex bodies fails

	Note: speculative fix as the issue cannot be reproduced locally

	#jira UE-52449 - [CrashReport] FPhysicsAssetUtils::CreateFromSkeletalMeshInternal()

Change 3797093 by Danny.Bouimad

	Constrant node AnimBP Automated tests

Change 3797384 by Danny.Bouimad

	Fixing CIS error caused by automated test lighting issue

Change 3800621 by Thomas.Sarkanen

	Fix CIS: Shadowed variable warning

	#jira UE-53253 - FMenuBuilder declaration shadows a local variable warning appears when building the editor on Linux

Change 3800690 by Danny.Bouimad

	Checking in fix for CIS automation for ConstraintNode, set the screenshot tool to use BaseColor. This should fix the issue with the rendering fuzzyness

Change 3800874 by David.Hill

	Clean up static analysis warnings

	#jira: UE-53270

Change 3801227 by David.Hill

	Allow proxylod to fail gracefully if the input mesh is way too big (e.g. sky sphere)

	Added code to automatically compute the correct spatial sampling rate based on the geometry size, also allow the user to override.

	#cl: UE-53155

Change 3801228 by David.Hill

	UI: Mesh Proxy Dialog  re-write.  Make this more like MeshMerging, and share some code.

	#cl UE-53155, UE-52787, UE-53106

Change 3801319 by Danny.Bouimad

	Regenerated all the screen shots for the constraint tests.

Change 3801383 by Ethan.Geller

	#jira UE-53311 fix additional #if PLATFORM_WINDOWS  guards in Oculus Audio

Change 3801697 by Ethan.Geller

	include AudioDevice.h directly to resolve FAudioDevice.

Change 3802180 by David.Hill

	This should fix the Incremental UE4Editor Linux build.

Change 3802643 by David.Hill

	ProxyLOD UI change. Add limits to the target screen size.  They now reflect the values in the old version of the UI and the thirdparty tool.

	#CL: UE-53313

Change 3802986 by Ethan.Geller

	#jira UE-53330 Change vraudio to explicit library path

Change 3803448 by Danny.Bouimad

	disabling constraint tests

Change 3803678 by Danny.Bouimad

	#jira UE-53306 Fix

Change 3804333 by Ethan.Geller

	#jira UE-53330 fix library paths for iOS on Resonance

Change 3804453 by David.Hill

	Fix Shadow warning when compiling UE4Editor on linux:

	FlattenedMaterials.

	#CL: UE-53349

Change 3804510 by Lina.Halper

	CIS warning on shadow vars

	#jira: UE-53348, UE-53345

Change 3805451 by Lina.Halper

	Fix build issue : Renamed variable -

	https://ec-01.epicgames.net/commander/link/jobStepDetails/jobSteps/74095846?stepName=Incremental%20UnrealHeaderTool%20Win64&jobId=8173688&jobName=UE4%20Dev-AnimPhys%20-%20CL%203805429%20-%20Incremental%20Editor%20Win64&tabGroup=diagnosticHeader

Change 3805470 by Lina.Halper

	Fix build issue

Change 3806524 by Martin.Wilson

	Only use previous frame end position if it is valid for this frame

	#jira UE-53414

Change 3792620 by David.Hill

	Copying //UE4/Dev-ProxyLOD to Dev-AnimPhys-Minimal (//UE4/Dev-AnimPhys-Minimal)

	Adding the ProxyLOD code to AnimPhys.

Change 3796059 by Thomas.Sarkanen

	Persona viewport settings are now per-asset editor

	This prevnets bone following (etc) being shared by all Persona asset editors
	FOV & view type is no longer chared by all Persona asset editors

	#jira UE-53005 - Viewport settings like bone following are shared between all animation sub-editors

[CL 3806814 by Marc Audy in Main branch]
2017-12-13 16:02:45 -05:00
Thomas Sarkanen
5b5e160f6d Copying //UE4/Dev-AnimPhys to //UE4/Dev-Main (Source: //UE4/Dev-AnimPhys @ 3780324)
#lockdown Nick.Penwarden
#rb none
#rnx

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

Change 3760710 by Thomas.Sarkanen

	Fix crash deleting primitives in PhAT

	Crash in tooltip generation for shapes. Tree items still exist in the frame before the tree gets regenerated (as the widget defers their destruction a frame), so they can end up pointing at out of date data.

	#jira UE-52404 - Crash deleting bodies

	#tests deleted primitives in PhAT

Change 3760798 by Martin.Wilson

	Initialize PosesToEvaluate so that we don't get stale data crashes after reinitializing

	#Jira UE-52343

Change 3761312 by Martin.Wilson

	Fix for infrequent crash on module start up

Change 3761333 by Danny.Bouimad

	Fixed the Cable actor test correctly, shouldn't fail on cooked platforms any more!

Change 3761550 by Aaron.McLeran

	Engine changes requested by oculus for spatializer interface

Change 3761728 by Martin.Wilson

	Fix crash when undoing a change on a skeletal mesh that uses virtual bones

	#Jira UE-52475

Change 3762032 by Ethan.Geller

	#jira UE-49076 Implement PR for VOIP bug fix on Mac

Change 3762109 by Aaron.McLeran

	Enabling bAllowAnyoneToDestroyMe on audio components

Change 3762125 by Aaron.McLeran

	Checking in missing file

Change 3762568 by Aaron.McLeran

	Fixing ogg vorbis 5.1 channel ordering channel maps in audio mixer

	Fix is to create separate 5.1 channel maps for various output channel counts and pull those channel maps if the source file was decoded from vorbis. This pattern is copied from old xaudio2source code which handles 5.1 channel mapping seperately. Alternative solution would be to swizzle vorbis channels during cook, but this would break backward compatibility. We'll consider that solution in the future once we remove the old audio engine code.

Change 3762571 by Aaron.McLeran

	Adding multichannel file support.

	- Spoofing the multi-channel file importer tool by allowing a single multichannel file to generate data in the same way
	- Moved the wave serializer code from audio capture plugin to audio.h/.cpp for general use

Change 3762626 by Aaron.McLeran

	Adding ability to automatically tag ambisonics files.

Change 3762627 by Aaron.McLeran

	Fixing up source buses to be more useful

	- Added pre and post source effect bus sends types.
	- Adjusted where in the source generation pipeline distance-based filtering is applied to a source. Source audio is sent to source buses immediately after source effect chain generation and before per-source distance-based filters are applied and distance attenuation.

Change 3762652 by Aaron.McLeran

	Fix for device hot swap

Change 3762725 by Ethan.Geller

	Fixing multichannel indices so that it matches the multichannel cook

Change 3762738 by Ethan.Geller

	Add ambisonics plugin support

Change 3762739 by Ethan.Geller

	Updating oculus audio plugin

	- Base implementation by Peter Sterling at Oculus
	- Ambisonics decoding using Oculus API implemented by Ethan

Change 3763687 by Martin.Wilson

	Fix bug in GUID customization that leaves editor in an active transaction + Expose core property set code so other guid customizations can reuse it

	#Jira UE-52510

Change 3764412 by Ethan.Geller

	Fix the incremental build, pt 2

Change 3764721 by Ethan.Geller

	Fix the build, take 3

Change 3764767 by Martin.Wilson

	Rebuild array children properties when an item is added. Solves missing item crash if the user immediately tries to set the value of the new item

	#Jira UE-52537

Change 3764845 by Aaron.McLeran

	Making audio devices call flush after update and before endplay is called to ensure flush is called on audio devices.

	Prevents hang on releasing sound wave procedural references in GC.

Change 3766047 by Thomas.Sarkanen

	Pinnable command list widget

	Added a new "pinnable command list" widget. Shift-clicking a menu option in either the skeleton tree filter or the viewport menus will 'pin' the command outside of the menu. This allows for easier access to commands that are frequently used.

	Minor Slate change - added virtual(s) to FUICommandList so commands can be forwarded when executed.

	#jira UE-51807 - Add 'quick filter' and visualization toggles UI to PhAT

Change 3766111 by Thomas.Sarkanen

	CIS fix

Change 3766273 by Lina.Halper

	Rename PostBlendPhysics to FinalizeAnimationUpdate

Change 3768507 by Thomas.Sarkanen

	CIS fix

Change 3768637 by James.Golding

	Add 'GetSectionFromProceduralMesh' util function
	#jira UE-49262

Change 3768649 by Lina.Halper

	Moved the automation test to tests folder

	#jira:UE-46250

Change 3768675 by Benn.Gallagher

	Fixed incorrect deprecated angular velocity accessor.

Change 3768776 by Benn.Gallagher

	Fix for skeletal mesh editor crash importing more than 5 LODs

	#jira UE-52263

Change 3768804 by Martin.Wilson

	Live Link Virtual subjects
	Virtuals subjects are created within the client and contain the bones of multiple real subjects

Change 3768874 by Martin.Wilson

	UAnimSequenceBase is now entirely exported with ENGINE_API

	#Jira UE-48020

Change 3769318 by Lina.Halper

	- Animation system owns previous bone transform with revision number, so that it can send to renderer when render recreated.
	- Framenumber still exists because clothing system uses it, and I'm planning to talk to Benn  about it next week when he comes back

	#jira: UEAP-272

Change 3769714 by Lina.Halper

	Fix CIS

Change 3770672 by James.Golding

	Expose API for changing 'Use CCD' flag at runtime
	#jira UE-50332

Change 3770675 by James.Golding

	Add test map for 'Set Use CCD' function

Change 3770711 by Thomas.Sarkanen

	Multi viewports and bone-locked cameras in animation editor viewports

	All animation-related editors now have the ability to open up to 4 seperate viewports onto the same scene, each with their own settings.
	Fixed up bounds following to actually work correctly (now follows without lag).
	Added the ability to follow (and orbit) a specified bone as well.

	#jira UE-47127 - Add the Ability to Open Multiple Viewports on the Same Scene.
	#jira UE-49690 - "Camera Follow" in Persona Editor cannot be enabled

Change 3770786 by Lina.Halper

	Support curve in copy pose node

	#jira: UE-50182

Change 3770943 by James.Golding

	Fix 'NODEBUG' option for PVD CONNECT console command (should only send profile data)
	Fix from Kier at NVIDIA

	#jira UE-52444

Change 3771145 by Benn.Gallagher

	Added ability to control whether or not a post process instance runs on a skeletal mesh component. Exposed both to blueprints and anim editor suite

	#jira UE-49747

Change 3772262 by Benn.Gallagher

	Defaulted the clothing create menu to use the skeletal mesh physics asset

	#jira UE-51607

Change 3772389 by Thomas.Sarkanen

	Added a keyboard shortcut to toggle between body and constraint selection

	Shortcut is Ctrl+T by default.

	#jira UE-51804 - Add a quick switch between selected constraints and bodies

Change 3772393 by Thomas.Sarkanen

	Constraints are now displayed only once in the physics asset editor tree view

	User constraints are still displayed twice, however.

	#jira UE-51808 - Constraints in PhAT should only be displayed once in the tree

Change 3772404 by James.Golding

	Fix Modify Curve AnimNode not calling CacheBones on source pose
	#jira UE-52129

Change 3772418 by Benn.Gallagher

	Allowed clothing visualizations to be enabled while clothing paint mode is active.
	Fixed crash attempting to visualize backstops when the clothing data has no backstops.
	#jira UE-47042

Change 3772964 by Thomas.Sarkanen

	Expose sequence recording settings in Persona editors

	Added layout extender to Persona module, so external tabs can now be added to all Persona-based editors easily.
	Added a structure details view to edit the default animation settings.
	Hooked default animation settings up to Persona animation recording.

	#jira UE-48416 - Set Frame Rate and Length of Recordings in Persona in Editor

Change 3772967 by Martin.Wilson

	Add NativeBeginPlay function to AnimInstance

	#jira UE-51351

	PR #4135: Add NativeBeginPlay to AnimInstance (Contributed by Vaei)

Change 3772986 by Thomas.Sarkanen

	Added "Show Only Selected Constraints" to the physics asset editor

	#jira UE-51805 - Add 'show only selected constraints' option to PhAT

Change 3773012 by Benn.Gallagher

	Added facility to debug skel mesh component to extend the viewport text seen in skeletal mesh editor and added lines for current cloth value

	#jira UE-42354

Change 3773132 by Martin.Wilson

	Added Uncheck all unconnected pins for BreakStruct nodes

	#jira UE-51136

	PR #4110: Uncheck all unconnected pins from BreakStruct node... (Contributed by projectgheist)

Change 3773158 by Benn.Gallagher

	Added auto-range feature to cloth view ranges, and a way for tools to extend those ranges when necessary

	#jira UE-48109

Change 3773895 by Jurre.deBaare

	Move material baking out of experimental
	#fix Removed experimental settings gating around Material Baking functionality
	#jira UE-52685

Change 3773898 by Jurre.deBaare

	Change log message wording when Simplygon fails to initialise to ensure it does not block CIS (error triggers a CIS error and will halt the build)

Change 3773899 by Jurre.deBaare

	Add keybind for switching between paint / erase color while mesh painting
	#fix Added new command for switching fore and background colors in the mesh painter (defaults to X as shortcut)
	#jira UE-52197

Change 3773900 by Jurre.deBaare

	Hotkey to enable and disable post processing in the preview scene settings
	#fix Added hotkey and command for toggling Post Processing in Preview Scenes
	#jira UE-48111

Change 3773933 by Martin.Wilson

	Add missing file (for live link monolithic build failure)

Change 3773949 by Jurre.deBaare

	Right click add selected to HLOD cluster / create cluster
	#fix Partially implemented the request, added context menu to HLOD level nodes in the HLOD outliner treeview to allow creating a new cluster from the current level viewport selection
	#jira UE-48334

Change 3773950 by Jurre.deBaare

	HLOD cluster drawing should not use AHLODSelectionActor but regular in-viewport drawing
	#fix removed old behaviour using a spawned actor to represent a selected HLOD cluster, and replaced it will simple debug drawing (this is a lot less bug prone and much cleaner)
	#jira UE-49094

Change 3773964 by James.Golding

	Mark FBodyInstance::ResponseToChannels_DEPRECATED as 'WITH_EDITORONLY_DATA'
	#jira UE-52545

Change 3773978 by Thomas.Sarkanen

	Allow edits to physics sim options to be undone/redone

	Added RF_Transactional to the object

	#jira UE-48046 - Undo/redo does not work in Physics Asset Editor's Physics/Details menu

Change 3773982 by Martin.Wilson

	Add pre and post conversion callbacks to root motion conversion in character movement component

	#jira UE-51966

Change 3773988 by Thomas.Sarkanen

	Duplicating CL 3773896 from Fortnite:

	Push non-rendered anim updates back onto the worker thread

	Now when meshes are set to EMeshComponentUpdateFlag::AlwaysTickPose, we optionally kick of a task to perform parallel update only (no evaluation).

	#jira UE-46710 - Animation updates run on the main thread when Evaluation task doesnt run

Change 3773999 by Martin.Wilson

	Fix incorrect merge

Change 3774030 by Thomas.Sarkanen

	Renamed "Create Joints" to "Create Constraints"

	#jira UE-50861 - New Physics Asset window reads "Joints" instead of "Constraint"

Change 3774031 by Thomas.Sarkanen

	Fixed typo in comment

	#jira UE-50841 - Typo in Vertex Weighting Type setting when creating new Physics Asset

Change 3774200 by Lina.Halper

	Fix crash with empty element in the constraint setup

	#jira: UE-52686

Change 3774236 by Ori.Cohen

	Fix crash when destructible component doesn't mark its killed actors as IgnoreActiveActors

	#jira UE-52320

Change 3774284 by James.Golding

	Fix constructor order CIS error in AudioMicerSubmix.cpp

Change 3774511 by James.Golding

	Fix up removed RevisionNumber param

Change 3774724 by Lina.Halper

	Fix of motion blur change of previous bone transform

Change 3775493 by Thomas.Sarkanen

	Duplicating CL 3775488 from Fortnite:

	Prevented skeletal meshes that are not being ticked due to URO from dispatching tick tasks

	#jira FORT-61157 - Run anim update on worker, even if not visible

Change 3775508 by James.Golding

	Fix compilation without PhysX, move DeferredReleaseCallback outside WITH_PHYSX block

Change 3775538 by James.Golding

	Fix Mac CIS due to missing virtual destructor in IDeferredReleaseCallback

Change 3775921 by Ori.Cohen

	Better fix for destructible crash (also fix CIS)

	#jira UE-52762

Change 3776054 by Benn.Gallagher

	Fixed crash deleting max distance mask from a clothing data entry.

	#jira UE-52723

Change 3776063 by Thomas.Sarkanen

	Fix static analysis warning

Change 3776331 by Jurre.deBaare

	Hierarchical LOD Outliner scrollbar doesn't appear
	#fix removed AutoHeight from parent vertical box around HLOD outliner details view
	#jira UE-52756

Change 3776704 by Martin.Wilson

	Fix array properties not always refreshing when new items are added

	#UE-52760

Change 3776755 by Thomas.Sarkanen

	Duplicating CL 3776656 from Fortnite:

	Fix notifies not getting fired in cases where AlwaysTickPose was set on skeletal mesh components

	This was causing AIs to get stuck in montage playback in some circumstances

	#jira FORT-61324, FORT-60558

Change 3777385 by Aaron.McLeran

	#jira UE-52786 Fix for broken spatialization on xaudio2, old audio engine.

Change 3778233 by Lina.Halper

	Removed android from oculus audio platform

Change 3778714 by Ethan.Geller

	#jira UE-52818 remove Android from Oculus Audio platforms

Change 3779004 by Lina.Halper

	Include "Features/IModularFeatures.h" to cpp

	Fix build error

Change 3780324 by Thomas.Sarkanen

	Duplicating CL 3778679 from Fortnite-Main:

	Fix 100% Linux server crash - dont attempt to run threaded work in a single-threaded environment

	We dont attempt to run animation update work multi-threaded in the same conditions that we didnt attempt to run animation eval work previously.

	#jira FORT-61548

Change 3763999 by Ethan.Geller

	remove space from ambisonics mixer name, fix build

Change 3774470 by James.Golding

	Merging //UE4/Dev-Main to Dev-AnimPhys (//UE4/Dev-AnimPhys) @ 3774039

[CL 3780967 by Thomas Sarkanen in Main branch]
2017-11-30 12:07:08 -05:00
Matt Kuhlenschmidt
c72e1e1e70 Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3739701)
#lockdown Nick.Penwarden
#rb none

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

Change 3358367 by tim.gautier

	Submitting resaved QAGame assets - Materials, Material Instances, Material Functions and Parameters

Change 3624848 by Jamie.Dale

	Added a composite font for the editor (and Slate core)

	This is defined in FLegacySlateFontInfoCache::GetDefaultFont and uses our default Roboto fonts (and the culture specific fallback fonts), and is now used as the default font for Slate and the editor.

	This change removes all the manual TTF/OTF file references from the various Slate styles, as well as updating 200+ hard-coded font references to use the new default font.

	This fixes various rendering issues with fonts in the editor when using different languages, and clears a big barrier for removing the legacy localized fallback font support.


Change 3654993 by Jamie.Dale

	'Native' (now called 'FNativeFuncPtr') is now a function pointer that takes a UObject* context, rather than a UObject member function pointer

	This avoids ambiguity when binding a native function pointer to a type that doesn't match the context pointer, as you could end up getting a function called with an incorrect 'this' pointer

	Breaking changes:
	 - Native has been renamed to FNativeFuncPtr.
	 - The signature of a native function has changed (use the DECLARE_FUNCTION and DEFINE_FUNCTION macro pair).
	 - Use P_THIS if you were previously using the 'this' pointer in your native function.

Change 3699591 by Jamie.Dale

	Added support for displaying and editing numbers in a culture correct way

	Numeric input boxes in Slate will now display and accept numbers using the culture correct decimal separators. This is enabled by default, and can be disabled by setting "ShouldUseLocalizedNumericInput" to "False" in XEditorSettings.ini (for the editor), or XGameUserSettings.ini (for a game).

	#jira UE-4028


Change 3719568 by Jamie.Dale

	Allow platforms to override the default ICU timezone calculation


Change 3622366 by Bradut.Palas

	#jira UE-46677

	Don't allow OnLevelRemovedFromWorld to reset the transaction buffer if we're in PIE mode.
	Also, remove one undo barrier in case the event was triggered in PIE mode or else we block the user from undoing previous actions.

Change 3622378 by Bradut.Palas

	#jira UE-46590

	we have a general bug with detecting the size of the last column, but the clamping prevents it from appearing with the other resize modes. The Content Browser is the only one to use fixed width.
	The bug is that the size of the last element is incorrectly reported, after we drag back and forth.
	Fixed by not reading the size real time, but reading it from the SlotInfo structure that is created earlier, which holds the correct value.

Change 3622552 by Jamie.Dale

	Added support for per-culture sub-fonts within a composite font

	This allows you to do things like create a Japanese specific Han sub-font to override the Han characters used in a CJK font (previously you needed to create a localized font asset to achieve this).

Change 3623170 by Jamie.Dale

	Fixing warning

Change 3624846 by Jamie.Dale

	Composite font cache optimizations

	- Converted a typically small sized map to a sorted array + binary search.
	- Converted the already sorted range array to use binary search.
	- Contiguous ranges using the same typeface are now merged in the cache.

Change 3625576 by Cody.Albert

	We now only set the widget tree to transient instead of passing the flag through StaticDuplicateObject. This was causing instanced subobjects to be flagged with RF_DuplicateTransient, preventing them from properly being duplicated when an array of instanced subobjects was modified.

	#jira UE-47971

Change 3626057 by Matt.Kuhlenschmidt

	Expose EUmgSequencePlayMode to blueprints

	#jira UE-49255

Change 3626556 by Matt.Kuhlenschmidt

	Fix window size and position adjustment not accounting for primary monitor not being a high DPI monitor when a secondary monitor is.  Causes flickering and incorrect window positioning.

	#jira UE-48922, UE-48957

Change 3627692 by Matt.Kuhlenschmidt

	PR #3977: Source control submenu menu customization (Contributed by Kryofenix)


Change 3628600 by Arciel.Rekman

	Added AutoCheckout to FAssetRenameManager for commandlet usage.

Change 3630561 by Richard.Hinckley

	Deprecating the version of UFunctionalTestingManager::RunAllFunctionalTests that feature an unused bool parameter, replacing with a new version without that parameter.

Change 3630656 by Richard.Hinckley

	Compile fix.

Change 3630964 by Arciel.Rekman

	Fix CrashReporterClient headless build.

Change 3631050 by Matt.Kuhlenschmidt

	Back out revision 9 from //UE4/Dev-Editor/Engine/Source/Runtime/Slate/Private/Widgets/Layout/SSplitter.cpp

	Causes major problems with resizing splitters in editor

Change 3631140 by Arciel.Rekman

	OpenAL: update Linux version to 1.18.1 (UETOOL-1253)

	- Also remove a hack for RPATH and make it use a generic RPATH mechanism.
	- Bulk of the change from Cengiz.Terzibas

	#jira UETOOL-1253

Change 3632924 by Jamie.Dale

	Added support for a catch-all fallback font within composite fonts

	This allows you to provide broad "font of last resort" behavior on a per-composite font basis, in a way that can also work with different font styles.

Change 3633055 by Jamie.Dale

	Fixed some refresh issues in the font editor

Change 3633062 by Jamie.Dale

	Fixed localization commands being reported as unknown

Change 3633906 by Nick.Darnell

	UMG - You can now store refrences to widgets in the same UserWidget.  If you need to create links between widgets this is valuable.  Will likely introduce new ways to utilize this in the future, for now just getting it working.

Change 3634070 by Arciel.Rekman

	Display actually used values of material overrides.

Change 3634254 by Arciel.Rekman

	Fix ResavePackages working poorly with projects on other drives (UE-49465).

	#jira UE-49465

Change 3635985 by Matt.Kuhlenschmidt

	Fixed typo in function name used by maps

	PR #3975: Add tooltip to Arrays in Editor (Contributed by projectgheist)


Change 3636012 by Matt.Kuhlenschmidt

	PR #3982: Unhide mouse cursor after using Ansel (Contributed by projectgheist)


Change 3636706 by Lauren.Ridge

	Epic Friday: Save parameters to child or sibling  instance functionality

Change 3638706 by Jamie.Dale

	Added an improved Japanese font to the editor

	This is only used when displaying Japanese text when the editor is set to Japanese, and uses a font with Japanese-style unified Han characters (our default fallback font uses Chinese-style unified Han characters).

	#jira UE-33268

Change 3639438 by Arciel.Rekman

	Linux: Repaired ARM server build (UE-49635).

	- Made Steam* plugins compile.
	- Disabled OpenEXR as the libs aren't compiled (need to be done separately).

	(Edigrating CL 3639429 from Release-4.17 to Dev-Editor)

Change 3640625 by Matt.Kuhlenschmidt

	PR #4012: FSlateApplication::ProcessReply use &Reply (Contributed by projectgheist)


Change 3640626 by Matt.Kuhlenschmidt

	PR #4011: Remove space from filename (Contributed by projectgheist)


Change 3640697 by Matt.Kuhlenschmidt

	PR #4010: PNG alpha fix (Contributed by mmdanggg2)


Change 3641137 by Jamie.Dale

	Fixed an issue where a culture specific sub-font could produce incorrect measurements during a culture switch

	It would fallback to the last resort font for a frame or two while the font cache flushed. This has it update the ranges immediately.

Change 3641351 by Jamie.Dale

	Fixing incorrect weights on the Japanese sub-font

Change 3641356 by Jamie.Dale

	Fixing inconsistent font sizes between CoreStyle and EditorStyle

Change 3641710 by Jamie.Dale

	Fixed pure-virtual function call on UMulticastDelegateProperty

Change 3641941 by Lauren.Ridge

	Adding a Parameter Details tab to the Material Editor so users can change default parameter details

Change 3644141 by Jamie.Dale

	Added an improved Korean font to the editor

	This is only used when displaying Korean text when the editor is set to Korean

Change 3644213 by Arciel.Rekman

	Fix the side effects of a fix for UE-49465.

	- Default materials were apparently not being found while building DDC (e.g. making an installed build), now they are
	  and we should not reset loaders on them lest we trigger HasDefaultMaterialsPostLoaded() assert later.

	#jira UE-49465

Change 3644777 by Jamie.Dale

	Reverting Korean editor font back to NanumGothic as NanumBarunGothic looked too squished

Change 3644879 by tim.gautier

	QAGame: Optimized assets for Procedural Foliage testing
	- Added camera bookmarks to Stations in QA-Foliage
	- Renamed QA-FoliageTypeInst assets to ProcFoliage_Shape
	- Fixed up redirectors

Change 3645109 by Matt.Kuhlenschmidt

	PR #3990: Git plugin: fix status of renamed, removed, missing, untracked assets (Contributed by SRombauts)


Change 3645114 by Matt.Kuhlenschmidt

	PR #3991: Git Plugin: Fix RunDumpToFile() leaking Process handles (Contributed by SRombauts)


Change 3645116 by Matt.Kuhlenschmidt

	PR #3996: Git Plugin: run an "UpdateStatus" at "Connect" time to populate the Source Control cache (Contributed by SRombauts)


Change 3645118 by Matt.Kuhlenschmidt

	PR #4005: Git Plugin: Expand the size of the Button "Initialize project with Git" (Contributed by SRombauts)


Change 3645876 by Arciel.Rekman

	Linux: fix submenus of context menu not working (UE-47639).

	- Change by icculus (Ryan Gordon).
	- QA-ClickHUD seems to be not affected by this change (it is already broken alas).

	#jira UE-47639

Change 3648088 by Jamie.Dale

	Fixed some case-sensitivity issues with FText format argument names/pins

	These were originally case-sensitive, but that was lost somewhere along the way. This change restores their original behavior.

	#jira UE-47122

Change 3648097 by Jamie.Dale

	Moved common macOS/iOS localization implementation into FApplePlatformMisc

	#jira UE-49940

Change 3650858 by Arciel.Rekman

	UBT: improve CodeLite project generator (UE-49400).

	- PR #3987 submitted by yaakuro (Cengiz Terzibas).

	#jira UE-49400

Change 3651231 by Arciel.Rekman

	Linux: default to SM5 for Vulkan.

	- Change by Timothee.Bessett.

Change 3653627 by Matt.Kuhlenschmidt

	PR #4020: Source Control Submit Files now interprets Escape key as if the user clicked cancel (Contributed by SRombauts)


Change 3653628 by Matt.Kuhlenschmidt

	PR #4022: Add New C++ Class dialog remember previously selected module. (Contributed by Koderz)


Change 3653984 by Jamie.Dale

	Fixed some redundant string construction

Change 3658528 by Joe.Graf

	UE-45141 - Added CMAKE_CXX_COMPILER and CMAKE_C_COMPILER settings to the generated CMake files

Change 3658594 by Jamie.Dale

	Zipping in UAT now always uses UTF-8 encoding to prevent Unicode issues

	#jira UE-27263

Change 3659643 by Michael.Trepka

	Added a call to FCoreDelegates::ApplicationWillTerminateDelegate.Broadcast(); in Mac RequestExit() to match Windows behavior

	#jira UETOOL-1238

Change 3661908 by Matt.Kuhlenschmidt

	USD asset importing improvements

Change 3664100 by Matt.Kuhlenschmidt

	Fix static analysis

Change 3664107 by Matt.Kuhlenschmidt

	PR #4051: UE-49448: FPropertyChangedEvent to include TopLevelObjects (Contributed by projectgheist)


Change 3664125 by Matt.Kuhlenschmidt

	PR #4036: Add missing GRAPHEDITOR_API (Contributed by projectgheist)


Change 3664340 by Jamie.Dale

	PR #3648: Prevent GatherTextFromSource from failing the commandlet (Contributed by projectgheist)


Change 3664403 by Jamie.Dale

	PR #3769: Fixes UE-46973 - Drag and Dropping Folders with Names (Contributed by LordNed)


Change 3664539 by Jamie.Dale

	PR #3280: Added EditableText functionality (Contributed by projectgheist)


Change 3665433 by Alexis.Matte

	When we finish importing morph target we must re-initialise the render resources since we now use GPU morph target.
	#jira UE-50231

Change 3666747 by Cody.Albert



Change 3669280 by Jamie.Dale

	PR #4060: UE-50455: Verify folder is newly created before removing from tree (Contributed by projectgheist)


Change 3669718 by Jamie.Dale

	PR #4061: Clear Content Browser folder search box on escape key (Contributed by projectgheist)


Change 3670838 by Alexis.Matte

	Fix crash when deleting a skeletal mesh LOD and the mouse is over the "reimport" button.
	#jira UE-50387

Change 3671559 by Matt.Kuhlenschmidt

	Update SimpleUI automation test ground truth

	#jira UE-50325

Change 3671587 by Alexis.Matte

	Fix fbx importer scale not always apply. A cache array was not reset when opening a fbx file.
	#jira UE-50147

Change 3671730 by Jamie.Dale

	Added PostInitInstance to UClass to allow class types to perform construction time initialization of their instances

Change 3672104 by Michael.Dupuis

	#jira UE-50427: Update the volume visibility list of the editor viewport when changing the procedural foliage settings

Change 3674906 by Alexis.Matte

	Make sure the export LOD option is taken in consideration when exporting a level or the current level selection
	#jira UE-50248

Change 3674942 by Matt.Kuhlenschmidt

	Fix static analysis

Change 3675401 by Alexis.Matte

	-fix export animation, do not truncate the last frame anymore
	-fix the import animation, there was a display issue in the progress bar. Also a floorToInt sometime truncate the last valid frame. We also have a better way to calculate the time increment we use to sample the fbx curves.

	#jira UE-48231

Change 3675990 by Alexis.Matte

	Remove morph target when doing a re-import, so morph will be remove if they do not exist anymore in the fbx.
	This is to avoid driving random vertex with old morph target.
	#jira UE-50391

Change 3676169 by Alexis.Matte

	When we re-import with dialog the option, "Override Full Name" was set to false and save with the option dialog. We now not set it to false, since it was not use during re-import.

Change 3676396 by Alexis.Matte

	Make all LOD 0 name consistent in staticmesh editor
	#jira UE-49461

Change 3677730 by Cody.Albert

	Enable locking of Persistent Level in Levels tab

	#jira UE-50686

Change 3677838 by Jamie.Dale

	Replaced broken version of Roboto Light

Change 3679619 by Alexis.Matte

	Integrate GitHub pr #4029 to fix import fbx chunk material assignation.
	#jira UE-50001

Change 3680093 by Alexis.Matte

	Fix the skeletal mesh so the vertex color is part of the vertex equality like with the static mesh.

Change 3680931 by Arciel.Rekman

	SlateDialogs: show image icon for *.tga (UE-25106).

	- Also reworked the logic somewhat.

	#jira UE-25106

Change 3681966 by Yannick.Lange

	MaterialEditor post-process preview.
	#jira UE-45307

Change 3682407 by Lauren.Ridge

	Fixes for material editor compile errors

Change 3682628 by Lauren.Ridge

	Content browser filters for Material Layers, Blends, and their instances

Change 3682725 by Lauren.Ridge

	Adding filter assets and instance assets to Material Layers and Material Layer Blends. Turning Material Layering on by default

Change 3682921 by Lauren.Ridge

	Fix for instance layers not initializing fully

Change 3682954 by Lauren.Ridge

	Creating Material Layer Test Assets

Change 3683582 by Alexis.Matte

	Fix static analysis build

Change 3683614 by Matt.Kuhlenschmidt

	PR #4062: Git Plugin: Fix UE-44637: Deleting an asset is unsuccessful if the asset is marked for add (Contributed by SRombauts)


Change 3684130 by Lauren.Ridge

	Allow visible parameter retrieval to correctly recurse through internally called functions. Previous check was intended to prevent function previews from leaving their graph through unhooked inputs, but unintentionally blocked all function inputs.

Change 3686289 by Arciel.Rekman

	Remove the pessimization (UE-23791).

Change 3686455 by Lauren.Ridge

	Fixes for adding/removing a layer parameter from the parent not updating the child

Change 3686829 by Jamie.Dale

	No longer include trailing whitespace in the justification calculation for soft-wrapped lines

	#jira UE-50266

Change 3686970 by Lauren.Ridge

	Making material parameter preview work for functions as well

Change 3687077 by Jamie.Dale

	Fixed crash using FActorDetails with the struct details panel

Change 3687152 by Jamie.Dale

	Fixed the row structure tag not appearing in the Content Browser for Data Table assets

	The CDO is used to filter these tags, and the CDO was omiting that tag which caused it to be filtered for all Data Tables.

	#jira UE-48691

Change 3687174 by Lauren.Ridge

	Fix for material layer sub-parameters showing up in the default material parameters panel

Change 3688100 by Lauren.Ridge

	Fixing static analysis error

Change 3688317 by Jamie.Dale

	Fixed crash using the widget reflector in a cooked game

	Editor-style isn't available in cooked games. Core-style should be used instead for the widget reflector.

Change 3689054 by Jamie.Dale

	Reference Viewer can now show/copy references lists for nodes with multiple objects, or multiple selected nodes

	#jira UE-45751

Change 3689513 by Jamie.Dale

	Fixed justification bug with RTL text caused by CL# 3686829

	Also implemented the same alignment fix for visually left-aligned RTL text.

	#jira UE-50266

Change 3690231 by Lauren.Ridge

	Added Material Layers Parameters Preview (all editing disabled) panel to the Material Editor

Change 3690234 by Lauren.Ridge

	Adding Material Layers Function Parameter to Static Parameter Compare

Change 3690750 by Chris.Bunner

	Potential nullptr crash.

Change 3690751 by Chris.Bunner

	Fixed logic on overridden vector parameter retrieval for material instances checking a function owned parameter.

Change 3691010 by Jamie.Dale

	Fixed some clipping issues that could occur with right-aligned text

	FTextBlockLayout::OnPaint was passing an unscaled offset to SetVisibleRegion, and it also wasn't correctly adjusting the offset for RTL text with left-alignment (which becomes a visual right-alignment)

	#jira UE-46760

Change 3691091 by Jamie.Dale

	Renamed FTextBlockLayout to FSlateTextBlockLayout to reflect that it's a Slate specific type

Change 3691134 by Alexis.Matte

	Make sure we instance also the collision mesh when exporting a level to fbx file.
	#jira UE-51066

Change 3691157 by Lauren.Ridge

	Fix for reset to default not refreshing sub-parameters

Change 3691192 by Jamie.Dale

	Fixed Content Browser selection resetting when changing certain view settings

	#jira UE-49611

Change 3691204 by Alexis.Matte

	Remove fbx export file version 2010 compatibility. The 2018 fbx sdk refuse to export earlier then 2011.
	#jira UE-51023

Change 3692335 by Lauren.Ridge

	Setting displayed asset to equal filter asset if no instance has been selected

Change 3692479 by Jamie.Dale

	Fixed whitespace

Change 3692508 by Alexis.Matte

	Make sure we warn the user that there is nothing to export when exporting to fbx using "export selected" or "export All" from the file menu.
	We also prevent the export dialog to show
	#jira UE-50973

Change 3692639 by Jamie.Dale

	Translation Editor now shows stale translations as "Untranslated"

Change 3692743 by Lauren.Ridge

	Smaller blend icons, added icon size override to FObjectEntryBox

Change 3692830 by Alexis.Matte

	Fix linux build

Change 3692894 by Lauren.Ridge

	Tooltip on "Parent" in material layers

Change 3693141 by Jamie.Dale

	Removed dead code

	FastDecimalFormat made this redundant

Change 3693580 by Jamie.Dale

	Added AlwaysSign number formatting option

	#jira UE-10310

Change 3693784 by Jamie.Dale

	Fixed assert extracting the number formatting rules for Arabic

	It uses a character outside the BMP for its plus and minus sign, so we need these to be a string to handle that.

	#jira UE-10310

Change 3694428 by Arciel.Rekman

	Linux: make directory watch request a warning so they don't block cooking.

	- See https://answers.unrealengine.com/questions/715206/cook-error-on-linux.html

Change 3694458 by Matt.Kuhlenschmidt

	Made duplicate keybinding warning non-fatal

Change 3694496 by Alexis.Matte

	fix static analysis build

Change 3694515 by Jamie.Dale

	Added support for culture correct parsing of decimal numbers

	#jira UE-4028

Change 3694621 by Jamie.Dale

	Added a variant of FastDecimalFormat::StringToNumber that takes a string length

	This can be useful if you want to convert a number from within a non-null terminated string

	#jira UE-4028

Change 3694958 by Jamie.Dale

	Added a parsed length output to FastDecimalFormat::StringToNumber to allow permissive parsing

	You can test this rather than the result if you want to attempt to parse a number from a string that may have other data after it. This also fixes the sign-suffix causing the parsing to fail.

	#jira UE-4028

Change 3695083 by Alexis.Matte

	Optimisation of the morph target import
	- We now compute only the normal for the shape the tangent are not necessary
	- The async tasks are create when there is some available cpu thread to avoid filling the memory
	- When we re-import the morph target are deleted in bulk avoiding to initialize the morph map for every morphs targets
	#jira UE-50945

Change 3695122 by Jamie.Dale

	GetCultureAgnosticFormattingRules no longer returns a copy

Change 3695835 by Arciel.Rekman

	TestPAL: greatly expanded malloc test.

Change 3695918 by Arciel.Rekman

	TestPAL: Added thread priority test.

Change 3696589 by Arciel.Rekman

	TestPAL: tweak thread priorities test (better readability).

Change 3697345 by Alexis.Matte

	Fix reorder of material when importing a LOD with new material
	#jira UE-51135

Change 3699590 by Jamie.Dale

	Updated SGraphPinNum to use a numeric editor

	#jira UE-4028

Change 3699698 by Matt.Kuhlenschmidt

	Fix crash opening the level viewport context menu if the actor-component selection is out of sync

	#jira UE-48444

Change 3700158 by Arciel.Rekman

	Enable packaging for Android Vulkan on Linux (UETOOL-1232).

	- Change by Cengiz Terzibas

Change 3700224 by Arciel.Rekman

	TestPAL: fixed a memory leak.

Change 3700775 by Cody.Albert

	Don't need to initialize EnvironmentCubeMap twice.

Change 3700866 by Michael.Trepka

	PR #3223: Remove unnecessary reallocation. (Contributed by foollbar)


	#jira UE-41643

Change 3701132 by Michael.Trepka

	Copy of CL 3671538

	Fixed issues with editor's game mode in high DPI on Mac.

	#jira UE-49947, UE-51063

Change 3701421 by Michael.Trepka

	Fixed a crash in FScreenShotManager caused by an attempt to access a deleted FString in async lambda expression

Change 3701495 by Alexis.Matte

	Fix fbx importer "import normals" option when mix with "mikkt" tangent build it was recomputing the normals instead of importing them.
	#jira UE-UE-51359

Change 3702982 by Jamie.Dale

	Cleaned up some localization setting names

	These now have consistent names and avoid double negatives. This also fixes needing to restart the editor when changing the "ShouldUseLocalizedPropertyNames" setting.

Change 3703517 by Arciel.Rekman

	TestPAL: improved thread test.

	- Changed the counter to a normal variable to reduce possible contentions (threads used to share the counter in an early prototype, hence the usage of an atomic).

Change 3704378 by Michael.Trepka

	Disable Zoom button on Mac if project requests a resizeable window without it.

	#jira UE-51335

Change 3706316 by Jamie.Dale

	Fixed the asset search suggestions list closing if you clicked on its scrollbar

	#jira UE-28885

Change 3706855 by Alexis.Matte

	Support importing animation that has some keys with negative time
	#jira UE-51305

Change 3709634 by Matt.Kuhlenschmidt

	PR #4146: Null access check on ForceLOD in FViewport::HighResScreenshot (Contributed by projectgheist)


Change 3711085 by Michael.Trepka

	Reenabled UBT makefiles on Mac

Change 3713049 by Josh.Engebretson

	The ConfigPropertyEditor now generates a unique runtime UClass.  It uses the outer name on the property instead of a unique ID as a unique id would generate a new UClass every time (and these are RF_Standalone).  I also removed some static qualifiers for Section and Property names which were incorrect.

	#jira UE-51319

Change 3713144 by Lauren.Ridge

	Fixing automated test error

	#jira UE-50982

Change 3713395 by Alexis.Matte

	Fix auto import mountpoint
	#jira UE-51524

Change 3713881 by Michael.Trepka

	Added -buildscw to Mac Build.sh script to build ShaderCompileWorker in addition to the requested target. Xcode passes it to the script when building non-program targets.

	#jira UE-31093

Change 3714197 by Michael.Trepka

	Send IMM key down event to the main window instead of Cocoa key window, as that's what the Slate's active window is. This solves problems with IMM not working in context menu text edit fields.

	#jira UE-47915

Change 3714911 by Joe.Graf

	Merge of cmake changes from Dev-Rendering

Change 3715973 by Michael.Trepka

	Disable OS close button on Windows if project settings request that

	#jira UE-45522

Change 3716390 by Lauren.Ridge

	The color picker summoned when double-clicking vector3 nodes now has its intended "do not refresh until OK is clicked" behavior.

	#jira UE-50916

Change 3716529 by Josh.Engebretson

	Content Browser: Clamp "Assets to Load at Once Before Warning" so it cannot be set below 1

	#jira UE-51341

Change 3716885 by Josh.Engebretson

	Tracking transactions such as a duplication operation can modify a selection which differs from the initial one.  Added package state tracking to restore unmodified state when necessary.

	#jira UE-48572

Change 3716929 by Josh.Engebretson

	Unshelved from pending changelist '3364093':

	PR #3420: Exe's icons and properties (Contributed by projectgheist)


Change 3716937 by Josh.Engebretson

	Unshelved from pending changelist '3647428':

	PR #4026: Fixed memory leaks for pipe writes and added data pipe writes (Contributed by Hemofektik)


Change 3717002 by Josh.Engebretson

	Fix FileReference/string conversion

Change 3717355 by Joe.Graf

	Fixed CMake file generation on Windows including Engine/Source/ThirdParty source

Change 3718256 by Arciel.Rekman

	TestPAL: slight mod to the malloc test.

	- Touch the allocated memory to check actual resident usage.

Change 3718290 by Arciel.Rekman

	BAFO: place descriptor after the allocation to save some VIRT memory.

	- We're relying on passing correct "Size" argument to Free() anyway, and this modification makes use of that extra information to save on memory for the descriptor.

Change 3718508 by Michael.Trepka

	Fixed vsnprintf on platforms that use our custom implementation in StandardPlatformString.cpp to ignore length modifier for certain types (floating point, pointer)

	#jira UE-46148

Change 3718855 by Lauren.Ridge

	Adding content browser favorite folders. Add or remove folders from the favorite list in the folder's right-click context menu, and hide or show the favorites list in the Content Browser options.

Change 3718932 by Cody.Albert

	Update ActorSequence plugin loading phase to PreDefault

	#jira UE-51612

Change 3719378 by tim.gautier

	QAGame: Renamed multiTxt_Justification > UMG_TextJustification.
	Added additional Text Widgets for testing

Change 3719413 by Lauren.Ridge

	Resubmit of content browser favorites

Change 3719803 by Yannick.Lange

	VREditor: Fix crash with null GEditor
	#jira UE-50103

Change 3721127 by tim.gautier

	QAGame: Fixed up a ton of redirectors within /Content and /Content/Materials
	- Added M_ParamDefaults and MF_ParamDefaults
	- Moved legacy MeshPaint materials into /Content/Materials/MeshPaint
	- Renamed ColorPulse assets from MatFunction_ > MF_, moved into /Content/Materials/Functions

Change 3721255 by Alexis.Matte

	Replace skeletal mesh import option "keep overlapping vertex" by 3 float thresholds allowing the user to control the welding thresholds.
	#jira UE-51363

Change 3721594 by Lauren.Ridge

	Material Blends now have plane mesh previews in their icons.

Change 3722072 by tim.gautier

	QAGame: Updated MF_ParamDefaults - using red channel as roughness
	Updated M_ParamDefaults - tweaked Scalar values

Change 3722180 by Michael.Trepka

	Updated Xcode project generator to sort projects in the navigator by name (within folders) and also sort the list of schemes so that their order matches the order of projects in the navigator.

	#jira UE-25941

Change 3722220 by Michael.Trepka

	Fixed a problem with Xcode project generator not handling quoted preprocessor definitions correctly

	#jira UE-40246

Change 3722806 by Lauren.Ridge

	Fixing non-editor compiles

Change 3722914 by Alexis.Matte

	Fbx importer: Add new attribute type(eSkeleton) for staticmesh socket import.

	#jira UE-51665

Change 3723446 by Michael.Trepka

	Copy of CL 3688862 from 4.18 + one more fix for a deadlock related to window resizing when using IME

	Don't do anything in Mac window's windowWillResize: if we're simply chaning the z order of windows. This way we avoid a rare dead lock when hiding the window.

	#jira UE-48257

Change 3723505 by Matt.Kuhlenschmidt

	Fix duplicate actors being created for USD primitives that specify a custom actor class

Change 3723555 by Matt.Kuhlenschmidt

	Fix crash loading the gameplayabilities module

	#jira UE-51693

Change 3723557 by Matt.Kuhlenschmidt

	Fixed tooltip on viewport dpi scaling option

Change 3723870 by Lauren.Ridge

	Fixing incorrect reset to default visibility, adding clear behavior to fields

Change 3723917 by Arciel.Rekman

	Linux: fix compilation with glibc 2.26+ (UE-51699).

	- Fixes compilation on Ubuntu 17.10 among others.

	(Merging 3723489 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)

Change 3723918 by Arciel.Rekman

	Linux: do not test for popcnt presence unnecessarily (UE-51677).

	(Merging 3723904 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...)

Change 3724229 by Arciel.Rekman

	Fix FOutputDeviceStdOutput to use printf() on Unix platforms.

Change 3724261 by Arciel.Rekman

	TestPAL: fix thread priority test (zero the counter).

Change 3724978 by Arciel.Rekman

	Linux: fix priority calculation.

	- Rlimit values are always positive, so this was completely broken when the RLIMIT_NICE is non-0.

Change 3725382 by Matt.Kuhlenschmidt

	Guard against crashes and add more logging when actor creation fails.
	Looks like it could be manual garbage collections triggered before conversion is complete so those have been removed

	#jira UE-47464

Change 3725559 by Matt.Kuhlenschmidt

	Added a setting to enable/disable high dpi support in editor.   This currently only functions in Windows.
	Moved some files around for better consistency

Change 3725640 by Arciel.Rekman

	Fix Linux thread/process priorities.

	- Should also speed up SCW on Linux by deprioritizing them less.

Change 3726101 by Matt.Kuhlenschmidt

	Fix logic bug in USD child "kind" type resolving

Change 3726244 by Joe.Graf

	Added an option to generate a minimal set of targets for cmake files
	Added shader and config files to cmake file generation for searching within IDEs

Change 3726506 by Arciel.Rekman

	Fix compile issue after DPI change.

Change 3726549 by Matt.Kuhlenschmidt

	Remove unnecessary indirection to cached widgets in the hit test grid

Change 3726660 by Arciel.Rekman

	Enable DPI switch on Linux.

Change 3726763 by Arciel.Rekman

	Fix mismatching "noperspective" qualifier (UE-50807).

	- Pull request #4080 by TTimo.

Change 3727080 by Michael.Trepka

	Added support for editor's EnableHighDPIAwareness setting on Mac

Change 3727658 by Matt.Kuhlenschmidt

	Fix shutdown crash if level editor is still referenced after the object system has been gc'd

	#jira UE-51630

Change 3728270 by Matt.Kuhlenschmidt

	Remove propertyeditor dependency from editorstyle

Change 3728291 by Arciel.Rekman

	Linux: fix for a crash on a headless system (UE-51714).

	- Preliminary change before merging to 4.18.

Change 3728293 by Arciel.Rekman

	Linux: remove unneeded dependency on CEF.

	- Old workaround should no longer be needed, while this dependency makes UE4 depend on a ton of external libs.

Change 3728524 by Michael.Trepka

	Copy of CL 3725570

	Removed Enable Fullscreen option from editor's Window menu on Mac. Windowed fullscreen mode is currently unavailable on Mac in editor mode as supporting it properly would require it to work with multiple spaces and split screen, which we currently don't handle (requested in UE-27240)

	#jira UE-51709

Change 3728875 by Michael.Trepka

	Fixed compile error in Mac SlateOpenGLContext.cpp

Change 3728880 by Matt.Kuhlenschmidt

	Guard against invalid worlds in thumbnail renderers

Change 3728924 by Michael.Trepka

	Don't defer MacApplication->CloseWindow() call. This should fix a rare problem with deferred call executing during Slate's PrepassWindowAndChildren call.

	#jira UE-51711

Change 3729288 by Joe.Graf

	Added the .idea/misc.xml file generation to speed up CLion indexing

Change 3729935 by Michael.Dupuis

	#jira UE-51722: Hide from UI invalid enum values

Change 3730234 by Matt.Kuhlenschmidt

	Fix "Game Gets Mouse Control" setting no longer functioning and instead the mouse was always captured.

	#jira UE-51801

Change 3730349 by Michael.Dupuis

	#jira UE-51324: Clear the UI selection when rebuilding the palette, as we destroyed all items and recreate them, so selection is on invalid item

Change 3730438 by Lauren.Ridge

	Cleaning up material layering UI functions

Change 3730723 by Jamie.Dale

	Fixed FastDecimalFormat::StringToNumber incorrectly reporting that number-like sequences that lacked digits had been parsed as numbers

	#jira UE-51799

Change 3731008 by Lauren.Ridge

	Changing Layers and Blends from proxy assets to real assets

Change 3731026 by Arciel.Rekman

	libelf: make elf_end() visible (UE-51843).

	- This repairs compilation for a case when CUDA is being used.
	- Also added some missing files for ARM 32-bit.

Change 3731081 by Lauren.Ridge

	New material layer test assets

Change 3731186 by Josh.Engebretson

	Adding camera speed scalar setting and Toolbar UI to increase range on camera speed presets

	#jira UE-50104

Change 3731188 by Mike.Erwin

	Improve responsiveness of Open Asset dialog.

	On large projects, there's a noticeable delay when opening and searching/filtering assets.

	Stopwatch measurements on my machine (seconds for ~122,000 assets):
		before	with this CL
	ctrl-P	1.4	0.45
	search	1.8	0.55

	CollectionManagerModule was the main culprit for search/filter slowness.

	Open Asset delay was due to filtering out plugin content. We were doing a lot of redundant work for what is essentially a read-only operation.

Change 3731682 by Arciel.Rekman

	UnrealEd: Allow unattended commandlets to rename/save packages.

Change 3732305 by Michael.Dupuis

	#jira UE-48434 : Only register if the foliage type still has a valid mesh

Change 3732361 by Matt.Kuhlenschmidt

	Fix two settings objects being created in the transient package with the same name

	#jira UE-51891

Change 3732895 by Josh.Engebretson

	https://jira.it.epicgames.net/browse/UE-51706

	If a shared DDC is not being used, present a notification to the licensee with a link on how to setup a shared DDC.
	Adds DDC notification events for check/put and query for whether a shared DDC is in use.

	#jira UE-51706

Change 3733025 by Arciel.Rekman

	UBT: make sure new clang versions are invoked.

Change 3733311 by Mike.Erwin

	Fix Linux compile warning from CL 3731188

	It didn't like mixing && and || without parentheses. Reworked logic to do one test at a time, put cheaper tests first to avoid calls to more expensive IsPluginFolder.

Change 3733658 by Josh.Engebretson

	Add a missing #undef LOCTEXT_NAMESPACE

Change 3734003 by Arciel.Rekman

	Fix Windows attempting to use printf %ls and crashing at that (UE-51934).

Change 3734039 by Michael.Trepka

	Fixed a couple of merge issues in Mac ApplicationCore

Change 3734052 by Michael.Trepka

	One more Mac ApplicationCore fix

Change 3734244 by Lauren.Ridge

	Fix for accessing Slate window on render thread

Change 3734950 by Josh.Engebretson

	Fixing clang warning

Change 3734978 by Jamie.Dale

	Relaxed enum property importing to allow valid numeric values to be imported too

	This was previously made more strict which caused a regression in Data Table importing

	#jira UE-51848

Change 3734999 by Arciel.Rekman

	Linux: add LTO support and more.

	- Adds ability to use link-time opitimization (reusing current target property bAllowLTCG).
	- Supports using llvm-ar and lld instead of ar/ranlib and ld.
	- More build information printed (and in a better organized way).
	- Native scripts updated to install packages with the appropriate tools on supported systems
	- AutoSDKs updated to require a new toolchain (already checked in).
	- Required disabling OpenAL due to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219089

Change 3735268 by Matt.Kuhlenschmidt

	Added support for canvas based DPI scaling.

	-Scene canvas is by default not scaled as this could severely impact any game using a canvas based UI
	-The debug canvas for stats is always dpi scaled in editor and pie.
	-Eliminated text scaling workaround now that the entire canvas is properly scaled
	-Enabled canvas scaling in cascade UI

Change 3735329 by Matt.Kuhlenschmidt

	Fix potential crash if an asset editor has an object deleted out from under it

	#jira UE-51941



Change 3735502 by Arciel.Rekman

	Fix compile issue (bShouldUpdateScreenPercentage).

Change 3735878 by Jamie.Dale

	Updated FString::SanitizeFloat to allow you to specify the min number of fractional digits to have in the resultant string

	This defaults to 1 as that was the old behavior of FString::SanitizeFloat, but can also be set to 0 to prevent adding .0 to whole numbers.

Change 3735881 by Jamie.Dale

	JsonValue no longer stringifies whole numbers as floats

Change 3735884 by Jamie.Dale

	Only allow enums to import integral values

Change 3735912 by Josh.Engebretson

	Improving cook process error/warning handling including asset warning/error content browser links and manual dismiss for cook error notifications

	#jira UE-48131

Change 3736280 by Matt.Kuhlenschmidt

	Fix 0 dpi scale for canvases

	#jira UE-51995

Change 3736298 by Matt.Kuhlenschmidt

	Force focus of game viewports in vr mode

Change 3736374 by Jamie.Dale

	Fixed some places where input chords were being used without testing that they had a valid key set

	#jira UE-51799

Change 3738543 by Matt.Kuhlenschmidt

	Better fix for edit condition crashes

	#jira UE-51886

Change 3738603 by Lauren.Ridge

	Copy over of drag and drop non-array onto array fix

Change 3739701 by Chris.Babcock

	Fix crashlytics merge error
	#jira UE-52064
	#ue4
	#android

[CL 3739980 by Matt Kuhlenschmidt in Main branch]
2017-11-06 18:22:01 -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
Marcus Wassmer
ede472db17 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3680113)
#lockdown Nick.Penwarden
#rb none
============================
  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 3629223 by Rolando.Caloca

	DR - Rollback //UE4/Dev-Rendering/Engine/Source/Runtime/VulkanRHI to changelist 3627847

Change 3629708 by Rolando.Caloca

	DR - vk - Redo some changes from DevMobile
	3601439
	3604186
	3606672
	3617383
	3617474
	3617483

Change 3636145 by Chris.Bunner

	Linux compile fix.

Change 3636198 by Chris.Bunner

	Include fix.

Change 3636225 by Daniel.Wright

	Removed spammy draw event

Change 3636397 by Daniel.Wright

	Visualize volumetric lightmaps uses 18% grey in lit mode

Change 3636398 by Daniel.Wright

	Translucency lighting modes work with Volumetric Lightmaps
	* The old Indirect Lighting Cache always interpolated one sample per object, while Volumetric lightmaps operate at the frequency of the Translucency Lighting Mode (per-vertex or per-pixel) so the lighting accuracy is much higher.
	* The old ILC always applied the single lighting sample with a per-pixel normal, even in per-vertex lighting modes
	* Volumetric PerVertex NonDirectional (cheapest lit translucency) went from 74 instructions down to 42
	* Volumetric Directional went from 104 up to 122

Change 3636604 by Chris.Bunner

	Added a material translation error on identically named/associated but differently valued parameters as this will cause one of them to be lost during parameter evaluation, the result being "random".

Change 3637668 by Rolando.Caloca

	DR - hlslcc - Skip preprocessor when not required which reduces peak mem consumption by ~500 MB
	- Fix missing indexing on intrinsic return type

Change 3638541 by Chris.Bunner

	Fixed editor materials - Skip hardcoded parameter names that we rely on being overridden when checking for non-matching duplicate parameters.

Change 3638798 by Mark.Satterthwaite

	Rebuilt hlslcc for Mac for Rolando's 3637668 changes.

Change 3638861 by Mark.Satterthwaite

	Missed making a log verbose in the Metal ring-buffer.

Change 3639482 by Rolando.Caloca

	DR - vk - Minor fixes

Change 3639909 by Michael.Lentine

	Add special case for struct needed to compile.
	Workaround issues in parser such that (x)[0] is replaced with x[0] and (x).a is replaced with x.a.

Change 3639916 by Michael.Lentine

	Spelling fix.

Change 3640053 by Mark.Satterthwaite

	Fix Desktop Forward rendering on Nvidia Metal rendering on macOS by modifying the shader and runtime to treat ForwardLocalLightBuffer data as uint rather than float and invert the use of as*() casts.

	Tthis is *necessary* to avoid a bug/limitation of Nvidia's current Metal shader compiler that flushes all denorm values to zero on load from any resource. AMD & iOS Metal only flush-to-zero when sampling from textures and that's what Apple regard as the expected behaviour. I have however asked them to standardise on the D3D behaviour of preserving denorms on all load, move (incl. min/max/as*()-casts) & store operations. This won't happen in the current or imminent OS/Xcode releases.

	Now only Intel Metal is broken and their problems run deeper.

	#jira UE-48881

Change 3640983 by Olaf.Piesche

	Cache the depth buffer collision shader for GPU particles even when simple forward is enabled, as that can be turned off at runtime.

	#jira UE-48799

Change 3641480 by Michael.Lentine

	Add min16float to FP16Math

Change 3642442 by Mark.Satterthwaite

	Fix the native shader libraries again & undo the increase in cook time from changes to the way FShaderCodeLibrary was compiling & deduplicating the shaders.
	- Remvoe the single linear array for accumulated shader code: reallocating this is tremendously expensive and will double the time taken to iteratively cook large projects.
	- Uncompress the shader data for the native library system so that it actually works again.
	- Fix some errant change to the Metal compiler that was trying to wedge the fully compiled library into the single Metal library which is 100% bogus.

	#jira UE-49192

Change 3642919 by Chris.Bunner

	Reverted unintended changes to material static parameter set serialization.
	Bumped material version to force re-serialization.
	Fixed a few typos.

Change 3642923 by Richard.Wallis

	Fix for "Pixel Inspector On" message not disappearing when closing pixel inspector window while on.  Handle tab closed events to cancel the pixel inspector if window closed while running.

	#jira UE-46504

Change 3643296 by Michael.Lentine

	Convert all structures that aren't use globally to halfs.

Change 3643381 by Ryan.Brucks

	New Plugin allowing Blueprint Texture and RT reads as well as MIC creation and modification.

Change 3643929 by Ben.Salem

	Added better precision on thread values in Perf Monitor. Also added global thread values to go with per-world ones to help track down the most accurate numbers possible.

	#tests Ran locally, changes validated by benj

Change 3644203 by Mark.Satterthwaite

	Refactor mtlpp a little bit to make the compiler do more of the work & update for all the latest publicly exposed APIs.

Change 3644336 by Mark.Satterthwaite

	Ref-count the mtlpp Device object so that it can be the repository for IMP caching - now just have to go through the types created from a specific device and have them keep a reference....

Change 3644431 by Uriel.Doyon

	Added a intensity units property, for point lights and spot lights, that can be set to Candelas, Lumens or Unitless (legacy).
	The default units value for newly placed point lights and spot lights is configured in the project settings.
	Spot lights configured in lumens have their whole luminous energy redirected toward the cone.
	This means that changing the outer cone angle, changes the spot light brightness.
	New exposure menu that uses an EV100 slider.
	New post process settings "camera" tab regrouping : ShutterSpeed, ISO,  Aperture and ExposureCompensation.
	Post process settings "auto exposure" tab renamed "exposure".
	The calibration constant for "Auto Exposure Basic" is now configurable in the advanced tab.
	The auto exposure method is renamed "Metering Mode"

	New pre-exposure feature that allows the engine to apply the previous frame exposure before writing to the scene color.
	This allows the engine to render the scene with similar range than the final color (after exposure), and avoid arithmetic overflow for low precision RT formats.
	The amount of exposure applied directly is called pre-exposure, and is compensated by a smaller post-exposure value.

Change 3645098 by Marcus.Wassmer

	Don't add meshes twice when in simpleforward

Change 3645551 by Daniel.Wright

	VolumetricScatteringIntensity is greyed out based on Mobility

Change 3645707 by Chris.Bunner

	Skip empty parameters when identifying invalid duplicates during material translation.

Change 3646225 by Uriel.Doyon

	Texture streaming support for particle sub-uv

Change 3646323 by Rolando.Caloca

	DR - vk - Fix bad update texture 2/3d parameters

Change 3646463 by Mark.Satterthwaite

	Metal shader files that can serve as extensions to the metal_stdlib rather than trying to wedge even more into the shader compiler. Might as well leverage Metal's C++'ness.
	Currently just a skeleton of a buffer type that would better emulate HLSL Buffer<>/RWBuffer<> objects.

Change 3646727 by Marcus.Wassmer

	fix linux and nonunity compiles

Change 3647777 by Rolando.Caloca

	DR - Mobile Vulkan optimization

Change 3647822 by Lauren.Ridge

	Layers are now renameable (except Layer 0 is always "Background") in Material Layers Functions

Change 3647918 by Chris.Bunner

	Static analysis fixes - Monolithic include, forward delcared enums, locally shadowed variable.

Change 3648010 by Michael.Lentine

	Don't use min16float by default.

Change 3648015 by Michael.Lentine

	Add special case fixes for min16float as well as half on console.

Change 3648024 by Lauren.Ridge

	Moving MaterialLayersFunctions Layer naming to EditorOnly wrappers

Change 3648127 by Lauren.Ridge

	Moving name getter functionality to FMaterialLayersFunctions

Change 3648265 by Lauren.Ridge

	Fixing loctext key

Change 3648293 by Rolando.Caloca

	DR - D3D12 fix

Change 3648326 by Rolando.Caloca

	DR - vk - Added subrectangle support when updating Texture2D and Texture3D

Change 3648522 by Rolando.Caloca

	DR - vk - Do not try to create a BufferView of a StructuredBuffer (no valid pixelformat)

Change 3648612 by Rolando.Caloca

	DR - vk - Implement RHIMapStagingSurface

Change 3648673 by Rolando.Caloca

	DR - vk - Reduce Vulkan pipeline cache disk size by filtering duplicated shader ucodes

Change 3648913 by Arne.Schober

	DR - Performance optimization during HLod traversal. using vector load and avoiding array copy by passing it through reference instead through value.

Change 3649443 by Daniel.Wright

	Exposed EmissiveBoost, since Lightmass supports Emissive areas on meshes

Change 3650436 by Mark.Satterthwaite

	Implemented the necessary extensions for Metal shading language to move lots of complexity out of MetalBackend and into actual shader code to make life *vastly* simpler.

	- Full ue4::typed_buffer<T> wrapper type & associated ue4::buffer<>/ue4::buffer_atomic<> API - totally untested but should be functionally equivalent to HLSL Buffer<T>/RWBuffer<T>.
	- All the sensible casts I can think of are now defined in ue4_format - any additional ones can just be added. The enurm of formats needs to be exposed to MetalRHI so we upload the correct values, but this should be trivial.
	- Added a full series of wrappers around texturecube_array and depthcube_array to insulate code from whether it is backed by a real cube_array or a texture2d_array so we don't have to maintain complicated variants for new/old iOS devices.
	- Added implementations for a bunch of annoying HLSL & GLSL intrinsics that were being matched by name + reverse_bits which needs a custom implementation on old shader standards.

Change 3650861 by Rolando.Caloca

	DR - vk - Fix warnings

Change 3651116 by Rolando.Caloca

	DR - vk - Support for compressed saved PSO cache

Change 3651321 by Rolando.Caloca

	DR - vk - Prep for load multiple PSO files

Change 3651337 by Chris.Bunner

	Editor-only default material fallback (hardcoded material).

	#jira UE-48404

Change 3651839 by Rolando.Caloca

	DR - vk - Integrate minor pipeline changes

Change 3652042 by Mark.Satterthwaite

	More work on mtlpp:
	- Selector class that caches IMP from SEL & Class.
	- Fixes to ns::Error.
	- Added test case application for testing denorm & float reinterpret-cast behaviour on Metal.

Change 3652370 by Uriel.Doyon

	New "stat StreamingOverview" giving high level metrics of texture usage.
	New function ResetAverageRequiredTexturePoolSize() and GetAverageRequiredTexturePoolSize() giving the average ideal value for "r.streaming.poolsize".

Change 3653658 by Chris.Bunner

	Material vertex interpolator for sprite and gpu sprite particles.

Change 3653676 by Rolando.Caloca

	DR - vk - Integrate changes: Multiple PSO caches, shared ucode & compression, size reduction up to 80%

Change 3653940 by Daniel.Wright

	Moved Volumetric Lightmap textures out of FScene and into FPrecomputedVolumetricLightmapData so their lifetime can match the MapBuildData.  This allows tossing the source BulkData in game after RHI texture creation even though switching lighting scenarios does Release/InitializeRenderingResources multiple times.

Change 3653956 by Daniel.Wright

	Fixed leak of BatchVisibilityId's

Change 3653991 by Daniel.Wright

	Fixed missing include

Change 3654013 by Daniel.Wright

	Refactored reflection capture composite SM4 handling, now forces fully rough even if !REFLECTION_COMPOSITE_USE_BLENDED_REFLECTION_CAPTURES (forward shading default)

Change 3654018 by Daniel.Wright

	Remove unused SM4 reflection capture cubemap

Change 3654118 by Rolando.Caloca

	DR - vk - Fix for queries; support for r.Vulkan.ProfileCmdBuffers to only time cmd buffers w/o gpu bubbles

Change 3654339 by Chris.Bunner

	Temporarily disabed a material error whilst working with content teams to fix the introduced bugs.

Change 3654534 by Daniel.Wright

	Editor is only supported on Feature Level 5 platforms.  Added a message box and exit when SM4 is detected (d3d10, OpenGL 3).

Change 3654751 by Rolando.Caloca

	DR - vk - Add readback for RGB10A2; minor optimization

Change 3654940 by Rolando.Caloca

	DR - vk - Warning fix

Change 3655104 by Mark.Satterthwaite

	Add a bunch of code to mtlpp to wrap the Xcode command-line Metal tools and use them to provide a convenient command-line tool that can compile two Metal shaders & diff the resulting AIR to make debugging easier. Obviously this only works on macOS.

Change 3655173 by Jian.Ru

	Render dithered material as masked if a stencil prepass is not used

	#jira UE-50064, UE-49537

Change 3655479 by Daniel.Wright

	Fixed HandleLegacyMapBuildData not getting called on P maps loaded in the editor, which apparently was dropped in an integration error, causing all legacy maps (before the BuildData change) to lose their built lighting.

Change 3656341 by Richard.Wallis

	Metal validation checks to test for drawing of the end of a vertex stream as seen in UE-48172 (Landscape Mesh Flickers Rapidly When Using Sculpting Landscape).  This is not a fix for that but just a error log to catch the bad draw calls.

	#jira UE-48172

Change 3656844 by Rolando.Caloca

	DR - vk - Avoid microcode copy
	- Fix link error

Change 3656894 by Rolando.Caloca

	DR - vk - Enable api dump without needing validation enabled

Change 3656915 by Marcus.Wassmer

	Fix DX12 buffer lock for read

Change 3657166 by Rolando.Caloca

	DR - vk - Proper fix for api dump layer

Change 3657401 by Rolando.Caloca

	DR - vk - Linux compile fix

Change 3657607 by Rolando.Caloca

	DR - vk - Prep for changes

Change 3658722 by Chris.Bunner

	Refresh shared texture samplers when changing max ansiotropy level (e.g. scalability settings).

	#jira UE-30086

Change 3659499 by Daniel.Wright

	Moved bEnableAutoLODGeneration to LOD category so it's not the only one in HLOD category

Change 3659644 by Mark.Satterthwaite

	D3D11 equivalent to 3656341 (only enabled when -d3ddebug is) to validate DrawIndexedPrimitives isn't trying to draw off the end of the instanced vertex streams which has inconsistent (and potentially undefined) behaviour across the various APIs we support. This fires when painting the landscape because the code attempts to render with a FirstInstance value that is as large as the number of elements in the instance-data streams which D3D11 drivers silently fails to render, but which Metal (& probably Vulkan too) will renders as garbage. This pattern is wrong & will be even more dangerous in a Draw*Indirect world.

	#jira  UE-48172

Change 3659831 by Rolando.Caloca

	DR - vk - Copy 3657927 (fixes for Mali)

Change 3661921 by Rolando.Caloca

	DR - vk - Minor log/info changes

Change 3661985 by Mark.Satterthwaite

	Change the Metal sampler filter translation to better match D3D.

Change 3662050 by Richard.Wallis

	Compile fix for Metal enums.

Change 3662062 by Rolando.Caloca

	DR - Copy from 3662060
	- OpenGL cloth fix

Change 3662100 by Mark.Satterthwaite

	Use a temporary file and an atomic move to put the Metal PCH into the right place and reduce the number of false PCH compile failures on the build farm.

Change 3662253 by Daniel.Wright

	Reflection Captures support Lighting Scenarios without recapturing
	 * Reflection Captures are now part of the Map Build
	 * Modifying a capture in editor will display a preview, but game can only display built captures (black for unbuilt with screen message)
	 * Reflection Capture build data moved to the BuildData package
	 * Building lighting / reflection captures no longer dirties ULevels
	* Sky lights which capture the scene now work correctly with Lighting Scenarios
	* Lighting Scenarios must now be loaded for each time they are made visible (no switching back and forth while keeping both loaded)

Change 3663215 by Mark.Satterthwaite

	Initial, incomplete, tool added to mtlpp to help debug macOS Internal Compiler Errors - the mtlpp command-line tool can be fed the debug output from UE4 along with compiler settings to automatically compile shaders and construct the render pipeline that crashes the runtime compiler.
	So far only macOS render-pipeline-states are supported currently.

Change 3663293 by Mark.Satterthwaite

	Added Metal device selection to the mtlpp command-line tool so I can quickly test compile on dual-GPU Macbook Pro's.

Change 3663471 by Daniel.Wright

	Reflection Capture Builds no longer use UEditorLevelUtils::SetLevelVisibility to control level visibility, which streams out sublevels, modifying nav mesh
	Fixed status updates during Reflection Capture Build
	Captures overflowing GMaxNumReflectionCaptures now log a warning instead of pretending that they built successfully

Change 3664056 by Rolando.Caloca

	DR - Linux compile fix

Change 3664460 by Daniel.Wright

	Restored unused LoadTimesObjectVersion, packages saved with it will issue a warning on load

Change 3664802 by Uriel.Doyon

	Fixed flash created by pre-exposure when the value changed dramatically between frames

Change 3664890 by Daniel.Wright

	Created 'Stat MapBuildData' to track the memory size of lighting and reflection capture build outputs

Change 3665163 by Rolando.Caloca

	DR - Copy from 3665156
	- Gracefully fail when there are mem leaks exiting Vulkan

Change 3665629 by Daniel.Wright

	Only Surface domain materials cast shadows in Lightmass

Change 3665855 by Marcus.Wassmer

	PR #4032: Fix comparison of SceneColorFormat (Contributed by Hybrid0)

Change 3666707 by Guillaume.Abadie

	Replaces some custom material node to get View.BufferSizeAndInvSize with ViewProperty material expression in some engine material functions.

Change 3667239 by Rolando.Caloca

	DR - Use hlslcc define for common issues

Change 3668108 by Brian.Karis

	Disabled to Catmull-Rom filter. Too many flickering issues. Disabled antiflicker as well.

Change 3668157 by Mark.Satterthwaite

	In the prototype Metal stdlib extension library add inline versions of the D3D SM6 "wave" intrinsics that can be expressed in terms of Metal 2.0 simd/quad group operations (macOS=simd, iOS=quad). These are unlikely to be as efficient as direct intrinsics but they should be functionally equivalent.

	These functions are not available *yet* as I still need to hook the ue4_stdlib into MetalShaderFormat & MetalRHI.

	The following HLSL 6 functions are implemented:
	WaveAllBitAnd
	WaveAllMax
	WaveAllMin
	WaveAllBitOr
	WaveAllBitXor
	WaveAllEqual
	WaveAllProduct
	WaveAllSum
	WaveAllTrue
	WaveAnyTrue
	WaveBallot
	WaveGetLaneCount
	WaveGetLaneIndex
	WaveOnce
	WavePrefixProduct
	WavePrefixSum
	WaveReadFirstLane
	WaveReadLaneAt

	The following can't be implemented in Metal as of Metal 2.0 AFAIK:
	WaveGetOrderedIndex
	WaveIsHelperLane
	GlobalOrderedCountIncrement
	QuadReadLaneAt
	QuadSwapX
	QuadSwapY

Change 3668260 by Olaf.Piesche

	Cache particle collision shaders regardless of simple forward state

	Missed this checkin

	#jira FORT-51307

Change 3669243 by Daniel.Wright

	Bumped shader version to propagate FReflectionCaptureData rename

Change 3669369 by Mark.Satterthwaite

	Duplicating Metal changes from //UE4/Release-4.18 to Dev-Rendering (//UE4/Dev-Rendering)

	3662503 Collapse system-variables to one declaration in MetalUtils to avoid later shader compiler errors when they are specified more than once, which is seemingly permissable. Fixes volumetric fog.

	#jira UE-50293

	3665210 - Invalidate all Metal shaders again to force a recompile to workaround another driver bug.
	- On macOS compact the clip-distance value into a single output to avoid bugs in the runtime pipeline compilers.
	- In SCW's direct-compile mode MetalShaderForamt should always dump the resulting Metal shader and print any errors we encounter to the log.
	- Change FGenerateMetalVisitor to take a FMetalCodeBackend& not a FMetalCodeBackend* to avoid a lot of pointless pointer validation.

	#jira UE-50244

	3665429 Fix a crash on shutdown due to MetalRHI caching vertex-declarations beyond the lifetime of the RHI by moving the cache into the FMetalDynamicRHI itself.
	#jira UE-50356

	3665613 Fix DistanceField rendering on Metal & the associated validation layer error when it is enabled - MetalRHI can't use the same approach as Vulkan without a bit more work.

	#jira UE-50364

	3667584 Fix black flickering on some materials that use World Position Offset - the Metal sincos intrinsic comes into two flavours for single precision floats and we want the precise version not the fast version. The "cross" implementation needed a few more fma's too and this change has to invalidate Metal shaders again to take effect.
	#jira UE-50399

	3667805 Changing sincos in Metal fragment shaders had undesirable side-effects - the compiler is now re-associating another floating point operation - so limit the use of precise::sincos to vertex-shaders for now. This fixes the WPO materials without causing any other obvious problems.
	#jira UE-50399

Change 3669912 by Mark.Satterthwaite

	Fix Metal compilation for PCSS shadows - the HLSL that is compiled uses both SampleCmp and Sample which GLSL disallows (shadowSampler types in GLSL only allow SampleCmp) but is perfectly valid in Metal where only the texture type declaration changes.

	Duplicate MetalBackend.cpp changes from Joe.Graf's: 3667781
	Fixed an extra ) being emitted during HLSL->Metal translation
	Added depthcube_array support per Mark's instructions

Change 3670308 by Mark.Satterthwaite

	Missing autorelease pool blocks in MetalTexture functions.

Change 3670989 by Mark.Satterthwaite

	Stop trying to be so clever with Metal clip-distances: AMD have a bug in 10.13.0 that means we can only emit one clip-distance value, so simply emit the value with the lowest index (we have handily ordered them by importance!) and let the others become user-interpolators until this bug is resolved in a macOS SU (according to Max@AMD the fix is in, just not in time for 4.18). This means planar reflections will work, VR no-multi-view-fallback will work & layered rendering will work either individually or together - the difference being that on macOS *only* the VR no-multi-view-fallback & layered rendering paths may be slower when combined with the global clip plane.

	Hit & run fix to MetalCaptureManager and availability of tile-shader functions while I'm here.

	#jira UE-50518

Change 3671014 by Mark.Satterthwaite

	Correct handling of RowLinearPVRTC blits for iOS Metal desired for Ocean.

Change 3671575 by Rolando.Caloca

	DR - Copy 3668036
	Stop syncing CPU with GPU on Vulkan

Change 3671637 by Rolando.Caloca

	DR - Copy 3670937
	Fixes Vulkan editor outline

Change 3672309 by Mark.Satterthwaite

	Submitted on behalf of Richard Wallis:

	Only disable V-Sync on Metal in macOS 10.13 when running in "true" fullscreen mode (where we switch display modes & forbid switching spaces or tabbing out) so that you won't see the rainbow artefact caused by being out-of-sync with WindowServer, only the tearing you'd expect when V-Sync is disabled. We'll chat with Apple about whether there is a way to avoid the rainbow artefact when switching spaces in Windowed Fullscreen with displaySync disabled.

	#jira UE-50134

Change 3672314 by Daniel.Wright

	User friendly message dialog for when a required key is missing from BaseLightmass.ini

Change 3672315 by Daniel.Wright

	Assert on load when a uniform buffer struct goes missing, instead of a crash on save

Change 3672476 by Chris.Bunner

	Removed duplicate material instance editor command binding that appeared in a task stream merge.

Change 3672626 by Mark.Satterthwaite

	Move the ue4_stdlib.metal extensions to MetalRHI's Public header directory as it'll need to be available to both modules and that's easier to accomplish from here.

Change 3672643 by Mark.Satterthwaite

	iOS compilation fixes.

Change 3672728 by Daniel.Wright

	Fixed encoded HDR reflection captures

Change 3672753 by Jian.Ru

	Fix texture swimming
	#jira UE-49369

Change 3672815 by Daniel.Wright

	Tooltip for build button explaining why it might be disabled

Change 3673350 by Rolando.Caloca

	DR - vk - Do not reallocate memory every draw call

Change 3673501 by Rolando.Caloca

	DR - vk - Remove more reallocations

Change 3673505 by Rolando.Caloca

	DR - Remove global variable with semantic

Change 3673514 by Rolando.Caloca

	DR - vk - compile fix

Change 3675899 by Chris.Bunner

	Fixed support for editor-time transient parameter overrides. This happens when a compiled material's scalar or vector parameter is changed in value only, the active material resources should also update and be reverted when the material graph is closed. The code was incorrectly pulling base parameters from expressions instead of the actual uniform.

Change 3676843 by Arne.Schober

	DR - UE-49473 - Fix Stateleak caused by custom drawer in the long for loop, where the depth stencil state might not be reset in a subsequent itteration of the loop.

Change 3678269 by Daniel.Wright

	Fixed Encoded HDR reflection capture data getting the wrong Brightness applied when cooking

Change 3678543 by Daniel.Wright

	MapBuildData now tosses the unneeded reflection capture format on load.  Affects target platforms that require multiple formats at cook time.

Change 3679602 by Jian.Ru

	Fix up mesh decal shader complexity view mode
	#jira UE-50272

Change 3679959 by Chris.Bunner

	Fixed logic on overriden vector parameter retrieval for material instances checking a function owned parameter.

	#jira UE-50712

Change 3679998 by Daniel.Wright

	Fixed crash when precomputing static visibility only

[CL 3680175 by Marcus Wassmer in Main branch]
2017-10-04 13:36:51 -04:00
Thomas Sarkanen
6b2c402ca8 Copying //UE4/Dev-AnimPhys to //UE4/Dev-Main (Source: //UE4/Dev-AnimPhys @ 3624379)
#lockdown Nick.Penwarden
#rb none

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

Change 3536809 by Ben.Marsh

	Fixing case of files in "iOS" directory, pt 1.

Change 3536814 by Ben.Marsh

	Fixing case of files in "iOS" directory, pt 2.

Change 3596207 by Thomas.Sarkanen

	Copying //Tasks/UE4/Dev-UEAP-29-PhATUpgrade to Dev-AnimPhys (//UE4/Dev-AnimPhys) @ CL 3590250

	PhAT Upgrade

	#jira UEAP-29 - New PhysicsAsset editor

	Changelists from task stream:

	Change 3380649 on 2017/04/05 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Initial pass at allowing viewports to be extended more easily, still plenty TOD, but just unearthing this old shelf and getting it working.

		This gets the Persona skeleton tree and viewport into PhAT, without any PhAT functionality added.

	Change 3380685 on 2017/04/05 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Renaming PhAT files to PhysicsAssetEditor

	Change 3380749 on 2017/04/05 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Rename PhAT -> PhysicsAssetEditor

	Change 3380832 on 2017/04/05 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixed up PhAT to Physics Asset Editor

	Change 3380884 on 2017/04/05 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Reverted some over-zealous renaming

	Change 3380970 on 2017/04/05 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Tweaked ISkeletonTreeBuilder interface to make way for actually making a derived class of it
		Added the ability to hide filter menus to skeleton tree

	Change 3381017 on 2017/04/05 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Added new physics asset skeleton tree builder

	Change 3384407 on 2017/04/07 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Skeleton tree extensions to support physics assets

		Only started this work - still much to do

	Change 3384460 on 2017/04/07 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Rearranged persona viewport menus

	Change 3392222 on 2017/04/13 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Removed body/constraint modes.
		Added graph editor
		Added edit mode - moved viewport client code over
		Got PhAT skel mesh rendering in viewport

	Change 3392268 on 2017/04/13 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Increased hit proxy priority to improve selection

	Change 3401648 on 2017/04/20 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Skeleton tree gets bodies & shapes back.

		Selection works in graph, now displaying the correct constraint in the detials panel. Still need to add selection from viewport.

		Added multi-select to bone proxy customization

		Re-tweaked editor layout

	Change 3403701 on 2017/04/21 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Selection sync work.

		Customization of anim viewport menus.

		Context menus for physics asset items, as well as masking of various context menu items via settings.

	Change 3405246 on 2017/04/24 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Started more work on viewport menu extensions, but need to refactor the toolbar system to use actual multiboxes. Up next!

	Change 3405274 on 2017/04/24 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		More viewport menu fixups (plus deleting duplicate functionality).

	Change 3409155 on 2017/04/26 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Got simulation working again - as we switched to the debug skel mesh comp, the normal tick path didnt work for post-blend physics (it tried to flip the buffer too early).
		Also tweaked debug skel mesh comp root motion consumption code to not reset transfor every frame if we are not using root motion.
		Cleaned up unused files & code

	Change 3410814 on 2017/04/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Allow extensibility of viewport menu bars

		Slate changes:

		Allow menu bars to optionally specify an icon to use. This is intended to allow us to move viewport tool/menu bars over to use multibox, with all the attendant features and extension points.
		Allow menu bars to optionally invert-on-hover.
		Allow styling of menus to affect closed appearance of menu header. Previously only NoBorder was used.
		Adjusted core styling of menu bar elements.

		Other changes:

		Adjusted padding for various UI elements to preserve previoud behavior.
		Adjusted SAnimViewportToolbar to use the new menu bar builder.
		Exposed SEditorViewportViewMenu so that it can be used in a standard menu bar.

	Change 3410816 on 2017/04/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Added extension point to viewport menu bar

	Change 3410818 on 2017/04/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Getting sim working again

		Moved over to using preview instance so we share functionality with Persona editors.
		Added time dilation options to persona preview scene.
		Removed PhAT specific recording functionality (it is in the viewport now).

	Change 3410840 on 2017/04/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Recreate physics state on edit, not sim start

		This allows velocity to be inherited when simulation is started

	Change 3410863 on 2017/04/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Moving viewport to continually-invalidated one like animation editors

		Fixed crash in non-extended viewport toolbars

	Change 3410936 on 2017/04/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Bodies start off non-expanded

		Selection now synced between viewport and graph

		Constraint selection in graph not works on the first try

	Change 3410943 on 2017/04/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Added missing icon

	Change 3410966 on 2017/04/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Removed shape listing from graph nodes

	Change 3411013 on 2017/04/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Double click on body node recenters graph

		Fixed graph disappearing on right-click

	Change 3411111 on 2017/04/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Prevented cursor getting swallowed in sim mode

	Change 3411126 on 2017/04/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixed overlapping text

	Change 3411213 on 2017/04/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Node layout now takes dimensions into account

	Change 3411320 on 2017/04/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixed crash opening Persona editors

		Renamed file

	Change 3411327 on 2017/04/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Tweaks to profiles menu

	Change 3420822 on 2017/05/03 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Profiles can now be edited in their own details panel

		Existing customizations folded into the new panel

		Tweaks to toolbar

		Added the ability for the persona details panel to have extra top/bottom content added

	Change 3420832 on 2017/05/03 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Add profile control to context menus

		Also delete old unused code

	Change 3422651 on 2017/05/04 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Toolbar trimmed down & re-ordered

		Body/constraint ops moved to context menus

		Apply physmat now a context-menu option with an asset picker

	Change 3422654 on 2017/05/04 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Removed extra warning dialog when auto-creating bodies

		Changed title of new asset dialog to "auto-create bodies"

	Change 3422680 on 2017/05/04 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fix "simulate selected"

		As we dont re-init the physics state each time we start simulating, our tweaked physics type was never applied. We now manually do this in the editor.

	Change 3422937 on 2017/05/04 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Replaced EKCollisionPrimitiveType with EAggCollisionShape::Type

		Fixed up selection so body selection works & tree seleciton is properly synced with viewport
		Added recursion guard to selection delegate handlers.

		Removed vestigial instance property editing support (no longer needed).

		Removed unused old tree support code

	Change 3423034 on 2017/05/04 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Added constraints to tree

	Change 3423318 on 2017/05/04 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fix bone proxiies stopping updating after initial viewport selection

	Change 3424993 on 2017/05/05 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixed up selection issues when creating new bodies

		Added constraint context menu

	Change 3424998 on 2017/05/05 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Moved icons to central location

	Change 3425445 on 2017/05/05 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Customized filtering of the skeleton tree

		Hide constraints by defualt

		Added option to hide parents when filtering (so the vertical space is nto wasted, but some idea of hierarchy is preserved).

		BREAKING CHANGE: changed skeleton tree filtering API to add args & removed bWillFilter bool.

	Change 3425488 on 2017/05/05 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Merge-Thomas.Sarkanen

		Merging //UE4/Dev-AnimPhys to Dev-UEAP-29-PhATUpgrade (//Tasks/UE4/Dev-UEAP-29-PhATUpgrade) @ CL 3425303

	Change 3427886 on 2017/05/08 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Moved physics sim options to viewport menu (so seleciton changing is not required to change them)

		Moved physics-related rendering options to show menu

		We no longer switch to sim options when nothing is selected.

		During simulation we now disable the details panel

		Constraint scaling now works correctly (rather than just scaling the screen size limit that axes only are rendered)

	Change 3428040 on 2017/05/08 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Small fixes based on feedback:

		Exposed Mirror tool to menus

		Exposed constraint quick actions to menus

		Added edit condition to Position & Velocity strength for physical animation

		Fixed up some tooltips & display names

	Change 3428143 on 2017/05/08 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Defaulted to constraints as points

	Change 3428216 on 2017/05/08 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Request from Nick D:

		Update in-level primitive transforms immediately, rather than on mouse up. We only do this for non-convex primitives however, to avoid re-cooking meshes.

	Change 3430326 on 2017/05/09 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Tweaks to rendering of constraints and shapes to allow for better seleciton & interaction with editor widgets.

		Slightly increased point-constraint rendering size and added crosshair cursor to constraints

	Change 3430327 on 2017/05/09 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixed object-reuse issue in skeleton tree items with sanem names (use a GUID instead)

	Change 3430391 on 2017/05/09 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Removed duplicate time dilation (can just use viewport menu!)

	Change 3430419 on 2017/05/09 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixup post-merge

		Prevent crash by attaching to root component in the correct place

		Add IWYU include for TArrayView

		Remove more unused code

	Change 3430443 on 2017/05/09 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fix constraint/body selection one final time

		Move constraint drawing to SDPG_World (apart from point mode)

		Remove depth offset in material

	Change 3430495 on 2017/05/09 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Enabling/disabling collision between bodies is now clearer

		Menu items are now enabled and disabled correctly depending on collision state

		Tooltip reflects what actually gets done when the operation is enacted

		Also corrected a few functions that still reference constraint & body mode

	Change 3430553 on 2017/05/09 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Added enable/disable collision with all

	Change 3432386 on 2017/05/10 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Color code graph items based on current profile

	Change 3432401 on 2017/05/10 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Color code tree items too

	Change 3432418 on 2017/05/10 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Bone selection & manipulation now possible - allows for pose setup before simulation

		Item expansion now expands leaf nodes when selecting - helps with constraint selection etc.

	Change 3432427 on 2017/05/10 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fix compile error

		Color code according to simulated/kinematic status

	Change 3432428 on 2017/05/10 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		File i missed

	Change 3432540 on 2017/05/10 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Added physics asset factory so physics assets can be created form the "new asset" menu.

		Skeletal mesh is picked then a defualt asset is generated

	Change 3432556 on 2017/05/10 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Improve interactions with bones & bodies

		Clear bone selection when selecting bodies/constraints

		Always hide gizmo in simulate

	Change 3432703 on 2017/05/10 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Removed unused selection lock feature

		Fixed selection working incorrectly with details panel closed

	Change 3434710 on 2017/05/11 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Selection improvements

		Multiselect in tree now only selects non-collapsed tree elements

		Selection API revamped in shared data, so multiselect of constraints can work correctly (they appear more than once in the tree, so the preivous single-point-of-access API was insufficent).

	Change 3489030 on 2017/06/14 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Merge-Thomas.Sarkanen

		Merging //UE4/Dev-AnimPhys to Dev-UEAP-29-PhATUpgrade (//Tasks/UE4/Dev-UEAP-29-PhATUpgrade) @ CL 3488994

	Change 3491459 on 2017/06/15 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixup post-merge issues

	Change 3491486 on 2017/06/15 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Simulation now works in a simlar way to the level editor

		Only on 'simulate' button, which controls repeating the last simulation (be it selected or not). Options are on a dropdown.

	Change 3491529 on 2017/06/15 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixed selection color of wireframe drawing (this broke ages ago!)
		Fixed initialized environment color/intensity

	Change 3491537 on 2017/06/15 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Tweaked materials so they dont repend on seperate translucency (which is optional, and disabled currently)

	Change 3491791 on 2017/06/15 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fix crash when simulating selected new bodies

		Make sure we recreate physics state appropriately (it used to be done on simulation start, so wasnt needed each time)

	Change 3494359 on 2017/06/16 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Select all is now a menu option

		Context menu pops when right-clicking nothing now too
		Menu no longer grows enormous when multiple types of objects are selected

	Change 3494373 on 2017/06/16 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Enlarged constraint rendering size
		Show constraints (rather than points) by default

	Change 3511708 on 2017/06/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Physics Assets now appear in the asset family shortcut bar

		Physics Assets now render thumbnails

		Skeleton tree can now work in 'picker' mode

		Constraints can now be created manually in the graph, tree and viewport

		Fixed double-click and mousewheel not working right sometimes

	Change 3513121 on 2017/06/28 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixed clicks incorrectly selecting bones in simulate mode

	Change 3513160 on 2017/06/28 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Physics Asset config is now loaded/saved

		Fixed antoher corner case with viewport clicks in sim

	Change 3513540 on 2017/06/28 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Moved body creation params over to a details panel & settings object

		Moved initial creation dialog over to use the new system too

	Change 3513591 on 2017/06/28 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Renamed shapes and constraints in the tree view

	Change 3513752 on 2017/06/28 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Constraints are now not filtered by default

	Change 3513797 on 2017/06/28 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Selecting constraints now shows them (and the bodies involved) in the graph

	Change 3513859 on 2017/06/28 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Removed "Show Kinematic Bodies"

		We now always show kinematic status in simulate mode

	Change 3515732 on 2017/06/29 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		PhAT rendering settings are now persisted across sessions.

		Access to sim/edit settings is now not gated on state of the editor. Sim/edit settings are always both available.

		Added editable opacity to collision rendering.

	Change 3515735 on 2017/06/29 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		New materials with opacity parameter

	Change 3515757 on 2017/06/29 by thomas.sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Re-saved materials

	Change 3515759 on 2017/06/29 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Added ability to only show selected bodies as solid

	Change 3515812 on 2017/06/29 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fix focus 'F' shortcut sometimes not working

	Change 3515984 on 2017/06/29 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fix a bunch of selection issues with the graph not keeping in sync

	Change 3517456 on 2017/06/30 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Merge-Thomas.Sarkanen

		Merging //UE4/Dev-AnimPhys to Dev-UEAP-29-PhATUpgrade (//Tasks/UE4/Dev-UEAP-29-PhATUpgrade) @ CL 3516853

	Change 3517514 on 2017/06/30 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixed disappearing convex meshes on simulate

		Also fixes crash in thumbnail rendering

	Change 3517556 on 2017/06/30 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Disabled selection on mesh. Fixes selection issues.

		Also made the hit proxy use a crosshair when over bodies, for easier selection

	Change 3517642 on 2017/06/30 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Added body/body collision buttons back to the main toolbar

		Fixed solid body drawing using the wrong material when no bodies are selected

	Change 3517828 on 2017/06/30 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fix delete shortcut not working when tree is focused

	Change 3517927 on 2017/06/30 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Integrated per-bone primitive generation with the new tab method

		Removed context menu item for bones (fixes duplicate popup)

		Fixed undo/redo not working for regenerating all bodies

	Change 3519931 on 2017/07/03 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Disabled body regeneration when simulation is running

		Fixed up tab icons

	Change 3519978 on 2017/07/03 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Preview mesh is now set like every other Persona editor (via toolbar picker of via preview scene settings)

		Animation picker removed from toolbar (we use the preview scene settings for this now)

		Fixed profiles tab icon

	Change 3519982 on 2017/07/03 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Show attached assets in tree

	Change 3519995 on 2017/07/03 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fix broken multi-selection of bone proxies

	Change 3532799 on 2017/07/12 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Removed code that prevented parts of the UI (like simulation) from working in PIE

		Removed graph overlays & added "PHYSICS" label

	Change 3532837 on 2017/07/12 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Removed arrows from graph

		Fixed dragging off constraints/input pins/bodies in constraint-created graphs

		Constraint names now include both bodies

	Change 3532880 on 2017/07/12 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Switched from colors to icons in the skeleton tree

		Removed bold fonts

	Change 3532907 on 2017/07/12 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Layout fixes

		Added border around generate button in tools panel

		Removed skeleton tree header in contexts where it is not needed

	Change 3532932 on 2017/07/12 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Added slow task dialog for body generation

	Change 3532992 on 2017/07/12 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Rearranged context menus to be not so huge

	Change 3533134 on 2017/07/12 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Rearranged menus some more

	Change 3533135 on 2017/07/12 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Colorized details customization of swing/twist items

	Change 3533174 on 2017/07/12 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Auto-open assets when creating from skeletal mesh

		Tweaked tooltip on suggestion from Nick D

	Change 3535652 on 2017/07/13 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixed mirroring changes not showing up straight away

	Change 3535731 on 2017/07/13 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Moved over to Persona-style floor adjustment

	Change 3539689 on 2017/07/17 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Tweaked tooltips for filtering items

	Change 3539693 on 2017/07/17 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Added "deselect all" option (Esc)

	Change 3539731 on 2017/07/17 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Graph selection tweaks

		Selected bodies in the viewport/tree are now also selected in the graph.
		Selection outline is now matched to the graph outline instead of using default outline.
		Pin allocation no longer happens twice

	Change 3539750 on 2017/07/17 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Switched simulate shortcut to Alt+Enter

		Avoids conflict with clobal PIS/SIE shortcuts

	Change 3539933 on 2017/07/17 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Minor body regeneration refactor

		Label for tools tab button is dynamic depending on selection context
		Generation setttings are now re-used by creation dialog too
		Added in per-bone and per-body regeneration menu items. Bone regeneration now deletes the old body(s) instead of aborting

	Change 3543884 on 2017/07/19 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Resetting animation to default now correctly applies the animation

	Change 3544101 on 2017/07/19 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixed up physics asset editor's use of debug skel mesh component

		This broke post-merge from Dev-AnimPhys.
		Kinda hacky, but we need to double-flip the buffers in this case as we want to force non-threaded work AND also wait on the physics tick group to complete (to blend in physics).
		This also requires making ShouldBlendPhysicsBones protected, otherwise the buffers are never flipped in the non=simulating case (before simulation is enabled in the physics asset editor).

	Change 3547893 on 2017/07/21 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Moved code to add/remove/assign/unassign profiles to details customization

		Also allowed dupication again (via the menu)
		Allows correct naming of new profiles as before (as this is handled in PostEdit)

		#jira UE-47448 - Deleting profiles in Physics Asset Editor does not update the current profile
		#jira UE-47514 - Unable to duplicate profiles in Physics Asset Editor
		#jira UE-47384 - New profiles in Physics Asset Editor are all named the same
		#jira UE-47375 - Physics Asset Editor 'None' current profile Delete option is available
		#jira UE-47378 - Current Profile name boxes in Physics Asset Editor are size limited and overlap buttons if too long
		#jira UE-47374 - Physics Asset Editor 'None' current profile text box is editable but doesn't save

	Change 3547925 on 2017/07/21 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Prevented ctrl+selection of constraints from re-selecting

		Avoided defered broadcast of seleciton event from the graph

		#jira UE-47515 - Ctrl + click and Shift + click does not remove constraints from skeleton tree in Physics Asset Editor

	Change 3550332 on 2017/07/24 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixed bodies incorrectly simulating outside of 'simulate' mode

		Forced all bodies to be non-simulated when simulation is disabled.

		Also removed non-functioning motor menu options & disabled more menu options when simulating

		#jira UE-47579 - Entire mesh rotates uncontrollably after rotating a simulated body in Physics Asset Editor

	Change 3550355 on 2017/07/24 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixed crash when failing to create a physics asset with multi convex hull

		#jira UE-47590 - Crash when New Physics Asset window is closed with no asset being created

	Change 3558007 on 2017/07/27 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixed typo that disabled editability of profile names incorrectly

		#jira UE-47374 - Physics Asset Editor 'None' current profile text box is editable but doesn't save

	Change 3566157 on 2017/08/01 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixed crash when opening a physics asset with a deleted preview skeletal mesh

		Now assigns default mesh as before

		If the mesh is then reset, the asset editor must be re-opened as the skeleton will have changed underneath it.

		#jira UE-47918 - Crash when opening certain Physics Assets

	Change 3568327 on 2017/08/02 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Prevent "set bodies below" from improperly enabling simulation on bodies

		#jira UE-47752 - Set all bodies below to simulated causes the viewport to simulate those bodies immediately in Physics Asset Editor

	Change 3570436 on 2017/08/03 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Physics assets with simulated bodies no longer simulate when first opened

		#jira UE-48000 - Physics assets with simulated bodies begin simulating when first opened

	Change 3570470 on 2017/08/03 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fix excessive gravity crash when actors pop out of the world

		Also restrict gravity to non NaN-causing levels.

		#jira UE-48002 - Crash when mesh falls out of world due to high gravity simulation in Physics Asset Editor

	Change 3570717 on 2017/08/03 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Merge-Thomas.Sarkanen

		Merging //UE4/Dev-AnimPhys to Dev-UEAP-29-PhATUpgrade (//Tasks/UE4/Dev-UEAP-29-PhATUpgrade) @ CL 3570581

	Change 3570781 on 2017/08/03 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fix merge issues

	Change 3587760 on 2017/08/15 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Removed delegate for skeleton tree context menu extension, now uses an empty section

	Change 3589915 on 2017/08/16 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Added comments to bone proxy & physics asset editor shared data

		Removed unused variables

	Change 3589976 on 2017/08/16 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixed constraint 'all positions' rendering

		Removed empty override of unregister tab spawners

	Change 3589983 on 2017/08/16 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fix crash when setting skeletal mesh

		Toast is not displayed when the skeleton is changed as well as the skeletal mesh.
		Toolkit was getting invalidated as setting the preview mesh to a different skeleton ends up restarting the sub-editor

		#jira UE-48196 - Crash when changing preview mesh of Physics Asset and applying

	Change 3589990 on 2017/08/16 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Physics asset selection color now uses editor settings

	Change 3589994 on 2017/08/16 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Removed unused functions

	Change 3589997 on 2017/08/16 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Commented SetBodiesBelowPhysicsType as per code review

	Change 3590007 on 2017/08/16 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Disabled physical material menu in simulate

	Change 3590130 on 2017/08/16 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Removed unused code

		Commented a few functions

		Re-instated preview mesh selection

		Removed delegate allowing viewport client class creation

	Change 3590154 on 2017/08/16 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Remove unused code

	Change 3590197 on 2017/08/16 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Merge-Thomas.Sarkanen

		Merging //UE4/Dev-AnimPhys to Dev-UEAP-29-PhATUpgrade (//Tasks/UE4/Dev-UEAP-29-PhATUpgrade) @ CL 3589965

	Change 3590250 on 2017/08/16 by Thomas.Sarkanen@Dev-UEAP-29-PhATUpgrade-Thomas.Sarkanen

		Fixup merge errors

Change 3596227 by Jonathan.Poncelet

	Fixed physics substepping interpolation using the wrong starting value.

	#jira UE-48150 Physics Substepping doesn't have the same effect from 4.15 to 4.16

Change 3596241 by Jonathan.Poncelet

	Fixed cloth not being drawn correctly in the editor, due to bounds not being computed accurately.

	#jira UE-48243 Clothing disappears during cloth paint mode once you navigate to a section far from the origin

Change 3596247 by Thomas.Sarkanen

	Fixup CIS errors post PhAT Upgrade merge

Change 3596250 by Thomas.Sarkanen

	More CIS fixes

Change 3596255 by Benn.Gallagher

	Fixed compilation errors when nativizing animation blueprints that use subinstances

	#jira UE-46522

Change 3596256 by Benn.Gallagher

	Fixed orphaned sub anim instance pins hanging around
	#jira UE-46545

Change 3596257 by Benn.Gallagher

	Fixed skel surf particles being misplaced when clothing was active. And fixed particles spawning on disabled cloth proxy sections.

	#jira UE-48045

Change 3596258 by Benn.Gallagher

	Hide mass override when selecting skeletal meshes. Mass overrides are taken from physics asset and will be ignored on the component so it makes no sense to have this visible

	#jira UE-47755

Change 3596259 by Benn.Gallagher

	Fixed mismatch between paint values and view values for clothing tools

	#jira UE-48110

Change 3596260 by Benn.Gallagher

	Stopped property context menus killing the whole window stack when an item is clicked
	#jira UE-48158

Change 3596261 by Thomas.Sarkanen

	One last Mac CIS fix (hopefully)

Change 3596308 by Benn.Gallagher

	Removed outdated references to APEX in clothing example map.

Change 3596360 by Martin.Wilson

	Fixing inconsistent animation entries in blueprint context menu (displaying differently depending on whether the asset is loaded) + Cache correct tooltip when asset isn't loaded

	#jira UE-48452

Change 3596459 by Benn.Gallagher

	Fixed anim curves not correctly being updated to post process instances. Change made to curve update in Dev-General fixed main and sub instances but missed post process instances.

	#jira UE-47567

Change 3596967 by Aaron.McLeran

	Adding setting default reverb send level in audio settings.

Change 3596974 by Ethan.Geller

	Merge in fix from Christopher Oliver

Change 3597243 by Aaron.McLeran

	Checking in missing files.

Change 3597686 by Ethan.Geller

	Fix warnings/errors from CL 3597452

Change 3597846 by Ethan.Geller

	Fix errors, take 2

Change 3598290 by Ethan.Geller

	Panning Angle Issue

Change 3598412 by Ethan.Geller

	Change Core.h header to CoreMinimal.h, fix warnings

Change 3599797 by Jurre.deBaare

	LODs from Merge Actor tool have bad normals
	#jira UE-47129
	#fix normals weren't wrong but user was complaining about the lightmap resolution behaviour, so added a new feature that calculates the lightmap resolution according to:
		1) Summing all lightmap pixel counts for each mesh component being merged
		2) Calculating fitting texture dimension by taking square root of the total pixels

Change 3599863 by Lina.Halper

	PR #3919: rename flag 'DEPERCATED_PHYSBLEND_UPDATES_PHYSX' to 'DEPRECATED_PHYSBLEND_UPDATES_PHYSX' to fix the typo (Contributed by aziot)


Change 3599883 by Jurre.deBaare

	HLOD: update outliner tooltip when UE docs arrive

	#jira UE-20352

Change 3599944 by Martin.Wilson

	Smart name refactor
	- Remove guids entirely
	- Remove automatic fix up
	- Simplify smart name mapping container
	- Make animations deterministic for cooking

	#jira UEAP-264

Change 3600133 by Benn.Gallagher

	Fixed crash shutting down editor with active cloth paint tab, as mode manager was being used unsafely.
	#jira UE-48612

Change 3600166 by Benn.Gallagher

	Fixed cloth paint gradient allowing invalid values

	#jira UE-48114

Change 3600719 by Lina.Halper

	PR #3894: PlayMontage node bug Fix (Contributed by ArCorvus)


Change 3601668 by Jurre.deBaare

	Improve BlendSpace preview pin dragging controls
	#fix Click and drag now also works for the preview pin which should allign it with other pins on the grid and makes the preview functionality more discoverable
	#misc Also added tooltips on the grid to make the functionality more discoverable
	#jira UE-43011

Change 3601669 by Jurre.deBaare

	No easy way to tell which Blend Sample in the blend graph matches up to which Blend Sample in the Asset Details panel
	#fix I've added the SampleIndex to the names to make it easier recognizing which one is which
	#jira UE-46892

Change 3601731 by Benn.Gallagher

	Fixed cloth paint falloff to actually calculate falloff, and take brush strength into account.

	#jira UE-48329

Change 3601897 by Lina.Halper

	fixing issue with sequencer reinitialization

	#jira: UE-48556

Change 3602339 by Benn.Gallagher

	Fixed comment/tooltip typo

Change 3602502 by Benn.Gallagher

	Fixed clothing gradient tool renderer not showing selected points when camera was moving
	#jira UE-48331

Change 3602664 by Ethan.Geller

	Unshelved fixes from Dev-VR

Change 3602726 by Lina.Halper

	Back out revision 3 from //UE4/Dev-AnimPhys/QAGame/QAGame.uproject

	#jira: UE-48700

Change 3603011 by Lina.Halper

	Fix build error

Change 3604139 by Benn.Gallagher

	Restricted painter processing to no longer attempt painting while in simulation previews in cloth paint mode.

	#jira UE-47960

Change 3604284 by Benn.Gallagher

	Fixed crashes in physics asset editor and skeletal mesh editor when the preview scene clears out the preview mesh while clothing is running

	#jira UE-48687

Change 3604612 by Lina.Halper

	Fix curve issue from automation test
	- It was actual bug.

Change 3604614 by Lina.Halper

	- Fix crash with macro anim notify
	- Make sure macro anim notify doesn't show up in the menu

	#jira: UE-45036

Change 3604725 by Lina.Halper

	fixed issue with opening state machine from anim graph
	#jira: UE-48726

Change 3604971 by Aaron.McLeran

	#jira UE-48738 Launching Oculus Rift without -VR plays audio in the oculus rift.

	Bringing fix from 4.17 to Dev-AnimPhys

Change 3605787 by Aaron.McLeran

	Adding ability to pass in an optional owner in PlaySound2D and PlaySoundAtLocation BP calls

	- This is necessary in order to use the sound concurrency "limit by owner" feature

Change 3606851 by Jurre.deBaare

	UE4Editor Static Analysis Win64 - Warning fix

Change 3607022 by Lina.Halper

	Fix static analysis warning

Change 3607229 by Jurre.deBaare

	RemoveAllCurveData should not allow removing data from the Skeleton
	#jira UE-48107

Change 3607660 by Martin.Wilson

	Live link client can run in cooked builds too

	#jira UEAP-306

Change 3607668 by Ethan.Geller

	#jira UE-48792 fix null dereference case in audiodevice.cpp

Change 3607734 by Lina.Halper

	LOD linking to curve
	- consolidated to one param - curve eval option
	- for long time, looking at why morphtarget wasn't working on LOD 1, later realized it was due to simplified :(
	- fixed to make sure param to clear is always checking with default value - this is correct behavior and it's not too bad for perf because internally the default value is also in the TMap
	- flipped meaning to align with bAllowCurveEvaluation
	- also fixed issue with orion cooking - where transform curves are added as normal curves

	#jira:  UE-37996, UE-48782

Change 3607859 by Martin.Wilson

	Missed files from live link editor checkin

Change 3607958 by Martin.Wilson

	Redo Jurre's changes from CL 3607229 (were removed by CL 3607734)

Change 3608566 by Ethan.Geller

	change include to avoid header conflicts on Linux

Change 3609074 by Ethan.Geller

	Take 2: Fix capitalization on include, fix Linux build.

Change 3610024 by Lina.Halper

	Fix issue with material editor crashing due to missing load module of AdvancedPreviewScene

	- we used to load advanced preview setting by persona module
	- this has been moved to persona tool kit, and now all other modules are crashing
	- If we want to do it for tool kit, we have to make sure all other editor's loading should change also.

	#jira: UE-48809

Change 3610081 by Jurre.deBaare

	Animations can't be set on blend samples from the dropdown
	#fix Skeleton asset registry tag now includes 'AssetTypeName' PathToAsset, so replacing compare with contains
	#jira UE-48746

Change 3610088 by Jurre.deBaare

	Editor crashes if you CtrlZ several times after adding animations to a 1D blendspace
	#fix removed the hacky OnObjectPropertyChanged and tied the refresh into propertyhandles instead
	#misc found out of sync widget values due to incorrect encapsulation inside of lambdas
	#jira UE-48741

Change 3610862 by Ethan.Geller

	Fix submix effects for situations where number of input channels does not equal output channels

Change 3611346 by Aaron.McLeran

	Using audio thread platform affinity mask for audio render thread.

Change 3613297 by Ethan.Geller

	Simple delay submix

Change 3614435 by Martin.Wilson

	CIS fix

Change 3614482 by Martin.Wilson

	Store root motion on anim instance instead of proxy to avoid thread safety stalls

	#jira UE-46896

Change 3614483 by Martin.Wilson

	Evaluate curves in anim offsets

	#jira UE-47119

Change 3614495 by Jurre.deBaare

	Reimport alembic file with new source option does not automatically tick any tracks
	#fix If no tracks are set to import, reset them all to do so (we're assuming here the user is importing something completely different, and we wouldn't want her to import an empty animation either)
	#jira UE-46141

Change 3614645 by Thomas.Sarkanen

	Fixed physics assets not simulating when BlockAll was globally overridden

	Persona viewport was overriding the collision profile back to BlockAll, which projects can override. Setting to the internal PhysicsActor profile prevents this, as it used to in PhAT

	#jira UE-48591 - Physics assets not simulating correctly in Orion

Change 3614683 by Lina.Halper

	Fixed crash when modifying default physicsasset

	#jira: UE-48844

Change 3614721 by Jurre.deBaare

	Vertex painting on skeletal meshes bound by physics asset
	#fix Now try and find intersecting triangle if we do hit the mesh bounds, but not any physics bodies
	#jira UE-48004

Change 3614730 by Thomas.Sarkanen

	Fixed crash when regenerating multi convex hulls from zero-vert bones

	We handled this in the single convex hull case, but multi did not.

	#jira UE-48780 - Editor crashes if you regenerate a box body to a complex hull body

Change 3614763 by Jurre.deBaare

	Moving over:
	HLOD crash when dragging and dropping actors into their own cluster in the HLOD outliner - ALODActor
	#jira UE-48249
	#fix ensure that we nullptr check the static mesh as a LODActor can be reset to have a null static mesh

Change 3615029 by Lina.Halper

	Fix issue with highlight
	#jira: UE-48855

Change 3617593 by Thomas.Sarkanen

	Fixed crash when regenerating large amounts of bodies

	We were overflowing the PhysX shape limit for aggregates - this refers to shapes, not bodies, it seems

	#jira UE-48606 - Crash when adding new multi convex hull body to bone on skeleton that already has multi convex hull bodies

Change 3617609 by Jonathan.Poncelet

	Fixed crash that could occur when opening a physics asset and deleting bones.

	#jira UE-48971 Editor crashes if you clear a preview mesh on a physics asset and delete the bones when reopening it

Change 3617723 by Thomas.Sarkanen

	Prevented actors & components of anim preview scenes (and the preview scenes themselves) from persisting after editors are shut down

	Fixed up 2 locations where the persona toolkit was being held onto by a strong ptr (cloth paint and new PhAT). This should stop the preview scene from persisting.
	Moved AddToRoot pattern used for anim preview scene to FGCObject

	#jira UE-47227 - [CrashReport] UE4Editor_Persona!TSharedPtr<IEditableSkeleton,0>::ToSharedRef() [sharedpointer.h:794]
	#jira UE-47717 - SkelMesh Editor creates preview World, but it never gets destroyed

Change 3617818 by Benn.Gallagher

	Final v1 UX changes for clothing tool, and removed experimental flag

Change 3617937 by Jurre.deBaare

	Default bounds for Alembic skel-mesh are too large
	#fix bounds was initialised to zero and +-ed which meant that it would always include (0,0,0) and enlarge the bounds
	#jira UE-47139

Change 3618187 by Ethan.Geller

	Implement Audiomixer in HTML5

Change 3618188 by Lina.Halper

	Fix issue with highlight in persona

	#jira: UE-49020

Change 3618229 by Lina.Halper

	Fix crash on exit when modify is causing it to serialize again in the middle of tear down

	#jira: UE-48025

Change 3618248 by Lina.Halper

	fix issue by workaround where clamp is not happening with allowspin is false

	#jira: UE-47001

Change 3618289 by Aaron.McLeran

	Removing audio format types we're not using for simplicity

Change 3618291 by Martin.Wilson

	Fix duplicate of curve name appearing in list when renaming

	#jira UE-49041

Change 3618390 by Aaron.McLeran

	Removing a case for DTYPE_Xenon since this is never used.

Change 3618425 by Martin.Wilson

	Keep notify UI up to data across multiple editors when adding notifies to an animation

	#jira UE-48104

Change 3619023 by Aaron.McLeran

	Removing DTYPE_Xenon from XAudio2Buffer.cpp since it's not used

Change 3619129 by Aaron.McLeran

	Source bus feature.

	- New architectural feature for audio mixer that allows audio sources to route to other audio sources.
	- Buses can be routed to each other
	- Buses have a duration which can be set in bus asset
	- Buses can choose between mono and stereo channels
	- Sources can send to buses and also toggle to *only* output to buses (and bypass submixing)
	- Will allow persistent source effects on different source audio, while also maintaining 3d spatialization capabilities. Lots of future features will build on this change: 3d audio-volume-based submixing, sidechaining, environment reflections, diagetic microphones, etc.

	- Some engine changes and optimizations:
	  - Format conversion to float is done in async workers for decode vs the render callback
	  - Procedural sound waves can opt to output only float vs int16 PCM data (avoids a format conversion in audio mixer)
	- Apply master attenuation at the final output vs per-source
	- Fixed code that performs fade in/fade out for smooth startup and shutdown.
	- Moved FSourceParam to FParam into DSP utility so others can use it.
	 - Some engine fixes:
	    - Audio spat plugins that are external sends will not send audio to default/base submix. But will also allow their audio to be panned and sent to submix sends (e.g. reverb) so external HRTF rendering can also get reverb effects, etc.
	  - Fixed an issue with pause
	  - Fixed an issue with the final source buffer in a source voice not getting properly rendered and causing discontinuties
	- Fixed an issue with WorldID not getting set for listeners

	TODO:
	 - fill out source bus details panel customization to hide USoundBase params which aren't relevant to source buses

Change 3619159 by Ethan.Geller

	#jira UE-48950 fix steam audio crash on editor exit

Change 3619555 by Jonathan.Poncelet

	Fixed constraint debug drawing arrows in the physics asset editor being too large.

	#jira UE-48863 Limited constraints and free constraints are much larger on screen

Change 3619574 by Thomas.Sarkanen

	Fixed debug link for animation blueprints not persisting when changing preview mesh

	Anim instance is no longer re-created all the time when setting skeletal mesh, so we need to re-init the preview instance and re-set the linked skeletal mesh component manually when the mesh changes.

	#jira UE-46642 - Switching Preview mesh when you've selected an AnimBP breaks the link between the AnimBP and PIE session

Change 3619586 by Thomas.Sarkanen

	Fixed physics asset shortcut not working correctly in certain circumstances

	FBox was using uninitialized memory

	#jira UE-49034 - Pressing F to focus on a physics body focuses on the area in between the root and the physics body and not the selected body

Change 3619640 by Thomas.Sarkanen

	Assets with no preview mesh now no longer allow access to other skeleton's physics assets in their shortcut bars

	Unified the skeleton/mesh search code between FPersonaAssetFamily and FPersonaToolkit, so they bot *look* for a compatible skeletal mesh if one was not found on the asset (but still dont set it automatically).

	#jira UE-49038 - If you open a skeleton or an animation it won't open persona with the correct physics asset in the quick switch bar

Change 3619644 by James.Golding

	Change FBodyInstance::InstanceBodyIndex back to int32 (need to support ISMC with many instances)
	#jira UE-47652

Change 3619654 by Martin.Wilson

	Fix removing a curve when it isn't used on any animations

	#jira UE-49048

Change 3619771 by Thomas.Sarkanen

	Make sure the physics asset editor floor has collision, regardless of what BlockAll does

	#jira UE-49088 - PhysicsAsset Editor Floor should not depend on BlockAll config

Change 3619803 by Jonathan.Poncelet

	Fixed localization warnings caused by duplicate keys.

	#jira UE-48580 //UE4/Main: Step "Build Engine Localization" has completed with 4 Warnings

Change 3619813 by Jurre.deBaare

	Baked bones using a pose animation are rotated in the wrong direction
	#fix root bone transform wasn't being taken into account while generating final bone transforms
	#misc added debug logging for future work
	#jira UE-47362

Change 3619830 by Jurre.deBaare

	Biased Texture Size option is not functioning when Merging Actors
	#fix Fixed up material baking setup after refactoring, now sets correct texture sizes again according to texture sizing type, this will be removed in the long term anyhow
	#misc Found a bug in material rendering  if previous render size < current render size it would not set the viewport size/projection matrix correctly which broke the material bake
	#jira UE-48108

Change 3619859 by Thomas.Sarkanen

	Fixed HLOD selection sphere persisting on undo/redo

	Removed HLOD selection actors when the outliner is refreshed

	#jira UE-47032 - HLOD Cluster radius sphere remains in level if you move an actor in a cluster and then undo the movement.

Change 3619871 by Martin.Wilson

	Calculate root motion over the correct segment times, not the track times

	#jira UE-43719

Change 3619898 by Thomas.Sarkanen

	Improve UI feedback around bounds/in-game bounds in animation editor viewports

	Tooltip for in-game bounds is now more detailed
	In-game bounds cannot be selected if bounds is not also selected

	#jira UE-47958 - Bound vs In-game Bound in Viewport Show menu in Physics Asset Editor is confusing

Change 3619908 by Thomas.Sarkanen

	Fixed tooltip for PhysicsType

	#jira UE-48421 - Incorrect tooltip for Physics Type

Change 3620014 by Jurre.deBaare

	Only the first mesh bake material property in the array can be set to diffuse, diffuse cannot be selected on the other array elements
	#fix Changed the way the restriction is setup and retrieve the UMaterialOptions from the details view instead of GetDefault<>
	#misc Also added more delegates to ensure the restriction is up to date
	#jira UE-46980

Change 3620104 by Jurre.deBaare

	HLOD doesn't support renaming in levels
	#fix ensure that during renaming of UWorld we also rename the HLOD assets into their respective new HLOD package outer
	#jira UE-48072

Change 3620151 by Thomas.Sarkanen

	Undo/redo now correctly affects animation preview scene settings

	Preview scene desc is now transactional & state is correctly set up on undo/redo according to the current preview scene desc

	#jira UE-47816 - Undoing setting the animation mode to Refrence pose doesn't update the UI

Change 3620152 by Thomas.Sarkanen

	Exposed LOD menu in PhAT

	This allows auto LOD to be optionaly selected. It was hidden and we forced to LOD 0 before. We still default to forcing LOD 0 to preserve the old behavior.

	#jira UE-47970 - LODs not working in Physics Asset Editor

Change 3620177 by Benn.Gallagher

	PR #3696: Fix for USkinnedMeshComponent::GetCPUSkinnedVertices() (Contributed by Koderz)


Change 3620250 by Jurre.deBaare

	HLOD assets left in HLOD folder when clusters are deleted
	#fix some added lifetime management for HLOD assets, keeping list of 'stale' HLOD assets which if not Undo-ed will either be deleted when LODActor is saved, or marked PendingKill when LODActor is destroyed
	#jira UE-47450

Change 3620273 by James.Golding

	PR #3908: Removing duplicated forward declation (Contributed by celsodantas)
	#jira UE-48530

Change 3620274 by James.Golding

	PR #3909: Removing unnecessary conditional (Contributed by celsodantas)
	#jira UE-48531

Change 3620275 by James.Golding

	Add icon for destruction plugin

Change 3620401 by Ethan.Geller

	#jira UE-47684 Remove SDL dependencies from Win64

Change 3620586 by Jurre.deBaare

	Linux CIS fix

Change 3620660 by Martin.Wilson

	Fixes for state machines getting reinitialized in situations that users don't want them to.
	-Added option to state machine to allow it to skip reinitialization when it becomes relevant
	-Added option to slot nodes to keep source pose relevant while montage slot is playing.

	#jira UE-43578

Change 3620665 by Aaron.McLeran

	Making source buses only show relevant source bus data.

	- hiding sound wave categories that aren't relevant to source buses

Change 3621087 by Ethan.Geller

	#jira UE-49000 implement device change listener to ensure we are properly handling when audio is disabled.

Change 3621144 by Aaron.McLeran

	#jira UE-49147
	#jira UE-49145

	 Fixing concurrency and volume stats

Change 3621148 by Aaron.McLeran

	Fixing typo

Change 3621180 by Ethan.Geller

	#jira UE-49151 Fix for browser preview on bus only sounds

Change 3621421 by Ethan.Geller

	#jira UE-49165 Fix real time audio slider.

Change 3621604 by Ethan.Geller

	#jira UE-44847 fix iOS panning algorithm on non-audio mixer

Change 3621626 by Lina.Halper

	Fix issue with anim montage displaying when selecting animation

	#jira: UE-48749

Change 3621813 by Thomas.Sarkanen

	Fixing undo/redo of bone modifications in Physics Asset Editor (and others)

	Bone proxy objects now get recycled (instead of the pool constantly growing) as their names are stable and unique.
	Fixed broken skeleton tree RTTI (so selection persistance now works correctly on undo/redo again)
	We no longer force a re-selection on phyiscs asset changes (the tree takes care of that anyway).

	#jira UE-47862 - Undoing Bone transformations in Physics Asset Editor does not work

Change 3621831 by Jurre.deBaare

	Crash fix for Material baking when trying to analyse a MP_MAX material property
	#jira UE-49172

Change 3621936 by Thomas.Sarkanen

	Fixed CIS error from merge

Change 3621937 by Thomas.Sarkanen

	Fix merge issue with API change in USynthComponent

Change 3622173 by Thomas.Sarkanen

	Fixed ortho viewports being bright white in sub-editors

	Preview scenes in general are responsible by default for the background color.
	Advanced preview scenes now use background color from settings. Previously only te animation editors did this.

	#jira UE-48841 - The background of the orthographic viewports is bright white

Change 3622730 by Ethan.Geller

	#jira UE-49182 UE-49198 UE-49201 Fix for channel mismatch in procedural sound waves, remove singleton behavior for MMNotificationClient. CL by Aaron.McLeran

Change 3622759 by Ethan.Geller

	#jira 49170 reduce static analysis warnings for audiodevice.cpp

Change 3622901 by Benn.Gallagher

	Bumped PhysX DDC key after change in Orion caused verify failures

Change 3623458 by Aaron.McLeran

	#jira UE-49204 Delores monologue cut short in Odin elevator

Change 3623667 by Aaron.McLeran

	#jira UE-49204 UE-49243 Delores monologue cut short in Odin elevator

Change 3623752 by Aaron.McLeran

	#jira UE-49247 Sound Source Bus Properties Are Inappropriate

	Fixing issues with new source bus uobject so properties show up appropriately.

Change 3624058 by Ben.Marsh

	Fix stale module being enumerated when running UE4Editor-Cmd.exe, causing warning when running incremental automated tests.

	Module and version manifest filenames are derived from the executable filename, so when running the executable compiled for the console subsystem, we need to strip the -Cmd suffix from the executable name to find the correct path.

Change 3624193 by Ethan.Geller

	#jira UE-49170 Static analysis fix, take 2

Change 3354003 by Thomas.Sarkanen

	Back out changelist 3353914

Change 3355932 by Thomas.Sarkanen

	Back out changelist 3354003

	Reinstating merge from Main:

	Merging //UE4/Dev-Main to Dev-AnimPhys (//UE4/Dev-AnimPhys) @ CL 3353839

Change 3477632 by Jurre.deBaare

	Automated test content and ground truths for Actor Merging and Material baking functionality

Change 3491464 by Jurre.deBaare

	Updated automation content for MergeActor behaviour

Change 3587878 by Thomas.Sarkanen

	Merging //UE4/Dev-Main to Dev-AnimPhys (//UE4/Dev-AnimPhys) @  CL 3587489

Change 3597452 by Ethan.Geller

	#jira UEAP-304, UEAP-280, UEAP-281: Major structural refactor of Audio Plugin interfaces, Oculus Audio plugin, Steam Audio Plugin. Introduction of Sony Audio3D plugin.

Change 3602935 by Lina.Halper

	Allow curve evaluation to be controlled by users

	#jira: UE-46446

Change 3606120 by Ethan.Geller

	Move Tap Delay Submix to Synthesis library, modify tap delay API

Change 3621830 by Thomas.Sarkanen

	Merging //UE4/Dev-Main to Dev-AnimPhys (//UE4/Dev-AnimPhys) @ CL 3621691

Change 3622807 by Ethan.Geller

	#jira UE-49201 Fixing volume issues

	Issue is that these platforms weren't using the proper public function and an audio mixer refactor changed how volume is calculated to seperate out distance attenuation vs other volume gains.

[CL 3624383 by Thomas Sarkanen in Main branch]
2017-09-04 04:17:46 -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
Marc Audy
eaccf4135c Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3582324)
#lockdown Nick.Penwarden
#rb none
#rnx

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

Change 3431439 by Marc.Audy

	Editor only subobjects shouldn't exist in PIE world
	#jira UE-43186

Change 3457323 by Marc.Audy

	Undo CL# 3431439 and once again allow (incorrectly) for editor only objects to exist in a PIE world

	#jira UE-45087

Change 3499927 by Dan.Oconnor

	UField::Serialize no longer serialize's its next ptr,  UStruct::Serialize serializes all Children properties instead. This resolves a hard circular dependency between function libraries that EDL detected. It was resolved in an ad hoc way by the old linker

	#jira UE-43458

Change 3502939 by Michael.Noland

	Back out changelist 3499927

Change 3522783 by Zak.Middleton

	#ue4 - Imported new simple collision for Engine/Content/BasicShaps/Cylinder.uasset which is a single convex shape (rather than being 4 shapes as before).

Change 3544641 by Dan.Oconnor

	Remove conditional that is no longer needed, replace with ensure. It is unsafe to change CDO names

	#jira OR-38176

Change 3544645 by Dan.Oconnor

	In addition to marking nodes as not transient, FBlueprintEditor::ExpandNode needs to mark them as transactional
	#jira UE-45248

Change 3545023 by Marc.Audy

	Properly encapsulate FPinDeletionQueue
	Fix ensure during deletion of split pins when not clearing links
	Fix split pins able to end up in delete queue twice during undo/redo

Change 3545025 by Marc.Audy

	Properly allow changing the pin type from a struct that is split on the node
	#jira UE-47328

Change 3545455 by Ben.Zeigler

	Fix issue where combined streamable handles could be freed before their complete callback is called if nothing external referenced them
	Copy of CL#3544474

Change 3545456 by Ben.Zeigler

	Allow PrimaryAssets to update their AssetData based on in-memory changes when launching 'Standalone Game' and 'Mobile Preview' from the editor. As it was, changes could be detected and propagated through UPrimaryDataAsset::PostLoad, but the changes would always reapply whatever already exists in the AssetRegistry. The primary use-case for this: making AssetBundle tag changes and allowing them to propagate without resaving/recooking all affected assets.
	Copy of CL #3544374

Change 3545547 by Ben.Zeigler

	CIS Fix

Change 3545568 by Michael.Noland

	PR #3758: Fixing a comment typo from Transistion to Transition (Contributed by gsfreema)

	#jira UE-46845

Change 3545582 by Michael.Noland

	Blueprints: Prevent duplicate messages from being added to the compiler results log (fixes a crash when resizing the results log while a math expression node has an error)
	Blueprints: Fixed the tooltip of math expression nodes not showing up, and error messages getting cleared on subsequent compiles
	[Duplicating fixes for UE-47491 and UE-47512 from 4.17 to Dev-Framework]

Change 3546528 by Ben.Zeigler

	#jira UE-47548
	Fix crash when a map's key type has changed but value has not, it was passing the UStruct defaults in when serialize was expecting the default instance, so pass null instead as we don't have the instance

Change 3546544 by Marc.Audy

	Fix split pin restoration logic to deal with wildcards and variations in const/refness

Change 3546551 by Marc.Audy

	Don't crash if the struct type is missing for whatever reason

Change 3547152 by Marc.Audy

	Fix array exporting so you don't end up getting none instead of defaults
	#jira UE-47320

Change 3547438 by Marc.Audy

	Fix split pins on class defaults
	Don't cause a structural change when reapplying a split pin as part of node reconstruction
	#jira UE-46935

Change 3547501 by Ben.Zeigler

	Fix ensure, it's valid to pass a null path for a dynamic asset

Change 3551185 by Ben.Zeigler

	#jira UE-42835 Fix it so SoftObjectPaths work correctly when inside levels loaded for the first time from PIE. Added code to do in-place PIE fixup for levels that are loaded instead of duplicated, and changed the fixup logic to fix all level references, not just ones being explicitly duplicated

Change 3551723 by Ben.Zeigler

	Improve UI for displaying actor soft references. Add an error/warning icon if the cross level reference is broken or unloaded, and fix various display and copy/paste behaviors

Change 3553216 by Phillip.Kavan

	#jira UE-39303, UE-46268, UE-47519
	- Nativized UDS now support external asset dependencies and will construct their own linker import tables on load.

	Change summary:
	- Modified FCompactBlueprintDependencyData and FFakeImportTableHelper to be more relevant to UStruct and not just UClass-derivative types.
	- Modified FBlueprintDependencyData to accept a single FCompactBlueprintDependencyData struct rather than its individual fields.
	- Modified FBlueprintCompilerCppBackendBase::GenerateCodeFromStruct() to emit dependency assignment and static type registration functions for nativized UStruct types.
	- Modified FBlueprintNativeCodeGenModule::FStatePerPlatform to include an array for tracking UDS assets that need to be converted during the nativization pass at cook time.
	- Modified FBlueprintNativeCodeGenModule::GenerateFullyConvertedClasses() to generate nativized code for UDS assets. This ensures that UDS conversion falls under the same scope as BPGC conversion, so that they both feed into the same NativizationSummary context for asset dependency tracking (i.e. since we only have a single global dependency table in the codegen). Also modified InitializeForRerunDebugOnly() to do the same.
	- Modified FBlueprintNativeCodeGenModule::Convert() to defer UDS conversion so that it's done at the same time as BPGC conversion (see note above).
	- Modified FEmitDefaultValueHelper::AddStaticFunctionsForDependencies() to include support for UStruct types and to conform to changes made to FCompactBlueprintDependencyData.
	- Modified FEmitDefaultValueHelper::AddRegisterHelper() to include support for UStruct types.
	- Modified FBlueprintNativeCodeGenModule::FindReplacedClassForObject() to ensure that converted User-Defined Enum types are switched to a UEnumProperty at package save time so that any import tables contain the proper class. This is necessary because we nativize User-Defined Enum types as 'enum class' types, and UHT will generate code for those as a UEnumProperty with an "underlying" property. However, non-nativized User-Defined Enum types are referenced as a UByteProperty with a UEnum reference, so we have to fix up all the import tables before saving. Otherwise, EDL will assert on load (see UE-47519).

Change 3553301 by Ben.Zeigler

	Fix ensure when passing literal None to SoftObjectPath, it now treats them as empty instead

Change 3553631 by Dan.Oconnor

	UField::Serialize no longer serialize's its next ptr,  UStruct::Serialize serializes all Children properties instead. This resolves a hard circular dependency between function libraries that EDL detected. It was resolved in an ad hoc way by the old linker. This change was originally submitted in 3499927, but it was incorrectly clearing the UField::Next pointer in UField::Serialize.

	#jira UE-43458

Change 3553799 by Ben.Zeigler

	Fix issue where calling WaitUntilComplete on a combined handle with Stalled children wouldn't work properly. It now forces all stalled children to start immediately. I also added a warning log when this happens and an ensure if somehow the force didn't work
	Copy of CL #3553781

Change 3553896 by Michael.Noland

	Blueprints: Allow the autowiring logic to better break and replace existing connections when made (e.g., when dragging a variable onto a compatible pin with an existing connection, break the old connection to allow the new connection to be made)
	#jira UE-31031

Change 3553897 by Michael.Noland

	Blueprints: Adjust search query when doing 'Find References' on variables from My Blueprints so that bound event nodes show up for components and widgets
	#jira UE-37862

Change 3553898 by Michael.Noland

	Blueprints: Add the name of the variable directly in the get/set menu options (when dragging from My Blueprints into the graph)

Change 3553909 by Michael.Noland

	Blueprints: Added the full name of the type, container type (and value type for maps) to the tooltips for the type picker elements, so long names can be read in full
	#jira UE-19710

Change 3554517 by Michael.Noland

	Blueprints: Added an option to disable the comment bubble on comment boxes that appears when zoomed out
	#jira UE-21810

Change 3554664 by Michael.Noland

	Editor: Renamed "Find in CB" command to "Browse" and renamed "Search" (in BP) to "Find", so terminology is consistent and keyboard shortcuts make sense (Ctrl+B for Browse, Ctrl+F for find, not using the term Search anywhere)

	#jira UE-27121

Change 3554831 by Dan.Oconnor

	Non editor build fix

Change 3554834 by Dan.Oconnor

	Actor bound event related warnings now show up in blueprint status when opening level blueprint for first time, improved warning message. Removed unused delegate and return value from FixLevelScriptActorBindings. Can now pass raw strings to blueprint results log (no need for Printf, although padding is not great), UClasses in compiler results log will open the generated blueprint when clicked on

	#jira UE-40438

Change 3556157 by Ben.Zeigler

	Convert LevelSequenceBindingReference to use FSoftObjectPath so it works properly with redirectors and fixups

Change 3557775 by Michael.Noland

	Blueprints: Fixed swapped transaction messages when converting a cast node between pure and impure
	#jira UE-36090

Change 3557777 by Michael.Noland

	Blueprints: Allow 'Goto Definition' and 'Find References' to be used while stopped at a breakpoint
	PR #3774: Expose GotoFunctionDefinition during BP debugging (Contributed by projectgheist)
	#jira UE-47024

Change 3560510 by Michael.Noland

	Blueprints: Add support for 'goto definition' on Create Event nodes when the Object pin is not hooked up
	#jira UE-38912

Change 3560563 by Michael.Noland

	Blueprints: Disallow converting a variable get node to impure/back when debugging (no graph mutating operations should be allowed)

Change 3561443 by Ben.Zeigler

	Restore code to support gc.DumpPoolStats, was accidentally removed when FGCArrayPool was moved to a header.
	Clean up comments around Cleanup function, the functionality to trim the memory pools was integrated into ClearWeakReferences on a prior change

Change 3561658 by Michael.Noland

	Blueprints: Refactored 'Goto Definition' so there is no per-class logic in the Blueprint editor or schema any more; any node can opt in individually
	- Added a key binding for Goto Definition (Alt+G)
	- Added a key binding for Find References (Shift+Alt+F)
	- Collapsed 'Goto Code Definition' for variables and functions into the same path, so there aren't separate menu items and commands
	- Added new methods CanJumpToDefinition and JumpToDefinition to UEdGraphNode, the default behavior for UK2Node subclasses is to call GetJumpTargetForDoubleClick and call into FKismetEditorUtilities::BringKismetToFocusAttentionOnObject
	- Going to a native function now goes thru a better code path that will actually put the source code editor on the function definition, rather than just opening the file containing the definition

Change 3562291 by Ben.Zeigler

	Fix issue where calling FSoftObjectPtr::Get during a package save would result in that ptr being forever marked broken, because the ResolveObject fails during save. It's too risky to change that behavior, so change it so the TagAtLastTest doesn't get updated in that case

Change 3562292 by Ben.Zeigler

	#jira UE-39042 When renaming or moving actors between levels it now attempts to fix any soft object references from blueprints or sequencer
	When deleting actors that are soft referenced by actor/sequencer it will now warn the same way it does for level script. Added IAssetTools::FindSoftReferencesToObject to perform this search
	Change it so saving a non-primary world does not result it being dirtied due to the temporary physics scene fixup
	Fix issue where the actor name was shown incorrectly in the SSCS tree for actor instances, which meant that if you renamed it you would end up renaming it to the BP's name

Change 3564814 by Ben.Zeigler

	#jira UE-47843 Don't set InputKey output pins to AnyKey if empty, this was causing blueprints with key events to constantly dirty themselves

Change 3566707 by Dan.Oconnor

	Remove unused code, UClassGenerateCDODuplicatesForHotReload was attempting to create a CDO with a special name, which triggered an ensure. The Duplicated CDO was never used (callign code removed in 3289276 as it was a waste of cycles)

	#jira None

Change 3566717 by Michael.Noland

	Core: Remove all defintions that contain "_API" from the command line when compiling .rc files (they do not support repsonse files and a too-long command line will fail the compile)

Change 3566771 by Michael.Noland

	Editor: Fixing deprecation warning

	#jira UE-47922

Change 3567023 by Michael.Noland

	Blueprints: Change various TArray<> uses to TSet<> throughout name validation and related code to enable it to scale better to high component or variable counts
	Adapted from PR #3708: Fast construction of bp (Contributed by gildor2)
	#jira UE-46473

Change 3567304 by Ben.Zeigler

	Add bCheckRecursive option to IsEditorOnlyObject that is enabled by default and will check outer/archetype/class.
	This is needed for places that call this function from outside of SavePackage.cpp when the editor only mark is set, such as the automation test code

Change 3567398 by Ben.Zeigler

	Fix crash when spawning a widget that has no editor WidgetTree, but does have a cooked widget tree template due to tree inheritance

Change 3567729 by Michael.Noland

	Blueprints: Clarified message about "{VariableName} is not blueprint visible" to define what that means "(BlueprintReadOnly or BlueprintReadWrite)"

Change 3567739 by Ben.Zeigler

	Don't crash if PropertyStruct cannot find it's struct. The function half handled this before, but Preload crashes with a null parameter

Change 3567741 by Ben.Zeigler

	Disable optimization for a path test that was crashing in VC2015 in a monolithic build

Change 3568332 by Mieszko.Zielinski

	Prevented UAIPerceptionSystem::GetCurrent causing a BP error when WorldContextObject is null #UE4

	#jira UE-47948

Change 3568676 by Michael.Noland

	Blueprints: Allow editing the tooltip of each enum value in a user defined enum

	#jira UE-20036

	Known issue: Undo/redo is not currently possible on the tooltip as it is directly stored in package metadata

Change 3569128 by Michael.Noland

	Blueprints: Removing the experimental profiler as we won't be returning to it any time soon
	#jira UE-46852

Change 3569207 by Michael.Noland

	Blueprints: Allow drag-dropping component Blueprint assets into the graph to create Add Component nodes and improved the error message when dragging something that cannot be dropped into an actor Blueprint
	#jira UE-8708

Change 3569208 by Michael.Noland

	Blueprints: Allow specifying a description for user defined enums (shown in the content browser)
	#jira UE-20036

Change 3569209 by Michael.Noland

	Editor: Allow adjusting the font size for each individual comment box node in Blueprints and Materials
	#jira UE-16085

Change 3570177 by Michael.Noland

	Blueprints: Fixed discrepancy between the Structure tab name and the menu option for the tab in the user defined structure editor (now both say Structure Editor)

	#jira UE-47962

Change 3570179 by Michael.Noland

	Blueprints: Fixed the tooltip of a user defined structure not updating immediately in the content browser after being edited

Change 3570192 by Michael.Noland

	Blueprints: Added "(selected)" after the label (in the 'debug filter' dropdown in the Blueprint editor) for actors that are selected in the level editor, which should make it easier to choose the specific actor you want to debug
	#jira UE-20709

Change 3571203 by Michael.Noland

	Blueprints: Cleanup and refactoring to prepare for turning commented out nodes into an official feature
	- Made EnabledState and bUserSetEnabledState private on UEdGraphNode and added new getters/setters
	- Introduced IsAutomaticallyPlacedGhostNode() and MakeAutomaticallyPlacedGhostNode() to start decoupling the concept from commented out nodes
	- Updated a couple of places that used a hardcoded UberGraphPages[0] into instead editing the most recently interacted with event graph if possible
	- Updated 'is data only blueprint' logic to allow multiple ubergraph pages, as long as they're all empty of non-disabled nodes

Change 3571224 by Michael.Noland

	Blueprints: Draw banners on development-only and user disabled nodes (excluding 'ghost' nodes like autogenerated event entries in new BPs)
	Adapted from PR #2701: Differentiate development nodes in BP (Contributed by projectgheist)

	#jira UE-29848
	#jira UE-34698

Change 3571279 by Michael.Noland

	Blueprints: Changed UK2Node::GetPassThroughPin so that only the execution wire on nodes with exactly one input and one output exec wire will have a corresponding pass-through pin (when there is ambiguity in which exec would be used, e.g., with a branch or sequence or timeline node, the subsequent nodes are now effectively disabled as well)

Change 3571282 by Michael.Noland

	Blueprints: Fixed the tooltip for dragging a variable onto an inherited category not showing the 'move to category' hint

Change 3571284 by Michael.Noland

	Blueprints: Made wires into/out of a user-disabled node draw verly dimly (other than the passthrough exec if it exists)

Change 3571311 by Ben.Zeigler

	Add ActorIteratorFlags which allows overriding which types of actors/levels are iterated by ActorIterator, to allow iterating levels that are not visible.
	All of the iteration logic is now in the base and the children just set different flags, which fixes it so TActorIterator does the same level collection check as FActorIterator

Change 3571313 by Ben.Zeigler

	Several fixes to automation framework to allow it to work better with Cooked builds.
	Change it so the automation test list is a single  message. There is no guarantee on order of message packets, so several tests were being missed each time.

Change 3571485 by mason.seay

	Test map for Make Set bug

Change 3571501 by Ben.Zeigler

	Accidentally undid the UHT fixup for TAssetPtr during my bulk rename

Change 3571531 by Ben.Zeigler

	Fix warning messages

Change 3571591 by Michael.Noland

	Blueprints: Made drag-dropping assets into a graph to create a component transactional (allowing the action to be undone)
	#jira UE-48024

Change 3572938 by Michael.Noland

	Blueprints: Fixed a typo in a set function comment

	#jira UE-48036

Change 3572941 by Michael.Noland

	Blueprints: Made the compact node title for cross and dot product the words cross and dot rather than hard to see . and x symbols
	#jira UE-38624

Change 3574816 by mason.seay

	Renamed asset to better reflect name of object reference

Change 3574985 by mason.seay

	Updated comments and string outputs to list Soft Object Reference

Change 3575740 by Ben.Zeigler

	#jira UE-48061 Change it so Editor builds work like cooked builds and always try to reuse existing packages when loading them instead of recreating them in place. Recreating in place does not work well for levels and blueprints, and blueprints already had a hack that was causing this behavior to not activate

Change 3575795 by Ben.Zeigler

	#jira UE-48118 Call into the AssetManager as part of the DistillPackages commandlet. This makes sure that ShooterGame and EngineTest end up with the correct content in launcher builds

Change 3576374 by mason.seay

	Forgot to submit the deleting of a redirector

Change 3576966 by Ben.Zeigler

	#jira UE-48153 Fix issue where actors in streaming levels weren't properly replicating in PIE. It now does the remap path on both send and receive for the manual PC level streaming commands

Change 3577002 by Marc.Audy

	Prevent wildcard pins from being connected to exec pins
	#jira UE-48148

Change 3577232 by Phillip.Kavan

	#jira UE-48034 - Fix EDL assert on load caused by a native reference to a nativized BP class that also references a nativized UDS asset.

	Change summary:
	- Modified FNativeClassHeaderGenerator::ExportGeneratedStructBodyMacros() to emit the 'ReplaceConverted' package name for the FCompiledInDeferStruct global associated with the nativized UDS asset in the UHT codegen. This brings nativized UDS to parity with nativized BP class assets (it was likely just an oversight initially).

Change 3577710 by Dan.Oconnor

	Mirror of 3576977:
	Fix for crash when loading cooked uassets that reference functions that are not present
	#jira UE-47644

Change 3577723 by Dan.Oconnor

	Prevent deferring of classes that are needed to load subobjects

	#jira UE-47726

Change 3577741 by Dan.Oconnor

	Back out changelist 3577723 - causes crash when starting QAGame in Dev-Framework - not in Release-4.17

Change 3578938 by Ben.Zeigler

	#jira UE-27124 Fix issue where renaming a map with legacy map build data would end up with a half-loaded redirector package, becuase the old map build data was still in use. It's possible the call to HandleLegacyMapBuildData should just be in World PostLoad instead of piecemeal in several other places but I am unsure.
	Fix it so the redirector cleanup code on map change will not be stopped by non-standalone top level objects, which could be left behind by issues in other systems

Change 3578947 by Marc.Audy

	(4.17) Properly expose members of DialogueContext to blueprints
	#jira UE-48175

Change 3578952 by Ben.Zeigler

	Fix ensure where ParentHandles on a StreamableHandle could be modified while iterating

Change 3579315 by mason.seay

	Test map for Make Container nodes

Change 3579600 by Ben.Zeigler

	Disable window test on non-desktop platforms as they cannot be resized post launch

Change 3579601 by Ben.Zeigler

	#jira UE-48236 Disable optimizations on PS4 for certain math tests pending fixing of platform issue

Change 3579713 by Dan.Oconnor

	Prevent crashes when bluepints implement an interface that was deleted
	#jira UE-48223

Change 3579719 by Dan.Oconnor

	Fix two compilation manager issues: Make sure CDOs are not renamed under a UClass, because they will be considered as possible subobjects, which has bad side effects and make sure that we update references even on empty functions, so that empty UFunctions are not left with references to REINST data

	#jira UE-48240

Change 3579745 by Michael.Noland

	Blueprints: Improve categorization and reordering support in 'My Blueprints'
	- Allow drag-dropping functions, macros, delegates, etc... to reorder them within a category or to change categories (bringing them to parity with variables)
	- Make category ordering on all categories sticky so you can reorder categories (the relative ordering will be the same within different sections like variables and functions)
	- Added hover cues when drag dropping some items that were missing them (e.g., event dispatchers)
	- Added support for renaming categories using F2

	Known issues (none are regressions):
	- Timelines cannot be moved to other categories or reordered
	- Renaming a nested category will result in it becoming a top level category (discarding the parent category chain)
	- Some actions do not support undo

	#jira UE-31557

Change 3579795 by Michael.Noland

	PR #3867: Fix for not releasing Local Notification Delegate. (Contributed by enginevividgames)
	#jira UE-48105

Change 3580463 by Marc.Audy

	(4.17) Don't crash if calling PostEditUndo on an Actor in the transient package
	#jira UE-47523

Change 3581073 by Marc.Audy

	Make UK2Node_SpawnActorFromClass inherit from K2Node_ConstructObjectFromClass and eliminate duplicate code.
	Correctly reconnect split pins when changing class on create widget, construct object, and spawn actor nodes

Change 3581156 by Ben.Zeigler

	#jira UE-48161 Fix issue where split pins would not be restored if a Struct type was changed due to refactoring of parent variables/functions. For structs we want to copy the pins, if they're invalid due to other changes they will be individual orphaned
	Also fix bug where the category of parent pins was being set incorrectly while changing variable type, we only want to override type for wildcard pins

Change 3581473 by Ben.Zeigler

	Properly turn off optimization for PS4 test

Change 3582094 by Marc.Audy

	Fix anim nodes not navigating to their graph on double click
	#jira UE-48333

Change 3582157 by Marc.Audy

	Fix double-clicking on animation asset nodes not opening the asset editors

Change 3582289 by Marc.Audy

	(4.17) Don't crash when adding a streaming level that's already in the level
	#jira UE-48928

Change 3545435 by Ben.Zeigler

	#jira UE-47509 Rename and refactor internals StringAssetReferences and AssetPtrs to become SoftObjectPath/Ptr. This is to prepare them for use for subobjects like actors. Here is the rename table:
	FStringAssetReference -> FSoftObjectPath
	FStringClassReference -> FSoftClassPath
	TAssetPtr -> TSoftObjectPtr
	TAssetSubclassOf -> TSoftClassPtr
	The old headers are deprecated, and FSoftClassPath is now in the same header has FSoftObjectPath.
	This change increments the UE4 version because FSoftObjectPaths are now stored as a name + substring instead of one giant name, which in practice will improve performance and memory while manipulating them. Also the package table of soft referenced packages is now stored as FNames instead of FStrings as these packages names will already be in the name table due to the AssetRegistry
	Remove automatic support for loading Objectpaths starting with engine-ini:, as it was only partially supported and is very outdated. ResolveIniObjectsReference can still be called manually
	Changed TPersistentObjectPtr and TLazyObjectPtr to be structs instead of classes
	Change UnrealHeaderTool to read configuration such as StructsWithNoPrefix out of inis instead of using a hardcoded list. Add support for TypeRedirects, which is used to make the old type names automatically remap to the new ones
	Clean up FRedirectCollector to remove some of the functionality that is no longer used by the cooker, and disable tracking of redirects in standalone -game builds

Change 3567760 by Ben.Zeigler

	Fix it so EngineTest can be cooked by moving some utility functions to EditorTestsUtilityLibrary and adding an EditorFunctionalTest. The core EngineTest module is safely runtime-only now and can run it's tests locally in windows cooked
	Merge FuncTestManager into FunctionalTestModule to avoid confusion with FunctionalTestingManager UObject
	Add EngineTestAssetManager and override the cook function to cook all maps with runtime functional tests
	Change actor merging tests to be editor only, this stops them from cooking
	Several individual tests crash on cooked builds, I started threads with the owners of those

Change 3575737 by Ben.Zeigler

	#jira UE-48042 Change it so playing via PIE Standalone, multiprocess networked PIE and external cook launch on does not save temporary levels to UEDPC and instead prompts the user to save. This is how launch on works by default already, and this fixes cross level references/sequencer. The UEDPC code has been removed entirely.
	As part of this change, connecting a -game client to a PIE server and vice versa is much more likely to work. You may still have game-side problems, look at UEditorEngine::NetworkRemapPath for an example of how to do the PIE prefix conversion
	Remove advanced CreateTemporaryCopiesOfLevels option from sequencer capture, it has not been tested in multiple years and does not work with newer sequencer features
	#jira UE-27124 Fix several possible crashes with changing levels while in PIE

Change 3578806 by Marc.Audy

	Fix Construct Object not working correctly with split pins.
	Add Construct Object test cases to functional tests.
	Added split pin expose on spawn test cases.
	#jira UE-33924

[CL 3582334 by Marc Audy in Main branch]
2017-08-11 12:43:42 -04:00
Matt Kuhlenschmidt
f9e0e6bded Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3566944)
#lockdown Nick.Penwarden
#rb none
============================
  MAJOR FEATURES & CHANGES
============================

Change 3363699 by Mike.Fricker

	VR Editor: Improved extensibility (for mesh editor)
	- This was merged from CL 3352612 and re-opened for edit before commit
	- All mesh editor changes were stripped before merging

Change 3499858 by Matt.Kuhlenschmidt

	PR #3673: Fixed UE-36416 (Contributed by DarkSlot)


Change 3499872 by Matt.Kuhlenschmidt

	PR #3682: Details view - matrix button visibility toggle and crash fix (Contributed by kamrann)


Change 3499873 by Matt.Kuhlenschmidt

	Hide property matrix button from settings editor.  For the combined settings objects view this produces nonsensical results and the property matrix is for bulk editing which settings are not designed for.

Change 3501154 by Arciel.Rekman

	Fix incorrect RPATH.

	- Fixed LinuxToolChain to use FileItem instead of strings.
	- Fixed string-based Utils.MakePathRelativeTo - workaround for an old Mono bug was causing invalid "correction" of the relative path, triggered by the fact that path "Foo/Bar/../Baz" was not considered equal to "Foo/Baz". Instead of removing the workaround altogether, added a better comparison.

Change 3501337 by Arciel.Rekman

	Better fix for RPATH.

	- Ben Marsh's suggestion.

Change 3502572 by Matt.Kuhlenschmidt

	PR #3693: Because "becuase" is spelled because (Contributed by getnamo)


Change 3502731 by Matt.Kuhlenschmidt

	Guard against empty warning toasts

	#jira UE-46285

Change 3502788 by Matt.Kuhlenschmidt

	Avoid shutting down the editor during loads and slow tasks if a windows close message comes in during this time

Change 3503027 by Michael.Dupuis

	Optimized UpdateLayerUsageInformation

Change 3503299 by Michael.Dupuis

	Fixed crash when having no layer info object

Change 3504529 by Yannick.Lange

	Use UWorld instead of FWorldContext for EditorWorldExtensions, since we don't use it.

Change 3504550 by Jamie.Dale

	Fixed/Improved DnD validation between Content Browsers

	Dragging assets between Content Browsers now goes through the same common DnD code (DragDropHandler) as dragging assets between the SPathView and SAssetView, and between items within an SAssetView. This also improves the validation of asset/file drops to prevent you dropping assets/files into class paths.

	#jira UE-45857

Change 3505369 by Alexis.Matte

	Make sure undo/redo transactions works for all fbx dialog options.
	#jira UE-43465
	#jira UE-43569

Change 3505500 by Matt.Kuhlenschmidt

	Fix child usd meshes not importing properly.

Change 3505645 by Arciel.Rekman

	Add USD support on Linux (UE-45383).

	#jira UE-45383

Change 3505658 by Arciel.Rekman

	USD: add CMake toolchain file I missed.

Change 3506796 by Yannick.Lange

	Fix EditorWorldExtensionCollection using TWeakObjectPtr for UWorlds instead of UPROPERTY

Change 3508082 by Alexis.Matte

	Make sure the fbx re-import editor preference "show option dialog at reimport" is working when re-importing an animation sequence.

Change 3508855 by Max.Chen

	Add CanFindInContentBrowser to AssetEditorToolkit.

	False for LevelSequenceEditorToolkit so that sequencer doesn't take over Find In Content Browser and show only the sequencer asset.

	#jira UE-46241

Change 3509282 by Bradut.Palas

	#jira UE-45337

	Removed check for Actor->GetWorld() against GWorld because the latter would switch between editor world and PIE world during a tick, causing the widget to not update properly.
	Since  the Actor would always point to the PIE world, the check was no longer needed.

Change 3509298 by Nick.Darnell

	Slate - Now has better support for analog navigation, the NavigationConfig is now created per user, and has the ability to deal with repeats and can handle navigation better by waiting until the user has moved enough to intend a direction to move.

Change 3509313 by Bradut.Palas

	#jira UE-44630

	As the bug description says, the Undo History was not refreshing correctly because an undo coupled with an action would result in the same number of transactions as the previous tick. Now we also check the variation of undo actions count in order to refresh the list.

Change 3509318 by Bradut.Palas

	#jira UE-1406

	To fix the issue we simply close the Consolidate window if ListViewItems is empty.


Change 3509402 by Nick.Darnell

	PR #3703: UE-46362: Fixing typo in EUMGSequencePlayMode.PingPong comment (Contributed by gsfreema)


Change 3510447 by Arciel.Rekman

	ReplayProxy: changed protected to private.

Change 3510467 by Max.Chen

	Property Editor: Disable color widget when editing is disabled.

	#jira UE-46331

Change 3511249 by Matt.Kuhlenschmidt

	PR #3715: Turn off the automatic expiration of the restore assets notification (Contributed by IHappyDayI)


Change 3511286 by Matt.Kuhlenschmidt

	Added ability to set properties from USD attributes when using scene import to import USD files.  See

	UsdPropTestScene.usda for an example file of how this works

Change 3511528 by Cody.Albert

	Updated FMoviePlayerWidgetRenderer to use Slate time instea of application time

Change 3512149 by Matt.Kuhlenschmidt

	Dont save non-dirty built data when playing PIE in a standalone process

	#jira UE-46422

Change 3512259 by Matt.Kuhlenschmidt

	Fix static analysis

Change 3512291 by Matt.Kuhlenschmidt

	PR #3719: Updating UEditorEngine::ReplaceActors to not copy array of actors (Contributed by gsfreema)


Change 3512911 by Matt.Kuhlenschmidt

	Fixed USD property setting crashing if the usd file contained an array with 0 elements.
	Fixed USD property setting creating invalid tmaps if the usd file contained a key that already existed

Change 3513725 by Matt.Kuhlenschmidt

	PR #3726: Copy/paste fix for SAdvancedDropdownRow::Construct() (Contributed by jovisgCL)


Change 3514453 by Jamie.Dale

	Added a way to set the UEnum used by a UEnumProperty after using the default constructor

	This will assert if called on an instance that has already been initialized

Change 3514858 by Alexis.Matte

	Fix crash when importing animation and choosing a different value for option "Import Meshes In Bone Hierarchy" then the value use to import the skeletal mesh. In some case there is no skinned mesh.

Change 3514875 by Matt.Kuhlenschmidt

	PR #3721: Fixed. Screen Message was showed always when screenshot is captured(F9) (Contributed by shuaiharry)


Change 3515859 by Bradut.Palas

	#jira UE-46516

	The RenameTextBox didn't handle the OnTextCommitted event (which can be triggered when pressing Enter in the box). Now it does.

Change 3515998 by Jamie.Dale

	Adding missing ) to some log messages

Change 3517681 by Matt.Kuhlenschmidt

	Fix automated import not applying any texure settings to imported textures

Change 3517703 by Nick.Darnell

	Slate - Marking SWidget's destructor as virtual (it always has been because of the parent), but this makes it more obvious.

Change 3517737 by Nick.Darnell

	Slate - The retainer widget now only knows how to store the images in gamma space, rather than rendering in linear and storing using sRGB writes.  If you do it that way - you end up in a state of having premultiplied linear space stored in sRGB, and getting that back into a state that looks correct when you finally render it with the rest of Slate becomes very difficult, so to make things simpler

Change 3517758 by Nick.Darnell

	UMG - Updating the retainer box categories and visibility.

Change 3517795 by Nick.Darnell

	Slate - We now don't do inherited volatility if we're also caching.

Change 3517861 by Matt.Kuhlenschmidt

	Update windows USD to .75

Change 3517867 by Matt.Kuhlenschmidt

	Delete OpenEXR from USD dependencies.  It is no longer used

Change 3517873 by Matt.Kuhlenschmidt

	Updated USD windows binaries

Change 3517896 by Max.Chen

	Sequencer: Call SkyLightComponent's SetLightColor() directly, similar to LightComponent

	#jira UE-46669

Change 3518240 by Max.Chen

	Sequencer: Set needs update when binding.

	#jira UE-46619

Change 3518492 by Max.Chen

	Sequencer: If already at the correct play position, don't jump to it. This fixes a bug where if you play to a position and pause, resuming play will playforward and not keep pausing.

	#jira UE-45996, UE-45997

Change 3518997 by Max.Chen

	Fbx: Fix aperture width, height, focal length and field of view calculations.

	#jira UE-46754

Change 3520190 by Jamie.Dale

	Cleaned up SCC log spam when finding out-of-date dependencies

Change 3520237 by Yannick.Lange

	VR Editor: cleanup auto entry. Removed TimeSinceHMDChecked and added extra check for if there is currently a vr mode active.

Change 3520923 by Max.Chen

	Sequencer: Refactor displaying sequencer settings in editor so that they're always available and not only when the sequencer type is instantiated.

	#jira UE-46301

Change 3521212 by Matt.Kuhlenschmidt

	PR #3757: MAX_NAME_LENGHT -> MAX_NAME_LENGTH (Contributed by Josef-CL)


	#jira UE-46821

Change 3521216 by Matt.Kuhlenschmidt

	PR #3751: Spelling fix for ESlateVisibility comment (Contributed by Triplelexx)


	#jira UE-46810

Change 3521221 by Matt.Kuhlenschmidt

	PR #3733: UE-46683: Don't increment MovieIndex when playing next movie (Contributed by projectgheist)


	#jira UE-46683,UE-46714

Change 3521344 by Yannick.Lange

	Fix selection tools in the Levels editor window. After selecting all levels SWorldHierarchyImpl::OnUpdateSelection used GetSelectedTreeItems(). At that point the tree items were not updated yet and it would return the 'previous' items. Making it look like nothing happened. Instead WorldModel->GetSelectedLevels() had to be used to get the new list of selected levels (this was used in 4.16) and then convert the list of FLevelModel to the new system that uses WorldHierarchy::FWorldTreeItemID.
	#jira UE-46741

Change 3521825 by Joe.Graf

	#Xb1

	Added missing VectorSetFloat1 by copying the one in UnrealMathSSE.h

	#CodeReview: ben.woodhouse

Change 3522114 by Joe.Graf

	#Xb1

	Changed the missing VectorSetFloat1 to use MakeRegisterVector to be more consistent with other Xbox defines per Ben's code review

	#CodeReview: ben.woodhouse

Change 3524202 by Matt.Kuhlenschmidt

	Prevent resizing when a context menu is open.  This prevents a number of rare crashes when a window is resized when a child menu is open causing the child to lose connection to the parent (happens when the parent widgets are clipped and no longer processed).  This is consistent with behavior on windows and mac.

	#jira UE-46653

Change 3524263 by Bradut.Palas

	#jira UE-46671

	The issue happened because a parent callback of OnAssetRenameCommitted would allow an implicit sync and it would reset the search. Solved by blocking the parent callback if the user is searching.

Change 3524265 by Bradut.Palas

	#jira UE-46261

	Console command was doing something illegal. Opening a map from editor when multiprocess and client mode were enabled is prohibited by code in Playlevel.cpp (( !CanRunUnderOneProcess && PlayNetMode == EPlayNetMode::PIE_Client ))
	Solved by banning that specific use of the command.

Change 3524266 by Bradut.Palas

	#jira UE-45592

	The bug was caused by an iteration in EndPlayMap() that re-selected all previous actors but without the notify flag (hence, not triggering the code that validated showing the transform widget). Fixed by notifying just once per group, for performance reasons.

Change 3524585 by Bradut.Palas

	Back out changelist 3524265 until I can figure out why the build system doesn't like it.

Change 3525921 by Bradut.Palas

	Resubmitting revision 3524265 with properly guarded editor code (#if WITH_EDITOR)

Change 3526124 by Matt.Kuhlenschmidt

	Remvoe debug canvas proxy

Change 3526139 by Matt.Kuhlenschmidt

	Force low quality fallback mode on ES2 devices for slate blur widgets. This feature does not work on es2

Change 3526663 by Cody.Albert

	Fixed sequencer bindings to correctly work on streamed level in standalone preview mode

Change 3527028 by Cody.Albert

	Back out changelist 3526663

Change 3527241 by Cody.Albert

	Fixed sequencer bindings to correctly work on streamed level in standalone preview mode

Change 3527829 by Max.Chen

	Fbx: Add static transform values to curve data import.

	#jira UE-46888

Change 3527830 by Max.Chen

	Sequencer: Import static/default transforms and camera focal lengths from fbx.

	#jira UE-46888

Change 3528768 by Matt.Kuhlenschmidt

	Refactor of GetDetailsView method on IDetalLayoutBuilder for some upcoming changes.  There is no longer a guarantee that a physical details panel is present wwhen customizing a property so GetDetailsView now returns a pointer and will be null if no details view exists.  This refactor is necessary for a change to allow us to make loose property widgets for use outside of a details view.

Change 3528776 by Yannick.Lange

	Allow thumbnails to be captured from a viewport always.

	#jira UE-45392

Change 3530675 by Michael.Dupuis

	#jira UE-46913	: Added extra validation to prevent possible crash

Change 3530991 by Matt.Kuhlenschmidt

	Added ability for users to specifiy usd plugins for the USD importer

Change 3531110 by Matt.Kuhlenschmidt

	Added automated import support for USD.
	Automated import now also supports loading a level per import group so that factories may spawn actors and manipulate the level

Change 3531119 by Matt.Kuhlenschmidt

	USD Scene import now uses actor factories to determine the correct actor type to spawn for an asset specified in USD

Change 3531220 by Jamie.Dale

	Fixed some places that were iterating over sets/maps using their element indices as if they were the sparse indices

Change 3531831 by Cody.Albert

	BP nodes can no longer be renamed on read-only graphs.

Change 3531938 by Yannick.Lange

	Enable setting justification at runtime for multi-line text boxes.
	#jira UE-44801

Change 3533011 by Matt.Kuhlenschmidt

	Exporting render targets now chooses PNG if the render target format is an LDR format

Change 3533370 by Arciel.Rekman

	Fix comparison of the RT format.

Change 3533717 by Nick.Darnell

	Slate - Adding justification to SEditableText and SpinBox, also adding the field for UMG.

Change 3534756 by Arciel.Rekman

	Linux: add path to bundled GL headers.

	- Seems like we have been implicitly relying on it being added someplace else or simply present in the system.
	- Change by Cengiz.Terzibas

Change 3535421 by Arciel.Rekman

	Reduce SCW logspam on Linux (UE-46634)

	#jira UE-46634

Change 3537520 by Matt.Kuhlenschmidt

	PR #3780: Fix typo steam to stream (Contributed by YuchenMei)


Change 3537539 by Nick.Darnell

	UMG - Fixing a bug with aspect ratio locking cameras when in HDPI mode, the spaces were slightly different.  Moving over the code that calculates the offsets to function in normalized space, so that it's trivial to combine with the existing normalized viewport dimensions and offset information, without space confusion.

Change 3537542 by Nick.Darnell

	UMG - Fixing some bugs with the retainer widget which was not properly resetting or registering the hit testing information when rendered every frame.  This should fix some issues that have been seen with clicks locking the viewport rendering, or not being clickable.

Change 3537596 by Alexis.Matte

	Fbx SDK 2018.1.1 Integration

	#jira UE-45070

Change 3537672 by Matt.Kuhlenschmidt

	Simple fix for seconds of time being spent refreshing the settings editor if commands are registered while it is open.  The request to refresh is deferred until next tick, meaning that each command list registered in a frame is not refreshing the details panel.

Change 3537796 by Alexis.Matte

	Make sure all general settings are persist when we re-import a staticmesh from fbx file.
	#jira UE-46829

Change 3537961 by Michael.Dupuis

	#jira UE-47222: Prevent possible crash in some bad drag & drop case

Change 3538149 by Alexis.Matte

	Make sure we export NTB information instead of just the normal when exporting to fbx
	#jira UE-46785

Change 3538237 by Alexis.Matte

	Fix import of large fbx scene (over 2 Gb) pr #3784
	#jira UE-47124

Change 3538270 by Lauren.Ridge

	Epic Friday: Preview scenes in material editors

Change 3539707 by Yannick.Lange

	Optimize viewport interactor hitresult for laser. Store the first hitresult and use that when calling UViewportInteractor::GetHitResultFromLaserPointer multiple times a frame.

Change 3539964 by Lauren.Ridge

	Fix for cubemap not persisting between loads

Change 3540321 by Arciel.Rekman

	Linux: CEF rebuilt with fewer dependencies (UE-46433).

	- Removed source-only binary to save size (we can link to the runtime one, this also allows RPATH to be generated automatically).
	- Change by Cengiz.Terzibas, polished by RCL.

Change 3540458 by Alexis.Matte

	Fix the HDR pixel inspector. The HDR value is now RGBA in editor viewport and RGB in Game mode.
	#jira UE-47199

Change 3540681 by Arciel.Rekman

	Linux: fix flickering (UE-46351) - redoing fix from 4.17

	- Slate rendering policy can set a scissor rect equal to a (smaller) window, which would get inherited by the scene renderer later.

	#jira UE-46351

	(Redoing the fix from CL 3538578 in 4.17).

Change 3540838 by Matt.Kuhlenschmidt

	Fix locked actors still being moved by piloting them

Change 3542212 by Nick.Darnell

	Slate - Fixing a crash with per character wrapping.  When used in rich text fields, it can cause a crash due to negative lengths for measurements, due to the way we calculate start and end indexes.  New code now ensures the End is always >= to the Start.

Change 3544033 by Arciel.Rekman

	Drop and deprecate /-prefixed commandline switches.

	- Dropped on all platforms except Windows, where it will produce a warning. Complete drop is expected in 4.19.

Change 3544213 by Nick.Darnell

	Slate - Fixing another potential crash with the slate loading thread.  The default movie player was listening for map load finishing using the AddSP callaback, which means the weakptr would be accessed, switching these over to AddRaws to be safer.

Change 3546113 by Nick.Darnell

	Slate - Resurecting the slate visualizer support in the slate renderer for batch visualization, and overdraw.

Change 3547129 by Michael.Trepka

	Few small changes that make UnrealBuildTool faster when running on Mono

Change 3547454 by Jamie.Dale

	Added search to editable texts

Change 3547460 by Jamie.Dale

	The output log now applies a search to its editable text when filtering

	This highlights the term matches on each line

Change 3548177 by Jamie.Dale

	Optimized PO entry look-up

Change 3548287 by Matt.Kuhlenschmidt

	Fix one off speedtree crash

	#jira UE-47538

Change 3548377 by Lauren.Ridge

	Checking that the Environment Map Path is set before trying to load it.

	#jira UE-47365

Change 3548628 by Matt.Kuhlenschmidt

	Fix focus graphic for tabs not pointing to the correct image

Change 3549289 by Max.Chen

	Movie Scene Capture: Move window to within the desktop bounds when resizing.

	#jira UE-37330

Change 3549290 by Arciel.Rekman

	Fix hlslcc not working properly with newer clangs.

	- Both the clang 3.8+ problem and UB reported by UBSan.

Change 3550573 by Max.Chen

	Sequencer: Track drag drop.

	Implement drag and drop onto a camera track, subscene track, and cinematic shot track.

	#jira UE-45773
	#jira UE-45387

Change 3550729 by Max.Chen

	Sequence Recorder: Add interpolation and tangent settings for animation recording keys

	#jira UE-46146

Change 3551558 by Nick.Darnell

	UMG - Tweaking some designer elements, playing around with a 'real-time' mode.  Also fixing a bug with decendant widgets in named slots not triggering design effects like updating the widget switcher.

	#jira UE-39404

Change 3551671 by Joe.Graf

	Merged over the change to expose more of dormancy to Blueprints (UE-46240)

Change 3551684 by Cody.Albert

	Removing some unused code from map check

Change 3552673 by Yannick.Lange

	Fix crash select all levels with folders in the treewidget.

Change 3552960 by Yannick.Lange

	Frontend filter for files referenced by any level in the project and a filter for not referenced by any level.
	#jira UE-22153

Change 3553727 by Max.Chen

	Sequencer: Capture thumbnail before pre save so that the thumbnail isn't captured with the evaluation in a reset state.

	#jira UE-47693

Change 3553778 by Arciel.Rekman

	Cache check for compiler availability (UE-47699).

	-  Fixes performance drop in the blueprint editor. Better than caching in a particular source accessors because affects all accessors (incl. Mac which isn't cached either) and reduces calls.

Change 3554128 by Matt.Kuhlenschmidt

	Null out GEditor after it has been destoyed.  Any modules that access GEditor can now properly check for a null geditor instead of blindly accessing it

Change 3554266 by Max.Chen

	Movie Scene Capture: Override cinematic mode in the movie scene capture.

	#jira UE-33473

Change 3555563 by Alexis.Matte

	Fix static mesh screensize lost when converting from an old version. The conversion require valid extended bounds which was converted after the LOD screensize.

	#jira UE-47697

Change 3555755 by Yannick.Lange

	VR Editor: Add exit button inside new menu called "system" on radial menu. Still needs correct icons.

Change 3556334 by Matt.Kuhlenschmidt

	Added a new type of property editor called a property row generator.  This is essentially a details panel that can generate each unique row but adds no visual styling around the property editors and does not generate a master tree widget for the properties.  This is useful for creating proper widgets for properties and displaying them in a UI that is not the details panel

Change 3558100 by Matt.Kuhlenschmidt

	PR #3823: Incorrect comment syntax in ini files (Contributed by projectgheist)


Change 3558240 by Lauren.Ridge

	Move floor in material editor preview scene based on preview mesh

Change 3558242 by Matt.Kuhlenschmidt

	Fix console variables help page showing only rendering cvars by default

Change 3558243 by Matt.Kuhlenschmidt

	Fix static analysis

Change 3558342 by Alexis.Matte

	Make the code to find the best sample rate to import fbx animation more simple and more robust. The code need to be able to support all the possible case.
	Add a lot of animation sample rate automation tests

	#jira UE-47342

Change 3558515 by Yannick.Lange

	VR Editor: Changed icon for system and exit button on radial menu.

Change 3558973 by Matt.Kuhlenschmidt

	Fix camera placement of the default map

Change 3559230 by Arciel.Rekman

	Do not link CEF3 for servers (UE-47721).

Change 3559572 by Arciel.Rekman

	Linux: make sure the engine is rebuilt during the updates.

Change 3560197 by Arciel.Rekman

	Linux: cosmetic cleanup of an old code.

Change 3560904 by Max.Chen

	Movie Scene Capture: Expose "Open Folder" hyperlink while capturing.

Change 3561213 by Matt.Kuhlenschmidt

	Enable USD by default in QA game for testing

Change 3561928 by Matt.Kuhlenschmidt

	Fix green glowing in the mateiral editor

	#jira UE-47826

Change 3562259 by Arciel.Rekman

	Made FPlatformMisc::DebugBreak() not inlined on Linux.

	- Saves a great deal of binary size without really impacting a performance.

Change 3562630 by Arciel.Rekman

	Make Linux editor compilable with clang 5.0-rc1.

Change 3563564 by Yannick.Lange

	Fix Cube Static Mesh Thumbnail renders black. Cleared out the thumbnail, causing it to create the correct new one.
	#jira UE-47777

Change 3564529 by Jamie.Dale

	Const-correct UScriptStruct::ExportText

Change 3564972 by Alexis.Matte

	Fix staticmesh merge applying build scale multiple time Git PR #3807
	#jira UE-47645

Change 3565253 by Arciel.Rekman

	Fix "Anim to Play" being inaccessible after import (UE-47885).

	- The variable was not initialized and could remain false on Linux.

	#jira UE-47885

Change 3565293 by Jamie.Dale

	Merged "Categories" into the main Output Log filter list

Change 3565939 by Alexis.Matte

	Back out revision 3 from //UE4/Dev-Editor/Engine/Source/Developer/MeshMergeUtilities/Private/MeshMergeHelpers.cpp

Change 3566081 by Alexis.Matte

	Fix staticmesh merge applying scale twice PR #3807
	#jira UE-47645

Change 3566232 by Matt.Kuhlenschmidt

	Fix edit inline properties not clipping properly

	#jira UE-47775

[CL 3567077 by Matt Kuhlenschmidt in Main branch]
2017-08-01 15:55:31 -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
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
Ben Marsh
aa969f9931 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3420477)
#lockdown Nick.Penwarden
#rb none

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

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

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

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

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

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

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

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

	Comments added to clarify the role of DestructItem and DestructItems.

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

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

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

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

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

	CLASS_PointersDefaultToAutoWeak and CLASS_PointersDefaultToWeak removed.

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

	AGRESSIVE_ARRAY_FORCEINLINE removed.

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

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

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

	#jira UE-42948

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

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

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

	UGS: Only check for updates every 5 minutes.

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

	UGS: Only poll for new changes every 60 seconds.

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

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

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

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

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

	Update UGS to version 1.96

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

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

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

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

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

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

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

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

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

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


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

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


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

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

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

	PR #3105: Cook/package with editor and debugger attached (Contributed by projectgheist)


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

	PR #3051: Generate map file from UAT (Contributed by projectgheist)


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

	PR #2915: UE-38232: Removed duplicate stats (Contributed by projectgheist)


Change 3399304 on 2017/04/19 by Ben.Marsh

	UGS: Prevent editor target files being removed when running custom tools.

Change 3399306 on 2017/04/19 by Robert.Manuszewski

	Moved InitPropertiesFromCustomList to UbLueprintGeneratedClass and made it thread safe

Change 3399729 on 2017/04/19 by Steve.Robb

	Simple optimization to TBitArray::RemoveAt() when all removed bits are at the end of the array.
	RemoveAtSwap() now simply decrements the count instead of calling RemoveAt().
	Checks for a positive count added to RemoveAt() and RemoveAtSwap().

Change 3399750 on 2017/04/19 by Jin.Zhang

	Order branch alphabetically #RB

Change 3400186 on 2017/04/19 by Steve.Robb

	Per-header generated code.

Change 3401458 on 2017/04/20 by Steve.Robb

	Static log categories moved out of headers to prevent duplicates when the header is included multiple times.

	#jira UE-37507

Change 3401657 on 2017/04/20 by Gil.Gribb

	UE4 - Simplified and reworked lock free lists and the task graph bringing all platforms under the same scheme.

Change 3401735 on 2017/04/20 by Gil.Gribb

	UE4 - Updated apple platform atomics with a new clang version which is intended to be shared among all clang platforms.

Change 3403362 on 2017/04/21 by Steve.Robb

	Algo::Sort() fixed to support C arrays.
	Size+count versions of Also::IsSorted() deprecated.
	Algo::IsSortedBy() added.
	Algo::FindBy() added to allow an element to be found by projection.
	Simplifications and generalizations.

Change 3404017 on 2017/04/21 by Ben.Marsh

	Fix issue where referenced plugin descriptors were missing from console builds, and prevent monolithic builds from offering to disable missing plugins.

Change 3405299 on 2017/04/24 by Steve.Robb

	Clarified the class of the incompatible function in the error message about incompatible BP event specifiers.

	#jira UE-35106

Change 3405302 on 2017/04/24 by Ben.Marsh

	UBT: Allow excluding documentation from generated project files, by setting <ProjectFileGenerator><bIncludeDocumentation>false</bIncludeDocumentation></ProjectFileGenerator> in the XML configuration file.

Change 3405629 on 2017/04/24 by Ben.Marsh

	Rename CPPEnvironment to CppCompileEnvironment, to reflect the class name.

Change 3406431 on 2017/04/24 by Ben.Marsh

	UAT: Fix incorrect handling of P4SubmitOptions when multiple values are present.

Change 3406670 on 2017/04/24 by Ben.Marsh

	UBT: Enable warnings for classes with virtual functions and no virtual destructor (C4265 on Windows, -fdelete-non-virtual-dtor on Clang).

Change 3407080 on 2017/04/25 by Gil.Gribb

	UE4 - Critical fix: Propoerly disambiguate imports with the same name and the same outer name. This fixes an assert: LocalExportIndex.IsNull.

Change 3407486 on 2017/04/25 by Gil.Gribb

	UE4 - Made changes so that servers, programs and non-engine executables do not create background or high priority threads.

Change 3407495 on 2017/04/25 by Gil.Gribb

	UE4 - Tweaked out XBox and Windows low level file IO.

Change 3407497 on 2017/04/25 by Gil.Gribb

	UE4 - Fixed bug in the pak precacher that would result in blocks being discarded too soon, which, in turn, resulted in redudnant reads.

Change 3407705 on 2017/04/25 by Ben.Marsh

	Removing most of the junk in DotNETUtilities.

Change 3409701 on 2017/04/26 by Ben.Marsh

	Disable another static analyzer warning for third party libraries.

Change 3410074 on 2017/04/26 by Daniel.Lamb

	Network platform file runs heart beats and responds to modified file changes.
	Cook on the fly server in the editor (COTS) now detects changes to content and notifies client.
	Fixed issue with network platform file not using correct sandbox.

	#test cook on the side shootergame

Change 3411131 on 2017/04/27 by Steve.Robb

	TIsTriviallyDestructible now supports forward-declared enums.

Change 3411186 on 2017/04/27 by Steve.Robb

	Fix for #includes in generated code for Within classes which are in a different module from the generated class.

Change 3411917 on 2017/04/27 by Steve.Robb

	Fixes to pushing/popping the CPP macro.

Change 3411966 on 2017/04/27 by Steve.Robb

	Include spam reduced in generated code.

Change 3412155 on 2017/04/27 by Ben.Marsh

	Fix for PVS Studio warning: VFOVInRadians used instead of HFOVInRadians.

Change 3412223 on 2017/04/27 by Ben.Marsh

	Fix for PVS-Studio warning: Calling SetHelperA.Num() twice.

Change 3412273 on 2017/04/27 by Ben.Marsh

	Fix for PVS-Studio warning: Duplicated variable name.

Change 3412511 on 2017/04/27 by Ben.Marsh

	PR #3462: Fixed PVS-Studio issues (Part 1) (Contributed by PaulEremeeff)


Change 3412582 on 2017/04/27 by Ben.Marsh

	Fix for PVS-Studio warning: Incorrect variable name in copy/pasted code

Change 3413136 on 2017/04/28 by Robert.Manuszewski

	Helper functions for dissolving specific GC clusters

Change 3413310 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Incorrect variable name in copy/pasted code.

Change 3413341 on 2017/04/28 by Gil.Gribb

	UE4 - Add prestream capability to allow us to preload always loaded sublevels. Only turned on for Shootergame.

Change 3413351 on 2017/04/28 by Ben.Marsh

	Include code analysis macros directly from Platform.h, so that macros are available to everything.

Change 3413352 on 2017/04/28 by Ben.Marsh

	Fixing a few more PVS studio warnings.

Change 3413437 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Comparison is always true.

Change 3413759 on 2017/04/28 by Ben.Marsh

	Suppressing warnings for PVS-Studio.

Change 3413784 on 2017/04/28 by Ben.Marsh

	Fix PVS-Studio warning.

Change 3413898 on 2017/04/28 by Ben.Marsh

	Fix PVS-Studio warning: Same conditional is checked twice.

Change 3413915 on 2017/04/28 by Ben.Marsh

	Fix PVS-Studio warning: LHS of expression is identical to RHS.

Change 3413989 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: If CurrentGraph->SubGraphs.Num() == 1, it will always enter the first conditional block.

Change 3414053 on 2017/04/28 by Ben.Marsh

	More PVS-Studio fixes.

Change 3414062 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Pointer to object goes out of scope without being freed.

Change 3414070 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Fix incorrect condition.

Change 3414071 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Array index is always zero.

Change 3414116 on 2017/04/28 by Ben.Marsh

	BuildGraph: Allow marking compile tasks as unsuitable for use with the parallel executor, via an AllowParallelExecutor="false" attribute.

Change 3414160 on 2017/04/28 by Ben.Marsh

	Add support for running PVS-Studio through UnrealBuildTool. To use, pass -StaticAnalyzer=PVSStudio to the build command line (similarly, the Visual C++ analyzer can now be invoked using -StaticAnalyzer=VisualCpp). A log file will be written to the Engine/Saved/PVS-Studio or <Project>/Saved/PVS-Studio directory containing diagnostics, which can be opened using the "unparsed output" filter in the PVS-Studio standalone application. High priority warnings are printed to stdout.

Change 3414237 on 2017/04/28 by Ben.Marsh

	EC: Allow disabling and enabling the log preprocessor via special markers in the log.

	To disable: <-- Suspend Log Parsing -->
	To enable: <-- Resume Log Parsing -->

Change 3414343 on 2017/04/28 by Ben.Marsh

	UBT: Exclude ThirdParty folders from PVS output.


Change 3414392 on 2017/04/28 by Ben.Marsh

	Fix regular strings being casted to BSTRs; BSTRs have a hidden length prefix in the two bytes before the first character, so passing a regular TCHAR* is reading random memory.

Change 3414459 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Object goes out of scope without being freed.

Change 3414495 on 2017/04/28 by Ben.Marsh

	Suppress some more PVS-Studio warnings.

Change 3414514 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Testing WorldType being equal to EditorPreview and not equal to Inactive is redundant; changing to match description in comment instead.

Change 3414526 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Variable assigned to itself has no effect.

Change 3415183 on 2017/04/29 by Ben.Marsh

	Fix conflict in macro definitions for ENABLE_HTTP_FOR_NFS - rename the macro defined by NetworkFile to ENABLE_HTTP_FOR_NF. Hopefully fix CIS.

Change 3415765 on 2017/05/01 by Ben.Marsh

	Suppressing PVS-Studio warning to get things building cleanly. Not sure if FContentHelper is being leaked or not.

Change 3415853 on 2017/05/01 by Ben.Marsh

	EC: Fix jobs never completing if a "Sync & Build" step fails. Dependent jobs should evaluate their run conditions as soon as the parent step finishes, rather than waiting for child job steps to be created.

Change 3416138 on 2017/05/01 by Ben.Marsh

	Fix Fortnite cook failures. Not sure what the exact problem is here, but my hunch is that discarded "const" causes blueprint compile failures due to not being able to connect output pins between nodes for overloaded functions, or something like that.

Change 3416309 on 2017/05/01 by Ben.Marsh

	Build: Fix node names for static analysis.

Change 3416360 on 2017/05/01 by Ben.Marsh

	UBT: Remove unused arguments to PrepForUATPackageOrDeploy for Windows.

Change 3416398 on 2017/05/01 by Daniel.Lamb

	Cook on the fly NetworkFileServerConnection Remove FileModifiedCallback delegate when the connection is closed.

	#test Cook on the side shootergame.

Change 3416826 on 2017/05/01 by Daniel.Lamb

	Added callback to game when files are requested reload from networkfileserver.
	Game will need to unload / reload effected objects.
	Working on simple reload capability in shootergame.

	#test Cook on the side shootergame with reloading

Change 3417983 on 2017/05/02 by Ben.Marsh

	EC: Remove warning for lines not matching p4 tag syntax when running preflights; multi-line descriptions in shelved changelists break this pattern.

Change 3418747 on 2017/05/02 by Steve.Robb

	Fix for const pointer properties.
	Fix for UHT debugging manifest.
	Test added for pointer properties.

Change 3420477 on 2017/05/03 by Gil.Gribb

	UE4 - Removed check from windows async IO layer.

[CL 3421020 by Ben Marsh in Main branch]
2017-05-03 14:18:32 -04:00
Ben Marsh
9bf24bb276 Merging //UE4/Release-4.16@3405315 to Release-Staging-4.16 (//UE4/Release-Staging-4.16)
#rb none

[CL 3409211 by Ben Marsh in Staging-4.16 branch]
2017-04-26 08:28:56 -04:00
Thomas Sarkanen
1102c5e12c Copying //UE4/Dev-AnimPhys to //UE4/Dev-Main (Source: //UE4/Dev-AnimPhys @ 3384744)
#lockdown Nick.Penwarden

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

Change 3294073 on 2017/02/09 by Thomas.Sarkanen

	Delete old location of FriendViewModel.h that did not get picked up correctly in the merge

Change 3354003 on 2017/03/20 by Thomas.Sarkanen

	Back out changelist 3353914

Change 3355932 on 2017/03/21 by Thomas.Sarkanen

	Back out changelist 3354003

	Reinstating merge from Main:

	Merging //UE4/Dev-Main to Dev-AnimPhys (//UE4/Dev-AnimPhys) @ CL 3353839

Change 3358776 on 2017/03/22 by Ori.Cohen

	Recreate physics when changing mobility of components - fixes debug rendering issue

	#JIRA UE-39328

Change 3360075 on 2017/03/23 by James.Golding

	Back out changelist 3358776, as it was made after smoke testing. Will re-submit after copy to main.

Change 3362695 on 2017/03/24 by Thomas.Sarkanen

	Use correct extender when building menus for AnimationEditor, SkeletalMeshEditor & SkeletonEditor

	#jira UE-41100 - Persona code calling incorrect extenders when building menus.

Change 3362696 on 2017/03/24 by Thomas.Sarkanen

	Facial animation experimental feature now pops up restart editor toast

	#jira UE-40989 - User is not prompted to restart the editor when enabling the Facial Animation Importer

Change 3362699 on 2017/03/24 by Thomas.Sarkanen

	Enable snapping for translation in animation viewports

	#jira UE-39747 - Translating sockets in Persona is not affected by Snap Options
	#jira UE-39748 - Translating bones in Persona is not affected by Snap Options

Change 3362700 on 2017/03/24 by Thomas.Sarkanen

	Curve source nodes now dont update their source title if the source is a pin

	The title of the node is not recached when the pin default changes, so we cant display it in the title

	#jira UE-40108 - When changing a Curve Source Node doesn't update source binding name when typed in

Change 3362721 on 2017/03/24 by Thomas.Sarkanen

	CVar r.SkeletalMeshLODBias no longer affects meshes in animation viewports

	#jira UE-35733 - GSkeletalMeshLODBias affects render LOD in Persona

Change 3362724 on 2017/03/24 by Thomas.Sarkanen

	Fix animation preview scene keyboard bindings

	Also moved advanced preview scene into its own module

	#jira UE-41505 - Pressing the hotkey I and O do not hide the floor and environment if the Preview Scene Settings tab isn't opened.

Change 3362783 on 2017/03/24 by Ori.Cohen

	Fix incorrect locking and check when an editor static shape is changed. Originally this code assumed it would only get called at runtime, where there is only 1 shape. In the case of the async scene and static shapes - there are two shapes and if you update the body setup in the editor this will crash.

Change 3362796 on 2017/03/24 by Ori.Cohen

	Fix welded capsules not using the right rotation

	#JIRA UE-41546

Change 3362803 on 2017/03/24 by Ori.Cohen

	Recreate physics when changing mobility of components - fixes debug rendering issue

	#JIRA UE-39328

Change 3363013 on 2017/03/24 by Thomas.Sarkanen

	Fix CIS issue

Change 3363202 on 2017/03/24 by Ori.Cohen

	Fix bad #endif

Change 3363295 on 2017/03/24 by Ori.Cohen

	Remove bWelded and use WeldParent everywhere. This fixes a bad case where a kinematic is returned as the root welded of simulated children.

	#JIRA UE-40783

Change 3363435 on 2017/03/24 by Jon.Nabozny

	Fix infinite jump on client when Jump Max Hold Time is not 0.

	#jira UE-41004

Change 3363451 on 2017/03/24 by Jon.Nabozny

	Fix USkeletalMeshComponent::PoseTickedThisFrame to use a frame counter instead of world time (which isn't changed while paused).

	#jira UE-39567

Change 3363504 on 2017/03/24 by Jon.Nabozny

	Fix SCE_NP_MATCHING2_REQUEST_EVENT_SEARCH_ROOM_A to treat result data as linked list instead of array.
	(Code originally came from SCE via UDN)

	#jira UE-41049

Change 3363532 on 2017/03/24 by Ori.Cohen

	Change default to SkipSimulatedBones.

	#JIRA UE-41404

Change 3363537 on 2017/03/24 by Ori.Cohen

	Remove the unsupported option of HideBone with DisableCollision. If we want this in the future we can add it.

	#JIRA UE-30826

Change 3363681 on 2017/03/24 by Jon.Nabozny

	Reapply 3292286 after it was clobbered by 3360002
	(Only clobbered in Ocean).

	#jira UE-37512

Change 3363722 on 2017/03/24 by mason.seay

	Updated map to improve testing

Change 3365351 on 2017/03/27 by Thomas.Sarkanen

	Fix non-PCH CIS errors

	#jira UE-43335 - CIS fail: 'FAdvancedPreviewSceneCommands is not a class name

Change 3365422 on 2017/03/27 by Thomas.Sarkanen

	Fixed skinned mesh LOD not updating in editor under various physics-related circumstances

	#jira UE-42013 - Skeletal meshes with recently generated LODs will not change LODs in viewport

Change 3365423 on 2017/03/27 by Thomas.Sarkanen

	Fix ensure when setting Spline IK Bone Axis  to 'None'

	Node is currently not in use, so I've avoided deprecating this for now. Values should be preserved.

	#jira UE-39723 - Ensure when setting Bone Axis to None in Spline IK

Change 3365424 on 2017/03/27 by Thomas.Sarkanen

	Fix control rigs being convertable to possessables

	Also prevent 'export to anim sequence' button from appearing on standard level sequences

	#jira UE-42070 - Crash converting a control rig to Possessable

Change 3365425 on 2017/03/27 by Thomas.Sarkanen

	When selecting bones that are non-required, we dont render gizmos or text labels

	#jira UE-35737 - Bone labels flicker between two locations when removing from LOD levels in Persona

Change 3365426 on 2017/03/27 by Thomas.Sarkanen

	Fixed foot placement IK doing line traces on worker threads

	Also exposed const access to required bones array (the proxy already does this, so I figure the instance should get it too).
	Note: Node is not actually used

	#jira UE-43179 - Fix FAnimNode_FootPlacementIK doing line trace on worker thread

Change 3365428 on 2017/03/27 by Thomas.Sarkanen

	Skeleton selection no does not lag behind choice made in viewport

	#jira UE-42236 - Mesh Overlay always lags behind actual selection

Change 3365429 on 2017/03/27 by Thomas.Sarkanen

	Fix anim BPs that contain state machines having blank palettes

	#jira UE-42172 - AnimBP Palette is blank on existing AnimBPs

Change 3365435 on 2017/03/27 by Jurre.deBaare

	Undoing Channel selection in Paint mode does not work
	#fix use duplicated CDO object instead of CDO directly
	#jira UE-42621

Change 3365436 on 2017/03/27 by Jurre.deBaare

	Functionless undo/redo transactions created when importing Alembic file and changing conversion settings
	#fix use duplicated CDO object instead of CDO directly
	#jira UE-40347

Change 3365437 on 2017/03/27 by Jurre.deBaare

	Ensure that HLOD cannot be set up in sub-levels
	#fix added functionality to check whether or not a level is used as a sub/streaming level in any other content, and if so show a widget similar to the checkout notice to inform the user why the hlod outliner is disabled
	#jira UE-40301

Change 3365438 on 2017/03/27 by Jurre.deBaare

	2D Blendspace breaks when aligning samples in a straight line
	#fix for some reason the number of samples to considerate was limit to 3 (old code) so removed it since it doesn't make sense
	#jira UE-42744

Change 3365439 on 2017/03/27 by Jurre.deBaare

	Color View Mode doesn't reset when closing/reopening editor
	#fix added a delegate to OnEditorClose to ensure we can reset the viewport modes while they still exist, this issue would happen if the user closes the editor with mesh paint mode open, exiting the mode would only happen after destructing most of the editor
	#jira UE-42466

Change 3365440 on 2017/03/27 by Jurre.deBaare

	LOD Model field scrubbing is very sensitive
	#fix made sure that max slider value is also driven by data
	#jira UE-42980

Change 3365441 on 2017/03/27 by Jurre.deBaare

	Replacing an asset in a sequence player node does not register in undo history
	#fix added transaction for dropping anim assets on player nodes
	#jira UE-39152

Change 3365442 on 2017/03/27 by Jurre.deBaare

	Crash on Mac importing some alembic files
	#fix disable multithread abc file reading with HDF5 backend
	#jira UE-39783

Change 3365443 on 2017/03/27 by Jurre.deBaare

	Moving over Alembic feature: "Add support for 'finding' materials according to the face-set names in abc files"

Change 3365444 on 2017/03/27 by Jurre.deBaare

	Moving over Alembic fixes:
	- Time offset issues > changed how we determine frame indices and frame steps
	- Incorrect tangent issues > enforce tangent calculation during skeletal mesh import
	- Automatically set recompute tangent flag on skeletal mesh sections

Change 3365451 on 2017/03/27 by Jurre.deBaare

	CIS: include needed for GetTransientPackage

Change 3365460 on 2017/03/27 by Jurre.deBaare

	CIS: apparently CIS wants explicit cast to UObject

Change 3365463 on 2017/03/27 by Jurre.deBaare

	CIS: final fix, was actually UPackage include missing ugh

Change 3365486 on 2017/03/27 by Thomas.Sarkanen

	Fix case error in include for Linux builds

Change 3365499 on 2017/03/27 by James.Golding

	Fix editing collision settings sometimes not 'sticking' - wait until after LoadProfileConfig (which modified Profiles array) to copy to 'SavedData'
	Fix FCollsiionProfileData typo
	#jira UE-42490

Change 3365500 on 2017/03/27 by Jurre.deBaare

	Turning on LOD Model Painting does not copy paint to other LODs on Skeletal Mesh
	#fix neede to pre edit / post edit the skeletal mesh to ensure the color buffers were re-initialised
	#jira UE-42637

Change 3365501 on 2017/03/27 by James.Golding

	Disable rather than hide anim picker when no mesh assigned
	#jira UE-35537

Change 3365505 on 2017/03/27 by James.Golding

	Fix USkinnedMeshComponent::FindClosestBone ignoring bRequirePhysicsAsset, because BodySetupIndexMap.FindRef would return 0 if bone not present
	https://udn.unrealengine.com/questions/353125/uskinnedmeshcomponentfindclosestbone-does-not-resp.html
	#jira UE-43061

Change 3365515 on 2017/03/27 by Jurre.deBaare

	Using Alt+Click to break Transition node connections cannot be undone using the Undo command
	#fix added transactions to breaking node links
	#jira UE-39068

Change 3365528 on 2017/03/27 by Jurre.deBaare

	Blendspaces don't update to reflect sync marker changes that have occurred on animations in the blend
	#fix added validation on blendspaces when removing or adding sync markers in animation editor
	#jira UE-39814

Change 3365535 on 2017/03/27 by Jurre.deBaare

	Camera moves at the same time as erasing paint when clicking Paint settings and back into Viewport
	#fix lock camera if erasing as well
	#jira UE-42474

Change 3365539 on 2017/03/27 by Jurre.deBaare

	Painting on animation sequence paints on invisible T-pose skeleton
	#fix during painting enforce bUseRefPoseOnInitAnim so you're always painting on a ref-pose skeletal mesh
	#jira UE-42484

Change 3365545 on 2017/03/27 by Jurre.deBaare

	Fill Tool does not fill the mesh with the selected Texture Weight Index when used in Weight Vertex Painting
	#fix added function to generate color according to texture weight settings and index, and fill using that color when the editor is in texture weight mode
	#jira UE-43091

Change 3365549 on 2017/03/27 by Jurre.deBaare

	CIS: include fix

Change 3365555 on 2017/03/27 by Jurre.deBaare

	Missing change from 3365545

Change 3365561 on 2017/03/27 by Jurre.deBaare

	Missing change from 3365545

Change 3365918 on 2017/03/27 by Ori.Cohen

	PR #3424: fix compile error when PHYSX_MEMORY_STATS=1 (Contributed by kayama-shift)

	#JIRA UE-43337

Change 3366234 on 2017/03/27 by Ori.Cohen

	Moved call to UpdateHasValidBodies into OnRegister. Original suggested fix came from github, but I think the bounds need to update even if OnCreatePhysics isn't called.

	#JIRA UE-43339

	#pr 3427

Change 3367252 on 2017/03/28 by Jurre.deBaare

	Vertex Weight Painting options are no longer present in MeshPaint mode
	#fix implemented singleton pattern for paint mode settings to ensure customization works correctly
	#jira UE-43357

Change 3367340 on 2017/03/28 by Jurre.deBaare

	GC fix for recent changes to painting / alembic settings

Change 3367445 on 2017/03/28 by Thomas.Sarkanen

	Fix fallout from Main merge

	OrionEditor needs to depend on the new AdvancedPreviewScene module.

Change 3367741 on 2017/03/28 by Ori.Cohen

	Remove unused physics warning when moving simulated object during physics

	#jira UE-41465

Change 3368072 on 2017/03/28 by Ori.Cohen

	Removed collision aggregates from ISMC collision. This is not a good candidate for aggregates as the bounding boxes generated could be huge (for example several trees that are very far away). This fixes perf regression from the PhysX 3.4 upgrade

	#JIRA UE-42956

Change 3368479 on 2017/03/28 by Ori.Cohen

	Fix GetClosestPoint incorrectly considering welded bodies.

	#JIRA UE-39329

Change 3368620 on 2017/03/28 by Lina.Halper

	Added code comment

	#rb:none
	#jira: UE-38836

Change 3368752 on 2017/03/28 by mason.seay

	Updated test map since UE-338836 came back as by design

Change 3369370 on 2017/03/29 by James.Golding

	Fix StaticMesh Editor drawing complex collision if 'use simple as complex' is enabled
	Add separate options for showing simple and complex collision in StaticMesh Editor
	#jira UE-42844

Change 3369438 on 2017/03/29 by Lina.Halper

	Fix issue where it updates more often when you give too high update rate - i.e. 60

	#jira: UE-38844
	#code review: Laurent.Delayen

Change 3369462 on 2017/03/29 by Thomas.Sarkanen

	Add preview mesh to animation blueprints

	Auto set preview mesh for animation assets and animation blueprints based off meshes.

	#jira UE-40032 - Creating animation assets from right-clicking skel mesh results in showing incorrect mesh in Persona

Change 3369463 on 2017/03/29 by Thomas.Sarkanen

	We now select current preview mesh in the preview mesh dropdown

Change 3369464 on 2017/03/29 by Thomas.Sarkanen

	Ticks now appear properly on anim sequence scrub bar

	#jira UE-41197 - No additional ticks appear on the timeline when you zoom in

Change 3369465 on 2017/03/29 by Thomas.Sarkanen

	Persona now depends publicly on SkeletonEditor

	GitHub PR #3431 from kayama-shift

	#jira UE-43344 - GitHub 3431 : Persona module must depend on SkeletonEditor publically

Change 3369466 on 2017/03/29 by Thomas.Sarkanen

	Blueprints are now only dirtied if edited properties are from objects in the Blueprint's package

	#jira UE-38956 - Changing Bone Transform between World and Local Location dirties Anim Blueprints

Change 3369467 on 2017/03/29 by Thomas.Sarkanen

	Tweaked combo box alignment for world/local transform

	Appearance is now closer to that of the level editor

Change 3369469 on 2017/03/29 by Thomas.Sarkanen

	Prevent switching to unsupported widget modes when editing control rigs

	#jira UE-42557 - When in Animation Mode, if you select a controller with the translation gizmo active, when you select a non animation controller the gizmo renders incorrectly

Change 3369588 on 2017/03/29 by Thomas.Sarkanen

	Make import data and thumbnail data transactional

	#jira UE-41579 - Undo not working for several Asset Details options in Skeletal Mesh editor (Persona)

Change 3369609 on 2017/03/29 by Thomas.Sarkanen

	Montages are now correctly initialized when created

	They can be used straight away without first opening them in the montage edtior.
	Moved initialization of composite sections from SMontageEditor to AnimMontageFactory.

	#jira UE-41219 - Animation montages created via Right click Create montage, that aren't opened in persona will not animate when used in an AnimBP

Change 3369610 on 2017/03/29 by Thomas.Sarkanen

	Fixed anim class being set by name, causing duplicate-named anim BPs to be incorrectly resolved

	#jira UE-39833 - SkelMesh Component > Anim Class does not handle identical AnimBP names

Change 3369647 on 2017/03/29 by Ori.Cohen

	Fix mass debug not working when moving components in the editor.

	#JIRA UE-43437

Change 3369875 on 2017/03/29 by Ori.Cohen

	Added the call into overlap instead of computePenetration when possible. There are edge cases that exist when computePenetration returns false but overlap returns true. Originally we were using computePenetration for all overlaps to make it consistent. However, computePenetration doesn't handle trimeshes correctly in certain cases. The reason for this is so that we can at least resolve a known issue with overlap events with complex collision. Nvidia may give us a flag for computePenetration to not do back-face culling which would give us a more consistent result.

	#JIRA UE-25923

Change 3370144 on 2017/03/29 by Lina.Halper

	Fix on the retargeting child anim BP

	#rb: Martin.Wilson
	#jira: UE-39928

Change 3371480 on 2017/03/30 by James.Golding

	Changes by BryanG at Nvidia required to get them up and running with plugins that override some skeletal mesh stuff.

	#jira UE-42132

Change 3371484 on 2017/03/30 by Thomas.Sarkanen

	We now propagate thread safety flags to child Animation Blueprints

Change 3371486 on 2017/03/30 by Thomas.Sarkanen

	Fixed crash and effector selection issues for two bone IK

	Crash occured when selecting the root bone as the end of the chain.
	Viewport selection was not working at all as we werent creating any selection proxy actors any more.

Change 3371497 on 2017/03/30 by Thomas.Sarkanen

	Added warning when Sequencer tries to write to properties that have changed type

	#jira UE-42098 - Sequencer writes rotation data to transform properties, causes assert

Change 3371614 on 2017/03/30 by Martin.Wilson

	Clean up deprecated property value after load so we dont get extra anim blueprint references

	#jira UE-42501

Change 3371619 on 2017/03/30 by James.Golding

	Fix CIS by removing unneeded UNREALED_API from FImportSkeletalMeshArgs

Change 3372452 on 2017/03/30 by Jon.Nabozny

	Add flag to CharacterMovementComponent to determine whether or not character should Sweep while using NavWalking, instead of relying on GenerateOverlaps flag.

	#jira UE-36546

Change 3373043 on 2017/03/30 by Lina.Halper

	- Consolidating to FastLerp to simply code
	- Added comment on FastLerp as the result is not normalized

	#rb: Michael.Noland, David.Hill

Change 3373292 on 2017/03/30 by Jeff.Farris

	Made Actor.DispatchPhysicsCollisionHit virtual.

	(Copied CL 3261103 from Robo Recall to Dev-AnimPhys)

Change 3373293 on 2017/03/30 by Jeff.Farris

	Added PhysicalAnimationComponent.GetBodyTargetTransform

	(Copied 3256175 from RoboRecall to Dev-AnimPhys)

Change 3373318 on 2017/03/30 by Jeff.Farris

	Added option for components to opt out of physics impulses on damage.

	(Copied CL 3282585 from RoboRecall to Dev-AnimPhys)

Change 3374064 on 2017/03/31 by Thomas.Sarkanen

	Renaming curves in animations is now saved properly

	Guids were not being set, so loading code obliterated the rename after an editor restart

	#jira UE-40582 - Curve name is not updated when user changes it in persona editor.

Change 3374175 on 2017/03/31 by Thomas.Sarkanen

	Two bone IK UI consistency fixes

	Completely removed all bone select actors. They have a terrible UX anyway.
	We now rely only on our custom hit proxy and use a unified path to generate effector locations to draw and manipulate.

	#jira UE-42359 - Two Bone IK modifying effector location from viewport when bone is not set

Change 3374216 on 2017/03/31 by Martin.Wilson

	Clear raw curve data during cooking + change Paragon game code so that it reads from the compressed curve data on Anim Sequences, not the raw data

	#jira UE-37897

Change 3374253 on 2017/03/31 by Thomas.Sarkanen

	Supplementary fix to CL 3371497

	Adding name exposure for property types that we support

Change 3374298 on 2017/03/31 by Jeff.Farris

	Code change from nVidia that improves physX perf (afterIntegration time).

	(Copied CL 3302239 from Robo Recall to Dev-AnimPhys)

Change 3374432 on 2017/03/31 by Lina.Halper

	Make sure AcitveBoneIndices contains parent

	#jira: UE-14597
	#rb: Martin.Wilson
	#code review: Benn.Gallagher, Alexis.Matte, James.Golding

Change 3374836 on 2017/03/31 by Jon.Nabozny

	Fixup hits returned before start of trace in raycast_capsule.

	This change is copied from CL-3297212

	#jira UE-42532

Change 3375195 on 2017/03/31 by Lina.Halper

	resave animation sequence for increasing info to warning

	#code review: Thomas.Sarkanen
	#jira: UE-40643

Change 3375282 on 2017/03/31 by Lina.Halper

	Fix odin content for animation : resave animation sequence for increasing info to warning

	#code review: Thomas.Sarkanen
	#jira: UE-40643

Change 3375288 on 2017/03/31 by Lina.Halper

	reverting code of degrading warning to info to avoid warning

	#jira: UE-40643

Change 3375865 on 2017/04/01 by Lina.Halper

	fix build error

Change 3375868 on 2017/04/01 by Lina.Halper

	fix build warning on shadow var

	#code review: Thomas.Sarkanen

Change 3376283 on 2017/04/03 by Thomas.Sarkanen

	Reworked, more generic property path handling in object change listener

	This allows all paths (auto vs manual key) to use the same code path, as well as regularizing the special-case handling of structs and arrays (and combinations thereof).
	The gist of the new implementation is to traverse the property path until we come across any property that satisfies our crirtera (exposed function, Interp flag etc.)
	Tweaked PropertyHandleToPropertyPath to correctly handle the slightly different way FPropertyNodes are arranged inside IPropertyHandle chains.
	IPropertyHandle chains contain arrays in a manner designed for display in the property editor, e.g. Container.Array.Array[ArrayIndex].StructInner. We need to collapse adjacent array properties as we are looking for Container.Array[ArrayIndex].StructInner to form a well-formed 'property path'.
	Small tweak to FPropertyChangedParams::GetPropertyValue. This is to handle property paths that end in an array (e.g. Struct.Array[0]).

	#jira UE-42271 - Pressing enter while the spine is in IK doesn't set any keys

Change 3376320 on 2017/04/03 by Benn.Gallagher

	Merging from OR39 - Fix for clothing perf regressions due to LOD switching leaving simulation enties in the clothing solver
	#jira OR-36926

Change 3376413 on 2017/04/03 by Benn.Gallagher

	Merge from OR - Fixes to stability due to component space being the simulation space, games like Paragon treat the mesh and component transforms differently and cause issues with added energy in the system.
	#jira OR-36927

Change 3376421 on 2017/04/03 by Benn.Gallagher

	Missed file from OR cloth fixes merge

Change 3376456 on 2017/04/03 by Lina.Halper

	Resave fortnite animation to remove warning

	#rb: none

Change 3376479 on 2017/04/03 by Jon.Nabozny

	Touch PhysXLibs to ensure physx links properly.
	(Needed for CL-3374836)

Change 3376610 on 2017/04/03 by Martin.Wilson

	Fix for crash when reimporting lodded mesh with virtual bones

	#jira UE-43557

Change 3376618 on 2017/04/03 by Jurre.deBaare

	Mesh Paint decrement rate is too slow when used with hotkeys
	#fix change way we increase/decrease brush value
	#jira UE-43402

Change 3376650 on 2017/04/03 by Benn.Gallagher

	Converted clothing asset editor warnings into toasts + logs so they are more discoverable by the user.
	#jira UE-41739

Change 3376771 on 2017/04/03 by Benn.Gallagher

	Fixed clothing selection dropdowns to no longer get out of sync with actual state (if the binding fails it falls back to the "None" selection correctly internally)
	#jira UE-41737

Change 3378117 on 2017/04/04 by Thomas.Sarkanen

	Prevented ensure by reverting to default unit vectors if zero-sized lookat/lookup vectors are specified

	Also added a warning to inform users of the issue.

	#jira UE-43360 - Enabling Use LookUp Axis causes handled ensure to occur

Change 3378118 on 2017/04/04 by Thomas.Sarkanen

	Fix 2-bone IK flickering

	First changed non-triangular range check to be >= instead  of >. Also removed fallback to doubled-back as this singularity also occurs at min stretch + float epsilon (which caused the flicker). We are OK to call ACos with out-of-range values as it clamps internally and the subsequent calculations work in these degenerate cases.

	#jira UE-43525 - Mesh Flicker when Two Bone IK is stretched

Change 3378192 on 2017/04/04 by Benn.Gallagher

	Trivial fix to clothing dropdowns to unbind clothing assets when switching

Change 3378206 on 2017/04/04 by Thomas.Sarkanen

	Fix IncludeTool static analysis errors

	Traced this back to the checkin that moved advanced preview scene into its own module. Further refined this to be the dependency on SharedSettingsWidgets. Simplest solution was to move the details customization back into the DetailsCustomizations module.

	#jira UE-43563 - //UE4/Dev-AnimPhys: Compile IncludeTool Static analysis Win64 completed with 1 error

Change 3378207 on 2017/04/04 by Thomas.Sarkanen

	Fix static analysis warning

Change 3378267 on 2017/04/04 by Benn.Gallagher

	Disabled "Accurate" wind mode selection for 4.16 by hiding enum option for windmode. Looks like there are some simulation issues that need resolved. Wind will act as it always has for 4.16.

Change 3378268 on 2017/04/04 by Benn.Gallagher

	Fixed bounds calculation on clothing to stop dissapearances or flickering at the edge of the screen.
	#jira UE-40407

Change 3378342 on 2017/04/04 by Jurre.deBaare

	Bone LOD preview doesn't get update if change removed bones array directly in Skeletalmesh editor
	#fix ensure that we update the skeleton tree when changes to the bones are made
	#misc made sure the reapply button its visibility is dynamic
	#misc made sure we always re-add previously removed bones when necessary
	#jira UE-40500

Change 3378374 on 2017/04/04 by Thomas.Sarkanen

	Fixed animation not working for dynamically-bound wheeled-vehicle anim instances

	Vehicle anim instance now looks for a wheeled vehicle component when it initializes.

	#jira UE-41048 - Set Anim Instance Class no longer works with Wheeled Vehicle Pawns

Change 3378518 on 2017/04/04 by Jon.Nabozny

	Fix jump height becoming frame dependent when JumpMaxHoldTime > 0.

	#jira UE-23695

Change 3378538 on 2017/04/04 by Martin.Wilson

	Speculative fix for unreproducable crash on loading animations

	#jira OR-37157

Change 3378592 on 2017/04/04 by Jurre.deBaare

	Mesh painting tools not working outside of QAGame
	#fix required a direct loadmodule call

Change 3378622 on 2017/04/04 by Jurre.deBaare

	CIS shadow variable fix

Change 3378742 on 2017/04/04 by Thomas.Sarkanen

	Fixed crash entering PIE in Orion

Change 3378907 on 2017/04/04 by Benn.Gallagher

	Re-added wind adaptiive effects to legacy wind path.
	Fixed math error in damping calculations (log2/loge).
	#jira UE-42044

Change 3379240 on 2017/04/04 by Jon.Nabozny

	Fix SkeletalMeshComponent GetWeldedBodies not returning actual Skeletal Bodies

Change 3379415 on 2017/04/04 by Jon.Nabozny

	Fix Skeletal Meshes imported with non-identity transform from reapplying transform when simulation is enabled / disabled.

	#JIRA UE-32598

Change 3379502 on 2017/04/04 by Lina.Halper

	Mirroring issue with flipping rotation due to not counting scale

	#jira: UE-33646, UE-34489
	#rb: Ori.Cohen
	#code review: Zak.Middleton

Change 3380544 on 2017/04/05 by Thomas.Sarkanen

	Fix warning spam when playing back UMG sequences animating visibility

	Reduced runtime overhead to a simple size check. This catches 90% of problem issues with much less runtime overhead. It would be well worth getting an FName-based type check working at some point, although we would need speciall case enum handling.
	Also removed message log usage in shipping/test builds.

	#jira UE-43621 - Large number of Sequencer warnings occur after opening Paragon in Pie - Property type mismatch for property 'Visibility'. Expected 'uint8', found 'ESlateVisibility'.

Change 3380605 on 2017/04/05 by Benn.Gallagher

	Fix clothing simulation to correctly index a master pose component for clothing pose data. Fixes integration blocking crash in UT when picking up the flag which sets a master pose mid-game.
	#jira UE-43624

Change 3381025 on 2017/04/05 by Jon.Nabozny

	Change ensure in UpdateKinematicBonesToAnim to ensureMsgf so we can track down potential content issues.

Change 3381475 on 2017/04/05 by Lina.Halper

	Fix crash on creating montage and setting slot node

	#jira: UE-43698
	#rb: Ori.Cohen

Change 3381558 on 2017/04/05 by Lina.Halper

	Better clean up of flipping issue of quaternion issue

	#jira: UE-33646, UE-34489
	#rb: Zak.Middleton

Change 3381789 on 2017/04/05 by Jon.Nabozny

	Revert InitAnim changes from CL-3379415 to fix cook warnings.
	(Will have proper fix for 4.17 instead).

Change 3381978 on 2017/04/05 by Aaron.McLeran

	#jira UE-43654 Fixing oculus audio SDK sample rate issue

Change 3383181 on 2017/04/06 by Lina.Halper

	Remove copy right of Dual quaternion since we no longer uses

	#code review:Leslie.Nivison

Change 3383283 on 2017/04/06 by Ori.Cohen

	Fixed missing invalidation for body setup when modifying materials

	#JIRA UE-43680

Change 3383602 on 2017/04/06 by Lina.Halper

	Fixed scroller in retargeting window

	#jira: UE-43736

Change 3384369 on 2017/04/07 by Jurre.deBaare

	Wrong bone is sometimes highlighted in skeleton editor
	#fix new behaviour caused the user to try and select a bone if we didn't find on through hit proxies
	#jira UE-43735

Change 3384744 on 2017/04/07 by Jon.Nabozny

	Fix body rotation being killed on load.

	#JIRA UE-43771

[CL 3385232 by Thomas Sarkanen in Main branch]
2017-04-07 16:51:51 -04:00