Commit Graph

19 Commits

Author SHA1 Message Date
ryan durand
0f0464a30e Updating copyright for Engine Runtime.
#rnx
#rb none


#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869210 via CL 10869511 via CL 10869900
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870549 by ryan durand in Main branch]
2019-12-26 14:45:42 -05:00
steve robb
14cab21e0c Deprecating ARRAY_COUNT and changing it to UE_ARRAY_COUNT.
Replicated from CL# 7924370.

#rb none


#ROBOMERGE-OWNER: steve.robb
#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 9279060 via CL 9279063
#ROBOMERGE-BOT: (v443-9013191)

[CL 9279836 by steve robb in Main branch]
2019-09-28 08:19:35 -04:00
Ben Marsh
7598af0532 Update copyright notices to 2019.
#rb none
#lockdown Nick.Penwarden

[CL 4662404 by Ben Marsh in Main branch]
2018-12-14 13:41:00 -05:00
Ben Marsh
ea340d3fbf Copying //UE4/Fortnite-Staging to Dev-Main (//UE4/Dev-Main)
#rb none
#lockdown Nick.Penwarden

[CL 4567513 by Ben Marsh in Main branch]
2018-11-14 19:05:13 -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
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
Ben Marsh
cfc9f4775f Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3805092)
#lockdown Nick.Penwarden
#rb none

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

Change 3623004 by Ben.Marsh

	Fix RemoteExecutor not taking the remote machine specs into account.

Change 3623172 by Ben.Marsh

	UGS: Fix "More Info..." button not using P4 server override.

Change 3628820 by Ben.Marsh

	PR #3979: Get working directory from task element, not tool node (Contributed by nullbus)


Change 3630424 by Graeme.Thornton

	Make the AES key parameter const in FAES::EncryptData()

Change 3632786 by Steve.Robb

	FString constructor fixed to not take an ignored void* parameter, which can be misleading.

Change 3639534 by Ben.Marsh

	Remove old P4.NET library. Doesn't seem to be used by anything.

Change 3640536 by Steve.Robb

	GitHub #4007 : Delete unnecessary specialization of MakeArrayView

	#jira UE-49617

Change 3641155 by Gil.Gribb

	UE4 - Speculative fix for problem with summary reading in FAsyncArchive2.

Change 3643932 by Ben.Marsh

	Add an example build script for updating the version number, then compiling and staging the editor and tools to an output directory. Optionally submits at the end (requires -Submit argument).

Change 3644825 by Ben.Marsh

	Use VSWHERE to find the location of MsBuild.exe, if available.

	https://github.com/EpicGames/UnrealEngine/pull/3879#issuecomment-329688645

Change 3647395 by Ben.Marsh

	Allow compiling of monolithic binaries from BuildEditorAndTools.xml, using the -set:GameTarget=FooGame -set:TargetPlatforms=Win32;Win64 options.

Change 3650300 by Ben.Marsh

	UAT: Remove code that deletes cooked data on a failed cook. The engine should write packages out transactionally now (by writing to a temporary file and moving into place), and deleting the cooked data just prevents post-mortem analysis.

Change 3650856 by Robert.Manuszewski

	Adding checks to prevent FlushAsyncLoading and LoadObject/LoadPackage from being called from any threads other than the game thread

Change 3651022 by Gil.Gribb

	UE4 - Possible fix for mysterious ensure indicating problematic recursion in the pak precacher.

Change 3658331 by Steve.Robb

	Fix for the parsing of large integer values.

Change 3661958 by Gil.Gribb

	UE4 - Fixed rare hang in task graph.

Change 3664021 by Robert.Manuszewski

	Fix for a potential GC crash caused by stale pointer in AnimInstanceProxy

	See https://udn.unrealengine.com/questions/392432/gc-issue-uaniminstancemontageinstances-empty-but-u.html

Change 3664254 by Steve.Robb

	Use ANSI allocator when thread sanitizer is enabled.  This allows the generation of more accurate and meaningful reports.

Change 3664436 by Steve.Robb

	Use TUniquePtr instead of a thread-unsafe TSharedPtr to move data between threads.

Change 3666461 by Graeme.Thornton

	Improvements to signing/encryption key embedding and runtime access
	 - Changed method of embedding key into the executable to make it more secure
	 - Added FAESKey class to wrap a 32 byte key

Change 3666462 by Graeme.Thornton

	Cut ShooterGame AES key down to 32 characters

Change 3677560 by Ben.Marsh

	PR #4074: UBT: Add include and library-related fields to module JSON output (Contributed by adamrehn)


Change 3683534 by Steve.Robb

	Refactoring of enum/struct lookup during hot reload.

Change 3683754 by Steve.Robb

	Alignment fixes to allow int64 on 32-bit platforms
	Support for integral types in IsAligned.
	Static asserts so that alignment functions will no longer be called with non-intergal, non-pointer types.
	Some fixes to existing code.

Change 3686670 by Steve.Robb

	Fix for thread-unsafe modification of static array in FString::ParseIntoArrayWS.

Change 3687540 by Ben.Marsh

	Fix all UBT/UAT output going to stderr rather than stdout.

Change 3688931 by Gil.Gribb

	UE4 - Critical fix for a rare race condition in the pak file async IO layer.

Change 3690000 by Graeme.Thornton

	Manual copy of 4.18 CL 3687869

	Make UBT include the destination INI file for a given hierarchy if it exists
	Renamed VSCode enum value to VisualStudioCode, so it matches the source accessor plugin name

Change 3690030 by Graeme.Thornton

	VSCode fixes
	 - Source Code Accessor plugin changes. Add new interface method to open a solution at a given path
	 - GameProjectUtils now uses the source navigation API to open solutions rather than hardcoding which solution file types to look for
	 - Various fixes for vscode project file generation

	#jira UE-50554

Change 3690885 by Steve.Robb

	Atomic reads in FReferenceControllerOps<ESPMode::ThreadSafe>.

Change 3691052 by Steve.Robb

	Free stats thread on shutdown.

Change 3695138 by Steve.Robb

	AsConst helper function added.

Change 3696627 by James.Hopkin

	Changed player controller iterator typedefs to use TWeakObjectPtr rather than the deprecated TAutoWeakObjectPtr

	(review-3606695)

Change 3697099 by Steve.Robb

	GitHub #4105 : Removed redundant class access modifier

Change 3697154 by Steve.Robb

	Removal of deprecated functions in delegates.
	Mutable lambdas to can now be bound to delegates.

Change 3697180 by Steve.Robb

	GitHub #4115 : Incorrect CPPMacroType used for USoftClassProperty

Change 3697239 by Steve.Robb

	Allow TArray::Insert to take an array with any allocator type.

Change 3697269 by Steve.Robb

	RelocateConstructItems instead of MoveConstructItems.

Change 3697558 by Steve.Robb

	New _GetRef functions for TArray, which return a reference to the newly-added element.
	Unit tests for these functions.

Change 3699776 by Steve.Robb

	TSAN warning suppression around IAsyncReadRequest::bCompleteAndCallbackCalled.

Change 3702397 by Steve.Robb

	TIsTrivial type trait.

Change 3702569 by Steve.Robb

	Allow a TGuardValue to be assigned to a different type from the one being guarded.

Change 3706644 by Robert.Manuszewski

	Different stack ingore count for development builds for FArchiveStackTrace

Change 3709272 by Steve.Robb

	Removal of redundant UpdateVertices, which causes a race condition on the renderer thread.

Change 3709452 by Robert.Manuszewski

	Fixed a bug where with async time limit set to a low value the async loading could hang because the linker would keep reloading the preload dependencies

Change 3709454 by Robert.Manuszewski

	Added command line option -NOEDL to disable EDL

Change 3709487 by Steve.Robb

	Remove use of PLATFORM_HAS_64BIT_ATOMICS, which is always 1.

Change 3709645 by Ben.Marsh

	Fix race condition between multiple instances of UBT trying to write out the XML config cache.

Change 3711193 by Ben.Marsh

	Add an editor setting for the shared DDC location to use.

	#jira UE-51487

Change 3713811 by Steve.Robb

	Update .modules files after a hot reload.
	Don't check for directory timestamp changes as a way of detecting new files if hot reloading with a makefile, as this is already done during makefile invalidation checks.
	Pass hotreload flags around in UBT instead of relying on global state.

	This fixes the hot reload iteration speed regression without also regressing the fix to UE-42205.

	#jira UE-51472

Change 3715654 by Steve.Robb

	GitHub #4156 : Fixed not compiling template function Algo::UpperBoundBy.

Change 3718782 by Steve.Robb

	TSharedPtr, TSharedRef and TWeakPtr assignment are now implemented as copy-and-swap to avoid an invalid smart pointer state being visible to any destructors being called.

Change 3720830 by Steve.Robb

	Initial import of TAtomic object wrapper, which guarantees atomic access to an object.

Change 3720881 by Steve.Robb

	FCompression ThreadSanitizer data race fixes.

Change 3722640 by Graeme.Thornton

	Guard network platform file heartbeat function with the socket critical section. Stop heartbeat from causing a crash when firing during async loading.

	#jira UE-51463

Change 3722655 by Steve.Robb

	Don't null name table because it's already zeroed at startup.
	Some tidy-ups.

Change 3722754 by Steve.Robb

	Thread sanitizer fix.
	Small typo fix.

Change 3722849 by Graeme.Thornton

	Improve "caching file" message in networkplatformfile so it says "Requesting file..." and is only output when we actually request the file from the server

Change 3723081 by Steve.Robb

	TAtomic is now aligned to the underlying integer type.
	TAtomic will now static assert with a better error message when given an unsupported type.
	Define added for the maximum platform-supported atomic type, and used instead of a (wrong) hardcoded number.
	Misc renames.

Change 3723270 by Ben.Marsh

	Include /d2cgsummary argument when running UBT with -Timing.

Change 3723683 by Ben.Marsh

	Do not include documentation in the generated project files by default. Suspect that the 30,000 UDN files that get added to the solution take up memory and degrate performance.

Change 3725422 by Robert.Manuszewski

	When serializing compressed archive with multithreaded compression enabled, wait for the oldest async task instead of spinning.

Change 3725735 by Robert.Manuszewski

	Making all CheckDefaultSubobjects related functions const

Change 3726167 by Steve.Robb

	FMinimalName::IsNone added.

Change 3726458 by Steve.Robb

	TAtomic will no longer instantiate for types which are not exactly a size supported by the platform layer.

Change 3726542 by Ben.Marsh

	UGS: Always include the project filename in the editor build command. The project may not be in one of the .uprojectdirs paths.

Change 3726595 by Ben.Marsh

	Allow building multiple game targets in the example BuildEditorAndTools.xml script.

