Commit Graph

11 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
Andrew Grant
d753cb7028 Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 3358916)
#lockdown Nick.Penwarden

Change 3358916 on 2017/03/22 by Andrew.Grant

	Merging //Orion/Main to Dev-General (//Orion/Dev-General)
	#!tests #!rb na

Change 3357395 on 2017/03/21 by Daniel.Lamb

	Added some more custom stats to the cooker.
	Only cook the english cook culture when we are running local builds.
	#!rb Trivial
	#!test Iterative shared cooked builds paragon

Change 3357377 on 2017/03/21 by Daniel.Lamb

	Added support for packages which fail to load to the package dependency info module
	#!rb Trivial
	#!test Cook paragon

Change 3356838 on 2017/03/21 by Andrew.Grant

	Merging //Orion/Main to Dev-General (//Orion/Dev-General)
	#!3rb #!tests na

Change 3355306 on 2017/03/20 by Daniel.Lamb

	Switched PackageDependencyInfo to using Guid instead of entire package hash when generating dependency info.
	Stopped cooker from collecting garbage while in the editor.
	Iterative cooks don't resolve string asset references for startup packages.
	#!rb Trivial
	#!test Shared precooked build paragon

Change 3354527 on 2017/03/20 by Wes.Hunt

	AnalyticsProvider::SetUserID will now flush any pending events before changing the ID. #!jira AN-1660
	#!fyi josh.markiewicz,david.nikdel
	#!rb josh.markiewicz
	#!tests ran client connected to Solo vs. AI server

Change 3353852 on 2017/03/20 by Benn.Gallagher

	Speculative fix for clothing crashes using Mambo. It was possible that the skeletal mesh component could have triggered deletion or creation of simulation state objects while the simulation was in flight on another thread, added tracking and waiting for outstanding tasks.
	#!jira OR-36843, UE-42975
	#!rb Martin.Wilson
	#!tests Editor PIE, -game hero gallery

Change 3353048 on 2017/03/18 by Jeff.Williams

	#!ORION_DG - Merge MAIN @CL 3353033

Change 3352845 on 2017/03/17 by Daniel.Lamb

	Renamed the ConvertRenderTargetToTexture2D function so that it's obvious it's a editor only feature.
	#!rb Daniel.Wright
	#!test Editor paragon

Change 3352544 on 2017/03/17 by Daniel.Lamb

	ADded support for ignoring ini settings incompatbilities when using shared cooked builds.
	#!rb Trivial
	#!test Shared cooked build paragon

Change 3352285 on 2017/03/17 by Daniel.Lamb

	Fix client side compilation error to do with render texture conversion function
	#!rb Trivial
	#!test Compile Paragon

Change 3352141 on 2017/03/17 by Daniel.Lamb

	Added support for blueprint function to convert a rendertexture to a texture.
	#!rb Daniel.Wright
	#!test Run in the editor

Change 3351612 on 2017/03/17 by Andrew.Grant

	Expand EngineDir and ProjectDir variables during AppLocal deployment
	#!tests Jamie verified packaging Orion via the editor works now
	#!rb Jamie.Dale

Change 3350470 on 2017/03/16 by Laurent.Delayen

	Fix for PS4 compile.

	#!rb none
	#!tests PS4 + non unity

Change 3350237 on 2017/03/16 by Andrew.Grant

	Pak-mounting fix from Dev-Core for OR-36896
	#!tests na
	#!rb GIl.Gribb

Change 3350079 on 2017/03/16 by Laurent.Delayen

	Added 'AnimNotify_PlayMontageNotify' and 'AnimNotify_PlayMontageNotifyWindow' to forward notifies Begin/End to 'PlayMontage' AsyncTask.

	#!rb lina.halper
	#!tests Yin's BP

Change 3349694 on 2017/03/16 by robomerge

	#!ROBOMERGE-AUTHOR: dan.hertzka
	Exposing copy/paste actions for properties embedded within IDetailGroup header rows

	#!rb Matt.Kuhlenschmidt
	#!tests Copy/paste on skin variant primary override rows

	#!ROBOMERGE-SOURCE: CL 3349513 in //Orion/Dev-REGS/... via CL 3349675
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3349560 on 2017/03/16 by David.Ratti

	Update GameplayTagReferenceHelper to pass in raw data for owner struct (Rather than having caller pass raw 'this' to delegate). Fixes crashes with resizing lists while making calling code less crappy (avoid having to implement copy cstor and operator to fixup delegate).

	Added GameplayTagReferenceHelper to gameplay cue classes.

	#!rb none
	#!tests editor

Change 3349305 on 2017/03/16 by Andrew.Grant

	Merging //Orion/Main to Dev-General (//Orion/Dev-General)
	#!tests compiled
	#!rb na

Change 3349189 on 2017/03/16 by Benn.Gallagher

	Fixed clothing not running in PS4 packaged builds
	#!rb Martin.Wilson
	#!jira OR-36680
	#!tests PS4 cooked OrionEntry with Shinbi

Change 3348659 on 2017/03/15 by Daniel.Lamb

	Fix compilation errors.
	#!rb None

Change 3348646 on 2017/03/15 by Andrew.Grant

	Unshelved from pending changelist '3347778':

	<description: restricted, no permission to view>

Change 3348636 on 2017/03/15 by Daniel.Lamb

	Fixed issue with rebuildlighting commandlet not checking out separate lighting files.
	#!rb None
	#!test ResavePackages commandlet

Change 3348559 on 2017/03/15 by Daniel.Lamb

	Fixed up some iterative ini settings blacklist configs.
	#!rb Trivial
	#!test Iterative Cook paragon

Change 3348379 on 2017/03/15 by Laurent.Delayen

	Added simple Async Node 'Play Montage' to use outside of gameplay abilities.

	#!rb none
	#!tests none

Change 3348035 on 2017/03/15 by Ben.Salem

	Switch automationcheckpoint to being a .log file. Unblocks running on packaged builds in paragon.
	#!rb none
	#!tests ran oh so very many tests with the changes.

Change 3345982 on 2017/03/14 by Zak.Middleton

	#!orion - OR-36422: Clamp client net send rate for character movement to 60Hz (down from 90). Integrates CL 3345771 from Dev-Framework which adds engine support for specifying the rate parameters, and sets them in Orion DefaultGame.ini to 1/60 second.

	#!jira OR-36422
	#!tests multi-PIE dedicated server, various framerates, net lag, etc.
	#!rb Laurent.Delayen
	#!codereview Laurent.Delayen

Change 3345134 on 2017/03/14 by Jordan.Walker

	mono work

Change 3344857 on 2017/03/14 by Martin.Wilson

	Missing includes for transactor header

	#!rb none

Change 3341860 on 2017/03/10 by Chris.Bunner

	Partial revert of CL 3339904. Fixed material translation error with multiple connections from custom interpolator nodes.
	#!rb None
	#!tests Editor, Known trouble materials with interpolator nodes, With/without material functions

Change 3341759 on 2017/03/10 by Daniel.Lamb

	Fixed up NetworkCompatible version so that it works with UGS.
	#!rb Trivial
	#!test Cook ps4 paragon.

Change 3341616 on 2017/03/10 by Josh.Markiewicz

	#!UE4 - added define for OGS feature
	#!rb none
	#!codereview sam.zamani
	#!tests compiles

Change 3341612 on 2017/03/10 by Josh.Markiewicz

	#!UE4 - removed old define
	#!tests compiles

Change 3340180 on 2017/03/09 by Daniel.Lamb

	Integrate fix for sync loading from main to Dev General.
	#!rb Ben.Zeigler

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

	Fixed material translation error when custom interpolator node hooked to multiple function outputs.
	#!rb None
	#!tests Editor

Change 3339280 on 2017/03/09 by Josh.Markiewicz

	#!UE4 - removed WebBrowser moduel dependency on OnlineSubsystem
	- added 2 functions to online engine interface
	#!codereview sam.zamani, ben.marsh

Change 3338654 on 2017/03/08 by Daniel.Lamb

	Fixed up some issues with iterative ini settings.
	Added support for target platforms exposing which audio formats they use so they can match up supported formats with different machines.
	#!rb None
	#!test Cook paragon iteratively

Change 3336989 on 2017/03/08 by Ben.Marsh

	Merging CL 3336693 from Dev-Core: Use shared PCHs for game plugins by default, to reduce time spent generating individual PCHs.

	#!rb none

Change 3336135 on 2017/03/07 by Michael.Trepka

	Hide GameLayerManager's title bar on exiting PIE

	#!rb Dan.Hertzka
	#!tests Tested in the editor on Windows

Change 3335324 on 2017/03/07 by Aaron.Eady

	Chat;

	Adding AddedItem, CompletedItem, and DiscardedItem to the chat message type enum so we can control the color for each. Set the colors in the Social asset.
	Creating client record settings for turning on/off the added item, completed item, and discarded item in chat. Put these in the gameplay settings menu.
	Added horizontal boxes to the gameplay settings menu because we are running out of space.
	Added a vertical scroll bar to the gameplay settings menu but it doesn't seem to show. Also fixed the horizontal scroll bar at the bottom to be horizontal instead of vertical.

	#!rb Matt.Schembari
	#!tests MCP, PIE
	#!lockdown Nicholas.Davies
	#!RN

Change 3333541 on 2017/03/06 by Jason.Bestimt

	#!ORION_DG - Merge MAIN @ CL 3333512

	#!RB:none
	#!Tests:none

	#!codeReview: cameron.winston

Change 3332578 on 2017/03/04 by Andrew.Grant

	Temp Disabled wrong-looking warning
	#!tests #!rb na
	#!ROBOMERGE: Main

Change 3332555 on 2017/03/04 by Andrew.Grant

	Proper fix for Tencent DLL issue
	#!tests #!rb na
	#!ROBOMERGE: Main

Change 3332552 on 2017/03/04 by Andrew.Grant

	Fix for Tencent DLL issue while staging
	#!tests none
	#!rb none
	#!ROBOMERGE: Main

Change 3332216 on 2017/03/03 by Jason.Bestimt

	#!ORION_DG - Merge MAIN @ CL 3332168

	#!RB:none
	#!Tests:none

