Commit Graph

15 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
Jack Porter
1fdfd523ae Copying //UE4/Dev-Mobile to //UE4/Dev-Main (Source: //UE4/Dev-Mobile @ 3228013)
#lockdown Nick.Penwarden
#rb None

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

Change 3156770 on 2016/10/10 by Allan.Bentham

	Fix VULKAN_ENABLE_API_DUMP build on android.

Change 3157838 on 2016/10/11 by Allan.Bentham

	Fix Vulkan API tracing on android.

Change 3170713 on 2016/10/21 by Steve.Cano

	Adding the "Optional Mobile Features BP Library" plugin to explose Blueprint functions for Sound Volume, Battery level, system temperature (only available on android), and Headphones being plugged in

	#jira UE-30896
	#android
	#ios
	#ue4

Change 3171064 on 2016/10/21 by Steve.Cano

	Plugins to provide a common interface and Android implemenation for providing access to GPS / Location data from Blueprints

	#ue4
	#android
	#jira UE-35917

Change 3171065 on 2016/10/21 by Steve.Cano

	IOS implementation of LocationServices plugin to provide access to location data in Blueprints

	#ue4
	#ios
	#jira UE-35917

Change 3181802 on 2016/11/01 by Steve.Cano

	Fix an issue introduced in CL 3170713 - Adding new config section to RequiredSections list so that we can generate projects successfully.

	#jira UE-30896
	#ios

Change 3181807 on 2016/11/01 by Steve.Cano

	Make sure to clear out references to our eglSurface when we destroy it, else we will try to set our context with an invalid surface.

	#jira UE-35004
	#android
	#ue4

Change 3184827 on 2016/11/03 by Allan.Bentham

	Do not HDR32 encode for views without view family.
	TranslucentAlphaOnly blend mode now works with encoding.
	#jira UE-37951

Change 3186684 on 2016/11/04 by Jack.Porter

	Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)

Change 3188693 on 2016/11/07 by Chris.Babcock

	Corrections to memory stats for Android
	#jira WEX-3760
	#ue4
	#android

Change 3191538 on 2016/11/09 by Allan.Bentham

	Mobile tonemapper can use CVarTonemapperOverride

Change 3192575 on 2016/11/09 by Chris.Babcock

	Support placing UE4Game files in ExternalFilesDir for automatic cleanup on uninstall for distribution packages
	#jira UEPLAT-1422
	#ue4
	#android

Change 3196231 on 2016/11/13 by Jack.Porter

	Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)

Change 3196538 on 2016/11/14 by Jack.Porter

	Fix issue where lighting would not build for the first editor session of projects defaulting to MobileHDR=false as HardwareTargetingModule didn't set cvars
	#jira UE-38507

Change 3198068 on 2016/11/15 by Dmitriy.Dyomin

	Fixed android console command sender to work with ADB version 1.0.36
	#jira UE-35171

Change 3200230 on 2016/11/16 by Jack.Porter

	Remove mosaic resolution limitation on ES3 devices
	#jira WEX-3119

Change 3201251 on 2016/11/16 by Chris.Babcock

	Fix Android compile error

Change 3203542 on 2016/11/18 by Jack.Porter

	Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)

Change 3205598 on 2016/11/21 by Dmitriy.Dyomin

	Fixed: Missing selection outline in editor ES2 preview
	#jira UE-6458

Change 3205622 on 2016/11/21 by Dmitriy.Dyomin

	Fix ES2 build error from CL# 3205598

Change 3207232 on 2016/11/22 by Dmitriy.Dyomin

	ES2 GLSL generated shader simplifications

Change 3208608 on 2016/11/23 by Dmitriy.Dyomin

	Fixed: Landscape Grasstype warning causes log spam when landscape is streamed in or out
	#jira UE-38694

Change 3209135 on 2016/11/23 by Alicia.Cano

	Packaging for iOS fails due to several invalid object type errors
	#jira UE-38431
	#ios

Change 3209822 on 2016/11/24 by Jack.Porter

	IWYU changes for LocationServicesBPLibrary

Change 3209824 on 2016/11/24 by Jack.Porter

	Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)

Change 3210264 on 2016/11/25 by Jack.Porter

	Fix unicode compile issue on Korean windows

Change 3210268 on 2016/11/25 by Jack.Porter

	IWYU and unicode fixes to Dev-Mobile

Change 3211800 on 2016/11/28 by Allan.Bentham

	Create and set PrimitiveSceneProxy->PrimitiveSceneInfo before SetTransform render thread command is enqueued. Avoids race condition with FPrimitiveSceneInfo's constructor which can occur on out-of-order CPUs.

Change 3212621 on 2016/11/28 by Jack.Porter

	More IWYU fixes.

Change 3213080 on 2016/11/29 by Allan.Bentham

	enable UseSingleSampleShadowFromStationaryLights on mobile.

	PR #2990: Fixes single sample shadows for mobile. (Contributed by kallehamalainen)

Change 3213164 on 2016/11/29 by Jack.Porter

	Win32 IWYU fix

Change 3213932 on 2016/11/29 by Chris.Babcock

	Fix handling of ETC2 filtering by Google Play Store (if only ETC2, require ES3.0+ but don't use texture filtering in manifest)
	#jira UE-39120
	#ue4
	#android

Change 3214563 on 2016/11/29 by Dmitriy.Dyomin

	Disable dynamic buffer discarding on Adreno330 (was casuing 10ms stalls on slate buffers update)

Change 3214571 on 2016/11/29 by Dmitriy.Dyomin

	Custom stencil on Mobile
	#jira UEMOB-183

Change 3214641 on 2016/11/30 by Dmitriy.Dyomin

	Disable distance culling when rendering image for world composition
	#jira UE-37754

Change 3214656 on 2016/11/30 by Jack.Porter

	Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)

Change 3218479 on 2016/12/01 by Jack.Porter

	Fix for Vulkan build error when using AutoSDK

Change 3218596 on 2016/12/02 by Dmitriy.Dyomin

	Fixed: Android split screen multiplayer does not function or render correctly
	#jira UE-35204

Change 3218874 on 2016/12/02 by Allan.Bentham

	Fix CSM shadow bug when ES3.1 + mobileHDR == false.
	Fix inverted culling when rendering shadow depths with mobilehdr == false
	#jira UE-39111