Change 3726724 by Ben.Marsh

	Fix ambiguities in calculating root directory. (GitHub #4172)

Change 3726959 by Ben.Marsh

	Make sure that AutomationTool uses the same list of preprocessor definitions when compiling *.target.cs files as UnrealBuildTool does.

Change 3728437 by Steve.Robb

	VisitTupleElements now supports invocation of a functor taking arguments from multiple tuples in parallel.
	Some improved documentation.

	NOTE: This is a backward-incompatible change to VisitTupleElements.  Any existing calls will need their arguments swapping.

Change 3732262 by Gil.Gribb

	UE4 - Fixed rare hangs in the task graph.

Change 3732755 by Steve.Robb

	Stats TSAN fixes.
	Optimizations to FCycleCounter::Start() to only read the stat name once.

Change 3735000 by Robert.Manuszewski

	Always preload the AssetRegistry module on startup. even if EDL is disabled.

	Even without EDL, if the async loading thread is enabled the AssetRegistryModule will otherwise be loaded from the ASL thread and that will assert.

Change 3735292 by Robert.Manuszewski

	Made sure component visualizer is removed from VisualizersForSelection when UnregisterComponentVisualizer() is called otherwise it may cause crashes when the engine terminates.

Change 3735332 by Steve.Robb

	Refactoring of UDelegateProperty::Identical() to clarify logic.
	Fixed UMulticastDelegateProperty::Identical() to compare the bound function names.
	PPF_DeltaComparison removed, as it doesn't seem useful.

Change 3737960 by Graeme.Thornton

	VSCode - Add launch task for generating project files for the given folder

Change 3738398 by Graeme.Thornton

	Make Visual Studio source code accessor's module hotreload handler pass the 'save all files' message to the current accesor, rather than direct to the visual studio accessor

	#jira UE-51451

Change 3738405 by Graeme.Thornton

	VSCode: Format c/cpp settings strings using comment path formatting function

Change 3738928 by Steve.Robb

	Fix for lack of null conditional operators in some older Monos. (replicated from CL# 3729574 in Release-4.18)

	#jira UE-51842

Change 3739135 by Ben.Marsh

	Fix being unable to package projects in a folder called "Wolf". This is only a restricted folder for Epic's Perforce history.

	#jira UE-51855

Change 3739360 by Ben.Marsh

	UAT: Fix issue with P4PORT setting not being parsed correctly.

Change 3745959 by James.Hopkin

	#core Added ImplicitConv for safe upcasts to a specific required type, e.g. deduced delegate payload types

Change 3746125 by Steve.Robb

	FName ThreadSanitizer fixes.

Change 3747274 by Steve.Robb

	TSAN fix for FMediaTicker::Stopping.

Change 3747618 by Steve.Robb

	ThreadSanitizer data race fix for FShaderCompileThreadRunnableBase::bForceFinish.

Change 3747720 by Steve.Robb

	ThreadSanitizer fix for FMessageRouter::Stopping.

Change 3749207 by Graeme.Thornton

	First pass of CryptoKeys plugin. Allows creation/editing/cycling of AES/RSA keys.

Change 3749323 by Graeme.Thornton

	Fix UAT crash when only -targetplatform is specifiied

Change 3749349 by Steve.Robb

	TSAN_SAFE guards around LockFreeList to silence ThreadSanitizer.

Change 3749617 by Steve.Robb

	Logf static_assert for formatting string enabled.

Change 3749897 by Steve.Robb

	FDebug::LogAssertFailedMessage static assert for formatting string enabled.

Change 3754011 by Steve.Robb

	Static asserts that the allocator supports move.
	Move-enabled our allocators which don't support move.

Change 3754227 by Ben.Marsh

	Fix build command line in generated projects missing a space before the compiler version override.

	#jira UE-52226

Change 3754562 by Ben.Marsh

	PR #4206: Replace deprecated wsprintf with secure swprintf for Bootstrap executable (Contributed by jessicafalk)


Change 3755616 by Graeme.Thornton

	Runtime code for using the new crypto ini files to define signing/encryption keys

	#jira UE-46580

Change 3755666 by James.Hopkin

	Used ImplicitConv to remove Casts being used for up-casts

	#review-3745965

Change 3755671 by Graeme.Thornton

	Add log message in unrealpak to say which config file system it is using for crypto keys

Change 3755672 by Graeme.Thornton

	Updating ShooterGame with new CryptoKeys based security setup

Change 3756778 by Ben.Marsh

	Add support for running multiple jobs simultaneously on a single builder.

	When running job or agent setup, the --num-slots=X parameter defines the number of steps that can run simultaneously (EC procedures pass in the resource step limit). A lock file is created under the workspace root (D:\Build) and a reservation file is created for the first slot that can be allocated (slot-1, slot-2, etc...). The slot number is used to define the workspace name that should be used.

Change 3758498 by Ben.Marsh

	Re-throw exceptions when a file cannot be deleted when cleaning a target.

Change 3758921 by Steve.Robb

	ThreadSanitizer fix to FThreadSafeStaticStatBase::HighPerformanceEnable to do a relaxed atomic load on access.
	DoSetup() now returns the newly-allocated pointer, instead of reloading it from memory.

Change 3760599 by Graeme.Thornton

	Added missing epic header comment to some new source files

Change 3760642 by Steve.Robb

	ThreadSanitizer fix for concurrent access to GMainThreadBlockedOnRenderThread.

Change 3760669 by Graeme.Thornton

	Improvement to OpenSSL based signing key generator. Generate a full RSA key then steal the primes from it, rather than generating the primes manually.

	Added a test mode to the cryptokeys commandlet to test signing key generation

Change 3760711 by Steve.Robb

	ThreadSanitizer fixes to GIsRenderingThreadSuspended.

Change 3760739 by Steve.Robb

	ThreadSanitizer fix for FQueuedThread::TimeToDie.

Change 3760763 by Steve.Robb

	ThreadSanitizer fix for GRunRenderingThreadHeartbeat.
	Removal of unnecessary/dangerous initializer for GMainThreadBlockedOnRenderThread.

Change 3760793 by Steve.Robb

	Some simple refactoring to remove some volatile reads of BufferStartPos and BufferEndPos.

Change 3760817 by Steve.Robb

	ThreadSanitizer fixes for FAsyncWriter::BufferStartPos and BufferEndPos.

Change 3761331 by Josh.Engebretson

	UnrealBuildTool enforcement of Development and Debug configurations in existing .csproj

	#jira UE-52416

Change 3761521 by Steve.Robb

	ThreadSanitizer fixes for FEvent::EventStartCycles and EventUniqueId.

Change 3763117 by Graeme.Thornton

	PR #3722: Optimising FPaths::IsRelative() (Contributed by jovisgCL)


Change 3763358 by Graeme.Thornton

	Ensure that all branches within FGenericPlatformMisc::RootDir() produce an absolute path with no duplicate slashes
	Remove relative->abs conversion of root dir from FPaths::MakeStandardFilename(), now that we know RootDir() always returns an absolute path

	Derived from the content of this PR:
	PR #3742: Treat RootDirectory the same way as Standardized (Contributed by TroutZhang)


Change 3764058 by Graeme.Thornton

	Generate a .code-workspace file for the current workspace. Allows foreign projects to "mount" the UE4 folder so that the engine tasks are avaible, and all engine source is visible to VSCode for searching purposes

	#jira UE-52359

Change 3764705 by Steve.Robb

	Better handling of whitespace in ImportText_Internal() for set and map properties.
	Containers are now emptied upon import failure, to avoid leaving bad container states (unhashed, partial data).
	Fix to USetProperty's temp buffer size to avoid buffer overruns.
	Duplicate map keys are now skipped during import, same as USetProperty's behavior.

Change 3764731 by Steve.Robb

	Don't re-run UHT if only source files have changed in the same folder as headers.  This was already done for hot reload, but there's no reason why it should be limited to that.

Change 3765923 by Graeme.Thornton

	VSCode - "taskName" -> "label" for C# build tasks

Change 3766018 by Steve.Robb

	constexpr constructor for TAtomic.

Change 3766037 by Steve.Robb

	Misc tidyings in HotReload.cpp.

Change 3766046 by Steve.Robb

	ThreadSanitizer fixes to ENamedThreads::RenderThread and ENamedThreads::ENamedThreads_Local.

Change 3766288 by Steve.Robb

	Improved efficiency of adding/removing elements to UGCObjectReferencer::ReferencedObjects.

Change 3766374 by Josh.Engebretson

	Fix issue with ini quoted value comparison

	#jira UE-52066

Change 3766532 by Josh.Engebretson

	PR #3680: Added NetSerialize to FDateTime fixing UE-22533 (Contributed by druhasu)
	#jira UE-46156

Change 3766740 by Steve.Robb

	TMultiMap::Append added.

Change 3767523 by Steve.Robb

	ThreadSanitizer fix for UE4Delegates_Private::GNextID.

Change 3767601 by Steve.Robb

	ThreadSanitizer fix for FStats::GameThreadStatsFrame.

Change 3770567 by Ben.Marsh

	Add a FAnnotatedArchiveFormatter interface which allows querying structural type information that may not be in binary archives.

Change 3770826 by Ben.Marsh

	Move StructuredArchive implementation into Core, so primitive types can implement serialization overloads for it.

Change 3770875 by Steve.Robb

	Redundant UScriptStruct::PostLoad removed, which was causing a race condition in async loading.  This was re-establishing the CppStructOps, but that is unnecessary because native classes cannot change as a result of a load - only BP structs can, and they don't have CppStructOps.

Change 3772167 by Ben.Marsh

	Add a context-free binary formatter that can serialize tagged data. This functions as a lower-overhead binary intermediate format for JSON data.

Change 3772248 by Steve.Robb

	ThreadSanitizer fixes to FMalloc call counters.

Change 3772383 by Ben.Marsh

	Separate archive metadata from FArchive into FArchiveContext, so it can be safely exposed to consumers of FStructuredArchive.

Change 3772906 by Graeme.Thornton

	TextAssetCommandlet - Utility commandlet for testing/converting to text asset format

Change 3772932 by Ben.Marsh

	Fix "String:" prefix not being stripped from escaped string values.

Change 3772942 by Graeme.Thornton

	Add experimental setting to enable in-editor text asset format functionality
	Add "export to text" option into the content browser asset actions context menu

Change 3772955 by Ben.Marsh

	Add a new "stream" compound type to FStructuredArchive, which allows serializing a sequence of elements similarly to an array, but without serializing an explicit size. Allows passing through data to an underlying binary archive without breaking compatibility.

Change 3772963 by Ben.Marsh

	Allow querying record keys and stream lengths from annotated archive formatters, since these archives have markup for field boundaries.

Change 3773010 by Graeme.Thornton

	Added CORE_API to FArchiveFromStructuredArchive
	Gave text asset format experimental option a slightly less random tooltip comment

Change 3773057 by Ben.Marsh

	Add a flag to FArchive to determine whether the archive is text (IsTextFormat()).

	Add support for seeking within FArchiveFromStructuredArchive. For text formats, data is serialized to an in-memory buffer, with names and objects serialized as indices into an array. For non-text formats, data is serialized directly to the underlying archive.

	Also rename FStructuredArchive::TryEnterSlot() to TryEnterField().

Change 3773118 by Steve.Robb

	TSignedIntType and TUnsignedIntType type traits for getting an integer type of a given size.

Change 3773122 by Steve.Robb

	TAtomic fixes for pointer arithmetic.
	TSignedIntType used instead of reimplementing its own trait.

Change 3773123 by Steve.Robb

	Unit tests for TAtomic.

Change 3773138 by Steve.Robb

	Run numeric tests on integer types instead of basic tests.
	Fix for compiler warnings when subtracting from unsigned atomics.

Change 3773166 by Steve.Robb

	Refactoring of arithmetic operations into its own class, then basing the pointer and integral versions on that.

Change 3774216 by Gil.Gribb

	UE4 - Fix rare crash in the pak precacher immediately after unmounting a pak file.

Change 3774426 by Ben.Marsh

	Copy all C# tools to a staging directory before compiling them. This prevents access violations when compiling tools like iPhonePackager that reference DotNETCommon, and ensures we strip NotForLicensees folders out of them all.

	See: https://answers.unrealengine.com/questions/726010/418-will-not-build-from-source.html

Change 3774658 by Ben.Marsh

	Improve error reporting while generating intellisense for project files. Include the name of the target being compiled, and allow project file generation to continue without it.

Change 3775141 by Ben.Marsh

	Always output HTML5 diagnostics at "information" verbosity, to avoid every line being prefixed with "WARNING:" and screwing up the EC postprocessor.

Change 3775459 by Ben.Marsh

	Removing .NET Framework Perforce DLL as runtime dependency of engine third party library. The actual library is linked statically.

Change 3775522 by Ben.Marsh

	UGS: Treat .uproject and .uplugin files as code changes.

Change 3775597 by Ben.Marsh

	Fix post-build steps for plugins not being executed.

	#jira UE-52754

Change 3777895 by Graeme.Thornton

	StructuredArchiveFromArchive - An adapter class for wrapping an existing FArchive with a structured archive

Change 3777931 by Graeme.Thornton

	Refactored FArchiveUObjects serialization code into some static helpers
	Added FArchiveUObjectFromStructuredArchive which allows the adaption of a structured archive into an FArchive that supports the extra UObect serialization functions for weak/soft pointers

Change 3777942 by Graeme.Thornton

	Added missing CORE_API to FStructuredArchive::FStream
	Added FStructuredArchive::FSlot insertion operator for char
	Added specialization of TArray<uint8> serializer for structured archives which serializes the contents as one value

Change 3778084 by Graeme.Thornton

	Adding FPackageName::GetTextAssetPackageExtension() to access the file extension we use for text asset files

Change 3778096 by Graeme.Thornton

	Add a constructor to FArchiveUObjectFromStructuredArchive that takes a slot and passes it to the base class

Change 3778389 by Josh.Engebretson

	Fix an optimization issue with CPU benchmarking
	Add better support for debugging/testing local rocket builds

	UDN Link: https://udn.unrealengine.com/questions/400909/command-scalability-auto-gives-inaccurate-cpu-benc.html

	#jira UE-52192

Change 3778701 by Josh.Engebretson

	Ensure plugin content folders are mounted consistently.  Fixes TryConvertFilenameToLongPackageName failing to work on plugin assets

	UDN Link: https://udn.unrealengine.com/questions/276386/tryconvertfilenametolongpackagename-fails-for-plug.html

	#jira UE-40317

Change 3778832 by Chad.Garyet

	Adding enterprise path support for PCB's for UGS

Change 3780258 by Graeme.Thornton

	TextAssetCommandlet - Accumulate timings for loading packages and saving packages

Change 3780463 by Graeme.Thornton

	CryptoKeys improvements
	 - Enable CryptoKeys plugin by default
	 - Attempt to inherit settings from the old system by default
	 - Hide ini/index encryption settings from packaging settings and just inherit previous values into new system

	Minor UBT change to remove a trailing comma from the end of encryption/signing key binary strings

Change 3780557 by Ben.Marsh

	Fix LoginFlow module not being precompiled for the binary release.

Change 3780846 by Josh.Engebretson

	Improve filename to long package name resolution when provided a relative path

Change 3780863 by Ben.Marsh

	UAT: Add a better error message when a C# project has an invalid reference.

Change 3780911 by Ben.Marsh

	Update the BuildEditorAndTools.xml script to allow submitting archived binaries to Perforce.

	The "Submit To Perforce For UGS" node creates a zip of all the binaries that have been built, and submits it to the stream specified by the 'ArchiveStream' argument.

Change 3780956 by Josh.Engebretson

	Add support for ! (RemoveKey) config command to UBT

	UDN Link: https://udn.unrealengine.com/questions/397267/index.html

	#jira UE-52033

Change 3782957 by Robert.Manuszewski

	UE4 - Fixed a linear search in EDL that caused performance problems for very large maps.

Change 3784503 by Ben.Marsh

	Optimizations for FStructuredArchive:

	* Store the depth explicitly in element objects, to avoid having to loop through the scope stack to find it.
	* Prevent shrinking of arrays when removing elements.
	* Add an inline allocator to the scope and container stacks.

Change 3784700 by Ben.Marsh

	Remove the inline allocator from FStructuredArchive; checking whether the inline or backup allocator is being used is slower than just allocating up-front.

Change 3784989 by Ben.Marsh

	Compile out all the FStructuredArchive validation code when WITH_TEXT_ARCHIVE_SUPPORT = 0.

Change 3786860 by Gil.Gribb

	UE4 - Remove no buffering flag from windows async IO because it disabled the disk cache entirely.

Change 3787159 by Ben.Marsh

	Guard against UE4.0 backwards compatibility path when determining if an engine is a source distribution.

Change 3787493 by Josh.Engebretson

	Parallel pak generation now uses MaxDegreeOfParallelism option which is now set to the number of CPU cores
	Moved cryptography settings parsing out of threaded CreatePak method to avoid concurrency issue in ConfigCache.TryReadFile
	Fix for multiple threads parsing ini keys (PR 3995)

	#PR 3995
	#jira 52913
	#jira 49503

Change 3787773 by Steve.Robb

	Fix for missing final values from FOREACH_ENUM_ macros.

Change 3788287 by Ben.Marsh

	TBA: Add checks in debug builds that key names in maps and records for FStructuredArchive are unique.

Change 3788678 by Ben.Marsh

	Fix compile error due to inability to instantiate TArray<> of forward declared struct. Convert set of key names to an array to avoid including Set.h in public header for FStructuredArchive.

Change 3789353 by Graeme.Thornton

	Removed unused/rotten modes from TextAsset commandlet.
	Used existing "-iterations=n" switch to control a global iteration over the given command. Useful for performance testing.

Change 3789396 by Ben.Marsh

	Move code to validate container keys/sizes into DO_GUARD_SLOW checks, and allocate container metadata instances dynamically to fix problems with references to things not declared in headers that can't be included from StructuredArchive.h

Change 3789772 by Ben.Marsh

	Always strip trailing slashes from the end of paths specified by .build.cs files; they can cause quoted paths to be escaped on the command line.

Change 3790003 by Ben.Marsh

	TBA: Rename FStructuredArchive::EElementType::Object to FStructuredArchive::EElementType::Record.

Change 3790051 by Steve.Robb

	PIE is disabled during a hot reload.
	Hot reload in editor is disabled during PIE.
	Hot reload from IDE is deferred until after PIE is exited.
	Compiling multiple times before a hot reload (e.g. compiling multiple times in PIE) will now load the most recent change.

	#jira UE-20357
	#jira UE-52137

Change 3790709 by Steve.Robb

	Better move support for TVariant.
	EVariantTypes switched over to using an enum class to aid debugger visualization.

Change 3791422 by Ben.Marsh

	TBA: Return the type of a field from an annotated archive formatter at the point that we enter it, rather than querying all the time.

Change 3791489 by Graeme.Thornton

	TBA: Change StructuredArchiveFromArchive adapter to use the archive.Open() result directly, now that it's a slot and not a record

Change 3792344 by Ben.Marsh

	Improvements to base64 encoding library.

	* Now supports encoding and decoding with ANSICHAR and WIDECHAR implementations.
	* Added support for decoding base-64 blobs without padding marks.
	* Added support for decoding into pre-allocated buffer.
	* Added constexpr functions for determining the encoded and maximum decoded size of an input buffer.
	* Prevent writes past the end of allocated buffer (no longer need to manually remove padding bytes).

Change 3792949 by Ben.Marsh

	TBA: Rename FAnnotatedArchiveFormatter to FAnnotatedStructuredArchiveFormatter.

Change 3794078 by Robert.Manuszewski

	Fixing a crash that could happen when FGCObjects were constructed and destructed when shutting down the engine

	#jira UE-52392

Change 3794413 by Ben.Marsh

	TBA: Remove the element type parameter to SetScope(). It isn't really needed; we can just assume the element ID correctly identifies the item on the stack.

Change 3794731 by Ben.Marsh

	TBA: Optimize creation of stack elements for empty slots in FStructuredArchive. This saves a lot of bookkeeping when serializing a large number of individual fields. Since only one slot can be active at a time (and it only exists temporarily, until we write into it), we can just store the element ID assigned to it in a member variable.

Change 3795081 by Ben.Marsh

	UBT: Move LinuxCommon.cs into Platform/Linux folder.

Change 3795137 by Ben.Marsh

	UBT: Allow modules to specify private compiler definitions from the build.cs file, only visible within that module (via the "PrivateDefinitions" property).

Change 3795247 by Ben.Marsh

	Fix missing header when creating a new interface from the editor new code wizard.

	#jira UE-53174

Change 3796025 by Graeme.Thornton

	Fixed some deprecated "Definitions" warnings in OpenCV build files

Change 3796103 by Graeme.Thornton

	Disable experimental text asset option - it does nothing useful yet.

Change 3796157 by Graeme.Thornton

	Fix path type mismatch in visual studio source code accessor meaning that the DTE comms wouldn't identify a running instance of VS as having the current solution open.

	#jira UE-53206

Change 3796315 by Ben.Marsh

	Move Formatter to the correct position for initializer.

	#jira UE-53208

Change 3797082 by Ben.Marsh

	UAT: Work around for exception thrown by launching cook with "-platform=Android_ETC1 -targetplatform=Android -cookflavor=ETC1". Anrdoid_ETC1 is not a valid platform (it's a cook platform), and can't be parsed by UAT.

	#jira UE-53232

Change 3799050 by Ben.Marsh

	Make UnrealPak.version files writable for Mac and Linux.

Change 3801012 by Graeme.Thornton

	VSCode - Update source accessor to use code workspace as it's target, rather than just the project directory

Change 3801214 by Gil.Gribb

	UE4 - Remove assert to work around minor problem with lock free lists.

	#jira UE-49600

Change 3801219 by Steve.Robb

	WeakObjectPtrs now warn when casting away const.

Change 3801299 by Graeme.Thornton

	Fix quote issue with foreign project build tasks on PC

Change 3803292 by Graeme.Thornton

	Fix crash on startup when using cook-on-the-side. Force a flush of the asset registry background scanning when creating the cook-on-the-side platform registries

Change 3803559 by Steve.Robb

	TSAN fix for FMalloc::MaxSingleAlloc.

Change 3803735 by Graeme.Thornton

	Last set of cryptokeys changes
	 - Added some comments for editor exposed settings
	 - Split "encrypt assets" option into "encrypt uassets" and "encrypt all assets"

Change 3803929 by Ben.Marsh

	UGS: Show an in-place error panel when a project fails to open, allowing the user to retry and have their tabs saved instead of creating a modal dialog.

Change 3624590 by Steve.Robb

	AddReferencedObjects now generates a compile error with containers of UObject*s where the UObjectType is forward-declared, as these which won't be added to the reference collector.
	Tidy-up of existing calls to AddReferencedObjects.

Change 3629473 by Ben.Marsh

	Build: Rename the option for embedding source server information in PDB files for installed engine builds.

Change 3632894 by Steve.Robb

	VARARG* macros deprecated and usage replaced with variadic templates.

Change 3640704 by Steve.Robb

	MakeWeakObjectPtr added, which deduces a TWeakObjectPtr type from a raw pointer type.
	Fix to TWeakObjectPtr's constructor which implicitly removed const.
	Fixes to everything which didn't compile as a result.

Change 3650813 by Graeme.Thornton

	Removed FStartupPackages and associated code

Change 3651000 by Ben.Marsh

	Return the stack size from FPlatformStackWalk::CaptureStackBacktrace() rather than checking for the first null pointer, to prevent truncated callstacks if parts of the stack are zeroed out.

	#jira UE-49980

Change 3690842 by Steve.Robb

	FPlatformAtomics::AtomicRead added - needs optimizing.
	AtomicRead() used in FThreadSafeCounter::GetValue().

Change 3699416 by Steve.Robb

	Fix to debugger visualization of TArray with a TInlineAllocator or TFixedAllocator.
	Improved readability of TSparseArray visualization.

Change 3720812 by Steve.Robb

	Atomic functions for 8-bit and 16-bit.
	Android, Linux and Switch implementations now just use the Clang implementation.
	AtomicRead64 deprecated in favor of the int64* AtomicRead overload.

Change 3722698 by Steve.Robb

	VS debugger visualizers for TAtomic.

Change 3732270 by Steve.Robb

	Relaxed stores and loads.

Change 3749315 by Graeme.Thornton

	If UAT is invoked with platforms in both the -platform and -targetplatform command line switches, build using all of them rather than just the ones in -targetplatform

	#jira UE-52034

Change 3750657 by Josh.Engebretson

	Fixed issue when debugging editor cook/package and project launch operations

	#jira UE-52207

Change 3758514 by Steve.Robb

	Fixes to FString::Printf having non-literals being passed as its formatting string.

Change 3763356 by Steve.Robb

	ENamedThreads::RenderThread and ENamedThreads::RenderThread_Local encapsulated by getters and setters.

Change 3770549 by Steve.Robb

	Removal of obsolete PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS and PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES.
	Tidy up of existing code which uses it.

Change 3770553 by Ben.Marsh

	Adding structured serialization API to Core/CoreUObject for use with text-based assets.

	* FStructuredArchive abstracts an archive which is made up of compound types (records, arrays, and maps). Values are stored in slots within these types.
	* Records are string -> value dictionaries where the key names can be compiled out in non-editor builds or when WITH_TEXT_ARCHIVE_SUPPORT = 0.
	* Maps are string -> value dictionaries where the key names are present regardless of the build type.
	* Proxy objects are defined to express the context for serialization (FStructuredArchive::FRecord, FStructuredArchive::FArray, FStructuredArchive::FMap, FStructuredArchive::FSlot) which allows basic validation through static typing. These objects act as lightweight handles, and can be cheaply constructed and passed around on the stack. Most serialization to and from the archive is done through these objects.
	* Runtime checks perform additional validation to ensure that serialized data is well formed and written in a forward-only manner, regardless of the underlying archive type.
	* The actual input/output format is determined by a separate interface (FArchiveFormatter). Context validation (always causing matching LeaveArray for every EnterArray, etc...) is done by FStructuredArchive, so implementing these classes is fairly trivial. FArchiveFormatter can be de-virtualized in non-editor builds, where WITH_TEXT_ARCHIVE_SUPPORT = 0.
	* Includes implementations of FArchiveFormatter for binary and JSON formats.

Change 3771105 by Steve.Robb

	Deprecation warnings for PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES and PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS.
	Fix for incorrect warning formatting on Clang platforms.

Change 3771520 by Steve.Robb

	Start moving Clang-using platforms' pre-setup stuff into a Clang-specific header.

Change 3771564 by Steve.Robb

	More common macros moved to the Clang pre-setup header.

Change 3771613 by Steve.Robb

	EMIT_CUSTOM_WARNING_AT_LINE moved to ClangPlatformCompilerPreSetup.h.

Change 3772881 by Ben.Marsh

	Add support for serializing FName and UObject through FStructuredArchive.

	In order to allow custom linker behavior when serializing objects:

	* The constructor to JSON input formatter now takes a delegate to convert a string object name into a UObject pointer.
	* The constructor to tagged binary formatter takes a delegate to serialize a UObject pointer into any form it chooses (likely an integer index into the import table)

	Object and name types are stored as strings in JSON, using an "Object:" or "Name:" prefix to differentiate them from regular strings. Any strings that already contain one of these prefixes are prepended with a "String:" prefix (as is any string that already has a "String:" prefix).

Change 3772941 by Graeme.Thornton

	Make build work when including StructuredArchive.h from core container types
	Added standard header to new files
	Add structured archive serializer for TArray
	Fix bug in structured archive where containers weren't being popped from the scope stack

Change 3772972 by Ben.Marsh

	Add an adapter which presents a legacy FArchive interface to a FStructuredArchive slot.

	Data is serialized into this slot as a stream of elements; raw data is buffered up into fixed size chunks, names and objects are serialized separately.

	When used with FBinaryArchiveFormatter, this should result in all data being passed through to the underlying archive in a backwards compatible way, wiith no additional bookkeeping fields.

Change 3773006 by Ben.Marsh

	Rename FStructuredArchive::FRecord::EnterSlot() to EnterField().

Change 3773013 by Steve.Robb

	bUseInlining target rule added to UnrealBuildTool, which defaults to true, to allow inlining to be disabled for debugging purposes.

Change 3774499 by Ben.Marsh

	Minor fixes for FStructuredArchive related classes:

	* Text-based archive formats are now compiled out when WITH_TEXT_ARCHIVE_SUPPORT = 0.
	* Fixed issue with FTaggedBinaryArchiveFormatter state becoming corrupted when looking ahead at field types.
	* FArchiveFieldName constructor is now explicit, to fix cases where strings were being passed directly to serialize functions.

Change 3774600 by Ben.Marsh

	Add CopyFormattedData() function, which can copy data from one formatter to another. Add a test case to SerializationAPI that converts from data -> JSON -> binary -> JSON -> data.

	This function can be used to implement a generic visitor pattern, by implementing a FArchiveFormatter which receives the deserialized data.

Change 3789721 by Ben.Marsh

	TBA: Split FTaggedBinaryArchiveFormatter into separate classes for reading and writing.

Change 3789920 by Ben.Marsh

	TBA: Support automatic coercion between any numeric types in tagged binary archives. Also report the smallest type that can contain a value, rather than just in32/double.

	#jira UECORE-364

Change 3789982 by Ben.Marsh

	TBA: Change FStructuredArchive::Open() to return a slot, rather than a record, to make it easier to implement a raw FArchive adapter.

Change 3792466 by Ben.Marsh

	TBA: Better handling of raw data in text based assets. Short sequences of binary data are Base64 encoded as a single string. Longer sequences are stored as an array of Base64 encoded lines, push a SHA1 hash to detect cases where the data was merged incorrectly.

	In order to allow inference of the correct type for a field, other fields called "Base64" will be escaped to "_Base64", and any field beginning with "_" will have an additional underscore inserted. Reading files back in reverses these transformations.

Change 3792935 by Ben.Marsh

	TBA: Rename FArchiveFormatter to FStructuredArchiveFormatter for consistency with FStructuredArchive.

Change 3795100 by Ben.Marsh

	UBT: Rename the ModuleRules Definitions property to PublicDefinitions, to make its semantics clearer.

Change 3795106 by Ben.Marsh

	Replace all internal usages of ModuleRules.Definitions, and replace it with ModuleRules.PublicDefinitions.

Change 3796275 by Ben.Marsh

	Fix paths to Version.h includes from resource files.

Change 3800683 by Josh.Engebretson

	Remove WER from Mac and Linux crash reports in favor of unified runtime-xml format
	#jira UE-50073

Change 3803545 by Steve.Robb

	TWeakObjPtr const-dropping assignment fix.
	Fixes to change.

[CL 3805231 by Ben Marsh in Main branch]
2017-12-12 18:32:45 -05:00
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
Ben Marsh
398d16ab8a Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3491552)
#lockdown Nick.Penwarden
#rb none

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

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

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

	#jira UE-44606

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

	Ranged-for support for TChunkedArray.

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

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

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

	Misc readability/standards improvements in stats code.

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

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

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

	Unused property types removed.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

	Simplified templating around bitfield offset calculation.

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

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

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

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

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

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

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

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

	#jira UE-44336

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

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

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

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

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

	UAT: Remove hacky bUseWebSocketNetDriver option.

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

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

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

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

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

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

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

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

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

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

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

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

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

	Merging CL # 3436939 using Dev-Core_To_Dev-LoadTimes:

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

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

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


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

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


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

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

	#jira UE-43673

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

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

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

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

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

	UBT compile fix after the last merge

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

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

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

	Platform fix for FPaths::IsSamePath.

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

	UBT: Fix typo in makefile diagnostic string.

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

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

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

	Another array size fix for generated code.

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

	BuildConfiguration option for static analysis.

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

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

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

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

	Fix whitespace in template file.

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

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

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

	UFunction flags are now viewable in the debugger.

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

	ARRAY_COUNT fix for zero-sized arrays in Clang.

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

	MemoryProfiler2 - Add mprof filename into title bar after opening

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

	Fix comment for FVector::Normalize().

	#jira UE-45369

	#rnx

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

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

	#rnx

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

	Fix name resolution issue with /permissive- in VS2017.

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

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


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

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


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

	Fixed parameter parsing so that arguments are not parsed if not preceeded by a whitespace (for example "-Log" was parsed in "TM-Log")
	#jira UE-33790

Change 3464714 on 2017/05/30 by Robert.Manuszewski

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

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

	UBT: Enable bAdaptiveUnityDisablesOptimizations by default.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

	#test None

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

	Fixed crash in cooker while trying to cook for multiple platforms

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

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

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

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

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


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

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

	 - Missed some files from my previous checkin


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

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

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

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

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

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

	Fix for TPromise's move assignment operator return value.

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

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

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

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

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

	#jira UE-45178

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

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

	#jira UE-41675

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

	Replicated from CL# 3332960:

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

	#jira UE-42205

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

	#jira UE-45716

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

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

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

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

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

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

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

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

	#jira UE-38146

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

	UGS: Fix exception when closing the last open tab.

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

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

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

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

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

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

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

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

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

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

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

	UGS: Update version to 1.101.

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

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

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

	UGS: Update version to 1.102

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

	Remove debug code.

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

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

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

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

	#jira UE-45995

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

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

	#jira UE-46013

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

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

	#jira UE-46014

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

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

	#jira UE-46015

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

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

	#jira UE-45563

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

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

	#jira UE-45563

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

	Handle failures to load *MeshReduction modules.

[CL 3492074 by Ben Marsh in Main branch]
2017-06-15 12:43:54 -04:00
Andrew Grant
c60ffc4e26 Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 3316439)
#lockdown Nick.Penwarden

Change 3315047 on 2017/02/21 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion

	HTN code first check in #UE4

	#rb none
	#test currently unused

Change 3314042 on 2017/02/21 by Jason.Bestimt@Jason.Bestimt_Dev-General

	#ORION_DG - DAILY Main @ CL 3313484

	#RB:none
	#Tests:none

Change 3313355 on 2017/02/20 by Uriel.Doyon@uriel.doyon_PC2_Orion

	Changed the preliminary GPU benchmark workloads to take into account the target workload.
	This is to prevent running the last test with poor performance, risking a driver reset.
	#jira OR-29915
	#rb marcus.wassmer
	#test Run the game triggering benchmarks

Change 3312553 on 2017/02/20 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion

	Implemented a simple AITask for running EQS queries #UE4

	#rb Lukasz.Furman
	#test golden path

Change 3311661 on 2017/02/20 by Jason.Bestimt@Jason.Bestimt_Dev-General

	#ORION_DG - Merge MAIN @ CL 3311631

	#RB:none
	#Tests:none

Change 3310392 on 2017/02/17 by Daniel.Lamb@daniel.lamb_T3905_6612

	Unreal pak now outputs to named log files instead of timestamps.
	#rb Trivial
	#test Cook deploy paragon
	#jira OR-36057

Change 3310196 on 2017/02/17 by Clayton.Langford@RDU-WD-8359_3635_Paragon_DevGen

	Created an event to be fired whenever a GameplayCue is routed that passes all relevant info about that GC. Added a listener in OrionPhasedFunctionalTest that parses that event into a string and stores it in an array to be accessed from a test phase later.

	#test PIE
	#rb Ben.Salem, Adric.Worley

Change 3308437 on 2017/02/16 by Jason.Bestimt@Jason.Bestimt_Dev-General

	#ORION_DG - Merge MAIN @ CL 3308413
	(Prep for Merge up)

	#RB:none
	#Tests:none

Change 3306497 on 2017/02/16 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Fix for compilation issue with USE_MALLOC_STOMP
	#rb none
	#tests compiled with malloc_stomp

Change 3306468 on 2017/02/16 by Cody.Haskell@OrionStream

	#Orion

	- Text popup work for Shield. If you click on an OrionEditableTextBox while running the game with -gfn, a special popup is called. Should do nothing normally.

	#rb none
	#tests PIE, golden path.

Change 3305945 on 2017/02/16 by David.Ratti@David.Ratti_G6218_Orion.Dev-General

	Remove unused/deprecated UGameplayEffectExtension class
	#rb #tests none

Change 3304630 on 2017/02/15 by Jason.Bestimt@Jason.Bestimt_Dev-General

	#ORION_DG - Merge Mieszko stuff from MAIN to DG

	#RB:none
	#TestS:none

	#!codereview: mieszko.zielinski

Change 3303785 on 2017/02/15 by jason.bestimt@Jason.Bestimt_Dev-General

	#ORION_MAIN - Merge 38.3 @ CL 3303224

	#RB:none
	#Tests:none

	#!ROBOMERGE-SOURCE: CL 3303718 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

	#!ROBOMERGE-SAYS: Unresolved conflicts. jason.bestimt, please merge this change by hand.
	//Orion/Dev-General/OrionGame/Content/UI/DeckBuilder/DeckBuilderRoot.uasset - can't integrate exclusive file already opened
	//Orion/Dev-General/OrionGame/Content/UI/Master_Layouts/FrontEnd.uasset - can't integrate exclusive file already opened
	#!codereview: jason.bestimt

Change 3302382 on 2017/02/14 by Alexis.Matte@amatte-orion-dev-general

	Fix import of morph target when there is no animation
	#jira UE-41383
	#jira OR-35859
	#rb none
	#test none

Change 3301538 on 2017/02/14 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 38.3 @ CL 3301392

	#RB:none
	#Tests:none

	#!ROBOMERGE-SOURCE: CL 3301481 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3299985 on 2017/02/13 by Lukasz.Furman@Lukasz.Furman_T7320_OrionStream

	added time limit to "get out of overlap" move for minons to avoid getting stuck in moving to inaccessbile spots
	#jira OR-35834
	#rb Mieszko.Zielinski
	#tests PIE

Change 3299732 on 2017/02/13 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion

	Tweaked the way EQS tests of negative score get normalized #UE4

	#rb none
	#test golden path + math
	#!codereview Lukasz.Furman, John.Abercrombie

Change 3299724 on 2017/02/13 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion

	Generic AI interface extensions #UE4

	Mostly getters

	#rb none
	#test golden path

Change 3299717 on 2017/02/13 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion

	A little tweak to VisLog's point labels drawing - if there's only one point in a set it will no longer append '_0' to the label #UE4

	#rb none
	#test PIE

Change 3299527 on 2017/02/13 by Paul.Moore@OrionWorkspace_Dev-General

	#orion #mms
	- Update libWebSockets binaries to fix Linux server web socket connections.
	#tests matchmaking, mms
	#rb none

Change 3299278 on 2017/02/13 by David.Ratti@David.Ratti_G6218_Orion.Dev-General

	Ability Task Pass: tasks should not broadcast out (back into ability graph) if the owning ability has completed EndAbility.
	#rb none
	#tests pie, golden path

Change 3297884 on 2017/02/10 by Paul.Moore@OrionWorkspace_Dev-General

	#mms
	- Enable SSL module for PS4 (needed by OpenSSL when using WebSockets).
	- Turn on verbose logging for WebSockets module for initial MMS debugging.
	#tests PS4
	#rb none

Change 3296911 on 2017/02/10 by John.Pollard@John.Pollard_T2802_Orion_DevGeneral

	Encode user search string so we support special characters

	#rb RyanG
	#tests Replays

Change 3296746 on 2017/02/10 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 38.3 @ CL 3296659

	#RB:none
	#Tests:none

	#!ROBOMERGE-SOURCE: CL 3296735 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3296705 on 2017/02/10 by Daniel.Lamb@daniel.lamb_T3905_6612

	Added support to the cooker for iterating shared builds.
	#rb Not used yet
	#test Fast cook paragon

Change 3295747 on 2017/02/09 by Paul.Moore@OrionWorkspace_Dev-General

	#orion #mms
	- Integrated WS upgrade header functionality with latest Fortnite libws changes.
	- Added "ws" and "wss" protocols to web socket manager context.
	#rb rob.cannaday
	#!codereview rob.cannaday, james.hopkin
	#tests win64, ps4

Change 3295579 on 2017/02/09 by John.Pollard@John.Pollard_T2802_Orion_DevGeneral

	Fix for replay backward compatibility from John.Pollard
	#tests #rb na

	Merging using OrionScratchReleaseMapping

Change 3295506 on 2017/02/09 by Rolando.Caloca@rolando.caloca_T3903_OrionMainS

	O - Added option for force recompute tangents using skin cache
	#rb none
	#jira UE-41541
	#tests Editor run, toggle, restart

Change 3295461 on 2017/02/09 by Lukasz.Furman@Lukasz.Furman_T7320_OrionStream

	fixed huge interpolation times for linear network smoothing on stationary characters,
	fixed mismatch in movement Base between NavWalking server and Walking client, causing some stationary characters to float in midair

	copy of CL# 3295439
	#jira OR-35664, OR-35572
	#rb none
	#tests game

Change 3294954 on 2017/02/09 by Paul.Moore@OrionWorkspace_Dev-General

	#orion #mms

	- Integrating Fortnite WebSocket changes into Orion that fixes some win10 issues.

	#!codereview rob.cannaday, james.hopkin
	#tests compile ps4, linux, win64
	#rb none

Change 3294947 on 2017/02/09 by Daniel.Lamb@daniel.lamb_T3905_6612

	The generate stub return result is considered as success when saving cooked packages.
	Fixes bug with cooking blueprint nativized packages.
	#rb Trivial
	#test Cook paragon

Change 3293307 on 2017/02/08 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Fix for issue in last checkin - need to clear activecontext regardless
	#rb none
	#tests solo smoke with nullrhi

Change 3293284 on 2017/02/08 by Ryan.Gerleve@Ryan.Gerleve_T3703_Orion

	Allow setting the per-frame time limit for processing queued bunches separately for instant replays, since they may have more strict timing/framerate requirements.

	#rb john.pollard
	#tests golden path

Change 3293148 on 2017/02/08 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Fixed invalid memory access* with nullrhi and suppressed IME warning if no valid window handle exists

	(*Likely only an issue when running with memory validation)

	#rb none
	#tests verified invalid access exception no longer occurs with nullrhi
	#!review-3293149 @Matt.Khulenschmidt

Change 3293103 on 2017/02/08 by Max.Chen@Max.Chen_T4664_Orion_Main

	Sequencer: Fix build

	#jira OR-34918
	#rb none
	#tests none

Change 3292921 on 2017/02/08 by Max.Chen@Max.Chen_T4664_Orion_Main

	Sequencer: Force local player to maintain x fov axis.

	#jira OR-34918
	#rb david.ratti
	#tests Render/PIE a level sequence and test that the camera isn't zoomed in.

Change 3292869 on 2017/02/08 by David.Ratti@David.Ratti_G6218_Orion.Dev-General

	Yet more logging for OR-35448
	#rb #tests none

Change 3292821 on 2017/02/08 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: rob.cannaday
	PS4 libwebsockets build fix
	Update build cs files to point to PS4 file location
	Copy libwebsocket include directory from Fortnite to Orion
	#rb paul.moore
	#tests compile/link Win64 Development Editor, PS4 Debug, Linux Development Server

	#!ROBOMERGE-SOURCE: CL 3292820 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3292277 on 2017/02/08 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge DMM @ CL 3292219

	#RB:none
	#Tests:none

	[CODEREVIEW] paul.moore, benjamin.crocker
	#QAReview

	#!ROBOMERGE-SOURCE: CL 3292276 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3292211 on 2017/02/08 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Pulling new ags library from Release-4.15 and reverting hack that disabled feature for AMD users
	#rb Marcus.Wassmer
	#tests compiled

Change 3292167 on 2017/02/08 by David.Ratti@David.Ratti_G6218_Orion.Dev-General

	Additional logging for OR-35448
	#rb none
	#tests pie

Change 3289462 on 2017/02/06 by Ben.Salem@ben.salem_OrionMain

	Adding priority filters to Automation tests, also commands to filter on priority levels.
	#rb adric worley
	#tests Compiled, ran a few commands to verify it works.

Change 3288801 on 2017/02/06 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 37.2 (38.3) @ CL 3288681

	#RB:none
	#Tests:none

	#!ROBOMERGE-SOURCE: CL 3288800 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3288750 on 2017/02/06 by Daniel.Lamb@daniel.lamb_T3905_6612

	Fixed issue when cooking client and server platforms in single cook some packages would be marked incorrectly because they would be stripped when from client / server.
	#rb Andrew.Grant
	#test Cook paragon

Change 3288624 on 2017/02/06 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Unlocked network version
	#rb #tests na
	OR-35603

Change 3288612 on 2017/02/06 by Daniel.Lamb@daniel.lamb_T3905_6612

	Added more ini settings to the iterative ini blacklist.
	#rb Trivial
	#test Iterative Cook Paragon

Change 3288184 on 2017/02/06 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Downgraded warning to display
	#!review-3288185 @David.Ratti
	#rb none
	#tests none

Change 3287634 on 2017/02/06 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 37.2 @ 3287498

	#RB:none
	#Tests:none

	#!ROBOMERGE-SOURCE: CL 3287619 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3286668 on 2017/02/03 by Alexis.Matte@amatte-orion-dev-general

	Fix a crash when importing a LOD containing different material with less sections
	#rb none
	#test none

Change 3286112 on 2017/02/03 by Alexis.Matte@amatte-orion-dev-general

	Fix the re-import skeletal mesh regression, where all material disapear.
	#jira UE-41294
	#rb matt.kuhlenschmidt
	#test see the jira

Change 3285859 on 2017/02/03 by Daniel.Lamb@daniel.lamb_T3905_6612

	Fixed merge error from last checkin with the DDC commandlet
	#!codereview Matthew.Griffin
	#test DDC commandlet paragon
	#rb None

Change 3285637 on 2017/02/03 by Ryan.Gerleve@Ryan.Gerleve_T3703_Orion

	Pass in the DemoNetDriver pointer to the ConcurrentWithSlateTickTask instead of accessing it from the world in the task itself.

	#rb john.pollard
	#tests golden path

Change 3285479 on 2017/02/03 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion

	Made bot communicate ults when they're up, not when they're using it #Orion

	CL also contains a bit of code shuffling around, preparing ground for HTN plug in

	#rb none
	#test golden path

Change 3285125 on 2017/02/03 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 37.2 @ CL 3285078

	#RB:none
	#Tests:none

	#!ROBOMERGE-SOURCE: CL 3285124 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3283996 on 2017/02/02 by Michael.Trepka@Michael.Trepka_PC_Orion-Dev-General

	Added UGameUserSettings::GetRecommandedResolutionScale() to replace UOrionGameUserSettings::GetDefaultResolutionScale(). This makes things less confusing (UGameUserSettings::GetRecommandedResolutionScale() returns scale recommended based on results of the benchmark and UGameUserSettings::GetDefaultResolutionScale() returns scale based on user settings) and fixes a regression introduced in 3257936 (OR-35544)

	#rb Cody.Haskell
	#tests Tested on PC

Change 3283951 on 2017/02/02 by Daniel.Lamb@daniel.lamb_T3905_6612

	Ensure DDC commandlet calls begincacheforcookedplatformdata correctly.
	#rb None
	#!codereview Matthew.Griffin
	#test DDC commandlet paragon.

Change 3283874 on 2017/02/02 by Lina.Halper@Lina.Halper_Orion

	fix for invalid resource issue

	#rb: none
	#code review: Daniel.Wright
	#tests: compile and editor with wolf

Change 3283621 on 2017/02/02 by Laurent.Delayen@laurent.delayen_Work2016_Orion

	Femme WIP whip aiming for Q ability.

	#rb none
	#tests Femme

Change 3283216 on 2017/02/02 by jason.bestimt@Jason.Bestimt_Dev-General

	#ORION_MAIN - Merge 37.2 @ CL 3282900

	#RB:none
	#Tests:none

	#!ROBOMERGE-SOURCE: CL 3283199 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3282954 on 2017/02/02 by Lina.Halper@Lina.Halper_Orion

	It becomes invalid on the resource, so checking null, but still wip on verifying this with Daniel Wright. He's sick out.

	#rb:none
	#tests: compile
	#code review:Daniel.Wright
	#Jira: OR-35418

Change 3281993 on 2017/02/01 by Daniel.Lamb@daniel.lamb_T3905_6612

	Removed default unattended flag.
	#rb Trivial
	#test PS4 cook run paragon.

Change 3281990 on 2017/02/01 by Daniel.Lamb@daniel.lamb_T3905_6612

	Potential fix for deterministic cooking issue with UMovieSceneSignedObjects.
	#rb Andrew.Grant
	#!codereview Max.Preussner
	#test Cook and run paragon ps4.

Change 3281610 on 2017/02/01 by Laurent.Delayen@laurent.delayen_Work2016_Orion

	AimOffsetLookAt is now thread safe.

	#rb lina.halper
	#tests femme

Change 3281609 on 2017/02/01 by Laurent.Delayen@laurent.delayen_Work2016_Orion

	Fixed 'Convert to AimOffset LookAt' option being broken in Persona.

	#rb lina.halper
	#tests works for Femme now.

Change 3281019 on 2017/02/01 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 37.2 @ CL 3280498

	#RB:none
	#Tests:none

	#!ROBOMERGE-SOURCE: CL 3281018 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3280813 on 2017/02/01 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: matthew.griffin
	Prevent inclusion of NotForLicensees files when staging CrashReportClient config files
	#rb none
	#tests none

	#!ROBOMERGE-SOURCE: CL 3280812 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3279921 on 2017/01/31 by Yanni.Tripolitis@yanni.tripolitis_Dev_General_Cary

	Fixed an error in the Round MF, that was somehow "leaked" into Paragon from Odin.

	#lockdown Billy.Rivers, Adam.Bellefeuil

	#!codereview Tim.Elek

Change 3279178 on 2017/01/31 by Daniel.Lamb@daniel.lamb_T3905_6612

	Fixed up diff files commandlet stack information
	#rb Joe.Conley
	#test Diff cooked packages

Change 3279084 on 2017/01/31 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Merging //UE4/Main at 3276432  through Orion-Staging
	#rb #tests na

Change 3279078 on 2017/01/31 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 37.2 @ CL 3279032

	#RB:none
	#Tests:none

	#!ROBOMERGE-SOURCE: CL 3279077 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3277908 on 2017/01/30 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_37 - Fix for "-game" crash with missing meta data

	#RB:none
	#Tests:none

	[CodeReviewed]: andrew.grant, jamie.dale, mieszko.zielinski

	#!ROBOMERGE-SOURCE: CL 3277901 in //Orion/Release-37/... via CL 3277902 via CL 3277904 via CL 3277905
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3277520 on 2017/01/30 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Workaround for OR-35418
	#!ROBOMERGE: Main
	#rb none
	#tests verified ShortSoloGame test completes without a crash

Change 3277357 on 2017/01/30 by Daniel.Lamb@daniel.lamb_T3905_6612

	Fixed the rebuild lighting commandlet.
	#rb Trivial
	#test Rebuild lighting dev general

Change 3277322 on 2017/01/30 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 37.2 @ CL 3277275

	#RB:none
	#Tests:none

	#!ROBOMERGE-SOURCE: CL 3277296 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3277210 on 2017/01/30 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: andrew.grant
	Non-shipping test changes:

	Fixed issue where with -stdout messages would be duplicated due to FeedbackContextAnsi echoing to stdout by default
	Changed stdout output to postfix instead of trail newlines
	Firstpass of finding and displaying crash callstacks in Orion Test Framework.

	#rb none
	#tests ran test framework with tests that purposefully crashed/checked

	#!ROBOMERGE-SOURCE: CL 3276889 in //Orion/Release-37/... via CL 3277207 via CL 3277208 via CL 3277209
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3276774 on 2017/01/29 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Fix for non-unity issue.
	#tests compiled
	#rb none
	#!ROBOMERGE: Main, DUI

Change 3276594 on 2017/01/28 by Lina.Halper@Lina.Halper_Orion

	Checked in potential fix for nonunity build issue

	#rb:none
	#tests:compile

Change 3275806 on 2017/01/27 by Ben.Salem@ben.salem_OrionMain

	Adding in a checkpointing system for automated test passes where, if a client crashes while running a pass, on reboot and reissue of the automation command the test pass will start off where it left off, skipping the crashing test.
	#rb clayton.langford
	#tests Ran several dozen test passses. Seriously.
	#!codereview steve.white, bob.ferreira, clayton.langford, adric.worley

Change 3275803 on 2017/01/27 by Shaun.Kime@shaun.kime_RDU-WD-9788_oriondevgen

	Paragon has retainer widgets with no World set. When encountered, they can cause the scene list to be desynchronized with the rendering thread.
	This logic resolves the issue by registering a null scene in this case, properly setting the slate scene index for subsequent slate draw calls.

	#rb nick.darnell
	#jira OR-34919
	#TESTS na

Change 3275533 on 2017/01/27 by Max.Chen@Max.Chen_T4664_Orion_Main

	Sequencer: Switch to static pointer to fix crash when tearing down curve editor.

	#jira UE-40796
	#rb andrew.rodham
	#tests none

Change 3275093 on 2017/01/27 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 37.2 @ CL 3273298

	#RB:none
	#Tests:none

	#!ROBOMERGE-SOURCE: CL 3273417 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3274700 on 2017/01/26 by Lina.Halper@Lina.Halper_Orion

	#Anim curve crash on cooking
	- fixed crash during cooking while accessing default value of material
	- this code doesn't have to run during cooking with inactive world, so I'm checking that

	#code review: Daniel.Wright, Chris.Bunner, Jurre.DeBaare
	#rb: none
	#tests: cooking

Change 3274129 on 2017/01/26 by Lina.Halper@Lina.Halper_Orion

	Fixed safer to get featurelevel

	#rb: Daniel.Wright
	#tests: compile/wolf

Change 3274012 on 2017/01/26 by Lukasz.Furman@Lukasz.Furman_T7320_OrionStream

	fixed crash in navigation grids
	#jira OR-35356
	#rb none
	#tests PIE

Change 3273803 on 2017/01/26 by Lina.Halper@Lina.Halper_Orion

	Fixed issue with animation curve getting reset to 0.f
	- the issue is that skeleton contains material flag types, so now it just keeps setting the value
	- even after I fix validation check, it still cleared it due to the material curve not found anymore, so added to support default value setting

	#jira: OR-34563
	#rb: Martin.Wilson, Chris.Bunner, Benn.Gallagher
	#code review: Martin.Wilson, Daniel.Wright
	#tests: wolf, coil

Change 3273257 on 2017/01/26 by Alexis.Matte@amatte-orion-dev-general

	Isolate by material slot instead of section index. Add UI to isolate and highlight material in the material panel
	#rb matt.kuhlenschmidt
	#jira UE-41131
	#tests none

Change 3272527 on 2017/01/25 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: chris.bunner
	Ensure FSceneRenderTargets snapshot copies default clear colors.
	#tests Golden path on lowest and high settings
	#rb None
	#lockdown Jason.Bestimt
	#jira OR-34905

	#!ROBOMERGE-SOURCE: CL 3272507 in //Orion/Release-37.1/... via CL 3272521 via CL 3272525
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3272244 on 2017/01/25 by Rolando.Caloca@rolando.caloca_T3903_OrionMainS

	Show more info when a material instance failed to compile
	#jira OR-34626
	#tests Forced crash in the debugger
	#rb Daniel.Wright

Change 3272109 on 2017/01/25 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: philip.buuck
	Fix bad merge from Main

	#rb Dan.Hertzka
	#tests PIE
	[CodeReviewed] Andrew.Grant
	#lockdown Andrew.Grant

	#!ROBOMERGE-SOURCE: CL 3272106 in //Orion/Release-37.1/... via CL 3272107 via CL 3272108
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3271721 on 2017/01/25 by Lukasz.Furman@Lukasz.Furman_T7320_OrionStream

	jungle minions will spawn navigation obstacles when they are stuck in static geometry, fixed issues with falling off cliffs
	#jira OR-35054
	#rb Mieszko.Zielinski
	#tests PIE

Change 3271432 on 2017/01/25 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 37.2 @ CL 3271043

	#RB:none
	#Tests:none

	#!ROBOMERGE-SOURCE: CL 3271429 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

[CL 3322856 by Andrew Grant in Main branch]
2017-02-25 19:37:22 -05:00
Ben Marsh
5275490168 Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3277940)
#lockdown Nick.Penwarden
#rb none

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

