Files
UnrealEngineUWP/Engine/Source/Runtime/Renderer/Private/PostProcess/PostProcessSelectionOutline.cpp

417 lines
16 KiB
C++
Raw Normal View History

// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.
/*=============================================================================
PostProcessSelectionOutline.cpp: Post processing outline effect.
=============================================================================*/
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
#include "PostProcess/PostProcessSelectionOutline.h"
#include "StaticBoundShaderState.h"
#include "SceneUtils.h"
#include "PostProcess/SceneRenderTargets.h"
#include "SceneRenderTargetParameters.h"
#include "SceneHitProxyRendering.h"
#include "ScenePrivate.h"
#include "EngineGlobals.h"
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3249742) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3232283 on 2016/12/13 by Ben.Woodhouse D3D12 - downgrade root signature size warning to a log following a discussion with Microsoft. There's not much we can actually do about it, and it's not relevant to all hardware #jira UE-36999 Change 3232641 on 2016/12/13 by Mark.Satterthwaite - Eliminate redundant state changes in MetalRHI in the state cache. - Add a new debug level for setting buffers to nil prior to calls to set*Bytes so that the tool doesn't display incorrect data. - Make testing for validation & statistics features use the same EMetalFeatures API as everything else for consistency. - Cache the fallback depth-stencil texture in the state cache and ignore it for determining whether a pass can restart - if we are using this texture its contents are worthless anyway. Change 3232661 on 2016/12/13 by Mark.Satterthwaite Re-enable Metal SM5 & DFAO/DistanceFieldShadowing on Intel for 10.12.2 or later. Change 3232759 on 2016/12/13 by Ben.Woodhouse Fix memory leak on XB1 when calling GPURealloc with count of 0, suggested on UDN https://udn.unrealengine.com/questions/326660/gpurealloc-leak.html Change 3232803 on 2016/12/13 by Ben.Marsh Add UT to the populate DDC job, and cook UT and Fortnite for Mac as well. Change 3232836 on 2016/12/13 by Ben.Marsh Split cooks to populate DDC into separate nodes for each platform. May help to reduce number of timeouts on remote VMs. Change 3232974 on 2016/12/13 by Rolando.Caloca DR - Refactor common code to UWorld::RecreateScene #jira UE-36719 PR #2824 Change 3232976 on 2016/12/13 by Ben.Marsh Add missing dependency on tools node for Mac cooks. Need to compile SCW first. Change 3233289 on 2016/12/13 by Olaf.Piesche Fixing potentially broken spot/point light fade with old content; initialize new properties properly Change 3233811 on 2016/12/13 by Mark.Satterthwaite Fix compiling QA-Material tessellation shaders that don't need to emit from Hull or sample in Domain the HSOut buffer which was confusing MetalBackend. Change 3233854 on 2016/12/13 by Mark.Satterthwaite More information about texture type validation errors in Metal. Change 3234650 on 2016/12/14 by Rolando.Caloca DR - vk - Fix bad aspect on depth cubemaps Change 3234651 on 2016/12/14 by Rolando.Caloca DR - vk - Fix for 32 bit crash on dump layer Change 3234813 on 2016/12/14 by Guillaume.Abadie Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3235047 on 2016/12/14 by Uriel.Doyon Refactored HLOD texture streaming strategy to separate forced load from visibility. Added an incremental update in the last stage of the texture streaming update load to clear any pending work. Added an option "All" to the "BuildMateriaTexturelStreamingData" command to force rebuild everything. Change 3235317 on 2016/12/14 by Uriel.Doyon Removed timed primitives in the texture streaming since it was not used and there is now a fallback implementation in UPrimitiveComponent::GetStreamingTextureInfo. Change 3235431 on 2016/12/14 by Rolando.Caloca DR - Fix for Vulkan drawing black Change 3236788 on 2016/12/15 by Mark.Satterthwaite Fix 10.11.6 support (aka -nometalv2): the stencil view workaround necessitates a mid-render blit and the way things were setup resulted in the HasValidRenderTargets assert firing. Refactored the code to separate the concept or valid render-states in the cache from active render-states in the render-pass. Now it works as intended and will be needed for 4.15. Change 3236850 on 2016/12/15 by Mark.Satterthwaite Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3237002 on 2016/12/15 by Benjamin.Hyder submitting updated TM-Shadermodels map Change 3237312 on 2016/12/15 by Rolando.Caloca DR - Change more macros to lambdas Change 3237394 on 2016/12/15 by Mark.Satterthwaite Add Metal-specific permutations of TBasePassHS - they affect the C++ definition on all platforms but are only cached or used on Metal - because the way we compile the combined VS+HS tessellation stage requires that the combined VS + HS HLSL code references the same resources, otherwise we get incorrect resouce bindings and subsequently fail to render properly. Long-term the Metal tessellation code will need to be refactored so that the vertex shader stage is emitted as a separate shader from the hull shader stage as this but will keep cropping back up and continue to complicate the engine. #jira UE-39799 Change 3237490 on 2016/12/15 by Daniel.Wright Fixed ULandscapeComponent::GetUsedMaterials Change 3237597 on 2016/12/15 by Ben.Woodhouse Disable timestamp queries on pre-Maxwell nvidia hardware. Local testing suggests that this is the major cause of instability in the UE4.14 release. It's possible that we could be more targeted by only excluding Fermi and older hardware, but identifying fermi hardware by device ID is difficult in practice, since the range overlaps with Kepler. Change 3237654 on 2016/12/15 by Daniel.Wright Non-editor compile fix Change 3238229 on 2016/12/16 by Rolando.Caloca DR - Remove ExcludeRect from inner RHI Clear methods; ensure will happen if trying to use it Change 3238236 on 2016/12/16 by Rolando.Caloca DR - Compile fixes Change 3238280 on 2016/12/16 by Marc.Olano Small optimization to Lanczos-3 upsample shader code. Change 3238321 on 2016/12/16 by Rolando.Caloca DR - Compile fix Change 3238331 on 2016/12/16 by Rolando.Caloca DR - compile fix Change 3238495 on 2016/12/16 by Marc.Olano Replace TEA random number generator with PCG. Was only used in #if-disabled reference rendering, but ldoes make better quality reference rendering when enabled. Change 3238496 on 2016/12/16 by Marc.Olano Tone mapping fix for OR-31752, cherry picked from Orion 3208273 Assumption that green is approximates luminance fails on red/blue HDR content, resulting in ugly black artifacts. Go back to luminance. Change 3238520 on 2016/12/16 by Rolando.Caloca DR - CIS Fix Change 3238571 on 2016/12/16 by Rolando.Caloca DR - CIS fix Change 3238605 on 2016/12/16 by Daniel.Wright Sharing IndirectLightingCacheTextureSampler samplers Change 3238626 on 2016/12/16 by Daniel.Wright Ray Traced Distance Field Shadow optimizations * Tighter light space tile culling * Skip ray marching pixels before the RTDF cascade near distance, or further than the cascade far distance * Depth bounds test on upsample * Created FLightTileIntersectionParameters for encapsulation of light tile culling functionality * RTDF shadow time went from 1.8ms -> .8ms and 3.1ms -> 1.2ms in FortGPUTestbed on 7870 with these changes Change 3238652 on 2016/12/16 by Rolando.Caloca DR - RHI clear methods no longer have an ExcludeRect, use DrawClearQuad functions instead Change 3238855 on 2016/12/16 by Rolando.Caloca DR - Added FRHITexture2D GetSizeXY Change 3238881 on 2016/12/16 by Rolando.Caloca DR - CIS fix Change 3239008 on 2016/12/16 by Arne.Schober DR - Fixing accidently returning a stackpointer in EnqueueRenderCommands Change 3239012 on 2016/12/16 by Arne.Schober DR - missing file Change 3239255 on 2016/12/17 by Rolando.Caloca DR - Remove shader clears from D3D11 Change 3239690 on 2016/12/19 by Rolando.Caloca DR - vk - Misc fixes from 1.0.37.00 SDK warnings Change 3239964 on 2016/12/19 by Rolando.Caloca DR - Fix click on editor not showing selected Change 3239995 on 2016/12/19 by Rolando.Caloca DR - Enable dist field on GL4 & Vulkan SM5 Change 3240162 on 2016/12/19 by Daniel.Wright Added EnableDepthBoundsTest / DisableDepthBoundsTest to RHIUtilites to share some common code Change 3240163 on 2016/12/19 by Daniel.Wright Distance field self shadowing controls for hiding world position offset self-shadow artifacts * Removed static mesh build settings DistanceFieldBias, which shrunk the distance field, breaking AO and shadows * Added DistanceFieldSelfShadowBias, which prevents occlusion close to the surface only, maintaining shadows on the ground and AO on the ground Change 3240271 on 2016/12/19 by Daniel.Wright Use 16 bit indices for distance field objects culled to tiles, when 16 bit will be enough. Saves 10mb of tile culling buffers. Change 3240282 on 2016/12/19 by Rolando.Caloca DR - Proper fix for hit proxies clear - Added missing stencil ref to DrawClearQuad Change 3240316 on 2016/12/19 by Rolando.Caloca DR - vk - Fixed some new 1.0.37.0 warnings Change 3240354 on 2016/12/19 by Rolando.Caloca DR - Dev shaders on sm4/5 Change 3240759 on 2016/12/20 by Rolando.Caloca DR - Fix bad crc on GL element declarations Change 3240895 on 2016/12/20 by Rolando.Caloca DR - vk - Swapchain fixes Change 3241057 on 2016/12/20 by Rolando.Caloca DR - vk - Fix resize on desktop Change 3241112 on 2016/12/20 by Rolando.Caloca DR - vk - Fix 1.0.37.0 warnings - Ignore some warnings we know we can't fix Change 3241310 on 2016/12/20 by Rolando.Caloca DR - vk - Fix crash Change 3241417 on 2016/12/20 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios Change 3241990 on 2016/12/21 by Daniel.Wright Converted DistanceFieldVolume data to BulkData * FDistanceFieldVolumeData Serialize time from .7s on PS4 to 0s Change 3242005 on 2016/12/21 by Daniel.Wright Removed unused !USE_DEPTH_RANGE_LISTS path to reduce complexity Change 3242295 on 2016/12/21 by Bob.Tellez Duplicating CL#3242294 from //Fortnite/Main #UE4 Re-applying the fix for rendering editor primitives when r.EarlyZPassOnlyMaterialMasking is enabled Change 3242487 on 2016/12/21 by Marcus.Wassmer Fix typo Change 3243091 on 2016/12/22 by Daniel.Wright Fixed too many groups dispatched for TConeTraceScreenGridGlobalOcclusionCS Change 3243161 on 2016/12/22 by Uriel.Doyon New async tasks for the streaming update. Optimizing the biggest frame cost. Change 3243179 on 2016/12/22 by Uriel.Doyon Fixed possible invalid access from the async FNormalizeLightmapTexelFactorTask Change 3243236 on 2016/12/22 by Daniel.Wright Fixed DFAO bilateral upsample * Depth buffer was being unbound due to lack of DepthRead_StencilNop Change 3243452 on 2016/12/23 by Ben.Woodhouse Bring back 1024 render query limit workaround on D3D12 which was lost during the merge from partners #jira UE-35247 Change 3243512 on 2016/12/23 by Uriel.Doyon Improved task system for texture streaming. Change 3243742 on 2016/12/26 by Rolando.Caloca DR - vk - Fix UAV clears - Removed old validation layer - Print found device layers Change 3243745 on 2016/12/27 by Rolando.Caloca DR - vk - Fix for texture cube arrays - Warning for ClearUAVs Change 3243762 on 2016/12/27 by Rolando.Caloca DR - vk - Always use pipeline cache Change 3244450 on 2016/12/31 by Rolando.Caloca DR - vk - Pre reqs for separate transfer queue Change 3244453 on 2016/12/31 by Rolando.Caloca DR - vk - Win32 compile fix Change 3244756 on 2017/01/03 by Marcus.Wassmer Copying //Tasks/UE4/Dev-Niagara@3244743 to Dev-Rendering (//UE4/Dev-Rendering) Change 3244757 on 2017/01/03 by Marcus.Wassmer Niagara is still experimental in non-task branches. Change 3245059 on 2017/01/03 by Benjamin.Hyder Submitting TM-TrigNodes map Change 3245500 on 2017/01/03 by Olaf.Piesche Compile fix #1 for post-merge problems Change 3245572 on 2017/01/03 by Olaf.Piesche (Speculative) fix #2 for post-merge build problem. Hopefully fixes public distribution level error for cross compiler tool. Change 3245683 on 2017/01/03 by Marcus.Wassmer Fix some niagara warnings Change 3245732 on 2017/01/03 by Marcus.Wassmer Fix Niagara compile on clang platforms. Fix a few warnings / static analysis things as well. Change 3246403 on 2017/01/04 by Rolando.Caloca DR - vk - Fix bogus warning Change 3246432 on 2017/01/04 by Marcus.Wassmer Copying //Tasks/UE4/Dev-Niagara@3246424 to Dev-Rendering (//UE4/Dev-Rendering) Change 3246538 on 2017/01/04 by Rolando.Caloca DR - vk - Show hitch time for compute psos Change 3246580 on 2017/01/04 by Rolando.Caloca DR - vk - compile fix Change 3246610 on 2017/01/04 by Rolando.Caloca DR - Compute PSO pre reqs Change 3246707 on 2017/01/04 by Marcus.Wassmer Add missing integer operations to UnrealMathDirectX.h Change 3246786 on 2017/01/04 by Marcus.Wassmer Avoid public dependency build errors. Should probably just remove the DDCUtils module instead Change 3246828 on 2017/01/04 by Olaf.Piesche UE-39249; need to check the view as well as the view family in CheckAndUpdateLastFrame; scene captures use a different family, but each eye for VR uses a different scene view. Change 3247026 on 2017/01/04 by Rolando.Caloca DR - Remove CrossCompilerTool as it's not required anymore Change 3247086 on 2017/01/04 by Marcus.Wassmer Remove includes for Core.h monolithic header Change 3247227 on 2017/01/04 by Marcus.Wassmer Fix typo and compile errors. Change 3247228 on 2017/01/04 by Marcus.Wassmer Use crossplatform intrinsics Change 3247229 on 2017/01/04 by Marcus.Wassmer Implement missing integer NEON operations. Change NEON vectorint to match name and sign from other platforms Change 3247245 on 2017/01/04 by Marcus.Wassmer Fixing various warnings/errors from clang platforms (Mac/Linux) Change 3247331 on 2017/01/04 by Marcus.Wassmer More Mac/clang fixes Change 3247958 on 2017/01/05 by Marcus.Wassmer VectorInt < - > Float ops should be conversions not reinterpret cast Change 3247959 on 2017/01/05 by Marcus.Wassmer Add missing ops to non-vector header Change 3247964 on 2017/01/05 by Rolando.Caloca DR - Temp fix for crash #jira UE-40211 Change 3248067 on 2017/01/05 by Rolando.Caloca DR - Static analysis fixes #jira UE-40167 Change 3248284 on 2017/01/05 by Rolando.Caloca DR - Linuix Compile fix #jira UE-40260 Change 3248288 on 2017/01/05 by Rolando.Caloca DR - Linux compile fix #jira UE-40264 Change 3248399 on 2017/01/05 by Brian.Karis Filtered importance sampling for envmap prefiltering. Fixed SSR on clearcoat with skylight only. Change 3248503 on 2017/01/05 by Rolando.Caloca DR - Linux fixes #jira UE-40264 Change 3248666 on 2017/01/05 by Brian.Karis Fix GL compile error Change 3248740 on 2017/01/05 by Marcus.Wassmer Fix linux and clang errors/warnings Change 3248851 on 2017/01/05 by Marcus.Wassmer Simplest fix for ES2 compile errors Change 3249217 on 2017/01/06 by Simon.Tovey Speculative fix for static analysis warning Change 3249296 on 2017/01/06 by Ben.Woodhouse XB1/Fast semantics: Add missing L1/L2 cache flush on transition to readable (or RW). The missing cache flush was causing indeterminism when reading from a texture shortly after writing to it as a render target. This fixes bloom and diffuse irradiance issues The bug has been there for a while, but CL 3227787 (drawclear early out) caused it to manifest #jira UE-39727 #jira UE-40238 Change 3249300 on 2017/01/06 by Ben.Woodhouse Remove workaround for diffuse irradiance (redundant clear). No longer necessary with CL 3249296 Change 3249387 on 2017/01/06 by Rolando.Caloca DR - Fix GL clear issues #jira UE-40254 Change 3249435 on 2017/01/06 by Ben.Woodhouse Duplicated from UT CL 3238664 Fix dbuffer decal rendering issues in fullscreen on PC. Also fixes crash in editor when viewing dbuffer materials. Pass clearcolor in RT params for system textures to workaround a bug with ClearColorTexture not working in fullscreen mode on DX11. Make sure dbuffer targets are bound if we're rendering mesh decals #jira UT-6891 #jira UE-39842 Change 3249721 on 2017/01/06 by Marcus.Wassmer Remove final references to non-existent Niagara data Change 3249742 on 2017/01/06 by Marcus.Wassmer Fix missing GPU particles on Mac. Pointers getting reused is causing the blendstate equality operator to fail. Simple workaround until we have time for a proper fix. [CL 3249983 by Marcus Wassmer in Main branch]
2017-01-06 17:51:46 -05:00
#include "ClearQuad.h"
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
#include "PipelineStateCache.h"
#if WITH_EDITOR
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
#include "PostProcess/PostProcessing.h"
#include "PostProcess/SceneFilterRendering.h"
///////////////////////////////////////////
// FRCPassPostProcessSelectionOutlineColor
///////////////////////////////////////////
void FRCPassPostProcessSelectionOutlineColor::Process(FRenderingCompositePassContext& Context)
{
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3082391) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3051464 on 2016/07/15 by Nick.Darnell Regression Testing - Several upgrades to the functional testing system, better tracking of failure cases, some source line failure detection, trying to make it easier to run a specific test on a map. Some UI improvements, easier access to the automation system. Lots more refactoring to come, lots of improvements are still needed in transmitting screenshots and just generally building a automation report we could dump from the build machines. Change 3051465 on 2016/07/15 by Nick.Darnell Adding the "Engine Test" project our one stop shope for running automation tests in the engine to try and reduce regressions. Change 3051847 on 2016/07/15 by Matt.Kuhlenschmidt Fixed material editor viewport messages being blocked by viewport toolbar Change 3052025 on 2016/07/15 by Nick.Darnell Moving the placement mode hooks out of functional testing module, moving them into the editor automation module. Change 3053508 on 2016/07/18 by Stephan.Jiang Copy,Cut,Paste tracks, not for mastertracks yet. #UE-31808 Change 3054723 on 2016/07/18 by Stephan.Jiang Small fixes for typo & comments Change 3055996 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received Change 3056106 on 2016/07/19 by Trung.Le Back out changelist 3055996. Build break. Change 3056108 on 2016/07/19 by Stephan.Jiang Updating "SoundConcurrency" asseticon Change 3056389 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received #jira UE-33339 Change 3056396 on 2016/07/19 by Matt.Kuhlenschmidt More perf selection improvements: - Static meshes now go through the static draw path when rendered for selection outline instead of just rendering using the dynamic path Change 3056758 on 2016/07/19 by Stephan.Jiang Update SelectedWidgets in WidgetblueprintEditor to match the selected tracks in sequencer. Change 3057519 on 2016/07/20 by Matt.Kuhlenschmidt Another fix for selecting lots of objects taking forever. This one is due to repeated Modify calls if there are groups in the selection. Each group actor selected iterates through each object selected during USelection::Modify! Change 3057635 on 2016/07/20 by Stephan.Jiang Updating visual logger icon UI Change 3057645 on 2016/07/20 by Richard.TalbotWatkin 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 3057868 on 2016/07/20 by Richard.TalbotWatkin 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. Change 3057895 on 2016/07/20 by Richard.TalbotWatkin 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 3057966 on 2016/07/20 by Richard.TalbotWatkin Renamed IsEditingArchetype to IsVisualizingArchetype in the ComponentVisualizer API. #jira UE-33049 - Transform widget visible in blueprint viewport when editing spline points in editor viewport Change 3058009 on 2016/07/20 by Richard.TalbotWatkin Fixed build failure due to changes to FComponentVisualizer API, as of CL 3057868. Change 3058047 on 2016/07/20 by Stephan.Jiang Fixing error on previous CL: 3056758 (extra qualification) Change 3058266 on 2016/07/20 by Nick.Darnell Automation - Work continues on automation integrating some ideas form a licensee. Continuing to work on the usability aspects, I've made it possible for tests to provide custom open commands, as well as have complex subclasses that do different things. The functional tests now have a custom open command they emit that makes it so clicking on a test opens not the C++ location where the functional test macro lives, but instead the map, AND focuses the functional test actor. Change 3058282 on 2016/07/20 by Matt.Kuhlenschmidt PR #2611: Fix spurious component diff when properties are in subcategories (Contributed by CA-ADuran) Change 3059214 on 2016/07/21 by Richard.TalbotWatkin Further fixes to visualizers following Component Visualizer API change. Change 3059260 on 2016/07/21 by Richard.TalbotWatkin Template specialization not allowed in class scope, but Visual Studio allows it anyway. Fixed for clang. Change 3059543 on 2016/07/21 by Stephan.Jiang Changeing level details icon Change 3059732 on 2016/07/21 by Stephan.Jiang Directional Light icon update Change 3060095 on 2016/07/21 by Stephan.Jiang Directional Light editor icon asset changed Change 3060129 on 2016/07/21 by Nick.Darnell Automation - The session browser now attempts to select the app instance if no other thing is selected when it refreshes. This is to try and make it easier to use when you first bring it up and nothing is selected when most of the time you're going to use it on your own instance. Change 3061735 on 2016/07/22 by Stephan.Jiang Improve UMG replace with in HierarchyView function #UE-33582 Change 3062059 on 2016/07/22 by Stephan.Jiang Strip off "b" in propertyname in replace with function for tracks. Change 3062146 on 2016/07/22 by Stephan.Jiang checkin with CL: 3061735 Change 3062182 on 2016/07/22 by Stephan.Jiang Change both animation bindings' widget name when renameing the widget so the slot content is still valid Change 3062257 on 2016/07/22 by Stephan.Jiang comments Change 3062381 on 2016/07/22 by Nick.Darnell Build - Adding #undef LOCTEXT_NAMESPACE to try and fix the build. Change 3062924 on 2016/07/25 by Chris.Wood Fix a crash in CrashReportClient that happens when the CrashReportReceiver is not responding to pings and there are no PendingReportDirectories. This is a change in the UE4 stream depot based on a fix in the Fortnite stream depot -> JIRA FORT-27570 Change 3063017 on 2016/07/25 by Matt.Kuhlenschmidt PR #2618: DebuggerCommand not recording PlayLocationString (Contributed by ungalyant) Change 3063021 on 2016/07/25 by Matt.Kuhlenschmidt PR #2619: added a search box to ModuleUI (Contributed by straymist) Change 3063084 on 2016/07/25 by Matt.Kuhlenschmidt Fix "YesToAll" when deleting referenced actors overriding the "YesToAll" state for other referenced messages. https://jira.ol.epicgames.net/browse/UE-33651 #jira UE-33651 Change 3063091 on 2016/07/25 by Alex.Delesky #jira UE-32949 - Truncating the hue inside the theme color block tooltip to only display whole numbers, to match how the color picker displays the hue value inside the hue scrubber. Change 3063388 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Fix large FName creation time when selecting thousands of objects Change 3063568 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Modified how USelection stores classes. Classes are now in a TSet and can be accessed efficiently using IsClassSelected. The old unused way of checking if a selection has a class by iterating through them is deprecated - USelection no longer directly checks if an item is already selected with a costly n^2 search. The check is done by using the already existing UObject selected annotation - Object property nodes no longer perform an n^2 check for object uniqueness when objects are added to details panels. This is now left up to the caller to avoid - Eliminated useless work on FObjectPropertyNode::GetReadAddressUncached. If a read address list is not passed in we'll not attempt to the work to populate it - Removed expensive checking for brush actors when any actor is selected Change 3063749 on 2016/07/25 by Stephan.Jiang Disallow naming the widgetanimation to the same name with a override function in uuserwidget, because it will trigger a breakpoint in Rename() #jira UE-33711 Change 3064585 on 2016/07/26 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3064612 on 2016/07/26 by Alex.Delesky #jira UE-33712 - Deleting many assets at once will now batch SourceControl commands rather than executing one for each asset. Change 3064647 on 2016/07/26 by Alexis.Matte #jira UE-33274 dont hash the same file over and over when importing multiple asset from one fbx file. Change 3064739 on 2016/07/26 by Matt.Kuhlenschmidt Fixed typo Change 3064795 on 2016/07/26 by Jamie.Dale Fixed typo in FLocalizationModule::GetLocalizationTargetByName #jira UE-32961 Change 3066461 on 2016/07/27 by Jamie.Dale Enabled stable localization keys Change 3066463 on 2016/07/27 by Jamie.Dale Set "Build Engine Localization" to upload all cultures to ensure we don't lose translation due to the archive keying changes Change 3066467 on 2016/07/27 by Jamie.Dale Updated internationalization archives to store translations per-identity This allows translators to translate each instance of a piece of text based upon their context, rather than requiring a content producer to go back and give the entry a unique namespace. It also allows us to optionally compile out-of-date translations, as they are now mapped to their source identity (namespace + key) rather than their source text. Major changes: - Added FLocTextHelper. This acts as a high-level API for uncompiled localized text, and replaces all the old ad-hoc loading/saving of manifests and archives, ensuring that everything is consistently using source control, and that older archives can be upgraded correctly to the new format. It also takes care of some of the quirks of our archives, such as native translations. All major localization commandlets have been updated to use FLocTextHelper. - Moved FTextLocalizationResourceGenerator from Core to Internationalization. This also allows IJsonInternationalizationManifestSerializer and IJsonInternationalizationArchiveSerializer to be removed, and for FJsonInternationalizationManifestSerializer and FJsonInternationalizationArchiveSerializer to have all their functions become static. - FTextLocalizationResourceGenerator being moved from Core meant that FTextLocalizationManager::LoadFromManifestAndArchives was also removed. This functionality is now handled by FTextLocalizationResourceGenerator::GenerateAndUpdateLiveEntriesFromConfig. - The RepairLocalizationData commandlet has been removed. This existed to fix a change that pre-dated 4.0 so no such data should exist in the wild, and the commandlet couldn't be updated to work with the new API (we handle format upgrades in-place now). - Removed FInternationalizationArchive::FindEntryBySource as it is no-longer safe to use. All existing code has been updated to use FInternationalizationArchive::FindEntryByKey instead. Workflow changes: - Archive conditioning now only adds new entries if they don't exist in the archive. This allows us to persist any existing translations, even if they're for old source text (caveat: native archives still update existing entries if the source is changed). - PO export now sets the msgctx for each entry to be "namespace,key", rather than only doing it when the entry had key meta-data. - PO import will now update both the source and translation stored in the archive to match the current PO data. This is the primary method by which stale source->translation pairs are updated. - LocRes compilation may now optionally compile stale translations. There's an option controlling this (defaulted to off) that can be changed via the Localization Dashboard (or added to an existing config file). Format changes: - The archive version was bumped to 2. - Archive entries now use the "Key" entry to store the key from the source text. Previously this "Key" entry was used to store the key meta-data, but that now exists within a "MetaData" sub-object. Loading handles this correctly based upon the archive version. #jira UETOOL-897 #jira UETOOL-898 #jira UE-29481 Change 3066487 on 2016/07/27 by Matt.Kuhlenschmidt Attempt to fix linux compilation Change 3066504 on 2016/07/27 by Matt.Kuhlenschmidt Fixed data tables with structs crashing due to recent editor selection optimizations Change 3066886 on 2016/07/27 by Jamie.Dale Added required data to accurately detect TZ (needed for DST) #jira UE-28511 Change 3067122 on 2016/07/27 by Jamie.Dale Added AsTime, AsDateTime, and AsDate overrides to BP to let you format a UTC time in a given timezone (default is the local timezone). Previously you could only format times using the "invariant" timezone, which assumed that the time was already specified in the correct timezone for display. Change 3067227 on 2016/07/27 by Jamie.Dale Added a test to verify that the ICU timezone is set correctly to produce local time (including DST) Change 3067313 on 2016/07/27 by Richard.TalbotWatkin Fixed SplineComponent constructor so that old assets (prior to the property changes) load correctly if they had properties at default values. #jira UE-33669 - Crash in Dev-Editor Change 3067736 on 2016/07/27 by Stephan.Jiang Border changes for experimental classes warning Change 3067769 on 2016/07/27 by Stephan.Jiang HERE BE DRAGONS for experimental class warning #UE-33780 Change 3068192 on 2016/07/28 by Alexis.Matte #jira UE-33586 make sure we remove any false warning when running fbx automation test. Change 3068264 on 2016/07/28 by Jamie.Dale Removed some code that was no longer needed and could cause a crash #jira UE-33342 Change 3068293 on 2016/07/28 by Alex.Delesky #jira UE-33620 - Comments on constant and parameter nodes in the Material Editor will now persist when converting them. Change 3068481 on 2016/07/28 by Stephan.Jiang Adding Options to show/hide soft & hard references & dependencies in References Viewer #jira UE-33746 Change 3068585 on 2016/07/28 by Richard.TalbotWatkin Fix to Spline Mesh collision building so that geometry does not default to being auto-inflated in PhysX. Change 3068701 on 2016/07/28 by Matt.Kuhlenschmidt Fixed some issues with the selected classes not updating when objects are deselected Change 3069335 on 2016/07/28 by Jamie.Dale Fixed unintended error when trying to load a manifest/archive that didn't exist Fixed a warning when trying to load a PO file that didn't exist Change 3069408 on 2016/07/28 by Alex.Delesky #jira UE-33429 - The editor should no longer hit an ensure if the user attempts to drop a tab into a tab well before the tab well has a chance to acknowledge its been dragged into a tab well. Change 3069878 on 2016/07/29 by Jamie.Dale Fixed include casing #jira UE-33910 Change 3071807 on 2016/08/01 by Matt.Kuhlenschmidt PR #2654: Fix the spell'ing of "diff'ing" and "diff'd". (Contributed by geary) Change 3071813 on 2016/08/01 by Jamie.Dale Fixed include casing #jira UE-33936 Change 3072043 on 2016/08/01 by Jamie.Dale Fixed FText formatting of pre-Gregorian dates We now convert to an ICU UDate via an ICU GregorianCalendar, as UE4 and ICU have a different time scale for pre-Gregorian dates. #jira UE-14504 Change 3072066 on 2016/08/01 by Jamie.Dale PR #2590: FEATURE: Collapse/expand folders in the outliner (Contributed by projectgheist) Change 3072149 on 2016/08/01 by Jamie.Dale We no longer use the editor culture when running with -game Change 3072169 on 2016/08/01 by Richard.TalbotWatkin 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 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 3072221 on 2016/08/01 by Jamie.Dale Fixed "Launch On" not providing the correct cultures to StartCookByTheBookInEditor #jira UE-33001 Change 3073389 on 2016/08/02 by Matt.Kuhlenschmidt Added ability to vsync the editor. Disabled by default. Set r.VSyncEditor to 1 to enable it. Reimplemented this change from the siggraph demo stream Change 3073396 on 2016/08/02 by Matt.Kuhlenschmidt Removed unused code as suggested by a pull request Change 3073750 on 2016/08/02 by Richard.TalbotWatkin Fixed formatting (broken in CL 3057895) in anticipation of merge from Main. Change 3073789 on 2016/08/02 by Jamie.Dale Added a way to mark text in text properties as culture invariant This allows you to flag properties containing text that doesn't need to be gathered. #jira UE-33713 Change 3073825 on 2016/08/02 by Stephan.Jiang Material Editor: Highligh all Nodes connect to an input. #jira UE-32502 Change 3073947 on 2016/08/02 by Stephan.Jiang UMG Project settings to show/hide different classes and categories in Palette view. --under Project Settings ->Editor->UMG Editor Change 3074012 on 2016/08/02 by Stephan.Jiang Minor changes and comments for CL: 3073947 Change 3074029 on 2016/08/02 by Jamie.Dale Deleting folders in the Content Browser now removes the folder from disk #jira UE-24303 Change 3074054 on 2016/08/02 by Matt.Kuhlenschmidt Added missing stats to track pooled vertex and index buffer cpu memory A new slate allocator was added to track memory usage for this case. Change 3074056 on 2016/08/02 by Matt.Kuhlenschmidt Renamed a few slate stats for consistency Change 3074810 on 2016/08/02 by Matt.Kuhlenschmidt Moved geometry cache asset type to the animation category. It is not a basic asset type Change 3074826 on 2016/08/02 by Matt.Kuhlenschmidt Fix a few padding and sizing issues Change 3075322 on 2016/08/03 by Matt.Kuhlenschmidt Settings UI improvements * Added the ability to search through all settings at once * Settings files which are not checked out are no longer grayed out. The editor now attempts to check out the file automatically if connected to source control and if that fails it marks the settings file writiable so it can save the setting properly ------- * This change adds a refactor to the details panel to support multiple top level objects existing in the details panel at once instead of combining all passed in objects to a single common base class. This is disabled by default but can be turned on setting bAllowMultipleTopLevelObjects to true in FDetailsViewArgs when creating a details panel. * Each top level object in a details panel will get their own customization instance. This made it necessary to deprecate a IDetailsView::GetBaseClass since there is no longer guaranteed to be one base class. *Details panels can have their own customization for each "root object header" in order to customize the look of having multiple top level objects in the details panel. Change 3075369 on 2016/08/03 by Matt.Kuhlenschmidt Removed FBX scene as a top level option in asset filter menu in the content browser. Change 3075556 on 2016/08/03 by Matt.Kuhlenschmidt Mac warning fix Change 3075603 on 2016/08/03 by Nick.Darnell Adding two new plugins to engine, one for editor and one for runtime based testing. Currently the only consumer of these plugins is going to be the EngineTest project. Change 3075605 on 2016/08/03 by Nick.Darnell Functional Testing - Continued work on cleanup, reorganization, trying to improve the workflow for using the session browser. Change 3076084 on 2016/08/03 by Jamie.Dale Added basic support for localizing plugins You can now localize plugins! There's no localization dashboard integration for this so it has to be done manually. You need to define the localization targets your plugin uses in its .uplugin file, eg) "LocalizationTargets": [ { "Name": "Paper2D", "LoadingPolicy": "Always" } ] "Name" should match a localization config under the Config/Localization folder for your plugin. These configs are set-up the same as any other localization config. "LoadingPolicy" may be one of Never, Always, Editor, Game, PropertyNames, or ToolTips. This allows you to control under what conditions your localizations should be loaded (eg, if your plugin has both game and editor data, you can separate the editor data off into its own localization target that's only loaded by the editor). UAT has been updated to support gathering from plugins. You can use the "IncludePlugins" flag to have it gather all plugins, or you can specify a whitelist of plugins to gather as an argument to "IncludePlugins", or alternatively, may blacklist certain plugins via "ExcludePlugins". It can now also support out-of-source gathering via the "UEProjectRoot" argument (previously it assumed that everything would be under the UE4 install/checkout directory). UAT has been updated to support staging plugin LocRes files. It will stage any plugin targets that are enabled for a game/client build, and are also from a plugin that's enabled for your project. #jira UE-4217 Change 3076123 on 2016/08/03 by Stephan.Jiang Extend "Select all input nodes" function to general blueprint editor Change 3077103 on 2016/08/04 by Jamie.Dale Added support for underlined text rendering (including with drop-shadows) FTextBlockStyle can now specify a brush to use to draw an underline for text (a suitable default would be "DefaultTextUnderline" from FCoreStyle). When a brush is specified here, we inject FSlateTextUnderlineLineHighlighter highlights into the text layout to draw the underline under the relevant pieces of text, using the correct color, position, and thickness. FSlateFontCache::GetUnderlineMetrics and FSlateFontRenderer::GetUnderlineMetrics have been added to handle getting the underline metrics (which are slightly different to the baseline). This change also adds FTextLayout::RemoveRunRenderer and FTextLayout::RemoveLineHighlight to fix some bad assumptions that FSlateEditableTextLayout and FTextBlockLayout were making about ownership of run renderers and line highlighters that could cause them to remove instances they didn't own (such as the new underline highlighter) when updating things like the cursor position or highlight. Change 3077842 on 2016/08/04 by Jamie.Dale Fixed fallout from API changes Change 3077999 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 3078000 on 2016/08/04 by Trung.Le Categories VREditor-specific UMG widget assets as "VR Editor" #jira UE-34134 Change 3078056 on 2016/08/04 by Nick.Darnell Build - Fixing a mac compiler warning, reodering constructor initializers. Change 3078813 on 2016/08/05 by Nick.Darnell Reorganizing editor tests, establishing plugins in the EditorTest project that will house the tests. Change 3078818 on 2016/08/05 by Nick.Darnell Additional rename and cleanup associated with test moving. Change 3078819 on 2016/08/05 by Nick.Darnell Removing the Oculus performance automation test, not running, and was unclaimed. Change 3078842 on 2016/08/05 by Nick.Darnell Continued reorganizing tests. Change 3078897 on 2016/08/05 by Nick.Darnell Additional changes to get some moved tests compiling Change 3079157 on 2016/08/05 by Nick.Darnell Making it possible to browse provider names thorugh the source control module interface. Change 3079176 on 2016/08/05 by Stephan.Jiang Add shortcut Ctrl+Shift+Space to rotate through different viewport options #jira UE-34140 Change 3079208 on 2016/08/05 by Stephan.Jiang Fix new animation name check in UMG Change 3079278 on 2016/08/05 by Nick.Darnell Fixing the build Change 3080555 on 2016/08/08 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3081155 on 2016/08/08 by Nick.Darnell Fixing some issues with the editor tests / runtime tests under certain build configs. Change 3081243 on 2016/08/08 by Stephan.Jiang Add gesture in LevelViewport to switch between Top/Bottom...etc. Change 3082226 on 2016/08/09 by Matt.Kuhlenschmidt Work around animations not playing in paragon due to bsp rebuilds (UE-34391) Change 3082254 on 2016/08/09 by Stephan.Jiang DragTool_ViewportChange init changes [CL 3082411 by Matt Kuhlenschmidt in Main branch]
2016-08-09 11:28:56 -04:00
#if WITH_EDITOR
SCOPED_DRAW_EVENT(Context.RHICmdList, PostProcessSelectionOutlineBuffer);
const FPooledRenderTargetDesc* SceneColorInputDesc = GetInputDesc(ePId_Input0);
if(!SceneColorInputDesc)
{
// input is not hooked up correctly
return;
}
const FViewInfo& View = Context.View;
FIntRect ViewRect = View.ViewRect;
FIntPoint SrcSize = SceneColorInputDesc->Extent;
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
FDrawingPolicyRenderState DrawRenderState(View);
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
// Get the output render target
const FSceneRenderTargetItem& DestRenderTarget = PassOutputs[0].RequestSurface(Context);
// Set the render target/viewport.
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
FRHIDepthRenderTargetView DepthRT(DestRenderTarget.TargetableTexture, ERenderTargetLoadAction::EClear, ERenderTargetStoreAction::ENoAction, ERenderTargetLoadAction::EClear, ERenderTargetStoreAction::ENoAction);
FRHISetRenderTargetsInfo RTInfo(0, nullptr, DepthRT);
Context.RHICmdList.SetRenderTargetsAndClear(RTInfo);
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3082391) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3051464 on 2016/07/15 by Nick.Darnell Regression Testing - Several upgrades to the functional testing system, better tracking of failure cases, some source line failure detection, trying to make it easier to run a specific test on a map. Some UI improvements, easier access to the automation system. Lots more refactoring to come, lots of improvements are still needed in transmitting screenshots and just generally building a automation report we could dump from the build machines. Change 3051465 on 2016/07/15 by Nick.Darnell Adding the "Engine Test" project our one stop shope for running automation tests in the engine to try and reduce regressions. Change 3051847 on 2016/07/15 by Matt.Kuhlenschmidt Fixed material editor viewport messages being blocked by viewport toolbar Change 3052025 on 2016/07/15 by Nick.Darnell Moving the placement mode hooks out of functional testing module, moving them into the editor automation module. Change 3053508 on 2016/07/18 by Stephan.Jiang Copy,Cut,Paste tracks, not for mastertracks yet. #UE-31808 Change 3054723 on 2016/07/18 by Stephan.Jiang Small fixes for typo & comments Change 3055996 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received Change 3056106 on 2016/07/19 by Trung.Le Back out changelist 3055996. Build break. Change 3056108 on 2016/07/19 by Stephan.Jiang Updating "SoundConcurrency" asseticon Change 3056389 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received #jira UE-33339 Change 3056396 on 2016/07/19 by Matt.Kuhlenschmidt More perf selection improvements: - Static meshes now go through the static draw path when rendered for selection outline instead of just rendering using the dynamic path Change 3056758 on 2016/07/19 by Stephan.Jiang Update SelectedWidgets in WidgetblueprintEditor to match the selected tracks in sequencer. Change 3057519 on 2016/07/20 by Matt.Kuhlenschmidt Another fix for selecting lots of objects taking forever. This one is due to repeated Modify calls if there are groups in the selection. Each group actor selected iterates through each object selected during USelection::Modify! Change 3057635 on 2016/07/20 by Stephan.Jiang Updating visual logger icon UI Change 3057645 on 2016/07/20 by Richard.TalbotWatkin 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 3057868 on 2016/07/20 by Richard.TalbotWatkin 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. Change 3057895 on 2016/07/20 by Richard.TalbotWatkin 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 3057966 on 2016/07/20 by Richard.TalbotWatkin Renamed IsEditingArchetype to IsVisualizingArchetype in the ComponentVisualizer API. #jira UE-33049 - Transform widget visible in blueprint viewport when editing spline points in editor viewport Change 3058009 on 2016/07/20 by Richard.TalbotWatkin Fixed build failure due to changes to FComponentVisualizer API, as of CL 3057868. Change 3058047 on 2016/07/20 by Stephan.Jiang Fixing error on previous CL: 3056758 (extra qualification) Change 3058266 on 2016/07/20 by Nick.Darnell Automation - Work continues on automation integrating some ideas form a licensee. Continuing to work on the usability aspects, I've made it possible for tests to provide custom open commands, as well as have complex subclasses that do different things. The functional tests now have a custom open command they emit that makes it so clicking on a test opens not the C++ location where the functional test macro lives, but instead the map, AND focuses the functional test actor. Change 3058282 on 2016/07/20 by Matt.Kuhlenschmidt PR #2611: Fix spurious component diff when properties are in subcategories (Contributed by CA-ADuran) Change 3059214 on 2016/07/21 by Richard.TalbotWatkin Further fixes to visualizers following Component Visualizer API change. Change 3059260 on 2016/07/21 by Richard.TalbotWatkin Template specialization not allowed in class scope, but Visual Studio allows it anyway. Fixed for clang. Change 3059543 on 2016/07/21 by Stephan.Jiang Changeing level details icon Change 3059732 on 2016/07/21 by Stephan.Jiang Directional Light icon update Change 3060095 on 2016/07/21 by Stephan.Jiang Directional Light editor icon asset changed Change 3060129 on 2016/07/21 by Nick.Darnell Automation - The session browser now attempts to select the app instance if no other thing is selected when it refreshes. This is to try and make it easier to use when you first bring it up and nothing is selected when most of the time you're going to use it on your own instance. Change 3061735 on 2016/07/22 by Stephan.Jiang Improve UMG replace with in HierarchyView function #UE-33582 Change 3062059 on 2016/07/22 by Stephan.Jiang Strip off "b" in propertyname in replace with function for tracks. Change 3062146 on 2016/07/22 by Stephan.Jiang checkin with CL: 3061735 Change 3062182 on 2016/07/22 by Stephan.Jiang Change both animation bindings' widget name when renameing the widget so the slot content is still valid Change 3062257 on 2016/07/22 by Stephan.Jiang comments Change 3062381 on 2016/07/22 by Nick.Darnell Build - Adding #undef LOCTEXT_NAMESPACE to try and fix the build. Change 3062924 on 2016/07/25 by Chris.Wood Fix a crash in CrashReportClient that happens when the CrashReportReceiver is not responding to pings and there are no PendingReportDirectories. This is a change in the UE4 stream depot based on a fix in the Fortnite stream depot -> JIRA FORT-27570 Change 3063017 on 2016/07/25 by Matt.Kuhlenschmidt PR #2618: DebuggerCommand not recording PlayLocationString (Contributed by ungalyant) Change 3063021 on 2016/07/25 by Matt.Kuhlenschmidt PR #2619: added a search box to ModuleUI (Contributed by straymist) Change 3063084 on 2016/07/25 by Matt.Kuhlenschmidt Fix "YesToAll" when deleting referenced actors overriding the "YesToAll" state for other referenced messages. https://jira.ol.epicgames.net/browse/UE-33651 #jira UE-33651 Change 3063091 on 2016/07/25 by Alex.Delesky #jira UE-32949 - Truncating the hue inside the theme color block tooltip to only display whole numbers, to match how the color picker displays the hue value inside the hue scrubber. Change 3063388 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Fix large FName creation time when selecting thousands of objects Change 3063568 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Modified how USelection stores classes. Classes are now in a TSet and can be accessed efficiently using IsClassSelected. The old unused way of checking if a selection has a class by iterating through them is deprecated - USelection no longer directly checks if an item is already selected with a costly n^2 search. The check is done by using the already existing UObject selected annotation - Object property nodes no longer perform an n^2 check for object uniqueness when objects are added to details panels. This is now left up to the caller to avoid - Eliminated useless work on FObjectPropertyNode::GetReadAddressUncached. If a read address list is not passed in we'll not attempt to the work to populate it - Removed expensive checking for brush actors when any actor is selected Change 3063749 on 2016/07/25 by Stephan.Jiang Disallow naming the widgetanimation to the same name with a override function in uuserwidget, because it will trigger a breakpoint in Rename() #jira UE-33711 Change 3064585 on 2016/07/26 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3064612 on 2016/07/26 by Alex.Delesky #jira UE-33712 - Deleting many assets at once will now batch SourceControl commands rather than executing one for each asset. Change 3064647 on 2016/07/26 by Alexis.Matte #jira UE-33274 dont hash the same file over and over when importing multiple asset from one fbx file. Change 3064739 on 2016/07/26 by Matt.Kuhlenschmidt Fixed typo Change 3064795 on 2016/07/26 by Jamie.Dale Fixed typo in FLocalizationModule::GetLocalizationTargetByName #jira UE-32961 Change 3066461 on 2016/07/27 by Jamie.Dale Enabled stable localization keys Change 3066463 on 2016/07/27 by Jamie.Dale Set "Build Engine Localization" to upload all cultures to ensure we don't lose translation due to the archive keying changes Change 3066467 on 2016/07/27 by Jamie.Dale Updated internationalization archives to store translations per-identity This allows translators to translate each instance of a piece of text based upon their context, rather than requiring a content producer to go back and give the entry a unique namespace. It also allows us to optionally compile out-of-date translations, as they are now mapped to their source identity (namespace + key) rather than their source text. Major changes: - Added FLocTextHelper. This acts as a high-level API for uncompiled localized text, and replaces all the old ad-hoc loading/saving of manifests and archives, ensuring that everything is consistently using source control, and that older archives can be upgraded correctly to the new format. It also takes care of some of the quirks of our archives, such as native translations. All major localization commandlets have been updated to use FLocTextHelper. - Moved FTextLocalizationResourceGenerator from Core to Internationalization. This also allows IJsonInternationalizationManifestSerializer and IJsonInternationalizationArchiveSerializer to be removed, and for FJsonInternationalizationManifestSerializer and FJsonInternationalizationArchiveSerializer to have all their functions become static. - FTextLocalizationResourceGenerator being moved from Core meant that FTextLocalizationManager::LoadFromManifestAndArchives was also removed. This functionality is now handled by FTextLocalizationResourceGenerator::GenerateAndUpdateLiveEntriesFromConfig. - The RepairLocalizationData commandlet has been removed. This existed to fix a change that pre-dated 4.0 so no such data should exist in the wild, and the commandlet couldn't be updated to work with the new API (we handle format upgrades in-place now). - Removed FInternationalizationArchive::FindEntryBySource as it is no-longer safe to use. All existing code has been updated to use FInternationalizationArchive::FindEntryByKey instead. Workflow changes: - Archive conditioning now only adds new entries if they don't exist in the archive. This allows us to persist any existing translations, even if they're for old source text (caveat: native archives still update existing entries if the source is changed). - PO export now sets the msgctx for each entry to be "namespace,key", rather than only doing it when the entry had key meta-data. - PO import will now update both the source and translation stored in the archive to match the current PO data. This is the primary method by which stale source->translation pairs are updated. - LocRes compilation may now optionally compile stale translations. There's an option controlling this (defaulted to off) that can be changed via the Localization Dashboard (or added to an existing config file). Format changes: - The archive version was bumped to 2. - Archive entries now use the "Key" entry to store the key from the source text. Previously this "Key" entry was used to store the key meta-data, but that now exists within a "MetaData" sub-object. Loading handles this correctly based upon the archive version. #jira UETOOL-897 #jira UETOOL-898 #jira UE-29481 Change 3066487 on 2016/07/27 by Matt.Kuhlenschmidt Attempt to fix linux compilation Change 3066504 on 2016/07/27 by Matt.Kuhlenschmidt Fixed data tables with structs crashing due to recent editor selection optimizations Change 3066886 on 2016/07/27 by Jamie.Dale Added required data to accurately detect TZ (needed for DST) #jira UE-28511 Change 3067122 on 2016/07/27 by Jamie.Dale Added AsTime, AsDateTime, and AsDate overrides to BP to let you format a UTC time in a given timezone (default is the local timezone). Previously you could only format times using the "invariant" timezone, which assumed that the time was already specified in the correct timezone for display. Change 3067227 on 2016/07/27 by Jamie.Dale Added a test to verify that the ICU timezone is set correctly to produce local time (including DST) Change 3067313 on 2016/07/27 by Richard.TalbotWatkin Fixed SplineComponent constructor so that old assets (prior to the property changes) load correctly if they had properties at default values. #jira UE-33669 - Crash in Dev-Editor Change 3067736 on 2016/07/27 by Stephan.Jiang Border changes for experimental classes warning Change 3067769 on 2016/07/27 by Stephan.Jiang HERE BE DRAGONS for experimental class warning #UE-33780 Change 3068192 on 2016/07/28 by Alexis.Matte #jira UE-33586 make sure we remove any false warning when running fbx automation test. Change 3068264 on 2016/07/28 by Jamie.Dale Removed some code that was no longer needed and could cause a crash #jira UE-33342 Change 3068293 on 2016/07/28 by Alex.Delesky #jira UE-33620 - Comments on constant and parameter nodes in the Material Editor will now persist when converting them. Change 3068481 on 2016/07/28 by Stephan.Jiang Adding Options to show/hide soft & hard references & dependencies in References Viewer #jira UE-33746 Change 3068585 on 2016/07/28 by Richard.TalbotWatkin Fix to Spline Mesh collision building so that geometry does not default to being auto-inflated in PhysX. Change 3068701 on 2016/07/28 by Matt.Kuhlenschmidt Fixed some issues with the selected classes not updating when objects are deselected Change 3069335 on 2016/07/28 by Jamie.Dale Fixed unintended error when trying to load a manifest/archive that didn't exist Fixed a warning when trying to load a PO file that didn't exist Change 3069408 on 2016/07/28 by Alex.Delesky #jira UE-33429 - The editor should no longer hit an ensure if the user attempts to drop a tab into a tab well before the tab well has a chance to acknowledge its been dragged into a tab well. Change 3069878 on 2016/07/29 by Jamie.Dale Fixed include casing #jira UE-33910 Change 3071807 on 2016/08/01 by Matt.Kuhlenschmidt PR #2654: Fix the spell'ing of "diff'ing" and "diff'd". (Contributed by geary) Change 3071813 on 2016/08/01 by Jamie.Dale Fixed include casing #jira UE-33936 Change 3072043 on 2016/08/01 by Jamie.Dale Fixed FText formatting of pre-Gregorian dates We now convert to an ICU UDate via an ICU GregorianCalendar, as UE4 and ICU have a different time scale for pre-Gregorian dates. #jira UE-14504 Change 3072066 on 2016/08/01 by Jamie.Dale PR #2590: FEATURE: Collapse/expand folders in the outliner (Contributed by projectgheist) Change 3072149 on 2016/08/01 by Jamie.Dale We no longer use the editor culture when running with -game Change 3072169 on 2016/08/01 by Richard.TalbotWatkin 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 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 3072221 on 2016/08/01 by Jamie.Dale Fixed "Launch On" not providing the correct cultures to StartCookByTheBookInEditor #jira UE-33001 Change 3073389 on 2016/08/02 by Matt.Kuhlenschmidt Added ability to vsync the editor. Disabled by default. Set r.VSyncEditor to 1 to enable it. Reimplemented this change from the siggraph demo stream Change 3073396 on 2016/08/02 by Matt.Kuhlenschmidt Removed unused code as suggested by a pull request Change 3073750 on 2016/08/02 by Richard.TalbotWatkin Fixed formatting (broken in CL 3057895) in anticipation of merge from Main. Change 3073789 on 2016/08/02 by Jamie.Dale Added a way to mark text in text properties as culture invariant This allows you to flag properties containing text that doesn't need to be gathered. #jira UE-33713 Change 3073825 on 2016/08/02 by Stephan.Jiang Material Editor: Highligh all Nodes connect to an input. #jira UE-32502 Change 3073947 on 2016/08/02 by Stephan.Jiang UMG Project settings to show/hide different classes and categories in Palette view. --under Project Settings ->Editor->UMG Editor Change 3074012 on 2016/08/02 by Stephan.Jiang Minor changes and comments for CL: 3073947 Change 3074029 on 2016/08/02 by Jamie.Dale Deleting folders in the Content Browser now removes the folder from disk #jira UE-24303 Change 3074054 on 2016/08/02 by Matt.Kuhlenschmidt Added missing stats to track pooled vertex and index buffer cpu memory A new slate allocator was added to track memory usage for this case. Change 3074056 on 2016/08/02 by Matt.Kuhlenschmidt Renamed a few slate stats for consistency Change 3074810 on 2016/08/02 by Matt.Kuhlenschmidt Moved geometry cache asset type to the animation category. It is not a basic asset type Change 3074826 on 2016/08/02 by Matt.Kuhlenschmidt Fix a few padding and sizing issues Change 3075322 on 2016/08/03 by Matt.Kuhlenschmidt Settings UI improvements * Added the ability to search through all settings at once * Settings files which are not checked out are no longer grayed out. The editor now attempts to check out the file automatically if connected to source control and if that fails it marks the settings file writiable so it can save the setting properly ------- * This change adds a refactor to the details panel to support multiple top level objects existing in the details panel at once instead of combining all passed in objects to a single common base class. This is disabled by default but can be turned on setting bAllowMultipleTopLevelObjects to true in FDetailsViewArgs when creating a details panel. * Each top level object in a details panel will get their own customization instance. This made it necessary to deprecate a IDetailsView::GetBaseClass since there is no longer guaranteed to be one base class. *Details panels can have their own customization for each "root object header" in order to customize the look of having multiple top level objects in the details panel. Change 3075369 on 2016/08/03 by Matt.Kuhlenschmidt Removed FBX scene as a top level option in asset filter menu in the content browser. Change 3075556 on 2016/08/03 by Matt.Kuhlenschmidt Mac warning fix Change 3075603 on 2016/08/03 by Nick.Darnell Adding two new plugins to engine, one for editor and one for runtime based testing. Currently the only consumer of these plugins is going to be the EngineTest project. Change 3075605 on 2016/08/03 by Nick.Darnell Functional Testing - Continued work on cleanup, reorganization, trying to improve the workflow for using the session browser. Change 3076084 on 2016/08/03 by Jamie.Dale Added basic support for localizing plugins You can now localize plugins! There's no localization dashboard integration for this so it has to be done manually. You need to define the localization targets your plugin uses in its .uplugin file, eg) "LocalizationTargets": [ { "Name": "Paper2D", "LoadingPolicy": "Always" } ] "Name" should match a localization config under the Config/Localization folder for your plugin. These configs are set-up the same as any other localization config. "LoadingPolicy" may be one of Never, Always, Editor, Game, PropertyNames, or ToolTips. This allows you to control under what conditions your localizations should be loaded (eg, if your plugin has both game and editor data, you can separate the editor data off into its own localization target that's only loaded by the editor). UAT has been updated to support gathering from plugins. You can use the "IncludePlugins" flag to have it gather all plugins, or you can specify a whitelist of plugins to gather as an argument to "IncludePlugins", or alternatively, may blacklist certain plugins via "ExcludePlugins". It can now also support out-of-source gathering via the "UEProjectRoot" argument (previously it assumed that everything would be under the UE4 install/checkout directory). UAT has been updated to support staging plugin LocRes files. It will stage any plugin targets that are enabled for a game/client build, and are also from a plugin that's enabled for your project. #jira UE-4217 Change 3076123 on 2016/08/03 by Stephan.Jiang Extend "Select all input nodes" function to general blueprint editor Change 3077103 on 2016/08/04 by Jamie.Dale Added support for underlined text rendering (including with drop-shadows) FTextBlockStyle can now specify a brush to use to draw an underline for text (a suitable default would be "DefaultTextUnderline" from FCoreStyle). When a brush is specified here, we inject FSlateTextUnderlineLineHighlighter highlights into the text layout to draw the underline under the relevant pieces of text, using the correct color, position, and thickness. FSlateFontCache::GetUnderlineMetrics and FSlateFontRenderer::GetUnderlineMetrics have been added to handle getting the underline metrics (which are slightly different to the baseline). This change also adds FTextLayout::RemoveRunRenderer and FTextLayout::RemoveLineHighlight to fix some bad assumptions that FSlateEditableTextLayout and FTextBlockLayout were making about ownership of run renderers and line highlighters that could cause them to remove instances they didn't own (such as the new underline highlighter) when updating things like the cursor position or highlight. Change 3077842 on 2016/08/04 by Jamie.Dale Fixed fallout from API changes Change 3077999 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 3078000 on 2016/08/04 by Trung.Le Categories VREditor-specific UMG widget assets as "VR Editor" #jira UE-34134 Change 3078056 on 2016/08/04 by Nick.Darnell Build - Fixing a mac compiler warning, reodering constructor initializers. Change 3078813 on 2016/08/05 by Nick.Darnell Reorganizing editor tests, establishing plugins in the EditorTest project that will house the tests. Change 3078818 on 2016/08/05 by Nick.Darnell Additional rename and cleanup associated with test moving. Change 3078819 on 2016/08/05 by Nick.Darnell Removing the Oculus performance automation test, not running, and was unclaimed. Change 3078842 on 2016/08/05 by Nick.Darnell Continued reorganizing tests. Change 3078897 on 2016/08/05 by Nick.Darnell Additional changes to get some moved tests compiling Change 3079157 on 2016/08/05 by Nick.Darnell Making it possible to browse provider names thorugh the source control module interface. Change 3079176 on 2016/08/05 by Stephan.Jiang Add shortcut Ctrl+Shift+Space to rotate through different viewport options #jira UE-34140 Change 3079208 on 2016/08/05 by Stephan.Jiang Fix new animation name check in UMG Change 3079278 on 2016/08/05 by Nick.Darnell Fixing the build Change 3080555 on 2016/08/08 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3081155 on 2016/08/08 by Nick.Darnell Fixing some issues with the editor tests / runtime tests under certain build configs. Change 3081243 on 2016/08/08 by Stephan.Jiang Add gesture in LevelViewport to switch between Top/Bottom...etc. Change 3082226 on 2016/08/09 by Matt.Kuhlenschmidt Work around animations not playing in paragon due to bsp rebuilds (UE-34391) Change 3082254 on 2016/08/09 by Stephan.Jiang DragTool_ViewportChange init changes [CL 3082411 by Matt Kuhlenschmidt in Main branch]
2016-08-09 11:28:56 -04:00
Context.SetViewportAndCallRHI(ViewRect);
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3388261) #lockdown Nick.Penwarden #rb None ========================== MAJOR FEATURES + CHANGES ========================== Change 3358140 on 2017/03/22 by Rolando.Caloca DR - Fix copy to cube face - Compile fix when using dump layer - Add new error enum Change 3358301 on 2017/03/22 by Mitchell.Wilson Initial check in of LODs in InfiltratorForward. First pass on optimization in level. Adding a visibility track for SceneCapture2D in tunnel section. Change 3358477 on 2017/03/22 by Mitchell.Wilson Updating Skeletal Mesh DPW_Robot_Export to resolve screen size being too low for LOD1. Cleaned up LOD1 which was showing some visible popping when transitioning. Change 3358529 on 2017/03/22 by Mark.Satterthwaite Globally disable clang's "constant-logical-operand" warning when running under Distcc - it is much easier and less invasive than constantly fixing the code. Change 3358745 on 2017/03/22 by Mark.Satterthwaite Disable another warning (parentheses-equality) under Distcc because again the separation of preprocessing from compilation means it turns up where it isn't expected. Change 3358837 on 2017/03/22 by Joe.Graf Merge of pull request #3214 for the RenderDocPlugin #CodeReview: matt.kuhlenschmidt, marcus.wassmer #rb: marcus.wassmer Change 3359112 on 2017/03/22 by Ben.Salem Update perf monitor to include frame time by default. Also, use only game/PIE world timers when in editor, instead of all worlds combined. #tests Ran several Showdown test runs with plugin! Change 3359363 on 2017/03/22 by Joe.Graf First pass at non-unity & no pch compilation Change 3359449 on 2017/03/22 by Joe.Graf Added missing null check when exporting a EXR on Linux (UE-40268) #CodeReview: dmitry.rekman #rb: n/a Change 3360349 on 2017/03/23 by Guillaume.Abadie Fixes TAA's AA_FORCE_ALPHA_CLAMP causing DOF layouts. #jira UE-42920 Change 3360405 on 2017/03/23 by Marcus.Wassmer Better method for detecting Kepler Change 3360718 on 2017/03/23 by Daniel.Wright Planar reflections handle views smaller than the render target in a general way * Fixes planar reflections with adaptive pixel density (ViewFamily size larger than actual views combined) * Planar reflections are now supported in splitscreen Change 3360758 on 2017/03/23 by Daniel.Wright [Copy] Added new light property bCastVolumetricShadow, which defaults to true for directional and sky lights, but false for point / spot lights as supporting volumetric fog shadowing has significant GPU overhead Change 3360762 on 2017/03/23 by Daniel.Wright [Copy] Texture flags are now properly routed to RHICreateTexture3D from the render target pool Change 3360768 on 2017/03/23 by Daniel.Wright [Copy] Disabled GPUProfiler histogram by default, controlled by r.ProfileGPU.ShowEventHistogram Change 3360770 on 2017/03/23 by Daniel.Wright [Copy] Disabled fast clears on CustomDepth, saves .2ms on xbox Change 3360771 on 2017/03/23 by Daniel.Wright [Copy] Particle lights no longer force tiled deferred lighting. Tiled deferred lighting is only used if enough unshadowed lights + particle lights are on screen. Saves 1.5ms Xbox with one particle light. Change 3360774 on 2017/03/23 by Daniel.Wright [Copy] Distance field cvar comments Change 3360782 on 2017/03/23 by Daniel.Wright [Copy] Disabled selection color on Volume materials Change 3360795 on 2017/03/23 by Daniel.Wright [Copy] Volume materials now specify Albedo and Extinction, which is more intuitive than Scattering and Absorption. Albedo is [0-1] reflectance, while Extinction is a world space density. Change 3360799 on 2017/03/23 by Daniel.Wright [Copy] Cinematic scalability levels get 2x volumetric fog resolution in x and y Change 3360806 on 2017/03/23 by Daniel.Wright [Copy] Fixed volumetric fog being offset when viewport min is not 0 Change 3360809 on 2017/03/23 by Daniel.Wright [Copy] Volumetric fog now adds a bias to the inverse squared light falloff denominator, prevents extreme aliasing from the hotspot. Can be controlled with r.VolumetricFog.InverseSquaredLightDistanceBiasScale. Change 3361651 on 2017/03/23 by Brian.Karis Higher quality sharp SSR at quality 4 Change 3361678 on 2017/03/23 by Brian.Karis Fresnel darkens diffuse for clearcoat. Change 3361683 on 2017/03/23 by Brian.Karis Fixed SSR artifact Change 3361691 on 2017/03/23 by Brian.Karis Chagned min roughness limit Change 3361707 on 2017/03/23 by Brian.Karis Added inverse film tone map Change 3361726 on 2017/03/23 by Brian.Karis Better precision inverse Change 3361758 on 2017/03/23 by Brian.Karis Material flag normal curvature to roughness is no longer forward only. Change 3361765 on 2017/03/23 by Brian.Karis Update ACES Change 3361774 on 2017/03/23 by Brian.Karis Cleaned up alpha support and disabled screen edge clipping. Change 3362478 on 2017/03/24 by Guillaume.Abadie Cherry pick 3316084's PostProcessing.cpp: Fixes a bug in Circle DOF where the apply pass was no longer using the downres DOF's TAA output. #author Brian.Karis #jira UE-42920 Change 3362738 on 2017/03/24 by Rolando.Caloca DR - Hide scene capture on IF Change 3362890 on 2017/03/24 by Guillaume.Abadie Renames r.SceneAlpha to r.PostProcessing.PropagateAlpha Change 3363665 on 2017/03/24 by Mark.Satterthwaite PR #3414: Add command line option "-noheartbeatthread" to disable heart beat thread (Contributed by JeffRous) Change 3363866 on 2017/03/24 by Arne.Schober DR - Updated NVAPI #RB Marcus.Wassmer Change 3364300 on 2017/03/24 by Brian.Karis SSR use dynamic velocity Change 3364372 on 2017/03/24 by Brian.Karis Fix changing off axis projection velocities. Change 3364373 on 2017/03/24 by Brian.Karis Enabled velocity drawing in scene captures Change 3365531 on 2017/03/27 by Guillaume.Abadie Computes the material's screen position material expression directly from the pixel shader SvPosition Change 3365764 on 2017/03/27 by Chris.Bunner Lowering severity of crash for missing values in scalability.ini. #jira UE-41331 Change 3365916 on 2017/03/27 by Guillaume.Abadie Exposes the viewport offset within the view property material expression Change 3365979 on 2017/03/27 by Brian.Karis Fixed skylight intensity from double applying Change 3365987 on 2017/03/27 by Brian.Karis Stopped post process indirect lighting intensity from scaling skylight reflections Change 3365991 on 2017/03/27 by Brian.Karis Fix for static analysis Change 3366028 on 2017/03/27 by Daniel.Wright Volumetric fog supports static shadowing from Stationary lights * Using bilinear on static shadowmap depths + 1 PCF to smooth out results Change 3366029 on 2017/03/27 by Daniel.Wright Static shadow depth maps for Stationary point and spot lights are 2x higher res by default (4x more texels), which is more appropriate for volumetric fog Change 3366055 on 2017/03/27 by Guillaume.Abadie Cherry picks 3251469: Implements scene capture component's CaptureSortPriority to control GPU execution order in order to manage inter dependencies. Change 3366447 on 2017/03/27 by Simon.Tourangeau Fix IES light profile importer. - Bug in the LM-63-1986 format importer. Change 3366836 on 2017/03/27 by Brian.Karis ClearUAV now supports int types Change 3367435 on 2017/03/28 by Benjamin.Hyder Submitting Decal Automation map for initial approval Change 3367572 on 2017/03/28 by Chris.Bunner Changed ClampedPow {max(abs(x),0.00001)} to PositiveClampedPow {max(x,0)} to give more expected results to Power node in material graphs. #jira UE-42989 Change 3367756 on 2017/03/28 by Olaf.Piesche Niagara material usage flags Change 3367835 on 2017/03/28 by Marcus.Wassmer Fix crash when TileRenderer runs before anything else. Make explicit behavior when rendering at a time when there is no valid scene. Change 3367837 on 2017/03/28 by Marcus.Wassmer Missed a file. Change 3367838 on 2017/03/28 by Richard.Wallis Updated items from original shelved version by Mark Satt: - Added MetalBackend.cpp to change main function string to have an initial crc + code length zero's **Description below taken from Mark Satt's original verison of this in CL3343280** Updated for Dev-Rendering's PSOs & integrates Richard's work on RHI shader libraries. Replace the FShaderCache's cook-time binary shader cache with Dmitriy Dyomin's standalone FShaderCodeLibrary that saves all shader byte-code arrays to files named by the FSHAHash. This de-duplicates shaders so we only ever store the byte code once. Includes optional support for generating a platform specific library file - which Metal implements to provide a single Metal library. The platform-native implementation can perform more de-duplication and in the case of Metal has lower file overheads and will compress more efficiently. - All of the support code for the FShaderCache's cook caching is gone, which affects all platforms. The FShaderCodeLibrary is currently supported by Cook-By-The-Book but can be used with iterate or child cookers - only DLC cooking requires further work. - With further modifications it should be possible to support Cook-on-the-Fly as well (output directories would be needed in FShaderCodeLibrary::InitForCooking) and the file-access pattern should be changed to use async. IO so that Material loading is not considered complete until all required byte-code arrays are loaded into the FShaderCodeLibrary. - For Metal archiving shaders this way will compile with debug information and the FShaderCodeLibrary, with some help from extensions to IShaderFormat, will save the debug information out into separate files during cooking - these can then be used to debug the game without having to locally recompile, recook & repackage but the shipped byte-code is stripped. Global shader caches are also subject to de-duplication in the library in order to support Metal's shader stripping. - File Move operations need to respect the 'Replace' flag - for FShaderCodeLibrary to work we need Move to be atomic. - This bumps the object version and will cause all content to recook. - Native library support is optional - only Metal currently implements one, but so could Vulkan and D3D12. For Metal the big advantages are further de-duplication where different materials generate the same MetalSL text but a different FSHAHash, that the single Metal library has lower overhead and that as a single file it all compresses far better (esp. with LZMA - 5x smaller). Change 3367854 on 2017/03/28 by Mark.Satterthwaite Don't track or record draw call resources for non-OpenGL shader platforms in the shader-cache as it is unnecessary and makes it slower on the CPU than it needs to be. Change 3367877 on 2017/03/28 by Brian.Karis Fixed linux build hopefully Change 3368001 on 2017/03/28 by Mark.Satterthwaite Compile fixes from Richard's checkin caused by not having visibility to all platforms from my original shelves. Change 3368019 on 2017/03/28 by Mark.Satterthwaite And another fix for Windows compilation of MetalShaderFormat. Change 3368042 on 2017/03/28 by Mark.Satterthwaite And a couple of simpler MSVC errors. Change 3368271 on 2017/03/28 by Mark.Satterthwaite Make SceneRenderTargets compile again. Change 3368691 on 2017/03/28 by Daniel.Wright [Copy from BenW] Renamed r.Shadow.MaxCSMShadowResolution to r.Shadow.MaxCSMResolution to match scalability inis Change 3369689 on 2017/03/29 by Marcus.Wassmer Fix non editor compile for now Change 3369862 on 2017/03/29 by Marcus.Wassmer Get the rest of the things compiling again. Change 3369896 on 2017/03/29 by Chris.Bunner Enabling AMD HDR support by default. #jira UE-42113 Change 3370535 on 2017/03/29 by Marcus.Wassmer DR - Fix template explicit instantiation for ClearUAV permutations #RB Brian.Karis, Arne.Schober Change 3370704 on 2017/03/29 by Rolando.Caloca DR - Rewrote GPU Skin Cache - Per section buffers - Limited memory per non-editor worlds (control with r.SkinCache.SceneMemoryLimitInMB) Copied from 3370529 Change 3371389 on 2017/03/30 by Richard.Wallis Remove temp working directories after archive packages built. Change 3371641 on 2017/03/30 by Rolando.Caloca DR - Copy 3371640 (fix mem leak) Change 3372436 on 2017/03/30 by Uriel.Doyon Added flags in UPrimitiveComponent to keep track of its state in the streaming manager. This allows to avoid unnecessary callback and processing in begin destroy reattach and being destroy logic. Removed the limitation of only processing UMeshComponent when handling spawed primitive. This releases the level manager from having to manage dynamic primitives. This improves performance by not having to manage dynamic references in the level manager. Primitives managed as dynamic now have a callback when ever their proxy is udpated, handling many cases automatically where previously a manual callback to notify would have been required. Fixed an issue where primitives with no reference to streaming textures would loose they dynamic state because of lack of references in the streamer. Change 3372740 on 2017/03/30 by Chris.Bunner [Experimental] Partial compute post process pipeline (r.PostProcess.PreferCompute). StencilSceneTexture added to deferred list. A few known issues to be fixed in a follow-up CL. Change 3372765 on 2017/03/30 by Uriel.Doyon Disabled concurrent call to NotifyPrimitiveUpdated while we don't have a safe concurrent update Change 3372979 on 2017/03/30 by Richard.Hinckley #jira UE-43501 The stencil buffer can now use single-channel bitmasks that ignore depth. This makes it possible to detect overlaps between stencil objects. Change 3373053 on 2017/03/30 by Simon.Tourangeau LPV Fade support - mostly integrated from CL 2959511 Change 3373272 on 2017/03/30 by Uriel.Doyon Added support for the concurrent update of dynamic primitives by the streaming manager. Change 3373450 on 2017/03/30 by Rolando.Caloca DR - FNT - Fix bad data for odd texcoord channels used on skin cache passthrough factory Copy 3373364 #jira UE-43492 Change 3373470 on 2017/03/30 by Marcus.Wassmer Nvidia Aftermath support Change 3374187 on 2017/03/31 by Chris.Bunner Volume texture support for CombineLUTs/Tonemap compute pass. Refactored common param code to shared sub-class in CombineLUTs and Tonemap PS/CS. Skip compute post process out-of-bounds writes. Unsigned type conversion fixes. Trimmed compute post process shader inputs. Change 3374233 on 2017/03/31 by Chris.Bunner Removed several redundant post process compute fences and resource transitions. Added testing CVar to force compute post processes to async (r.PostProcess.ForceAsyncDispatch). Change 3374412 on 2017/03/31 by Rolando.Caloca DR - Fix static analysis Change 3374544 on 2017/03/31 by Richard.Wallis FShaderCache Parallel-Context-Aware Merged with FShaderCache Single Library. Future Work - This was done before Engine PSO were in so this now needs a refector in the recording and playback on pipeline states instead an emulate PSO in OpenGL Driver. - Remove FShaderCacheState and replace the logic with FGraphicsPipelineStateInitializer which should be able to record from the RHI current pipeline state - This would reduce the Locking required as it's naturally per thread/context and only the final record would need a lock Change 3374588 on 2017/03/31 by Richard.Wallis Windows Compile Fixes Change 3374810 on 2017/03/31 by Benjamin.Hyder updating recommended GPU drivers Change 3375207 on 2017/03/31 by Rolando.Caloca DR - vk - Fixed swapchain format selection for some Linux platforms Change 3375248 on 2017/03/31 by Rolando.Caloca DR - vk - Prefer D32S8 Change 3375495 on 2017/03/31 by Rolando.Caloca DR - vk - Update to sdk 1.0.42.2 Change 3375496 on 2017/03/31 by Rolando.Caloca DR - Force compiling with updated Vulkan SDK Change 3375636 on 2017/03/31 by Mark.Satterthwaite Copying Metal improvements from task stream, with some modifications: - Off-by-default implementations for MTLFence & MTLHeap, including some small changes to the RHI interface for parallel contexts. - Support for Apple's Instruments "Points of Interest" tool. - Consolidation of some Mac & iOS compiler, memory and thread handling code. - Fixes for Metal not having implicit buffer SRV typecasting for DistanceField effects. - Improvements to the internal FMetalDebug layer, still off by default. - Limited support for Xcode automatic code-signing for iOS/tvOS. - Minimisation of render-target changes in some rendering code, esp. SceneOcclusion, DBufferDecals. - Added RHISetResourceAliasability_RenderThread to FDynamicRHI for RHIs to implement simple render-target aliasing. - Added FApplePlatformObject, a custom block allocator for Objective-C types (with NSZombie support) which is now used in MetalRHI to decrease allocation costs of Objective-C types. - Smattering of lesser fixes. Change 3375654 on 2017/03/31 by Mark.Satterthwaite Incremental Windows build fix. Change 3375656 on 2017/04/01 by Mark.Satterthwaite Correct extern declaration, including the module export macro which Mac unhelpfully doesn't enforce (for now...). Change 3375797 on 2017/04/01 by Mark.Satterthwaite Nullability qualifiers to fix Mac build-farm compilation: perversely this is not a problem for local builds... Change 3375798 on 2017/04/01 by Mark.Satterthwaite Fix the first mis-merge in ParticleGpuSimulation - these changes clearly weren't properly resolved in the task-stream. Change 3375835 on 2017/04/01 by Mark.Satterthwaite Try again with nullability and fix the occlusion changes as the PSO work wasn't merged correctly. Change 3376143 on 2017/04/02 by Mark.Satterthwaite Switch back to flat dSYMs for Dev-Rendering - they don't work with Instruments etc. but they are required by our build system. Change 3376324 on 2017/04/03 by Chris.Bunner Fixed cvar re-registration log spam and flagged a testing-only cvar as such. Change 3376726 on 2017/04/03 by Benjamin.Hyder Submitting initial HDR test map (WIP) Change 3376756 on 2017/04/03 by Guillaume.Abadie Fixes scene captures ordering's backward compatibility. Before, 2d scene captures were rendered before cube scene captures. The CaptureSortPriority broke backward compatibility by settings this new member to 0 in the USceneCaptureComponent's constructor. Since it is a higher come first policy, this CL set the default of this value to 1 in USceneCaptureComponent2D's constructor. Change 3377378 on 2017/04/03 by Arne.Schober DR - Fix ShaderRecompiling over and over again #RB Chris.Bunner Change 3377512 on 2017/04/03 by Daniel.Wright [Copy] Fixed profilegpu in d3d12 - initialize FLongGPUTaskPS when it is safe to do so, and fixed FSlateRHIRenderer's incorrect usage of draw events Change 3377518 on 2017/04/03 by Daniel.Wright [Copy] Distance field atlas coalesces updates to reduce RHIUpdateTexture3D memory overhead on d3d12 Change 3377526 on 2017/04/03 by Daniel.Wright [Copy] "Ran out of GPU queries!" log only happens once Change 3377535 on 2017/04/03 by Daniel.Wright [Copy] Fixed unreferenced local variable Change 3377539 on 2017/04/03 by Daniel.Wright [Copy] Xbox One RHIGetResourceInfo takes ESRAM into account - fixes render target pool 'VRamInKB request failed' messages Change 3377546 on 2017/04/03 by Daniel.Wright [Copy] Added r.LightMaxDrawDistanceScale for local light scalability Change 3377553 on 2017/04/03 by Daniel.Wright [Copy] Removed NEW_ESRAM_ALLOCATOR define and old unused path Change 3377560 on 2017/04/03 by Daniel.Wright [Copy] Fixed two d3d12 refcounting bugs causing -norhithread crashes Change 3377565 on 2017/04/03 by Daniel.Wright [Copy] Fixed Xbox One deleting GPU resources before the GPU is done reading from them (GRHINeedsExtraDeletionLatency was false) Change 3377572 on 2017/04/03 by Daniel.Wright [Copy] Disabled point / spot lights with MaxDrawDistance on LowPC Change 3377586 on 2017/04/03 by Daniel.Wright Fixed compile error Change 3377699 on 2017/04/03 by David.Hill FFT Code. Moved over from raven and refactored #review-3374589 @guillaume.abadie Change 3377910 on 2017/04/03 by David.Hill GPU FFT: Fix Linux Build adding a missing template<> to an IMPLEMENT_SHADER_TYPE Change 3378751 on 2017/04/04 by Marcus.Wassmer HQ particle lights now spawn attached to the same socket as their parent module. Change 3378819 on 2017/04/04 by Richard.Wallis Should be no need to protect shader cache against RHI thread now. Change 3378823 on 2017/04/04 by Richard.Wallis FRHIShaderLibrary Opaque Type - Base FRHIShaderLibrary has no Create*Shader functions and is passed to Overloaded RHICreate*Shader functions instead of creation directly through the library. - Assumed that only Native libraries will end up in the RHICreate*Shader functions. - ShaderCache and ShaderCode Libraries now inherit from a common factory interface. Change 3378883 on 2017/04/04 by Arne.Schober DR - Fix DCC build Change 3378885 on 2017/04/04 by Richard.Wallis Metal resource cast compile fix post merge. Change 3378946 on 2017/04/04 by Chris.Bunner SM4 assert fix. Change 3378953 on 2017/04/04 by Chris.Bunner Fixed type-correctness on legacy BreakMA material nodes and set more flexible formats to global attributes which should result in much more forgiving graphs for users. Allowed material nodes to opt out of mask-based pin coloration. #tests Compiled most Paragon materials + QAGame test maps. #jira UE-39885 Change 3379189 on 2017/04/04 by Arne.Schober DR - Fix aftermath staging Change 3379229 on 2017/04/04 by Arne.Schober DR - Fix missing include Change 3379374 on 2017/04/04 by Mark.Satterthwaite Revert an accidentally merged change in MacPlatformProcess that relies on further changes from the Metal task stream. Change 3379505 on 2017/04/04 by Rolando.Caloca DR - Fix mismatched interpolators Change 3379539 on 2017/04/04 by Mark.Satterthwaite No FFT for any hlslcc platform - the IR for one or more RWTexture2D isn't quite right... #jira UE-43626 Change 3379561 on 2017/04/04 by Rolando.Caloca DR - Fix root signature issues on D3D12 PC Change 3379590 on 2017/04/04 by Mark.Satterthwaite Back out changelist 3379539 & change the shader slightly instead, the HLSLCC library generates bogus IR when you have an inout RWTexture. #jira UE-43626 Change 3379917 on 2017/04/04 by Uriel.Doyon Fix to input mismatch Change 3380578 on 2017/04/05 by Chris.Bunner Shader type fixes. #jira UE-43652 Change 3380639 on 2017/04/05 by Rolando.Caloca DR - Expose GetOrCreate PSO and document Change 3380821 on 2017/04/05 by Guillaume.Abadie Fixes a crash in USceneCaptureComponent::UpdateDeferredCaptures() #jira UE-43642 Change 3381092 on 2017/04/05 by Guillaume.Abadie Cherry pick 3362517: Implements TAA's scene color unpremultiplication from alpha channel to reduce DOF alpha channel temporal ghosting. This CL take the oportunity to transform AA_ALPHA to an compile time enumeration, and add a basic TAA compile time configuration validation to improve readability of the different TAA passes' configurations. Change 3381300 on 2017/04/05 by Mark.Satterthwaite Quick fix for changes to MetalRHI's render-thread safe texture creation not correctly handling AVFoundation video player handing us an IOSurface. #jira UE-43597 Change 3381359 on 2017/04/05 by Guillaume.Abadie Back out changelist 3381092 Change 3381421 on 2017/04/05 by Mark.Satterthwaite Amended CL #3380995 from Richard Wallis to address crash in the Material Editor under the validation layer - when there are no textures bound the default pass descriptor assigns store actions, which means we can't override them with our deferred store actions. #jira UE-43689 Change 3381422 on 2017/04/05 by Mark.Satterthwaite Absolute time queries can't be batched in Metal but I also can't rely on them being started with a call to BeginQuery - only EndQuery. #jira UE-43691 Change 3381503 on 2017/04/05 by Daniel.Wright More intuitive controls for Volumetric Fog * Removed ScatteringScale / AbsorptionScale on Exponential Height Fog and added Albedo / Extinction * InscatteringColorCubemap is now supported by Volumetric Fog * Particle lights have a default VolumetricScatteringIntensity of 0 to avoid trailing * Tweaked GVolumetricFogDepthDistributionScale better for nearby details * Volume Materials have twice the interpolators available Change 3381527 on 2017/04/05 by Mark.Satterthwaite Disable Private GPU storage for PVRTC texture formats on iOS Metal - these require more changes to the blit-encoder usage as PVRTC has strange requirements. Change 3381671 on 2017/04/05 by Mark.Satterthwaite Better error message for failure to compile shaders remotely from PC for Metal. Change 3381769 on 2017/04/05 by Rolando.Caloca DR - Added lock texture array 2d on Vulkan Change 3382003 on 2017/04/05 by Mark.Satterthwaite Remove the automatic Metal aliasing/re-use when releasing some resource types as it doesn't work as intended. Change 3382030 on 2017/04/05 by Zachary.Wilson Fix compiling Metal text shaders from PC broken in merge from task stream. #submitter mark.satterthwaite #jira UE-43652 Change 3382880 on 2017/04/06 by Mark.Satterthwaite Michael Trepka's CL #3379927: VolumetricFogVoxelization implementation for Mac Change 3383315 on 2017/04/06 by Mark.Satterthwaite Partially revert CL #3382003 - the emulated Metal heaps require invoking makeAliasable in order to reclaim memory. #jira UE-43739 Change 3384639 on 2017/04/07 by Marcus.Wassmer Move ShaderResource version bump to RenderingObjectVersion Change 3384704 on 2017/04/07 by Mark.Satterthwaite Compile fix for merge. Change 3384933 on 2017/04/07 by Rolando.Caloca DR - Fix skin cache crash with BP (copy 3384714) Change 3385104 on 2017/04/07 by Mark.Satterthwaite Fix MetalRHI's abs(int2) handling - it can't be translated to fabs(int2) as that won't compile. Also rebuild hlslcc for my sanity. #jira UE-43783 Change 3385105 on 2017/04/07 by Mark.Satterthwaite Force a shader rebuild to ensure that everybody picks up the fix for #jira UE-43783 #jira UE-43783 Change 3385118 on 2017/04/07 by Arne.Schober DR - [OR-37359] - Fix disapearing Decals when StencilLod Fade is enabled #RB none Change 3385149 on 2017/04/07 by Marcus.Wassmer Fix skincache motion blur Change 3385189 on 2017/04/07 by Rolando.Caloca DR - Fix swapchain format for editor on Vulkan Change 3385287 on 2017/04/07 by Mark.Satterthwaite Enable SM5 on Intel as of 10.12.4 and later. Change 3385347 on 2017/04/07 by Rolando.Caloca DR - Temp fix for GL4 corruption on editor #jira UE-43785 Change 3385363 on 2017/04/07 by Rolando.Caloca DR - Actually fix all win platforms for GL bug #jira UE-43785 Change 3385557 on 2017/04/07 by Arne.Schober DR - [UE-43205] - Fix mesh paint #RB none Change 3385608 on 2017/04/07 by Daniel.Wright Fixed SampleCmp being used on a non-depth texture, causing a d3d error Change 3385980 on 2017/04/10 by Rolando.Caloca DR - Remove transition functions RHIClearColor* RHIClearDepthStencilTexture Change 3386042 on 2017/04/10 by Rolando.Caloca DR - Fix metal merge issue Change 3386157 on 2017/04/10 by Rolando.Caloca DR - Remove VS2013 libs generation off hlslcc & glslang (to match main) Change 3386356 on 2017/04/10 by Chris.Bunner Resolving merge errors. Change 3386414 on 2017/04/10 by Chris.Bunner Resolved merge issue in RendererScene.cpp. Change 3386700 on 2017/04/10 by Mark.Satterthwaite Silence documentation warnings. Change 3387178 on 2017/04/10 by Chris.Bunner Removed invalid mask correction on MakeMA material nodes. Change 3388177 on 2017/04/11 by Marcus.Wassmer Disable ensure that is no longer relevant now that we bind clear colors on texture creation Change 3388261 on 2017/04/11 by Chris.Bunner Static analysis fix. [CL 3388266 by Chris Bunner in Main branch]
2017-04-11 10:32:07 -04:00
WaitForInputPassComputeFences(Context.RHICmdList);
if (View.Family->EngineShowFlags.Selection)
{
FHitProxyDrawingPolicyFactory::ContextType FactoryContext;
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
DrawRenderState.ModifyViewOverrideFlags() |= EDrawingPolicyOverrideFlags::TwoSided;
DrawRenderState.SetBlendState(TStaticBlendStateWriteMask<CW_NONE, CW_NONE, CW_NONE, CW_NONE>::GetRHI());
DrawRenderState.SetDepthStencilState(TStaticDepthStencilState<false, CF_Always>::GetRHI());
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3082391) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3051464 on 2016/07/15 by Nick.Darnell Regression Testing - Several upgrades to the functional testing system, better tracking of failure cases, some source line failure detection, trying to make it easier to run a specific test on a map. Some UI improvements, easier access to the automation system. Lots more refactoring to come, lots of improvements are still needed in transmitting screenshots and just generally building a automation report we could dump from the build machines. Change 3051465 on 2016/07/15 by Nick.Darnell Adding the "Engine Test" project our one stop shope for running automation tests in the engine to try and reduce regressions. Change 3051847 on 2016/07/15 by Matt.Kuhlenschmidt Fixed material editor viewport messages being blocked by viewport toolbar Change 3052025 on 2016/07/15 by Nick.Darnell Moving the placement mode hooks out of functional testing module, moving them into the editor automation module. Change 3053508 on 2016/07/18 by Stephan.Jiang Copy,Cut,Paste tracks, not for mastertracks yet. #UE-31808 Change 3054723 on 2016/07/18 by Stephan.Jiang Small fixes for typo & comments Change 3055996 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received Change 3056106 on 2016/07/19 by Trung.Le Back out changelist 3055996. Build break. Change 3056108 on 2016/07/19 by Stephan.Jiang Updating "SoundConcurrency" asseticon Change 3056389 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received #jira UE-33339 Change 3056396 on 2016/07/19 by Matt.Kuhlenschmidt More perf selection improvements: - Static meshes now go through the static draw path when rendered for selection outline instead of just rendering using the dynamic path Change 3056758 on 2016/07/19 by Stephan.Jiang Update SelectedWidgets in WidgetblueprintEditor to match the selected tracks in sequencer. Change 3057519 on 2016/07/20 by Matt.Kuhlenschmidt Another fix for selecting lots of objects taking forever. This one is due to repeated Modify calls if there are groups in the selection. Each group actor selected iterates through each object selected during USelection::Modify! Change 3057635 on 2016/07/20 by Stephan.Jiang Updating visual logger icon UI Change 3057645 on 2016/07/20 by Richard.TalbotWatkin 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 3057868 on 2016/07/20 by Richard.TalbotWatkin 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. Change 3057895 on 2016/07/20 by Richard.TalbotWatkin 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 3057966 on 2016/07/20 by Richard.TalbotWatkin Renamed IsEditingArchetype to IsVisualizingArchetype in the ComponentVisualizer API. #jira UE-33049 - Transform widget visible in blueprint viewport when editing spline points in editor viewport Change 3058009 on 2016/07/20 by Richard.TalbotWatkin Fixed build failure due to changes to FComponentVisualizer API, as of CL 3057868. Change 3058047 on 2016/07/20 by Stephan.Jiang Fixing error on previous CL: 3056758 (extra qualification) Change 3058266 on 2016/07/20 by Nick.Darnell Automation - Work continues on automation integrating some ideas form a licensee. Continuing to work on the usability aspects, I've made it possible for tests to provide custom open commands, as well as have complex subclasses that do different things. The functional tests now have a custom open command they emit that makes it so clicking on a test opens not the C++ location where the functional test macro lives, but instead the map, AND focuses the functional test actor. Change 3058282 on 2016/07/20 by Matt.Kuhlenschmidt PR #2611: Fix spurious component diff when properties are in subcategories (Contributed by CA-ADuran) Change 3059214 on 2016/07/21 by Richard.TalbotWatkin Further fixes to visualizers following Component Visualizer API change. Change 3059260 on 2016/07/21 by Richard.TalbotWatkin Template specialization not allowed in class scope, but Visual Studio allows it anyway. Fixed for clang. Change 3059543 on 2016/07/21 by Stephan.Jiang Changeing level details icon Change 3059732 on 2016/07/21 by Stephan.Jiang Directional Light icon update Change 3060095 on 2016/07/21 by Stephan.Jiang Directional Light editor icon asset changed Change 3060129 on 2016/07/21 by Nick.Darnell Automation - The session browser now attempts to select the app instance if no other thing is selected when it refreshes. This is to try and make it easier to use when you first bring it up and nothing is selected when most of the time you're going to use it on your own instance. Change 3061735 on 2016/07/22 by Stephan.Jiang Improve UMG replace with in HierarchyView function #UE-33582 Change 3062059 on 2016/07/22 by Stephan.Jiang Strip off "b" in propertyname in replace with function for tracks. Change 3062146 on 2016/07/22 by Stephan.Jiang checkin with CL: 3061735 Change 3062182 on 2016/07/22 by Stephan.Jiang Change both animation bindings' widget name when renameing the widget so the slot content is still valid Change 3062257 on 2016/07/22 by Stephan.Jiang comments Change 3062381 on 2016/07/22 by Nick.Darnell Build - Adding #undef LOCTEXT_NAMESPACE to try and fix the build. Change 3062924 on 2016/07/25 by Chris.Wood Fix a crash in CrashReportClient that happens when the CrashReportReceiver is not responding to pings and there are no PendingReportDirectories. This is a change in the UE4 stream depot based on a fix in the Fortnite stream depot -> JIRA FORT-27570 Change 3063017 on 2016/07/25 by Matt.Kuhlenschmidt PR #2618: DebuggerCommand not recording PlayLocationString (Contributed by ungalyant) Change 3063021 on 2016/07/25 by Matt.Kuhlenschmidt PR #2619: added a search box to ModuleUI (Contributed by straymist) Change 3063084 on 2016/07/25 by Matt.Kuhlenschmidt Fix "YesToAll" when deleting referenced actors overriding the "YesToAll" state for other referenced messages. https://jira.ol.epicgames.net/browse/UE-33651 #jira UE-33651 Change 3063091 on 2016/07/25 by Alex.Delesky #jira UE-32949 - Truncating the hue inside the theme color block tooltip to only display whole numbers, to match how the color picker displays the hue value inside the hue scrubber. Change 3063388 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Fix large FName creation time when selecting thousands of objects Change 3063568 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Modified how USelection stores classes. Classes are now in a TSet and can be accessed efficiently using IsClassSelected. The old unused way of checking if a selection has a class by iterating through them is deprecated - USelection no longer directly checks if an item is already selected with a costly n^2 search. The check is done by using the already existing UObject selected annotation - Object property nodes no longer perform an n^2 check for object uniqueness when objects are added to details panels. This is now left up to the caller to avoid - Eliminated useless work on FObjectPropertyNode::GetReadAddressUncached. If a read address list is not passed in we'll not attempt to the work to populate it - Removed expensive checking for brush actors when any actor is selected Change 3063749 on 2016/07/25 by Stephan.Jiang Disallow naming the widgetanimation to the same name with a override function in uuserwidget, because it will trigger a breakpoint in Rename() #jira UE-33711 Change 3064585 on 2016/07/26 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3064612 on 2016/07/26 by Alex.Delesky #jira UE-33712 - Deleting many assets at once will now batch SourceControl commands rather than executing one for each asset. Change 3064647 on 2016/07/26 by Alexis.Matte #jira UE-33274 dont hash the same file over and over when importing multiple asset from one fbx file. Change 3064739 on 2016/07/26 by Matt.Kuhlenschmidt Fixed typo Change 3064795 on 2016/07/26 by Jamie.Dale Fixed typo in FLocalizationModule::GetLocalizationTargetByName #jira UE-32961 Change 3066461 on 2016/07/27 by Jamie.Dale Enabled stable localization keys Change 3066463 on 2016/07/27 by Jamie.Dale Set "Build Engine Localization" to upload all cultures to ensure we don't lose translation due to the archive keying changes Change 3066467 on 2016/07/27 by Jamie.Dale Updated internationalization archives to store translations per-identity This allows translators to translate each instance of a piece of text based upon their context, rather than requiring a content producer to go back and give the entry a unique namespace. It also allows us to optionally compile out-of-date translations, as they are now mapped to their source identity (namespace + key) rather than their source text. Major changes: - Added FLocTextHelper. This acts as a high-level API for uncompiled localized text, and replaces all the old ad-hoc loading/saving of manifests and archives, ensuring that everything is consistently using source control, and that older archives can be upgraded correctly to the new format. It also takes care of some of the quirks of our archives, such as native translations. All major localization commandlets have been updated to use FLocTextHelper. - Moved FTextLocalizationResourceGenerator from Core to Internationalization. This also allows IJsonInternationalizationManifestSerializer and IJsonInternationalizationArchiveSerializer to be removed, and for FJsonInternationalizationManifestSerializer and FJsonInternationalizationArchiveSerializer to have all their functions become static. - FTextLocalizationResourceGenerator being moved from Core meant that FTextLocalizationManager::LoadFromManifestAndArchives was also removed. This functionality is now handled by FTextLocalizationResourceGenerator::GenerateAndUpdateLiveEntriesFromConfig. - The RepairLocalizationData commandlet has been removed. This existed to fix a change that pre-dated 4.0 so no such data should exist in the wild, and the commandlet couldn't be updated to work with the new API (we handle format upgrades in-place now). - Removed FInternationalizationArchive::FindEntryBySource as it is no-longer safe to use. All existing code has been updated to use FInternationalizationArchive::FindEntryByKey instead. Workflow changes: - Archive conditioning now only adds new entries if they don't exist in the archive. This allows us to persist any existing translations, even if they're for old source text (caveat: native archives still update existing entries if the source is changed). - PO export now sets the msgctx for each entry to be "namespace,key", rather than only doing it when the entry had key meta-data. - PO import will now update both the source and translation stored in the archive to match the current PO data. This is the primary method by which stale source->translation pairs are updated. - LocRes compilation may now optionally compile stale translations. There's an option controlling this (defaulted to off) that can be changed via the Localization Dashboard (or added to an existing config file). Format changes: - The archive version was bumped to 2. - Archive entries now use the "Key" entry to store the key from the source text. Previously this "Key" entry was used to store the key meta-data, but that now exists within a "MetaData" sub-object. Loading handles this correctly based upon the archive version. #jira UETOOL-897 #jira UETOOL-898 #jira UE-29481 Change 3066487 on 2016/07/27 by Matt.Kuhlenschmidt Attempt to fix linux compilation Change 3066504 on 2016/07/27 by Matt.Kuhlenschmidt Fixed data tables with structs crashing due to recent editor selection optimizations Change 3066886 on 2016/07/27 by Jamie.Dale Added required data to accurately detect TZ (needed for DST) #jira UE-28511 Change 3067122 on 2016/07/27 by Jamie.Dale Added AsTime, AsDateTime, and AsDate overrides to BP to let you format a UTC time in a given timezone (default is the local timezone). Previously you could only format times using the "invariant" timezone, which assumed that the time was already specified in the correct timezone for display. Change 3067227 on 2016/07/27 by Jamie.Dale Added a test to verify that the ICU timezone is set correctly to produce local time (including DST) Change 3067313 on 2016/07/27 by Richard.TalbotWatkin Fixed SplineComponent constructor so that old assets (prior to the property changes) load correctly if they had properties at default values. #jira UE-33669 - Crash in Dev-Editor Change 3067736 on 2016/07/27 by Stephan.Jiang Border changes for experimental classes warning Change 3067769 on 2016/07/27 by Stephan.Jiang HERE BE DRAGONS for experimental class warning #UE-33780 Change 3068192 on 2016/07/28 by Alexis.Matte #jira UE-33586 make sure we remove any false warning when running fbx automation test. Change 3068264 on 2016/07/28 by Jamie.Dale Removed some code that was no longer needed and could cause a crash #jira UE-33342 Change 3068293 on 2016/07/28 by Alex.Delesky #jira UE-33620 - Comments on constant and parameter nodes in the Material Editor will now persist when converting them. Change 3068481 on 2016/07/28 by Stephan.Jiang Adding Options to show/hide soft & hard references & dependencies in References Viewer #jira UE-33746 Change 3068585 on 2016/07/28 by Richard.TalbotWatkin Fix to Spline Mesh collision building so that geometry does not default to being auto-inflated in PhysX. Change 3068701 on 2016/07/28 by Matt.Kuhlenschmidt Fixed some issues with the selected classes not updating when objects are deselected Change 3069335 on 2016/07/28 by Jamie.Dale Fixed unintended error when trying to load a manifest/archive that didn't exist Fixed a warning when trying to load a PO file that didn't exist Change 3069408 on 2016/07/28 by Alex.Delesky #jira UE-33429 - The editor should no longer hit an ensure if the user attempts to drop a tab into a tab well before the tab well has a chance to acknowledge its been dragged into a tab well. Change 3069878 on 2016/07/29 by Jamie.Dale Fixed include casing #jira UE-33910 Change 3071807 on 2016/08/01 by Matt.Kuhlenschmidt PR #2654: Fix the spell'ing of "diff'ing" and "diff'd". (Contributed by geary) Change 3071813 on 2016/08/01 by Jamie.Dale Fixed include casing #jira UE-33936 Change 3072043 on 2016/08/01 by Jamie.Dale Fixed FText formatting of pre-Gregorian dates We now convert to an ICU UDate via an ICU GregorianCalendar, as UE4 and ICU have a different time scale for pre-Gregorian dates. #jira UE-14504 Change 3072066 on 2016/08/01 by Jamie.Dale PR #2590: FEATURE: Collapse/expand folders in the outliner (Contributed by projectgheist) Change 3072149 on 2016/08/01 by Jamie.Dale We no longer use the editor culture when running with -game Change 3072169 on 2016/08/01 by Richard.TalbotWatkin 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 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 3072221 on 2016/08/01 by Jamie.Dale Fixed "Launch On" not providing the correct cultures to StartCookByTheBookInEditor #jira UE-33001 Change 3073389 on 2016/08/02 by Matt.Kuhlenschmidt Added ability to vsync the editor. Disabled by default. Set r.VSyncEditor to 1 to enable it. Reimplemented this change from the siggraph demo stream Change 3073396 on 2016/08/02 by Matt.Kuhlenschmidt Removed unused code as suggested by a pull request Change 3073750 on 2016/08/02 by Richard.TalbotWatkin Fixed formatting (broken in CL 3057895) in anticipation of merge from Main. Change 3073789 on 2016/08/02 by Jamie.Dale Added a way to mark text in text properties as culture invariant This allows you to flag properties containing text that doesn't need to be gathered. #jira UE-33713 Change 3073825 on 2016/08/02 by Stephan.Jiang Material Editor: Highligh all Nodes connect to an input. #jira UE-32502 Change 3073947 on 2016/08/02 by Stephan.Jiang UMG Project settings to show/hide different classes and categories in Palette view. --under Project Settings ->Editor->UMG Editor Change 3074012 on 2016/08/02 by Stephan.Jiang Minor changes and comments for CL: 3073947 Change 3074029 on 2016/08/02 by Jamie.Dale Deleting folders in the Content Browser now removes the folder from disk #jira UE-24303 Change 3074054 on 2016/08/02 by Matt.Kuhlenschmidt Added missing stats to track pooled vertex and index buffer cpu memory A new slate allocator was added to track memory usage for this case. Change 3074056 on 2016/08/02 by Matt.Kuhlenschmidt Renamed a few slate stats for consistency Change 3074810 on 2016/08/02 by Matt.Kuhlenschmidt Moved geometry cache asset type to the animation category. It is not a basic asset type Change 3074826 on 2016/08/02 by Matt.Kuhlenschmidt Fix a few padding and sizing issues Change 3075322 on 2016/08/03 by Matt.Kuhlenschmidt Settings UI improvements * Added the ability to search through all settings at once * Settings files which are not checked out are no longer grayed out. The editor now attempts to check out the file automatically if connected to source control and if that fails it marks the settings file writiable so it can save the setting properly ------- * This change adds a refactor to the details panel to support multiple top level objects existing in the details panel at once instead of combining all passed in objects to a single common base class. This is disabled by default but can be turned on setting bAllowMultipleTopLevelObjects to true in FDetailsViewArgs when creating a details panel. * Each top level object in a details panel will get their own customization instance. This made it necessary to deprecate a IDetailsView::GetBaseClass since there is no longer guaranteed to be one base class. *Details panels can have their own customization for each "root object header" in order to customize the look of having multiple top level objects in the details panel. Change 3075369 on 2016/08/03 by Matt.Kuhlenschmidt Removed FBX scene as a top level option in asset filter menu in the content browser. Change 3075556 on 2016/08/03 by Matt.Kuhlenschmidt Mac warning fix Change 3075603 on 2016/08/03 by Nick.Darnell Adding two new plugins to engine, one for editor and one for runtime based testing. Currently the only consumer of these plugins is going to be the EngineTest project. Change 3075605 on 2016/08/03 by Nick.Darnell Functional Testing - Continued work on cleanup, reorganization, trying to improve the workflow for using the session browser. Change 3076084 on 2016/08/03 by Jamie.Dale Added basic support for localizing plugins You can now localize plugins! There's no localization dashboard integration for this so it has to be done manually. You need to define the localization targets your plugin uses in its .uplugin file, eg) "LocalizationTargets": [ { "Name": "Paper2D", "LoadingPolicy": "Always" } ] "Name" should match a localization config under the Config/Localization folder for your plugin. These configs are set-up the same as any other localization config. "LoadingPolicy" may be one of Never, Always, Editor, Game, PropertyNames, or ToolTips. This allows you to control under what conditions your localizations should be loaded (eg, if your plugin has both game and editor data, you can separate the editor data off into its own localization target that's only loaded by the editor). UAT has been updated to support gathering from plugins. You can use the "IncludePlugins" flag to have it gather all plugins, or you can specify a whitelist of plugins to gather as an argument to "IncludePlugins", or alternatively, may blacklist certain plugins via "ExcludePlugins". It can now also support out-of-source gathering via the "UEProjectRoot" argument (previously it assumed that everything would be under the UE4 install/checkout directory). UAT has been updated to support staging plugin LocRes files. It will stage any plugin targets that are enabled for a game/client build, and are also from a plugin that's enabled for your project. #jira UE-4217 Change 3076123 on 2016/08/03 by Stephan.Jiang Extend "Select all input nodes" function to general blueprint editor Change 3077103 on 2016/08/04 by Jamie.Dale Added support for underlined text rendering (including with drop-shadows) FTextBlockStyle can now specify a brush to use to draw an underline for text (a suitable default would be "DefaultTextUnderline" from FCoreStyle). When a brush is specified here, we inject FSlateTextUnderlineLineHighlighter highlights into the text layout to draw the underline under the relevant pieces of text, using the correct color, position, and thickness. FSlateFontCache::GetUnderlineMetrics and FSlateFontRenderer::GetUnderlineMetrics have been added to handle getting the underline metrics (which are slightly different to the baseline). This change also adds FTextLayout::RemoveRunRenderer and FTextLayout::RemoveLineHighlight to fix some bad assumptions that FSlateEditableTextLayout and FTextBlockLayout were making about ownership of run renderers and line highlighters that could cause them to remove instances they didn't own (such as the new underline highlighter) when updating things like the cursor position or highlight. Change 3077842 on 2016/08/04 by Jamie.Dale Fixed fallout from API changes Change 3077999 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 3078000 on 2016/08/04 by Trung.Le Categories VREditor-specific UMG widget assets as "VR Editor" #jira UE-34134 Change 3078056 on 2016/08/04 by Nick.Darnell Build - Fixing a mac compiler warning, reodering constructor initializers. Change 3078813 on 2016/08/05 by Nick.Darnell Reorganizing editor tests, establishing plugins in the EditorTest project that will house the tests. Change 3078818 on 2016/08/05 by Nick.Darnell Additional rename and cleanup associated with test moving. Change 3078819 on 2016/08/05 by Nick.Darnell Removing the Oculus performance automation test, not running, and was unclaimed. Change 3078842 on 2016/08/05 by Nick.Darnell Continued reorganizing tests. Change 3078897 on 2016/08/05 by Nick.Darnell Additional changes to get some moved tests compiling Change 3079157 on 2016/08/05 by Nick.Darnell Making it possible to browse provider names thorugh the source control module interface. Change 3079176 on 2016/08/05 by Stephan.Jiang Add shortcut Ctrl+Shift+Space to rotate through different viewport options #jira UE-34140 Change 3079208 on 2016/08/05 by Stephan.Jiang Fix new animation name check in UMG Change 3079278 on 2016/08/05 by Nick.Darnell Fixing the build Change 3080555 on 2016/08/08 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3081155 on 2016/08/08 by Nick.Darnell Fixing some issues with the editor tests / runtime tests under certain build configs. Change 3081243 on 2016/08/08 by Stephan.Jiang Add gesture in LevelViewport to switch between Top/Bottom...etc. Change 3082226 on 2016/08/09 by Matt.Kuhlenschmidt Work around animations not playing in paragon due to bsp rebuilds (UE-34391) Change 3082254 on 2016/08/09 by Stephan.Jiang DragTool_ViewportChange init changes [CL 3082411 by Matt Kuhlenschmidt in Main branch]
2016-08-09 11:28:56 -04:00
// Note that the stencil value will overflow with enough selected objects
FEditorSelectionDrawingPolicy::ResetStencilValues();
// Run selection pass on static elements
FScene* Scene = View.Family->Scene->GetRenderScene();
if(Scene)
{
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
Scene->EditorSelectionDrawList.DrawVisible(Context.RHICmdList, View, DrawRenderState, View.StaticMeshEditorSelectionMap, View.StaticMeshBatchVisibility);
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3082391) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3051464 on 2016/07/15 by Nick.Darnell Regression Testing - Several upgrades to the functional testing system, better tracking of failure cases, some source line failure detection, trying to make it easier to run a specific test on a map. Some UI improvements, easier access to the automation system. Lots more refactoring to come, lots of improvements are still needed in transmitting screenshots and just generally building a automation report we could dump from the build machines. Change 3051465 on 2016/07/15 by Nick.Darnell Adding the "Engine Test" project our one stop shope for running automation tests in the engine to try and reduce regressions. Change 3051847 on 2016/07/15 by Matt.Kuhlenschmidt Fixed material editor viewport messages being blocked by viewport toolbar Change 3052025 on 2016/07/15 by Nick.Darnell Moving the placement mode hooks out of functional testing module, moving them into the editor automation module. Change 3053508 on 2016/07/18 by Stephan.Jiang Copy,Cut,Paste tracks, not for mastertracks yet. #UE-31808 Change 3054723 on 2016/07/18 by Stephan.Jiang Small fixes for typo & comments Change 3055996 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received Change 3056106 on 2016/07/19 by Trung.Le Back out changelist 3055996. Build break. Change 3056108 on 2016/07/19 by Stephan.Jiang Updating "SoundConcurrency" asseticon Change 3056389 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received #jira UE-33339 Change 3056396 on 2016/07/19 by Matt.Kuhlenschmidt More perf selection improvements: - Static meshes now go through the static draw path when rendered for selection outline instead of just rendering using the dynamic path Change 3056758 on 2016/07/19 by Stephan.Jiang Update SelectedWidgets in WidgetblueprintEditor to match the selected tracks in sequencer. Change 3057519 on 2016/07/20 by Matt.Kuhlenschmidt Another fix for selecting lots of objects taking forever. This one is due to repeated Modify calls if there are groups in the selection. Each group actor selected iterates through each object selected during USelection::Modify! Change 3057635 on 2016/07/20 by Stephan.Jiang Updating visual logger icon UI Change 3057645 on 2016/07/20 by Richard.TalbotWatkin 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 3057868 on 2016/07/20 by Richard.TalbotWatkin 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. Change 3057895 on 2016/07/20 by Richard.TalbotWatkin 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 3057966 on 2016/07/20 by Richard.TalbotWatkin Renamed IsEditingArchetype to IsVisualizingArchetype in the ComponentVisualizer API. #jira UE-33049 - Transform widget visible in blueprint viewport when editing spline points in editor viewport Change 3058009 on 2016/07/20 by Richard.TalbotWatkin Fixed build failure due to changes to FComponentVisualizer API, as of CL 3057868. Change 3058047 on 2016/07/20 by Stephan.Jiang Fixing error on previous CL: 3056758 (extra qualification) Change 3058266 on 2016/07/20 by Nick.Darnell Automation - Work continues on automation integrating some ideas form a licensee. Continuing to work on the usability aspects, I've made it possible for tests to provide custom open commands, as well as have complex subclasses that do different things. The functional tests now have a custom open command they emit that makes it so clicking on a test opens not the C++ location where the functional test macro lives, but instead the map, AND focuses the functional test actor. Change 3058282 on 2016/07/20 by Matt.Kuhlenschmidt PR #2611: Fix spurious component diff when properties are in subcategories (Contributed by CA-ADuran) Change 3059214 on 2016/07/21 by Richard.TalbotWatkin Further fixes to visualizers following Component Visualizer API change. Change 3059260 on 2016/07/21 by Richard.TalbotWatkin Template specialization not allowed in class scope, but Visual Studio allows it anyway. Fixed for clang. Change 3059543 on 2016/07/21 by Stephan.Jiang Changeing level details icon Change 3059732 on 2016/07/21 by Stephan.Jiang Directional Light icon update Change 3060095 on 2016/07/21 by Stephan.Jiang Directional Light editor icon asset changed Change 3060129 on 2016/07/21 by Nick.Darnell Automation - The session browser now attempts to select the app instance if no other thing is selected when it refreshes. This is to try and make it easier to use when you first bring it up and nothing is selected when most of the time you're going to use it on your own instance. Change 3061735 on 2016/07/22 by Stephan.Jiang Improve UMG replace with in HierarchyView function #UE-33582 Change 3062059 on 2016/07/22 by Stephan.Jiang Strip off "b" in propertyname in replace with function for tracks. Change 3062146 on 2016/07/22 by Stephan.Jiang checkin with CL: 3061735 Change 3062182 on 2016/07/22 by Stephan.Jiang Change both animation bindings' widget name when renameing the widget so the slot content is still valid Change 3062257 on 2016/07/22 by Stephan.Jiang comments Change 3062381 on 2016/07/22 by Nick.Darnell Build - Adding #undef LOCTEXT_NAMESPACE to try and fix the build. Change 3062924 on 2016/07/25 by Chris.Wood Fix a crash in CrashReportClient that happens when the CrashReportReceiver is not responding to pings and there are no PendingReportDirectories. This is a change in the UE4 stream depot based on a fix in the Fortnite stream depot -> JIRA FORT-27570 Change 3063017 on 2016/07/25 by Matt.Kuhlenschmidt PR #2618: DebuggerCommand not recording PlayLocationString (Contributed by ungalyant) Change 3063021 on 2016/07/25 by Matt.Kuhlenschmidt PR #2619: added a search box to ModuleUI (Contributed by straymist) Change 3063084 on 2016/07/25 by Matt.Kuhlenschmidt Fix "YesToAll" when deleting referenced actors overriding the "YesToAll" state for other referenced messages. https://jira.ol.epicgames.net/browse/UE-33651 #jira UE-33651 Change 3063091 on 2016/07/25 by Alex.Delesky #jira UE-32949 - Truncating the hue inside the theme color block tooltip to only display whole numbers, to match how the color picker displays the hue value inside the hue scrubber. Change 3063388 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Fix large FName creation time when selecting thousands of objects Change 3063568 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Modified how USelection stores classes. Classes are now in a TSet and can be accessed efficiently using IsClassSelected. The old unused way of checking if a selection has a class by iterating through them is deprecated - USelection no longer directly checks if an item is already selected with a costly n^2 search. The check is done by using the already existing UObject selected annotation - Object property nodes no longer perform an n^2 check for object uniqueness when objects are added to details panels. This is now left up to the caller to avoid - Eliminated useless work on FObjectPropertyNode::GetReadAddressUncached. If a read address list is not passed in we'll not attempt to the work to populate it - Removed expensive checking for brush actors when any actor is selected Change 3063749 on 2016/07/25 by Stephan.Jiang Disallow naming the widgetanimation to the same name with a override function in uuserwidget, because it will trigger a breakpoint in Rename() #jira UE-33711 Change 3064585 on 2016/07/26 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3064612 on 2016/07/26 by Alex.Delesky #jira UE-33712 - Deleting many assets at once will now batch SourceControl commands rather than executing one for each asset. Change 3064647 on 2016/07/26 by Alexis.Matte #jira UE-33274 dont hash the same file over and over when importing multiple asset from one fbx file. Change 3064739 on 2016/07/26 by Matt.Kuhlenschmidt Fixed typo Change 3064795 on 2016/07/26 by Jamie.Dale Fixed typo in FLocalizationModule::GetLocalizationTargetByName #jira UE-32961 Change 3066461 on 2016/07/27 by Jamie.Dale Enabled stable localization keys Change 3066463 on 2016/07/27 by Jamie.Dale Set "Build Engine Localization" to upload all cultures to ensure we don't lose translation due to the archive keying changes Change 3066467 on 2016/07/27 by Jamie.Dale Updated internationalization archives to store translations per-identity This allows translators to translate each instance of a piece of text based upon their context, rather than requiring a content producer to go back and give the entry a unique namespace. It also allows us to optionally compile out-of-date translations, as they are now mapped to their source identity (namespace + key) rather than their source text. Major changes: - Added FLocTextHelper. This acts as a high-level API for uncompiled localized text, and replaces all the old ad-hoc loading/saving of manifests and archives, ensuring that everything is consistently using source control, and that older archives can be upgraded correctly to the new format. It also takes care of some of the quirks of our archives, such as native translations. All major localization commandlets have been updated to use FLocTextHelper. - Moved FTextLocalizationResourceGenerator from Core to Internationalization. This also allows IJsonInternationalizationManifestSerializer and IJsonInternationalizationArchiveSerializer to be removed, and for FJsonInternationalizationManifestSerializer and FJsonInternationalizationArchiveSerializer to have all their functions become static. - FTextLocalizationResourceGenerator being moved from Core meant that FTextLocalizationManager::LoadFromManifestAndArchives was also removed. This functionality is now handled by FTextLocalizationResourceGenerator::GenerateAndUpdateLiveEntriesFromConfig. - The RepairLocalizationData commandlet has been removed. This existed to fix a change that pre-dated 4.0 so no such data should exist in the wild, and the commandlet couldn't be updated to work with the new API (we handle format upgrades in-place now). - Removed FInternationalizationArchive::FindEntryBySource as it is no-longer safe to use. All existing code has been updated to use FInternationalizationArchive::FindEntryByKey instead. Workflow changes: - Archive conditioning now only adds new entries if they don't exist in the archive. This allows us to persist any existing translations, even if they're for old source text (caveat: native archives still update existing entries if the source is changed). - PO export now sets the msgctx for each entry to be "namespace,key", rather than only doing it when the entry had key meta-data. - PO import will now update both the source and translation stored in the archive to match the current PO data. This is the primary method by which stale source->translation pairs are updated. - LocRes compilation may now optionally compile stale translations. There's an option controlling this (defaulted to off) that can be changed via the Localization Dashboard (or added to an existing config file). Format changes: - The archive version was bumped to 2. - Archive entries now use the "Key" entry to store the key from the source text. Previously this "Key" entry was used to store the key meta-data, but that now exists within a "MetaData" sub-object. Loading handles this correctly based upon the archive version. #jira UETOOL-897 #jira UETOOL-898 #jira UE-29481 Change 3066487 on 2016/07/27 by Matt.Kuhlenschmidt Attempt to fix linux compilation Change 3066504 on 2016/07/27 by Matt.Kuhlenschmidt Fixed data tables with structs crashing due to recent editor selection optimizations Change 3066886 on 2016/07/27 by Jamie.Dale Added required data to accurately detect TZ (needed for DST) #jira UE-28511 Change 3067122 on 2016/07/27 by Jamie.Dale Added AsTime, AsDateTime, and AsDate overrides to BP to let you format a UTC time in a given timezone (default is the local timezone). Previously you could only format times using the "invariant" timezone, which assumed that the time was already specified in the correct timezone for display. Change 3067227 on 2016/07/27 by Jamie.Dale Added a test to verify that the ICU timezone is set correctly to produce local time (including DST) Change 3067313 on 2016/07/27 by Richard.TalbotWatkin Fixed SplineComponent constructor so that old assets (prior to the property changes) load correctly if they had properties at default values. #jira UE-33669 - Crash in Dev-Editor Change 3067736 on 2016/07/27 by Stephan.Jiang Border changes for experimental classes warning Change 3067769 on 2016/07/27 by Stephan.Jiang HERE BE DRAGONS for experimental class warning #UE-33780 Change 3068192 on 2016/07/28 by Alexis.Matte #jira UE-33586 make sure we remove any false warning when running fbx automation test. Change 3068264 on 2016/07/28 by Jamie.Dale Removed some code that was no longer needed and could cause a crash #jira UE-33342 Change 3068293 on 2016/07/28 by Alex.Delesky #jira UE-33620 - Comments on constant and parameter nodes in the Material Editor will now persist when converting them. Change 3068481 on 2016/07/28 by Stephan.Jiang Adding Options to show/hide soft & hard references & dependencies in References Viewer #jira UE-33746 Change 3068585 on 2016/07/28 by Richard.TalbotWatkin Fix to Spline Mesh collision building so that geometry does not default to being auto-inflated in PhysX. Change 3068701 on 2016/07/28 by Matt.Kuhlenschmidt Fixed some issues with the selected classes not updating when objects are deselected Change 3069335 on 2016/07/28 by Jamie.Dale Fixed unintended error when trying to load a manifest/archive that didn't exist Fixed a warning when trying to load a PO file that didn't exist Change 3069408 on 2016/07/28 by Alex.Delesky #jira UE-33429 - The editor should no longer hit an ensure if the user attempts to drop a tab into a tab well before the tab well has a chance to acknowledge its been dragged into a tab well. Change 3069878 on 2016/07/29 by Jamie.Dale Fixed include casing #jira UE-33910 Change 3071807 on 2016/08/01 by Matt.Kuhlenschmidt PR #2654: Fix the spell'ing of "diff'ing" and "diff'd". (Contributed by geary) Change 3071813 on 2016/08/01 by Jamie.Dale Fixed include casing #jira UE-33936 Change 3072043 on 2016/08/01 by Jamie.Dale Fixed FText formatting of pre-Gregorian dates We now convert to an ICU UDate via an ICU GregorianCalendar, as UE4 and ICU have a different time scale for pre-Gregorian dates. #jira UE-14504 Change 3072066 on 2016/08/01 by Jamie.Dale PR #2590: FEATURE: Collapse/expand folders in the outliner (Contributed by projectgheist) Change 3072149 on 2016/08/01 by Jamie.Dale We no longer use the editor culture when running with -game Change 3072169 on 2016/08/01 by Richard.TalbotWatkin 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 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 3072221 on 2016/08/01 by Jamie.Dale Fixed "Launch On" not providing the correct cultures to StartCookByTheBookInEditor #jira UE-33001 Change 3073389 on 2016/08/02 by Matt.Kuhlenschmidt Added ability to vsync the editor. Disabled by default. Set r.VSyncEditor to 1 to enable it. Reimplemented this change from the siggraph demo stream Change 3073396 on 2016/08/02 by Matt.Kuhlenschmidt Removed unused code as suggested by a pull request Change 3073750 on 2016/08/02 by Richard.TalbotWatkin Fixed formatting (broken in CL 3057895) in anticipation of merge from Main. Change 3073789 on 2016/08/02 by Jamie.Dale Added a way to mark text in text properties as culture invariant This allows you to flag properties containing text that doesn't need to be gathered. #jira UE-33713 Change 3073825 on 2016/08/02 by Stephan.Jiang Material Editor: Highligh all Nodes connect to an input. #jira UE-32502 Change 3073947 on 2016/08/02 by Stephan.Jiang UMG Project settings to show/hide different classes and categories in Palette view. --under Project Settings ->Editor->UMG Editor Change 3074012 on 2016/08/02 by Stephan.Jiang Minor changes and comments for CL: 3073947 Change 3074029 on 2016/08/02 by Jamie.Dale Deleting folders in the Content Browser now removes the folder from disk #jira UE-24303 Change 3074054 on 2016/08/02 by Matt.Kuhlenschmidt Added missing stats to track pooled vertex and index buffer cpu memory A new slate allocator was added to track memory usage for this case. Change 3074056 on 2016/08/02 by Matt.Kuhlenschmidt Renamed a few slate stats for consistency Change 3074810 on 2016/08/02 by Matt.Kuhlenschmidt Moved geometry cache asset type to the animation category. It is not a basic asset type Change 3074826 on 2016/08/02 by Matt.Kuhlenschmidt Fix a few padding and sizing issues Change 3075322 on 2016/08/03 by Matt.Kuhlenschmidt Settings UI improvements * Added the ability to search through all settings at once * Settings files which are not checked out are no longer grayed out. The editor now attempts to check out the file automatically if connected to source control and if that fails it marks the settings file writiable so it can save the setting properly ------- * This change adds a refactor to the details panel to support multiple top level objects existing in the details panel at once instead of combining all passed in objects to a single common base class. This is disabled by default but can be turned on setting bAllowMultipleTopLevelObjects to true in FDetailsViewArgs when creating a details panel. * Each top level object in a details panel will get their own customization instance. This made it necessary to deprecate a IDetailsView::GetBaseClass since there is no longer guaranteed to be one base class. *Details panels can have their own customization for each "root object header" in order to customize the look of having multiple top level objects in the details panel. Change 3075369 on 2016/08/03 by Matt.Kuhlenschmidt Removed FBX scene as a top level option in asset filter menu in the content browser. Change 3075556 on 2016/08/03 by Matt.Kuhlenschmidt Mac warning fix Change 3075603 on 2016/08/03 by Nick.Darnell Adding two new plugins to engine, one for editor and one for runtime based testing. Currently the only consumer of these plugins is going to be the EngineTest project. Change 3075605 on 2016/08/03 by Nick.Darnell Functional Testing - Continued work on cleanup, reorganization, trying to improve the workflow for using the session browser. Change 3076084 on 2016/08/03 by Jamie.Dale Added basic support for localizing plugins You can now localize plugins! There's no localization dashboard integration for this so it has to be done manually. You need to define the localization targets your plugin uses in its .uplugin file, eg) "LocalizationTargets": [ { "Name": "Paper2D", "LoadingPolicy": "Always" } ] "Name" should match a localization config under the Config/Localization folder for your plugin. These configs are set-up the same as any other localization config. "LoadingPolicy" may be one of Never, Always, Editor, Game, PropertyNames, or ToolTips. This allows you to control under what conditions your localizations should be loaded (eg, if your plugin has both game and editor data, you can separate the editor data off into its own localization target that's only loaded by the editor). UAT has been updated to support gathering from plugins. You can use the "IncludePlugins" flag to have it gather all plugins, or you can specify a whitelist of plugins to gather as an argument to "IncludePlugins", or alternatively, may blacklist certain plugins via "ExcludePlugins". It can now also support out-of-source gathering via the "UEProjectRoot" argument (previously it assumed that everything would be under the UE4 install/checkout directory). UAT has been updated to support staging plugin LocRes files. It will stage any plugin targets that are enabled for a game/client build, and are also from a plugin that's enabled for your project. #jira UE-4217 Change 3076123 on 2016/08/03 by Stephan.Jiang Extend "Select all input nodes" function to general blueprint editor Change 3077103 on 2016/08/04 by Jamie.Dale Added support for underlined text rendering (including with drop-shadows) FTextBlockStyle can now specify a brush to use to draw an underline for text (a suitable default would be "DefaultTextUnderline" from FCoreStyle). When a brush is specified here, we inject FSlateTextUnderlineLineHighlighter highlights into the text layout to draw the underline under the relevant pieces of text, using the correct color, position, and thickness. FSlateFontCache::GetUnderlineMetrics and FSlateFontRenderer::GetUnderlineMetrics have been added to handle getting the underline metrics (which are slightly different to the baseline). This change also adds FTextLayout::RemoveRunRenderer and FTextLayout::RemoveLineHighlight to fix some bad assumptions that FSlateEditableTextLayout and FTextBlockLayout were making about ownership of run renderers and line highlighters that could cause them to remove instances they didn't own (such as the new underline highlighter) when updating things like the cursor position or highlight. Change 3077842 on 2016/08/04 by Jamie.Dale Fixed fallout from API changes Change 3077999 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 3078000 on 2016/08/04 by Trung.Le Categories VREditor-specific UMG widget assets as "VR Editor" #jira UE-34134 Change 3078056 on 2016/08/04 by Nick.Darnell Build - Fixing a mac compiler warning, reodering constructor initializers. Change 3078813 on 2016/08/05 by Nick.Darnell Reorganizing editor tests, establishing plugins in the EditorTest project that will house the tests. Change 3078818 on 2016/08/05 by Nick.Darnell Additional rename and cleanup associated with test moving. Change 3078819 on 2016/08/05 by Nick.Darnell Removing the Oculus performance automation test, not running, and was unclaimed. Change 3078842 on 2016/08/05 by Nick.Darnell Continued reorganizing tests. Change 3078897 on 2016/08/05 by Nick.Darnell Additional changes to get some moved tests compiling Change 3079157 on 2016/08/05 by Nick.Darnell Making it possible to browse provider names thorugh the source control module interface. Change 3079176 on 2016/08/05 by Stephan.Jiang Add shortcut Ctrl+Shift+Space to rotate through different viewport options #jira UE-34140 Change 3079208 on 2016/08/05 by Stephan.Jiang Fix new animation name check in UMG Change 3079278 on 2016/08/05 by Nick.Darnell Fixing the build Change 3080555 on 2016/08/08 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3081155 on 2016/08/08 by Nick.Darnell Fixing some issues with the editor tests / runtime tests under certain build configs. Change 3081243 on 2016/08/08 by Stephan.Jiang Add gesture in LevelViewport to switch between Top/Bottom...etc. Change 3082226 on 2016/08/09 by Matt.Kuhlenschmidt Work around animations not playing in paragon due to bsp rebuilds (UE-34391) Change 3082254 on 2016/08/09 by Stephan.Jiang DragTool_ViewportChange init changes [CL 3082411 by Matt Kuhlenschmidt in Main branch]
2016-08-09 11:28:56 -04:00
}
for (int32 MeshBatchIndex = 0; MeshBatchIndex < View.DynamicMeshElements.Num(); MeshBatchIndex++)
{
const FMeshBatchAndRelevance& MeshBatchAndRelevance = View.DynamicMeshElements[MeshBatchIndex];
const FPrimitiveSceneProxy* PrimitiveSceneProxy = MeshBatchAndRelevance.PrimitiveSceneProxy;
// Selected actors should be subdued if any component is individually selected
bool bActorSelectionColorIsSubdued = View.bHasSelectedComponents;
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3082391) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3051464 on 2016/07/15 by Nick.Darnell Regression Testing - Several upgrades to the functional testing system, better tracking of failure cases, some source line failure detection, trying to make it easier to run a specific test on a map. Some UI improvements, easier access to the automation system. Lots more refactoring to come, lots of improvements are still needed in transmitting screenshots and just generally building a automation report we could dump from the build machines. Change 3051465 on 2016/07/15 by Nick.Darnell Adding the "Engine Test" project our one stop shope for running automation tests in the engine to try and reduce regressions. Change 3051847 on 2016/07/15 by Matt.Kuhlenschmidt Fixed material editor viewport messages being blocked by viewport toolbar Change 3052025 on 2016/07/15 by Nick.Darnell Moving the placement mode hooks out of functional testing module, moving them into the editor automation module. Change 3053508 on 2016/07/18 by Stephan.Jiang Copy,Cut,Paste tracks, not for mastertracks yet. #UE-31808 Change 3054723 on 2016/07/18 by Stephan.Jiang Small fixes for typo & comments Change 3055996 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received Change 3056106 on 2016/07/19 by Trung.Le Back out changelist 3055996. Build break. Change 3056108 on 2016/07/19 by Stephan.Jiang Updating "SoundConcurrency" asseticon Change 3056389 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received #jira UE-33339 Change 3056396 on 2016/07/19 by Matt.Kuhlenschmidt More perf selection improvements: - Static meshes now go through the static draw path when rendered for selection outline instead of just rendering using the dynamic path Change 3056758 on 2016/07/19 by Stephan.Jiang Update SelectedWidgets in WidgetblueprintEditor to match the selected tracks in sequencer. Change 3057519 on 2016/07/20 by Matt.Kuhlenschmidt Another fix for selecting lots of objects taking forever. This one is due to repeated Modify calls if there are groups in the selection. Each group actor selected iterates through each object selected during USelection::Modify! Change 3057635 on 2016/07/20 by Stephan.Jiang Updating visual logger icon UI Change 3057645 on 2016/07/20 by Richard.TalbotWatkin 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 3057868 on 2016/07/20 by Richard.TalbotWatkin 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. Change 3057895 on 2016/07/20 by Richard.TalbotWatkin 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 3057966 on 2016/07/20 by Richard.TalbotWatkin Renamed IsEditingArchetype to IsVisualizingArchetype in the ComponentVisualizer API. #jira UE-33049 - Transform widget visible in blueprint viewport when editing spline points in editor viewport Change 3058009 on 2016/07/20 by Richard.TalbotWatkin Fixed build failure due to changes to FComponentVisualizer API, as of CL 3057868. Change 3058047 on 2016/07/20 by Stephan.Jiang Fixing error on previous CL: 3056758 (extra qualification) Change 3058266 on 2016/07/20 by Nick.Darnell Automation - Work continues on automation integrating some ideas form a licensee. Continuing to work on the usability aspects, I've made it possible for tests to provide custom open commands, as well as have complex subclasses that do different things. The functional tests now have a custom open command they emit that makes it so clicking on a test opens not the C++ location where the functional test macro lives, but instead the map, AND focuses the functional test actor. Change 3058282 on 2016/07/20 by Matt.Kuhlenschmidt PR #2611: Fix spurious component diff when properties are in subcategories (Contributed by CA-ADuran) Change 3059214 on 2016/07/21 by Richard.TalbotWatkin Further fixes to visualizers following Component Visualizer API change. Change 3059260 on 2016/07/21 by Richard.TalbotWatkin Template specialization not allowed in class scope, but Visual Studio allows it anyway. Fixed for clang. Change 3059543 on 2016/07/21 by Stephan.Jiang Changeing level details icon Change 3059732 on 2016/07/21 by Stephan.Jiang Directional Light icon update Change 3060095 on 2016/07/21 by Stephan.Jiang Directional Light editor icon asset changed Change 3060129 on 2016/07/21 by Nick.Darnell Automation - The session browser now attempts to select the app instance if no other thing is selected when it refreshes. This is to try and make it easier to use when you first bring it up and nothing is selected when most of the time you're going to use it on your own instance. Change 3061735 on 2016/07/22 by Stephan.Jiang Improve UMG replace with in HierarchyView function #UE-33582 Change 3062059 on 2016/07/22 by Stephan.Jiang Strip off "b" in propertyname in replace with function for tracks. Change 3062146 on 2016/07/22 by Stephan.Jiang checkin with CL: 3061735 Change 3062182 on 2016/07/22 by Stephan.Jiang Change both animation bindings' widget name when renameing the widget so the slot content is still valid Change 3062257 on 2016/07/22 by Stephan.Jiang comments Change 3062381 on 2016/07/22 by Nick.Darnell Build - Adding #undef LOCTEXT_NAMESPACE to try and fix the build. Change 3062924 on 2016/07/25 by Chris.Wood Fix a crash in CrashReportClient that happens when the CrashReportReceiver is not responding to pings and there are no PendingReportDirectories. This is a change in the UE4 stream depot based on a fix in the Fortnite stream depot -> JIRA FORT-27570 Change 3063017 on 2016/07/25 by Matt.Kuhlenschmidt PR #2618: DebuggerCommand not recording PlayLocationString (Contributed by ungalyant) Change 3063021 on 2016/07/25 by Matt.Kuhlenschmidt PR #2619: added a search box to ModuleUI (Contributed by straymist) Change 3063084 on 2016/07/25 by Matt.Kuhlenschmidt Fix "YesToAll" when deleting referenced actors overriding the "YesToAll" state for other referenced messages. https://jira.ol.epicgames.net/browse/UE-33651 #jira UE-33651 Change 3063091 on 2016/07/25 by Alex.Delesky #jira UE-32949 - Truncating the hue inside the theme color block tooltip to only display whole numbers, to match how the color picker displays the hue value inside the hue scrubber. Change 3063388 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Fix large FName creation time when selecting thousands of objects Change 3063568 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Modified how USelection stores classes. Classes are now in a TSet and can be accessed efficiently using IsClassSelected. The old unused way of checking if a selection has a class by iterating through them is deprecated - USelection no longer directly checks if an item is already selected with a costly n^2 search. The check is done by using the already existing UObject selected annotation - Object property nodes no longer perform an n^2 check for object uniqueness when objects are added to details panels. This is now left up to the caller to avoid - Eliminated useless work on FObjectPropertyNode::GetReadAddressUncached. If a read address list is not passed in we'll not attempt to the work to populate it - Removed expensive checking for brush actors when any actor is selected Change 3063749 on 2016/07/25 by Stephan.Jiang Disallow naming the widgetanimation to the same name with a override function in uuserwidget, because it will trigger a breakpoint in Rename() #jira UE-33711 Change 3064585 on 2016/07/26 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3064612 on 2016/07/26 by Alex.Delesky #jira UE-33712 - Deleting many assets at once will now batch SourceControl commands rather than executing one for each asset. Change 3064647 on 2016/07/26 by Alexis.Matte #jira UE-33274 dont hash the same file over and over when importing multiple asset from one fbx file. Change 3064739 on 2016/07/26 by Matt.Kuhlenschmidt Fixed typo Change 3064795 on 2016/07/26 by Jamie.Dale Fixed typo in FLocalizationModule::GetLocalizationTargetByName #jira UE-32961 Change 3066461 on 2016/07/27 by Jamie.Dale Enabled stable localization keys Change 3066463 on 2016/07/27 by Jamie.Dale Set "Build Engine Localization" to upload all cultures to ensure we don't lose translation due to the archive keying changes Change 3066467 on 2016/07/27 by Jamie.Dale Updated internationalization archives to store translations per-identity This allows translators to translate each instance of a piece of text based upon their context, rather than requiring a content producer to go back and give the entry a unique namespace. It also allows us to optionally compile out-of-date translations, as they are now mapped to their source identity (namespace + key) rather than their source text. Major changes: - Added FLocTextHelper. This acts as a high-level API for uncompiled localized text, and replaces all the old ad-hoc loading/saving of manifests and archives, ensuring that everything is consistently using source control, and that older archives can be upgraded correctly to the new format. It also takes care of some of the quirks of our archives, such as native translations. All major localization commandlets have been updated to use FLocTextHelper. - Moved FTextLocalizationResourceGenerator from Core to Internationalization. This also allows IJsonInternationalizationManifestSerializer and IJsonInternationalizationArchiveSerializer to be removed, and for FJsonInternationalizationManifestSerializer and FJsonInternationalizationArchiveSerializer to have all their functions become static. - FTextLocalizationResourceGenerator being moved from Core meant that FTextLocalizationManager::LoadFromManifestAndArchives was also removed. This functionality is now handled by FTextLocalizationResourceGenerator::GenerateAndUpdateLiveEntriesFromConfig. - The RepairLocalizationData commandlet has been removed. This existed to fix a change that pre-dated 4.0 so no such data should exist in the wild, and the commandlet couldn't be updated to work with the new API (we handle format upgrades in-place now). - Removed FInternationalizationArchive::FindEntryBySource as it is no-longer safe to use. All existing code has been updated to use FInternationalizationArchive::FindEntryByKey instead. Workflow changes: - Archive conditioning now only adds new entries if they don't exist in the archive. This allows us to persist any existing translations, even if they're for old source text (caveat: native archives still update existing entries if the source is changed). - PO export now sets the msgctx for each entry to be "namespace,key", rather than only doing it when the entry had key meta-data. - PO import will now update both the source and translation stored in the archive to match the current PO data. This is the primary method by which stale source->translation pairs are updated. - LocRes compilation may now optionally compile stale translations. There's an option controlling this (defaulted to off) that can be changed via the Localization Dashboard (or added to an existing config file). Format changes: - The archive version was bumped to 2. - Archive entries now use the "Key" entry to store the key from the source text. Previously this "Key" entry was used to store the key meta-data, but that now exists within a "MetaData" sub-object. Loading handles this correctly based upon the archive version. #jira UETOOL-897 #jira UETOOL-898 #jira UE-29481 Change 3066487 on 2016/07/27 by Matt.Kuhlenschmidt Attempt to fix linux compilation Change 3066504 on 2016/07/27 by Matt.Kuhlenschmidt Fixed data tables with structs crashing due to recent editor selection optimizations Change 3066886 on 2016/07/27 by Jamie.Dale Added required data to accurately detect TZ (needed for DST) #jira UE-28511 Change 3067122 on 2016/07/27 by Jamie.Dale Added AsTime, AsDateTime, and AsDate overrides to BP to let you format a UTC time in a given timezone (default is the local timezone). Previously you could only format times using the "invariant" timezone, which assumed that the time was already specified in the correct timezone for display. Change 3067227 on 2016/07/27 by Jamie.Dale Added a test to verify that the ICU timezone is set correctly to produce local time (including DST) Change 3067313 on 2016/07/27 by Richard.TalbotWatkin Fixed SplineComponent constructor so that old assets (prior to the property changes) load correctly if they had properties at default values. #jira UE-33669 - Crash in Dev-Editor Change 3067736 on 2016/07/27 by Stephan.Jiang Border changes for experimental classes warning Change 3067769 on 2016/07/27 by Stephan.Jiang HERE BE DRAGONS for experimental class warning #UE-33780 Change 3068192 on 2016/07/28 by Alexis.Matte #jira UE-33586 make sure we remove any false warning when running fbx automation test. Change 3068264 on 2016/07/28 by Jamie.Dale Removed some code that was no longer needed and could cause a crash #jira UE-33342 Change 3068293 on 2016/07/28 by Alex.Delesky #jira UE-33620 - Comments on constant and parameter nodes in the Material Editor will now persist when converting them. Change 3068481 on 2016/07/28 by Stephan.Jiang Adding Options to show/hide soft & hard references & dependencies in References Viewer #jira UE-33746 Change 3068585 on 2016/07/28 by Richard.TalbotWatkin Fix to Spline Mesh collision building so that geometry does not default to being auto-inflated in PhysX. Change 3068701 on 2016/07/28 by Matt.Kuhlenschmidt Fixed some issues with the selected classes not updating when objects are deselected Change 3069335 on 2016/07/28 by Jamie.Dale Fixed unintended error when trying to load a manifest/archive that didn't exist Fixed a warning when trying to load a PO file that didn't exist Change 3069408 on 2016/07/28 by Alex.Delesky #jira UE-33429 - The editor should no longer hit an ensure if the user attempts to drop a tab into a tab well before the tab well has a chance to acknowledge its been dragged into a tab well. Change 3069878 on 2016/07/29 by Jamie.Dale Fixed include casing #jira UE-33910 Change 3071807 on 2016/08/01 by Matt.Kuhlenschmidt PR #2654: Fix the spell'ing of "diff'ing" and "diff'd". (Contributed by geary) Change 3071813 on 2016/08/01 by Jamie.Dale Fixed include casing #jira UE-33936 Change 3072043 on 2016/08/01 by Jamie.Dale Fixed FText formatting of pre-Gregorian dates We now convert to an ICU UDate via an ICU GregorianCalendar, as UE4 and ICU have a different time scale for pre-Gregorian dates. #jira UE-14504 Change 3072066 on 2016/08/01 by Jamie.Dale PR #2590: FEATURE: Collapse/expand folders in the outliner (Contributed by projectgheist) Change 3072149 on 2016/08/01 by Jamie.Dale We no longer use the editor culture when running with -game Change 3072169 on 2016/08/01 by Richard.TalbotWatkin 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 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 3072221 on 2016/08/01 by Jamie.Dale Fixed "Launch On" not providing the correct cultures to StartCookByTheBookInEditor #jira UE-33001 Change 3073389 on 2016/08/02 by Matt.Kuhlenschmidt Added ability to vsync the editor. Disabled by default. Set r.VSyncEditor to 1 to enable it. Reimplemented this change from the siggraph demo stream Change 3073396 on 2016/08/02 by Matt.Kuhlenschmidt Removed unused code as suggested by a pull request Change 3073750 on 2016/08/02 by Richard.TalbotWatkin Fixed formatting (broken in CL 3057895) in anticipation of merge from Main. Change 3073789 on 2016/08/02 by Jamie.Dale Added a way to mark text in text properties as culture invariant This allows you to flag properties containing text that doesn't need to be gathered. #jira UE-33713 Change 3073825 on 2016/08/02 by Stephan.Jiang Material Editor: Highligh all Nodes connect to an input. #jira UE-32502 Change 3073947 on 2016/08/02 by Stephan.Jiang UMG Project settings to show/hide different classes and categories in Palette view. --under Project Settings ->Editor->UMG Editor Change 3074012 on 2016/08/02 by Stephan.Jiang Minor changes and comments for CL: 3073947 Change 3074029 on 2016/08/02 by Jamie.Dale Deleting folders in the Content Browser now removes the folder from disk #jira UE-24303 Change 3074054 on 2016/08/02 by Matt.Kuhlenschmidt Added missing stats to track pooled vertex and index buffer cpu memory A new slate allocator was added to track memory usage for this case. Change 3074056 on 2016/08/02 by Matt.Kuhlenschmidt Renamed a few slate stats for consistency Change 3074810 on 2016/08/02 by Matt.Kuhlenschmidt Moved geometry cache asset type to the animation category. It is not a basic asset type Change 3074826 on 2016/08/02 by Matt.Kuhlenschmidt Fix a few padding and sizing issues Change 3075322 on 2016/08/03 by Matt.Kuhlenschmidt Settings UI improvements * Added the ability to search through all settings at once * Settings files which are not checked out are no longer grayed out. The editor now attempts to check out the file automatically if connected to source control and if that fails it marks the settings file writiable so it can save the setting properly ------- * This change adds a refactor to the details panel to support multiple top level objects existing in the details panel at once instead of combining all passed in objects to a single common base class. This is disabled by default but can be turned on setting bAllowMultipleTopLevelObjects to true in FDetailsViewArgs when creating a details panel. * Each top level object in a details panel will get their own customization instance. This made it necessary to deprecate a IDetailsView::GetBaseClass since there is no longer guaranteed to be one base class. *Details panels can have their own customization for each "root object header" in order to customize the look of having multiple top level objects in the details panel. Change 3075369 on 2016/08/03 by Matt.Kuhlenschmidt Removed FBX scene as a top level option in asset filter menu in the content browser. Change 3075556 on 2016/08/03 by Matt.Kuhlenschmidt Mac warning fix Change 3075603 on 2016/08/03 by Nick.Darnell Adding two new plugins to engine, one for editor and one for runtime based testing. Currently the only consumer of these plugins is going to be the EngineTest project. Change 3075605 on 2016/08/03 by Nick.Darnell Functional Testing - Continued work on cleanup, reorganization, trying to improve the workflow for using the session browser. Change 3076084 on 2016/08/03 by Jamie.Dale Added basic support for localizing plugins You can now localize plugins! There's no localization dashboard integration for this so it has to be done manually. You need to define the localization targets your plugin uses in its .uplugin file, eg) "LocalizationTargets": [ { "Name": "Paper2D", "LoadingPolicy": "Always" } ] "Name" should match a localization config under the Config/Localization folder for your plugin. These configs are set-up the same as any other localization config. "LoadingPolicy" may be one of Never, Always, Editor, Game, PropertyNames, or ToolTips. This allows you to control under what conditions your localizations should be loaded (eg, if your plugin has both game and editor data, you can separate the editor data off into its own localization target that's only loaded by the editor). UAT has been updated to support gathering from plugins. You can use the "IncludePlugins" flag to have it gather all plugins, or you can specify a whitelist of plugins to gather as an argument to "IncludePlugins", or alternatively, may blacklist certain plugins via "ExcludePlugins". It can now also support out-of-source gathering via the "UEProjectRoot" argument (previously it assumed that everything would be under the UE4 install/checkout directory). UAT has been updated to support staging plugin LocRes files. It will stage any plugin targets that are enabled for a game/client build, and are also from a plugin that's enabled for your project. #jira UE-4217 Change 3076123 on 2016/08/03 by Stephan.Jiang Extend "Select all input nodes" function to general blueprint editor Change 3077103 on 2016/08/04 by Jamie.Dale Added support for underlined text rendering (including with drop-shadows) FTextBlockStyle can now specify a brush to use to draw an underline for text (a suitable default would be "DefaultTextUnderline" from FCoreStyle). When a brush is specified here, we inject FSlateTextUnderlineLineHighlighter highlights into the text layout to draw the underline under the relevant pieces of text, using the correct color, position, and thickness. FSlateFontCache::GetUnderlineMetrics and FSlateFontRenderer::GetUnderlineMetrics have been added to handle getting the underline metrics (which are slightly different to the baseline). This change also adds FTextLayout::RemoveRunRenderer and FTextLayout::RemoveLineHighlight to fix some bad assumptions that FSlateEditableTextLayout and FTextBlockLayout were making about ownership of run renderers and line highlighters that could cause them to remove instances they didn't own (such as the new underline highlighter) when updating things like the cursor position or highlight. Change 3077842 on 2016/08/04 by Jamie.Dale Fixed fallout from API changes Change 3077999 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 3078000 on 2016/08/04 by Trung.Le Categories VREditor-specific UMG widget assets as "VR Editor" #jira UE-34134 Change 3078056 on 2016/08/04 by Nick.Darnell Build - Fixing a mac compiler warning, reodering constructor initializers. Change 3078813 on 2016/08/05 by Nick.Darnell Reorganizing editor tests, establishing plugins in the EditorTest project that will house the tests. Change 3078818 on 2016/08/05 by Nick.Darnell Additional rename and cleanup associated with test moving. Change 3078819 on 2016/08/05 by Nick.Darnell Removing the Oculus performance automation test, not running, and was unclaimed. Change 3078842 on 2016/08/05 by Nick.Darnell Continued reorganizing tests. Change 3078897 on 2016/08/05 by Nick.Darnell Additional changes to get some moved tests compiling Change 3079157 on 2016/08/05 by Nick.Darnell Making it possible to browse provider names thorugh the source control module interface. Change 3079176 on 2016/08/05 by Stephan.Jiang Add shortcut Ctrl+Shift+Space to rotate through different viewport options #jira UE-34140 Change 3079208 on 2016/08/05 by Stephan.Jiang Fix new animation name check in UMG Change 3079278 on 2016/08/05 by Nick.Darnell Fixing the build Change 3080555 on 2016/08/08 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3081155 on 2016/08/08 by Nick.Darnell Fixing some issues with the editor tests / runtime tests under certain build configs. Change 3081243 on 2016/08/08 by Stephan.Jiang Add gesture in LevelViewport to switch between Top/Bottom...etc. Change 3082226 on 2016/08/09 by Matt.Kuhlenschmidt Work around animations not playing in paragon due to bsp rebuilds (UE-34391) Change 3082254 on 2016/08/09 by Stephan.Jiang DragTool_ViewportChange init changes [CL 3082411 by Matt Kuhlenschmidt in Main branch]
2016-08-09 11:28:56 -04:00
if (PrimitiveSceneProxy->IsSelected() && MeshBatchAndRelevance.Mesh->bUseSelectionOutline && PrimitiveSceneProxy->WantsSelectionOutline())
{
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3082391) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3051464 on 2016/07/15 by Nick.Darnell Regression Testing - Several upgrades to the functional testing system, better tracking of failure cases, some source line failure detection, trying to make it easier to run a specific test on a map. Some UI improvements, easier access to the automation system. Lots more refactoring to come, lots of improvements are still needed in transmitting screenshots and just generally building a automation report we could dump from the build machines. Change 3051465 on 2016/07/15 by Nick.Darnell Adding the "Engine Test" project our one stop shope for running automation tests in the engine to try and reduce regressions. Change 3051847 on 2016/07/15 by Matt.Kuhlenschmidt Fixed material editor viewport messages being blocked by viewport toolbar Change 3052025 on 2016/07/15 by Nick.Darnell Moving the placement mode hooks out of functional testing module, moving them into the editor automation module. Change 3053508 on 2016/07/18 by Stephan.Jiang Copy,Cut,Paste tracks, not for mastertracks yet. #UE-31808 Change 3054723 on 2016/07/18 by Stephan.Jiang Small fixes for typo & comments Change 3055996 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received Change 3056106 on 2016/07/19 by Trung.Le Back out changelist 3055996. Build break. Change 3056108 on 2016/07/19 by Stephan.Jiang Updating "SoundConcurrency" asseticon Change 3056389 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received #jira UE-33339 Change 3056396 on 2016/07/19 by Matt.Kuhlenschmidt More perf selection improvements: - Static meshes now go through the static draw path when rendered for selection outline instead of just rendering using the dynamic path Change 3056758 on 2016/07/19 by Stephan.Jiang Update SelectedWidgets in WidgetblueprintEditor to match the selected tracks in sequencer. Change 3057519 on 2016/07/20 by Matt.Kuhlenschmidt Another fix for selecting lots of objects taking forever. This one is due to repeated Modify calls if there are groups in the selection. Each group actor selected iterates through each object selected during USelection::Modify! Change 3057635 on 2016/07/20 by Stephan.Jiang Updating visual logger icon UI Change 3057645 on 2016/07/20 by Richard.TalbotWatkin 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 3057868 on 2016/07/20 by Richard.TalbotWatkin 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. Change 3057895 on 2016/07/20 by Richard.TalbotWatkin 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 3057966 on 2016/07/20 by Richard.TalbotWatkin Renamed IsEditingArchetype to IsVisualizingArchetype in the ComponentVisualizer API. #jira UE-33049 - Transform widget visible in blueprint viewport when editing spline points in editor viewport Change 3058009 on 2016/07/20 by Richard.TalbotWatkin Fixed build failure due to changes to FComponentVisualizer API, as of CL 3057868. Change 3058047 on 2016/07/20 by Stephan.Jiang Fixing error on previous CL: 3056758 (extra qualification) Change 3058266 on 2016/07/20 by Nick.Darnell Automation - Work continues on automation integrating some ideas form a licensee. Continuing to work on the usability aspects, I've made it possible for tests to provide custom open commands, as well as have complex subclasses that do different things. The functional tests now have a custom open command they emit that makes it so clicking on a test opens not the C++ location where the functional test macro lives, but instead the map, AND focuses the functional test actor. Change 3058282 on 2016/07/20 by Matt.Kuhlenschmidt PR #2611: Fix spurious component diff when properties are in subcategories (Contributed by CA-ADuran) Change 3059214 on 2016/07/21 by Richard.TalbotWatkin Further fixes to visualizers following Component Visualizer API change. Change 3059260 on 2016/07/21 by Richard.TalbotWatkin Template specialization not allowed in class scope, but Visual Studio allows it anyway. Fixed for clang. Change 3059543 on 2016/07/21 by Stephan.Jiang Changeing level details icon Change 3059732 on 2016/07/21 by Stephan.Jiang Directional Light icon update Change 3060095 on 2016/07/21 by Stephan.Jiang Directional Light editor icon asset changed Change 3060129 on 2016/07/21 by Nick.Darnell Automation - The session browser now attempts to select the app instance if no other thing is selected when it refreshes. This is to try and make it easier to use when you first bring it up and nothing is selected when most of the time you're going to use it on your own instance. Change 3061735 on 2016/07/22 by Stephan.Jiang Improve UMG replace with in HierarchyView function #UE-33582 Change 3062059 on 2016/07/22 by Stephan.Jiang Strip off "b" in propertyname in replace with function for tracks. Change 3062146 on 2016/07/22 by Stephan.Jiang checkin with CL: 3061735 Change 3062182 on 2016/07/22 by Stephan.Jiang Change both animation bindings' widget name when renameing the widget so the slot content is still valid Change 3062257 on 2016/07/22 by Stephan.Jiang comments Change 3062381 on 2016/07/22 by Nick.Darnell Build - Adding #undef LOCTEXT_NAMESPACE to try and fix the build. Change 3062924 on 2016/07/25 by Chris.Wood Fix a crash in CrashReportClient that happens when the CrashReportReceiver is not responding to pings and there are no PendingReportDirectories. This is a change in the UE4 stream depot based on a fix in the Fortnite stream depot -> JIRA FORT-27570 Change 3063017 on 2016/07/25 by Matt.Kuhlenschmidt PR #2618: DebuggerCommand not recording PlayLocationString (Contributed by ungalyant) Change 3063021 on 2016/07/25 by Matt.Kuhlenschmidt PR #2619: added a search box to ModuleUI (Contributed by straymist) Change 3063084 on 2016/07/25 by Matt.Kuhlenschmidt Fix "YesToAll" when deleting referenced actors overriding the "YesToAll" state for other referenced messages. https://jira.ol.epicgames.net/browse/UE-33651 #jira UE-33651 Change 3063091 on 2016/07/25 by Alex.Delesky #jira UE-32949 - Truncating the hue inside the theme color block tooltip to only display whole numbers, to match how the color picker displays the hue value inside the hue scrubber. Change 3063388 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Fix large FName creation time when selecting thousands of objects Change 3063568 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Modified how USelection stores classes. Classes are now in a TSet and can be accessed efficiently using IsClassSelected. The old unused way of checking if a selection has a class by iterating through them is deprecated - USelection no longer directly checks if an item is already selected with a costly n^2 search. The check is done by using the already existing UObject selected annotation - Object property nodes no longer perform an n^2 check for object uniqueness when objects are added to details panels. This is now left up to the caller to avoid - Eliminated useless work on FObjectPropertyNode::GetReadAddressUncached. If a read address list is not passed in we'll not attempt to the work to populate it - Removed expensive checking for brush actors when any actor is selected Change 3063749 on 2016/07/25 by Stephan.Jiang Disallow naming the widgetanimation to the same name with a override function in uuserwidget, because it will trigger a breakpoint in Rename() #jira UE-33711 Change 3064585 on 2016/07/26 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3064612 on 2016/07/26 by Alex.Delesky #jira UE-33712 - Deleting many assets at once will now batch SourceControl commands rather than executing one for each asset. Change 3064647 on 2016/07/26 by Alexis.Matte #jira UE-33274 dont hash the same file over and over when importing multiple asset from one fbx file. Change 3064739 on 2016/07/26 by Matt.Kuhlenschmidt Fixed typo Change 3064795 on 2016/07/26 by Jamie.Dale Fixed typo in FLocalizationModule::GetLocalizationTargetByName #jira UE-32961 Change 3066461 on 2016/07/27 by Jamie.Dale Enabled stable localization keys Change 3066463 on 2016/07/27 by Jamie.Dale Set "Build Engine Localization" to upload all cultures to ensure we don't lose translation due to the archive keying changes Change 3066467 on 2016/07/27 by Jamie.Dale Updated internationalization archives to store translations per-identity This allows translators to translate each instance of a piece of text based upon their context, rather than requiring a content producer to go back and give the entry a unique namespace. It also allows us to optionally compile out-of-date translations, as they are now mapped to their source identity (namespace + key) rather than their source text. Major changes: - Added FLocTextHelper. This acts as a high-level API for uncompiled localized text, and replaces all the old ad-hoc loading/saving of manifests and archives, ensuring that everything is consistently using source control, and that older archives can be upgraded correctly to the new format. It also takes care of some of the quirks of our archives, such as native translations. All major localization commandlets have been updated to use FLocTextHelper. - Moved FTextLocalizationResourceGenerator from Core to Internationalization. This also allows IJsonInternationalizationManifestSerializer and IJsonInternationalizationArchiveSerializer to be removed, and for FJsonInternationalizationManifestSerializer and FJsonInternationalizationArchiveSerializer to have all their functions become static. - FTextLocalizationResourceGenerator being moved from Core meant that FTextLocalizationManager::LoadFromManifestAndArchives was also removed. This functionality is now handled by FTextLocalizationResourceGenerator::GenerateAndUpdateLiveEntriesFromConfig. - The RepairLocalizationData commandlet has been removed. This existed to fix a change that pre-dated 4.0 so no such data should exist in the wild, and the commandlet couldn't be updated to work with the new API (we handle format upgrades in-place now). - Removed FInternationalizationArchive::FindEntryBySource as it is no-longer safe to use. All existing code has been updated to use FInternationalizationArchive::FindEntryByKey instead. Workflow changes: - Archive conditioning now only adds new entries if they don't exist in the archive. This allows us to persist any existing translations, even if they're for old source text (caveat: native archives still update existing entries if the source is changed). - PO export now sets the msgctx for each entry to be "namespace,key", rather than only doing it when the entry had key meta-data. - PO import will now update both the source and translation stored in the archive to match the current PO data. This is the primary method by which stale source->translation pairs are updated. - LocRes compilation may now optionally compile stale translations. There's an option controlling this (defaulted to off) that can be changed via the Localization Dashboard (or added to an existing config file). Format changes: - The archive version was bumped to 2. - Archive entries now use the "Key" entry to store the key from the source text. Previously this "Key" entry was used to store the key meta-data, but that now exists within a "MetaData" sub-object. Loading handles this correctly based upon the archive version. #jira UETOOL-897 #jira UETOOL-898 #jira UE-29481 Change 3066487 on 2016/07/27 by Matt.Kuhlenschmidt Attempt to fix linux compilation Change 3066504 on 2016/07/27 by Matt.Kuhlenschmidt Fixed data tables with structs crashing due to recent editor selection optimizations Change 3066886 on 2016/07/27 by Jamie.Dale Added required data to accurately detect TZ (needed for DST) #jira UE-28511 Change 3067122 on 2016/07/27 by Jamie.Dale Added AsTime, AsDateTime, and AsDate overrides to BP to let you format a UTC time in a given timezone (default is the local timezone). Previously you could only format times using the "invariant" timezone, which assumed that the time was already specified in the correct timezone for display. Change 3067227 on 2016/07/27 by Jamie.Dale Added a test to verify that the ICU timezone is set correctly to produce local time (including DST) Change 3067313 on 2016/07/27 by Richard.TalbotWatkin Fixed SplineComponent constructor so that old assets (prior to the property changes) load correctly if they had properties at default values. #jira UE-33669 - Crash in Dev-Editor Change 3067736 on 2016/07/27 by Stephan.Jiang Border changes for experimental classes warning Change 3067769 on 2016/07/27 by Stephan.Jiang HERE BE DRAGONS for experimental class warning #UE-33780 Change 3068192 on 2016/07/28 by Alexis.Matte #jira UE-33586 make sure we remove any false warning when running fbx automation test. Change 3068264 on 2016/07/28 by Jamie.Dale Removed some code that was no longer needed and could cause a crash #jira UE-33342 Change 3068293 on 2016/07/28 by Alex.Delesky #jira UE-33620 - Comments on constant and parameter nodes in the Material Editor will now persist when converting them. Change 3068481 on 2016/07/28 by Stephan.Jiang Adding Options to show/hide soft & hard references & dependencies in References Viewer #jira UE-33746 Change 3068585 on 2016/07/28 by Richard.TalbotWatkin Fix to Spline Mesh collision building so that geometry does not default to being auto-inflated in PhysX. Change 3068701 on 2016/07/28 by Matt.Kuhlenschmidt Fixed some issues with the selected classes not updating when objects are deselected Change 3069335 on 2016/07/28 by Jamie.Dale Fixed unintended error when trying to load a manifest/archive that didn't exist Fixed a warning when trying to load a PO file that didn't exist Change 3069408 on 2016/07/28 by Alex.Delesky #jira UE-33429 - The editor should no longer hit an ensure if the user attempts to drop a tab into a tab well before the tab well has a chance to acknowledge its been dragged into a tab well. Change 3069878 on 2016/07/29 by Jamie.Dale Fixed include casing #jira UE-33910 Change 3071807 on 2016/08/01 by Matt.Kuhlenschmidt PR #2654: Fix the spell'ing of "diff'ing" and "diff'd". (Contributed by geary) Change 3071813 on 2016/08/01 by Jamie.Dale Fixed include casing #jira UE-33936 Change 3072043 on 2016/08/01 by Jamie.Dale Fixed FText formatting of pre-Gregorian dates We now convert to an ICU UDate via an ICU GregorianCalendar, as UE4 and ICU have a different time scale for pre-Gregorian dates. #jira UE-14504 Change 3072066 on 2016/08/01 by Jamie.Dale PR #2590: FEATURE: Collapse/expand folders in the outliner (Contributed by projectgheist) Change 3072149 on 2016/08/01 by Jamie.Dale We no longer use the editor culture when running with -game Change 3072169 on 2016/08/01 by Richard.TalbotWatkin 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 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 3072221 on 2016/08/01 by Jamie.Dale Fixed "Launch On" not providing the correct cultures to StartCookByTheBookInEditor #jira UE-33001 Change 3073389 on 2016/08/02 by Matt.Kuhlenschmidt Added ability to vsync the editor. Disabled by default. Set r.VSyncEditor to 1 to enable it. Reimplemented this change from the siggraph demo stream Change 3073396 on 2016/08/02 by Matt.Kuhlenschmidt Removed unused code as suggested by a pull request Change 3073750 on 2016/08/02 by Richard.TalbotWatkin Fixed formatting (broken in CL 3057895) in anticipation of merge from Main. Change 3073789 on 2016/08/02 by Jamie.Dale Added a way to mark text in text properties as culture invariant This allows you to flag properties containing text that doesn't need to be gathered. #jira UE-33713 Change 3073825 on 2016/08/02 by Stephan.Jiang Material Editor: Highligh all Nodes connect to an input. #jira UE-32502 Change 3073947 on 2016/08/02 by Stephan.Jiang UMG Project settings to show/hide different classes and categories in Palette view. --under Project Settings ->Editor->UMG Editor Change 3074012 on 2016/08/02 by Stephan.Jiang Minor changes and comments for CL: 3073947 Change 3074029 on 2016/08/02 by Jamie.Dale Deleting folders in the Content Browser now removes the folder from disk #jira UE-24303 Change 3074054 on 2016/08/02 by Matt.Kuhlenschmidt Added missing stats to track pooled vertex and index buffer cpu memory A new slate allocator was added to track memory usage for this case. Change 3074056 on 2016/08/02 by Matt.Kuhlenschmidt Renamed a few slate stats for consistency Change 3074810 on 2016/08/02 by Matt.Kuhlenschmidt Moved geometry cache asset type to the animation category. It is not a basic asset type Change 3074826 on 2016/08/02 by Matt.Kuhlenschmidt Fix a few padding and sizing issues Change 3075322 on 2016/08/03 by Matt.Kuhlenschmidt Settings UI improvements * Added the ability to search through all settings at once * Settings files which are not checked out are no longer grayed out. The editor now attempts to check out the file automatically if connected to source control and if that fails it marks the settings file writiable so it can save the setting properly ------- * This change adds a refactor to the details panel to support multiple top level objects existing in the details panel at once instead of combining all passed in objects to a single common base class. This is disabled by default but can be turned on setting bAllowMultipleTopLevelObjects to true in FDetailsViewArgs when creating a details panel. * Each top level object in a details panel will get their own customization instance. This made it necessary to deprecate a IDetailsView::GetBaseClass since there is no longer guaranteed to be one base class. *Details panels can have their own customization for each "root object header" in order to customize the look of having multiple top level objects in the details panel. Change 3075369 on 2016/08/03 by Matt.Kuhlenschmidt Removed FBX scene as a top level option in asset filter menu in the content browser. Change 3075556 on 2016/08/03 by Matt.Kuhlenschmidt Mac warning fix Change 3075603 on 2016/08/03 by Nick.Darnell Adding two new plugins to engine, one for editor and one for runtime based testing. Currently the only consumer of these plugins is going to be the EngineTest project. Change 3075605 on 2016/08/03 by Nick.Darnell Functional Testing - Continued work on cleanup, reorganization, trying to improve the workflow for using the session browser. Change 3076084 on 2016/08/03 by Jamie.Dale Added basic support for localizing plugins You can now localize plugins! There's no localization dashboard integration for this so it has to be done manually. You need to define the localization targets your plugin uses in its .uplugin file, eg) "LocalizationTargets": [ { "Name": "Paper2D", "LoadingPolicy": "Always" } ] "Name" should match a localization config under the Config/Localization folder for your plugin. These configs are set-up the same as any other localization config. "LoadingPolicy" may be one of Never, Always, Editor, Game, PropertyNames, or ToolTips. This allows you to control under what conditions your localizations should be loaded (eg, if your plugin has both game and editor data, you can separate the editor data off into its own localization target that's only loaded by the editor). UAT has been updated to support gathering from plugins. You can use the "IncludePlugins" flag to have it gather all plugins, or you can specify a whitelist of plugins to gather as an argument to "IncludePlugins", or alternatively, may blacklist certain plugins via "ExcludePlugins". It can now also support out-of-source gathering via the "UEProjectRoot" argument (previously it assumed that everything would be under the UE4 install/checkout directory). UAT has been updated to support staging plugin LocRes files. It will stage any plugin targets that are enabled for a game/client build, and are also from a plugin that's enabled for your project. #jira UE-4217 Change 3076123 on 2016/08/03 by Stephan.Jiang Extend "Select all input nodes" function to general blueprint editor Change 3077103 on 2016/08/04 by Jamie.Dale Added support for underlined text rendering (including with drop-shadows) FTextBlockStyle can now specify a brush to use to draw an underline for text (a suitable default would be "DefaultTextUnderline" from FCoreStyle). When a brush is specified here, we inject FSlateTextUnderlineLineHighlighter highlights into the text layout to draw the underline under the relevant pieces of text, using the correct color, position, and thickness. FSlateFontCache::GetUnderlineMetrics and FSlateFontRenderer::GetUnderlineMetrics have been added to handle getting the underline metrics (which are slightly different to the baseline). This change also adds FTextLayout::RemoveRunRenderer and FTextLayout::RemoveLineHighlight to fix some bad assumptions that FSlateEditableTextLayout and FTextBlockLayout were making about ownership of run renderers and line highlighters that could cause them to remove instances they didn't own (such as the new underline highlighter) when updating things like the cursor position or highlight. Change 3077842 on 2016/08/04 by Jamie.Dale Fixed fallout from API changes Change 3077999 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 3078000 on 2016/08/04 by Trung.Le Categories VREditor-specific UMG widget assets as "VR Editor" #jira UE-34134 Change 3078056 on 2016/08/04 by Nick.Darnell Build - Fixing a mac compiler warning, reodering constructor initializers. Change 3078813 on 2016/08/05 by Nick.Darnell Reorganizing editor tests, establishing plugins in the EditorTest project that will house the tests. Change 3078818 on 2016/08/05 by Nick.Darnell Additional rename and cleanup associated with test moving. Change 3078819 on 2016/08/05 by Nick.Darnell Removing the Oculus performance automation test, not running, and was unclaimed. Change 3078842 on 2016/08/05 by Nick.Darnell Continued reorganizing tests. Change 3078897 on 2016/08/05 by Nick.Darnell Additional changes to get some moved tests compiling Change 3079157 on 2016/08/05 by Nick.Darnell Making it possible to browse provider names thorugh the source control module interface. Change 3079176 on 2016/08/05 by Stephan.Jiang Add shortcut Ctrl+Shift+Space to rotate through different viewport options #jira UE-34140 Change 3079208 on 2016/08/05 by Stephan.Jiang Fix new animation name check in UMG Change 3079278 on 2016/08/05 by Nick.Darnell Fixing the build Change 3080555 on 2016/08/08 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3081155 on 2016/08/08 by Nick.Darnell Fixing some issues with the editor tests / runtime tests under certain build configs. Change 3081243 on 2016/08/08 by Stephan.Jiang Add gesture in LevelViewport to switch between Top/Bottom...etc. Change 3082226 on 2016/08/09 by Matt.Kuhlenschmidt Work around animations not playing in paragon due to bsp rebuilds (UE-34391) Change 3082254 on 2016/08/09 by Stephan.Jiang DragTool_ViewportChange init changes [CL 3082411 by Matt Kuhlenschmidt in Main branch]
2016-08-09 11:28:56 -04:00
int32 StencilValue = 1;
if(PrimitiveSceneProxy->GetOwnerName() != NAME_BSP)
{
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3082391) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3051464 on 2016/07/15 by Nick.Darnell Regression Testing - Several upgrades to the functional testing system, better tracking of failure cases, some source line failure detection, trying to make it easier to run a specific test on a map. Some UI improvements, easier access to the automation system. Lots more refactoring to come, lots of improvements are still needed in transmitting screenshots and just generally building a automation report we could dump from the build machines. Change 3051465 on 2016/07/15 by Nick.Darnell Adding the "Engine Test" project our one stop shope for running automation tests in the engine to try and reduce regressions. Change 3051847 on 2016/07/15 by Matt.Kuhlenschmidt Fixed material editor viewport messages being blocked by viewport toolbar Change 3052025 on 2016/07/15 by Nick.Darnell Moving the placement mode hooks out of functional testing module, moving them into the editor automation module. Change 3053508 on 2016/07/18 by Stephan.Jiang Copy,Cut,Paste tracks, not for mastertracks yet. #UE-31808 Change 3054723 on 2016/07/18 by Stephan.Jiang Small fixes for typo & comments Change 3055996 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received Change 3056106 on 2016/07/19 by Trung.Le Back out changelist 3055996. Build break. Change 3056108 on 2016/07/19 by Stephan.Jiang Updating "SoundConcurrency" asseticon Change 3056389 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received #jira UE-33339 Change 3056396 on 2016/07/19 by Matt.Kuhlenschmidt More perf selection improvements: - Static meshes now go through the static draw path when rendered for selection outline instead of just rendering using the dynamic path Change 3056758 on 2016/07/19 by Stephan.Jiang Update SelectedWidgets in WidgetblueprintEditor to match the selected tracks in sequencer. Change 3057519 on 2016/07/20 by Matt.Kuhlenschmidt Another fix for selecting lots of objects taking forever. This one is due to repeated Modify calls if there are groups in the selection. Each group actor selected iterates through each object selected during USelection::Modify! Change 3057635 on 2016/07/20 by Stephan.Jiang Updating visual logger icon UI Change 3057645 on 2016/07/20 by Richard.TalbotWatkin 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 3057868 on 2016/07/20 by Richard.TalbotWatkin 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. Change 3057895 on 2016/07/20 by Richard.TalbotWatkin 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 3057966 on 2016/07/20 by Richard.TalbotWatkin Renamed IsEditingArchetype to IsVisualizingArchetype in the ComponentVisualizer API. #jira UE-33049 - Transform widget visible in blueprint viewport when editing spline points in editor viewport Change 3058009 on 2016/07/20 by Richard.TalbotWatkin Fixed build failure due to changes to FComponentVisualizer API, as of CL 3057868. Change 3058047 on 2016/07/20 by Stephan.Jiang Fixing error on previous CL: 3056758 (extra qualification) Change 3058266 on 2016/07/20 by Nick.Darnell Automation - Work continues on automation integrating some ideas form a licensee. Continuing to work on the usability aspects, I've made it possible for tests to provide custom open commands, as well as have complex subclasses that do different things. The functional tests now have a custom open command they emit that makes it so clicking on a test opens not the C++ location where the functional test macro lives, but instead the map, AND focuses the functional test actor. Change 3058282 on 2016/07/20 by Matt.Kuhlenschmidt PR #2611: Fix spurious component diff when properties are in subcategories (Contributed by CA-ADuran) Change 3059214 on 2016/07/21 by Richard.TalbotWatkin Further fixes to visualizers following Component Visualizer API change. Change 3059260 on 2016/07/21 by Richard.TalbotWatkin Template specialization not allowed in class scope, but Visual Studio allows it anyway. Fixed for clang. Change 3059543 on 2016/07/21 by Stephan.Jiang Changeing level details icon Change 3059732 on 2016/07/21 by Stephan.Jiang Directional Light icon update Change 3060095 on 2016/07/21 by Stephan.Jiang Directional Light editor icon asset changed Change 3060129 on 2016/07/21 by Nick.Darnell Automation - The session browser now attempts to select the app instance if no other thing is selected when it refreshes. This is to try and make it easier to use when you first bring it up and nothing is selected when most of the time you're going to use it on your own instance. Change 3061735 on 2016/07/22 by Stephan.Jiang Improve UMG replace with in HierarchyView function #UE-33582 Change 3062059 on 2016/07/22 by Stephan.Jiang Strip off "b" in propertyname in replace with function for tracks. Change 3062146 on 2016/07/22 by Stephan.Jiang checkin with CL: 3061735 Change 3062182 on 2016/07/22 by Stephan.Jiang Change both animation bindings' widget name when renameing the widget so the slot content is still valid Change 3062257 on 2016/07/22 by Stephan.Jiang comments Change 3062381 on 2016/07/22 by Nick.Darnell Build - Adding #undef LOCTEXT_NAMESPACE to try and fix the build. Change 3062924 on 2016/07/25 by Chris.Wood Fix a crash in CrashReportClient that happens when the CrashReportReceiver is not responding to pings and there are no PendingReportDirectories. This is a change in the UE4 stream depot based on a fix in the Fortnite stream depot -> JIRA FORT-27570 Change 3063017 on 2016/07/25 by Matt.Kuhlenschmidt PR #2618: DebuggerCommand not recording PlayLocationString (Contributed by ungalyant) Change 3063021 on 2016/07/25 by Matt.Kuhlenschmidt PR #2619: added a search box to ModuleUI (Contributed by straymist) Change 3063084 on 2016/07/25 by Matt.Kuhlenschmidt Fix "YesToAll" when deleting referenced actors overriding the "YesToAll" state for other referenced messages. https://jira.ol.epicgames.net/browse/UE-33651 #jira UE-33651 Change 3063091 on 2016/07/25 by Alex.Delesky #jira UE-32949 - Truncating the hue inside the theme color block tooltip to only display whole numbers, to match how the color picker displays the hue value inside the hue scrubber. Change 3063388 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Fix large FName creation time when selecting thousands of objects Change 3063568 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Modified how USelection stores classes. Classes are now in a TSet and can be accessed efficiently using IsClassSelected. The old unused way of checking if a selection has a class by iterating through them is deprecated - USelection no longer directly checks if an item is already selected with a costly n^2 search. The check is done by using the already existing UObject selected annotation - Object property nodes no longer perform an n^2 check for object uniqueness when objects are added to details panels. This is now left up to the caller to avoid - Eliminated useless work on FObjectPropertyNode::GetReadAddressUncached. If a read address list is not passed in we'll not attempt to the work to populate it - Removed expensive checking for brush actors when any actor is selected Change 3063749 on 2016/07/25 by Stephan.Jiang Disallow naming the widgetanimation to the same name with a override function in uuserwidget, because it will trigger a breakpoint in Rename() #jira UE-33711 Change 3064585 on 2016/07/26 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3064612 on 2016/07/26 by Alex.Delesky #jira UE-33712 - Deleting many assets at once will now batch SourceControl commands rather than executing one for each asset. Change 3064647 on 2016/07/26 by Alexis.Matte #jira UE-33274 dont hash the same file over and over when importing multiple asset from one fbx file. Change 3064739 on 2016/07/26 by Matt.Kuhlenschmidt Fixed typo Change 3064795 on 2016/07/26 by Jamie.Dale Fixed typo in FLocalizationModule::GetLocalizationTargetByName #jira UE-32961 Change 3066461 on 2016/07/27 by Jamie.Dale Enabled stable localization keys Change 3066463 on 2016/07/27 by Jamie.Dale Set "Build Engine Localization" to upload all cultures to ensure we don't lose translation due to the archive keying changes Change 3066467 on 2016/07/27 by Jamie.Dale Updated internationalization archives to store translations per-identity This allows translators to translate each instance of a piece of text based upon their context, rather than requiring a content producer to go back and give the entry a unique namespace. It also allows us to optionally compile out-of-date translations, as they are now mapped to their source identity (namespace + key) rather than their source text. Major changes: - Added FLocTextHelper. This acts as a high-level API for uncompiled localized text, and replaces all the old ad-hoc loading/saving of manifests and archives, ensuring that everything is consistently using source control, and that older archives can be upgraded correctly to the new format. It also takes care of some of the quirks of our archives, such as native translations. All major localization commandlets have been updated to use FLocTextHelper. - Moved FTextLocalizationResourceGenerator from Core to Internationalization. This also allows IJsonInternationalizationManifestSerializer and IJsonInternationalizationArchiveSerializer to be removed, and for FJsonInternationalizationManifestSerializer and FJsonInternationalizationArchiveSerializer to have all their functions become static. - FTextLocalizationResourceGenerator being moved from Core meant that FTextLocalizationManager::LoadFromManifestAndArchives was also removed. This functionality is now handled by FTextLocalizationResourceGenerator::GenerateAndUpdateLiveEntriesFromConfig. - The RepairLocalizationData commandlet has been removed. This existed to fix a change that pre-dated 4.0 so no such data should exist in the wild, and the commandlet couldn't be updated to work with the new API (we handle format upgrades in-place now). - Removed FInternationalizationArchive::FindEntryBySource as it is no-longer safe to use. All existing code has been updated to use FInternationalizationArchive::FindEntryByKey instead. Workflow changes: - Archive conditioning now only adds new entries if they don't exist in the archive. This allows us to persist any existing translations, even if they're for old source text (caveat: native archives still update existing entries if the source is changed). - PO export now sets the msgctx for each entry to be "namespace,key", rather than only doing it when the entry had key meta-data. - PO import will now update both the source and translation stored in the archive to match the current PO data. This is the primary method by which stale source->translation pairs are updated. - LocRes compilation may now optionally compile stale translations. There's an option controlling this (defaulted to off) that can be changed via the Localization Dashboard (or added to an existing config file). Format changes: - The archive version was bumped to 2. - Archive entries now use the "Key" entry to store the key from the source text. Previously this "Key" entry was used to store the key meta-data, but that now exists within a "MetaData" sub-object. Loading handles this correctly based upon the archive version. #jira UETOOL-897 #jira UETOOL-898 #jira UE-29481 Change 3066487 on 2016/07/27 by Matt.Kuhlenschmidt Attempt to fix linux compilation Change 3066504 on 2016/07/27 by Matt.Kuhlenschmidt Fixed data tables with structs crashing due to recent editor selection optimizations Change 3066886 on 2016/07/27 by Jamie.Dale Added required data to accurately detect TZ (needed for DST) #jira UE-28511 Change 3067122 on 2016/07/27 by Jamie.Dale Added AsTime, AsDateTime, and AsDate overrides to BP to let you format a UTC time in a given timezone (default is the local timezone). Previously you could only format times using the "invariant" timezone, which assumed that the time was already specified in the correct timezone for display. Change 3067227 on 2016/07/27 by Jamie.Dale Added a test to verify that the ICU timezone is set correctly to produce local time (including DST) Change 3067313 on 2016/07/27 by Richard.TalbotWatkin Fixed SplineComponent constructor so that old assets (prior to the property changes) load correctly if they had properties at default values. #jira UE-33669 - Crash in Dev-Editor Change 3067736 on 2016/07/27 by Stephan.Jiang Border changes for experimental classes warning Change 3067769 on 2016/07/27 by Stephan.Jiang HERE BE DRAGONS for experimental class warning #UE-33780 Change 3068192 on 2016/07/28 by Alexis.Matte #jira UE-33586 make sure we remove any false warning when running fbx automation test. Change 3068264 on 2016/07/28 by Jamie.Dale Removed some code that was no longer needed and could cause a crash #jira UE-33342 Change 3068293 on 2016/07/28 by Alex.Delesky #jira UE-33620 - Comments on constant and parameter nodes in the Material Editor will now persist when converting them. Change 3068481 on 2016/07/28 by Stephan.Jiang Adding Options to show/hide soft & hard references & dependencies in References Viewer #jira UE-33746 Change 3068585 on 2016/07/28 by Richard.TalbotWatkin Fix to Spline Mesh collision building so that geometry does not default to being auto-inflated in PhysX. Change 3068701 on 2016/07/28 by Matt.Kuhlenschmidt Fixed some issues with the selected classes not updating when objects are deselected Change 3069335 on 2016/07/28 by Jamie.Dale Fixed unintended error when trying to load a manifest/archive that didn't exist Fixed a warning when trying to load a PO file that didn't exist Change 3069408 on 2016/07/28 by Alex.Delesky #jira UE-33429 - The editor should no longer hit an ensure if the user attempts to drop a tab into a tab well before the tab well has a chance to acknowledge its been dragged into a tab well. Change 3069878 on 2016/07/29 by Jamie.Dale Fixed include casing #jira UE-33910 Change 3071807 on 2016/08/01 by Matt.Kuhlenschmidt PR #2654: Fix the spell'ing of "diff'ing" and "diff'd". (Contributed by geary) Change 3071813 on 2016/08/01 by Jamie.Dale Fixed include casing #jira UE-33936 Change 3072043 on 2016/08/01 by Jamie.Dale Fixed FText formatting of pre-Gregorian dates We now convert to an ICU UDate via an ICU GregorianCalendar, as UE4 and ICU have a different time scale for pre-Gregorian dates. #jira UE-14504 Change 3072066 on 2016/08/01 by Jamie.Dale PR #2590: FEATURE: Collapse/expand folders in the outliner (Contributed by projectgheist) Change 3072149 on 2016/08/01 by Jamie.Dale We no longer use the editor culture when running with -game Change 3072169 on 2016/08/01 by Richard.TalbotWatkin 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 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 3072221 on 2016/08/01 by Jamie.Dale Fixed "Launch On" not providing the correct cultures to StartCookByTheBookInEditor #jira UE-33001 Change 3073389 on 2016/08/02 by Matt.Kuhlenschmidt Added ability to vsync the editor. Disabled by default. Set r.VSyncEditor to 1 to enable it. Reimplemented this change from the siggraph demo stream Change 3073396 on 2016/08/02 by Matt.Kuhlenschmidt Removed unused code as suggested by a pull request Change 3073750 on 2016/08/02 by Richard.TalbotWatkin Fixed formatting (broken in CL 3057895) in anticipation of merge from Main. Change 3073789 on 2016/08/02 by Jamie.Dale Added a way to mark text in text properties as culture invariant This allows you to flag properties containing text that doesn't need to be gathered. #jira UE-33713 Change 3073825 on 2016/08/02 by Stephan.Jiang Material Editor: Highligh all Nodes connect to an input. #jira UE-32502 Change 3073947 on 2016/08/02 by Stephan.Jiang UMG Project settings to show/hide different classes and categories in Palette view. --under Project Settings ->Editor->UMG Editor Change 3074012 on 2016/08/02 by Stephan.Jiang Minor changes and comments for CL: 3073947 Change 3074029 on 2016/08/02 by Jamie.Dale Deleting folders in the Content Browser now removes the folder from disk #jira UE-24303 Change 3074054 on 2016/08/02 by Matt.Kuhlenschmidt Added missing stats to track pooled vertex and index buffer cpu memory A new slate allocator was added to track memory usage for this case. Change 3074056 on 2016/08/02 by Matt.Kuhlenschmidt Renamed a few slate stats for consistency Change 3074810 on 2016/08/02 by Matt.Kuhlenschmidt Moved geometry cache asset type to the animation category. It is not a basic asset type Change 3074826 on 2016/08/02 by Matt.Kuhlenschmidt Fix a few padding and sizing issues Change 3075322 on 2016/08/03 by Matt.Kuhlenschmidt Settings UI improvements * Added the ability to search through all settings at once * Settings files which are not checked out are no longer grayed out. The editor now attempts to check out the file automatically if connected to source control and if that fails it marks the settings file writiable so it can save the setting properly ------- * This change adds a refactor to the details panel to support multiple top level objects existing in the details panel at once instead of combining all passed in objects to a single common base class. This is disabled by default but can be turned on setting bAllowMultipleTopLevelObjects to true in FDetailsViewArgs when creating a details panel. * Each top level object in a details panel will get their own customization instance. This made it necessary to deprecate a IDetailsView::GetBaseClass since there is no longer guaranteed to be one base class. *Details panels can have their own customization for each "root object header" in order to customize the look of having multiple top level objects in the details panel. Change 3075369 on 2016/08/03 by Matt.Kuhlenschmidt Removed FBX scene as a top level option in asset filter menu in the content browser. Change 3075556 on 2016/08/03 by Matt.Kuhlenschmidt Mac warning fix Change 3075603 on 2016/08/03 by Nick.Darnell Adding two new plugins to engine, one for editor and one for runtime based testing. Currently the only consumer of these plugins is going to be the EngineTest project. Change 3075605 on 2016/08/03 by Nick.Darnell Functional Testing - Continued work on cleanup, reorganization, trying to improve the workflow for using the session browser. Change 3076084 on 2016/08/03 by Jamie.Dale Added basic support for localizing plugins You can now localize plugins! There's no localization dashboard integration for this so it has to be done manually. You need to define the localization targets your plugin uses in its .uplugin file, eg) "LocalizationTargets": [ { "Name": "Paper2D", "LoadingPolicy": "Always" } ] "Name" should match a localization config under the Config/Localization folder for your plugin. These configs are set-up the same as any other localization config. "LoadingPolicy" may be one of Never, Always, Editor, Game, PropertyNames, or ToolTips. This allows you to control under what conditions your localizations should be loaded (eg, if your plugin has both game and editor data, you can separate the editor data off into its own localization target that's only loaded by the editor). UAT has been updated to support gathering from plugins. You can use the "IncludePlugins" flag to have it gather all plugins, or you can specify a whitelist of plugins to gather as an argument to "IncludePlugins", or alternatively, may blacklist certain plugins via "ExcludePlugins". It can now also support out-of-source gathering via the "UEProjectRoot" argument (previously it assumed that everything would be under the UE4 install/checkout directory). UAT has been updated to support staging plugin LocRes files. It will stage any plugin targets that are enabled for a game/client build, and are also from a plugin that's enabled for your project. #jira UE-4217 Change 3076123 on 2016/08/03 by Stephan.Jiang Extend "Select all input nodes" function to general blueprint editor Change 3077103 on 2016/08/04 by Jamie.Dale Added support for underlined text rendering (including with drop-shadows) FTextBlockStyle can now specify a brush to use to draw an underline for text (a suitable default would be "DefaultTextUnderline" from FCoreStyle). When a brush is specified here, we inject FSlateTextUnderlineLineHighlighter highlights into the text layout to draw the underline under the relevant pieces of text, using the correct color, position, and thickness. FSlateFontCache::GetUnderlineMetrics and FSlateFontRenderer::GetUnderlineMetrics have been added to handle getting the underline metrics (which are slightly different to the baseline). This change also adds FTextLayout::RemoveRunRenderer and FTextLayout::RemoveLineHighlight to fix some bad assumptions that FSlateEditableTextLayout and FTextBlockLayout were making about ownership of run renderers and line highlighters that could cause them to remove instances they didn't own (such as the new underline highlighter) when updating things like the cursor position or highlight. Change 3077842 on 2016/08/04 by Jamie.Dale Fixed fallout from API changes Change 3077999 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 3078000 on 2016/08/04 by Trung.Le Categories VREditor-specific UMG widget assets as "VR Editor" #jira UE-34134 Change 3078056 on 2016/08/04 by Nick.Darnell Build - Fixing a mac compiler warning, reodering constructor initializers. Change 3078813 on 2016/08/05 by Nick.Darnell Reorganizing editor tests, establishing plugins in the EditorTest project that will house the tests. Change 3078818 on 2016/08/05 by Nick.Darnell Additional rename and cleanup associated with test moving. Change 3078819 on 2016/08/05 by Nick.Darnell Removing the Oculus performance automation test, not running, and was unclaimed. Change 3078842 on 2016/08/05 by Nick.Darnell Continued reorganizing tests. Change 3078897 on 2016/08/05 by Nick.Darnell Additional changes to get some moved tests compiling Change 3079157 on 2016/08/05 by Nick.Darnell Making it possible to browse provider names thorugh the source control module interface. Change 3079176 on 2016/08/05 by Stephan.Jiang Add shortcut Ctrl+Shift+Space to rotate through different viewport options #jira UE-34140 Change 3079208 on 2016/08/05 by Stephan.Jiang Fix new animation name check in UMG Change 3079278 on 2016/08/05 by Nick.Darnell Fixing the build Change 3080555 on 2016/08/08 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3081155 on 2016/08/08 by Nick.Darnell Fixing some issues with the editor tests / runtime tests under certain build configs. Change 3081243 on 2016/08/08 by Stephan.Jiang Add gesture in LevelViewport to switch between Top/Bottom...etc. Change 3082226 on 2016/08/09 by Matt.Kuhlenschmidt Work around animations not playing in paragon due to bsp rebuilds (UE-34391) Change 3082254 on 2016/08/09 by Stephan.Jiang DragTool_ViewportChange init changes [CL 3082411 by Matt Kuhlenschmidt in Main branch]
2016-08-09 11:28:56 -04:00
StencilValue = FEditorSelectionDrawingPolicy::GetStencilValue(View, PrimitiveSceneProxy);
}
// Note that the stencil value will overflow with enough selected objects
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
DrawRenderState.SetDepthStencilState(TStaticDepthStencilState<true, CF_DepthNearOrEqual, true, CF_Always, SO_Keep, SO_Keep, SO_Replace>::GetRHI());
DrawRenderState.SetStencilRef(StencilValue);
const FMeshBatch& MeshBatch = *MeshBatchAndRelevance.Mesh;
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
FHitProxyDrawingPolicyFactory::DrawDynamicMesh(Context.RHICmdList, View, FactoryContext, MeshBatch, true, DrawRenderState, MeshBatchAndRelevance.PrimitiveSceneProxy, MeshBatch.BatchHitProxyId);
}
}
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3082391) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3051464 on 2016/07/15 by Nick.Darnell Regression Testing - Several upgrades to the functional testing system, better tracking of failure cases, some source line failure detection, trying to make it easier to run a specific test on a map. Some UI improvements, easier access to the automation system. Lots more refactoring to come, lots of improvements are still needed in transmitting screenshots and just generally building a automation report we could dump from the build machines. Change 3051465 on 2016/07/15 by Nick.Darnell Adding the "Engine Test" project our one stop shope for running automation tests in the engine to try and reduce regressions. Change 3051847 on 2016/07/15 by Matt.Kuhlenschmidt Fixed material editor viewport messages being blocked by viewport toolbar Change 3052025 on 2016/07/15 by Nick.Darnell Moving the placement mode hooks out of functional testing module, moving them into the editor automation module. Change 3053508 on 2016/07/18 by Stephan.Jiang Copy,Cut,Paste tracks, not for mastertracks yet. #UE-31808 Change 3054723 on 2016/07/18 by Stephan.Jiang Small fixes for typo & comments Change 3055996 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received Change 3056106 on 2016/07/19 by Trung.Le Back out changelist 3055996. Build break. Change 3056108 on 2016/07/19 by Stephan.Jiang Updating "SoundConcurrency" asseticon Change 3056389 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received #jira UE-33339 Change 3056396 on 2016/07/19 by Matt.Kuhlenschmidt More perf selection improvements: - Static meshes now go through the static draw path when rendered for selection outline instead of just rendering using the dynamic path Change 3056758 on 2016/07/19 by Stephan.Jiang Update SelectedWidgets in WidgetblueprintEditor to match the selected tracks in sequencer. Change 3057519 on 2016/07/20 by Matt.Kuhlenschmidt Another fix for selecting lots of objects taking forever. This one is due to repeated Modify calls if there are groups in the selection. Each group actor selected iterates through each object selected during USelection::Modify! Change 3057635 on 2016/07/20 by Stephan.Jiang Updating visual logger icon UI Change 3057645 on 2016/07/20 by Richard.TalbotWatkin 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 3057868 on 2016/07/20 by Richard.TalbotWatkin 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. Change 3057895 on 2016/07/20 by Richard.TalbotWatkin 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 3057966 on 2016/07/20 by Richard.TalbotWatkin Renamed IsEditingArchetype to IsVisualizingArchetype in the ComponentVisualizer API. #jira UE-33049 - Transform widget visible in blueprint viewport when editing spline points in editor viewport Change 3058009 on 2016/07/20 by Richard.TalbotWatkin Fixed build failure due to changes to FComponentVisualizer API, as of CL 3057868. Change 3058047 on 2016/07/20 by Stephan.Jiang Fixing error on previous CL: 3056758 (extra qualification) Change 3058266 on 2016/07/20 by Nick.Darnell Automation - Work continues on automation integrating some ideas form a licensee. Continuing to work on the usability aspects, I've made it possible for tests to provide custom open commands, as well as have complex subclasses that do different things. The functional tests now have a custom open command they emit that makes it so clicking on a test opens not the C++ location where the functional test macro lives, but instead the map, AND focuses the functional test actor. Change 3058282 on 2016/07/20 by Matt.Kuhlenschmidt PR #2611: Fix spurious component diff when properties are in subcategories (Contributed by CA-ADuran) Change 3059214 on 2016/07/21 by Richard.TalbotWatkin Further fixes to visualizers following Component Visualizer API change. Change 3059260 on 2016/07/21 by Richard.TalbotWatkin Template specialization not allowed in class scope, but Visual Studio allows it anyway. Fixed for clang. Change 3059543 on 2016/07/21 by Stephan.Jiang Changeing level details icon Change 3059732 on 2016/07/21 by Stephan.Jiang Directional Light icon update Change 3060095 on 2016/07/21 by Stephan.Jiang Directional Light editor icon asset changed Change 3060129 on 2016/07/21 by Nick.Darnell Automation - The session browser now attempts to select the app instance if no other thing is selected when it refreshes. This is to try and make it easier to use when you first bring it up and nothing is selected when most of the time you're going to use it on your own instance. Change 3061735 on 2016/07/22 by Stephan.Jiang Improve UMG replace with in HierarchyView function #UE-33582 Change 3062059 on 2016/07/22 by Stephan.Jiang Strip off "b" in propertyname in replace with function for tracks. Change 3062146 on 2016/07/22 by Stephan.Jiang checkin with CL: 3061735 Change 3062182 on 2016/07/22 by Stephan.Jiang Change both animation bindings' widget name when renameing the widget so the slot content is still valid Change 3062257 on 2016/07/22 by Stephan.Jiang comments Change 3062381 on 2016/07/22 by Nick.Darnell Build - Adding #undef LOCTEXT_NAMESPACE to try and fix the build. Change 3062924 on 2016/07/25 by Chris.Wood Fix a crash in CrashReportClient that happens when the CrashReportReceiver is not responding to pings and there are no PendingReportDirectories. This is a change in the UE4 stream depot based on a fix in the Fortnite stream depot -> JIRA FORT-27570 Change 3063017 on 2016/07/25 by Matt.Kuhlenschmidt PR #2618: DebuggerCommand not recording PlayLocationString (Contributed by ungalyant) Change 3063021 on 2016/07/25 by Matt.Kuhlenschmidt PR #2619: added a search box to ModuleUI (Contributed by straymist) Change 3063084 on 2016/07/25 by Matt.Kuhlenschmidt Fix "YesToAll" when deleting referenced actors overriding the "YesToAll" state for other referenced messages. https://jira.ol.epicgames.net/browse/UE-33651 #jira UE-33651 Change 3063091 on 2016/07/25 by Alex.Delesky #jira UE-32949 - Truncating the hue inside the theme color block tooltip to only display whole numbers, to match how the color picker displays the hue value inside the hue scrubber. Change 3063388 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Fix large FName creation time when selecting thousands of objects Change 3063568 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Modified how USelection stores classes. Classes are now in a TSet and can be accessed efficiently using IsClassSelected. The old unused way of checking if a selection has a class by iterating through them is deprecated - USelection no longer directly checks if an item is already selected with a costly n^2 search. The check is done by using the already existing UObject selected annotation - Object property nodes no longer perform an n^2 check for object uniqueness when objects are added to details panels. This is now left up to the caller to avoid - Eliminated useless work on FObjectPropertyNode::GetReadAddressUncached. If a read address list is not passed in we'll not attempt to the work to populate it - Removed expensive checking for brush actors when any actor is selected Change 3063749 on 2016/07/25 by Stephan.Jiang Disallow naming the widgetanimation to the same name with a override function in uuserwidget, because it will trigger a breakpoint in Rename() #jira UE-33711 Change 3064585 on 2016/07/26 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3064612 on 2016/07/26 by Alex.Delesky #jira UE-33712 - Deleting many assets at once will now batch SourceControl commands rather than executing one for each asset. Change 3064647 on 2016/07/26 by Alexis.Matte #jira UE-33274 dont hash the same file over and over when importing multiple asset from one fbx file. Change 3064739 on 2016/07/26 by Matt.Kuhlenschmidt Fixed typo Change 3064795 on 2016/07/26 by Jamie.Dale Fixed typo in FLocalizationModule::GetLocalizationTargetByName #jira UE-32961 Change 3066461 on 2016/07/27 by Jamie.Dale Enabled stable localization keys Change 3066463 on 2016/07/27 by Jamie.Dale Set "Build Engine Localization" to upload all cultures to ensure we don't lose translation due to the archive keying changes Change 3066467 on 2016/07/27 by Jamie.Dale Updated internationalization archives to store translations per-identity This allows translators to translate each instance of a piece of text based upon their context, rather than requiring a content producer to go back and give the entry a unique namespace. It also allows us to optionally compile out-of-date translations, as they are now mapped to their source identity (namespace + key) rather than their source text. Major changes: - Added FLocTextHelper. This acts as a high-level API for uncompiled localized text, and replaces all the old ad-hoc loading/saving of manifests and archives, ensuring that everything is consistently using source control, and that older archives can be upgraded correctly to the new format. It also takes care of some of the quirks of our archives, such as native translations. All major localization commandlets have been updated to use FLocTextHelper. - Moved FTextLocalizationResourceGenerator from Core to Internationalization. This also allows IJsonInternationalizationManifestSerializer and IJsonInternationalizationArchiveSerializer to be removed, and for FJsonInternationalizationManifestSerializer and FJsonInternationalizationArchiveSerializer to have all their functions become static. - FTextLocalizationResourceGenerator being moved from Core meant that FTextLocalizationManager::LoadFromManifestAndArchives was also removed. This functionality is now handled by FTextLocalizationResourceGenerator::GenerateAndUpdateLiveEntriesFromConfig. - The RepairLocalizationData commandlet has been removed. This existed to fix a change that pre-dated 4.0 so no such data should exist in the wild, and the commandlet couldn't be updated to work with the new API (we handle format upgrades in-place now). - Removed FInternationalizationArchive::FindEntryBySource as it is no-longer safe to use. All existing code has been updated to use FInternationalizationArchive::FindEntryByKey instead. Workflow changes: - Archive conditioning now only adds new entries if they don't exist in the archive. This allows us to persist any existing translations, even if they're for old source text (caveat: native archives still update existing entries if the source is changed). - PO export now sets the msgctx for each entry to be "namespace,key", rather than only doing it when the entry had key meta-data. - PO import will now update both the source and translation stored in the archive to match the current PO data. This is the primary method by which stale source->translation pairs are updated. - LocRes compilation may now optionally compile stale translations. There's an option controlling this (defaulted to off) that can be changed via the Localization Dashboard (or added to an existing config file). Format changes: - The archive version was bumped to 2. - Archive entries now use the "Key" entry to store the key from the source text. Previously this "Key" entry was used to store the key meta-data, but that now exists within a "MetaData" sub-object. Loading handles this correctly based upon the archive version. #jira UETOOL-897 #jira UETOOL-898 #jira UE-29481 Change 3066487 on 2016/07/27 by Matt.Kuhlenschmidt Attempt to fix linux compilation Change 3066504 on 2016/07/27 by Matt.Kuhlenschmidt Fixed data tables with structs crashing due to recent editor selection optimizations Change 3066886 on 2016/07/27 by Jamie.Dale Added required data to accurately detect TZ (needed for DST) #jira UE-28511 Change 3067122 on 2016/07/27 by Jamie.Dale Added AsTime, AsDateTime, and AsDate overrides to BP to let you format a UTC time in a given timezone (default is the local timezone). Previously you could only format times using the "invariant" timezone, which assumed that the time was already specified in the correct timezone for display. Change 3067227 on 2016/07/27 by Jamie.Dale Added a test to verify that the ICU timezone is set correctly to produce local time (including DST) Change 3067313 on 2016/07/27 by Richard.TalbotWatkin Fixed SplineComponent constructor so that old assets (prior to the property changes) load correctly if they had properties at default values. #jira UE-33669 - Crash in Dev-Editor Change 3067736 on 2016/07/27 by Stephan.Jiang Border changes for experimental classes warning Change 3067769 on 2016/07/27 by Stephan.Jiang HERE BE DRAGONS for experimental class warning #UE-33780 Change 3068192 on 2016/07/28 by Alexis.Matte #jira UE-33586 make sure we remove any false warning when running fbx automation test. Change 3068264 on 2016/07/28 by Jamie.Dale Removed some code that was no longer needed and could cause a crash #jira UE-33342 Change 3068293 on 2016/07/28 by Alex.Delesky #jira UE-33620 - Comments on constant and parameter nodes in the Material Editor will now persist when converting them. Change 3068481 on 2016/07/28 by Stephan.Jiang Adding Options to show/hide soft & hard references & dependencies in References Viewer #jira UE-33746 Change 3068585 on 2016/07/28 by Richard.TalbotWatkin Fix to Spline Mesh collision building so that geometry does not default to being auto-inflated in PhysX. Change 3068701 on 2016/07/28 by Matt.Kuhlenschmidt Fixed some issues with the selected classes not updating when objects are deselected Change 3069335 on 2016/07/28 by Jamie.Dale Fixed unintended error when trying to load a manifest/archive that didn't exist Fixed a warning when trying to load a PO file that didn't exist Change 3069408 on 2016/07/28 by Alex.Delesky #jira UE-33429 - The editor should no longer hit an ensure if the user attempts to drop a tab into a tab well before the tab well has a chance to acknowledge its been dragged into a tab well. Change 3069878 on 2016/07/29 by Jamie.Dale Fixed include casing #jira UE-33910 Change 3071807 on 2016/08/01 by Matt.Kuhlenschmidt PR #2654: Fix the spell'ing of "diff'ing" and "diff'd". (Contributed by geary) Change 3071813 on 2016/08/01 by Jamie.Dale Fixed include casing #jira UE-33936 Change 3072043 on 2016/08/01 by Jamie.Dale Fixed FText formatting of pre-Gregorian dates We now convert to an ICU UDate via an ICU GregorianCalendar, as UE4 and ICU have a different time scale for pre-Gregorian dates. #jira UE-14504 Change 3072066 on 2016/08/01 by Jamie.Dale PR #2590: FEATURE: Collapse/expand folders in the outliner (Contributed by projectgheist) Change 3072149 on 2016/08/01 by Jamie.Dale We no longer use the editor culture when running with -game Change 3072169 on 2016/08/01 by Richard.TalbotWatkin 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 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 3072221 on 2016/08/01 by Jamie.Dale Fixed "Launch On" not providing the correct cultures to StartCookByTheBookInEditor #jira UE-33001 Change 3073389 on 2016/08/02 by Matt.Kuhlenschmidt Added ability to vsync the editor. Disabled by default. Set r.VSyncEditor to 1 to enable it. Reimplemented this change from the siggraph demo stream Change 3073396 on 2016/08/02 by Matt.Kuhlenschmidt Removed unused code as suggested by a pull request Change 3073750 on 2016/08/02 by Richard.TalbotWatkin Fixed formatting (broken in CL 3057895) in anticipation of merge from Main. Change 3073789 on 2016/08/02 by Jamie.Dale Added a way to mark text in text properties as culture invariant This allows you to flag properties containing text that doesn't need to be gathered. #jira UE-33713 Change 3073825 on 2016/08/02 by Stephan.Jiang Material Editor: Highligh all Nodes connect to an input. #jira UE-32502 Change 3073947 on 2016/08/02 by Stephan.Jiang UMG Project settings to show/hide different classes and categories in Palette view. --under Project Settings ->Editor->UMG Editor Change 3074012 on 2016/08/02 by Stephan.Jiang Minor changes and comments for CL: 3073947 Change 3074029 on 2016/08/02 by Jamie.Dale Deleting folders in the Content Browser now removes the folder from disk #jira UE-24303 Change 3074054 on 2016/08/02 by Matt.Kuhlenschmidt Added missing stats to track pooled vertex and index buffer cpu memory A new slate allocator was added to track memory usage for this case. Change 3074056 on 2016/08/02 by Matt.Kuhlenschmidt Renamed a few slate stats for consistency Change 3074810 on 2016/08/02 by Matt.Kuhlenschmidt Moved geometry cache asset type to the animation category. It is not a basic asset type Change 3074826 on 2016/08/02 by Matt.Kuhlenschmidt Fix a few padding and sizing issues Change 3075322 on 2016/08/03 by Matt.Kuhlenschmidt Settings UI improvements * Added the ability to search through all settings at once * Settings files which are not checked out are no longer grayed out. The editor now attempts to check out the file automatically if connected to source control and if that fails it marks the settings file writiable so it can save the setting properly ------- * This change adds a refactor to the details panel to support multiple top level objects existing in the details panel at once instead of combining all passed in objects to a single common base class. This is disabled by default but can be turned on setting bAllowMultipleTopLevelObjects to true in FDetailsViewArgs when creating a details panel. * Each top level object in a details panel will get their own customization instance. This made it necessary to deprecate a IDetailsView::GetBaseClass since there is no longer guaranteed to be one base class. *Details panels can have their own customization for each "root object header" in order to customize the look of having multiple top level objects in the details panel. Change 3075369 on 2016/08/03 by Matt.Kuhlenschmidt Removed FBX scene as a top level option in asset filter menu in the content browser. Change 3075556 on 2016/08/03 by Matt.Kuhlenschmidt Mac warning fix Change 3075603 on 2016/08/03 by Nick.Darnell Adding two new plugins to engine, one for editor and one for runtime based testing. Currently the only consumer of these plugins is going to be the EngineTest project. Change 3075605 on 2016/08/03 by Nick.Darnell Functional Testing - Continued work on cleanup, reorganization, trying to improve the workflow for using the session browser. Change 3076084 on 2016/08/03 by Jamie.Dale Added basic support for localizing plugins You can now localize plugins! There's no localization dashboard integration for this so it has to be done manually. You need to define the localization targets your plugin uses in its .uplugin file, eg) "LocalizationTargets": [ { "Name": "Paper2D", "LoadingPolicy": "Always" } ] "Name" should match a localization config under the Config/Localization folder for your plugin. These configs are set-up the same as any other localization config. "LoadingPolicy" may be one of Never, Always, Editor, Game, PropertyNames, or ToolTips. This allows you to control under what conditions your localizations should be loaded (eg, if your plugin has both game and editor data, you can separate the editor data off into its own localization target that's only loaded by the editor). UAT has been updated to support gathering from plugins. You can use the "IncludePlugins" flag to have it gather all plugins, or you can specify a whitelist of plugins to gather as an argument to "IncludePlugins", or alternatively, may blacklist certain plugins via "ExcludePlugins". It can now also support out-of-source gathering via the "UEProjectRoot" argument (previously it assumed that everything would be under the UE4 install/checkout directory). UAT has been updated to support staging plugin LocRes files. It will stage any plugin targets that are enabled for a game/client build, and are also from a plugin that's enabled for your project. #jira UE-4217 Change 3076123 on 2016/08/03 by Stephan.Jiang Extend "Select all input nodes" function to general blueprint editor Change 3077103 on 2016/08/04 by Jamie.Dale Added support for underlined text rendering (including with drop-shadows) FTextBlockStyle can now specify a brush to use to draw an underline for text (a suitable default would be "DefaultTextUnderline" from FCoreStyle). When a brush is specified here, we inject FSlateTextUnderlineLineHighlighter highlights into the text layout to draw the underline under the relevant pieces of text, using the correct color, position, and thickness. FSlateFontCache::GetUnderlineMetrics and FSlateFontRenderer::GetUnderlineMetrics have been added to handle getting the underline metrics (which are slightly different to the baseline). This change also adds FTextLayout::RemoveRunRenderer and FTextLayout::RemoveLineHighlight to fix some bad assumptions that FSlateEditableTextLayout and FTextBlockLayout were making about ownership of run renderers and line highlighters that could cause them to remove instances they didn't own (such as the new underline highlighter) when updating things like the cursor position or highlight. Change 3077842 on 2016/08/04 by Jamie.Dale Fixed fallout from API changes Change 3077999 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 3078000 on 2016/08/04 by Trung.Le Categories VREditor-specific UMG widget assets as "VR Editor" #jira UE-34134 Change 3078056 on 2016/08/04 by Nick.Darnell Build - Fixing a mac compiler warning, reodering constructor initializers. Change 3078813 on 2016/08/05 by Nick.Darnell Reorganizing editor tests, establishing plugins in the EditorTest project that will house the tests. Change 3078818 on 2016/08/05 by Nick.Darnell Additional rename and cleanup associated with test moving. Change 3078819 on 2016/08/05 by Nick.Darnell Removing the Oculus performance automation test, not running, and was unclaimed. Change 3078842 on 2016/08/05 by Nick.Darnell Continued reorganizing tests. Change 3078897 on 2016/08/05 by Nick.Darnell Additional changes to get some moved tests compiling Change 3079157 on 2016/08/05 by Nick.Darnell Making it possible to browse provider names thorugh the source control module interface. Change 3079176 on 2016/08/05 by Stephan.Jiang Add shortcut Ctrl+Shift+Space to rotate through different viewport options #jira UE-34140 Change 3079208 on 2016/08/05 by Stephan.Jiang Fix new animation name check in UMG Change 3079278 on 2016/08/05 by Nick.Darnell Fixing the build Change 3080555 on 2016/08/08 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3081155 on 2016/08/08 by Nick.Darnell Fixing some issues with the editor tests / runtime tests under certain build configs. Change 3081243 on 2016/08/08 by Stephan.Jiang Add gesture in LevelViewport to switch between Top/Bottom...etc. Change 3082226 on 2016/08/09 by Matt.Kuhlenschmidt Work around animations not playing in paragon due to bsp rebuilds (UE-34391) Change 3082254 on 2016/08/09 by Stephan.Jiang DragTool_ViewportChange init changes [CL 3082411 by Matt Kuhlenschmidt in Main branch]
2016-08-09 11:28:56 -04:00
// to get an outline around the objects if it's partly outside of the screen
{
FIntRect InnerRect = ViewRect;
// 1 as we have an outline that is that thick
InnerRect.InflateRect(-1);
// We could use Clear with InnerRect but this is just an optimization - on some hardware it might do a full clear (and we cannot disable yet)
// RHICmdList.Clear(false, FLinearColor(0, 0, 0, 0), true, 0.0f, true, 0, InnerRect);
// so we to 4 clears - one for each border.
// top
Context.RHICmdList.SetScissorRect(true, ViewRect.Min.X, ViewRect.Min.Y, ViewRect.Max.X, InnerRect.Min.Y);
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3249742) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3232283 on 2016/12/13 by Ben.Woodhouse D3D12 - downgrade root signature size warning to a log following a discussion with Microsoft. There's not much we can actually do about it, and it's not relevant to all hardware #jira UE-36999 Change 3232641 on 2016/12/13 by Mark.Satterthwaite - Eliminate redundant state changes in MetalRHI in the state cache. - Add a new debug level for setting buffers to nil prior to calls to set*Bytes so that the tool doesn't display incorrect data. - Make testing for validation & statistics features use the same EMetalFeatures API as everything else for consistency. - Cache the fallback depth-stencil texture in the state cache and ignore it for determining whether a pass can restart - if we are using this texture its contents are worthless anyway. Change 3232661 on 2016/12/13 by Mark.Satterthwaite Re-enable Metal SM5 & DFAO/DistanceFieldShadowing on Intel for 10.12.2 or later. Change 3232759 on 2016/12/13 by Ben.Woodhouse Fix memory leak on XB1 when calling GPURealloc with count of 0, suggested on UDN https://udn.unrealengine.com/questions/326660/gpurealloc-leak.html Change 3232803 on 2016/12/13 by Ben.Marsh Add UT to the populate DDC job, and cook UT and Fortnite for Mac as well. Change 3232836 on 2016/12/13 by Ben.Marsh Split cooks to populate DDC into separate nodes for each platform. May help to reduce number of timeouts on remote VMs. Change 3232974 on 2016/12/13 by Rolando.Caloca DR - Refactor common code to UWorld::RecreateScene #jira UE-36719 PR #2824 Change 3232976 on 2016/12/13 by Ben.Marsh Add missing dependency on tools node for Mac cooks. Need to compile SCW first. Change 3233289 on 2016/12/13 by Olaf.Piesche Fixing potentially broken spot/point light fade with old content; initialize new properties properly Change 3233811 on 2016/12/13 by Mark.Satterthwaite Fix compiling QA-Material tessellation shaders that don't need to emit from Hull or sample in Domain the HSOut buffer which was confusing MetalBackend. Change 3233854 on 2016/12/13 by Mark.Satterthwaite More information about texture type validation errors in Metal. Change 3234650 on 2016/12/14 by Rolando.Caloca DR - vk - Fix bad aspect on depth cubemaps Change 3234651 on 2016/12/14 by Rolando.Caloca DR - vk - Fix for 32 bit crash on dump layer Change 3234813 on 2016/12/14 by Guillaume.Abadie Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3235047 on 2016/12/14 by Uriel.Doyon Refactored HLOD texture streaming strategy to separate forced load from visibility. Added an incremental update in the last stage of the texture streaming update load to clear any pending work. Added an option "All" to the "BuildMateriaTexturelStreamingData" command to force rebuild everything. Change 3235317 on 2016/12/14 by Uriel.Doyon Removed timed primitives in the texture streaming since it was not used and there is now a fallback implementation in UPrimitiveComponent::GetStreamingTextureInfo. Change 3235431 on 2016/12/14 by Rolando.Caloca DR - Fix for Vulkan drawing black Change 3236788 on 2016/12/15 by Mark.Satterthwaite Fix 10.11.6 support (aka -nometalv2): the stencil view workaround necessitates a mid-render blit and the way things were setup resulted in the HasValidRenderTargets assert firing. Refactored the code to separate the concept or valid render-states in the cache from active render-states in the render-pass. Now it works as intended and will be needed for 4.15. Change 3236850 on 2016/12/15 by Mark.Satterthwaite Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3237002 on 2016/12/15 by Benjamin.Hyder submitting updated TM-Shadermodels map Change 3237312 on 2016/12/15 by Rolando.Caloca DR - Change more macros to lambdas Change 3237394 on 2016/12/15 by Mark.Satterthwaite Add Metal-specific permutations of TBasePassHS - they affect the C++ definition on all platforms but are only cached or used on Metal - because the way we compile the combined VS+HS tessellation stage requires that the combined VS + HS HLSL code references the same resources, otherwise we get incorrect resouce bindings and subsequently fail to render properly. Long-term the Metal tessellation code will need to be refactored so that the vertex shader stage is emitted as a separate shader from the hull shader stage as this but will keep cropping back up and continue to complicate the engine. #jira UE-39799 Change 3237490 on 2016/12/15 by Daniel.Wright Fixed ULandscapeComponent::GetUsedMaterials Change 3237597 on 2016/12/15 by Ben.Woodhouse Disable timestamp queries on pre-Maxwell nvidia hardware. Local testing suggests that this is the major cause of instability in the UE4.14 release. It's possible that we could be more targeted by only excluding Fermi and older hardware, but identifying fermi hardware by device ID is difficult in practice, since the range overlaps with Kepler. Change 3237654 on 2016/12/15 by Daniel.Wright Non-editor compile fix Change 3238229 on 2016/12/16 by Rolando.Caloca DR - Remove ExcludeRect from inner RHI Clear methods; ensure will happen if trying to use it Change 3238236 on 2016/12/16 by Rolando.Caloca DR - Compile fixes Change 3238280 on 2016/12/16 by Marc.Olano Small optimization to Lanczos-3 upsample shader code. Change 3238321 on 2016/12/16 by Rolando.Caloca DR - Compile fix Change 3238331 on 2016/12/16 by Rolando.Caloca DR - compile fix Change 3238495 on 2016/12/16 by Marc.Olano Replace TEA random number generator with PCG. Was only used in #if-disabled reference rendering, but ldoes make better quality reference rendering when enabled. Change 3238496 on 2016/12/16 by Marc.Olano Tone mapping fix for OR-31752, cherry picked from Orion 3208273 Assumption that green is approximates luminance fails on red/blue HDR content, resulting in ugly black artifacts. Go back to luminance. Change 3238520 on 2016/12/16 by Rolando.Caloca DR - CIS Fix Change 3238571 on 2016/12/16 by Rolando.Caloca DR - CIS fix Change 3238605 on 2016/12/16 by Daniel.Wright Sharing IndirectLightingCacheTextureSampler samplers Change 3238626 on 2016/12/16 by Daniel.Wright Ray Traced Distance Field Shadow optimizations * Tighter light space tile culling * Skip ray marching pixels before the RTDF cascade near distance, or further than the cascade far distance * Depth bounds test on upsample * Created FLightTileIntersectionParameters for encapsulation of light tile culling functionality * RTDF shadow time went from 1.8ms -> .8ms and 3.1ms -> 1.2ms in FortGPUTestbed on 7870 with these changes Change 3238652 on 2016/12/16 by Rolando.Caloca DR - RHI clear methods no longer have an ExcludeRect, use DrawClearQuad functions instead Change 3238855 on 2016/12/16 by Rolando.Caloca DR - Added FRHITexture2D GetSizeXY Change 3238881 on 2016/12/16 by Rolando.Caloca DR - CIS fix Change 3239008 on 2016/12/16 by Arne.Schober DR - Fixing accidently returning a stackpointer in EnqueueRenderCommands Change 3239012 on 2016/12/16 by Arne.Schober DR - missing file Change 3239255 on 2016/12/17 by Rolando.Caloca DR - Remove shader clears from D3D11 Change 3239690 on 2016/12/19 by Rolando.Caloca DR - vk - Misc fixes from 1.0.37.00 SDK warnings Change 3239964 on 2016/12/19 by Rolando.Caloca DR - Fix click on editor not showing selected Change 3239995 on 2016/12/19 by Rolando.Caloca DR - Enable dist field on GL4 & Vulkan SM5 Change 3240162 on 2016/12/19 by Daniel.Wright Added EnableDepthBoundsTest / DisableDepthBoundsTest to RHIUtilites to share some common code Change 3240163 on 2016/12/19 by Daniel.Wright Distance field self shadowing controls for hiding world position offset self-shadow artifacts * Removed static mesh build settings DistanceFieldBias, which shrunk the distance field, breaking AO and shadows * Added DistanceFieldSelfShadowBias, which prevents occlusion close to the surface only, maintaining shadows on the ground and AO on the ground Change 3240271 on 2016/12/19 by Daniel.Wright Use 16 bit indices for distance field objects culled to tiles, when 16 bit will be enough. Saves 10mb of tile culling buffers. Change 3240282 on 2016/12/19 by Rolando.Caloca DR - Proper fix for hit proxies clear - Added missing stencil ref to DrawClearQuad Change 3240316 on 2016/12/19 by Rolando.Caloca DR - vk - Fixed some new 1.0.37.0 warnings Change 3240354 on 2016/12/19 by Rolando.Caloca DR - Dev shaders on sm4/5 Change 3240759 on 2016/12/20 by Rolando.Caloca DR - Fix bad crc on GL element declarations Change 3240895 on 2016/12/20 by Rolando.Caloca DR - vk - Swapchain fixes Change 3241057 on 2016/12/20 by Rolando.Caloca DR - vk - Fix resize on desktop Change 3241112 on 2016/12/20 by Rolando.Caloca DR - vk - Fix 1.0.37.0 warnings - Ignore some warnings we know we can't fix Change 3241310 on 2016/12/20 by Rolando.Caloca DR - vk - Fix crash Change 3241417 on 2016/12/20 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios Change 3241990 on 2016/12/21 by Daniel.Wright Converted DistanceFieldVolume data to BulkData * FDistanceFieldVolumeData Serialize time from .7s on PS4 to 0s Change 3242005 on 2016/12/21 by Daniel.Wright Removed unused !USE_DEPTH_RANGE_LISTS path to reduce complexity Change 3242295 on 2016/12/21 by Bob.Tellez Duplicating CL#3242294 from //Fortnite/Main #UE4 Re-applying the fix for rendering editor primitives when r.EarlyZPassOnlyMaterialMasking is enabled Change 3242487 on 2016/12/21 by Marcus.Wassmer Fix typo Change 3243091 on 2016/12/22 by Daniel.Wright Fixed too many groups dispatched for TConeTraceScreenGridGlobalOcclusionCS Change 3243161 on 2016/12/22 by Uriel.Doyon New async tasks for the streaming update. Optimizing the biggest frame cost. Change 3243179 on 2016/12/22 by Uriel.Doyon Fixed possible invalid access from the async FNormalizeLightmapTexelFactorTask Change 3243236 on 2016/12/22 by Daniel.Wright Fixed DFAO bilateral upsample * Depth buffer was being unbound due to lack of DepthRead_StencilNop Change 3243452 on 2016/12/23 by Ben.Woodhouse Bring back 1024 render query limit workaround on D3D12 which was lost during the merge from partners #jira UE-35247 Change 3243512 on 2016/12/23 by Uriel.Doyon Improved task system for texture streaming. Change 3243742 on 2016/12/26 by Rolando.Caloca DR - vk - Fix UAV clears - Removed old validation layer - Print found device layers Change 3243745 on 2016/12/27 by Rolando.Caloca DR - vk - Fix for texture cube arrays - Warning for ClearUAVs Change 3243762 on 2016/12/27 by Rolando.Caloca DR - vk - Always use pipeline cache Change 3244450 on 2016/12/31 by Rolando.Caloca DR - vk - Pre reqs for separate transfer queue Change 3244453 on 2016/12/31 by Rolando.Caloca DR - vk - Win32 compile fix Change 3244756 on 2017/01/03 by Marcus.Wassmer Copying //Tasks/UE4/Dev-Niagara@3244743 to Dev-Rendering (//UE4/Dev-Rendering) Change 3244757 on 2017/01/03 by Marcus.Wassmer Niagara is still experimental in non-task branches. Change 3245059 on 2017/01/03 by Benjamin.Hyder Submitting TM-TrigNodes map Change 3245500 on 2017/01/03 by Olaf.Piesche Compile fix #1 for post-merge problems Change 3245572 on 2017/01/03 by Olaf.Piesche (Speculative) fix #2 for post-merge build problem. Hopefully fixes public distribution level error for cross compiler tool. Change 3245683 on 2017/01/03 by Marcus.Wassmer Fix some niagara warnings Change 3245732 on 2017/01/03 by Marcus.Wassmer Fix Niagara compile on clang platforms. Fix a few warnings / static analysis things as well. Change 3246403 on 2017/01/04 by Rolando.Caloca DR - vk - Fix bogus warning Change 3246432 on 2017/01/04 by Marcus.Wassmer Copying //Tasks/UE4/Dev-Niagara@3246424 to Dev-Rendering (//UE4/Dev-Rendering) Change 3246538 on 2017/01/04 by Rolando.Caloca DR - vk - Show hitch time for compute psos Change 3246580 on 2017/01/04 by Rolando.Caloca DR - vk - compile fix Change 3246610 on 2017/01/04 by Rolando.Caloca DR - Compute PSO pre reqs Change 3246707 on 2017/01/04 by Marcus.Wassmer Add missing integer operations to UnrealMathDirectX.h Change 3246786 on 2017/01/04 by Marcus.Wassmer Avoid public dependency build errors. Should probably just remove the DDCUtils module instead Change 3246828 on 2017/01/04 by Olaf.Piesche UE-39249; need to check the view as well as the view family in CheckAndUpdateLastFrame; scene captures use a different family, but each eye for VR uses a different scene view. Change 3247026 on 2017/01/04 by Rolando.Caloca DR - Remove CrossCompilerTool as it's not required anymore Change 3247086 on 2017/01/04 by Marcus.Wassmer Remove includes for Core.h monolithic header Change 3247227 on 2017/01/04 by Marcus.Wassmer Fix typo and compile errors. Change 3247228 on 2017/01/04 by Marcus.Wassmer Use crossplatform intrinsics Change 3247229 on 2017/01/04 by Marcus.Wassmer Implement missing integer NEON operations. Change NEON vectorint to match name and sign from other platforms Change 3247245 on 2017/01/04 by Marcus.Wassmer Fixing various warnings/errors from clang platforms (Mac/Linux) Change 3247331 on 2017/01/04 by Marcus.Wassmer More Mac/clang fixes Change 3247958 on 2017/01/05 by Marcus.Wassmer VectorInt < - > Float ops should be conversions not reinterpret cast Change 3247959 on 2017/01/05 by Marcus.Wassmer Add missing ops to non-vector header Change 3247964 on 2017/01/05 by Rolando.Caloca DR - Temp fix for crash #jira UE-40211 Change 3248067 on 2017/01/05 by Rolando.Caloca DR - Static analysis fixes #jira UE-40167 Change 3248284 on 2017/01/05 by Rolando.Caloca DR - Linuix Compile fix #jira UE-40260 Change 3248288 on 2017/01/05 by Rolando.Caloca DR - Linux compile fix #jira UE-40264 Change 3248399 on 2017/01/05 by Brian.Karis Filtered importance sampling for envmap prefiltering. Fixed SSR on clearcoat with skylight only. Change 3248503 on 2017/01/05 by Rolando.Caloca DR - Linux fixes #jira UE-40264 Change 3248666 on 2017/01/05 by Brian.Karis Fix GL compile error Change 3248740 on 2017/01/05 by Marcus.Wassmer Fix linux and clang errors/warnings Change 3248851 on 2017/01/05 by Marcus.Wassmer Simplest fix for ES2 compile errors Change 3249217 on 2017/01/06 by Simon.Tovey Speculative fix for static analysis warning Change 3249296 on 2017/01/06 by Ben.Woodhouse XB1/Fast semantics: Add missing L1/L2 cache flush on transition to readable (or RW). The missing cache flush was causing indeterminism when reading from a texture shortly after writing to it as a render target. This fixes bloom and diffuse irradiance issues The bug has been there for a while, but CL 3227787 (drawclear early out) caused it to manifest #jira UE-39727 #jira UE-40238 Change 3249300 on 2017/01/06 by Ben.Woodhouse Remove workaround for diffuse irradiance (redundant clear). No longer necessary with CL 3249296 Change 3249387 on 2017/01/06 by Rolando.Caloca DR - Fix GL clear issues #jira UE-40254 Change 3249435 on 2017/01/06 by Ben.Woodhouse Duplicated from UT CL 3238664 Fix dbuffer decal rendering issues in fullscreen on PC. Also fixes crash in editor when viewing dbuffer materials. Pass clearcolor in RT params for system textures to workaround a bug with ClearColorTexture not working in fullscreen mode on DX11. Make sure dbuffer targets are bound if we're rendering mesh decals #jira UT-6891 #jira UE-39842 Change 3249721 on 2017/01/06 by Marcus.Wassmer Remove final references to non-existent Niagara data Change 3249742 on 2017/01/06 by Marcus.Wassmer Fix missing GPU particles on Mac. Pointers getting reused is causing the blendstate equality operator to fail. Simple workaround until we have time for a proper fix. [CL 3249983 by Marcus Wassmer in Main branch]
2017-01-06 17:51:46 -05:00
DrawClearQuad(Context.RHICmdList, Context.GetFeatureLevel(), false, FLinearColor(), true, (float)ERHIZBuffer::FarPlane, true, 0, PassOutputs[0].RenderTargetDesc.Extent, FIntRect());
// bottom
Context.RHICmdList.SetScissorRect(true, ViewRect.Min.X, InnerRect.Max.Y, ViewRect.Max.X, ViewRect.Max.Y);
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3249742) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3232283 on 2016/12/13 by Ben.Woodhouse D3D12 - downgrade root signature size warning to a log following a discussion with Microsoft. There's not much we can actually do about it, and it's not relevant to all hardware #jira UE-36999 Change 3232641 on 2016/12/13 by Mark.Satterthwaite - Eliminate redundant state changes in MetalRHI in the state cache. - Add a new debug level for setting buffers to nil prior to calls to set*Bytes so that the tool doesn't display incorrect data. - Make testing for validation & statistics features use the same EMetalFeatures API as everything else for consistency. - Cache the fallback depth-stencil texture in the state cache and ignore it for determining whether a pass can restart - if we are using this texture its contents are worthless anyway. Change 3232661 on 2016/12/13 by Mark.Satterthwaite Re-enable Metal SM5 & DFAO/DistanceFieldShadowing on Intel for 10.12.2 or later. Change 3232759 on 2016/12/13 by Ben.Woodhouse Fix memory leak on XB1 when calling GPURealloc with count of 0, suggested on UDN https://udn.unrealengine.com/questions/326660/gpurealloc-leak.html Change 3232803 on 2016/12/13 by Ben.Marsh Add UT to the populate DDC job, and cook UT and Fortnite for Mac as well. Change 3232836 on 2016/12/13 by Ben.Marsh Split cooks to populate DDC into separate nodes for each platform. May help to reduce number of timeouts on remote VMs. Change 3232974 on 2016/12/13 by Rolando.Caloca DR - Refactor common code to UWorld::RecreateScene #jira UE-36719 PR #2824 Change 3232976 on 2016/12/13 by Ben.Marsh Add missing dependency on tools node for Mac cooks. Need to compile SCW first. Change 3233289 on 2016/12/13 by Olaf.Piesche Fixing potentially broken spot/point light fade with old content; initialize new properties properly Change 3233811 on 2016/12/13 by Mark.Satterthwaite Fix compiling QA-Material tessellation shaders that don't need to emit from Hull or sample in Domain the HSOut buffer which was confusing MetalBackend. Change 3233854 on 2016/12/13 by Mark.Satterthwaite More information about texture type validation errors in Metal. Change 3234650 on 2016/12/14 by Rolando.Caloca DR - vk - Fix bad aspect on depth cubemaps Change 3234651 on 2016/12/14 by Rolando.Caloca DR - vk - Fix for 32 bit crash on dump layer Change 3234813 on 2016/12/14 by Guillaume.Abadie Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3235047 on 2016/12/14 by Uriel.Doyon Refactored HLOD texture streaming strategy to separate forced load from visibility. Added an incremental update in the last stage of the texture streaming update load to clear any pending work. Added an option "All" to the "BuildMateriaTexturelStreamingData" command to force rebuild everything. Change 3235317 on 2016/12/14 by Uriel.Doyon Removed timed primitives in the texture streaming since it was not used and there is now a fallback implementation in UPrimitiveComponent::GetStreamingTextureInfo. Change 3235431 on 2016/12/14 by Rolando.Caloca DR - Fix for Vulkan drawing black Change 3236788 on 2016/12/15 by Mark.Satterthwaite Fix 10.11.6 support (aka -nometalv2): the stencil view workaround necessitates a mid-render blit and the way things were setup resulted in the HasValidRenderTargets assert firing. Refactored the code to separate the concept or valid render-states in the cache from active render-states in the render-pass. Now it works as intended and will be needed for 4.15. Change 3236850 on 2016/12/15 by Mark.Satterthwaite Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3237002 on 2016/12/15 by Benjamin.Hyder submitting updated TM-Shadermodels map Change 3237312 on 2016/12/15 by Rolando.Caloca DR - Change more macros to lambdas Change 3237394 on 2016/12/15 by Mark.Satterthwaite Add Metal-specific permutations of TBasePassHS - they affect the C++ definition on all platforms but are only cached or used on Metal - because the way we compile the combined VS+HS tessellation stage requires that the combined VS + HS HLSL code references the same resources, otherwise we get incorrect resouce bindings and subsequently fail to render properly. Long-term the Metal tessellation code will need to be refactored so that the vertex shader stage is emitted as a separate shader from the hull shader stage as this but will keep cropping back up and continue to complicate the engine. #jira UE-39799 Change 3237490 on 2016/12/15 by Daniel.Wright Fixed ULandscapeComponent::GetUsedMaterials Change 3237597 on 2016/12/15 by Ben.Woodhouse Disable timestamp queries on pre-Maxwell nvidia hardware. Local testing suggests that this is the major cause of instability in the UE4.14 release. It's possible that we could be more targeted by only excluding Fermi and older hardware, but identifying fermi hardware by device ID is difficult in practice, since the range overlaps with Kepler. Change 3237654 on 2016/12/15 by Daniel.Wright Non-editor compile fix Change 3238229 on 2016/12/16 by Rolando.Caloca DR - Remove ExcludeRect from inner RHI Clear methods; ensure will happen if trying to use it Change 3238236 on 2016/12/16 by Rolando.Caloca DR - Compile fixes Change 3238280 on 2016/12/16 by Marc.Olano Small optimization to Lanczos-3 upsample shader code. Change 3238321 on 2016/12/16 by Rolando.Caloca DR - Compile fix Change 3238331 on 2016/12/16 by Rolando.Caloca DR - compile fix Change 3238495 on 2016/12/16 by Marc.Olano Replace TEA random number generator with PCG. Was only used in #if-disabled reference rendering, but ldoes make better quality reference rendering when enabled. Change 3238496 on 2016/12/16 by Marc.Olano Tone mapping fix for OR-31752, cherry picked from Orion 3208273 Assumption that green is approximates luminance fails on red/blue HDR content, resulting in ugly black artifacts. Go back to luminance. Change 3238520 on 2016/12/16 by Rolando.Caloca DR - CIS Fix Change 3238571 on 2016/12/16 by Rolando.Caloca DR - CIS fix Change 3238605 on 2016/12/16 by Daniel.Wright Sharing IndirectLightingCacheTextureSampler samplers Change 3238626 on 2016/12/16 by Daniel.Wright Ray Traced Distance Field Shadow optimizations * Tighter light space tile culling * Skip ray marching pixels before the RTDF cascade near distance, or further than the cascade far distance * Depth bounds test on upsample * Created FLightTileIntersectionParameters for encapsulation of light tile culling functionality * RTDF shadow time went from 1.8ms -> .8ms and 3.1ms -> 1.2ms in FortGPUTestbed on 7870 with these changes Change 3238652 on 2016/12/16 by Rolando.Caloca DR - RHI clear methods no longer have an ExcludeRect, use DrawClearQuad functions instead Change 3238855 on 2016/12/16 by Rolando.Caloca DR - Added FRHITexture2D GetSizeXY Change 3238881 on 2016/12/16 by Rolando.Caloca DR - CIS fix Change 3239008 on 2016/12/16 by Arne.Schober DR - Fixing accidently returning a stackpointer in EnqueueRenderCommands Change 3239012 on 2016/12/16 by Arne.Schober DR - missing file Change 3239255 on 2016/12/17 by Rolando.Caloca DR - Remove shader clears from D3D11 Change 3239690 on 2016/12/19 by Rolando.Caloca DR - vk - Misc fixes from 1.0.37.00 SDK warnings Change 3239964 on 2016/12/19 by Rolando.Caloca DR - Fix click on editor not showing selected Change 3239995 on 2016/12/19 by Rolando.Caloca DR - Enable dist field on GL4 & Vulkan SM5 Change 3240162 on 2016/12/19 by Daniel.Wright Added EnableDepthBoundsTest / DisableDepthBoundsTest to RHIUtilites to share some common code Change 3240163 on 2016/12/19 by Daniel.Wright Distance field self shadowing controls for hiding world position offset self-shadow artifacts * Removed static mesh build settings DistanceFieldBias, which shrunk the distance field, breaking AO and shadows * Added DistanceFieldSelfShadowBias, which prevents occlusion close to the surface only, maintaining shadows on the ground and AO on the ground Change 3240271 on 2016/12/19 by Daniel.Wright Use 16 bit indices for distance field objects culled to tiles, when 16 bit will be enough. Saves 10mb of tile culling buffers. Change 3240282 on 2016/12/19 by Rolando.Caloca DR - Proper fix for hit proxies clear - Added missing stencil ref to DrawClearQuad Change 3240316 on 2016/12/19 by Rolando.Caloca DR - vk - Fixed some new 1.0.37.0 warnings Change 3240354 on 2016/12/19 by Rolando.Caloca DR - Dev shaders on sm4/5 Change 3240759 on 2016/12/20 by Rolando.Caloca DR - Fix bad crc on GL element declarations Change 3240895 on 2016/12/20 by Rolando.Caloca DR - vk - Swapchain fixes Change 3241057 on 2016/12/20 by Rolando.Caloca DR - vk - Fix resize on desktop Change 3241112 on 2016/12/20 by Rolando.Caloca DR - vk - Fix 1.0.37.0 warnings - Ignore some warnings we know we can't fix Change 3241310 on 2016/12/20 by Rolando.Caloca DR - vk - Fix crash Change 3241417 on 2016/12/20 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios Change 3241990 on 2016/12/21 by Daniel.Wright Converted DistanceFieldVolume data to BulkData * FDistanceFieldVolumeData Serialize time from .7s on PS4 to 0s Change 3242005 on 2016/12/21 by Daniel.Wright Removed unused !USE_DEPTH_RANGE_LISTS path to reduce complexity Change 3242295 on 2016/12/21 by Bob.Tellez Duplicating CL#3242294 from //Fortnite/Main #UE4 Re-applying the fix for rendering editor primitives when r.EarlyZPassOnlyMaterialMasking is enabled Change 3242487 on 2016/12/21 by Marcus.Wassmer Fix typo Change 3243091 on 2016/12/22 by Daniel.Wright Fixed too many groups dispatched for TConeTraceScreenGridGlobalOcclusionCS Change 3243161 on 2016/12/22 by Uriel.Doyon New async tasks for the streaming update. Optimizing the biggest frame cost. Change 3243179 on 2016/12/22 by Uriel.Doyon Fixed possible invalid access from the async FNormalizeLightmapTexelFactorTask Change 3243236 on 2016/12/22 by Daniel.Wright Fixed DFAO bilateral upsample * Depth buffer was being unbound due to lack of DepthRead_StencilNop Change 3243452 on 2016/12/23 by Ben.Woodhouse Bring back 1024 render query limit workaround on D3D12 which was lost during the merge from partners #jira UE-35247 Change 3243512 on 2016/12/23 by Uriel.Doyon Improved task system for texture streaming. Change 3243742 on 2016/12/26 by Rolando.Caloca DR - vk - Fix UAV clears - Removed old validation layer - Print found device layers Change 3243745 on 2016/12/27 by Rolando.Caloca DR - vk - Fix for texture cube arrays - Warning for ClearUAVs Change 3243762 on 2016/12/27 by Rolando.Caloca DR - vk - Always use pipeline cache Change 3244450 on 2016/12/31 by Rolando.Caloca DR - vk - Pre reqs for separate transfer queue Change 3244453 on 2016/12/31 by Rolando.Caloca DR - vk - Win32 compile fix Change 3244756 on 2017/01/03 by Marcus.Wassmer Copying //Tasks/UE4/Dev-Niagara@3244743 to Dev-Rendering (//UE4/Dev-Rendering) Change 3244757 on 2017/01/03 by Marcus.Wassmer Niagara is still experimental in non-task branches. Change 3245059 on 2017/01/03 by Benjamin.Hyder Submitting TM-TrigNodes map Change 3245500 on 2017/01/03 by Olaf.Piesche Compile fix #1 for post-merge problems Change 3245572 on 2017/01/03 by Olaf.Piesche (Speculative) fix #2 for post-merge build problem. Hopefully fixes public distribution level error for cross compiler tool. Change 3245683 on 2017/01/03 by Marcus.Wassmer Fix some niagara warnings Change 3245732 on 2017/01/03 by Marcus.Wassmer Fix Niagara compile on clang platforms. Fix a few warnings / static analysis things as well. Change 3246403 on 2017/01/04 by Rolando.Caloca DR - vk - Fix bogus warning Change 3246432 on 2017/01/04 by Marcus.Wassmer Copying //Tasks/UE4/Dev-Niagara@3246424 to Dev-Rendering (//UE4/Dev-Rendering) Change 3246538 on 2017/01/04 by Rolando.Caloca DR - vk - Show hitch time for compute psos Change 3246580 on 2017/01/04 by Rolando.Caloca DR - vk - compile fix Change 3246610 on 2017/01/04 by Rolando.Caloca DR - Compute PSO pre reqs Change 3246707 on 2017/01/04 by Marcus.Wassmer Add missing integer operations to UnrealMathDirectX.h Change 3246786 on 2017/01/04 by Marcus.Wassmer Avoid public dependency build errors. Should probably just remove the DDCUtils module instead Change 3246828 on 2017/01/04 by Olaf.Piesche UE-39249; need to check the view as well as the view family in CheckAndUpdateLastFrame; scene captures use a different family, but each eye for VR uses a different scene view. Change 3247026 on 2017/01/04 by Rolando.Caloca DR - Remove CrossCompilerTool as it's not required anymore Change 3247086 on 2017/01/04 by Marcus.Wassmer Remove includes for Core.h monolithic header Change 3247227 on 2017/01/04 by Marcus.Wassmer Fix typo and compile errors. Change 3247228 on 2017/01/04 by Marcus.Wassmer Use crossplatform intrinsics Change 3247229 on 2017/01/04 by Marcus.Wassmer Implement missing integer NEON operations. Change NEON vectorint to match name and sign from other platforms Change 3247245 on 2017/01/04 by Marcus.Wassmer Fixing various warnings/errors from clang platforms (Mac/Linux) Change 3247331 on 2017/01/04 by Marcus.Wassmer More Mac/clang fixes Change 3247958 on 2017/01/05 by Marcus.Wassmer VectorInt < - > Float ops should be conversions not reinterpret cast Change 3247959 on 2017/01/05 by Marcus.Wassmer Add missing ops to non-vector header Change 3247964 on 2017/01/05 by Rolando.Caloca DR - Temp fix for crash #jira UE-40211 Change 3248067 on 2017/01/05 by Rolando.Caloca DR - Static analysis fixes #jira UE-40167 Change 3248284 on 2017/01/05 by Rolando.Caloca DR - Linuix Compile fix #jira UE-40260 Change 3248288 on 2017/01/05 by Rolando.Caloca DR - Linux compile fix #jira UE-40264 Change 3248399 on 2017/01/05 by Brian.Karis Filtered importance sampling for envmap prefiltering. Fixed SSR on clearcoat with skylight only. Change 3248503 on 2017/01/05 by Rolando.Caloca DR - Linux fixes #jira UE-40264 Change 3248666 on 2017/01/05 by Brian.Karis Fix GL compile error Change 3248740 on 2017/01/05 by Marcus.Wassmer Fix linux and clang errors/warnings Change 3248851 on 2017/01/05 by Marcus.Wassmer Simplest fix for ES2 compile errors Change 3249217 on 2017/01/06 by Simon.Tovey Speculative fix for static analysis warning Change 3249296 on 2017/01/06 by Ben.Woodhouse XB1/Fast semantics: Add missing L1/L2 cache flush on transition to readable (or RW). The missing cache flush was causing indeterminism when reading from a texture shortly after writing to it as a render target. This fixes bloom and diffuse irradiance issues The bug has been there for a while, but CL 3227787 (drawclear early out) caused it to manifest #jira UE-39727 #jira UE-40238 Change 3249300 on 2017/01/06 by Ben.Woodhouse Remove workaround for diffuse irradiance (redundant clear). No longer necessary with CL 3249296 Change 3249387 on 2017/01/06 by Rolando.Caloca DR - Fix GL clear issues #jira UE-40254 Change 3249435 on 2017/01/06 by Ben.Woodhouse Duplicated from UT CL 3238664 Fix dbuffer decal rendering issues in fullscreen on PC. Also fixes crash in editor when viewing dbuffer materials. Pass clearcolor in RT params for system textures to workaround a bug with ClearColorTexture not working in fullscreen mode on DX11. Make sure dbuffer targets are bound if we're rendering mesh decals #jira UT-6891 #jira UE-39842 Change 3249721 on 2017/01/06 by Marcus.Wassmer Remove final references to non-existent Niagara data Change 3249742 on 2017/01/06 by Marcus.Wassmer Fix missing GPU particles on Mac. Pointers getting reused is causing the blendstate equality operator to fail. Simple workaround until we have time for a proper fix. [CL 3249983 by Marcus Wassmer in Main branch]
2017-01-06 17:51:46 -05:00
DrawClearQuad(Context.RHICmdList, Context.GetFeatureLevel(), false, FLinearColor(), true, (float)ERHIZBuffer::FarPlane, true, 0, PassOutputs[0].RenderTargetDesc.Extent, FIntRect());
// left
Context.RHICmdList.SetScissorRect(true, ViewRect.Min.X, ViewRect.Min.Y, InnerRect.Min.X, ViewRect.Max.Y);
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3249742) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3232283 on 2016/12/13 by Ben.Woodhouse D3D12 - downgrade root signature size warning to a log following a discussion with Microsoft. There's not much we can actually do about it, and it's not relevant to all hardware #jira UE-36999 Change 3232641 on 2016/12/13 by Mark.Satterthwaite - Eliminate redundant state changes in MetalRHI in the state cache. - Add a new debug level for setting buffers to nil prior to calls to set*Bytes so that the tool doesn't display incorrect data. - Make testing for validation & statistics features use the same EMetalFeatures API as everything else for consistency. - Cache the fallback depth-stencil texture in the state cache and ignore it for determining whether a pass can restart - if we are using this texture its contents are worthless anyway. Change 3232661 on 2016/12/13 by Mark.Satterthwaite Re-enable Metal SM5 & DFAO/DistanceFieldShadowing on Intel for 10.12.2 or later. Change 3232759 on 2016/12/13 by Ben.Woodhouse Fix memory leak on XB1 when calling GPURealloc with count of 0, suggested on UDN https://udn.unrealengine.com/questions/326660/gpurealloc-leak.html Change 3232803 on 2016/12/13 by Ben.Marsh Add UT to the populate DDC job, and cook UT and Fortnite for Mac as well. Change 3232836 on 2016/12/13 by Ben.Marsh Split cooks to populate DDC into separate nodes for each platform. May help to reduce number of timeouts on remote VMs. Change 3232974 on 2016/12/13 by Rolando.Caloca DR - Refactor common code to UWorld::RecreateScene #jira UE-36719 PR #2824 Change 3232976 on 2016/12/13 by Ben.Marsh Add missing dependency on tools node for Mac cooks. Need to compile SCW first. Change 3233289 on 2016/12/13 by Olaf.Piesche Fixing potentially broken spot/point light fade with old content; initialize new properties properly Change 3233811 on 2016/12/13 by Mark.Satterthwaite Fix compiling QA-Material tessellation shaders that don't need to emit from Hull or sample in Domain the HSOut buffer which was confusing MetalBackend. Change 3233854 on 2016/12/13 by Mark.Satterthwaite More information about texture type validation errors in Metal. Change 3234650 on 2016/12/14 by Rolando.Caloca DR - vk - Fix bad aspect on depth cubemaps Change 3234651 on 2016/12/14 by Rolando.Caloca DR - vk - Fix for 32 bit crash on dump layer Change 3234813 on 2016/12/14 by Guillaume.Abadie Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3235047 on 2016/12/14 by Uriel.Doyon Refactored HLOD texture streaming strategy to separate forced load from visibility. Added an incremental update in the last stage of the texture streaming update load to clear any pending work. Added an option "All" to the "BuildMateriaTexturelStreamingData" command to force rebuild everything. Change 3235317 on 2016/12/14 by Uriel.Doyon Removed timed primitives in the texture streaming since it was not used and there is now a fallback implementation in UPrimitiveComponent::GetStreamingTextureInfo. Change 3235431 on 2016/12/14 by Rolando.Caloca DR - Fix for Vulkan drawing black Change 3236788 on 2016/12/15 by Mark.Satterthwaite Fix 10.11.6 support (aka -nometalv2): the stencil view workaround necessitates a mid-render blit and the way things were setup resulted in the HasValidRenderTargets assert firing. Refactored the code to separate the concept or valid render-states in the cache from active render-states in the render-pass. Now it works as intended and will be needed for 4.15. Change 3236850 on 2016/12/15 by Mark.Satterthwaite Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3237002 on 2016/12/15 by Benjamin.Hyder submitting updated TM-Shadermodels map Change 3237312 on 2016/12/15 by Rolando.Caloca DR - Change more macros to lambdas Change 3237394 on 2016/12/15 by Mark.Satterthwaite Add Metal-specific permutations of TBasePassHS - they affect the C++ definition on all platforms but are only cached or used on Metal - because the way we compile the combined VS+HS tessellation stage requires that the combined VS + HS HLSL code references the same resources, otherwise we get incorrect resouce bindings and subsequently fail to render properly. Long-term the Metal tessellation code will need to be refactored so that the vertex shader stage is emitted as a separate shader from the hull shader stage as this but will keep cropping back up and continue to complicate the engine. #jira UE-39799 Change 3237490 on 2016/12/15 by Daniel.Wright Fixed ULandscapeComponent::GetUsedMaterials Change 3237597 on 2016/12/15 by Ben.Woodhouse Disable timestamp queries on pre-Maxwell nvidia hardware. Local testing suggests that this is the major cause of instability in the UE4.14 release. It's possible that we could be more targeted by only excluding Fermi and older hardware, but identifying fermi hardware by device ID is difficult in practice, since the range overlaps with Kepler. Change 3237654 on 2016/12/15 by Daniel.Wright Non-editor compile fix Change 3238229 on 2016/12/16 by Rolando.Caloca DR - Remove ExcludeRect from inner RHI Clear methods; ensure will happen if trying to use it Change 3238236 on 2016/12/16 by Rolando.Caloca DR - Compile fixes Change 3238280 on 2016/12/16 by Marc.Olano Small optimization to Lanczos-3 upsample shader code. Change 3238321 on 2016/12/16 by Rolando.Caloca DR - Compile fix Change 3238331 on 2016/12/16 by Rolando.Caloca DR - compile fix Change 3238495 on 2016/12/16 by Marc.Olano Replace TEA random number generator with PCG. Was only used in #if-disabled reference rendering, but ldoes make better quality reference rendering when enabled. Change 3238496 on 2016/12/16 by Marc.Olano Tone mapping fix for OR-31752, cherry picked from Orion 3208273 Assumption that green is approximates luminance fails on red/blue HDR content, resulting in ugly black artifacts. Go back to luminance. Change 3238520 on 2016/12/16 by Rolando.Caloca DR - CIS Fix Change 3238571 on 2016/12/16 by Rolando.Caloca DR - CIS fix Change 3238605 on 2016/12/16 by Daniel.Wright Sharing IndirectLightingCacheTextureSampler samplers Change 3238626 on 2016/12/16 by Daniel.Wright Ray Traced Distance Field Shadow optimizations * Tighter light space tile culling * Skip ray marching pixels before the RTDF cascade near distance, or further than the cascade far distance * Depth bounds test on upsample * Created FLightTileIntersectionParameters for encapsulation of light tile culling functionality * RTDF shadow time went from 1.8ms -> .8ms and 3.1ms -> 1.2ms in FortGPUTestbed on 7870 with these changes Change 3238652 on 2016/12/16 by Rolando.Caloca DR - RHI clear methods no longer have an ExcludeRect, use DrawClearQuad functions instead Change 3238855 on 2016/12/16 by Rolando.Caloca DR - Added FRHITexture2D GetSizeXY Change 3238881 on 2016/12/16 by Rolando.Caloca DR - CIS fix Change 3239008 on 2016/12/16 by Arne.Schober DR - Fixing accidently returning a stackpointer in EnqueueRenderCommands Change 3239012 on 2016/12/16 by Arne.Schober DR - missing file Change 3239255 on 2016/12/17 by Rolando.Caloca DR - Remove shader clears from D3D11 Change 3239690 on 2016/12/19 by Rolando.Caloca DR - vk - Misc fixes from 1.0.37.00 SDK warnings Change 3239964 on 2016/12/19 by Rolando.Caloca DR - Fix click on editor not showing selected Change 3239995 on 2016/12/19 by Rolando.Caloca DR - Enable dist field on GL4 & Vulkan SM5 Change 3240162 on 2016/12/19 by Daniel.Wright Added EnableDepthBoundsTest / DisableDepthBoundsTest to RHIUtilites to share some common code Change 3240163 on 2016/12/19 by Daniel.Wright Distance field self shadowing controls for hiding world position offset self-shadow artifacts * Removed static mesh build settings DistanceFieldBias, which shrunk the distance field, breaking AO and shadows * Added DistanceFieldSelfShadowBias, which prevents occlusion close to the surface only, maintaining shadows on the ground and AO on the ground Change 3240271 on 2016/12/19 by Daniel.Wright Use 16 bit indices for distance field objects culled to tiles, when 16 bit will be enough. Saves 10mb of tile culling buffers. Change 3240282 on 2016/12/19 by Rolando.Caloca DR - Proper fix for hit proxies clear - Added missing stencil ref to DrawClearQuad Change 3240316 on 2016/12/19 by Rolando.Caloca DR - vk - Fixed some new 1.0.37.0 warnings Change 3240354 on 2016/12/19 by Rolando.Caloca DR - Dev shaders on sm4/5 Change 3240759 on 2016/12/20 by Rolando.Caloca DR - Fix bad crc on GL element declarations Change 3240895 on 2016/12/20 by Rolando.Caloca DR - vk - Swapchain fixes Change 3241057 on 2016/12/20 by Rolando.Caloca DR - vk - Fix resize on desktop Change 3241112 on 2016/12/20 by Rolando.Caloca DR - vk - Fix 1.0.37.0 warnings - Ignore some warnings we know we can't fix Change 3241310 on 2016/12/20 by Rolando.Caloca DR - vk - Fix crash Change 3241417 on 2016/12/20 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios Change 3241990 on 2016/12/21 by Daniel.Wright Converted DistanceFieldVolume data to BulkData * FDistanceFieldVolumeData Serialize time from .7s on PS4 to 0s Change 3242005 on 2016/12/21 by Daniel.Wright Removed unused !USE_DEPTH_RANGE_LISTS path to reduce complexity Change 3242295 on 2016/12/21 by Bob.Tellez Duplicating CL#3242294 from //Fortnite/Main #UE4 Re-applying the fix for rendering editor primitives when r.EarlyZPassOnlyMaterialMasking is enabled Change 3242487 on 2016/12/21 by Marcus.Wassmer Fix typo Change 3243091 on 2016/12/22 by Daniel.Wright Fixed too many groups dispatched for TConeTraceScreenGridGlobalOcclusionCS Change 3243161 on 2016/12/22 by Uriel.Doyon New async tasks for the streaming update. Optimizing the biggest frame cost. Change 3243179 on 2016/12/22 by Uriel.Doyon Fixed possible invalid access from the async FNormalizeLightmapTexelFactorTask Change 3243236 on 2016/12/22 by Daniel.Wright Fixed DFAO bilateral upsample * Depth buffer was being unbound due to lack of DepthRead_StencilNop Change 3243452 on 2016/12/23 by Ben.Woodhouse Bring back 1024 render query limit workaround on D3D12 which was lost during the merge from partners #jira UE-35247 Change 3243512 on 2016/12/23 by Uriel.Doyon Improved task system for texture streaming. Change 3243742 on 2016/12/26 by Rolando.Caloca DR - vk - Fix UAV clears - Removed old validation layer - Print found device layers Change 3243745 on 2016/12/27 by Rolando.Caloca DR - vk - Fix for texture cube arrays - Warning for ClearUAVs Change 3243762 on 2016/12/27 by Rolando.Caloca DR - vk - Always use pipeline cache Change 3244450 on 2016/12/31 by Rolando.Caloca DR - vk - Pre reqs for separate transfer queue Change 3244453 on 2016/12/31 by Rolando.Caloca DR - vk - Win32 compile fix Change 3244756 on 2017/01/03 by Marcus.Wassmer Copying //Tasks/UE4/Dev-Niagara@3244743 to Dev-Rendering (//UE4/Dev-Rendering) Change 3244757 on 2017/01/03 by Marcus.Wassmer Niagara is still experimental in non-task branches. Change 3245059 on 2017/01/03 by Benjamin.Hyder Submitting TM-TrigNodes map Change 3245500 on 2017/01/03 by Olaf.Piesche Compile fix #1 for post-merge problems Change 3245572 on 2017/01/03 by Olaf.Piesche (Speculative) fix #2 for post-merge build problem. Hopefully fixes public distribution level error for cross compiler tool. Change 3245683 on 2017/01/03 by Marcus.Wassmer Fix some niagara warnings Change 3245732 on 2017/01/03 by Marcus.Wassmer Fix Niagara compile on clang platforms. Fix a few warnings / static analysis things as well. Change 3246403 on 2017/01/04 by Rolando.Caloca DR - vk - Fix bogus warning Change 3246432 on 2017/01/04 by Marcus.Wassmer Copying //Tasks/UE4/Dev-Niagara@3246424 to Dev-Rendering (//UE4/Dev-Rendering) Change 3246538 on 2017/01/04 by Rolando.Caloca DR - vk - Show hitch time for compute psos Change 3246580 on 2017/01/04 by Rolando.Caloca DR - vk - compile fix Change 3246610 on 2017/01/04 by Rolando.Caloca DR - Compute PSO pre reqs Change 3246707 on 2017/01/04 by Marcus.Wassmer Add missing integer operations to UnrealMathDirectX.h Change 3246786 on 2017/01/04 by Marcus.Wassmer Avoid public dependency build errors. Should probably just remove the DDCUtils module instead Change 3246828 on 2017/01/04 by Olaf.Piesche UE-39249; need to check the view as well as the view family in CheckAndUpdateLastFrame; scene captures use a different family, but each eye for VR uses a different scene view. Change 3247026 on 2017/01/04 by Rolando.Caloca DR - Remove CrossCompilerTool as it's not required anymore Change 3247086 on 2017/01/04 by Marcus.Wassmer Remove includes for Core.h monolithic header Change 3247227 on 2017/01/04 by Marcus.Wassmer Fix typo and compile errors. Change 3247228 on 2017/01/04 by Marcus.Wassmer Use crossplatform intrinsics Change 3247229 on 2017/01/04 by Marcus.Wassmer Implement missing integer NEON operations. Change NEON vectorint to match name and sign from other platforms Change 3247245 on 2017/01/04 by Marcus.Wassmer Fixing various warnings/errors from clang platforms (Mac/Linux) Change 3247331 on 2017/01/04 by Marcus.Wassmer More Mac/clang fixes Change 3247958 on 2017/01/05 by Marcus.Wassmer VectorInt < - > Float ops should be conversions not reinterpret cast Change 3247959 on 2017/01/05 by Marcus.Wassmer Add missing ops to non-vector header Change 3247964 on 2017/01/05 by Rolando.Caloca DR - Temp fix for crash #jira UE-40211 Change 3248067 on 2017/01/05 by Rolando.Caloca DR - Static analysis fixes #jira UE-40167 Change 3248284 on 2017/01/05 by Rolando.Caloca DR - Linuix Compile fix #jira UE-40260 Change 3248288 on 2017/01/05 by Rolando.Caloca DR - Linux compile fix #jira UE-40264 Change 3248399 on 2017/01/05 by Brian.Karis Filtered importance sampling for envmap prefiltering. Fixed SSR on clearcoat with skylight only. Change 3248503 on 2017/01/05 by Rolando.Caloca DR - Linux fixes #jira UE-40264 Change 3248666 on 2017/01/05 by Brian.Karis Fix GL compile error Change 3248740 on 2017/01/05 by Marcus.Wassmer Fix linux and clang errors/warnings Change 3248851 on 2017/01/05 by Marcus.Wassmer Simplest fix for ES2 compile errors Change 3249217 on 2017/01/06 by Simon.Tovey Speculative fix for static analysis warning Change 3249296 on 2017/01/06 by Ben.Woodhouse XB1/Fast semantics: Add missing L1/L2 cache flush on transition to readable (or RW). The missing cache flush was causing indeterminism when reading from a texture shortly after writing to it as a render target. This fixes bloom and diffuse irradiance issues The bug has been there for a while, but CL 3227787 (drawclear early out) caused it to manifest #jira UE-39727 #jira UE-40238 Change 3249300 on 2017/01/06 by Ben.Woodhouse Remove workaround for diffuse irradiance (redundant clear). No longer necessary with CL 3249296 Change 3249387 on 2017/01/06 by Rolando.Caloca DR - Fix GL clear issues #jira UE-40254 Change 3249435 on 2017/01/06 by Ben.Woodhouse Duplicated from UT CL 3238664 Fix dbuffer decal rendering issues in fullscreen on PC. Also fixes crash in editor when viewing dbuffer materials. Pass clearcolor in RT params for system textures to workaround a bug with ClearColorTexture not working in fullscreen mode on DX11. Make sure dbuffer targets are bound if we're rendering mesh decals #jira UT-6891 #jira UE-39842 Change 3249721 on 2017/01/06 by Marcus.Wassmer Remove final references to non-existent Niagara data Change 3249742 on 2017/01/06 by Marcus.Wassmer Fix missing GPU particles on Mac. Pointers getting reused is causing the blendstate equality operator to fail. Simple workaround until we have time for a proper fix. [CL 3249983 by Marcus Wassmer in Main branch]
2017-01-06 17:51:46 -05:00
DrawClearQuad(Context.RHICmdList, Context.GetFeatureLevel(), false, FLinearColor(), true, (float)ERHIZBuffer::FarPlane, true, 0, PassOutputs[0].RenderTargetDesc.Extent, FIntRect());
// right
Context.RHICmdList.SetScissorRect(true, InnerRect.Max.X, ViewRect.Min.Y, ViewRect.Max.X, ViewRect.Max.Y);
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3249742) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3232283 on 2016/12/13 by Ben.Woodhouse D3D12 - downgrade root signature size warning to a log following a discussion with Microsoft. There's not much we can actually do about it, and it's not relevant to all hardware #jira UE-36999 Change 3232641 on 2016/12/13 by Mark.Satterthwaite - Eliminate redundant state changes in MetalRHI in the state cache. - Add a new debug level for setting buffers to nil prior to calls to set*Bytes so that the tool doesn't display incorrect data. - Make testing for validation & statistics features use the same EMetalFeatures API as everything else for consistency. - Cache the fallback depth-stencil texture in the state cache and ignore it for determining whether a pass can restart - if we are using this texture its contents are worthless anyway. Change 3232661 on 2016/12/13 by Mark.Satterthwaite Re-enable Metal SM5 & DFAO/DistanceFieldShadowing on Intel for 10.12.2 or later. Change 3232759 on 2016/12/13 by Ben.Woodhouse Fix memory leak on XB1 when calling GPURealloc with count of 0, suggested on UDN https://udn.unrealengine.com/questions/326660/gpurealloc-leak.html Change 3232803 on 2016/12/13 by Ben.Marsh Add UT to the populate DDC job, and cook UT and Fortnite for Mac as well. Change 3232836 on 2016/12/13 by Ben.Marsh Split cooks to populate DDC into separate nodes for each platform. May help to reduce number of timeouts on remote VMs. Change 3232974 on 2016/12/13 by Rolando.Caloca DR - Refactor common code to UWorld::RecreateScene #jira UE-36719 PR #2824 Change 3232976 on 2016/12/13 by Ben.Marsh Add missing dependency on tools node for Mac cooks. Need to compile SCW first. Change 3233289 on 2016/12/13 by Olaf.Piesche Fixing potentially broken spot/point light fade with old content; initialize new properties properly Change 3233811 on 2016/12/13 by Mark.Satterthwaite Fix compiling QA-Material tessellation shaders that don't need to emit from Hull or sample in Domain the HSOut buffer which was confusing MetalBackend. Change 3233854 on 2016/12/13 by Mark.Satterthwaite More information about texture type validation errors in Metal. Change 3234650 on 2016/12/14 by Rolando.Caloca DR - vk - Fix bad aspect on depth cubemaps Change 3234651 on 2016/12/14 by Rolando.Caloca DR - vk - Fix for 32 bit crash on dump layer Change 3234813 on 2016/12/14 by Guillaume.Abadie Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3235047 on 2016/12/14 by Uriel.Doyon Refactored HLOD texture streaming strategy to separate forced load from visibility. Added an incremental update in the last stage of the texture streaming update load to clear any pending work. Added an option "All" to the "BuildMateriaTexturelStreamingData" command to force rebuild everything. Change 3235317 on 2016/12/14 by Uriel.Doyon Removed timed primitives in the texture streaming since it was not used and there is now a fallback implementation in UPrimitiveComponent::GetStreamingTextureInfo. Change 3235431 on 2016/12/14 by Rolando.Caloca DR - Fix for Vulkan drawing black Change 3236788 on 2016/12/15 by Mark.Satterthwaite Fix 10.11.6 support (aka -nometalv2): the stencil view workaround necessitates a mid-render blit and the way things were setup resulted in the HasValidRenderTargets assert firing. Refactored the code to separate the concept or valid render-states in the cache from active render-states in the render-pass. Now it works as intended and will be needed for 4.15. Change 3236850 on 2016/12/15 by Mark.Satterthwaite Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3237002 on 2016/12/15 by Benjamin.Hyder submitting updated TM-Shadermodels map Change 3237312 on 2016/12/15 by Rolando.Caloca DR - Change more macros to lambdas Change 3237394 on 2016/12/15 by Mark.Satterthwaite Add Metal-specific permutations of TBasePassHS - they affect the C++ definition on all platforms but are only cached or used on Metal - because the way we compile the combined VS+HS tessellation stage requires that the combined VS + HS HLSL code references the same resources, otherwise we get incorrect resouce bindings and subsequently fail to render properly. Long-term the Metal tessellation code will need to be refactored so that the vertex shader stage is emitted as a separate shader from the hull shader stage as this but will keep cropping back up and continue to complicate the engine. #jira UE-39799 Change 3237490 on 2016/12/15 by Daniel.Wright Fixed ULandscapeComponent::GetUsedMaterials Change 3237597 on 2016/12/15 by Ben.Woodhouse Disable timestamp queries on pre-Maxwell nvidia hardware. Local testing suggests that this is the major cause of instability in the UE4.14 release. It's possible that we could be more targeted by only excluding Fermi and older hardware, but identifying fermi hardware by device ID is difficult in practice, since the range overlaps with Kepler. Change 3237654 on 2016/12/15 by Daniel.Wright Non-editor compile fix Change 3238229 on 2016/12/16 by Rolando.Caloca DR - Remove ExcludeRect from inner RHI Clear methods; ensure will happen if trying to use it Change 3238236 on 2016/12/16 by Rolando.Caloca DR - Compile fixes Change 3238280 on 2016/12/16 by Marc.Olano Small optimization to Lanczos-3 upsample shader code. Change 3238321 on 2016/12/16 by Rolando.Caloca DR - Compile fix Change 3238331 on 2016/12/16 by Rolando.Caloca DR - compile fix Change 3238495 on 2016/12/16 by Marc.Olano Replace TEA random number generator with PCG. Was only used in #if-disabled reference rendering, but ldoes make better quality reference rendering when enabled. Change 3238496 on 2016/12/16 by Marc.Olano Tone mapping fix for OR-31752, cherry picked from Orion 3208273 Assumption that green is approximates luminance fails on red/blue HDR content, resulting in ugly black artifacts. Go back to luminance. Change 3238520 on 2016/12/16 by Rolando.Caloca DR - CIS Fix Change 3238571 on 2016/12/16 by Rolando.Caloca DR - CIS fix Change 3238605 on 2016/12/16 by Daniel.Wright Sharing IndirectLightingCacheTextureSampler samplers Change 3238626 on 2016/12/16 by Daniel.Wright Ray Traced Distance Field Shadow optimizations * Tighter light space tile culling * Skip ray marching pixels before the RTDF cascade near distance, or further than the cascade far distance * Depth bounds test on upsample * Created FLightTileIntersectionParameters for encapsulation of light tile culling functionality * RTDF shadow time went from 1.8ms -> .8ms and 3.1ms -> 1.2ms in FortGPUTestbed on 7870 with these changes Change 3238652 on 2016/12/16 by Rolando.Caloca DR - RHI clear methods no longer have an ExcludeRect, use DrawClearQuad functions instead Change 3238855 on 2016/12/16 by Rolando.Caloca DR - Added FRHITexture2D GetSizeXY Change 3238881 on 2016/12/16 by Rolando.Caloca DR - CIS fix Change 3239008 on 2016/12/16 by Arne.Schober DR - Fixing accidently returning a stackpointer in EnqueueRenderCommands Change 3239012 on 2016/12/16 by Arne.Schober DR - missing file Change 3239255 on 2016/12/17 by Rolando.Caloca DR - Remove shader clears from D3D11 Change 3239690 on 2016/12/19 by Rolando.Caloca DR - vk - Misc fixes from 1.0.37.00 SDK warnings Change 3239964 on 2016/12/19 by Rolando.Caloca DR - Fix click on editor not showing selected Change 3239995 on 2016/12/19 by Rolando.Caloca DR - Enable dist field on GL4 & Vulkan SM5 Change 3240162 on 2016/12/19 by Daniel.Wright Added EnableDepthBoundsTest / DisableDepthBoundsTest to RHIUtilites to share some common code Change 3240163 on 2016/12/19 by Daniel.Wright Distance field self shadowing controls for hiding world position offset self-shadow artifacts * Removed static mesh build settings DistanceFieldBias, which shrunk the distance field, breaking AO and shadows * Added DistanceFieldSelfShadowBias, which prevents occlusion close to the surface only, maintaining shadows on the ground and AO on the ground Change 3240271 on 2016/12/19 by Daniel.Wright Use 16 bit indices for distance field objects culled to tiles, when 16 bit will be enough. Saves 10mb of tile culling buffers. Change 3240282 on 2016/12/19 by Rolando.Caloca DR - Proper fix for hit proxies clear - Added missing stencil ref to DrawClearQuad Change 3240316 on 2016/12/19 by Rolando.Caloca DR - vk - Fixed some new 1.0.37.0 warnings Change 3240354 on 2016/12/19 by Rolando.Caloca DR - Dev shaders on sm4/5 Change 3240759 on 2016/12/20 by Rolando.Caloca DR - Fix bad crc on GL element declarations Change 3240895 on 2016/12/20 by Rolando.Caloca DR - vk - Swapchain fixes Change 3241057 on 2016/12/20 by Rolando.Caloca DR - vk - Fix resize on desktop Change 3241112 on 2016/12/20 by Rolando.Caloca DR - vk - Fix 1.0.37.0 warnings - Ignore some warnings we know we can't fix Change 3241310 on 2016/12/20 by Rolando.Caloca DR - vk - Fix crash Change 3241417 on 2016/12/20 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios Change 3241990 on 2016/12/21 by Daniel.Wright Converted DistanceFieldVolume data to BulkData * FDistanceFieldVolumeData Serialize time from .7s on PS4 to 0s Change 3242005 on 2016/12/21 by Daniel.Wright Removed unused !USE_DEPTH_RANGE_LISTS path to reduce complexity Change 3242295 on 2016/12/21 by Bob.Tellez Duplicating CL#3242294 from //Fortnite/Main #UE4 Re-applying the fix for rendering editor primitives when r.EarlyZPassOnlyMaterialMasking is enabled Change 3242487 on 2016/12/21 by Marcus.Wassmer Fix typo Change 3243091 on 2016/12/22 by Daniel.Wright Fixed too many groups dispatched for TConeTraceScreenGridGlobalOcclusionCS Change 3243161 on 2016/12/22 by Uriel.Doyon New async tasks for the streaming update. Optimizing the biggest frame cost. Change 3243179 on 2016/12/22 by Uriel.Doyon Fixed possible invalid access from the async FNormalizeLightmapTexelFactorTask Change 3243236 on 2016/12/22 by Daniel.Wright Fixed DFAO bilateral upsample * Depth buffer was being unbound due to lack of DepthRead_StencilNop Change 3243452 on 2016/12/23 by Ben.Woodhouse Bring back 1024 render query limit workaround on D3D12 which was lost during the merge from partners #jira UE-35247 Change 3243512 on 2016/12/23 by Uriel.Doyon Improved task system for texture streaming. Change 3243742 on 2016/12/26 by Rolando.Caloca DR - vk - Fix UAV clears - Removed old validation layer - Print found device layers Change 3243745 on 2016/12/27 by Rolando.Caloca DR - vk - Fix for texture cube arrays - Warning for ClearUAVs Change 3243762 on 2016/12/27 by Rolando.Caloca DR - vk - Always use pipeline cache Change 3244450 on 2016/12/31 by Rolando.Caloca DR - vk - Pre reqs for separate transfer queue Change 3244453 on 2016/12/31 by Rolando.Caloca DR - vk - Win32 compile fix Change 3244756 on 2017/01/03 by Marcus.Wassmer Copying //Tasks/UE4/Dev-Niagara@3244743 to Dev-Rendering (//UE4/Dev-Rendering) Change 3244757 on 2017/01/03 by Marcus.Wassmer Niagara is still experimental in non-task branches. Change 3245059 on 2017/01/03 by Benjamin.Hyder Submitting TM-TrigNodes map Change 3245500 on 2017/01/03 by Olaf.Piesche Compile fix #1 for post-merge problems Change 3245572 on 2017/01/03 by Olaf.Piesche (Speculative) fix #2 for post-merge build problem. Hopefully fixes public distribution level error for cross compiler tool. Change 3245683 on 2017/01/03 by Marcus.Wassmer Fix some niagara warnings Change 3245732 on 2017/01/03 by Marcus.Wassmer Fix Niagara compile on clang platforms. Fix a few warnings / static analysis things as well. Change 3246403 on 2017/01/04 by Rolando.Caloca DR - vk - Fix bogus warning Change 3246432 on 2017/01/04 by Marcus.Wassmer Copying //Tasks/UE4/Dev-Niagara@3246424 to Dev-Rendering (//UE4/Dev-Rendering) Change 3246538 on 2017/01/04 by Rolando.Caloca DR - vk - Show hitch time for compute psos Change 3246580 on 2017/01/04 by Rolando.Caloca DR - vk - compile fix Change 3246610 on 2017/01/04 by Rolando.Caloca DR - Compute PSO pre reqs Change 3246707 on 2017/01/04 by Marcus.Wassmer Add missing integer operations to UnrealMathDirectX.h Change 3246786 on 2017/01/04 by Marcus.Wassmer Avoid public dependency build errors. Should probably just remove the DDCUtils module instead Change 3246828 on 2017/01/04 by Olaf.Piesche UE-39249; need to check the view as well as the view family in CheckAndUpdateLastFrame; scene captures use a different family, but each eye for VR uses a different scene view. Change 3247026 on 2017/01/04 by Rolando.Caloca DR - Remove CrossCompilerTool as it's not required anymore Change 3247086 on 2017/01/04 by Marcus.Wassmer Remove includes for Core.h monolithic header Change 3247227 on 2017/01/04 by Marcus.Wassmer Fix typo and compile errors. Change 3247228 on 2017/01/04 by Marcus.Wassmer Use crossplatform intrinsics Change 3247229 on 2017/01/04 by Marcus.Wassmer Implement missing integer NEON operations. Change NEON vectorint to match name and sign from other platforms Change 3247245 on 2017/01/04 by Marcus.Wassmer Fixing various warnings/errors from clang platforms (Mac/Linux) Change 3247331 on 2017/01/04 by Marcus.Wassmer More Mac/clang fixes Change 3247958 on 2017/01/05 by Marcus.Wassmer VectorInt < - > Float ops should be conversions not reinterpret cast Change 3247959 on 2017/01/05 by Marcus.Wassmer Add missing ops to non-vector header Change 3247964 on 2017/01/05 by Rolando.Caloca DR - Temp fix for crash #jira UE-40211 Change 3248067 on 2017/01/05 by Rolando.Caloca DR - Static analysis fixes #jira UE-40167 Change 3248284 on 2017/01/05 by Rolando.Caloca DR - Linuix Compile fix #jira UE-40260 Change 3248288 on 2017/01/05 by Rolando.Caloca DR - Linux compile fix #jira UE-40264 Change 3248399 on 2017/01/05 by Brian.Karis Filtered importance sampling for envmap prefiltering. Fixed SSR on clearcoat with skylight only. Change 3248503 on 2017/01/05 by Rolando.Caloca DR - Linux fixes #jira UE-40264 Change 3248666 on 2017/01/05 by Brian.Karis Fix GL compile error Change 3248740 on 2017/01/05 by Marcus.Wassmer Fix linux and clang errors/warnings Change 3248851 on 2017/01/05 by Marcus.Wassmer Simplest fix for ES2 compile errors Change 3249217 on 2017/01/06 by Simon.Tovey Speculative fix for static analysis warning Change 3249296 on 2017/01/06 by Ben.Woodhouse XB1/Fast semantics: Add missing L1/L2 cache flush on transition to readable (or RW). The missing cache flush was causing indeterminism when reading from a texture shortly after writing to it as a render target. This fixes bloom and diffuse irradiance issues The bug has been there for a while, but CL 3227787 (drawclear early out) caused it to manifest #jira UE-39727 #jira UE-40238 Change 3249300 on 2017/01/06 by Ben.Woodhouse Remove workaround for diffuse irradiance (redundant clear). No longer necessary with CL 3249296 Change 3249387 on 2017/01/06 by Rolando.Caloca DR - Fix GL clear issues #jira UE-40254 Change 3249435 on 2017/01/06 by Ben.Woodhouse Duplicated from UT CL 3238664 Fix dbuffer decal rendering issues in fullscreen on PC. Also fixes crash in editor when viewing dbuffer materials. Pass clearcolor in RT params for system textures to workaround a bug with ClearColorTexture not working in fullscreen mode on DX11. Make sure dbuffer targets are bound if we're rendering mesh decals #jira UT-6891 #jira UE-39842 Change 3249721 on 2017/01/06 by Marcus.Wassmer Remove final references to non-existent Niagara data Change 3249742 on 2017/01/06 by Marcus.Wassmer Fix missing GPU particles on Mac. Pointers getting reused is causing the blendstate equality operator to fail. Simple workaround until we have time for a proper fix. [CL 3249983 by Marcus Wassmer in Main branch]
2017-01-06 17:51:46 -05:00
DrawClearQuad(Context.RHICmdList, Context.GetFeatureLevel(), false, FLinearColor(), true, (float)ERHIZBuffer::FarPlane, true, 0, PassOutputs[0].RenderTargetDesc.Extent, FIntRect());
Context.RHICmdList.SetScissorRect(false, 0, 0, 0, 0);
}
}
// Resolve to the output
Context.RHICmdList.CopyToResolveTarget(DestRenderTarget.TargetableTexture, DestRenderTarget.ShaderResourceTexture, false, FResolveParams());
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3082391) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3051464 on 2016/07/15 by Nick.Darnell Regression Testing - Several upgrades to the functional testing system, better tracking of failure cases, some source line failure detection, trying to make it easier to run a specific test on a map. Some UI improvements, easier access to the automation system. Lots more refactoring to come, lots of improvements are still needed in transmitting screenshots and just generally building a automation report we could dump from the build machines. Change 3051465 on 2016/07/15 by Nick.Darnell Adding the "Engine Test" project our one stop shope for running automation tests in the engine to try and reduce regressions. Change 3051847 on 2016/07/15 by Matt.Kuhlenschmidt Fixed material editor viewport messages being blocked by viewport toolbar Change 3052025 on 2016/07/15 by Nick.Darnell Moving the placement mode hooks out of functional testing module, moving them into the editor automation module. Change 3053508 on 2016/07/18 by Stephan.Jiang Copy,Cut,Paste tracks, not for mastertracks yet. #UE-31808 Change 3054723 on 2016/07/18 by Stephan.Jiang Small fixes for typo & comments Change 3055996 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received Change 3056106 on 2016/07/19 by Trung.Le Back out changelist 3055996. Build break. Change 3056108 on 2016/07/19 by Stephan.Jiang Updating "SoundConcurrency" asseticon Change 3056389 on 2016/07/19 by Trung.Le PIE: No longer auto resume game in PIE on focus received #jira UE-33339 Change 3056396 on 2016/07/19 by Matt.Kuhlenschmidt More perf selection improvements: - Static meshes now go through the static draw path when rendered for selection outline instead of just rendering using the dynamic path Change 3056758 on 2016/07/19 by Stephan.Jiang Update SelectedWidgets in WidgetblueprintEditor to match the selected tracks in sequencer. Change 3057519 on 2016/07/20 by Matt.Kuhlenschmidt Another fix for selecting lots of objects taking forever. This one is due to repeated Modify calls if there are groups in the selection. Each group actor selected iterates through each object selected during USelection::Modify! Change 3057635 on 2016/07/20 by Stephan.Jiang Updating visual logger icon UI Change 3057645 on 2016/07/20 by Richard.TalbotWatkin 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 3057868 on 2016/07/20 by Richard.TalbotWatkin 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. Change 3057895 on 2016/07/20 by Richard.TalbotWatkin 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 3057966 on 2016/07/20 by Richard.TalbotWatkin Renamed IsEditingArchetype to IsVisualizingArchetype in the ComponentVisualizer API. #jira UE-33049 - Transform widget visible in blueprint viewport when editing spline points in editor viewport Change 3058009 on 2016/07/20 by Richard.TalbotWatkin Fixed build failure due to changes to FComponentVisualizer API, as of CL 3057868. Change 3058047 on 2016/07/20 by Stephan.Jiang Fixing error on previous CL: 3056758 (extra qualification) Change 3058266 on 2016/07/20 by Nick.Darnell Automation - Work continues on automation integrating some ideas form a licensee. Continuing to work on the usability aspects, I've made it possible for tests to provide custom open commands, as well as have complex subclasses that do different things. The functional tests now have a custom open command they emit that makes it so clicking on a test opens not the C++ location where the functional test macro lives, but instead the map, AND focuses the functional test actor. Change 3058282 on 2016/07/20 by Matt.Kuhlenschmidt PR #2611: Fix spurious component diff when properties are in subcategories (Contributed by CA-ADuran) Change 3059214 on 2016/07/21 by Richard.TalbotWatkin Further fixes to visualizers following Component Visualizer API change. Change 3059260 on 2016/07/21 by Richard.TalbotWatkin Template specialization not allowed in class scope, but Visual Studio allows it anyway. Fixed for clang. Change 3059543 on 2016/07/21 by Stephan.Jiang Changeing level details icon Change 3059732 on 2016/07/21 by Stephan.Jiang Directional Light icon update Change 3060095 on 2016/07/21 by Stephan.Jiang Directional Light editor icon asset changed Change 3060129 on 2016/07/21 by Nick.Darnell Automation - The session browser now attempts to select the app instance if no other thing is selected when it refreshes. This is to try and make it easier to use when you first bring it up and nothing is selected when most of the time you're going to use it on your own instance. Change 3061735 on 2016/07/22 by Stephan.Jiang Improve UMG replace with in HierarchyView function #UE-33582 Change 3062059 on 2016/07/22 by Stephan.Jiang Strip off "b" in propertyname in replace with function for tracks. Change 3062146 on 2016/07/22 by Stephan.Jiang checkin with CL: 3061735 Change 3062182 on 2016/07/22 by Stephan.Jiang Change both animation bindings' widget name when renameing the widget so the slot content is still valid Change 3062257 on 2016/07/22 by Stephan.Jiang comments Change 3062381 on 2016/07/22 by Nick.Darnell Build - Adding #undef LOCTEXT_NAMESPACE to try and fix the build. Change 3062924 on 2016/07/25 by Chris.Wood Fix a crash in CrashReportClient that happens when the CrashReportReceiver is not responding to pings and there are no PendingReportDirectories. This is a change in the UE4 stream depot based on a fix in the Fortnite stream depot -> JIRA FORT-27570 Change 3063017 on 2016/07/25 by Matt.Kuhlenschmidt PR #2618: DebuggerCommand not recording PlayLocationString (Contributed by ungalyant) Change 3063021 on 2016/07/25 by Matt.Kuhlenschmidt PR #2619: added a search box to ModuleUI (Contributed by straymist) Change 3063084 on 2016/07/25 by Matt.Kuhlenschmidt Fix "YesToAll" when deleting referenced actors overriding the "YesToAll" state for other referenced messages. https://jira.ol.epicgames.net/browse/UE-33651 #jira UE-33651 Change 3063091 on 2016/07/25 by Alex.Delesky #jira UE-32949 - Truncating the hue inside the theme color block tooltip to only display whole numbers, to match how the color picker displays the hue value inside the hue scrubber. Change 3063388 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Fix large FName creation time when selecting thousands of objects Change 3063568 on 2016/07/25 by Matt.Kuhlenschmidt Selection Perf: - Modified how USelection stores classes. Classes are now in a TSet and can be accessed efficiently using IsClassSelected. The old unused way of checking if a selection has a class by iterating through them is deprecated - USelection no longer directly checks if an item is already selected with a costly n^2 search. The check is done by using the already existing UObject selected annotation - Object property nodes no longer perform an n^2 check for object uniqueness when objects are added to details panels. This is now left up to the caller to avoid - Eliminated useless work on FObjectPropertyNode::GetReadAddressUncached. If a read address list is not passed in we'll not attempt to the work to populate it - Removed expensive checking for brush actors when any actor is selected Change 3063749 on 2016/07/25 by Stephan.Jiang Disallow naming the widgetanimation to the same name with a override function in uuserwidget, because it will trigger a breakpoint in Rename() #jira UE-33711 Change 3064585 on 2016/07/26 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3064612 on 2016/07/26 by Alex.Delesky #jira UE-33712 - Deleting many assets at once will now batch SourceControl commands rather than executing one for each asset. Change 3064647 on 2016/07/26 by Alexis.Matte #jira UE-33274 dont hash the same file over and over when importing multiple asset from one fbx file. Change 3064739 on 2016/07/26 by Matt.Kuhlenschmidt Fixed typo Change 3064795 on 2016/07/26 by Jamie.Dale Fixed typo in FLocalizationModule::GetLocalizationTargetByName #jira UE-32961 Change 3066461 on 2016/07/27 by Jamie.Dale Enabled stable localization keys Change 3066463 on 2016/07/27 by Jamie.Dale Set "Build Engine Localization" to upload all cultures to ensure we don't lose translation due to the archive keying changes Change 3066467 on 2016/07/27 by Jamie.Dale Updated internationalization archives to store translations per-identity This allows translators to translate each instance of a piece of text based upon their context, rather than requiring a content producer to go back and give the entry a unique namespace. It also allows us to optionally compile out-of-date translations, as they are now mapped to their source identity (namespace + key) rather than their source text. Major changes: - Added FLocTextHelper. This acts as a high-level API for uncompiled localized text, and replaces all the old ad-hoc loading/saving of manifests and archives, ensuring that everything is consistently using source control, and that older archives can be upgraded correctly to the new format. It also takes care of some of the quirks of our archives, such as native translations. All major localization commandlets have been updated to use FLocTextHelper. - Moved FTextLocalizationResourceGenerator from Core to Internationalization. This also allows IJsonInternationalizationManifestSerializer and IJsonInternationalizationArchiveSerializer to be removed, and for FJsonInternationalizationManifestSerializer and FJsonInternationalizationArchiveSerializer to have all their functions become static. - FTextLocalizationResourceGenerator being moved from Core meant that FTextLocalizationManager::LoadFromManifestAndArchives was also removed. This functionality is now handled by FTextLocalizationResourceGenerator::GenerateAndUpdateLiveEntriesFromConfig. - The RepairLocalizationData commandlet has been removed. This existed to fix a change that pre-dated 4.0 so no such data should exist in the wild, and the commandlet couldn't be updated to work with the new API (we handle format upgrades in-place now). - Removed FInternationalizationArchive::FindEntryBySource as it is no-longer safe to use. All existing code has been updated to use FInternationalizationArchive::FindEntryByKey instead. Workflow changes: - Archive conditioning now only adds new entries if they don't exist in the archive. This allows us to persist any existing translations, even if they're for old source text (caveat: native archives still update existing entries if the source is changed). - PO export now sets the msgctx for each entry to be "namespace,key", rather than only doing it when the entry had key meta-data. - PO import will now update both the source and translation stored in the archive to match the current PO data. This is the primary method by which stale source->translation pairs are updated. - LocRes compilation may now optionally compile stale translations. There's an option controlling this (defaulted to off) that can be changed via the Localization Dashboard (or added to an existing config file). Format changes: - The archive version was bumped to 2. - Archive entries now use the "Key" entry to store the key from the source text. Previously this "Key" entry was used to store the key meta-data, but that now exists within a "MetaData" sub-object. Loading handles this correctly based upon the archive version. #jira UETOOL-897 #jira UETOOL-898 #jira UE-29481 Change 3066487 on 2016/07/27 by Matt.Kuhlenschmidt Attempt to fix linux compilation Change 3066504 on 2016/07/27 by Matt.Kuhlenschmidt Fixed data tables with structs crashing due to recent editor selection optimizations Change 3066886 on 2016/07/27 by Jamie.Dale Added required data to accurately detect TZ (needed for DST) #jira UE-28511 Change 3067122 on 2016/07/27 by Jamie.Dale Added AsTime, AsDateTime, and AsDate overrides to BP to let you format a UTC time in a given timezone (default is the local timezone). Previously you could only format times using the "invariant" timezone, which assumed that the time was already specified in the correct timezone for display. Change 3067227 on 2016/07/27 by Jamie.Dale Added a test to verify that the ICU timezone is set correctly to produce local time (including DST) Change 3067313 on 2016/07/27 by Richard.TalbotWatkin Fixed SplineComponent constructor so that old assets (prior to the property changes) load correctly if they had properties at default values. #jira UE-33669 - Crash in Dev-Editor Change 3067736 on 2016/07/27 by Stephan.Jiang Border changes for experimental classes warning Change 3067769 on 2016/07/27 by Stephan.Jiang HERE BE DRAGONS for experimental class warning #UE-33780 Change 3068192 on 2016/07/28 by Alexis.Matte #jira UE-33586 make sure we remove any false warning when running fbx automation test. Change 3068264 on 2016/07/28 by Jamie.Dale Removed some code that was no longer needed and could cause a crash #jira UE-33342 Change 3068293 on 2016/07/28 by Alex.Delesky #jira UE-33620 - Comments on constant and parameter nodes in the Material Editor will now persist when converting them. Change 3068481 on 2016/07/28 by Stephan.Jiang Adding Options to show/hide soft & hard references & dependencies in References Viewer #jira UE-33746 Change 3068585 on 2016/07/28 by Richard.TalbotWatkin Fix to Spline Mesh collision building so that geometry does not default to being auto-inflated in PhysX. Change 3068701 on 2016/07/28 by Matt.Kuhlenschmidt Fixed some issues with the selected classes not updating when objects are deselected Change 3069335 on 2016/07/28 by Jamie.Dale Fixed unintended error when trying to load a manifest/archive that didn't exist Fixed a warning when trying to load a PO file that didn't exist Change 3069408 on 2016/07/28 by Alex.Delesky #jira UE-33429 - The editor should no longer hit an ensure if the user attempts to drop a tab into a tab well before the tab well has a chance to acknowledge its been dragged into a tab well. Change 3069878 on 2016/07/29 by Jamie.Dale Fixed include casing #jira UE-33910 Change 3071807 on 2016/08/01 by Matt.Kuhlenschmidt PR #2654: Fix the spell'ing of "diff'ing" and "diff'd". (Contributed by geary) Change 3071813 on 2016/08/01 by Jamie.Dale Fixed include casing #jira UE-33936 Change 3072043 on 2016/08/01 by Jamie.Dale Fixed FText formatting of pre-Gregorian dates We now convert to an ICU UDate via an ICU GregorianCalendar, as UE4 and ICU have a different time scale for pre-Gregorian dates. #jira UE-14504 Change 3072066 on 2016/08/01 by Jamie.Dale PR #2590: FEATURE: Collapse/expand folders in the outliner (Contributed by projectgheist) Change 3072149 on 2016/08/01 by Jamie.Dale We no longer use the editor culture when running with -game Change 3072169 on 2016/08/01 by Richard.TalbotWatkin 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 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 3072221 on 2016/08/01 by Jamie.Dale Fixed "Launch On" not providing the correct cultures to StartCookByTheBookInEditor #jira UE-33001 Change 3073389 on 2016/08/02 by Matt.Kuhlenschmidt Added ability to vsync the editor. Disabled by default. Set r.VSyncEditor to 1 to enable it. Reimplemented this change from the siggraph demo stream Change 3073396 on 2016/08/02 by Matt.Kuhlenschmidt Removed unused code as suggested by a pull request Change 3073750 on 2016/08/02 by Richard.TalbotWatkin Fixed formatting (broken in CL 3057895) in anticipation of merge from Main. Change 3073789 on 2016/08/02 by Jamie.Dale Added a way to mark text in text properties as culture invariant This allows you to flag properties containing text that doesn't need to be gathered. #jira UE-33713 Change 3073825 on 2016/08/02 by Stephan.Jiang Material Editor: Highligh all Nodes connect to an input. #jira UE-32502 Change 3073947 on 2016/08/02 by Stephan.Jiang UMG Project settings to show/hide different classes and categories in Palette view. --under Project Settings ->Editor->UMG Editor Change 3074012 on 2016/08/02 by Stephan.Jiang Minor changes and comments for CL: 3073947 Change 3074029 on 2016/08/02 by Jamie.Dale Deleting folders in the Content Browser now removes the folder from disk #jira UE-24303 Change 3074054 on 2016/08/02 by Matt.Kuhlenschmidt Added missing stats to track pooled vertex and index buffer cpu memory A new slate allocator was added to track memory usage for this case. Change 3074056 on 2016/08/02 by Matt.Kuhlenschmidt Renamed a few slate stats for consistency Change 3074810 on 2016/08/02 by Matt.Kuhlenschmidt Moved geometry cache asset type to the animation category. It is not a basic asset type Change 3074826 on 2016/08/02 by Matt.Kuhlenschmidt Fix a few padding and sizing issues Change 3075322 on 2016/08/03 by Matt.Kuhlenschmidt Settings UI improvements * Added the ability to search through all settings at once * Settings files which are not checked out are no longer grayed out. The editor now attempts to check out the file automatically if connected to source control and if that fails it marks the settings file writiable so it can save the setting properly ------- * This change adds a refactor to the details panel to support multiple top level objects existing in the details panel at once instead of combining all passed in objects to a single common base class. This is disabled by default but can be turned on setting bAllowMultipleTopLevelObjects to true in FDetailsViewArgs when creating a details panel. * Each top level object in a details panel will get their own customization instance. This made it necessary to deprecate a IDetailsView::GetBaseClass since there is no longer guaranteed to be one base class. *Details panels can have their own customization for each "root object header" in order to customize the look of having multiple top level objects in the details panel. Change 3075369 on 2016/08/03 by Matt.Kuhlenschmidt Removed FBX scene as a top level option in asset filter menu in the content browser. Change 3075556 on 2016/08/03 by Matt.Kuhlenschmidt Mac warning fix Change 3075603 on 2016/08/03 by Nick.Darnell Adding two new plugins to engine, one for editor and one for runtime based testing. Currently the only consumer of these plugins is going to be the EngineTest project. Change 3075605 on 2016/08/03 by Nick.Darnell Functional Testing - Continued work on cleanup, reorganization, trying to improve the workflow for using the session browser. Change 3076084 on 2016/08/03 by Jamie.Dale Added basic support for localizing plugins You can now localize plugins! There's no localization dashboard integration for this so it has to be done manually. You need to define the localization targets your plugin uses in its .uplugin file, eg) "LocalizationTargets": [ { "Name": "Paper2D", "LoadingPolicy": "Always" } ] "Name" should match a localization config under the Config/Localization folder for your plugin. These configs are set-up the same as any other localization config. "LoadingPolicy" may be one of Never, Always, Editor, Game, PropertyNames, or ToolTips. This allows you to control under what conditions your localizations should be loaded (eg, if your plugin has both game and editor data, you can separate the editor data off into its own localization target that's only loaded by the editor). UAT has been updated to support gathering from plugins. You can use the "IncludePlugins" flag to have it gather all plugins, or you can specify a whitelist of plugins to gather as an argument to "IncludePlugins", or alternatively, may blacklist certain plugins via "ExcludePlugins". It can now also support out-of-source gathering via the "UEProjectRoot" argument (previously it assumed that everything would be under the UE4 install/checkout directory). UAT has been updated to support staging plugin LocRes files. It will stage any plugin targets that are enabled for a game/client build, and are also from a plugin that's enabled for your project. #jira UE-4217 Change 3076123 on 2016/08/03 by Stephan.Jiang Extend "Select all input nodes" function to general blueprint editor Change 3077103 on 2016/08/04 by Jamie.Dale Added support for underlined text rendering (including with drop-shadows) FTextBlockStyle can now specify a brush to use to draw an underline for text (a suitable default would be "DefaultTextUnderline" from FCoreStyle). When a brush is specified here, we inject FSlateTextUnderlineLineHighlighter highlights into the text layout to draw the underline under the relevant pieces of text, using the correct color, position, and thickness. FSlateFontCache::GetUnderlineMetrics and FSlateFontRenderer::GetUnderlineMetrics have been added to handle getting the underline metrics (which are slightly different to the baseline). This change also adds FTextLayout::RemoveRunRenderer and FTextLayout::RemoveLineHighlight to fix some bad assumptions that FSlateEditableTextLayout and FTextBlockLayout were making about ownership of run renderers and line highlighters that could cause them to remove instances they didn't own (such as the new underline highlighter) when updating things like the cursor position or highlight. Change 3077842 on 2016/08/04 by Jamie.Dale Fixed fallout from API changes Change 3077999 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 3078000 on 2016/08/04 by Trung.Le Categories VREditor-specific UMG widget assets as "VR Editor" #jira UE-34134 Change 3078056 on 2016/08/04 by Nick.Darnell Build - Fixing a mac compiler warning, reodering constructor initializers. Change 3078813 on 2016/08/05 by Nick.Darnell Reorganizing editor tests, establishing plugins in the EditorTest project that will house the tests. Change 3078818 on 2016/08/05 by Nick.Darnell Additional rename and cleanup associated with test moving. Change 3078819 on 2016/08/05 by Nick.Darnell Removing the Oculus performance automation test, not running, and was unclaimed. Change 3078842 on 2016/08/05 by Nick.Darnell Continued reorganizing tests. Change 3078897 on 2016/08/05 by Nick.Darnell Additional changes to get some moved tests compiling Change 3079157 on 2016/08/05 by Nick.Darnell Making it possible to browse provider names thorugh the source control module interface. Change 3079176 on 2016/08/05 by Stephan.Jiang Add shortcut Ctrl+Shift+Space to rotate through different viewport options #jira UE-34140 Change 3079208 on 2016/08/05 by Stephan.Jiang Fix new animation name check in UMG Change 3079278 on 2016/08/05 by Nick.Darnell Fixing the build Change 3080555 on 2016/08/08 by Matt.Kuhlenschmidt Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 3081155 on 2016/08/08 by Nick.Darnell Fixing some issues with the editor tests / runtime tests under certain build configs. Change 3081243 on 2016/08/08 by Stephan.Jiang Add gesture in LevelViewport to switch between Top/Bottom...etc. Change 3082226 on 2016/08/09 by Matt.Kuhlenschmidt Work around animations not playing in paragon due to bsp rebuilds (UE-34391) Change 3082254 on 2016/08/09 by Stephan.Jiang DragTool_ViewportChange init changes [CL 3082411 by Matt Kuhlenschmidt in Main branch]
2016-08-09 11:28:56 -04:00
#endif
}
FPooledRenderTargetDesc FRCPassPostProcessSelectionOutlineColor::ComputeOutputDesc(EPassOutputId InPassOutputId) const
{
FPooledRenderTargetDesc Ret = GetInput(ePId_Input0)->GetOutput()->RenderTargetDesc;
Ret.Reset();
Ret.Format = PF_DepthStencil;
Ret.Flags = TexCreate_None;
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
Ret.ClearValue = FClearValueBinding::DepthFar;
Copying //UE4/Release-Staging-4.14 to //UE4/Dev-Main (Source: //UE4/Release-4.14 @ 3182951) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3182951 on 2016/11/02 by Luke.Thatcher [RELEASE] [PS4] [!] Fix "play together" invitations handling in PS4 OSS. - Wrong condition in GetUserWebApiContext. Web API contexts can be created for local users (i.e. FUniqueNetIdPS4 instances with a valid SceUserServiceUserId). #jira UE-38017 Change 3182892 on 2016/11/02 by Luke.Thatcher [RELEASE] [PS4] [!] Fix incorrect identity API implementation in PS4 OSS. - System events directly drive the login state of a user. This also removes the blocking call to sceNpGetState(). - GetAuthToken is only called if the engine calls IOnlineIdentity::Login(). #jira UE-38017 Change 3182767 on 2016/11/02 by Luke.Thatcher [RELEASE] [PS4] [!] Fix PS4 session invitations. - Was calling old Web API with SceNpOnlineId where SceNpAccountId is needed. - Replaced with NpToolkit2's session invitation API. #jira UE-38020 Change 3182766 on 2016/11/02 by Luke.Thatcher [RELEASE] [PS4] [!] Fix assert in FUniqueNetIdPS4::FindOrCreate. We were assuming an online-only ID could never become a local ID. This isn't the case in the following scenario: - Two users join a session on two separate PS4s. - One user signs into the other user's PS4 with the same account, with a second controller. PSN logs him out of the first PS4. - That user's Net ID has now migrated from being online-only, to local-with-online. This is a case that was not handled. #jira UE-38017 UE-38020 Change 3182765 on 2016/11/02 by Luke.Thatcher [RELEASE] [PS4] [~] Additional logging for PS4 OSS "Play Together". #jira UE-38017 UE-38020 Change 3182633 on 2016/11/01 by Jack.Porter Fix crash sculpting a landscape with grass that uses the landscape's lightmap, when lighting has not been built #jira UE-38042 Change 3182332 on 2016/11/01 by Mieszko.Zielinski Added a sanity check to UNavigationSystem::AddElementToNavOctree to guard agains DirtyElement.NavInterface being null #UE4 #jira UE-37588 Change 3182321 on 2016/11/01 by Dmitry.Rekman Updated READMEs for 4.14 (UE-38059). #jira UE-38059 Change 3182231 on 2016/11/01 by Mitchell.Wilson Adding Is Valid node in Retargeting_WorldInteractionBP to resolve warning. #jira UE-38079 Change 3182164 on 2016/11/01 by Matt.Kuhlenschmidt Fix alll collision being disabled if you dont auto-generate a simple hull when importing an FBX #jira UE-38091 Change 3182017 on 2016/11/01 by Chris.Babcock Disable glVertexAttribIPointer on PowerVR Rogue #jira UE-38074 #ue4 #android Change 3181942 on 2016/11/01 by Mitchell.Wilson Resolving multiple warnings in CIS for Elemental Demo. #jira UE-38075 Change 3181941 on 2016/11/01 by Nick.Shin PhysX Bulid Automation script update #jira UE-37329 'Compile UE4Game HTML5' - 300 Warnings Change 3181939 on 2016/11/01 by Ryan.Vance #jira UE-38072 We need to add a hook that can be called after native present has finished for SteamVR. PostPresentHandoff should be called when using the interleaved compositor immediately after we've submitted our eye buffers and called present for the mirror window. This unblocks the compositor process so it can do it's re-projection work. Otherwise it will block until we call WaitGetPoses which is a ways into the next frame. Change 3181849 on 2016/11/01 by Nick.Shin jukka's (Mozilla) fixes to SSE2 and GL issues for HTML5 jukka's (Mozilla) python scripts to build ThirdParty HTML5 libs the python scripts will need tweaking - they were moved from their original locations from: https://github.com/Mozilla-Games/UnrealEngine/commit/fd48bc0e4a5f0278a1c036d2b81036ab1270ad68 the CMakeLists.txt (and one configure.ac) files are defiinitely used from the (bash) shell build script (to build thirdparty libs for HTML5)... update existing (bash shell script and UE4 c#) build files to use the new "incoming" emsdk #jira UE-37329 -'Compile UE4Game HTML5' - 300 Warnings Change 3181848 on 2016/11/01 by Nick.Shin update compiled ThirdParty HTML5 libs using new emscripten tool chain (CL:#3180924) #jira UE-37329 - //UE4/Main: Step 'Compile UE4Game HTML5' - 300 Warnings Change 3181838 on 2016/11/01 by Nick.Shin new emscripten tool chain configured by jukka from Mozilla see Engine/Extras/ThirdPartyNotUE/emsdk/emscripten/incoming/EPIC_VERSION for details on where did this version come from #jira UE-37329 - //UE4/Main: Step 'Compile UE4Game HTML5' - 300 Warnings Change 3181611 on 2016/11/01 by Allan.Bentham Recreate vulkan swapchain after a pause/resume on android. #jira UE-36454 Change 3181451 on 2016/11/01 by Chris.Wood CrashReportClient no longer attempts to restart Launcher-run Editors via IPC with the Launcher. They are now restarted directly. [UE-37794] - Send and Restart from Crash Reporter Opens Project Browser Launcher can't accept command line args when restarting an application so it can't restart the editor with the right project. Also fixes broken SlateReflector in CRC (switched off in checked in version) #jira UE-37794 Change 3181117 on 2016/11/01 by Dmitriy.Dyomin Fixed: Text Actors not Rendering on Mobile PowerVR based devices were rendring opaque objects twice #jira UE-37949 Change 3181102 on 2016/11/01 by Jack.Porter Fix for editor crash during Landscape sculpting on pressing Ctrl+z (Subdivision enabled in material) #jira UE-36050 Change 3180851 on 2016/10/31 by Daniel.Wright Ray Traced Distance Field shadows must be projected last, since they overlap the depth range as Far CSM. Fixes Kite demo medium-distance shadowing. #jira UE-37793 Change 3180844 on 2016/10/31 by Michael.Trepka Disabled high-DPI in Mac CrashReportClient #jira UE-37697 Change 3180803 on 2016/10/31 by Michael.Trepka Setup Mac Metal layer on the main thread to solve issues with empty game window when showing a separate log window. #jira UE-37998 Change 3180764 on 2016/10/31 by zachary.wilson Checkking in content for Lighting scenarios test, currently incomplete but needed for bug repro #jira UE-29618 Change 3180666 on 2016/10/31 by Dmitry.Rekman Fix Linux client & server hang when decoding voice chat (UE-36108). - break out of voice channel while loop if unable to serialize the voice packet data. - fixed by JoshM #jira UE-36108 Change 3180428 on 2016/10/31 by Mitchell.Wilson Rebuilt lighting in all Content Examples levels and saved to resolve warnings. #jira UE-37880 Change 3180399 on 2016/10/31 by Dmitry.Rekman Linux: revert to old commandline switch -binnedmalloc (UE-38001). #jira UE-38001 Change 3180298 on 2016/10/31 by Steve.Robb Extra information about which class has failed to have its CppStructOps initialized. #jira UE-37921 Change 3180289 on 2016/10/31 by John.Pollard Fix crash in FCurlHttpRequest::DebugCallback + Specify the string length to FString's constructor as the result from StringCast is not null terminated if the string's length is specified (instead of assuming null termination). #jira UE-36658 Change 3180200 on 2016/10/31 by Benjamin.Hyder Updating QA-Materials to include BuiltData #jira UE-29618 Change 3180173 on 2016/10/31 by Nick.Whiting Fixing up static analysis warning about array size in GoogleVRHMD code #jira UE-38007 Change 3180123 on 2016/10/31 by ryan.brucks #jira UE-35977 hooked up missing transform node inside of newly added function so that it works with variable rotations. Change 3180108 on 2016/10/31 by Benjamin.Hyder Updating QA-Effects map to include BuiltData #jira UE-29618 Change 3180104 on 2016/10/31 by Marc.Audy Don't recreate the render state if the component got unregistered in the interim. #jira UE-37968 Change 3180084 on 2016/10/31 by Allan.Bentham Use glVertexAttribIPointer for ES3. Enable SupportsTextureMaxLevel for ES3. ensure GL_HALF_FLOAT is used for vertex half float format on ES3 (instead of GL_HALF_FLOAT_OES) Fix assert when previewing ES3.1 with PC OpenGL. #jira UE-37472 Change 3180082 on 2016/10/31 by Luke.Thatcher [RELEASE] [PS4] [-] Back out PS4 OSS warnings filter in UBT output (original CL 3150360). - We weren't relying on this anyway, since the build machines are filtering based on a perl script (See CL 3151027) #jira UEPLAT-1424 Change 3180044 on 2016/10/31 by Michael.Trepka Don't create additional autorelease pool for Metal context on the game thread. #jira UE-37894 Change 3180023 on 2016/10/31 by Luke.Thatcher [RELEASE] [PS4] [^] Merge (as edit) PlayStation 4 Online Subsystem refactor for Sony SDK 4.008.061 (CL 3178249) from //UE4/Dev-Platform to OrionGame in //UE4/Release-4.14 Original CL description: [~] Upgrade PlayStation 4 Online Subsystem to be compliant with Sony's new APIs in SDK 4.008.061. - Replaced deprecated APIs with new ones. - Replaced NpToolkit with NpToolkit2. - Refactor of FUniqueNetIdPS4 and related code. FUniqueNetIdPS4 is now immutable and immovable. - Added online ID cache system, which calls out to Sony's new ID Mapper Web API. Contains a breaking change in FUniqueNetId - FUniqueNetId::ToString() now returns the SceNpAccountId string of a user, rather than the SceNpOnlineId string. - Custom backends which rely on this string to identify users will need to support SceNpAccountIds, and map them to existing accounts. #jira UEPLAT-1424 Change 3179973 on 2016/10/31 by Sam.Deiter #Jira UEDOC - 3957 #UE4 Docs: Fixing typos in the landscape tutorials for bug UEDOC - 3957 #Code_Review lauren.ridge, jeff.wilson, ian.shadden, wes.bunn, chase.mcallister, robert.gervais Change 3179930 on 2016/10/31 by Luke.Thatcher [RELEASE] [PS4] [^] Merge (as edit) PlayStation 4 Online Subsystem refactor for Sony SDK 4.008.061 (CL 3178249) from //UE4/Dev-Platform to //UE4/Release-4.14 Original CL description: [~] Upgrade PlayStation 4 Online Subsystem to be compliant with Sony's new APIs in SDK 4.008.061. - Replaced deprecated APIs with new ones. - Replaced NpToolkit with NpToolkit2. - Refactor of FUniqueNetIdPS4 and related code. FUniqueNetIdPS4 is now immutable and immovable. - Added online ID cache system, which calls out to Sony's new ID Mapper Web API. Contains a breaking change in FUniqueNetId - FUniqueNetId::ToString() now returns the SceNpAccountId string of a user, rather than the SceNpOnlineId string. - Custom backends which rely on this string to identify users will need to support SceNpAccountIds, and map them to existing accounts. #jira UEPLAT-1424 Change 3179539 on 2016/10/31 by Jack.Porter Fix crash when Toggling Landscape Mode with Hidden Sub-Level containing a Landscape #jira UE-37954 Change 3179309 on 2016/10/29 by Benjamin.Hyder Re-Saving Foliage asset in Tm-DistanceFields #jira UE-29618 Change 3179308 on 2016/10/29 by Benjamin.Hyder updating AutoLOD settings for foliage example in TM-Shadermodels #jira UE-29618 Change 3179135 on 2016/10/28 by Chris.Babcock Only use alternative event flow for Daydream packaged applications #jira UE-37847 #ue4 #android Change 3178995 on 2016/10/28 by JohnHenry.Carawon Adding test content for the World Origin Rebasing feature #jira UE-29618 Change 3178994 on 2016/10/28 by Chris.Babcock Disable ARM64 Google Play Games - need new library to fix crash #jira UE-37972 #ue4 #android Change 3178955 on 2016/10/28 by Marc.Audy Don't worry about clearing from world's end of frame update frame if being GC'd #jira UE-37928 Change 3178921 on 2016/10/28 by Daniel.Wright [Copy] Scene captures and planar reflections force a scene color alpha channel to be used when they are capturing (does not affect the scene color format for the main views). Fixes planar reflections with r.SceneColorFormat=3. Setup scissor for scene depth resolves, helps with passes using screenpercentage to reduce resolution. Planar reflection depth resolves .8ms -> .2ms on 970 #jira UE-37970 Change 3178919 on 2016/10/28 by Daniel.Wright [Copy] Fixed planar reflections in forward shading. The change to disable checkerboard SSS caused scene color alpha to be non-zero for opaque / masked pixels in forward, but there's no SSS pass run later to correct it, since this is the forward rendering path. #jira UE-37970 Change 3178905 on 2016/10/28 by Max.Chen Sequencer: Fix fade track instance compile #jira UE-37939 Change 3178808 on 2016/10/28 by Dmitry.Rekman Linux: fix crash on exit (UE-37536). - Base virtual function (PostRun()) was called due to thread being stopped at the moment when the subclass destructor has already run. #jira UE-37536 (Edigrating 3175651 from Dev-Platform to Release-4.14) Change 3178707 on 2016/10/28 by Marc.Audy Fix inverted null check that caused load game from slot to fail if using a BP generated class #jira UE-37774 Change 3178664 on 2016/10/28 by Alexis.Matte Fix the fbx automation tests #jira UE-37960 Change 3178617 on 2016/10/28 by Bart.Hawthorne Fix issue where changing the world origin in a single player game would try to access the FNetworkPredictionData_Client_Character on character movement components #jira UE-37692 #tests ran QA game and tested that assert no longer fired in debug Change 3178615 on 2016/10/28 by Max.Chen Matinee to Level Sequence: Added interface to extend the matinee to level sequence converter Copy from Dev-Sequencer #jira UE-37328 #2864 Change 3178553 on 2016/10/28 by Michael.Trepka Don't wait for the main thread in FMacWindow::Show() #jira UE-37915 Change 3178526 on 2016/10/28 by Alexis.Matte Clean unused material when importing a skeletal mesh. Its possible to have a material reference in a fbx node and not have any face referencing this material. #jira UE-37923 Change 3178451 on 2016/10/28 by Mitchell.Wilson Limit the max angle the cannon tower can be rotated when manually aiming. When max rotation is reached, debug line turns red to be consistent with the arrow tower. #jira UE-36512 Change 3178420 on 2016/10/28 by Lina.Halper Fix build issue #jira: UE-37911 Change 3178390 on 2016/10/28 by mason.seay Enabling follow on certain notifies to help catch issues #jira UE-29618 Change 3178325 on 2016/10/28 by Zak.Middleton #ue4 - (4.14) - Fix crash when player is destroyed and server PlayerController checks to see if it needs to force a network update. Also fix crash when calling ACharacter::SetReplicateMovement when not on the server. Mirror CL 3178247 and CL 3178256 in Dev-Framework. #jira UE-37902 Change 3178312 on 2016/10/28 by Max.Chen Sequencer: Fade only oin the current player context, not on all worlds. #jira UE-37939 Change 3178267 on 2016/10/28 by Lina.Halper Fix issue with anim editor sound play notify doesn't work with follow option #jira: UE-37946 Change 3178146 on 2016/10/28 by Lina.Halper #fix crash with thumbnail update when there is no animation, and so on. #code review: Benn.Gallagher #jira: UE-37911 Change 3178145 on 2016/10/28 by Matthew.Griffin Fixed Clean process during a Hot Reload Prevent engine build products, intermediates and exe/dlls from being deleted during Hot Reload and make sure Hot Reload state is preserved #jira UE-37616 Change 3178143 on 2016/10/28 by Mitchell.Wilson Updating BP_Spinning_Logo to stop spinning when disabled instead of finishing the rotation. #jira UE-36269 Change 3178110 on 2016/10/28 by Mitchell.Wilson Rebuilt lighting and saved levels. #jira UE-36913 Change 3178070 on 2016/10/28 by Mitchell.Wilson Adjusted trigger ragdoll time in shooter character so the character does not appear to float while in death animation. #jira UE-37124 Change 3178034 on 2016/10/28 by Jon.Nabozny Add missing Super::Tick call to ATP_TopDownCharacter::Tick. #jira UE-37914 Change 3178021 on 2016/10/28 by Max.Chen Sequence Recorder: Disable auto possess player for recorded pawns. This fixes a bug where if you record a third person template character, when you open the sequence, the recorded character will possess the viewport. Copy from Dev-Sequencer #jira UE-35342 Change 3177992 on 2016/10/28 by Matt.Kuhlenschmidt Fix outlined text accumulating error due to measuring the outlines for each text run rather than the entire string #jira UE-37935 Change 3177981 on 2016/10/28 by Nick.Darnell UMG - Fixing how the virtual window calculates desired size. It was including scale again, which is fine for SWindow, but isn't what we want on the SVirtualWindow, should probably consider making a new SWindowBase class they can both share in the future. #jira UE-36861 Change 3177888 on 2016/10/28 by Matthew.Griffin Back out revision 4 from //UE4/Release-4.14/Engine/Source/Runtime/Engine/Private/InheritableComponentHandler.cpp Change 3177881 on 2016/10/28 by Matthew.Griffin Added guards to WITH_EDITOR only static initialisation Change 3177871 on 2016/10/28 by Matt.Kuhlenschmidt Fix crash import fbx scenes if objects contain procedural textures (not supported) #jira UE-37917 Change 3177856 on 2016/10/28 by Matthew.Griffin Adding THIRD_PARTY_INCLUDES macros around Google VR includes to fix static analysis warnings Change 3177815 on 2016/10/28 by Graeme.Thornton Non-editor build fix #jira UE-37929 Change 3177812 on 2016/10/28 by Graeme.Thornton Fix for COTF crash with EDL. Manually copied from CL 3174743 in Dev-Core #jira UE-37810 Change 3177737 on 2016/10/28 by Guillaume.Abadie Brings over 3141695 and 3173310 from //Odin/Main: Fixes particle collision in the forward renderer. #jira UE-37927 Change 3177703 on 2016/10/28 by Phillip.Kavan [UE-37852] Ensure that we create a unique template object in a child class's ICH when overriding an inherited SCS default scene root node. change summary: - added UInheritableComponentHandler::SCSDefaultSceneRootOverrideNamePrefix - modified UInheritableComponentHandler::CreateOverridenComponentTemplate() to special-case SCS default scene root node overrides when determining the new template name - modified UInheritableComponentHandler::PostLoad() to special-case SCS default scene root node overrides during template name fixup - modified SSCSEditor::RemoveComponentNode() to skip renaming the component template away from the variable name for the default scene root node, since we don't actually recreate it when it gets re-added #jira UE-37852 Change 3177600 on 2016/10/27 by Chris.Babcock Pass through the intent action from splash screen #jira UE-37925 #ue4 #android Change 3177436 on 2016/10/27 by Mike.Beach Guarding against a top crash that could occur when pasting a select node (unknown how) - now using an unchecked accessor to get a specific pin, and guarding again a null (instead of asserting). #jira UE-37910 Change 3177365 on 2016/10/27 by Daniel.Wright Fixed access of FPrecomputedLightVolumeData after it has been deleted (causes crash on exit with USE_MALLOC_STOMP enabled) #jira UE-37903 Change 3177236 on 2016/10/27 by Mitchell.Wilson Updated UVs on M_FloorTiles1 to resolve precision issues with the material's normal on mobile devices. Fixed reflection captures in the level and rebuilt lighting. #jira UE-36624 Change 3177235 on 2016/10/27 by mason.seay Vehicle Assets #jira UE-29618 Change 3177036 on 2016/10/27 by Mitchell.Wilson Inverted throttle control for controller Right Joystick Up, Down, Y-Axis to be consistent with the info from our template wiki #jira UE-37881 Change 3176996 on 2016/10/27 by mason.seay Missed node link #jira UE-29618 Change 3176993 on 2016/10/27 by mason.seay Test AnimBP for crash #jira UE-29618 Change 3176992 on 2016/10/27 by Mitchell.Wilson Adding [EditoronlyBP] to DefaultEditor.ini of projects that were missing it. #jira UE-37846 Change 3176946 on 2016/10/27 by Alexis.Matte We recompile the material only if there is a material expression node that ask for a shader recompile when the texture is change with no specified property. #jira UE-37705 Change 3176939 on 2016/10/27 by Alexis.Matte Check the pointer before using it #jira UE-37853 Change 3176927 on 2016/10/27 by mason.seay Rebuilt Lighting #jira UE-29618 Change 3176883 on 2016/10/27 by Steve.Robb Fix for crash when an array property changes while instancing subobjects. Fix for StrStr running off the end of a non-null-terminated string and a tidy up with TUniquePtr. Fix for accessing a deleted StaticClass() in FInputBindingEditorModule::ShutdownModule. #fyi matt.kuhlenschmidt, alex.fennell #jira UE-37752 Change 3176811 on 2016/10/27 by Chris.Bunner Rework of previous commit to avoid potential confusion moving forward. #jira UE-37424 Change 3176783 on 2016/10/27 by Chris.Bunner Default scalability settings to Epic, not Cinematic. Duplicated default render resolution scale fix (CL 3170020). #jira UE-37424 Change 3176692 on 2016/10/27 by Mike.Beach Fixing up a mistake where we weren't reading all [EditoronlyBP] settings (which are now deprecated). Was causing certain settings to default to off, and caused an inaccurate deprecation warning. #jira UE-37848 Change 3176635 on 2016/10/27 by mason.seay Setting up skeleton for retargeting testing #jira UE-29618 Change 3176586 on 2016/10/27 by Marcus.Wassmer Fix crash on D3D12 editor when selecting objects #jira UE-37861 Change 3176479 on 2016/10/27 by Robert.Manuszewski Fix for a rare crash when loading into Orion match. Made sure the Skeleton asset is loaded before PostLoad is called on it. #jira UE-37297 #jira UE-37711 Change 3176107 on 2016/10/27 by Phillip.Kavan [UE-37690] AddComponent node template names now use a counter to avoid a potential component data cache mismatch with an existing instance of an old AddComponent node template. change summary: - added UBlueprint::ComponentTemplateNameIndex as a way to to map component class names to an incremental counter (saved). - UK2Node_AddComponent::MakeNewComponentTemplateName() is now public, non-static, and uses an internal index map to generate unique component template names. #jira UE-37690 Change 3176105 on 2016/10/27 by Phillip.Kavan [UE-37686] Fix naming for archetype objects associated with new AddComponent nodes. change summary: - switched UK2Node_AddComponent::MakeNewComponentTemplateName() to be a public API. - modified UBlueprintComponentNodeSpawner::Invoke() to call UK2Node_AddComponent::MakeNewComponentTemplateName() in place of MakeUniqueObjectName(). - modified UBlueprintGeneratedClass::FindArchetype() to better handle old AddComponent node template names. These were based on the UClass display name, and thus it was possible for the non-index form of that FName to collide with SCS variable names after the initial switch to use the non-indexed (base) FName for archetype matching in all cases. As a result I've reverted back to using the given ArchetypeName value for the SCS variable case. #jira UE-37686 Change 3176009 on 2016/10/26 by Dmitriy.Dyomin Fixed: Editor crash on changing sub-level visbility under certain conditions #jira UE-34740 Change 3175807 on 2016/10/26 by Daniel.Wright Fixed the editor thinking a lighting build is still active after you discard the results from one #jira UE-37834 Change 3175777 on 2016/10/26 by Jon.Nabozny #jira UT-6263 Fix crash when running ServerTravel on a client Dupe of CL #3175731 on UT, checked in on behalf of ben.zeigler Change 3175695 on 2016/10/26 by Ryan.Gerleve Don't clear level collections in UWorld::CleanupWorld unless bCleanupResources is true. #jira UE-37336 Change 3175628 on 2016/10/26 by Chad.Garyet Added -Build vstream from 4-14 to allow checkins from physx altered build script and json to reflect new changes #JIRA UE-37085 Change 3175612 on 2016/10/26 by Martin.Wilson Fix crash when running an in-editor cook on the fly server with unsaved virtual bone changes #jira UE-37785 Change 3175552 on 2016/10/26 by Brian.Karis Twinblast bust changes #jira UE-0 Change 3175543 on 2016/10/26 by Marc.Audy Allow audio thread on PS4 to use 7th core as opposed to being pinned to it #jira OR-30447 Change 3175538 on 2016/10/26 by Matt.Kuhlenschmidt Fixed a crash when clicking Apply when using the Brush Clip tool #jira UE-37838 Change 3175502 on 2016/10/26 by Mitchell.Wilson Enabled modulated shadows on lights in rolling template levels. #jira UE-37047 Change 3175485 on 2016/10/26 by mason.seay Test Map for virtual bones #jira UE-29618 Change 3175469 on 2016/10/26 by mason.seay Test assets for Virtual Bones testing #jira UE-29618 Change 3175428 on 2016/10/26 by Marc.Audy Possibly fix crash in Autosave due to dereferencing a world pointer which is freed memory #jira UE-37590 Change 3175414 on 2016/10/26 by Michael.Trepka Fixed mouse position calculations for secondary monitors on Mac #jira UE-37822 Change 3175382 on 2016/10/26 by Yannick.Lange VR Editor: - Fix: Landscape UI Elements are not visible #jira UE-36843 - Fix: First-time switch to Landscape tab in VREditor causes UI Errors #jira UE-37410 - Fix: Enabling Foilage Mode in VR Editor breaks the pointer #jira UE-37214 - Fix: Landscape sculpting when attempting to move menu panels in VREditor #jira UE-37581 #jira UE-36843 #jira UE-37410 #jira UE-37214 #jira UE-37581 Change 3175349 on 2016/10/26 by Chad.Garyet Changing physx build agents to compile workspaces instead of full ones #JIRA UE-37085 Change 3175267 on 2016/10/26 by Martin.Wilson Fix retarget crash #jira UE-37781 Change 3175205 on 2016/10/26 by Rolando.Caloca UE4.14 - Remove erroneus assert #jira UE-37584 Change 3175188 on 2016/10/26 by Chris.Babcock Fix out of spec GLSL operations (contributed by JeffRous) #jira UE-37800 #PR #2886 #ue4 #android Change 3175156 on 2016/10/26 by Mitchell.Wilson Adding missing iOS app icons to SunTemple project #jira UE-36991 Change 3175095 on 2016/10/26 by Daniel.Wright Fixed stationary skylight reflections using an inverted mask on materials without high quality reflections with Forward Shading #jira UE-37783 Change 3175075 on 2016/10/26 by Daniel.Wright [Copy] 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) #jira UE-36497 Change 3175050 on 2016/10/26 by Jamie.Dale FTextRenderComponentMIDCache now marks MIDs as stale when the font parameters available in the parent material changes #jira UE-37819 Change 3175039 on 2016/10/26 by Daniel.Wright Fixed Duplication mode #jira UE-37231 Change 3174996 on 2016/10/26 by Mitchell.Wilson Removing [EditoronlyBP] changes made to DefaultEditor.ini. EDL is now disabled by default in ShooterGame. #jira UE-37648 Change 3174987 on 2016/10/26 by Jon.Nabozny Fix crash when moving InstancedStaticMeshComponent in editor when it had no mesh set, but had instances. #jira UE-37594 Change 3174803 on 2016/10/26 by Ori.Cohen Fix world origin shifting causing a crash inside physx. #JIRA UE-37745 Change 3174776 on 2016/10/26 by Allan.Bentham Work around broken depth reads on Galaxy S4. #jira UE-35481 Change 3174723 on 2016/10/26 by Robert.Manuszewski Changing the criteria for UBL to ignore the event driven loader flag to IsEngineInstalled() just like at runtime. #jira UE-37617 Change 3174650 on 2016/10/26 by Matthew.Griffin Ensured that Online Subsystem Oculus plugin is precompiled successfully for Android Change 3174644 on 2016/10/26 by Matthew.Griffin Fixing GoogleVR compile issues Change 3174352 on 2016/10/25 by Daniel.Wright Rename map build data along with the world - fixes lighting lost on map rename / save as. Duplicate map build data along with the world - fixes lighting lost on map duplicate in the content browser, or save as when the source already exists. Save map build data packages in SaveWorld - fixes lighting being lost on save as. #jira UE-37231 Change 3174335 on 2016/10/25 by Chris.Babcock Corrected Proguard issue with Codeworks for Android 1R5 installers #jira UE-37680 #ue4 #android Change 3174318 on 2016/10/25 by Marcus.Wassmer Duplicate 3174187 #jira UE-37020 Change 3174263 on 2016/10/25 by patrickr.donovan Test content updates and additions. Lighting Channel map added to TM-VRLoader. #jira UE-29618 Change 3174120 on 2016/10/25 by Daniel.Wright UObject::PostDuplicate with DuplicateMode * Allows differentiating between being duplicated as part of a world duplication vs duplication within a level * This is needed when generating a guid that needs to be unique within a level, but constant across instances of that level, like a light component #jira UE-37231 Change 3174113 on 2016/10/25 by Daniel.Wright Fixed log spam #jira UE-37522 Change 3174010 on 2016/10/25 by Jamie.Dale Fixed several crashes in the Session Frontend when viewing profiles - SFiltersAndPresets wasn't being cleared when the profile data was changed back to a live instance. - SFiltersAndPresets could crash if it was updated when no profile was selected. - SDataGraph could cause a crash if you clicked on it when there was no data (passed a range of -1, 0). - A session update message would clobber any loaded profile data, resetting to the current instance. #jira UE-37597 Change 3173982 on 2016/10/25 by mason.seay Deleting unneeded asset #jira UE-29618 Change 3173912 on 2016/10/25 by Ori.Cohen Fix divide by 0 crash when torque curve is 0 #JIRA UE-37737 Change 3173866 on 2016/10/25 by Ben.Marsh Remove setting forcing UnrealCEFSubProcess to compile using Visual Studio 2013. #jira UE-37678 Change 3173824 on 2016/10/25 by Ben.Marsh Fix trying to recompile UBT in Rocket builds when cleaning a build target. #jira UE-37616 Change 3173812 on 2016/10/25 by Nick.Darnell XBoxOne - The Vertex and Index buffers are now allocated with the right nextwriteoffset to prevent stomping old data on future writes. #jira UE-37757 Change 3173808 on 2016/10/25 by Ben.Marsh Fix batch files detecting MSBuild install locations for Visual Studio "15" preview 5. #jira UE-37627 Change 3173711 on 2016/10/25 by Ori.Cohen Fix linux compiler issues for physx #JIRA UE-37085, UE-37114, UE-37116 Change 3173704 on 2016/10/25 by James.Cobbett Import test assets for Alembic Conversion test #jira UE-29618 Change 3173694 on 2016/10/25 by Matt.Kuhlenschmidt Fixed Zip project not working in binary builds #jira UE-37655 Change 3173692 on 2016/10/25 by James.Cobbett Test content for Alembic Conversion options #jira UE-29618 Change 3173666 on 2016/10/25 by Matt.Kuhlenschmidt Fixed array refreshing in the details panel not functioning properly for sub-object properties #jira UE-37652 Change 3173619 on 2016/10/25 by Robert.Manuszewski Making the cooker ignore EDL ini setting in binary engine build. #jira UE-37617 Change 3173616 on 2016/10/25 by Nick.Whiting Merging update to Google VR 1.01 SDK, which fixes multiple initialization errors #jira UE-37440, UE-37236 Change 3173606 on 2016/10/25 by Jamie.Dale Removed invalid assert We're already passed the collection to modify, so the assert isn't needed. #jira UE-37761 Change 3173604 on 2016/10/25 by Keli.Hlodversson Work around an issue where the SteamVR plugin will fail to initialize if SteamVR was not already running before launching. #jira UE-37623 Change 3173502 on 2016/10/25 by Matt.Kuhlenschmidt Fixed more cases of undoing causing selections to become out of sync #jira UE-37300 Change 3173475 on 2016/10/25 by Ori.Cohen Critical 4.14 physx fixes #JIRA UE-37085, UE-37114, UE-37116 Change 3173445 on 2016/10/25 by Robert.Manuszewski Disabling the Event Driven Loader in ShooterGame. Making sure the EDL can't be enabled in binary engine distributions. #jira UE-37394 Change 3173401 on 2016/10/25 by Matt.Kuhlenschmidt Guard against crashes when textures or materials are explicitly marked as pending kill and then passed to slate for rendering #jira UE-36261 Change 3173245 on 2016/10/25 by Allan.Bentham Remove incorrect assert. #jira UE-37699, UE-37707 Change 3173232 on 2016/10/25 by Jurre.deBaare Post Processing Settings do not update in Persona when the values are changed in Preview Scene Settings #fix make sure we also pick up vector4 fields #jira UE-37656 Change 3173183 on 2016/10/25 by Matthew.Griffin Added Shipping configs to BootstrapPackagedGame (Duplicating CL#3150210 from Main) Change 3173065 on 2016/10/25 by Dmitriy.Dyomin Fixed: Disabling 'Use Landscape Lightmap' option Skewing Procedural Foliage Instances #jira UE-37736 Change 3172929 on 2016/10/24 by Ryan.Vance #jira UE-37742 Adding SceneViewExtension hooks that are called right after init views completes. It might be advantageous to do the work we're currently doing in PreRenderViewFamily_RenderThread and PreRenderView_RenderThread after init views is called with the way SteamVR's running start is implemented. Change 3172915 on 2016/10/24 by Rolando.Caloca UE4.14 - Fix compile issues on CCT #jira UE-37722 Change 3172762 on 2016/10/24 by Brian.Karis #jira UE-37369 Change 3172742 on 2016/10/24 by Daniel.Lamb Fixed issue with file-> cook error when you haven't built the exe which you are trying to cook for. #jira UE-36796 #test Cook shootergame Change 3172690 on 2016/10/24 by Maciej.Mroz DynamicClass gives now, as componet-archetype, objects with non-exact name. Manually merged cl#3171563 #jira UE-37480 Change 3172663 on 2016/10/24 by Daniel.Lamb Stopped cooker from handling modification requests when they are PIE requests. #test PIE shootergame #jira UE-21572 Change 3172629 on 2016/10/24 by Mitchell.Wilson Reconnected some material functions to resolve warnings which caused characters to render with default materials, and resolving 'Top Material' warnings. Reimported SM_GodRay_Plane to resolve PhysX warning Rebuilt lighting for the level. #jira UE-37728 Change 3172523 on 2016/10/24 by Nick.Shin update physx cmakefiles and automation build scripts for release-414 stream (as per request) #jira UEFW-106 Add HTML5 support to PhysX CMake & automation scripts Change 3172515 on 2016/10/24 by Nick.Shin remove old emsdk (1.35.0) #jira UEPLAT-1324 Update HTML5 PhysX to CMake Change 3172511 on 2016/10/24 by Mark.Satterthwaite Don't set Metal resource option fields on texture descriptors when running on an OS that doesn't support them. #jira UE-37481 Change 3172461 on 2016/10/24 by Cody.Albert Added check for pointer validity to prevent crash in ShooterGame #jira UE-37433 Change 3172329 on 2016/10/24 by Peter.Sauerbrei fix for remote notification method misspelling #jira ue-37720 Change 3172322 on 2016/10/24 by Marc.Audy Fix unreferenced variable the brute force to unblock QA #jira UE-37718 Change 3172191 on 2016/10/24 by Mitchell.Wilson Clearing preivew meshes on some materials to resolve warnings. #jira UE-37713 Change 3172186 on 2016/10/24 by Matt.Kuhlenschmidt Fix non-editor compile error #jira UE-37695 Change 3172159 on 2016/10/24 by Dmitry.Rekman Update GitDependencies.exe (UE-37530). - Binary needs to be updated to support LINUX_MULTIARCH_ROOT variable. #jira UE-37530 Change 3172132 on 2016/10/24 by Keith.Judge Xbox One - Fix corrupted screenshots. Needed a GPU/CPU sync point, which legacy D3D11.x used to do for us, but now we have to do manually. Copied from Dev-Platform CL 3156872 #jira UE-37038 Change 3172131 on 2016/10/24 by Keith.Judge Xbox One - Disable engine analytics on XB1 shipping games, as per XRs. Verified http requests from devkit with Fiddler. Copied from CL 3153176 in Dev-Platform. #jira UE-36364 Change 3172106 on 2016/10/24 by Mitchell.Wilson Updated reference to a material in VehicleMenu.umap to resolve warning #jira UE-29748 Change 3172036 on 2016/10/24 by Steve.Robb TEnumAsByte can be switchably deprecated for enum classes, and is currently not deprecated (reverting a change in behavior). #jira UE-37706 Change 3172020 on 2016/10/24 by Marc.Audy Child Actor should be created at registration, not creation. Otherwise attachment hierarchies can not be set up and thus, world positions incorrect #jira UE-37615 Change 3171966 on 2016/10/24 by Dmitry.Rekman Linux: fix Setup.sh on Ubuntu 16.10 (UE-37621) #jira UE-37621 (Edigrating 3171266 from Dev-Platform to Release-4.14) Change 3171964 on 2016/10/24 by Dmitry.Rekman Linux: fix always rebuilding FixDeps (UE-37625). #jira UE-37625 (Edigrating 3153471 from Dev-Platform to Release-4.14) Change 3171957 on 2016/10/24 by Matt.Kuhlenschmidt Guard against property editor crash happening when focused is lost on an object which has been GC'd due to PIE running #jira UE-37636 Change 3171943 on 2016/10/24 by Matt.Kuhlenschmidt Added mesh simplifcation plugin picker to the project settings under Editor - Mesh Simplification The menu to pick simplification plugins also contains a link to find other plugins in the launcher marketplace. The launcher navigates to "/ue/marketplace/content-cat/assets/codeplugins" for now #jira UE-37695 Change 3171928 on 2016/10/24 by Max.Chen Sequencer: Revert CL#3162724. Fix time dilation in level sequence player because it's causing a regression. Will revisit the fix for UE-37277. #jira UE-37589 Change 3171924 on 2016/10/24 by James.Cobbett Test content 'preroll.abc'. Has empty frames at the start of animation. For alembic importer testing. #jira UE-29618 Change 3171867 on 2016/10/24 by Lina.Halper - Back out revision 2 from //UE4/Release-4.14/Engine/Source/Runtime/Engine/Private/Components/SkeletalMeshComponent.cpp - Empties override materials before setting preview mesh in animation editor #jira: UE-37610 #code review: Thomas.Sarkanen Change 3171789 on 2016/10/24 by Allan.Bentham Resolve depth on appropriate mobile devices when the view contains materials that read from the depth. #jira UE-35023 Change 3171776 on 2016/10/24 by Robert.Manuszewski Increasing the initial memory allocation size for FLargeMemoryWriter to reduce the number of allocations when saving or cooking #jira UE-37599 Change 3171728 on 2016/10/24 by Dmitriy.Dyomin Fix origin rebasing to work with precomputed lighting data stored in separate package #jira UE-37693 Change 3171634 on 2016/10/24 by Dmitriy.Dyomin Added commenets to 3171621 #jira UE-36449 Change 3171621 on 2016/10/23 by Dmitriy.Dyomin Fixed: Editor crash when compiling the character blueprint after a PIE session with World Composition enabled Actually disabled use of world composition with multiplayer PIE using separate processes #jira UE-36449 Change 3171424 on 2016/10/22 by Jack.Porter Remove unused exec command causing logspam #jira UE-37661 Change 3171259 on 2016/10/21 by Ryan.Vance Mobile multi-view update #jira UE-37603 Removed dependence on shader name for determining if we need to enable multi-view, now relies on the presence of gl_ViewID_OVR Worked around unsigned/signed integer driver issues. Some shader compilers were choking on the unsigned postfix Attempted to clean up some of the code duplication in MobileBasePassRendering.cpp Made a few design concessions which allows the feature to run on Mali devices in the wild right now: Allow the feature to be enabled with ES2 rather than just ES3.1. Mali drivers have a bug preventing shader io blocks and multi-view from working together Passing the view id from the vertex shader. Mali devices don't allow referencing gl_ViewID_OVR in a pixel shader Change 3171165 on 2016/10/21 by Peter.Sauerbrei revert out the memory changes for platform file cache for mobile #jira UE-36835 Change 3171112 on 2016/10/21 by Matt.Barnes Updating TM-Material_BP_Nodes to facilitate test UEQATC-2969. #jira UEQATC-2969 Change 3171111 on 2016/10/21 by Mike.Beach Mirroring CL 3171084 form Dev-BP Guarding against a unrepro'able top-10 crash in SGraphPin. Making sure we're not operating on a null/pending-kill/transient pin. #jira UE-37642 Change 3170980 on 2016/10/21 by patrickr.donovan Motion controller test content update - further updates to combat thumbstick noise. #jira UE-29618 Change 3170965 on 2016/10/21 by Mitchell.Wilson Moved panner in M_Frame3_BG material to Custom UV0 to resolve issue with material rendering white on tvOS #jira UE-37105 Change 3170905 on 2016/10/21 by Marc.Audy Fix AActor::Serialize crash if a null in the owned components array #jira UE-37641 Change 3170838 on 2016/10/21 by Ben.Woodhouse Integrate crash fix from main CL3162008 Fix for crash in GPU profiler. This was caused by the RHIThread getting too far behind the renderthread. This change adds a fence wait on the renderthread in RHIEndDrawingViewport to ensure that the renderthread is never more than a frame ahead. #jira UE-37216 Change 3170815 on 2016/10/21 by Jamie.Dale Fixed a potential race-condition in FTextRenderComponentMIDCache, and updated it to detect "stale" MIDs FMIDData was shared between the game and render threads, but used non-thread-safe shared pointers. This also marks MIDs as "stale" if the number of MIDs no longer matches the number of pages in the font (which may happen if the font is edited). These "stale" MIDs are kept as a weak pointer in a separate array so that we can still keep the MID object alive as long as something is still using it (as it may still be used by a FTextRenderSceneProxy for a short while). This array of weak pointers is purged of unreferenced instances during the normal cache purge cycle. #jira UE-37519 Change 3170784 on 2016/10/21 by Mitchell.Wilson Changing a material in TM-Reflections level #jira UE-29618 Change 3170668 on 2016/10/21 by Mitchell.Wilson Updated defaulteditor.ini to resolve cook failure for UBlueprint. #jira UE-37648 Change 3170595 on 2016/10/21 by Chris.Wood Added "Vanilla" Editor detection and reporting it to analytics, MTBF and Crash Reporter. [UE-37132] - Detect "Vanilla" Editor and report it to MTBF analytics and Crash Reporter #jira UE-37132 Change 3170395 on 2016/10/21 by Robert.Manuszewski UBT will now respect -remoteini command line param when looking for ini files for build settings. Fixes a crash when launching BP-only project from the Editor with EDL enabled. #jira UE-37617 Change 3170367 on 2016/10/21 by Allan.Bentham Prevent overflow of bright pixels during DoF calc. #jira UE-31755 Change 3170363 on 2016/10/21 by Robert.Manuszewski Fixing crashes when cancelling async loading #jira UE-37634 Change 3170362 on 2016/10/21 by Robert.Manuszewski Fixing MallocBinned2 crashes on 32-bit platforms. #jira UE-37326 Change 3170280 on 2016/10/21 by Jack.Porter Fix for landscape not rendering in Player Collision view mode after toggling G. #jira UE-37576 Change 3170202 on 2016/10/21 by Dmitriy.Dyomin Fixed: CustomDepth is incorrect when used in Custom PostProcess after Tonemapping #jira UE-37628 Change 3170160 on 2016/10/20 by Aaron.McLeran #jira UE-37596 Making detail customizations and experimental setting for sound base showing audiomixer-only features Implementing CL 3169422 in 4.14 Change 3170029 on 2016/10/20 by Aaron.McLeran #jira UE-37004 #jira UE-37005 Fixing stat soundwaves Implementing 3154264 from Dev-Framework Change 3170024 on 2016/10/20 by Aaron.McLeran #jira UE-37024 Set Sound Mix Class Override still Playing Sounds in Certain Conditions Implementing the CL from Dev-Framework Change 3169869 on 2016/10/20 by Arne.Schober duplicated: CL 3169845 #jira UE-35937 Change 3169810 on 2016/10/20 by Steve.Cano Moving change from CL 3169642 to 4.14 - fix a library issue that was causing Kindle Fire 1st edition to crash when trying to run QA game, may be causing issues on other devices as well #ue4 #android #jira UE-22440 Change 3169635 on 2016/10/20 by Mike.Beach Mirroring CL 3169443 from Dev-BP Deprecating the [EditoronlyBP] config settings (which are super old, and support legacy functionality, allowing users to export editor-only UBlueprint objects on cook). This is in support of the new event-driven loader (EDL), which is incompatible with these exports. We will be removing support for these settings promptly in 4.15 (hence the choice to deprecate them for 4.14). #jira UE-37605 Change 3169618 on 2016/10/20 by Mitchell.Wilson rebuilt lighting for all levels in Content Examples #jira UE-37570 Change 3169447 on 2016/10/20 by Peter.Sauerbrei fix for double quotes causing arguments to not be sent correctly to rsync #jira UE-37018 Change 3169362 on 2016/10/20 by tim.gautier Updated TM-UMG Level Blueprint - mouse-clicks outside of UMG assets no longer take focus from the set Display Widget #jira abc-123 Change 3169244 on 2016/10/20 by Chris.Babcock Update to new CodeWorks for Android 1R5 #jira UE-37554 #ue4 #android Change 3169240 on 2016/10/20 by Jon.Nabozny #rn Fixup GameModeClassAliases in Engine.ini files. These must be prefixed with either /Game/ or /Script/ otherwise the asset may fail to resolve and an empty name will be used instead (and cause weird behavior). #jira UE-37488 Change 3169155 on 2016/10/20 by Peter.Sauerbrei fix for incorrect characters in bundle id when project has underscores in the name #jira UE-36436 Change 3169127 on 2016/10/20 by Allan.Bentham Fix android vulkan compile error with dev builds #jira abc-123 Change 3169058 on 2016/10/20 by Allan.Bentham Flush command buffer during init to fix vulkan crash when rendering thread is enabled. Fix FDeferredDeletionQueue's resource handle storage on 32 bit platforms. #jira UE-36452 Change 3169049 on 2016/10/20 by Peter.Sauerbrei fix for minimum ios version in base ini file #jira UE-37034 Change 3168910 on 2016/10/20 by Jack.Porter Fix occasional race condition crash in FTcpMessageTransportConnection on editor shutdown #jira UE-36944 Change 3168906 on 2016/10/20 by Dmitriy.Dyomin Fixed: Black rendering on Galaxy S4 PowerVR #jira UE-37567 Change 3168858 on 2016/10/20 by Richard.TalbotWatkin Made BSP rendering more robust so that out-of-range array accesses trigger an 'ensure' rather than a crash (with a view to identifying the cause of this issue). Also fixed non-editor builds. #jira UE-37267 - [CrashReport] UE4Editor_Engine!FModelSceneProxy::GetDynamicMeshElements() [modelrender.cpp:322] Change 3168826 on 2016/10/20 by Richard.TalbotWatkin Duplicated from //UE4/Dev-Editor, CL 3156473 Attempt to make geometry render / rebuild more robust in the hope of catching UE-36265. #jira UE-36265 - [CrashReport] UE4Editor_Engine!FModelSceneProxy::HasSelectedSurfaces() [modelrender.cpp:538] Change 3168335 on 2016/10/19 by Michael.Trepka Restored previous version of FMacWindow::IsPointInWindow function to solve issues with window dragging. #jira UE-37418 Change 3168307 on 2016/10/19 by Rolando.Caloca UE4.14 - Integrate changes from 3051720 and 3057522 [RENDERING] [!] Revert fix in GPU skin cache (original CL 2722034) - Waiting on shader compilation with the GPU skin update will destroy/recreate render state, causing a crash in the GPU skin cache. #jira UE-37545 Change 3168201 on 2016/10/19 by Peter.Sauerbrei fix for urls with queries not working correctly #jira UE-35090 Change 3168200 on 2016/10/19 by Mitchell.Wilson Re-saved multiple cloth assets to resolve building adjacency information warnings. Replaced deprecated SetText and GrabComponent blueprint nodes with new SetText and GrabComponentAtLocation. Re-saved multiple assets to resolve empty engine version warnings. #jira UE-37537 Change 3168174 on 2016/10/19 by Alan.Noon #jira UE-37534 deleted unnecessary files from Photorealistic Character project Change 3168160 on 2016/10/19 by Arne.Schober duplicated: fixes for velocity render pass CL 3166370 CL 3166799 #jira UE-37362 Change 3168136 on 2016/10/19 by Alan.Noon #jira UE-37534 Initial add of Photorealistic Character Sample project Change 3168127 on 2016/10/19 by Peter.Sauerbrei fix for IOS_7 not being found #jira UE-37034 Change 3167886 on 2016/10/19 by patrickr.donovan #jira UE-37242 TLDR; Test content updates. Bug entered due to finicky hardware returning noise values that weren't accounted for in test contet. Fortified test content against this edge case, no code change necessary. Change 3167882 on 2016/10/19 by samuel.proctor Updating asset for Profiler Heatmap testing #jira UE-29618 Change 3167868 on 2016/10/19 by Dmitry.Rekman Linux: disable XGE on Windows (UE-37446). - XGE does not seem to handle new clang 3.9.0 toolchain well, with very reproducible crashes. Also fix build breakage with clang 3.8.1. - always_inline was still applied to debug builds and as such was ignored. #jira UE-37446 (Edigrating CL 3166330, 3166456 from Dev-Platform to Release-4.14) Change 3167832 on 2016/10/19 by Mitchell.Wilson Reconnected 'TopMaterial' in multiple materials to resolve warnings. Rebuilt lighting and saved levels. #jira UE-37529 UE-37535 Change 3167688 on 2016/10/19 by Mitchell.Wilson Removing preview mesh from multiple materials to resolve warnings. Rebuilt lighting and saved all levels. #jira UE-29678 UE-37526 Change 3167616 on 2016/10/19 by Marc.Audy Fix reversed logic checking for an Actor after a cast was supposed to have failed, broken in CL 2695656. #jira UE-37517 Change 3167585 on 2016/10/19 by Jamie.Dale Re-enabled all-cultures upload to OneSky so we prime translations correctly #jira UE-37518 Change 3167579 on 2016/10/19 by Jamie.Dale Fixed text render component regression with custom MIDs #jira UE-37305 Change 3167501 on 2016/10/19 by Matt.Kuhlenschmidt Fixed realtime rendering in editor viewport being disabled when simulating in editor #jira UE-37466 Change 3167498 on 2016/10/19 by Mitchell.Wilson Re-saving multiple blueprints with nodeguid warnings. Cleared preview mesh for materials with string asset reference warnings. Rebuilt lighting and added _BuildData to resolve lighting rebuild warnings. #jira UE-30840 Change 3167492 on 2016/10/19 by Matt.Kuhlenschmidt Fix for disappearing menus in lastest windows 10 build #jira UE-36752 Change 3167311 on 2016/10/19 by Mieszko.Zielinski Fixed EQS template cache issues with multiple query run modes #UE4 #jira UE-37496 Change 3167206 on 2016/10/19 by Matthew.Griffin Moved Github promotion earlier in build script and added 'After' dependencies so that we can guarantee the order of the nightly build/prevent unimportant jobs from running before binary build is completed Change 3167205 on 2016/10/19 by Matthew.Griffin Changed CommandUtils.UnzipFiles to use system unzip tool when running on mono, as there has been issues with Ionic not being able to decompress those created by the zip tool Change 3167010 on 2016/10/19 by Dmitriy.Dyomin Fix for LevelStreaming getting stuck, and World->PersistentLevel null assert Contributed by Funcom: https://udn.unrealengine.com/questions/312900/fix-for-levelstreaming-getting-stuck-and-world-per.html #jira UE-36397 [CL 3189774 by Matthew Griffin in Main branch]
2016-11-08 02:45:19 -05:00
//mark targetable as TexCreate_ShaderResource because we actually do want to sample from the unresolved MSAA target in this case.
Ret.TargetableFlags = TexCreate_DepthStencilTargetable | TexCreate_ShaderResource;
Ret.DebugName = TEXT("SelectionDepthStencil");
Ret.NumSamples = FSceneRenderTargets::Get_FrameConstantsOnly().GetEditorMSAACompositingSampleCount();
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
// This is a reversed Z depth surface, so 0.0f is the far plane.
Ret.ClearValue = FClearValueBinding((float)ERHIZBuffer::FarPlane, 0);
return Ret;
}
///////////////////////////////////////////
// FRCPassPostProcessSelectionOutline
///////////////////////////////////////////
/**
* Pixel shader for rendering the selection outline
*/
template<uint32 MSAASampleCount>
class FPostProcessSelectionOutlinePS : public FGlobalShader
{
DECLARE_SHADER_TYPE(FPostProcessSelectionOutlinePS, Global);
static bool ShouldCache(EShaderPlatform Platform)
{
if(!IsFeatureLevelSupported(Platform, ERHIFeatureLevel::SM5))
{
if(MSAASampleCount > 1)
{
return false;
}
}
Copying //UE4/Dev-Mobile to //UE4/Dev-Main (Source: //UE4/Dev-Mobile @ 3228013) #lockdown Nick.Penwarden #rb None ========================== MAJOR FEATURES + CHANGES ========================== Change 3156770 on 2016/10/10 by Allan.Bentham Fix VULKAN_ENABLE_API_DUMP build on android. Change 3157838 on 2016/10/11 by Allan.Bentham Fix Vulkan API tracing on android. Change 3170713 on 2016/10/21 by Steve.Cano Adding the "Optional Mobile Features BP Library" plugin to explose Blueprint functions for Sound Volume, Battery level, system temperature (only available on android), and Headphones being plugged in #jira UE-30896 #android #ios #ue4 Change 3171064 on 2016/10/21 by Steve.Cano Plugins to provide a common interface and Android implemenation for providing access to GPS / Location data from Blueprints #ue4 #android #jira UE-35917 Change 3171065 on 2016/10/21 by Steve.Cano IOS implementation of LocationServices plugin to provide access to location data in Blueprints #ue4 #ios #jira UE-35917 Change 3181802 on 2016/11/01 by Steve.Cano Fix an issue introduced in CL 3170713 - Adding new config section to RequiredSections list so that we can generate projects successfully. #jira UE-30896 #ios Change 3181807 on 2016/11/01 by Steve.Cano Make sure to clear out references to our eglSurface when we destroy it, else we will try to set our context with an invalid surface. #jira UE-35004 #android #ue4 Change 3184827 on 2016/11/03 by Allan.Bentham Do not HDR32 encode for views without view family. TranslucentAlphaOnly blend mode now works with encoding. #jira UE-37951 Change 3186684 on 2016/11/04 by Jack.Porter Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile) Change 3188693 on 2016/11/07 by Chris.Babcock Corrections to memory stats for Android #jira WEX-3760 #ue4 #android Change 3191538 on 2016/11/09 by Allan.Bentham Mobile tonemapper can use CVarTonemapperOverride Change 3192575 on 2016/11/09 by Chris.Babcock Support placing UE4Game files in ExternalFilesDir for automatic cleanup on uninstall for distribution packages #jira UEPLAT-1422 #ue4 #android Change 3196231 on 2016/11/13 by Jack.Porter Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile) Change 3196538 on 2016/11/14 by Jack.Porter Fix issue where lighting would not build for the first editor session of projects defaulting to MobileHDR=false as HardwareTargetingModule didn't set cvars #jira UE-38507 Change 3198068 on 2016/11/15 by Dmitriy.Dyomin Fixed android console command sender to work with ADB version 1.0.36 #jira UE-35171 Change 3200230 on 2016/11/16 by Jack.Porter Remove mosaic resolution limitation on ES3 devices #jira WEX-3119 Change 3201251 on 2016/11/16 by Chris.Babcock Fix Android compile error Change 3203542 on 2016/11/18 by Jack.Porter Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile) Change 3205598 on 2016/11/21 by Dmitriy.Dyomin Fixed: Missing selection outline in editor ES2 preview #jira UE-6458 Change 3205622 on 2016/11/21 by Dmitriy.Dyomin Fix ES2 build error from CL# 3205598 Change 3207232 on 2016/11/22 by Dmitriy.Dyomin ES2 GLSL generated shader simplifications Change 3208608 on 2016/11/23 by Dmitriy.Dyomin Fixed: Landscape Grasstype warning causes log spam when landscape is streamed in or out #jira UE-38694 Change 3209135 on 2016/11/23 by Alicia.Cano Packaging for iOS fails due to several invalid object type errors #jira UE-38431 #ios Change 3209822 on 2016/11/24 by Jack.Porter IWYU changes for LocationServicesBPLibrary Change 3209824 on 2016/11/24 by Jack.Porter Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile) Change 3210264 on 2016/11/25 by Jack.Porter Fix unicode compile issue on Korean windows Change 3210268 on 2016/11/25 by Jack.Porter IWYU and unicode fixes to Dev-Mobile Change 3211800 on 2016/11/28 by Allan.Bentham Create and set PrimitiveSceneProxy->PrimitiveSceneInfo before SetTransform render thread command is enqueued. Avoids race condition with FPrimitiveSceneInfo's constructor which can occur on out-of-order CPUs. Change 3212621 on 2016/11/28 by Jack.Porter More IWYU fixes. Change 3213080 on 2016/11/29 by Allan.Bentham enable UseSingleSampleShadowFromStationaryLights on mobile. PR #2990: Fixes single sample shadows for mobile. (Contributed by kallehamalainen) Change 3213164 on 2016/11/29 by Jack.Porter Win32 IWYU fix Change 3213932 on 2016/11/29 by Chris.Babcock Fix handling of ETC2 filtering by Google Play Store (if only ETC2, require ES3.0+ but don't use texture filtering in manifest) #jira UE-39120 #ue4 #android Change 3214563 on 2016/11/29 by Dmitriy.Dyomin Disable dynamic buffer discarding on Adreno330 (was casuing 10ms stalls on slate buffers update) Change 3214571 on 2016/11/29 by Dmitriy.Dyomin Custom stencil on Mobile #jira UEMOB-183 Change 3214641 on 2016/11/30 by Dmitriy.Dyomin Disable distance culling when rendering image for world composition #jira UE-37754 Change 3214656 on 2016/11/30 by Jack.Porter Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile) Change 3218479 on 2016/12/01 by Jack.Porter Fix for Vulkan build error when using AutoSDK Change 3218596 on 2016/12/02 by Dmitriy.Dyomin Fixed: Android split screen multiplayer does not function or render correctly #jira UE-35204 Change 3218874 on 2016/12/02 by Allan.Bentham Fix CSM shadow bug when ES3.1 + mobileHDR == false. Fix inverted culling when rendering shadow depths with mobilehdr == false #jira UE-39111 Change 3220911 on 2016/12/04 by Jack.Porter Fixed landscape duplicated GUID detection and crash when one of the landscapes is in a hidden streaming level Change 3220935 on 2016/12/04 by Jack.Porter Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile) Change 3222831 on 2016/12/05 by Dmitriy.Dyomin Added support for MGD and Andreno profilers #jira UEMOB-184 Change 3222843 on 2016/12/05 by Jack.Porter Fixed bug caused by CL 3196538 causing r.MobileHDR to toggle and crash when opening render settings #jira UE-38507 Change 3222934 on 2016/12/06 by Jack.Porter Android graphics debugger text changes Change 3223042 on 2016/12/06 by Dmitriy.Dyomin Fixed: missing GPU particles in LDR mode on device #jira UE-39363 Change 3223043 on 2016/12/06 by Jack.Porter Fixed logspam warnings from TcpMessaging launching on Android #jira UE-37895 Change 3223046 on 2016/12/06 by Allan.Bentham Move ES3.1 preview mode out of experimental. Add per device quality level preview to ES3.1 preview sub menu when project settings allow. #jira UEMOB-178 Change 3223113 on 2016/12/06 by Allan.Bentham changed MOBILE_EMULATION define for METAL_PROFILE on mac. fixes issues with editor primitive rendering with ES3.1 feature level preview. added -featureleveles2/31 commandline support to metalrhi. Change 3223117 on 2016/12/06 by Allan.Bentham Initialise FPrimitiveSceneInfo::CachedReflectionCaptureProxies Change 3223131 on 2016/12/06 by Allan.Bentham Fix translucency rendering when mobilehdr == false. (Disable mod shadows when mobilehdr == false.) #jira UE-38343 Change 3223162 on 2016/12/06 by Jack.Porter Disallow Absolute World Position with "excluding shader offset" on ES2 #jra UE-25555 Change 3223204 on 2016/12/06 by Jack.Porter Fix for unable to save levels when landscape components with tessellation moved to another level #jira UE-39372 Change 3223677 on 2016/12/06 by Chris.Babcock Fix tabs Change 3224139 on 2016/12/06 by Chris.Babcock Support modification of build.xml and add post import additions to GameActivity #jira UE-31372 #PR #2440 #ue4 #android Change 3224152 on 2016/12/06 by Chris.Babcock Add support for MadCatz C.T.R.L.R Android controller models #ue4 #android Change 3224162 on 2016/12/06 by Chris.Babcock Driver bug fix and using separate context for MediaPlayer14 (contributed by BrianHarris) #jira UE-35825 #PR #2787 #ue4 #android Change 3224581 on 2016/12/07 by Dmitriy.Dyomin Fixed black screen regression on iOS OpenGL Also now reporting shader compiler errors in iOS Change 3224589 on 2016/12/07 by Allan.Bentham Increase mobile renderer's maximum CSM cascade limit to 4 and introduce max shadow cascade cvar for mobile which defaults to 2 retaining existing behaviour. #jira UEMOB-187 Change 3224774 on 2016/12/07 by Jack.Porter Added flags for mobile shader permutation reduction Renamed mobile lighting policies to better describe them Set flags to remove policies not used by SunTemple - saves 22MB package size on Android #jira: UEMOB-179 Change 3224782 on 2016/12/07 by Allan.Bentham Add project option to set maximum supported CSM cascades to mobile renderer. #jira UEMOB-187 Change 3224943 on 2016/12/07 by Dmitriy.Dyomin Metal iOS will use sRGB textures #jira UEMOB-189 Change 3225098 on 2016/12/07 by Dmitriy.Dyomin fix for compile error from 3224943 Change 3225188 on 2016/12/07 by Chris.Babcock Fix #includes in deferred Android OpenGL #jira UE-39440 #ue4 #android Change 3226402 on 2016/12/07 by Dmitriy.Dyomin Fixed: wrong condition for r8 srgb on mac #jira UE-39471 Change 3226485 on 2016/12/08 by Dmitriy.Dyomin Fixed: Rendering Artifacts and invisible objects in Fortnite regression from nobile custom stencil changes #jira UE-39452, UE-39455 Change 3226637 on 2016/12/08 by Dmitriy.Dyomin Fixed: Odin Ensure Texture passed to ClearDepthStencil is not what is currently set as RenderTarget #jira UE-39482 Change 3226922 on 2016/12/08 by Jack.Porter Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile) Change 3227353 on 2016/12/08 by Chris.Babcock Remove CopyVisualizers batch call again Change 3228013 on 2016/12/08 By Chris.Babcock Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile) [CL 3228374 by Jack Porter in Main branch]
2016-12-08 22:53:00 -05:00
return IsPCPlatform(Platform);
}
static void ModifyCompilationEnvironment(EShaderPlatform Platform, FShaderCompilerEnvironment& OutEnvironment)
{
FGlobalShader::ModifyCompilationEnvironment(Platform, OutEnvironment);
OutEnvironment.SetDefine( TEXT("MSAA_SAMPLE_COUNT"), MSAASampleCount);
}
/** Default constructor. */
FPostProcessSelectionOutlinePS() {}
public:
FPostProcessPassParameters PostprocessParameter;
FDeferredPixelShaderParameters DeferredParameters;
FShaderParameter OutlineColor;
FShaderParameter SubduedOutlineColor;
FShaderParameter BSPSelectionIntensity;
FShaderResourceParameter PostprocessInput1MS;
FShaderResourceParameter EditorPrimitivesStencil;
FShaderParameter EditorRenderParams;
/** Initialization constructor. */
FPostProcessSelectionOutlinePS(const ShaderMetaType::CompiledShaderInitializerType& Initializer)
: FGlobalShader(Initializer)
{
PostprocessParameter.Bind(Initializer.ParameterMap);
DeferredParameters.Bind(Initializer.ParameterMap);
OutlineColor.Bind(Initializer.ParameterMap, TEXT("OutlineColor"));
SubduedOutlineColor.Bind(Initializer.ParameterMap, TEXT("SubduedOutlineColor"));
BSPSelectionIntensity.Bind(Initializer.ParameterMap, TEXT("BSPSelectionIntensity"));
PostprocessInput1MS.Bind(Initializer.ParameterMap, TEXT("PostprocessInput1MS"));
EditorRenderParams.Bind(Initializer.ParameterMap, TEXT("EditorRenderParams"));
EditorPrimitivesStencil.Bind(Initializer.ParameterMap,TEXT("EditorPrimitivesStencil"));
}
void SetPS(const FRenderingCompositePassContext& Context)
{
const FPixelShaderRHIParamRef ShaderRHI = GetPixelShader();
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
FGlobalShader::SetParameters<FViewUniformShaderParameters>(Context.RHICmdList, ShaderRHI, Context.View.ViewUniformBuffer);
DeferredParameters.Set(Context.RHICmdList, ShaderRHI, Context.View);
const FPostProcessSettings& Settings = Context.View.FinalPostProcessSettings;
const FSceneViewFamily& ViewFamily = *(Context.View.Family);
FSceneViewState* ViewState = (FSceneViewState*)Context.View.State;
PostprocessParameter.SetPS(ShaderRHI, Context, TStaticSamplerState<SF_Point,AM_Clamp,AM_Clamp,AM_Clamp>::GetRHI());
// PostprocessInput1MS and EditorPrimitivesStencil
{
FRenderingCompositeOutputRef* OutputRef = Context.Pass->GetInput(ePId_Input1);
check(OutputRef);
FRenderingCompositeOutput* Input = OutputRef->GetOutput();
check(Input);
TRefCountPtr<IPooledRenderTarget> InputPooledElement = Input->RequestInput();
check(InputPooledElement);
FTexture2DRHIRef& TargetableTexture = (FTexture2DRHIRef&)InputPooledElement->GetRenderTargetItem().TargetableTexture;
SetTextureParameter(Context.RHICmdList, ShaderRHI, PostprocessInput1MS, TargetableTexture);
if(EditorPrimitivesStencil.IsBound())
{
// cache the stencil SRV to avoid create calls each frame (the cache element is stored in the state)
if(ViewState->SelectionOutlineCacheKey != TargetableTexture)
{
// release if not the right one (as the internally SRV stores a pointer to the texture we cannot get a false positive)
ViewState->SelectionOutlineCacheKey.SafeRelease();
ViewState->SelectionOutlineCacheValue.SafeRelease();
}
if(!ViewState->SelectionOutlineCacheValue)
{
// create if needed
ViewState->SelectionOutlineCacheKey = TargetableTexture;
ViewState->SelectionOutlineCacheValue = RHICreateShaderResourceView(TargetableTexture, 0, 1, PF_X24_G8);
}
SetSRVParameter(Context.RHICmdList, ShaderRHI, EditorPrimitivesStencil, ViewState->SelectionOutlineCacheValue);
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3133954) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3077573 on 2016/08/04 by Nick.Darnell Removing some unused code, adding additional needed modules to editor tests. #rb none Change 3077580 on 2016/08/04 by Nick.Darnell Removing the test plugins, going to be recreating them in EngineTest. Change 3082659 on 2016/08/09 by Nick.Darnell Automation - Presets are now stored in json files stored in Config so they can be shared, and human readable. Working on screenshot automation, getting it where it needs to be to permit us to have repeatable tests for comarison. Removing the option to not take full size screenshots, that defeats the purpose of being able to compare them. #rb none Change 3082766 on 2016/08/09 by Jamie.Dale Fixed crashes when dealing with code-points outside the BMP on platforms with UTF-32 FStrings ICU always deals with its offsets as UTF-16 (as it always uses UTF-16 internally with icu::UnicodeString), so there were a couple of places in code (break iteration, and bidi detection) where we needed to adjust those UTF-16 offsets to UTF-32 offsets in the case where FString is UTF-32. #jira UE-33971 #rb James.Hopkin Change 3083067 on 2016/08/09 by Nick.Darnell Automation - Working on screenshot support, system now allows a lot more customization in terms of how large the shot is. #rb none Change 3084475 on 2016/08/10 by Richard.TalbotWatkin 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 #codereview Matt.Kuhlenschmidt #rb none Change 3084661 on 2016/08/10 by Matt.Kuhlenschmidt Added grayscale texture importing support #rb none Change 3084774 on 2016/08/10 by Cody.Albert Adding controller support for ComboBox widget #jira UE-33826 #rb nick.darnell Change 3085716 on 2016/08/11 by Nick.Darnell UMG - Taking the Widget Component and Widget Interaction Components out of experimental. Removed old importing support for upgrading ancient versions of widget components. Removing parbola distortion, as users can now do whatever they want in their custom MID they can override the widget with. #rb none Change 3085733 on 2016/08/11 by Nick.Darnell UMG - Documenting the meta parameters allowed on widgets, like we do for regular UObjects. For binding widgets from blueprints you can now do BindWidget (unchanged), and to simplify binding widgets optionally, you can now just do (BindWidgetOptional), rather than the combination of BindWidget + OptionalWidget=true. Made generating the Design time wrapper call a little more efficent, by optimizing it away by force inlining a noop. Also added some additional checking when we forcefully set focus in UMG, to help people catch cases where they set focus, but didn't make the widget focusable. #rb none Change 3085734 on 2016/08/11 by Nick.Darnell Texture - Making GetDefaultMipMapBias a bit more efficent in the common case. #rb none Change 3085736 on 2016/08/11 by Nick.Darnell Static Lighting - Warning the user when they build lighting, but have bForceNoPrecomputedLighting set to true on the world settings. #rb none Change 3085737 on 2016/08/11 by Nick.Darnell Editor - code organization. #rb none Change 3085875 on 2016/08/11 by Nick.Darnell UMG - You can now use 'G' to toggle game mode on the designer so that you can disable and enable the dashed lines around containers. The option in the settings is now used as the default when you startup a designer. #rb none Change 3086209 on 2016/08/11 by Ben.Salem Make our automated test pass reporting more robust and pipe out to JSON in \saved\automation\logs\AutomationReport-{CL}-{Timestamp}.json format. #rb adric.worley, william.ewen Change 3086515 on 2016/08/11 by Nick.Darnell Editor - Fixing a crash in the curve table customization. If the row doesn't exist, it would crash, we now protect against that case. #rb Matt.Kuhlenschmidt Change 3087216 on 2016/08/12 by Jamie.Dale Fixed an issue where re-scanning a package file may leave old assets in the asset registry We didn't used to clear out anything associated with the old package before scanning the file, which could result in old assets being left if they'd since been removed from the package. This also exposes a PackageDeleted function to allow people to manually clear anything associated with a package (if doing some custom asset work). #rb Andrew.Rodham Change 3087219 on 2016/08/12 by Jamie.Dale Updated TextRenderComponent to support multiple font pages It used to use the correct UV data, but wouldn't set the correct texture page when rendering. It now creates MIDs for all of the texture pages used by the font, and will use these MIDs (which override the font page on the material) when rendering the text (batched on sequential index/vertex buffer data with the same texture page). #rb Matt.Kuhlenschmidt Change 3087308 on 2016/08/12 by Alex.Delesky #jira UE-14727 - Support for editing TSet properties in the editor's Details panel has been added. #rb Matt.Kuhlenschmidt Change 3089140 on 2016/08/15 by Jamie.Dale We now abort a directory watch if we lose access to the directory in question This prevents an infinite loop in the call to MsgWaitForMultipleObjectsEx if a watched directory is deleted. #jira UE-30172 #rb Andrew.Rodham Change 3089148 on 2016/08/15 by Alexis.Matte Allow fbx export of any actor type. #rb none #codereview dmitriy.dyomin Change 3089211 on 2016/08/15 by Jamie.Dale Unified access to the parent window for external dialogs A lot of places used to ad-hoc use the MainFrame window, even when they had access to a widget that may be belong to a different window. This could cause issues where an external dialog could appear behind a modal UE4 window (as it would appear above the MainFrame), and be inaccessible. You can now use IMainFrameModule::GetBestParentWindowHandleForDialogs to get the best window handle to use for an external dialog. This will either be the parent window for the given widget (if known), or failing that, the MainFrame window. #rb Andrew.Rodham Change 3089640 on 2016/08/15 by Jamie.Dale Wrapped UMaterialExpression::MenuCategories in WITH_EDITORONLY_DATA to avoid gathering it for game-only loc #rb none Change 3089661 on 2016/08/15 by Nick.Darnell Editor - There's a new view option "Show C++ Classes" in the content browser. Lets you hide all those C++ folders most folks probably don't care to see. #rb none Change 3089667 on 2016/08/15 by Cody.Albert Updating RoutePointerUpEvent to call OnDrop for touch events when dragging #jira UE-34709 #rb nick.darnell Change 3089694 on 2016/08/15 by Jamie.Dale Applied a fix to the ExcludeClasses setting in the loc gather #rb none Change 3089889 on 2016/08/15 by Nick.Darnell Automation - Continued work on the screenshot portion of the automation system. Going to start using the adapter information in the screenshots taken, otherwise we can't accurately test a plethora of devices sharing the same OS, with different capabilities. #rb none Change 3090256 on 2016/08/16 by Nick.Darnell Automation - working on screenshots. #rb none Change 3090322 on 2016/08/16 by Nick.Darnell Automation - Adding modified screenshot function. #rb none Change 3090335 on 2016/08/16 by Nick.Darnell Automation - The tests were determined to need to be shared afterall, but at least keeping them as plugins. Moved to Engine plugins. #rb none Change 3090881 on 2016/08/16 by Nick.Darnell Automation - Moving the content over and fixing up some code so that the AutoRimport tests work as expected. #rb none Change 3090884 on 2016/08/16 by Nick.Darnell Plugins - There's now support for generating a Content Only plugin from the new plugin wizard. #rb none Change 3090911 on 2016/08/16 by Nick.Darnell Feature Packs - If there's an error loading a manifest, it's now an error, not a warning. #rb none Change 3090913 on 2016/08/16 by Jamie.Dale Optimization and usability improvements of the MemoryProfiler2 tool - Optimized the processing of the Callgraph, Histogram, and Short lived allocations views. - The callgraph view is now using a virtualized tree view mapped to our own internal tree. This allows us to amortize the cost of adding nodes to the TreeView as the user views the nodes in the tree. In my own test, this took callgraph generation from ~45 seconds to ~5 seconds. - The Histogram view was vastly optimized via the use of a HashSet on the callstack filter, and the batch addition of unsorted callstacks that are sorted once at the end. In my own test, this took histogram generation from ~15 minutes to ~2 seconds. - The Short lived allocations view was optimized by avoiding redundant sorting, including maintaining a sorted order while inserting items, and instead doing a final sort at the end. The column selection was also optimized by avoiding copying the entire dataset just to resort it. In my own test, this took short lived allocation generation from ~1 minute to ~3 seconds. - Added a user-configurable list of allocator functions to trim (which now includes FMemory and operator new by default, and produces much cleaner callstacks). #jira UETOOL-948 #jira UETOOL-949 #rb James.Hopkin Change 3090962 on 2016/08/16 by Jamie.Dale Fixed double assignment of filter functions #rb none Change 3090989 on 2016/08/16 by Nick.Darnell Editor - Attempting to fix the build, non-unity issue I suspect. #rb none Change 3091754 on 2016/08/17 by Nick.Darnell FbxAutomationTestBuilder is now a plugin. Users won't see it unless they've enabled the plugin (so primarily internal QA). Reorganized the automation tools and testing menu to be a bit lower in the main menu, and gave them a more test sounding name. Additionally made some modifications to the workspace menu structure to allow generating just a subset of a workplace menu so that I could target where I wanted to insert all of the automation tool menu items, rather than just allowing the general placement of them under developer tools...etc. #rb none #codereview Alexis.Matte Change 3091758 on 2016/08/17 by Nick.Darnell Slate / Editor - Trying to make the editor less focus greedy. Now when there are notification popups and tabs attempt to grab your attention we now do a few activation ownership checks to ensure that it or a parent window actually owns activation. Not doing this has the nasty side effect of things like notifications and message log errors that popup while playing the game (if the game is in new window PIE), causing the game to be hidden, and focus returned to the editor. Ran into this a lot running the automation tests, the new PIE window that's launched to run tests is immediately hidden as soon as the tests log a warning or error or a notification about high res screenshots happens. #rb none #codereview Nick.Atamas,Matt.Kuhlenschmidt Change 3091829 on 2016/08/17 by Nick.Darnell Build - Attempting to repair the build. #rb none Change 3091920 on 2016/08/17 by Nick.Darnell Build - Another attempt at fixing the mac build. #rb none Change 3093380 on 2016/08/18 by Matt.Kuhlenschmidt Ignore group actors when checking for references to other actors when deleting. The check for references is designed for gameplay affecting references which groups are not. Having this show up for groups is annoying #rb none Change 3094474 on 2016/08/19 by Jamie.Dale Fixed PS4 error when building with USE_MALLOC_PROFILER, and optimized symbol name resolution for a build with USE_MALLOC_PROFILER enabled #jira UETOOL-951 #rb James.Hopkin Change 3094581 on 2016/08/19 by Jamie.Dale Added missing allocator filter needed by PS4 profiles #rb none Change 3094681 on 2016/08/19 by Richard.TalbotWatkin Fixed issue where painting override vertex colors on a SpeedTree mesh would cause its wind animation to cease. The OverrideVertexColors vertex factory needed to be registered with the SpeedTree renderer. #jira UE-32762 - Custom VertexPaint on SpeedTrees interferes with wind animation #rb none Change 3095163 on 2016/08/19 by Trung.Le #jira UE-20849: Added tooltips to the inputs of the Material final result node #rb matt.kuhlenschmidt Change 3095285 on 2016/08/19 by Trung.Le #jira UE-20849 In SGraphNodeMaterialResult, renamed ToolTip to ToolTipWidget so we're not hiding class member #rb none Change 3095344 on 2016/08/19 by Alexis.Matte #jira UE-34690 When using the optionnal matrix to change the scene root node, we have to flush the fbx evaluation engine. Add also a new option to allow the user to automatically convert the fbx scene to unreal unit (centimeter). #rb none #codereview matt.kuhlenschmidt Change 3096162 on 2016/08/22 by Alexis.Matte #jira UE-34763 Remove offending no-action combo box entry when the json file is readonly. Also clean up other combo box menu. #rb none #codereview matt.kuhlenschmidt Change 3096261 on 2016/08/22 by Alexis.Matte #jira UE-33121 Make sure re-import all and import all fix all the issue before starting the job. So it get not interrupt during the process. #rb lina.halper #codereview lina.halper Change 3096344 on 2016/08/22 by Jamie.Dale NSString conversion fix for UTF-32 strings containing characters outside of the BMP #jira UE-33971 #rb Peter.Sauerbrei, James.Hopkin Change 3096605 on 2016/08/22 by Alex.Delesky #jira UE-34787 - Dropdown menus in standalone programs will now correctly display tooltips if they have any. #rb Matt.Kuhlenschmidt Change 3096615 on 2016/08/22 by Alex.Delesky #jira UE-33334 - Scrolling up on the mouse wheel when using the orbit camera should no longer move away from the orbit point when the camera moves too close to the orbit origin. #rb Matt.Kuhlenschmidt Change 3096619 on 2016/08/22 by Alex.Delesky #jira UE-34084 - Structs containing an enum with a value that contains a whitespace character will now serialize correctly when copied from the Details Panel. #rb Matt.Kuhlenschmidt Change 3097644 on 2016/08/23 by Matt.Kuhlenschmidt PR #2729: Fix a typo in the comment (Contributed by adcentury) #rb none Change 3097648 on 2016/08/23 by Matt.Kuhlenschmidt PR #2726: Undef unused macros (Contributed by shrimpy56) #rb none Change 3097697 on 2016/08/23 by Matt.Kuhlenschmidt Guard against crash when details panels rebuild when their customizations have been torn down https://jira.ol.epicgames.net/browse/UE-35048 #rb none Change 3097757 on 2016/08/23 by Alex.Delesky #jira UE-14727 - Support for editing TMap properties in the editor's Details panel has been added. This change also removes the Duplicate option from TSet elements, and disallows entry of duplicates elements into a TSet or duplicate keys into a TMap #rb Matt.Kuhlenschmidt Change 3098164 on 2016/08/23 by Alexis.Matte #jira UE-34686 Fbx importer bImportMeshesInBoneHierarchy is used also by the animation. #rb none #codereview matt.kuhlenschmidt Change 3098502 on 2016/08/23 by Alexis.Matte #jira UE-30951 Fbx option dialog, we disable the option to bake pivot if transform vertex position is true #rb none #codereview matt.kuhlenschmidt Change 3099986 on 2016/08/24 by Jamie.Dale Fixing non-editor builds #rb none Change 3101138 on 2016/08/25 by Matt.Kuhlenschmidt Fixed viewport redraw callback not being called when certian property modifications occur in the details panel (reset to default, array size changes, etc) #rb none Change 3101280 on 2016/08/25 by Jamie.Dale Fixed crash when counting memory over internationalization meta-data - The serialization code only used to handle loading or saving, now it handles loading or not loading. - The Type of the meta-data wasn't set by all constructors. For safety it has been removed and replaced with a virtual function that the derived types override. #rb James.Hopkin Change 3101283 on 2016/08/25 by Jamie.Dale MProf2 platform and symbol parsing improvements - Updated ISymbolParser to work with lazy symbol resolution (handled via the UI when looking at full callstacks). - Added a PS4 symbol parser which handles performing full file/line resolution for symbols. - Removed all the V3 file format support and legacy platform handling. - Optimized FStreamInfo.GetNameIndex so it can be used by the lazy symbol fixup. #rb James.Hopkin Change 3101586 on 2016/08/25 by Jamie.Dale Small code cleanup and path normalization #rb James.Hopkin Change 3101837 on 2016/08/25 by Alexis.Matte #jira UE-35101 we now store the sourceanimationname to retrieve the correct animtrack when re-importing animations #rb none #codereview matt.kuhlenschmidt Change 3102537 on 2016/08/26 by Jamie.Dale Fix for potential crash in FICUCamelCaseBreakIterator In platforms with UTF-32 strings, the index returned by FICUTextCharacterIterator may not be in the same range as FString, so we need to call InternalIndexToSourceIndex to ensure that it is. #rb James.Hopkin Change 3102582 on 2016/08/26 by Matt.Kuhlenschmidt Log the freetype version when it starts up (for debugging purposes) #rb none Change 3102657 on 2016/08/26 by Alexis.Matte #jira UE-29177 When re-importing a texture we want to notify materials using this texture so they can recompile the shader. #review-3101585 @uriel.doyon #rb matt.kuhlenschmidt Change 3102704 on 2016/08/26 by Jamie.Dale Added symbol meta-data support to MProf2 You can now define platform specific meta-data using FPlatformStackWalk::GetSymbolMetaData, which is then stored within the generated .mprof file. PS4 uses this meta-data to say where the original .self file can be found, so that MProf2 can usually automatically load the .self file without having to bother the user. #rb James.Hopkin Change 3102878 on 2016/08/26 by Matt.Kuhlenschmidt Added support for outline fonts - An outline size (in slate units), optional material and optional fill color can be specified with each font info. - Outlines do not contribute to measurement directly so the text measuring and shaping methods have been modified to account for outlines - Fixed a bug where font materials do not work properly if part of the font's rendered glyphs were in a different atlas #rb jamie.dale Change 3102879 on 2016/08/26 by Jamie.Dale Bumped the MProf2 version so we can tell which build of the tool can load v6 mprof files #rb none Change 3102960 on 2016/08/26 by Alexis.Matte build fix #rb none Change 3103032 on 2016/08/26 by Jamie.Dale Fixed SEditableText and SMultiLineEditableText not setting the correct foreground color when painting #jira UE-34936 #rb Matt.Kuhlenschmidt Change 3103278 on 2016/08/26 by Jamie.Dale Fixing Clang warnings #rb none Change 3104211 on 2016/08/29 by Ben.Marsh Add build script for automated tests, and create settings file for Dev-Editor which adds an agent pool for running them. #rb none Change 3104290 on 2016/08/29 by Alex.Delesky Adding additional documentation accessible from the editor for TSet and TMap properties, along with a quick clarification on container properties to let the user know what kind of container they're working with. #rb Matt.Kuhlenschmidt Change 3104292 on 2016/08/29 by Alex.Delesky #jira UE-35039 - Command/Control user keybindings will no longer flip-flop when the editor is opened on Mac. #rb Matt.Kuhlenschmidt Change 3104294 on 2016/08/29 by Alex.Delesky #jira UE-34952 - The user will no longer encounter an ensure when setting the value of Period equal to or less than 0 on the circular throbber widget #rb Matt.Kuhlenschmidt Change 3104295 on 2016/08/29 by Matt.Kuhlenschmidt PR #2682: Remove unused bUseDesktopResolutionForFullscreen (Contributed by stfx) #rb none Change 3104296 on 2016/08/29 by Alex.Delesky #jira UE-35160 - The Auto Distance Error for LOD meshes can now be set to any value larger than zero. #rb Matt.Kuhlenschmidt Change 3104348 on 2016/08/29 by Matt.Kuhlenschmidt Added the ability to clear the preview mesh on a material instance. Previously there was no way to null it out. #rb none Change 3104355 on 2016/08/29 by Matt.Kuhlenschmidt Guard against crash with invalid path to the default physical material. Just create a new one if it doesnt exist and warn about it. #rb none #jira UE-31865 Change 3104396 on 2016/08/29 by Ben.Marsh Fix incrorrect agent names for running automated tests Change 3104610 on 2016/08/29 by Alex.Delesky Fix for AutomationTool compile editor from changes introduced today. #rb None Change 3104611 on 2016/08/29 by Michael.Dupuis #jira UETOOL-253 #rb Alexis.Matte Change 3105826 on 2016/08/30 by Gareth.Martin Added console variables to discard grass and/or scalable foliage data on load #jira UE-35086 #rb Benn Change 3106126 on 2016/08/30 by Matt.Kuhlenschmidt Eliminated bad code duplication between retainer widgets and element batcher #rb none #codereview nick.darnell Change 3106449 on 2016/08/30 by Michael.Dupuis #jira UETOOL-229 Added generic command icons used in Edit Menu (including contextual menu) #rb Alexis.Matte Change 3106966 on 2016/08/30 by Jamie.Dale Fixed FApp::IsAuthorizedUser not considering the SessionOwner override #rb Max.Preussner Change 3107687 on 2016/08/31 by Michael.Dupuis Checkout/Make Writable on proper config file #rb Matt Kuhlenschmidt Change 3107736 on 2016/08/31 by Matt.Kuhlenschmidt Fixed mode typos in the lerp instruction #rb none Change 3107830 on 2016/08/31 by Matt.Kuhlenschmidt Logging and guard against UEditorEngine::TeardownPlaySession crash. #rb none https://jira.ol.epicgames.net/browse/UE-35325 Change 3107912 on 2016/08/31 by Alex.Delesky #jira UE-35181 - Normalizing paths when retrieving absolute filenames for source control operations. #rb Matt.Kuhlenschmidt Change 3107986 on 2016/08/31 by Matt.Kuhlenschmidt Removed PropertyTestObject.h out of UnrealEd.h so you dont have to compile the entire editor when changing this one file. #rb none Change 3108027 on 2016/08/31 by Chris.Wood Re-added lost doc comment for analytics event "Engine.AbnormalShutdown". #rb none - just a comment in a cpp file #codereview wes.hunt Change 3108580 on 2016/08/31 by Mike.Fricker Deleted the "Live Editor" plugins from UE4 - These were undocumented, buggy and never finished, and we have no plans to complete them - Both the "LiveEditor" and "LiveEditorListenServer" plugins were deleted, along with related icon files #codereview matt.kuhlenschmidt #rb matt.kuhlenschmidt Change 3108604 on 2016/08/31 by Mike.Fricker Added new "MIDI Device" plugin (disabled by default) - This is a simple MIDI interface that allows you to receive MIDI events from devices connected to your computer - Currently only input is supported. In the future we might allow for output, as well. - In Blueprints, here's how to use it: - Look for "MIDI Device Manager" in the Blueprint RMB menu - Call "Find MIDI Devices" to choose your favorite device. Break the "Found MIDI Device" struct to see what's available. - Then call "Create MIDI Device Controller" for the device you want. Store that in a variable. - On your MIDI Device Controller, bind your own Event to the "On MIDI Event" event. This will be called every game Tick when there is at least one new MIDI event to receive. - Process the data passed into the Event to make your project do stuff! - This plugin makes use of the "PortMidi" third party library (which already existed in UE4 -- it was used by the now-deprecated 'LiveEditor' plugin) #codereview matt.kuhlenschmidt #rb none Change 3108760 on 2016/08/31 by Alexis.Matte #jira UE-25840 Fbx export collision mesh, we now export collision: box, sphere, capsule and convex mesh. There is an option in the editor preference to enable the export of collisions, default value is false. #rb none #codereview matt.kuhlenschmidt Change 3109006 on 2016/08/31 by Alex.Delesky #ignore Source Control rename test - initial commit Change 3109044 on 2016/08/31 by Alex.Delesky #ignore Testing asset rename from P4 to observe correct behavior. #rb none Change 3109048 on 2016/08/31 by Alex.Delesky #ignore Testing P4 rename to identify correct behavior #rb none Change 3110044 on 2016/09/01 by Gareth.Martin Fixed painting foliage on blocking "query" actors not working #jira UE-33852 #rb Allan.Bentham Change 3110133 on 2016/09/01 by Alexis.Matte Fix crash in function GetForceRecompileTextureIdsHash #rb none #codereview jamie.dale Change 3111848 on 2016/09/02 by Mike.Fricker MIDI Device plugin: Fixed compilation error on Clang compilers (Mac, Linux) - Fixed bad enum cast #rb none Change 3111995 on 2016/09/02 by Michael.Dupuis #jira UE-35263 Do not try selecting the actor if the actor is in the blueprint Properly Refresh the ToopTip & Hyper Link to take into account blueprint recreation process #rb Alexis Matte Change 3112280 on 2016/09/02 by Michael.Dupuis Call MakeWritable if source control fail #rb Alexis Matte Change 3112335 on 2016/09/02 by Cody.Albert Updating cursor hiding logic to not improperly hide cursor when left clicking in ortho mode #jira UE-35306 #rb none Change 3112478 on 2016/09/02 by Alexis.Matte #jira UE-20059 Use a base material to import fbx material. #rb uriel.doyon #codereview matt.kuhlenschmidt #1468 Github pull request number Change 3113912 on 2016/09/06 by Michael.Dupuis #jira UE-32288 Fixed Console params display #rb Alexis Matte Change 3114026 on 2016/09/06 by Alex.Delesky #jira UE-35123 - The Details panel in a Texture editor or Simple Asset editor window will no longer disappear when the inspected asset is imported again. #rb Matt.Kuhlenschmidt Change 3114032 on 2016/09/06 by Alex.Delesky PR #2733: Improved the project launcher progress page (Contributed by projectgheist) #jira UE-34027 #rb Matt.Kuhlenschmidt Change 3114034 on 2016/09/06 by Alex.Delesky #jira UE-35265 - Copying a comment node from a Material Function and pasting it inside a Material will no longer render the Material unsaveable #rb Matt.Kuhlenschmidt Change 3114071 on 2016/09/06 by Nick.Darnell [AUTOMATED TEST] Automatic checkin, testing functionality. Change 3114109 on 2016/09/06 by Nick.Darnell [AUTOMATED TEST] Automatic checkin, testing functionality. Change 3114562 on 2016/09/06 by Nick.Darnell Adding LevelEditor to the FbxAutomationTestBuilder to fix a compiler issue. #rb none Change 3114701 on 2016/09/06 by Michael.Dupuis #jira UE-31988 add const to all usage of TArray<ItemType>* as it was done in SListView #rb Alexis Matte Change 3114861 on 2016/09/06 by Matt.Kuhlenschmidt Prevent non-thread safe slate code from running on the slate loading thread #rb none Change 3115698 on 2016/09/07 by Nick.Darnell Make sure the commands are available - during functional testing that was found to not always be the case. #rb none Change 3115719 on 2016/09/07 by Nick.Darnell Adding an IsRegistered command to commands. #rb none Change 3115721 on 2016/09/07 by Nick.Darnell Adding a new built VirtualReality feature pack, this new one contains the update manifest that will parse correctly. #rb none Change 3115722 on 2016/09/07 by Nick.Darnell IsBindWidgetProperty now returns false if the property passed in is null. #rb none Change 3115734 on 2016/09/07 by Alexis.Matte #jira UE-30166 Support fbx sdk 2017 #rb none Change 3115737 on 2016/09/07 by Nick.Darnell Adding an image comparer for screenshots. Removing some content from EngineTest. #rb none Change 3115743 on 2016/09/07 by Nick.Darnell Checkpointing a bunch of progress towards a screenshot comparison workflow that allows us to diff screenshots taken on various platforms and hardware. Disabling many tests that are not passing. Updating a few tests to log better errors, and fixed a few tests with easy bugs in them so they would start passing again. All editor tests currently passing! #rb none Change 3115748 on 2016/09/07 by Nick.Darnell Making the RuntimeTests plugin a Developer module, so that it doesn't get included in shipping builds. #rb none Change 3115789 on 2016/09/07 by Jamie.Dale We now favor Traditional Chinese for Hong Kong and Macau #rb James.Hopkin Change 3115799 on 2016/09/07 by Jamie.Dale Removed validity check on source cultures when remapping, as platforms may use invalid cultures that need to be remapped #rb James.Hopkin Change 3115826 on 2016/09/07 by Nick.Darnell Adding missing files. #rb none Change 3115838 on 2016/09/07 by Nick.Darnell Back out revision 6 from //UE4/Dev-Editor/Engine/Source/Runtime/UMG/Public/Components/WidgetInteractionComponent.h #rb none Change 3116007 on 2016/09/07 by Alexis.Matte build fix #rb none Change 3116057 on 2016/09/07 by Jamie.Dale Fixed widget snapshot messages so they appear in the message debugger #rb none Change 3116112 on 2016/09/07 by Nick.Darnell Removing the FbxAutomationBuilder file that go recreated on a merge from main. #rb none Change 3116365 on 2016/09/07 by Michael.Dupuis #jira UE-20765 Added missing class flag to test (CLASS_CONFIG) and change a bit how the checkout/make writable work. #codereview Matt.Kuhlenschmidt #rb Alexis.Matte Change 3116622 on 2016/09/07 by Alexis.Matte #jira UE-35608 Use the same naming convention when trying to retrieve uv channel by name. #rb matt.kuhlenschmidt Change 3116638 on 2016/09/07 by Jamie.Dale Ensured that manifests and archives don't try and load data that they can't parse #rb none Change 3117397 on 2016/09/08 by Gareth.Martin Added rotate and blend support to the landscape mirror tool #jira UE-34829 #rb Jack.Porter Change 3117459 on 2016/09/08 by Gareth.Martin Fixed crash saving a hidden landscape level with an offset (cloned from 4.13.1) #jira UE-35301 #rb Jack.Porter Change 3117462 on 2016/09/08 by Gareth.Martin Fixed invisible landscape components and crashes when tessellation is enabled (cloned from 4.13.1) #jira UE-35494 #rb Benn.Gallagher Change 3117583 on 2016/09/08 by Nick.Darnell Continued work on automation support for screenshot comparison, stubbing in a commandlet that can be run after automation tests that would perform the diffing. Need to finish rigging it up so that deltas and results can be dumped out somewhere and consumed by a tool to approve shots. #rb none Change 3117595 on 2016/09/08 by Nick.Darnell Updating the build script for AutomatedTests, going to see if this works! #rb none Change 3117808 on 2016/09/08 by Nick.Darnell Adding header includes for async. #rb none Change 3117812 on 2016/09/08 by Matt.Kuhlenschmidt Partially taken from Pr 2381 Fixed Array Properties to handle duplicates properly and fixed Material Parameter Collection duplicate Guid problem. #rb none Change 3117851 on 2016/09/08 by Jamie.Dale Silenced some redundant P4 errors that could be generated when running a stat update on a file Some of the options produced errors when working with newly added files. These errors are now downgraded to infos like they are for the main stat command. #rb Ben.Marsh #codereview Thomas.Sarkanen Change 3117853 on 2016/09/08 by Gareth.Martin Clean up landscape includes and PCH #rb steve.robb Change 3117859 on 2016/09/08 by Alex.Delesky #jira UE-35321 - Minimized windows will no longer act like they are visible when determining what widgets are currently underneath the mouse. #rb Nick.Darnell Change 3117997 on 2016/09/08 by Nick.Darnell Updating the automation tests build script to use Editor-Cmd #rb none Change 3118005 on 2016/09/08 by Matt.Kuhlenschmidt Properly reference graph node on material expressions so they are not GC'd while an expression still uses them #jira UE-35362 #rb none Change 3118043 on 2016/09/08 by Alex.Delesky #jira UE-30649 - Removed unnecessary returns from UWidget API. PR #2377: fix widget bug. (Contributed by dorgonman) #rb none Change 3118045 on 2016/09/08 by Matt.Kuhlenschmidt Guard against crash saving config during level editor shutdown #rb none #jira UE-35605 Change 3118074 on 2016/09/08 by Matt.Kuhlenschmidt PR #2783: Removed #pragme once from CPP files (Contributed by projectgheist) #rb none Change 3118078 on 2016/09/08 by Michael.Dupuis #jira UE-32065 Removed the -windows that was added as a default option and add it simply if fullscreen is not specified #rb Alexis.Matte Change 3118080 on 2016/09/08 by Michael.Dupuis #jira UE-31131 Do not show a contextual menu if the menu is empty #rb Alexis.Matte Change 3118087 on 2016/09/08 by Matt.Kuhlenschmidt Constify this method #rb none Change 3118166 on 2016/09/08 by Nick.Darnell Trying additional command options for the build machine for automation. #rb none Change 3118222 on 2016/09/08 by Matt.Kuhlenschmidt Fix actor delete during mesh paint not working during undo #rb none #jira UE-35684 Change 3118298 on 2016/09/08 by Alexis.Matte #jira UE-35302 Export all LODs for static mesh when there is no force LOD #rb uriel.doyon Change 3118325 on 2016/09/08 by Matt.Kuhlenschmidt Fixed reset to default not appearing for slate brushes #rb none #jira UE-34958 Change 3119321 on 2016/09/09 by Matt.Kuhlenschmidt Guard against crash with an invalid world trying to be opened from the content browser #rb none https://jira.ol.epicgames.net/browse/UE-35712 Change 3119433 on 2016/09/09 by Nick.Darnell Removing a hack added by Paragon that prevents applications from resizing in real time as the user drags the size of the window around. #rb Matt.Kuklenschmidt #jira UE-35789 Change 3119448 on 2016/09/09 by Alex.Delesky When simulating touch events using the mouse, clicking the mouse will no longer let a drag operation continue. This should also allow the finger that started a drag to continue dragging items until it is released from the surface. #rb Nick.Darnell Change 3119522 on 2016/09/09 by Jamie.Dale Fixed FDetailCategoryImpl::ShouldBeExpanded not honoring bShouldBeInitiallyCollapsed when bRestoreExpansionState was true #rb Matt.Kuhlenschmidt Change 3119528 on 2016/09/09 by Jamie.Dale Some UI re-work to the localization dashboard This makes a better use of the available space, and will make it easier to make some other planned changes in the future. #rb James.Hopkin Change 3119861 on 2016/09/09 by Michael.Dupuis #jira UE-9284 Added the Play/Stop button on the thumbnail #rb Alexis.Matte Change 3120027 on 2016/09/09 by Alexis.Matte incorporate some fixes from licensee for LOD group re-import workflow #jira UE-32268 #rb uriel.doyon #codereview matt.kuhlenschmidt Change 3120845 on 2016/09/12 by Gareth.Martin Fixed crash in landscape editor when "Early Z" is enabled (cloned from 4.13.1) #jira UE-35850 #rb Allan.Bentham Change 3120980 on 2016/09/12 by Nick.Darnell Adding a commandlet that is runnable for comparing screenshots. Adding comparing and exporting capability to the screenshot manager. #rb none Change 3120992 on 2016/09/12 by Alex.Delesky #jira UE-35575 - TScriptInterface UProperties now have asset picker support. #rb Matt.Kuhlenschmidt Change 3121074 on 2016/09/12 by Michael.Dupuis #jira UE-30092 Added path length in error message when typing Added display of current filepath lenght for cooking #rb Alexis.Matte Change 3121113 on 2016/09/12 by Nick.Darnell Adding some placeholder examples to show people how to author tests in EngineTest. #rb none Change 3121152 on 2016/09/12 by Gareth.Martin Added TElementType, TIsContiguousContainer traits Added GetData(), GetNum() generic functions #rb Steve.Robb Change 3121702 on 2016/09/12 by Jamie.Dale Optimized a loop over a sorted list to instead use a binary search This speeds up the short-lived allocation view generation. We also now dump the exception information to the Trace log when in a non-debug build. #rb James.Hopkin Change 3121721 on 2016/09/12 by Jamie.Dale We now set the window mode first when resizing the game viewport to ensure that the work area is correct Fullscreen windows can affect the available work area size, which can break centering when moving between fullscreen and windowed mode. #jira UE-32842 #rb Matt.Kuhlenschmidt Change 3122578 on 2016/09/13 by Jamie.Dale Small code clean up Removed a use of the placement new style array addition. #rb none Change 3122634 on 2016/09/13 by Jamie.Dale We now immediately update DefaultConfigCheckOutNeeded when checking out/making writable the config file, rather than wait for the text tick #jira UE-34865 #rb James.Hopkin Change 3122656 on 2016/09/13 by Jamie.Dale Fixed array combo button not focusing its contents, which prevented the menu closing correctly #jira UE-33667 #rb none Change 3122661 on 2016/09/13 by Nick.Darnell Checkpointing additional work on the screenshot compare dialog, moving some Directory path picker widget into a more common area. Moving some "Find the best top level window handle for this widget for dialogs' code out of the main frame module and into Slate Application where it probably belongs. #rb none Change 3122678 on 2016/09/13 by Jamie.Dale Fixing CIS error on Clang CoreUObject needs to be included before USTRUCT can be used. #rb none Change 3122686 on 2016/09/13 by Jamie.Dale Fixing CIS error on Clang CoreUObject needs to be included before UCLASS can be used. #rb none Change 3122728 on 2016/09/13 by Nick.Darnell UMG - Exposing a trace channel for the WIC, defaults to Visibility. Improving how the WIC handles the cursor moving off the widget, it now maintains the last hit location rather than 0,0 which would cause things like dragged Sliders to reset to the left. Ideally - the WIC would know the underlying widget has capture and continue to fake collision against an imaginary plane to simulate a continuous surface. #jira UE-35167 #rb none Change 3122775 on 2016/09/13 by Nick.Darnell Automation - Fixing an error with the ScreenshotTools plugin, needed to add an the include for Engine.h to the PCH. #rb none Change 3122779 on 2016/09/13 by Nick.Darnell Widgetnimation - Exposing more of the class to C++. #rb none Change 3122793 on 2016/09/13 by Nick.Darnell Fixing a crash in UWidgetComponent::UpdateRenderTarget updating a null material instance. #jira UE-35796 #rb none Change 3122834 on 2016/09/13 by Matt.Kuhlenschmidt Fixed crash undoing moves after bsp creation https://jira.ol.epicgames.net/browse/UE-35880 #rb none Change 3122835 on 2016/09/13 by Nick.Darnell Reverting changes to WIdgetAnimation #rb none Change 3122897 on 2016/09/13 by Matt.Kuhlenschmidt Fixed non-editor compile error #rb none Change 3122988 on 2016/09/13 by Alexis.Matte Material workflow refactor #jira UETOOL-774 #rb matt.kuhlenschmidt Change 3123006 on 2016/09/13 by Jamie.Dale Fixed dynamic collections not returning anything #jira UE-35869 #rb James.Hopkin Change 3123145 on 2016/09/13 by Alexis.Matte Fix fbx automation test. The test found a regression cause by CL: 3120027. In the case where we dont have a LODGroup we dont want to add LODs before the build. #jira UE-32268 #rb none #codereview matt.kuhlenschmidt Change 3123148 on 2016/09/13 by Matt.Kuhlenschmidt Fix fortnite compile error #rb alexis.matte Change 3123208 on 2016/09/13 by Jamie.Dale The 'find culprit' dialog now honors the user choice #rb RichTW Change 3123545 on 2016/09/13 by Nick.Darnell Slate - Adjusting the window dialog host finding code to do a better job of searching for slate windows and excluding popups and non-regular windows. #rb none Change 3124494 on 2016/09/14 by Jamie.Dale Added ~ to the list of invalid characters for object/package names #jira UE-12908 #rb Matt.Kuhlenschmidt Change 3124513 on 2016/09/14 by Gareth.Martin Implemented filter to allow painting foliage on other foliage - Altered foliage filters so it will no longer paint on object types which don't have a filter, e.g. skeletal meshes #rb Allan.Bentham #2472 Change 3124523 on 2016/09/14 by Jamie.Dale PR #2724: Fix ScrollBox right mouse/touch grab scrolling functionality (Contributed by aarmbruster) #jira UE-34811 #jira UE-32082 #rb none Change 3124607 on 2016/09/14 by Nick.Darnell UMG - Adding BoundsScale support to the WidgetComponent's CalcBounds function. #jira UE-35667 #rb none Change 3124785 on 2016/09/14 by Gareth.Martin Made some foliage functions editor-only to fix non-editor build #rb none Change 3124795 on 2016/09/14 by Gareth.Martin Saved/loaded the new foliage filter #rb Allan.Bentham #2472 Change 3124915 on 2016/09/14 by Michael.Dupuis #jira UE-19511 Add support for Add to source control on DefaultEditorPerProjectUserSettings file Remove CheckoutNotice when not editing a DefaultXXXX.ini file Edit proper config file either we're modifying settings from a Default file or Local user file #codereview Matt.Kuhlenschmidt Max.Preussner #rb Alexis.Matte Change 3125266 on 2016/09/14 by Jamie.Dale Fixed ULocalizationTarget::DeleteFiles not deleting cultures, and using SCC wrong #rb none Change 3125385 on 2016/09/14 by Matt.Kuhlenschmidt Fix crash when using SaveAs to save over top of an existing level #rb none https://jira.ol.epicgames.net/browse/UE-35919 https://jira.ol.epicgames.net/browse/UE-35921 Change 3125487 on 2016/09/14 by Alexis.Matte Fix cook content, regression induce by the material workflow refactor #rb matt.kuhlenschmidt Change 3126217 on 2016/09/15 by Gareth.Martin Unset bHasPerInstanceHitProxies on landscape grass components, as they don't have individually editable instances #rb Allan.Bentham Change 3126311 on 2016/09/15 by Jamie.Dale Placement mode fixes - The display name is now cached correctly on construction, and the FPlaceableItem instance used with SPlacementAssetEntry is now const. - Ensured that the ID used by FPlaceableItem could never overflow. - Fixed some types being missing from the "All Classes" list. - Fixed the escape key not cancelling the search. #jira UE-35972 #rb James.Hopkin Change 3126325 on 2016/09/15 by Jamie.Dale Made sure that UWorld::GetAssetRegistryTags called its Super function so that properties tagged as AssetRegistrySearchable will be added. #rb Andrew.Rodham Change 3126403 on 2016/09/15 by Gareth.Martin Added Find and Contains functions to TBitArray #rb Steve.Robb Change 3126405 on 2016/09/15 by Gareth.Martin Allowed instances of Hierarchical Instanced Mesh Components to be moved around with the transform widget in the blueprint editor - Just like regular instanced mesh components! Also fixed not being able to move instances of an instanced mesh component when it is the root component Also also fixed Hierarchical Instanced Mesh Components not flushing their async tree build on saving (this was causing log spam from PostLoad when dragging instances around as the blueprint would constantly reinstance the component before the async tree build had finished) #jira UE-29357 #rb Allan.Bentham Change 3126444 on 2016/09/15 by Jamie.Dale Fixed the loc dashboard configs not working with SCC This isn't a great solution, but the whole way the loc dashboard manages its config data is in need of an overhaul. #rb none Change 3126446 on 2016/09/15 by Jamie.Dale Fixed loc dashboard game and engine targets sharing the same expansion settting #rb none Change 3126555 on 2016/09/15 by Chris.Wood Removed WER from Windows crash handling. Crashes saved to log folder and passed to CRC with explicit path. [UE-34470] - Investigate WER settings and if they can conflict with CRC on Windows #rb Steve.Robb Change 3126586 on 2016/09/15 by Gareth.Martin Fixed missing landscape components when using a LODBias (cloned from 4.13.1) #jira UE-35873 #rb Jack.Porter Change 3126610 on 2016/09/15 by Jamie.Dale Stopped PS4 from always staging all ICU data files #rb Marcus.Wassmer Change 3126779 on 2016/09/15 by Michael.Dupuis #jira UE-32914 Improve the help text to provide usage examples and params #rb Alexis.Matte Change 3126849 on 2016/09/15 by Matt.Kuhlenschmidt Fix font material and outline font material not being animatable in sequencer #rb frank.fella Change 3126858 on 2016/09/15 by Matt.Kuhlenschmidt File not saved #rb none Change 3127001 on 2016/09/15 by Matt.Kuhlenschmidt Fixed reset to default state still not appearing in all cases after changing a property. #rb none Change 3127038 on 2016/09/15 by Nick.Darnell UMG - Improving focus setting for users on widgets. If we're unable to set the focus immediately, possibly because the user is setting focus in the Construct callback before the widget is in the tree, we now update the SlateOperations FReply on LocalPlayer to set focus next frame when it's more likely the widget will become focusable. #rb none Change 3127061 on 2016/09/15 by Nick.Darnell Slate - We now have a reentrancy guard in TPanelChildren to avoid the broad cases where users might attempt to remove children while all children are being removed. Which is an easy case to engineer if you've got widgets spawning children managed by another widget, that all go away at the same time, thus causing the parent to attempt to cleanup children. The end result is a delete while deleting. So now TPanelChildren prevents adds/removes while emptying the list of children. #jira UE-35726 #rb Matt.Kuchlenschmidt Change 3127205 on 2016/09/15 by Alex.Delesky #jira UE-18013 - Users can now add Textures, Materials, or Sprites to a Widget Blueprint directly from the content browser. This also fixes a few issues with adding Widget Blueprints to another Widget BP from the content browser, such as adding a widget to itself or creating a circular dependency. #rb Nick.Darnell Change 3127971 on 2016/09/16 by Matt.Kuhlenschmidt Fix crash in scene outliner if actors become invalid #rb none https://jira.ol.epicgames.net/browse/UE-35932 Change 3128011 on 2016/09/16 by Matt.Kuhlenschmidt Added guards for crashes accessing slate resources for deleted uobjects #rb nick.darnell Change 3128067 on 2016/09/16 by Michael.Dupuis #jira UE-34158 Add an option to auto expand advanced details #rb Alexis.Matte Change 3128073 on 2016/09/16 by Michael.Dupuis #jira UE-1145 Set Save As to Ctrl + Alt + S Set Save All to Ctrl + Shift + S Set Save Current to Ctrl + S #rb Alexis.Matte Change 3128117 on 2016/09/16 by Jamie.Dale Updated the pin-type filter combo to filter on both the localized and source type descriptions #jira UE-36081 #rb none Change 3128177 on 2016/09/16 by Alexis.Matte #jira UE-35946 Remove unnecessary GetReadValue call with bad parameter. The read value call is cache so subsequent call was returning the bad cache value. #rb michael.dupuis #codereview matt.kuhlenschmidt Change 3128387 on 2016/09/16 by Gareth.Martin Fixed location and rotation of arrow widget in the landscape mirror tool when using one of the new "Rotate" modes #jira UE-36093 #rb none Change 3128445 on 2016/09/16 by Matt.Kuhlenschmidt Guard against scene outliner crash. Print out tree when items appear twice. https://jira.ol.epicgames.net/browse/UE-35935 #rb none Change 3128454 on 2016/09/16 by Matt.Kuhlenschmidt Remove category for WindowTitleBarArea. It is very custom for internal use and should not be a top level widget #rb none Change 3128482 on 2016/09/16 by Michael.Dupuis Added new key binding for generic Save, Save As Added new key binding for Save All for the content browser #rb Alexis.Matte (approved by MattK) Change 3128560 on 2016/09/16 by Matt.Kuhlenschmidt Fix build warning #codereview nick.darnell #rb none Change 3128642 on 2016/09/16 by Alexis.Matte #jira UE-36047 We now convert the light color correctly when importing and exporting fbx files. UE4 is sRGB and FBX is linear #rb none #codereview matt.kuhlenschmidt Change 3128733 on 2016/09/16 by Nick.Darnell UMG - Fixing a bad merge, some code was removed causing all BindWidget statements to fail to compile correctly. #jira UE-36105 #rb none Change 3128768 on 2016/09/16 by Matt.Kuhlenschmidt Fix selection outline showing around edges of all internal mesh sections of a component instead of around the entire actor #rb none Change 3128779 on 2016/09/16 by Matt.Kuhlenschmidt Fix offset characters on some small fonts #rb none Change 3130057 on 2016/09/19 by Jamie.Dale Fixing volatility and invalidation issues for text widgets #jira UE-33988 #rb Nick.Darnell Change 3130064 on 2016/09/19 by Jamie.Dale Changed mprof meta-data to allow unicode strings and updated ReadString to deal with them correctly #rb James.Hopkin Change 3130233 on 2016/09/19 by Michael.Dupuis #jira UE-32914 Added missing args that the UI supported #rb Alexis.Matte Change 3130265 on 2016/09/19 by Nick.Darnell Automation - Cleaning up some API items. #rb none Change 3130378 on 2016/09/19 by Matt.Kuhlenschmidt Fix reentrancy saving assets while a prompt for checkout dialog is open #rb none Change 3130398 on 2016/09/19 by Jamie.Dale Fixing UHT error when building #rb none Change 3132101 on 2016/09/20 by Nick.Darnell UMG - Adding a toolbar option in the designer for the 'G' command, similar to 'Game View' in the level editor, it disables all the dashed lines / future editor visuals. #rb none Change 3132110 on 2016/09/20 by Nick.Darnell PR #2792: ShowFlags for WidgetComponents (Contributed by projectgheist) #jira UE-13770 #rb Nick.Darnell Change 3132111 on 2016/09/20 by Nick.Darnell UMG - The retainer now embeds a virtual window into the focus path so that paths are resolved correctly. #rb none Change 3132138 on 2016/09/20 by Michael.Dupuis #jira UE-30945 Added missing PostEditComponentMove after drag is finished #rb Alexis.Matte Change 3132147 on 2016/09/20 by Michael.Dupuis #jira UE-30866 Fixed the filter to work properly #rb Alexis.Matte Change 3132190 on 2016/09/20 by Matt.Kuhlenschmidt Fix static analysis warnings in this file #rb none Change 3132231 on 2016/09/20 by Nick.Darnell Slate - Updating the material blend states to match what is expected of Slate rendering, which differs a lot from the scene renderer with the way it treats alpha. This fixes translucent rendering with the retainer widget, users will need to set their materials to Alpha Composite though for it to behave as expected. #jira UE-33285 #rb none Change 3132255 on 2016/09/20 by Alex.Delesky #jira UE-36048 - TMap and TSet properties are now disallowed from adding more children through the Details panel when they contain the dfault value for a key or element. Reset to Default is also no longer allowed on a Map or Set child when it will result in a second default value existing within the container. #rb Matt.Kuhlenschmidt Change 3132587 on 2016/09/20 by Mike.Fricker MIDI Plugin: Fixed a CIS error in shipping configuration (introduced in CL 3108604) #rb none #lockdown matt.kuhlenschmidt Change 3132623 on 2016/09/20 by Matt.Kuhlenschmidt Fix crash opening the cooker settings https://jira.it.epicgames.net/browse/UE-36197 #rb none #lockdown nick.darnell Change 3133144 on 2016/09/20 by Nick.Darnell Build configuration for automation tests. #rb none #lockdown matt.kuhlenschmidt Change 3133206 on 2016/09/20 by Matt.Kuhlenschmidt Fix default material on odin text #rb none #lockdown nick.darnell Change 3133913 on 2016/09/21 by Nick.Darnell Back out revision 17 from //UE4/Dev-Editor/Engine/Source/Runtime/UMG/Private/Slate/SRetainerWidget.cpp #rb none #jira UE-36231 #lockdown matt.kuhlenschmidt [CL 3133983 by Matt Kuhlenschmidt in Main branch]
2016-09-21 10:07:18 -04:00
}
}
#if WITH_EDITOR
{
FLinearColor OutlineColorValue = Context.View.SelectionOutlineColor;
FLinearColor SubduedOutlineColorValue = Context.View.SubduedSelectionOutlineColor;
OutlineColorValue.A = GEngine->SelectionHighlightIntensity;
SetShaderValue(Context.RHICmdList, ShaderRHI, OutlineColor, OutlineColorValue);
SetShaderValue(Context.RHICmdList, ShaderRHI, SubduedOutlineColor, SubduedOutlineColorValue);
SetShaderValue(Context.RHICmdList, ShaderRHI, BSPSelectionIntensity, GEngine->BSPSelectionHighlightIntensity);
}
#else
check(!"This shader is not used outside of the Editor.");
#endif
{
static const auto CVar = IConsoleManager::Get().FindTConsoleVariableDataFloat(TEXT("r.Editor.MovingPattern"));
FLinearColor Value(0, CVar->GetValueOnRenderThread(), 0, 0);
if(!ViewFamily.bRealtimeUpdate)
{
// no animation if realtime update is disabled
Value.G = 0;
}
SetShaderValue(Context.RHICmdList, ShaderRHI, EditorRenderParams, Value);
}
}
// FShader interface.
virtual bool Serialize(FArchive& Ar) override
{
bool bShaderHasOutdatedParameters = FGlobalShader::Serialize(Ar);
Ar << PostprocessParameter << OutlineColor << SubduedOutlineColor << BSPSelectionIntensity << DeferredParameters << PostprocessInput1MS << EditorPrimitivesStencil << EditorRenderParams;
return bShaderHasOutdatedParameters;
}
static const TCHAR* GetSourceFilename()
{
return TEXT("PostProcessSelectionOutline");
}
static const TCHAR* GetFunctionName()
{
return TEXT("MainPS");
}
};
// #define avoids a lot of code duplication
#define VARIATION1(A) typedef FPostProcessSelectionOutlinePS<A> FPostProcessSelectionOutlinePS##A; \
IMPLEMENT_SHADER_TYPE2(FPostProcessSelectionOutlinePS##A, SF_Pixel);
VARIATION1(1) VARIATION1(2) VARIATION1(4) VARIATION1(8)
#undef VARIATION1
template <uint32 MSAASampleCount>
static void SetSelectionOutlineShaderTempl(const FRenderingCompositePassContext& Context)
{
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
FGraphicsPipelineStateInitializer GraphicsPSOInit;
Context.RHICmdList.ApplyCachedRenderTargets(GraphicsPSOInit);
GraphicsPSOInit.BlendState = TStaticBlendState<>::GetRHI();
GraphicsPSOInit.RasterizerState = TStaticRasterizerState<>::GetRHI();
GraphicsPSOInit.DepthStencilState = TStaticDepthStencilState<false, CF_Always>::GetRHI();
TShaderMapRef<FPostProcessVS> VertexShader(Context.GetShaderMap());
TShaderMapRef<FPostProcessSelectionOutlinePS<MSAASampleCount> > PixelShader(Context.GetShaderMap());
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
GraphicsPSOInit.BoundShaderState.VertexDeclarationRHI = GFilterVertexDeclaration.VertexDeclarationRHI;
GraphicsPSOInit.BoundShaderState.VertexShaderRHI = GETSAFERHISHADER_VERTEX(*VertexShader);
GraphicsPSOInit.BoundShaderState.PixelShaderRHI = GETSAFERHISHADER_PIXEL(*PixelShader);
GraphicsPSOInit.PrimitiveType = PT_TriangleList;
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
SetGraphicsPipelineState(Context.RHICmdList, GraphicsPSOInit);
PixelShader->SetPS(Context);
}
void FRCPassPostProcessSelectionOutline::Process(FRenderingCompositePassContext& Context)
{
SCOPED_DRAW_EVENT(Context.RHICmdList, PostProcessSelectionOutline);
const FPooledRenderTargetDesc* SceneColorInputDesc = GetInputDesc(ePId_Input0);
const FPooledRenderTargetDesc* SelectionColorInputDesc = GetInputDesc(ePId_Input1);
if (!SceneColorInputDesc || !SelectionColorInputDesc)
{
// input is not hooked up correctly
return;
}
const FSceneView& View = Context.View;
FIntRect ViewRect = View.ViewRect;
FIntPoint SrcSize = SceneColorInputDesc->Extent;
const FSceneRenderTargetItem& DestRenderTarget = PassOutputs[0].RequestSurface(Context);
// Set the view family's render target/viewport.
SetRenderTarget(Context.RHICmdList, DestRenderTarget.TargetableTexture, FTextureRHIRef());
Context.SetViewportAndCallRHI(ViewRect);
const uint32 MSAASampleCount = FSceneRenderTargets::Get(Context.RHICmdList).GetEditorMSAACompositingSampleCount();
if(MSAASampleCount == 1)
{
SetSelectionOutlineShaderTempl<1>(Context);
}
else if(MSAASampleCount == 2)
{
SetSelectionOutlineShaderTempl<2>(Context);
}
else if(MSAASampleCount == 4)
{
SetSelectionOutlineShaderTempl<4>(Context);
}
else if(MSAASampleCount == 8)
{
SetSelectionOutlineShaderTempl<8>(Context);
}
else
{
// not supported, internal error
check(0);
}
// Draw a quad mapping scene color to the view's render target
TShaderMapRef<FPostProcessVS> VertexShader(Context.GetShaderMap());
DrawRectangle(
Context.RHICmdList,
0, 0,
ViewRect.Width(), ViewRect.Height(),
ViewRect.Min.X, ViewRect.Min.Y,
ViewRect.Width(), ViewRect.Height(),
ViewRect.Size(),
SrcSize,
*VertexShader,
EDRF_UseTriangleOptimization);
Context.RHICmdList.CopyToResolveTarget(DestRenderTarget.TargetableTexture, DestRenderTarget.ShaderResourceTexture, false, FResolveParams());
}
FPooledRenderTargetDesc FRCPassPostProcessSelectionOutline::ComputeOutputDesc(EPassOutputId InPassOutputId) const
{
FPooledRenderTargetDesc Ret = GetInput(ePId_Input0)->GetOutput()->RenderTargetDesc;
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 3388261) #lockdown Nick.Penwarden #rb None ========================== MAJOR FEATURES + CHANGES ========================== Change 3358140 on 2017/03/22 by Rolando.Caloca DR - Fix copy to cube face - Compile fix when using dump layer - Add new error enum Change 3358301 on 2017/03/22 by Mitchell.Wilson Initial check in of LODs in InfiltratorForward. First pass on optimization in level. Adding a visibility track for SceneCapture2D in tunnel section. Change 3358477 on 2017/03/22 by Mitchell.Wilson Updating Skeletal Mesh DPW_Robot_Export to resolve screen size being too low for LOD1. Cleaned up LOD1 which was showing some visible popping when transitioning. Change 3358529 on 2017/03/22 by Mark.Satterthwaite Globally disable clang's "constant-logical-operand" warning when running under Distcc - it is much easier and less invasive than constantly fixing the code. Change 3358745 on 2017/03/22 by Mark.Satterthwaite Disable another warning (parentheses-equality) under Distcc because again the separation of preprocessing from compilation means it turns up where it isn't expected. Change 3358837 on 2017/03/22 by Joe.Graf Merge of pull request #3214 for the RenderDocPlugin #CodeReview: matt.kuhlenschmidt, marcus.wassmer #rb: marcus.wassmer Change 3359112 on 2017/03/22 by Ben.Salem Update perf monitor to include frame time by default. Also, use only game/PIE world timers when in editor, instead of all worlds combined. #tests Ran several Showdown test runs with plugin! Change 3359363 on 2017/03/22 by Joe.Graf First pass at non-unity & no pch compilation Change 3359449 on 2017/03/22 by Joe.Graf Added missing null check when exporting a EXR on Linux (UE-40268) #CodeReview: dmitry.rekman #rb: n/a Change 3360349 on 2017/03/23 by Guillaume.Abadie Fixes TAA's AA_FORCE_ALPHA_CLAMP causing DOF layouts. #jira UE-42920 Change 3360405 on 2017/03/23 by Marcus.Wassmer Better method for detecting Kepler Change 3360718 on 2017/03/23 by Daniel.Wright Planar reflections handle views smaller than the render target in a general way * Fixes planar reflections with adaptive pixel density (ViewFamily size larger than actual views combined) * Planar reflections are now supported in splitscreen Change 3360758 on 2017/03/23 by Daniel.Wright [Copy] Added new light property bCastVolumetricShadow, which defaults to true for directional and sky lights, but false for point / spot lights as supporting volumetric fog shadowing has significant GPU overhead Change 3360762 on 2017/03/23 by Daniel.Wright [Copy] Texture flags are now properly routed to RHICreateTexture3D from the render target pool Change 3360768 on 2017/03/23 by Daniel.Wright [Copy] Disabled GPUProfiler histogram by default, controlled by r.ProfileGPU.ShowEventHistogram Change 3360770 on 2017/03/23 by Daniel.Wright [Copy] Disabled fast clears on CustomDepth, saves .2ms on xbox Change 3360771 on 2017/03/23 by Daniel.Wright [Copy] Particle lights no longer force tiled deferred lighting. Tiled deferred lighting is only used if enough unshadowed lights + particle lights are on screen. Saves 1.5ms Xbox with one particle light. Change 3360774 on 2017/03/23 by Daniel.Wright [Copy] Distance field cvar comments Change 3360782 on 2017/03/23 by Daniel.Wright [Copy] Disabled selection color on Volume materials Change 3360795 on 2017/03/23 by Daniel.Wright [Copy] Volume materials now specify Albedo and Extinction, which is more intuitive than Scattering and Absorption. Albedo is [0-1] reflectance, while Extinction is a world space density. Change 3360799 on 2017/03/23 by Daniel.Wright [Copy] Cinematic scalability levels get 2x volumetric fog resolution in x and y Change 3360806 on 2017/03/23 by Daniel.Wright [Copy] Fixed volumetric fog being offset when viewport min is not 0 Change 3360809 on 2017/03/23 by Daniel.Wright [Copy] Volumetric fog now adds a bias to the inverse squared light falloff denominator, prevents extreme aliasing from the hotspot. Can be controlled with r.VolumetricFog.InverseSquaredLightDistanceBiasScale. Change 3361651 on 2017/03/23 by Brian.Karis Higher quality sharp SSR at quality 4 Change 3361678 on 2017/03/23 by Brian.Karis Fresnel darkens diffuse for clearcoat. Change 3361683 on 2017/03/23 by Brian.Karis Fixed SSR artifact Change 3361691 on 2017/03/23 by Brian.Karis Chagned min roughness limit Change 3361707 on 2017/03/23 by Brian.Karis Added inverse film tone map Change 3361726 on 2017/03/23 by Brian.Karis Better precision inverse Change 3361758 on 2017/03/23 by Brian.Karis Material flag normal curvature to roughness is no longer forward only. Change 3361765 on 2017/03/23 by Brian.Karis Update ACES Change 3361774 on 2017/03/23 by Brian.Karis Cleaned up alpha support and disabled screen edge clipping. Change 3362478 on 2017/03/24 by Guillaume.Abadie Cherry pick 3316084's PostProcessing.cpp: Fixes a bug in Circle DOF where the apply pass was no longer using the downres DOF's TAA output. #author Brian.Karis #jira UE-42920 Change 3362738 on 2017/03/24 by Rolando.Caloca DR - Hide scene capture on IF Change 3362890 on 2017/03/24 by Guillaume.Abadie Renames r.SceneAlpha to r.PostProcessing.PropagateAlpha Change 3363665 on 2017/03/24 by Mark.Satterthwaite PR #3414: Add command line option "-noheartbeatthread" to disable heart beat thread (Contributed by JeffRous) Change 3363866 on 2017/03/24 by Arne.Schober DR - Updated NVAPI #RB Marcus.Wassmer Change 3364300 on 2017/03/24 by Brian.Karis SSR use dynamic velocity Change 3364372 on 2017/03/24 by Brian.Karis Fix changing off axis projection velocities. Change 3364373 on 2017/03/24 by Brian.Karis Enabled velocity drawing in scene captures Change 3365531 on 2017/03/27 by Guillaume.Abadie Computes the material's screen position material expression directly from the pixel shader SvPosition Change 3365764 on 2017/03/27 by Chris.Bunner Lowering severity of crash for missing values in scalability.ini. #jira UE-41331 Change 3365916 on 2017/03/27 by Guillaume.Abadie Exposes the viewport offset within the view property material expression Change 3365979 on 2017/03/27 by Brian.Karis Fixed skylight intensity from double applying Change 3365987 on 2017/03/27 by Brian.Karis Stopped post process indirect lighting intensity from scaling skylight reflections Change 3365991 on 2017/03/27 by Brian.Karis Fix for static analysis Change 3366028 on 2017/03/27 by Daniel.Wright Volumetric fog supports static shadowing from Stationary lights * Using bilinear on static shadowmap depths + 1 PCF to smooth out results Change 3366029 on 2017/03/27 by Daniel.Wright Static shadow depth maps for Stationary point and spot lights are 2x higher res by default (4x more texels), which is more appropriate for volumetric fog Change 3366055 on 2017/03/27 by Guillaume.Abadie Cherry picks 3251469: Implements scene capture component's CaptureSortPriority to control GPU execution order in order to manage inter dependencies. Change 3366447 on 2017/03/27 by Simon.Tourangeau Fix IES light profile importer. - Bug in the LM-63-1986 format importer. Change 3366836 on 2017/03/27 by Brian.Karis ClearUAV now supports int types Change 3367435 on 2017/03/28 by Benjamin.Hyder Submitting Decal Automation map for initial approval Change 3367572 on 2017/03/28 by Chris.Bunner Changed ClampedPow {max(abs(x),0.00001)} to PositiveClampedPow {max(x,0)} to give more expected results to Power node in material graphs. #jira UE-42989 Change 3367756 on 2017/03/28 by Olaf.Piesche Niagara material usage flags Change 3367835 on 2017/03/28 by Marcus.Wassmer Fix crash when TileRenderer runs before anything else. Make explicit behavior when rendering at a time when there is no valid scene. Change 3367837 on 2017/03/28 by Marcus.Wassmer Missed a file. Change 3367838 on 2017/03/28 by Richard.Wallis Updated items from original shelved version by Mark Satt: - Added MetalBackend.cpp to change main function string to have an initial crc + code length zero's **Description below taken from Mark Satt's original verison of this in CL3343280** Updated for Dev-Rendering's PSOs & integrates Richard's work on RHI shader libraries. Replace the FShaderCache's cook-time binary shader cache with Dmitriy Dyomin's standalone FShaderCodeLibrary that saves all shader byte-code arrays to files named by the FSHAHash. This de-duplicates shaders so we only ever store the byte code once. Includes optional support for generating a platform specific library file - which Metal implements to provide a single Metal library. The platform-native implementation can perform more de-duplication and in the case of Metal has lower file overheads and will compress more efficiently. - All of the support code for the FShaderCache's cook caching is gone, which affects all platforms. The FShaderCodeLibrary is currently supported by Cook-By-The-Book but can be used with iterate or child cookers - only DLC cooking requires further work. - With further modifications it should be possible to support Cook-on-the-Fly as well (output directories would be needed in FShaderCodeLibrary::InitForCooking) and the file-access pattern should be changed to use async. IO so that Material loading is not considered complete until all required byte-code arrays are loaded into the FShaderCodeLibrary. - For Metal archiving shaders this way will compile with debug information and the FShaderCodeLibrary, with some help from extensions to IShaderFormat, will save the debug information out into separate files during cooking - these can then be used to debug the game without having to locally recompile, recook & repackage but the shipped byte-code is stripped. Global shader caches are also subject to de-duplication in the library in order to support Metal's shader stripping. - File Move operations need to respect the 'Replace' flag - for FShaderCodeLibrary to work we need Move to be atomic. - This bumps the object version and will cause all content to recook. - Native library support is optional - only Metal currently implements one, but so could Vulkan and D3D12. For Metal the big advantages are further de-duplication where different materials generate the same MetalSL text but a different FSHAHash, that the single Metal library has lower overhead and that as a single file it all compresses far better (esp. with LZMA - 5x smaller). Change 3367854 on 2017/03/28 by Mark.Satterthwaite Don't track or record draw call resources for non-OpenGL shader platforms in the shader-cache as it is unnecessary and makes it slower on the CPU than it needs to be. Change 3367877 on 2017/03/28 by Brian.Karis Fixed linux build hopefully Change 3368001 on 2017/03/28 by Mark.Satterthwaite Compile fixes from Richard's checkin caused by not having visibility to all platforms from my original shelves. Change 3368019 on 2017/03/28 by Mark.Satterthwaite And another fix for Windows compilation of MetalShaderFormat. Change 3368042 on 2017/03/28 by Mark.Satterthwaite And a couple of simpler MSVC errors. Change 3368271 on 2017/03/28 by Mark.Satterthwaite Make SceneRenderTargets compile again. Change 3368691 on 2017/03/28 by Daniel.Wright [Copy from BenW] Renamed r.Shadow.MaxCSMShadowResolution to r.Shadow.MaxCSMResolution to match scalability inis Change 3369689 on 2017/03/29 by Marcus.Wassmer Fix non editor compile for now Change 3369862 on 2017/03/29 by Marcus.Wassmer Get the rest of the things compiling again. Change 3369896 on 2017/03/29 by Chris.Bunner Enabling AMD HDR support by default. #jira UE-42113 Change 3370535 on 2017/03/29 by Marcus.Wassmer DR - Fix template explicit instantiation for ClearUAV permutations #RB Brian.Karis, Arne.Schober Change 3370704 on 2017/03/29 by Rolando.Caloca DR - Rewrote GPU Skin Cache - Per section buffers - Limited memory per non-editor worlds (control with r.SkinCache.SceneMemoryLimitInMB) Copied from 3370529 Change 3371389 on 2017/03/30 by Richard.Wallis Remove temp working directories after archive packages built. Change 3371641 on 2017/03/30 by Rolando.Caloca DR - Copy 3371640 (fix mem leak) Change 3372436 on 2017/03/30 by Uriel.Doyon Added flags in UPrimitiveComponent to keep track of its state in the streaming manager. This allows to avoid unnecessary callback and processing in begin destroy reattach and being destroy logic. Removed the limitation of only processing UMeshComponent when handling spawed primitive. This releases the level manager from having to manage dynamic primitives. This improves performance by not having to manage dynamic references in the level manager. Primitives managed as dynamic now have a callback when ever their proxy is udpated, handling many cases automatically where previously a manual callback to notify would have been required. Fixed an issue where primitives with no reference to streaming textures would loose they dynamic state because of lack of references in the streamer. Change 3372740 on 2017/03/30 by Chris.Bunner [Experimental] Partial compute post process pipeline (r.PostProcess.PreferCompute). StencilSceneTexture added to deferred list. A few known issues to be fixed in a follow-up CL. Change 3372765 on 2017/03/30 by Uriel.Doyon Disabled concurrent call to NotifyPrimitiveUpdated while we don't have a safe concurrent update Change 3372979 on 2017/03/30 by Richard.Hinckley #jira UE-43501 The stencil buffer can now use single-channel bitmasks that ignore depth. This makes it possible to detect overlaps between stencil objects. Change 3373053 on 2017/03/30 by Simon.Tourangeau LPV Fade support - mostly integrated from CL 2959511 Change 3373272 on 2017/03/30 by Uriel.Doyon Added support for the concurrent update of dynamic primitives by the streaming manager. Change 3373450 on 2017/03/30 by Rolando.Caloca DR - FNT - Fix bad data for odd texcoord channels used on skin cache passthrough factory Copy 3373364 #jira UE-43492 Change 3373470 on 2017/03/30 by Marcus.Wassmer Nvidia Aftermath support Change 3374187 on 2017/03/31 by Chris.Bunner Volume texture support for CombineLUTs/Tonemap compute pass. Refactored common param code to shared sub-class in CombineLUTs and Tonemap PS/CS. Skip compute post process out-of-bounds writes. Unsigned type conversion fixes. Trimmed compute post process shader inputs. Change 3374233 on 2017/03/31 by Chris.Bunner Removed several redundant post process compute fences and resource transitions. Added testing CVar to force compute post processes to async (r.PostProcess.ForceAsyncDispatch). Change 3374412 on 2017/03/31 by Rolando.Caloca DR - Fix static analysis Change 3374544 on 2017/03/31 by Richard.Wallis FShaderCache Parallel-Context-Aware Merged with FShaderCache Single Library. Future Work - This was done before Engine PSO were in so this now needs a refector in the recording and playback on pipeline states instead an emulate PSO in OpenGL Driver. - Remove FShaderCacheState and replace the logic with FGraphicsPipelineStateInitializer which should be able to record from the RHI current pipeline state - This would reduce the Locking required as it's naturally per thread/context and only the final record would need a lock Change 3374588 on 2017/03/31 by Richard.Wallis Windows Compile Fixes Change 3374810 on 2017/03/31 by Benjamin.Hyder updating recommended GPU drivers Change 3375207 on 2017/03/31 by Rolando.Caloca DR - vk - Fixed swapchain format selection for some Linux platforms Change 3375248 on 2017/03/31 by Rolando.Caloca DR - vk - Prefer D32S8 Change 3375495 on 2017/03/31 by Rolando.Caloca DR - vk - Update to sdk 1.0.42.2 Change 3375496 on 2017/03/31 by Rolando.Caloca DR - Force compiling with updated Vulkan SDK Change 3375636 on 2017/03/31 by Mark.Satterthwaite Copying Metal improvements from task stream, with some modifications: - Off-by-default implementations for MTLFence & MTLHeap, including some small changes to the RHI interface for parallel contexts. - Support for Apple's Instruments "Points of Interest" tool. - Consolidation of some Mac & iOS compiler, memory and thread handling code. - Fixes for Metal not having implicit buffer SRV typecasting for DistanceField effects. - Improvements to the internal FMetalDebug layer, still off by default. - Limited support for Xcode automatic code-signing for iOS/tvOS. - Minimisation of render-target changes in some rendering code, esp. SceneOcclusion, DBufferDecals. - Added RHISetResourceAliasability_RenderThread to FDynamicRHI for RHIs to implement simple render-target aliasing. - Added FApplePlatformObject, a custom block allocator for Objective-C types (with NSZombie support) which is now used in MetalRHI to decrease allocation costs of Objective-C types. - Smattering of lesser fixes. Change 3375654 on 2017/03/31 by Mark.Satterthwaite Incremental Windows build fix. Change 3375656 on 2017/04/01 by Mark.Satterthwaite Correct extern declaration, including the module export macro which Mac unhelpfully doesn't enforce (for now...). Change 3375797 on 2017/04/01 by Mark.Satterthwaite Nullability qualifiers to fix Mac build-farm compilation: perversely this is not a problem for local builds... Change 3375798 on 2017/04/01 by Mark.Satterthwaite Fix the first mis-merge in ParticleGpuSimulation - these changes clearly weren't properly resolved in the task-stream. Change 3375835 on 2017/04/01 by Mark.Satterthwaite Try again with nullability and fix the occlusion changes as the PSO work wasn't merged correctly. Change 3376143 on 2017/04/02 by Mark.Satterthwaite Switch back to flat dSYMs for Dev-Rendering - they don't work with Instruments etc. but they are required by our build system. Change 3376324 on 2017/04/03 by Chris.Bunner Fixed cvar re-registration log spam and flagged a testing-only cvar as such. Change 3376726 on 2017/04/03 by Benjamin.Hyder Submitting initial HDR test map (WIP) Change 3376756 on 2017/04/03 by Guillaume.Abadie Fixes scene captures ordering's backward compatibility. Before, 2d scene captures were rendered before cube scene captures. The CaptureSortPriority broke backward compatibility by settings this new member to 0 in the USceneCaptureComponent's constructor. Since it is a higher come first policy, this CL set the default of this value to 1 in USceneCaptureComponent2D's constructor. Change 3377378 on 2017/04/03 by Arne.Schober DR - Fix ShaderRecompiling over and over again #RB Chris.Bunner Change 3377512 on 2017/04/03 by Daniel.Wright [Copy] Fixed profilegpu in d3d12 - initialize FLongGPUTaskPS when it is safe to do so, and fixed FSlateRHIRenderer's incorrect usage of draw events Change 3377518 on 2017/04/03 by Daniel.Wright [Copy] Distance field atlas coalesces updates to reduce RHIUpdateTexture3D memory overhead on d3d12 Change 3377526 on 2017/04/03 by Daniel.Wright [Copy] "Ran out of GPU queries!" log only happens once Change 3377535 on 2017/04/03 by Daniel.Wright [Copy] Fixed unreferenced local variable Change 3377539 on 2017/04/03 by Daniel.Wright [Copy] Xbox One RHIGetResourceInfo takes ESRAM into account - fixes render target pool 'VRamInKB request failed' messages Change 3377546 on 2017/04/03 by Daniel.Wright [Copy] Added r.LightMaxDrawDistanceScale for local light scalability Change 3377553 on 2017/04/03 by Daniel.Wright [Copy] Removed NEW_ESRAM_ALLOCATOR define and old unused path Change 3377560 on 2017/04/03 by Daniel.Wright [Copy] Fixed two d3d12 refcounting bugs causing -norhithread crashes Change 3377565 on 2017/04/03 by Daniel.Wright [Copy] Fixed Xbox One deleting GPU resources before the GPU is done reading from them (GRHINeedsExtraDeletionLatency was false) Change 3377572 on 2017/04/03 by Daniel.Wright [Copy] Disabled point / spot lights with MaxDrawDistance on LowPC Change 3377586 on 2017/04/03 by Daniel.Wright Fixed compile error Change 3377699 on 2017/04/03 by David.Hill FFT Code. Moved over from raven and refactored #review-3374589 @guillaume.abadie Change 3377910 on 2017/04/03 by David.Hill GPU FFT: Fix Linux Build adding a missing template<> to an IMPLEMENT_SHADER_TYPE Change 3378751 on 2017/04/04 by Marcus.Wassmer HQ particle lights now spawn attached to the same socket as their parent module. Change 3378819 on 2017/04/04 by Richard.Wallis Should be no need to protect shader cache against RHI thread now. Change 3378823 on 2017/04/04 by Richard.Wallis FRHIShaderLibrary Opaque Type - Base FRHIShaderLibrary has no Create*Shader functions and is passed to Overloaded RHICreate*Shader functions instead of creation directly through the library. - Assumed that only Native libraries will end up in the RHICreate*Shader functions. - ShaderCache and ShaderCode Libraries now inherit from a common factory interface. Change 3378883 on 2017/04/04 by Arne.Schober DR - Fix DCC build Change 3378885 on 2017/04/04 by Richard.Wallis Metal resource cast compile fix post merge. Change 3378946 on 2017/04/04 by Chris.Bunner SM4 assert fix. Change 3378953 on 2017/04/04 by Chris.Bunner Fixed type-correctness on legacy BreakMA material nodes and set more flexible formats to global attributes which should result in much more forgiving graphs for users. Allowed material nodes to opt out of mask-based pin coloration. #tests Compiled most Paragon materials + QAGame test maps. #jira UE-39885 Change 3379189 on 2017/04/04 by Arne.Schober DR - Fix aftermath staging Change 3379229 on 2017/04/04 by Arne.Schober DR - Fix missing include Change 3379374 on 2017/04/04 by Mark.Satterthwaite Revert an accidentally merged change in MacPlatformProcess that relies on further changes from the Metal task stream. Change 3379505 on 2017/04/04 by Rolando.Caloca DR - Fix mismatched interpolators Change 3379539 on 2017/04/04 by Mark.Satterthwaite No FFT for any hlslcc platform - the IR for one or more RWTexture2D isn't quite right... #jira UE-43626 Change 3379561 on 2017/04/04 by Rolando.Caloca DR - Fix root signature issues on D3D12 PC Change 3379590 on 2017/04/04 by Mark.Satterthwaite Back out changelist 3379539 & change the shader slightly instead, the HLSLCC library generates bogus IR when you have an inout RWTexture. #jira UE-43626 Change 3379917 on 2017/04/04 by Uriel.Doyon Fix to input mismatch Change 3380578 on 2017/04/05 by Chris.Bunner Shader type fixes. #jira UE-43652 Change 3380639 on 2017/04/05 by Rolando.Caloca DR - Expose GetOrCreate PSO and document Change 3380821 on 2017/04/05 by Guillaume.Abadie Fixes a crash in USceneCaptureComponent::UpdateDeferredCaptures() #jira UE-43642 Change 3381092 on 2017/04/05 by Guillaume.Abadie Cherry pick 3362517: Implements TAA's scene color unpremultiplication from alpha channel to reduce DOF alpha channel temporal ghosting. This CL take the oportunity to transform AA_ALPHA to an compile time enumeration, and add a basic TAA compile time configuration validation to improve readability of the different TAA passes' configurations. Change 3381300 on 2017/04/05 by Mark.Satterthwaite Quick fix for changes to MetalRHI's render-thread safe texture creation not correctly handling AVFoundation video player handing us an IOSurface. #jira UE-43597 Change 3381359 on 2017/04/05 by Guillaume.Abadie Back out changelist 3381092 Change 3381421 on 2017/04/05 by Mark.Satterthwaite Amended CL #3380995 from Richard Wallis to address crash in the Material Editor under the validation layer - when there are no textures bound the default pass descriptor assigns store actions, which means we can't override them with our deferred store actions. #jira UE-43689 Change 3381422 on 2017/04/05 by Mark.Satterthwaite Absolute time queries can't be batched in Metal but I also can't rely on them being started with a call to BeginQuery - only EndQuery. #jira UE-43691 Change 3381503 on 2017/04/05 by Daniel.Wright More intuitive controls for Volumetric Fog * Removed ScatteringScale / AbsorptionScale on Exponential Height Fog and added Albedo / Extinction * InscatteringColorCubemap is now supported by Volumetric Fog * Particle lights have a default VolumetricScatteringIntensity of 0 to avoid trailing * Tweaked GVolumetricFogDepthDistributionScale better for nearby details * Volume Materials have twice the interpolators available Change 3381527 on 2017/04/05 by Mark.Satterthwaite Disable Private GPU storage for PVRTC texture formats on iOS Metal - these require more changes to the blit-encoder usage as PVRTC has strange requirements. Change 3381671 on 2017/04/05 by Mark.Satterthwaite Better error message for failure to compile shaders remotely from PC for Metal. Change 3381769 on 2017/04/05 by Rolando.Caloca DR - Added lock texture array 2d on Vulkan Change 3382003 on 2017/04/05 by Mark.Satterthwaite Remove the automatic Metal aliasing/re-use when releasing some resource types as it doesn't work as intended. Change 3382030 on 2017/04/05 by Zachary.Wilson Fix compiling Metal text shaders from PC broken in merge from task stream. #submitter mark.satterthwaite #jira UE-43652 Change 3382880 on 2017/04/06 by Mark.Satterthwaite Michael Trepka's CL #3379927: VolumetricFogVoxelization implementation for Mac Change 3383315 on 2017/04/06 by Mark.Satterthwaite Partially revert CL #3382003 - the emulated Metal heaps require invoking makeAliasable in order to reclaim memory. #jira UE-43739 Change 3384639 on 2017/04/07 by Marcus.Wassmer Move ShaderResource version bump to RenderingObjectVersion Change 3384704 on 2017/04/07 by Mark.Satterthwaite Compile fix for merge. Change 3384933 on 2017/04/07 by Rolando.Caloca DR - Fix skin cache crash with BP (copy 3384714) Change 3385104 on 2017/04/07 by Mark.Satterthwaite Fix MetalRHI's abs(int2) handling - it can't be translated to fabs(int2) as that won't compile. Also rebuild hlslcc for my sanity. #jira UE-43783 Change 3385105 on 2017/04/07 by Mark.Satterthwaite Force a shader rebuild to ensure that everybody picks up the fix for #jira UE-43783 #jira UE-43783 Change 3385118 on 2017/04/07 by Arne.Schober DR - [OR-37359] - Fix disapearing Decals when StencilLod Fade is enabled #RB none Change 3385149 on 2017/04/07 by Marcus.Wassmer Fix skincache motion blur Change 3385189 on 2017/04/07 by Rolando.Caloca DR - Fix swapchain format for editor on Vulkan Change 3385287 on 2017/04/07 by Mark.Satterthwaite Enable SM5 on Intel as of 10.12.4 and later. Change 3385347 on 2017/04/07 by Rolando.Caloca DR - Temp fix for GL4 corruption on editor #jira UE-43785 Change 3385363 on 2017/04/07 by Rolando.Caloca DR - Actually fix all win platforms for GL bug #jira UE-43785 Change 3385557 on 2017/04/07 by Arne.Schober DR - [UE-43205] - Fix mesh paint #RB none Change 3385608 on 2017/04/07 by Daniel.Wright Fixed SampleCmp being used on a non-depth texture, causing a d3d error Change 3385980 on 2017/04/10 by Rolando.Caloca DR - Remove transition functions RHIClearColor* RHIClearDepthStencilTexture Change 3386042 on 2017/04/10 by Rolando.Caloca DR - Fix metal merge issue Change 3386157 on 2017/04/10 by Rolando.Caloca DR - Remove VS2013 libs generation off hlslcc & glslang (to match main) Change 3386356 on 2017/04/10 by Chris.Bunner Resolving merge errors. Change 3386414 on 2017/04/10 by Chris.Bunner Resolved merge issue in RendererScene.cpp. Change 3386700 on 2017/04/10 by Mark.Satterthwaite Silence documentation warnings. Change 3387178 on 2017/04/10 by Chris.Bunner Removed invalid mask correction on MakeMA material nodes. Change 3388177 on 2017/04/11 by Marcus.Wassmer Disable ensure that is no longer relevant now that we bind clear colors on texture creation Change 3388261 on 2017/04/11 by Chris.Bunner Static analysis fix. [CL 3388266 by Chris Bunner in Main branch]
2017-04-11 10:32:07 -04:00
Ret.Reset();
Ret.DebugName = TEXT("SelectionComposited");
return Ret;
}
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
#endif