Change 3220911 on 2016/12/04 by Jack.Porter

	Fixed landscape duplicated GUID detection and crash when one of the landscapes is in a hidden streaming level

Change 3220935 on 2016/12/04 by Jack.Porter

	Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)

Change 3222831 on 2016/12/05 by Dmitriy.Dyomin

	Added support for MGD and Andreno profilers
	#jira UEMOB-184

Change 3222843 on 2016/12/05 by Jack.Porter

	Fixed bug caused by CL 3196538 causing r.MobileHDR to toggle and crash when opening render settings
	#jira UE-38507

Change 3222934 on 2016/12/06 by Jack.Porter

	Android graphics debugger text changes

Change 3223042 on 2016/12/06 by Dmitriy.Dyomin

	Fixed: missing GPU particles in LDR mode on device
	#jira UE-39363

Change 3223043 on 2016/12/06 by Jack.Porter

	Fixed logspam warnings from TcpMessaging launching on Android
	#jira UE-37895

Change 3223046 on 2016/12/06 by Allan.Bentham

	Move ES3.1 preview mode out of experimental.
	Add per device quality level preview to ES3.1 preview sub menu when project settings allow.

	#jira UEMOB-178

Change 3223113 on 2016/12/06 by Allan.Bentham

	changed MOBILE_EMULATION define for METAL_PROFILE on mac. fixes issues with editor primitive rendering with ES3.1 feature level preview.
	added -featureleveles2/31 commandline support to metalrhi.

Change 3223117 on 2016/12/06 by Allan.Bentham

	Initialise FPrimitiveSceneInfo::CachedReflectionCaptureProxies

Change 3223131 on 2016/12/06 by Allan.Bentham

	Fix translucency rendering when mobilehdr == false. (Disable mod shadows when mobilehdr == false.)
	#jira UE-38343

Change 3223162 on 2016/12/06 by Jack.Porter

	Disallow Absolute World Position with "excluding shader offset" on ES2
	#jra UE-25555

Change 3223204 on 2016/12/06 by Jack.Porter

	Fix for unable to save levels when landscape components with tessellation moved to another level
	#jira UE-39372

Change 3223677 on 2016/12/06 by Chris.Babcock

	Fix tabs

Change 3224139 on 2016/12/06 by Chris.Babcock

	Support modification of build.xml and add post import additions to GameActivity
	#jira UE-31372
	#PR #2440
	#ue4
	#android

Change 3224152 on 2016/12/06 by Chris.Babcock

	Add support for MadCatz C.T.R.L.R Android controller models
	#ue4
	#android

Change 3224162 on 2016/12/06 by Chris.Babcock

	Driver bug fix and using separate context for MediaPlayer14 (contributed by BrianHarris)
	#jira UE-35825
	#PR #2787
	#ue4
	#android

Change 3224581 on 2016/12/07 by Dmitriy.Dyomin

	Fixed black screen regression on iOS OpenGL
	Also now reporting shader compiler errors in iOS

Change 3224589 on 2016/12/07 by Allan.Bentham

	Increase mobile renderer's maximum CSM cascade limit to 4 and introduce max shadow cascade cvar for mobile which defaults to 2 retaining existing behaviour.
	#jira UEMOB-187

Change 3224774 on 2016/12/07 by Jack.Porter

	Added flags for mobile shader permutation reduction
	Renamed mobile lighting policies to better describe them
	Set flags to remove policies not used by SunTemple - saves 22MB package size on Android

	#jira: UEMOB-179

Change 3224782 on 2016/12/07 by Allan.Bentham

	Add project option to set maximum supported CSM cascades to mobile renderer.
	#jira UEMOB-187

Change 3224943 on 2016/12/07 by Dmitriy.Dyomin

	Metal iOS will use sRGB textures
	#jira UEMOB-189

Change 3225098 on 2016/12/07 by Dmitriy.Dyomin

	fix for compile error from 3224943

Change 3225188 on 2016/12/07 by Chris.Babcock

	Fix #includes in deferred Android OpenGL
	#jira UE-39440
	#ue4
	#android

Change 3226402 on 2016/12/07 by Dmitriy.Dyomin

	Fixed: wrong condition for r8 srgb on mac
	#jira UE-39471

Change 3226485 on 2016/12/08 by Dmitriy.Dyomin

	Fixed: Rendering Artifacts and invisible objects in Fortnite
	regression from nobile custom stencil changes
	#jira UE-39452, UE-39455

Change 3226637 on 2016/12/08 by Dmitriy.Dyomin

	Fixed: Odin Ensure Texture passed to ClearDepthStencil is not what is currently set as RenderTarget
	#jira UE-39482

Change 3226922 on 2016/12/08 by Jack.Porter

	Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)

Change 3227353 on 2016/12/08 by Chris.Babcock

	Remove CopyVisualizers batch call again

Change 3228013 on 2016/12/08 By Chris.Babcock

	Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)

[CL 3228374 by Jack Porter in Main branch]
2016-12-08 22:53:00 -05:00
Ben Marsh
20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

[CL 3226823 by Ben Marsh in Main branch]
2016-12-08 08:52:44 -05:00
Ben Marsh
4ba423868f Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#lockdown Nick.Penwarden
#rb none

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

Change 3209340 on 2016/11/23 by Ben.Marsh

	Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.

	Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.

	  * Every header now includes everything it needs to compile.
	        * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
	        * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
	  * Every .cpp file includes its matching .h file first.
	        * This helps validate that each header is including everything it needs to compile.
	  * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
	        * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
	        * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
	  * No engine code explicitly includes a precompiled header any more.
	        * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
	        * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.

	Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.

[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
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
Gil Gribb
28af311319 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3006421)
#lockdown nick.penwarden

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

Change 2998081 on 2016/06/02 by Rolando.Caloca

	DR - Update vulkan headers to 1.0.13.0

Change 2998087 on 2016/06/02 by Rolando.Caloca

	DR - Added r.DumpShaderDebugWorkerCommandLine to dump a batch file containing a command line for SCW's -directcompile mode

Change 2998092 on 2016/06/02 by Rolando.Caloca

	DR - Updated ThirdParty/glslang to 1.0.13.0