Change 3233612 on 2016/12/13 by Ben.Marsh

	UGS: Fix cases where precompiled binaries are submitted for a content change.

Change 3235584 on 2016/12/14 by Ben.Marsh

	UBT: Deprecate the overridable TargetRules.ShouldUseSharedBuildEnvironment() function; targets should specify which build environment to use by setting the BuildEnvironment field in their constructor instead.

Change 3235741 on 2016/12/14 by Ben.Marsh

	UBT: Deprecate the SetupBinaries() callback on the TargetRules class. Instead of overriding this, targets may override their launch module through the "LaunchModuleName" property in their constructor, and add extra modules to the "ExtraModuleNames" field on the TargetRules object itself.

Change 3238176 on 2016/12/16 by Ben.Marsh

	UBT: New XML config file parser. Now reads once at startup and can be applied to instanced objects rather than global fields, and caches parsed output in a binary form for quicker initialization on subsequent runs.

Change 3238249 on 2016/12/16 by Ben.Marsh

	UBT: Add attribute-driven command line parser.

Change 3238462 on 2016/12/16 by Ben.Marsh

	UBT: Include the Platform, Configuration and Architecture on the TargetRules. Add a constructor which takes the TargetInfo object and deprecate the parameterless one; these fields are currently initialized before invoking the constructor in RulesAssembly.