Change 3332060 on 2017/03/03 by Daniel.Lamb

	Fixed issue with AsyncLoading code eventually flushing async loading while in async loading...
	This causes all kinds of cool stuff like objects on the stack corruption and also deleted memory accesses.

	#!rb Gil.Gribb.
	#!test Editor and -game

Change 3331680 on 2017/03/03 by Jason.Bestimt

	#!ORION_MAIN - Merge MAIN @ CL 3331636

	#!RB:none
	#!Tests:none

	#!codeReview: andrew.grant

Change 3331412 on 2017/03/03 by James.Hopkin

	#!orion Rebuilt OpenSSL libs for PS4 to fix process termination due to SIGPIPE on closing websockets

	Source change committed in CL#!3331380

	#!jira OR-36274

	#!fyi Paul.Moore

Change 3331375 on 2017/03/03 by Sam.Zamani

	fix dll path for tenproxy

	#!rb none
	#!tests none

Change 3330953 on 2017/03/02 by Jason.Bestimt

	#!ORION_DG - Merge MAIN @ CL 3330924

	[STOMPED ChestOpeningScreen.uasset]

	#!RB:none
	#!Tests:none

	#!codeReview: bryan.rathman, phil.buuck, matt.schembari, andrew.grant

Change 3330646 on 2017/03/02 by Andrew.Grant

	Warning and non-unity fix
	#!tests compiled
	#!rb none

Change 3330388 on 2017/03/02 by Andrew.Grant

	Merging //Orion/Main to Dev-General (//Orion/Dev-General)
	#!tests #!rb na

Change 3329982 on 2017/03/02 by Sam.Zamani

	fixed updated module rules

	#!rb none
	#!tests regen projects

Change 3329964 on 2017/03/02 by Sam.Zamani

	Copying //Tasks/Orion/Dev-Online-Tencent to Dev-General (//Orion/Dev-General)

	3245325 Adding new OSS for Tencent online platform

	3245448 tencent third party SDK
	TCLS proxy functionality

	#!rb none

	3245474 missing include

	#!rb none

	3249585 TCLS tenproxy.dll in thirdparty bin folder

	#!rb none

	3249726 Load TenProxy.dll for TCLS integration
	New OSS Tencent

	#!rb none

	3255571 tencent configs

	#!rb none

	3255826 Tencent TCLS paragon launcher

	#!rb none

	3256168 TCLS launch batch update cmd line options

	#!rb none

	3256170 Added "TencentLive,TencentDev" MCP config entries

	#!rb none

	3256504 xmpp config update

	#!rb none

	3273168 skip login steps for tencent
	config update

	#!rb none

	3279427 #!xmpp

	add option to use plain text auth

	3279428 disable ssl and use plain text auth for XMPP connection
	temporary until we have a valid cert setup on Tigase deployment

	3281566 enabled OSS tencent

	this will also be the toggle for detecting when to enable tencent functionality at runtime

	3283103 differentiate between tencent dev/live environments
	disable QoS region selection for tencentdev

	3283106 lower http verbosity

	3283734 config updates

	3285066 disable replays and mtx for tencent build

	3291005 #!online,mcp
	service config bEnabled flag to toggle individual services as needed

	3291006 explicitly mark unneeded Mcp services as disabled

	3291108 allow replay tab to be disabled via UOrionRuntimeOptions.bEnableReplays=false

	3291492 disable recording of replays for tencent mode

	3292750 disable replay tab based on bEnableReplays=false

	3292753 new orion runtime option bDisallowCoinPurchases
	if true, prevents coins from being available for purchase

	3292755 diable mtx coin offers if bDisallowCoinPurchases=true

	3292759 missing header

	3293246 disable query for available friend codes if bEnableFriendCodes=false

	3293250 temp usage of NULL analytics provider

	3298025 Adding optional RegionTencent plugin for overriding config files

	3298027 ability to override config cache values via plugin config files

	3311016 default to TencentDev backend when running in tencent mode

	3311017 CMS tencent config

	3311022 Rename RegionTencent to RegionCN

	3312470 disable links for tencent build

	3313014 move tenproxy.dll to \OrionGame\Binaries\ThirdParty\Tencent

	3314861 tenproxy 2.0.2.7 update

	3314878 default RegionCN plugin to disabled
	this will only be enabled once the RegionCN.pak is loaded

	3314879 TCLS launcher pointing at UE4Editor.exe for development

	3315257 missing file

	3323573 remove TCLS launcher

	3326006 Tencent TLOG SDK

	3326277 wrapper singleton class for tenproxy connection

	3329180 Tencent support for login flow

	3329181 WIP tenproxy connection usage in identity

	3329624 wip tcls proxy

	#!rb none
	#!tests none

Change 3329651 on 2017/03/02 by Andrew.Grant

	Merging from //UE4/Main @ 3322856 through Orion-Staging
	#!tests QA
	#!rb na

Change 3329411 on 2017/03/02 by robomerge

	#!ROBOMERGE-AUTHOR: dan.hertzka
	Duplicating CL 3303733 from Dev-Editor (simple fix for a massive issue)
	- This will prevent any TAssetPtr property from getting stomped by undo/redo (you know those ridiculous store and card art issues? Fixed!)

	#!lockdown Jason.Bestimt
	#!rb none
	#!tests Undo on an item definition asset

	#!ROBOMERGE-SOURCE: CL 3329404 in //Orion/Release-38.3/... via CL 3329405
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3328858 on 2017/03/01 by Lina.Halper

	Fixed crash on importing animation that was edited before

	#!rb: none
	#!tests: reimport

Change 3328459 on 2017/03/01 by Daniel.Lamb

	When adding new ddc back ends to the hierarchcial ddc make sure to update the async backends lists.
	#!codereview Gil.Gribb
	#!test None
	#!rb Trivial

Change 3328182 on 2017/03/01 by Daniel.Lamb

	Unshelved from pending changelist '3318009':

	Adding support for shared cooked builds to be downloaded from the network.
	Included CookedAssetRegistry in the p:\ published builds.
	#!rb Ben.Marsh

Change 3327856 on 2017/03/01 by Frank.Gigliotti

	Added velocity overrides to FRK4SpringInterpolator;

	#!RB None
	#!codeReview Laurent.Delayen
	#!Tests PIE

Change 3327096 on 2017/03/01 by David.Ratti

	Added generic reference viewer details customization for gameplay tags. Added it to GameplayStatsMetaData.

	#!rb none
	#!tests editor

Change 3326177 on 2017/02/28 by Daniel.Lamb

	Added some more debugging information to help track down live issue.
	#!rb Chris.Bunner
	#!test Ran editor.

Change 3324951 on 2017/02/28 by David.Ratti

	UDataTable: added AddRow/RemoveRow native functions.
	#!rb JB
	#!tests na

Change 3323852 on 2017/02/27 by David.Ratti

	Fix ::RequestAllGameplayTags OnlyIncludeDictionaryTags option

	#!codereview Ben.Zeigler
	#!rb #!tests na

Change 3323706 on 2017/02/27 by Jason.Bestimt

	#!ORION_DG - Merge MAIN @ CL 3323694

	#!RB:none
	#!Tests:none

Change 3321945 on 2017/02/24 by Jon.Lietz

	OR-36258

	- fixing an issue where gameplay effects that are set to not refresh the period should not allow the execution of a period effect on application.

	#!RB David.Ratti
	#!tests golden path
	#!codeReview: Billy.Bramer, Fred.Kimberley
	#!RNX

Change 3321876 on 2017/02/24 by Daniel.Lamb

	Fixed erroronEngineContentUse flag not being set properly.
	#!rb Trivial
	#!test Cook Paragon.

Change 3321591 on 2017/02/24 by Jason.Bestimt

	#!ORION_DG - MAIN @ CL 3321563

	#!RB:none
	#!Tests:none

Change 3321260 on 2017/02/24 by Andrew.Grant

	Fixed issue that was causing missing string references to not show their referencer
	#!rb none

Change 3321040 on 2017/02/24 by Robert.Manuszewski

	Merging changes 3316253 and 3319134 from Dev-Core: fixes to file log hangs and crashes.

	#!rb none
	#!tests Cooked Win64 server and client, played cooked Win64 build

Change 3319413 on 2017/02/23 by Jason.Bestimt

	#!ORION_DG - Merge MAIN @ CL 3319394

	#!RB:none
	#!Tests:none

Change 3317905 on 2017/02/22 by Daniel.Lamb

	Integrate CL 3238291 from Odin

	Add Plugin content to the asset registry
	Change the location of AssetRegistry.bin when cooking a plugin as DLC
	Include AssetRegistry.bin in the cooked plugin staging process
	Add function to PluginManager to keep list of any plugins that loaded a pak file
	Use list of plugins with pak files to merge their AssetRegistry.bin files into the main AssetRegistry when it's created
	#!rb Ben.Marsh
	#!codereview Chance.Ivey, Daniel.Lamb

Change 3317648 on 2017/02/22 by Cody.Haskell

	Instead of popping an external web browser, we use the SWebBrowser widget on GFN.

	#!rb DanH
	#!codereview Andrew.Grant, Dan.Hertzka, Matt.Schembari
	#!tests PIE

Change 3317289 on 2017/02/22 by Jason.Bestimt

	#!ORION_DG - Merge MAIN @ CL 3317254

	#!RB:none
	#!Tests:none

Change 3317186 on 2017/02/22 by Mieszko.Zielinski

	Fixed items that have been force-scored by an EQS test as 'failed' getting discarted even if the test is being run in scoring-only mode #!UE4

	#!test golden path
	#!rb Lukasz.Furman
	#!codereview Daniel.Broder, John.Abercrombie

Change 3317005 on 2017/02/22 by Daniel.Lamb

	Submitted wrong version of my file.
	#!rb Trivial
	#!test Compile

Change 3316958 on 2017/02/22 by Daniel.Lamb

	Added support in buildcookrun for shared cooked builds.
	#!rb Trivial
	#!test BuildCookRun iterative script

Change 3316942 on 2017/02/22 by Daniel.Lamb

	DLC cooking optimization.
	Optimization to determining package dependency tree, now is async.
	Fixes for iterate shared cooked build.  Added fallback when using shared cooked build to local build if local build is newer.
	Added DLC cooking warning if you are overriding output directories.
	Removed previous release packages names from DLC asset registry.
	Only generate manifest for additional assets instead of all assets.
	Minor optimization to worst case resolving of string asset references.  Only resolve those that haven't been resolved before (only happens when GC thrashing happens).
	#!rb Andrew.Grant
	#!test Cook paragon

