Commit Graph

101 Commits

Author SHA1 Message Date
Jack Porter
ae727f8dab Copying //UE4/Dev-Mobile to //UE4/Dev-Main (Source: //UE4/Dev-Mobile @ 3383462)
#lockdown Nick.Penwarden

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

Change 3292174 on 2017/02/08 by Nick.Shin

	HTML5 emscripten: wasm and webgl2 support

	- Linux toolchain

	#jira UEPLAT-1437  Switch [to] web assembly

Change 3292193 on 2017/02/08 by Nick.Shin

	HTML5 emscripten: wasm and webgl2 support

	- ThirdParty libs compiled with new toolchain with wasm support

	#jira UEPLAT-1437  Switch [to] web assembly

Change 3292215 on 2017/02/08 by Nick.Shin

	HTML5 emscripten: wasm and wbegl2 support

	- emscripten toolchain

	#jira UEPLAT-1437  Switch [to] web assembly

Change 3292222 on 2017/02/08 by Nick.Shin

	HTML5 emscripten: wasm support

	- ENGINE changes (c# & cpp files)

	#jira UEPLAT-1437  Switch [to] web assembly

Change 3292223 on 2017/02/08 by Nick.Shin

	HTML5 merge ThirdParty lib build scripts from Dev-Platform to Dev-Mobile

Change 3292228 on 2017/02/08 by Nick.Shin

	HTML5 emscripten: webgl support

	- webgl patches
	- and a lot of UE4 patches to package HTML5 on LINUX
	- mostly from mozilla's jukka -- thx jukka!

	#jira  UEPLAT-828  (4.16)  Support ES3 / WebGL2 in HTML5

Change 3292285 on 2017/02/08 by Nick.Shin

	HTML5 emscripten: wasm and webgl2 support

	- Windows toolchain

	#jira UEPLAT-1437  Switch [to] web assembly

Change 3293994 on 2017/02/09 by Nick.Shin

	HTML5 emscripten: wasm and webgl2 support

	- OSX toolchain

	#jira UEPLAT-1437  Switch [to] web assembly

Change 3294391 on 2017/02/09 by Nick.Shin

	HTML5 "black box issues" revisited

	- jukka rewrote the window resize handler -- much cleaner and more straightforward

	#jira UE-36341  HTML5 - View is incorrectly drawn
	#jira UE-32311  Templates on Firefox/Chrome on HTML5 are not full screen during Launch On

Change 3296421 on 2017/02/10 by Jack.Porter

	Fix landscape spline segment splitting placing when using streaming levels

Change 3296587 on 2017/02/10 by Jack.Porter

	Additional fix for landscape spline segment splitting when using streaming levels

Change 3301241 on 2017/02/14 by Mi.Wang

	Fixed DeviceProfileEditor bug for incorrect clamp the Texture Mip LOD size. #jira UE-36237 #rb jack.porter

Change 3301387 on 2017/02/14 by Nick.Shin

	HTML5 emscripten: webgl support

	- webgl patches from mozilla's jukka
	  + hardware instancing
	  + glBlitFramebuffer
	  + GL AlaphaBlendOperation

	#jira  UEPLAT-828  (4.16)  Support ES3 / WebGL2 in HTML5

Change 3301405 on 2017/02/14 by Nick.Shin

	HTML5 plugin fix when blueprint projects are promoted to code projects automatically.

	#jira UE-41710  HTML5 - Package Failure - Failed to Produce item ProjectName-OnlineSubsystemNull.bc

Change 3302278 on 2017/02/14 by Omar.Rodriguez

	UE-36651: Mac Vulkan Android Projects crash on launch.

	* Glslang library has been built for Mac but flag was not updated
	* Set GlslangAvailable to true for Mac when building an Android project with vulkan

	#jira UE-36651

Change 3302773 on 2017/02/14 by Chris.Babcock

	Add a dropdown with some common console commands on Android (contributed by rafortis)
	#jira UE-40834
	#PR #3143
	#ue4
	#android

Change 3305604 on 2017/02/16 by Nick.Shin

	HTML5 webgl2 shader- turn on: instance static mesh vertex factory

	#jira  UEPLAT-828  (4.16)  Support ES3 / WebGL2 in HTML5

Change 3308154 on 2017/02/16 by Nick.Shin

	HTML5 GitHub PR

	#jira UE-42019  GitHub 3258 : Added suport for emscripten --pre-js and --post-js option when building for HTML5

Change 3308510 on 2017/02/16 by Nick.Shin

	HTML5 webgl2 shader fixes

	#jria UEMOB-201  Support ES3 / WebGL2 in HTML5

Change 3308971 on 2017/02/17 by Jack.Porter

	Fix for landscape painting when height<0 in the Ortho viewports

Change 3309075 on 2017/02/17 by Allan.Bentham

	Include static subject meshes when masking out modulated shadow casters.

	#jira UE-41581

Change 3309531 on 2017/02/17 by Chris.Babcock

	Handle large OBB files in APK
	#jira UE-41443
	#ue4
	#android

Change 3311320 on 2017/02/19 by Dmitriy.Dyomin

	Fixed: Particle Cutout Crashes On Mobile Devices That Don't Support Hardware Instancing (Mali-400 GPU)
	#jira UE-41970

Change 3311347 on 2017/02/20 by Dmitriy.Dyomin

	Fixed: Engine Crashes When Previewing ES3_1 With Material Using World Position Offset (Need Custom Stencil)
	#jira UE-41976

Change 3311398 on 2017/02/20 by Dmitriy.Dyomin

	Fixed: Landscapes do not render on PowerVR device
	#jira UE-35530

Change 3311428 on 2017/02/20 by Dmitriy.Dyomin

	Fixed: Exposure Is More Extreme In High-End Mobile Preview Modes
	#jira UE-42036

Change 3311448 on 2017/02/20 by Dmitriy.Dyomin

	Fixed: Packaged game Crashes on android after entering "Help" command twice
	#jira UE-41956

Change 3311587 on 2017/02/20 by Allan.Bentham

	ES2 GLSL - Silently swap all uint to ints
	#jira UE-41548

Change 3313930 on 2017/02/21 by Allan.Bentham

	Print literal uints as ints when generating ES2 code.
	#jira UE-41548

Change 3317924 on 2017/02/22 by Nick.Shin

	HTML5 emscripten: wasm & webgl2 support - RC1

	- Linux toolchain

	#jira UEMOB-263  Switch [to] web assembly
	#jira UEMOB-201  Support ES3 / WebGL2 in HTML5

Change 3317929 on 2017/02/22 by Nick.Shin

	HTML5 emscripten: wasm & webgl2 support - RC1

	- ThirdParty libs compiled with new toolchain with wasm and webgl2 support

	#jira UEMOB-263  Switch [to] web assembly
	#jira UEMOB-201  Support ES3 / WebGL2 in HTML5

Change 3317951 on 2017/02/22 by Nick.Shin

	HTML5 emscripten: wasm & webgl2 support - RC1

	- emscripten toolchain

	WARNING: emscripten/incoming/source/include/libc/bit (the file) might need to be deleted first

	#jira UEMOB-263  Switch [to] web assembly
	#jira UEMOB-201  Support ES3 / WebGL2 in HTML5

Change 3318004 on 2017/02/22 by Nick.Shin

	HTML5 emscripten: wasm & webgl2 support - RC1

	- windows toolchain

	#jira UEMOB-263  Switch [to] web assembly
	#jira UEMOB-201  Support ES3 / WebGL2 in HTML5

Change 3318669 on 2017/02/23 by Nick.Shin

	HTML5 emscripten: wasm & webgl2 support - RC1

	- OSX toolchain

	#jira UEMOB-263  Switch [to] web assembly
	#jira UEMOB-201  Support ES3 / WebGL2 in HTML5

Change 3318672 on 2017/02/23 by Nick.Shin

	HTML5 webgl2 shader fixes

	#jria UEMOB-201  Support ES3 / WebGL2 in HTML5

Change 3318819 on 2017/02/23 by Dmitriy.Dyomin

	Fixed: Rendering artifacts with bloom on iPhone7 Metal
	#jira UE-40978

Change 3319702 on 2017/02/23 by Chris.Babcock

	Disable eglSwapInterval since it can cause issues with some drivers
	#ue4
	#android

Change 3320880 on 2017/02/24 by Dmitriy.Dyomin

	Added r.Mobile.TonemapperFilm cvar which can be used to enable/disable filmic tonemapper on mobile, independently from desktop (disabled by default)
	#jira UEMOB-195

Change 3321042 on 2017/02/24 by Jack.Porter

	Fixed incorrect sizeof in Vulkan pipleine cache
	pointed out here: http://coconutlizard.co.uk/blog/ue4/ue4-its-a-size-jim/

	#code_review: rolando.caloca

Change 3322383 on 2017/02/24 by Chris.Babcock

	Fix issue with ad banner on Android 7.0 devices
	#jira UE-42390
	#ue4
	#android

Change 3322479 on 2017/02/24 by Omar.Rodriguez

	UEMOB-199 - WEX: Improved virtual keyboard for Android

	* Calculating the area covered by the virtual keyboard
	* Calling OnVirtualKeyboardShown and OnVirtualKeyboardHidden events
	* Passing the Rect of the area covered by the virtual keyboard OnVirtualKeyboardShown event

	#jira UEMOB-199

Change 3323353 on 2017/02/27 by Allan.Bentham

	Fix broken mobile scene captures when !mobileHDR and RHINeedsToSwitchVerticalAxis
	#jira UE-42191

Change 3323431 on 2017/02/27 by Allan.Bentham

	CIS fix

Change 3323687 on 2017/02/27 by Allan.Bentham

	Disable GRHINeedsUnatlasedCSMDepthsWorkaround for mobile devices.
	#jira UE-42131

Change 3324652 on 2017/02/28 by Dmitriy.Dyomin

	Fixed: Canvas elements appear darker on iOS Metal

Change 3324885 on 2017/02/28 by Jack.Porter

	Fixed "Minimum iOS Version" setting display name

	#jira UE-42270

Change 3324899 on 2017/02/28 by Jack.Porter

	GitHub 3063 : removed duplicate gc.MaxObjectsInGame setting in IOSEngine.ini
	#jira UE-40018

	#3063

Change 3324932 on 2017/02/28 by Jack.Porter

	GitHub 3257 : iPhonePackager errors in output log when opening project settings on Windows

	#jira UE-41984
	#3257
	#codereview: Peter.Sauerbrei

Change 3324956 on 2017/02/28 by Jack.Porter

	FOpenGLFrontend::GetMaxSamplers incorrect for IOS
	#jira UE-42038
	#3264

Change 3325478 on 2017/02/28 by Allan.Bentham

	PR # 3188   : Fix far distance bug with cascaded shadows on mobile (Metal) and PC mobile preview  (Contributed by ufna)

	#jira UE-41442

Change 3327300 on 2017/03/01 by Allan.Bentham

	PR #3175   : Fixes high quality reflection blending seams  (Contributed by kallehamalainen)
	#jira UE-41257

Change 3328917 on 2017/03/02 by Nick.Shin

	HTML5 project settings

	expose ini settings to edtior HTML5 project settings panel

	#jira UE-42331  Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini
	#jira UE-41584  Editor locks up when adding an element for HTML5 devices on Mac
	#jira UE-41701  Editor freezes when setting browser filepath for inserted element in project settings

Change 3329169 on 2017/03/02 by Allan.Bentham

	increase render thread timeout to 1 minute for suntemple / android.
	Prevents low end devices timing out during load.
	#jira UE-40696

Change 3330849 on 2017/03/02 by Nick.Shin

	HTML5 project settings

	expose ini settings to edtior HTML5 project settings panel

	#jira UE-42331  Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini

Change 3331078 on 2017/03/03 by Dmitriy.Dyomin

	Fixed: Device output log partial lines

	integrated from WEX (3250488)

Change 3331112 on 2017/03/03 by Dmitriy.Dyomin

	Reduced state setup for slate draw calls (saves about 4ms RT time on mobile)

	integrated from WEX (3256584)

Change 3331117 on 2017/03/03 by Dmitriy.Dyomin

	Fixed redundant blend state changes in opengl

	integrated from WEX (3256586)

Change 3331173 on 2017/03/03 by Dmitriy.Dyomin

	Slate pixel shaders will use half precision where possible on mobile

	integrated from WEX (3256656)

Change 3332865 on 2017/03/06 by Dmitriy.Dyomin

	Better MobileContentScaleFactor defaults for iOS devices
	#jira UEMOB-330

Change 3333129 on 2017/03/06 by Peter.Sauerbrei

	move to Library/Caches instead of documents for saved files
	re-enable iterative deploy on TVOS
	#jira UEMOB-284

Change 3334692 on 2017/03/06 by Jack.Porter

	Allow r.MobileContentScaleFactor to be changed at runtime on Android

	#jira UEMOB-173

Change 3336255 on 2017/03/07 by Nick.Shin

	HTML5 project settings

	marking SIMD and multithreading as experimental - these do not play nice with WASM builds currently...

	#jira UE-42331  Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini

Change 3337094 on 2017/03/08 by Nick.Shin

	HTML5 project settings

	marking SIMD and multithreading as experimental - these do not play nice with WASM builds currently...

	#jira UE-42331  Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini

Change 3338800 on 2017/03/08 by Chris.Babcock

	Update AAR handling to deal with versioning, subproject dependencies for resources, and scope
	#jira UE-42677
	#ue4
	#android

Change 3338813 on 2017/03/08 by Chris.Babcock

	Pass build configuration to UPL for access during packaging as $S(Configuration)
	#jira UE-42678
	#ue4
	#android
	#ios

Change 3339401 on 2017/03/09 by Alicia.Cano

	Android runtime permissions
	- Fix for WRITE_EXTERNAL_STORAGE if it is not granted at time of onCreate for non-shipping builds
	- Fix for Location Services
	- Fix for if target sdk is not set to 23+
	#jira UE-38512
	#android
	#rb: chris.babcock

Change 3340736 on 2017/03/09 by Chris.Babcock

	Implement support for new controllers (Xbox Wireless, SteelSeries Stratus XL, PS4) (contributed by TRS-justing)
	#jira UE-41965
	#PR #3254
	#ue4
	#android

Change 3340744 on 2017/03/09 by Jack.Porter

	Expose Custom Depth to Foliage
	#jira UE-6061

Change 3340849 on 2017/03/09 by Dmitriy.Dyomin

	Fixed: iOS movie become laggy and crashes when played in iPhone 6/6s.
	#jira UE-42351

Change 3341268 on 2017/03/10 by Alicia.Cano

	PR #2894: Initial VoiceModuleAndroid support. (Contributed by devbm)
	#jira UE-37945
	#android
	#rb: chris.babcock, jack.porter

Change 3341303 on 2017/03/10 by Allan.Bentham

	Remove optimisation that prevents full specular occulsion on mobile.
	PR #3186  : Specular can't be blocked on high-end mobile.
	#jira UE-41393

Change 3342304 on 2017/03/10 by Alicia.Cano

	build fix
	#rb: chris.babcock

Change 3343344 on 2017/03/13 by Alicia.Cano

	build fix
	#rb: chris.babcock

Change 3343591 on 2017/03/13 by Brent.Pease

	iOS multiplayer fix part 1. Correct byte ordering.

	#jira UE-34875

Change 3343669 on 2017/03/13 by Chris.Babcock

	Update carefullyredist script version
	#jira UE-42832

Change 3344212 on 2017/03/13 by Will.Fissler

	Various compile fixes for Xcode 8.3.
	These fixes must also be added to //UE4/Release-4.15.
	#jira UE-41313

Change 3344396 on 2017/03/13 by Chris.Babcock

	Fix Java 1.5 obsolete warnings
	#jira UE-42851
	#ue4
	#android

Change 3345132 on 2017/03/14 by Will.Fissler

	Added ifdef wrapper to check clang version for presentDrawable.

Change 3345336 on 2017/03/14 by Will.Fissler

	Moved #if (__clang_major__ > 8) || (__clang_major__ == 8 && __clang_minor__ >= 1) check inside of the presentDrawable method.

Change 3345460 on 2017/03/14 by Will.Fissler

	ifdef changes for presentDrawable. The last submission duped the changes, instead of merging. #rb none

Change 3346046 on 2017/03/14 by Will.Fissler

	Fixed MetalCommandBuffer.cpp [again] after last submission duped changes instead of merging.

Change 3346367 on 2017/03/14 by Chris.Babcock

	Fix issue with GoogleVR ARMv7 libraries included for other architectures in link
	#ue4
	#android

Change 3347682 on 2017/03/15 by Allan.Bentham

	Enable HW sRGB correction with retainer widget's render target.
	Use slate's gamma correction for mobile (where no such support exists)
	Render retainer box RT content with gamma correction.
	#jira UE-40967

Change 3348712 on 2017/03/15 by Nick.Shin

	HTML5 - upload to S3

	updated to AWS "signature version 4" authentication

	#jira UE-42525  HTML5 Upload to Amazon S3 fails with Incorrect Configuration error

Change 3349254 on 2017/03/16 by Jack.Porter

	Fix for crash using the mobile previewer when the LQ lightmap shader permutation is disabled.
	#jira UE-42971

Change 3349739 on 2017/03/16 by Nick.Shin

	HTML5 - upload to S3

	better error message feedback on upload failures

	#jira UE-42525  HTML5 Upload to Amazon S3 fails with Incorrect Configuration error

Change 3349765 on 2017/03/16 by Alicia.Cano

	Disable mouseover events in Mobile Previewer

	#jira UE-19903
	#mobile
	#rb: Jack.Porter

Change 3350049 on 2017/03/16 by Nick.Shin

	HTML5 - upload to S3

	folder in bucket is optional

	#jira UE-42525  HTML5 Upload to Amazon S3 fails with Incorrect Configuration error

Change 3350153 on 2017/03/16 by Nick.Shin

	HTML5 - upload to S3

	updated S3 public link generator

	#jira UE-42525  HTML5 Upload to Amazon S3 fails with Incorrect Configuration error

Change 3351582 on 2017/03/17 by Will.Fissler

	Reverting the attempted fix for Xcode 8.3: Result += " -mcpu=cortex-a9";

	Currently we cannot build arm64 for iOS with this change.

Change 3352085 on 2017/03/17 by Alicia.Cano

	iOS doesn't honor request to close the virtual keyboard leading to a crash
	#jira UE-36447
	#ios
	#rb:Peter.Sauerbrei

Change 3353313 on 2017/03/19 by Ben.Marsh

	Always allow large *.js files in Github.

Change 3354444 on 2017/03/20 by Nick.Shin

	HTML5 - upload to S3

	to help make it obvious that "upload to S3" checkbox is set/or not -- disable S3 details if checkbox for "uploading to S3" is not set

	#jira UE-42525  HTML5 Upload to Amazon S3 fails with Incorrect Configuration error

Change 3355618 on 2017/03/20 by Nick.Shin

	HTML5 Save Game System

	- ripped out HTML5 code [from Engine's SaveGameSystem.h] and placed it in HTML5Platform.cpp
	- cleaned up HTML5PlatformFile.cpp (make it match as clost to linux's version)
	- created HTML5's own PlatformFeature & SaveGameSystem files -- and updated HTML5PlatformMisc to make use of the the new HTML5 SaveGame code

	#jira UE-42081 Remove heinous HTML5 code from engine

Change 3355621 on 2017/03/20 by Nick.Shin

	remove temp debugging code

	#jira UE-42081 Remove heinous HTML5 code from engine

Change 3356937 on 2017/03/21 by Chris.Babcock

	Add "stat vulkanrhi" to new console dropdown
	#jira UE-43149
	#ue4
	#android

Change 3357652 on 2017/03/21 by Nick.Shin

	HTML5 performance speed ups

	added "use fixed timestep" setting option for HTML5 builds (this has been separated from Engine - General Settings - Framerate)
	- this is slightly different to smooth framerate and fixed framerate - thus, the timestep option was put in the HTML5 specific panel

	this option is based on the suggestions by jukka's post:
	- https://answers.unrealengine.com/questions/409629/smooth-frame-rate-and-use-fixed-frame-rate-should.html

	however, using this option will make the player "run faster" on (for example) thirdperson blueprint template -- but, it has no effect on other (for example) zen garden...

	#jira UE-30214 - Implement a warning message for fps settings

Change 3360415 on 2017/03/23 by Allan.Bentham

	Fix crash that occurs when ES3.1 preview is used with r.MobileHDR32bppMode modes.

Change 3360418 on 2017/03/23 by Allan.Bentham

	Disable filmic tonemapper if r.MobileHDR32bppMode is in use.
	#jira UE-40913

Change 3360557 on 2017/03/23 by Allan.Bentham

	Better fix for mobile CSM shadow flickering (UE-42131), now works for PC OpenGL based mobile preview.
	#jira UE-42131

Change 3362258 on 2017/03/23 by Dmitriy.Dyomin

	Fixed: Canvas texture element gamma issues on iOS Metal

Change 3362321 on 2017/03/24 by Dmitriy.Dyomin

	GitHub 3173 : MaterialAO support for mobile rendering path (contributed by kallehamalainen)

	#3173

Change 3363550 on 2017/03/24 by Alicia.Cano

	build fix for devices < Android 5.0
	#jira UE-43299
	#android
	#rb: chris.babcock

Change 3363687 on 2017/03/24 by Chris.Babcock

	Fix Android password hiding in input dialog
	#jira WEX-5159
	#ue4
	#android

Change 3365280 on 2017/03/27 by Dmitriy.Dyomin

	Fix for GL_EXT_shader_framebuffer_fetch on Zenfone5. Use UE_EXT_shader_framebuffer_fetch define on all devices to enable extension

Change 3365291 on 2017/03/27 by Dmitriy.Dyomin

	Copied form WEX CL# 3308653
	Fixed: Enabling shader cache causes crash on NVIDIA Shield

	#jira UE-41639

Change 3365293 on 2017/03/27 by Dmitriy.Dyomin

	GitHub 3411 : Fix crash in patching utils mount method (contributed by nverenik)
	#jira UE-43247
	#3411

Change 3365340 on 2017/03/27 by Dmitriy.Dyomin

	Fixed: Moving sublevel in world composition browser does not appear in Undo History
	#jira UE-35535

Change 3365564 on 2017/03/27 by Allan.Bentham

	SkyLightComponent now serializes IrradianceMap SH values.
	clicking Recapture sky button in mobile preview switches back to SM4/5 to update captures.
	Skylights that are dirty from load will trigger reflection capture update once shaders are rebuilt.
	#jira UE-42436

Change 3366282 on 2017/03/27 by Nick.Shin

	remove dead links

	these files to not exist anywhere in the make-3.81 subfolders

	#UDN-354501
	#jira none

Change 3366306 on 2017/03/27 by Nick.Shin

	HTML5 - disable multi-threading for wasm

	#jira UE-43219 - HTML5 disable multi-threading for wasm

Change 3366307 on 2017/03/27 by Nick.Shin

	HTML5 packaging Shipping builds

	big cleanup / additions to *gz file support for amazon s3

	* both, uploading to s3
	* and allowing s3 to host the games there

	#jira UE-43002 HTML5 in Shipping fails downloading symbols files
	#jria UE-43001 HTML5 Shipping Projects fail looking for compressed files when "Compress files during shipping packaging" is not selected.

Change 3367385 on 2017/03/28 by Allan.Bentham

	Display skylight serialization warning only when cooking for mobile platforms.
	#jira UE-42436

Change 3368583 on 2017/03/28 by Chris.Babcock

	Expose JAVA_HOME setting in Android SDK project settings on Mac
	#jira UE-43418
	#ue4
	#android

Change 3368803 on 2017/03/28 by Chris.Babcock

	Fix features requested in manifest for "Daydream and Cardboard" mode
	#jira UE-43314
	#ue4
	#android

Change 3369087 on 2017/03/28 by Jack.Porter

	Changed tooltip and added supported devices in paretheses for Android Mobile Deferred / ES31+AEP
	#jira UE-42438

Change 3369372 on 2017/03/29 by Allan.Bentham

	Fix disappearing meshes when r.mobile.allowdistancefieldshadows is disabled.
	#jira UE-43366

Change 3369381 on 2017/03/29 by Jack.Porter

	Show warnings when mobile shader permutations required for rendering are disbaled
	Made FReadOnlyCVARCache a singleton and added mobile CVars, used for MobileBasePassRendering.
	#jira UE-43050

Change 3369430 on 2017/03/29 by Allan.Bentham

	fix CIS build

Change 3369740 on 2017/03/29 by Allan.Bentham

	Added Android option to enable builds with hidden symbol visbility by default. (bBuildWithHiddenSymbolVisibility)
	Android links with -gc-sections to remove unused code/data
	Add JNI_METHOD for java accessible native functions, fixed up existing JNI functions to use macro.
	Add support for map file generation with android.
	Add 'bBuildWithHiddenSymbolVisibility' to AndroidPlatform.HasDefaultBuildConfig()
	bBuildWithHiddenSymbolVisibility defaults to false in BaseEngine.ini

	#jira UEMOB-168

Change 3369975 on 2017/03/29 by Nick.Shin

	HTML5 - AWS S3 shareable link for shipping builds corrected

	#jira UE-43379 Amazon S3 Shareable link does not generate correct filepath.

Change 3369998 on 2017/03/29 by Nick.Shin

	HTML5 python build scripts

	PR:
	1cb836d43c

	#jira none

Change 3370214 on 2017/03/29 by Nick.Shin

	HTML5 - default bUseFixedTimeStep to false...

	#jira UE-43380 - Default HTML5 gamespeed is faster than equivalent platforms

Change 3370762 on 2017/03/29 by Chris.Babcock

	Fixes to new keyboard for Android
	- Ensure the local scope ScreenRect passed into OnVirtualKeyboardShown in AndroidJNI is captured by value instead of by reference.
	- Moved ShowVirtualKeyboardInput's bKeyboardShowing early-out checks into the UI thread task. This allows the keyboard to continue showing when changing focus between multiple EditableTextBox widgets.
	#ue4
	#android

Change 3371344 on 2017/03/30 by Jack.Porter

	Fixed issue where Vulkan screenshot R/B channels were reversed on Android
	#jira UE-43479

Change 3372926 on 2017/03/30 by Peter.Sauerbrei

	start the process of sunsetting 32-bit and GLES2 on iOS
	#jira UE-42266

Change 3372970 on 2017/03/30 by Nick.Shin

	HTML5 - 1.37.9 emscripten: wasm & webgl2 support

	- windows toolchain

	#jira UEMOB-263  Switch [to] web assembly
	#jira UEMOB-201  Support ES3 / WebGL2 in HTML5

	#rn

Change 3372989 on 2017/03/30 by Peter.Sauerbrei

	fix for Xcode 8.3 build with 32-bit

Change 3373007 on 2017/03/30 by Peter.Sauerbrei

	fix for crash when online subsystem is disabled on IOS

Change 3373108 on 2017/03/30 by Nick.Shin

	HTML5 - 1.37.9 emscripten: wasm & webgl2 support

	- emscripten toolchain

	WARNING: emscripten/incoming/source/include/libc/bit (the file) might need to be deleted first

	#jira UEMOB-263  Switch [to] web assembly
	#jira UEMOB-201  Support ES3 / WebGL2 in HTML5

	#rn

Change 3373163 on 2017/03/30 by Nick.Shin

	HTML5 - 1.37.9 emscripten: wasm & webgl2 support

	- OSX toolchain

	#jira UEMOB-263  Switch [to] web assembly
	#jira UEMOB-201  Support ES3 / WebGL2 in HTML5

	#rn

Change 3373169 on 2017/03/30 by Nick.Shin

	HTML5 - 1.37.9 emscripten: wasm & webgl2 support

	license file updated

	#jira UEMOB-263  Switch [to] web assembly
	#jira UEMOB-201  Support ES3 / WebGL2 in HTML5

	#rnx

Change 3373287 on 2017/03/30 by Nick.Shin

	HTML5 - 1.36.11 emscripten - remove old SDK

	#jira none

	#rnx

Change 3373289 on 2017/03/30 by Nick.Shin

	HTML5 - 1.37.9 emscripten: wasm & webgl2 support

	- Linux toolchain

	#jira UEMOB-263  Switch [to] web assembly
	#jira UEMOB-201  Support ES3 / WebGL2 in HTML5

	#rn

Change 3373595 on 2017/03/30 by Chris.Babcock

	Reenable GooglePlay for ARM64 now that it doesn't crash
	#jira UE-36198
	#ue4
	#android

Change 3373606 on 2017/03/30 by Chris.Babcock

	Submitting Allan's shelved EXT_shader_framebuffer_fetch fix
	#ue4
	#android

Change 3375456 on 2017/03/31 by Chris.Babcock

	Add missing keycodes for Android keyboard (@ and #)
	#jira WEX-5777
	#ue4
	#android

Change 3376309 on 2017/04/03 by Allan.Bentham

	Fix overflow issues with mobile DoF.

Change 3377041 on 2017/04/03 by Will.Fissler

	Adding Testbed content for PlatformShowcase.

Change 3377582 on 2017/04/03 by Alicia.Cano

	adding back in GET_ACCOUNTS permission as it is required for Reset Achievements

	#jira: UE-43265
	#android
	#rb: Chris.Babcock

Change 3377643 on 2017/04/03 by Peter.Sauerbrei

	fix for memory leak in MallocBinned
	#jira UE-43008

Change 3378033 on 2017/04/04 by Nick.Shin

	HTML5 - 1.37.9 emscripten: wasm & webgl2 support

	- ThirdParty libs compiled with new toolchain with wasm and webgl2 support

	#jira UEMOB-263  Switch [to] web assembly
	#jira UEMOB-201  Support ES3 / WebGL2 in HTML5

	#rn

Change 3378034 on 2017/04/04 by Nick.Shin

	HTML5 - 1.37.9 emscripten: wasm & webgl2 support

	- ThirdParty build scripts

	#jira UEMOB-263  Switch [to] web assembly
	#jira UEMOB-201  Support ES3 / WebGL2 in HTML5

Change 3378035 on 2017/04/04 by Nick.Shin

	HTML5 - Update GameX template to make it work with trunk Emscripten

	PR
	dc2b26f452 (commitcomment-21454978)

	#jira none

	#rn

Change 3378044 on 2017/04/04 by Nick.Shin

	HTML5 harfbuzz - double checking recompiled with NO multithreading

	wasm currently does not support pthreads

	*** THIS IS STILL WIP ***
	checking in to match 3rd party libs compiled configuration

	#jira UE-28588 - Build HarfBuzz for HTML5

	#rnx

Change 3378264 on 2017/04/04 by Allan.Bentham

	Fix crash when using consolas font on android sdk 24
	#jira UE-43464

Change 3379097 on 2017/04/04 by Nick.Shin

	CIS HTML5 build warning fix

	#jria none

	#rnx

Change 3379333 on 2017/04/04 by Chris.Babcock

	Prevent inserting extra permissions into manifest multiple times
	#jira UE-43583
	#ue4
	#android

Change 3380870 on 2017/04/05 by Chris.Babcock

	Fix merge issue

Change 3380898 on 2017/04/05 by Chris.Babcock

	Fixed again

Change 3381443 on 2017/04/05 by Chris.Babcock

	Fix for GearVR non-unity build
	#ue4
	#android

Change 3381941 on 2017/04/05 by Chris.Babcock

	Fix HTTPChunkInstaller texture format checks and missing #define warning
	#jira UE-43706
	#ue4
	#android

Change 3382056 on 2017/04/05 by Chris.Babcock

	Updates to Android AARs needed for Facebook plugin

Change 3382097 on 2017/04/05 by Chris.Babcock

	Disable java console cmd receiver only in shipping builds
	#jira UE-43710
	#ue4
	#android

Change 3382497 on 2017/04/06 by Allan.Bentham

	Fix Fortnite Cooked Server crashes when joining game from lobby.
	#jira UE-43695

Change 3383227 on 2017/04/06 by Will.Fissler

	Reverted case sensitive change, from yesterday, and implemented a pragma instead.

	#jira UE-41313

[CL 3383473 by Jack Porter in Main branch]
2017-04-06 16:13:17 -04:00
Marcus Wassmer
2826204161 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3357411)
#lockdown Nick.Penwarden
#rb none

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

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

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

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

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

	#jira UE-40160

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

	Resave with an actual version to stop cook warning

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

	Just remove warning-causing niagara data for now.

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

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

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

	DR - Upgrade glslang to 1.0.39.1

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

	DR - Update Vulkan distribution to 1.0.39.1

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

	DR - Updated glslang libs

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

	DR - Fixed copy/paste

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

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

	#jira UE-37792

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

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

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

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

	#jira UE-41774, UE-41788

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

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

	#jira UE-41823, UE-41950

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

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

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

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

	#jira UE-41594

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

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

	#jira UE-33098

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

	Moved some private functions to public for a licensee

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

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

	DR - Expose skin cache cvar r.SkinCache.AccumulationBufferSizeInKB

	#jira UE-42014

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

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

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

	DR - Some more renaming

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

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

	#tests Ran showdown demo several times

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

	DR - hlslcc - Fix refract intrinsic

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

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

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

	updating Tm-TrigNodes map

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

	Updating QA-Decals map

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

	Updating QA-Decals map

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

	Updating Decal on Complex Mesh example in QA-Decals

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

	Final updates to QA-Decals

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

	DR - minor reorg/rename

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

	DR - more cleanup

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

	DR - Fix GL bug

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

	DR - Fix misc bugs

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

	Only issue clear TLV dispatch if required.

	#jira UERNDR-193

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

	Added comment for potential future optimization.

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

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

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

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

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

	Removing DDC job from dev-rendering

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

	Removing RDU agent type

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

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

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

	More updates to QA-Decals

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

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

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

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

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

	Fix-up AMD AGS libs.

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

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

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

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

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

	Preparing TM_Shadermodels map for automation

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

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

	#jira UE-42449, UE-42446

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

	Added some extra logs to help track UE-42168

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

	DR - Fix bad clear value

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

	More preparations for QA-Decals automation

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

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

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

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

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

	DR - hlslcc - add missing file to project

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

	Non-editor compile fix

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

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

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

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

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

	[Copy] Capsule shadow BP functions

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

	[Copy] Added OcclusionCombineMode to skylight component

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

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

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

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

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

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

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

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

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

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

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

	[Copy] Initialize GDummyVolumetricFogGlobalDataUniformBuffer outside of parallel rendering

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

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

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

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

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

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

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

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

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

	Fixed RTDF shadows

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

	Initial submission of QA-Decals map to EngineTest

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

	Changed mesh distance field default format back to R16f

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

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

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

	Correctly handle material texture translation error edge case.

	#jira UE-42579, UE-42670

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

	Only compile volumetric fog shaders on supporting platforms

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

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

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

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

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

	#RB Marcus.Wassmer

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

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

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

	DR - Vulkan compute pipeline & refactor

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

	DR - Android compile fixes

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

	DR - Add missing stencil load/store to PSO initializer

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

	DR - Made load/store actions uint8

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

	DR - vk - Rework render pass hash

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

	Updating TM-Distancefields map to include TemplateFloor mesh

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

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

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

	DR - Do not stall when creating shaders on Vulkan

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

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

	#jira UE-42752

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

	Reduce log verbosity causing spamming during  landscape editing.

	#jira UE-42714

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

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

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

	Typo fixes.

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

	DR - Decouple vertex declaration off BSS

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

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

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

	Implement missing size query interface for FRenderTargetResources.

	#jira UE-41672

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

	[Copy] Added VolumetricScatteringIntensity to particle lights

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

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

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

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

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

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

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

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

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

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

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

	[Copy] Missing file from cl 3338451

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

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

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

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

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

	[Copy] Changed default VolumetricFogScatteringDistribution to .2

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

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

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

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

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

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

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

	DR - android compile fix

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

	DR - Fix merge issue

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

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

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

	DR - Allow to automatically apply cached rendertargets to PSO initializer

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

	DR - Remove NullPS on Vulkan to avoid deadlock

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

	DR - Fix for debugging SCW with material SRT

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

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

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

	Hopefully fix static analysis for potential nullptr access.

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

	Duplicate some switch changes to fix crash on launch.

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

	Fixed botched merge

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

	DR - Fix for mismatched primitive type

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

	initial updates to TM-DistanceFields map

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

	DR - Fix UT compile issue

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

	DR - Catch mismatched primitive type on PSOs on D3D11

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

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

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

	Fixed formatting from merge

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

	DR - Fix texture arrays as UAVs on Metal

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

	DR - Fix warning

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

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

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

	Fix clang platforms

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

	Fix linux compile

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

	Fix mismatched rendertargetformat

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

	Enabled GetAndOrCreateGraphicsPipelineState ensures in Development for testing

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

	Fix missing RT PSO apply

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

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

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

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

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

	DR - compile fix

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

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

	#RB none

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

	DR - Fix Confusion

	#RB none

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

	Fixed up Content orginzation for Decals automation tests in EngineTest

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

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

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

	Fix clang errors

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

	DR - Fix ensure message
	#RB none

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

	DR - Fix comparission of undefined values in RendertargetApply Check

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

	Fix LinuxEditor compile

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

	Add missing SSE functions

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

	Fix win32 and linux compiler errors

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

	DR - disable ensure in test builds

	#RB Marcus.Wassmer

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

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

Change 3219796 on 2016/12/02 by Rolando.Caloca

	DR - vk - Increase timeout to 60ms

Change 3219884 on 2016/12/02 by Daniel.Wright

	Assert to help track down rare crash locking capsule indirect shadow vertex buffer

Change 3219885 on 2016/12/02 by Daniel.Wright

	Fixed saving a package that doesn't exist on disk but exists in p4 at a newer revision when the user chooses 'Mark Writable'

Change 3219886 on 2016/12/02 by Daniel.Wright

	Don't create projected shadows when r.ShadowQuality is 0
	* Fixes crash in the forward path trying to render shadows
	* In the deferred path, the shadowmap was still being rendered and only the projection skipped, now all cost will be skipped

Change 3219887 on 2016/12/02 by Daniel.Wright

	Changed ClearRenderTarget2D default alpha to 1, which is necessary for correct compositing

Change 3219893 on 2016/12/02 by Daniel.Wright

	AMD AGS library with approved TPS
	Disabled DFAO on AMD pre-GCN PC video cards to workaround a driver bug which won't be fixed (Radeon 6xxx and below)

Change 3219913 on 2016/12/02 by Daniel.Wright

	Level unload of a lighting scenario propagates the lighting scenario change - fixes crash when precomputed lighting volume data gets unloaded

Change 3220029 on 2016/12/02 by Daniel.Wright

	Async shader compiling now recreates scene proxies which are affected by the material which was compiled.  This fixes crashes which were occuring as proxies cache various material properties, but applying compiled materials would not update these cached properties (bRequiresAdjacencyInformation).
	* A new ensure has been added in FMeshElementCollector::AddMesh and FBatchingSPDI::DrawMesh to catch attempts to render with a material not reported in GetUsedMaterials
	* Fixed UParticleSystemComponent::GetUsedMaterials and UMaterialBillboardComponent::GetUsedMaterials
	* FMaterialUpdateContext should be changed to use the same pattern, but that hasn't been done yet

Change 3220108 on 2016/12/02 by Daniel.Wright

	Fixed shadowmap channel assignment for stationary lights which are not in a lighting scenario level, when a lighting scenario level is present

Change 3220504 on 2016/12/03 by Mark.Satterthwaite

	Metal Desktop Tessellation support from Unicorn.
	- Apple: Metal tessellation support added to MetalShaderFormat, MetalRHI and incl. changes to engine runtime/shaders for Desktop renderer and enabled in ElementalDemo by default (OS X 10.11 will run SM4).
	- Epic: Support for different Metal shader standards on Mac, iOS & tvOS which required moving some RHI functions around as this is a project setting and not a compile-time constant.
	- Epic: Fragment shader UAV support, which is also tied to newer Metal shader standard like Tessellation.
	- Epic: Significant refactor of MetalRHI's internals to clearly separate state-caching from render-pass management and command-encoding.
	- Epic: Internal MetalRHI validation code is now cleanly separated out into custom implementations of the Metal @protocol's and is on by default.
	- Epic: Various fixes to Layered Rendering for Metal.
	- Omits Mobile Tessellation support which needs further revision.

Change 3220881 on 2016/12/04 by Mark.Satterthwaite

	Compiles fixes for iOS & static analysis fixes from Windows.

Change 3221180 on 2016/12/05 by Guillaume.Abadie

	Avoid compiling PreviousFrameSwitch's both Current Frame and Previous Frame inputs every time.

Change 3221217 on 2016/12/05 by Chris.Bunner

	More NVAPI warning fixups.

Change 3221219 on 2016/12/05 by Chris.Bunner

	When comparing overriden properties used to force instance recompilation we need to check against the base material, not assume the immediate parent.
	#jira UE-37792

Change 3221220 on 2016/12/05 by Chris.Bunner

	Exported GetAllStaticSwitchParamNames and GetAllStaticComponentMaskParamNames.
	#jira UE-35132

Change 3221221 on 2016/12/05 by Chris.Bunner

	PR #2785: Fix comment typo in RendererInterface.h (Contributed by dustin-biser)
	#jira UE-35760

Change 3221223 on 2016/12/05 by Chris.Bunner

	Default to include dev-code when compiling material preview stats.
	#jira UE-20321

Change 3221534 on 2016/12/05 by Rolando.Caloca

	DR - Added FDynamicRHI::GetName()

Change 3221833 on 2016/12/05 by Chris.Bunner

	Set correct output extent on PostProcessUpscale (allows users to extend chain correctly).
	#jira UE-36989

Change 3221852 on 2016/12/05 by Chris.Bunner

	32-bit/ch EXR screenshot and frame dump output.
	Fixed row increment bug in 128-bit/px surface format readback.
	#jira UE-37962

Change 3222059 on 2016/12/05 by Rolando.Caloca

	DR - vk - Fix memory type not found

Change 3222104 on 2016/12/05 by Rolando.Caloca

	DR - Lambdaize
	- Added quicker method to check if system textures are initialized

Change 3222290 on 2016/12/05 by Mark.Satterthwaite

	Trivial fixes to reporting Metal shader pipeline errors - need to check if Hull & Domain exist.

Change 3222864 on 2016/12/06 by Rolando.Caloca

	DR - Fix mem leak when exiting

Change 3222873 on 2016/12/06 by Rolando.Caloca

	DR - vk - Minor info to help track down leaks

Change 3222875 on 2016/12/06 by Rolando.Caloca

	DR - Fix mem leak with VisualizeTexture
	#jira UE-39360

Change 3223226 on 2016/12/06 by Chris.Bunner

	Static analysis warning workaround.

Change 3223235 on 2016/12/06 by Ben.Woodhouse

	Integrate from NREAL: Set a custom projection matrix on a SceneCapture2D

Change 3223343 on 2016/12/06 by Chris.Bunner

	Moved HLOD persistent data to viewstate to fix per-view compatability.
	#jira UE-37539

Change 3223349 on 2016/12/06 by Chris.Bunner

	Fixed HLOD with FreezeRendering command.
	#jira UE-29839

Change 3223371 on 2016/12/06 by Michael.Trepka

	Removed obsolete check() in FMetalSurface constructor

Change 3223450 on 2016/12/06 by Chris.Bunner

	Added explicit ScRGB output device selection rather than Nvidia-only hardcoded checks. Allows easier support for Mac and other devices moving forward.

Change 3223638 on 2016/12/06 by Michael.Trepka

	Restored part of the check() in FMetalSurface constructor removed in CL 3223371

Change 3223642 on 2016/12/06 by Mark.Satterthwaite

	Experimental Metal EDR/HDR output support for Mac (iOS/tvOS need custom formats & shaders so they are not supported yet).
	- Only available on macOS Sierra (10.12) for Macs with HDR displays (e.g. Retina iMacs).
	- Enable with -metaledr command-line argument as it is off-by-default.
	- Sets up the CAMetalLayer & the back-buffer for RGBA_FP16 output on Mac using DCI-P3 as the color gamut and ACES 1000 nit ScRGB output encoding.

Change 3223830 on 2016/12/06 by Rolando.Caloca

	DR - vk - Better error when finding an invalid Vulkan driver
	#jira UE-37495

Change 3223869 on 2016/12/06 by Rolando.Caloca

	DR - vk - Reuse fences

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

	Fix alpha through TempAA artifact causing a small darker edge layouts.

Change 3224199 on 2016/12/06 by Mark.Satterthwaite

	Fix a dumb copy-paste error from the HDR changes to Metal.

Change 3224220 on 2016/12/06 by Mark.Satterthwaite

	Fix various errors with Metal UAV & Render-Pass Restart support so that we can use the Pixel Shader culling for DistanceField effects.
	- Unfortunately Metal requires that a texture be bound to start a render-pass, so reuse the dummy depth-stencil surface from the problematic editor preview tile rendering.

Change 3224236 on 2016/12/06 by Mark.Satterthwaite

	IWYU CIS compile fix for iOS.

Change 3224366 on 2016/12/06 by Mark.Satterthwaite

	Simplify some of the changes from CL# 3224220 so that we don't perform unnecessary clears.
	- If the RenderPass is broken to issue compute or blit operations then treat the cached RenderTargetsInfo as invalid, unless the RenderPass is restarted.
	- This guarantees that we don't erroneously ignore calls to SetRenderTargets if the calling code issues a dispatch between two RenderPasses that use the same RenderTargetsInfo.

Change 3224416 on 2016/12/06 by Uriel.Doyon

	New default implementation for UPrimitiveComponent::GetStreamingTextureInfo using a conservative heuristic where the textures are stretched across the bounds.
	Optimized UPrimitiveComponent::GetStreamingTextureInfoWithNULLRemoval by not handling registered components with no proxy (essentially hidden game / collision primitives).

	Added blueprint support for texture streaming built data through FStaticMeshComponentInstanceData.

	Fix for material texture streaming data not being available on some cooked builds.

	Enabled split requests on all texture load requests (first loading everything visible and then loaded everything not visible).
	This is controlled by "r.Streaming.MinMipForSplitRequest" which defines the minimum mip for which to allow splitting.
	Forced residency are now loaded in two steps (visible, then forced), improving reactiveness.

	Updated "stat streaming" to include "UnkownRefMips" which represent texture with no known component referencing them,
	and also "LastRenderTimeMips" which related to timed primitives.
	Changed "Forced Mips" so that it only shows mips that are loaded become of forced residency.

	"Texture Streaming Build" now updates the map check after execution.

	Removed Orphaned texture logic as this has  become irrelevant with the latest retention priority logic.

	Updated "r.streaming.usenewmetrics" so that it shows behavior before and after 4.12 improvements.

Change 3224532 on 2016/12/07 by Uriel.Doyon

	Integrated CL 3223965 :

	Building texture streaming data for materials does not wait for pending shaders to finish compilation anymore.
	Added more options to allow the user to cancel this build also.

Change 3224714 on 2016/12/07 by Ben.Woodhouse

	Cherry pick CL 3223972 from //fortnite/main:

	Disable Geometry shader onchip on XB1. This saves 4ms for a single shadow casting point light @ 512x512 (4.8ms to 1.8ms)

Change 3224715 on 2016/12/07 by Ben.Woodhouse

	New version of d3dx12.h from Microsoft which incorporates my suggested static analysis fixes. This avoids us diverging from the official version

Change 3224975 on 2016/12/07 by Rolando.Caloca

	DR - vk - Dump improvements

Change 3225012 on 2016/12/07 by Rolando.Caloca

	DR - Show warning if trying to use num samples != (1,2,4,8,16)

Change 3225126 on 2016/12/07 by Chris.Bunner

	Added 'force 128-bit rendering pipeline' to high-res screenshot tool.
	#jira UE-39345

Change 3225449 on 2016/12/07 by Chris.Bunner

	Updated engine rendering defaults to better match current best practices.
	#jira UE-38081

Change 3225485 on 2016/12/07 by Chris.Bunner

	Moved QuantizeSceneBufferSize to RenderCore and added call for PostProcess settings. Fixes screenpercentage out-of-bounds reads in some cases.
	#jira UE-19394

Change 3225486 on 2016/12/07 by Chris.Bunner

	Only disable TAA during HighResScreenshots if we don't have a reasonable frame-delay enabled.

Change 3225505 on 2016/12/07 by Daniel.Wright

	Fixed exponential height fog disappearing with no skybox

Change 3225655 on 2016/12/07 by Benjamin.Hyder

	Updating TM-Shadermodels to include Translucent lighting, Two sided, updated cloth animation, and adjusted lighting.

Change 3225668 on 2016/12/07 by Chris.Bunner

	Dirty owning packages when user manually forces regeneration of all reflection captures.
	#jira UE-38759

Change 3226139 on 2016/12/07 by Rolando.Caloca

	DR - Fix recompute tangents disabling skin cache
	- Make some macros into lambdas
	#jira UE-39143

Change 3226212 on 2016/12/07 by Daniel.Wright

	Features which require a full prepass use DDM_AllOpaque instead of DDM_AllOccluders, which can be skipped if the component has bUseAsOccluder=false

Change 3226213 on 2016/12/07 by Daniel.Wright

	Scene Capture 2D can specify a global clip plane, which is useful for portals
	* Requires the global clip plane project setting to be enabled

Change 3226214 on 2016/12/07 by Daniel.Wright

	Improved deferred shadowing with MSAA by upsampling light attenuation intelligently in the base pass
	* If the current fragment's depth doesn't match what was used for deferred shadowing, the neighbor (cross pattern) with the nearest depth's shadowing is used
	* Edge artifacts can still occur where the upsample fails or the shadow factor was computed per-sample due to depth / stencil testing
	* Indirect Occlusion from capsule shadows also uses the nearest depth neighbor UV for no extra cost
	* Base pass on 970 GTX 1.69ms -> 1.85ms (.16ms) in RoboRecall

Change 3226258 on 2016/12/07 by Rolando.Caloca

	DR - Typo fix

Change 3226259 on 2016/12/07 by Rolando.Caloca

	DR - compile fix
	#jira UE-39143

Change 3226932 on 2016/12/08 by Chris.Bunner

	Re-saved Infiltrator maps to update reflection captures.
	#jira UE-38759

Change 3227063 on 2016/12/08 by Mark.Satterthwaite

	For Metal platforms ONLY temporarily disable USE_LIGHT_GRID_REFLECTION_CAPTURE_CULLING to avoid UE-37436 while the Nvidia driver team investigate why this doesn't work for them but does for the others. This won't affect non-Metal platforms and the intent is to revert this prior to 4.16 provided we can work through the problem with Nvidia.
	#jira UE-37436

Change 3227120 on 2016/12/08 by Gil.Gribb

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

Change 3227211 on 2016/12/08 by Arne.Schober

	DR - UE-38585 - Fixing crash where HierInstStaticMesh duplication fails. Also reverting the fix from UE-28189 which is redundant.

Change 3227257 on 2016/12/08 by Marc.Olano

	Extension to PseudoVolumeTexture for more flexible layout
	Change by ryan.brucks

Change 3227286 on 2016/12/08 by Rolando.Caloca

	DR - Fix crash when using custom expressions and using reserved keywords
	#jira UE-39311

Change 3227376 on 2016/12/08 by Mark.Satterthwaite

	Must not include a private header inside the MenuStack public header as that causes compile errors in plugins.

Change 3227415 on 2016/12/08 by Mark.Satterthwaite

	Fix shader compilation due to my disabling of USE_LIGHT_GRID_REFLECTION_CAPTURE_CULLING on Metal - InstancedCompositeTileReflectionCaptureIndices needs to be defined even though Metal doesn't support instanced-stereo rendering.

Change 3227516 on 2016/12/08 by Daniel.Wright

	Implemented UWidgetComponent::GetUsedMaterials

Change 3227521 on 2016/12/08 by Guillaume.Abadie

	Fixes post process volume's indirect lighting color.

	#jira UE-38888

Change 3227567 on 2016/12/08 by Marc.Olano

	New upscale filters: Lanczos-2 (new default), Lanczos-3 and Gaussian Unsharp Mask

Change 3227628 on 2016/12/08 by Daniel.Wright

	Removed redundant ResolveSceneDepthTexture from the merge

Change 3227635 on 2016/12/08 by Daniel.Wright

	Forward renderer supports shadowing from movable lights and light functions
	* Only 4 shadow casting movable or stationary lights can overlap at any point in space, otherwise the movable lights will lose their shadows and an on-screen message will be displayed
	* Light functions only work on shadow casting lights since they need a shadowmap channel to be assigned

Change 3227660 on 2016/12/08 by Rolando.Caloca

	DR - vk - Fix r.MobileMSAA on Vulkan
	- r.MobileMSAA is now read-only (to be fixed on 4.16)
	- Show time for PSO creation hitches
	#jira UE-39184

Change 3227704 on 2016/12/08 by Mark.Satterthwaite

	Fix Mac HDR causing incorrect output color encoding being used, HDR support is now entirely off unless you pass -metaledr which will enable it regardless of whether the current display supports HDR (as we haven't written the detection code yet). Fixed the LUT/UI compositing along the way - Mac Metal wasn't using volume LUT as it should have been, RHISupportsVertexShaderLayer now correctly returns false for non-Mac Metal platforms.

Change 3227705 on 2016/12/08 by Daniel.Wright

	Replaced built-in samplers in the nearest depth translucency upsample because the built-in samplers are no longer bound on PC (cl 2852426)

Change 3227787 on 2016/12/08 by Chris.Bunner

	Added extent clear to motion blur pass to catch misized buffers bringing in errors.
	Added early out to clear call when excluded region matches RT region.
	#jira UE-39437

Change 3228177 on 2016/12/08 by Marc.Olano

	Fix DCC sqrt(int) error

Change 3228285 on 2016/12/08 by Chris.Bunner

	Back out changelist 3225449.
	#jira UE-39528

Change 3228680 on 2016/12/09 by Gil.Gribb

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

Change 3228940 on 2016/12/09 by Mark.Satterthwaite

	Editor fixes for 4.15:
	- PostProcessTonemap can't fail to bind a texture to the ColorLUT or the subsequent rendering will be garbage: the changes for optimising stereo rendering forgot to account for the Editor's use of Views without States for the asset preview thumbnails. Amended the CombineLUT post-processing to allocate a local output texture when there's no ViewState and read from this when this situation arises which makes everything function again.
	- Don't start render-passes without a valid render-target-array in MetalRHI.

Change 3228950 on 2016/12/09 by Mark.Satterthwaite

	Make GPUSkinCache run on Mac Metal - it wasn't working because it was forcibly disabled on all platforms but for Windows D3D 11.
	- Fixed the Skeleton editor tree trying to access a widget before it has been constructed.
	- Enable GPUSkinCache for Metal SM5: doesn't render correctly, even on AMD, so needs Radar's filing and investigation.
	#jira UE-39256

Change 3229013 on 2016/12/09 by Mark.Satterthwaite

	Further tidy up in SSkeletonTreeView as suggested by Nick.A.

Change 3229101 on 2016/12/09 by Chris.Bunner

	Log compile error fix and updated cvar comments.

Change 3229236 on 2016/12/09 by Ben.Woodhouse

	XB1 D3D11 and D3D12: Use the DXGI frame statistics to get accurate GPU time unaffected by bubbles

Change 3229430 on 2016/12/09 by Ben.Woodhouse

	PR #2680: Optimized histogram generation. (Contributed by PjotrSvetachov)

	Profiled on nvidia 980GTX (2x faster), and on XB1 (marginally faster)

Change 3229580 on 2016/12/09 by Marcus.Wassmer

	DepthBoundsTest for AMD.

Change 3229701 on 2016/12/09 by Michael.Trepka

	Changed "OS X" to "macOS" in few places where we display it and updated the code that asks users to update to latest version to check for 10.12.2

Change 3229706 on 2016/12/09 by Chris.Bunner

	Added GameUserSettings controls for HDR display output.
	Removed Metal commandline as this should replace the need for it.

Change 3229774 on 2016/12/09 by Michael.Trepka

	Disabled OpenGL on Mac. -opengl is now ignored, we always use Metal. On old Macs that do not support Metal we show a message saying that the app requires Metal and exit.

Change 3229819 on 2016/12/09 by Chris.Bunner

	Updated engine rendering defaults to better match current best practices.
	#jira UE-38081

Change 3229948 on 2016/12/09 by Rolando.Caloca

	DR - Fix d3d debug error
	#jira UE-39589

Change 3230341 on 2016/12/11 by Mark.Satterthwaite

	Don't fatally assert that the game-thread stalled waiting for the rendering thread in the Editor executable, even when running -game as the rendering thread can take a while to respond if shaders need to be compiled.
	#jira UE-39613

Change 3230860 on 2016/12/12 by Marcus.Wassmer

	Experimental Nvidia AFR support.

Change 3230930 on 2016/12/12 by Mark.Satterthwaite

	Disable RHICmdList state-caching on Mac - Metal already does this internally and depends on receiving all state changes in order to function.

Change 3231252 on 2016/12/12 by Marcus.Wassmer

	Fix NumGPU detection. (SLI only crash)

Change 3231486 on 2016/12/12 by Mark.Satterthwaite

	Fix a stupid mistake in MetalStateCache::CommitResourceTable that would unnecessarily rebind samplers.

Change 3231661 on 2016/12/12 by Mark.Satterthwaite

	Retain the RHI samplers in MetalRHI to guarantee lifetime.

[CL 3231696 by Gil Gribb in Main branch]
2016-12-12 17:47:42 -05:00
Ben Marsh
20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

[CL 3226823 by Ben Marsh in Main branch]
2016-12-08 08:52:44 -05:00
Marcus Wassmer
1eabdaf700 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3219450)
#lockdown Nick.Penwarden
#rb none

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

Change 3148067 on 2016/10/01 by Daniel.Wright

	Support for ReflectionEnvironment and light type show flags with ForwardShading

Change 3149085 on 2016/10/03 by Daniel.Wright

	Support for ReflectionEnvironment show flag in base pass reflections without any shader overhead

Change 3162206 on 2016/10/13 by Chris.Bunner

	Merging Dev-MaterialLayers to Dev-Rendering, CL 3161593:
	Material expressions; Trig, fast-trig, saturate, round, truncate, pre-skinned normal.
	Added CustomEyeTangent to material attributes.
	Resolved some hard-coded attribute typing and other minor fixes.

Change 3186067 on 2016/11/03 by Daniel.Wright

	Updated Stationary primitive tooltip to indicate that it allows the primitive to be changed, but not moved

Change 3186069 on 2016/11/03 by Daniel.Wright

	Using a weighted geometric mean to combine multiple Distance Field Indirect Shadows, greatly reduces over-occlusion when overlap is high

Change 3186084 on 2016/11/03 by Mark.Satterthwaite

	Duplicate 3172511:
	Don't set Metal resource option fields on texture descriptors when running on an OS that doesn't support them.
	#jira UE-37481

Change 3186089 on 2016/11/03 by Mark.Satterthwaite

	Duplicate CL #3169764:
	Fixed automatic conversion of G8_sRGB into RGBA8_sRGB required for Mac Metal, which fixes FORT-27627.
	#jira FORT-27627

Change 3186113 on 2016/11/03 by Mark.Satterthwaite

	Duplicate CL #3183807:
	Change the way we access the Metal viewport's backbuffer, to reduce possible causes of FORT-31649:
	- Added console variable "rhi.Metal.SupportsIntermediateBackBuffer" to control whether to use an extra render-target so we can support screenshots & movie capture, or render directly to the back-buffer to save memory & GPU performance. Still defaults to ON for Mac & OFF for iOS/tvOS.
	- Change the way we handle updates to the back-buffer size to ensure that the different threads access their intended version.
	#jira FORT-31649

Change 3186116 on 2016/11/03 by Mark.Satterthwaite

	Duplicate CL #3183823:
	Record Metal resource & state objects used in a command-buffer when rhi.Metal.RuntimeDebugLevel is set to 3 or higher. The object labels, types & descriptions will be printed on failure - if the object is deleted prior to this then we have a lifetime error and it will crash at this point and can be debugged further using our -metalretainrefs command-line option or Xcode's zombie-objects.

	Used to verify that FORT-31649 is not a simple resource lifetime error and thereby speed up Apple/vendor investigations.
	#jira FORT-31649

Change 3186818 on 2016/11/04 by Chris.Bunner

	PR #2907 Export UMaterialExpressionNoise (contributed by kayosiii).

Change 3186979 on 2016/11/04 by Rolando.Caloca

	DR - Misc minor cleanup

Change 3187169 on 2016/11/04 by Uriel.Doyon

	Incremental insertion of level data between PostLoad and AddToWorld

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

	Compile fixes for iOS.

Change 3187389 on 2016/11/04 by Uriel.Doyon

	Fix for possible stall when loading hidden level

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

	MetalViewport compile fix

Change 3187678 on 2016/11/04 by Uriel.Doyon

	Fix for landscape grass textures not being streamed in correctly.

Change 3187731 on 2016/11/04 by Rolando.Caloca

	DR - Start making type safe some cross compiler enums

Change 3187824 on 2016/11/04 by Rolando.Caloca

	DR - clang compile fix

Change 3187953 on 2016/11/04 by Rolando.Caloca

	DR - vk - Mac compile fix

Change 3188696 on 2016/11/07 by Mark.Satterthwaite

	Another iOS compile fix for new MetalViewport validation code.

Change 3188906 on 2016/11/07 by Rolando.Caloca

	DR - Show permutation of LUTBlender

Change 3189094 on 2016/11/07 by Chris.Bunner

	Fix RemoveAAJitter from projection matrix.
	#jira UE-37701, UE-38003

Change 3189134 on 2016/11/07 by Daniel.Wright

	Fix for CreateRenderTarget2D called in construction script during cooking

Change 3189145 on 2016/11/07 by Chris.Bunner

	Follow-up to CL 3186818, export UMaterialExpressionVectorNoise.

Change 3189239 on 2016/11/07 by Daniel.Wright

	Added show flag for Contact Shadows, disabled in planar reflections

Change 3189252 on 2016/11/07 by Daniel.Wright

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

Change 3189406 on 2016/11/07 by Mark.Satterthwaite

	Really fix the last of the iOS compile errors from changes to the MetalViewport code.

Change 3190854 on 2016/11/08 by Ben.Woodhouse

	XB1: Fix memory corruption with RHICreateVertexBuffer and RHICreateIndexBuffer when using initial data (Procedural Mesh Component crash)
	#jira UE-34264
	#fyi james.golding
	#fyi keith.judge

Change 3190962 on 2016/11/08 by Olaf.Piesche

	Unshelved from pending changelist '3176615' - Gil's fix for race condiiton with particle vertex factory reuse across different passes; potential to fix a number of issues

Change 3191959 on 2016/11/09 by Uriel.Doyon

	Removed some static primitives from the dynamic primitive handler for texture streaming.

Change 3193122 on 2016/11/10 by Chris.Bunner

	Always update non-preview material resources for use in code preview.
	#jira UE-38223

Change 3193190 on 2016/11/10 by Gil.Gribb

	UE4 - Fixed rare bug with shadow groups rendering things that have not been setup to render this frame.
	#jira UE-36379

Change 3193523 on 2016/11/10 by Uriel.Doyon

	Fixed incorrect section bounds used for texture streaming.

Change 3193962 on 2016/11/10 by Uriel.Doyon

	Added defrag of dynamic bounds used for the texture streaming. Allows to remove unused bounds over time.

Change 3193974 on 2016/11/10 by Uriel.Doyon

	New "Required Texture Resolution" view mode. Showing the ratio between the currently streamed texture resolution and the resolution wanted by the GPU.

Change 3194109 on 2016/11/10 by Uriel.Doyon

	Another patch on material bounds used for texture streaming.

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

	Duplicated behavior for inherited velocity scaling scaling to vert/surface spawned particles.

Change 3194734 on 2016/11/11 by Rolando.Caloca

	DR - vk - Simplified some texture casting

Change 3194867 on 2016/11/11 by Rolando.Caloca

	DR - vk - SM5 fixes

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

	Fixed incorrectly updated NVAPI error.

Change 3195425 on 2016/11/11 by Uriel.Doyon

	Fixed possible invalid level reference in the texture streamer

Change 3196512 on 2016/11/14 by Gil.Gribb

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

Change 3196750 on 2016/11/14 by Marcus.Wassmer

	Fix ordering problem with GPU cache transitions

Change 3196815 on 2016/11/14 by Daniel.Wright

	Suppressed 'Instanced stereo rendering is not supported' warning showing up in CIS

Change 3196818 on 2016/11/14 by Daniel.Wright

	Fixed FIndirectLightingCache::UpdateCachePrimitivesInternal churning through a bunch of temporary memory

Change 3196819 on 2016/11/14 by Daniel.Wright

	Volume lighting samples are allowed outside of the importance volume if their influence affects the volume.  Fixes black indirect lighting on movable components in maps with small importance volumes.
	Volume lighting samples placed on surfaces use a radius that covers the layer height spacing, which prevents an uncovered region between layers

Change 3197243 on 2016/11/14 by Uriel.Doyon

	Async Task For Updating static component LastRender time
	#jira UE-24268

Change 3197359 on 2016/11/14 by Daniel.Wright

	Added Inscattering Texture controls to ExponentialHeightFog
	* When InscatteringColorCubemap is specified, directional light inscattering is disabled
	* Lerps betwen 1x1 mip at NonDirectionalInscatteringColorDistance to mip 0 at FullyDirectionalInscatteringColorDistance
	* Added FogCutoffDistance, so artists can prevent fog on skyboxes (requires fog to be setup matching the fog that was rendered into the sky texture so that distant mountains match)
	* Fog shader permutations based on what feature is enabled

Change 3198419 on 2016/11/15 by Chris.Bunner

	PS4 HDR: Runtime toggle (backbuffer recreation on resize matching), UI composition. Matches PC behavior and controls.
	HDR: Generalized buffer formats, cvar consistency pass, LUT for UI composition,  refactoring common functions.
	Exposed RHICreateTargetableShaderResource3D.
	Moved some (translucent) volume rendering helpers to allow access in Slate.

Change 3198822 on 2016/11/15 by Daniel.Wright

	Mac compile fix

Change 3199509 on 2016/11/15 by Uriel.Doyon

	Added support for viewmode param asset name (and note just param value).
	Used to investigate texture streamer behavior.

Change 3199578 on 2016/11/15 by Rolando.Caloca

	DR - Add some shader resource tables to SCW when running with -directcompile

Change 3199698 on 2016/11/15 by Rolando.Caloca

	DR - vk - Refactor shader & descriptor bindings

Change 3199712 on 2016/11/15 by Rolando.Caloca

	DR - vk - r.Vulkan.StripGlsl to always strip glsl at runtime to save memory per shader

Change 3199717 on 2016/11/15 by Rolando.Caloca

	DR - vk - Show hitching PSO info again

Change 3199750 on 2016/11/15 by Rolando.Caloca

	DR - SCW clang compile fixes

Change 3200353 on 2016/11/16 by Rolando.Caloca

	DR - vk - Mac fix

Change 3200358 on 2016/11/16 by Chris.Bunner

	Only allow UI composition on platforms we currently use it.

Change 3200823 on 2016/11/16 by Chris.Bunner

	Remove expression key attribute ID when not translating an attribute output to allow intended expression sharing.
	#jira UE-38699

Change 3200947 on 2016/11/16 by Mark.Satterthwaite

	Fix UE-38695 by not trying to resize the viewport on the wrong thread.
	#jira UE-38695

Change 3201069 on 2016/11/16 by Daniel.Wright

	Fog inscattering texture limited to SM4 and above, fixes ES2 compile errors

Change 3201346 on 2016/11/16 by Brian.Karis

	Temporal AA fix for correct edge gradients.

	Filtering now combined with importance sampling.
	Enabled Catmull-Rom resolve filter. Results are now slightly sharper.
	Fixed antighosting. Will yet require a dilation to be perfect.
	Optimized bicubic filtering to 5 taps instead of 9.
	Cleaned out unused code.

Change 3201369 on 2016/11/16 by Brian.Karis

	Bicubic texture sample

Change 3201522 on 2016/11/16 by Rolando.Caloca

	DR - vk - Fix static analysis issues

Change 3201878 on 2016/11/17 by Chris.Bunner

	Temporarily disable Nvapi HDR error logging.
	#jira UE-38529

Change 3202108 on 2016/11/17 by Simon.Tovey

	Assets with easy repro for flickering particles bug

Change 3202181 on 2016/11/17 by Rolando.Caloca

	DR - vk - CIS android fix

Change 3202325 on 2016/11/17 by Ben.Woodhouse

	Integrate 4.14.1 fix from 14 //UE4/Release-4.14 (@3201850)
	 Fix CreateVertexbuffer and CreateIndexBuffer memory corruption (Procedural Mesh Component crash)
	 #jira UE-34264

Change 3204394 on 2016/11/18 by Guillaume.Abadie

	PR #2808: AlphaComposite Fog Opacity fix (Contributed by moritz-wundke)

	#br Ben.Woodhouse

Change 3204428 on 2016/11/18 by Guillaume.Abadie

	Fixes a couple of issues in decals:

	* Crash in FDecalDrawingPolicyFactory::DrawMesh()
	* ActorPostion material expression
	* PixelNormalWS material expression
	* Missing renaming from DEFERRED_DECAL to DECAL_PRIMITIVE

	#jira UE-38327, UE-38158, UE-37818, UE-37350

Change 3204429 on 2016/11/18 by Uriel.Doyon

	Darker default undefined accuracy.
	Reenabled the texture streaming build in the build all.

Change 3204458 on 2016/11/18 by Chris.Bunner

	Shader truncation warnings fix.

Change 3204459 on 2016/11/18 by Chris.Bunner

	Engine 'Passthrough' material fuction fix. V4 is now actually a V4.

Change 3204460 on 2016/11/18 by Chris.Bunner

	Correctly handle some known Nvapi warnings.
	#jira UE-38529

Change 3204653 on 2016/11/18 by Marc.Olano

	Helper functions for tiled textures

	Checking in for Ryan Brucks

Change 3204863 on 2016/11/18 by Arne.Schober

	DR - Replaced ENQUEUE_UNIQUE_RENDER_COMMAND with a Debuggable template Implementation

Change 3204939 on 2016/11/18 by Arne.Schober

	DR - Make clang happy

Change 3204968 on 2016/11/18 by Arne.Schober

	DR - UE-38494 - Fixed SpeedTree Wind crash, when force deleting the Asset.

Change 3206293 on 2016/11/21 by Uriel.Doyon

	New member bHasStreamingUpdatePending in UTexture2D to delay update of global distance fields.
	Set to true when the streamer can possibly load a mip in the near future.
	#jira UE-37787

Change 3206551 on 2016/11/21 by Chris.Bunner

	Added material update context when forcing all shaders to recompile.
	#jira UE-38481

Change 3206644 on 2016/11/21 by Benjamin.Hyder

	Updating Planar Reflection example in TM-Shadermodels.

Change 3206899 on 2016/11/21 by Rolando.Caloca

	DR - vk - SM5 fixes

Change 3206900 on 2016/11/21 by Rolando.Caloca

	DR - Added missing strings for shader formats

Change 3206983 on 2016/11/21 by Rolando.Caloca

	DR - vk - Support for SV_Coverage

Change 3207237 on 2016/11/22 by Simon.Tovey

	Exporting particle module base and a couple of child classes as it's commonly requested.

	#test compiles

Change 3207241 on 2016/11/22 by Gil.Gribb

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

Change 3207520 on 2016/11/22 by Ben.Woodhouse

	Cherry picked from //Fortnite/Main@3206301
	Fixed GPU hang in Zone Map view. Was an issue with RenderThread using the device context without appropriate RHIThread flushes.
	#jira FORT-31616
	#code_review keith.judge

Change 3207541 on 2016/11/22 by Ben.Woodhouse

	Cherry picked from //fortnite/Main@3207422
	* Fix UpdateTexture3D to create a staging texture of the region to update rather than the whole texture. This prevents distance fields crashing during update (allocating 18GB per frame in some cases)
	* Put UpdateTexture2D DMA support onto a cvar, disabled by default (corruption issues reported by licensees, plus not sure it's actually faster - could be slower due to reduced bandwidth; issues reported by licensees)
	* Fix UpdateTexture2D to only create a staging texture of the region to update, saving memory
	#jira UE-38609

Change 3207654 on 2016/11/22 by Chris.Bunner

	Don't flag 16-bit PNG/JPG textures as sRGB on import.
	#jira UE-30279

Change 3208434 on 2016/11/22 by Rolando.Caloca

	DR - vk - UAV transitions

Change 3208490 on 2016/11/22 by Chris.Bunner

	Break material code sharing when we detect an unresolvable loop.
	By default change IsResultMA loop detection to stop on functions as we can determine type definitively.
	Unified IsResultMA detection across switch nodes.

Change 3208860 on 2016/11/23 by Rolando.Caloca

	DR - vk - Fix some format issues

Change 3209265 on 2016/11/23 by Arne.Schober

	DR - originally unshelved from 3153924 - Made Depth and Velocity Rendering Passes to use PSO only RHI interface,
	We are now passing down two structs that collect all the necessary information for the drawing policies to construct a PSO object.
	One during construction of the Policy, which contains information abouyt the CullMode, FillMode and PrimType.
	And another during rendering that passes infomation like BlendState and DepthStencilState down to the low levelrenderer into SetSharedState.
	Performance of the static drawlist ist slightly slower (less than 0.1ms on Consoles) due to some addtional branches and copies. The branches in the FDrawingPolicyRenderState will go away as soon as everything is converted to use the PSO interface.
	Performace of the GPU is slightly better due to less context rolls (mainly CullMode sorts in differently now)

Change 3209305 on 2016/11/23 by Guillaume.Abadie

	Fix contact shadow's assemption on objects thickness

Change 3209334 on 2016/11/23 by Brian.Karis

	Fixed TAA handling of alpha. Switched the meaning of AA_ALPHA to make sense.

Change 3209903 on 2016/11/24 by Guillaume.Abadie

	Cherry picks alpha through post processing changelists 3201959, 3204143 and 3209883 from //UE4/Private-Partner-NREAL

Change 3209973 on 2016/11/24 by Ben.Woodhouse

	Fix D3D11 and 12 static analysis warnings reported by Rob Troughton of Coconut Lizard (http://coconutlizard.co.uk/blog/ue4/pvs-studio-part5/)

Change 3210023 on 2016/11/24 by Uriel.Doyon

	Fixed an issue with DropDetail when FixedFrameRate was set to a value smaller than MinDesiredFrameRate.
	#jira UE-37210

Change 3210026 on 2016/11/24 by Ben.Woodhouse

	Disable renderthread hang detection if a debugger is present, so we can debug the renderthread without crashing

Change 3210049 on 2016/11/24 by Ben.Woodhouse

	Fix mac build

Change 3210071 on 2016/11/24 by Uriel.Doyon

	Fixed an issue with masked materials and shader complexity viewmode when DBuffer Decals are enabled.
	#jira UE-37542

Change 3210374 on 2016/11/25 by Ben.Woodhouse

	* Fix issues with fast cleared dbuffer targets not being resolved when no decals are in the scene. This caused graphical corruption on XB1 and ensure failures on PS4 (with RHIThread disabled)

	* Move Decal rendertarget manager function implementations out of the header.
	#jira UE-38879

Change 3210390 on 2016/11/25 by Uriel.Doyon

	Fixed cubemap resourcesize not taking into account mipgen settings
	#jira UE-37045

Change 3210407 on 2016/11/25 by Uriel.Doyon

	"resavepackages" commandlet now supports -buildtexturestreaming that rebuilds the map texture streaming data.
	That can be used in combination with -buildlighting.

Change 3210563 on 2016/11/27 by Rolando.Caloca

	DR - vk - Integrate cached memory fixes and PF_D24 format fix
	#jira UE-39025
	PR #2974

Change 3210564 on 2016/11/27 by Rolando.Caloca

	DR - Fix for GL linker
	PR #2975
	#jira UE-39029

Change 3210592 on 2016/11/27 by Rolando.Caloca

	DR - vk - SM5 fixes

Change 3210597 on 2016/11/27 by Rolando.Caloca

	DR - vk - Prep for staging UB copies to GPU memory

Change 3210600 on 2016/11/27 by Rolando.Caloca

	DR - vk - Extract generic range code

Change 3210613 on 2016/11/27 by Rolando.Caloca

	DR - vk - Added r.Vulkan.SubmitOnDispatch

Change 3211054 on 2016/11/28 by Rolando.Caloca

	DR - vk - Missing reference

Change 3211330 on 2016/11/28 by Chris.Bunner

	Shader compile error for max texture coordinate count on skinned meshes.

Change 3211384 on 2016/11/28 by Arne.Schober

	DR - Enforce move on EnqueueRenderCommand Lambda

Change 3211431 on 2016/11/28 by Gil.Gribb

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

Change 3211738 on 2016/11/28 by Gil.Gribb

	IWYU fixes after merge

Change 3212231 on 2016/11/28 by Richard.Wallis

	Fix build errors

Change 3212253 on 2016/11/28 by Richard.Wallis

	Remove MacGraphicsSwitching plugin.

	#jira UE-37640

Change 3212310 on 2016/11/28 by Rolando.Caloca

	DR - vk - Update glslang to 1.0.33.0

Change 3212446 on 2016/11/28 by Guillaume.Abadie

	Implements PreviousFrameSwitch material expression

Change 3212594 on 2016/11/28 by Arne.Schober

	DR - Fix missing include

Change 3212681 on 2016/11/29 by Rolando.Caloca

	DR - vk - Auto flush for compute shader

Change 3213000 on 2016/11/29 by Gil.Gribb

	temp fix for PF_MAX

Change 3213161 on 2016/11/29 by Ben.Woodhouse

	Integrate latest D3D12 changes from //depot/Partners/Microsoft/UE4-DX12/...@3211714

	Using:
	 - p4 integrate //depot/Partners/Microsoft/UE4-DX12/Engine/Source/Runtime/D3D12RHI/...@3211714 //UE4/Dev-Rendering/Engine/Source/Runtime/D3D12RHI/...
	 - p4 integrate //depot/Partners/Microsoft/UE4-DX12/Engine/Source/ThirdParty/Windows/DirectX/...@3211714 //UE4/Dev-Rendering/Engine/Source/ThirdParty/Windows/DirectX/...
	 - p4 integrate //depot/Partners/Microsoft/UE4-DX12/Engine/Source/Programs/UnrealBuildTool/...@3211714 //UE4/Dev-Rendering/Engine/Source/Programs/UnrealBuildTool/...

	Changes from UE4-DX12:

	*** CL 3183818 ***
	Update D3D12 RHI to 4.14:
	 - Merged changes from Epic up until 10/20/16
	 - Fixed an issue where command allocators where resetting too early. I changed to aggressive command list batching by default now that more SubmitCommandListHint calls exist in the upper engine, we don't need to worry about starving the GPU. Fewer ExecuteCommandLists calls means better performance and fewer Signals() so this change provides a GPU perf win.

	I had to fix an issue with aggressive batching where we would sometimes hold on to a command list long enough (in the pending list) but hadn't executed it yet. The command allocator was being put back in the queue of allocators during ReleaseCommandAllocator() without a syncpoint set and was thus being reset too early. I added a simple counter to the command allocator so it could track how many command lists were using it. It doesn't need to be thread safe since only one thread uses a command allocator at a time.

	I also added some stats around the # command lists and # command allocators since it would be possible to leak command allocators now if it's pending command list count isn't decremented correctly. In that case we'd keep creating new command allocators and eventually run out of memory.

	-Remove clear during allocate in the FD3D12FastConstantAllocator and FD3D12FastAllocator. The supplied resource locations are assumed to be new and thus don't need to be cleared.

	-Cleanup D3D12RHI stats. There were some unused stats as well as some missing ones.

	-Mark shader resource table uniform buffers as dirty only when the shader changes. Cleanup SetComputeShader calls and Dispatch calls to not set/unset the CS for each Dispatch.

	-Remove unused Check SRV resolved code that epic added to the D3D11 RHI and was brought over. We dont need it and we won't use this.

	-Remove "always on" cycle counters for high frequency RHI methods like RHISetShaderTexture. These should use the engine's stat macros as they are removed on TEST + SHIPPING builds. On Xbox a significant amount of CPU time is spent in things like QueryPerformanceCounter even when STATS aren't enabled. Currently 1% of an entire capture on XBOX is spent inside this call.

	I improved and cleaned up high freqency call stacks like:
	 - RHISetShaderTexture
	 - RHISetShaderResourceViewParameter
	 - RHISetShaderParameter
	 - RHISetUAVParameter

	In general I moved to use templated functions, removed unused parameters, unnecessary copies, etc.

	-Change D3D12 PIX profiling enable/disable to match Xbox and handle logic in the UEBuildWindows.cs for UBT. Also add a static assert to inform the developer when PIX profiling is requested but the engine is compiling out draw events.

	-Resources should be associated with the rendering thread's frame that it's currently recording command lists for and they shouldnt be cleaned up until those command lists have been translated to D3D12 command lists on the RHI thread AND completed executing on the GPU. This was confirmed to resolve an issue where CBV resources were being released too early.

	This work involved a couple changes:
	1) Move the "frame" fence to be incremented on the rendering thread (during RHIAdvanceFrameForGetViewportBackBuffer()) so that resources that are deleted from the rendering thread are assosicated with the correct frame count
	2) Queue up a command from the rendering thread to signal the "frame" fence. It needs to be queued to ensure that it's signaled at the correct time on the RHI thread (after that frame's command lists have been executed).

	-Disable GRHIRequiresEarlyBackBufferRenderTarget. Metal/Vulkan/Xbox11.x already do this. This is used by the Slate renderer during BeginRenderFrame and avoids a SetRenderTargets call.

	-Enable GRHISupportsMSAADepthSampleAccess (used in the Editor). This was enabled for D3D11 on SM5, but not for D3D12.

	-Delay load D3D12.dll and add root signature 1.1 support.

	-Add explicit flush calls to improve resource barrier batching instead of implict flushes inside FConditionalScopeResourceBarrier and FScopeResourceBarrier. Also update those classes with const members.

	*** CL 3183824 ***
	Fix the D3D12 RHI after integrating UE 4.14 updates:
	- Fixed a bug where we would try to get the PSO of a nullptr in SetPipelineState if we needed to reset the current PSO on the cmd list.
	- Fixed a spelling error
	- Removed the need for bForceState, we use dirty bits now

	*** CL 3183830 ***
	- GetDebugFlags RHI extension, needed by XB1 movie player.
	- Only query memory info if stats are enabled
	- Add support for the engine's new RHISubmitCommandsAndFlushGPU function
	- Update CommitPendingPipelineState to be Graphics/Compute specific and avoid the need for a IsCompute parameter.

	*** CL 3183837 ***
	Made PipelineState caches contain pointers to FD3D12PipelineState objects to avoid issues with using pointers to after Find/Add to the maps. TMap indicates that the pointer to the value associated with a key "is only valid until the next change to any key in the map." The lifetime of the PSO pointers is managed by the low level caches (graphics and compute). Added stat for the number of Pipeline State Objects.

	*** CL 3183931 ***
	Update Windows D3D12 headers and libs to RS1 release bits (10.0.14393.0)

	*** CL 3183978 ***
	Update UBT Windows build settings:
	- Change D3D12 PIX profiling enable/disable to match Xbox and handle logic in the UEBuildWindows.cs for UBT. Also add a static assert to inform the developer when PIX profiling is requested but the engine is compiling out draw events.

	-Delay load D3D12.dll and add root signature 1.1 support.

	*** CL 3184132 ***
	Fix Xbox PSO cache code where it could leak PSOs. Related to change 3183837.

	*** Changelist 3211714 ***
	Update D3D12 RHI with fixes:
	 - Check if we can reserve slots in GatherUniqueSamplerTables
	 - DirtyState more often in StateCache
	 - Remove InternalSetSamplerState. The alternate function isn't used.
	 - Allow MRTClear for arrays with holes in them
	 - Fix uninitialized descriptors. This was causing a GPU hang on Xbox. We need to set dirty bits for resources bound to slots outside of the current descriptor table's range
	 - Cleanup SetDescriptorHeap code. Move setting descriptor heap logic to the descriptor cache since it also owns things like the sampler maps. Added members to the descriptor cache to track the last heaps that were set on the command list to avoid dirtying bit unnecessarily.
	 - Resource transitions: go through Common between queues (3D <--> Compute)
	 - Fix initial state for placed resources.
	 - Merging epic

Change 3213250 on 2016/11/29 by Chris.Bunner

	GBufferHints tooltip fix.
	#jira UE-39103

Change 3213345 on 2016/11/29 by Gil.Gribb

	more IWYU fallout

Change 3213676 on 2016/11/29 by Rolando.Caloca

	DR - Fix incorrect texture getting cleared

Change 3213728 on 2016/11/29 by Rolando.Caloca

	DR - Lambda-ize

Change 3214461 on 2016/11/29 by Ben.Woodhouse

	Rollout August QFE4 XDK (required for latest DX12 changes on XB1)

Change 3215317 on 2016/11/30 by Daniel.Wright

	PS4 compile fix

Change 3216343 on 2016/11/30 by Arne.Schober

	DR - UE-39155 - after talking to Brian it occurred to us that flipping the world space normal is non sensical. And indeed the Grass was using world space normals.

Change 3216844 on 2016/12/01 by Ben.Woodhouse

	Fix for static analysis warnings after discussion with Microsoft

Change 3216916 on 2016/12/01 by Gil.Gribb

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

Change 3217385 on 2016/12/01 by Arne.Schober

	DR - UE-39218, UE-39221, UE-39224  and potentially UE-39214 - The Stencil bits for Light channels and decal application were not set in the dynamic basepass

Change 3217464 on 2016/12/01 by Ben.Woodhouse

	Fix for reflection capture resize assert. The assert is only valid in cooked builds, so disable it in editor
	#jira UE-39225

Change 3217534 on 2016/12/01 by Arne.Schober

	DR - Fix Merge conflict

Change 3217581 on 2016/12/01 by Rolando.Caloca

	DR - Fix assert on debug

Change 3217741 on 2016/12/01 by Benjamin.Hyder

	Duplicate audio fix.

Change 3217890 on 2016/12/01 by Rolando.Caloca

	DR - Fix widget not rendering properly when hidden
	#jira UE-39221

Change 3218129 on 2016/12/01 by Arne.Schober

	DR - UE-39214 - Lod dither value as accidently cached accross the static draw list.

Change 3218759 on 2016/12/02 by Guillaume.Abadie

	Fixes editor compositing bug caused by alpha through post processing change 3209903

	#jira UE-39221

[CL 3219854 by Marcus Wassmer in Main branch]
2016-12-02 16:43:04 -05:00
Ben Marsh
4ba423868f Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#lockdown Nick.Penwarden
#rb none

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

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

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

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

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

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

[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
Marcus Wassmer
f52bdcc738 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3185985)
#lockdown Nick.Penwarden
#rb none

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

Change 3170391 on 2016/10/21 by Ben.Woodhouse

	Remove the wait on end of frame ensure, because we can't rely on all the the underlying codepaths to never miss a call to flush RHI resources. The consequences of missing a flush on a given frame are not serious now, since we enforce the synchronisation with a fence, preventing the rendering thread from getting too far ahead. We will simply accumulate resources for an additional frame when this happens.

	#jira UE-37437
	#fyi rolando.caloca, marcus.wassmer

Change 3170659 on 2016/10/21 by Rolando.Caloca

	DR - vk - Prep work for state key changes

Change 3170676 on 2016/10/21 by Rolando.Caloca

	DR - vk - Reworked blend state keys
	- Added depth/stencil to pipeline key

Change 3170848 on 2016/10/21 by Daniel.Wright

	Level viewport 'show stats' option is now enabled by default, which avoids confusion with artists thinking lighting is built, when really the message is hidden.

Change 3170849 on 2016/10/21 by Daniel.Wright

	Split FProjectedShadowInfo::RenderProjection into smaller functions which make the algorithm structure clear

Change 3170995 on 2016/10/21 by Rolando.Caloca

	DR - vk - Show object on vulkan validation msgs

Change 3171085 on 2016/10/21 by Rolando.Caloca

	DR - vk - Fix pipelines being used with incompatible renderpasses

Change 3171159 on 2016/10/21 by Rolando.Caloca

	DR - vk - Fix layout when reading textures on CPU

Change 3171167 on 2016/10/21 by Rolando.Caloca

	DR - vk - compile fix

Change 3172462 on 2016/10/24 by Daniel.Wright

	Added a warning about shader compile times to the material tooltip

Change 3172463 on 2016/10/24 by Daniel.Wright

	Reduced MinUnoccludedFraction to avoid artitfacts when a stationary light touches only a tiny part of a mesh

Change 3172716 on 2016/10/24 by Brian.Karis

	Fix for crash UE-37369 when reimporting over a generated LOD.

Change 3172967 on 2016/10/24 by Rolando.Caloca

	DR - vk - Fix writing buffers while GPU was using them

Change 3174187 on 2016/10/25 by Olaf.Piesche

	UE-37020

Change 3174718 on 2016/10/26 by Rolando.Caloca

	DR - vk - Remove old timestamp queries, increase occlusion queries per pool to 4k

Change 3175960 on 2016/10/26 by Rolando.Caloca

	DR - Added support for hlslcc header to have custom parsing

Change 3176611 on 2016/10/27 by David.Hill

	DrawWireCone  confusion:

	In response to a UDN, I'm updating confusing parameter names and comments for
	DrawWireCone() and DrawWireSphereCappedCone()

Change 3177111 on 2016/10/27 by Rolando.Caloca

	DR - vk - Fix timestamps for frame

Change 3177192 on 2016/10/27 by Arne.Schober

	DR - DitherLOD refactor - moved computation of the DepthStencil state out of SetMeshRenderState into GetDitheredLODTransitionState this is a prerequisite of further PSO work where we want to move up State setting in a similar war and reuse FMeshDrawingRenderState

Change 3177278 on 2016/10/27 by Olaf.Piesche

	UE-37484

Change 3177297 on 2016/10/27 by Rolando.Caloca

	DR - vk - Enable GRHISupportsBaseVertexIndex

Change 3177607 on 2016/10/27 by Rolando.Caloca

	DR - vk - SM4 UB prep

Change 3178052 on 2016/10/28 by Arne.Schober

	DR - fix WebGL - the WebGL compiler is very picky on double underscores and does want the presission to be defined before any function definition.

Change 3178156 on 2016/10/28 by Rolando.Caloca

	DR - vk - Added query timer
	- Fixed inline issues

Change 3178158 on 2016/10/28 by Rolando.Caloca

	DR - vk - Fixes for out of stencil bits

Change 3178462 on 2016/10/28 by Rolando.Caloca

	DR - vk - Fixes for Elemental

Change 3179131 on 2016/10/28 by Rolando.Caloca

	DR - vk - Fix for r.Vulkan.UseRealUBs

Change 3179139 on 2016/10/28 by Rolando.Caloca

	DR - vk - Move UB ring buffer to context

Change 3179145 on 2016/10/28 by Rolando.Caloca

	DR - vk - Fix buffer barriers

Change 3179888 on 2016/10/31 by Rolando.Caloca

	DR - vk - Align buffers to 16 bytes as we sometimes write to them with SIMD

Change 3179923 on 2016/10/31 by Rolando.Caloca

	DR - vk - Wait for swapchain counter

Change 3180430 on 2016/10/31 by Rolando.Caloca

	DR - vk - Properly wait for occlusion queries/cmd buffer
	- Actual log error if trying to use occlusion queries out of order

Change 3180746 on 2016/10/31 by Rolando.Caloca

	DR - vk - Undo some waiting as it was on the wrong thread

Change 3182115 on 2016/11/01 by Rolando.Caloca

	DR - hlslcc Linux path fix

Change 3182118 on 2016/11/01 by Daniel.Wright

	Fixed global distance field seam artifacts from landscapes with no subsections

Change 3182368 on 2016/11/01 by Daniel.Wright

	Dynamic Indirect Shadows for static meshes using distance fields
	* These Distance Field indirect shadows use the same tile culled and downsampled framework that capsule shadows use, with similar GPU cost
	* Individual StaticMesh assets can enable bGenerateMeshDistanceField to compute a distance field, without the memory cost of enabling for the whole project
	* New StaticMeshComponent properties bCastDynamicIndirectShadow and DynamicIndirectShadowMinVisibility
	* New WorldSettings property DynamicIndirectShadowsSelfShadowingIntensity which replaces the cvar
	* The GBuffer now stores HasDynamicIndirectShadowCasterRepresentation instead of HasHeightfieldRepresentation
	* DFAO from landscape is now done through the global distance field entirely.  Landscape contribution to the global distance field is deferred to attempt to workaround texture streaming issues.

Change 3182408 on 2016/11/01 by Rolando.Caloca

	DR - vk - Reworked occlusion queries, fixes flickering on AMD

Change 3182585 on 2016/11/01 by Daniel.Wright

	PS4 compile fix

Change 3183151 on 2016/11/02 by Rolando.Caloca

	DR - vk - Fix issue when processing super quick cmd buffers

Change 3183160 on 2016/11/02 by Rolando.Caloca

	Dr - vk - Call reset queries outside render pass

Change 3183182 on 2016/11/02 by Rolando.Caloca

	DR - Switch clear

Change 3183194 on 2016/11/02 by Rolando.Caloca

	DR - Try to catch crash ahead of time

Change 3183268 on 2016/11/02 by Rolando.Caloca

	DR - vk - Rename RenderPassState to TransitionState

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

	Renamed 'Dynamic Indirect Shadow' to 'Distance Field Indirect Shadow'

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

	Added ShadowResolutionScale to lightcomponent

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

	Improved bSimulatePhysics comment, with info on why it might be greyed out

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

	Precomputed shadowmaps no longer enable Force2To1Aspect, which is only needed for lightmaps.  Improves shadowmap utilization.

Change 3183915 on 2016/11/02 by Rolando.Caloca

	DR - vk - Remove redundant renderpasses

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

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

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

	Better draw event for IndirectCapsuleShadows in stereo

Change 3184096 on 2016/11/02 by Chris.Bunner

	HDR for D3D11 - NVAPI toggle and encoding, UI compositing.
	Removed some outdated tonemamping cvars and modes.

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

	Static analysis workaround

Change 3184455 on 2016/11/02 by Mark.Satterthwaite

	Fix missing log10 from FCompositePS on hlslcc shader platforms so that QA can continue their integration.
	#jira UE-38164

Change 3184953 on 2016/11/03 by Chris.Bunner

	Fixing CIS warnings.

[CL 3186011 by Marcus Wassmer in Main branch]
2016-11-03 16:55:27 -04:00
Marcus Wassmer
fb641b18e9 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3169859)
#lockdown Nick.Penwarden
#rb none

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

Change 3134663 on 2016/09/21 by Chris.Bunner

	Merging Dev-MaterialLayers to Dev-Rendering, CL 3134208. Initial material attribute extensibility changes.
	#jira UE-34347

Change 3142292 on 2016/09/27 by Rolando.Caloca

	DR - hlslcc - Fix for warning X3206: implicit truncation of vector type causing error
	#jira UE-31438

Change 3143557 on 2016/09/28 by Rolando.Caloca

	DR - Back out changelist 3142292

Change 3145354 on 2016/09/29 by Benjamin.Hyder

	Updating Tm-ContactShadows

Change 3154832 on 2016/10/07 by Rolando.Caloca

	DR - vk - Fix crash on framebuffers with missing textures

Change 3154838 on 2016/10/07 by Rolando.Caloca

	DR - vk - Enable clip distance

Change 3154840 on 2016/10/07 by Rolando.Caloca

	DR - Remove branch per codereview

Change 3155118 on 2016/10/07 by Rolando.Caloca

	DR - vk - Compute pipeline fixes

Change 3155129 on 2016/10/07 by Rolando.Caloca

	DR - Added draw events for reflection captures

Change 3155167 on 2016/10/07 by Rolando.Caloca

	DR - Use shader clear for platforms that can't use viewport or scissor

Change 3155168 on 2016/10/07 by Rolando.Caloca

	DR - vk - Added submit gpu
	- Some fixes for Geometry and Compute

Change 3155595 on 2016/10/07 by Rolando.Caloca

	DR - vk - Use new render pass system

Change 3155720 on 2016/10/07 by Rolando.Caloca

	DR - vk - static analysis fix

Change 3155732 on 2016/10/07 by Rolando.Caloca

	DR - Fix clears for platforms that can't use viewports, excluderects or scissor on clear

Change 3156787 on 2016/10/10 by Rolando.Caloca

	DR - Fix mem leaks

Change 3156805 on 2016/10/10 by Rolando.Caloca

	DR - Improve check msg per licensee

Change 3156815 on 2016/10/10 by Rolando.Caloca

	DR - Fix infinite recursion

Change 3157041 on 2016/10/10 by Rolando.Caloca

	DR - vk - Fix key access from multiple threads

Change 3158253 on 2016/10/11 by Rolando.Caloca

	DR - Fix comment
	#jira UE-37128
	PR #2852

Change 3158606 on 2016/10/11 by Rolando.Caloca

	DR - vk - Accessors

Change 3160418 on 2016/10/12 by Daniel.Wright

	Lightmap textures are now outered to UMapBuildDataRegistry so that the UMapBuildDataRegistry can be moved in the content browser

Change 3160644 on 2016/10/12 by Arne.Schober

	DR - [UE-32613] - OpenGL used to have custom code in the compiler to modify the source so that the same data and matricies can be used as DirectX, unfortunately that causes precission problem. Fortunately there is an extension available (glClipControl) which enables DirectX behaviour in OpenGL and it is widely supported. We only tested Linux and Windows and therfore only default enable on those platforms.

Change 3161219 on 2016/10/13 by Luke.Thatcher

	[RENDERING] [!] Fix incorrect shader used in GPU Benchmark causing crash in OpenGL.

Change 3161838 on 2016/10/13 by Daniel.Wright

	Fixed level getting added to the dirty list twice when legacy lightmaps are present

Change 3161884 on 2016/10/13 by Arne.Schober

	DR - Fix Mac and DCC build

Change 3162206 on 2016/10/13 by Chris.Bunner

	Merging Dev-MaterialLayers to Dev-Rendering, CL 3161593:
	Material expressions; Trig, fast-trig, saturate, round, truncate, pre-skinned normal.
	Added CustomEyeTangent to material attributes.
	Resolved some hard-coded attribute typing and other minor fixes.

Change 3162491 on 2016/10/13 by Chris.Bunner

	Merging Dev-MaterialLayers to Dev-Rendering, CL 3162397:
	More fixed type-casting on material attributes.
	Swapped compiler::forcecast booleans to flags (and fixed a regression).

Change 3163266 on 2016/10/14 by Daniel.Wright

	Fixed sublevels with legacy lighting data being added to the dirty packages list redundantly

Change 3163524 on 2016/10/14 by Mark.Satterthwaite

	Bring over specific changes from Unicorn branch that increases the size of shader optional data so that it is considerably more useful.

Change 3163529 on 2016/10/14 by Mark.Satterthwaite

	Move the Metal shader source code and compilation path into the newly enlarged shader optional data.

Change 3163553 on 2016/10/14 by Mark.Satterthwaite

	Speculative fix for FORT-31590 also seen by a licensee - the Metal command buffer handler will be called from a dispatch queue thread that won't be registered with the stats system.
	#jira FORT-31590

Change 3163562 on 2016/10/14 by Mark.Satterthwaite

	Tidy up and extend the Metal debugging options:
	- Added rhi.Metal.BufferScribble which when enabled will fill freed buffer regions with 0xCD to help identify any areas where we are writing to a buffer while it is still being processed on the GPU.
	- Added rhi.Metal.BufferZeroFill which will zero-fill newly allocated buffer regions before any other data is read/written. Useful for catching cases where we might be reading uninitialised memory.
	- Added rhi.Metal.ResourcePurgeOnDelete which will purge the backing store of resources prior to releasing them back to the system or the respective pool. This will make any use-after-free conditions much more likely.
	- Added rhi.Metal.ResourceDeferDeleteNumFrames to defer releasing resources to the system or the resource pool by the specified number of frames (in addition to the current policy of waiting for the current end of frame & command-buffer completion). Useful for tracking down resource lifetime errors.
	- Fixed a number of bugs related to the modifications to vertex stream handling and addition of the SetShaderBytes API.
	- Track the start & end of FRingBuffer ranges - it appeared that the ring-buffer usage was invalid but it was in fact only my assumptions about the range that needed to be scribbled for rhi.Metal.BufferScribble. There is still the possibility that command-buffers that are implicitly parallelised by the driver may cause the ring-buffer range tracking to go awry - but with our data dependencies and the separation of the async. compute context I don't believe this is likely.
	- Fix up the "nometalv2" flag so that we can disable the features only available on iOS/tvOS-10/macOS-10.12 on newer devices to save having to reboot all the time.
	- Fixed the flickering geometry when enabling rhi.Metal.RuntimeDebugLevel=4 which breaks render passes into separate command-buffers - the occlusion query was waiting on the wrong command buffer in this case.

Change 3163752 on 2016/10/14 by Mark.Satterthwaite

	Add missing parenthesis to fix compile error on iOS.

Change 3164151 on 2016/10/16 by Benjamin.Hyder

	Submitting TM-AutoLOD level to QAGame

	#jira UE-29618

Change 3164190 on 2016/10/16 by Uriel.Doyon

	Materials now hold texture streaming data in the form of (UV scale X UV channel) for each texture.
	This data can be disabled through "r.Streaming.UseMaterialData"
	Defined a common framework in MeshComponent for texture streaming, used by both StaticMeshes and SkeletalMeshes.
	Simplified component interface for using the texture streaming build framework.
	Removed intermediate texture streaming build data from the static mesh components.
	Fixed shader compilation errors with the decals (from merge with main).

Change 3164636 on 2016/10/17 by Rolando.Caloca

	DR - vk - Fix validation spam

Change 3164679 on 2016/10/17 by Arne.Schober

	DR - [OR-28457] Part1, Scene View Refactoring - Removed Previous VewMatrices from SceneInfo and pass in Previous and Current ViewMatrices into Uniform Buffer creation to uniform UseCase for Shadows and CustomDepth, Fixed a Bug in Shadows with help of Daniel where the SceneView was copied unnecessary copied again. Also simplified the code in that area.

Change 3164705 on 2016/10/17 by Daniel.Wright

	When new levels are loaded, only the Indirect Lighting Cache Allocations intersecting the level's light probes are updated to minimize hitches.  This optimization requires a lighting build to compute PrecomputedLightVolume bounds.

Change 3164834 on 2016/10/17 by Daniel.Wright

	Support directional light dynamic shadows in any channel with forward shading, which can happen with multiple shadow casting stationary directional lights (even though only the lighting of one will appear)

Change 3164870 on 2016/10/17 by Arne.Schober

	DR - [OR-28457] Part2, Custom Depth Jitter - Allowed to overwite the viewconstant buffer in the custom depth pass. There ia also a new Project Setting available. The default constructor of the ContextDataType has been explicitly deleted to enforce compile errors when the templated code like the StaticMeshDrawList accidently tries to create a context without ViewUniformBuffer.

Change 3164949 on 2016/10/17 by Rolando.Caloca

	DR - vk - First version of pooled occlusion queries

Change 3165100 on 2016/10/17 by Rolando.Caloca

	DR - vk - Added driver version for Nvidia. AMD doesn't have one yet.

Change 3165160 on 2016/10/17 by Rolando.Caloca

	DR - vk - Fix for queries not ready

Change 3165230 on 2016/10/17 by Rolando.Caloca

	DR - vk - More fixes for occlusion queries

Change 3165839 on 2016/10/18 by Rolando.Caloca

	DR - hlslcc - Fix default parameters getting wrong values

Change 3166029 on 2016/10/18 by Rolando.Caloca

	DR - Switch some clears to DrawClearQuad()

Change 3166066 on 2016/10/18 by Mark.Satterthwaite

	Update ShaderVersion due to CL #3163524

Change 3166067 on 2016/10/18 by Mark.Satterthwaite

	Update Mac hlslcc for RCO's 3165839.

Change 3166370 on 2016/10/18 by Brian.Karis

	Improved hair AA

Change 3166389 on 2016/10/18 by Uriel.Doyon

	Fixed lightmap having bigger resolutions than the engine can handle
	#jira UE-34737
	#review-3166193 @daniel.wright

Change 3166495 on 2016/10/18 by Rolando.Caloca

	DR - vk - Fix occlusion queries

Change 3166516 on 2016/10/18 by Arne.Schober

	DR - Fix shaderbuild issue

Change 3166650 on 2016/10/18 by Rolando.Caloca

	DR - vk - Enable GRHISupportsFirstInstance

Change 3166799 on 2016/10/18 by Arne.Schober

	DR - [OR-28508] - The velocity Rendering pass was missing the adjustment for the PDO

Change 3167855 on 2016/10/19 by Rolando.Caloca

	DR - vk - Implemented texture streaming

Change 3168365 on 2016/10/19 by Rolando.Caloca

	DR - Fix static analysis

Change 3168405 on 2016/10/19 by Mark.Satterthwaite

	Fix the optional shader data changes from Unicorn to prevent FindOptionalData from erronesouly testing against the trailing optional data size, which can match the tag for optional data entries if you are unlucky.
	#jira UE-37489

Change 3169467 on 2016/10/20 by Arne.Schober

	DR - UE-28039 - Fixed flickering cached shadows on dynamic objects: Adding preshadows whose depths are cached so that GatherDynamicMeshElements will still happen, which is necessary for preshadow receiver stenciling.

Change 3169478 on 2016/10/20 by Arne.Schober

	DR - UE-28039 - missing comment

Change 3169845 on 2016/10/20 by Arne.Schober

	DR - UE-35937 - readd Merged out check

Change 3169859 on 2016/10/20 by Rolando.Caloca

	DR - vk - Stop popping up dialog on every run as the device name in the API doesn't match our driver database

[CL 3170066 by Marcus Wassmer in Main branch]
2016-10-20 20:09:22 -04:00
Gil Gribb
ab5d7150f4 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3154632)
#lockdown Nick.Penwarden
#rb none

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

Change 3122543 on 2016/09/13 by Ben.Woodhouse

	Override HasOcclusion for Widget3DComponentProxy to detect if the material is has depth testing enabled.

	#jira UE-35878

Change 3122544 on 2016/09/13 by Ben.Woodhouse

	Shadow stencil optimisation with cvar (enabled by default)

	Avoids redundant clearing the stencil buffer for per-object and pre shadows by zeroing the stencil during testing, following discussion on UDN.

	This means we don't benefit from Hi Stencil on GCN for the shadow projection draw calls, but it's still faster in all the cases I could find, including for the player character where the bounding box is quite large. (Note: early stencil still works fine, according to PIX)

	Shadow projection GPU time profiling :
	Test map with 35 characters, stationary directional light
	  - 4ms-2ms on XB1
	  - 2.5ms to 0.9ms on PC (r9-390X)
	  - 3ms-2ms on PS4

	Paragon PS4 (roughly 20% reduced - from ~0.39ms)

Change 3122687 on 2016/09/13 by Rolando.Caloca

	DR - vk - Fix ES31 crash

Change 3122691 on 2016/09/13 by Rolando.Caloca

	DR - vk - Fixes for SDK 1.0.26.0

Change 3122778 on 2016/09/13 by Rolando.Caloca

	DR - vk - Fix number of layers on barrier

Change 3122921 on 2016/09/13 by Rolando.Caloca

	DR - vk - Fix ES3.1

Change 3122925 on 2016/09/13 by Ben.Woodhouse

	Fix sky lighting issue with skin and re-enable non-checkerboard lighting by default (fallout from lightaccumulator refactor)
	#jira UE-35904

Change 3123016 on 2016/09/13 by Chris.Bunner

	Fixed adaptive tessellation, broken by CL 3089208 refactor.
	#jira UE-35341

Change 3123079 on 2016/09/13 by Rolando.Caloca

	DR - vk - Force StoreOp store instead of DontCare everywhere (temporarily)

Change 3123503 on 2016/09/13 by David.Hill

	#jira UE-25623
	converted a check() to checkf() to include better diagnostic information.

Change 3123617 on 2016/09/13 by Guillaume.Abadie

	Fixes artifact when the camera direction is almost parallel to a wide plane with SSR.

	#jira UE-35128

Change 3123743 on 2016/09/13 by Brian.Karis

	Separate mesh reduction interfaces for static and skeletal.

	Zero bad tangents from input mesh.

Change 3125378 on 2016/09/14 by Arne.Schober

	DR - [UE-34481] - Extract all the State which is necessary to execute the DebugTextDrawingDelegate from the SceneProxy into its own Helpers to be drawn to the canvas later on. The issue was that the SceneProxys are only owned by the RT after their creation and the GT should avoid reading from or writing state to them.

Change 3125527 on 2016/09/14 by Arne.Schober

	DR - [UE-34481] - Fix UT build and mac

Change 3125741 on 2016/09/14 by Rolando.Caloca

	DR - Extra debug mode for tracking down SCW crashes (r.DumpSCWQueuedJobs=1)

Change 3125763 on 2016/09/14 by Rolando.Caloca

	DR - vk - Added new Renderpass cache
	- Fix buffer barrier warning

Change 3125769 on 2016/09/14 by Rolando.Caloca

	DR - Renamed cvar to r.DumpSCWQueuedJobs

Change 3125771 on 2016/09/14 by Rolando.Caloca

	DR - Added support for SV_ClipDistance on GL3 & 4

Change 3125792 on 2016/09/14 by Arne.Schober

	DR - [UE-34481] - Fix Odin and PS4

Change 3125880 on 2016/09/14 by Arne.Schober

	DR - [UE-34481] - Fix Fortnite

Change 3125968 on 2016/09/14 by Brian.Karis

	Removed comment

Change 3126315 on 2016/09/15 by Ben.Woodhouse

	GPU profiler robustness
	-  Change stat gathering update to handle multiple views and non-scenerenderer stats (such Slate) properly
	- Simplify gathering logic
	- Fix race condition where we could read back queries before they're submitted on the RHI thread.
	- Fix for movie player stat gathering - disable gathering outside of the main engine tick
	#jira UE-35975

Change 3126792 on 2016/09/15 by Rolando.Caloca

	DR - vk - Release render pass cache

Change 3126804 on 2016/09/15 by Rolando.Caloca

	DR - vk - Fix UpdateTexture2D()
	#jira UE-34151

Change 3126884 on 2016/09/15 by Rolando.Caloca

	DR - vk - Compile fix

Change 3126953 on 2016/09/15 by Rolando.Caloca

	DR - Enable GPU capture when running OpenGL under RenderDoc
	- Will also set the memory mode to non coherent so not to kill performance on RenderDoc

Change 3126966 on 2016/09/15 by Rolando.Caloca

	DR - Allow cooking for Vulkan SM4 to help with packaging

Change 3127082 on 2016/09/15 by Guillaume.Abadie

	Wraps up contact shadows for release fixing different artifacts and handling correctly their screen space length.

	#jira UE-35367, UE-33602, UE-33603, UE-33604
	#review-3125887 @brian.karis

Change 3127130 on 2016/09/15 by Mark.Satterthwaite

	Add overloads to as* functions in hlslcc - HLSL allows you to call these on variables of the same type, in which case it simply returns the existing value but we had only defined the float<->u/int conversions, so hlslcc added implicit casts that broke such cases (i.e. asuint(uint) -> floatBitsToUint(float(uint))). This change defines the missing overloads as returns with regular casts.
	#jira FORT-25869
	#jira UE-34263

Change 3127475 on 2016/09/15 by Rolando.Caloca

	DR - vk - Debug dump

Change 3128131 on 2016/09/16 by Ben.Woodhouse

	(Integrated from //UE4/Private-Partner-NREAL/...)

	Alpha output support for postprocess materials (optional via a parameter)

	Needed for end of frame compositing. Could be used to pass intermediate data from one blendable postprocess to another (e.g edge detection)

Change 3128135 on 2016/09/16 by Ben.Woodhouse

	GPU profiler (PS4) - remove bubbles between commandlist submissions from query times

	Use r.ps4.AdjustRenderQueryTimestamps cvar to enable/disable (defaults to on)

	Also fixes some potential precision issues with unit GPU timing

Change 3128247 on 2016/09/16 by Rolando.Caloca

	DR - vk - Cache framebuffers

Change 3128593 on 2016/09/16 by Rolando.Caloca

	DR - vk - Fix for crash loading map
	#jira UE-36072

Change 3128759 on 2016/09/16 by Mark.Satterthwaite

	Back out changelist 3127130 - its causing a build failure in FPostProcessVelocityScatterVS because hlslcc is picking the wrong as_* overload.

Change 3130236 on 2016/09/19 by Chris.Bunner

	Exposed full SceneCaptureComponent classes instead of select methods.
	#jira UE-35996

Change 3130388 on 2016/09/19 by Rolando.Caloca

	DR - Avoid crash when adding dynamic primitives
	#jira UE-35327

Change 3130393 on 2016/09/19 by Marc.Olano

	Improve vector noise tooltips & documentation

Change 3130547 on 2016/09/19 by Ben.Woodhouse

	Fix for ensure fail when initializing point light shadowmaps.

	This came about because cubemap rendertargets always have Extents of (Resolution, 0). The Y component was implicitly used to determine if it was a cubemap, which is odd... The fix was to make the definition explicit via a flag and initialize both the X and Y parameters.

	I suspect the ensure started happening recently due to a more recent change, but fixing the underlying logic seems like the correct fix.
	#jira UE-35837

Change 3130578 on 2016/09/19 by Daniel.Wright

	Workaround OpenGL/NVidia bug with non-power-of-2 textures by disabling CSM atlassing if we're using OpenGL

Change 3130682 on 2016/09/19 by Rolando.Caloca

	DR - Better fix for UE-35327
	#jira UE-35327

Change 3130767 on 2016/09/19 by Uriel.Doyon

	Better handling of color array in VisualizeComplexity code to prevent assert.
	#jira UE-29332

Change 3130965 on 2016/09/19 by Arne.Schober

	DR - [UE-35679] - the crash was caused by the Resource of the UTexture being Null. And one of the Kismet Nodes calling a function on that resource. The solution was to disable that call from Kismet when only cooking.

Change 3130967 on 2016/09/19 by Chris.Bunner

	Hid redundant texture sampler properties from texture object parameter.
	Hid redundant texture property input on texture parameter nodes.
	Fixed copy-paste error in expression texture parameter docs.
	#jira UE-32724

Change 3131118 on 2016/09/19 by Mark.Satterthwaite

	Second attempt - this time with the correct input types. Add overloads to as* functions in hlslcc - HLSL allows you to call these on variables of the same type, in which case it simply returns the existing value but we had only defined the float<->u/int conversions, so hlslcc added implicit casts that broke such cases (i.e. asuint(uint) -> floatBitsToUint(float(uint))). This change defines the missing overloads as returns with regular casts.
	#jira FORT-25869
	#jira UE-34263

Change 3131153 on 2016/09/19 by Rolando.Caloca

	DR - Fix recompute normals when triangles have a LHS tangent basis

	Integrate from 3028634
	- Also make meshes that don't have morphs be able to run through the recompute normals path
	#jira UE-35472

Change 3131228 on 2016/09/19 by Mark.Satterthwaite

	Duplicate CL #3114668: Always disable asynchronous shader compilation for the global shader map on Metal as some of them are needed very early.
	#jira UE-35240

Change 3131246 on 2016/09/19 by Rolando.Caloca

	DR - Shrink gpu skinning permutations

Change 3131261 on 2016/09/19 by Mark.Satterthwaite

	Fix Metal validation failures due to particle rendering not binding buffers to all buffer inputs declared in the shader.
	ContentExamples Effects no longer aborts complaining that the particle system didn't bind a required buffer.

Change 3131265 on 2016/09/19 by Mark.Satterthwaite

	Fix FMetalDynamicRHI::RHIReadSurfaceData for shared textures on iOS.

Change 3131271 on 2016/09/19 by Mark.Satterthwaite

	Use private memory for the Metal stencil SRV workaround needed on El Capitan.

Change 3131273 on 2016/09/19 by Mark.Satterthwaite

	Disable the lazy-encoder construction in Metal for AMD - there is a situation that causes the lazy construction to perform a clear that isn't wanted and so far this hasn't been tracked down and fixed. Until then, this will render correctly.

Change 3131280 on 2016/09/19 by Mark.Satterthwaite

	For GLSL interpolation mode flags must come before storage mode flags and you can't redeclare the system variable gl_Layer to use a differing interpolation mode.

Change 3131283 on 2016/09/19 by Mark.Satterthwaite

	Change the ShaderCache to not cache resource bindings in the draw states for shader platforms that don't care - reduces the number of draw states considered significantly without reducing effectiveness. We can support ShaderCache with Metal SM5 but not the RHI thread enabled so change when we enable it and make sure we load the binary shader cache.

Change 3131402 on 2016/09/19 by Rolando.Caloca

	DR - Disambiguate callstack
	#jira UE-34415

Change 3131469 on 2016/09/19 by Rolando.Caloca

	DR - vk - Check if we can allocate descriptors off a pool

Change 3131482 on 2016/09/19 by Rolando.Caloca

	DR - vk - Remove unused var

Change 3131506 on 2016/09/19 by Mark.Satterthwaite

	With permission from Josh.A & Michael.T, deprecate Mac OpenGL support. For now this just means visibly warning users with message boxes - but in a future release OpenGL support will be removed from macOS.

Change 3131536 on 2016/09/19 by Rolando.Caloca

	DR - vk - Compile fix

Change 3131564 on 2016/09/19 by Rolando.Caloca

	DR - vk - Submit Hint
	- Disable framebuffer recycling as its causing a hang

Change 3131625 on 2016/09/19 by Mark.Satterthwaite

	Inside MetalRHI add an optional cache for disposed texture objects so we may reuse them - controlled by CVAR rhi.Metal.TextureCacheMode which must be set prior to running as it can't be changed at runtime. Settings: 0 = off, 1 (default) = will attempt to reuse private memory texture objects within the frame they are released otherwise they are disposed of as before. Setting 2 extends the caching to all textures - though Managed/Shared textures cannot be reused until after the frame in which they were released has been processed on the GPU. In this mode id<MTLTexture> objects are never returned to the OS so in order to conserve VRAM calls to setPurgeableState are made to allow the driver to reclaim unusued memory if required.

Change 3131630 on 2016/09/19 by Mark.Satterthwaite

	More statistics in Metal added to track down where performance was going in a particular project but which may be more generally useful.

Change 3131955 on 2016/09/20 by Gil.Gribb

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

Change 3131978 on 2016/09/20 by Gil.Gribb

	CIS fix

Change 3132584 on 2016/09/20 by Ben.Woodhouse

	Add some additional checks to help track down a rare crash with terrain rendering and shader recompiling

	#jira UE-35937

Change 3132696 on 2016/09/20 by Mark.Satterthwaite

	Use set*Bytes to handle uploading buffers < 4Kb when available - this is faster than lots of small Metal buffers and reduces the amount of GPU heap fragmentation. Where the API feature isn't available or hasn't been tested yet we'll use another ring-buffer inside the MetalCommandEncoder to emulate it.

Change 3132772 on 2016/09/20 by Mark.Satterthwaite

	Rework Metal's handling of RHISetStreamSource calls that override the stride of vertex declarations to be much more efficient.

Change 3132870 on 2016/09/20 by Ben.Woodhouse

	Fix mac compile error

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

	Changed light source shapes in reflection captures to use alpha

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

	Alphaed out on spot light cone as well.

Change 3133263 on 2016/09/20 by Rolando.Caloca

	DR - vk - Debug names for objects

Change 3133292 on 2016/09/20 by Rolando.Caloca

	DR - vk - Fix SRGB upload/formats

Change 3133395 on 2016/09/20 by Rolando.Caloca

	DR - vk - SM5 fixes

Change 3134026 on 2016/09/21 by Gil.Gribb

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

Change 3134663 on 2016/09/21 by Chris.Bunner

	Merging Dev-MaterialLayers to Dev-Rendering, CL 3134208. Initial material attribute extensibility changes.
	#jira UE-34347

Change 3134730 on 2016/09/21 by Arne.Schober

	DR - [UE-34481] - Fix minor brokenness found by Gil

Change 3134792 on 2016/09/21 by Chris.Bunner

	Fixed compile errors for non-editor builds.

Change 3135214 on 2016/09/21 by Rolando.Caloca

	DR - vk - Fix visualize texture
	- Dump memory when OOM (to track leaks)

Change 3135225 on 2016/09/21 by Rolando.Caloca

	DR - vk - Ensure on exit if mem leak
	- Update fences if running wait for idle

Change 3135672 on 2016/09/22 by Gil.Gribb

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

Change 3135793 on 2016/09/22 by Rolando.Caloca

	DR - vk - Set dynamic state after binding pipeline or on a fresh cmd buffer

Change 3135816 on 2016/09/22 by Rolando.Caloca

	DR - Add names for d3d on renderdoc

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

	Fixed initialization order warning.

Change 3136024 on 2016/09/22 by Rolando.Caloca

	DR - vk - Fix stencil faces

Change 3136042 on 2016/09/22 by Marcus.Wassmer

	Fix compile error

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

	Renamed material for PostTonemapHDRColor visualization to reflect actual usage.

Change 3136308 on 2016/09/22 by Uriel.Doyon

	Changed how the component relative rotation is computed, in order to have more consistency after blueprint rescript.
	#jira UE-36094

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

	Gather object references from stereo view state in USceneCaptureComponent. This matches behavior of other classes such as ULocalPlayer.

Change 3137092 on 2016/09/22 by Rolando.Caloca

	DR - vk - Rename pipeline to gfx pipeline

Change 3137263 on 2016/09/22 by Mark.Satterthwaite

	Duplicate CL #3135157:
	Fix one cause of Metal crashes loading into a zone - the PlanarReflection shader code needs to always set the IsStereoParameter so that the shader can perform the if-test without causing an invalid GPU access.
	#jira FORT-30061

Change 3137265 on 2016/09/22 by Mark.Satterthwaite

	Duplicate CL #3135169:
	Correct Metal texture creation for AVF media framework - we can't provide a render-targetable version of the texture without blitting. The native texture we get is a GPU copy that can be made CPU accessible (i.e. it is not tiled).

Change 3137266 on 2016/09/22 by Mark.Satterthwaite

	Duplicate CL #3135237:
	Metal validation layer fix: under Metal if there are no reads from the vertex stage-in buffers we should use the Empty vertex declaration, not the filter declaration, otherwise we have to bind a redundant vertex stream buffer to silence the validation layer.

Change 3137268 on 2016/09/22 by Mark.Satterthwaite

	Duplicate CL #3136033:
	To fix the Fortnite login screen force Nvidia Macs to use the set*Bytes API for small buffer updates even on El Capitan. We can't do this globally as Intel didn't implement these functions until macOS Sierra.
	Fix GPU selection code in MetalRHI to confirm everything is working.
	#jira FORT-30385

Change 3137269 on 2016/09/22 by Mark.Satterthwaite

	Duplicate CL #3137164:
	Add stats to track exactly how many command buffers are allocated and committed each frame to work out why Fortnite on AMD is hanging, which turns out to be because each texture update/reallocation ends up in its own command-buffer. This needs to be rethought to pack these into fewer command buffers with the same synchronisation requirements to minimise command-buffer splits but for now we'll just make the default sufficiently large that we shouldn't see the hang until the work is done. Also ensure that command-buffer failure is always fatal - there is no way to recover or continue if a command-buffer fails.
	#jira FORT-30377

Change 3137606 on 2016/09/23 by Gil.Gribb

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

Change 3137936 on 2016/09/23 by Rolando.Caloca

	DR - Split RHICmdList clear into color & ds in prep for changes

Change 3138346 on 2016/09/23 by Rolando.Caloca

	DR - vk - Some renaming and splitting classes in prep for compute

Change 3138628 on 2016/09/23 by Rolando.Caloca

	DR - vk - Fix mem leak on framebuffers

Change 3138721 on 2016/09/23 by Daniel.Wright

	Better comment for r.DefaultFeature.AntiAliasing

Change 3138722 on 2016/09/23 by Daniel.Wright

	Fixed assert from decals with MSAA due to binding the Scene Depth Texture instead of surface

Change 3138723 on 2016/09/23 by Daniel.Wright

	Corrected GC doc

Change 3138892 on 2016/09/23 by Daniel.Wright

	Fixed instanced static meshes being unbuilt after a lighting build if you ever cancelled a previous lighting build

Change 3138905 on 2016/09/23 by Daniel.Wright

	"Optimizations" -> "Optimization Viewmodes"

Change 3138939 on 2016/09/23 by Daniel.Wright

	Disabled the stationary light overlap viewmode with forward shading

Change 3139710 on 2016/09/26 by Rolando.Caloca

	DR - Rename and added texture RHIClearDepthStencil -> RHIClearDepthStencilTexture

Change 3139820 on 2016/09/26 by Rolando.Caloca

	DR - Remove prefix from shader frequency strings

Change 3139828 on 2016/09/26 by Marcus.Wassmer

	Add SetShaderValue() specialization for bools on AsyncCompute commandlists to match the Gfx specialization.

Change 3139840 on 2016/09/26 by Benjamin.Hyder

	Adding VectorNoise Examples to TM-Noise map

Change 3139862 on 2016/09/26 by Rolando.Caloca

	DR - Better log to track down crash
	#jira UE-36271

Change 3140142 on 2016/09/26 by Rolando.Caloca

	DR - Fix clang warning

Change 3140145 on 2016/09/26 by Rolando.Caloca

	DR - Rename RHIClearColor(MRT) to RHIClearColorTextures and pass textures as parameters

Change 3140360 on 2016/09/26 by Daniel.Wright

	Lighting Scenarios and lightmaps moved to separate package
	* Levels can be marked as lighting scenarios (eg Day, Night).  Lighting is built separately for each lighting scenario with actors / lights in all other scenario levels hidden.  Only one lighting scenario level should be visible at a time in game, and its lightmaps will be applied to the world.
	* Most outputs of the lighting build now go into a separate _BuiltData package.  This improves level Save and AutoSave times as the separate package will only be dirtied after lighting rebuilds.
	* If a lighting scenario is present, all lightmaps are placed inside it's _BuiltData package.  This means that only the currently loaded lighting scenario's lightmaps will be loaded (Day or Night, but not both).  This also means that lightmaps for a streaming level will not be streamed with it.
	* For backwards compatibility, existing lightmaps are moved to a new _BuiltData package on load.
	* Reflection captures and precomputed visibility were not moved to the separate package.  Reflection captures are force updated on load of a lighting scenario level, which can increase load times.

Change 3140361 on 2016/09/26 by Daniel.Wright

	Lighting Scenarios UI

Change 3140582 on 2016/09/26 by Mark.Satterthwaite

	Duplicate CL #3140166
	Fix the video playback in Fortnite - bind our shader resource texture as the render-target texture as for some reason the playback code expects it there, even though we could never provide one.
	#jira FORT-30551

Change 3140584 on 2016/09/26 by Mark.Satterthwaite

	Duplicate CL #3140131:
	Fix crash under the validation layer & Nvidia's El Capitan (10.11) drivers when distance field particle collisions are used without any scene distance fields available - bind the black volume texture when that is the case to avoid bad access on the GPU.
	#jira FORT-30622

Change 3140586 on 2016/09/26 by Mark.Satterthwaite

	Duplicate CL #3140450:
	Fix launching the game on Intel GPUs by disabling Tiled Reflections on Intel for macOS Sierra like we did for El Capitan as there's currently a driver bug to means it doesn't work properly.
	#jira FORT-30649

Change 3140594 on 2016/09/26 by Zabir.Hoque

	Fix benchmark shaders register bindings. TEXCOORD0 was bound to register 1 in VS and then register 0 in PS. DX12 treats this a PSO creation failuer unlike DX11 this was an error.

Change 3140601 on 2016/09/26 by Marcus.Wassmer

	New 'Cinematic' Scalability level.  Remove unused 'new' motionblur CVAR

Change 3140602 on 2016/09/26 by Zabir.Hoque

	CreateTexture3D on XB1 DX11 was leaking ESRAM by reserving it but not allocating to it.

	#Tests: Fix was tested by licensee (GearBox).

Change 3140622 on 2016/09/26 by Rolando.Caloca

	DR - vk - More prep for sm5

Change 3140765 on 2016/09/26 by Rolando.Caloca

	DR - Fix ensure from bad clear depth surface

Change 3141251 on 2016/09/27 by Rolando.Caloca

	DR - vk - Rename & cleanup

Change 3141394 on 2016/09/27 by Rolando.Caloca

	DR - vk - Compute pipeline state

Change 3141463 on 2016/09/27 by Mark.Satterthwaite

	Fix the include order to avoid compile errors on Mac.

Change 3141529 on 2016/09/27 by Gil.Gribb

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

Change 3141830 on 2016/09/27 by zachary.wilson

	Adding testing content for lighting scenarios to collaborate with Ben

Change 3141941 on 2016/09/27 by Olaf.Piesche

	Speculative fix for UE-34815; have yet to repro this but there's really only so many things it could be. I currently don't see how the sim resources could go away after queueing, so I'm replacing the check with an ensure and null checking the resource pointer.

Change 3142035 on 2016/09/27 by Olaf.Piesche

	Fix compiler error from silly leftover bit of code.

Change 3142065 on 2016/09/27 by Benjamin.Hyder

	Updating Lighting Scenario map

Change 3142262 on 2016/09/27 by Mark.Satterthwaite

	Change Apple RHI initialisation to select the first compatible shader platform to decide which RHI to initialise. Internally in MetalRHI we must gracefully fallback to a lower feature-level when this initial selection is not available on the current device/OS, in which case we need to validate that the selected shader platform was actually packaged. The order of initialisation is different per-platform:
	On Mac: Order of initialisation is the order listed in TargetedRHIs .ini specifications.
	On iOS/tvOS: Order is explicit: Metal MRT > Metal ES 3.1 > OpenGL ES 2
	#jira UE-35749

Change 3142292 on 2016/09/27 by Rolando.Caloca

	DR - hlslcc - Fix for warning X3206: implicit truncation of vector type causing error
	#jira UE-31438

Change 3142397 on 2016/09/27 by Mark.Satterthwaite

	Update hlslcc for Mac including RCO's changes in CL #3142292.
	#jira UE-31438

Change 3142438 on 2016/09/27 by Daniel.Wright

	UMapBuildDataRegistry's created for legacy lightmap data are placed in the map package, which avoids problems with cooking

Change 3142452 on 2016/09/27 by Rolando.Caloca

	DR - Proper support for int defines

Change 3142519 on 2016/09/27 by Arne.Schober

	DR - [UE-33438] - Added a Project Setting to enable Skincache Shader Permuations. The Default value for the Skincache mode was changed to enabled. The reasoning behind this was that it will be auto disabled when Skincache Shaders are disabled, and runtime toggle is a debuging feature that mainly programmers are dealing with. The Recompute Tangents option in the Skinned Mesh is now automatically grayed out when no Skincache Shader Permuations are available.

Change 3142537 on 2016/09/27 by Daniel.Wright

	Fixed r.ScreenPercentage with MSAA - a scissor rect was being setup during the resolve and not reset

Change 3142691 on 2016/09/27 by Daniel.Wright

	Disabled renaming of legacy ULightmap2D's to the separate package since UMapBuildDataRegistry is no longer put in a separate package for legacy content

Change 3142711 on 2016/09/27 by Daniel.Wright

	GComponentsWithLegacyLightmaps entries get handled by USceneComponent::AddReferencedObjects, fixes a crash when you open a map directly from the content browser

Change 3142712 on 2016/09/27 by Daniel.Wright

	Separate category for ParticleCutout properties

Change 3142762 on 2016/09/27 by Uriel.Doyon

	Added per static mesh and per skeletal mesh UV density data. The data is now saved and available in cooked builds.
	The density are computed by the engine but can be overridden by the user in the material tabs.

	Texture streaming intermediate component data is now per material instead of per lod-section.

	New ViewModeParam in FSceneViewFamily allowing context specific param per viewmode.
	This is currently used to show which UV channel and which texture index is being
	shown in the texture streaming accuracy viewmodes.
	This replaces r.Streaming.AnalysisIndex

	Renamed texture streaming viewmodes:
	MeshTexCoordSizeAccuracy -> MeshUVDensityAccuracy
	MaterialTexCoordScalesAccuracy -> MaterialTextureScaleAccuracy
	MaterialTexCoordScalesAnalysis -> OutputMaterialTextureScales

	Improved UV density computation and viewmode.

	LightmapUVDensity is now computed separately from UVChannel Density.

	Fixed texture streaming for instanced static mesh component and derived types.

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

	Removed 'experimental' from forward shading setting

Change 3143508 on 2016/09/28 by Chris.Bunner

	Added component type handling to FoldedMath and Length material expressions.
	#jira UE-36304

Change 3143557 on 2016/09/28 by Rolando.Caloca

	DR - Back out changelist 3142292

Change 3143563 on 2016/09/28 by Rolando.Caloca

	DR - vk - Force hlslcc re-link

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

	Moved GetMeshMapBuildData to UStaticMeshComponent since FStaticMeshComponentLODInfo::OwningComponent can't be initialized reliably in the case of SpawnActor off of a blueprint default that has LODData entries already.

Change 3143661 on 2016/09/28 by Chris.Bunner

	Warning fix.

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

	DumpUnbuiltLightIteractions after lighting build for debugging

Change 3143822 on 2016/09/28 by Arne.Schober

	DR - Refactoring of the ViewMatrices. Moved the Derived Matrices into the FViewMatrix struct. Made all members private do emphasize the static constness of that struct after creation. Renamed the heavy weight members on this struct to Compute*. Methods that modify The ViewMatrices have been renamed to Hack* to discurage their use in the future until a better solution for those problems is found. The ViewMatrix modification is especially misleading because it only changes the State of the ViewMatrices to read their Position from the Material Editior as if coming from the Lightsource (mainly for manual bilboards) as well as doing someting similar to generate CPU bilboards for shadows.

Change 3143860 on 2016/09/28 by Benjamin.Hyder

	Updating TM-Noise map to include 3d noise examples

Change 3143939 on 2016/09/28 by Rolando.Caloca

	DR - vk - Better debugging of submissions
	- Added r.Vulkan.IgnoreCPUReads to help track down hangs on some ihvs

Change 3144006 on 2016/09/28 by Brian.Karis

	Fixed PixelError not being set correctly with LOD groups.

	Removed unneeded Simplygon references.
	Mesh reduction module can now be chosen by name with r.MeshReductionModule

Change 3144026 on 2016/09/28 by Benjamin.Hyder

	Updating QA-Effects map to correct numbering issue

Change 3144098 on 2016/09/28 by Arne.Schober

	DR - ViewMatrices Refactoring - Fix UT

Change 3144158 on 2016/09/28 by Rolando.Caloca

	DR - Undo splitting RHI command context

Change 3144952 on 2016/09/29 by Rolando.Caloca

	DR - vk - Missing swapchain flag

Change 3145064 on 2016/09/29 by Olaf.Piesche

	#jira UE-36091

	Pulling range update for vector distributions even when UDist is not dirty; some content has a lookup table and a clean dist, but the range values have not been baked; always pulling them should be safe and not significantly costly.

Change 3145354 on 2016/09/29 by Benjamin.Hyder

	Updating Tm-ContactShadows

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

	Made SeamlessTravelLoadCallback handle legacy lightmaps

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

	Don't clear legacy lightmap annotations on each map - fixes lighting unbuilt when doing seamless travel

Change 3145530 on 2016/09/29 by Simon.Tovey

	UE-36188 - Editor crash when updating hierarchical instance static mesh component

	Dirtied render state rather than unsafe update of bounds.

Change 3145608 on 2016/09/29 by Gil.Gribb

	Attempt to fix a random compiler error under win32

Change 3145749 on 2016/09/29 by Uriel.Doyon

	Fix for static analysis warning

Change 3146091 on 2016/09/29 by Zabir.Hoque

	RHI Interface changes to support PSO based APIs

Change 3146092 on 2016/09/29 by Zabir.Hoque

	D3D12 RHI support for PSO based APIs.

Change 3146590 on 2016/09/30 by Gil.Gribb

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

Change 3146731 on 2016/09/30 by Rolando.Caloca

	DR - Fix merge conflicts

Change 3146778 on 2016/09/30 by Rolando.Caloca

	DR - More integration compile fixes

Change 3146790 on 2016/09/30 by Rolando.Caloca

	DR - Integration fix

Change 3146849 on 2016/09/30 by Rolando.Caloca

	DR - Final integration fix

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

	Static analysis fix for dereferencing World

Change 3147020 on 2016/09/30 by Rolando.Caloca

	DR - vk - Fix depth issue on AMD cards
	- Added VULKAN_KEEP_CREATE_INFO to help debugging creation
	- Added num color attachments to pipeline key

Change 3147034 on 2016/09/30 by Rolando.Caloca

	DR - Fix Kite crash where shader pipelines were optimizing non-tessellation pipelines
	#jira UE-36277
	#jira UE-36500

Change 3147080 on 2016/09/30 by Rolando.Caloca

	DR - vk - Disable debug info by default

Change 3147082 on 2016/09/30 by Chris.Bunner

	Allow tessellation to be used with DrawTile calls by swapping fixed mesh to triangle list.
	#jira UE-36491

Change 3147388 on 2016/09/30 by Chris.Bunner

	Blacklisted Nvidia driver 372.70 as it has known stability issues skewing our top crashes list. Also updated recommended version numbers.
	#jira UE-35288

Change 3147394 on 2016/09/30 by Chris.Bunner

	Additional logging for rare error.
	#jira UE-35812

Change 3147459 on 2016/09/30 by Rolando.Caloca

	DR - vk - Some more srgb formats

Change 3147537 on 2016/09/30 by Rolando.Caloca

	DR - vk - Standarize srgb flag like D3D11
	- Minor FVulkanShader cleanup

Change 3147620 on 2016/09/30 by Olaf.Piesche

	#jira UE=34486
	particle component tick function task can be invalid during pause; add check

Change 3148028 on 2016/10/01 by Daniel.Wright

	Renamed RenderingSettings.cpp to match header

Change 3148059 on 2016/10/01 by Daniel.Wright

	Disabled reparenting in the profiler which is disorienting

Change 3148067 on 2016/10/01 by Daniel.Wright

	Support for ReflectionEnvironment and light type show flags with ForwardShading

Change 3148069 on 2016/10/01 by Daniel.Wright

	Added CapsuleIndirectShadowMinVisibility to SkinnedMeshComponent, so artists have control over indirect capsule shadow darkness without changing cvars

Change 3148072 on 2016/10/01 by Daniel.Wright

	Added a rendering setting to disable the new lightmap mixing behavior, where smooth surfaces don't have any mixing.  r.ReflectionEnvironmentLightmapMixBasedOnRoughness

Change 3148073 on 2016/10/01 by Daniel.Wright

	r.VertexFoggingForOpaque only affects forward shading - manual copy of Ben's fix from Orion stream

Change 3148074 on 2016/10/01 by Daniel.Wright

	Enabled planar reflection receiving on the material used for the preview of a APlanarReflection

Change 3148084 on 2016/10/01 by Daniel.Wright

	Fixed reflections on Surface TranslucencyVolume in deferred

Change 3148085 on 2016/10/01 by Daniel.Wright

	Fixed planar reflection composite being done too many times in stereo deferred

Change 3148086 on 2016/10/01 by Daniel.Wright

	Clamp IndirectLightingQuality to 1 in preview builds - keeps preview useful even with IndirectLightingQuality jacked up to 10.

Change 3148107 on 2016/10/01 by Daniel.Wright

	CIS fix

Change 3148113 on 2016/10/01 by Daniel.Wright

	Translucency lighting modes for forward shading
	* Per-vertex modes use GetSimpleDynamicLighting since they can't support specular anyway

Change 3148306 on 2016/10/02 by Rolando.Caloca

	DR - vk - Fix for some NV drivers on Win10

Change 3148307 on 2016/10/02 by Rolando.Caloca

	DR - vk - Compute pipeline

Change 3148358 on 2016/10/02 by Rolando.Caloca

	DR - vk - Consolidate and renumber enum for binding types

Change 3148396 on 2016/10/03 by Rolando.Caloca

	DR - vk - Warning fix

Change 3148697 on 2016/10/03 by Benjamin.Hyder

	Submitting M_Chromebal after enabling planar reflectionsl

Change 3148799 on 2016/10/03 by Rolando.Caloca

	DR - vk - static analysis fix

Change 3148934 on 2016/10/03 by Chris.Bunner

	Added pre-skinned local position material graph node, vertex shader only.

Change 3148994 on 2016/10/03 by Chris.Bunner

	Added missing header file.

Change 3149085 on 2016/10/03 by Daniel.Wright

	Support for ReflectionEnvironment show flag in base pass reflections without any shader overhead

Change 3149095 on 2016/10/03 by Rolando.Caloca

	DR - vk - Disable new render passes

Change 3149125 on 2016/10/03 by Rolando.Caloca

	DR - vk - Fix for multiple memory types

Change 3149181 on 2016/10/03 by Rolando.Caloca

	DR - Better message when missing pipelines

Change 3149215 on 2016/10/03 by Rolando.Caloca

	DR - RHIClearColor -> RHIClearColorTexture
	#tests Orion Editor run match on Agora_P

Change 3149288 on 2016/10/03 by Chris.Bunner

	Added PreTonemapHDRColor for buffer visualization and target output.
	#jira UE-36333

Change 3149402 on 2016/10/03 by Daniel.Wright

	Light attenuation buffer is now multisampled, fixes preshadows with MSAA (depth testing failed during stencil pass) but adds a resolve (.12ms at VR res)

Change 3149403 on 2016/10/03 by Daniel.Wright

	Forward lighting supports lighting channels

Change 3149574 on 2016/10/03 by Marcus.Wassmer

	PR #2817: Ansel/Photography system (Contributed by adamnv)
	Modified to become a plugin

Change 3149615 on 2016/10/03 by Rolando.Caloca

	DR - vk - Fix PF_G16R16 which fixes reflections

Change 3149639 on 2016/10/03 by Olaf.Piesche

	Adding more ensures to catch NaNs occasionally appearing in particle locations early

Change 3149745 on 2016/10/03 by Uriel.Doyon

	Moved UVDensity computation in the staticmesh DDC.

Change 3149749 on 2016/10/03 by Daniel.Wright

	Fixed lightmaps on BSP, which was fallout from Lighting Scenarios backwards compatibility

Change 3149755 on 2016/10/03 by Benjamin.Hyder

	Checking in built lighting for QA-postprocessing

Change 3149758 on 2016/10/03 by Benjamin.Hyder

	re-submitting built lighting for QA-PostProcessing

Change 3149940 on 2016/10/04 by Gil.Gribb

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

Change 3150098 on 2016/10/04 by Marcus.Wassmer

	Fix some clang and win32 errors

Change 3150323 on 2016/10/04 by Rolando.Caloca

	DR - vk - Static analysis fix

Change 3150456 on 2016/10/04 by Daniel.Wright

	Revert temp logs

Change 3150731 on 2016/10/04 by Daniel.Wright

	Static lights now add a dummy map build data entry for their ULightComponent::IsPrecomputedLightingValid

Change 3150795 on 2016/10/04 by Marcus.Wassmer

	Fix RHIClearUAV and Drawindirect bugs on PS4.
	Also fix PS4 compile error from bad merge.

Change 3151065 on 2016/10/04 by Ben.Marsh

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

Change 3151134 on 2016/10/04 by Brian.Karis

	Fixed corrupt mesh generation from quadric simplifier due to uninitialized color array.

Change 3151201 on 2016/10/04 by Marcus.Wassmer

	Nvidia approved icon for ansel plugin.

Change 3151240 on 2016/10/04 by Marcus.Wassmer

	Fix string concat build error.

Change 3151258 on 2016/10/04 by Ben.Marsh

	Fix compile error.

Change 3151290 on 2016/10/04 by Marcus.Wassmer

	Bumping static mesh DDC key to hopefully fix distancefield crashes after brian's quadric simplifier fix.

Change 3152104 on 2016/10/05 by Chris.Bunner

	Workaround for legacy BreakMA material node invalid component masks.
	#jira UE-36832

Change 3152130 on 2016/10/05 by Ben.Woodhouse

	Fix issue with skylight SH and fast semantics on DX11. We need to clear the cube scratch textures before writing to them to avoid issues when reading them back for mip downsampling
	#jira UE-35890

Change 3152240 on 2016/10/05 by Rolando.Caloca

	DR - Fix for missing gizmo colors
	#jira UE-36515

Change 3152338 on 2016/10/05 by Daniel.Wright

	Hopeful fix for FDistanceFieldVolumeTexture assert in the cooker

Change 3152833 on 2016/10/05 by Brian.Karis

	Improved precision of quadrics. Fixes bad triangles on large meshes

Change 3153376 on 2016/10/06 by Rolando.Caloca

	DR - Fix for SM4 missing pipelines fallout

Change 3153650 on 2016/10/06 by Gil.Gribb

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

Change 3153656 on 2016/10/06 by Uriel.Doyon

	Fixed main integration compilation issues.
	Some of the Mesh UVDensity UI is temporary disabled.

Change 3153725 on 2016/10/06 by Uriel.Doyon

	Fixed crash when source data is missing for lightmaps
	#jira UE-36157

Change 3153998 on 2016/10/06 by Gil.Gribb

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

Change 3154056 on 2016/10/06 by Marcus.Wassmer

	Fix compile errors from merge.  Also restore some light scencario code

Change 3154176 on 2016/10/06 by Marcus.Wassmer

	Fix deprecation warning

Change 3154252 on 2016/10/06 by Marcus.Wassmer

	Fix more deprecation warnings

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

	Fix for incorrect re-entrant detection with a function called twice in a row. The function input Preview expression is overridden when the function is called to link it into the caller graph, but it was restored too late for chained calls to the same function.
	#jira UE-37002

[CL 3154728 by Gil Gribb in Main branch]
2016-10-07 10:20:36 -04:00
Gil Gribb
cbeb7d3bfe Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3109293)
#lockdown Nick.Penwarden
#rb none

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

Change 3091951 on 2016/08/17 by Chris.Bunner

	(Duplicate) CL 3090919: Fixed edge case interactions in HLOD ray rejection logic in Lightmass.

Change 3093162 on 2016/08/18 by Ben.Woodhouse

	Fix minor memory leak (missing delete of RT Heartbeat thread)

Change 3093470 on 2016/08/18 by Ben.Woodhouse

	Fix minor leak in FMonitoredProcess - the Thread member would get leaked if the FMonitoredProcess was cancelled, because it gets NULLed without deleting it.  Fix is to add a bool to keep track of whether the thread is running, rather than using the Thread pointer.
	Also fixes a race condition where the FMonitoredProcess::Thread member could get initialized after the thread had completed. This would cause IsRunning to never return false, even if the thread has completed, and the editor would hang on startup (this was fixed by setting bIsRunning to true before creating the thread)

Change 3093698 on 2016/08/18 by Daniel.Wright

	Translucent lighting volume draw event cleanup

Change 3093700 on 2016/08/18 by Daniel.Wright

	Clamp on box reflection capture transition distance visualizer

Change 3093755 on 2016/08/18 by Ryan.Vance

	Merging stereo planar reflections from Odin.

Change 3094060 on 2016/08/18 by Daniel.Wright

	Fully featured base pass reflection captures with blending and parallax correction
	* Used in the forward renderer when materials opt-in to 'High Quality Reflections'
	* Used in the deferred renderer for translucent 'Surface ForwardShading' materials
	* Reflection captures are culled to a frustum space grid using the same reverse linked-list method as lights in the forward renderer
	* Fixed grid culling in stereo / splitscreen
	* The ReflectionEnvironment compute shader used in the deferred path also uses the culled grid now which reduces its cost from .93ms -> .70ms on 970 GTX.  PS4 cost is about the same.
	* Capsule indirect self-shadowing is now reduced in the forward path to match deferred, and both are controlled by r.CapsuleIndirectShadowSelfShadowIntensity
	* SetupHZB is now skipped when SSAO / SSR / HZB are all disabled

Change 3094160 on 2016/08/18 by Daniel.Wright

	CIS fixes

Change 3094899 on 2016/08/19 by Ben.Woodhouse

	Batching optimization for dragging components onto blueprints, reported on UDN. Adding 2300 static mesh actors now takes 3 seconds instead of 40 minutes.
	https://udn.unrealengine.com/questions/305821/suspected-rhi-uniform-buffer-leak-when-adding-stat.html

	#jira UE-34937

Change 3095256 on 2016/08/19 by Daniel.Wright

	Disabled ISR warning spamming CIS

Change 3095468 on 2016/08/19 by Daniel.Wright

	Fixed refcounting on hit proxy render targets

Change 3095470 on 2016/08/19 by Daniel.Wright

	Added bVisibleInReflectionCaptures to primitive component, which is useful for hiding objects too close to the capture point

Change 3096274 on 2016/08/22 by Rolando.Caloca

	DR - vk - added missing BC4

Change 3096291 on 2016/08/22 by Rolando.Caloca

	DR - vk - Fix image views for some rendertarget formats
	- Fix ImageViews on sub mips

Change 3096579 on 2016/08/22 by Rolando.Caloca

	DR - vk - Fix rendering for shaders with no descriptors

Change 3096584 on 2016/08/22 by Rolando.Caloca

	DR - vk - Fix 3d texture update

Change 3096813 on 2016/08/22 by Rolando.Caloca

	DR - Fix GL linking errors
	PR #2615

Change 3097062 on 2016/08/22 by Rolando.Caloca

	DR - vk - Added unified mem flag
	- Added Mip index into UAV
	- Switched compute descriptor set index 0

Change 3097065 on 2016/08/22 by Rolando.Caloca

	DR - vk - Framebuffer barriers now wait on STAGE_FRAGMENT_SHADER instead of STAGE_BOTTOM_OF_PIPE

Change 3097084 on 2016/08/22 by Daniel.Wright

	Enabled r.VertexFoggingForOpaque by default to match other forward renderer choices (fast by default)

Change 3097086 on 2016/08/22 by Rolando.Caloca

	DR - vk - Missed file

Change 3097943 on 2016/08/23 by Rolando.Caloca

	DR - hlslcc - Remove duplicated definitions out into a common header

Change 3098166 on 2016/08/23 by Rolando.Caloca

	DR - Custom Renderer callback after getting SceneColor

Change 3098418 on 2016/08/23 by Olaf.Piesche

	Moving vertex factory dirtying to always happen in-editor for mesh emitters on dynamic data reinitialization; there are several cases in which this needs to happen (some material changes, mesh reimports...) which are difficult to track, so in-editor we just always recreate the mesh particle vertex factory with the dynamic data.

	#jira UE-34838

Change 3098448 on 2016/08/23 by Rolando.Caloca

	DR - vk - fixes for depth/stencil descriptors
	- Minor debug dump improvement

Change 3098463 on 2016/08/23 by Daniel.Wright

	Static lights with MinRoughness = 1.0 don't get their source shapes drawn into reflection captures, since they are being used as virtual area lights

Change 3098556 on 2016/08/23 by Daniel.Wright

	Lightmass area shadows only mark texels as mapped inside the light's influence, which fixes multiple stationary lights with bUseAreaShadowsForStationaryLight interfering.

Change 3098672 on 2016/08/23 by Rolando.Caloca

	DR - vk - Fixed crash when using vertex shaders with no descriptors

Change 3099173 on 2016/08/24 by Ben.Woodhouse

	Fixed various issues with subsurface profile, for checkerboard and non-checkerboard code paths

	- Re-enable non-checkerboard skin by default

	- Checkerboard issues fixed:
	    - Emissive lighting was being applied twice due to not taking checkerboard pattern into account
	    - Emissive lighting was modulated by basecolor in the recombine
	    - Metallic materials were contributing specular lighting to the diffuse channel

	 - Non-checkerboard fixes:
	    - Fix write mask during SkyLightDiffuse so alpha is updated correctly
	    - Metallic specular lighting was broken (specularColor was lerping to white instead of baseColor)

	 - Optimisation: Fall back to default lit for pixels where the opacity is 0.
	    - For non-checkerboard, this gives better handling of metallic/emissive for pixels where SSS is not required (non-CB RGBA encoding for diffuse/spec doesn't cope well with colored specular or emissive)
	    - For checkerboard, this gives similar results in terms of shading, but we get full-resolution shading on non SSS pixels

	#jira UE-34561

Change 3099673 on 2016/08/24 by Daniel.Wright

	Removed unused reflection shape variables

Change 3099674 on 2016/08/24 by Daniel.Wright

	Fixed translucent materials not working in DrawMaterialToRenderTarget (fallout from cl 3089208)
	Fixed ensure with FRendererModule::DrawTile in the forward renderer, trying to bind light attenuation texture

Change 3099700 on 2016/08/24 by Daniel.Wright

	Disabled log spam when a Rift is connected but not being used

Change 3099730 on 2016/08/24 by Daniel.Wright

	MSAA depth resolve uses depth of closest surface, hides some artifacts with dynamic shadowing against the skybox

Change 3099789 on 2016/08/24 by Brian.Karis

	FloatRGB  is now always supported.

	If 11:11:10 isn't supported by hardware this format by definition will map to a different format meaning it is always supported.

Change 3099987 on 2016/08/24 by Daniel.Wright

	Fixed light grid debug asserts on PS4
	* Always creating the local light buffer, even if it won't be used by the shader
	* Transition ViewState FRWBuffers to writable at the beginning of a new frame

Change 3100120 on 2016/08/24 by Rolando.Caloca

	DR - vk - Use 256MB pages for GPU memory

Change 3100151 on 2016/08/24 by Daniel.Wright

	PS4 gracefully falls back to Temporal AA when MSAA is requested, as the GNM RHI doesn't support MSAA yet

Change 3100302 on 2016/08/24 by Rolando.Caloca

	DR - vk - Mem system changes
	- Now allocates a readback heap from GPU->CPU
	- Removed bad total memory on heap/type
	- Added fallback to another mem type if it's OOM

Change 3101110 on 2016/08/25 by Rolando.Caloca

	DR - vk - Remove r.Vulkan.UseGLSL

Change 3101121 on 2016/08/25 by Rolando.Caloca

	DR - vk - Initial support for HiResShot

Change 3101450 on 2016/08/25 by Rolando.Caloca

	DR - vk - Remove imagelayout from textures; renamed a method for clarity

Change 3101462 on 2016/08/25 by Daniel.Wright

	Planar reflections no longer update GPU particles, fixes Scene Depth particle collision

Change 3101525 on 2016/08/25 by Frank.Fella

	Niagara - Remove public include modules from niagara, and remove the public include dependency on niagara from UnrealEd, and fix up fallout.

Change 3101613 on 2016/08/25 by Rolando.Caloca

	DR - vk - Fix static analysis warning

Change 3101686 on 2016/08/25 by Frank.Fella

	Niagara - Move asset type actions into the niagara module.

Change 3101865 on 2016/08/25 by Rolando.Caloca

	DR - vk - Fix compile issue when enabling dump layer

Change 3101946 on 2016/08/25 by Frank.Fella

	Orion - Fix include error caused by niagara include fixup.

Change 3101999 on 2016/08/25 by Frank.Fella

	Fortnite - Fix include error caused by niagara include fixup.

Change 3102035 on 2016/08/25 by Frank.Fella

	Ocean - Fix include error caused by niagara include fixup.

Change 3102047 on 2016/08/25 by Frank.Fella

	UnrealTournament - Fix include error caused by niagara include fixup.

Change 3102627 on 2016/08/26 by Frank.Fella

	Niagara - Move stats group declaration to the niagara module and move the stats declarations in the niagara module into the cpp files.

Change 3102654 on 2016/08/26 by Ben.Woodhouse

	Fix for D3D error with mismatched vertex/pixel shader registers for SV_POSITION input. Remove unused PixelPosition attribute from interpolators
	#jira UE-33424

Change 3102780 on 2016/08/26 by Ben.Woodhouse

	Make shadow culling take FOV into account, via LODDistanceFactor
	Also set the LODDistanceFactorSquared member of the view, which was previously uninitialized
	#jira UE-33873

Change 3102930 on 2016/08/26 by Rolando.Caloca

	DR - vk - Do not require backbuffer at start, like Metal

Change 3103061 on 2016/08/26 by Rolando.Caloca

	DR - vk - More debug dump to help track down issues

Change 3103143 on 2016/08/26 by Rolando.Caloca

	DR - vk - Added partial image view for each texture for Depth/Stencil
	- Removed some unused members from textures

Change 3104162 on 2016/08/29 by Gil.Gribb

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

Change 3104491 on 2016/08/29 by Rolando.Caloca

	DR - vk - Fix merge issue

Change 3104500 on 2016/08/29 by Rolando.Caloca

	DR - Rebuilt hlslcc libs after merge

Change 3104978 on 2016/08/29 by John.Billon

	-Moved Particle Cutouts to the Required Module
	-Pre-existing SubUVAnimation data is automatically moved to required on Init.
	-Added Default Particle Cutouts project setting that will attempt to find and use a texture on a particle's material for a cutout by default.

Change 3105249 on 2016/08/29 by John.Billon

	Fixing non-editor compile error.

Change 3105326 on 2016/08/29 by Zabir.Hoque

	SIMD Movie Player on XB1

Change 3105813 on 2016/08/30 by John.Billon

	Fixing static analysis warning.

Change 3106322 on 2016/08/30 by Matt.Kuhlenschmidt

	Removed duplicated view uniform shader parameters initialization between slate and scene rendering.  Moved all the duped initialization into a single shared method.  The shared method should be where new parameters are initialized if they are required for the view to work properly.

Change 3106350 on 2016/08/30 by Rolando.Caloca

	DR - vk - Added missing texture formats
	- Added texture debug name

Change 3106547 on 2016/08/30 by Rolando.Caloca

	DR - Added ESimpleRenderTargetMode::EExistingColorAndClearDepth

Change 3106631 on 2016/08/30 by Uriel.Doyon

	Dirty Texture Streaming Build do not dirty maps anymore.
	#jira UE-35241

Change 3106919 on 2016/08/30 by Rolando.Caloca

	DR - Temp workaround to get Vulkan up & running, might require hlslcc fix

Change 3106974 on 2016/08/30 by Uriel.Doyon

	Changed lightmass exports version from GUID to INT in order to shorten filenames.

Change 3106988 on 2016/08/30 by Uriel.Doyon

	New project specific config value r.Streaming.CheckBuildStatus used to specify whether the engine should check if the "Texture Streaming Build" is dirty (false by default).
	#jira UE-35227

Change 3107927 on 2016/08/31 by John.Billon

	-Duplicating OpenGL4 ClearUAV Implementation from 4.13
	-Fixed uav clear format.
	#Jira UE-35345

Change 3108095 on 2016/08/31 by Marc.Olano

	Restore initialization of noise textures, accidentally removed in @3106322

	#jira UE-35369

Change 3108557 on 2016/08/31 by John.Billon

	Fixing HTML5 compile error

[CL 3109297 by Gil Gribb in Main branch]
2016-08-31 21:22:32 -04:00
Ben Marsh
b59ee3ed20 Copying //UE4/Release-Staging-4.13 to //UE4/Dev-Main (Source: //UE4/Release-4.13 @ 3088355)
#lockdown Nick.Penwarden
#rb none

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

Change 3088355 on 2016/08/13 by Max.Preussner

	Media Player Editor: Fixed Local file paths without file:// open when pressing Enter, but not when clicking Go button (UE-34643)

	#jira UE-34643

Change 3088331 on 2016/08/13 by Max.Preussner

	Media: Fixed Failing to load Precached Media Source (UE-34285)

	#jira UE-34285

Change 3088202 on 2016/08/12 by Zabir.Hoque

	Porting DX12 Fix from MS:

	Update D3D12 RHI for 4.13
	 - Fixed compiler errors with missing RHI methods. Fixed compiler warnings where names were hidding other variables.

	#jira UE-0

Change 3088149 on 2016/08/12 by Mark.Satterthwaite

	Duplicate CL #3087991:
	Initial AVFoundation implementation of Media Framework for Mac, iOS & tvOS.
	- Slight adaptation of AppleMovieStreamer to pick up movies from inside the GameContentDir on all Apple platforms.
	- Video playback occurs via AVPlayerItemVideoOutput's attached to the AVPlayerItem's output. This means gathering video samples is trivial.
	- Metal texture updates occur by wrapping the texture object provided by AVF - for Mac this is simple as it can bind to the IOSurface directly, for iOS/tvOS we have to create a CVMetalTextureCache and allocate our texture from there.
	- OpenGL and OpenGLES currently have to lock the pixel buffer and upload to a texture the old fashioned way - this should be revisited when there is time.
	- Subtitles/Captions are captured using AVPlayerItemLegibleOutput which also connects to the AVPlayerItem's output.
	- On Mac audio samples are returned by manually reading from the stream using an AVAssetReaderTrackOutput, including manual seeking and synching.
	- On iOS/tvOS the audio is played directly by AVPlayer because the IOSAudio system can't handle procedural buffers - otherwise it could reuse the Mac code.
	- AVFoundation does not support AVI - that's an obsolete Microsoft/Windows file-format.
	- Only 'file://' URLs are supported - streaming would require a totally different audio solution (using MTAudioProcessingTap) and has many more edge and failure cases that would need to be handled.
	#jira UE-34315

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

	Fix iterative deploy for new ADB
	#jira UE-34638
	#ue4
	#android

Change 3088106 on 2016/08/12 by Dan.Oconnor

	Make check less strict, PinIds are only unique within a single node, unfortunately, hence why we use both an OwningNode and a PinId when resolving references
	#jira UE-34564

Change 3088099 on 2016/08/12 by Zabir.Hoque

	Move end of frame resource clean up to end of viewport rendering, since EndFrame calls were not consistently coming in when movie was playing but asset loading was done.

	#Jira UE-27026

Change 3088072 on 2016/08/12 by Max.Chen

	Sequencer: Level editor camera cut flag is now a one way gate

	This resolves issues to do with the flag being erroneously reset by external forces.

	#jira UE-33875

Change 3088031 on 2016/08/12 by Jeff.Campeau

	Fix WinXP build issues in WmfMedia and SteamVR plugins.

	#jira UE-32421

Change 3088025 on 2016/08/12 by Tom.Looman

	Updated VR Template with new VR device ID blueprint node.

	#jira ue-34592

Change 3088023 on 2016/08/12 by Tom.Looman

	Added PS Move input handling support to VR Template.

	#jira UE-34188

Change 3087989 on 2016/08/12 by Michael.Trepka

	Restored the code that's staging custom icons for Mac, which was accidentally removed when we switched to use build receipts.

	#jira UE-34581

Change 3087907 on 2016/08/12 by mason.seay

	New test assets for sub instance testing

	#jira UE-29618

Change 3087812 on 2016/08/12 by Maciej.Mroz

	#jira UE-34247 Nativized UMG assets not visible

	Redone cl#3087726 from Dev-Blueprints

Change 3087810 on 2016/08/12 by Jeff.Fisher

	UEVR-13 PSVR: TCR Requirements : sceHmdReprojectionSetOutputMinColor
	Exposed sceHmdReprojectionSetOutputMinColor to blueprint via Morpheus Function Library.
	Allows one to set the minimum output color from reprojection processing.  Can be used to mitigate certain artifacts (dark smearing, reprojection edges).  See Sony documentation for more information. This setting does persist across switches out of vr mode and hmd disconnection, but it has no effect out of vr modes.
	#review-3087760 @nick.whiting
	#jira UEVR-13

Change 3087795 on 2016/08/12 by Mitchell.Wilson

	Added project thumbnail to subway sequencer.
	Added thumbnails to subway sequencer levels.
	Re-saved multiple files to resolve empty engine version and nodeguid warnings.
	#jira UE-34521 UE-34519

Change 3087730 on 2016/08/12 by Michael.Trepka

	Made bGeneratedSYMFile true by default and changed some ifs in Mac UBT code so that non-debug configs always build dSYM files on Mac, unless bGeneratedSYMFile is set to false in BuildConfiguration.xml

	#jira UE-34548

Change 3087699 on 2016/08/12 by Jeff.Campeau

	Make resource generation fault tolerant of unset config values.

	#jira UE-34614

Change 3087690 on 2016/08/12 by Mitchell.Wilson

	Added a thumbnail for the BlueprintRenderToTarget level.
	#jira UE-34544

Change 3087688 on 2016/08/12 by Marc.Audy

	Fix headshot crash when tearing down physics when not registered
	#jira UE-32935

Change 3087615 on 2016/08/12 by Ben.Woodhouse

	Fix for crash in shadowsetup when frustum is invalid
	#jira UE-33014

Change 3087607 on 2016/08/12 by Max.Chen

	Sequencer: Fix Import/Export FBX

	- Import FBX now maps arbitrary float properties as well as the transform
	- Import/Export FBX now consistently operates on selected nodes or all nodes
	- Fixed exported node names so that they're consistent with Sequencer node names

	#jira UETOOL-534

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

	Add HUAWEI_Mali device model recognition for Vulkan
	#jira UE-34610
	#ue4
	#android

Change 3087529 on 2016/08/12 by Jurre.deBaare

	Fix for crash when start index != 0 and sampling at a different rate
	#jira UE-34637

Change 3087519 on 2016/08/12 by Ben.Marsh

	Pass the -ignorejunk flag on to child UBT instance when running a clean.

Change 3087455 on 2016/08/12 by Jurre.deBaare

	Alembic importer plugin needs proper logo
	#fix Replaced icon with inverted official Alembic logo
	#jira UE-34474

Change 3087360 on 2016/08/12 by Ben.Marsh

	Print out the UBT command line before running it, to help diagnose -ignorejunk problem.

Change 3087285 on 2016/08/12 by Lina.Halper

	- Add which animation it fails to compress
	- Make sure it doesn't go in there unless you have skeleton

	#jira: UE-34490

Change 3087237 on 2016/08/12 by Alex.Delesky

	#jira UE-34453 - Fixed an issue where a cast to find specific thumbnail scene info was being erroneously applied to the skeletal mesh thumbnail scene instead of the material thumbnail scene.

Change 3087215 on 2016/08/12 by danny.bouimad

	#jira UE-29618 updated QA-AnimProfiles again...

Change 3087212 on 2016/08/12 by Danny.Bouimad

	#jira UE-29618 updated TM-PhysicalAnimProfiles again

Change 3087200 on 2016/08/12 by Robert.Manuszewski

	Fix for potential deadlock when a worker thread crashes caused by critical section lock in FOutputDeviceRedirector. The engine will no longer attempt to flush log messages in CheckRenderingThreadHealth if a critical error has already occured. Crash handlers flush log anyway.

	#jira UE-34373

Change 3087188 on 2016/08/12 by Matthew.Griffin

	Added SignExecutables Option to installed build script, which defaults to false and means most people won't have to pass -nosign anymore
	Added HostPlatformsOnly Option to installed build script as a way to easily make a build with only your current platform, without having to disable every other platform manually

Change 3087160 on 2016/08/12 by Ben.Marsh

	Propagate the -ignorejunk option when we're building UHT as a child process in UBT.

Change 3087148 on 2016/08/12 by Ben.Marsh

	Fix sample build failure due to intermediate headers being deleted from engine folder. Some modules only have *private* UObject classes which aren't included in the editor zip. UBT detects that there are no longer and UObject classes and deletes the intermediate folder, causing BuildGraph to fail when it detects the change.

Change 3087143 on 2016/08/12 by Danny.Bouimad

	#jira UE-29618 updated QA-AnimProfiles and SK_Mannequin_PhysAssetTest to include constaint profiles for switching, removed old map in wrong folder.

Change 3087140 on 2016/08/12 by Steve.Robb

	GitHub 2256 : Update UnrealCodeAnalyzer.Build.cs

	I have no evidence that this actually fixes anything, but it doesn't harm anything to add it...

	#jira UE-29286

Change 3087139 on 2016/08/12 by Steve.Robb

	Failed link actions during a hot reload now output a 'failed.hotreload' file in the destination folder to indicate that another link attempt is needed.
	This is because we can't distinguish between a successful compile with a failed link action, and a compile with no changes which requires no new module.

	#jira UE-31575

Change 3087107 on 2016/08/12 by Jurre.deBaare

	Alembic Import with empty first frame will cause the editor to crash
	#jira UE-34515
	#fix Reject empty or invalid frames and remove them from the object, output messages are generated for such frames/objects
	#misc added a static const value indicating the first frame instead of hardcoded 0 array accesors
	#misc check condition fix in Runnable
	#misc log now adds new page named after the imported Alembic file

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

	Fixed: Corrupted level package on loading cooked content
	#jira UE-34591

Change 3087063 on 2016/08/12 by James.Cobbett

	#jira UE-29618 Submitting test assets for Alembic Importer

Change 3087048 on 2016/08/12 by Matthew.Griffin

	Changed Launcher Samples to create aggregate from property to avoid error in preflights
	Only notify about Launcher Samples trigger in non-preflight builds

Change 3086985 on 2016/08/12 by Maciej.Mroz

	#jira UE-34372 [CrashReport] UE4Editor_CoreUObject!StaticAllocateObject() [uobjectglobals.cpp:2102]

	Redone cl#3083825 from Dev-Blueprints

Change 3086960 on 2016/08/12 by Matthew.Griffin

	Prevent Build DDC command from making DDC for platforms that aren't supported by project
	#jira UEB-698

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

	Fixed: Sub-level layers do not show up in Layers tab when loaded as a part of world composition
	#jira UE-18291

Change 3086904 on 2016/08/11 by Lina.Halper

	Reverting the ensure as raw curve track != compressed because it doesn't go to compressed if the value doesn't have anything more than >0.f

	#jira: UE-34570

Change 3086891 on 2016/08/11 by Lina.Halper

	DUPEFIX: CL 3086544 from Michael Noland

	Paper2D: Fixed a crash when mutating grouped sprite components at runtime, and cleaned up how collision rendering is done for grouped sprite components addressing some other issues as well
	#jira UE-34223
	#tests (from Michael N) Tested with repro project from JIRA, as well as adding/removing instances in the editor and with some sprites in the group having collision and others not, clearing collision on the component itself, etc...
	#tests (from Lina H) started the test project from JIRA and PIE, and no crash.

Change 3086837 on 2016/08/11 by Nick.Whiting

	Modifying IsInGameThread() checks in Oculus positional tracking code to be !IsInActualRenderingThread().  This allows skel controls to use orientation and position with parallel animation

	#jira UE-32564

Change 3086797 on 2016/08/11 by Dmitry.Rekman

	Linux: fix crash on editor exit (UE-30795, UE-7519).

	- FText (stored in ZoomLevels static array) was being destructed during the global destructor phase, and it cannot do that.

	#jira UE-30795

Change 3086735 on 2016/08/11 by Richard.TalbotWatkin

	Fixed crash due to entries in the BlueprintCreatedComponents list not being present in the OwnerComponents list in RerunConstructionScript following an Undo. Handled this case explicitly now.
	#jira UE-34265 - Undo, Redo, Undoing a blueprint actor Replace action causes a crash

Change 3086726 on 2016/08/11 by Jeff.Fisher

	UEVR-13 PSVR: TCR Requirements : 2DVR
	2DVR is a way to show a static image on PlayStation VR temporarily, for example as a loading screen.
	-Implemented 2DVR reprojection mode, exposed Show2DVRSplashScreen and Hide2DVRSplashScreen to blueprint through a new MorpheusFunctionLibrary.
	#jira UEVR-13
	#review-3086004 @chad.taylor @nick.whiting

Change 3086652 on 2016/08/11 by Dmitry.Rekman

	Linux: re-enable ICU (UE-34012).

	- Built static libs against libc++; disabled using dynamic ones.
	- Fixes lack of rich text formatting.

	#jira UE-34012

Change 3086648 on 2016/08/11 by Nick.Whiting

	Adding support for getting the HMD Device name from code / blueprints

	#jira UE-31785

Change 3086589 on 2016/08/11 by Chad.Taylor

	Fixing Vive resolution on packaged builds

	#jira UE-34535

Change 3086568 on 2016/08/11 by Matt.Kuhlenschmidt

	Fix skeletal mesh LODs not being imported correctly.  All meshes were imported to the base LOD instead.

	#jira UE-34397

Change 3086529 on 2016/08/11 by Marc.Audy

	Don't build UE4Game against shipping physx/apex libs causing module mismatches for binary code projects linked against profile libs (which is the default)
	#jira UE-34287

Change 3086376 on 2016/08/11 by Peter.Sauerbrei

	remove cached file handle from iOS and Android to save memory during loads
	#jira UE-31720

Change 3086369 on 2016/08/11 by Matt.Kuhlenschmidt

	Guard against crash with corrupted editor layouts

	#jira UE-34364

Change 3086345 on 2016/08/11 by Dan.Oconnor

	ULevel::Actors is now a TArray instead of a TTransArray. It has been misusing TTransArray for years (by both serializing individual elements and the entire array, TTransArray logic in EditorTransaction.cpp appears to be completely rotten, broken for a very long time)
	#jira UE-34380

Change 3086272 on 2016/08/11 by Cody.Albert

	Updating First Person templates to fix cook errors

	#jira UE-22726

Change 3086259 on 2016/08/11 by Nick.Whiting

	Added a project setting bStartInVR, which allows projects to specify that they want to default to starting in VR mode, regardless of whether the -vr commandline is used

	#jira UE-31617

Change 3086202 on 2016/08/11 by Marcus.Wassmer

	Duplicate 3086176 to fix broken shaderpipelines on PS4
	#jira UE-34540

Change 3086080 on 2016/08/11 by mason.seay

	Test animbp for sub anim instances

	#jira UE-29618

Change 3086062 on 2016/08/11 by Tom.Looman

	Migrate from //depot/usr/ into Release-4.13 for VR Template.

	#jira ue-34533

Change 3086032 on 2016/08/11 by Mike.Beach

	Bolstering FSceneComponentDetails::MakeTransformDetails()'s null handling (there was one conditional that was missing it).

	#jira UE-34350

Change 3086025 on 2016/08/11 by Olaf.Piesche

	#jira UE-32058

	Replicating fix from 3050352

Change 3085969 on 2016/08/11 by John.Pollard

	CIS fix

	#jira UE-30516

Change 3085819 on 2016/08/11 by Jurre.deBaare

	bForceOneSmoothingGroup not working for skeletal meshes
	#fix Added check for forced smoothing group and calculate normals accordingly
	#misc Spotted some non-referenced const TArrays being passed to CalculateTangents
	#jira UE-34555

Change 3085799 on 2016/08/11 by Ben.Marsh

	Pass the -ignorejunk option to UBT when generating code documentation. Since the UE_SDKS_ROOT environment variable is removed (because we don't want documentation for confidential platforms), UBT was deleting Linux target platform DLLs and causing an error when generating blueprint documentation when the files were missing.

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

	Fix for circular initialization of a singleton on android causing hang when using cook on the fly.
	#jira UE-34442

Change 3085717 on 2016/08/11 by Dmitry.Rekman

	Linux: better messaging around Steam initialization (UE-32052).

	- Also added a standalone test.

	#jira UE-32052

Change 3085715 on 2016/08/11 by Chris.Bunner

	Dropped check to an ensure as there's existing handling for invalid assets in that case.
	#jira UE-23902

Change 3085714 on 2016/08/11 by Olaf.Piesche

	#jira UE-30398

	Fix offset added to particle collision locations.

	 Replicated from 3084645 in Dev-Rendering

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

	Allocate OptionalShadowDepthColorSurface to match DepthStencil dimensions (allow up to 4 resolutions for now)
	#jira UE-33840
	#ue4
	#android
	#ios
	#opengl

Change 3085711 on 2016/08/11 by Olaf.Piesche

	#jira UE-34106
	#jira UE-32784
	#jira UE-31198

	Reset vertex factories on mesh emitters if mesh has been reimported (if mesh package is dirty)

	Replicated from 3083909 in Dev-Rendering

Change 3085707 on 2016/08/11 by Matthew.Griffin

	Duplicated CL#3081374 from Dev-Build and another fix to the SlateTextureAtlasInterface issue

Change 3085656 on 2016/08/11 by Marc.Audy

	PR#2620. Make sure the component has its position updated before using it to spawn the child actor (Contributed by pampersrocker)
	#jira UE-32418
	#jira UE-33617

Change 3085641 on 2016/08/11 by Lina.Halper

	Fixed  invalid compressed track data

	- need a better solution and added ticket for 4.14 - UE-34547

	#jira: UE-34077

Change 3085606 on 2016/08/11 by Max.Preussner

	Media: Attempt to fix Crash after Clearing Sound Wave Asset and Deleting Media Player from Content Browser (UE-34381)

	#jira UE-34381

Change 3085568 on 2016/08/11 by Maciej.Mroz

	#jira UE-34436 Ensures when copy/pasting linked anim bp nodes

	FGraphObjectTextFactory doesn't call compilation (it is called later by FBlueprintEditor::PasteNodesHere, when all nodes are pasted). CallFunction can be pasted even when it's function doesn't exist. The function could be created from a CustomEvent node, that was also pasted (so it wasn't compiled yet).

Change 3085532 on 2016/08/11 by Peter.Sauerbrei

	fix for remote tool chain build issues with items not being built because they were already there and up to date, but are then deleted by the file sync because they are missing on the PC
	#jira UE-30335

Change 3085528 on 2016/08/11 by Max.Chen

	Sequence Recorder: Fix crash when actor class to record is null.

	#jira UE-34543

Change 3085418 on 2016/08/11 by Maciej.Mroz

	#jira UE-33883 Packaging with Nativize Blueprint Assets Causes Uninitialized Defaults

	Redone cl#3084313 from Dev-Blueprints

Change 3085395 on 2016/08/11 by John.Pollard

	Don't allow hot-reloading if we're running PIE instances

	#jira UE-30516

Change 3085377 on 2016/08/11 by Tom.Looman

	Added StarterMap (WIP) to resolve JIRA.

	#jira ue-34311

Change 3085364 on 2016/08/11 by Ben.Woodhouse

	Remove the Shadows of Editor-Hidden Objects showflag. This feature hasn't worked for a long time, and making it work again would add additional complexity and performance overhead which we don't want to incur.

	#jira UE-28561

Change 3085341 on 2016/08/11 by Dmitriy.Dyomin

	Fixed: Creating Launcher Profile does not always shows all project available maps
	#jira UE-33765

Change 3085336 on 2016/08/11 by Andrew.Rodham

	Sequencer: Runtime instances are no longer updated when bluprints are recompiled

	This code was not actually necessary to fix UE-31635 since we explicitly update the object binding from the level sequence editor spawn register

	#jira UE-34499

Change 3085332 on 2016/08/11 by Dmitriy.Dyomin

	Fixed: UInstancedStaticMeshComponent does not keep its instances on duplication
	#jira UE-26868

Change 3085331 on 2016/08/11 by Ben.Woodhouse

	Fix for threading related crash with precomputed lighting volumes
	#jira UE-34531

Change 3085323 on 2016/08/11 by Allan.Bentham

	Remove android specific vulkan hack to recreate depth buffer's imageview.
	#jira UE-33593
	#jira UE-33336

Change 3085313 on 2016/08/11 by Thomas.Sarkanen

	StopRecordingAnimation now uses the same maing logic as RecordAnimation

	This prevents inconsisten behaviour between record and stop record commands

	#jira UE-34498 - User is not able to use StopRecordingAnimation command on a single actor

Change 3085301 on 2016/08/11 by Allan.Bentham

	Only allow gaussian DoF on mobile. Disable DoF for all other types.
	#jira UE-34217

Change 3085292 on 2016/08/11 by Thomas.Sarkanen

	Revert change to force shipping dlls in shipping builds

	#jira UE-34287 - Crash when opening a packaged code project for Win64 in shipping configuration

Change 3085291 on 2016/08/11 by Matthew.Griffin

	Added nodes for Linux Editor, DDC and installed build
	Changed existing Linux nodes to use host platform version of UHT and removed unnecessary tagging of UHT products

Change 3084973 on 2016/08/10 by Jeff.Campeau

	Use relative settings for ShooterGame manifest
	Package creation checks Xbox One target settings in Engine instead of Game config

	#jira UE-33808

Change 3084932 on 2016/08/10 by patrickr.donovan

	#jira UE-29618
	SteamVR related test content updates- QA_SteamMoCo -> MotionController Components, fixing up button presses, reworking bounds drawing.

Change 3084886 on 2016/08/10 by Daniel.Wright

	Reverted cl 2938543 "Lightmass now respects owner bHidden, and bCastHiddenShadow" because it did not have backwards compatibility so breaks content using hidden light cards
	#jira UE-33238

Change 3084878 on 2016/08/10 by Jeff.Campeau

	UFE launch command is generated with all devices requested instead of just the first.

	#jira UE-34302

Change 3084860 on 2016/08/10 by Dmitry.Rekman

	Fix CrashReportClient crashing on start (UE-32976, UE-34451).

	- Add spaces around -abslog=foo.log parameter to prevent unrelated parameters being concatenated (and missed) sometimes.

	#jira UE-32976

Change 3084756 on 2016/08/10 by Dmitry.Rekman

	Linux: clean-up compiler settings logic (UE-22715).

	- Includes parts of pull request #1704 by zaps166.
	- Disables exceptions in most builds.

	#jira UE-22715

Change 3084679 on 2016/08/10 by Richard.TalbotWatkin

	Duplicated from Dev-Editor, CL 3084475

	Fixed issue with ModelComponent replication in client/server PIE if BSP is rebuilt. ModelComponent now implements IsNameStableForNetworking and always returns true, as a level's model components will never be rebuilt during a game session. Brush poly normals are now only fixed up in Editor builds.
	#jira UE-34391 - No run animation on client that is not focused when running 2 player and dedicated server

Change 3084614 on 2016/08/10 by Daniel.Wright

	Scene capture alpha is now inverted to match DrawMaterialToRenderTarget, and to allow compositing with existing render target contents
	Added CompositeMode to SceneCapture2D, which can be used to addively accumulate or composite instead of the default overwrite behavior
	Added bCaptureOnMovement to SceneCapture, which can be disabled so the only source of scene capturing is a manual capture by calling CaptureScene()
	#jira UE-34321

Change 3084607 on 2016/08/10 by Jeremiah.Waldron

	Adding AlreadyOwned to EInAppPurchaseState and utilizing this enumeration for GooglePlay IAP
	Also changing IOS store to return AlreadyOwned when SKErrorClientInvalid is received. This seems to be the correct behavior according to: http://stackoverflow.com/questions/8833970/when-does-skerrorclientinvalid-occur

	Relates to:
	#jira UE-34283

Change 3084586 on 2016/08/10 by Jeff.Campeau

	Chunks don't assume they're done downloading at 100%.

	#jira UE-34386

Change 3084552 on 2016/08/10 by Lina.Halper

	Fix GetWorldFromContextObject to be used for another thread safer

	: Guard to modify static variabls by another thread

	#jira: UE-34416

Change 3084551 on 2016/08/10 by Mitchell.Wilson

	Changed AutoPossessPlayer to Disabled in ThirdPersonCharacter BP
	Changed AutoPossessPlayer to Player0 on the ThirdPersonCharacter Instance in the level.
	#jira UE-32855

Change 3084535 on 2016/08/10 by Mike.Beach

	Fix to MathExpression node - recent modifications caused subte changes in behavior (now back in line with how it worked before). Identifiers (variable names) are back to allowing numerical characters, and we properly detect the terminating 0 at the end of a name/string. Also, reserving symbols that currently aren't operators (as they used to be) so users don't start including them in identifier names.

	#jira UE-34378

Change 3084526 on 2016/08/10 by Jeff.Campeau

	Update XDK to August 2016

	#jira UEPLAT-1374

Change 3084471 on 2016/08/10 by John.Pollard

	Fix UE-34295: [CrashReport] Crash opening project on network drive - VCRUNTIME140!<Unknown>

	#jira UE-34295

Change 3084363 on 2016/08/10 by Marc.Audy

	Make stat soundcues/waves work correctly when spinning up new audio devices and switching focused viewport
	#jira UE-34101

Change 3084231 on 2016/08/10 by Michael.Trepka

	Fixed a problem with the search box in blueprint context menu not getting focus on Mac

	#jira UE-20884

Change 3084229 on 2016/08/10 by Dmitry.Rekman

	Linux: remove hardcoded staged files (UE-24594).

	#jira UE-24594

Change 3084215 on 2016/08/10 by Chris.Bunner

	Moved StationaryLightOverlap vis mode drawing to later in the frame to avoid translucency in the view.
	#jira UE-31936

Change 3084052 on 2016/08/10 by Jurre.deBaare

	Alembic skeletal mesh importer does not calculate correct smoothing groups
	#fix follow same routine as regular smoothing group/normal calculation
	#jira UE-34493

Change 3084029 on 2016/08/10 by Phillip.Kavan

	[UE-34458] Fix a crash that can occur while instancing an uncompiled Blueprint class with a modified array property in the native parent class default object.

	Mirrored from //UE4/Dev-Blueprints (CL# 3082839).

	#jira UE-34458

Change 3084027 on 2016/08/10 by Ben.Woodhouse

	Fix for crash when applying BSP materials
	This was caused by the renderthread dereferencing a reference to a ModelElement object which had previously been destroyed on the game thread.

	The reference to the ModelElement was solely used to dereference the irrelevant light GUIDs. The fix involves removing the reference and keeping a local copy of this array which is owned by the proxy. This is consistent with other proxies, e.g. Landscape, StaticMesh.
	#jira UE-31460

Change 3083981 on 2016/08/10 by Matthew.Griffin

	Set Localization branch for Localise command to release version when running in the Release Branch
	#jira UE-34471

Change 3083970 on 2016/08/10 by Max.Preussner

	PS4Media: Fixed Media player does not play the 2nd item in the playlist on PS4 (UE-33481)

	#jira UE-33481

Change 3083918 on 2016/08/10 by Matthew.Griffin

	Exclude UBT generated files from the installed build

Change 3083910 on 2016/08/10 by Matt.Kuhlenschmidt

	Fix crash using "Use Selected asset from Content Browser" for font materials when the selected asset is not a material

	#jira UE-34360

Change 3083890 on 2016/08/10 by Matthew.Griffin

	Converted Launcher Samples to a full list of sample nodes with individual cook platform settings. Changed unzip nodes to only rely on the produced zip files so that it doesn't copy anything from Temp Storage.
	Changed BuildLauncherSample command to take the root publish dir and build label so that it can create paths and do copies. Also removed code checking whether monolithic platforms are specified for the project.
	#jira UE-34401

Change 3083873 on 2016/08/10 by Dmitry.Rekman

	CMakefileGenerator: Fix compilation on .NET 4.0 and below (UE-34478).

	#jira UE-34478

Change 3083862 on 2016/08/10 by Mitchell.Wilson

	Rebuilt lighting on Advanced_Lighting level in Samples Content
	#jira UE-34383

Change 3083792 on 2016/08/10 by Benn.Gallagher

	PR #2671: Fix sub instance curve values. (Contributed by tmiv)
	PR #2668: Sub inst post anim fix (Contributed by tmiv)
	#jira UE-34162
	#jira UE-34121

Change 3083775 on 2016/08/10 by Kevin.Rushin

	QAGame - Updating VRLatency Testmap, Can freelook
	#jira UE-29618

Change 3083771 on 2016/08/10 by Robert.Manuszewski

	Don't attempt to construct CDOs when assembling GC token stream while exiting as a result of an error in PreInit.

	#jira UE-34371

Change 3083742 on 2016/08/10 by Lee.Clark

	4.13 - PS4 - Fix memory allocation sizes

	#jira UE-33270

Change 3083732 on 2016/08/10 by Ben.Marsh

	Fix all nodes being exported to JSON file for builder configuration, rather than just those behind the current trigger.

Change 3083690 on 2016/08/10 by Dmitriy.Dyomin

	Fixed: Foliage instances are not included when exporting a scene to FBX
	#jira UE-34214

Change 3083654 on 2016/08/10 by Keith.Judge

	Fix analysis warnings. Simple change from Release() to SAFE_RELEASE().

	#jira UE-23059

Change 3083646 on 2016/08/10 by Thomas.Sarkanen

	Use shipping PhysX libs for installed builds

	Copy fix from UE4Game.Target.cs to apply to all packaged games

	#jira UE-34287 - Crash when opening a packaged code project for Win64 in shipping configuration

Change 3083527 on 2016/08/10 by Dmitriy.Dyomin

	Fixed: Warning upon Undo/redo-ing of sculpting the landscape
	#jira UE-34443

Change 3083502 on 2016/08/10 by Dmitriy.Dyomin

	Fixed: World Composition origin shifting does not account for shifting the Dynamic Directional Light shadow casting
	#jira UE-34417

Change 3083349 on 2016/08/09 by Daniel.Wright

	Clamped roughness for simple lights to avoid NaNs from D_GGX with a very narrow roughness range including 0.00316, but not 0
	#jira UE-31181

Change 3083167 on 2016/08/09 by Chad.Taylor

	Null deref crash fix

	#jira UE-33830

Change 3083144 on 2016/08/09 by Zabir.Hoque

	Removed bDeviceRemoved flag from RHI and issue erroring hault right away. This allows finding the error reason much closer to the callsite.

	#jira UE-32980

Change 3083136 on 2016/08/09 by Chad.Taylor

	Stripping out egregious log spam

	#jira UE-34181

Change 3083116 on 2016/08/09 by John.Billon

	Defaulting r.D3D.RemoveUnusedInterpolators to on.
	#Jira UE-34461

Change 3083114 on 2016/08/09 by John.Billon

	Fixing static analysis warning in NullRHI.
	#Jira UE-34462

Change 3083070 on 2016/08/09 by Dmitry.Rekman

	PR #2516: CMake improvements and fixes (UE-22233, UE-32136).

	- Contributed by Nihlus.
	- Contains PR #1668 by mgerhardy

	Summary of changes (from PR):

	- Fixed an issue where CMake build files would contain invalid targets
	- Fixed an issue where CMake build files would generate without code completion data, making them useless in IDEs such as CLion.
	- Fixed an issue where invalid target platforms could fall through and cause issues with the file generation.
	- Improved code readability throughout the generator. Can still use some more polish.
	- Improved CMakeFile generation performance by approximately 25%. Before this patch, generating a CMakeFiles.txt for a small-ish project took 20s - by replacing most string concatenation with StringBuilders, it now takes approximately 15s. This should be more apparent in larger projects.
	- Improved commenting throughout the generator. As with readability, can still use some more polish.
	- Removed unused using statements.
	- Added the inclusion of a fake executable target to the CMake files. Some IDEs do not recognize header files that are not part of either an executable or a library. While this target will not build, it is neccesary in CLion.
	- Replaced all instances of String.Format with string interpolation expressions from C#6. This greatly improves readability, and helped me catch some bugs with the build targets.

	#jira UE-22233

Change 3082999 on 2016/08/09 by Jeremiah.Waldron

	Actually checking the consumePurchase response in the GooglePlayStoreHelper for purchases
	#jira UE-34457

Change 3082993 on 2016/08/09 by mason.seay

	Fixed level BP error and updated Reverb asset

	#jira UE-29618

Change 3082981 on 2016/08/09 by Peter.Sauerbrei

	disable roughness calculation for iOS metal
	#jira UE-31815

Change 3082912 on 2016/08/09 by Chris.Babcock

	Use FMallocAnsi instead of FMallocBinned on Android ARM64 for now
	#jira UE-34432
	#ue4
	#android

Change 3082875 on 2016/08/09 by Chris.Bunner

	Lowered verbosity of mesh build warning when using MikkTSpace.
	#jira UE-23903

Change 3082867 on 2016/08/09 by Trung.Le

	VREditor: Foliage reapply tool shouldn't auto reapply brush settings without trigger presses
	#jira UE-34227

Change 3082818 on 2016/08/09 by Mike.Beach

	Backing out CL 3081020, as it was causing issues with duplicated Blueprint actors (triggering an assert).

	#jira UE-34430

Change 3082794 on 2016/08/09 by Lukasz.Furman

	fixed gameplay debugger extensions activating during simulate in editor
	#jira UE-33343

Change 3082760 on 2016/08/09 by Jamie.Dale

	Scene viewports are now centered when re-entering windowed mode

	#jira UE-32842

Change 3082744 on 2016/08/09 by Mitchell.Wilson

	Resaving assets to resolve empty engine version warnings.
	#jira UE-29746

Change 3082728 on 2016/08/09 by Ben.Marsh

	BuildGraph: Use separate arguments to indicate that a trigger should be skipped entirely and its nodes should be executed as part of the parent trigger (-skiptrigger=X+Y, -skiptriggers) versus when we want to execute ONLY nodes behind a certain trigger. Fixes cases where triggering sample builds before the parent job finishes would attempt to execute the remaining nodes belonging to the parent trigger.

	#jira UE-34329

Change 3082686 on 2016/08/09 by Marc.Audy

	If the GameMode is not carried over as part of a seamless travel create it.
	#jira UE-25569

Change 3082663 on 2016/08/09 by John.Billon

	Fixed SubUVAnimation asset crash when texture source is cleared.
	#Jira UE-34231

Change 3082650 on 2016/08/09 by John.Billon

	Changed an ensure the NullRHI dealing with memory allocation to be a log message.
	#Jira UE-32362

Change 3082644 on 2016/08/09 by Maciej.Mroz

	#jira UE-34240 Match 3 nativization failure

	Redone cl3082121 from Dev-Blueprints

Change 3082633 on 2016/08/09 by Maciej.Mroz

	#jira UE-34374 [CrashReport] UE4Editor_Engine!UEdGraphNode::GetGraph() [edgraphnode.cpp:172]

	Redone cl3082414 from Dev-Blueprints

Change 3082606 on 2016/08/09 by Michael.Trepka

	Changed OuputGamutMappingMatrix in TonemapCommon.usf so it doesn't create a temporary variable to work around a bug in Intel's Mac OpenGL shader compiler.

	#jira UE-34276

Change 3082579 on 2016/08/09 by Benn.Gallagher

	CIS fix, missed removing a few #ifs
	#jira UE-29180

Change 3082525 on 2016/08/09 by Tom.Looman

	Removed Android from supported platforms in VR Template.

	#jira UE-34189

Change 3082523 on 2016/08/09 by Tom.Looman

	Improved HMDLocomotionPawn teleportation (UX of location and material reability/behavior)
	Fixed typo in level text.

	#JIRA UE-34422

Change 3082504 on 2016/08/09 by Jurre.deBaare

	Crash importing alembic asset over itself after saving it in Content Browser
	#fix Trivial nullptr + isValid fix
	#jira UE-34418

Change 3082433 on 2016/08/09 by Tom.Looman

	Updated list of supported platforms.

	#jira UE-34189

Change 3082423 on 2016/08/09 by Mitchell.Wilson

	Resaving levels to resolve MikkTSpace warnings
	Updating collision on SM_Floor_Round
	#jira UE-30786

Change 3082361 on 2016/08/09 by Keith.Judge

	Xbox One - Fix a controller disconnection crash.

	- This would only reproduce in VS2015 Update 3, and only when the controller is connected right from the start, not when a pad is plugged in later, so it seems copying the array of ^ pointers wasn't incrementing the refcounts correctly and causing things to be deleted too early.
	- Changed it to copy each connected pad object one at a time, which maintains the correct refcount.
	- Possibly a VS2015 Update 3 bug.

	#jira UE-33955

Change 3082341 on 2016/08/09 by Mitchell.Wilson

	Reimporting SM_GodRay_Plane
	Resaving levels to resolve MikkTSpace warnings
	Resaving multiple materials to resolve warnings
	#jira UE-34212

Change 3082313 on 2016/08/09 by Matthew.Griffin

	Only append BuildLabel to the publish dir if it's been set to something (end up with bad path for local build)

Change 3082294 on 2016/08/09 by Jurre.deBaare

	Crash when importing an Alembic file with Materials as a different asset type than one that already exists
	#fix Ensure that we have a valid material to assign to the assets
	#jira UE-34377

Change 3082291 on 2016/08/09 by Jurre.deBaare

	Unable to save Alembic asset with materials after importing more than once
	#fix Make sure we delete referenced transient materials if they are not used
	#jira UE-34400

Change 3082290 on 2016/08/09 by Jurre.deBaare

	Crash importing abc file as Geometry Cache over another used in level with World Normal view mode on
	#fix Make sure we always update the GeometryCacheComponents, will change this set-up in 4.14
	#jira UE-34392

Change 3082274 on 2016/08/09 by Benn.Gallagher

	Moved FABRIK debug draw out of the native node into the graph node. It will no longer draw in-game, only in Persona previews. Debug drawing is not supported outside of the game thread currently so we can't do it in EvaluateBoneTransforms.
	#jira UE-29780

Change 3082273 on 2016/08/09 by Benn.Gallagher

	Improved anim dynamics chain handling with LODs, now a chain will continue to simulate any bodies that can be reached from the root body instead of disabling the whole chain
	#jira UE-30827

Change 3082270 on 2016/08/09 by Benn.Gallagher

	Moved source indices for active transitions out of editor only so we can identify them at runtime. This allows the transition ratio anim getter function to get the correct elapsed time instead of trying to infer it which is incorrect when the transition is interuppted.
	#jira UE-29180

Change 3082257 on 2016/08/09 by Jurre.deBaare

	Auto align floor mesh does not work in Persona
	#fix Readded functionality for the auto alignment :)
	#jira UE-34404

Change 3082239 on 2016/08/09 by Peter.Sauerbrei

	make sure IPP and supporting dlls are all 64-bit
	#jira UE-34408

Change 3082225 on 2016/08/09 by Mitchell.Wilson

	Removing r.Streaming.PoolSize from DefaultEngine.ini, adding DefaultScalability.ini to set r.StreamingPoolSize
	Reimporting SM_GodRay_Plane
	Saving all levels to resolve MikkTSpace warnings.
	#jira UE-30787

Change 3082222 on 2016/08/09 by Rolando.Caloca

	UE4.13 - Fix crash on opengl3
	- Load proper shader map depending on feature level
	- int interpolators require nointerpolation modifier
	#jira UE-33879

Change 3082221 on 2016/08/09 by Benn.Gallagher

	Fix for stack overflow traversing subinstances for duplicated names when there is a circular loop
	#jira UE-34384

Change 3082179 on 2016/08/09 by Ben.Woodhouse

	Fix for default subsurface color for two sided foliage, so it defaults to black instead of white. This requires some additional logic because we don't want to change the default color for other lighting models which use the subsurface material input (e.g. subsurface, skin, hair etc). Bump the shader version so the change is correctly propagated to existing material shaders.
	#jira UE-31461

Change 3082170 on 2016/08/09 by Graeme.Thornton

	Manual copy of CL 3078836 from Dev-Core to Release-4.13

	Silently skip creating exports from a package where the outer is also an export and has been filtered at runtime during loading

	#jira UE-33909

Change 3082169 on 2016/08/09 by Graeme.Thornton

	Make FLauncherTasks have unique names so we don't end up with stat name collisions

	#jira UE-33849

Change 3082163 on 2016/08/09 by Matthew.Griffin

	Include Linux Build Tools in Windows Installed Build so that Crash Reporter can be staged from receipts
	Added Checks for files that might not exist when creating Installed Build from Github etc.
	Tag the published installed build zips
	#jira UE-34249

Change 3082139 on 2016/08/09 by Ben.Marsh

	BuildGraph: Allow writing a schema without passing a script in.

Change 3082109 on 2016/08/09 by Thomas.Sarkanen

	Fixed blendspaces producing bad data when degenerate spaces are present

	Delaunay triangulations that fail now revert to simple degenerate tesselation. This allows us to build a valid set of grid samples even with degenerate triangulations, so no need for any runtime modifications.

	#jira UE-34308 - 2DAimOffset mesh skews across viewport when anim sequence is added to offest graph

Change 3082080 on 2016/08/09 by Matthew.Griffin

	Added notifications for available triggers

Change 3082054 on 2016/08/09 by Allan.Bentham

	Quality level override changes to high QL are now correctly picked up.
	#jira UE-22812

Change 3082049 on 2016/08/09 by Allan.Bentham

	Update shaders when mobile preview device is changed.
	#jira UE-22810

Change 3081866 on 2016/08/09 by Max.Chen

	Fbx Export: Fix build.

	#jira UETOOL-750

Change 3081863 on 2016/08/09 by Max.Chen

	Fbx Export: Fix level sequence fbx export.

	- Fix 3d transform track export so that it does the correct flipping for translation and rotation curves.
	- Fix setting  rich curve tangents and interpolation modes.
	- Fix camera focal length export.

	#jira UETOOL-750

Change 3081823 on 2016/08/08 by Dmitriy.Dyomin

	Fixed: Crash when simulating in editor with a landscape actor selected
	#jira UE-34367
	#coderview Gareth.Martin

Change 3081647 on 2016/08/08 by Chad.Taylor

	OpenVR changed to work with our FSteamVRHMD::VRGetGenericInterfaceFn retrieved from GetDllExport

	#jira UE-34352

Change 3081645 on 2016/08/08 by Zak.Middleton

	#ue4 - Fix anim root motion applying too much velocity to CharacterMovement when framerate is low causing moves to be substepped, or when movement mode changes during root motion playback.

	#jira UE-30178

Change 3081639 on 2016/08/08 by Tyler.Cole

	Update build scripts for WEX MCP in UE4 Release-4.13 stream.

	#jira NONE-0

Change 3081616 on 2016/08/08 by Jeff.Fisher

	UEVR-13 PSVR: TCR Requirements
	-2dvr support "stereo on" and "stereo off" now switch ps4 from 2d to vr mode.
	-A new ini setting for morpheus bStartInVR has been added, it defaults to true.
	#jira UEVR-13
	#review-3081284 @chad.taylor @nick.whiting

Change 3081597 on 2016/08/08 by Tyler.Cole

	Update build scripts for Ocean MCP in UE4 Release-4.13 stream.

	#jira NONE-0

Change 3081476 on 2016/08/08 by Tyler.Cole

	Update build script for UE4 Release-4.13 stream Fortnite MCP.

	#jira NONE-0

Change 3081397 on 2016/08/08 by Josh.Adams

	- Fixing more linux case issues in UT
	#jira ue-33478

Change 3081391 on 2016/08/08 by Mitchell.Wilson

	Removed ConstructorHelpers from TP_2DSideScrollerCharacter.cpp. Added Run and Idle animations to BP child of 2dSideScrollerCharacter in 2DSideScrollerExampleMap
	#jira UE-33843

Change 3081383 on 2016/08/08 by Aaron.McLeran

	#jira UE-34081

	Implementing CL 3076637 into 4.13

	#tests run a procedural sound wave object test

Change 3081337 on 2016/08/08 by Aaron.McLeran

	#jira UE-34390 CLONE - CRASH: FXAudio2SoundSource::GetChannelVolumes - Silent Crash during gameplay

	- OR-26580
	- Implementing CL 3071258 to 3.13

	#tests ran paragon with change, no crashes

Change 3081335 on 2016/08/08 by Max.Preussner

	WmfMedia: Fixed memory leak in source resolver (UE-34385)

	#jira UE-34385

Change 3081320 on 2016/08/08 by Max.Preussner

	WmfMedia: Fixed typo (UE-32421)

	#jira UE-32421

Change 3081276 on 2016/08/08 by Mitchell.Wilson

	Resaving asset to resolve MikkTSpace warning.
	#jira UE-31116

Change 3081269 on 2016/08/08 by Dan.Oconnor

	Fix for name of blueprint changing when 'accept source' is used. Just caching the original name before unloading the blueprint
	#jira UE-34324

Change 3081052 on 2016/08/08 by Dan.Oconnor

	Making a change to test UE-34324
	#jira UE-34324

Change 3081026 on 2016/08/08 by Daniel.Wright

	Added a heightfield painting example to BlueprintRenderToTarget content example
	#jira UE-34323

Change 3081025 on 2016/08/08 by Daniel.Wright

	CreateRenderTarget2D uses a world context object as owner, allows use in a construction script
	#jira UE-34321

Change 3081023 on 2016/08/08 by Aaron.McLeran

	#jira UE-34325 Implementing 3080958 in 4.13

	- When a sound buffer is flushed from audio device manager and tries to stop sounds using a resource, was possible for the async header parse task to be in-flight, which would cause a crash
	- Fix is to bring back the code to call EnsureCompletion on tasks in the FreeResoruces function of the sound source object. This will potentially encure a slight perf increase when stopping a sound but audio engine is now going to run on a separate thread, so shouldn't have a game-thread impact in non-editor builds.

	#tests ran repro case described in bug several times without crashing (was 100% repro)

Change 3081020 on 2016/08/08 by Dan.Oconnor

	Revised fix for UMG widgets with instanced properties resetting due to ImportText not copying objects assigned to Instanced properties
	#jira UE-26310

Change 3081010 on 2016/08/08 by Dan.Oconnor

	Fix for losing root transform when recycling objects
	#jira UE-28398

Change 3080972 on 2016/08/08 by Mark.Satterthwaite

	Duplicate CL #3080684:
	Flush on close of writable files on Apple platforms - close doesn't guarantee to push outstanding writes to the disk, only to the kernel. They might not make it to the disk prior to program termination.
	#jira UE-21857

Change 3080971 on 2016/08/08 by Mark.Satterthwaite

	Workaround a macOS 10.12 Beta bug on some Metal drivers that can't initialise temporary/local variable arrays, only those that are marked threadgroup shared.
	#jira UE-34355

Change 3080923 on 2016/08/08 by Michael.Trepka

	When archiving on for Mac delete the dest icon if it exists before trying to call File.Move

	#jira UE-33304

Change 3080919 on 2016/08/08 by samuel.proctor

	Revised assets for Blueprint Debugging tests

	#jira UE-29618

Change 3080878 on 2016/08/08 by Ben.Marsh

	Fix sample build timeouts due to generating DDC using installed engine builds taking too long.

	* New version of build script was not copying the DDCUtils module from the NotForLicensees folder to the installed engine directory, so network DDC was not being used. Set it from an environment variable instead.
	* Generating the installed project PAK was not using the Compressed.ddp file included with the engine, but was looking for a legacy DDC.ddp file instead.

Change 3080849 on 2016/08/08 by Marc.Audy

	Always stop matinee sounds when jumping around, not just if the sound changed.
	#jira UE-31447

Change 3080843 on 2016/08/08 by Ben.Marsh

	BuildGraph: Fix compile error due to duplicated variable name.

Change 3080840 on 2016/08/08 by Max.Chen

	Fbx: Fix rich curve export being exported at the incorrect times when baked.

	#jira UETOOL-750

Change 3080824 on 2016/08/08 by Max.Chen

	Sequencer: Revert fix root component structure for level sequence actor.

	#jira UE-34354

Change 3080819 on 2016/08/08 by Chad.Taylor

	Merging Move and Vive haptic implementation from Dev-VR to Release-4.13

	#jira UE-27886

Change 3080818 on 2016/08/08 by Jurre.deBaare

	Crash when importing the same Alembic file but as a different Asset Type
	#fix Return the outer package of an imported asset, instead of InParent (which could be deleted/clean up if the import types differed)
	#misc Typo
	#jira UE-34293

Change 3080817 on 2016/08/08 by Jurre.deBaare

	Crash when importing an Alembic file with Materials if it already exists
	#fix Only create materials if they don't already exist
	#jira UE-34300

Change 3080814 on 2016/08/08 by Jurre.deBaare

	Crash when importing Alembic files as Skeletal Mesh
	#fix Set the NumVertices variable that was re-added :)
	#misc removed dead code
	#jira UE-34288

Change 3080813 on 2016/08/08 by Jurre.deBaare

	[CrashReport] UE4Editor_AlembicLibrary!AbcImporterUtilities::GenerateSmoothingGroupsIndices()
	#fix found in one of the reports messages that they were importing from 3DS, found that it exports the normals non-indiced but per-vertex, so now added expanding using the index buffer (also pre-emptively added it for UVs)
	#jira UE-34294

Change 3080797 on 2016/08/08 by Dmitriy.Dyomin

	Fix: Crash opening levels with landscape in them via the command console in standalone game
	#jira UE-34348

Change 3080784 on 2016/08/08 by Jamie.Dale

	We now keep the bulk data for stock engine fonts loaded to avoid attempting to load it on the render thread (from debug canvas rendering)

	#jira UE-34298

Change 3080734 on 2016/08/08 by Matthew.Griffin

	Made PDBs optional build products for CsCompile task and added .dll.mdb check for Mac Mono equivalent

Change 3080685 on 2016/08/08 by Peter.Sauerbrei

	fix for crash on tvOS and iOS when launching a project
	#jira UE-34005

Change 3080683 on 2016/08/08 by Matthew.Griffin

	Added code to duplicate GUBP behavior when building DDC for samples so that only certain platforms are built

Change 3080681 on 2016/08/08 by Matthew.Griffin

	Corrected path separators for Mac DDC location, which was preventing it from being included in installed build

Change 3080675 on 2016/08/08 by Robert.Manuszewski

	Fixing CIS on Clang platforms
	#jira UE-34025

Change 3080674 on 2016/08/08 by Ben.Woodhouse

	Fix for reflection capture crash on autosave (null scene ptr) - integrate fix from fortnite CL 3033507

	#jira UE-32651

Change 3080594 on 2016/08/08 by Keith.Judge

	Xbox One - Fix missing GPU particles when in Fast Semantics mode. SetRasterizerState() shouldn't be cached as it always needs resetting in Fast Semantics. Also enabled Fast Semantics by default, as the last known bug is now fixed.

	#jira UE-31607

Change 3080573 on 2016/08/08 by Martin.Wilson

	Fix Root Motion from Everything blending incorrectly when using layered blend per bone

	#Jira UE-17815

Change 3080517 on 2016/08/08 by James.Golding

	PR #2678: Fixed ProceduralMeshComponent compile issue, missing ConvexElem.h. (Contributed by ardneran)
	#jira UE-34299, UE-34279

Change 3080512 on 2016/08/08 by Benn.Gallagher

	Fix for dangling sub-instance pointers when reinstancing on AnimBP compile
	#jira UE-34137

Change 3080510 on 2016/08/08 by Max.Preussner

	WmfMedia: Fixed Packaged Shooter game does not load in Windows XP (UE-32421)

	#jira UE-32421

Change 3080509 on 2016/08/08 by Robert.Manuszewski

	Added more detailed message when TArray's BulkSerialize fails.

	#jira UE-34025

Change 3080506 on 2016/08/08 by Allan.Bentham

	Do not set render target if there are no modulated shadows.
	#jira UE-33252

Change 3080498 on 2016/08/08 by Keith.Judge

	Fix D3D12.x link error.

	#jira UE-34322

Change 3080493 on 2016/08/08 by Matthew.Griffin

	Allow symbol files to be skipped when staging build products as they are not essential for the staged project to run.
	#jira UE-34073

Change 3080490 on 2016/08/08 by Maciej.Mroz

	#jira UE-28625 Direction of GetOverlapInfos parameter doesn't match

	Redone cl# 3080484

Change 3080462 on 2016/08/08 by Allan.Bentham

	Leave FAndroidAppEntry::PlatformInit's ES2 EGL initialised unless vulkan or ES3.1 are required.
	Fix initialisation errors introduced in CL 3070035.

	#jira UE-34099

Change 3080242 on 2016/08/07 by Max.Chen

	Sequencer: Fix to allow deleting spawnables from the viewport

	#jira UE-28523

Change 3080241 on 2016/08/07 by Dmitriy.Dyomin

	Fixed: StartCameraFade not fading camera when MobileHDR is off
	#jira UE-34143

Change 3079990 on 2016/08/06 by andrew.porter

	Changing defaults on some settings on M_Details for test case.

	#jira UE-29618

Change 3079989 on 2016/08/06 by andrew.porter

	Setting two sided off on M_Details material

	#jira UE-29618

Change 3079986 on 2016/08/06 by phillip.patterson

	Updated QA-Foliage for test case

	#jira UE-29618

Change 3079984 on 2016/08/06 by andrew.porter

	Adding test content for using sprites in UMG

	#jira UE-29618

Change 3079879 on 2016/08/05 by Dmitry.Rekman

	Remove HITCHHUNTER logspam from release UE (UE-30959).

	#tests Compiled the UE4Editor.
	#jira UE-30959

Change 3079815 on 2016/08/05 by Tyler.Cole

	Set dependencies for Orion MCP in UE4 Release-4.13 stream.

	#jira NONE-0

Change 3079808 on 2016/08/05 by Daniel.Wright

	BlueprintRenderToTarget content example map with interactable fluid surface
	#jira UE-34323

Change 3079746 on 2016/08/05 by Daniel.Wright

	Copy - New blueprint function ClearRenderTarget2D, which is the only way to set a render target alpha directly
	New blueprint function CreateRenderTarget2D
	#jira UE-34321

Change 3079569 on 2016/08/05 by Mitchell.Wilson

	Updating template tutorials after assets were moved to new folders
	#jira UE-34139

Change 3079546 on 2016/08/05 by Ian.Shadden

	#UE4 #match3 Fixed button UI scaling on all buttons in Match3 (main menu, victory screen, options, notifications, etc...), tested on PC and Android Nexus 6

	#jira UE-34316

Change 3079542 on 2016/08/05 by Mark.Satterthwaite

	Duplicate CL #3079503:
	Initialise more variable types to 0 in Metal shaders to workaround Xcode 8 toolchain no longer doing this for us for "threadgroup shared" variables. Everything but structs and atomic's will now be initialised.
	#jira UE-33856

Change 3079472 on 2016/08/05 by Peter.Sauerbrei

	fix for remote server name being empty stopping a build for a BP project in binary
	fix for several error messages from platform requirements not stopping a build
	#jira UE-34213

Change 3079453 on 2016/08/05 by Benjamin.Hyder

	Updating QA_Materials to include Material Details example

	#jira UE-29618

Change 3079389 on 2016/08/05 by Gareth.Martin

	Missing file from CL 3079376:
	Tessellate Landscape only in highest landscape LOD
	Fix incorrect UV coordinates when tessellation is enabled
	#jira UE-14253
	#jira UE-20405

Change 3079384 on 2016/08/05 by Michael.Trepka

	PR #2266: BUGFIX: UBT not building on non HFS partitions on OSX (Contributed by Manny-MADE)

	#jira UE-29358

Change 3079376 on 2016/08/05 by Gareth.Martin

	Tessellate Landscape only in highest landscape LOD
	Fix incorrect UV coordinates when tessellation is enabled
	#jira UE-14253
	#jira UE-20405

Change 3079365 on 2016/08/05 by Peter.Sauerbrei

	fix for executable name mismatch in plist vs actual executable when project has an underscore in the name
	#jira UE-34192

Change 3079361 on 2016/08/05 by Ryan.Vance

	#jira UE-34297
	Fixing the screen space position in 3076326 broke an ISR dbuffer decal hack. Now, no longer a hack :)

Change 3079349 on 2016/08/05 by Mason.Seay

	Deleting unneeded assets

	#jira UE-29618

Change 3079306 on 2016/08/05 by Peter.Sauerbrei

	IPP is now built as a 64-bit executable
	#jira UE-26393

Change 3079303 on 2016/08/05 by Peter.Sauerbrei

	PR2018 - disable user input request from ssh courtesy of Teivaz
	#jira UE-26393

Change 3079276 on 2016/08/05 by mason.seay

	Extended Line Trace For Convenient

	#jira UE-29618

Change 3079274 on 2016/08/05 by Alex.Delesky

	#jira UE-32396, UE-34103 - Fixed the issue where STextBLock widgets will revert to a gray-ish color in widget blueprints on compilation when set to magenta (#FF00FFFF). This fix does not introduce the side-effects of recoloring the text on editor buttons.

Change 3079273 on 2016/08/05 by Max.Chen

	Sequencer: Fix converting matinee move tracks that have separate pos and euler tracks.

	#jira UE-34301

Change 3079254 on 2016/08/05 by Ori.Cohen

	Fix skeletal mesh having bodies in both sync and async scene. Simplifies a lot of code and fixes crash in case of substepping.

	#JIRA UE-34224

Change 3079242 on 2016/08/05 by Nick.Darnell

	Slate - Initializing WheelScrollMultiplier in the STableViewBase to avoid problems with subclasses not having an initialized value and the scrollbar misbehaving.

	#jira UE-34304

Change 3079129 on 2016/08/05 by Jurre.deBaare

	#jira UE-34278
	#fix Changed reimport path to be the same as geometry cache / skeletal mesh
	Unable to reimport Alembic static meshes

	#jira UE-34292
	#fix Handle cancelled situation during reimport ui interaction
	Cancelling the reimport of an Alembic file seems to confirm the action

	#jira UE-34288
	#fix Possible fix, flush rendering commands before importing
	Crash when importing Alembic files as Skeletal Mesh

	#jira UE-34282
	#fix Change import function override signature to include bCancelled and set the value appropriately + early out when cancelled
	"Failed to Import" message when clicking Cancel on the Alembic Import Message

Change 3079127 on 2016/08/05 by Marc.Audy

	Properly clean up all worlds when ending PIE while a seamless transition is active
	#jira UE-33863

Change 3079107 on 2016/08/05 by Mike.Beach

	Reversing the order in which we iterate pins on node resonstruction - making sure we reconstruct split child pins first (to keep the old parent pin chain intact).

	#jira UE-30548

Change 3079093 on 2016/08/05 by Jurre.deBaare

	Toggling Vertex Colors on in Static Mesh Editor makes the viewport all white
	#fix Hide the environment and sky when showing vertex colours
	#jira UE-34251

	Camera Auto exposure in the static mesh editor bleaches everything out when the environment is turned off
	#fix Turn on / off advanced engine show flags determined by whether or not post processing is enabled in the advanced preview scene settings
	#jira UE-34206

Change 3079090 on 2016/08/05 by Jurre.deBaare

	Bad performance when changing (slider) values for the advanced preview scene
	#fix Could not repro but added some more check if update needed checks
	#jira UE-33496

	Adjusting Lighting Rig Rotation manually only affects the sky and not the lighting
	#fix Add the rotational delta for the sky to the directional light rotation
	#jira UE-34108

Change 3079088 on 2016/08/05 by Jurre.deBaare

	Alembic Cache Importer option for Hard Edge Angle Threshold does not work
	#fix Changed the condition for an edge to be hard / soft, fixed an issue in the smoothing group generation and changed the flow of normal calculation during importing
	#jira UE-34127

Change 3079040 on 2016/08/05 by Max.Preussner

	MediaAssets: Fixed media source asset cannot be inherited in other modules (UE-34290)

	Also made class properties blueprint read-writable

	#jira UE-34290

Change 3078958 on 2016/08/05 by Marc.Audy

	Don't ever reregister child actor components
	Don't destroy child actors when hiding a level
	#jira UE-31038

Change 3078954 on 2016/08/05 by ryan.brucks

	#jira ue-00001  Adding new material functions needed to go along with Noise Blog post requested by DanV and KimL

Change 3078952 on 2016/08/05 by Phillip.Kavan

	[UE-34085] Fix an ensure when force-deleting compiled Blueprint class assets in the Content Browser.

	change summary:
	- modified ForceDeleteObjects() to relocate a redundant 'ObjectsToReplace' iteration that recently was converted to a ranged-based for loop; the conversion seems to have caused the iterator to ensure, due to existing code that was modifying the target array inside the loop.

	#jira UE-34085, UE-34169

Change 3078912 on 2016/08/05 by Andrew.Rodham

	Editor: When locking an editor viewport to a camera, camera cut flags are now correctly specified

	#jira UE-33875

Change 3078900 on 2016/08/05 by Lauren.Ridge

	Fix for small Vive HMD movements entering VR mode

	#jira UE-33970

Change 3078880 on 2016/08/05 by Jack.Porter

	Cannot set GenerateOverlapEvents flag on Landscape
	#jira UE-9055

Change 3078879 on 2016/08/05 by Lee.Clark

	PS4 - Fix corrupted debuffer decals
	(CMask wasn't getting decoded correctly)

	#jira UE-34273

Change 3078871 on 2016/08/05 by Steve.Robb

	Fix for changes to UObject*s in property boxes.

	#jira UE-29596

Change 3078857 on 2016/08/05 by Max.Chen

	Sequencer: Set Fixed frame interval playback to false by default.

	#jira UE-34272

Change 3078850 on 2016/08/05 by mason.seay

	Updated map to test physics mesh, added comments to level BP

	#jira UE-29618

Change 3078795 on 2016/08/05 by Andrew.Rodham

	Sequencer: Fixed spawnables not responding to blueprint reinstance events

	This ultimately left spawnable bindings broken, and an unreachable object in the world

	#jira UE-31635

Change 3078786 on 2016/08/05 by Robert.Manuszewski

	Reversed the order the UObject delete listeners were notified of UObject deletion to avoid skipping the next listener if the current one removed itself from the array.

	#jira UE-33872

Change 3078782 on 2016/08/05 by Andrew.Rodham

	Sequencer: Fixes to "Create Camera Here" functionality

	Fixed crash when undoing the "Create Camera Here" operation.
	Enabled RF_Transactional on all spawned instances in the world (to support undo/redo of instance properties properly)
	Fixed issues when the cursor was outside of the play range

	#jira UE-33127

Change 3078737 on 2016/08/05 by Andrew.Rodham

	Sequencer: Changed event and playback contexts to be weak references to ensure no strong GC references, while maintaining safety
	#jira UE-34256

Change 3078722 on 2016/08/05 by Ben.Woodhouse

	Fix shader compile error in TP_VirtualRealityBP (disable Morpheus, which was enabled (inadvertently?) in CL 3077481)
	#jira UE-34269

Change 3078620 on 2016/08/05 by Dmitriy.Dyomin

	Fixed: SunTemple geometry has rendering artifacts on low end devices
	[Android_Low] devices will use 'Low' material quality level
	#jira UE-22455

Change 3078584 on 2016/08/05 by James.Golding

	Add NumVertices back to FSkelMeshSection, so that info is available in non-editor builds (e.g. for runtime mesh merging)
	#jira UE-33675

Change 3078565 on 2016/08/05 by Jack.Porter

	Removed need for LandscapeInfo in GeneratePlatformPixelData which was crashing mobile previewer.

	#jira UE-33842

Change 3078564 on 2016/08/05 by James.Golding

	Fix display name for bSupportUVFromHitResults to fix missingspace
	#jira UE-34248

Change 3078542 on 2016/08/05 by Yannick.Lange

	VR Editor : Temporary fix to disable the possibility of both controllers having a windows docked.
	#jira UE-32839

Change 3078541 on 2016/08/05 by Yannick.Lange

	VR Editor :  Fix linux compile error from VREditorAvatarActor
	#jira UE-34215

Change 3078396 on 2016/08/04 by Max.Chen

	Sequencer: Invalidate playback context when map changes.

	#jira UE-34256

Change 3078291 on 2016/08/04 by Jeff.Campeau

	RHI compress/decompress return success/failure
	Failure falls back to software method
	D3D12 for Xbox One still needs implementation

	#jira UE-31363

Change 3078131 on 2016/08/04 by Chris.Babcock

	Deal with missing Android movie framerate by defaulting to 30 if not available
	#jira UE-34208
	#ue4
	#android

Change 3078084 on 2016/08/04 by John.Billon

	Disabled AMD hacks Cvars that aren't needed anymore.
	#Jira UE-30772

Change 3078083 on 2016/08/04 by John.Billon

	Consolidated  ensures to detect a crash dealing with unallocated render targets in TranslucentLighting to a single test in DefferedShadingRendere and attempt to recover by reallocating deferred render targets.
	Added a couple of more ensures when allocating render targets.
	Added log message when changing feature levels.
	#Jira UE-32536
	#Jira UE-32204

Change 3078039 on 2016/08/04 by Josh.Adams

	- Fixed a case issue with Linux
	#jira UE-33478

Change 3078029 on 2016/08/04 by Ryan.Vance

	#jira UE-30989
	We need to disable the hmd mask when down sampling to ensure valid input data for blur passes.

Change 3078027 on 2016/08/04 by Lina.Halper

	Fix sequencer morphtarget displaying issue

	#code review:Max.Chen
	#jira: UE-28459

Change 3078012 on 2016/08/04 by mason.seay

	map and asset updates for testing UV hit detection

	#jira UE-29618

Change 3078009 on 2016/08/04 by Jamie.Dale

	Ensured that BULKDATA_SingleUse is only set by UFontBulkData::Serialize when loading

	This prevents it being incorrectly set by other operations, such as counting memory used by font data.

	#jira UE-34252

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

	Duplicate CL #3064008 & CL #3077412:
	Fix "iOS Metal-based build crashes at launch with sub-levels":
	- Slate should not bind the null RHI texture from an unitialised texture atlas - atlases only have a valid texture pointer once an entry has been added to them and in the template projects an empty sub-level doesn't add anything.
	- To prevent this kind of bug resurfacing and being so hard to track down add Metal shader binding validation to our validation layer as Apple's is incomplete on iOS and won't warn us about nil texture usage which causes these GPU restarts. This requires reworking our vertex declaration handling to be more efficient so that we can cache the pipeline reflection data as well as the pipeline objects.
	- Fix validation error of texture reallocation on loading template projects under Metal.
	#jira UE-30847

Change 3078002 on 2016/08/04 by John.Billon

	Fixed LowLightMapQuality warning triggering with wrong conditions.
	#Jira UE-33237

Change 3078001 on 2016/08/04 by John.Billon

	Fixed a crash due to particle threading issues in packaged game.
	#Jira UE-32147

Change 3077989 on 2016/08/04 by Rolando.Caloca

	UE4.13 - Fix Vulkan crash when compiling shaders on a new project due to running out of descriptor sets. Now we handle fragmentation of sets and multiple pools per RHI contexts.
	#jira UE-34218

Change 3077940 on 2016/08/04 by Jeff.Campeau

	Stage applocal dependencies from paths containing $(EngineDir) & $(ProjectDir)
	Include copies of the VS2015 runtime and UCRT
	Change -applocaldir parameter to -applocaldirectory
	Stage to engine and project binaries paths (for crash reporter, etc.)

	#jira UE-33903

Change 3077936 on 2016/08/04 by Daniel.Wright

	DrawMaterialToRenderTarget gracefully handles an invalid WorldContextObject
	#jira UE-34183

Change 3077927 on 2016/08/04 by Lina.Halper

	Fix issue with morphtarget not working due to invalid guid

	#jira: UE-34077

Change 3077919 on 2016/08/04 by Daniel.Wright

	Copy - Lighting channels can now be edited on components with static mobility, since dynamic lights can still affect them
	#jira UE-34245

Change 3077877 on 2016/08/04 by Ori.Cohen

	Fix physical animation undo/redo not affecting linked bodies and constraints

	#JIRA UE-33987

Change 3077823 on 2016/08/04 by Ori.Cohen

	Disable copy/paste action on physical animation profiles (From Matt.Kuhlenschmidt)

	#JIRA UE-33985

Change 3077814 on 2016/08/04 by Uriel.Doyon

	Changed the logs used in the "Texture Streaming Build". Previous warnings are now logged at verbose level. Can be toggled on by running "log texturestreamingbuild all"
	#jira UE-34120
	#review-3077812

Change 3077781 on 2016/08/04 by Max.Chen

	Sequencer: Fix crash in rotation key struct

	#jira UE-34155

Change 3077771 on 2016/08/04 by Lina.Halper

	Added const and removed auto

	#jira: UE-33023

Change 3077702 on 2016/08/04 by Daniel.Wright

	Copy - Planar reflection show flags can now be edited
	#jira UE-34229

Change 3077585 on 2016/08/04 by Ori.Cohen

	Fix spam when moving simulated skeletal mesh in the editor.

	#JIRA UE-34164

Change 3077532 on 2016/08/04 by Tom.Looman

	Fixed error in description of VR Template.

	#jira ue-33950

Change 3077517 on 2016/08/04 by Tom.Looman

	Fixed parsing error for FP_VirtualRealityBP

	#jira UE-34059

Change 3077493 on 2016/08/04 by Tom.Looman

	Updated Template description to remove GearVR reference and include more clear message on the two available maps.

	#jira UE-33950

Change 3077492 on 2016/08/04 by Tom.Looman

	Improvements to VR Template

	Fixed teleportation issue on both locomotion types (JIRA)
	Rebuilt navmesh for motioncontrollermap
	Added new WIP startermap to clarify the difference between the multiple levels.
	Added more comments and did some cleanup in BPs.

	#jira UE-33962

Change 3077491 on 2016/08/04 by Jurre.deBaare

	Crash when attempting to merge two objects using Simplygon - ProxyMaterialUtilities::CreateProxyMaterialInstance
	#fix Pass in complete path to save material to instead of just the name
	#jira UE-34211

Change 3077481 on 2016/08/04 by Tom.Looman

	Workaround for issue in teleport camera fade. (Removing r.MobileHDR from config)

	#jira ue-34143

Change 3077463 on 2016/08/04 by Ben.Woodhouse

	Fix for ghosting in the SSR, caused by the SSRTemporal pass not getting velocities passed in. This is only an issue when temporal AA is disabled. There is a performance in this case, because a velocity pass is now required if SSR is enabled and temporalAA/motion blur are off.
	#jira UE-32843

Change 3077432 on 2016/08/04 by Steve.Robb

	Removal of Fortnite-specific setting which disables hot reload.

	#jira UE-33261

Change 3077380 on 2016/08/04 by Keith.Judge

	Fix for green reflection environment in some maps.

	- Moved deleting pending resources from EndFrame() to RHIEndDrawingViewport() so it *really* gets called once every time there's a Present()
	- Fixed a validation error when locking cube map faces which was causing them not to be updated.
	- Fixed a validated driver error when creating UAVs due to uninitialised parts of the descriptor and fixed the buffer description for occlusion queries to have the correct 256 byte size (another validation error).
	- Added a GPU/CPU sync at the same point the PS4 code does.

	#jira UE-32086

Change 3077336 on 2016/08/04 by Mitchell.Wilson

	removed r.Streaming.PoolSize from DefaultEngine.ini
	Adding DefaultScalability.ini and adding r.StreamingPoolSize to resolve a warning.
	#jira UE-30941

Change 3077275 on 2016/08/04 by Phillip.Kavan

	[UE-29903] Fix a potential infinite loop when replacing variable nodes in a Blueprint graph via drag-and-drop.

	#jira UE-29903

Change 3077119 on 2016/08/04 by Marc.Audy

	Use TickType All when in PIE
	#jira UE-18982

Change 3077108 on 2016/08/04 by Jon.Nabozny

	Add check to USkeletalMeshComponent::TickClothing to skip updating cloth when SkeletalMesh is null.
	This can happen when the mesh is cleared between USkeletalMeshComponent::TickComponent and USkeletalMeshComponent::TickClothing.

	#jira UE-34032

Change 3077073 on 2016/08/04 by Jurre.deBaare

	bBlendOverlappingNormals does not seem to have an impact for Alembic importing
	#fix this wasn't being used in the normal calculation anymore so redundant
	#jira UE-34204

Change 3077059 on 2016/08/04 by Robert.Manuszewski

	Disabling the assert when MaxObjectsInEditor or MaxObjectsInGame collide with EInternalObjectFlags as this is no longer relevant (since the serial number and object flags were split).

	#jira UE-34200

Change 3077024 on 2016/08/04 by Thomas.Sarkanen

	Added GetResourceSize to UDataAsset

	Data assets now correctly report their size.

	#jira UE-28851 - Fix mem reporting of DataTables

Change 3077001 on 2016/08/04 by Andrew.Rodham

	Sequencer: Fixed sequencer adding spawnables into recorded worlds twice

	The issue here is that sequencer was re-evaluating itself with the current play world as the context, which also happened to be the world that it was trying to record. As a result, it ended up with the same sequence being played twice in the recording world.

	Added the ability to specify a playback context attribute for sequencer to use, and this no longer allows sequencer to play back in any worlds that are being recorded.

	#jira UE-31422

Change 3076995 on 2016/08/04 by Matthew.Griffin

	Fixed Shadow Variable warning

Change 3076974 on 2016/08/04 by Matthew.Griffin

	Added Node to build CrashReportClient for Linux that can be used by internal game targets

Change 3076820 on 2016/08/04 by Max.Chen

	Sequencer: Fix EDL export timing so that shot in time always start at 0 since movies are always rendered at their cut length (until shot handle exports exist).

	#jira UE-34199

Change 3076665 on 2016/08/03 by Dan.Oconnor

	Quick fix for regression introduced by 3075803. Crashing on load of some games because some tickables don't expect GetTickableGameObjectWorld to be called when IsTickable returns false
	#jira UE-18982

Change 3076569 on 2016/08/03 by Chad.Taylor

	SteamVR GetOrthoProjection implementation to fix broken console rendering in VR

	#jira UE-21424

Change 3076556 on 2016/08/03 by Aaron.McLeran

	#jira UE-34154 PSVR Stereo assets are spatialized as MONO

	- All audio was routing through A3D lib regardless of if it was mono/stereo etc.
	- Fix is to only route audio that is mono and spatialized
	- Fixed some compile errors/shadow variables
	- Renamed bIs3dSound to bIsA3dSound to indicate its a bool that flags if it is spatialized through A3D library

Change 3076546 on 2016/08/03 by Aaron.McLeran

	#jira OR-26161 Client hitches indefinitely when using Stat soundcues / soundwaves

	Implementing 3069092 in Release-4.13

	- Not all active sounds have sound classes, was causing a crash

	#tests Run game with stat soundcues and not crash

Change 3076512 on 2016/08/03 by Ben.Marsh

	Fix warning about UnrealTournament:true argument.

Change 3076492 on 2016/08/03 by Daniel.Wright

	Integrate - Disallowed DrawMaterialToRenderTarget and Begin/EndDrawCanvasToRenderTarget in construction scripts, since they don't work in game.  Blutilities can be used to do blueprint rendering in the editor.
	#jira UE-34177

Change 3076491 on 2016/08/03 by Daniel.Wright

	Marked the Forward Shading project setting as experimental for 4.13
	#jira UE-34176

Change 3076490 on 2016/08/03 by Daniel.Wright

	Integrate - Fixed crash rendering translucency with translucent shadows which were determined to be invisible
	#jira UE-34175

Change 3076489 on 2016/08/03 by Daniel.Wright

	Integrate - Now clamping light MinRoughness to .04 to avoid NaNs from Vis_SmithJointApprox on materials with Roughness 0
	#jira UE-34174

Change 3076485 on 2016/08/03 by Daniel.Wright

	Integrate - Restored DetailMode changes causing a FGlobalComponentRecreateRenderStateContext - accidental removal from cl 2969413
	#jira UE-34173

Change 3076440 on 2016/08/03 by Ryan.Vance

	#jira UE-34184
	Merging 3060975, 3061888, 3072758 and 3076270 from devvr to rev Oculus sdk.
	Adding Oculus 1.6 support.

Change 3076399 on 2016/08/03 by Nick.Darnell

	Slate - The LayoutCache pointer in SWidget is now a WeakPtr.  This had to be done to handle edge cases where widgets were used in a pool, and placed into invalidation panels that had been deleted in the past, but were later invalidated with bogus pointers to long gone invalidation panels.  Also making a tweak to WidgetCache, to update the lasthittestindex to be the one passed in, which is a bit closer to the intended behavior.

	#jira UE-34185

Change 3076397 on 2016/08/03 by Rolando.Caloca

	UE4.13 - hlslcc -Fix for hlsl length(float)
	#jira UE-32629

Change 3076337 on 2016/08/03 by mason.seay

	Test assets (and map for ensure bug)

	#jira UE-29618

Change 3076332 on 2016/08/03 by Peter.Sauerbrei

	fix for clang build errors
	#jira UE-34163

Change 3076326 on 2016/08/03 by Ryan.Vance

	#jira UE-32975
	Using the wrong screen position in the base pass pixel shader with ISR.

Change 3076309 on 2016/08/03 by Benjamin.Hyder

	Renaming TEST-LightingFeatures to TM-LightingFeatures

	#jira UE-29618

Change 3076299 on 2016/08/03 by Chad.Taylor

	Fix SteamVR lag in late-update fold child renderables.

	#jira UE-33928

Change 3076214 on 2016/08/03 by Mitchell.Wilson

	Resaving BluperintOffice level to resolve MikkTSpace warnings.
	Reimporting SM_GodRay_Plane to resolve cook warning.
	#jira UE-30064

Change 3076112 on 2016/08/03 by Max.Chen

	Sequencer: Fix crash when opening multiple UMG assets (multiple map/unmap record selected actors actions)

	#jira UE-34167

Change 3076090 on 2016/08/03 by Marc.Audy

	Fix Mac compile error
	#jira UE-34163

Change 3076075 on 2016/08/03 by Jeremiah.Waldron

	Fixing comments documenting attribute in deleteFiles node for UPL
	#jira UE-34161

Change 3076034 on 2016/08/03 by Mitchell.Wilson

	Resaving Strategy Game maps to resolve MikkTSpace warnings.
	Resaving material in strategy game to resolve string asset reference warning.
	#jira UE-29720

Change 3076003 on 2016/08/03 by Mitchell.Wilson

	Resaving Elemental Demo levels to resolve MikkTSpace warnings.
	Resaving multiple materials to resolve String asset reference warnings.
	#jira UE-29679

Change 3075985 on 2016/08/03 by Jeremiah.Waldron

	Fixing UPL comments misnaming the deleteFiles node
	#jira UE-34161

Change 3075977 on 2016/08/03 by Maciej.Mroz

	#jira UE-30473 Moving child component in child blueprint forces parent to become dirty

	Duplicated from Dev-Blueprints CL 3075793

Change 3075959 on 2016/08/03 by Marc.Audy

	Don't add WorldSettings to the Actor list twice if it is net relevant (pointed out by PR #2639)
	#jira UE-33921

Change 3075891 on 2016/08/03 by Chad.Taylor

	SteamVR crash fixes related to new OpenVR SDK. Some of the DLL export functions were converted to inline.

	#jira UE-34142

Change 3075882 on 2016/08/03 by Dan.Oconnor

	Manually integrating 3073939 to address UE-19062
	#jira UE-19062

Change 3075805 on 2016/08/03 by Marc.Audy

	Implement GetTickableGameObjectWorld() for various FTickableGameObject classes. Releated to CL#3075803
	#jira UE-18982

Change 3075803 on 2016/08/03 by Marc.Audy

	Make FTickableGameObject only tick once per frame by associating them with a World, and for those unassociated with a World, ticking them after other levels have ticked
	#jira UE-18982

Change 3075761 on 2016/08/03 by Max.Preussner

	MediaAssets: Fixed crash and incorrect re-initialization of media texture resource (UE-34152)

	#jira UE-34152

Change 3075719 on 2016/08/03 by Chad.Taylor

	Blocker fix for binary editor crash on incorrectly used dll

	#jira UE-34142

Change 3075709 on 2016/08/03 by Jeremiah.Waldron

	Changing InXMLNamespace parameter back to "http://schemas.android.com/apk/res/android" which is what it used to be set to directly within AndroidPluginLanguage before the transition from APL to UPL parameterized it in the constructor

	#android
	#jira UE-34149

Change 3075695 on 2016/08/03 by Jurre.deBaare

	Adding missing debug zlib dll
	#jira UE-123

Change 3075641 on 2016/08/03 by Jurre.deBaare

	Crash when re-importing alembic cache file several times
	#fix Always create a new object when importing
	#jira UE-34130

Change 3075609 on 2016/08/03 by Danny.Bouimad

	#jira UE-29618 updating TM-PhysicalAnimProfiles to use both NumKeys and number keys. Tweaked values inline with testcase so very apparent what each Physical Animation setting does.

Change 3075578 on 2016/08/03 by Mitchell.Wilson

	Updating attenuation settings for multiple sounds in Strategy Game.
	#jira UE-25828

Change 3075529 on 2016/08/03 by Trung.Le

	VREditor: Fxied foliage lasso select without pressing trigger
	#jira UE-33689

Change 3075502 on 2016/08/03 by Lee.Clark

	Copied from cl#3041664 - Removing UpdateActorPosition. This was not needed in a vast majority of use cases and was causing a crash due to multithreading issues during end of frame updates.

	#jira UE-28549

Change 3075386 on 2016/08/03 by Robert.Manuszewski

	Fixing bulkdata using source data pointer as an archive instead of raw data when saving

	#jira UE-34132

Change 3075384 on 2016/08/03 by mason.seay

	AnimBP for crash bug

	#jira UE-29618

Change 3075350 on 2016/08/03 by Max.Chen

	Sequencer: Added support for additive skeletal animations. Evaluate all overlapping skeletal animation sections.

	#jira UE-30506

Change 3075327 on 2016/08/03 by Max.Chen

	Sequencer: Fix root component structure for level sequence actor. This fixes an ensure that occurs when double clicking on a level sequence actor sprite in the viewport.

	#jira UE-34093

Change 3075313 on 2016/08/03 by Matthew.Griffin

	Tidied up hardcoded installed build includes so that they're all in one file with platform checks
	Added .dll.config files to CsCompile build products if they exist

Change 3075133 on 2016/08/03 by Yannick.Lange

	VREditor : Original submit in Dev-VREditor = 3064489
	- Fix crash when starting VREditor and then changing levels
	#jira UE-33766

Change 3075124 on 2016/08/03 by Thomas.Sarkanen

	Fixed undo/redo crash when editing anim blueprint defaults

	Serializing copy records out of the undo buffer returns them to their initial uninitialized state, with NULL cached container pointers. To address this, we re-initialize the anim blueprint when we undo/redo.

	#jira UE-34024 - Crash undoing variable change in Animation Blueprint.

Change 3075101 on 2016/08/03 by Matthew.Griffin

	Adding job to selectively build games in release branch
	Also adding documentation and localization to overnight build
	#jira UEB-688

Change 3075061 on 2016/08/03 by Yannick.Lange

	VR Editor : Original submit in Dev-VREditor = 3062883
	- Fixed bug that Laser extends beyond UI when hovered over Selection Bar or Close Button #jira UE-33552
	- Fixed crash when Closing Editor (Alt F4 while in VR mode) #jira UE-32509
	- Fixed crash when enabling VR Editor in editor preferences without a HMD connected
	- Fixed bug if you "slowly press" over UI selection bars or close buttons, nothing happens #jira UE-33553
	- Avatar code refactor to its own actor class #jira UETOOL-812

	#jira UE-33552, #jira UE-32509, #jira UE-33553, #jira UETOOL-812

Change 3075059 on 2016/08/03 by Allan.Bentham

	Fall back to standard shadows when capsule shadows are not supported.

	#jira UE-33344

Change 3075045 on 2016/08/03 by Matthew.Griffin

	Added copies of new OpenVR dlls to Binaries/ThirdParty folder to fix warnings in build DDC step

Change 3074693 on 2016/08/02 by Dan.Oconnor

	Manually integrating 3070569 from Dev-Blueprints
	#jira UE-34119

Change 3074672 on 2016/08/02 by Dan.Oconnor

	Manually integrating 3061854 into 4.13 from Dev-Blueprints
	#jira UE-34119

Change 3074646 on 2016/08/02 by Aaron.McLeran

	#jira UE-34081 Implementing from Dev-Framework CL 3074325

	Procedural Sound Wave Fails to Play when returning 0 bytes in GeneratePCMData callback

	- Returning 0 bytes in GeneratePCMData results in the procedural sound wave not continuing to play audio. Instead of returning 0, this change returns an empty buffer if the procedural sound wave doesn't have audio ready to generate (due to loading or some other issue).
	- Change also fixes a threading issue with QueueAudio queing audio on game thread but being consumed by audio device thread.

	- Implementing 3003851 from UT into Dev-Framework.

Change 3074630 on 2016/08/02 by Brent.Pease

	UE-23846 - iOS Movie Player can't handle videos at resolutions that aren't multiples of 16
	UE-33200 - A movie isn't played on iOS occasionally.
	UE-32397 - Error Message displays as Unknown Error when failing to supply a Remote Build server for ios on Windows

	 + Give a more friendly error message when UHT fails with an invalid error code.

	#jira UE-23846
	#jira UE-33200
	#jira UE-32397

Change 3074590 on 2016/08/02 by Rolando.Caloca

	UE4.13 - Fix gpu morph targets text; add support for RWByteBuffer (disabled).
	#jira UE-33694

Change 3074588 on 2016/08/02 by Chad.Taylor

	Update OpenVR SDK to v1.0.2

	-Hooked up added aspect ratio and sort priority features to SteamVR stereo layers

	#jira UE-34115

Change 3074481 on 2016/08/02 by Ori.Cohen

	Make sure that new physical animation data defaults to 0

	#JIRA UE-33678

Change 3074395 on 2016/08/02 by Ori.Cohen

	Fix duplication of physical animation profiles not duplicating data.
	Also fix undo redo not working for profiles.
	Fix editor not passing Duplicate change type

	#JIRA UE-33987, UE-33985

Change 3074392 on 2016/08/02 by Alex.Delesky

	#jira UE-32396 - Reverting CL 3074177, since it introduced side-effects.

Change 3074364 on 2016/08/02 by phillip.patterson

	Re-created UMG_Optimization for Test Cases

	#jira UE-29618

Change 3074346 on 2016/08/02 by Jurre.deBaare

	Potential DDC warning fix, remove non-existing values
	#jira UE-123

Change 3074289 on 2016/08/02 by Jeff.Fisher

	UEVR-13 PSVR: TCR Requirement
	Reprojection problem after Sony PlaystationVR Morpheus HMD reconnect fixed.
	-When disconnecting and reconnecting the HMD 700+ sets of reprojection data would back up in a queue.  After reconnection reprojection would be lagged by 12+ seconds.  After some discussion we decided that the queue is not doing anything useful, so I replaced it with a single blob of reprojection data and a dirty flag.
	#jira UEVR-13
	#review-3074209 @chad.taylor @nick.whiting

Change 3074196 on 2016/08/02 by Martin.Wilson

	Mark old anim instances as pending kill so that they dont get grabbed by undo transactions (causes massive slowdown when dragging in spinboxes that modify default values on anim blueprints)

	#jira UE-23453

Change 3074177 on 2016/08/02 by Alex.Delesky

	#jira UE-32396 - Setting an STextBlock to magenta (#FF00FFFF) will no longer cause it to turn gray when compiling its parent widget blueprint.

Change 3074157 on 2016/08/02 by Ben.Marsh

	Remove exception checking for a hard-coded CL. Licensees need to be able to use this stuff.

Change 3074132 on 2016/08/02 by Trung.Le

	VREditor: Fixed brush preview present while in foliage mode and hovering at UI
	#jira UE-33228

Change 3074131 on 2016/08/02 by Tom.Looman

	Fix for scalability build warnings in VR Template

	#jira ue-33325

Change 3074089 on 2016/08/02 by Kevin.Rushin

	QAGame - Added Foliage to TestMap

	#jira UE-29618

Change 3074067 on 2016/08/02 by Kevin.Rushin

	QAGame- Rebuilt Lighting

	#jira UE-29618

Change 3074063 on 2016/08/02 by Kevin.Rushin

	QAGame - Fix up VREditor Map to have more asset variation

	#jira UE-29618

Change 3074057 on 2016/08/02 by Andrew.Porter

	Deleting - UMG_Optimization

	#jira UE-29618

Change 3074040 on 2016/08/02 by Michael.Trepka

	On Mac always process child windows when drawing, as they may be on screen even if their parents are minimized.

	#jira UE-31194

Change 3074008 on 2016/08/02 by Phillip.Patterson

	Renamed UMG_Invalidation to UMG_Optimization to better match test
	#jira UE-29618

Change 3073988 on 2016/08/02 by Mitchell.Wilson

	Updating starting camera location for Paper2d template to be consistant on both BP and Code version.
	#jira UE-32723

Change 3073966 on 2016/08/02 by Jurre.deBaare

	Alembic Cache Importer option for propagating matrix transformation does not work
	#fix Changed the flag combinations and overhauled the matrix retrieval/caching system
	#misc typo fix
	#jira UE-34066

Change 3073953 on 2016/08/02 by Lina.Halper

	Fixed static warning on null reference

	#jira: UE-33923

Change 3073951 on 2016/08/02 by Lina.Halper

	Fix GetRelativeTransform for negative scale

	#jira: UE-33380

Change 3073896 on 2016/08/02 by Alex.Delesky

	#jira UE-33580 - User can now play in editor or save after editing certain parameters such as colors via the eyedropper tool or by using numeric spinners. Minor usability improvements to the Data Table Row Editor.

	#jira UE-33867 - User can now play in editor after selecting a color outside of the color picker window using the eyedropper tool

Change 3073804 on 2016/08/02 by Jamie.Dale

	Fixed the detail panel trying to apply class customizations to structs

	This could happen in the Data Table editor if you made a struct with the same name as a customized class (eg, Actor).

	#jira UE-32623

Change 3073803 on 2016/08/02 by Jurre.deBaare

	Morph target vertex mapping can be wrong with multi material caches
	#fix Changed the way we build the skeletal mesh from the import data and maintain a vertex remapping array to set up the morph targets correctly
	#jira UE-34074

Change 3073788 on 2016/08/02 by Andrew.Rodham

	Sequencer: Added support for montage based animation

	CL#3061714 :
	    Sequencer: Fixed anim trails not playing in full, sequencer-driven animation.

	    There were 2 issues here. Firstly, we were force-handling events and anim notifies in non-preview animation which caused undefined behaviour when the animation was also updated on tick. Secondly, On the very first frame of a game, sequencer can sometimes use the PreviewSetMatineeAnimPositionInner method because the actor it is referencing has not begun play yet. Unfortunately this function left the animation in a state where the 'real' animation update function wouldn't trigger any anim notifies properly.

	CL#3063015 :
	    Sequencer: Fixed anim notifies not working when playing animation on blueprint-driven skeletal meshes

	    We now inject a new animation position into the animation system, rather than trying to 'fake' events outside of the system. This allows for much more robust event triggering when playing back through sequencer. Previously, anim notifies for trail particles would be reset every frame due to TriggerAnimNotifies being called by the animation system, and sequencer. We now defer this responsibility to the animation system entirely during playback.

	CL#3068399 :
	    Sequencer: Changed animation tracks to allow more animation types (such as anim montages)

	      - APIs now accept UAnimSequenceBases rather than UAnimSequences to afford more flexibility

	#jira UE-34046

Change 3073787 on 2016/08/02 by Jurre.deBaare

	Handle failed Simplygon proxy mesh generation with error message instead of hard checks
	#fix Added a failed delegate along side the succesful delegate
	#jira UE-31990

Change 3073786 on 2016/08/02 by Jurre.deBaare

	Alembic importer crashes when not assets are generated
	#fix Prevented adding nullptr values to the array (now only contains valid entries)
	#jira UE-34065

Change 3073777 on 2016/08/02 by Jurre.deBaare

	User is able to give a Preview Scene Profile the same name as an existing profile
	#fix check changed profile name and append _duplicatedname if found to be matching an existing profile name
	#jira UE-34033

Change 3073775 on 2016/08/02 by Mitchell.Wilson

	Updating VehicleExampleMap for BP and Code templates to have consistant starting locations
	#jira UE-31281

Change 3073732 on 2016/08/02 by Rolando.Caloca

	DR - Fix crash when enabling gpu morph targets on non SM5 platforms
	#jira UE-34011

Change 3073706 on 2016/08/02 by Peter.Sauerbrei

	fix for no tvOS libraries in binary release for Win64
	#jira UE-34076

Change 3073671 on 2016/08/02 by Allan.Bentham

	High quality mobile reflection captures are now blended in correct (linear) space.
	#jira UE-33915

Change 3073663 on 2016/08/02 by Peter.Sauerbrei

	fix for launch on failing for iOS in Binary
	#jira UE-34014

Change 3073662 on 2016/08/02 by Lee.Clark

	4.13 - PS4 - Fix Media Player Audio cutting out

	#jira UE-33850

Change 3073616 on 2016/08/02 by Mark.Satterthwaite

	Duplicate CL #3073584 from Dev-Platform:
	Fix iOS Metal not playing in the background when the phone is locked and there's no drawable texture.
	#jira UE-32323

Change 3073592 on 2016/08/02 by Max.Chen

	Curve Editor: End any transactions on mouse down that weren't ended cleanly. This fixes a bug where if you drag with the left mouse button and click with the right mouse button, the transactions are left in an ambiguous state.

	#jira UE-33993

Change 3073585 on 2016/08/02 by Nick.Darnell

	Slate/UMG - When you select a paper sprite, or any other implementor of the SlateTextureAtlasInterface the editor will now correctly pick a default size for the brush matching the size of the sprite like it does for textures.

	#jira UE-34075

Change 3073575 on 2016/08/02 by Richard.TalbotWatkin

	Duplicating from Dev-Editor, CL 3057645

	Fixed single player PIE so the window position is correctly fetched and saved, even when running a dedicated server. This does not interfere with stored positions for multiple PIE, which uses ULevelEditorPlaySettings::MultipleInstancePositions.
	#jira UE-33416 - New Editor PIE window does not center to screen when running with a dedicated server

Change 3073542 on 2016/08/02 by Richard.TalbotWatkin

	Duplicated from Dev-Editor, CL 3072169.

	A couple of changes to the BSP code:
	* Fixed longstanding issue where sometimes BSP geometry is not rebuilt correctly after editing it.  This was due to poly normals not being recalculated after translating vertices in Geometry Mode.
	* Fixed corruption to FPoly::iLink as it is overloaded to have two meanings: when building BSP, it temporarily represents the surface index of the next coplanar surface (and adding a new BSP node uses this to determine whether a new surface needs to be added or not). In other operations it represents an FPoly index, in general this is used more in editor geometry operations.  This fixes various crashes which arose from rebuilding BSP resulting in invalid FPoly indices.

	#jira UE-12157 - BSP brushes break when non-standard subtractive bsp brushes are used
	#jira UE-32087 - Crash occurs when creating Static Mesh from Trigger Volume

Change 3073540 on 2016/08/02 by Matthew.Griffin

	Added Package Samples script behind a trigger to package samples for QA
	Removed submitter notifications from Launcher Samples nodes
	Added submitters of any file in Templates/StarterContent as notified for Feature Pack and DDC nodes
	Removed any dependencies on Win64 only nodes from the Mac Installed Build so that it can be run locally
	Added Overnight Build Type to Release Branch to run the Binary Release and Package Samples jobs
	#jira UEB-689

Change 3073511 on 2016/08/02 by Tom.Looman

	Removed object redirectors to fix build warning in VR Template

	#jira ue-33325

Change 3073458 on 2016/08/02 by Jurre.deBaare

	Update default preview scene ini and assets
	#fix deleted old sky texture and fixed BaseEditor.ini setup
	#jira UE-34063

Change 3073427 on 2016/08/02 by Richard.TalbotWatkin

	Duplicated from Dev-Editor, CL 3068585
	Fix to Spline Mesh collision building so that geometry does not default to being auto-inflated in PhysX.
	#jira UE-34062 - SplineMesh collision can be generated incorrectly

Change 3073421 on 2016/08/02 by James.Golding

	Resave PSD test assets in QAGame with proper version
	#jira UE-34061

Change 3073419 on 2016/08/02 by James.Golding

	Rename OrientationDriver to PoseDriver
	#jira UE-34015

Change 3073404 on 2016/08/02 by Richard.TalbotWatkin

	Duplicated from Dev-Editor, CL 3057895

	Mesh paint bugfixes and improvements.

	Changes to RerunConstructionScript so that OnObjectsReplaced is called correctly on all components, whether they have been created by the SCS or the UCS. Previously, components created by the UCS were not being handled, and components created by the SCS were not always being matched.  Now a serialized index is maintained for UCS-created objects, which is matched after the construction scripts have been executed.

	This will fix issues with the mesh paint tool, and any other editor tool which hooks into the OnObjectsReplaced callback in order to update its internal cache of component pointers, for example, the component visualizer render list.

	#jira UE-33010 - Crash changing mesh paint material in blueprint, then changing to a different mode tab
	#jira UE-32279 - Editor crashes when reselecting a mesh in paint mode
	#jira UE-31763 - [CrashReport] UE4Editor_MeshPaint!FMulticastDelegateBase<FWeakObjectPtr>::RemoveAll() [multicastdelegatebase.h:75]
	#jira UE-30661 - Vertex Painting changes collision complexity if the asset is saved while vertex painting

Change 3073380 on 2016/08/02 by Richard.TalbotWatkin

	Fixed build error in unity builds.
	#jira UE-33049 - Transform widget visible in blueprint viewport when editing spline points in editor viewport
	#jira UE-9062 - Spline editing: It would be nice to be able to type in a specific value for a point
	#jira UE-7476 - Add ability to edit SplineComponent in BP editor (not just instance in level)
	#jira UE-13082 - Users would like a snapping feature for splines
	#jira UE-13568 - Additional Spline Component Functionality
	#jira UE-17822 - It would be useful to be able to update a bp spline layout from the editor viewport.

Change 3073343 on 2016/08/02 by Matthew.Griffin

	Whitelisting PS4 and XboxOne plugins for those platforms specifically
	#jira UE-33866

Change 3073338 on 2016/08/02 by Ben.Marsh

	When running in unattended mode, write an error refusing to load any missing plugin rather than opening a modal dialog. Fixes ShooterGame build error with missing PS4/XboxOne plugins.

Change 3073319 on 2016/08/02 by Maciej.Mroz

	#jira UE-26676, UE-33027, UE-32806, UE-33460, UE-33423, UE-33860

	Manually integrated some fixes from Dev-Blueprints

Change 3073311 on 2016/08/02 by Richard.TalbotWatkin

	Duplicated from Dev-Editor CL 3057868

	Spline component improvements, both tools and runtime:

	- SplineComponentVisualizer now works within the Blueprint editor. This works via a generic extension added to the base ComponentVisualizer class which correctly propagates modified properties from the preview actor to the archetype, and then on to any instances whose properties are at the default value.
	- The above feature required a breaking change to USplineComponent - namely, the three FInterpCurve properties have been collected together into a struct and added as a single property. This is so that changes to the length of one of the FInterpCurves marks all three as dirty and needing rebuilding.
	- Added a custom version for SplineComponent and provded serialization fixes.
	- Added a details customization to SplineComponent to hide the raw FInterpCurve properties.
	- Added a custom detail builder category which polls the SplineComponentVisualizer each tick and provides numerical editing for spline points which are selected in the visualizer.
	- Relaxed the limitation that SplineComponent keys need to have an increment of 1.0.  Now any SplineComponent key can be set.  The details customization enforces that the sequence remains strictly ascending.
	- Allowed an explicit loop point to be specified for closed splines.
	- Allowed discontinuous splines by no longer forcing the ArriveTangent and LeaveTangent to be equal.
	- Added some new Blueprintable methods for building splines with an FSplinePoint struct, which allows all of a spline point's properties to be specified, and added to the FInterpCurves sorted by the input key.
	- Fixed the logic which determines whether the UCS has modified the spline curves.
	- Added UActorComponent::RemoveUCSModifiedProperties, which allows a component to remove any properties from the cached list which it doesn't want to be considered as 'modified'. This is used to distinguish the case of properties preserved by the SplineInstanceDataCache from those genuinely modified by the UCS.
	- Fixed "Apply Instance Changes to Blueprint" so that edited spline data can be applied to the archetype.
	- Fixed some issues with the spline component visualizer to make it generate appropriate up vectors if scale and rotation are enabled.

	#jira UETOOL-766 - Spline tool improvements
	#jira UE-33049 - Transform widget visible in blueprint viewport when editing spline points in editor viewport
	#jira UE-9062 - Spline editing: It would be nice to be able to type in a specific value for a point
	#jira UE-7476 - Add ability to edit SplineComponent in BP editor (not just instance in level)
	#jira UE-13082 - Users would like a snapping feature for splines
	#jira UE-13568 - Additional Spline Component Functionality
	#jira UE-17822 - It would be useful to be able to update a bp spline layout from the editor viewport.
	#jira UE-33049 - Transform widget visible in blueprint viewport when editing spline points in editor viewport
	#jira UE-33669 - Crash in Dev-Editor

Change 3073242 on 2016/08/02 by James.Golding

	Move physics state create/destroy delegates from BodyInstance to ActorComponent
	- Rename virtual Create/DestroyPhysicsState on OnCreateDestroyPhysicsState, and make protected.
	- Create new public Create/DestroyPhysicsState non-virtual to call virtual, and also invoke delegate.
	#jira UE-32768

Change 3072953 on 2016/08/01 by Uriel.Doyon

	Texture GUIDs are now included in cooked builds, as they are required by the texture streamer to link build data to in game textures.
	#jira UE-34045

[CL 3094220 by Ben Marsh in Main branch]
2016-08-18 20:28:33 -04:00
Marcus Wassmer
edea678466 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3072736)
#lockdown Nick.Penwarden
#rb none

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

Change 3055495 on 2016/07/19 by Marc.Olano

	Allow Noise material node on mobile

	No reason to exclude mobile, except for Fast Gradient Noise, which uses 3D textures. Allow this node on ES2 for all of the other noise functions.

	#jira UE-33345

Change 3055602 on 2016/07/19 by Luke.Thatcher

	Fix crash bug in D3D11 RHI when selecting adapters.
	 - Array of adapter descriptors will get out of sync with the adapter index if any adapter is skipped (e.g. the Microsoft Basic Render Device).
	#jira UE-33236

Change 3055890 on 2016/07/19 by Daniel.Wright

	Improved the assert in LoadModuleChecked so we won't have to check the log to see which module it was

Change 3055891 on 2016/07/19 by Daniel.Wright

	Fixed Global Distance Field not dirtying previous object position on UpdateTransform - left behind a phantom shadow on teleports
	* This will effectively double partial distiance field update costs until clipping of the update regions is implemented

Change 3055892 on 2016/07/19 by Daniel.Wright

	Higher poly light source shapes drawn into reflection captures

Change 3055893 on 2016/07/19 by Daniel.Wright

	More info to 'Incompatible surface format' GNM assert

Change 3055904 on 2016/07/19 by Daniel.Wright

	Reflection environment normalization improvements
	* Indirect specular from reflection captures is now mixed with indirect diffuse from lightmaps based on roughness, such that a mirror surface will have no mixing.  Reflection captures now match other reflection methods like SSR and planar reflections much more closely.
	* When a stationary skylight is present, Reflection captures are now normalized as if the initial skylight will always be present, giving consistent results with static skylight reflections.  The skylight and reflection captures with sky removed used to be normalized separately, compacting the relative brightness between the sky and scene.
	* Added r.ReflectionEnvironmentLightmapMixing for debugging lightmap mixing issues.  This toggle was previously not possible due to prenormalizing the capture data.
	* The standard deferred reflection path (r.DoTiledReflections 0) can no longer match the results of the compute path or base pass reflections, as it would require MRT to accumulate the average brightness
	* Removed unused r.DiffuseFromCaptures
	* Cost of reflection environment on PS4 increased from 1.52ms -> 1.75ms with this change, but decreased back to 1.58ms by reducing tile size to 8x8

Change 3055905 on 2016/07/19 by Daniel.Wright

	Workaround for RTDF shadows not working on PS4 - manual clear of ObjectIndirectArguments instead of RHICmdList.ClearUAV

Change 3059486 on 2016/07/21 by Nick.Penwarden

	Testing #uecritical

Change 3060558 on 2016/07/21 by Daniel.Wright

	Fixed skylight with specified cubemap being black

Change 3061999 on 2016/07/22 by Marcus.Wassmer

	Disable old AMD driver hacks for DX11.  QA has already tested with them off and given thumbs up.

Change 3062241 on 2016/07/22 by Daniel.Wright

	Fixed bug in RHISupportsSeparateMSAAAndResolveTextures that was preventing MSAA for any non-Vulkan platforms

Change 3062244 on 2016/07/22 by Daniel.Wright

	Discard old prenormalized reflection environment data on load

Change 3062283 on 2016/07/22 by Daniel.Wright

	MSAA support for the forward renderer
	* AntiAliasing method is chosen in Rendering project settings, DefaultSettings category
	* Deferred passes like shadow projection, fogging and decals are only computed per-pixel and can introduce aliasing
	* Added Rendering project setting VertexFoggingForOpaque, which makes height fog cheaper and work properly with MSAA
	* The AntiAliasing method in PostProcessSettings has been removed, this may affect existing content
	* Added r.MSAACount which defaults to 4
	* Integrated wide custom resolve filter from Oculus renderer, controlled by r.WideCustomResolve
	* GBuffer targets are no longer allocated when using the forward renderer
	* Decal blend modes that write to the GBuffer fall back to SceneColor emissive only

Change 3062666 on 2016/07/23 by Uriel.Doyon

	Added legend to streaming accuracy viewmodes
	Added a new helper class FRenderTargetTemp to be reused in different canvas rendering.
	Exposed the pass through pixel shader so that it can be reused.
	#review-3058986 @marcus.wassmer

Change 3063023 on 2016/07/25 by Luke.Thatcher

	Fix "RecompileShaders Changed" when using Cook On The Fly.
	#jira UE-33573

Change 3063078 on 2016/07/25 by Ben.Woodhouse

	Add -emitdrawevents command line option to emit draw events by default. This is useful when capturing with Renderdoc

Change 3063315 on 2016/07/25 by Ben.Woodhouse

	Fix div 0 in motion blur. This caused artifacts in some fairly common cases
	#jira UE-32331

Change 3063897 on 2016/07/25 by Uriel.Doyon

	Fixed missing qualifier on interpolants

Change 3064559 on 2016/07/26 by Ben.Woodhouse

	Fix for cooker crash with BC6H textures (XB1, but may affect other platforms). Also fixes corruption issue with texture slices not being a multiple of 4 pixels (expanding as necessary), courtesy of Stu McKenna at the Coalition
	Tested fix on xbox, PC and PS4, using QAGame
	#jira UE-28592

Change 3064896 on 2016/07/26 by Ben.Woodhouse

	Fix compile errors on PS4 (the variable "sample" was conflicting with a keyword, causing compile errors). Also making encoding consistent on new shaders (ansi rather than UTF16)

Change 3064913 on 2016/07/26 by Ben.Marsh

	Fix spelling of "Editor, Tools, Monolithics & DDC" node in Dev-Rendering build settings.

Change 3065326 on 2016/07/26 by Uriel.Doyon

	Fixed UnbuiltInstanceBoundsList not being reset correctly, creating broken rendered primitives.
	#jira UE-32585

Change 3065541 on 2016/07/26 by Daniel.Wright

	Materials with a GBuffer SceneTexture lookup will fail to compile with forward shading

Change 3065543 on 2016/07/26 by Daniel.Wright

	Restored DetailMode changes causing a FGlobalComponentRecreateRenderStateContext - accidental removal from cl 2969413

Change 3065545 on 2016/07/26 by Daniel.Wright

	Added material property bNormalCurvatureToRoughness, which can slightly reduce aliasing.  Tweakable impact with r.NormalCurvatureToRoughnessScale.
	Fixed reflection capture feedback with base pass reflections

Change 3066783 on 2016/07/27 by Daniel.Wright

	Moved PreShadowCacheDepthZ out of FSceneRenderTargets and into FScene, which fixes issues with cached preshadows and multiple scenes, including HighResScreenShot
	Disabled GMinScreenRadiusForShadowCaster on per-object shadows, which fixes popping when trying to increase shadow resolution from the defaults (r.Shadow.TexelsPerPixel 3)

Change 3066794 on 2016/07/27 by Daniel.Wright

	Fixed crash rendering planar reflections due to NULL PostProcessSettings

Change 3067412 on 2016/07/27 by Daniel.Wright

	Fix for OpenGL4 with uint interpolator

Change 3068470 on 2016/07/28 by Daniel.Wright

	Fixed crash rendering translucency with translucent shadows which were determined to be invisible

Change 3069046 on 2016/07/28 by Daniel.Wright

	Handle null Family in SetupAntiAliasingMethod

Change 3069059 on 2016/07/28 by Daniel.Wright

	Added r.ReflectionEnvironmentBeginMixingRoughness (.1) and r.ReflectionEnvironmentEndMixingRoughness (.3), which can be used to tweak the lightmap mixing heuristc, or revert to previous behavior (mixing even on a mirror surface)

Change 3069391 on 2016/07/28 by Daniel.Wright

	Fixed AverageBrightness being applied to reflections in gamma space in the mobile base pass, causing ES2 reflections to be overbright

Change 3070369 on 2016/07/29 by Daniel.Wright

	r.ReflectionEnvironmentBeginMixingRoughness and r.ReflectionEnvironmentEndMixingRoughness set to 0 can be used to achieve old non-roughness based lightmap mixing

Change 3070370 on 2016/07/29 by Daniel.Wright

	Bumped reflection capture DDC version to get rid of legacy prenormalized data

Change 3070680 on 2016/07/29 by Marcus.Wassmer

	Fix slate ensure that is most likely a timing issue exposed by rendering.
	#ue-33902

Change 3070811 on 2016/07/29 by Marcus.Wassmer

	Fix ProjectLauncher errors when loading old versions
	#ue-33939

Change 3070971 on 2016/07/29 by Uriel.Doyon

	Updated ListTextures outputs to fix cooked VS non cooked differences and also to put enphasis on disk VS memory

Change 3071452 on 2016/07/31 by Uriel.Doyon

	Updated the legend description for the (texture streaming) primitive distance accuracy view mode

[CL 3072803 by Marcus Wassmer in Main branch]
2016-08-01 18:56:49 -04:00
Jack Porter
2082f7ec9b Copying //UE4/Dev-Mobile to //UE4/Dev-Main (Source: //UE4/Dev-Mobile @ 3056055)
#lockdown Nick.Penwarden
#rb None

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

Change 3011102 on 2016/06/13 by Steve.Cano

	After taking a screenshot using glReadPixels, transfer the data to the target buffer from bottom row up to fix the "upside-down" render that OpenGL does. Confirmed with QA (owen.stupka_volt) that this does not appear to be happening on iOS (non-metal devices, inclusion of iOS in write-up was a mistake), verified on an ipod touch 5. Also confirmed that this does not happen on html5, and that Mobile HDR flag does not make a difference in function.

	#jira UE-26421
	#ue4
	#android

Change 3015801 on 2016/06/16 by Dmitriy.Dyomin

	Probbably fix for UE-30878, was not able to repro an actual crash(FFoliageInstanceBaseCache::AddInstanceBaseId). Added even more logging in case fix does not work.
	#jira  UE-30878

Change 3015903 on 2016/06/16 by Dmitriy.Dyomin

	Fixed: Levels window has Refresh/UI issues when World Composition is active
	#jira UE-26160

Change 3018352 on 2016/06/17 by Chris.Babcock

	Handle Android media prepare failure (URL without internet for example)
	#jira UE-32029
	#ue4
	#android

Change 3026387 on 2016/06/24 by Jack.Porter

	Remove FFuncTestManager warning about PIE when running on a standalone game binary

Change 3026398 on 2016/06/24 by Jack.Porter

	Prevent FSocketBSD::Recv returning false on SE_EWOULDBLOCK

Change 3027553 on 2016/06/25 by Niklas.Smedberg

	OpenGL: Made some block size calculation work for arbitrary block sizes (e.g. not pow-of-two).

Change 3027554 on 2016/06/25 by Niklas.Smedberg

	Metal: copyFromTexture now gets block-aligned size parameter (e.g. used for texture streaming)

Change 3028061 on 2016/06/26 by Jack.Porter

	Fixed a problem where newly discovered instances were not added to an existing session in the Session Browser.
	Fixed a problem where selecting an instance in a session with multiple instances didn't deselect the previously selected instance correctly.

Change 3029220 on 2016/06/27 by Steve.Cano

	Change Android Tilt values to use GetRotationMatrix/GetOrientation logic, same as java-side android would use, and adjust slightly to match as closely as possible to iOS values for tilt. There is drift and some differences in the "Y" value but the same sort of inconsistencies are also seen on iOS.

	#jira UE-6135
	#ue4
	#android

Change 3030420 on 2016/06/28 by Jack.Porter

	Fix crash with RenderOutputValidation when running with cooked content

Change 3030426 on 2016/06/28 by Jack.Porter

	Fix to CL 3026398 - make FSocketBSD(IPv6)::Recv(From) return false when recv returns 0.
	A return value of 0 indicates the connection was shutdown in an orderly manner.

Change 3030973 on 2016/06/28 by Steve.Cano

	Added a landscape downloader background along with the options to change it from within Android settings

	#ue4
	#android
	#jira UE-32318

Change 3031757 on 2016/06/28 by Chris.Babcock

	Remove unused methods from AndroidJNI header
	#ue4
	#android

Change 3032387 on 2016/06/29 by Allan.Bentham

	Rename android es31+aep -> glesdeferred.

Change 3032711 on 2016/06/29 by Allan.Bentham

	Rename GLSL_310_ES_EXT shader define:
	ES31_AEP_PROFILE -> ESDEFERRED_PROFILE
	bumped UE_SHADER_GLSL_310_ES_EXT_VER version number.

Change 3033698 on 2016/06/29 by Jack.Porter

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

Change 3034210 on 2016/06/30 by Steve.Cano

	Added a new AndroidRuntimeSettings variable that allows creation of installers for both Windows and Mac/Linux if set to true.

	#jira UE-32302

	#ue4
	#android

Change 3034530 on 2016/06/30 by Chris.Babcock

	Rename FManifestReader to FAndroidFileManifestReader in AndroidFile
	#jira UE-32679
	#ue4
	#android

Change 3034612 on 2016/06/30 by Steve.Cano

	Change Alpha from being set to a range of 0-255 to being in a range of 0-1 (which is the correct range of values)

	#jira UE-25325
	#ue4
	#android

Change 3034679 on 2016/06/30 by Chris.Babcock

	Fix tooltip (.command for mac, not .sh)
	#jira UE-32302
	#ue4
	#android

Change 3038881 on 2016/07/05 by Jack.Porter

	Package and launch on multiple Android devices simultaneously using the -Device=xxxxxxx+yyyyyyyy+zzzzzzzz format generated by a Project Launcher profile when you select multiple devices

	#jira UEMOB-115

Change 3039240 on 2016/07/06 by Jack.Porter

	TcpMessageTransport - connection-based message bus transport.

	#jira UEMOB-112
	#jira UEMOB-113

Change 3039252 on 2016/07/06 by Jack.Porter

	Enable messaging and session services and functional testing on Android when launched with -messaging
	Android device detection module support for adding port forwarding and connection announcement for TcpMessageTransport

	#jira UEMOB-112
	#jira UEMOB-113

Change 3039264 on 2016/07/06 by Jack.Porter

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

Change 3040041 on 2016/07/06 by Chris.Babcock

	Pass proper value to script generator functions
	#jira UE-32861
	#ue4
	#android

Change 3040890 on 2016/07/07 by Allan.Bentham

	Fix shadow crash
	#jira UE-32884

Change 3041458 on 2016/07/07 by Peter.Sauerbrei

	fix for IOS launch on failures

Change 3041542 on 2016/07/07 by Peter.Sauerbrei

	better fix for the multi-device deployment issue

Change 3041774 on 2016/07/07 by Steve.Cano

	Fixing crash that occurs when a games app id for Google Play is set before configuring the apk packaging. Also validating the value that is inserted and using it to override any values that have been hand-inserted into the GooglePlayAppID.xml

	#jira UE-16992
	#android
	#ue4

Change 3042222 on 2016/07/08 by Dmitriy.Dyomin

	Mobile packaging scenarious
	Added a wizard for creating launcher profiles (Android & IOS) for scenario: Minimal App + Downloadable content
	Added Archive step to launcher profiles to be able to store build product into specified directory
	Changes to a cooker to be able to pack DLC based with a different flavor to a release App
	Changes to DLC packaging to be able to build streaming data without chunking pak files
	#jira UEMOB-119

Change 3042244 on 2016/07/08 by Dmitriy.Dyomin

	Fixed crash in FTcpMessageTransportConnection::Stop

Change 3042270 on 2016/07/08 by Dmitriy.Dyomin

	GitHub #2320 : [ULevelStreamingKismet] Load Level Instance, Enables UE4 Users to create multiple transformed instances of a .umap without having to include in persistent level's list ? Rama
	contributed by: EverNewJoy
	#jira UE-29867

Change 3042449 on 2016/07/08 by Dmitriy.Dyomin

	Fixing Mac Editor build erros from CL# 3042222

Change 3042480 on 2016/07/08 by Allan.Bentham

	Add ES3.1 profile & compiler_glsl_es3_1 to shaders.

Change 3042481 on 2016/07/08 by Allan.Bentham

	hlslcc - ES3.1 changes.
	set ES3.1 version number to 310
	Do not use ES2 keywords for ES3.1.
	Generate Layout Locations for ES3.1
	bump version.

Change 3042483 on 2016/07/08 by Allan.Bentham

	Add mobile ES3.1 support.
	Recreates EGL and ES3.1 context during PlatformInitOpenGL if ES3.1 is required.

Change 3042485 on 2016/07/08 by Allan.Bentham

	Undo android XGE change.

Change 3042506 on 2016/07/08 by Dmitriy.Dyomin

	One more compile fix from CL# 3042222

Change 3044173 on 2016/07/10 by Dmitriy.Dyomin

	UAT: Added support for building target platforms with multiple cook flavors
	ex: -targetplatform=Android -cookflavor=ETC1+ETC2

Change 3044213 on 2016/07/11 by Dmitriy.Dyomin

	Fixed: Can't stream in a level whose name is a substring of another streaming level
	#jira UE-32999

Change 3044221 on 2016/07/11 by Jack.Porter

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

Change 3044815 on 2016/07/11 by Allan.Bentham

	Corrected NAME_GLSL_ES3_1_ANDROID format string.

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

	Add handling of OnTextChanged for virtual keyboard input on Android
	#jira UE-32348
	#ue4
	#android

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

	Rename some functions with Error in the name to prevent false coloring in the logs
	#jira UE-30541
	#ue4
	#android

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

	Return player ID and handle auth token for Google Play Games on Android (contributed by gameDNAstudio)
	#jira UE-30610
	#pr #2372
	#ue4
	#android

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

	Add missing import to GameActivity.java

Change 3047442 on 2016/07/13 by Dmitriy.Dyomin

	Added: Mobile custom post-process
	Limitations: can fetch only from PostProcessInput0 (SceneColor) other scene textures are not supported. Does not support "Replacing the Tonemapper" blendable location.
	#jira UEMOB-147

Change 3047466 on 2016/07/13 by Dmitriy.Dyomin

	Disabled engine crash handler on Android, system crash handler works more reliably across different os versions/devices

Change 3047746 on 2016/07/13 by Jack.Porter

	Rename FBasePassFowardDynamicPointLightInfo

Change 3047778 on 2016/07/13 by Jack.Porter

	Missing file for rename FBasePassFowardDynamicPointLightInfo

Change 3047788 on 2016/07/13 by Allan.Bentham

	Fix incorrect TargetPlatformDescriptor string generation.

Change 3047790 on 2016/07/13 by Allan.Bentham

	Fixed half3x3 matrix use with ES3.1 glsl
	Fixed couple of interpolator precision mismatch.
	Fixed ES3.1 support detection issues

Change 3047816 on 2016/07/13 by Allan.Bentham

	Remove AndroidGL4 remnants.

Change 3048926 on 2016/07/13 by Chris.Babcock

	Added detection of Amazon Fire TV to disable requiring virtual joysticks
	#ue4
	#android

Change 3049335 on 2016/07/14 by Dmitriy.Dyomin

	Fixing UAT crash when packaging project for iOS

Change 3049390 on 2016/07/14 by Jack.Porter

	Disabled error for warning 4819 "The file contains a character that cannot be represented in the current code page (xxx). Save the file in Unicode format to prevent data loss"
	This is triggered by European characters and copyright symbols in source saved as latin-1 when compiling on non-US windows. Seen often in 3rd party headers, eg nvapi.

	#code_review: Ben.Marsh

Change 3049391 on 2016/07/14 by Jack.Porter

	Fixed incorrect comment order in CL 3049390

Change 3049545 on 2016/07/14 by Dmitriy.Dyomin

	Reworking some code from CL#3047442 to make static analizer happy

Change 3049626 on 2016/07/14 by Allan.Bentham

	Automatic CSM shader toggling
	#jira UE-27429

Change 3051574 on 2016/07/15 by Jack.Porter

	Support for lighting channels on Mobile
	- Multiple directional lights are supported in different channels but primitives are only affected by the directional light in the first channel they have set
	- CSM shadows from stationary or movable directional lights correctly follow their lighting channels
	- No channel limitations for dynamic point lights

	Notes:
	Removed mobile-specific directional light shadowing fields from View uniform buffer and mobile no longers uses SimpleDirectionalLight.
	Separate uniform buffers for mobile directional light are generated for each lighting channel.
	CSM culling information is now stored in FViewInfo and not per FVisibleLightViewInfo as the visibility bits are per view.

	#code_review Daniel.Wright
	#jira UEMOB-110

Change 3051699 on 2016/07/15 by Steve.Cano

	Preserve the original, pre-transformed input vertices for Slate shaders, which is required to properly do anti-aliasing (the ViewProjection-transformed values were causing the lines to not be drawn).

	#jira UE-20320
	#ue4
	#android

Change 3051744 on 2016/07/15 by Chris.Babcock

	Fix Android Vulkan include path checks (contributed by kodomastro)
	#jira UE-33311
	#PR #2602
	#ue4
	#android

Change 3052023 on 2016/07/15 by Chris.Babcock

	Fix shadowed variables

Change 3052110 on 2016/07/15 by Chris.Babcock

	Compile fixes for light channel support on mobile
	- missing template
	- accessor function for MobileDirectionalLights from scene

Change 3052242 on 2016/07/15 by Chris.Babcock

	Compile fixes for light channel support on mobile
	- removed dependency on C++14 feature

Change 3052730 on 2016/07/16 by Dmitriy.Dyomin

	Win32 build fix

Change 3053041 on 2016/07/17 by Jack.Porter

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

Change 3053054 on 2016/07/17 by Jack.Porter

	Changed use of old function ShouldUseDeferredRenderer() to new GetShadingPath()

Change 3053055 on 2016/07/17 by Jack.Porter

	Fixed local variable aliasing in unity build

Change 3053206 on 2016/07/18 by Jack.Porter

	Support ExecuteJavascript on iOS and Android
	Expose ExecuteJavascript to widget blueprint
	Fix ExecuteJavascript unicode string support on desktop platforms

	#jira UEMOB-152

Change 3053323 on 2016/07/18 by Dmitriy.Dyomin

	Added: Ability to set thread affinity for a device in Device Profiles (ex: +CVars=android.SetThreadAffinity=RT 0x02 GT 0x01)
	#jira UEMOB-107

Change 3053723 on 2016/07/18 by Jack.Porter

	Fix for UnrealTournamentProto.Automation.cs build errors

Change 3055090 on 2016/07/19 by Dmitriy.Dyomin

	Junk OnlineBlueprintSupport module binaries

[CL 3056789 by Jack Porter in Main branch]
2016-07-19 19:13:01 -04:00
Gareth Martin
34f14e4722 Copying //UE4/Dev-Landscape to //UE4/Dev-Main (Source: //UE4/Dev-Landscape @ 3053591)
#lockdown nick.penwarden
#rb none

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

Change 3016060 on 2016/06/16 by Gareth.Martin

	Fixed check being hit in AActor::InvalidateLightingCacheDetailed when building lighting with grass (cloned from 4.12)
	#jira UE-31766

Change 3016346 on 2016/06/16 by Gareth.Martin

	Fixed crash when editing landscape component properties and then clicking in the editor viewport (cloned from 4.12)
	#jira UE-32060

Change 3016366 on 2016/06/16 by Gareth.Martin

	Refactor Landscape Select / Mask tools so that they don't share a common brush stroke class
	- they had no common code, there was just a massive if statement in there selecting between the two behaviours

Change 3017787 on 2016/06/17 by Gareth.Martin

	Added Copy/Transform Algos

Change 3019479 on 2016/06/20 by Gareth.Martin

	Fix for user-reported crash in landscape circle brush
	(https://udn.unrealengine.com/questions/298966/crash-in-flandscapebrushcircletick.html)

Change 3020927 on 2016/06/21 by Gareth.Martin

	Fixed "Obj in another map" error when packaging a project containing Landscape for Android
	#jira UE-32194

Change 3021318 on 2016/06/21 by Gareth.Martin

	Fixed crash in PIE while using Landscape Splines with bPlaceSplineMeshesInStreamingLevels
	#jira UE-32034

Change 3024769 on 2016/06/23 by Gareth.Martin

	Allow creation of transient objects during saving, as they wouldn't be saved anyway
	(and the slate font system did during autosave and hit this check)
	#jira UE-32194

Change 3026457 on 2016/06/24 by Gareth.Martin

	Fixed crash when setting landscape component collision mip to an invalid value while in collision viewmode (cloned from 4.12)
	#jira UE-32415

Change 3032336 on 2016/06/29 by Gareth.Martin

	Fixed a long-standing issue with undo/redo nulling lazy pointers
	- Two objects are created which reference each other with lazy object pointers (e.g. ULandscapeComponent and ULandscapeHeightfieldCollisionComponent)
	- Undo
	- During undo, the first object saves its state and restores itself to a deleted (pendingkill) state
	- the second object then tries to save its state, but as the other object is marked pending kill it fails to resolve its lazy ptr and saves null instead
	- Redo
	- Lazy ptr is restored to the saved null instead of the actual original value

Change 3032818 on 2016/06/29 by Gareth.Martin

	Removed all use of deferred exec commands from the landscape code
	This solves numerous crashes during commandlets etc with landscape infos not being initialized because they don't tick the engine
	#jira UE-31654
	#jira UE-29568

	Notes:
	Split CreateLandscapeInfo from GetLandscapeInfo (removing the default-true bool param from GetLandscapeInfo in the process), so it only gets created where intended
	Removed some unused properties/functions, e.g. ULandscapeInfo::bIsValid, bCurrentlyEditing
	Removed legacy landscape world composition code
	General cleanup

Change 3032820 on 2016/06/29 by Gareth.Martin

	File missing from CL 3032818 (P4! Grr)

Change 3037033 on 2016/07/04 by Gareth.Martin

	Capitalised variable names in Algo::Accumulate at Core's request

Change 3037035 on 2016/07/04 by Gareth.Martin

	Improved Algo::Accumulate when used with movable types (e.g. FString)

Change 3037373 on 2016/07/05 by Gareth.Martin

	Added FText property handle type

Change 3039183 on 2016/07/06 by Gareth.Martin

	Landscape data plugin API - part 1: Import

Change 3042473 on 2016/07/08 by Gareth.Martin

	Landscape data plugin API - part 2: Re-Import

Change 3042484 on 2016/07/08 by Jack.Porter

	Pull request from AndrewScheidecker https://github.com/EpicGames/UnrealEngine/pull/1279 and updated to 4.13.

	Adapted GetStaticBatchElementVisibility to support changing visibility of batches with a single element (for view-dependent culling of static mesh elements)
	Added GetStaticBatchElementShadowVisibility that allows culling static mesh elements when rendering shadow depths using information about the light

	** Any user-created vertex factory that implements GetStaticBatchElementVisibility will need to set bRequiresPerElementVisibility on their FMeshBatch.

	#1279

Change 3044665 on 2016/07/11 by Gareth.Martin

	Renamed Engine/FixedSizeArrayView to Core/Containers/ArrayView
	Note: The new and improved TArrayView (as agreed with core team) is *not* const-propogating. const TArrayView<T> does not imply "const T" and will not bind to a const TArray! You want TArrayView<const T>

Change 3045936 on 2016/07/12 by Gareth.Martin

	Worked around Visual Studio 2013 bug with the new TArrayView
	#jira UE-33037

Change 3045964 on 2016/07/12 by Gareth.Martin

	Fix "cannot find shader" crash when using landscape with XY offsets
	#jira UE-33042

Change 3046311 on 2016/07/12 by Gareth.Martin

	Landscape data plugin API - part 3: Tiled landscapes

Change 3047701 on 2016/07/13 by Gareth.Martin

	Landscape data plugin API - cleanup

Change 3047894 on 2016/07/13 by Gareth.Martin

	Landscape data plugin API - part 4: Support inherent scale in landscape heightmap formats

Change 3049656 on 2016/07/14 by Gareth.Martin

	Landscape data plugin API - Fix right-click layer import option to show plugin filetypes in the file selector

Change 3050073 on 2016/07/14 by Gareth.Martin

	Update sequence recorder to new TArrayView following merge from main

Change 3050096 on 2016/07/14 by Gareth.Martin

	Landscape data plugin API - part 5: Export!

Change 3051521 on 2016/07/15 by Gareth.Martin

	Landscape data plugin API - part 6: Finishing up

Change 3051783 on 2016/07/15 by Gareth.Martin

	Fixed the landscape info map not being transacted correctly, resulting in a crash if you undo the deletion of a landscape
	#jira UE-33291

Change 3053322 on 2016/07/18 by Gareth.Martin

	Fix landscapes not being registered correctly with their landscape info when hiding/showing them in world composition
	#jira UE-33346

Change 3053513 on 2016/07/18 by Jack.Porter

	Added LANDSCAPE_API to Landscape MaterialExpression classes

	#jira UE-25145
	#1927

Change 3053591 on 2016/07/18 by Gareth.Martin

	Attempt to fix VS 2013 ICE
	#jira UE-33382

[CL 3053789 by Gareth Martin in Main branch]
2016-07-18 11:58:33 -04:00
Josh Adams
ac8b6f2e72 Copying //UE4/Dev-Platform to //UE4/Dev-Main (Source: //UE4/Dev-Platform @ 3046626)
#rb none
#lockdown Nick.Penwarden

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

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 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

Change 3020547 on 2016/06/20 by Jeff.Campeau

	Support for applocal deployment of binaries
	-applocaldir added to UAT to specify a per project directory to gather packages for applocal deployment
	Added ApplocalPrerequisitesDirectory property to packaging settings to set -applocaldir for packages built from the editor.

Change 3020552 on 2016/06/20 by Jeff.Campeau

	Add switch to disable debug symbol cache creation

Change 3020567 on 2016/06/20 by Jeff.Campeau

	constexpr enabled for Xbox One

Change 3020568 on 2016/06/20 by Jeff.Campeau

	Separate setting for debug
	#jira UEPLAT-1348

Change 3020628 on 2016/06/20 by Jeff.Campeau

	Use global view instead of relying on current thread (fixes issues if pump message is called from a different thread).

Change 3020629 on 2016/06/20 by Jeff.Campeau

	Use Slate tick to drive message processing during blocking loads (improves PLM).

Change 3020633 on 2016/06/20 by Jeff.Campeau

	Fix Xbox One toolchain pathing to work for environment variables with and without trailing slashes.
	Pass requested XDK edition to VCVars batch file (fixes issues in building with a newer XDK installed SxS than the engine is configured for).

Change 3020873 on 2016/06/21 by Lee.Clark

	PS4 - Fix missing audio when using A3D.

Change 3021225 on 2016/06/21 by Keith.Judge

	Optimized away a bunch of GetVertexShader() calls in FSplineMeshVertexFactoryShaderParameters::SetMesh(). Saves about 0.9ms across a 100ms capture.

Change 3021286 on 2016/06/21 by Dmitry.Rekman

	Linux: symbolication for memory profiler.

	- Also repaired/improved finding function name from debug info and overall callstack parsing.

	#tests Ran Linux editor and TestPAL, crashed multiple times

Change 3021512 on 2016/06/21 by Mark.Satterthwaite

	Compile fixes for new clang version.

Change 3021521 on 2016/06/21 by Mark.Satterthwaite

	Duplicate Fortnite CL #3013418: Don't release Metal buffers directly into the buffer pool, instead defer this until the command-buffer is known to have finished. This prevents the CPU from trying to modify the buffer while the GPU is still reading it if the GPU has fallen so far behind the CPU and therefore eliminates one possible cause of invalid access on the GPU.

Change 3021528 on 2016/06/21 by Mark.Satterthwaite

	Make the Metal buffer pool cull after 30 frames - this will better match Apple's GART which unwires unused allocations after 1sec of idle, making them as expensive to use allocating a new buffer.

Change 3021595 on 2016/06/21 by Mark.Satterthwaite

	Consolidate the way in which optional Metal features are exposed across macOS, iOS & tvOS devices & expose all the available features, unifying more of the code across all three platforms.
	- Implement Metal Depth-16 and stencil-texture-view support where available.
	- Use counting queries in Metal when available and expected (i.e. Metal_SM4+ or Metal_MRT+).
	- On latest iOS devices running Metal export support for GRHISupportsBaseVertexIndex & GRHISupportsFirstInstance when available.
	- On latest iOS devices running Metal export support for indirect buffer draw and dispatch calls.
	- Specify Metal layered rendering like any other and change the code so that there aren't preprocessor defines in the code. This lets the Metal MRT path assert if anyone ever tries to issue a layered draw call as its only supported on Mac.
	- Add support to Metal for setting UAVs from a uniform buffer.
	- Remove unused GlobalUniform header from MetalRHI.
	- Remove unnecessary FrameCount delay from Metal resource free lists.

Change 3021702 on 2016/06/21 by Mark.Satterthwaite

	Fix mis-use of FreeListMutex instead of PoolMutex in MetalContext.

Change 3022152 on 2016/06/21 by Nick.Shin

	Back out revision 5 from //UE4/Dev-Platform/Engine/Source/Runtime/NetworkFileSystem/Private/NetworkFileServerHttp.cpp

	forgot to un-do this when the giant revert (CL: #2970016) was done

	#jira UE-22166 HTML5 Cook on the fly will launch and then close browser

Change 3022409 on 2016/06/21 by Dmitry.Rekman

	Fixed inability to run Setup.sh on Ubuntu 14.04 (UE-29289).

	- Contains PR #2258 (contributed by wshearn).

Change 3022541 on 2016/06/22 by Lee.Clark

	PS4 - Make sure the render target masks are set correctly for disabled render targets.
	Fixes a validation check for shaders expecting to write to NULL render targets.

Change 3022973 on 2016/06/22 by Michael.Trepka

	Fixed a problem in MacToolChain where both BuildConfiguration.bGeneratedSYMFile and BuildConfiguration.bUsePDBFiles set to false would not disable dSYM generation.

Change 3023106 on 2016/06/22 by Dmitry.Rekman

	Linux: enable code to catch memory stomps during async loading.

	- Changed FLinuxPlatformMemory::BinnedAllocFrom/FreeToOS() to use mmap()/munmap(). Updated platform function signature accordingly.

	#tests Ran OrionServer on Linux (and OrionClient on Windows as a zero probe), tested also with running Linux editor with binned malloc.

Change 3023256 on 2016/06/22 by Mark.Satterthwaite

	Fix compile errors from latest Metal changes that broke iOS.

Change 3023268 on 2016/06/22 by Mark.Satterthwaite

	Use the Linux mmap/munmap/mprotect code to implement BinnedAllocFromOS/BinnedFreeToOS/PageProtect on Apple platforms as they are all equivalent.

Change 3023651 on 2016/06/22 by Mark.Satterthwaite

	Make Metal SM5 the default for 10.11.5 or later, this time most of the features should be working on AMD & Nvidia, though tiled-reflections and distance-field AO/Shadows must still be forcibly disabled on Intel.

Change 3023777 on 2016/06/22 by Brent.Pease

	 + Update config for Android and iOS

Change 3023781 on 2016/06/22 by Chris.Babcock

	Use mmap/munmap for Android BinnedAllocFromOS
	#ue4
	#android

Change 3023947 on 2016/06/22 by Mark.Satterthwaite

	Added a command-line switch for Mac "-RedirectNSLog" that will capture the output of NSLog using an NSPipe and write it into our log instead when not running under the debugger, thereby capturing output from underlying libraries that would otherwise be lost when outside a debugger.

Change 3024434 on 2016/06/23 by Lee.Clark

	PS4 - Remove Delta Color Compression support

Change 3024735 on 2016/06/23 by Mark.Satterthwaite

	Changes to MetalStatistics module initialisation.

Change 3024741 on 2016/06/23 by Mark.Satterthwaite

	Change the way we test for Metal GPU support to avoid instantiating any MTLDevice's until MetalRHI is loaded so we can properly instantiate optional modules.

Change 3025477 on 2016/06/23 by Brent.Pease

	 + Added UnrealPluginLanguage.cs based on AndroidPluginLanguage.cs
	 + Change UEDeployAndroid.cs to use UnrealPluginLanguage

Change 3026085 on 2016/06/23 by Jeff.Campeau

	Separate Xbox One target settings for editor only values
	Move values that need to be loaded by the editor into the default inis (editor won't load target specific inis)
	Eliminate circular dependency on Xbox One settings (causing settings to either not load or memory corruption on shutdown)
	Clean up cached ini sections for UBT/UAT

Change 3026093 on 2016/06/23 by Jeff.Campeau

	Cleanup unused files

Change 3026745 on 2016/06/24 by Mark.Satterthwaite

	+ Implemented rudimentary runtime debugging of MetalRHI with several different levels of complexity controlled by the new console-variable "rhi.Metal.RuntimeDebugLevel".
	+ The MetalStateCache must also correctly set the render-pass descriptor when the previous render-target load action was 'Clear' as we will need to switch render targets or we'll mistakenly clear again.
	+ Queries must not reset the MetalStateCache when they overflow the available buffer space, they simply break the encoder.

	-  By default "rhi.Metal.RuntimeDebugLevel" is off & it is compiled out for Shipping - when enabled each higher level collects more data or changes the MetalRHI behaviour to make a command-buffer failure mode debuggable at the expense of performance. In order for this to work the number of command-buffers that may be allocated from the command-queue is also controllable via a console-variable "rhi.Metal.CommandQueueSize" which must be set prior to startup.

Change 3026831 on 2016/06/24 by Josh.Adams

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

Change 3026940 on 2016/06/24 by Brent.Pease

	PR #2458: added GetGameBundleId blueprint function (Contributed by derekvanvliet)

Change 3027396 on 2016/06/24 by Brent.Pease

	Add BuildGraph.csproj to get Xamarin .sln builds working again

Change 3029211 on 2016/06/27 by Michael.Trepka

	Added a setting (on by default) to make the game window preserve its content's aspect ratio while being resized by user

Change 3029518 on 2016/06/27 by Josh.Adams

	Rollback //UE4/Dev-Platform/Engine/Build/BatchFiles/Mac/xcodeunlock.sh to revision 1

Change 3030385 on 2016/06/28 by Keith.Judge

	Fix XB1 deployment issues with AppXManifest for Paragon.

Change 3030416 on 2016/06/28 by Lee.Clark

	PS4 - Fix Mediaplayer IsPlaying

Change 3030922 on 2016/06/28 by Keith.Judge

	XB1 - Add pass through _RenderThread resource creation functions to D3D11.x RHI. Stops the render/RHI threads from stalling so much.

Change 3030948 on 2016/06/28 by Jeff.Campeau

	Revert to using constant chunk indexes instead of polling the OS.
	(OS API has a bug that will not be fixed.)

Change 3031016 on 2016/06/28 by Brent.Pease

	UEPLAT-1244 - Archive dSYM file
	UEPLAT-1359 - Support creating dSYM bundle

	Changes:
	 + Added ios settings flag for dsym bundle
	 + Added ios setting for creating xcode archive
	 + xcode archive is now only put in the mac host or build machine's ~/Library/Developer/Xcode/Archives folder, it is not copied into the -archive folder like the ipa is

Change 3031352 on 2016/06/28 by Bob.Tellez

	Added tps file for xcodeunlock

Change 3031604 on 2016/06/28 by Mark.Satterthwaite

	Add an additional cast to flush-to-zero in the Metal shader translator bounds-checking code to avoid an internal GPU compiler error.

Change 3031879 on 2016/06/28 by Brent.Pease

	 + PhysX libraries for bitcode support on tvOS.

Change 3032374 on 2016/06/29 by Keith.Judge

	Enable Oodle Handler Component on Xbox One

Change 3032407 on 2016/06/29 by Keith.Judge

	Xbox One - Disable UpdateBufferStats when STATS is 0. Small perf gain.

Change 3032432 on 2016/06/29 by Keith.Judge

	XB1 CPU Perf - Make CreateVertexDeclaration_RenderThread much faster by implementing a pass through to the RHI function rather than stalling the RHI thread.

Change 3033474 on 2016/06/29 by Josh.Adams

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

Change 3033603 on 2016/06/29 by Brent.Pease

	 + Support UnrealPluginLanguage for IOS and TVOS builds
	 + Allow ios/tvos UPL files an opportunity to modify a package's info.plist file

Change 3034004 on 2016/06/30 by Lee.Clark

	PS4 - Use SDK 3.508.101

Change 3034007 on 2016/06/30 by Lee.Clark

	PS4 - VRTracker now uses SCE_VR_TRACKER_ROBUSTNESS_LEVEL_HIGH

Change 3034173 on 2016/06/30 by Lee.Clark

	PS4 - Make sure depth target is null when eliminating fast clears. Fixes a GNM Validation failure

Change 3034498 on 2016/06/30 by Jeff.Campeau

	Use MSBuild version 14 when generating project files.

Change 3034943 on 2016/06/30 by Mark.Satterthwaite

	For Metal modify the MTLVertexDescriptor when calls to SetStreamSource provide different strides than the initial vertex-declaration which then requires compiling a different MTLRenderPipelineState. This silences errors reported by the Metal debug layer where the larger stride would see the shader read beyond the end of the buffer, but the smaller stride provided by SetStreamSource would work correctly. This may eliminate some more causes of Page-Fault GPU restarts.

Change 3035416 on 2016/07/01 by Lee.Clark

	PS4 - Replace export vertex shader check with a CFLAG

Change 3036093 on 2016/07/01 by Brent.Pease

	 + Fix dSYM bundle path on Windows ios builds
	 + Search for DeltaCopy directory if its not found from the user settings
	 + Do not build an XCArchive file when building for ios on non-mac platforms

Change 3036726 on 2016/07/02 by Brent.Pease

	 + Add missing tvOS bitcode library

Change 3037455 on 2016/07/05 by Lee.Clark

	PS4 - Default SmoothFrameRate to false

Change 3037470 on 2016/07/05 by Keith.Judge

	Xbox One - Allow framerate smoothing, but default to off for consistency with PS4.

Change 3038322 on 2016/07/05 by Jeremiah.Waldron

	Fix for asset packages with Unicode characters in their name not being loaded on Android.

	Fixing AndroidString's WIDECHAR* Strstr(WIDECHAR*, WIDECHAR*) function
	  - Using an implementation of wcsstr, with a fix integrated for the incorrect implementation in Android ndk master branch, instead of converting the incoming WIDECHAR strings to ANSI strings just to be able to use strstr on them.

	The previous method was prone to causing the FString's Find and Contains functions to return false positives because when we convert wide to ansi, any character over the value of 255 is just set to '?'
	This in turn caused any package path strings with one of those characters in it to fail to load since they would be interpreted as having a question mark in their path, which is an invalid path character.

	#jira UE-18643
	#android

Change 3038693 on 2016/07/05 by Mark.Satterthwaite

	Change the way we store debug info for Metal shaders - the KeepDebugInfo flag now does precisely that, storing the shader code into the Metal header along with the path it was generated from. That means if KeepDebugInfo is enabled and Optimise is disabled then we can still access the shader code from within the Metal tools. On iOS/tvOS the shader code will be runtime compiled so that it shows up in the tooling but on Macs it will prefer to load the optimised version and simply unpack the shader code to the path from which it was compiled. This only works if we change the Metal shader compiler to emit temporary Metal files to the OS temporary directory so that the tools can read the file directly.

Change 3039880 on 2016/07/06 by Mark.Satterthwaite

	Implement point-light shadow caching for RHI's that support specifying the render target layer from the vertex shader in lieu of geometry shaders. This requires changing FScreenVSForGS to TScreenVSForGS so that there can be a vertex-shader-layer variant (only compiled on RHI's that use it) whose output matches FCopyShadowMapsCubePS input. This alternative rendering path also requires adding the instance count to DrawRectangle so that we can render to all faces of the cubemap from a single draw call.

Change 3040407 on 2016/07/06 by Michael.Trepka

	Added View->Enter Full Screen menu item for games on Mac

Change 3040550 on 2016/07/06 by Mark.Satterthwaite

	Intel Metal compiler requires bool expressions be cast to 'int' rather than 'uint'.

Change 3041098 on 2016/07/07 by Peter.Sauerbrei

	initial changes to get IOS builds from PC in launcher release of engine

Change 3041310 on 2016/07/07 by Keith.Judge

	Xbox One - Optimize away GetDesc() and checks for D3D11_USAGE_DYNAMIC deep in the state cache as it's impossible for any buffer to have that flag set.

Change 3041327 on 2016/07/07 by Keith.Judge

	Xbox One - Remove pointless memory barrier call in D3D11Query

Change 3041352 on 2016/07/07 by Keith.Judge

	Xbox One - Add _RenderThread version of UpdateTexture2D() that just passes through to the RHI one. Saves a fairly significant chunk of time on the render/RHI thread when this is called a lot.

Change 3041419 on 2016/07/07 by Jeff.Campeau

	Xbox One toolchain fix for VS2015 Update 3

Change 3041635 on 2016/07/07 by Jeff.Campeau

	Don't change game render resolution in response to WM_SIZE messages when in fullscreen (the game will restore the correct video mode when the window is restored).
	#jira OR-15578

Change 3041735 on 2016/07/07 by Peter.Sauerbrei

	re-enabled the build parameters for launcher release builds in IOS

Change 3041783 on 2016/07/07 by Joe.Graf

	Changed bAutpApplyFailed to bAutoApplyFailed (typo)

Change 3041784 on 2016/07/07 by Joe.Graf

	Fixed missing %s from a log message in UResavePackagesCommandlet

Change 3042434 on 2016/07/08 by Lee.Clark

	PS4 - Fix compilation failure when Unsafe Command Buffers are enabled.

Change 3042658 on 2016/07/08 by Lee.Clark

	PS4 - Use SDK 3.508.201

Change 3042970 on 2016/07/08 by Josh.Adams

	Redoing CL in 3040890 in Dev-Platform

Change 3043243 on 2016/07/08 by Chris.Babcock

	clamped allowed slot range for gameplay debugger's categories
	copy of CL# 3040313 from //UE4/Dev-Framework
	#jira UE-32866

Change 3043500 on 2016/07/08 by Mark.Satterthwaite

	Downgrade "-Wdelete-non-virtual-dtor " to a warning again for Xcode 8 on iOS/tvOS to match macOS.

Change 3044628 on 2016/07/11 by Mark.Satterthwaite

	Disable ShaderCache by default - it was implemented prior to RHI-thread/parallel-execution so it isn't thread-safe and can't be enabled by default on Mac now that Metal supports these features.
	#jira UE-32989

Change 3044948 on 2016/07/11 by Dmitry.Rekman

	Fix editor crash (happened on Linux, but not really specific to it) (UE-32973)

	- We can pass flags with shadows enabled when rendering asset thumbnails; thus disable shadows always when r.ShadowQuality is 0. (Redoing CL 3029574 by Bob).
	- Also fix mismatched 'noperspective' qualifier that caused NVidia drivers to refuse to link GL shaders.

	#jira UE-32973

Change 3045322 on 2016/07/11 by Josh.Adams

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

Change 3046028 on 2016/07/12 by Lee.Clark

	PS4 - Check for correct SDK installation
	Allow use of 7th core when Morpheus is enabled

Change 3046339 on 2016/07/12 by Peter.Sauerbrei

	fix for incorrect error message when iPhone Plus icon is the correct size

[CL 3046645 by Josh Adams in Main branch]
2016-07-12 15:06:08 -04:00
Gil Gribb
e581ead572 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3045398)
#lockdown Nick.Penwarden
#rb none

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

Change 3028958 on 2016/06/27 by Ben.Woodhouse

	Fix for perf issue with GetSingleFinalDataConst

	This was caused by the LPV integration/switch to blendables. Now we cache the flag for the directionalocclusion in the LPV class. This reduces calls to GetSingleFinalDataConst on the blendable data (potentially slow), and makes things a bit cleaner and consistent.

	Tested in QAGame editor (with LPV enabled in ConsoleSettings.ini)

	#jira UE-26179

Change 3029401 on 2016/06/27 by Rolando.Caloca

	DR - More vk logging

Change 3029549 on 2016/06/27 by Uriel.Doyon

	Refactored "r.OnlyStreamInTextures" into "r.Streaming.FullyLoadUsedTextures", making it fully load every used textures, as an alternative to disabling texture streaming.
	New options "r.Streaming.UsePerTextureBias" that assign a  bias between 0 and MipBias to each texture in order to fit in budget.
	Fixed crash when disabling texture streaming.
	Fixed issue when disabling texture streaming that would make current loaded texture low res.
	New logic to prevent retrying to cancel a streaming request more than once.
	Pending load request of one extra mip will not be cancelled anymore.
	Changed UTexture2D from float to double. Also using FApp::GetCurrentTime() instead of FPlatformTime::Seconds().
	#jira UE-32197
	#jira UE-31102

Change 3029837 on 2016/06/27 by David.Hill

	Fixed Shutter SM4 not working when using compute shader eye-adaptation
	#jira UE-32443

	The default eye adaptation value was missing.

Change 3030039 on 2016/06/27 by Uriel.Doyon

	Fix for crash when landscape materials are used in the Texture Streaming Build.
	#jira UE-32196

Change 3030081 on 2016/06/27 by Uriel.Doyon

	Updated MaterialTexCoordScalesPixelShader to use PackedEyeIndex, preventing crash when building the map with stereo rendering enabled.

Change 3030401 on 2016/06/28 by Ben.Woodhouse

	Perf Monitor: Fix for perf warning due to cvar FindConsoleVariable being called too frequently. Tested in QAGame editor (DX11)
	#jira UE-31238

Change 3030607 on 2016/06/28 by Marc.Olano

	Random Number generators: fixed bug in TEA, added integer and float Blum-Blum-Shub. BBS is way cheaper for similar quality, suggest it for future use.

Change 3030627 on 2016/06/28 by Ben.Woodhouse

	Fix for warning. CVar naming scope clash (doesn't appear to happen in vs2015).

Change 3030809 on 2016/06/28 by Marc.Olano

	Noise shader function rename & perf improvement.

	Due to incorrect terminology in internet soruces, previous "Perlin" noise was not, in fact, Perlin noise. Now more accurately called "Value" noise. 6x perf improvement for value noise by changing random number function to BBS. Also updated instruction counts in UI tooltips.

Change 3030850 on 2016/06/28 by Marc.Olano

	Rename & redirect noise material enums. At some point these got switched around and no longer accurately described the noise options the selected. Redirect, so all existing content will continue to work as-is. Updated UDN docs to match.

Change 3030981 on 2016/06/28 by Rolando.Caloca

	DR - vk - More logging

Change 3031056 on 2016/06/28 by Marc.Olano

	Introduce new pure-ALU gradient shader noise. Add noise samples to RenderTest map

Change 3031398 on 2016/06/28 by Benjamin.Hyder

	updating TM-Shadermodels (correcting Mt Rushmore)

Change 3031441 on 2016/06/28 by Marc.Olano

	Use only float version of BBS shader rand function for ES2

Change 3031463 on 2016/06/28 by John.Billon

	Fixed F4 changing the viewmode in Fortnite editor. The detailed lighting viewmode (detaillighting) named in DefaultInput.ini differed from the one in BaseInput.ini(lit_detaillighting).
	#Jira UE-32020

Change 3031512 on 2016/06/28 by Zabir.Hoque

	Relax clear flags for DX12 RHIs.
	Properly flush pending commands before residency is updated.

Change 3031517 on 2016/06/28 by Rolando.Caloca

	DR - vk logging using r.Vulkan.DumpLayer

Change 3032359 on 2016/06/29 by Allan.Bentham

	Fix mobile shadows crash.

Change 3032431 on 2016/06/29 by Gil.Gribb

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

Change 3032757 on 2016/06/29 by Uriel.Doyon

	Fixed global mip bias being applied twice following integration with main.

Change 3033121 on 2016/06/29 by Rolando.Caloca

	DR - vk - Logging

Change 3033529 on 2016/06/29 by Daniel.Wright

	Null world guard on UReflectionCaptureComponent::ReadbackFromGPU

Change 3033668 on 2016/06/29 by Uriel.Doyon

	Grouped texture streaming settings to simplify logic.
	New options "r.Streaming.UseAllMips" to ignores the different lod and cinematic bias
	#jira UE-32118

Change 3034403 on 2016/06/30 by Rolando.Caloca

	DR - Shorten dumped shader debug strings

Change 3034475 on 2016/06/30 by Rolando.Caloca

	DR - Missing logging

Change 3034722 on 2016/06/30 by Uriel.Doyon

	Improved StreamingAccuracy viewmodes with alpha test and translucent materials
	#jira UE-32656

Change 3034797 on 2016/06/30 by Rolando.Caloca

	DR - vk - 'fix' RHIClear but causes a CPU hang on AMD, so disabled again

Change 3034799 on 2016/06/30 by Rolando.Caloca

	DR - vk - missed file

Change 3034905 on 2016/06/30 by Rolando.Caloca

	DR - vk - Fix for render passes being reused with wrong dimensions

Change 3035503 on 2016/07/01 by Simon.Tovey

	Async compute version of translucency lighting volume clear.

Change 3035577 on 2016/07/01 by Marc.Olano

	Tiling noise. Adds tiling option for gradient, gradient texture, and value noise in the noise material node. Tiling is more expensive, but allows noise functions to be baked into a seamless repeating texture.

Change 3035587 on 2016/07/01 by Ben.Woodhouse

	Fix for async SSAO bug (SSAO Async Compute results are used before the async job wait)

	#jira UE-32709

Change 3035618 on 2016/07/01 by Olaf.Piesche

	Asset fixes

Change 3035692 on 2016/07/01 by Rolando.Caloca

	DR - vk - Deferred deletion queue

Change 3035808 on 2016/07/01 by Rolando.Caloca

	DR - vk - Stat for deletion time, fixed some logging

Change 3036012 on 2016/07/01 by John.Billon

	Alpha Coverage Preservation
	-Textures have a Alpha Preservation Vec4 property which dictates about much of that channel to preserve down the mip chain during mip generation.
	#Jira UE-31986

Change 3036041 on 2016/07/01 by Rolando.Caloca

	DR - vk - Fix for 32bit

Change 3036433 on 2016/07/01 by Rolando.Caloca

	DR - More vk logging

Change 3036935 on 2016/07/04 by Simon.Tovey

	Removing Data Objects

Change 3036942 on 2016/07/04 by Ben.Woodhouse

	Fix for decal rendering resource leak

	The cause was that FD3D11BoundRenderTargets doesn't support setting RTs sparsely. So if one element is NULL, it won't release the ones after it.

	The sparse RT layout happened as a result of a change back in October, which meant that GBuffers for decals could be set sparsely, dependent on whether the decal wrote to the normalbuffer

	This change adds support for sparsely bound rendertargets in FD3D11BoundRenderTargets.

	#jira UE-32602

Change 3037563 on 2016/07/05 by Chris.Bunner

	HLOD self-shadowing in baked lighting fix.

Change 3037640 on 2016/07/05 by Marcus.Wassmer

	Fix bug in USE_GPU_OVERWRITE_CHECKING

Change 3037927 on 2016/07/05 by Rolando.Caloca

	DR - Fix touch pads not showing on Vulkan
	#jira UE-32062

Change 3038085 on 2016/07/05 by Chris.Bunner

	HLOD dynamic shadowing support.
	#jira UE-22627

Change 3038209 on 2016/07/05 by Rolando.Caloca

	DR - vk - Android compile fix

Change 3038644 on 2016/07/05 by Uriel.Doyon

	Added LerpRange that allows to lerp between two rotators without taking the sortest path.

Change 3038820 on 2016/07/05 by Uriel.Doyon

	Selecting streaming accuracy view modes will not automatically generate missing visualization data.

Change 3039332 on 2016/07/06 by John.Billon

	-Made MaxGPUSkinBonesCvar a FAutoConsoleVariableRef and moved it to mesh utilitles from console manager to fix a thread initialization problem.
	#Jira UE-31710

Change 3039454 on 2016/07/06 by Simon.Tovey

	Moved all Niagara files from Engine and UnrealEd to remove dependancies and increase compile times.
	Niagara is now 99.999% decoupled from engine and editor so development should be much streamlined.

	Plus a few other edits to remove Curves/DataObjects that I missed in last CL.

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

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

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

	DR - vk logging, submit counter

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

	DR - Allow more samplers on GL4
	#jira UE-32628
	#jira UE-32744

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

	Fixed non-directional DFAO occlusion on specular 'r.AOSpecularOcclusionMode 0'
	Skylight occlusion tint now applies to specular
	Skylight occlusion tint on diffuse is now correctly affected by DiffuseColor

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

	Forward renderer initial implementation
	* Point and spot lights are culled to a frustum space grid, base pass loops over culled lights.
	* Light culling uses a reverse linked list to avoid a per-cell limit, and the linked list is compacted to an array before the base pass.
	* New cvars to control light culling: r.Forward.MaxCulledLightsPerCell, r.Forward.LightGridSizeZ, r.Forward.LightGridPixelSize
	* A full Z Prepass is forced with forward shading.  This allows deferred rendering before the base pass of shadow projection methods that only rely on depth.
	* Dynamic shadows are packed based on the assigned stationary light ShadowMapChannel, since stationary lights are already restricted to 4 overlapping.
	* GBuffer render targets are still allocated
	* Fixed several issues in parallax corrected base pass reflections - not blending out box shape, discontinuity in reflection vector, not blending with stationary skylight properly
	* Forward shading is now used for TLM_SurfacePerPixelLighting translucency in the deferred path
	* Notable missing features: shadowing of translucency, support for various translucency lighting modes, multiple blended reflection captures

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

	Added r.Shadow.WholeSceneShadowCacheMb, which defaults to 150, to limit how much memory can be spent caching whole scene shadowmaps

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

	Fixed tile artifacts in indirect capsule shadows from doing the scaled sphere vs tile bounding sphere intersection in the wrong space

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

	DR - vk - More logging

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

	Skylights aren't captured until their level is made visible- fixes the case where skylights capture too early

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

	PerObject shadows from point / spot lights do the light source pull back based on subject box size, not subject radius, since the box is used to find a valid < 90 degree projection.  Fix from licensee

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

	Fixed TexCreate_UAV being used on translucency volume textures in SM4

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

	DR - vk - Make host mem accesses coherent

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

	CIS fixes

Change 3041028 on 2016/07/07 by Gil.Gribb

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

Change 3041235 on 2016/07/07 by Simon.Tovey

	Compile fix for FName conflict on UProperty (hopefully).

Change 3041666 on 2016/07/07 by Daniel.Wright

	Fixed TLM_SurfacePerPixelLighting in SM4, falls back to lighting volume

Change 3041731 on 2016/07/07 by Olaf.Piesche

	Adding Niagara to dynamically loaded module list; should fix UE-32915

Change 3042181 on 2016/07/07 by Daniel.Wright

	CIS fix

[CL 3045471 by Gil Gribb in Main branch]
2016-07-11 18:51:20 -04:00
Andrew Grant
48331caa30 Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 3028454)
#lockdown Nick.Penwarden

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

Change 3028439 on 2016/06/27 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 28 @ CL 3028090

	#RB:none
	#Tests:none

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

Change 3027952 on 2016/06/26 by Jurre.deBaare

	- Integrating code fixes/changes from Simplygon for Normals issue on Simplygon Swarm + landscape culling
	- Readded landscape/volume culling for in-engine static mesh merging path
	- Fixed issue with r.HLOD force -1 (now stops forcing hlods)
	- Marked hlodcullingvolume as experimental
	- Added Landscape culling flag + precision level

	#codereview Michael.Noland
	#rb Michael.Noland
	#tests build clusters locally/cloud + landscape culling tests

Change 3027702 on 2016/06/25 by Jason.Bestimt

	#ORION_DG - Merge MAIN @ CL 3027698

	#RB:none
	#Tests:none

Change 3027312 on 2016/06/24 by Daniel.Lamb

	Changed the way reentry data is stored in the cooker, reduce work load by main thread, also fix issue with reentry data being used from incorrect packages.
	#rb Peter.Sauerbrei
	#test QA game launch on and cook by the book + cook on the fly paragon

Change 3027165 on 2016/06/24 by Daniel.Lamb

	Fix compiler warnings from cvars changes.
	#rb none
	#test cook paragon

Change 3026900 on 2016/06/24 by Daniel.Lamb

	Change the way low quality lightmap shaders are enabled / disabled as the engine can't be used in the should cache function.
	#rb Marcus.Wasmer
	#test Cook on the fly paragon
	#codereview Rolando.Caloca

Change 3026874 on 2016/06/24 by Olaf.Piesche

	#jira OR-18363
	fix distortion in particle macro UVs with camera movement

	#rb frank.fella
	#tests PC Editor/Game

Change 3026494 on 2016/06/24 by jason.bestimt

	#ORION_MAIN - Merge 28 @ CL 3026460

	#RB:none
	#Tests:none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 3026381 on 2016/06/24 by Graeme.Thornton

	Strip particle modules, emitters and lodlevels from cooked server data. Saves ~10mb of runtime memory on Paragon

	#rb simon.tovey
	#codereview dmitry.rekman
	#tests pc cooked client/server, golden path

Change 3025760 on 2016/06/23 by jason.bestimt

	#ORION_MAIN - Merge 28 @ CL 3025687

	#RB:none
	#tests:none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	//Orion/Dev-General/OrionGame/Content/Characters/Heroes/Sword/Meshes/sword.uasset - can't integrate exclusive file already opened
	//Orion/Dev-General/OrionGame/Content/Characters/Heroes/Sword/Meshes/sword_Skeleton.uasset - can't integrate exclusive file already opened
	#CodeReview: jason.bestimt

Change 3025661 on 2016/06/23 by Mieszko.Zielinski

	Added a feature to PathfollowingComponent allowing it to identify when it starts following a navigation link #UE4

	#rb Lukasz.Furman
	#test golden path

Change 3025359 on 2016/06/23 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: sam.zamani
	#online,externalui,ps4
	- expose access to reset cookies before invoking embedded web browser
	- fixed not capturing resulting Url when PS4 browser is closed

	#rb none
	#tests ps4

	#ROBOMERGE-SOURCE: CL 3025356 in //Orion/Release-28/... via CL 3025358
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3025184 on 2016/06/23 by Lina.Halper

	Fix crash with morphtargets

	#jira: OR-24257
	#rb: Rolando.Caloca
	#tests: switching mesh with different morphtargets in editor

Change 3024714 on 2016/06/23 by Lukasz.Furman

	added vlog extension to visual debugger tool, added object whitelist to vlog to include selected minion data in  games started with -LogBotGame param
	#rb Mieszko.Zielinski
	#tests server game with and without LogBotGame cmdline

Change 3024709 on 2016/06/23 by Daniel.Lamb

	Added support for async save when saving seperate bulk data file.
	Added mb saved to cooking package stats.
	#rb Andrew.Grant,Wes.Hunt
	#test Cook Paragon

Change 3024674 on 2016/06/23 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: sam.zamani
	Merging //Orion/Release-28 to Main (//Orion/Main)

	#online,identity,ps4
	- add psplus flag to online account after privilege check

	#rb none
	#tests ps4 login flow

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

Change 3024510 on 2016/06/23 by Graeme.Thornton

	Added more info to the dumpparticlesystems exec command output

	#rb simon.tovey
	#tests cooked pc client, golden path

Change 3024504 on 2016/06/23 by Graeme.Thornton

	Asset registry memory optimisation - make sure all dependency node link arrays are sized exactly as they need to be (saves ~1mb)

	#rb robert.manuszewski
	#tests windows cooked client, golden path

Change 3024213 on 2016/06/22 by Ryan.Gerleve

	Handle a rare case in replays where the spectator controller is null but we still find a valid NetGUID for it.
	Added an ensure before a check that would fail in this case so we'll know if it happens again.

	#tests replays
	#rb john.pollard

Change 3024127 on 2016/06/22 by John.Pollard

	Bulk merge using Dev-Networking_->_Dev-General_(Orion)

	3002989
	Add ability to skip missing/changed properties in FFastArraySerializer

	3003072
	Fix crash related to new replay backwards compatibility changes

	3008097
	Renaming CompatibleReplayout to NetFieldExportGroup preparing to unify ability to use FNetFieldExportGroup for both RepLayout and FClassNetCache

	3009684
	Added ability to use FNetFieldExportGroups for FClassNetCache as well as FRepLayout

	* Adds ability to track missing/changed custom delta properties names
	* Adds ability to track missing/changed RPC's

	3013455
	Add ability to skip over RPC parameters that have changes/missing in replays for backwards compatibility

	* We now mark FClassNetCache properties as bIncompatible so we don't spam forever when they are out of date
	* No longer factor in parameters when building checksum for RPC's
	* Save FNetFieldExport handle for FClassNetCache fields
	* Use WriteIntWrapped when saving FClassNetCache fields FNetFieldExport handles (and use NetFieldExportGroup->NetFieldExports.Num() to determine max value)
	* Lots of cleanup and sanity checking improvements

	3018078
	Optimize replay checkpoints

	* Share work that was already done during normal replication, and re-use this data to remove the need to compare any checkpoint properties
	* When saving a checkpoint, we no longer create a new connection and new channels, instead we re-use the existing channels, and added the ability to make this a transient operation
	* To make custom delta serialize properties work, we compare against the CDO state instead of current state when saving out a checkpoint

	3021196
	Fix issue with Fast tarray exporting package map info during checkpoints

	* Add ability to save and restore package map ack status
	* Save package map ack status before saving checkpoint, and then restore it back afterwards, this will then allow the stream that writes afterward to re-export anything that was new in the checkpoint
	* No longer queue up reliable bunches on ack list for internal ack connections

	3024033
	Prune the cached change list before using when saving out checkpoints

	* Fixes issues when saving checkpoint, and the live properties change array size, which throws everything off when it comes time to use the LifetimeChangelist

	3024034
	Don't close channels when saving checkpoints, fixes issue where it creates a bunch with bOpen/bClose (because we're forcing all SendBunches to re-open channels), which throws off the stream

	#rb RyanG
	#tests Replays

Change 3024021 on 2016/06/22 by Dmitry.Rekman

	Fix PS4 build.

	#rb Michael.Noland
	#tests none
	#codereview Michael.Noland, Dan.Youhon, Sammy.James

Change 3023734 on 2016/06/22 by Lukasz.Furman

	added replication for input events and tool state for both gameplay debugger categories and extensions
	#ue4
	#rb Mieszko.Zielinski
	#tests PIE, server game

Change 3023708 on 2016/06/22 by Dmitry.Rekman

	Add a separate macro for a poison malloc proxy usage.

	#rb Michael.Noland
	#codereview Michael.Noland, Gil.Gribb
	#tests Compiled OrionServer-Linux-Debug, ran it

Change 3023670 on 2016/06/22 by Nick.Darnell

	Home screen - Fixing safezones on the homescreen.  Adding a scale option to the XP_Fill widget.  Adding better animations to the tiles.  Showing subtitles again.  Hero XP summary widget now takes you to that hero.

	#rb none
	#tests PIE

Change 3023632 on 2016/06/22 by Dmitry.Rekman

	Fix incorrect matching condition in comments.

	#rb none
	#tests Compiled OrionServer-Linux-Debug
	#codereview Michael.Noland

Change 3023475 on 2016/06/22 by Rolando.Caloca

	O - Back out changelist 3022847 as it broke SSS on PC
	#rb none
	#tests re-run editor on PC

Change 3023178 on 2016/06/22 by Michael.Noland

	Engine: Added system memory and % of time spent hitching to analytics
	#rb bob.tellez
	#tests Tested a match in Paragon

Change 3022963 on 2016/06/22 by Mieszko.Zielinski

	Fixed a subtle navigation repathing bug #UE4

	While repathing to a location, rather than an actor, the navigation query used path's end while it should be using the original query's EndLocation.

	#rb Lukasz.Furman
	#test golden path

Change 3022865 on 2016/06/22 by David.Ratti

	gameplay cue editor: remove "GameplayCue_" prefix from default GameplayCueNotify filename in default ability system projects

	#rb none
	#tests ability system sample project

Change 3022847 on 2016/06/22 by Rolando.Caloca

	O - Remove checkerboard SSS rendering and recombine post process pass when SSS not enabled
	#rb Marcus.Wassmer
	#codereview Marcus.Wassmer, Brian.Karis
	#tests Load Agora_P, check perf, toggle r.SSS.Quality 1/0, check characters with skin

Change 3022804 on 2016/06/22 by Mieszko.Zielinski

	Fixed AIController clearing out CachedGameplayTasksComponent on UnPosses, even if Pawn was not the CachedGameplayTasksComponent's owner #UE4

	Also, made running BT not clearing info in BB if AI's current BB is compatible with the one required by BT

	#rb Lukasz.Furman
	#test golden path

Change 3022674 on 2016/06/22 by Robert.Manuszewski

	Reimplementing CL #2993969 (Dev-Blueprints) by Maciej.Mroz:

	UE-30729 Crash in Native Orion when selecting Sword or Tomahawk

	Clear AsyncLoading in subobjects.

	#jira OR-23997

	#rb me
	#tests Golden path in editor build, selecting Venus

Change 3022405 on 2016/06/21 by Ryan.Gerleve

	Fix for OR-23948, crash with death cam enabled. Use a weak pointer to store the viewer on the DemoNetDriver and update it when the game player controller is received.

	#rb john.pollard
	#tests bug repro

Change 3022387 on 2016/06/21 by Ryan.Gerleve

	Added the ability to disable ticking of individual worlds.

	#tests golden path
	#rb john.pollard
	#codereview marc.audy

Change 3022312 on 2016/06/21 by Nick.Darnell

	Home Screen - Adding a max aspect ratio lock to SBox, may need some more fine tuning math may still be a bit pants in some cases.  The XP ovewview panels now have a basic support for account and hero progression.  Hero one shows the last hero you played, widget is invisibile until you play your first game.  The tiles now use the Max Aspect Ratio to prevent stretching forever on 21:9 monitors causing them to just look crazy.  Weekly quests now show the weekly quests screen when clicked.  OrionUserWidgetBase no longer prevents blueprints from running code in reponse to mouse down/up actions if the userwidget consumes input - it always calls the blueprint code first, and always returns handled if it consumes input.

	#rb none
	#tests PIE

Change 3022207 on 2016/06/21 by Wes.Hunt

	Fix Analytics provider to retain passed in AppVersion string instead of using default %VERSION%.
	#rb none
	#tests run windows server with one bot connecting and checking analytics version is what is expected.

Change 3021808 on 2016/06/21 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - call GetTotalMicroseconds instead of GetTotalMilliseconds * 1000
	#rb none
	#tests compile run ps4

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

Change 3021663 on 2016/06/21 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: josh.markiewicz
	#UE4 - CancelFindSessions() didn't null out search result
	- future FindSession() calls would fail with "search in progress"
	#rb joe.wilcox
	#tests UT matchmaking

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

Change 3021508 on 2016/06/21 by Marcus.Wassmer

	Remove anti-ghosting AA for now.
	Causes dithered transparency to be very wrong (Dekker shoulders)
	And also a border around all characters of 'noisy fuzz' even when they are not moving
	#rb none
	#test PC/PS4
	#codereview Brian.Karis,Jordan.Walker

Change 3021475 on 2016/06/21 by Marcus.Wassmer

	Duplicate fix for subsurface spec in prep for PS4 optimization. (DevRendering 3018664)
	unified some code for easier maintainance, fixed missing multiply from former change
	#rb none
	#test PS4/PC agora

Change 3021468 on 2016/06/21 by Michael.Noland

	Physics: Added more information when convex cooking partially succeeds (fails initially but succeeds with inflation) indicating the full path of the mesh that failed
	#rb ori.cohen
	#tests Compiled changes, will provide more information when issue reoccurs in build machine cooks
	#jira OR-24082

Change 3021460 on 2016/06/21 by Michael.Noland

	Engine: Added time spent in each hitch bucket to FPS chart .log output and analytics output
	#rb bob.tellez
	#tests Tested a match in Paragon
	#codereview dmitry.rekman

Change 3021368 on 2016/06/21 by Marcus.Wassmer

	Create Tonemapper configuration with no ColorFringe to save .15ms on PS4 when colorfringe is not used.
	#rb rolando.caloca
	#test agora with/wo new config
	#codereview brian.karis

Change 3021119 on 2016/06/21 by David.Ratti

	Make -notimeouts work during initial connecting phase
	#codereview John.Pollard
	#rb none
	#tests pie agora

Change 3021048 on 2016/06/21 by David.Ratti

	minor tweaks to gameplay cues:
	-Descriptions of engine GC notify classes
	-Added 'auto attach to owner' flag on actor notify class.

	#rb none
	#test ability system sample project

Change 3020694 on 2016/06/20 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3020301

	#RB:none
	#Tests:none

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

	#CodeReview: cody.haskell

Change 3020624 on 2016/06/20 by Michael.Noland

	Engine: Pushing more fps chart analytics up to engine level code from Paragon
	Engine: Pushing benchmark config vars up to engine level code from Paragon, and added records of individual sub-steps of benchmarks
	#rb Bob.Tellez
	#tests Golden path Solo VS AI in Paragon and forced a match
	#codereview bob.tellez, peter.knepley

Change 3020181 on 2016/06/20 by Dmitry.Rekman

	Re-do allowing allocations in NullRHI (OR-24029).

	- Originally CL 2990582 by MarcusW, stomped during merge by CL 3006926.

	#rb none
	#codereview Marcus.Wassmer, Andrew.Grant
	#tests none

Change 3020139 on 2016/06/20 by Ryan.Gerleve

	Added ability to pause replay recording while keeping the current replay open.

	#rb john.pollard
	#tests paused deathcam recording while disabled

Change 3019817 on 2016/06/20 by Dmitry.Rekman

	Poison allocated/freed memory in Debug and Development (non-editor) configs.

	- With this Paragon client may be more likely to crash on start.

	#rb Steve.Robb
	#codereview  Robert.Manuszewski, Michael.Noland, Andrew.Grant, Gil.Gribb, Steve.Robb
	#tests Built Linux server and Windows client, ran them, also built Windows Orion editor.

Change 3019599 on 2016/06/20 by Rolando.Caloca

	O - Fix flickering on heroes with morph targets
	#rb Marcus.Wassmer
	#tests Load Agora_P
	#jira OR-23866

Change 3019581 on 2016/06/20 by Wes.Hunt

	Fix crash reporter client analytics for internal builds. (Pushing critical fix immediately from //UE4/Orion-Staging)
	#rb Chris.Wood
	#tests none

Change 3019524 on 2016/06/20 by David.Ratti

	call APawn::OnRep_Controller when ClientRetryClientRestart sets the pawn directly

	#rb none
	#tests golden path

Change 3019406 on 2016/06/20 by Marcus.Wassmer

	Duplicate 3014956 from Dev-Rendering
	Fixed HLOD and mesh LODs getting hit by Lightmass ray traces that didn't originate from a mesh
	Volume lighting samples and precomputed visibility cells are now only placed on LOD0 (of both mesh LODs and HLOD)
	#rb none
	#test none
	#codereview Jordan.Walker

Change 3019371 on 2016/06/20 by Graeme.Thornton

	Optimize cooked asset registry dependency node data structures. Saves ~10mb on Paragon.

	#rb robert.manuszewski
	#tests tested with cooked pc client + server

Change 3018492 on 2016/06/17 by Laurent.Delayen

	FBoneReferenceCustomization: support editing properties in AnimBP defaults.

	#rb none
	#tests: Sword.

Change 3017974 on 2016/06/17 by Ryan.Gerleve

	Add an option to toggle deathcam in the gameplay settings UI if the OrionRuntimeOption for deathcam is enabled.

	#rb cody.haskell
	#tests settings menu, enabled and disabled deathcam

Change 3017913 on 2016/06/17 by Robert.Manuszewski

	Fixing leaked log archive.

	#rb Steve.Robb
	#tests Cooked Win64 client + server

Change 3017873 on 2016/06/17 by Daniel.Lamb

	Fix warning in diff cooked build.
	#test none
	#rb none

Change 3017676 on 2016/06/17 by Sam.Zamani

	#online,identity,mcp
	fix for uninitialized variable

	#rb dmitry.rekman
	#tests none

Change 3017671 on 2016/06/17 by Robert.Manuszewski

	Fxied and improved log message when cluster assumptions are violated.

	#rb Steve.Robb
	#tests Win64 client + server (cooked) golden path

Change 3017358 on 2016/06/16 by Nick.Atamas

	Checking in Darnell's change that adds correct geometry to widgets inside retainer widgets.

	#rb none
	#test PIE

Change 3017242 on 2016/06/16 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3017179

	#RB:none
	#Tests:none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	//Orion/Dev-General/OrionGame/Content/UI/Tooltips/Hero/AbilityTooltip.uasset - can't integrate exclusive file already opened
	#CodeReview: jason.bestimt

Change 3017237 on 2016/06/16 by Dmitry.Rekman

	Fix accessing uninitialized field (kills valgrind warnings).

	#rb none
	#codereview Michael.Noland, Andrew.Grant, Ori.Cohen
	#tests Compiled and ran Linux server.

Change 3017236 on 2016/06/16 by Dmitry.Rekman

	Initialize missed field (kills valgrind warnings).

	#rb none
	#codereview Michael.Noland, Andrew.Grant
	#tests Compiled and ran Linux server.

Change 3017186 on 2016/06/16 by Dmitry.Rekman

	Linux: Add hooks for libcrypto memory functions.

	- Libcurl uses OpenSSL, which allocates memory using libcrypto's CRYPTO_malloc() and apparently on purpose does not initialize it.
	- This change a) redirects these allocations to use UE's malloc  b) initializes it with zeros, avoiding valgrind's warnings.
	- This behavior is not used on Shipping configurations because the impact on entropy is not understood (TBD later).

	#rb Michael.Noland, Rob.Cannaday (original version)
	#codereview Michael.Noland, Rob.Cannaday, Alex.Fennel, Chris.Babcock, Sam.Zamani
	#tests Compiled Linux server and ran it.

Change 3017037 on 2016/06/16 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: andrew.grant
	Merging content fix for driver crash from Release-27

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

Change 3016838 on 2016/06/16 by Alexis.Matte

	#jira UE-31901 fix to export all blueprint component to obj

	#rb uriel.doyon
	#codereview matt.kuhlenschmidt
	#test export a blueprint containing multiple staticmesh component to obj

Change 3016629 on 2016/06/16 by Dmitry.Rekman

	Make Binned default on Linux non-editor builds.

	#codereview Andrew.Grant
	#rb none
	#tests none

Change 3016615 on 2016/06/16 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: andrew.grant
	Temporarily disabling jemalloc for Linux
	#rb #tests none
	[CodeReviewed] Dmitry.Rekman

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

Change 3016566 on 2016/06/16 by Michael.Noland

	Engine: Fixed a regression that broke safe zone debugging features in Windows by reintroducing code from CL# 2861030 that was accidentally deleted in a merge
	#codereview andrew.grant
	#rb dan.hertzka
	#tests Tested r.DebugSafeZone.Mode 1 with r.DebugSafeZone.TitleRatio 0.9 in PIE and confirmed that SSafeZone obeyed it and the red overlay appeared

Change 3016521 on 2016/06/16 by Ryan.Gerleve

	Client recoreded replay fixes and optimizations from Dev-Networking (and one from //UE4/Main), for deathcam.

	Includes the following CLs from Dev-Networking:
	2997908
	2998001
	2998832
	2999054
	2999057
	2999749
	3000051
	3001361
	3001365
	3004958
	3009972
	3009973

	And this CL from //UE4/Main:
	3015528

	#tests golden path, replays
	#rb john.pollard

Change 3016503 on 2016/06/16 by Brian.Karis

	Fixed uninitialized variables on particle lights. Fixes hair shading.

	#rb none
	#tests editor

Change 3016429 on 2016/06/16 by Max.Chen

	Sequencer: Fix StartTime when clamping start offset 0. Follow up to CL #3009386.

	#jira UE-29167
	#tests Load up AnnounceMaster and adjust leading edge of animation clips
	#rb Frank.Fella

Change 3016356 on 2016/06/16 by Lina.Halper

	- Fix crash on rampage morphtarget

	Merging using //UE4/Dev-Framework_to_//Orion/Dev-General
	 - this is dupe change from Dev-Framework

	#jira: https://jira.ol.epicgames.net/browse/OR-23194
	#rb: Ori.Cohen
	#tests: editor/pie spawn as rampage's alt skin

Change 3015696 on 2016/06/15 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Merge 27.2 @ CL 3015646

	This re-unifies our build pipeline.  Fingers crossed. (only 6 files are actually different)

	#RB:none
	#Tests:none

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

Change 3015642 on 2016/06/15 by Mieszko.Zielinski

	Fixes to multiple reasons AI bots were getting stuck #Orion

	#rb Lukasz.Furman
	#test golden path

Change 3015622 on 2016/06/15 by Mieszko.Zielinski

	fixed FMetaNavMeshPath doing navmesh path update without checking nav agent if pathfinding should be postponed #UE4

	#rb Lukasz.Furman
	#test golden path

Change 3015514 on 2016/06/15 by Uriel.Doyon

	Fixed GlobalMipBias not affecting max texture resolution.
	This fix is implemented differently in Dev-Rendering in  CL 301498.
	#jira OR-23511
	#rb marcus.wassmer
	#test played game with different quality settings

Change 3015258 on 2016/06/15 by Lina.Halper

	Fix crash with recursive reference between two assets

	#rb: Ori.Cohen
	#tests: Sword

Change 3014988 on 2016/06/15 by Wes.Hunt

	Fix Cook Analytics to correctly use the Legacy provider since it sends to a local data collector.
	#rb daniel.lamb
	#tests compile Orion

Change 3014962 on 2016/06/15 by Olaf.Piesche

	Replicating CL 3013696 from Dev-Rendering; making quality level spawn rate scale work for GPU emitters.

	#rb simon.tovey
	#tests PC editor game

Change 3014958 on 2016/06/15 by Laurent.Delayen

	Added SkeletalMeshComponent::bIncludeComponentLocationIntoBounds to help in cases where SMU_OnlyTickPoseWhenRendered is set, and an animation pushed the mesh beyond the capsule.
	This ensures that when the capsule is in view, the mesh will remain updated.

	#rb Michael.Noland
	#test Sword ultimate from another player's view.

Change 3014833 on 2016/06/15 by Laurent.Delayen

	Fix for Base Heroes having their locomotion blendspace broken.

	#rb Thomas.Sarkanen
	#codereview Thomas.Sarkanen
	#tests Gadget networked PIE

Change 3014688 on 2016/06/15 by Nick.Darnell

	UMG - Fixing IsHovered on UUserWidgets.  SObjectWidget did not properly call the super for MouseEnter/MouseLeave allowing SWidget's implementation to set and unset the bool.

	#rb none
	#tests PIE

Change 3014325 on 2016/06/15 by Marcus.Wassmer

	Duplicate 3012706:
	Scalability CVAR for ContactShadows
	#rb john.billon
	#test flip cvar in editor.

Change 3014230 on 2016/06/15 by Robert.Manuszewski

	Fix potentially missing log output when serializing text of length equal to the async log writer buffer size.

	#rb Steve.Robb
	#tests Tested in editor build (client + server)

Change 3013913 on 2016/06/14 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jason.bestimt
	#ORION_MAIN - Updating from DMM (updated from 27.1MM)

	#RB:none
	#Tests:compiled

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

Change 3013437 on 2016/06/14 by Simon.Tovey

	Speculative fix for OR-23158

	Couldnt' repro NANs but did see it reading garbage.

	Reinstated the check that direct accesses for particles in a zero size emitter will return null.
	Altered selection code to reselect when partilce is dead or returns null and to not allow new selection on zero size emitters.

	#tests GoldenPath, No broken fx and no more reading garbage.
	#rb Olaf.Piesche

Change 3013063 on 2016/06/14 by Jason.Bestimt

	#ORION_DG - Unclog robomerge from DMM Merge

	#RB:none
	#tests:none

Change 3012936 on 2016/06/14 by Rob.Cannaday

	Fix for multiple account login not kicking previous logins
	Client was not parsing response from backend.  Client was expecting content-type to be "application/json" (using FString::Equals).  Backend was returning "application/json;charset=UTF-8".  Changed usage from FString::Equals to FString::StartsWith
	#jira FORT-25452
	#rb sam.zamani
	#tests multiple account login, frontend only

	Merge from FN CL 3011647, plus fixing one other location expecting "application/json"

Change 3012696 on 2016/06/14 by Max.Chen

	Sequencer: Select actors for corresponding selected keys or sections.

	Copy from Dev-Sequencer

	#jira UE-30727
	#tests Load up AnnounceMaster and select keyframes
	#rb none

Change 3012691 on 2016/06/14 by Max.Chen

	Sequencer: Fix dragging the leading edge of a skeletal animation section so that it adjusts the start offset of the animation clip.

	Copy from Dev-Sequencer

	#jira UE-29167
	#tests Load up AnnounceMaster and adjust leading edge of animation clips
	#rb Frank.Fella

Change 3012690 on 2016/06/14 by Andrew.Grant

	Removed Linux work-around for memory stomp alignment
	#rb none
	#tests compiled

Change 3012687 on 2016/06/14 by Max.Chen

	Sequencer: Fix lower bound when doing post render tick so that the start of a shot doesn't render with the previous shot's time.

	Copy from Dev-Sequencer

	#rb none
	#tests Load up AnnounceMaster and played through sequence

Change 3012627 on 2016/06/14 by Mieszko.Zielinski

	Added logging of current MoveID to PathfollowingComponent's vlog snapshot #UE4

	#rb none
	#test golden path

Change 3012615 on 2016/06/14 by Mieszko.Zielinski

	Improved fix to BTDecorator_Blackboard's latent tasks aborting #UE4

	#rb Lukasz.Furman
	#test golden path

Change 3012572 on 2016/06/14 by Dmitry.Rekman

	Fix realloc with non-default alignment in jemalloc (OR-23541).

	- Removed obsolete check(), the code was already there since CL 1834526.

	#rb none
	#codereview Andrew.Grant, Robert.Manuszewski
	#tests none

Change 3012481 on 2016/06/14 by David.Ratti

	ability system #include fixups and move orion attribute capture marcros into base engine ability system execution class

	#rb none
	#tests ability system sample project

Change 3012457 on 2016/06/14 by Andrew.Grant

	Un-fix misaligned memory-stomp fix for Linux
	#rb none
	#tests compiled

Change 3012320 on 2016/06/14 by Graeme.Thornton

	Fixes for MemoryAnalyser2 solution
	 - Upgraded to VS 2015
	 - Clean up solution configurations. Only leave "Any CPU"
	 - Switch project to build with "Any CPU" rather than "x64".

	Reimplementation of CL 3012221 from Dev-Core

	#rb robert.manuszewski
	#tests opened the main window form correctly in visual studio

Change 3012316 on 2016/06/14 by Thomas.Sarkanen

	Fix copying non-POD structs in the fast path

	Prevents double-deletions of TArrays etc.

	#jira UE-31394 - Fix problems with non-POD UStructs using the anim BP fast-path
	#tests Played PIE & died as Sword in OrionEntry, Exited PIE.
	#rb Martin.Wilson

Change 3012187 on 2016/06/14 by Graeme.Thornton

	Corrected error message when not specifying linux server device command line correctly in UAT

	#rb Dmitry.Rekman
	#tests Checked error message was useful when wrong command line was specified

Change 3012026 on 2016/06/13 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3011936

	#RB:none
	#Tests:none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	//Orion/Dev-General/oriongame/Content/Characters/Heroes/Hammer/Abilities/Subjugate/FX/P_SubjugateSwirls.uasset - can't integrate exclusive file already opened
	#CodeReview: jason.bestimt

Change 3011969 on 2016/06/13 by Brian.Karis

	Tweaks for hair

Change 3011638 on 2016/06/13 by Andrew.Grant

	Fixed issue where RepLayout could use unaligned memoryfor property construction if allocator did not use a suitable default (fixes crash when running with MemStomp).

	Also added sanity check in UScriptStruct::InitializeStruct that memory is correctly aligned before calling constructor

	#codereview Dave.Ratti, John.Pollard
	#rb none
	#tests Ran with/without memstomp

Change 3011575 on 2016/06/13 by jason.bestimt

	#ORION_MAIN - Merge DUI @ CL 3011414

	NOTE - Card data was altered.  Shame shame shame.  Not authoritative in DUI

	#RB:none
	#Tests:none

	[CodeReviewed]: matt.schembari, kerrington.smith, sammy.james, matt.kuhlenschmidt

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 3011462 on 2016/06/13 by Alexis.Matte

	#jira UE-31901 The outputdevice is adding 2 uninitialize character at the end of any log, this is cause by the terminator logic. The fix is to not add those characters when no terminator should be add.

	#rb nick.darnell
	#codereview Robert.Manuszewski
	#test export a obj file and verify all object are exported in maya or max

Change 3011424 on 2016/06/13 by Martin.Wilson

	Hack out fastpath anim bp code until heap corruption issue can be fixed.

	#rb Laurent.Delayen
	#tests Persona + PIE

Change 3011191 on 2016/06/13 by Mieszko.Zielinski

	Added missing initialization of PathFollowingComponent::CurrentMoveInput #UE4

	#rb none
	#test golden path

Change 3011138 on 2016/06/13 by Mieszko.Zielinski

	Switched bots over from travel mode to sprinting #Orion

	#rb Lukasz.Furman
	#test golden path

Change 3011075 on 2016/06/13 by David.Ratti

	Default GameplayAbility instancing policy to InstancePerExecution

	#rb BenZ
	#tests compile

Change 3011051 on 2016/06/13 by David.Ratti

	Add missing include so GameplayAbilitySet.h can be included on its own.

	#rb none
	#tests compile

Change 3010968 on 2016/06/13 by Mieszko.Zielinski

	Fixed console variables crashing on "" string #UE4

	#rb Lukasz.Furman
	#codereview Martin.Mittring
	#test PIE

Change 3010888 on 2016/06/13 by Alexis.Matte

	#jira OR-23301 Close the OS handle when closing the FAsyncWriter.

	#rb Robert.Manuszewski
	#codereview Robert.Manuszewski
	#test try to export a obj file

Change 3010239 on 2016/06/11 by Michael.Noland

	UMG - Adding back the logic to use the normal WidgetTree when the DesignerWidgetTree is not defined. [duplicated fix from CL# 2998267]

	#jira UE-31570
	#tests Compiled some blueprints
	#rb none

Change 3009870 on 2016/06/10 by Wes.Hunt

	Remove logging of analytics payloads from dedicated servers #jira UE-31858
	#codereview:dmitry.rekman
	#rb none
	#tests All testing was done in Dev-Framework. This change was redone in this branch to get it here faster.

Change 3009599 on 2016/06/10 by Michael.Noland

	Rendering: Corrected a misleading help comment on r.StaticMeshLODDistanceScale, explaining how it affects LOD calculations (it multiplies the effective distance, so larger numbers make transitions happen sooner)
	#tests Verified in the output of the help command
	#rb none
	#rn

Change 3009559 on 2016/06/10 by Marcus.Wassmer

	Fix 11/11/10 SceneColorFormat option, enable AntiGhosting on TemporalAA, ensure TemporalAA output is the correct format for accumulating results.  Set SceneColorFormat to 2 on PS4 and lowspec PC.  All in all saves .3-.5ms on PS4 and improves temporalAA ghosting.
	#rb Brian.Karis
	#test Agora PS4 / PC

Change 3009525 on 2016/06/10 by David.Ratti

	Fix case where ObjectLIbrary would not be able to find classes when searching "/Game" path.

	#rb none
	#tests object libraries in paragon

Change 3009228 on 2016/06/10 by David.Ratti

	remove world check. Can be triggered in editor with PIE

	#rb none
	#tests pie

Change 3009050 on 2016/06/10 by Dmitry.Rekman

	Fix LinuxClient platform not being built on Windows, and not instantiating a target platform instance.

	- Fixes by BenM.

	#rb none
	#codereview Ben.Marsh
	#tests Compiled OrionEditor on Linux.

Change 3008973 on 2016/06/10 by Marcus.Wassmer

	Fix Windualshock on VS2015
	#rb Rolando.Caloca
	#test PS4 controller on VS2015 build

Change 3008970 on 2016/06/10 by David.Ratti

	Fix warning about minimal replication tag count
	-Made bit count a config setting. Bumped to 5
	-Minor optimization to UAbilitySystemGlobals::Get()

	#rb none
	#tests goldne path, pie

Change 3008478 on 2016/06/09 by Jason.Bestimt

	#ORION_DG - Merge MAIN @ CL 3008469

	#RB:none
	#Tests:none

Change 3008416 on 2016/06/09 by Andrew.Grant

	Adding 'config' as an option to set both clientconfig / serverconfig when using BuildCookRun
	#review-3008417 Ben.Marsh, Justin.Sargent
	#rb none
	#tests BuildCookRun with config

Change 3008286 on 2016/06/09 by Dmitry.Rekman

	Add LinuxClient target platform.

	#rb none
	#tests Compile OrionEditor on Linux.
	#codereview Brad.Angelcyk, Ben.Marsh

Change 3007978 on 2016/06/09 by jason.bestimt

	#ORION_MAIN - Merge DUI @ CL 3007507

	#RB:none
	#Tests:none

	[CodeReviewed]: matt.schembari, kerrington.smith

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

Change 3007771 on 2016/06/09 by Laurent.Delayen

	Fixed GetIntFromComp breaking with INDEX_NONE. Fixes crash in OrientationWarping node.

	#rb martin.wilson
	#codereview martin.wilson
	#tests Sword Leap.

Change 3007436 on 2016/06/09 by David.Ratti

	change designer facing parameter name
	#rb none
	#test compile

Change 3007408 on 2016/06/09 by David.Ratti

	WaitGameplayEffectBlockedImmunity - ability task for listening to immunity events

	#rb danY
	#tests pie

Change 3007250 on 2016/06/09 by bruce.nesbit

	Banner impact location fix. (OR-23179)

	#rb none

	#tests Game+PIE

Change 3007228 on 2016/06/09 by Ben.Marsh

	BuildGraph: Rename -SkipNodesWithoutTickets parameter to -SkipTargetsWithoutTickets, to reflect that it's filtering the list of targets rather than the full graph.

	#rb none
	#tests none

Change 3007225 on 2016/06/09 by Ben.Marsh

	EC: Set the -TicketSignature=... parameter for all BuildGraph jobs started by EC to the URL of the current job.

Change 3006985 on 2016/06/08 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3006936

	#RB:none
	#Tests:none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 3006926 on 2016/06/08 by Andrew.Grant

	Merging //UE4/Main @ 300872 via //UE4/Orion-Staging
	#rb none
	#tests engine QA, orion qa smoke

Change 3006444 on 2016/06/08 by Ben.Marsh

	BuildGraph: Add mechanism to specify that nodes can only be built once for a given changelist. Nodes can have an associated ticket file, and they are only permitted to build if the ticket is assigned to the current job. Tickets are created if they don't exist, and written with a signature specific to the job specified via the -TicketSignature="..." parameter. By default, builds will fail if a ticket has been already granted to another job, but the -SkipNodesWithoutTickets parameter instructs the graph to skip affected nodes instead.

	#rb none
	#tests none

Change 3006389 on 2016/06/08 by Daniel.Lamb

	Delay the processing of packages which aren't ready till the end of the cook.
	This allows other packages to be processed sooner.
	#rb Peter.Sauerbrei
	#test cook orion.

Change 3006306 on 2016/06/08 by Michael.Noland

	Rendering: Added FreezeRendering to the console autocomplete list
	#rn

Change 3006305 on 2016/06/08 by Michael.Noland

	HLOD: Added a way to control how far down the HLOD hierarchy to allow showing (can be used to limit quality loss and streaming texture memory usage on high scalability settings for example)
	Controlled by the new cvar r.HLOD.MaximumLevel, which can be set to the following values:
	-1: No maximum level (default)
	0: Prevent ever showing a HLOD cluster instead of individual meshes
	1: Allow only the first level of HLOD clusters to be shown
	2+: Allow up to the Nth level of HLOD clusters to be shown

	Note: This does not affect the memory used by the HLOD meshes itself or their always loaded low mip levels, it will only save the memory associated with streaming in the higher mip levels

	HLOD: Allowed r.HLOD console command to be used in Test configurations
	HLOD: Removed some dead code in ALODActor and scene view / scene proxy relating to a different way to force visualization that has no trigger
	HLOD: Fixed an uninitialized memory bug in the static mesh scene proxy HLODcoloration visualization code

	#rn
	#codereview jurre.debaare
	#rb marc.audy
	#tests Tested with various settings in Paragon and tried creating some new clusters in the editor

Change 3006304 on 2016/06/08 by Michael.Noland

	Engine: Changed the code in AActor::IncrementalRegisterComponents to obey bAutoRegister for the root component rather than asserting that it is true. Note: If children components have bAutoRegister=true, they will still pull the root component into the fray and cause it to be registered first
	#rb marc.audy
	#tests Tested with code that registers or unregisters HLOD clusters at varying levels in Paragon

Change 3006041 on 2016/06/08 by Andrew.Grant

	Added buildidoverride to shipping whitelist
	#rb none
	#tests compiled and used param in shipping

Change 3005678 on 2016/06/08 by Ben.Marsh

	Back out changelist 3004395

	#rb none
	#tests none

Change 3005265 on 2016/06/07 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3005120

	#RB: none
	#Tests: none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 3005081 on 2016/06/07 by Daniel.Lamb

	Reworked the way packages which are renamed on load are added to the cooked package list.
	Cooker now has options for MaxMemoryAllowance as a percentage and also MinFreeMemory (which takes into account used system memory not just total system memory).
	#rb Andrew.Grant, Marcus.Wasmer
	#test cook orion

Change 3004752 on 2016/06/07 by Daniel.Lamb

	Requeue packages to the next package on the list instead of to the end of the list.
	#rb Andrew.Grant
	#test cook orion

Change 3004560 on 2016/06/07 by David.Ratti

	Kill timelines, latent actions, timer when recycling gameplay cues

	#rb danY
	#tests pie

Change 3004559 on 2016/06/07 by David.Ratti

	Object Library:
	-Added bool bIncludeOnlyOnDiskAssets that can be set by owner. Passed on to the AR filter when gathering assets.

	GameplayCue Editor:
	-Fix issue with new notifies not showing up after being created through the GC Editor (until restart).

	-Fix issue for new projects, that don't have gameplayclue tags defined, not being able to add gameplay cue tags through the editor without restarting once.

	#rb none
	#tests editor

Change 3004395 on 2016/06/07 by Ben.Marsh

	BuildGraph: Add a script function to ensure exclusive access to a given resource. The AcquireLockFile() function takes two arguments; a path to a text file, and the name of an owner. The file is created and the owner name written to it if it doesn't already exist, otherwise the contents of it are compared against the given owner string. The operation happens transactionally, and the function returns true if file contains the given owner string on exit. Logical and/or conditions are now also short-circuited, so the result of the AcquireLockFile() function can be used to control derived property definitions within an executing job.

	#rb none
	#tests none

Change 3004164 on 2016/06/07 by David.Ratti

	Ability system: use player controller netmode over avatar actor when possible. Fixes issue if torn off, authority, client side actor tries to activate an ability.

	#rb danY
	#tests multi pie

Change 3003837 on 2016/06/07 by David.Ratti

	Ability system engine work
	-Default to /Game as search path for gameplay cues, if no explicit paths are set in the config.

	#rb none
	#tests ability sample project

Change 3002800 on 2016/06/06 by Marcus.Wassmer

	Fix shader crash in PIE
	#rb none
	#test PIE

Change 3002657 on 2016/06/06 by Dmitry.Rekman

	Do not copy to clipboard on crash if headless or on the wrong thread.

	- Could result in crash handler crashing itself in some circumstances.

	#rb none
	#codereveiw Brad.Angelcyk
	#tests Compiled Linux dedicated server and CrashReportClient.

Change 3002546 on 2016/06/06 by Daniel.Lamb

	Improve cooking performance.
	Allow cooker to save other packages opportunistically if main package is compiling shaders.
	Allow cooker to load more packages if there aren't many packages to save.
	#rb Josh.Adams
	#test cook orion

Change 3002369 on 2016/06/06 by Marcus.Wassmer

	Project setting for optional rendering features to reduce shader compile times.
	# of shaders per material is reduced by ~30-40% depending on material
	#rb Daniel.Wright
	#test Editor with/without all options, cooked ps4.

Change 3002142 on 2016/06/06 by David.Ratti

	Ability system engine level:
	-Fix crash when gameplay cue editor starts if there are no gameplay cue paths specified
	-Fix crash when GameplayCue tag is not specified

	#rb none
	#tests sample ability system project, paragon

Change 3002106 on 2016/06/06 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: sam.zamani
	#orion
	- add support for code tokens which can be shared/redeemed
	- refactor of existing friend founder's pack codes to be displayed in a generic way using code token info
	- added CodeToken.FounderFriendInviteT0 for new paragon tier 0 code which grants access to game without also giving a Founder's pack
	- added CodeToken.FounderFriendInviteT1 to replace existing CodeToken.FriendPC and CodeToken.FriendPS4 Founder's pack codes. Existing codes aliased to the new CodeToken.FounderFriendInviteT1 code
	- No longer differentiation between PC/PS4 friend codes
	- "Share Friend Code" button will now process all available codes that can be issued instead of just 1
	- updated Orion service Mcp call for getUnredeemedCodes() to ignore the code template id and return all available codes. Each returned code will also include the type

	[CodeReviewed]: david.nikdel, jason.bestimt
	#rb david.nikdel
	#tests PC PIE using localhost and profile proxy for granting codes, also existing account with legacy codes

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

Change 3001218 on 2016/06/05 by jason.bestimt

	#ORION_MAIN - Merge 27.2 @ CL 3001162

	#RB:none
	#Tests:none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	#CodeReview: jason.bestimt

Change 2999508 on 2016/06/03 by jason.bestimt

	#ORION_MAIN - Merge 27 @ CL 2999463

	#RB:none
	#Tests:none

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

	#ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human.
	//Orion/Dev-General/OrionGame/Content/Audio/ClassesAndMixes/Classes/Master.uasset - can't integrate exclusive file already opened
	#CodeReview: jason.bestimt

Change 2999465 on 2016/06/03 by Robert.Manuszewski

	Whitelisting more DLLs for injection.

	#rb none
	#tests none

Change 2999455 on 2016/06/03 by Lukasz.Furman

	disabled path invalidation events for minions
	#orion
	#rb Mieszko.Zielinski
	#tests PIE with additional debug logging

Change 2998488 on 2016/06/02 by Michael.Noland

	Engine: Prevent forced drawing of spline components in Test configuration
	#codereview james.golding
	#tests Ran a cooked Test build on a map with splines in it
	#rb david.ratti
	#robomerge: main

Change 2997954 on 2016/06/02 by Jason.Bestimt

	#ROBOMERGE-AUTHOR: jon.lietz
	OR-22425

	no longer try to updat the tag map and modifiers when the gameplay effect that is being removed was not active.

	#RB Dave.Ratti
	#Tests golden path

	#ROBOMERGE-SOURCE: CL 2997940 in //Orion/Release-0.27/... via CL 2997943
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 2997750 on 2016/06/02 by Graeme.Thornton

	Add FPakFile::Check() that attempts to open and read the data out of every file in a pak, to check for corruption
	Added -checkpak option for force a check of every mounted pak file

	#rb robert.manuszewski
	#tests tested against cooked pc client. made sure my data succeeded. made sure corrupted data throws an error.

[CL 3031715 by Andrew Grant in Main branch]
2016-06-28 17:59:42 -04:00
Gil Gribb
0b102492a9 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3028916)
#lockdown nick.penwarden

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

Change 3006483 on 2016/06/08 by Simon.Tovey

	Fix for UE-31653
	Instance params from the Spawn, Required and TypeData modules were not being autopopulated.

Change 3006514 on 2016/06/08 by Zabir.Hoque

	MIGRATING FIX @ Request

	Off by 1 error on reflection roughness calculation affecting 4.12. When I hoisted the max mip index i did a -1 on both sides(c++ & hlsl). This is the simplest hotfix. In 4.13 I'll remove the shader instruction and only do the "-1" in c++ this 1 less shader instruction.

	#CodeReview: Marcus.Wassmer, Daniel.Wright

Change 3006605 on 2016/06/08 by Rolando.Caloca

	DR - vk - Remove a bunch of unused code, clean up some todos

Change 3006969 on 2016/06/08 by HaarmPieter.Duiker

	Add #ifdefs around inverse tonemapping to avoid performance hit in normal use

Change 3007240 on 2016/06/09 by Chris.Bunner

	Made a pass at fixing global shader compile warnings and errors.

Change 3007242 on 2016/06/09 by Chris.Bunner

	Don't force unlit mode when re-loading a map.
	#jira UE-31247

Change 3007243 on 2016/06/09 by Chris.Bunner

	Cache InvalidLightmapSettings material for instanced meshes.
	#jira UE-31182

Change 3007258 on 2016/06/09 by Chris.Bunner

	Fixed refractive depth bias material parameter.

Change 3007466 on 2016/06/09 by Rolando.Caloca

	DR - Use vulkan debug marker extension directly from header

Change 3007504 on 2016/06/09 by Martin.Mittring

	added refresh button to ImageVerifier

Change 3007528 on 2016/06/09 by Martin.Mittring

	ALU optimization to SSR, minor perf difference on NVTitan, needs to to be profiled on lower end
	make render more deterministic

Change 3007551 on 2016/06/09 by Chris.Bunner

	Reverted constant type change in previous commit.

Change 3007559 on 2016/06/09 by Martin.Mittring

	updated ImageValidator

Change 3007584 on 2016/06/09 by Rolando.Caloca

	DR - Fix case when not running under RD

Change 3007668 on 2016/06/09 by Rolando.Caloca

	DR - vk - Split layers/extensions by required/optional

Change 3007820 on 2016/06/09 by Rolando.Caloca

	DR - Android compile fix

Change 3007926 on 2016/06/09 by Martin.Mittring

	fixed UI scaling in ImageVerifyer

Change 3007931 on 2016/06/09 by John.Billon

	-Fixed cutouts not working for certain sized texture/subUV size combinations.
	-Also fixed issue with subUV module not being postloaded consistently on startup.
	#Jira UE-31583

Change 3008023 on 2016/06/09 by Martin.Mittring

	refactor noise code in shaders

Change 3008127 on 2016/06/09 by Zabir.Hoque

	Merging back hot fixes:

	1. Fix DX12 crashing due to oclusion queries waiting on incorrect sync point. Integrating change from MS.

	2. Immediate context should flush directly and not attempt to flush the immediate context, ie. itself.

Change 3008129 on 2016/06/09 by Daniel.Wright

	Disabled r.ProfileGPU.PrintAssetSummary by default due to spam

Change 3008169 on 2016/06/09 by Rolando.Caloca

	DR - Fix mobile rendering not freeing resource when using RHI thread

Change 3008429 on 2016/06/09 by Uriel.Doyon

	Enabled texture streaming new metrics.
	Added progress bar while texture streaming is being built.
	Added debug shader validation to prevent crashes when there are uniform expression set mismatches.
	Added texture streaming build to "Build All"

Change 3008436 on 2016/06/09 by Uriel.Doyon

	Fixed shipping build

Change 3008833 on 2016/06/10 by Rolando.Caloca

	DR - Allow RenderTargets to be easily shared via GPU to other DX or OpenGL applications
	Submitted by Allar
	PR #1864
	#jira UE-24545

Change 3008842 on 2016/06/10 by Rolando.Caloca

	DR - Remove vertex densities view mode

Change 3008857 on 2016/06/10 by John.Billon

	Added a PostLoad to ParticleModuleSubUV to call postload on the SubUV animation to ensure that the animation is loaded in time for caching.

Change 3008870 on 2016/06/10 by Rolando.Caloca

	DR - Rebuild hlslcc libs (missing from last merge)

Change 3008925 on 2016/06/10 by John.Billon

	Fixed r.ScreenPercentage.Editor
	#Jira UE-31549

Change 3009028 on 2016/06/10 by Daniel.Wright

	Shadow depth refactor
	* Shadow setup and render target allocation now happens in InitViews, and shadow depth rendering happens at one spot in the frame
	* This provides control over where shadow depths are rendered for things like async compute, and allows easy atlasing of shadowmaps for forward shading
	* The 33Mb of shadow depth buffers in FSceneRenderTargets has been removed, and shadow depth buffers are now allocated as needed
	* A large amount of duplicated code to handle each shadow type has been combined
	* Cleaner parallel rendering: no more view hacking for the shadow depth pass, no more shadow depths in the middle of translucency
	* 'vis ShadowDepthAtlas' or 'vis WholeSceneShadowMap' must now be used to visualize the shadow depth textures

Change 3009032 on 2016/06/10 by Daniel.Wright

	Fixed crash with simple forward shading in the material editor

Change 3009178 on 2016/06/10 by Rolando.Caloca

	DR - Add support for multi callbacks on HlslParser, added a write to string callback

Change 3009268 on 2016/06/10 by Daniel.Wright

	Warning fixes

Change 3009416 on 2016/06/10 by Martin.Mittring

	moved decal rendering code in common spot for upcoming MeshDecal rendering

Change 3009433 on 2016/06/10 by John.Billon

	Adding ensures for translucency lighting volume render target acesses.
	#Jira UE-31578

Change 3009449 on 2016/06/10 by Daniel.Wright

	Fixed whole scene point light shadow depths getting rendered redundantly

Change 3009675 on 2016/06/10 by Martin.Mittring

	fixed Clang compiling

Change 3009815 on 2016/06/10 by Martin.Mittring

	renamed IsUsedWithDeferredDecal to IsDeferredDecal
	to be more correct

Change 3009946 on 2016/06/10 by Martin.Mittring

	minor optimization

Change 3010270 on 2016/06/11 by HaarmPieter.Duiker

	Update gamut transformations used when dumping EXRs to account for bug UE-29935

Change 3011423 on 2016/06/13 by Martin.Mittring

	fixed default of bOutputsVelocityInBasePass
	#code_review:Rolando.Caloca
	#test:PC

Change 3011448 on 2016/06/13 by Martin.Mittring

	minor engine code cleanup
	#code_review:Olaf.Piesche
	#test:PC

Change 3011991 on 2016/06/13 by Daniel.Wright

	Fixed downsampled translucency crash in VR

Change 3011993 on 2016/06/13 by Daniel.Wright

	Stationary Mobility for primitive components is allowed again, with the meaning 'moves rarely'
	Mobility tooltips now reflect whether a primitive component or light component is being inspected

Change 3012096 on 2016/06/13 by Daniel.Wright

	Missing file from cl 3011993

Change 3012546 on 2016/06/14 by John.Billon

	Added r.ContactShadows.Enable CVar to allow contact shadows to be globally disabled/enabled
	#Jira OR-23282

Change 3012706 on 2016/06/14 by John.Billon

	Renamed r.ContactShadows.Enable to r.ContactShadows

Change 3012992 on 2016/06/14 by Rolando.Caloca

	DR - vk - Fixed backbuffer/swapchain order with RHI thread enabled
	- Added support for CustomPresent

Change 3013030 on 2016/06/14 by Rolando.Caloca

	DR - vk - Fix dev issue

Change 3013423 on 2016/06/14 by Martin.Mittring

	removed code redundancy for easier upcoming changes
	#test:PC

Change 3013451 on 2016/06/14 by Martin.Mittring

	removed no longer needed debug cvar
	#test:PC

Change 3013643 on 2016/06/14 by Zabir.Hoque

	Fix API only being inlined in the cpp and not avaialble in the .h

Change 3013696 on 2016/06/14 by Olaf.Piesche

	Adding missing quality level spawn rate scaling on GPU emitters

Change 3013736 on 2016/06/14 by Daniel.Wright

	Cached shadowmaps for whole scene point and spot light shadows
	* Controlled by 'r.Shadow.CacheWholeSceneShadows', defaults to enabled (7ms -> 1.5ms of shadow depths on Titan for ~20 lights)
	* Primitives with Static or Stationary mobility have their depths cached, as long as the light is not moving
	* Primitives with Movable mobility or using World Position Offset in their materials will not have their depths cached
	* Cached shadowmaps are copied each frame and then movable primitive depths composited
	* Fast paths exist for when there were no static primitives (skip cached shadowmap) or movable primitives (project directly from cached shadowmap)
	* 'r.Shadow.CacheWPOPrimitives' controls whether materials using WPO can be cached (default is off for correctness)
	* 'r.Shadow.CachedShadowsCastFromMovablePrimitives' can be used to force off all support for movable primitives, skipping the shadowmap copies (1.5ms -> 0ms of shadow depths for ~20 lights)

Change 3014103 on 2016/06/15 by Daniel.Wright

	Compile fix

Change 3014507 on 2016/06/15 by Simon.Tovey

	Resurrected Niagara playground and moved to Samples/NotForLicencees

Change 3014931 on 2016/06/15 by Martin.Mittring

	moved r.RenderInternals code into renderer to be able to access more low level data
	#test:PC, paragon

Change 3014933 on 2016/06/15 by Martin.Mittring

	nicer text

Change 3014956 on 2016/06/15 by Daniel.Wright

	Fixed HLOD and mesh LODs getting hit by Lightmass ray traces that didn't originate from a mesh
	Volume lighting samples and precomputed visibility cells are now only placed on LOD0 (of both mesh LODs and HLOD)

Change 3014985 on 2016/06/15 by Uriel.Doyon

	Enabled Texture Build shaders on Mac
	Exposed IStreamingManager::AddViewSlaveLocation in ENGINE_API
	Fixed issue FStreamingManagerTexture::ConditionalUpdateStaticData which would to update some data in shipping.
	Fixed r.Streaming.MipBias not affecting maximum allowed resolution, showing warnings of texture streaming overbudgets
	#jira UE-30566
	#jira UE-31098

Change 3014995 on 2016/06/15 by Rolando.Caloca

	DR - vk - Removed RHI thread wait on acquire image
	- Move Descriptor pool into context

Change 3015002 on 2016/06/15 by Rolando.Caloca

	DR - Add (disabled) additional cvar for r.DumpShaderDebugWorkerCommandLine

Change 3015041 on 2016/06/15 by Martin.Mittring

	fixed ImageValidator crashing when using files that exist only in ref or test folder

Change 3015309 on 2016/06/15 by Rolando.Caloca

	DR - vk - Enable fence re-use on SDKs >= 1.0.16.0

Change 3015356 on 2016/06/15 by Rolando.Caloca

	DR - vk - Prep for staging buffer refactor

Change 3015430 on 2016/06/15 by Martin.Mittring

	minor optimization for subsurfacescatteringprofile

Change 3016097 on 2016/06/16 by Simon.Tovey

	Enabling Niagara by default in the Niagara playground

Change 3016098 on 2016/06/16 by Simon.Tovey

	Some misc fixup to get niagara working again

Change 3016183 on 2016/06/16 by Rolando.Caloca

	DR - vk - Recreate buffer view for volatile buffers

Change 3016225 on 2016/06/16 by Marcus.Wassmer

	Duplicate reflection fixes from 4.12 hotfixes.

Change 3016289 on 2016/06/16 by Chris.Bunner

	Always gather MP_Normal definitions as they can be shared by other material properties.
	#jira UE-31792

Change 3016294 on 2016/06/16 by Daniel.Wright

	Fix for ensure accessing CVarCacheWPOPrimitives in game

Change 3016305 on 2016/06/16 by Daniel.Wright

	Raised r.Shadow.CSM.MaxCascades to 10 on Epic scalability level, which it should have always been

Change 3016330 on 2016/06/16 by Daniel.Wright

	Cached shadowmaps are tossed after 5s of not being used for rendering - helps in the case where you fly through a bunch of lights and never look back
	Skipping shadow depth cubemap clear if there will be a cached shadowmap copy later - saves .4ms on PS4 for a close up point light
	Stats for shadowmap memory used under 'stat shadowrendering'

Change 3016506 on 2016/06/16 by Daniel.Wright

	Fixed crash building map in SunTemple due to null access

Change 3016703 on 2016/06/16 by Uriel.Doyon

	Fixed warning due to floating point imprecision when building texture streaming

Change 3016718 on 2016/06/16 by Daniel.Wright

	Volume lighting samples use adaptive sampling final gather
	* Increases their build time by 2x but improves quality in difficult cases (small bright sources of bounce lighting)

Change 3016871 on 2016/06/16 by Max.Chen

	Sequencer: Added support for the named "PerformanceCapture" event which like Matinee, calls GEngine->PerformanceCapture to output a screenshot when the event fires. Refactor event track/sections so that the player is passed to the trigger events evaluation.

	Copy from Dev-Sequencer

	#jira UE-32093

Change 3017189 on 2016/06/16 by Zabir.Hoque

	Fix GBuffer format selection type-o.

	#CodeReview: Marcus.Wassmer

Change 3017241 on 2016/06/16 by Martin.Mittring

	optimized  and cleaned up rendering in transluceny, distortion, custom mesh drawing
	#code_review:Daniel.Wright, Marcus.Wassmer, Nick.Penwarden

Change 3017856 on 2016/06/17 by Rolando.Caloca

	DR - Missing GL enum

Change 3017910 on 2016/06/17 by Ben.Woodhouse

	- Added a Video Buffer to ensure smooth submission of frames from CEF. Without this, we can get multiple texture updates per engine frame, which causes stuttering at high framerates
	- Disable hardware acceleration on Windows, since this causes severe performance issues with video rendering
	Please note: To actually see 60fps video, you need to ensure the browser frame rate passed into FWebBrowserSingleton::CreateBrowserWindow is set to 60 (default is 24)
	#RB:Keli.Hloedversson,Martin.Mittring

Change 3018126 on 2016/06/17 by Ben.Woodhouse

	Fix build warning on Mac
	#RB:David.Hill

Change 3018167 on 2016/06/17 by Chris.Bunner

	Handle case when float4 is passed to TransformPosition material node.
	#jira UE-24980

Change 3018246 on 2016/06/17 by Benjamin.Hyder

	Submitting Preliminary ShadowRefactor TestMap

Change 3018330 on 2016/06/17 by Benjamin.Hyder

	labeled ShadowRefactor map

Change 3018377 on 2016/06/17 by Chris.Bunner

	Removed additional node creation when initializing a RotateAboutAxis node.
	#jira UE-8034

Change 3018433 on 2016/06/17 by Rolando.Caloca

	DR - Fix some clang warnings on Vulkan

Change 3018664 on 2016/06/17 by Martin.Mittring

	unified some code for easier maintainance, fixed missing multiply from former change (CL 2933812)
	#test:PC
	#code_review:Marcus.Wassmer,Brian.Karis

Change 3019023 on 2016/06/19 by Benjamin.Hyder

	Re-Labeled ShadowRefactor map

Change 3019024 on 2016/06/19 by Benjamin.Hyder

	Correcting Translucent Volume (Non-Directional) settings

Change 3019026 on 2016/06/19 by Benjamin.Hyder

	Correcting Lighting ShadowRefactor map

Change 3019414 on 2016/06/20 by Allan.Bentham

	Refactor mobile shadows

Change 3019494 on 2016/06/20 by Gil.Gribb

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

Change 3019504 on 2016/06/20 by John.Billon

	-Created a blueprint node (ExportRenderTarget and ExportTexture2D) to export render targets/textures as HDR images to disk.
	-Moved HDR export code(FHDRExportHelper and CubemapUnwrapUtils) to runtime from editor to allow access from blueprints.
	-Created a small common interface for blueprints and the editor itself to use for exporting.
	#Jira UE-31429

Change 3019561 on 2016/06/20 by Gil.Gribb

	UE4 - Worked around afulness of windows scheduler. This would occasionally cause hitches on quad core machines with additional load in the tick task manager.

Change 3019616 on 2016/06/20 by Rolando.Caloca

	DR - Replicate change in DevRendering to fix splotches on characters with morph targets
	Change: 3019599
	O - Fix flickering on heroes with morph targets

Change 3019627 on 2016/06/20 by Rolando.Caloca

	DR - Doh! Compile fix

Change 3019674 on 2016/06/20 by Simon.Tovey

	Ripped out the quick hacky VM debugger I wrote a while back.
	Over complicated the VM and didn't do enough work to justify it.
	Will revisit debugging and profiling of VM scripts in future.

Change 3019691 on 2016/06/20 by Ben.Woodhouse

	Add a per-object shadow setting for directional lights (r.Shadow.PerObjectDirectionalDepthBias), which is independent of the CSM setting. Often a smaller bias is desirable on per-object shadows, where detailed self-shadowing is needed.

	This change also makes the CSM naming consistent with what the setting actually does (the old setting was named r.shadow.csm, although it affects per-object shadows as well as CSMs).
	#RB:Martin.Mittring, Daniel.Wright

Change 3019741 on 2016/06/20 by John.Billon

	Fixed compile error on mac.

Change 3019984 on 2016/06/20 by Martin.Mittring

	minor optimization

Change 3020172 on 2016/06/20 by Zachary.Wilson

	Fixing mesh distance fields for engine content cube and cylinder by setting distance field resolution to 2. for UE-26783 #rb: none

Change 3020195 on 2016/06/20 by Zachary.Wilson

	Fixing engine coontent sphere's distance fields for UE-26783, distance fields resolution set to 2. #rb: none

Change 3020196 on 2016/06/20 by Rolando.Caloca

	DR - Appease static analysis

Change 3020231 on 2016/06/20 by Zachary.Wilson

	Making basic shapes consistent distance field resolution scale.  #rb: none

Change 3020468 on 2016/06/20 by David.Hill

	CameraWS  UE-29146

Change 3020502 on 2016/06/20 by Benjamin.Hyder

	Adding AutomationMatinee Camera for RenderOutputValidation

Change 3020508 on 2016/06/20 by Benjamin.Hyder

	Adding AutomationMatinee for RenderOutputValidation

Change 3020514 on 2016/06/20 by Benjamin.Hyder

	Setting Autoplay for AutomationMatinee (sequence)

Change 3020561 on 2016/06/20 by Daniel.Wright

	Removed outdated comment on uniform expression assert

Change 3021268 on 2016/06/21 by Daniel.Wright

	Scaled sphere intersection for indirect capsule shadows
	* Fixes the discontinuity when capsule axis points close to the light direction
	* GPU cost is effectively the same (more expensive to compute, but tighter culling)

Change 3021325 on 2016/06/21 by Daniel.Wright

	Split ShadowRendering.cpp into ShadowDepthRendering.cpp

Change 3021355 on 2016/06/21 by Daniel.Wright

	Fixed RTDF shadows (broken by shadowmap caching)

Change 3021444 on 2016/06/21 by Daniel.Wright

	Fixed crash due to Depth drawing policy not using the default material shader map properly

Change 3021543 on 2016/06/21 by Daniel.Wright

	Fixed drawing to a Canvas after EndDrawCanvasToRenderTarget causing a crash
	Fixed DrawMaterialToRenderTarget breaking the Canvas object that BeginDrawCanvasToRenderTarget returns

Change 3021749 on 2016/06/21 by Daniel.Wright

	Moved RenderBasePass and dependencies into BasePassRendering.cpp
	Moved RenderPrePass and dependencies into DepthRendering.cpp

Change 3021766 on 2016/06/21 by Benjamin.Hyder

	Adding 150dynamiclights level to Dev-Folder

Change 3021971 on 2016/06/21 by Daniel.Wright

	Removed the CPU-culled light grid which is used to implement TLM_SurfacePerPixelLighting, in preparation for a GPU-culled light grid implementation
	* TLM_SurfacePerPixelLighting now behaves like TLM_Surface

Change 3022760 on 2016/06/22 by Chris.Bunner

	Merge fixup.

Change 3022911 on 2016/06/22 by Rolando.Caloca

	DR - Added  r.D3DDumpD3DAsmFile to enable dumping the fxc disassembly when dumping shaders

Change 3023037 on 2016/06/22 by Rolando.Caloca

	DR - Fix for the case of global destructors calling FlushRenderingCommands() after the RHI has been destroyed

Change 3023139 on 2016/06/22 by Daniel.Wright

	Added on screen message for when VisualizeMeshDistanceFields is requested but engine scalability settings have DFAO disabled

Change 3023231 on 2016/06/22 by Daniel.Wright

	Only allowing opaque per-object shadows or CSM in the mobile renderer

Change 3023415 on 2016/06/22 by Daniel.Wright

	Fix crash in dx12 trying to clear stencil when there is no stencil in the depth target

Change 3024888 on 2016/06/23 by Daniel.Wright

	Fixed preshadows being rendered redundantly with multiple lights

Change 3025119 on 2016/06/23 by Martin.Mittring

	added MeshDecal content to RenderTest

Change 3025122 on 2016/06/23 by Martin.Mittring

	enabled DBuffer for RenderTest

Change 3025153 on 2016/06/23 by Marc.Olano

	Fix Spherical Particle Opacity. Particles using this stopped rendering sometime after 4.10.
	Needed to use world space without shader offsets, not absolute world space.

Change 3025180 on 2016/06/23 by Marc.Olano

	Use translated world space for particle centers.
	Better fix for Spherical Particle Opacity problems, but with fingers in more pies. Includes rename of particle center vertex factory variables.

Change 3025265 on 2016/06/23 by David.Hill

	Bilbords translucent during PIE  - lighting model was incorrectly set in gbuffer
	#jira UE-26165

Change 3025269 on 2016/06/23 by Ryan.Brucks

	Adding new Testmap for Pixel Depth Offset velocities with Temporal AA

Change 3025345 on 2016/06/23 by Benjamin.Hyder

	Submitting MeshDecal Content

Change 3025444 on 2016/06/23 by Benjamin.Hyder

	updating content for MeshDecal

Change 3025491 on 2016/06/23 by Benjamin.Hyder

	Updating DecalMesh Textures

Change 3025802 on 2016/06/23 by Martin.Mittring

	added to readme

Change 3026475 on 2016/06/24 by Rolando.Caloca

	DR - Show current state of r.RHIThread.Enable when not using param

Change 3026479 on 2016/06/24 by Rolando.Caloca

	DR - Upgrade glslang to 1.0.17.0

Change 3026480 on 2016/06/24 by Rolando.Caloca

	DR - Vulkan headers to 1.0.17.0

Change 3026481 on 2016/06/24 by Rolando.Caloca

	DR - Vulkan wrapper for extra logging

Change 3026491 on 2016/06/24 by Rolando.Caloca

	DR - Missed file

Change 3026574 on 2016/06/24 by Rolando.Caloca

	DR - vk - Enabled fence reuse on 1.0.17.0
	- Added more logging info

Change 3026656 on 2016/06/24 by Frank.Fella

	Niagara - Prevent sequencer uobjects from being garbage collected.

Change 3026657 on 2016/06/24 by Benjamin.Hyder

	Updating Rendertestmap to latest

Change 3026723 on 2016/06/24 by Rolando.Caloca

	DR - Fix for ES3.1 RHIs

Change 3026784 on 2016/06/24 by Martin.Mittring

	New feature: Mesh Decals / Material layers (Chris.Bunner is the goto person on MeshDecals from now on)

Change 3026866 on 2016/06/24 by Olaf.Piesche

	#jira OR-18363
	#jira UE-27780
	fix distortion in particle macro uvs

[CL 3028922 by Gil Gribb in Main branch]
2016-06-27 13:42:20 -04:00
Josh Adams
cff34abe0d Copying //UE4/Dev-Platform to Dev-Main (//UE4/Dev-Main)
#lockdown nick.penwarden
#rb none

[CL 3020245 by Josh Adams in Main branch]
2016-06-20 16:57:06 -04:00
Gil Gribb
28af311319 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3006421)
#lockdown nick.penwarden

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

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

	DR - Update vulkan headers to 1.0.13.0

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

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

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

	DR - Updated ThirdParty/glslang to 1.0.13.0

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

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

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

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

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

	DR - Remove auto from VulkanRHI wherever possible

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

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

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

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

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

	DR - Add support for BC6H & BC7 in desktop Vulkan

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

	Optimized CountBits

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

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

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

	fixed ES2 shader compile

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

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

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

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

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

	DR - Fix typo

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

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

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

	Fix for crash when removing instances while lighting is building

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

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

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

	minor optimization to SSR

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

	fixed issue with sort order

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

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

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

	DR - Mirror change in Odin

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

	DR - Vulkan SM4 prep

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

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

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

	UE4 - Fixed botched merge

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

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

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

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

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

	fixed missing file in ImageValidator
	added .exe to extras

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

	added OpenSubDiv 3.0.2, not yet used

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

	fixed help text on cvar

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

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

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

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

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

	DDS unsupported format error
	#Jira UE-24529

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

	split FPixelShaderInOut in in and out

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

	updated OpenSubDiv to 3.0.2
	Fixed SubDivisonRendring by using OpenSubDiv

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

	Fixed bUseSingleSampleShadowFromStationaryLights on particles

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

	Renamed files Forward* to Mobile*

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

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

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

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

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

	UE4 - Increased stack sizes for thread pools.

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

	fixed compiler warnings

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

	DR - Update glslang exe

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

	DR - vk - Fix validation warning

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

	fixed compiler warning

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

	Fix for shadowed variable

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

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

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

	Renamed ForwardShading* to Mobile*

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

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

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

	Fixed warning

[CL 3006426 by Gil Gribb in Main branch]
2016-06-08 16:02:23 -04:00
Gil Gribb
2614787137 Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 2981742)
#lockdown nick.penwarden

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

Change 2967522 on 2016/05/05 by Martin.Mittring

	fixed UE-30208 Ensure taking high resolution screenshot
	renamed cvar from r.SaveUncompressedEXRFrame to r.SaveEXR.CompressionQuality and change meaning

Change 2967541 on 2016/05/05 by Martin.Mittring

	added cvar help entry to the editor menu

Change 2967544 on 2016/05/05 by Martin.Mittring

	* added ensures to track down UE-22073 [CrashReport] Crash when changing Editor Window Size - FDeferredShadingSceneRenderer::ClearTranslucentVolumeLighting()
	* fixed typo
	* improved r.DisplayInternals

Change 2967685 on 2016/05/05 by Rolando.Caloca

	DR - Fix 2013 compile
	#jira UE-30369

Change 2967883 on 2016/05/05 by Olaf.Piesche

	Making inherit rotation work for mesh particles
	#jira UE-30153

Change 2967948 on 2016/05/05 by Daniel.Wright

	MaterialParameterCollections now create default resources (uniform buffers) which are used when no valid FScene is present (eg DrawTile while exporting materials to lightmass)

Change 2967954 on 2016/05/05 by Daniel.Wright

	New refraction mode 'Pixel Normal Offset', which uses the difference between the per-pixel normal and the per-vertex normal to compute the refraction offset.  This is useful for refraction from large water surfaces without reading outside of screen bounds as much.

Change 2967970 on 2016/05/05 by Olaf.Piesche

	Improvement for depth buffer collision; reduce tunneling by sampling midpoint instead of predicted position.

	#jira UE-27297

Change 2968125 on 2016/05/05 by Daniel.Wright

	Hopeful fix for mac compile error with enum

Change 2968126 on 2016/05/05 by Daniel.Wright

	Forward declare to fix compile error

Change 2969070 on 2016/05/06 by Martin.Mittring

	fixed Clang Compile error

Change 2969224 on 2016/05/06 by Martin.Mittring

	fixed Clang

Change 2969275 on 2016/05/06 by Rolando.Caloca

	DR - Fix for simulation time from BP not matching material editor expression time
	#jira UE-26431

Change 2969413 on 2016/05/06 by Daniel.Wright

	Simple forward shading path
	* Support for a directional light in the base pass, which can be shadowed either by distance field shadowmaps or a single shadow factor from the Indirect Lighting Cache
	* Binding and outputting to GBuffers is disabled when using simple forward shading, along with dependencies of the GBuffers
	* Specular, normal maps and the 3rd SH band of skylighting are all hardcoded off.  Materials are forced fully rough.
	* Enabled with 'r.SimpleForwardShading 1', which can be changed at runtime
	* Added r.SupportSimpleForwardShading, which determines if the necessary shaders are compiled
	* Removed r.SimpleDynamicLighting, whose functionality (unshadowed directional light in the base pass) is a subset of simple forward shading, and was unused

Change 2969414 on 2016/05/06 by Daniel.Wright

	Added cvar 'r.Fog' for scalability

Change 2969415 on 2016/05/06 by Daniel.Wright

	Low end scalability setup for Paragon

Change 2969583 on 2016/05/06 by Daniel.Wright

	Effectively disabled the WRITES_PRECSHADOWFACTOR_TO_GBUFFER optimization, as all combinations use the GBuffer target
	* This fixes bSingleSampleShadowFromStationaryLights which was broken in cl 2863775 when selective GBuffer outputs was enabled

Change 2969597 on 2016/05/06 by Olaf.Piesche

	Adding emitter tick times to Cascade viewport overlays

	#jira UE-25172

Change 2969599 on 2016/05/06 by Daniel.Wright

	Added r.Shadow.ForceSingleSampleShadowingFromStationary for scalability

Change 2969795 on 2016/05/06 by Daniel.Wright

	Made r.SimpleForwardShading a scalability cvar

Change 2969796 on 2016/05/06 by Daniel.Wright

	Enabled simple forward shading for the lowest shadow quality in Paragon
	* Moved Orion.Character.NonLocalHeroPreshadows to be under shadow quality
	* Enabling r.Shadow.ForceSingleSampleShadowingFromStationary when shadows are disabled through r.ShadowQuality

Change 2972338 on 2016/05/10 by Martin.Mittring

	Added ImageValidator V0.11 to Perforce (for automated screenshot comparison)

Change 2972450 on 2016/05/10 by Martin.Mittring

	fixed sorting issues, added column sort

Change 2972564 on 2016/05/10 by Martin.Mittring

	fixed PixelCountToFail

Change 2972572 on 2016/05/10 by Martin.Mittring

	added color

Change 2972667 on 2016/05/10 by Daniel.Wright

	Capsule shadows support an off-center projection - fixes stereo rendering
	Indirect lighting cache is updated for primitives with a visible indirect capsule shadow - fixes indirect shadows disappearing when the caster is off-screen in the Static skylight case

Change 2972687 on 2016/05/10 by Martin.Mittring

	split data from view

Change 2972713 on 2016/05/10 by Martin.Mittring

	background validation

Change 2972742 on 2016/05/10 by Martin.Mittring

	do not lock files in folder

Change 2972837 on 2016/05/10 by Daniel.Wright

	Comment for tiled reflection culling edge failure case

Change 2972891 on 2016/05/10 by Daniel.Wright

	Simple forward shading only supported on PC now

Change 2972927 on 2016/05/10 by Martin.Mittring

	fixed comparison, added directory watcher

Change 2972952 on 2016/05/10 by Martin.Mittring

	tooltips

Change 2972965 on 2016/05/10 by Martin.Mittring

	readme

Change 2972986 on 2016/05/10 by Martin.Mittring

	polish

Change 2973015 on 2016/05/10 by Zabir.Hoque

	Clamp max cubemap resolutions for reflection capture component.

Change 2973067 on 2016/05/10 by Uriel.Doyon

	Removed temporary streaming data from ULevel. Now the data goes directly in FStreamingManagerTexture.
	Removed deprecated classes and structures associated with old data.
	Uniformized dynamic primitives and static primitives streaming logic.
	Static primitive instances are now bound to level component and have visibility information.
	MeshTexCoordSize Debug now shows live update when tweaking "StreamingDistanceMultiplier"

Change 2973129 on 2016/05/10 by Martin.Mittring

	fixed crash (uninit var)

Change 2973167 on 2016/05/10 by Olaf.Piesche

	Fixing mac compiler warnings; removed beam tangent from particle source and target, as it's treated separately anyway.

Change 2973654 on 2016/05/11 by Gil.Gribb

	FIxed bad resolve from main merge

Change 2973787 on 2016/05/11 by Simon.Tovey

	PR #2080: Added 7 additional blueprint nodes and assoicated functions to Particle System Compoenent (Contributed by alwintom)

	#2080

Change 2973794 on 2016/05/11 by Simon.Tovey

	GitHub 1646 : Increase Wireframe Linear Color Value for Particles in Cascade Preview viewport

	#1646

Change 2973814 on 2016/05/11 by Chris.Bunner

	Fixed D3D warning.

Change 2973868 on 2016/05/11 by Martin.Mittring

	fixed compiler warning

Change 2974104 on 2016/05/11 by Uriel.Doyon

	Optimized TextureStreaming ASync task by improving cache efficency.
	Removed ForcedFullyLoad texture sets and merged them with the other entries (to prevent checking in two data structures).

Change 2974163 on 2016/05/11 by Uriel.Doyon

	Fixed Editor Build

Change 2974263 on 2016/05/11 by Olaf.Piesche

	Fix for particle beam source/target selection

Change 2974313 on 2016/05/11 by Martin.Mittring

	nicer icon

Change 2974632 on 2016/05/11 by Martin.Mittring

	zoom (mouse wheel) and pan support

Change 2974651 on 2016/05/11 by Martin.Mittring

	UE-30565 Blend Radius does not override Priority for blendable post process material array
	#test:PC

Change 2974994 on 2016/05/12 by Uriel.Doyon

	Fixed uninitialized members in texture streaming when updating dynamic primitives.
	#jira UE-30632

Change 2975514 on 2016/05/12 by Olaf.Piesche

	Getting mesh particle transform down to pixel shader, making available in TransformVector/TransformPosition nodes

	#udn 288158, and requests from several artists

Change 2975970 on 2016/05/12 by Zabir.Hoque

	Enable setting high precision normals/tangets as a part of static mesh import.

Change 2976134 on 2016/05/12 by Daniel.Wright

	Moved RHI prefix out of command list macros so you can find callers in a Find in Files for RHIBlendState, etc

Change 2976135 on 2016/05/12 by Daniel.Wright

	Added material property bAllowNegativeEmissiveColor which is useful when rendering to an offscreen render target

Change 2976139 on 2016/05/12 by Daniel.Wright

	Blueprint can now be used to draw to a TextureRenderTarget2D  with DrawMaterialToRenderTarget
	Canvas can now draw to a TextureRenderTarget2D in a Blueprint with BeginDrawCanvasToRenderTarget / EndDrawCanvasToRenderTarget

Change 2976199 on 2016/05/12 by Brian.Karis

	Improved screen space ray cast intersection heuristic.

Change 2976203 on 2016/05/12 by Brian.Karis

	Fixed hair NaNs

Change 2976214 on 2016/05/12 by Zabir.Hoque

	Fix compiler error on Clang

Change 2976239 on 2016/05/12 by Brian.Karis

	Improved hair shadows

Change 2976240 on 2016/05/12 by Brian.Karis

	Made recompileshaders specific file work again. Kind of hacky but better than nothing

Change 2976290 on 2016/05/12 by Zabir.Hoque

	Few more clang compiler fixes.

	#jira UE-30713

Change 2976517 on 2016/05/13 by Zabir.Hoque

	Final set of fixes for compile breaks.

Change 2976535 on 2016/05/13 by Zabir.Hoque

	Fix mono builds

Change 2977270 on 2016/05/13 by Zabir.Hoque

	Incorrectly used 7 as max texcoords. Corrected to #define MAX_TEX_COORDS

	#lockdown gil.gribb

Change 2980140 on 2016/05/17 by Gil.Gribb

	Merging //UE4/Dev-Main@2980127 to Dev-Rendering (//UE4/Dev-Rendering)
	#lockdown nick.penwarden

Change 2980211 on 2016/05/17 by Ben.Marsh

	EC: Build DDC in Dev-Rendering every 3 hours.

	#lockdown Gil.Gribb

Change 2980876 on 2016/05/17 by Michael.Trepka

	Metal shader compile fix

	#lockdown gil.gribb

[CL 2981788 by Gil Gribb in Main branch]
2016-05-18 09:31:59 -04:00
Peter Sauerbrei
865909dbbb Copying //UE4/Dev-Mobile to Dev-Main (//UE4/Dev-Main) @2911599
#lockdown nick.penwarden

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

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

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

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

	DM - glslang

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

	DM - Common RHI changes

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

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

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

	DM - Split Immediate command list off RHI

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

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

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

	Static shadowing + dynamic-object CSM

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

	Mobile GPU particles

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

	Planar reflections very WIP

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

	Separate Translucency very WIP

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

	ProtoStar engine changes

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

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

	DM - Integrate pipeline cache

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

	DM - Initial CCT support

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

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

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

	DM - Added GRHINeedsExtraDeletionLatency from 4.11

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

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

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

	DM - Fence mgr (disabled)

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

	DM - Resource management (disabled)

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

	DM - Expand number of stencil op bits

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

	DM - Add support for more MaxSimultaneousRenderTargets

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

	DM - Support for 3d staging textures

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

	Vulkan RHI stub for new SharedResourceView RHI call

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

	DM - SM4 preq

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

	Android Vulkan support initial checkin

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

	Reinstate vertex fog, fixes UE-28166

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

	DM - Use fence manager

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

	DM - Descriptor pool

[CL 2912606 by Peter Sauerbrei in Main branch]
2016-03-16 21:16:51 -04:00
Gil Gribb
0711601519 Copying //UE4/Dev-Rendering to Dev-Main (//UE4/Dev-Main)
#lockdown nick.penwarden

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

Change 2879377 on 2016/02/24 by Gil.Gribb

	UE4 - Added render thread start and stop delegates. GitHub 2006.
	#Jira UE-26184

Change 2879378 on 2016/02/24 by Gil.Gribb

	UE4 - Avoided using TG_PrePhysics as the first tickgroup so that licensees can add tickgropups.
	https://udn.unrealengine.com/questions/279126/code-assumes-that-tg-prephysics-is-the-first-tick.html
	#Jira UE-26971

Change 2879382 on 2016/02/24 by Gil.Gribb

	UE4 - Tweaked automation test framework by request from UDN post.

Change 2879727 on 2016/02/24 by Martin.Mittring

	adding debug info for Optimus driver detection issue
	#rb:Benjamin.Hyder
	#Test:PC

Change 2879728 on 2016/02/24 by Martin.Mittring

	fixed and improved VisualizeMotionBlur
	#rb:David.Hill
	#test:PC

Change 2879729 on 2016/02/24 by Martin.Mittring

	added AngleBetweenVectors() and variants to the FastMath library
	#rb:David.Hill
	#code_review:Brian.Karis

Change 2880133 on 2016/02/24 by David.Hill

	new r.DepthOfFieldQualitySetting
	for GDC squencer demo
	#rb:Martin.Mittring
	 - OR-15875

Change 2880314 on 2016/02/24 by Daniel.Wright

	Fixed uses of FDepthDrawingPolicyFactory being affected by bUseAsOccluder
	* This fixes preshadows on HISMC and foliage

Change 2880338 on 2016/02/24 by Martin.Mittring

	added SkinCache.Debug cvar
	#rb:Lina.Halper
	#test:PC

Change 2880344 on 2016/02/24 by Daniel.Wright

	Added the ability to apply DFAO to static indirect lighting, controlled by r.AOApplyToStaticIndirect
	* Lightmaps, stationary skylight and reflection captures are all affected
	* Specular occlusion on reflection captures requires a fair amount of tweaking of r.SkySpecularOcclusionStrength, MinOcclusion and MaxOcclusionDistance for good quality
	* For now, a movable skylight with low intensity (.0001) must be placed to control MaxOcclusionDistance and MinOcclusion

Change 2880346 on 2016/02/24 by Daniel.Wright

	Added several cvars to expose mesh distance field limits, which allows higher quality
	* r.DistanceFields.MaxPerMeshResolution
	* r.DistanceFields.DefaultVoxelDensity
	* r.DistanceFields.AtlasSizeXY
	* r.DistanceFields.AtlasSizeZ

Change 2881304 on 2016/02/25 by Gil.Gribb

	UE4 - Increased the priority of cloth tasks because these are on the critical path.

Change 2881306 on 2016/02/25 by Gil.Gribb

	UE4 - Added cvar to control background tick list cleanup.

Change 2881790 on 2016/02/25 by Daniel.Wright

	Screen size fading is only applied to spot and point lights

Change 2882077 on 2016/02/25 by Daniel.Wright

	DFAO indirect occlusion on static lighting is now correctly applied to IndirectIrradiance

Change 2882391 on 2016/02/25 by Martin.Mittring

	fixed bad caching of SRV for vertexbuffers in SkinCache (caused rendering artifacts and wasteful memory allocations). Finding a SRV is now O(1), was O(n)
	#rb:Olaf.Piesche
	#code_review:Rolando.Caloca,Marcus.Wassmer

Change 2883008 on 2016/02/26 by Gil.Gribb

	UE4 - Fixed recursive shader intialization crash on consoles.

Change 2883253 on 2016/02/26 by Martin.Mittring

	Improved SkinTangent compression
	#rb:Olaf.Piesche

Change 2883295 on 2016/02/26 by Martin.Mittring

	Added RecomputeSkinTangent feature for GPU SkinCache, not enabled by default (r.SkinCache.RecomputeTangents)
	#rb:Olaf.Piesche,Brian.Karis,Lina.Halper,Rolando.Caloca

Change 2883363 on 2016/02/26 by Gil.Gribb

	UE4 - Fixed an issue with recurisve shader init on consoles...again.

Change 2883912 on 2016/02/26 by Gil.Gribb

	UE4 - Fixed shadows updating static meshes while the prepass is in progress.

Change 2884829 on 2016/02/27 by Martin.Mittring

	OR-16237 indirect lighting on skin is too dark
	#rb:Martin.Mittring
	#code_review:Brian.Karis

Change 2885096 on 2016/02/28 by Martin.Mittring

	OR-13678

[CL 2890130 by Gil Gribb in Main branch]
2016-03-02 13:38:38 -05:00
Marc Audy
26836a22cd Copying //UE4/Dev-Framework to Dev-Main (//UE4/Dev-Main) @ 2868852
#lockdown Nick.Penwarden

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

Change 2821607 on 2016/01/08 by Mieszko.Zielinski

	Added a way to limit amount of information logged by vlog by discarding logs from classes from outside of class whitelist #UE4

	This feature was followed by refactoring of functions taking FVisualLogEntry pointers to use references instead.

	#rb Lukasz.Furman
	#codereview John.Abercrombie

Change 2828384 on 2016/01/14 by Mieszko.Zielinski

	Back out of visual log refactor done as part of CL#2821607 #UE4

Change 2855722 on 2016/02/04 by Zak.Middleton

	#ue4 - Expose PrimitiveComponent GetCollisionEnabled(), IsCollisionEnabled(), IsQueryCollisionEnabled(), IsPhysicsCollisionEnabled() functions to blueprints.

	#rb Daniel.Broder, Ori.Cohen
	#codereview Bob.Tellez
	#jira UE-26411

Change 2855737 on 2016/02/04 by James.Golding

	Add test AssetUserData C++ class to QAGame

Change 2855739 on 2016/02/04 by James.Golding

	PR #1858 : Add abstract and editinlinenew to AssetUserData class, so derived classes can be added to assets via details panel
	https://github.com/EpicGames/UnrealEngine/pull/1858
	#github 1858
	#jira UE-24494
	#rb thomas.sarkanen

Change 2855842 on 2016/02/04 by James.Golding

	UE-23968 : Add clamping to Friction, Restitution, Density and RaiseMassToPower properties of PhysicalMaterial
	#codereview ori.cohen
	#rb thomas.sarkanen

Change 2855843 on 2016/02/04 by James.Golding

	PR #1984 : Add 'AssetUserData' support to AnimationAsset/Texture
	https://github.com/EpicGames/UnrealEngine/pull/1984
	#github 1984
	#jira UE-25913
	#rb thomas.sarkanen

Change 2855844 on 2016/02/04 by James.Golding

	UE-23176 Fix incorrect clamping in GenerateKDopAsSimpleCollision() which could cause degenerate hulls
	Also don't 'nudge' kdops if there are other primitives present, will offset from mesh we were fitting around
	#rb thomas.sarkanen

Change 2855850 on 2016/02/04 by Benn.Gallagher

	Update required LOD bones when associating a cloth chunk that uses bones that aren't weighted to that LOD
	#rb Martin.Wilson

Change 2856409 on 2016/02/04 by Zak.Middleton

	#ue4 - Change LogSpawn warnings to normal logs for cases that are common and valid during gameplay (failed due to collision at the target location, or failed because it is destroyed in the process of spawning, ie projectile spawned in a target).

	#codereview Jeff.Farris

Change 2857018 on 2016/02/05 by Benn.Gallagher

	Fixes for various anim graph related subgraph issues/crashes
	#rb Ben.Cosh

Change 2857193 on 2016/02/05 by Lukasz.Furman

	extended crowd agent interface to handle avoidance groups
	#ue4 UE-24823
	#1896

Change 2857200 on 2016/02/05 by Lukasz.Furman

	fixed memory leak in CrowdManager
	#ue UE-26516
	#2026
	#codereview Mieszko.Zielinski

Change 2857417 on 2016/02/05 by Lina.Halper

	Add keyword for animation functions

Change 2858854 on 2016/02/08 by Benn.Gallagher

	Fixed pose evaluator customizations being processed at the wrong time which caused properties to always be re-added even if removed from the details panel, causing duplicated entries.
	#jira UE-8421
	#rb Lina.Halper

Change 2858855 on 2016/02/08 by Benn.Gallagher

	Fixed blendspace players only reporting normalized time when using a time getter in an anim graph transition.
	#rb Lina.Halper

Change 2859159 on 2016/02/08 by Aaron.McLeran

	UE-25586 Fix for reporting audio memory usage

	- Realtime decompressed sounds that have CachedRealtimeFirstBuffers need to report the compressed asset size

Change 2859192 on 2016/02/08 by Laurent.Delayen

	Removed check disallowing cooked additive animations from using AnimationRelative and AnimationScale retargeting modes (on the root bone or editor).
	Skip AnimationRelative retargeting for baked additive animations since it gets cancelled out during the additive creation process.

	#rb martin.wilson
	#codereview lina.halper

Change 2859238 on 2016/02/08 by Lina.Halper

	Git pull request #1895

Change 2859239 on 2016/02/08 by Lina.Halper

	Git pull request #1813

Change 2859453 on 2016/02/08 by Aaron.McLeran

[CL 2868856 by Marc Audy in Main branch]
2016-02-16 13:35:21 -05:00
Gil Gribb
223aefa047 Copying //UE4/Dev-Rendering to Dev-Main (//UE4/Dev-Main)
#lockdown nick.penwarden

[CL 2868391 by Gil Gribb in Main branch]
2016-02-16 05:48:48 -05:00