Change 3238564 on 2016/12/16 by Ben.Marsh

	UBT: Deprecate the ModuleRules constructor which takes a TargetInfo argument. Replace it with a read-only wrapper around the target rules instead, so target-specific configuration options can be read without needing to access global static variables. Also require that it's passed to the base class constructor.

Change 3239919 on 2016/12/19 by Ben.Marsh

	UBT: Remove the "PreferredSubPlatform" property. This is only used for Windows XP support, which is being retired anyway. Having the target define its own architecture is an awkward contractiction to maintain support for, since the target rules are constructed after the architecture already has been determined.

Change 3240061 on 2016/12/19 by Ben.Marsh

	UBT: Remove ThirdPartyHeaderFinder. I don't think anything is using this any more.

Change 3240175 on 2016/12/19 by Ben.Marsh

	UBT: Add the target name and project file location to the target rules.

Change 3240490 on 2016/12/19 by Ben.Marsh

	UAT: Remove Mac staging code that requires UAT to compile and construct .target.cs files when packaging, to check bUseSteam and bUseCEF3 flags. libsteam_api.dylib is now staged at build time by adding it as a bundle resource, CEF3 is already marked as a runtime dependency by CEF3.build.cs, and UnrealCEFSubProcess.app is already marked as a runtime dependency from WebBrowser.build.cs.

Change 3240717 on 2016/12/20 by Ben.Marsh

	UAT: Allow configuring UAT to run as if on a build machine by passing the -buildmachine argument on the command line.

Change 3240718 on 2016/12/20 by Ben.Marsh

	UAT: Remove target-specific properties that are no longer used by staging (bUsesSlate, bUsesCEF3, etc...). This stuff should all be handled inside UBT.

Change 3241002 on 2016/12/20 by Ben.Marsh

	UBT: Move most target configuration settings from UEBuildConfiguration to TargetRules. This encapsulates target specific settings that will allow instancing multiple targets in the future. To facilitate migration of settings to their new location, "UEBuildConfiguration" is now a property that returns the current target rules instance.

Change 3241027 on 2016/12/20 by Ben.Marsh

	Only copy the Steamworks dylib into the app bundle for monolithic builds. For all other times, just add it as a runtime dependency.

Change 3241055 on 2016/12/20 by Ben.Marsh

	UBT: Only store a ReadOnlyTargetRules object on the instanced build target; finalize the configuration before it's instantiated.

Change 3241156 on 2016/12/20 by Ben.Marsh

	Update SwarmInterface.csproj to .NET framework 4.5, to match what all other C# tools are using.

Change 3241205 on 2016/12/20 by Ben.Marsh

	Replace all uses of TargetRules.TargetType with TargetType.

Change 3241881 on 2016/12/21 by Ben.Marsh

	UBT: Remove project file information from UEBuildContext base class. As configurable properties are moved on to the TargetRules object, it will no longer be a dependency to instantiate the platform with this path.

Change 3241895 on 2016/12/21 by Ben.Marsh

	UBT: Remove toolchain support for Windows XP.

Change 3241908 on 2016/12/21 by Ben.Marsh

	UBT: Move settings for windows targets into a WindowsTargetRules class, which is exposed for targets to modify via the TargetRules.WindowsPlatform field.

Change 3242835 on 2016/12/22 by Ben.Marsh

	UBT: Fix multiple binaries being created if plugins specify module names more than once. MfMedia.uplugin has MfMediaFactory listed twice.

Change 3242837 on 2016/12/22 by Ben.Marsh

	Change UE4EditorServices to include MacSystemIncludes rather than Cocoa.h directly; causes FVector to be defined incorrectly in non-unity builds.

Change 3242923 on 2016/12/22 by Ben.Marsh

	Build: Fixes for conforming incremental workspaces:

	* P4 have table is now reset before deleting all the files. This prevents Perforce being out of sync if the delete fails for some reason.
	* Incremental workspaces are skipped when running a clean operation, because they do not have a workspace capture file (causing a full re-sync, always). The "P4 Clean" option is still effective for cleaning these workspaces.

Change 3242961 on 2016/12/22 by Ben.Marsh

	UBT: Move entry points from PreBuildSync() and PostBuildSync() from UEToolChain to UEBuildPlatform, and make the original toolchain versions static. These functions are already at odds with the rest of the data flow within UBT because they rely on global state cached outside the toolchain instance, making assumptions that UBT is only ever going to be invoked with one target that's constructed in the same run and that nothing is being cached (eg. UBT makefiles). Moving them onto UEBuildPlatform simplifies the toolchain lifecycle for other platforms without leaving Mac and IOS any more limited than they were before.

Change 3242981 on 2016/12/22 by Ben.Marsh

	UBT: Remove symbol server handling code into UAT's platform library, since it's never needed from inside UBT.

Change 3242999 on 2016/12/22 by Ben.Marsh

	UBT: Remove the StripSymbols() function from the UEToolChain base class. This functionality is only required by UAT, so it's better suited to being exposed through UAT's modular platform classes.

Change 3243022 on 2016/12/22 by Ben.Marsh

	UBT: Require an instance of the target rules to be able to construct a toolchain in UBT. This will allow configuring toolchain-specific options from the target, using reflection from config files, and the command line.

Change 3243083 on 2016/12/22 by Ben.Marsh

	UBT: Move settings for the Windows compiler version to use onto the Windows-specific target rules.

Change 3243090 on 2016/12/22 by Ben.Marsh

	UBT: Change the third party paths in UEBuildConfiguration to constants. Changing these would not work.

Change 3243423 on 2016/12/23 by Ben.Marsh

	UBT: Move a lot of settings from BuildConfiguration to TargetRules. This allows different targets to have different settings, naturally, and moves converts argument parsing and config to be driven by attributes.

Change 3243516 on 2016/12/23 by Ben.Marsh

	UBT: Remove the ValidateUEBuildConfiguration callback, which is no longer used. (XGE settings validation occurs in XGE.cs)

Change 3244020 on 2016/12/28 by Ben.Marsh

	UBT: Remove the BaseIntermediatePath static property. Precursor to removing RelativeEnginePath and IntermediateFolder properties.

Change 3244074 on 2016/12/28 by Ben.Marsh

	UBT: Remove the RelativeEnginePath variable from BuildConfiguration. UnrealBuildTool.EngineDirectory gives the absolute path, and can be used to construct a relative path when necessary.

Change 3244076 on 2016/12/28 by Ben.Marsh

	UBT: Remove BuildConfiguration.BaseIntermediateFolder; just use a fixed directory everywhere instead.

Change 3244083 on 2016/12/28 by Ben.Marsh

	UBT: Replace FileReference and DirectoryReference instance methods for manipulating files and directories with static methods, to mirror the System.IO.File and System.IO.Directory classes.

Change 3244441 on 2016/12/31 by Ben.Marsh

	UBT: Remove code to force PDBs when building with no debug info under XGE. Verified described symptoms (that it causes PCH generation to be serialized) no longer occur.

Change 3244687 on 2017/01/03 by Matthew.Griffin

	Changed Exception to use FirstInclude.IncludeName as PrecompiledHeaderIncludeFilename can be null when this occurs

Change 3246112 on 2017/01/04 by Ben.Marsh

	UBT: Fix UHT failures building some targets with the -useprecompiled option, due to differences in the order that circularly dependent modules are parsed. Precompiled binaries are now kept in the regular AppBinaries list, but are excluded from the build at the last minute. Also change some checks from IsEngineInstalled() to bUsePrecompiled, to prevent headers being overwritten when running in a non-installed precompiled build.

Change 3246223 on 2017/01/04 by Ben.Marsh

	UBT: Prevent version manifests being overridden if a file is not being built as part of the target.

Change 3246387 on 2017/01/04 by Ben.Marsh

	UBT: Remove BuildConfiguration settings for UnrealCodeAnalyzer. This tool isn't used at the moment, but it's configured using global variables accessed from all over the UBT codebase, making it difficult to refactor the build options into an instanced object. If we bring this tool back from the dead in the future, it should be possible to implement it using the exported JSON target definition or the XGE manifest, similarly to how IncludeTool uses it.

Change 3247004 on 2017/01/04 by Ben.Marsh

	UBT: Simplify the logic for cleaning targets in UBT. Now uses FileReference/DirectoryReference objects everywhere, doesn't require the compile/link environment, and does all the checking to avoid deleting precompiled binaries in one place.

Change 3247250 on 2017/01/04 by Ben.Marsh

	UBT: Prevent precompiled binaries being added to the list of app binaries twice.

Change 3247594 on 2017/01/05 by Ben.Marsh

	Build: Run sample and template editors on the same agents as the other incremental builds. Remove ProtoStar, which does not have any non-precompiled editor target to build.

Change 3247763 on 2017/01/05 by Ben.Marsh

	UBT: Allow the toolchain to update the list of build products for each module linked into a binary. Allows Mac to add dylibs and bundle resources specified per-module without having to construct a link environment and try to link them.

Change 3247775 on 2017/01/05 by Ben.Marsh

	UBT: Instance the target compile and link environments when they are required during building, and don't persist them on the UEBuildTarget instance.

Change 3247811 on 2017/01/05 by Ben.Marsh

	EC: Add a batch file for testing postp filters.

Change 3247839 on 2017/01/05 by Ben.Marsh

	EC: Include the name of the file being compiled when parsing MSVC errors and warnings.

Change 3248101 on 2017/01/05 by Ben.Marsh

	UBT: Fix Android support for force included headers.

Change 3248533 on 2017/01/05 by Ben.Marsh

	PR #3097: UBT project supports optional platforms (Contributed by PrimalJohnScott)

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

	UAT: Fix ParseTaggedP4Output throwing an exception if the same key name is specified more than once. This can happen when parsing the output from "P4 INFO", where multiple brokers are present.

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

	UBT: Check for the existance of AndroidManifest.xml within extracted AAR directories, rather than just checking for the existance of the directory itself. Perforce does not remove empty directories when cleaning a workspace unless the rmdir option is on the workspace, so this can cause incremental build failures to fail on build machines.

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

	UBT: Use relative paths in unity files when compiling for Mac/IOS, rather than generating a separate local/remote version of the file for gathering include dependencies. Absolute paths are only used to work around the way that MSVC concatenates paths internally; we don't hit the same problems when checking dependencies.

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

	UBT: Rename CPPEnvironment to CppCompileEnvironment, and remove the separate CPPEnvironmentConfiguration object. All settings are now stored directly on the CppCompileEnvironment object.

Change 3250179 on 2017/01/07 by Ben.Marsh

	Fix creating installed build when root directory contains a space in the name.

Change 3250181 on 2017/01/07 by Ben.Marsh

	UBT: Remove some esoteric (and unused, AFAIK) options for orthogonally building different platforms.

Change 3250223 on 2017/01/07 by Ben.Marsh

	UBT: Merge the LinkEnvironment and LinkEnvironmentConfiguration classes together.

Change 3250233 on 2017/01/07 by Ben.Marsh

	UGS: Allow specifying a workspace-specific sync filter, which is applied on top of the standard filter. Also fix filter being cleared if the cancel button is pressed, and help text being stripped out.

Change 3250241 on 2017/01/07 by Ben.Marsh

	UBT: Move the options for specifying additional Android architectures to target onto an Android-specific object on the TargetRules.

Change 3250400 on 2017/01/08 by Ben.Marsh

	UBT: Move executor config settings onto the executor instances.

Change 3257708 on 2017/01/13 by Ben.Marsh

	UBT: Remove the ThirdPartySourceDirectory constant; there are many places which hard-code or assume this location anyway, and it's not going to change.

Change 3260535 on 2017/01/17 by Ben.Marsh

	Add an optional "RequiredSubmittedChange" setting to EC settings files. Allows a scheduled job to run even if there have been no code changes submitted. Test with the utilization capture job.

Change 3260875 on 2017/01/17 by Ben.Marsh

	EC: Fix workspaces getting out of sync wrt. newly added files when jobs are aborted during a sync. In such cases, the P4 have table indicates the new files have been synced locally, but the workspace is forced back to a state before it had them due to the capture file. When a following sync tries to add them again, P4 believes the workspace already has them synced.

	To work around this, we now write an additional file to the root folder of a workspace containing the last CL that was captured, and sync back to it before doing the reconcile.

Change 3261724 on 2017/01/18 by Ben.Marsh

	Allow filtering job types from the list view in EC. Hide the utilization capture job by default. Also set up notifications for the utilization capture job.

Change 3261756 on 2017/01/18 by Ben.Marsh

	IncludeTool: Prevent matching a full enum declaration as a forward declaration.

Change 3261932 on 2017/01/18 by Ben.Marsh

	EC: Add support for specifying days of the week in schedules. The following syntaxes are supported:

	"Monday, Tuesday and Wednesday at 10:30"
	"Daily except Sunday and Wednesday at 14:30"

	 Also tweak display of dates relative to now to handle dates/times in the future, and include the date when specifying a day name.

	#jira UEB-729