[CL 3365166 by Andrew Grant in Main branch]
2017-03-26 15:18:02 -04: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
Josh Adams
8d2561486c Copying //UE4/Dev-Platform to //UE4/Dev-Main (Source: //UE4/Dev-Platform @ 3206916)
#lockdown Nick.Penwarden
#rb none

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

Change 3175510 on 2016/10/26 by Josh.Adams

	- New Wolf SDK support (11).
	- Added new input plugin now that extra NDA is lifted

Change 3176629 on 2016/10/27 by Josh.Adams

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

Change 3177232 on 2016/10/27 by Josh.Adams

	- Minor comment change

Change 3177348 on 2016/10/27 by Dmitry.Rekman

	Linux: default to GL4.

Change 3177523 on 2016/10/27 by Dmitry.Rekman

	Linux: update libc++ to 3.9 and add AArch64.

Change 3178208 on 2016/10/28 by Daniel.Lamb

	Enable multithreaded lightmap encoding.

Change 3178273 on 2016/10/28 by Luke.Thatcher

	[PLATFORM] [PS4] [!] Fix crash in PS4 packaging step.
	 - Parallel-for accessing the same log files, causing IOException.

Change 3178573 on 2016/10/28 by Dmitry.Rekman

	Linux: fix for projects not having proper version associations (UE-5954).

	- Fixed by CengizT.

Change 3180487 on 2016/10/31 by Josh.Adams

	Moved new file to peoper spot

Change 3180508 on 2016/10/31 by Josh.Adams

	- Fixed crash on audio free for Wolf

Change 3181821 on 2016/11/01 by Josh.Adams

	- Fixed ShooterGame cooking after sync from main

Change 3182469 on 2016/11/01 by Josh.Adams

	- test/shipping build wolf fixes

Change 3183078 on 2016/11/02 by Josh.Adams

	- Added AllDesktop back in for Windows (File | Package)

Change 3183229 on 2016/11/02 by Josh.Adams

	- Fixed wrong path in JunkManifest.txt

Change 3184245 on 2016/11/02 by Dmitry.Rekman

	Linux: add AArch64 (ARM64) libs.

Change 3184326 on 2016/11/02 by Dmitry.Rekman

	Linux: add more files for AArch64.

Change 3184353 on 2016/11/02 by Dmitry.Rekman

	Linux: Add missed AArch64 libpng.

Change 3184871 on 2016/11/03 by Luke.Thatcher

	[PLATFORM] [PS4] [!] Fix broken DownloadImage blueprint node on PS4.
	 - Node should return a UTexture2DDynamic, otherwise the RHI assumes the data has been pre-formatted for the GPU, and we get pitch/layout issues.

	#jira UE-36365

Change 3185407 on 2016/11/03 by Dmitry.Rekman

	Linux: fix PhysX on AArch64.

	(Edigrating 3184484 from Wombat to Dev-Platform).

Change 3187488 on 2016/11/04 by Josh.Adams

	Copying //Tasks/UE4/Private-Platform-Switch to Dev-Platform-Minimal (//UE4/Dev-Platform-Minimal)

Change 3187740 on 2016/11/04 by Josh.Adams

	- Re-copying the Switch files, now with proper case in the directory names

Change 3188304 on 2016/11/07 by Dan.Mahashin

	- Removed deprecated functions in NVN window creation

Change 3188865 on 2016/11/07 by Luke.Thatcher

	[PLATFORM] [PS4] [~] Move PS4 console input handler into engine classes from OrionGame.
	 - Enables console input from Sony's "Console Output" tool for all games, in debug/development builds.

	#jira UE-37672

Change 3189517 on 2016/11/07 by Jeff.Campeau

	Fix incorrect local platform identification in device manager.

	#jira UE-38312

Change 3189897 on 2016/11/08 by Luke.Thatcher

	[PLATFORM] [!] Fix width/height mismatch in DownloadImage blueprint node.

Change 3190042 on 2016/11/08 by Josh.Adams

	- Fixed default and Shooter App Ids for Switch

Change 3190181 on 2016/11/08 by Joe.Barnes

	[UE-37275] Split reflection capture error message into two UE_LOG()s. Line length causes truncation and line wrap on some platforms.

Change 3190185 on 2016/11/08 by Joe.Barnes

	Fix another instance of UE_LOG() where the string was being truncated on Switch platform.

Change 3190272 on 2016/11/08 by Daniel.Lamb

	Add file hashes to depependency tracking info.
	Moved partial gc controlling code outside of the cooker.
	Store cooked file hashes in cooked asset registry.
	Cooked asset registry is now part of the cooker instead of chunking manifest.
	#test cook paragon

Change 3190332 on 2016/11/08 by Omar.Rodriguez

	Fixing issues with iOS remote notifications

	* Update UPlatformGameInstance::FPlatformRegisteredForRemoteNotificationsDelegate signature so the parameter is const& which will work with BlueprintAssignable
	* Fix misspelling when doing respondsToSelector check
	* Update generated Xcode project to use the generated entitlements file
	* Add remote-notification as a background mode
	* Update the generated entitlements file contents to include APS environment for push notifications
	* Added bEnableRemoteNotificationsSupport ini parameter to control whether iOS push notifications code is compiled

