#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]
#lockdown nick.penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2821445 on 2016/01/08 by Olaf.Piesche
More vertex factory improvements, storing off particle vertex factories on the scene proxy instead of the dynamic data to avoid recreating all the time; saves up to 2ms render thread time according to QA's testing.
#rb martin.mittring
Change 2821520 on 2016/01/08 by Olaf.Piesche
Coloring subuv modules green for easier visual ID
#rb martin.mittring
Change 2823479 on 2016/01/11 by Chris.Bunner
Updated Lightmass HLOD logic to avoid HLODs shadowing non-related meshes. Duplicated CL#2823104 from Dev-General.
Change 2823570 on 2016/01/11 by Zabir.Hoque
Introduce multiplier that controls decal fade speed.
#CodeReview: Martin.Mittring
#1777
Change 2823615 on 2016/01/11 by Uriel.Doyon
Fixed stencil ref multithreading issue.
Fixed state caching when depth range is enabled.
#jira UE-24564
#review marcus.wassmer
Change 2823652 on 2016/01/11 by Zabir.Hoque
Rename FadeSpeedScale -> FadeDurationScale to be logically more consistent.
#CodeReview: Martin.Mittring
Change 2824065 on 2016/01/11 by Brian.Karis
Fixed last viewrect motion blur bug. Enabled new motion blur algorithm for default.
Change 2825432 on 2016/01/12 by Zabir.Hoque
Store off view matrices at at time of freezing and base lod selection useing relevant matrices, thus allows lods to be frozen. #OR-10918
#CodeReview: Marcus.Wassmer, Rolando.Caloca, Martin.Mittring
Change 2825971 on 2016/01/12 by Brian.Karis
New motion blur enabled.
Change 2825974 on 2016/01/12 by Brian.Karis
Fixed refraction check value. 1 does nothing not 0.
Change 2825975 on 2016/01/12 by Brian.Karis
Cloth gets skylight for movable sky.
Change 2827519 on 2016/01/13 by Zabir.Hoque
ALLOW_UAV_CONDITION did not have a safe fallback when not SM5.0 && COMPILER_SUPPORTS_ATTRIBUTES.
#CodeReview Martin.Mittring, Rolando.Caloca
Change 2830172 on 2016/01/15 by Rolando.Caloca
DR - Minor cleanup
- Renamed Vertex Factories' struct Data to struct FData
- Removed Data type on FVertexFactory
Change 2830242 on 2016/01/15 by Rolando.Caloca
DR - Prep cleanup for gpu morph targets
- Split common code for GPU skin cache into a base class
- Moved some local static arrays from UpdateMorphVertexBuffer() to static members
#codereview Lina.Halper
Change 2830455 on 2016/01/15 by Rolando.Caloca
DR - Compile fix from bad merge
#jira UE-25557
Change 2832023 on 2016/01/18 by Rolando.Caloca
DR - Removed TangentZDelta_DEPRECATED from FVertexAnimDelta
#rb Marcus.Wassmer
#codereview Lina.Halper
Change 2832067 on 2016/01/18 by Gil.Gribb
UE4 - Changed PC to default to parallel rendering when not in editor. Fixed lack of a stall on texture locks and unlocks coming from texture streamer. Fixed a few cases where stuff was being added to rhicommandlists even when we were bypassed.
Change 2834379 on 2016/01/19 by Gil.Gribb
UE4 - fix perf regression related to cvar
Change 2834864 on 2016/01/19 by Olaf.Piesche
Fixing potential crash with auto-kill trail emitters, fixing use of the wrong flag to auto-deactivate
#codereview gil.gribb
Change 2835777 on 2016/01/20 by David.Hill
EyeAdaptation - using a screen center focus in the weights
#rb Martin Mitring
related to: UE-15509. This is adding the ability to focus the basic eye-adaptation region in the center of the screen, and cvar functionality for paragon testing on ps4
Change 2835778 on 2016/01/20 by David.Hill
EyeAdapation - DefaultFeature for method
#rb Martin.Mitring
Adding a default feature cvar for eye adaptation method
Change 2837410 on 2016/01/20 by David.Hill
OR-13213 SetupPerObjectProjection()
#test:PC
#rb:Martin.Mitring
#codereview:Daniel.Wright
[CL 2845257 by Gil Gribb in Main branch]
#lockdown nick.penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2771498 on 2015/11/18 by Rolando.Caloca
DevRendering - HlslParser - Do not crash if an unknown preprocessor directive is found; add proper support for #pragma
#codereview Marcus.Wassmer
Change 2771600 on 2015/11/18 by Rolando.Caloca
DevRendering - SCW - Added support for running the platform shader compiler for one usf file off the dumped usf
Usage:
ShaderCompileWorker -directcompile FILENAME.USF -entry=EntryPoint -format=PCD3D_SM5/SF_PS4/etc -vs/-ps/-gs/-hs/-ds/-cs
-Also removed old communication enum from SCW
#rb Daniel.Wright
Change 2771647 on 2015/11/18 by Rolando.Caloca
DevRendering - HlslParser - Refactored removed unused outputs code in prep for reusing a lot of this code
- Entry point string now gets modified to the optimized one
- Fixed parser allocator when requesting pages bigger than PageSize
#rb Chris.Bunner
Change 2772133 on 2015/11/18 by Chris.Bunner
Removed physics shape type zeroing on Speedtree import. UE-23285
#rb Ori.Cohen
Change 2772225 on 2015/11/18 by Rolando.Caloca
DevRendering - Hlsl - Support for removing unused inputs on pixel shaders
- Fix some shadow variable warnings
#rb Chris.Bunner, Nick.Penwarden
Change 2772469 on 2015/11/18 by Daniel.Wright
Fixed SCW always exiting after compiling a long shader, now checks idle time starting from the end of the last compile task
Automated smoke tests aren't run in standalone programs which are frequently launched as they increase the startup time (doubles startup time of SCW as shown in sampling profile)
#rb Rolando.Caloca
Change 2772471 on 2015/11/18 by Daniel.Wright
Particle SubUV cutouts
* A new asset type 'SubUV Animation' precomputes bounding geometry for every frame of a SubUV texture animation.
* Particle emitters with a SubUV module can then use this SubUV Animation to render with much tigher bounding geometry to reduce overdraw.
* GPU performance savings depend on how much empty space (zero alpha) existed in the texture. Measured a reduction of 2-3x GPU time on a smoke effect.
* This only works if the material does not modify opacity to reveal areas with zero texture alpha
Change 2772483 on 2015/11/18 by Marcus.Wassmer
Filtering options on UnrealPak -list
#rb Josh.Adams
Change 2772644 on 2015/11/18 by Daniel.Wright
Integrate - Temporal AA dithering is only enabled if outputting to a low precision format
#rb Nick.Penwarden
Change 2773336 on 2015/11/19 by Rolando.Caloca
DevRendering - PS4 shaders - Added input/output attribute information when r.PS4StripExtraShaderBinaryData=0
#rb Marcus.Wassmer
Change 2773476 on 2015/11/19 by Rolando.Caloca
DevRendering - PS4 Shader attribute export stats
Run using r.PS4DumpExportStats 1 in the console
- Also fixed non-vertex shaders not getting optional data
#codereview Marcus.Wassmer
Change 2773865 on 2015/11/19 by Gil.Gribb
UE4 - Added an FName churn tracker.
Change 2773900 on 2015/11/19 by Rolando.Caloca
DevRendering - Fix sharing shaders for material & mesh shaders
#rb Marcus.Wassmer
Change 2774277 on 2015/11/19 by Gil.Gribb
UE4 - Did minor optimizations to the PS4 RHI and drawlists.
Change 2774421 on 2015/11/19 by Olaf.Piesche
Fix#2 for UE-23325 - separate translucency materials don't show in static mesh editor
#codereview Martin.Mittring
Change 2774447 on 2015/11/19 by Rolando.Caloca
DevRendering - Velocity and Depth shader pipelines
#rb Marcus.Wassmer
Change 2774603 on 2015/11/19 by Marcus.Wassmer
Windowed vsync for ps4
#rb Rolando.Caloca
Change 2775650 on 2015/11/20 by Rolando.Caloca
DevRendering - Added two utility overloads per UDN suggestion
#codereview Gil.Gribb
Change 2775798 on 2015/11/20 by David.Hill
Adding a new AutoExposure method
#rb Martin.Mittring
Change 2776345 on 2015/11/20 by Daniel.Wright
Capsule shadows for movable skylight
* Gathers capsule occlusion along the unoccluded sky cone computed by Distance Field Ambient Occlusion
* Requires DFAO to be enabled at the moment
* Some serious artifacts remaining in indoor scenarios, as the unoccluded sky direction is not continuous
Change 2777033 on 2015/11/22 by Uriel.Doyon
Enabled SceneTextures node validation when material domain is DeferredDecal
#review Martin.Mittring
#jira UE-23141
Change 2778618 on 2015/11/23 by Daniel.Wright
- Removed default shader platform parameter from GetGlobalShaderMap()
- Added an inline overload of GetGlobalShaderMap() that takes a feature level instead, and translates to the correct shader platform
- Cached feature level on FSceneView for faster access
- Cached shader map on FViewInfo for faster access
- Cached featurelevel/shadermap on rendering composition graph execution context, for faster access
Fixed a couple of crashes when switching feature level dynamically
- Needed to allow certain shader permutations to be generated if feature level was ES2, but still on a PC platform. (i.e. hitproxy shaders, and basepass shaders used by editor primitives system)
#codereview Nick.Penwarden
[CL 2275937 by Graeme Thornton in Main branch]