Commit Graph

101 Commits

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

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

Change 3358140 on 2017/03/22 by Rolando.Caloca

	DR - Fix copy to cube face
	- Compile fix when using dump layer
	- Add new error enum

Change 3358301 on 2017/03/22 by Mitchell.Wilson

	Initial check in of LODs in InfiltratorForward. First pass on optimization in level. Adding a visibility track for SceneCapture2D in tunnel section.

Change 3358477 on 2017/03/22 by Mitchell.Wilson

	Updating Skeletal Mesh DPW_Robot_Export to resolve screen size being too low for LOD1. Cleaned up LOD1 which was showing some visible popping when transitioning.

Change 3358529 on 2017/03/22 by Mark.Satterthwaite

	Globally disable clang's "constant-logical-operand" warning when running under Distcc - it is much easier and less invasive than constantly fixing the code.

Change 3358745 on 2017/03/22 by Mark.Satterthwaite

	Disable another warning (parentheses-equality) under Distcc because again the separation of preprocessing from compilation means it turns up where it isn't expected.

Change 3358837 on 2017/03/22 by Joe.Graf

	Merge of pull request #3214 for the RenderDocPlugin

	#CodeReview: matt.kuhlenschmidt, marcus.wassmer
	#rb: marcus.wassmer

Change 3359112 on 2017/03/22 by Ben.Salem

	Update perf monitor to include frame time by default. Also, use only  game/PIE world timers when in editor, instead of all worlds combined.

	#tests Ran several Showdown test runs with plugin!

Change 3359363 on 2017/03/22 by Joe.Graf

	First pass at non-unity & no pch compilation

Change 3359449 on 2017/03/22 by Joe.Graf

	Added missing null check when exporting a EXR on Linux (UE-40268)

	#CodeReview: dmitry.rekman
	#rb: n/a

Change 3360349 on 2017/03/23 by Guillaume.Abadie

	Fixes TAA's AA_FORCE_ALPHA_CLAMP causing DOF layouts.

	#jira UE-42920

Change 3360405 on 2017/03/23 by Marcus.Wassmer

	Better method for detecting Kepler

Change 3360718 on 2017/03/23 by Daniel.Wright

	Planar reflections handle views smaller than the render target in a general way
	* Fixes planar reflections with adaptive pixel density (ViewFamily size larger than actual views combined)
	* Planar reflections are now supported in splitscreen

Change 3360758 on 2017/03/23 by Daniel.Wright

	[Copy] Added new light property bCastVolumetricShadow, which defaults to true for directional and sky lights, but false for point / spot lights as supporting volumetric fog shadowing has significant GPU overhead

Change 3360762 on 2017/03/23 by Daniel.Wright

	[Copy] Texture flags are now properly routed to RHICreateTexture3D from the render target pool

Change 3360768 on 2017/03/23 by Daniel.Wright

	[Copy] Disabled GPUProfiler histogram by default, controlled by r.ProfileGPU.ShowEventHistogram

Change 3360770 on 2017/03/23 by Daniel.Wright

	[Copy] Disabled fast clears on CustomDepth, saves .2ms on xbox

Change 3360771 on 2017/03/23 by Daniel.Wright

	[Copy] Particle lights no longer force tiled deferred lighting.  Tiled deferred lighting is only used if enough unshadowed lights + particle lights are on screen.  Saves 1.5ms Xbox with one particle light.

Change 3360774 on 2017/03/23 by Daniel.Wright

	[Copy] Distance field cvar comments

Change 3360782 on 2017/03/23 by Daniel.Wright

	[Copy] Disabled selection color on Volume materials

Change 3360795 on 2017/03/23 by Daniel.Wright

	[Copy] Volume materials now specify Albedo and Extinction, which is more intuitive than Scattering and Absorption.  Albedo is [0-1] reflectance, while Extinction is a world space density.

Change 3360799 on 2017/03/23 by Daniel.Wright

	[Copy] Cinematic scalability levels get 2x volumetric fog resolution in x and y

Change 3360806 on 2017/03/23 by Daniel.Wright

	[Copy] Fixed volumetric fog being offset when viewport min is not 0

Change 3360809 on 2017/03/23 by Daniel.Wright

	[Copy] Volumetric fog now adds a bias to the inverse squared light falloff denominator, prevents extreme aliasing from the hotspot.  Can be controlled with r.VolumetricFog.InverseSquaredLightDistanceBiasScale.

Change 3361651 on 2017/03/23 by Brian.Karis

	Higher quality sharp SSR at quality 4

Change 3361678 on 2017/03/23 by Brian.Karis

	Fresnel darkens diffuse for clearcoat.

Change 3361683 on 2017/03/23 by Brian.Karis

	Fixed SSR artifact

Change 3361691 on 2017/03/23 by Brian.Karis

	Chagned min roughness limit

Change 3361707 on 2017/03/23 by Brian.Karis

	Added inverse film tone map

Change 3361726 on 2017/03/23 by Brian.Karis

	Better precision inverse

Change 3361758 on 2017/03/23 by Brian.Karis

	Material flag normal curvature to roughness is no longer forward only.

Change 3361765 on 2017/03/23 by Brian.Karis

	Update ACES

Change 3361774 on 2017/03/23 by Brian.Karis

	Cleaned up alpha support and disabled screen edge clipping.

Change 3362478 on 2017/03/24 by Guillaume.Abadie

	Cherry pick 3316084's PostProcessing.cpp: Fixes a bug in Circle DOF where the apply pass was no longer using the downres DOF's TAA output.

	#author Brian.Karis

	#jira UE-42920

Change 3362738 on 2017/03/24 by Rolando.Caloca

	DR - Hide scene capture on IF

Change 3362890 on 2017/03/24 by Guillaume.Abadie

	Renames r.SceneAlpha to r.PostProcessing.PropagateAlpha

Change 3363665 on 2017/03/24 by Mark.Satterthwaite

	PR #3414: Add command line option "-noheartbeatthread" to disable heart beat thread (Contributed by JeffRous)

Change 3363866 on 2017/03/24 by Arne.Schober

	DR - Updated NVAPI
	#RB Marcus.Wassmer

Change 3364300 on 2017/03/24 by Brian.Karis

	SSR use dynamic velocity

Change 3364372 on 2017/03/24 by Brian.Karis

	Fix changing off axis projection velocities.

Change 3364373 on 2017/03/24 by Brian.Karis

	Enabled velocity drawing in scene captures

Change 3365531 on 2017/03/27 by Guillaume.Abadie

	Computes the material's screen position material expression directly from the pixel shader SvPosition

Change 3365764 on 2017/03/27 by Chris.Bunner

	Lowering severity of crash for missing values in scalability.ini.

	#jira UE-41331

Change 3365916 on 2017/03/27 by Guillaume.Abadie

	Exposes the viewport offset within the view property material expression

Change 3365979 on 2017/03/27 by Brian.Karis

	Fixed skylight intensity from double applying

Change 3365987 on 2017/03/27 by Brian.Karis

	Stopped post process indirect lighting intensity from scaling skylight reflections

Change 3365991 on 2017/03/27 by Brian.Karis

	Fix for static analysis

Change 3366028 on 2017/03/27 by Daniel.Wright

	Volumetric fog supports static shadowing from Stationary lights
	* Using bilinear on static shadowmap depths + 1 PCF to smooth out results

Change 3366029 on 2017/03/27 by Daniel.Wright

	Static shadow depth maps for Stationary point and spot lights are 2x higher res by default (4x more texels), which is more appropriate for volumetric fog

Change 3366055 on 2017/03/27 by Guillaume.Abadie

	Cherry picks 3251469: Implements scene capture component's CaptureSortPriority to control GPU execution order in order to manage inter dependencies.

Change 3366447 on 2017/03/27 by Simon.Tourangeau

	Fix IES light profile importer.
	- Bug in the LM-63-1986 format importer.

Change 3366836 on 2017/03/27 by Brian.Karis

	ClearUAV now supports int types

Change 3367435 on 2017/03/28 by Benjamin.Hyder

	Submitting Decal Automation map for initial approval

Change 3367572 on 2017/03/28 by Chris.Bunner

	Changed ClampedPow {max(abs(x),0.00001)} to PositiveClampedPow {max(x,0)} to give more expected results to Power node in material graphs.

	#jira UE-42989

Change 3367756 on 2017/03/28 by Olaf.Piesche

	Niagara material usage flags

Change 3367835 on 2017/03/28 by Marcus.Wassmer

	Fix crash when TileRenderer runs before anything else.  Make explicit behavior when rendering at a time when there is no valid scene.

Change 3367837 on 2017/03/28 by Marcus.Wassmer

	Missed a file.

Change 3367838 on 2017/03/28 by Richard.Wallis

	Updated items from original shelved version by Mark Satt:

	- Added MetalBackend.cpp to change main function string to have an initial crc + code length zero's

	**Description below taken from Mark Satt's original verison of this in CL3343280**

	Updated for Dev-Rendering's PSOs & integrates Richard's work on RHI shader libraries.

	Replace the FShaderCache's cook-time binary shader cache with Dmitriy Dyomin's standalone FShaderCodeLibrary that saves all shader byte-code arrays to files named by the FSHAHash. This de-duplicates shaders so we only ever store the byte code once. Includes optional support for generating a platform specific library file - which Metal implements to provide a single Metal library. The platform-native implementation can perform more de-duplication and in the case of Metal has lower file overheads and will compress more efficiently.

	- All of the support code for the FShaderCache's cook caching is gone, which affects all platforms. The FShaderCodeLibrary is currently  supported by Cook-By-The-Book but can be used with iterate or child cookers - only DLC cooking requires further work.
	- With further modifications it should be possible to support Cook-on-the-Fly as well (output directories would be needed in FShaderCodeLibrary::InitForCooking) and the file-access pattern should be changed to use async. IO so that Material loading is not considered complete until all required byte-code arrays are loaded into the FShaderCodeLibrary.
	- For Metal archiving shaders this way will compile with debug information and the FShaderCodeLibrary, with some help from extensions to IShaderFormat, will save the debug information out into separate files during cooking - these can then be used to debug the game without having to locally recompile, recook & repackage but the shipped byte-code is stripped. Global shader caches are also subject to de-duplication in the library in order to support Metal's shader stripping.
	- File Move operations need to respect the 'Replace' flag - for FShaderCodeLibrary to work we need Move to be atomic.
	- This bumps the object version and will cause all content to recook.
	- Native library support is optional - only Metal currently implements one, but so could Vulkan and D3D12. For Metal the big advantages are further de-duplication where different materials generate the same MetalSL text but a different FSHAHash, that the single Metal library has lower overhead and that as a single file it all compresses far better (esp. with LZMA - 5x smaller).

Change 3367854 on 2017/03/28 by Mark.Satterthwaite

	Don't track or record draw call resources for non-OpenGL shader platforms in the shader-cache as it is unnecessary and makes it slower on the CPU than it needs to be.

Change 3367877 on 2017/03/28 by Brian.Karis

	Fixed linux build hopefully

Change 3368001 on 2017/03/28 by Mark.Satterthwaite

	Compile fixes from Richard's checkin caused by not having visibility to all platforms from my original shelves.

Change 3368019 on 2017/03/28 by Mark.Satterthwaite

	And another fix for Windows compilation of MetalShaderFormat.

Change 3368042 on 2017/03/28 by Mark.Satterthwaite

	And a couple of simpler MSVC errors.

Change 3368271 on 2017/03/28 by Mark.Satterthwaite

	Make SceneRenderTargets compile again.

Change 3368691 on 2017/03/28 by Daniel.Wright

	[Copy from BenW] Renamed r.Shadow.MaxCSMShadowResolution to r.Shadow.MaxCSMResolution to match scalability inis

Change 3369689 on 2017/03/29 by Marcus.Wassmer

	Fix non editor compile for now

Change 3369862 on 2017/03/29 by Marcus.Wassmer

	Get the rest of the things compiling again.

Change 3369896 on 2017/03/29 by Chris.Bunner

	Enabling AMD HDR support by default.

	#jira UE-42113

Change 3370535 on 2017/03/29 by Marcus.Wassmer

	DR - Fix template explicit instantiation for ClearUAV permutations
	#RB Brian.Karis, Arne.Schober

Change 3370704 on 2017/03/29 by Rolando.Caloca

	DR - Rewrote GPU Skin Cache
	- Per section buffers
	- Limited memory per non-editor worlds (control with r.SkinCache.SceneMemoryLimitInMB)
	Copied from 3370529

Change 3371389 on 2017/03/30 by Richard.Wallis

	Remove temp working directories after archive packages built.

Change 3371641 on 2017/03/30 by Rolando.Caloca

	DR - Copy 3371640 (fix mem leak)

Change 3372436 on 2017/03/30 by Uriel.Doyon

	Added flags in UPrimitiveComponent to keep track of its state in the streaming manager.
	This allows to avoid unnecessary callback and processing in begin destroy reattach and being destroy logic.

	Removed the limitation of only processing UMeshComponent when handling spawed primitive.
	This releases the level manager from having to manage dynamic primitives.
	This improves performance by not having to manage dynamic references in the level manager.

	Primitives managed as dynamic now have a callback when ever their proxy is udpated, handling
	many cases automatically where previously a manual callback to notify would have been required.

	Fixed an issue where primitives with no reference to streaming textures would loose they dynamic state
	because of lack of references in the streamer.

Change 3372740 on 2017/03/30 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 3372765 on 2017/03/30 by Uriel.Doyon

	Disabled concurrent call to NotifyPrimitiveUpdated while we don't have a safe concurrent update

Change 3372979 on 2017/03/30 by Richard.Hinckley

	#jira UE-43501
	The stencil buffer can now use single-channel bitmasks that ignore depth. This makes it possible to detect overlaps between stencil objects.

Change 3373053 on 2017/03/30 by Simon.Tourangeau

	LPV Fade support
	- mostly integrated from CL 2959511

Change 3373272 on 2017/03/30 by Uriel.Doyon

	Added support for the concurrent update of dynamic primitives by the streaming manager.

Change 3373450 on 2017/03/30 by Rolando.Caloca

	DR - FNT - Fix bad data for odd texcoord channels used on skin cache passthrough factory
	Copy 3373364

	#jira UE-43492

Change 3373470 on 2017/03/30 by Marcus.Wassmer

	Nvidia Aftermath support

Change 3374187 on 2017/03/31 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 3374233 on 2017/03/31 by Chris.Bunner

	Removed several redundant post process compute fences and resource transitions.
	Added testing CVar to force compute post processes to async (r.PostProcess.ForceAsyncDispatch).

Change 3374412 on 2017/03/31 by Rolando.Caloca

	DR - Fix static analysis

Change 3374544 on 2017/03/31 by Richard.Wallis

	FShaderCache Parallel-Context-Aware Merged with FShaderCache Single Library.

	Future Work
	- This was done before Engine PSO were in so this now needs a refector in the recording and playback on pipeline states instead an emulate PSO in OpenGL Driver.
	- Remove FShaderCacheState and replace the logic with FGraphicsPipelineStateInitializer which should be able to record from the RHI current pipeline state
	- This would reduce the Locking required as it's naturally per thread/context and only the final record would need a lock

Change 3374588 on 2017/03/31 by Richard.Wallis

	Windows Compile Fixes

Change 3374810 on 2017/03/31 by Benjamin.Hyder

	updating recommended GPU drivers

Change 3375207 on 2017/03/31 by Rolando.Caloca

	DR - vk - Fixed swapchain format selection for some Linux platforms

Change 3375248 on 2017/03/31 by Rolando.Caloca

	DR - vk - Prefer D32S8

Change 3375495 on 2017/03/31 by Rolando.Caloca

	DR - vk - Update to sdk 1.0.42.2

Change 3375496 on 2017/03/31 by Rolando.Caloca

	DR - Force compiling with updated Vulkan SDK

Change 3375636 on 2017/03/31 by Mark.Satterthwaite

	Copying Metal improvements from task stream, with some modifications:
	- Off-by-default implementations for MTLFence & MTLHeap, including some small changes to the RHI interface for parallel contexts.
	- Support for Apple's Instruments "Points of Interest" tool.
	- Consolidation of some Mac & iOS compiler, memory and thread handling code.
	- Fixes for Metal not having implicit buffer SRV typecasting for DistanceField effects.
	- Improvements to the internal FMetalDebug layer, still off by default.
	- Limited support for Xcode automatic code-signing for iOS/tvOS.
	- Minimisation of render-target changes in some rendering code, esp. SceneOcclusion, DBufferDecals.
	- Added RHISetResourceAliasability_RenderThread to FDynamicRHI for RHIs to implement simple render-target aliasing.
	- Added FApplePlatformObject, a custom block allocator for Objective-C types (with NSZombie support) which is now used in MetalRHI to decrease allocation costs of Objective-C types.
	- Smattering of lesser fixes.

Change 3375654 on 2017/03/31 by Mark.Satterthwaite

	Incremental Windows build fix.

Change 3375656 on 2017/04/01 by Mark.Satterthwaite

	Correct extern declaration, including the module export macro which Mac unhelpfully doesn't enforce (for now...).

Change 3375797 on 2017/04/01 by Mark.Satterthwaite

	Nullability qualifiers to fix Mac build-farm compilation: perversely this is not a problem for local builds...

Change 3375798 on 2017/04/01 by Mark.Satterthwaite

	Fix the first mis-merge in ParticleGpuSimulation - these changes clearly weren't properly resolved in the task-stream.

Change 3375835 on 2017/04/01 by Mark.Satterthwaite

	Try again with nullability and fix the occlusion changes as the PSO work wasn't merged correctly.

Change 3376143 on 2017/04/02 by Mark.Satterthwaite

	Switch back to flat dSYMs for Dev-Rendering - they don't work with Instruments etc. but they are required by our build system.

Change 3376324 on 2017/04/03 by Chris.Bunner

	Fixed cvar re-registration log spam and flagged a testing-only cvar as such.

Change 3376726 on 2017/04/03 by Benjamin.Hyder

	Submitting initial HDR test map (WIP)

Change 3376756 on 2017/04/03 by Guillaume.Abadie

	Fixes scene captures ordering's backward compatibility.

	Before, 2d scene captures were rendered before cube scene captures. The CaptureSortPriority broke backward compatibility by settings this new member to 0 in the USceneCaptureComponent's constructor. Since it is a higher come first policy, this CL set the default of this value to 1 in USceneCaptureComponent2D's constructor.

Change 3377378 on 2017/04/03 by Arne.Schober

	DR - Fix ShaderRecompiling over and over again
	#RB Chris.Bunner

Change 3377512 on 2017/04/03 by Daniel.Wright

	[Copy] Fixed profilegpu in d3d12 - initialize FLongGPUTaskPS when it is safe to do so, and fixed FSlateRHIRenderer's incorrect usage of draw events

Change 3377518 on 2017/04/03 by Daniel.Wright

	[Copy] Distance field atlas coalesces updates to reduce RHIUpdateTexture3D memory overhead on d3d12

Change 3377526 on 2017/04/03 by Daniel.Wright

	[Copy] "Ran out of GPU queries!" log only happens once

Change 3377535 on 2017/04/03 by Daniel.Wright

	[Copy] Fixed unreferenced local variable

Change 3377539 on 2017/04/03 by Daniel.Wright

	[Copy] Xbox One RHIGetResourceInfo takes ESRAM into account - fixes render target pool 'VRamInKB request failed' messages

Change 3377546 on 2017/04/03 by Daniel.Wright

	[Copy] Added r.LightMaxDrawDistanceScale for local light scalability

Change 3377553 on 2017/04/03 by Daniel.Wright

	[Copy] Removed NEW_ESRAM_ALLOCATOR define and old unused path

Change 3377560 on 2017/04/03 by Daniel.Wright

	[Copy] Fixed two d3d12 refcounting bugs causing -norhithread crashes

Change 3377565 on 2017/04/03 by Daniel.Wright

	[Copy] Fixed Xbox One deleting GPU resources before the GPU is done reading from them (GRHINeedsExtraDeletionLatency was false)

Change 3377572 on 2017/04/03 by Daniel.Wright

	[Copy] Disabled point / spot lights with MaxDrawDistance on LowPC

Change 3377586 on 2017/04/03 by Daniel.Wright

	Fixed compile error

Change 3377699 on 2017/04/03 by David.Hill

	FFT Code.  Moved over from raven and refactored

	#review-3374589 @guillaume.abadie

Change 3377910 on 2017/04/03 by David.Hill

	GPU FFT: Fix Linux Build
	adding a missing template<> to an IMPLEMENT_SHADER_TYPE

Change 3378751 on 2017/04/04 by Marcus.Wassmer

	HQ particle lights now spawn attached to the same socket as their parent module.

Change 3378819 on 2017/04/04 by Richard.Wallis

	Should be no need to protect shader cache against RHI thread now.

Change 3378823 on 2017/04/04 by Richard.Wallis

	FRHIShaderLibrary Opaque Type

	- Base FRHIShaderLibrary has no Create*Shader functions and is passed to Overloaded RHICreate*Shader functions instead of creation directly through the library.
	- Assumed that only Native libraries will end up in the RHICreate*Shader functions.
	- ShaderCache and ShaderCode Libraries now inherit from a common factory interface.

Change 3378883 on 2017/04/04 by Arne.Schober

	DR - Fix DCC build

Change 3378885 on 2017/04/04 by Richard.Wallis

	Metal resource cast compile fix post merge.

Change 3378946 on 2017/04/04 by Chris.Bunner

	SM4 assert fix.

Change 3378953 on 2017/04/04 by Chris.Bunner

	Fixed type-correctness on legacy BreakMA material nodes and set more flexible formats to global attributes which should result in much more forgiving graphs for users.
	Allowed material nodes to opt out of mask-based pin coloration.
	#tests Compiled most Paragon materials + QAGame test maps.

	#jira UE-39885

Change 3379189 on 2017/04/04 by Arne.Schober

	DR - Fix aftermath staging

Change 3379229 on 2017/04/04 by Arne.Schober

	DR - Fix missing include

Change 3379374 on 2017/04/04 by Mark.Satterthwaite

	Revert an accidentally merged change in MacPlatformProcess that relies on further changes from the Metal task stream.

Change 3379505 on 2017/04/04 by Rolando.Caloca

	DR - Fix mismatched interpolators

Change 3379539 on 2017/04/04 by Mark.Satterthwaite

	No FFT for any hlslcc platform - the IR for one or more RWTexture2D isn't quite right...

	#jira UE-43626

Change 3379561 on 2017/04/04 by Rolando.Caloca

	DR - Fix root signature issues on D3D12 PC

Change 3379590 on 2017/04/04 by Mark.Satterthwaite

	Back out changelist 3379539 & change the shader slightly instead, the HLSLCC library generates bogus IR when you have an inout RWTexture.

	#jira UE-43626

Change 3379917 on 2017/04/04 by Uriel.Doyon

	Fix to input mismatch

Change 3380578 on 2017/04/05 by Chris.Bunner

	Shader type fixes.

	#jira UE-43652

Change 3380639 on 2017/04/05 by Rolando.Caloca

	DR - Expose GetOrCreate PSO and document

Change 3380821 on 2017/04/05 by Guillaume.Abadie

	Fixes a crash in USceneCaptureComponent::UpdateDeferredCaptures()

	#jira UE-43642

Change 3381092 on 2017/04/05 by Guillaume.Abadie

	Cherry pick 3362517: Implements TAA's scene color unpremultiplication from alpha channel to reduce DOF alpha channel temporal ghosting.

	This CL take the oportunity to transform AA_ALPHA to an compile time enumeration, and add a basic TAA compile time configuration validation to improve readability of the different TAA passes' configurations.

Change 3381300 on 2017/04/05 by Mark.Satterthwaite

	Quick fix for changes to MetalRHI's render-thread safe texture creation not correctly handling AVFoundation video player handing us an IOSurface.

	#jira UE-43597

Change 3381359 on 2017/04/05 by Guillaume.Abadie

	Back out changelist 3381092

Change 3381421 on 2017/04/05 by Mark.Satterthwaite

	Amended CL #3380995 from Richard Wallis to address crash in the Material Editor under the validation layer - when there are no textures bound the default pass descriptor assigns store actions, which means we can't override them with our deferred store actions.

	#jira UE-43689

Change 3381422 on 2017/04/05 by Mark.Satterthwaite

	Absolute time queries can't be batched in Metal but I also can't rely on them being started with a call to BeginQuery - only EndQuery.

	#jira UE-43691

Change 3381503 on 2017/04/05 by Daniel.Wright

	More intuitive controls for Volumetric Fog
	* Removed ScatteringScale / AbsorptionScale on Exponential Height Fog and added Albedo / Extinction
	* InscatteringColorCubemap is now supported by Volumetric Fog
	* Particle lights have a default VolumetricScatteringIntensity of 0 to avoid trailing
	* Tweaked GVolumetricFogDepthDistributionScale better for nearby details
	* Volume Materials have twice the interpolators available

Change 3381527 on 2017/04/05 by Mark.Satterthwaite

	Disable Private GPU storage for PVRTC texture formats on iOS Metal - these require more changes to the blit-encoder usage as PVRTC has strange requirements.

Change 3381671 on 2017/04/05 by Mark.Satterthwaite

	Better error message for failure to compile shaders remotely from PC for Metal.

Change 3381769 on 2017/04/05 by Rolando.Caloca

	DR - Added lock texture array 2d on Vulkan

Change 3382003 on 2017/04/05 by Mark.Satterthwaite

	Remove the automatic Metal aliasing/re-use when releasing some resource types as it doesn't work as intended.

Change 3382030 on 2017/04/05 by Zachary.Wilson

	Fix compiling Metal text shaders from PC broken in merge from task stream.
	#submitter mark.satterthwaite

	#jira UE-43652

Change 3382880 on 2017/04/06 by Mark.Satterthwaite

	Michael Trepka's CL #3379927:
	VolumetricFogVoxelization implementation for Mac

Change 3383315 on 2017/04/06 by Mark.Satterthwaite

	Partially revert CL #3382003 - the emulated Metal heaps require invoking makeAliasable in order to reclaim memory.

	#jira UE-43739

Change 3384639 on 2017/04/07 by Marcus.Wassmer

	Move ShaderResource version bump to RenderingObjectVersion

Change 3384704 on 2017/04/07 by Mark.Satterthwaite

	Compile fix for merge.

Change 3384933 on 2017/04/07 by Rolando.Caloca

	DR - Fix skin cache crash with BP (copy 3384714)

Change 3385104 on 2017/04/07 by Mark.Satterthwaite

	Fix MetalRHI's abs(int2) handling - it can't be translated to fabs(int2) as that won't compile. Also rebuild hlslcc for my sanity.

	#jira UE-43783

Change 3385105 on 2017/04/07 by Mark.Satterthwaite

	Force a shader rebuild to ensure that everybody picks up the fix for #jira UE-43783

	#jira UE-43783

Change 3385118 on 2017/04/07 by Arne.Schober

	DR - [OR-37359] - Fix disapearing Decals when StencilLod Fade is enabled
	#RB none

Change 3385149 on 2017/04/07 by Marcus.Wassmer

	Fix skincache motion blur

Change 3385189 on 2017/04/07 by Rolando.Caloca

	DR - Fix swapchain format for editor on Vulkan

Change 3385287 on 2017/04/07 by Mark.Satterthwaite

	Enable SM5 on Intel as of 10.12.4 and later.

Change 3385347 on 2017/04/07 by Rolando.Caloca

	DR - Temp fix for GL4 corruption on editor
	#jira UE-43785

Change 3385363 on 2017/04/07 by Rolando.Caloca

	DR - Actually fix all win platforms for GL bug
	#jira UE-43785

Change 3385557 on 2017/04/07 by Arne.Schober

	DR - [UE-43205] - Fix mesh paint
	#RB none

Change 3385608 on 2017/04/07 by Daniel.Wright

	Fixed SampleCmp being used on a non-depth texture, causing a d3d error

Change 3385980 on 2017/04/10 by Rolando.Caloca

	DR - Remove transition functions RHIClearColor* RHIClearDepthStencilTexture

Change 3386042 on 2017/04/10 by Rolando.Caloca

	DR - Fix metal merge issue

Change 3386157 on 2017/04/10 by Rolando.Caloca

	DR - Remove VS2013 libs generation off hlslcc & glslang (to match main)

Change 3386356 on 2017/04/10 by Chris.Bunner

	Resolving merge errors.

Change 3386414 on 2017/04/10 by Chris.Bunner

	Resolved merge issue in RendererScene.cpp.

Change 3386700 on 2017/04/10 by Mark.Satterthwaite

	Silence documentation warnings.

Change 3387178 on 2017/04/10 by Chris.Bunner

	Removed invalid mask correction on MakeMA material nodes.

Change 3388177 on 2017/04/11 by Marcus.Wassmer

	Disable ensure that is no longer relevant now that we bind clear colors on texture creation

Change 3388261 on 2017/04/11 by Chris.Bunner

	Static analysis fix.

[CL 3388266 by Chris Bunner in Main branch]
2017-04-11 10:32:07 -04:00
Marcus Wassmer
2826204161 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3357411)
#lockdown Nick.Penwarden
#rb none

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

Change 3244756 on 2017/01/03 by Marcus.Wassmer

	Copying //Tasks/UE4/Dev-Niagara@3244743 to Dev-Rendering (//UE4/Dev-Rendering)

Change 3248667 on 2017/01/05 by Olaf.Piesche

	Resaving default asset because of engine verison issue; maybe unnecessary, but resaving niagara engine content to be sure

	#jira UE-40160

Change 3249324 on 2017/01/06 by Marcus.Wassmer

	Resave with an actual version to stop cook warning

Change 3249611 on 2017/01/06 by Marcus.Wassmer

	Just remove warning-causing niagara data for now.

Change 3308052 on 2017/02/16 by Rolando.Caloca

	DR - Check for Vulkan SDK, and only use it if it's newer or the same as the headers we distribute

Change 3308109 on 2017/02/16 by Rolando.Caloca

	DR - Upgrade glslang to 1.0.39.1

Change 3308111 on 2017/02/16 by Rolando.Caloca

	DR - Update Vulkan distribution to 1.0.39.1

Change 3308153 on 2017/02/16 by Rolando.Caloca

	DR - Updated glslang libs

Change 3308842 on 2017/02/17 by Rolando.Caloca

	DR - Fixed copy/paste

Change 3310007 on 2017/02/17 by Chris.Bunner

	Back out CL 3221219 - causing MIC generation issues and superseded by CL 3273971.

	#jira UE-37792

Change 3310154 on 2017/02/17 by Chris.Bunner

	Assert when attempting to add a custom material attribute already in the base attributes list.

Change 3310155 on 2017/02/17 by Chris.Bunner

	PR #3231: Validate material index before accessing (Contributed by projectgheist)

	#jira UE-41774, UE-41788

Change 3310162 on 2017/02/17 by Chris.Bunner

	PR #3252: Added MobileMaterialInterface to UsedMaterials (Contributed by projectgheist)

	#jira UE-41823, UE-41950

Change 3310176 on 2017/02/17 by Chris.Bunner

	Merging CL 3233886: AMD HDR support (requires r.AMDSupportsHDRDisplayOutput=1 in ini).
	Update to AGS 5.0.5.
	Partial code tidy up.

Change 3310187 on 2017/02/17 by Chris.Bunner

	Preserve constant expressions rather than always casting after translating a material attribute. Losing the notion of constant means we can't correctly detect used properties and falsely enable e.g. PDO. Happened because of the incorrect component masks in BreakMaterialNodes which then had to be downcast to the correct type which is done as an inline fragment rather than swizzle expression.

	#jira UE-41594

Change 3310215 on 2017/02/17 by Chris.Bunner

	Prevent SpeedTree node compiling for skeletal meshes (not supported as uses more UV sets than available).
	More descriptive error for missing Cubemap UV input on TextureSample material node .

	#jira UE-33098

Change 3310838 on 2017/02/18 by Joe.Graf

	Moved some private functions to public for a licensee

	#CodeReview: matt.kuhlenschmidt
	#rb: n/a

Change 3311876 on 2017/02/20 by Rolando.Caloca

	DR - Expose skin cache cvar r.SkinCache.AccumulationBufferSizeInKB

	#jira UE-42014

Change 3314139 on 2017/02/21 by Rolando.Caloca

	DR - Minor cleanup pass
	- Remove FVulkanPendingState
	- Renamed some classes for clarity
	- Hoist pending UAVs for flush out to pending compute state

Change 3314642 on 2017/02/21 by Rolando.Caloca

	DR - Some more renaming

Change 3315431 on 2017/02/21 by Ben.Salem

	Properly set default values for test time out and tick. We now will default to ticking once per second, and tracking the macro stats of GPU/Render/Game thread time.

	#tests Ran showdown demo several times

Change 3316710 on 2017/02/22 by Rolando.Caloca

	DR - hlslcc - Fix refract intrinsic

Change 3316718 on 2017/02/22 by Rolando.Caloca

	DR - hlslcc - Built libs to pick up change from 3316710 - refract fix

Change 3316820 on 2017/02/22 by Benjamin.Hyder

	updating Tm-TrigNodes map

Change 3317192 on 2017/02/22 by Benjamin.Hyder

	Updating QA-Decals map

Change 3317528 on 2017/02/22 by Benjamin.Hyder

	Updating QA-Decals map

Change 3317639 on 2017/02/22 by Benjamin.Hyder

	Updating Decal on Complex Mesh example in QA-Decals

Change 3317764 on 2017/02/22 by Benjamin.Hyder

	Final updates to QA-Decals

Change 3318319 on 2017/02/22 by Rolando.Caloca

	DR - minor reorg/rename

Change 3318379 on 2017/02/22 by Rolando.Caloca

	DR - more cleanup

Change 3321181 on 2017/02/24 by Rolando.Caloca

	DR - Fix GL bug

Change 3321247 on 2017/02/24 by Rolando.Caloca

	DR - Fix misc bugs

Change 3321898 on 2017/02/24 by Chris.Bunner

	Only issue clear TLV dispatch if required.

	#jira UERNDR-193

Change 3321904 on 2017/02/24 by Chris.Bunner

	Added comment for potential future optimization.

Change 3322013 on 2017/02/24 by Uriel.Doyon

	Fixed separate translucency being affected by Gaussian DOF
	#jira UE-40489

Change 3322517 on 2017/02/24 by Uriel.Doyon

	Fixed issue with InvestigateTexture command removing budget limit.
	Fixed StreamingBounds show flag not working. It nows shows the streaming bound for the currently selected textures.
	#jira UE-40485

Change 3323470 on 2017/02/27 by Chad.Garyet

	Removing DDC job from dev-rendering

Change 3323479 on 2017/02/27 by Chad.Garyet

	Removing RDU agent type

Change 3323519 on 2017/02/27 by Chad.Garyet

	removing NCL/LHR/SEA agent types to clean up space

Change 3323639 on 2017/02/27 by Benjamin.Hyder

	More updates to QA-Decals

Change 3324207 on 2017/02/27 by Uriel.Doyon

	Fixed typo ScaleTexturesByGlobalMyBias ->  ScaleTexturesByGlobalMipBias
	Removed bad merge in FStreamingTextureLevelContext::GetBuildDataIndexRef

Change 3324396 on 2017/02/27 by Uriel.Doyon

	Fixed an issue with the Streaming Bounds show flag interferring with the static level data initialization
	#jira UE-40485

Change 3325227 on 2017/02/28 by Chris.Bunner

	Fix-up AMD AGS libs.

Change 3325566 on 2017/02/28 by Uriel.Doyon

	Fixed possible out-of-bound access in GetUsedTexture() when passing ERHIFeatureLevel::Num

Change 3326009 on 2017/02/28 by Uriel.Doyon

	Better fix for 3325566, as the previous fix would ignore the material instance overrides.

Change 3327058 on 2017/03/01 by Benjamin.Hyder

	Preparing TM_Shadermodels map for automation

Change 3328222 on 2017/03/01 by Chris.Bunner

	Prevent decals from drawing in separate translucency pass. Whilst user control and material relevance were already removed, if the flag was checked before being disabled (by swapping to decal domain) this was still being read in the render loop, now explicitly ignores decals.

	#jira UE-42449, UE-42446

Change 3329848 on 2017/03/02 by Uriel.Doyon

	Added some extra logs to help track UE-42168

Change 3329977 on 2017/03/02 by Rolando.Caloca

	DR - Fix bad clear value

Change 3330008 on 2017/03/02 by Benjamin.Hyder

	More preparations for QA-Decals automation

Change 3330754 on 2017/03/02 by Daniel.Wright

	Prominent comment explaining reflection env async compute usage and why it's not overlapped with anything

Change 3331451 on 2017/03/03 by Marc.Olano

	Manually unroll simplex noise loop to avoid PSO bug on AMD/Metal

Change 3331839 on 2017/03/03 by Rolando.Caloca

	DR - hlslcc - add missing file to project

Change 3332247 on 2017/03/03 by Rolando.Caloca

	DR - Fix for integrated intel
	PR #3305
	#jira UE-42393

Change 3332259 on 2017/03/03 by Rolando.Caloca

	DR - Fix bad index into pixel formats
	PR #3237
	#jira UE-41855

Change 3332305 on 2017/03/03 by Rolando.Caloca

	DR - OpenGL SRV for index buffers
	PR #3271
	#jira UE-32618

Change 3332313 on 2017/03/03 by Rolando.Caloca

	DR - Fix for integrated intel (properly)
	PR #3305
	#jira UE-42393

Change 3332317 on 2017/03/03 by Rolando.Caloca

	DR - OpenGL SRV for index buffers (properly)
	PR #3271
	#jira UE-32618

Change 3332368 on 2017/03/03 by Rolando.Caloca

	DR - Minor fixes so -sm4 and -sm5 can be used on windows with OpenGL/Vulkan

Change 3333690 on 2017/03/06 by Daniel.Wright

	[Copy] Changing movable skylight properties no longer affects static draw lists

Change 3333693 on 2017/03/06 by Daniel.Wright

	[Copy] Added 'r.AOListMeshDistanceFields' which dumps out mesh distance fields sorted by memory size, useful for directing content optimizations

Change 3333705 on 2017/03/06 by Daniel.Wright

	[Copy] Mesh distance fields are now 8 bit fixed point by default, but can be changed back to 16 bit floating piont with a project setting.
	* 8 bit uses half memory but introduces error for thin surfaces or large meshes.

Change 3333721 on 2017/03/06 by David.Hill

	DecalProxy:
	Copy float FadeScreenSize to FDeferredDecalProxy for use in the render thread.  This avoids  pointer chasing to the UDecalComponent (game thread component).

Change 3333772 on 2017/03/06 by Daniel.Wright

	[Copy] Scene motion blur data is only updated for the main renderer frames.  Fixes scene captures and planar reflections breaking object motion blur.

Change 3333790 on 2017/03/06 by Daniel.Wright

	[Copy] Mesh distance field generation uses Embree, for a 2.5x speedup
	* Can switch back to old kDOP generation with 'r.DistanceFieldBuild.UseEmbree 0' for debugging

Change 3333822 on 2017/03/06 by Daniel.Wright

	[Copy] Moved mesh distance field code into MeshDistanceFieldUtilities.cpp
	* Moved FMeshUtilities to its own header so the 8k line MeshUtilites.cpp file can be further split up

Change 3333827 on 2017/03/06 by Daniel.Wright

	[Copy] Range compress 8bit distance fields - gets one extra bit of precision on average

Change 3333828 on 2017/03/06 by Daniel.Wright

	[Copy] Raised High ShadowQuality to 2048 as 1024 for CSM is way too low

Change 3333831 on 2017/03/06 by Daniel.Wright

	Non-editor compile fix

Change 3333836 on 2017/03/06 by Daniel.Wright

	[Copy] Workaround for gobal distance field volume textures being bloated by 4x on PS4 due to the recommended tiling modes.  They now use a 2d tiling mode which avoids the bloat, saving 96Mb.

Change 3333843 on 2017/03/06 by Daniel.Wright

	[Copy] Added OcclusionExponent to skylight component
	* Useful for brightening up indoors without losing contact shadows as MinOcclusion does

Change 3333845 on 2017/03/06 by Daniel.Wright

	[Copy] Capsule shadow BP functions

Change 3333850 on 2017/03/06 by Daniel.Wright

	[Copy] Added OcclusionCombineMode to skylight component

Change 3333854 on 2017/03/06 by Daniel.Wright

	[Copy] Gnm properly registers clears as GPU work so those events show up in profilegpu

Change 3333857 on 2017/03/06 by Daniel.Wright

	[Copy] Clear light attenuation for local lights with a quad covering their screen extents
	* Clearing the entire light attenuation buffer costs .1ms on PS4.  This optimization lowers the minimum cost of a shadow casting light from .15ms -> .03ms.
	* Shadowed lights in Fortnite with 25 lights 3.7ms -> 1.42ms on PS4

Change 3333860 on 2017/03/06 by Daniel.Wright

	[Copy] Flush deferred deletes when reallocating distance field atlas to reduce peak memory

Change 3333861 on 2017/03/06 by Daniel.Wright

	[Copy] Disable all distance field features on Intel cards as HD 4000 hangs in the RHICreateTexture3D call to allocate the large atlas

Change 3333869 on 2017/03/06 by Daniel.Wright

	[Copy] Volumetric Fog using a volume texture mapped to the camera frustum
	* Volumetric fog can be enabled on an Exponential Height Fog component with additional controls
	* Lights have a VolumetricScatteringIntensity
	* New cvars r.VolumetricFog, r.VolumetricFog.GridPixelSize, r.VolumetricFog.GridSizeZ, r.VolumetricFog.DepthDistributionScale
	* Lighting features supported:
	   * Directional light with CSM and a light function
	   * Point / spot lights without shadows / light functions / IES profiles
	   * Skylight with occlusion from distance fields
	* Analytical height fog covers the view range past where the volumetric fog ends
	* Temporal reprojection is used on the volumetric fog scattering and extinction to achieve stability
	* Translucency integrates properly into volumetric fog
	* Height fog StartDistance is not supported by volumetric fog and should be set to 0.

Change 3333894 on 2017/03/06 by Daniel.Wright

	[Copy] Initialize GDummyVolumetricFogGlobalDataUniformBuffer outside of parallel rendering

Change 3333902 on 2017/03/06 by Daniel.Wright

	[Copy] Better handling of volumetric fog enabled with distance of 0

Change 3333903 on 2017/03/06 by Daniel.Wright

	[Copy] Fixed volumetric fog trying to render light functions for a point light

Change 3333908 on 2017/03/06 by Daniel.Wright

	[Copy] Volumetric materials
	* Added new material domain Volume, which can output Scattering, Absorption and Emissive.  All properties are in world space densities.
	* Particle systems using the Volume domain are voxelized based on their ParticlePosition and ParticleRadius
	* Volumetric fog integration is now energy conservative - scattering is integrated against transmission over the depth of each slice.
	* Added bOverrideLightColorsWithFogInscatteringColors to exponential height fog, which can be enabled to make Volumetric Fog match Height fog more closely

Change 3334134 on 2017/03/06 by Daniel.Wright

	[Copy from Michael Trepka] Added Embree 2.14.0 and changed MeshUtilities to use it as this solves issues with Embree leaking TLS keys. UnrealLightmass is still using older Embree 2.7.0 until we can find time to properly test it with the new version. Also, invalidated distance field DDC to force it to rebuild with updated Embree.

Change 3334420 on 2017/03/06 by Daniel.Wright

	Fixed RTDF shadows

Change 3335467 on 2017/03/07 by Benjamin.Hyder

	Initial submission of QA-Decals map to EngineTest

Change 3335556 on 2017/03/07 by Daniel.Wright

	Changed mesh distance field default format back to R16f

Change 3338020 on 2017/03/08 by Daniel.Wright

	Disable volumetric fog in vertex shaders for feature levels which don't support it

Change 3339394 on 2017/03/09 by Chris.Bunner

	Correctly handle material texture translation error edge case.

	#jira UE-42579, UE-42670

Change 3339992 on 2017/03/09 by Daniel.Wright

	Only compile volumetric fog shaders on supporting platforms

Change 3341858 on 2017/03/10 by Arne.Schober

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

	#RB Rolando.Caloca, Marcus.Wassmer, Daniel.Wright, Nick.Penwarden, Mark.Satterthwaite

Change 3342004 on 2017/03/10 by Arne.Schober

	Copying //UE4/Dev-Rendering-PSO to Dev-Rendering (//UE4/Dev-Rendering)
	Fix unity build

	#RB Marcus.Wassmer

Change 3343307 on 2017/03/13 by Marcus.Wassmer

	Update showflags when we are guaranteed it will happen in all possible ways to spawn the scenecapture. (drag into editor, PIE, -game, etc)

Change 3343732 on 2017/03/13 by Rolando.Caloca

	DR - Vulkan compute pipeline & refactor

Change 3344846 on 2017/03/14 by Rolando.Caloca

	DR - Android compile fixes

Change 3344883 on 2017/03/14 by Rolando.Caloca

	DR - Add missing stencil load/store to PSO initializer

Change 3344985 on 2017/03/14 by Rolando.Caloca

	DR - Made load/store actions uint8

Change 3345141 on 2017/03/14 by Rolando.Caloca

	DR - vk - Rework render pass hash

Change 3345304 on 2017/03/14 by Benjamin.Hyder

	Updating TM-Distancefields map to include TemplateFloor mesh

Change 3345387 on 2017/03/14 by Rolando.Caloca

	DR - Add _RenderThread calls for Create*Shader so RHIs can choose not to stall when creating

Change 3345388 on 2017/03/14 by Rolando.Caloca

	DR - Do not stall when creating shaders on Vulkan

Change 3345722 on 2017/03/14 by Chris.Bunner

	PR #3357: MinimalAPI add to many material expressions (Contributed by DeanoC)

	#jira UE-42752

Change 3345723 on 2017/03/14 by Chris.Bunner

	Reduce log verbosity causing spamming during  landscape editing.

	#jira UE-42714

Change 3345725 on 2017/03/14 by Chris.Bunner

	[Duplicate 3341860] Fixed material translation error with multiple connections from custom interpolator nodes.

Change 3345726 on 2017/03/14 by Chris.Bunner

	Typo fixes.

Change 3345732 on 2017/03/14 by Rolando.Caloca

	DR - Decouple vertex declaration off BSS

Change 3345746 on 2017/03/14 by Chris.Bunner

	Added sign() intrinsic material graph node and delisted material function workaround.

Change 3346042 on 2017/03/14 by Chris.Bunner

	Implement missing size query interface for FRenderTargetResources.

	#jira UE-41672

Change 3346387 on 2017/03/14 by Daniel.Wright

	[Copy] Added VolumetricScatteringIntensity to particle lights

Change 3346389 on 2017/03/14 by Daniel.Wright

	[Copy] Clamp Volumetric material attributes to fp16 range to avoid INFs
	Disable volumetric fog when the fog show flag is disabled

Change 3346392 on 2017/03/14 by Daniel.Wright

	[Copy] Fixed skylight being much too bright on volumetric fog

Change 3346406 on 2017/03/14 by Daniel.Wright

	[Copy] CSM resolution is now controlled by r.Shadow.MaxCSMResolution.
	* Changed HighPC to use 1024 MaxShadowResolution (max for all non-CSM shadows), saves 60Mb in Fortnite

Change 3346412 on 2017/03/14 by Daniel.Wright

	[Copy] TexCreate_ReduceMemoryWithTilingMode for translucency lighting 3d textures, saves 13Mb

Change 3346414 on 2017/03/14 by Daniel.Wright

	[Copy] TexCreate_ReduceMemoryWithTilingMode for volumetric fog 3d textures, saves 13Mb

Change 3346415 on 2017/03/14 by Daniel.Wright

	[Copy] Missing file from cl 3338451

Change 3346421 on 2017/03/14 by Daniel.Wright

	[Copy] Fixed NaNs in volumetric fog due to rendering when height fog is disabled
	* Volumetric fog converts NaNs to black now so they don't spread

Change 3346422 on 2017/03/14 by Daniel.Wright

	[Copy] Fixed NaN in volumetric fog with low density values

Change 3346423 on 2017/03/14 by Daniel.Wright

	[Copy] Changed default VolumetricFogScatteringDistribution to .2

Change 3346430 on 2017/03/14 by Daniel.Wright

	[Copy] New translucent material option to compute fog per pixel instead of the default per vertex

Change 3346432 on 2017/03/14 by Daniel.Wright

	[Copy] Moved Volumetric Fog parameters to view uniform buffer for translucency pass
	Fixed lifetimes of temporary Volumetric Fog render targets

Change 3346526 on 2017/03/14 by Daniel.Wright

	[Copy] Volumetric Fog supports point and spot light shadows
	* These lights are injected separately so that per-light resources can be bound (shadow depth map, static shadow depth map)
	* Forward lighting of local lights can be forced with 'r.VolumetricFog.InjectShadowedLightsSeparately 0'
	* Shadowed lights come at a cost: 2.9ms for volumetric fog on 970 -> 4.2ms with shadowing

Change 3347053 on 2017/03/15 by Rolando.Caloca

	DR - android compile fix

Change 3347384 on 2017/03/15 by Rolando.Caloca

	DR - Fix merge issue

Change 3347643 on 2017/03/15 by Marcus.Wassmer

	Fix some bugs with the 'disable stationary skylight ffor the project' feature.
	Fixes lighting in Persona on Paragon.

Change 3347979 on 2017/03/15 by Rolando.Caloca

	DR - Allow to automatically apply cached rendertargets to PSO initializer

Change 3348024 on 2017/03/15 by Rolando.Caloca

	DR - Remove NullPS on Vulkan to avoid deadlock

Change 3348303 on 2017/03/15 by Rolando.Caloca

	DR - Fix for debugging SCW with material SRT

Change 3348357 on 2017/03/15 by Marcus.Wassmer

	Fix stencildither and a stencilref bug that was probably breaking decals sometimes.

Change 3348549 on 2017/03/15 by Marcus.Wassmer

	Hopefully fix static analysis for potential nullptr access.

Change 3348614 on 2017/03/15 by Marcus.Wassmer

	Duplicate some switch changes to fix crash on launch.

Change 3349369 on 2017/03/16 by Gil.Gribb

	Fixed botched merge

Change 3349947 on 2017/03/16 by Rolando.Caloca

	DR - Fix for mismatched primitive type

Change 3349956 on 2017/03/16 by Benjamin.Hyder

	initial updates to TM-DistanceFields map

Change 3350151 on 2017/03/16 by Rolando.Caloca

	DR - Fix UT compile issue

Change 3350155 on 2017/03/16 by Rolando.Caloca

	DR - Catch mismatched primitive type on PSOs on D3D11

Change 3350192 on 2017/03/16 by Daniel.Wright

	Fix for point light shadow depths rendering with wrong cull mode due to PSO refactor

Change 3350736 on 2017/03/16 by Daniel.Wright

	Fixed formatting from merge

Change 3350881 on 2017/03/16 by Rolando.Caloca

	DR - Fix texture arrays as UAVs on Metal

Change 3350927 on 2017/03/16 by Rolando.Caloca

	DR - Fix warning

Change 3350935 on 2017/03/16 by Daniel.Wright

	Fix for materials with non-Surface domains being skipped in mesh passes

Change 3351583 on 2017/03/17 by Marcus.Wassmer

	Fix clang platforms

Change 3351917 on 2017/03/17 by Marcus.Wassmer

	Fix linux compile

Change 3351973 on 2017/03/17 by Marcus.Wassmer

	Fix mismatched rendertargetformat

Change 3352038 on 2017/03/17 by Daniel.Wright

	Enabled GetAndOrCreateGraphicsPipelineState ensures in Development for testing

Change 3352110 on 2017/03/17 by Marcus.Wassmer

	Fix missing RT PSO apply

Change 3352695 on 2017/03/17 by Arne.Schober

	DR - Remove PSO Rendertarget check in DX12 Resolve with Shader.
	#RB Rolando.Caloca

Change 3352960 on 2017/03/17 by Arne.Schober

	DR - Fix some things that slipped trough the PSO merge
	#RB none

Change 3353150 on 2017/03/18 by Rolando.Caloca

	DR - compile fix

Change 3353205 on 2017/03/18 by Arne.Schober

	DR - Fix Incremental Compile and PS4 runtime error where CMASK is not allowed for ThickTile Mode

	#RB none

Change 3353207 on 2017/03/18 by Arne.Schober

	DR - Fix Confusion

	#RB none

Change 3355183 on 2017/03/20 by Nick.Bullard

	Fixed up Content orginzation for Decals automation tests in EngineTest

Change 3355627 on 2017/03/20 by Arne.Schober

	DR - [UE-43094] - removed ensure in comporiton graph as control of the clear color cannot be gurantueed.

Change 3356342 on 2017/03/21 by Marcus.Wassmer

	Fix clang errors

Change 3356591 on 2017/03/21 by Arne.Schober

	DR - Fix ensure message
	#RB none

Change 3356873 on 2017/03/21 by Arne.Schober

	DR - Fix comparission of undefined values in RendertargetApply Check

Change 3357261 on 2017/03/21 by Marcus.Wassmer

	Fix LinuxEditor compile

Change 3357294 on 2017/03/21 by Marcus.Wassmer

	Add missing SSE functions

Change 3357351 on 2017/03/21 by Frank.Fella

	Fix win32 and linux compiler errors

Change 3357370 on 2017/03/21 by Arne.Schober

	DR - disable ensure in test builds

	#RB Marcus.Wassmer

[CL 3357449 by Marcus Wassmer in Main branch]
2017-03-21 17:46:52 -04:00
Marcus Wassmer
05c8e44220 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3284600)
#lockdown Nick.Penwarden
#rb none

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

Change 3276199 on 2017/01/27 by Rolando.Caloca

	DR - Typo fixes

Change 3277152 on 2017/01/30 by Chris.Bunner

	Fixed typos in various engine material functions (contributed by Luos and KVogler).

Change 3277700 on 2017/01/30 by Olaf.Piesche

	#jira UE-38060 - inconsistent ribbon trails
	When advancing source particle index, make sure it's not already in use by another trail

Change 3278069 on 2017/01/30 by Daniel.Wright

	[Copy] Added LODDistanceFactor to SceneCaptureComponent
	* Can be used to make scene captures and planar reflections much cheaper to render if the scene has good LODs setup

Change 3278094 on 2017/01/30 by Daniel.Wright

	[Copy] Scene color resolves are restricted to the views.  Fixes inefficiency with adaptive pixel density where the views don't match the view family size.

Change 3278140 on 2017/01/30 by Daniel.Wright

	[Copy] When using a full prepass, the base pass no longer writes depth.
	* Saves .3ms of SceneDepthResolve on 970 GTX with MSAA.  Also allows masked materials to get EarlyZ in the base pass.
	* Fixed primitives with bUseAsOccluder=false being excluded from a full depth pass in static draw lists
	* Added 'r.BasePassWriteDepthEvenWithFullPrepass' for verifying that the base pass depths match the prepass depths

Change 3278166 on 2017/01/30 by Daniel.Wright

	[Copy] Quad overdraw viewmode works in the forward renderer

Change 3279100 on 2017/01/31 by Chris.Bunner

	CVar null checks.
	#jira UE-41096

Change 3279409 on 2017/01/31 by Rolando.Caloca

	DR - vk - Fix for validation

Change 3279624 on 2017/01/31 by Rolando.Caloca

	DR - Move defines out of cs into h
	#fyi Arne.Schober,Ben.Woodhouse

Change 3279895 on 2017/01/31 by Ben.Salem

	Modified PerformanceMonitor to take all of its config from defaultgame.ini
	#tests Ran several tests successfully.

Change 3279906 on 2017/01/31 by Ben.Salem

	Had a weird spurious declare in the config parsing function. Fixed it.
	#tests compiled.

Change 3280451 on 2017/01/31 by Arne.Schober

	Fix Dx12 in content examples where M_Light_Bulb_Glass taking a lot of resources (9 CBVs)

Change 3281592 on 2017/02/01 by Mark.Satterthwaite

	Update Metal SRV support to include structured-buffers which are now used by DistanceField rendering systems.

Change 3281850 on 2017/02/01 by Gil.Gribb

	Merging //UE4/Dev-Main to Dev-Rendering@3281582 (//UE4/Dev-Rendering)

Change 3282353 on 2017/02/01 by Benjamin.Hyder

	built lighting for QA-LightsStatic

Change 3282549 on 2017/02/01 by Arne.Schober

	Fix DX12 crash on SkinMaterial

Change 3282637 on 2017/02/02 by Marcus.Wassmer

	Probably fix non-unity build

Change 3283125 on 2017/02/02 by Marcus.Wassmer

	Fix linux case sensitivity.

[CL 3284689 by Marcus Wassmer in Main branch]
2017-02-02 21:54:05 -05:00
Arne Schober
22327aa348 Main - copy of 3233696 - UT-6844 - Fix SceneColorCopy not resetting the State correctly when using the parallel path
#RB marcus.Wassmer
#lockdown nick.penwarden

[CL 3233715 by Arne Schober in Main branch]
2016-12-13 18:57:17 -05:00
Ben Marsh
20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

[CL 3226823 by Ben Marsh in Main branch]
2016-12-08 08:52:44 -05:00
Nick Whiting
9c0a775359 Copying //UE4/Odin-Staging to //UE4/Dev-Main (Source: //Odin/Main @ 3226588)
#lockdown Nick.Penwarden
#rb None

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

Change 3226413 on 2016/12/07 by Jeff.Farris

	Fixed potential crash in USkeletalMeshComponent::InitArticulated().

Change 3226257 on 2016/12/07 by Mike.Beach

	Mirroring CL 3219381 from Dev-Blueprints

	Accounting for cyclic compile issues in cast-node's validate function, making it check the authoratative class instead of the current type. Also down grading some of the warnings to notes (suggesting the users don't need the cast).

	#jira UE-39272

Change 3226147 on 2016/12/07 by Aaron.McLeran

	Implementing UE-39421 fix into odin

Change 3225906 on 2016/12/07 by Jeff.Farris

	Merge-copied 3216144 from Dev-Framework to Odin (Fix FConstraintInstance scaling issues in FSkeletalMeshComponent::InitArticulated.)

Change 3225097 on 2016/12/07 by Zak.Middleton

	#odin-ue4 - Fix GameEngine.cpp compile error (FMessageDialog not declared).

Change 3225050 on 2016/12/07 by Jeff.Farris

	Added forward declaration to IOculusRiftPlugin.h to fix compile error in Test builds.

Change 3224757 on 2016/12/07 by Ben.Marsh

	Merge CL 3224750 from //UE4/Main: Removing -forcelogflush parameter from UAT invocations of the editor to improve cook times.

Change 3224451 on 2016/12/06 by Max.Chen

	Sequencer: Fix convert spawnable to posessable. Logic for setting the parent was mistakenly removed in runtime eval.

	Copy from Dev-Sequencer

	#jira UE-39419

Change 3223856 on 2016/12/06 by Guillaume.Abadie

	Fixes merge collision of Base Pass's selective outputs and MSAA alpha to coverage

Change 3223673 on 2016/12/06 by Zak.Middleton

	#odin-ue4 - Fixed crash when opening data table assets and working with some types of nodes in the graph editor.

	Merged fixes from Dev-Editor: CL 3156326, 3172078, 3187276, 3210983.

Change 3223381 on 2016/12/06 by Nick.Whiting

	Merging using UE4_MAIN_to_ODIN @ CL 3221533

Change 3223325 on 2016/12/06 by Alex.Delesky

	Plugin wizard definition for creating Odin game mods. Currently this just creates an empty Content Only plugin.

	This also enables the mod creation window to be shown on editor startup (can be toggled off) or invoked via a toolbar button.

Change 3221825 on 2016/12/05 by Nick.Whiting

	Updating VCToolChain.cs file, which was skipped in last integration

Change 3221793 on 2016/12/05 by Zak.Middleton

	#odin - Back out changelist 3218159. Going to move to trace by profile in the future instead.

Change 3219668 on 2016/12/02 by Alex.Delesky

	Partially duplicating CL 3185126 into Odin:

	-Fixes an issue where adding a new plugin could unnecesarily added to the additional plugin directory, which can cause build failures.

Change 3219558 on 2016/12/02 by Zak.Middleton

	#odin - Fix adapative pixel density crash (again). INI settings are dumb and locally saved INIs ignore the change to the base I pushed yesterday, so pushing a code fix instead. Wrapped in "DO NOT MERGE" since this crash is fixed in Dev-VR.

Change 3218953 on 2016/12/02 by Alex.Delesky

	Back out changelist 3216159 - Reintroducing Plugin Wizard Definition for defining New Plugin Wizard functionality

Change 3218822 on 2016/12/02 by Matthew.Griffin

	Remove modding from folder paths
	Add logging for delete task
	Delete more temp files from Copy and DDC process

Change 3218410 on 2016/12/01 by Zak.Middleton

	#ue4-odin - Fix crash when unloading levels or exiting the editor when objects placed in levels had a MID set in construction scripts.

	CLs from Dev-Editor: 3203739, 3205814

Change 3218277 on 2016/12/01 by Zak.Middleton

	#ue4-odin - Fixed crash when opening data table assets.

	Merged small fixes from Dev-Editor: CL 3156326, 3172078, 3187276.

	#jira ODIN-2096

Change 3218178 on 2016/12/01 by Jeff.Farris

	Fix for bad merge in InheritableComponentHandler (discovered via shadow var warning)

Change 3218159 on 2016/12/01 by Zak.Middleton

	#ue4-odin - Wrap blueprint trace functions using trace channels to a generic helper that uses any collision channel. Before we decide whether to expose object channel or general collision channel functions to blueprints, this allows games to at least build off the general functions.

Change 3216502 on 2016/11/30 by Nick.Whiting

	Missed files from merge

Change 3216490 on 2016/11/30 by Nick.Whiting

	Merge Main -> Odin, up to CL 3202946

Change 3216159 on 2016/11/30 by Zak.Middleton

	#odin - Back out changelist 3216005

Change 3216005 on 2016/11/30 by Alex.Delesky

	Adding the IPluginWizardDefinition interface, which is used to determine the functionality of the new plugin wizard along with what kind of plugins can actually be created. This can be used to change the behavior of the plugin wizard to create new game mods.

Change 3215329 on 2016/11/30 by Jeff.Farris

	Re-expose collision settings on EQSTestingPawn so users can make the test pawn agent dimensions match the pawn they are trying to simulate.

Change 3213875 on 2016/11/29 by Jeff.Farris

	Turned off collision on EQSRenderingComponent for EQSTestingPawns. Fixes issue with bogus agent dimensions.

Change 3213027 on 2016/11/29 by Matthew.Griffin

	Added Modding Build steps to copy everything needed for an installed editor build
	Added BuildCommand to run GenerateDistillFileSetsCommandlet and copy the resulting file list to another location
	Fix for APEX .pdb paths

Change 3206638 on 2016/11/21 by Dan.Oconnor

	Fix for compile error, digging out authorative class from trash class

Change 3206175 on 2016/11/21 by Nick.Atamas

	#umg exposed support for explicit wrap width in WrapBox.

Change 3204658 on 2016/11/18 by Alan.Villani

	#odin Wiring up new intro cinematic to game flow.

Change 3201200 on 2016/11/16 by Alan.Villani

	#odin Spectator/Leaderboards: Added console var vr.bAllowSpectatorTexture to enable/disable the display of the spectator texture. Also enabling spectator panel and leaderboards with this change.

Change 3201064 on 2016/11/16 by Wyeth.Johnson

	Support new billboards

Change 3199357 on 2016/11/15 by Alan.Villani

	#odin OnlineSubsystemOculus: Removing logging now that problem has been fixed.

Change 3199302 on 2016/11/15 by Alan.Villani

	#odin OnlineSubsystemOculus: Skip reinit if not a successful init in ovr_ResetInitAndContext(). Also added logging to shutdown.

Change 3198947 on 2016/11/15 by Alan.Villani

	#odin Spectator/Leaderboards: Reinstating CL 3197812 with fix to make InitWithWindowsPlatform() return warnings instead of errors.

Change 3198803 on 2016/11/15 by Jeff.Farris

	Copied CL 3198691 frojm Dev-Sequencer (Sequence Recorder: Optimize record transforms by setting all the keyframes at once.  Also, added option to toggle removing redundant keyframes from the recorded tracks.)

Change 3198525 on 2016/11/15 by Alan.Villani

	#odin ODIN-1758. Spectator/Leaderboards: Back out changelist 3197812. This change was causing the automated packaged build to fail. Since the root cause hasn't been found, reverting the change.

Change 3197909 on 2016/11/15 by Alan.Villani

	#odin OnlineSubsystemOculus: Fix for linking issue with Odin Monolithics build.

Change 3197812 on 2016/11/14 by Alan.Villani

	#odin Spectator and leaderboard code support:

	Support for enhanced oculus leaderboard functionality. Player's score is uploaded on FinishLevel(). Added delegate function to allow Rift render code to render an additional passed in texture - this is used to display spectator information in the mirrored window. GetMissionRowName() can now return the row name for the intro mission.

	This is only code support. Blueprint support to follow.

Change 3196940 on 2016/11/14 by Nick.Whiting

	Fix for include path

Change 3196897 on 2016/11/14 by Nick.Whiting

	Integrating IKinema plugin.  Note that there are some deprecation warnings that have not been fixed up because of the refactoring.  We're going to avoid fixing that up for now, because it's a large refactor, and the plugin is only needed for this week.

Change 3194897 on 2016/11/11 by Zak.Middleton

	#ue4 - (Odin) -- Downgrade warning log spam when sweeping skeletal mesh components.

Change 3194799 on 2016/11/11 by Nick.Atamas

	Added better normals for curved WidgetComponent.

Change 3194697 on 2016/11/11 by Chris.Bunner

	Duplicated CL 3194665 from Dev-Rendering: Duplicated behavior for inherited velocity scaling scaling to vert/surface spawned particles.

Change 3194383 on 2016/11/11 by Zak.Middleton

	#ue4 - (Odin) - Avoid calling ComponentOverlapComponent() when handling overlap checks if either component is a SkeletalMeshComponent. That function returns false for those, however a normal global overlap check would return a valid result.

	Also elevated warnings (from log) when trying to use above function with SkeletalMeshComponents.

Change 3194380 on 2016/11/11 by Zak.Middleton

	#ue4 - (Odin) - UPrimitiveComponent::GetCollisionEnabled() checks the owner Actor enable collision setting. Handles cases where the BodyInstance doesn't have physics state.

	Also merge CL 3136709 to fix overlap events spam.

Change 3192616 on 2016/11/09 by Zak.Middleton

	#odin - Jump arcs only draw in editor if Navigation is shown, or when selected in editor.

Change 3192310 on 2016/11/09 by Daniel.Wright

	[Copy] Support for Reflection Capture intensity with simple reflections, which are the default with Forward Shading

Change 3191042 on 2016/11/08 by Nick.Atamas

	#slate/umg
	Added SetIsExapanded_Animated() method to SExpandableArea.
	Added anim length to ExpandableArea's widget style.

Change 3190411 on 2016/11/08 by Guillaume.Abadie

	Adds some randomness in particul collisions.

Change 3186455 on 2016/11/03 by Stanley.Hayes

	Fixed Tangents the mesh generation of Widget Component, now works with Bump Offset! -- The Impl for non-planar widgets is wrong but works as a temp fix

Change 3186335 on 2016/11/03 by Alan.Villani

	#odin Oculus Input:

	Fix for haptic feedback not processing unless both touch controllers are active.

Change 3184215 on 2016/11/02 by Daniel.Wright

	Added r.ReflectionEnvironmentLightmapMixLargestWeight, useful for restricting lightmap mixing to darkening only

Change 3182542 on 2016/11/01 by Nick.Atamas

	Applied feedback after code review:
	 - Fixed bug with incorrectly assigned LocalHitLocation
	 - PerformTrace is now const
	 - Clarified comments.

	Potentially fixed jira ODIN-1590, pending verification.

Change 3181845 on 2016/11/01 by Nick.Atamas

	Details panel filters now show a distinct visual state (yellow highlight) when a filter is active.

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

Change 3179037 on 2016/10/28 by Zak.Middleton

	#ue4 - (Odin) - Avoid crash in PropertyChangeListener when WeakObjectPtr goes null. Prevent passing null objects in array to delegates that don't null check the elements. Repro steps still unclear, adding ensure() to catch it for more info.

Change 3177127 on 2016/10/27 by Alan.Villani

	#odin Menu Shell:

	Put in cvar to allow disabling of haptics.

Change 3174582 on 2016/10/26 by Zak.Middleton

	#ue4 - Changed Actor::GetForwardVector, GetUpVector, and GetRightVector to just wrap to the FQuat functions. These use inline constants rather than a memory fetch to the static FVector::ForwardVector etc, so the multiplies are better optimized in-place by the compiler (ie with constant folding).

Change 3174401 on 2016/10/25 by Maciej.Mroz

	In nativized code Nullptr is always casted to UObject type.

	#jira ODIN-1560

Change 3173310 on 2016/10/25 by Guillaume.Abadie

	Fix a bug in the forward shading particule collision hack using ddx/ddy to compute the normal and implement an accurate way of compute the normal requiering two addtional scene depth buffer fetches for neighboorhing pixels and use it as default.

Change 3172997 on 2016/10/24 by Nick.Atamas

	Cylindrical Widget - First Pass Support.

Change 3172707 on 2016/10/24 by Nick.Whiting

	Integrating fix for haptic effects with sound waves crashing when no sound wave is loaded.

Change 3172167 on 2016/10/24 by Jeff.Farris

	Merged 3120587 from Dev-Sequencer to Odin (Fbx Export: Fix double transforms on an exported mesh.)

Change 3170221 on 2016/10/21 by Zak.Middleton

	#ue4 - Fix projectiles and characters not moving at all when frame delta time is very low (time dilation is very low, framerate is very high, or a combination of both).

Change 3170036 on 2016/10/20 by Zak.Middleton

	#ue4 - Make Ragdoll collision profile ignore Visibility channel (to match CharacterMesh collision profile).

Change 3169728 on 2016/10/20 by Zak.Middleton

	#ue4 - Fix comment.

Change 3169727 on 2016/10/20 by Zak.Middleton

	#ue4 - Fix spacing/indentation.

Change 3169277 on 2016/10/20 by Zak.Middleton

	#ue4 - Lower default simulations per second in PredictProjectilePath. Now that it is more accurate (after CL 3124174), this will still maintain quality with better performance.

Change 3169272 on 2016/10/20 by Zak.Middleton

	#ue4 - Change some array Reset() calls back to Empty(), since blueprints typically keep these arrays around forever and we don't want them to stay large.

Change 3168157 on 2016/10/19 by Jeff.Farris

	Merging 3168079 from Dev-Framework to Odin (Fix timing issue that causes snapshotpose to t-pose.)

Change 3167894 on 2016/10/19 by Chris.Bunner

	Updated tooltip comment.

Change 3167569 on 2016/10/19 by Jeff.Farris

	#engine Fixed issue with cine camera component where blueprint-accessible FOV data could be incorrect in some circumstances

Change 3166950 on 2016/10/18 by Zak.Middleton

	#ue4 - Fix reversed logic checking for an Actor after a cast was supposed to have failed, broken in CL 2695656.

Change 3166807 on 2016/10/18 by Zak.Middleton

	#ue4 - Make all GameplayStatics functions take const WorldContextObjects, so they are more usable from C++.

Change 3166540 on 2016/10/18 by Jeff.Farris

	Merging 3164818 from Dev-Framework to Odin (Added a pose snapshot feature that allows users to convert an existing skeletal mesh pose into a node inside the anim blueprint. This is useful for things like getup from ragdoll.)

Change 3166323 on 2016/10/18 by Jeff.Farris

	#engine Fixed issue where Navlink smartlinks wouldn't respect the Direction property proprely.

Change 3163415 on 2016/10/14 by Chris.Bunner

	Allow surface actor particles to inherit UV coordinates through the dynamic parameter struct.

Change 3162716 on 2016/10/13 by Jeff.Farris

	#engine Made UPathFollowingComponent::HasReachedCurrentTarget() virtual

Change 3161602 on 2016/10/13 by Jeff.Farris

	#engine removed a comment I left in

Change 3161037 on 2016/10/12 by Alan.Villani

	#odin Loading Screens:

	Modified AsyncLoadingSplash to use platform specific max layer number.

Change 3160690 on 2016/10/12 by Jeff.Farris

	#engine Added PathFollowingComponent::bIsDecelerating to know when AI is in its "decelerate at the end of the path" state

Change 3160686 on 2016/10/12 by Jeff.Farris

	#engine Fixed comment on NavMovementComponent::bUseAccelerationForPaths

Change 3160200 on 2016/10/12 by Zak.Middleton

	#odin - Added Odin versions of Sphere, Capsule, Box trace functions taking any trace channel.

Change 3156847 on 2016/10/10 by Maciej.Mroz

	#jira ODIN-1345

	In nativized code, value of output array parameter is reset before the funtion, that will fill the parameter, is called. The same mechanism is already used by bytecode comiler.

Change 3155495 on 2016/10/07 by Zak.Middleton

	#ue4 - RootComponent fixup in AActor::PostLoadSubojects should handle constructors that also try to fix up the old root component on their own.

	Additionally we should attach the old root component to the new one, otherwise it has no parent.

Change 3154962 on 2016/10/07 by Chris.Bunner

	Duplicating CL 3148934, 3148994 from Dev-Rendering - Added pre-skinned local position material graph node, vertex shader only.

Change 3154255 on 2016/10/06 by Zak.Middleton

	#ue4 - Add AIController to the delegate for move completion for blueprint "AI Move To Location or Actor" nodes, so you can know which AI finishes the move.

Change 3154217 on 2016/10/06 by Mike.Beach

	Backing out changelist 3146883, as it was causing properties to clear on load (in Gun_Shotgun/BP_RightHand).

Change 3154199 on 2016/10/06 by Zak.Middleton

	#ue4 - Inline a few simple functions in UKismetSystemLibrary for performance in nativized builds.

Change 3153427 on 2016/10/06 by Jeff.Farris

	Updated Oculus AppID to the full game ID

Change 3148205 on 2016/10/02 by Zak.Middleton

	#ue4 - Perf: Add simple path for UPrimitiveComponent::UpdatePhysicsVolume() when there are no physics volumes placed in a level. Avoid checking overlapping components for any volumes at all.

Change 3148089 on 2016/10/01 by Phillip.Kavan

	Merging in CLs 3148022 and 3148033 from //UE4/Dev-Blueprints/...

	Note: These were dependent on the following additional CLs, which have also been merged in:
	=> 3081010,3116021,3123581,3131318,3132348,3133072,3133817,3137800,3137851

Change 3148054 on 2016/10/01 by Nick.Whiting

	Adding much smaller footprint entitlement check

Change 3147910 on 2016/10/01 by Nick.Whiting

	Back out changelist 3147807

Change 3147909 on 2016/10/01 by Nick.Whiting

	Back out changelist 3147787

Change 3147810 on 2016/09/30 by Zak.Middleton

	#odin - Fix "Delay" nodes in macros not working correctly. This made simultaneous instances of our "UndilatedDelay" and "0-1 Lerp" macros incorrect.

	(Mirror CL 3119502 from Dev-Blueprints)

Change 3147807 on 2016/09/30 by Nick.Whiting

	Blueprint cyclic dependency fixes, submitted on behalf of DanO.

Change 3147787 on 2016/09/30 by Nick.Whiting

	Adding Oculus Entitlement check for Odin

Change 3147732 on 2016/09/30 by Daniel.Wright

	From Guillaume: Skip ClearStencilFromBasePass by using a single bit of stencil as a sandbox bit.  This requires all passes that use stencil to setup a proper read / write mask, as other stencil bits will be non-zero.  Saves .14ms

Change 3147285 on 2016/09/30 by Dan.Oconnor

	Back out changelist 3147258
	Introduced "Detaching from existing linker" crash

Change 3147258 on 2016/09/30 by Dan.Oconnor

	Making sure we defer objects that have unserialized archetypes

Change 3146985 on 2016/09/30 by Daniel.Wright

	Skip Prepass ResolveSceneDepthTexture if there's no way decals or shadows will use it, since there's another resolve after the base pass.  Saves .1ms in the planar reflection pass.

Change 3146883 on 2016/09/30 by Dan.Oconnor

	Fix for component data getting lost on load. Two primary causes:
	 1. Loading component, then loading its template and reinitializing it from parent
	 2. Discarding inheritable component handler on load because it 'matched' the unloaded super (or it was unloaded and matched a loaded super, or both of them weren't yet loaded and they matched)

Change 3145504 on 2016/09/29 by Daniel.Wright

	Capsule indirect shadows are now affected by DynamicShadows showflag

Change 3145416 on 2016/09/29 by Wyeth.Johnson

	optimized vector to radial value to use atan2fast. Small polish to weapon available indicators, slightly smaller, radial res in, get brighter right before pickup to match the glow transition

Change 3144359 on 2016/09/28 by Zak.Middleton

	#ue4 - Add IsPointInBox() and IsPointInBoxWithTransform() to KismetMathLibrary.

Change 3144302 on 2016/09/28 by Daniel.Wright

	New SceneCapture functions for managing the ShowOnly list: RemoveShowOnlyComponent, RemoveShowOnlyActorComponents, ClearShowOnlyComponents

Change 3144210 on 2016/09/28 by Daniel.Wright

	Manual copy - Shadow stencil optimisation from Ben Woodhouse with cvar (enabled by default).  Saves .2ms in Odin.

Change 3144208 on 2016/09/28 by Daniel.Wright

	Setup scissor for scene depth resolves, helps with passes using screenpercentage to reduce resolution.  Planar reflection depth resolves .8ms -> .2ms on 970

Change 3143778 on 2016/09/28 by Ryan.Vance

	Disabling motion blur scale behavior. We want the motion blur scale to be consistent regardless of time dilation.
	Cleaning up the velocity bias change made yesterday for odin, need to ensure it doesn't make it back to main as it will break TAA.

Change 3143728 on 2016/09/28 by Jeff.Farris

	Made AIController::MoveTo virtual

Change 3142740 on 2016/09/27 by Nick.Whiting

	Fix for dynamic object velocity rendering not working.  MSAA was breaking it, needed to add a bias in the VelocityShader in order to pass depth tests

Change 3142665 on 2016/09/27 by Ryan.Vance

	Fixing incorrect uniform/buffer references for passes that aren't drawn with ISR when ISR is turned when using forward.

Change 3142488 on 2016/09/27 by Zak.Middleton

	#ue4 - Expose Character::MovementModeChangedDelegate to blueprints. Fix category on OnReachedJumpApex event.

Change 3142360 on 2016/09/27 by Frank.Fella

	Sequencer - Don't crash when a bool track or visibility track has a null runtime object.

Change 3142204 on 2016/09/27 by Zak.Middleton

	#odin - Nav jump links update their nav data in realtime as the start and end points are moved. Still need to color the predicted path based on the nav data.

Change 3141695 on 2016/09/27 by Guillaume.Abadie

	Fixes depth buffer collision on GPU particle in the forward render by computing the world normal using a cross(ddx(), ddy()) of the world position.

	#review-3141656 @ben.woodhouse

Change 3141013 on 2016/09/27 by Zak.Middleton

	#ue4 - NavLinkProxy properly calls SetNavigationRelevancy() when created in the editor. Fixes the need to uncheck/recheck bSmartLinkIsRelevant.

Change 3140878 on 2016/09/26 by Zak.Middleton

	#ue4 - Add MarkRenderStateDirty() to UNavLinkCustomComponent::SetLinkData(), so visualizers update asap after link data changes.

Change 3140863 on 2016/09/26 by Nick.Whiting

	Adding in vr.MonoCapture, which disables the right eye for capturing in order to give a performance boost

Change 3140790 on 2016/09/26 by Zak.Middleton

	#ue4 - Make LineBatchComponent's FLineBatcherSceneProxy::GetViewRelevance() respect show flags (such as hidden in game).

Change 3140175 on 2016/09/26 by Dan.Oconnor

	Mirror of 3140143
	#jira UE-36395

Change 3139622 on 2016/09/26 by Maciej.Mroz

	Fixed const local variables in Nativized code

Change 3139257 on 2016/09/24 by Jeff.Farris

	Added GetGrabbedComponent() to UPhysicsHandleComponent.

Change 3139050 on 2016/09/23 by Nick.Whiting

	Support for trailer capturing, as well as gamepad controls for adjustment

Change 3138644 on 2016/09/23 by Zak.Middleton

	#ue4 - Added FPredictProjectilePathPointData::Reset(). Presize path points array in UGameplayStatics::PredictProjectilePath().

Change 3138521 on 2016/09/23 by Ryan.Vance

	#jira UE-36114

	We need to bind the right eye's forward lighting state when ISR is enabled and branch depending on which eye instance we're drawing.
	Added a copy of  FForwardGlobalLightData, NumCulledLightsGrid CulledLightDataGrid, and ForwardLocalLightBuffer for the right eye and set them when drawing with ISR
	Moved ForwardLightingResources from FViewInfo up to FSceneView for access
	Removed USE_CULLED_LOCAL_LIGHTS as it wasn't being used and complicated the shader refactor

	TODO: This can be greatly simplified by generating the FForwardGlobalLightData uniform assignment shader code similar to how I'm handling the view uniforms. To clean up the branching for the grid buffers we should write both eyes into a single buffer and just use an offset.

Change 3138178 on 2016/09/23 by Zak.Middleton

	#ue4 - Add FVector::DistXY() and Dist2D() (as an alias). Add FVector::Distance() as an alias for Dist(), and FVector::DistSquared2D() as an alias for DistSquaredXY(). Fixed comment in FVector2D::Distance() saying it was the squared distance.

	- This is more in line with the Size2D(), SizeSquared2D(), GetSafeNormal2D() naming, but maintains backwards compat for a large amount of code.

Change 3138162 on 2016/09/23 by Lukasz.Furman

	fixed navmesh crash on attempt to regenerate an empty tile layer

Change 3137578 on 2016/09/23 by Maciej.Mroz

	#jira ODIN-1017 [Nativization] Crash while loading Hub_env level

	Ensured, that CreateExport (and fully construction) is called for loaded DynamicClass.

Change 3136774 on 2016/09/22 by Chris.Bunner

	Gather object references from stereo view state in USceneCaptureComponent. This matches behavior of other classes such as ULocalPlayer.
	#jira ODIN-1013

Change 3136491 on 2016/09/22 by Jeff.Farris

	Removed an unnnecessary ensure in ApplyPhysicalAnimationProfileBelow.

Change 3136412 on 2016/09/22 by Zak.Middleton

	#ue4 - Inlined more functions in KismetMathLibrary that used error reporting (eg divide by zero errors). Moved the actual error reporting to the cpp so the inline overhead and compilation overhead is negligible.

Change 3136288 on 2016/09/22 by Zak.Middleton

	#ue4 - Inline KismetMathLibrary functions where appropriate. Improves performance in nativized builds where the calls were not inlined even for the most simple functions (like "Not Bool", "Add Ints").

Change 3136162 on 2016/09/22 by Ben.Marsh

	Merge CL 3136158 to fix issues generating project files with Visual Studio Express.

Change 3135403 on 2016/09/22 by Jeff.Farris

	GameplayStatics::ApplyPointDamage and ApplyDamage now return the actual damage that was applied

Change 3135052 on 2016/09/21 by Zak.Middleton

	#ue4 - Add new GameplayStatics::PredictProjectilePath functions with added functionality.

	- Option to trace for collision by trace channel, object type, or both.
	- Added versions that take input and output struct parameters.
	- Output now includes location, velocity, and time for each point on the path.

Change 3134757 on 2016/09/21 by Guillaume.Abadie

	Removes all resolve operations from distortion pass and support MSAA for the forward shader.

	#review-3134758 @daniel.wright

Change 3134635 on 2016/09/21 by Jeff.Farris

	Merged from Dev-Physics-Upgrade to Odin. This is the upgrade to PhysX 3.4.

Change 3134101 on 2016/09/21 by David.Hill

	Post process CombineLUT shouldn't be per eye.
	Also disable weighted-average post process passes for bloom when filter size is set to zero.

	#review-3134102 @chris.bunner

Change 3133191 on 2016/09/20 by Guillaume.Abadie

	Normalizes material's Opacity Mask according to Opacity Mask Clip Value.

Change 3133082 on 2016/09/20 by Brian.Karis

	Static light source shapes in reflection captures will fade out when outside influence instead of going black.

Change 3132936 on 2016/09/20 by Jeff.Farris

	Fixed some engine issues with setting mass overrides.

Change 3132821 on 2016/09/20 by Guillaume.Abadie

	Adds support for MSAA on masked material using shader implemented alpha to coverage.

	#review-3130154 @daniel.wright

Change 3132522 on 2016/09/20 by Zak.Middleton

	#ue4 - Cache conversion of WalkableSlopeAngle to the cosine value in FWalkableSlopeOverride struct, when used in the override modes. Avoids computing this conversion (potentially multiple times per frame) for every character movement move and floor test.

Change 3130457 on 2016/09/19 by Daniel.Wright

	Reuse ESceneColorFormatType::HighEndWithAlpha if the format allows it - prevents two scene color textures being allocated with planar reflections with r.SceneColorFormat=4

Change 3129467 on 2016/09/16 by Zak.Middleton

	#ue4 - Improve Accuracy of final point in UGameplayStatics::PredictProjectilePath() to respect MaxSimTime. Previously the sim could have exceeded the max time if (MaxSimTime / SimFrequency) had a fractional part.

Change 3129327 on 2016/09/16 by Daniel.Wright

	Added r.NormalCurvatureToRoughnessExponent for tweaking
	NormalCurvatureToRoughness is now applied to clearcoat roughness

Change 3129324 on 2016/09/16 by Daniel.Wright

	Added r.TemporalAACurrentFrameWeight for debugging

Change 3128812 on 2016/09/16 by Daniel.Wright

	Scene captures and planar reflections force a scene color alpha channel to be used when they are capturing (does not affect the scene color format for the main views).  Fixes planar reflections with r.SceneColorFormat=3.

Change 3128811 on 2016/09/16 by Daniel.Wright

	Fixed planar reflections in forward shading.  The change to disable checkerboard SSS caused scene color alpha to be non-zero for opaque / masked pixels in forward, but there's no SSS pass run later to correct it, since this is the forward rendering path.

Change 3126195 on 2016/09/15 by Maciej.Mroz

	#jira UE-35262 Incompatible pins give generate warning, when error is necessary.

	Fixed incompatible pins validation.
	Manually merged cl#3124667 from Dev-Blueprints

Change 3126108 on 2016/09/14 by Nick.Whiting

	Added GetLaunchOption blueprint node to check if command line arguments are set
	Added -demo path for Odin, which disables pause, and changes opening flow

Change 3125819 on 2016/09/14 by Zak.Middleton

	#ue4 - Add option for accurate bounds for LineBatchComponent, on by default. Corrects attempts to focus on actors using them causing the view to zoom out to HALF_WORLD_MAX.

	Turned this off for world debug line visualizers, to avoid affecting perf for those (and they often have lines/points all over anyway).

Change 3125686 on 2016/09/14 by Zabir.Hoque

	Slimed down when and where we resolve RT particularly for forward rendering.

Change 3124174 on 2016/09/13 by Zak.Middleton

	#ue4 - Improved accuracy and performance of PredictProjectilePath(). Switched to semi-implicit Euler integration. Fixed not being able to pass in const WorldContextObjects (only an issue when used from code, BP didn't care).

Change 3124121 on 2016/09/13 by Zak.Middleton

	#odin - Integrate CL 3122728 from Dev-Editor:

	UMG - Exposing a trace channel for the WIC, defaults to Visibility.  Improving how the WIC handles the cursor moving off the widget, it now maintains the last hit location rather than 0,0 which would cause things like dragged Sliders to reset to the left.  Ideally - the WIC would know the underlying widget has capture and continue to fake collision against an imaginary plane to simulate a continuous surface.

Change 3124116 on 2016/09/13 by Zak.Middleton

	#odin - Back out revision 3 from //Odin/Main/Engine/Source/Runtime/UMG/Private/Components/WidgetInteractionComponent.cpp

Change 3123485 on 2016/09/13 by Stanley.Hayes

	Added optional trace channels to WidgetInterationComponent

Change 3123301 on 2016/09/13 by Zak.Middleton

	#ue4 - Added ENGINE_API to some functions in ULineBatchComponent that were not exported: DrawLines, DrawLine, DrawPoint, DrawSolidBox, DrawMesh.

Change 3122632 on 2016/09/13 by Maciej.Mroz

	Improved ReverseForEachLoop macro in StandardMacros

Change 3122351 on 2016/09/12 by Nick.Whiting

	Adding 90fps tracking to the FPS summary chart creation

Change 3122325 on 2016/09/12 by Wyeth.Johnson

	Needed a 5 minute breather. Updated Editor splash screen because reasons

Change 3121869 on 2016/09/12 by Zak.Middleton

	#ue4 - (Merge to Odin) Fix UGameplayStatics::SpawnEmitterAttached() using wrong scale when SnapToTarget (Keep World Scale) option is used. Improve comments for SpawnEmitterAttached().

	#jira UE-34482

	(Integrate Framework->Odin)

Change 3121407 on 2016/09/12 by Wyeth.Johnson

	Fixed shopfront for Oz, big bot WIP

Change 3121253 on 2016/09/12 by Zak.Middleton

	#ue4 - Fix CharacterMovement braking when using acceleration for paths.

	- Fixed pathfinding using friction in GetPathFollowingBrakingDistance() and using wrong formula for stopping distance. Pathfinding adjusts analog input to achieve this deceleration, so friction is never applied and should not be included here.
	- Added virtual "GetMaxBrakingDeceleration()" function to CharacterMovementComponent. Returns deceleration value set for current movement mode (ie BrakingDecelerationWalking, BrakingDecelerationFlying, etc).

Change 3121231 on 2016/09/12 by Wyeth.Johnson

	Fixed procedural Stuff, now to fix aliasing :)

[CL 3226598 by Nick Whiting in Main branch]
2016-12-08 03:26:33 -05:00
Marcus Wassmer
1eabdaf700 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3219450)
#lockdown Nick.Penwarden
#rb none

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

Change 3148067 on 2016/10/01 by Daniel.Wright

	Support for ReflectionEnvironment and light type show flags with ForwardShading

Change 3149085 on 2016/10/03 by Daniel.Wright

	Support for ReflectionEnvironment show flag in base pass reflections without any shader overhead

Change 3162206 on 2016/10/13 by Chris.Bunner

	Merging Dev-MaterialLayers to Dev-Rendering, CL 3161593:
	Material expressions; Trig, fast-trig, saturate, round, truncate, pre-skinned normal.
	Added CustomEyeTangent to material attributes.
	Resolved some hard-coded attribute typing and other minor fixes.

Change 3186067 on 2016/11/03 by Daniel.Wright

	Updated Stationary primitive tooltip to indicate that it allows the primitive to be changed, but not moved

Change 3186069 on 2016/11/03 by Daniel.Wright

	Using a weighted geometric mean to combine multiple Distance Field Indirect Shadows, greatly reduces over-occlusion when overlap is high

Change 3186084 on 2016/11/03 by Mark.Satterthwaite

	Duplicate 3172511:
	Don't set Metal resource option fields on texture descriptors when running on an OS that doesn't support them.
	#jira UE-37481

Change 3186089 on 2016/11/03 by Mark.Satterthwaite

	Duplicate CL #3169764:
	Fixed automatic conversion of G8_sRGB into RGBA8_sRGB required for Mac Metal, which fixes FORT-27627.
	#jira FORT-27627

Change 3186113 on 2016/11/03 by Mark.Satterthwaite

	Duplicate CL #3183807:
	Change the way we access the Metal viewport's backbuffer, to reduce possible causes of FORT-31649:
	- Added console variable "rhi.Metal.SupportsIntermediateBackBuffer" to control whether to use an extra render-target so we can support screenshots & movie capture, or render directly to the back-buffer to save memory & GPU performance. Still defaults to ON for Mac & OFF for iOS/tvOS.
	- Change the way we handle updates to the back-buffer size to ensure that the different threads access their intended version.
	#jira FORT-31649

Change 3186116 on 2016/11/03 by Mark.Satterthwaite

	Duplicate CL #3183823:
	Record Metal resource & state objects used in a command-buffer when rhi.Metal.RuntimeDebugLevel is set to 3 or higher. The object labels, types & descriptions will be printed on failure - if the object is deleted prior to this then we have a lifetime error and it will crash at this point and can be debugged further using our -metalretainrefs command-line option or Xcode's zombie-objects.

	Used to verify that FORT-31649 is not a simple resource lifetime error and thereby speed up Apple/vendor investigations.
	#jira FORT-31649

Change 3186818 on 2016/11/04 by Chris.Bunner

	PR #2907 Export UMaterialExpressionNoise (contributed by kayosiii).

Change 3186979 on 2016/11/04 by Rolando.Caloca

	DR - Misc minor cleanup

Change 3187169 on 2016/11/04 by Uriel.Doyon

	Incremental insertion of level data between PostLoad and AddToWorld

Change 3187205 on 2016/11/04 by Mark.Satterthwaite

	Compile fixes for iOS.

Change 3187389 on 2016/11/04 by Uriel.Doyon

	Fix for possible stall when loading hidden level

Change 3187598 on 2016/11/04 by Michael.Trepka

	MetalViewport compile fix

Change 3187678 on 2016/11/04 by Uriel.Doyon

	Fix for landscape grass textures not being streamed in correctly.

Change 3187731 on 2016/11/04 by Rolando.Caloca

	DR - Start making type safe some cross compiler enums

Change 3187824 on 2016/11/04 by Rolando.Caloca

	DR - clang compile fix

Change 3187953 on 2016/11/04 by Rolando.Caloca

	DR - vk - Mac compile fix

Change 3188696 on 2016/11/07 by Mark.Satterthwaite

	Another iOS compile fix for new MetalViewport validation code.

Change 3188906 on 2016/11/07 by Rolando.Caloca

	DR - Show permutation of LUTBlender

Change 3189094 on 2016/11/07 by Chris.Bunner

	Fix RemoveAAJitter from projection matrix.
	#jira UE-37701, UE-38003

Change 3189134 on 2016/11/07 by Daniel.Wright

	Fix for CreateRenderTarget2D called in construction script during cooking

Change 3189145 on 2016/11/07 by Chris.Bunner

	Follow-up to CL 3186818, export UMaterialExpressionVectorNoise.

Change 3189239 on 2016/11/07 by Daniel.Wright

	Added show flag for Contact Shadows, disabled in planar reflections

Change 3189252 on 2016/11/07 by Daniel.Wright

	Support for Reflection Capture intensity with simple reflections, which are the default with Forward Shading

Change 3189406 on 2016/11/07 by Mark.Satterthwaite

	Really fix the last of the iOS compile errors from changes to the MetalViewport code.

Change 3190854 on 2016/11/08 by Ben.Woodhouse

	XB1: Fix memory corruption with RHICreateVertexBuffer and RHICreateIndexBuffer when using initial data (Procedural Mesh Component crash)
	#jira UE-34264
	#fyi james.golding
	#fyi keith.judge

Change 3190962 on 2016/11/08 by Olaf.Piesche

	Unshelved from pending changelist '3176615' - Gil's fix for race condiiton with particle vertex factory reuse across different passes; potential to fix a number of issues

Change 3191959 on 2016/11/09 by Uriel.Doyon

	Removed some static primitives from the dynamic primitive handler for texture streaming.

Change 3193122 on 2016/11/10 by Chris.Bunner

	Always update non-preview material resources for use in code preview.
	#jira UE-38223

Change 3193190 on 2016/11/10 by Gil.Gribb

	UE4 - Fixed rare bug with shadow groups rendering things that have not been setup to render this frame.
	#jira UE-36379

Change 3193523 on 2016/11/10 by Uriel.Doyon

	Fixed incorrect section bounds used for texture streaming.

Change 3193962 on 2016/11/10 by Uriel.Doyon

	Added defrag of dynamic bounds used for the texture streaming. Allows to remove unused bounds over time.

Change 3193974 on 2016/11/10 by Uriel.Doyon

	New "Required Texture Resolution" view mode. Showing the ratio between the currently streamed texture resolution and the resolution wanted by the GPU.

Change 3194109 on 2016/11/10 by Uriel.Doyon

	Another patch on material bounds used for texture streaming.

Change 3194665 on 2016/11/11 by Chris.Bunner

	Duplicated behavior for inherited velocity scaling scaling to vert/surface spawned particles.

Change 3194734 on 2016/11/11 by Rolando.Caloca

	DR - vk - Simplified some texture casting

Change 3194867 on 2016/11/11 by Rolando.Caloca

	DR - vk - SM5 fixes

Change 3195176 on 2016/11/11 by Chris.Bunner

	Fixed incorrectly updated NVAPI error.

Change 3195425 on 2016/11/11 by Uriel.Doyon

	Fixed possible invalid level reference in the texture streamer

Change 3196512 on 2016/11/14 by Gil.Gribb

	Merging //UE4/Dev-Main@3196156 to Dev-Rendering (//UE4/Dev-Rendering)

Change 3196750 on 2016/11/14 by Marcus.Wassmer

	Fix ordering problem with GPU cache transitions

Change 3196815 on 2016/11/14 by Daniel.Wright

	Suppressed 'Instanced stereo rendering is not supported' warning showing up in CIS

Change 3196818 on 2016/11/14 by Daniel.Wright

	Fixed FIndirectLightingCache::UpdateCachePrimitivesInternal churning through a bunch of temporary memory

Change 3196819 on 2016/11/14 by Daniel.Wright

	Volume lighting samples are allowed outside of the importance volume if their influence affects the volume.  Fixes black indirect lighting on movable components in maps with small importance volumes.
	Volume lighting samples placed on surfaces use a radius that covers the layer height spacing, which prevents an uncovered region between layers

Change 3197243 on 2016/11/14 by Uriel.Doyon

	Async Task For Updating static component LastRender time
	#jira UE-24268

Change 3197359 on 2016/11/14 by Daniel.Wright

	Added Inscattering Texture controls to ExponentialHeightFog
	* When InscatteringColorCubemap is specified, directional light inscattering is disabled
	* Lerps betwen 1x1 mip at NonDirectionalInscatteringColorDistance to mip 0 at FullyDirectionalInscatteringColorDistance
	* Added FogCutoffDistance, so artists can prevent fog on skyboxes (requires fog to be setup matching the fog that was rendered into the sky texture so that distant mountains match)
	* Fog shader permutations based on what feature is enabled

Change 3198419 on 2016/11/15 by Chris.Bunner

	PS4 HDR: Runtime toggle (backbuffer recreation on resize matching), UI composition. Matches PC behavior and controls.
	HDR: Generalized buffer formats, cvar consistency pass, LUT for UI composition,  refactoring common functions.
	Exposed RHICreateTargetableShaderResource3D.
	Moved some (translucent) volume rendering helpers to allow access in Slate.

Change 3198822 on 2016/11/15 by Daniel.Wright

	Mac compile fix

Change 3199509 on 2016/11/15 by Uriel.Doyon

	Added support for viewmode param asset name (and note just param value).
	Used to investigate texture streamer behavior.

Change 3199578 on 2016/11/15 by Rolando.Caloca

	DR - Add some shader resource tables to SCW when running with -directcompile

Change 3199698 on 2016/11/15 by Rolando.Caloca

	DR - vk - Refactor shader & descriptor bindings

Change 3199712 on 2016/11/15 by Rolando.Caloca

	DR - vk - r.Vulkan.StripGlsl to always strip glsl at runtime to save memory per shader

Change 3199717 on 2016/11/15 by Rolando.Caloca

	DR - vk - Show hitching PSO info again

Change 3199750 on 2016/11/15 by Rolando.Caloca

	DR - SCW clang compile fixes

Change 3200353 on 2016/11/16 by Rolando.Caloca

	DR - vk - Mac fix

Change 3200358 on 2016/11/16 by Chris.Bunner

	Only allow UI composition on platforms we currently use it.

Change 3200823 on 2016/11/16 by Chris.Bunner

	Remove expression key attribute ID when not translating an attribute output to allow intended expression sharing.
	#jira UE-38699

Change 3200947 on 2016/11/16 by Mark.Satterthwaite

	Fix UE-38695 by not trying to resize the viewport on the wrong thread.
	#jira UE-38695

Change 3201069 on 2016/11/16 by Daniel.Wright

	Fog inscattering texture limited to SM4 and above, fixes ES2 compile errors

Change 3201346 on 2016/11/16 by Brian.Karis

	Temporal AA fix for correct edge gradients.

	Filtering now combined with importance sampling.
	Enabled Catmull-Rom resolve filter. Results are now slightly sharper.
	Fixed antighosting. Will yet require a dilation to be perfect.
	Optimized bicubic filtering to 5 taps instead of 9.
	Cleaned out unused code.

Change 3201369 on 2016/11/16 by Brian.Karis

	Bicubic texture sample

Change 3201522 on 2016/11/16 by Rolando.Caloca

	DR - vk - Fix static analysis issues

Change 3201878 on 2016/11/17 by Chris.Bunner

	Temporarily disable Nvapi HDR error logging.
	#jira UE-38529

Change 3202108 on 2016/11/17 by Simon.Tovey

	Assets with easy repro for flickering particles bug

Change 3202181 on 2016/11/17 by Rolando.Caloca

	DR - vk - CIS android fix

Change 3202325 on 2016/11/17 by Ben.Woodhouse

	Integrate 4.14.1 fix from 14 //UE4/Release-4.14 (@3201850)
	 Fix CreateVertexbuffer and CreateIndexBuffer memory corruption (Procedural Mesh Component crash)
	 #jira UE-34264

Change 3204394 on 2016/11/18 by Guillaume.Abadie

	PR #2808: AlphaComposite Fog Opacity fix (Contributed by moritz-wundke)

	#br Ben.Woodhouse

Change 3204428 on 2016/11/18 by Guillaume.Abadie

	Fixes a couple of issues in decals:

	* Crash in FDecalDrawingPolicyFactory::DrawMesh()
	* ActorPostion material expression
	* PixelNormalWS material expression
	* Missing renaming from DEFERRED_DECAL to DECAL_PRIMITIVE

	#jira UE-38327, UE-38158, UE-37818, UE-37350

Change 3204429 on 2016/11/18 by Uriel.Doyon

	Darker default undefined accuracy.
	Reenabled the texture streaming build in the build all.

Change 3204458 on 2016/11/18 by Chris.Bunner

	Shader truncation warnings fix.

Change 3204459 on 2016/11/18 by Chris.Bunner

	Engine 'Passthrough' material fuction fix. V4 is now actually a V4.

Change 3204460 on 2016/11/18 by Chris.Bunner

	Correctly handle some known Nvapi warnings.
	#jira UE-38529

Change 3204653 on 2016/11/18 by Marc.Olano

	Helper functions for tiled textures

	Checking in for Ryan Brucks

Change 3204863 on 2016/11/18 by Arne.Schober

	DR - Replaced ENQUEUE_UNIQUE_RENDER_COMMAND with a Debuggable template Implementation

Change 3204939 on 2016/11/18 by Arne.Schober

	DR - Make clang happy

Change 3204968 on 2016/11/18 by Arne.Schober

	DR - UE-38494 - Fixed SpeedTree Wind crash, when force deleting the Asset.

Change 3206293 on 2016/11/21 by Uriel.Doyon

	New member bHasStreamingUpdatePending in UTexture2D to delay update of global distance fields.
	Set to true when the streamer can possibly load a mip in the near future.
	#jira UE-37787

Change 3206551 on 2016/11/21 by Chris.Bunner

	Added material update context when forcing all shaders to recompile.
	#jira UE-38481

Change 3206644 on 2016/11/21 by Benjamin.Hyder

	Updating Planar Reflection example in TM-Shadermodels.

Change 3206899 on 2016/11/21 by Rolando.Caloca

	DR - vk - SM5 fixes

Change 3206900 on 2016/11/21 by Rolando.Caloca

	DR - Added missing strings for shader formats

Change 3206983 on 2016/11/21 by Rolando.Caloca

	DR - vk - Support for SV_Coverage

Change 3207237 on 2016/11/22 by Simon.Tovey

	Exporting particle module base and a couple of child classes as it's commonly requested.

	#test compiles

Change 3207241 on 2016/11/22 by Gil.Gribb

	Merging //UE4/Dev-Main@3206998 to Dev-Rendering (//UE4/Dev-Rendering)

Change 3207520 on 2016/11/22 by Ben.Woodhouse

	Cherry picked from //Fortnite/Main@3206301
	Fixed GPU hang in Zone Map view. Was an issue with RenderThread using the device context without appropriate RHIThread flushes.
	#jira FORT-31616
	#code_review keith.judge

Change 3207541 on 2016/11/22 by Ben.Woodhouse

	Cherry picked from //fortnite/Main@3207422
	* Fix UpdateTexture3D to create a staging texture of the region to update rather than the whole texture. This prevents distance fields crashing during update (allocating 18GB per frame in some cases)
	* Put UpdateTexture2D DMA support onto a cvar, disabled by default (corruption issues reported by licensees, plus not sure it's actually faster - could be slower due to reduced bandwidth; issues reported by licensees)
	* Fix UpdateTexture2D to only create a staging texture of the region to update, saving memory
	#jira UE-38609

Change 3207654 on 2016/11/22 by Chris.Bunner

	Don't flag 16-bit PNG/JPG textures as sRGB on import.
	#jira UE-30279

Change 3208434 on 2016/11/22 by Rolando.Caloca

	DR - vk - UAV transitions

Change 3208490 on 2016/11/22 by Chris.Bunner

	Break material code sharing when we detect an unresolvable loop.
	By default change IsResultMA loop detection to stop on functions as we can determine type definitively.
	Unified IsResultMA detection across switch nodes.

Change 3208860 on 2016/11/23 by Rolando.Caloca

	DR - vk - Fix some format issues

Change 3209265 on 2016/11/23 by Arne.Schober

	DR - originally unshelved from 3153924 - Made Depth and Velocity Rendering Passes to use PSO only RHI interface,
	We are now passing down two structs that collect all the necessary information for the drawing policies to construct a PSO object.
	One during construction of the Policy, which contains information abouyt the CullMode, FillMode and PrimType.
	And another during rendering that passes infomation like BlendState and DepthStencilState down to the low levelrenderer into SetSharedState.
	Performance of the static drawlist ist slightly slower (less than 0.1ms on Consoles) due to some addtional branches and copies. The branches in the FDrawingPolicyRenderState will go away as soon as everything is converted to use the PSO interface.
	Performace of the GPU is slightly better due to less context rolls (mainly CullMode sorts in differently now)

Change 3209305 on 2016/11/23 by Guillaume.Abadie

	Fix contact shadow's assemption on objects thickness

Change 3209334 on 2016/11/23 by Brian.Karis

	Fixed TAA handling of alpha. Switched the meaning of AA_ALPHA to make sense.

Change 3209903 on 2016/11/24 by Guillaume.Abadie

	Cherry picks alpha through post processing changelists 3201959, 3204143 and 3209883 from //UE4/Private-Partner-NREAL

Change 3209973 on 2016/11/24 by Ben.Woodhouse

	Fix D3D11 and 12 static analysis warnings reported by Rob Troughton of Coconut Lizard (http://coconutlizard.co.uk/blog/ue4/pvs-studio-part5/)

Change 3210023 on 2016/11/24 by Uriel.Doyon

	Fixed an issue with DropDetail when FixedFrameRate was set to a value smaller than MinDesiredFrameRate.
	#jira UE-37210

Change 3210026 on 2016/11/24 by Ben.Woodhouse

	Disable renderthread hang detection if a debugger is present, so we can debug the renderthread without crashing

Change 3210049 on 2016/11/24 by Ben.Woodhouse

	Fix mac build

Change 3210071 on 2016/11/24 by Uriel.Doyon

	Fixed an issue with masked materials and shader complexity viewmode when DBuffer Decals are enabled.
	#jira UE-37542

Change 3210374 on 2016/11/25 by Ben.Woodhouse

	* Fix issues with fast cleared dbuffer targets not being resolved when no decals are in the scene. This caused graphical corruption on XB1 and ensure failures on PS4 (with RHIThread disabled)

	* Move Decal rendertarget manager function implementations out of the header.
	#jira UE-38879

Change 3210390 on 2016/11/25 by Uriel.Doyon

	Fixed cubemap resourcesize not taking into account mipgen settings
	#jira UE-37045

Change 3210407 on 2016/11/25 by Uriel.Doyon

	"resavepackages" commandlet now supports -buildtexturestreaming that rebuilds the map texture streaming data.
	That can be used in combination with -buildlighting.

Change 3210563 on 2016/11/27 by Rolando.Caloca

	DR - vk - Integrate cached memory fixes and PF_D24 format fix
	#jira UE-39025
	PR #2974

Change 3210564 on 2016/11/27 by Rolando.Caloca

	DR - Fix for GL linker
	PR #2975
	#jira UE-39029

Change 3210592 on 2016/11/27 by Rolando.Caloca

	DR - vk - SM5 fixes

Change 3210597 on 2016/11/27 by Rolando.Caloca

	DR - vk - Prep for staging UB copies to GPU memory

Change 3210600 on 2016/11/27 by Rolando.Caloca

	DR - vk - Extract generic range code

Change 3210613 on 2016/11/27 by Rolando.Caloca

	DR - vk - Added r.Vulkan.SubmitOnDispatch

Change 3211054 on 2016/11/28 by Rolando.Caloca

	DR - vk - Missing reference

Change 3211330 on 2016/11/28 by Chris.Bunner

	Shader compile error for max texture coordinate count on skinned meshes.

Change 3211384 on 2016/11/28 by Arne.Schober

	DR - Enforce move on EnqueueRenderCommand Lambda

Change 3211431 on 2016/11/28 by Gil.Gribb

	Merging //UE4/Dev-Main@3211016 to Dev-Rendering (//UE4/Dev-Rendering)

Change 3211738 on 2016/11/28 by Gil.Gribb

	IWYU fixes after merge

Change 3212231 on 2016/11/28 by Richard.Wallis

	Fix build errors

Change 3212253 on 2016/11/28 by Richard.Wallis

	Remove MacGraphicsSwitching plugin.

	#jira UE-37640

Change 3212310 on 2016/11/28 by Rolando.Caloca

	DR - vk - Update glslang to 1.0.33.0

Change 3212446 on 2016/11/28 by Guillaume.Abadie

	Implements PreviousFrameSwitch material expression

Change 3212594 on 2016/11/28 by Arne.Schober

	DR - Fix missing include

Change 3212681 on 2016/11/29 by Rolando.Caloca

	DR - vk - Auto flush for compute shader

Change 3213000 on 2016/11/29 by Gil.Gribb

	temp fix for PF_MAX

Change 3213161 on 2016/11/29 by Ben.Woodhouse

	Integrate latest D3D12 changes from //depot/Partners/Microsoft/UE4-DX12/...@3211714

	Using:
	 - p4 integrate //depot/Partners/Microsoft/UE4-DX12/Engine/Source/Runtime/D3D12RHI/...@3211714 //UE4/Dev-Rendering/Engine/Source/Runtime/D3D12RHI/...
	 - p4 integrate //depot/Partners/Microsoft/UE4-DX12/Engine/Source/ThirdParty/Windows/DirectX/...@3211714 //UE4/Dev-Rendering/Engine/Source/ThirdParty/Windows/DirectX/...
	 - p4 integrate //depot/Partners/Microsoft/UE4-DX12/Engine/Source/Programs/UnrealBuildTool/...@3211714 //UE4/Dev-Rendering/Engine/Source/Programs/UnrealBuildTool/...

	Changes from UE4-DX12:

	*** CL 3183818 ***
	Update D3D12 RHI to 4.14:
	 - Merged changes from Epic up until 10/20/16
	 - Fixed an issue where command allocators where resetting too early. I changed to aggressive command list batching by default now that more SubmitCommandListHint calls exist in the upper engine, we don't need to worry about starving the GPU. Fewer ExecuteCommandLists calls means better performance and fewer Signals() so this change provides a GPU perf win.

	I had to fix an issue with aggressive batching where we would sometimes hold on to a command list long enough (in the pending list) but hadn't executed it yet. The command allocator was being put back in the queue of allocators during ReleaseCommandAllocator() without a syncpoint set and was thus being reset too early. I added a simple counter to the command allocator so it could track how many command lists were using it. It doesn't need to be thread safe since only one thread uses a command allocator at a time.

	I also added some stats around the # command lists and # command allocators since it would be possible to leak command allocators now if it's pending command list count isn't decremented correctly. In that case we'd keep creating new command allocators and eventually run out of memory.

	-Remove clear during allocate in the FD3D12FastConstantAllocator and FD3D12FastAllocator. The supplied resource locations are assumed to be new and thus don't need to be cleared.

	-Cleanup D3D12RHI stats. There were some unused stats as well as some missing ones.

	-Mark shader resource table uniform buffers as dirty only when the shader changes. Cleanup SetComputeShader calls and Dispatch calls to not set/unset the CS for each Dispatch.

	-Remove unused Check SRV resolved code that epic added to the D3D11 RHI and was brought over. We dont need it and we won't use this.

	-Remove "always on" cycle counters for high frequency RHI methods like RHISetShaderTexture. These should use the engine's stat macros as they are removed on TEST + SHIPPING builds. On Xbox a significant amount of CPU time is spent in things like QueryPerformanceCounter even when STATS aren't enabled. Currently 1% of an entire capture on XBOX is spent inside this call.

	I improved and cleaned up high freqency call stacks like:
	 - RHISetShaderTexture
	 - RHISetShaderResourceViewParameter
	 - RHISetShaderParameter
	 - RHISetUAVParameter

	In general I moved to use templated functions, removed unused parameters, unnecessary copies, etc.

	-Change D3D12 PIX profiling enable/disable to match Xbox and handle logic in the UEBuildWindows.cs for UBT. Also add a static assert to inform the developer when PIX profiling is requested but the engine is compiling out draw events.

	-Resources should be associated with the rendering thread's frame that it's currently recording command lists for and they shouldnt be cleaned up until those command lists have been translated to D3D12 command lists on the RHI thread AND completed executing on the GPU. This was confirmed to resolve an issue where CBV resources were being released too early.

	This work involved a couple changes:
	1) Move the "frame" fence to be incremented on the rendering thread (during RHIAdvanceFrameForGetViewportBackBuffer()) so that resources that are deleted from the rendering thread are assosicated with the correct frame count
	2) Queue up a command from the rendering thread to signal the "frame" fence. It needs to be queued to ensure that it's signaled at the correct time on the RHI thread (after that frame's command lists have been executed).

	-Disable GRHIRequiresEarlyBackBufferRenderTarget. Metal/Vulkan/Xbox11.x already do this. This is used by the Slate renderer during BeginRenderFrame and avoids a SetRenderTargets call.

	-Enable GRHISupportsMSAADepthSampleAccess (used in the Editor). This was enabled for D3D11 on SM5, but not for D3D12.

	-Delay load D3D12.dll and add root signature 1.1 support.

	-Add explicit flush calls to improve resource barrier batching instead of implict flushes inside FConditionalScopeResourceBarrier and FScopeResourceBarrier. Also update those classes with const members.

	*** CL 3183824 ***
	Fix the D3D12 RHI after integrating UE 4.14 updates:
	- Fixed a bug where we would try to get the PSO of a nullptr in SetPipelineState if we needed to reset the current PSO on the cmd list.
	- Fixed a spelling error
	- Removed the need for bForceState, we use dirty bits now

	*** CL 3183830 ***
	- GetDebugFlags RHI extension, needed by XB1 movie player.
	- Only query memory info if stats are enabled
	- Add support for the engine's new RHISubmitCommandsAndFlushGPU function
	- Update CommitPendingPipelineState to be Graphics/Compute specific and avoid the need for a IsCompute parameter.

	*** CL 3183837 ***
	Made PipelineState caches contain pointers to FD3D12PipelineState objects to avoid issues with using pointers to after Find/Add to the maps. TMap indicates that the pointer to the value associated with a key "is only valid until the next change to any key in the map." The lifetime of the PSO pointers is managed by the low level caches (graphics and compute). Added stat for the number of Pipeline State Objects.

	*** CL 3183931 ***
	Update Windows D3D12 headers and libs to RS1 release bits (10.0.14393.0)

	*** CL 3183978 ***
	Update UBT Windows build settings:
	- Change D3D12 PIX profiling enable/disable to match Xbox and handle logic in the UEBuildWindows.cs for UBT. Also add a static assert to inform the developer when PIX profiling is requested but the engine is compiling out draw events.

	-Delay load D3D12.dll and add root signature 1.1 support.

	*** CL 3184132 ***
	Fix Xbox PSO cache code where it could leak PSOs. Related to change 3183837.

	*** Changelist 3211714 ***
	Update D3D12 RHI with fixes:
	 - Check if we can reserve slots in GatherUniqueSamplerTables
	 - DirtyState more often in StateCache
	 - Remove InternalSetSamplerState. The alternate function isn't used.
	 - Allow MRTClear for arrays with holes in them
	 - Fix uninitialized descriptors. This was causing a GPU hang on Xbox. We need to set dirty bits for resources bound to slots outside of the current descriptor table's range
	 - Cleanup SetDescriptorHeap code. Move setting descriptor heap logic to the descriptor cache since it also owns things like the sampler maps. Added members to the descriptor cache to track the last heaps that were set on the command list to avoid dirtying bit unnecessarily.
	 - Resource transitions: go through Common between queues (3D <--> Compute)
	 - Fix initial state for placed resources.
	 - Merging epic

Change 3213250 on 2016/11/29 by Chris.Bunner

	GBufferHints tooltip fix.
	#jira UE-39103

Change 3213345 on 2016/11/29 by Gil.Gribb

	more IWYU fallout

Change 3213676 on 2016/11/29 by Rolando.Caloca

	DR - Fix incorrect texture getting cleared

Change 3213728 on 2016/11/29 by Rolando.Caloca

	DR - Lambda-ize

Change 3214461 on 2016/11/29 by Ben.Woodhouse

	Rollout August QFE4 XDK (required for latest DX12 changes on XB1)

Change 3215317 on 2016/11/30 by Daniel.Wright

	PS4 compile fix

Change 3216343 on 2016/11/30 by Arne.Schober

	DR - UE-39155 - after talking to Brian it occurred to us that flipping the world space normal is non sensical. And indeed the Grass was using world space normals.

Change 3216844 on 2016/12/01 by Ben.Woodhouse

	Fix for static analysis warnings after discussion with Microsoft

Change 3216916 on 2016/12/01 by Gil.Gribb

	Merging //UE4/Dev-Main@3216539 to Dev-Rendering (//UE4/Dev-Rendering)

Change 3217385 on 2016/12/01 by Arne.Schober

	DR - UE-39218, UE-39221, UE-39224  and potentially UE-39214 - The Stencil bits for Light channels and decal application were not set in the dynamic basepass

Change 3217464 on 2016/12/01 by Ben.Woodhouse

	Fix for reflection capture resize assert. The assert is only valid in cooked builds, so disable it in editor
	#jira UE-39225

Change 3217534 on 2016/12/01 by Arne.Schober

	DR - Fix Merge conflict

Change 3217581 on 2016/12/01 by Rolando.Caloca

	DR - Fix assert on debug

Change 3217741 on 2016/12/01 by Benjamin.Hyder

	Duplicate audio fix.

Change 3217890 on 2016/12/01 by Rolando.Caloca

	DR - Fix widget not rendering properly when hidden
	#jira UE-39221

Change 3218129 on 2016/12/01 by Arne.Schober

	DR - UE-39214 - Lod dither value as accidently cached accross the static draw list.

Change 3218759 on 2016/12/02 by Guillaume.Abadie

	Fixes editor compositing bug caused by alpha through post processing change 3209903

	#jira UE-39221

[CL 3219854 by Marcus Wassmer in Main branch]
2016-12-02 16:43:04 -05:00
Ben Marsh
4ba423868f Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#lockdown Nick.Penwarden
#rb none

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

Change 3209340 on 2016/11/23 by Ben.Marsh

	Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.

	Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.

	  * Every header now includes everything it needs to compile.
	        * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
	        * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
	  * Every .cpp file includes its matching .h file first.
	        * This helps validate that each header is including everything it needs to compile.
	  * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
	        * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
	        * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
	  * No engine code explicitly includes a precompiled header any more.
	        * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
	        * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.

	Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.

[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
Marcus Wassmer
f52bdcc738 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3185985)
#lockdown Nick.Penwarden
#rb none

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

Change 3170391 on 2016/10/21 by Ben.Woodhouse

	Remove the wait on end of frame ensure, because we can't rely on all the the underlying codepaths to never miss a call to flush RHI resources. The consequences of missing a flush on a given frame are not serious now, since we enforce the synchronisation with a fence, preventing the rendering thread from getting too far ahead. We will simply accumulate resources for an additional frame when this happens.

	#jira UE-37437
	#fyi rolando.caloca, marcus.wassmer

Change 3170659 on 2016/10/21 by Rolando.Caloca

	DR - vk - Prep work for state key changes

Change 3170676 on 2016/10/21 by Rolando.Caloca

	DR - vk - Reworked blend state keys
	- Added depth/stencil to pipeline key

Change 3170848 on 2016/10/21 by Daniel.Wright

	Level viewport 'show stats' option is now enabled by default, which avoids confusion with artists thinking lighting is built, when really the message is hidden.

Change 3170849 on 2016/10/21 by Daniel.Wright

	Split FProjectedShadowInfo::RenderProjection into smaller functions which make the algorithm structure clear

Change 3170995 on 2016/10/21 by Rolando.Caloca

	DR - vk - Show object on vulkan validation msgs

Change 3171085 on 2016/10/21 by Rolando.Caloca

	DR - vk - Fix pipelines being used with incompatible renderpasses

Change 3171159 on 2016/10/21 by Rolando.Caloca

	DR - vk - Fix layout when reading textures on CPU

Change 3171167 on 2016/10/21 by Rolando.Caloca

	DR - vk - compile fix

Change 3172462 on 2016/10/24 by Daniel.Wright

	Added a warning about shader compile times to the material tooltip

Change 3172463 on 2016/10/24 by Daniel.Wright

	Reduced MinUnoccludedFraction to avoid artitfacts when a stationary light touches only a tiny part of a mesh

Change 3172716 on 2016/10/24 by Brian.Karis

	Fix for crash UE-37369 when reimporting over a generated LOD.

Change 3172967 on 2016/10/24 by Rolando.Caloca

	DR - vk - Fix writing buffers while GPU was using them

Change 3174187 on 2016/10/25 by Olaf.Piesche

	UE-37020

Change 3174718 on 2016/10/26 by Rolando.Caloca

	DR - vk - Remove old timestamp queries, increase occlusion queries per pool to 4k

Change 3175960 on 2016/10/26 by Rolando.Caloca

	DR - Added support for hlslcc header to have custom parsing

Change 3176611 on 2016/10/27 by David.Hill

	DrawWireCone  confusion:

	In response to a UDN, I'm updating confusing parameter names and comments for
	DrawWireCone() and DrawWireSphereCappedCone()

Change 3177111 on 2016/10/27 by Rolando.Caloca

	DR - vk - Fix timestamps for frame

Change 3177192 on 2016/10/27 by Arne.Schober

	DR - DitherLOD refactor - moved computation of the DepthStencil state out of SetMeshRenderState into GetDitheredLODTransitionState this is a prerequisite of further PSO work where we want to move up State setting in a similar war and reuse FMeshDrawingRenderState

Change 3177278 on 2016/10/27 by Olaf.Piesche

	UE-37484

Change 3177297 on 2016/10/27 by Rolando.Caloca

	DR - vk - Enable GRHISupportsBaseVertexIndex

Change 3177607 on 2016/10/27 by Rolando.Caloca

	DR - vk - SM4 UB prep

Change 3178052 on 2016/10/28 by Arne.Schober

	DR - fix WebGL - the WebGL compiler is very picky on double underscores and does want the presission to be defined before any function definition.

Change 3178156 on 2016/10/28 by Rolando.Caloca

	DR - vk - Added query timer
	- Fixed inline issues

Change 3178158 on 2016/10/28 by Rolando.Caloca

	DR - vk - Fixes for out of stencil bits

Change 3178462 on 2016/10/28 by Rolando.Caloca

	DR - vk - Fixes for Elemental

Change 3179131 on 2016/10/28 by Rolando.Caloca

	DR - vk - Fix for r.Vulkan.UseRealUBs

Change 3179139 on 2016/10/28 by Rolando.Caloca

	DR - vk - Move UB ring buffer to context

Change 3179145 on 2016/10/28 by Rolando.Caloca

	DR - vk - Fix buffer barriers

Change 3179888 on 2016/10/31 by Rolando.Caloca

	DR - vk - Align buffers to 16 bytes as we sometimes write to them with SIMD

Change 3179923 on 2016/10/31 by Rolando.Caloca

	DR - vk - Wait for swapchain counter

Change 3180430 on 2016/10/31 by Rolando.Caloca

	DR - vk - Properly wait for occlusion queries/cmd buffer
	- Actual log error if trying to use occlusion queries out of order

Change 3180746 on 2016/10/31 by Rolando.Caloca

	DR - vk - Undo some waiting as it was on the wrong thread

Change 3182115 on 2016/11/01 by Rolando.Caloca

	DR - hlslcc Linux path fix

Change 3182118 on 2016/11/01 by Daniel.Wright

	Fixed global distance field seam artifacts from landscapes with no subsections

Change 3182368 on 2016/11/01 by Daniel.Wright

	Dynamic Indirect Shadows for static meshes using distance fields
	* These Distance Field indirect shadows use the same tile culled and downsampled framework that capsule shadows use, with similar GPU cost
	* Individual StaticMesh assets can enable bGenerateMeshDistanceField to compute a distance field, without the memory cost of enabling for the whole project
	* New StaticMeshComponent properties bCastDynamicIndirectShadow and DynamicIndirectShadowMinVisibility
	* New WorldSettings property DynamicIndirectShadowsSelfShadowingIntensity which replaces the cvar
	* The GBuffer now stores HasDynamicIndirectShadowCasterRepresentation instead of HasHeightfieldRepresentation
	* DFAO from landscape is now done through the global distance field entirely.  Landscape contribution to the global distance field is deferred to attempt to workaround texture streaming issues.

Change 3182408 on 2016/11/01 by Rolando.Caloca

	DR - vk - Reworked occlusion queries, fixes flickering on AMD

Change 3182585 on 2016/11/01 by Daniel.Wright

	PS4 compile fix

Change 3183151 on 2016/11/02 by Rolando.Caloca

	DR - vk - Fix issue when processing super quick cmd buffers

Change 3183160 on 2016/11/02 by Rolando.Caloca

	Dr - vk - Call reset queries outside render pass

Change 3183182 on 2016/11/02 by Rolando.Caloca

	DR - Switch clear

Change 3183194 on 2016/11/02 by Rolando.Caloca

	DR - Try to catch crash ahead of time

Change 3183268 on 2016/11/02 by Rolando.Caloca

	DR - vk - Rename RenderPassState to TransitionState

Change 3183440 on 2016/11/02 by Daniel.Wright

	Renamed 'Dynamic Indirect Shadow' to 'Distance Field Indirect Shadow'

Change 3183793 on 2016/11/02 by Daniel.Wright

	Added ShadowResolutionScale to lightcomponent

Change 3183796 on 2016/11/02 by Daniel.Wright

	Improved bSimulatePhysics comment, with info on why it might be greyed out

Change 3183797 on 2016/11/02 by Daniel.Wright

	Precomputed shadowmaps no longer enable Force2To1Aspect, which is only needed for lightmaps.  Improves shadowmap utilization.

Change 3183915 on 2016/11/02 by Rolando.Caloca

	DR - vk - Remove redundant renderpasses

Change 3183991 on 2016/11/02 by Daniel.Wright

	Added r.ReflectionEnvironmentLightmapMixLargestWeight, useful for restricting lightmap mixing to darkening only

Change 3184001 on 2016/11/02 by Daniel.Wright

	Better draw event for IndirectCapsuleShadows in stereo

Change 3184096 on 2016/11/02 by Chris.Bunner

	HDR for D3D11 - NVAPI toggle and encoding, UI compositing.
	Removed some outdated tonemamping cvars and modes.

Change 3184399 on 2016/11/02 by Daniel.Wright

	Static analysis workaround

Change 3184455 on 2016/11/02 by Mark.Satterthwaite

	Fix missing log10 from FCompositePS on hlslcc shader platforms so that QA can continue their integration.
	#jira UE-38164

Change 3184953 on 2016/11/03 by Chris.Bunner

	Fixing CIS warnings.

[CL 3186011 by Marcus Wassmer in Main branch]
2016-11-03 16:55:27 -04:00
Marcus Wassmer
fb641b18e9 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3169859)
#lockdown Nick.Penwarden
#rb none

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

Change 3134663 on 2016/09/21 by Chris.Bunner

	Merging Dev-MaterialLayers to Dev-Rendering, CL 3134208. Initial material attribute extensibility changes.
	#jira UE-34347

Change 3142292 on 2016/09/27 by Rolando.Caloca

	DR - hlslcc - Fix for warning X3206: implicit truncation of vector type causing error
	#jira UE-31438

Change 3143557 on 2016/09/28 by Rolando.Caloca

	DR - Back out changelist 3142292

Change 3145354 on 2016/09/29 by Benjamin.Hyder

	Updating Tm-ContactShadows

Change 3154832 on 2016/10/07 by Rolando.Caloca

	DR - vk - Fix crash on framebuffers with missing textures

Change 3154838 on 2016/10/07 by Rolando.Caloca

	DR - vk - Enable clip distance

Change 3154840 on 2016/10/07 by Rolando.Caloca

	DR - Remove branch per codereview

Change 3155118 on 2016/10/07 by Rolando.Caloca

	DR - vk - Compute pipeline fixes

Change 3155129 on 2016/10/07 by Rolando.Caloca

	DR - Added draw events for reflection captures

Change 3155167 on 2016/10/07 by Rolando.Caloca

	DR - Use shader clear for platforms that can't use viewport or scissor

Change 3155168 on 2016/10/07 by Rolando.Caloca

	DR - vk - Added submit gpu
	- Some fixes for Geometry and Compute

Change 3155595 on 2016/10/07 by Rolando.Caloca

	DR - vk - Use new render pass system

Change 3155720 on 2016/10/07 by Rolando.Caloca

	DR - vk - static analysis fix

Change 3155732 on 2016/10/07 by Rolando.Caloca

	DR - Fix clears for platforms that can't use viewports, excluderects or scissor on clear

Change 3156787 on 2016/10/10 by Rolando.Caloca

	DR - Fix mem leaks

Change 3156805 on 2016/10/10 by Rolando.Caloca

	DR - Improve check msg per licensee

Change 3156815 on 2016/10/10 by Rolando.Caloca

	DR - Fix infinite recursion

Change 3157041 on 2016/10/10 by Rolando.Caloca

	DR - vk - Fix key access from multiple threads

Change 3158253 on 2016/10/11 by Rolando.Caloca

	DR - Fix comment
	#jira UE-37128
	PR #2852

Change 3158606 on 2016/10/11 by Rolando.Caloca

	DR - vk - Accessors

Change 3160418 on 2016/10/12 by Daniel.Wright

	Lightmap textures are now outered to UMapBuildDataRegistry so that the UMapBuildDataRegistry can be moved in the content browser

Change 3160644 on 2016/10/12 by Arne.Schober

	DR - [UE-32613] - OpenGL used to have custom code in the compiler to modify the source so that the same data and matricies can be used as DirectX, unfortunately that causes precission problem. Fortunately there is an extension available (glClipControl) which enables DirectX behaviour in OpenGL and it is widely supported. We only tested Linux and Windows and therfore only default enable on those platforms.

Change 3161219 on 2016/10/13 by Luke.Thatcher

	[RENDERING] [!] Fix incorrect shader used in GPU Benchmark causing crash in OpenGL.

Change 3161838 on 2016/10/13 by Daniel.Wright

	Fixed level getting added to the dirty list twice when legacy lightmaps are present

Change 3161884 on 2016/10/13 by Arne.Schober

	DR - Fix Mac and DCC build

Change 3162206 on 2016/10/13 by Chris.Bunner

	Merging Dev-MaterialLayers to Dev-Rendering, CL 3161593:
	Material expressions; Trig, fast-trig, saturate, round, truncate, pre-skinned normal.
	Added CustomEyeTangent to material attributes.
	Resolved some hard-coded attribute typing and other minor fixes.

Change 3162491 on 2016/10/13 by Chris.Bunner

	Merging Dev-MaterialLayers to Dev-Rendering, CL 3162397:
	More fixed type-casting on material attributes.
	Swapped compiler::forcecast booleans to flags (and fixed a regression).

Change 3163266 on 2016/10/14 by Daniel.Wright

	Fixed sublevels with legacy lighting data being added to the dirty packages list redundantly

Change 3163524 on 2016/10/14 by Mark.Satterthwaite

	Bring over specific changes from Unicorn branch that increases the size of shader optional data so that it is considerably more useful.

Change 3163529 on 2016/10/14 by Mark.Satterthwaite

	Move the Metal shader source code and compilation path into the newly enlarged shader optional data.

Change 3163553 on 2016/10/14 by Mark.Satterthwaite

	Speculative fix for FORT-31590 also seen by a licensee - the Metal command buffer handler will be called from a dispatch queue thread that won't be registered with the stats system.
	#jira FORT-31590

Change 3163562 on 2016/10/14 by Mark.Satterthwaite

	Tidy up and extend the Metal debugging options:
	- Added rhi.Metal.BufferScribble which when enabled will fill freed buffer regions with 0xCD to help identify any areas where we are writing to a buffer while it is still being processed on the GPU.
	- Added rhi.Metal.BufferZeroFill which will zero-fill newly allocated buffer regions before any other data is read/written. Useful for catching cases where we might be reading uninitialised memory.
	- Added rhi.Metal.ResourcePurgeOnDelete which will purge the backing store of resources prior to releasing them back to the system or the respective pool. This will make any use-after-free conditions much more likely.
	- Added rhi.Metal.ResourceDeferDeleteNumFrames to defer releasing resources to the system or the resource pool by the specified number of frames (in addition to the current policy of waiting for the current end of frame & command-buffer completion). Useful for tracking down resource lifetime errors.
	- Fixed a number of bugs related to the modifications to vertex stream handling and addition of the SetShaderBytes API.
	- Track the start & end of FRingBuffer ranges - it appeared that the ring-buffer usage was invalid but it was in fact only my assumptions about the range that needed to be scribbled for rhi.Metal.BufferScribble. There is still the possibility that command-buffers that are implicitly parallelised by the driver may cause the ring-buffer range tracking to go awry - but with our data dependencies and the separation of the async. compute context I don't believe this is likely.
	- Fix up the "nometalv2" flag so that we can disable the features only available on iOS/tvOS-10/macOS-10.12 on newer devices to save having to reboot all the time.
	- Fixed the flickering geometry when enabling rhi.Metal.RuntimeDebugLevel=4 which breaks render passes into separate command-buffers - the occlusion query was waiting on the wrong command buffer in this case.

Change 3163752 on 2016/10/14 by Mark.Satterthwaite

	Add missing parenthesis to fix compile error on iOS.

Change 3164151 on 2016/10/16 by Benjamin.Hyder

	Submitting TM-AutoLOD level to QAGame

	#jira UE-29618

Change 3164190 on 2016/10/16 by Uriel.Doyon

	Materials now hold texture streaming data in the form of (UV scale X UV channel) for each texture.
	This data can be disabled through "r.Streaming.UseMaterialData"
	Defined a common framework in MeshComponent for texture streaming, used by both StaticMeshes and SkeletalMeshes.
	Simplified component interface for using the texture streaming build framework.
	Removed intermediate texture streaming build data from the static mesh components.
	Fixed shader compilation errors with the decals (from merge with main).

Change 3164636 on 2016/10/17 by Rolando.Caloca

	DR - vk - Fix validation spam

Change 3164679 on 2016/10/17 by Arne.Schober

	DR - [OR-28457] Part1, Scene View Refactoring - Removed Previous VewMatrices from SceneInfo and pass in Previous and Current ViewMatrices into Uniform Buffer creation to uniform UseCase for Shadows and CustomDepth, Fixed a Bug in Shadows with help of Daniel where the SceneView was copied unnecessary copied again. Also simplified the code in that area.

Change 3164705 on 2016/10/17 by Daniel.Wright

	When new levels are loaded, only the Indirect Lighting Cache Allocations intersecting the level's light probes are updated to minimize hitches.  This optimization requires a lighting build to compute PrecomputedLightVolume bounds.

Change 3164834 on 2016/10/17 by Daniel.Wright

	Support directional light dynamic shadows in any channel with forward shading, which can happen with multiple shadow casting stationary directional lights (even though only the lighting of one will appear)

Change 3164870 on 2016/10/17 by Arne.Schober

	DR - [OR-28457] Part2, Custom Depth Jitter - Allowed to overwite the viewconstant buffer in the custom depth pass. There ia also a new Project Setting available. The default constructor of the ContextDataType has been explicitly deleted to enforce compile errors when the templated code like the StaticMeshDrawList accidently tries to create a context without ViewUniformBuffer.

Change 3164949 on 2016/10/17 by Rolando.Caloca

	DR - vk - First version of pooled occlusion queries

Change 3165100 on 2016/10/17 by Rolando.Caloca

	DR - vk - Added driver version for Nvidia. AMD doesn't have one yet.

Change 3165160 on 2016/10/17 by Rolando.Caloca

	DR - vk - Fix for queries not ready

Change 3165230 on 2016/10/17 by Rolando.Caloca

	DR - vk - More fixes for occlusion queries

Change 3165839 on 2016/10/18 by Rolando.Caloca

	DR - hlslcc - Fix default parameters getting wrong values

Change 3166029 on 2016/10/18 by Rolando.Caloca

	DR - Switch some clears to DrawClearQuad()

Change 3166066 on 2016/10/18 by Mark.Satterthwaite

	Update ShaderVersion due to CL #3163524

Change 3166067 on 2016/10/18 by Mark.Satterthwaite

	Update Mac hlslcc for RCO's 3165839.

Change 3166370 on 2016/10/18 by Brian.Karis

	Improved hair AA

Change 3166389 on 2016/10/18 by Uriel.Doyon

	Fixed lightmap having bigger resolutions than the engine can handle
	#jira UE-34737
	#review-3166193 @daniel.wright

Change 3166495 on 2016/10/18 by Rolando.Caloca

	DR - vk - Fix occlusion queries

Change 3166516 on 2016/10/18 by Arne.Schober

	DR - Fix shaderbuild issue

Change 3166650 on 2016/10/18 by Rolando.Caloca

	DR - vk - Enable GRHISupportsFirstInstance

Change 3166799 on 2016/10/18 by Arne.Schober

	DR - [OR-28508] - The velocity Rendering pass was missing the adjustment for the PDO

Change 3167855 on 2016/10/19 by Rolando.Caloca

	DR - vk - Implemented texture streaming

Change 3168365 on 2016/10/19 by Rolando.Caloca

	DR - Fix static analysis

Change 3168405 on 2016/10/19 by Mark.Satterthwaite

	Fix the optional shader data changes from Unicorn to prevent FindOptionalData from erronesouly testing against the trailing optional data size, which can match the tag for optional data entries if you are unlucky.
	#jira UE-37489

Change 3169467 on 2016/10/20 by Arne.Schober

	DR - UE-28039 - Fixed flickering cached shadows on dynamic objects: Adding preshadows whose depths are cached so that GatherDynamicMeshElements will still happen, which is necessary for preshadow receiver stenciling.

Change 3169478 on 2016/10/20 by Arne.Schober

	DR - UE-28039 - missing comment

Change 3169845 on 2016/10/20 by Arne.Schober

	DR - UE-35937 - readd Merged out check

Change 3169859 on 2016/10/20 by Rolando.Caloca

	DR - vk - Stop popping up dialog on every run as the device name in the API doesn't match our driver database

[CL 3170066 by Marcus Wassmer in Main branch]
2016-10-20 20:09:22 -04:00
Gil Gribb
ab5d7150f4 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3154632)
#lockdown Nick.Penwarden
#rb none

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

Change 3122543 on 2016/09/13 by Ben.Woodhouse

	Override HasOcclusion for Widget3DComponentProxy to detect if the material is has depth testing enabled.

	#jira UE-35878

Change 3122544 on 2016/09/13 by Ben.Woodhouse

	Shadow stencil optimisation with cvar (enabled by default)

	Avoids redundant clearing the stencil buffer for per-object and pre shadows by zeroing the stencil during testing, following discussion on UDN.

	This means we don't benefit from Hi Stencil on GCN for the shadow projection draw calls, but it's still faster in all the cases I could find, including for the player character where the bounding box is quite large. (Note: early stencil still works fine, according to PIX)

	Shadow projection GPU time profiling :
	Test map with 35 characters, stationary directional light
	  - 4ms-2ms on XB1
	  - 2.5ms to 0.9ms on PC (r9-390X)
	  - 3ms-2ms on PS4

	Paragon PS4 (roughly 20% reduced - from ~0.39ms)

Change 3122687 on 2016/09/13 by Rolando.Caloca

	DR - vk - Fix ES31 crash

Change 3122691 on 2016/09/13 by Rolando.Caloca

	DR - vk - Fixes for SDK 1.0.26.0

Change 3122778 on 2016/09/13 by Rolando.Caloca

	DR - vk - Fix number of layers on barrier

Change 3122921 on 2016/09/13 by Rolando.Caloca

	DR - vk - Fix ES3.1

Change 3122925 on 2016/09/13 by Ben.Woodhouse

	Fix sky lighting issue with skin and re-enable non-checkerboard lighting by default (fallout from lightaccumulator refactor)
	#jira UE-35904

Change 3123016 on 2016/09/13 by Chris.Bunner

	Fixed adaptive tessellation, broken by CL 3089208 refactor.
	#jira UE-35341

Change 3123079 on 2016/09/13 by Rolando.Caloca

	DR - vk - Force StoreOp store instead of DontCare everywhere (temporarily)

Change 3123503 on 2016/09/13 by David.Hill

	#jira UE-25623
	converted a check() to checkf() to include better diagnostic information.

Change 3123617 on 2016/09/13 by Guillaume.Abadie

	Fixes artifact when the camera direction is almost parallel to a wide plane with SSR.

	#jira UE-35128

Change 3123743 on 2016/09/13 by Brian.Karis

	Separate mesh reduction interfaces for static and skeletal.

	Zero bad tangents from input mesh.

Change 3125378 on 2016/09/14 by Arne.Schober

	DR - [UE-34481] - Extract all the State which is necessary to execute the DebugTextDrawingDelegate from the SceneProxy into its own Helpers to be drawn to the canvas later on. The issue was that the SceneProxys are only owned by the RT after their creation and the GT should avoid reading from or writing state to them.

Change 3125527 on 2016/09/14 by Arne.Schober

	DR - [UE-34481] - Fix UT build and mac

Change 3125741 on 2016/09/14 by Rolando.Caloca

	DR - Extra debug mode for tracking down SCW crashes (r.DumpSCWQueuedJobs=1)

Change 3125763 on 2016/09/14 by Rolando.Caloca

	DR - vk - Added new Renderpass cache
	- Fix buffer barrier warning

Change 3125769 on 2016/09/14 by Rolando.Caloca

	DR - Renamed cvar to r.DumpSCWQueuedJobs

Change 3125771 on 2016/09/14 by Rolando.Caloca

	DR - Added support for SV_ClipDistance on GL3 & 4

Change 3125792 on 2016/09/14 by Arne.Schober

	DR - [UE-34481] - Fix Odin and PS4

Change 3125880 on 2016/09/14 by Arne.Schober

	DR - [UE-34481] - Fix Fortnite

Change 3125968 on 2016/09/14 by Brian.Karis

	Removed comment

Change 3126315 on 2016/09/15 by Ben.Woodhouse

	GPU profiler robustness
	-  Change stat gathering update to handle multiple views and non-scenerenderer stats (such Slate) properly
	- Simplify gathering logic
	- Fix race condition where we could read back queries before they're submitted on the RHI thread.
	- Fix for movie player stat gathering - disable gathering outside of the main engine tick
	#jira UE-35975

Change 3126792 on 2016/09/15 by Rolando.Caloca

	DR - vk - Release render pass cache

Change 3126804 on 2016/09/15 by Rolando.Caloca

	DR - vk - Fix UpdateTexture2D()
	#jira UE-34151

Change 3126884 on 2016/09/15 by Rolando.Caloca

	DR - vk - Compile fix

Change 3126953 on 2016/09/15 by Rolando.Caloca

	DR - Enable GPU capture when running OpenGL under RenderDoc
	- Will also set the memory mode to non coherent so not to kill performance on RenderDoc

Change 3126966 on 2016/09/15 by Rolando.Caloca

	DR - Allow cooking for Vulkan SM4 to help with packaging

Change 3127082 on 2016/09/15 by Guillaume.Abadie

	Wraps up contact shadows for release fixing different artifacts and handling correctly their screen space length.

	#jira UE-35367, UE-33602, UE-33603, UE-33604
	#review-3125887 @brian.karis

Change 3127130 on 2016/09/15 by Mark.Satterthwaite

	Add overloads to as* functions in hlslcc - HLSL allows you to call these on variables of the same type, in which case it simply returns the existing value but we had only defined the float<->u/int conversions, so hlslcc added implicit casts that broke such cases (i.e. asuint(uint) -> floatBitsToUint(float(uint))). This change defines the missing overloads as returns with regular casts.
	#jira FORT-25869
	#jira UE-34263

Change 3127475 on 2016/09/15 by Rolando.Caloca

	DR - vk - Debug dump

Change 3128131 on 2016/09/16 by Ben.Woodhouse

	(Integrated from //UE4/Private-Partner-NREAL/...)

	Alpha output support for postprocess materials (optional via a parameter)

	Needed for end of frame compositing. Could be used to pass intermediate data from one blendable postprocess to another (e.g edge detection)

Change 3128135 on 2016/09/16 by Ben.Woodhouse

	GPU profiler (PS4) - remove bubbles between commandlist submissions from query times

	Use r.ps4.AdjustRenderQueryTimestamps cvar to enable/disable (defaults to on)

	Also fixes some potential precision issues with unit GPU timing

Change 3128247 on 2016/09/16 by Rolando.Caloca

	DR - vk - Cache framebuffers

Change 3128593 on 2016/09/16 by Rolando.Caloca

	DR - vk - Fix for crash loading map
	#jira UE-36072

Change 3128759 on 2016/09/16 by Mark.Satterthwaite

	Back out changelist 3127130 - its causing a build failure in FPostProcessVelocityScatterVS because hlslcc is picking the wrong as_* overload.

Change 3130236 on 2016/09/19 by Chris.Bunner

	Exposed full SceneCaptureComponent classes instead of select methods.
	#jira UE-35996

Change 3130388 on 2016/09/19 by Rolando.Caloca

	DR - Avoid crash when adding dynamic primitives
	#jira UE-35327

Change 3130393 on 2016/09/19 by Marc.Olano

	Improve vector noise tooltips & documentation

Change 3130547 on 2016/09/19 by Ben.Woodhouse

	Fix for ensure fail when initializing point light shadowmaps.

	This came about because cubemap rendertargets always have Extents of (Resolution, 0). The Y component was implicitly used to determine if it was a cubemap, which is odd... The fix was to make the definition explicit via a flag and initialize both the X and Y parameters.

	I suspect the ensure started happening recently due to a more recent change, but fixing the underlying logic seems like the correct fix.
	#jira UE-35837

Change 3130578 on 2016/09/19 by Daniel.Wright

	Workaround OpenGL/NVidia bug with non-power-of-2 textures by disabling CSM atlassing if we're using OpenGL

Change 3130682 on 2016/09/19 by Rolando.Caloca

	DR - Better fix for UE-35327
	#jira UE-35327

Change 3130767 on 2016/09/19 by Uriel.Doyon

	Better handling of color array in VisualizeComplexity code to prevent assert.
	#jira UE-29332

Change 3130965 on 2016/09/19 by Arne.Schober

	DR - [UE-35679] - the crash was caused by the Resource of the UTexture being Null. And one of the Kismet Nodes calling a function on that resource. The solution was to disable that call from Kismet when only cooking.

Change 3130967 on 2016/09/19 by Chris.Bunner

	Hid redundant texture sampler properties from texture object parameter.
	Hid redundant texture property input on texture parameter nodes.
	Fixed copy-paste error in expression texture parameter docs.
	#jira UE-32724

Change 3131118 on 2016/09/19 by Mark.Satterthwaite

	Second attempt - this time with the correct input types. Add overloads to as* functions in hlslcc - HLSL allows you to call these on variables of the same type, in which case it simply returns the existing value but we had only defined the float<->u/int conversions, so hlslcc added implicit casts that broke such cases (i.e. asuint(uint) -> floatBitsToUint(float(uint))). This change defines the missing overloads as returns with regular casts.
	#jira FORT-25869
	#jira UE-34263

Change 3131153 on 2016/09/19 by Rolando.Caloca

	DR - Fix recompute normals when triangles have a LHS tangent basis

	Integrate from 3028634
	- Also make meshes that don't have morphs be able to run through the recompute normals path
	#jira UE-35472

Change 3131228 on 2016/09/19 by Mark.Satterthwaite

	Duplicate CL #3114668: Always disable asynchronous shader compilation for the global shader map on Metal as some of them are needed very early.
	#jira UE-35240

Change 3131246 on 2016/09/19 by Rolando.Caloca

	DR - Shrink gpu skinning permutations

Change 3131261 on 2016/09/19 by Mark.Satterthwaite

	Fix Metal validation failures due to particle rendering not binding buffers to all buffer inputs declared in the shader.
	ContentExamples Effects no longer aborts complaining that the particle system didn't bind a required buffer.

Change 3131265 on 2016/09/19 by Mark.Satterthwaite

	Fix FMetalDynamicRHI::RHIReadSurfaceData for shared textures on iOS.

Change 3131271 on 2016/09/19 by Mark.Satterthwaite

	Use private memory for the Metal stencil SRV workaround needed on El Capitan.

Change 3131273 on 2016/09/19 by Mark.Satterthwaite

	Disable the lazy-encoder construction in Metal for AMD - there is a situation that causes the lazy construction to perform a clear that isn't wanted and so far this hasn't been tracked down and fixed. Until then, this will render correctly.

Change 3131280 on 2016/09/19 by Mark.Satterthwaite

	For GLSL interpolation mode flags must come before storage mode flags and you can't redeclare the system variable gl_Layer to use a differing interpolation mode.

Change 3131283 on 2016/09/19 by Mark.Satterthwaite

	Change the ShaderCache to not cache resource bindings in the draw states for shader platforms that don't care - reduces the number of draw states considered significantly without reducing effectiveness. We can support ShaderCache with Metal SM5 but not the RHI thread enabled so change when we enable it and make sure we load the binary shader cache.

Change 3131402 on 2016/09/19 by Rolando.Caloca

	DR - Disambiguate callstack
	#jira UE-34415

Change 3131469 on 2016/09/19 by Rolando.Caloca

	DR - vk - Check if we can allocate descriptors off a pool

Change 3131482 on 2016/09/19 by Rolando.Caloca

	DR - vk - Remove unused var

Change 3131506 on 2016/09/19 by Mark.Satterthwaite

	With permission from Josh.A & Michael.T, deprecate Mac OpenGL support. For now this just means visibly warning users with message boxes - but in a future release OpenGL support will be removed from macOS.

Change 3131536 on 2016/09/19 by Rolando.Caloca

	DR - vk - Compile fix

Change 3131564 on 2016/09/19 by Rolando.Caloca

	DR - vk - Submit Hint
	- Disable framebuffer recycling as its causing a hang

Change 3131625 on 2016/09/19 by Mark.Satterthwaite

	Inside MetalRHI add an optional cache for disposed texture objects so we may reuse them - controlled by CVAR rhi.Metal.TextureCacheMode which must be set prior to running as it can't be changed at runtime. Settings: 0 = off, 1 (default) = will attempt to reuse private memory texture objects within the frame they are released otherwise they are disposed of as before. Setting 2 extends the caching to all textures - though Managed/Shared textures cannot be reused until after the frame in which they were released has been processed on the GPU. In this mode id<MTLTexture> objects are never returned to the OS so in order to conserve VRAM calls to setPurgeableState are made to allow the driver to reclaim unusued memory if required.

Change 3131630 on 2016/09/19 by Mark.Satterthwaite

	More statistics in Metal added to track down where performance was going in a particular project but which may be more generally useful.

Change 3131955 on 2016/09/20 by Gil.Gribb

	Merging //UE4/Dev-Main@3129758 to Dev-Rendering (//UE4/Dev-Rendering)

Change 3131978 on 2016/09/20 by Gil.Gribb

	CIS fix

Change 3132584 on 2016/09/20 by Ben.Woodhouse

	Add some additional checks to help track down a rare crash with terrain rendering and shader recompiling

	#jira UE-35937

Change 3132696 on 2016/09/20 by Mark.Satterthwaite

	Use set*Bytes to handle uploading buffers < 4Kb when available - this is faster than lots of small Metal buffers and reduces the amount of GPU heap fragmentation. Where the API feature isn't available or hasn't been tested yet we'll use another ring-buffer inside the MetalCommandEncoder to emulate it.

Change 3132772 on 2016/09/20 by Mark.Satterthwaite

	Rework Metal's handling of RHISetStreamSource calls that override the stride of vertex declarations to be much more efficient.

Change 3132870 on 2016/09/20 by Ben.Woodhouse

	Fix mac compile error

Change 3133049 on 2016/09/20 by Brian.Karis

	Changed light source shapes in reflection captures to use alpha

Change 3133057 on 2016/09/20 by Brian.Karis

	Alphaed out on spot light cone as well.

Change 3133263 on 2016/09/20 by Rolando.Caloca

	DR - vk - Debug names for objects

Change 3133292 on 2016/09/20 by Rolando.Caloca

	DR - vk - Fix SRGB upload/formats

Change 3133395 on 2016/09/20 by Rolando.Caloca

	DR - vk - SM5 fixes

Change 3134026 on 2016/09/21 by Gil.Gribb

	Merging //UE4/Dev-Main@3133983 to Dev-Rendering (//UE4/Dev-Rendering)

Change 3134663 on 2016/09/21 by Chris.Bunner

	Merging Dev-MaterialLayers to Dev-Rendering, CL 3134208. Initial material attribute extensibility changes.
	#jira UE-34347

Change 3134730 on 2016/09/21 by Arne.Schober

	DR - [UE-34481] - Fix minor brokenness found by Gil

Change 3134792 on 2016/09/21 by Chris.Bunner

	Fixed compile errors for non-editor builds.

Change 3135214 on 2016/09/21 by Rolando.Caloca

	DR - vk - Fix visualize texture
	- Dump memory when OOM (to track leaks)

Change 3135225 on 2016/09/21 by Rolando.Caloca

	DR - vk - Ensure on exit if mem leak
	- Update fences if running wait for idle

Change 3135672 on 2016/09/22 by Gil.Gribb

	Merging //UE4/Dev-Main@3135568 to Dev-Rendering (//UE4/Dev-Rendering)

Change 3135793 on 2016/09/22 by Rolando.Caloca

	DR - vk - Set dynamic state after binding pipeline or on a fresh cmd buffer

Change 3135816 on 2016/09/22 by Rolando.Caloca

	DR - Add names for d3d on renderdoc

Change 3135894 on 2016/09/22 by Chris.Bunner

	Fixed initialization order warning.

Change 3136024 on 2016/09/22 by Rolando.Caloca

	DR - vk - Fix stencil faces

Change 3136042 on 2016/09/22 by Marcus.Wassmer

	Fix compile error

Change 3136046 on 2016/09/22 by Chris.Bunner

	Renamed material for PostTonemapHDRColor visualization to reflect actual usage.

Change 3136308 on 2016/09/22 by Uriel.Doyon

	Changed how the component relative rotation is computed, in order to have more consistency after blueprint rescript.
	#jira UE-36094

Change 3136798 on 2016/09/22 by Chris.Bunner

	Gather object references from stereo view state in USceneCaptureComponent. This matches behavior of other classes such as ULocalPlayer.

Change 3137092 on 2016/09/22 by Rolando.Caloca

	DR - vk - Rename pipeline to gfx pipeline

Change 3137263 on 2016/09/22 by Mark.Satterthwaite

	Duplicate CL #3135157:
	Fix one cause of Metal crashes loading into a zone - the PlanarReflection shader code needs to always set the IsStereoParameter so that the shader can perform the if-test without causing an invalid GPU access.
	#jira FORT-30061

Change 3137265 on 2016/09/22 by Mark.Satterthwaite

	Duplicate CL #3135169:
	Correct Metal texture creation for AVF media framework - we can't provide a render-targetable version of the texture without blitting. The native texture we get is a GPU copy that can be made CPU accessible (i.e. it is not tiled).

Change 3137266 on 2016/09/22 by Mark.Satterthwaite

	Duplicate CL #3135237:
	Metal validation layer fix: under Metal if there are no reads from the vertex stage-in buffers we should use the Empty vertex declaration, not the filter declaration, otherwise we have to bind a redundant vertex stream buffer to silence the validation layer.

Change 3137268 on 2016/09/22 by Mark.Satterthwaite

	Duplicate CL #3136033:
	To fix the Fortnite login screen force Nvidia Macs to use the set*Bytes API for small buffer updates even on El Capitan. We can't do this globally as Intel didn't implement these functions until macOS Sierra.
	Fix GPU selection code in MetalRHI to confirm everything is working.
	#jira FORT-30385

Change 3137269 on 2016/09/22 by Mark.Satterthwaite

	Duplicate CL #3137164:
	Add stats to track exactly how many command buffers are allocated and committed each frame to work out why Fortnite on AMD is hanging, which turns out to be because each texture update/reallocation ends up in its own command-buffer. This needs to be rethought to pack these into fewer command buffers with the same synchronisation requirements to minimise command-buffer splits but for now we'll just make the default sufficiently large that we shouldn't see the hang until the work is done. Also ensure that command-buffer failure is always fatal - there is no way to recover or continue if a command-buffer fails.
	#jira FORT-30377

Change 3137606 on 2016/09/23 by Gil.Gribb

	Merging //UE4/Dev-Main@3137560 to Dev-Rendering (//UE4/Dev-Rendering)

Change 3137936 on 2016/09/23 by Rolando.Caloca

	DR - Split RHICmdList clear into color & ds in prep for changes

Change 3138346 on 2016/09/23 by Rolando.Caloca

	DR - vk - Some renaming and splitting classes in prep for compute

Change 3138628 on 2016/09/23 by Rolando.Caloca

	DR - vk - Fix mem leak on framebuffers

Change 3138721 on 2016/09/23 by Daniel.Wright

	Better comment for r.DefaultFeature.AntiAliasing

Change 3138722 on 2016/09/23 by Daniel.Wright

	Fixed assert from decals with MSAA due to binding the Scene Depth Texture instead of surface

Change 3138723 on 2016/09/23 by Daniel.Wright

	Corrected GC doc

Change 3138892 on 2016/09/23 by Daniel.Wright

	Fixed instanced static meshes being unbuilt after a lighting build if you ever cancelled a previous lighting build

Change 3138905 on 2016/09/23 by Daniel.Wright

	"Optimizations" -> "Optimization Viewmodes"

Change 3138939 on 2016/09/23 by Daniel.Wright

	Disabled the stationary light overlap viewmode with forward shading

Change 3139710 on 2016/09/26 by Rolando.Caloca

	DR - Rename and added texture RHIClearDepthStencil -> RHIClearDepthStencilTexture

Change 3139820 on 2016/09/26 by Rolando.Caloca

	DR - Remove prefix from shader frequency strings

Change 3139828 on 2016/09/26 by Marcus.Wassmer

	Add SetShaderValue() specialization for bools on AsyncCompute commandlists to match the Gfx specialization.

Change 3139840 on 2016/09/26 by Benjamin.Hyder

	Adding VectorNoise Examples to TM-Noise map

Change 3139862 on 2016/09/26 by Rolando.Caloca

	DR - Better log to track down crash
	#jira UE-36271

Change 3140142 on 2016/09/26 by Rolando.Caloca

	DR - Fix clang warning

Change 3140145 on 2016/09/26 by Rolando.Caloca

	DR - Rename RHIClearColor(MRT) to RHIClearColorTextures and pass textures as parameters

Change 3140360 on 2016/09/26 by Daniel.Wright

	Lighting Scenarios and lightmaps moved to separate package
	* Levels can be marked as lighting scenarios (eg Day, Night).  Lighting is built separately for each lighting scenario with actors / lights in all other scenario levels hidden.  Only one lighting scenario level should be visible at a time in game, and its lightmaps will be applied to the world.
	* Most outputs of the lighting build now go into a separate _BuiltData package.  This improves level Save and AutoSave times as the separate package will only be dirtied after lighting rebuilds.
	* If a lighting scenario is present, all lightmaps are placed inside it's _BuiltData package.  This means that only the currently loaded lighting scenario's lightmaps will be loaded (Day or Night, but not both).  This also means that lightmaps for a streaming level will not be streamed with it.
	* For backwards compatibility, existing lightmaps are moved to a new _BuiltData package on load.
	* Reflection captures and precomputed visibility were not moved to the separate package.  Reflection captures are force updated on load of a lighting scenario level, which can increase load times.

Change 3140361 on 2016/09/26 by Daniel.Wright

	Lighting Scenarios UI

Change 3140582 on 2016/09/26 by Mark.Satterthwaite

	Duplicate CL #3140166
	Fix the video playback in Fortnite - bind our shader resource texture as the render-target texture as for some reason the playback code expects it there, even though we could never provide one.
	#jira FORT-30551

Change 3140584 on 2016/09/26 by Mark.Satterthwaite

	Duplicate CL #3140131:
	Fix crash under the validation layer & Nvidia's El Capitan (10.11) drivers when distance field particle collisions are used without any scene distance fields available - bind the black volume texture when that is the case to avoid bad access on the GPU.
	#jira FORT-30622

Change 3140586 on 2016/09/26 by Mark.Satterthwaite

	Duplicate CL #3140450:
	Fix launching the game on Intel GPUs by disabling Tiled Reflections on Intel for macOS Sierra like we did for El Capitan as there's currently a driver bug to means it doesn't work properly.
	#jira FORT-30649

Change 3140594 on 2016/09/26 by Zabir.Hoque

	Fix benchmark shaders register bindings. TEXCOORD0 was bound to register 1 in VS and then register 0 in PS. DX12 treats this a PSO creation failuer unlike DX11 this was an error.

Change 3140601 on 2016/09/26 by Marcus.Wassmer

	New 'Cinematic' Scalability level.  Remove unused 'new' motionblur CVAR

Change 3140602 on 2016/09/26 by Zabir.Hoque

	CreateTexture3D on XB1 DX11 was leaking ESRAM by reserving it but not allocating to it.

	#Tests: Fix was tested by licensee (GearBox).

Change 3140622 on 2016/09/26 by Rolando.Caloca

	DR - vk - More prep for sm5

Change 3140765 on 2016/09/26 by Rolando.Caloca

	DR - Fix ensure from bad clear depth surface

Change 3141251 on 2016/09/27 by Rolando.Caloca

	DR - vk - Rename & cleanup

Change 3141394 on 2016/09/27 by Rolando.Caloca

	DR - vk - Compute pipeline state

Change 3141463 on 2016/09/27 by Mark.Satterthwaite

	Fix the include order to avoid compile errors on Mac.

Change 3141529 on 2016/09/27 by Gil.Gribb

	Merging //UE4/Dev-Main@3139632 to Dev-Rendering (//UE4/Dev-Rendering)

Change 3141830 on 2016/09/27 by zachary.wilson

	Adding testing content for lighting scenarios to collaborate with Ben

Change 3141941 on 2016/09/27 by Olaf.Piesche

	Speculative fix for UE-34815; have yet to repro this but there's really only so many things it could be. I currently don't see how the sim resources could go away after queueing, so I'm replacing the check with an ensure and null checking the resource pointer.

Change 3142035 on 2016/09/27 by Olaf.Piesche

	Fix compiler error from silly leftover bit of code.

Change 3142065 on 2016/09/27 by Benjamin.Hyder

	Updating Lighting Scenario map

Change 3142262 on 2016/09/27 by Mark.Satterthwaite

	Change Apple RHI initialisation to select the first compatible shader platform to decide which RHI to initialise. Internally in MetalRHI we must gracefully fallback to a lower feature-level when this initial selection is not available on the current device/OS, in which case we need to validate that the selected shader platform was actually packaged. The order of initialisation is different per-platform:
	On Mac: Order of initialisation is the order listed in TargetedRHIs .ini specifications.
	On iOS/tvOS: Order is explicit: Metal MRT > Metal ES 3.1 > OpenGL ES 2
	#jira UE-35749

Change 3142292 on 2016/09/27 by Rolando.Caloca

	DR - hlslcc - Fix for warning X3206: implicit truncation of vector type causing error
	#jira UE-31438

Change 3142397 on 2016/09/27 by Mark.Satterthwaite

	Update hlslcc for Mac including RCO's changes in CL #3142292.
	#jira UE-31438

Change 3142438 on 2016/09/27 by Daniel.Wright

	UMapBuildDataRegistry's created for legacy lightmap data are placed in the map package, which avoids problems with cooking

Change 3142452 on 2016/09/27 by Rolando.Caloca

	DR - Proper support for int defines

Change 3142519 on 2016/09/27 by Arne.Schober

	DR - [UE-33438] - Added a Project Setting to enable Skincache Shader Permuations. The Default value for the Skincache mode was changed to enabled. The reasoning behind this was that it will be auto disabled when Skincache Shaders are disabled, and runtime toggle is a debuging feature that mainly programmers are dealing with. The Recompute Tangents option in the Skinned Mesh is now automatically grayed out when no Skincache Shader Permuations are available.

Change 3142537 on 2016/09/27 by Daniel.Wright

	Fixed r.ScreenPercentage with MSAA - a scissor rect was being setup during the resolve and not reset

Change 3142691 on 2016/09/27 by Daniel.Wright

	Disabled renaming of legacy ULightmap2D's to the separate package since UMapBuildDataRegistry is no longer put in a separate package for legacy content

Change 3142711 on 2016/09/27 by Daniel.Wright

	GComponentsWithLegacyLightmaps entries get handled by USceneComponent::AddReferencedObjects, fixes a crash when you open a map directly from the content browser

Change 3142712 on 2016/09/27 by Daniel.Wright

	Separate category for ParticleCutout properties

Change 3142762 on 2016/09/27 by Uriel.Doyon

	Added per static mesh and per skeletal mesh UV density data. The data is now saved and available in cooked builds.
	The density are computed by the engine but can be overridden by the user in the material tabs.

	Texture streaming intermediate component data is now per material instead of per lod-section.

	New ViewModeParam in FSceneViewFamily allowing context specific param per viewmode.
	This is currently used to show which UV channel and which texture index is being
	shown in the texture streaming accuracy viewmodes.
	This replaces r.Streaming.AnalysisIndex

	Renamed texture streaming viewmodes:
	MeshTexCoordSizeAccuracy -> MeshUVDensityAccuracy
	MaterialTexCoordScalesAccuracy -> MaterialTextureScaleAccuracy
	MaterialTexCoordScalesAnalysis -> OutputMaterialTextureScales

	Improved UV density computation and viewmode.

	LightmapUVDensity is now computed separately from UVChannel Density.

	Fixed texture streaming for instanced static mesh component and derived types.

Change 3143464 on 2016/09/28 by Daniel.Wright

	Removed 'experimental' from forward shading setting

Change 3143508 on 2016/09/28 by Chris.Bunner

	Added component type handling to FoldedMath and Length material expressions.
	#jira UE-36304

Change 3143557 on 2016/09/28 by Rolando.Caloca

	DR - Back out changelist 3142292

Change 3143563 on 2016/09/28 by Rolando.Caloca

	DR - vk - Force hlslcc re-link

Change 3143648 on 2016/09/28 by Daniel.Wright

	Moved GetMeshMapBuildData to UStaticMeshComponent since FStaticMeshComponentLODInfo::OwningComponent can't be initialized reliably in the case of SpawnActor off of a blueprint default that has LODData entries already.

Change 3143661 on 2016/09/28 by Chris.Bunner

	Warning fix.

Change 3143723 on 2016/09/28 by Daniel.Wright

	DumpUnbuiltLightIteractions after lighting build for debugging

Change 3143822 on 2016/09/28 by Arne.Schober

	DR - Refactoring of the ViewMatrices. Moved the Derived Matrices into the FViewMatrix struct. Made all members private do emphasize the static constness of that struct after creation. Renamed the heavy weight members on this struct to Compute*. Methods that modify The ViewMatrices have been renamed to Hack* to discurage their use in the future until a better solution for those problems is found. The ViewMatrix modification is especially misleading because it only changes the State of the ViewMatrices to read their Position from the Material Editior as if coming from the Lightsource (mainly for manual bilboards) as well as doing someting similar to generate CPU bilboards for shadows.

Change 3143860 on 2016/09/28 by Benjamin.Hyder

	Updating TM-Noise map to include 3d noise examples

Change 3143939 on 2016/09/28 by Rolando.Caloca

	DR - vk - Better debugging of submissions
	- Added r.Vulkan.IgnoreCPUReads to help track down hangs on some ihvs

Change 3144006 on 2016/09/28 by Brian.Karis

	Fixed PixelError not being set correctly with LOD groups.

	Removed unneeded Simplygon references.
	Mesh reduction module can now be chosen by name with r.MeshReductionModule

Change 3144026 on 2016/09/28 by Benjamin.Hyder

	Updating QA-Effects map to correct numbering issue

Change 3144098 on 2016/09/28 by Arne.Schober

	DR - ViewMatrices Refactoring - Fix UT

Change 3144158 on 2016/09/28 by Rolando.Caloca

	DR - Undo splitting RHI command context

Change 3144952 on 2016/09/29 by Rolando.Caloca

	DR - vk - Missing swapchain flag

Change 3145064 on 2016/09/29 by Olaf.Piesche

	#jira UE-36091

	Pulling range update for vector distributions even when UDist is not dirty; some content has a lookup table and a clean dist, but the range values have not been baked; always pulling them should be safe and not significantly costly.

Change 3145354 on 2016/09/29 by Benjamin.Hyder

	Updating Tm-ContactShadows

Change 3145485 on 2016/09/29 by Daniel.Wright

	Made SeamlessTravelLoadCallback handle legacy lightmaps

Change 3145527 on 2016/09/29 by Daniel.Wright

	Don't clear legacy lightmap annotations on each map - fixes lighting unbuilt when doing seamless travel

Change 3145530 on 2016/09/29 by Simon.Tovey

	UE-36188 - Editor crash when updating hierarchical instance static mesh component

	Dirtied render state rather than unsafe update of bounds.

Change 3145608 on 2016/09/29 by Gil.Gribb

	Attempt to fix a random compiler error under win32

Change 3145749 on 2016/09/29 by Uriel.Doyon

	Fix for static analysis warning

Change 3146091 on 2016/09/29 by Zabir.Hoque

	RHI Interface changes to support PSO based APIs

Change 3146092 on 2016/09/29 by Zabir.Hoque

	D3D12 RHI support for PSO based APIs.

Change 3146590 on 2016/09/30 by Gil.Gribb

	Merging //UE4/Dev-Main@3146520 to Dev-Rendering (//UE4/Dev-Rendering)

Change 3146731 on 2016/09/30 by Rolando.Caloca

	DR - Fix merge conflicts

Change 3146778 on 2016/09/30 by Rolando.Caloca

	DR - More integration compile fixes

Change 3146790 on 2016/09/30 by Rolando.Caloca

	DR - Integration fix

Change 3146849 on 2016/09/30 by Rolando.Caloca

	DR - Final integration fix

Change 3146899 on 2016/09/30 by Daniel.Wright

	Static analysis fix for dereferencing World

Change 3147020 on 2016/09/30 by Rolando.Caloca

	DR - vk - Fix depth issue on AMD cards
	- Added VULKAN_KEEP_CREATE_INFO to help debugging creation
	- Added num color attachments to pipeline key

Change 3147034 on 2016/09/30 by Rolando.Caloca

	DR - Fix Kite crash where shader pipelines were optimizing non-tessellation pipelines
	#jira UE-36277
	#jira UE-36500

Change 3147080 on 2016/09/30 by Rolando.Caloca

	DR - vk - Disable debug info by default

Change 3147082 on 2016/09/30 by Chris.Bunner

	Allow tessellation to be used with DrawTile calls by swapping fixed mesh to triangle list.
	#jira UE-36491

Change 3147388 on 2016/09/30 by Chris.Bunner

	Blacklisted Nvidia driver 372.70 as it has known stability issues skewing our top crashes list. Also updated recommended version numbers.
	#jira UE-35288

Change 3147394 on 2016/09/30 by Chris.Bunner

	Additional logging for rare error.
	#jira UE-35812

Change 3147459 on 2016/09/30 by Rolando.Caloca

	DR - vk - Some more srgb formats

Change 3147537 on 2016/09/30 by Rolando.Caloca

	DR - vk - Standarize srgb flag like D3D11
	- Minor FVulkanShader cleanup

Change 3147620 on 2016/09/30 by Olaf.Piesche

	#jira UE=34486
	particle component tick function task can be invalid during pause; add check

Change 3148028 on 2016/10/01 by Daniel.Wright

	Renamed RenderingSettings.cpp to match header

Change 3148059 on 2016/10/01 by Daniel.Wright

	Disabled reparenting in the profiler which is disorienting

Change 3148067 on 2016/10/01 by Daniel.Wright

	Support for ReflectionEnvironment and light type show flags with ForwardShading

Change 3148069 on 2016/10/01 by Daniel.Wright

	Added CapsuleIndirectShadowMinVisibility to SkinnedMeshComponent, so artists have control over indirect capsule shadow darkness without changing cvars

Change 3148072 on 2016/10/01 by Daniel.Wright

	Added a rendering setting to disable the new lightmap mixing behavior, where smooth surfaces don't have any mixing.  r.ReflectionEnvironmentLightmapMixBasedOnRoughness

Change 3148073 on 2016/10/01 by Daniel.Wright

	r.VertexFoggingForOpaque only affects forward shading - manual copy of Ben's fix from Orion stream

Change 3148074 on 2016/10/01 by Daniel.Wright

	Enabled planar reflection receiving on the material used for the preview of a APlanarReflection

Change 3148084 on 2016/10/01 by Daniel.Wright

	Fixed reflections on Surface TranslucencyVolume in deferred

Change 3148085 on 2016/10/01 by Daniel.Wright

	Fixed planar reflection composite being done too many times in stereo deferred

Change 3148086 on 2016/10/01 by Daniel.Wright

	Clamp IndirectLightingQuality to 1 in preview builds - keeps preview useful even with IndirectLightingQuality jacked up to 10.

Change 3148107 on 2016/10/01 by Daniel.Wright

	CIS fix

Change 3148113 on 2016/10/01 by Daniel.Wright

	Translucency lighting modes for forward shading
	* Per-vertex modes use GetSimpleDynamicLighting since they can't support specular anyway

Change 3148306 on 2016/10/02 by Rolando.Caloca

	DR - vk - Fix for some NV drivers on Win10

Change 3148307 on 2016/10/02 by Rolando.Caloca

	DR - vk - Compute pipeline

Change 3148358 on 2016/10/02 by Rolando.Caloca

	DR - vk - Consolidate and renumber enum for binding types

Change 3148396 on 2016/10/03 by Rolando.Caloca

	DR - vk - Warning fix

Change 3148697 on 2016/10/03 by Benjamin.Hyder

	Submitting M_Chromebal after enabling planar reflectionsl

Change 3148799 on 2016/10/03 by Rolando.Caloca

	DR - vk - static analysis fix

Change 3148934 on 2016/10/03 by Chris.Bunner

	Added pre-skinned local position material graph node, vertex shader only.

Change 3148994 on 2016/10/03 by Chris.Bunner

	Added missing header file.

Change 3149085 on 2016/10/03 by Daniel.Wright

	Support for ReflectionEnvironment show flag in base pass reflections without any shader overhead

Change 3149095 on 2016/10/03 by Rolando.Caloca

	DR - vk - Disable new render passes

Change 3149125 on 2016/10/03 by Rolando.Caloca

	DR - vk - Fix for multiple memory types

Change 3149181 on 2016/10/03 by Rolando.Caloca

	DR - Better message when missing pipelines

Change 3149215 on 2016/10/03 by Rolando.Caloca

	DR - RHIClearColor -> RHIClearColorTexture
	#tests Orion Editor run match on Agora_P

Change 3149288 on 2016/10/03 by Chris.Bunner

	Added PreTonemapHDRColor for buffer visualization and target output.
	#jira UE-36333

Change 3149402 on 2016/10/03 by Daniel.Wright

	Light attenuation buffer is now multisampled, fixes preshadows with MSAA (depth testing failed during stencil pass) but adds a resolve (.12ms at VR res)

Change 3149403 on 2016/10/03 by Daniel.Wright

	Forward lighting supports lighting channels

Change 3149574 on 2016/10/03 by Marcus.Wassmer

	PR #2817: Ansel/Photography system (Contributed by adamnv)
	Modified to become a plugin

Change 3149615 on 2016/10/03 by Rolando.Caloca

	DR - vk - Fix PF_G16R16 which fixes reflections

Change 3149639 on 2016/10/03 by Olaf.Piesche

	Adding more ensures to catch NaNs occasionally appearing in particle locations early

Change 3149745 on 2016/10/03 by Uriel.Doyon

	Moved UVDensity computation in the staticmesh DDC.

Change 3149749 on 2016/10/03 by Daniel.Wright

	Fixed lightmaps on BSP, which was fallout from Lighting Scenarios backwards compatibility

Change 3149755 on 2016/10/03 by Benjamin.Hyder

	Checking in built lighting for QA-postprocessing

Change 3149758 on 2016/10/03 by Benjamin.Hyder

	re-submitting built lighting for QA-PostProcessing

Change 3149940 on 2016/10/04 by Gil.Gribb

	Merging //UE4/Dev-Main@3149754 to Dev-Rendering (//UE4/Dev-Rendering)

Change 3150098 on 2016/10/04 by Marcus.Wassmer

	Fix some clang and win32 errors

Change 3150323 on 2016/10/04 by Rolando.Caloca

	DR - vk - Static analysis fix

Change 3150456 on 2016/10/04 by Daniel.Wright

	Revert temp logs

Change 3150731 on 2016/10/04 by Daniel.Wright

	Static lights now add a dummy map build data entry for their ULightComponent::IsPrecomputedLightingValid

Change 3150795 on 2016/10/04 by Marcus.Wassmer

	Fix RHIClearUAV and Drawindirect bugs on PS4.
	Also fix PS4 compile error from bad merge.

Change 3151065 on 2016/10/04 by Ben.Marsh

	Merging //UE4/Dev-Main to Dev-Rendering (//UE4/Dev-Rendering)

Change 3151134 on 2016/10/04 by Brian.Karis

	Fixed corrupt mesh generation from quadric simplifier due to uninitialized color array.

Change 3151201 on 2016/10/04 by Marcus.Wassmer

	Nvidia approved icon for ansel plugin.

Change 3151240 on 2016/10/04 by Marcus.Wassmer

	Fix string concat build error.

Change 3151258 on 2016/10/04 by Ben.Marsh

	Fix compile error.

Change 3151290 on 2016/10/04 by Marcus.Wassmer

	Bumping static mesh DDC key to hopefully fix distancefield crashes after brian's quadric simplifier fix.

Change 3152104 on 2016/10/05 by Chris.Bunner

	Workaround for legacy BreakMA material node invalid component masks.
	#jira UE-36832

Change 3152130 on 2016/10/05 by Ben.Woodhouse

	Fix issue with skylight SH and fast semantics on DX11. We need to clear the cube scratch textures before writing to them to avoid issues when reading them back for mip downsampling
	#jira UE-35890

Change 3152240 on 2016/10/05 by Rolando.Caloca

	DR - Fix for missing gizmo colors
	#jira UE-36515

Change 3152338 on 2016/10/05 by Daniel.Wright

	Hopeful fix for FDistanceFieldVolumeTexture assert in the cooker

Change 3152833 on 2016/10/05 by Brian.Karis

	Improved precision of quadrics. Fixes bad triangles on large meshes

Change 3153376 on 2016/10/06 by Rolando.Caloca

	DR - Fix for SM4 missing pipelines fallout

Change 3153650 on 2016/10/06 by Gil.Gribb

	Merging //UE4/Dev-Main@3153068 to Dev-Rendering (//UE4/Dev-Rendering)

Change 3153656 on 2016/10/06 by Uriel.Doyon

	Fixed main integration compilation issues.
	Some of the Mesh UVDensity UI is temporary disabled.

Change 3153725 on 2016/10/06 by Uriel.Doyon

	Fixed crash when source data is missing for lightmaps
	#jira UE-36157

Change 3153998 on 2016/10/06 by Gil.Gribb

	Merging //UE4/Dev-Main to Dev-Rendering@3153705 (//UE4/Dev-Rendering)

Change 3154056 on 2016/10/06 by Marcus.Wassmer

	Fix compile errors from merge.  Also restore some light scencario code

Change 3154176 on 2016/10/06 by Marcus.Wassmer

	Fix deprecation warning

Change 3154252 on 2016/10/06 by Marcus.Wassmer

	Fix more deprecation warnings

Change 3154632 on 2016/10/07 by Chris.Bunner

	Fix for incorrect re-entrant detection with a function called twice in a row. The function input Preview expression is overridden when the function is called to link it into the caller graph, but it was restored too late for chained calls to the same function.
	#jira UE-37002

[CL 3154728 by Gil Gribb in Main branch]
2016-10-07 10:20:36 -04:00
Peter Knepley
74d561476c Copying //UE4/UT-Staging to //UE4/Main (Source: //UE4/UT-Staging @ 3140618)
#lockdown Nick.Penwarden
#rb none

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

CL 3094723 - Matt.Oelfke

Make MatineeActor extensible

CL 3106243 - Steve.Polge

FBatchedElements::AddTranslucentLine

CL 3111035 and 3114239 - Steve.Polge

NetStats can be available Shipping

CL 3113964 - Matt.Oelfke

BeginSpectatingState() won't unpossess a pawn that when it's not authority

Timeline component replication adjustment

CL 3126827 - John.Pollard via Peter.Knepley

Flush async loading when loading replay checkpoint

==========================
MINOR FEATURES + CHANGES
==========================

CL 3140532 - Peter.Knepley

Undo CVar changes that were mistakenly made in 3113964

[CL 3143291 by Peter Knepley in Main branch]
2016-09-28 10:41:23 -04:00
Gil Gribb
cbeb7d3bfe Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3109293)
#lockdown Nick.Penwarden
#rb none

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

Change 3091951 on 2016/08/17 by Chris.Bunner

	(Duplicate) CL 3090919: Fixed edge case interactions in HLOD ray rejection logic in Lightmass.

Change 3093162 on 2016/08/18 by Ben.Woodhouse

	Fix minor memory leak (missing delete of RT Heartbeat thread)

Change 3093470 on 2016/08/18 by Ben.Woodhouse

	Fix minor leak in FMonitoredProcess - the Thread member would get leaked if the FMonitoredProcess was cancelled, because it gets NULLed without deleting it.  Fix is to add a bool to keep track of whether the thread is running, rather than using the Thread pointer.
	Also fixes a race condition where the FMonitoredProcess::Thread member could get initialized after the thread had completed. This would cause IsRunning to never return false, even if the thread has completed, and the editor would hang on startup (this was fixed by setting bIsRunning to true before creating the thread)

Change 3093698 on 2016/08/18 by Daniel.Wright

	Translucent lighting volume draw event cleanup

Change 3093700 on 2016/08/18 by Daniel.Wright

	Clamp on box reflection capture transition distance visualizer

Change 3093755 on 2016/08/18 by Ryan.Vance

	Merging stereo planar reflections from Odin.

Change 3094060 on 2016/08/18 by Daniel.Wright

	Fully featured base pass reflection captures with blending and parallax correction
	* Used in the forward renderer when materials opt-in to 'High Quality Reflections'
	* Used in the deferred renderer for translucent 'Surface ForwardShading' materials
	* Reflection captures are culled to a frustum space grid using the same reverse linked-list method as lights in the forward renderer
	* Fixed grid culling in stereo / splitscreen
	* The ReflectionEnvironment compute shader used in the deferred path also uses the culled grid now which reduces its cost from .93ms -> .70ms on 970 GTX.  PS4 cost is about the same.
	* Capsule indirect self-shadowing is now reduced in the forward path to match deferred, and both are controlled by r.CapsuleIndirectShadowSelfShadowIntensity
	* SetupHZB is now skipped when SSAO / SSR / HZB are all disabled

Change 3094160 on 2016/08/18 by Daniel.Wright

	CIS fixes

Change 3094899 on 2016/08/19 by Ben.Woodhouse

	Batching optimization for dragging components onto blueprints, reported on UDN. Adding 2300 static mesh actors now takes 3 seconds instead of 40 minutes.
	https://udn.unrealengine.com/questions/305821/suspected-rhi-uniform-buffer-leak-when-adding-stat.html

	#jira UE-34937

Change 3095256 on 2016/08/19 by Daniel.Wright

	Disabled ISR warning spamming CIS

Change 3095468 on 2016/08/19 by Daniel.Wright

	Fixed refcounting on hit proxy render targets

Change 3095470 on 2016/08/19 by Daniel.Wright

	Added bVisibleInReflectionCaptures to primitive component, which is useful for hiding objects too close to the capture point

Change 3096274 on 2016/08/22 by Rolando.Caloca

	DR - vk - added missing BC4

Change 3096291 on 2016/08/22 by Rolando.Caloca

	DR - vk - Fix image views for some rendertarget formats
	- Fix ImageViews on sub mips

Change 3096579 on 2016/08/22 by Rolando.Caloca

	DR - vk - Fix rendering for shaders with no descriptors

Change 3096584 on 2016/08/22 by Rolando.Caloca

	DR - vk - Fix 3d texture update

Change 3096813 on 2016/08/22 by Rolando.Caloca

	DR - Fix GL linking errors
	PR #2615

Change 3097062 on 2016/08/22 by Rolando.Caloca

	DR - vk - Added unified mem flag
	- Added Mip index into UAV
	- Switched compute descriptor set index 0

Change 3097065 on 2016/08/22 by Rolando.Caloca

	DR - vk - Framebuffer barriers now wait on STAGE_FRAGMENT_SHADER instead of STAGE_BOTTOM_OF_PIPE

Change 3097084 on 2016/08/22 by Daniel.Wright

	Enabled r.VertexFoggingForOpaque by default to match other forward renderer choices (fast by default)

Change 3097086 on 2016/08/22 by Rolando.Caloca

	DR - vk - Missed file

Change 3097943 on 2016/08/23 by Rolando.Caloca

	DR - hlslcc - Remove duplicated definitions out into a common header

Change 3098166 on 2016/08/23 by Rolando.Caloca

	DR - Custom Renderer callback after getting SceneColor

Change 3098418 on 2016/08/23 by Olaf.Piesche

	Moving vertex factory dirtying to always happen in-editor for mesh emitters on dynamic data reinitialization; there are several cases in which this needs to happen (some material changes, mesh reimports...) which are difficult to track, so in-editor we just always recreate the mesh particle vertex factory with the dynamic data.

	#jira UE-34838

Change 3098448 on 2016/08/23 by Rolando.Caloca

	DR - vk - fixes for depth/stencil descriptors
	- Minor debug dump improvement

Change 3098463 on 2016/08/23 by Daniel.Wright

	Static lights with MinRoughness = 1.0 don't get their source shapes drawn into reflection captures, since they are being used as virtual area lights

Change 3098556 on 2016/08/23 by Daniel.Wright

	Lightmass area shadows only mark texels as mapped inside the light's influence, which fixes multiple stationary lights with bUseAreaShadowsForStationaryLight interfering.

Change 3098672 on 2016/08/23 by Rolando.Caloca

	DR - vk - Fixed crash when using vertex shaders with no descriptors

Change 3099173 on 2016/08/24 by Ben.Woodhouse

	Fixed various issues with subsurface profile, for checkerboard and non-checkerboard code paths

	- Re-enable non-checkerboard skin by default

	- Checkerboard issues fixed:
	    - Emissive lighting was being applied twice due to not taking checkerboard pattern into account
	    - Emissive lighting was modulated by basecolor in the recombine
	    - Metallic materials were contributing specular lighting to the diffuse channel

	 - Non-checkerboard fixes:
	    - Fix write mask during SkyLightDiffuse so alpha is updated correctly
	    - Metallic specular lighting was broken (specularColor was lerping to white instead of baseColor)

	 - Optimisation: Fall back to default lit for pixels where the opacity is 0.
	    - For non-checkerboard, this gives better handling of metallic/emissive for pixels where SSS is not required (non-CB RGBA encoding for diffuse/spec doesn't cope well with colored specular or emissive)
	    - For checkerboard, this gives similar results in terms of shading, but we get full-resolution shading on non SSS pixels

	#jira UE-34561

Change 3099673 on 2016/08/24 by Daniel.Wright

	Removed unused reflection shape variables

Change 3099674 on 2016/08/24 by Daniel.Wright

	Fixed translucent materials not working in DrawMaterialToRenderTarget (fallout from cl 3089208)
	Fixed ensure with FRendererModule::DrawTile in the forward renderer, trying to bind light attenuation texture

Change 3099700 on 2016/08/24 by Daniel.Wright

	Disabled log spam when a Rift is connected but not being used

Change 3099730 on 2016/08/24 by Daniel.Wright

	MSAA depth resolve uses depth of closest surface, hides some artifacts with dynamic shadowing against the skybox

Change 3099789 on 2016/08/24 by Brian.Karis

	FloatRGB  is now always supported.

	If 11:11:10 isn't supported by hardware this format by definition will map to a different format meaning it is always supported.

Change 3099987 on 2016/08/24 by Daniel.Wright

	Fixed light grid debug asserts on PS4
	* Always creating the local light buffer, even if it won't be used by the shader
	* Transition ViewState FRWBuffers to writable at the beginning of a new frame

Change 3100120 on 2016/08/24 by Rolando.Caloca

	DR - vk - Use 256MB pages for GPU memory

Change 3100151 on 2016/08/24 by Daniel.Wright

	PS4 gracefully falls back to Temporal AA when MSAA is requested, as the GNM RHI doesn't support MSAA yet

Change 3100302 on 2016/08/24 by Rolando.Caloca

	DR - vk - Mem system changes
	- Now allocates a readback heap from GPU->CPU
	- Removed bad total memory on heap/type
	- Added fallback to another mem type if it's OOM

Change 3101110 on 2016/08/25 by Rolando.Caloca

	DR - vk - Remove r.Vulkan.UseGLSL

Change 3101121 on 2016/08/25 by Rolando.Caloca

	DR - vk - Initial support for HiResShot

Change 3101450 on 2016/08/25 by Rolando.Caloca

	DR - vk - Remove imagelayout from textures; renamed a method for clarity

Change 3101462 on 2016/08/25 by Daniel.Wright

	Planar reflections no longer update GPU particles, fixes Scene Depth particle collision

Change 3101525 on 2016/08/25 by Frank.Fella

	Niagara - Remove public include modules from niagara, and remove the public include dependency on niagara from UnrealEd, and fix up fallout.

Change 3101613 on 2016/08/25 by Rolando.Caloca

	DR - vk - Fix static analysis warning

Change 3101686 on 2016/08/25 by Frank.Fella

	Niagara - Move asset type actions into the niagara module.

Change 3101865 on 2016/08/25 by Rolando.Caloca

	DR - vk - Fix compile issue when enabling dump layer

Change 3101946 on 2016/08/25 by Frank.Fella

	Orion - Fix include error caused by niagara include fixup.

Change 3101999 on 2016/08/25 by Frank.Fella

	Fortnite - Fix include error caused by niagara include fixup.

Change 3102035 on 2016/08/25 by Frank.Fella

	Ocean - Fix include error caused by niagara include fixup.

Change 3102047 on 2016/08/25 by Frank.Fella

	UnrealTournament - Fix include error caused by niagara include fixup.

Change 3102627 on 2016/08/26 by Frank.Fella

	Niagara - Move stats group declaration to the niagara module and move the stats declarations in the niagara module into the cpp files.

Change 3102654 on 2016/08/26 by Ben.Woodhouse

	Fix for D3D error with mismatched vertex/pixel shader registers for SV_POSITION input. Remove unused PixelPosition attribute from interpolators
	#jira UE-33424

Change 3102780 on 2016/08/26 by Ben.Woodhouse

	Make shadow culling take FOV into account, via LODDistanceFactor
	Also set the LODDistanceFactorSquared member of the view, which was previously uninitialized
	#jira UE-33873

Change 3102930 on 2016/08/26 by Rolando.Caloca

	DR - vk - Do not require backbuffer at start, like Metal

Change 3103061 on 2016/08/26 by Rolando.Caloca

	DR - vk - More debug dump to help track down issues

Change 3103143 on 2016/08/26 by Rolando.Caloca

	DR - vk - Added partial image view for each texture for Depth/Stencil
	- Removed some unused members from textures

Change 3104162 on 2016/08/29 by Gil.Gribb

	Merging //UE4/Dev-Main@3104155 to Dev-Rendering (//UE4/Dev-Rendering)

Change 3104491 on 2016/08/29 by Rolando.Caloca

	DR - vk - Fix merge issue

Change 3104500 on 2016/08/29 by Rolando.Caloca

	DR - Rebuilt hlslcc libs after merge

Change 3104978 on 2016/08/29 by John.Billon

	-Moved Particle Cutouts to the Required Module
	-Pre-existing SubUVAnimation data is automatically moved to required on Init.
	-Added Default Particle Cutouts project setting that will attempt to find and use a texture on a particle's material for a cutout by default.

Change 3105249 on 2016/08/29 by John.Billon

	Fixing non-editor compile error.

Change 3105326 on 2016/08/29 by Zabir.Hoque

	SIMD Movie Player on XB1

Change 3105813 on 2016/08/30 by John.Billon

	Fixing static analysis warning.

Change 3106322 on 2016/08/30 by Matt.Kuhlenschmidt

	Removed duplicated view uniform shader parameters initialization between slate and scene rendering.  Moved all the duped initialization into a single shared method.  The shared method should be where new parameters are initialized if they are required for the view to work properly.

Change 3106350 on 2016/08/30 by Rolando.Caloca

	DR - vk - Added missing texture formats
	- Added texture debug name

Change 3106547 on 2016/08/30 by Rolando.Caloca

	DR - Added ESimpleRenderTargetMode::EExistingColorAndClearDepth

Change 3106631 on 2016/08/30 by Uriel.Doyon

	Dirty Texture Streaming Build do not dirty maps anymore.
	#jira UE-35241

Change 3106919 on 2016/08/30 by Rolando.Caloca

	DR - Temp workaround to get Vulkan up & running, might require hlslcc fix

Change 3106974 on 2016/08/30 by Uriel.Doyon

	Changed lightmass exports version from GUID to INT in order to shorten filenames.

Change 3106988 on 2016/08/30 by Uriel.Doyon

	New project specific config value r.Streaming.CheckBuildStatus used to specify whether the engine should check if the "Texture Streaming Build" is dirty (false by default).
	#jira UE-35227

Change 3107927 on 2016/08/31 by John.Billon

	-Duplicating OpenGL4 ClearUAV Implementation from 4.13
	-Fixed uav clear format.
	#Jira UE-35345

Change 3108095 on 2016/08/31 by Marc.Olano

	Restore initialization of noise textures, accidentally removed in @3106322

	#jira UE-35369

Change 3108557 on 2016/08/31 by John.Billon

	Fixing HTML5 compile error

[CL 3109297 by Gil Gribb in Main branch]
2016-08-31 21:22:32 -04:00
Gil Gribb
2cf40e541e Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3091903)
#lockdown Nick.Penwarden
#rb none

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

Change 3072947 on 2016/08/01 by Uriel.Doyon

	Texture GUIDs are now included in cooked builds, as they are required by the texture streamer to link build data to in game texture.
	#review-3072934 @marcus.wassmer
	#jira UE-34045

Change 3073301 on 2016/08/02 by Ben.Woodhouse

	Fix for large spotlight culling precision issues, reported on UDN by Aaron Jacobs at Double Fine. For a full description, see the UDN post
	https://udn.unrealengine.com/questions/305440/shadowed-light-flicker-caused-by-floating-point-pr.html
	#jira UE-34052

Change 3073689 on 2016/08/02 by Ben.Woodhouse

	Improved skin postprocess - support for full resolution, with diffuse/spec lighting combined into single RGBA (sharing chroma)

	Full res lighting gives less temporal AA flickering, sharper diffuse and specular lighting in the surface (since this is now at full resolution), faster postprocessing if using a 64-bit rendertarget (on NV 980Ti).

	Checkerboard rendering is controlled via the r.sss.checkerboard cvar. - 0 is off/full res, 1 is checkerboard, 2 is automatic based on scenecolor (non-checkerboard requires 64bit or more rendertarget w/separate alpha)

	Tested/profiled on PC, PS4

Change 3074666 on 2016/08/02 by Daniel.Wright

	Fixed stationary skylight brightness

Change 3074667 on 2016/08/02 by Daniel.Wright

	Fixed r.ReflectionEnvironmentLightmapMixing

Change 3074687 on 2016/08/02 by Daniel.Wright

	Disallowed DrawMaterialToRenderTarget and Begin/EndDrawCanvasToRenderTarget in construction scripts, since they don't work in game.  Blutilities can be used to do blueprint rendering in the editor.

Change 3075241 on 2016/08/03 by Rolando.Caloca

	DR - Fix linux compile issue & static analysis warning

Change 3075746 on 2016/08/03 by Daniel.Wright

	Removed bOverride_AntiAliasingMethod and outdated ini references to PP AntiAliasingMethod

Change 3075783 on 2016/08/03 by Ryan.Brucks

	#code.review Marcus.Wassmer

	Added two material nodes that return Atmospheric Light Vector and Light Direction using:

	View.AtmosphericFogSunColor
	View.AtmosphericFogSunDirection

	Nodes are called:
	AtmosphericLightVector
	AtmosphericLightColor

	Also changed SceneRendering.cpp so that values will be grabbed from directional lights without needing an Atmospheric Fog actor in the scene.

Change 3075969 on 2016/08/03 by Uriel.Doyon

	Material GUIDs are not updated anymore when parents or textures change.
	Lighting now uses a hash built from the list of parents, textures and shader functions.
	#review-3072980 @marcus.wassmer @daniel.wright

Change 3076116 on 2016/08/03 by Ryan.Brucks

	#code.review marcus.wassmer
	Fixed typo in the Caption of new Nodes "Atmospheric Light Vector" and "Atmospheric Light Color"

Change 3076456 on 2016/08/03 by Rolando.Caloca

	DR - Fix geometry shader gl_Layer for SPIR-V

Change 3076730 on 2016/08/03 by Uriel.Doyon

	Added user warning logic for the texture streaming build. Ran in MapCheck, BeginPlay and PreSave.
	#review-3072984 @marcus.wassmer

Change 3077616 on 2016/08/04 by Daniel.Wright

	Planar reflection show flags can now be edited

Change 3077621 on 2016/08/04 by Daniel.Wright

	Changed default Planar Reflection DistanceFromPlaneFadeoutEnd from 600 to 100, which reduces artifacts and is a more intuitive initial setting

Change 3077792 on 2016/08/04 by Daniel.Wright

	Fixed an unnecessary sky capture caused by the sky light component owned by the default ASkyLight

Change 3077799 on 2016/08/04 by Daniel.Wright

	Skip RF_ArchetypeObject for reflection captures

Change 3077876 on 2016/08/04 by Marc.Olano

	Noise material perf improvements

	Change random number generator for Gradient-ALU (1.7x perf boost), improve speed of Voronoi noise quality level 3.

	Removes integer BBS random number generators. Fewer instructions, but too slow to use (see 1.7x perf boost above)

Change 3077884 on 2016/08/04 by Daniel.Wright

	Lighting channels can now be edited on components with static mobility, since dynamic lights can still affect them

Change 3078994 on 2016/08/05 by Simon.Tovey

	Fix for UE-34241
	Scene proxy ptr was being cached during a downcast.
	Inside a call to CreateDynamicData, CheckMaterialUsage_Concurrent() was causing the scene proxy to be recreated an so the cached ptr was stale.
	I've fixed the immediate issue but recreating the scene proxy here doesn't seem great. Maybe CheckMaterailUsage() should be rethought a bit.

Change 3079162 on 2016/08/05 by Ben.Woodhouse

	Fix for jittering in Paper2D. Was caused by override being ignored due to a change in intiialization order for AA settings.
	#jira UE-34091

Change 3079613 on 2016/08/05 by Daniel.Wright

	New blueprint function ClearRenderTarget2D, which is the only way to set a render target alpha directly
	New blueprint function CreateRenderTarget2D

Change 3079708 on 2016/08/05 by Uriel.Doyon

	Fixed crash when building texture streaming on some levels.

Change 3079795 on 2016/08/05 by Uriel.Doyon

	Fixed issue with instanced static meshes when building texture streaming.
	Fixed typo with func "GetNumTextureStreamingPrimitives"

Change 3079806 on 2016/08/05 by Uriel.Doyon

	Enabled PerTexture MipBias. The per texture mip bias now resets to 0 when the texture gets required at low resolution.
	New scalability setting named "r.Streaming.LimitPoolSizeToVRAM" enabling the PoolSize to be limited the available VRAM
	(according to GPoolSizeVRAMPercentage)
	#review-3074662 @marcus.wassmer

Change 3082698 on 2016/08/09 by Daniel.Wright

	Copy - CreateRenderTarget2D uses a world context object as owner, allows use in a construction script

Change 3082699 on 2016/08/09 by Daniel.Wright

	Changed display name for 'Two Sided' shading model to 'Two Sided Foliage' to make it clear what it's intended to be used for

Change 3083909 on 2016/08/10 by Olaf.Piesche

	#jira UE-34106
	#jira UE-32784
	#jira UE-31198

	Reset vertex factories on mesh emitters if mesh has been reimported (if mesh package is dirty)

Change 3084645 on 2016/08/10 by Olaf.Piesche

	#jira UE-30398

	Fix offset added to particle collision locations.

Change 3084709 on 2016/08/10 by Daniel.Wright

	Copy - Scene capture alpha is now inverted to match DrawMaterialToRenderTarget, and to allow compositing with existing render target contents
	Added CompositeMode to SceneCapture2D, which can be used to addively accumulate or composite instead of the default overwrite behavior
	Added bCaptureOnMovement to SceneCapture, which can be disabled so the only source of scene capturing is a manual capture by calling CaptureScene()

Change 3084783 on 2016/08/10 by Rolando.Caloca

	DR - Use the first targeted rhi shader platform as the initial RHI to load on Windows
	#jira UE-34510

Change 3084958 on 2016/08/10 by Daniel.Wright

	Copy - Reverted cl 2938543 "Lightmass now respects owner bHidden, and bCastHiddenShadow" because it did not have backwards compatibility so breaks content using hidden light cards

Change 3086023 on 2016/08/11 by Marcus.Wassmer

	Merging //UE4/Dev-Main@3085468 to Dev-Rendering (//UE4/Dev-Rendering)
	#test none

Change 3086778 on 2016/08/11 by Ben.Woodhouse

	Workaround for fortnite character rendering issue. Enable checkerboard rendering by default until we can fix properly
	#jira UE-34561

Change 3087404 on 2016/08/12 by Rolando.Caloca

	DR - Upgrade glslang to 1.0.21.1
	- Added some more debug output

Change 3087524 on 2016/08/12 by Rolando.Caloca

	DR - vk - Fixed StencilRef, fixed size of RHIReadSurfaceFloatData (but still returns dummy data)

Change 3087663 on 2016/08/12 by Rolando.Caloca

	DR - vk - Fix for SRGB; support for mip texture views

Change 3087735 on 2016/08/12 by Daniel.Wright

	TextureRenderTarget2D's can now be up to 8192^2.  Anything over 2048 pops up an 'are you sure' dialog.

Change 3087750 on 2016/08/12 by Rolando.Caloca

	DR - vk - Minor renaming in prep for merge

Change 3087813 on 2016/08/12 by Rolando.Caloca

	DR - vk - More minor cleanup

Change 3087819 on 2016/08/12 by Chris.Bunner

	Check material function input types directly, no need to traverse connected graph.
	#jira UE-32134

Change 3087901 on 2016/08/12 by Rolando.Caloca

	DR - vk - Fix RT view to use 1 mip
	Fix depth buffer component swizzle

Change 3088193 on 2016/08/12 by Daniel.Wright

	DFAO and RTDF shadows are enabled in High and Epic scalability settings by default

Change 3088988 on 2016/08/15 by Rolando.Caloca

	DR - Add Accessors

Change 3089104 on 2016/08/15 by Olaf.Piesche

	#jira UE-34241

	Sceneproxy can be nullptr in FDynamicMeshEmitterData::Init if the proxy is being recreated

Change 3089208 on 2016/08/15 by Daniel.Wright

	Downsampled separate translucency uses a separate view uniform buffer with correct buffer sizes
	* Fixes WorldPosition in downsampled translucency
	* View uniform buffer parameters are now cached on the view, to allow recreating the uniform buffer without having to rebuild the entire struct.  Currently used by global distance field, downsampled separate translucency.
	* Fixed the downsampled translucency depth buffer being full res used together with a smaller color target, now they are both the downsampled res

Change 3089209 on 2016/08/15 by Daniel.Wright

	Fixed atmospheric fog on translucency

Change 3089457 on 2016/08/15 by Daniel.Wright

	Fixed lighting build failure from UMaterialInstanceDynamic assigned to a mesh that's being exported to Lightmass.  The Swarm cache entry is created using the parent's guid, causing multiple MID's with the same parent to acquire a file handle multiple times which fails after the first.

Change 3089549 on 2016/08/15 by Daniel.Wright

	UMaterialInterface initializes LightingGuid to something valid - causes UMaterialInstanceDynamic to have a valid LightingGuid so they can be used in lighting builds

Change 3089703 on 2016/08/15 by Daniel.Wright

	Custom expression fixup for View.RenderTargetSize

Change 3090546 on 2016/08/16 by Daniel.Wright

	Hopeful fix for recycled snapshot view crash

Change 3091202 on 2016/08/16 by Daniel.Wright

	Manually clear FViewInfo::CachedViewUniformShaderParameters on creating a snapshot, since memcpy is used to create the snapshot view

[CL 3091931 by Gil Gribb in Main branch]
2016-08-17 11:38:13 -04:00
Marcus Wassmer
edea678466 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3072736)
#lockdown Nick.Penwarden
#rb none

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

Change 3055495 on 2016/07/19 by Marc.Olano

	Allow Noise material node on mobile

	No reason to exclude mobile, except for Fast Gradient Noise, which uses 3D textures. Allow this node on ES2 for all of the other noise functions.

	#jira UE-33345

Change 3055602 on 2016/07/19 by Luke.Thatcher

	Fix crash bug in D3D11 RHI when selecting adapters.
	 - Array of adapter descriptors will get out of sync with the adapter index if any adapter is skipped (e.g. the Microsoft Basic Render Device).
	#jira UE-33236

Change 3055890 on 2016/07/19 by Daniel.Wright

	Improved the assert in LoadModuleChecked so we won't have to check the log to see which module it was

Change 3055891 on 2016/07/19 by Daniel.Wright

	Fixed Global Distance Field not dirtying previous object position on UpdateTransform - left behind a phantom shadow on teleports
	* This will effectively double partial distiance field update costs until clipping of the update regions is implemented

Change 3055892 on 2016/07/19 by Daniel.Wright

	Higher poly light source shapes drawn into reflection captures

Change 3055893 on 2016/07/19 by Daniel.Wright

	More info to 'Incompatible surface format' GNM assert

Change 3055904 on 2016/07/19 by Daniel.Wright

	Reflection environment normalization improvements
	* Indirect specular from reflection captures is now mixed with indirect diffuse from lightmaps based on roughness, such that a mirror surface will have no mixing.  Reflection captures now match other reflection methods like SSR and planar reflections much more closely.
	* When a stationary skylight is present, Reflection captures are now normalized as if the initial skylight will always be present, giving consistent results with static skylight reflections.  The skylight and reflection captures with sky removed used to be normalized separately, compacting the relative brightness between the sky and scene.
	* Added r.ReflectionEnvironmentLightmapMixing for debugging lightmap mixing issues.  This toggle was previously not possible due to prenormalizing the capture data.
	* The standard deferred reflection path (r.DoTiledReflections 0) can no longer match the results of the compute path or base pass reflections, as it would require MRT to accumulate the average brightness
	* Removed unused r.DiffuseFromCaptures
	* Cost of reflection environment on PS4 increased from 1.52ms -> 1.75ms with this change, but decreased back to 1.58ms by reducing tile size to 8x8

Change 3055905 on 2016/07/19 by Daniel.Wright

	Workaround for RTDF shadows not working on PS4 - manual clear of ObjectIndirectArguments instead of RHICmdList.ClearUAV

Change 3059486 on 2016/07/21 by Nick.Penwarden

	Testing #uecritical

Change 3060558 on 2016/07/21 by Daniel.Wright

	Fixed skylight with specified cubemap being black

Change 3061999 on 2016/07/22 by Marcus.Wassmer

	Disable old AMD driver hacks for DX11.  QA has already tested with them off and given thumbs up.

Change 3062241 on 2016/07/22 by Daniel.Wright

	Fixed bug in RHISupportsSeparateMSAAAndResolveTextures that was preventing MSAA for any non-Vulkan platforms

Change 3062244 on 2016/07/22 by Daniel.Wright

	Discard old prenormalized reflection environment data on load

Change 3062283 on 2016/07/22 by Daniel.Wright

	MSAA support for the forward renderer
	* AntiAliasing method is chosen in Rendering project settings, DefaultSettings category
	* Deferred passes like shadow projection, fogging and decals are only computed per-pixel and can introduce aliasing
	* Added Rendering project setting VertexFoggingForOpaque, which makes height fog cheaper and work properly with MSAA
	* The AntiAliasing method in PostProcessSettings has been removed, this may affect existing content
	* Added r.MSAACount which defaults to 4
	* Integrated wide custom resolve filter from Oculus renderer, controlled by r.WideCustomResolve
	* GBuffer targets are no longer allocated when using the forward renderer
	* Decal blend modes that write to the GBuffer fall back to SceneColor emissive only

Change 3062666 on 2016/07/23 by Uriel.Doyon

	Added legend to streaming accuracy viewmodes
	Added a new helper class FRenderTargetTemp to be reused in different canvas rendering.
	Exposed the pass through pixel shader so that it can be reused.
	#review-3058986 @marcus.wassmer

Change 3063023 on 2016/07/25 by Luke.Thatcher

	Fix "RecompileShaders Changed" when using Cook On The Fly.
	#jira UE-33573

Change 3063078 on 2016/07/25 by Ben.Woodhouse

	Add -emitdrawevents command line option to emit draw events by default. This is useful when capturing with Renderdoc

Change 3063315 on 2016/07/25 by Ben.Woodhouse

	Fix div 0 in motion blur. This caused artifacts in some fairly common cases
	#jira UE-32331

Change 3063897 on 2016/07/25 by Uriel.Doyon

	Fixed missing qualifier on interpolants

Change 3064559 on 2016/07/26 by Ben.Woodhouse

	Fix for cooker crash with BC6H textures (XB1, but may affect other platforms). Also fixes corruption issue with texture slices not being a multiple of 4 pixels (expanding as necessary), courtesy of Stu McKenna at the Coalition
	Tested fix on xbox, PC and PS4, using QAGame
	#jira UE-28592

Change 3064896 on 2016/07/26 by Ben.Woodhouse

	Fix compile errors on PS4 (the variable "sample" was conflicting with a keyword, causing compile errors). Also making encoding consistent on new shaders (ansi rather than UTF16)

Change 3064913 on 2016/07/26 by Ben.Marsh

	Fix spelling of "Editor, Tools, Monolithics & DDC" node in Dev-Rendering build settings.

Change 3065326 on 2016/07/26 by Uriel.Doyon

	Fixed UnbuiltInstanceBoundsList not being reset correctly, creating broken rendered primitives.
	#jira UE-32585

Change 3065541 on 2016/07/26 by Daniel.Wright

	Materials with a GBuffer SceneTexture lookup will fail to compile with forward shading

Change 3065543 on 2016/07/26 by Daniel.Wright

	Restored DetailMode changes causing a FGlobalComponentRecreateRenderStateContext - accidental removal from cl 2969413

Change 3065545 on 2016/07/26 by Daniel.Wright

	Added material property bNormalCurvatureToRoughness, which can slightly reduce aliasing.  Tweakable impact with r.NormalCurvatureToRoughnessScale.
	Fixed reflection capture feedback with base pass reflections

Change 3066783 on 2016/07/27 by Daniel.Wright

	Moved PreShadowCacheDepthZ out of FSceneRenderTargets and into FScene, which fixes issues with cached preshadows and multiple scenes, including HighResScreenShot
	Disabled GMinScreenRadiusForShadowCaster on per-object shadows, which fixes popping when trying to increase shadow resolution from the defaults (r.Shadow.TexelsPerPixel 3)

Change 3066794 on 2016/07/27 by Daniel.Wright

	Fixed crash rendering planar reflections due to NULL PostProcessSettings

Change 3067412 on 2016/07/27 by Daniel.Wright

	Fix for OpenGL4 with uint interpolator

Change 3068470 on 2016/07/28 by Daniel.Wright

	Fixed crash rendering translucency with translucent shadows which were determined to be invisible

Change 3069046 on 2016/07/28 by Daniel.Wright

	Handle null Family in SetupAntiAliasingMethod

Change 3069059 on 2016/07/28 by Daniel.Wright

	Added r.ReflectionEnvironmentBeginMixingRoughness (.1) and r.ReflectionEnvironmentEndMixingRoughness (.3), which can be used to tweak the lightmap mixing heuristc, or revert to previous behavior (mixing even on a mirror surface)

Change 3069391 on 2016/07/28 by Daniel.Wright

	Fixed AverageBrightness being applied to reflections in gamma space in the mobile base pass, causing ES2 reflections to be overbright

Change 3070369 on 2016/07/29 by Daniel.Wright

	r.ReflectionEnvironmentBeginMixingRoughness and r.ReflectionEnvironmentEndMixingRoughness set to 0 can be used to achieve old non-roughness based lightmap mixing

Change 3070370 on 2016/07/29 by Daniel.Wright

	Bumped reflection capture DDC version to get rid of legacy prenormalized data

Change 3070680 on 2016/07/29 by Marcus.Wassmer

	Fix slate ensure that is most likely a timing issue exposed by rendering.
	#ue-33902

Change 3070811 on 2016/07/29 by Marcus.Wassmer

	Fix ProjectLauncher errors when loading old versions
	#ue-33939

Change 3070971 on 2016/07/29 by Uriel.Doyon

	Updated ListTextures outputs to fix cooked VS non cooked differences and also to put enphasis on disk VS memory

Change 3071452 on 2016/07/31 by Uriel.Doyon

	Updated the legend description for the (texture streaming) primitive distance accuracy view mode

[CL 3072803 by Marcus Wassmer in Main branch]
2016-08-01 18:56:49 -04:00
Gil Gribb
93047290bb Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3054480)
#lockdown Nick.Penwarden
#rb none

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

Change 3045482 on 2016/07/11 by Zabir.Hoque

	DX12 Quries need to individually track their syncpoints. Only when resolving a query on the same frame should be stall.

Change 3045929 on 2016/07/12 by Simon.Tovey

	Removing some deprecated node types from Niagara

Change 3045951 on 2016/07/12 by Ben.Woodhouse

	D3D11 Log detailed live device info on shutdown if the debug layer is enabled (including resource types)

Change 3046019 on 2016/07/12 by Chris.Bunner

	Fixed typo in material input name.
	#jira UE-5575

Change 3046053 on 2016/07/12 by Rolando.Caloca

	DR - Fix GL4 shutdown
	#jira UE-32799

Change 3046055 on 2016/07/12 by Rolando.Caloca

	DR - vk - Fix NumInstances=0

Change 3046063 on 2016/07/12 by Rolando.Caloca

	DR - vk - Added flat to uint layouts per glslang
	- Fix bad extension on dumped shaders

Change 3046067 on 2016/07/12 by Rolando.Caloca

	DR - vk - Fix check when not using color RT
	- Added queue submit & present counters

Change 3046088 on 2016/07/12 by Ben.Woodhouse

	Live GPU stats
	A non-hierarchical realtime high level GPU profiler with support for cumulative stat recording.
	Stats are added with SCOPED_GPU_STAT macros, e.g. SCOPED_GPU_STAT(RHICmdList, Stat_GPU_Distortion)
	The bulk of the files in this change are simply instrumentation for the renderer. The core changes are in SceneUtils.cpp/h and D3D11Query.cpp (this is the XB1/DX11X implementation of timestamp RHI queries, which was missing)
	Note: this is currently disabled by default. Enable with the cvar r.gpustatsenabled
	Tested on PC, XB1, PS4

Change 3046128 on 2016/07/12 by Olaf.Piesche

	Max draw distance and fade range for lights, requested by JonL

Change 3046183 on 2016/07/12 by Ben.Woodhouse

	PR #2532: Fix SSAO being applied in unlit viewmode (Contributed by nick-penwarden)

Change 3046223 on 2016/07/12 by Luke.Thatcher

	Fix Scene Cube Captures. SceneCaptureSource flag on the ViewFamily was not set for cube components.

	#jira UE-32345

Change 3046228 on 2016/07/12 by Marc.Olano

	Add Voronoi noise to Noise material node.

	Four versions with differing speed/quality levels accessed through the Quality value in the material node. Tooltips give estimates of the cost of each.

	Also includes spiffy new Rand3DPCG16 and Rand3DPCG32 int3 to int3 hash functions, and a 20% improvement on the computed gradient noise.

Change 3046269 on 2016/07/12 by Rolando.Caloca

	DR - Skip flush on RHIDiscardRenderTargets and only use it on platforms that need it (ie OpenGL)

Change 3046294 on 2016/07/12 by Rolando.Caloca

	DR - Fix static analyisis
	warning C6326: Potential comparison of a constant with another constant.

Change 3046295 on 2016/07/12 by Rolando.Caloca

	DR - Fix the previous fix

Change 3046731 on 2016/07/12 by Marc.Olano

	Fix typo in shader random number constant: repeated extra digit made it too big.

Change 3046796 on 2016/07/12 by Uriel.Doyon

	The texture streaming manager now keeps a set of all valid textures.
	This is used to prevent from indirecting deleted memory upon SetTexturesRemovedTimestamp.
	#jira UE-33048

Change 3046800 on 2016/07/12 by Rolando.Caloca

	DR - vk - Added create image & renderpass dump

Change 3046845 on 2016/07/12 by John.Billon

	Forgot to apply MaxGPUSkinBones Cvar access changes in a few locations.

Change 3047023 on 2016/07/12 by Olaf.Piesche

	Niagara:
	-a bit of cleanup
	-now store and double buffer attributes individually, eliminating unnecessary copy of unused attributes
	-removed FNiagaraConstantMap, replaced with an instance of FNiagaraConstants
	-some code simplification
	-removed some deprecated structs and code used only by old content

Change 3047052 on 2016/07/12 by Zabir.Hoque

	Unshelved from pending changelist '3044062':

	PR #2588: Adding blend mode BLEND_AlphaComposite (4.12) (Contributed by moritz-wundke)

Change 3047727 on 2016/07/13 by Luke.Thatcher

	Fix Scene Capture Components only updating every other frame.
	#jira UE-32581

Change 3047919 on 2016/07/13 by Olaf.Piesche

	CMask decode, use in deferred decals, for PS4

Change 3047921 on 2016/07/13 by Uriel.Doyon

	"Build Texture Streaming" will now remove duplicate error msg when computing texcoord scales.
	Also, several texture messages are packed on the same line if they relate to the same material.

Change 3047952 on 2016/07/13 by Rolando.Caloca

	DR - vk - Initial prep pass for separating combined images & samplers

Change 3048648 on 2016/07/13 by Marcus.Wassmer

	Fix rare GPU hang when asynctexture reallocs would overlap with EndFrame

Change 3049058 on 2016/07/13 by Rolando.Caloca

	DR - vk - timestamps

Change 3049725 on 2016/07/14 by Marcus.Wassmer

	Fix autosdk bug where not having a platform directory sync'd at all would break manual SDK detection

Change 3049742 on 2016/07/14 by Rolando.Caloca

	DR - Fix warning

Change 3049902 on 2016/07/14 by Rolando.Caloca

	DR - Fix typo

Change 3050345 on 2016/07/14 by Olaf.Piesche

	UE-23925
	Clamping noise tessellation for beams at a high but sensible value; also making sure during beam index buffer building that we never get over 2^16 indices; this is a bit hokey, but there are so many variables that can influence triangle/index count, that this is the only way to be sure (short of nuking the entire site from orbit).

Change 3050409 on 2016/07/14 by Olaf.Piesche

	Replicating 3049049; missing break and check for active particles when resolving a source point to avoid a potential crash

Change 3050809 on 2016/07/14 by Rolando.Caloca

	DR - vk - Remove redundant validation layers

Change 3051319 on 2016/07/15 by Ben.Woodhouse

	Fix for world space camera position not being exposed in decal pixel shaders; also fixes decal lighting missing spec and reflection
	The fix was to calculate ResolvedView at the top of the shader. Previously this was not initialized
	#jira UE-31976

Change 3051692 on 2016/07/15 by Rolando.Caloca

	DR - vk - Enable RHI thread by default

Change 3052103 on 2016/07/15 by Uriel.Doyon

	Disabled depth offset in depth only pixel shaders when using debug view shaders (to prevent Z fighting).
	#jira UE-32765

Change 3052140 on 2016/07/15 by Rolando.Caloca

	DR - vk - Fix shader snafu

Change 3052495 on 2016/07/15 by Rolando.Caloca

	DR - Fix for Win32 compile
	#jira UE-33349

Change 3052536 on 2016/07/15 by Uriel.Doyon

	Fixed texture streaming overbudget warning when using per texture bias.

[CL 3054554 by Gil Gribb in Main branch]
2016-07-18 17:17:08 -04:00
Gareth Martin
34f14e4722 Copying //UE4/Dev-Landscape to //UE4/Dev-Main (Source: //UE4/Dev-Landscape @ 3053591)
#lockdown nick.penwarden
#rb none

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

Change 3016060 on 2016/06/16 by Gareth.Martin

	Fixed check being hit in AActor::InvalidateLightingCacheDetailed when building lighting with grass (cloned from 4.12)
	#jira UE-31766

Change 3016346 on 2016/06/16 by Gareth.Martin

	Fixed crash when editing landscape component properties and then clicking in the editor viewport (cloned from 4.12)
	#jira UE-32060

Change 3016366 on 2016/06/16 by Gareth.Martin

	Refactor Landscape Select / Mask tools so that they don't share a common brush stroke class
	- they had no common code, there was just a massive if statement in there selecting between the two behaviours

Change 3017787 on 2016/06/17 by Gareth.Martin

	Added Copy/Transform Algos

Change 3019479 on 2016/06/20 by Gareth.Martin

	Fix for user-reported crash in landscape circle brush
	(https://udn.unrealengine.com/questions/298966/crash-in-flandscapebrushcircletick.html)

Change 3020927 on 2016/06/21 by Gareth.Martin

	Fixed "Obj in another map" error when packaging a project containing Landscape for Android
	#jira UE-32194

Change 3021318 on 2016/06/21 by Gareth.Martin

	Fixed crash in PIE while using Landscape Splines with bPlaceSplineMeshesInStreamingLevels
	#jira UE-32034

Change 3024769 on 2016/06/23 by Gareth.Martin

	Allow creation of transient objects during saving, as they wouldn't be saved anyway
	(and the slate font system did during autosave and hit this check)
	#jira UE-32194

Change 3026457 on 2016/06/24 by Gareth.Martin

	Fixed crash when setting landscape component collision mip to an invalid value while in collision viewmode (cloned from 4.12)
	#jira UE-32415

Change 3032336 on 2016/06/29 by Gareth.Martin

	Fixed a long-standing issue with undo/redo nulling lazy pointers
	- Two objects are created which reference each other with lazy object pointers (e.g. ULandscapeComponent and ULandscapeHeightfieldCollisionComponent)
	- Undo
	- During undo, the first object saves its state and restores itself to a deleted (pendingkill) state
	- the second object then tries to save its state, but as the other object is marked pending kill it fails to resolve its lazy ptr and saves null instead
	- Redo
	- Lazy ptr is restored to the saved null instead of the actual original value

Change 3032818 on 2016/06/29 by Gareth.Martin

	Removed all use of deferred exec commands from the landscape code
	This solves numerous crashes during commandlets etc with landscape infos not being initialized because they don't tick the engine
	#jira UE-31654
	#jira UE-29568

	Notes:
	Split CreateLandscapeInfo from GetLandscapeInfo (removing the default-true bool param from GetLandscapeInfo in the process), so it only gets created where intended
	Removed some unused properties/functions, e.g. ULandscapeInfo::bIsValid, bCurrentlyEditing
	Removed legacy landscape world composition code
	General cleanup

Change 3032820 on 2016/06/29 by Gareth.Martin

	File missing from CL 3032818 (P4! Grr)

Change 3037033 on 2016/07/04 by Gareth.Martin

	Capitalised variable names in Algo::Accumulate at Core's request

Change 3037035 on 2016/07/04 by Gareth.Martin

	Improved Algo::Accumulate when used with movable types (e.g. FString)

Change 3037373 on 2016/07/05 by Gareth.Martin

	Added FText property handle type

Change 3039183 on 2016/07/06 by Gareth.Martin

	Landscape data plugin API - part 1: Import

Change 3042473 on 2016/07/08 by Gareth.Martin

	Landscape data plugin API - part 2: Re-Import

Change 3042484 on 2016/07/08 by Jack.Porter

	Pull request from AndrewScheidecker https://github.com/EpicGames/UnrealEngine/pull/1279 and updated to 4.13.

	Adapted GetStaticBatchElementVisibility to support changing visibility of batches with a single element (for view-dependent culling of static mesh elements)
	Added GetStaticBatchElementShadowVisibility that allows culling static mesh elements when rendering shadow depths using information about the light

	** Any user-created vertex factory that implements GetStaticBatchElementVisibility will need to set bRequiresPerElementVisibility on their FMeshBatch.

	#1279

Change 3044665 on 2016/07/11 by Gareth.Martin

	Renamed Engine/FixedSizeArrayView to Core/Containers/ArrayView
	Note: The new and improved TArrayView (as agreed with core team) is *not* const-propogating. const TArrayView<T> does not imply "const T" and will not bind to a const TArray! You want TArrayView<const T>

Change 3045936 on 2016/07/12 by Gareth.Martin

	Worked around Visual Studio 2013 bug with the new TArrayView
	#jira UE-33037

Change 3045964 on 2016/07/12 by Gareth.Martin

	Fix "cannot find shader" crash when using landscape with XY offsets
	#jira UE-33042

Change 3046311 on 2016/07/12 by Gareth.Martin

	Landscape data plugin API - part 3: Tiled landscapes

Change 3047701 on 2016/07/13 by Gareth.Martin

	Landscape data plugin API - cleanup

Change 3047894 on 2016/07/13 by Gareth.Martin

	Landscape data plugin API - part 4: Support inherent scale in landscape heightmap formats

Change 3049656 on 2016/07/14 by Gareth.Martin

	Landscape data plugin API - Fix right-click layer import option to show plugin filetypes in the file selector

Change 3050073 on 2016/07/14 by Gareth.Martin

	Update sequence recorder to new TArrayView following merge from main

Change 3050096 on 2016/07/14 by Gareth.Martin

	Landscape data plugin API - part 5: Export!

Change 3051521 on 2016/07/15 by Gareth.Martin

	Landscape data plugin API - part 6: Finishing up

Change 3051783 on 2016/07/15 by Gareth.Martin

	Fixed the landscape info map not being transacted correctly, resulting in a crash if you undo the deletion of a landscape
	#jira UE-33291

Change 3053322 on 2016/07/18 by Gareth.Martin

	Fix landscapes not being registered correctly with their landscape info when hiding/showing them in world composition
	#jira UE-33346

Change 3053513 on 2016/07/18 by Jack.Porter

	Added LANDSCAPE_API to Landscape MaterialExpression classes

	#jira UE-25145
	#1927

Change 3053591 on 2016/07/18 by Gareth.Martin

	Attempt to fix VS 2013 ICE
	#jira UE-33382

[CL 3053789 by Gareth Martin in Main branch]
2016-07-18 11:58:33 -04:00
Luke Thatcher
b27ea9212e Fix broken skylight rendering on translucent materials in projects with static lighting disabled.
Made IsTranslucentBlendMode inline in the header.
#jira UE-32655
#rb marcus.wassmer
#lockdown nick.penwarden

[CL 3039895 by Luke Thatcher in Main branch]
2016-07-06 14:52:56 -04:00
Andrew Grant
48331caa30 Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 3028454)
#lockdown Nick.Penwarden

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

Change 3028439 on 2016/06/27 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 28 @ CL 3028090

	#RB:none
	#Tests:none

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

Change 3027952 on 2016/06/26 by Jurre.deBaare

	- Integrating code fixes/changes from Simplygon for Normals issue on Simplygon Swarm + landscape culling
	- Readded landscape/volume culling for in-engine static mesh merging path
	- Fixed issue with r.HLOD force -1 (now stops forcing hlods)
	- Marked hlodcullingvolume as experimental
	- Added Landscape culling flag + precision level

	#codereview Michael.Noland
	#rb Michael.Noland
	#tests build clusters locally/cloud + landscape culling tests

Change 3027702 on 2016/06/25 by Jason.Bestimt

	#ORION_DG - Merge MAIN @ CL 3027698

	#RB:none
	#Tests:none

Change 3027312 on 2016/06/24 by Daniel.Lamb

	Changed the way reentry data is stored in the cooker, reduce work load by main thread, also fix issue with reentry data being used from incorrect packages.
	#rb Peter.Sauerbrei
	#test QA game launch on and cook by the book + cook on the fly paragon

Change 3027165 on 2016/06/24 by Daniel.Lamb

	Fix compiler warnings from cvars changes.
	#rb none
	#test cook paragon

Change 3026900 on 2016/06/24 by Daniel.Lamb

	Change the way low quality lightmap shaders are enabled / disabled as the engine can't be used in the should cache function.
	#rb Marcus.Wasmer
	#test Cook on the fly paragon
	#codereview Rolando.Caloca

Change 3026874 on 2016/06/24 by Olaf.Piesche

	#jira OR-18363
	fix distortion in particle macro UVs with camera movement

	#rb frank.fella
	#tests PC Editor/Game

Change 3026494 on 2016/06/24 by jason.bestimt

	#ORION_MAIN - Merge 28 @ CL 3026460

	#RB:none
	#Tests:none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 3026381 on 2016/06/24 by Graeme.Thornton

	Strip particle modules, emitters and lodlevels from cooked server data. Saves ~10mb of runtime memory on Paragon

	#rb simon.tovey
	#codereview dmitry.rekman
	#tests pc cooked client/server, golden path

Change 3025760 on 2016/06/23 by jason.bestimt

	#ORION_MAIN - Merge 28 @ CL 3025687

	#RB:none
	#tests:none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	//Orion/Dev-General/OrionGame/Content/Characters/Heroes/Sword/Meshes/sword.uasset - can't integrate exclusive file already opened
	//Orion/Dev-General/OrionGame/Content/Characters/Heroes/Sword/Meshes/sword_Skeleton.uasset - can't integrate exclusive file already opened
	#CodeReview: jason.bestimt

Change 3025661 on 2016/06/23 by Mieszko.Zielinski

	Added a feature to PathfollowingComponent allowing it to identify when it starts following a navigation link #UE4

	#rb Lukasz.Furman
	#test golden path

Change 3025359 on 2016/06/23 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: sam.zamani
	#online,externalui,ps4
	- expose access to reset cookies before invoking embedded web browser
	- fixed not capturing resulting Url when PS4 browser is closed

	#rb none
	#tests ps4

	#ROBOMERGE-SOURCE: CL 3025356 in //Orion/Release-28/... via CL 3025358
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3025184 on 2016/06/23 by Lina.Halper

	Fix crash with morphtargets

	#jira: OR-24257
	#rb: Rolando.Caloca
	#tests: switching mesh with different morphtargets in editor

Change 3024714 on 2016/06/23 by Lukasz.Furman

	added vlog extension to visual debugger tool, added object whitelist to vlog to include selected minion data in  games started with -LogBotGame param
	#rb Mieszko.Zielinski
	#tests server game with and without LogBotGame cmdline

Change 3024709 on 2016/06/23 by Daniel.Lamb

	Added support for async save when saving seperate bulk data file.
	Added mb saved to cooking package stats.
	#rb Andrew.Grant,Wes.Hunt
	#test Cook Paragon

Change 3024674 on 2016/06/23 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: sam.zamani
	Merging //Orion/Release-28 to Main (//Orion/Main)

	#online,identity,ps4
	- add psplus flag to online account after privilege check

	#rb none
	#tests ps4 login flow

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

Change 3024510 on 2016/06/23 by Graeme.Thornton

	Added more info to the dumpparticlesystems exec command output

	#rb simon.tovey
	#tests cooked pc client, golden path

Change 3024504 on 2016/06/23 by Graeme.Thornton

	Asset registry memory optimisation - make sure all dependency node link arrays are sized exactly as they need to be (saves ~1mb)

	#rb robert.manuszewski
	#tests windows cooked client, golden path

Change 3024213 on 2016/06/22 by Ryan.Gerleve

	Handle a rare case in replays where the spectator controller is null but we still find a valid NetGUID for it.
	Added an ensure before a check that would fail in this case so we'll know if it happens again.

	#tests replays
	#rb john.pollard

Change 3024127 on 2016/06/22 by John.Pollard

	Bulk merge using Dev-Networking_->_Dev-General_(Orion)

	3002989
	Add ability to skip missing/changed properties in FFastArraySerializer

	3003072
	Fix crash related to new replay backwards compatibility changes

	3008097
	Renaming CompatibleReplayout to NetFieldExportGroup preparing to unify ability to use FNetFieldExportGroup for both RepLayout and FClassNetCache

	3009684
	Added ability to use FNetFieldExportGroups for FClassNetCache as well as FRepLayout

	* Adds ability to track missing/changed custom delta properties names
	* Adds ability to track missing/changed RPC's

	3013455
	Add ability to skip over RPC parameters that have changes/missing in replays for backwards compatibility

	* We now mark FClassNetCache properties as bIncompatible so we don't spam forever when they are out of date
	* No longer factor in parameters when building checksum for RPC's
	* Save FNetFieldExport handle for FClassNetCache fields
	* Use WriteIntWrapped when saving FClassNetCache fields FNetFieldExport handles (and use NetFieldExportGroup->NetFieldExports.Num() to determine max value)
	* Lots of cleanup and sanity checking improvements

	3018078
	Optimize replay checkpoints

	* Share work that was already done during normal replication, and re-use this data to remove the need to compare any checkpoint properties
	* When saving a checkpoint, we no longer create a new connection and new channels, instead we re-use the existing channels, and added the ability to make this a transient operation
	* To make custom delta serialize properties work, we compare against the CDO state instead of current state when saving out a checkpoint

	3021196
	Fix issue with Fast tarray exporting package map info during checkpoints

	* Add ability to save and restore package map ack status
	* Save package map ack status before saving checkpoint, and then restore it back afterwards, this will then allow the stream that writes afterward to re-export anything that was new in the checkpoint
	* No longer queue up reliable bunches on ack list for internal ack connections

	3024033
	Prune the cached change list before using when saving out checkpoints

	* Fixes issues when saving checkpoint, and the live properties change array size, which throws everything off when it comes time to use the LifetimeChangelist

	3024034
	Don't close channels when saving checkpoints, fixes issue where it creates a bunch with bOpen/bClose (because we're forcing all SendBunches to re-open channels), which throws off the stream

	#rb RyanG
	#tests Replays

Change 3024021 on 2016/06/22 by Dmitry.Rekman

	Fix PS4 build.

	#rb Michael.Noland
	#tests none
	#codereview Michael.Noland, Dan.Youhon, Sammy.James

Change 3023734 on 2016/06/22 by Lukasz.Furman

	added replication for input events and tool state for both gameplay debugger categories and extensions
	#ue4
	#rb Mieszko.Zielinski
	#tests PIE, server game

Change 3023708 on 2016/06/22 by Dmitry.Rekman

	Add a separate macro for a poison malloc proxy usage.

	#rb Michael.Noland
	#codereview Michael.Noland, Gil.Gribb
	#tests Compiled OrionServer-Linux-Debug, ran it

Change 3023670 on 2016/06/22 by Nick.Darnell

	Home screen - Fixing safezones on the homescreen.  Adding a scale option to the XP_Fill widget.  Adding better animations to the tiles.  Showing subtitles again.  Hero XP summary widget now takes you to that hero.

	#rb none
	#tests PIE

Change 3023632 on 2016/06/22 by Dmitry.Rekman

	Fix incorrect matching condition in comments.

	#rb none
	#tests Compiled OrionServer-Linux-Debug
	#codereview Michael.Noland

Change 3023475 on 2016/06/22 by Rolando.Caloca

	O - Back out changelist 3022847 as it broke SSS on PC
	#rb none
	#tests re-run editor on PC

Change 3023178 on 2016/06/22 by Michael.Noland

	Engine: Added system memory and % of time spent hitching to analytics
	#rb bob.tellez
	#tests Tested a match in Paragon

Change 3022963 on 2016/06/22 by Mieszko.Zielinski

	Fixed a subtle navigation repathing bug #UE4

	While repathing to a location, rather than an actor, the navigation query used path's end while it should be using the original query's EndLocation.

	#rb Lukasz.Furman
	#test golden path

Change 3022865 on 2016/06/22 by David.Ratti

	gameplay cue editor: remove "GameplayCue_" prefix from default GameplayCueNotify filename in default ability system projects

	#rb none
	#tests ability system sample project

Change 3022847 on 2016/06/22 by Rolando.Caloca

	O - Remove checkerboard SSS rendering and recombine post process pass when SSS not enabled
	#rb Marcus.Wassmer
	#codereview Marcus.Wassmer, Brian.Karis
	#tests Load Agora_P, check perf, toggle r.SSS.Quality 1/0, check characters with skin

Change 3022804 on 2016/06/22 by Mieszko.Zielinski

	Fixed AIController clearing out CachedGameplayTasksComponent on UnPosses, even if Pawn was not the CachedGameplayTasksComponent's owner #UE4

	Also, made running BT not clearing info in BB if AI's current BB is compatible with the one required by BT

	#rb Lukasz.Furman
	#test golden path

Change 3022674 on 2016/06/22 by Robert.Manuszewski

	Reimplementing CL #2993969 (Dev-Blueprints) by Maciej.Mroz:

	UE-30729 Crash in Native Orion when selecting Sword or Tomahawk

	Clear AsyncLoading in subobjects.

	#jira OR-23997

	#rb me
	#tests Golden path in editor build, selecting Venus

Change 3022405 on 2016/06/21 by Ryan.Gerleve

	Fix for OR-23948, crash with death cam enabled. Use a weak pointer to store the viewer on the DemoNetDriver and update it when the game player controller is received.

	#rb john.pollard
	#tests bug repro

Change 3022387 on 2016/06/21 by Ryan.Gerleve

	Added the ability to disable ticking of individual worlds.

	#tests golden path
	#rb john.pollard
	#codereview marc.audy

Change 3022312 on 2016/06/21 by Nick.Darnell

	Home Screen - Adding a max aspect ratio lock to SBox, may need some more fine tuning math may still be a bit pants in some cases.  The XP ovewview panels now have a basic support for account and hero progression.  Hero one shows the last hero you played, widget is invisibile until you play your first game.  The tiles now use the Max Aspect Ratio to prevent stretching forever on 21:9 monitors causing them to just look crazy.  Weekly quests now show the weekly quests screen when clicked.  OrionUserWidgetBase no longer prevents blueprints from running code in reponse to mouse down/up actions if the userwidget consumes input - it always calls the blueprint code first, and always returns handled if it consumes input.

	#rb none
	#tests PIE

Change 3022207 on 2016/06/21 by Wes.Hunt

	Fix Analytics provider to retain passed in AppVersion string instead of using default %VERSION%.
	#rb none
	#tests run windows server with one bot connecting and checking analytics version is what is expected.

Change 3021808 on 2016/06/21 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - call GetTotalMicroseconds instead of GetTotalMilliseconds * 1000
	#rb none
	#tests compile run ps4

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

Change 3021663 on 2016/06/21 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - CancelFindSessions() didn't null out search result
	- future FindSession() calls would fail with "search in progress"
	#rb joe.wilcox
	#tests UT matchmaking

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

Change 3021508 on 2016/06/21 by Marcus.Wassmer

	Remove anti-ghosting AA for now.
	Causes dithered transparency to be very wrong (Dekker shoulders)
	And also a border around all characters of 'noisy fuzz' even when they are not moving
	#rb none
	#test PC/PS4
	#codereview Brian.Karis,Jordan.Walker

Change 3021475 on 2016/06/21 by Marcus.Wassmer

	Duplicate fix for subsurface spec in prep for PS4 optimization. (DevRendering 3018664)
	unified some code for easier maintainance, fixed missing multiply from former change
	#rb none
	#test PS4/PC agora

Change 3021468 on 2016/06/21 by Michael.Noland

	Physics: Added more information when convex cooking partially succeeds (fails initially but succeeds with inflation) indicating the full path of the mesh that failed
	#rb ori.cohen
	#tests Compiled changes, will provide more information when issue reoccurs in build machine cooks
	#jira OR-24082

Change 3021460 on 2016/06/21 by Michael.Noland

	Engine: Added time spent in each hitch bucket to FPS chart .log output and analytics output
	#rb bob.tellez
	#tests Tested a match in Paragon
	#codereview dmitry.rekman

Change 3021368 on 2016/06/21 by Marcus.Wassmer

	Create Tonemapper configuration with no ColorFringe to save .15ms on PS4 when colorfringe is not used.
	#rb rolando.caloca
	#test agora with/wo new config
	#codereview brian.karis

Change 3021119 on 2016/06/21 by David.Ratti

	Make -notimeouts work during initial connecting phase
	#codereview John.Pollard
	#rb none
	#tests pie agora

Change 3021048 on 2016/06/21 by David.Ratti

	minor tweaks to gameplay cues:
	-Descriptions of engine GC notify classes
	-Added 'auto attach to owner' flag on actor notify class.

	#rb none
	#test ability system sample project

Change 3020694 on 2016/06/20 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3020301

	#RB:none
	#Tests:none

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

	#CodeReview: cody.haskell

Change 3020624 on 2016/06/20 by Michael.Noland

	Engine: Pushing more fps chart analytics up to engine level code from Paragon
	Engine: Pushing benchmark config vars up to engine level code from Paragon, and added records of individual sub-steps of benchmarks
	#rb Bob.Tellez
	#tests Golden path Solo VS AI in Paragon and forced a match
	#codereview bob.tellez, peter.knepley

Change 3020181 on 2016/06/20 by Dmitry.Rekman

	Re-do allowing allocations in NullRHI (OR-24029).

	- Originally CL 2990582 by MarcusW, stomped during merge by CL 3006926.

	#rb none
	#codereview Marcus.Wassmer, Andrew.Grant
	#tests none

Change 3020139 on 2016/06/20 by Ryan.Gerleve

	Added ability to pause replay recording while keeping the current replay open.

	#rb john.pollard
	#tests paused deathcam recording while disabled

Change 3019817 on 2016/06/20 by Dmitry.Rekman

	Poison allocated/freed memory in Debug and Development (non-editor) configs.

	- With this Paragon client may be more likely to crash on start.

	#rb Steve.Robb
	#codereview  Robert.Manuszewski, Michael.Noland, Andrew.Grant, Gil.Gribb, Steve.Robb
	#tests Built Linux server and Windows client, ran them, also built Windows Orion editor.

Change 3019599 on 2016/06/20 by Rolando.Caloca

	O - Fix flickering on heroes with morph targets
	#rb Marcus.Wassmer
	#tests Load Agora_P
	#jira OR-23866

Change 3019581 on 2016/06/20 by Wes.Hunt

	Fix crash reporter client analytics for internal builds. (Pushing critical fix immediately from //UE4/Orion-Staging)
	#rb Chris.Wood
	#tests none

Change 3019524 on 2016/06/20 by David.Ratti

	call APawn::OnRep_Controller when ClientRetryClientRestart sets the pawn directly

	#rb none
	#tests golden path

Change 3019406 on 2016/06/20 by Marcus.Wassmer

	Duplicate 3014956 from Dev-Rendering
	Fixed HLOD and mesh LODs getting hit by Lightmass ray traces that didn't originate from a mesh
	Volume lighting samples and precomputed visibility cells are now only placed on LOD0 (of both mesh LODs and HLOD)
	#rb none
	#test none
	#codereview Jordan.Walker

Change 3019371 on 2016/06/20 by Graeme.Thornton

	Optimize cooked asset registry dependency node data structures. Saves ~10mb on Paragon.

	#rb robert.manuszewski
	#tests tested with cooked pc client + server

Change 3018492 on 2016/06/17 by Laurent.Delayen

	FBoneReferenceCustomization: support editing properties in AnimBP defaults.

	#rb none
	#tests: Sword.

Change 3017974 on 2016/06/17 by Ryan.Gerleve

	Add an option to toggle deathcam in the gameplay settings UI if the OrionRuntimeOption for deathcam is enabled.

	#rb cody.haskell
	#tests settings menu, enabled and disabled deathcam

Change 3017913 on 2016/06/17 by Robert.Manuszewski

	Fixing leaked log archive.

	#rb Steve.Robb
	#tests Cooked Win64 client + server

Change 3017873 on 2016/06/17 by Daniel.Lamb

	Fix warning in diff cooked build.
	#test none
	#rb none

Change 3017676 on 2016/06/17 by Sam.Zamani

	#online,identity,mcp
	fix for uninitialized variable

	#rb dmitry.rekman
	#tests none

Change 3017671 on 2016/06/17 by Robert.Manuszewski

	Fxied and improved log message when cluster assumptions are violated.

	#rb Steve.Robb
	#tests Win64 client + server (cooked) golden path

Change 3017358 on 2016/06/16 by Nick.Atamas

	Checking in Darnell's change that adds correct geometry to widgets inside retainer widgets.

	#rb none
	#test PIE

Change 3017242 on 2016/06/16 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3017179

	#RB:none
	#Tests:none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	//Orion/Dev-General/OrionGame/Content/UI/Tooltips/Hero/AbilityTooltip.uasset - can't integrate exclusive file already opened
	#CodeReview: jason.bestimt

Change 3017237 on 2016/06/16 by Dmitry.Rekman

	Fix accessing uninitialized field (kills valgrind warnings).

	#rb none
	#codereview Michael.Noland, Andrew.Grant, Ori.Cohen
	#tests Compiled and ran Linux server.

Change 3017236 on 2016/06/16 by Dmitry.Rekman

	Initialize missed field (kills valgrind warnings).

	#rb none
	#codereview Michael.Noland, Andrew.Grant
	#tests Compiled and ran Linux server.

Change 3017186 on 2016/06/16 by Dmitry.Rekman

	Linux: Add hooks for libcrypto memory functions.

	- Libcurl uses OpenSSL, which allocates memory using libcrypto's CRYPTO_malloc() and apparently on purpose does not initialize it.
	- This change a) redirects these allocations to use UE's malloc  b) initializes it with zeros, avoiding valgrind's warnings.
	- This behavior is not used on Shipping configurations because the impact on entropy is not understood (TBD later).

	#rb Michael.Noland, Rob.Cannaday (original version)
	#codereview Michael.Noland, Rob.Cannaday, Alex.Fennel, Chris.Babcock, Sam.Zamani
	#tests Compiled Linux server and ran it.

Change 3017037 on 2016/06/16 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: andrew.grant
	Merging content fix for driver crash from Release-27

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

Change 3016838 on 2016/06/16 by Alexis.Matte

	#jira UE-31901 fix to export all blueprint component to obj

	#rb uriel.doyon
	#codereview matt.kuhlenschmidt
	#test export a blueprint containing multiple staticmesh component to obj

Change 3016629 on 2016/06/16 by Dmitry.Rekman

	Make Binned default on Linux non-editor builds.

	#codereview Andrew.Grant
	#rb none
	#tests none

Change 3016615 on 2016/06/16 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: andrew.grant
	Temporarily disabling jemalloc for Linux
	#rb #tests none
	[CodeReviewed] Dmitry.Rekman

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

Change 3016566 on 2016/06/16 by Michael.Noland

	Engine: Fixed a regression that broke safe zone debugging features in Windows by reintroducing code from CL# 2861030 that was accidentally deleted in a merge
	#codereview andrew.grant
	#rb dan.hertzka
	#tests Tested r.DebugSafeZone.Mode 1 with r.DebugSafeZone.TitleRatio 0.9 in PIE and confirmed that SSafeZone obeyed it and the red overlay appeared

Change 3016521 on 2016/06/16 by Ryan.Gerleve

	Client recoreded replay fixes and optimizations from Dev-Networking (and one from //UE4/Main), for deathcam.

	Includes the following CLs from Dev-Networking:
	2997908
	2998001
	2998832
	2999054
	2999057
	2999749
	3000051
	3001361
	3001365
	3004958
	3009972
	3009973

	And this CL from //UE4/Main:
	3015528

	#tests golden path, replays
	#rb john.pollard

Change 3016503 on 2016/06/16 by Brian.Karis

	Fixed uninitialized variables on particle lights. Fixes hair shading.

	#rb none
	#tests editor

Change 3016429 on 2016/06/16 by Max.Chen

	Sequencer: Fix StartTime when clamping start offset 0. Follow up to CL #3009386.

	#jira UE-29167
	#tests Load up AnnounceMaster and adjust leading edge of animation clips
	#rb Frank.Fella

Change 3016356 on 2016/06/16 by Lina.Halper

	- Fix crash on rampage morphtarget

	Merging using //UE4/Dev-Framework_to_//Orion/Dev-General
	 - this is dupe change from Dev-Framework

	#jira: https://jira.ol.epicgames.net/browse/OR-23194
	#rb: Ori.Cohen
	#tests: editor/pie spawn as rampage's alt skin

Change 3015696 on 2016/06/15 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 27.2 @ CL 3015646

	This re-unifies our build pipeline.  Fingers crossed. (only 6 files are actually different)

	#RB:none
	#Tests:none

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

Change 3015642 on 2016/06/15 by Mieszko.Zielinski

	Fixes to multiple reasons AI bots were getting stuck #Orion

	#rb Lukasz.Furman
	#test golden path

Change 3015622 on 2016/06/15 by Mieszko.Zielinski

	fixed FMetaNavMeshPath doing navmesh path update without checking nav agent if pathfinding should be postponed #UE4

	#rb Lukasz.Furman
	#test golden path

Change 3015514 on 2016/06/15 by Uriel.Doyon

	Fixed GlobalMipBias not affecting max texture resolution.
	This fix is implemented differently in Dev-Rendering in  CL 301498.
	#jira OR-23511
	#rb marcus.wassmer
	#test played game with different quality settings

Change 3015258 on 2016/06/15 by Lina.Halper

	Fix crash with recursive reference between two assets

	#rb: Ori.Cohen
	#tests: Sword

Change 3014988 on 2016/06/15 by Wes.Hunt

	Fix Cook Analytics to correctly use the Legacy provider since it sends to a local data collector.
	#rb daniel.lamb
	#tests compile Orion

Change 3014962 on 2016/06/15 by Olaf.Piesche

	Replicating CL 3013696 from Dev-Rendering; making quality level spawn rate scale work for GPU emitters.

	#rb simon.tovey
	#tests PC editor game

Change 3014958 on 2016/06/15 by Laurent.Delayen

	Added SkeletalMeshComponent::bIncludeComponentLocationIntoBounds to help in cases where SMU_OnlyTickPoseWhenRendered is set, and an animation pushed the mesh beyond the capsule.
	This ensures that when the capsule is in view, the mesh will remain updated.

	#rb Michael.Noland
	#test Sword ultimate from another player's view.

Change 3014833 on 2016/06/15 by Laurent.Delayen

	Fix for Base Heroes having their locomotion blendspace broken.

	#rb Thomas.Sarkanen
	#codereview Thomas.Sarkanen
	#tests Gadget networked PIE

Change 3014688 on 2016/06/15 by Nick.Darnell

	UMG - Fixing IsHovered on UUserWidgets.  SObjectWidget did not properly call the super for MouseEnter/MouseLeave allowing SWidget's implementation to set and unset the bool.

	#rb none
	#tests PIE

Change 3014325 on 2016/06/15 by Marcus.Wassmer

	Duplicate 3012706:
	Scalability CVAR for ContactShadows
	#rb john.billon
	#test flip cvar in editor.

Change 3014230 on 2016/06/15 by Robert.Manuszewski

	Fix potentially missing log output when serializing text of length equal to the async log writer buffer size.

	#rb Steve.Robb
	#tests Tested in editor build (client + server)

Change 3013913 on 2016/06/14 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Updating from DMM (updated from 27.1MM)

	#RB:none
	#Tests:compiled

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

Change 3013437 on 2016/06/14 by Simon.Tovey

	Speculative fix for OR-23158

	Couldnt' repro NANs but did see it reading garbage.

	Reinstated the check that direct accesses for particles in a zero size emitter will return null.
	Altered selection code to reselect when partilce is dead or returns null and to not allow new selection on zero size emitters.

	#tests GoldenPath, No broken fx and no more reading garbage.
	#rb Olaf.Piesche

Change 3013063 on 2016/06/14 by Jason.Bestimt

	#ORION_DG - Unclog robomerge from DMM Merge

	#RB:none
	#tests:none

Change 3012936 on 2016/06/14 by Rob.Cannaday

	Fix for multiple account login not kicking previous logins
	Client was not parsing response from backend.  Client was expecting content-type to be "application/json" (using FString::Equals).  Backend was returning "application/json;charset=UTF-8".  Changed usage from FString::Equals to FString::StartsWith
	#jira FORT-25452
	#rb sam.zamani
	#tests multiple account login, frontend only

	Merge from FN CL 3011647, plus fixing one other location expecting "application/json"

Change 3012696 on 2016/06/14 by Max.Chen

	Sequencer: Select actors for corresponding selected keys or sections.

	Copy from Dev-Sequencer

	#jira UE-30727
	#tests Load up AnnounceMaster and select keyframes
	#rb none

Change 3012691 on 2016/06/14 by Max.Chen

	Sequencer: Fix dragging the leading edge of a skeletal animation section so that it adjusts the start offset of the animation clip.

	Copy from Dev-Sequencer

	#jira UE-29167
	#tests Load up AnnounceMaster and adjust leading edge of animation clips
	#rb Frank.Fella

Change 3012690 on 2016/06/14 by Andrew.Grant

	Removed Linux work-around for memory stomp alignment
	#rb none
	#tests compiled

Change 3012687 on 2016/06/14 by Max.Chen

	Sequencer: Fix lower bound when doing post render tick so that the start of a shot doesn't render with the previous shot's time.

	Copy from Dev-Sequencer

	#rb none
	#tests Load up AnnounceMaster and played through sequence

Change 3012627 on 2016/06/14 by Mieszko.Zielinski

	Added logging of current MoveID to PathfollowingComponent's vlog snapshot #UE4

	#rb none
	#test golden path

Change 3012615 on 2016/06/14 by Mieszko.Zielinski

	Improved fix to BTDecorator_Blackboard's latent tasks aborting #UE4

	#rb Lukasz.Furman
	#test golden path

Change 3012572 on 2016/06/14 by Dmitry.Rekman

	Fix realloc with non-default alignment in jemalloc (OR-23541).

	- Removed obsolete check(), the code was already there since CL 1834526.

	#rb none
	#codereview Andrew.Grant, Robert.Manuszewski
	#tests none

Change 3012481 on 2016/06/14 by David.Ratti

	ability system #include fixups and move orion attribute capture marcros into base engine ability system execution class

	#rb none
	#tests ability system sample project

Change 3012457 on 2016/06/14 by Andrew.Grant

	Un-fix misaligned memory-stomp fix for Linux
	#rb none
	#tests compiled

Change 3012320 on 2016/06/14 by Graeme.Thornton

	Fixes for MemoryAnalyser2 solution
	 - Upgraded to VS 2015
	 - Clean up solution configurations. Only leave "Any CPU"
	 - Switch project to build with "Any CPU" rather than "x64".

	Reimplementation of CL 3012221 from Dev-Core

	#rb robert.manuszewski
	#tests opened the main window form correctly in visual studio

Change 3012316 on 2016/06/14 by Thomas.Sarkanen

	Fix copying non-POD structs in the fast path

	Prevents double-deletions of TArrays etc.

	#jira UE-31394 - Fix problems with non-POD UStructs using the anim BP fast-path
	#tests Played PIE & died as Sword in OrionEntry, Exited PIE.
	#rb Martin.Wilson

Change 3012187 on 2016/06/14 by Graeme.Thornton

	Corrected error message when not specifying linux server device command line correctly in UAT

	#rb Dmitry.Rekman
	#tests Checked error message was useful when wrong command line was specified

Change 3012026 on 2016/06/13 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3011936

	#RB:none
	#Tests:none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	//Orion/Dev-General/oriongame/Content/Characters/Heroes/Hammer/Abilities/Subjugate/FX/P_SubjugateSwirls.uasset - can't integrate exclusive file already opened
	#CodeReview: jason.bestimt

Change 3011969 on 2016/06/13 by Brian.Karis

	Tweaks for hair

Change 3011638 on 2016/06/13 by Andrew.Grant

	Fixed issue where RepLayout could use unaligned memoryfor property construction if allocator did not use a suitable default (fixes crash when running with MemStomp).

	Also added sanity check in UScriptStruct::InitializeStruct that memory is correctly aligned before calling constructor

	#codereview Dave.Ratti, John.Pollard
	#rb none
	#tests Ran with/without memstomp

Change 3011575 on 2016/06/13 by jason.bestimt

	#ORION_MAIN - Merge DUI @ CL 3011414

	NOTE - Card data was altered.  Shame shame shame.  Not authoritative in DUI

	#RB:none
	#Tests:none

	[CodeReviewed]: matt.schembari, kerrington.smith, sammy.james, matt.kuhlenschmidt

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 3011462 on 2016/06/13 by Alexis.Matte

	#jira UE-31901 The outputdevice is adding 2 uninitialize character at the end of any log, this is cause by the terminator logic. The fix is to not add those characters when no terminator should be add.

	#rb nick.darnell
	#codereview Robert.Manuszewski
	#test export a obj file and verify all object are exported in maya or max

Change 3011424 on 2016/06/13 by Martin.Wilson

	Hack out fastpath anim bp code until heap corruption issue can be fixed.

	#rb Laurent.Delayen
	#tests Persona + PIE

Change 3011191 on 2016/06/13 by Mieszko.Zielinski

	Added missing initialization of PathFollowingComponent::CurrentMoveInput #UE4

	#rb none
	#test golden path

Change 3011138 on 2016/06/13 by Mieszko.Zielinski

	Switched bots over from travel mode to sprinting #Orion

	#rb Lukasz.Furman
	#test golden path

Change 3011075 on 2016/06/13 by David.Ratti

	Default GameplayAbility instancing policy to InstancePerExecution

	#rb BenZ
	#tests compile

Change 3011051 on 2016/06/13 by David.Ratti

	Add missing include so GameplayAbilitySet.h can be included on its own.

	#rb none
	#tests compile

Change 3010968 on 2016/06/13 by Mieszko.Zielinski

	Fixed console variables crashing on "" string #UE4

	#rb Lukasz.Furman
	#codereview Martin.Mittring
	#test PIE

Change 3010888 on 2016/06/13 by Alexis.Matte

	#jira OR-23301 Close the OS handle when closing the FAsyncWriter.

	#rb Robert.Manuszewski
	#codereview Robert.Manuszewski
	#test try to export a obj file

Change 3010239 on 2016/06/11 by Michael.Noland

	UMG - Adding back the logic to use the normal WidgetTree when the DesignerWidgetTree is not defined. [duplicated fix from CL# 2998267]

	#jira UE-31570
	#tests Compiled some blueprints
	#rb none

Change 3009870 on 2016/06/10 by Wes.Hunt

	Remove logging of analytics payloads from dedicated servers #jira UE-31858
	#codereview:dmitry.rekman
	#rb none
	#tests All testing was done in Dev-Framework. This change was redone in this branch to get it here faster.

Change 3009599 on 2016/06/10 by Michael.Noland

	Rendering: Corrected a misleading help comment on r.StaticMeshLODDistanceScale, explaining how it affects LOD calculations (it multiplies the effective distance, so larger numbers make transitions happen sooner)
	#tests Verified in the output of the help command
	#rb none
	#rn

Change 3009559 on 2016/06/10 by Marcus.Wassmer

	Fix 11/11/10 SceneColorFormat option, enable AntiGhosting on TemporalAA, ensure TemporalAA output is the correct format for accumulating results.  Set SceneColorFormat to 2 on PS4 and lowspec PC.  All in all saves .3-.5ms on PS4 and improves temporalAA ghosting.
	#rb Brian.Karis
	#test Agora PS4 / PC

Change 3009525 on 2016/06/10 by David.Ratti

	Fix case where ObjectLIbrary would not be able to find classes when searching "/Game" path.

	#rb none
	#tests object libraries in paragon

Change 3009228 on 2016/06/10 by David.Ratti

	remove world check. Can be triggered in editor with PIE

	#rb none
	#tests pie

Change 3009050 on 2016/06/10 by Dmitry.Rekman

	Fix LinuxClient platform not being built on Windows, and not instantiating a target platform instance.

	- Fixes by BenM.

	#rb none
	#codereview Ben.Marsh
	#tests Compiled OrionEditor on Linux.

Change 3008973 on 2016/06/10 by Marcus.Wassmer

	Fix Windualshock on VS2015
	#rb Rolando.Caloca
	#test PS4 controller on VS2015 build

Change 3008970 on 2016/06/10 by David.Ratti

	Fix warning about minimal replication tag count
	-Made bit count a config setting. Bumped to 5
	-Minor optimization to UAbilitySystemGlobals::Get()

	#rb none
	#tests goldne path, pie

Change 3008478 on 2016/06/09 by Jason.Bestimt

	#ORION_DG - Merge MAIN @ CL 3008469

	#RB:none
	#Tests:none

Change 3008416 on 2016/06/09 by Andrew.Grant

	Adding 'config' as an option to set both clientconfig / serverconfig when using BuildCookRun
	#review-3008417 Ben.Marsh, Justin.Sargent
	#rb none
	#tests BuildCookRun with config

Change 3008286 on 2016/06/09 by Dmitry.Rekman

	Add LinuxClient target platform.

	#rb none
	#tests Compile OrionEditor on Linux.
	#codereview Brad.Angelcyk, Ben.Marsh

Change 3007978 on 2016/06/09 by jason.bestimt

	#ORION_MAIN - Merge DUI @ CL 3007507

	#RB:none
	#Tests:none

	[CodeReviewed]: matt.schembari, kerrington.smith

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

Change 3007771 on 2016/06/09 by Laurent.Delayen

	Fixed GetIntFromComp breaking with INDEX_NONE. Fixes crash in OrientationWarping node.

	#rb martin.wilson
	#codereview martin.wilson
	#tests Sword Leap.

Change 3007436 on 2016/06/09 by David.Ratti

	change designer facing parameter name
	#rb none
	#test compile

Change 3007408 on 2016/06/09 by David.Ratti

	WaitGameplayEffectBlockedImmunity - ability task for listening to immunity events

	#rb danY
	#tests pie

Change 3007250 on 2016/06/09 by bruce.nesbit

	Banner impact location fix. (OR-23179)

	#rb none

	#tests Game+PIE

Change 3007228 on 2016/06/09 by Ben.Marsh

	BuildGraph: Rename -SkipNodesWithoutTickets parameter to -SkipTargetsWithoutTickets, to reflect that it's filtering the list of targets rather than the full graph.

	#rb none
	#tests none

Change 3007225 on 2016/06/09 by Ben.Marsh

	EC: Set the -TicketSignature=... parameter for all BuildGraph jobs started by EC to the URL of the current job.

Change 3006985 on 2016/06/08 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3006936

	#RB:none
	#Tests:none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 3006926 on 2016/06/08 by Andrew.Grant

	Merging //UE4/Main @ 300872 via //UE4/Orion-Staging
	#rb none
	#tests engine QA, orion qa smoke

Change 3006444 on 2016/06/08 by Ben.Marsh

	BuildGraph: Add mechanism to specify that nodes can only be built once for a given changelist. Nodes can have an associated ticket file, and they are only permitted to build if the ticket is assigned to the current job. Tickets are created if they don't exist, and written with a signature specific to the job specified via the -TicketSignature="..." parameter. By default, builds will fail if a ticket has been already granted to another job, but the -SkipNodesWithoutTickets parameter instructs the graph to skip affected nodes instead.

	#rb none
	#tests none

Change 3006389 on 2016/06/08 by Daniel.Lamb

	Delay the processing of packages which aren't ready till the end of the cook.
	This allows other packages to be processed sooner.
	#rb Peter.Sauerbrei
	#test cook orion.

Change 3006306 on 2016/06/08 by Michael.Noland

	Rendering: Added FreezeRendering to the console autocomplete list
	#rn

Change 3006305 on 2016/06/08 by Michael.Noland

	HLOD: Added a way to control how far down the HLOD hierarchy to allow showing (can be used to limit quality loss and streaming texture memory usage on high scalability settings for example)
	Controlled by the new cvar r.HLOD.MaximumLevel, which can be set to the following values:
	-1: No maximum level (default)
	0: Prevent ever showing a HLOD cluster instead of individual meshes
	1: Allow only the first level of HLOD clusters to be shown
	2+: Allow up to the Nth level of HLOD clusters to be shown

	Note: This does not affect the memory used by the HLOD meshes itself or their always loaded low mip levels, it will only save the memory associated with streaming in the higher mip levels

	HLOD: Allowed r.HLOD console command to be used in Test configurations
	HLOD: Removed some dead code in ALODActor and scene view / scene proxy relating to a different way to force visualization that has no trigger
	HLOD: Fixed an uninitialized memory bug in the static mesh scene proxy HLODcoloration visualization code

	#rn
	#codereview jurre.debaare
	#rb marc.audy
	#tests Tested with various settings in Paragon and tried creating some new clusters in the editor

Change 3006304 on 2016/06/08 by Michael.Noland

	Engine: Changed the code in AActor::IncrementalRegisterComponents to obey bAutoRegister for the root component rather than asserting that it is true. Note: If children components have bAutoRegister=true, they will still pull the root component into the fray and cause it to be registered first
	#rb marc.audy
	#tests Tested with code that registers or unregisters HLOD clusters at varying levels in Paragon

Change 3006041 on 2016/06/08 by Andrew.Grant

	Added buildidoverride to shipping whitelist
	#rb none
	#tests compiled and used param in shipping

Change 3005678 on 2016/06/08 by Ben.Marsh

	Back out changelist 3004395

	#rb none
	#tests none

Change 3005265 on 2016/06/07 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3005120

	#RB: none
	#Tests: none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 3005081 on 2016/06/07 by Daniel.Lamb

	Reworked the way packages which are renamed on load are added to the cooked package list.
	Cooker now has options for MaxMemoryAllowance as a percentage and also MinFreeMemory (which takes into account used system memory not just total system memory).
	#rb Andrew.Grant, Marcus.Wasmer
	#test cook orion

Change 3004752 on 2016/06/07 by Daniel.Lamb

	Requeue packages to the next package on the list instead of to the end of the list.
	#rb Andrew.Grant
	#test cook orion

Change 3004560 on 2016/06/07 by David.Ratti

	Kill timelines, latent actions, timer when recycling gameplay cues

	#rb danY
	#tests pie

Change 3004559 on 2016/06/07 by David.Ratti

	Object Library:
	-Added bool bIncludeOnlyOnDiskAssets that can be set by owner. Passed on to the AR filter when gathering assets.

	GameplayCue Editor:
	-Fix issue with new notifies not showing up after being created through the GC Editor (until restart).

	-Fix issue for new projects, that don't have gameplayclue tags defined, not being able to add gameplay cue tags through the editor without restarting once.

	#rb none
	#tests editor

Change 3004395 on 2016/06/07 by Ben.Marsh

	BuildGraph: Add a script function to ensure exclusive access to a given resource. The AcquireLockFile() function takes two arguments; a path to a text file, and the name of an owner. The file is created and the owner name written to it if it doesn't already exist, otherwise the contents of it are compared against the given owner string. The operation happens transactionally, and the function returns true if file contains the given owner string on exit. Logical and/or conditions are now also short-circuited, so the result of the AcquireLockFile() function can be used to control derived property definitions within an executing job.

	#rb none
	#tests none

Change 3004164 on 2016/06/07 by David.Ratti

	Ability system: use player controller netmode over avatar actor when possible. Fixes issue if torn off, authority, client side actor tries to activate an ability.

	#rb danY
	#tests multi pie

Change 3003837 on 2016/06/07 by David.Ratti

	Ability system engine work
	-Default to /Game as search path for gameplay cues, if no explicit paths are set in the config.

	#rb none
	#tests ability sample project

Change 3002800 on 2016/06/06 by Marcus.Wassmer

	Fix shader crash in PIE
	#rb none
	#test PIE

Change 3002657 on 2016/06/06 by Dmitry.Rekman

	Do not copy to clipboard on crash if headless or on the wrong thread.

	- Could result in crash handler crashing itself in some circumstances.

	#rb none
	#codereveiw Brad.Angelcyk
	#tests Compiled Linux dedicated server and CrashReportClient.

Change 3002546 on 2016/06/06 by Daniel.Lamb

	Improve cooking performance.
	Allow cooker to save other packages opportunistically if main package is compiling shaders.
	Allow cooker to load more packages if there aren't many packages to save.
	#rb Josh.Adams
	#test cook orion

Change 3002369 on 2016/06/06 by Marcus.Wassmer

	Project setting for optional rendering features to reduce shader compile times.
	# of shaders per material is reduced by ~30-40% depending on material
	#rb Daniel.Wright
	#test Editor with/without all options, cooked ps4.

Change 3002142 on 2016/06/06 by David.Ratti

	Ability system engine level:
	-Fix crash when gameplay cue editor starts if there are no gameplay cue paths specified
	-Fix crash when GameplayCue tag is not specified

	#rb none
	#tests sample ability system project, paragon

Change 3002106 on 2016/06/06 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: sam.zamani
	#orion
	- add support for code tokens which can be shared/redeemed
	- refactor of existing friend founder's pack codes to be displayed in a generic way using code token info
	- added CodeToken.FounderFriendInviteT0 for new paragon tier 0 code which grants access to game without also giving a Founder's pack
	- added CodeToken.FounderFriendInviteT1 to replace existing CodeToken.FriendPC and CodeToken.FriendPS4 Founder's pack codes. Existing codes aliased to the new CodeToken.FounderFriendInviteT1 code
	- No longer differentiation between PC/PS4 friend codes
	- "Share Friend Code" button will now process all available codes that can be issued instead of just 1
	- updated Orion service Mcp call for getUnredeemedCodes() to ignore the code template id and return all available codes. Each returned code will also include the type

	[CodeReviewed]: david.nikdel, jason.bestimt
	#rb david.nikdel
	#tests PC PIE using localhost and profile proxy for granting codes, also existing account with legacy codes

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

Change 3001218 on 2016/06/05 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3001162

	#RB:none
	#Tests:none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 2999508 on 2016/06/03 by jason.bestimt

	#ORION_MAIN - Merge 27 @ CL 2999463

	#RB:none
	#Tests:none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	//Orion/Dev-General/OrionGame/Content/Audio/ClassesAndMixes/Classes/Master.uasset - can't integrate exclusive file already opened
	#CodeReview: jason.bestimt

Change 2999465 on 2016/06/03 by Robert.Manuszewski

	Whitelisting more DLLs for injection.

	#rb none
	#tests none

Change 2999455 on 2016/06/03 by Lukasz.Furman

	disabled path invalidation events for minions
	#orion
	#rb Mieszko.Zielinski
	#tests PIE with additional debug logging

Change 2998488 on 2016/06/02 by Michael.Noland

	Engine: Prevent forced drawing of spline components in Test configuration
	#codereview james.golding
	#tests Ran a cooked Test build on a map with splines in it
	#rb david.ratti
	#robomerge: main

Change 2997954 on 2016/06/02 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jon.lietz
	OR-22425

	no longer try to updat the tag map and modifiers when the gameplay effect that is being removed was not active.

	#RB Dave.Ratti
	#Tests golden path

	#ROBOMERGE-SOURCE: CL 2997940 in //Orion/Release-0.27/... via CL 2997943
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2997750 on 2016/06/02 by Graeme.Thornton

	Add FPakFile::Check() that attempts to open and read the data out of every file in a pak, to check for corruption
	Added -checkpak option for force a check of every mounted pak file

	#rb robert.manuszewski
	#tests tested against cooked pc client. made sure my data succeeded. made sure corrupted data throws an error.

[CL 3031715 by Andrew Grant in Main branch]
2016-06-28 17:59:42 -04:00
Gil Gribb
0b102492a9 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3028916)
#lockdown nick.penwarden

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

Change 3006483 on 2016/06/08 by Simon.Tovey

	Fix for UE-31653
	Instance params from the Spawn, Required and TypeData modules were not being autopopulated.

Change 3006514 on 2016/06/08 by Zabir.Hoque

	MIGRATING FIX @ Request

	Off by 1 error on reflection roughness calculation affecting 4.12. When I hoisted the max mip index i did a -1 on both sides(c++ & hlsl). This is the simplest hotfix. In 4.13 I'll remove the shader instruction and only do the "-1" in c++ this 1 less shader instruction.

	#CodeReview: Marcus.Wassmer, Daniel.Wright

Change 3006605 on 2016/06/08 by Rolando.Caloca

	DR - vk - Remove a bunch of unused code, clean up some todos

Change 3006969 on 2016/06/08 by HaarmPieter.Duiker

	Add #ifdefs around inverse tonemapping to avoid performance hit in normal use

Change 3007240 on 2016/06/09 by Chris.Bunner

	Made a pass at fixing global shader compile warnings and errors.

Change 3007242 on 2016/06/09 by Chris.Bunner

	Don't force unlit mode when re-loading a map.
	#jira UE-31247

Change 3007243 on 2016/06/09 by Chris.Bunner

	Cache InvalidLightmapSettings material for instanced meshes.
	#jira UE-31182

Change 3007258 on 2016/06/09 by Chris.Bunner

	Fixed refractive depth bias material parameter.

Change 3007466 on 2016/06/09 by Rolando.Caloca

	DR - Use vulkan debug marker extension directly from header

Change 3007504 on 2016/06/09 by Martin.Mittring

	added refresh button to ImageVerifier

Change 3007528 on 2016/06/09 by Martin.Mittring

	ALU optimization to SSR, minor perf difference on NVTitan, needs to to be profiled on lower end
	make render more deterministic

Change 3007551 on 2016/06/09 by Chris.Bunner

	Reverted constant type change in previous commit.

Change 3007559 on 2016/06/09 by Martin.Mittring

	updated ImageValidator

Change 3007584 on 2016/06/09 by Rolando.Caloca

	DR - Fix case when not running under RD

Change 3007668 on 2016/06/09 by Rolando.Caloca

	DR - vk - Split layers/extensions by required/optional

Change 3007820 on 2016/06/09 by Rolando.Caloca

	DR - Android compile fix

Change 3007926 on 2016/06/09 by Martin.Mittring

	fixed UI scaling in ImageVerifyer

Change 3007931 on 2016/06/09 by John.Billon

	-Fixed cutouts not working for certain sized texture/subUV size combinations.
	-Also fixed issue with subUV module not being postloaded consistently on startup.
	#Jira UE-31583

Change 3008023 on 2016/06/09 by Martin.Mittring

	refactor noise code in shaders

Change 3008127 on 2016/06/09 by Zabir.Hoque

	Merging back hot fixes:

	1. Fix DX12 crashing due to oclusion queries waiting on incorrect sync point. Integrating change from MS.

	2. Immediate context should flush directly and not attempt to flush the immediate context, ie. itself.

Change 3008129 on 2016/06/09 by Daniel.Wright

	Disabled r.ProfileGPU.PrintAssetSummary by default due to spam

Change 3008169 on 2016/06/09 by Rolando.Caloca

	DR - Fix mobile rendering not freeing resource when using RHI thread

Change 3008429 on 2016/06/09 by Uriel.Doyon

	Enabled texture streaming new metrics.
	Added progress bar while texture streaming is being built.
	Added debug shader validation to prevent crashes when there are uniform expression set mismatches.
	Added texture streaming build to "Build All"

Change 3008436 on 2016/06/09 by Uriel.Doyon

	Fixed shipping build

Change 3008833 on 2016/06/10 by Rolando.Caloca

	DR - Allow RenderTargets to be easily shared via GPU to other DX or OpenGL applications
	Submitted by Allar
	PR #1864
	#jira UE-24545

Change 3008842 on 2016/06/10 by Rolando.Caloca

	DR - Remove vertex densities view mode

Change 3008857 on 2016/06/10 by John.Billon

	Added a PostLoad to ParticleModuleSubUV to call postload on the SubUV animation to ensure that the animation is loaded in time for caching.

Change 3008870 on 2016/06/10 by Rolando.Caloca

	DR - Rebuild hlslcc libs (missing from last merge)

Change 3008925 on 2016/06/10 by John.Billon

	Fixed r.ScreenPercentage.Editor
	#Jira UE-31549

Change 3009028 on 2016/06/10 by Daniel.Wright

	Shadow depth refactor
	* Shadow setup and render target allocation now happens in InitViews, and shadow depth rendering happens at one spot in the frame
	* This provides control over where shadow depths are rendered for things like async compute, and allows easy atlasing of shadowmaps for forward shading
	* The 33Mb of shadow depth buffers in FSceneRenderTargets has been removed, and shadow depth buffers are now allocated as needed
	* A large amount of duplicated code to handle each shadow type has been combined
	* Cleaner parallel rendering: no more view hacking for the shadow depth pass, no more shadow depths in the middle of translucency
	* 'vis ShadowDepthAtlas' or 'vis WholeSceneShadowMap' must now be used to visualize the shadow depth textures

Change 3009032 on 2016/06/10 by Daniel.Wright

	Fixed crash with simple forward shading in the material editor

Change 3009178 on 2016/06/10 by Rolando.Caloca

	DR - Add support for multi callbacks on HlslParser, added a write to string callback

Change 3009268 on 2016/06/10 by Daniel.Wright

	Warning fixes

Change 3009416 on 2016/06/10 by Martin.Mittring

	moved decal rendering code in common spot for upcoming MeshDecal rendering

Change 3009433 on 2016/06/10 by John.Billon

	Adding ensures for translucency lighting volume render target acesses.
	#Jira UE-31578

Change 3009449 on 2016/06/10 by Daniel.Wright

	Fixed whole scene point light shadow depths getting rendered redundantly

Change 3009675 on 2016/06/10 by Martin.Mittring

	fixed Clang compiling

Change 3009815 on 2016/06/10 by Martin.Mittring

	renamed IsUsedWithDeferredDecal to IsDeferredDecal
	to be more correct

Change 3009946 on 2016/06/10 by Martin.Mittring

	minor optimization

Change 3010270 on 2016/06/11 by HaarmPieter.Duiker

	Update gamut transformations used when dumping EXRs to account for bug UE-29935

Change 3011423 on 2016/06/13 by Martin.Mittring

	fixed default of bOutputsVelocityInBasePass
	#code_review:Rolando.Caloca
	#test:PC

Change 3011448 on 2016/06/13 by Martin.Mittring

	minor engine code cleanup
	#code_review:Olaf.Piesche
	#test:PC

Change 3011991 on 2016/06/13 by Daniel.Wright

	Fixed downsampled translucency crash in VR

Change 3011993 on 2016/06/13 by Daniel.Wright

	Stationary Mobility for primitive components is allowed again, with the meaning 'moves rarely'
	Mobility tooltips now reflect whether a primitive component or light component is being inspected

Change 3012096 on 2016/06/13 by Daniel.Wright

	Missing file from cl 3011993

Change 3012546 on 2016/06/14 by John.Billon

	Added r.ContactShadows.Enable CVar to allow contact shadows to be globally disabled/enabled
	#Jira OR-23282

Change 3012706 on 2016/06/14 by John.Billon

	Renamed r.ContactShadows.Enable to r.ContactShadows

Change 3012992 on 2016/06/14 by Rolando.Caloca

	DR - vk - Fixed backbuffer/swapchain order with RHI thread enabled
	- Added support for CustomPresent

Change 3013030 on 2016/06/14 by Rolando.Caloca

	DR - vk - Fix dev issue

Change 3013423 on 2016/06/14 by Martin.Mittring

	removed code redundancy for easier upcoming changes
	#test:PC

Change 3013451 on 2016/06/14 by Martin.Mittring

	removed no longer needed debug cvar
	#test:PC

Change 3013643 on 2016/06/14 by Zabir.Hoque

	Fix API only being inlined in the cpp and not avaialble in the .h

Change 3013696 on 2016/06/14 by Olaf.Piesche

	Adding missing quality level spawn rate scaling on GPU emitters

Change 3013736 on 2016/06/14 by Daniel.Wright

	Cached shadowmaps for whole scene point and spot light shadows
	* Controlled by 'r.Shadow.CacheWholeSceneShadows', defaults to enabled (7ms -> 1.5ms of shadow depths on Titan for ~20 lights)
	* Primitives with Static or Stationary mobility have their depths cached, as long as the light is not moving
	* Primitives with Movable mobility or using World Position Offset in their materials will not have their depths cached
	* Cached shadowmaps are copied each frame and then movable primitive depths composited
	* Fast paths exist for when there were no static primitives (skip cached shadowmap) or movable primitives (project directly from cached shadowmap)
	* 'r.Shadow.CacheWPOPrimitives' controls whether materials using WPO can be cached (default is off for correctness)
	* 'r.Shadow.CachedShadowsCastFromMovablePrimitives' can be used to force off all support for movable primitives, skipping the shadowmap copies (1.5ms -> 0ms of shadow depths for ~20 lights)

Change 3014103 on 2016/06/15 by Daniel.Wright

	Compile fix

Change 3014507 on 2016/06/15 by Simon.Tovey

	Resurrected Niagara playground and moved to Samples/NotForLicencees

Change 3014931 on 2016/06/15 by Martin.Mittring

	moved r.RenderInternals code into renderer to be able to access more low level data
	#test:PC, paragon

Change 3014933 on 2016/06/15 by Martin.Mittring

	nicer text

Change 3014956 on 2016/06/15 by Daniel.Wright

	Fixed HLOD and mesh LODs getting hit by Lightmass ray traces that didn't originate from a mesh
	Volume lighting samples and precomputed visibility cells are now only placed on LOD0 (of both mesh LODs and HLOD)

Change 3014985 on 2016/06/15 by Uriel.Doyon

	Enabled Texture Build shaders on Mac
	Exposed IStreamingManager::AddViewSlaveLocation in ENGINE_API
	Fixed issue FStreamingManagerTexture::ConditionalUpdateStaticData which would to update some data in shipping.
	Fixed r.Streaming.MipBias not affecting maximum allowed resolution, showing warnings of texture streaming overbudgets
	#jira UE-30566
	#jira UE-31098

Change 3014995 on 2016/06/15 by Rolando.Caloca

	DR - vk - Removed RHI thread wait on acquire image
	- Move Descriptor pool into context

Change 3015002 on 2016/06/15 by Rolando.Caloca

	DR - Add (disabled) additional cvar for r.DumpShaderDebugWorkerCommandLine

Change 3015041 on 2016/06/15 by Martin.Mittring

	fixed ImageValidator crashing when using files that exist only in ref or test folder

Change 3015309 on 2016/06/15 by Rolando.Caloca

	DR - vk - Enable fence re-use on SDKs >= 1.0.16.0

Change 3015356 on 2016/06/15 by Rolando.Caloca

	DR - vk - Prep for staging buffer refactor

Change 3015430 on 2016/06/15 by Martin.Mittring

	minor optimization for subsurfacescatteringprofile

Change 3016097 on 2016/06/16 by Simon.Tovey

	Enabling Niagara by default in the Niagara playground

Change 3016098 on 2016/06/16 by Simon.Tovey

	Some misc fixup to get niagara working again

Change 3016183 on 2016/06/16 by Rolando.Caloca

	DR - vk - Recreate buffer view for volatile buffers

Change 3016225 on 2016/06/16 by Marcus.Wassmer

	Duplicate reflection fixes from 4.12 hotfixes.

Change 3016289 on 2016/06/16 by Chris.Bunner

	Always gather MP_Normal definitions as they can be shared by other material properties.
	#jira UE-31792

Change 3016294 on 2016/06/16 by Daniel.Wright

	Fix for ensure accessing CVarCacheWPOPrimitives in game

Change 3016305 on 2016/06/16 by Daniel.Wright

	Raised r.Shadow.CSM.MaxCascades to 10 on Epic scalability level, which it should have always been

Change 3016330 on 2016/06/16 by Daniel.Wright

	Cached shadowmaps are tossed after 5s of not being used for rendering - helps in the case where you fly through a bunch of lights and never look back
	Skipping shadow depth cubemap clear if there will be a cached shadowmap copy later - saves .4ms on PS4 for a close up point light
	Stats for shadowmap memory used under 'stat shadowrendering'

Change 3016506 on 2016/06/16 by Daniel.Wright

	Fixed crash building map in SunTemple due to null access

Change 3016703 on 2016/06/16 by Uriel.Doyon

	Fixed warning due to floating point imprecision when building texture streaming

Change 3016718 on 2016/06/16 by Daniel.Wright

	Volume lighting samples use adaptive sampling final gather
	* Increases their build time by 2x but improves quality in difficult cases (small bright sources of bounce lighting)

Change 3016871 on 2016/06/16 by Max.Chen

	Sequencer: Added support for the named "PerformanceCapture" event which like Matinee, calls GEngine->PerformanceCapture to output a screenshot when the event fires. Refactor event track/sections so that the player is passed to the trigger events evaluation.

	Copy from Dev-Sequencer

	#jira UE-32093

Change 3017189 on 2016/06/16 by Zabir.Hoque

	Fix GBuffer format selection type-o.

	#CodeReview: Marcus.Wassmer

Change 3017241 on 2016/06/16 by Martin.Mittring

	optimized  and cleaned up rendering in transluceny, distortion, custom mesh drawing
	#code_review:Daniel.Wright, Marcus.Wassmer, Nick.Penwarden

Change 3017856 on 2016/06/17 by Rolando.Caloca

	DR - Missing GL enum

Change 3017910 on 2016/06/17 by Ben.Woodhouse

	- Added a Video Buffer to ensure smooth submission of frames from CEF. Without this, we can get multiple texture updates per engine frame, which causes stuttering at high framerates
	- Disable hardware acceleration on Windows, since this causes severe performance issues with video rendering
	Please note: To actually see 60fps video, you need to ensure the browser frame rate passed into FWebBrowserSingleton::CreateBrowserWindow is set to 60 (default is 24)
	#RB:Keli.Hloedversson,Martin.Mittring

Change 3018126 on 2016/06/17 by Ben.Woodhouse

	Fix build warning on Mac
	#RB:David.Hill

Change 3018167 on 2016/06/17 by Chris.Bunner

	Handle case when float4 is passed to TransformPosition material node.
	#jira UE-24980

Change 3018246 on 2016/06/17 by Benjamin.Hyder

	Submitting Preliminary ShadowRefactor TestMap

Change 3018330 on 2016/06/17 by Benjamin.Hyder

	labeled ShadowRefactor map

Change 3018377 on 2016/06/17 by Chris.Bunner

	Removed additional node creation when initializing a RotateAboutAxis node.
	#jira UE-8034

Change 3018433 on 2016/06/17 by Rolando.Caloca

	DR - Fix some clang warnings on Vulkan

Change 3018664 on 2016/06/17 by Martin.Mittring

	unified some code for easier maintainance, fixed missing multiply from former change (CL 2933812)
	#test:PC
	#code_review:Marcus.Wassmer,Brian.Karis

Change 3019023 on 2016/06/19 by Benjamin.Hyder

	Re-Labeled ShadowRefactor map

Change 3019024 on 2016/06/19 by Benjamin.Hyder

	Correcting Translucent Volume (Non-Directional) settings

Change 3019026 on 2016/06/19 by Benjamin.Hyder

	Correcting Lighting ShadowRefactor map

Change 3019414 on 2016/06/20 by Allan.Bentham

	Refactor mobile shadows

Change 3019494 on 2016/06/20 by Gil.Gribb

	Merging //UE4/Dev-Main@3018959 to Dev-Rendering (//UE4/Dev-Rendering)

Change 3019504 on 2016/06/20 by John.Billon

	-Created a blueprint node (ExportRenderTarget and ExportTexture2D) to export render targets/textures as HDR images to disk.
	-Moved HDR export code(FHDRExportHelper and CubemapUnwrapUtils) to runtime from editor to allow access from blueprints.
	-Created a small common interface for blueprints and the editor itself to use for exporting.
	#Jira UE-31429

Change 3019561 on 2016/06/20 by Gil.Gribb

	UE4 - Worked around afulness of windows scheduler. This would occasionally cause hitches on quad core machines with additional load in the tick task manager.

Change 3019616 on 2016/06/20 by Rolando.Caloca

	DR - Replicate change in DevRendering to fix splotches on characters with morph targets
	Change: 3019599
	O - Fix flickering on heroes with morph targets

Change 3019627 on 2016/06/20 by Rolando.Caloca

	DR - Doh! Compile fix

Change 3019674 on 2016/06/20 by Simon.Tovey

	Ripped out the quick hacky VM debugger I wrote a while back.
	Over complicated the VM and didn't do enough work to justify it.
	Will revisit debugging and profiling of VM scripts in future.

Change 3019691 on 2016/06/20 by Ben.Woodhouse

	Add a per-object shadow setting for directional lights (r.Shadow.PerObjectDirectionalDepthBias), which is independent of the CSM setting. Often a smaller bias is desirable on per-object shadows, where detailed self-shadowing is needed.

	This change also makes the CSM naming consistent with what the setting actually does (the old setting was named r.shadow.csm, although it affects per-object shadows as well as CSMs).
	#RB:Martin.Mittring, Daniel.Wright

Change 3019741 on 2016/06/20 by John.Billon

	Fixed compile error on mac.

Change 3019984 on 2016/06/20 by Martin.Mittring

	minor optimization

Change 3020172 on 2016/06/20 by Zachary.Wilson

	Fixing mesh distance fields for engine content cube and cylinder by setting distance field resolution to 2. for UE-26783 #rb: none

Change 3020195 on 2016/06/20 by Zachary.Wilson

	Fixing engine coontent sphere's distance fields for UE-26783, distance fields resolution set to 2. #rb: none

Change 3020196 on 2016/06/20 by Rolando.Caloca

	DR - Appease static analysis

Change 3020231 on 2016/06/20 by Zachary.Wilson

	Making basic shapes consistent distance field resolution scale.  #rb: none

Change 3020468 on 2016/06/20 by David.Hill

	CameraWS  UE-29146

Change 3020502 on 2016/06/20 by Benjamin.Hyder

	Adding AutomationMatinee Camera for RenderOutputValidation

Change 3020508 on 2016/06/20 by Benjamin.Hyder

	Adding AutomationMatinee for RenderOutputValidation

Change 3020514 on 2016/06/20 by Benjamin.Hyder

	Setting Autoplay for AutomationMatinee (sequence)

Change 3020561 on 2016/06/20 by Daniel.Wright

	Removed outdated comment on uniform expression assert

Change 3021268 on 2016/06/21 by Daniel.Wright

	Scaled sphere intersection for indirect capsule shadows
	* Fixes the discontinuity when capsule axis points close to the light direction
	* GPU cost is effectively the same (more expensive to compute, but tighter culling)

Change 3021325 on 2016/06/21 by Daniel.Wright

	Split ShadowRendering.cpp into ShadowDepthRendering.cpp

Change 3021355 on 2016/06/21 by Daniel.Wright

	Fixed RTDF shadows (broken by shadowmap caching)

Change 3021444 on 2016/06/21 by Daniel.Wright

	Fixed crash due to Depth drawing policy not using the default material shader map properly

Change 3021543 on 2016/06/21 by Daniel.Wright

	Fixed drawing to a Canvas after EndDrawCanvasToRenderTarget causing a crash
	Fixed DrawMaterialToRenderTarget breaking the Canvas object that BeginDrawCanvasToRenderTarget returns

Change 3021749 on 2016/06/21 by Daniel.Wright

	Moved RenderBasePass and dependencies into BasePassRendering.cpp
	Moved RenderPrePass and dependencies into DepthRendering.cpp

Change 3021766 on 2016/06/21 by Benjamin.Hyder

	Adding 150dynamiclights level to Dev-Folder

Change 3021971 on 2016/06/21 by Daniel.Wright

	Removed the CPU-culled light grid which is used to implement TLM_SurfacePerPixelLighting, in preparation for a GPU-culled light grid implementation
	* TLM_SurfacePerPixelLighting now behaves like TLM_Surface

Change 3022760 on 2016/06/22 by Chris.Bunner

	Merge fixup.

Change 3022911 on 2016/06/22 by Rolando.Caloca

	DR - Added  r.D3DDumpD3DAsmFile to enable dumping the fxc disassembly when dumping shaders

Change 3023037 on 2016/06/22 by Rolando.Caloca

	DR - Fix for the case of global destructors calling FlushRenderingCommands() after the RHI has been destroyed

Change 3023139 on 2016/06/22 by Daniel.Wright

	Added on screen message for when VisualizeMeshDistanceFields is requested but engine scalability settings have DFAO disabled

Change 3023231 on 2016/06/22 by Daniel.Wright

	Only allowing opaque per-object shadows or CSM in the mobile renderer

Change 3023415 on 2016/06/22 by Daniel.Wright

	Fix crash in dx12 trying to clear stencil when there is no stencil in the depth target

Change 3024888 on 2016/06/23 by Daniel.Wright

	Fixed preshadows being rendered redundantly with multiple lights

Change 3025119 on 2016/06/23 by Martin.Mittring

	added MeshDecal content to RenderTest

Change 3025122 on 2016/06/23 by Martin.Mittring

	enabled DBuffer for RenderTest

Change 3025153 on 2016/06/23 by Marc.Olano

	Fix Spherical Particle Opacity. Particles using this stopped rendering sometime after 4.10.
	Needed to use world space without shader offsets, not absolute world space.

Change 3025180 on 2016/06/23 by Marc.Olano

	Use translated world space for particle centers.
	Better fix for Spherical Particle Opacity problems, but with fingers in more pies. Includes rename of particle center vertex factory variables.

Change 3025265 on 2016/06/23 by David.Hill

	Bilbords translucent during PIE  - lighting model was incorrectly set in gbuffer
	#jira UE-26165

Change 3025269 on 2016/06/23 by Ryan.Brucks

	Adding new Testmap for Pixel Depth Offset velocities with Temporal AA

Change 3025345 on 2016/06/23 by Benjamin.Hyder

	Submitting MeshDecal Content

Change 3025444 on 2016/06/23 by Benjamin.Hyder

	updating content for MeshDecal

Change 3025491 on 2016/06/23 by Benjamin.Hyder

	Updating DecalMesh Textures

Change 3025802 on 2016/06/23 by Martin.Mittring

	added to readme

Change 3026475 on 2016/06/24 by Rolando.Caloca

	DR - Show current state of r.RHIThread.Enable when not using param

Change 3026479 on 2016/06/24 by Rolando.Caloca

	DR - Upgrade glslang to 1.0.17.0

Change 3026480 on 2016/06/24 by Rolando.Caloca

	DR - Vulkan headers to 1.0.17.0

Change 3026481 on 2016/06/24 by Rolando.Caloca

	DR - Vulkan wrapper for extra logging

Change 3026491 on 2016/06/24 by Rolando.Caloca

	DR - Missed file

Change 3026574 on 2016/06/24 by Rolando.Caloca

	DR - vk - Enabled fence reuse on 1.0.17.0
	- Added more logging info

Change 3026656 on 2016/06/24 by Frank.Fella

	Niagara - Prevent sequencer uobjects from being garbage collected.

Change 3026657 on 2016/06/24 by Benjamin.Hyder

	Updating Rendertestmap to latest

Change 3026723 on 2016/06/24 by Rolando.Caloca

	DR - Fix for ES3.1 RHIs

Change 3026784 on 2016/06/24 by Martin.Mittring

	New feature: Mesh Decals / Material layers (Chris.Bunner is the goto person on MeshDecals from now on)

Change 3026866 on 2016/06/24 by Olaf.Piesche

	#jira OR-18363
	#jira UE-27780
	fix distortion in particle macro uvs

[CL 3028922 by Gil Gribb in Main branch]
2016-06-27 13:42:20 -04:00
Gil Gribb
f2a51068c0 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 2998063)
#lockdown nick.penwarden

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

Change 2981877 on 2016/05/18 by Rolando.Caloca

	DR - Fix some PVS warnings
	- Removed 'uniform' as a keyword on hlslcc as it's ignored/causes issues/doesn't really optimize
	#jira UE-30996

Change 2981966 on 2016/05/18 by Rolando.Caloca

	DR - Fix OpenGL crash quitting editor
	#jira UE-25549

Change 2982072 on 2016/05/18 by Uriel.Doyon

	Fixed a "Build Texture Streaming" crash related to custom outputs.
	Fixed issue with debug view mode and translucent primitives
	Fix bug with visibility that made some texture low res.
	Enabled per instance visibility in the texture streaming order (in game only).
	Improved InvestigateTexture Logs.
	Tweaked the mip computations from screen size.

Change 2982077 on 2016/05/18 by Uriel.Doyon

	Removed debug options!

Change 2982108 on 2016/05/18 by Olaf.Piesche

	#jira UE-30772
	moving AMD hacks to console variables

Change 2982422 on 2016/05/18 by Gil.Gribb

	UE4 - Potential crash fix on foliage occlusion queries and reflection captures.

Change 2982547 on 2016/05/18 by Martin.Mittring

	UE-26409 Crash when Light Propagation Volume Plugin is disabled on a Project

Change 2982548 on 2016/05/18 by Martin.Mittring

	Refactored MRT and outer Pixel Shader output to a struct
	to allow it passed in/out of functions allowing for a more readable code (less #ifdefs, reducing the boolean hell)
	Needed for upcoming MeshDecals

Change 2982601 on 2016/05/18 by Daniel.Wright

	Movable skylight now matches stationary for subsurface shading models
	* Two sided was broken in 4.11, Subsurface had never been handled

Change 2982603 on 2016/05/18 by Daniel.Wright

	DrawMaterialToRenderTarget / BeginDrawCanvasToRenderTarget now work correctly with material parameter collections and Time
	* FCanvas stores an optional scene to render to, UWorld caches the UCanvas needed for implementing these functions

Change 2982618 on 2016/05/18 by Daniel.Wright

	Better categories for some Rendering project settings

Change 2982619 on 2016/05/18 by Daniel.Wright

	Scene capture 2d improvements
	* Orthographic projection supported
	* Opacity is now captured in alpha, allows partial rendering in a scene capture and compositing into another scene later
	* Various GBuffer attributes are now available to be captured, including depth
	* Changed Blueprint capture function to CaptureScene, which happens immediately (was previously deferred), allowing multiple captures with different parameters

Change 2982664 on 2016/05/18 by Daniel.Wright

	Fading out planar reflections based on roughness since they don't have support for variable roughness (fade starts at .2 roughness, ends at .3)

Change 2982684 on 2016/05/18 by Martin.Mittring

	polish ImageValidator

Change 2982685 on 2016/05/18 by Martin.Mittring

	show testimage on sm4 as well

Change 2982736 on 2016/05/18 by Uriel.Doyon

	Improved overbudget retention logic.
	Updated ListStreamingTextures stats.

Change 2982854 on 2016/05/18 by Martin.Mittring

	ImageValidator can now save/load IVxml file

Change 2982863 on 2016/05/18 by Daniel.Wright

	Fixed shader compile error

Change 2982864 on 2016/05/18 by Daniel.Wright

	Removed deprecation message

Change 2982927 on 2016/05/18 by Martin.Mittring

	ImageValidator is now sorting by time

Change 2983743 on 2016/05/19 by Chris.Bunner

	Saturated tri-planar UV function outputs to prevent negative blending
	#jira UE-30964

Change 2983747 on 2016/05/19 by Martin.Wilson

	Fix for morph curves not getting applied to meshes in cooked builds (smart names were not being corrected).

Change 2984008 on 2016/05/19 by Brian.Karis

	New contact shadows feature.

	Hair uses ray cast for nonshadow lights

Change 2984009 on 2016/05/19 by Brian.Karis

	changed to ShadowedBits

Change 2984054 on 2016/05/19 by Brian.Karis

	Deleted old motion blur

Change 2984420 on 2016/05/19 by Daniel.Wright

	Shorter display name for WorldPosition material node

Change 2984423 on 2016/05/19 by Daniel.Wright

	Fixed WorldPosition and ScreenPosition for downsampled separate translucency by scaling SvPosition before those computations.  The View uniform buffer still contains incorrect buffer sizes for this pass.

Change 2984432 on 2016/05/19 by Rolando.Caloca

	DR - Disable PPCombineLUT for Vulkan to work around glslang issue (will need to be reenabled when adding SM4/5 path)

Change 2985415 on 2016/05/20 by Daniel.Wright

	Added a Texture2D exporter for .hdr
	Texture2D exporters now implement SupportsObject properly, so you only see extensions that are valid based on the format

Change 2985439 on 2016/05/20 by Daniel.Wright

	Scene color alpha clear value validation

Change 2987173 on 2016/05/23 by Martin.Mittring

	ImageValidator Report with Thumbnail (cannot be copied and pasted into email), non Thumbnail version could be.

Change 2987248 on 2016/05/23 by Martin.Mittring

	ImageValidator: added Summary, removed timer hack

Change 2987369 on 2016/05/23 by Martin.Mittring

	ImageValidator polish

Change 2987390 on 2016/05/23 by Brian.Karis

	Improvement to temporal aa sharpness and speed.

Change 2988038 on 2016/05/24 by Gil.Gribb

	Merging //UE4/Dev-Main@2987977 to Dev-Rendering (//UE4/Dev-Rendering)

Change 2988304 on 2016/05/24 by Martin.Mittring

	added const to prevent coding errors

Change 2988332 on 2016/05/24 by Brian.Karis

	Fixed motion blur crash on SM4

Change 2988446 on 2016/05/24 by Martin.Mittring

	nicer UI

Change 2988990 on 2016/05/24 by Martin.Mittring

	fixed UE-31227 Building lighting produces bad results
	#jira:UE-31227

Change 2989729 on 2016/05/25 by Uriel.Doyon

	Fixed lightmaps and shadowmaps having low resolutions after building the lighting.
	#jira UE-31254

Change 2989752 on 2016/05/25 by Olaf.Piesche

	CVar to disable/freeze GPU particle simulation

Change 2989811 on 2016/05/25 by Daniel.Wright

	Making use of MATERIALBLENDING_ANY_TRANSLUCENT

Change 2989812 on 2016/05/25 by Daniel.Wright

	Hide DFGI show flags from UI

Change 2989901 on 2016/05/25 by Daniel.Wright

	Height fog now works properly in planar reflections
	* The ray used for computing fog is first clipped by the reflection plane

Change 2989904 on 2016/05/25 by Daniel.Wright

	Always use PF_FloatRGBA for LightAccumulation to guarantee alpha channel and negative range

Change 2989991 on 2016/05/25 by Daniel.Wright

	Improved usability for DBuffer Decals
	* 'Show Decals' works correctly, previously would fetch from uninitialized textures
	* DBuffer being enabled forces a full prepass, previously decals would render incorrectly unless correct settings of r.EarlyZPass were used
	* Improved the PrePass draw event to indicate whether it's full or partial
	* Materials using DBuffer blend modes will fail to compile when the DBuffer project setting is disabled, instead of just being invisible
	* r.EarlyZPass can now be changed at runtime, which is useful for profiling

Change 2990008 on 2016/05/25 by Daniel.Wright

	Fixed capsule shadows on skeletal meshes with scaling

Change 2990274 on 2016/05/25 by Daniel.Wright

	Fixed DFAO (from cl 2961310)

Change 2990304 on 2016/05/25 by Martin.Mittring

	OR-22233 GPU Sprites invisible unless solo'd
	#jira:OR-22233

Change 2990309 on 2016/05/25 by Martin.Mittring

	Added SubDSurface actor (using CPU code of OpenSubDiv), component, asset as starting point for more work in that direction,
	(Early work in progress)

Change 2990363 on 2016/05/25 by Daniel.Wright

	Spreading precomputed visibility to neighbors now uses a 2d grid to find neighbors, speeds up the process for 800k cells from 40 mins to 20s

Change 2990392 on 2016/05/25 by Daniel.Wright

	Added r.AOSpecularOcclusionMode, which determines how specular should be occluded by DFAO
	0: Apply non-directional AO to specular.
	1: (default) Intersect the reflection cone with the unoccluded cone produced by DFAO.  This gives more accurate occlusion than 0, but can bring out DFAO sampling artifacts.
	2: (experimental) Cone trace through distance fields along the reflection vector.  Costs about the same as DFAO again because more cone tracing is done, but produces more accurate occlusion.

Change 2990454 on 2016/05/25 by Martin.Mittring

	polish readme

Change 2990610 on 2016/05/25 by Martin.Mittring

	fixed building with VS2015, the right OpenSubDiv .lib files are missing, temporarily disabled the relevant code
	#code_review:Shane.Caudle

Change 2990754 on 2016/05/25 by Zabir.Hoque

	Fix compiler warning: C4456: declaration of 'NewStaticMesh' hides previous local declaration.

	#CodeReview: Martin.Mittring

Change 2990801 on 2016/05/25 by Zabir.Hoque

	Only allocate reflection capture cubemaps if we are actually doing a reflection capture. The old approach always allocated based on CVar and worked with a warning on D3D since if SRC was larger than the DST, the extra SRC area was dropped. New approach only allocates when necessary and is correctly sized everytime. Also hardened access to CVar and what users are allowed to set.

	#CodeReview Marcus.Wassmer, Rolando.Caloca, Daniel.Wright, Martin.Mittring

Change 2991169 on 2016/05/26 by Martin.Mittring

	fixed compiler warning
	WARNING: Non-editor build cannot depend on non-redistributable modules. Details:
	#lockdown: gil.gribb

Change 2991238 on 2016/05/26 by Martin.Mittring

	fixed build
	fatal error C1083: Cannot open include file: 'RawMesh.h': No such file or directory  (when RawMesh is not part of PrivateDependencyModuleNames in Engine.Build.cs)
	#lockdown:Gil.Gribb

Change 2991726 on 2016/05/26 by Daniel.Wright

	Subsurface materials are now handled with simple forward shading
	#jira OR-22237
	#lockdown gil.gribb

Change 2991727 on 2016/05/26 by Daniel.Wright

	Emissive decals are now supported with simple forward shading
	#jira OR-22282
	#lockdown Gil.Gribb

Change 2994849 on 2016/05/31 by Daniel.Wright

	Disabled fix for WorldPosition and ScreenPosition in downsampled separate translucency, since it breaks GetScreenAlignedUV (used in DepthFade), since the uniform buffer still contains full res buffer sizes
	#lockdown Gil.Gribb

Change 2997243 on 2016/06/01 by Gil.Gribb

	Merging //UE4/Dev-Main@2996565 to Dev-Rendering (//UE4/Dev-Rendering)
	#lockdown nick.penwarden

[CL 2998067 by Gil Gribb in Main branch]
2016-06-02 13:13:43 -04:00
Robert Manuszewski
f4fb4b8596 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 2996057)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2975196 on 2016/05/12 by Robert.Manuszewski

	Garbage Collector will no longer be responsible for generating class token stream, instead the token stream will be generated on startup or when a class has finished loading.

	- This way we can avoid very long GC times after new blueprints have been loaded.
	- Temporarily enabled CLASS_TokenStreamAssembled check in development builds (for testing purposes)

Change 2993960 on 2016/05/30 by Robert.Manuszewski

	Fixing leaked linkers created by blocking load requests during async loading.

Change 2959398 on 2016/04/28 by Steve.Robb

	TMap references are strong and cannot be nulled by pending kill.  This makes references in values strong too, even though we only really care about keys, which will corrupt the map when nulled.

	#jira UE-20828

Change 2960723 on 2016/04/29 by Graeme.Thornton

	Fix for texture asset import data being ignored when async loaded

Change 2960938 on 2016/04/29 by Robert.Manuszewski

	Nulling out sql db handle after closing it.

Change 2967127 on 2016/05/05 by Steve.Robb

	Move constructors explicitly disabled in generated code.

Change 2967143 on 2016/05/05 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant.

Change 2967164 on 2016/05/05 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer

Change 2968650 on 2016/05/06 by Steve.Robb

	Fix for HotReload copying module manager.

Change 2968915 on 2016/05/06 by Robert.Manuszewski

	Fixing spelling of SetImageIntegrityStatus function name.

Change 2970406 on 2016/05/09 by Steve.Robb

	Static analysis fixes:

	Function uses '...' bytes of stack:  exceeds /analyze:stacksize '81940'.  Consider moving some data to heap.

Change 2970419 on 2016/05/09 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant.
	warning C6011: Dereferencing NULL pointer '...'.
	warning C6385: Reading invalid data from '...':  the readable size is '...' bytes, but '...' bytes may be read.
	warning C6386: Buffer overrun while writing to '...':  the writable size is '...' bytes, but '...' bytes might be written.

Change 2970431 on 2016/05/09 by Steve.Robb

	Static analysis fixes:

	warning C6299: Explicitly comparing a bit field to a Boolean type will yield unexpected results.

Change 2972032 on 2016/05/10 by Steven.Hutton

	Workflow fixes to bugg / crashgroup filtering. Filters should now correctly persist across queries.

Change 2972085 on 2016/05/10 by Steve.Robb

	Const-correctness fix for FLogCategoryBase::IsSuppressed.

Change 2972087 on 2016/05/10 by Steve.Robb

	ELogVerbosity moved into its own header.

Change 2972090 on 2016/05/10 by Steve.Robb

	Redundant ensure removed.

Change 2972103 on 2016/05/10 by Steve.Robb

	Removal of redundant use of USING_CODE_ANALYSIS.

Change 2972139 on 2016/05/10 by Steve.Robb

	Fix for ensure macros throwing C6326 warnings during static analysis.

Change 2972147 on 2016/05/10 by Steve.Robb

	Fix for UE_LOG_ACTIVE macro throwing C6326 warnings during static analysis.

Change 2972162 on 2016/05/10 by Steve.Robb

	SCOPE_CYCLE_COUNTER_GUARD removed.

Change 2972168 on 2016/05/10 by Steve.Robb

	Compile error fix for logOrEnsureNanError in static analysis builds.

Change 2973084 on 2016/05/10 by Chris.Wood

	Crash Report Server performance tweak

Change 2974030 on 2016/05/11 by Steve.Robb

	Fix for IPropertyHandle::SetValue - used to take a non-const reference to a const UObject*, now it takes const references to both non-const and const UObject*.

Change 2974053 on 2016/05/11 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant.

Change 2974191 on 2016/05/11 by Steve.Robb

	Fix for template instantiation error in VS2013.

Change 2975298 on 2016/05/12 by Steve.Robb

	Static analysis fixes:

	warning C6236: (<expression> || <non-zero constant>) is always a non-zero constant.

Change 2975318 on 2016/05/12 by Steve.Robb

	Fix for hot reload info being reported as warnings.

	#jira UE-30586

Change 2975447 on 2016/05/12 by Steve.Robb

	Static analysis fixes:

	warning C6235: (<non-zero constant> || <expression>) is always a non-zero constant.
	warning C6239: (<non-zero constant> && <expression>) always evaluates to the result of <expression>.  Did you intend to use the bitwise-and operator?
	warning C6240: (<expression> && <non-zero constant>) always evaluates to the result of <expression>.  Did you intend to use the bitwise-and operator?
	warning C6285: (<non-zero constant> || <non-zero constant>) is always a non-zero constant.  Did you intend to use the bitwise-and operator?
	warning C6286: (<non-zero constant> || <expression>) is always a non-zero constant.  <expression> is never evaluated and might have side effects.
	warning C6289: Incorrect operator:  mutual exclusion over || is always a non-zero constant.  Did you intend to use && instead?
	warning C6316: Incorrect operator:  tested expression is constant and non-zero.  Use bitwise-and to determine whether bits are set.

Change 2975478 on 2016/05/12 by Steve.Robb

	Static analysis fixes for lots of redundant <zero constant> and <non-zero constant> warnings.

Change 2975538 on 2016/05/12 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'StaticResource'

Change 2976640 on 2016/05/13 by Robert.Manuszewski

	Fixing crashes caused by token stream generation changes. Making sure the token stream gets re-generated when a class gets re-linked.

	#jira UE-30675

Change 2978320 on 2016/05/16 by Steve.Robb

	Fix for static analysis warnings in XNA headers.

Change 2978329 on 2016/05/16 by Steve.Robb

	Static analysis fixes:

	warning C6334: sizeof operator applied to an expression with an operator might yield unexpected results:  Parentheses can be used to disambiguate certain usages.

Change 2980222 on 2016/05/17 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'X'.
	warning C28182: Dereferencing NULL pointer. 'X' contains the same NULL value as 'Y' did.

Change 2980458 on 2016/05/17 by Chris.Wood

	Attempt to fix crash report submission problems from CRP to CR website
	[UE-30257] - Crashreports are sometimes missing file attachments

	Passing crash GUID so that website can easily check for duplicates in future
	Increased request timeout for AddCrash to be longer than website database timeout
	Logging retries for future visibility
	CRP v.1.1.6

Change 2980639 on 2016/05/17 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'X'.
	warning C28182: Dereferencing NULL pointer. 'X' contains the same NULL value as 'Y' did.

Change 2981750 on 2016/05/18 by Steve.Robb

	check()s in ContainerAllocationPolicies.h changed to checkSlow()s, as they only exist to check that the container has been written correctly.

Change 2982106 on 2016/05/18 by John.Mahoney

	Fixed a crash caused by loading two stat capture files simultaneously in the profiler.
	If the user tries to load a capture file while another load is in progress, the previous load is now cancelled and cleaned up before proceeding with the new load.
	Made the delegates in FNewStatsReader explicitly specify which profiler instance they are loading data for, instead of relying on the current value of LoadConnection->InstanceId.
	This also fixes a crash that occurs when selecting a different capture file in the "Stats dump browser" pane of the profiler (after using Load Folder) while another file is still loading.
	Cleaned up some weak pointer usage in the profiler window.

	#jira UE-30741

Change 2983366 on 2016/05/19 by Steven.Hutton

	Changes for passing crash type directly from CRP to CRW.

Change 2983394 on 2016/05/19 by Steven.Hutton

	Minor changes to add crash with more error reporting

Change 2984685 on 2016/05/20 by Robert.Manuszewski

	Merging //UE4/Dev-Main @ 2984626 to Dev-Core (//UE4/Dev-Core)

Change 2985143 on 2016/05/20 by Steve.Robb

	Missing semi-colons.

Change 2986463 on 2016/05/23 by Steve.Robb

	CopyTemp added to make it clear that you want to make a copy (rather than a move, or an accidental copy) at the call site of a function taking rvalue refs.

Change 2986475 on 2016/05/23 by Steve.Robb

	Static analysis fixes:

	warning C6313: Incorrect operator:  zero-valued flag cannot be tested with bitwise-and.

Change 2986476 on 2016/05/23 by Steve.Robb

	Static analysis fixes:

	warning C6313: Incorrect operator:  zero-valued flag cannot be tested with bitwise-and.

Change 2986480 on 2016/05/23 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant

Change 2986515 on 2016/05/23 by Steve.Robb

	Static analysis fixes:

	warning C6340: Mismatch on sign: 'X' passed as _Param_(N) when some unsigned type is required in call to 'Func'

Change 2986680 on 2016/05/23 by Steve.Robb

	Static analysis fixes:

	warning C6386: Buffer overrun while writing to 'Ptr':  the writable size is 'X' bytes, but 'Y' bytes might be written.
	warning C6387: 'Ptr' could be '0':  this does not adhere to the specification for the function 'Func'
	warning C6031: Return value ignored: 'snprintf'.
	warning C6340: Mismatch on sign: 'const unsigned int' passed as _Param_(4) when some signed type is required in call to 'snprintf'.

Change 2986865 on 2016/05/23 by Robert.Manuszewski

	Removing redundand AddReferencedObjects functions

Change 2987968 on 2016/05/24 by Robert.Manuszewski

	Removing redundant UPROPERTY macros from intrinsic classes.

Change 2987979 on 2016/05/24 by Steve.Robb

	Optimization of some FString and FPaths operations to produce fewer temporaries.

Change 2988297 on 2016/05/24 by Steve.Robb

	Static analysis fixes:

	warning C6287: Redundant code:  the left and right sub-expressions are identical.

Change 2988430 on 2016/05/24 by Steve.Robb

	Static analysis fixes:

	warning C6385: Reading invalid data from 'var':  the readable size is 'X' bytes, but 'Y' bytes may be read.

Change 2988461 on 2016/05/24 by Steve.Robb

	Static analysis fixes:

	warning C6235: (<non-zero constant> || <expression>) is always a non-zero constant.
	warning C6239: (<non-zero constant> && <expression>) always evaluates to the result of <expression>.
	warning C6240: (<expression> && <non-zero constant>) always evaluates to the result of <expression>.

Change 2988464 on 2016/05/24 by Steve.Robb

	Static analysis fixes:

	warning C6262: Function uses 'X' bytes of stack:  exceeds /analyze:stacksize 'Y'.  Consider moving some data to heap.

Change 2988494 on 2016/05/24 by Steve.Robb

	Static analysis fixes:

	warning C6237: (<zero> && <expression>) is always zero.  <expression> is never evaluated and might have side effects.

Change 2989411 on 2016/05/25 by Robert.Manuszewski

	Splitting GC cluster index and intenral object flags to allow more UObjects in editor builds.

Change 2989429 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6387: '_Param_(X)' could be '0':  this does not adhere to the specification for the function 'Func'.

Change 2989982 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6001: Using uninitialized memory 'LODPlanesMin'.

Change 2990018 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6386: Buffer overrun while writing to 'X'

Change 2990077 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6240: (<expression> && <non-zero constant>) always evaluates to the result of <expression>.
	warning C6011: Dereferencing NULL pointer 'Ptr'.

Change 2990114 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6336: Arithmetic operator has precedence over question operator, use parentheses to clarify intent.

Change 2990125 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6239: (<non-zero constant> && <expression>) always evaluates to the result of <expression>.

Change 2990162 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6294: Ill-defined for-loop:  initial condition does not satisfy test.  Loop body not executed.

Change 2990193 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C28182: Dereferencing NULL pointer. 'type' contains the same NULL value as 'type->base_type' did.
	warning C6011: Dereferencing NULL pointer 'Semantic'.

Change 2991006 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C28113: Accessing a local variable dummy via an Interlocked function:  This is an unusual usage which could be reconsidered.

Change 2991012 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6031: Return value ignored: 'InitializeCriticalSectionAndSpinCount'.

Change 2991013 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6287: Redundant code:  the left and right sub-expressions are identical.

Change 2991016 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6236: (<expression> || <non-zero constant>) is always a non-zero constant.

Change 2991017 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant.

Change 2991019 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6292: Ill-defined for-loop:  counts up from maximum.

Change 2991023 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6322: Empty _except block.
	warning C28251: Inconsistent annotation for 'WinMain': this instance has no annotations.

Change 2991070 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C28182: Dereferencing NULL pointer. 'Ptr1' contains the same NULL value as 'Ptr2' did.

Change 2991416 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Ptr'.

Change 2992738 on 2016/05/27 by Steve.Robb

	Revert changes to FString::MatchesWildcard.

Change 2992916 on 2016/05/27 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Ptr'.

Change 2992960 on 2016/05/27 by Chris.Wood

	Optimized P4 access in Crash Report Process and MinidumpDiagostics.

Change 2992964 on 2016/05/27 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Ptr'.

Change 2993956 on 2016/05/30 by Robert.Manuszewski

	Fixing a crash after adding a new C++ class in the editor - made sure new classes have the token stream assembled after hot-reload.

	#jira UE-31309

Change 2993977 on 2016/05/30 by Robert.Manuszewski

	Don't wait for all packages to finish loading before PostLoading those which already have.

Change 2994206 on 2016/05/31 by Robert.Manuszewski

	PR #2429: Three bug fixes required for script support to work properly (Contributed by pluranium)

#lockdown Nick.Penwarden

[CL 2996251 by Robert Manuszewski in Main branch]
2016-06-01 12:08:56 -04:00
Ben Marsh
496e06c3d5 Copying //UE4/Orion-Staging to //UE4/Dev-Main (//UE4/Orion-Staging @ 2979119, //Orion/Dev-General @2976565)
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2976484 on 2016/05/12 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: nick.atamas
	Added queueing to HUD Alerts so they don't clobber each other.
	Added input visualization so that keys show up in game.
	SRichTextBlock/UOrionRichTextBlock now have a MinDesiredWidth

	#test PIE

	#ROBOMERGE-SOURCE: CL 2976474 in //Orion/Release-0.26/... via CL 2976481 via CL 2976482 via CL 2976483
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2976256 on 2016/05/12 by Zak.Middleton

	#ue4 - Fix for shipping build.

	#tests compiled

Change 2976205 on 2016/05/12 by Zak.Middleton

	#ue4 - (Merge 2957866) Add MaxDepenetration for characters against geometry and pawns.

	#tests MP PIE PlayGo
	(Merging CL 2957866 using Framework->DevGeneral)

Change 2976166 on 2016/05/12 by Daniel.Lamb

	Cooking optimziation to unsolicited markup saves 150 seconds paragon cook time.
	#test Cook paragon

Change 2976161 on 2016/05/12 by Zak.Middleton

	#ue4 - Make sure LastUpdateLocation, Rotation, and Velocity are updated on client and server error corrections. ForcePositionUpdate should call PerformMovement regardless of velocity (there may be root motion or gravity effects).

	#tests PIE MP w/ real-world networking

Change 2976092 on 2016/05/12 by Mieszko.Zielinski

	Modified adding dynamic subtrees to BT component so that we get a log info if it fails #UE4

	#test golden path

Change 2976001 on 2016/05/12 by Robert.Manuszewski

	Don't log to memory on dedicated servers

	#jira UE-30693
	#test Cooked dedicated server and client

Change 2975855 on 2016/05/12 by Lukasz.Furman

	fixed behavior tree serialization spawning duplicates of task services
	#tests BT editor

Change 2975706 on 2016/05/12 by Daniel.Lamb

	Fixed redirect collector stats.
	#test Compile

Change 2975636 on 2016/05/12 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge DUI @ CL 2975557

	#RB:none
	#Tests:none

	[CodeReviewed]: matt.schembari, kerrington.smith, tony.oliva, jaymee.stanford, mona.huang, alex.conner, jacob.lawyer, paul.shank

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

Change 2975592 on 2016/05/12 by Zak.Middleton

	#ue4 - Add stat for SetHitResultFromShapeAndFaceIndex().

	#tests PIE

Change 2975589 on 2016/05/12 by Zak.Middleton

	#ue4 - Avoid filling temp variable unless in Editor builds. It's only used later in the function in Editor builds.

	#tests PIE

Change 2975588 on 2016/05/12 by Zak.Middleton

	#ue4 - Minor tweak to avoid array read each loop iteration.

	#tests PIE

Change 2975587 on 2016/05/12 by Zak.Middleton

	#ue4 - Add "IsPlayerController()" function to AController. Variable already existed, just wasn't exposed.

	#tests PIE

Change 2975504 on 2016/05/12 by Daniel.Lamb

	Remove new stats system because it broke build.
	#test cook paragon

Change 2975500 on 2016/05/12 by Daniel.Lamb

	Enable redirect timers so I can get stats from build machines.
	#test cook paragon.

Change 2975367 on 2016/05/12 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: david.nikdel
	#OGF #CatalogService #OSS #Localization
	- Flush the cached offers/items in CatalogServiceMcp when the culture changes since they contain localized text
	- Flush the cached virtual catalog offers/items in McpCatalogHelper when the culture changes since they contain localized text
	- Replaced SetForceCatalogRefresh with ClearCache per CR with SamZ (will require Launcher fixup)

	[CodeReviewed]: Sam.Zamani, Matt.Kuhlenschmidt
	#RB: Sam.Zamani
	#TESTS: storefront w/ language change

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

Change 2975209 on 2016/05/12 by Simon.Tovey

	Fixed initialization order warning.

	#tests none

Change 2975200 on 2016/05/12 by Simon.Tovey

	Translucency GPU time stats for automation.

	Refactored separate translucency gpu timer to more general helper class and used it to also time regular translucency.
	Feeding both of these into a stat to help art identify poorly performing VFX for more detailed investigation.
	There are occasional spikes when the GPU is starved but overall the data out seems good.

	#tests GoldenPath, Editor, Auto downsampling works, new stat produces reasonable data.

Change 2974984 on 2016/05/11 by Mieszko.Zielinski

	Fixed a bug in graph-a-star heuristics' calculation #UE4

	#test golden path

Change 2974916 on 2016/05/11 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 26 @ CL 2974578

	#RB:none
	#Tests:none

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

Change 2974869 on 2016/05/11 by Ben.Marsh

	BuildGraph: Add a MergeTelemetryWithPrefix="..." parameter to the <Command> task which allows merging the telemetry data from a child UAT run, adding a given prefix to all the key names.

	#tests none

Change 2974673 on 2016/05/11 by Mieszko.Zielinski

	Fix to BT not stopping if "StopTree" called while BT was waiting for a task to latently abort #UE4

	(change by ?ukasz.Furman)
	#test golden path

Change 2974581 on 2016/05/11 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: matt.kuhlenschmidt
	Merged CL 2974565 from Release-.26 -> Main:

	Fixed loc region not saving in shipping builds
	Partially fixed store not refreshing when changing regions. Real money currency items are pending additional fixes

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

Change 2974444 on 2016/05/11 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: richard.fawcett
	Reimplement support for specifying BuildPatchTool version used in chunking

	This is now possible after Ben Marsh's fix to BuildGraph with CL 2974407.

	#tests none

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

Change 2974408 on 2016/05/11 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: ben.marsh
	BuildGraph: Fix support for variable expansion in user-defined enum types. Enums in the schema are now represented as the union of valid values and a regex matching a balanced property expansion string, which still validates/autocompletes cleanly in Visual Studio.

	#tests none
	[CodeReviewed] Richard.Fawcett

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

Change 2974392 on 2016/05/11 by Daniel.Lamb

	Optimizing resolve string asset reference resolution.
	Added timing stats (disabled by default).
	#test Cook paragon.

Change 2974349 on 2016/05/11 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: richard.fawcett
	Back out changelist 2974298. An issue with the BuildGraph system has prevented this change from working on the build farm.

	#tests none

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

Change 2974299 on 2016/05/11 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: richard.fawcett
	Add support for chunking builds with the pre-release version of BuildPatchTool.

	#tests None. This code will be tested by creating a build on the build farm immediately after submission.

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

Change 2974277 on 2016/05/11 by Lina.Halper

	Fix up of retargeting when it skips replacing nested reference

	#tests: retargeting anim BP

Change 2974210 on 2016/05/11 by Bart.Bressler

	Merging Oodle changes from Dev-Networking

	Change 2939167 on 2016/04/10 by John.Barrett

		Updated packet bit termination code, so that both UNetConnection's and the PacketHandler use a termination bit (required for both PacketHandler/UNetconnection, as HandlerComponent's such as Oodle, are byte-aligned and do not preserve packet bit size).

		Added new 'stat packet' stats group, for tracking reserved packet bits.

		Added '-NoPacketHandler' commandline parameter, for disabling the PacketHandler and all HandlerComponent's (including stateless handshake) - restoring netcode to pre-PacketHandler state.

		Removed PacketHandler 'packet overhead' method of packet bit size calculation - replaced with termination bit. Still partially used for reserving bits within packets (but renamed to avoid conflict with other 'PacketOverhead' variable).

		Refactored/consolidated some PacketHandler code. Added more stringent bounds checking on packet sizes.

	Change 2939168 on 2016/04/10 by John.Barrett

		Updated Oodle to support new packet bit-termination code.

		Added Oodle protocol support for selective packet compression (packets can now be sent uncompressed - game code will require a hook for this) - required for new bit-based netcode (Oodle outputs byte-aligned data, allowing compressed data to exceed size of uncompressed data - and thus, maximum packet size if not sent uncompressed - in rare edge cases).

		Added '-CompressionTest' commandline parameter to Oodle dictionary generation commandlet, which reserves a portion of captured packets, for determining the compression savings percentage.

		Added '-OodleDebugDump' commandline parameter, which disables normal dictionary generation, and converts packet captures into a .bin file, which is compatible with the Oodle 'example_packet.cpp' code.

		Added temporary security bandaids to Oodle code, based on report that Luigi Auriemma put together, which deals with potential weaknesses in the Oodle API

		Added 'stat oodle' stats for tracking failed attempts at compressing packets.

	Change 2942964 on 2016/04/10 by Ryan.Gerleve

		Fix broken indentation/formatting

	Change 2958260 on 2016/04/27 by Bart.bRessler

		Add branch name and changelist to oodle packet capture filenames.

	Change 2964360 on 2016/05/03 by John.Barrett

		Updated Oodle to support using a dictionary and capturing packets at the same time.

		The dictionary is now always loaded, if specified, and whenever -OodleCapturing is on the commandline, packets are captured alongside the active dictionary.

		Added several debug commands, to aid with testing compression performance (not QA-ready; only works with 1 player on a server):

		"Oodle Compression On/Off" - enables/disables packet compression (but still decompresses received compressed packets)

		"Oodle Dictionary Unload/Load" - unloads/loads the dictionary files, to allow releasing the files for dictionary generation, and reloading the new dictionary.

		"Oodle Capture On/Off" - Enables/Disables packet capturing at runtime - requires '-OodleCapturing' on commandline.

		"Oodle ResetStats" - resets the 'stat oodle' stat counters.

		The NetcodeUnitTest plugin should be enabled, so that these commands can automatically execute on the server as well, as needed.

	Change 2964553 on 2016/05/03 by Bart.Bressler

		Add process ID to oodle capture filenames

	Change 2966247 on 2016/05/04 by John.Pollard

		Oodle 2.1.5 SDK

	Change 2968761 on 2016/05/06 by Bart.Bressler

		- Added changelist number as parameter to most command line tasks to filter captures by their changelist number (use "all" to get everything)
		- Moved a bunch of the file searching/processing code outside of the tasks themselves so that the tasks all just operate to an array of capture files, this makes it easier to create new command line options
		- When looking for capture files, we will now recursively search subdirectories

	Change 2970529 on 2016/05/09 by Bart.Bressler

		Add an optional "CapturePercentage" command line parameter that has a percentage chance of generating capture files per connection

	Change 2970874 on 2016/05/09 by Bart.Bressler

		- Turn on OODLE_DEV_SHIPPING in the Orion server shipping config so that captures can be generated in shipping builds
		- Link to version 215 of oodle

	Change 2971233 on 2016/05/09 by Bart.Bressler

		Update Oodle DLLs in Orion

	Change 2971362 on 2016/05/09 by Bart.Bressler

		Create script for building an oodle dictionary out of capture files in an arbitrary location

	Change 2972176 on 2016/05/10 by Bart.Bressler

		Update oodle references to version 215 in OodleHandlerComponent.Build.cs

	#tests used solo vs. ai to test oodle captures and using them

Change 2974035 on 2016/05/11 by Simon.Tovey

	Adding fx.ParticleCollisionIgnoreInvisibleTime to replace hard coded time.

	This is the time a PSC needs to be invisible for to have all it's collisions ignored.
	This is potentially the cause of a bug Tim et al are seeing.

	#tests Editor, Can be used to repro/fix the issue.

Change 2973985 on 2016/05/11 by Lina.Halper

	Retargeting fix with editor saving issue

	#tests: retargeting

Change 2973695 on 2016/05/11 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 26 @ CL 2973469

	#RB:none
	#Tests:none

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

Change 2973679 on 2016/05/11 by Graeme.Thornton

	UAT parameter -signedpak now no longer implies -pak

	#tests win64 cooked client. checked that pak generation works as expected through project launcher

Change 2973588 on 2016/05/11 by Simon.Tovey

	OR-21033 - Get physical material from particle collision event exposed in Cascade / Blueprint

	Particles can now receive collision events selectively based upon the phyisics material of the hit.

	Physics material is passed through the event and can be accessed in BPs.
	The Event Receiver Spawn node also now has an array of Allowed and Banned phys materials.

	#tests Editor and game. Coudln't test cooked as having unrelated crashes in cooked games. Shouldn't be any cooked/uncooked issues here.

Change 2973394 on 2016/05/11 by bruce.nesbit

	Fixed couple of shadow vars

	#tests compiled

Change 2973335 on 2016/05/11 by Andrew.Grant

	Warning fix
	#tests compiled

Change 2973308 on 2016/05/10 by Dmitry.Rekman

	Add "unplayable condition" reporting.

	- The server will report an unplayable condition by creating a local file (under Saved).
	- An external script can possibly notice this and, applying its own logic on % of servers reporting it, profile or shutdown the whole machine.
	- Report file is to be deleted by an external script.

	#tests Compiled and ran Linux server, subjected it to various hitches.

Change 2973235 on 2016/05/10 by Zak.Middleton

	#ue4 - Removed allocs after initial spawn from client saved move processing in character movement.

	#tests PIE multiplayer w/ Bots

Change 2973157 on 2016/05/10 by Olaf.Piesche

	Merging CL 2973112 from //UE4/Dev-Rendering->//Orion/Dev-General

	Providing particle source and target for beam emitters

	#tests editor game PC

Change 2972715 on 2016/05/10 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 26 @ CL 2972681

	#RB: none
	#Tests:none

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

Change 2972678 on 2016/05/10 by Mieszko.Zielinski

	Fixed babysitter bot not avoiding enemy towers when pathfinding back to base #Orion

	#jira OR-18590
	#test golden path

Change 2972595 on 2016/05/10 by Lina.Halper

	Animation Retargeting fix for blendspaces

	#code review: Benn.Gallagher, Martin.Wilson

	#tests: retargeting anim BP

Change 2972282 on 2016/05/10 by Daniel.Lamb

	Optimized string asset reference resolution slightly to help get back missing 10 minutes from paragon cook.
	#test cook paragon.

Change 2972260 on 2016/05/10 by Laurent.Delayen

	Fixed crash in UCharacterMovementComponent::HasRootMotionSources().

	#tests Chains pull not crashing anymore.

Change 2972241 on 2016/05/10 by Frank.Fella

	UMG - Fixes for material animation copied from 4.12.

	#RB Matt K.
	#TESTS Struct materials can now be animated and animated materials are named nicely.

Change 2971643 on 2016/05/09 by Dmitry.Rekman

	Add reporting of "zero load" frame times (OR-21035).

	- Added a thread that does nothing but sleeps and counts how often it missed the target FPS.
	- Added an analytics event ServerZeroLoadFrameTimeDistribution that is sent at the end of the match.
	- Server only.

	#tests Compiled and ran Linux server on a compatible content, played few matches in a row.

Change 2971544 on 2016/05/09 by Ben.Marsh

	EC: Use a full path to the telemetry file, to account for UAT switching directories.

Change 2971532 on 2016/05/09 by Wes.Hunt

	Alter the cook stats hierarchical profile data to reflect the latest cook changes.
	#tests none

Change 2971527 on 2016/05/09 by Ben.Marsh

	UAT: Move telemetry object into CommandUtils, so we can add stats from anywhere.

	#tests none

Change 2971461 on 2016/05/09 by David.Ratti

	Fix issues with mesh swap skins:
	-Front end intro animations not playing
	-In game spawn animations not playing
	-Some attachment weirdness (twinblast)

	#tests golden path

Change 2971460 on 2016/05/09 by David.Ratti

	Fallback to Target actor if there is no instigating actor in the GAmeplayCue parameters when determining if we should play "local only" effects

	#tests pie

Change 2971364 on 2016/05/09 by Ben.Marsh

	EC: Add support for adding custom telemetry data from UAT scripts, which gets piped through to the trends panel in EC.

	#tests none

Change 2971245 on 2016/05/09 by Dmitry.Rekman

	Add a "hitchhunter" log message to catch hitches while sleeping.

	#tests Compiled and ran Linux server on a compatible content.

Change 2971196 on 2016/05/09 by jason.bestimt

	#ORION_MAIN - Merge 25.2 @ CL 2971139

	#RB:none
	#Tests:none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	//Orion/Dev-General/OrionGame/Content/Characters/Heroes/Coil/Audio/Body/Pixie_Cranking_Loop_Cue.uasset - can't branch exclusive file already opened
	#CodeReview: david.nikdel, jason.bestimt

Change 2971113 on 2016/05/09 by Dmitry.Rekman

	UdpMessaging: Fixed broken filters for when to enable UDP transport.

	- Redoing MaxP's change from Dev-Sequencer (CL 2963357).
	- Reduces number of threads spawned by the server.

	#tests Compiled Linux server, ran it on a compatible content.

Change 2971040 on 2016/05/09 by jason.bestimt

	#ORION_MAIN - Merge 25.2 @ CL 2970990

	#RB:none
	#Tests:none

	[CodeReviewed]: jon.lietz

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: david.nikdel, jason.bestimt

Change 2970555 on 2016/05/09 by Ben.Marsh

	BuildGraph: Only show warnings and errors for the SavePackage log during cooks. Prevents redundant display of information that's already in the Cook log.

	#tests preflight here: https://ec-01.epicgames.net/commander/link/jobDetails/jobs/6443796

Change 2970507 on 2016/05/09 by David.Ratti

	Support for linking passive abilities to a key binded ability. E.g., allow a passive ability to be unlocked and leveled up in step with a key binded ability.

	Cleaned up the TryLevel/CanLevelUp code a bit: moved to Orion Ability System Component

	#tests pie

Change 2970414 on 2016/05/09 by Graeme.Thornton

	Don't take a copy of the child tags array when doing UGameplayTagsManager::FindTagNode, just take a const&

	#tests win64 client golden path

Change 2969729 on 2016/05/06 by Mieszko.Zielinski

	Fixed a dumb mistake in a conditional expresion in UNavigationQueryFilter::GetQueryFilter #UE4

	#test golden path

Change 2969675 on 2016/05/06 by Mieszko.Zielinski

	Implemented "meta navigation filter" that can fetch a filter class based on given agent #UE4

	Added NavFilter_AIControllerDefault that fetched DefaultNavigationFilter from AIController
	Reverted hack-feature that supplied same functionality to EQS

	#test golden path

Change 2969652 on 2016/05/06 by Michael.Noland

	HLOD: Changed UI gating code so that whether or not a LOD Actor is valid is based on the presence of at least two static mesh components, rather than at least two actors (to improve handling when including BPs)
	- Repurposed HasValidSubActors for this check, and introduced HasAnySubActors() for the existing uses as this better matches the intent of how the function was used
	#tests Added a single BP containing 7 mesh components to a new ALODActor and verified that it allowed a proxy to be generated

Change 2969651 on 2016/05/06 by Michael.Noland

	Simplygon: Added time taken for simplygon mesh reduction to the log message
	#tests Simplified a LOD cluster and inspected the log

Change 2969604 on 2016/05/06 by Uriel.Doyon

	Changed default value to true for UParticleModuleVectorFieldLocal::bUseFixDT.
	#tests confirmed that default value has changed for old assets, while allowing override.

Change 2969418 on 2016/05/06 by jason.bestimt

	#ROBOMERGE-AUTHOR: andrew.grant
	Fixed unconverted char string being passed as part of build info
	#tests ran & verified patch check passes

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

Change 2968817 on 2016/05/06 by jason.bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 25.2 @ CL 2968572

	#RB:none
	#Tests:none

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

Change 2968383 on 2016/05/05 by Mieszko.Zielinski

	Added "default navigation filter" to AIController #UE4

	Also, made EQS take advantage of that

	#test golden path

Change 2968225 on 2016/05/05 by John.Pollard

	Add sanity checks and more info to help track down possible memory corruption

	#tests Networking, replication

Change 2967903 on 2016/05/05 by jason.bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 25.2 @ CL 2967827

	#RB:none
	#Tests:none

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

Change 2967899 on 2016/05/05 by Lina.Halper

	Merged change of 2956152

	Remove invalid ensure - this didn't work if you have composite inside.

	#tests: none

Change 2967870 on 2016/05/05 by Andrew.Grant

	Fix for OR-20731 (gamever crashes client)
	#tests gamever at console with -game

Change 2967606 on 2016/05/05 by Wes.Hunt

	Tweaked output log message for HTTP module shutdown.
	#tests none

Change 2967359 on 2016/05/05 by Wes.Hunt

	HttpManager will log outstanding requests on shutdown so people can debug shutdown issues and ensure their requests get flushed properly. Also changed default LogHttp logging level to display so these messages can be shown by default without using warning level.

	#tests ran editor build and queued up an event using the console command, then quit immediately. the log indeed showed that HttpManager had to wait at least 0.5 seconds for the request to complete.

Change 2966987 on 2016/05/05 by Dmitry.Rekman

	Fix editor build.

	#tests Compiled Win64 editor.

Change 2966977 on 2016/05/05 by Dmitry.Rekman

	Added collecting and reporting periodic server frame time distribution.

	- Added generic FHistogram class and necessary analytic events.
	- Also added reporting hostname (OR-20842).

	#tests Built Linux server and ran a few matches on a compatible content.

Change 2966920 on 2016/05/04 by jason.bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 25.2 @ CL 2966805

	#RB:none
	#Tests:none

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

Change 2966778 on 2016/05/04 by Michael.Noland

	Rendering: Fixed shadow variable warning in GPUProfiler
	#tests Compiled and tested GPUProfiler command

Change 2966769 on 2016/05/04 by Mieszko.Zielinski

	Fixed GraphAStar not resetting the output path before fillinf it with results #UE4

	#test golden path

Change 2966704 on 2016/05/04 by Michael.Noland

	Rendering: Added triangle and draw call summaries to ProfileGPU output, broken up by asset and material
	- This is controlled by r.ProfileGPU.PrintAssetSummary, which defaults to 1, but you really need r.ShowMaterialDrawEvents 1 enabled as well for a complete picture
	- It can also output a summary line for speciifc asset names using a comma separated list in r.ProfileGPU.AssetSummaryCallOuts (e.g., "LOD,HeroName")
	#tests Used ProfileGPU a number of times

Change 2966696 on 2016/05/04 by Michael.Noland

	Engine: Embedded FPS chart preamble/postamble/row .html files into ChartCreation.cpp to permanently solve packaging woes
	#tests Tested FPS charts in an uncooked and cooked build
	#jira OR-19713

Change 2966336 on 2016/05/04 by Lukasz.Furman

	fixed jungle minions unable to reach spawn locations when camp resets
	#jira OR-20700
	#tests jungle camp POC

Change 2965948 on 2016/05/04 by David.Ratti

	Changes to how passive abilities activate
	-Passives now continually try to activate by default rather than only on spawn

	Support for Status.Immortal
	-Prevents death, fies AbilityTriggerEvent.ImmortalProc when this happens.
	-Clamps health to 1.

	Fixed bug in muriel passive where ShieldHealthRegen would be left in the world where muriel died.

	Fixed bunch of crap in GA_OnSpawn that was causing desync on client at start of match

	#tests multi pie

Change 2965870 on 2016/05/04 by Ryan.Gerleve

	Duplicated fix from Release-4.12 by marc.audy, CL 2960819:

	Owned components are once again referenced by their Owning actor for GC purposes
	#jira UE-29131

	#tests golden path

Change 2965798 on 2016/05/04 by jason.bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 25.2 @ CL 2965789

	#RB:none
	#Tests:none

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

Change 2965220 on 2016/05/03 by Dmitry.Rekman

	Log instance id and system id (OR-20782).

	- These ids get reported in multiple analytics events, having them logged is helpful for quickly mapping events to the log file.

	#tests Compiled Linux server, ran on compatible client.

Change 2964907 on 2016/05/03 by Jason.Bestimt

	#ORION_DG - Merge MAIN @ CL 2964858

	#RB:none
	#Tests:none

Change 2964530 on 2016/05/03 by Laurent.Delayen

	Renamed GetSlotRootMotionWeight to GetSlotNodeGlobalWeight and made it double buffered to it's safe to access anytime.
	Added GetSlotMontageGlobalWeight() to get the Global Weight of a montage being played on a Slot. (Also double buffered).
	Added GetInstanceMachineWeight() to get Global Weight of a State Machine in the AnimGraph. (Also double buffered)
	Added FAnimInstanceProxy::GetStateMachineIndexAndDescription to avoid searching through the AnimNodeProperties twice.

	#tests Chains full feature system in PIE.

Change 2964498 on 2016/05/03 by Frank.Fella

	DecalComponent - Fix visibility so that it behaves like other scene components with regard to the editor visibility, component visibility, and actor hidden in game flags.

	#RB Andrew Rodham
	#TESTS Visibility for decals works like other scene components in the editor, and their visibility can now be animated properly by sequencer.

Change 2964428 on 2016/05/03 by Benn.Gallagher

	Fixed stale clothing chunk/section references after container realloc in editor
	#tests editor

Change 2964316 on 2016/05/03 by bruce.nesbit

	Banner revisions

	Banners now use components for various banner items
	Banners can now be enabled when killing  a hero.

	#tests PIE+Game

Change 2964187 on 2016/05/03 by Jon.Lietz

	Speeding up the tag count check in UAbilitySystemComponent::RegisterAndCallGameplayTagEvent()

	- Remove the call to GetAggregatedStackCount and creating a FGameplayEffectQuery every time we call RegisterAndCallGameplayTagEvent
	- Added GetTagCount to the UAbilitySystemComponent that will call GetTagCount on the GameplayTagCountContainer

	#RB DanY
	#tests JIP shadow pad still works.

Change 2964136 on 2016/05/03 by Laurent.Delayen

	Fix crash while switching tabs using Persona.

	#tests not crashing anymore.

Change 2964083 on 2016/05/03 by jason.bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 25.2 @ CL 2963929

	[CodeReviewed]: andrew.grant

	HTTP Manager has larger stack size (1024)

	#RB:none
	#Tests:none

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

Change 2963771 on 2016/05/02 by Nick.Atamas

	Setting a desired size scale invalidates layout and volatility.

	#test none

Change 2963555 on 2016/05/02 by Rob.Cannaday

	Fix PS4 Orion players being able to whisper chat with non-Orion players
	#jira OR-20626
	#tests chat with launcher, fortnite

Change 2963387 on 2016/05/02 by Laurent.Delayen

	Added GatherDebugData to FABRIK node.

	#tests showdebug animation works on Chains now.

Change 2963331 on 2016/05/02 by Jon.Lietz

	fixing compile error, dont need the clamp just the ternary on the EventType and pass down the tag count or 1.

	#RB none
	#tests compiles

Change 2963106 on 2016/05/02 by Rob.Cannaday

	Increase HTTP thread's stack size to 128k
	We discovered a stack overflow when the stack size was 64kb in LavasoftTcpService64.dll (Ad-Aware's Lavasoft Web Companion)
	#tests log in

Change 2963047 on 2016/05/02 by Jon.Lietz

	OR-20206 for JIP we need to call the bound function if we already have the tag on reconnect.

	- adding a new function in UAbilitySystemComponent, RegisterAndCallGameplayTagEvent this will bind the passed in delegate and if the ability system has that tag already will execute the delegate.

	#RB Dave.Ratti
	#test shadow pad, slow, stun and root still trigger and trigger for JIP players.

Change 2962836 on 2016/05/02 by jason.bestimt

	#ROBOMERGE-AUTHOR: andrew.grant
	[NULL MERGE]
	Duplicating 2961899 - Fix minimal code builds for Linux not overwriting files
	[CodeReviewed] Ben.Marsh

	#ROBOMERGE-SOURCE: CL 2962812 in //Orion/Release-0.24.2/... via CL 2962830 via CL 2962833 via CL 2962834 via CL 2962835
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2962570 on 2016/05/02 by Jason.Bestimt

	#ORION_MAIN - Merge MAIN @ CL 2962544

	#RB:none
	#Tests:none

Change 2962552 on 2016/05/02 by Ben.Marsh

	Avoid output of warnings containing the string "error:" (and causing the EC post processor to fail the build) if posting build info has a human-readable error message instead. Output should probably be changed to parse out/sanitize the actual failure message if it's meant to retry and succeed, but this will stop failures caused by multiple builds being posted with the same build version.

	#tests none

Change 2962506 on 2016/05/02 by Ben.Marsh

	Add a version string to identify a given build (FApp::GetBuildVersion()/BUILD_VERSION) which is distinct from the engine version. Defaults to <Escaped Branch Name>-CL-<Changelist>, but can be overriden by specifying a -Build=... argument to UpdateLocalVersion or the "Build" attribute to the SetVersion BuildGraph task.

	#tests Preflighted Win64 client/server build (P:\Builds\Orion\++Orion+Dev-General-CL-2962228-PF-2945494-6398155-PF-2945494-6398155) and loaded into Agora. Checked that version strings appear correctly in generated executables.

Change 2962228 on 2016/04/30 by Dmitry.Rekman

	Move processing HTTP requests into separate thread (OR-20723).

	- First iteration of the implementation, pending implementing feedback.
	- Adds a separate thread for CurlHttp where actual processing is performed.
	- Coded by RobC, post-processed by me.

	#tests Compiled Linux server and Windows client, ran them on compatible content, played a match.

Change 2961899 on 2016/04/29 by Ben.Marsh

	BuildGraph: Fix minimal Linux server builds not overwriting the existing executables, by adding an "Overwrite" parameter into the staging task. Windows exe-only patches already happen to bypass this bug by deleting the Binaries/Win64 directory (designed to remove any configurations that weren't built this time), but could still fail if changes had been made to some other staged binaries.

	#tests preflighted code-only build against DG CL 2960870 and compared output (P:\Builds\Orion\++Orion+Dev-General-CL-2961878-PF-2961895-6393603)

Change 2961587 on 2016/04/29 by Daniel.Lamb

	Redirector doesn't fire callback if it fails to be loaded.

	#test Cook orion.

Change 2961458 on 2016/04/29 by Wes.Hunt

	Cooker Stats improvements. Also removed some old UBT telemetry that was not being used.
	#tests many cooks of orion

Change 2961136 on 2016/04/29 by Daniel.Lamb

	Readded caching of platform data into postload of materials.
	#test Cook paragon.

[CL 2979220 by Ben Marsh in Main branch]
2016-05-16 16:20:52 -04:00
Gil Gribb
07eea7c4b8 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 2967470)
#lockdown nick.penwarden

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

Change 2943963 on 2016/04/14 by Daniel.Wright

	Shader compile errors are unsuppressed

Change 2943978 on 2016/04/14 by Gil.Gribb

	UE4 - First pass at async loading improvements....mostly disabled.

Change 2944021 on 2016/04/14 by Martin.Mittring

	fixed HLSL compiler warning

Change 2944031 on 2016/04/14 by Martin.Mittring

	fixed ensures, wrapped some members behind get accessor functions

Change 2944086 on 2016/04/14 by Martin.Mittring

	cleanup: removed not needed code

Change 2944177 on 2016/04/14 by Daniel.Wright

	Clamp on FarShadowCascadeCount, prevents crashing from huge values

Change 2944182 on 2016/04/14 by Martin.Mittring

	removed not needed code

Change 2944250 on 2016/04/14 by Rolando.Caloca

	DR - vk - Minor fixes

Change 2944286 on 2016/04/14 by Daniel.Wright

	Added bRenderSceneTwoSided to planar reflections, which can be useful to limit leaking
	Added ShowOnlyActors and HiddenActors to SceneCaptureComponent for easy use without having to call BP functions
	Added bShowPreviewPlane to planar reflection actors
	The view state is recreated on planar reflection edit, which resets the Temporal AA history, allowing instant previewing of changes

Change 2944288 on 2016/04/14 by Daniel.Wright

	Fixed refraction with a world space normal

Change 2944291 on 2016/04/14 by Daniel.Wright

	Panner nodes have an optional speed input

Change 2944346 on 2016/04/14 by Rolando.Caloca

	DR - Fix Vulkan shader platform on Android
	- Added more info on checks()

Change 2945007 on 2016/04/15 by Gil.Gribb

	Merging //UE4/Dev-Main@2944911 to Dev-Rendering (//UE4/Dev-Rendering)

Change 2945348 on 2016/04/15 by Daniel.Wright

	Fixed compile error

Change 2945358 on 2016/04/15 by Olaf.Piesche

	#jira UE-29241

	Sequential particle selection code was all sorts of weird. Rewrote and simplified.

Change 2945941 on 2016/04/15 by Martin.Mittring

	added r.DisplayInternals to debug determinism for screen shot comparison

Change 2945999 on 2016/04/15 by Martin.Mittring

	improved r.DisplayInternal output

Change 2946023 on 2016/04/15 by Olaf.Piesche

	Adding missing call to Super::PostEditChangeProperty; UDN 286717

Change 2947155 on 2016/04/18 by Martin.Mittring

	started minor cleanup of transluceny rendering, use Sort key to support SeparateTransluceny, not fully hooked up
	#test:PC

Change 2947207 on 2016/04/18 by Martin.Mittring

	fixed engine compiling in shipping/test
	#code_review:Uriel.Doyan

Change 2947212 on 2016/04/18 by Uriel.Doyon

	Lightmap density viewmode now shows the wanted resolution when the lighting isn't build.
	#jira UE-29317

Change 2947374 on 2016/04/18 by Uriel.Doyon

	Fixed support for resolution scale for the PostProcessVisualizeComplexity
	#jira UE-29473

Change 2947903 on 2016/04/19 by Gil.Gribb

	Merging //UE4/Dev-Main@2947728 to Dev-Rendering (//UE4/Dev-Rendering)

Change 2948019 on 2016/04/19 by Rolando.Caloca

	DR - Allow vk format as a target format for win

Change 2948162 on 2016/04/19 by Simon.Tovey

	Fix for crash with Collision visualization.

Change 2948419 on 2016/04/19 by Martin.Mittring

	fixed sort priority of translucent rendering (caused by recent checkin)

Change 2948433 on 2016/04/19 by Martin.Mittring

	fixed memory handling of FRendererViewExtension

Change 2948631 on 2016/04/19 by Martin.Mittring

	fixed compile error on Mac

Change 2948832 on 2016/04/19 by Martin.Mittring

	fixed UE-29572 (should result in less CPU cost and it might even fix some rendeirng issues)

Change 2949013 on 2016/04/19 by Martin.Mittring

	refactored Transluceny rendering, SepTrans and non SepTrans is now in the same container, sorted by that critera first and rendered with ranges. This makes it easier to extend it to more transluceny types e.g. after TemporalAA, after Tonemapping
	this is useful for MeshDecals
	#test:PC, parallel on and off

Change 2949620 on 2016/04/20 by Martin.Mittring

	fixed compiler warning

Change 2949639 on 2016/04/20 by Uriel.Doyon

	Fixed Material TexCoord Analysis not compiling when sampling textures for shader frequency other than PixelShader

Change 2949721 on 2016/04/20 by Chris.Bunner

	Avoid creating additional inline code fragment casting matching uniform types.
	#jira UE-29089

Change 2949722 on 2016/04/20 by Chris.Bunner

	Prevent nullptr crash and added additional logging.
	#jira UE-28387

Change 2949913 on 2016/04/20 by Martin.Mittring

	marked ccommand as cheat

Change 2950064 on 2016/04/20 by Martin.Mittring

	added MatineeTime to r.DisplayInternals to track down rendering determinsim issues, added dark background

Change 2950065 on 2016/04/20 by Martin.Mittring

	nicer debug printout

Change 2950201 on 2016/04/20 by Martin.Mittring

	fixed UE-29752 Console commands input with " = " should display an error message

Change 2950531 on 2016/04/20 by Martin.Mittring

	fixed comment

Change 2951737 on 2016/04/21 by HaarmPieter.Duiker

	Adds support forHDR displays using Dolby PQ output

Change 2951869 on 2016/04/21 by Martin.Mittring

	polish r.DisplayInternal

Change 2951950 on 2016/04/21 by HaarmPieter.Duiker

	Reordered variable definition to address build warning

Change 2951996 on 2016/04/21 by Martin.Mittring

	fixed PerformanceCapture code, added AutomationTest "Rendering.RenderOutputValidation",
	changed directory order
	to run locally it currently requires "r.ScreenshotDelegate=0"
	#code_review:Ben.Salem, Michael.Noland

Change 2952146 on 2016/04/21 by Olaf.Piesche

	make sure that ST PDI primitives render through regular translucency if ST is disabled; fixes light shapes in scene/reflection captures

Change 2952230 on 2016/04/21 by Martin.Mittring

	* Fixed automated ScreenshotVerify difference because of not streamed in texture, wait for up to 5sec .
	* changed some GFrameNumberRenderThread usage to ViewFamily.FrameNumber
	#code_review:Daniel.Wright

Change 2953173 on 2016/04/22 by Olaf.Piesche

	Adding UI for easilly browsing and switching in a folder full of stats dumps

Change 2953213 on 2016/04/22 by Olaf.Piesche

	Renaming a stat to be more descriptive

Change 2953393 on 2016/04/22 by Zabir.Hoque

	Get DX12 running again:
	  - Port Shader Resource Table change
	  - Line up VS outputs and ps inputs
	  - Fix incorrectly defining a static global in a .h

Change 2953453 on 2016/04/22 by Martin.Mittring

	polished r.DisplayInternal

Change 2954618 on 2016/04/25 by Zabir.Hoque

	2 Fixes:
	  - GLSL does not understand "unsigned int", converted to "uint"
	  - Refactored problematic prev buffer allocation code to be more inline with proper level of abstraction.

Change 2955369 on 2016/04/25 by Rolando.Caloca

	DR - hlslcc - Fix some memory leaks in the frontend

Change 2955403 on 2016/04/25 by Uriel.Doyon

	Fixed texture streaming build on OpenGL. Probably more likely to work on other platforms like Mac and Linux.
	Enabled debug view shaders on PCD3D_SM4 and OPENGL_SM4
	#jira UE-28840

Change 2955419 on 2016/04/25 by Rolando.Caloca

	DR - hlslcc - Reenabled support for static global variables being not const

Change 2955432 on 2016/04/25 by Zabir.Hoque

	Fix build break from not undef'ing LOCTEXT_NAMESPACE

Change 2955459 on 2016/04/25 by Zabir.Hoque

	TEMP Fix: On server enqued render thread work is dropped. So on server release Reflection capture resouce immediately instead of trying to defer enque.

Change 2956292 on 2016/04/26 by Zabir.Hoque

	Fix OpenGL shader compile break from CL: 2951737 (Adds support forHDR displays using Dolby PQ output).

	#CodeReview: Jack.Porter, Allan.Bentham

Change 2956662 on 2016/04/26 by Chris.Bunner

	Temporary fix for new Tonemapper issues.
	#jira UE-29935

Change 2957614 on 2016/04/27 by Marcus.Wassmer

	Fix PS4 shader compiler errors.

Change 2958468 on 2016/04/27 by Rolando.Caloca

	DR - Fix hlslcc validation issue
	- Show error on SCW if shader format not found when running with -directcompile
	#jira UE-29982

Change 2959105 on 2016/04/28 by Rolando.Caloca

	DR - Rebuilt hlslcc for Mac

Change 2959891 on 2016/04/28 by Daniel.Wright

	Shader compiler does a recreate render state even during blocking compile - fixes saving a material giving different behavior from applying changes with global distance fields

Change 2959895 on 2016/04/28 by Daniel.Wright

	Work around build machine string matching heuristics that will cause a cook to fail

Change 2959902 on 2016/04/28 by Daniel.Wright

	Added LowerHemisphereSolidColor to sky lights

Change 2959930 on 2016/04/28 by Daniel.Wright

	Added OpacitySourceMode to SubUVAnimation, which is useful with textures created for additive particles

Change 2959933 on 2016/04/28 by Daniel.Wright

	Substring matching for console command suggestions
	* Only implemented in the editor, game uses UConsole which needs an entirely different implementation
	* Not sorting starting matches first, although that is desired

Change 2959942 on 2016/04/28 by Daniel.Wright

	Gracefully handle when input string doesn't match search results

Change 2960743 on 2016/04/29 by Gil.Gribb

	UE4 - UAT - Add map name to editortest command line.

Change 2960940 on 2016/04/29 by Chris.Bunner

	Allow custom material nodes to be used with tessellation outputs.
	#jira UE-29586

Change 2960955 on 2016/04/29 by Gil.Gribb

	UE4 - Improved the CPU burden of loading in several places. Made substantial progress on the complete loading revamp (currently disabled).

Change 2960961 on 2016/04/29 by Chris.Bunner

	Potential material translator Lerp node pre-computations/optimizations.
	#jira OR-20138

Change 2961087 on 2016/04/29 by Gil.Gribb

	Fixed compile error in preflight relating to load time test rig

Change 2962565 on 2016/05/02 by Gil.Gribb

	Merging //UE4/Dev-Main@2962478 to Dev-Rendering (//UE4/Dev-Rendering)

Change 2965058 on 2016/05/03 by Chris.Bunner

	Shader version bump.
	#lockdown Gil.Gribb
	#jira UE-30206

Change 2966554 on 2016/05/04 by Chris.Bunner

	Bumping shader version again, unintentionally polluted DDC previously.
	#lockdown Gil.Gribb
	#jira UE-30329

Change 2967183 on 2016/05/05 by Gil.Gribb

	UE4 - Fixed a bad hash on landscape grass components. Simple, safe.
	#lockdown nick.penwarden

[CL 2967480 by Gil Gribb in Main branch]
2016-05-05 12:13:26 -04:00
Ben Marsh
6c32244d56 Copying //UE4/Release-Staging-4.11 to //UE4/Main (Source: //UE4/Release-Staging-4.11 @ 2941426, //UE4/Release-4.11 @ 2927265)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2910079 on 2016/03/15 by Taizyd.Korambayil

	#jira UE-28293 Reworded some Sentences

Change 2910157 on 2016/03/15 by Taizyd.Korambayil

	#jira UE-28240 Rebuilt Lighting for Sanctuary

Change 2910317 on 2016/03/15 by Ben.Marsh

	Fix crash trying to print out a message explaining that you need to install the Visual Studio 2015 toolchain, if the Visual Studio 2015 toolchain is not installed!

Change 2910425 on 2016/03/15 by Ori.Cohen

	Fix crash and incorrect behavior when setting physical material on a welded body.

	#JIRA UE-28399
	#rb Marc.Audy

Change 2910525 on 2016/03/15 by Ori.Cohen

	Fix player capsule not spawning at the right place due to float precision issues.

	#JIRA UE-28438
	#rb Zak.Middleton

Change 2910595 on 2016/03/15 by Chris.Babcock

	Fixed issue with missing event location paired with IE_Pressed if IE_DoubleClick generated
	#jira UE-28051
	#ue4
	#codereview Marc.Audy

Change 2911442 on 2016/03/16 by Andrew.Rodham

	Sequencer: Fixed frame grabbers where hardware mapped surfaces to memory of a different stride

	#jira UE-28434

Change 2911596 on 2016/03/16 by andrew.porter

	Test content for blueprint vertex painting
	#jira UE-24473

Change 2911860 on 2016/03/16 by Jamie.Dale

	Allowed SViewport to (once again) be able to use non-pre-multiplied alpha blending

	SViewport now has an PreMultipliedAlpha argument (default true), which can control whether to use pre-multiplied alpha when blending is enabled (blending is disabled by default). Note: This is a change in behavior from 4.10, as non-pre-multiplied alpha blending used to be the default, but pre-multiplied alpha blending better supports the pipeline used through Slate.

	This change also cleans up the use of bool parameters in the FSlateDrawElement::MakeX functions to control the render behavior, instead favoring use of advanced ESlateDrawEffect flags.

	API Breaking Changes
	  - FSlateDrawElement::MakeGradient no longer takes a bInGammaCorrect bool, instead pass ESlateDrawEffect::NoGamma as part of InDrawEffects to disable gamma correction.
	  - FSlateDrawElement::MakeViewport no longer takes a bInGammaCorrect bool, instead pass ESlateDrawEffect::NoGamma as part of InDrawEffects to disable gamma correction.
	  - FSlateDrawElement::MakeViewport no longer takes a bInAllowBlending bool, instead pass ESlateDrawEffect::NoBlending as part of InDrawEffects to disable blending.

	#jira UE-26797

Change 2912345 on 2016/03/16 by Olaf.Piesche

	Removing the check that causes UE-28441, duplicating beam type data module from highest LOD in Cascade causes crash. The beam data module is the only one that explicitly checks to make sure it's always shared across LOD levels; there's no obvious reasons why duplicating beam data modules shouldn't be possible.

	#codereview simon.tovey
	#jira UE-28441

Change 2912526 on 2016/03/16 by Steve.Robb

	Fix uninitialized variables.

	#codereview robert.manuszewski
	#jira UE-28391

Change 2913114 on 2016/03/17 by Steve.Robb

	Fixed some private properties which caused UHT errors.

	#codereview robert.manuszewski
	#jira UE-28059

Change 2913295 on 2016/03/17 by Richard.TalbotWatkin

	Replicated from Dev-Editor CL 2913224

	Disallow assets from being deleted if PIE is active. This prevents various troubles which can occur when PIE is referencing asset objects.
	#jira UE-12387 - [CrashReport] Crash when deleting assets needed for template
	#RB Nick.Darnell, Frank.Fella

Change 2913310 on 2016/03/17 by Nick.Shin

	merging from //UE4/Dev-Platform to //UE4/Release-4.11

	--- original commit CL: #2913300 message ---
	corrected VS 2015 websocket lib to look at the right offset

	it is currently a high risk change to just update the libwebsocket wholesale for  release-4.11.

	this change is the most minimum invasive change with a lot of deep analysis (details will be put in jira: # UEPLAT-1221).

	this fix will also be pushed up to release-4.11

	#jira UE-22166 - HTML5 Cook on the fly will launch and then close browser
	#jira UE-22513 - HTTP Network File System crashes randomly.
	#jira UE-28003 - Fail to QuickLaunch HTML5 through UnrealFrontEnd

Change 2913593 on 2016/03/17 by Mark.Satterthwaite

	For non-debug builds silence the warning about no deth/stencil when shader writes to depth in MetalRHI - the RHI implementation will create a temporary D/S buffer to cope but really this needs to be properly addressed elsewhere.
	#jira UE-28491

Change 2913655 on 2016/03/17 by Taizyd.Korambayil

	#jira UE-28492 Rebuilt Lighting For the Samples Listed

Change 2914025 on 2016/03/17 by Olaf.Piesche

	Make sure ST primitives are added to NST draw list if in shader complexity mode

	#codereview simon.tovey
	#jira UE-28471

Change 2914027 on 2016/03/17 by Nick.Shin

[CL 2941462 by Ben Marsh in Main branch]
2016-04-12 17:04:39 -04:00