Change 3190391 on 2016/11/08 by Brent.Pease

	UE-31739 - Crash when Deploying to iPad Air with BC4 Texture Compression Setting

	(Josh's suggestion worked out of the box)

Change 3190786 on 2016/11/08 by Bart.Hawthorne

	Fix some missing PLATFORM_WOLF changes to PLATFORM_SWITCH in ShooterGame

Change 3190902 on 2016/11/08 by Alicia.Cano

	Allow RTTI and exceptions to be enabled for Android
	#jira UE-37845
	#android

Change 3190973 on 2016/11/08 by Chris.Babcock

	Add ability to set element value field with new text parameter for UPL
	#jira UE-37390
	#PR #2869
	#ue4
	#upl

Change 3191411 on 2016/11/09 by Josh.Stoddard

	Warn when user tries to use a shared pak reader on the wrong thread

	#jira UE-38049

Change 3191635 on 2016/11/09 by Josh.Stoddard

	More useful message during cook when AT9 assets fail to encode using SCE's tool

	#jira UE-38053

Change 3191663 on 2016/11/09 by Peter.Sauerbrei

	fix for ios build from PC

Change 3191701 on 2016/11/09 by Brent.Pease

	implement iOS device logs on windows

Change 3191794 on 2016/11/09 by Daniel.Lamb

	Fixed up compile error missing header file.
	#test Compile editor
	#jira UE-38414

Change 3191807 on 2016/11/09 by Josh.Adams

	- Fixed one chage that was missed in the WolfPlat->Switch rename

Change 3191867 on 2016/11/09 by Josh.Adams

	- Enabled Switch for ShooterGame project

Change 3191958 on 2016/11/09 by Jeff.Campeau

	Add warning for anyone still using XP

Change 3192185 on 2016/11/09 by Josh.Adams

	- Updated to SDK 0.11.12
	- Added TrackLotCheckItem API to track guidelines with limits (nothing using it yet)

Change 3192241 on 2016/11/09 by Josh.Adams

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

Change 3192324 on 2016/11/09 by Josh.Adams

	- Worked around an issue with RunOnTarget stripping quotes around paths with spaces
	#jira UE-38388

Change 3192387 on 2016/11/09 by Josh.Adams

	- Updating editor icon for Switch
	#jira UE-38295

Change 3192476 on 2016/11/09 by Dmitry.Rekman

	Linux: put correct OpenAL lib per architecture.

	(Edigrating CL 3185947 from Wombat to Dev-Platform)

Change 3192527 on 2016/11/09 by Josh.Adams

	- Fixed a shadow variable warning
	#jira UE-38408

Change 3192606 on 2016/11/09 by Jeff.Campeau

	XP option removed

	#jira UEPLAT-1542

Change 3192644 on 2016/11/09 by Josh.Adams

	- Fixed a CIS error (not sure why I don't get it, but hey)

Change 3192659 on 2016/11/09 by Josh.Adams

	- Fixed a crash in DeploymentServer

Change 3192672 on 2016/11/09 by Jeff.Campeau

	Fix WinXP message spamming

Change 3193252 on 2016/11/10 by Josh.Adams

	- Remove assertion in SwitchTextureFormat when the SDK can't be found (if you are sharing DLLs)

Change 3193756 on 2016/11/10 by Dmitry.Rekman

	Linux: add support for touch events.

	(Edigrating CL 3188159 from Wombat to Dev-Platform).

Change 3194297 on 2016/11/10 by Jeff.Campeau

	HarfBuzz implementation for Xbox One

	#jira UE-28590

Change 3194299 on 2016/11/10 by Jeff.Campeau

	Pump Xbox One messaging during slow startup tasks

	#jira UEPLAT-1276

Change 3194300 on 2016/11/10 by Jeff.Campeau

	Use response files when building for Xbox One

	#jira UEPLAT-1296

Change 3194313 on 2016/11/11 by Jeff.Campeau

	Stop uploading symbols on the first error
	Show a more detailed error message if symbol uploading fails
	Add a command line option to disable upload of symbols

	#1852
	#jira UE-24425

Change 3194327 on 2016/11/11 by Jeff.Campeau

	Deduplicate Xbox One build.cs setup for several modules

	#jira UE-37540

Change 3194402 on 2016/11/11 by Dmitry.Rekman

	Linux: do not apply mouse workaround unnecessarily.

	- Only matters when there is more than one window.

	(Edigrating 3194399 from Wombat to Dev-Platform).

Change 3194434 on 2016/11/11 by Dan.Mahashin

	- Ported fix CL 3193690: Add workaround to file I/O error about ResultInvalidCurrentMemory when reloading levels - remove uncached attribute during memory pool finalization

Change 3194569 on 2016/11/11 by Daniel.Lamb

	Fixed issue with CreateLinker failing to return LinkerLoad but creating a UPackage which can't be cleaned up.

Change 3194570 on 2016/11/11 by Daniel.Lamb

	Fix for DiffSerializeArchive not using the correct archive when saving packages.
	#test Cook paragon

Change 3194571 on 2016/11/11 by Daniel.Lamb

	Make sure dependent packages are valid before using them.
	Added FastBuildCookRun bat file for paragon testing.
	#test Cook Paragon

Change 3194575 on 2016/11/11 by Daniel.Lamb

	Reworked a warning for the cooker.

Change 3194698 on 2016/11/11 by Daniel.Lamb

	Skip skin verify only runs on build machines now.
	Saves paragon cook time.

Change 3194699 on 2016/11/11 by Daniel.Lamb

	Changed the wording of skip editor content setting so it's more clear.
	#test none

Change 3194702 on 2016/11/11 by Daniel.Lamb

	Potential fix for default materials not being in chunk zero.
	#test run ps4 cooked build paragon

Change 3194711 on 2016/11/11 by Alicia.Cano

	Allow RTTI and exceptions to be enabled for Android
	Allow RTTI to be enabled for IOS, Mac
	#jira UE-37845, UE-20314
	#android
	#ios
	#mac

Change 3194956 on 2016/11/11 by Josh.Adams

	- Removed the crash with unknown socket error code, left in the warning

Change 3195028 on 2016/11/11 by Dmitry.Rekman

	Linux: repair launch on.

	(Edigrating 3194384 from //UE4/Private-Wombat/... to //UE4/Dev-Platform/...)

Change 3195041 on 2016/11/11 by Dmitry.Rekman

	Linux: support selecting architectures per project.

	(Edigrating 3192783 from Wombat to Dev-Platform).

Change 3195058 on 2016/11/11 by Dmitry.Rekman

	Linux: fix code to determine number of cores.

	- ARM topology seems not to be in line with the assumptions made by x86-centric code.

	(Merging 3184632 from Wombat to Dev-Platform).

Change 3195082 on 2016/11/11 by Josh.Adams

	- Fixed name of packaged Switch builds to have the config in it (Shipping, etc)
	#jira UE-38394

Change 3195151 on 2016/11/11 by Bart.Hawthorne

	- Add game server settings to project settings to connect to the actual game server, instead of the debug login
	- Use the system software dialog box to show error codes for login failures

Change 3195153 on 2016/11/11 by Josh.Adams

	- Fixed copy and paste logs errors

Change 3195156 on 2016/11/11 by Josh.Adams

	- Fixed some default values, especially for save games (uses their default of 4MB size)
	- Added some LotCheck write tracking

Change 3195285 on 2016/11/11 by Jeff.Campeau

	Fix HarfBuzz warning on Xbox One

Change 3195477 on 2016/11/11 by Josh.Adams

	- Fixed up some IsGameOnly calls
	#jira UE-37575

Change 3195490 on 2016/11/11 by Dmitry.Rekman

	UAT: fix CIS (removed old variables).

Change 3195724 on 2016/11/11 by Josh.Adams

	- Final fix for name of .nsp (content only projects in Shipping config, etc)
	#jira UE-38394

Change 3195755 on 2016/11/11 by Josh.Adams

	- Made translucent Switch icons

Change 3195771 on 2016/11/11 by Josh.Adams

	- Fixed some Switch "space in path" issues
	#jira UE-38393

Change 3195801 on 2016/11/11 by Josh.Adams

	- Handle making sure the save is completed before we shutdown
	#jira UE-38215

Change 3196593 on 2016/11/14 by Michael.Trepka

	Implemented Info string in AvfMedia for display in Media Player Editor

	#jira UE-35386

Change 3196782 on 2016/11/14 by Josh.Adams

	- Added a comment for a workaround

Change 3196784 on 2016/11/14 by Michael.Trepka

	Alembic importer for Mac

	#jira UE-37708

Change 3196901 on 2016/11/14 by Alicia.Cano

	ADB over wifi fails to deploy on Launch on.
	#jira UE-37957
	#android

Change 3197055 on 2016/11/14 by Josh.Adams

	- Fixed BinnedAllocator crash that happened with PoisonProxy and large allocations with large alignment

Change 3197059 on 2016/11/14 by Josh.Adams

	- Removed some stat code with  no STATS

Change 3197066 on 2016/11/14 by Josh.Adams

	- Fixed the generic growableallocator to not free metadata before it's used for stats, and cleaned up a couple minor things

Change 3197176 on 2016/11/14 by Josh.Adams

	- Added some helper scripts to switch in and out of debug mode on Switch

Change 3197183 on 2016/11/14 by Bart.Hawthorne

	Error dialog fixes based on peer review feedback from JoshA

Change 3197339 on 2016/11/14 by Josh.Adams

	Allow -htcs on the commandline now to override disabling Htcs in packaged builds

Change 3197401 on 2016/11/14 by Josh.Adams

	- Fixed the Switch package installation script to remove the path of the package, since it causes problems with spaces, and also it makes the script less portable!
	#jira UE-38556

Change 3197691 on 2016/11/14 by Dmitry.Rekman

	Linux: save added devices.

	(Edigrating 3196529 from Wombat to Dev-Platform).

Change 3197854 on 2016/11/15 by Dan.Mahashin

	- MemoryProfiler2: fixed Switch parser file path in the csproj

Change 3197960 on 2016/11/15 by Dan.Mahashin

	- NVN RHITransitionResources() directly uses a barrier instead of relying on CopyToResolveTarget() side effect (UE-33834)

Change 3198488 on 2016/11/15 by Bart.Hawthorne

	Submit missing NoRedist/DefaultEngine.ini file

Change 3198970 on 2016/11/15 by Michael.Trepka

	Don't try to use installed Mono 4.6 on Mac as it's known to have issues on macOS 10.12 (for example building the editor with UBT often fails with Mono running out of file desriptors)

Change 3199050 on 2016/11/15 by Daniel.Lamb

	Some more output to help track down iterative cooking scenarios
	#test Cook paragon

Change 3199097 on 2016/11/15 by Josh.Adams

	- Fixed up Switch packaging to re-generate the meta data in case it changed since compile time (esp with content only projects
	- Fixed default Program Id in code
	- Fixed a problem with Run with a space in the path
	#jira UE-38608

Change 3199181 on 2016/11/15 by Dmitry.Rekman

	Fix CIS (compiling LinuxTargetDevice without engine).

Change 3199253 on 2016/11/15 by Dmitry.Rekman

	Hopeful fix for a static analysis warning.

Change 3199325 on 2016/11/15 by Joe.Barnes

	Start a new CommandBuffer immediately upon ending one. Prevents fetching when there's no CommandBuffer. Needed for Loading Screen movie playback.

Change 3199814 on 2016/11/15 by Dmitry.Rekman

	Linux: remove forced -windowed when launching.

	(Merging CL 3199789 from Wombat to Dev-Platform)

Change 3200580 on 2016/11/16 by Josh.Adams

	Updasted DeploymentServer

Change 3200595 on 2016/11/16 by Joe.Barnes

	Removed inadvertent SleepThread() when starting movie playback.

Change 3200604 on 2016/11/16 by Josh.Adams

	- Added NN_MIDDLEWARE macros to tag ths apps as using UE4 middleware

Change 3200632 on 2016/11/16 by Brent.Pease

	Update PlatformShowcase with latest tests

Change 3200704 on 2016/11/16 by Dmitry.Rekman

	Linux: fix native compilation.

Change 3200711 on 2016/11/16 by Brent.Pease

	 - Support ios audio streaming from disk
	 - Flushed out ADPCMAudioInfo to be more flexible with buffer management in addition to support streaming from disk. This should make more code platform independent.
	   + Other platforms should work fine but will need to be updated to use the new buffer flexability (and hence simplify their own code and buffer management)
	 - IOS audio implementation simplified to use new ADPCMAudioInfo functionality
	 - Fixed adpcm seamless looping

	NOTE: While everything works with my testing (admittedly simple tests) a little more code cleanup needs to happen...

Change 3201015 on 2016/11/16 by Josh.Adams

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

Change 3201023 on 2016/11/16 by Josh.Stoddard

	Fix splash screen assignment for iPad

	#jira UE-38623

Change 3201215 on 2016/11/16 by Brent.Pease

	Hopefully final fix for build breakage

Change 3201259 on 2016/11/16 by Josh.Adams

	- Removed the clock rate settings from the Project Settings, and the cvars - it was just confusing
	- Further improved the metadata recreation during packaging (can get rid of the temp meta/desc files now I believe)
	- Reduced audio pool alignment to not waste massive memory from it

Change 3202332 on 2016/11/17 by Daniel.Lamb

	Changed build scripts to support iterative cooking
	#test Ran new build scripts

Change 3202371 on 2016/11/17 by Michael.Trepka

	Changed FAppleHttpResponse::GetContentLength to return expected content size instead of payload size so it's consistent with other implementations

	#jira UE-38392

Change 3202421 on 2016/11/17 by Michael.Trepka

	Decrease the number of max open files for a thread on Apple platforms from 256 to 192 to leave more file descriptors to Cocoa

	#jira UE-18343

Change 3202462 on 2016/11/17 by Michael.Trepka

	Fixed HTTP If-None-Match response code on Mac and iOS

	Fixed by iktomi, https://answers.unrealengine.com/questions/492514/http-if-none-match-logic-isnt-working-on-mac-due-t.html

	#jira UE-36317

Change 3202620 on 2016/11/17 by Daniel.Lamb

	Fixed issue with some objects being garbage collected which shouldn't be because the collection handler didn't get registered.
	Commandlets now do not always have  GIsRequestingExit true.
	Made crash handler check for commandlets running and exit appropriately.
	#test Rebuild lighting QAGame

Change 3202955 on 2016/11/17 by Daniel.Lamb

	Add support for clearing all the cached cooked platform data for a platform when requested.
	#test cook QA game
	#jira UE-38361

Change 3202983 on 2016/11/17 by Daniel.Lamb

	Added support to rebuild lightmaps commandlet for building lightmaps in seperate files.
	#test rebuild lighting Custom QAGame maps.
	#jira OR-31907

Change 3203128 on 2016/11/17 by Josh.Adams

	- Fixed split screen user selection in ShooterGame (brought over some changes from NickD for it as well)

Change 3203537 on 2016/11/18 by Dmitry.Rekman

	Fix ProjectWorldToScreen node for letterboxed viewports.

	(Merging CL 3201546 from Wombat to Dev-Platform).

Change 3203540 on 2016/11/18 by Dmitry.Rekman

	Linux: be more verbose when setting vblank sync.

	(Merging CL 3199633 from Private-Wombat to Dev-Platform).

Change 3203599 on 2016/11/18 by Dmitry.Rekman

	Speedup bForceCompilationAtStartup=True when nothing changed (UE-37067).

	- PR #2849: Contributed by slonopotamus.

Change 3203610 on 2016/11/18 by Dmitry.Rekman

	Add CEF support for Linux (UE-6743).

Change 3203615 on 2016/11/18 by Dmitry.Rekman

	Linux: fix bootstrap script so it is independent of working dir (UE-37016).

	- PR #2842 contributed by slonopotamus

Change 3203645 on 2016/11/18 by Dmitry.Rekman

	Linux: fix UnrealCEFSubProcess.

Change 3203658 on 2016/11/18 by Dmitry.Rekman

	Remove hard-coded paths to mono binary (UE-35228).

	- Another way to implement pull request #2741.

Change 3203770 on 2016/11/18 by Josh.Adams

	- Brought over some changes from Dev-Core to not crash in AsyncLoading with debug code

Change 3204244 on 2016/11/18 by Dmitry.Rekman

	Unsuppress mistakenly suppressed warnings and fix one more (UE-38788).

Change 3204277 on 2016/11/18 by Brent.Pease

	 + Fix seamless looping bug found on Dan's QAGame test
	 + Fix static analyzer warning (which was a real bug with uncompressed streaming)
	 + Code review feedback from Aaron
	 + Small addition from channel sync ios bug fix

Change 3204576 on 2016/11/18 by Omar.Rodriguez

	Expose the bEnableRemoteNotificationsSupport ini setting in the iOS project settings.

Change 3204629 on 2016/11/18 by Chris.Babcock

	Fix case of VulkanSwapChain.h #include
	#jira UE-38843
	#ue4
	#vulkan

Change 3204708 on 2016/11/18 by Josh.Adams

	- Set SwitchMoviePlayer to include the libs from the proper directory

Change 3204730 on 2016/11/18 by Josh.Adams

	- Changed a check to a checkf to narrow down why FMaterialUniformExpressionType::GetTypeMap().FindRef(TypeName) is returning nullptr on tvOS

Change 3204865 on 2016/11/18 by Brent.Pease

	 + Turn off ios console logs on Windows to help sort through ios packaging and launch-on issues - This is NOT a fix but it should make it easier to track down the problem with it off.

Change 3204883 on 2016/11/18 by Dmitry.Rekman

	Linux: fix native LaunchOn (UE-38616).

Change 3204914 on 2016/11/18 by Brent.Pease

	 + Turn off the device check to prevent it from conflicting with remote packaging/launch-on

Change 3204940 on 2016/11/18 by Josh.Adams

	Backing out changes to the profiler for Switch. Shouldn't have checked it in today during smoke

Change 3204952 on 2016/11/18 by Dmitry.Rekman

	Linux: fix bootstrap script (UE-38851).

	- Caused by UE-37016.

Change 3205630 on 2016/11/21 by Brent.Pease

	 + Fix audio sound queuing bug by ensuring audio buffers are not reused by different sound source objects.
	 + Cleaned up the locking mechanism around stopping sound sources to make its intent and function are clear
	 + Cleaned up memory tracking and freeing.

	#jira ue-38846

Change 3205787 on 2016/11/21 by Josh.Adams

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

[CL 3206922 by Josh Adams in Main branch]
2016-11-21 20:27:58 -05:00
Josh Adams
877a542dd6 Copying //UE4/Dev-Platform to //UE4/Main (Source: //UE4/Dev-Platform @ 2970079)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2945365 on 2016/04/15 by Mark.Satterthwaite

	Assert if anyone calls RHIClearUAV on a structured-buffer or texture under Metal - there's no clear way to implement these cases yet.

Change 2945366 on 2016/04/15 by Mark.Satterthwaite

	Change the Metal parallel command-context submission to hand-off the entire NSArray of MTLCommandBuffers to avoid race conditions between one use of a context and the next.

Change 2945394 on 2016/04/15 by Mark.Satterthwaite

	Duplicate CL #2943702 from 4.11.2: Change the way Metal validates the render-target state so that in FMetalContext::PrepareToDraw it can issue a last-ditch attempt to restore the render-targets. This won't fix the cause of the Mac Metal crashes but it might mitigate some of them and provide more information about why they are occurring.

Change 2945444 on 2016/04/15 by Mark.Satterthwaite

	Cache the Metal fallback depth-stencil surface for the canvas tile rendering so that we only ever keep one spare depth-stencil surface around. This costs us a little more permanent memory but reduces churn.

Change 2945457 on 2016/04/15 by Mark.Satterthwaite

	Add validation code to MetalRHI to ensure that we don't erroneously re-clear existing render contents when restoring the render command encoder. This will only be active when the Metal debug layer is enabled and is completely compiled away in Test & Shipping builds for performance.

Change 2946249 on 2016/04/16 by Nick.Shin

	build HarfBuzz for HTML5

	#jira UE-28552 - HarfBuzz - HTML5

Change 2946250 on 2016/04/16 by Nick.Shin

	Rename/move file(s)

	move emscripten (part 1 of 2)
	from Engine/Source/ThirdParty/HTML5/emsdk
	to Engine/Extras/ThirdPartyNotUE/emsdk

	this is a request from legal

Change 2946251 on 2016/04/16 by Nick.Shin

	move emscripten (part 2 of 2)
	build scripts and cpp files updated with new emscripten path

	from Engine/Source/ThirdParty/HTML5/emsdk
	to Engine/Extras/ThirdPartyNotUE/emsdk

	this is a request from legal

Change 2946516 on 2016/04/18 by Mark.Satterthwaite

	Disable r.DFShadowScatterTileCulling  as well as r.AOScatterTileCulling  on Mac because we don't have the necessary RW textures on Metal.

Change 2947000 on 2016/04/18 by Michael.Trepka

	Print OS X version to log in FMacPlatformMisc::PlatformInit()

Change 2948197 on 2016/04/19 by Lee.Clark

	PS4 - Use SDK 3.508.031

Change 2948301 on 2016/04/19 by Nick.Shin

	upgrading zlib openssl libcurl libwebsockets

	part 1 of 2 -- adding new compiled versions (part 2 will be removing the old version -- which will be done after platform owners are given a chance to recompile for their platform - most notably: zlib)

	NOTE: Linux libraries are built for CentOS 6.7 (i.e. 2010 - glibc 2.12 and gcc 4.4.7)

	#jira UEPLAT-1246  -  Update libWebsockets
	#jira UEPLAT-1221  -  update websocket library
	#jira UEPLAT-1223  -  Arrange testing for 'update websocket library'
	#jira UEPLAT-1203  -  Add Linux library for libwebsockets
	#jira UEPLAT-1204  -  Rebuild libwebsockets with SSL

Change 2948319 on 2016/04/19 by Nick.Shin

	update zlib to v1.2.8

	part 1 of 4 - doing this in stages for tracking purposes

	#jira UEPLAT-1246  -  Update libWebsockets
	#jira UEPLAT-1221  -  update websocket library

Change 2948320 on 2016/04/19 by Nick.Shin

	update OpenSSL to v1.0.1s

	part 2 of 4 - doing this in stages for tracking purposes

	also, removing dynamic libs (for windows) -- these are no longer needed as this is now statically linked in editor
	- tested by installing perforce server setup with ssl access only and pointing editor source code to it as ssl:hostname:port
	- also tested trying accessing it without ssl which resulted in access denied indicating a successful test of dynamic lib removal

	#jira UEPLAT-1246  -  Update libWebsockets
	#jira UEPLAT-1221  -  update websocket library
	#jira UEPLAT-1204  -  Rebuild libwebsockets with SSL

Change 2948322 on 2016/04/19 by Nick.Shin

	update libwebsockets to v1.7.4

	part 4 of 4 - doing this in stages for tracking purposes

	#jira UEPLAT-1246  -  Update libWebsockets
	#jira UEPLAT-1221  -  update websocket library
	#jira UEPLAT-1204  -  Rebuild libwebsockets with SSL

Change 2948323 on 2016/04/19 by Nick.Shin

	build scripts

	pull source and compile - zlib openssl libcurl & libwebsockets

	tested on:
	- Win64 VS2013 & VS2015
	- OSX
	- Linux

	#jira UEPLAT-1246  -  Update libWebsockets
	#jira UEPLAT-1221  -  update websocket library
	#jira UEPLAT-1203  -  Add Linux library for libwebsockets
	#jira UEPLAT-1204  -  Rebuild libwebsockets with SSL

Change 2948337 on 2016/04/19 by Lee.Clark

	VS 2015 libScePad support

Change 2948382 on 2016/04/19 by Mark.Satterthwaite

	Add Mac model, CPU string, num HTs to the log on Mac so that errors reported to us contain the data that Apple want when we turn them into bug-reports. Also added a missing sigaction from the trampoline.

Change 2948385 on 2016/04/19 by Mark.Satterthwaite

	Disambiguate Metal command-buffer failures by vendor & error type so that we don't end up with just one crash-reporting entry for many different kinds of crash and enable this assertion on all builds because it will always be fatal and failing to crash here may end up causing the Mac to reboot.

Change 2948460 on 2016/04/19 by Peter.Sauerbrei

	fix for wrong line endings

Change 2948526 on 2016/04/19 by Nick.Shin

	fix for wrong line endings

Change 2949334 on 2016/04/20 by Nick.Shin

	fix library path

	for some reason, NetworkFileSystem and HttpNetworkReplayStreaming on Mac platform needs full path - even though lib path was set...

Change 2949398 on 2016/04/20 by Lee.Clark

	PS4 - Fix SDK compile warnings

Change 2949656 on 2016/04/20 by Nick.Shin

	Back out changelist 2948320

	but keeping the C# build file as-is

Change 2949676 on 2016/04/20 by Mark.Satterthwaite

	Double-buffer the Metal viewport's back-buffer so that we can access the contents of the back-buffer after EndDrawingViewport is called until BeginDrawingViewport is called again on this viewport, this makes it possible to capture movies on Metal.
	#jira UE-29140

Change 2950025 on 2016/04/20 by Mark.Satterthwaite

	Undo CL #2949676 and instead on Mac where we want to be able to capture videos of gameplay we just insert an intermediate texture as the back-buffer and use a manual blit to the drawable prior to present. This also changes the code to enforce that the back-buffer render-target should never be nil as the code & Metal API itself assumes that this situation cannot occur but it would appear from continued crashes inside PrepareToDraw that it actually can in the field. This will address another potential cause of UE-29006.
	#jira UE-29006

Change 2950084 on 2016/04/20 by Nick.Shin

	OSX warning fix:

	UE4 supports down to OSX 10.9 rebuilt the zlib openssl libcurl and libwebsockets to support that

	build file also updated to use MACOSX_DEVELOPMENT_TARGET=10.9

Change 2950613 on 2016/04/20 by Dmitry.Rekman

	UAT: Disable modules that are not supported on Linux.

	#rb none
	#codereview Ben.Marsh, Michael.Trepka, Josh.Adams
	#tests Run RunUAT.sh

Change 2951065 on 2016/04/21 by Nick.Shin

	temp: update SSL dlls in Engine/Binaries/ThirdParty/OpenSSL/Win64

Change 2951556 on 2016/04/21 by Nick.Shin

	static libs double checked

	#jira UE-29674 - Editor fails to open in Dev-Platform

Change 2951559 on 2016/04/21 by Nick.Shin

	static libs double checked

	forgot these files - they were in another changelist

	#jira UE-29674 - Editor fails to open in Dev-Platform

Change 2951574 on 2016/04/21 by Nick.Shin

	remove unused variable warning

	was bughunt code...

Change 2951652 on 2016/04/21 by Josh.Adams

	- Disabled MRT support on iPad Air 1 devices, since it doesn't support wide enough MRTs that the engine needs (ie, only use MRTs in METAL_MRT mode on iOS)

Change 2951656 on 2016/04/21 by Josh.Adams

	- Fixed Mac compile error in Metal

Change 2951718 on 2016/04/21 by Nick.Shin

	remove shared SSL DLLs in a controlled manner

	tested with QA help who was able to replicate the bug in the morning - and was able to successfully run the editor with this changelist (shelved - remote unshelved test - thanks Dan.Bullard_volt!)

	#jira UE-29674 - Editor fails to open in Dev-Platform

Change 2951862 on 2016/04/21 by Lee.Clark

	PS4 - Enable Neo high resolution support.

Change 2952409 on 2016/04/22 by Nick.Shin

	add win32 build targets for zlib openssl libcurl libwebsockets

	part 1 of 2: these are the libs and header files

Change 2952411 on 2016/04/22 by Nick.Shin

	add win32 build targets for zlib openssl libcurl libwebsockets

	part 1 of 2: these are the C# build scripts

Change 2952580 on 2016/04/22 by Lee.Clark

	PS4 - Fix staging and deploying of system prxs

Change 2953152 on 2016/04/22 by Mark.Satterthwaite

	Only cache instances of TShadowDepthVS  with bIsForGeometryShader=true when the RHI can handle the underlying feature. We can save memory on iOS by only emitting these shaders on Mac Metal or RHI's with Geometry shaders which have the required H/W to do this.

Change 2953385 on 2016/04/22 by Nick.Shin

	use HarfBuzz libs for HTML5

	c# build files updated to link in the harfbuzz libs

	#jira UE-28552 - HarfBuzz - HTML5

Change 2954686 on 2016/04/25 by Nick.Shin

	from legal:

	Emscripten approved for redistribution provided that *all* files are checked into the following directory: Engine/Extras/ThirdPartyNotUE

	Please also check in the attached .tps files and licenses alongside the TPS itself. This will allow us to track third party files within P4.

Change 2954928 on 2016/04/25 by Daniel.Lamb

	Fixed min number of threads allocated for compiling shaders in cooker.

Change 2954942 on 2016/04/25 by Daniel.Lamb

	Added flag -skipcompile for running visual studio.
	Skip force compilation on -multiprocess flag.
	#jira UE-22308
	#PR 1678
	#1678

Change 2954948 on 2016/04/25 by Josh.Adams

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

Change 2955370 on 2016/04/25 by Josh.Adams

	- Fixing C# error from main
	#lockdown nick.penwarden

Change 2957745 on 2016/04/27 by Daniel.Lamb

	Pull request from acordon@microsoft.com.

	Fixed deterministic cooking issue with StaticMeshComponent using StaticMesh before it had it's postload call.

Change 2957747 on 2016/04/27 by Daniel.Lamb

	Pull request from acordon@microsoft.com.

	Resave packages commandlet now can also rebuild asset registry paths with consistent case.

Change 2957750 on 2016/04/27 by Daniel.Lamb

	Pull request from acordon@microsoft.com.

	Fixed deterministic cooking issue with StaticMeshComponent using StaticMesh before it had it's postload call.

Change 2958708 on 2016/04/28 by Nick.Shin

	remove boringSSL

	#jira UE-29970 - QAGame launch on fails for Win64, fatal error LNK1169: one or more multiply defined symbols found
	#lockdown josh.adams

Change 2958724 on 2016/04/28 by Nick.Shin

	moved setting bVerifyPeer flag AFTER CertBundlePath has been set...

	otherwise, libCurl is going to try to verify the SSL session - but without a cert file, it makes no sense to try and verify the session

	- we could (and probably should) make this an error condition - but the constructor has the bVerifyPeer set to true -- which would mean that all games will need to have a cert file and/or know to set bVerifyPeer to false...

	- and so far, only linux and android seem to have code in place to make use of the cert files...

	#jira UE-29950 - Orion deticated server MCP authentication fails when using CURL
	#lockdown josh.adams

Change 2959058 on 2016/04/28 by Mark.Satterthwaite

	Mac Metal RHIGetSupportedResolution & RHIGetAvailableResolutions exactly as they were for Mac OpenGL.

Change 2959587 on 2016/04/28 by Jeff.Campeau

	Use response files for compiling CPPs using the VC toolchain to avoid issues where the command line is too long for XGE

Change 2959605 on 2016/04/28 by Jeff.Campeau

	Reuse existing response files if contents are unmodified.
	#2278

Change 2959680 on 2016/04/28 by Daniel.Lamb

	Don't cook clients when building only server configs.
	#pr 2127
	#2127

Change 2959764 on 2016/04/28 by Nick.Shin

	set PS4 back to using boringSSL - until OpenSSL has been built for it

	#jira UE-30088 - Orion PS4 Cook and Deploy fails to build for PS4

Change 2959875 on 2016/04/28 by Jeff.Campeau

	Simplified compression to use a bitwindow param instead of a targetplatform param
	Added bitwindow parameter for unrealpak
	Set Xbox One to pass 12 bit window for paks (for hw decompress)

Change 2959960 on 2016/04/28 by Nick.Shin

	removed url protocol scheme from external script loads - this will support fetching scripts with either http or https automatically

	and added window.focus after game has finished compiling - this will help if game is inside an iframe

	#jira UE-29886 - HTML5 project does not load using itch.io

Change 2960064 on 2016/04/28 by Dmitry.Rekman

	XMPP: Add missing dependency on OpenSSL on Linux.

Change 2961310 on 2016/04/29 by Mark.Satterthwaite

	DistanceField tile alignment changes to attempt to make it work on Mac.

Change 2961602 on 2016/04/29 by Nick.Shin

	#ifndef'd EMSCRIPTEN around FOpenGL::Flush();

	answerhub 409649 - HTML5 OpenGL backend doesn't need to flush GL commands

Change 2961604 on 2016/04/29 by Nick.Shin

	return "()" on empty object

	answerhub 390139 - JSON Conversion of TMaps of UStructs Can't Deserialize

Change 2963068 on 2016/05/02 by Peter.Sauerbrei

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

Change 2963302 on 2016/05/02 by Peter.Sauerbrei

	fix for PS4 build failure

Change 2963731 on 2016/05/02 by Dmitry.Rekman

	Linux: move crash/ensure info from Binaries to Saved (UE-28411).

	- Allows running from read/only locations, since Saved can be redirected.

	#rb none
	#codereview Chris.Wood, David.Vossel

Change 2963737 on 2016/05/02 by Dmitry.Rekman

	CrashMalloc: get allocation size also from jemalloc.

	- Editor builds on Linux are otherwise shutting down on attempting to realloc things ("binned" is not used for the editor).

	#rb none
	#codereview Chris.Wood, Robert.Manuszewski, Steve.Robb

Change 2963989 on 2016/05/03 by Lee.Clark

	PS4 - Fix texture initialization

Change 2964296 on 2016/05/03 by Dmitry.Rekman

	Better fix for getting previous allocation size.

	- Suggested by GilG.

	#codereview Gil.Gribb

Change 2964398 on 2016/05/03 by Mark.Satterthwaite

	Added GetCompressionBitWindow to IPlatformCompression so that FArchive compression can acquire the platform specific window value at runtime even without the Developer-only TargetPlatform modules. This allows the ShaderCache to perform runtime compression of preloaded shaders in-game without crashing.
	#jira UE-30238

Change 2965966 on 2016/05/04 by Peter.Sauerbrei

	fix for bad path when deploying from mac
	#jira UE-30294
	#lockdown josh.adams

Change 2968380 on 2016/05/05 by Dmitry.Rekman

	Fix visibility placement which breaks Linux build.

	#lockdown Josh.Adams
	#codereview James.Golding

Change 2969002 on 2016/05/06 by Nick.Shin

	use boringssl until webrtc recompiled with openssl work is finished

	#jira UE-30298 - Fortnite and Orion crash on login
	#lockdown josh.adams

Change 2969545 on 2016/05/06 by Josh.Adams

	Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)
	#lockdown nick.penwarden

Change 2969923 on 2016/05/06 by Chris.Babcock

	Fix linker warning (mismatched function/variable for glMapBufferOES and glUnmapBufferOES)
	#jira UE-30222
	#ue4
	#android
	#lockdown Josh.Adams

Change 2970016 on 2016/05/07 by Nick.Shin

	undo all of the following upgrades:
	- zlib
	- openssl
	- libcurl
	- libwebsockets

	and reset webrtc

	#jira UE-30298 - Fortnite and Orion crash on login
	#lockdown josh.adams

#lockdown nick.penwarden

[CL 2970080 by Josh Adams in Main branch]
2016-05-07 12:42:47 -04:00
Josh Adams
d81e0f1653 Copying //UE4/Dev-Platform to //UE4/Main (Source: //UE4/Dev-Platform @ 2945165)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2731596 on 2015/10/16 by Keith.Judge

	Fast Semantics - Add deferred resource deletion queue to make deleted resources be actually deleted a number of frames later so that the GPU is definitely finished with them. Hooked up the temporary SRVs for dynamic VBs as a first step.

Change 2764244 on 2015/11/12 by Keith.Judge

	Stop creating/deleting SRVs for dynamic buffers all the time. Instead add a new view when a new buffer is cycled and keep them around until the buffer is dead.

Change 2936695 on 2016/04/07 by Mark.Satterthwaite

	Disable Metal on Mac OS X versions prior to 10.11.4 because their drivers are too buggy and lots of issues users will encounter were fixed in 10.11.4.

Change 2936701 on 2016/04/07 by Mark.Satterthwaite

	Re-enable DistanceFieldAO on Mac Metal, but disable the support for Heightfield composition into the DistanceFieldAO as that currently requires Read+Write texture support which isn't present in Metal yet.

Change 2936702 on 2016/04/07 by Mark.Satterthwaite

	Enable capsule shadows on Metal SM5 for Mac Paragon.

Change 2936704 on 2016/04/07 by Mark.Satterthwaite

	Re-add Metal_MacES3_1 entries in RHIDefinition functions - not quite sure how they disappeared...

Change 2936706 on 2016/04/07 by Mark.Satterthwaite

	Fix implementation of BeginRenderingPrePass to only clear the depth+stencil buffers when it is asked to - this fixes LOD fading in Paragon on Mac when parallel execution is enabled. The parallel contexts were being instructed to clear the pre-pass data which was then fouling up all the subsequent rendering.

Change 2936708 on 2016/04/07 by Mark.Satterthwaite

	Extend workaround from 2905206 for UE-27818 to Metal as well as OpenGL - it isn't permissable to have an unbound resource on these APIs as you aren't allowed to make the assumption than an if-branch will protect against null dereference on the GPU.

Change 2936737 on 2016/04/07 by Mark.Satterthwaite

	Changes to reduce Metal's peak memory usage when streaming texture data in when loading levels:
	- When uploading data to Shared memory Metal textures dispose of the source buffer immediately as it won't be required after the call to replaceRegion.
	- Add an optional CVar ("rhi.Metal.MaxOutstandingAsyncTexUploads") and keep a count of outstanding async. texture uploads - really this might be better as a memory count - if teh current outstanding count is greater than the specified CVar wait for all operations to complete before purging the used buffers. By default the CVar is set to 0 which disables the tracking and the game will use all available memory.

Change 2936741 on 2016/04/07 by Mark.Satterthwaite

	For Metal don't use a texture-view unless the mip-range or texture format is different - we only create a texture-view if we absolutely have to in order to avoid performance reductions on some vendors. When this happens we'll have to update the SRV to point to the new source texture but that can be handled on bind.

Change 2936753 on 2016/04/07 by Mark.Satterthwaite

	Mutex the pipeline cache inside each Metal bound-shader-state - with parallel execution this can be modified from multiple threads.

Change 2936758 on 2016/04/07 by Mark.Satterthwaite

	Don't eliminate redundant Metal command-encoders on Intel either - this only seems to work correctly on AMD...

Change 2936762 on 2016/04/07 by Mark.Satterthwaite

	Validate that parallel contexts aren't asked to clear render-targets (incl depth/stencil) as this won't work as desired - each context will end up clearing the contents meaning none of the rendering will propagate which is probably not what you intend.

Change 2936765 on 2016/04/07 by Mark.Satterthwaite

	Fix alignment of blit-commands between textures & buffers in Metal. Mac Metal has no minimum alignment and allows tightly packed rows, but mobile H/W has a fixed row alignment of 64-bytes for linear texture data.

Change 2936767 on 2016/04/07 by Mark.Satterthwaite

	Remove the workaround for old Mac OS X AMD cards not supporting frame-buffer sRGB - I have a feeling it causes more problems than it solves.

Change 2936773 on 2016/04/07 by Mark.Satterthwaite

	Warn the user when trying to run on OpenGL 3.2 GPUs that they are running unsupported and there may be rendering errors and performance problems.

Change 2936777 on 2016/04/07 by Mark.Satterthwaite

	In MetalRHI move the calls that reset the state-cache and command-encoder to EndFrame and fix the fallout. Hopefully this will eliminate the problem where a draw call fails because a call to SetRenderTargets hasn't been made since the last time the command-buffer was submitted.

Change 2936788 on 2016/04/07 by Daniel.Lamb

	PR #2193: Commandlet tweaks: Fixup Redirects and Cook-on-the-fly Server (Contributed by FineRedMist)

Change 2936799 on 2016/04/07 by Mark.Satterthwaite

	Automatically enable RHI thread support in Metal if parallel execution is compiled in unless running the Editor which doesn't support it. The RHI thread is only enabled in Metal when parallel execution is available because there's little to no advantages to the RHI thread with Metal unless parallel execution is enabled. Also only enable async compute support when parallel execution is available and running on an AMD GPU as only AMD support it and again its only really useful when running things in parallel. Disable the async. compute fencing code when async. compute is disabled.

Change 2936923 on 2016/04/07 by Peter.Sauerbrei

	add exception when trying to access an ini section which we don't cache

Change 2937839 on 2016/04/08 by Lee.Clark

	PS4 - BC6H and BC7 support

	#jira OR-14804

Change 2937841 on 2016/04/08 by Lee.Clark

	Fix media player not opening the same file that has just been closed.

Change 2937843 on 2016/04/08 by Lee.Clark

	PS4 - Fix Media player seek and duration

Change 2938272 on 2016/04/08 by Mark.Satterthwaite

	Change the Metal texture lock/unlock code to use the immediate getBytes API to read from the texture unless it is stored in Private memory and requires we use the blit-encoder. This means iOS texture locking won't generally need to use the blit encoder with its row alignment restrictions as all textures will be Shared. On Mac most textures will still be accessed via blit operations  since Private memory is much more common than Managed.

Change 2938471 on 2016/04/08 by Nick.Shin

	load/save with "negative char size value" fixed

	two 'U''s were missing-- causing base64encoder and decoder to not return original data (or expected data for that matter)...

	C++ function shows these signatures:
	    \Engine\Source\Runtime\Engine\Public\SaveGameSystem.h
	    FGenericSaveGameSystem::SaveGame(..., ..., ..., ...<uint8>);
	    FGenericSaveGameSystem::LoadGame(..., ..., ..., ...<uint8>);

	javascript version was using signed operators...

	answerhub 386719 - broken load/save

Change 2938546 on 2016/04/08 by Nick.Shin

	upgrading zlib, openssl, libcurl & libwebsockets
	(part 1, for libwebsockets -- engine changes will be in part 2)

	and writting down all of the build instructions into a single script file

	future tasks may have the script broken to smaller sized files and placed in the respective library folders for simplicity -- for now, it's bundled together to ensure build is all-in-one...

	#jira UEPLAT-1246 - Update libWebsockets
	#jira UEPLAT-1221 - update websocket library
	#jira UEPLAT-1223 - Arrange testing for 'update websocket library'
	#jira UEPLAT-1203 - Add Linux library for libwebsockets
	#jira UEPLAT-1204 - Rebuild libwebsockets with SSL

Change 2939402 on 2016/04/11 by Mark.Satterthwaite

	No need to call synchroniseTexture on iOS when locking a texture for read - that function call is only available and required on OS X.

Change 2939526 on 2016/04/11 by Daniel.Lamb

	Don't mark content as modified when garbage collecting.
	#PR2249
	#2249

Change 2940094 on 2016/04/11 by Michael.Trepka

	Temporarily rollback //UE4/Dev-Platform/Engine/Source/Runtime/Apple/MetalRHI/Private/MetalContext.cpp to revision 47 to unblock UE-29312

	#codereview Mark.Satterthwaite

Change 2940540 on 2016/04/12 by Jeff.Campeau

	Hardware decompress support for Xbox One.

Change 2940793 on 2016/04/12 by Lee.Clark

	PS4 - Fix file handle leaks

	#codereview Marcus.Wassmer

Change 2940903 on 2016/04/12 by Keith.Judge

	Xbox One - Fix validated driver warning when using async compute with dynamic buffers (remove dynamic buffers).
	Also resurrected the old deferred deletion queue (though simplified the code a lot as TQueue was horrible), as the platform agnostic one can't deal with placement created resources with a separate buffer/resource.
	Moved associated deferred deletion logic out of FD3D11DynamicBuffer.

	Attempted fix for UE-28758, but doesn't actually fix it. :(

Change 2940959 on 2016/04/12 by Michael.Trepka

	Moved RadioEffectUnit CoreAudio plugin to Engine/Build/Mac

	#codereview Ben.Marsh

Change 2940961 on 2016/04/12 by Michael.Trepka

	Updated GitHub readme for Mac with instructions for building ShaderCompileWorker

	#codereview Ben.Marsh

Change 2941010 on 2016/04/12 by Daniel.Lamb

	Added xboxone.projectsettings to the ini processer in UAT.
	#codereview Peter.Sauerbrei
	#jira UE-29344

Change 2941671 on 2016/04/12 by Jeff.Campeau

	March 2016 XDK update

Change 2941998 on 2016/04/13 by Mark.Satterthwaite

	In MetalCommandList retain/release when waiting on a command-buffer commit to ensure command-buffer lifetime.

Change 2942008 on 2016/04/13 by Keith.Judge

	Fix black reflections when async compute is enabled. Shader resource tables are now properly bound on the context, and fixed a bug where the buffer offset and number of constants wasn't being properly set when using the ring buffer.

	#jira UE-28758

Change 2942046 on 2016/04/13 by Lee.Clark

	Fix SN-DBS launch failure with VS2015 - (path env seems to be null in 2015)

Change 2942095 on 2016/04/13 by Mark.Satterthwaite

	MIssed a change to use AlignedStride rather than Stride in FMetalDynamicRHI::RHIReadSurfaceFloatData to fix iOS blit-encoder read-back.

Change 2942383 on 2016/04/13 by Mark.Satterthwaite

	When locking a Metal texture on Mac you have to submit the command buffer & wait in a different location for Private vs. Managed access.

Change 2942419 on 2016/04/13 by Michael.Trepka

	Enabled IPv6 on iOS and Mac

	#jira UEPLAT-1168

Change 2942472 on 2016/04/13 by Daniel.Lamb

	Fixed missing OnlineSubsystemGooglePlay section from UAT ini processing.
	#codereview Peter.Sauerbrei

Change 2942829 on 2016/04/13 by Nick.Shin

	removing unused emscripten - ThirdParty folder

	the ThirdParty folder contained a lot of GPL (and sometimes missing) licensing projects - removing to keep legal happy

	tested with full rebuild, full cook, packaging and running QAGame

Change 2943110 on 2016/04/13 by Chris.Babcock

	Fix Oculus mobile binaries filtered (include the jars)
	#jira ue-29080
	#ue4
	#android
	#gearvr
	#codereview Nick.Whiting

Change 2943111 on 2016/04/13 by Chris.Babcock

	Fix GearVR plugin jar copy logic
	#jira UE-29108
	#ue4
	#android
	#gearvr
	#codereview Nick.Whiting

Change 2943579 on 2016/04/14 by Peter.Sauerbrei

	enable tvOS in the binary build

Change 2943587 on 2016/04/14 by Peter.Sauerbrei

	creation of xcode archives when using the archive command with iOS

Change 2943619 on 2016/04/14 by Mark.Satterthwaite

	Make Metal SM4 the default on Mac again for the 4.12 release. As expected there are many bugs to resolve.

Change 2943869 on 2016/04/14 by Daniel.Lamb

	Turned duplicate stage of files into warning.
	#codereview Peter.Sauerbrei
	#lockdown Josh.Adams
	#jira UE-29487

Change 2943901 on 2016/04/14 by Keith.Judge

	Xbox One - Fix start up crash.

	#lockdown Josh.Adams

Change 2943981 on 2016/04/14 by Mark.Satterthwaite

	Allow RWBuffers in Metal, which should work, but not RWTextures which aren't yet supported.
	#jira UE-29492
	#lockdown josh.adams

Change 2944080 on 2016/04/14 by Peter.Sauerbrei

	temporarily remove code which removes passwords in ini files which reside in the pak file
	multiple defaultengine.ini files were being copied over one another
	#lockdown josh.adams

Change 2944249 on 2016/04/14 by Peter.Sauerbrei

	fix for writing out DefaulEngine.ini when deprecated items are not changed
	#codereview zabir.hoque
	#lockdown josh.adams

Change 2944454 on 2016/04/14 by Peter.Sauerbrei

	fix for incorrect archive directory and missing IPA
	#jira UE-29509
	#lockdown josh.adams

Change 2944834 on 2016/04/15 by Peter.Sauerbrei

	fix for crash on some iOS device due to resources being freed while still in use by the GPU
	#jira UE-29517
	#lockdown josh.adams

Change 2944915 on 2016/04/15 by Peter.Sauerbrei

	fix for including Facebook SDK in tvOS since we don't have the Facebook libraries for tvOS yet
	#lockdown josh.adams

Change 2945164 on 2016/04/15 by Josh.Adams

	- Removing XboxOnePDBFile from junkmanifest, causes too much trouble when staging using AutoSDKs
	#lockdown nick.penwarden
	#codereview jeff.campeau

#lockdown nick.penwarden

[CL 2945174 by Josh Adams in Main branch]
2016-04-15 10:04:09 -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
Josh Adams
660ab7f0c9 Copying //UE4/Dev-Platform to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2719147 on 2015/10/07 by Mark.Satterthwaite

	Allow the shader cache to perform some precompilation synchronously on load before falling back to asynchronous compilation to balance load times against total time spent precompiling. Added a stat to the group that reports how long the precompile has been running until it completes so it is easier to track.

Change 2719182 on 2015/10/07 by Mark.Satterthwaite

	Refactor the ShaderCache's internal data structures and change the way we handle recording whether a particular predraw state has been submitted to try and make it more efficient.

Change 2719185 on 2015/10/07 by Mark.Satterthwaite

	Merging CL #2717701: Try and fix random crashes on Mac when manipulating bound-shader-states caused by ShaderCache potentially providing a bogus shader state pointer on exit from predraw.

Change 2719434 on 2015/10/07 by Mark.Satterthwaite

	Make sure that Mac ensures reports have a source context and a sane callstack when sent to the crash-reports server.

Change 2724764 on 2015/10/12 by Josh.Adams

	[Initial AppleTV support]
	Merging	//depot/YakBranch/... to //UE4/Dev-Platform/...

Change 2726266 on 2015/10/13 by Lee.Clark

	PS4 - Calc reserve size required for DMA copy when using unsafe command buffers

Change 2726401 on 2015/10/13 by Mark.Satterthwaite

	Merging CL #2716418: Fix UE-15228 'Crash Report Client doesn't restart into project editor on Mac' by reporting the original command line supplied by LaunchMac, not the modified one that strips the project name. The CRC can then relaunch as expected.
	#jira UE-15228

Change 2726421 on 2015/10/13 by Lee.Clark

	PS4 - Don't try to clear invalid targets

Change 2727040 on 2015/10/13 by Michael.Trepka

	Merging CL 2724777 - Fixed splash screen rendering for images with DPI different than 72

Change 2729783 on 2015/10/15 by Keith.Judge

	Fix huge memory leak in Test/Shipping configurations, caused because I am a numpty.

Change 2729847 on 2015/10/15 by Mark.Satterthwaite

	Merging CL #2729846: On OS X unconstrain windows from the dimension of the parent display when in Windowed mode - it is OK for them to be larger in this case. They do need to be repositioned if on the Primary display so that they don't creep under the menu bar and become unmovable/unclosable and Fullscreen windows still need to be constrained to a single display. We can now take screenshots of windows that are larger than the display & not get grey bars beyond the cutoff.
	#jira UE-21992

Change 2729865 on 2015/10/15 by Keith.Judge

	Fast semantics - Finish up resource transitions, adding resource decompression where appropriate and using non-fast clears where we can't determine the resource transition.

Change 2729897 on 2015/10/15 by Keith.Judge

	Fast Semantics - Make sure all GetData() calls are made safe with GPU fences.

Change 2729972 on 2015/10/15 by Keith.Judge

	Removed the last vestiges of ID3D11DeviceContext/ID3D11DeviceContext1 from the Xbox RHI. Everything now uses ID3D11DeviceContextX directly.

	This should be marginally quicker as it stops a double call to ClearState().

Change 2731503 on 2015/10/16 by Keith.Judge

	Added _XDK_VERSION to the DDC key for textures, which should solve the issue of the tiling mode changing in August XDK (and future changes Microsoft may inflict).

Change 2731596 on 2015/10/16 by Keith.Judge

	Fast Semantics - Add deferred resource deletion queue to make deleted resources be actually deleted a number of frames later so that the GPU is definitely finished with them. Hooked up the temporary SRVs for dynamic VBs as a first step.

Change 2731928 on 2015/10/16 by Michael.Trepka

	PR #1659: Mac/Build.sh handles additional arguments (Contributed by judgeaxl)

Change 2731934 on 2015/10/16 by Michael.Trepka

	PR #1618: added clang 3.7.0 -Wshift-negative-value ignore in JpegImageWrapper.cpp (Contributed by bsekura)

Change 2732018 on 2015/10/16 by Mark.Satterthwaite

	Emit a shader code cache for each platforms requested shader formats, this is separate to the targeted formats as not all can or need to be cached.
	- The implementation extends the ShaderCache's hooks in FShaderResource's serialisation function to capture the required shaders.
	- Each target platform has its own list of cached shader formats, analogous to the list of targeted RHIs. Presently only the Mac implements this.
	- Code cached shaders are now compressed (for size) to reduce the overhead associated with keeping all the shader code around - this works esp. well for text-based formats like GLSL.

Change 2732365 on 2015/10/16 by Josh.Adams

	- Packaging a TVOS .ipa now works (still haven't tried any of the Editor integration like Launch On)

Change 2733170 on 2015/10/18 by Terence.Burns

	Fix for Android IAP query not returning entire inventory.

Change 2733174 on 2015/10/18 by Terence.Burns

	Fix Movie player issue where wait for movie to finish isnt being respected.

	Seems a stray bUserCanceled event flag was causing this not to be observed.

	Added some verbose logging to apple movie player.

Change 2733488 on 2015/10/19 by Mark.Satterthwaite

	Added the ability to merge the .ushadercache files used by the ShaderCache to store shader & draw state information.
	- Fixed a bug that would cause invalid shader membership and draw state information to be logged.
	- Added a separate command-line tool to merge shader cache files, currently Mac-only but in theory should work on other platforms too.

Change 2735226 on 2015/10/20 by Mark.Satterthwaite

	Fix temporal AA rendering on GL/Mac OS X - you can't rely on EyeAdaptation values unless SM5 is available so only perform that code on SM5 & we must correctly clamp saturate(NaN) to 0 as the current hlslcc won't do that for us (& is required by the HLSL spec). The latter used to be clamped in the AA_ALPHA && AA_VELOCITY_WEIGHTING code block that was removed recently.
	#jira UE-21214
	#jira UE-19913

Change 2736722 on 2015/10/21 by Daniel.Lamb

	Improved performance of cooking stats system.

Change 2737172 on 2015/10/21 by Daniel.Lamb

	Improved cooking stats performance for ddc stats.
2015-12-10 16:56:55 -05:00
Richard Hinckley
6ceaa5aba7 Cleaning out programmer-only comments that were harvested by Doxygen.
#platformnotify Josh.Adams

[CL 2690143 by Richard Hinckley in Main branch]
2015-09-14 09:25:39 -04:00
Josh Adams
01c4d45e38 - Renamed Desktop target platform to AllDesktop to reduce conflicts with Desktop directories [UEPLAT-894]
#codereview peter.sauerbrei,ben.marsh

[CL 2588676 by Josh Adams in Main branch]
2015-06-16 11:09:27 -04:00