Commit Graph

140 Commits

Author SHA1 Message Date
Chris Bunner
337291cb1d Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3760894)
#rb Rendering
#lockdown Nick.Penwarden

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

Change 3658809 by Chris.Bunner

	Changing default HDR display gamut to P3 as in practice that's more common than Rec2020, this should be a user-facing option where possible though as we can't automatically retrieve that data.

Change 3658842 by Chris.Bunner

	Backing out previous HDR default gamut change as it conflicts with mandatory platform defaults.

Change 3695269 by Arne.Schober

	DR - Make clang happy wreorder

Change 3695418 by Guillaume.Abadie

	Fixes compilation failure in FoliageType_InstancedStaticMesh.cpp.

Change 3695430 by Guillaume.Abadie

	Fixes missing BeginFrame dynamic resolution event in EngineTest.

Change 3695469 by Guillaume.Abadie

	Fixes crash when passing down an invalid parameter on the sample material expression's DDX, DDY parameters.

Change 3696091 by Guillaume.Abadie

	Fixes Linux compilation failure in DynamicResolution.cpp

Change 3696593 by Chris.Bunner

	Fixed typo in vetex factory enum.

Change 3696596 by Chris.Bunner

	Added material attributes type checking to If material expression.
	Updated If material expression to validate compilation of inputs.

Change 3696597 by Chris.Bunner

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

Change 3696599 by Chris.Bunner

	Fixed material instance parameter visiblity when using nested static switches across functions.

	#jira UE-50878

Change 3696734 by Chris.Bunner

	Return type fix.

Change 3697123 by Guillaume.Abadie

	Fixes compilation failure in PostProcessWeightedSampleSum.cpp on Windows 32bits.

Change 3697125 by Guillaume.Abadie

	Fixes compilation failure in MaterialExpressionIf.h

Change 3697127 by Guillaume.Abadie

	Fixes compilation failure in DynamicResolution.cpp on shipping build.

Change 3697135 by Guillaume.Abadie

	Fixes crash in dynamic resolution event frontend when resizing game play viewport in EngineTest.

Change 3697199 by Guillaume.Abadie

	Fixes TAA upsample's shader compilation failure on Mac.

Change 3697220 by Guillaume.Abadie

	Makes static analysis happy again.

Change 3697280 by Chris.Bunner

	Fixing up invalid casts in material layers validation.

Change 3697366 by Rolando.Caloca

	DR - hlslcc - Fix warning

	#jira UE-43988

Change 3697451 by Rolando.Caloca

	DR - vk - Per pipeline descriptor pools
	Descriptor pool are now allocated per PSO instead of globally to reduce peak mem consumption and fragmentation
	Enabled on Windows only via VULKAN_USE_PER_PIPELINE_DESCRIPTOR_POOLS

Change 3697477 by Rolando.Caloca

	DR - vk - Custom memory allocator
	Remove old/unused stats

Change 3697486 by Rolando.Caloca

	DR - vk - Fix validation issue

Change 3697488 by Richard.Wallis

	Fix for Mac editor session no longer accurately tracking Mouse location after moving between Desktops in Mission Control on 10.12.6.  Problem stems from the extra call to update the slate cached window position in mouse move while dragging, which is itself is a hack but apparently this is needed as we don't get window position updates on Mac while dragging (although I couldn't see any -ve side effects without it) then the OS (in 10.12.6) doesn't always push out a final window did move notificaiton when changing desktops which leaves the window according to slate incorrectly positoned to it's frame.

	Solution is to either remove the mouse-move-while-drag window position hack or add a final window position update to the mouse-up event while dragging - this change is the latter.

	#jira UE-37553

Change 3697501 by Richard.Wallis

	Move audio processing over to audio bus tap.  Currently on Mac Media audio playback uses OS media player mixer rather than Engine as existing implemtation, using AVAssetReader, now suffers from poor performance with new Media Framework.  This audio tap version replaces that asset reader implementation but also suffers from bad quality audio hence is still disabled at the top of AvfMediaTracks.cpp.

	Original Code Review Description:

	Convert Mac to Play audio through the engine MediaFramework API rather than using AVMediaPlayer.  This is the Mac implementation only - this should work ok on iOS but unable to test due to missing audio type implementation (throws error "Init Buffer on unsupported sound type name = Synth type = 5"), as such is only enabled for Mac.  There maybe some extra tweaks required for iOS on app backgrounding etc if this feature is enabled.

	- Stuttering Audio Performace issue investiagation:  Re-Tested this implementation against [now fixed] current Mac implementation which was working fine last year and that implementation now has the same audio output quality (performance) issues as this one.  Basic investigation seems to point to somewhere in the engine audio handing.  When poor audio is heard the FMediaAudioResampler::Generate() function is dequeing an IMediaAudioSample sample buffer and the audio sample queue usually has 50-100 of these IMediaAudioSample buffers waiting in the queue.  I think the AvfMedia playback system is providing the sample buffers in good time but they are not getting consumed "fast" enough.  This under consuming also occurs if I force the Core Audio - Audio Unit mixer to use 48000 samples/sec.

	#jira UEPLAT-1677

Change 3697517 by Richard.Wallis

	XCode 9.0 extra nullability specifiers required.

Change 3697537 by Richard.Wallis

	Back out revision 23 from //UE4/Dev-Rendering/Engine/Plugins/Media/AvfMedia/Source/AvfMedia/Private/Player/AvfMediaTracks.cpp

Change 3697670 by Rolando.Caloca

	DR - vk - Fix mapstaging surface

Change 3697846 by Uriel.Doyon

	Allow denormalized values when converting float32 to float16.

Change 3697892 by Uriel.Doyon

	Fix for unaligned structure elements

Change 3699335 by Richard.Wallis

	Mac compile fix - turns out I did need these nullability specifiers here.

Change 3699663 by Guillaume.Abadie

	Fixes time unit conversions from microseconds to milliseconds error in dynamic resolution heuristic when using GPU busy time queries.

Change 3699959 by Rolando.Caloca

	DR - Fix barrier in the middle of render pass

Change 3699969 by Rolando.Caloca

	DR - vk - Change dump layer location so it prints out validation ids

Change 3700356 by Guillaume.Abadie

	Implements secondary screen percentage to be able to do TAA upsample followed spatial upscale so that the editor viewport still have same TAA upsample screen percentage range to test the content with no matter monitor's DPI.

Change 3701105 by Guillaume.Abadie

	Ignore per view automatic mip bias on texture type other than 2d textures.

	#jira UE-51396

Change 3702297 by Richard.Wallis

	Mac compile fix for nullable specifier.  Looks like Obj class using the C++ class also needs this otherwise it throws.  Seems to be some kind of xcode/compiler caching bug with this stuff as it'll report the error once then on subsequent compiles say everything is ok.

	#jira UE-51386

Change 3702357 by Richard.Wallis

	Mac nullability compile fix - again.  Looks like I fell foul of that xcode compile caching!
	#jira UE-51386

Change 3702424 by Guillaume.Abadie

	Fixes planar reflection from drowing themselves in their own FSceneRenderer in forward shading.

	#jira UE-51395

Change 3702464 by Guillaume.Abadie

	Fixes wrong viewport to buffer conversion of the distortion.

	#jira UE-51406

Change 3702819 by Guillaume.Abadie

	Fixes planar reflections with secondary screen percentage for HighDPI editor viewports.

Change 3703732 by Guillaume.Abadie

	Removes unecessary check(); when there is more than 2 players with planar reflections.

	#jira UE-51436

Change 3704302 by Guillaume.Abadie

	Removes unecessary Interface suffix on new dynamic resolution related interfaces

Change 3704390 by Chris.Bunner

	Fixed a coincidentally correct define.

Change 3704730 by Rolando.Caloca

	DR - vk - Fix map for depth surfaces

Change 3704739 by Rolando.Caloca

	DR - Debug label on D3D11 UAVs
	- Validate when running -d3debug

Change 3705000 by Chris.Bunner

	Skip compiling opacity and opacity mask inputs on opaque surface materials. Previously the code was always added to the shader, sometimes we force opaque materials down a masked path which then calls the dormant code unintentionally. A safer fix for UE-48254.
	Partially reverted previous fix in CL 3608303 which removed a material instance optimization caching the overridden base properties.

Change 3706065 by Guillaume.Abadie

	Does some renaming for primary screen percentage, and move the primary screen percentage method selection from dynamic resolution driver to FSceneView.

Change 3706464 by Chris.Bunner

	Fixed material property translate overrides that were generating code in the wrong entry.
	Fixed conditions  in If material expression GetInputType and IsMA check.

	#jira UE-51368

Change 3706641 by Chris.Bunner

	Missing "break" in switch statement (which unfortunately needs another bump to resolve).

Change 3706642 by Guillaume.Abadie

	Fixes assertion failure when r.TemporalAA.EnableUpscale = 1

Change 3706650 by Gil.Gribb

	UE4 - UE4 - Changes from intel. Increase number of worker threads on Windows to if hyperthreads (hyperthreads √ 2) else cores √ 1 up to a max of 22 workers. Increase MAX_THREADS multiplier per bank from 22 to 26. Intel VTune ITT event annotations. Wrapped in same function as your existing CPU events and enabled with √vtune. Optimize NV cloth by consuming FVector instead of FVector4 out of the solver. Vertex buffers were using FVector all along. ~15% improvement. Optimize cloth copy to vertex buffer by adding prefetch (similar to how bones are already done). Move local to world cloth transform from CPU to GPU. When simulating lots of vertices game thread was becoming bottleneck doing matrix multiply. Add your TaskGraph task switch latency test code.

Change 3706733 by Daniel.Wright

	Print Embree Build time

Change 3706841 by Daniel.Wright

	EmbreeFilterFunc4 now handles masked out intersections properly

Change 3707437 by Rolando.Caloca

	DR - vk - Android compile fix

	#jira UE-51474

Change 3707785 by Guillaume.Abadie

	Fixes viewport issue in bloom setup pass with TAA upsample.

Change 3709623 by Rolando.Caloca

	DR - vk - Missing barrier for reading into cpu

Change 3709633 by Rolando.Caloca

	DR - vk - Compile fix

Change 3710454 by Mark.Satterthwaite

	Refactor the way we compile Buffer<> & RWBuffer<> types for Metal so that we can support the type-conversion semantics of HLSL/D3D.
	- Buffer<> types are converted to Linear Textures unless the internal type is 3-compnent or the STRONG_TYPE macro is added as a type-qualifier. Linear Textures require an MTLTexture "view" object be created around the MTLBuffer which is the backing-store and it is typically best if that buffer is marked as Private (GPU-only) memory, reading from this in the shader then uses the texture-fetch hardware to perform the format conversion on load.
	- RWBuffer<> & 3-compnent Buffer<> types are converted to use template functions to load/store - the implementation of which will read the format from the BufferSizes meta-table and determine which type-conversion to apply. Function-constants are used to specialise the shader where feasible to reduce branch costs (function-constants are a Metal feature that allow efficient runtime recompilation of bytecode shaders).
	- Buffer<> & RWBuffer<> types where the STRONG_TYPE macro is added as a type-qualifier (only does something on Metal, everywhere else it is #define'd away) are compiled as "raw" Metal buffers of the inner-type (e.g. float4 for Buffer<float4>) and the MetalRHI runtime will enforce that only SRVs/UAVs of the proper format are bound to it. This is necessary in a couple of cases (BoneMatrices, NumCulledLightsGrid, CulledLightDataGrid & ForwardLocalLightBuffer buffers) which are used in a larger number of shaders as Linear Textures have poorer performance than Buffer<>/RWBuffer<>.
	- Most of the complications to generating subtly different Metal code for different OS/device combinations have been factored out into ue4_stdlib.metal which acts as an extension to the Metal shader standard-library and helps simplify the MetalBackend code - particularly helpful for Buffer<>/RWBuffer<> but also texturecube_array and the SM6 wave-related intrinsics.
	- Reverted some of the awkward Metal-specific changes Richard.Wallis & Arne had to make to the high-level shaders as they aren't necessary anymore.
	- Made the existing Metal-specific changes to use uint32 for all light-grid injection buffers apply to all Metal platforms again (I had hoped that it would not be necessary anymore, but it is much faster this way).
	- STRONG_TYPE is actually hlslcc's "invariant" keyword applied as a type-qualifier to a Buffer<>/RWBuffer<> type - only valid when using Metal which exports this through ILanguageSpec and #define'd out for everyone else.
	- Old versions of iOS (anything earlier than iOS 10.3) won't be able to use this new code, so every buffer will be treated as "raw" and the MetalRHI will now properly report when something goes awry rather than it leading to mysterious rendering errors and crashes.

Change 3710456 by Mark.Satterthwaite

	Fix the Eddie workset project generator so that Enterprise projects don't get mixed in with regular projects at the top-level because of the way Eddie combines workset groups.

Change 3710457 by Mark.Satterthwaite

	DX11 texture formats for Mac Metal please!

Change 3710480 by Mark.Satterthwaite

	Permit RHI thread and parallel execution in Mac -game mode again.

Change 3710522 by Mark.Satterthwaite

	MSVC type-mismatch error fixes.

Change 3710580 by Mark.Satterthwaite

	Alright then - if I can't use the C++11 extended string semantics I'll have to use "xxd -i" to generate a hex-dump include header from ue4_stdlib.metal instead. This can only be updated from a machine with access to the POSIX xxd command (Mac & Linux, possibly the new Linux sub-system for Win10).

Change 3710616 by Mark.Satterthwaite

	Missing file.

Change 3712972 by Guillaume.Abadie

	Fixes Circle DOF's negative alpha channel getting clamped to 0 in TAA pass.

Change 3712979 by Guillaume.Abadie

	Fixes wrong RT reallocation when doing TAA upsample in editor viewports with secondary upscale.

Change 3713406 by Mark.Satterthwaite

	Use GPU morph targets on Mac - the necessary buffer conversions will always be available there. For iOS it can only be supported if iOS 10 is the minimum OS & Metal standard so leave that on the CPU path for now.

Change 3713494 by Richard.Wallis

	Fix for hitch when PIE unloading sublevel.  PerformReachabilityAnalysisOnObjects is spawing multiple threads in Editor builds as there is an extra code path that results in Critical Section locking within a singleton type static object - this is a bottle neck for multiple threads.  However they all just need to read the data not change it.  Replaced FScopeLock with a Read/Write version allowing these threads to all take a read lock at the same time to reduce contention.

	Changed the FUObjectAnnotationDense implementation only - left the sparse implementation alone as its not currently affecting this - although we could proactivly change that too.

	Also tested again repro in linked bug UE-24711.

	#jira UE-40533

Change 3713612 by Mark.Satterthwaite

	Integrate LPV_STORE_INDEX_IN_HEAD_BUFFER related changes from //depot/Partners/Microsoft/UE4-MS/Engine-Fable @ 2954744

	This should make Light Propagation Volumes potentially viable on non-Microsoft platforms.

Change 3713623 by Mark.Satterthwaite

	Implement ByteAddressBuffer/RWByteAddressBuffer in hlslcc in a similar manner to StructuredBuffer/RWStructuredBuffer so that the backends don't need too much modification. Implement the necessary changes into MetalBackend to make this work for Metal.

	Load/Store{+2,3,4} & Atomics are supported. Counter operations are not supported and aren't likely to be.

Change 3713636 by Mark.Satterthwaite

	Enable LPVs for Mac Metal.
	- Rework some multi-dimensional arrays & array-index dependent HLSL code that hlslcc simply can't cope with, the mesa-glsl compiler core is only capable of dealing with 1 dimensional arrays and array-indexing can't itself be directly dependent on the result of an array-index operation.
	- MetalRHI needs to ignore any SetRenderTargets call that binds nothing at all as you must bind at least one target (UAV, RT, Depth/Stencil) for it to be able to do anything sensible.
	- Turn on LPVs for Metal as it works now.

Change 3714049 by Guillaume.Abadie

	Do not set screen percentage method to TAA upsample when anti aliasing method is not TAA even if there is automatic fallback in the renderer.

Change 3714306 by Guillaume.Abadie

	Fixes assertion failure in dynamic resolution state proxy with GPU busy time queries.

Change 3714714 by Mark.Satterthwaite

	Tweak Metal GPU identification so that it works with eGPU boxes and protoype hardware - these changes only apply to macOS 10.13 so the system as a whole remains.

Change 3716104 by Mark.Satterthwaite

	Fix 10.12/Xcode 8 compile errors from the build-farm which is still split until Fortnite can update.

Change 3716120 by Mark.Satterthwaite

	Silence static-analysis.

Change 3716158 by Guillaume.Abadie

	Rewrites editor primitive compositing to support TAA upsample.

	This takes the oportunity to remove the manual depth testing in base pass pixel shader of editor primitives.

Change 3716271 by Daniel.Wright

	Lightmass correctness fixes
	* After these changes, point, spot, directional and sky lights closely match reference renderer Mitsuba after light unit conversions
	* Photon density trimming intended for direct photons was affecting indirect photons as well.  This caused high noise for point / spot lights with a large attenuation radius.  Indirect photon density even for small lights is 5x with this change, which improves 2nd bounce quality.
	* Removed legacy fudge factor on point / spot light photon energy
	* Spotlights no longer emit based on indirect photon paths.  Fixes excessive photon energy from spot lights as they were emitting outside of the cone.
	* Fixed photons computing one more bounce than requested.
	* Added an option to use the Radiosity solver for all multibounce, replacing photons.  Useful as a reference but generally too much noise indoors.
	* Fixed visualization of photons without final gather

Change 3716434 by Mark.Satterthwaite

	Backout the remaining change from 3632041 that is no longer necessary - this was the last of the 4.18 Metal workarounds.

Change 3716491 by Chris.Bunner

	Fixing up an edge-case on a recent optimization.

Change 3716611 by Guillaume.Abadie

	Allows secondary screen percentage >= 100%.

Change 3716977 by Guillaume.Abadie

	Back out changelist 3716158 to unblock QA pass.

	#jira UE-51580

Change 3717111 by Arne.Schober

	Fixing nomalization of Morph Tangents https://udn.unrealengine.com/questions/392462/
	Also implemanted batching of the dispatches which should help worst case perfomance where dispatches become too small.
	CalculateInverseAccumulatedWeights is not cheap and proably should be moved onto a task thread that runs as soon as the input weights are ready.

Change 3717127 by Mark.Satterthwaite

	Fix a mismerge from the reversion of 3632041 - part of the modified code had been moved into another file and I didn't initially notice.

Change 3717178 by Mark.Satterthwaite

	Remove useless copy-pasted expressions from glsl_type::GetByteAddressBufferInstance & force MetalBackend to relink. Apparently the previous Mac libs were mysteriously broken.

	#jira UE-51583

Change 3717476 by Marcus.Wassmer

	Fix PS4 compile.  funciton local statics not allowed on PSSL
	Also enabled the new atomics method for LPVs for all platforms

Change 3717502 by Arne.Schober

	DR - Compiletime option for compressed ruleset (0.02ms perf gain on PS4 and disabled by default as it limits array size to 2million entries)

Change 3717601 by Arne.Schober

	DR - Move cycle counter into more meaningfull locations.

Change 3718054 by Guillaume.Abadie

	Removes unecessary check() failure on secondary upscale that fires when testing raw output screen percentage method.

Change 3718066 by Guillaume.Abadie

	Reland: Rewrites editor primitive compositing to support TAA upsample.

	This takes the oportunity to remove the manual depth testing in base pass pixel shader of editor primitives.

Change 3718589 by Mark.Satterthwaite

	Console-variable to enable and disable Manual-Vertex-Fetch for Metal and fix the internal code to handle the subtle changes in behaviour for vertex-declarations so we don't explode under the Metal validation layer. MVF works on macOS, though testing did expose an error with Tessellation on Nvidia (true for MVF enabled & disabled).

Change 3718633 by Guillaume.Abadie

	Fixes temporal instability issue of TAA upsample with secondary screen percentage.

Change 3718658 by Arne.Schober

	DR - 25% MorphTarget Speed increase because there was a bit of cache thrashing between the waves going on.

Change 3718818 by Mark.Satterthwaite

	Fix compilation on hlslcc - integral values are not automatically converted into comparisons with zero.

Change 3719004 by Guillaume.Abadie

	Lets the game viewport client automatically set raw output screen percentage method when doing dynamic resolution with stereo rendering but without TAA upsample.

Change 3719375 by Mark.Satterthwaite

	Extend mtlpp compiler testing app to support Metal tessellation compute shaders so we can send Nvidia a much simpler reproduction of their regression.

Change 3720099 by Mark.Satterthwaite

	Make the left-hand arguments work in airdiff.

Change 3720413 by Mark.Satterthwaite

	Support standalone compute shaders in the mtlpp compiler test app.

Change 3721232 by Mark.Satterthwaite

	No more Metal Shader Model 4 - instead we have to have a Metal Shader Model 5 w/o Tessellation as Nvidia's shader compiler is broken on all tessellation shaders in 10.13.0 and above. There is no guarantee that they will fix this prior to 10.14 and I can't afford to disable tessellation entirely as if I do that then the AMD & Intel compilers will also regress. As there is no Shader Model 4 platform on Mac anymore I've amended the LevelEditorActions to disable the preview modes when no appropriate shader platform is available.

Change 3721244 by Mark.Satterthwaite

	Fix incorrect enum handling for Metal features due to overflow.

	#jira UE-51643

Change 3721338 by Mark.Satterthwaite

	MIssing file from 3721232

Change 3721818 by Mark.Satterthwaite

	Fix the Intel vector-array-dereference workaround so that it doesn't cause the AMD compiler to explode instead.

Change 3722139 by Arne.Schober

	DR - [UE-51602] -Fixed Typo that accidently bound the LightingInstancebuffer to the Transform one

	#jira UE-51602

Change 3722165 by Rolando.Caloca

	DR - Default -opengl to GL4

Change 3722682 by Guillaume.Abadie

	Fixes wrong clear color in SSR important for VR that has a HMD mesh.

Change 3722766 by Rolando.Caloca

	DR - Fix static analysis

Change 3722943 by Mark.Satterthwaite

	Disable the METAL_SM5_NOTESS shader platform again - I can workaround the Nvidia pipeline state compiler crash by changing the buffer address space from "constant" to "device" as we're managing to confuse the poor thing. This won't materially affect AMD or Intel as they don't care much about this, but to limit performance issues on Nvidia we only need to do this for Tessellation Compute shaders.

Change 3723100 by Mark.Satterthwaite

	Apparently users like enabling Metal shader standards that won't work on their current OS, so don't display those that aren't going to work & display an error message before quitting rather than crashing when trying to load a project that tries to use an incompatible shader version.

Change 3723121 by Mark.Satterthwaite

	Fix build error.

Change 3723245 by Daniel.Wright

	Ensure for when a reflection capture upload fails due to incorrect lighting scenario level handling
	Reflection captures with no data use an array index of 0, instead of -1.  Might avoid reading uninitialized memory on PS4.

Change 3723387 by Arne.Schober

	DR - Metal already applies the instance and vertexoffset in the shader

Change 3723393 by Mark.Satterthwaite

	More fixes to the mtlpp compiler test application.

Change 3725258 by Guillaume.Abadie

	Improves fast TAA upsample shader permutation by 15% on console.

Change 3725555 by Chris.Bunner

	[Dupliate] CL 3725548 - Fixed invalid screenpercentage value in VehicleGame sample (was setting -1 but should default to 100). This has always been broken but was recently exposed by CL 3686200.

Change 3726845 by Guillaume.Abadie

	Exposes SvPosition to material through screen position material expression, so that material no longer have SvPosition * InvViewSize * ViewSize precision loss.

	#jira UE-51428

Change 3728014 by Guillaume.Abadie

	Uses ScreenPosition material expression's PixelPosition pin in existing engine functions to improve precision.

	#jira UE-51428

Change 3728053 by Richard.Wallis

	Duplicate CL 3727958: Crash fix when using shared material libraries.  Initial shader code library offset is not zero'd so all entry offsets were garbage.

Change 3728339 by Guillaume.Abadie

	Adds project setting for TAA upample, and officialises TAA upsampling CVar.

Change 3728549 by Guillaume.Abadie

	CsvProfiler is pretty cool, but even better with console autocompletion for lazy developers.

Change 3728752 by nick.bullard

	Built and re-saved QA-MeshPaint
	#jira UE-50978

Change 3728775 by Guillaume.Abadie

	Implements r.DynamicRes.ChangePercentageThreshold to stabilize primary screen percentage.

Change 3729224 by Uriel.Doyon

	Hidden levels now keep their last build data when using lighting scenarios.
	Hidden levels don't affect the scene anymore volumetric lighting when not using lighting scenarios.

	#jira UE-40454
	#jira UE-38131

Change 3729243 by Marcus.Wassmer

	Update Ansel to 1.4
	#github 4159
	#jira UE-51545

Change 3729325 by zachary.wilson

	Adding indirect lighting to TM-LightingChannels
	#jira UE-47069

Change 3729485 by zachary.wilson

	Fixing ambient occlusion bias on QA-LightsStationary. Removed global PPV with bad settings, also fixed the shadow on the roof.
	#jira UE-50972

Change 3729629 by Uriel.Doyon

	Fixed crash when using debug view modes.
	Fixed d3ddebug error when clearing quad overdraw buffer.

	#jira UE-51836

Change 3730053 by Guillaume.Abadie

	Allows edititing of AScreenshotFunctionalTestBase::ScreenshotCamera.

Change 3730308 by Guillaume.Abadie

	Disables TAA upsample on buffer visualization, and disallow screen percentage preview in editor viewport with any buffer visualization.

Change 3730355 by Guillaume.Abadie

	Sacrifices consistency for good cvar name for TAA upsample.

Change 3731403 by Daniel.Wright

	Reduced slider for ContactShadowLength to .1, algorithm produces poor results with larger values.

Change 3731404 by Daniel.Wright

	Checkpoint for ScreenShadowMaskTexture, allowing 'vis ScreenShadowMaskTexture'

Change 3731407 by Daniel.Wright

	Must opt-in for FDistanceFieldSceneData::VerifyIntegrity

Change 3731517 by Guillaume.Abadie

	Freezes dynamic resolution heuristic when doing pause.

Change 3732168 by Guillaume.Abadie

	Renames TAA upsampling cvar.

Change 3732295 by Guillaume.Abadie

	Lets the scene texture's size and texel size return the correct sizes after TAA upsample.

Change 3732313 by Guillaume.Abadie

	Implements SceneTexture material expressions' automated tests.

Change 3734928 by Guillaume.Abadie

	Adds panic mode when the last N frames are over budget to the dynamic resolution heuristic.

Change 3735966 by Ryan.Vance

	Fixing mac steamvr compile issue. Missed a few lines in the refactor because mac.

Change 3736104 by Guillaume.Abadie

	Removes FSceneViewInitOptions::bDisableGameScreenPercentage brought by 4.18, that new screen percentage API do in a better way.

Change 3736346 by Daniel.Wright

	Volumetric fog is always interpolated in the pixel shader, since per-vertex interpolation gives consistently poor results.  Fixes Volumetric Fog on opaque in Forward, and on transparent in Deferred.
	Forward shading: per-pixel height fog is always done in the base pass, to work with MSAA correctly

Change 3736348 by Daniel.Wright

	Forward shadowing of directional light for translucency
	 * Static shadowing and CSM supported with minimal filtering (1 PCF)
	 * Deferred renderer: affects translucency using 'Surface ForwardShading' lighting mode.  Forward renderer: affects all translucency.

Change 3736650 by Rolando.Caloca

	DR - vk - # of desc pools

Change 3737985 by Guillaume.Abadie

	Fixes pixel inspector with primary and secondary screen percentage.

Change 3738638 by Michael.Lentine

	Compile fix due to unclear operator precendence.

Change 3739417 by Daniel.Wright

	Fixed a few issues with irradiance cache visualization

Change 3739447 by Daniel.Wright

	Skip forward static shadowing in projects with static lighting disabled

Change 3739595 by Daniel.Wright

	ConditionalPostLoad DistanceFieldReplacementMesh.  Should fix a crash on load when static mesh derived data is being rebuilt, and the DistanceFieldReplacementMesh is in use.

Change 3739598 by Daniel.Wright

	Disable capsules shadows on lowest shadow quality

Change 3739611 by Daniel.Wright

	Added r.CapsuleDirectShadows and r.CapsuleIndirectShadows for more specific scalability control over capsule shadow features
	New Lighting Feature show flags for RTDF shadows and Capsule Shadows

Change 3740516 by Guillaume.Abadie

	Fixes VR editor rendering only on eye with TAA upsample.

	#jira UE-52016

Change 3740580 by Guillaume.Abadie

	Fixes chromatic aberration with TAA upsample and multiple view rendering.

	#jira UE-51993

Change 3740588 by Guillaume.Abadie

	Gives to FXAA a more explicit draw event name for easier UDN support.

Change 3740845 by Michael.Lentine

	Fix shipping build.

Change 3740903 by Guillaume.Abadie

	Disables dynamic resolution threading outliers detection by default and includes editor UI GPU cost within dynamic resolution's begin/end frame events for better reliability of timestamp query based dynamic res in editor.

Change 3741355 by Daniel.Wright

	Normalize planar reflection plane - fixes crash when scaling a BP with a planar reflection component

Change 3741357 by Daniel.Wright

	More info on volumetric lightmap import failure

Change 3742535 by Ryan.Vance

	Fix for view rect changes.

Change 3743282 by Guillaume.Abadie

	Fixes a bug in dynamic resolution heuristic's outlier detection that was preventing the over budget panic to react.

Change 3743559 by Michael.Lentine

	Port Siren changes for recompute tangents. This adds recompute tangents for cloth as well as the ability for recompute tangents to work across seams where vertices are duplicated.

Change 3743679 by Guillaume.Abadie

	Cherry-pick 3743621: Fixes subsurface profile fallback to lit shading model when Opacity == 0, introduced by 3447144.

	#jira UE-51569

Change 3743906 by Ryan.Brucks

	BlueprintMaterialAndTextureNodes Plugin:  Fix for clamping sampled HDR render target values by setting  ERangeCompressionMode in the FReadSurfaceDataFlags to RCM_MinMax

Change 3744096 by Ryan.Brucks

	BlueprintMaterialAndTextureNodes Plugin:  removed Mip option from Texture2D_SampleUV_EditorOnly for now since reads from source data cannot access mips and it can be misleading.

Change 3744253 by Guillaume.Abadie

	Fixes merge collisions of debug canvas rendering with High DPI, fixes stat unit on high DPI monitors, and fixes secondary screen percentages.

Change 3744953 by Chris.Bunner

	Crash workaround.

Change 3745628 by Marcus.Wassmer

	Temporarily disable recalctangent normal-smoothing

	#jira UE-52166

Change 3745942 by Guillaume.Abadie

	Fixes a todo in FCommonViewportClient

Change 3746005 by Guillaume.Abadie

	Fixes stat UnitGraph on high DPI monitor.

Change 3746029 by Guillaume.Abadie

	Oups.... Fix compilation. :D

Change 3748322 by Guillaume.Abadie

	Shows dynamic resolution's primary screen percentage on stat unit/unitgraph console commands.

Change 3748346 by Chris.Bunner

	Potential static analysis fix.

Change 3748349 by Chris.Bunner

	Mac feature support flag fix on versions < 10.30.

Change 3749336 by Guillaume.Abadie

	Fixes some spelling mistakes in dynamic resolution cvars. Thanks Daniel!

Change 3749374 by Guillaume.Abadie

	Adds a black background on the stat unitgraph so timing curves can be seen no matter the content.

Change 3749437 by Guillaume.Abadie

	Final UI polish up for `stat unitgraph`

Change 3749719 by Guillaume.Abadie

	Fixes a crash when changing r.DynamicRes.MaxScreenPercentage below current screen percentage.

Change 3750243 by Chris.Bunner

	Increasing controller's automated test timeout to allow for slower machines to complete the longest tests.

	#jira UE-48494, UE-51907

Change 3750728 by Guillaume.Abadie

	Fixes merge collision in chromatic aberration.

	#jira UE-52282

Change 3750791 by Guillaume.Abadie

	Fixes chromatic baerration R and G channel swap.

Change 3751246 by Guillaume.Abadie

	Bypasses screen percentage apply with mobile LDR rendering.

	#jira UE-52089

Change 3752624 by Guillaume.Abadie

	Simplies dyn res state's event interface to a single virtual method.

Change 3753766 by Chris.Bunner

	Rebuilt volumetric baked lighting test map and updated screenshots.

	#jira UE-52322

Change 3755108 by Guillaume.Abadie

	Fixes a bug where default dynamic resolution state was created at startup of server build.

	#jira UE-52345

Change 3755267 by Mark.Satterthwaite

	Fix condition controlling which features are enabled when iOS >= 10.3 - it wasn't working for iOS 11+ which was causing all kinds of problems.

	#jira UE-52301

Change 3755811 by Chris.Bunner

	Disable some new logging that was causing a stack overflow during EnginePreInit.

	#jira UE-52345

Change 3756983 by Mark.Satterthwaite

	Prevent different versions of metal_stdlib/ue4_stdlib from causing shader compilation failures due to a time-stamp mismatch between the local file & the PCH. This can happen when working with Xcode Beta releases that change the modification date, but not the content or compiler version, amongst other possibilities.

	#jira UE-52073

Change 3757156 by Guillaume.Abadie

	Fixes editor compositing with wireframe rendering.

	#jira UE-52017

Change 3757435 by Mark.Satterthwaite

	Workaround a bug in the MobileSceneCaptureRendering where it was copying the ViewInfo's ViewRect prior to it being configured by the mobile renderer.
	#jira UE-52327

Change 3757523 by Uriel.Doyon

	Fixed d3ddebug warning with unused inputs

Change 3758318 by Guillaume.Abadie

	Cleaner fix for mobile scene captures.

	#jira UE-52327

Change 3759541 by Mark.Satterthwaite

	Don't enable Manual Vertex Fetch on iOS Metal for the moment as it isn't well tested there and will probably need further changes.

Change 3695086 by Guillaume.Abadie

	Render thread dynamic resolution & TAA upsample.

	Merging //Tasks/UE4/Dev-DynamicRes/...@3694528 to //UE4/Dev-Rendering/...

	New features breakdown:
	- TAA upsample compute shader that accepts screen percentage from 50% to 200%, with a faster shader permutation for consoles;
	- Material no longer have to deal with BufferUV, and post process material after TAA upsample can sample any scene buffer seamlessly;
	- Material texture per view mip bias to produce sharper images with TAA upsample;
	- Render thread dynamic resolution heuristic is fully plugable by game code (for VR plugin specific heuristics);
	- Dynamic resolution in PIE and game builds;
	- Busy time queries in the RHI to be implemented on the different platforms so that the dynamic resolution heuristic can  exactly associate GPU frame times with screen percentages in its history;
	- Game user settings to enable/disable dynamic resolution;
	- In editor viewport screen percentage config to previsualise and test content at different screen percentage.

	Fixes:
	- Various fixes for algorithms producing different outputs at different screen percentage.
	- Various fixes for algorithms sampling outside view rects.

	Refactors:
	- TAA shader
	- Moved some screen percentage specific members from FSceneView to FViewInfo for thread race bullet proofing.

	Aknowledgements:
	- VR plugins are broken
	- DFAO still have some artifacts

	Premiliminary review: Marcus.Wassmer
	Review for TAA refactor and TAA upsample shader: Brian.Karis
	Review for dynamic resolution: Brian.Karis

[CL 3761165 by Chris Bunner in Main branch]
2017-11-16 11:36:35 -05:00
Andrew Grant
ca24b4e26d Copying Orion-Staging @ 3748653 (Orion/Dev-General @ 3722124) to //UE4/Main
#lockdown Nick.Penwarden
#rb none


Change 3720210 on 2017/10/25 by Olaf.Piesche

	Fixing dynamic material params for ribbons

	#!codereview scott.kennedy
	#!rb none
	#!tests scott's test ribbon

Change 3720073 on 2017/10/25 by robomerge

	#!ROBOMERGE-AUTHOR: frank.fella
	Niagara - Fix a crash where a UNiagaraSystem has been GCed at runtime and there is still a system simulation ticking for it.

	#!Tests Minion automated tests no longer crash randomly.
	#!rb SimonT

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

Change 3719233 on 2017/10/25 by robomerge

	#!ROBOMERGE-AUTHOR: philip.buuck
	[OR-45889] Ability fail widget will no longer fire if you are dead and have a passive (which is failing to activate while you are dead).

	#!rb Matt.Schembari
	#!tests PIE

	[QAREVIEW] Ensure the ability fail widget and its attached sounds do not trigger on death

	#!ROBOMERGE-SOURCE: CL 3719016 in //Orion/Release-44/... via CL 3719072 via CL 3719091
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3718474 on 2017/10/25 by Yannick.Lange

	Niagara: Only show isolate menu items on track context menu if it is a system.
	Rename "Isolate toggle" to "Isolated".
	#!rb none
	#!codereview Shaun.Kime
	#!tests n/a

Change 3718095 on 2017/10/25 by Yannick.Lange

	Niagara: Fix crash when not having dynamic parameter in material.
	#!rb none
	#!codereview Shaun.Kime
	#!tests n/a

Change 3718069 on 2017/10/25 by Yannick.Lange

	Niagara: Remove material member from material parameter node and add helper function for getting material dynamic parameter expression.
	#!rb none
	#!codereview Shaun.Kime
	#!tests n/a

Change 3717545 on 2017/10/24 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Removed read / write locks from PipelineStateCache.

	#!rb Andrew.Grant, Gil.Gribb
	#!test paragon ps4.

	#!ROBOMERGE-SOURCE: CL 3716445 in //Orion/Release-44/... via CL 3716701
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3716928 on 2017/10/24 by Shaun.Kime

	The cooked dusk minions on PS4 don't have an index buffer, previously causing us to crash. We now fail to initialize the skeletal mesh data interface if this happens. This change also reworks  the skeletal mesh data interface to be more like what Simon is already working on, getting rid of some places where we were skinning. Additionally, I have disabled the parallel pretick and posttick logic.Many more checks have been added to try and detect bad situations at runtime.

	#!rb olaf.piesche, simon.tovey
	#!fyi olaf.piesche, simon.tovey, frank.fella
	#!tests am now able to run Test_minionWave on PS4

Change 3715712 on 2017/10/24 by Yannick.Lange

	Niagara: Set display name of if node to "If" instead of "NiagaraNodeIf".
	#!rb none
	#!codereview Shaun.Kime
	#!tests n/a

Change 3715430 on 2017/10/23 by Shaun.Kime

	Rather than make a unique decision each time we bind a VM function about whether or not we need previous positions, we initialize the decision with the results of last time. The value defaults to false in the constructor, so we're still behaving as we did before, but this time asking for UV info last won't initialize the data to no longer want the previous position even though we later ask for it.

	#!rb none
	#!fyi simon.tovey
	#!tests from Tim Elek - testMinion map get minions spawned then run down the lane and "setteamnum 1" crashes everytime

Change 3715368 on 2017/10/23 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Merging 3714121 from //Orion/Release-44 to Main (//Orion/Main)
	#!tests #!rb none

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

Change 3715226 on 2017/10/23 by Shaun.Kime

	Getting rid of an ensure for Nan's and switching to a log warning. This keeps it from polluting long term runs in the debugger. It seems like at least one of the Niagara systems on minions generates Nan's.

	#!rb none
	#!fyi simon.tovey, olaf.piesche, frank.fella
	#!tests ran in PIE

Change 3714645 on 2017/10/23 by Yannick.Lange

	Niagara: Add ability to create particle system from this emitter in content browser.
	#!rb Shaun.Kime
	#!tests n/a

Change 3714200 on 2017/10/23 by Olaf.Piesche

	Niagara: Fixing rendering of GPU simulated emitters; store SRV instead of data buffers, so we can point the VF at the correct buffer based on sim target

	#!codereview simon
	#!rb none
	#!tests Orion Niagara assets

Change 3713341 on 2017/10/23 by Yannick.Lange

	Niagara: Fix NiagaraNodeIF output pins cannot be deleted.
	Fix NiagaraNodeIF output pins cannot be renamed.
	#!jira UE-50193
	#!jira UE-50193
	#!rb Shaun.Kime
	#!tests n/a

Change 3713133 on 2017/10/23 by Yannick.Lange

	Niagara: Isolate emitters in sequencer UI.
	- Added being able to extend the sequencer track context menu with a delegate.
	- Added entry in track context menu to toggle the selected emitters isolation state.
	- Added entry in track context menu to isolate all the selected emitters and turn isolation off for all non-selected emitters.
	#!rb Shaun.Kime
	#!tests n/a

Change 3712445 on 2017/10/22 by robomerge

	#!ROBOMERGE-AUTHOR: shaun.kime
	UVScale, UniformAorBFloat, and LinearColorAlongVector added.

	#!rb none
	#!tests new autotest added

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

Change 3712420 on 2017/10/21 by robomerge

	#!ROBOMERGE-AUTHOR: shaun.kime
	Fixing issue where if you disabled Acceleration Force it would cause a compile error saying that it could find a default for Physics.Force but not in the parameter map. This was because of a simple error of using the index of the pin instead of the value of the pin when routing around the disabled node. In interpolated spawn scripts, there are two parameter maps, the spawn and update. If you always look in 0, which you would if you just use the pin index, you'd never find the Physics.Force variable in parameter map at entry 1.

	#!rb none
	[CODEREVIEW] frank.fella
	[FYI] simon.tovey, olaf.piesche, wyeth.johnson
	#!tests created an emitter, disabled Acceleration Force.. still compiled.

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

Change 3711602 on 2017/10/20 by robomerge

	#!ROBOMERGE-AUTHOR: shaun.kime
	Fix for issue where we were getting a check due to the mesh not being set up properly. We now catch the error and don't try and do the bad operation. The log will have something like:

	LogNiagara: SkeletalMesh data interface has no valid mesh. Failed InitPerInstanceData

	#!jira UE-51511
	#!rb Simon.Tovey
	#!tests n/a

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

Change 3711288 on 2017/10/20 by robomerge

	#!ROBOMERGE-AUTHOR: eric.ketchum
	[Justice] Ultiamte VFX in Niagara work, includes GeneratePositionEvent Module work

	#!rb: None

	#!tests: PIE

	[CODEREVIEW] Scott.Kennedy, Tim.Elek, Simon.Tovey, Shaun.Kime

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

Change 3711197 on 2017/10/20 by Olaf.Piesche

	Fix for ribbon facing issue; VF assumed local space particles in the ribbon, now it assumes world space (the most common case); TODO: deal with local space properly

	#!rb none
	#!tests minion projectile ribbon trail

Change 3710634 on 2017/10/20 by Mic.Rooney

	Moving some Facial Animation stuff around so I can use some of their importing logic inside Orion Dialogue asset importing.

	#!RB: none
	#!Test: tested/built locally ran preflight Editor/Monolithics build.
	#!review-3710635 @andrew.grant, @david.ratti, @thomas.sarkanen

Change 3709686 on 2017/10/20 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Added some more timerguards for slow timer manager tick objects.
	Commented out for now.
	#!rb Trivial
	#!test Paragon Cooked ps4.

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

Change 3708958 on 2017/10/19 by Shaun.Kime

	Back out changelist 3708456 .. this was an unintentional change
	#!rb none
	#!tests n/a

Change 3708839 on 2017/10/19 by Shaun.Kime

	Merging CL 3708835
	Fixing Scott's common crash with adding an emitter with autocompile off

	#!rb frank.fella
	#!tests n/a

Change 3708784 on 2017/10/19 by Shaun.Kime

	Merging CL 3708782

	//Orion/Main/... to //Orion/DevGeneral/...

	#!rb none
	#!tests n/a

Change 3708600 on 2017/10/19 by robomerge

	#!ROBOMERGE-AUTHOR: mieszko.zielinski
	Made bots in Ultimate movement mode not ignore all enemies but instead use a very small radius for enemy selection #!Orion

	#!rb none
	#!test golden path

	#!ROBOMERGE-SOURCE: CL 3706947 in //Orion/Release-44/... via CL 3708165
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3708473 on 2017/10/19 by Shaun.Kime

	Merging Frank's changes for team color support from Main to Dev-General
	#!rb Frank.Fella
	#!tests test_minionwave worked

Change 3708456 on 2017/10/19 by Shaun.Kime

	Particles.Random set to 0.0

	#!rb none
	#!tests n/a

Change 3708455 on 2017/10/19 by Shaun.Kime

	Merging using //Orion/Dev-General/_To_//Orion/Dev-Niagara
	#!rb none
	#!tests passed minion fx autotest

Change 3707648 on 2017/10/19 by Shaun.Kime

	Temporary render thread safety code for emitter instances and it's dataset until a more thorough refactor/safety pass can be made.
	Defer deletion of dataset to RT.
	Ensure resets don't mess with data inflight RT commands are using.
	Checkin on behalf of Simon Tovey

	#!jira OR-45423
	#!rb Simon.Tovey
	#!tests ran through the LaneMinionFXTests successfully on PC

Change 3707096 on 2017/10/19 by robomerge

	#!ROBOMERGE-AUTHOR: shaun.kime
	CameraOffset for sprites. Had to bless some new images due to Simon's off by one frame render fix from a few days ago.

	#!rb none
	#!tests automated tests pass

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

Change 3706726 on 2017/10/19 by Rob.Cannaday

	Merge XMPP resource version to use version 2 instead of version 3
	#!rb trivial
	#!tests compile
	#!ROBOMERGE: Main, 44, Tencent

Change 3706349 on 2017/10/19 by Josh.Markiewicz

	#!UE4 - Cross Voice code review feedback
	- fixed up broken stack vs queue
	- fixed GetRoomId returning int32 instead of uint64
	- fixed switch room logic
	- more/better logging
	- more comments
	#!jira TEN-301
	#!review-3681404 @sam.zamani, @rob.cannaday
	#!rb none
	#!tests local cheat codes

Change 3705453 on 2017/10/18 by robomerge

	#!ROBOMERGE-AUTHOR: arne.schober
	Initzalize missing Cubemaps with Zero index to avoid inconsistencies between platforms (like PS4 where a negative index will access the memory shead of the array)
	#!RB Daniel.Wright
	#!Tests LaunchOnPs4

	#!ROBOMERGE-SOURCE: CL 3704845 in //Orion/Release-44/... via CL 3704847
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3705399 on 2017/10/18 by robomerge

	#!ROBOMERGE-AUTHOR: scott.kennedy
	Default Niagara emitter changed color property to better default value.
	Updated basic glow emitter
	Added energy bubble base emitter
	put a little more polish into siege minion impact FX.

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

Change 3704426 on 2017/10/18 by Shaun.Kime

	Standardizing our null and zero checks for the sprite and mesh renderers trying to prevent OR-45423

	#!rb simon.tovey
	#!fyi hunter.kent
	#!tests ran test_minionwave with no crashes on PC, needs QA to bang on it to be sure

Change 3703288 on 2017/10/18 by Olaf.Piesche

	Simon's change to avoid recreation of vertex buffers; should also fix uninitialized gpu buffer crash

	#!rb olaf.piesche, simon.tovey
	#!tests minion test map PC and PS4

Change 3701373 on 2017/10/17 by robomerge

	#!ROBOMERGE-AUTHOR: shaun.kime
	Passing the wrong shader into ribbon vertex factories when setting shader constants for pixel shader.

	#!rb Olaf.Piesche
	#!tests test_minionwave runs

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

Change 3701108 on 2017/10/17 by Hunter.Kent

	Added a "New Minions (nomcp)" option to the Mode dropdown in the BuildLauncher tool so that Devs can test the new minions on PS4 more easily.

	#!RNX
	#!Test PS4
	#!rb @tim.elek
	#!review-3701110 @andrew.grant, @daniel.lamb

Change 3701044 on 2017/10/17 by robomerge

	#!ROBOMERGE-AUTHOR: jon.lietz
	- white space fixes
	- added in more detail to logging
	- fixed dragon GC to not hide when the mesh is hidden

	#!rb none
	#!tests complies and logging is updated
	[FYI] Billy.Rivers, Eric.Ketchum, Fredrik.Seehuusen

	#!ROBOMERGE-SOURCE: CL 3700996 in //Orion/Release-44/... via CL 3701002
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3700900 on 2017/10/17 by Shaun.Kime

	Integrating possible crash fix from Dev-Niagara to Dev-Gen
	#!rb none
	#!tests n/a
	#!fyi Olaf.Piesche

Change 3700492 on 2017/10/17 by Shaun.Kime

	Merging using //Orion/Dev-General/_To_//Orion/Dev-Niagara
	#!rb none
	#!tests done in branch

Change 3700217 on 2017/10/17 by Olaf.Piesche

	Fix for potential crash in sprite renderer

	#!rb none
	#!tests minion test map

Change 3700216 on 2017/10/17 by Benn.Gallagher

	Fix for crash using Ghost's E on Rampage due to posable mesh being set as the master pose component. Clothing simulation assumed derivative of skeletal mesh component so was failing to correctly map its bones to the master.
	#!rb Lina.Halper
	#!jira OR-45226
	#!tests PIE + Standalone games hitting Rampage with Ghosts E

Change 3699660 on 2017/10/17 by Jason.Bestimt

	#!ORION_DG - Fixes to UnrealHitchParser edge cases

	#!RB:none
	#!Tests: Ran on Logs from QA

	#!CodeReview: ben.salem

Change 3699462 on 2017/10/17 by Shaun.Kime

	Merging using //Orion/Dev-General/_To_//Orion/Dev-Niagara
	#!tests preflight ok
	#!rb none

Change 3699010 on 2017/10/17 by Jeff.Williams

	Merging //Orion/Main to Dev-General (//Orion/Dev-General) @3698920
	#!rb none
	#!tests none

Change 3698519 on 2017/10/16 by Olaf.Piesche

	Sawtooth ribbon fix; may well fix other potential ribbon rendering artifacts

	#!rb none
	#!tests minion wave test map

Change 3698380 on 2017/10/16 by Shaun.Kime

	Updating logic to now support the autoattachment

	#!rb none
	#!tests autotests pass..

Change 3698263 on 2017/10/16 by Olaf.Piesche

	Assume degrees for sprite rotation

	#!rb none
	#!codereview shaun.kime
	#!tests test sprite emitter

Change 3697652 on 2017/10/16 by Olaf.Piesche

	Fixing crappy FP math for alternating vertex IDs ffor ribbon expansion

	#!rb none
	#!tests minion test map

Change 3696906 on 2017/10/15 by Shaun.Kime

	Fixing the spurious missing required attribute errors that were occuring for Scott on Friday. These were a result of a bad assumption in the code. The scripts input array can include more than just this emitter's scripts and as such we cannot assume that all the input scripts should be checked against the Emitter's renderers. Now we only check this emitter's scripts against the renderers.

	#!rb none
	#!tests now no longer generates invalid errors
	#!fyi frank.fella, olaf.piesche, simon.tovey

Change 3695456 on 2017/10/13 by Olaf.Piesche

	Fix for potential ribbon crash and end-of-ribbon rendering artifacts

	#!rb none
	#!codereview scott.kennedy
	#!tests minion wave test map

Change 3694545 on 2017/10/13 by Andrew.Grant

	Fix for low frequency async loading crash (OR-42535)

	#!rb gil.gribb
	#!tests comppiled

Change 3694176 on 2017/10/13 by Jeff.Williams

	Plugin manifest name changed to DLCFile name
	#!rb none
	#!tests compile, stage

Change 3693582 on 2017/10/12 by Don.Eubanks

	Fixing PS4 Compile warning (constructor init order not matching member define order)

	#!rb none
	#!tests Compile Shipping Client PS4
	#!fyi olaf.piesche

Change 3693516 on 2017/10/12 by Olaf.Piesche

	Niagara: Remove mesh renderer assert, replace with early out

	#!rb none
	#!tests niagara mesh test asset

	Merging

	//Orion/Dev-Niagara/Engine/Plugins/FX/Niagara/Source/Niagara/Private/NiagaraRendererMeshes.cpp

	to //Orion/Dev-General/Engine/Plugins/FX/Niagara/Source/Niagara/Private/NiagaraRendererMeshes.cpp

Change 3693051 on 2017/10/12 by Ben.Salem

	Adding parser for any logs with dumphitches enabled. Run UnrealHitchParser <logfile> to receive a logfile_hitches.txt file containing only the hitches in the log, plus reference lines to their location in the original log.
	#!rb Clayton.Langford
	#!tests Parsed a 5mb log with dumphitches down to 23k of hitch data.

Change 3692912 on 2017/10/12 by Olaf.Piesche

	Merging: Niagara ribbon tiling distance

	#!rb none
	#!tests ribbon test asset

Change 3692835 on 2017/10/12 by Shaun.Kime

	Synching with Dev-Niagara, specifically CL 3692821 which made InitialMeshRotation respect local space flags.

	#!rb none
	#!fyi scott.kennedy, wyeth.johnson
	#!tests n/a

Change 3692751 on 2017/10/12 by Shaun.Kime

	Removing script that shouldn't have come over.

	#!rb none
	#!tests n/a

Change 3692746 on 2017/10/12 by Shaun.Kime

	Merging using //Orion/Dev-General/_To_//Orion/Dev-Niagara

	#!rb none
	#!tests opened test level and created new emitter/system

Change 3692616 on 2017/10/12 by Don.Eubanks

	OR-45131

	Marking SRetainerWidget and our Orion-specific VirtualWindow (child of the RetainerWidget when bUseRetainerWidget is true) as SelfHitTestInvisible so they don't interfere with our HUD tooltip mouse picking.

	#!rb dan.hertzka
	#!tests Compile DebugGame Editor Win64 / Shipping Client PS4 / PIE
	#!codereview nick.darnell

Change 3691912 on 2017/10/12 by robomerge

	#!ROBOMERGE-AUTHOR: jeff.williams
	Merging //Orion/Dev-General to Main (//Orion/Main) to [at 3689865] #!rb none
	#!tests compile, editor

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

Change 3690944 on 2017/10/11 by Jeff.Williams

	Adding Plugin Config .ini's to DLC paks. Building pluginmanifests per-DLC.
	#!rb Daniel.Lamb
	#!tests Compile, build

Change 3688989 on 2017/10/10 by Lina.Halper

	LOD sync of attached/parent
	#!rb: Laurent.Delayen
	#!tests: price with shotgun skin/PIE/editor

Change 3687592 on 2017/10/09 by Ben.Salem

	Increase the number of times we run each shallow test to make sure our numbers are reliable. Improve shallow FX perf logger to be able to handle multiple runs of the same test.
	#!rb clayton.langford
	#!tests Ran sparrow shallow tests.

Change 3686560 on 2017/10/09 by Shaun.Kime

	Flipping the min/max values to be standard
	#!rb none
	#!tests n/a

Change 3686046 on 2017/10/09 by Shaun.Kime

	Merging latest from Dev-Niagara in preparation for Effects team  work on Monday

	#!rb none
	#!tests successful preflight
	#!fyi Andrew.Grant, Simon.Tovey, Frank.Fella, Olaf.Piesche, Scott.Kennedy, Tim.Elek

Change 3685613 on 2017/10/07 by robomerge

	#!ROBOMERGE-AUTHOR: simon.tovey
	Implementing vector field matrix inverse fix from CL3675167 to 43.3.

	#!rb none
	#!tests none
	#!lockdown  andrew.grant

	#!ROBOMERGE-SOURCE: CL 3684339 in //Orion/Release-43.3/... via CL 3684340 via CL 3684342
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3685603 on 2017/10/07 by robomerge

	#!ROBOMERGE-AUTHOR: thomas.ross
	RotationalContent Improvements
	- Fixed potential bug where tags could be updated when not intended on RotationalContentManager
	- Fix for PIE assert
	- Moved DebugParsing checks to all cases of InitializingTagsFromMCP so that connecting to MCP or returning to the main menu would not overwrite a console / manually set debug option.
	- Removing config tag from RotationalContentOverrides in OrionGlobals.

	New Halloween Gauntlet Test
	- Adding in Halloween Gauntlet Test to facilitate launching halloween overriden builds easily. Run by typing Halloween into the custom text box.

	#!rb none
	#!tests local builds / editor / PIE

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

Change 3685408 on 2017/10/07 by ben.salem

	Fixing robomerge error in DevGen

	#!CodeReview: ben.salem, jason.bestimt, andrew.grant, jeff.williams

	Unresolved conflicts. ben.salem, please merge this change by hand.
	//ROBOMERGE_ORION_Dev_General/OrionGame/Build/OrionBuild.xml

	--------------------------------------
	Merging using DevGen->Release43.3
	Repairing mailer for nightly Perf tests, fixing email headers.
	#!tests run in devgen
	#!rb none
	#!lockdown andrew.grant

	#!ROBOMERGE-SOURCE: CL 3680914 in //Orion/Release-43.3/... via CL 3680919 via CL 3680922
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3685073 on 2017/10/06 by Andrew.Grant

	Merging 3680922 //Orion/Main to Dev-General (//Orion/Dev-General)

	#!tests #!rb na

Change 3684717 on 2017/10/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fixed issue where GT & RT times in profile info were reversed :(

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3680128 in //Orion/Release-43.2/... via CL 3680129 via CL 3680130 via CL 3680235
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3684512 on 2017/10/06 by Laurent.Delayen

	Added 'PlayRateBasis' to SequencePlayer node, to scale PlayRate without having to do more expensive BP code.

	#!rb lina.halper
	#!tests minion AnimBP nativization

Change 3684059 on 2017/10/06 by Max.Preussner

	Orion: Fixed ability videos not loading on PS4 and/or not looping

	#!fyi stephan.jiang
	#!jira OR-44682
	#!rb none
	#!rnx
	#!tests none

Change 3683538 on 2017/10/06 by David.Ratti

	batch all non-trickle gold and XP gameplay cues into single compact RPC call. Fixes issues where rpc throttling would prevent gold/xp number pops over large groups of minions.

	-Fixes enemy heroe kills/assists never showing XP pops. We now pass the avatar actor as the Source Actor into ::AwardXP (like we do for ::AwardCardXP). This was causing XP pops to only show for minions and not players.

	-Fixes case where killing minions with badass was not displaying pops (prediction key issue)

	#!rb none
	#!tests editor, pie
	#!review-3683539 @Matt.Schembari

Change 3683364 on 2017/10/06 by Andrew.Grant

	Changed warning to info

	#!tests #!rb na

Change 3681999 on 2017/10/05 by Bart.Hawthorne

	Implement live spectating feature. Clients can join a match using a custom key by setting their custom key and using the "JoinAsSpectator" console command. This will be replaced with proper UI later. The client is able to watch a match from start to finish (or join in the middle), then they will see the end game sequence and return to the title screen at match completion.

	#!rb cody.haskell
	#!fyi ben.zeigler, matt.schembari, matt.kuhlenschmidt, paul.moore
	#!jira OR-44111
	#!tests Golden path, live spectated numerous matches.

Change 3681403 on 2017/10/04 by Josh.Markiewicz

	#!UE4 - base pass for Tencent Cross SDK
	- basic testing done with enter/exit/switch room
	- basic testing of ShowUI
	- checked in disabled
	#!rb duck
	#!tests see above
	#!jira TEN-301
	#!review-3681404 @sam.zamani, @rob.cannaday

Change 3680623 on 2017/10/04 by David.Ratti

	Rework for how max movement speed is calculated.

	The design is now "only strongest movement speed slow affects player speed". Movement speed buffs are unaffected : they are still accumulated along with the strongest slow.

	Combat Slows (Shooting, jump penalties) are now aggregated within Max Movement Speed, so the same rules apply. If a slow of greater magnitude is active, Combat Slows will effectively be ignored. Likewise, if a combat slow is stronger than a debuff slow, the debuff slow will effectively be ignored.

	Directional Slows (penalty for strafing or backpeddaling) are treated in a similar way. There are some subtleties here, but basically directional slows are only applied if they would be "the strongest" slow.

	GE Slows that are not contributing (due to not being the strongest active slow) will still appear to be "on" and applied. (Their GCs will still play, they are not inhibited, handles to them are still valid, etc).

	Suggested methods for inspection:
	AbilitySystem debug hud (Home/End)
	p.VisualizeMovement (displays final calculated movement speed)
	Orion.Movement.DirectionalScaleDebug (displays directional slow movement scalar)

	Technical information:
	1. Changes the way attribute mods are qualified. Rather than qualifying inside the mod prior to evaluating, we qualify all mods within an FAggregator first, then allow a custom callback to run which can further muck with the mods IsQualified bool, then we evaluate like normal except that we just check the IsQualified bool.

	2. Added a concept of Aggregator Evaluate Meta Data that can be set per aggregator. This is data that is instrinc to the aggregator rather than passed in by the person evaluating.  It may make sense to have this be a shared ptr to reduce memory footprint if this struct grows.

	3. Added a notification for attribute sets when an aggregator is created for one of their attributes.

	4. Added ForEachMod functions in the aggregators to iterate over all mods (while getting the channel and mod op which are otherwise not known to the actual FAggregatorMod)

	5. Added FAggregatorEvaluateMetaDataLibrary which can store common/shared functions for this type of extension.

	#!tests pie
	#!rb FrankG
	#!codereview Fred.Kimberley, Billy.Bramer
	#!fyi colin.fogle
	#!QAReview
	#!RN
	#!designchange

Change 3680580 on 2017/10/04 by Ben.Salem

	Repair email titles for various reports.
	#!rb none
	#!tests Reran tests.

Change 3680438 on 2017/10/04 by Dan.Hertzka

	GameplayAbilities now pass along their SourceObject when creating the effect context for a new effect
	- Fixes the HUD status effect feed not showing sources for a lot of itemization abilities

	Also added the tag to prevent showing a feed entry for the Lifesteal received from the first major agi pip

	#!rb Dave.Ratti
	#!tests OrionEntry PIE - equipped Sand Speeder

	#!QAReview: This should address the majority of cases where a card/gem effect buff doesn't show the source item. There are still a number of unaddressed cases, but these will largely be content one-offs from here on

Change 3680344 on 2017/10/04 by robomerge

	#!ROBOMERGE-AUTHOR: marcus.wassmer
	Speculative disable of defragging on volumetric lightmap textures.
	#!rb andrew.grant
	#!test monolith2 ps4

	#!ROBOMERGE-SOURCE: CL 3678624 in //Orion/Release-43.3/... via CL 3678628
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3680302 on 2017/10/04 by Shaun.Kime

	Integration from DevNiagara.
	Some character and card blueprints were changed in a minor way when they called their parent Burst, Loop, etc. as Blueprints cannot have an unattached array pin and Gameplay cues now have an Additional Niagara Particle Systems array.

	#!rb none
	#!fyi Scott.Kennedy, Olaf.Piesche, Simon.Tovey, Frank.Fella, Andrew.Grant, Tim.Elek
	#!tests passed PS4 test level (not submitted, but ported from DevNiagara). Automated tests pass.

Change 3679946 on 2017/10/04 by Laurent.Delayen

	Fix for OR-44826. Old minions would crash because their LODs would reduce bone counts, and LowerBodyBoneIndices wasn't properly reset between LOD switches.

	#!rb lina.halper
	#!FYI andrew.grant
	#!tests monolith2 old minions

Change 3679938 on 2017/10/04 by Daniel.Lamb

	Allowed foliage cullall option to be modified by scalability options.
	#!rb Trivial
	#!test Compile paragon editor

Change 3679563 on 2017/10/04 by Jon.Lietz

	OR-43599

	- added support for WaitForAttributeChange, WaitForAttributeChangeWithComparison, WaitForAttributeChangeThreshold, and WaitForAttributeChangeRatioThreshold to support tracking on an extrnal source. This way you can track when that extranal sources attribute changes and respond to it.

	#!rb Dave.Ratti
	#!review-3679564 @John.Nielson
	#!tests added these waits to hot pursuit and they worked as expected

Change 3679006 on 2017/10/03 by Ben.Salem

	Try to fix broken nightly mailer issues for FX tests.
	#!rb none
	#!tests Preflighted a shallow fx pass successfully in EC.

Change 3677845 on 2017/10/03 by Andrew.Grant

	Added an ensure to guard against OR-44826 while further investigations occur

	#!tests compiled
	#!rb none

Change 3677443 on 2017/10/03 by John.Nielson

	Fix to OrionOR-44394, Log Warnings related to Phase GC when loading into game as Phase.

	Made it so that gameplayCue's async loads are cancelled when Unloaded (in UnloadGameplayCueNotify).

	#!RB: None
	#!Test: Pie, Uncooked
	#!review-3677445: @David.Ratti

Change 3676748 on 2017/10/02 by Laurent.Delayen

	Minions: split body layer is now done in mesh space, to maintain upper body orientation.

	#!FYI ray.arnett, lina.halper
	#!rb none
	#!test lane minion test map

Change 3675950 on 2017/10/02 by Don.Eubanks

	Added several new supported tags / status effects to the Floating Status Effect Text system.

	Added support for providing a list of Instigating actors when a status effect begins, the list isn't super perfect (overlapping status effects can result in an instigator appearing in multiple lists) but it should be pretty good for now.  This paves the way for us to squelch status effects unless they are initiated by the player.

	Added ScaleOverDistance curve support for floating numbers / text.

	Inverted the Instigator / Target checkboxes for XP in the DamageNumberManager per @matt.schembari request to support his work while I had the asset checked out.

	#!rb matt.schembari
	#!tests Compile DebugGame Editor Win64 / Shipping Client PS4

Change 3675186 on 2017/10/02 by Mic.Rooney

	Support for other anim curve driving audio types (right now specifically DialogueWave)

	#!RB: none
	#!Test: compiled editor/monolithics/withoutunity and tested locally.
	#!review-3675187 @andrew.grant, @david.ratti, @thomas.sarkanen

Change 3675167 on 2017/10/02 by Shaun.Kime

	Changed unsafe InverseFast() to an Inverse()

	#!jira OR-44671
	#!rb Simon.Tovey
	#!tests n/a

Change 3674888 on 2017/10/02 by David.Ratti

	GGP V2
	* Major refactor of the GGP system though this first check in is a scaled back integration from original plans. Primarily to stabilize the system and improve designer work flows before possibly going deeper for a "Completely unified" integration.


	Item System:
	* Simple Ability Keyword Data now directly references gameplay effect to apply, effectively removing Gameplay Effect Keywords.
	* Qualifier and Gameplay Effect parameters now use the FAutoExportScalableFloat structure which automatically hooks up the values to spreadsheets. (GGP is used to surface these parameters for the auto hookup).

	Ability System:
	* SetByCaller magnitudes are now copied over anytime a GE applies another GE. When an ability applies a GE it also brings over its SetByCaller Magnitude tags from the GE that granted it (if granted bya  GE)


	#!rb none
	#!tests editor pie cooked
	#!review-3674889 @Jon.Lietz

Change 3674170 on 2017/09/30 by Mieszko.Zielinski

	Fixed a bug in OrionToggleableNavLinkProxy resulting from an overly optimistic assumption that Navmesh and Gameplay levels are being saved in sync #!Orion

	Had to make OrionToggleableNavLinkProxy's nav poly ID caching happen on map load.

	#!rb none
	#!test golden path
	#!OR-44738

Change 3672937 on 2017/09/29 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Changed Gauntlet filecopy to a single thread to see if it addresses issue with PS4 files

	#!tests 3compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3670237 in //Orion/Release-43/... via CL 3670243 via CL 3670244 via CL 3670245 via CL 3670246
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3672867 on 2017/09/29 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Restored previous behaviour of integer numbers being formatted as "1" and not "1.00"

	#!tests ran game, checked playlist analytic
	#!rb nikdel

	#!ROBOMERGE-SOURCE: CL 3669417 in //Orion/Release-43/... via CL 3669556 via CL 3669557 via CL 3669558 via CL 3669559
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3672575 on 2017/09/29 by robomerge

	#!ROBOMERGE-AUTHOR: david.ratti
	Remove warning that can happens normally with backwards compat replays
	#!rb none
	#!tests compile

	#!ROBOMERGE-SOURCE: CL 3667518 in //Orion/Release-43.3/... via CL 3667520
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3672548 on 2017/09/29 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Fixed crash in the editor caused by trying to build hlods with StaticMeshComponents that don't have a static mesh assigned.
	#!rb Andrew.Grant
	#!test Editor building hlods

	#!ROBOMERGE-SOURCE: CL 3667059 in //Orion/Release-43.3/... via CL 3667060
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3672542 on 2017/09/29 by Andrew.Grant

	Merging

	#!rb #!tests na

Change 3672390 on 2017/09/29 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Changed memreport settings for frontend tests

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3666239 in //Orion/Release-43/... via CL 3666240 via CL 3666241 via CL 3666242 via CL 3666243
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3672385 on 2017/09/29 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Reworked and pretty much final PipelineState cache code

	- various comments incorporated
	- namespaced functions
	- removed redundant class and replaced with ref pointer

	#!tests soaked a lot
	[at daniel.lamb,] [at arne.schober] #!rb none

	#!ROBOMERGE-SOURCE: CL 3666233 in //Orion/Release-43/... via CL 3666235 via CL 3666236 via CL 3666237 via CL 3666238
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3672281 on 2017/09/29 by Rob.Cannaday

	Add user ID to OnNetworkCheatDetected
	#!jira TEN-272
	#!jira TEN-273
	#!jira TEN-274
	#!rb rob.cannaday
	#!tests Win64 AI match, simulate cheat detected by cheat command
	#!review-3672282 @ian.fox @sam.zamani

Change 3671688 on 2017/09/29 by Frank.Gigliotti

	Added ability to set developer comment when adding native tags.

	#!RB David.Ratti
	#!Tests None

Change 3670409 on 2017/09/28 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fix for dump type made while doing cleanup

	#!tests compiled Win64, PS4, ran PS4
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3664048 in //Orion/Release-43/... via CL 3664049 via CL 3664050 via CL 3664873
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3670399 on 2017/09/28 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fixed race condition in pipeline state cache

	Cache now trims every 60 secs to reduce memory. Saves ~95MB in a 60m game of Paragon

	(Couple of extra tweaks planned, but this should be GTG for a v43 release)

	#!rb codereviewed
	#!tests soaked locally, lots

	#!ROBOMERGE-SOURCE: CL 3663603 in //Orion/Release-43/... via CL 3663605 via CL 3663607 via CL 3664870
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3669802 on 2017/09/28 by Andrew.Grant

	From Dev-Framework

	#!jira UE-49858 Fix performance regression deleting many actors at once. It was redundantly serializing packages repeatedly to look for actor references, so now we cache that once per package and only display the slow dialog/p4 check when needed
	#!rb michael.noland
	#!codereview andrew.grant
	#!tests na

Change 3669709 on 2017/09/28 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	Restored LoadTimesObjectVersion even though it is no longer used, packages saved with it will issue a warning in the cooker
	#!rb none
	#!TESTS none

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

Change 3669177 on 2017/09/28 by robomerge

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

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

Change 3669124 on 2017/09/28 by Daniel.Lamb

	Merging //Orion/Main/Engine/Shaders/Public/ShaderVersion.ush
	to //Orion/Dev-General/Engine/Shaders/Public/ShaderVersion.ush

	Fix cook in devgeneral

	Bumped shader version to invalidate stale uniform buffer name.
	#!rb none
	#!TESTS none
	#!fyi Daniel.Wright

Change 3667906 on 2017/09/27 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	[Copy] Fixed HandleLegacyMapBuildData not getting called on P maps loaded in the editor, which apparently was dropped in an integration error, causing all legacy maps (before the BuildData change) to lose their built lighting.
	#!rb none
	#!TESTS QAGame

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

Change 3667899 on 2017/09/27 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	[Copy] Remove unused SM4 reflection capture cubemap
	#!rb none
	#!TESTS none

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

Change 3667894 on 2017/09/27 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	[Copy from Brian] SM4 fallback for reflection captures.
	#!rb none
	#!TESTS none

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

Change 3667859 on 2017/09/27 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	[Copy from Brian] Removed old rasterized deferred reflection env path.
	Removed reflection compute shader. Replaced with PS. Small perf gain.
	#!rb none
	#!TESTS none

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

Change 3667852 on 2017/09/27 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	[Copy] Fixed missing include
	#!rb none
	#!TESTS none

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

Change 3667807 on 2017/09/27 by Daniel.Lamb

	Tencent DLC can now remap the plugin content to the game root directory.
	#!rb Ben.Marsh
	#!test Paragon regioncl dlc build, preflight ps4, win64 standard build + test

Change 3667753 on 2017/09/27 by Clayton.Langford

	Adding automated test for capturing fx perf for lane minions. Also adding a Gauntlet node to run the test nightly, added test map to the cook list, updated the SpawnMinion phase to use new minion assets, and fixed an issue with the spawn timer.

	#!RB Ben.Salem, Adric.Worley
	#!tests PIE, local synced client/server, and Gauntlet's RunAutomaticTest.bat

Change 3667408 on 2017/09/27 by Jordan.Walker

	Optimization to bakedNormal layer blend on Low end material quality
	-uses simple multiply and add normal map blend

Change 3667388 on 2017/09/27 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	[Copy] Moved Volumetric Lightmap textures out of FScene and into FPrecomputedVolumetricLightmapData so their lifetime can match the MapBuildData.  This allows tossing the source BulkData in game after RHI texture creation even though switching lighting scenarios does Release/InitializeRenderingResources multiple times.
	#!rb none
	#!TESTS QAGame on console

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

Change 3667383 on 2017/09/27 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	[Copy] CPU interpolation of Volumetric Lightmaps for the mobile renderer.  They use a scene cache based on interpolation position, since the precomputed lighting buffer for movable objects is recreated every frame.
	#!rb none
	#!TESTS QAGame

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

Change 3667265 on 2017/09/27 by Daniel.Lamb

	Fixed crash in the editor caused by trying to build hlods with StaticMeshComponents that don't have a static mesh assigned.
	#!rb Uriel.Doyon
	#!test Editor building hlods

Change 3667159 on 2017/09/27 by Mieszko.Zielinski

	Added simple logging to BT loading allowing us to identify missing BB keys #!Orion

	#!test golden path
	#!rb Lukasz.Furman

Change 3665944 on 2017/09/26 by Dan.Hertzka

	Fix PS4 compile

	#!rb none
	#!tests compile PS4

Change 3665590 on 2017/09/26 by Daniel.Lamb

	Fix for DLC cooking everything when it should only cook the DLC.
	#!rb None
	#!test None

Change 3665569 on 2017/09/26 by Dan.Hertzka

	New status effect feed for the new HUD:
	- Now placed in the mid-upper-left side of the HUD
	- Biggest difference from before is that there are now names associated with each effect
	- If we can determine the ability it came from (and it has a name/icon), we show that as well. This doesn't work for any card effects yet.

	Cleaning:
	- Deleted all of the old buff widget classes & codepaths
	- Removed redundant properties from StatusEffectDisplayInfo
	- Added BuffStatusTags and DebuffStatusTags to AttributeViewItem. This allows us to associate the effects that modify an attribute with the attribute itself. Allowed me to remove about half of the entries in StatusEffectDisplayData

	Also:
	- Consolidated all of the events on FActiveGameplayEffect into a single struct. Since we don't want to allow non-const access to any other part of the active effect, each of these has an individual getter on the ASC. This is pretty obnoxious when you want to bind multiple events. There is now a getter for the event set of an active effect on the ASC. This allows more convenient non-const native access to these events
	- Added an event for when the inhibition of an effect changes. This is important for UI to know when an effect is no longer relevant (despite never being actually removed)

	@todo: Add support for showing the item ability names that are responsible for effects (note that this will be the ability, not the name of the item. The name of the item will be a lot harder.)

	#!rb Don.Eubanks
	#!tests OrionEntry PIE with some cards and hero abilities

	#!QAReview - Please keep an eye on this to make sure it works as expected during normal play. I wasn't sure how to test stack counts - not sure which status effects actually support that. They should show up though if any do. Please also verify that this still works/appears correctly during the tutorial.

	#!lockdown Billy.Rivers

Change 3665555 on 2017/09/26 by Daniel.Lamb

	AudioStreaming mpsc queue fix up.
	#!rb Andrew.Grant
	#!test Compile paragon client / editor.

Change 3665517 on 2017/09/26 by Daniel.Lamb

	Suspect fix for OR-44619
	#!jira OR-44619
	#!test Paragon editor compile
	#!rb Trivial

Change 3664346 on 2017/09/26 by Jon.Lietz

	- making LifeSpanCallback inside UDecalComponent virtual so sub classes can override how Decals handle fade out.
	- Adding in UOrionDecalComponent to replace the use of UDecalComponent, for the most part they are the same the only thing we needed to change was the LifeSpanCallback() if the Owner is a AOrionGameplayCueNotify_Actor we dont call Super::LifeSpanCallback() that would result in the GC getting destroyed but now call GameplayCueFinishedCallback() so our gameplay cues will recycle as desired.
	- Updated all GC's data to use the new decal class
	- removed the option to place UDecalComponent as BP comp and only left our new UOrionDecalComponent

	#!rb Dave.Ratti
	#!reivew Dave.Ratti
	#!tests used characters that had decal comps in the GC and they recylce as expected.
	#!QAReview please check the effected abilities and cues, I tested and everything looks fine to me up a deeper check is needed.

Change 3664099 on 2017/09/26 by Jon.Lietz

	OR-44510

	- bringing over engine fixes for the Enum Redirector from Dev-Framework

	#!rb none
	#!tests compiles and warnings are gone

Change 3663019 on 2017/09/25 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Gil: fixed race condition in the PipelineStateCache
	#!rb Daniel.Lamb
	#!test paragon ps4 with higher repro modified build
	#!lockdown Andrew.Grant
	#!jira OR-44441

	#!ROBOMERGE-SOURCE: CL 3659463 in //Orion/Release-43/... via CL 3661481 via CL 3661489 via CL 3661497
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3663014 on 2017/09/25 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Quick fix to remove a redundant copy of the PipelineStateInitializer (saves 16MB over a 10min game) incase we need to submit a build before the more extensive changes are ready.

	#!tests ran locally
	#!rb [at daniel.lamb] [at arne.schober]

	#!ROBOMERGE-SOURCE: CL 3658907 in //Orion/Release-43/... via CL 3661480 via CL 3661488 via CL 3661494
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3663004 on 2017/09/25 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Changed dev check for extra commandline args from /data to /temp0

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3658497 in //Orion/Release-43/... via CL 3661478 via CL 3661486 via CL 3661492
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3662999 on 2017/09/25 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Gauntlet - Fixed DateTime used for folders not being set

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3658390 in //Orion/Release-43/... via CL 3661477 via CL 3661485 via CL 3661491
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3662255 on 2017/09/25 by Sam.Zamani

	#!tencent
	- fix for link error due to missing define of static OnNetworkCheatDetected delegate

	#!rb none
	#!tests none

Change 3662073 on 2017/09/25 by Sam.Zamani

	#!tencent
	Added new global network delegates callback FNetworkCheatDetected for when cheating is detected on a server
	Possible options

	#!jira TEN-275 TSS detect and expose punish user callbacks

	KickClient - User should be booted from the current game session via disconnect
	KickMatch - User received info about being punished (eg. ban type etc)
	PunishInfo - User received info about being punished (eg. ban type etc)

	#!rb rob.cannaday
	#!tests none

Change 3659487 on 2017/09/22 by Josh.Markiewicz

	#!Orion - removed NUTFortnite* files because they have been moved into Fortnite specific plugin
	#!review-3659190 john.barrett, ryan.gerleve

Change 3659485 on 2017/09/22 by Josh.Markiewicz

	#!UE4 - removed OSSUtils dependencies from NUTUnrealEngine4 since the refactor moved dependencies into game specific plugins
	#!fyi john.barrett, ryan.gerleve

Change 3659184 on 2017/09/22 by Josh.Markiewicz

	#!UE4 - delete EpicSurvey module
	#!fyi justin.sargent, nick.darnell
	#!rb none

Change 3658697 on 2017/09/22 by Ryan.Gerleve

	Fixes for server-side Tencent anti-cheat library integration:
	-Fix DLL loading to properly call tss_sdk_load and use the correct paths on Linux as well as Windows
	-Add getter for the TssSdkAntiInterf object
	-Enable server anti-cheat in editor builds

	#!codereview sam.zamani
	#!rb none
	#!tests enabled Tencent OSS, built & ran server

Change 3658200 on 2017/09/22 by Graeme.Thornton

	Manual copy of CL 3587584 from Dev-Core

	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

	#!rb none
	#!tests been in Dev-Core and Main for a while now. Compile tests in Dev-General

Change 3657970 on 2017/09/22 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Added Trim() delegate hook to PipelineStateCache so accumulated memory is freed on a hard level transition.

	We've noticed this memory growing considerably overtime and while it may reach a ceiling eventually it was still increasing after 60m of Paragon. This should at least reset it upon the end of each game,

	[at marcus.wassmer,] [at arne.schober] #!rb none
	#!tests cycled 6-7 levels of Paragon

	#!ROBOMERGE-SOURCE: CL 3657965 in //Orion/Release-43/... via CL 3657967 via CL 3657968 via CL 3657969
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657914 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Non-shipping: test and dev builds now check testkit's data drive for a commandline override. Not sure if this will work as-is, but shouldn't cause any harm if not and it needs to go into a pkg build for testing...

	#!tests stepped through in non-pkg build
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3657910 in //Orion/Release-43/... via CL 3657911 via CL 3657912 via CL 3657913
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657906 on 2017/09/21 by Andrew.Grant

	Improved some logging

	#!tests used locally
	#!rb none

Change 3657891 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Formalized idea of multiple test passes in Gauntlet. Current pass and total passes are provided to nodes incase they want to perform custom processing

	Fixed issue with -dev mode on PS4 not updating symbols

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3657887 in //Orion/Release-43/... via CL 3657888 via CL 3657889 via CL 3657890
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657867 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	[NULL MERGE]
	Re-locked network CL to 3652780

	#!tests #!rb na

	#!ROBOMERGE-SOURCE: CL 3657221 in //Orion/Release-43/... via CL 3657359 via CL 3657366 via CL 3657374
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657857 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - Removing start up dialog that warns of non-optional instructions - OR-44444

	#!RB:arciel.rekman
	#!Tests:Compiled

	[CODEREVIEW] daniel.lamb, andrew.grant, arciel.rekman, benjamin.crocker, matthew.coleman, joe.graf

	#!ROBOMERGE-SOURCE: CL 3657058 in //Orion/Release-43/... via CL 3657355 via CL 3657364 via CL 3657370
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657852 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fix for case-insensitivity causing title.json not to be staged

	#!rb daniel.lamb, bob.tellez
	#!tests ran packaging script, verified contents match v42

	#!ROBOMERGE-SOURCE: CL 3657054 in //Orion/Release-43/... via CL 3657353 via CL 3657363 via CL 3657369
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657831 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - Removing popcnt version of CountBits to repair pre-Nehalem processors

	We can worry about a more permanent solution after we get this live.

	#!RB:none
	#!Tests: Compiled

	[CODEREVIEW] daniel.lamb, andrew.grant, ben.marsh, marcus.wassmer

	#!ROBOMERGE-SOURCE: CL 3656206 in //Orion/Release-43/... via CL 3657325 via CL 3657333 via CL 3657338
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657824 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	[CODEREVIEW] andrew.grant, jason.bestimt, jeff.williams

	Unresolved conflicts. andrew.grant, please merge this change by hand.
	//ROBOMERGE_ORION_Release_43_1/Engine/Binaries/Win64/UnrealCEFSubProcess.exe
	//ROBOMERGE_ORION_Release_43_1/Engine/Binaries/Win64/UnrealCEFSubProcess.pdb

	--------------------------------------
	Built new UnrealCEFSubprocess client
	Changed OrionBuild.xml to build the shipping version of the above.

	The first should definitely fix out store issue. It's not clear to me if the latter will because if this artifact was being staged I'd expect to see UnrealCEFSubProcess-Win64-Development etc be distributed and it's not. This suggests to me we just stage what's in P4 and not the result of this step, but further investigationds will be needed to vet this.

	[at justin.sargent,[at benjamin.crocker,[at wes.fudala]]]

	#!ROBOMERGE-SOURCE: CL 3656066 in //Orion/Release-43/... via CL 3657319 via CL 3657332 via CL 3657337
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657488 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: anton.migulko
	LIGHTING AND assets update

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

Change 3656388 on 2017/09/21 by Laurent.Delayen

	Added default GetAxisVector static function to EAxisOption

	#!rb none
	#!FYI thomas.sarkanen
	#!tests lane minions test map

Change 3656387 on 2017/09/21 by Laurent.Delayen

	Initialize FAnimInstanceProxy with default constructor.

	#!rb none
	#!fyi lina.halper, thomas.sarkanen
	#!tests lane minion test map

Change 3656003 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	[NULL MERGE]
	Locked net version to 3650578 for patching

	benjamin.crocker
	#!tests #!rb na

	#!ROBOMERGE-SOURCE: CL 3655998 in //Orion/Release-43/... via CL 3656000 via CL 3656001 via CL 3656002
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3654403 on 2017/09/20 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Merge DevCore -> Orion Release-43 CL 3641450
	UE4 - Switch PS4 over to atomics that issue a full memory barrier. UE4 assumes atomics have memory barriers.
	#!rb Daniel.Lamb
	#!test Compile
	#!lockdown Andrew.Grant

	#!ROBOMERGE-SOURCE: CL 3654399 in //Orion/Release-43/... via CL 3654400 via CL 3654401 via CL 3654402
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3654356 on 2017/09/20 by Andrew.Grant

	Merging 3653658 from Dev-Rendering

	#!tests compiled, ran editor
	#!rb marcus.wassmer

Change 3653914 on 2017/09/20 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Bumped script version to reprocess autosdks (installs debugger for CoreFileAPI access).

	#!rb none
	#!tests ran locally

	#!ROBOMERGE-SOURCE: CL 3653910 in //Orion/Release-43.1/... via CL 3653911 via CL 3653912
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3652495 on 2017/09/19 by Andrew.Grant

	Editgration of VR fix in 3643776 from Release-4.17

	#!tests #!rb na

Change 3652244 on 2017/09/19 by Sam.Zamani

	#!tencent
	Disable launcher checks if "-q" is on command line indicating QQ id when launched via TCLS launcher
	Added "-q" to whitelist of command line params for shipping builds
	Skip update URI routing to Epic Launcher for tencent builds since they use TCLS launcher

	#!rb rob.cannaday
	#!tests none

Change 3651493 on 2017/09/19 by buildmachine

	BuildPhysX.Automation: Deploying PhysX & APEX & NvCloth Linux_x86_64-unknown-linux-gnu libs.
	#!rb none
	#!lockdown Nick.Penwarden
	#!tests none

Change 3651490 on 2017/09/19 by buildmachine

	BuildPhysX.Automation: Deploying PhysX & APEX & NvCloth Linux_aarch64-unknown-linux-gnueabi libs.
	#!rb none
	#!lockdown Nick.Penwarden
	#!tests none

Change 3651489 on 2017/09/19 by buildmachine

	BuildPhysX.Automation: Deploying PhysX & APEX & NvCloth Linux_arm-unknown-linux-gnueabihf libs.
	#!rb none
	#!lockdown Nick.Penwarden
	#!tests none

Change 3651445 on 2017/09/19 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - Integrating CL 3651124 from Release-4.17 to remove -ffast-math flag

	#!RB:none
	#!Tests:none

	[CODEREVIEW] dmitry.rekman, daniel.lamb, andrew.grant

	#!ROBOMERGE-SOURCE: CL 3651441 in //Orion/Release-43/... via CL 3651443 via CL 3651444
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3651059 on 2017/09/19 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Removed code to archive load-order during tests

	#!tests #!rb na

	#!ROBOMERGE-SOURCE: CL 3651056 in //Orion/Release-43/... via CL 3651057 via CL 3651058
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3651043 on 2017/09/19 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Changed error parsing from tests to put cause ahead of file info

	#!tests ran self-test
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3651034 in //Orion/Release-43/... via CL 3651041 via CL 3651042
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3649683 on 2017/09/18 by Andrew.Grant

	Bulk-merge of oustanding changes in Main to DG

	#!tests #!rb na

Change 3649345 on 2017/09/18 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Integrate fix for eidtor crash when switching between low and high scaleability options.
	#!rb Olaf.Piesche
	#!test Paragon editor

	#!ROBOMERGE-SOURCE: CL 3643174 in //Orion/Release-43/... via CL 3643214 via CL 3643240
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3649335 on 2017/09/18 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - OR-44257 - Fix for hair not working
	It is valuable to use the proper variable when doing Boolean logic :/  Cut-n-paste error from bit-packing conversion.

	#!RB:daniel.lamb
	#!Tests:Re-tested in cooked build

	[CODEREVIEW] daniel.lamb

	#!ROBOMERGE-SOURCE: CL 3643061 in //Orion/Release-43/... via CL 3643211 via CL 3643237
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3649231 on 2017/09/18 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - Bit packing skel mesh cache variable and then reverting sound cue changes to avoid collision with AaronM

	#!RB:none
	#!Tests:none

	[CODEREVIEW] daniel.lamb, aaron.mcleran, marc.audy

	#!ROBOMERGE-SOURCE: CL 3642166 in //Orion/Release-43/... via CL 3643199 via CL 3643231
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3649211 on 2017/09/18 by robomerge

	#!ROBOMERGE-AUTHOR: marcus.wassmer
	Fix 'lowest' shadow settings (simple forward rendering)
	#!rb arne.schober
	[FYI] Daniel.Wright
	#!tests monolith

	#!ROBOMERGE-SOURCE: CL 3642119 in //Orion/Release-43/... via CL 3643196 via CL 3643228
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3649141 on 2017/09/18 by Stephan.Jiang

	Tagging files that shouldn't be merged up to Main, upon next engine merge should accept source.

	  -- These are hacks for ability videos to work before we have the new Sequencer updates
	  -- CLs contain those hacks: 3649066, 3649049, 3648752, 3648748

	#!fyi Andrew.Grant, Max.Preussner
	#!rb none
	#!test compile

Change 3649087 on 2017/09/18 by Thomas.Ross

	Merging //UE4/Dev-Framework/ CL#!3646428 using //UE4/Dev-Framework_to_//Orion/Dev-General
	#!rb none
	#!tests none
	#!fyi Andrew.Grant,Jeff.Williams,dan.oconnor

Change 3649066 on 2017/09/18 by Max.Preussner

	WmfMedia: Fix for multiple media sessions being created when repeatedly opening media sources

	#!rb stephan.jiang
	#!rnx
	#!tests none

Change 3649049 on 2017/09/18 by Max.Preussner

	Media: Changed audio sample rate warning to verbose log

	#!fyi stephan.jiang
	#!rb none
	#!rnx
	#!tests none

Change 3648752 on 2017/09/18 by Max.Preussner

	WmfMedia: Fixed race condition in media sound wave

	#!rb none
	#!rnx
	#!tests none

Change 3648748 on 2017/09/18 by Max.Preussner

	WmfMedia: Hack for preventing flicker between media source switching

	Do not merge to Dev-Main!

	#!rb stephan.jiang
	#!rnx
	#!tests none

Change 3648596 on 2017/09/18 by Bart.Hawthorne

	More Oodle batch file fixes - cleaned up the changelist description and removed the changelist parameter since the branch parameter is enough.

Change 3648575 on 2017/09/18 by Sam.Zamani

	#!tencent
	Fix for missing library calls when initializing TSS anti cheat SDK

	#!rb none
	#!tests compiles win64 server

Change 3648556 on 2017/09/18 by Jeff.Williams

	Null Merging //Orion/Main to Dev-General (//Orion/Dev-General) @3642084

	Clearing up robomerge


	#!rb none
	#!tests none

Change 3648533 on 2017/09/18 by clayton.langford

	Unblocking RM.

	#!CodeReview: clayton.langford, jason.bestimt, andrew.grant, jeff.williams

	Unresolved conflicts. clayton.langford, please merge this change by hand.
	//ROBOMERGE_ORION_Dev_General/Engine/Source/Programs/AutomationTool/NotForLicensees/Gauntlet/Gauntlet.Automation.csproj

	--------------------------------------
	Backing out 3641723 for now due to nontrivial merge conflicts. Did not back out change to DefaultEditor.ini since this change is unrelated to the conflict and essential for existing tests to run properly.

	#!RB Adric.Worley
	#!tests none

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

Change 3648219 on 2017/09/18 by Sam.Zamani

	#!tencent
	fixed Tencent module thirdparty dll runtime dependency paths
	fixed DLLHandle not being set

	#!rb none
	#!tests none

Change 3647998 on 2017/09/18 by Clayton.Langford

	Reorganized CardFXTests to the appropriate location for this branch as part of the merge associated with 3645763.

	#!tests compiled
	#!rb Adric.Worley

Change 3647817 on 2017/09/18 by James.Golding

	Mirror fix from 4.18 release stream (CL 3647799) to Dev-General
	Fix out-of-bounds access of cloth mapping data during CPU skinning
	#!rb benn.gallagher
	#!jira UE-49628
	#!fyi benn.gallagher
	#!tests convert RiftMage to static mesh

Change 3647749 on 2017/09/18 by Benn.Gallagher

	Small change to windows memory intrinsics in PhysX to avoid VS compilation bug on windows causing restrict parameters to bleed the restrict into the calling scope.

	This caused matrix transposition to fail after the data was copied in using memcpy

	BuildPhysX.Automation: Deploying PhysX & APEX Win64 libs.
	#!rb none
	#!tests Editor reimport of clothing assets

Change 3646242 on 2017/09/15 by Tyler.Cole

	Revert shared engine LocalMCP scripts.

Change 3646153 on 2017/09/15 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - Caching off HasActiveClothingAssets for SkeletalMeshes and ShouldApplyInteriorVolumes for SoundCues in non editor builds

	#!RB:daniel.lamb
	#!Tests: Ran cooked Client

	[CODEREVIEW] daniel.lamb, Benn.Gallagher, lina.halper, marc.audy

	#!ROBOMERGE-SOURCE: CL 3641934 in //Orion/Release-43/... via CL 3641936 via CL 3641940
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3646125 on 2017/09/15 by robomerge

	#!ROBOMERGE-AUTHOR: arne.schober
	OR - Sorting Primitive Components to increase I-Cache utilization and to keep the branch prediction alive during initviews.
	#!RB Marcus.Wassmer
	#!tests automated performance tests

	#!ROBOMERGE-SOURCE: CL 3641873 in //Orion/Release-43/... via CL 3641882 via CL 3641886
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3645861 on 2017/09/15 by clayton.langford

	#!CodeReview: clayton.langford, jason.bestimt, andrew.grant, jeff.williams

	Still need to move OrionTest.CardFXTest.cs to the correct location and generate the proper includes in the GauntletExtra csproj file. Will do this in a separate CL as advised by JeffW.

	Unresolved conflicts. clayton.langford, please merge this change by hand.
	//ROBOMERGE_ORION_Dev_General/Engine/Source/Programs/AutomationTool/NotForLicensees/Gauntlet/Gauntlet.Automation.csproj

	--------------------------------------
	Adding more card types to the automated tests. We now support all cards with an active ability and valid target types. This brings us to a current total of 40 cards for now, but new cards that fit the criteria will automatically be included once they are added.

	To execute the tests, either run a gauntlet test for CardFXTests or enterthe following command from the frontend: Automation RunTests OrionPerf.Effects.Cards

	Known issues: The following cards do not properly confirm their abilities and so produce invalid results: StaticTrap, LampLighter, ProtectiveSentry, and AstralLeap. Disabling these cards is nontrivial as the tests are automatically generated.

	#!tests ran local client/server, preflighted
	#!rb Ben.Salem
	#!rnx
	[FYI] Sean.Tobin, Hunter.Kent, Edward.King

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

Change 3644062 on 2017/09/14 by Aaron.McLeran

	#!jira OR-44171 Some looping sounds are extremely loud
	#!rb Ethan.Geller
	#!tests run paragon, run near water river, don't observe looping sound being very loud

Change 3643901 on 2017/09/14 by Laurent.Delayen

	Integrated CL #!3604725 to fix bug with opening state machines from anim graph.

	#!rb none
	#!tests fixes bug
	#!FYI lina.halper

Change 3643641 on 2017/09/14 by Rob.Cannaday

	Fix unreachable code detected
	#!rb rob.cannaday
	#!tests Win64 compile

Change 3643326 on 2017/09/14 by Sam.Zamani

	#!tencent
	- temp disabled TerSafe.dll loading until staging issues can be resolved

	#!rb none
	#!tests none

Change 3643039 on 2017/09/14 by Sam.Zamani

	#!tencent
	- temp disabled TSS on servers due to linux build issues

	#!rb none
	#!tests none

Change 3642438 on 2017/09/13 by Rob.Cannaday

	Handle new analytics param types (number, string, etc)
	Stub implementation of FAnalyticsProviderETTencent DefaultAttrs
	#!rb rob.cannaday
	#!tests Win64 vs AI match

Change 3641655 on 2017/09/13 by Sam.Zamani

	#!tencent
	WIP added tss_sdk.dll (server) and TerSafe.dll (client)

	JIRA TEN-262 StoryAnti-Cheat SDK - TerSafe.dll 3rd party module for client
	JIRA TEN-197 StoryTSS SDK 3rd party module for dedicated servers

	#!rb none
	#!tests PC run with RegionCN.pak enabling tencent mode

Change 3641559 on 2017/09/13 by Bart.Hawthorne

	Fix up oodle dictionary generation scripts

	#!rb none
	#!jira none

Change 3641550 on 2017/09/13 by robomerge

	#!ROBOMERGE-AUTHOR: john.nielson
	Added more temp logging in attempt to find OrionOR-43600: Master Bug: Some hero ability FXs are missing in v43

	#!rb: none
	#!test: Pie

	#!ROBOMERGE-SOURCE: CL 3641546 in //Orion/Release-43/... via CL 3641548 via CL 3641549
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3641393 on 2017/09/13 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	We'd lilke to start using this on PS4 but the cost is very high (link-times are 60-90m!) so it needs to be something that is enabled selectively on the farm. I think we're going to consider it analogous to "Arxan" where it's on by default for Nightly/Standard builds in Release branches, but can be flipped off for quick turnarounds and is off in dev.

	Currently LTCG/LTO on PS4 is driven purely by bEnableLTOPerfBuilds / bEnableLTODevBuilds project settings. This change allows it to be specified as a command line UBT argument, and also preps the ground for targets to specify their own PGO file which would be used when LTO is enabled

	- Changed UBT option from -NoLTCG to -LTCG (I didn't see how it's possible to turn this on, since the default is false and adding the option also turns it false)
	- Added PGOInput option to TargetRules and passed through to compile environment
	- Updated UEBuildPS4.cs to that bAllowLTCG=true overrides settings in the ini file about what targets to have LTCG on for
	- Updated PS4 toolchain to use both LTO and PGO depending on what was set

	#!tests soaked locally, preflighted
	#!rb codereviewed

	FWIW here are before/after results for LTCG.

	Orion Performance report from 3 games and 1441.51 seconds
	MVP:    2.83 (Min: 2.05, Max: 3.22)
	HPM:    4.29 (Min: 4.24, Max: 4.37)
	AvgH:   2.77ms (Min: 2.08ms, Max: 4.16ms)
	GT:     12.88ms (Min: 12.68ms, Max: 13.25ms)
	RT:     13.71ms (Min: 13.48ms, Max: 14.08ms)
	GPU:    14.39ms (Min: 14.21ms, Max: 14.50ms)

	Orion Performance report from 3 games and 1440.49 seconds
	MVP:    1.42 (Min: 1.02, Max: 1.94)
	HPM:    3.25 (Min: 2.75, Max: 3.62)
	AvgH:   2.08ms (Min: 2.08ms, Max: 2.08ms)
	GT:     11.93ms (Min: 11.64ms, Max: 12.47ms)
	RT:     12.80ms (Min: 12.54ms, Max: 13.24ms)
	GPU:    14.10ms (Min: 13.91ms, Max: 14.27ms)

	#!ROBOMERGE-SOURCE: CL 3641352 in //Orion/Release-43/... via CL 3641354 via CL 3641357
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3640885 on 2017/09/13 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Limited warning to once every 10 secs.

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3640377 in //Orion/Release-43/... via CL 3640380
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3640875 on 2017/09/13 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fixed shipping config issue

	#!tests #!rb na

	#!ROBOMERGE-SOURCE: CL 3640328 in //Orion/Release-43/... via CL 3640362
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3640870 on 2017/09/13 by robomerge

	#!ROBOMERGE-AUTHOR: mieszko.zielinski
	Fixing CIS builds #!Orion

	The builds were failing because InitAsyncThread is being run as part of UHT, which doesn't usually include -DebugFX parameter, and warnings reported by UHT during reflection code generation are treated as errors.

	[CODEREVIEW] John.Nielson
	#!rb none
	#!test compilation

	#!ROBOMERGE-SOURCE: CL 3640310 in //Orion/Release-43/... via CL 3640361
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3640783 on 2017/09/13 by robomerge

	#!ROBOMERGE-AUTHOR: john.nielson
	More temporary logging for finding the missing FX issue.

	#!rb: none
	#!Test: Pie

	#!ROBOMERGE-SOURCE: CL 3640089 in //Orion/Release-43/... via CL 3640352
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3639910 on 2017/09/12 by Rob.Cannaday

	Build fix for AnalyticsETTencent
	#!rb rob.cannaday
	#!tests compile Win64 DebugGame Editor

Change 3639565 on 2017/09/12 by Laurent.Delayen

	SkeletalMeshComponent::InitAnim doesn't call Update and Eval anymore, but instead initializes transforms with cheaper ref pose, and relies on regular ticking for updating the pose, so we can take advantage of visibility related optimizations. Also RecalcRequiredBones uses correct predicted LOD level instead of defaulting to 0.

	#!rb lina.halper
	#!FYI lina.halper
	#!tests minion test lane, dropping meshes in a level, testing masterpose component at runtime.

Change 3639228 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Tools - Added ability to postmortem a PS4 devkit for last crash

	#!rb run locally
	#!tests none

	#!ROBOMERGE-SOURCE: CL 3639226 in //Orion/Release-43/... via CL 3639227
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3639075 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: jeff.williams
	Specifically requesting 'all' configuration, to avoid missing manifest in jar.

	#!ROBOMERGE-SOURCE: CL 3639072 in //Orion/Release-43/... via CL 3639074
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3639022 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: dan.hertzka
	Remove dependency on the editor style set in the WidgetReflector
	- Fixes a crash when trying to use the reflector in a client cooked build
	- Also updated Focusable column name to shared var

	#!rb none
	#!tests Widget Reflected in a cooked build

	#!ROBOMERGE-SOURCE: CL 3639020 in //Orion/Release-43/... via CL 3639021
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3638984 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: john.nielson
	Added some more temp logging to get to the bottom of the missing FX issue.  OR-43600 : Master Bug: Some hero ability FXs are missing in v43

	#!rb: none
	#!test: Pie

	#!ROBOMERGE-SOURCE: CL 3638982 in //Orion/Release-43/... via CL 3638983
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3638696 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Swapped problematic ensure to LogError, made draft obey notimeouts.

	#!tests compiled
	#!rb none
	[at daniel.lamb]

	#!ROBOMERGE-SOURCE: CL 3638693 in //Orion/Release-43/... via CL 3638695
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3638644 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Third time's the charm

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3638620 in //Orion/Release-43/... via CL 3638636
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3638628 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Removed ensure in a PS4 friendly way

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3638550 in //Orion/Release-43/... via CL 3638551
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3638583 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Removed ensure to get a cook

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3638476 in //Orion/Release-43/... via CL 3638478
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3638545 on 2017/09/12 by Bart.Hawthorne

	Add analytics for oodle compression percentages

	#!rb ryan.gerleve, wes.hunt
	#!tests ran a 2 person game with dedicated server and verified analytics were reported
	#!jira OR-26386

Change 3638172 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: marcus.wassmer
	Duplicate 3620803
	Partial Fix for Dither Opacity Mask
	#!rb none
	#!tests PC monolith

	#!ROBOMERGE-SOURCE: CL 3637837 in //Orion/Release-43/... via CL 3637838
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3637643 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: jeff.williams
	Fixing version stream to Main

	#!ROBOMERGE-SOURCE: CL 3637373 in //Orion/Release-43/... via CL 3637466
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3637524 on 2017/09/11 by Andrew.Grant

	Merging EngineTest and latest Gauntlet using //Orion/Dev-General/_To_//UE4/Orion-Stating

	#!tests build Win64 editor, ran tests locally
	#!rb none

Change 3637402 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Gauntlet -  Restored logging of runoptions when not verbose

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3636838 in //Orion/Release-43/... via CL 3636840
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3637357 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Made 'none' test specify Attended

	#!rb Daniel.Lamb
	#!tests compiled

	#!ROBOMERGE-SOURCE: CL 3636811 in //Orion/Release-43/... via CL 3636812
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3637305 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: john.nielson
	Added temporary debug logging cmd line option for finding Jira OrionOR-43600

	#!RB: none
	#!Test: Pie
	[at David.Ratti]

	#!ROBOMERGE-SOURCE: CL 3636730 in //Orion/Release-43/... via CL 3636732
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3636549 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - Integrating CL 3633162 from Dev-Rendering to guard around potential issues

	#!RB:none
	#!Tests:none

	[CODEREVIEW] uriel.doyon

	#!ROBOMERGE-SOURCE: CL 3636541 in //Orion/Release-43/... via CL 3636542
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3636507 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: dan.hertzka
	[OR-44013] & [OR-43780] - Hamstrung the old long-form rich text formatting functions to remove unsupported formatting immediately. Will be cleaning up API and usages in DG.

	Also:
	- Added distance formatting type for simple ability description values (will automatically append u to the value)
	- SimpleAbility description values can now go up to two decimal places

	Engine:
	- Modified FGameplayTag::ImportTextItem to account for redirects when establishing TagName

	#!rb Matt.Schembari
	#!tests PIE OrionEntry & FrontEndScene - various bug repros

	#!ROBOMERGE-SOURCE: CL 3636370 in //Orion/Release-43/... via CL 3636412
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3636372 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Implement fast particle pool memory.
	Default is 2mb, automatically cleans up oldest used pool slots.
	Estimated 1/4 time for STAT_PARTALLOC.
	#!rb Jason.Bestimt
	#!test paragon ps4 cooked

	#!ROBOMERGE-SOURCE: CL 3636045 in //Orion/Release-43/... via CL 3636048
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3636319 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fixed issue with fatal error message not being shown in reports.

	Fixed issue where some cancelled tests reported as succeeded

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3635951 in //Orion/Release-43/... via CL 3635955
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3636264 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - Integrating CL 3609090  && 3621546 from Dev-Rendering to help with Render Thread mip map streaming performance

	#!RB:none
	#!Tests: Ran client cooked build

	[CODEREVIEW] daniel.lamb, andrew.grant, Uriel.Doyon
	[QAREVIEW]

	#!ROBOMERGE-SOURCE: CL 3635817 in //Orion/Release-43/... via CL 3635819
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3635288 on 2017/09/10 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Added CleanDevices command and task that runs nightly in Dev-Gen to remove old builds from devices
	Fixed missing - in SoloSmoke args that were causing trailing params to be lost

	#!tests preflighted, ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3635286 in //Orion/Release-43/... via CL 3635287
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3635145 on 2017/09/09 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Bumped script version to pick up SDK change for patch packages
	#!rb none
	#!tests none

	#!ROBOMERGE-SOURCE: CL 3635143 in //Orion/Release-43/... via CL 3635144
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3635097 on 2017/09/09 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Added cleardevices option to Gauntlet that removes all devices after running.

	Added to Orion build scripts

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3635090 in //Orion/Release-43/... via CL 3635091
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3634985 on 2017/09/09 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Cleaned up some logging around device failures

	Attempt to handle "Too Many Connections" error at a lower level

	Added removeall command to PS4DevkitUtil (not yet used)

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3634983 in //Orion/Release-43/... via CL 3634984
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3634897 on 2017/09/09 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Checking in change to timeouts to test theory

	#!tests ran test locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3634895 in //Orion/Release-43/... via CL 3634896
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3634765 on 2017/09/08 by robomerge

	#!ROBOMERGE-AUTHOR: marcus.wassmer
	Scrape another .05ms out of GPU particle simulation.

	#!rb none
	#!tests ps4 monolith

	#!ROBOMERGE-SOURCE: CL 3634763 in //Orion/Release-43/... via CL 3634764
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3634422 on 2017/09/08 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fix for Gauntlet shutdown issue on builders
	Fix for BP editing crash from Dev-Framework

	#!tests ran locally
	#!rb none!

	#!ROBOMERGE-SOURCE: CL 3634313 in //Orion/Release-43/... via CL 3634314
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3634139 on 2017/09/08 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Gauntlet - provision devices on demand. Cuts down logging and reduces issue of kits having too many TM connections when tests on different branches are running

	#!tests ran locally with single and file-based devices
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3633919 in //Orion/Release-43/... via CL 3633921
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3633799 on 2017/09/08 by robomerge

	#!ROBOMERGE-AUTHOR: laurent.delayen
	Fixed crash when on Turrets, when changing their MeshUpdate mode to Montages only.

	#!rb none
	#!tests monolith02 turrets
	[CODEREVIEW] lina.halper

	#!ROBOMERGE-SOURCE: CL 3633600 in //Orion/Release-43/... via CL 3633601
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3633647 on 2017/09/08 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Possible fix for OR-43926 from Arne

	#!tests ran locally, observed no ensures or negative side-effects in UI or HUD
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3633278 in //Orion/Release-43/... via CL 3633281
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3633637 on 2017/09/08 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Upped timeout for editorbased tests
	#!tests #!rb none

	#!ROBOMERGE-SOURCE: CL 3633271 in //Orion/Release-43/... via CL 3633274
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3632565 on 2017/09/08 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Removed some test code...
	#!tests #!rb none

	#!ROBOMERGE-SOURCE: CL 3632563 in //Orion/Release-43/... via CL 3632564
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3632385 on 2017/09/07 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	More improvements to device handling.
	Specifically PS4 targets now force-kill other connection if they're not in use, and fixed an edge case where devices could be left in TM and cause problems.

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3632383 in //Orion/Release-43/... via CL 3632384
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3632177 on 2017/09/07 by robomerge

	#!ROBOMERGE-AUTHOR: thomas.ross
	Merging CL#!3631888 from //UE4/Dev-Framework to //Orion/Dev-Release-43
	#!rb none
	#!test local commandlet

	#!ROBOMERGE-SOURCE: CL 3632175 in //Orion/Release-43/... via CL 3632176
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3632131 on 2017/09/07 by robomerge

	#!ROBOMERGE-AUTHOR: marcus.wassmer
	Fix a bug with new local vector-field only project setting
	#!rb none
	#!tests ps4 monolith

	#!ROBOMERGE-SOURCE: CL 3632127 in //Orion/Release-43/... via CL 3632130
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3632034 on 2017/09/07 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fixed issue where problem devices were reset each attempt

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3632029 in //Orion/Release-43/... via CL 3632032
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3631812 on 2017/09/07 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	More improvements to device management in Gauntlet

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3631602 in //Orion/Release-43/... via CL 3631604
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3631787 on 2017/09/07 by robomerge

	#!ROBOMERGE-AUTHOR: laurent.delayen
	Fix for OR-42922, reset TickRecords when doing 'OnlyTickMontagesWhenNotRendered' since the montage will appear to have jumped when regular ticking resumes.

	#!rb none
	[CODEREVIEW] martin.wilson
	#!test bot game

	#!ROBOMERGE-SOURCE: CL 3631532 in //Orion/Release-43/... via CL 3631536
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3631251 on 2017/09/07 by Andrew.Grant

	Additional device selection improvements

	#!tests #!rb na

Change 3630861 on 2017/09/07 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Imrpoved device selection to randomize pick order, exclude devices that failed on the last round, and provide more info as to the constraints of the pool

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3630857 in //Orion/Release-43/... via CL 3630858
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3630620 on 2017/09/07 by Laurent.Delayen

	RigidBody anim node: Maintain Bone Velocity transfers through LOD changes. Refactored bone velocity transfer to be queued one frame, while we let final animation pose through. Added support for transferring angular velocity. If update rate is less than 30FPS, break down update into several iterations (max 4). This is to support URO, which can update animations at 15 FPS for minions.

	#!rb Ori.Cohen
	#!codereview benn.gallagher
	#!tests lane minions test map

Change 3629990 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Fix for gpu hang on ps4.
	#!rb Marcus.Wassmer
	#!test Paragon cooked ps4
	#!jira OR-43835

	#!ROBOMERGE-SOURCE: CL 3629890 in //Orion/Release-43/... via CL 3629891
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629980 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Moved some missed code to FDebug::HasAsserted()

	#!tests na
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3629794 in //Orion/Release-43/... via CL 3629795
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629975 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: marcus.wassmer
	Project optimization to only support local vector fields.
	separate 'stat emitters' into 'stat emitters' and 'stat emittersrt' to separate gamethread cost from renderthread cost.
	#!rb olaf.piesche
	#!tests monolith ps4/pc

	#!ROBOMERGE-SOURCE: CL 3629782 in //Orion/Release-43/... via CL 3629783
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629917 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: marcus.wassmer
	Fix for sizebyspeed on ps4
	#!rb Simon.Tovey
	#!tests pc

	#!ROBOMERGE-SOURCE: CL 3629660 in //Orion/Release-43/... via CL 3629661
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629620 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Always get the rest result from nodes, this is where UnrealTestNode parses logs for errors

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3629618 in //Orion/Release-43/... via CL 3629619
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629554 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Restored screenshot support to gauntlet (now driven externally)

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3629551 in //Orion/Release-43/... via CL 3629553
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629495 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: don.eubanks
	Stat panel will only show stat changes or improvements that come from Item sources (cards / gems)

	#!rb dan.hertzka
	#!tests Compile DebugGame Editor Win64 / Shipping Client PS4 / PIE
	[RN] Card Shop now only considers Attribute Point effects and Card effects when calculating the bonuses for stats on the stats panel.  No more giant HP/MP regen numbers when standing in base!

	#!ROBOMERGE-SOURCE: CL 3629334 in //Orion/Release-43/... via CL 3629337
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629468 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Replaced global access to bHasAsserted to FDebug::HasAsserted() and added FDebug::IsEnsuring()

	Changed GameThreadWaitForTask so it won't timeout if an ensure is ocurring on a different thread.

	#!tests ran locally
	#!rb none
	[at marcus.wassmer]

	#!ROBOMERGE-SOURCE: CL 3629246 in //Orion/Release-43/... via CL 3629296
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629410 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	[CODEREVIEW] andrew.grant, jason.bestimt, jeff.williams

	Unresolved conflicts. andrew.grant, please merge this change by hand.
	//ROBOMERGE_ORION_Main/Engine/Plugins/Runtime/PacketHandlers/CompressionComponents/Oodle/Source/ThirdParty/NotForLicensees/Oodle/Oodle.Build.cs

	--------------------------------------
	Fix for generating project files
	#!tests GPF
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3629088 in //Orion/Release-43/... via CL 3629174
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629369 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Ignore pak signing if fileopenorder is specified (temp? workaround for deadlock in Orion tests)

	#!rb none
	#!tests verified signing is disabled and game gets to main menu with -fileopenlog
	[at graeme.thornton]

	#!ROBOMERGE-SOURCE: CL 3628814 in //Orion/Release-43/... via CL 3628816
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629254 on 2017/09/06 by Laurent.Delayen

	URO: ensure we don't skip more frames than desired when switching LODs.

	#!rb lina.halper
	#!codereview martin.wilson, benn.gallagher
	#!test lane minions test map

Change 3629191 on 2017/09/06 by Laurent.Delayen

	Added CopyAndAssign to BoneContainer. To help transfer Cached Poses through LOD transitions.

	#!rb lina.halper
	#!codereview martin.wilson
	#!test lane minions test map

Change 3629130 on 2017/09/06 by Laurent.Delayen

	AnimInstance: tweaked debug display of AnimSequences, and added DeltaTime to AnimInstance debug.

	#!rb none
	#!tests lane minion test map

Change 3628300 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fixed exception that could occur during tests if all devices were in use
	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3628298 in //Orion/Release-43/... via CL 3628299
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3627915 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Undoing Oodle check for the time being

	#!tests #!rb none

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

Change 3627875 on 2017/09/06 by Jason.Bestimt

	#!ORION_DG - Merge of CL#! 3626655 from Dev-Framework to fix assetimportdata loading (allowing for re-import of curve tables)

	#!RB:none
	#!Tests:none

	#!CodeReview: andrew.grant, alex.gillies, colin.fogle, benjamin.crocker
	#!ROBOMERGE: MAIN, 43

Change 3627694 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Improved warnings

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3627691 in //Orion/Release-43/... via CL 3627693
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3627642 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: david.ratti
	More logging for OR-43892 and OR-43779
	#!rb none
	#!tests compile

	#!ROBOMERGE-SOURCE: CL 3627640 in //Orion/Release-43/... via CL 3627641
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3627247 on 2017/09/05 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Removed check that turns out to be bogus

	#!tests #!rb none

	#!ROBOMERGE-SOURCE: CL 3627245 in //Orion/Release-43/... via CL 3627246
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3627240 on 2017/09/05 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Added compile-time check for presence of Oodle files to prevent future hard-to-debug-runtime-failures

	#!tests compiled OrionClient
	[at daniel.lamb] #!rb none

	#!ROBOMERGE-SOURCE: CL 3627237 in //Orion/Release-43/... via CL 3627239
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3627211 on 2017/09/05 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Added ensure for OR-43777

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3627209 in //Orion/Release-43/... via CL 3627210
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3626839 on 2017/09/05 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Added wait to PS4DevkitUtil before trying to postmortem crashdump

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3626833 in //Orion/Release-43/... via CL 3626837
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3626755 on 2017/09/05 by Rob.Cannaday

	Merge //Orion/Release-Tencent to //Orion/Dev-General
	Some features need to be re-implemented as noted by #!ifdef TODO_TENCENT
	TODO:  Figure out how to have OnlineSubsystemTencent be Enabled by default in OrionGame.uproject, some calls to IOnlineSubsystem::IsLoaded(TENCENT_SUBSYSTEM) will return true even though the OSS is disabled by config because the module itself is loaded
	#!rb sam.zamani
	#!lockdown andrew.grant
	#!tests Win64 vs AI match, QA smoke test
	#!fyi sam.zamani

Change 3626285 on 2017/09/05 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fixed BaseDir argument not being correctly applied in tests

	Added check for LowLevelFatalError to log parser. Don't consider RequestExit's clean if StaticShutdownAfterError was called

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3626280 in //Orion/Release-43/... via CL 3626284
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3626221 on 2017/09/05 by robomerge

	#!ROBOMERGE-AUTHOR: david.ratti
	Queue OnRep_ReplicatedMovement for simulated proxy OrionChars for a single end of frame call. This is to address when clients can't keep up with server's send rate and end up processing multiple packets / actor bunches in a single frame. Rather than handling multiple bunches with movement updates and calling OnRep_ReplicatedMovement every time, this will call the OnRep once at the end of the frame.

	Can be toggled off via UOrionRuntimeOptions::bQueueSimulatedProxyOnRepMovement

	#!rb none
	#!tests verified OnRep_Movement doesn't show up in profiler when client running at < 60hz

	[at Laurent.Delayen] [FYI] [at Andrew.Grant]

	#!ROBOMERGE-SOURCE: CL 3626215 in //Orion/Release-43/... via CL 3626219
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3625925 on 2017/09/05 by Laurent.Delayen

	If using URO with bShouldUseLodMap and we're missing higher LOD numbers into our LOD Map, use highest available settings (below our current LOD number). Instead of defaulting to high quality (eval every frame), which is certainly not what we want.

	#!rb benn.gallagher
	#!codereview martin.wilson, lina.halper
	#!tests lane minion map

Change 3624051 on 2017/09/02 by Andrew.Grant

	Fixed issue with test params not being set.

	Went through OrionBuild.xml and added explicit configs arguments to tests where missing. Also set order of args to tests as "-platform -config" to improve readability.

	#!tests preflighted
	#!rb none
	#!review-3624052 @ben.salem

Change 3623907 on 2017/09/02 by Andrew.Grant

	Fixed usesyncedbuild option being broken in Gauntlet

	#!codereview @daniel.lamb
	#!tests compiled
	#!rb none

Change 3623906 on 2017/09/02 by David.Ratti

	Fix some issues where GameplayCues played on an OrionBaseActor wouldn't be properly translated for skin overrides

	#!rb none
	#!test future wukong pie

Change 3623766 on 2017/09/01 by Daniel.Wright

	[Copy] Volume materials on static meshes now voxelize the mesh's Object space bounding box
	#!rb none
	#!Tests PC QAGame

Change 3623518 on 2017/09/01 by Don.Eubanks

	Fix for Shipping Client PS4

	#!rb none
	#!tests Compile Shipping Client PS4
	#!fyi daniel.lamb andrew.grant

Change 3623515 on 2017/09/01 by Daniel.Wright

	[Copy] Volume materials applied to static meshes operate on the object's bounding sphere
	#!rb none
	#!TESTS QAGame PC

Change 3623503 on 2017/09/01 by Daniel.Wright

	[Copy] Fixed ObjectRadius in Volume domain materials
	#!rb none
	#!TESTS none

Change 3623102 on 2017/09/01 by Marcus.Wassmer

	Add GT (gamethread), AT (async task), RT (renderthread) to stuff in 'stat particles' to make things easier to understand
	#!rb none
	#!tests monolith on PS4
	#!fyi olaf.piesche,tim.elek

Change 3623096 on 2017/09/01 by Marcus.Wassmer

	checkslow -> check to find issues with ILC
	#!rb none
	#!tests ran monolith on ps4

Change 3622744 on 2017/09/01 by Laurent.Delayen

	RigidBody anim node: Added option 'bTransferBoneVelocities' to transfer bone velocities to simulation upon start, so ragdolls transition seamlessly from kinematic (animation) to simulation. (just linear velocity for now).
	Added 'bFreezeIncomingPoseOnStart' option to freeze incoming pose and stop ticking/evaluating rest of the AnimGraph. Also prevents animation animating non simulated bodies.
	Take gravity from movement component if present, to inherit custom gravity scaling.
	Use proper animation deltatime, rather than world deltatime, as that would cause the simulation to run in slow motion when URO was used.
	If LOD enables new bodies, they are now initialized during simulation.
	Only write transforms from simulated bodies. Stop considering children of simulated bodies, since SkelControl system handles that by default.
	Cached MeshBoneIndexToBodyIndex on initialization to avoid linear search during InitializeBoneTransforms, on LOD change.
	Added AnimStats for PreUpdate, Update and Eval.

	#!rb ori.cohen
	#!codereview ori.cohen, lina.halper, benn.ghallager
	#!tests lane minion test map

Change 3622743 on 2017/09/01 by Laurent.Delayen

	Added UpdateComponentPose_AnyThread and EvaluateComponentPose_AnyThread to AnimNode_SkeletalControlBase to allow overriding these in child classes.

	#!rb lina.halper
	#!tests lane minion test map

Change 3622742 on 2017/09/01 by Laurent.Delayen

	'showdebug animation' now shows current LOD, various counters to know if Update/Eval/Cachebones/Init was called. Also URO settings.
	Renamed DisplayDebugCustom to DisplayDebugInstance.

	#!rb lina.halper
	#!tests lane minion test map

Change 3622738 on 2017/09/01 by Laurent.Delayen

	Removed unused USkinnedMeshComponent::AnimUpdateRateSetParams

	#!rb lina.halper
	#!tests lane minion test map

Change 3622666 on 2017/09/01 by Jian.Ru

	Fix incorrect grouping when FHierarchicalStaticMeshSceneProxy::GetDynamicMeshElements
	#!jira UE-48972, OR-43455
	#!rb Chris.Bunner
	#!tests editor

Change 3622579 on 2017/09/01 by Andrew.Grant

	Fixed shutdown issues with some tests being detected as errors

	Simplied and cleanup some things in state management of tests.

	#!tests ShortSOloGame test locally
	#!rb none

Change 3622322 on 2017/09/01 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fix for OR-40366 from v43

	#!tests compiled
	#!rb Aaron.McLeran

	#!ROBOMERGE-SOURCE: CL 3620707 in //Orion/Release-42.4/... via CL 3621208 via CL 3622295
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3621054 on 2017/08/31 by Andrew.Grant

	Merging Gauntlet refactor from //Orion/Dev-General/_To_//UE4/Orion-Stating

	#!tests preflighted
	#!rb none

Change 3620755 on 2017/08/31 by Daniel.Lamb

	Added a pooling system for FDynamicSkelMeshObjectDataGPUSkin.  Doesn't add a lot of memory over head.  Cleans out every few allocations.
	#!rb Jason.Bestimt
	#!test Cooked paragon ps4

Change 3620541 on 2017/08/31 by Ben.Salem

	Tag all nightly gauntlet report emails with [NightlyAuto] for easier sorting.
	#!rb none
	#!tests compiled.

Change 3620443 on 2017/08/31 by Mieszko.Zielinski

	Extended EQSTestingPawn with an option to specify its nav agent properties to affect navigation-related EQS tests/features #!UE4

	#!rb none
	#!test golden path

Change 3620428 on 2017/08/31 by Aaron.McLeran

	#!jira OR-40366 Bringing fix from FN and Anim-Phys to Dev-General

	#!rb Ethan.Geller
	#!tests there is no internal repro. Rare crash online. Confirmed fixed in FN crash reports.

Change 3620411 on 2017/08/31 by Mieszko.Zielinski

	Fix to removal of simuli sources from the AISense_Sight #!UE4

	Made sure given source gets removed from ObservedTargets.

	#!rb none
	#!test golden path

Change 3620343 on 2017/08/31 by Ben.Salem

	Add hitch reporting into FX tests. Layout is definitely WIP but we want the data in those reports to iterate on.
	#!rb clayton.langford
	#!tests ran shallow and normal FX tests, generated hitches to display.

Change 3620050 on 2017/08/31 by Luke.Thatcher

	[ORION] [PS4] [^] Merging compile fix in UEBuildPS4.cs (CL 3619919) from //UE4/Dev-Console/... to //Orion/Dev-General/...
	 - USE_DEFRAG_ALLOCATOR was not always defined in all cases.

	#!rb Daniel.Lamb
	#!tests none

Change 3619836 on 2017/08/31 by Andrew.Grant

	Merging //UE4/Main @ 3613306 (largely 4.17 fixes and an update from rendering team)

	#!tests preflighted, ran locally
	#!rb none

Change 3618597 on 2017/08/30 by Dan.Hertzka

	Fixed Additive UI materials not being affected by the widget opacity
	- We needed to multiply the sampled color by the alpha of the vertex color

	Also added fade in anim for scoreboard when showing after the endgame cinematic

	#!rb Nick.Darnell
	#!tests Widget alpha affects additive materials

Change 3618441 on 2017/08/30 by Laurent.Delayen

	Added AnimInstance::DisplayDebugCustom, to display custom debug info before AnimGraph display.

	#!rb lina.halper
	#!tests lane minions

Change 3618404 on 2017/08/30 by Paul.Moore

	- Update to new MMS client API from Fortnite.
	- Add MMS API plugin.
	#!rb none
	#!tests matchmaking, v2 MMS matchmaking, draft lobby.
	#!lockdown andrew.grant

Change 3618167 on 2017/08/30 by Marcus.Wassmer

	Fix fog on PS4, also volume texture clears.
	#!rb luke.thatcher
	#!fyi Jordan.Walker
	#!tests ran monolith on ps4

Change 3617911 on 2017/08/30 by Andrew.Grant

	Fix for OR-43401, lighting remaining unbuilt

	#!tests ran cook, verified that lighting for bp components is now correctly found.
	#!rb marc.audy

Change 3617765 on 2017/08/30 by Andrew.Grant

	Fix for lighting always being unbuilt on some blueprints

	#!tests cooked data and verified BP components have the correct transform and receive cached lighting data
	#!rb marc.audy, bp-team

Change 3617757 on 2017/08/30 by Laurent.Delayen

	clang fix

	#!rb none
	#!tests none

Change 3617700 on 2017/08/30 by Laurent.Delayen

	Added PreEvalSkelControl_AnyThread to SkelControlBase, to allow capture of incoming pose before SkelControl is evaluated.

	#!rb lina.halper
	#!tests lane minions map

Change 3617695 on 2017/08/30 by Laurent.Delayen

	Added Empty() to FBaseCompactPose and FCSPose, to release allocated arrays.

	#!rb lina.halper
	#!tests test lane minions map

Change 3616757 on 2017/08/29 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fix for OR-43459 from Laurent

	#!tests na
	#!rb Lina.Halper, Andrew.Grant

	#!ROBOMERGE-SOURCE: CL 3615643 in //Orion/Release-42.3/... via CL 3615645 via CL 3615649
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3616745 on 2017/08/29 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	[NULL MERGE]
	Locked net version to 3609966 in anticipation of patch

	#!rb #!tests na

	#!ROBOMERGE-SOURCE: CL 3615584 in //Orion/Release-42.3/... via CL 3615592 via CL 3615597
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3616551 on 2017/08/29 by Daniel.Lamb

	Fix memory leak in paragon.
	#!rb Andrew.Grant
	#!test Paragon ps4

Change 3613700 on 2017/08/28 by Andrew.Grant

	Integrated r.Shadow.UnbuiltPreviewInGame support from Dev-Rendering (reduces cost of rendering unbuilt lighting). Set to off for Orion

	Renabled r.Cache.UpdatePrimsTaskEnabled

	#!tests ran locally
	#!rb none

Change 3613694 on 2017/08/28 by Andrew.Grant

	Added -teamsize argument to Orion none test.

	#!tests ran None test :)
	#!rb none

Change 3613638 on 2017/08/28 by Ben.Salem

	Hide threshold colors for Perf tests on Thread times when in development. Add hyperlinks to description videos for Shallow tests. Support for linking new videos on other tests is already in for when videos are created.
	#!rb clayton.langford
	#!tests Ran shallow and deep test for multiple characters.

Change 3612731 on 2017/08/28 by Chris.Bunner

	[DUPLICATE] CL 3572421 - Edge case in lazyobjptr assignment failing for landscape collision components which causes grass data to be flushed during cook.
	#!rb
	#!fyi Robert Manuszewski, Andrew.Grant, Daniel.Lamb
	#!tests Cooking/running simple scene with grass foliage
	#!jira UE-48698, OR-42612

Change 3612695 on 2017/08/28 by Andrew.Grant

	Added longtimeouts option that uses TimeoutMultiplierForUnoptimizedBuilds value for net connections to solve issue where nomcp can timeout due to non-async loading

	Moved Gauntlet-in-shipping determination to OrionClient.Target.cs so it can be enabled with other things.

	#!tests ran NoneTest with -nomcp
	#!rb none

Change 3612002 on 2017/08/27 by Andrew.Grant

	Fix for crash seen during nightly tests

	#!tests baseline perf didn't crast 3/3
	#!rb none

Change 3611980 on 2017/08/27 by Andrew.Grant

	PS4DevkitUtil post-mortem improvements to logging
	#!tests run ShortSoloGame
	#!rb none

Change 3611758 on 2017/08/26 by Andrew.Grant

	Fix for warning

	#!tests #!rb na

Change 3611737 on 2017/08/26 by Andrew.Grant

	Merging optimizations 3517039, 3545241, & 3545347 from Dev-Rendering

	3517039 -

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

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

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

	3545241 -

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

	3545347 -

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

Change 3611718 on 2017/08/26 by andrew.grant

	#!CodeReview: andrew.grant, jason.bestimt, jeff.williams

	Unresolved conflicts. andrew.grant, please merge this change by hand.
	//ROBOMERGE_ORION_Dev_General/Engine/Source/Programs/AutomationTool/NotForLicensees/Gauntlet/Unreal/Gauntlet.UnrealLogParser.cs

	--------------------------------------
	Improved parsing of callstacks and errors in test logs
	Added unit test for error parsing

	#!tests ran locally, unit tests
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3611709 in //Orion/Release-42.3/... via CL 3611710 via CL 3611711
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3611704 on 2017/08/26 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Test fixes - addresses issue with memory report failing

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3611695 in //Orion/Release-42.3/... via CL 3611702 via CL 3611703
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3611683 on 2017/08/26 by Andrew.Grant

	Upgraded PS4 SDK to 4.508.111

	#!tests SoloGames locally
	#!rb none

Change 3611466 on 2017/08/25 by Andrew.Grant

	Changed none test to use monolith02 by default

	#!tests compiled
	#!rb none

Change 3611167 on 2017/08/25 by Laurent.Delayen

	Reset UpdateCounter in AnimProxy when initialized, to force an update if rendered without updated.

	#!rb none
	#!tests lane minions
	#!codereview martin.wilson

Change 3610850 on 2017/08/25 by dan.hertzka

	Unclog Robomerge

	#!rb none
	#!tests none

Change 3610325 on 2017/08/25 by Andrew.Grant

	Compile fix for PS4

	#!tests compiled
	#!rb none

Change 3610018 on 2017/08/25 by Laurent.Delayen

	UE-48827, OR-43346, OR-43345 Fix for SingleNodeInstances not getting ticked properly. Due to them not increasing UpdateCounter, and forcing a tick even if we're doing parallel ticking later.

	#!rb lina.halper
	#!tests venus ult on minion lane test map

Change 3609967 on 2017/08/25 by Daniel.Lamb

	Merging using //Fortnite/Main/->//Orion/Dev-General/
	Bringing across several changes to the texture streamer and budgets from fortnite so as to reduce our garlic memory pool slack for PS4.

	CL 3526904 [FORTNITE] [PS4] [!] Fix blurry textures in shipping.
	 - The texture streaming manager has additional logic in shipping builds which caused textures to never stream back in once they had streamed out.
	 - Added an extra flag to reset mip bias values when texture memory budget is increased.
	#!rb Uriel.Doyon
	#!jira FORT-45385
	#!jira FORT-47739

	CL 3505459 [FORTNITE] [PS4] [~] Memory savings for Fortnite on PS4.
	 - Disabled LLM. This was increasing the libc heap from 32MB to 100MB in builds with STATs enabled.
	 - Reduced Libc heap size from 32MB to 8MB. The game only uses 2-3 MB of this heap space, so additional memory is wasted.
	 - Removed "RESERVED_MEMORY_SIZE" allocation. This is just wasting 1 MB unnecessarily. There is already ~1.5 MB of unallocated direct memory due to alignment requirements of the garlic/onion heaps.
	#!jira FORT-45229
	#!rb Ben.Woodhouse


	CL 3564368
	LLM Changes

	Summary:
	LLM now has 3 stat pages, stat LLM for engine allocations, LLMPlatform for OS allocations and LLMOverhead.
	Changes where LLM hooks into the various allocation functions and pools.
	Added more LLM tracking scopes.
	Changed the way LLM gets its internal memory.
	Writing stats out to csv
	Fixed a few bugs with the tracker code

	Details:
	* re-enabled LLM by default in Dev builds for XB1 and PS4
	* Reduced overhead to 30MB when LLM is defined in but disabled (this will be removed in a future update)
	* track allocations made from the defrag pool (PS4)
	* track non-drfrag pool garlic allocations (PS4)
	* track allocations made from PS4 malloc
	* combined the RHI and Malloc trackers into the Default tracker
	* changed stat groups to LLM, LLMPlatform and LLMOverhead
	* OnLowLevelAlloc how takes a default tag to be used is no tag scope has been set
	* XMemAlloc now uses AllocationType if no LLM scope has been set
	* renamed VirtualMap to LLMMap
	* added global function pointers for LLMMap to use to allocate memory. Using malloc to allocate memory meant that we couldn't track that memory using LLM. LLM now uses the lowest level OS function depending on the platform. If the platform doesn't set these fiunction pointers LLM will be disabled.
	* support for tracking allocations that move in memory (for the PS4 defrag allocator)
	* support for tracking explicit memory without pausing the tracker
	* LLMCsvWriter for writing out the LLM stats periodically. Enable with -LLMCSV command line arg
	* fixed check in FNameToTag. It was checking the wrong value when verifying the name index
	* show a warning on screen if LLM has been enabled without debug memory enabled (on consoles)
	* fixed program size tracking
	* fixed bug with tag scopes being tracked in all trackers. This caused allocations to be counted in stats that were not shown in the tracker. The tracker is now passed in to the scope.
	* optimised FLLMScopedTag so that it only calls the singleton once when disabled (instead of 3 times)
	* fixed problem in the Pause feature. It now only pauses the specified tracker instead of all of them.
	* fixed compile error when LLM_ALLOW_ASSETS_TAGS is disabled
	* changed default alloc size for LLMMap to 16K
	* Added lots more LLM scopes renamed some of the existing ones
	* made FMemBlock::Allocators private and added accessor functions, which include LLM tracking.
	* fixed LLM alignment tracking in CustomVirtualAlloc
	* implemented LLM on XB1 so that it properly tracks D3D12Allocations
	* added tracking to allocations that come from FMemBlock (excluding the defrag heap alloc) and removed tracking from Growable allocator
	* tracking of render targets
	* fixed LLM pool total column value.

	#!rb luke.thatcher

	CL 3565905
	[ATHENA] [PS4] [^] Merging new PS4 memory system from //UE4/Dev-Console/... to //Fortnite/Dev-Athena/...

	3458941 - Initial submission of new PS4 memory allocator.
	3485054 - Finer grain scope locks. Prevents contention stalls between threads where possible.
	3498440 - Flexible and framebuffer memory fallbacks
	3515704 - Add stats to new PS4 memory system.

	UEBuildPS4.cpp changes reimplemented as edit. Cannot merge as Dev-Athena's copy is too old to merge properly.

	#!rb Ben.Woodhouse

	CL 3580934
	[FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo.
	 - Neo has 512 MB more direct memory than a base kit.
	 - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB.

	#!rb Marcus.Wassmer
	#!jira FORT-50206

	CL 3590180
	[FORTNITE] [PS4] [!] Allow fallback to MallocBinned2 when Libc mspace heaps are exhausted.
	 - Since FORCE_ANSI_ALLOCATOR is not defined, the Libc heap only had 8 MB.
	 - Platform and 3rd party libraries that make libc malloc/free calls could potentially crash OOM if we exhausted the pool.
	 - Now, when no memory is left in the mspace heaps, we call into the base allocator (MallocBinned2). This has the added benefit that we should get proper OOM crashes/logs if a libc allocation fails.

	#!jira FORT-49700
	#!rb Aaron.McLeran

	CL 3593920
	[FORTNITE] [PS4] [!] Fix 4 GB CPU memory limit in old PS4 memory system.
	 - Incorrect bitmask usage was truncating the available memory value to 32 bits.

	 - Also includes some minor refactoring to make parts more readable.
	 - Removed PS4_USE_FLEXIBLE_FIRST. Dead code that doesn't compile.

	#!rb Jonathan.Fitzpatrick
	#!jira FORT-50918

	CL 3597577
	[FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU.
	 - Previously the amount of texture memory wasnÆt fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack.
	 - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is.

	#!rb Stewart.Lynch
	#!jira FORT-50825
	#!jira FORT-49688
	#!jira FORT-49695
	#!jira FORT-50054

	CL 3601951
	[FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system
	 - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0.
	 - Added garlic, onion and defrag stats to the platform memory stats struct.
	 - Added fixed pool sizes to platform memory stats.
	 - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools.

	#!rb Stewart.Lynch
	#!jira FORT-52910


	#!test preflight with baseline performance memory report tests, local tests on neo
	#!rb Luke.Thatcher

Change 3608480 on 2017/08/24 by Uriel.Doyon

	Instanced static mesh lightmaps are now updated correctly after lighting scenario changes
	#!jira UE-48522
	#!tests Build lighting, loaded maps
	#!rb michel.dupuis

Change 3608407 on 2017/08/24 by Andrew.Grant

	Reintegrated ROlando's cloth optimizations

	#!tests #!rb none

Change 3608349 on 2017/08/24 by Rolando.Caloca

	O - Cloth vertex buffers no longer generate dummy vertices
	#!rb Lina.Halper
	#!fyi James.Golding
	#!tests Check obj list memory with multiple characters, tested animations

Change 3607815 on 2017/08/24 by Laurent.Delayen

	Fixed crash when displaying a two bone IK gizmo for a node that hadn't had a chance to evaluate or had a zero alpha.
	https://jira.it.epicgames.net/browse/OR-43186

	#!rb none
	#!tests Price hand two bone IK
	#!codereview lina.halper, thomas.sarkanen

Change 3607770 on 2017/08/24 by Andrew.Grant

	Fixed bug with peak memory being missing in BaselinePerf tests and time being wrong

	#!tests ran locally, updated parser test
	#!rb none

Change 3607546 on 2017/08/24 by Jian.Ru

	Add more control to chromatic aberration effect
	#!jira UE-47138
	#!rb Brian.Karis
	#!tests editor

Change 3607270 on 2017/08/24 by Andrew.Grant

	Mirroring 3605735  from FN to address bug with MIC deduplication

	#!tests compiled
	#!rb none

Change 3607082 on 2017/08/24 by Laurent.Delayen

	Moved up Paragon functionality to cycle between targets with PageUp and PageDown for 'showdebug' commands.
	List of targets is contextual (For example 'showdebug animation' will consider all visible actors with an AnimGraph).
	Current debug Target is highlighted in a green bounding box.
	Paragon now supports 'ShowDebugForReticleTargetToggle <class>' to have 'showdebug' for Actors aimed at by the player.
	Paragon maintains feature to track AbilitySystemComponents across Targets. But Cycling is restricted to visible actors.
	Target cycling in Paragon now works for all 'showdebug' tags, not just ASCs and Animation.

	#!rb dave.ratti
	#!tests lane minion test map, debugging individual minions
	#!codereview jon.lietz

Change 3606772 on 2017/08/24 by David.Ratti

	Spot edigrate CL 3606417 for accurate CurveTable memory tracking
	#!rb none
	#!tests none

[CL 3748735 by Andrew Grant in Main branch]
2017-11-09 18:22:55 -05:00
Matt Kuhlenschmidt
c72e1e1e70 Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3739701)
#lockdown Nick.Penwarden
#rb none

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

Change 3358367 by tim.gautier

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

Change 3624848 by Jamie.Dale

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

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

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

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


Change 3654993 by Jamie.Dale

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

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

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

Change 3699591 by Jamie.Dale

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

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

	#jira UE-4028


Change 3719568 by Jamie.Dale

	Allow platforms to override the default ICU timezone calculation


Change 3622366 by Bradut.Palas

	#jira UE-46677

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

Change 3622378 by Bradut.Palas

	#jira UE-46590

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

Change 3622552 by Jamie.Dale

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

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

Change 3623170 by Jamie.Dale

	Fixing warning

Change 3624846 by Jamie.Dale

	Composite font cache optimizations

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

Change 3625576 by Cody.Albert

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

	#jira UE-47971

Change 3626057 by Matt.Kuhlenschmidt

	Expose EUmgSequencePlayMode to blueprints

	#jira UE-49255

Change 3626556 by Matt.Kuhlenschmidt

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

	#jira UE-48922, UE-48957

Change 3627692 by Matt.Kuhlenschmidt

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


Change 3628600 by Arciel.Rekman

	Added AutoCheckout to FAssetRenameManager for commandlet usage.

Change 3630561 by Richard.Hinckley

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

Change 3630656 by Richard.Hinckley

	Compile fix.

Change 3630964 by Arciel.Rekman

	Fix CrashReporterClient headless build.

Change 3631050 by Matt.Kuhlenschmidt

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

	Causes major problems with resizing splitters in editor

Change 3631140 by Arciel.Rekman

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

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

	#jira UETOOL-1253

Change 3632924 by Jamie.Dale

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

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

Change 3633055 by Jamie.Dale

	Fixed some refresh issues in the font editor

Change 3633062 by Jamie.Dale

	Fixed localization commands being reported as unknown

Change 3633906 by Nick.Darnell

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

Change 3634070 by Arciel.Rekman

	Display actually used values of material overrides.

Change 3634254 by Arciel.Rekman

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

	#jira UE-49465

Change 3635985 by Matt.Kuhlenschmidt

	Fixed typo in function name used by maps

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


Change 3636012 by Matt.Kuhlenschmidt

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


Change 3636706 by Lauren.Ridge

	Epic Friday: Save parameters to child or sibling  instance functionality

Change 3638706 by Jamie.Dale

	Added an improved Japanese font to the editor

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

	#jira UE-33268

Change 3639438 by Arciel.Rekman

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

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

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

Change 3640625 by Matt.Kuhlenschmidt

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


Change 3640626 by Matt.Kuhlenschmidt

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


Change 3640697 by Matt.Kuhlenschmidt

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


Change 3641137 by Jamie.Dale

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

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

Change 3641351 by Jamie.Dale

	Fixing incorrect weights on the Japanese sub-font

Change 3641356 by Jamie.Dale

	Fixing inconsistent font sizes between CoreStyle and EditorStyle

Change 3641710 by Jamie.Dale

	Fixed pure-virtual function call on UMulticastDelegateProperty

Change 3641941 by Lauren.Ridge

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

Change 3644141 by Jamie.Dale

	Added an improved Korean font to the editor

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

Change 3644213 by Arciel.Rekman

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

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

	#jira UE-49465

Change 3644777 by Jamie.Dale

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

Change 3644879 by tim.gautier

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

Change 3645109 by Matt.Kuhlenschmidt

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


Change 3645114 by Matt.Kuhlenschmidt

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


Change 3645116 by Matt.Kuhlenschmidt

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


Change 3645118 by Matt.Kuhlenschmidt

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


Change 3645876 by Arciel.Rekman

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

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

	#jira UE-47639

Change 3648088 by Jamie.Dale

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

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

	#jira UE-47122

Change 3648097 by Jamie.Dale

	Moved common macOS/iOS localization implementation into FApplePlatformMisc

	#jira UE-49940

Change 3650858 by Arciel.Rekman

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

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

	#jira UE-49400

Change 3651231 by Arciel.Rekman

	Linux: default to SM5 for Vulkan.

	- Change by Timothee.Bessett.

Change 3653627 by Matt.Kuhlenschmidt

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


Change 3653628 by Matt.Kuhlenschmidt

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


Change 3653984 by Jamie.Dale

	Fixed some redundant string construction

Change 3658528 by Joe.Graf

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

Change 3658594 by Jamie.Dale

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

	#jira UE-27263

Change 3659643 by Michael.Trepka

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

	#jira UETOOL-1238

Change 3661908 by Matt.Kuhlenschmidt

	USD asset importing improvements

Change 3664100 by Matt.Kuhlenschmidt

	Fix static analysis

Change 3664107 by Matt.Kuhlenschmidt

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


Change 3664125 by Matt.Kuhlenschmidt

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


Change 3664340 by Jamie.Dale

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


Change 3664403 by Jamie.Dale

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


Change 3664539 by Jamie.Dale

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


Change 3665433 by Alexis.Matte

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

Change 3666747 by Cody.Albert



Change 3669280 by Jamie.Dale

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


Change 3669718 by Jamie.Dale

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


Change 3670838 by Alexis.Matte

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

Change 3671559 by Matt.Kuhlenschmidt

	Update SimpleUI automation test ground truth

	#jira UE-50325

Change 3671587 by Alexis.Matte

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

Change 3671730 by Jamie.Dale

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

Change 3672104 by Michael.Dupuis

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

Change 3674906 by Alexis.Matte

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

Change 3674942 by Matt.Kuhlenschmidt

	Fix static analysis

Change 3675401 by Alexis.Matte

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

	#jira UE-48231

Change 3675990 by Alexis.Matte

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

Change 3676169 by Alexis.Matte

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

Change 3676396 by Alexis.Matte

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

Change 3677730 by Cody.Albert

	Enable locking of Persistent Level in Levels tab

	#jira UE-50686

Change 3677838 by Jamie.Dale

	Replaced broken version of Roboto Light

Change 3679619 by Alexis.Matte

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

Change 3680093 by Alexis.Matte

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

Change 3680931 by Arciel.Rekman

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

	- Also reworked the logic somewhat.

	#jira UE-25106

Change 3681966 by Yannick.Lange

	MaterialEditor post-process preview.
	#jira UE-45307

Change 3682407 by Lauren.Ridge

	Fixes for material editor compile errors

Change 3682628 by Lauren.Ridge

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

Change 3682725 by Lauren.Ridge

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

Change 3682921 by Lauren.Ridge

	Fix for instance layers not initializing fully

Change 3682954 by Lauren.Ridge

	Creating Material Layer Test Assets

Change 3683582 by Alexis.Matte

	Fix static analysis build

Change 3683614 by Matt.Kuhlenschmidt

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


Change 3684130 by Lauren.Ridge

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

Change 3686289 by Arciel.Rekman

	Remove the pessimization (UE-23791).

Change 3686455 by Lauren.Ridge

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

Change 3686829 by Jamie.Dale

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

	#jira UE-50266

Change 3686970 by Lauren.Ridge

	Making material parameter preview work for functions as well

Change 3687077 by Jamie.Dale

	Fixed crash using FActorDetails with the struct details panel

Change 3687152 by Jamie.Dale

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

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

	#jira UE-48691

Change 3687174 by Lauren.Ridge

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

Change 3688100 by Lauren.Ridge

	Fixing static analysis error

Change 3688317 by Jamie.Dale

	Fixed crash using the widget reflector in a cooked game

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

Change 3689054 by Jamie.Dale

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

	#jira UE-45751

Change 3689513 by Jamie.Dale

	Fixed justification bug with RTL text caused by CL# 3686829

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

	#jira UE-50266

Change 3690231 by Lauren.Ridge

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

Change 3690234 by Lauren.Ridge

	Adding Material Layers Function Parameter to Static Parameter Compare

Change 3690750 by Chris.Bunner

	Potential nullptr crash.

Change 3690751 by Chris.Bunner

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

Change 3691010 by Jamie.Dale

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

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

	#jira UE-46760

Change 3691091 by Jamie.Dale

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

Change 3691134 by Alexis.Matte

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

Change 3691157 by Lauren.Ridge

	Fix for reset to default not refreshing sub-parameters

Change 3691192 by Jamie.Dale

	Fixed Content Browser selection resetting when changing certain view settings

	#jira UE-49611

Change 3691204 by Alexis.Matte

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

Change 3692335 by Lauren.Ridge

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

Change 3692479 by Jamie.Dale

	Fixed whitespace

Change 3692508 by Alexis.Matte

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

Change 3692639 by Jamie.Dale

	Translation Editor now shows stale translations as "Untranslated"

Change 3692743 by Lauren.Ridge

	Smaller blend icons, added icon size override to FObjectEntryBox

Change 3692830 by Alexis.Matte

	Fix linux build

Change 3692894 by Lauren.Ridge

	Tooltip on "Parent" in material layers

Change 3693141 by Jamie.Dale

	Removed dead code

	FastDecimalFormat made this redundant

Change 3693580 by Jamie.Dale

	Added AlwaysSign number formatting option

	#jira UE-10310

Change 3693784 by Jamie.Dale

	Fixed assert extracting the number formatting rules for Arabic

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

	#jira UE-10310

Change 3694428 by Arciel.Rekman

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

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

Change 3694458 by Matt.Kuhlenschmidt

	Made duplicate keybinding warning non-fatal

Change 3694496 by Alexis.Matte

	fix static analysis build

Change 3694515 by Jamie.Dale

	Added support for culture correct parsing of decimal numbers

	#jira UE-4028

Change 3694621 by Jamie.Dale

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

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

	#jira UE-4028

Change 3694958 by Jamie.Dale

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

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

	#jira UE-4028

Change 3695083 by Alexis.Matte

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

Change 3695122 by Jamie.Dale

	GetCultureAgnosticFormattingRules no longer returns a copy

Change 3695835 by Arciel.Rekman

	TestPAL: greatly expanded malloc test.

Change 3695918 by Arciel.Rekman

	TestPAL: Added thread priority test.

Change 3696589 by Arciel.Rekman

	TestPAL: tweak thread priorities test (better readability).

Change 3697345 by Alexis.Matte

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

Change 3699590 by Jamie.Dale

	Updated SGraphPinNum to use a numeric editor

	#jira UE-4028

Change 3699698 by Matt.Kuhlenschmidt

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

	#jira UE-48444

Change 3700158 by Arciel.Rekman

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

	- Change by Cengiz Terzibas

Change 3700224 by Arciel.Rekman

	TestPAL: fixed a memory leak.

Change 3700775 by Cody.Albert

	Don't need to initialize EnvironmentCubeMap twice.

Change 3700866 by Michael.Trepka

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


	#jira UE-41643

Change 3701132 by Michael.Trepka

	Copy of CL 3671538

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

	#jira UE-49947, UE-51063

Change 3701421 by Michael.Trepka

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

Change 3701495 by Alexis.Matte

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

Change 3702982 by Jamie.Dale

	Cleaned up some localization setting names

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

Change 3703517 by Arciel.Rekman

	TestPAL: improved thread test.

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

Change 3704378 by Michael.Trepka

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

	#jira UE-51335

Change 3706316 by Jamie.Dale

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

	#jira UE-28885

Change 3706855 by Alexis.Matte

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

Change 3709634 by Matt.Kuhlenschmidt

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


Change 3711085 by Michael.Trepka

	Reenabled UBT makefiles on Mac

Change 3713049 by Josh.Engebretson

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

	#jira UE-51319

Change 3713144 by Lauren.Ridge

	Fixing automated test error

	#jira UE-50982

Change 3713395 by Alexis.Matte

	Fix auto import mountpoint
	#jira UE-51524

Change 3713881 by Michael.Trepka

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

	#jira UE-31093

Change 3714197 by Michael.Trepka

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

	#jira UE-47915

Change 3714911 by Joe.Graf

	Merge of cmake changes from Dev-Rendering

Change 3715973 by Michael.Trepka

	Disable OS close button on Windows if project settings request that

	#jira UE-45522

Change 3716390 by Lauren.Ridge

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

	#jira UE-50916

Change 3716529 by Josh.Engebretson

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

	#jira UE-51341

Change 3716885 by Josh.Engebretson

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

	#jira UE-48572

Change 3716929 by Josh.Engebretson

	Unshelved from pending changelist '3364093':

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


Change 3716937 by Josh.Engebretson

	Unshelved from pending changelist '3647428':

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


Change 3717002 by Josh.Engebretson

	Fix FileReference/string conversion

Change 3717355 by Joe.Graf

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

Change 3718256 by Arciel.Rekman

	TestPAL: slight mod to the malloc test.

	- Touch the allocated memory to check actual resident usage.

Change 3718290 by Arciel.Rekman

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

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

Change 3718508 by Michael.Trepka

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

	#jira UE-46148

Change 3718855 by Lauren.Ridge

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

Change 3718932 by Cody.Albert

	Update ActorSequence plugin loading phase to PreDefault

	#jira UE-51612

Change 3719378 by tim.gautier

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

Change 3719413 by Lauren.Ridge

	Resubmit of content browser favorites

Change 3719803 by Yannick.Lange

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

Change 3721127 by tim.gautier

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

Change 3721255 by Alexis.Matte

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

Change 3721594 by Lauren.Ridge

	Material Blends now have plane mesh previews in their icons.

Change 3722072 by tim.gautier

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

Change 3722180 by Michael.Trepka

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

	#jira UE-25941

Change 3722220 by Michael.Trepka

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

	#jira UE-40246

Change 3722806 by Lauren.Ridge

	Fixing non-editor compiles

Change 3722914 by Alexis.Matte

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

	#jira UE-51665

Change 3723446 by Michael.Trepka

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

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

	#jira UE-48257

Change 3723505 by Matt.Kuhlenschmidt

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

Change 3723555 by Matt.Kuhlenschmidt

	Fix crash loading the gameplayabilities module

	#jira UE-51693

Change 3723557 by Matt.Kuhlenschmidt

	Fixed tooltip on viewport dpi scaling option

Change 3723870 by Lauren.Ridge

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

Change 3723917 by Arciel.Rekman

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

	- Fixes compilation on Ubuntu 17.10 among others.

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

Change 3723918 by Arciel.Rekman

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

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

Change 3724229 by Arciel.Rekman

	Fix FOutputDeviceStdOutput to use printf() on Unix platforms.

Change 3724261 by Arciel.Rekman

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

Change 3724978 by Arciel.Rekman

	Linux: fix priority calculation.

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

Change 3725382 by Matt.Kuhlenschmidt

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

	#jira UE-47464

Change 3725559 by Matt.Kuhlenschmidt

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

Change 3725640 by Arciel.Rekman

	Fix Linux thread/process priorities.

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

Change 3726101 by Matt.Kuhlenschmidt

	Fix logic bug in USD child "kind" type resolving

Change 3726244 by Joe.Graf

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

Change 3726506 by Arciel.Rekman

	Fix compile issue after DPI change.

Change 3726549 by Matt.Kuhlenschmidt

	Remove unnecessary indirection to cached widgets in the hit test grid

Change 3726660 by Arciel.Rekman

	Enable DPI switch on Linux.

Change 3726763 by Arciel.Rekman

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

	- Pull request #4080 by TTimo.

Change 3727080 by Michael.Trepka

	Added support for editor's EnableHighDPIAwareness setting on Mac

Change 3727658 by Matt.Kuhlenschmidt

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

	#jira UE-51630

Change 3728270 by Matt.Kuhlenschmidt

	Remove propertyeditor dependency from editorstyle

Change 3728291 by Arciel.Rekman

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

	- Preliminary change before merging to 4.18.

Change 3728293 by Arciel.Rekman

	Linux: remove unneeded dependency on CEF.

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

Change 3728524 by Michael.Trepka

	Copy of CL 3725570

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

	#jira UE-51709

Change 3728875 by Michael.Trepka

	Fixed compile error in Mac SlateOpenGLContext.cpp

Change 3728880 by Matt.Kuhlenschmidt

	Guard against invalid worlds in thumbnail renderers

Change 3728924 by Michael.Trepka

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

	#jira UE-51711

Change 3729288 by Joe.Graf

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

Change 3729935 by Michael.Dupuis

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

Change 3730234 by Matt.Kuhlenschmidt

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

	#jira UE-51801

Change 3730349 by Michael.Dupuis

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

Change 3730438 by Lauren.Ridge

	Cleaning up material layering UI functions

Change 3730723 by Jamie.Dale

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

	#jira UE-51799

Change 3731008 by Lauren.Ridge

	Changing Layers and Blends from proxy assets to real assets

Change 3731026 by Arciel.Rekman

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

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

Change 3731081 by Lauren.Ridge

	New material layer test assets

Change 3731186 by Josh.Engebretson

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

	#jira UE-50104

Change 3731188 by Mike.Erwin

	Improve responsiveness of Open Asset dialog.

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

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

	CollectionManagerModule was the main culprit for search/filter slowness.

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

Change 3731682 by Arciel.Rekman

	UnrealEd: Allow unattended commandlets to rename/save packages.

Change 3732305 by Michael.Dupuis

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

Change 3732361 by Matt.Kuhlenschmidt

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

	#jira UE-51891

Change 3732895 by Josh.Engebretson

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

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

	#jira UE-51706

Change 3733025 by Arciel.Rekman

	UBT: make sure new clang versions are invoked.

Change 3733311 by Mike.Erwin

	Fix Linux compile warning from CL 3731188

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

Change 3733658 by Josh.Engebretson

	Add a missing #undef LOCTEXT_NAMESPACE

Change 3734003 by Arciel.Rekman

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

Change 3734039 by Michael.Trepka

	Fixed a couple of merge issues in Mac ApplicationCore

Change 3734052 by Michael.Trepka

	One more Mac ApplicationCore fix

Change 3734244 by Lauren.Ridge

	Fix for accessing Slate window on render thread

Change 3734950 by Josh.Engebretson

	Fixing clang warning

Change 3734978 by Jamie.Dale

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

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

	#jira UE-51848

Change 3734999 by Arciel.Rekman

	Linux: add LTO support and more.

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

Change 3735268 by Matt.Kuhlenschmidt

	Added support for canvas based DPI scaling.

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

Change 3735329 by Matt.Kuhlenschmidt

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

	#jira UE-51941



Change 3735502 by Arciel.Rekman

	Fix compile issue (bShouldUpdateScreenPercentage).

Change 3735878 by Jamie.Dale

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

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

Change 3735881 by Jamie.Dale

	JsonValue no longer stringifies whole numbers as floats

Change 3735884 by Jamie.Dale

	Only allow enums to import integral values

Change 3735912 by Josh.Engebretson

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

	#jira UE-48131

Change 3736280 by Matt.Kuhlenschmidt

	Fix 0 dpi scale for canvases

	#jira UE-51995

Change 3736298 by Matt.Kuhlenschmidt

	Force focus of game viewports in vr mode

Change 3736374 by Jamie.Dale

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

	#jira UE-51799

Change 3738543 by Matt.Kuhlenschmidt

	Better fix for edit condition crashes

	#jira UE-51886

Change 3738603 by Lauren.Ridge

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

Change 3739701 by Chris.Babcock

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

[CL 3739980 by Matt Kuhlenschmidt in Main branch]
2017-11-06 18:22:01 -05:00
Chris Bunner
d0e023967f Copying //UE4/Dev-Automation to //UE4/Dev-Main (Source: //UE4/Dev-Automation @ 3723189)
#lockdown Nick.Penwarden
#rb

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

Change 3716887 by Chris.Bunner

	[Duplicate] Added "show delta" checkbox to automated screenshot comparison viewer.

Change 3720970 by Chris.Bunner

	Added more time for UDP serialization test.

Change 3722873 by Chris.Bunner

	Updated screenshot comparison to handle new folder layout, can no longer assume the root folder. Was deleting pending AddNew/Replace comparison results when any were updated.

Change 3720019 by Chris.Bunner

	Swapping automation screenshot test data from "Map_Test/Platform_RHI" to "Map/Test/Platform/RHI" as this allows platform folders and platform-specific tests to obey privacy rules.

Change 3720989 by Chris.Bunner

	[Duplicate] Allow platforms to override the default ICU timezone calculation

[CL 3723196 by Chris Bunner in Main branch]
2017-10-27 12:34:12 -04:00
Chris Bunner
3aa7c4dc94 Updated physicalized animation and physics stability tests to be more relaxed on console.
Added cvar for adjusting tolerance on less precise autopamted tests, AutomationTestUseRelaxedPhysicsStabilityThresholds.
Added GetConsoleVariableFloat/Int global blueprint functions.
#rb Marcus.Wassmer
#fyi James.Golding
#jira UE-48317
#lockdown Nick.Penwarden

[CL 3699491 by Chris Bunner in Main branch]
2017-10-17 09:03:58 -04:00
Bob Tellez
c3818ebea9 Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main
#rb none
#lockdown Nick.Penwarden

=================================================================================================
THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS.
YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS.
=================================================================================================

Change 3662267 by Nick.Darnell

	Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float.

	#jira nojira

Change 3662176 by Ben.Marsh

	Disable image integrity report generation if a debugger is attached, and in editor builds.

	#jira FORT-55656

Change 3656958 by Luke.Thatcher

	[FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism
	 - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame.
	 - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe.
	 - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency.

	Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup.
	A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index.
	In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread.

	[~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval
	 - 1 == 60Hz
	 - 2 == 30Hz
	 - 3 == 20Hz

	[-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings).

	#jira FORT-50803

Change 3655598 by Lukasz.Furman

	added filtering for navmesh's low height spans to fix crash on layer partitioning
	% of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory

	#jira FORT-35375

Change 3648972 by Keith.Judge

	Add analytics to help diagnose default parameter collection buffer issue.

	+++ REMOVE ONCE CORE ISSUE IS SOLVED +++

	#jira FORT-54690

Change 3648756 by Bart.Hawthorne

	Integrate 3645298 from //UE4/Dev-Networking

	Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods.

	#jira none

Change 3643090 by Josh.Markiewicz

	#UE4 - proper handling of "pending connection lost"
	- triggered only if a connection is lost and there no "owning actor" to deal with the connection loss
	-- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time
	- delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello)

	- changed debug output on timeout if the net connection was already in the process of being destroyed
	-- occurs when game hitches during the pending destroy 2 second wait
	-- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout

	- added userid to UNetConnection::Describe
	- bad split screen player handling of unique id
	-- splitscreen uniqueid was overwriting the primary player id
	-- only store the id on the child connection

	- added some clarifying comments

	#review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti
	#jira FORT-26776

Change 3639043 by Alex.Thurman

	Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem.

	#JIRA FORT-45841

Change 3632275 by Seth.Weedin

	#JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general.

Change 3626944 by Josh.Markiewicz

	#UE4 - added "updates connection status" flag to ServiceConfigMCP
	- disable updates on Cloud and Friend services (Fortnite only)
	- removed overloaded ProcessConnectionStatus function in cloud service
	#jira FORT-53113

Change 3626226 by Stewart.Lynch

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

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

	#jira NONE-01

Change 3622978 by Lukasz.Furman

	changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon
	includes copy of CL# 3620700

	#jira FORT-45914
	#review-3622979 John.Abercrombie

Change 3622340 by Josh.Markiewicz

	#UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers
	- ipconnection prints uniqueid with lowleveldescribe

	#jira fort-0

Change 3621386 by Tim.Tillotson

	Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations.
	#JIRA FORT-53717
	#review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello

Change 3620517 by Keith.Judge

	Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion.

	#jira FORT-53928

Change 3620248 by Lukasz.Furman

	changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed
	#jira nojira

Change 3616187 by Bob.Tellez

	#UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock.

	#JIRA UE-0

Change 3613935 by Peter.Knepley

	More logging on update launcher launching

	#jira nojira
	#robomerge rp rn

Change 3613537 by Marcus.Wassmer

	Safety asserts around the MarkPendingKill feature for rendering classes.
	#jira FORT-50385

Change 3613399 by Arne.Schober

	Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash.
	#RB Marcus.Wassmer
	#jira FORT-53610

Change 3610794 by robomerge

	#ROBOMERGE-AUTHOR: marc.audy
	Reduce UMG class memory
	#jira UE-52043

	#ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3610144 by Stewart.Lynch

	General LLM improvements

	* added tracking for misc task graph tasks (moves 20MB out of Untagged)
	* renamed EngineTick to EngineMisc
	* added tracking for FName
	* added tracking for GC_ProcessObjectArray potential leak
	* renamed index & vertex buffers stat to Meshes
	* added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h.
	* removed AVAILABLE_PHYSICAL stat from LLM csv
	* csv files now include the date in the filename
	* fixed potential threading bug when reading stat values to csv
	* made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning.
	* added lots more scopes
	* started changing Stat scopes to enum scopes. Stat scopes will be phased out.
	* added tracking of FName memory
	* added llmplatform tracking for XBoxSymbols
	* added llm tracking for CPU symbol allocations (20MB)
	* wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM.
	* added tracking for GC
	* fixed tracking for TransientMemoryAllocator
	* added tracking for networking memory
	* added more audio memory tracking
	* added tracking for blueprints
	* added tracking for static meshes
	* show on screen warning if debug memory is enabled
	* added tracking for particles
	* renamed Phys to PhysX and added more scopes
	* renamed Slate to UI and added more scopes
	* much better coverage of networking memory
	* improved coverage of audio

	#jira FORT-53420

Change 3610136 by robomerge

	#ROBOMERGE-AUTHOR: marc.audy
	Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive)
	Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive).
	Reduce size of USceneComponent by 112 bytes.
	Reduce size of FLightingChannels from 3 bytes to 1.
	Reduce size of FBodyInstance by 16 bytes.

	#jira FORT-52043

	#ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3607937 by robomerge

	#ROBOMERGE-AUTHOR: paul.moore
	#jira FORT-53105
	- Fix websocket not providing information when the peer closes the connection.

	#ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3607042 by Bart.Hawthorne

	Move replay.Loop functionality into the demo net driver and rename it demo.Loop

	#jira none

Change 3605448 by robomerge

	#ROBOMERGE-AUTHOR: seth.weedin
	#Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180

	#ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3604787 by robomerge

	#ROBOMERGE-AUTHOR: mike.fricker
	Initial support for hotfixing live assets from .ini files
	- This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded
	- Only CurveTables and DataTables are supported for now
	- The new asset content must be in Json format, the same format the editor uses for importing
	- Assets that are hotfixed will be synchronously loaded if they're not already in memory.  They'll be retained in memory afterwards.
	- IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped!

	- The changes must go in the Game.ini file and use the following syntax:

	          [AssetHotfix]
	          +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]")
	          +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]")

	#jira FORT-52099
	[CODEREVIEW] frank.gigliotti
	[FYI] peter.knepley,bob.tellez

	#ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3602067 by robomerge

	#ROBOMERGE-AUTHOR: mike.fricker
	Loading time improvements
	- This shaves off up to 10 seconds of load time on PS4 in Athena

	Details:
	- Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame.  Athena has ~300 sub-levels, so this ended up wasting up many seconds.
	- Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming)
	- UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started.  It now allows this as long as the world isn't being rendered (loading screen.)
	- Eliminated extra 2 second delay before loading screen is dismissed (in Athena only)

	- Note:  A side effect of this change is that the progress bar may not update as smoothly on loading screen.  We'll look at tuning the throttle settings if it ends up being a problem.

	[CODEREVIEW] ori.cohen
	#jira AT-1477

	#ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3601951 by Luke.Thatcher

	[FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system
	 - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0.
	 - Added garlic, onion and defrag stats to the platform memory stats struct.
	 - Added fixed pool sizes to platform memory stats.
	 - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools.

	#jira FORT-52910

Change 3600340 by robomerge

	#ROBOMERGE-AUTHOR: wes.hunt
	All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent.

	Added some new context to crashreporter to help identify Athena matches near and long term.
	* Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged
	  * Added bools to the params to indicate WHICH ones are changing
	  * Allows you to set only some values, and clear them out.
	  * Hooked up in FortGameState::PostInitializeComponents.
	  * FortGameState clears it (for returning to main menu).
	  * FortGameStateAthena sets it (for going into an Athena match).
	  * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified.
	* Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged.
	  * This works for ANY crash on ANY game.
	  * Hooked up in GameState::HandleMatchIsWaitingToStart.

	#jira AT-1457
	#jira AT-519
	[CODEREVIEW] peter.knepley,josh.markiewicz

	#ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3597593 by Ben.Zeigler

	#jira FORT-50722
	Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie
	Partial copy of CL #3402335 and #3526538
	#robomerge rp, rn

Change 3597577 by Luke.Thatcher

	[FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU.
	 - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack.
	 - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is.

	#jira FORT-50825
	#jira FORT-49688
	#jira FORT-49695
	#jira FORT-50054

Change 3596556 by robomerge

	#ROBOMERGE-AUTHOR: mike.fricker
	Enable GC clustering for actors and blueprints in Fortnite
	- This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms)
	- Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered!
	- This gets us into the realm of shippability on console for very large UObject counts

	[FYI] bob.tellez,peter.knepley,michael.noland
	#jira AT-1440

	#ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3593994 by robomerge

	#ROBOMERGE-AUTHOR: mike.fricker
	Force largest distance field atlas size in Athena
	- We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB).  This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times.
	- Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero)
	- Important:  Currently we never "reset" this atlas texture.  This will be a problem when going back to play Campaigns after preloading to play Athena.  I will look into this soon!

	[CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright
	#jira AT-1477

	#ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3592096 by robomerge

	#ROBOMERGE-AUTHOR: ben.salem
	Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning.
	#jira FORT-0

	#ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3592085 by robomerge

	#ROBOMERGE-AUTHOR: mike.fricker
	HLOD: Added support for a fixed distance override via CVar
	- Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance
	- New CVar:  r.HLOD.DistanceOverride (defaults to 0)
	- Fortnite uses 350m for this distance, fornow

	[CODEREVIEW] jurre.debaare
	#jira AT-1462

	#ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3587391 by Michael.Noland

	Fortnite: Lots of memory tracking stuff
	- Added memory logging to game state transitions and overall health tracking for the entire session
	- Added support for Gauntlet-based tests to Fortnite
	- Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file)
	- Added code to set gauntlet state based on the current subclass of AFortGameState
	- Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon)
	- Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon)

	#jira FORT-50567

Change 3583307 by Peter.Knepley

	Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space

	Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix.

	#jira AT-733

Change 3582378 by Luke.Thatcher

	[FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles.
	 - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups.
	 - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p.
	 - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main.

	#jira FORT-50206

Change 3580934 by Luke.Thatcher

	[FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo.
	 - Neo has 512 MB more direct memory than a base kit.
	 - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB.

	#jira FORT-50206

Change 3576664 by Bart.Hawthorne

	Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT.

	#jira FORT-49986

	#tests Connected to PC server with editor -game build on Mac in Athena

Change 3575671 by Nick.Darnell

	Athena - The gameplay ability system now supports adding Gameplay Cue's with params.  Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end.  THe new method should properly show and disappear on time, b/c it's all client side.  Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn.

	#jira AT-644

Change 3575534 by Peter.Knepley

	Ability montage replication optimizations

	#jira AT-955

Change 3573305 by Lukasz.Furman

	disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners
	#jira FORT-49748

Change 3566775 by John.Abercrombie

	Optimizations from Dev-Athena
	- Tested with PIE & and 2 Player local server game

	#ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager].

	For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz).
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17.

	#ue4-athena - (merge CL 3377054 from Framework) -  Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45.

	#athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18.

	#ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component.
	Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43.

	#ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement.
	Added configurable settings to control this. Set times to zero to disable this.
	- NetworkMinTimeBetweenClientAckGoodMove
	- NetworkMinTimeBetweenClientAdjustments
	- NetworkMinTimeBetweenClientAdjustmentsLargeCorrection
	- NetworkLargeClientCorrectionDistance

	#ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19.

	#ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12.

	#ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04.

	#ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): Avoid call to virtual getSimulationFilterData() to only use it when needed in PreFilter if we actually have items in the IgnoreComponents list (which is rare). The sim filter data 'word2' stores the component ID.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11.

	#ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57.

	#ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual().
	Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39.

	#jira Fort-1

Change 3562825 by Chris.Gagnon

	Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways.

	#jira FORT-0

Change 3562098 by Josh.Markiewicz

	#UE4 Encryption token/ack changes
	- moved encryption token request/ack to delegates
	- moved FNetworkNotify to NetworkDelegates.h
	- moved connection logic out of GameInstance and back into networking code
	-- GameInstance sends an enum and the network code does the right thing based on that

	#review-3559694 @ryan.gerleve
	#tests PC dedicated server connections golden path and forced failures
	#jira FORT-0

Change 3559354 by Luke.Thatcher

	[FORTNITE] [PS4] [^] Merging (as edit)  support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/...
	 - Allowed rates are now 60Hz, 30Hz and 20Hz.
	 - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1.

	#jira FORT-49463

Change 3532644 by Jeff.Campeau

	Fix mapping current culture to movie audio channels using data table to map languages to track indices.
	Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost.
	Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync).
	Generic implementation for getting current languages in BP.
	Fix more issues with calling into media source functionality when using the source reader (potential hangs).

	#jira FORT-44376,FORT-48209,FORT-48040

	#testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each.

Change 3527761 by Chris.Gagnon

	Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur.

	#jira FORT-47988, FORT-47984

Change 3525390 by Jeff.Campeau

	Remove media player log spam

	#jira FORT-47393

	#testedon compiled client

Change 3518692 by Chris.Gagnon

	Added CleanOperation Adding which will remove unneeded op combinations from the op queue.
	Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective.

	GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated.

	Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view.
	This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL.

	#jira FORT-47395

Change 3514658 by Jeff.Campeau

	Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed.
	Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing.
	Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup.
	Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames.

	#jira FORT-46801
	#testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video

Change 3507896 by Ryan.Gerleve

	Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption.
	This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step.

	#jira FORT-46878
	#review-3507897 @josh.markiewicz

Change 3503928 by Ryan.Gerleve

	Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing.

	#jira FORT-46772
	#review-3503929 bob.tellez
	#robomerge ReleaseNext

[CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
Jian Ru
06d15da6dc Fix Simple UI test
#jira UE-48266
#rb Marcus.Wassmer
#lockdown nick.penwarden

[CL 3654007 by Jian Ru in Main branch]
2017-09-20 12:27:20 -04:00
Jian Ru
8f0bb9fc49 Fix some warnings caused by 3647910
#rb none
#lockdown nick.penwarden
#jira UE-48266

[CL 3648401 by Jian Ru in Main branch]
2017-09-18 13:56:26 -04:00
Jian Ru
0592ae3dda Key changes:
- Disable texture streaming
- AScreenshotFunctionalTest now reads back from game viewport directly when taking screenshot
- AFunctionalUIScreenshotTest now render into a custom render target using FWidgetRenderer so that UI screenshot can be captured at fixed size
- Add a new class, AScreenshotFunctionalTestBase, that handles screenshot common functions. AScreenshotFunctionalTest and AFunctionalUIScreenshotTest now derive from it
#rb Chris.Bunner
#codereview Chris.Bunner
#lockdown nick.penwarden

[CL 3647910 by Jian Ru in Main branch]
2017-09-18 10:40:18 -04:00
Chris Bunner
156d74fdd3 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3635055)
#lockdown Nick.Penwarden

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

Change 3503468 by Marcus.Wassmer

	Fix merge conflicts

Change 3537059 by Ben.Marsh

	Fixing case of iOS directories, pt1

Change 3537060 by Ben.Marsh

	Fixing case of iOS directories, pt2

Change 3608300 by Chris.Bunner

	Added post process material to preview compile cache set to allow post process volume preview scene improvements.

Change 3608302 by Chris.Bunner

	Fixed decal lifetime fading.

	#jira UE-48400

Change 3608303 by Chris.Bunner

	Updated default WritesAllPixels input to ignore dithering (as intended, was disabled due to isues at the time).
	Fixed material instances returning their local data when not overridden.

	#jira UE-48254

Change 3608455 by Mark.Satterthwaite

	Enabling WorldPositionOffset requires disabling fast-math on Metal because the manually specified FMA's are not respected if one or more arguments is a literal which then leads to very different compiler optimisation between the depth-only shader and the base-pass shader. This change will only affect the way Metal compiles shaders.

	#jira UE-47372

Change 3608462 by Rolando.Caloca

	DR - Cloth vertex buffers no longer generate dummy vertices
	Copy from 3608349 and 3608407

Change 3608491 by Rolando.Caloca

	DR - hlsl - Fix crash when type was not found

Change 3608513 by Rolando.Caloca

	DR - Default to real uniform buffers for Vulkan SM4 & SM5

Change 3608794 by Mark.Satterthwaite

	Implement SV_DepthLessEqual (maybe right?) for Metal - seems to work in the ParallaxOcclusionMapping test map.

	#jira UE-47614

Change 3608929 by Mark.Satterthwaite

	Fix ambiguous expression compile error.

Change 3608991 by Mark.Satterthwaite

	Fix a dumb bug when parsing the Metal compiler version that breaks Metal shader PCH generation on HFS+ volumes.

Change 3609090 by Uriel.Doyon

	StaticMeshComponent and LandscapeComponent now register AO material mask and sky occlusion texture in the texture streamer.
	Changing the current lighting scenario now triggers an update of the texture streamer, and a refresh of lighting data for instanced static meshes.
	Added an option to the "liststreamingtextures" named UNKOWNREF allowing to inspect texture without references in the texture streamer.
	BUILDMATERIALTEXTURESTREAMINGDATA now rebuild every shader in memory and mark for save those with different data.
	MipBias now behaves the same way in shipping than in other builds.
	Fixed texture resolution logic for editor tooltips and in game stats.

Change 3609659 by Richard.Wallis

	Remove Eye Adaption Pixel Shader Workaround for macOS 10.11 (El Cap) Nividia.
	#jira UE-48642

Change 3610552 by Mark.Satterthwaite

	Optimise the constant-propagation pass in hlslcc by using a hash-table to reduce the cost of looking up the existing constant assignment instructions. The get_assignment_entry drops from 25% of runtime to 2.2% of runtime on a 4.2Ghz Quad i7 2017 iMac.

Change 3610662 by Rolando.Caloca

	DR - hlsl - Fix for rwstructured buffer
	Fix for floats printed as ints

Change 3610830 by Michael.Lentine

	ByteAddressBuffer does not have a subtype.

Change 3610869 by Rolando.Caloca

	DR - hlsl - Fix disambiguation between 1.r and 1.0.r

Change 3610982 by Mark.Satterthwaite

	Use the correct code to dump Metal shader text for debugging at runtime.

Change 3610996 by Rolando.Caloca

	DR - hlsl - Actual fix for 0.r

Change 3611312 by Rolando.Caloca

	DR - Integrate: Improve performance of bokeh depth of field.
	* Fewer instances with more work (higher quad count) per instance.
	* Improves performance on RX 480 in the Infiltrator demo by 0.37 ms at 1080p and 0.50 ms at 1440p (average frame time over the beginning of the demo, including the hallway confrontation between the guard and the infiltrator, where heavy DOF is used).
	* Similar optimizations may be possible for other systems that perform similar "instanced draws of quads" (e.g. virtual texture page table updates, lens blur, and velocity scatter).

Change 3611345 by Mark.Satterthwaite

	Missed the hash-table destructor in previous change.

Change 3611372 by Rolando.Caloca

	DR - vk - New barrier/layout api

Change 3611445 by Mark.Satterthwaite

	Fix stupid bugs in MetalBackend's LoadRWBuffer helper function where the wrong type was being used - won't fix problems in the LinearTexture case though.

Change 3611686 by Mark.Satterthwaite

	Remove the sampler from the Metal Linear Texture SRV path as for reasons so far unknown it doesn?╟╓t work with the light grid culling.

	#jira UE-48881

Change 3611743 by Mark.Satterthwaite

	Implement early depth test for Metal - it is implemented such that manual specification of the SV_Depth* outputs will elide the early_fragment_test qualifier as Metal does not permit both at present.

Change 3611746 by Mark.Satterthwaite

	Use early fragment tests implicitly unless we perform a direct resource write or use discard - explicit depth writes always disable early fragment tests as Metal doesn?╟╓t allow both. This should better match D3D driver behaviour.

Change 3611756 by Mark.Satterthwaite

	Missed a header file in last commit.

Change 3611836 by Mark.Satterthwaite

	Fixed the use of Metal?╟╓s capture manager so that it doesn?╟╓t capture more frames than intended.

Change 3611843 by Mark.Satterthwaite

	Tidy up the handling of when to increment the frame count for the Metal capture manager.

Change 3612279 by Michael.Lentine

	Move FP16 Math to Public so that it can be included as part of platform which is where the other float/half defines happen.

Change 3612595 by Rolando.Caloca

	DR - hlslcc - Rebuilt with CL 3611345

Change 3612665 by Rolando.Caloca

	DR - Make cubemap mip barrier consistent with HZB mip barriers

Change 3612758 by Daniel.Wright

	FColor usage comment

Change 3612980 by Rolando.Caloca

	DR - hlsl - Do not overflow ints

Change 3613068 by Rolando.Caloca

	DR - vk - Initial fix for transition validation warnings

Change 3613115 by Daniel.Wright

	Volumetric lightmap voxels are now always cubes
	Bricks outside of any Lightmass Importance Volume will never be refined

Change 3613124 by zachary.wilson

	Enabling Eye-Adaptation in TM-ShaderModels.

Change 3613205 by Mark.Satterthwaite

	Fully disable linear textures in Metal - they simply aren't performant. Instead we'll have to use helper functions to dynamically type-cast appropriately within the shader. This is currently only configured for a handful of UAV types and will need to be extended.

Change 3613208 by Mark.Satterthwaite

	Add code to MetalBackend to promote half types to float for math operations to avoid compiler errors.

Change 3613354 by zachary.wilson

	Fixing up the Bloom_FFT map. Renaming to fit qa conventions, updating content and improving workflow.

Change 3613409 by Rolando.Caloca

	DR - vk - Layout as part of descriptor writes
	Some access flag warning fixes

Change 3613518 by Daniel.Wright

	Added 'Render Unbuilt Preview Shadows in game' rendering project setting and r.Shadow.UnbuiltPreviewInGame cvar

Change 3613610 by Daniel.Wright

	Volumetric lightmap visualization sphere size is now a fraction of the corresponding brick world size

Change 3613651 by Daniel.Wright

	[Copy] Fixed landscape in the Global Distance field on PS4.  Multiple updates to a vertex buffer using BUF_Dynamic cause a race condition on PS4 with no assert.
	Also added shrinking for GDistanceFieldUploadData which saved 15Mb.

Change 3613696 by Mark.Satterthwaite

	Add the Metal SRV format for Index buffers so that they can be properly type-cast inside the shader. Fixes recompute tangents with latest changes.

Change 3613697 by Rolando.Caloca

	DR - vk - Fix missing layout

Change 3613922 by Rolando.Caloca

	DR - vk - Some fixes for layout/transitions
	- Disable GSupportsDepthFetchDuringDepthTest on desktop as the deferred renderer is not copying the aux depth in the right spot and will be removed

Change 3614009 by Mark.Satterthwaite

	TPS Approved: Integrating the MIT-licensed mtlpp C++ Metal wrapper from Nikolay Aleksiev which will slowly replace previous Metal API wrappers in MetalRHI.

Change 3614015 by Mark.Satterthwaite

	Initial extensions to mtlpp:
	- Fixed over retention of alloc-init'd objects.
	- Added 10_13 & 11_0 availablity macros.
	- Started, but have not yet finished adding new Metal API function wrappers.

Change 3614909 by Rolando.Caloca

	DR - Fix static analysis

Change 3614916 by Michael.Lentine

	Add function to convert FP32 to FP16

Change 3614957 by Mark.Satterthwaite

	mtlpp declarations for macOS 10.13 & iOS 11 Metal features - no matching definitions yet.

Change 3614995 by Mark.Satterthwaite

	Revert all changes to project config's from Rhino that should not have come back to Dev-Rendering, keeping only the solitary change to Metal shader standard necessary for ShowdownDemo.

Change 3615035 by Rolando.Caloca

	DR - Generate mips using shader for HZB

Change 3615561 by Rolando.Caloca

	DR - Fix deprecation warning

Change 3615787 by Mark.Satterthwaite

	Only emit min. OS version specification into the Metal shader bytecode for macOS as we share shaders between iOS & tvOS and this option inhibts that.

	#jira UE-48919

Change 3616317 by Mark.Satterthwaite

	Make TonemapperConfBitmaskPC  the proper size so we dn't attempt to access uninitialized memory.

Change 3616357 by Mark.Satterthwaite

	And fix some compile errors...

Change 3616473 by Rolando.Caloca

	DR - Render pass api minor changes

Change 3616518 by Mark.Satterthwaite

	Fix a merge snafu where dead code was retained where it shouldn't be.

	#jira UE-48472

Change 3616706 by Rolando.Caloca

	DR - Vulkan fixes (integration from Vulkan working branch)
	- Fix for editor outline
	- Fix for profilegpu

Change 3616770 by Rolando.Caloca

	DR - vk - Mark GIsGPUCrashed on device lost

Change 3616993 by Daniel.Wright

	IndirectLightingCacheQuality respects VolumetricLightingMethod

Change 3616996 by Daniel.Wright

	Volumetric Lightmap show flag is respected by Volumetric Fog

Change 3616999 by Daniel.Wright

	Fixed ObjectRadius in Volume domain materials

Change 3617777 by Rolando.Caloca

	DR - Fix static analysis warning

Change 3617863 by Guillaume.Abadie

	PR #3875: Removed Duplicated "RHI" Module Dependency (Contributed by DavidNSilva)

	#jira UE-48159

Change 3618133 by Rolando.Caloca

	DR - vk - Set general layout for compute shader resources
	- Assume transitions to writable imply end render pass

Change 3618292 by Michael.Lentine

	Add support for Expressions, Jump Statments, and Structs.

Change 3618326 by Rolando.Caloca

	DR - vk - Fix transition flags

Change 3618408 by Daniel.Wright

	Lightmass skylight solver improvements
	* Lightmass uses a filtered cubemap to represent the skylight instead of a 3rd order Spherical Harmonic.  Directionality in shadowed areas is improved.  Mip level is chosen based on the ray differential for anti-aliasing.
	* Multiple skylight and emissive bounces are now supported with a radiosity solver, controlled by NumSkyLightingBounces in Lightmass WorldSettings.  More bounces results in longer build times, and the radiosity time is not distributable.
	* The mapping surface cache is now rasterized with supersampling, reduces incorrect darkness in corners
	* Combined direct lighting, photon irradiance, skylight radiosity and diffuse in the mapping surface cache so final gather rays only have to do one memory fetch, speeds up lighting builds by 7%.
	* Added support for Embree packet tracing although no solver algorithms use it yet

Change 3618413 by Daniel.Wright

	Swarm hands out the most expensive tasks in roughly a round robin ordering among distribution agents.  Lightmass processing of a single task is multithreaded, so ideally the most expensive tasks are evenly distributed among active agents.  This has the biggest impact in small scenes with 10's of high resolution lightmaps, and with a distribution farm.  Build time in one scene went from to 113s -> 47s.

Change 3618439 by Mark.Satterthwaite

	Fix the assert in hlslcc when we have saturate(int) and the shader language spec. supports a native saturate intrinsic.

Change 3618468 by Rolando.Caloca

	DR - vk - Fix copy to non render target surface

Change 3618696 by Daniel.Wright

	Worked around Lightmass crash callstacks not getting reported back to the editor

Change 3618779 by Mark.Satterthwaite

	mtlpp definitions for a few of the new calls & fixing the max. number of samplers it assumes.

Change 3618789 by Daniel.Wright

	Added missing file

Change 3618816 by Daniel.Wright

	Another missing file

Change 3618855 by Rolando.Caloca

	DR - vk - Show user debug markers when using dump layers
	- Remove old defines

Change 3618887 by Rolando.Caloca

	DR - Fix for missing transition to readable for blur widget. Was causing corruption on Vulkan.

Change 3618999 by Mark.Satterthwaite

	Definitions for Metal's new CaptureManager & CaptureScope classes.

Change 3619790 by Jian.Ru

	Add some debug info
	#jira UE-48710

Change 3619834 by Rolando.Caloca

	DR - vk - static analysis fix

Change 3619952 by Rolando.Caloca

	DR - vk - Static analysis not smart enough...

Change 3620191 by Jian.Ru

	Revert 3584245 to prevent focus stealing
	#jira UE-49044

Change 3620402 by Mark.Satterthwaite

	Remaining Metal definitions for mtlpp.

Change 3620803 by Brian.Karis

	Removed faceting bug I introduced to Dither Opacity Mask. Removes the attempt to make opacity stack properly.

Change 3620904 by Michael.Lentine

	Change the order of static and const

Change 3620975 by Rolando.Caloca

	DR - Updated Vulkan headers to SDK 1.0.57.0

Change 3621026 by Rolando.Caloca

	DR - Remove unused type
	- Force recompile with new Vulkan headers

Change 3621070 by Rolando.Caloca

	DR - glslang - Fix pdb option

Change 3621157 by Arciel.Rekman

	Added files to cross-build glslang on Windows.

	(Edigrating //UE4/Main/...@3621127 to //UE4/Dev-Rendering/...)

Change 3621194 by Rolando.Caloca

	DR - glslang - Update to 1.0.57.0
	- Fix some tab/whitespace mismatch

Change 3621225 by Rolando.Caloca

	DR - Revert glslang (Back out changelist 3621194)

Change 3621254 by Mark.Satterthwaite

	Duplicate 3610656 and revert the incorrect merge from the Rhino task stream. Fixes EyeAdaptation on all clang platforms properly thanks to RCL.

Change 3621261 by Mark.Satterthwaite

	Trivial FMetalStateCache optimisations - won't help much but equally they shouldn't hurt.

Change 3621262 by Mark.Satterthwaite

	Correct the handling of MSAA target in Desktop Forward for iOS - now the problem is that iOS always creates an internal resolve target so which texture to bind depends on the shader parameter type. Not sure (yet) how best to solve that.

Change 3621263 by Mark.Satterthwaite

	Don't mandate Mobile Metal for projects that have Metal MRT enabled.

Change 3621301 by Rolando.Caloca

	DR - Unity build fix

Change 3621349 by Mark.Satterthwaite

	Fix a bug in MetalBackend that was omitting the depth-output variable from the hlslcc signature if the semantic was SV_DepthLessEqual rather than SV_Depth.

Change 3621546 by Uriel.Doyon

	Refactor of the texture 2D mip update logic to offload more work on the async thread.
	#jira UE-45332
	#jira UE-45789

Change 3622210 by Rolando.Caloca

	DR - Do not store DDC data if static mesh failed to build
	#jira UE-48358

Change 3622349 by Arciel.Rekman

	Better build script for Linux glslang and a bugfix.

	(Edigrating CL 3622235 from //UE4/Main/... to //UE4/Dev-Rendering/...)

Change 3622401 by Rolando.Caloca

	DR - vk - Integration
	- Support for r.Vulkan.ProfileCmdBuffers

Change 3622506 by Rolando.Caloca

	DR - vk - Back out changelist 3622401

Change 3622521 by Mark.Satterthwaite

	Support disabling V-Sync in MetalRHI on macOS 10.13+.

Change 3622910 by Rolando.Caloca

	DR - static analysis fix

Change 3622964 by Mark.Satterthwaite

	Fix generation of .metallib on local Macs and exclude .metallib files from the pak - they must always be loaded from disk.

	#jira UE-48193

Change 3622986 by Mark.Satterthwaite

	A couple more trivial optimisations to MetalRHI for iOS:
	- Metal page size is 4k but only buffers under 512 bytes should go through set*Bytes on iOS to balance CPU cost.
	- On iOS the minimum buffer size should therefore be 1k and on Mac 4k as nothing else makes much sense.
	- No need to rebind uniform buffers if to the same slot - it just wastes cycles.

Change 3623266 by Rolando.Caloca

	DR - Fix GL4 rendering

	#jira UE-49187

Change 3623377 by Daniel.Wright

	Volume materials applied to static meshes operate on the object's bounding sphere

Change 3623427 by Mark.Satterthwaite

	Fix MetalViewport compile errors on Xode 8.3.

	#jira UE-49231

Change 3623443 by Daniel.Wright

	Fixed out of bounds crash in lightmass

Change 3623751 by Daniel.Wright

	Volume materials on static meshes now voxelize the mesh's Object space bounding box

Change 3625142 by Guillaume.Abadie

	PR #2992: Fixing aspect ratio issue of SceneCapture2D rendering in "Ortho" camera mode (Contributed by monsieurgustav)


Change 3625983 by Jian.Ru

	Fix a LPV race condtion due to parallel RSM draw-call submission
	#jira UE-48247

Change 3626015 by Jian.Ru

	Small fix to 3625983

Change 3626294 by Michael.Trepka

	Copy of CL 3535792 and 3576637

	Added support for changing monitor's display mode on Mac in fullscreen mode. This greatly improves performance on Retina screens when playing in resolutions lower than native.

	Fixed a problem with incorrect viewport size being set in windowed fullscreen in some cases. Also, slightly improved screen fades for fullscreen mode transitions on Mac.

	#jira UE-48018

Change 3626532 by Marcus.Wassmer

	Fix divide by 0 crash when GPU timing frequency not available for whatever reason.

Change 3626548 by Ryan.Brucks

	KismetRenderingLibrary: Added EditorOnly function for creating static textures from Render Targets. Has options for Mip and Compression Settings

Change 3626874 by Mark.Satterthwaite

	Fix Metal 2.0 compilation.

Change 3626997 by Rolando.Caloca

	DR - vk - cis fix
	- Initial RGBA16 readback

Change 3627016 by Mark.Satterthwaite

	Workaround more of Metal's unfortunate tendency to re-associate float mul/add/sub operations - this time from Metal's own standard-library.

Change 3627040 by Brian.Karis

	Removed old rasterized deferred reflection env path.
	Removed reflection compute shader. Replaced with PS. Small perf gain.

Change 3627055 by Mark.Satterthwaite

	No MSAA support on Intel Metal or iOS Desktop Forward for the moment as neitehr work and I don't want to have lots of crashes out in the wild until we have a solution.

Change 3627057 by Mark.Satterthwaite

	Make SCW's directcompile not fall over with Metal when there are compilation errors.

Change 3627083 by Mark.Satterthwaite

	Invalidate Metal shaders so QA testing picks up the most recent changes.

Change 3627788 by Chris.Bunner

	[Duplicate, CL 3627751] - VisibleExpressions static switch value evaluation needs to handle reroute nodes rather than only verify first expression.

Change 3627834 by Rolando.Caloca

	DR - cis fix

Change 3627847 by Rolando.Caloca

	DR - 4th try to fix static analysis

Change 3627877 by Guillaume.Abadie

	Works arround a HLSLCC bug in a SimpleComposure project's material where x != x does not work for an unknown reason yet.

	#jira UE-48063

Change 3628035 by Marcus.Wassmer

	Duplicate 3620990
	Smarter scenecapture allocation behavior.

Change 3628204 by Daniel.Wright

	Fixed denormalization scale on one of the 2nd SH band of volumetric lightmaps

Change 3628217 by Mark.Satterthwaite

	Fix InfiltratorForward project defaults so that iOS will package.

Change 3628515 by Arne.Schober

	DR - [UE-49213] - Fix case where HZB was not generated for SSR and SSAO when Occlusion culling was disabled.
	#RB Marcus.Wassmer

Change 3628550 by Chris.Bunner

	Merge fixes.

Change 3628597 by Chris.Bunner

	Merge fixes.

Change 3628656 by Michael.Trepka

	One more workaround for a bug in StandardPlatformString.cpp. It doesn't handle %lf format correctly, parsing it as long double instead of ignoring the 'l' format sub-specifier.

Change 3628685 by Daniel.Wright

	CPU interpolation of Volumetric Lightmaps for the mobile renderer.  They use a scene cache based on interpolation position, since the precomputed lighting buffer for movable objects is recreated every frame.

Change 3629094 by Ryan.Brucks

	Fixes to RenderTargetCreateStaticTexture2DEditorOnly with additional error checks

	#RB none

Change 3629223 by Rolando.Caloca

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

Change 3629491 by Rolando.Caloca

	DR - Revert back to emulated uniform buffers on SM4/SM5

Change 3629663 by Daniel.Wright

	Fixed NaN when capsule shadow direction is derived from volumetric lightmap with completely black lighting

Change 3629664 by Daniel.Wright

	Don't render dynamic indirect occlusion from mesh distance fields when operating on a movable skylight, since DFAO fills that role

Change 3629708 by Rolando.Caloca

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

Change 3629770 by Mark.Satterthwaite

	Fix a mobile Metal shader compilation error when using the FMA workaround for "cross" which should only be applied if the min. Metal version is 1.2 (as FMA is not known to work prior to this).

Change 3629793 by Daniel.Wright

	Fixed VolumetricLightmapDetailCellSize not being respected in small levels, causing too much volumetric lightmap density and memory

Change 3629859 by Mark.Satterthwaite

	macOS 10.12 also had problems with MSAA in forward rendering - so only permit it to work on macOS 10.13 and above.

Change 3630790 by Mark.Satterthwaite

	Move RHISupportsMSAA so that the Metal related complications for when it is viable can be hidden within.

Change 3630990 by Rolando.Caloca

	DR - vk - Redid CL 3617437 (optimize number of Buffer Views, eg 165 to 58)

Change 3631071 by Mark.Satterthwaite

	Fix a small gotcha in a change from Dev-Mobile: for MetalRHI we need to explicitly configure the ShaderCacheContext for the immediate/device context after initialising the shader-cache.
	#jira UE-49431

Change 3631076 by Rolando.Caloca

	DR - vk - Redo 3617574, reduce number of render pass objects created

Change 3631250 by Mark.Satterthwaite

	Make another Metal warning a Verbose log instead as it isn't interesting unless you are me.

Change 3631911 by Chris.Bunner

	Back out changelist 3628035.

	#jira UE-49364, UE-49365

Change 3632041 by Mark.Satterthwaite

	Fix cloth rendering on Metal - some of the data in FClothVertex is uint but we load it from a float buffer. This could be due to a bug in Metal's as_type<uint4>() or it could be that Xcode 9's compiler is now finally enforcing Metal's official flush-to-zero-on-load semantics for denorms - it isn't immediately obvious.

	#jira UE-49439

Change 3632261 by Brian.Karis

	SM4 fallback for reflection captures.

Change 3632281 by Mark.Satterthwaite

	Fix an intermittent assert on startup when the AVFoundation movie player gets the QAGame TM-ShaderModels video ready to play prior to the rendering thread being back online when resizing the window. This is done by deferring the processing of AVFoundation events to the game-thread where it won't cause a threading violation.

Change 3632382 by Rolando.Caloca

	DR - vk - Fix clang warning

Change 3633338 by Chris.Bunner

	Static analysis/Linux compile fix.

	#jira UE-49502

Change 3633616 by Jian.Ru

	Force alpha to 0xff for functional UI screenshot tests
	#jira UE-48266

Change 3633818 by Daniel.Wright

	Better indirection texture clamping and asserts

Change 3634319 by Mark.Satterthwaite

	Stop FVolumetricLightmapDataLayer ::Discard which is invoked by the Editor RHI during texture-upload from chucking the backing data when in the Editor - because if we do that then cooking will serialise an empty array. This was only apparent on Mac because Metal always invokes Discard on BulkDataInterfaces and D3D11 never does.

	#jira UE-49381

Change 3634613 by Rolando.Caloca

	DR - Call discard on bulk data for textures

	#jira UE-49533

Change 3634654 by Mark.Satterthwaite

	Fixes for broken iOS builds:
	- Fix RHIGetShaderLanguageVersion returning the wrong version for iOS Metal if the Mac version had already been queried - this has been wrong for a long while.
	- Remove the precise:: qualifier for Metal's fma intrinsic - it isn't necessary and breaks on older OSes.

	#jira UE-49381

Change 3634820 by Mark.Satterthwaite

	Change the hash-function for the preprocessed HLSL source in FMetalShaderOutputCooker to reduce risk of hash-collisions. Fixes one cause of UE-49381 and reveals an underlying driver bug on iOS 9 with runtime-compiled text shaders *only*.

	#jira UE-49381

Change 3634821 by Mark.Satterthwaite

	Force Metal shaders only to recompile by incrementing the format version.

[CL 3635058 by Chris Bunner in Main branch]
2017-09-09 16:29:11 -04:00
Marc Audy
a66199e8a7 Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3628051)
#lockdown Nick.Penwarden
#rb none
#rnx

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

Change 3582363 by Marc.Audy

	Make ComponentToWorld fully private and remove deprecation informing of this
	#jira UE-46286

Change 3582885 by Ben.Zeigler

	#jira UE-47642 Add ToString for SoftObjectReference/SoftClassReference/PrimaryAssetId/PrimaryAssetType to use for debugging. The other direction is not provided because the type validation cannot be done at runtime

Change 3584468 by Ben.Zeigler

	#jira UE-48301 Avoid infinite recursion crash when cooking client/server only component blueprints

Change 3584596 by Marc.Audy

	(4.17) Ensure that old user defined structs have their members properly marked as blueprint visible
	#jira UE-48346

Change 3586057 by Ben.Zeigler

	#jira UE-48413 Fix issue where running a dedicated server with a fixed framerate could cause a time crash because the "last time" was out of sync. Clarified code to indicate which times are real and which are logical. This manifested as a crash in EngineTest but could happen in any game with a fixed framerate

Change 3588211 by Marc.Audy

	PR #3889: Added BLUEPRINTGRAPH_API module specifier to the input nodes. (Contributed by karanseqwb)
	#jira UE-48318

Change 3588826 by Marc.Audy

	Don't ensure when connecting the output pin of a create delegate node to a wildcard input
	#jira UE-48157

Change 3588827 by Marc.Audy

	Always throw error when unable to validate a link connection instead of allowing totally broken content to compile

Change 3588872 by Ben.Zeigler

	#jira UE-48457 Add Export To CSV to content browser/asset audit windows that are in the column view. This is useful for preparing memory/disk usage reports

Change 3589134 by Dan.Oconnor

	Mirror 3585244 from Release 4.17
	Run actor construction via UBlueprint::BroadcastCompiled after reinstancing, matching non-compilation manager behavior
	#jira UE-48189

Change 3589140 by Dan.Oconnor

	Mirror 3588406 from Release-4.17
	Set "WorldContext" metadata earlier in the compilation process, so that it can be used reliably in other blueprints. This fixes occasionally 'None' WorldContext references

	#jira UE-48464

Change 3589141 by Dan.Oconnor

	Mirror 3588681 from Release-4.17
	Set Default values and CallInEditor meta data for event nodes

	#jira UE-48386

Change 3590690 by Ben.Zeigler

	#jira UE-48509 Fix crash in incremental cook when a file in the incremental cook was deleted from p4

Change 3590909 by Ben.Zeigler

	#jira UE-48509 Fix crash in incremental cooker when DDC data is not built for a package that is skipped for rebuilding. The cached data would not be checked for completness, but would assert becuase it was not complete.
	WillNeverCacheCookedPlatformDataAgain no longer does anything other than assert, so remove it.

Change 3591386 by Marc.Audy

	Split pins are now correctly handled when expanding macros and functions.
	#jira UE-47747

Change 3591939 by Dan.Oconnor

	Mirror 3591923 from Release-4.17
	Split ReplaceInstancesOfClass_Inner into two passes, one for objects and one for actors because actor reconstruction needs all components to be of final class type (e.g. not REINST_ or HOT_RELOAD_)
	#jira UE-48250

Change 3593243 by Marc.Audy

	PR #3910: Add FQuat initialization from FString (Contributed by cneumann)
	#jira UE-48534

Change 3593407 by Marc.Audy

	Properly expose Lex::To/FromString for FName

Change 3593648 by Marc.Audy

	Refactor AActor::PostEditUndo to have a single implementation to avoid incosistent fixes

Change 3593917 by Marc.Audy

	Improved comment

Change 3594501 by Marc.Audy

	Fix biased shuffle algorithm
	#jira UE-48432

Change 3594699 by Ben.Zeigler

	#jira UE-48555 Fix crash where async loading flush update callback was happening in the async loading thread, it's supposed to be a game delegate
	Fix InstancedStaticMesh to not ensure when loaded via the async loading thread

Change 3595327 by Phillip.Kavan

	#jira UE-16485 - Add an option to host global Blueprint searches in a dockable tab that's not tied to any Blueprint editor context.

	Change summary:
	- Added a few additional Slate editor style descriptors specifically for the Find Results tab.
	- Added a private dependency on the 'WorkspaceMenuStructure' module to the 'Kismet' editor module.
	- Added a new Blueprint Editor settings option to the "Workflow" section to toggle the feature on/off (now set to 'on' by default).
	- Added a UBluepriintEditorSettings::PostEditChangeProperty() implementation to reset FiB state upon changing the experimental toggle switch.
	- Modified the FFindResultsSummoner ctor to use an alternate tooltip when the feature is turned on. In that case the "local" Find Results tab will always search only the local BP context.
	- Modified FBlueprintEditor::OnRequestClose() to additionally find and close the local Find Results tab if the feature is turned on and we're not in a full BP editor context. This ensures that the local Find Results tab context will be reset to hidden if the option is toggled while a defaults-only BP editor context is active.
	- Modified FBlueprintEditor::SummonSearchUI() to invoke the global Find Results tab if the feature is turned on and 'bSetFindWithinBlueprint' is true.
	- Simplified FBlueprintEditor::FindInBlueprint_Clicked() and FBlueprintEditor::FindInBlueprints_OnClicked() to call SummonSearchUI().
	- Moved the FFindInBlueprintsResult declaration into FindInBlueprintManager.h. Also relocated the ExpandAllChildren API out of this class and into the localized FindInBlueprintsHelpers util class.
	- Added new FFindInBlueprintSearchManager public APIs - GetGlobalFindResults() and CloseAllGlobalResults(). Also added a delegate for handling cleanup after a global Find Results tab is closed.
	- When the feature is turned on, global Find Results tabs will be named "Find in Blueprints" to correlate to the menu command that's bound to CTRL-SHIFT-F. An index will be appended to the tab name if more than one context is active.
	- Extended FFindInBlueprintSearchManager to support spawning and maintaining up to 4 global Find Results widget contexts. These are registered and spawned as "nomad" tabs, but they don't currently auto-insert into the menu. Instead, they are invoked internally by the GetGlobalFindResults() API as needed, in response to the BP editor's "Find in Blueprints" command.
	- Extended the SFindInBlueprints widget to support a "locked" state and allow users to toggle it via an SButton. This is visible only in the global Find Results context.
	- Extended the SFindInBlueprints widget to support an additional "Find in All Blueprints" button on the local Find Results context. Clicking the button will invoke an unlocked global Find Results tab and initiate a global search with the text taken from the local context. This is visible only in the local Find Results context.
	- Removed the "Find in Current Blueprint only" checkbox from the local Find Results context when the feature is enabled. Global searches are instead redirected to the global Find Results tab.

Change 3596499 by Marc.Audy

	Fix non-editor CIS error

Change 3596653 by Marc.Audy

	When a transaction is cancelled the previous redo buffer will now be restored instead of lost
	#jira UE-48513

Change 3598187 by Ben.Zeigler

	Add ability for automation command line to run as remote session with Automation StartRemoteSession (SessionGuid). In this mode it waits for external clients to be ready
	Fix functional tests to work in editor builds with -game by forcing an asset registry scan

Change 3598193 by Ben.Zeigler

	Add support for -TcpMessagingListen=IP:port and TcpMessagingConnect=IP:Port command line options to the TCP messaging layer, this is used by automation to connect a specific device to an editor coordinator.

Change 3600168 by Marc.Audy

	(4.17.2) Protect against crash when ParentClass has become null for unknown reasons
	#jira UE-47467

Change 3600457 by Ben.Zeigler

	Fix issue where nonblocking BSD sockets on some platforms may return EINPROGRESS on initial connect, which should not be treated as an error

Change 3600462 by Ben.Zeigler

	Remove platform whitelist from TcpMessaging plugin, this was effectively blocking it on all other platforms

Change 3600685 by Marc.Audy

	(4.17.2) ParentClass is known to be able to be null if a class has been deleted without redirector. Allow the class to be marked deprecated under this circumstance.
	#jira UE-47467

Change 3600859 by Marc.Audy

	(4.17.2) Prevent error pop ups about failing to save world due to save on compile of blueprints
	#jira UE-48672

Change 3600918 by Marc.Audy

	Transient child actor components should create transient child actors.
	#jira UE-48605

Change 3601012 by Ben.Zeigler

	Fix TCP Messaging system to work better on non desktop by sleeping for some real time during the thread tick.
	Add verbose logs and fix warning spam about thread stats being duplicated by renaming the thread per connection.

Change 3602595 by Marc.Audy

	(4.17.2) PR #3930: Fix compiler error for PS4 if a nativized blueprint invokes a method of its own through interface (Contributed by hillin)
	#jira UE-48684

Change 3602644 by Ben.Zeigler

	Add game game thread asserts to streamable manager to track down possible async loading thread issues

Change 3602745 by Ben.Zeigler

	Add Tolerance parameters to AssertEqual_Rotator and Transform, Vector and Float already had them

Change 3602807 by Phillip.Kavan

	#jira UE-48426
	- Fix runtime crash in a nativized child Blueprint that includes a parent function call node in a replicated function implementation.

	Change summary:
	- Modified FBlueprintCompilerCppBackend::EmitCallStatmentInner() to append the "_Implementation" postfix to parent RPC calls in a child class RPC implementation.

Change 3602856 by Ben.Zeigler

	Fix fixed frame rate to be more stable by computing delta time as doubles, to avoid rounding issues

Change 3602903 by Marc.Audy

	Allow Scale to be set on an AnimNotify as well as the spawn emitter gameplay statics
	#jira UE-39362

Change 3602963 by Marc.Audy

	PR #3762: DisableHaptics disables haptics properly (Contributed by projectgheist)
	#jira UE-46960

Change 3603249 by Marc.Audy

	Prevent compilation of a blueprint containing a child actor component to mark the blueprint the child actor's class dirty
	#jira UE-43328

Change 3603311 by Ben.Zeigler

	Add -nocodesign option to disable code signing during staging

Change 3603504 by Ben.Zeigler

	#jira UE-27124 Fix crash during PIE by ensuring the world package PIE flag is always set, even if it's loaded via redirector

Change 3604790 by Marc.Audy

	Fix inability to undo Add Pin via context menu to make container nodes.
	#jira UE-48751

Change 3605079 by mason.seay

	Renamed component from Cube to Cylinder, because it's actually a Cylinder

Change 3605113 by Mieszko.Zielinski

	PR #3927: Fixed issue of behavior if setting InfiniteLoopTimeoutTime variable (Contributed by yhase7)


Change 3605276 by mason.seay

	Fixed comment error in level bp

Change 3605706 by Zak.Middleton

	#ue4 - Fix redundant GetDefault<>.

	#jira none

Change 3605850 by Zak.Middleton

	#ue4 -  Fix client assert when trying to send RPCs while connection is pending closure due to queued bunches. ChIndex is -1 during this time, though the channel is not actually closed. Added ensure when calling SendBunch() under this condition to catch future cases like this.

	(Mirror CL 3602849 in Fortnite)

	#jira FORT-51215, UT-6139

Change 3607677 by Dan.Oconnor

	Mirror 3597636 from Release-4.17
	Don't clear UClass CDO until after we've duplicated the class, in case class duplication wants to read from the CDO (e.g. when duplicating a class that has ChildActorComponents)
	#jira UE-48524

Change 3607704 by Dan.Oconnor

	Back out changelist 3607677 - want to obliterate integration record

Change 3607727 by Dan.Oconnor

	Mirror 3597636 from Release-4.17 - now with integrations converted to edits
	Don't clear UClass CDO until after we've duplicated the class, in case class duplication wants to read from the CDO (e.g. when duplicating a class that has ChildActorComponents)
	#jira UE-48524

Change 3607735 by Dan.Oconnor

	Mirror 3606248 from Release-4.17
	When copying data from old archetypes to new archetypes we want to use delta's from the old instances, but only when reliable (e.g. not CDO)

	#jira UE-48697, UE-48465

Change 3607919 by Ben.Zeigler

	#jira UE- 48815
	Fix issue where StreamableHandle CompletedDelegate wasn't being reset after being called. If this had a payload pointing to the handle the handle would then be kept alive forever due to the reference counting, causing bad memory leaks
	Copy of CL #3607743

Change 3608447 by mason.seay

	Fixing deprecated node

Change 3608779 by Ben.Zeigler

	#jira UE-48762 Do not rename a PIE world in place if it was loaded by redirector, this corrupts the redirector and later crashes if used again

Change 3609860 by Marc.Audy

	Allow uint8:1 properties to be used as expose on spawn

	#jira FORT-52043

Change 3609877 by Marc.Audy

	Reduce size of UProperty and UWidgetBlueprintGeneratedClass by 8 bytes
	Reduce size UBlueprintGeneratedClass by 32 bytes

	#jira FORT-52043

Change 3609944 by Marc.Audy

	Remove unused per instance physics create/destroyed delegates from UActorComponent (reduce size by 224 bytes)

Change 3610009 by mason.seay

	Moving assets to another folder for organization

Change 3610840 by Ben.Zeigler

	#jira UE-47351 Fix multiple launch ons inside the editor to correctly detect changed source files by refreshing the asset registry each time.
	Packages are now always saved to disk before launch on so we just need to load the data off disk and then refresh the registry generators.

Change 3610961 by Ben.Zeigler

	Fix it so when a test times out it writes out the full report with a proper error
	Fix typo with ErrorCount

Change 3611183 by Marc.Audy

	(4.17.2) Don't crash clicking the variable of a deleted component
	#jira UE-47678

Change 3611262 by Ben.Zeigler

	#jira UE-41412 Fix Delegate ImportText to check the outer chain for owning object before searching all packages, this fixes several issues with copy-pasting actors that have bound delegates

Change 3611667 by Phillip.Kavan

	#jira UE-48450
	- Fix UHT C++ codegen compile error (regression) after choosing to package with Blueprint nativization enabled if the project includes a converted User-Defined Structure asset.

Change 3612641 by Marc.Audy

	Private StaticMesh, remove deprecation warning

Change 3612990 by Marc.Audy

	Reduce memory footprint of UClass

Change 3613137 by Ben.Zeigler

	#jira UE-44570 Fix issue with GUID struct customization where it would generate a post edit after modifying only the first element in the GUID, which caused the property handle to get invalidated

Change 3613161 by Ben.Zeigler

	#jira UE-48372 Add InRange (Int) for Blueprints, and cleanup KismetMathLibrary.h comments
	PR #3899

Change 3613192 by Ben.Zeigler

	#jira UE-48366 PR #3895 Fix missing small icons within the blueprint Merge and diff tools

Change 3613320 by Mason.Seay

	Submitting deleted redirectors

Change 3613321 by Marc.Audy

	Shrink AActor 32 bytes

Change 3613326 by Marc.Audy

	Move Serialize to be editoronly

Change 3613358 by Phillip.Kavan

	#jira UE-48525 - Fix non-native script interface property value initialization for nativized Blueprint class default objects.

	Change summary:
	- Modified FEmitDefaultValueHelper::HandleSpecialTypes() to special-case interface property values when emitting initialization code for converted class subobjects.

Change 3613827 by Marc.Audy

	Combine material parameter caches of UMeshComponent in to a single sorted map instead of 3 independent maps (saves ~224 bytes)

Change 3613841 by Ben.Zeigler

	#jira UE-48800 Fix crash with undoing blueprint changes while blueprint differ is open, it now listens for blueprint changes

Change 3614031 by Marc.Audy

	Fix initialization order

Change 3614033 by Marc.Audy

	Use Reset instead of Empty in get functions

Change 3615211 by Ben.Zeigler

	Fix CIS warning

Change 3615386 by Ben.Zeigler

	#jira UE-48976 Fix crash compiling user struct when out of date nodes point to it

Change 3615571 by Ben.Zeigler

	#jira UE-48974 Fix crash trying to reconnect blueprint pins with null connections

Change 3615844 by Marc.Audy

	(4.17.2) Reexpose WeightedBlendables/Post Process Materials to blueprints
	#jira UE-48977

Change 3615887 by Marc.Audy

	(4.17.2) Don't crash getting context menu actions if the variable get doesn't have a value pin
	#jira UE-48970

Change 3615965 by Dan.Oconnor

	Make sure that depedent blueprints are bytecode recompiled (e.g. child blueprints that are also dependent must also be bytecode recompiled), also no longer call RefreshNodes on dependent blueprints of interfaces, as this is no longer needed and can result in incoherent skeleton class hierarchies

	#jira UE-48429, UE-48433, UE-48437, UE-48445, UE-48692

Change 3616149 by mason.seay

	Updated BP for more thorough Find in BP testing

Change 3616261 by Dan.Oconnor

	Mirror 3594264 and 3594798 from Release-4.17
	Fix crash after compiling a blueprint that has an invalid ParentClass
	#jira UE-48430, UE-48903

Change 3616816 by Zak.Middleton

	#ue4 - Add GetTargetRotation() to SpringArmComponent, which returns the rotation target based on the combination of various rotation setting flags (bUsePawnControlRotation, bInheritPitch, bInheritYaw, bInheritRoll, absolute rotation flags).

	#jira UE-48351

Change 3616934 by Phillip.Kavan

	#jira UE-48877 - Close a disabled new-style global find tab if docked after restoring a previously-saved Blueprint editor layout.

	Change summary:
	- Modified FBlueprintEditor::PostLayoutBlueprintEditorInitialization() to close any active global tabs after restoring from a saved layout if the option is disabled.

Change 3616946 by Phillip.Kavan

	#jira UE-48595 - Global FiB Results are now accessible through the main Window menu.

Change 3618007 by Marc.Audy

	(4.17.2) Ensure that RootComponent is correct after undo/redo
	#jira UE-48995

Change 3618014 by Phillip.Kavan

	#jira UE-49025 - Fix global FiB menu item names.

Change 3618206 by Dan.Oconnor

	Make sure instances in the same package as a UBlueprintGeneratedClass are properly created after the CDO

	#jira UE-47991, UE-47726

Change 3618211 by Dan.Oconnor

	Fix 'bad' USE_DEFERRED_DEPENDENCY_CHECK_VERIFICATION_TEST - this is only broken until we get the fix from core that restores CLASS_Intrinsic

Change 3618299 by Zak.Middleton

	#ue4 - Fix comment in GetComponents (UActorComponent version)

	#jira none

Change 3618409 by Marc.Audy

	Make linker placeholder properly support map and set properties
	#jira UE-48925

Change 3618436 by Marc.Audy

	Fix shadow variable

Change 3618682 by Ben.Zeigler

	Fix issue where pressing escape or losing focus while using a SpinBox would leave the UI in a state where the SpinBox could never be used again, caused by CL #3173966. Also fix the initial value to be correct the first time it is dragged

Change 3618783 by Ben.Zeigler

	Fix several issues with the Component Transform details UI
	#jira UE-48959 Fix it so the world/relative transform type bools are correctly propagated to inherited components when modified via editor customizations
	#jira UE-48963 Refactor Transform customization to handle paste and reset to default as atomic operations, allowing them to work properly on blueprint component instances
	#jira UE-48960 Correctly notify blueprint system when component transforms are changed
	#jira UE-4311 Preserve exact rotation typed into component rotation field in most cases
	Fix the "Reset to Defaults" icon to be correct in transform details

Change 3618904 by Ben.Zeigler

	#jira UE-489999 Fix blueprint breakpoint crash when breakpoint data is out of date with UI

Change 3618984 by Zak.Middleton

	#ue4 - Reduce memory churn/allocations when duplicating for PIE.

	#jira none

Change 3619895 by Marc.Audy

	Very minor cleanup

Change 3620129 by Marc.Audy

	PR #3958: Exposing GetOwningPlayerController and GetOwningPawn as public in AHUD. (Contributed by ill)
	#jira UE-49083

Change 3620350 by Lukasz.Furman

	restored intended behavior of path following's acceptance radius: additive with goal and agent radii (included when FAIMoveRequest flags allow it)
	copy of CL# 3618825, 3618828
	#ue4

Change 3620628 by Zak.Middleton

	#ue4 - Moved hardcoded limits on FCollisionShape extents to a static value and refactored external code to reference that instead.

	Fixed Capsules where axis length (half-height - radius) < 1 were clamped to a new capsule with axis length of 1. Changed the clamp threshold to 1e-4 and changed FPhysXShapeAdaptor to use a Sphere instead when Radius >= HalfHeight.

	This would cause sweeps using the capsule params to use a capsule of a different size, up to 1 UU different along the axis.

	#jira UE-49035

Change 3620700 by Lukasz.Furman

	moved blackboard decortator's version of requesting abort to parent class, so all decorators can use it with external events
	#ue4

Change 3620716 by mason.seay

	Test map for flow control save issue

Change 3620723 by mason.seay

	Minor improvement

Change 3620792 by Ben.Zeigler

	Clang doesn't like template specializations in classes, switch to an overload instead to fix CIS

Change 3621084 by Marc.Audy

	Fix NegateInt/Float in StandardMacros
	#jira UE-36242
	#jira UE-36470

Change 3621152 by Marc.Audy

	Fix backwards compatibility on FEdGraphPinType for particularly old blueprints.
	#jira UE-49111

Change 3621246 by mason.seay

	Test BP for UE-48800

Change 3621257 by Michael.Noland

	Animation: Corrected a comment on the LegIK node

Change 3621480 by Zak.Middleton

	#ue4 - Added FTransform::TransformRotation(FQuat) and FTransform::InverseTransformRotation(FQuat). Added matching Blueprint library functions taking FRotator.

	#jira UE-39088
	#github PR 2985 (modified)

Change 3621685 by Phillip.Kavan

	#jira UE-49024 - Add/remove global FiB menu items from the Main Menu when the global FiB option is enabled/disabled.

	Change summary:
	- Added FFindInBlueprintSearchManager::EnableGlobalFindResults(). Now using this API to enable/disable both the Main menu items as well as the global FiB workflow change within the BP editor context.
	- Renamed FFindInBlueprintSearchManager::CloseAllGlobalResults() to CloseOrphanedGlobalFindResultsTabs(). This is now being called to clean up any orphaned global FiB tabs when opening the BP editor context.

Change 3622629 by Marc.Audy

	Reduce memory footprint of UMG/Slate classes: UWidget, UBorder, UImage, UUserWidget, SWidget, SButton, SOverlay, SBoxPanel, SInlineEditableTextBlock, FSlateFontInfo, EVisibility, FSlateBrush, FCheckBoxStyle, FButtonStyle, FComboBoxStyle

Change 3622779 by Zak.Middleton

	#ue4 - Rename USceneComponent::bWorldToComponentUpdated to bComponentToWorldUpdated (since the transform is called ComponentToWorld).

	#jira none

Change 3623020 by Marc.Audy

	Fix initialization order

Change 3623021 by Marc.Audy

	Reorganize USceneComponent to improve cache coherency

Change 3623261 by Ben.Zeigler

	#jira UE-48555: Fix for corruption of shared pointers by the async loading thread. It is unsafe to copy delegates by value on the async loading threads because they may have shared pointers on them that are being used by the main thread. Instead of copying by value, we now allocate once on the game thread and copy by TUniquePtr.

Change 3623294 by Marc.Audy

	Realign UActorComponent to avoid members crossing cache lines

Change 3623383 by Marc.Audy

	Compress UParticleSystemComponent and fix up cases of members crossing cache lines

Change 3623492 by Marc.Audy

	(4.17.2) Fix pin values on function nodes not correctly carrying the value between reloads/refreshes
	#jira UE-49189
	#jira UE-49196

Change 3623573 by Ben.Zeigler

	#jira UE-49223 Fix crash when undoing changes to actors that have been recompiled. We need to skip most of PostEditUndo when the class is out of date and this got broken in a recent refactor

Change 3623642 by Dan.Oconnor

	Make sure we don't attempt to defer exports that rely on CDOs that have been regenerated

	#jira UE-49211

Change 3623719 by Marc.Audy

	PR #3387: Added new Swap method (blueprint KismetArrayLibrary). (Contributed by RChehowski)
	#jira UE-42970

Change 3624191 by Marc.Audy

	Cache GetWorld()

Change 3624232 by Marc.Audy

	Remove accidentally checked in change

Change 3624688 by Marc.Audy

	PR #3491: Client play force feedback can now ignore time dilation. (Contributed by miracle7)
	Force feedback component can also ignore time dilation
	#jira UE-44155

Change 3624880 by Marc.Audy

	PR #3970: SpawnObject not checking for a nullptr causing an editor crash

Change 3625740 by Mason.Seay

	Check in the correct file this time...

Change 3625806 by Ben.Zeigler

	#jira UE-48555 Code review fix for async loading thread fixes, disable an assert when cancel is called in non-EDL, and add comment + assert if Cancel is re-enabled for EDL in the future

Change 3626128 by Marc.Audy

	Fix dragging off component tree in to graph showing an error message
	#jira UE-49114

Change 3626655 by Ben.Zeigler

	#jira OR-43846 Fix asset import objects to correctly load off disk again. They aren't marked as SubObjects so the special case code to add the NeedsLoad flag wasn't getting hit. Change it so in the editor it marks all unloaded subobjects as needs load, need to talk to Core about rather this fix should be editor specific or not

Change 3626740 by Marc.Audy

	Fix compile errors when nativizing when a property references a sub object of a dervied type with modified default properties
	#jira UE-49276

Change 3626831 by Marc.Audy

	Remove BOM

Change 3627162 by Phillip.Kavan

	#jira UE-49239 - Fix an invalid cast emitted to nativized codegen for converted AnimBP types.

	- Regression introduced in CL# 3613358.

Change 3628051 by Marc.Audy

	Fix spelling of redundant
	#jira UE-49343

Change 3596437 by Marc.Audy

	Don't copy metadata unnecessarily

Change 3613302 by Marc.Audy

	Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 56 bytes exclusive)
	Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive).
	Reduce size of USceneComponent by 112 bytes.
	Reduce size of FLightingChannels from 3 bytes to 1.
	Reduce size of FBodyInstance by 16 bytes.

Change 3620363 by Lukasz.Furman

	split UBTTask_MoveTo.bStopOnOverlap flag to separate goal & agent parts to match actual parameters of AI move request, added simple versioning for behavior tree nodes
	copy of CL# 3620248
	#ue4

Change 3622569 by Marc.Audy

	Remove unnecessarily deprecated visibility member and use redirect instead

Change 3624879 by Marc.Audy

	Add a deprecated version of ClientPlayForceFeedback for backwards compatibility.
	Adjust existing game calls to ClientPlayrForceFeedback to use new API

[CL 3628687 by Marc Audy in Main branch]
2017-09-06 14:17:59 -04:00
Max Chen
569ae6bcb9 Copying //UE4/Dev-Sequencer to //UE4/Main (Source: //UE4/Dev-Sequencer @ 3617642)
#lockdown nick.penwarden
#rb none

Change 3235667 on 2016/12/14 by Max.Preussner

	Media: Moved enums into separate header file, so they can be shared

Change 3259266 on 2017/01/16 by Max.Preussner

	Core: Added timespan ratio

Change 3267229 on 2017/01/21 by Max.Preussner

	Editor: Fixed texture samplers in materials not getting notified when sRGB mode changed

Change 3274773 on 2017/01/27 by Max.Preussner

	Core: Added TLruCache template

Change 3281579 on 2017/02/01 by Max.Preussner

	Core: Added scalar division to FTimespan

Change 3289522 on 2017/02/07 by Max.Preussner

	MediaAssets: Added looping for play lists

Change 3290664 on 2017/02/07 by Max.Preussner

	Engine: Moved UTexture material notification code into separate function, so it can be used by derived classes.

Change 3290688 on 2017/02/07 by Max.Preussner

	MediaAssets: Notifying materials when media texture properties changed.

Change 3291171 on 2017/02/07 by Max.Preussner

	MediaAssets: Filtering unused UTexture properties

Change 3291229 on 2017/02/07 by Max.Preussner

	ImgMedia: Use displayWindow instead of dataWindow due to bug in OpenEXR with data window min < 0

Change 3298520 on 2017/02/11 by Max.Preussner

	Sequencer: Fixed skylight and reflection components off by one frame in PIE

Change 3298778 on 2017/02/12 by Max.Preussner

	MediaUtils: Experimenting with dynamic pitch adjustment

Change 3298987 on 2017/02/13 by Max.Chen

	Editor: Add matrix and transform properties to property editor test object

Change 3298997 on 2017/02/13 by Max.Chen

	Editor: It's now possible to specify Units and ForceUnits meta-data on struct properties
	  - Doing so will cause any child numeric and struct properties to use these units by default (unless another unit was specified)
	  - Added percentage unit type
	  - Multiplier unit types can now be converted between

Change 3298998 on 2017/02/13 by Max.Chen

	Editor: Conversion between multiplier (1.5x)  and percentage (150%) units is now possible

Change 3348678 on 2017/03/15 by Max.Preussner

	Media: Added Buffering media event

Change 3355268 on 2017/03/20 by Max.Preussner

	Core: TQueue documentation updates

Change 3359055 on 2017/03/22 by Max.Preussner

	Portal: Removed dependency to Messaging.h

Change 3359060 on 2017/03/22 by Max.Preussner

	Messaging: Modernization pass

	- added missing includes & forward declarations
	- include what you use
	- deprecated shared pointer typedefs
	- replaced some delegates with callback interfaces
	- documentation fixes

Change 3359189 on 2017/03/22 by Max.Preussner

	Automation: Modernization pass

	- include what you use
	- removed molothic header
	- documentation fixes

	#upgradenotes: IAutomationWorkerModule.h is now in the module's public root directory

Change 3359718 on 2017/03/22 by Max.Preussner

	Messaging: Moved common helper classes into MessagingCommon module

	#upgradenotes:  If you use the common helper classes, replace "Messaging" with "MessagingCommon" in your Build.cs files and remove the "Helpers/" subdirectory from your include statements (unless you actually
include header files from "Messaging", in which case you need to keep "Messaging" and add "MessagingCommon").

Change 3359793 on 2017/03/23 by Max.Preussner

	TargetDeviceServices: Modernization pass

	- include what you use
	- removed boilerplate header
	- deprecated selected shared pointer typedefs
	- reorganized files
	- documentation fixes

Change 3361028 on 2017/03/23 by Max.Preussner

	DeviceManager: Modernization pass

	- include what you use
	- reduced shared pointer typedef usage
	- documentation fixes

Change 3361197 on 2017/03/23 by Max.Preussner

	Messaging: Waking up message router thread on shutdown

Change 3361246 on 2017/03/23 by Max.Preussner

	AutomationWindow: Removed boilerplate header

	#upgradenotes: Replace includes of AutomationWindow.h with IAutomationWindowModule.h

Change 3361428 on 2017/03/23 by Max.Preussner

	AutomationController: Removed boilerplate header

	#upgradenotes: Instead of AutomationController.h, include the individual interface headers that you actually use. Remove the "Interfaces/" subdirectory from existing interface inclusions.

Change 3363206 on 2017/03/24 by Max.Preussner

	ProfileLauncher: Modernization pass

	- include what you use (selected files)
	- reduced shared pointer typedef usages
	- removed dead code
	- cleaned up file organization
	- documentation fixes

Change 3363290 on 2017/03/24 by Max.Preussner

	LauncherServices: Removed boilerplate header

	#upgradenotes: Instead of including LauncherServices.h, include the ILauncherXXX.h files that you actually use. Remove the "Interfaces/" subdirectory from existing ILauncherXXX.h includes

Change 3363305 on 2017/03/24 by Max.Preussner

	LauncherCheck: Removed boilerplate header

	#upgradenotes: Include ILauncherCheckModule.h instead of LauncherCheck.h. Remove "Interfaces/" subdirectory from existing ILauncherCheckModule.h inclusions

Change 3363708 on 2017/03/24 by Max.Preussner

	ImageWrapper: Removed boilerplate header

	#upgradenotes: Instead of including ImageWrapper.h, include the actual IImageWrapperXXX.h files that you use. Remove the "Interfaces/" subdirectory from existing IImageWrapperXXX.h includes

Change 3363966 on 2017/03/24 by Max.Preussner

	ImageWrapper: Modernization pass

	- include what you use
	- reorganized internal files
	- documentation fixes

Change 3364579 on 2017/03/24 by Max.Preussner

	ImageWrapper: Deprecated shared pointer typedef and removed usages

	#upgradenotes: Please use TSharedPtr<IImageWrapper> instead of IImageWrapperPtr

Change 3364582 on 2017/03/24 by Max.Preussner

	NetworkFileSystem: Removed monolithic boilerplate header

	#upgradenotes: Instead of including NetworkFileServer.h, include the INetworkFileXXX.h headers that you actually use. Remove the "Interfaces/" subdirectory from existing INetworkFileXXX.h includes

Change 3381440 on 2017/04/05 by Max.Preussner

	Oculus: Removed illegal pragmas

Change 3391731 on 2017/04/12 by Max.Preussner

	ImgMedia: Added support for BMP, JPG and PNG image sequences

Change 3401146 on 2017/04/19 by Max.Preussner

	Core: Cleanup pass for FTimespan usages; updated documentation

	When initializing time span values from single components, consider using the FromHours, FromMinutes, FromSeconds, Zero, MinValue and related methods instead of calling the overloaded constructors as they will make
your code easier to read and understand.

Change 3401504 on 2017/04/20 by Max.Preussner

	MCP: Fixed incorrect FTimespan usage of GetMilliseconds instead of GetTotalMilliseconds

Change 3401833 on 2017/04/20 by Max.Preussner

	Core: Various improvements to FTimespan

	- added proper serialization
	- updated documentation
	- access fractions as milli-, micro- or nanoseconds
	- removed the following string formatters as they were not useful: %D %H %M %S %F
	- updated documentation

	#upgradenotes: The %D string formatter (previously total number of days) is now the zero-padded days component of the time span. Time spans are now always exported and stringified with a leading plus or minus sign.

	#jira UE-43990
	#jira UE-44163

Change 3437543 on 2017/05/12 by Max.Preussner

	PS4Media: Added audio error codes conversion

Change 3446564 on 2017/05/18 by Max.Preussner

	Networking: Fixed nullpointer crash if socket initialization fails

Change 3459978 on 2017/05/25 by Max.Preussner

	ImgMedia: Renamed frame cache to frame loader

Change 3463311 on 2017/05/26 by Max.Preussner

	Core: Added iterators & predicate based methods to LRU Cache

Change 3464452 on 2017/05/29 by Max.Preussner

	ImgMedia: Added video sample output

Change 3464468 on 2017/05/29 by Max.Preussner

	Media: Added separate cache visualization for loaded and cached samples

Change 3464592 on 2017/05/29 by Max.Preussner

	Core: Added TLruCache::FindAndTouch

Change 3464607 on 2017/05/29 by Max.Preussner

	Core: Added TRange::Inclusive / ::Exclusive

Change 3464608 on 2017/05/29 by Max.Preussner

	Media: Fixed incorrect upper bound in support play rates of various players

Change 3466732 on 2017/05/30 by Max.Preussner

	ImgMedia: Added image compression type to info string

Change 3466871 on 2017/05/31 by Max.Preussner

	WmfMedia: Fixed session capabilities not showing up; added initialization logging

Change 3467785 on 2017/05/31 by Max.Preussner

	MfMedia: Fixed sample stride calculated from media input instead of output


Change 3467963 on 2017/05/31 by Max.Preussner

	WmfMedia: Reordered media sub-type string conversion to fix some tracks being reported incorrectly

Change 3468110 on 2017/05/31 by Max.Preussner

	WmfMedia: Added MPEG-2 media sub types to utils

Change 3468516 on 2017/05/31 by Max.Preussner

	AndroidMedia: Allow mediaplayer audio to be disable on Android (UE-45570)

Change 3468554 on 2017/05/31 by Max.Preussner

	MediaAssets: Added AutoClear option to automatically clear media texture when media is unloaded

Change 3468627 on 2017/05/31 by Max.Preussner

	ImgMedia: Allowing for auto-selection of EXR decoder thread count

Change 3468648 on 2017/05/31 by Max.Preussner

	ImgMedia: Reorganized OpenExrWrapper files

Change 3471789 on 2017/06/02 by Max.Preussner

	WmfMedia: Fixed potential concurrency issue in session state management

Change 3472918 on 2017/06/03 by Max.Preussner

	Core: Allowing zero sized LRU cache; added default constructor

Change 3472919 on 2017/06/03 by Max.Preussner

	Media: Added pre-Slate tick stage; renamed some functions; continued to implement sample caching

Change 3473704 on 2017/06/05 by Max.Preussner

	AndroidMedia: Added settings class

Change 3474407 on 2017/06/05 by Max.Preussner

	AndroidMedia: Implemented video sample processing

Change 3474934 on 2017/06/05 by Max.Preussner

	ImgMedia: Fixed crash due to deleting loader work items twice (UE-45705)

	#jira UE-45705

Change 3476925 on 2017/06/06 by Max.Preussner

	Media: Added return values to media view interface; documentation fixes

Change 3477158 on 2017/06/06 by Max.Preussner

	SwitchMedia: Implemented sample pooling

Change 3477201 on 2017/06/07 by Max.Preussner

	PS4Media: Implemented video sample pooling

Change 3481470 on 2017/06/08 by Max.Preussner

	Media: Fixed time stamps not set in recycled texture samples

Change 3481472 on 2017/06/08 by Max.Preussner

	MediaAssets: Fixed no video samples fetched while player is in buffering state

Change 3481473 on 2017/06/08 by Max.Preussner

	MediaUtils: Added default constructor to MediaSampleQueue

Change 3481584 on 2017/06/08 by Max.Preussner

	MediaUtils: Paused state is considered forward for sample lookup as this is the common case.

Change 3481588 on 2017/06/08 by Max.Preussner

	PS4Media: Redesigned the PS4 media player to support async file loading & track switching

Change 3481627 on 2017/06/08 by Max.Preussner

	PS4Media: Opening media sources in thread pool if not precaching

Change 3481666 on 2017/06/08 by Max.Preussner

	ImgMedia: Fixed SequencePath property file picker always opening default path

Change 3481669 on 2017/06/08 by Max.Preussner

	ImgMedia: Fixed crash when quering cache state of empty image sequence

Change 3481685 on 2017/06/08 by Max.Preussner

	ImgMedia: Fixed EXR reader failing to play slow loading sequences (UE-45719)

	#jira UE-45719

Change 3483623 on 2017/06/10 by Max.Preussner

	Media: Added getters for 360 view settings; added support for relative view updates

Change 3483624 on 2017/06/10 by Max.Preussner

	Media: Added Blueprint support for 360 videos

Change 3483626 on 2017/06/10 by Max.Preussner

	MediaPlayerEditor: Added 360 video mouse controls; broke out viewport widget into separate class.

Change 3483627 on 2017/06/10 by Max.Preussner

	Core: Using system start time instead of current time for renamed log file names

Change 3483630 on 2017/06/10 by Max.Preussner

	Core: Grouping log files by log name and processing each group separately when deleting old log files

Change 3483816 on 2017/06/10 by Max.Preussner

	WmfMedia: Detecting audio device availability to prevent lockup of audio tracks

Change 3483939 on 2017/06/11 by Max.Preussner

	AvfMedia: Finished Media Framework 3.0 upgrade

	- overhauled track switching
	- removed render thread flushes
	- reduced nesting
	- code cleanup pass

Change 3483940 on 2017/06/11 by Max.Preussner

	Media: Consistent track switching behavior across platforms

Change 3484172 on 2017/06/11 by Max.Preussner

	MediaPlayerEditor: Removed obsolete asset type actions

Change 3484180 on 2017/06/11 by Max.Preussner

	MediaPlayerEditor: Fixed media player info overlays not visible during mouse capture

Change 3484248 on 2017/06/11 by Max.Preussner

	MediaAssets: Media players now always have a playlist

Change 3484249 on 2017/06/11 by Max.Preussner

	MediaPlayerEditor: Added UI controls to Playlist tab

Change 3484250 on 2017/06/11 by Max.Preussner

	Media: Implemented overlay sample caching

Change 3484252 on 2017/06/11 by Max.Preussner

	WmfMedia: Enabled support for .smi and .sami subtitle files

Change 3485433 on 2017/06/12 by Max.Preussner

	ImgMedia: Enabled plug-in on all platforms; enabled EXR only on platforms that support it

Change 3485720 on 2017/06/12 by Max.Preussner

	MediaPlayerEditor: Added ability to save playlists

Change 3485828 on 2017/06/12 by Max.Preussner

	AvfMedia: Thread-safe ticking of video sampler; ticking audio processing on high frequency thread

Change 3485926 on 2017/06/12 by Max.Preussner

	MediaUtils: Draining all unconsumed samples at the end of a frame

Change 3486043 on 2017/06/12 by Max.Preussner

	Media: Consistent behavior for playlist navigation (UE-45964)

	#jira UE-45964

Change 3486104 on 2017/06/12 by Max.Preussner

	MediaPlayerEditor: Implemented simple overlay text positioning

Change 3486145 on 2017/06/12 by Max.Preussner

	AndroidMediaPlayer: Moved video sample handling into render thread

Change 3486147 on 2017/06/12 by Max.Preussner

	MediaPlayerEditor: Moved overlay texts into separate layer

Change 3486188 on 2017/06/12 by Max.Preussner

	Media: Enabling media factory modules in Editor for all players

Change 3486223 on 2017/06/12 by Max.Preussner

	Media: Defaulting players to select first audio and video tracks by default

Change 3486473 on 2017/06/13 by Max.Preussner

	Media: Buffering is no longer a media player state, but handled separately (for players that can buffer while playing)

Change 3486475 on 2017/06/13 by Max.Preussner

	MediaPlayerEditor: Showing busy bar when buffering or preparing

Change 3487237 on 2017/06/13 by Max.Preussner

	AndroidMedia: Fixed video sample not getting processed on render thread

Change 3487507 on 2017/06/13 by Michael.Trepka

	AvfMedia - small cleanup of the code for passing video frame rate to the video sampler

Change 3487719 on 2017/06/13 by Michael.Trepka

	Disable shared PCH in OpenExrWrapper to solve a problem with bUseRTTI mismatch between the module and the PCH

Change 3487842 on 2017/06/13 by Max.Preussner

	AndroidMedia: Fixed texture swizzle disabled on non-Engine builds

Change 3488006 on 2017/06/13 by Michael.Trepka

	AvfMedia - Moved some logic from FAvfMediaPlayer::TickTickable() to FAvfMediaTracks::ProcessAudio() to make it thread safe, plus fixed a bug with the player not setting the current status to Stopped after opening a
file

Change 3488308 on 2017/06/13 by Chris.Babcock

	AndroidMedia: Fixed flicker issue
	#jira UE-45736

Change 3488335 on 2017/06/13 by Max.Preussner

	MediaAssets: Made UFileMediaSource::GetFullPath public

Change 3488338 on 2017/06/13 by Max.Preussner

	MediaPlayerEditor: Fixed "Show file in Explorer" not working for file media sources

Change 3488339 on 2017/06/13 by Max.Preussner

	MediaPlayerEditor: Showing a throbber when buffering player

Change 3488768 on 2017/06/14 by Max.Preussner

	Core: Inlined FTimespan static functions

hange 3490203 on 2017/06/14 by Max.Preussner

	Core: Force inlined TComPtr operators

Change 3494083 on 2017/06/15 by Chris.Babcock

	AndroidMedia: Fix playlist looping (send PlaybackEndReached event)
	#jira UE-46086

Change 3497017 on 2017/06/16 by Max.Preussner

	MediaAssets: Playlists now auto advance with PlayOnOpen off

Change 3497075 on 2017/06/17 by Chris.Babcock

	MediaPlayer Sampler node and external texture support for Android MediaPlayer
	- enable with USE_EXTERNALTEXTURE in AndroidMediaPlayer.cpp (disabled in this CL)
	- supports MediaSample node in material editor with scale/bias handled if above flag enabled
	- fixed looping problems, including eventual crashes
	- track switching fixed (lockups and missing video)
	- corrected resource leaks and crash switching maps
	#jira UE-46055
	#jira UE-45744
	#jira UE-46086

Change 3497163 on 2017/06/17 by Max.Preussner

	MediaUtils: Processing media events immediately if on game thread

Change 3497170 on 2017/06/17 by Max.Preussner

	Media: All Media Framework interfaces are pure virtual

Change 3498603 on 2017/06/19 by Ben.Marsh

	UBT: Prevent plugins which list modules multiple times from adding them twice.

Change 3500870 on 2017/06/20 by Max.Preussner

	WmfMedia: Rewrote WMF state machine; now with track switching

	#jira UE-20209
	#jira UE-35385
	#jira UE-38337
	#jira UE-45676

Change 3502181 on 2017/06/20 by Chris.Babcock

	MediaSampler node updates
	- fixed issue with ExternalTexture singleton for DLL compatiblity
	- now works for all players (registers texture samples with ExternalTexture by player GUID)
	- enabled OES in AndroidMediaPlayer now that materials can universally use the MediaSampler

Change 3503182 on 2017/06/21 by Max.Preussner

	Media: Refactored status flags into an enum; exposed connecting status

Change 3503724 on 2017/06/21 by Chris.Babcock

	Improvement in MediaPlayer Sampler node
	- RGB, R, G, B, A output pins like normal texture sampler
	- allow preview in material editor
	- fix OES detection for Android

Change 3509088 on 2017/06/26 by Max.Preussner

	MediaAssets: Added AddFile and AddUrl to UMediaPlaylist

Change 3510256 on 2017/06/26 by Max.Preussner

	WmfMedia: Fixed play rate not set to zero when end reached

Change 3510273 on 2017/06/26 by Max.Preussner

	MediaPlayerEditor: Removed obsolete Slate culling rectangle code

Change 3510413 on 2017/06/26 by Max.Preussner

	MediaPlayerEditor: Showing frame rate if available

Change 3510533 on 2017/06/26 by Max.Preussner

	MediaUtils: Preventing media cache filling up when scrubbing

Change 3510859 on 2017/06/26 by Max.Preussner

	PS4Media: Fixed track switching crashes (UE-45960)

	#jira UE-45960

Change 3514173 on 2017/06/28 by Max.Preussner

	WmfMedia: Optimized player capabilities check

Change 3514174 on 2017/06/28 by Max.Preussner

	WmfMedia: Moved media source resolver code into utility class

Change 3514714 on 2017/06/28 by Max.Preussner

	Core: Added TComPointer.IsValid; code cleanup pass

Change 3517912 on 2017/06/30 by Max.Preussner

	MediaUtils: Added GetVideoAspectRatio to player facade

Change 3524957 on 2017/07/06 by Max.Preussner

	ImgMedia: Decoding image frames only when video track is selected

Change 3525252 on 2017/07/06 by Max.Preussner

	ImgMedia: Async image sequence initialization

Change 3525266 on 2017/07/06 by Max.Preussner

	ImgMedia: Enabled reverse playback

Change 3525722 on 2017/07/06 by Max.Preussner

	WmfMedia: Workaround for occasional WMF internal deadlock in IMFRateSupport

Change 3525800 on 2017/07/07 by Max.Preussner

	WmfMedia: Fixed another WMF deadlock issue & some rate change glitches; improved logging.

Change 3525801 on 2017/07/07 by Max.Preussner

	MediaPlayerEditor: Made scrubbing more responsive

Change 3526500 on 2017/07/07 by Max.Preussner

	WmfMedia: Using NULL for Windows pointers

Change 3527323 on 2017/07/07 by Max.Preussner

	WmfMedia: Added support for audio and video capture media sources

Change 3530197 on 2017/07/10 by Max.Preussner

	WmfMedia: Added utility functions for enumerating audio and video capture devices

Change 3533465 on 2017/07/12 by Max.Preussner

	Media: Added media capture device support API & implementation for WMF

Change 3533469 on 2017/07/12 by Max.Preussner

	MediaPlayerEditor: Added source selection menu w/ capture device menu to navigation bar

Change 3533540 on 2017/07/12 by Max.Preussner

	MediaAssets: Blueprint support for media capture device discovery

Change 3533574 on 2017/07/12 by Max.Preussner

	WmfMedia: Using cached supported play rates; more strict pausing support check

Change 3533924 on 2017/07/12 by Max.Preussner

	WmfMedia: Added global LowLatency setting (UEVR-859)

	Note that this setting is only supported when compiling for Windows 8 or newer.

Change 3534027 on 2017/07/12 by Max.Preussner

	WmfMedia: Compile time support for low latency session attribute on < Windows8

	#jira UEVR-859

Change 3538744 on 2017/07/14 by Max.Preussner

	MediaUtils: Renamed FDefaultMediaTimeSource to FAppMediaTimeSource

Change 3542818 on 2017/07/18 by Max.Preussner

	WmfMedia: Fixed race condition on session shutdown

Change 3543082 on 2017/07/18 by Max.Preussner

	WmfMedia: Fixed track selection in media that doesn't support seeking

Change 3543092 on 2017/07/18 by Max.Preussner

	Media: Implemented media track format API

	Enables multiple formats per media track. By default, the first usable format is selected.
	This feature is currently only implemented for WmfMedia. All other players assume a single format per track.

Change 3543794 on 2017/07/19 by Max.Preussner

	WmfMedia: Added string conversion for null GUIDs

Change 3543796 on 2017/07/19 by Max.Preussner

	MfMedia: Copied GUID string conversion updates from WmfMedia

Change 3543797 on 2017/07/19 by Max.Preussner

	WmfMedia: Preventing duplicate track formats in capture devices with legacy DirectX support

Change 3544390 on 2017/07/19 by Max.Preussner

	Media: Allowing INDEX_NONE as 'current selection' index in track format related functions

Change 3545368 on 2017/07/19 by Max.Preussner

	WmfMedia: Fixed session error with some media sources when attempting to seek to current position without ever starting

Change 3545388 on 2017/07/19 by Max.Preussner

	MediaAssets: Fixed RGB input sources rendered upside down

Change 3545430 on 2017/07/19 by Max.Preussner

	MediaAssets: Fixed incorrect sRGB conversion on BMP inputs

Change 3547362 on 2017/07/20 by Max.Preussner

	Core: Added IsGraph and IsPrint to TCHAR utilities

Change 3547376 on 2017/07/20 by Max.Preussner

	WmfMedia: Better log messages for non-standard video types (UE-47533)

	#jira UE-47533

Change 3547404 on 2017/07/20 by Max.Preussner

	QAGame: Enabled PlayOnOpen and Looping on MediaPlayerSwitch BP (UE-47542)

	#jira UE-47542

Change 3547466 on 2017/07/20 by Max.Preussner

	WmfMedia: Fixed edge case for detecting whether pause is available

Change 3548742 on 2017/07/21 by Max.Preussner

	Media: Added API for changing the input frame rate

Change 3548743 on 2017/07/21 by Max.Preussner

	WmfMedia: Implemented ability to change input frame rate

Change 3554411 on 2017/07/25 by Max.Preussner

	AudioMixer: Broke out SynthComponent initialization code; added bIsUISound property

Change 3554818 on 2017/07/25 by Max.Preussner

	Media: Added per track-type cache queries

Change 3557284 on 2017/07/26 by Max.Preussner

	WmfMedia: Added buffer size check in texture sample as well

Change 3560530 on 2017/07/27 by Max.Preussner

	WmfMedia: Made COM object destructors private and added assertions

Change 3560580 on 2017/07/27 by Max.Preussner

	MediaUtils: Added method for querying number of objects in pool

Change 3562572 on 2017/07/28 by Max.Preussner

	WmfMedia: Properly handling topology status errors when opening media

Change 3576710 on 2017/08/08 by Chris.Babcock

	bug fixes for mediaplayer
	- rare cases in Android media tracks
	- make FMediaCaptureDevice members available in blueprints

Change 3577736 on 2017/08/08 by Chris.Babcock

	Extend ExternalTexture to support 2x3 transform (scale/rotation + offset)

Change 3578831 on 2017/08/09 by Max.Preussner

	MediaAssets: Made media sound component BP spawnable

Change 3579210 on 2017/08/09 by Max.Preussner

	UdpMessaging: Not showing warning message if tunnel settings left empty to use defaults

Change 3579547 on 2017/08/09 by Chris.Babcock

	Better support for Android external texture detection

Change 3579567 on 2017/08/09 by Chris.Babcock

	Android camera plugin
	#jira UEMOB-215

Change 3580035 on 2017/08/10 by Andrew.Rodham

	Media Texture: External textures are now fully supported and enforced when attempting to sample external texture types in materials.
	  - Textures can now dynamically provide an external texture GUID at runtime, which is queried by the uniform expression. Statically defined GUIDs remain supported.
	  - Added necessary ExternalTexture(Parameter) methods to the material compiler and HLSL translator
	  - Made UTexture::GetMaterialType const-correct

	#tests Test map that contains TextureObject, TextureObjectParameter, TextureSample and TextureSampleParameter nodes with media textures works on both a Nexus 10 (non-image-external), and a Pixel (image-external),
and on desktop PC.

Change 3581552 on 2017/08/10 by Chris.Babcock

	Use bilinear sampling instead of point for external texture (Android media and camera)

Change 3581628 on 2017/08/10 by Max.Preussner

	Core: Fixed FTimespan import/export/copypaste (UE-43990)

	#jira UE-43990
	#jira UE-44163

Change 3581909 on 2017/08/11 by Andrew.Rodham

	Media: Only cache material proxy pointers if they have been initialized (and thus, will be removed from the cache on release)
	  - This prevents destroyed proxies from remaining in the texture registry

	#jira UE-48307

Change 3582451 on 2017/08/11 by Max.Preussner

	AudioMixer: Fixed initialization order of synth components

	This ensures that the Synth is initialized before OnRegister in the super class initializes and activates the AudioComponents. Previously, the AudioComponent would fail to activate, because Synth was nullptr.

	#jira UE-48055

Change 3582453 on 2017/08/11 by Max.Preussner

	MediaAssets: Enabling ticking in media sound component (UE-48055)

	#jira UE-48055

Change 3583101 on 2017/08/11 by Chris.Babcock

	Android camera improvements
	- return correct capture device type (webcamfront/rear)
	- remove seek (not supported)
	- support track formats
	- better framerate selection

Change 3590109 on 2017/08/16 by Chris.Babcock

	Move external texture coordinate update to improve accuracy and save a uniform in final shader

Change 3590530 on 2017/08/16 by Max.Preussner

	MediaAssets: Changed capture device enumeration BP function signatures to allow filter bit masks

	#jira UE-48166

Change 3590547 on 2017/08/16 by Max.Preussner

	MediaPlayerEditor: Ticking sound component directly

Change 3590628 on 2017/08/16 by Max.Preussner

	Switch: Fixed media decoder asserting when attempting to pause without having started

Change 3591816 on 2017/08/16 by Aaron.McLeran

	#jira UE-48470 Disabling async processing for procedural sound waves on mac.

Change 3592266 on 2017/08/16 by Max.Preussner

	Media: Replaced media cache with the new sample processing pipeline; continued to implement MfMedia

	This change fixes stuttering issues with audio and video. However, proper pipeline flushing is not fully implemented yet, so the playback will break after the first playthrough, which might result in freeze frames
or out of memory assertions depending on the platform. This will be addressed in an upcoming change.

	#jira UE-48474
	#jira UE-45677

Change 3592355 on 2017/08/17 by Max.Preussner

	MediaUtils: Added sample sink collection to remove code duplication

Change 3592739 on 2017/08/17 by Max.Preussner

	ImgMedia: Fetching only one video sample per frame

Change 3592741 on 2017/08/17 by Max.Preussner

	MediaUtils: Better sample fetching when paused

Change 3592761 on 2017/08/17 by Max.Preussner

	MediaUtils: Fixed overflow detection in sample sinks

Change 3592762 on 2017/08/17 by Max.Preussner

	ImgMedia: Sending end reached event when looping

Change 3592885 on 2017/08/17 by Max.Preussner

	ImgMedia: Fixed reverse play

Change 3592887 on 2017/08/17 by Max.Preussner

	MediaUtils: Better sample range calculation for audio samples

Change 3593010 on 2017/08/17 by Max.Preussner

	ImgMedia: Fixed async loading of non-EXR image sequences

Change 3593193 on 2017/08/17 by Max.Preussner

	AndroidMedia: Fixed typo

Change 3593230 on 2017/08/17 by Max.Preussner

	Media: Implemented flushing for player sample queues

Change 3593346 on 2017/08/17 by Max.Preussner

	Media: Proper sample processing for reverse playback

Change 3593482 on 2017/08/17 by Max.Preussner

	Switch: Fixed sample range check for reverse playback

Change 3594428 on 2017/08/17 by Max.Preussner

	PS4Media: Fixed video not playing/crashing

	#jira UE-48547
	#jira UE-48549

Change 3595404 on 2017/08/17 by Max.Preussner

	MediaAssets: Not requesting audio samples if not playing

	#jira UE-48557

Change 3595624 on 2017/08/17 by Max.Preussner

	PS4Media: Fixed no looping after track switching

	#jira UE-46524
	#jira UE-48557

Change 3595704 on 2017/08/17 by Max.Preussner

	MediaUtils: Improved sample queue flushing

	Eventually this needs to be event-driven.

	#jira UE-48557

Change 3595706 on 2017/08/17 by Max.Preussner

	PS4Media: Flushing queues when track switching

	#jira UE-48557

Change 3595909 on 2017/08/17 by Max.Preussner

	Matinee: Fix Matinee redirect missing as UClass has been GC'ed (GitHub PR #3382)

	https://github.com/EpicGames/UnrealEngine/pull/3382

	#jira UE-42906
	#rn Fix Matinee redirect missing as UClass has been GC'ed (GitHub PR #3382)

Change 3597480 on 2017/08/18 by Max.Preussner

	ImgMediaPlayer: Fixed presentation time calculation for very large delta times

Change 3597669 on 2017/08/18 by Max.Preussner

	ImgMedia: Setting player stopped instead of paused when end reached

Change 3597709 on 2017/08/18 by Max.Preussner

	SwitchMedia: Fixed audio sample duration calculation

Change 3598479 on 2017/08/18 by Max.Preussner

	ImgMedia: Ensuring that first/last frame is played when starting playback forward/reverse; improved state checking; user logging

Change 3598629 on 2017/08/18 by Max.Preussner

	MediaUtils: Properly handling pending flushes when peeking sample queues

Change 3598633 on 2017/08/18 by Max.Preussner

	WmfMedia: Fixed occasional WMF deadlock when scrubbing

Change 3598653 on 2017/08/18 by Max.Preussner

	MediaUtils: Fixed audio resampling in reverse playback

Change 3598659 on 2017/08/18 by Max.Preussner

	MediaPlayerEditor: Creating sound output only if audio device available

Change 3598688 on 2017/08/18 by Max.Preussner

	MediaUtils: Flushing sample queues on direction change regardless of paused state

Change 3599444 on 2017/08/20 by Max.Preussner

	WmfMedia: Added missing check for rate control when quering supported rates

Change 3603661 on 2017/08/22 by Max.Preussner

	WmfMedia: Fixed NV12 output

Change 3604345 on 2017/08/23 by Max.Preussner

	MediaUtils: Added subtitle samples to media sample collection; fixed documentation

Change 3604987 on 2017/08/23 by Max.Preussner

	PS4Media: Setting correct track format types

Change 3605117 on 2017/08/23 by Joe.Barnes

	Fix issue where presentation time was being treated as milliseconds instead of microseconds.

Change 3605128 on 2017/08/23 by Joe.Barnes

	Fix potential issue calculating total (looped) play time after seek or reset.
	Track last video presentation time

Change 3605139 on 2017/08/23 by Joe.Barnes

	Support audio type DType_Setup.
	Fix issue with procedural sounds popping. Consume more samples if necessary.

	#jira ue-48544

Change 3605197 on 2017/08/23 by Max.Preussner

	Media: Fixed track display name formatting (UE-48767)

	#jira UE-48767

Change 3605817 on 2017/08/23 by Max.Chen

	Auto set sampler type on drop on actor.

	#jira UE-48769

Change 3605999 on 2017/08/23 by Max.Preussner

	MfMedia: Restarting source reader when switching tracks

	#jira UE-48766

Change 3606416 on 2017/08/23 by Max.Preussner

	PS4Media: Various player improvements

	#jira UE-48586

Change 3607656 on 2017/08/24 by Max.Preussner

	WmfMedia: Improved logging for Seek and SetRate

Change 3607855 on 2017/08/24 by Max.Preussner

	MfMedia: Better verbose logging; validating seeks; reduced nesting; fixed track switching\

	#jira UE-48766

Change 3608029 on 2017/08/24 by Max.Preussner

	PS4Media: Fixed streaming media not playing; improved result checks & logging

	#jira UE-48610

Change 3608473 on 2017/08/24 by Max.Preussner

	MfMedia: Fixed audio sample duration calculation

	#jira UE-48756

Change 3609316 on 2017/08/24 by Chris.Babcock

	Provide external texture RotationScale and Offset from sample

Change 3610067 on 2017/08/25 by Richard.Wallis

	Mac: Editor locks up when Track switching and Mac: Media Audio continues to play after closing player.

	- Fix for creating extra OS AV media playback objects so audio playback not stopping due to over retained objects.
	- Trying to access OS AV Media Playback object (esp. the currentTime value) across mutliple threads at once seems to cause deadlock in the Apple libraries - moved location of currentTime acess point to Media Ticker
- this sets the current time and is then just returned in the getter when on game main.
	- Trying to playback audio via OS media playback and through the engine at the same time when enabling the selected audio track.  Engine version via sample buffers via AVAssetReaderTrackOutput doesn't seem to be
working as intended with the new audio frame work audio sinks - so reverting to OS AV media playback for Mac at the moment until better fix for this can be put in.

	#jira UE-48590, UE-48604

Change 3610267 on 2017/08/25 by Max.Preussner

	PS4Media: Added missing track selection validation

	#jira UE-48765

Change 3610399 on 2017/08/25 by Max.Preussner

	PS4Media: Fixed infinite player re-initialization loop if track selection failed

Change 3610809 on 2017/08/25 by Chris.Babcock

	Fixes for Android media player and camera player
	- buffer samples copy proper bytecount
	- realloc sets new buffer ptr
	- refcount of Java buffers fixed

Change 3610953 on 2017/08/25 by Chris.Babcock

	Fix audio disable before play on Android media player

Change 3611405 on 2017/08/25 by Max.Preussner

	WmfMedia: Resetting supported rates if RateSupport unavailable

Change 3611406 on 2017/08/25 by Max.Preussner

	MfMedia: Resetting supported rates if RateSupport unavailable

Change 3611453 on 2017/08/25 by Chris.Babcock

	Android external texture extension updates for compatibility

Change 3611719 on 2017/08/26 by Max.Preussner

	Media: Added media event for completed seek operations; flushing sinks on seek

Change 3611764 on 2017/08/26 by Max.Preussner

	AvfMedia: Setting player to preparing state prior to initializing tracks asynchronously

Change 3611802 on 2017/08/26 by Max.Preussner

	Media: Exposed error state in media player

Change 3611803 on 2017/08/26 by Max.Preussner

	MediaPlayerEditor: Showing error state in UI

Change 3611887 on 2017/08/26 by Max.Preussner

	MediaUtils: Corrected media sample sink overflow check

Change 3611892 on 2017/08/27 by Max.Preussner

	WmfMedia: Leaving session in error state after error

Change 3611929 on 2017/08/27 by Max.Preussner

	MediaPlayerEditor: Fixed sound stopping on looping

Change 3611930 on 2017/08/27 by Max.Preussner

	MfMedia: Rewrote async sample processing to fix various playback issues

Change 3611942 on 2017/08/27 by Max.Preussner

	Media: Sending suspension event when playback ended

Change 3611957 on 2017/08/27 by Max.Preussner

	UnrealEd: Allowed transient assets to be resaved to disk

Change 3611981 on 2017/08/27 by Max.Preussner

	PS4Media: Rewrote sample processing to fix various playback issues

	#jira UE-48596
	#jira UE-48793

Change 3612035 on 2017/08/27 by Max.Preussner

	UnrealEd: Picking standard default names when resaving transient packages

Change 3612045 on 2017/08/27 by Max.Preussner

	Media: Fixed playlists not getting saved correctly from Editor (UE-35382)

	#jira UE-35382

Change 3612212 on 2017/08/28 by Richard.Wallis

	Fix for Multitrack Video samples continue to Play on Open after Play on Open is toggled off.  Current Rate was not getting reset back to 0.0 on media close.

	#jira UE-47602

Change 3613531 on 2017/08/28 by Max.Preussner

	MediaAssets: Fixed external texture related crash on shutdown (UE-48918)

	Also no longer creating clock sink for media player CDO

	#jira UE-48918

Change 3613677 on 2017/08/28 by Andrew.Porter

	Fixed crash at exit in Mac editor caused by double release of AVPlayerItem object

	#jira UE-48937

Change 3615917 on 2017/08/29 by Max.Preussner

	MfMedia: Added compile options for DXVA and falling back to synchronous sample reading

[CL 3617655 by Max Chen in Main branch]
2017-08-30 09:37:09 -04:00
Andrew Grant
691342e35a Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 3606378)
#lockdown Nick.Penwarden
#rb na


Change 3604978 on 2017/08/23 by Andrew.Grant

	Fix for OR-42722 from 4.17 branch

	#!tests compiled
	#!rb max.chen

Change 3604960 on 2017/08/23 by Andrew.Grant

	Proper fix for OR-43001, removed hack-around.

	#!tests compiled
	#!rb max.chen

Change 3604881 on 2017/08/23 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Changed LostReservation message in tests to info from warning.

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3604871 in //Orion/Release-42.3/... via CL 3604878 via CL 3604880
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3604566 on 2017/08/23 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Gauntlet - return -1 for a test if there's a fatal error. Removed network errors failing tests (should be down to test to determine)

	Made SoakTest better able to detect failed drafts and incomplete matches

	#!tests ran multiple soaks and SoloAllHeroes
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3604560 in //Orion/Release-42.3/... via CL 3604563 via CL 3604565
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3604181 on 2017/08/23 by David.Ratti

	Set ULandscapeHeightfieldCollisionComponent to be NetAddressable so that it can be replicated as a movement base without error.

	OR-42615
	#!rb none
	#!tests pie

Change 3603647 on 2017/08/22 by Laurent.Delayen

	AnimProxy: initialize Actor/Component transforms.

	#!rb none
	#!tests lane minion test map

Change 3603343 on 2017/08/22 by robomerge

	#!ROBOMERGE-AUTHOR: don.eubanks
	Added several more stats to the Card Shop stat panel.
	  + Basic Attack Damage
	  + Max Move Speed
	  + Armor Penetration / Percent
	  + Ability Penetration / Percent

	Added utility function to AbilitySystemComponent to calculate an ability's value with additional Required/Ignore tags and Target tag container (functionality moved from AttributeView)

	#!rb matt.schembari
	#!tests Compile DebugGame Editor Win64 / Shipping Client PS4 / PIE

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

Change 3603121 on 2017/08/22 by Laurent.Delayen

	Added FAnimationRuntime::LerpPosesPerBone

	#!rb none
	#!tests lane minions split body anims.

Change 3603010 on 2017/08/22 by Laurent.Delayen

	Draw box around Actor being debugged by 'ShowDebug' command, to help identify what we're viewing.

	#!rb none
	#!tests lane minions

Change 3602574 on 2017/08/22 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fixed linux warning

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3602571 in //Orion/Release-42.3/... via CL 3602572
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3602396 on 2017/08/22 by andrew.grant

	#!CodeReview: andrew.grant, jason.bestimt, jeff.williams

	Unresolved conflicts. andrew.grant, please merge this change by hand.
	//ROBOMERGE_ORION_Dev_General/Engine/Source/Programs/AutomationTool/NotForLicensees/Gauntlet/Gauntlet.Automation.csproj

	--------------------------------------
	Updated Gauntlet log parser for new callstack format
	Added offline and runtime Gauntlet tests to verify error generation and parsing

	#!tests ran lots of tests locally
	#!rb codereviewed

	#!ROBOMERGE-SOURCE: CL 3601948 in //Orion/Release-42.3/... via CL 3601950
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3602373 on 2017/08/22 by Andrew.Grant

	Fixed compile error

	#!tests compiled
	#!rb none

Change 3602321 on 2017/08/22 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	LogAssertFailedMessage
	- Removed callstack dumping from LogAssertFailedMessage (now in StaticFailDebug)
	- Moved script dumping inside GIsCritial check

	StaticFailDebug
	- Now dumps the callstack if supported for non-ensures. This results in PS4 (and other platforms) now displaying a callstack on a Fatal log.
	- Removed log flush, was redundant
	- Removed LowLevelOutputDebugStringf. If a platform needs this it can be done later in its error device

	OutputMultiLineCallstack
	- Renamed to FDebug::LogFormattedMessageWithCallstack and exposed in headers (calling locations have been updated to remove their extern declarations)
	- No longer writes into the buffer to format it (!)
	- LogName is now the first param. If NAME_None it writes using LowLevelOutputDebugString
	- While writing out error information all callstack likes are prefixed with [Callstack]

	Added brief documentation about the order of ops for ensures/asserts/fatal logs

	#!tests ran lots of tests locally
	#!rb codereviewed

	#!ROBOMERGE-SOURCE: CL 3601943 in //Orion/Release-42.3/... via CL 3601944
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3602316 on 2017/08/22 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Changed various platform-specific implementations of ProgramCounterToHumanReadableString to return info in a canonical format of address module!func [file:line].

	E.g.

	0x00416A5F OrionClient.self!FEngineLoop::Tick() [D:\Epic\Orion\Release-Next\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:3295]

	#!tests ran lots of tests locally
	#!rb codereviewd

	#!ROBOMERGE-SOURCE: CL 3601940 in //Orion/Release-42.3/... via CL 3601941
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3602311 on 2017/08/22 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Sony don't allow exception handling on PS4 so for sometime we've had an issue where crashes have no presence in logs*

	This change adds postmortem analysis to PS4DevkitUtil. If the OS terminates the process then it process the minidump and writes the cause and the callstack to stdout. As a bonus PS4DevkitUtil can now display cause & callstacks from minidumps via "PS4DevkitUtil postmortem -dump=path\to\crash.orbisdmp"

	 (*if you're lucky the kit may have been setup correctly to submit dumps to crashreporter, it may have actually worked, and you may be able to find it).

	#!tests run many times on Orion tests
	#!rb CR

	#!ROBOMERGE-SOURCE: CL 3601929 in //Orion/Release-42.3/... via CL 3601930
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3599823 on 2017/08/21 by Jian.Ru

	Allow MaxCascades cvar be set to 0 (should perobject shadow be forced on?)
	#!jira UE-48468,OR-42749
	#!rb Daniel.Wright
	#!tests editor

Change 3598765 on 2017/08/19 by Andrew.Grant

	Disable regeneration of missing cubemap data in cooked build.

	Need some way of handling this, but currently this breaks PS4 anytime someone makes a map change and doesn't build lighting...

	#!review-3598766 @daniel.lamb
	#!tests ran PS4 successfully
	#!rb none

Change 3597800 on 2017/08/18 by Laurent.Delayen

	Added FAnimationRuntime::LerpPoses. Blends two poses together, but first pose is also storing results. To save on copying poses when not necessary.
	Removed individual use of ZERO_ANIMWEIGHT_THRESH, instead use FAnimWeight functions.
	FAnimationRuntime weight functions use FAnimWeight for consistency. (IsFullWeight was different).

	#!rb none
	#!codereview martin.wilson, lina.halper
	#!tests minion test lane map

Change 3597332 on 2017/08/18 by Laurent.Delayen

	SkelMeshComponent LOD update only refreshes transforms when rendered.
	If AnimGraph eval is done, make sure Graph has been updated at least once.

	Fixes:
	- Significance Manager setting MinLOD on non recently rendered minions, causing them to refresh bones.
	-  Minions calling eval with graph not updated due to having bUseRefPoseOnInitAnim set. It means it's possible to refresh bones on a graph that has never been updated, causing a crash.

	#!rb martin.wilson, lina.halper
	#!codereview martin.wilson, lina.halper
	#!tests minions test lane map. placing skelmeshes in editor and making sure LOD update works as expected.

Change 3597042 on 2017/08/18 by Daniel.Lamb

	Added onlinesubsystemmcp to the cooksettings blacklist.
	#!rb Trivial
	#!test none

Change 3596575 on 2017/08/18 by Shaun.Kime

	Fixing nonunity build issues

	#!rb none
	#!tests compiled OrionGame with unity builds disabled

Change 3595475 on 2017/08/17 by Andrew.Grant

	Fixed issue with PS4 asserts not being detected during test shutdown

	#!tests ran locally
	#!rb none

Change 3595415 on 2017/08/17 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Added check for network failure to tests

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3595412 in //Orion/Release-42.3/... via CL 3595414
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3594725 on 2017/08/17 by Ben.Salem

	Add "Worst offenders" table and runtime to FX perf reports.
	#!rb adric.worley
	#!tests Ran a few FX Perf tests and generated reports.

Change 3594195 on 2017/08/17 by Shaun.Kime

	Integration from Dev-Niagara to Dev-General. Note that this may cause assets to need to be recooked. Please be prepared for longer than normal cook times once syncing past this changelist.

	#!rb none
	#!tests preflight'ed change, QA ran multiple soak tests

Change 3594177 on 2017/08/17 by Andrew.Grant

	Fixed issue that was causing exceptions not to be recognized

	#!tests ran locally
	#!rb none

Change 3594090 on 2017/08/17 by robomerge

	#!ROBOMERGE-AUTHOR: laurent.delayen
	Fix for mesh desyncing during online play.
	https://jira.it.epicgames.net/browse/UE-45947

	#!rb none
	#!tests none
	[CODEREVIEW] zak.middleton

	#!ROBOMERGE-SOURCE: CL 3590625 in //Orion/Release-42.3/... via CL 3590626
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3594022 on 2017/08/17 by Laurent.Delayen

	SkeletalMeshComponent::InitAnim
	- Do not call RefreshBoneTransforms without calling TickAnim first. AnimGraph could get in a bad state.
	- Do not call RefreshBoneTransforms if AnimInstance has not been initialized.
	- Do not call RefreshBoneTransforms if bUseRefPoseOnInitAnim is set. Which it could if bForceReinit was false.

	#!rb martin.wilson
	#!tests minion test lane map.

Change 3593972 on 2017/08/17 by Chris.Bunner

	Duplicating instanced static mesh fixes from Dev-Editor - 3502581, 3570934, 3593597.
	#!rb None
	#!tests Editor, -game, PC
	#!jira UE-48521, OR-42612

Change 3590611 on 2017/08/16 by David.Ratti

	Spot edigrate CL 3584203 to fix show collision crash in mono 2
	#!rb none
	#!tests compile

Change 3590452 on 2017/08/16 by Laurent.Delayen

	Fix for mesh desyncing during online play.
	https://jira.it.epicgames.net/browse/UE-45947

	#!rb none
	#!tests none
	#!codereview zak.middleton

Change 3590378 on 2017/08/16 by Laurent.Delayen

	Integrated CL #!3585145 from Main.

	>>
	Fix for https://jira.it.epicgames.net/browse/OR-42337 and https://jira.it.epicgames.net/browse/OR-42338
	Don't call UpdateMontageSyncGroup() when doing EMeshComponentUpdateFlag::OnlyTickMontagesWhenNotRendered.
	Fixed auto ranged iterator.

	#!rb none
	#!tests bot match with Twinblast
	<<

Change 3590263 on 2017/08/16 by Matt.Kuhlenschmidt

	Added the ability to remove vertex colors from static meshes from the content browser

	#!rb none
	#!tests none
	#!fyi jordan.walker

Change 3590026 on 2017/08/16 by Jurre.deBaare

	HLOD: When mesh has auto LOD generation disabled it prevents user from dragging meshes to make a cluster
	#!fix changed the tooltip and error handling for cluster creation, if there is any valid mesh now it will show up as a warning
	#!jira OR-41584
	#!rb none
	#!test have tested several 'error' meshes which would before prevent the user from creating a cluster,

Change 3588580 on 2017/08/15 by Laurent.Delayen

	Fix for https://jira.it.epicgames.net/browse/OR-42755

	#!rb none
	#!tests bot match

Change 3588360 on 2017/08/15 by Charles.Anderson

	Phat
	- Fixed up the materials to turn off the Render Before DOF so that we can see what were doing in Phat again.

Change 3587983 on 2017/08/15 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Fixed up audio issue on the new dawn intro movie
	#!jira OR-42144
	#!rb Max.Preussner
	#!test Paragon ps4
	#!lockdown Andrew.Grant

	#!ROBOMERGE-SOURCE: CL 3581466 in //Orion/Release-42.1/... via CL 3581468 via CL 3581469
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3587746 on 2017/08/15 by Daniel.Lamb

	Build launcher now has option for custom test.
	Dumps generated buildcooktest commandline to log when using -interactive for reference.
	#!rb trivial
	#!test BuildCookTest with and without test options.

Change 3587733 on 2017/08/15 by Daniel.Lamb

	Reenabled binned 2 stats in not shipping.
	#!rb Andrew.Grant
	#!test Paragon editor.

Change 3587727 on 2017/08/15 by Daniel.Lamb

	Removed all the checks to help track down Texture GC issue.
	#!rb Trivial
	#!test Paragon editor

Change 3584487 on 2017/08/14 by Laurent.Delayen

	https://jira.it.epicgames.net/browse/OR-42754 making sure this is not firing because of false positives.

	#!rb none
	#!tests compiles

Change 3582074 on 2017/08/11 by Laurent.Delayen

	TimeStretchCurve system for AnimMontages.

	Allows adjusting playback time of montages in a non constant way. This optional curve allows the user to determine how animation frames are influenced by play back time scaling, instead of using a constant play rate scaling.
	For example, with an attack animation, the strike could have zero influence (no play rate), and the recovery time could have 100% influence (most play rated).

	This system is entirely optional and compatible with current Montage API. You still determine desired play back time via the Play Rate parameter. Based on desired playback time, if there is a curve named 'MontageTimeStretchCurve' then, it will use the curve to determine animation frames to play based on playback time and TimeStretchCurve. Otherwise, if no curve exists, it is done using the constant supplied PlayRate.

	#!rb martin.wilson
	#!codereview lina.halper, james.golding
	#!tests wukong primary attacks

Change 3582063 on 2017/08/11 by Brian.Fasten

	Removing Monolith02_LowTest from automated builds until errors can be cleared
	#!codereview: daniel.lamb
	#!rb - none
	#!tests - none

Change 3581229 on 2017/08/10 by Lina.Halper

	- Back out revision 21 from //Orion/Dev-General/Engine/Source/Runtime/SlateCore/Private/Rendering/DrawElements.cpp
	- Comment out issue that causes crash in the draw box

	#!jira: UE-48222
	#!code review: Jurre.DeBaare, Nick.Darnell, Daniel.Lamb
	#!rb: Jurre.DeBaare
	#!tests: building HLOD as specified in the ticket, and anim blueprint graph

Change 3577839 on 2017/08/08 by Daniel.Lamb

	Revert CL 3576931. To fix crash when generating HLOD in Monolith 2.
	#!rb Andrew.Grant
	#!test Rebuild HLOD paragon editor
	#!fyi Lina.Halper

Change 3577684 on 2017/08/08 by Andrew.Grant

	Removed ensure and merged proper fix for crash from UE4/Main (3572777)

	#!tests #!rb none

Change 3577562 on 2017/08/08 by robomerge

	#!ROBOMERGE-AUTHOR: laurent.delayen
	Potential fix for https://jira.it.epicgames.net/browse/OR-42383
	Clear NotifyQueue prior to ticking montages. Also dispatch events right away, since ticking ends here, and no rendering is happening. In the event TickPose() is called directly and Component does not get ticked.

	#!rb lina.halper
	[CODEREVIEW] lina.halper, martin.wilson
	#!tests bot match

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

Change 3577358 on 2017/08/08 by Harrison.Moore

	Updating Colorchecker

Change 3576931 on 2017/08/08 by Lina.Halper

	Fix for missing arrowhead of the transition on state machine graph

	#!rb: Nick.Darnell
	#!tests: editor

Change 3576847 on 2017/08/08 by Jason.Bestimt

	#!ORION_DG - OR-42361 - Removing assert that was causing crash report client to break (during shipping builds of Paragon due to directories that didn't exist)

	#!RB: Guillaume.Abadie
	#!Tests:none

Change 3576794 on 2017/08/08 by Laurent.Delayen

	Removed call to DebugCanvas->Flush_GameThread(); to fix 'showdebug' commands not rendering anymore.

	#!rb Matt.Kuhlenschmidt
	#!codereview Matt.Kuhlenschmidt
	#!tests Ghost in PIE, showdebug animation works.

Change 3576302 on 2017/08/08 by Jurre.deBaare

	Fix for Materials get switched up while building HLODs in case the section order is different than the material order
	#!rb none
	#!tests Rebuild problematic clusters in Monolith2
	#!fix materials remapping was done using the section index instead of material index in the hlod path (static mesh merge one was fine)

Change 3575221 on 2017/08/07 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fix for PS4 shipping

	#!tests compiled PS4 shipping
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3575112 in //Orion/Release-42.1/... via CL 3575114
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3575165 on 2017/08/07 by andrew.grant

	#!CodeReview: andrew.grant, jason.bestimt, jeff.williams

	Unresolved conflicts. andrew.grant, please merge this change by hand.
	//ROBOMERGE_ORION_Dev_General/Engine/Source/Runtime/PS4/PS4RHI/Private/GnmManager.cpp

	--------------------------------------
	PS4 GPU time now shows correct values instead of vsync time.

	#!tests Ran on PS4
	#!rb Luke.Thatcher

	#!ROBOMERGE-SOURCE: CL 3574821 in //Orion/Release-42.1/... via CL 3574823
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3574408 on 2017/08/06 by Ben.Salem

	Switch nightly solo smoke/fx tests to have -unattended on their commandlines.
	#!rb none
	#!tests compiled.

Change 3574308 on 2017/08/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Include session time, MVP, and hitches on new health report

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3574305 in //Orion/Release-42/... via CL 3574306 via CL 3574307
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3574217 on 2017/08/05 by Jeff.Williams

	Fixing UAT compile error

	#!review-3574218 @andrew.grant
	#!rb na
	#!tests na

Change 3574139 on 2017/08/05 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	[NULL MERGE]
	Locked net version to 3571982 for future v42 patches

	#!tests #!rb none

	#!ROBOMERGE-SOURCE: CL 3574136 in //Orion/Release-42/... via CL 3574137 via CL 3574138
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3574130 on 2017/08/05 by andrew.grant

	#!CodeReview: andrew.grant, jason.bestimt, jeff.williams

	Unresolved conflicts. andrew.grant, please merge this change by hand.
	//ROBOMERGE_ORION_Dev_General/Engine/Source/Programs/AutomationTool/NotForLicensees/Gauntlet/SelfTest/Gauntlet.SelfTest.LogParserTest.cs

	--------------------------------------
	Non-shipping Gauntlet changes -
	 Log parser cleanup that provides better access to log channel info, errors, warnings, and ensures
	 Updated BaselinePerf test to record number of units travelled. This should highlight tests where a bot gets blocked :(

	#!tests ran locally on PS4
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3574116 in //Orion/Release-42/... via CL 3574123 via CL 3574124
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3573197 on 2017/08/04 by andrew.grant

	#!CodeReview: andrew.grant, jason.bestimt, jeff.williams

	Unresolved conflicts. andrew.grant, please merge this change by hand.
	//ROBOMERGE_ORION_Dev_General/Engine/Source/Programs/AutomationTool/NotForLicensees/Gauntlet/Gauntlet.Automation.csproj

	--------------------------------------
	Merging //Orion/Release-42.1 to Dev-ContentUpdate (//Orion/Dev-ContentUpdate)
	#!tests #!rb none

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

Change 3573079 on 2017/08/04 by Andrew.Grant

	Removed some code that was preventing Wacom from working
	#!tests #!rb none

Change 3572790 on 2017/08/04 by Jurre.deBaare

	Moving over fixes from 4.17 stream related to HLOD:
	"UE-47360
	Non Uniform baking of HLOD materials causes texture stretching
	UE-47031
	Generating a HLOD cluster with multiple actors that contain lods will not bake correctly"
	#!rb none
	#!tests none

Change 3572663 on 2017/08/04 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Gauntlet - copy elf files to temp dir and launch from there

	#!tests ran gauntlet
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3572657 in //Orion/Release-42/... via CL 3572659 via CL 3572662
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3572622 on 2017/08/04 by Jurre.deBaare

	Moving over:

	"Guard against zero sized boxes being sent to the slate batcher.  This was exposed by the clipping changes since zero sized elements would have been previously clipped.

	#!rb nick.darnell
	#!jira UE-46919"

	#!tests none

Change 3572428 on 2017/08/04 by Benn.Gallagher

	Added per-axis inertia and parent dominance settings to physics assets
	#!rb Thomas.Sarkanen
	#!tests Shrapnel in editor and -game (seems to be the only character using old inertia scaler for rigid body node)

Change 3572142 on 2017/08/04 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Disabling r.Cache.UpdatePrimsTaskEnabled  for PS4 due to lock-ups

	#!tests none
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3572139 in //Orion/Release-42/... via CL 3572140 via CL 3572141
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3572133 on 2017/08/04 by Andrew.Grant

	Merging

	//UE4/Main/Engine/Source/Runtime/SlateCore/Private/Input/HittestGrid.cpp

	to //Orion/Dev-General/Engine/Source/Runtime/SlateCore/Private/Input/HittestGrid.cpp

	#!tests #!rb none

Change 3572065 on 2017/08/03 by Andrew.Grant

	Fixed bug in Gauntlet parsing of perf data for tests
	Added perf-parsing test to SelfTest

	#!tests ran self test
	#!rb none
	#!ROBOMERGE: 42.1

Change 3572033 on 2017/08/03 by Andrew.Grant

	Merging //UE4/Main @ 3571062 through Orion-Staging

	#!rb none
	#!tests Engine QA pass

Change 3571262 on 2017/08/03 by Uriel.Doyon

	StaticMeshComponent and LandscapeComponent now register AO material mask and sky occlusion texture in the texture streamer.
	Changing the current lighting scenario now triggers an update of the texture streamer.
	Added an option to the "liststreamingtextures" named UNKOWNREF allowing to inspect texture without references in the texture streamer.
	#!rb none
	#!tests played monolith2 on PS4 and loaded the map in the editor.

Change 3571247 on 2017/08/03 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Integrate Dev-UI -> Release42

	Reduced the sensitivity on the slow tick timer warning
	#!rb Trivial
	#!test Cooked paragon ps4
	#!lockdown Andrew.Grant

	#!ROBOMERGE-SOURCE: CL 3571239 in //Orion/Release-42/... via CL 3571244 via CL 3571246
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3570431 on 2017/08/03 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Removed a change that was inadvertendly included in a larger fix and seems to be having problems on windows server.

	#!tests ran windows server locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3570428 in //Orion/Release-42/... via CL 3570429 via CL 3570430
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3570343 on 2017/08/03 by Jurre.deBaare

	HLOD: opening a level with HLOD defaults to forcing HLOD on for all clusters
	#!fix forcing the HLODs to show up in the editor changes the MinDrawDistance of the static mesh component, this was getting saved and not restored during runtime (now does it in PostLoad)
	#!jira UE-47712
	#!rb none
	#!tests PIE in Editor while having HLOD forced on

Change 3570047 on 2017/08/02 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fix for ensure leading to deadlock

	#!jira OR-42071
	#!tests compiled, ran ShortSoloGame test
	#!rb none
	[QAREVIEW] - this fixes the PC locks in OR-42071 and probably the PS4 too, but please recheck both platforms to be sure.

	#!ROBOMERGE-SOURCE: CL 3570044 in //Orion/Release-42/... via CL 3570045 via CL 3570046
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3569932 on 2017/08/02 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Integration from UE4 - fixed a set of critical bugs that would cause rare crashes in the  async IO subsystems.

	#!rb gil.gribb
	#!tests ran 10x solo games, ran LoadTest, all PS4
	#!jira UE-47483

	#!ROBOMERGE-SOURCE: CL 3569929 in //Orion/Release-42/... via CL 3569930 via CL 3569931
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3569839 on 2017/08/02 by Daniel.Lamb

	Added the low quality monolith map to the build launcher and cook maps list.
	#!rb Trivial
	#!test Compile UAT

Change 3569441 on 2017/08/02 by robomerge

	#!ROBOMERGE-AUTHOR: laurent.delayen
	Re-enabled OnlyTickMontagesWhenNotRendered animation optimization, after fixing edge case where 'Evaluate' could be called on out of sync cached data.
	Only update cached data when the graph will be updated, to ensure we don't have mismatching update and evaluate data.

	#!rb none
	[CODEREVIEW] martin.wilson, lina.halper
	#!tests bot match w/ dedicated server.

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

Change 3569397 on 2017/08/02 by robomerge

	#!ROBOMERGE-AUTHOR: ben.salem
	Merging using Dev-Gen_->_Release-42.1 Support for skins in perf reporting, also report overall test run time.
	#!rb various
	#!tests ran with new shallow test maps.

	#!ROBOMERGE-SOURCE: CL 3568892 in //Orion/Release-42.1/... via CL 3568967
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3568639 on 2017/08/02 by Adric.Worley

	Add individual FTest enumeration to Orion perf tests

	Moved methods to run FTests to helper for reuse.
	Effects perf tests now show individual test cases for more granular runs.
	All perf tests now do map check and draft logic as setup.

	#!tests ran updated tests in client/server
	#!rb ben.salem

Change 3568616 on 2017/08/02 by Ben.Salem

	Switch shallow fx tests to report to their own mailing list.
	#!rb bob.ferreira
	#!tests recompiled

Change 3568607 on 2017/08/02 by Daniel.Lamb

	Added staticmeshcomponent to the memreportfull command.
	#!rb Trivial
	#!test Paragon

Change 3568018 on 2017/08/01 by Ben.Salem

	Add skin and character name to test reports, and also test runtime.
	#!rb none
	#!tests ran steel shallow test

Change 3567995 on 2017/08/01 by Bob.Ferreira

	[FXTests] Updating FXTests and ShallowFXTests to call OnComplete() when doing check point validation.
	[Gauntlet] Changed InnerTestResult to be protected so that inherited test nodes can modify it.
	#!rb Ben.Salem
	#!TESTS Ran local automationtool run on a cooked main build.

Change 3567912 on 2017/08/01 by robomerge

	#!ROBOMERGE-AUTHOR: ori.cohen
	Added support for physical materials in immediate mode

	#!rb none
	#!tests none
	[CODEREVIEW] Benn.Gallagher

	#!ROBOMERGE-SOURCE: CL 3567865 in //Orion/Release-42/... via CL 3567901 via CL 3567904
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3567594 on 2017/08/01 by robomerge

	#!ROBOMERGE-AUTHOR: laurent.delayen
	Disabling animation optimization until I can fix an edge case.

	#!rb none
	#!tests arcade mode

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

Change 3566953 on 2017/08/01 by robomerge

	#!ROBOMERGE-AUTHOR: laurent.delayen
	Animation Optimization: Added EMeshComponentUpdateFlag::OnlyTickMontagesWhenNotRendered to only update montages when not rendered, instead of doing a whole pose update. This means on dedicated servers we'll only update montages when needed, and not the AnimGraph, which we have no need for.
	This is also affects non rendered meshes on clients.

	#!rb martin.wilson
	[CODEREVIEW] lina.halper, martin.wilson
	#!tests ghost and wukong networked doing montage abilities.

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

Change 3564610 on 2017/07/31 by Uriel.Doyon

	Integrated CL 3543210 : Fixed an issue when computing material scales where the default material ends up being used instead of the required material.
	Deprecated previous material data as it was causing some waste.
	Integrated CL 3526859 : Texture mip bias is now reset whenever the streaming budget increases
	#!rb none
	#!tests played monolith2 on PS4

Change 3564509 on 2017/07/31 by robomerge

	#!ROBOMERGE-AUTHOR: laurent.delayen
	Fixed warning when opening Kwang AnimBP the first time, due to missing virtual bone name. (When Skeleton doesn't have PostLoad() called on it yet - happens only the first time the AnimBP is opened).

	[CODEREVIEW] jurre.debaare, dwayne.martin, lina.halper, martin.wilson
	#!rb none
	#!tests Kwang AnimBP opens without a warning.

	#!ROBOMERGE-SOURCE: CL 3564506 in //Orion/Release-42/... via CL 3564507
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

[CL 3613306 by Andrew Grant in Main branch]
2017-08-28 15:13:54 -04:00
Marcus Wassmer
0341e5d5c1 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3607928)
#lockdown Nick.Penwarden

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

Change 3441680 by Uriel.Doyon

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

Change 3454934 by Chris.Bunner

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

Change 3512118 by Marc.Olano

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

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

Change 3512129 by Benjamin.Hyder

	Fixing up content in TM-SobolNoise

Change 3512151 by Rolando.Caloca

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

Change 3512160 by Benjamin.Hyder

	Still Fixing TM-Sobol

Change 3512180 by Marc.Olano

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

Change 3512261 by Michael.Lentine

	Move Subsurface to shared properties.

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

	#jira UE-44405

Change 3512288 by Rolando.Caloca

	DR - Fix issue when recycling image handles

Change 3512338 by Michael.Lentine

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

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

	#jira UE-46137

Change 3512424 by Michael.Lentine

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

	#jira UE-44315

Change 3512686 by Brian.Karis

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

Change 3512696 by Brian.Karis

	Unrevert TAA. Fixed DOF NaN artifacts

Change 3512717 by Marcus.Wassmer

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


Change 3513112 by Richard.Wallis

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

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

	#jira UE-45657

Change 3513357 by Richard.Wallis

	Windows compile fix.

Change 3513375 by Guillaume.Abadie

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

Change 3513685 by Richard.Hinckley

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

Change 3513705 by Marc.Olano

	Updates to Sobol test levels in RenderTest project

Change 3513730 by Rolando.Caloca

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

Change 3513742 by Marc.Olano

	Texture-free numeric print for shader debugging

Change 3513777 by Daniel.Wright

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

Change 3514852 by Rolando.Caloca

	DR - Fix -directcompile on SCW

Change 3515049 by Rolando.Caloca

	DR - hlslcc dump crash fix

Change 3515167 by Rolando.Caloca

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

Change 3515745 by Rolando.Caloca

	DR - Linux compile fix

Change 3515862 by Rolando.Caloca

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

Change 3516292 by Rolando.Caloca

	DR - glslang exe fixes

Change 3516568 by Rolando.Caloca

	DR - hlslcc - Copy fix for *Buffer as functionparameters

Change 3516659 by Marcus.Wassmer

	Fix some d3derrors with distance fields

Change 3516801 by Daniel.Wright

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

Change 3516825 by Rolando.Caloca

	DR - Some initial fixes for structured buffers

Change 3516843 by Rolando.Caloca

	DR - Fix for Vulkan dist fields

Change 3516869 by Marcus.Wassmer

	Add format to the createrendertarget blueprint node

Change 3516957 by Daniel.Wright

	Fixed bUsesDistortion being editable

Change 3516965 by Daniel.Wright

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

Change 3517039 by Yujiang.Wang

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

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

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

	#jira UE-33982

Change 3517069 by Yujiang.Wang

	Fix for ScissorRect settings in d3d11 being lost under certain scenarios

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

	#jira UE-45465 UE-44760

Change 3517134 by Yujiang.Wang

	CIS fix

Change 3517662 by Rolando.Caloca

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

Change 3517677 by Rolando.Caloca

	DR - Update/copy textures on RHI thread

Change 3517680 by Rolando.Caloca

	DR - Copy texture bulk data on rhi thread

Change 3517748 by Marcus.Wassmer

	temporary workaround for one class of GPU crashes

Change 3518832 by Rolando.Caloca

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

Change 3519973 by Richard.Wallis

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

	#jira UE-46505

Change 3520849 by Uriel.Doyon

	Fixed issue with investigate texture command and dynamic component entries.

Change 3521064 by Guillaume.Abadie

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

Change 3521834 by Rolando.Caloca

	DR - Fix decals on Vulkan

Change 3521892 by Rolando.Caloca

	DR - Fix Vulkan texture streaming

Change 3523181 by Rolando.Caloca

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

Change 3523534 by Yujiang.Wang

	UE-46631: Implement a scalable LongGPUTask to fix ProfileGPU

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

	#jira UE-46631

Change 3524552 by Yujiang.Wang

	Fix iteration number calculation of LongGPUTask

Change 3524975 by Joe.Graf

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

	#CodeReview: arciel.rekman, brian.karis

Change 3525306 by Daniel.Wright

	Fixed ensure from LPV

Change 3525346 by Rolando.Caloca

	DR - Fix linking issue

Change 3525459 by Daniel.Wright

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

Change 3525461 by Daniel.Wright

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

Change 3526459 by Rolando.Caloca

	DR - Fix validation error

Change 3526474 by Rolando.Caloca

	DR - Integrate from GV

Change 3526487 by Daniel.Wright

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

Change 3526833 by Rolando.Caloca

	DR - Workaround for hlslcc

Change 3526991 by Uriel.Doyon

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

Change 3527574 by Rolando.Caloca

	DR - Added some missing resource entries for SCW direct mode

Change 3527625 by Rolando.Caloca

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

Change 3528461 by Brian.Karis

	Support larger hash sizes. Added uint list hashing function.

Change 3528780 by Rolando.Caloca

	DR - Default Vulkan resources

Change 3528818 by Rolando.Caloca

	DR - glslang - Added missing accessor

Change 3528839 by Rolando.Caloca

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

Change 3528900 by Daniel.Wright

	Fixed variable shadowing

Change 3529039 by Rolando.Caloca

	DR - Read Spirv reflection data (not used yet)

Change 3529040 by Joe.Graf

	Fixed the 32bit compile failures for the popcnt optimization

	#CodeReview: arciel.rekman

Change 3529060 by Rolando.Caloca

	DR - hlslcc - New flag for keeping resource names

Change 3529344 by Rolando.Caloca

	DR - Delete unused file

Change 3529723 by Brian.Karis

	Fixed static analysis cleaner.

Change 3531357 by Michael.Trepka

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

Change 3531517 by Joe.Graf

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

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

Change 3531626 by Joe.Graf

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

	#CodeReview: mark.satterthwaite, arciel.rekman

Change 3531837 by Chris.Bunner

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

	#jra UE-46753

Change 3533415 by Joe.Graf

	Renamed the SSSE3 checks per feedback

	#CodeReview: arciel.rekman

Change 3533480 by Michael.Lentine

	Use more accurate descriptions for shader recompile options

Change 3533511 by Joe.Graf

	Updated the GenericPlatformMisc to match the SSSE3 name change

	#CodeReview: arciel.rekman

Change 3533521 by Marcus.Wassmer

	Fix scenerenderer leak when updating out of view planar reflections

Change 3533528 by Joe.Graf

	Updated comments

	#CodeReview: n/a

Change 3533608 by Mark.Satterthwaite

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

Change 3534260 by Mark.Satterthwaite

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

Change 3535789 by Yujiang.Wang

	Fix for wrong hair shading in forward shading

	* IBL reflections should be turned off for hairs

Change 3537059 by Ben.Marsh

	Fixing case of iOS directories, pt1

Change 3537060 by Ben.Marsh

	Fixing case of iOS directories, pt2

Change 3538297 by Michael.Lentine

	Add shader comparison test.

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

Change 3538309 by Michael.Lentine

	Add missing file from Shader Test CL.

Change 3538751 by Michael.Lentine

	Add missing pragma once.

Change 3539236 by Michael.Lentine

	Do not ignore return values.

Change 3539237 by Michael.Lentine

	Check in the correct file

Change 3540343 by Rolando.Caloca

	DR - Added t.DumpHitches.AllThreads

Change 3540661 by Yujiang.Wang

	Fix spot tube light direction

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

Change 3541129 by Rolando.Caloca

	DR - vk - Copy all Vulkan fixes from 4.17

Change 3541347 by Yujiang.Wang

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

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

Change 3542603 by Rolando.Caloca

	DR - vk - Allow sharing samplers on Vulkan

Change 3542639 by Jian.Ru

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

Change 3543167 by Michael.Lentine

	Fix naming for the shader comparison tests.

Change 3543210 by Uriel.Doyon

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

Change 3543221 by Brian.Karis

	Simplifier optimizations

Change 3543239 by Arciel.Rekman

	hlslcc: remove FCustomStd* workarounds.

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

Change 3543946 by Michael.Lentine

	Add comparison output.

Change 3544277 by Brian.Karis

	Fixed uninitialized var error

Change 3544404 by Rolando.Caloca

	DR - Fix broken textures

Change 3544503 by Jian.Ru

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

Change 3545241 by Daniel.Wright

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

Change 3545347 by Daniel.Wright

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

Change 3546196 by Marcus.Wassmer

	Fix minor typo

Change 3546459 by Daniel.Wright

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

Change 3546469 by Jian.Ru

	Take into account CVarStaticMeshLODDistanceScale during static mesh LOD calculation

Change 3546804 by Daniel.Wright

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

Change 3546814 by Daniel.Wright

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

Change 3546815 by Daniel.Wright

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

Change 3546817 by Daniel.Wright

	[Copy] Warmup time warning

Change 3546828 by Daniel.Wright

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

Change 3546836 by Daniel.Wright

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

Change 3546849 by Rolando.Caloca

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

Change 3547516 by Brian.Karis

	Linear time 5-coloring for planar graphs.

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

Change 3547542 by Brian.Karis

	Linear time 5-coloring for planar graphs.

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

Change 3547563 by Brian.Karis

	Fixed some compiler warnings and hopefully some errors.

Change 3547610 by Brian.Karis

	Replaced macros with inlined functions

Change 3547620 by Brian.Karis

	Clean up includes

Change 3547770 by Marcus.Wassmer

	GPU Crash for MTBF analytics

Change 3547773 by Marcus.Wassmer

	Updated doxygen comment for new analytic

Change 3548244 by Rolando.Caloca

	DR - Fix for translucency

Change 3548352 by Yujiang.Wang

	Added soft source radius for point and spot lights

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

Change 3548530 by Brian.Karis

	Fix for mac build

Change 3548770 by Rolando.Caloca

	DR - vk - Prereq work for Vulkan parallel RHI contexts

Change 3548772 by Jian.Ru

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

Change 3548865 by Daniel.Wright

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

Change 3548952 by Rolando.Caloca

	DR - Allow separate samplers in the shaders on Vulkan

Change 3549197 by Marcus.Wassmer

	Fix DX12 PIx not working in cooked builds

Change 3549209 by Daniel.Wright

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

Change 3549943 by Ben.Marsh

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

Change 3550546 by Rolando.Caloca

	DR - Fix merge issue

Change 3550962 by Marcus.Wassmer

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

Change 3551062 by Daniel.Wright

	Handle NULL skylight

Change 3551104 by Rolando.Caloca

	DR - vk - Remove assert to match other platforms

Change 3551221 by Rolando.Caloca

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

Change 3551224 by Daniel.Wright

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

Change 3551495 by Rolando.Caloca

	DR - vk - Intiial support for async queue

Change 3552101 by Rolando.Caloca

	DR - vk - Fix for async

Change 3552102 by Rolando.Caloca

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

Change 3552104 by Rolando.Caloca

	DR - vk - Support for SRVs for index buffers

Change 3552838 by Rolando.Caloca

	DR - vk - Enable debug markers if found

Change 3553106 by Rolando.Caloca

	DR - vk - Fixes for index buffer SRVs

Change 3553107 by Rolando.Caloca

	DR - vk - Enable recompute tangents on Vulkan

Change 3553154 by Rolando.Caloca

	DR - vk - Fix crash with null uav

Change 3553342 by Yujiang.Wang

	Fix redundant skylights in AdvancedPreviewScene

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

Change 3553481 by Rolando.Caloca

	DR - Integrate fix for D3D12 support of index buffers SRVs

	#jira UE-47674

Change 3553715 by Rolando.Caloca

	DR - Fix crash when launching PC with -featureleveles31

Change 3553725 by Rolando.Caloca

	DR - Redo fix

Change 3553803 by Rolando.Caloca

	DR - Shader compile fixes for ES3.1

Change 3553963 by Rolando.Caloca

	DR - vk - Remove extra IRDump

Change 3554741 by Ben.Marsh

	CIS fix.

Change 3555222 by Rolando.Caloca

	DR - vk - static analysis fix

Change 3555362 by Rolando.Caloca

	DR - vk - Prep work for separate present queue

Change 3556800 by Daniel.Wright

	Fixed screenshot for simple volume material doc

Change 3556942 by Brian.Karis

	Fixed Bokeh DOF regression.

Change 3556959 by Rolando.Caloca

	DR - vk - Rework staging buffer peak usage

Change 3557497 by Daniel.Wright

	Better display name for Unbound property on post process volume

Change 3557499 by Daniel.Wright

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

Change 3557068 by Olaf.Piesche

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

	#tests QAGame test maps

Change 3558123 by Rolando.Caloca

	DR - vk - static analysis fix

Change 3558685 by Yujiang.Wang

	Github #3323: Two sided foliage lightmap directionality fix

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

	#jira UE-42523

Change 3559052 by Brian.Karis

	Hopefully fix static analysis

Change 3559113 by Rolando.Caloca

	DR - Fix crash witrh planar reflections

Change 3559275 by Yujiang.Wang

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

Change 3559612 by Rolando.Caloca

	DR - vk - SM5 with uniform buffers backend support

Change 3559716 by Rolando.Caloca

	DR - hlslcc - Fix linker warning on SCW debug

Change 3559768 by Rolando.Caloca

	DR - vk - Keep ub names for bindings

Change 3560195 by Rolando.Caloca

	DR - accessor

Change 3560275 by Rolando.Caloca

	DR - vk - Support for uniform buffers

Change 3560913 by Rolando.Caloca

	DR - vk - Fix static analysis

Change 3561145 by Rolando.Caloca

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

Change 3561194 by Rolando.Caloca

	DR - vk - Integrate timestamp fixes

Change 3562009 by Rolando.Caloca

	DR - vk - Workaround for bad UTexture data

Change 3563884 by Chris.Bunner

	VK_NULL_HANDLE fix.

Change 3563885 by Jian.Ru

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

Change 3565943 by Jian.Ru

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

Change 3569479 by Michael.Lentine

	Integrate rhino shader changes to dev-rendering

Change 3569511 by Michael.Lentine

	Fix formating and string out on windows.

Change 3569572 by Yujiang.Wang

	Fix MeasureLongGPUTaskExecutionTime crashing on AMD on Macs

Change 3569614 by Yujiang.Wang

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

Change 3570524 by Jian.Ru

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

Change 3570722 by Chris.Bunner

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

Change 3570880 by Jian.Ru

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

	#jira UE-37556

Change 3572532 by Jian.Ru

	Disable a warning to let tests pass

	#jira UE-48021

Change 3573109 by Michael.Lentine

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

Change 3573995 by Jian.Ru

	Move an include out of define to let nightly build pass

Change 3574777 by Chris.Bunner

	Continued merge fixes.

Change 3574792 by Rolando.Caloca

	DR - Rename todo

Change 3574794 by Chris.Bunner

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

Change 3574879 by Michael.Trepka

	Disabled a couple of Mac deprecation warnings

Change 3574932 by Chris.Bunner

	Merge fix.

Change 3575048 by Michael.Trepka

	Fixed iOS compile warnings

Change 3575530 by Chris.Bunner

	Duplicating static analysis fix CL 3539836.

Change 3575582 by Chris.Bunner

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

Change 3576326 by Chris.Bunner

	Static analysis fixes.

Change 3576513 by Michael.Trepka

	Updated Mac MCPP lib to be compatible with OS X 10.9

Change 3576555 by Richard.Wallis

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

	#jira UE-47549

Change 3576562 by Chris.Bunner

	OpenGL SetStreamSource stride updates.

Change 3576589 by Michael.Trepka

	Fixed Mac CIS warnings and errors in Dev-Rendering

Change 3576708 by Jian.Ru

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

Change 3576827 by Rolando.Caloca

	DR - Minor fix for licensee

Change 3576973 by Chris.Bunner

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

Change 3577729 by Rolando.Caloca

	DR - Fix for info on SCW crashes

Change 3578723 by Chris.Bunner

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

Change 3578797 by Chris.Bunner

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

	#jira UE-48094

Change 3578815 by Yujiang.Wang

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

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

	#jira UE-48207

Change 3578828 by Daniel.Wright

	Disable volumetric lightmap 3d texture creation on mobile

Change 3579473 by Daniel.Wright

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

Change 3580088 by Jian.Ru

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

Change 3580388 by Daniel.Wright

	Fixed shadowed light injection into volumetric fog fallout from Rhino merge

Change 3580407 by Michael.Trepka

	Updated Mac UnrealPak binaries

Change 3581094 by Michael.Trepka

	Fix for ScreenSpaceReflections not working properly on iOS 11

Change 3581242 by Michael.Trepka

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

	#jira UE-48255

Change 3581489 by Olaf.Piesche

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

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

	#tests FN LastPerfTest

Change 3581544 by Simon.Tovey

	Fix for ensure accessing cvar from task thread.

	#tests no more ensure

Change 3581934 by Chris.Bunner

	Fixed ConsoleVariables.ini break from merge.

Change 3581968 by Jian.Ru

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

Change 3581989 by Richard.Wallis

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

	#jira UE-46955

Change 3582632 by Chris.Bunner

	Resolved merge error.

Change 3582722 by Rolando.Caloca

	DR - Workaround for PF_R8G8B8A8_UINT on GL

	#jira UE-48208

Change 3584096 by Rolando.Caloca

	DR - Fix for renderdoc crashing in shipping

	#jira UE-46867

Change 3584245 by Jian.Ru

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

Change 3584359 by Yujiang.Wang

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

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

	#jira UE-48315

Change 3587864 by Mark.Satterthwaite

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

Change 3587866 by Mark.Satterthwaite

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

Change 3588168 by Mark.Satterthwaite

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

Change 3588192 by Rolando.Caloca

	DR - Fix d3d12 linker error when EXECUTE_DEBUG_COMMAND_LISTS is enabled

Change 3588291 by Rolando.Caloca

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

	#jira UE-48299

Change 3590134 by Michael.Trepka

	Copy of CL 3578963

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

Change 3590405 by Rolando.Caloca

	DR - hlslcc - support for sqrt(uint)

Change 3590436 by Mark.Satterthwaite

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

Change 3590674 by Rolando.Caloca

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

Change 3590699 by Rolando.Caloca

	DR - Fix distance fields mem leak

Change 3590815 by Rolando.Caloca

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

Change 3590818 by Mark.Satterthwaite

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

Change 3590905 by Mark.Satterthwaite

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

	#jira UE-48163

Change 3590961 by Mark.Satterthwaite

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

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

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

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

Change 3590965 by Mark.Satterthwaite

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

Change 3590969 by Mark.Satterthwaite

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

Change 3591871 by Rolando.Caloca

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

Change 3592014 by Mark.Satterthwaite

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

Change 3592171 by Rolando.Caloca

	DR - CIS fix

Change 3592753 by Jian.Ru

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

Change 3594595 by Rolando.Caloca

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

Change 3594794 by Michael.Trepka

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

Change 3594999 by Mark.Satterthwaite

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

	#jira UE-48342

Change 3595004 by Mark.Satterthwaite

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

	#jira UE-48342

Change 3595386 by Mark.Satterthwaite

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

Change 3595394 by Rolando.Caloca

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

Change 3599352 by Rolando.Caloca

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

Change 3602440 by Michael.Trepka

	Fixed Metal shader compilation from Windows with remote compilation disabled

	#jira UE-48163

Change 3602898 by Chris.Bunner

	Resaving assets.

Change 3603731 by Jian.Ru

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

Change 3604629 by Rolando.Caloca

	DR - Workaround for PF_R8G8B8A8_UINT on Android

	#jira UE-48208

Change 3604984 by Peter.Sauerbrei

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

	#jira UE-48360

Change 3605738 by Chris.Bunner

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

	#jira UE-48748

Change 3606009 by Mark.Satterthwaite

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

	#jira UE-47663

Change 3606108 by Mark.Satterthwaite

	Temporary hack to avoid a crash in AVPlayer.

	#jira UE-48758

Change 3606121 by Mark.Satterthwaite

	Fix Windows compilation.

Change 3606992 by Chris.Bunner

	Static analysis fix.

[CL 3608256 by Marcus Wassmer in Main branch]
2017-08-24 15:38:57 -04:00
Marc Audy
eaccf4135c Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3582324)
#lockdown Nick.Penwarden
#rb none
#rnx

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

Change 3431439 by Marc.Audy

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

Change 3457323 by Marc.Audy

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

	#jira UE-45087

Change 3499927 by Dan.Oconnor

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

	#jira UE-43458

Change 3502939 by Michael.Noland

	Back out changelist 3499927

Change 3522783 by Zak.Middleton

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

Change 3544641 by Dan.Oconnor

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

	#jira OR-38176

Change 3544645 by Dan.Oconnor

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

Change 3545023 by Marc.Audy

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

Change 3545025 by Marc.Audy

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

Change 3545455 by Ben.Zeigler

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

Change 3545456 by Ben.Zeigler

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

Change 3545547 by Ben.Zeigler

	CIS Fix

Change 3545568 by Michael.Noland

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

	#jira UE-46845

Change 3545582 by Michael.Noland

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

Change 3546528 by Ben.Zeigler

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

Change 3546544 by Marc.Audy

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

Change 3546551 by Marc.Audy

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

Change 3547152 by Marc.Audy

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

Change 3547438 by Marc.Audy

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

Change 3547501 by Ben.Zeigler

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

Change 3551185 by Ben.Zeigler

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

Change 3551723 by Ben.Zeigler

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

Change 3553216 by Phillip.Kavan

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

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

Change 3553301 by Ben.Zeigler

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

Change 3553631 by Dan.Oconnor

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

	#jira UE-43458

Change 3553799 by Ben.Zeigler

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

Change 3553896 by Michael.Noland

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

Change 3553897 by Michael.Noland

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

Change 3553898 by Michael.Noland

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

Change 3553909 by Michael.Noland

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

Change 3554517 by Michael.Noland

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

Change 3554664 by Michael.Noland

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

	#jira UE-27121

Change 3554831 by Dan.Oconnor

	Non editor build fix

Change 3554834 by Dan.Oconnor

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

	#jira UE-40438

Change 3556157 by Ben.Zeigler

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

Change 3557775 by Michael.Noland

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

Change 3557777 by Michael.Noland

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

Change 3560510 by Michael.Noland

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

Change 3560563 by Michael.Noland

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

Change 3561443 by Ben.Zeigler

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

Change 3561658 by Michael.Noland

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

Change 3562291 by Ben.Zeigler

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

Change 3562292 by Ben.Zeigler

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

Change 3564814 by Ben.Zeigler

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

Change 3566707 by Dan.Oconnor

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

	#jira None

Change 3566717 by Michael.Noland

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

Change 3566771 by Michael.Noland

	Editor: Fixing deprecation warning

	#jira UE-47922

Change 3567023 by Michael.Noland

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

Change 3567304 by Ben.Zeigler

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

Change 3567398 by Ben.Zeigler

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

Change 3567729 by Michael.Noland

	Blueprints: Clarified message about "{VariableName} is not blueprint visible" to define what that means "(BlueprintReadOnly or BlueprintReadWrite)"

Change 3567739 by Ben.Zeigler

	Don't crash if PropertyStruct cannot find it's struct. The function half handled this before, but Preload crashes with a null parameter

Change 3567741 by Ben.Zeigler

	Disable optimization for a path test that was crashing in VC2015 in a monolithic build

Change 3568332 by Mieszko.Zielinski

	Prevented UAIPerceptionSystem::GetCurrent causing a BP error when WorldContextObject is null #UE4

	#jira UE-47948

Change 3568676 by Michael.Noland

	Blueprints: Allow editing the tooltip of each enum value in a user defined enum

	#jira UE-20036

	Known issue: Undo/redo is not currently possible on the tooltip as it is directly stored in package metadata

Change 3569128 by Michael.Noland

	Blueprints: Removing the experimental profiler as we won't be returning to it any time soon
	#jira UE-46852

Change 3569207 by Michael.Noland

	Blueprints: Allow drag-dropping component Blueprint assets into the graph to create Add Component nodes and improved the error message when dragging something that cannot be dropped into an actor Blueprint
	#jira UE-8708

Change 3569208 by Michael.Noland

	Blueprints: Allow specifying a description for user defined enums (shown in the content browser)
	#jira UE-20036

Change 3569209 by Michael.Noland

	Editor: Allow adjusting the font size for each individual comment box node in Blueprints and Materials
	#jira UE-16085

Change 3570177 by Michael.Noland

	Blueprints: Fixed discrepancy between the Structure tab name and the menu option for the tab in the user defined structure editor (now both say Structure Editor)

	#jira UE-47962

Change 3570179 by Michael.Noland

	Blueprints: Fixed the tooltip of a user defined structure not updating immediately in the content browser after being edited

Change 3570192 by Michael.Noland

	Blueprints: Added "(selected)" after the label (in the 'debug filter' dropdown in the Blueprint editor) for actors that are selected in the level editor, which should make it easier to choose the specific actor you want to debug
	#jira UE-20709

Change 3571203 by Michael.Noland

	Blueprints: Cleanup and refactoring to prepare for turning commented out nodes into an official feature
	- Made EnabledState and bUserSetEnabledState private on UEdGraphNode and added new getters/setters
	- Introduced IsAutomaticallyPlacedGhostNode() and MakeAutomaticallyPlacedGhostNode() to start decoupling the concept from commented out nodes
	- Updated a couple of places that used a hardcoded UberGraphPages[0] into instead editing the most recently interacted with event graph if possible
	- Updated 'is data only blueprint' logic to allow multiple ubergraph pages, as long as they're all empty of non-disabled nodes

Change 3571224 by Michael.Noland

	Blueprints: Draw banners on development-only and user disabled nodes (excluding 'ghost' nodes like autogenerated event entries in new BPs)
	Adapted from PR #2701: Differentiate development nodes in BP (Contributed by projectgheist)

	#jira UE-29848
	#jira UE-34698

Change 3571279 by Michael.Noland

	Blueprints: Changed UK2Node::GetPassThroughPin so that only the execution wire on nodes with exactly one input and one output exec wire will have a corresponding pass-through pin (when there is ambiguity in which exec would be used, e.g., with a branch or sequence or timeline node, the subsequent nodes are now effectively disabled as well)

Change 3571282 by Michael.Noland

	Blueprints: Fixed the tooltip for dragging a variable onto an inherited category not showing the 'move to category' hint

Change 3571284 by Michael.Noland

	Blueprints: Made wires into/out of a user-disabled node draw verly dimly (other than the passthrough exec if it exists)

Change 3571311 by Ben.Zeigler

	Add ActorIteratorFlags which allows overriding which types of actors/levels are iterated by ActorIterator, to allow iterating levels that are not visible.
	All of the iteration logic is now in the base and the children just set different flags, which fixes it so TActorIterator does the same level collection check as FActorIterator

Change 3571313 by Ben.Zeigler

	Several fixes to automation framework to allow it to work better with Cooked builds.
	Change it so the automation test list is a single  message. There is no guarantee on order of message packets, so several tests were being missed each time.

Change 3571485 by mason.seay

	Test map for Make Set bug

Change 3571501 by Ben.Zeigler

	Accidentally undid the UHT fixup for TAssetPtr during my bulk rename

Change 3571531 by Ben.Zeigler

	Fix warning messages

Change 3571591 by Michael.Noland

	Blueprints: Made drag-dropping assets into a graph to create a component transactional (allowing the action to be undone)
	#jira UE-48024

Change 3572938 by Michael.Noland

	Blueprints: Fixed a typo in a set function comment

	#jira UE-48036

Change 3572941 by Michael.Noland

	Blueprints: Made the compact node title for cross and dot product the words cross and dot rather than hard to see . and x symbols
	#jira UE-38624

Change 3574816 by mason.seay

	Renamed asset to better reflect name of object reference

Change 3574985 by mason.seay

	Updated comments and string outputs to list Soft Object Reference

Change 3575740 by Ben.Zeigler

	#jira UE-48061 Change it so Editor builds work like cooked builds and always try to reuse existing packages when loading them instead of recreating them in place. Recreating in place does not work well for levels and blueprints, and blueprints already had a hack that was causing this behavior to not activate

Change 3575795 by Ben.Zeigler

	#jira UE-48118 Call into the AssetManager as part of the DistillPackages commandlet. This makes sure that ShooterGame and EngineTest end up with the correct content in launcher builds

Change 3576374 by mason.seay

	Forgot to submit the deleting of a redirector

Change 3576966 by Ben.Zeigler

	#jira UE-48153 Fix issue where actors in streaming levels weren't properly replicating in PIE. It now does the remap path on both send and receive for the manual PC level streaming commands

Change 3577002 by Marc.Audy

	Prevent wildcard pins from being connected to exec pins
	#jira UE-48148

Change 3577232 by Phillip.Kavan

	#jira UE-48034 - Fix EDL assert on load caused by a native reference to a nativized BP class that also references a nativized UDS asset.

	Change summary:
	- Modified FNativeClassHeaderGenerator::ExportGeneratedStructBodyMacros() to emit the 'ReplaceConverted' package name for the FCompiledInDeferStruct global associated with the nativized UDS asset in the UHT codegen. This brings nativized UDS to parity with nativized BP class assets (it was likely just an oversight initially).

Change 3577710 by Dan.Oconnor

	Mirror of 3576977:
	Fix for crash when loading cooked uassets that reference functions that are not present
	#jira UE-47644

Change 3577723 by Dan.Oconnor

	Prevent deferring of classes that are needed to load subobjects

	#jira UE-47726

Change 3577741 by Dan.Oconnor

	Back out changelist 3577723 - causes crash when starting QAGame in Dev-Framework - not in Release-4.17

Change 3578938 by Ben.Zeigler

	#jira UE-27124 Fix issue where renaming a map with legacy map build data would end up with a half-loaded redirector package, becuase the old map build data was still in use. It's possible the call to HandleLegacyMapBuildData should just be in World PostLoad instead of piecemeal in several other places but I am unsure.
	Fix it so the redirector cleanup code on map change will not be stopped by non-standalone top level objects, which could be left behind by issues in other systems

Change 3578947 by Marc.Audy

	(4.17) Properly expose members of DialogueContext to blueprints
	#jira UE-48175

Change 3578952 by Ben.Zeigler

	Fix ensure where ParentHandles on a StreamableHandle could be modified while iterating

Change 3579315 by mason.seay

	Test map for Make Container nodes

Change 3579600 by Ben.Zeigler

	Disable window test on non-desktop platforms as they cannot be resized post launch

Change 3579601 by Ben.Zeigler

	#jira UE-48236 Disable optimizations on PS4 for certain math tests pending fixing of platform issue

Change 3579713 by Dan.Oconnor

	Prevent crashes when bluepints implement an interface that was deleted
	#jira UE-48223

Change 3579719 by Dan.Oconnor

	Fix two compilation manager issues: Make sure CDOs are not renamed under a UClass, because they will be considered as possible subobjects, which has bad side effects and make sure that we update references even on empty functions, so that empty UFunctions are not left with references to REINST data

	#jira UE-48240

Change 3579745 by Michael.Noland

	Blueprints: Improve categorization and reordering support in 'My Blueprints'
	- Allow drag-dropping functions, macros, delegates, etc... to reorder them within a category or to change categories (bringing them to parity with variables)
	- Make category ordering on all categories sticky so you can reorder categories (the relative ordering will be the same within different sections like variables and functions)
	- Added hover cues when drag dropping some items that were missing them (e.g., event dispatchers)
	- Added support for renaming categories using F2

	Known issues (none are regressions):
	- Timelines cannot be moved to other categories or reordered
	- Renaming a nested category will result in it becoming a top level category (discarding the parent category chain)
	- Some actions do not support undo

	#jira UE-31557

Change 3579795 by Michael.Noland

	PR #3867: Fix for not releasing Local Notification Delegate. (Contributed by enginevividgames)
	#jira UE-48105

Change 3580463 by Marc.Audy

	(4.17) Don't crash if calling PostEditUndo on an Actor in the transient package
	#jira UE-47523

Change 3581073 by Marc.Audy

	Make UK2Node_SpawnActorFromClass inherit from K2Node_ConstructObjectFromClass and eliminate duplicate code.
	Correctly reconnect split pins when changing class on create widget, construct object, and spawn actor nodes

Change 3581156 by Ben.Zeigler

	#jira UE-48161 Fix issue where split pins would not be restored if a Struct type was changed due to refactoring of parent variables/functions. For structs we want to copy the pins, if they're invalid due to other changes they will be individual orphaned
	Also fix bug where the category of parent pins was being set incorrectly while changing variable type, we only want to override type for wildcard pins

Change 3581473 by Ben.Zeigler

	Properly turn off optimization for PS4 test

Change 3582094 by Marc.Audy

	Fix anim nodes not navigating to their graph on double click
	#jira UE-48333

Change 3582157 by Marc.Audy

	Fix double-clicking on animation asset nodes not opening the asset editors

Change 3582289 by Marc.Audy

	(4.17) Don't crash when adding a streaming level that's already in the level
	#jira UE-48928

Change 3545435 by Ben.Zeigler

	#jira UE-47509 Rename and refactor internals StringAssetReferences and AssetPtrs to become SoftObjectPath/Ptr. This is to prepare them for use for subobjects like actors. Here is the rename table:
	FStringAssetReference -> FSoftObjectPath
	FStringClassReference -> FSoftClassPath
	TAssetPtr -> TSoftObjectPtr
	TAssetSubclassOf -> TSoftClassPtr
	The old headers are deprecated, and FSoftClassPath is now in the same header has FSoftObjectPath.
	This change increments the UE4 version because FSoftObjectPaths are now stored as a name + substring instead of one giant name, which in practice will improve performance and memory while manipulating them. Also the package table of soft referenced packages is now stored as FNames instead of FStrings as these packages names will already be in the name table due to the AssetRegistry
	Remove automatic support for loading Objectpaths starting with engine-ini:, as it was only partially supported and is very outdated. ResolveIniObjectsReference can still be called manually
	Changed TPersistentObjectPtr and TLazyObjectPtr to be structs instead of classes
	Change UnrealHeaderTool to read configuration such as StructsWithNoPrefix out of inis instead of using a hardcoded list. Add support for TypeRedirects, which is used to make the old type names automatically remap to the new ones
	Clean up FRedirectCollector to remove some of the functionality that is no longer used by the cooker, and disable tracking of redirects in standalone -game builds

Change 3567760 by Ben.Zeigler

	Fix it so EngineTest can be cooked by moving some utility functions to EditorTestsUtilityLibrary and adding an EditorFunctionalTest. The core EngineTest module is safely runtime-only now and can run it's tests locally in windows cooked
	Merge FuncTestManager into FunctionalTestModule to avoid confusion with FunctionalTestingManager UObject
	Add EngineTestAssetManager and override the cook function to cook all maps with runtime functional tests
	Change actor merging tests to be editor only, this stops them from cooking
	Several individual tests crash on cooked builds, I started threads with the owners of those

Change 3575737 by Ben.Zeigler

	#jira UE-48042 Change it so playing via PIE Standalone, multiprocess networked PIE and external cook launch on does not save temporary levels to UEDPC and instead prompts the user to save. This is how launch on works by default already, and this fixes cross level references/sequencer. The UEDPC code has been removed entirely.
	As part of this change, connecting a -game client to a PIE server and vice versa is much more likely to work. You may still have game-side problems, look at UEditorEngine::NetworkRemapPath for an example of how to do the PIE prefix conversion
	Remove advanced CreateTemporaryCopiesOfLevels option from sequencer capture, it has not been tested in multiple years and does not work with newer sequencer features
	#jira UE-27124 Fix several possible crashes with changing levels while in PIE

Change 3578806 by Marc.Audy

	Fix Construct Object not working correctly with split pins.
	Add Construct Object test cases to functional tests.
	Added split pin expose on spawn test cases.
	#jira UE-33924

[CL 3582334 by Marc Audy in Main branch]
2017-08-11 12:43:42 -04:00
Thomas Sarkanen
fbd810241c Copying //UE4/Dev-AnimPhys to //UE4/Dev-Main (Source: //UE4/Dev-AnimPhys @ 3555219)
#lockdown Nick.Penwarden
#rb none

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

Change 3537750 by Ori.Cohen

	Added RootBone simulation space to RigidBody node. This is useful for cases where we rotate the skeletal mesh component and counter rotate the root bone and do not want to affect simulated bodies' velocities.

Change 3537756 by Ori.Cohen

	Added ExternalForce to rigid body node for faking inertia while simulating in component space

Change 3537758 by Ori.Cohen

	Made it so that linear and angular velocity are properly computed for kinematic targets in immediate physics and rigid body node.

Change 3538308 by Ethan.Geller

	#jira UE-47169: fix for streaming sources not getting properly destroyed in AudioMixer

Change 3538329 by Jon.Nabozny

	Fix ForEachBodyBelow to use the proper body index.

Change 3538528 by Ori.Cohen

	Fix gravity not being converted into the right simulation space for the RigidBody node

Change 3539741 by James.Golding

	Remove unused HACD library. We use V-HACD now.
	#jira UE-46618

Change 3539746 by James.Golding

	Enable research SoftBody plugin in QAGame

Change 3540115 by Ori.Cohen

	Turn joint pre-processing on for immediate mode. This helps with some stability issues.

	#tests none

Change 3543166 by Ori.Cohen

	Exposed an inertia scale for body instances

Change 3544097 by Ori.Cohen

	Fix incorrect bone mapping for rigid body node. (Only matters when first call to init has a different number of bodies, for example a different skin)

Change 3544221 by Ori.Cohen

	Fix CIS

Change 3544289 by Ori.Cohen

	Fix CIS

Change 3544581 by Ori.Cohen

	Fix CIS

Change 3545415 by Ethan.Geller

	Changes to AudioMixer's Delay class: Addition of SetDelayInSamples method, fix for delay line not working when being set to maximum delay

Change 3545426 by Ethan.Geller

	#jira UEAP-282 Add Flexiverb submix effect to Synthesis plugin.

Change 3545570 by Ethan.Geller

	Add Blueprint function library to sound utilities plugin

Change 3548160 by Martin.Wilson

	Clean up animation compression logging (change to compression category and downgraded from warning

	#Jira UE-47424

Change 3548368 by Danny.Bouimad

	Changing an audio test on TM-AnimPhys as it isn't supported on a large number of platforms (Yet)

Change 3548630 by Aaron.McLeran

	Don't send or mix built-in reverb submix if there's a plugin reverb enabled.

Change 3548631 by Aaron.McLeran

	Adding ability to define default device using macro vs assuming index 0.

Change 3548782 by Aaron.McLeran

	SDL backend implementation for windows, linux, and HTML.

	- Still need to hook up SDL to HTML5, but should be workable in Linux.

Change 3549034 by Aaron.McLeran

	Adding missed file for SDL2.lib

Change 3549102 by Aaron.McLeran

	Adding missing include

Change 3550388 by James.Golding

	Fix ApexDestructionLib project generation

	#jira UE-47637

Change 3550412 by James.Golding

	More fixes to ApexDestruction.Build.cs

Change 3550856 by Ori.Cohen

	Fix analysis for shared headers.

	#jira UE-47593

Change 3551046 by Aaron.McLeran

	Fix CIS build

Change 3551056 by Aaron.McLeran

	Fixing assert on launch of audio mixer, invalid assert.

Change 3552685 by Thomas.Sarkanen

	Fixed Fortnite warnings on editor startup/cook

	APEX destruction plugin was accessing the thumbnail manager before UnrealEd (and more pertinently, FortniteGame module) was loaded. Defering registration of the thumbnail rendering until later in the startup sequence means the the appropriate classes can be found.

	#jira UE-47595 - //UE4/Dev-AnimPhys: Cook Fortnite Win64 completed with 16 Warnings

Change 3552847 by Ori.Cohen

	Fix CIS

Change 3552916 by James.Golding

	Fix Win64 SDL2 deployment (path was wrong)

	#jira UE-47679

Change 3552919 by James.Golding

	Add 'RemapDirectories' entry for SoftBody plugin in QAGame (avoids package error)
	Also fix warning to give correct syntax

	#jira UE-47682

Change 3553168 by Ori.Cohen

	Fix CIS

[CL 3555263 by Thomas Sarkanen in Main branch]
2017-07-26 09:23:14 -04:00
Ben Marsh
f461ea68e9 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3548365)
#lockdown Nick.Penwarden

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

Change 3494741 by Steve.Robb

	Generated code size savings.

	#jira UE-43048

Change 3495484 by Steve.Robb

	Fix for generated indices of static arrays when saving configs.

Change 3497926 by Robert.Manuszewski

	Removed FPackageFileSummary's CompressedChunks array as it was no longer being used by anything.

Change 3498077 by Robert.Manuszewski

	Only use the recursion guard in async loading code when the event driven loader is enabled.

Change 3498112 by Ben.Marsh

	UBT: Respect the option to not create debug info in the Android toolchain. This option is already being respected by the compiler, but the linker adds debug info of its own.

Change 3500239 by Robert.Manuszewski

	Made sure the Super Class token stream is also locked when assembling Class token stream with async loading thread enabled. This to to prevent race conditions when loading BP classes.

Change 3500395 by Steve.Robb

	Extra codegen savings when not in hot reload.

Change 3501004 by Steve.Robb

	EObjectFlags now have constexpr operators.

Change 3502079 by Ben.Marsh

	UBT: Pad multi-line error messages so that they align under the prefix for the first line, and include the timestamp if necessary.

Change 3502527 by Steve.Robb

	Fix for zero-sized array compile error in generated code when all functions are editor-only.

Change 3502542 by Ben.Marsh

	UAT: Remove the custom source parameter from log functions, and add support for a customizable indent instead.

Change 3502868 by Steve.Robb

	Workaround for inefficient generated code with stateless lambdas on Clang.

Change 3503550 by Steve.Robb

	Another generated code lambda optimization.

Change 3503582 by Ben.Marsh

	BuildGraph: Add support for nullable parameter types.

Change 3504424 by Steve.Robb

	New AllOf, AnyOf and NoneOf algorithms.

Change 3504712 by Ben.Marsh

	UAT: Less spammy log and error output from UAT.

	* Callstacks for AutomationExceptions are suppressed by default but still included in the log (the path to the log is noted in console output with the message from the exception).
	* Add a mechanism for any exceptions to be caught and rethrown with additional lines of context (CommandUtils.AddContext()) that will be appended to the error output by UAT. Avoids decaying the exception type or masking the inner exception message while still adding additional information.
	* AggregateExceptions resulting from exceptions on child threads are automatically unwrapped (full details are still appended to the log)
	* Name of the calling function is not included in console output by default, but still included in the log.

Change 3504808 by Ben.Marsh

	UAT: Suppress P4 output when running a recursive instance of UAT.

Change 3505044 by Steve.Robb

	Code generation improved for TCppClassType code.

Change 3505485 by Ben.Marsh

	Fix deterministic cooking issue; always use a pseudo-random number stream when compiling a module.

Change 3505699 by Ben.Marsh

	Plugins: Store the bEnabledByDefault flag exactly as it was read from disk rather than collapsing it to an absolute value based on the default for the location it was read from. This allows loading/saving plugin descriptors without any knowledge of whether they are game or engine plugins.

Change 3506055 by Ben.Marsh

	UAT: Add a class to apply a log indent for the lifetime of an object (ScopedLogIndent), and use it to apply an indent to MegaXGE/ParallelExecutor output.

Change 3507745 by Robert.Manuszewski

	Moved FSimpleObjectReferenceCollectorArchive and FSimpleObjectReferenceCollectorArchive to be internal archives used only by FReferenceCollector so that they are constructed only once per GC task instead of potentially multiple times per GC (as was the case with UDataTables and BlueprintGeneratedClasses).

Change 3507911 by Ben.Marsh

	Plugins: Minor changes to plugin descriptors.

	* Add a distinct setting for an unspecified EnabledByDefault setting in plugin descriptors.
	* Add a function to IPlugin to determine the effective EnabledByDefault setting, based on where the plugin was loaded from.

Change 3508669 by Ben.Marsh

	EC: Parse multi-line messages from UBT and UAT.

Change 3508691 by Ben.Marsh

	Fix double-spacing of cook stats.

Change 3509245 by Steve.Robb

	UHT makefiles removed.
	Flag audit removed.

Change 3509275 by Steve.Robb

	Fix for mismatched stat categories in AudioMixer.

	#jira UE-46129

Change 3509289 by Robert.Manuszewski

	Custom Version Container will no longer be always constructed in FArchive constructor. This reduces the number of the Custom Version Container allocations considerably.

Change 3509294 by Robert.Manuszewski

	UDataTable::AddReferencedObjects will no longer try to iterate over the RowMap if there's no UObject references in it.

Change 3509312 by Steve.Robb

	GitHub# 3679: Add TArray constructor that takes a raw pointer and a count

	Check improved for Append() to allow nullptr in empty ranges, and added to new constructor too.

	#jira UE-46136

Change 3509396 by Steve.Robb

	GitHub# 3676: Fix TUnion operator<< compile error

	#jira UE-46099

Change 3509633 by Steve.Robb

	Fix for line numbers on multiline macros.

Change 3509938 by Gil.Gribb

	UE4 - Fix rare assert involving cancelled precache requests and non-pak-file loading.

Change 3510593 by Daniel.Lamb

	Fixed up unsoilicited files getting populated with files which aren't finished being created yet.

	#test None

Change 3510594 by Daniel.Lamb

	Fixed up temp files directory for patching.

	Thanks David Yerkess @ Milestone
	#review@Ben.Marsh

Change 3511628 by Ben.Marsh

	PR #3707: Fixed UBT stack size (Contributed by gildor2)


Change 3511808 by Ben.Marsh

	Optimize checks for whether the game project contains source code. Now stops as soon as the first file is found and ignores directories beginning with a '.' character (eg. .git)

	#jira UE-46540

Change 3512017 by Ben.Marsh

	Plugins: Deprecate the QueryStatusForAllPlugins() function; the same functionality is available via the IPlugin interface.

Change 3513935 by Steve.Robb

	Reverted array iteration in FPropertyNode::PropagatePropertyChange as this is now covered in TProperty::InitializeValueInternal() as of CL# 3293477.

Change 3514142 by Steve.Robb

	MemoryProfiler2 added to generated solution.

Change 3516463 by Ben.Marsh

	Plugins: Create a manifest for each PAK file containing all the plugin descriptors in one place. Eliminates need to recurse through directories and read separate multiple files in serial at startup, and allows reading all plugin descriptors with one read. The "Mods" directory is excluded from the manifest, since these are intended to be installed separately by the user.

Change 3517860 by Ben.Marsh

	PR #3727: FString Dereference Fixes (Contributed by jovisgCL)


Change 3517967 by Ben.Marsh

	Suppress additional system error dialogs when loading DLLs if -unnattended is on the command line.

Change 3518070 by Steve.Robb

	Disable Binned2 stats in shipping non-editor builds.

Change 3520079 by Steve.Robb

	Fixed bad codegen TAssetPtrs being passed into BlueprintImplementableEvent functions.

	#jira UE-24034

Change 3520080 by Robert.Manuszewski

	Made max package summary size to be configurable with ini setting

Change 3520083 by Steve.Robb

	Force a GC after hot reload to clean up reinstanced objects which may still tick.

	#jira UE-40421

Change 3520480 by Robert.Manuszewski

	Improved assert message when the initial package read request was too small.

Change 3520590 by Graeme.Thornton

	SignedArchiveReader optimizations
	 - Loads more stats
	 - Stop chunk cache worker from waking up continuously to poll for work. Only wake up when triggered by the archive reader
	 - Signed archive reader just yields when waiting for buffers to finish loading, rather than sleeping for some arbitrary amount of time
	 - Track the number of pending read requests in an atomic counter, to save having to lock the request queue to check for new entries

Change 3521023 by Graeme.Thornton

	Remove spin from signed archive reader. Main thread waits on an event triggered by the chunk worker to indicate that new chunks are ready for processing

Change 3521787 by Ben.Marsh

	PR #3736: Small static code analysis fixes (Contributed by jovisgCL)


Change 3521789 by Ben.Marsh

	PR #3735: Fix case sensitivity issue in FWindowsPlatformProcess::IsApplicationRunning. (Contributed by samhocevar)


Change 3524721 by Ben.Marsh

	Move Linux SDL initialization into FLinuxPlatformApplicationMisc. Attempting to move functionality related to interactive applications (graphics, input, etc...) into a separate place, so it can ultimately be moved out of Core.

Change 3524741 by Ben.Marsh

	Move PumpMessages() into FPlatformApplicationMisc.

Change 3525399 by Ben.Marsh

	UGS: Use the default Perforce server port when opening P4V if there is not one set in the environment.

Change 3525743 by Ben.Marsh

	UAT: Add a parameter to allow updating version files without updating Version.h, to allow faster link times on incremental builds.

Change 3525746 by Ben.Marsh

	EC: Include the clobber option on new workspaces, to allow overriding version files when syncing.

Change 3526453 by Ben.Marsh

	UGS: Do not generate project files when syncing precompiled binaries.

Change 3527045 by Ben.Marsh

	Fix hot reload generating import libraries without DLLs. Now that they are produced by separate actions by default, it was removing DLLs from the action graph due to the bSkipLinkingWhenNothingToCompile setting.

Change 3527420 by Ben.Marsh

	UGS: Add additional search paths for UGS config files, and fix a few cosmetic issues (inability to display ampersands in tools menu, showing changelist -1 when running a tool without syncing).

	Config files are now read from:

	Engine/Programs/UnrealGameSync/UnrealGameSync.ini
	Engine/Programs/UnrealGameSync/NotForLicensees/UnrealGameSync.ini

	If a project is selected:

	<ProjectDir>/Build/UnrealGameSync.ini
	<ProjectDir>/Build/NotForLicensees/UnrealGameSync.ini

	If the .uprojectdirs file is selected:

	Engine/Programs/UnrealGameSync/DefaultProject.ini
	Engine/Programs/UnrealGameSync/NotForLicensees/DefaultProject.ini

Change 3528063 by Ben.Marsh

	Fix non-thread safe construction of FPluginManager singleton. Length of time spent in the constructor resulted in multiple instances being constructed at startup, making the time to enumerate plugins on slow media significantly worse.

Change 3528415 by Ben.Marsh

	UAT: Remove \r characters from the end of multiline log messages.

Change 3528427 by Ben.Marsh

	EC: Fix spaces being converted to tabs at start of line in failure emails (by Gmail), and wrap following lines at the same indent.

Change 3528485 by Ben.Marsh

	EC: Remove zero-width word break characters from slashes in notification emails; can cause really hard to debug problems when copy pasted into other places.

Change 3528505 by Steve.Robb

	PR #3755: MallocProfiler - Remove subfolder from profiling save directory (Contributed by Josef-CL)


	#jira UE-46819

Change 3528772 by Robert.Manuszewski

	Enabling actor and blueprint clustering in ShooterGame

Change 3528786 by Robert.Manuszewski

	PR #3760: Fix typo (Contributed by jesseyeh)


Change 3528792 by Steve.Robb

	PR #3764: MallocProfiler - Refactoring Scopelock (Contributed by Josef-CL)


	#jira UE-46962

Change 3528941 by Robert.Manuszewski

	Fixed lazy object pointers not being updated for streaming sub-levels in PIE. Fixed lazy pointers returning object that is still being loaded which could lead to undefined behavior when client code started modifying the returned object.

	#jira UE-44996

Change 3530241 by Ben.Marsh

	UAT: Only pass -submit or -nosubmit to child instances of UAT if they were specified on the original command line. BuildCookRun uses this flag to determine whether to submit, rather than just whether to allow submitting, so we shouldn't pass an inferred value.

Change 3531377 by Ben.Marsh

	Plugins: Allow plugins to specify a list of supported target platforms, which is propagated to any .uproject file that enables it.

	This has several advantages over the per-module platform whitelist/blacklist:

	* Platform-specific .uplugin files can now be excluded when staging other platforms. Previously, it was only possible to determine which platforms a plugin supports by reading the plugin descriptor itself. Now that information is copied into the .uproject file, so the runtime knows which plugins to ignore.
	* References to dependent plugins from platform-specific plugins can now be eliminated.
	* Plugins containing content can now be unambiguously disabled on a per-platform basis (having no modules for a platform does not confer that a plugin doesn't support that platform; now it is possible to specify supported platforms explicitly).
	* The editor can load any plugins without having to whitelist supported editor host platforms.

	UE4 targets which support loading plugins for target platforms can set TargetRules.bIncludePluginsForTargetPlatforms (true for the editor by default, false for any other target types). This defines the LOAD_PLUGINS_FOR_TARGET_PLATFORMS macro at runtime, which allows the plugin system to filter which plugins to look for at runtime.

	Any .uproject file will be updated at startup to contain the list of supported platforms for each referenced plugin if necessary.

Change 3531502 by Jin.Zhang

	Add support for GPUCrash #rb

Change 3531664 by Ben.Marsh

	UBT: Change output format from C# JSON writer to match output by the engine.

Change 3531848 by Ben.Marsh

	UAT: Add script to resaving all project descriptors under a folder, embedding information for any supported platforms for the plugins they enable.

Change 3531869 by Ben.Marsh

	UAT: Add parameter to the ResaveProjectDescriptors command to update the engine association field.

Change 3532474 by Ben.Marsh

	UBT: Use the same mechanism as UAT for logging exceptions.

Change 3532734 by Graeme.Thornton

	Initial VSCode Support
	 - Tasks generated for building all game/engine/program targets
	 - Debugging support for targets on Win64

Change 3532789 by Steve.Robb

	FScriptSet::Add and TScriptMap::Add now replace the element, matching the behavior of TSet and TMap.
	Set_Add and Map_Add no longer have a return value.
	FScriptSet::Find and FScriptMap::Find functions are now FindIndex.
	FScriptSetHelper::FindElementFromHash is now FindElementIndexFromHash.

Change 3532845 by Steve.Robb

	Obsolete UHT settings deleted.

Change 3532875 by Graeme.Thornton

	VSCode
	 - Add debug targets for different target configurations
	 - Choose between VS debugger (windows) and GDB (mac/linux)

Change 3532906 by Graeme.Thornton

	VSCode
	 - Point all builds directly at UBT rather than the batch files
	 - Adjust mac build tasks to run through mono

Change 3532924 by Ben.Marsh

	UAT: Set the UAT working directory immediately on startup. This ensures that any command line arguments containing paths are resolved consistently to the branch root.

Change 3535234 by Graeme.Thornton

	VSCode - Pass intellisense system a list of paths to use for header resolution

Change 3535247 by Graeme.Thornton

	UBT - Add a ToString to ProjectFile.Source file to help with debugger watch presentation

Change 3535376 by Graeme.Thornton

	VSCode
	 - Added build jobs for C# projects
	 - Linked launch tasks to relevant build task

Change 3537083 by Ben.Marsh

	EC: Change P4 swarm links to start at the changelist for a build.

Change 3537368 by Graeme.Thornton

	Fix for crash in FSignedArchiveReader when multithreading is disabled

Change 3537550 by Graeme.Thornton

	Fixed a crash in the taskgraph when running single threaded

Change 3537922 by Steve.Robb

	Missing PF_ATC_RGBA_I added to FOREACH_ENUM_EPIXELFORMAT.

Change 3539691 by Graeme.Thornton

	VSCode - Various updates to get PC and Mac C++ projects building and debugging.
	 - Some other changes to C# setup to allow compilation. Debugging doesn't work.

Change 3539775 by Ben.Marsh

	Plugins: Various fixes to settings for enabling plugins.

	* Fix crash on startup when trying to disable a missing plugin (was keeping pointers to elements in the project's plugin reference array, which may be modified if a plugin is disabled).
	* Revert fix to set PluginDescriptor.bRequiresBuildPlatform = true by default. This was the originally intended behavior, but it was accidentally defaulted to false during serialization unless specified in the .uplugin file. Many plugins may rely on this behavior (they may not declare asset classes otherwise, for example, which could result in loss of data), so change the default value to false instead. Also fixes popups to disable platform-specific plugins if platform SDKs are not installed.
	* Fix plugins which are referenced but do not exist not showing the appropriate prompt to disable them.

Change 3540788 by Ben.Marsh

	UBT: Add support for declaring custom pre-build steps and post-build steps from .target.cs files. Similarly to the custom build steps configurable from .uproject and .uplugin files, these specify commands which will be executed by the host platform's shell before or after a build. The following variables are expanded within the list of commands before execution: $(EngineDir), $(ProjectDir), $(TargetName), $(TargetPlatform), $(TargetConfiguration), $(TargetType), $(ProjectFile).

	Example usage:

	public class UnrealPakTarget : TargetRules
	{
		public UnrealPakTarget(TargetInfo Target) : base(Target)
		{
			Type = TargetType.Program;
			LinkType = TargetLinkType.Monolithic;
			LaunchModuleName = "UnrealPak";

			if(HostPlatform == UnrealTargetPlatform.Win64)
			{
				PreBuildSteps.Add("echo Before building:");
				PreBuildSteps.Add("echo This is $(TargetName) $(TargetConfiguration) $(TargetPlatform)");

				PostBuildSteps.Add("echo After building!");
				PostBuildSteps.Add("echo This is $(TargetName) $(TargetConfiguration) $(TargetPlatform)");
			}
		}
	}

Change 3541664 by Graeme.Thornton

	VSCode - Add problemMatcher tag to cpp build targets

Change 3541732 by Graeme.Thornton

	VSCode - Change UBT command line switch to "-vscode" for simplicity

Change 3541967 by Graeme.Thornton

	VSCode - Fixes for Mac/Linux build steps

Change 3541968 by Ben.Marsh

	CRP: Pass through the EnabledPlugins element in crash context XML files.

	#jira UE-46912

Change 3542519 by Ben.Marsh

	UBT: Add chain of references to error messages when configuring plugins.

Change 3542523 by Ben.Marsh

	UBT: Add more useful error message when attempt to parse a JSON object fails.

Change 3542658 by Ben.Marsh

	UBT: Include a chain of references when reporting errors instantiating modules.

Change 3543432 by Ben.Marsh

	Plugins: Fix plugins which are enabled by default not being enabled unless a project file is set.

Change 3543436 by Ben.Marsh

	UBT: Prevent recursing through the same module more than once when building out the referenced modules. Produces much shorter reference chains when something fails.

Change 3543536 by Ben.Marsh

	UBT: Downgrade message about redundant plugin references to a warning.

Change 3543871 by Gil.Gribb

	UE4 - Fixed a critical crash bug with non-EDL loading from pak files.

Change 3543924 by Robert.Manuszewski

	Fixed a crash on UnrealFrontend startup caused by re-assembling GC token stream for one of the classes.
	+Small optimization to token stream generation code.

Change 3544469 by Jin.Zhang

	Crashes page displays the list of plugins from the crash context #rb

Change 3544608 by Steve.Robb

	Fix for nativized generated code.

	#jira UE-47452

Change 3544612 by Ben.Marsh

	Add callback into FMacPlatformMisc::PumpMessages() from FMacPlatformApplicationMisc::PumpMessages().

	#jira UE-47449

Change 3545954 by Gil.Gribb

	Fixed a critical crash bug relating to a race condition in async package summary reading.

Change 3545968 by Ben.Marsh

	UAT: Fix incorrect username in BuildGraph <Submit> task. Should use the username from the Perforce environment, not assume the logged in user name is the same.

	#jira UE-47419

Change 3545976 by Ben.Marsh

	EC: Delete the AutoSDK client if the directory doesn't exist. When we format build machines, we need to force everything to be resynced from scratch.

Change 3546185 by Ben.Marsh

	Hacky fix for deployment on IOS/TVOS. Since deployment directly references the NonUFS manifest files that are written out, merge all the SystemNonUFS files back into the NonUFS list after the regular NonUFS files have been remapped.

Change 3547084 by Gil.Gribb

	Fixed a critical race condition in the new async loader. This was only reproducible on IOS, but may affect other platforms.

Change 3547968 by Gil.Gribb

	Fixed critical race which potentially could cause a crash in the pak precacher.

Change 3504722 by Ben.Marsh

	BuildGraph: Improved tracing for error messages. All errors are now propagated as exceptions, and are tagged with additional context information about the task currently being run.

	For example, throwing new AutomationException("Unable to write foo.txt") from SetVersionTask.Execute is now displayed in the log as:

	ERROR: Unable to write to foo.txt
	         while executing <SetVersion Change="0" CompatibleChange="0" Branch="Unknown" Promoted="True" />
	         at Engine\Build\InstalledEngineBuild.xml(91)
	       (see D:\P4 UE4\Engine\Programs\AutomationTool\Saved\Logs\UAT_Log.txt for full exception trace)

Change 3512255 by Ben.Marsh

	Rename FPaths functions with a "Game" prefix (GameDir(), GameContentDir(), etc...) to have a "Project" prefix (ProjectDir(), ProjectContentDir(), etc...) for clarity with non-game uses of UE4. Old functions still exist but are deprecated.

Change 3512332 by Ben.Marsh

	Rename "Game" functions in FApp to be "Project" functions (FApp::GetGameName() -> FApp::GetProjectName(), etc...) for clarity with non-game uses of UE4.

Change 3512393 by Ben.Marsh

	Rename FPaths::GameLogDir() to FPaths::ProjectLogDir().

Change 3513452 by Ben.Marsh

	Plugins: Rename EPluginLoadedFrom::GameProject to EPluginLoadedFrom::Project.

Change 3516262 by Ben.Marsh

	Add support for a "Mods" folder distinct from the project's "Plugins" folder, instead of using the bIsMod flag on the plugin descriptor.

	* Mods are enumerated similarly to regular plugins, but IPlugin::GetType() will return EPluginType::Mod.
	* The DLCName parameter to BuildCookRun and the cooker now correctly finds any plugin in the Plugins or Mods directory (or any subfolders).

Change 3517565 by Ben.Marsh

	Remove fixed engine version numbers from OSS plugins.

Change 3518005 by Ben.Marsh

	UAT: Remove the bUFSFile parameter from DeployLowerCaseFilenames(). Every platform returns false if the argument is false.

Change 3518054 by Ben.Marsh

	UAT: Use an enum to direct whether all directories should be searched when finding files to stage, rather than a bool. Having so many optional boolean arguments makes code unreadable and refactoring hard.

Change 3524496 by Ben.Marsh

	Start moving GUI application code into a separate static platform class, hopefully ultimately removing it from Core.

Change 3524641 by Ben.Marsh

	Move more functionality related to windowed/graphical applications into FPlatformApplicationMisc.

Change 3528723 by Steve.Robb

	MoveTemp now static asserts if passed a const reference or rvalue.
	MoveTempIfPossible still follows the old (std::move) rule, which is useful for templates where the nature of the argument is not obvious.
	Fixes to violations of these new rules.

Change 3528876 by Ben.Marsh

	Move FPlatformMisc::ClipboardCopy and FPlatformMisc::ClipboardPaste to FPlatformApplicationMisc::ClipboardCopy and FPlatformApplicationMisc::ClipboardPaste.

Change 3529073 by Ben.Marsh

	Add script to package ShooterGame for any platforms.

Change 3531493 by Ben.Marsh

	Update platform-specific plugins to declare the target platforms they support.

Change 3531611 by Ben.Marsh

	UAT: Add a ResavePluginDescriptors command, which resaves all plugin descriptors under a given folder, removing any outdated fields and rewrites them in a consistent style. Many plugins in the wild contain redundant or no-longer used fields due to using our plugins as templates.

Change 3531868 by Ben.Marsh

	Resaving project descriptors to remove invalid fields.

Change 3531983 by Ben.Marsh

	UAT: Simplify logic for staging code, and add validation against shipping files in restricted folders.

	* Added a new SystemNonUFS type for staged files, which excludes files from being remapped or renamed by the platform layer.
	* Replaced the DeplyomentContext.StageFiles() function with simpler overloads for particular use cases (options for remapping are replaced with the SystemNonUFS file type)
	* Config entries in the [Staging] category in DefaultGame.ini file allow remapping one directory to another, so restricted content can be made public in packaged builds (Example syntax: +RemapDirectory=(From="Foo/NoRedist", To="Foo"))
	* An error is output if any restricted folder names other than the output platform are in the staged output.

Change 3540315 by Ben.Marsh

	UAT: Moving StreamCopyDescription command into a NotForLicensees folder, since it's only meant to be used by engine developers.

Change 3542410 by Ben.Marsh

	UBT: Deprecate accessing properties through BuildConfiguration.* or UEBuildConfiguration.* from .target.cs files. These have been aliases to the current TargetRules instance for several releases already.

Change 3543018 by Ben.Marsh

	UBT: Deprecate the BuildConfiguration and UEBuildConfiguration aliases from the ModuleRules class. These have been implemented as an alias ot the ReadOnlyTargetRules instance passed to the constructor for several engine versions.

Change 3544371 by Steve.Robb

	Fixes to TSet_Add and TMap_Add BPs.

	#jira UE-47441

[CL 3548391 by Ben Marsh in Main branch]
2017-07-21 12:42:36 -04:00
Marc Audy
2f10ee3611 Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3544039)
#lockdown Nick.Penwarden
#rb none
#rnx

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

Change 3343905 by Dan.Oconnor

	ResolveMember optimizations and moved into cpp. ResolveMember<UFunction> now checks UClass::FuncMap before doing more expensive searches

Change 3346637 by Ben.Zeigler

	Actually fix in non editor builds

Change 3355484 by Dan.Oconnor

	Back out FMemberReference Optimization

Change 3425833 by Ben.Zeigler

	#jira UE-31749 Fix it so Undo works properly when modifying a local variable
	#jira UE-44736 Fix it so changing the type of a local variable correctly resets the default value

Change 3510091 by Marc.Audy

	Expose on Spawn functional test

	#rnx

Change 3510100 by Marc.Audy

	Fix spelling error

	#rnx

Change 3510132 by Marc.Audy

	Fix issues with marking a widget blueprint class as abstract

Change 3510133 by Marc.Audy

	Minor code cleanup

	#rnx

Change 3510178 by Ben.Zeigler

	#jira UE-46500 Fix it so editor-only and transient stuct members are not serialized for literal blueprint structs. It's unsafe to serialize them because they may not exist in the cooked build

Change 3510466 by Ben.Zeigler

	Start adding basic ability system tests to enginetest, very minimal so far

Change 3511295 by Marc.Audy

	Fix wasted work going weak -> object -> weak -> object

	#rnx

Change 3511824 by Marc.Audy

	Fix spelling error in tooltip
	#jira UE-46515

	#rnx

Change 3514446 by Ben.Zeigler

	Fix ActorBoundEvent and ComponentBoundEvent to always refresh their event signature from the delegate property they are bound to. This is required to correctly deal with delegate signatures being moved or renamed. Both types now do the fixup one time, in ReconstructNode.

Change 3514578 by Marc.Audy

	Move clearing of the actor component need end of frame update mark to base class instead of just primitive component

Change 3514583 by Ben.Zeigler

	Better fix to last delegate checkin that also handles moving functions between modules but not renaming

Change 3515325 by Dan.Oconnor

	Fix for rare orphan pin false positive, rare exposed on spawn false positive

	#rnx

Change 3515761 by Marc.Audy

	fix shipping configuration

	#rnx

Change 3515772 by Marc.Audy

	Fix static analysis warnings

	#rnx

Change 3516287 by Marc.Audy

	Fix references to instanced components not being updated when resetting component to default
	#jira UE-44706

	#rnx

Change 3516303 by Marc.Audy

	Back out CL# 3516287 while an oddity is investigated

	#rnx

Change 3516563 by Marc.Audy

	(4.17) Fix references to instanced components not being updated when resetting component to default
	#jira UE-44706

Change 3516637 by Phillip.Kavan

	#jira UE-44661 - Fix potential crash when changing the ChildActorComponent class default value on a Blueprint that also sets the class in the Construction Script.

	Change summary:
	- Modified UChildActorComponent::DestroyChildActor() to move the check for PendingKill/Unreachable so that we can also rename a defunct ChildActor instance out of the way in order to allow for a new ChildActor instance w/ the cached name.

Change 3517735 by Marc.Audy

	Avoid unnecessary string copy

	#rnx

Change 3517931 by Marc.Audy

	Small optimization to CleanupActors

Change 3518221 by Dan.Oconnor

	Fix rare crash when running ConformImplementedEvents when async loading
	#jira UE-45348

Change 3518270 by Ben.Zeigler

	#jira UE-46574 Add FCollectionReference type and customization to allow setting an FName to an editor collection
	Add AssetCollection to PrimaryAssetLabel that derives the bundled assets from an editor collection

Change 3518271 by Marc.Audy

	Get rid of unnecessary construction differentiation if custom reset is being used

Change 3518310 by Ben.Marsh

	Re-adding IOS files with correct case.

Change 3518423 by Ben.Zeigler

	#jira UE-46574 Initial support for chunk installation in Asset Manager.
	Refactor AssetManagerSettings so it copies runtime bools into the asset manager for fast access
	Add a concept of a stalled streamable manager handle, handles can be created stalled and will not execute their async load until all needed resources have been acquired externally

Change 3518480 by Marc.Audy

	Correctly get the variable reference for an input variable get from the member scope rather than a member variable of the same name on the class
	#jira UE-46737

Change 3518498 by Ben.Zeigler

	Fix bug with AssetManager where requesting the same load twice in a row before the first one finishes caused the complete callback to get called too early for the second load
	Update test map to catch this

Change 3518526 by Ben.Zeigler

	IOS Fix

Change 3518619 by Ben.Zeigler

	#jira UE-46744 Fix issue where refreshing asset manager editor settings would throw away asset label rules overrides, causing the recursive flag to accidentally get set

Change 3518747 by Phillip.Kavan

	#jira UE-43154 - Prevent ConstructGenericObject nodes from compiling if the selected type does not include 'BlueprintType' in its inheritance hierarchy.

	Change summary:
	- Moved UGameplayStatics::CanSpawnObjectOfClass() into UK2Node_GenericCreateObject as a local util method (per JIRA notes). This was not exposed to Blueprints and as such was inconsistent with the rest of the API.
	- Modified UGameplayStatics::SpawnObject() to no longer call CanSpawnObjectOfClass(). This seemed redundant as this will already have been called during node validation at Blueprint compile time.
	- Refactored CanSpawnObjectOfClass() into FK2Node_GenericCreateObject_Utils. Walking up the inheritance chain no longer starts out w/ the assumption that 'BlueprintType' is set by default, which was previously including a lot of engine-specific classes into the "allowed" set (e.g. UByteProperty). Also unified the 2 loop iterations that were being used to check for 'BlueprintType'/'NotBlueprintType' and 'DontUseGenericSpawnObjectName', as well as the check for whether or not the class is a derivative of AActor/UActorComponent.
	- Modified UK2Node_GenericCreateObject::EarlyValidation() to call FK2Node_GenericCreateObject_Utils::CanSpawnObjectOfClass() and emit a slightly more informative error message to the BP compiler message log.

Change 3518756 by Michael.Noland

	(4.17) Framework: Prevent various asserts when USplineComponent methods are called on a spline with no points

Change 3518760 by Michael.Noland

	Core: Changed FRuntimeAssetCache ensures to ensureAsRuntimeWarning

Change 3518771 by Michael.Noland

	AI: Prevent an ensure in UBlackboardComponent::ClearValue when called on a component with a null BlackboardAsset

Change 3518818 by Michael.Noland

	Rendering: Fixed a whitespace issue in UCanvasRenderTarget2D::RepaintCanvas()

	#rnx

Change 3518822 by Michael.Noland

	Sequencer: Prevented crashes in some methods of UMovieSceneSequencePlayer when there is no Sequence set
	Sequencer: Prevented a crash in FMovieSceneRootEvaluationTemplateInstance::Evaluate when the instance has no template set

Change 3518824 by Michael.Noland

	Landscape: Marked ULandscapeComponent and ULandscapeHeightfieldCollisionComponent as Within=LandscapeProxy, since they do CastChecked on their Outer all the time

Change 3519073 by Michael.Noland

	QAGame: Fixed a crash in UQASynth::PlaySynth() if called on a directly created instance rather than using the factory method

Change 3519076 by Michael.Noland

	Preventing crashes in UAutomationPerformaceHelper (sic) when spawned abnormally for fuzzing (assumes that the outer will have a route to a world)
	#rnx

Change 3519079 by Michael.Noland

	Sequencer: Fixed a potential crash in UMediaPlaylist::Insert and UMediaPlaylist::RemoveAt when passed an invalid index

Change 3519081 by Michael.Noland

	Blueprints: Added support for creating appropriate outers for objects that must be nested within another class during fuzzing (ones that specify Within=, other relationships aren't knowable yet)

Change 3519082 by Michael.Noland

	VR: Prevent a crash in UMRMeshComponent::ConnectReconstructor when passed a null reconstructor

Change 3519084 by Michael.Noland

	Rendering: Prevent crashes when UNiagaraComponent::GetEffectDataInterface is called on a component with no effect asset set

Change 3521889 by Michael.Noland

	Sequencer: Prevented a bogus static analysis warning by reworking the code (FixedFrameInterval could have only been set if the pointer were valid from the line above)
	#rnx

Change 3521987 by Michael.Noland

	Animation: Prevent a couple of potential asserts in UControlRig::GetOrAllocateSubControlRig

Change 3522101 by Michael.Noland

	Physics: Improved the comment on UPhysicalMaterial::Friction

	#rn

Change 3522105 by Michael.Noland

	Physics: Fixed a few crashes in UVehicleWheel when spawned directly

Change 3522106 by Michael.Noland

	Framework: Marked ULevelStreaming as Within=World, since it does CastChecked on the Outer all the time

Change 3522109 by Michael.Noland

	Animation: Marked UAnimInstance as Within=SkeletalMeshComponent since it assumes the outer in various places

Change 3522121 by Michael.Noland

	Mobile: Prevent UMobileInstalledContent methods from crashing when called on a created instance in an uncooked build (no installed manifest)

Change 3522783 by Zak.Middleton

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

Change 3525477 by Dan.Oconnor

	Remove Tooltip, Category, and HideCategories tooltip from the blueprint generated class if source data is cleared

Change 3526538 by Ben.Zeigler

	Refresh primary asset labels if their bundles are different at all and not just if they're added or removed. This is required because they now work based on collections or directories. This fixes issue with the onboarding collection changes not correctly modifying chunks
	Copy of CL #3526501

Change 3526817 by Ben.Zeigler

	#jira UE-46917 Fix issue where maps that do not contain level script blueprints were being counted as unindexed for find in blueprints. The old behavior depended on detecting the existence of empty tags, but the asset registry now filters those out so treat maps with no FiB data as indexed

Change 3526873 by Ben.Zeigler

	#jira UE-46627 Change it so blueprint or native subclasses of static mesh actor cannot be added to clusters, as they are not likely to be immutable the way the base class is
	Add code to to the ubergraph frame to fall back to hard reference serialization if the reference collector doesn't support weak references, such as the cluster collector

Change 3526958 by Marc.Audy

	(4.17) Don't copy and then break pin links when reconstructing. Instead simply move.
	#jira UE-46935

Change 3528916 by Marc.Audy

	PR #3609: Adds GetKeysForAxis() to complement GetKeysForAction() in UPlayerInput (Contributed by alanedwardes)
	#jira UE-45347

Change 3529080 by mason.seay

	BP asset for undetermined type bug

Change 3529381 by Marc.Audy

	Fix ability to insert duplicates in to a set or map

Change 3529471 by Dan.Oconnor

	Fix for clang 4.0 error: definition of builtin function '__rdtsc' inline unsigned long long __rdtsc()

Change 3530876 by Marc.Audy

	Based on PR #3457: Add MakeSet BP node (Contributed by projectgheist)
	Also refactored MakeArray/Set to share a base MakeContainer class
	Cleaned up some dead code from MakeArray
	Added icon for MakeSet
	Added Functional Test for MakeSet
	#jira UE-43717

Change 3531070 by Phillip.Kavan

	#jira UE-46866 - Fix crash on load when an external variable member reference's owning type cannot be loaded.

	Change summary:
	- Modified FBlueprintEditorUtils::GetSkeletonClass() to check for NULL before attempting to check for the generating BP.

Change 3531081 by Marc.Audy

	Remove deprecated CustomMapParamValue code

Change 3531094 by Phillip.Kavan

	#jira UE-46952 - Fix a packaging code build failure that will occur with a nativized Blueprint class that contains a UInterfaceProperty.

	Change summary:
	- Modified TScriptInterface::operator=() to cast the given 'SourceObject' instance to the 'InterfaceType' type before assigning to 'SourceInterface'. This was necessary because if the caller (in this case nativized codegen) passes in a UObject* that does not explicitly inherit from 'InterfaceType', then it will need to go through the object's GetInterfaceAddress() API instead and cast the result back to an 'InterfaceType' pointer.

Change 3531186 by Phillip.Kavan

	Back out changelist 3531094 (temp CIS fix).

	#rnx

Change 3532082 by Marc.Audy

	Move garbage collection timers and other management to UEngine instead of UWorld
	Fixes CollectGarbage blueprint node not working in shipping
	#jira UE-46566

Change 3532134 by Phillip.Kavan

	Restored changelist 3531094 w/ fix for non-unity.

	- Mirrored from //UE4/Release-4.17 (CL# 3531232).

	#rnx

Change 3533009 by Marc.Audy

	Fixup missing function and deprecation warnings

Change 3534056 by Marc.Audy

	(4.17) Fix expose on spawn of map and sets to work
	#jira UE-47140

Change 3534761 by Marc.Audy

	(4.17) Apply code review changes to Dev-Framework as well

	#rnx

Change 3535147 by Dan.Oconnor

	Build fix, already made in 4.17

	#rnx

Change 3535530 by mason.seay

	Resaving to remove error when opening level blueprint

Change 3535581 by Marc.Audy

	Class Properties are only identical if they are literally the same object. Do not consider the deep compare port flags as object property base does.
	#jira UE-46533

Change 3535583 by Marc.Audy

	When properties are imported in to a child actor component the cached instance data is invalidated, so clear it.
	#jira UE-46533

Change 3535617 by Marc.Audy

	PR #3788: UE-39237: Prevent (im-)pure casting during BP debugging (Contributed by projectgheist)
	#jira UE-47188
	#jira UE-39237

Change 3535671 by Marc.Audy

	Change NodeFactory to look at interface to use sequence node instead of each node having to add itself

Change 3535955 by Marc.Audy

	Prevent MakeSet from removing split pins

Change 3536114 by Michael.Noland

	Paper2D: Removing deprecated code from 4.3/4.4 era

	#rnx

Change 3536120 by Michael.Noland

	Animation: Removed deprecated FTAlphaBlend class and AlphaBlendType.h header

Change 3536124 by Michael.Noland

	Physics: Removed deprecated methods that were replaced by _AssumesLocked variations

Change 3536131 by Michael.Noland

	Slate: Converting remaining uses of EKeyboardFocusCause to EFocusCause and properly deprecating it

Change 3536138 by Michael.Noland

	Slate: Removed any deprecated code older than 4.10 that didn't affect content compatibility

Change 3536167 by Dan.Oconnor

	When a client provides a skeleton class as the self scope, make sure we also use a skel class for non-self scopes - but only if using the compilation manager. Skel classes are not reliably up to date when not using the compilation manager
	#jira UE-46904

Change 3536221 by Michael.Noland

	Editor: Removing deprecated code from 4.9 or earlier

Change 3536240 by Michael.Noland

	Blueprints: Removed long-deprecated TypeToString method from the K2 schema
	#rnx

Change 3536243 by Michael.Noland

	AI: Prevent crashes if UMockTask_Log is created manually rather than via the CreateTask factory method

Change 3536244 by Michael.Noland

	Core: Prevent FScopedExternalProfilerBase::StopScopedTimer() from asserting if called an unmatched number of times with StartScopedTimer, as both are exposed to BPs now

Change 3536250 by Michael.Noland

	CoreUObject: Removed any deprecated code older than 4.10 that didn't affect content compatibility

Change 3536253 by Michael.Noland

	Core: Removed any deprecated code older than 4.10 that didn't affect content compatibility

Change 3536310 by Michael.Noland

	Engine: Removed any deprecated code older than 4.10 that didn't affect content compatibility

Change 3536397 by Mieszko.Zielinski

	Fixed UCrowdFollowingComponent::UpdateCachedDirections crashing when CharacterMovement is not set #UE4

	#jira UE-46860

Change 3536404 by Michael.Noland

	Platform: Added a warning for others when they try to remove this 'deprecated' method

Change 3536639 by Michael.Noland

	CharacterMovement: Changed the name of a variable introduced in CL# 3536397 to better match intent
	#rnx

Change 3536893 by Michael.Noland

	Blueprints: Clear the stale value on the value pin when a map find node fails to find an item
	#jira UE-47233

Change 3536902 by Michael.Noland

	Framework: Killed a couple of more deprecated methods that were not exposed to Blueprints

	#rnx

Change 3537038 by Ben.Marsh

	Fixing case of iOS directories, pt1

Change 3537039 by Ben.Marsh

	Fixing case of iOS directories, pt2

Change 3538246 by Michael.Noland

	UnrealTournament: Fixing issues with renamed enum

	#rnx

Change 3538618 by Ben.Zeigler

	Fix ensure when closing sequencer transform UI

Change 3540213 by Ben.Zeigler

	#jira UE-47313 Fix crash serializing a MapProperty where the value type has changed for a type that implements ConvertFromType. The address passed to ConvertFromType needs to be the container root, not the specific value address, keys worked because the offset was 0.

Change 3540253 by Marc.Audy

	Only copy default values for input pins as output pins do not have them

	#rnx

Change 3540376 by Marc.Audy

	Add utility FromPinType for FEdGraphTerminalType

	#rnx

Change 3540433 by Marc.Audy

	Add MakeMap
	#jira UE-47093
	Unify IsConnectionDisallowed for containers and fix static analysis warning
	#jira UE-47291

Change 3540585 by Phillip.Kavan

	#jira UE-47117 - Fix crash on launch of a nativized build that includes an instanced default subobject that's referenced by another instanced default subobject.

	Change summary:
	- Modified FEmitDefaultValueHelper::HandleSpecialTypes() to only direct HandleInstancedSubobject() to emit code to create the instanced subobject if it's not a default subobject. This was previously being incorrectly interpreted as an object having the 'RF_ArchetypeObject' flag set; however, default subobjects will also have that flag set in addition to the 'RF_DefaultSubobject' flag.
	- Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to assert in the 'GetDefaultSubobjectByName' case if the given object is not also a default subobject.

Change 3541147 by Dan.Oconnor

	Fix for not being able to override custom events when using the compilation manager post 3536167
	#jira UE-47292
	#rnx

Change 3541177 by Ben.Zeigler

	#jira UE-46595, UE-46553 Fix issue where creating a widget template could cause a widget blueprint being cooked to have the wrong package flags, making it appear to be an uncooked package
	Copy of CL #3541027

Change 3541325 by Dan.Oconnor

	K2node data table data needs to preload data before the compilation queue is flushed

	#rnx
	#jira UE-47319

Change 3541409 by Michael.Noland

	Blueprints: Added code to reapply any active breakpoints after recompilation when using the BP compilation manager
	#jira UE-47322

	[reimplementing CL# 3541404 in Dev-Framework]

Change 3541418 by Dan.Oconnor

	Fix for bad SKEL_ CDO reference in blueprint bytecode
	#jira UE-47265

	#rnx

Change 3541482 by Dan.Oconnor

	Blanket fix up of preload calls that are being done in AllocateDefaultPins. AllocatDefaultPins is not called until compile, meaning if these preload calls load blueprints they will be loaded while the compilation manager is compiling blueprints

	#rnx
	#jira UE-47319

Change 3541817 by Marc.Audy

	Fix static analysis warnings

	#rnx

Change 3542299 by Michael.Noland

	Blueprints: Speculative fix for static analysis warning
	#rnx

Change 3542406 by Marc.Audy

	Use a check slow to avoid any cost

	#rnx

Change 3542486 by Michael.Noland

	Asset Manager: Removing an unnecessary ensure (it's a potentially expected case)

	#jira UE-47380

Change 3542659 by Michael.Noland

	Blueprints: Clear out null entries in the LastEditedDocuments list during PostLoad() and remove entries when a graph is being deleted to prevent their generation in the first place
	#jira UE-47385

Change 3543620 by Dan.Oconnor

	Remove overzealous ensure - we may recompile blueprints that are asynchronously loading when a user triggers a synchronous compile
	#jira UE-47415
	#rnx

Change 3518415 by Ben.Zeigler

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

Change 3534339 by Michael.Noland

	Platforms: Changed DEPRECATED() macro description to use 4.xx rather than a speciifc version in examples, so it doesn't show up when removing deprecated code

[CL 3544050 by Marc Audy in Main branch]
2017-07-19 09:49:59 -04:00
Adric Worley
ce1de878db Copy CL 3514743 from Dev-Automation
Back out changelist 3491768

Removed FOV option from ScreenshotFunctionalTest.
Exposed ScreenshotFTest camera component as editable instead.

#tests UFE and preflight
#rb bob.ferreira
#fyi guillaume.abadie, marcus.wassmer
#lockdown nick.penwarden

[CL 3516309 by Adric Worley in Main branch]
2017-06-29 14:17:31 -04:00
Marcus Wassmer
0213a61500 Fix automation warnings
#rb none
#lockdown nick.penwarden

[CL 3513664 by Marcus Wassmer in Main branch]
2017-06-28 10:51:12 -04:00
Marcus Wassmer
64e19e2224 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3511476)
#lockdown Nick.Penwarden

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

Change 3372740 by Chris.Bunner

	[Experimental] Partial compute post process pipeline (r.PostProcess.PreferCompute).
	StencilSceneTexture added to deferred list.
	A few known issues to be fixed in a follow-up CL.

Change 3374187 by Chris.Bunner

	Volume texture support for CombineLUTs/Tonemap compute pass.
	Refactored common param code to shared sub-class in CombineLUTs and Tonemap PS/CS.
	Skip compute post process out-of-bounds writes.
	Unsigned type conversion fixes.
	Trimmed compute post process shader inputs.

Change 3441680 by Uriel.Doyon

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

Change 3454636 by Uriel.Doyon

	Fixed point light having an extra scale of 16 in mobile
	#jira UE-45272

Change 3454844 by Uriel.Doyon

	Fixed extra X16 on some point lights
	#jira UE-45250

Change 3454934 by Chris.Bunner

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

Change 3461206 by Guillaume.Abadie

	Adds possibility to scene captures and player controller to render no primitives at all.

Change 3461207 by Guillaume.Abadie

	Exposes showflag details to USceneCaptureComponent. This gives the possibility to configure scene capture's showflags in blueprint encapsulated compositing pipeline.

	#jira UE-6810

Change 3461233 by Chris.Bunner

	Added Log10 material expression.
	Added tooltip for Log2 and Log10.

Change 3461434 by Michael.Trepka

	Copy of CL 3456118

	In Metal RHI report texture streaming as immediately successful as on D3D to avoid a race-condition leading to deadlock between the Main, Game, Render & RHI threads.

	#jira UE-44961

Change 3461770 by Benjamin.Hyder

	Submitting TM-RayTracedDistanceField map

Change 3461929 by Marc.Olano

	Add Sobol blueprint and material node test maps to RenderTest project

Change 3462249 by Uriel.Doyon

	Translucency after DoF is now disabled when showflag postprocess is disabled.

Change 3462371 by Brian.Karis

	VT addressing is now 64bit to support huge sparse virtualized volumes

	16bit page tables working.

Change 3462936 by Marc.Olano

	Extend Sobol testing map with comparision between Random Sobol and Next Sobol functions

Change 3464394 by Uriel.Doyon

	Improved synchronization for texture streaming commands.
	This fixes an issue when accessing FStreamingTexture for pending textures.

Change 3464743 by Guillaume.Abadie

	Adds .usf file extension on all shader's source file names and adds checks to verify them at engine load time.

Change 3464818 by Guillaume.Abadie

	Fixes compilation error in FindShaderRelativePath

Change 3465184 by Daniel.Wright

	r.Shadow.PreShadowResolutionFactor 1.0 on Epic shadow settings

Change 3465283 by Marc.Olano

	Update Sobol Gray code tables to match random order tables

Change 3465976 by Arne.Schober

	DR - [UE-44393] - The Canvas is using the Globalshaders for clearing but compilation is done asynconously at load time. Unfortunately there could be Code that uses a canvas to draw and cause this issue in between. There might be some plugins that do this. For now we need to wait and block for the shaqders to be compiled until we can allo the use of the canvas.

	#RB none

Change 3467513 by Guillaume.Abadie

	Fixes an issue where primitives would no longer draw in gameplay.

	#jira UE-45550

Change 3471116 by Richard.Wallis

	Mac OpenGL Is No Longer Supported - Remove All Code & Shader Platforms.  Merge of CL 3327784 dev-editor stream from Michael Trepka with some extra changes.

	- Also removed Metal shader platforms from PlatformSupportsDebugViewShaders() otherwise we get a compiler error.  HLSL register binds not implemented in metal backend.

	#jira UE-39108

Change 3471117 by Richard.Wallis

	Drop down menus clip on 27" Screen iMacs.  Disable viewport HDR rendering on macOS 10.12.x when in editor.
	#jira UE-43026

Change 3471130 by Richard.Wallis

	Mac GPU hang causes editor output log to be written to the wrong file.  Try to emulate windows behaviour when opening a file for reading or writing.  Tested against behaviour of windows log file with multiple instances running.

	- Only defined in for Mac and non shipping.

	#jira UE-44934

Change 3471224 by Guillaume.Abadie

	Lets the ProjectFileGenerator to look at Shaders/ directories in plugin and game projects.

Change 3471646 by Daniel.Wright

	Fixed ensure opening UT system settings

Change 3471862 by Arne.Schober

	DR - revert accidently checked in changes.
	#RB Chris.Bunner

Change 3472249 by Guillaume.Abadie

	Implements virtual shader source directory mapping.

	- /Engine/... maps to Engine/Shaders/...
	- /Plugin/FooBar/... maps to FooBar plugin's Shaders/ directory
	- /Project/... maps to project's Shaders/ directory

Change 3472443 by Daniel.Wright

	Moved the Rendering category for lights to be just below the Light category, so the bVisible property is easily accessible

Change 3474537 by Uriel.Doyon

	Fixed lighting needs rebuild happening after blueprint rescript and a non symetrical Quaterion != ToQuaternion(ToRotator(Quaternion)

Change 3475192 by Guillaume.Abadie

	Implements LensDistortion engine plugin.

	This CL import a polished version of Raven's lens distortion and undistortion from OpenCV parameters:
	 - It is implemented as the first engine plugin with its own shaders and render thread commands;
	 - Has feature tests in EngineTest with gold images directly extracted from OpenCV itself (GenerateLensDistortionUndistortReferences.py)

Change 3475209 by Guillaume.Abadie

	Back out changelist 3475192

Change 3475252 by Guillaume.Abadie

	Reland: Implements LensDistortion engine plugin.

	This CL import a polished version of Raven's lens distortion and undistortion from OpenCV parameters:
	 - It is implemented as the first engine plugin with its own shaders and render thread commands;
	 - Has feature tests in EngineTest with gold images directly extracted from OpenCV itself (GenerateLensDistortionUndistortReferences.py)

Change 3475389 by Guillaume.Abadie

	Adds LensDistortion plugin's feature tests.

Change 3475538 by Guillaume.Abadie

	Adds the /Engine/* prefix on all of the renderer's USF file references.

Change 3475568 by Guillaume.Abadie

	Adds a check for virtual shader source file path format in FShaderType::FShaderType()

Change 3475871 by Guillaume.Abadie

	Fixes a bug in shader compile worker, were an error in a relative #include USF file would trigger an check failure in CheckVirtualShaderFilePath

Change 3475997 by Yujiang.Wang

	Workaround for a compiler optimization bug introduced in VS2015 Update 3.

	* The bug causes TSHVector<2>::CalcDiffuseTransfer to go to infinity at certain spot, making movable objects with ILCQ_Volume indirect lighting cache interpolation get very dark.
	* Debug builds don't exhibit this bug.
	* Semantics are exactly the same as the original code.

Change 3476203 by David.Hill

	Compute SSAO: problem wiht AmbientOcclusionLevels and with various viewporttest sizes.  Only seen when Levels >=2
	#jira UE-45741

Change 3476536 by Benjamin.Hyder

	adding player start to Ray Traced Distance Field Shadows Map

Change 3478298 by Benjamin.Hyder

	disabling mesh distance fields in Tm-Raytraced_DistanceField_Shadows map

Change 3478948 by Rolando.Caloca

	DR - Nicer check

Change 3478949 by Rolando.Caloca

	DR - Default GPU morphs to enabled

Change 3478950 by Rolando.Caloca

	DR - By default -vulkan will launch SM5

Change 3478984 by Rolando.Caloca

	DR - Pass down -vulkan

Change 3479655 by Richard.Wallis

	Video track does not switch in AVF Media Player.  Need to disable unused video tracks to allow AVPlayerItemVideoOutput to decode the required track.

	- Minimal change to allow video track changes/selection.
	- Audio samples are extracted using AVAssetReaderTrackOutput but video uses AVPlayerItemVideoOutput.  Video could also use AVAssetReaderTrackOutput to access the video data unless there is an iOS reason not to...
	- Flush the audio sink sample buffers so we get instant audio track changes

	#jira UE-39750, UE-39749

Change 3479834 by Rolando.Caloca

	DR - Fix issue with bad vertex colors (per licensee)

Change 3480376 by Guillaume.Abadie

	Disables ComputeLightGrid() if no volumetric fog and no lighting.

	#jira UE-45377

Change 3480596 by Yujiang.Wang

	Fix for dynamic shadows and raytraced distance field shadows of directional lights not appearing in planar reflection

	* Bug caused by incorrect shadow culling volumes for cascaded shadow map and backface culling mode for WholeSceneShadowProjection
	* Fixed by taking View.bReverseCulling into account

	#jira UE-34452

Change 3480600 by Yujiang.Wang

	Fix for UE-42376

	* The bug is caused by post-processing ambient cubemaps not being supported in forward shading currently.
	* This fix replaces all the occurences of them in CalcSceneView with a skylight using the cubemap
	* If a CalcSceneView is used solely for setting the PP ambient cubemap, it is removed.

	#jira UE-42376

Change 3480784 by Rolando.Caloca

	DR - hlslcc - Initial support for [RW]StructuredBuffer

Change 3481690 by Uriel.Doyon

	Attempt to fix static analysis warning

Change 3482012 by Simon.Tovey

	Fixed issue when building distribution lookup tables where the final sample fell short of the max input time.
	As sampling is done only over this range, under constant interpolation the final value was never actually sampled and so cut from the final optimized LUT.

	#tests constant interpolation now works.

	#jira UE-45614

Change 3482965 by Yujiang.Wang

	Some quality of life changes for UE-42757

	* The UV overlay in static mesh editor now has a darker background
	* Selected edges are getting highlighted and bolder
	* When some edges are selected others turn grey

	#jira UE-42757

Change 3483014 by David.Hill

	Change labels on bloom boost from x,y,z to min, max, mult.
	#jira UE-43904

	a PropertyRedirect in BaseEngine.ini allows this to work with older version.

Change 3484573 by Yujiang.Wang

	Fix for shadow color not updated after light build when a texture is changed and reimported

	* Bug caused by counter-intuitive design of UMaterial::GetReferencedFunctionIds and UMaterial::GetReferencedParameterCollectionIds, both of which will reset the OutIds parameter
	* Renamed to AppendReferencedFunctionIdsTo and AppendReferencedParameterCollectionIdsTo, the resets are removed

	#jira UE-45647

Change 3484969 by Yujiang.Wang

	Fix for UE-39929 inconsistent type between C++ and shader code

	* MeshDistanceFieldCasterIndices is declared as Buffer<uint> in CapsuleShadowShaders.usf, while created as PF_R32_SINT in CapsuleShadowRendering.cpp
	* Changed PF_R32_SINT to PF_R32_UINT in CapsuleShadowRendering.cpp

	#jira UE-39929

Change 3485012 by Yujiang.Wang

	Fix for UE-39929 #2: Changed int32 to uint32 to match PF_R32_UINT

	#jira UE-39929

Change 3485146 by Guillaume.Abadie

	Destroyes scene capture's view states on the UnRegister, to avoid large memory usage cause by the ViewState's render targets when moving blueprints arround.

	#jira UE-43455

Change 3486602 by Joe.Conley

	Adding "texcoord" keyword to UMaterialExpressionTextureCoordinate so you can search for the name that is displayed on the node in the graph.

Change 3487471 by Yujiang.Wang

	Github #3659: Improved performance of DumpUnbuiltLightInteractions

	* Replaced TArrays with TSets

	#jira UE-45783

Change 3487641 by Guillaume.Abadie

	Fixes some shader file name casing issues in LPV.

Change 3488014 by Uriel.Doyon

	New AllowAsyncLoading flag for UTexture::CachePlatformData().
	It allows to load the source texture data in the async task if the source bulk data was not yet loaded.

	Data loaded that way is not sharable between tasks and will be discarded.
	This is required because updating the source data is not thread safe.

	#jira UERNDR-190
	#jira UE-33401

Change 3488249 by Uriel.Doyon

	Fixed long stall in UpdateResourceStreaming() caused by Actor.GetComponents() not resetting the number of actors anymore.
	Fixed inconsistent results in ALODActor::HasValidSubActors() caused by the same change.

	#jira UE-46004

Change 3490228 by Mark.Satterthwaite

	Fix the Nvidia driver bug with the old reversebits fallback function - you need to use the native reverse_bits intrinsic or use some uint(ushort()) casts to get the compiler to do the right thing, which means injecting the reverse_bits function in MetalBackend not the HLSL (as it has no such type).

	#jira UE-46067

Change 3490538 by Arne.Schober

	Back out changelist 3488249
	#RB none

Change 3490551 by Arne.Schober

	Back out changelist 3488249
	#RB none

Change 3491828 by Guillaume.Abadie

	Fixes another USf file reference casing issue in C++.

Change 3491924 by Yujiang.Wang

	Fix for UE-43302 Crash when entering the DebugCreatePlayer console command with planar reflections in the level

	* Crash caused by check(Views.Num() <= 2); in SceneCaptureRendering.cpp
	* We still want to support at most 2 views for performance, but now instead of crash the planar reflections in additional views will simply turn black

	#jira UE-43302

Change 3492359 by Guillaume.Abadie

	Fixes non editor launches, failing in FGenericPlatformProcess::AddShaderSourceDirectoryMapping().

Change 3492367 by Marc.Olano

	Change Sobol texture size to 32x16, tweak distribution

Change 3492599 by Marcus.Wassmer

	PR #3669: -Fix logmessages ParticleModules_Location.cpp (Contributed by UpwindSpring01)

Change 3493473 by Uriel.Doyon

	Back out changelist 3490538

Change 3493590 by Uriel.Doyon

	Back out changelist 3490551
	Fixed missing #pragma once

Change 3493911 by Marcus.Wassmer

	Fix potential GPU crash/hang caused by out of bound subresource updates.
	Added checks at cross-platform level to catch any instance earlier.

Change 3494139 by Uriel.Doyon

	Fixed shadow variable issue on UE4Editor Linux.

Change 3494364 by Richard.Wallis

	Mac OpenGL Is No Longer Supported - Remove All Code & Shader Platforms - Part 2: Remove some more areas and fixes for previous attempt.  Also removed OpenGL based GPU performance checks in EditorEngine.cpp - assuming that any GPU that can run Metal is currently OK for UE4.

	OpenGL left in the following areas:

	- OpenGLShaderCompiler
	- StandaloneRenderer

	The following files need to be reviewed in conjunction with CL 3471116 as there were some logic errors made:

	- OpenGLTexture.cpp

	#jira UE-39108

Change 3494413 by Guillaume.Abadie

	Updates r.InvalidateCachedShader and bump ShaderVersion.ush.

Change 3494422 by Guillaume.Abadie

	Adds LensDistortion plugin's Private shader directory.

Change 3494717 by Guillaume.Abadie

	Strengthens shader compiler with checks on generated file names and shader type file names.

Change 3494763 by Guillaume.Abadie

	Removes a nolonger standing TODO in GlobalBeginCompileShader() that was automatically adding /Engine/ prefix to all relative virtual shader source file path.

Change 3494985 by Rolando.Caloca

	DR - Integrate Vulkan Rewrite

Change 3495031 by Rolando.Caloca

	DR - Delete file as it moved

Change 3495032 by Rolando.Caloca

	DR - Show Vulkan SM5 instead of SM4 on windows packaging
	- Also added support for Vulkan SM5_UB

Change 3495202 by Uriel.Doyon

	Fixed static analysis warning with pointer dereferencing.

Change 3495342 by Rolando.Caloca

	DR - clang compile fix

Change 3495354 by Rolando.Caloca

	DR - clang compile fixes

Change 3495420 by Marc.Olano

	Use Sobol sampling for PCSS

Change 3495799 by Rolando.Caloca

	DR - Delete old dev assets

Change 3496202 by Mark.Satterthwaite

	Switch to using actual Vector*Matrix intrinsic for Metal to avoid a problem whereby the Metal compiler reorders operations in such a way that it loses precision and ends up being different between pre-pass and base-pass.

	#jira UE-46070

Change 3496253 by Uriel.Doyon

	Fixed static analysis warning for IncludeTool

Change 3496631 by Guillaume.Abadie

	Makes AScreenshotFunctionalTest::ScreenshotOptions blueprint readable.

Change 3496851 by Guillaume.Abadie

	Fixes back slash issues in Platform.usf.

Change 3496852 by Guillaume.Abadie

	Fixes other back slashes includes in PS4 specific usf files.

Change 3496941 by Guillaume.Abadie

	Adds a check() for no backslash in virtual shader file paths.

Change 3497661 by Guillaume.Abadie

	Lets FLensDistortionCameraModel::GetUndistortOverscanFactor() early return 1.0 if the camera model is does an identity transform.

Change 3497969 by Richard.Wallis

	Fix for start Up Movies Are not Playing for iOS Devices.  Handle case when movie is loading aysnc in background - need to wait for state changes otherwise it skips intermediate movies.

	- Tested on iOS and Mac.

	#jira UE-39585

Change 3498035 by Guillaume.Abadie

	Polishes //Engine/Plugins/Compositing/LensDistortion/Shaders/Private/UVGeneration.usf from debuging artifacts.

Change 3498101 by Rolando.Caloca

	DR - Compile fix

Change 3498254 by Guillaume.Abadie

	Exposes comparing FLensDistortionCameraModel to blueprint with == and != operator nodes for cross frame uv displacement map caching.

Change 3498264 by Guillaume.Abadie

	Integrate 3267269: Implements SceneCaptureComponent2D::bCameraCutThisFrame

Change 3498371 by Yujiang.Wang

	Fix for UE-46149 Planar Reflections display screenspace info when viewports are >2

	* Prevent planar reflections being rendered when ViewIndex >= GMaxPlanarReflectionViews
	* Now planar reflections in >2 viewports will fallback to other reflection methods (SSR, reflection captures)

	#jira UE-46149

Change 3498409 by Rolando.Caloca

	DR - Swap resolves

Change 3498410 by Guillaume.Abadie

	Adds support for opacity output alpha for post process material when doing a draw material to render target.

Change 3498705 by Rolando.Caloca

	DR - Add UID for debugging mem allocations

Change 3498759 by Marcus.Wassmer

	No post processing in vertexcolor view mode

	#jira UE-44704

Change 3498891 by Rolando.Caloca

	DR - Minor Vulkan per frame allocator refactor in prep for changes

Change 3499206 by Rolando.Caloca

	DR - Fix temp frame allocator OOM on Vulkan

	#jira UE-45913

Change 3499319 by Rolando.Caloca

	DR - Vulkan support for StorageBuffer

Change 3499339 by Rolando.Caloca

	DR - Remove deprecated typedef

Change 3499400 by Rolando.Caloca

	DR - Remove some RHICmdList deprecated functions

Change 3499422 by Rolando.Caloca

	DR - Allow buffer transitions inside render passes

Change 3500370 by Rolando.Caloca

	DR - Compile fix

Change 3500474 by Rolando.Caloca

	DR - Fix static analysis

Change 3500517 by Guillaume.Abadie

	Exposes r.PostProcessing.PropagateAlpha to the renderer settings.

Change 3500537 by Guillaume.Abadie

	Fixes a bug where scene capture WorldToView matrix would get scale != 1 when scaling the scene capture actor in the world.

	#jira UE-39389

Change 3501069 by Mark.Satterthwaite

	Bring back temporary 4.16 fix for iOS 9 (CL #3425995) into Dev-Rendering for 4.17 as a real fix will need to wait for 4.18.

	temporary fix for skewed textures on IOS 9
	#jira UE-44468

Change 3501164 by Michael.Lentine

	PR #3402: UE-43131: Format argument count not equal to actual arguments (Contributed by projectgheist)


Change 3501222 by Benjamin.Hyder

	Checking in Tm_SobolNoise map

Change 3501612 by zachary.wilson

	Adding testing content for RTDF shadows on planar reflections

Change 3501708 by Guillaume.Abadie

	Break FPostProcessSettings into smallers structs.

Change 3501830 by Olaf.Piesche

	#jira UE-39628; using fix proposed in UDN, will investigate further

Change 3501954 by Marcus.Wassmer

	Duplicate 3480903
	Light culling safety measures.

Change 3502032 by Mark.Satterthwaite

	Fix generation of Metal precompiled headers for the bytecode compiler when using Xcode 9.

Change 3502118 by Uriel.Doyon

	Fixed shader compilation issues.

Change 3502191 by Guillaume.Abadie

	Implements Composure plugin to make compositing in UE4 easier.

Change 3502192 by Guillaume.Abadie

	Implements Composure feature testing in EngineTests

Change 3502196 by Guillaume.Abadie

	Creates a dependency of Composure plugin over LensDistortion plugin.

Change 3502213 by Arciel.Rekman

	Fix for loading shaders on Linux (UE-46276).

Change 3502243 by Brian.Karis

	Bent normal map support.

	Multibounce AO.
	Spherical Gaussian based specular occlusion.

Change 3502506 by Guillaume.Abadie

	Fixes compilation failure in Composure with unity build.

Change 3502507 by Guillaume.Abadie

	Fixes composure Set Pass with Render Target blueprint helper.

Change 3502510 by Guillaume.Abadie

	Attempts to fix ComposureUtils.cpp compile errors.

Change 3502515 by Guillaume.Abadie

	Some other composure failure fixes.

Change 3502545 by Guillaume.Abadie

	Fixes some unity build related error in Composure.

Change 3502548 by Guillaume.Abadie

	Fixes last missing includes in ComposurePostProcessPass.cpp

Change 3502672 by Guillaume.Abadie

	Fixes linux warning in Composure.

Change 3502790 by Ryan.Brucks

	float4 PseudoVolumeTexture: Fixed frame layout being a float instead of float2. Now works correctly with non-square frame layouts. Only called in custom nodes and calling with a float still functions properly so no old content will break.

Change 3502836 by Guillaume.Abadie

	Propagates scene capture engine showflag changes from blueprint editor to the blueprint instances.

	#jira UE-6810

Change 3503096 by Guillaume.Abadie

	Resave a unversioned asset.

Change 3503228 by Yujiang.Wang

	Fix for UE-45646 Dynamic Light placed inside of a Dynamic Static Mesh doesn't pass through the geometry

	* Bug caused by bReflectiveShadowmap not being passed into SetViewFlagsForShadowPass
	* Replaced the true with bReflectiveShadowmap

	#jira UE-45646

Change 3503284 by Rolando.Caloca

	DR - Fixed initial clear on rendertargets
	- Added support for r.Vulkan.EnableValidation 1, 2, 3 & 4
	- Dump the vulkan log into VS output log
	- Added validation for layouts when using dump log

Change 3503545 by Arciel.Rekman

	Fix black UI on Linux (UE-46333)

	- Rebuilt hlslcc with clang 3.7.0. Whatever issues we're running in with newer clangs still seem to persist.

	#jira UE-46333

Change 3503638 by Daniel.Wright

	[Copy] Changed DynamicBentNormalAO back to fp16, as PF_FloatR11G11B10 was not enough precision and introduced banding

Change 3503787 by Marcus.Wassmer

	Fix difference between gpu/cpu morph target application

Change 3503902 by Marcus.Wassmer

	Roll back TAA refactor until we have time to look into the bad interaction with DOF.

Change 3503953 by Arne.Schober

	DR - UE-46319 - borked Reflections: The resource transition needs to be in this weired place for PS4 and switch until we teach the interface to know about subresources.
	#RB Marcus.Wassmer

Change 3504131 by Rolando.Caloca

	DR - Maintain a cache of pipeline and descriptor set layouts
	- Fix marker dump

Change 3504462 by Guillaume.Abadie

	Fixes an assertion failure that was failing because compute light grid was not done, but the shader used where not necessarily using compute light grid results.

	#jira UE-46277

Change 3504779 by Chris.Bunner

	Potential static analysis fix.

	#jira UE-46360

Change 3504950 by Marc.Olano

	Allow Sobol material nodes & textures only if feature level is at least ES3.1

	#jira UE-46334
	#jira UE-46317

Change 3505035 by Daniel.Wright

	Increased MaxSearchCount in GetShaderIncludes.  The previous limit of 20 is now getting hit in BasePassPixelShader.usf, causing compiles to fail erroneously.

Change 3505386 by Daniel.Wright

	GetShaderIncludes handles infinite recursion gracefully, needed by Metal causing BasePassTessellation.usf to include BasePassVertexShader.usf

Change 3505491 by Rolando.Caloca

	DR - Fix crash on first frame of particles on modern APIs

Change 3505557 by Chris.Bunner

	[Duplicate] Workaround for outdated shader map crash.

	#jira UE-46061

Change 3506071 by Rolando.Caloca

	DR - Vulkan fixes
	- Fix copy out of bounds reading textures to CPU
	- Defer event deletion
	- Split validation for errors and warnings
	- Skip validation error about attachment not used

Change 3506698 by Guillaume.Abadie

	Fixes Composure alpha channel clobering and performance regression in bloom and tonemapper passes caused by scene capture API compatibility breakage brought by Fortnite merge.

Change 3506797 by Rolando.Caloca

	DR - Fix static analysis

	#jira UE-46428

Change 3506861 by Rolando.Caloca

	DR - Fix crash due to layering violation

	#jira UE-46424
	#jira UE-46431

Change 3508098 by Rolando.Caloca

	DR - Fix for Vulkan ES31 crash
	- Fix for AMD ensure

Change 3508123 by Rolando.Caloca

	DR - Disable occlusion queries on Vulkan to avoid flickering
	- Fix for bad HZB & cube mips on Vulkan (now using RHIGenerateMips)
	- Fix for decal blending

	#jira UE-46376

Change 3509064 by Uriel.Doyon

	Changing the logic arround generating an error when HasHadBulkDataCleared() so that it only triggers if the DDC are not found.
	#jira UE-46427

Change 3509854 by Marc.Olano

	Fix 2D Sobol gray code numbers.
	Just changes some numbers in initialization tables, so no effect on existing tests or content.

Change 3509920 by Marcus.Wassmer

	Fix LPV fastvram ensure

Change 3509937 by Rolando.Caloca

	DR - Fix crash due to deleted viewport

	#jira UE-46281

Change 3509988 by Marcus.Wassmer

	Roll back part of Sobol fix to avoid full shader recompile for integration.

Change 3510255 by Rolando.Caloca

	DR - Fix popup window ensure

	#jira UE-46511

Change 3510646 by Marcus.Wassmer

	fix ios compiles

Change 3511442 by Rolando.Caloca

	DR - Change mesh simplification check to ensure/checkslow to unblock

	#jira UE-46538


DONE!

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
CHANGES WITH MULTIPLE PLATFORMS!!! YOU MUST COPY THESE INTO THE OTHER ONES AS MAKES SENSE!!
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX


Change 3467095 by Guillaume.Abadie

	Nukes all += TEXT(".usf")

	#jira UE-45530

Change 3475084 by Guillaume.Abadie

	Fixes compilation failure of the shader compiler on PS4 and XboxOne

Change 3477464 by Guillaume.Abadie

	Fixes dumpshaderinfo that generate unecessary sub directory, breaking shell scripts.

Change 3494395 by Guillaume.Abadie

	Moves all engine shader files into Public and Private directory, and introduce the .ush extensions for header file that do not contains entry points.

	DONE!

[CL 3511602 by Marcus Wassmer in Main branch]
2017-06-27 11:38:28 -04:00
Nick Darnell
22de597494 Copying //UE4/Dev-Automation to //UE4/Dev-Main (Source: //UE4/Dev-Automation @ 3502919)
#lockdown Nick.Penwarden
#rb none

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

Change 3487931 by Adric.Worley

	Add Negative test filter

	Filter out tests that test negative cases and are expected to fail

	#jira UE-45641
	#tests ran affected tests in editor, confirmed UI changes

Change 3491768 by Adric.Worley

	Add FieldOfView to Screenshot FTest options

	#tests used in WIP test map

Change 3492809 by Nick.Darnell

	Automation - Fixing some delay screenshot code in the Screenshot Functional Test Actor.

Change 3493557 by Adric.Worley

	Add automated postprocessing test map
	#jira QAENG-1153

Change 3494836 by Adric.Worley

	Fix CurvePlayTest timing out

	Time-out tolerances were set too tightly. Extended preparation time limit to 7 seconds.

	#tests PIE

Change 3494962 by Adric.Worley

	Fix CurveStopTest failure

	Added OnTestPrepare event for FTests using LevelBP for logic.
	Removed CurveStopTest dependency on CurveStartTest.
	Updated ground truth screenshot.

	#tests PIE

Change 3495166 by Adric.Worley

	Fix empty engine version content warnings

	#tests none

Change 3495412 by Adric.Worley

	Add Shield asset from ContentExamples project

Change 3495747 by Adric.Worley

	Automate static light tests
	#jira QAENG-1154

Change 3495914 by Adric.Worley

	Adding HDR environment asset

Change 3496341 by Adric.Worley

	Fix NotifyTest timing failures

	Rewrote tests to use blueprint events to verify notifications instead of fragile screenshots.

	#tests UFE

Change 3496613 by Adric.Worley

	Add TranslucencyLightingModes test map

	Automates test cases from QAGame's TM-TranslucencyLightingModes.
	Also resave shield assets to fix empty engine version warnings.

	#jira QAENG-1191
	#tests UFE

Change 3496703 by Adric.Worley

	Fix occasional ClothBallTest failures

	Extend screenshot delay to let cloth to fully settle.
	Consolidated screenshot delay values and removed redundant Delays.

	#jira UE-46066
	#tests UFE, 20+ iterations

Change 3498413 by Adric.Worley

	Fix occasional CurveTest failures

	Merged tests and set to use specific anim positions instead of relying on fragile test timing.

	#tests UFE

Change 3498976 by Adric.Worley

	Add automated ShaderModels test map

Change 3499079 by Adric.Worley

	Delete unused test and related assets

	#tests UFE

Change 3500869 by Adric.Worley

	Add horizontal scrollbar to automation results view

	#tests UFE

[CL 3511418 by Nick Darnell in Main branch]
2017-06-27 10:18:29 -04:00
Marc Audy
b8b4a8b2d0 Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3510040)
#lockdown Nick.Penwarden

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

Change 3459524 by Marc.Audy

	Get/Set of properties that were previously BPRW/BPRO should error when used
	#jira UE-20993

Change 3460004 by Phillip.Kavan

	#jira UE-45171 - Fix C++ compilation failures during packaging caused by nativizing a Blueprint that overrides a native function with a 'TSubclassOf' parameter or return value.

	Change summary:
	- Modified FKismetCompilerContext::CreateParametersForFunction() to pass the 'CPF_UObjectWrapper' flag through to new function parameter properties during Blueprint compilation.

Change 3461210 by Phillip.Kavan

	#jira UE-44505 - Fix occasional Blueprint editor crashes that could occur while rebuilding the context menu from the action registry.

	Change summary:
	- Modified FBlueprintActionDatabase::FActionRegistry to use an FObjectKey as the key type. This allows us to test entries for UObject validity before rebuilding context menu items based on the action database.
	- Changed FBlueprintActionInfo::CachedOwnerClass to be a TWeakObjectPtr rather than a raw UClass* since it's based on the ActionOwner, which could potentially become invalid after the OwnerClass has been cached.
	- Modified FBlueprintActionDatabase::RefreshAssetActions() to exclude World assets if the WorldType is not EWorldType::Editor. This eliminates an issue with unreferenced "inactive" GC'd world objects being left in the BP action registry after cooking, at which point the keys could become invalid.
	- Added FBlueprintActionDatabase::DeferredRemoveEntry() to allow for scheduling removal of entries from outside of the database if they are known to be invalid.
	- Modified FBlueprintActionDatabase::Tick() to handle deferred entry removals.
	- Modified FBlueprintActionMenuBuilder::RebuildActionList() to both test actions for validity before building menu items and schedule removal of invalid actions on the next tick.

	Notes:
	- Alternatively we could just include UObject keys in the database's AddReferencedObject impl, but that would then prevent objects from ever being GC'd if they are not explicitly removed. For most entries the action database takes the approach of explicitly removing entries via delegate when the UObject is destroyed, so I chose to use a TWeakObjectPtr instead so that any entries that may not be getting explicitly removed via delegate will now simply become invalidated if the UObject key is GC'd due to not being referenced. I also set it up to clean and remove any entries (along with any associated node spawners) that are found to be invalid the next time we open the BP editor.

Change 3461373 by Lukasz.Furman

	fixed async navmesh rebuilds not kicking in for requests from navdata.bForceRebuildOnLoad
	#jira UE-44231

Change 3461409 by Lukasz.Furman

	fixed reenabling automatic navmesh generation in Editor Preferences
	#ue4

Change 3461550 by Ben.Zeigler

	#jira UE-45328 Fix local variable support for Redirectors and other save-time validation. We need to run the local variables to UProperty and back at save time
	Add new flag PPF_SerializedAsImportText which is used for BP pins/default values and indicates that something has been serialized as import text and so needs to handle string asset redirectors

Change 3462625 by Zak.Middleton

	#ue4 - Fix InterpToMovementComponent not setting velocity on the object it moves. Fix movement rate when substepping enabled (other related fixes to come).

	github PR #3620

Change 3462796 by Dan.Oconnor

	Fix for spamming BroadcastBlueprintReinstanced and for creating CDO at wrong time when compiling FrontEnd.uasset in OrionGame

	#jira UE-45434

Change 3462995 by Ben.Zeigler

	#jira UE-16941 Fix it so Load Asset node works with a literal value as well as a connected pin

Change 3463099 by Ben.Zeigler

	#jira UE-45471 Allow abstract base classes for primary assets

Change 3464809 by Marc.Audy

	Expose FVector2D / FVector2D to blueprints
	#jira UE-45427

Change 3467254 by Mieszko.Zielinski

	Added an AI helper BP function that supplies caller with a copy of navigation path given controller is currently following #UE4

Change 3467644 by Dan.Oconnor

	Fix for cook issues in ocean when using compilation manager, one issue caused by bad dependencies list, one issue caused by lack of subobject mapping in archetype reinstancing.
	#jira UE-45443, UE-45444

Change 3468176 by Dan.Oconnor

	Fix dependent blueprints being marked dirty when a blueprint is compiled

Change 3468353 by Michael.Noland

	UnrealHeaderTool: Improved the warning generated when missing Category= on a function or property declared in an engine module, and centralized the logic that determines if the module is engine or game

Change 3470532 by Dan.Oconnor

	Re-enable compilation manager

Change 3470572 by Dan.Oconnor

	Fix for pin paramters resetting when an archetype was reinstanced
	#jira UE-45619

	#rnx

Change 3471949 by Mason.Seay

	Adding Primary Assets for testing

Change 3472074 by Ben.Zeigler

	#jira UE-45140 Convert iterative cooking to use the Asset Registry as it's only mode, remove old hash and timestamp versions. This allows deleting the entire PackageDependencyInfo module
	Change the asset registry iteration to not compute a hash at all, and instead store the script package guids in it's cache.
	Expose bIgnoreIniSettingsOutOfDateForIteration and bIgnoreScriptPackagesOutOfDateForIteration in cooker settings, affects rather to listen to ini/script changes when doing iterative cooking

Change 3472079 by Ben.Zeigler

	With new incremental cook options, change Fortnite to never care about ini settings, but do care about code changes. This can be changed but from previous discussions we wanted to be more safe than fast here

Change 3473429 by Lukasz.Furman

	changed path following update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
	#jira UE-41884

Change 3473476 by Lukasz.Furman

	changed crowd simulation path update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
	#jira UE-41884

Change 3473663 by Ben.Zeigler

	Fix it so base k2node registers framework version, this is needed for the assetptr fixup I previously added

Change 3473679 by Mason.Seay

	Slight cleanup of test map and added ability to teleport across level for easy navigation

Change 3473712 by Marc.Audy

	Do default value validation against the actual value of the default entry of an enum rather than the serialized empty autogenerated default value

Change 3474055 by Marc.Audy

	When nodes are reconstructed any pins that were previously linked or set to non-default values that have been removed will no longer simply vanish, but instead will remain in an Orphaned state until dealt with.
	#jira UE-41828

Change 3474119 by mason.seay

	Tweaked Force Feedback test

Change 3474156 by Marc.Audy

	Actually enable orphan pin retention

Change 3474382 by Ben.Zeigler

	Class.h Header and comment cleanup. Started this because IsChildOf did not have a comment and it's usage is a bit confusing

Change 3474386 by Ben.Zeigler

	Close popup window when adding asset class to audit window

Change 3474491 by Ben.Zeigler

	Remove ability for Worlds to not be saved as assets, this has been the default since 2014.

Change 3475363 by Marc.Audy

	Alt-click now works with orphaned pins
	#jira UE-45699

Change 3475523 by Marc.Audy

	Fixup Fortnite and Paragon content for orphaned pin errors and warnings

Change 3475623 by Phillip.Kavan

	#jira UE-45477 - Fix an EDL assertion on load in a nativized build with one or more Actor subobjects instanced via the EditInlineNew UI in the BP class defaults property editor.

	Change summary:
	- Modified FEmitDefaultValueHelper::OuterGenerate() to emit code to construct/initialize instanced subobject values that do not have the RF_DefaultSubObject flag set, and also to recursively handle nested subobjects for those values.
	- Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to alternatively emit a 'NewObject' assignment statement rather than a 'CreateDefaultSubobject' statement if only RF_ArchetypeObject is set on the source object value.

Change 3476008 by Dan.Oconnor

	Fix for failing to preload our super class's subobjects. Effectively moving UBlueprint::ForceLoad calls earlier in loading process. This only results in data resetting to your parent's parent's default value from your parent's default value.

	#jira UE-18765

Change 3476115 by Dan.Oconnor

	Fix missing category information for inherited functions when using compilation manager
	#jira UE-45660

	#rnx

Change 3476577 by Lukasz.Furman

	added early outs from navmesh layer generation when there's no walkable cells or contours to avoid allocating 0 bytes by next generation steps (behavior differs between platforms)
	#ue4

Change 3476587 by Phillip.Kavan

	#jira UE-45517 - Fix a regression in which dragging UMG widgets around in the designer view results in redundantly-compounded BP class properties and context menu actions.

	Change summary:
	- Modified SDesignerView::ClearDropPreviews() to move the widget that was removed from the tree into the transient package. This ensures that FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() won't pick them up.
	- Modified SDesignerView::ProcessDropAndAddWidget() to also consider any widgets not added to the 'DropPreviews' array as being transient (i.e. also move them into the transient package since they were not added to the tree).

	Notes:
	- The regression was introduced by the changes in CL# 3410168, and was merged to Main at CL# 3431398.

	#rnx

Change 3476723 by Dan.Oconnor

	Match old behavior wrt updating implemented interfaces in blueprints - this logic from FKismetEditorUtilities::CompileBlueprint was missing in compilation manager
	#jira UE-45468

	#rnx

Change 3476948 by Michael.Noland

	Framework: Changed AActor::FindComponentByClass (and AActor::GetComponentByClass by extension) to return nullptr when passed a nullptr class, rather than crashing

Change 3476970 by Ben.Zeigler

	Fix bug I introduced in 4.16 where assigning assets to multiple chunks did not work properly

Change 3477536 by Marc.Audy

	Don't display default value box on linked orphaned input pins

Change 3477835 by Marc.Audy

	Fix pins orphaned by deletion of an entry in a user-defined enum disappearing instead of remaining connected
	#jira UE-45754

Change 3478027 by Marc.Audy

	Minor performance optimization

	#rnx

Change 3478198 by Phillip.Kavan

	#jira UE-42431 - Remove an unnecessary ensure() when pasting an event node.

	Change summary:
	- Modified UEdGraphSchema_K2::CreateSubstituteNode() to no longer ensure() that we have a valid PreExistingNode; it's only used for logging when a substitute node is created in response to a conflict with an existing node.

Change 3478485 by Marc.Audy

	Eliminate extraneous error messages about orphaned pins on get/set nodes
	#jira UE-45749

	#rnx

Change 3478756 by Marc.Audy

	Fix fallout from changes to DoesDefaultValueMatchAutogenerated for user defined enums
	#jira UE-45721

	#rnx

Change 3478926 by Marc.Audy

	Non-blueprint type structs can no longer be made/broken
	Non-blueprint visible properties in structs will no longer have pins created for them
	#jira UE-43122

Change 3478988 by Marc.Audy

	DeltaTime for a tick function with a tick interval is now correct after disabling and then reenabling the tick function.
	#jira UE-45524

Change 3479818 by Marc.Audy

	Allow ctrl-drag off of orphan pins
	#jira UE-45803

Change 3480214 by Marc.Audy

	Modifications to user defined enumerations are now transacted
	#jira UE-43866

Change 3480579 by Marc.Audy

	Maintain all pin properties through transactions.
	#rn Reference pins that are removed and then restored via undo now correctly have the diamond icon instead of the standard circle.

Change 3481043 by Marc.Audy

	Make/Break of structs does not depend on having blueprint exposed properties.
	Splitting of a struct pin still requires blueprint exposed properties.
	#jira UE-45840
	#jira UE-45831

Change 3481271 by Ben.Zeigler

	Fix the AssetManager chunking code to use ChunkDependencyInfo instead of a hardcoded check for chunk 0
	Clean up ChunkDependencyInfo and make it properly public
	Move ShouldSetManager to be WITH_EDITOR
	Ported from WEX branch
	#RB peter.sauerbrei

Change 3481373 by Dan.Oconnor

	Reduce reliance on expensive FindDelegateSignature. 3275922 made warnings about a ambiguous search more likely as it preserved names of members on the REINST_ classes

	#jira UE-45704

Change 3481380 by Ben.Zeigler

	Change it so Struct and Object AssetRegistrySearchable properties do not show up in content browser, they are not helpful

Change 3482362 by Marc.Audy

	Fix properties not exposed to blueprint warnings for input properties on function graphs.
	#jira UE-45824

Change 3482406 by Ben.Zeigler

	#jira UE-45883 Fix Switch On Gameplay Tag Container node, and add switch nodes to TagCheck map

Change 3482498 by Ben.Zeigler

	Attempt to fix hot reload issues with Asset Manager. We need to reset and re-acquire the asset classes when rescanning, as they may be pointing to the replaced class

Change 3482517 by Lukasz.Furman

	fixed smart navlink update functions removing important flag
	#jira UE-45875

Change 3482538 by Marc.Audy

	When comparing float, vector, and rotator values for whether the the default matches the autogenerated do not use the string compare because differences in use of decimal or number of 0s after decimal are then considered not the same float
	#jira UE-45846

Change 3482773 by Marc.Audy

	Don't show default value or pass by reference for exec pins
	#jira UE-45868

Change 3482791 by Ben.Zeigler

	#jira UE-45800 Correctly dirty game mode blueprint when changing player controller/etc classes from game mode customization
	Fix it so MarkBlueprintAsStructurallyModified calls MarkBlueprintAsModified as several fixes were only in the second function

Change 3483131 by Zak.Middleton

	#ue4 - InterpToMovementComponent:

	- Fix velocity not zeroed when interpolation stops.
	- Various fixes when calculating velocity and time when substepping is enabled.
	- Improve accuracy of interpolation when looping and there is time remaining after the loop event is hit. Consume the remainder of the time after the event back in the loop (similar to handling a blocking impact).

	#jira UE-45690

Change 3483146 by Phillip.Kavan

	#jira UE-38358 - Propagate 'const' function flag from interface Blueprint to implementing Blueprints.

	Change summary:
	- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified() to call SkeletalRecompileChildren() on dependent BPs when the target is an interface BP.
	- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified::FRefreshHelper::SkeletalRecompileChildren() to set child BP status to BS_Dirty after compiling.
	- Modified ConformInterfaceByName() (FBlueprintEditorUtils) to use the interface's skeleton class for function iteration as well as to match the Function Entry node's 'const' setting to the interface UFunction's signature.

Change 3483340 by Ben.Zeigler

	Fix issue querying asset registry after a hot reload, make sure pending kill objects are never considered to be Assets

Change 3483548 by Michael.Noland

	Epic Friday: Playing around with some prototype traps

Change 3483700 by Phillip.Kavan

	Fix CIS cook crash introduced by last submit.

	#rnx


Change 3485217 by Ben.Zeigler

	#jira UE-45519 Fix regression introduced in 4.16 where it would no longer cook all maps when no explicit maps were specified in ini or game callback. Moved the code that detects changes before culture/default map code and hardened it to deal with the case where some engine packages were already in the list before it entered the function

Change 3485367 by Dan.Oconnor

	Avoid adding mappings to anim node when creating variables on the skeleton class and using the compilation manager

	#jira UE-45756

Change 3485565 by Ben.Zeigler

	#jira UE-45948 Fix compilation manager to properly reset variable default values after promoting a pin to local variable

Change 3485566 by Marc.Audy

	Fix crashes caused by undo/redo of user defined struct changes
	#jira UE-45775
	#jira UE-45781

Change 3485805 by Michael.Noland

	PR #3459: Fix for world origin shifting and SpringArmComponent location lag (Contributed by michail-nikolaev)

	#jira UE-43747

Change 3485807 by Michael.Noland

	PR #3485: Added additional textures field to paper 2d tileset class (Contributed by gryphonmyers)

	#jira UE-44041

Change 3485811 by Michael.Noland

	Framework: Fixed a bug in FStreamLevelAction::MakeSafeLevelName to avoid appending the PIE prefix multiple times (fixes functions like Unload Streaming Level when passed a full package name from an instanced streaming level)

Change 3485829 by Michael.Noland

	Framework: Made GetWorldAssetPackageFName BlueprintCallable so instanced levels can be unloaded

Change 3485830 by Michael.Noland

	PR #3568: add API declarations to ALevelStreamingVolume methods (Contributed by kayama-shift)
	#jira UE-45002

Change 3486039 by Michael.Noland

	PR #3495: UE-44014: Refreshing node error fixes (Contributed by projectgheist)
	- Empty out the ErrorMsg when a node gets refreshed to prevent the same error messages from compounding
	- Added support for split pins in UK2Node_Event::IsFunctionEntryCompatible
	- Added a missing check for the delegate pin name on the entry node part of UK2Node_Event::IsFunctionEntryCompatible

	#jira UE-44014

Change 3486093 by Michael.Noland

	PR #3379: Added GAMEPLAYABILITIES_API to all Ability Tasks. (Contributed by ryanjon2040)


	#jira UE-42903

Change 3486139 by Michael.Noland

	Blueprints: Added new config options for execution wire thickness when not debugging (DefaultExecutionWireThickness) and data wire thicknesses (DefaultDataWireThickness) to the Graph Editor Settings page
	#rn

Change 3486154 by Michael.Noland

	Framework: Speculative fix for CIS error about FStructOnScope
	#rnx

Change 3486180 by Dan.Oconnor

	Better match old logic for determining when to skip data only compile
	#jira UE-45830

Change 3487276 by Marc.Audy

	Fix crash when using Setter with a locally scoped variable

	#rnx

Change 3487278 by Marc.Audy

	Ensure that pin change notifications occur on all pin breaks unless it is part of a node being garbage collected

Change 3487658 by Marc.Audy

	Ensure that child actor template is created for subclasses
	#jira UE-45985

Change 3487699 by Marc.Audy

	Move non-templated elements out of FArchiveReplaceObjectRef and put them in FArchiveReplaceObjectRefBase

Change 3487813 by Dan.Oconnor

	Asset demonstrating a crash

Change 3488101 by Marc.Audy

	Fix crash with spawn/construct actor/object from class nodes when they no longer had any pins.
	Correctly orphan pins when a node goes to 0 pins.

Change 3488337 by Marc.Audy

	Editable pin base should not manually remove pin and let reconstruct node and rewire pins do their job
	#jira UE-46020

Change 3488512 by Dan.Oconnor

	ConstructObject nodes and SubInstances nodes use skeleton class when compilation manager can provide it

	#jira UE-45830, UE-45965
	#rnx

Change 3488631 by Michael.Noland

	Framework: Fixed a crash when loading a blueprint with a parent class of ALevelBounds caused by trying to register the class default object with a non-existent level

	#jira UE-45630

Change 3488665 by Michael.Noland

	Blueprints: Improve the details panel customization for optional pin nodes like Struct Member Get/Set
	- The category, raw name, and tooltip of the property are now included as part of the filter text as well
	- The property tooltip is now displayed when hovering over the property name
	- Code updated to use GET_MEMBER_NAME_CHECKED() where appropriate

Change 3489324 by Marc.Audy

	Fix recursion causing stack crash
	#jira UE-46038

	#rnx

Change 3489326 by Marc.Audy

	Fix cooking crash
	#jira UE-46031

	#rnx

Change 3489687 by mason.seay

	Assets for testing orphan pins

Change 3489701 by Marc.Audy

	Back out changelist 3487278 and 3489443 and make targetted changes for fixing up orphan pin cases where changing connections doesn't remove the pin.
	#jira UE-46051
	#jira UE-46052

	#rnx

Change 3490352 by Dan.Oconnor

	Fix for missing WidgetTree on Skeleton class - just look directly at the WidgetBlueprint

	#jira UE-46062

Change 3490814 by Marc.Audy

	Make callfunction/macro instances save all pins in orphan state more similar to previous behavior

	#rnx

Change 3491022 by Dan.Oconnor

	Properly clean up 'Key' property when we fail to create a value property
	#jira UE-45279

Change 3491071 by Ben.Zeigler

	#jira UE-45981 Fix rotation issues, vector/rotator pins with empty strings were not matching due to uninitialized memory.

Change 3491244 by Michael.Noland

	Blueprints: Add compile time message back to the output log (will not auto-open the output log if there were no warnings/errors)

	#jira UE-32948

Change 3491276 by Michael.Noland

	Blueprints: Fixed some bugs where a newly added item would fail show up in the "My Blueprints" tree if there was a filter active (e.g., when promoting a variable)
	- Centralized the logic for clearing the filter so it happens when we try and fail to select the item, rather than ad hoc in various other places
	- Made it only clear the filter if necessary, rather than (almost) always clearing it when adding an item
	#jira UE-43372

Change 3491562 by Marc.Audy

	Put back pin removal in to editable pin base and instead modify the pin destroy implementation to take down child split pins with it
	#jira UE-46020

	#rnx

Change 3491658 by Marc.Audy

	Unify RemoveUserDefinedPin implementations. Use version that has break to avoid size change assert

	#rnx

Change 3491946 by Marc.Audy

	ReconstructSinglePin no longer destroys OldPin (avoids oprhaned sub pins being destroyed before reparented)
	RewireOldPinsToNewPins now destroys OldPins at the end (calling code no longer reponsible)
	DestroyImpl now prunes out SubPins that had already been trashed

	#rnx

Change 3492040 by Marc.Audy

	Discard exec/then pins from a callfunction that has been converted to a pure node

	#rnx

Change 3492200 by Zak.Middleton

	#ue4 - Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size.

	Fixes possible regression from CL 3359561 that removed the Reset(...) entirely.

	#jira UE-46012

Change 3492290 by Ben.Zeigler

	#jira UE-46108 Fix StringLibrary Mid to never crash, Substring had already been fixed

Change 3492311 by Marc.Audy

	Don't clear the pin type if what you're connecting to's pin type is wildcard

	#rnx

Change 3492680 by Dan.Oconnor

	Handle missing generated class when using compilation manager - tested by forcing compile of BP_ParentClassIsMissingType.uasset

Change 3492826 by Marc.Audy

	Don't do pin connection list change notifications from DestroyPins while regenerating on load
	#jira UE-46112

	#rnx

Change 3492851 by Michael.Noland

	Core: Fixed various crashes when using UObject::CallFunctionByNameWithArguments with non-trivial argument types by properly initializing the allocated parameters

Change 3492852 by Michael.Noland

	Framework: Fixed a crash if ACharacter::FindComponentByClass was passed a nullptr class

Change 3492934 by Marc.Audy

	Fix ensure and crash delete macro containing orphaned pin

	#rnx

Change 3493079 by Dan.Oconnor

	Fix for crash when opening ThirdPersonAnimBlueprint and ThirdPersonAnimBlueprint_Perf then clicking 'Compile' button in ThirdPersonAnimBlueprint editor. Make sure the convenience members in the derived compilers get set when we relink child classes (which requires making cdos, which requires PropagateValuesToCDO..)

	#rnx

Change 3493346 by Phillip.Kavan

	#jira UE-40560 - Fix a reported crash when pasting nodes between unrelated Blueprint graphs.

	Change summary:
	- Modified FEdGraphUtilities::PostProcessPastedNodes() to ensure() on a NULL pin entry; this will allow execution to continue while still alerting us since it is an unexpected result. Also added an 'else' case to then remove the NULL entry so that PostPasteNode() implementations don't all have to guard against NULL pin entries. When the node is reconstructed, the NULL entry will be replaced with the correct pin initialized to its default values.
	- Modified UEdGraphPin::ImportTextItem() to add some additional logging to parse error cases when importing pin properties from source T3D text. Hopefully this gives us more information when this is encountered in the future.

Change 3493938 by Michael.Noland

	Blueprints: Prevent issues with renaming event dispatchers to contain periods (this may be disallowed in the future, but they no longer become uneditable)
	#jira UE-45780

Change 3493945 by Michael.Noland

	Blueprints: Fixed GetDelegatePoperty typos
	#rnx

Change 3493997 by Michael.Noland

	Blueprints: Partially reverting changes from CL# 3319966 to reroute nodes, restoring their alignment but losing the symmetrical grab handle changes
	#jira UE-45760

Change 3493998 by Dan.Oconnor

	Fix rare crash in RefreshStandAloneDefaultsEditor when the blueprint editor is opened and a blueprint had errors in it
	Note: I stumbled across this by running a unit test and then opening a blueprint in the BPE. CrashReporter indicates 3 crashes in the last 3 days

Change 3494025 by Michael.Noland

	Engine: Deleted some dead code (DEBUGGING_VIEWPORT_SIZES)

	#rnx

Change 3494026 by Michael.Noland

	Blueprints: V0 of a BlueprintCallable/BlueprintPure function fuzzer
	- Calls exposed methods with default parameters on classes it is able to spawn for now, which catches crashes due to null and /0 but not out of bounds issues or ones on classes it can't spawn due to classwithin, abstract, etc...
	- Can be called using Test.ScriptFuzzing, won't be integrated into automated tests until it is more fully fleshed out and all known issues are addressed
	#rnx

Change 3496382 by Ben.Zeigler

	Fix ensure when launching editor with cook on the side and incremental cooking enabled. It now flushes the background asset gather when calling the sync load all assets if one is in progress

Change 3496688 by Marc.Audy

	Avoid crashing in component instance data if (for some reason) the Actor's root component isn't properly set up
	#jira UE-46073

Change 3496830 by Michael.Noland

	Editor: Change FEditorCategoryUtils methods to take UStruct* instead of UClass*, as they are just reading metadata

	#rnx

Change 3496840 by Michael.Noland

	Framework: Remove the requirement for a local player in UCheatManager::CheatScript, so it can be be started from the server side (doesn't change the availability of the cheat manager, just allows things like the redundant "cheat cheatscript scriptname" to work)

Change 3497038 by Michael.Noland

	Fortnite: Added UFortDeveloperSettings to allow developers to auto-run cheats in PIE (does not occur in -game or outside of WITH_EDITOR builds)
	- You can specify a list of cheat commands to run when a pawn is possessed (also needs CL# 3496840 for cheatscripts)
	- You can also specify a set of items to grant to your local inventory when it is created

Change 3497204 by Marc.Audy

	Fix AbilitySystemComponent not being blueprint readable.

	#rnx

Change 3497668 by Mieszko.Zielinski

	Fixed a crash in BT editor when dealing with enum-typed Blackboard-keys pointing to enum values that have been deleted #UE4

	#jira UE-43659

Change 3497677 by Mieszko.Zielinski

	Added a community-suggested working solution to patching up dynamic navmesh after world offset #UE4

	Also, fixed a crash related to navmesh rebuilding if generation was configured to lazily gather navigatble geometry

	#jira UE-41293

Change 3497678 by Mieszko.Zielinski

	Marked AbstractNavData class as transient #UE4

	We never want to save it to levels

Change 3497679 by Mieszko.Zielinski

	Made NavModifierVolume responsive to editor-time property changes #UE4

	#jira UE-32831

Change 3497900 by Dan.Oconnor

	Fix bad skel reference when using construct object from class, just limiting scope of 3491946. To reproduce the bug just nativize QA Game, including the TM-Gameplay level
	#rnx

Change 3497904 by Dan.Oconnor

	Use K2Node_Event::FindEventSignatureFunction in order when directly generating the skeleton generated class to get event params correct
	#jira UE-46153

	#rnx

Change 3497907 by Dan.Oconnor

	Correctly set blueprint visibility flags on params for inherited functions when generating the skeleton class

	#rnx
	#jira UE-46186

Change 3498218 by mason.seay

	Updates to pin testing BP's

Change 3498323 by Mieszko.Zielinski

	Made UNavCollision instance assigned to StaticMesh not get re-created from scratch every single time any StaticMesh property changes #UE4

	Recreation was resulting in some of the UNavCollision's properties not getting saved and the way we were recreating the nav collision could also interfere with undo buffers

	#jira UE-44891

Change 3499007 by Marc.Audy

	Allow systems to hook Pre and PostCompile to do custom behaviors

Change 3499013 by Mieszko.Zielinski

	Made AbstractNavData class non-transient again #UE4

	Implemented AbstractNavData instances' transientness in a different manner.

	#jira UE-46194

Change 3499204 by Mieszko.Zielinski

	Introduced CrowdManagerBase, an engine-level class that can be extended to implement custom crowd management #Orion

	Extracted FRecastQueryFilter into a separate file, which will break some peoples' compilation.

	#jira UE-43799

Change 3499321 by mason.seay

	Updated bp for struct testing

Change 3499388 by Marc.Audy

	Allow the compiler log to store off potential messages from earlier in the compile cycle (early validation), that can be committed later (for example once pruning is completed).

Change 3499390 by Marc.Audy

	Generate the orphan pin error messages during EarlyValidation, but cache until the regular validation phase. This ensures all are generated, but only those that aren't pruned will be emitted.

	#rnx

Change 3499420 by Michael.Noland

	Engine: Introduced a new version of UEngine::GetWorldFromContextObject which takes an enum specifying the behavior on failures and updated all existing uses

	The new version intentionally does not have a default value for ErrorMode, callers need to think about which variant of behavior they want:
	- ReturnNull: Silently returns nullptr, the calling code is expected to handle this gracefully
	- LogAndReturnNull: Raises a runtime error but still returns nullptr, the calling code is expected to handle this gracefully
	- Assert: Asserts, the calling code is not expecting to handle a failure gracefully

	- Deprecated UEngine::GetWorldFromContextObject(object, boolean) and changed the default behavior for the deprecated instances to do LogAndReturnNull rather than Assert, based on the real-world call pattern
	- Introduced GetWorldFromContextObjectChecked(object) as a shorthand for passing in EGetWorldErrorMode::Assert
	- Made UObject::GetWorldChecked() actually assert if it would return nullptr (under some cases the old function could silently return nullptr while reporting bSupported = true, so it neither ensured nor checked)
	- Fixed a race condition in the 'is implemented' bookkeeping logic in GetWorld()/GetWorldChecked() by confining it to the game thread and added a check() to ImplementsGetWorld() to make it clear that it only works on the game thread

	The typical recommended call pattern is to use something like:

	if (UWorld* World = GEngine->GetWorldFromContextObject(WorldContextObject, EGetWorldErrorMode::LogAndReturnNull))
	{
	... Do something with World
	}

	Handling the failure case but requesting a log message (with BP call stack printed out) if it failed. This is now also the default behavior for old calls to UEngine::GetWorldFromContextObject(Object) (using the default value of bChecked=true), which is a behavior change but it matches how the function was being used in practice; the vast majority of call sites actually expected it to potentially fail and handled the nullptr case gracefully; very few places used the return value unguarded and wanted it to assert when passed a nullptr.
	#jira UE-42458

Change 3499429 by Michael.Noland

	Engine: Removed a bogus TODO (the problematic code had already been reworked)
	#rnx

Change 3499470 by Michael.Noland

	Core: Improved and corrected the comment for ensure()
	- It doesn't crash when checking is disabled (and hasn't since UE3, maybe ever?)
	- It now only fires once per ensure() by default, added a note about ensureAlways()

	#rnx

Change 3499643 by Marc.Audy

	Use TGuardValue instead of manually managing it

	#rnx

Change 3499874 by Marc.Audy

	Display <Unnamed> instead of nothing for Pins with blank display name in the compiler log

Change 3499875 by Marc.Audy

	When changing function parameter types, don't orphan a pin on the function entry/exit nodes (but do at the call sites)
	#jira UE-46224

Change 3499927 by Dan.Oconnor

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

	#jira UE-43458

Change 3499953 by Michael.Noland

	Core: Created a variant of ensure that does runtime error logging without stopping in the debugger and some related functions that print a warning or error and may trigger a BP callstack (under the same rules as FFrame::KismetExecutionMessage)
	- These are WIP and the API may change in the future, but are being used to fix various crashes found by fuzzing BP exposed functions

Change 3499957 by Michael.Noland

	Animation: Added runtime errors for nullptr ControlRigs passed into BP methods

	#rnx

Change 3499958 by Michael.Noland

	Blueprints: Changed an ensure in UKismetNodeHelperLibrary::GetValidValue to a runtime error

	#rnx

Change 3499959 by Michael.Noland

	Engine: Downgrade various checks() to ensures() in the runtime asset cache functions exposed to Blueprints

Change 3499960 by Michael.Noland

	AI: Changed UBTFunctionLibrary to not check/ensure if passed a null world context object

Change 3499968 by Michael.Noland

	Editor: Fixed a couple of crashes in UEditorLevelUtils when passed nullptr arguments, and reformatted the entire file to fix widespread indentation issues

	#rnx

Change 3499969 by Michael.Noland

	Engine: Changed the verbosity of the failure log message of UEngine::GetWorldFromContextObject(..., LogAndReturnNull) from Warning to Error, so it always prints out a BP callstack

	#rnx

Change 3499973 by Michael.Noland

	Rendering: Fixed asserts in various UKismetRenderingLibrary methods if passed a nullptr for the WorldContextObject
	- Also fixed flipped warnings in the failure cases for EndDrawCanvasToRenderTarget

Change 3499979 by Michael.Noland

	Editor: Prevented a crash in UMaterialEditingLibrary::RecompileMaterial when passed a nullptr material

Change 3499984 by Michael.Noland

	Physics: Prevented a crash in UTraceQueryTestResults::AssertEqual when passed in nullptr for Expected

Change 3499993 by Michael.Noland

	Blueprints: Added validation when renaming variables, functions, components, multicast delegates, etc... to prevent names from containing some unacceptable characters
	- This validation only kicks in when trying to rename an item, so bad names in existing content are 'grandfathered in'
	- These bad names can cause bugs when working with content that contains these characters (e.g., names that contain a period cannot be found via FindObject<T>)
	- Currently only . is banned, but eventually we may expand it to include all of INVALID_OBJECTNAME_CHARACTERS

Change 3500009 by Michael.Noland

	Blueprints: Made the fuzzer skip classes declared in UnrealEd for now (some of the exposed methods change global state that can cause other tests to fail as the fuzzer isn't particularly sandboxed ATM)

	#rnx

Change 3500011 by Michael.Noland

	Android: Fixed a crash in UAndroidPermissionFunctionLibrary::AcquirePermissions when called with an empty array on non-Android platforms

Change 3500012 by Michael.Noland

	Editor: Prevent a crash in UEditorTutorial::OpenAsset when passed a nullptr Asset

Change 3500014 by Michael.Noland

	Engine: Changed FRuntimeAssetCacheFilesystemBackend::ClearCache(NAME_None) to not try to clear all cache directories (there is a separate no-args method for that)

Change 3500019 by Michael.Noland

	Core: Fixed some more issues with CallFunctionByNameWithArguments and initializing / destroying parameters
	- It was skipping the return value and incorrectly relying on the FirstPropertyToInit list which isn't set for by ref arguments

Change 3500020 by Michael.Noland

	Automation: Prevent UFunctionalTestingManager::RunAllFunctionalTests and UFunctionalTestingManager* UFunctionalTestingManager::GetManager from crashing when a manager cannot be created (because we can't route to a world)

Change 3501062 by Marc.Audy

	MakeArray AddInputPin is often used as part of node expansion, so need to move the transaction out of the function
	Fix inability to undo/redo pin additions to sequence node
	Add a K2Node_AddPinInterface to generalize the interface that K2Nodes implement to interact with SGraphNodeK2Sequence so it can be more generally used
	#jira UE-46164
	#jira UE-46270

Change 3501330 by Michael.Noland

	AI: Fix an error on shutdown when the CDO of UAIPerceptionComponent tries to clean up (as it was never registered in the first place)

	#jira UE-46271

Change 3501356 by Marc.Audy

	Fix crash when multi-editing actor blueprints
	#jira UE-46248

Change 3501408 by Michael.Noland

	Core: Improve the print-out of FFrame::GetStackTrace() / FFrame::GetScriptCallstack() when there is no script stack (e.g., when FFrame::KismetExecutionMessage is called by native code with no BP above in the call stack)

Change 3501457 by Phillip.Kavan

	#jira UE-46054 - Fix crash when launching a packaged build that includes a nativized Blueprint instance with a ChildActorComponent instanced via an AddComponent node.

	Change summary:
	- Removed UK2Node_AddComponent::PostDuplicate(). This eliminates the creation of redundant component templates that were being unnecessarily created during the Blueprint duplication that precedes the nativization pass.
	- Modified SMyBlueprint::OnDuplicateAction() to call MakeNewComponentTemplate() in response to a graph duplication action within the same Blueprint context (replaces previous UK2Node_AddComponent::PostDuplicate() impl).
	- Modified FEmitDefaultValueHelper::HandleSpecialTypes() to force AddComponent-based CAC-owned template objects in the emitted codegen to use the UDynamicClass as the Outer when instancing. This matches what we already do for SCS-based CAC-owned template objects - that logic was added in CL# 3270456, and this matches up with FBlueprintNativeCodeGenModule::FindReplacedNameAndOuter(), where we specifically handle CAC-owned template objects.

Change 3502741 by Phillip.Kavan

	#jira UE-45782 - Fix undo for index pin type changes.

	Change summary:
	- Modified SGraphPinIndex::OnTypeChanged() to call Modify() on the pin that was changed.

Change 3502939 by Michael.Noland

	Back out changelist 3499927

Change 3503087 by Marc.Audy

	Re-fixed ocean content as editor had also changed so had to take theirs and redo

	#rnx

Change 3503266 by Ben.Zeigler

	#jira UE-46335 Fix regression added in 4.16 where AssetRegistry GetAncesorClassNames/GetDerivedClassNames were not working properly in cooked builds for classes not in memory

Change 3503325 by mason.seay

	updated Anim BP to prep for pin testing

Change 3503445 by Marc.Audy

	Fix crash caused by OldPins being destroyed before rewiring

	#rnx

Change 3505024 by Marc.Audy

	Fix NodeEffectsPanel blueprint as it was using pins that no longer existed

	#rnx

Change 3505254 by Marc.Audy

	Don't include orphan pins when gather source property names
	If a property doesn't exist for a source property name just skip the property rather than crashing
	#jira UE-46345

	#rnx

Change 3506125 by Ben.Zeigler

	#jira UE-46311 Fix issues when blueprints are reloaded in place, it needs to remove them from root properly and sanitize the old class. It's still not clear why they are being reloaded in place

Change 3506334 by Dan.Oconnor

	Move UAnimGraphNode_Base::PreloadRequiredAssets up to K2Node, make sure nodes get a chance to preload data before compilation manager compiles newly loaded blueprints
	#jira UE-46411

Change 3506439 by Dan.Oconnor

	Return to pre 3488512 behavior for construct object nodes. This means that we can still get warnings on load when users compile after saving a blueprint, but the current behavior loses default values because it's lookng at the skeleton cdo

	#jira UE-46308

Change 3506468 by Dan.Oconnor

	Return to pre 3488512 behavior, as it causes bad default values
	#jira UE-46414

	#rnx

Change 3506733 by Marc.Audy

	Use the most up to date class to determine whether a property still exists when adding pins during reconstruction
	#jira UE-45965
	#author Dan.OConnor

	#rnx

Change 3507531 by Ben.Zeigler

	#jira UE-46449 Better fix to flush the asset registry queue when the editor requests a synchronous scan at startup. Sometimes it can take a few frames because of file handle delays

Change 3507924 by mason.seay

	Sanity save of TM-Gameplay and sublevels to maybe resolve level streaming issues

Change 3507962 by Marc.Audy

	Remake changes from CL# 3150796 wiped out by WEX-Staging merge to Main in CL# 3479958

	#rnx

Change 3509131 by Dan.Oconnor

	Compilation manager compile on load flow never called FindExportsInMemoryFirst, which is critical to prevent reloading of UBlueprintGeneratedClasses when Rename clears the export table

	#jira UE-46311

Change 3509345 by Marc.Audy

	CVar to disable orphan pins if necessary

	#rnx


Change 3509959 by Marc.Audy

	Protect against crashing due to large values in Timespan From functions

	#jira UE-43840

Change 3510040 by Marc.Audy

	Remove all the old unneeded ShooterGame test maps

	#rnx

[CL 3510073 by Marc Audy in Main branch]
2017-06-26 15:07:18 -04:00
Ben Zeigler
15e82e0d29 Copying //UE4/Fortnite-Staging to //UE4/Dev-Main (Source: //UE4/Fortnite-Staging @ 3503438)
#lockdown Nick.Penwarden
#rb None

[CL 3503486 by Ben Zeigler in Main branch]
2017-06-21 17:09:40 -04:00
Ori Cohen
25ae9b5661 Copying //UE4/Dev-AnimPhys to Dev-Main (//UE4/Dev-Main)
(will update this soon)

#lockdown Nick.Penwarden
#rb none

[CL 3502661 by Ori Cohen in Main branch]
2017-06-21 10:25:35 -04:00