Change 2998113 on 2016/06/02 by Martin.Mittring

	Added -Deterministic and -BuildName=... as command line option for Screenshot verification

Change 2998115 on 2016/06/02 by Martin.Mittring

	optimied Tonemapper sharpen 25->17 instructions
	fixes: very bright HDR pixel appeared to not be antialiased
	no blonger blurs very bright pixels (we could bring that back if needed but counters the sharpen)
	moved one multipy into C++
	Added debug visualization (HLSL define)

Change 2998132 on 2016/06/02 by Rolando.Caloca

	DR - Remove auto from VulkanRHI wherever possible

Change 2998148 on 2016/06/02 by Rolando.Caloca

	DR - Move FVulkanPendingState out of device and into cmd list for more RHI thread fixes

Change 2998180 on 2016/06/02 by Rolando.Caloca

	DR - Temp fix for (bogus?) fence validation warning using VULKAN_REUSE_FENCES=0
	- Check we are not asking for a VkFormat out of bounds (ie only works with core formats)

Change 2998293 on 2016/06/02 by Rolando.Caloca

	DR - Add support for BC6H & BC7 in desktop Vulkan

Change 2998419 on 2016/06/02 by Brian.Karis

	Optimized CountBits

Change 2998480 on 2016/06/02 by Rolando.Caloca

	DR - Fix for RHI thread failing in an ensure on es31 (doesn't happen on bypass as the ensure is inside RHI cmd list)

Change 2998486 on 2016/06/02 by Martin.Mittring

	fixed ES2 shader compile

Change 2998527 on 2016/06/02 by Daniel.Wright

	Added cvar r.StencilForLODDither, which is compiled into shaders and forces a full prepass when enabled.  This allows r.EarlyZPass to remain changeable at runtime (when not forced to a value by features that are enabled).

Change 2998531 on 2016/06/02 by Daniel.Wright

	Fixed Pixel Normal Offset refraction mode with materials using world space normals

Change 2998568 on 2016/06/02 by Rolando.Caloca

	DR - Fix typo

Change 2998630 on 2016/06/02 by Rolando.Caloca

	DR - Relaxed glslang strictness to get Pos tCombineLUTs working
	- Reenabled Post CombineLUTs on Vulkan
	- Removed some extra glsl output from Vulkan backend
	- Fixed RHI thread uniform buffer assert

Change 2998639 on 2016/06/02 by Brian.Karis

	Fix for crash when removing instances while lighting is building

Change 2998640 on 2016/06/02 by Martin.Mittring

	added r.ResetViewState to allow for more deterministic rendering
	made SSR FrameRandom resetable by not using FrameNumber (Note: SSR on a view without state was flickering before, not it's stabele and doesn't flicker)

Change 2998790 on 2016/06/02 by Martin.Mittring

	minor optimization to SSR

Change 2999849 on 2016/06/03 by Martin.Mittring

	fixed issue with sort order

Change 3000340 on 2016/06/03 by Rolando.Caloca

	DR - Integrate change from 3000177
	Workaround for random crash shutting down D3D11/NV driver
	jira UE-18906

Change 3000422 on 2016/06/03 by Rolando.Caloca

	DR - Mirror change in Odin

Change 3000571 on 2016/06/03 by Rolando.Caloca

	DR - Vulkan SM4 prep

Change 3001652 on 2016/06/06 by Gil.Gribb

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

Change 3001935 on 2016/06/06 by Gil.Gribb

	UE4 - Fixed botched merge

Change 3002390 on 2016/06/06 by Gil.Gribb

	UE4 - Added code to prevent flooding of rendering thread with heartbeats.

Change 3002442 on 2016/06/06 by Martin.Mittring

	Moved ImageInvalidator out of NotForLicensees - V1.0 works well enough

Change 3002460 on 2016/06/06 by Martin.Mittring

	fixed missing file in ImageValidator
	added .exe to extras

Change 3002514 on 2016/06/06 by Martin.Mittring

	added OpenSubDiv 3.0.2, not yet used

Change 3002536 on 2016/06/06 by Martin.Mittring

	fixed help text on cvar

Change 3002647 on 2016/06/06 by Martin.Mittring

	adding r.ResetViewState to RenderOutputValidation
	added r.Streaming.FramesForFullUpdate to r.DisplayInternals
	#code_review:Benjamin.Hyder

Change 3002945 on 2016/06/06 by Rolando.Caloca

	DR - Fix hlslcc issue with access to matrix elements:
	This would fail:
	M._m30 += f;
	- Fixed IRDump for matrix swizzled
	- Fix hlslcc_exe not linking

Change 3002979 on 2016/06/06 by John.Billon

	DDS unsupported format error
	#Jira UE-24529

Change 3002983 on 2016/06/06 by Martin.Mittring

	split FPixelShaderInOut in in and out

Change 3003011 on 2016/06/06 by Martin.Mittring

	updated OpenSubDiv to 3.0.2
	Fixed SubDivisonRendring by using OpenSubDiv

Change 3003264 on 2016/06/06 by Daniel.Wright

	Fixed bUseSingleSampleShadowFromStationaryLights on particles

Change 3003296 on 2016/06/06 by Daniel.Wright

	Renamed files Forward* to Mobile*

Change 3003350 on 2016/06/06 by Daniel.Wright

	Improved "Repaired Painted Vertex Colors" log message.  This is now done once on levels at load in the editor, instead of for every component (massive log spam).  Total load time caused by the fixup is reported.

Change 3003815 on 2016/06/07 by Chris.Bunner

	Updating to more recent D3DCompiler DLL, seeing up to 2x speed-up in testing.
	Removed compiler override cvar.
	#jira UE-28574

Change 3003827 on 2016/06/07 by Gil.Gribb

	UE4 - Increased stack sizes for thread pools.

Change 3003971 on 2016/06/07 by Martin.Mittring

	fixed compiler warnings

Change 3004028 on 2016/06/07 by Rolando.Caloca

	DR - Update glslang exe

Change 3004555 on 2016/06/07 by Rolando.Caloca

	DR - vk - Fix validation warning

Change 3004637 on 2016/06/07 by Martin.Mittring

	fixed compiler warning

Change 3004841 on 2016/06/07 by Daniel.Wright

	Fix for shadowed variable

Change 3005044 on 2016/06/07 by Daniel.Wright

	SubUV Animations can get opacity information from any channel of the source texture

Change 3005057 on 2016/06/07 by Daniel.Wright

	Renamed ForwardShading* to Mobile*

Change 3005135 on 2016/06/07 by Uriel.Doyon

	Moving wanted mip computation (according to budget) to async task.
	Update "stat streaming" to show visible mips and also loading progression.
	Fixed overly wanted mip issue cause be max range clamping.
	Optimized cost of the texture streamer on the gamethread.
	Character, Terrain and Forced Load are now loaded with priority in the AsyncIO
	Reduced streaming temp memory requirements on PS4.
	Async streaming task now runs in parallel to the incremental update.
	Fixed bug with bProcessEverything not working as expected in UpdateResourceStreaming.
	Fixed metrics with HiddenScale being applied in addition to overbudget limitation.
	Improved budget stability when using split load request (one for visible mips + one for hidden mips)
	Implemented a more agressive visibility test (used to be a seen in the last 5 sec, now closer to .5)
	Streaming stats are now within a single class named FTextureStreamingStats and updated in a single function.
	Cleanup of FStreamingTexture state update into a single function (UpdateDynamicData).
	Retention logic now drops texture based on the last render time (for non visible textures) to reduce looping effects.

Change 3005207 on 2016/06/07 by Uriel.Doyon

	Fixed warning

[CL 3006426 by Gil Gribb in Main branch]
2016-06-08 16:02:23 -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
Gil Gribb
5f4d6e257c Copying //UE4/Dev-Rendering to Dev-Main (//UE4/Dev-Main) (Source: //UE4/Dev-Rendering @ 2943238)
#lockdown nick.penwarden

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

Change 2932679 on 2016/04/04 by Martin.Mittring

	remove hack/cvar that is not longer needed as we fixed the bug
	#rb:Bob.Tellez
	#code_review:Bob.Tellez

Change 2932681 on 2016/04/04 by Martin.Mittring

	fixed cvars in consolevariables.ini can affect engine even if marked with cheat (no longer load consolevariables.ini in shipping and test), unified 3 code path, added testcase, cvars with cheat in ini file other than consolevariables.ini now trigger ensure, =on/off/true/false/.. works in all ini files,
	added enure if non scalability setting are used in ScalabilityIni (get now ignored)
	#rb:David.Hill
	#code_review:Marcus.Wassmer, Michael.Noland

Change 2932719 on 2016/04/04 by Marcus.Wassmer

	Merge 3 band SH back to DevRendering
	#rb Daniel.Wright

Change 2932760 on 2016/04/04 by Zabir.Hoque

	Migrating high resolution cubemaps for skylight and reflection probes.

	#rb: Daniel.Wright

Change 2933121 on 2016/04/05 by Rolando.Caloca

	DR - vk - Fix free blocks not getting joined
	- Fix compile issue

Change 2933122 on 2016/04/05 by Rolando.Caloca

	DR - Do not shorten dumped shaders path

Change 2933126 on 2016/04/05 by Rolando.Caloca

	DR - vk  - Index Buffers using new resource management

Change 2933127 on 2016/04/05 by Rolando.Caloca

	DR - vk - Extract multibuffer off index buffer

Change 2933131 on 2016/04/05 by Rolando.Caloca

	DR - vk - Transition to vb's using mutlibuffer

Change 2933136 on 2016/04/05 by Rolando.Caloca

	DR - vk - Change staging buffers to use resource allocation system
	- Fix free block not getting joined
	- Remove define

Change 2933140 on 2016/04/05 by Rolando.Caloca

	DR - vk - 'static' textures now use resource mgmt
	- Release free pages back to the OS
	- Remove ensure

Change 2933152 on 2016/04/05 by Rolando.Caloca

	DR - vk - Fix aliasing granularity
	- Fix renderpass end/copy buffer ensure

Change 2933155 on 2016/04/05 by Rolando.Caloca

	DR - SCW - Fix for -directcompile to directly load file for preprocessor

Change 2933158 on 2016/04/05 by Rolando.Caloca

	DR - hlslcc - Error on Metal if trying to R & W on RWTextures
	- Fix indices on RW reads to be unsigned
	#codereview Mark.Satterthwaite, Michael.Trepka

Change 2933169 on 2016/04/05 by Rolando.Caloca

	DR - vk - Move header to public to match changes on DevMobile

Change 2933173 on 2016/04/05 by David.Hill

	Deferred decal rendering with negative scale
	#rb:Matrin.Mittring
	#jira:UE-27389

Change 2933273 on 2016/04/05 by Rolando.Caloca

	DR - vk - Fix renderdoc markers

Change 2933274 on 2016/04/05 by Rolando.Caloca

	DR - Support for -AttachDebugger

Change 2933316 on 2016/04/05 by Rolando.Caloca

	DR - vk - Compile fix whene enabling define

Change 2933334 on 2016/04/05 by Rolando.Caloca

	DR - Compile fix
	#codereview Martin.Mittring

Change 2933805 on 2016/04/05 by Brian.Karis

	Temporal AA dynamic antighosting.

	Fixed DOF

Change 2933811 on 2016/04/05 by Brian.Karis

	Fixed area light NaNs. Improvements to area lights. Horizen handling for wrap around.

Change 2933812 on 2016/04/05 by Brian.Karis

	Fixed fresnel on SSS skin.

Change 2933813 on 2016/04/05 by Brian.Karis

	Tessellation fix

Change 2933816 on 2016/04/05 by Brian.Karis

	Improved forward shading support

[CL 2943241 by Gil Gribb in Main branch]
2016-04-13 21:24:38 -04:00
Peter Sauerbrei
865909dbbb Copying //UE4/Dev-Mobile to Dev-Main (//UE4/Dev-Main) @2911599
#lockdown nick.penwarden

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

Change 2854295 on 2016/02/03 by Gareth.Martin@gareth.martin

	Added support for Landscape grass to use the landscape's light/shadow maps
	(original github pull request #1798 by Frugality)

Change 2875167 on 2016/02/21 by Rolando.Caloca@Home_DM

	DM - glslang

Change 2875650 on 2016/02/22 by Rolando.Caloca@rolando.caloca_T3903_DM

	DM - Common RHI changes

Change 2876429 on 2016/02/22 by Rolando.Caloca@rolando.caloca_T3903_DM

	DM - Initial rhi check-in. Tappy & SunTemple working on PC.
	#codereview Jack.Porter, Chris.Babcock, Josh.Adams

Change 2876665 on 2016/02/22 by Rolando.Caloca@rolando.caloca_T3903_DM

	DM - Split Immediate command list off RHI

Change 2881242 on 2016/02/25 by Jack.Porter@Jack.Porter_UE4_Stream

	changes to exclude LPV shaders from Vulkan
	(reapplied with edit instead of integrate records)

Change 2881356 on 2016/02/25 by Jack.Porter@Jack.Porter_UE4_Stream

	Static shadowing + dynamic-object CSM

Change 2881359 on 2016/02/25 by Jack.Porter@Jack.Porter_UE4_Stream

	Mobile GPU particles

Change 2881360 on 2016/02/25 by Jack.Porter@Jack.Porter_UE4_Stream

	Planar reflections very WIP

Change 2881363 on 2016/02/25 by Jack.Porter@Jack.Porter_UE4_Stream

	Separate Translucency very WIP

Change 2881365 on 2016/02/25 by Jack.Porter@Jack.Porter_UE4_Stream

	ProtoStar engine changes

Change 2881371 on 2016/02/25 by Jack.Porter@Jack.Porter_UE4_Stream

	HACK for Max Texture Samplers hardcoded to 8 on ES2
	Should be cleaned up better with UE-24419.
Change 2884295 on 2016/02/26 by Rolando.Caloca@rolando.caloca_T3903_DM

	DM - Integrate pipeline cache

Change 2887043 on 2016/02/29 by Rolando.Caloca@Home_DM

	DM - Initial CCT support

Change 2887572 on 2016/03/01 by Rolando.Caloca@rolando.caloca_T3903_DM

	DM - Empty bound shader states cache
	- Only used currently on Vulkan

Change 2889114 on 2016/03/01 by Rolando.Caloca@Home_DM

	DM - Added GRHINeedsExtraDeletionLatency from 4.11

Change 2889115 on 2016/03/01 by Rolando.Caloca@Home_DM

	DM - Remove batched elements quads (was not been used at least since UE3!)

Change 2895373 on 2016/03/04 by Rolando.Caloca@rolando.caloca_T3903_DM

	DM - Fence mgr (disabled)

Change 2898926 on 2016/03/08 by Rolando.Caloca@rolando.caloca_T3903_DM

	DM - Resource management (disabled)

Change 2899937 on 2016/03/08 by Rolando.Caloca@rolando.caloca_T3903_DM

	DM - Expand number of stencil op bits

Change 2901132 on 2016/03/09 by Rolando.Caloca@rolando.caloca_T3903_DM

	DM - Add support for more MaxSimultaneousRenderTargets

Change 2903074 on 2016/03/10 by Rolando.Caloca@rolando.caloca_T3903_DM

	DM - Support for 3d staging textures

Change 2903211 on 2016/03/10 by Jack.Porter@Jack.Porter_UE4_Stream

	Vulkan RHI stub for new SharedResourceView RHI call

Change 2904014 on 2016/03/10 by Rolando.Caloca@rolando.caloca_T3903_DM

	DM - SM4 preq

Change 2905389 on 2016/03/11 by Jack.Porter@Jack.Porter_UE4_Stream

	Android Vulkan support initial checkin

Change 2908458 on 2016/03/14 by Allan.Bentham@Dev-Mobile

	Reinstate vertex fog, fixes UE-28166

Change 2910294 on 2016/03/15 by Rolando.Caloca@rolando.caloca_T3903_DM

	DM - Use fence manager

Change 2910801 on 2016/03/15 by Rolando.Caloca@rolando.caloca_T3903_DM

	DM - Descriptor pool

[CL 2912606 by Peter Sauerbrei in Main branch]
2016-03-16 21:16:51 -04:00
Matthew Griffin
bb70b349ce Merging CL 2804086 from //UE4/Release-4.11 to Dev-Main (//UE4/Dev-Main) to isolate copyright update
#lockdown Nick.Penwarden

[CL 2819020 by Matthew Griffin in Main branch]
2016-01-07 08:17:16 -05:00
Jack Porter
8a01d434b7 Fix Uniform Buffer assertion on startup on ES2 because GBlackVolumeTexture is unavailable on ES2.
#lockdown Nick.Penwarden
#jira UE-23353

[CL 2767562 by Jack Porter in Main branch]
2015-11-16 06:10:03 -05:00
Nick Penwarden
9bb3cb533a Copying //UE4/Dev-Rendering to Dev-Main (//UE4/Dev-Main)
#lockdown ben.marsh

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

Change 2733540 on 2015/10/19 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream

	Capsule shadows
	* Capsule shadows excel at extremely soft area shadows caused by a large light source angle, but don't support accurate self-shadowing
	* Artists can setup a physics asset containing Spheres and Sphyls (capsules) for a skeletal mesh that will be used to represent the mesh's occlusion
	* These shapes can then be used for direct shadowing (bCastCapsuleDirectShadow) on a skeletal mesh component, whose softness depends on the light source angle / radius
	* The shapes can also be used to create an indirect shadow (bCastCapsuleIndirectShadow), whose direction and softness is derived from the precomputed sky occlusion (stationary sky light) or primary indirect lighting (static sky light)
	* Capsule shadowing is computed at half res and uses tiled deferred culling for efficiency - only implemented for PC SM5 + PS4 so far
	* Shadowing of movable skylights is not yet supported

Change 2735460 on 2015/10/20 by Uriel.Doyon@uriel.doyon_office_data

	Basepass drawlist are now merged within a single drawlist.
	Lighting policy parameters are now accessed through a uniform buffer.
	Changed the global resource initialization so that InitRHI now comes before InitDynamicRHI
	#codereview nick.penwarden

Change 2744741 on 2015/10/28 by Nick.Penwarden@nickp_streams

	Remove unused RHI methods:

	RHIIsDrawingViewport
	RHIGpuTimeBegin
	RHIGpuTimeEnd

	Made default/empty versions of these calls and removed stubs from RHIs that don't use them:

	RHISuspendRendering
	RHIResumeRendering
	RHIIsRenderingSuspended

Change 2745714 on 2015/10/28 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream

	Lighting channels - each component and light can choose from 3 channels
	* Primitives output their channel mask to stencil during the base pass, the masks are copied to a texture after the base pass, deferred lighting passes compare the primitive mask against the light's mask
	* Dynamic shadow casting also respects the channels
	* Only works on opaque materials, direct lighting, dynamic lighting
	* Not implemented for tiled deferred atm
	* This will replace CastsShadowsFromCinematicObjectsOnly in the future
	#rb Martin.Mittring

Change 2746243 on 2015/10/29 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New

	First pass at separate Async Compute Context
	#codereview Lee.Clark,Daniel.Wright
	#rb Gil.Gribb

Change 2746989 on 2015/10/29 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering

	Removed a lot of complexity of the skeletal mesh motionblur code (better for multithreading, simpler, faster) but going from one large buffer to per mesh buffers. Upload of bones only needed once.

	* GPUSkinCache didn't even work before (in this branch)
	* tested  BasePass velocity
	* tested split screen
	* tested editor pause
	* matinee camera cut (no need, invalidates velocity)
	* tested CPU Skin?  (never has motionblur)
	* tested CreateSceneProxy (recreation is prevented in CreteSceneProxy unless bone count changes)
	* test ES2 -featureleveles2

	#rb: Rolando.Caloca

Change 2750734 on 2015/11/02 by Uriel.Doyon@uriel.doyon_office_data

	Embree integration into Lightmass
	Can be enabled through Lightmass.ini  [DevOptions.StaticLighting]bUseEmbree.
	Also [DevOptions.StaticLighting]bVerifyEmbree will compare ray casting results.
	Only usable on Win64 with this submit.
	#review daniel.wright

Change 2752730 on 2015/11/03 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering

	added SSAO CS version, can be enabled with

	r.AmbientOcclusion.Compute 1

	Not optimized yet
	#rb:Olaf.Piesche

Change 2752766 on 2015/11/03 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream

	Lightmass solver quality improvements
	* IndirectLightingScale is no longer applied to photons, avoids splotchy artifacts when using small scales
	* New 'Lightmass Portal' actor / component which tells the solver where to look for significant lighting.  When lighting with a Static Skylight only, in a mostly indoor environment, setting up these portals is the only way to get high quality.
	* Skylight bounce lighting is now much more accurate and leverages adaptive sampling
	* Fixed a bug that effectively disabled adaptive sampling on high IndirectLightingQualities
	* Shadow penumbras are also improved by IndirectLightingQuality
	* Texel debugging is now a cvar 'r.TexelDebugging', instead of requiring a full recompile

Change 2754018 on 2015/11/04 by Uriel.Doyon@uriel.doyon_office_data

	Quad Complexity ViewMode (PCD3D_SM5 only).
	Shader Complexity with Quad Overhead ViewMode (PCD3D_SM5 only). Require ShaderComplexity ViewMode & Show.Visualize.QuadOverhead
	#review brian.karis

Change 2754760 on 2015/11/04 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering

	improved SSAO quality (less high frequency noise) to avoid TemporalAA smearing

Change 2756308 on 2015/11/05 by Rolando.Caloca@rolando.caloca_T3903_S

	DevRendering - Enable removing unused outputs on PS4 shader pipelines, disable by default removing unused on D3D (toggable with r.D3DRemoveUnusedInterpolators)
	#codereview Marcus.Wassmer

Change 2757063 on 2015/11/06 by Simon.Tovey@Simon.Tovey_Dev

	Submitting pull request from user Pierdek.
	Early out of particle collision module update if there are no active particles.

	#github
	#1614

Change 2757340 on 2015/11/06 by Gil.Gribb@Gil.Gribb_Z2439_Dev-Rendering

	UE4 - Fixed the experimental r.RHICmdBalanceParallelLists 2 mode and renabled it for orion.

Change 2757343 on 2015/11/06 by Gil.Gribb@Gil.Gribb_Z2439_Dev-Rendering

	UE4 - Added a path so that texture streaming can avoid flushing the RHI thread.

Change 2757985 on 2015/11/06 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream

	Added new PrimitiveComponent setting bSingleSampleShadowFromStationaryLights
	* When enabled, shadowing of a movable component from a stationary directional light will come from the Volume Lighting Samples precomputed by Lightmass
	* This provides essentially free on/off shadow receiving on dynamic objects, with a fade over time between states
	* Lighting has to be rebuilt once for this to work
	#rb Rolando.Caloca

Change 2759058 on 2015/11/09 by Gil.Gribb@Gil.Gribb_Z2439_Dev-Rendering

	UE4 - Dynamically set stream source to avoid creating a separate drawing policy for each static mesh with vertex colors.
	#rb Daniel.Wright

Change 2760523 on 2015/11/10 by Uriel.Doyon@uriel.doyon_office_data

	Enabled Embree by default
	#review daniel.wright

==========================
ALL CHANGELISTS
==========================

Change 2720123 on 2015/10/07 by Rolando.Caloca@Rolando.Caloca_T4688_5331 'Dev-Rendering - 'integrate' Tem'
Change 2721682 on 2015/10/08 by Gil.Gribb@Gil.Gribb_Z2439_Dev-Rendering 'UE4 - Eliminated a fatal error '
Change 2721815 on 2015/10/08 by Rolando.Caloca@Rolando.Caloca_T4688_5331 'Dev-Rendering - Fix crash exiti'
Change 2724755 on 2015/10/12 by Rolando.Caloca@Rolando.Caloca_T4688_5331 'Dev-Rendering -  D3D12 Fix Tier'
Change 2724781 on 2015/10/12 by Rolando.Caloca@Rolando.Caloca_T4688_5331 'Dev-Rendering - D3D12 Fix offse'
Change 2728317 on 2015/10/14 by Rolando.Caloca@Rolando.Caloca_T4688_5331 'Dev-Rendering - hlslcc - Fix fo'
Change 2729170 on 2015/10/14 by Chris.Bunner@Chris.Bunner_Dev_Stream 'Force Lightmass volume sample g'
Change 2732131 on 2015/10/16 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'fixed resource transition issue'
Change 2732218 on 2015/10/16 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'minor code cleanup '
Change 2733533 on 2015/10/19 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'Clear stencil to 0 after decals'
Change 2733540 on 2015/10/19 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'Capsule shadows * Capsule shado'
Change 2733546 on 2015/10/19 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'Light shaft targets are only al'
Change 2733602 on 2015/10/19 by Uriel.Doyon@uriel.doyon_office_data 'Decals not writing to Normal ca'
Change 2733627 on 2015/10/19 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'Fix for transition ensure. '
Change 2735292 on 2015/10/20 by Brian.Karis@Brian.Karis_T3247_Rendering 'Fix for dark lightmap precision'
Change 2735298 on 2015/10/20 by Brian.Karis@Brian.Karis_T3247_Rendering 'Fix for speedtree LOD transitio'
Change 2735460 on 2015/10/20 by Uriel.Doyon@uriel.doyon_office_data 'Basepass drawlist are now merge'
Change 2737214 on 2015/10/21 by Chris.Bunner@Chris.Bunner_Dev_Stream 'Expanded a warning when importi'
Change 2738581 on 2015/10/22 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'Updated comment on stencil usag'
Change 2738583 on 2015/10/22 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'Changed bound but not set scene'
Change 2738584 on 2015/10/22 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'Fixed skylight occlusion maps b'
Change 2738589 on 2015/10/22 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'Lightmap streaming fixes * Chan'
Change 2738593 on 2015/10/22 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'Fix from licensee for race cond'
Change 2738982 on 2015/10/22 by Olaf.Piesche@Olaf.Piesche_roaming 'Activating CanTickOnAnyThread f'
Change 2739032 on 2015/10/22 by Olaf.Piesche@Olaf.Piesche_roaming 'Fixing compiler barf with Clang'
Change 2741517 on 2015/10/26 by Rolando.Caloca@rolando.caloca_T3903_S 'DevRindering - D3D12 - Integrat'
Change 2743790 on 2015/10/27 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'Fixed texel debugging on static'
Change 2743958 on 2015/10/27 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'added comments '
Change 2744153 on 2015/10/27 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'Unity compile fix '
Change 2744741 on 2015/10/28 by Nick.Penwarden@nickp_streams 'Remove unused RHI methods:  RHI'
Change 2745714 on 2015/10/28 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'Lighting channels - each compon'
Change 2746242 on 2015/10/29 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'Fix crashes on init by swapping'
Change 2746243 on 2015/10/29 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'First pass at separate Async Co'
Change 2746296 on 2015/10/29 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'Buffer label frees so we don't '
Change 2746297 on 2015/10/29 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'updated comment '
Change 2746343 on 2015/10/29 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'added comment '
Change 2746347 on 2015/10/29 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'added comment '
Change 2746811 on 2015/10/29 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'Draw event for compute commandl'
Change 2746989 on 2015/10/29 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'Removed a lot of complexity of '
Change 2747127 on 2015/10/29 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'Improved game console printout '
Change 2747702 on 2015/10/30 by Chris.Bunner@Chris.Bunner_Dev_Stream 'Bumped Lightmass StaticMesh imp'
Change 2747954 on 2015/10/30 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'Fix SubmitDone not called TRC e'
Change 2747979 on 2015/10/30 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'polish console autocomplete tex'
Change 2750719 on 2015/11/02 by Uriel.Doyon@uriel.doyon_office_data 'Add Embree 2.7.0 for Win64 and '
Change 2750734 on 2015/11/02 by Uriel.Doyon@uriel.doyon_office_data 'Embree integration into Lightma'
Change 2750872 on 2015/11/02 by Nick.Penwarden@nickp_streams 'Merging //UE4/Dev-Main to Dev-R'
Change 2751934 on 2015/11/03 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'Disambiguate template function '
Change 2752190 on 2015/11/03 by Gil.Gribb@Gil.Gribb_Z2439_Dev-Rendering 'UE4 - Fixed assert relating to '
Change 2752333 on 2015/11/03 by Rolando.Caloca@rolando.caloca_T3903_S 'DevRendering - Shader pipeline '
Change 2752655 on 2015/11/03 by Rolando.Caloca@Rolando.Caloca_T3903_S 'DevRendering - Fix Materials pa'
Change 2752710 on 2015/11/03 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'added comment '
Change 2752711 on 2015/11/03 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'added better comment/help text '
Change 2752730 on 2015/11/03 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'added SSAO CS version, can be e'
Change 2752766 on 2015/11/03 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'Lightmass solver quality improv'
Change 2752869 on 2015/11/03 by Rolando.Caloca@rolando.caloca_T3903_S 'DevRendering - Add shader pipel'
Change 2752882 on 2015/11/03 by Rolando.Caloca@Rolando.Caloca_T3903_S 'DevRendering - hlslcc - Metal -'
Change 2752899 on 2015/11/03 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'small SSAO GPU optimization mov'
Change 2752934 on 2015/11/03 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'minor GPU optimization for SSAO'
Change 2753109 on 2015/11/03 by Uriel.Doyon@uriel.doyon_office_data 'Fixed final build '
Change 2753669 on 2015/11/04 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'fixed SM4 compiling '
Change 2754002 on 2015/11/04 by Nick.Penwarden@nickp_streams 'test change '
Change 2754018 on 2015/11/04 by Uriel.Doyon@uriel.doyon_office_data 'Quad Complexity ViewMode (PCD3D'
Change 2754115 on 2015/11/04 by Gil.Gribb@Gil.Gribb_Z2439_Dev-Rendering 'UE4 - Fixed end of frame update'
Change 2754297 on 2015/11/04 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'PS4 compile fixes #codereview U'
Change 2754405 on 2015/11/04 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'minor SSAO ALU optimizations fi'
Change 2754512 on 2015/11/04 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'adjusted clamp for cvar '
Change 2754760 on 2015/11/04 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'improved SSAO quality (less hig'
Change 2755572 on 2015/11/05 by Rolando.Caloca@rolando.caloca_T3903_S 'DevRendering - PS4 warning fix '
Change 2755667 on 2015/11/05 by Gil.Gribb@Gil.Gribb_Z2439_Dev-Rendering 'UE4 - Fixed UE-22742, leak in t'
Change 2755722 on 2015/11/05 by Rolando.Caloca@rolando.caloca_T3903_S 'DevRendering - Remove unused co'
Change 2755814 on 2015/11/05 by Nick.Penwarden@nickp_streams 'Merging //UE4/Dev-Main to Dev-R'
Change 2755935 on 2015/11/05 by Rolando.Caloca@rolando.caloca_T3903_S 'DevRendering - Rebuild static m'
Change 2756003 on 2015/11/05 by Uriel.Doyon@uriel.doyon_office_data 'Reduce the number of precompute'
Change 2756145 on 2015/11/05 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'Temp fix for GPU crash #rb none'
Change 2756308 on 2015/11/05 by Rolando.Caloca@rolando.caloca_T3903_S 'DevRendering - Enable removing '
Change 2756435 on 2015/11/05 by Olaf.Piesche@Olaf.Piesche_roaming 'Disabling a check, to fix OR-85'
Change 2757063 on 2015/11/06 by Simon.Tovey@Simon.Tovey_Dev 'Submitting pull request from us'
Change 2757340 on 2015/11/06 by Gil.Gribb@Gil.Gribb_Z2439_Dev-Rendering 'UE4 - Fixed the experimental r.'
Change 2757341 on 2015/11/06 by Gil.Gribb@Gil.Gribb_Z2439_Dev-Rendering 'UE4 - Changed the RHI thread di'
Change 2757342 on 2015/11/06 by Gil.Gribb@Gil.Gribb_Z2439_Dev-Rendering 'UE4 - Fixed lazy uniform buffer'
Change 2757343 on 2015/11/06 by Gil.Gribb@Gil.Gribb_Z2439_Dev-Rendering 'UE4 - Added a path so that text'
Change 2757500 on 2015/11/06 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'Add FrameSync to externalprofil'
Change 2757650 on 2015/11/06 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'GBuffer should only be consider'
Change 2757665 on 2015/11/06 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'UE-22816 Instruction count is n'
Change 2757834 on 2015/11/06 by Michael.Trepka@Michael.Trepka_a4202_Dev-Rendering 'Embree integration into Lightma'
Change 2757930 on 2015/11/06 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'Fix UT ensure #rb Peter.Knepley'
Change 2757931 on 2015/11/06 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'Fix Ocean ensure #rb josh.ander'
Change 2757946 on 2015/11/06 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'Removed invalid Lightmass asser'
Change 2757985 on 2015/11/06 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'Added new PrimitiveComponent se'
Change 2758049 on 2015/11/06 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'OR-8600 CRASH: AllocationLeveli'
Change 2758059 on 2015/11/06 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'r.DumpTransitionsForResource #r'
Change 2758082 on 2015/11/06 by Rolando.Caloca@rolando.caloca_T3903_S 'DevRendering - Fix resource tra'
Change 2758879 on 2015/11/09 by Rolando.Caloca@rolando.caloca_T3903_S 'DevRendering - Fix PSSL names f'
Change 2758911 on 2015/11/09 by Gil.Gribb@Gil.Gribb_Z2439_Dev-Rendering 'UE4 - Fixed accidental force di'
Change 2758968 on 2015/11/09 by Uriel.Doyon@uriel.doyon_office_data 'Disabled single frame buffer us'
Change 2758991 on 2015/11/09 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'Fix togglerhithread crash #rb G'
Change 2759058 on 2015/11/09 by Gil.Gribb@Gil.Gribb_Z2439_Dev-Rendering 'UE4 - Dynamically set stream so'
Change 2759063 on 2015/11/09 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'fixed UE-22368 CLONE - GitHub 1'
Change 2759073 on 2015/11/09 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'minor code quality improvements'
Change 2759501 on 2015/11/09 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'Fix particle ensure. '
Change 2759522 on 2015/11/09 by Marcus.Wassmer@Marcus.Wassmer_DevRendering_New 'Fix decals using CustomStencil.'
Change 2759610 on 2015/11/09 by Daniel.Wright@Daniel.Wright_G5038_RenderingStream 'Fixed line light source shadows'
Change 2759634 on 2015/11/09 by Uriel.Doyon@uriel.doyon_office_data 'Refined GBufferA resolving when'
Change 2759657 on 2015/11/09 by Martin.Mittring@Martin.Mittring_Z3941_Dev_Rendering 'Fixed ResourceTransition with r'
Change 2759693 on 2015/11/09 by Rolando.Caloca@Rolando.Caloca_T4688_S 'DevRendering - Fixed global sha'
Change 2759771 on 2015/11/09 by Uriel.Doyon@uriel.doyon_office_data 'Fixed editor hit proxy renderin'
Change 2760188 on 2015/11/09 by Uriel.Doyon@uriel.doyon_office_data 'Disabled some more deferred dec'
Change 2760523 on 2015/11/10 by Uriel.Doyon@uriel.doyon_office_data 'Enabled Embree by default #revi'

[CL 2761339 by Nick Penwarden in Main branch]
2015-11-10 17:11:09 -05:00
Allan Bentham
53b8d22820 CSM fixes for forward renderer
MAX_FORWARD_SHADOWCASCADES is correctly defined for OutEnvironment.
 Only render shadow maps that have been successfully allocated texture space.
 fwd shader can deal with full range of MAX_FORWARD_SHADOWCASCADES.
 limit shadow map renders to no more than MAX_FORWARD_SHADOWCASCADES.
 reduce shadow map size to ensure all tiles fit within GMaxShadowDepthBufferSize.
Fixes UE-10282.
#codereview nick.penwarden, Rolando.Caloca

[CL 2466184 by Allan Bentham in Main branch]
2015-03-02 08:00:04 -05:00
Ben Marsh
149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00
Rolando Caloca
29c68f2eec UE4 - Cascaded shadow maps on mobile/forward
* Still disabled as Metal requires a horrible workaround/hack
* Remove GSupportsGSRenderTargetLayerSwitchingToMips workaround

[CL 2295640 by Rolando Caloca in Main branch]
2014-09-12 17:21:49 -04:00