Change 3262676 on 2017/01/18 by Ben.Marsh

	UBT: Split UBTMakefile into its own file. (From PR #3106)

Change 3263893 on 2017/01/19 by Ben.Marsh

	UBT: Stop exporting platform classes from UBT, as well as all the referenced classes that have to be made public as a result. Any platform-specific functionality that needs to be shared with UAT is now exposed through wrappers in separate public classes, eg. WindowsExports.cs, IOSExports.cs, etc...

Change 3264291 on 2017/01/19 by Ben.Marsh

	UBT: Fix errors generating documentation in UBT, and enable it by default. Will catch more errors with new code being added. Originally in PR #3106, but redone due to conflicts.

Change 3264534 on 2017/01/19 by Ben.Marsh

	UBT: Include plugin config files in generated projects.

Change 3264571 on 2017/01/19 by Ben.Marsh

	UBT: Prevent overwriting .modules files if nothing has changed. On builders, it's common to build multiple editors in the same workspace, and changing the last modified timestamp causes BuildGraph to fail due to tampered files.

Change 3265745 on 2017/01/20 by Ben.Marsh

	UGS: Automatically open UGS when running the launcher for a second time, rather than prompting to close the original instance.

Change 3265777 on 2017/01/20 by Ben.Marsh

	UGS: Automatically close and reopen when UGS is re-ran with the shift key held down to switch into unstable mode.

Change 3268314 on 2017/01/23 by Ben.Marsh

	UBT: Make sure version manifests are stable by sorting the list of build products, so they are only touched if the contents have really changed.

Change 3269601 on 2017/01/24 by Ben.Marsh

	UBT: Fix symbol files being added to manifest for some platforms even though debug info is disabled.

Change 3269607 on 2017/01/24 by Ben.Marsh

	UBT: Fix bug where UBT would need to be invoked when switching between two editors sharing the same engine binaries on Mac. The location of the .modules file cannot be guessed on Mac by looking in the same directory as the primary output executable because it's an .app bundle, and the actual modules are nested several directories below that.

Change 3269608 on 2017/01/24 by Ben.Marsh

	UBT: Fix additional files copied into the app bundle always being updated on Mac. Now uses rsync --checksum to make sure only modified files are updated.

Change 3271062 on 2017/01/24 by Ben.Marsh

	UBT: Fixes for bugs detected by PVS Studio (PR #3161)

Change 3272421 on 2017/01/25 by Ben.Marsh

	Fix commends regarding DDC in BaseEngine.ini

	#jira UE-41076

Change 3272810 on 2017/01/25 by Ben.Marsh

	Fix VS2017 being displayed as 'Visual Studio 15' in the Windows target settings panel.

Change 3272935 on 2017/01/25 by Ben.Marsh

	Fix Metal errors launching on Mac due to use of OSX environment settings before they are initialized. Toolchain settings are now constructed on demand in a separate class, for Mac, iOS and TVOS.

Change 3274167 on 2017/01/26 by Ben.Marsh

	Fix resource files not being compiled in installed builds on Windows. Was causing metadata not to be embedded into executables.

	#jira UE-36457

Change 3275557 on 2017/01/27 by Ben.Marsh

	Expand checks for propagation of restricted folder names to include source files, and to ensure that each restricted folder is represented in the output. Also improve messaging to show the dependency chain leading to a restricted folder being referenced, and which folder it is.

Change 3275628 on 2017/01/27 by Ben.Marsh

	UBT: Splitting configuration files into one class per-file.

Change 3276784 on 2017/01/29 by Ben.Marsh

	Add an authoritative list of confidential folder names, and expose it through global BuildGraph properties ($(RestrictedFolderNames) and $(RestrictedFolderFilter)). Also switch existing scripts to use it.

Change 3276792 on 2017/01/29 by Ben.Marsh

	UBT: Use UE4CSharp.prog files to indicate which projects should be included in the solution without having to hard-code a list of them in UBT.

Change 3277263 on 2017/01/30 by Ben.Marsh

	IncludeTool: Merging various fixes.

	* Fix warnings about #include directives after first code block from parsing monolithic headers.
	* Fix exception on startup if the intermediate directory does not already exist.
	* Add a special case for ignoring missing header guards from MonolithicHeaderBoilerplate.h, rather than marking it as an inline header. Marking it as inline prevents parsing include directives, which results in including CoreTypes.h from the wrong location.
	* Create job objects for spawned compiler instances to prevent them trying allocating more memory than the system can spare.
	* Remove (unused) code which makes assumptions about files ending with "Classes.h".
	* Add a verbose per-file output log to aid with debugging.
	* Negate the MakeStandalone command line option, which was added to allow tweaking forward declarations in already optimized files, so the optimized output does not have missing headers by default.
	* Fix missing headers when creating standalone files, due to incorrect list of previous files being passed in to the OutputFile constructor. Now passes the original list of included files, not the output list.
	* Fix initial header for a cpp file sometimes being removed. Forcibly including a header at the start of the file does not use the normal pathway for spidering through includes, so a second include of the same file was being generated. Any includes of that header were being forced into output, and the earlier include was then removed due to being redundant.
	* Prevent forward declaring enums which have to be parsed by UHT. UHT relies on includes to determine a parse order, and will fail if the enum definition has not been parsed first.
	* Use a relative path for private includes in the same module if there are any. Fixes some incorrect paths, and makes it clearer that we're doing something we shouldn't.

Change 3277307 on 2017/01/30 by Ben.Marsh

	UBT: Fix private PCHs not using correct header. Causes custom definitions to be excluded from the command line.

[CL 3278101 by Ben Marsh in Main branch]
2017-01-30 16:52:08 -05:00
Ben Marsh
20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

[CL 3226823 by Ben Marsh in Main branch]
2016-12-08 08:52:44 -05:00
Ben Marsh
4ba423868f Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#lockdown Nick.Penwarden
#rb none

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

Change 3209340 on 2016/11/23 by Ben.Marsh

	Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.

	Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.

	  * Every header now includes everything it needs to compile.
	        * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
	        * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
	  * Every .cpp file includes its matching .h file first.
	        * This helps validate that each header is including everything it needs to compile.
	  * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
	        * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
	        * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
	  * No engine code explicitly includes a precompiled header any more.
	        * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
	        * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.

	Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.

[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
Marc Audy
69d9a1a087 Copying //UE4/Orion-Staging to //UE4/Dev-Main (Source: //UE4/Orion-Staging @ 3134206)
#lockdown Nick.Penwarden
#rb none
#codereview Andrew.Grant
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2845744 on 2016/01/27 by Andrew.Grant

	Merging from //Orion/Dev-General @ 2845681

Change 2849210 on 2016/01/29 by Andrew.Grant

	Merging using //Orion/Dev-General/_To_//UE4/Orion-Stating

Change 2854307 on 2016/02/03 by Andrew.Grant

	Merging using //Orion/Dev-General/_To_//UE4/Orion-Stating

Change 2880059 on 2016/02/24 by Andrew.Grant

	Merging  //Orion/Dev-General @ 2879808

Change 2891205 on 2016/03/02 by Andrew.Grant

	Merging //Orion/Dev-General @ 2889885

Change 2904080 on 2016/03/10 by Andrew.Grant

	Merging using //Orion/Dev-General @ 2902652

Change 2950235 on 2016/04/20 by Andrew.Grant

	Automerged files from Dev-General

Change 2976227 on 2016/05/12 by Andrew.Grant

	Autoresolved files from using //Orion/Dev-General

Change 3016193 on 2016/06/16 by Andrew.Grant

	Merging //Orion/Dev-General @ 3015761

Change 3033336 on 2016/06/29 by Andrew.Grant

	Merging using //Orion/Dev-General/_To_//UE4/Orion-Stating

Change 3037514 on 2016/07/05 by Andrew.Grant

	Merging from //Orion/Dev-General @ 3037465

Change 3091216 on 2016/08/16 by Andrew.Grant

	Merging using //Orion/Dev-General/_To_//UE4/Orion-Stating

Change 3107127 on 2016/08/30 by Andrew.Grant

	Merging using //Orion/Dev-General/_To_//UE4/Orion-Stating

Change 3129090 on 2016/09/16 by Andrew.Grant

	Autoresolved files from Dev-Gen @ 3130045

Change 3130536 on 2016/09/19 by Andrew.Grant

	To Resolve

Change 3130537 on 2016/09/19 by Andrew.Grant

	Tricky merges?

Change 3130810 on 2016/09/19 by Andrew.Grant

	Merging from //Orion/Dev-General @ 3130045

Change 3130880 on 2016/09/19 by Andrew.Grant

	Blueprint fix

Change 3131009 on 2016/09/19 by Andrew.Grant

	removed spammy warning

Change 3131216 on 2016/09/19 by Andrew.Grant

	Content fixes for Orion-Staging

Change 3131700 on 2016/09/19 by Andrew.Grant

	Merging //UE4/Dev-Main to Orion-Staging (//UE4/Orion-Staging)

Change 3132144 on 2016/09/20 by Andrew.Grant

	Merging test framework work from Dev-General

Change 3132154 on 2016/09/20 by Andrew.Grant

	Fix for linux client

Change 3132179 on 2016/09/20 by Andrew.Grant

	Fixed breakages due to latest //UE4/Main

Change 3132948 on 2016/09/20 by Andrew.Grant

	Fix for UE-36216 (replicating 3125764 from ForniteMain)

Change 3133103 on 2016/09/20 by Andrew.Grant

	Added EpicCMSUIFramework and CommonUI to Fortnite plugin

Change 3133327 on 2016/09/20 by Andrew.Grant

	Orion automation improvements

Change 3133555 on 2016/09/20 by Andrew.Grant

	FIx for UE-36226

Change 3133996 on 2016/09/21 by Andrew.Grant

	REbuilt texture streaming

Change 3134204 on 2016/09/21 by Andrew.Grant

	Merging audio files from Orion with correct compression settings

Change 3134205 on 2016/09/21 by Andrew.Grant

	Fix for gameplay tag ordering from Orion, and fix for soak test report numbers

Change 3134206 on 2016/09/21 by Andrew.Grant

	Merging //UE4/Dev-Main to Orion-Staging (//UE4/Orion-Staging)

[CL 3135156 by Marc Audy in Main branch]
2016-09-21 18:16:12 -04:00
Ben Marsh
3e80336791 Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3092544)
#lockdown Nick.Penwarden
#rb none

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

Change 3079316 on 2016/08/05 by Ben.Marsh

	Better PCH selection in ShaderFormatOpenGL and MetalShaderFormat - make sure Core is the first included header.

Change 3080579 on 2016/08/08 by Ben.Marsh

	Slate: Move DEBUG_TAB_MANAGEMENT into SDockingTabStack.h to remove circular include dependency with DockingPrivate.h.

Change 3080587 on 2016/08/08 by Ben.Marsh

	StandaloneRenderer: Move platform includes into a separate header so we can make individual headers self-contained, without having a circular dependency on StandaloneRendererPrivate.h.

Change 3080789 on 2016/08/08 by Ben.Marsh

	Move BuildGraph tasks for chunking, posting builds, labeling builds, and merging manifests into the MCP project. While we do provide public interfaces for this functionality, we don't currently expect anyone outside Epic to be using them.

Change 3080815 on 2016/08/08 by Ben.Marsh

	BuildGraph: Add a -GenerateDocs option, which writes out an HTML file constructed from C# XML documentation containing all the task information.

Change 3081374 on 2016/08/08 by Ben.Marsh

	UBT: Invalidate the makefile if any UHT headers are deleted. Should fix issue where files are moved from one module to another, and the original module no longer contains any generated headers. Its include path needs to be removed from the compile environment.

Change 3083152 on 2016/08/09 by Ben.Marsh

	PR #2667: Add Intel C++ Compiler support to Windows build (Contributed by JeffRous)

Change 3084039 on 2016/08/10 by Ben.Marsh

	BuildGraph: Add additional markup for parameter attributes. Also improve some documation.

Change 3084240 on 2016/08/10 by Ben.Marsh

	Plugins: Allow plugins in the project folder to replace plugins in the engine folder with the same name. Prohibit multiple plugins with the same name at other times.

Change 3084337 on 2016/08/10 by Ben.Marsh

	UBT: Specify the -precompile option when generating project files for a target, so we include all valid modules for intellisense.

Change 3085594 on 2016/08/11 by Ben.Marsh

	Change modules which reference a public header for their PCH to use a private PCH instead, even if it just includes the public header for now.

Change 3085999 on 2016/08/11 by Ben.Marsh

	Add some missing #pragma once directives.

Change 3086146 on 2016/08/11 by Ben.Marsh

	Core: Move prototype and linkage specifier for ConsoleCommandLibrary_* functions into header matching cpp file.

Change 3086172 on 2016/08/11 by Ben.Marsh

	Fixup some C-style header guards to use #pragma once instead.

Change 3087289 on 2016/08/12 by Ben.Marsh

	Split out UPackage and UMetaData into their own headers (they're already implemented in separate CPP files)

Change 3087310 on 2016/08/12 by Ben.Marsh

	Move method stubs for FNullSlateSoundDevice into a CPP file, since they're exported from the SlateCore module.

Change 3087341 on 2016/08/12 by Ben.Marsh

	UdpMessaging: Move PCH before #if PLATFORM_DESKTOP; it will only be defined if the definition is included.

Change 3087457 on 2016/08/12 by Ben.Marsh

	Core: Reorganize the FTransform and FMatrix headers: Transform.h now includes TransformNonVectorized.h or TransformVectorized.h as appropriate, and UnrealMatrix.h is now Matrix.inl (and included from Matrix.h).

Change 3088407 on 2016/08/13 by Ben.Marsh

	Replace use of Windows SIZE_T define with the regular C++ size_t.

Change 3088416 on 2016/08/13 by Ben.Marsh

	Include a header from all .generated.cpp files (GeneratedCppIncludes.h) which includes all the basic types required to compile them, rather than assuming that the module PCH will include everything.

	Also include the real declarations of noexport classes in Object.h (now renamed to NoExportTypes.h for clarity) when the CPP macro is defined, so the .generated.deps.h file will automatically have the correct definitions for them at compile time rather than relying on them being in the private PCH.

	Finally, rename UObject.h to Object.h for consistency with the naming convention for all other UObject classes. UObject.h still exists for now, but outputs a deprecated message if included.

Change 3088544 on 2016/08/14 by Ben.Marsh

	Core: Move the definition of the TEXT() macro into Platform.h, to avoid having to include OS headers to get it.

Change 3088552 on 2016/08/14 by Ben.Marsh

	Fix compile errors for some modules that don't already include CoreUObject.h.

Change 3088925 on 2016/08/15 by Ben.Marsh

	Remove circular include dependencies from VulkanRHI.

Change 3088926 on 2016/08/15 by Ben.Marsh

	Remove duplicate definition for WITH_FIXED_AREA_ENTERING_COST from EngineDefines.h - always uses the definition from DetourNavMeshQuery.h instead.

Change 3088930 on 2016/08/15 by Ben.Marsh

	Remove circular include dependency from PhysX.

Change 3088935 on 2016/08/15 by Ben.Marsh

	OnlineSubsystemUtils: Move CPP files out of public header directory.

Change 3088965 on 2016/08/15 by Ben.Marsh

	Add private PCH to Landscape, MoviePlayer, TaskGraph, XAudio2 and RealtimeProfiler modules.

Change 3088966 on 2016/08/15 by Ben.Marsh

	Engine: Move CPP files out of public header directories.

Change 3089520 on 2016/08/15 by Ben.Marsh

	BuildGraph: Change documentation command to output markdown.

Change 3090299 on 2016/08/16 by Ben.Marsh

	D3D12RHI: Move around some implementations to fix circular header dependencies which are masked by delayed template instantiation.

Change 3090303 on 2016/08/16 by Ben.Marsh

	Engine: Add a template specialization for TPointerIsConvertibleFromTo<AActor, const volatile UObject> to fix dependency on complete AActor definition for static assert in TWeakPointer<AActor>, which only appears if including Level.h without Actor.h. Delayed template instantiation usually masks this issue.

Change 3091861 on 2016/08/17 by Ben.Marsh

	Remove circular header dependencies, and fix ambiguous include paths in OSVR.

Change 3092068 on 2016/08/17 by Ben.Marsh

	Moving VulkanDynamicRHI into its own header.

Change 3093133 on 2016/08/18 by Ben.Marsh

	EC: Include additional context lines for Clang errors.

Change 3093147 on 2016/08/18 by Ben.Marsh

	UBT: Add an error message when attempting to do a single-file compile with the wrong target selected.

Change 3093228 on 2016/08/18 by Ben.Marsh

	Remove redundant setting for remote server name from XML config, and set it to a valid machine in the engine config.

[CL 3093264 by Ben Marsh in Main branch]
2016-08-18 10:28:43 -04:00
Andrew Grant
a140e73bbf Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 3064255)
#lockdown Nick.Penwarden

Change 3063869 on 2016/07/25 by Michael.Noland@mnoland_T2801_OrionStream

	Engine: Added a cvar (t.FPSChart.OpenFolderOnDump) to control whether or not FPS charts automatically open the profiling folder when stopfpschart is executed, which can be useful to avoid a bunch of open windows while doing automated testing
	#rb marcus.wassmer
	#tests Tested startfpschart + stopfpschart with t.FPSChart.OpenFolderOnDump set to 1 and 0
	#codereview david.nikdel

Change 3063829 on 2016/07/25 by Michael.Noland@mnoland_T2801_OrionStream

	Core: Added an optional size to MallocLeak Stop and made the default filter size 128 KB for both MallocLeak Dump and MallocLeak Stop if no size was specified
	#rb marcus.wassmer
	#tests Tested using MallocLeak Stop and MallocLeak Dump

Change 3063825 on 2016/07/25 by Michael.Noland@mnoland_T2801_OrionStream

	Engine: Exposed GPU revision ID as GRHIDeviceRevision and added it to the FPS chart analytics (gathered on D3D11 and D3D12 only)
	#rb marcus.wassmer
	#tests Tested on my desktop and compared to dxdiag output

Change 3063702 on 2016/07/25 by Ryan.Gerleve@Ryan.Gerleve_T3703_Orion

	Collect garbage when scrubbing in a replay. Scrubbing generates a lot of garbage, and can lead to running out of memory.
	Can be disabled with the cvar demo.LoadCheckpointGarbageCollect.

	#jira OR-25964
	#tests bug repro
	#rb john.pollard

Change 3063426 on 2016/07/25 by Michael.Trepka@Michael.Trepka_T3244_Orion-Dev

	Borderless window support improvements:

	- the cursor changes to resize when hovering over the window edge
	- added a way for widgets to register a delegate that's called when window actions occur (maximize, restore, etc.)
	- used he window action notification for WindowTitleBarArea to improve how toggling fullscreen on double click is handled

	#rb Jeff.Campeau
	#tests Tested in editor build on PC

Change 3063358 on 2016/07/25 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 29.2 @ CL 3063307

	#RB:none
	#tests:none

	#ROBOMERGE-SOURCE: CL 3063345 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3063353 on 2016/07/25 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: ben.marsh
	Merging CL 3037547 and CL 3037552 from //UE4/Dev-Build to support BuildPatchTool analytics.

	#rb none
	#tests none

	#ROBOMERGE-SOURCE: CL 3063156 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3063198 on 2016/07/25 by Matt.Kuhlenschmidt@matt.kuhlenschmidt_orion_dev

	Temp fix for broken post process volumes

	#rb none
	#tests  none

Change 3063166 on 2016/07/25 by Daniel.Lamb@daniel.lamb_T3905_6612

	Added check to Redirect collector resolve string asset references.
	#rb none
	#test cook paragon

Change 3063057 on 2016/07/25 by Michael.Trepka@Michael.Trepka_T3244_Orion-Dev

	Use round corners for windows with no system title bar and border only in windowed mode.

	#rb Peter.Sauerbrei
	#tests Tested in editor build on PC

Change 3063015 on 2016/07/25 by Andrew.Rodham@Andrew.Rodham_Orion

	Sequencer: Fixed anim notifies not working when playing animation on blueprint-driven skeletal meshes

	We now inject a new animation position into the animation system, rather than trying to 'fake' events outside of the system. This allows for much more robust event triggering when playing back through sequencer. Previously, anim notifies for trail particles would be reset every frame due to TriggerAnimNotifies being called by the animation system, and sequencer. We now defer this responsibility to the animation system entirely during playback.

	#tests Tested sequencer driven animation with animation assets and (compatible) animation blueprints. Tested some non-sequencer animation.
	#rb Benn.Gallagher

Change 3062774 on 2016/07/24 by Ben.Marsh@Ben.Marsh_T3245_Orion

	BuildGraph: Fix <Cook> tasks failing when multiple platforms are specified, due to not scanning the output directories separately.

	#rb none
	#tests preflight

Change 3062761 on 2016/07/24 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Non-unity fix
	#rb none
	#tests compiled

Change 3062324 on 2016/07/22 by Marcus.Wassmer@Marcus.Wassmer_Orion_DevGeneral

	Skipped a file
	#rb none
	#test none

Change 3062315 on 2016/07/22 by Marcus.Wassmer@Marcus.Wassmer_Orion_DevGeneral

	Allow r.SSR.MaxRoughness in shipping builds.
	Art has been tweaking with this value, but it's not being honored in shipping.
	#rb none
	#tests adjusted settings in agora_p

Change 3062306 on 2016/07/22 by Marcus.Wassmer@Marcus.Wassmer_Orion_DevGeneral

	HLOD distance scalability option (r.HLOD.DistanceScale)
	Higher values make HLODS transition further away.
	#rb Michael.Noland
	#tests Tested in agora_p

Change 3061861 on 2016/07/22 by Lina.Halper@Lina.Halper_Orion

	Fix Compression - Reduce functions to be editoronly

	#rb: Martin.Wilson
	#tests: PIE/compile editor build/noneditor

Change 3061714 on 2016/07/22 by Andrew.Rodham@Andrew.Rodham_Orion

	Sequencer: Fixed anim trails not playing in full, sequencer-driven animation.

	There were 2 issues here. Firstly, we were force-handling events and anim notifies in non-preview animation which caused undefined behaviour when the animation was also updated on tick. Secondly, On the very first frame of a game, sequencer can sometimes use the PreviewSetMatineeAnimPositionInner method because the actor it is referencing has not begun play yet. Unfortunately this function left the animation in a state where the 'real' animation update function wouldn't trigger any anim notifies properly.

	#tests Tested animation with and without anim trails to verify they work in editor, PIE and standalone game with and without sequencer open. Rendered out the announce trailer before and after my changes to verify there was no change in behaviour.

	#jira OR-25967

	#review-3061494 @Max.Chen

	#rb Benn.Gallagher

Change 3061393 on 2016/07/22 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: sam.zamani
	compile errors
	#rb none
	#tests compile

	#ROBOMERGE-SOURCE: CL 3061392 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3061384 on 2016/07/22 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: andrew.grant
	Fixed build breakage
	#rb none
	#tests compiled PS4 client

	#ROBOMERGE-SOURCE: CL 3061383 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3060894 on 2016/07/21 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: ian.fox
	#Orion, #OnlineSubsystem, #OnlineGameplayFramework - Game catalog supports Price Engine sales on real-money offers
	#rb Sam.Zamani
	#tests Real-money offers that are on sale show the correct sale price / discount display
	#jira OR-21659

	#ROBOMERGE-SOURCE: CL 3060891 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3060272 on 2016/07/21 by Lina.Halper@Lina.Halper_Orion

	Fix compile issue of non editor build

	#rb: none
	#tests: compile

Change 3060161 on 2016/07/21 by Marcus.Wassmer@Marcus.Wassmer_Orion_DevGeneral

	Duplicate 3046845
	CVAR threading crash fix.
	#rb none
	#tests compiled, ran ps4

Change 3060012 on 2016/07/21 by Lina.Halper@Lina.Halper_Orion

	- Back out changelist 3056611
	- Fix additive issue and built the new animation DDC
	#rb: Martin.Wilson
	#tests: Jump_Recovery_Additive, PIE

Change 3060009 on 2016/07/21 by Rob.Cannaday@rob.cannaday_orion-stream

	When receiving NotLeader party join rejection, include the new leader id and re-attempt the join to the new leader
	#jira OR-25648
	#rb bart.bressler
	#tests frontend parties with promotions, coop matchmaking

Change 3059989 on 2016/07/21 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Fixes for applocal redist
	#rb none
	#test built locally

Change 3059832 on 2016/07/21 by Martin.Wilson@MartinWilsonOrionStream

	Fix graph linked external object saving error on re-compressed animations (dup from dev-framework CL )

	#jira UE-33567
	#rb Thomas.Sarkanen
	#tests In editor testing that animations can be recompressed and saved

Change 3059803 on 2016/07/21 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Switching Orion, UnrealCEFSubProcess, and CrashReporterClient to build with VS2015
	Added AppLocalPrerequisitesDirectory editor setting that is passed in -applocaldir during staging
	WinPlatformAutomation now stages applocaldir to project and engine binaries
	Updated OrionBuild.xml to specify -applocaldir
	#codereview Jeff.Campeau, Ben.Marsh
	#rb none
	#tests build client locally and verified DLLs are local to executables

Change 3059707 on 2016/07/21 by David.Ratti@David.Ratti_G6218_Orion.Dev-General

	fix case where DefaultGameplayTags.ini fails to update if not checked out from source control
	#rb none
	#tests add tags without source control

Change 3059679 on 2016/07/21 by Rob.Cannaday@rob.cannaday_orion-stream

	Fix nonunity compile error due to OnlinePresenceInterface.h requiring enum defined in OnlineSubsystemTypes.h
	#rb paul.moore
	#tests compile with OrionFriendItem.cpp modified

Change 3059518 on 2016/07/21 by Andrew.Grant@andrew.grant.T6730.orion.floating

	AppLcoalDependencies required by VS2015

Change 3059477 on 2016/07/21 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 29.2 @ CL 3059419

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 3059476 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3059455 on 2016/07/21 by Graeme.Thornton@GThornton_Orion_DevGeneral

	Linux build fix (bad case on #include filename)

	#rb robert.manuszewski
	#tests compiled Paragon on a linux machine

Change 3059258 on 2016/07/21 by Simon.Tovey@Simon.Tovey_OrionDev

	Implementing 3050352 in Dev-General.

	#rb none
	#tests Editor

	#codereview Marcus.Wassmer

Change 3058989 on 2016/07/21 by Michael.Noland@mnoland_T2801_OrionStream

	Audio: Disabling the audio thread to prevent a crash in async line trace code (it is already disabled in UE4 main)
	#rb none
	#codereview andrew.grant, ori.cohen

Change 3058773 on 2016/07/20 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: ian.fox
	#Orion - Remove QoS* from junk manifest
	#review-3058772 @Rob.Cannaday
	#rb none
	#tests QoS module doesn't get nuked every build

	#ROBOMERGE-SOURCE: CL 3058771 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3058717 on 2016/07/20 by Daniel.Lamb@daniel.lamb_T3905_6612

	Added submitted CL to success email for rebuild lighting commandlet.
	Removed nosimplygon from resave lighting commandlet commandline.
	#rb Daniel.Wright
	#test rebuildlighting paragon devgeneral.

Change 3058565 on 2016/07/20 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: ian.fox
	#Orion - Fix debug/non-development builds
	#rb Rob.Cannaday
	#tests it builds (and doesn't crash on login) on Debug Editor -debug -game!

	#ROBOMERGE-SOURCE: CL 3058563 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3058082 on 2016/07/20 by Daniel.Lamb@daniel.lamb_T3905_6612

	Added error to the lighting build whent it fails to build.
	#test Rebuild lighting commandlet
	#rb Daniel.Wright

Change 3057945 on 2016/07/20 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Fix for NAN issue introduced in 3032847
	#rb Jeff.Farris
	#tests none

Change 3057840 on 2016/07/20 by David.Ratti@David.Ratti_G6218_Orion.Dev-General

	fix developer tags not properly adding to perforce when creating a new file

	#rb none
	#tests developer tags

Change 3057553 on 2016/07/20 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 29.2 @ CL 3057330

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 3057549 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3057313 on 2016/07/20 by bruce.nesbit@BNesbit_Orion_Stream_1

	Fixed shadowvariable in FAnalyticsEventEntry

	#rb none

	#tests compiled

	#codereview Wes.Hunt

Change 3056802 on 2016/07/19 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: ryan.gerleve
	Fix issue where replicated map-placed actors with ability system components would cache an incorrect Role value.
	This could cause predicted gameplay effects in the fast TArray to have MarkItemDirty called on them, which in turn increments the item's ReplicationID, potentially causing a conflict with the server's ReplicationID.
	Since the Role may not be correct during OnRegister for these components, also cache it BeginPlay.

	#jira OR-25234
	#rb david.ratti
	#tests golden path, bug repro

	#ROBOMERGE-SOURCE: CL 3056801 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3056797 on 2016/07/19 by Wes.Hunt@WHUNT-ORION-STREAM

	OrionAnalytics updates.
	* Added IAnalyticsProviderET::SetDefaultEventAttributes to use to set the GameSessionID on all Orion Analytics events.
	* Removed OrionAnalyticsProvider as it was no longer necessary.
	* Updated all Orion code to use IAnalyticsProviderET directly in the code to be able to access all the new APIs.
	#rb sam.zamani, jason.bestimt
	#tests run dedicated server with 10 bot clients, observe analytics events sending correctly. Ran PIE.
	#jira UE-30980

Change 3056611 on 2016/07/19 by Lina.Halper@Lina.Halper_Orion

	Fix for additive broken with remove linear key
	- DDC key has been changed, so it will require to build DDC from this

	#rb: Martin.Wilson
	#tests: Jump_Recovery_Additive in editor, and PIE

Change 3056226 on 2016/07/19 by Lukasz.Furman@Lukasz.Furman_T7320_OrionStream

	extended gameplay debugger's ability category to show locally owned gameplay tags
	#orion
	#rb none
	#tests PIE

Change 3056204 on 2016/07/19 by Jeff.Campeau@jeff.campeau_3753_Orion

	Fix offset rendering of maximized borderless game window on Windows.
	#review-3055205 @michael.trepka
	#rb Michael.Trepka
	#tests Tested in editor build on PC (editor window normal and maximized, game window borderless normal and maximized, game window bordered normal and maximized).

Change 3056028 on 2016/07/19 by Rob.Cannaday@rob.cannaday_orion-stream

	Add moved modules to JunkManifest.txt

Change 3055650 on 2016/07/19 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - ACTUAL Merge 29.2 @ CL 3055553

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 3055647 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3055620 on 2016/07/19 by Dmitry.Rekman@RCL_Win_Stream-ORMAIN

	Attempts to fix rare server crashes (OR-24947, OR-24952).

	- Rearranging to avoid AddDefaulted(), that might be triggering a compiler bug (conjecture).

	#rb Steve.Robb
	#codereview Steve.Robb
	#tests Compiled Windows client and Linux server, played a match.

Change 3054587 on 2016/07/18 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Merging from //UE4/Main @ 3043787 through //UE4/Orion-Staging
	#rb none
	#tests Smoked by engine and dev QA

Change 3054491 on 2016/07/18 by Frank.Gigliotti@Frank.Gig_T4217_Orion_Stream

	Removed warning when client miss-predicts ability activation.

	* It is valid for the client to miss-predict.  Warning was only added to track down a bug.

	#CodeReview David.Ratti
	#RB None
	#Tests None

Change 3053850 on 2016/07/18 by David.Ratti@David.Ratti_G6218_Orion.Dev-General

	Missed checkins on ability system engine work:
	-Register debug delegate on module startup for easier debugging
	-Fallback to actor location if no hit impact is specified in default engine GC notify class

	#rb none
	#tests ability system sample project

Change 3053825 on 2016/07/18 by David.Ratti@David.Ratti_G6218_Orion.Dev-General

	Fix issue where config file not actually flushed at right time when adding new tags

	Fix issue where orion projecetile tags that are auto generated was generating tags for non gameplay tag properties

	#rb DanY
	#codereview Dan.Youhon
	#tests pie

Change 3053438 on 2016/07/18 by David.Ratti@David.Ratti_G6218_Orion.Dev-General

	-Remove developer tags from master tag list before saving to ini file
	-inline some stuff (wip for gc tag translator system)

	#rb none
	#test adding tags

Change 3053414 on 2016/07/18 by Robert.Manuszewski@Robert_Manuszewski_NCL_Orion

	Fixing rare crash when async loading objects caused by linker being detached too early (before other package's import has been fully processed)

	#jira OR-24955
	#jira OR-25183
	#rb Graeme.Thornton
	#tests Win64 cooked client golden path (solo vs AI)

Change 3052009 on 2016/07/15 by Dmitry.Rekman@RCL_Win_Stream-ORMAIN

	Overhaul of behavior of headless applications (server, client) (OR-23529).

	- Removed FApp::ShouldUseNullRHI(). Rationale: FApp::CanEverRender() answers a higher level question and the code shouldn't predicate on the type of RHI used.
	- Multiple code paths updated to prevent code execution on headless clients (some of this is optimization, some was causing crashes).
	- Most of these changes originated from a shelved CL by BradA.

	#rb Michael.Noland
	#codereview Michael.Noland, Brad.Angelcyk, Andrew.Grant, Chris.Wood, Matt.Schembari
	#tests Cooked Windows client and server, Linux client and server. Ran Windows client and server, played a match, ran Linux bot (headless client, requires local changes not in this CL), ran the Windows editor (tried PIE).

Change 3051926 on 2016/07/15 by Marcus.Wassmer@Marcus.Wassmer_Orion_DevGeneral

	Reinstate color grading changes.
	Fix broken config file.
	#rb none
	#tests Agora_p color grading and warning check

Change 3051759 on 2016/07/15 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: ryan.gerleve
	Don't record predicted elements of fast TArrays into client replays.
	Fixes issue where the client was incrementing the ReplicationID of predicted elements, potentially conflicting with the IDs of elements received by the server.

	#jira OR-25234, OR-25413, OR-25403
	#tests golden path, bug repo using 'net pktlag', replays
	#rb john.pollard, david.ratti

	#ROBOMERGE-SOURCE: CL 3051758 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3051702 on 2016/07/15 by Daniel.Lamb@daniel.lamb_T3905_6612

	Added jordan walker to rebuild lighting emails.
	Removed peter.sauerbrei.
	#rb Peter.Sauerbrei
	#test none

Change 3051661 on 2016/07/15 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: ben.marsh
	Merging support for precompiled binaries in CIS from Release-29.

	#rb none
	#tests none

	#ROBOMERGE-SOURCE: CL 3051660 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3051466 on 2016/07/15 by Marcus.Wassmer@Marcus.Wassmer_Orion_DevGeneral

	Allow seamless upgrade from FVector -> FVector4 for UProperties.
	#rb Robert.Manuszewski
	#tests Color grading property changes.

Change 3050680 on 2016/07/14 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: ian.fox
	#Mcp, #Orion - Fix initalization values of CatalogServiceMcp
	#rb none
	#tests Real money offers show in the store again

	#ROBOMERGE-SOURCE: CL 3050563 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3050520 on 2016/07/14 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - MERGING DUI @ CL 3047139

	#RB:none
	#Tests:none

	[CodeReviewed]: kerrington.smith, dan.hertzka, matt.schembari, benjamin.crocker, jaymee.stanford, alex.conner

	#ROBOMERGE-SOURCE: CL 3050519 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3050465 on 2016/07/14 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: ryan.gerleve
	Don't check IsClientOnly() to detemine whether a player controller is local or not.
	For client replay recording, the replay spectator controller should not return true from IsLocallyControlled(). This change fixes that case in client builds.
	Fixes issue where the SignificanceManager was using the replay spectator to influence significance values, causing them to be incorrect for the game player controller.

	#jira OR-25258
	#tests bug repro, golden path, replays
	#rb john.pollard
	[CodeReviewed] zak.middleton, josh.markiewicz

	#ROBOMERGE-SOURCE: CL 3050462 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3050326 on 2016/07/14 by Dan.Youhon@Dan.Youhon.Paragon

	Set CameraLensEffects position before activation so that initial significance values are correct, specifically to fix quick camera lens effects being culled out due to incorrect significance #OR-18321
	- Moves location determination code from AEmitterCameraLensEffectBase::UpdateLocation into a separate static GetAttachedEmitterTransform function, which is now called both from UpdateLocation and in APlayerCameraManager::AddCameraLensEffect to determine SpawnTransform for the LensEffect SpawnActor call
	- Unshelved from Jeff.Farris. Thanks Jeff!

	#rb Dan.Youhon
	#tests MultiPIE
	#codereview Jeff.Farris

Change 3049749 on 2016/07/14 by Daniel.Lamb@daniel.lamb_T3905_6612

	Added skipskin verify to rebuild lighting commandlet.
	#rb None
	#test Rebuild lighting commandlet

Change 3049728 on 2016/07/14 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: buildmachine
	Remove simplygon from rebuild lighting commandlet
	#rb none
	#test rebuild lighting

	#ROBOMERGE-SOURCE: CL 3049727 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3049721 on 2016/07/14 by buildmachine@buildmachine_Z4560_OrionDevGeneral

	Remove simplygon from rebuild lighting commandlet
	#rb none
	#test rebuild lighting

Change 3049325 on 2016/07/13 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Back out changelist 3049037 due to incompatibility with current assets
	#rb none
	#tests Cooked content and verified warnings & errors are gone.
	#codereview Marcus.Wasmer, Brian.Karis, HaarmPieter.Duiker

Change 3049319 on 2016/07/13 by Andrew.Grant@andrew.grant.T6730.orion.floating

	More work on content filtering (still disabled)
	#rb none
	#tests cooked content and verified filtered content is not found.

Change 3049298 on 2016/07/13 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 28.2/29 @ CL 3049113

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 3049296 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3049269 on 2016/07/13 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion

	Constified FObjectFinder::Succeeded because why not #UE4

	#rb none
	#test golden path

Change 3049104 on 2016/07/13 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Created delegate for object name resolution and moved existing package localization code to use it.
	Orion code to filter out unreleased heroes and other data, but correnty disabled due to a cooking bug.
	#rb none
	#tests ran editor, ran cooker, verified object resolution is equivalent to before.

Change 3049037 on 2016/07/13 by HaarmPieter.Duiker@HPD-Dev-General

	Adding shadows, midtones and highlights color correction controls
	#rb brian.karis, marcus.wassmer
	#tests "postprocess color correction"

Change 3048457 on 2016/07/13 by Cody.Haskell@OrionStream

	#UE4

	- Adding a delegate that fires off when LastUserInteractionTime is updated

	#codereview Matt.Kuhlenschmidt
	#rb none
	#tests PIE

Change 3048420 on 2016/07/13 by Dmitry.Rekman@RCL_Lnx_CaseIns_Stream-ORMAIN

	Fix double #undef LOCTEXT_NAMESPACE in editor case.

	#rb none
	#codereview Nick.Darnell, Andrew.Grant
	#tests Compiled Linux editor (for running -server).

Change 3047891 on 2016/07/13 by Michael.Trepka@Michael.Trepka_T3244_Orion-Dev

	Rollback //Orion/Dev-General/Engine/Source/Runtime/Core/Private/Windows/WindowsWindow.cpp to revision 12

	#rb none
	#tests Tested in editor on PC

Change 3047216 on 2016/07/12 by Dmitry.Rekman@RCL_Lnx_CaseIns_Stream-ORMAIN

	Changes to Linux application specific to Linux client.

	#rb none
	#codereview Brad.Angelcyk
	#tests Ran Paragon Linux client (headless) locally.

Change 3047140 on 2016/07/12 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Fix for PS4
	#rb #tests na

Change 3047107 on 2016/07/12 by Andrew.Grant@andrew.grant.T6730.orion.floating

	Moved timeguards out of stats.h
	#rb none
	#tests compiled editor & shipping client

Change 3046996 on 2016/07/12 by Ryan.Gerleve@Ryan.Gerleve_T3703_Orion

	Don't check bTearOff when deciding whether to swap roles for client replay recording and improve the comment.
	Fixes an assert that could occur if a torn-off actor happened to get recorded into a checkpoint of a client replay.

	#tests golden path
	#rb john.pollard

Change 3046975 on 2016/07/12 by Michael.Trepka@Michael.Trepka_T3244_Orion-Dev

	Support for making the game window borderless (no system border or title bar). Disabled by default. Enabling requires adding bUseBorderlessWindow=True to [/Script/EngineSettings.GeneralProjectSettings] in DefaultGame.ini. The game using this is responsible for adding WindowTitleBarArea widget to its UI, as well as window minimize/maximize/close buttons.

	#codereview Dan.Hertzka
	#rb Jeff.Campeau
	#tests Tested in editor build on PC

Change 3046812 on 2016/07/12 by Michael.Trepka@Michael.Trepka_T3244_Orion-Dev

	New UI for selecting fullscreen mode in Paragon video settings

	#rb Dan.Hertzka
	#tests Tested in editor build on PC

Change 3046803 on 2016/07/12 by Michael.Trepka@Michael.Trepka_T3244_Orion-Dev

	Added an option to WindowTitleBarArea widget to make it toggle fullscreen mode instead of maximizing the window.

	#rb Dan.Hertzka
	#tests Tested in editor build on PC

Change 3045374 on 2016/07/11 by John.Pollard@John.Pollard_T2802_Orion_DevGeneral

	Fix assert in channel cleanup code that could occur if the connection was cleaned up, and there were KeepProcessingActorChannelBunchesMap in-flight still

	#rb RyanG
	#tests Replays

Change 3044696 on 2016/07/11 by Daniel.Lamb@daniel.lamb_T3905_6612

	Added additional checks to ResavePackagesCommandlet so people don't miss the required allowcommandletrendering flag when using buildlighting option.
	#test rebuild lighting using resave packages paragon
	#rb None

Change 3044690 on 2016/07/11 by Daniel.Lamb@daniel.lamb_T3905_6612

	Changed MBWritten cooker stats to report mb instead of bytes...
	#rb Wes.Hunt.
	#test cook paragon.

Change 3044439 on 2016/07/11 by Jason.Bestimt@Robomerge_Orion_DevGeneral

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 28.2 @ CL 3043960

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 3044428 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

[CL 3070724 by Andrew Grant in Main branch]
2016-07-29 17:10:25 -04:00
Andrew Grant
48331caa30 Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 3028454)
#lockdown Nick.Penwarden

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

Change 3028439 on 2016/06/27 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 28 @ CL 3028090

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 3028437 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3027952 on 2016/06/26 by Jurre.deBaare

	- Integrating code fixes/changes from Simplygon for Normals issue on Simplygon Swarm + landscape culling
	- Readded landscape/volume culling for in-engine static mesh merging path
	- Fixed issue with r.HLOD force -1 (now stops forcing hlods)
	- Marked hlodcullingvolume as experimental
	- Added Landscape culling flag + precision level

	#codereview Michael.Noland
	#rb Michael.Noland
	#tests build clusters locally/cloud + landscape culling tests

Change 3027702 on 2016/06/25 by Jason.Bestimt

	#ORION_DG - Merge MAIN @ CL 3027698

	#RB:none
	#Tests:none

Change 3027312 on 2016/06/24 by Daniel.Lamb

	Changed the way reentry data is stored in the cooker, reduce work load by main thread, also fix issue with reentry data being used from incorrect packages.
	#rb Peter.Sauerbrei
	#test QA game launch on and cook by the book + cook on the fly paragon

Change 3027165 on 2016/06/24 by Daniel.Lamb

	Fix compiler warnings from cvars changes.
	#rb none
	#test cook paragon

Change 3026900 on 2016/06/24 by Daniel.Lamb

	Change the way low quality lightmap shaders are enabled / disabled as the engine can't be used in the should cache function.
	#rb Marcus.Wasmer
	#test Cook on the fly paragon
	#codereview Rolando.Caloca

Change 3026874 on 2016/06/24 by Olaf.Piesche

	#jira OR-18363
	fix distortion in particle macro UVs with camera movement

	#rb frank.fella
	#tests PC Editor/Game

Change 3026494 on 2016/06/24 by jason.bestimt

	#ORION_MAIN - Merge 28 @ CL 3026460

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 3026476 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 3026381 on 2016/06/24 by Graeme.Thornton

	Strip particle modules, emitters and lodlevels from cooked server data. Saves ~10mb of runtime memory on Paragon

	#rb simon.tovey
	#codereview dmitry.rekman
	#tests pc cooked client/server, golden path

Change 3025760 on 2016/06/23 by jason.bestimt

	#ORION_MAIN - Merge 28 @ CL 3025687

	#RB:none
	#tests:none

	#ROBOMERGE-SOURCE: CL 3025709 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	//Orion/Dev-General/OrionGame/Content/Characters/Heroes/Sword/Meshes/sword.uasset - can't integrate exclusive file already opened
	//Orion/Dev-General/OrionGame/Content/Characters/Heroes/Sword/Meshes/sword_Skeleton.uasset - can't integrate exclusive file already opened
	#CodeReview: jason.bestimt

Change 3025661 on 2016/06/23 by Mieszko.Zielinski

	Added a feature to PathfollowingComponent allowing it to identify when it starts following a navigation link #UE4

	#rb Lukasz.Furman
	#test golden path

Change 3025359 on 2016/06/23 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: sam.zamani
	#online,externalui,ps4
	- expose access to reset cookies before invoking embedded web browser
	- fixed not capturing resulting Url when PS4 browser is closed

	#rb none
	#tests ps4

	#ROBOMERGE-SOURCE: CL 3025356 in //Orion/Release-28/... via CL 3025358
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3025184 on 2016/06/23 by Lina.Halper

	Fix crash with morphtargets

	#jira: OR-24257
	#rb: Rolando.Caloca
	#tests: switching mesh with different morphtargets in editor

Change 3024714 on 2016/06/23 by Lukasz.Furman

	added vlog extension to visual debugger tool, added object whitelist to vlog to include selected minion data in  games started with -LogBotGame param
	#rb Mieszko.Zielinski
	#tests server game with and without LogBotGame cmdline

Change 3024709 on 2016/06/23 by Daniel.Lamb

	Added support for async save when saving seperate bulk data file.
	Added mb saved to cooking package stats.
	#rb Andrew.Grant,Wes.Hunt
	#test Cook Paragon

Change 3024674 on 2016/06/23 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: sam.zamani
	Merging //Orion/Release-28 to Main (//Orion/Main)

	#online,identity,ps4
	- add psplus flag to online account after privilege check

	#rb none
	#tests ps4 login flow

	#ROBOMERGE-SOURCE: CL 3024672 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3024510 on 2016/06/23 by Graeme.Thornton

	Added more info to the dumpparticlesystems exec command output

	#rb simon.tovey
	#tests cooked pc client, golden path

Change 3024504 on 2016/06/23 by Graeme.Thornton

	Asset registry memory optimisation - make sure all dependency node link arrays are sized exactly as they need to be (saves ~1mb)

	#rb robert.manuszewski
	#tests windows cooked client, golden path

Change 3024213 on 2016/06/22 by Ryan.Gerleve

	Handle a rare case in replays where the spectator controller is null but we still find a valid NetGUID for it.
	Added an ensure before a check that would fail in this case so we'll know if it happens again.

	#tests replays
	#rb john.pollard

Change 3024127 on 2016/06/22 by John.Pollard

	Bulk merge using Dev-Networking_->_Dev-General_(Orion)

	3002989
	Add ability to skip missing/changed properties in FFastArraySerializer

	3003072
	Fix crash related to new replay backwards compatibility changes

	3008097
	Renaming CompatibleReplayout to NetFieldExportGroup preparing to unify ability to use FNetFieldExportGroup for both RepLayout and FClassNetCache

	3009684
	Added ability to use FNetFieldExportGroups for FClassNetCache as well as FRepLayout

	* Adds ability to track missing/changed custom delta properties names
	* Adds ability to track missing/changed RPC's

	3013455
	Add ability to skip over RPC parameters that have changes/missing in replays for backwards compatibility

	* We now mark FClassNetCache properties as bIncompatible so we don't spam forever when they are out of date
	* No longer factor in parameters when building checksum for RPC's
	* Save FNetFieldExport handle for FClassNetCache fields
	* Use WriteIntWrapped when saving FClassNetCache fields FNetFieldExport handles (and use NetFieldExportGroup->NetFieldExports.Num() to determine max value)
	* Lots of cleanup and sanity checking improvements

	3018078
	Optimize replay checkpoints

	* Share work that was already done during normal replication, and re-use this data to remove the need to compare any checkpoint properties
	* When saving a checkpoint, we no longer create a new connection and new channels, instead we re-use the existing channels, and added the ability to make this a transient operation
	* To make custom delta serialize properties work, we compare against the CDO state instead of current state when saving out a checkpoint

	3021196
	Fix issue with Fast tarray exporting package map info during checkpoints

	* Add ability to save and restore package map ack status
	* Save package map ack status before saving checkpoint, and then restore it back afterwards, this will then allow the stream that writes afterward to re-export anything that was new in the checkpoint
	* No longer queue up reliable bunches on ack list for internal ack connections

	3024033
	Prune the cached change list before using when saving out checkpoints

	* Fixes issues when saving checkpoint, and the live properties change array size, which throws everything off when it comes time to use the LifetimeChangelist

	3024034
	Don't close channels when saving checkpoints, fixes issue where it creates a bunch with bOpen/bClose (because we're forcing all SendBunches to re-open channels), which throws off the stream

	#rb RyanG
	#tests Replays

Change 3024021 on 2016/06/22 by Dmitry.Rekman

	Fix PS4 build.

	#rb Michael.Noland
	#tests none
	#codereview Michael.Noland, Dan.Youhon, Sammy.James

Change 3023734 on 2016/06/22 by Lukasz.Furman

	added replication for input events and tool state for both gameplay debugger categories and extensions
	#ue4
	#rb Mieszko.Zielinski
	#tests PIE, server game

Change 3023708 on 2016/06/22 by Dmitry.Rekman

	Add a separate macro for a poison malloc proxy usage.

	#rb Michael.Noland
	#codereview Michael.Noland, Gil.Gribb
	#tests Compiled OrionServer-Linux-Debug, ran it

Change 3023670 on 2016/06/22 by Nick.Darnell

	Home screen - Fixing safezones on the homescreen.  Adding a scale option to the XP_Fill widget.  Adding better animations to the tiles.  Showing subtitles again.  Hero XP summary widget now takes you to that hero.

	#rb none
	#tests PIE

Change 3023632 on 2016/06/22 by Dmitry.Rekman

	Fix incorrect matching condition in comments.

	#rb none
	#tests Compiled OrionServer-Linux-Debug
	#codereview Michael.Noland

Change 3023475 on 2016/06/22 by Rolando.Caloca

	O - Back out changelist 3022847 as it broke SSS on PC
	#rb none
	#tests re-run editor on PC

Change 3023178 on 2016/06/22 by Michael.Noland

	Engine: Added system memory and % of time spent hitching to analytics
	#rb bob.tellez
	#tests Tested a match in Paragon

Change 3022963 on 2016/06/22 by Mieszko.Zielinski

	Fixed a subtle navigation repathing bug #UE4

	While repathing to a location, rather than an actor, the navigation query used path's end while it should be using the original query's EndLocation.

	#rb Lukasz.Furman
	#test golden path

Change 3022865 on 2016/06/22 by David.Ratti

	gameplay cue editor: remove "GameplayCue_" prefix from default GameplayCueNotify filename in default ability system projects

	#rb none
	#tests ability system sample project

Change 3022847 on 2016/06/22 by Rolando.Caloca

	O - Remove checkerboard SSS rendering and recombine post process pass when SSS not enabled
	#rb Marcus.Wassmer
	#codereview Marcus.Wassmer, Brian.Karis
	#tests Load Agora_P, check perf, toggle r.SSS.Quality 1/0, check characters with skin

Change 3022804 on 2016/06/22 by Mieszko.Zielinski

	Fixed AIController clearing out CachedGameplayTasksComponent on UnPosses, even if Pawn was not the CachedGameplayTasksComponent's owner #UE4

	Also, made running BT not clearing info in BB if AI's current BB is compatible with the one required by BT

	#rb Lukasz.Furman
	#test golden path

Change 3022674 on 2016/06/22 by Robert.Manuszewski

	Reimplementing CL #2993969 (Dev-Blueprints) by Maciej.Mroz:

	UE-30729 Crash in Native Orion when selecting Sword or Tomahawk

	Clear AsyncLoading in subobjects.

	#jira OR-23997

	#rb me
	#tests Golden path in editor build, selecting Venus

Change 3022405 on 2016/06/21 by Ryan.Gerleve

	Fix for OR-23948, crash with death cam enabled. Use a weak pointer to store the viewer on the DemoNetDriver and update it when the game player controller is received.

	#rb john.pollard
	#tests bug repro

Change 3022387 on 2016/06/21 by Ryan.Gerleve

	Added the ability to disable ticking of individual worlds.

	#tests golden path
	#rb john.pollard
	#codereview marc.audy

Change 3022312 on 2016/06/21 by Nick.Darnell

	Home Screen - Adding a max aspect ratio lock to SBox, may need some more fine tuning math may still be a bit pants in some cases.  The XP ovewview panels now have a basic support for account and hero progression.  Hero one shows the last hero you played, widget is invisibile until you play your first game.  The tiles now use the Max Aspect Ratio to prevent stretching forever on 21:9 monitors causing them to just look crazy.  Weekly quests now show the weekly quests screen when clicked.  OrionUserWidgetBase no longer prevents blueprints from running code in reponse to mouse down/up actions if the userwidget consumes input - it always calls the blueprint code first, and always returns handled if it consumes input.

	#rb none
	#tests PIE

Change 3022207 on 2016/06/21 by Wes.Hunt

	Fix Analytics provider to retain passed in AppVersion string instead of using default %VERSION%.
	#rb none
	#tests run windows server with one bot connecting and checking analytics version is what is expected.

Change 3021808 on 2016/06/21 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - call GetTotalMicroseconds instead of GetTotalMilliseconds * 1000
	#rb none
	#tests compile run ps4

	#ROBOMERGE-SOURCE: CL 3021805 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3021663 on 2016/06/21 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - CancelFindSessions() didn't null out search result
	- future FindSession() calls would fail with "search in progress"
	#rb joe.wilcox
	#tests UT matchmaking

	#ROBOMERGE-SOURCE: CL 3021655 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3021508 on 2016/06/21 by Marcus.Wassmer

	Remove anti-ghosting AA for now.
	Causes dithered transparency to be very wrong (Dekker shoulders)
	And also a border around all characters of 'noisy fuzz' even when they are not moving
	#rb none
	#test PC/PS4
	#codereview Brian.Karis,Jordan.Walker

Change 3021475 on 2016/06/21 by Marcus.Wassmer

	Duplicate fix for subsurface spec in prep for PS4 optimization. (DevRendering 3018664)
	unified some code for easier maintainance, fixed missing multiply from former change
	#rb none
	#test PS4/PC agora

Change 3021468 on 2016/06/21 by Michael.Noland

	Physics: Added more information when convex cooking partially succeeds (fails initially but succeeds with inflation) indicating the full path of the mesh that failed
	#rb ori.cohen
	#tests Compiled changes, will provide more information when issue reoccurs in build machine cooks
	#jira OR-24082

Change 3021460 on 2016/06/21 by Michael.Noland

	Engine: Added time spent in each hitch bucket to FPS chart .log output and analytics output
	#rb bob.tellez
	#tests Tested a match in Paragon
	#codereview dmitry.rekman

Change 3021368 on 2016/06/21 by Marcus.Wassmer

	Create Tonemapper configuration with no ColorFringe to save .15ms on PS4 when colorfringe is not used.
	#rb rolando.caloca
	#test agora with/wo new config
	#codereview brian.karis

Change 3021119 on 2016/06/21 by David.Ratti

	Make -notimeouts work during initial connecting phase
	#codereview John.Pollard
	#rb none
	#tests pie agora

Change 3021048 on 2016/06/21 by David.Ratti

	minor tweaks to gameplay cues:
	-Descriptions of engine GC notify classes
	-Added 'auto attach to owner' flag on actor notify class.

	#rb none
	#test ability system sample project

Change 3020694 on 2016/06/20 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3020301

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 3020674 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

	#CodeReview: cody.haskell

Change 3020624 on 2016/06/20 by Michael.Noland

	Engine: Pushing more fps chart analytics up to engine level code from Paragon
	Engine: Pushing benchmark config vars up to engine level code from Paragon, and added records of individual sub-steps of benchmarks
	#rb Bob.Tellez
	#tests Golden path Solo VS AI in Paragon and forced a match
	#codereview bob.tellez, peter.knepley

Change 3020181 on 2016/06/20 by Dmitry.Rekman

	Re-do allowing allocations in NullRHI (OR-24029).

	- Originally CL 2990582 by MarcusW, stomped during merge by CL 3006926.

	#rb none
	#codereview Marcus.Wassmer, Andrew.Grant
	#tests none

Change 3020139 on 2016/06/20 by Ryan.Gerleve

	Added ability to pause replay recording while keeping the current replay open.

	#rb john.pollard
	#tests paused deathcam recording while disabled

Change 3019817 on 2016/06/20 by Dmitry.Rekman

	Poison allocated/freed memory in Debug and Development (non-editor) configs.

	- With this Paragon client may be more likely to crash on start.

	#rb Steve.Robb
	#codereview  Robert.Manuszewski, Michael.Noland, Andrew.Grant, Gil.Gribb, Steve.Robb
	#tests Built Linux server and Windows client, ran them, also built Windows Orion editor.

Change 3019599 on 2016/06/20 by Rolando.Caloca

	O - Fix flickering on heroes with morph targets
	#rb Marcus.Wassmer
	#tests Load Agora_P
	#jira OR-23866

Change 3019581 on 2016/06/20 by Wes.Hunt

	Fix crash reporter client analytics for internal builds. (Pushing critical fix immediately from //UE4/Orion-Staging)
	#rb Chris.Wood
	#tests none

Change 3019524 on 2016/06/20 by David.Ratti

	call APawn::OnRep_Controller when ClientRetryClientRestart sets the pawn directly

	#rb none
	#tests golden path

Change 3019406 on 2016/06/20 by Marcus.Wassmer

	Duplicate 3014956 from Dev-Rendering
	Fixed HLOD and mesh LODs getting hit by Lightmass ray traces that didn't originate from a mesh
	Volume lighting samples and precomputed visibility cells are now only placed on LOD0 (of both mesh LODs and HLOD)
	#rb none
	#test none
	#codereview Jordan.Walker

Change 3019371 on 2016/06/20 by Graeme.Thornton

	Optimize cooked asset registry dependency node data structures. Saves ~10mb on Paragon.

	#rb robert.manuszewski
	#tests tested with cooked pc client + server

Change 3018492 on 2016/06/17 by Laurent.Delayen

	FBoneReferenceCustomization: support editing properties in AnimBP defaults.

	#rb none
	#tests: Sword.

Change 3017974 on 2016/06/17 by Ryan.Gerleve

	Add an option to toggle deathcam in the gameplay settings UI if the OrionRuntimeOption for deathcam is enabled.

	#rb cody.haskell
	#tests settings menu, enabled and disabled deathcam

Change 3017913 on 2016/06/17 by Robert.Manuszewski

	Fixing leaked log archive.

	#rb Steve.Robb
	#tests Cooked Win64 client + server

Change 3017873 on 2016/06/17 by Daniel.Lamb

	Fix warning in diff cooked build.
	#test none
	#rb none

Change 3017676 on 2016/06/17 by Sam.Zamani

	#online,identity,mcp
	fix for uninitialized variable

	#rb dmitry.rekman
	#tests none

Change 3017671 on 2016/06/17 by Robert.Manuszewski

	Fxied and improved log message when cluster assumptions are violated.

	#rb Steve.Robb
	#tests Win64 client + server (cooked) golden path

Change 3017358 on 2016/06/16 by Nick.Atamas

	Checking in Darnell's change that adds correct geometry to widgets inside retainer widgets.

	#rb none
	#test PIE

Change 3017242 on 2016/06/16 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3017179

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 3017233 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	//Orion/Dev-General/OrionGame/Content/UI/Tooltips/Hero/AbilityTooltip.uasset - can't integrate exclusive file already opened
	#CodeReview: jason.bestimt

Change 3017237 on 2016/06/16 by Dmitry.Rekman

	Fix accessing uninitialized field (kills valgrind warnings).

	#rb none
	#codereview Michael.Noland, Andrew.Grant, Ori.Cohen
	#tests Compiled and ran Linux server.

Change 3017236 on 2016/06/16 by Dmitry.Rekman

	Initialize missed field (kills valgrind warnings).

	#rb none
	#codereview Michael.Noland, Andrew.Grant
	#tests Compiled and ran Linux server.

Change 3017186 on 2016/06/16 by Dmitry.Rekman

	Linux: Add hooks for libcrypto memory functions.

	- Libcurl uses OpenSSL, which allocates memory using libcrypto's CRYPTO_malloc() and apparently on purpose does not initialize it.
	- This change a) redirects these allocations to use UE's malloc  b) initializes it with zeros, avoiding valgrind's warnings.
	- This behavior is not used on Shipping configurations because the impact on entropy is not understood (TBD later).

	#rb Michael.Noland, Rob.Cannaday (original version)
	#codereview Michael.Noland, Rob.Cannaday, Alex.Fennel, Chris.Babcock, Sam.Zamani
	#tests Compiled Linux server and ran it.

Change 3017037 on 2016/06/16 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: andrew.grant
	Merging content fix for driver crash from Release-27

	#ROBOMERGE-SOURCE: CL 3017036 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3016838 on 2016/06/16 by Alexis.Matte

	#jira UE-31901 fix to export all blueprint component to obj

	#rb uriel.doyon
	#codereview matt.kuhlenschmidt
	#test export a blueprint containing multiple staticmesh component to obj

Change 3016629 on 2016/06/16 by Dmitry.Rekman

	Make Binned default on Linux non-editor builds.

	#codereview Andrew.Grant
	#rb none
	#tests none

Change 3016615 on 2016/06/16 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: andrew.grant
	Temporarily disabling jemalloc for Linux
	#rb #tests none
	[CodeReviewed] Dmitry.Rekman

	#ROBOMERGE-SOURCE: CL 3016612 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3016566 on 2016/06/16 by Michael.Noland

	Engine: Fixed a regression that broke safe zone debugging features in Windows by reintroducing code from CL# 2861030 that was accidentally deleted in a merge
	#codereview andrew.grant
	#rb dan.hertzka
	#tests Tested r.DebugSafeZone.Mode 1 with r.DebugSafeZone.TitleRatio 0.9 in PIE and confirmed that SSafeZone obeyed it and the red overlay appeared

Change 3016521 on 2016/06/16 by Ryan.Gerleve

	Client recoreded replay fixes and optimizations from Dev-Networking (and one from //UE4/Main), for deathcam.

	Includes the following CLs from Dev-Networking:
	2997908
	2998001
	2998832
	2999054
	2999057
	2999749
	3000051
	3001361
	3001365
	3004958
	3009972
	3009973

	And this CL from //UE4/Main:
	3015528

	#tests golden path, replays
	#rb john.pollard

Change 3016503 on 2016/06/16 by Brian.Karis

	Fixed uninitialized variables on particle lights. Fixes hair shading.

	#rb none
	#tests editor

Change 3016429 on 2016/06/16 by Max.Chen

	Sequencer: Fix StartTime when clamping start offset 0. Follow up to CL #3009386.

	#jira UE-29167
	#tests Load up AnnounceMaster and adjust leading edge of animation clips
	#rb Frank.Fella

Change 3016356 on 2016/06/16 by Lina.Halper

	- Fix crash on rampage morphtarget

	Merging using //UE4/Dev-Framework_to_//Orion/Dev-General
	 - this is dupe change from Dev-Framework

	#jira: https://jira.ol.epicgames.net/browse/OR-23194
	#rb: Ori.Cohen
	#tests: editor/pie spawn as rampage's alt skin

Change 3015696 on 2016/06/15 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 27.2 @ CL 3015646

	This re-unifies our build pipeline.  Fingers crossed. (only 6 files are actually different)

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 3015672 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3015642 on 2016/06/15 by Mieszko.Zielinski

	Fixes to multiple reasons AI bots were getting stuck #Orion

	#rb Lukasz.Furman
	#test golden path

Change 3015622 on 2016/06/15 by Mieszko.Zielinski

	fixed FMetaNavMeshPath doing navmesh path update without checking nav agent if pathfinding should be postponed #UE4

	#rb Lukasz.Furman
	#test golden path

Change 3015514 on 2016/06/15 by Uriel.Doyon

	Fixed GlobalMipBias not affecting max texture resolution.
	This fix is implemented differently in Dev-Rendering in  CL 301498.
	#jira OR-23511
	#rb marcus.wassmer
	#test played game with different quality settings

Change 3015258 on 2016/06/15 by Lina.Halper

	Fix crash with recursive reference between two assets

	#rb: Ori.Cohen
	#tests: Sword

Change 3014988 on 2016/06/15 by Wes.Hunt

	Fix Cook Analytics to correctly use the Legacy provider since it sends to a local data collector.
	#rb daniel.lamb
	#tests compile Orion

Change 3014962 on 2016/06/15 by Olaf.Piesche

	Replicating CL 3013696 from Dev-Rendering; making quality level spawn rate scale work for GPU emitters.

	#rb simon.tovey
	#tests PC editor game

Change 3014958 on 2016/06/15 by Laurent.Delayen

	Added SkeletalMeshComponent::bIncludeComponentLocationIntoBounds to help in cases where SMU_OnlyTickPoseWhenRendered is set, and an animation pushed the mesh beyond the capsule.
	This ensures that when the capsule is in view, the mesh will remain updated.

	#rb Michael.Noland
	#test Sword ultimate from another player's view.

Change 3014833 on 2016/06/15 by Laurent.Delayen

	Fix for Base Heroes having their locomotion blendspace broken.

	#rb Thomas.Sarkanen
	#codereview Thomas.Sarkanen
	#tests Gadget networked PIE

Change 3014688 on 2016/06/15 by Nick.Darnell

	UMG - Fixing IsHovered on UUserWidgets.  SObjectWidget did not properly call the super for MouseEnter/MouseLeave allowing SWidget's implementation to set and unset the bool.

	#rb none
	#tests PIE

Change 3014325 on 2016/06/15 by Marcus.Wassmer

	Duplicate 3012706:
	Scalability CVAR for ContactShadows
	#rb john.billon
	#test flip cvar in editor.

Change 3014230 on 2016/06/15 by Robert.Manuszewski

	Fix potentially missing log output when serializing text of length equal to the async log writer buffer size.

	#rb Steve.Robb
	#tests Tested in editor build (client + server)

Change 3013913 on 2016/06/14 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Updating from DMM (updated from 27.1MM)

	#RB:none
	#Tests:compiled

	#ROBOMERGE-SOURCE: CL 3013912 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3013437 on 2016/06/14 by Simon.Tovey

	Speculative fix for OR-23158

	Couldnt' repro NANs but did see it reading garbage.

	Reinstated the check that direct accesses for particles in a zero size emitter will return null.
	Altered selection code to reselect when partilce is dead or returns null and to not allow new selection on zero size emitters.

	#tests GoldenPath, No broken fx and no more reading garbage.
	#rb Olaf.Piesche

Change 3013063 on 2016/06/14 by Jason.Bestimt

	#ORION_DG - Unclog robomerge from DMM Merge

	#RB:none
	#tests:none

Change 3012936 on 2016/06/14 by Rob.Cannaday

	Fix for multiple account login not kicking previous logins
	Client was not parsing response from backend.  Client was expecting content-type to be "application/json" (using FString::Equals).  Backend was returning "application/json;charset=UTF-8".  Changed usage from FString::Equals to FString::StartsWith
	#jira FORT-25452
	#rb sam.zamani
	#tests multiple account login, frontend only

	Merge from FN CL 3011647, plus fixing one other location expecting "application/json"

Change 3012696 on 2016/06/14 by Max.Chen

	Sequencer: Select actors for corresponding selected keys or sections.

	Copy from Dev-Sequencer

	#jira UE-30727
	#tests Load up AnnounceMaster and select keyframes
	#rb none

Change 3012691 on 2016/06/14 by Max.Chen

	Sequencer: Fix dragging the leading edge of a skeletal animation section so that it adjusts the start offset of the animation clip.

	Copy from Dev-Sequencer

	#jira UE-29167
	#tests Load up AnnounceMaster and adjust leading edge of animation clips
	#rb Frank.Fella

Change 3012690 on 2016/06/14 by Andrew.Grant

	Removed Linux work-around for memory stomp alignment
	#rb none
	#tests compiled

Change 3012687 on 2016/06/14 by Max.Chen

	Sequencer: Fix lower bound when doing post render tick so that the start of a shot doesn't render with the previous shot's time.

	Copy from Dev-Sequencer

	#rb none
	#tests Load up AnnounceMaster and played through sequence

Change 3012627 on 2016/06/14 by Mieszko.Zielinski

	Added logging of current MoveID to PathfollowingComponent's vlog snapshot #UE4

	#rb none
	#test golden path

Change 3012615 on 2016/06/14 by Mieszko.Zielinski

	Improved fix to BTDecorator_Blackboard's latent tasks aborting #UE4

	#rb Lukasz.Furman
	#test golden path

Change 3012572 on 2016/06/14 by Dmitry.Rekman

	Fix realloc with non-default alignment in jemalloc (OR-23541).

	- Removed obsolete check(), the code was already there since CL 1834526.

	#rb none
	#codereview Andrew.Grant, Robert.Manuszewski
	#tests none

Change 3012481 on 2016/06/14 by David.Ratti

	ability system #include fixups and move orion attribute capture marcros into base engine ability system execution class

	#rb none
	#tests ability system sample project

Change 3012457 on 2016/06/14 by Andrew.Grant

	Un-fix misaligned memory-stomp fix for Linux
	#rb none
	#tests compiled

Change 3012320 on 2016/06/14 by Graeme.Thornton

	Fixes for MemoryAnalyser2 solution
	 - Upgraded to VS 2015
	 - Clean up solution configurations. Only leave "Any CPU"
	 - Switch project to build with "Any CPU" rather than "x64".

	Reimplementation of CL 3012221 from Dev-Core

	#rb robert.manuszewski
	#tests opened the main window form correctly in visual studio

Change 3012316 on 2016/06/14 by Thomas.Sarkanen

	Fix copying non-POD structs in the fast path

	Prevents double-deletions of TArrays etc.

	#jira UE-31394 - Fix problems with non-POD UStructs using the anim BP fast-path
	#tests Played PIE & died as Sword in OrionEntry, Exited PIE.
	#rb Martin.Wilson

Change 3012187 on 2016/06/14 by Graeme.Thornton

	Corrected error message when not specifying linux server device command line correctly in UAT

	#rb Dmitry.Rekman
	#tests Checked error message was useful when wrong command line was specified

Change 3012026 on 2016/06/13 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3011936

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 3011996 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	//Orion/Dev-General/oriongame/Content/Characters/Heroes/Hammer/Abilities/Subjugate/FX/P_SubjugateSwirls.uasset - can't integrate exclusive file already opened
	#CodeReview: jason.bestimt

Change 3011969 on 2016/06/13 by Brian.Karis

	Tweaks for hair

Change 3011638 on 2016/06/13 by Andrew.Grant

	Fixed issue where RepLayout could use unaligned memoryfor property construction if allocator did not use a suitable default (fixes crash when running with MemStomp).

	Also added sanity check in UScriptStruct::InitializeStruct that memory is correctly aligned before calling constructor

	#codereview Dave.Ratti, John.Pollard
	#rb none
	#tests Ran with/without memstomp

Change 3011575 on 2016/06/13 by jason.bestimt

	#ORION_MAIN - Merge DUI @ CL 3011414

	NOTE - Card data was altered.  Shame shame shame.  Not authoritative in DUI

	#RB:none
	#Tests:none

	[CodeReviewed]: matt.schembari, kerrington.smith, sammy.james, matt.kuhlenschmidt

	#ROBOMERGE-SOURCE: CL 3011552 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 3011462 on 2016/06/13 by Alexis.Matte

	#jira UE-31901 The outputdevice is adding 2 uninitialize character at the end of any log, this is cause by the terminator logic. The fix is to not add those characters when no terminator should be add.

	#rb nick.darnell
	#codereview Robert.Manuszewski
	#test export a obj file and verify all object are exported in maya or max

Change 3011424 on 2016/06/13 by Martin.Wilson

	Hack out fastpath anim bp code until heap corruption issue can be fixed.

	#rb Laurent.Delayen
	#tests Persona + PIE

Change 3011191 on 2016/06/13 by Mieszko.Zielinski

	Added missing initialization of PathFollowingComponent::CurrentMoveInput #UE4

	#rb none
	#test golden path

Change 3011138 on 2016/06/13 by Mieszko.Zielinski

	Switched bots over from travel mode to sprinting #Orion

	#rb Lukasz.Furman
	#test golden path

Change 3011075 on 2016/06/13 by David.Ratti

	Default GameplayAbility instancing policy to InstancePerExecution

	#rb BenZ
	#tests compile

Change 3011051 on 2016/06/13 by David.Ratti

	Add missing include so GameplayAbilitySet.h can be included on its own.

	#rb none
	#tests compile

Change 3010968 on 2016/06/13 by Mieszko.Zielinski

	Fixed console variables crashing on "" string #UE4

	#rb Lukasz.Furman
	#codereview Martin.Mittring
	#test PIE

Change 3010888 on 2016/06/13 by Alexis.Matte

	#jira OR-23301 Close the OS handle when closing the FAsyncWriter.

	#rb Robert.Manuszewski
	#codereview Robert.Manuszewski
	#test try to export a obj file

Change 3010239 on 2016/06/11 by Michael.Noland

	UMG - Adding back the logic to use the normal WidgetTree when the DesignerWidgetTree is not defined. [duplicated fix from CL# 2998267]

	#jira UE-31570
	#tests Compiled some blueprints
	#rb none

Change 3009870 on 2016/06/10 by Wes.Hunt

	Remove logging of analytics payloads from dedicated servers #jira UE-31858
	#codereview:dmitry.rekman
	#rb none
	#tests All testing was done in Dev-Framework. This change was redone in this branch to get it here faster.

Change 3009599 on 2016/06/10 by Michael.Noland

	Rendering: Corrected a misleading help comment on r.StaticMeshLODDistanceScale, explaining how it affects LOD calculations (it multiplies the effective distance, so larger numbers make transitions happen sooner)
	#tests Verified in the output of the help command
	#rb none
	#rn

Change 3009559 on 2016/06/10 by Marcus.Wassmer

	Fix 11/11/10 SceneColorFormat option, enable AntiGhosting on TemporalAA, ensure TemporalAA output is the correct format for accumulating results.  Set SceneColorFormat to 2 on PS4 and lowspec PC.  All in all saves .3-.5ms on PS4 and improves temporalAA ghosting.
	#rb Brian.Karis
	#test Agora PS4 / PC

Change 3009525 on 2016/06/10 by David.Ratti

	Fix case where ObjectLIbrary would not be able to find classes when searching "/Game" path.

	#rb none
	#tests object libraries in paragon

Change 3009228 on 2016/06/10 by David.Ratti

	remove world check. Can be triggered in editor with PIE

	#rb none
	#tests pie

Change 3009050 on 2016/06/10 by Dmitry.Rekman

	Fix LinuxClient platform not being built on Windows, and not instantiating a target platform instance.

	- Fixes by BenM.

	#rb none
	#codereview Ben.Marsh
	#tests Compiled OrionEditor on Linux.

Change 3008973 on 2016/06/10 by Marcus.Wassmer

	Fix Windualshock on VS2015
	#rb Rolando.Caloca
	#test PS4 controller on VS2015 build

Change 3008970 on 2016/06/10 by David.Ratti

	Fix warning about minimal replication tag count
	-Made bit count a config setting. Bumped to 5
	-Minor optimization to UAbilitySystemGlobals::Get()

	#rb none
	#tests goldne path, pie

Change 3008478 on 2016/06/09 by Jason.Bestimt

	#ORION_DG - Merge MAIN @ CL 3008469

	#RB:none
	#Tests:none

Change 3008416 on 2016/06/09 by Andrew.Grant

	Adding 'config' as an option to set both clientconfig / serverconfig when using BuildCookRun
	#review-3008417 Ben.Marsh, Justin.Sargent
	#rb none
	#tests BuildCookRun with config

Change 3008286 on 2016/06/09 by Dmitry.Rekman

	Add LinuxClient target platform.

	#rb none
	#tests Compile OrionEditor on Linux.
	#codereview Brad.Angelcyk, Ben.Marsh

Change 3007978 on 2016/06/09 by jason.bestimt

	#ORION_MAIN - Merge DUI @ CL 3007507

	#RB:none
	#Tests:none

	[CodeReviewed]: matt.schembari, kerrington.smith

	#ROBOMERGE-SOURCE: CL 3007968 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3007771 on 2016/06/09 by Laurent.Delayen

	Fixed GetIntFromComp breaking with INDEX_NONE. Fixes crash in OrientationWarping node.

	#rb martin.wilson
	#codereview martin.wilson
	#tests Sword Leap.

Change 3007436 on 2016/06/09 by David.Ratti

	change designer facing parameter name
	#rb none
	#test compile

Change 3007408 on 2016/06/09 by David.Ratti

	WaitGameplayEffectBlockedImmunity - ability task for listening to immunity events

	#rb danY
	#tests pie

Change 3007250 on 2016/06/09 by bruce.nesbit

	Banner impact location fix. (OR-23179)

	#rb none

	#tests Game+PIE

Change 3007228 on 2016/06/09 by Ben.Marsh

	BuildGraph: Rename -SkipNodesWithoutTickets parameter to -SkipTargetsWithoutTickets, to reflect that it's filtering the list of targets rather than the full graph.

	#rb none
	#tests none

Change 3007225 on 2016/06/09 by Ben.Marsh

	EC: Set the -TicketSignature=... parameter for all BuildGraph jobs started by EC to the URL of the current job.

Change 3006985 on 2016/06/08 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3006936

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 3006978 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 3006926 on 2016/06/08 by Andrew.Grant

	Merging //UE4/Main @ 300872 via //UE4/Orion-Staging
	#rb none
	#tests engine QA, orion qa smoke

Change 3006444 on 2016/06/08 by Ben.Marsh

	BuildGraph: Add mechanism to specify that nodes can only be built once for a given changelist. Nodes can have an associated ticket file, and they are only permitted to build if the ticket is assigned to the current job. Tickets are created if they don't exist, and written with a signature specific to the job specified via the -TicketSignature="..." parameter. By default, builds will fail if a ticket has been already granted to another job, but the -SkipNodesWithoutTickets parameter instructs the graph to skip affected nodes instead.

	#rb none
	#tests none

Change 3006389 on 2016/06/08 by Daniel.Lamb

	Delay the processing of packages which aren't ready till the end of the cook.
	This allows other packages to be processed sooner.
	#rb Peter.Sauerbrei
	#test cook orion.

Change 3006306 on 2016/06/08 by Michael.Noland

	Rendering: Added FreezeRendering to the console autocomplete list
	#rn

Change 3006305 on 2016/06/08 by Michael.Noland

	HLOD: Added a way to control how far down the HLOD hierarchy to allow showing (can be used to limit quality loss and streaming texture memory usage on high scalability settings for example)
	Controlled by the new cvar r.HLOD.MaximumLevel, which can be set to the following values:
	-1: No maximum level (default)
	0: Prevent ever showing a HLOD cluster instead of individual meshes
	1: Allow only the first level of HLOD clusters to be shown
	2+: Allow up to the Nth level of HLOD clusters to be shown

	Note: This does not affect the memory used by the HLOD meshes itself or their always loaded low mip levels, it will only save the memory associated with streaming in the higher mip levels

	HLOD: Allowed r.HLOD console command to be used in Test configurations
	HLOD: Removed some dead code in ALODActor and scene view / scene proxy relating to a different way to force visualization that has no trigger
	HLOD: Fixed an uninitialized memory bug in the static mesh scene proxy HLODcoloration visualization code

	#rn
	#codereview jurre.debaare
	#rb marc.audy
	#tests Tested with various settings in Paragon and tried creating some new clusters in the editor

Change 3006304 on 2016/06/08 by Michael.Noland

	Engine: Changed the code in AActor::IncrementalRegisterComponents to obey bAutoRegister for the root component rather than asserting that it is true. Note: If children components have bAutoRegister=true, they will still pull the root component into the fray and cause it to be registered first
	#rb marc.audy
	#tests Tested with code that registers or unregisters HLOD clusters at varying levels in Paragon

Change 3006041 on 2016/06/08 by Andrew.Grant

	Added buildidoverride to shipping whitelist
	#rb none
	#tests compiled and used param in shipping

Change 3005678 on 2016/06/08 by Ben.Marsh

	Back out changelist 3004395

	#rb none
	#tests none

Change 3005265 on 2016/06/07 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3005120

	#RB: none
	#Tests: none

	#ROBOMERGE-SOURCE: CL 3005250 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 3005081 on 2016/06/07 by Daniel.Lamb

	Reworked the way packages which are renamed on load are added to the cooked package list.
	Cooker now has options for MaxMemoryAllowance as a percentage and also MinFreeMemory (which takes into account used system memory not just total system memory).
	#rb Andrew.Grant, Marcus.Wasmer
	#test cook orion

Change 3004752 on 2016/06/07 by Daniel.Lamb

	Requeue packages to the next package on the list instead of to the end of the list.
	#rb Andrew.Grant
	#test cook orion

Change 3004560 on 2016/06/07 by David.Ratti

	Kill timelines, latent actions, timer when recycling gameplay cues

	#rb danY
	#tests pie

Change 3004559 on 2016/06/07 by David.Ratti

	Object Library:
	-Added bool bIncludeOnlyOnDiskAssets that can be set by owner. Passed on to the AR filter when gathering assets.

	GameplayCue Editor:
	-Fix issue with new notifies not showing up after being created through the GC Editor (until restart).

	-Fix issue for new projects, that don't have gameplayclue tags defined, not being able to add gameplay cue tags through the editor without restarting once.

	#rb none
	#tests editor

Change 3004395 on 2016/06/07 by Ben.Marsh

	BuildGraph: Add a script function to ensure exclusive access to a given resource. The AcquireLockFile() function takes two arguments; a path to a text file, and the name of an owner. The file is created and the owner name written to it if it doesn't already exist, otherwise the contents of it are compared against the given owner string. The operation happens transactionally, and the function returns true if file contains the given owner string on exit. Logical and/or conditions are now also short-circuited, so the result of the AcquireLockFile() function can be used to control derived property definitions within an executing job.

	#rb none
	#tests none

Change 3004164 on 2016/06/07 by David.Ratti

	Ability system: use player controller netmode over avatar actor when possible. Fixes issue if torn off, authority, client side actor tries to activate an ability.

	#rb danY
	#tests multi pie

Change 3003837 on 2016/06/07 by David.Ratti

	Ability system engine work
	-Default to /Game as search path for gameplay cues, if no explicit paths are set in the config.

	#rb none
	#tests ability sample project

Change 3002800 on 2016/06/06 by Marcus.Wassmer

	Fix shader crash in PIE
	#rb none
	#test PIE

Change 3002657 on 2016/06/06 by Dmitry.Rekman

	Do not copy to clipboard on crash if headless or on the wrong thread.

	- Could result in crash handler crashing itself in some circumstances.

	#rb none
	#codereveiw Brad.Angelcyk
	#tests Compiled Linux dedicated server and CrashReportClient.

Change 3002546 on 2016/06/06 by Daniel.Lamb

	Improve cooking performance.
	Allow cooker to save other packages opportunistically if main package is compiling shaders.
	Allow cooker to load more packages if there aren't many packages to save.
	#rb Josh.Adams
	#test cook orion

Change 3002369 on 2016/06/06 by Marcus.Wassmer

	Project setting for optional rendering features to reduce shader compile times.
	# of shaders per material is reduced by ~30-40% depending on material
	#rb Daniel.Wright
	#test Editor with/without all options, cooked ps4.

Change 3002142 on 2016/06/06 by David.Ratti

	Ability system engine level:
	-Fix crash when gameplay cue editor starts if there are no gameplay cue paths specified
	-Fix crash when GameplayCue tag is not specified

	#rb none
	#tests sample ability system project, paragon

Change 3002106 on 2016/06/06 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: sam.zamani
	#orion
	- add support for code tokens which can be shared/redeemed
	- refactor of existing friend founder's pack codes to be displayed in a generic way using code token info
	- added CodeToken.FounderFriendInviteT0 for new paragon tier 0 code which grants access to game without also giving a Founder's pack
	- added CodeToken.FounderFriendInviteT1 to replace existing CodeToken.FriendPC and CodeToken.FriendPS4 Founder's pack codes. Existing codes aliased to the new CodeToken.FounderFriendInviteT1 code
	- No longer differentiation between PC/PS4 friend codes
	- "Share Friend Code" button will now process all available codes that can be issued instead of just 1
	- updated Orion service Mcp call for getUnredeemedCodes() to ignore the code template id and return all available codes. Each returned code will also include the type

	[CodeReviewed]: david.nikdel, jason.bestimt
	#rb david.nikdel
	#tests PC PIE using localhost and profile proxy for granting codes, also existing account with legacy codes

	#ROBOMERGE-SOURCE: CL 3002104 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3001218 on 2016/06/05 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3001162

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 3001200 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 2999508 on 2016/06/03 by jason.bestimt

	#ORION_MAIN - Merge 27 @ CL 2999463

	#RB:none
	#Tests:none

	#ROBOMERGE-SOURCE: CL 2999498 in //Orion/Main/...
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	//Orion/Dev-General/OrionGame/Content/Audio/ClassesAndMixes/Classes/Master.uasset - can't integrate exclusive file already opened
	#CodeReview: jason.bestimt

Change 2999465 on 2016/06/03 by Robert.Manuszewski

	Whitelisting more DLLs for injection.

	#rb none
	#tests none

Change 2999455 on 2016/06/03 by Lukasz.Furman

	disabled path invalidation events for minions
	#orion
	#rb Mieszko.Zielinski
	#tests PIE with additional debug logging

Change 2998488 on 2016/06/02 by Michael.Noland

	Engine: Prevent forced drawing of spline components in Test configuration
	#codereview james.golding
	#tests Ran a cooked Test build on a map with splines in it
	#rb david.ratti
	#robomerge: main

Change 2997954 on 2016/06/02 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jon.lietz
	OR-22425

	no longer try to updat the tag map and modifiers when the gameplay effect that is being removed was not active.

	#RB Dave.Ratti
	#Tests golden path

	#ROBOMERGE-SOURCE: CL 2997940 in //Orion/Release-0.27/... via CL 2997943
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2997750 on 2016/06/02 by Graeme.Thornton

	Add FPakFile::Check() that attempts to open and read the data out of every file in a pak, to check for corruption
	Added -checkpak option for force a check of every mounted pak file

	#rb robert.manuszewski
	#tests tested against cooked pc client. made sure my data succeeded. made sure corrupted data throws an error.

[CL 3031715 by Andrew Grant in Main branch]
2016-06-28 17:59:42 -04:00
Justin Sargent
1ea3ed4697 Copying //UE4/Portal-Staging to //UE4/Main
#lockdown nick.penwarden

[CL 2920312 by Justin Sargent in Main branch]
2016-03-23 17:21:56 -04:00
Matthew Griffin
755f725131 Merging //UE4/Release-4.11 to //UE4/Main (up to CL#2852902)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2835191 on 2016/01/19 by Nick.Whiting

	Invert the y-axis on the SteamVR controllers to match the convention of the engine and the rest of the gamepads

	#jira UE-22705

Change 2835686 on 2016/01/20 by Gareth.Martin

	Fixed landscape material instances not being updated if holes are painted on a landscape that doesn't have the landscape visibility mask node in the material and then the visibility mask node is added to the material later.
	#jira UE-18187

Change 2835767 on 2016/01/20 by Richard.Hinckley

	#jira UE-25499 Added a cursor to TopDown template (C++ version) to match the BP version.

Change 2835772 on 2016/01/20 by Richard.Hinckley

	#jira UE-25499 Adding the material asset for the C++ TopDown template's cursor.

Change 2835811 on 2016/01/20 by Taizyd.Korambayil

	#jira UE-25699 Added Validity Checks in BP logic, unchecked CDO for Pixel Ship, to Fix Log Warnings
	#jira UE-25704 Adjusted Matinee to happen at Box Location
	#jira UE-25688 Adjusted Player Starts
	#jira UE-25693 Adjusted Player Starts

Change 2835863 on 2016/01/20 by Gareth.Martin

	Fixed crash in the landscape ramp and mirror tools if the streaming level containing the landscape is hidden (or possibly if the landscape actor is deleted)
	#jira UE-24883

Change 2835889 on 2016/01/20 by Taizyd.Korambayil

	#jira UE-25698 Enabled V-sync, also fixed up player Respawn Issue

Change 2835995 on 2016/01/20 by Jamie.Dale

	The output log now hard-wraps lines to prevent long lines causing performance issues

	#jira UE-24187

Change 2836052 on 2016/01/20 by Taizyd.Korambayil

	#jira UE-25675 Added Blocking Volume to prevent Player from Falling off map
	#jira UE-25676 Added Blocking Volumes so that the Player doesn't get stucl at awkward corners under the Bridge

Change 2836137 on 2016/01/20 by Chad.Taylor

	Vehicle and VehicleAdv template content fixes for new VR camera

	#jira UE-25507

Change 2836166 on 2016/01/20 by Gareth.Martin

	Fixed hiding a streaming level containing a landscape causing the landscape editor to switch to the "New Landscape" tool instead of exiting
	#jira UE-25093

Change 2836174 on 2016/01/20 by Chad.Taylor

	IHeadMountedDisplay crash fix associated with accessing a dangling pointer.

	#jira UE-25272

Change 2836179 on 2016/01/20 by Jamie.Dale

	Optimized FShapedGlyphSequence reverse look-up

	There's now a reverse look-up map of cluster indices to their glyph data in order to avoid brute force looping

	#jira UE-24187

Change 2836286 on 2016/01/20 by Chris.Babcock

	Update Qualcomm TextureConverter for OSX
	#jira UE-22092
	#ue4
	#android

Change 2836328 on 2016/01/20 by Nick.Darnell

	Fixing a problem with widget components crashing on destruction with the render commands to pre/post render for window render commands needing access to the policy, but it potentially being deleted.  Inserting a NoOp command that keeps the shared ptr alive through the RHI render process.

	#jira UE-25752

Change 2836342 on 2016/01/20 by Nick.Darnell

	Depending on shutdown order, the Slate Renderer may go away, and then render data handles may not be collected correctly because they are trying to reference a pointer that's no longer valid and cause a crash on exit. The correct approach would be to have render handles actually have a pointer back to who owns them, in this case the RHI Resource Manager, which is still alive and well at this point in the pipeline.  Then if the resource manager is collected, it forces all handles to get cleaned up correctly, or if the handles are collected first, they can be sure they've got a valid pointer back to the resource manager.

	#jira UE-25753

Change 2836358 on 2016/01/20 by Taizyd.Korambayil

	#jira UE-25710 Replaced Deprecated Nodes

Change 2836510 on 2016/01/20 by Taizyd.Korambayil

	#jira UE-25718 Adjsuted BP to make pointer decal rotate in the direction of surface

Change 2836564 on 2016/01/20 by Taizyd.Korambayil

	#jira UE-25716 Added bool to store last Moved Direction

Change 2836697 on 2016/01/20 by Taizyd.Korambayil

	#jira UE-25740 Removed unused VR Nodes to remove Log errors on Mac

Change 2836725 on 2016/01/20 by Peter.Sauerbrei

	workaround for thread race when trying to release the TargetDeviceService endpoint after an unclaim message is sent
	#jira UE-25123

Change 2836782 on 2016/01/20 by Jamie.Dale

	Added FTextLayout::AddLines

	This is similar to AddLine, however it allows you to add multiple lines in a single call, thus avoiding the re-justification cost associated with each call to AddLine.

	AddLine has also been changed to take the same structure type as AddLines (which takes an array of these structures), and the existing version of AddLine has been deprecated.

	#jira UE-24187

Change 2836801 on 2016/01/20 by Jeff.Campeau

[CL 2857187 by Matthew Griffin in Main branch]
2016-02-05 11:54:00 -05:00