Files
UnrealEngineUWP/Engine/Source/Runtime/OpenGLDrv/Private/OpenGLRenderTarget.cpp

1210 lines
42 KiB
C++
Raw Normal View History

// Copyright Epic Games, Inc. All Rights Reserved.
/*=============================================================================
OpenGLRenderTarget.cpp: OpenGL render target implementation.
=============================================================================*/
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 "CoreMinimal.h"
#include "HAL/IConsoleManager.h"
#include "RHI.h"
#include "OpenGLDrv.h"
#include "OpenGLDrvPrivate.h"
#include "RHICore.h"
// gDEBugger is currently very buggy. For example, it cannot show render buffers correctly and doesn't
// know what combined depth/stencil is. This define makes OpenGL render directly to textures and disables
// stencil. It results in broken post process effects, but allows to debug the rendering in gDEBugger.
//#define GDEBUGGER_MODE
#define ALL_SLICES uint32(0xffffffff)
Copying //UE4/Dev-Mobile to //UE4/Main (Source: //UE4/Dev-Mobile @ 2945914) ========================== MAJOR FEATURES + CHANGES ========================== Change 2911743 on 2016/03/16 by Allan.Bentham Fix broken tonemapper when using 32bpp encoded HDR. Fixes UE-28359 Cleaned up some ronin integration hacks from ronin. Change 2912053 on 2016/03/16 by Peter.Sauerbrei disable Vulkan in Win32 builds for now #codereview rolando.caloca #jira UE-28465 Change 2914512 on 2016/03/18 by Dmitriy.Dyomin Fixed crash on Nexus5 with Android 4.4.2 when TonemapperFilm is enabled Change 2914944 on 2016/03/18 by Allan.Bentham Fix es2 tonemap flip. Fixes UE-25148 Change 2915248 on 2016/03/18 by Chris.Babcock Updates to support NDK r11 #jira UE-28529 #ue4 #android Change 2919192 on 2016/03/22 by Chris.Babcock NDK level set above 19 forces minSdkVersion to 21 or above to prevent installing on unsupported devices #jira UE-28408 #ue4 #android #codereview Jack.Porter Change 2919591 on 2016/03/23 by Allan.Bentham Merge ronin's Gaussian DoF to 4.11's dof changes. Gaussian DoF will use a single recombine pass with ES31 devices or if no separate translucency is used on SM4+. Added permutation to exclude separate translucency from Gaussian recombine shader when not in use. #codereview martin.mittring Change 2920758 on 2016/03/24 by Dmitriy.Dyomin Fixed: shifting lighting samples octree https://udn.unrealengine.com/questions/276026/lighting-samples-visualization-not-working-with-le.html Change 2920793 on 2016/03/24 by Dmitriy.Dyomin Fixed: When sub-level set to be unloaded but with visbility state set to true, ULevelStreaming::IsStreamingStatePending returns wrong value #jira UE-26426 Change 2920981 on 2016/03/24 by Dmitriy.Dyomin GPU particles support for iOS Metal (A8+ only) #jira UE-11067 #jira UE-28514 #codereview Jack.Porter Change 2921383 on 2016/03/24 by Allan.Bentham Fix inverted image on device when framebuffer fetch/bViewRectSource is not used. #codereview jack.porter Change 2925694 on 2016/03/29 by Dmitriy.Dyomin Fixed: GPU particles and bloom on S7 Mali Change 2927065 on 2016/03/29 by Chris.Babcock Set the DT_SONAME field in linker (stops warning toast) #ue4 #android #codereview Jack.Porter Change 2927375 on 2016/03/30 by Jack.Porter Fixed localization for placement mode Cube, Sphere, Cylinder and Cone Change 2928643 on 2016/03/30 by Jack.Porter Fixed bug introdued by Ronin merge with DepthOfFieldScale setting being locked for BokehDOF #code_review: allan.bentham Change 2932773 on 2016/04/04 by Jack.Porter Reapply android Vulkan version fixes Change 2932853 on 2016/04/05 by Jack.Porter Enable VULKAN_CLEAR_SURFACE_ON_CREATE on Android to prevent assertion Change 2932998 on 2016/04/05 by Jack.Porter Native web browser widget on iOS #jira UEMOB-20 Change 2933420 on 2016/04/05 by Chris.Babcock Removed hard-coded bUseUnityBuild in UBT for Android (contributed by kosz78) #jira UE-29066 #pr #2236 #ue4 #android Change 2934315 on 2016/04/05 by Chris.Babcock Allow Android to act as server with OnlineSubsystemNull (contributed by psychogony) #jira UE-23937 #PR #1820 #ue4 #android #codereview Ryan.Gerleve Change 2935038 on 2016/04/06 by Chris.Babcock Fix OpenGLES31 compile error #ue4 #android #codereview Jack.Porter Change 2936288 on 2016/04/07 by Allan.Bentham Planar reflection captures for mobile. (UE-27426) Added mobile planar reflection flag to material. #codereview jack.porter, daniel.wright Change 2936297 on 2016/04/07 by Allan.Bentham Missed file. Planar reflection captures for mobile. (UE-27426) #codereview jack.porter, daniel.wright Change 2937763 on 2016/04/08 by Dmitriy.Dyomin Fix InstancedStaticMesh batches for ES2 (contributed by Grimmick) GitHub #2031 #jira UE-26576 #codereview Jack.Porter Change 2937863 on 2016/04/08 by Jack.Porter Merged Ronin CLs 2840392, 2860028 Allow vertex texture fetches on ES2 (requires absolute mip level) Change 2938461 on 2016/04/08 by Chris.Babcock Write Android uninstall batch files #ue4 #android Change 2939679 on 2016/04/11 by Allan.Bentham Remove bStationaryLightUsesCSMForMovableShadows from light component's UI. renamed proxy equivalent and infer its state from Inset Shadows For Movable Objects #codereview jack.porter, daniel.wright Change 2939887 on 2016/04/11 by Chris.Babcock Android ARM64 libraries #jira UEPLAT-1268 #ue4 #android Change 2940125 on 2016/04/11 by Chris.Babcock Added requirements to Arm64 and x86_64 tooltips Change 2941051 on 2016/04/12 by Allan.Bentham Fix for inverted RG channels when using filmic tonemapper with ES2. #codereview jack.porter Change 2942523 on 2016/04/13 by Chris.Babcock Add cxa_demangle build.cs instead of hiding dependency in UEBuildAndroid.cs #ue4 #android #codereview Josh.Adams Change 2942578 on 2016/04/13 by Chris.Babcock Add cxademangle dependency to Core for Android #ue4 #android #codereview Josh.Adams Change 2942997 on 2016/04/13 by Chris.Babcock Run Ant with -quiet first and run again without if there is an error for the log #ue4 #android #codereview Josh.Adams Change 2943320 on 2016/04/14 by Jack.Porter Fixed planar reflection merge errors Change 2943352 on 2016/04/14 by Jack.Porter Fix NAME_VULKAN_ES3_1_ANDROID shader format name #codereview: Rolando.Coloca Change 2943367 on 2016/04/14 by Dmitriy.Dyomin Added cvars to add or strip specific GL extensions from a driver reported extensions string #jira UE-29467 Change 2943425 on 2016/04/14 by Dmitriy.Dyomin Better logging of MobileHDR mode Change 2943461 on 2016/04/14 by Dmitriy.Dyomin Fixing HDR rendering and bloom on Galaxy S7 Change 2943493 on 2016/04/14 by Dmitriy.Dyomin Better HDR fix for devices with ES3 support Change 2943855 on 2016/04/14 by Allan.Bentham Mobile planar reflections. - currently only supports opaque materials #codereview jack.porter Change 2944721 on 2016/04/14 by Chris.Babcock Allow Vulkan-only Android builds #ue4 #android #codereview Allan.Bentham,Jack.Porter Change 2944771 on 2016/04/14 by Dmitriy.Dyomin Fixed: mesh particles crash in ES2 Change 2944827 on 2016/04/15 by Dmitriy.Dyomin Fixed: GPU particles not working on S6 with Android 6.0.1 Change 2944836 on 2016/04/15 by Jack.Porter Disable FX system calls in forward renderer when particles showflag is off Change 2944840 on 2016/04/15 by Jack.Porter Re-enabled non-radial TDeferredLightVS on ES2 for planar and put #if FEATURE_LEVEL >= FEATURE_LEVEL_SM4 around the radial shader code which was tripping up ES2. #codereview: Allan.Bentham, Chris.Babcock, Daniel.Wright Change 2944914 on 2016/04/15 by Jack.Porter Device profiles to detect Galaxy S7 Mali and Adreno variants in Vulkan mode Change 2945020 on 2016/04/15 by Gareth.Martin Cloning changes across from Dev-Landscape to Dev-Mobile due to feature deadline for 4.12. Change 2943560 on 2016/04/14 by Gareth.Martin Added ability to expand landscape bounds #jira UE-28928 #jira UE-25230 Change 2943538 on 2016/04/14 by Gareth.Martin Fix a crash with saving a level >2GB in size. There may still be other crashes with >2GB levels. Change 2943477 on 2016/04/14 by Gareth.Martin Fixed LODFalloff setting on landscape getting reset when using the "Change Landscape Component Size" tool Also moved all the LOD settings together in LandscapeProxy.h because it was messy Change 2942113 on 2016/04/13 by Gareth.Martin Updating comment to clarify behaviour of Foliage Align-To-Normal when Random-Yaw is disabled. Change 2941030 on 2016/04/12 by Gareth.Martin Cleanup and commenting Change 2940994 on 2016/04/12 by Gareth.Martin Implement random scale option for Landscape Grass. #jira UE-25743 Change 2940993 on 2016/04/12 by Gareth.Martin Remove unused BuildFlatTree function from HierarchicalInstancedStaticMeshComponent Change 2940150 on 2016/04/11 by Gareth.Martin Harden UHierarchicalInstancedStaticMeshComponent::UpdateInstanceTransform Change 2940101 on 2016/04/11 by Gareth.Martin Additional checks for bad static mesh when building the HISMC tree Change 2945560 on 2016/04/15 by Rolando.Caloca DM - Fix for newer Vulkan sdks Change 2945638 on 2016/04/15 by Chris.Babcock Fix permissions on uninstall script on Mac #jira UE-29236 #ue4 #android #lockdown Jack.Porter Change 2945856 on 2016/04/15 by Rolando.Caloca DM - vk - Fix mapped allocations on mobile #lockdown nick.penwarden [CL 2945995 by Chris Babcock in Main branch]
2016-04-15 18:19:26 -04:00
// GL_MAX_DRAW_BUFFERS value
GLint GMaxOpenGLDrawBuffers = 0;
/**
* Key used to map a set of unique render/depth stencil target combinations to
* a framebuffer resource
*/
class FOpenGLFramebufferKey
{
struct RenderTargetInfo
{
FOpenGLTexture* Texture;
GLuint Resource;
uint32 MipmapLevel;
uint32 ArrayIndex;
};
public:
FOpenGLFramebufferKey(
uint32 InNumRenderTargets,
FOpenGLTexture** InRenderTargets,
const uint32* InRenderTargetArrayIndices,
const uint32* InRenderTargetMipmapLevels,
FOpenGLTexture* InDepthStencilTarget,
EOpenGLCurrentContext InContext
)
: DepthStencilTarget(InDepthStencilTarget)
, Context(InContext)
{
uint32 RenderTargetIndex;
for( RenderTargetIndex = 0; RenderTargetIndex < InNumRenderTargets; ++RenderTargetIndex )
{
FMemory::Memzero(RenderTargets[RenderTargetIndex]); // since memcmp is used, we need to zero memory
RenderTargets[RenderTargetIndex].Texture = InRenderTargets[RenderTargetIndex];
RenderTargets[RenderTargetIndex].Resource = (InRenderTargets[RenderTargetIndex]) ? InRenderTargets[RenderTargetIndex]->GetResource() : 0;
RenderTargets[RenderTargetIndex].MipmapLevel = InRenderTargetMipmapLevels[RenderTargetIndex];
RenderTargets[RenderTargetIndex].ArrayIndex = (InRenderTargetArrayIndices == NULL || InRenderTargetArrayIndices[RenderTargetIndex] == -1) ? ALL_SLICES : InRenderTargetArrayIndices[RenderTargetIndex];
}
for( ; RenderTargetIndex < MaxSimultaneousRenderTargets; ++RenderTargetIndex )
{
FMemory::Memzero(RenderTargets[RenderTargetIndex]); // since memcmp is used, we need to zero memory
RenderTargets[RenderTargetIndex].ArrayIndex = ALL_SLICES;
}
}
/**
* Equality is based on render and depth stencil targets
* @param Other - instance to compare against
* @return true if equal
*/
friend bool operator ==(const FOpenGLFramebufferKey& A,const FOpenGLFramebufferKey& B)
{
return !FMemory::Memcmp(A.RenderTargets, B.RenderTargets, sizeof(A.RenderTargets) ) && A.DepthStencilTarget == B.DepthStencilTarget && A.Context == B.Context;
}
/**
* Get the hash for this type.
* @param Key - struct to hash
* @return uint32 hash based on type
*/
friend uint32 GetTypeHash(const FOpenGLFramebufferKey &Key)
{
return FCrc::MemCrc_DEPRECATED(Key.RenderTargets, sizeof(Key.RenderTargets)) ^ GetTypeHash(Key.DepthStencilTarget) ^ GetTypeHash(Key.Context);
}
const FOpenGLTexture* GetRenderTarget( int32 Index ) const { return RenderTargets[Index].Texture; }
const FOpenGLTexture* GetDepthStencilTarget( void ) const { return DepthStencilTarget; }
private:
RenderTargetInfo RenderTargets[MaxSimultaneousRenderTargets];
FOpenGLTexture* DepthStencilTarget;
EOpenGLCurrentContext Context;
};
typedef TMap<FOpenGLFramebufferKey,GLuint> FOpenGLFramebufferCache;
/** Lazily initialized framebuffer cache singleton. */
static FOpenGLFramebufferCache& GetOpenGLFramebufferCache()
{
static FOpenGLFramebufferCache OpenGLFramebufferCache;
return OpenGLFramebufferCache;
}
GLuint FOpenGLDynamicRHI::GetOpenGLFramebuffer(uint32 NumSimultaneousRenderTargets, FOpenGLTexture** RenderTargets, const uint32* ArrayIndices, const uint32* MipmapLevels, FOpenGLTexture* DepthStencilTarget)
{
VERIFY_GL_SCOPE();
check( NumSimultaneousRenderTargets <= MaxSimultaneousRenderTargets );
uint32 FramebufferRet = GetOpenGLFramebufferCache().FindRef(FOpenGLFramebufferKey(NumSimultaneousRenderTargets, RenderTargets, ArrayIndices, MipmapLevels, DepthStencilTarget, PlatformOpenGLCurrentContext(PlatformDevice)));
if( FramebufferRet > 0 )
{
// Found and is valid. We never store zero as a result, increasing all results by 1 to avoid range overlap.
return FramebufferRet-1;
}
// Check for rendering to screen back buffer.
if(0 < NumSimultaneousRenderTargets && RenderTargets[0] && RenderTargets[0]->GetResource() == GL_NONE)
{
// Use the default framebuffer (screen back/depth buffer)
return GL_NONE;
}
// Not found. Preparing new one.
GLuint Framebuffer;
glGenFramebuffers(1, &Framebuffer);
VERIFY_GL(glGenFramebuffer)
glBindFramebuffer(GL_FRAMEBUFFER, Framebuffer);
VERIFY_GL(glBindFramebuffer)
#if PLATFORM_ANDROID
Copying //UE4/Release-Staging-4.15 to //UE4/Dev-Main (Source: //UE4/Release-4.15 @ 3267632) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3267632 on 2017/01/23 by Jurre.deBaare Marker syncs not working correctly in Blend Spaces #fix Ensure that SampleIndexWithMarkers is serialized #JIRA UE-40975 Change 3266915 on 2017/01/20 by Arciel.Rekman Fix Persona crash on Linux (UE-38790). - Static template variable got instantiated into multiple DSOs; probably exacerbated by --as-needed since this does not happen without it. #jira UE-38790 Change 3266785 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Make usage of CachedUsers thread safe. Duplicates CL 3245390 #jira UE-40649 Change 3266762 on 2017/01/20 by Rolando.Caloca UE4.15 - Fix for reallocating scene color #jira UE-40633 Change 3266642 on 2017/01/20 by Lina.Halper Downgraded Warning to Info #jira: UE-40643 Change 3266532 on 2017/01/20 by Jeff.Campeau Fix multiplatform Windows includes defeating the safety check in MinWindows.h #jira UE-40778 #rn Fixed a compile warning on Xbox One when XboxOneMinApi.h was included before MinWindows.h. Change 3266523 on 2017/01/20 by Marc.Audy Fix case where child actor could avoid getting begin play call #jira UE-40960 Change 3266474 on 2017/01/20 by Peter.Sauerbrei fix for using an API not yet available in iOS 8 #jira UE-40698 Change 3266339 on 2017/01/20 by Frank.Fella Sequencer - Fix UI issues with multi-track section rows. + Don't show an empty sub-track when there are no sections. + Expand parent tracks by default. #Jira UE-40487 Change 3266283 on 2017/01/20 by Jeff.Fisher UE-40683 GearVR projects rendering black -Fix from Remi Palandri #jira UE-40683 #review-3265824 @nick.whiting @ryan.vance Change 3266264 on 2017/01/20 by Lina.Halper Downgraded warning and changed log message #jira: UE-40643 Change 3266239 on 2017/01/20 by Peter.Sauerbrei fix for virtual joystick not showing up on some devices #jira UE-40472 Change 3266084 on 2017/01/20 by Mitchell.Wilson Resaving level to have correct starting camera position. Saved in wrong position after fixing a bug. #jira UE-40887 Change 3266077 on 2017/01/20 by Matt.Kuhlenschmidt Fixed "Wait for Movies to Complete" flag being reversed #jira UE-40943 Change 3266076 on 2017/01/20 by Mitchell.Wilson Updating occulsion bounds method on P_spark_burst_2 so it is not occluded when spawned inside of the coin mesh in BP_Overview example. Updating some post process examples due to changes made with Post Process settings. Film and Scene Color are temporary fixes and are intended to be fully updated in 4.16 #jira UE-40830 UE-40887 Change 3266034 on 2017/01/20 by Benn.Gallagher Fixed crash when reimporting APEX destructibles from apb/x files caused by not allowing the renderer to flush destroy resource commands before emptying an array. #jira UE-40911 Change 3266027 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Fix CreateSession and FindSession each permanently failing after first failure. Duplicates CL 3262175 #jira UE-39110 Change 3265906 on 2017/01/20 by Marcus.Wassmer Fix GPU particle AFR flickering and optimize injection transfers. Duplicate CL's 3260302, 3261252, 3265662, 3265678 #jira UE-40915 Change 3265873 on 2017/01/20 by Mark.Satterthwaite Duplicate CL #3262535: Make sure to set rasterizer state when rendering with a material in FSlateRHIRenderingPolicy::DrawElements #jira UE-40842 Change 3265857 on 2017/01/20 by Jamie.Dale Fixed font pathing issue that could happen in an out-of-source packaged build #jira UE-40855 Change 3265675 on 2017/01/20 by Matt.Kuhlenschmidt Move Dirt Mask Intensity to the correct post process category #jira UE-40851 Change 3265674 on 2017/01/20 by Rolando.Caloca UE4.15 - Revert #jira UE-40633 Change 3265647 on 2017/01/20 by Mitchell.Wilson Updating spawn location of the player pawn after unpossessing character in example 1.10. #jira UE-40870 Change 3265612 on 2017/01/20 by Alexis.Matte Prevent name clash warning when doing automation test #jira UE-40788 Change 3265553 on 2017/01/20 by Matthew.Griffin Fixed Shadow variable warning Change 3265366 on 2017/01/20 by Dmitriy.Dyomin Fixed: Vulkan crashes on Adreno Galaxy S7 #jira UE-40840 Change 3265294 on 2017/01/19 by Dmitriy.Dyomin Fixed typo which was causing assert on mobile #jira UE-40633 Change 3265111 on 2017/01/19 by Rolando.Caloca UE4.15 - Fix for scene color crash #jira UE-40633 Change 3264789 on 2017/01/19 by Josh.Adams - Redoing a fix from Dev-Plat for UI_BUILD_SHIPPING_EDITOR #jira UE-40798 Change 3264780 on 2017/01/19 by Rolando.Caloca UE4.15 - Add Morph compute GPU stat #jira UE-40891 Change 3264486 on 2017/01/19 by Mark.Satterthwaite Fix the crash on startup on Intel GPUs - this is due to Intel Metal forcing SM4 to avoid some drivers bugs in SM5 but I got the condition for initialisation in FMinimalDummyForwardLightingResources wrong so it's attempting to create a RWBuffer for SM4 which won't work. #jira UE-40863 Change 3264427 on 2017/01/19 by Rolando.Caloca UE4.15 - Track down crash #jira UE-40633 Change 3264393 on 2017/01/19 by Aaron.McLeran #jira UE-40850 Re-fixing UE-39650 again in 4.15. I hope this bug doesn't regress yet again! Change 3264364 on 2017/01/19 by Daniel.Wright In forward shading SceneCaptureSource modes Normal and BaseColor are replaced with SceneColorHDR as the GBuffer is not available. This is a silent failure for now as there's no good content error reporting mechanism for scene captures. #jira UE-39658 Change 3264284 on 2017/01/19 by Mark.Satterthwaite Duplicate CL #3264251: Modify some asserts in MetalRHI - technically using a store-action of ENoAction on Stencil buffers should make it invalid to restart a render-pass but on Mac it will work because ENoAction won't invalidate anything written. In future we need to use deferred store-actions in Metal so that we can "restart" passes while enforcing correct Load/Store actions. #jira UE-40803 Change 3264282 on 2017/01/19 by Benn.Gallagher CIS fix, bad expression that failed to compile Mac #jira UE-40716 Change 3264257 on 2017/01/19 by Mike.Beach Revising fix in UBlueprint::BeginCacheForCookedPlatformData(), saving off nativization data if the -nativizeAssets param is present (not just if it was enabled in packaging settings). #jira UE-40620 Change 3264242 on 2017/01/19 by Daniel.Wright [Copy] Sharing IndirectLightingCacheTextureSampler samplers #jira UE-40727 Change 3264191 on 2017/01/19 by Ori.Cohen Fix heightfield not working with traces underneath. #JIRA UE-39819 Change 3264139 on 2017/01/19 by Benn.Gallagher Removed collision between clothing in external skeletal mesh components, as clothing simulations could already be in flight and editing collisions while the simulation is running is not supported by APEX #jira UE-40716 Change 3264110 on 2017/01/19 by Max.Preussner MfMedia: Disabled plug-in on Windows 10, because it is currently broken #jira UE-406344 Change 3264108 on 2017/01/19 by Max.Preussner MfMedia: Fixed compile errors on Windows 10 #jira UE-40644 Change 3264099 on 2017/01/19 by Jamie.Dale Adding deprecation warning for 4.14 style PO export #jira UE-40592 Change 3264089 on 2017/01/19 by Matthew.Griffin Reworked DDC commandlet to make sure it actually calls BeginCacheForCookedPlatformData on assets Skip doing this for Engine content if -ProjectOnly is set as that takes a long time and isn't necessary for the way we use it #jira UE-39968 Change 3264065 on 2017/01/19 by James.Golding Fix ModifyCurve node not calling init/update in SourcePose #jira UE-40852 Change 3263729 on 2017/01/19 by Alexis.Matte Fix a bad condition when filling the material sorting array #jira UE-40814 Change 3263704 on 2017/01/19 by Jack.Porter Fix compile error in AndroidESDeferredOpenGL.cpp when " ES Deferred Shading Renderer" is enabled. #jira UE-40659 Change 3263627 on 2017/01/19 by Jack.Porter Fixed black textures when Vulkan is packaged for ETC1 #jira UE-40658 Change 3263554 on 2017/01/19 by Jack.Porter Fixes to HISMC LOD to use new screen size calculation. Solves issue where HISMC was always rendered at lowest LOD. #jira UE-38930 Change 3263535 on 2017/01/19 by Matthew.Griffin Removed unnecessary directories to always cook Problem was actually down to string asset references not being resolved in file set generation Change 3263534 on 2017/01/19 by Matthew.Griffin Added -SkipPublish parameter to BuildLauncherSample command so that we don't chunk and post preflights Change 3263267 on 2017/01/18 by Dan.Oconnor Fix for editing of TMap/TSet variables in structure editor, async tasks, and when using UK2Node_CommutativeAssociativeBinaryOperator. #jira UE-40428 Change 3263219 on 2017/01/18 by Dan.Oconnor Fix copy paste error found by UDN user Craig.Wright that could result in fatal bytecode execution #jira UE-19425 Change 3262980 on 2017/01/18 by Maciej.Mroz #jira UE-40394, UE-40395, UE-40426, UE-40484, UE-40770 Integrated cl 3262851, 3261613, 3260908 from Dev-Blueprint Change 3262908 on 2017/01/18 by Ori.Cohen When refreshing physics assets, don't do so on components that have no bodies. #JIRA UE-40764 Change 3262709 on 2017/01/18 by Matt.Kuhlenschmidt Fix a crash if a background blur widget ends up being negative or zero sized #jira UE-40820 Change 3262606 on 2017/01/18 by Marc.Audy Don't bother the user with force feedback based on where the unpossessed pawn is standing in the world while in simulate mode #jira UE-40785 Change 3262416 on 2017/01/18 by Marc.Audy Reenable audio threading #jira UE-00000 Change 3262125 on 2017/01/18 by Chris.Wood Fixed unnecessary truncate in SMenuAnchor::Tick that caused menu placement to wobble [UE-40293] - Dropdown selection box jitters when mouse is moved over top of it on Mac #jira UE-40293 Change 3262103 on 2017/01/18 by Jamie.Dale Merging some cooker fixes CL# 3262089 - Fixing RedirectCollector issues with projects outside the UE4 directory CL# 3262091 - Guarding against potentially invalid call to FString::Mid CL# 3262094 - Cook on the fly builds now resolve string asset references #jira UE-40790 Change 3262082 on 2017/01/18 by Chris.Bunner Accumulate used particle materials from final mesh material module, not first. #jira UE-39953 Change 3261996 on 2017/01/18 by Matthew.Griffin Allow Samples to be built in pre-flights if you are specifying an engine version Change 3261995 on 2017/01/18 by Matthew.Griffin Resolve string asset references after loading packages to ensure that we find all required files Change 3261934 on 2017/01/18 by Allan.Bentham Bump shader version to force changes in 3260307 to occur. #jira UE-39701 Change 3261842 on 2017/01/18 by Graeme.Thornton Manual copy of CL 3253580 from Dev-Core Added some validation of the class index in exportmap entries #jira UE-37873 Change 3261017 on 2017/01/17 by Mitchell.Wilson Resaving all levels to resolve short form string asset reference warnings. #jira UE-40732 Change 3260918 on 2017/01/17 by Andrew.Rodham Sequencer: Request unloaded levels to be loaded when being made visible through sequencer #jira UE-40082 Change 3260909 on 2017/01/17 by Ben.Marsh Fix error running "Clean" in installed build. #jira UE-40751 Change 3260757 on 2017/01/17 by Jeff.Fisher UE-39654 Crash when launching Google VR project -Via SwitchGameWindowToUseGameViewport we get an early ResizeViewport which does an early Draw. This calls GetStereoProjectionMatrix before the game has ticked and fetched the device info we use to build that matrix. -In this change we make the call to setup that information in the GoogleVRHMD constructor, to ensure it is done before anything tries to use it. -I also added some asserts. #jira UE-39654 #review-3260644 Change 3260637 on 2017/01/17 by Alexis.Matte Fix crash when importing skeletal mesh containing a texture or a material using the same name. #jira UE-40538 Change 3260630 on 2017/01/17 by Marc.Audy When installing a feature pack maintain the include of the template so that any properties inside it are not lost by replacing it with the project's PCH include Update all C++ feature packs to include the original project .h in the files that are copied in to the new project #jira UE-40730 Change 3260600 on 2017/01/17 by matt.barnes Test content for sequencer event tracks #jira UE-29618 Change 3260593 on 2017/01/17 by Mieszko.Zielinski Made FSupportedAreaData export as part of engine API #UE4 #jira UE-40739 Change 3260538 on 2017/01/17 by Marc.Audy Always display axes in debug info, but show -- for value when we don't yet know the ranges #jira UE-40700 Change 3260422 on 2017/01/17 by Marc.Audy Expose level streaming incremental unregister component cvars in the engine streaming section of the project settings #jira UE-10109 Change 3260392 on 2017/01/17 by Ben.Woodhouse Duplicated from CL 3260107: Fix FMonitoredProcess to prevent infinite loop in -nothreading mode #jira UE-40717 Change 3260358 on 2017/01/17 by Chris.Bunner Only validate tonemapper LUT input if actually hooked up. #jira UE-40467 Change 3260327 on 2017/01/17 by Frank.Fella PlatformMediaSource - Fix Validate to check all specified media sources, and change GetURL to get the url for the current platform when running uncooked. #jira UE-40709 Change 3260307 on 2017/01/17 by Allan.Bentham Restore metal compiler's shader source serialization code when the shader is to be compiled at runtime. #jira UE-39701 Change 3260276 on 2017/01/17 by Alex.Delesky #jira UE-40276 - Fixing an issue where a Standalone game launched from the editor cannot toggle fullscreen mode. Change 3260274 on 2017/01/17 by Chris.Wood Added check for null World ptr in AActor::PostEditChangeProperty to fix crash when pasting temporary Actors [UE-40492] - Crash after ejecting from PIE session and selecting a component in the details panel #jira UE-40492 Change 3260230 on 2017/01/17 by Ben.Woodhouse Duplicated from dev-rendering@3232283 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 3260096 on 2017/01/17 by Thomas.Sarkanen Fixed crash when rendering out a level sequence with layered animations When a level contained sequences with layered animations that *werent* taking part in the render (i.e. they were not part of the current master sequence) then their instances were initialized but not ticked. When their components then got a call to evaluate their bone transforms, the cached blends were in an uninitialized state. #jira UE-40654 - Render Movie using separate process crashes capture process Change 3259875 on 2017/01/17 by Dmitriy.Dyomin Fixed: SunTemple is washed out in one color on some Android devices #jira UE-40689 Change 3259011 on 2017/01/16 by Max.Chen Matinee to Level Sequence: Make RegisterTrackConverters pure virtual #jira UE-37328 Change 3258992 on 2017/01/16 by Rolando.Caloca UE4.15 - Integrate fix for outlines (3258807) #jira UE-40690 Change 3258949 on 2017/01/16 by mason.seay Disabled TranslatedMass test #jira UE-29618 Change 3258860 on 2017/01/16 by Max.Preussner Media: Prevent loading of media plug-ins in console apps, such as game servers (OR-34819) #jira OR-34819 Change 3258846 on 2017/01/16 by Max.Preussner MfMedia: Fixed incorrect tracks being played in multi-track media sources (UE-39703) #jira UE-39703 Change 3258813 on 2017/01/16 by Benn.Gallagher Added error on import for APEX clothing files that either have no submeshes or have no submeshes with simulated vertices. #jira UE-40614 Change 3258771 on 2017/01/16 by James.Golding Skip fatal warning in UBodySetup::Serialize if duplicating (e.g. spawning component via SCS with a BodySetup in its template) #jira UE-40418 Change 3258747 on 2017/01/16 by Max.Chen Sequencer: AddUnique SequencerActorTag to prevent multiple tags being added when spawning/despawning. #jira UE-40665 Change 3258630 on 2017/01/16 by Jurre.deBaare CIS IfDef issue fix #JIRA UE-1234 Change 3258541 on 2017/01/16 by Phillip.Kavan [UE-40131] Revised fix that will work for "inclusive" BP nativization with data-only BPs. change summary: - revised code in UBlueprint::BeginCacheForCookedPlatformData() to also support the "inclusive" nativization method #jira UE-40131 Change 3258532 on 2017/01/16 by Max.Chen Sequencer: Fix max row index off by one error . This was always incorrect, but it was masked by the fact that FixRowIndices() was called on the track when the UI gets built. That function was removed from the node layer in CL #3252753 and therefore exposed this bug. #jira UE-40642 Change 3258505 on 2017/01/16 by Marc.Audy Improve messaging when installing vehicle and vehicle adv C++ feature packs #jira UE-40647 Change 3258478 on 2017/01/16 by Matt.Kuhlenschmidt PR #3131: UE-40567: Added nullcheck to FSplinePointDetails (Contributed by projectgheist) #jira UE-40567 Change 3258457 on 2017/01/16 by Jurre.deBaare SpeedTree Billboards rendering with Incorrect Material #fix Ensure that we add a section info entry for the billboard models/lods during SpeedTree importing #jira UE-39677 Change 3258442 on 2017/01/16 by Alexis.Matte Skeletalmesh import, make sure we increment the lod index when animation is not imported #jira UE-40640 Change 3258431 on 2017/01/16 by Jurre.deBaare Back out changelist 3258392 #fix issue was already resolved #jira UE-1234 Change 3258392 on 2017/01/16 by Jurre.deBaare Fix for non-unity CIS #JIRA UE-1234 Change 3258358 on 2017/01/16 by Matthew.Griffin Prevent warning from being shown when XMPP module is not built #jira UE-40616 (I guess LoadModule could be changed to LoadModuleChecked now if they do exist) Change 3258144 on 2017/01/15 by Marc.Audy Fix non-unity CIS errors #jira UE-00000 Change 3258141 on 2017/01/15 by zachary.wilson Adding testing content for Distance Field Indirect Shadows #jira UE-29618 Change 3258049 on 2017/01/14 by Nick.Shin UFE sent incorrect header data on missing file also, it seems that UFE was written to expect clients to close the connection -- (this should be closed manually -- which will flush the data and then close out the socket -- but, since this is a developer tool... leaving this as-is) first, 404 was not sending the required double newline after headers second, since connection are not closed manually (server side) send a dummy payload with content-length data #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3257984 on 2017/01/14 by Aaron.McLeran Attempting another fix for static analysis warning in CIS #jira UE-40645 Change 3257904 on 2017/01/14 by Aaron.McLeran Resolving static analysis warnings reported by CIS #jira UE-40645 Change 3257883 on 2017/01/14 by Aaron.McLeran Fixing build warning with CL 3257826 #jira UE-40645 Change 3257826 on 2017/01/13 by Aaron.McLeran Integrating fixes from Dev-Framework and Odin to Release-415 #jira UE-40645 Change 3257654 on 2017/01/13 by Marc.Audy Until plugins can drive their own dependencies vehicle and vehicle adv feature packs will not compile automatically and will pop up a message log informing the user of the actions they need to manually take. #jira UE-40466 Change 3257608 on 2017/01/13 by John.Pollard PC: Assertion Fail with UPackageMapClient::AddNetFieldExportGroup() viewing replays #jira OR-34522 Change 3257489 on 2017/01/13 by Mitchell.Wilson Removing preview mesh from multiple materials to resolve CIS warnings. #jira UE-40628 Change 3257485 on 2017/01/13 by Chris.Babcock Don't initialize FMinimalDummyForwardLightingResources for unneeded feature levels (below SM4) #jira UE-40602 #ue4 #android Change 3257444 on 2017/01/13 by Matt.Barnes Updating test assets for UEQATC-2967 #jira UE-29618 Change 3257324 on 2017/01/13 by Arciel.Rekman Linux: Update runtime CEF lib as well (UE-401413). - Followup to CL 3256081. #jira UE-40413 (Merging CL 3257241 from Dev-Platform to Release-4.15) Change 3257140 on 2017/01/13 by Lina.Halper Fix crash with deleting all poses #jira: UE-40537 Change 3257066 on 2017/01/13 by Jurre.deBaare CIS fix for game builds #jira UE-1234 Change 3257056 on 2017/01/13 by Ben.Zeigler #jira UE-40318 Fix crash in streamablemanager where callbacks would get called on a deleted manager. This is being rewritten in 4.16, so do a quick fix for 4.15 to avoid the crash Change 3256839 on 2017/01/13 by Jurre.deBaare Added conversion of HLOD transition screen size to new transition screen area values #fix During serialization patch up the values of transition screen size within the hierarchical lod setups #misc Updated the default value to a screen size to screen area equivalent #JIRA UE-40518 Change 3256761 on 2017/01/13 by Mieszko.Zielinski Fixed EQS debug rendering not clearing previously displayed labels if new request has no labels #UE4 #jira UE-40589 Change 3256177 on 2017/01/12 by Josh.Adams - Moved the MfMedia plugin outside of XboxOne directory, because it's a Windows plugin as well (that happens to also work on XboxOne - all public APIs) #jira UE-40391 Change 3256131 on 2017/01/12 by Jamie.Dale Fixing log spam when trying to load an empty font data #jira UE-40555 Change 3256081 on 2017/01/12 by Arciel.Rekman Fixed CEF compatibility problems on Ubuntu 14.04 (UE-40413). - Also deleted Debug version of it. - Change by yaakuro. #jira UE-40413 (Edigrating CL 3256065 from Dev-Platform to Release-4.15) Change 3256046 on 2017/01/12 by Jon.Nabozny Use PxConvexFlag::eSHIFT_VERTICES when cooking meshes to fix baked in transforms. #jira UE-39212 Change 3255939 on 2017/01/12 by mason.seay Rebuilt lighting #jira UE-29618 Change 3255912 on 2017/01/12 by Olaf.Piesche Replicating fix from 3246828 for #jira UE-39249 Change 3255909 on 2017/01/12 by Rolando.Caloca UE4.15 - Support for choosing discrete AMD GPU #jira UE-40546 Change 3255835 on 2017/01/12 by Martin.Wilson Fix newly added virtual bones not being on screen. #jira UE-40516 Change 3255774 on 2017/01/12 by Mark.Satterthwaite Merging 3251926 for Richard.Wallis: #jira UE-38828 Crash after Enabling Forward Shading on Mac and Creating/Editing Materials. Using TGlobalResource to avoid constant resource allocation. Prev fix (in CL 3239454) caused a crash in D3D11 with zero sized resource views. Change 3255771 on 2017/01/12 by Alexis.Matte Fix a crash when re-importing asset with no material #jira UE-40510 Change 3255746 on 2017/01/12 by Jon.Nabozny Change _DEBUG to PX_DEBUG in ConvexHullLib.cpp #jira UE-0000 Change 3255659 on 2017/01/12 by Jon.Nabozny Enable Shifting Vertices during Convex Hull cooking to prevent precision issues. (Copied CL-3249100 from Dev-Phyics-Upgrade to support new flag) #jira UE-39212 Change 3255617 on 2017/01/12 by Ori.Cohen Fix crash when computing mass for an async object. Using passed in rigid body instead of assuming SyncRigidActor #JIRA UE-40458 Change 3255536 on 2017/01/12 by Jamie.Dale Fixed crash when using an object picker against the 'Object' type This also optimizes some filter code to avoid filtering when it would be pointless (and just slows things down). #jira UE-40408 Change 3255451 on 2017/01/12 by Chris.Wood Fixed read only text color in SCommentBubble [UE-40384] - Reference Viewer comment text is difficult to read Also changed DetermineForegroundColor() method in EditableTextBox classes to fallback on ForegroundColorOverride if it is set and ReadOnlyForegroundColorOverride isn't set. #jira UE-40384 Change 3255448 on 2017/01/12 by Chris.Wood Removed blinking cursor/caret on read only editable text layouts. [UE-40502] - Flashing cursor/caret showing in read-only editable text layouts #jira UE-40502 Change 3255445 on 2017/01/12 by Marc.Audy Create the dynamic level streaming persistent object correctly outered to the World rather than the transient package to avoid GetWorld() crashing #jira UE-00000 Change 3255441 on 2017/01/12 by Jon.Nabozny Regenerate collision for the basic Cube mesh to fix resting issues and invalid verts. #jira UE-40478 Change 3255407 on 2017/01/12 by Yannick.Lange VREditor: - Fix: Assertion Failed crash after pressing F8 in PIE while Foliage Mode was selected - Fix: Assertion Failed crash after pressing F8 in PIE while Paint Mode was selected - Added extra checks for other possible future cases #jira UE-39786 UE-39789 Change 3255393 on 2017/01/12 by Chris.Bunner Duplicating CL 3255244: Removed test variable from MaterialExpressionVectorParameter. #jira UE-40517 Change 3255375 on 2017/01/12 by Steve.Robb CIS fix. #jira UE-39556 Change 3255334 on 2017/01/12 by samuel.proctor Corrected QA Container asset to remove pin warning. #jira UE-29618 Change 3255319 on 2017/01/12 by james.cobbett Fixing motion blur issue with test content for Pose Snapshots. #jira UE-29618 Change 3255247 on 2017/01/12 by Nick.Darnell Slate - Slate's Tab Manager is now a bit smarter about allowing Focus/BringToFront attention grabbing methods. In order to make the UI less jumpy it was restricted to only allowing alerts and bring to front to be triggered if you were on the window, or child window of the active application window. That can negatively impact cases where a user takes an action (clicks a link ro button saying open/goto this tab), that is on another window. To work around this limitation, the Tab Manager will also permit the action if Slate is currently processing user input, implying that the action being taken is in direct response to the user pressing a button and interacting with the UI. #jira UE-40313 Change 3255236 on 2017/01/12 by Phillip.Kavan [UE-40131] Non-native child BPs can now properly override a nativized parent BP's components in a cooked build with exclusive Blueprint class nativiation. - Mirrored from //UE4/Dev-Blueprints (CL# 3254024,3254391) #jira UE-40131 Change 3255216 on 2017/01/12 by Rolando.Caloca UE4.15 - Fix compile issue on Vulkan 1.0.37.0 or newer #jira UE-40506 Change 3255206 on 2017/01/12 by Steve.Robb Use outer walking IsA() implementation in editor to get around reinstancing and hot reload issues. #fyi mike.beach #jira UE-39556 Change 3255195 on 2017/01/12 by mason.seay Adjusted slope to fix platform discrepancy #jira UE-29618 Change 3255086 on 2017/01/12 by Jack.Porter Fix XboxOneShaderCompiler.cpp non-unity compilation #jira None Change 3255085 on 2017/01/12 by Jack.Porter Missing HTML5 changes from CL 3254907 #jira UE-39111 Change 3255031 on 2017/01/12 by Jack.Porter More iOS GoogleVR changes missing from CL 3254907 #jira UE-39111 Change 3254991 on 2017/01/12 by Jack.Porter Missing file from CL 3254907 #jira UE-39111 Change 3254907 on 2017/01/11 by Jack.Porter Android MSAA changes - use r.MobileMSAA cvar, support more than 2x, fix issues where targets other than scene color were created with MSAA #jira UE-39111 #jira UE-35849 #jira UEMOB-35 Change 3254810 on 2017/01/11 by Arciel.Rekman Linux: fix for crash on exit (UE-40488). #jira UE-40488 Change 3254617 on 2017/01/11 by Peter.Sauerbrei remake the fix for missing PhysXVehicle library in binary for IOS and TVOS #jira UE-39349 Change 3254489 on 2017/01/11 by mason.seay Other minor improvements to the map #jira UE-29618 Change 3254477 on 2017/01/11 by mason.seay Map tweaks to prevent the vehicle from getting stuck #jira UE-29618 Change 3254431 on 2017/01/11 by Mitchell.Wilson Rebuilt lighting on all StarterContent levels. #jira UE-40468 Change 3254333 on 2017/01/11 by mason.seay Adjusted lightmap on mesh to remove odd rendering splotches #jira UE-29618 Change 3254131 on 2017/01/11 by Rolando.Caloca UE4.15 - Missing dumped shaders #jira UE-40465 Change 3254126 on 2017/01/11 by Jeff.Fisher UE-40422 Vive Motion Controllers unable to Play Haptic Effect -Removed an unnecessary remapping of controllerindex to deviceid, they are the same now. #jira UE-40422 #review-3254084 Change 3254046 on 2017/01/11 by Mark.Satterthwaite Merging 3233811: 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. #jira UE-39935 Change 3254021 on 2017/01/11 by james.cobbett Test content for Pose Snapshot testing #jira UE-29618 Change 3253993 on 2017/01/11 by Alexis.Matte Fix the morph target import #jira UE-40424 Change 3253948 on 2017/01/11 by mason.seay Fixed Level BP logic that was causing Access None error #jira UE-29618 Change 3253884 on 2017/01/11 by mason.seay Updated mesh colors on map. Disabled motion blur #jira UE-29618 Change 3253862 on 2017/01/11 by mason.seay Disabled Always Show Mobile Input (turned on by accident) #jira UE-29618 Change 3253859 on 2017/01/11 by Mark.Satterthwaite Merging 3252866: Fix Metal shader pipeline hash collisions caused by deferring MTLFunction construction until PrepareToDraw so that we may use Function-Constants to specialise the shader source without generating additional permutations. This is required to generate proper tessellation shaders which are specialised against the index-buffer usage & type (none, uint16, uint32). While we're here amend the hash functions to make better use of the existing hash functions to improve the distribution and hopefully reduce the possibility of collisions in future. #jira UE-40357 Change 3253854 on 2017/01/11 by Mark.Satterthwaite Merging 3252859: Fix the calculation of Metal tessellation struct alignment and size to use largest member size, so that we don't assert in debug or cause out-of-bounds access in development/shipping. #jira UE-40410 Change 3253853 on 2017/01/11 by Mark.Satterthwaite Merging 3237394: 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 3253852 on 2017/01/11 by Mark.Satterthwaite Merging 3236850: Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3253834 on 2017/01/11 by mason.seay Updated mobile input textures to be power of two #jira UE-29618 Change 3253807 on 2017/01/11 by Mark.Satterthwaite Merging 3232641 & 3236788 & 3233854 & 3249742 from Dev-Rendering: 3232641: - 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. 3236788: 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. 3233854: More information about texture type validation errors in Metal. 3249742: 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. #jira UE-40200 Change 3253636 on 2017/01/11 by Chris.Wood Improved tracking of runtime and debugger attachment for analytics purposes. [UE-39780] - Change IsDebugger to WasDebuggerPresent in all crash/AS analytics [UE-39777] - Update MTBF IsDebugger state for every heartbeat [UE-39778] - UnrealWatchdog to send WasDebuggerPresent state for app if set [UE-39779] - UnrealWatchdog to send total run time of process Debugger state was previously read once at startup or once at the time of an event. Debugger is now checked during the heartbeat and doesn't reset flag when detached so we know if a session was ever debugged. Also reporting total run time in UnrealWatchdog. Watchdog still doesn't run when debugging but and will never show popups to a debugger user even when forced on with -forcewatchdog. #jira UE-39780, UE-39777, UE-39778, UE-39779 Change 3253281 on 2017/01/10 by Dan.Oconnor Typo fix caused parameter in local struct definition to shadow the local #jira UE-40027 Change 3253231 on 2017/01/10 by Dan.Oconnor Mirror of 3253220 These pins should infer together #jira UE-40427 Change 3253125 on 2017/01/10 by Uriel.Doyon Brought back CL 3242117 and 3238685, which got lost on the way: - Fix for possiblel check fail when changin mobility of actors. - Fix for possible check fail when processing streaming data. #jira UE-39996 Change 3252936 on 2017/01/10 by Marc.Audy CopyPropertiesForUnrelatedObjects needs to consider path not just name of subobjects when matching them up to copy properties and update references Ensure that a reinstanced child actor component ends up pointing at the correct child actor template #jira UE-40027 Change 3252886 on 2017/01/10 by Lina.Halper Fix for invalid AnimCurves when curve is added while running #jira: UE-39826 Change 3252753 on 2017/01/10 by Frank.Fella Sequencer - Change track rows to use separate track nodes in the display node tree, fixes key edit issues on animation and audio tracks. #jira UE-39836 Change 3252640 on 2017/01/10 by Lukasz.Furman fixed NavCollision losing user settings after any property change copy of 3252628 #jira UE-40388 Change 3252614 on 2017/01/10 by Daniel.Wright UStaticMeshComponent::InvalidateLightingCacheDetailed uses MarkRenderStateDirty. Massively speeds up duplication of HISMC with many instances (10+ minutes -> seconds), as InvalidateLightingCacheDetailed gets called for every instance. #jira UE-40406 Change 3252609 on 2017/01/10 by mason.seay Updated map with text actors for more visual clarity #jira UE-29618 Change 3252477 on 2017/01/10 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios #jira UE-39852 Change 3252451 on 2017/01/10 by Daniel.Wright Garbage collection calls UWorld>SendAllEndOfFrameUpdates() on all loaded worlds first so that deferred recreate render states happen before any UObjects are deleted * Fixes rendering thread crashes in the order of events of 1) SetMaterial 2) GC 3) Rendering command that dereferences the UMaterial #jira UE-30089 Change 3252418 on 2017/01/10 by Ben.Zeigler #jira UE-40390 Fix crash saving blueprint with an inherited DataTable/CurveTable reference. Delta serialization meant that the necessary name wasn't in the name table, so adding it manually now. Change 3252410 on 2017/01/10 by Max.Chen Sequencer : Filter sections on select in range Copy from Dev-Sequencer #jira UE-37854 Change 3252385 on 2017/01/10 by Max.Chen Sequencer: Update auto tangents when setting key time. This fixes a bug where dragging keys with auto tangents doesn't recompute tangents properly. #jira UE-39923 Change 3252360 on 2017/01/10 by Allan.Bentham Remove incorrect assert for iOS. #jira UE-40385 Change 3252297 on 2017/01/10 by mason.seay Test assets for suspending cloth simulation #jira UE-29618 Change 3252125 on 2017/01/10 by Mieszko.Zielinski Fallout fix after removal of BlackboardKeyUtils::CalculateComparisonResult declaration from the AIModule #UE4 #jira UE-40099 Change 3251987 on 2017/01/10 by Allan.Bentham Fix HQ DoF #jira UE-35548 Change 3251856 on 2017/01/10 by Jack.Porter Fixed Get Instances Overlapping Box blueprint function due to issue with FBox constructor. Added MakeBox and MakeBox2D kismet native functions Fixed box overlap test ignoring instance scale #jira UE-34409 Change 3251519 on 2017/01/09 by Daniel.Wright [Copy] Fixed GLandscapeLayerUsageMaterial getting GC'ed #jira UE-40055 Change 3251146 on 2017/01/09 by Lina.Halper Fix on stable track data carrying over to pose asset - decided to clean up track data in anim sequence since we don't really need that data anymore #jira: UE-40351 #code review: Martin.Wilson Change 3251056 on 2017/01/09 by Lina.Halper fixed crash when pose node contains stale data when updating source. #jira: UE-40258 #code review; Thomas.Sarkanen Change 3251035 on 2017/01/09 by Mitchell.Wilson Removed preview mesh in M_GodRay to resolve CIS warning. Relinked textures used in two materials to resolve CIS warnings. #jira UE-40350 Change 3250959 on 2017/01/09 by Mitchell.Wilson Updating master sequence playback end time so the final audio track can be heard. Updating multiple shots to resolve issues with audio not playing back properly. #jira UE-40321 UE-40335 Change 3250896 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed level visibility not working in PIE #jira UE-40082 Change 3250895 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed evaluation of overlapping audio and skeletal aninmation sections - Audio and skeletal animation sections now continue to support legacy evaluation order. Overlapping sections of the same priority on the same row will be filtered out such that only the section with the latest start time will be evaluated. #jira UE-40320 Change 3250830 on 2017/01/09 by Ben.Woodhouse Duplicated from //ue4/Release-4.14 CL 3238182 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. #jira UE-38818 Change 3250790 on 2017/01/09 by Lauren.Ridge Fixing backspace on VR Editor numberpad menu. #jira UE-39770 Change 3250681 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@3249296: 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 3250680 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@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 #jira UE-39949 Change 3250609 on 2017/01/09 by Steve.Robb Maximum number of stats-using threads increased to 512. #jira UE-38153 Change 3250604 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed incorrect seed being used when generating new animation type IDs for object properties #jira UE-40327 Change 3250589 on 2017/01/09 by Matthew.Griffin Changed publish symbols node to use runtime dependencies instead of manually including the whole PhysX folder Avoids unused configs and VS2013 files #jira UE-39171 Change 3250578 on 2017/01/09 by Matthew.Griffin Removed art tools from released build now that they are available separately on the Marketplace Change 3250282 on 2017/01/07 by Mieszko.Zielinski Fixed UNavigationSystem::bNavigationAutoUpdateEnabled getting ignored by recent addition to related condition in UNavigationSystem #UE4 Reported by UT team. Replication of a fix from Dev-Framework that didn't make it to 4.15 stream #jira UE-40324 Change 3250276 on 2017/01/07 by Mieszko.Zielinski Fixed not being able to add elements to UAIPerceptionStimuliSourceComponent.RegisterAsSourceForSenses for instances manually placed on the map #UE4 #jira UE-31711 Change 3250219 on 2017/01/07 by Mieszko.Zielinski Extended comment to AISenseConfig_Sight::PeripheralVisionAngleDegrees to make it clear how it works #UE4 #jira UE-31731 Change 3250147 on 2017/01/07 by Andrew.Rodham Added missing includes #jira UE-40019 Change 3250096 on 2017/01/06 by Nick.Shin refetch on timed out GET/POST requests correction to: UE_MakeHTTPDataRequest #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3249963 on 2017/01/06 by Mieszko.Zielinski removed unused and undefined BlackboardKeyUtils::CalculateComparisonResult #UE4 #jira UE-40099 Change 3249829 on 2017/01/06 by Alexis.Matte turn on the material name clash feature for the content browser importer. #jira UE-40298 Change 3249791 on 2017/01/06 by andrew.porter QAGame: Added level blueprint logic to QA-Sequencer that lets tester override sequence bindings #jira UE-29618 Change 3249755 on 2017/01/06 by Jamie.Dale Some fixes for object reference detection and notification when deleting assets #jira UE-40121 Change 3249727 on 2017/01/06 by James.Golding #jira UE-40242 Change 3249707 on 2017/01/06 by Mitchell.Wilson Removing preview mesh with incorrect path from materials to resolve warnings in CIS. #jira UE-40311 Change 3249543 on 2017/01/06 by Michael.Dupuis #jira UE-40299: validate if UISettings is valid Change 3249506 on 2017/01/06 by Alexis.Matte Make sure we use the correct LodIndex when importing a new LOD in case a previous LOD import fail. #jira UE-40240 Change 3249477 on 2017/01/06 by Ori.Cohen Fix incorrect warning when moving kinematic objects during simulation. #JIRA UE-40290 Change 3249472 on 2017/01/06 by Andrew.Rodham Sequencer: Undo now works as expected when editing the properties of a key #jira UE-40019 Change 3249390 on 2017/01/06 by Mitchell.Wilson Removing preview meshes with improper path from materials to resolve CIS warnings in landscape mountains sample. #jira UE-40300 Change 3249317 on 2017/01/06 by Alexis.Matte Fix a crash when loading skeletalmesh with no section #jira UE-40249 Change 3249294 on 2017/01/06 by Mitchell.Wilson Updated defaultengine.ini for Match 3 to resolve warnings in CIS. ServerDefaultMap and TransitionMap had invalid paths. #jira UE-40295 Change 3249213 on 2017/01/06 by Chris.Bunner Fixed up logic for windowed/fullscreen output display selection when working with HDR. Now selects the most appropriate display if HDR enabled, else current monitor window is on. FullscreenDisplay commandline functions regardless of HDR support. #jira OR-33525, OR-33536, OR-33540, OR-33520 Change 3249135 on 2017/01/06 by Martin.Wilson Fix root motion issues on additive animations. - Fix scale issue on resetting root bone - Fix loss of root motion when animation is additive. #jira UE-40232 Change 3248522 on 2017/01/05 by Alexis.Matte Fix a crash when reimporting morph target. Also fix a crash when initiating ColorVertexBuffer with NULL value #jira UE-40201 Change 3248271 on 2017/01/05 by Andrew.Rodham Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence #jira UE-40234 Change 3248092 on 2017/01/05 by Ben.Marsh UBT: Remove the [Obsolete] attribute from methods in TargetRules; the [ObsoleteOverride] attribute gives a much better (and more concise) warning with specific instructions on how to resolve it. Change 3248091 on 2017/01/05 by Marcus.Wassmer Tick renderthreadtickables in -onethread to avoid leaks. #jira UE-40248 Change 3248063 on 2017/01/05 by Marc.Audy Route FAudioDevice::StopAllSounds to the audio thread if called on the game thread #jira UE-40243 Change 3247995 on 2017/01/05 by Maciej.Mroz NativizationSummary object is always present. manually merged cl#3247985 from Dev-Blueprints #jira UE-40035 Change 3247873 on 2017/01/05 by Chad.Garyet Adding "Generate QA Labels" buildgraph node and automation script. Port of createNewLabel and createMinimumLabel python scripts into UAT #jira UEB-725 Change 3247855 on 2017/01/05 by Nick.Shin refetch on timed out GET/POST requests #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3247737 on 2017/01/05 by Marc.Audy static mesh component instance data now correclty inherits from pritive component instance data instead of skipping it and inheriting directly from scene component instance data #jira UE-40053 Change 3247723 on 2017/01/05 by mason.seay Asset for suspend cloth bug #jira UE-29618 Change 3247708 on 2017/01/05 by Mitchell.Wilson Updating project settings to disable dbuffer decals to resolve rendering issues in Showdown while using -game -vr #jira UE-40195 Change 3247652 on 2017/01/05 by Martin.Wilson Fixes for animation notifies window -Fix notify not being removed from skeleton -Fix crash where editor is not refreshed after notify removal #jira UE-40154 Change 3247638 on 2017/01/05 by mason.seay Test assets for cloth suspension #jira UE-29618 Change 3247630 on 2017/01/05 by Alexis.Matte Prevent crash when the import fail and we have no staticmesh created #jira UE-40024 Change 3247556 on 2017/01/05 by Ben.Marsh Fix non-unity compile error. Change 3247547 on 2017/01/05 by Jurre.deBaare Crash while using the Delete Button in the HLOD Outliner while a Generated Proxy Mesh is opened in the Static Mesh Editor #fix Unify path for both delete cluster options in the outliner UI #jira UE-40066 Change 3247539 on 2017/01/05 by Benn.Gallagher Fixed serialization crash for simplified skeletal meshes leading to corrupted assets that crash on load after skin weight buffer changes. #jira UE-40199 Change 3247515 on 2017/01/05 by Allan.Bentham Fix inverted planar reflections when mobileLDR Fixed incorrect gamma 2 planar reflection rendering when mobileLDR #jira UE-32868 Change 3247502 on 2017/01/05 by Dmitriy.Dyomin Fixed: Single digit frame rate when sculpting landscape foliage. #jira UE-39532 Change 3247232 on 2017/01/04 by Ben.Marsh Remove private include from public header. Prevents compiling samples from installed build of the engine without private headers. #jira UE-40135, UE-40137, UE-40139, UE-40140, UE-40141, UE-40142, UE-40143, UE-40144 Change 3247002 on 2017/01/04 by Chris.Babcock Changed Vulkan hitchy pipeline log message verbosity #jira UE-38354 #ue4 #android #dontbackcopy Change 3246927 on 2017/01/04 by matt.barnes Updating QAGame content to facilitate UEQATC-2969 #jira UE-29618 Change 3246894 on 2017/01/04 by Mike.Beach Mirroring CL 3245322 from Dev-BP Fixed a crash when implementing a native interface in a BP #jira UE-40155, UE-40203 Change 3246830 on 2017/01/04 by Chris.Bunner Allow AllocGBuffer call when in simple-forward so dummy uniform buffer creation can occur. #jira UE-39756 Change 3246816 on 2017/01/04 by Jon.Nabozny Fix Anim Notifies Tab not opening in Animation Editor. #JIRA UE-40134 Change 3246804 on 2017/01/04 by Ori.Cohen Touch engine file to trigger re-link. #JIRA UE-40156 Change 3246709 on 2017/01/04 by mason.seay Updated map #jira UE-29618 Change 3246606 on 2017/01/04 by Ori.Cohen Fix for sweeps taking too long time (OR-32839). - Exhaustive investigation uncovered apparent numerical problems in this code (when compiling with clang 3.9.x with -ffast-math). - Current solution can result in overshoot for certain trace extents, but they are not expected to be a practical problem in Unreal. - NVidia is aware and will investigate a better solution. #tests Compiled Linux server with the changed PhysX and continuously ran bot matches for about a day. #JIRA UE-40156 Change 3246571 on 2017/01/04 by Marc.Audy Look at the body instance's desired collision enabled value rather than the primitive component's current collision enabled value when determining whether physics state should be created #jira UE-39994 Change 3246527 on 2017/01/04 by tim.gautier QAGame: BP_MediaPlayer now displays the name of the MediaPlayer plugin currently in use during playback #jira UE-29618 Change 3246480 on 2017/01/04 by mason.seay Map update #jira UE-29618 Change 3246470 on 2017/01/04 by Ori.Cohen Guard against infinitely thin geometry which fixes some nans. This showed up as issues in various projects #JIRA UE-00000 Change 3246413 on 2017/01/04 by Jon.Nabozny Cube asset did not have Tri Meshes. Reimported to fix the issue. -- Copied from 3233164 -- #jira UE-39657 Change 3246388 on 2017/01/04 by Jon.Nabozny Set 'p.MoveIgnoreFirstBlockingOverlap' to be enabled by default (3158732). This causes collision behavior to remain unchanged unless people opt in to the new behavior. -- Copied from 3239735 (bot health fixed by a different CL) -- #jira UE-39387 Change 3246352 on 2017/01/04 by Jon.Nabozny Fix FPredictProjectilePathParams to use a valid default value for TraceChannel. This requires the use of a new bool bTraceWithChannel which is enabled by default. -- Copied from 3239765 -- #JIRA UE-39726 Change 3246341 on 2017/01/04 by Ori.Cohen Allow vehicles to inherit from PawnMovementComponent and only use the pawn/ai capabilities when a Pawn owner is used. #JIRA UE-39508 Change 3246178 on 2017/01/04 by Andrew.Rodham Sequencer: When playback stops naturally, the play position is set to the boundary that caused playback to stop (the end if playing forwards, the start if playing backwards) - This is to reconcile the movie scene sequence player with previous behaviour #jira UE-40076 Change 3246102 on 2017/01/04 by Benn.Gallagher Fixed single threaded physics dispatcher triggering checks from clothing when running with a CPU with two or fewer cores. #jira UE-39811 Change 3246100 on 2017/01/04 by Benn.Gallagher Fixed ensure triggered when using root motion with sub instances Fixed crash reinstancing an active anim class that had subinstances #jira UE-39582 #jira UE-39579 Change 3246092 on 2017/01/04 by Marc.Audy PR #3082: Improve comment for UInputComponent (Contributed by Soleone) #jira UE-40098 Change 3246084 on 2017/01/04 by Matthew.Griffin Remove bad files Change 3246076 on 2017/01/04 by Matt.Kuhlenschmidt Fixed all non-editable text properties having a double disabled effect. The text box is read only which prevents edting but still allows copying text from it. This feature had regressed and the disabled effect on top of the read only effect made it too difficult to see the text. #jira UE-39652 Change 3246043 on 2017/01/04 by Steve.Robb Use of CastChecked instead of Cast in implementations of IStructSerializerBackend::WriteProperty. This is both more efficient and will hopefully make it easier to diagnose the issue. #jira UE-39872 Change 3246032 on 2017/01/04 by Martin.Wilson Change FindBoneIndex to FindRawBoneIndex (final bone maps are not built until after all adding is done so they will not be found) #jira UE-40105 Change 3246016 on 2017/01/04 by Andrew.Rodham Editor: Insert/Duplicate/Delete menu on array properties now only closes itself on click, rather than all menus - This allows us to edit such properties on context menus #jira UE-39998 Change 3246005 on 2017/01/04 by Thomas.Sarkanen Fixed asset attachment issues in Skeleton Tree Assets were being attached uniquely, so only one asset could be attached to a bone/socket. However the calling code didnt know that the unique attachment function just gave up, so the item just got added to the bottom of the tree. The attachment filter was not set correctly to allow for bone attatchments, so only sockets could be attached to. The attach parent name was not initialized, so assets could not be deleted one at a time. #jira UE-40040 - With multiple Preview assets on one bone, only one appears in Skeleton Tree #jira UE-40041 - Preview assets appear at the bottom of the skeleton tree Change 3246002 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed actor tick prerequisites not getting set up correctly for master sequences #jira UE-39975 Change 3245979 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed scrubbing audio tracks not working propertly #jira UE-40048 Change 3245978 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed dropping a level onto a level visibility section not marking the track as changed, and not correctly creating a transaction #jira UE-39998 Change 3245977 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed crash caused by lingering persistent evaluation data #jira UE-40064 Change 3245971 on 2017/01/04 by Dmitriy.Dyomin Fixed: Using Set World Origin Location will cause the player pawn to stutter #jira UE-40022 Change 3245725 on 2017/01/03 by Matt.Barnes Further improvments on test assets for UEQATC-2963 #jira UE-29618 Change 3245658 on 2017/01/03 by Arciel.Rekman Linux: fix ARM32 build (UE-39913). #jira UE-39913 (Redoing CL 3240982 from Dev-Platform in Release-4.15) Change 3245577 on 2017/01/03 by Mason.Seay More vehicle updates #jira UE-29618 Change 3245556 on 2017/01/03 by Matt.Barnes Updating test content for UEQATC-2963 #jira UEQATC-2963 Change 3245461 on 2017/01/03 by mason.seay Updating Inertia Tensor Scale to improve Vehicle Handling #jira UE-40013 Change 3245442 on 2017/01/03 by Jeff.Fisher UEVR-495 Assert when switching to 2d mode. sceHmdReprojectionStart failing. -There was a race condition between switching output modes on the render thread and sceHmdReprojectionStart on the RHI thread. The flush fixes that. The reprojection would simply have failed that frame previously in shipping which would not matter much as we are switching output modes anyway. #jira UEVR-495 #review-3245374 Change 3245427 on 2017/01/03 by Jeff.Fisher UEVR-456 check if we are using camera before doing camera disconnected dialog on PSVR -If the tracker is active, but we are tracking nothing (ie we have the morpheus hmd tracking plugin, and started up with it, but switched to 2d mode) don't pop up the camera setup warning until we start trying to track something again. -This is useful for apps that have 2d and vr modes. #jira UEVR-456 #review-3245372 Change 3245329 on 2017/01/03 by mason.seay Level and vehicle tweaks #jira UE-29618 Change 3245275 on 2017/01/03 by Chris.Babcock Added EngineVersion to AndroidManfiest.xml metadata #jira UE-40123 #ue4 #android Change 3245235 on 2017/01/03 by Guillaume.Abadie Cherry picks CL 3234813 from Dev-Rendering: Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3245183 on 2017/01/03 by Chris.Babcock Added missing #undef LOCTEXT_NAMESPACE to some files (contributed by projectgheist) #jira UE-40103 #PR #3085 #ue4 #android Change 3245120 on 2017/01/03 by mason.seay Missed some assets #jira UE-29618 Change 3245116 on 2017/01/03 by mason.seay Mass fucntional test #jira UE-29618 Change 3245049 on 2017/01/03 by Ben.Marsh PR #3086: Fixed ScriptGeneratorPlugin #includes (Contributed by projectgheist) Change 3244924 on 2017/01/03 by Ben.Zeigler #jira UE-40057 Fix regression in public access for SwapPlayerControllers, from GitHub #3072 Change 3244831 on 2017/01/03 by Mitchell.Wilson Fixed hole in collision around level. #jira UE-39576 Change 3244817 on 2017/01/03 by Matthew.Griffin Change check for files being under engine directory to avoid problems with relative paths #jira UE-40096 Change 3244801 on 2017/01/03 by Andrew.Rodham Editor: Fixed color picker not working when opened from a details panel on a context menu - When a color picker is opened from a details panel that's on a context menu, it now opens as a sub menu - Added the ability to find an open menu from a widget path to FSlateApplication #jira UE-39932 Change 3244776 on 2017/01/03 by Matt.Kuhlenschmidt Fix window handle and device context being accessed by scene viewports after the underlying window has been destroyed by the OS. This is an invalid state on linux and using some vr devices. #jira UE-7388 Change 3244672 on 2017/01/03 by Ben.Marsh Search all directories containing universal CRT installations from the registry, rather than assuming that the first one found will contain the universal CRT version we want to use. Attempt to fix issues described in PR #3059. Change 3244668 on 2017/01/03 by Thomas.Sarkanen Added "Reimport Animation" and "Export to FBX" to the animation editor toolbar Options were in the asset menu before. #jira UE-39643 - Missing "Reimport" option for animation assets Change 3244667 on 2017/01/03 by Thomas.Sarkanen Reduced default URO distances in-line with new LOD calculations New values should give (roughly) the same effect as the older values with the older system. #jira UE-39939 - URO LOD distance factors different with the new screen size metric Change 3244654 on 2017/01/03 by Matthew.Griffin Added functionality to specify Loading Phase for plugin templates Changed Blueprint Library Template so that it loads pre loading screen and can be linked correctly in blueprints that use it #jira UE-38826 Change 3244631 on 2017/01/03 by Dmitriy.Dyomin Fixed: TM_Landscape_LOD Folder does not Live Update contents after generating LODs with Create Per Package Asset #jira UE-37368 Change 3244548 on 2017/01/02 by Jack.Porter Fix for Post-process Materials rendering incorrectly in editor mobile preview after viewport is resized #jira UE-39905 Change 3244389 on 2016/12/30 by Phillip.Kavan [UE-39816] Fix broken pin links caused by renaming interface function input/output parameters prior to compiling the interface, but after renaming the function itself. Mirrored from //UE4/Dev-Blueprints (CL# 3244388). #jira UE-39816 Change 3244248 on 2016/12/29 by laz.matech Saved the new sublevel in the persistent level and set it to hidden by default #jira UE-29618 Change 3244213 on 2016/12/29 by laz.matech Added a sublevel to QA-Sequencer map #jira UE-29618 Change 3243857 on 2016/12/27 by samuel.proctor Altered Container asset to have proper console input #jira UE-29618 Change 3243852 on 2016/12/27 by Mason.Seay Forgot config file #jira UE-29618 Change 3243847 on 2016/12/27 by mason.seay Improved mobile input #jira UE-29618 Change 3243536 on 2016/12/24 by Phillip.Kavan [UE-39944] Extend the GetClassDefaults node to include output pin exceptions for TSet/TMap properties (i.e. mirror safeguards already in place for TArray). Mirrored from //UE4/Dev-Blueprints (CL# 3243210). #jira UE-39944 Change 3243535 on 2016/12/24 by Phillip.Kavan [UE-39816] Renaming interface input/output parameters will no longer cause broken pin links at interface function call sites in Blueprints that are currently loaded. Mirrored from //UE4/Dev-Blueprints (CL# 3243207). #jira UE-39816 Change 3243534 on 2016/12/24 by Phillip.Kavan [UE-39733] Fix incorrect graph pin value display names for user-defined enum types. Mirrored from //UE4/Dev-Blueprints (CL# 3239965). #jira UE-39733 Change 3243532 on 2016/12/24 by Phillip.Kavan [UE-39854] Fix nativized assets build error when there are no native code dependencies. Mirrored from //UE4/Dev-Blueprints (CL# 3239778). #jira UE-39854 Change 3243529 on 2016/12/24 by Phillip.Kavan [UE-38999] Dump component tree node hierarchy to the output log on error state during widget generation. Mirrored from //UE4/Dev-Blueprints (CL# 3239289). #jira UE-38999 Change 3243442 on 2016/12/23 by mason.seay QAGame cleanup - Replacing copy pose from mesh test assets #jira UE-29618 Change 3243215 on 2016/12/22 by Dmitriy.Dyomin Fixed: Switching to ES2 feature level preview renders black in editor #jira UE-40009 Change 3243185 on 2016/12/22 by Ryan.Vance #jira UEVR-478 Integrating 3235308 Mono changes from DevVR. Change 3243183 on 2016/12/22 by Ryan.Vance #jira UEVR-455 Integrating 3243173 post present call back implementation from 4.14.1 Change 3243182 on 2016/12/22 by Ryan.Vance #jira UE-39269 Working around a nullptr deref in the Oculus runtime. Change 3243153 on 2016/12/22 by mason.seay WIP map update #jira UE-29618 Change 3243128 on 2016/12/22 by andrew.porter QAGame: Adding Actor Sequence test content for a crash. #jira UE-29618 Change 3243117 on 2016/12/22 by Jeff.Fisher UE-34004 GitHub 2659 : Implement support for OpenVR controller roles. -Rather than assigning unreal hands to controllers in the order the controllers are connected assign unreal hands to match the ones the API is using. -We now defer setting up controllers that are disconnected. This lets connected controllers, that may have hand preference from steam, occupy their desired hands first. If a controller is connected later and does not have a role it is assigned to an unoccupied hand or to the right hand. -This can still end up ignoring role in the following circumstance (and I can get it to do this): get one controller to prefer'right' and the other to have no preference. Power off the 'right' prefering controller. Start the game with only the no-preference controller on. The game will put that controller in the right slot, because the api gives it no other hints. Then power on the controller that preferred 'right'. That controller will now be assigned left, because right is occupied. I don't see a way around that without the ability to switch which hand a controller is associated with at runtime. -This does not yet handle starting with 2 controllers, disconnecting one, then connecting a third controller well. That did not work before either. A new Jira was created for that. #2659 #jira UE-34004 #review-3231154 Change 3243093 on 2016/12/22 by mason.seay Some tweaks to vehicle levels #jira UE-29618 Change 3243084 on 2016/12/22 by andrew.porter QAGame: Cleaned up Sequencer_OverrideBindings #jira UE-29618 Change 3243009 on 2016/12/22 by andrew.porter QAGame: Renaming actor in Sequencer_OverrideBindings. #jira UE-29618 Change 3243003 on 2016/12/22 by andrew.porter QAGame: Removing override bindings from level sequence #jira UE-29618 Change 3242996 on 2016/12/22 by andrew.porter QAGame: Slight tweak to QA-Sequencer. #jira UE-29618 Change 3242982 on 2016/12/22 by Marc.Audy Properly reenable stats sounds in both game and level editor #jira UE-40015 Change 3242959 on 2016/12/22 by mason.seay Test map for vehicles and moving meshes #jira UE-29618 Change 3242934 on 2016/12/22 by andrew.porter QAGame: Adding test content to QA-Sequencer for Override Bindings #jira UE-29618 Change 3242870 on 2016/12/22 by Mason.Seay QAGame footprint reduction: Clearing out content (were in for old bug reports) #jira UE-29618 Change 3242799 on 2016/12/22 by tim.gautier QAGame - Adding the following assets for Sequencer Event Track testing: -TM-Sequencer_EventTrack + BuildData -QA_LightStruct -Sequencer_EventTrack #jira UE-29618 Change 3242792 on 2016/12/22 by samuel.proctor Correcting Container test asset for proper output #jira UE-29618 Change 3242727 on 2016/12/22 by Dmitriy.Dyomin Fixed: LoadLevelIntstance returns a reference that can't be used to send an interface message #jira UE-40005 Change 3242666 on 2016/12/22 by Dmitriy.Dyomin Fixed: Packaging Android app for Mali Graphics Debugger v4.3.0 fails #jira UE-39534 Change 3242373 on 2016/12/21 by Ori.Cohen Allow vehicles to override inertia tensor after any mass properties have changed. #JIRA UE-39566 Change 3242323 on 2016/12/21 by Josh.Adams - Somehow my last change just got completely lost in the edigrate shuffle. Or something. I have no idea! Rdoing it #jira UE-39966 Change 3242286 on 2016/12/21 by mason.seay Vehicle Assets and Maps #jira UE-29618 Change 3242284 on 2016/12/21 by Marc.Audy Fix "stat sounds" not working after PIE completes and a new one is begun #jira UE-32743 #jira UE-39511 Change 3242281 on 2016/12/21 by Ori.Cohen Fix multi select being very slow in phat #JIRA UE-39559 Change 3242229 on 2016/12/21 by Ben.Marsh Fixup workspace for building PhysX. Change 3242227 on 2016/12/21 by Marc.Audy Properly update listener position for stat sounds #jira UE-38850 Change 3242218 on 2016/12/21 by Ori.Cohen Fix physx html5 compilation APEX issue. #JIRA UE-39566 Change 3242174 on 2016/12/21 by Ori.Cohen Fix incorrect moment of inertia for convex elements with translation. #JIRA UE-39566 Change 3242145 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix for vehicle stability #JIRA UE-38710 Change 3242139 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix: Fix crash when setting collision trace in construction script. #JIRA UE-39341 Change 3242088 on 2016/12/21 by Alexis.Matte Fix the drag and drop material on level instance to drop on the correct material slot Fix the serialization of the staticmesh property FMeshSectionInfoMap #jira UE-39952 Change 3242081 on 2016/12/21 by Andrew.Rodham Sequencer: Make details view focused when resetting inner struct contents to ensure that focus path is valid. #jira UE-39851 Change 3242079 on 2016/12/21 by Andrew.Rodham Sequencer: Evaluation templates are now only fully rebuilt in PIE, and will not re-cycle track identifiers - This addresses issues with newly compiled tracks recycling the persistent data of old stale tracks. - This commit also ensures we don't fully rebuild templates in the editor when in Sequencer #jira UE-39882 Change 3242078 on 2016/12/21 by Andrew.Rodham Sequencer: Fixed crash when deactivating a section in sequencer #jira UE-39880 Change 3242026 on 2016/12/21 by Josh.Adams - Fixed compile errors in tools after NVNRHI move #jira UE-39966 Change 3241994 on 2016/12/21 by andrew.porter QAGame: Disabled auto play on Sequencer_AnimNotify. #jira UE-29618 Change 3241989 on 2016/12/21 by Mitchell.Wilson Resolving CIS warnings in Content examples. Fixed up redirectors. Moved a texture from developer folder into project and relinked in POM_Debug material. Fixed up BP Commentary Box which was failing to compile. Updated spawn rate on Pulse Ring so it works as intended. #jira UE-39984 Change 3241986 on 2016/12/21 by mason.seay Vehicle Landscape Test map (mainly for crash investigation) #jira UE-29618 Change 3241914 on 2016/12/21 by Josh.Adams - Removed invalid and confusing .ini settings #jira UE-39982 Change 3241902 on 2016/12/21 by Josh.Adams - Moved NVNRHI stuff out of RHI.Build.cs #jira UE-39966 Change 3241889 on 2016/12/21 by andrew.porter QAGame: Added new level sequence to QA-Sequencer level #jira UE-29618 Change 3241884 on 2016/12/21 by Alexis.Matte Make sure the color grading cursor follow the mouse by using the exponent value when painting the cursor. #jira UE-39834 Change 3241869 on 2016/12/21 by andrew.porter QAGame: Adding test content for Sequencer Animation Notifies #jira UE-29618 Change 3241809 on 2016/12/21 by Chris.Wood Fix non-unity build errors in UnrealWatchdog. [UE-39940] - GitHub 3054 : Added EngineBuildSettings.h to UnrealWatchdog.cpp PR #3054: Added EngineBuildSettings.h to UnrealWatchdog.cpp (Contributed by ryanjon2040) #jira UE-39940 Change 3241806 on 2016/12/21 by Marc.Audy Don't unload and then reload streaming levels that are marked to be hidden. #jira UE-39883 Change 3241802 on 2016/12/21 by Marc.Audy Add new object flag RF_NeedInitialization to indicate that ~FObjectInitalizer and PostInitProperties have not been executed for the object Do not allow Modify calls on Objects that have not been initialized #jira UE-39731 Change 3241790 on 2016/12/21 by Marc.Audy Don't rerun construction scripts when an actor has seamless traveled from another level #jira UE-39699 Change 3241789 on 2016/12/21 by Marc.Audy Check Owner has a valid world before trying to access Scene (4.14.2) #jira UE-39560 Change 3241786 on 2016/12/21 by Marc.Audy Fixed crash when seamless travelling in PIE from levels other than the current editor level with a streaming sublevel shared with the current editor level #jira UE-39407 Change 3241781 on 2016/12/21 by Mitchell.Wilson Fixed up redirectors for SkeletalMesh and Personal Walkthroughs. #jira UE-30953 Change 3241747 on 2016/12/21 by mason.seay Tag Query test map and assets #jira UE-29618 Change 3240938 on 2016/12/20 by Ben.Marsh Remaking QFE fixes from 4.14 branch. Change 3240740 on 2016/12/20 by Ben.Marsh Update branch name for analytics. [CL 3272229 by Matthew Griffin in Main branch]
2017-01-25 16:23:41 -05:00
static const auto CVarMobileMultiView = IConsoleManager::Get().FindTConsoleVariableDataInt(TEXT("vr.MobileMultiView"));
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3145687) #lockdown Nick.Penwarden #rb Merge ========================== MAJOR FEATURES + CHANGES ========================== Change 3094167 on 2016/08/18 by Jeff.Fisher UEVR-97 Morpheus HMD tracking needs to wait until HMD is fully tracked. -Morpheus CALIBRATING/NOT_TRACKED tracking state hmd orientation update disabled and delegates added to present instructions to the user. This behavior is controlled by morpheus ini setting bDisableHMDOrientationUntilHMDHasBeenTracked, but defaulted to true to avoid subtly bad user experiences. #review-3094106 @chad.taylor #jira UEVR-97 Change 3104799 on 2016/08/29 by Jeff.Fisher UEVR-178 Morpheus HMD Black crescents -Switched reprojection frame time for 60/120 mode from 120hz to 60hz so we much better predict where the hmd will be pointing when the frame we are about to render is actually displayed, and are run off the edge of it less often and less severely. This makes the black crescent artifacts only just visible during very fast head turning. The kWrapModeMirror change, which will be submitted separately, makes the left and right crescents invisible to me. -Renamed the functions for setting the prediction info in the PS4Tracker. -Added render frame parameters to sony reprojection functions, these can help with debugging reprojection. -Added commented out sce call to get the reprojection debug data. Not allowed to submit an executable that calls it, but its nice to at least know where one can put it. May improve this later. -Wrapped PS4Tracker->Synchronize call in a check that the tracker handle is valid, because I managed to get it called when it wasn't (probably during hmd power off testing, but I don't remember now). It should be fine to not do it if the tracker is not functioning. #review-3104780 chad.taylor #jira UEVR-178 Change 3108423 on 2016/08/31 by Jeff.Fisher Morpheus Config Improvements. -UEVR-138 Morpheus HMD reprojection wrap mode config setting -Can now switch between wrap mode Mirror and ClampToBorder. Mirror is the default. -Made bDisableHMDOrientationUntilHMDHasBeenTracked editable in UE4Editor project settings. -Using generic project setting for bStartInVR, removed the morpheus specific one. #jira UEVR-138 #review-3106999 @nick.whiting Change 3111231 on 2016/09/01 by Jeff.Fisher Fixed bStartInVR ini setting. -Initial implementation worked via a generic EnableStereo call, which worked, but happened after the hmd setup dialog, which is not what I wanted. -Also fixed a tracking frame mismatch assert that hit when I powered the hmd off once, causing it to lose tracking. Its ok that it doesn't update in that circumstance. #review-3111211 @ryan.vance Change 3115196 on 2016/09/06 by Keli.Hlodversson #jira UEVR-128 Map move controller Select button to Invalid, as it is always handled by the system Change 3116425 on 2016/09/07 by Chad.Taylor PSVR: stereo layers implementation Change 3116593 on 2016/09/07 by Jeff.Fisher UEVR-126 Morpheus HMD connect dialog cancel reactions -VR only apps can't allow the player to cancel out of the hmd setup dialog, so lets just pop the dialog up again (sony were ok with a licencee doing this) if an ini setting says to do that. -VR/2D apps might want to switch to 2d if the player cancels out of the hmd setup dialog, so there is an ini setting for that. -A delegate only implementation is also provided for apps that want to do something else. This leaves the game rendering in VR mode, and fires the delegate. -Refactored to better separate successful HMD acquisition from stereo rendering. This was necessary to support the delegate only option on startup. If you start in vr mode with your hmd off and cancel the dialog stereo rendering now starts with default values for the hmd hardware stats (as read from my pvt) instead of crashing trying to use uninitialized data. When an hmd is connected its values will be read. -Refactored to ensure reprojection starts immediately when we call StartReprojection. #jira UEVR-126 #review-3116221 Change 3116754 on 2016/09/07 by Keli.Hlodversson bPixelDensityAdaptive is a bool and not a float property Change 3117692 on 2016/09/08 by Jeff.Fisher UEVR-135 Morpheus HMD recent feature error reporting UEVR-173 2DVR flexibility (UTexture) -Error log for sceHmdReprojectionSetOutputMinColor failure. -Made the parameter for 2dVR a UTexture* instead of a UTexture2D*, so it can be a rendertarget, etc. -Added error logs for missing texture, invalid texture, wrong texture format to 2DVR. #jira UEVR-135 #jira UEVR-173 #review-3116955 @keli.hloedversson Change 3117990 on 2016/09/08 by Jeff.Fisher UEVR-127 Morpheus HMD removal reaction -Added VRHeadsetPutOnHead and VRHeadsetRemovedFromHead delegates, and implemented them for Morpheus. #jira UEVR-127 #review-3117968 @keli.hlodversson Change 3120198 on 2016/09/09 by Jeff.Fisher MorpheusReprojector frame complete wait error log -Now log a warning if the sceKernalWaitEqueue returns an error. It not a problem if this happens rarely, but something is very broken if it starts happening continuously. Change 3121754 on 2016/09/12 by Keli.Hlodversson #jira UE-21878 - Also emit VR initialization analytics events in the editor. Change 3122311 on 2016/09/12 by Nick.Whiting Merging fix for Adreno devices rendering black from 4.13.1 Change 3123057 on 2016/09/13 by Keli.Hlodversson #jira UE-30097 Use the current value of r.ScreenPercentage on Occulus Rift if it's explicitly set. * If the SetBy part of the flags for the console var is SetBy_Constructor, then ignore the value. * If it's SetBy_Scalability, then ignore it if it equals 100 * Else, call SetScreenPercentage using the current value The obsolete HMD SCREENPERCENTAGE console command is still available and will override the setting until r.ScreenPercentage is modified the next time. Change 3123200 on 2016/09/13 by Chad.Taylor PS4 Stereo Layer double buffering. Since the overlays are reprojected at 120hz but rendered at 60hz we need to render to a separate buffer than the one being used by reprojection. Change 3125845 on 2016/09/14 by Keli.Hlodversson #jira UE-33996 Add hmd=<name> command line option to allow overriding which HMD module is used. Renamed GetModulePriorityKeyName to simply GetModuleKeyName, as this name is now also used to match against the command line options. Change 3127293 on 2016/09/15 by Jeff.Fisher UEVR-225 Morpheus HMD top and bottom black crescents -The hidden and visible area meshes for morpheus were too restrictive. Nudged them out a bit, no black crescents at the top and bottom of the screen. We are rendering a few more pixels now though. #review-3127145 @ryan.vance #jira UEVR-225 Change 3130635 on 2016/09/19 by Jeff.Fisher UEVR-226 Morpheus HMD mirrored fill wrong on outer edges -The setting was never being used, leaving the wrap mode at 0 aka kWrapModeWrap. -Refactored how the setting is applied so it works, and is less convoluted. #jira UEVR-226 #review-3129403 Change 3131615 on 2016/09/19 by Keli.Hlodversson #jira UE-29341. Update Chaperone bounds when SteamVR tells us they have changed Change 3136527 on 2016/09/22 by Keli.Hlodversson Don't depend on the current state of the VR subsystem when exiting PIE mode to decide whether the main window should be restored. Instead always restore it if it was minimized at the start. Change 3136652 on 2016/09/22 by Keli.Hlodversson Allow shutting down Steam VR subsystem without shutting down the Steam VR plugin completely in response to quitting from the SteamVR overlay. Enabling stereo rendering again will reinitialize SteamVR. This is useful when using PIE in VR mode as it allows entereing it again without restarting the editor. Also fixes crashes by first disabinge stereo rendering a short while before shutting down the VR subsystem. #jira UE-35940 Change 3138901 on 2016/09/23 by Ryan.Vance Merging 3138521 using OdinToDevVR to bring over temporary forward lighting ISR changes for 4.14 Change 3141614 on 2016/09/27 by Keli.Hlodversson Implement GetNumOfTrackingSensors and GetTrackingSensorProperties on SteamVR. #jira UE-32994 Change 3141948 on 2016/09/27 by Jeff.Fisher UEVR-242 Is AddControllerYawInput not allowed when morpheus is enabled? -Indeed it did not work. Looks like morpheus would not accumulate the yaw, so it would be reset every frame. I made the implementation of ApplyHmdRotation very similar to the one used for occulus (also similar to other platforms) to fix this. #jira UEVR-242 #review-3141933 keli.hlodversson Change 3143484 on 2016/09/28 by Nick.Whiting Integrating Oculus 1.8 SDK support, includes support for cylinder and cubemap stereo layers Change 3143517 on 2016/09/28 by Chad.Taylor Merging PS4Tracker fixes from Release-4.13 into Dev-VR Change 3143805 on 2016/09/28 by Keli.Hlodversson #jira UE-36478 Workaround to make world to meters scale apply correctly to Occulus controllers while running in PIE Change 3143943 on 2016/09/28 by Nick.Whiting Merging latest drop from OSVR Change 3144221 on 2016/09/28 by Keli.Hlodversson Implement GetTrackingSensorProperties on PS4 #jira UE-32994 Change 3144352 on 2016/09/28 by Ryan.Vance Initial implementation of mobile multi-view. This is non-functioning and requires a lot more work, but enough of the framework exists to make the 4.14 branch for an experimental release. Change 3144585 on 2016/09/29 by Jeff.Fisher UEVR-14 PSVR Support for 90Hz to 90Hz, and 120Hz to 120Hz -Enum setting added for the three frame sequences. -90Hz mode is trying to run camera updates at 90hz, but they can only run at 60 so every third one fails. This works, but its dubious. -Feature marked as experimental for now because of that 90hz tracking issue, and the lack of testing. -Defaulting to 60/120. #jira UEVR-14 #review-3143486 chad.taylor nick.whiting Change 3145263 on 2016/09/29 by Nick.Whiting Fix for constructor initialization order in StereoLayerComponent, which threw a warning on Clang Change 3145536 on 2016/09/29 by Nick.Whiting Fixes for project files to prevent mystery pop up from CAPI Change 3145663 on 2016/09/29 by Keli.Hlodversson PSVR: Make sure the camera orientation returned from GetTrackingSensorProperties points in the right direction. Change 3145670 on 2016/09/29 by Keli.Hlodversson For some reason the orientation of the Oculus tracking sensor is reported as pointing backwards. This flips it around to face front Change 3145687 on 2016/09/29 by Chad.Taylor VR splash screen support [CL 3146243 by Nick Whiting in Main branch]
2016-09-30 01:16:13 -04:00
// Allocate mobile multi-view frame buffer if enabled and supported.
// Multi-view doesn't support read buffers, explicitly disable and only bind GL_DRAW_FRAMEBUFFER
// TODO: We can't reliably use packed depth stencil?
const bool bRenderTargetsDefined = (RenderTargets != nullptr) && RenderTargets[0];
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3383750) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3012064 on 2016/06/13 by Nick.Whiting Merging Main -> DevVR Change 3048060 on 2016/07/13 by Nick.Whiting Integrating CL 3045721 from //depot/Partners/Google/AndroidVR-DevVR Upgrade Android and iOS GVR SDK to the latest. Fix the flipped vignette issue when using Unreal's post processing distortion. Change the Daydream & Cardboard mode to use scanline racing. Deprecate the ability to turn off individual UI elements. Change 3235307 on 2016/12/14 by Keli.Hlodversson Filter out excluded HMD modules during FEngineLoop:PreInitHMDDevice. The final selection still happens in UEngine::InitializeHMDDevice as all HMD plugins have not been loaded during PreInit Change 3235308 on 2016/12/14 by Ryan.Vance #jira UEVR-478 Monoscopic far field improvements Shader changes are now gated behind the read only cvar vr.MonoscopicFarField. Changing this requires a shader compile. Moved the mono rendering mode to the cvar vr.MonoscopicFarFieldMode. This is writable, so users can enable/disable mono rendering on the fly if the above cvar is enabled. Only write to the alpha channel in the mobile base pass if the object is opaque and MONOSCOPIC_FAR_FIELD is defined. Addressed code review comments. Change 3235397 on 2016/12/14 by Keli.Hlodversson [Oculus] Only enable GearVR platform on Windows if Oculus service is running Original author: Loren.McQuade Change 3235762 on 2016/12/14 by Keli.Hlodversson Add explicit parentheses to placate the build bots. Change 3242318 on 2016/12/21 by Ryan.Vance Working around pixel density crash. Change 3242522 on 2016/12/21 by Ryan.Vance Missing flag clear so our adaptive test was always returning true. Change 3243173 on 2016/12/22 by Ryan.Vance Integrating post present callback implementation from 4.14.1 Change 3248633 on 2017/01/05 by Keli.Hlodversson Copying //Tasks/UE4/Dev-VR-Refactoring to Dev-VR-Minimal (//UE4/Dev-VR-Minimal) Change 3248723 on 2017/01/05 by Keli.Hlodversson Fix after merge. EnablePositionalTracking no longer exists. Change 3249484 on 2017/01/06 by Keli.Hlodversson Add missing includes Change 3249714 on 2017/01/06 by Keli.Hlodversson Remove monolithic header include Change 3249980 on 2017/01/06 by Keli.Hlodversson SteamVR: Remove leftover unused WindowMirrorMode member variable Change 3252432 on 2017/01/10 by Keli.Hlodversson Submitting change by Loren McQuade to fix monolithic builds. Unshelved from pending changelist '3251436': Change 3257373 on 2017/01/13 by Keli.Hlodversson #jira UEVR-411: Finish renaming/removing/remodelling the remaining Oculus (Rift+GearVR) commands #jira UEVR-412: Rename and merge remaining Morpheus console commands #jira UEVR-417: Remove Exec from IHeadMountedDisplay Change 3269971 on 2017/01/24 by Jeff.Fisher UEVR-498 move controller is missing world to meters UEVR-522 PS4 motion controller worldscale support. -Passing world to meters scale into getControllerOrientationAndPosition because the thing asking about it ought to be part of a world, and know what it should be. This also avoids making PS4 motion controllers dependent on the HMD. Note Google VR Controller doesn't do position, so doesnt' care about scale. Oculus already had internal threadsafe tracking of world scale, so I left that. Steam handles world scale below our input level. -Also adding PlayerIndex member to FSceneView so we can figure out which view the MotionControllerComponent should get its worldscale from for the late render thread update. #jira UEVR-498 #review-3384107 Change 3288308 on 2017/02/06 by Jeff.Fisher UEVR-517 Detect MotionController Connectivity -PS4 can only track 2 controllers and 1 hmd. Support for dealing with that is needed. -Also need to support multiple motion controller components mapped to a single controller. Licencees have done that before. -Created a new interface IMotionTrackingSystemManagement, and implements it for PS4Tracker on PS4. -Created a MotionTrackedDeviceFunctionLibrary to expose that interface to blueprint. -With those one can enable and disable tracking on ps4 controllers and query their state to stay within the controller tracking limit. -PS4Tracker also keeps a blackboard of the enable/disable state so that one can enable or disable controllers that have not been connected yet, and have them enable tracking or not when they are connected. -DS4 controller no longer jumps back to 000 if it loses tracking. #review-3384107 #jira UEVR-517 Change 3288309 on 2017/02/06 by Keli.Hlodversson Add file missing from CL#3257373. Change 3288311 on 2017/02/06 by Jeff.Fisher UEVR-517 Detect MotionController Connectivity - Test content. -tm-motionControllers has a third mode where all playstation motion controllers for player 0 are availalbe. You can toggle them to track or not with ctrl-P,G,L,R for pad, gun, leftmove, rightmove or with alt-P,G,L,R. Ctrl tests doing so via MotionControllerComponent. Alt tests doing so by player index and controller type enum. -ctrl-A disables tracking of all controllers -alt-A disables tracking of all controllers for player 0 -ctrl-D toggles enabling new controllers by default -Also fixed one button not working in one of the other test modes for the Aim (gun) controller. -The controller 'models' have an arrow out the front. It is black if disabled. Red if enabled, but no tracker is active, yellow if tracked but inertial only, and green if fully tracked by the camera. -This logic is in the QA_MoCoAll blueprint. Change 3291601 on 2017/02/07 by Jeff.Fisher UEVR-536 PSVR motion controller tracking problem with multiple controllers -Previous code called GetRelativeTransform from the render thread, but the game thread could update it at any time. This caches that transform so that it can be safely used in the render thread. #jira UEVR-536 #review-3384107 @Ryan.Vance Change 3292460 on 2017/02/08 by Jeff.Fisher PS4 sceVrTrackerGetResult() error warning logging improved, and explanatory comment added. Change 3308771 on 2017/02/17 by Keli.Hlodversson Rename GoogleVR console commands #jira UEVR-412 Change 3309156 on 2017/02/17 by Keli.Hlodversson Track changes in r.ScreenPercentage on GoogleVR and set RenderTargetSize accordingly. Change 3311999 on 2017/02/20 by Keli.Hlodversson Create a default implementation for RecordAnalytics. Also create an initial stub for FHeadMountedDisplayBase for future default implementations of common HMD functionality. Make implementing IHeadMountedDisplay::GetDeviceName mandatory instead of defaulting to "Unknown" #jira UE-21878 #jira UEVR-213 Change 3313467 on 2017/02/20 by Ryan.Vance #jira UE-41604 3278583 pCustomPresent->AllocateRenderTargetTexture may return false, if we blindly return true we can end up with an invalid render target since the fall back sceneviewport will be skipped. 3278536 Adding ovrError_NoHmd to our sanity check in OnStartGameFrame. Change 3314002 on 2017/02/21 by Keli.Hlodversson Fix compilation on PS4 and Linux Change 3326722 on 2017/03/01 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) Integrating 4.15 from main. Change 3327567 on 2017/03/01 by Jeff.Fisher UEVR-588 Oculus crash on "stereo on" when the proximity sensor is not triggered. Duplicating from Release-4.15 cl 3327481, 3327542 -Don't ovr_SubmitFrame when the layers need to be recreated. They stay dirty until rendering is unpaused. #jira UEVR-588 #review-3384107 Change 3328098 on 2017/03/01 by Jeff.Fisher 4.15 merge fixes -Fixed deprecated enum name function usage. -Fixed world scale usage in GoogleVRController. -Fixed compile break in PS4Tracker. Change 3328271 on 2017/03/01 by Jeff.Fisher 2.15 merge -restroging GoogleVRController::GetWorldToMetersScale... cause it is used everywhere. Change 3328307 on 2017/03/01 by Jeff.Fisher 4.15 merge -More googlevr worldscale fixes. Change 3328312 on 2017/03/01 by Jeff.Fisher 4.15 merge -removing 2 unused includes Change 3330610 on 2017/03/02 by Jeff.Fisher 4.15 merge -fixing linux build Change 3333952 on 2017/03/06 by Keli.Hlodversson Implement common stereo layer management base class and use it in SteamVR and PS4. Fixes an outstanding bug in SteamVR where texures are updated every frame regardles of whether the continous update flag is set or not. #jira UEVR-628 #jira UE-42555 Change 3334961 on 2017/03/07 by Keli.Hlodversson Add missing include to fix non-unity builds Change 3336200 on 2017/03/07 by Keli.Hlodversson Fix compilation issues. (https://ec-01.epicgames.net/commander/link/jobDetails/jobs/7568252?jobName=UE4+Dev-VR+-+CL+3334961+-+Nightly+Build&s=Jobs) * Pre VS2015 compilers don't like mixing wide and unmarked strings in concatenation. Unfortunately LOCTEXT hides the call to the TEXT macro, completely hinding the prefix (which only gets added to the first fragment.) * Switch apparently doesn't know how to format a size_t for analytics either. Also: Typo in backwards compatibility command name alias Change 3337347 on 2017/03/08 by Jeff.Fisher UE-42631 Stereo off while prox sensor uncovered causes low framerate -Setting maxfps appropriately on 'stereo on/off'. #review-3384107 #jira UE-42631 Change 3338385 on 2017/03/08 by Ryan.Vance r.DisableDistortion was only being used for the mobile renderer Change 3342301 on 2017/03/10 by patrickr.donovan Test updates to TM-VRSmoke. Increased lightmap resolution on QA_MeshTypes meshes to improve readbility and reliablility of tests involving said asset. Rebuilt lighting. Change 3348133 on 2017/03/15 by Ryan.Vance Moving mono cvars to scene rendering to avoid cross module references. There's not a good reason to have them in the hmd module anyway. Change 3348836 on 2017/03/15 by Ryan.Vance Direct multi-view support for gear vr Monoscopic far field with multi-view (blit and direct) support for gear vr Support for translucent objects on both sides of the mono clip plane (due to a sorting issue, objects that straddle the plane composite incorrectly) Fixed missing discards/clears in the multi-view blit Change 3348843 on 2017/03/15 by Ryan.Vance Fixing color/depth target size mismatch when screen percentage scaling results in a size that isn't divisible by 16. Change 3349276 on 2017/03/16 by Keli.Hlodversson Fixing compile errors in GoogleVR after merge from main. Change 3350932 on 2017/03/16 by Ryan.Vance Re-enabling the gearvr plugin on windows. Change 3351977 on 2017/03/17 by Jeff.Fisher Fixing masked member variable. Change 3352314 on 2017/03/17 by Ryan.Vance We need to ensure that we don't select different lod levels for each eye. Change 3352993 on 2017/03/17 by Nick.Whiting Integrating CL 3345824 from Android-DevVR to Dev-VR. Support for device depth pass in SceneCaptureComponent2D Change 3355185 on 2017/03/20 by Nick.Whiting Added ability to disable the autoloading splash screen, which would prevent the hide splash screen node from ever working Change 3355676 on 2017/03/20 by Nick.Whiting PR #3384: [GNUX] SteamVR, OpenGL patch. (Contributed by yaakuro), with some minor modifications Change 3357286 on 2017/03/21 by Jeff.Fisher Fixing GenerateProjectFiles, looks like the .config. was removed from these references in main some time ago. Change 3357435 on 2017/03/21 by Jeff.Fisher Fixing editor build break, looks like a merge mistake. Change 3359960 on 2017/03/23 by Keli.Hlodversson Prevent potential crash when drawing tracking sensor location. Also only fetch HMD location once instead of once per tracking sensor. Change 3361230 on 2017/03/23 by Jeff.Fisher Fixing linux build opengl include problem... maybe. Change 3361638 on 2017/03/23 by Jeff.Fisher Another guess at fixing linux build. Change 3364224 on 2017/03/24 by Keli.Hlodversson Initial implementation of UEVR-576 - Base emulated layer implementation #jira UEVR-668 - Base emulated layer implementation: Initial framework for overrideable default implementation #jira UEVR-669 - Base emulated layer implementation: Face Locked Layers Support #jira UEVR-670 - Base emulated layer implementation: Tracker Locked Layers Support #jira UEVR-671 - Base emulated layer implementation: World Locked Layers Support #jira UEVR-672 - Base emulated layer implementation: Add support for optionally rendering face locked layers into a separate layer Change 3364242 on 2017/03/24 by Keli.Hlodversson SteamVR layers do not support negatve Layer priorities Change 3364263 on 2017/03/24 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) Monoscopicfarfieldrendering was just 'accept source', Ryan is going to look at fixing it up. Change 3364472 on 2017/03/24 by Jeff.Fisher Merge fix Change 3364475 on 2017/03/24 by Jeff.Fisher Fixing gearvr include. Change 3364486 on 2017/03/24 by Jeff.Fisher merge fix Change 3364532 on 2017/03/24 by Ryan.Vance pso update for mono rendering and stereo layers. Change 3364599 on 2017/03/24 by Ryan.Vance Oculus changes for SI1.12 Change 3365159 on 2017/03/26 by Jeff.Fisher include fix Change 3365182 on 2017/03/26 by Jeff.Fisher include fix Change 3366087 on 2017/03/27 by Ryan.Vance Remaining files from Oculus changes for SI1.12 merge request. Fixing a bug in OnlineSubsystem. Temporarily changing the eye padding change to be a shader clear to work around a clear color binding issue. Change 3366492 on 2017/03/27 by Ryan.Vance #jira UE-43294 Moved the clear before we setup state for drawing the mirror window content. It was stomping over state after the pso changes. Going to leave the shader clear in the rift prerender for clearing the eye padding for now. Change 3366929 on 2017/03/27 by Ryan.Vance Fixing compile error Change 3368549 on 2017/03/28 by Jeff.Fisher Merging Change: 3357998 from //UE4/Partner-Google-VR/Engine/... to Dev-VR Upgrade Google VR Plugin to v1.3: *Upgraded GVR NDK to 1.30.0 *Changed some BlueprintFunction to use BlueprintPure *Add the missing bDaydream flag in UEDeployAndroid.cs #review-3384107 Change 3368975 on 2017/03/28 by Ryan.Vance CIS clean up #jira UE-43428, UE-43429, UE-43426, UE-43427 Change 3369028 on 2017/03/28 by Ryan.Vance This is not exacly 'correct', but it's at least what the code was trying to do. Change 3370203 on 2017/03/29 by Ryan.Vance Adding gear vr controller component support. Change 3370918 on 2017/03/29 by Ryan.Vance Merging 3370569 using Partner-Google-VR_to_DevVR Change 3371030 on 2017/03/29 by Ryan.Vance Fixing linux build errors #jira UE-43426 Change 3371036 on 2017/03/29 by Ryan.Vance Oculus 4.16 integration. Not terribly happy with the use of std::string. They promised to clean this up for the next release. Change 3373495 on 2017/03/30 by Jeff.Fisher Merging from Dev-Main, in preparation for 4.16 Change 3373578 on 2017/03/30 by Jeff.Fisher build break, one comma short Change 3373870 on 2017/03/31 by Jeff.Fisher Include order fix. Change 3374001 on 2017/03/31 by Keli.Hlodversson Use DefaultStereoLayers as base for Morpheus implementation. #jira UEVR-709 #jira UE-42919 #rb: Jeff.Fisher Change 3374004 on 2017/03/31 by Keli.Hlodversson Fix rendering for the default Stereo Layers implementation on mobile. Depth test was set to "Never" instead of "Always" Destination texture on GLES is flipped on the Y axis, the coordinates are reversed in the shade when compiled on the relevant platforms. Change 3375125 on 2017/03/31 by Jeff.Fisher UE-43506 Ensure using VRPreview with GoogleVR -Removed the ensure, there is code in there to handle that case, and it works. #jira UE-43506 Change 3375294 on 2017/03/31 by nick.bullard Resaving Plugin content to resovle "saved with empty engine version" #jira UE-43537 Change 3375480 on 2017/03/31 by Jeff.Fisher UEVR-9 PSVR: Social Screen Support -Experimental social screen support for 4.16. -This does the basics of driving output through the Aux port in the proper format for display on the mirror monitor. -Only supports 30fps on the mirror monitor. 60fps will require the implementation of sony system dialogs to deal with incompatable system features (video streaming, remote play). -There is a project setting in Morpheus, under experiemental bEnableSocialScreenSeparateMode. This must be set to true to use this feature. When it is false we avoid allocating the back buffers. -MorpheusFunctionLibrary blueprints now have a node "SetSocialScreenMode" which can switch between SystemMirror (hardware supported mirroring), SeparateTest (alternates black and white), SeparateTexture (displays a texture, eg a render target, specified via blueprint), and SeparateMirror(puts the hmd render buffer on screen - which is both eyes, like a debug mode). -Also finally updated the bEnabled flag in project settings to tell people it's only for PC. #jira UEVR-9 #review-3384107 Change 3375540 on 2017/03/31 by Ryan.Vance #jira UE-43504 Fixing android build break when using a 64 bit isa. Change 3375655 on 2017/03/31 by Jeff.Fisher Fixing missing RGBAToYUV shader problem -This at least unblocks our process. Will revisit before zbr. Change 3375820 on 2017/04/01 by Jeff.Fisher Fixing linux build warning about HAS_MORPHEUS Change 3376050 on 2017/04/02 by Jeff.Fisher UE-43515 Step 'UE4Editor Static Analysis Win64' - Module.OnlineSubsystemOculus.cpp Warnings -Temporary fix for static analysis annotation warnings in OnlineSubsytemOculus. Longer term plan is to eliminate the use of the headers that trigger the warnings. -Just wrap all standard headers in static analysis disables. #jira UE-43515 Change 3376609 on 2017/04/03 by Jeff.Fisher Fixing rgbatoyuvshader include. Change 3377001 on 2017/04/03 by Jeff.Fisher UE-43547 Launch On PS4 fails during Run command - Missing global shader FRGBAToYUV420CS - shader c++ must be compiled so that it can be cooked for ps4. #jira UE-43547 Change 3379858 on 2017/04/04 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) pulling main this should get us ps4 sdk 4.508 Change 3379938 on 2017/04/04 by Ryan.Vance #jira UE-43548 If stereo layers are not being used, don't setup overlay targets as we will never clear/initialize them. The clear happens as part of the default layers PostRenderView_RenderThread call which wont be called if layers aren't being used in the scene. Change 3381519 on 2017/04/05 by Jeff.Fisher UEVR-733 PS4 sdk 4.500 hmd connection api changes break hmd connect. -Handling failure of sceHmdGetDeviceInformation if the hmd is powered off. It now returns an error code about an invalid handle in that case, rather than reporting unready. We just treat the error code like an unready status. #jira UEVR-733 #review-3384107 Change 3382019 on 2017/04/05 by Ryan.Vance Linux: add Vulkan support from dev editor: 3381593 Change 3382021 on 2017/04/05 by Ryan.Vance SteamVR on Linux using Vulkan OpenVR rev to 1_0_6 PR #3412: [GNUX] Initial support for SteamVR using Vulkan on GNUX platform. (Contributed by yaakuro) Change 3382076 on 2017/04/05 by Ryan.Vance Fixing linux steamvr lib path. It changed to something less silly in 1.0.6 Removing the steamvr plugin from the white list for linux. It's looking for a runtime that no one will have installed. Change 3383237 on 2017/04/06 by Ryan.Vance #jira UE-43732 Fixing Android compile issues. We can't wrap portions of a macro with a definie. This should probably be some sort of recursive macro thing since there's so much overlap. Good enough for now. Change 3383353 on 2017/04/06 by Ryan.Vance Fixing include cycles. Change 3383509 on 2017/04/06 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) merging the stuff from dev-mobile [CL 3384106 by Ryan Vance in Main branch]
2017-04-06 22:03:51 -04:00
const bool bValidMultiViewDepthTarget = !DepthStencilTarget || DepthStencilTarget->Target == GL_TEXTURE_2D_ARRAY;
const bool bUsingArrayTextures = (bRenderTargetsDefined) ? (RenderTargets[0]->Target == GL_TEXTURE_2D_ARRAY && bValidMultiViewDepthTarget) : false;
const bool bMultiViewCVar = CVarMobileMultiView && CVarMobileMultiView->GetValueOnAnyThread() != 0;
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3145687) #lockdown Nick.Penwarden #rb Merge ========================== MAJOR FEATURES + CHANGES ========================== Change 3094167 on 2016/08/18 by Jeff.Fisher UEVR-97 Morpheus HMD tracking needs to wait until HMD is fully tracked. -Morpheus CALIBRATING/NOT_TRACKED tracking state hmd orientation update disabled and delegates added to present instructions to the user. This behavior is controlled by morpheus ini setting bDisableHMDOrientationUntilHMDHasBeenTracked, but defaulted to true to avoid subtly bad user experiences. #review-3094106 @chad.taylor #jira UEVR-97 Change 3104799 on 2016/08/29 by Jeff.Fisher UEVR-178 Morpheus HMD Black crescents -Switched reprojection frame time for 60/120 mode from 120hz to 60hz so we much better predict where the hmd will be pointing when the frame we are about to render is actually displayed, and are run off the edge of it less often and less severely. This makes the black crescent artifacts only just visible during very fast head turning. The kWrapModeMirror change, which will be submitted separately, makes the left and right crescents invisible to me. -Renamed the functions for setting the prediction info in the PS4Tracker. -Added render frame parameters to sony reprojection functions, these can help with debugging reprojection. -Added commented out sce call to get the reprojection debug data. Not allowed to submit an executable that calls it, but its nice to at least know where one can put it. May improve this later. -Wrapped PS4Tracker->Synchronize call in a check that the tracker handle is valid, because I managed to get it called when it wasn't (probably during hmd power off testing, but I don't remember now). It should be fine to not do it if the tracker is not functioning. #review-3104780 chad.taylor #jira UEVR-178 Change 3108423 on 2016/08/31 by Jeff.Fisher Morpheus Config Improvements. -UEVR-138 Morpheus HMD reprojection wrap mode config setting -Can now switch between wrap mode Mirror and ClampToBorder. Mirror is the default. -Made bDisableHMDOrientationUntilHMDHasBeenTracked editable in UE4Editor project settings. -Using generic project setting for bStartInVR, removed the morpheus specific one. #jira UEVR-138 #review-3106999 @nick.whiting Change 3111231 on 2016/09/01 by Jeff.Fisher Fixed bStartInVR ini setting. -Initial implementation worked via a generic EnableStereo call, which worked, but happened after the hmd setup dialog, which is not what I wanted. -Also fixed a tracking frame mismatch assert that hit when I powered the hmd off once, causing it to lose tracking. Its ok that it doesn't update in that circumstance. #review-3111211 @ryan.vance Change 3115196 on 2016/09/06 by Keli.Hlodversson #jira UEVR-128 Map move controller Select button to Invalid, as it is always handled by the system Change 3116425 on 2016/09/07 by Chad.Taylor PSVR: stereo layers implementation Change 3116593 on 2016/09/07 by Jeff.Fisher UEVR-126 Morpheus HMD connect dialog cancel reactions -VR only apps can't allow the player to cancel out of the hmd setup dialog, so lets just pop the dialog up again (sony were ok with a licencee doing this) if an ini setting says to do that. -VR/2D apps might want to switch to 2d if the player cancels out of the hmd setup dialog, so there is an ini setting for that. -A delegate only implementation is also provided for apps that want to do something else. This leaves the game rendering in VR mode, and fires the delegate. -Refactored to better separate successful HMD acquisition from stereo rendering. This was necessary to support the delegate only option on startup. If you start in vr mode with your hmd off and cancel the dialog stereo rendering now starts with default values for the hmd hardware stats (as read from my pvt) instead of crashing trying to use uninitialized data. When an hmd is connected its values will be read. -Refactored to ensure reprojection starts immediately when we call StartReprojection. #jira UEVR-126 #review-3116221 Change 3116754 on 2016/09/07 by Keli.Hlodversson bPixelDensityAdaptive is a bool and not a float property Change 3117692 on 2016/09/08 by Jeff.Fisher UEVR-135 Morpheus HMD recent feature error reporting UEVR-173 2DVR flexibility (UTexture) -Error log for sceHmdReprojectionSetOutputMinColor failure. -Made the parameter for 2dVR a UTexture* instead of a UTexture2D*, so it can be a rendertarget, etc. -Added error logs for missing texture, invalid texture, wrong texture format to 2DVR. #jira UEVR-135 #jira UEVR-173 #review-3116955 @keli.hloedversson Change 3117990 on 2016/09/08 by Jeff.Fisher UEVR-127 Morpheus HMD removal reaction -Added VRHeadsetPutOnHead and VRHeadsetRemovedFromHead delegates, and implemented them for Morpheus. #jira UEVR-127 #review-3117968 @keli.hlodversson Change 3120198 on 2016/09/09 by Jeff.Fisher MorpheusReprojector frame complete wait error log -Now log a warning if the sceKernalWaitEqueue returns an error. It not a problem if this happens rarely, but something is very broken if it starts happening continuously. Change 3121754 on 2016/09/12 by Keli.Hlodversson #jira UE-21878 - Also emit VR initialization analytics events in the editor. Change 3122311 on 2016/09/12 by Nick.Whiting Merging fix for Adreno devices rendering black from 4.13.1 Change 3123057 on 2016/09/13 by Keli.Hlodversson #jira UE-30097 Use the current value of r.ScreenPercentage on Occulus Rift if it's explicitly set. * If the SetBy part of the flags for the console var is SetBy_Constructor, then ignore the value. * If it's SetBy_Scalability, then ignore it if it equals 100 * Else, call SetScreenPercentage using the current value The obsolete HMD SCREENPERCENTAGE console command is still available and will override the setting until r.ScreenPercentage is modified the next time. Change 3123200 on 2016/09/13 by Chad.Taylor PS4 Stereo Layer double buffering. Since the overlays are reprojected at 120hz but rendered at 60hz we need to render to a separate buffer than the one being used by reprojection. Change 3125845 on 2016/09/14 by Keli.Hlodversson #jira UE-33996 Add hmd=<name> command line option to allow overriding which HMD module is used. Renamed GetModulePriorityKeyName to simply GetModuleKeyName, as this name is now also used to match against the command line options. Change 3127293 on 2016/09/15 by Jeff.Fisher UEVR-225 Morpheus HMD top and bottom black crescents -The hidden and visible area meshes for morpheus were too restrictive. Nudged them out a bit, no black crescents at the top and bottom of the screen. We are rendering a few more pixels now though. #review-3127145 @ryan.vance #jira UEVR-225 Change 3130635 on 2016/09/19 by Jeff.Fisher UEVR-226 Morpheus HMD mirrored fill wrong on outer edges -The setting was never being used, leaving the wrap mode at 0 aka kWrapModeWrap. -Refactored how the setting is applied so it works, and is less convoluted. #jira UEVR-226 #review-3129403 Change 3131615 on 2016/09/19 by Keli.Hlodversson #jira UE-29341. Update Chaperone bounds when SteamVR tells us they have changed Change 3136527 on 2016/09/22 by Keli.Hlodversson Don't depend on the current state of the VR subsystem when exiting PIE mode to decide whether the main window should be restored. Instead always restore it if it was minimized at the start. Change 3136652 on 2016/09/22 by Keli.Hlodversson Allow shutting down Steam VR subsystem without shutting down the Steam VR plugin completely in response to quitting from the SteamVR overlay. Enabling stereo rendering again will reinitialize SteamVR. This is useful when using PIE in VR mode as it allows entereing it again without restarting the editor. Also fixes crashes by first disabinge stereo rendering a short while before shutting down the VR subsystem. #jira UE-35940 Change 3138901 on 2016/09/23 by Ryan.Vance Merging 3138521 using OdinToDevVR to bring over temporary forward lighting ISR changes for 4.14 Change 3141614 on 2016/09/27 by Keli.Hlodversson Implement GetNumOfTrackingSensors and GetTrackingSensorProperties on SteamVR. #jira UE-32994 Change 3141948 on 2016/09/27 by Jeff.Fisher UEVR-242 Is AddControllerYawInput not allowed when morpheus is enabled? -Indeed it did not work. Looks like morpheus would not accumulate the yaw, so it would be reset every frame. I made the implementation of ApplyHmdRotation very similar to the one used for occulus (also similar to other platforms) to fix this. #jira UEVR-242 #review-3141933 keli.hlodversson Change 3143484 on 2016/09/28 by Nick.Whiting Integrating Oculus 1.8 SDK support, includes support for cylinder and cubemap stereo layers Change 3143517 on 2016/09/28 by Chad.Taylor Merging PS4Tracker fixes from Release-4.13 into Dev-VR Change 3143805 on 2016/09/28 by Keli.Hlodversson #jira UE-36478 Workaround to make world to meters scale apply correctly to Occulus controllers while running in PIE Change 3143943 on 2016/09/28 by Nick.Whiting Merging latest drop from OSVR Change 3144221 on 2016/09/28 by Keli.Hlodversson Implement GetTrackingSensorProperties on PS4 #jira UE-32994 Change 3144352 on 2016/09/28 by Ryan.Vance Initial implementation of mobile multi-view. This is non-functioning and requires a lot more work, but enough of the framework exists to make the 4.14 branch for an experimental release. Change 3144585 on 2016/09/29 by Jeff.Fisher UEVR-14 PSVR Support for 90Hz to 90Hz, and 120Hz to 120Hz -Enum setting added for the three frame sequences. -90Hz mode is trying to run camera updates at 90hz, but they can only run at 60 so every third one fails. This works, but its dubious. -Feature marked as experimental for now because of that 90hz tracking issue, and the lack of testing. -Defaulting to 60/120. #jira UEVR-14 #review-3143486 chad.taylor nick.whiting Change 3145263 on 2016/09/29 by Nick.Whiting Fix for constructor initialization order in StereoLayerComponent, which threw a warning on Clang Change 3145536 on 2016/09/29 by Nick.Whiting Fixes for project files to prevent mystery pop up from CAPI Change 3145663 on 2016/09/29 by Keli.Hlodversson PSVR: Make sure the camera orientation returned from GetTrackingSensorProperties points in the right direction. Change 3145670 on 2016/09/29 by Keli.Hlodversson For some reason the orientation of the Oculus tracking sensor is reported as pointing backwards. This flips it around to face front Change 3145687 on 2016/09/29 by Chad.Taylor VR splash screen support [CL 3146243 by Nick Whiting in Main branch]
2016-09-30 01:16:13 -04:00
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3383750) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3012064 on 2016/06/13 by Nick.Whiting Merging Main -> DevVR Change 3048060 on 2016/07/13 by Nick.Whiting Integrating CL 3045721 from //depot/Partners/Google/AndroidVR-DevVR Upgrade Android and iOS GVR SDK to the latest. Fix the flipped vignette issue when using Unreal's post processing distortion. Change the Daydream & Cardboard mode to use scanline racing. Deprecate the ability to turn off individual UI elements. Change 3235307 on 2016/12/14 by Keli.Hlodversson Filter out excluded HMD modules during FEngineLoop:PreInitHMDDevice. The final selection still happens in UEngine::InitializeHMDDevice as all HMD plugins have not been loaded during PreInit Change 3235308 on 2016/12/14 by Ryan.Vance #jira UEVR-478 Monoscopic far field improvements Shader changes are now gated behind the read only cvar vr.MonoscopicFarField. Changing this requires a shader compile. Moved the mono rendering mode to the cvar vr.MonoscopicFarFieldMode. This is writable, so users can enable/disable mono rendering on the fly if the above cvar is enabled. Only write to the alpha channel in the mobile base pass if the object is opaque and MONOSCOPIC_FAR_FIELD is defined. Addressed code review comments. Change 3235397 on 2016/12/14 by Keli.Hlodversson [Oculus] Only enable GearVR platform on Windows if Oculus service is running Original author: Loren.McQuade Change 3235762 on 2016/12/14 by Keli.Hlodversson Add explicit parentheses to placate the build bots. Change 3242318 on 2016/12/21 by Ryan.Vance Working around pixel density crash. Change 3242522 on 2016/12/21 by Ryan.Vance Missing flag clear so our adaptive test was always returning true. Change 3243173 on 2016/12/22 by Ryan.Vance Integrating post present callback implementation from 4.14.1 Change 3248633 on 2017/01/05 by Keli.Hlodversson Copying //Tasks/UE4/Dev-VR-Refactoring to Dev-VR-Minimal (//UE4/Dev-VR-Minimal) Change 3248723 on 2017/01/05 by Keli.Hlodversson Fix after merge. EnablePositionalTracking no longer exists. Change 3249484 on 2017/01/06 by Keli.Hlodversson Add missing includes Change 3249714 on 2017/01/06 by Keli.Hlodversson Remove monolithic header include Change 3249980 on 2017/01/06 by Keli.Hlodversson SteamVR: Remove leftover unused WindowMirrorMode member variable Change 3252432 on 2017/01/10 by Keli.Hlodversson Submitting change by Loren McQuade to fix monolithic builds. Unshelved from pending changelist '3251436': Change 3257373 on 2017/01/13 by Keli.Hlodversson #jira UEVR-411: Finish renaming/removing/remodelling the remaining Oculus (Rift+GearVR) commands #jira UEVR-412: Rename and merge remaining Morpheus console commands #jira UEVR-417: Remove Exec from IHeadMountedDisplay Change 3269971 on 2017/01/24 by Jeff.Fisher UEVR-498 move controller is missing world to meters UEVR-522 PS4 motion controller worldscale support. -Passing world to meters scale into getControllerOrientationAndPosition because the thing asking about it ought to be part of a world, and know what it should be. This also avoids making PS4 motion controllers dependent on the HMD. Note Google VR Controller doesn't do position, so doesnt' care about scale. Oculus already had internal threadsafe tracking of world scale, so I left that. Steam handles world scale below our input level. -Also adding PlayerIndex member to FSceneView so we can figure out which view the MotionControllerComponent should get its worldscale from for the late render thread update. #jira UEVR-498 #review-3384107 Change 3288308 on 2017/02/06 by Jeff.Fisher UEVR-517 Detect MotionController Connectivity -PS4 can only track 2 controllers and 1 hmd. Support for dealing with that is needed. -Also need to support multiple motion controller components mapped to a single controller. Licencees have done that before. -Created a new interface IMotionTrackingSystemManagement, and implements it for PS4Tracker on PS4. -Created a MotionTrackedDeviceFunctionLibrary to expose that interface to blueprint. -With those one can enable and disable tracking on ps4 controllers and query their state to stay within the controller tracking limit. -PS4Tracker also keeps a blackboard of the enable/disable state so that one can enable or disable controllers that have not been connected yet, and have them enable tracking or not when they are connected. -DS4 controller no longer jumps back to 000 if it loses tracking. #review-3384107 #jira UEVR-517 Change 3288309 on 2017/02/06 by Keli.Hlodversson Add file missing from CL#3257373. Change 3288311 on 2017/02/06 by Jeff.Fisher UEVR-517 Detect MotionController Connectivity - Test content. -tm-motionControllers has a third mode where all playstation motion controllers for player 0 are availalbe. You can toggle them to track or not with ctrl-P,G,L,R for pad, gun, leftmove, rightmove or with alt-P,G,L,R. Ctrl tests doing so via MotionControllerComponent. Alt tests doing so by player index and controller type enum. -ctrl-A disables tracking of all controllers -alt-A disables tracking of all controllers for player 0 -ctrl-D toggles enabling new controllers by default -Also fixed one button not working in one of the other test modes for the Aim (gun) controller. -The controller 'models' have an arrow out the front. It is black if disabled. Red if enabled, but no tracker is active, yellow if tracked but inertial only, and green if fully tracked by the camera. -This logic is in the QA_MoCoAll blueprint. Change 3291601 on 2017/02/07 by Jeff.Fisher UEVR-536 PSVR motion controller tracking problem with multiple controllers -Previous code called GetRelativeTransform from the render thread, but the game thread could update it at any time. This caches that transform so that it can be safely used in the render thread. #jira UEVR-536 #review-3384107 @Ryan.Vance Change 3292460 on 2017/02/08 by Jeff.Fisher PS4 sceVrTrackerGetResult() error warning logging improved, and explanatory comment added. Change 3308771 on 2017/02/17 by Keli.Hlodversson Rename GoogleVR console commands #jira UEVR-412 Change 3309156 on 2017/02/17 by Keli.Hlodversson Track changes in r.ScreenPercentage on GoogleVR and set RenderTargetSize accordingly. Change 3311999 on 2017/02/20 by Keli.Hlodversson Create a default implementation for RecordAnalytics. Also create an initial stub for FHeadMountedDisplayBase for future default implementations of common HMD functionality. Make implementing IHeadMountedDisplay::GetDeviceName mandatory instead of defaulting to "Unknown" #jira UE-21878 #jira UEVR-213 Change 3313467 on 2017/02/20 by Ryan.Vance #jira UE-41604 3278583 pCustomPresent->AllocateRenderTargetTexture may return false, if we blindly return true we can end up with an invalid render target since the fall back sceneviewport will be skipped. 3278536 Adding ovrError_NoHmd to our sanity check in OnStartGameFrame. Change 3314002 on 2017/02/21 by Keli.Hlodversson Fix compilation on PS4 and Linux Change 3326722 on 2017/03/01 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) Integrating 4.15 from main. Change 3327567 on 2017/03/01 by Jeff.Fisher UEVR-588 Oculus crash on "stereo on" when the proximity sensor is not triggered. Duplicating from Release-4.15 cl 3327481, 3327542 -Don't ovr_SubmitFrame when the layers need to be recreated. They stay dirty until rendering is unpaused. #jira UEVR-588 #review-3384107 Change 3328098 on 2017/03/01 by Jeff.Fisher 4.15 merge fixes -Fixed deprecated enum name function usage. -Fixed world scale usage in GoogleVRController. -Fixed compile break in PS4Tracker. Change 3328271 on 2017/03/01 by Jeff.Fisher 2.15 merge -restroging GoogleVRController::GetWorldToMetersScale... cause it is used everywhere. Change 3328307 on 2017/03/01 by Jeff.Fisher 4.15 merge -More googlevr worldscale fixes. Change 3328312 on 2017/03/01 by Jeff.Fisher 4.15 merge -removing 2 unused includes Change 3330610 on 2017/03/02 by Jeff.Fisher 4.15 merge -fixing linux build Change 3333952 on 2017/03/06 by Keli.Hlodversson Implement common stereo layer management base class and use it in SteamVR and PS4. Fixes an outstanding bug in SteamVR where texures are updated every frame regardles of whether the continous update flag is set or not. #jira UEVR-628 #jira UE-42555 Change 3334961 on 2017/03/07 by Keli.Hlodversson Add missing include to fix non-unity builds Change 3336200 on 2017/03/07 by Keli.Hlodversson Fix compilation issues. (https://ec-01.epicgames.net/commander/link/jobDetails/jobs/7568252?jobName=UE4+Dev-VR+-+CL+3334961+-+Nightly+Build&s=Jobs) * Pre VS2015 compilers don't like mixing wide and unmarked strings in concatenation. Unfortunately LOCTEXT hides the call to the TEXT macro, completely hinding the prefix (which only gets added to the first fragment.) * Switch apparently doesn't know how to format a size_t for analytics either. Also: Typo in backwards compatibility command name alias Change 3337347 on 2017/03/08 by Jeff.Fisher UE-42631 Stereo off while prox sensor uncovered causes low framerate -Setting maxfps appropriately on 'stereo on/off'. #review-3384107 #jira UE-42631 Change 3338385 on 2017/03/08 by Ryan.Vance r.DisableDistortion was only being used for the mobile renderer Change 3342301 on 2017/03/10 by patrickr.donovan Test updates to TM-VRSmoke. Increased lightmap resolution on QA_MeshTypes meshes to improve readbility and reliablility of tests involving said asset. Rebuilt lighting. Change 3348133 on 2017/03/15 by Ryan.Vance Moving mono cvars to scene rendering to avoid cross module references. There's not a good reason to have them in the hmd module anyway. Change 3348836 on 2017/03/15 by Ryan.Vance Direct multi-view support for gear vr Monoscopic far field with multi-view (blit and direct) support for gear vr Support for translucent objects on both sides of the mono clip plane (due to a sorting issue, objects that straddle the plane composite incorrectly) Fixed missing discards/clears in the multi-view blit Change 3348843 on 2017/03/15 by Ryan.Vance Fixing color/depth target size mismatch when screen percentage scaling results in a size that isn't divisible by 16. Change 3349276 on 2017/03/16 by Keli.Hlodversson Fixing compile errors in GoogleVR after merge from main. Change 3350932 on 2017/03/16 by Ryan.Vance Re-enabling the gearvr plugin on windows. Change 3351977 on 2017/03/17 by Jeff.Fisher Fixing masked member variable. Change 3352314 on 2017/03/17 by Ryan.Vance We need to ensure that we don't select different lod levels for each eye. Change 3352993 on 2017/03/17 by Nick.Whiting Integrating CL 3345824 from Android-DevVR to Dev-VR. Support for device depth pass in SceneCaptureComponent2D Change 3355185 on 2017/03/20 by Nick.Whiting Added ability to disable the autoloading splash screen, which would prevent the hide splash screen node from ever working Change 3355676 on 2017/03/20 by Nick.Whiting PR #3384: [GNUX] SteamVR, OpenGL patch. (Contributed by yaakuro), with some minor modifications Change 3357286 on 2017/03/21 by Jeff.Fisher Fixing GenerateProjectFiles, looks like the .config. was removed from these references in main some time ago. Change 3357435 on 2017/03/21 by Jeff.Fisher Fixing editor build break, looks like a merge mistake. Change 3359960 on 2017/03/23 by Keli.Hlodversson Prevent potential crash when drawing tracking sensor location. Also only fetch HMD location once instead of once per tracking sensor. Change 3361230 on 2017/03/23 by Jeff.Fisher Fixing linux build opengl include problem... maybe. Change 3361638 on 2017/03/23 by Jeff.Fisher Another guess at fixing linux build. Change 3364224 on 2017/03/24 by Keli.Hlodversson Initial implementation of UEVR-576 - Base emulated layer implementation #jira UEVR-668 - Base emulated layer implementation: Initial framework for overrideable default implementation #jira UEVR-669 - Base emulated layer implementation: Face Locked Layers Support #jira UEVR-670 - Base emulated layer implementation: Tracker Locked Layers Support #jira UEVR-671 - Base emulated layer implementation: World Locked Layers Support #jira UEVR-672 - Base emulated layer implementation: Add support for optionally rendering face locked layers into a separate layer Change 3364242 on 2017/03/24 by Keli.Hlodversson SteamVR layers do not support negatve Layer priorities Change 3364263 on 2017/03/24 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) Monoscopicfarfieldrendering was just 'accept source', Ryan is going to look at fixing it up. Change 3364472 on 2017/03/24 by Jeff.Fisher Merge fix Change 3364475 on 2017/03/24 by Jeff.Fisher Fixing gearvr include. Change 3364486 on 2017/03/24 by Jeff.Fisher merge fix Change 3364532 on 2017/03/24 by Ryan.Vance pso update for mono rendering and stereo layers. Change 3364599 on 2017/03/24 by Ryan.Vance Oculus changes for SI1.12 Change 3365159 on 2017/03/26 by Jeff.Fisher include fix Change 3365182 on 2017/03/26 by Jeff.Fisher include fix Change 3366087 on 2017/03/27 by Ryan.Vance Remaining files from Oculus changes for SI1.12 merge request. Fixing a bug in OnlineSubsystem. Temporarily changing the eye padding change to be a shader clear to work around a clear color binding issue. Change 3366492 on 2017/03/27 by Ryan.Vance #jira UE-43294 Moved the clear before we setup state for drawing the mirror window content. It was stomping over state after the pso changes. Going to leave the shader clear in the rift prerender for clearing the eye padding for now. Change 3366929 on 2017/03/27 by Ryan.Vance Fixing compile error Change 3368549 on 2017/03/28 by Jeff.Fisher Merging Change: 3357998 from //UE4/Partner-Google-VR/Engine/... to Dev-VR Upgrade Google VR Plugin to v1.3: *Upgraded GVR NDK to 1.30.0 *Changed some BlueprintFunction to use BlueprintPure *Add the missing bDaydream flag in UEDeployAndroid.cs #review-3384107 Change 3368975 on 2017/03/28 by Ryan.Vance CIS clean up #jira UE-43428, UE-43429, UE-43426, UE-43427 Change 3369028 on 2017/03/28 by Ryan.Vance This is not exacly 'correct', but it's at least what the code was trying to do. Change 3370203 on 2017/03/29 by Ryan.Vance Adding gear vr controller component support. Change 3370918 on 2017/03/29 by Ryan.Vance Merging 3370569 using Partner-Google-VR_to_DevVR Change 3371030 on 2017/03/29 by Ryan.Vance Fixing linux build errors #jira UE-43426 Change 3371036 on 2017/03/29 by Ryan.Vance Oculus 4.16 integration. Not terribly happy with the use of std::string. They promised to clean this up for the next release. Change 3373495 on 2017/03/30 by Jeff.Fisher Merging from Dev-Main, in preparation for 4.16 Change 3373578 on 2017/03/30 by Jeff.Fisher build break, one comma short Change 3373870 on 2017/03/31 by Jeff.Fisher Include order fix. Change 3374001 on 2017/03/31 by Keli.Hlodversson Use DefaultStereoLayers as base for Morpheus implementation. #jira UEVR-709 #jira UE-42919 #rb: Jeff.Fisher Change 3374004 on 2017/03/31 by Keli.Hlodversson Fix rendering for the default Stereo Layers implementation on mobile. Depth test was set to "Never" instead of "Always" Destination texture on GLES is flipped on the Y axis, the coordinates are reversed in the shade when compiled on the relevant platforms. Change 3375125 on 2017/03/31 by Jeff.Fisher UE-43506 Ensure using VRPreview with GoogleVR -Removed the ensure, there is code in there to handle that case, and it works. #jira UE-43506 Change 3375294 on 2017/03/31 by nick.bullard Resaving Plugin content to resovle "saved with empty engine version" #jira UE-43537 Change 3375480 on 2017/03/31 by Jeff.Fisher UEVR-9 PSVR: Social Screen Support -Experimental social screen support for 4.16. -This does the basics of driving output through the Aux port in the proper format for display on the mirror monitor. -Only supports 30fps on the mirror monitor. 60fps will require the implementation of sony system dialogs to deal with incompatable system features (video streaming, remote play). -There is a project setting in Morpheus, under experiemental bEnableSocialScreenSeparateMode. This must be set to true to use this feature. When it is false we avoid allocating the back buffers. -MorpheusFunctionLibrary blueprints now have a node "SetSocialScreenMode" which can switch between SystemMirror (hardware supported mirroring), SeparateTest (alternates black and white), SeparateTexture (displays a texture, eg a render target, specified via blueprint), and SeparateMirror(puts the hmd render buffer on screen - which is both eyes, like a debug mode). -Also finally updated the bEnabled flag in project settings to tell people it's only for PC. #jira UEVR-9 #review-3384107 Change 3375540 on 2017/03/31 by Ryan.Vance #jira UE-43504 Fixing android build break when using a 64 bit isa. Change 3375655 on 2017/03/31 by Jeff.Fisher Fixing missing RGBAToYUV shader problem -This at least unblocks our process. Will revisit before zbr. Change 3375820 on 2017/04/01 by Jeff.Fisher Fixing linux build warning about HAS_MORPHEUS Change 3376050 on 2017/04/02 by Jeff.Fisher UE-43515 Step 'UE4Editor Static Analysis Win64' - Module.OnlineSubsystemOculus.cpp Warnings -Temporary fix for static analysis annotation warnings in OnlineSubsytemOculus. Longer term plan is to eliminate the use of the headers that trigger the warnings. -Just wrap all standard headers in static analysis disables. #jira UE-43515 Change 3376609 on 2017/04/03 by Jeff.Fisher Fixing rgbatoyuvshader include. Change 3377001 on 2017/04/03 by Jeff.Fisher UE-43547 Launch On PS4 fails during Run command - Missing global shader FRGBAToYUV420CS - shader c++ must be compiled so that it can be cooked for ps4. #jira UE-43547 Change 3379858 on 2017/04/04 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) pulling main this should get us ps4 sdk 4.508 Change 3379938 on 2017/04/04 by Ryan.Vance #jira UE-43548 If stereo layers are not being used, don't setup overlay targets as we will never clear/initialize them. The clear happens as part of the default layers PostRenderView_RenderThread call which wont be called if layers aren't being used in the scene. Change 3381519 on 2017/04/05 by Jeff.Fisher UEVR-733 PS4 sdk 4.500 hmd connection api changes break hmd connect. -Handling failure of sceHmdGetDeviceInformation if the hmd is powered off. It now returns an error code about an invalid handle in that case, rather than reporting unready. We just treat the error code like an unready status. #jira UEVR-733 #review-3384107 Change 3382019 on 2017/04/05 by Ryan.Vance Linux: add Vulkan support from dev editor: 3381593 Change 3382021 on 2017/04/05 by Ryan.Vance SteamVR on Linux using Vulkan OpenVR rev to 1_0_6 PR #3412: [GNUX] Initial support for SteamVR using Vulkan on GNUX platform. (Contributed by yaakuro) Change 3382076 on 2017/04/05 by Ryan.Vance Fixing linux steamvr lib path. It changed to something less silly in 1.0.6 Removing the steamvr plugin from the white list for linux. It's looking for a runtime that no one will have installed. Change 3383237 on 2017/04/06 by Ryan.Vance #jira UE-43732 Fixing Android compile issues. We can't wrap portions of a macro with a definie. This should probably be some sort of recursive macro thing since there's so much overlap. Good enough for now. Change 3383353 on 2017/04/06 by Ryan.Vance Fixing include cycles. Change 3383509 on 2017/04/06 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) merging the stuff from dev-mobile [CL 3384106 by Ryan Vance in Main branch]
2017-04-06 22:03:51 -04:00
if (bUsingArrayTextures && FOpenGL::SupportsMobileMultiView() && bMultiViewCVar)
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3145687) #lockdown Nick.Penwarden #rb Merge ========================== MAJOR FEATURES + CHANGES ========================== Change 3094167 on 2016/08/18 by Jeff.Fisher UEVR-97 Morpheus HMD tracking needs to wait until HMD is fully tracked. -Morpheus CALIBRATING/NOT_TRACKED tracking state hmd orientation update disabled and delegates added to present instructions to the user. This behavior is controlled by morpheus ini setting bDisableHMDOrientationUntilHMDHasBeenTracked, but defaulted to true to avoid subtly bad user experiences. #review-3094106 @chad.taylor #jira UEVR-97 Change 3104799 on 2016/08/29 by Jeff.Fisher UEVR-178 Morpheus HMD Black crescents -Switched reprojection frame time for 60/120 mode from 120hz to 60hz so we much better predict where the hmd will be pointing when the frame we are about to render is actually displayed, and are run off the edge of it less often and less severely. This makes the black crescent artifacts only just visible during very fast head turning. The kWrapModeMirror change, which will be submitted separately, makes the left and right crescents invisible to me. -Renamed the functions for setting the prediction info in the PS4Tracker. -Added render frame parameters to sony reprojection functions, these can help with debugging reprojection. -Added commented out sce call to get the reprojection debug data. Not allowed to submit an executable that calls it, but its nice to at least know where one can put it. May improve this later. -Wrapped PS4Tracker->Synchronize call in a check that the tracker handle is valid, because I managed to get it called when it wasn't (probably during hmd power off testing, but I don't remember now). It should be fine to not do it if the tracker is not functioning. #review-3104780 chad.taylor #jira UEVR-178 Change 3108423 on 2016/08/31 by Jeff.Fisher Morpheus Config Improvements. -UEVR-138 Morpheus HMD reprojection wrap mode config setting -Can now switch between wrap mode Mirror and ClampToBorder. Mirror is the default. -Made bDisableHMDOrientationUntilHMDHasBeenTracked editable in UE4Editor project settings. -Using generic project setting for bStartInVR, removed the morpheus specific one. #jira UEVR-138 #review-3106999 @nick.whiting Change 3111231 on 2016/09/01 by Jeff.Fisher Fixed bStartInVR ini setting. -Initial implementation worked via a generic EnableStereo call, which worked, but happened after the hmd setup dialog, which is not what I wanted. -Also fixed a tracking frame mismatch assert that hit when I powered the hmd off once, causing it to lose tracking. Its ok that it doesn't update in that circumstance. #review-3111211 @ryan.vance Change 3115196 on 2016/09/06 by Keli.Hlodversson #jira UEVR-128 Map move controller Select button to Invalid, as it is always handled by the system Change 3116425 on 2016/09/07 by Chad.Taylor PSVR: stereo layers implementation Change 3116593 on 2016/09/07 by Jeff.Fisher UEVR-126 Morpheus HMD connect dialog cancel reactions -VR only apps can't allow the player to cancel out of the hmd setup dialog, so lets just pop the dialog up again (sony were ok with a licencee doing this) if an ini setting says to do that. -VR/2D apps might want to switch to 2d if the player cancels out of the hmd setup dialog, so there is an ini setting for that. -A delegate only implementation is also provided for apps that want to do something else. This leaves the game rendering in VR mode, and fires the delegate. -Refactored to better separate successful HMD acquisition from stereo rendering. This was necessary to support the delegate only option on startup. If you start in vr mode with your hmd off and cancel the dialog stereo rendering now starts with default values for the hmd hardware stats (as read from my pvt) instead of crashing trying to use uninitialized data. When an hmd is connected its values will be read. -Refactored to ensure reprojection starts immediately when we call StartReprojection. #jira UEVR-126 #review-3116221 Change 3116754 on 2016/09/07 by Keli.Hlodversson bPixelDensityAdaptive is a bool and not a float property Change 3117692 on 2016/09/08 by Jeff.Fisher UEVR-135 Morpheus HMD recent feature error reporting UEVR-173 2DVR flexibility (UTexture) -Error log for sceHmdReprojectionSetOutputMinColor failure. -Made the parameter for 2dVR a UTexture* instead of a UTexture2D*, so it can be a rendertarget, etc. -Added error logs for missing texture, invalid texture, wrong texture format to 2DVR. #jira UEVR-135 #jira UEVR-173 #review-3116955 @keli.hloedversson Change 3117990 on 2016/09/08 by Jeff.Fisher UEVR-127 Morpheus HMD removal reaction -Added VRHeadsetPutOnHead and VRHeadsetRemovedFromHead delegates, and implemented them for Morpheus. #jira UEVR-127 #review-3117968 @keli.hlodversson Change 3120198 on 2016/09/09 by Jeff.Fisher MorpheusReprojector frame complete wait error log -Now log a warning if the sceKernalWaitEqueue returns an error. It not a problem if this happens rarely, but something is very broken if it starts happening continuously. Change 3121754 on 2016/09/12 by Keli.Hlodversson #jira UE-21878 - Also emit VR initialization analytics events in the editor. Change 3122311 on 2016/09/12 by Nick.Whiting Merging fix for Adreno devices rendering black from 4.13.1 Change 3123057 on 2016/09/13 by Keli.Hlodversson #jira UE-30097 Use the current value of r.ScreenPercentage on Occulus Rift if it's explicitly set. * If the SetBy part of the flags for the console var is SetBy_Constructor, then ignore the value. * If it's SetBy_Scalability, then ignore it if it equals 100 * Else, call SetScreenPercentage using the current value The obsolete HMD SCREENPERCENTAGE console command is still available and will override the setting until r.ScreenPercentage is modified the next time. Change 3123200 on 2016/09/13 by Chad.Taylor PS4 Stereo Layer double buffering. Since the overlays are reprojected at 120hz but rendered at 60hz we need to render to a separate buffer than the one being used by reprojection. Change 3125845 on 2016/09/14 by Keli.Hlodversson #jira UE-33996 Add hmd=<name> command line option to allow overriding which HMD module is used. Renamed GetModulePriorityKeyName to simply GetModuleKeyName, as this name is now also used to match against the command line options. Change 3127293 on 2016/09/15 by Jeff.Fisher UEVR-225 Morpheus HMD top and bottom black crescents -The hidden and visible area meshes for morpheus were too restrictive. Nudged them out a bit, no black crescents at the top and bottom of the screen. We are rendering a few more pixels now though. #review-3127145 @ryan.vance #jira UEVR-225 Change 3130635 on 2016/09/19 by Jeff.Fisher UEVR-226 Morpheus HMD mirrored fill wrong on outer edges -The setting was never being used, leaving the wrap mode at 0 aka kWrapModeWrap. -Refactored how the setting is applied so it works, and is less convoluted. #jira UEVR-226 #review-3129403 Change 3131615 on 2016/09/19 by Keli.Hlodversson #jira UE-29341. Update Chaperone bounds when SteamVR tells us they have changed Change 3136527 on 2016/09/22 by Keli.Hlodversson Don't depend on the current state of the VR subsystem when exiting PIE mode to decide whether the main window should be restored. Instead always restore it if it was minimized at the start. Change 3136652 on 2016/09/22 by Keli.Hlodversson Allow shutting down Steam VR subsystem without shutting down the Steam VR plugin completely in response to quitting from the SteamVR overlay. Enabling stereo rendering again will reinitialize SteamVR. This is useful when using PIE in VR mode as it allows entereing it again without restarting the editor. Also fixes crashes by first disabinge stereo rendering a short while before shutting down the VR subsystem. #jira UE-35940 Change 3138901 on 2016/09/23 by Ryan.Vance Merging 3138521 using OdinToDevVR to bring over temporary forward lighting ISR changes for 4.14 Change 3141614 on 2016/09/27 by Keli.Hlodversson Implement GetNumOfTrackingSensors and GetTrackingSensorProperties on SteamVR. #jira UE-32994 Change 3141948 on 2016/09/27 by Jeff.Fisher UEVR-242 Is AddControllerYawInput not allowed when morpheus is enabled? -Indeed it did not work. Looks like morpheus would not accumulate the yaw, so it would be reset every frame. I made the implementation of ApplyHmdRotation very similar to the one used for occulus (also similar to other platforms) to fix this. #jira UEVR-242 #review-3141933 keli.hlodversson Change 3143484 on 2016/09/28 by Nick.Whiting Integrating Oculus 1.8 SDK support, includes support for cylinder and cubemap stereo layers Change 3143517 on 2016/09/28 by Chad.Taylor Merging PS4Tracker fixes from Release-4.13 into Dev-VR Change 3143805 on 2016/09/28 by Keli.Hlodversson #jira UE-36478 Workaround to make world to meters scale apply correctly to Occulus controllers while running in PIE Change 3143943 on 2016/09/28 by Nick.Whiting Merging latest drop from OSVR Change 3144221 on 2016/09/28 by Keli.Hlodversson Implement GetTrackingSensorProperties on PS4 #jira UE-32994 Change 3144352 on 2016/09/28 by Ryan.Vance Initial implementation of mobile multi-view. This is non-functioning and requires a lot more work, but enough of the framework exists to make the 4.14 branch for an experimental release. Change 3144585 on 2016/09/29 by Jeff.Fisher UEVR-14 PSVR Support for 90Hz to 90Hz, and 120Hz to 120Hz -Enum setting added for the three frame sequences. -90Hz mode is trying to run camera updates at 90hz, but they can only run at 60 so every third one fails. This works, but its dubious. -Feature marked as experimental for now because of that 90hz tracking issue, and the lack of testing. -Defaulting to 60/120. #jira UEVR-14 #review-3143486 chad.taylor nick.whiting Change 3145263 on 2016/09/29 by Nick.Whiting Fix for constructor initialization order in StereoLayerComponent, which threw a warning on Clang Change 3145536 on 2016/09/29 by Nick.Whiting Fixes for project files to prevent mystery pop up from CAPI Change 3145663 on 2016/09/29 by Keli.Hlodversson PSVR: Make sure the camera orientation returned from GetTrackingSensorProperties points in the right direction. Change 3145670 on 2016/09/29 by Keli.Hlodversson For some reason the orientation of the Oculus tracking sensor is reported as pointing backwards. This flips it around to face front Change 3145687 on 2016/09/29 by Chad.Taylor VR splash screen support [CL 3146243 by Nick Whiting in Main branch]
2016-09-30 01:16:13 -04:00
{
FOpenGLTexture* const RenderTarget = RenderTargets[0];
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3145687) #lockdown Nick.Penwarden #rb Merge ========================== MAJOR FEATURES + CHANGES ========================== Change 3094167 on 2016/08/18 by Jeff.Fisher UEVR-97 Morpheus HMD tracking needs to wait until HMD is fully tracked. -Morpheus CALIBRATING/NOT_TRACKED tracking state hmd orientation update disabled and delegates added to present instructions to the user. This behavior is controlled by morpheus ini setting bDisableHMDOrientationUntilHMDHasBeenTracked, but defaulted to true to avoid subtly bad user experiences. #review-3094106 @chad.taylor #jira UEVR-97 Change 3104799 on 2016/08/29 by Jeff.Fisher UEVR-178 Morpheus HMD Black crescents -Switched reprojection frame time for 60/120 mode from 120hz to 60hz so we much better predict where the hmd will be pointing when the frame we are about to render is actually displayed, and are run off the edge of it less often and less severely. This makes the black crescent artifacts only just visible during very fast head turning. The kWrapModeMirror change, which will be submitted separately, makes the left and right crescents invisible to me. -Renamed the functions for setting the prediction info in the PS4Tracker. -Added render frame parameters to sony reprojection functions, these can help with debugging reprojection. -Added commented out sce call to get the reprojection debug data. Not allowed to submit an executable that calls it, but its nice to at least know where one can put it. May improve this later. -Wrapped PS4Tracker->Synchronize call in a check that the tracker handle is valid, because I managed to get it called when it wasn't (probably during hmd power off testing, but I don't remember now). It should be fine to not do it if the tracker is not functioning. #review-3104780 chad.taylor #jira UEVR-178 Change 3108423 on 2016/08/31 by Jeff.Fisher Morpheus Config Improvements. -UEVR-138 Morpheus HMD reprojection wrap mode config setting -Can now switch between wrap mode Mirror and ClampToBorder. Mirror is the default. -Made bDisableHMDOrientationUntilHMDHasBeenTracked editable in UE4Editor project settings. -Using generic project setting for bStartInVR, removed the morpheus specific one. #jira UEVR-138 #review-3106999 @nick.whiting Change 3111231 on 2016/09/01 by Jeff.Fisher Fixed bStartInVR ini setting. -Initial implementation worked via a generic EnableStereo call, which worked, but happened after the hmd setup dialog, which is not what I wanted. -Also fixed a tracking frame mismatch assert that hit when I powered the hmd off once, causing it to lose tracking. Its ok that it doesn't update in that circumstance. #review-3111211 @ryan.vance Change 3115196 on 2016/09/06 by Keli.Hlodversson #jira UEVR-128 Map move controller Select button to Invalid, as it is always handled by the system Change 3116425 on 2016/09/07 by Chad.Taylor PSVR: stereo layers implementation Change 3116593 on 2016/09/07 by Jeff.Fisher UEVR-126 Morpheus HMD connect dialog cancel reactions -VR only apps can't allow the player to cancel out of the hmd setup dialog, so lets just pop the dialog up again (sony were ok with a licencee doing this) if an ini setting says to do that. -VR/2D apps might want to switch to 2d if the player cancels out of the hmd setup dialog, so there is an ini setting for that. -A delegate only implementation is also provided for apps that want to do something else. This leaves the game rendering in VR mode, and fires the delegate. -Refactored to better separate successful HMD acquisition from stereo rendering. This was necessary to support the delegate only option on startup. If you start in vr mode with your hmd off and cancel the dialog stereo rendering now starts with default values for the hmd hardware stats (as read from my pvt) instead of crashing trying to use uninitialized data. When an hmd is connected its values will be read. -Refactored to ensure reprojection starts immediately when we call StartReprojection. #jira UEVR-126 #review-3116221 Change 3116754 on 2016/09/07 by Keli.Hlodversson bPixelDensityAdaptive is a bool and not a float property Change 3117692 on 2016/09/08 by Jeff.Fisher UEVR-135 Morpheus HMD recent feature error reporting UEVR-173 2DVR flexibility (UTexture) -Error log for sceHmdReprojectionSetOutputMinColor failure. -Made the parameter for 2dVR a UTexture* instead of a UTexture2D*, so it can be a rendertarget, etc. -Added error logs for missing texture, invalid texture, wrong texture format to 2DVR. #jira UEVR-135 #jira UEVR-173 #review-3116955 @keli.hloedversson Change 3117990 on 2016/09/08 by Jeff.Fisher UEVR-127 Morpheus HMD removal reaction -Added VRHeadsetPutOnHead and VRHeadsetRemovedFromHead delegates, and implemented them for Morpheus. #jira UEVR-127 #review-3117968 @keli.hlodversson Change 3120198 on 2016/09/09 by Jeff.Fisher MorpheusReprojector frame complete wait error log -Now log a warning if the sceKernalWaitEqueue returns an error. It not a problem if this happens rarely, but something is very broken if it starts happening continuously. Change 3121754 on 2016/09/12 by Keli.Hlodversson #jira UE-21878 - Also emit VR initialization analytics events in the editor. Change 3122311 on 2016/09/12 by Nick.Whiting Merging fix for Adreno devices rendering black from 4.13.1 Change 3123057 on 2016/09/13 by Keli.Hlodversson #jira UE-30097 Use the current value of r.ScreenPercentage on Occulus Rift if it's explicitly set. * If the SetBy part of the flags for the console var is SetBy_Constructor, then ignore the value. * If it's SetBy_Scalability, then ignore it if it equals 100 * Else, call SetScreenPercentage using the current value The obsolete HMD SCREENPERCENTAGE console command is still available and will override the setting until r.ScreenPercentage is modified the next time. Change 3123200 on 2016/09/13 by Chad.Taylor PS4 Stereo Layer double buffering. Since the overlays are reprojected at 120hz but rendered at 60hz we need to render to a separate buffer than the one being used by reprojection. Change 3125845 on 2016/09/14 by Keli.Hlodversson #jira UE-33996 Add hmd=<name> command line option to allow overriding which HMD module is used. Renamed GetModulePriorityKeyName to simply GetModuleKeyName, as this name is now also used to match against the command line options. Change 3127293 on 2016/09/15 by Jeff.Fisher UEVR-225 Morpheus HMD top and bottom black crescents -The hidden and visible area meshes for morpheus were too restrictive. Nudged them out a bit, no black crescents at the top and bottom of the screen. We are rendering a few more pixels now though. #review-3127145 @ryan.vance #jira UEVR-225 Change 3130635 on 2016/09/19 by Jeff.Fisher UEVR-226 Morpheus HMD mirrored fill wrong on outer edges -The setting was never being used, leaving the wrap mode at 0 aka kWrapModeWrap. -Refactored how the setting is applied so it works, and is less convoluted. #jira UEVR-226 #review-3129403 Change 3131615 on 2016/09/19 by Keli.Hlodversson #jira UE-29341. Update Chaperone bounds when SteamVR tells us they have changed Change 3136527 on 2016/09/22 by Keli.Hlodversson Don't depend on the current state of the VR subsystem when exiting PIE mode to decide whether the main window should be restored. Instead always restore it if it was minimized at the start. Change 3136652 on 2016/09/22 by Keli.Hlodversson Allow shutting down Steam VR subsystem without shutting down the Steam VR plugin completely in response to quitting from the SteamVR overlay. Enabling stereo rendering again will reinitialize SteamVR. This is useful when using PIE in VR mode as it allows entereing it again without restarting the editor. Also fixes crashes by first disabinge stereo rendering a short while before shutting down the VR subsystem. #jira UE-35940 Change 3138901 on 2016/09/23 by Ryan.Vance Merging 3138521 using OdinToDevVR to bring over temporary forward lighting ISR changes for 4.14 Change 3141614 on 2016/09/27 by Keli.Hlodversson Implement GetNumOfTrackingSensors and GetTrackingSensorProperties on SteamVR. #jira UE-32994 Change 3141948 on 2016/09/27 by Jeff.Fisher UEVR-242 Is AddControllerYawInput not allowed when morpheus is enabled? -Indeed it did not work. Looks like morpheus would not accumulate the yaw, so it would be reset every frame. I made the implementation of ApplyHmdRotation very similar to the one used for occulus (also similar to other platforms) to fix this. #jira UEVR-242 #review-3141933 keli.hlodversson Change 3143484 on 2016/09/28 by Nick.Whiting Integrating Oculus 1.8 SDK support, includes support for cylinder and cubemap stereo layers Change 3143517 on 2016/09/28 by Chad.Taylor Merging PS4Tracker fixes from Release-4.13 into Dev-VR Change 3143805 on 2016/09/28 by Keli.Hlodversson #jira UE-36478 Workaround to make world to meters scale apply correctly to Occulus controllers while running in PIE Change 3143943 on 2016/09/28 by Nick.Whiting Merging latest drop from OSVR Change 3144221 on 2016/09/28 by Keli.Hlodversson Implement GetTrackingSensorProperties on PS4 #jira UE-32994 Change 3144352 on 2016/09/28 by Ryan.Vance Initial implementation of mobile multi-view. This is non-functioning and requires a lot more work, but enough of the framework exists to make the 4.14 branch for an experimental release. Change 3144585 on 2016/09/29 by Jeff.Fisher UEVR-14 PSVR Support for 90Hz to 90Hz, and 120Hz to 120Hz -Enum setting added for the three frame sequences. -90Hz mode is trying to run camera updates at 90hz, but they can only run at 60 so every third one fails. This works, but its dubious. -Feature marked as experimental for now because of that 90hz tracking issue, and the lack of testing. -Defaulting to 60/120. #jira UEVR-14 #review-3143486 chad.taylor nick.whiting Change 3145263 on 2016/09/29 by Nick.Whiting Fix for constructor initialization order in StereoLayerComponent, which threw a warning on Clang Change 3145536 on 2016/09/29 by Nick.Whiting Fixes for project files to prevent mystery pop up from CAPI Change 3145663 on 2016/09/29 by Keli.Hlodversson PSVR: Make sure the camera orientation returned from GetTrackingSensorProperties points in the right direction. Change 3145670 on 2016/09/29 by Keli.Hlodversson For some reason the orientation of the Oculus tracking sensor is reported as pointing backwards. This flips it around to face front Change 3145687 on 2016/09/29 by Chad.Taylor VR splash screen support [CL 3146243 by Nick Whiting in Main branch]
2016-09-30 01:16:13 -04:00
glBindFramebuffer(GL_FRAMEBUFFER, 0);
glBindFramebuffer(GL_DRAW_FRAMEBUFFER, Framebuffer);
const uint32 NumSamplesRendered = RenderTarget->GetNumSamplesRendered();
if (NumSamplesRendered > 1)
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3145687) #lockdown Nick.Penwarden #rb Merge ========================== MAJOR FEATURES + CHANGES ========================== Change 3094167 on 2016/08/18 by Jeff.Fisher UEVR-97 Morpheus HMD tracking needs to wait until HMD is fully tracked. -Morpheus CALIBRATING/NOT_TRACKED tracking state hmd orientation update disabled and delegates added to present instructions to the user. This behavior is controlled by morpheus ini setting bDisableHMDOrientationUntilHMDHasBeenTracked, but defaulted to true to avoid subtly bad user experiences. #review-3094106 @chad.taylor #jira UEVR-97 Change 3104799 on 2016/08/29 by Jeff.Fisher UEVR-178 Morpheus HMD Black crescents -Switched reprojection frame time for 60/120 mode from 120hz to 60hz so we much better predict where the hmd will be pointing when the frame we are about to render is actually displayed, and are run off the edge of it less often and less severely. This makes the black crescent artifacts only just visible during very fast head turning. The kWrapModeMirror change, which will be submitted separately, makes the left and right crescents invisible to me. -Renamed the functions for setting the prediction info in the PS4Tracker. -Added render frame parameters to sony reprojection functions, these can help with debugging reprojection. -Added commented out sce call to get the reprojection debug data. Not allowed to submit an executable that calls it, but its nice to at least know where one can put it. May improve this later. -Wrapped PS4Tracker->Synchronize call in a check that the tracker handle is valid, because I managed to get it called when it wasn't (probably during hmd power off testing, but I don't remember now). It should be fine to not do it if the tracker is not functioning. #review-3104780 chad.taylor #jira UEVR-178 Change 3108423 on 2016/08/31 by Jeff.Fisher Morpheus Config Improvements. -UEVR-138 Morpheus HMD reprojection wrap mode config setting -Can now switch between wrap mode Mirror and ClampToBorder. Mirror is the default. -Made bDisableHMDOrientationUntilHMDHasBeenTracked editable in UE4Editor project settings. -Using generic project setting for bStartInVR, removed the morpheus specific one. #jira UEVR-138 #review-3106999 @nick.whiting Change 3111231 on 2016/09/01 by Jeff.Fisher Fixed bStartInVR ini setting. -Initial implementation worked via a generic EnableStereo call, which worked, but happened after the hmd setup dialog, which is not what I wanted. -Also fixed a tracking frame mismatch assert that hit when I powered the hmd off once, causing it to lose tracking. Its ok that it doesn't update in that circumstance. #review-3111211 @ryan.vance Change 3115196 on 2016/09/06 by Keli.Hlodversson #jira UEVR-128 Map move controller Select button to Invalid, as it is always handled by the system Change 3116425 on 2016/09/07 by Chad.Taylor PSVR: stereo layers implementation Change 3116593 on 2016/09/07 by Jeff.Fisher UEVR-126 Morpheus HMD connect dialog cancel reactions -VR only apps can't allow the player to cancel out of the hmd setup dialog, so lets just pop the dialog up again (sony were ok with a licencee doing this) if an ini setting says to do that. -VR/2D apps might want to switch to 2d if the player cancels out of the hmd setup dialog, so there is an ini setting for that. -A delegate only implementation is also provided for apps that want to do something else. This leaves the game rendering in VR mode, and fires the delegate. -Refactored to better separate successful HMD acquisition from stereo rendering. This was necessary to support the delegate only option on startup. If you start in vr mode with your hmd off and cancel the dialog stereo rendering now starts with default values for the hmd hardware stats (as read from my pvt) instead of crashing trying to use uninitialized data. When an hmd is connected its values will be read. -Refactored to ensure reprojection starts immediately when we call StartReprojection. #jira UEVR-126 #review-3116221 Change 3116754 on 2016/09/07 by Keli.Hlodversson bPixelDensityAdaptive is a bool and not a float property Change 3117692 on 2016/09/08 by Jeff.Fisher UEVR-135 Morpheus HMD recent feature error reporting UEVR-173 2DVR flexibility (UTexture) -Error log for sceHmdReprojectionSetOutputMinColor failure. -Made the parameter for 2dVR a UTexture* instead of a UTexture2D*, so it can be a rendertarget, etc. -Added error logs for missing texture, invalid texture, wrong texture format to 2DVR. #jira UEVR-135 #jira UEVR-173 #review-3116955 @keli.hloedversson Change 3117990 on 2016/09/08 by Jeff.Fisher UEVR-127 Morpheus HMD removal reaction -Added VRHeadsetPutOnHead and VRHeadsetRemovedFromHead delegates, and implemented them for Morpheus. #jira UEVR-127 #review-3117968 @keli.hlodversson Change 3120198 on 2016/09/09 by Jeff.Fisher MorpheusReprojector frame complete wait error log -Now log a warning if the sceKernalWaitEqueue returns an error. It not a problem if this happens rarely, but something is very broken if it starts happening continuously. Change 3121754 on 2016/09/12 by Keli.Hlodversson #jira UE-21878 - Also emit VR initialization analytics events in the editor. Change 3122311 on 2016/09/12 by Nick.Whiting Merging fix for Adreno devices rendering black from 4.13.1 Change 3123057 on 2016/09/13 by Keli.Hlodversson #jira UE-30097 Use the current value of r.ScreenPercentage on Occulus Rift if it's explicitly set. * If the SetBy part of the flags for the console var is SetBy_Constructor, then ignore the value. * If it's SetBy_Scalability, then ignore it if it equals 100 * Else, call SetScreenPercentage using the current value The obsolete HMD SCREENPERCENTAGE console command is still available and will override the setting until r.ScreenPercentage is modified the next time. Change 3123200 on 2016/09/13 by Chad.Taylor PS4 Stereo Layer double buffering. Since the overlays are reprojected at 120hz but rendered at 60hz we need to render to a separate buffer than the one being used by reprojection. Change 3125845 on 2016/09/14 by Keli.Hlodversson #jira UE-33996 Add hmd=<name> command line option to allow overriding which HMD module is used. Renamed GetModulePriorityKeyName to simply GetModuleKeyName, as this name is now also used to match against the command line options. Change 3127293 on 2016/09/15 by Jeff.Fisher UEVR-225 Morpheus HMD top and bottom black crescents -The hidden and visible area meshes for morpheus were too restrictive. Nudged them out a bit, no black crescents at the top and bottom of the screen. We are rendering a few more pixels now though. #review-3127145 @ryan.vance #jira UEVR-225 Change 3130635 on 2016/09/19 by Jeff.Fisher UEVR-226 Morpheus HMD mirrored fill wrong on outer edges -The setting was never being used, leaving the wrap mode at 0 aka kWrapModeWrap. -Refactored how the setting is applied so it works, and is less convoluted. #jira UEVR-226 #review-3129403 Change 3131615 on 2016/09/19 by Keli.Hlodversson #jira UE-29341. Update Chaperone bounds when SteamVR tells us they have changed Change 3136527 on 2016/09/22 by Keli.Hlodversson Don't depend on the current state of the VR subsystem when exiting PIE mode to decide whether the main window should be restored. Instead always restore it if it was minimized at the start. Change 3136652 on 2016/09/22 by Keli.Hlodversson Allow shutting down Steam VR subsystem without shutting down the Steam VR plugin completely in response to quitting from the SteamVR overlay. Enabling stereo rendering again will reinitialize SteamVR. This is useful when using PIE in VR mode as it allows entereing it again without restarting the editor. Also fixes crashes by first disabinge stereo rendering a short while before shutting down the VR subsystem. #jira UE-35940 Change 3138901 on 2016/09/23 by Ryan.Vance Merging 3138521 using OdinToDevVR to bring over temporary forward lighting ISR changes for 4.14 Change 3141614 on 2016/09/27 by Keli.Hlodversson Implement GetNumOfTrackingSensors and GetTrackingSensorProperties on SteamVR. #jira UE-32994 Change 3141948 on 2016/09/27 by Jeff.Fisher UEVR-242 Is AddControllerYawInput not allowed when morpheus is enabled? -Indeed it did not work. Looks like morpheus would not accumulate the yaw, so it would be reset every frame. I made the implementation of ApplyHmdRotation very similar to the one used for occulus (also similar to other platforms) to fix this. #jira UEVR-242 #review-3141933 keli.hlodversson Change 3143484 on 2016/09/28 by Nick.Whiting Integrating Oculus 1.8 SDK support, includes support for cylinder and cubemap stereo layers Change 3143517 on 2016/09/28 by Chad.Taylor Merging PS4Tracker fixes from Release-4.13 into Dev-VR Change 3143805 on 2016/09/28 by Keli.Hlodversson #jira UE-36478 Workaround to make world to meters scale apply correctly to Occulus controllers while running in PIE Change 3143943 on 2016/09/28 by Nick.Whiting Merging latest drop from OSVR Change 3144221 on 2016/09/28 by Keli.Hlodversson Implement GetTrackingSensorProperties on PS4 #jira UE-32994 Change 3144352 on 2016/09/28 by Ryan.Vance Initial implementation of mobile multi-view. This is non-functioning and requires a lot more work, but enough of the framework exists to make the 4.14 branch for an experimental release. Change 3144585 on 2016/09/29 by Jeff.Fisher UEVR-14 PSVR Support for 90Hz to 90Hz, and 120Hz to 120Hz -Enum setting added for the three frame sequences. -90Hz mode is trying to run camera updates at 90hz, but they can only run at 60 so every third one fails. This works, but its dubious. -Feature marked as experimental for now because of that 90hz tracking issue, and the lack of testing. -Defaulting to 60/120. #jira UEVR-14 #review-3143486 chad.taylor nick.whiting Change 3145263 on 2016/09/29 by Nick.Whiting Fix for constructor initialization order in StereoLayerComponent, which threw a warning on Clang Change 3145536 on 2016/09/29 by Nick.Whiting Fixes for project files to prevent mystery pop up from CAPI Change 3145663 on 2016/09/29 by Keli.Hlodversson PSVR: Make sure the camera orientation returned from GetTrackingSensorProperties points in the right direction. Change 3145670 on 2016/09/29 by Keli.Hlodversson For some reason the orientation of the Oculus tracking sensor is reported as pointing backwards. This flips it around to face front Change 3145687 on 2016/09/29 by Chad.Taylor VR splash screen support [CL 3146243 by Nick Whiting in Main branch]
2016-09-30 01:16:13 -04:00
{
glFramebufferTextureMultisampleMultiviewOVR(GL_DRAW_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, RenderTarget->GetResource(), 0, NumSamplesRendered, 0, 2);
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3145687) #lockdown Nick.Penwarden #rb Merge ========================== MAJOR FEATURES + CHANGES ========================== Change 3094167 on 2016/08/18 by Jeff.Fisher UEVR-97 Morpheus HMD tracking needs to wait until HMD is fully tracked. -Morpheus CALIBRATING/NOT_TRACKED tracking state hmd orientation update disabled and delegates added to present instructions to the user. This behavior is controlled by morpheus ini setting bDisableHMDOrientationUntilHMDHasBeenTracked, but defaulted to true to avoid subtly bad user experiences. #review-3094106 @chad.taylor #jira UEVR-97 Change 3104799 on 2016/08/29 by Jeff.Fisher UEVR-178 Morpheus HMD Black crescents -Switched reprojection frame time for 60/120 mode from 120hz to 60hz so we much better predict where the hmd will be pointing when the frame we are about to render is actually displayed, and are run off the edge of it less often and less severely. This makes the black crescent artifacts only just visible during very fast head turning. The kWrapModeMirror change, which will be submitted separately, makes the left and right crescents invisible to me. -Renamed the functions for setting the prediction info in the PS4Tracker. -Added render frame parameters to sony reprojection functions, these can help with debugging reprojection. -Added commented out sce call to get the reprojection debug data. Not allowed to submit an executable that calls it, but its nice to at least know where one can put it. May improve this later. -Wrapped PS4Tracker->Synchronize call in a check that the tracker handle is valid, because I managed to get it called when it wasn't (probably during hmd power off testing, but I don't remember now). It should be fine to not do it if the tracker is not functioning. #review-3104780 chad.taylor #jira UEVR-178 Change 3108423 on 2016/08/31 by Jeff.Fisher Morpheus Config Improvements. -UEVR-138 Morpheus HMD reprojection wrap mode config setting -Can now switch between wrap mode Mirror and ClampToBorder. Mirror is the default. -Made bDisableHMDOrientationUntilHMDHasBeenTracked editable in UE4Editor project settings. -Using generic project setting for bStartInVR, removed the morpheus specific one. #jira UEVR-138 #review-3106999 @nick.whiting Change 3111231 on 2016/09/01 by Jeff.Fisher Fixed bStartInVR ini setting. -Initial implementation worked via a generic EnableStereo call, which worked, but happened after the hmd setup dialog, which is not what I wanted. -Also fixed a tracking frame mismatch assert that hit when I powered the hmd off once, causing it to lose tracking. Its ok that it doesn't update in that circumstance. #review-3111211 @ryan.vance Change 3115196 on 2016/09/06 by Keli.Hlodversson #jira UEVR-128 Map move controller Select button to Invalid, as it is always handled by the system Change 3116425 on 2016/09/07 by Chad.Taylor PSVR: stereo layers implementation Change 3116593 on 2016/09/07 by Jeff.Fisher UEVR-126 Morpheus HMD connect dialog cancel reactions -VR only apps can't allow the player to cancel out of the hmd setup dialog, so lets just pop the dialog up again (sony were ok with a licencee doing this) if an ini setting says to do that. -VR/2D apps might want to switch to 2d if the player cancels out of the hmd setup dialog, so there is an ini setting for that. -A delegate only implementation is also provided for apps that want to do something else. This leaves the game rendering in VR mode, and fires the delegate. -Refactored to better separate successful HMD acquisition from stereo rendering. This was necessary to support the delegate only option on startup. If you start in vr mode with your hmd off and cancel the dialog stereo rendering now starts with default values for the hmd hardware stats (as read from my pvt) instead of crashing trying to use uninitialized data. When an hmd is connected its values will be read. -Refactored to ensure reprojection starts immediately when we call StartReprojection. #jira UEVR-126 #review-3116221 Change 3116754 on 2016/09/07 by Keli.Hlodversson bPixelDensityAdaptive is a bool and not a float property Change 3117692 on 2016/09/08 by Jeff.Fisher UEVR-135 Morpheus HMD recent feature error reporting UEVR-173 2DVR flexibility (UTexture) -Error log for sceHmdReprojectionSetOutputMinColor failure. -Made the parameter for 2dVR a UTexture* instead of a UTexture2D*, so it can be a rendertarget, etc. -Added error logs for missing texture, invalid texture, wrong texture format to 2DVR. #jira UEVR-135 #jira UEVR-173 #review-3116955 @keli.hloedversson Change 3117990 on 2016/09/08 by Jeff.Fisher UEVR-127 Morpheus HMD removal reaction -Added VRHeadsetPutOnHead and VRHeadsetRemovedFromHead delegates, and implemented them for Morpheus. #jira UEVR-127 #review-3117968 @keli.hlodversson Change 3120198 on 2016/09/09 by Jeff.Fisher MorpheusReprojector frame complete wait error log -Now log a warning if the sceKernalWaitEqueue returns an error. It not a problem if this happens rarely, but something is very broken if it starts happening continuously. Change 3121754 on 2016/09/12 by Keli.Hlodversson #jira UE-21878 - Also emit VR initialization analytics events in the editor. Change 3122311 on 2016/09/12 by Nick.Whiting Merging fix for Adreno devices rendering black from 4.13.1 Change 3123057 on 2016/09/13 by Keli.Hlodversson #jira UE-30097 Use the current value of r.ScreenPercentage on Occulus Rift if it's explicitly set. * If the SetBy part of the flags for the console var is SetBy_Constructor, then ignore the value. * If it's SetBy_Scalability, then ignore it if it equals 100 * Else, call SetScreenPercentage using the current value The obsolete HMD SCREENPERCENTAGE console command is still available and will override the setting until r.ScreenPercentage is modified the next time. Change 3123200 on 2016/09/13 by Chad.Taylor PS4 Stereo Layer double buffering. Since the overlays are reprojected at 120hz but rendered at 60hz we need to render to a separate buffer than the one being used by reprojection. Change 3125845 on 2016/09/14 by Keli.Hlodversson #jira UE-33996 Add hmd=<name> command line option to allow overriding which HMD module is used. Renamed GetModulePriorityKeyName to simply GetModuleKeyName, as this name is now also used to match against the command line options. Change 3127293 on 2016/09/15 by Jeff.Fisher UEVR-225 Morpheus HMD top and bottom black crescents -The hidden and visible area meshes for morpheus were too restrictive. Nudged them out a bit, no black crescents at the top and bottom of the screen. We are rendering a few more pixels now though. #review-3127145 @ryan.vance #jira UEVR-225 Change 3130635 on 2016/09/19 by Jeff.Fisher UEVR-226 Morpheus HMD mirrored fill wrong on outer edges -The setting was never being used, leaving the wrap mode at 0 aka kWrapModeWrap. -Refactored how the setting is applied so it works, and is less convoluted. #jira UEVR-226 #review-3129403 Change 3131615 on 2016/09/19 by Keli.Hlodversson #jira UE-29341. Update Chaperone bounds when SteamVR tells us they have changed Change 3136527 on 2016/09/22 by Keli.Hlodversson Don't depend on the current state of the VR subsystem when exiting PIE mode to decide whether the main window should be restored. Instead always restore it if it was minimized at the start. Change 3136652 on 2016/09/22 by Keli.Hlodversson Allow shutting down Steam VR subsystem without shutting down the Steam VR plugin completely in response to quitting from the SteamVR overlay. Enabling stereo rendering again will reinitialize SteamVR. This is useful when using PIE in VR mode as it allows entereing it again without restarting the editor. Also fixes crashes by first disabinge stereo rendering a short while before shutting down the VR subsystem. #jira UE-35940 Change 3138901 on 2016/09/23 by Ryan.Vance Merging 3138521 using OdinToDevVR to bring over temporary forward lighting ISR changes for 4.14 Change 3141614 on 2016/09/27 by Keli.Hlodversson Implement GetNumOfTrackingSensors and GetTrackingSensorProperties on SteamVR. #jira UE-32994 Change 3141948 on 2016/09/27 by Jeff.Fisher UEVR-242 Is AddControllerYawInput not allowed when morpheus is enabled? -Indeed it did not work. Looks like morpheus would not accumulate the yaw, so it would be reset every frame. I made the implementation of ApplyHmdRotation very similar to the one used for occulus (also similar to other platforms) to fix this. #jira UEVR-242 #review-3141933 keli.hlodversson Change 3143484 on 2016/09/28 by Nick.Whiting Integrating Oculus 1.8 SDK support, includes support for cylinder and cubemap stereo layers Change 3143517 on 2016/09/28 by Chad.Taylor Merging PS4Tracker fixes from Release-4.13 into Dev-VR Change 3143805 on 2016/09/28 by Keli.Hlodversson #jira UE-36478 Workaround to make world to meters scale apply correctly to Occulus controllers while running in PIE Change 3143943 on 2016/09/28 by Nick.Whiting Merging latest drop from OSVR Change 3144221 on 2016/09/28 by Keli.Hlodversson Implement GetTrackingSensorProperties on PS4 #jira UE-32994 Change 3144352 on 2016/09/28 by Ryan.Vance Initial implementation of mobile multi-view. This is non-functioning and requires a lot more work, but enough of the framework exists to make the 4.14 branch for an experimental release. Change 3144585 on 2016/09/29 by Jeff.Fisher UEVR-14 PSVR Support for 90Hz to 90Hz, and 120Hz to 120Hz -Enum setting added for the three frame sequences. -90Hz mode is trying to run camera updates at 90hz, but they can only run at 60 so every third one fails. This works, but its dubious. -Feature marked as experimental for now because of that 90hz tracking issue, and the lack of testing. -Defaulting to 60/120. #jira UEVR-14 #review-3143486 chad.taylor nick.whiting Change 3145263 on 2016/09/29 by Nick.Whiting Fix for constructor initialization order in StereoLayerComponent, which threw a warning on Clang Change 3145536 on 2016/09/29 by Nick.Whiting Fixes for project files to prevent mystery pop up from CAPI Change 3145663 on 2016/09/29 by Keli.Hlodversson PSVR: Make sure the camera orientation returned from GetTrackingSensorProperties points in the right direction. Change 3145670 on 2016/09/29 by Keli.Hlodversson For some reason the orientation of the Oculus tracking sensor is reported as pointing backwards. This flips it around to face front Change 3145687 on 2016/09/29 by Chad.Taylor VR splash screen support [CL 3146243 by Nick Whiting in Main branch]
2016-09-30 01:16:13 -04:00
VERIFY_GL(glFramebufferTextureMultisampleMultiviewOVR);
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3383750) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3012064 on 2016/06/13 by Nick.Whiting Merging Main -> DevVR Change 3048060 on 2016/07/13 by Nick.Whiting Integrating CL 3045721 from //depot/Partners/Google/AndroidVR-DevVR Upgrade Android and iOS GVR SDK to the latest. Fix the flipped vignette issue when using Unreal's post processing distortion. Change the Daydream & Cardboard mode to use scanline racing. Deprecate the ability to turn off individual UI elements. Change 3235307 on 2016/12/14 by Keli.Hlodversson Filter out excluded HMD modules during FEngineLoop:PreInitHMDDevice. The final selection still happens in UEngine::InitializeHMDDevice as all HMD plugins have not been loaded during PreInit Change 3235308 on 2016/12/14 by Ryan.Vance #jira UEVR-478 Monoscopic far field improvements Shader changes are now gated behind the read only cvar vr.MonoscopicFarField. Changing this requires a shader compile. Moved the mono rendering mode to the cvar vr.MonoscopicFarFieldMode. This is writable, so users can enable/disable mono rendering on the fly if the above cvar is enabled. Only write to the alpha channel in the mobile base pass if the object is opaque and MONOSCOPIC_FAR_FIELD is defined. Addressed code review comments. Change 3235397 on 2016/12/14 by Keli.Hlodversson [Oculus] Only enable GearVR platform on Windows if Oculus service is running Original author: Loren.McQuade Change 3235762 on 2016/12/14 by Keli.Hlodversson Add explicit parentheses to placate the build bots. Change 3242318 on 2016/12/21 by Ryan.Vance Working around pixel density crash. Change 3242522 on 2016/12/21 by Ryan.Vance Missing flag clear so our adaptive test was always returning true. Change 3243173 on 2016/12/22 by Ryan.Vance Integrating post present callback implementation from 4.14.1 Change 3248633 on 2017/01/05 by Keli.Hlodversson Copying //Tasks/UE4/Dev-VR-Refactoring to Dev-VR-Minimal (//UE4/Dev-VR-Minimal) Change 3248723 on 2017/01/05 by Keli.Hlodversson Fix after merge. EnablePositionalTracking no longer exists. Change 3249484 on 2017/01/06 by Keli.Hlodversson Add missing includes Change 3249714 on 2017/01/06 by Keli.Hlodversson Remove monolithic header include Change 3249980 on 2017/01/06 by Keli.Hlodversson SteamVR: Remove leftover unused WindowMirrorMode member variable Change 3252432 on 2017/01/10 by Keli.Hlodversson Submitting change by Loren McQuade to fix monolithic builds. Unshelved from pending changelist '3251436': Change 3257373 on 2017/01/13 by Keli.Hlodversson #jira UEVR-411: Finish renaming/removing/remodelling the remaining Oculus (Rift+GearVR) commands #jira UEVR-412: Rename and merge remaining Morpheus console commands #jira UEVR-417: Remove Exec from IHeadMountedDisplay Change 3269971 on 2017/01/24 by Jeff.Fisher UEVR-498 move controller is missing world to meters UEVR-522 PS4 motion controller worldscale support. -Passing world to meters scale into getControllerOrientationAndPosition because the thing asking about it ought to be part of a world, and know what it should be. This also avoids making PS4 motion controllers dependent on the HMD. Note Google VR Controller doesn't do position, so doesnt' care about scale. Oculus already had internal threadsafe tracking of world scale, so I left that. Steam handles world scale below our input level. -Also adding PlayerIndex member to FSceneView so we can figure out which view the MotionControllerComponent should get its worldscale from for the late render thread update. #jira UEVR-498 #review-3384107 Change 3288308 on 2017/02/06 by Jeff.Fisher UEVR-517 Detect MotionController Connectivity -PS4 can only track 2 controllers and 1 hmd. Support for dealing with that is needed. -Also need to support multiple motion controller components mapped to a single controller. Licencees have done that before. -Created a new interface IMotionTrackingSystemManagement, and implements it for PS4Tracker on PS4. -Created a MotionTrackedDeviceFunctionLibrary to expose that interface to blueprint. -With those one can enable and disable tracking on ps4 controllers and query their state to stay within the controller tracking limit. -PS4Tracker also keeps a blackboard of the enable/disable state so that one can enable or disable controllers that have not been connected yet, and have them enable tracking or not when they are connected. -DS4 controller no longer jumps back to 000 if it loses tracking. #review-3384107 #jira UEVR-517 Change 3288309 on 2017/02/06 by Keli.Hlodversson Add file missing from CL#3257373. Change 3288311 on 2017/02/06 by Jeff.Fisher UEVR-517 Detect MotionController Connectivity - Test content. -tm-motionControllers has a third mode where all playstation motion controllers for player 0 are availalbe. You can toggle them to track or not with ctrl-P,G,L,R for pad, gun, leftmove, rightmove or with alt-P,G,L,R. Ctrl tests doing so via MotionControllerComponent. Alt tests doing so by player index and controller type enum. -ctrl-A disables tracking of all controllers -alt-A disables tracking of all controllers for player 0 -ctrl-D toggles enabling new controllers by default -Also fixed one button not working in one of the other test modes for the Aim (gun) controller. -The controller 'models' have an arrow out the front. It is black if disabled. Red if enabled, but no tracker is active, yellow if tracked but inertial only, and green if fully tracked by the camera. -This logic is in the QA_MoCoAll blueprint. Change 3291601 on 2017/02/07 by Jeff.Fisher UEVR-536 PSVR motion controller tracking problem with multiple controllers -Previous code called GetRelativeTransform from the render thread, but the game thread could update it at any time. This caches that transform so that it can be safely used in the render thread. #jira UEVR-536 #review-3384107 @Ryan.Vance Change 3292460 on 2017/02/08 by Jeff.Fisher PS4 sceVrTrackerGetResult() error warning logging improved, and explanatory comment added. Change 3308771 on 2017/02/17 by Keli.Hlodversson Rename GoogleVR console commands #jira UEVR-412 Change 3309156 on 2017/02/17 by Keli.Hlodversson Track changes in r.ScreenPercentage on GoogleVR and set RenderTargetSize accordingly. Change 3311999 on 2017/02/20 by Keli.Hlodversson Create a default implementation for RecordAnalytics. Also create an initial stub for FHeadMountedDisplayBase for future default implementations of common HMD functionality. Make implementing IHeadMountedDisplay::GetDeviceName mandatory instead of defaulting to "Unknown" #jira UE-21878 #jira UEVR-213 Change 3313467 on 2017/02/20 by Ryan.Vance #jira UE-41604 3278583 pCustomPresent->AllocateRenderTargetTexture may return false, if we blindly return true we can end up with an invalid render target since the fall back sceneviewport will be skipped. 3278536 Adding ovrError_NoHmd to our sanity check in OnStartGameFrame. Change 3314002 on 2017/02/21 by Keli.Hlodversson Fix compilation on PS4 and Linux Change 3326722 on 2017/03/01 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) Integrating 4.15 from main. Change 3327567 on 2017/03/01 by Jeff.Fisher UEVR-588 Oculus crash on "stereo on" when the proximity sensor is not triggered. Duplicating from Release-4.15 cl 3327481, 3327542 -Don't ovr_SubmitFrame when the layers need to be recreated. They stay dirty until rendering is unpaused. #jira UEVR-588 #review-3384107 Change 3328098 on 2017/03/01 by Jeff.Fisher 4.15 merge fixes -Fixed deprecated enum name function usage. -Fixed world scale usage in GoogleVRController. -Fixed compile break in PS4Tracker. Change 3328271 on 2017/03/01 by Jeff.Fisher 2.15 merge -restroging GoogleVRController::GetWorldToMetersScale... cause it is used everywhere. Change 3328307 on 2017/03/01 by Jeff.Fisher 4.15 merge -More googlevr worldscale fixes. Change 3328312 on 2017/03/01 by Jeff.Fisher 4.15 merge -removing 2 unused includes Change 3330610 on 2017/03/02 by Jeff.Fisher 4.15 merge -fixing linux build Change 3333952 on 2017/03/06 by Keli.Hlodversson Implement common stereo layer management base class and use it in SteamVR and PS4. Fixes an outstanding bug in SteamVR where texures are updated every frame regardles of whether the continous update flag is set or not. #jira UEVR-628 #jira UE-42555 Change 3334961 on 2017/03/07 by Keli.Hlodversson Add missing include to fix non-unity builds Change 3336200 on 2017/03/07 by Keli.Hlodversson Fix compilation issues. (https://ec-01.epicgames.net/commander/link/jobDetails/jobs/7568252?jobName=UE4+Dev-VR+-+CL+3334961+-+Nightly+Build&s=Jobs) * Pre VS2015 compilers don't like mixing wide and unmarked strings in concatenation. Unfortunately LOCTEXT hides the call to the TEXT macro, completely hinding the prefix (which only gets added to the first fragment.) * Switch apparently doesn't know how to format a size_t for analytics either. Also: Typo in backwards compatibility command name alias Change 3337347 on 2017/03/08 by Jeff.Fisher UE-42631 Stereo off while prox sensor uncovered causes low framerate -Setting maxfps appropriately on 'stereo on/off'. #review-3384107 #jira UE-42631 Change 3338385 on 2017/03/08 by Ryan.Vance r.DisableDistortion was only being used for the mobile renderer Change 3342301 on 2017/03/10 by patrickr.donovan Test updates to TM-VRSmoke. Increased lightmap resolution on QA_MeshTypes meshes to improve readbility and reliablility of tests involving said asset. Rebuilt lighting. Change 3348133 on 2017/03/15 by Ryan.Vance Moving mono cvars to scene rendering to avoid cross module references. There's not a good reason to have them in the hmd module anyway. Change 3348836 on 2017/03/15 by Ryan.Vance Direct multi-view support for gear vr Monoscopic far field with multi-view (blit and direct) support for gear vr Support for translucent objects on both sides of the mono clip plane (due to a sorting issue, objects that straddle the plane composite incorrectly) Fixed missing discards/clears in the multi-view blit Change 3348843 on 2017/03/15 by Ryan.Vance Fixing color/depth target size mismatch when screen percentage scaling results in a size that isn't divisible by 16. Change 3349276 on 2017/03/16 by Keli.Hlodversson Fixing compile errors in GoogleVR after merge from main. Change 3350932 on 2017/03/16 by Ryan.Vance Re-enabling the gearvr plugin on windows. Change 3351977 on 2017/03/17 by Jeff.Fisher Fixing masked member variable. Change 3352314 on 2017/03/17 by Ryan.Vance We need to ensure that we don't select different lod levels for each eye. Change 3352993 on 2017/03/17 by Nick.Whiting Integrating CL 3345824 from Android-DevVR to Dev-VR. Support for device depth pass in SceneCaptureComponent2D Change 3355185 on 2017/03/20 by Nick.Whiting Added ability to disable the autoloading splash screen, which would prevent the hide splash screen node from ever working Change 3355676 on 2017/03/20 by Nick.Whiting PR #3384: [GNUX] SteamVR, OpenGL patch. (Contributed by yaakuro), with some minor modifications Change 3357286 on 2017/03/21 by Jeff.Fisher Fixing GenerateProjectFiles, looks like the .config. was removed from these references in main some time ago. Change 3357435 on 2017/03/21 by Jeff.Fisher Fixing editor build break, looks like a merge mistake. Change 3359960 on 2017/03/23 by Keli.Hlodversson Prevent potential crash when drawing tracking sensor location. Also only fetch HMD location once instead of once per tracking sensor. Change 3361230 on 2017/03/23 by Jeff.Fisher Fixing linux build opengl include problem... maybe. Change 3361638 on 2017/03/23 by Jeff.Fisher Another guess at fixing linux build. Change 3364224 on 2017/03/24 by Keli.Hlodversson Initial implementation of UEVR-576 - Base emulated layer implementation #jira UEVR-668 - Base emulated layer implementation: Initial framework for overrideable default implementation #jira UEVR-669 - Base emulated layer implementation: Face Locked Layers Support #jira UEVR-670 - Base emulated layer implementation: Tracker Locked Layers Support #jira UEVR-671 - Base emulated layer implementation: World Locked Layers Support #jira UEVR-672 - Base emulated layer implementation: Add support for optionally rendering face locked layers into a separate layer Change 3364242 on 2017/03/24 by Keli.Hlodversson SteamVR layers do not support negatve Layer priorities Change 3364263 on 2017/03/24 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) Monoscopicfarfieldrendering was just 'accept source', Ryan is going to look at fixing it up. Change 3364472 on 2017/03/24 by Jeff.Fisher Merge fix Change 3364475 on 2017/03/24 by Jeff.Fisher Fixing gearvr include. Change 3364486 on 2017/03/24 by Jeff.Fisher merge fix Change 3364532 on 2017/03/24 by Ryan.Vance pso update for mono rendering and stereo layers. Change 3364599 on 2017/03/24 by Ryan.Vance Oculus changes for SI1.12 Change 3365159 on 2017/03/26 by Jeff.Fisher include fix Change 3365182 on 2017/03/26 by Jeff.Fisher include fix Change 3366087 on 2017/03/27 by Ryan.Vance Remaining files from Oculus changes for SI1.12 merge request. Fixing a bug in OnlineSubsystem. Temporarily changing the eye padding change to be a shader clear to work around a clear color binding issue. Change 3366492 on 2017/03/27 by Ryan.Vance #jira UE-43294 Moved the clear before we setup state for drawing the mirror window content. It was stomping over state after the pso changes. Going to leave the shader clear in the rift prerender for clearing the eye padding for now. Change 3366929 on 2017/03/27 by Ryan.Vance Fixing compile error Change 3368549 on 2017/03/28 by Jeff.Fisher Merging Change: 3357998 from //UE4/Partner-Google-VR/Engine/... to Dev-VR Upgrade Google VR Plugin to v1.3: *Upgraded GVR NDK to 1.30.0 *Changed some BlueprintFunction to use BlueprintPure *Add the missing bDaydream flag in UEDeployAndroid.cs #review-3384107 Change 3368975 on 2017/03/28 by Ryan.Vance CIS clean up #jira UE-43428, UE-43429, UE-43426, UE-43427 Change 3369028 on 2017/03/28 by Ryan.Vance This is not exacly 'correct', but it's at least what the code was trying to do. Change 3370203 on 2017/03/29 by Ryan.Vance Adding gear vr controller component support. Change 3370918 on 2017/03/29 by Ryan.Vance Merging 3370569 using Partner-Google-VR_to_DevVR Change 3371030 on 2017/03/29 by Ryan.Vance Fixing linux build errors #jira UE-43426 Change 3371036 on 2017/03/29 by Ryan.Vance Oculus 4.16 integration. Not terribly happy with the use of std::string. They promised to clean this up for the next release. Change 3373495 on 2017/03/30 by Jeff.Fisher Merging from Dev-Main, in preparation for 4.16 Change 3373578 on 2017/03/30 by Jeff.Fisher build break, one comma short Change 3373870 on 2017/03/31 by Jeff.Fisher Include order fix. Change 3374001 on 2017/03/31 by Keli.Hlodversson Use DefaultStereoLayers as base for Morpheus implementation. #jira UEVR-709 #jira UE-42919 #rb: Jeff.Fisher Change 3374004 on 2017/03/31 by Keli.Hlodversson Fix rendering for the default Stereo Layers implementation on mobile. Depth test was set to "Never" instead of "Always" Destination texture on GLES is flipped on the Y axis, the coordinates are reversed in the shade when compiled on the relevant platforms. Change 3375125 on 2017/03/31 by Jeff.Fisher UE-43506 Ensure using VRPreview with GoogleVR -Removed the ensure, there is code in there to handle that case, and it works. #jira UE-43506 Change 3375294 on 2017/03/31 by nick.bullard Resaving Plugin content to resovle "saved with empty engine version" #jira UE-43537 Change 3375480 on 2017/03/31 by Jeff.Fisher UEVR-9 PSVR: Social Screen Support -Experimental social screen support for 4.16. -This does the basics of driving output through the Aux port in the proper format for display on the mirror monitor. -Only supports 30fps on the mirror monitor. 60fps will require the implementation of sony system dialogs to deal with incompatable system features (video streaming, remote play). -There is a project setting in Morpheus, under experiemental bEnableSocialScreenSeparateMode. This must be set to true to use this feature. When it is false we avoid allocating the back buffers. -MorpheusFunctionLibrary blueprints now have a node "SetSocialScreenMode" which can switch between SystemMirror (hardware supported mirroring), SeparateTest (alternates black and white), SeparateTexture (displays a texture, eg a render target, specified via blueprint), and SeparateMirror(puts the hmd render buffer on screen - which is both eyes, like a debug mode). -Also finally updated the bEnabled flag in project settings to tell people it's only for PC. #jira UEVR-9 #review-3384107 Change 3375540 on 2017/03/31 by Ryan.Vance #jira UE-43504 Fixing android build break when using a 64 bit isa. Change 3375655 on 2017/03/31 by Jeff.Fisher Fixing missing RGBAToYUV shader problem -This at least unblocks our process. Will revisit before zbr. Change 3375820 on 2017/04/01 by Jeff.Fisher Fixing linux build warning about HAS_MORPHEUS Change 3376050 on 2017/04/02 by Jeff.Fisher UE-43515 Step 'UE4Editor Static Analysis Win64' - Module.OnlineSubsystemOculus.cpp Warnings -Temporary fix for static analysis annotation warnings in OnlineSubsytemOculus. Longer term plan is to eliminate the use of the headers that trigger the warnings. -Just wrap all standard headers in static analysis disables. #jira UE-43515 Change 3376609 on 2017/04/03 by Jeff.Fisher Fixing rgbatoyuvshader include. Change 3377001 on 2017/04/03 by Jeff.Fisher UE-43547 Launch On PS4 fails during Run command - Missing global shader FRGBAToYUV420CS - shader c++ must be compiled so that it can be cooked for ps4. #jira UE-43547 Change 3379858 on 2017/04/04 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) pulling main this should get us ps4 sdk 4.508 Change 3379938 on 2017/04/04 by Ryan.Vance #jira UE-43548 If stereo layers are not being used, don't setup overlay targets as we will never clear/initialize them. The clear happens as part of the default layers PostRenderView_RenderThread call which wont be called if layers aren't being used in the scene. Change 3381519 on 2017/04/05 by Jeff.Fisher UEVR-733 PS4 sdk 4.500 hmd connection api changes break hmd connect. -Handling failure of sceHmdGetDeviceInformation if the hmd is powered off. It now returns an error code about an invalid handle in that case, rather than reporting unready. We just treat the error code like an unready status. #jira UEVR-733 #review-3384107 Change 3382019 on 2017/04/05 by Ryan.Vance Linux: add Vulkan support from dev editor: 3381593 Change 3382021 on 2017/04/05 by Ryan.Vance SteamVR on Linux using Vulkan OpenVR rev to 1_0_6 PR #3412: [GNUX] Initial support for SteamVR using Vulkan on GNUX platform. (Contributed by yaakuro) Change 3382076 on 2017/04/05 by Ryan.Vance Fixing linux steamvr lib path. It changed to something less silly in 1.0.6 Removing the steamvr plugin from the white list for linux. It's looking for a runtime that no one will have installed. Change 3383237 on 2017/04/06 by Ryan.Vance #jira UE-43732 Fixing Android compile issues. We can't wrap portions of a macro with a definie. This should probably be some sort of recursive macro thing since there's so much overlap. Good enough for now. Change 3383353 on 2017/04/06 by Ryan.Vance Fixing include cycles. Change 3383509 on 2017/04/06 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) merging the stuff from dev-mobile [CL 3384106 by Ryan Vance in Main branch]
2017-04-06 22:03:51 -04:00
if (DepthStencilTarget)
{
glFramebufferTextureMultisampleMultiviewOVR(GL_DRAW_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, DepthStencilTarget->GetResource(), 0, NumSamplesRendered, 0, 2);
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3383750) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3012064 on 2016/06/13 by Nick.Whiting Merging Main -> DevVR Change 3048060 on 2016/07/13 by Nick.Whiting Integrating CL 3045721 from //depot/Partners/Google/AndroidVR-DevVR Upgrade Android and iOS GVR SDK to the latest. Fix the flipped vignette issue when using Unreal's post processing distortion. Change the Daydream & Cardboard mode to use scanline racing. Deprecate the ability to turn off individual UI elements. Change 3235307 on 2016/12/14 by Keli.Hlodversson Filter out excluded HMD modules during FEngineLoop:PreInitHMDDevice. The final selection still happens in UEngine::InitializeHMDDevice as all HMD plugins have not been loaded during PreInit Change 3235308 on 2016/12/14 by Ryan.Vance #jira UEVR-478 Monoscopic far field improvements Shader changes are now gated behind the read only cvar vr.MonoscopicFarField. Changing this requires a shader compile. Moved the mono rendering mode to the cvar vr.MonoscopicFarFieldMode. This is writable, so users can enable/disable mono rendering on the fly if the above cvar is enabled. Only write to the alpha channel in the mobile base pass if the object is opaque and MONOSCOPIC_FAR_FIELD is defined. Addressed code review comments. Change 3235397 on 2016/12/14 by Keli.Hlodversson [Oculus] Only enable GearVR platform on Windows if Oculus service is running Original author: Loren.McQuade Change 3235762 on 2016/12/14 by Keli.Hlodversson Add explicit parentheses to placate the build bots. Change 3242318 on 2016/12/21 by Ryan.Vance Working around pixel density crash. Change 3242522 on 2016/12/21 by Ryan.Vance Missing flag clear so our adaptive test was always returning true. Change 3243173 on 2016/12/22 by Ryan.Vance Integrating post present callback implementation from 4.14.1 Change 3248633 on 2017/01/05 by Keli.Hlodversson Copying //Tasks/UE4/Dev-VR-Refactoring to Dev-VR-Minimal (//UE4/Dev-VR-Minimal) Change 3248723 on 2017/01/05 by Keli.Hlodversson Fix after merge. EnablePositionalTracking no longer exists. Change 3249484 on 2017/01/06 by Keli.Hlodversson Add missing includes Change 3249714 on 2017/01/06 by Keli.Hlodversson Remove monolithic header include Change 3249980 on 2017/01/06 by Keli.Hlodversson SteamVR: Remove leftover unused WindowMirrorMode member variable Change 3252432 on 2017/01/10 by Keli.Hlodversson Submitting change by Loren McQuade to fix monolithic builds. Unshelved from pending changelist '3251436': Change 3257373 on 2017/01/13 by Keli.Hlodversson #jira UEVR-411: Finish renaming/removing/remodelling the remaining Oculus (Rift+GearVR) commands #jira UEVR-412: Rename and merge remaining Morpheus console commands #jira UEVR-417: Remove Exec from IHeadMountedDisplay Change 3269971 on 2017/01/24 by Jeff.Fisher UEVR-498 move controller is missing world to meters UEVR-522 PS4 motion controller worldscale support. -Passing world to meters scale into getControllerOrientationAndPosition because the thing asking about it ought to be part of a world, and know what it should be. This also avoids making PS4 motion controllers dependent on the HMD. Note Google VR Controller doesn't do position, so doesnt' care about scale. Oculus already had internal threadsafe tracking of world scale, so I left that. Steam handles world scale below our input level. -Also adding PlayerIndex member to FSceneView so we can figure out which view the MotionControllerComponent should get its worldscale from for the late render thread update. #jira UEVR-498 #review-3384107 Change 3288308 on 2017/02/06 by Jeff.Fisher UEVR-517 Detect MotionController Connectivity -PS4 can only track 2 controllers and 1 hmd. Support for dealing with that is needed. -Also need to support multiple motion controller components mapped to a single controller. Licencees have done that before. -Created a new interface IMotionTrackingSystemManagement, and implements it for PS4Tracker on PS4. -Created a MotionTrackedDeviceFunctionLibrary to expose that interface to blueprint. -With those one can enable and disable tracking on ps4 controllers and query their state to stay within the controller tracking limit. -PS4Tracker also keeps a blackboard of the enable/disable state so that one can enable or disable controllers that have not been connected yet, and have them enable tracking or not when they are connected. -DS4 controller no longer jumps back to 000 if it loses tracking. #review-3384107 #jira UEVR-517 Change 3288309 on 2017/02/06 by Keli.Hlodversson Add file missing from CL#3257373. Change 3288311 on 2017/02/06 by Jeff.Fisher UEVR-517 Detect MotionController Connectivity - Test content. -tm-motionControllers has a third mode where all playstation motion controllers for player 0 are availalbe. You can toggle them to track or not with ctrl-P,G,L,R for pad, gun, leftmove, rightmove or with alt-P,G,L,R. Ctrl tests doing so via MotionControllerComponent. Alt tests doing so by player index and controller type enum. -ctrl-A disables tracking of all controllers -alt-A disables tracking of all controllers for player 0 -ctrl-D toggles enabling new controllers by default -Also fixed one button not working in one of the other test modes for the Aim (gun) controller. -The controller 'models' have an arrow out the front. It is black if disabled. Red if enabled, but no tracker is active, yellow if tracked but inertial only, and green if fully tracked by the camera. -This logic is in the QA_MoCoAll blueprint. Change 3291601 on 2017/02/07 by Jeff.Fisher UEVR-536 PSVR motion controller tracking problem with multiple controllers -Previous code called GetRelativeTransform from the render thread, but the game thread could update it at any time. This caches that transform so that it can be safely used in the render thread. #jira UEVR-536 #review-3384107 @Ryan.Vance Change 3292460 on 2017/02/08 by Jeff.Fisher PS4 sceVrTrackerGetResult() error warning logging improved, and explanatory comment added. Change 3308771 on 2017/02/17 by Keli.Hlodversson Rename GoogleVR console commands #jira UEVR-412 Change 3309156 on 2017/02/17 by Keli.Hlodversson Track changes in r.ScreenPercentage on GoogleVR and set RenderTargetSize accordingly. Change 3311999 on 2017/02/20 by Keli.Hlodversson Create a default implementation for RecordAnalytics. Also create an initial stub for FHeadMountedDisplayBase for future default implementations of common HMD functionality. Make implementing IHeadMountedDisplay::GetDeviceName mandatory instead of defaulting to "Unknown" #jira UE-21878 #jira UEVR-213 Change 3313467 on 2017/02/20 by Ryan.Vance #jira UE-41604 3278583 pCustomPresent->AllocateRenderTargetTexture may return false, if we blindly return true we can end up with an invalid render target since the fall back sceneviewport will be skipped. 3278536 Adding ovrError_NoHmd to our sanity check in OnStartGameFrame. Change 3314002 on 2017/02/21 by Keli.Hlodversson Fix compilation on PS4 and Linux Change 3326722 on 2017/03/01 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) Integrating 4.15 from main. Change 3327567 on 2017/03/01 by Jeff.Fisher UEVR-588 Oculus crash on "stereo on" when the proximity sensor is not triggered. Duplicating from Release-4.15 cl 3327481, 3327542 -Don't ovr_SubmitFrame when the layers need to be recreated. They stay dirty until rendering is unpaused. #jira UEVR-588 #review-3384107 Change 3328098 on 2017/03/01 by Jeff.Fisher 4.15 merge fixes -Fixed deprecated enum name function usage. -Fixed world scale usage in GoogleVRController. -Fixed compile break in PS4Tracker. Change 3328271 on 2017/03/01 by Jeff.Fisher 2.15 merge -restroging GoogleVRController::GetWorldToMetersScale... cause it is used everywhere. Change 3328307 on 2017/03/01 by Jeff.Fisher 4.15 merge -More googlevr worldscale fixes. Change 3328312 on 2017/03/01 by Jeff.Fisher 4.15 merge -removing 2 unused includes Change 3330610 on 2017/03/02 by Jeff.Fisher 4.15 merge -fixing linux build Change 3333952 on 2017/03/06 by Keli.Hlodversson Implement common stereo layer management base class and use it in SteamVR and PS4. Fixes an outstanding bug in SteamVR where texures are updated every frame regardles of whether the continous update flag is set or not. #jira UEVR-628 #jira UE-42555 Change 3334961 on 2017/03/07 by Keli.Hlodversson Add missing include to fix non-unity builds Change 3336200 on 2017/03/07 by Keli.Hlodversson Fix compilation issues. (https://ec-01.epicgames.net/commander/link/jobDetails/jobs/7568252?jobName=UE4+Dev-VR+-+CL+3334961+-+Nightly+Build&s=Jobs) * Pre VS2015 compilers don't like mixing wide and unmarked strings in concatenation. Unfortunately LOCTEXT hides the call to the TEXT macro, completely hinding the prefix (which only gets added to the first fragment.) * Switch apparently doesn't know how to format a size_t for analytics either. Also: Typo in backwards compatibility command name alias Change 3337347 on 2017/03/08 by Jeff.Fisher UE-42631 Stereo off while prox sensor uncovered causes low framerate -Setting maxfps appropriately on 'stereo on/off'. #review-3384107 #jira UE-42631 Change 3338385 on 2017/03/08 by Ryan.Vance r.DisableDistortion was only being used for the mobile renderer Change 3342301 on 2017/03/10 by patrickr.donovan Test updates to TM-VRSmoke. Increased lightmap resolution on QA_MeshTypes meshes to improve readbility and reliablility of tests involving said asset. Rebuilt lighting. Change 3348133 on 2017/03/15 by Ryan.Vance Moving mono cvars to scene rendering to avoid cross module references. There's not a good reason to have them in the hmd module anyway. Change 3348836 on 2017/03/15 by Ryan.Vance Direct multi-view support for gear vr Monoscopic far field with multi-view (blit and direct) support for gear vr Support for translucent objects on both sides of the mono clip plane (due to a sorting issue, objects that straddle the plane composite incorrectly) Fixed missing discards/clears in the multi-view blit Change 3348843 on 2017/03/15 by Ryan.Vance Fixing color/depth target size mismatch when screen percentage scaling results in a size that isn't divisible by 16. Change 3349276 on 2017/03/16 by Keli.Hlodversson Fixing compile errors in GoogleVR after merge from main. Change 3350932 on 2017/03/16 by Ryan.Vance Re-enabling the gearvr plugin on windows. Change 3351977 on 2017/03/17 by Jeff.Fisher Fixing masked member variable. Change 3352314 on 2017/03/17 by Ryan.Vance We need to ensure that we don't select different lod levels for each eye. Change 3352993 on 2017/03/17 by Nick.Whiting Integrating CL 3345824 from Android-DevVR to Dev-VR. Support for device depth pass in SceneCaptureComponent2D Change 3355185 on 2017/03/20 by Nick.Whiting Added ability to disable the autoloading splash screen, which would prevent the hide splash screen node from ever working Change 3355676 on 2017/03/20 by Nick.Whiting PR #3384: [GNUX] SteamVR, OpenGL patch. (Contributed by yaakuro), with some minor modifications Change 3357286 on 2017/03/21 by Jeff.Fisher Fixing GenerateProjectFiles, looks like the .config. was removed from these references in main some time ago. Change 3357435 on 2017/03/21 by Jeff.Fisher Fixing editor build break, looks like a merge mistake. Change 3359960 on 2017/03/23 by Keli.Hlodversson Prevent potential crash when drawing tracking sensor location. Also only fetch HMD location once instead of once per tracking sensor. Change 3361230 on 2017/03/23 by Jeff.Fisher Fixing linux build opengl include problem... maybe. Change 3361638 on 2017/03/23 by Jeff.Fisher Another guess at fixing linux build. Change 3364224 on 2017/03/24 by Keli.Hlodversson Initial implementation of UEVR-576 - Base emulated layer implementation #jira UEVR-668 - Base emulated layer implementation: Initial framework for overrideable default implementation #jira UEVR-669 - Base emulated layer implementation: Face Locked Layers Support #jira UEVR-670 - Base emulated layer implementation: Tracker Locked Layers Support #jira UEVR-671 - Base emulated layer implementation: World Locked Layers Support #jira UEVR-672 - Base emulated layer implementation: Add support for optionally rendering face locked layers into a separate layer Change 3364242 on 2017/03/24 by Keli.Hlodversson SteamVR layers do not support negatve Layer priorities Change 3364263 on 2017/03/24 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) Monoscopicfarfieldrendering was just 'accept source', Ryan is going to look at fixing it up. Change 3364472 on 2017/03/24 by Jeff.Fisher Merge fix Change 3364475 on 2017/03/24 by Jeff.Fisher Fixing gearvr include. Change 3364486 on 2017/03/24 by Jeff.Fisher merge fix Change 3364532 on 2017/03/24 by Ryan.Vance pso update for mono rendering and stereo layers. Change 3364599 on 2017/03/24 by Ryan.Vance Oculus changes for SI1.12 Change 3365159 on 2017/03/26 by Jeff.Fisher include fix Change 3365182 on 2017/03/26 by Jeff.Fisher include fix Change 3366087 on 2017/03/27 by Ryan.Vance Remaining files from Oculus changes for SI1.12 merge request. Fixing a bug in OnlineSubsystem. Temporarily changing the eye padding change to be a shader clear to work around a clear color binding issue. Change 3366492 on 2017/03/27 by Ryan.Vance #jira UE-43294 Moved the clear before we setup state for drawing the mirror window content. It was stomping over state after the pso changes. Going to leave the shader clear in the rift prerender for clearing the eye padding for now. Change 3366929 on 2017/03/27 by Ryan.Vance Fixing compile error Change 3368549 on 2017/03/28 by Jeff.Fisher Merging Change: 3357998 from //UE4/Partner-Google-VR/Engine/... to Dev-VR Upgrade Google VR Plugin to v1.3: *Upgraded GVR NDK to 1.30.0 *Changed some BlueprintFunction to use BlueprintPure *Add the missing bDaydream flag in UEDeployAndroid.cs #review-3384107 Change 3368975 on 2017/03/28 by Ryan.Vance CIS clean up #jira UE-43428, UE-43429, UE-43426, UE-43427 Change 3369028 on 2017/03/28 by Ryan.Vance This is not exacly 'correct', but it's at least what the code was trying to do. Change 3370203 on 2017/03/29 by Ryan.Vance Adding gear vr controller component support. Change 3370918 on 2017/03/29 by Ryan.Vance Merging 3370569 using Partner-Google-VR_to_DevVR Change 3371030 on 2017/03/29 by Ryan.Vance Fixing linux build errors #jira UE-43426 Change 3371036 on 2017/03/29 by Ryan.Vance Oculus 4.16 integration. Not terribly happy with the use of std::string. They promised to clean this up for the next release. Change 3373495 on 2017/03/30 by Jeff.Fisher Merging from Dev-Main, in preparation for 4.16 Change 3373578 on 2017/03/30 by Jeff.Fisher build break, one comma short Change 3373870 on 2017/03/31 by Jeff.Fisher Include order fix. Change 3374001 on 2017/03/31 by Keli.Hlodversson Use DefaultStereoLayers as base for Morpheus implementation. #jira UEVR-709 #jira UE-42919 #rb: Jeff.Fisher Change 3374004 on 2017/03/31 by Keli.Hlodversson Fix rendering for the default Stereo Layers implementation on mobile. Depth test was set to "Never" instead of "Always" Destination texture on GLES is flipped on the Y axis, the coordinates are reversed in the shade when compiled on the relevant platforms. Change 3375125 on 2017/03/31 by Jeff.Fisher UE-43506 Ensure using VRPreview with GoogleVR -Removed the ensure, there is code in there to handle that case, and it works. #jira UE-43506 Change 3375294 on 2017/03/31 by nick.bullard Resaving Plugin content to resovle "saved with empty engine version" #jira UE-43537 Change 3375480 on 2017/03/31 by Jeff.Fisher UEVR-9 PSVR: Social Screen Support -Experimental social screen support for 4.16. -This does the basics of driving output through the Aux port in the proper format for display on the mirror monitor. -Only supports 30fps on the mirror monitor. 60fps will require the implementation of sony system dialogs to deal with incompatable system features (video streaming, remote play). -There is a project setting in Morpheus, under experiemental bEnableSocialScreenSeparateMode. This must be set to true to use this feature. When it is false we avoid allocating the back buffers. -MorpheusFunctionLibrary blueprints now have a node "SetSocialScreenMode" which can switch between SystemMirror (hardware supported mirroring), SeparateTest (alternates black and white), SeparateTexture (displays a texture, eg a render target, specified via blueprint), and SeparateMirror(puts the hmd render buffer on screen - which is both eyes, like a debug mode). -Also finally updated the bEnabled flag in project settings to tell people it's only for PC. #jira UEVR-9 #review-3384107 Change 3375540 on 2017/03/31 by Ryan.Vance #jira UE-43504 Fixing android build break when using a 64 bit isa. Change 3375655 on 2017/03/31 by Jeff.Fisher Fixing missing RGBAToYUV shader problem -This at least unblocks our process. Will revisit before zbr. Change 3375820 on 2017/04/01 by Jeff.Fisher Fixing linux build warning about HAS_MORPHEUS Change 3376050 on 2017/04/02 by Jeff.Fisher UE-43515 Step 'UE4Editor Static Analysis Win64' - Module.OnlineSubsystemOculus.cpp Warnings -Temporary fix for static analysis annotation warnings in OnlineSubsytemOculus. Longer term plan is to eliminate the use of the headers that trigger the warnings. -Just wrap all standard headers in static analysis disables. #jira UE-43515 Change 3376609 on 2017/04/03 by Jeff.Fisher Fixing rgbatoyuvshader include. Change 3377001 on 2017/04/03 by Jeff.Fisher UE-43547 Launch On PS4 fails during Run command - Missing global shader FRGBAToYUV420CS - shader c++ must be compiled so that it can be cooked for ps4. #jira UE-43547 Change 3379858 on 2017/04/04 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) pulling main this should get us ps4 sdk 4.508 Change 3379938 on 2017/04/04 by Ryan.Vance #jira UE-43548 If stereo layers are not being used, don't setup overlay targets as we will never clear/initialize them. The clear happens as part of the default layers PostRenderView_RenderThread call which wont be called if layers aren't being used in the scene. Change 3381519 on 2017/04/05 by Jeff.Fisher UEVR-733 PS4 sdk 4.500 hmd connection api changes break hmd connect. -Handling failure of sceHmdGetDeviceInformation if the hmd is powered off. It now returns an error code about an invalid handle in that case, rather than reporting unready. We just treat the error code like an unready status. #jira UEVR-733 #review-3384107 Change 3382019 on 2017/04/05 by Ryan.Vance Linux: add Vulkan support from dev editor: 3381593 Change 3382021 on 2017/04/05 by Ryan.Vance SteamVR on Linux using Vulkan OpenVR rev to 1_0_6 PR #3412: [GNUX] Initial support for SteamVR using Vulkan on GNUX platform. (Contributed by yaakuro) Change 3382076 on 2017/04/05 by Ryan.Vance Fixing linux steamvr lib path. It changed to something less silly in 1.0.6 Removing the steamvr plugin from the white list for linux. It's looking for a runtime that no one will have installed. Change 3383237 on 2017/04/06 by Ryan.Vance #jira UE-43732 Fixing Android compile issues. We can't wrap portions of a macro with a definie. This should probably be some sort of recursive macro thing since there's so much overlap. Good enough for now. Change 3383353 on 2017/04/06 by Ryan.Vance Fixing include cycles. Change 3383509 on 2017/04/06 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) merging the stuff from dev-mobile [CL 3384106 by Ryan Vance in Main branch]
2017-04-06 22:03:51 -04:00
VERIFY_GL(glFramebufferTextureMultisampleMultiviewOVR);
}
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3145687) #lockdown Nick.Penwarden #rb Merge ========================== MAJOR FEATURES + CHANGES ========================== Change 3094167 on 2016/08/18 by Jeff.Fisher UEVR-97 Morpheus HMD tracking needs to wait until HMD is fully tracked. -Morpheus CALIBRATING/NOT_TRACKED tracking state hmd orientation update disabled and delegates added to present instructions to the user. This behavior is controlled by morpheus ini setting bDisableHMDOrientationUntilHMDHasBeenTracked, but defaulted to true to avoid subtly bad user experiences. #review-3094106 @chad.taylor #jira UEVR-97 Change 3104799 on 2016/08/29 by Jeff.Fisher UEVR-178 Morpheus HMD Black crescents -Switched reprojection frame time for 60/120 mode from 120hz to 60hz so we much better predict where the hmd will be pointing when the frame we are about to render is actually displayed, and are run off the edge of it less often and less severely. This makes the black crescent artifacts only just visible during very fast head turning. The kWrapModeMirror change, which will be submitted separately, makes the left and right crescents invisible to me. -Renamed the functions for setting the prediction info in the PS4Tracker. -Added render frame parameters to sony reprojection functions, these can help with debugging reprojection. -Added commented out sce call to get the reprojection debug data. Not allowed to submit an executable that calls it, but its nice to at least know where one can put it. May improve this later. -Wrapped PS4Tracker->Synchronize call in a check that the tracker handle is valid, because I managed to get it called when it wasn't (probably during hmd power off testing, but I don't remember now). It should be fine to not do it if the tracker is not functioning. #review-3104780 chad.taylor #jira UEVR-178 Change 3108423 on 2016/08/31 by Jeff.Fisher Morpheus Config Improvements. -UEVR-138 Morpheus HMD reprojection wrap mode config setting -Can now switch between wrap mode Mirror and ClampToBorder. Mirror is the default. -Made bDisableHMDOrientationUntilHMDHasBeenTracked editable in UE4Editor project settings. -Using generic project setting for bStartInVR, removed the morpheus specific one. #jira UEVR-138 #review-3106999 @nick.whiting Change 3111231 on 2016/09/01 by Jeff.Fisher Fixed bStartInVR ini setting. -Initial implementation worked via a generic EnableStereo call, which worked, but happened after the hmd setup dialog, which is not what I wanted. -Also fixed a tracking frame mismatch assert that hit when I powered the hmd off once, causing it to lose tracking. Its ok that it doesn't update in that circumstance. #review-3111211 @ryan.vance Change 3115196 on 2016/09/06 by Keli.Hlodversson #jira UEVR-128 Map move controller Select button to Invalid, as it is always handled by the system Change 3116425 on 2016/09/07 by Chad.Taylor PSVR: stereo layers implementation Change 3116593 on 2016/09/07 by Jeff.Fisher UEVR-126 Morpheus HMD connect dialog cancel reactions -VR only apps can't allow the player to cancel out of the hmd setup dialog, so lets just pop the dialog up again (sony were ok with a licencee doing this) if an ini setting says to do that. -VR/2D apps might want to switch to 2d if the player cancels out of the hmd setup dialog, so there is an ini setting for that. -A delegate only implementation is also provided for apps that want to do something else. This leaves the game rendering in VR mode, and fires the delegate. -Refactored to better separate successful HMD acquisition from stereo rendering. This was necessary to support the delegate only option on startup. If you start in vr mode with your hmd off and cancel the dialog stereo rendering now starts with default values for the hmd hardware stats (as read from my pvt) instead of crashing trying to use uninitialized data. When an hmd is connected its values will be read. -Refactored to ensure reprojection starts immediately when we call StartReprojection. #jira UEVR-126 #review-3116221 Change 3116754 on 2016/09/07 by Keli.Hlodversson bPixelDensityAdaptive is a bool and not a float property Change 3117692 on 2016/09/08 by Jeff.Fisher UEVR-135 Morpheus HMD recent feature error reporting UEVR-173 2DVR flexibility (UTexture) -Error log for sceHmdReprojectionSetOutputMinColor failure. -Made the parameter for 2dVR a UTexture* instead of a UTexture2D*, so it can be a rendertarget, etc. -Added error logs for missing texture, invalid texture, wrong texture format to 2DVR. #jira UEVR-135 #jira UEVR-173 #review-3116955 @keli.hloedversson Change 3117990 on 2016/09/08 by Jeff.Fisher UEVR-127 Morpheus HMD removal reaction -Added VRHeadsetPutOnHead and VRHeadsetRemovedFromHead delegates, and implemented them for Morpheus. #jira UEVR-127 #review-3117968 @keli.hlodversson Change 3120198 on 2016/09/09 by Jeff.Fisher MorpheusReprojector frame complete wait error log -Now log a warning if the sceKernalWaitEqueue returns an error. It not a problem if this happens rarely, but something is very broken if it starts happening continuously. Change 3121754 on 2016/09/12 by Keli.Hlodversson #jira UE-21878 - Also emit VR initialization analytics events in the editor. Change 3122311 on 2016/09/12 by Nick.Whiting Merging fix for Adreno devices rendering black from 4.13.1 Change 3123057 on 2016/09/13 by Keli.Hlodversson #jira UE-30097 Use the current value of r.ScreenPercentage on Occulus Rift if it's explicitly set. * If the SetBy part of the flags for the console var is SetBy_Constructor, then ignore the value. * If it's SetBy_Scalability, then ignore it if it equals 100 * Else, call SetScreenPercentage using the current value The obsolete HMD SCREENPERCENTAGE console command is still available and will override the setting until r.ScreenPercentage is modified the next time. Change 3123200 on 2016/09/13 by Chad.Taylor PS4 Stereo Layer double buffering. Since the overlays are reprojected at 120hz but rendered at 60hz we need to render to a separate buffer than the one being used by reprojection. Change 3125845 on 2016/09/14 by Keli.Hlodversson #jira UE-33996 Add hmd=<name> command line option to allow overriding which HMD module is used. Renamed GetModulePriorityKeyName to simply GetModuleKeyName, as this name is now also used to match against the command line options. Change 3127293 on 2016/09/15 by Jeff.Fisher UEVR-225 Morpheus HMD top and bottom black crescents -The hidden and visible area meshes for morpheus were too restrictive. Nudged them out a bit, no black crescents at the top and bottom of the screen. We are rendering a few more pixels now though. #review-3127145 @ryan.vance #jira UEVR-225 Change 3130635 on 2016/09/19 by Jeff.Fisher UEVR-226 Morpheus HMD mirrored fill wrong on outer edges -The setting was never being used, leaving the wrap mode at 0 aka kWrapModeWrap. -Refactored how the setting is applied so it works, and is less convoluted. #jira UEVR-226 #review-3129403 Change 3131615 on 2016/09/19 by Keli.Hlodversson #jira UE-29341. Update Chaperone bounds when SteamVR tells us they have changed Change 3136527 on 2016/09/22 by Keli.Hlodversson Don't depend on the current state of the VR subsystem when exiting PIE mode to decide whether the main window should be restored. Instead always restore it if it was minimized at the start. Change 3136652 on 2016/09/22 by Keli.Hlodversson Allow shutting down Steam VR subsystem without shutting down the Steam VR plugin completely in response to quitting from the SteamVR overlay. Enabling stereo rendering again will reinitialize SteamVR. This is useful when using PIE in VR mode as it allows entereing it again without restarting the editor. Also fixes crashes by first disabinge stereo rendering a short while before shutting down the VR subsystem. #jira UE-35940 Change 3138901 on 2016/09/23 by Ryan.Vance Merging 3138521 using OdinToDevVR to bring over temporary forward lighting ISR changes for 4.14 Change 3141614 on 2016/09/27 by Keli.Hlodversson Implement GetNumOfTrackingSensors and GetTrackingSensorProperties on SteamVR. #jira UE-32994 Change 3141948 on 2016/09/27 by Jeff.Fisher UEVR-242 Is AddControllerYawInput not allowed when morpheus is enabled? -Indeed it did not work. Looks like morpheus would not accumulate the yaw, so it would be reset every frame. I made the implementation of ApplyHmdRotation very similar to the one used for occulus (also similar to other platforms) to fix this. #jira UEVR-242 #review-3141933 keli.hlodversson Change 3143484 on 2016/09/28 by Nick.Whiting Integrating Oculus 1.8 SDK support, includes support for cylinder and cubemap stereo layers Change 3143517 on 2016/09/28 by Chad.Taylor Merging PS4Tracker fixes from Release-4.13 into Dev-VR Change 3143805 on 2016/09/28 by Keli.Hlodversson #jira UE-36478 Workaround to make world to meters scale apply correctly to Occulus controllers while running in PIE Change 3143943 on 2016/09/28 by Nick.Whiting Merging latest drop from OSVR Change 3144221 on 2016/09/28 by Keli.Hlodversson Implement GetTrackingSensorProperties on PS4 #jira UE-32994 Change 3144352 on 2016/09/28 by Ryan.Vance Initial implementation of mobile multi-view. This is non-functioning and requires a lot more work, but enough of the framework exists to make the 4.14 branch for an experimental release. Change 3144585 on 2016/09/29 by Jeff.Fisher UEVR-14 PSVR Support for 90Hz to 90Hz, and 120Hz to 120Hz -Enum setting added for the three frame sequences. -90Hz mode is trying to run camera updates at 90hz, but they can only run at 60 so every third one fails. This works, but its dubious. -Feature marked as experimental for now because of that 90hz tracking issue, and the lack of testing. -Defaulting to 60/120. #jira UEVR-14 #review-3143486 chad.taylor nick.whiting Change 3145263 on 2016/09/29 by Nick.Whiting Fix for constructor initialization order in StereoLayerComponent, which threw a warning on Clang Change 3145536 on 2016/09/29 by Nick.Whiting Fixes for project files to prevent mystery pop up from CAPI Change 3145663 on 2016/09/29 by Keli.Hlodversson PSVR: Make sure the camera orientation returned from GetTrackingSensorProperties points in the right direction. Change 3145670 on 2016/09/29 by Keli.Hlodversson For some reason the orientation of the Oculus tracking sensor is reported as pointing backwards. This flips it around to face front Change 3145687 on 2016/09/29 by Chad.Taylor VR splash screen support [CL 3146243 by Nick Whiting in Main branch]
2016-09-30 01:16:13 -04:00
}
else
{
glFramebufferTextureMultiviewOVR(GL_DRAW_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, RenderTarget->GetResource(), 0, 0, 2);
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3145687) #lockdown Nick.Penwarden #rb Merge ========================== MAJOR FEATURES + CHANGES ========================== Change 3094167 on 2016/08/18 by Jeff.Fisher UEVR-97 Morpheus HMD tracking needs to wait until HMD is fully tracked. -Morpheus CALIBRATING/NOT_TRACKED tracking state hmd orientation update disabled and delegates added to present instructions to the user. This behavior is controlled by morpheus ini setting bDisableHMDOrientationUntilHMDHasBeenTracked, but defaulted to true to avoid subtly bad user experiences. #review-3094106 @chad.taylor #jira UEVR-97 Change 3104799 on 2016/08/29 by Jeff.Fisher UEVR-178 Morpheus HMD Black crescents -Switched reprojection frame time for 60/120 mode from 120hz to 60hz so we much better predict where the hmd will be pointing when the frame we are about to render is actually displayed, and are run off the edge of it less often and less severely. This makes the black crescent artifacts only just visible during very fast head turning. The kWrapModeMirror change, which will be submitted separately, makes the left and right crescents invisible to me. -Renamed the functions for setting the prediction info in the PS4Tracker. -Added render frame parameters to sony reprojection functions, these can help with debugging reprojection. -Added commented out sce call to get the reprojection debug data. Not allowed to submit an executable that calls it, but its nice to at least know where one can put it. May improve this later. -Wrapped PS4Tracker->Synchronize call in a check that the tracker handle is valid, because I managed to get it called when it wasn't (probably during hmd power off testing, but I don't remember now). It should be fine to not do it if the tracker is not functioning. #review-3104780 chad.taylor #jira UEVR-178 Change 3108423 on 2016/08/31 by Jeff.Fisher Morpheus Config Improvements. -UEVR-138 Morpheus HMD reprojection wrap mode config setting -Can now switch between wrap mode Mirror and ClampToBorder. Mirror is the default. -Made bDisableHMDOrientationUntilHMDHasBeenTracked editable in UE4Editor project settings. -Using generic project setting for bStartInVR, removed the morpheus specific one. #jira UEVR-138 #review-3106999 @nick.whiting Change 3111231 on 2016/09/01 by Jeff.Fisher Fixed bStartInVR ini setting. -Initial implementation worked via a generic EnableStereo call, which worked, but happened after the hmd setup dialog, which is not what I wanted. -Also fixed a tracking frame mismatch assert that hit when I powered the hmd off once, causing it to lose tracking. Its ok that it doesn't update in that circumstance. #review-3111211 @ryan.vance Change 3115196 on 2016/09/06 by Keli.Hlodversson #jira UEVR-128 Map move controller Select button to Invalid, as it is always handled by the system Change 3116425 on 2016/09/07 by Chad.Taylor PSVR: stereo layers implementation Change 3116593 on 2016/09/07 by Jeff.Fisher UEVR-126 Morpheus HMD connect dialog cancel reactions -VR only apps can't allow the player to cancel out of the hmd setup dialog, so lets just pop the dialog up again (sony were ok with a licencee doing this) if an ini setting says to do that. -VR/2D apps might want to switch to 2d if the player cancels out of the hmd setup dialog, so there is an ini setting for that. -A delegate only implementation is also provided for apps that want to do something else. This leaves the game rendering in VR mode, and fires the delegate. -Refactored to better separate successful HMD acquisition from stereo rendering. This was necessary to support the delegate only option on startup. If you start in vr mode with your hmd off and cancel the dialog stereo rendering now starts with default values for the hmd hardware stats (as read from my pvt) instead of crashing trying to use uninitialized data. When an hmd is connected its values will be read. -Refactored to ensure reprojection starts immediately when we call StartReprojection. #jira UEVR-126 #review-3116221 Change 3116754 on 2016/09/07 by Keli.Hlodversson bPixelDensityAdaptive is a bool and not a float property Change 3117692 on 2016/09/08 by Jeff.Fisher UEVR-135 Morpheus HMD recent feature error reporting UEVR-173 2DVR flexibility (UTexture) -Error log for sceHmdReprojectionSetOutputMinColor failure. -Made the parameter for 2dVR a UTexture* instead of a UTexture2D*, so it can be a rendertarget, etc. -Added error logs for missing texture, invalid texture, wrong texture format to 2DVR. #jira UEVR-135 #jira UEVR-173 #review-3116955 @keli.hloedversson Change 3117990 on 2016/09/08 by Jeff.Fisher UEVR-127 Morpheus HMD removal reaction -Added VRHeadsetPutOnHead and VRHeadsetRemovedFromHead delegates, and implemented them for Morpheus. #jira UEVR-127 #review-3117968 @keli.hlodversson Change 3120198 on 2016/09/09 by Jeff.Fisher MorpheusReprojector frame complete wait error log -Now log a warning if the sceKernalWaitEqueue returns an error. It not a problem if this happens rarely, but something is very broken if it starts happening continuously. Change 3121754 on 2016/09/12 by Keli.Hlodversson #jira UE-21878 - Also emit VR initialization analytics events in the editor. Change 3122311 on 2016/09/12 by Nick.Whiting Merging fix for Adreno devices rendering black from 4.13.1 Change 3123057 on 2016/09/13 by Keli.Hlodversson #jira UE-30097 Use the current value of r.ScreenPercentage on Occulus Rift if it's explicitly set. * If the SetBy part of the flags for the console var is SetBy_Constructor, then ignore the value. * If it's SetBy_Scalability, then ignore it if it equals 100 * Else, call SetScreenPercentage using the current value The obsolete HMD SCREENPERCENTAGE console command is still available and will override the setting until r.ScreenPercentage is modified the next time. Change 3123200 on 2016/09/13 by Chad.Taylor PS4 Stereo Layer double buffering. Since the overlays are reprojected at 120hz but rendered at 60hz we need to render to a separate buffer than the one being used by reprojection. Change 3125845 on 2016/09/14 by Keli.Hlodversson #jira UE-33996 Add hmd=<name> command line option to allow overriding which HMD module is used. Renamed GetModulePriorityKeyName to simply GetModuleKeyName, as this name is now also used to match against the command line options. Change 3127293 on 2016/09/15 by Jeff.Fisher UEVR-225 Morpheus HMD top and bottom black crescents -The hidden and visible area meshes for morpheus were too restrictive. Nudged them out a bit, no black crescents at the top and bottom of the screen. We are rendering a few more pixels now though. #review-3127145 @ryan.vance #jira UEVR-225 Change 3130635 on 2016/09/19 by Jeff.Fisher UEVR-226 Morpheus HMD mirrored fill wrong on outer edges -The setting was never being used, leaving the wrap mode at 0 aka kWrapModeWrap. -Refactored how the setting is applied so it works, and is less convoluted. #jira UEVR-226 #review-3129403 Change 3131615 on 2016/09/19 by Keli.Hlodversson #jira UE-29341. Update Chaperone bounds when SteamVR tells us they have changed Change 3136527 on 2016/09/22 by Keli.Hlodversson Don't depend on the current state of the VR subsystem when exiting PIE mode to decide whether the main window should be restored. Instead always restore it if it was minimized at the start. Change 3136652 on 2016/09/22 by Keli.Hlodversson Allow shutting down Steam VR subsystem without shutting down the Steam VR plugin completely in response to quitting from the SteamVR overlay. Enabling stereo rendering again will reinitialize SteamVR. This is useful when using PIE in VR mode as it allows entereing it again without restarting the editor. Also fixes crashes by first disabinge stereo rendering a short while before shutting down the VR subsystem. #jira UE-35940 Change 3138901 on 2016/09/23 by Ryan.Vance Merging 3138521 using OdinToDevVR to bring over temporary forward lighting ISR changes for 4.14 Change 3141614 on 2016/09/27 by Keli.Hlodversson Implement GetNumOfTrackingSensors and GetTrackingSensorProperties on SteamVR. #jira UE-32994 Change 3141948 on 2016/09/27 by Jeff.Fisher UEVR-242 Is AddControllerYawInput not allowed when morpheus is enabled? -Indeed it did not work. Looks like morpheus would not accumulate the yaw, so it would be reset every frame. I made the implementation of ApplyHmdRotation very similar to the one used for occulus (also similar to other platforms) to fix this. #jira UEVR-242 #review-3141933 keli.hlodversson Change 3143484 on 2016/09/28 by Nick.Whiting Integrating Oculus 1.8 SDK support, includes support for cylinder and cubemap stereo layers Change 3143517 on 2016/09/28 by Chad.Taylor Merging PS4Tracker fixes from Release-4.13 into Dev-VR Change 3143805 on 2016/09/28 by Keli.Hlodversson #jira UE-36478 Workaround to make world to meters scale apply correctly to Occulus controllers while running in PIE Change 3143943 on 2016/09/28 by Nick.Whiting Merging latest drop from OSVR Change 3144221 on 2016/09/28 by Keli.Hlodversson Implement GetTrackingSensorProperties on PS4 #jira UE-32994 Change 3144352 on 2016/09/28 by Ryan.Vance Initial implementation of mobile multi-view. This is non-functioning and requires a lot more work, but enough of the framework exists to make the 4.14 branch for an experimental release. Change 3144585 on 2016/09/29 by Jeff.Fisher UEVR-14 PSVR Support for 90Hz to 90Hz, and 120Hz to 120Hz -Enum setting added for the three frame sequences. -90Hz mode is trying to run camera updates at 90hz, but they can only run at 60 so every third one fails. This works, but its dubious. -Feature marked as experimental for now because of that 90hz tracking issue, and the lack of testing. -Defaulting to 60/120. #jira UEVR-14 #review-3143486 chad.taylor nick.whiting Change 3145263 on 2016/09/29 by Nick.Whiting Fix for constructor initialization order in StereoLayerComponent, which threw a warning on Clang Change 3145536 on 2016/09/29 by Nick.Whiting Fixes for project files to prevent mystery pop up from CAPI Change 3145663 on 2016/09/29 by Keli.Hlodversson PSVR: Make sure the camera orientation returned from GetTrackingSensorProperties points in the right direction. Change 3145670 on 2016/09/29 by Keli.Hlodversson For some reason the orientation of the Oculus tracking sensor is reported as pointing backwards. This flips it around to face front Change 3145687 on 2016/09/29 by Chad.Taylor VR splash screen support [CL 3146243 by Nick Whiting in Main branch]
2016-09-30 01:16:13 -04:00
VERIFY_GL(glFramebufferTextureMultiviewOVR);
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3383750) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3012064 on 2016/06/13 by Nick.Whiting Merging Main -> DevVR Change 3048060 on 2016/07/13 by Nick.Whiting Integrating CL 3045721 from //depot/Partners/Google/AndroidVR-DevVR Upgrade Android and iOS GVR SDK to the latest. Fix the flipped vignette issue when using Unreal's post processing distortion. Change the Daydream & Cardboard mode to use scanline racing. Deprecate the ability to turn off individual UI elements. Change 3235307 on 2016/12/14 by Keli.Hlodversson Filter out excluded HMD modules during FEngineLoop:PreInitHMDDevice. The final selection still happens in UEngine::InitializeHMDDevice as all HMD plugins have not been loaded during PreInit Change 3235308 on 2016/12/14 by Ryan.Vance #jira UEVR-478 Monoscopic far field improvements Shader changes are now gated behind the read only cvar vr.MonoscopicFarField. Changing this requires a shader compile. Moved the mono rendering mode to the cvar vr.MonoscopicFarFieldMode. This is writable, so users can enable/disable mono rendering on the fly if the above cvar is enabled. Only write to the alpha channel in the mobile base pass if the object is opaque and MONOSCOPIC_FAR_FIELD is defined. Addressed code review comments. Change 3235397 on 2016/12/14 by Keli.Hlodversson [Oculus] Only enable GearVR platform on Windows if Oculus service is running Original author: Loren.McQuade Change 3235762 on 2016/12/14 by Keli.Hlodversson Add explicit parentheses to placate the build bots. Change 3242318 on 2016/12/21 by Ryan.Vance Working around pixel density crash. Change 3242522 on 2016/12/21 by Ryan.Vance Missing flag clear so our adaptive test was always returning true. Change 3243173 on 2016/12/22 by Ryan.Vance Integrating post present callback implementation from 4.14.1 Change 3248633 on 2017/01/05 by Keli.Hlodversson Copying //Tasks/UE4/Dev-VR-Refactoring to Dev-VR-Minimal (//UE4/Dev-VR-Minimal) Change 3248723 on 2017/01/05 by Keli.Hlodversson Fix after merge. EnablePositionalTracking no longer exists. Change 3249484 on 2017/01/06 by Keli.Hlodversson Add missing includes Change 3249714 on 2017/01/06 by Keli.Hlodversson Remove monolithic header include Change 3249980 on 2017/01/06 by Keli.Hlodversson SteamVR: Remove leftover unused WindowMirrorMode member variable Change 3252432 on 2017/01/10 by Keli.Hlodversson Submitting change by Loren McQuade to fix monolithic builds. Unshelved from pending changelist '3251436': Change 3257373 on 2017/01/13 by Keli.Hlodversson #jira UEVR-411: Finish renaming/removing/remodelling the remaining Oculus (Rift+GearVR) commands #jira UEVR-412: Rename and merge remaining Morpheus console commands #jira UEVR-417: Remove Exec from IHeadMountedDisplay Change 3269971 on 2017/01/24 by Jeff.Fisher UEVR-498 move controller is missing world to meters UEVR-522 PS4 motion controller worldscale support. -Passing world to meters scale into getControllerOrientationAndPosition because the thing asking about it ought to be part of a world, and know what it should be. This also avoids making PS4 motion controllers dependent on the HMD. Note Google VR Controller doesn't do position, so doesnt' care about scale. Oculus already had internal threadsafe tracking of world scale, so I left that. Steam handles world scale below our input level. -Also adding PlayerIndex member to FSceneView so we can figure out which view the MotionControllerComponent should get its worldscale from for the late render thread update. #jira UEVR-498 #review-3384107 Change 3288308 on 2017/02/06 by Jeff.Fisher UEVR-517 Detect MotionController Connectivity -PS4 can only track 2 controllers and 1 hmd. Support for dealing with that is needed. -Also need to support multiple motion controller components mapped to a single controller. Licencees have done that before. -Created a new interface IMotionTrackingSystemManagement, and implements it for PS4Tracker on PS4. -Created a MotionTrackedDeviceFunctionLibrary to expose that interface to blueprint. -With those one can enable and disable tracking on ps4 controllers and query their state to stay within the controller tracking limit. -PS4Tracker also keeps a blackboard of the enable/disable state so that one can enable or disable controllers that have not been connected yet, and have them enable tracking or not when they are connected. -DS4 controller no longer jumps back to 000 if it loses tracking. #review-3384107 #jira UEVR-517 Change 3288309 on 2017/02/06 by Keli.Hlodversson Add file missing from CL#3257373. Change 3288311 on 2017/02/06 by Jeff.Fisher UEVR-517 Detect MotionController Connectivity - Test content. -tm-motionControllers has a third mode where all playstation motion controllers for player 0 are availalbe. You can toggle them to track or not with ctrl-P,G,L,R for pad, gun, leftmove, rightmove or with alt-P,G,L,R. Ctrl tests doing so via MotionControllerComponent. Alt tests doing so by player index and controller type enum. -ctrl-A disables tracking of all controllers -alt-A disables tracking of all controllers for player 0 -ctrl-D toggles enabling new controllers by default -Also fixed one button not working in one of the other test modes for the Aim (gun) controller. -The controller 'models' have an arrow out the front. It is black if disabled. Red if enabled, but no tracker is active, yellow if tracked but inertial only, and green if fully tracked by the camera. -This logic is in the QA_MoCoAll blueprint. Change 3291601 on 2017/02/07 by Jeff.Fisher UEVR-536 PSVR motion controller tracking problem with multiple controllers -Previous code called GetRelativeTransform from the render thread, but the game thread could update it at any time. This caches that transform so that it can be safely used in the render thread. #jira UEVR-536 #review-3384107 @Ryan.Vance Change 3292460 on 2017/02/08 by Jeff.Fisher PS4 sceVrTrackerGetResult() error warning logging improved, and explanatory comment added. Change 3308771 on 2017/02/17 by Keli.Hlodversson Rename GoogleVR console commands #jira UEVR-412 Change 3309156 on 2017/02/17 by Keli.Hlodversson Track changes in r.ScreenPercentage on GoogleVR and set RenderTargetSize accordingly. Change 3311999 on 2017/02/20 by Keli.Hlodversson Create a default implementation for RecordAnalytics. Also create an initial stub for FHeadMountedDisplayBase for future default implementations of common HMD functionality. Make implementing IHeadMountedDisplay::GetDeviceName mandatory instead of defaulting to "Unknown" #jira UE-21878 #jira UEVR-213 Change 3313467 on 2017/02/20 by Ryan.Vance #jira UE-41604 3278583 pCustomPresent->AllocateRenderTargetTexture may return false, if we blindly return true we can end up with an invalid render target since the fall back sceneviewport will be skipped. 3278536 Adding ovrError_NoHmd to our sanity check in OnStartGameFrame. Change 3314002 on 2017/02/21 by Keli.Hlodversson Fix compilation on PS4 and Linux Change 3326722 on 2017/03/01 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) Integrating 4.15 from main. Change 3327567 on 2017/03/01 by Jeff.Fisher UEVR-588 Oculus crash on "stereo on" when the proximity sensor is not triggered. Duplicating from Release-4.15 cl 3327481, 3327542 -Don't ovr_SubmitFrame when the layers need to be recreated. They stay dirty until rendering is unpaused. #jira UEVR-588 #review-3384107 Change 3328098 on 2017/03/01 by Jeff.Fisher 4.15 merge fixes -Fixed deprecated enum name function usage. -Fixed world scale usage in GoogleVRController. -Fixed compile break in PS4Tracker. Change 3328271 on 2017/03/01 by Jeff.Fisher 2.15 merge -restroging GoogleVRController::GetWorldToMetersScale... cause it is used everywhere. Change 3328307 on 2017/03/01 by Jeff.Fisher 4.15 merge -More googlevr worldscale fixes. Change 3328312 on 2017/03/01 by Jeff.Fisher 4.15 merge -removing 2 unused includes Change 3330610 on 2017/03/02 by Jeff.Fisher 4.15 merge -fixing linux build Change 3333952 on 2017/03/06 by Keli.Hlodversson Implement common stereo layer management base class and use it in SteamVR and PS4. Fixes an outstanding bug in SteamVR where texures are updated every frame regardles of whether the continous update flag is set or not. #jira UEVR-628 #jira UE-42555 Change 3334961 on 2017/03/07 by Keli.Hlodversson Add missing include to fix non-unity builds Change 3336200 on 2017/03/07 by Keli.Hlodversson Fix compilation issues. (https://ec-01.epicgames.net/commander/link/jobDetails/jobs/7568252?jobName=UE4+Dev-VR+-+CL+3334961+-+Nightly+Build&s=Jobs) * Pre VS2015 compilers don't like mixing wide and unmarked strings in concatenation. Unfortunately LOCTEXT hides the call to the TEXT macro, completely hinding the prefix (which only gets added to the first fragment.) * Switch apparently doesn't know how to format a size_t for analytics either. Also: Typo in backwards compatibility command name alias Change 3337347 on 2017/03/08 by Jeff.Fisher UE-42631 Stereo off while prox sensor uncovered causes low framerate -Setting maxfps appropriately on 'stereo on/off'. #review-3384107 #jira UE-42631 Change 3338385 on 2017/03/08 by Ryan.Vance r.DisableDistortion was only being used for the mobile renderer Change 3342301 on 2017/03/10 by patrickr.donovan Test updates to TM-VRSmoke. Increased lightmap resolution on QA_MeshTypes meshes to improve readbility and reliablility of tests involving said asset. Rebuilt lighting. Change 3348133 on 2017/03/15 by Ryan.Vance Moving mono cvars to scene rendering to avoid cross module references. There's not a good reason to have them in the hmd module anyway. Change 3348836 on 2017/03/15 by Ryan.Vance Direct multi-view support for gear vr Monoscopic far field with multi-view (blit and direct) support for gear vr Support for translucent objects on both sides of the mono clip plane (due to a sorting issue, objects that straddle the plane composite incorrectly) Fixed missing discards/clears in the multi-view blit Change 3348843 on 2017/03/15 by Ryan.Vance Fixing color/depth target size mismatch when screen percentage scaling results in a size that isn't divisible by 16. Change 3349276 on 2017/03/16 by Keli.Hlodversson Fixing compile errors in GoogleVR after merge from main. Change 3350932 on 2017/03/16 by Ryan.Vance Re-enabling the gearvr plugin on windows. Change 3351977 on 2017/03/17 by Jeff.Fisher Fixing masked member variable. Change 3352314 on 2017/03/17 by Ryan.Vance We need to ensure that we don't select different lod levels for each eye. Change 3352993 on 2017/03/17 by Nick.Whiting Integrating CL 3345824 from Android-DevVR to Dev-VR. Support for device depth pass in SceneCaptureComponent2D Change 3355185 on 2017/03/20 by Nick.Whiting Added ability to disable the autoloading splash screen, which would prevent the hide splash screen node from ever working Change 3355676 on 2017/03/20 by Nick.Whiting PR #3384: [GNUX] SteamVR, OpenGL patch. (Contributed by yaakuro), with some minor modifications Change 3357286 on 2017/03/21 by Jeff.Fisher Fixing GenerateProjectFiles, looks like the .config. was removed from these references in main some time ago. Change 3357435 on 2017/03/21 by Jeff.Fisher Fixing editor build break, looks like a merge mistake. Change 3359960 on 2017/03/23 by Keli.Hlodversson Prevent potential crash when drawing tracking sensor location. Also only fetch HMD location once instead of once per tracking sensor. Change 3361230 on 2017/03/23 by Jeff.Fisher Fixing linux build opengl include problem... maybe. Change 3361638 on 2017/03/23 by Jeff.Fisher Another guess at fixing linux build. Change 3364224 on 2017/03/24 by Keli.Hlodversson Initial implementation of UEVR-576 - Base emulated layer implementation #jira UEVR-668 - Base emulated layer implementation: Initial framework for overrideable default implementation #jira UEVR-669 - Base emulated layer implementation: Face Locked Layers Support #jira UEVR-670 - Base emulated layer implementation: Tracker Locked Layers Support #jira UEVR-671 - Base emulated layer implementation: World Locked Layers Support #jira UEVR-672 - Base emulated layer implementation: Add support for optionally rendering face locked layers into a separate layer Change 3364242 on 2017/03/24 by Keli.Hlodversson SteamVR layers do not support negatve Layer priorities Change 3364263 on 2017/03/24 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) Monoscopicfarfieldrendering was just 'accept source', Ryan is going to look at fixing it up. Change 3364472 on 2017/03/24 by Jeff.Fisher Merge fix Change 3364475 on 2017/03/24 by Jeff.Fisher Fixing gearvr include. Change 3364486 on 2017/03/24 by Jeff.Fisher merge fix Change 3364532 on 2017/03/24 by Ryan.Vance pso update for mono rendering and stereo layers. Change 3364599 on 2017/03/24 by Ryan.Vance Oculus changes for SI1.12 Change 3365159 on 2017/03/26 by Jeff.Fisher include fix Change 3365182 on 2017/03/26 by Jeff.Fisher include fix Change 3366087 on 2017/03/27 by Ryan.Vance Remaining files from Oculus changes for SI1.12 merge request. Fixing a bug in OnlineSubsystem. Temporarily changing the eye padding change to be a shader clear to work around a clear color binding issue. Change 3366492 on 2017/03/27 by Ryan.Vance #jira UE-43294 Moved the clear before we setup state for drawing the mirror window content. It was stomping over state after the pso changes. Going to leave the shader clear in the rift prerender for clearing the eye padding for now. Change 3366929 on 2017/03/27 by Ryan.Vance Fixing compile error Change 3368549 on 2017/03/28 by Jeff.Fisher Merging Change: 3357998 from //UE4/Partner-Google-VR/Engine/... to Dev-VR Upgrade Google VR Plugin to v1.3: *Upgraded GVR NDK to 1.30.0 *Changed some BlueprintFunction to use BlueprintPure *Add the missing bDaydream flag in UEDeployAndroid.cs #review-3384107 Change 3368975 on 2017/03/28 by Ryan.Vance CIS clean up #jira UE-43428, UE-43429, UE-43426, UE-43427 Change 3369028 on 2017/03/28 by Ryan.Vance This is not exacly 'correct', but it's at least what the code was trying to do. Change 3370203 on 2017/03/29 by Ryan.Vance Adding gear vr controller component support. Change 3370918 on 2017/03/29 by Ryan.Vance Merging 3370569 using Partner-Google-VR_to_DevVR Change 3371030 on 2017/03/29 by Ryan.Vance Fixing linux build errors #jira UE-43426 Change 3371036 on 2017/03/29 by Ryan.Vance Oculus 4.16 integration. Not terribly happy with the use of std::string. They promised to clean this up for the next release. Change 3373495 on 2017/03/30 by Jeff.Fisher Merging from Dev-Main, in preparation for 4.16 Change 3373578 on 2017/03/30 by Jeff.Fisher build break, one comma short Change 3373870 on 2017/03/31 by Jeff.Fisher Include order fix. Change 3374001 on 2017/03/31 by Keli.Hlodversson Use DefaultStereoLayers as base for Morpheus implementation. #jira UEVR-709 #jira UE-42919 #rb: Jeff.Fisher Change 3374004 on 2017/03/31 by Keli.Hlodversson Fix rendering for the default Stereo Layers implementation on mobile. Depth test was set to "Never" instead of "Always" Destination texture on GLES is flipped on the Y axis, the coordinates are reversed in the shade when compiled on the relevant platforms. Change 3375125 on 2017/03/31 by Jeff.Fisher UE-43506 Ensure using VRPreview with GoogleVR -Removed the ensure, there is code in there to handle that case, and it works. #jira UE-43506 Change 3375294 on 2017/03/31 by nick.bullard Resaving Plugin content to resovle "saved with empty engine version" #jira UE-43537 Change 3375480 on 2017/03/31 by Jeff.Fisher UEVR-9 PSVR: Social Screen Support -Experimental social screen support for 4.16. -This does the basics of driving output through the Aux port in the proper format for display on the mirror monitor. -Only supports 30fps on the mirror monitor. 60fps will require the implementation of sony system dialogs to deal with incompatable system features (video streaming, remote play). -There is a project setting in Morpheus, under experiemental bEnableSocialScreenSeparateMode. This must be set to true to use this feature. When it is false we avoid allocating the back buffers. -MorpheusFunctionLibrary blueprints now have a node "SetSocialScreenMode" which can switch between SystemMirror (hardware supported mirroring), SeparateTest (alternates black and white), SeparateTexture (displays a texture, eg a render target, specified via blueprint), and SeparateMirror(puts the hmd render buffer on screen - which is both eyes, like a debug mode). -Also finally updated the bEnabled flag in project settings to tell people it's only for PC. #jira UEVR-9 #review-3384107 Change 3375540 on 2017/03/31 by Ryan.Vance #jira UE-43504 Fixing android build break when using a 64 bit isa. Change 3375655 on 2017/03/31 by Jeff.Fisher Fixing missing RGBAToYUV shader problem -This at least unblocks our process. Will revisit before zbr. Change 3375820 on 2017/04/01 by Jeff.Fisher Fixing linux build warning about HAS_MORPHEUS Change 3376050 on 2017/04/02 by Jeff.Fisher UE-43515 Step 'UE4Editor Static Analysis Win64' - Module.OnlineSubsystemOculus.cpp Warnings -Temporary fix for static analysis annotation warnings in OnlineSubsytemOculus. Longer term plan is to eliminate the use of the headers that trigger the warnings. -Just wrap all standard headers in static analysis disables. #jira UE-43515 Change 3376609 on 2017/04/03 by Jeff.Fisher Fixing rgbatoyuvshader include. Change 3377001 on 2017/04/03 by Jeff.Fisher UE-43547 Launch On PS4 fails during Run command - Missing global shader FRGBAToYUV420CS - shader c++ must be compiled so that it can be cooked for ps4. #jira UE-43547 Change 3379858 on 2017/04/04 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) pulling main this should get us ps4 sdk 4.508 Change 3379938 on 2017/04/04 by Ryan.Vance #jira UE-43548 If stereo layers are not being used, don't setup overlay targets as we will never clear/initialize them. The clear happens as part of the default layers PostRenderView_RenderThread call which wont be called if layers aren't being used in the scene. Change 3381519 on 2017/04/05 by Jeff.Fisher UEVR-733 PS4 sdk 4.500 hmd connection api changes break hmd connect. -Handling failure of sceHmdGetDeviceInformation if the hmd is powered off. It now returns an error code about an invalid handle in that case, rather than reporting unready. We just treat the error code like an unready status. #jira UEVR-733 #review-3384107 Change 3382019 on 2017/04/05 by Ryan.Vance Linux: add Vulkan support from dev editor: 3381593 Change 3382021 on 2017/04/05 by Ryan.Vance SteamVR on Linux using Vulkan OpenVR rev to 1_0_6 PR #3412: [GNUX] Initial support for SteamVR using Vulkan on GNUX platform. (Contributed by yaakuro) Change 3382076 on 2017/04/05 by Ryan.Vance Fixing linux steamvr lib path. It changed to something less silly in 1.0.6 Removing the steamvr plugin from the white list for linux. It's looking for a runtime that no one will have installed. Change 3383237 on 2017/04/06 by Ryan.Vance #jira UE-43732 Fixing Android compile issues. We can't wrap portions of a macro with a definie. This should probably be some sort of recursive macro thing since there's so much overlap. Good enough for now. Change 3383353 on 2017/04/06 by Ryan.Vance Fixing include cycles. Change 3383509 on 2017/04/06 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) merging the stuff from dev-mobile [CL 3384106 by Ryan Vance in Main branch]
2017-04-06 22:03:51 -04:00
if (DepthStencilTarget)
{
glFramebufferTextureMultiviewOVR(GL_DRAW_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, DepthStencilTarget->GetResource(), 0, 0, 2);
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3383750) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3012064 on 2016/06/13 by Nick.Whiting Merging Main -> DevVR Change 3048060 on 2016/07/13 by Nick.Whiting Integrating CL 3045721 from //depot/Partners/Google/AndroidVR-DevVR Upgrade Android and iOS GVR SDK to the latest. Fix the flipped vignette issue when using Unreal's post processing distortion. Change the Daydream & Cardboard mode to use scanline racing. Deprecate the ability to turn off individual UI elements. Change 3235307 on 2016/12/14 by Keli.Hlodversson Filter out excluded HMD modules during FEngineLoop:PreInitHMDDevice. The final selection still happens in UEngine::InitializeHMDDevice as all HMD plugins have not been loaded during PreInit Change 3235308 on 2016/12/14 by Ryan.Vance #jira UEVR-478 Monoscopic far field improvements Shader changes are now gated behind the read only cvar vr.MonoscopicFarField. Changing this requires a shader compile. Moved the mono rendering mode to the cvar vr.MonoscopicFarFieldMode. This is writable, so users can enable/disable mono rendering on the fly if the above cvar is enabled. Only write to the alpha channel in the mobile base pass if the object is opaque and MONOSCOPIC_FAR_FIELD is defined. Addressed code review comments. Change 3235397 on 2016/12/14 by Keli.Hlodversson [Oculus] Only enable GearVR platform on Windows if Oculus service is running Original author: Loren.McQuade Change 3235762 on 2016/12/14 by Keli.Hlodversson Add explicit parentheses to placate the build bots. Change 3242318 on 2016/12/21 by Ryan.Vance Working around pixel density crash. Change 3242522 on 2016/12/21 by Ryan.Vance Missing flag clear so our adaptive test was always returning true. Change 3243173 on 2016/12/22 by Ryan.Vance Integrating post present callback implementation from 4.14.1 Change 3248633 on 2017/01/05 by Keli.Hlodversson Copying //Tasks/UE4/Dev-VR-Refactoring to Dev-VR-Minimal (//UE4/Dev-VR-Minimal) Change 3248723 on 2017/01/05 by Keli.Hlodversson Fix after merge. EnablePositionalTracking no longer exists. Change 3249484 on 2017/01/06 by Keli.Hlodversson Add missing includes Change 3249714 on 2017/01/06 by Keli.Hlodversson Remove monolithic header include Change 3249980 on 2017/01/06 by Keli.Hlodversson SteamVR: Remove leftover unused WindowMirrorMode member variable Change 3252432 on 2017/01/10 by Keli.Hlodversson Submitting change by Loren McQuade to fix monolithic builds. Unshelved from pending changelist '3251436': Change 3257373 on 2017/01/13 by Keli.Hlodversson #jira UEVR-411: Finish renaming/removing/remodelling the remaining Oculus (Rift+GearVR) commands #jira UEVR-412: Rename and merge remaining Morpheus console commands #jira UEVR-417: Remove Exec from IHeadMountedDisplay Change 3269971 on 2017/01/24 by Jeff.Fisher UEVR-498 move controller is missing world to meters UEVR-522 PS4 motion controller worldscale support. -Passing world to meters scale into getControllerOrientationAndPosition because the thing asking about it ought to be part of a world, and know what it should be. This also avoids making PS4 motion controllers dependent on the HMD. Note Google VR Controller doesn't do position, so doesnt' care about scale. Oculus already had internal threadsafe tracking of world scale, so I left that. Steam handles world scale below our input level. -Also adding PlayerIndex member to FSceneView so we can figure out which view the MotionControllerComponent should get its worldscale from for the late render thread update. #jira UEVR-498 #review-3384107 Change 3288308 on 2017/02/06 by Jeff.Fisher UEVR-517 Detect MotionController Connectivity -PS4 can only track 2 controllers and 1 hmd. Support for dealing with that is needed. -Also need to support multiple motion controller components mapped to a single controller. Licencees have done that before. -Created a new interface IMotionTrackingSystemManagement, and implements it for PS4Tracker on PS4. -Created a MotionTrackedDeviceFunctionLibrary to expose that interface to blueprint. -With those one can enable and disable tracking on ps4 controllers and query their state to stay within the controller tracking limit. -PS4Tracker also keeps a blackboard of the enable/disable state so that one can enable or disable controllers that have not been connected yet, and have them enable tracking or not when they are connected. -DS4 controller no longer jumps back to 000 if it loses tracking. #review-3384107 #jira UEVR-517 Change 3288309 on 2017/02/06 by Keli.Hlodversson Add file missing from CL#3257373. Change 3288311 on 2017/02/06 by Jeff.Fisher UEVR-517 Detect MotionController Connectivity - Test content. -tm-motionControllers has a third mode where all playstation motion controllers for player 0 are availalbe. You can toggle them to track or not with ctrl-P,G,L,R for pad, gun, leftmove, rightmove or with alt-P,G,L,R. Ctrl tests doing so via MotionControllerComponent. Alt tests doing so by player index and controller type enum. -ctrl-A disables tracking of all controllers -alt-A disables tracking of all controllers for player 0 -ctrl-D toggles enabling new controllers by default -Also fixed one button not working in one of the other test modes for the Aim (gun) controller. -The controller 'models' have an arrow out the front. It is black if disabled. Red if enabled, but no tracker is active, yellow if tracked but inertial only, and green if fully tracked by the camera. -This logic is in the QA_MoCoAll blueprint. Change 3291601 on 2017/02/07 by Jeff.Fisher UEVR-536 PSVR motion controller tracking problem with multiple controllers -Previous code called GetRelativeTransform from the render thread, but the game thread could update it at any time. This caches that transform so that it can be safely used in the render thread. #jira UEVR-536 #review-3384107 @Ryan.Vance Change 3292460 on 2017/02/08 by Jeff.Fisher PS4 sceVrTrackerGetResult() error warning logging improved, and explanatory comment added. Change 3308771 on 2017/02/17 by Keli.Hlodversson Rename GoogleVR console commands #jira UEVR-412 Change 3309156 on 2017/02/17 by Keli.Hlodversson Track changes in r.ScreenPercentage on GoogleVR and set RenderTargetSize accordingly. Change 3311999 on 2017/02/20 by Keli.Hlodversson Create a default implementation for RecordAnalytics. Also create an initial stub for FHeadMountedDisplayBase for future default implementations of common HMD functionality. Make implementing IHeadMountedDisplay::GetDeviceName mandatory instead of defaulting to "Unknown" #jira UE-21878 #jira UEVR-213 Change 3313467 on 2017/02/20 by Ryan.Vance #jira UE-41604 3278583 pCustomPresent->AllocateRenderTargetTexture may return false, if we blindly return true we can end up with an invalid render target since the fall back sceneviewport will be skipped. 3278536 Adding ovrError_NoHmd to our sanity check in OnStartGameFrame. Change 3314002 on 2017/02/21 by Keli.Hlodversson Fix compilation on PS4 and Linux Change 3326722 on 2017/03/01 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) Integrating 4.15 from main. Change 3327567 on 2017/03/01 by Jeff.Fisher UEVR-588 Oculus crash on "stereo on" when the proximity sensor is not triggered. Duplicating from Release-4.15 cl 3327481, 3327542 -Don't ovr_SubmitFrame when the layers need to be recreated. They stay dirty until rendering is unpaused. #jira UEVR-588 #review-3384107 Change 3328098 on 2017/03/01 by Jeff.Fisher 4.15 merge fixes -Fixed deprecated enum name function usage. -Fixed world scale usage in GoogleVRController. -Fixed compile break in PS4Tracker. Change 3328271 on 2017/03/01 by Jeff.Fisher 2.15 merge -restroging GoogleVRController::GetWorldToMetersScale... cause it is used everywhere. Change 3328307 on 2017/03/01 by Jeff.Fisher 4.15 merge -More googlevr worldscale fixes. Change 3328312 on 2017/03/01 by Jeff.Fisher 4.15 merge -removing 2 unused includes Change 3330610 on 2017/03/02 by Jeff.Fisher 4.15 merge -fixing linux build Change 3333952 on 2017/03/06 by Keli.Hlodversson Implement common stereo layer management base class and use it in SteamVR and PS4. Fixes an outstanding bug in SteamVR where texures are updated every frame regardles of whether the continous update flag is set or not. #jira UEVR-628 #jira UE-42555 Change 3334961 on 2017/03/07 by Keli.Hlodversson Add missing include to fix non-unity builds Change 3336200 on 2017/03/07 by Keli.Hlodversson Fix compilation issues. (https://ec-01.epicgames.net/commander/link/jobDetails/jobs/7568252?jobName=UE4+Dev-VR+-+CL+3334961+-+Nightly+Build&s=Jobs) * Pre VS2015 compilers don't like mixing wide and unmarked strings in concatenation. Unfortunately LOCTEXT hides the call to the TEXT macro, completely hinding the prefix (which only gets added to the first fragment.) * Switch apparently doesn't know how to format a size_t for analytics either. Also: Typo in backwards compatibility command name alias Change 3337347 on 2017/03/08 by Jeff.Fisher UE-42631 Stereo off while prox sensor uncovered causes low framerate -Setting maxfps appropriately on 'stereo on/off'. #review-3384107 #jira UE-42631 Change 3338385 on 2017/03/08 by Ryan.Vance r.DisableDistortion was only being used for the mobile renderer Change 3342301 on 2017/03/10 by patrickr.donovan Test updates to TM-VRSmoke. Increased lightmap resolution on QA_MeshTypes meshes to improve readbility and reliablility of tests involving said asset. Rebuilt lighting. Change 3348133 on 2017/03/15 by Ryan.Vance Moving mono cvars to scene rendering to avoid cross module references. There's not a good reason to have them in the hmd module anyway. Change 3348836 on 2017/03/15 by Ryan.Vance Direct multi-view support for gear vr Monoscopic far field with multi-view (blit and direct) support for gear vr Support for translucent objects on both sides of the mono clip plane (due to a sorting issue, objects that straddle the plane composite incorrectly) Fixed missing discards/clears in the multi-view blit Change 3348843 on 2017/03/15 by Ryan.Vance Fixing color/depth target size mismatch when screen percentage scaling results in a size that isn't divisible by 16. Change 3349276 on 2017/03/16 by Keli.Hlodversson Fixing compile errors in GoogleVR after merge from main. Change 3350932 on 2017/03/16 by Ryan.Vance Re-enabling the gearvr plugin on windows. Change 3351977 on 2017/03/17 by Jeff.Fisher Fixing masked member variable. Change 3352314 on 2017/03/17 by Ryan.Vance We need to ensure that we don't select different lod levels for each eye. Change 3352993 on 2017/03/17 by Nick.Whiting Integrating CL 3345824 from Android-DevVR to Dev-VR. Support for device depth pass in SceneCaptureComponent2D Change 3355185 on 2017/03/20 by Nick.Whiting Added ability to disable the autoloading splash screen, which would prevent the hide splash screen node from ever working Change 3355676 on 2017/03/20 by Nick.Whiting PR #3384: [GNUX] SteamVR, OpenGL patch. (Contributed by yaakuro), with some minor modifications Change 3357286 on 2017/03/21 by Jeff.Fisher Fixing GenerateProjectFiles, looks like the .config. was removed from these references in main some time ago. Change 3357435 on 2017/03/21 by Jeff.Fisher Fixing editor build break, looks like a merge mistake. Change 3359960 on 2017/03/23 by Keli.Hlodversson Prevent potential crash when drawing tracking sensor location. Also only fetch HMD location once instead of once per tracking sensor. Change 3361230 on 2017/03/23 by Jeff.Fisher Fixing linux build opengl include problem... maybe. Change 3361638 on 2017/03/23 by Jeff.Fisher Another guess at fixing linux build. Change 3364224 on 2017/03/24 by Keli.Hlodversson Initial implementation of UEVR-576 - Base emulated layer implementation #jira UEVR-668 - Base emulated layer implementation: Initial framework for overrideable default implementation #jira UEVR-669 - Base emulated layer implementation: Face Locked Layers Support #jira UEVR-670 - Base emulated layer implementation: Tracker Locked Layers Support #jira UEVR-671 - Base emulated layer implementation: World Locked Layers Support #jira UEVR-672 - Base emulated layer implementation: Add support for optionally rendering face locked layers into a separate layer Change 3364242 on 2017/03/24 by Keli.Hlodversson SteamVR layers do not support negatve Layer priorities Change 3364263 on 2017/03/24 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) Monoscopicfarfieldrendering was just 'accept source', Ryan is going to look at fixing it up. Change 3364472 on 2017/03/24 by Jeff.Fisher Merge fix Change 3364475 on 2017/03/24 by Jeff.Fisher Fixing gearvr include. Change 3364486 on 2017/03/24 by Jeff.Fisher merge fix Change 3364532 on 2017/03/24 by Ryan.Vance pso update for mono rendering and stereo layers. Change 3364599 on 2017/03/24 by Ryan.Vance Oculus changes for SI1.12 Change 3365159 on 2017/03/26 by Jeff.Fisher include fix Change 3365182 on 2017/03/26 by Jeff.Fisher include fix Change 3366087 on 2017/03/27 by Ryan.Vance Remaining files from Oculus changes for SI1.12 merge request. Fixing a bug in OnlineSubsystem. Temporarily changing the eye padding change to be a shader clear to work around a clear color binding issue. Change 3366492 on 2017/03/27 by Ryan.Vance #jira UE-43294 Moved the clear before we setup state for drawing the mirror window content. It was stomping over state after the pso changes. Going to leave the shader clear in the rift prerender for clearing the eye padding for now. Change 3366929 on 2017/03/27 by Ryan.Vance Fixing compile error Change 3368549 on 2017/03/28 by Jeff.Fisher Merging Change: 3357998 from //UE4/Partner-Google-VR/Engine/... to Dev-VR Upgrade Google VR Plugin to v1.3: *Upgraded GVR NDK to 1.30.0 *Changed some BlueprintFunction to use BlueprintPure *Add the missing bDaydream flag in UEDeployAndroid.cs #review-3384107 Change 3368975 on 2017/03/28 by Ryan.Vance CIS clean up #jira UE-43428, UE-43429, UE-43426, UE-43427 Change 3369028 on 2017/03/28 by Ryan.Vance This is not exacly 'correct', but it's at least what the code was trying to do. Change 3370203 on 2017/03/29 by Ryan.Vance Adding gear vr controller component support. Change 3370918 on 2017/03/29 by Ryan.Vance Merging 3370569 using Partner-Google-VR_to_DevVR Change 3371030 on 2017/03/29 by Ryan.Vance Fixing linux build errors #jira UE-43426 Change 3371036 on 2017/03/29 by Ryan.Vance Oculus 4.16 integration. Not terribly happy with the use of std::string. They promised to clean this up for the next release. Change 3373495 on 2017/03/30 by Jeff.Fisher Merging from Dev-Main, in preparation for 4.16 Change 3373578 on 2017/03/30 by Jeff.Fisher build break, one comma short Change 3373870 on 2017/03/31 by Jeff.Fisher Include order fix. Change 3374001 on 2017/03/31 by Keli.Hlodversson Use DefaultStereoLayers as base for Morpheus implementation. #jira UEVR-709 #jira UE-42919 #rb: Jeff.Fisher Change 3374004 on 2017/03/31 by Keli.Hlodversson Fix rendering for the default Stereo Layers implementation on mobile. Depth test was set to "Never" instead of "Always" Destination texture on GLES is flipped on the Y axis, the coordinates are reversed in the shade when compiled on the relevant platforms. Change 3375125 on 2017/03/31 by Jeff.Fisher UE-43506 Ensure using VRPreview with GoogleVR -Removed the ensure, there is code in there to handle that case, and it works. #jira UE-43506 Change 3375294 on 2017/03/31 by nick.bullard Resaving Plugin content to resovle "saved with empty engine version" #jira UE-43537 Change 3375480 on 2017/03/31 by Jeff.Fisher UEVR-9 PSVR: Social Screen Support -Experimental social screen support for 4.16. -This does the basics of driving output through the Aux port in the proper format for display on the mirror monitor. -Only supports 30fps on the mirror monitor. 60fps will require the implementation of sony system dialogs to deal with incompatable system features (video streaming, remote play). -There is a project setting in Morpheus, under experiemental bEnableSocialScreenSeparateMode. This must be set to true to use this feature. When it is false we avoid allocating the back buffers. -MorpheusFunctionLibrary blueprints now have a node "SetSocialScreenMode" which can switch between SystemMirror (hardware supported mirroring), SeparateTest (alternates black and white), SeparateTexture (displays a texture, eg a render target, specified via blueprint), and SeparateMirror(puts the hmd render buffer on screen - which is both eyes, like a debug mode). -Also finally updated the bEnabled flag in project settings to tell people it's only for PC. #jira UEVR-9 #review-3384107 Change 3375540 on 2017/03/31 by Ryan.Vance #jira UE-43504 Fixing android build break when using a 64 bit isa. Change 3375655 on 2017/03/31 by Jeff.Fisher Fixing missing RGBAToYUV shader problem -This at least unblocks our process. Will revisit before zbr. Change 3375820 on 2017/04/01 by Jeff.Fisher Fixing linux build warning about HAS_MORPHEUS Change 3376050 on 2017/04/02 by Jeff.Fisher UE-43515 Step 'UE4Editor Static Analysis Win64' - Module.OnlineSubsystemOculus.cpp Warnings -Temporary fix for static analysis annotation warnings in OnlineSubsytemOculus. Longer term plan is to eliminate the use of the headers that trigger the warnings. -Just wrap all standard headers in static analysis disables. #jira UE-43515 Change 3376609 on 2017/04/03 by Jeff.Fisher Fixing rgbatoyuvshader include. Change 3377001 on 2017/04/03 by Jeff.Fisher UE-43547 Launch On PS4 fails during Run command - Missing global shader FRGBAToYUV420CS - shader c++ must be compiled so that it can be cooked for ps4. #jira UE-43547 Change 3379858 on 2017/04/04 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) pulling main this should get us ps4 sdk 4.508 Change 3379938 on 2017/04/04 by Ryan.Vance #jira UE-43548 If stereo layers are not being used, don't setup overlay targets as we will never clear/initialize them. The clear happens as part of the default layers PostRenderView_RenderThread call which wont be called if layers aren't being used in the scene. Change 3381519 on 2017/04/05 by Jeff.Fisher UEVR-733 PS4 sdk 4.500 hmd connection api changes break hmd connect. -Handling failure of sceHmdGetDeviceInformation if the hmd is powered off. It now returns an error code about an invalid handle in that case, rather than reporting unready. We just treat the error code like an unready status. #jira UEVR-733 #review-3384107 Change 3382019 on 2017/04/05 by Ryan.Vance Linux: add Vulkan support from dev editor: 3381593 Change 3382021 on 2017/04/05 by Ryan.Vance SteamVR on Linux using Vulkan OpenVR rev to 1_0_6 PR #3412: [GNUX] Initial support for SteamVR using Vulkan on GNUX platform. (Contributed by yaakuro) Change 3382076 on 2017/04/05 by Ryan.Vance Fixing linux steamvr lib path. It changed to something less silly in 1.0.6 Removing the steamvr plugin from the white list for linux. It's looking for a runtime that no one will have installed. Change 3383237 on 2017/04/06 by Ryan.Vance #jira UE-43732 Fixing Android compile issues. We can't wrap portions of a macro with a definie. This should probably be some sort of recursive macro thing since there's so much overlap. Good enough for now. Change 3383353 on 2017/04/06 by Ryan.Vance Fixing include cycles. Change 3383509 on 2017/04/06 by Jeff.Fisher Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR) merging the stuff from dev-mobile [CL 3384106 by Ryan Vance in Main branch]
2017-04-06 22:03:51 -04:00
VERIFY_GL(glFramebufferTextureMultiviewOVR);
}
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3145687) #lockdown Nick.Penwarden #rb Merge ========================== MAJOR FEATURES + CHANGES ========================== Change 3094167 on 2016/08/18 by Jeff.Fisher UEVR-97 Morpheus HMD tracking needs to wait until HMD is fully tracked. -Morpheus CALIBRATING/NOT_TRACKED tracking state hmd orientation update disabled and delegates added to present instructions to the user. This behavior is controlled by morpheus ini setting bDisableHMDOrientationUntilHMDHasBeenTracked, but defaulted to true to avoid subtly bad user experiences. #review-3094106 @chad.taylor #jira UEVR-97 Change 3104799 on 2016/08/29 by Jeff.Fisher UEVR-178 Morpheus HMD Black crescents -Switched reprojection frame time for 60/120 mode from 120hz to 60hz so we much better predict where the hmd will be pointing when the frame we are about to render is actually displayed, and are run off the edge of it less often and less severely. This makes the black crescent artifacts only just visible during very fast head turning. The kWrapModeMirror change, which will be submitted separately, makes the left and right crescents invisible to me. -Renamed the functions for setting the prediction info in the PS4Tracker. -Added render frame parameters to sony reprojection functions, these can help with debugging reprojection. -Added commented out sce call to get the reprojection debug data. Not allowed to submit an executable that calls it, but its nice to at least know where one can put it. May improve this later. -Wrapped PS4Tracker->Synchronize call in a check that the tracker handle is valid, because I managed to get it called when it wasn't (probably during hmd power off testing, but I don't remember now). It should be fine to not do it if the tracker is not functioning. #review-3104780 chad.taylor #jira UEVR-178 Change 3108423 on 2016/08/31 by Jeff.Fisher Morpheus Config Improvements. -UEVR-138 Morpheus HMD reprojection wrap mode config setting -Can now switch between wrap mode Mirror and ClampToBorder. Mirror is the default. -Made bDisableHMDOrientationUntilHMDHasBeenTracked editable in UE4Editor project settings. -Using generic project setting for bStartInVR, removed the morpheus specific one. #jira UEVR-138 #review-3106999 @nick.whiting Change 3111231 on 2016/09/01 by Jeff.Fisher Fixed bStartInVR ini setting. -Initial implementation worked via a generic EnableStereo call, which worked, but happened after the hmd setup dialog, which is not what I wanted. -Also fixed a tracking frame mismatch assert that hit when I powered the hmd off once, causing it to lose tracking. Its ok that it doesn't update in that circumstance. #review-3111211 @ryan.vance Change 3115196 on 2016/09/06 by Keli.Hlodversson #jira UEVR-128 Map move controller Select button to Invalid, as it is always handled by the system Change 3116425 on 2016/09/07 by Chad.Taylor PSVR: stereo layers implementation Change 3116593 on 2016/09/07 by Jeff.Fisher UEVR-126 Morpheus HMD connect dialog cancel reactions -VR only apps can't allow the player to cancel out of the hmd setup dialog, so lets just pop the dialog up again (sony were ok with a licencee doing this) if an ini setting says to do that. -VR/2D apps might want to switch to 2d if the player cancels out of the hmd setup dialog, so there is an ini setting for that. -A delegate only implementation is also provided for apps that want to do something else. This leaves the game rendering in VR mode, and fires the delegate. -Refactored to better separate successful HMD acquisition from stereo rendering. This was necessary to support the delegate only option on startup. If you start in vr mode with your hmd off and cancel the dialog stereo rendering now starts with default values for the hmd hardware stats (as read from my pvt) instead of crashing trying to use uninitialized data. When an hmd is connected its values will be read. -Refactored to ensure reprojection starts immediately when we call StartReprojection. #jira UEVR-126 #review-3116221 Change 3116754 on 2016/09/07 by Keli.Hlodversson bPixelDensityAdaptive is a bool and not a float property Change 3117692 on 2016/09/08 by Jeff.Fisher UEVR-135 Morpheus HMD recent feature error reporting UEVR-173 2DVR flexibility (UTexture) -Error log for sceHmdReprojectionSetOutputMinColor failure. -Made the parameter for 2dVR a UTexture* instead of a UTexture2D*, so it can be a rendertarget, etc. -Added error logs for missing texture, invalid texture, wrong texture format to 2DVR. #jira UEVR-135 #jira UEVR-173 #review-3116955 @keli.hloedversson Change 3117990 on 2016/09/08 by Jeff.Fisher UEVR-127 Morpheus HMD removal reaction -Added VRHeadsetPutOnHead and VRHeadsetRemovedFromHead delegates, and implemented them for Morpheus. #jira UEVR-127 #review-3117968 @keli.hlodversson Change 3120198 on 2016/09/09 by Jeff.Fisher MorpheusReprojector frame complete wait error log -Now log a warning if the sceKernalWaitEqueue returns an error. It not a problem if this happens rarely, but something is very broken if it starts happening continuously. Change 3121754 on 2016/09/12 by Keli.Hlodversson #jira UE-21878 - Also emit VR initialization analytics events in the editor. Change 3122311 on 2016/09/12 by Nick.Whiting Merging fix for Adreno devices rendering black from 4.13.1 Change 3123057 on 2016/09/13 by Keli.Hlodversson #jira UE-30097 Use the current value of r.ScreenPercentage on Occulus Rift if it's explicitly set. * If the SetBy part of the flags for the console var is SetBy_Constructor, then ignore the value. * If it's SetBy_Scalability, then ignore it if it equals 100 * Else, call SetScreenPercentage using the current value The obsolete HMD SCREENPERCENTAGE console command is still available and will override the setting until r.ScreenPercentage is modified the next time. Change 3123200 on 2016/09/13 by Chad.Taylor PS4 Stereo Layer double buffering. Since the overlays are reprojected at 120hz but rendered at 60hz we need to render to a separate buffer than the one being used by reprojection. Change 3125845 on 2016/09/14 by Keli.Hlodversson #jira UE-33996 Add hmd=<name> command line option to allow overriding which HMD module is used. Renamed GetModulePriorityKeyName to simply GetModuleKeyName, as this name is now also used to match against the command line options. Change 3127293 on 2016/09/15 by Jeff.Fisher UEVR-225 Morpheus HMD top and bottom black crescents -The hidden and visible area meshes for morpheus were too restrictive. Nudged them out a bit, no black crescents at the top and bottom of the screen. We are rendering a few more pixels now though. #review-3127145 @ryan.vance #jira UEVR-225 Change 3130635 on 2016/09/19 by Jeff.Fisher UEVR-226 Morpheus HMD mirrored fill wrong on outer edges -The setting was never being used, leaving the wrap mode at 0 aka kWrapModeWrap. -Refactored how the setting is applied so it works, and is less convoluted. #jira UEVR-226 #review-3129403 Change 3131615 on 2016/09/19 by Keli.Hlodversson #jira UE-29341. Update Chaperone bounds when SteamVR tells us they have changed Change 3136527 on 2016/09/22 by Keli.Hlodversson Don't depend on the current state of the VR subsystem when exiting PIE mode to decide whether the main window should be restored. Instead always restore it if it was minimized at the start. Change 3136652 on 2016/09/22 by Keli.Hlodversson Allow shutting down Steam VR subsystem without shutting down the Steam VR plugin completely in response to quitting from the SteamVR overlay. Enabling stereo rendering again will reinitialize SteamVR. This is useful when using PIE in VR mode as it allows entereing it again without restarting the editor. Also fixes crashes by first disabinge stereo rendering a short while before shutting down the VR subsystem. #jira UE-35940 Change 3138901 on 2016/09/23 by Ryan.Vance Merging 3138521 using OdinToDevVR to bring over temporary forward lighting ISR changes for 4.14 Change 3141614 on 2016/09/27 by Keli.Hlodversson Implement GetNumOfTrackingSensors and GetTrackingSensorProperties on SteamVR. #jira UE-32994 Change 3141948 on 2016/09/27 by Jeff.Fisher UEVR-242 Is AddControllerYawInput not allowed when morpheus is enabled? -Indeed it did not work. Looks like morpheus would not accumulate the yaw, so it would be reset every frame. I made the implementation of ApplyHmdRotation very similar to the one used for occulus (also similar to other platforms) to fix this. #jira UEVR-242 #review-3141933 keli.hlodversson Change 3143484 on 2016/09/28 by Nick.Whiting Integrating Oculus 1.8 SDK support, includes support for cylinder and cubemap stereo layers Change 3143517 on 2016/09/28 by Chad.Taylor Merging PS4Tracker fixes from Release-4.13 into Dev-VR Change 3143805 on 2016/09/28 by Keli.Hlodversson #jira UE-36478 Workaround to make world to meters scale apply correctly to Occulus controllers while running in PIE Change 3143943 on 2016/09/28 by Nick.Whiting Merging latest drop from OSVR Change 3144221 on 2016/09/28 by Keli.Hlodversson Implement GetTrackingSensorProperties on PS4 #jira UE-32994 Change 3144352 on 2016/09/28 by Ryan.Vance Initial implementation of mobile multi-view. This is non-functioning and requires a lot more work, but enough of the framework exists to make the 4.14 branch for an experimental release. Change 3144585 on 2016/09/29 by Jeff.Fisher UEVR-14 PSVR Support for 90Hz to 90Hz, and 120Hz to 120Hz -Enum setting added for the three frame sequences. -90Hz mode is trying to run camera updates at 90hz, but they can only run at 60 so every third one fails. This works, but its dubious. -Feature marked as experimental for now because of that 90hz tracking issue, and the lack of testing. -Defaulting to 60/120. #jira UEVR-14 #review-3143486 chad.taylor nick.whiting Change 3145263 on 2016/09/29 by Nick.Whiting Fix for constructor initialization order in StereoLayerComponent, which threw a warning on Clang Change 3145536 on 2016/09/29 by Nick.Whiting Fixes for project files to prevent mystery pop up from CAPI Change 3145663 on 2016/09/29 by Keli.Hlodversson PSVR: Make sure the camera orientation returned from GetTrackingSensorProperties points in the right direction. Change 3145670 on 2016/09/29 by Keli.Hlodversson For some reason the orientation of the Oculus tracking sensor is reported as pointing backwards. This flips it around to face front Change 3145687 on 2016/09/29 by Chad.Taylor VR splash screen support [CL 3146243 by Nick Whiting in Main branch]
2016-09-30 01:16:13 -04:00
}
FOpenGL::CheckFrameBuffer();
FOpenGL::ReadBuffer(GL_NONE);
FOpenGL::DrawBuffer(GL_COLOR_ATTACHMENT0);
GetOpenGLFramebufferCache().Add(FOpenGLFramebufferKey(NumSimultaneousRenderTargets, RenderTargets, ArrayIndices, MipmapLevels, DepthStencilTarget, PlatformOpenGLCurrentContext(PlatformDevice)), Framebuffer + 1);
return Framebuffer;
}
#endif
int32 FirstNonzeroRenderTarget = -1;
for (int32 RenderTargetIndex = NumSimultaneousRenderTargets - 1; RenderTargetIndex >= 0; --RenderTargetIndex)
{
FOpenGLTexture* RenderTarget = RenderTargets[RenderTargetIndex];
if (!RenderTarget)
{
continue;
}
if (ArrayIndices == NULL || ArrayIndices[RenderTargetIndex] == -1)
{
// If no index was specified, bind the entire object, rather than a slice
Copying //UE4/Release-Staging-4.15 to //UE4/Dev-Main (Source: //UE4/Release-4.15 @ 3267632) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3267632 on 2017/01/23 by Jurre.deBaare Marker syncs not working correctly in Blend Spaces #fix Ensure that SampleIndexWithMarkers is serialized #JIRA UE-40975 Change 3266915 on 2017/01/20 by Arciel.Rekman Fix Persona crash on Linux (UE-38790). - Static template variable got instantiated into multiple DSOs; probably exacerbated by --as-needed since this does not happen without it. #jira UE-38790 Change 3266785 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Make usage of CachedUsers thread safe. Duplicates CL 3245390 #jira UE-40649 Change 3266762 on 2017/01/20 by Rolando.Caloca UE4.15 - Fix for reallocating scene color #jira UE-40633 Change 3266642 on 2017/01/20 by Lina.Halper Downgraded Warning to Info #jira: UE-40643 Change 3266532 on 2017/01/20 by Jeff.Campeau Fix multiplatform Windows includes defeating the safety check in MinWindows.h #jira UE-40778 #rn Fixed a compile warning on Xbox One when XboxOneMinApi.h was included before MinWindows.h. Change 3266523 on 2017/01/20 by Marc.Audy Fix case where child actor could avoid getting begin play call #jira UE-40960 Change 3266474 on 2017/01/20 by Peter.Sauerbrei fix for using an API not yet available in iOS 8 #jira UE-40698 Change 3266339 on 2017/01/20 by Frank.Fella Sequencer - Fix UI issues with multi-track section rows. + Don't show an empty sub-track when there are no sections. + Expand parent tracks by default. #Jira UE-40487 Change 3266283 on 2017/01/20 by Jeff.Fisher UE-40683 GearVR projects rendering black -Fix from Remi Palandri #jira UE-40683 #review-3265824 @nick.whiting @ryan.vance Change 3266264 on 2017/01/20 by Lina.Halper Downgraded warning and changed log message #jira: UE-40643 Change 3266239 on 2017/01/20 by Peter.Sauerbrei fix for virtual joystick not showing up on some devices #jira UE-40472 Change 3266084 on 2017/01/20 by Mitchell.Wilson Resaving level to have correct starting camera position. Saved in wrong position after fixing a bug. #jira UE-40887 Change 3266077 on 2017/01/20 by Matt.Kuhlenschmidt Fixed "Wait for Movies to Complete" flag being reversed #jira UE-40943 Change 3266076 on 2017/01/20 by Mitchell.Wilson Updating occulsion bounds method on P_spark_burst_2 so it is not occluded when spawned inside of the coin mesh in BP_Overview example. Updating some post process examples due to changes made with Post Process settings. Film and Scene Color are temporary fixes and are intended to be fully updated in 4.16 #jira UE-40830 UE-40887 Change 3266034 on 2017/01/20 by Benn.Gallagher Fixed crash when reimporting APEX destructibles from apb/x files caused by not allowing the renderer to flush destroy resource commands before emptying an array. #jira UE-40911 Change 3266027 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Fix CreateSession and FindSession each permanently failing after first failure. Duplicates CL 3262175 #jira UE-39110 Change 3265906 on 2017/01/20 by Marcus.Wassmer Fix GPU particle AFR flickering and optimize injection transfers. Duplicate CL's 3260302, 3261252, 3265662, 3265678 #jira UE-40915 Change 3265873 on 2017/01/20 by Mark.Satterthwaite Duplicate CL #3262535: Make sure to set rasterizer state when rendering with a material in FSlateRHIRenderingPolicy::DrawElements #jira UE-40842 Change 3265857 on 2017/01/20 by Jamie.Dale Fixed font pathing issue that could happen in an out-of-source packaged build #jira UE-40855 Change 3265675 on 2017/01/20 by Matt.Kuhlenschmidt Move Dirt Mask Intensity to the correct post process category #jira UE-40851 Change 3265674 on 2017/01/20 by Rolando.Caloca UE4.15 - Revert #jira UE-40633 Change 3265647 on 2017/01/20 by Mitchell.Wilson Updating spawn location of the player pawn after unpossessing character in example 1.10. #jira UE-40870 Change 3265612 on 2017/01/20 by Alexis.Matte Prevent name clash warning when doing automation test #jira UE-40788 Change 3265553 on 2017/01/20 by Matthew.Griffin Fixed Shadow variable warning Change 3265366 on 2017/01/20 by Dmitriy.Dyomin Fixed: Vulkan crashes on Adreno Galaxy S7 #jira UE-40840 Change 3265294 on 2017/01/19 by Dmitriy.Dyomin Fixed typo which was causing assert on mobile #jira UE-40633 Change 3265111 on 2017/01/19 by Rolando.Caloca UE4.15 - Fix for scene color crash #jira UE-40633 Change 3264789 on 2017/01/19 by Josh.Adams - Redoing a fix from Dev-Plat for UI_BUILD_SHIPPING_EDITOR #jira UE-40798 Change 3264780 on 2017/01/19 by Rolando.Caloca UE4.15 - Add Morph compute GPU stat #jira UE-40891 Change 3264486 on 2017/01/19 by Mark.Satterthwaite Fix the crash on startup on Intel GPUs - this is due to Intel Metal forcing SM4 to avoid some drivers bugs in SM5 but I got the condition for initialisation in FMinimalDummyForwardLightingResources wrong so it's attempting to create a RWBuffer for SM4 which won't work. #jira UE-40863 Change 3264427 on 2017/01/19 by Rolando.Caloca UE4.15 - Track down crash #jira UE-40633 Change 3264393 on 2017/01/19 by Aaron.McLeran #jira UE-40850 Re-fixing UE-39650 again in 4.15. I hope this bug doesn't regress yet again! Change 3264364 on 2017/01/19 by Daniel.Wright In forward shading SceneCaptureSource modes Normal and BaseColor are replaced with SceneColorHDR as the GBuffer is not available. This is a silent failure for now as there's no good content error reporting mechanism for scene captures. #jira UE-39658 Change 3264284 on 2017/01/19 by Mark.Satterthwaite Duplicate CL #3264251: Modify some asserts in MetalRHI - technically using a store-action of ENoAction on Stencil buffers should make it invalid to restart a render-pass but on Mac it will work because ENoAction won't invalidate anything written. In future we need to use deferred store-actions in Metal so that we can "restart" passes while enforcing correct Load/Store actions. #jira UE-40803 Change 3264282 on 2017/01/19 by Benn.Gallagher CIS fix, bad expression that failed to compile Mac #jira UE-40716 Change 3264257 on 2017/01/19 by Mike.Beach Revising fix in UBlueprint::BeginCacheForCookedPlatformData(), saving off nativization data if the -nativizeAssets param is present (not just if it was enabled in packaging settings). #jira UE-40620 Change 3264242 on 2017/01/19 by Daniel.Wright [Copy] Sharing IndirectLightingCacheTextureSampler samplers #jira UE-40727 Change 3264191 on 2017/01/19 by Ori.Cohen Fix heightfield not working with traces underneath. #JIRA UE-39819 Change 3264139 on 2017/01/19 by Benn.Gallagher Removed collision between clothing in external skeletal mesh components, as clothing simulations could already be in flight and editing collisions while the simulation is running is not supported by APEX #jira UE-40716 Change 3264110 on 2017/01/19 by Max.Preussner MfMedia: Disabled plug-in on Windows 10, because it is currently broken #jira UE-406344 Change 3264108 on 2017/01/19 by Max.Preussner MfMedia: Fixed compile errors on Windows 10 #jira UE-40644 Change 3264099 on 2017/01/19 by Jamie.Dale Adding deprecation warning for 4.14 style PO export #jira UE-40592 Change 3264089 on 2017/01/19 by Matthew.Griffin Reworked DDC commandlet to make sure it actually calls BeginCacheForCookedPlatformData on assets Skip doing this for Engine content if -ProjectOnly is set as that takes a long time and isn't necessary for the way we use it #jira UE-39968 Change 3264065 on 2017/01/19 by James.Golding Fix ModifyCurve node not calling init/update in SourcePose #jira UE-40852 Change 3263729 on 2017/01/19 by Alexis.Matte Fix a bad condition when filling the material sorting array #jira UE-40814 Change 3263704 on 2017/01/19 by Jack.Porter Fix compile error in AndroidESDeferredOpenGL.cpp when " ES Deferred Shading Renderer" is enabled. #jira UE-40659 Change 3263627 on 2017/01/19 by Jack.Porter Fixed black textures when Vulkan is packaged for ETC1 #jira UE-40658 Change 3263554 on 2017/01/19 by Jack.Porter Fixes to HISMC LOD to use new screen size calculation. Solves issue where HISMC was always rendered at lowest LOD. #jira UE-38930 Change 3263535 on 2017/01/19 by Matthew.Griffin Removed unnecessary directories to always cook Problem was actually down to string asset references not being resolved in file set generation Change 3263534 on 2017/01/19 by Matthew.Griffin Added -SkipPublish parameter to BuildLauncherSample command so that we don't chunk and post preflights Change 3263267 on 2017/01/18 by Dan.Oconnor Fix for editing of TMap/TSet variables in structure editor, async tasks, and when using UK2Node_CommutativeAssociativeBinaryOperator. #jira UE-40428 Change 3263219 on 2017/01/18 by Dan.Oconnor Fix copy paste error found by UDN user Craig.Wright that could result in fatal bytecode execution #jira UE-19425 Change 3262980 on 2017/01/18 by Maciej.Mroz #jira UE-40394, UE-40395, UE-40426, UE-40484, UE-40770 Integrated cl 3262851, 3261613, 3260908 from Dev-Blueprint Change 3262908 on 2017/01/18 by Ori.Cohen When refreshing physics assets, don't do so on components that have no bodies. #JIRA UE-40764 Change 3262709 on 2017/01/18 by Matt.Kuhlenschmidt Fix a crash if a background blur widget ends up being negative or zero sized #jira UE-40820 Change 3262606 on 2017/01/18 by Marc.Audy Don't bother the user with force feedback based on where the unpossessed pawn is standing in the world while in simulate mode #jira UE-40785 Change 3262416 on 2017/01/18 by Marc.Audy Reenable audio threading #jira UE-00000 Change 3262125 on 2017/01/18 by Chris.Wood Fixed unnecessary truncate in SMenuAnchor::Tick that caused menu placement to wobble [UE-40293] - Dropdown selection box jitters when mouse is moved over top of it on Mac #jira UE-40293 Change 3262103 on 2017/01/18 by Jamie.Dale Merging some cooker fixes CL# 3262089 - Fixing RedirectCollector issues with projects outside the UE4 directory CL# 3262091 - Guarding against potentially invalid call to FString::Mid CL# 3262094 - Cook on the fly builds now resolve string asset references #jira UE-40790 Change 3262082 on 2017/01/18 by Chris.Bunner Accumulate used particle materials from final mesh material module, not first. #jira UE-39953 Change 3261996 on 2017/01/18 by Matthew.Griffin Allow Samples to be built in pre-flights if you are specifying an engine version Change 3261995 on 2017/01/18 by Matthew.Griffin Resolve string asset references after loading packages to ensure that we find all required files Change 3261934 on 2017/01/18 by Allan.Bentham Bump shader version to force changes in 3260307 to occur. #jira UE-39701 Change 3261842 on 2017/01/18 by Graeme.Thornton Manual copy of CL 3253580 from Dev-Core Added some validation of the class index in exportmap entries #jira UE-37873 Change 3261017 on 2017/01/17 by Mitchell.Wilson Resaving all levels to resolve short form string asset reference warnings. #jira UE-40732 Change 3260918 on 2017/01/17 by Andrew.Rodham Sequencer: Request unloaded levels to be loaded when being made visible through sequencer #jira UE-40082 Change 3260909 on 2017/01/17 by Ben.Marsh Fix error running "Clean" in installed build. #jira UE-40751 Change 3260757 on 2017/01/17 by Jeff.Fisher UE-39654 Crash when launching Google VR project -Via SwitchGameWindowToUseGameViewport we get an early ResizeViewport which does an early Draw. This calls GetStereoProjectionMatrix before the game has ticked and fetched the device info we use to build that matrix. -In this change we make the call to setup that information in the GoogleVRHMD constructor, to ensure it is done before anything tries to use it. -I also added some asserts. #jira UE-39654 #review-3260644 Change 3260637 on 2017/01/17 by Alexis.Matte Fix crash when importing skeletal mesh containing a texture or a material using the same name. #jira UE-40538 Change 3260630 on 2017/01/17 by Marc.Audy When installing a feature pack maintain the include of the template so that any properties inside it are not lost by replacing it with the project's PCH include Update all C++ feature packs to include the original project .h in the files that are copied in to the new project #jira UE-40730 Change 3260600 on 2017/01/17 by matt.barnes Test content for sequencer event tracks #jira UE-29618 Change 3260593 on 2017/01/17 by Mieszko.Zielinski Made FSupportedAreaData export as part of engine API #UE4 #jira UE-40739 Change 3260538 on 2017/01/17 by Marc.Audy Always display axes in debug info, but show -- for value when we don't yet know the ranges #jira UE-40700 Change 3260422 on 2017/01/17 by Marc.Audy Expose level streaming incremental unregister component cvars in the engine streaming section of the project settings #jira UE-10109 Change 3260392 on 2017/01/17 by Ben.Woodhouse Duplicated from CL 3260107: Fix FMonitoredProcess to prevent infinite loop in -nothreading mode #jira UE-40717 Change 3260358 on 2017/01/17 by Chris.Bunner Only validate tonemapper LUT input if actually hooked up. #jira UE-40467 Change 3260327 on 2017/01/17 by Frank.Fella PlatformMediaSource - Fix Validate to check all specified media sources, and change GetURL to get the url for the current platform when running uncooked. #jira UE-40709 Change 3260307 on 2017/01/17 by Allan.Bentham Restore metal compiler's shader source serialization code when the shader is to be compiled at runtime. #jira UE-39701 Change 3260276 on 2017/01/17 by Alex.Delesky #jira UE-40276 - Fixing an issue where a Standalone game launched from the editor cannot toggle fullscreen mode. Change 3260274 on 2017/01/17 by Chris.Wood Added check for null World ptr in AActor::PostEditChangeProperty to fix crash when pasting temporary Actors [UE-40492] - Crash after ejecting from PIE session and selecting a component in the details panel #jira UE-40492 Change 3260230 on 2017/01/17 by Ben.Woodhouse Duplicated from dev-rendering@3232283 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 3260096 on 2017/01/17 by Thomas.Sarkanen Fixed crash when rendering out a level sequence with layered animations When a level contained sequences with layered animations that *werent* taking part in the render (i.e. they were not part of the current master sequence) then their instances were initialized but not ticked. When their components then got a call to evaluate their bone transforms, the cached blends were in an uninitialized state. #jira UE-40654 - Render Movie using separate process crashes capture process Change 3259875 on 2017/01/17 by Dmitriy.Dyomin Fixed: SunTemple is washed out in one color on some Android devices #jira UE-40689 Change 3259011 on 2017/01/16 by Max.Chen Matinee to Level Sequence: Make RegisterTrackConverters pure virtual #jira UE-37328 Change 3258992 on 2017/01/16 by Rolando.Caloca UE4.15 - Integrate fix for outlines (3258807) #jira UE-40690 Change 3258949 on 2017/01/16 by mason.seay Disabled TranslatedMass test #jira UE-29618 Change 3258860 on 2017/01/16 by Max.Preussner Media: Prevent loading of media plug-ins in console apps, such as game servers (OR-34819) #jira OR-34819 Change 3258846 on 2017/01/16 by Max.Preussner MfMedia: Fixed incorrect tracks being played in multi-track media sources (UE-39703) #jira UE-39703 Change 3258813 on 2017/01/16 by Benn.Gallagher Added error on import for APEX clothing files that either have no submeshes or have no submeshes with simulated vertices. #jira UE-40614 Change 3258771 on 2017/01/16 by James.Golding Skip fatal warning in UBodySetup::Serialize if duplicating (e.g. spawning component via SCS with a BodySetup in its template) #jira UE-40418 Change 3258747 on 2017/01/16 by Max.Chen Sequencer: AddUnique SequencerActorTag to prevent multiple tags being added when spawning/despawning. #jira UE-40665 Change 3258630 on 2017/01/16 by Jurre.deBaare CIS IfDef issue fix #JIRA UE-1234 Change 3258541 on 2017/01/16 by Phillip.Kavan [UE-40131] Revised fix that will work for "inclusive" BP nativization with data-only BPs. change summary: - revised code in UBlueprint::BeginCacheForCookedPlatformData() to also support the "inclusive" nativization method #jira UE-40131 Change 3258532 on 2017/01/16 by Max.Chen Sequencer: Fix max row index off by one error . This was always incorrect, but it was masked by the fact that FixRowIndices() was called on the track when the UI gets built. That function was removed from the node layer in CL #3252753 and therefore exposed this bug. #jira UE-40642 Change 3258505 on 2017/01/16 by Marc.Audy Improve messaging when installing vehicle and vehicle adv C++ feature packs #jira UE-40647 Change 3258478 on 2017/01/16 by Matt.Kuhlenschmidt PR #3131: UE-40567: Added nullcheck to FSplinePointDetails (Contributed by projectgheist) #jira UE-40567 Change 3258457 on 2017/01/16 by Jurre.deBaare SpeedTree Billboards rendering with Incorrect Material #fix Ensure that we add a section info entry for the billboard models/lods during SpeedTree importing #jira UE-39677 Change 3258442 on 2017/01/16 by Alexis.Matte Skeletalmesh import, make sure we increment the lod index when animation is not imported #jira UE-40640 Change 3258431 on 2017/01/16 by Jurre.deBaare Back out changelist 3258392 #fix issue was already resolved #jira UE-1234 Change 3258392 on 2017/01/16 by Jurre.deBaare Fix for non-unity CIS #JIRA UE-1234 Change 3258358 on 2017/01/16 by Matthew.Griffin Prevent warning from being shown when XMPP module is not built #jira UE-40616 (I guess LoadModule could be changed to LoadModuleChecked now if they do exist) Change 3258144 on 2017/01/15 by Marc.Audy Fix non-unity CIS errors #jira UE-00000 Change 3258141 on 2017/01/15 by zachary.wilson Adding testing content for Distance Field Indirect Shadows #jira UE-29618 Change 3258049 on 2017/01/14 by Nick.Shin UFE sent incorrect header data on missing file also, it seems that UFE was written to expect clients to close the connection -- (this should be closed manually -- which will flush the data and then close out the socket -- but, since this is a developer tool... leaving this as-is) first, 404 was not sending the required double newline after headers second, since connection are not closed manually (server side) send a dummy payload with content-length data #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3257984 on 2017/01/14 by Aaron.McLeran Attempting another fix for static analysis warning in CIS #jira UE-40645 Change 3257904 on 2017/01/14 by Aaron.McLeran Resolving static analysis warnings reported by CIS #jira UE-40645 Change 3257883 on 2017/01/14 by Aaron.McLeran Fixing build warning with CL 3257826 #jira UE-40645 Change 3257826 on 2017/01/13 by Aaron.McLeran Integrating fixes from Dev-Framework and Odin to Release-415 #jira UE-40645 Change 3257654 on 2017/01/13 by Marc.Audy Until plugins can drive their own dependencies vehicle and vehicle adv feature packs will not compile automatically and will pop up a message log informing the user of the actions they need to manually take. #jira UE-40466 Change 3257608 on 2017/01/13 by John.Pollard PC: Assertion Fail with UPackageMapClient::AddNetFieldExportGroup() viewing replays #jira OR-34522 Change 3257489 on 2017/01/13 by Mitchell.Wilson Removing preview mesh from multiple materials to resolve CIS warnings. #jira UE-40628 Change 3257485 on 2017/01/13 by Chris.Babcock Don't initialize FMinimalDummyForwardLightingResources for unneeded feature levels (below SM4) #jira UE-40602 #ue4 #android Change 3257444 on 2017/01/13 by Matt.Barnes Updating test assets for UEQATC-2967 #jira UE-29618 Change 3257324 on 2017/01/13 by Arciel.Rekman Linux: Update runtime CEF lib as well (UE-401413). - Followup to CL 3256081. #jira UE-40413 (Merging CL 3257241 from Dev-Platform to Release-4.15) Change 3257140 on 2017/01/13 by Lina.Halper Fix crash with deleting all poses #jira: UE-40537 Change 3257066 on 2017/01/13 by Jurre.deBaare CIS fix for game builds #jira UE-1234 Change 3257056 on 2017/01/13 by Ben.Zeigler #jira UE-40318 Fix crash in streamablemanager where callbacks would get called on a deleted manager. This is being rewritten in 4.16, so do a quick fix for 4.15 to avoid the crash Change 3256839 on 2017/01/13 by Jurre.deBaare Added conversion of HLOD transition screen size to new transition screen area values #fix During serialization patch up the values of transition screen size within the hierarchical lod setups #misc Updated the default value to a screen size to screen area equivalent #JIRA UE-40518 Change 3256761 on 2017/01/13 by Mieszko.Zielinski Fixed EQS debug rendering not clearing previously displayed labels if new request has no labels #UE4 #jira UE-40589 Change 3256177 on 2017/01/12 by Josh.Adams - Moved the MfMedia plugin outside of XboxOne directory, because it's a Windows plugin as well (that happens to also work on XboxOne - all public APIs) #jira UE-40391 Change 3256131 on 2017/01/12 by Jamie.Dale Fixing log spam when trying to load an empty font data #jira UE-40555 Change 3256081 on 2017/01/12 by Arciel.Rekman Fixed CEF compatibility problems on Ubuntu 14.04 (UE-40413). - Also deleted Debug version of it. - Change by yaakuro. #jira UE-40413 (Edigrating CL 3256065 from Dev-Platform to Release-4.15) Change 3256046 on 2017/01/12 by Jon.Nabozny Use PxConvexFlag::eSHIFT_VERTICES when cooking meshes to fix baked in transforms. #jira UE-39212 Change 3255939 on 2017/01/12 by mason.seay Rebuilt lighting #jira UE-29618 Change 3255912 on 2017/01/12 by Olaf.Piesche Replicating fix from 3246828 for #jira UE-39249 Change 3255909 on 2017/01/12 by Rolando.Caloca UE4.15 - Support for choosing discrete AMD GPU #jira UE-40546 Change 3255835 on 2017/01/12 by Martin.Wilson Fix newly added virtual bones not being on screen. #jira UE-40516 Change 3255774 on 2017/01/12 by Mark.Satterthwaite Merging 3251926 for Richard.Wallis: #jira UE-38828 Crash after Enabling Forward Shading on Mac and Creating/Editing Materials. Using TGlobalResource to avoid constant resource allocation. Prev fix (in CL 3239454) caused a crash in D3D11 with zero sized resource views. Change 3255771 on 2017/01/12 by Alexis.Matte Fix a crash when re-importing asset with no material #jira UE-40510 Change 3255746 on 2017/01/12 by Jon.Nabozny Change _DEBUG to PX_DEBUG in ConvexHullLib.cpp #jira UE-0000 Change 3255659 on 2017/01/12 by Jon.Nabozny Enable Shifting Vertices during Convex Hull cooking to prevent precision issues. (Copied CL-3249100 from Dev-Phyics-Upgrade to support new flag) #jira UE-39212 Change 3255617 on 2017/01/12 by Ori.Cohen Fix crash when computing mass for an async object. Using passed in rigid body instead of assuming SyncRigidActor #JIRA UE-40458 Change 3255536 on 2017/01/12 by Jamie.Dale Fixed crash when using an object picker against the 'Object' type This also optimizes some filter code to avoid filtering when it would be pointless (and just slows things down). #jira UE-40408 Change 3255451 on 2017/01/12 by Chris.Wood Fixed read only text color in SCommentBubble [UE-40384] - Reference Viewer comment text is difficult to read Also changed DetermineForegroundColor() method in EditableTextBox classes to fallback on ForegroundColorOverride if it is set and ReadOnlyForegroundColorOverride isn't set. #jira UE-40384 Change 3255448 on 2017/01/12 by Chris.Wood Removed blinking cursor/caret on read only editable text layouts. [UE-40502] - Flashing cursor/caret showing in read-only editable text layouts #jira UE-40502 Change 3255445 on 2017/01/12 by Marc.Audy Create the dynamic level streaming persistent object correctly outered to the World rather than the transient package to avoid GetWorld() crashing #jira UE-00000 Change 3255441 on 2017/01/12 by Jon.Nabozny Regenerate collision for the basic Cube mesh to fix resting issues and invalid verts. #jira UE-40478 Change 3255407 on 2017/01/12 by Yannick.Lange VREditor: - Fix: Assertion Failed crash after pressing F8 in PIE while Foliage Mode was selected - Fix: Assertion Failed crash after pressing F8 in PIE while Paint Mode was selected - Added extra checks for other possible future cases #jira UE-39786 UE-39789 Change 3255393 on 2017/01/12 by Chris.Bunner Duplicating CL 3255244: Removed test variable from MaterialExpressionVectorParameter. #jira UE-40517 Change 3255375 on 2017/01/12 by Steve.Robb CIS fix. #jira UE-39556 Change 3255334 on 2017/01/12 by samuel.proctor Corrected QA Container asset to remove pin warning. #jira UE-29618 Change 3255319 on 2017/01/12 by james.cobbett Fixing motion blur issue with test content for Pose Snapshots. #jira UE-29618 Change 3255247 on 2017/01/12 by Nick.Darnell Slate - Slate's Tab Manager is now a bit smarter about allowing Focus/BringToFront attention grabbing methods. In order to make the UI less jumpy it was restricted to only allowing alerts and bring to front to be triggered if you were on the window, or child window of the active application window. That can negatively impact cases where a user takes an action (clicks a link ro button saying open/goto this tab), that is on another window. To work around this limitation, the Tab Manager will also permit the action if Slate is currently processing user input, implying that the action being taken is in direct response to the user pressing a button and interacting with the UI. #jira UE-40313 Change 3255236 on 2017/01/12 by Phillip.Kavan [UE-40131] Non-native child BPs can now properly override a nativized parent BP's components in a cooked build with exclusive Blueprint class nativiation. - Mirrored from //UE4/Dev-Blueprints (CL# 3254024,3254391) #jira UE-40131 Change 3255216 on 2017/01/12 by Rolando.Caloca UE4.15 - Fix compile issue on Vulkan 1.0.37.0 or newer #jira UE-40506 Change 3255206 on 2017/01/12 by Steve.Robb Use outer walking IsA() implementation in editor to get around reinstancing and hot reload issues. #fyi mike.beach #jira UE-39556 Change 3255195 on 2017/01/12 by mason.seay Adjusted slope to fix platform discrepancy #jira UE-29618 Change 3255086 on 2017/01/12 by Jack.Porter Fix XboxOneShaderCompiler.cpp non-unity compilation #jira None Change 3255085 on 2017/01/12 by Jack.Porter Missing HTML5 changes from CL 3254907 #jira UE-39111 Change 3255031 on 2017/01/12 by Jack.Porter More iOS GoogleVR changes missing from CL 3254907 #jira UE-39111 Change 3254991 on 2017/01/12 by Jack.Porter Missing file from CL 3254907 #jira UE-39111 Change 3254907 on 2017/01/11 by Jack.Porter Android MSAA changes - use r.MobileMSAA cvar, support more than 2x, fix issues where targets other than scene color were created with MSAA #jira UE-39111 #jira UE-35849 #jira UEMOB-35 Change 3254810 on 2017/01/11 by Arciel.Rekman Linux: fix for crash on exit (UE-40488). #jira UE-40488 Change 3254617 on 2017/01/11 by Peter.Sauerbrei remake the fix for missing PhysXVehicle library in binary for IOS and TVOS #jira UE-39349 Change 3254489 on 2017/01/11 by mason.seay Other minor improvements to the map #jira UE-29618 Change 3254477 on 2017/01/11 by mason.seay Map tweaks to prevent the vehicle from getting stuck #jira UE-29618 Change 3254431 on 2017/01/11 by Mitchell.Wilson Rebuilt lighting on all StarterContent levels. #jira UE-40468 Change 3254333 on 2017/01/11 by mason.seay Adjusted lightmap on mesh to remove odd rendering splotches #jira UE-29618 Change 3254131 on 2017/01/11 by Rolando.Caloca UE4.15 - Missing dumped shaders #jira UE-40465 Change 3254126 on 2017/01/11 by Jeff.Fisher UE-40422 Vive Motion Controllers unable to Play Haptic Effect -Removed an unnecessary remapping of controllerindex to deviceid, they are the same now. #jira UE-40422 #review-3254084 Change 3254046 on 2017/01/11 by Mark.Satterthwaite Merging 3233811: 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. #jira UE-39935 Change 3254021 on 2017/01/11 by james.cobbett Test content for Pose Snapshot testing #jira UE-29618 Change 3253993 on 2017/01/11 by Alexis.Matte Fix the morph target import #jira UE-40424 Change 3253948 on 2017/01/11 by mason.seay Fixed Level BP logic that was causing Access None error #jira UE-29618 Change 3253884 on 2017/01/11 by mason.seay Updated mesh colors on map. Disabled motion blur #jira UE-29618 Change 3253862 on 2017/01/11 by mason.seay Disabled Always Show Mobile Input (turned on by accident) #jira UE-29618 Change 3253859 on 2017/01/11 by Mark.Satterthwaite Merging 3252866: Fix Metal shader pipeline hash collisions caused by deferring MTLFunction construction until PrepareToDraw so that we may use Function-Constants to specialise the shader source without generating additional permutations. This is required to generate proper tessellation shaders which are specialised against the index-buffer usage & type (none, uint16, uint32). While we're here amend the hash functions to make better use of the existing hash functions to improve the distribution and hopefully reduce the possibility of collisions in future. #jira UE-40357 Change 3253854 on 2017/01/11 by Mark.Satterthwaite Merging 3252859: Fix the calculation of Metal tessellation struct alignment and size to use largest member size, so that we don't assert in debug or cause out-of-bounds access in development/shipping. #jira UE-40410 Change 3253853 on 2017/01/11 by Mark.Satterthwaite Merging 3237394: 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 3253852 on 2017/01/11 by Mark.Satterthwaite Merging 3236850: Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3253834 on 2017/01/11 by mason.seay Updated mobile input textures to be power of two #jira UE-29618 Change 3253807 on 2017/01/11 by Mark.Satterthwaite Merging 3232641 & 3236788 & 3233854 & 3249742 from Dev-Rendering: 3232641: - 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. 3236788: 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. 3233854: More information about texture type validation errors in Metal. 3249742: 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. #jira UE-40200 Change 3253636 on 2017/01/11 by Chris.Wood Improved tracking of runtime and debugger attachment for analytics purposes. [UE-39780] - Change IsDebugger to WasDebuggerPresent in all crash/AS analytics [UE-39777] - Update MTBF IsDebugger state for every heartbeat [UE-39778] - UnrealWatchdog to send WasDebuggerPresent state for app if set [UE-39779] - UnrealWatchdog to send total run time of process Debugger state was previously read once at startup or once at the time of an event. Debugger is now checked during the heartbeat and doesn't reset flag when detached so we know if a session was ever debugged. Also reporting total run time in UnrealWatchdog. Watchdog still doesn't run when debugging but and will never show popups to a debugger user even when forced on with -forcewatchdog. #jira UE-39780, UE-39777, UE-39778, UE-39779 Change 3253281 on 2017/01/10 by Dan.Oconnor Typo fix caused parameter in local struct definition to shadow the local #jira UE-40027 Change 3253231 on 2017/01/10 by Dan.Oconnor Mirror of 3253220 These pins should infer together #jira UE-40427 Change 3253125 on 2017/01/10 by Uriel.Doyon Brought back CL 3242117 and 3238685, which got lost on the way: - Fix for possiblel check fail when changin mobility of actors. - Fix for possible check fail when processing streaming data. #jira UE-39996 Change 3252936 on 2017/01/10 by Marc.Audy CopyPropertiesForUnrelatedObjects needs to consider path not just name of subobjects when matching them up to copy properties and update references Ensure that a reinstanced child actor component ends up pointing at the correct child actor template #jira UE-40027 Change 3252886 on 2017/01/10 by Lina.Halper Fix for invalid AnimCurves when curve is added while running #jira: UE-39826 Change 3252753 on 2017/01/10 by Frank.Fella Sequencer - Change track rows to use separate track nodes in the display node tree, fixes key edit issues on animation and audio tracks. #jira UE-39836 Change 3252640 on 2017/01/10 by Lukasz.Furman fixed NavCollision losing user settings after any property change copy of 3252628 #jira UE-40388 Change 3252614 on 2017/01/10 by Daniel.Wright UStaticMeshComponent::InvalidateLightingCacheDetailed uses MarkRenderStateDirty. Massively speeds up duplication of HISMC with many instances (10+ minutes -> seconds), as InvalidateLightingCacheDetailed gets called for every instance. #jira UE-40406 Change 3252609 on 2017/01/10 by mason.seay Updated map with text actors for more visual clarity #jira UE-29618 Change 3252477 on 2017/01/10 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios #jira UE-39852 Change 3252451 on 2017/01/10 by Daniel.Wright Garbage collection calls UWorld>SendAllEndOfFrameUpdates() on all loaded worlds first so that deferred recreate render states happen before any UObjects are deleted * Fixes rendering thread crashes in the order of events of 1) SetMaterial 2) GC 3) Rendering command that dereferences the UMaterial #jira UE-30089 Change 3252418 on 2017/01/10 by Ben.Zeigler #jira UE-40390 Fix crash saving blueprint with an inherited DataTable/CurveTable reference. Delta serialization meant that the necessary name wasn't in the name table, so adding it manually now. Change 3252410 on 2017/01/10 by Max.Chen Sequencer : Filter sections on select in range Copy from Dev-Sequencer #jira UE-37854 Change 3252385 on 2017/01/10 by Max.Chen Sequencer: Update auto tangents when setting key time. This fixes a bug where dragging keys with auto tangents doesn't recompute tangents properly. #jira UE-39923 Change 3252360 on 2017/01/10 by Allan.Bentham Remove incorrect assert for iOS. #jira UE-40385 Change 3252297 on 2017/01/10 by mason.seay Test assets for suspending cloth simulation #jira UE-29618 Change 3252125 on 2017/01/10 by Mieszko.Zielinski Fallout fix after removal of BlackboardKeyUtils::CalculateComparisonResult declaration from the AIModule #UE4 #jira UE-40099 Change 3251987 on 2017/01/10 by Allan.Bentham Fix HQ DoF #jira UE-35548 Change 3251856 on 2017/01/10 by Jack.Porter Fixed Get Instances Overlapping Box blueprint function due to issue with FBox constructor. Added MakeBox and MakeBox2D kismet native functions Fixed box overlap test ignoring instance scale #jira UE-34409 Change 3251519 on 2017/01/09 by Daniel.Wright [Copy] Fixed GLandscapeLayerUsageMaterial getting GC'ed #jira UE-40055 Change 3251146 on 2017/01/09 by Lina.Halper Fix on stable track data carrying over to pose asset - decided to clean up track data in anim sequence since we don't really need that data anymore #jira: UE-40351 #code review: Martin.Wilson Change 3251056 on 2017/01/09 by Lina.Halper fixed crash when pose node contains stale data when updating source. #jira: UE-40258 #code review; Thomas.Sarkanen Change 3251035 on 2017/01/09 by Mitchell.Wilson Removed preview mesh in M_GodRay to resolve CIS warning. Relinked textures used in two materials to resolve CIS warnings. #jira UE-40350 Change 3250959 on 2017/01/09 by Mitchell.Wilson Updating master sequence playback end time so the final audio track can be heard. Updating multiple shots to resolve issues with audio not playing back properly. #jira UE-40321 UE-40335 Change 3250896 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed level visibility not working in PIE #jira UE-40082 Change 3250895 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed evaluation of overlapping audio and skeletal aninmation sections - Audio and skeletal animation sections now continue to support legacy evaluation order. Overlapping sections of the same priority on the same row will be filtered out such that only the section with the latest start time will be evaluated. #jira UE-40320 Change 3250830 on 2017/01/09 by Ben.Woodhouse Duplicated from //ue4/Release-4.14 CL 3238182 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. #jira UE-38818 Change 3250790 on 2017/01/09 by Lauren.Ridge Fixing backspace on VR Editor numberpad menu. #jira UE-39770 Change 3250681 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@3249296: 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 3250680 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@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 #jira UE-39949 Change 3250609 on 2017/01/09 by Steve.Robb Maximum number of stats-using threads increased to 512. #jira UE-38153 Change 3250604 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed incorrect seed being used when generating new animation type IDs for object properties #jira UE-40327 Change 3250589 on 2017/01/09 by Matthew.Griffin Changed publish symbols node to use runtime dependencies instead of manually including the whole PhysX folder Avoids unused configs and VS2013 files #jira UE-39171 Change 3250578 on 2017/01/09 by Matthew.Griffin Removed art tools from released build now that they are available separately on the Marketplace Change 3250282 on 2017/01/07 by Mieszko.Zielinski Fixed UNavigationSystem::bNavigationAutoUpdateEnabled getting ignored by recent addition to related condition in UNavigationSystem #UE4 Reported by UT team. Replication of a fix from Dev-Framework that didn't make it to 4.15 stream #jira UE-40324 Change 3250276 on 2017/01/07 by Mieszko.Zielinski Fixed not being able to add elements to UAIPerceptionStimuliSourceComponent.RegisterAsSourceForSenses for instances manually placed on the map #UE4 #jira UE-31711 Change 3250219 on 2017/01/07 by Mieszko.Zielinski Extended comment to AISenseConfig_Sight::PeripheralVisionAngleDegrees to make it clear how it works #UE4 #jira UE-31731 Change 3250147 on 2017/01/07 by Andrew.Rodham Added missing includes #jira UE-40019 Change 3250096 on 2017/01/06 by Nick.Shin refetch on timed out GET/POST requests correction to: UE_MakeHTTPDataRequest #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3249963 on 2017/01/06 by Mieszko.Zielinski removed unused and undefined BlackboardKeyUtils::CalculateComparisonResult #UE4 #jira UE-40099 Change 3249829 on 2017/01/06 by Alexis.Matte turn on the material name clash feature for the content browser importer. #jira UE-40298 Change 3249791 on 2017/01/06 by andrew.porter QAGame: Added level blueprint logic to QA-Sequencer that lets tester override sequence bindings #jira UE-29618 Change 3249755 on 2017/01/06 by Jamie.Dale Some fixes for object reference detection and notification when deleting assets #jira UE-40121 Change 3249727 on 2017/01/06 by James.Golding #jira UE-40242 Change 3249707 on 2017/01/06 by Mitchell.Wilson Removing preview mesh with incorrect path from materials to resolve warnings in CIS. #jira UE-40311 Change 3249543 on 2017/01/06 by Michael.Dupuis #jira UE-40299: validate if UISettings is valid Change 3249506 on 2017/01/06 by Alexis.Matte Make sure we use the correct LodIndex when importing a new LOD in case a previous LOD import fail. #jira UE-40240 Change 3249477 on 2017/01/06 by Ori.Cohen Fix incorrect warning when moving kinematic objects during simulation. #JIRA UE-40290 Change 3249472 on 2017/01/06 by Andrew.Rodham Sequencer: Undo now works as expected when editing the properties of a key #jira UE-40019 Change 3249390 on 2017/01/06 by Mitchell.Wilson Removing preview meshes with improper path from materials to resolve CIS warnings in landscape mountains sample. #jira UE-40300 Change 3249317 on 2017/01/06 by Alexis.Matte Fix a crash when loading skeletalmesh with no section #jira UE-40249 Change 3249294 on 2017/01/06 by Mitchell.Wilson Updated defaultengine.ini for Match 3 to resolve warnings in CIS. ServerDefaultMap and TransitionMap had invalid paths. #jira UE-40295 Change 3249213 on 2017/01/06 by Chris.Bunner Fixed up logic for windowed/fullscreen output display selection when working with HDR. Now selects the most appropriate display if HDR enabled, else current monitor window is on. FullscreenDisplay commandline functions regardless of HDR support. #jira OR-33525, OR-33536, OR-33540, OR-33520 Change 3249135 on 2017/01/06 by Martin.Wilson Fix root motion issues on additive animations. - Fix scale issue on resetting root bone - Fix loss of root motion when animation is additive. #jira UE-40232 Change 3248522 on 2017/01/05 by Alexis.Matte Fix a crash when reimporting morph target. Also fix a crash when initiating ColorVertexBuffer with NULL value #jira UE-40201 Change 3248271 on 2017/01/05 by Andrew.Rodham Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence #jira UE-40234 Change 3248092 on 2017/01/05 by Ben.Marsh UBT: Remove the [Obsolete] attribute from methods in TargetRules; the [ObsoleteOverride] attribute gives a much better (and more concise) warning with specific instructions on how to resolve it. Change 3248091 on 2017/01/05 by Marcus.Wassmer Tick renderthreadtickables in -onethread to avoid leaks. #jira UE-40248 Change 3248063 on 2017/01/05 by Marc.Audy Route FAudioDevice::StopAllSounds to the audio thread if called on the game thread #jira UE-40243 Change 3247995 on 2017/01/05 by Maciej.Mroz NativizationSummary object is always present. manually merged cl#3247985 from Dev-Blueprints #jira UE-40035 Change 3247873 on 2017/01/05 by Chad.Garyet Adding "Generate QA Labels" buildgraph node and automation script. Port of createNewLabel and createMinimumLabel python scripts into UAT #jira UEB-725 Change 3247855 on 2017/01/05 by Nick.Shin refetch on timed out GET/POST requests #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3247737 on 2017/01/05 by Marc.Audy static mesh component instance data now correclty inherits from pritive component instance data instead of skipping it and inheriting directly from scene component instance data #jira UE-40053 Change 3247723 on 2017/01/05 by mason.seay Asset for suspend cloth bug #jira UE-29618 Change 3247708 on 2017/01/05 by Mitchell.Wilson Updating project settings to disable dbuffer decals to resolve rendering issues in Showdown while using -game -vr #jira UE-40195 Change 3247652 on 2017/01/05 by Martin.Wilson Fixes for animation notifies window -Fix notify not being removed from skeleton -Fix crash where editor is not refreshed after notify removal #jira UE-40154 Change 3247638 on 2017/01/05 by mason.seay Test assets for cloth suspension #jira UE-29618 Change 3247630 on 2017/01/05 by Alexis.Matte Prevent crash when the import fail and we have no staticmesh created #jira UE-40024 Change 3247556 on 2017/01/05 by Ben.Marsh Fix non-unity compile error. Change 3247547 on 2017/01/05 by Jurre.deBaare Crash while using the Delete Button in the HLOD Outliner while a Generated Proxy Mesh is opened in the Static Mesh Editor #fix Unify path for both delete cluster options in the outliner UI #jira UE-40066 Change 3247539 on 2017/01/05 by Benn.Gallagher Fixed serialization crash for simplified skeletal meshes leading to corrupted assets that crash on load after skin weight buffer changes. #jira UE-40199 Change 3247515 on 2017/01/05 by Allan.Bentham Fix inverted planar reflections when mobileLDR Fixed incorrect gamma 2 planar reflection rendering when mobileLDR #jira UE-32868 Change 3247502 on 2017/01/05 by Dmitriy.Dyomin Fixed: Single digit frame rate when sculpting landscape foliage. #jira UE-39532 Change 3247232 on 2017/01/04 by Ben.Marsh Remove private include from public header. Prevents compiling samples from installed build of the engine without private headers. #jira UE-40135, UE-40137, UE-40139, UE-40140, UE-40141, UE-40142, UE-40143, UE-40144 Change 3247002 on 2017/01/04 by Chris.Babcock Changed Vulkan hitchy pipeline log message verbosity #jira UE-38354 #ue4 #android #dontbackcopy Change 3246927 on 2017/01/04 by matt.barnes Updating QAGame content to facilitate UEQATC-2969 #jira UE-29618 Change 3246894 on 2017/01/04 by Mike.Beach Mirroring CL 3245322 from Dev-BP Fixed a crash when implementing a native interface in a BP #jira UE-40155, UE-40203 Change 3246830 on 2017/01/04 by Chris.Bunner Allow AllocGBuffer call when in simple-forward so dummy uniform buffer creation can occur. #jira UE-39756 Change 3246816 on 2017/01/04 by Jon.Nabozny Fix Anim Notifies Tab not opening in Animation Editor. #JIRA UE-40134 Change 3246804 on 2017/01/04 by Ori.Cohen Touch engine file to trigger re-link. #JIRA UE-40156 Change 3246709 on 2017/01/04 by mason.seay Updated map #jira UE-29618 Change 3246606 on 2017/01/04 by Ori.Cohen Fix for sweeps taking too long time (OR-32839). - Exhaustive investigation uncovered apparent numerical problems in this code (when compiling with clang 3.9.x with -ffast-math). - Current solution can result in overshoot for certain trace extents, but they are not expected to be a practical problem in Unreal. - NVidia is aware and will investigate a better solution. #tests Compiled Linux server with the changed PhysX and continuously ran bot matches for about a day. #JIRA UE-40156 Change 3246571 on 2017/01/04 by Marc.Audy Look at the body instance's desired collision enabled value rather than the primitive component's current collision enabled value when determining whether physics state should be created #jira UE-39994 Change 3246527 on 2017/01/04 by tim.gautier QAGame: BP_MediaPlayer now displays the name of the MediaPlayer plugin currently in use during playback #jira UE-29618 Change 3246480 on 2017/01/04 by mason.seay Map update #jira UE-29618 Change 3246470 on 2017/01/04 by Ori.Cohen Guard against infinitely thin geometry which fixes some nans. This showed up as issues in various projects #JIRA UE-00000 Change 3246413 on 2017/01/04 by Jon.Nabozny Cube asset did not have Tri Meshes. Reimported to fix the issue. -- Copied from 3233164 -- #jira UE-39657 Change 3246388 on 2017/01/04 by Jon.Nabozny Set 'p.MoveIgnoreFirstBlockingOverlap' to be enabled by default (3158732). This causes collision behavior to remain unchanged unless people opt in to the new behavior. -- Copied from 3239735 (bot health fixed by a different CL) -- #jira UE-39387 Change 3246352 on 2017/01/04 by Jon.Nabozny Fix FPredictProjectilePathParams to use a valid default value for TraceChannel. This requires the use of a new bool bTraceWithChannel which is enabled by default. -- Copied from 3239765 -- #JIRA UE-39726 Change 3246341 on 2017/01/04 by Ori.Cohen Allow vehicles to inherit from PawnMovementComponent and only use the pawn/ai capabilities when a Pawn owner is used. #JIRA UE-39508 Change 3246178 on 2017/01/04 by Andrew.Rodham Sequencer: When playback stops naturally, the play position is set to the boundary that caused playback to stop (the end if playing forwards, the start if playing backwards) - This is to reconcile the movie scene sequence player with previous behaviour #jira UE-40076 Change 3246102 on 2017/01/04 by Benn.Gallagher Fixed single threaded physics dispatcher triggering checks from clothing when running with a CPU with two or fewer cores. #jira UE-39811 Change 3246100 on 2017/01/04 by Benn.Gallagher Fixed ensure triggered when using root motion with sub instances Fixed crash reinstancing an active anim class that had subinstances #jira UE-39582 #jira UE-39579 Change 3246092 on 2017/01/04 by Marc.Audy PR #3082: Improve comment for UInputComponent (Contributed by Soleone) #jira UE-40098 Change 3246084 on 2017/01/04 by Matthew.Griffin Remove bad files Change 3246076 on 2017/01/04 by Matt.Kuhlenschmidt Fixed all non-editable text properties having a double disabled effect. The text box is read only which prevents edting but still allows copying text from it. This feature had regressed and the disabled effect on top of the read only effect made it too difficult to see the text. #jira UE-39652 Change 3246043 on 2017/01/04 by Steve.Robb Use of CastChecked instead of Cast in implementations of IStructSerializerBackend::WriteProperty. This is both more efficient and will hopefully make it easier to diagnose the issue. #jira UE-39872 Change 3246032 on 2017/01/04 by Martin.Wilson Change FindBoneIndex to FindRawBoneIndex (final bone maps are not built until after all adding is done so they will not be found) #jira UE-40105 Change 3246016 on 2017/01/04 by Andrew.Rodham Editor: Insert/Duplicate/Delete menu on array properties now only closes itself on click, rather than all menus - This allows us to edit such properties on context menus #jira UE-39998 Change 3246005 on 2017/01/04 by Thomas.Sarkanen Fixed asset attachment issues in Skeleton Tree Assets were being attached uniquely, so only one asset could be attached to a bone/socket. However the calling code didnt know that the unique attachment function just gave up, so the item just got added to the bottom of the tree. The attachment filter was not set correctly to allow for bone attatchments, so only sockets could be attached to. The attach parent name was not initialized, so assets could not be deleted one at a time. #jira UE-40040 - With multiple Preview assets on one bone, only one appears in Skeleton Tree #jira UE-40041 - Preview assets appear at the bottom of the skeleton tree Change 3246002 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed actor tick prerequisites not getting set up correctly for master sequences #jira UE-39975 Change 3245979 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed scrubbing audio tracks not working propertly #jira UE-40048 Change 3245978 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed dropping a level onto a level visibility section not marking the track as changed, and not correctly creating a transaction #jira UE-39998 Change 3245977 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed crash caused by lingering persistent evaluation data #jira UE-40064 Change 3245971 on 2017/01/04 by Dmitriy.Dyomin Fixed: Using Set World Origin Location will cause the player pawn to stutter #jira UE-40022 Change 3245725 on 2017/01/03 by Matt.Barnes Further improvments on test assets for UEQATC-2963 #jira UE-29618 Change 3245658 on 2017/01/03 by Arciel.Rekman Linux: fix ARM32 build (UE-39913). #jira UE-39913 (Redoing CL 3240982 from Dev-Platform in Release-4.15) Change 3245577 on 2017/01/03 by Mason.Seay More vehicle updates #jira UE-29618 Change 3245556 on 2017/01/03 by Matt.Barnes Updating test content for UEQATC-2963 #jira UEQATC-2963 Change 3245461 on 2017/01/03 by mason.seay Updating Inertia Tensor Scale to improve Vehicle Handling #jira UE-40013 Change 3245442 on 2017/01/03 by Jeff.Fisher UEVR-495 Assert when switching to 2d mode. sceHmdReprojectionStart failing. -There was a race condition between switching output modes on the render thread and sceHmdReprojectionStart on the RHI thread. The flush fixes that. The reprojection would simply have failed that frame previously in shipping which would not matter much as we are switching output modes anyway. #jira UEVR-495 #review-3245374 Change 3245427 on 2017/01/03 by Jeff.Fisher UEVR-456 check if we are using camera before doing camera disconnected dialog on PSVR -If the tracker is active, but we are tracking nothing (ie we have the morpheus hmd tracking plugin, and started up with it, but switched to 2d mode) don't pop up the camera setup warning until we start trying to track something again. -This is useful for apps that have 2d and vr modes. #jira UEVR-456 #review-3245372 Change 3245329 on 2017/01/03 by mason.seay Level and vehicle tweaks #jira UE-29618 Change 3245275 on 2017/01/03 by Chris.Babcock Added EngineVersion to AndroidManfiest.xml metadata #jira UE-40123 #ue4 #android Change 3245235 on 2017/01/03 by Guillaume.Abadie Cherry picks CL 3234813 from Dev-Rendering: Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3245183 on 2017/01/03 by Chris.Babcock Added missing #undef LOCTEXT_NAMESPACE to some files (contributed by projectgheist) #jira UE-40103 #PR #3085 #ue4 #android Change 3245120 on 2017/01/03 by mason.seay Missed some assets #jira UE-29618 Change 3245116 on 2017/01/03 by mason.seay Mass fucntional test #jira UE-29618 Change 3245049 on 2017/01/03 by Ben.Marsh PR #3086: Fixed ScriptGeneratorPlugin #includes (Contributed by projectgheist) Change 3244924 on 2017/01/03 by Ben.Zeigler #jira UE-40057 Fix regression in public access for SwapPlayerControllers, from GitHub #3072 Change 3244831 on 2017/01/03 by Mitchell.Wilson Fixed hole in collision around level. #jira UE-39576 Change 3244817 on 2017/01/03 by Matthew.Griffin Change check for files being under engine directory to avoid problems with relative paths #jira UE-40096 Change 3244801 on 2017/01/03 by Andrew.Rodham Editor: Fixed color picker not working when opened from a details panel on a context menu - When a color picker is opened from a details panel that's on a context menu, it now opens as a sub menu - Added the ability to find an open menu from a widget path to FSlateApplication #jira UE-39932 Change 3244776 on 2017/01/03 by Matt.Kuhlenschmidt Fix window handle and device context being accessed by scene viewports after the underlying window has been destroyed by the OS. This is an invalid state on linux and using some vr devices. #jira UE-7388 Change 3244672 on 2017/01/03 by Ben.Marsh Search all directories containing universal CRT installations from the registry, rather than assuming that the first one found will contain the universal CRT version we want to use. Attempt to fix issues described in PR #3059. Change 3244668 on 2017/01/03 by Thomas.Sarkanen Added "Reimport Animation" and "Export to FBX" to the animation editor toolbar Options were in the asset menu before. #jira UE-39643 - Missing "Reimport" option for animation assets Change 3244667 on 2017/01/03 by Thomas.Sarkanen Reduced default URO distances in-line with new LOD calculations New values should give (roughly) the same effect as the older values with the older system. #jira UE-39939 - URO LOD distance factors different with the new screen size metric Change 3244654 on 2017/01/03 by Matthew.Griffin Added functionality to specify Loading Phase for plugin templates Changed Blueprint Library Template so that it loads pre loading screen and can be linked correctly in blueprints that use it #jira UE-38826 Change 3244631 on 2017/01/03 by Dmitriy.Dyomin Fixed: TM_Landscape_LOD Folder does not Live Update contents after generating LODs with Create Per Package Asset #jira UE-37368 Change 3244548 on 2017/01/02 by Jack.Porter Fix for Post-process Materials rendering incorrectly in editor mobile preview after viewport is resized #jira UE-39905 Change 3244389 on 2016/12/30 by Phillip.Kavan [UE-39816] Fix broken pin links caused by renaming interface function input/output parameters prior to compiling the interface, but after renaming the function itself. Mirrored from //UE4/Dev-Blueprints (CL# 3244388). #jira UE-39816 Change 3244248 on 2016/12/29 by laz.matech Saved the new sublevel in the persistent level and set it to hidden by default #jira UE-29618 Change 3244213 on 2016/12/29 by laz.matech Added a sublevel to QA-Sequencer map #jira UE-29618 Change 3243857 on 2016/12/27 by samuel.proctor Altered Container asset to have proper console input #jira UE-29618 Change 3243852 on 2016/12/27 by Mason.Seay Forgot config file #jira UE-29618 Change 3243847 on 2016/12/27 by mason.seay Improved mobile input #jira UE-29618 Change 3243536 on 2016/12/24 by Phillip.Kavan [UE-39944] Extend the GetClassDefaults node to include output pin exceptions for TSet/TMap properties (i.e. mirror safeguards already in place for TArray). Mirrored from //UE4/Dev-Blueprints (CL# 3243210). #jira UE-39944 Change 3243535 on 2016/12/24 by Phillip.Kavan [UE-39816] Renaming interface input/output parameters will no longer cause broken pin links at interface function call sites in Blueprints that are currently loaded. Mirrored from //UE4/Dev-Blueprints (CL# 3243207). #jira UE-39816 Change 3243534 on 2016/12/24 by Phillip.Kavan [UE-39733] Fix incorrect graph pin value display names for user-defined enum types. Mirrored from //UE4/Dev-Blueprints (CL# 3239965). #jira UE-39733 Change 3243532 on 2016/12/24 by Phillip.Kavan [UE-39854] Fix nativized assets build error when there are no native code dependencies. Mirrored from //UE4/Dev-Blueprints (CL# 3239778). #jira UE-39854 Change 3243529 on 2016/12/24 by Phillip.Kavan [UE-38999] Dump component tree node hierarchy to the output log on error state during widget generation. Mirrored from //UE4/Dev-Blueprints (CL# 3239289). #jira UE-38999 Change 3243442 on 2016/12/23 by mason.seay QAGame cleanup - Replacing copy pose from mesh test assets #jira UE-29618 Change 3243215 on 2016/12/22 by Dmitriy.Dyomin Fixed: Switching to ES2 feature level preview renders black in editor #jira UE-40009 Change 3243185 on 2016/12/22 by Ryan.Vance #jira UEVR-478 Integrating 3235308 Mono changes from DevVR. Change 3243183 on 2016/12/22 by Ryan.Vance #jira UEVR-455 Integrating 3243173 post present call back implementation from 4.14.1 Change 3243182 on 2016/12/22 by Ryan.Vance #jira UE-39269 Working around a nullptr deref in the Oculus runtime. Change 3243153 on 2016/12/22 by mason.seay WIP map update #jira UE-29618 Change 3243128 on 2016/12/22 by andrew.porter QAGame: Adding Actor Sequence test content for a crash. #jira UE-29618 Change 3243117 on 2016/12/22 by Jeff.Fisher UE-34004 GitHub 2659 : Implement support for OpenVR controller roles. -Rather than assigning unreal hands to controllers in the order the controllers are connected assign unreal hands to match the ones the API is using. -We now defer setting up controllers that are disconnected. This lets connected controllers, that may have hand preference from steam, occupy their desired hands first. If a controller is connected later and does not have a role it is assigned to an unoccupied hand or to the right hand. -This can still end up ignoring role in the following circumstance (and I can get it to do this): get one controller to prefer'right' and the other to have no preference. Power off the 'right' prefering controller. Start the game with only the no-preference controller on. The game will put that controller in the right slot, because the api gives it no other hints. Then power on the controller that preferred 'right'. That controller will now be assigned left, because right is occupied. I don't see a way around that without the ability to switch which hand a controller is associated with at runtime. -This does not yet handle starting with 2 controllers, disconnecting one, then connecting a third controller well. That did not work before either. A new Jira was created for that. #2659 #jira UE-34004 #review-3231154 Change 3243093 on 2016/12/22 by mason.seay Some tweaks to vehicle levels #jira UE-29618 Change 3243084 on 2016/12/22 by andrew.porter QAGame: Cleaned up Sequencer_OverrideBindings #jira UE-29618 Change 3243009 on 2016/12/22 by andrew.porter QAGame: Renaming actor in Sequencer_OverrideBindings. #jira UE-29618 Change 3243003 on 2016/12/22 by andrew.porter QAGame: Removing override bindings from level sequence #jira UE-29618 Change 3242996 on 2016/12/22 by andrew.porter QAGame: Slight tweak to QA-Sequencer. #jira UE-29618 Change 3242982 on 2016/12/22 by Marc.Audy Properly reenable stats sounds in both game and level editor #jira UE-40015 Change 3242959 on 2016/12/22 by mason.seay Test map for vehicles and moving meshes #jira UE-29618 Change 3242934 on 2016/12/22 by andrew.porter QAGame: Adding test content to QA-Sequencer for Override Bindings #jira UE-29618 Change 3242870 on 2016/12/22 by Mason.Seay QAGame footprint reduction: Clearing out content (were in for old bug reports) #jira UE-29618 Change 3242799 on 2016/12/22 by tim.gautier QAGame - Adding the following assets for Sequencer Event Track testing: -TM-Sequencer_EventTrack + BuildData -QA_LightStruct -Sequencer_EventTrack #jira UE-29618 Change 3242792 on 2016/12/22 by samuel.proctor Correcting Container test asset for proper output #jira UE-29618 Change 3242727 on 2016/12/22 by Dmitriy.Dyomin Fixed: LoadLevelIntstance returns a reference that can't be used to send an interface message #jira UE-40005 Change 3242666 on 2016/12/22 by Dmitriy.Dyomin Fixed: Packaging Android app for Mali Graphics Debugger v4.3.0 fails #jira UE-39534 Change 3242373 on 2016/12/21 by Ori.Cohen Allow vehicles to override inertia tensor after any mass properties have changed. #JIRA UE-39566 Change 3242323 on 2016/12/21 by Josh.Adams - Somehow my last change just got completely lost in the edigrate shuffle. Or something. I have no idea! Rdoing it #jira UE-39966 Change 3242286 on 2016/12/21 by mason.seay Vehicle Assets and Maps #jira UE-29618 Change 3242284 on 2016/12/21 by Marc.Audy Fix "stat sounds" not working after PIE completes and a new one is begun #jira UE-32743 #jira UE-39511 Change 3242281 on 2016/12/21 by Ori.Cohen Fix multi select being very slow in phat #JIRA UE-39559 Change 3242229 on 2016/12/21 by Ben.Marsh Fixup workspace for building PhysX. Change 3242227 on 2016/12/21 by Marc.Audy Properly update listener position for stat sounds #jira UE-38850 Change 3242218 on 2016/12/21 by Ori.Cohen Fix physx html5 compilation APEX issue. #JIRA UE-39566 Change 3242174 on 2016/12/21 by Ori.Cohen Fix incorrect moment of inertia for convex elements with translation. #JIRA UE-39566 Change 3242145 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix for vehicle stability #JIRA UE-38710 Change 3242139 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix: Fix crash when setting collision trace in construction script. #JIRA UE-39341 Change 3242088 on 2016/12/21 by Alexis.Matte Fix the drag and drop material on level instance to drop on the correct material slot Fix the serialization of the staticmesh property FMeshSectionInfoMap #jira UE-39952 Change 3242081 on 2016/12/21 by Andrew.Rodham Sequencer: Make details view focused when resetting inner struct contents to ensure that focus path is valid. #jira UE-39851 Change 3242079 on 2016/12/21 by Andrew.Rodham Sequencer: Evaluation templates are now only fully rebuilt in PIE, and will not re-cycle track identifiers - This addresses issues with newly compiled tracks recycling the persistent data of old stale tracks. - This commit also ensures we don't fully rebuild templates in the editor when in Sequencer #jira UE-39882 Change 3242078 on 2016/12/21 by Andrew.Rodham Sequencer: Fixed crash when deactivating a section in sequencer #jira UE-39880 Change 3242026 on 2016/12/21 by Josh.Adams - Fixed compile errors in tools after NVNRHI move #jira UE-39966 Change 3241994 on 2016/12/21 by andrew.porter QAGame: Disabled auto play on Sequencer_AnimNotify. #jira UE-29618 Change 3241989 on 2016/12/21 by Mitchell.Wilson Resolving CIS warnings in Content examples. Fixed up redirectors. Moved a texture from developer folder into project and relinked in POM_Debug material. Fixed up BP Commentary Box which was failing to compile. Updated spawn rate on Pulse Ring so it works as intended. #jira UE-39984 Change 3241986 on 2016/12/21 by mason.seay Vehicle Landscape Test map (mainly for crash investigation) #jira UE-29618 Change 3241914 on 2016/12/21 by Josh.Adams - Removed invalid and confusing .ini settings #jira UE-39982 Change 3241902 on 2016/12/21 by Josh.Adams - Moved NVNRHI stuff out of RHI.Build.cs #jira UE-39966 Change 3241889 on 2016/12/21 by andrew.porter QAGame: Added new level sequence to QA-Sequencer level #jira UE-29618 Change 3241884 on 2016/12/21 by Alexis.Matte Make sure the color grading cursor follow the mouse by using the exponent value when painting the cursor. #jira UE-39834 Change 3241869 on 2016/12/21 by andrew.porter QAGame: Adding test content for Sequencer Animation Notifies #jira UE-29618 Change 3241809 on 2016/12/21 by Chris.Wood Fix non-unity build errors in UnrealWatchdog. [UE-39940] - GitHub 3054 : Added EngineBuildSettings.h to UnrealWatchdog.cpp PR #3054: Added EngineBuildSettings.h to UnrealWatchdog.cpp (Contributed by ryanjon2040) #jira UE-39940 Change 3241806 on 2016/12/21 by Marc.Audy Don't unload and then reload streaming levels that are marked to be hidden. #jira UE-39883 Change 3241802 on 2016/12/21 by Marc.Audy Add new object flag RF_NeedInitialization to indicate that ~FObjectInitalizer and PostInitProperties have not been executed for the object Do not allow Modify calls on Objects that have not been initialized #jira UE-39731 Change 3241790 on 2016/12/21 by Marc.Audy Don't rerun construction scripts when an actor has seamless traveled from another level #jira UE-39699 Change 3241789 on 2016/12/21 by Marc.Audy Check Owner has a valid world before trying to access Scene (4.14.2) #jira UE-39560 Change 3241786 on 2016/12/21 by Marc.Audy Fixed crash when seamless travelling in PIE from levels other than the current editor level with a streaming sublevel shared with the current editor level #jira UE-39407 Change 3241781 on 2016/12/21 by Mitchell.Wilson Fixed up redirectors for SkeletalMesh and Personal Walkthroughs. #jira UE-30953 Change 3241747 on 2016/12/21 by mason.seay Tag Query test map and assets #jira UE-29618 Change 3240938 on 2016/12/20 by Ben.Marsh Remaking QFE fixes from 4.14 branch. Change 3240740 on 2016/12/20 by Ben.Marsh Update branch name for analytics. [CL 3272229 by Matthew Griffin in Main branch]
2017-01-25 16:23:41 -05:00
switch (RenderTarget->Target)
{
case GL_TEXTURE_2D:
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3443236) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3385304 on 2017/04/07 by Ryan.Vance #jira UEVR-694 GL_TEXTURE_EXTERNAL_OES support hlslcc changes to support the TextureExternal keyword RHI changes to support RHICreateTextureExternal2D Fall back to a standard 2d texture on platforms without extension support Did not implement a shader cache solution as the resource is expected to be shared across processes, so recreating it from the shader cache would be a bad thing Change 3391376 on 2017/04/12 by Ben.Marsh Build: Add additional UE4Game targets for Dev-VR, to catch build failures in plugins that are disabled for games. Change 3392546 on 2017/04/13 by Jeff.Fisher Duplicating in Dev-VR (from Release-4.16) UEVR-734 PSVR sdk 4.5 tracking improvements UEVR-738 PSVR prediction time dynamic adjustment -New tracker profile and camera config to activate ps4 tracking improvements. -Calculating prediction time based on flip timings rather than assuming it will be a particular value. This makes the prediction time nearly perfect as long as we meet framerate and lets it adapt to the timing of when the prediction is made in the frame. -Changed reprojection fliparg to be the frame number, rather than a separate incrementor, so its more useful for debugging. #jira UEVR-734 #review-3391147 Change 3394508 on 2017/04/14 by Jeff.Fisher merge fix ShaderCacheTypes.h Change 3399628 on 2017/04/19 by Jeff.Fisher UEVR-582 PSVR not applying WorldToMeters for position accessor -Changed to apply WorldToMeters scale when we get the position data from PS4Tracker, so that the positions stored in MorpheusHMD are always in world space. #jira UEVR-582 #review-3398683 Change 3404200 on 2017/04/21 by Jeff.Fisher UEVR-239 GearVR headset worn/notworn notifications -Implemented the IHeadMountedDisplay accessor for this, and also hooked up the delegates that fire on PS4. -Implemented the IHeadMountedDisplay accessor for PS4. #jira UEVR-239 #review-3404174 @keli.hloedversson Change 3412688 on 2017/04/27 by Jeff.Fisher UEVR-766 PSVR test level improvements -VR/TM-MotionControllers --Hooked up QA_MoCoAll to the cycle of playercontrllers. --Added instructions for motion tracked device management controls, if the platform supports. -QA_MoCoAll --Switched tracking state colors to tracking spheres, becuase the arrows need to be not rendered in game for some configuration. --Added duplicate motion controller component to pad and another duplicate with disabled low latency tracking. -QA_MoCoDualShock --removed gun controller from this playercontroller, its redundant to the one in QA_MoCoAll -QA_MoCoComponents --world scale from controllers mode added ctrl-w, this is a good way to torture test world scale. #jira UEVR-766 Change 3413801 on 2017/04/28 by Keli.Hlodversson #jira UE-40220 StereoLayer splash layers are hardcoded to 8 by 4.5 meters (16:9 aspect ratio) on OculusRift Change 3429305 on 2017/05/08 by Keli.Hlodversson SteamVR Layers don't honor the (absence of) LAYER_FLAG_QUAD_PRESERVE_TEX_RATIO flag Avoid potential divide by zero in the DefaultStereoLayers implementation of the same flag. #jira UE-42855 Change 3429362 on 2017/05/08 by Ryan.Vance Integrating 3416918 for #jira UE-44404 Change 3429426 on 2017/05/08 by Keli.Hlodversson Set up a Test case for Layers in QA Game so that we can determine differences between platforms #jira UEVR-741 Change 3430829 on 2017/05/09 by Keli.Hlodversson Implement World-locked layer position type on SteamVR #jira UE-42940 Also fixes LAYER_FLAG_TEX_CONTINUOUS_UPDATE flag on SteamVR Change 3432895 on 2017/05/10 by Nick.Whiting Skipping recording of analytics if there is no device connected on startup, to prevent false reports when Oculus / SteamVR runtimes are installed on the user's machine #jira UE-37166 Change 3435917 on 2017/05/11 by Jeff.Fisher UE-44941 LoadErrors produced in log when opening TM-MotionControllers -LoadErrors:Error: Error /Game/Blueprints/QA_MoCoAll : Can't find file for asset. /Game/NewTextureRenderTarget2D -Removed the component that was referencing that. It was temporary test content, not meant to be submitted. #jira UE-44941 Change 3435938 on 2017/05/11 by Ryan.Vance Incorrect VertexDeclarationRHI for the hidden area mask pso. Change 3437197 on 2017/05/12 by Keli.Hlodversson Remove a irrelevant comment. Change 3437221 on 2017/05/12 by Keli.Hlodversson ... and now actually include the change that was supposed to go in CL#3437197 Remove a irrelevant comment. Change 3439359 on 2017/05/15 by Keli.Hlodversson Implement NoAlpha flag in DefauiltStereoLayers. #jira UEVR-777 Change 3439422 on 2017/05/15 by Keli.Hlodversson Fixes for CL#3439359 after review: Implement NoAlpha flag in DefauiltStereoLayers. #jira UEVR-777 Change 3439599 on 2017/05/15 by Jeff.Fisher UE-44962 Motion controller input not registered in TM-MotionControllers package -Pre-exising blueprint assumed only one textrenderactor in the level, but I added two more. It was working or not depending on the order in which they were constructed. -Now searching up the correct actor by Tag. #jira UE-44962 Change 3441176 on 2017/05/16 by Mike.Beach Can now explicitly hide components from a specific player through the player controller. Change 3441242 on 2017/05/16 by Mike.Beach Making it so any component can invoke a preview viewport in the editor (want it to be extended by scene capture components). Change 3441571 on 2017/05/16 by Mike.Beach Fixing CIS shadowed variable name issue (fallout from CL 3441176). Change 3443223 on 2017/05/17 by Mike.Beach Fixing root of shadowed variable name warning (now only in UT, fallout from 3441176) - renaming new base class variable so it doesn't conflict with third parties either. #jira UE-45120 [CL 3443810 by Mike Beach in Main branch]
2017-05-17 12:45:38 -04:00
case GL_TEXTURE_EXTERNAL_OES:
case GL_TEXTURE_2D_MULTISAMPLE:
Copying //UE4/Release-Staging-4.15 to //UE4/Dev-Main (Source: //UE4/Release-4.15 @ 3267632) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3267632 on 2017/01/23 by Jurre.deBaare Marker syncs not working correctly in Blend Spaces #fix Ensure that SampleIndexWithMarkers is serialized #JIRA UE-40975 Change 3266915 on 2017/01/20 by Arciel.Rekman Fix Persona crash on Linux (UE-38790). - Static template variable got instantiated into multiple DSOs; probably exacerbated by --as-needed since this does not happen without it. #jira UE-38790 Change 3266785 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Make usage of CachedUsers thread safe. Duplicates CL 3245390 #jira UE-40649 Change 3266762 on 2017/01/20 by Rolando.Caloca UE4.15 - Fix for reallocating scene color #jira UE-40633 Change 3266642 on 2017/01/20 by Lina.Halper Downgraded Warning to Info #jira: UE-40643 Change 3266532 on 2017/01/20 by Jeff.Campeau Fix multiplatform Windows includes defeating the safety check in MinWindows.h #jira UE-40778 #rn Fixed a compile warning on Xbox One when XboxOneMinApi.h was included before MinWindows.h. Change 3266523 on 2017/01/20 by Marc.Audy Fix case where child actor could avoid getting begin play call #jira UE-40960 Change 3266474 on 2017/01/20 by Peter.Sauerbrei fix for using an API not yet available in iOS 8 #jira UE-40698 Change 3266339 on 2017/01/20 by Frank.Fella Sequencer - Fix UI issues with multi-track section rows. + Don't show an empty sub-track when there are no sections. + Expand parent tracks by default. #Jira UE-40487 Change 3266283 on 2017/01/20 by Jeff.Fisher UE-40683 GearVR projects rendering black -Fix from Remi Palandri #jira UE-40683 #review-3265824 @nick.whiting @ryan.vance Change 3266264 on 2017/01/20 by Lina.Halper Downgraded warning and changed log message #jira: UE-40643 Change 3266239 on 2017/01/20 by Peter.Sauerbrei fix for virtual joystick not showing up on some devices #jira UE-40472 Change 3266084 on 2017/01/20 by Mitchell.Wilson Resaving level to have correct starting camera position. Saved in wrong position after fixing a bug. #jira UE-40887 Change 3266077 on 2017/01/20 by Matt.Kuhlenschmidt Fixed "Wait for Movies to Complete" flag being reversed #jira UE-40943 Change 3266076 on 2017/01/20 by Mitchell.Wilson Updating occulsion bounds method on P_spark_burst_2 so it is not occluded when spawned inside of the coin mesh in BP_Overview example. Updating some post process examples due to changes made with Post Process settings. Film and Scene Color are temporary fixes and are intended to be fully updated in 4.16 #jira UE-40830 UE-40887 Change 3266034 on 2017/01/20 by Benn.Gallagher Fixed crash when reimporting APEX destructibles from apb/x files caused by not allowing the renderer to flush destroy resource commands before emptying an array. #jira UE-40911 Change 3266027 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Fix CreateSession and FindSession each permanently failing after first failure. Duplicates CL 3262175 #jira UE-39110 Change 3265906 on 2017/01/20 by Marcus.Wassmer Fix GPU particle AFR flickering and optimize injection transfers. Duplicate CL's 3260302, 3261252, 3265662, 3265678 #jira UE-40915 Change 3265873 on 2017/01/20 by Mark.Satterthwaite Duplicate CL #3262535: Make sure to set rasterizer state when rendering with a material in FSlateRHIRenderingPolicy::DrawElements #jira UE-40842 Change 3265857 on 2017/01/20 by Jamie.Dale Fixed font pathing issue that could happen in an out-of-source packaged build #jira UE-40855 Change 3265675 on 2017/01/20 by Matt.Kuhlenschmidt Move Dirt Mask Intensity to the correct post process category #jira UE-40851 Change 3265674 on 2017/01/20 by Rolando.Caloca UE4.15 - Revert #jira UE-40633 Change 3265647 on 2017/01/20 by Mitchell.Wilson Updating spawn location of the player pawn after unpossessing character in example 1.10. #jira UE-40870 Change 3265612 on 2017/01/20 by Alexis.Matte Prevent name clash warning when doing automation test #jira UE-40788 Change 3265553 on 2017/01/20 by Matthew.Griffin Fixed Shadow variable warning Change 3265366 on 2017/01/20 by Dmitriy.Dyomin Fixed: Vulkan crashes on Adreno Galaxy S7 #jira UE-40840 Change 3265294 on 2017/01/19 by Dmitriy.Dyomin Fixed typo which was causing assert on mobile #jira UE-40633 Change 3265111 on 2017/01/19 by Rolando.Caloca UE4.15 - Fix for scene color crash #jira UE-40633 Change 3264789 on 2017/01/19 by Josh.Adams - Redoing a fix from Dev-Plat for UI_BUILD_SHIPPING_EDITOR #jira UE-40798 Change 3264780 on 2017/01/19 by Rolando.Caloca UE4.15 - Add Morph compute GPU stat #jira UE-40891 Change 3264486 on 2017/01/19 by Mark.Satterthwaite Fix the crash on startup on Intel GPUs - this is due to Intel Metal forcing SM4 to avoid some drivers bugs in SM5 but I got the condition for initialisation in FMinimalDummyForwardLightingResources wrong so it's attempting to create a RWBuffer for SM4 which won't work. #jira UE-40863 Change 3264427 on 2017/01/19 by Rolando.Caloca UE4.15 - Track down crash #jira UE-40633 Change 3264393 on 2017/01/19 by Aaron.McLeran #jira UE-40850 Re-fixing UE-39650 again in 4.15. I hope this bug doesn't regress yet again! Change 3264364 on 2017/01/19 by Daniel.Wright In forward shading SceneCaptureSource modes Normal and BaseColor are replaced with SceneColorHDR as the GBuffer is not available. This is a silent failure for now as there's no good content error reporting mechanism for scene captures. #jira UE-39658 Change 3264284 on 2017/01/19 by Mark.Satterthwaite Duplicate CL #3264251: Modify some asserts in MetalRHI - technically using a store-action of ENoAction on Stencil buffers should make it invalid to restart a render-pass but on Mac it will work because ENoAction won't invalidate anything written. In future we need to use deferred store-actions in Metal so that we can "restart" passes while enforcing correct Load/Store actions. #jira UE-40803 Change 3264282 on 2017/01/19 by Benn.Gallagher CIS fix, bad expression that failed to compile Mac #jira UE-40716 Change 3264257 on 2017/01/19 by Mike.Beach Revising fix in UBlueprint::BeginCacheForCookedPlatformData(), saving off nativization data if the -nativizeAssets param is present (not just if it was enabled in packaging settings). #jira UE-40620 Change 3264242 on 2017/01/19 by Daniel.Wright [Copy] Sharing IndirectLightingCacheTextureSampler samplers #jira UE-40727 Change 3264191 on 2017/01/19 by Ori.Cohen Fix heightfield not working with traces underneath. #JIRA UE-39819 Change 3264139 on 2017/01/19 by Benn.Gallagher Removed collision between clothing in external skeletal mesh components, as clothing simulations could already be in flight and editing collisions while the simulation is running is not supported by APEX #jira UE-40716 Change 3264110 on 2017/01/19 by Max.Preussner MfMedia: Disabled plug-in on Windows 10, because it is currently broken #jira UE-406344 Change 3264108 on 2017/01/19 by Max.Preussner MfMedia: Fixed compile errors on Windows 10 #jira UE-40644 Change 3264099 on 2017/01/19 by Jamie.Dale Adding deprecation warning for 4.14 style PO export #jira UE-40592 Change 3264089 on 2017/01/19 by Matthew.Griffin Reworked DDC commandlet to make sure it actually calls BeginCacheForCookedPlatformData on assets Skip doing this for Engine content if -ProjectOnly is set as that takes a long time and isn't necessary for the way we use it #jira UE-39968 Change 3264065 on 2017/01/19 by James.Golding Fix ModifyCurve node not calling init/update in SourcePose #jira UE-40852 Change 3263729 on 2017/01/19 by Alexis.Matte Fix a bad condition when filling the material sorting array #jira UE-40814 Change 3263704 on 2017/01/19 by Jack.Porter Fix compile error in AndroidESDeferredOpenGL.cpp when " ES Deferred Shading Renderer" is enabled. #jira UE-40659 Change 3263627 on 2017/01/19 by Jack.Porter Fixed black textures when Vulkan is packaged for ETC1 #jira UE-40658 Change 3263554 on 2017/01/19 by Jack.Porter Fixes to HISMC LOD to use new screen size calculation. Solves issue where HISMC was always rendered at lowest LOD. #jira UE-38930 Change 3263535 on 2017/01/19 by Matthew.Griffin Removed unnecessary directories to always cook Problem was actually down to string asset references not being resolved in file set generation Change 3263534 on 2017/01/19 by Matthew.Griffin Added -SkipPublish parameter to BuildLauncherSample command so that we don't chunk and post preflights Change 3263267 on 2017/01/18 by Dan.Oconnor Fix for editing of TMap/TSet variables in structure editor, async tasks, and when using UK2Node_CommutativeAssociativeBinaryOperator. #jira UE-40428 Change 3263219 on 2017/01/18 by Dan.Oconnor Fix copy paste error found by UDN user Craig.Wright that could result in fatal bytecode execution #jira UE-19425 Change 3262980 on 2017/01/18 by Maciej.Mroz #jira UE-40394, UE-40395, UE-40426, UE-40484, UE-40770 Integrated cl 3262851, 3261613, 3260908 from Dev-Blueprint Change 3262908 on 2017/01/18 by Ori.Cohen When refreshing physics assets, don't do so on components that have no bodies. #JIRA UE-40764 Change 3262709 on 2017/01/18 by Matt.Kuhlenschmidt Fix a crash if a background blur widget ends up being negative or zero sized #jira UE-40820 Change 3262606 on 2017/01/18 by Marc.Audy Don't bother the user with force feedback based on where the unpossessed pawn is standing in the world while in simulate mode #jira UE-40785 Change 3262416 on 2017/01/18 by Marc.Audy Reenable audio threading #jira UE-00000 Change 3262125 on 2017/01/18 by Chris.Wood Fixed unnecessary truncate in SMenuAnchor::Tick that caused menu placement to wobble [UE-40293] - Dropdown selection box jitters when mouse is moved over top of it on Mac #jira UE-40293 Change 3262103 on 2017/01/18 by Jamie.Dale Merging some cooker fixes CL# 3262089 - Fixing RedirectCollector issues with projects outside the UE4 directory CL# 3262091 - Guarding against potentially invalid call to FString::Mid CL# 3262094 - Cook on the fly builds now resolve string asset references #jira UE-40790 Change 3262082 on 2017/01/18 by Chris.Bunner Accumulate used particle materials from final mesh material module, not first. #jira UE-39953 Change 3261996 on 2017/01/18 by Matthew.Griffin Allow Samples to be built in pre-flights if you are specifying an engine version Change 3261995 on 2017/01/18 by Matthew.Griffin Resolve string asset references after loading packages to ensure that we find all required files Change 3261934 on 2017/01/18 by Allan.Bentham Bump shader version to force changes in 3260307 to occur. #jira UE-39701 Change 3261842 on 2017/01/18 by Graeme.Thornton Manual copy of CL 3253580 from Dev-Core Added some validation of the class index in exportmap entries #jira UE-37873 Change 3261017 on 2017/01/17 by Mitchell.Wilson Resaving all levels to resolve short form string asset reference warnings. #jira UE-40732 Change 3260918 on 2017/01/17 by Andrew.Rodham Sequencer: Request unloaded levels to be loaded when being made visible through sequencer #jira UE-40082 Change 3260909 on 2017/01/17 by Ben.Marsh Fix error running "Clean" in installed build. #jira UE-40751 Change 3260757 on 2017/01/17 by Jeff.Fisher UE-39654 Crash when launching Google VR project -Via SwitchGameWindowToUseGameViewport we get an early ResizeViewport which does an early Draw. This calls GetStereoProjectionMatrix before the game has ticked and fetched the device info we use to build that matrix. -In this change we make the call to setup that information in the GoogleVRHMD constructor, to ensure it is done before anything tries to use it. -I also added some asserts. #jira UE-39654 #review-3260644 Change 3260637 on 2017/01/17 by Alexis.Matte Fix crash when importing skeletal mesh containing a texture or a material using the same name. #jira UE-40538 Change 3260630 on 2017/01/17 by Marc.Audy When installing a feature pack maintain the include of the template so that any properties inside it are not lost by replacing it with the project's PCH include Update all C++ feature packs to include the original project .h in the files that are copied in to the new project #jira UE-40730 Change 3260600 on 2017/01/17 by matt.barnes Test content for sequencer event tracks #jira UE-29618 Change 3260593 on 2017/01/17 by Mieszko.Zielinski Made FSupportedAreaData export as part of engine API #UE4 #jira UE-40739 Change 3260538 on 2017/01/17 by Marc.Audy Always display axes in debug info, but show -- for value when we don't yet know the ranges #jira UE-40700 Change 3260422 on 2017/01/17 by Marc.Audy Expose level streaming incremental unregister component cvars in the engine streaming section of the project settings #jira UE-10109 Change 3260392 on 2017/01/17 by Ben.Woodhouse Duplicated from CL 3260107: Fix FMonitoredProcess to prevent infinite loop in -nothreading mode #jira UE-40717 Change 3260358 on 2017/01/17 by Chris.Bunner Only validate tonemapper LUT input if actually hooked up. #jira UE-40467 Change 3260327 on 2017/01/17 by Frank.Fella PlatformMediaSource - Fix Validate to check all specified media sources, and change GetURL to get the url for the current platform when running uncooked. #jira UE-40709 Change 3260307 on 2017/01/17 by Allan.Bentham Restore metal compiler's shader source serialization code when the shader is to be compiled at runtime. #jira UE-39701 Change 3260276 on 2017/01/17 by Alex.Delesky #jira UE-40276 - Fixing an issue where a Standalone game launched from the editor cannot toggle fullscreen mode. Change 3260274 on 2017/01/17 by Chris.Wood Added check for null World ptr in AActor::PostEditChangeProperty to fix crash when pasting temporary Actors [UE-40492] - Crash after ejecting from PIE session and selecting a component in the details panel #jira UE-40492 Change 3260230 on 2017/01/17 by Ben.Woodhouse Duplicated from dev-rendering@3232283 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 3260096 on 2017/01/17 by Thomas.Sarkanen Fixed crash when rendering out a level sequence with layered animations When a level contained sequences with layered animations that *werent* taking part in the render (i.e. they were not part of the current master sequence) then their instances were initialized but not ticked. When their components then got a call to evaluate their bone transforms, the cached blends were in an uninitialized state. #jira UE-40654 - Render Movie using separate process crashes capture process Change 3259875 on 2017/01/17 by Dmitriy.Dyomin Fixed: SunTemple is washed out in one color on some Android devices #jira UE-40689 Change 3259011 on 2017/01/16 by Max.Chen Matinee to Level Sequence: Make RegisterTrackConverters pure virtual #jira UE-37328 Change 3258992 on 2017/01/16 by Rolando.Caloca UE4.15 - Integrate fix for outlines (3258807) #jira UE-40690 Change 3258949 on 2017/01/16 by mason.seay Disabled TranslatedMass test #jira UE-29618 Change 3258860 on 2017/01/16 by Max.Preussner Media: Prevent loading of media plug-ins in console apps, such as game servers (OR-34819) #jira OR-34819 Change 3258846 on 2017/01/16 by Max.Preussner MfMedia: Fixed incorrect tracks being played in multi-track media sources (UE-39703) #jira UE-39703 Change 3258813 on 2017/01/16 by Benn.Gallagher Added error on import for APEX clothing files that either have no submeshes or have no submeshes with simulated vertices. #jira UE-40614 Change 3258771 on 2017/01/16 by James.Golding Skip fatal warning in UBodySetup::Serialize if duplicating (e.g. spawning component via SCS with a BodySetup in its template) #jira UE-40418 Change 3258747 on 2017/01/16 by Max.Chen Sequencer: AddUnique SequencerActorTag to prevent multiple tags being added when spawning/despawning. #jira UE-40665 Change 3258630 on 2017/01/16 by Jurre.deBaare CIS IfDef issue fix #JIRA UE-1234 Change 3258541 on 2017/01/16 by Phillip.Kavan [UE-40131] Revised fix that will work for "inclusive" BP nativization with data-only BPs. change summary: - revised code in UBlueprint::BeginCacheForCookedPlatformData() to also support the "inclusive" nativization method #jira UE-40131 Change 3258532 on 2017/01/16 by Max.Chen Sequencer: Fix max row index off by one error . This was always incorrect, but it was masked by the fact that FixRowIndices() was called on the track when the UI gets built. That function was removed from the node layer in CL #3252753 and therefore exposed this bug. #jira UE-40642 Change 3258505 on 2017/01/16 by Marc.Audy Improve messaging when installing vehicle and vehicle adv C++ feature packs #jira UE-40647 Change 3258478 on 2017/01/16 by Matt.Kuhlenschmidt PR #3131: UE-40567: Added nullcheck to FSplinePointDetails (Contributed by projectgheist) #jira UE-40567 Change 3258457 on 2017/01/16 by Jurre.deBaare SpeedTree Billboards rendering with Incorrect Material #fix Ensure that we add a section info entry for the billboard models/lods during SpeedTree importing #jira UE-39677 Change 3258442 on 2017/01/16 by Alexis.Matte Skeletalmesh import, make sure we increment the lod index when animation is not imported #jira UE-40640 Change 3258431 on 2017/01/16 by Jurre.deBaare Back out changelist 3258392 #fix issue was already resolved #jira UE-1234 Change 3258392 on 2017/01/16 by Jurre.deBaare Fix for non-unity CIS #JIRA UE-1234 Change 3258358 on 2017/01/16 by Matthew.Griffin Prevent warning from being shown when XMPP module is not built #jira UE-40616 (I guess LoadModule could be changed to LoadModuleChecked now if they do exist) Change 3258144 on 2017/01/15 by Marc.Audy Fix non-unity CIS errors #jira UE-00000 Change 3258141 on 2017/01/15 by zachary.wilson Adding testing content for Distance Field Indirect Shadows #jira UE-29618 Change 3258049 on 2017/01/14 by Nick.Shin UFE sent incorrect header data on missing file also, it seems that UFE was written to expect clients to close the connection -- (this should be closed manually -- which will flush the data and then close out the socket -- but, since this is a developer tool... leaving this as-is) first, 404 was not sending the required double newline after headers second, since connection are not closed manually (server side) send a dummy payload with content-length data #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3257984 on 2017/01/14 by Aaron.McLeran Attempting another fix for static analysis warning in CIS #jira UE-40645 Change 3257904 on 2017/01/14 by Aaron.McLeran Resolving static analysis warnings reported by CIS #jira UE-40645 Change 3257883 on 2017/01/14 by Aaron.McLeran Fixing build warning with CL 3257826 #jira UE-40645 Change 3257826 on 2017/01/13 by Aaron.McLeran Integrating fixes from Dev-Framework and Odin to Release-415 #jira UE-40645 Change 3257654 on 2017/01/13 by Marc.Audy Until plugins can drive their own dependencies vehicle and vehicle adv feature packs will not compile automatically and will pop up a message log informing the user of the actions they need to manually take. #jira UE-40466 Change 3257608 on 2017/01/13 by John.Pollard PC: Assertion Fail with UPackageMapClient::AddNetFieldExportGroup() viewing replays #jira OR-34522 Change 3257489 on 2017/01/13 by Mitchell.Wilson Removing preview mesh from multiple materials to resolve CIS warnings. #jira UE-40628 Change 3257485 on 2017/01/13 by Chris.Babcock Don't initialize FMinimalDummyForwardLightingResources for unneeded feature levels (below SM4) #jira UE-40602 #ue4 #android Change 3257444 on 2017/01/13 by Matt.Barnes Updating test assets for UEQATC-2967 #jira UE-29618 Change 3257324 on 2017/01/13 by Arciel.Rekman Linux: Update runtime CEF lib as well (UE-401413). - Followup to CL 3256081. #jira UE-40413 (Merging CL 3257241 from Dev-Platform to Release-4.15) Change 3257140 on 2017/01/13 by Lina.Halper Fix crash with deleting all poses #jira: UE-40537 Change 3257066 on 2017/01/13 by Jurre.deBaare CIS fix for game builds #jira UE-1234 Change 3257056 on 2017/01/13 by Ben.Zeigler #jira UE-40318 Fix crash in streamablemanager where callbacks would get called on a deleted manager. This is being rewritten in 4.16, so do a quick fix for 4.15 to avoid the crash Change 3256839 on 2017/01/13 by Jurre.deBaare Added conversion of HLOD transition screen size to new transition screen area values #fix During serialization patch up the values of transition screen size within the hierarchical lod setups #misc Updated the default value to a screen size to screen area equivalent #JIRA UE-40518 Change 3256761 on 2017/01/13 by Mieszko.Zielinski Fixed EQS debug rendering not clearing previously displayed labels if new request has no labels #UE4 #jira UE-40589 Change 3256177 on 2017/01/12 by Josh.Adams - Moved the MfMedia plugin outside of XboxOne directory, because it's a Windows plugin as well (that happens to also work on XboxOne - all public APIs) #jira UE-40391 Change 3256131 on 2017/01/12 by Jamie.Dale Fixing log spam when trying to load an empty font data #jira UE-40555 Change 3256081 on 2017/01/12 by Arciel.Rekman Fixed CEF compatibility problems on Ubuntu 14.04 (UE-40413). - Also deleted Debug version of it. - Change by yaakuro. #jira UE-40413 (Edigrating CL 3256065 from Dev-Platform to Release-4.15) Change 3256046 on 2017/01/12 by Jon.Nabozny Use PxConvexFlag::eSHIFT_VERTICES when cooking meshes to fix baked in transforms. #jira UE-39212 Change 3255939 on 2017/01/12 by mason.seay Rebuilt lighting #jira UE-29618 Change 3255912 on 2017/01/12 by Olaf.Piesche Replicating fix from 3246828 for #jira UE-39249 Change 3255909 on 2017/01/12 by Rolando.Caloca UE4.15 - Support for choosing discrete AMD GPU #jira UE-40546 Change 3255835 on 2017/01/12 by Martin.Wilson Fix newly added virtual bones not being on screen. #jira UE-40516 Change 3255774 on 2017/01/12 by Mark.Satterthwaite Merging 3251926 for Richard.Wallis: #jira UE-38828 Crash after Enabling Forward Shading on Mac and Creating/Editing Materials. Using TGlobalResource to avoid constant resource allocation. Prev fix (in CL 3239454) caused a crash in D3D11 with zero sized resource views. Change 3255771 on 2017/01/12 by Alexis.Matte Fix a crash when re-importing asset with no material #jira UE-40510 Change 3255746 on 2017/01/12 by Jon.Nabozny Change _DEBUG to PX_DEBUG in ConvexHullLib.cpp #jira UE-0000 Change 3255659 on 2017/01/12 by Jon.Nabozny Enable Shifting Vertices during Convex Hull cooking to prevent precision issues. (Copied CL-3249100 from Dev-Phyics-Upgrade to support new flag) #jira UE-39212 Change 3255617 on 2017/01/12 by Ori.Cohen Fix crash when computing mass for an async object. Using passed in rigid body instead of assuming SyncRigidActor #JIRA UE-40458 Change 3255536 on 2017/01/12 by Jamie.Dale Fixed crash when using an object picker against the 'Object' type This also optimizes some filter code to avoid filtering when it would be pointless (and just slows things down). #jira UE-40408 Change 3255451 on 2017/01/12 by Chris.Wood Fixed read only text color in SCommentBubble [UE-40384] - Reference Viewer comment text is difficult to read Also changed DetermineForegroundColor() method in EditableTextBox classes to fallback on ForegroundColorOverride if it is set and ReadOnlyForegroundColorOverride isn't set. #jira UE-40384 Change 3255448 on 2017/01/12 by Chris.Wood Removed blinking cursor/caret on read only editable text layouts. [UE-40502] - Flashing cursor/caret showing in read-only editable text layouts #jira UE-40502 Change 3255445 on 2017/01/12 by Marc.Audy Create the dynamic level streaming persistent object correctly outered to the World rather than the transient package to avoid GetWorld() crashing #jira UE-00000 Change 3255441 on 2017/01/12 by Jon.Nabozny Regenerate collision for the basic Cube mesh to fix resting issues and invalid verts. #jira UE-40478 Change 3255407 on 2017/01/12 by Yannick.Lange VREditor: - Fix: Assertion Failed crash after pressing F8 in PIE while Foliage Mode was selected - Fix: Assertion Failed crash after pressing F8 in PIE while Paint Mode was selected - Added extra checks for other possible future cases #jira UE-39786 UE-39789 Change 3255393 on 2017/01/12 by Chris.Bunner Duplicating CL 3255244: Removed test variable from MaterialExpressionVectorParameter. #jira UE-40517 Change 3255375 on 2017/01/12 by Steve.Robb CIS fix. #jira UE-39556 Change 3255334 on 2017/01/12 by samuel.proctor Corrected QA Container asset to remove pin warning. #jira UE-29618 Change 3255319 on 2017/01/12 by james.cobbett Fixing motion blur issue with test content for Pose Snapshots. #jira UE-29618 Change 3255247 on 2017/01/12 by Nick.Darnell Slate - Slate's Tab Manager is now a bit smarter about allowing Focus/BringToFront attention grabbing methods. In order to make the UI less jumpy it was restricted to only allowing alerts and bring to front to be triggered if you were on the window, or child window of the active application window. That can negatively impact cases where a user takes an action (clicks a link ro button saying open/goto this tab), that is on another window. To work around this limitation, the Tab Manager will also permit the action if Slate is currently processing user input, implying that the action being taken is in direct response to the user pressing a button and interacting with the UI. #jira UE-40313 Change 3255236 on 2017/01/12 by Phillip.Kavan [UE-40131] Non-native child BPs can now properly override a nativized parent BP's components in a cooked build with exclusive Blueprint class nativiation. - Mirrored from //UE4/Dev-Blueprints (CL# 3254024,3254391) #jira UE-40131 Change 3255216 on 2017/01/12 by Rolando.Caloca UE4.15 - Fix compile issue on Vulkan 1.0.37.0 or newer #jira UE-40506 Change 3255206 on 2017/01/12 by Steve.Robb Use outer walking IsA() implementation in editor to get around reinstancing and hot reload issues. #fyi mike.beach #jira UE-39556 Change 3255195 on 2017/01/12 by mason.seay Adjusted slope to fix platform discrepancy #jira UE-29618 Change 3255086 on 2017/01/12 by Jack.Porter Fix XboxOneShaderCompiler.cpp non-unity compilation #jira None Change 3255085 on 2017/01/12 by Jack.Porter Missing HTML5 changes from CL 3254907 #jira UE-39111 Change 3255031 on 2017/01/12 by Jack.Porter More iOS GoogleVR changes missing from CL 3254907 #jira UE-39111 Change 3254991 on 2017/01/12 by Jack.Porter Missing file from CL 3254907 #jira UE-39111 Change 3254907 on 2017/01/11 by Jack.Porter Android MSAA changes - use r.MobileMSAA cvar, support more than 2x, fix issues where targets other than scene color were created with MSAA #jira UE-39111 #jira UE-35849 #jira UEMOB-35 Change 3254810 on 2017/01/11 by Arciel.Rekman Linux: fix for crash on exit (UE-40488). #jira UE-40488 Change 3254617 on 2017/01/11 by Peter.Sauerbrei remake the fix for missing PhysXVehicle library in binary for IOS and TVOS #jira UE-39349 Change 3254489 on 2017/01/11 by mason.seay Other minor improvements to the map #jira UE-29618 Change 3254477 on 2017/01/11 by mason.seay Map tweaks to prevent the vehicle from getting stuck #jira UE-29618 Change 3254431 on 2017/01/11 by Mitchell.Wilson Rebuilt lighting on all StarterContent levels. #jira UE-40468 Change 3254333 on 2017/01/11 by mason.seay Adjusted lightmap on mesh to remove odd rendering splotches #jira UE-29618 Change 3254131 on 2017/01/11 by Rolando.Caloca UE4.15 - Missing dumped shaders #jira UE-40465 Change 3254126 on 2017/01/11 by Jeff.Fisher UE-40422 Vive Motion Controllers unable to Play Haptic Effect -Removed an unnecessary remapping of controllerindex to deviceid, they are the same now. #jira UE-40422 #review-3254084 Change 3254046 on 2017/01/11 by Mark.Satterthwaite Merging 3233811: 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. #jira UE-39935 Change 3254021 on 2017/01/11 by james.cobbett Test content for Pose Snapshot testing #jira UE-29618 Change 3253993 on 2017/01/11 by Alexis.Matte Fix the morph target import #jira UE-40424 Change 3253948 on 2017/01/11 by mason.seay Fixed Level BP logic that was causing Access None error #jira UE-29618 Change 3253884 on 2017/01/11 by mason.seay Updated mesh colors on map. Disabled motion blur #jira UE-29618 Change 3253862 on 2017/01/11 by mason.seay Disabled Always Show Mobile Input (turned on by accident) #jira UE-29618 Change 3253859 on 2017/01/11 by Mark.Satterthwaite Merging 3252866: Fix Metal shader pipeline hash collisions caused by deferring MTLFunction construction until PrepareToDraw so that we may use Function-Constants to specialise the shader source without generating additional permutations. This is required to generate proper tessellation shaders which are specialised against the index-buffer usage & type (none, uint16, uint32). While we're here amend the hash functions to make better use of the existing hash functions to improve the distribution and hopefully reduce the possibility of collisions in future. #jira UE-40357 Change 3253854 on 2017/01/11 by Mark.Satterthwaite Merging 3252859: Fix the calculation of Metal tessellation struct alignment and size to use largest member size, so that we don't assert in debug or cause out-of-bounds access in development/shipping. #jira UE-40410 Change 3253853 on 2017/01/11 by Mark.Satterthwaite Merging 3237394: 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 3253852 on 2017/01/11 by Mark.Satterthwaite Merging 3236850: Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3253834 on 2017/01/11 by mason.seay Updated mobile input textures to be power of two #jira UE-29618 Change 3253807 on 2017/01/11 by Mark.Satterthwaite Merging 3232641 & 3236788 & 3233854 & 3249742 from Dev-Rendering: 3232641: - 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. 3236788: 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. 3233854: More information about texture type validation errors in Metal. 3249742: 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. #jira UE-40200 Change 3253636 on 2017/01/11 by Chris.Wood Improved tracking of runtime and debugger attachment for analytics purposes. [UE-39780] - Change IsDebugger to WasDebuggerPresent in all crash/AS analytics [UE-39777] - Update MTBF IsDebugger state for every heartbeat [UE-39778] - UnrealWatchdog to send WasDebuggerPresent state for app if set [UE-39779] - UnrealWatchdog to send total run time of process Debugger state was previously read once at startup or once at the time of an event. Debugger is now checked during the heartbeat and doesn't reset flag when detached so we know if a session was ever debugged. Also reporting total run time in UnrealWatchdog. Watchdog still doesn't run when debugging but and will never show popups to a debugger user even when forced on with -forcewatchdog. #jira UE-39780, UE-39777, UE-39778, UE-39779 Change 3253281 on 2017/01/10 by Dan.Oconnor Typo fix caused parameter in local struct definition to shadow the local #jira UE-40027 Change 3253231 on 2017/01/10 by Dan.Oconnor Mirror of 3253220 These pins should infer together #jira UE-40427 Change 3253125 on 2017/01/10 by Uriel.Doyon Brought back CL 3242117 and 3238685, which got lost on the way: - Fix for possiblel check fail when changin mobility of actors. - Fix for possible check fail when processing streaming data. #jira UE-39996 Change 3252936 on 2017/01/10 by Marc.Audy CopyPropertiesForUnrelatedObjects needs to consider path not just name of subobjects when matching them up to copy properties and update references Ensure that a reinstanced child actor component ends up pointing at the correct child actor template #jira UE-40027 Change 3252886 on 2017/01/10 by Lina.Halper Fix for invalid AnimCurves when curve is added while running #jira: UE-39826 Change 3252753 on 2017/01/10 by Frank.Fella Sequencer - Change track rows to use separate track nodes in the display node tree, fixes key edit issues on animation and audio tracks. #jira UE-39836 Change 3252640 on 2017/01/10 by Lukasz.Furman fixed NavCollision losing user settings after any property change copy of 3252628 #jira UE-40388 Change 3252614 on 2017/01/10 by Daniel.Wright UStaticMeshComponent::InvalidateLightingCacheDetailed uses MarkRenderStateDirty. Massively speeds up duplication of HISMC with many instances (10+ minutes -> seconds), as InvalidateLightingCacheDetailed gets called for every instance. #jira UE-40406 Change 3252609 on 2017/01/10 by mason.seay Updated map with text actors for more visual clarity #jira UE-29618 Change 3252477 on 2017/01/10 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios #jira UE-39852 Change 3252451 on 2017/01/10 by Daniel.Wright Garbage collection calls UWorld>SendAllEndOfFrameUpdates() on all loaded worlds first so that deferred recreate render states happen before any UObjects are deleted * Fixes rendering thread crashes in the order of events of 1) SetMaterial 2) GC 3) Rendering command that dereferences the UMaterial #jira UE-30089 Change 3252418 on 2017/01/10 by Ben.Zeigler #jira UE-40390 Fix crash saving blueprint with an inherited DataTable/CurveTable reference. Delta serialization meant that the necessary name wasn't in the name table, so adding it manually now. Change 3252410 on 2017/01/10 by Max.Chen Sequencer : Filter sections on select in range Copy from Dev-Sequencer #jira UE-37854 Change 3252385 on 2017/01/10 by Max.Chen Sequencer: Update auto tangents when setting key time. This fixes a bug where dragging keys with auto tangents doesn't recompute tangents properly. #jira UE-39923 Change 3252360 on 2017/01/10 by Allan.Bentham Remove incorrect assert for iOS. #jira UE-40385 Change 3252297 on 2017/01/10 by mason.seay Test assets for suspending cloth simulation #jira UE-29618 Change 3252125 on 2017/01/10 by Mieszko.Zielinski Fallout fix after removal of BlackboardKeyUtils::CalculateComparisonResult declaration from the AIModule #UE4 #jira UE-40099 Change 3251987 on 2017/01/10 by Allan.Bentham Fix HQ DoF #jira UE-35548 Change 3251856 on 2017/01/10 by Jack.Porter Fixed Get Instances Overlapping Box blueprint function due to issue with FBox constructor. Added MakeBox and MakeBox2D kismet native functions Fixed box overlap test ignoring instance scale #jira UE-34409 Change 3251519 on 2017/01/09 by Daniel.Wright [Copy] Fixed GLandscapeLayerUsageMaterial getting GC'ed #jira UE-40055 Change 3251146 on 2017/01/09 by Lina.Halper Fix on stable track data carrying over to pose asset - decided to clean up track data in anim sequence since we don't really need that data anymore #jira: UE-40351 #code review: Martin.Wilson Change 3251056 on 2017/01/09 by Lina.Halper fixed crash when pose node contains stale data when updating source. #jira: UE-40258 #code review; Thomas.Sarkanen Change 3251035 on 2017/01/09 by Mitchell.Wilson Removed preview mesh in M_GodRay to resolve CIS warning. Relinked textures used in two materials to resolve CIS warnings. #jira UE-40350 Change 3250959 on 2017/01/09 by Mitchell.Wilson Updating master sequence playback end time so the final audio track can be heard. Updating multiple shots to resolve issues with audio not playing back properly. #jira UE-40321 UE-40335 Change 3250896 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed level visibility not working in PIE #jira UE-40082 Change 3250895 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed evaluation of overlapping audio and skeletal aninmation sections - Audio and skeletal animation sections now continue to support legacy evaluation order. Overlapping sections of the same priority on the same row will be filtered out such that only the section with the latest start time will be evaluated. #jira UE-40320 Change 3250830 on 2017/01/09 by Ben.Woodhouse Duplicated from //ue4/Release-4.14 CL 3238182 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. #jira UE-38818 Change 3250790 on 2017/01/09 by Lauren.Ridge Fixing backspace on VR Editor numberpad menu. #jira UE-39770 Change 3250681 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@3249296: 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 3250680 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@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 #jira UE-39949 Change 3250609 on 2017/01/09 by Steve.Robb Maximum number of stats-using threads increased to 512. #jira UE-38153 Change 3250604 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed incorrect seed being used when generating new animation type IDs for object properties #jira UE-40327 Change 3250589 on 2017/01/09 by Matthew.Griffin Changed publish symbols node to use runtime dependencies instead of manually including the whole PhysX folder Avoids unused configs and VS2013 files #jira UE-39171 Change 3250578 on 2017/01/09 by Matthew.Griffin Removed art tools from released build now that they are available separately on the Marketplace Change 3250282 on 2017/01/07 by Mieszko.Zielinski Fixed UNavigationSystem::bNavigationAutoUpdateEnabled getting ignored by recent addition to related condition in UNavigationSystem #UE4 Reported by UT team. Replication of a fix from Dev-Framework that didn't make it to 4.15 stream #jira UE-40324 Change 3250276 on 2017/01/07 by Mieszko.Zielinski Fixed not being able to add elements to UAIPerceptionStimuliSourceComponent.RegisterAsSourceForSenses for instances manually placed on the map #UE4 #jira UE-31711 Change 3250219 on 2017/01/07 by Mieszko.Zielinski Extended comment to AISenseConfig_Sight::PeripheralVisionAngleDegrees to make it clear how it works #UE4 #jira UE-31731 Change 3250147 on 2017/01/07 by Andrew.Rodham Added missing includes #jira UE-40019 Change 3250096 on 2017/01/06 by Nick.Shin refetch on timed out GET/POST requests correction to: UE_MakeHTTPDataRequest #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3249963 on 2017/01/06 by Mieszko.Zielinski removed unused and undefined BlackboardKeyUtils::CalculateComparisonResult #UE4 #jira UE-40099 Change 3249829 on 2017/01/06 by Alexis.Matte turn on the material name clash feature for the content browser importer. #jira UE-40298 Change 3249791 on 2017/01/06 by andrew.porter QAGame: Added level blueprint logic to QA-Sequencer that lets tester override sequence bindings #jira UE-29618 Change 3249755 on 2017/01/06 by Jamie.Dale Some fixes for object reference detection and notification when deleting assets #jira UE-40121 Change 3249727 on 2017/01/06 by James.Golding #jira UE-40242 Change 3249707 on 2017/01/06 by Mitchell.Wilson Removing preview mesh with incorrect path from materials to resolve warnings in CIS. #jira UE-40311 Change 3249543 on 2017/01/06 by Michael.Dupuis #jira UE-40299: validate if UISettings is valid Change 3249506 on 2017/01/06 by Alexis.Matte Make sure we use the correct LodIndex when importing a new LOD in case a previous LOD import fail. #jira UE-40240 Change 3249477 on 2017/01/06 by Ori.Cohen Fix incorrect warning when moving kinematic objects during simulation. #JIRA UE-40290 Change 3249472 on 2017/01/06 by Andrew.Rodham Sequencer: Undo now works as expected when editing the properties of a key #jira UE-40019 Change 3249390 on 2017/01/06 by Mitchell.Wilson Removing preview meshes with improper path from materials to resolve CIS warnings in landscape mountains sample. #jira UE-40300 Change 3249317 on 2017/01/06 by Alexis.Matte Fix a crash when loading skeletalmesh with no section #jira UE-40249 Change 3249294 on 2017/01/06 by Mitchell.Wilson Updated defaultengine.ini for Match 3 to resolve warnings in CIS. ServerDefaultMap and TransitionMap had invalid paths. #jira UE-40295 Change 3249213 on 2017/01/06 by Chris.Bunner Fixed up logic for windowed/fullscreen output display selection when working with HDR. Now selects the most appropriate display if HDR enabled, else current monitor window is on. FullscreenDisplay commandline functions regardless of HDR support. #jira OR-33525, OR-33536, OR-33540, OR-33520 Change 3249135 on 2017/01/06 by Martin.Wilson Fix root motion issues on additive animations. - Fix scale issue on resetting root bone - Fix loss of root motion when animation is additive. #jira UE-40232 Change 3248522 on 2017/01/05 by Alexis.Matte Fix a crash when reimporting morph target. Also fix a crash when initiating ColorVertexBuffer with NULL value #jira UE-40201 Change 3248271 on 2017/01/05 by Andrew.Rodham Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence #jira UE-40234 Change 3248092 on 2017/01/05 by Ben.Marsh UBT: Remove the [Obsolete] attribute from methods in TargetRules; the [ObsoleteOverride] attribute gives a much better (and more concise) warning with specific instructions on how to resolve it. Change 3248091 on 2017/01/05 by Marcus.Wassmer Tick renderthreadtickables in -onethread to avoid leaks. #jira UE-40248 Change 3248063 on 2017/01/05 by Marc.Audy Route FAudioDevice::StopAllSounds to the audio thread if called on the game thread #jira UE-40243 Change 3247995 on 2017/01/05 by Maciej.Mroz NativizationSummary object is always present. manually merged cl#3247985 from Dev-Blueprints #jira UE-40035 Change 3247873 on 2017/01/05 by Chad.Garyet Adding "Generate QA Labels" buildgraph node and automation script. Port of createNewLabel and createMinimumLabel python scripts into UAT #jira UEB-725 Change 3247855 on 2017/01/05 by Nick.Shin refetch on timed out GET/POST requests #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3247737 on 2017/01/05 by Marc.Audy static mesh component instance data now correclty inherits from pritive component instance data instead of skipping it and inheriting directly from scene component instance data #jira UE-40053 Change 3247723 on 2017/01/05 by mason.seay Asset for suspend cloth bug #jira UE-29618 Change 3247708 on 2017/01/05 by Mitchell.Wilson Updating project settings to disable dbuffer decals to resolve rendering issues in Showdown while using -game -vr #jira UE-40195 Change 3247652 on 2017/01/05 by Martin.Wilson Fixes for animation notifies window -Fix notify not being removed from skeleton -Fix crash where editor is not refreshed after notify removal #jira UE-40154 Change 3247638 on 2017/01/05 by mason.seay Test assets for cloth suspension #jira UE-29618 Change 3247630 on 2017/01/05 by Alexis.Matte Prevent crash when the import fail and we have no staticmesh created #jira UE-40024 Change 3247556 on 2017/01/05 by Ben.Marsh Fix non-unity compile error. Change 3247547 on 2017/01/05 by Jurre.deBaare Crash while using the Delete Button in the HLOD Outliner while a Generated Proxy Mesh is opened in the Static Mesh Editor #fix Unify path for both delete cluster options in the outliner UI #jira UE-40066 Change 3247539 on 2017/01/05 by Benn.Gallagher Fixed serialization crash for simplified skeletal meshes leading to corrupted assets that crash on load after skin weight buffer changes. #jira UE-40199 Change 3247515 on 2017/01/05 by Allan.Bentham Fix inverted planar reflections when mobileLDR Fixed incorrect gamma 2 planar reflection rendering when mobileLDR #jira UE-32868 Change 3247502 on 2017/01/05 by Dmitriy.Dyomin Fixed: Single digit frame rate when sculpting landscape foliage. #jira UE-39532 Change 3247232 on 2017/01/04 by Ben.Marsh Remove private include from public header. Prevents compiling samples from installed build of the engine without private headers. #jira UE-40135, UE-40137, UE-40139, UE-40140, UE-40141, UE-40142, UE-40143, UE-40144 Change 3247002 on 2017/01/04 by Chris.Babcock Changed Vulkan hitchy pipeline log message verbosity #jira UE-38354 #ue4 #android #dontbackcopy Change 3246927 on 2017/01/04 by matt.barnes Updating QAGame content to facilitate UEQATC-2969 #jira UE-29618 Change 3246894 on 2017/01/04 by Mike.Beach Mirroring CL 3245322 from Dev-BP Fixed a crash when implementing a native interface in a BP #jira UE-40155, UE-40203 Change 3246830 on 2017/01/04 by Chris.Bunner Allow AllocGBuffer call when in simple-forward so dummy uniform buffer creation can occur. #jira UE-39756 Change 3246816 on 2017/01/04 by Jon.Nabozny Fix Anim Notifies Tab not opening in Animation Editor. #JIRA UE-40134 Change 3246804 on 2017/01/04 by Ori.Cohen Touch engine file to trigger re-link. #JIRA UE-40156 Change 3246709 on 2017/01/04 by mason.seay Updated map #jira UE-29618 Change 3246606 on 2017/01/04 by Ori.Cohen Fix for sweeps taking too long time (OR-32839). - Exhaustive investigation uncovered apparent numerical problems in this code (when compiling with clang 3.9.x with -ffast-math). - Current solution can result in overshoot for certain trace extents, but they are not expected to be a practical problem in Unreal. - NVidia is aware and will investigate a better solution. #tests Compiled Linux server with the changed PhysX and continuously ran bot matches for about a day. #JIRA UE-40156 Change 3246571 on 2017/01/04 by Marc.Audy Look at the body instance's desired collision enabled value rather than the primitive component's current collision enabled value when determining whether physics state should be created #jira UE-39994 Change 3246527 on 2017/01/04 by tim.gautier QAGame: BP_MediaPlayer now displays the name of the MediaPlayer plugin currently in use during playback #jira UE-29618 Change 3246480 on 2017/01/04 by mason.seay Map update #jira UE-29618 Change 3246470 on 2017/01/04 by Ori.Cohen Guard against infinitely thin geometry which fixes some nans. This showed up as issues in various projects #JIRA UE-00000 Change 3246413 on 2017/01/04 by Jon.Nabozny Cube asset did not have Tri Meshes. Reimported to fix the issue. -- Copied from 3233164 -- #jira UE-39657 Change 3246388 on 2017/01/04 by Jon.Nabozny Set 'p.MoveIgnoreFirstBlockingOverlap' to be enabled by default (3158732). This causes collision behavior to remain unchanged unless people opt in to the new behavior. -- Copied from 3239735 (bot health fixed by a different CL) -- #jira UE-39387 Change 3246352 on 2017/01/04 by Jon.Nabozny Fix FPredictProjectilePathParams to use a valid default value for TraceChannel. This requires the use of a new bool bTraceWithChannel which is enabled by default. -- Copied from 3239765 -- #JIRA UE-39726 Change 3246341 on 2017/01/04 by Ori.Cohen Allow vehicles to inherit from PawnMovementComponent and only use the pawn/ai capabilities when a Pawn owner is used. #JIRA UE-39508 Change 3246178 on 2017/01/04 by Andrew.Rodham Sequencer: When playback stops naturally, the play position is set to the boundary that caused playback to stop (the end if playing forwards, the start if playing backwards) - This is to reconcile the movie scene sequence player with previous behaviour #jira UE-40076 Change 3246102 on 2017/01/04 by Benn.Gallagher Fixed single threaded physics dispatcher triggering checks from clothing when running with a CPU with two or fewer cores. #jira UE-39811 Change 3246100 on 2017/01/04 by Benn.Gallagher Fixed ensure triggered when using root motion with sub instances Fixed crash reinstancing an active anim class that had subinstances #jira UE-39582 #jira UE-39579 Change 3246092 on 2017/01/04 by Marc.Audy PR #3082: Improve comment for UInputComponent (Contributed by Soleone) #jira UE-40098 Change 3246084 on 2017/01/04 by Matthew.Griffin Remove bad files Change 3246076 on 2017/01/04 by Matt.Kuhlenschmidt Fixed all non-editable text properties having a double disabled effect. The text box is read only which prevents edting but still allows copying text from it. This feature had regressed and the disabled effect on top of the read only effect made it too difficult to see the text. #jira UE-39652 Change 3246043 on 2017/01/04 by Steve.Robb Use of CastChecked instead of Cast in implementations of IStructSerializerBackend::WriteProperty. This is both more efficient and will hopefully make it easier to diagnose the issue. #jira UE-39872 Change 3246032 on 2017/01/04 by Martin.Wilson Change FindBoneIndex to FindRawBoneIndex (final bone maps are not built until after all adding is done so they will not be found) #jira UE-40105 Change 3246016 on 2017/01/04 by Andrew.Rodham Editor: Insert/Duplicate/Delete menu on array properties now only closes itself on click, rather than all menus - This allows us to edit such properties on context menus #jira UE-39998 Change 3246005 on 2017/01/04 by Thomas.Sarkanen Fixed asset attachment issues in Skeleton Tree Assets were being attached uniquely, so only one asset could be attached to a bone/socket. However the calling code didnt know that the unique attachment function just gave up, so the item just got added to the bottom of the tree. The attachment filter was not set correctly to allow for bone attatchments, so only sockets could be attached to. The attach parent name was not initialized, so assets could not be deleted one at a time. #jira UE-40040 - With multiple Preview assets on one bone, only one appears in Skeleton Tree #jira UE-40041 - Preview assets appear at the bottom of the skeleton tree Change 3246002 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed actor tick prerequisites not getting set up correctly for master sequences #jira UE-39975 Change 3245979 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed scrubbing audio tracks not working propertly #jira UE-40048 Change 3245978 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed dropping a level onto a level visibility section not marking the track as changed, and not correctly creating a transaction #jira UE-39998 Change 3245977 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed crash caused by lingering persistent evaluation data #jira UE-40064 Change 3245971 on 2017/01/04 by Dmitriy.Dyomin Fixed: Using Set World Origin Location will cause the player pawn to stutter #jira UE-40022 Change 3245725 on 2017/01/03 by Matt.Barnes Further improvments on test assets for UEQATC-2963 #jira UE-29618 Change 3245658 on 2017/01/03 by Arciel.Rekman Linux: fix ARM32 build (UE-39913). #jira UE-39913 (Redoing CL 3240982 from Dev-Platform in Release-4.15) Change 3245577 on 2017/01/03 by Mason.Seay More vehicle updates #jira UE-29618 Change 3245556 on 2017/01/03 by Matt.Barnes Updating test content for UEQATC-2963 #jira UEQATC-2963 Change 3245461 on 2017/01/03 by mason.seay Updating Inertia Tensor Scale to improve Vehicle Handling #jira UE-40013 Change 3245442 on 2017/01/03 by Jeff.Fisher UEVR-495 Assert when switching to 2d mode. sceHmdReprojectionStart failing. -There was a race condition between switching output modes on the render thread and sceHmdReprojectionStart on the RHI thread. The flush fixes that. The reprojection would simply have failed that frame previously in shipping which would not matter much as we are switching output modes anyway. #jira UEVR-495 #review-3245374 Change 3245427 on 2017/01/03 by Jeff.Fisher UEVR-456 check if we are using camera before doing camera disconnected dialog on PSVR -If the tracker is active, but we are tracking nothing (ie we have the morpheus hmd tracking plugin, and started up with it, but switched to 2d mode) don't pop up the camera setup warning until we start trying to track something again. -This is useful for apps that have 2d and vr modes. #jira UEVR-456 #review-3245372 Change 3245329 on 2017/01/03 by mason.seay Level and vehicle tweaks #jira UE-29618 Change 3245275 on 2017/01/03 by Chris.Babcock Added EngineVersion to AndroidManfiest.xml metadata #jira UE-40123 #ue4 #android Change 3245235 on 2017/01/03 by Guillaume.Abadie Cherry picks CL 3234813 from Dev-Rendering: Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3245183 on 2017/01/03 by Chris.Babcock Added missing #undef LOCTEXT_NAMESPACE to some files (contributed by projectgheist) #jira UE-40103 #PR #3085 #ue4 #android Change 3245120 on 2017/01/03 by mason.seay Missed some assets #jira UE-29618 Change 3245116 on 2017/01/03 by mason.seay Mass fucntional test #jira UE-29618 Change 3245049 on 2017/01/03 by Ben.Marsh PR #3086: Fixed ScriptGeneratorPlugin #includes (Contributed by projectgheist) Change 3244924 on 2017/01/03 by Ben.Zeigler #jira UE-40057 Fix regression in public access for SwapPlayerControllers, from GitHub #3072 Change 3244831 on 2017/01/03 by Mitchell.Wilson Fixed hole in collision around level. #jira UE-39576 Change 3244817 on 2017/01/03 by Matthew.Griffin Change check for files being under engine directory to avoid problems with relative paths #jira UE-40096 Change 3244801 on 2017/01/03 by Andrew.Rodham Editor: Fixed color picker not working when opened from a details panel on a context menu - When a color picker is opened from a details panel that's on a context menu, it now opens as a sub menu - Added the ability to find an open menu from a widget path to FSlateApplication #jira UE-39932 Change 3244776 on 2017/01/03 by Matt.Kuhlenschmidt Fix window handle and device context being accessed by scene viewports after the underlying window has been destroyed by the OS. This is an invalid state on linux and using some vr devices. #jira UE-7388 Change 3244672 on 2017/01/03 by Ben.Marsh Search all directories containing universal CRT installations from the registry, rather than assuming that the first one found will contain the universal CRT version we want to use. Attempt to fix issues described in PR #3059. Change 3244668 on 2017/01/03 by Thomas.Sarkanen Added "Reimport Animation" and "Export to FBX" to the animation editor toolbar Options were in the asset menu before. #jira UE-39643 - Missing "Reimport" option for animation assets Change 3244667 on 2017/01/03 by Thomas.Sarkanen Reduced default URO distances in-line with new LOD calculations New values should give (roughly) the same effect as the older values with the older system. #jira UE-39939 - URO LOD distance factors different with the new screen size metric Change 3244654 on 2017/01/03 by Matthew.Griffin Added functionality to specify Loading Phase for plugin templates Changed Blueprint Library Template so that it loads pre loading screen and can be linked correctly in blueprints that use it #jira UE-38826 Change 3244631 on 2017/01/03 by Dmitriy.Dyomin Fixed: TM_Landscape_LOD Folder does not Live Update contents after generating LODs with Create Per Package Asset #jira UE-37368 Change 3244548 on 2017/01/02 by Jack.Porter Fix for Post-process Materials rendering incorrectly in editor mobile preview after viewport is resized #jira UE-39905 Change 3244389 on 2016/12/30 by Phillip.Kavan [UE-39816] Fix broken pin links caused by renaming interface function input/output parameters prior to compiling the interface, but after renaming the function itself. Mirrored from //UE4/Dev-Blueprints (CL# 3244388). #jira UE-39816 Change 3244248 on 2016/12/29 by laz.matech Saved the new sublevel in the persistent level and set it to hidden by default #jira UE-29618 Change 3244213 on 2016/12/29 by laz.matech Added a sublevel to QA-Sequencer map #jira UE-29618 Change 3243857 on 2016/12/27 by samuel.proctor Altered Container asset to have proper console input #jira UE-29618 Change 3243852 on 2016/12/27 by Mason.Seay Forgot config file #jira UE-29618 Change 3243847 on 2016/12/27 by mason.seay Improved mobile input #jira UE-29618 Change 3243536 on 2016/12/24 by Phillip.Kavan [UE-39944] Extend the GetClassDefaults node to include output pin exceptions for TSet/TMap properties (i.e. mirror safeguards already in place for TArray). Mirrored from //UE4/Dev-Blueprints (CL# 3243210). #jira UE-39944 Change 3243535 on 2016/12/24 by Phillip.Kavan [UE-39816] Renaming interface input/output parameters will no longer cause broken pin links at interface function call sites in Blueprints that are currently loaded. Mirrored from //UE4/Dev-Blueprints (CL# 3243207). #jira UE-39816 Change 3243534 on 2016/12/24 by Phillip.Kavan [UE-39733] Fix incorrect graph pin value display names for user-defined enum types. Mirrored from //UE4/Dev-Blueprints (CL# 3239965). #jira UE-39733 Change 3243532 on 2016/12/24 by Phillip.Kavan [UE-39854] Fix nativized assets build error when there are no native code dependencies. Mirrored from //UE4/Dev-Blueprints (CL# 3239778). #jira UE-39854 Change 3243529 on 2016/12/24 by Phillip.Kavan [UE-38999] Dump component tree node hierarchy to the output log on error state during widget generation. Mirrored from //UE4/Dev-Blueprints (CL# 3239289). #jira UE-38999 Change 3243442 on 2016/12/23 by mason.seay QAGame cleanup - Replacing copy pose from mesh test assets #jira UE-29618 Change 3243215 on 2016/12/22 by Dmitriy.Dyomin Fixed: Switching to ES2 feature level preview renders black in editor #jira UE-40009 Change 3243185 on 2016/12/22 by Ryan.Vance #jira UEVR-478 Integrating 3235308 Mono changes from DevVR. Change 3243183 on 2016/12/22 by Ryan.Vance #jira UEVR-455 Integrating 3243173 post present call back implementation from 4.14.1 Change 3243182 on 2016/12/22 by Ryan.Vance #jira UE-39269 Working around a nullptr deref in the Oculus runtime. Change 3243153 on 2016/12/22 by mason.seay WIP map update #jira UE-29618 Change 3243128 on 2016/12/22 by andrew.porter QAGame: Adding Actor Sequence test content for a crash. #jira UE-29618 Change 3243117 on 2016/12/22 by Jeff.Fisher UE-34004 GitHub 2659 : Implement support for OpenVR controller roles. -Rather than assigning unreal hands to controllers in the order the controllers are connected assign unreal hands to match the ones the API is using. -We now defer setting up controllers that are disconnected. This lets connected controllers, that may have hand preference from steam, occupy their desired hands first. If a controller is connected later and does not have a role it is assigned to an unoccupied hand or to the right hand. -This can still end up ignoring role in the following circumstance (and I can get it to do this): get one controller to prefer'right' and the other to have no preference. Power off the 'right' prefering controller. Start the game with only the no-preference controller on. The game will put that controller in the right slot, because the api gives it no other hints. Then power on the controller that preferred 'right'. That controller will now be assigned left, because right is occupied. I don't see a way around that without the ability to switch which hand a controller is associated with at runtime. -This does not yet handle starting with 2 controllers, disconnecting one, then connecting a third controller well. That did not work before either. A new Jira was created for that. #2659 #jira UE-34004 #review-3231154 Change 3243093 on 2016/12/22 by mason.seay Some tweaks to vehicle levels #jira UE-29618 Change 3243084 on 2016/12/22 by andrew.porter QAGame: Cleaned up Sequencer_OverrideBindings #jira UE-29618 Change 3243009 on 2016/12/22 by andrew.porter QAGame: Renaming actor in Sequencer_OverrideBindings. #jira UE-29618 Change 3243003 on 2016/12/22 by andrew.porter QAGame: Removing override bindings from level sequence #jira UE-29618 Change 3242996 on 2016/12/22 by andrew.porter QAGame: Slight tweak to QA-Sequencer. #jira UE-29618 Change 3242982 on 2016/12/22 by Marc.Audy Properly reenable stats sounds in both game and level editor #jira UE-40015 Change 3242959 on 2016/12/22 by mason.seay Test map for vehicles and moving meshes #jira UE-29618 Change 3242934 on 2016/12/22 by andrew.porter QAGame: Adding test content to QA-Sequencer for Override Bindings #jira UE-29618 Change 3242870 on 2016/12/22 by Mason.Seay QAGame footprint reduction: Clearing out content (were in for old bug reports) #jira UE-29618 Change 3242799 on 2016/12/22 by tim.gautier QAGame - Adding the following assets for Sequencer Event Track testing: -TM-Sequencer_EventTrack + BuildData -QA_LightStruct -Sequencer_EventTrack #jira UE-29618 Change 3242792 on 2016/12/22 by samuel.proctor Correcting Container test asset for proper output #jira UE-29618 Change 3242727 on 2016/12/22 by Dmitriy.Dyomin Fixed: LoadLevelIntstance returns a reference that can't be used to send an interface message #jira UE-40005 Change 3242666 on 2016/12/22 by Dmitriy.Dyomin Fixed: Packaging Android app for Mali Graphics Debugger v4.3.0 fails #jira UE-39534 Change 3242373 on 2016/12/21 by Ori.Cohen Allow vehicles to override inertia tensor after any mass properties have changed. #JIRA UE-39566 Change 3242323 on 2016/12/21 by Josh.Adams - Somehow my last change just got completely lost in the edigrate shuffle. Or something. I have no idea! Rdoing it #jira UE-39966 Change 3242286 on 2016/12/21 by mason.seay Vehicle Assets and Maps #jira UE-29618 Change 3242284 on 2016/12/21 by Marc.Audy Fix "stat sounds" not working after PIE completes and a new one is begun #jira UE-32743 #jira UE-39511 Change 3242281 on 2016/12/21 by Ori.Cohen Fix multi select being very slow in phat #JIRA UE-39559 Change 3242229 on 2016/12/21 by Ben.Marsh Fixup workspace for building PhysX. Change 3242227 on 2016/12/21 by Marc.Audy Properly update listener position for stat sounds #jira UE-38850 Change 3242218 on 2016/12/21 by Ori.Cohen Fix physx html5 compilation APEX issue. #JIRA UE-39566 Change 3242174 on 2016/12/21 by Ori.Cohen Fix incorrect moment of inertia for convex elements with translation. #JIRA UE-39566 Change 3242145 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix for vehicle stability #JIRA UE-38710 Change 3242139 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix: Fix crash when setting collision trace in construction script. #JIRA UE-39341 Change 3242088 on 2016/12/21 by Alexis.Matte Fix the drag and drop material on level instance to drop on the correct material slot Fix the serialization of the staticmesh property FMeshSectionInfoMap #jira UE-39952 Change 3242081 on 2016/12/21 by Andrew.Rodham Sequencer: Make details view focused when resetting inner struct contents to ensure that focus path is valid. #jira UE-39851 Change 3242079 on 2016/12/21 by Andrew.Rodham Sequencer: Evaluation templates are now only fully rebuilt in PIE, and will not re-cycle track identifiers - This addresses issues with newly compiled tracks recycling the persistent data of old stale tracks. - This commit also ensures we don't fully rebuild templates in the editor when in Sequencer #jira UE-39882 Change 3242078 on 2016/12/21 by Andrew.Rodham Sequencer: Fixed crash when deactivating a section in sequencer #jira UE-39880 Change 3242026 on 2016/12/21 by Josh.Adams - Fixed compile errors in tools after NVNRHI move #jira UE-39966 Change 3241994 on 2016/12/21 by andrew.porter QAGame: Disabled auto play on Sequencer_AnimNotify. #jira UE-29618 Change 3241989 on 2016/12/21 by Mitchell.Wilson Resolving CIS warnings in Content examples. Fixed up redirectors. Moved a texture from developer folder into project and relinked in POM_Debug material. Fixed up BP Commentary Box which was failing to compile. Updated spawn rate on Pulse Ring so it works as intended. #jira UE-39984 Change 3241986 on 2016/12/21 by mason.seay Vehicle Landscape Test map (mainly for crash investigation) #jira UE-29618 Change 3241914 on 2016/12/21 by Josh.Adams - Removed invalid and confusing .ini settings #jira UE-39982 Change 3241902 on 2016/12/21 by Josh.Adams - Moved NVNRHI stuff out of RHI.Build.cs #jira UE-39966 Change 3241889 on 2016/12/21 by andrew.porter QAGame: Added new level sequence to QA-Sequencer level #jira UE-29618 Change 3241884 on 2016/12/21 by Alexis.Matte Make sure the color grading cursor follow the mouse by using the exponent value when painting the cursor. #jira UE-39834 Change 3241869 on 2016/12/21 by andrew.porter QAGame: Adding test content for Sequencer Animation Notifies #jira UE-29618 Change 3241809 on 2016/12/21 by Chris.Wood Fix non-unity build errors in UnrealWatchdog. [UE-39940] - GitHub 3054 : Added EngineBuildSettings.h to UnrealWatchdog.cpp PR #3054: Added EngineBuildSettings.h to UnrealWatchdog.cpp (Contributed by ryanjon2040) #jira UE-39940 Change 3241806 on 2016/12/21 by Marc.Audy Don't unload and then reload streaming levels that are marked to be hidden. #jira UE-39883 Change 3241802 on 2016/12/21 by Marc.Audy Add new object flag RF_NeedInitialization to indicate that ~FObjectInitalizer and PostInitProperties have not been executed for the object Do not allow Modify calls on Objects that have not been initialized #jira UE-39731 Change 3241790 on 2016/12/21 by Marc.Audy Don't rerun construction scripts when an actor has seamless traveled from another level #jira UE-39699 Change 3241789 on 2016/12/21 by Marc.Audy Check Owner has a valid world before trying to access Scene (4.14.2) #jira UE-39560 Change 3241786 on 2016/12/21 by Marc.Audy Fixed crash when seamless travelling in PIE from levels other than the current editor level with a streaming sublevel shared with the current editor level #jira UE-39407 Change 3241781 on 2016/12/21 by Mitchell.Wilson Fixed up redirectors for SkeletalMesh and Personal Walkthroughs. #jira UE-30953 Change 3241747 on 2016/12/21 by mason.seay Tag Query test map and assets #jira UE-29618 Change 3240938 on 2016/12/20 by Ben.Marsh Remaking QFE fixes from 4.14 branch. Change 3240740 on 2016/12/20 by Ben.Marsh Update branch name for analytics. [CL 3272229 by Matthew Griffin in Main branch]
2017-01-25 16:23:41 -05:00
{
#if PLATFORM_ANDROID
if (RenderTarget->IsTiledMSAA() && glFramebufferTexture2DMultisampleEXT)
{
Copying //UE4/Release-Staging-4.14 to //UE4/Dev-Main (Source: //UE4/Release-4.14 @ 3195953) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3195953 on 2016/11/12 by Leslie.Nivison Rollback //UE4/Release-4.14/Engine/Plugins/Runtime/Nvidia to changelist 3193712 New GameWorks license from NVIDIA #jira UEPROD-900 Change 3195944 on 2016/11/12 by Leslie.Nivison Removing GameWorks SDK license until we get a new one from NVIDIA #jira UEPROD-900 Change 3195942 on 2016/11/11 by Chris.Gagnon Removing Ansel from 4.14 until revised EULA is handle. #jira UE-none Change 3195431 on 2016/11/11 by Mitchell.Wilson Rebuilt lighting in subway reflections sample #jira UE-38538 Change 3195080 on 2016/11/11 by mason.seay Extended floor to allow more driving space #jira UE-29618 Change 3194886 on 2016/11/11 by Chris.Babcock Correct handling for 6x6 blocksize in ASTC compressor #jira UE-38513 #ue4 #android Change 3193712 on 2016/11/10 by Leslie.Nivison Updating Ansel TPS info per NVIDIA response #jira UEPROD-900 Change 3193691 on 2016/11/10 by Lina.Halper #jira: UE-38488 Change 3193532 on 2016/11/10 by Lauren.Ridge Fix to keep the user in VR editing mode after leaving VR PIE. #jira UE-38317 Change 3193468 on 2016/11/10 by Leslie.Nivison Removing unneeded license #jira UEPROD-900 Change 3193465 on 2016/11/10 by Leslie.Nivison Updating credits for 4.14 #jira UEPROD-902 Change 3193416 on 2016/11/10 by Daniel.Lamb Changed default of exclude editor only content flag. #jira UE-38455 Change 3193399 on 2016/11/10 by Mitchell.Wilson Applied correct material to certain LODs of tree meshes in KiteDemo #jira UE-38472 Change 3193049 on 2016/11/10 by Thomas.Sarkanen Fix disappearing mesh on undo in skeletal mesh editor Also fixes crash on undo in morph target panel #jira UE-38430 - Undo in Skeletal Mesh Editor causes model to disappear #jira UE-38437 - Crash when Undo after editing a weight in Morph Target Previewer Change 3192655 on 2016/11/09 by Ryan.Vance #jira UE-37238 Pulling in 3164679 and 3169467 which didn't make the 4.14 cut. Also changed to a full inverse for InvTranslatedViewProjectionMatrix in FViewMatrices::UpdateViewMatrix. Change 3192613 on 2016/11/09 by Leslie.Nivison Updating licenses due to TPS version updates. Logging undocumented TPS per engine audit #jira UEPROD-900 Change 3192197 on 2016/11/09 by Daniel.Wright Added SUPPORT_CONTACT_SHADOWS, only standard deferred lighting supports it. Fixes scene depth texture bound in forward shading base pass. #jira UE-38340 Change 3192182 on 2016/11/09 by Rolando.Caloca UE4.14 - Fix recompute tangents not working when skin cache is enabled #jira UE-38398 Change 3191695 on 2016/11/09 by Chris.Wood Editor heartbeat changes for 4.14 [AN-1003] - Make Editor heartbeat 1min [UE-38417] - Editor heartbeat changes (vanilla editor, new interval, debugger attached) Also added IsDebugger, IsVanilla and IntervalSec to Editor.Usage.Heartbeat #jira UE-38417 Change 3191437 on 2016/11/09 by Jack.Porter Fix for LandscapeInfo crash when using Force Delete #jira UE-37172 Change 3191033 on 2016/11/08 by Leslie.Nivison Adding licenses for marketplace plugins #jira UEPROD-901 Change 3191028 on 2016/11/08 by Leslie.Nivison Updating licenses due to TPS version updates. Logging undocumented TPS per engine audit #jira UEPROD-900 Change 3190632 on 2016/11/08 by mason.seay Updated testmap and assets #jira UE-29618 Change 3190624 on 2016/11/08 by Jamie.Dale Fixed case where FHTML5TargetPlatform::RefreshHTML5Setup could incorrectly add an empty device Changes to UStrProperty::ExportTextItem caused FParse::Value to (correctly) read an empty string for DevicePath which passed the DirectoryExists check (where it would have previously read "))" which would fail that check). #jira UE-38157 Change 3190443 on 2016/11/08 by Josh.Adams - Somehow checking in my tested shelf messed up #jira UE-38304 Change 3190354 on 2016/11/08 by Josh.Adams - Vulkan now always being compiled in, if the SDK exists. Compiling not dependent on project settings #jira UE-38304 Change 3190123 on 2016/11/08 by zachary.wilson Updating testing content for sureface per-pixel improvements #jira UE-29618 Change 3190113 on 2016/11/08 by Alexis.Matte Make sure the default light map channel is 1 and not 0 #jira UE-35627 Change 3190102 on 2016/11/08 by Dmitry.Rekman Linux: default to binned everywhere (UE-38287). - Fixes suspicious crashes happening in uncooked build. Workaround, needs separate investigation. #jira UE-38287 Change 3190000 on 2016/11/08 by Allan.Bentham Removed old protostar loadmap hack. #jira UE-38342 Change 3189914 on 2016/11/08 by Allan.Bentham Fix vulkan crash when rendering sky capture. Fix crash when rendering LDR scene capture on device. #jira UE-38291 Change 3189861 on 2016/11/08 by Thomas.Sarkanen Fix out of bounds access when using hidden bones with master pose components Code was trying to to access the ReferenceToLocal array using a parent index from the master pose component. Now changed to only use indices known to be valid (i.e. this component's) to index the ReferenceToLocal array. Bone visibility is still master-authoratitive. #jira UE-38214 - [CrashReport] UE4Editor_Engine!UpdateRefToLocalMatrices() [skeletalrender.cpp:238] Change 3189370 on 2016/11/07 by Daniel.Wright Only check transform mismatches for static lighting in UStaticMeshComponent::ApplyComponentInstanceData on components that actually can have static lighting #jira UE-38272 Change 3189358 on 2016/11/07 by Mark.Satterthwaite Intel Metal drivers can no longer compile our compute shaders reliably meaning Intel Macs must always use Metal SM4 as otehrwise they will crash. #jira UE-38299 Change 3189273 on 2016/11/07 by Rolando.Caloca UE4.14 - Integrate fix from 3161219 #jira UE-38270 Change 3189084 on 2016/11/07 by Chris.Bunner Fix RemoveAAJitter from projection matrix. #jira UE-37701, UE-38003 Change 3188636 on 2016/11/07 by Allan.Bentham use glVertexAttribIPointer only on ES3.1 enabled projects. #jira UE-38241 Change 3188596 on 2016/11/07 by Yannick.Lange VR Editor: Fix crash when closing window while in VR Editor #jira UE-37995 Change 3188433 on 2016/11/07 by Matthew.Griffin Add starter content .upack files to starter_content tag so that they should still be installed if templates/feature packs option is de-selected in the Launcher Change 3187739 on 2016/11/04 by Mitchell.Wilson Updating DefautlEditor and DefaultEngine ini to correct path to VehicleMenu level. #jira UE-29748 Change 3187536 on 2016/11/04 by Martin.Wilson Fix for "Renaming a montage section via its details panel doesn't update the section correctly" #jira UE-35929 Change 3187499 on 2016/11/04 by zachary.wilson Checking in content fixes for Lighting Scenarios test level #jira UE-29618 Change 3187492 on 2016/11/04 by mason.seay Updated map to improve testing #jira UE-29618 Change 3187438 on 2016/11/04 by Nick.Shin fix html5 port number for cook-on-the-fly option #jira UE-38032 - Quicklaunch HTML5 fails on Chrome. Browser returns "This site can't be reached 127.0.0.1 refused to connect" Change 3187305 on 2016/11/04 by Martin.Wilson Fix log spam from animation sequence thumbnails #jira UE-38224 Change 3187260 on 2016/11/04 by Lauren.Ridge Fix for crash on opening a level in VR Editing mode. When closing VREditorMode for a level load, HMD no longer leaves stereo mode. #jira UE-32541 Change 3187224 on 2016/11/04 by Robert.Manuszewski Proper fix for a crash when launching BP-only project from the Editor with EDL enabled (does not modify UE4Game target binaries) #jira UE-37617 Change 3187136 on 2016/11/04 by Alexis.Matte Fbx importer for static mesh, make sure that we order the materials array to follow the section order. #jira UE-38242 Change 3187065 on 2016/11/04 by Mitchell.Wilson Updated BP_Commentary_Box to resolve warnings with array if the box opens then closes before the text is rendered. #jira UE-38266 Change 3187056 on 2016/11/04 by Mike.Beach Guarding against a rare crash that occurs when compiling a Blueprint after hot-reload. GUnrealEd was null, which is concerning (as it could have resounding effects in other systems), but as I could not repro it more than once (to figure it out more) I simply guarded the use of a null pointer here. #jira UE-38198 Change 3187040 on 2016/11/04 by Matthew.Griffin Corrected path to DotNETCommon folder Exclude all editor plugin pdbs from stripping #jira UE-37072 Change 3186984 on 2016/11/04 by Marc.Audy Fix crash when null component considered #jira UE-36493 Change 3186600 on 2016/11/04 by Max.Chen Sequencer: Fix crash in sequencer editor mode. #jira UE-38205 Change 3186564 on 2016/11/04 by Nick.Shin checking in latest physx libs for html5 #jira UE-38179 HTML5 Player falls through world on Firefox 64-bit Change 3186258 on 2016/11/03 by Nick.Shin fix for automation build to handle deleting of windows x86 & x64 libs properly #jira UE-38179 HTML5 Player falls through world on Firefox 64-bit Change 3186225 on 2016/11/03 by Lauren.Ridge Fix for foliage brush not showing up until after first motion controller click. #jira UE-38002 Change 3186100 on 2016/11/03 by Chris.Babcock Update local notifications to deal with depreciated API #jira UE-38236 #ue4 #android Change 3186074 on 2016/11/03 by Mitchell.Wilson Rebuilt lighting in Content Examples Welcome level #jira UE-38239 Change 3185923 on 2016/11/03 by Lina.Halper Fixed issue with animation not ticking in inactive world causing it to update parent animation #jira: UE-37933 Change 3185764 on 2016/11/03 by Mitchell.Wilson Updating deprecated node in MyCharacter_UMG. #jira UE-38229 Change 3185683 on 2016/11/03 by Nick.Shin non SSE2 version of PhysX for HTML5 #jira UE-38179 HTML5 Player falls through world on Firefox 64-bit Change 3185492 on 2016/11/03 by Ben.Woodhouse Workaround for very high render query memory overhead on D3D12. Add a cvar to limit timestamp queries allocated by the GPU profiler in a given frame. On D3D12 this limit is 1024 - other RHIs remain unbounded. Currently render queries are 64KB each on D3D12, so this prevents high memory overhead on particular frames, e.g when we render a large number of reflection captures. In practice, most frames are under 400 queries, so in practice we shouldn't hit the limit except in extreme cases. #jira UE-38139 Change 3185481 on 2016/11/03 by Dmitry.Rekman Remove version number from Linux README (UE-38059). #jira UE-38059 Change 3185322 on 2016/11/03 by Ryan.Gerleve Allow path names in NetFieldExportGroups to be remapped on the client. #jira UE-37990 Change 3185293 on 2016/11/03 by Matthew.Griffin Exclude UnrealControls and iPhonePackager from Build Tools CS node on non-Windows platforms as they don't compile #jira UE-34016 Change 3185252 on 2016/11/03 by Michael.Trepka Properly revert to OpenGL on Macs that do not support Metal #jira UE-38190 Change 3184835 on 2016/11/03 by Jurre.deBaare Crash when using undo in the preview scene settings of Persona #fix Ensure that the profile index is valid after undo-ing #misc Added transactions for adding/remove of the profiles #jira UE-38142 Change 3184833 on 2016/11/03 by Jack.Porter Fixed crash when ENABLE_VERIFY_GL and r.MobileOnChipMSAA is enabled on Android #jira UE-38186 Change 3184418 on 2016/11/02 by Ryan.Vance #jira UE-38161 Adding ISceneViewExtension::UsePostInitView which will be used to enable/disable the usage of PostRenderViewFamily_RenderThread and PostRenderView_RenderThread which was added earlier. We need to enable this behavior based on the hmd's compositor behavior, so a simple cvar wont work. I missed the PostPresent implementation for steamvr in the earlier check in. Change 3184286 on 2016/11/02 by Dan.Oconnor Fix for IsValidLowLevel check being rotten. More correct fix will go into Dev-BP, but this is a low risk stop-gap #jira UE-38149 Change 3184283 on 2016/11/02 by Arne.Schober DR - UE-38155 replicated MS CL 3183837 - PSO Dangling Pointers: The PSO cache was returning pointers out of a Map which is based on a sparse Array and those pointers could become invalid if other insertions happen. #jira UE-38155 Change 3184244 on 2016/11/02 by Richard.Ugarte #jira UE-37534 Checking in updated UE4_Demo_Head_D on behalf of MikeB Change 3184171 on 2016/11/02 by Michael.Trepka Made Mac CrashReportClient high-DPI aware and fixed high-DPI handling in FMacWindow::IsPointInWindow() #jira UE-37697 Change 3184126 on 2016/11/02 by Lauren.Ridge VR Editor: Fixes for foliage painting only working on one controller, and for full press not painting foliage. #jira UE-38147 #jira UE-38002 Change 3183997 on 2016/11/02 by Mitchell.Wilson Scaled and Rotated 3d Widget to the correct position on example 2.3 in Content Examples UMG. Adjusted collision on example 1.4 in Content Examples Physics. Updated collision on SM_ExampleMesh_Rocket. Realigned some text render actors in Content Examples Post Process. #jira UE-38099 UE-38078 UE-38064 Change 3183945 on 2016/11/02 by Mieszko.Zielinski Fixed changing AreaClass of NavLinkProxy point links not having any effect on navmesh generation #UE4 #jira UE-38137 Change 3183906 on 2016/11/02 by Nick.Shin for OSX (release-4.14 stream): new OSX clang (from 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 fixes for OSX -- update existing (bash shell script and UE4 c#) build files to use the new "incoming" emsdk #jira UE-37329 - Step 'Compile UE4Game HTML5' - 300 Warnings Change 3183899 on 2016/11/02 by Mieszko.Zielinski Fixed EQS debugger not drawing item labels #UE4 #jira UE-38122 Change 3183239 on 2016/11/02 by Peter.Sauerbrei fix for mobile provision with UUID only filename being allowed again by copying them to a new file name which allows them to be used. #jira UE-38006 Change 3183149 on 2016/11/02 by Luke.Thatcher [RELEASE] [SHOOTERGAME] [!] Fix "Is Talking" icon on ShooterGame scoreboard, after PS4 OSS refactor. - ShooterGame was comparing FUniqueNetId::ToString() against AShooterPlayerState::GetShortPlayerName(). - This is wrong, since the NetId is not guaranteed to be equal to the player's name. #jira UE-38011 Change 3183005 on 2016/11/02 by Luke.Thatcher [RELEASE] [PS4] [^] Merging (as edit) PS4 OSS fixes from Engine to OrionGame. #jira UE-38017 UE-38020 Original Changelists: 3182765 [RELEASE] [PS4] [~] Additional logging for PS4 OSS "Play Together". 3182766 [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. 3182767 [RELEASE] [PS4] [!] Fix PS4 session invitations. - Was calling old Web API with SceNpOnlineId where SceNpAccountId is needed. - Replaced with NpToolkit2's session invitation API. 3182892 [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(). 3182951 [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). Change 3182992 on 2016/11/02 by Nick.Darnell UMG Editor - Fixing a regression with the editor, closing the sequencer tab and reopening the editor should no longer cause a crash. #jira UE-38098 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 [CL 3201696 by Matthew Griffin in Main branch]
2016-11-17 04:29:30 -05:00
// GL_EXT_multisampled_render_to_texture requires GL_COLOR_ATTACHMENT0
glFramebufferTexture2DMultisampleEXT(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0 + RenderTargetIndex, RenderTarget->Target, RenderTarget->GetResource(), MipmapLevels[RenderTargetIndex], RenderTarget->GetNumSamplesRendered());
VERIFY_GL(glFramebufferTexture2DMultisampleEXT);
}
else
#endif
{
FOpenGL::FramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0 + RenderTargetIndex, RenderTarget->Target, RenderTarget->GetResource(), MipmapLevels[RenderTargetIndex]);
}
break;
Copying //UE4/Release-Staging-4.15 to //UE4/Dev-Main (Source: //UE4/Release-4.15 @ 3267632) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3267632 on 2017/01/23 by Jurre.deBaare Marker syncs not working correctly in Blend Spaces #fix Ensure that SampleIndexWithMarkers is serialized #JIRA UE-40975 Change 3266915 on 2017/01/20 by Arciel.Rekman Fix Persona crash on Linux (UE-38790). - Static template variable got instantiated into multiple DSOs; probably exacerbated by --as-needed since this does not happen without it. #jira UE-38790 Change 3266785 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Make usage of CachedUsers thread safe. Duplicates CL 3245390 #jira UE-40649 Change 3266762 on 2017/01/20 by Rolando.Caloca UE4.15 - Fix for reallocating scene color #jira UE-40633 Change 3266642 on 2017/01/20 by Lina.Halper Downgraded Warning to Info #jira: UE-40643 Change 3266532 on 2017/01/20 by Jeff.Campeau Fix multiplatform Windows includes defeating the safety check in MinWindows.h #jira UE-40778 #rn Fixed a compile warning on Xbox One when XboxOneMinApi.h was included before MinWindows.h. Change 3266523 on 2017/01/20 by Marc.Audy Fix case where child actor could avoid getting begin play call #jira UE-40960 Change 3266474 on 2017/01/20 by Peter.Sauerbrei fix for using an API not yet available in iOS 8 #jira UE-40698 Change 3266339 on 2017/01/20 by Frank.Fella Sequencer - Fix UI issues with multi-track section rows. + Don't show an empty sub-track when there are no sections. + Expand parent tracks by default. #Jira UE-40487 Change 3266283 on 2017/01/20 by Jeff.Fisher UE-40683 GearVR projects rendering black -Fix from Remi Palandri #jira UE-40683 #review-3265824 @nick.whiting @ryan.vance Change 3266264 on 2017/01/20 by Lina.Halper Downgraded warning and changed log message #jira: UE-40643 Change 3266239 on 2017/01/20 by Peter.Sauerbrei fix for virtual joystick not showing up on some devices #jira UE-40472 Change 3266084 on 2017/01/20 by Mitchell.Wilson Resaving level to have correct starting camera position. Saved in wrong position after fixing a bug. #jira UE-40887 Change 3266077 on 2017/01/20 by Matt.Kuhlenschmidt Fixed "Wait for Movies to Complete" flag being reversed #jira UE-40943 Change 3266076 on 2017/01/20 by Mitchell.Wilson Updating occulsion bounds method on P_spark_burst_2 so it is not occluded when spawned inside of the coin mesh in BP_Overview example. Updating some post process examples due to changes made with Post Process settings. Film and Scene Color are temporary fixes and are intended to be fully updated in 4.16 #jira UE-40830 UE-40887 Change 3266034 on 2017/01/20 by Benn.Gallagher Fixed crash when reimporting APEX destructibles from apb/x files caused by not allowing the renderer to flush destroy resource commands before emptying an array. #jira UE-40911 Change 3266027 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Fix CreateSession and FindSession each permanently failing after first failure. Duplicates CL 3262175 #jira UE-39110 Change 3265906 on 2017/01/20 by Marcus.Wassmer Fix GPU particle AFR flickering and optimize injection transfers. Duplicate CL's 3260302, 3261252, 3265662, 3265678 #jira UE-40915 Change 3265873 on 2017/01/20 by Mark.Satterthwaite Duplicate CL #3262535: Make sure to set rasterizer state when rendering with a material in FSlateRHIRenderingPolicy::DrawElements #jira UE-40842 Change 3265857 on 2017/01/20 by Jamie.Dale Fixed font pathing issue that could happen in an out-of-source packaged build #jira UE-40855 Change 3265675 on 2017/01/20 by Matt.Kuhlenschmidt Move Dirt Mask Intensity to the correct post process category #jira UE-40851 Change 3265674 on 2017/01/20 by Rolando.Caloca UE4.15 - Revert #jira UE-40633 Change 3265647 on 2017/01/20 by Mitchell.Wilson Updating spawn location of the player pawn after unpossessing character in example 1.10. #jira UE-40870 Change 3265612 on 2017/01/20 by Alexis.Matte Prevent name clash warning when doing automation test #jira UE-40788 Change 3265553 on 2017/01/20 by Matthew.Griffin Fixed Shadow variable warning Change 3265366 on 2017/01/20 by Dmitriy.Dyomin Fixed: Vulkan crashes on Adreno Galaxy S7 #jira UE-40840 Change 3265294 on 2017/01/19 by Dmitriy.Dyomin Fixed typo which was causing assert on mobile #jira UE-40633 Change 3265111 on 2017/01/19 by Rolando.Caloca UE4.15 - Fix for scene color crash #jira UE-40633 Change 3264789 on 2017/01/19 by Josh.Adams - Redoing a fix from Dev-Plat for UI_BUILD_SHIPPING_EDITOR #jira UE-40798 Change 3264780 on 2017/01/19 by Rolando.Caloca UE4.15 - Add Morph compute GPU stat #jira UE-40891 Change 3264486 on 2017/01/19 by Mark.Satterthwaite Fix the crash on startup on Intel GPUs - this is due to Intel Metal forcing SM4 to avoid some drivers bugs in SM5 but I got the condition for initialisation in FMinimalDummyForwardLightingResources wrong so it's attempting to create a RWBuffer for SM4 which won't work. #jira UE-40863 Change 3264427 on 2017/01/19 by Rolando.Caloca UE4.15 - Track down crash #jira UE-40633 Change 3264393 on 2017/01/19 by Aaron.McLeran #jira UE-40850 Re-fixing UE-39650 again in 4.15. I hope this bug doesn't regress yet again! Change 3264364 on 2017/01/19 by Daniel.Wright In forward shading SceneCaptureSource modes Normal and BaseColor are replaced with SceneColorHDR as the GBuffer is not available. This is a silent failure for now as there's no good content error reporting mechanism for scene captures. #jira UE-39658 Change 3264284 on 2017/01/19 by Mark.Satterthwaite Duplicate CL #3264251: Modify some asserts in MetalRHI - technically using a store-action of ENoAction on Stencil buffers should make it invalid to restart a render-pass but on Mac it will work because ENoAction won't invalidate anything written. In future we need to use deferred store-actions in Metal so that we can "restart" passes while enforcing correct Load/Store actions. #jira UE-40803 Change 3264282 on 2017/01/19 by Benn.Gallagher CIS fix, bad expression that failed to compile Mac #jira UE-40716 Change 3264257 on 2017/01/19 by Mike.Beach Revising fix in UBlueprint::BeginCacheForCookedPlatformData(), saving off nativization data if the -nativizeAssets param is present (not just if it was enabled in packaging settings). #jira UE-40620 Change 3264242 on 2017/01/19 by Daniel.Wright [Copy] Sharing IndirectLightingCacheTextureSampler samplers #jira UE-40727 Change 3264191 on 2017/01/19 by Ori.Cohen Fix heightfield not working with traces underneath. #JIRA UE-39819 Change 3264139 on 2017/01/19 by Benn.Gallagher Removed collision between clothing in external skeletal mesh components, as clothing simulations could already be in flight and editing collisions while the simulation is running is not supported by APEX #jira UE-40716 Change 3264110 on 2017/01/19 by Max.Preussner MfMedia: Disabled plug-in on Windows 10, because it is currently broken #jira UE-406344 Change 3264108 on 2017/01/19 by Max.Preussner MfMedia: Fixed compile errors on Windows 10 #jira UE-40644 Change 3264099 on 2017/01/19 by Jamie.Dale Adding deprecation warning for 4.14 style PO export #jira UE-40592 Change 3264089 on 2017/01/19 by Matthew.Griffin Reworked DDC commandlet to make sure it actually calls BeginCacheForCookedPlatformData on assets Skip doing this for Engine content if -ProjectOnly is set as that takes a long time and isn't necessary for the way we use it #jira UE-39968 Change 3264065 on 2017/01/19 by James.Golding Fix ModifyCurve node not calling init/update in SourcePose #jira UE-40852 Change 3263729 on 2017/01/19 by Alexis.Matte Fix a bad condition when filling the material sorting array #jira UE-40814 Change 3263704 on 2017/01/19 by Jack.Porter Fix compile error in AndroidESDeferredOpenGL.cpp when " ES Deferred Shading Renderer" is enabled. #jira UE-40659 Change 3263627 on 2017/01/19 by Jack.Porter Fixed black textures when Vulkan is packaged for ETC1 #jira UE-40658 Change 3263554 on 2017/01/19 by Jack.Porter Fixes to HISMC LOD to use new screen size calculation. Solves issue where HISMC was always rendered at lowest LOD. #jira UE-38930 Change 3263535 on 2017/01/19 by Matthew.Griffin Removed unnecessary directories to always cook Problem was actually down to string asset references not being resolved in file set generation Change 3263534 on 2017/01/19 by Matthew.Griffin Added -SkipPublish parameter to BuildLauncherSample command so that we don't chunk and post preflights Change 3263267 on 2017/01/18 by Dan.Oconnor Fix for editing of TMap/TSet variables in structure editor, async tasks, and when using UK2Node_CommutativeAssociativeBinaryOperator. #jira UE-40428 Change 3263219 on 2017/01/18 by Dan.Oconnor Fix copy paste error found by UDN user Craig.Wright that could result in fatal bytecode execution #jira UE-19425 Change 3262980 on 2017/01/18 by Maciej.Mroz #jira UE-40394, UE-40395, UE-40426, UE-40484, UE-40770 Integrated cl 3262851, 3261613, 3260908 from Dev-Blueprint Change 3262908 on 2017/01/18 by Ori.Cohen When refreshing physics assets, don't do so on components that have no bodies. #JIRA UE-40764 Change 3262709 on 2017/01/18 by Matt.Kuhlenschmidt Fix a crash if a background blur widget ends up being negative or zero sized #jira UE-40820 Change 3262606 on 2017/01/18 by Marc.Audy Don't bother the user with force feedback based on where the unpossessed pawn is standing in the world while in simulate mode #jira UE-40785 Change 3262416 on 2017/01/18 by Marc.Audy Reenable audio threading #jira UE-00000 Change 3262125 on 2017/01/18 by Chris.Wood Fixed unnecessary truncate in SMenuAnchor::Tick that caused menu placement to wobble [UE-40293] - Dropdown selection box jitters when mouse is moved over top of it on Mac #jira UE-40293 Change 3262103 on 2017/01/18 by Jamie.Dale Merging some cooker fixes CL# 3262089 - Fixing RedirectCollector issues with projects outside the UE4 directory CL# 3262091 - Guarding against potentially invalid call to FString::Mid CL# 3262094 - Cook on the fly builds now resolve string asset references #jira UE-40790 Change 3262082 on 2017/01/18 by Chris.Bunner Accumulate used particle materials from final mesh material module, not first. #jira UE-39953 Change 3261996 on 2017/01/18 by Matthew.Griffin Allow Samples to be built in pre-flights if you are specifying an engine version Change 3261995 on 2017/01/18 by Matthew.Griffin Resolve string asset references after loading packages to ensure that we find all required files Change 3261934 on 2017/01/18 by Allan.Bentham Bump shader version to force changes in 3260307 to occur. #jira UE-39701 Change 3261842 on 2017/01/18 by Graeme.Thornton Manual copy of CL 3253580 from Dev-Core Added some validation of the class index in exportmap entries #jira UE-37873 Change 3261017 on 2017/01/17 by Mitchell.Wilson Resaving all levels to resolve short form string asset reference warnings. #jira UE-40732 Change 3260918 on 2017/01/17 by Andrew.Rodham Sequencer: Request unloaded levels to be loaded when being made visible through sequencer #jira UE-40082 Change 3260909 on 2017/01/17 by Ben.Marsh Fix error running "Clean" in installed build. #jira UE-40751 Change 3260757 on 2017/01/17 by Jeff.Fisher UE-39654 Crash when launching Google VR project -Via SwitchGameWindowToUseGameViewport we get an early ResizeViewport which does an early Draw. This calls GetStereoProjectionMatrix before the game has ticked and fetched the device info we use to build that matrix. -In this change we make the call to setup that information in the GoogleVRHMD constructor, to ensure it is done before anything tries to use it. -I also added some asserts. #jira UE-39654 #review-3260644 Change 3260637 on 2017/01/17 by Alexis.Matte Fix crash when importing skeletal mesh containing a texture or a material using the same name. #jira UE-40538 Change 3260630 on 2017/01/17 by Marc.Audy When installing a feature pack maintain the include of the template so that any properties inside it are not lost by replacing it with the project's PCH include Update all C++ feature packs to include the original project .h in the files that are copied in to the new project #jira UE-40730 Change 3260600 on 2017/01/17 by matt.barnes Test content for sequencer event tracks #jira UE-29618 Change 3260593 on 2017/01/17 by Mieszko.Zielinski Made FSupportedAreaData export as part of engine API #UE4 #jira UE-40739 Change 3260538 on 2017/01/17 by Marc.Audy Always display axes in debug info, but show -- for value when we don't yet know the ranges #jira UE-40700 Change 3260422 on 2017/01/17 by Marc.Audy Expose level streaming incremental unregister component cvars in the engine streaming section of the project settings #jira UE-10109 Change 3260392 on 2017/01/17 by Ben.Woodhouse Duplicated from CL 3260107: Fix FMonitoredProcess to prevent infinite loop in -nothreading mode #jira UE-40717 Change 3260358 on 2017/01/17 by Chris.Bunner Only validate tonemapper LUT input if actually hooked up. #jira UE-40467 Change 3260327 on 2017/01/17 by Frank.Fella PlatformMediaSource - Fix Validate to check all specified media sources, and change GetURL to get the url for the current platform when running uncooked. #jira UE-40709 Change 3260307 on 2017/01/17 by Allan.Bentham Restore metal compiler's shader source serialization code when the shader is to be compiled at runtime. #jira UE-39701 Change 3260276 on 2017/01/17 by Alex.Delesky #jira UE-40276 - Fixing an issue where a Standalone game launched from the editor cannot toggle fullscreen mode. Change 3260274 on 2017/01/17 by Chris.Wood Added check for null World ptr in AActor::PostEditChangeProperty to fix crash when pasting temporary Actors [UE-40492] - Crash after ejecting from PIE session and selecting a component in the details panel #jira UE-40492 Change 3260230 on 2017/01/17 by Ben.Woodhouse Duplicated from dev-rendering@3232283 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 3260096 on 2017/01/17 by Thomas.Sarkanen Fixed crash when rendering out a level sequence with layered animations When a level contained sequences with layered animations that *werent* taking part in the render (i.e. they were not part of the current master sequence) then their instances were initialized but not ticked. When their components then got a call to evaluate their bone transforms, the cached blends were in an uninitialized state. #jira UE-40654 - Render Movie using separate process crashes capture process Change 3259875 on 2017/01/17 by Dmitriy.Dyomin Fixed: SunTemple is washed out in one color on some Android devices #jira UE-40689 Change 3259011 on 2017/01/16 by Max.Chen Matinee to Level Sequence: Make RegisterTrackConverters pure virtual #jira UE-37328 Change 3258992 on 2017/01/16 by Rolando.Caloca UE4.15 - Integrate fix for outlines (3258807) #jira UE-40690 Change 3258949 on 2017/01/16 by mason.seay Disabled TranslatedMass test #jira UE-29618 Change 3258860 on 2017/01/16 by Max.Preussner Media: Prevent loading of media plug-ins in console apps, such as game servers (OR-34819) #jira OR-34819 Change 3258846 on 2017/01/16 by Max.Preussner MfMedia: Fixed incorrect tracks being played in multi-track media sources (UE-39703) #jira UE-39703 Change 3258813 on 2017/01/16 by Benn.Gallagher Added error on import for APEX clothing files that either have no submeshes or have no submeshes with simulated vertices. #jira UE-40614 Change 3258771 on 2017/01/16 by James.Golding Skip fatal warning in UBodySetup::Serialize if duplicating (e.g. spawning component via SCS with a BodySetup in its template) #jira UE-40418 Change 3258747 on 2017/01/16 by Max.Chen Sequencer: AddUnique SequencerActorTag to prevent multiple tags being added when spawning/despawning. #jira UE-40665 Change 3258630 on 2017/01/16 by Jurre.deBaare CIS IfDef issue fix #JIRA UE-1234 Change 3258541 on 2017/01/16 by Phillip.Kavan [UE-40131] Revised fix that will work for "inclusive" BP nativization with data-only BPs. change summary: - revised code in UBlueprint::BeginCacheForCookedPlatformData() to also support the "inclusive" nativization method #jira UE-40131 Change 3258532 on 2017/01/16 by Max.Chen Sequencer: Fix max row index off by one error . This was always incorrect, but it was masked by the fact that FixRowIndices() was called on the track when the UI gets built. That function was removed from the node layer in CL #3252753 and therefore exposed this bug. #jira UE-40642 Change 3258505 on 2017/01/16 by Marc.Audy Improve messaging when installing vehicle and vehicle adv C++ feature packs #jira UE-40647 Change 3258478 on 2017/01/16 by Matt.Kuhlenschmidt PR #3131: UE-40567: Added nullcheck to FSplinePointDetails (Contributed by projectgheist) #jira UE-40567 Change 3258457 on 2017/01/16 by Jurre.deBaare SpeedTree Billboards rendering with Incorrect Material #fix Ensure that we add a section info entry for the billboard models/lods during SpeedTree importing #jira UE-39677 Change 3258442 on 2017/01/16 by Alexis.Matte Skeletalmesh import, make sure we increment the lod index when animation is not imported #jira UE-40640 Change 3258431 on 2017/01/16 by Jurre.deBaare Back out changelist 3258392 #fix issue was already resolved #jira UE-1234 Change 3258392 on 2017/01/16 by Jurre.deBaare Fix for non-unity CIS #JIRA UE-1234 Change 3258358 on 2017/01/16 by Matthew.Griffin Prevent warning from being shown when XMPP module is not built #jira UE-40616 (I guess LoadModule could be changed to LoadModuleChecked now if they do exist) Change 3258144 on 2017/01/15 by Marc.Audy Fix non-unity CIS errors #jira UE-00000 Change 3258141 on 2017/01/15 by zachary.wilson Adding testing content for Distance Field Indirect Shadows #jira UE-29618 Change 3258049 on 2017/01/14 by Nick.Shin UFE sent incorrect header data on missing file also, it seems that UFE was written to expect clients to close the connection -- (this should be closed manually -- which will flush the data and then close out the socket -- but, since this is a developer tool... leaving this as-is) first, 404 was not sending the required double newline after headers second, since connection are not closed manually (server side) send a dummy payload with content-length data #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3257984 on 2017/01/14 by Aaron.McLeran Attempting another fix for static analysis warning in CIS #jira UE-40645 Change 3257904 on 2017/01/14 by Aaron.McLeran Resolving static analysis warnings reported by CIS #jira UE-40645 Change 3257883 on 2017/01/14 by Aaron.McLeran Fixing build warning with CL 3257826 #jira UE-40645 Change 3257826 on 2017/01/13 by Aaron.McLeran Integrating fixes from Dev-Framework and Odin to Release-415 #jira UE-40645 Change 3257654 on 2017/01/13 by Marc.Audy Until plugins can drive their own dependencies vehicle and vehicle adv feature packs will not compile automatically and will pop up a message log informing the user of the actions they need to manually take. #jira UE-40466 Change 3257608 on 2017/01/13 by John.Pollard PC: Assertion Fail with UPackageMapClient::AddNetFieldExportGroup() viewing replays #jira OR-34522 Change 3257489 on 2017/01/13 by Mitchell.Wilson Removing preview mesh from multiple materials to resolve CIS warnings. #jira UE-40628 Change 3257485 on 2017/01/13 by Chris.Babcock Don't initialize FMinimalDummyForwardLightingResources for unneeded feature levels (below SM4) #jira UE-40602 #ue4 #android Change 3257444 on 2017/01/13 by Matt.Barnes Updating test assets for UEQATC-2967 #jira UE-29618 Change 3257324 on 2017/01/13 by Arciel.Rekman Linux: Update runtime CEF lib as well (UE-401413). - Followup to CL 3256081. #jira UE-40413 (Merging CL 3257241 from Dev-Platform to Release-4.15) Change 3257140 on 2017/01/13 by Lina.Halper Fix crash with deleting all poses #jira: UE-40537 Change 3257066 on 2017/01/13 by Jurre.deBaare CIS fix for game builds #jira UE-1234 Change 3257056 on 2017/01/13 by Ben.Zeigler #jira UE-40318 Fix crash in streamablemanager where callbacks would get called on a deleted manager. This is being rewritten in 4.16, so do a quick fix for 4.15 to avoid the crash Change 3256839 on 2017/01/13 by Jurre.deBaare Added conversion of HLOD transition screen size to new transition screen area values #fix During serialization patch up the values of transition screen size within the hierarchical lod setups #misc Updated the default value to a screen size to screen area equivalent #JIRA UE-40518 Change 3256761 on 2017/01/13 by Mieszko.Zielinski Fixed EQS debug rendering not clearing previously displayed labels if new request has no labels #UE4 #jira UE-40589 Change 3256177 on 2017/01/12 by Josh.Adams - Moved the MfMedia plugin outside of XboxOne directory, because it's a Windows plugin as well (that happens to also work on XboxOne - all public APIs) #jira UE-40391 Change 3256131 on 2017/01/12 by Jamie.Dale Fixing log spam when trying to load an empty font data #jira UE-40555 Change 3256081 on 2017/01/12 by Arciel.Rekman Fixed CEF compatibility problems on Ubuntu 14.04 (UE-40413). - Also deleted Debug version of it. - Change by yaakuro. #jira UE-40413 (Edigrating CL 3256065 from Dev-Platform to Release-4.15) Change 3256046 on 2017/01/12 by Jon.Nabozny Use PxConvexFlag::eSHIFT_VERTICES when cooking meshes to fix baked in transforms. #jira UE-39212 Change 3255939 on 2017/01/12 by mason.seay Rebuilt lighting #jira UE-29618 Change 3255912 on 2017/01/12 by Olaf.Piesche Replicating fix from 3246828 for #jira UE-39249 Change 3255909 on 2017/01/12 by Rolando.Caloca UE4.15 - Support for choosing discrete AMD GPU #jira UE-40546 Change 3255835 on 2017/01/12 by Martin.Wilson Fix newly added virtual bones not being on screen. #jira UE-40516 Change 3255774 on 2017/01/12 by Mark.Satterthwaite Merging 3251926 for Richard.Wallis: #jira UE-38828 Crash after Enabling Forward Shading on Mac and Creating/Editing Materials. Using TGlobalResource to avoid constant resource allocation. Prev fix (in CL 3239454) caused a crash in D3D11 with zero sized resource views. Change 3255771 on 2017/01/12 by Alexis.Matte Fix a crash when re-importing asset with no material #jira UE-40510 Change 3255746 on 2017/01/12 by Jon.Nabozny Change _DEBUG to PX_DEBUG in ConvexHullLib.cpp #jira UE-0000 Change 3255659 on 2017/01/12 by Jon.Nabozny Enable Shifting Vertices during Convex Hull cooking to prevent precision issues. (Copied CL-3249100 from Dev-Phyics-Upgrade to support new flag) #jira UE-39212 Change 3255617 on 2017/01/12 by Ori.Cohen Fix crash when computing mass for an async object. Using passed in rigid body instead of assuming SyncRigidActor #JIRA UE-40458 Change 3255536 on 2017/01/12 by Jamie.Dale Fixed crash when using an object picker against the 'Object' type This also optimizes some filter code to avoid filtering when it would be pointless (and just slows things down). #jira UE-40408 Change 3255451 on 2017/01/12 by Chris.Wood Fixed read only text color in SCommentBubble [UE-40384] - Reference Viewer comment text is difficult to read Also changed DetermineForegroundColor() method in EditableTextBox classes to fallback on ForegroundColorOverride if it is set and ReadOnlyForegroundColorOverride isn't set. #jira UE-40384 Change 3255448 on 2017/01/12 by Chris.Wood Removed blinking cursor/caret on read only editable text layouts. [UE-40502] - Flashing cursor/caret showing in read-only editable text layouts #jira UE-40502 Change 3255445 on 2017/01/12 by Marc.Audy Create the dynamic level streaming persistent object correctly outered to the World rather than the transient package to avoid GetWorld() crashing #jira UE-00000 Change 3255441 on 2017/01/12 by Jon.Nabozny Regenerate collision for the basic Cube mesh to fix resting issues and invalid verts. #jira UE-40478 Change 3255407 on 2017/01/12 by Yannick.Lange VREditor: - Fix: Assertion Failed crash after pressing F8 in PIE while Foliage Mode was selected - Fix: Assertion Failed crash after pressing F8 in PIE while Paint Mode was selected - Added extra checks for other possible future cases #jira UE-39786 UE-39789 Change 3255393 on 2017/01/12 by Chris.Bunner Duplicating CL 3255244: Removed test variable from MaterialExpressionVectorParameter. #jira UE-40517 Change 3255375 on 2017/01/12 by Steve.Robb CIS fix. #jira UE-39556 Change 3255334 on 2017/01/12 by samuel.proctor Corrected QA Container asset to remove pin warning. #jira UE-29618 Change 3255319 on 2017/01/12 by james.cobbett Fixing motion blur issue with test content for Pose Snapshots. #jira UE-29618 Change 3255247 on 2017/01/12 by Nick.Darnell Slate - Slate's Tab Manager is now a bit smarter about allowing Focus/BringToFront attention grabbing methods. In order to make the UI less jumpy it was restricted to only allowing alerts and bring to front to be triggered if you were on the window, or child window of the active application window. That can negatively impact cases where a user takes an action (clicks a link ro button saying open/goto this tab), that is on another window. To work around this limitation, the Tab Manager will also permit the action if Slate is currently processing user input, implying that the action being taken is in direct response to the user pressing a button and interacting with the UI. #jira UE-40313 Change 3255236 on 2017/01/12 by Phillip.Kavan [UE-40131] Non-native child BPs can now properly override a nativized parent BP's components in a cooked build with exclusive Blueprint class nativiation. - Mirrored from //UE4/Dev-Blueprints (CL# 3254024,3254391) #jira UE-40131 Change 3255216 on 2017/01/12 by Rolando.Caloca UE4.15 - Fix compile issue on Vulkan 1.0.37.0 or newer #jira UE-40506 Change 3255206 on 2017/01/12 by Steve.Robb Use outer walking IsA() implementation in editor to get around reinstancing and hot reload issues. #fyi mike.beach #jira UE-39556 Change 3255195 on 2017/01/12 by mason.seay Adjusted slope to fix platform discrepancy #jira UE-29618 Change 3255086 on 2017/01/12 by Jack.Porter Fix XboxOneShaderCompiler.cpp non-unity compilation #jira None Change 3255085 on 2017/01/12 by Jack.Porter Missing HTML5 changes from CL 3254907 #jira UE-39111 Change 3255031 on 2017/01/12 by Jack.Porter More iOS GoogleVR changes missing from CL 3254907 #jira UE-39111 Change 3254991 on 2017/01/12 by Jack.Porter Missing file from CL 3254907 #jira UE-39111 Change 3254907 on 2017/01/11 by Jack.Porter Android MSAA changes - use r.MobileMSAA cvar, support more than 2x, fix issues where targets other than scene color were created with MSAA #jira UE-39111 #jira UE-35849 #jira UEMOB-35 Change 3254810 on 2017/01/11 by Arciel.Rekman Linux: fix for crash on exit (UE-40488). #jira UE-40488 Change 3254617 on 2017/01/11 by Peter.Sauerbrei remake the fix for missing PhysXVehicle library in binary for IOS and TVOS #jira UE-39349 Change 3254489 on 2017/01/11 by mason.seay Other minor improvements to the map #jira UE-29618 Change 3254477 on 2017/01/11 by mason.seay Map tweaks to prevent the vehicle from getting stuck #jira UE-29618 Change 3254431 on 2017/01/11 by Mitchell.Wilson Rebuilt lighting on all StarterContent levels. #jira UE-40468 Change 3254333 on 2017/01/11 by mason.seay Adjusted lightmap on mesh to remove odd rendering splotches #jira UE-29618 Change 3254131 on 2017/01/11 by Rolando.Caloca UE4.15 - Missing dumped shaders #jira UE-40465 Change 3254126 on 2017/01/11 by Jeff.Fisher UE-40422 Vive Motion Controllers unable to Play Haptic Effect -Removed an unnecessary remapping of controllerindex to deviceid, they are the same now. #jira UE-40422 #review-3254084 Change 3254046 on 2017/01/11 by Mark.Satterthwaite Merging 3233811: 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. #jira UE-39935 Change 3254021 on 2017/01/11 by james.cobbett Test content for Pose Snapshot testing #jira UE-29618 Change 3253993 on 2017/01/11 by Alexis.Matte Fix the morph target import #jira UE-40424 Change 3253948 on 2017/01/11 by mason.seay Fixed Level BP logic that was causing Access None error #jira UE-29618 Change 3253884 on 2017/01/11 by mason.seay Updated mesh colors on map. Disabled motion blur #jira UE-29618 Change 3253862 on 2017/01/11 by mason.seay Disabled Always Show Mobile Input (turned on by accident) #jira UE-29618 Change 3253859 on 2017/01/11 by Mark.Satterthwaite Merging 3252866: Fix Metal shader pipeline hash collisions caused by deferring MTLFunction construction until PrepareToDraw so that we may use Function-Constants to specialise the shader source without generating additional permutations. This is required to generate proper tessellation shaders which are specialised against the index-buffer usage & type (none, uint16, uint32). While we're here amend the hash functions to make better use of the existing hash functions to improve the distribution and hopefully reduce the possibility of collisions in future. #jira UE-40357 Change 3253854 on 2017/01/11 by Mark.Satterthwaite Merging 3252859: Fix the calculation of Metal tessellation struct alignment and size to use largest member size, so that we don't assert in debug or cause out-of-bounds access in development/shipping. #jira UE-40410 Change 3253853 on 2017/01/11 by Mark.Satterthwaite Merging 3237394: 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 3253852 on 2017/01/11 by Mark.Satterthwaite Merging 3236850: Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3253834 on 2017/01/11 by mason.seay Updated mobile input textures to be power of two #jira UE-29618 Change 3253807 on 2017/01/11 by Mark.Satterthwaite Merging 3232641 & 3236788 & 3233854 & 3249742 from Dev-Rendering: 3232641: - 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. 3236788: 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. 3233854: More information about texture type validation errors in Metal. 3249742: 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. #jira UE-40200 Change 3253636 on 2017/01/11 by Chris.Wood Improved tracking of runtime and debugger attachment for analytics purposes. [UE-39780] - Change IsDebugger to WasDebuggerPresent in all crash/AS analytics [UE-39777] - Update MTBF IsDebugger state for every heartbeat [UE-39778] - UnrealWatchdog to send WasDebuggerPresent state for app if set [UE-39779] - UnrealWatchdog to send total run time of process Debugger state was previously read once at startup or once at the time of an event. Debugger is now checked during the heartbeat and doesn't reset flag when detached so we know if a session was ever debugged. Also reporting total run time in UnrealWatchdog. Watchdog still doesn't run when debugging but and will never show popups to a debugger user even when forced on with -forcewatchdog. #jira UE-39780, UE-39777, UE-39778, UE-39779 Change 3253281 on 2017/01/10 by Dan.Oconnor Typo fix caused parameter in local struct definition to shadow the local #jira UE-40027 Change 3253231 on 2017/01/10 by Dan.Oconnor Mirror of 3253220 These pins should infer together #jira UE-40427 Change 3253125 on 2017/01/10 by Uriel.Doyon Brought back CL 3242117 and 3238685, which got lost on the way: - Fix for possiblel check fail when changin mobility of actors. - Fix for possible check fail when processing streaming data. #jira UE-39996 Change 3252936 on 2017/01/10 by Marc.Audy CopyPropertiesForUnrelatedObjects needs to consider path not just name of subobjects when matching them up to copy properties and update references Ensure that a reinstanced child actor component ends up pointing at the correct child actor template #jira UE-40027 Change 3252886 on 2017/01/10 by Lina.Halper Fix for invalid AnimCurves when curve is added while running #jira: UE-39826 Change 3252753 on 2017/01/10 by Frank.Fella Sequencer - Change track rows to use separate track nodes in the display node tree, fixes key edit issues on animation and audio tracks. #jira UE-39836 Change 3252640 on 2017/01/10 by Lukasz.Furman fixed NavCollision losing user settings after any property change copy of 3252628 #jira UE-40388 Change 3252614 on 2017/01/10 by Daniel.Wright UStaticMeshComponent::InvalidateLightingCacheDetailed uses MarkRenderStateDirty. Massively speeds up duplication of HISMC with many instances (10+ minutes -> seconds), as InvalidateLightingCacheDetailed gets called for every instance. #jira UE-40406 Change 3252609 on 2017/01/10 by mason.seay Updated map with text actors for more visual clarity #jira UE-29618 Change 3252477 on 2017/01/10 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios #jira UE-39852 Change 3252451 on 2017/01/10 by Daniel.Wright Garbage collection calls UWorld>SendAllEndOfFrameUpdates() on all loaded worlds first so that deferred recreate render states happen before any UObjects are deleted * Fixes rendering thread crashes in the order of events of 1) SetMaterial 2) GC 3) Rendering command that dereferences the UMaterial #jira UE-30089 Change 3252418 on 2017/01/10 by Ben.Zeigler #jira UE-40390 Fix crash saving blueprint with an inherited DataTable/CurveTable reference. Delta serialization meant that the necessary name wasn't in the name table, so adding it manually now. Change 3252410 on 2017/01/10 by Max.Chen Sequencer : Filter sections on select in range Copy from Dev-Sequencer #jira UE-37854 Change 3252385 on 2017/01/10 by Max.Chen Sequencer: Update auto tangents when setting key time. This fixes a bug where dragging keys with auto tangents doesn't recompute tangents properly. #jira UE-39923 Change 3252360 on 2017/01/10 by Allan.Bentham Remove incorrect assert for iOS. #jira UE-40385 Change 3252297 on 2017/01/10 by mason.seay Test assets for suspending cloth simulation #jira UE-29618 Change 3252125 on 2017/01/10 by Mieszko.Zielinski Fallout fix after removal of BlackboardKeyUtils::CalculateComparisonResult declaration from the AIModule #UE4 #jira UE-40099 Change 3251987 on 2017/01/10 by Allan.Bentham Fix HQ DoF #jira UE-35548 Change 3251856 on 2017/01/10 by Jack.Porter Fixed Get Instances Overlapping Box blueprint function due to issue with FBox constructor. Added MakeBox and MakeBox2D kismet native functions Fixed box overlap test ignoring instance scale #jira UE-34409 Change 3251519 on 2017/01/09 by Daniel.Wright [Copy] Fixed GLandscapeLayerUsageMaterial getting GC'ed #jira UE-40055 Change 3251146 on 2017/01/09 by Lina.Halper Fix on stable track data carrying over to pose asset - decided to clean up track data in anim sequence since we don't really need that data anymore #jira: UE-40351 #code review: Martin.Wilson Change 3251056 on 2017/01/09 by Lina.Halper fixed crash when pose node contains stale data when updating source. #jira: UE-40258 #code review; Thomas.Sarkanen Change 3251035 on 2017/01/09 by Mitchell.Wilson Removed preview mesh in M_GodRay to resolve CIS warning. Relinked textures used in two materials to resolve CIS warnings. #jira UE-40350 Change 3250959 on 2017/01/09 by Mitchell.Wilson Updating master sequence playback end time so the final audio track can be heard. Updating multiple shots to resolve issues with audio not playing back properly. #jira UE-40321 UE-40335 Change 3250896 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed level visibility not working in PIE #jira UE-40082 Change 3250895 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed evaluation of overlapping audio and skeletal aninmation sections - Audio and skeletal animation sections now continue to support legacy evaluation order. Overlapping sections of the same priority on the same row will be filtered out such that only the section with the latest start time will be evaluated. #jira UE-40320 Change 3250830 on 2017/01/09 by Ben.Woodhouse Duplicated from //ue4/Release-4.14 CL 3238182 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. #jira UE-38818 Change 3250790 on 2017/01/09 by Lauren.Ridge Fixing backspace on VR Editor numberpad menu. #jira UE-39770 Change 3250681 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@3249296: 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 3250680 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@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 #jira UE-39949 Change 3250609 on 2017/01/09 by Steve.Robb Maximum number of stats-using threads increased to 512. #jira UE-38153 Change 3250604 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed incorrect seed being used when generating new animation type IDs for object properties #jira UE-40327 Change 3250589 on 2017/01/09 by Matthew.Griffin Changed publish symbols node to use runtime dependencies instead of manually including the whole PhysX folder Avoids unused configs and VS2013 files #jira UE-39171 Change 3250578 on 2017/01/09 by Matthew.Griffin Removed art tools from released build now that they are available separately on the Marketplace Change 3250282 on 2017/01/07 by Mieszko.Zielinski Fixed UNavigationSystem::bNavigationAutoUpdateEnabled getting ignored by recent addition to related condition in UNavigationSystem #UE4 Reported by UT team. Replication of a fix from Dev-Framework that didn't make it to 4.15 stream #jira UE-40324 Change 3250276 on 2017/01/07 by Mieszko.Zielinski Fixed not being able to add elements to UAIPerceptionStimuliSourceComponent.RegisterAsSourceForSenses for instances manually placed on the map #UE4 #jira UE-31711 Change 3250219 on 2017/01/07 by Mieszko.Zielinski Extended comment to AISenseConfig_Sight::PeripheralVisionAngleDegrees to make it clear how it works #UE4 #jira UE-31731 Change 3250147 on 2017/01/07 by Andrew.Rodham Added missing includes #jira UE-40019 Change 3250096 on 2017/01/06 by Nick.Shin refetch on timed out GET/POST requests correction to: UE_MakeHTTPDataRequest #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3249963 on 2017/01/06 by Mieszko.Zielinski removed unused and undefined BlackboardKeyUtils::CalculateComparisonResult #UE4 #jira UE-40099 Change 3249829 on 2017/01/06 by Alexis.Matte turn on the material name clash feature for the content browser importer. #jira UE-40298 Change 3249791 on 2017/01/06 by andrew.porter QAGame: Added level blueprint logic to QA-Sequencer that lets tester override sequence bindings #jira UE-29618 Change 3249755 on 2017/01/06 by Jamie.Dale Some fixes for object reference detection and notification when deleting assets #jira UE-40121 Change 3249727 on 2017/01/06 by James.Golding #jira UE-40242 Change 3249707 on 2017/01/06 by Mitchell.Wilson Removing preview mesh with incorrect path from materials to resolve warnings in CIS. #jira UE-40311 Change 3249543 on 2017/01/06 by Michael.Dupuis #jira UE-40299: validate if UISettings is valid Change 3249506 on 2017/01/06 by Alexis.Matte Make sure we use the correct LodIndex when importing a new LOD in case a previous LOD import fail. #jira UE-40240 Change 3249477 on 2017/01/06 by Ori.Cohen Fix incorrect warning when moving kinematic objects during simulation. #JIRA UE-40290 Change 3249472 on 2017/01/06 by Andrew.Rodham Sequencer: Undo now works as expected when editing the properties of a key #jira UE-40019 Change 3249390 on 2017/01/06 by Mitchell.Wilson Removing preview meshes with improper path from materials to resolve CIS warnings in landscape mountains sample. #jira UE-40300 Change 3249317 on 2017/01/06 by Alexis.Matte Fix a crash when loading skeletalmesh with no section #jira UE-40249 Change 3249294 on 2017/01/06 by Mitchell.Wilson Updated defaultengine.ini for Match 3 to resolve warnings in CIS. ServerDefaultMap and TransitionMap had invalid paths. #jira UE-40295 Change 3249213 on 2017/01/06 by Chris.Bunner Fixed up logic for windowed/fullscreen output display selection when working with HDR. Now selects the most appropriate display if HDR enabled, else current monitor window is on. FullscreenDisplay commandline functions regardless of HDR support. #jira OR-33525, OR-33536, OR-33540, OR-33520 Change 3249135 on 2017/01/06 by Martin.Wilson Fix root motion issues on additive animations. - Fix scale issue on resetting root bone - Fix loss of root motion when animation is additive. #jira UE-40232 Change 3248522 on 2017/01/05 by Alexis.Matte Fix a crash when reimporting morph target. Also fix a crash when initiating ColorVertexBuffer with NULL value #jira UE-40201 Change 3248271 on 2017/01/05 by Andrew.Rodham Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence #jira UE-40234 Change 3248092 on 2017/01/05 by Ben.Marsh UBT: Remove the [Obsolete] attribute from methods in TargetRules; the [ObsoleteOverride] attribute gives a much better (and more concise) warning with specific instructions on how to resolve it. Change 3248091 on 2017/01/05 by Marcus.Wassmer Tick renderthreadtickables in -onethread to avoid leaks. #jira UE-40248 Change 3248063 on 2017/01/05 by Marc.Audy Route FAudioDevice::StopAllSounds to the audio thread if called on the game thread #jira UE-40243 Change 3247995 on 2017/01/05 by Maciej.Mroz NativizationSummary object is always present. manually merged cl#3247985 from Dev-Blueprints #jira UE-40035 Change 3247873 on 2017/01/05 by Chad.Garyet Adding "Generate QA Labels" buildgraph node and automation script. Port of createNewLabel and createMinimumLabel python scripts into UAT #jira UEB-725 Change 3247855 on 2017/01/05 by Nick.Shin refetch on timed out GET/POST requests #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3247737 on 2017/01/05 by Marc.Audy static mesh component instance data now correclty inherits from pritive component instance data instead of skipping it and inheriting directly from scene component instance data #jira UE-40053 Change 3247723 on 2017/01/05 by mason.seay Asset for suspend cloth bug #jira UE-29618 Change 3247708 on 2017/01/05 by Mitchell.Wilson Updating project settings to disable dbuffer decals to resolve rendering issues in Showdown while using -game -vr #jira UE-40195 Change 3247652 on 2017/01/05 by Martin.Wilson Fixes for animation notifies window -Fix notify not being removed from skeleton -Fix crash where editor is not refreshed after notify removal #jira UE-40154 Change 3247638 on 2017/01/05 by mason.seay Test assets for cloth suspension #jira UE-29618 Change 3247630 on 2017/01/05 by Alexis.Matte Prevent crash when the import fail and we have no staticmesh created #jira UE-40024 Change 3247556 on 2017/01/05 by Ben.Marsh Fix non-unity compile error. Change 3247547 on 2017/01/05 by Jurre.deBaare Crash while using the Delete Button in the HLOD Outliner while a Generated Proxy Mesh is opened in the Static Mesh Editor #fix Unify path for both delete cluster options in the outliner UI #jira UE-40066 Change 3247539 on 2017/01/05 by Benn.Gallagher Fixed serialization crash for simplified skeletal meshes leading to corrupted assets that crash on load after skin weight buffer changes. #jira UE-40199 Change 3247515 on 2017/01/05 by Allan.Bentham Fix inverted planar reflections when mobileLDR Fixed incorrect gamma 2 planar reflection rendering when mobileLDR #jira UE-32868 Change 3247502 on 2017/01/05 by Dmitriy.Dyomin Fixed: Single digit frame rate when sculpting landscape foliage. #jira UE-39532 Change 3247232 on 2017/01/04 by Ben.Marsh Remove private include from public header. Prevents compiling samples from installed build of the engine without private headers. #jira UE-40135, UE-40137, UE-40139, UE-40140, UE-40141, UE-40142, UE-40143, UE-40144 Change 3247002 on 2017/01/04 by Chris.Babcock Changed Vulkan hitchy pipeline log message verbosity #jira UE-38354 #ue4 #android #dontbackcopy Change 3246927 on 2017/01/04 by matt.barnes Updating QAGame content to facilitate UEQATC-2969 #jira UE-29618 Change 3246894 on 2017/01/04 by Mike.Beach Mirroring CL 3245322 from Dev-BP Fixed a crash when implementing a native interface in a BP #jira UE-40155, UE-40203 Change 3246830 on 2017/01/04 by Chris.Bunner Allow AllocGBuffer call when in simple-forward so dummy uniform buffer creation can occur. #jira UE-39756 Change 3246816 on 2017/01/04 by Jon.Nabozny Fix Anim Notifies Tab not opening in Animation Editor. #JIRA UE-40134 Change 3246804 on 2017/01/04 by Ori.Cohen Touch engine file to trigger re-link. #JIRA UE-40156 Change 3246709 on 2017/01/04 by mason.seay Updated map #jira UE-29618 Change 3246606 on 2017/01/04 by Ori.Cohen Fix for sweeps taking too long time (OR-32839). - Exhaustive investigation uncovered apparent numerical problems in this code (when compiling with clang 3.9.x with -ffast-math). - Current solution can result in overshoot for certain trace extents, but they are not expected to be a practical problem in Unreal. - NVidia is aware and will investigate a better solution. #tests Compiled Linux server with the changed PhysX and continuously ran bot matches for about a day. #JIRA UE-40156 Change 3246571 on 2017/01/04 by Marc.Audy Look at the body instance's desired collision enabled value rather than the primitive component's current collision enabled value when determining whether physics state should be created #jira UE-39994 Change 3246527 on 2017/01/04 by tim.gautier QAGame: BP_MediaPlayer now displays the name of the MediaPlayer plugin currently in use during playback #jira UE-29618 Change 3246480 on 2017/01/04 by mason.seay Map update #jira UE-29618 Change 3246470 on 2017/01/04 by Ori.Cohen Guard against infinitely thin geometry which fixes some nans. This showed up as issues in various projects #JIRA UE-00000 Change 3246413 on 2017/01/04 by Jon.Nabozny Cube asset did not have Tri Meshes. Reimported to fix the issue. -- Copied from 3233164 -- #jira UE-39657 Change 3246388 on 2017/01/04 by Jon.Nabozny Set 'p.MoveIgnoreFirstBlockingOverlap' to be enabled by default (3158732). This causes collision behavior to remain unchanged unless people opt in to the new behavior. -- Copied from 3239735 (bot health fixed by a different CL) -- #jira UE-39387 Change 3246352 on 2017/01/04 by Jon.Nabozny Fix FPredictProjectilePathParams to use a valid default value for TraceChannel. This requires the use of a new bool bTraceWithChannel which is enabled by default. -- Copied from 3239765 -- #JIRA UE-39726 Change 3246341 on 2017/01/04 by Ori.Cohen Allow vehicles to inherit from PawnMovementComponent and only use the pawn/ai capabilities when a Pawn owner is used. #JIRA UE-39508 Change 3246178 on 2017/01/04 by Andrew.Rodham Sequencer: When playback stops naturally, the play position is set to the boundary that caused playback to stop (the end if playing forwards, the start if playing backwards) - This is to reconcile the movie scene sequence player with previous behaviour #jira UE-40076 Change 3246102 on 2017/01/04 by Benn.Gallagher Fixed single threaded physics dispatcher triggering checks from clothing when running with a CPU with two or fewer cores. #jira UE-39811 Change 3246100 on 2017/01/04 by Benn.Gallagher Fixed ensure triggered when using root motion with sub instances Fixed crash reinstancing an active anim class that had subinstances #jira UE-39582 #jira UE-39579 Change 3246092 on 2017/01/04 by Marc.Audy PR #3082: Improve comment for UInputComponent (Contributed by Soleone) #jira UE-40098 Change 3246084 on 2017/01/04 by Matthew.Griffin Remove bad files Change 3246076 on 2017/01/04 by Matt.Kuhlenschmidt Fixed all non-editable text properties having a double disabled effect. The text box is read only which prevents edting but still allows copying text from it. This feature had regressed and the disabled effect on top of the read only effect made it too difficult to see the text. #jira UE-39652 Change 3246043 on 2017/01/04 by Steve.Robb Use of CastChecked instead of Cast in implementations of IStructSerializerBackend::WriteProperty. This is both more efficient and will hopefully make it easier to diagnose the issue. #jira UE-39872 Change 3246032 on 2017/01/04 by Martin.Wilson Change FindBoneIndex to FindRawBoneIndex (final bone maps are not built until after all adding is done so they will not be found) #jira UE-40105 Change 3246016 on 2017/01/04 by Andrew.Rodham Editor: Insert/Duplicate/Delete menu on array properties now only closes itself on click, rather than all menus - This allows us to edit such properties on context menus #jira UE-39998 Change 3246005 on 2017/01/04 by Thomas.Sarkanen Fixed asset attachment issues in Skeleton Tree Assets were being attached uniquely, so only one asset could be attached to a bone/socket. However the calling code didnt know that the unique attachment function just gave up, so the item just got added to the bottom of the tree. The attachment filter was not set correctly to allow for bone attatchments, so only sockets could be attached to. The attach parent name was not initialized, so assets could not be deleted one at a time. #jira UE-40040 - With multiple Preview assets on one bone, only one appears in Skeleton Tree #jira UE-40041 - Preview assets appear at the bottom of the skeleton tree Change 3246002 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed actor tick prerequisites not getting set up correctly for master sequences #jira UE-39975 Change 3245979 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed scrubbing audio tracks not working propertly #jira UE-40048 Change 3245978 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed dropping a level onto a level visibility section not marking the track as changed, and not correctly creating a transaction #jira UE-39998 Change 3245977 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed crash caused by lingering persistent evaluation data #jira UE-40064 Change 3245971 on 2017/01/04 by Dmitriy.Dyomin Fixed: Using Set World Origin Location will cause the player pawn to stutter #jira UE-40022 Change 3245725 on 2017/01/03 by Matt.Barnes Further improvments on test assets for UEQATC-2963 #jira UE-29618 Change 3245658 on 2017/01/03 by Arciel.Rekman Linux: fix ARM32 build (UE-39913). #jira UE-39913 (Redoing CL 3240982 from Dev-Platform in Release-4.15) Change 3245577 on 2017/01/03 by Mason.Seay More vehicle updates #jira UE-29618 Change 3245556 on 2017/01/03 by Matt.Barnes Updating test content for UEQATC-2963 #jira UEQATC-2963 Change 3245461 on 2017/01/03 by mason.seay Updating Inertia Tensor Scale to improve Vehicle Handling #jira UE-40013 Change 3245442 on 2017/01/03 by Jeff.Fisher UEVR-495 Assert when switching to 2d mode. sceHmdReprojectionStart failing. -There was a race condition between switching output modes on the render thread and sceHmdReprojectionStart on the RHI thread. The flush fixes that. The reprojection would simply have failed that frame previously in shipping which would not matter much as we are switching output modes anyway. #jira UEVR-495 #review-3245374 Change 3245427 on 2017/01/03 by Jeff.Fisher UEVR-456 check if we are using camera before doing camera disconnected dialog on PSVR -If the tracker is active, but we are tracking nothing (ie we have the morpheus hmd tracking plugin, and started up with it, but switched to 2d mode) don't pop up the camera setup warning until we start trying to track something again. -This is useful for apps that have 2d and vr modes. #jira UEVR-456 #review-3245372 Change 3245329 on 2017/01/03 by mason.seay Level and vehicle tweaks #jira UE-29618 Change 3245275 on 2017/01/03 by Chris.Babcock Added EngineVersion to AndroidManfiest.xml metadata #jira UE-40123 #ue4 #android Change 3245235 on 2017/01/03 by Guillaume.Abadie Cherry picks CL 3234813 from Dev-Rendering: Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3245183 on 2017/01/03 by Chris.Babcock Added missing #undef LOCTEXT_NAMESPACE to some files (contributed by projectgheist) #jira UE-40103 #PR #3085 #ue4 #android Change 3245120 on 2017/01/03 by mason.seay Missed some assets #jira UE-29618 Change 3245116 on 2017/01/03 by mason.seay Mass fucntional test #jira UE-29618 Change 3245049 on 2017/01/03 by Ben.Marsh PR #3086: Fixed ScriptGeneratorPlugin #includes (Contributed by projectgheist) Change 3244924 on 2017/01/03 by Ben.Zeigler #jira UE-40057 Fix regression in public access for SwapPlayerControllers, from GitHub #3072 Change 3244831 on 2017/01/03 by Mitchell.Wilson Fixed hole in collision around level. #jira UE-39576 Change 3244817 on 2017/01/03 by Matthew.Griffin Change check for files being under engine directory to avoid problems with relative paths #jira UE-40096 Change 3244801 on 2017/01/03 by Andrew.Rodham Editor: Fixed color picker not working when opened from a details panel on a context menu - When a color picker is opened from a details panel that's on a context menu, it now opens as a sub menu - Added the ability to find an open menu from a widget path to FSlateApplication #jira UE-39932 Change 3244776 on 2017/01/03 by Matt.Kuhlenschmidt Fix window handle and device context being accessed by scene viewports after the underlying window has been destroyed by the OS. This is an invalid state on linux and using some vr devices. #jira UE-7388 Change 3244672 on 2017/01/03 by Ben.Marsh Search all directories containing universal CRT installations from the registry, rather than assuming that the first one found will contain the universal CRT version we want to use. Attempt to fix issues described in PR #3059. Change 3244668 on 2017/01/03 by Thomas.Sarkanen Added "Reimport Animation" and "Export to FBX" to the animation editor toolbar Options were in the asset menu before. #jira UE-39643 - Missing "Reimport" option for animation assets Change 3244667 on 2017/01/03 by Thomas.Sarkanen Reduced default URO distances in-line with new LOD calculations New values should give (roughly) the same effect as the older values with the older system. #jira UE-39939 - URO LOD distance factors different with the new screen size metric Change 3244654 on 2017/01/03 by Matthew.Griffin Added functionality to specify Loading Phase for plugin templates Changed Blueprint Library Template so that it loads pre loading screen and can be linked correctly in blueprints that use it #jira UE-38826 Change 3244631 on 2017/01/03 by Dmitriy.Dyomin Fixed: TM_Landscape_LOD Folder does not Live Update contents after generating LODs with Create Per Package Asset #jira UE-37368 Change 3244548 on 2017/01/02 by Jack.Porter Fix for Post-process Materials rendering incorrectly in editor mobile preview after viewport is resized #jira UE-39905 Change 3244389 on 2016/12/30 by Phillip.Kavan [UE-39816] Fix broken pin links caused by renaming interface function input/output parameters prior to compiling the interface, but after renaming the function itself. Mirrored from //UE4/Dev-Blueprints (CL# 3244388). #jira UE-39816 Change 3244248 on 2016/12/29 by laz.matech Saved the new sublevel in the persistent level and set it to hidden by default #jira UE-29618 Change 3244213 on 2016/12/29 by laz.matech Added a sublevel to QA-Sequencer map #jira UE-29618 Change 3243857 on 2016/12/27 by samuel.proctor Altered Container asset to have proper console input #jira UE-29618 Change 3243852 on 2016/12/27 by Mason.Seay Forgot config file #jira UE-29618 Change 3243847 on 2016/12/27 by mason.seay Improved mobile input #jira UE-29618 Change 3243536 on 2016/12/24 by Phillip.Kavan [UE-39944] Extend the GetClassDefaults node to include output pin exceptions for TSet/TMap properties (i.e. mirror safeguards already in place for TArray). Mirrored from //UE4/Dev-Blueprints (CL# 3243210). #jira UE-39944 Change 3243535 on 2016/12/24 by Phillip.Kavan [UE-39816] Renaming interface input/output parameters will no longer cause broken pin links at interface function call sites in Blueprints that are currently loaded. Mirrored from //UE4/Dev-Blueprints (CL# 3243207). #jira UE-39816 Change 3243534 on 2016/12/24 by Phillip.Kavan [UE-39733] Fix incorrect graph pin value display names for user-defined enum types. Mirrored from //UE4/Dev-Blueprints (CL# 3239965). #jira UE-39733 Change 3243532 on 2016/12/24 by Phillip.Kavan [UE-39854] Fix nativized assets build error when there are no native code dependencies. Mirrored from //UE4/Dev-Blueprints (CL# 3239778). #jira UE-39854 Change 3243529 on 2016/12/24 by Phillip.Kavan [UE-38999] Dump component tree node hierarchy to the output log on error state during widget generation. Mirrored from //UE4/Dev-Blueprints (CL# 3239289). #jira UE-38999 Change 3243442 on 2016/12/23 by mason.seay QAGame cleanup - Replacing copy pose from mesh test assets #jira UE-29618 Change 3243215 on 2016/12/22 by Dmitriy.Dyomin Fixed: Switching to ES2 feature level preview renders black in editor #jira UE-40009 Change 3243185 on 2016/12/22 by Ryan.Vance #jira UEVR-478 Integrating 3235308 Mono changes from DevVR. Change 3243183 on 2016/12/22 by Ryan.Vance #jira UEVR-455 Integrating 3243173 post present call back implementation from 4.14.1 Change 3243182 on 2016/12/22 by Ryan.Vance #jira UE-39269 Working around a nullptr deref in the Oculus runtime. Change 3243153 on 2016/12/22 by mason.seay WIP map update #jira UE-29618 Change 3243128 on 2016/12/22 by andrew.porter QAGame: Adding Actor Sequence test content for a crash. #jira UE-29618 Change 3243117 on 2016/12/22 by Jeff.Fisher UE-34004 GitHub 2659 : Implement support for OpenVR controller roles. -Rather than assigning unreal hands to controllers in the order the controllers are connected assign unreal hands to match the ones the API is using. -We now defer setting up controllers that are disconnected. This lets connected controllers, that may have hand preference from steam, occupy their desired hands first. If a controller is connected later and does not have a role it is assigned to an unoccupied hand or to the right hand. -This can still end up ignoring role in the following circumstance (and I can get it to do this): get one controller to prefer'right' and the other to have no preference. Power off the 'right' prefering controller. Start the game with only the no-preference controller on. The game will put that controller in the right slot, because the api gives it no other hints. Then power on the controller that preferred 'right'. That controller will now be assigned left, because right is occupied. I don't see a way around that without the ability to switch which hand a controller is associated with at runtime. -This does not yet handle starting with 2 controllers, disconnecting one, then connecting a third controller well. That did not work before either. A new Jira was created for that. #2659 #jira UE-34004 #review-3231154 Change 3243093 on 2016/12/22 by mason.seay Some tweaks to vehicle levels #jira UE-29618 Change 3243084 on 2016/12/22 by andrew.porter QAGame: Cleaned up Sequencer_OverrideBindings #jira UE-29618 Change 3243009 on 2016/12/22 by andrew.porter QAGame: Renaming actor in Sequencer_OverrideBindings. #jira UE-29618 Change 3243003 on 2016/12/22 by andrew.porter QAGame: Removing override bindings from level sequence #jira UE-29618 Change 3242996 on 2016/12/22 by andrew.porter QAGame: Slight tweak to QA-Sequencer. #jira UE-29618 Change 3242982 on 2016/12/22 by Marc.Audy Properly reenable stats sounds in both game and level editor #jira UE-40015 Change 3242959 on 2016/12/22 by mason.seay Test map for vehicles and moving meshes #jira UE-29618 Change 3242934 on 2016/12/22 by andrew.porter QAGame: Adding test content to QA-Sequencer for Override Bindings #jira UE-29618 Change 3242870 on 2016/12/22 by Mason.Seay QAGame footprint reduction: Clearing out content (were in for old bug reports) #jira UE-29618 Change 3242799 on 2016/12/22 by tim.gautier QAGame - Adding the following assets for Sequencer Event Track testing: -TM-Sequencer_EventTrack + BuildData -QA_LightStruct -Sequencer_EventTrack #jira UE-29618 Change 3242792 on 2016/12/22 by samuel.proctor Correcting Container test asset for proper output #jira UE-29618 Change 3242727 on 2016/12/22 by Dmitriy.Dyomin Fixed: LoadLevelIntstance returns a reference that can't be used to send an interface message #jira UE-40005 Change 3242666 on 2016/12/22 by Dmitriy.Dyomin Fixed: Packaging Android app for Mali Graphics Debugger v4.3.0 fails #jira UE-39534 Change 3242373 on 2016/12/21 by Ori.Cohen Allow vehicles to override inertia tensor after any mass properties have changed. #JIRA UE-39566 Change 3242323 on 2016/12/21 by Josh.Adams - Somehow my last change just got completely lost in the edigrate shuffle. Or something. I have no idea! Rdoing it #jira UE-39966 Change 3242286 on 2016/12/21 by mason.seay Vehicle Assets and Maps #jira UE-29618 Change 3242284 on 2016/12/21 by Marc.Audy Fix "stat sounds" not working after PIE completes and a new one is begun #jira UE-32743 #jira UE-39511 Change 3242281 on 2016/12/21 by Ori.Cohen Fix multi select being very slow in phat #JIRA UE-39559 Change 3242229 on 2016/12/21 by Ben.Marsh Fixup workspace for building PhysX. Change 3242227 on 2016/12/21 by Marc.Audy Properly update listener position for stat sounds #jira UE-38850 Change 3242218 on 2016/12/21 by Ori.Cohen Fix physx html5 compilation APEX issue. #JIRA UE-39566 Change 3242174 on 2016/12/21 by Ori.Cohen Fix incorrect moment of inertia for convex elements with translation. #JIRA UE-39566 Change 3242145 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix for vehicle stability #JIRA UE-38710 Change 3242139 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix: Fix crash when setting collision trace in construction script. #JIRA UE-39341 Change 3242088 on 2016/12/21 by Alexis.Matte Fix the drag and drop material on level instance to drop on the correct material slot Fix the serialization of the staticmesh property FMeshSectionInfoMap #jira UE-39952 Change 3242081 on 2016/12/21 by Andrew.Rodham Sequencer: Make details view focused when resetting inner struct contents to ensure that focus path is valid. #jira UE-39851 Change 3242079 on 2016/12/21 by Andrew.Rodham Sequencer: Evaluation templates are now only fully rebuilt in PIE, and will not re-cycle track identifiers - This addresses issues with newly compiled tracks recycling the persistent data of old stale tracks. - This commit also ensures we don't fully rebuild templates in the editor when in Sequencer #jira UE-39882 Change 3242078 on 2016/12/21 by Andrew.Rodham Sequencer: Fixed crash when deactivating a section in sequencer #jira UE-39880 Change 3242026 on 2016/12/21 by Josh.Adams - Fixed compile errors in tools after NVNRHI move #jira UE-39966 Change 3241994 on 2016/12/21 by andrew.porter QAGame: Disabled auto play on Sequencer_AnimNotify. #jira UE-29618 Change 3241989 on 2016/12/21 by Mitchell.Wilson Resolving CIS warnings in Content examples. Fixed up redirectors. Moved a texture from developer folder into project and relinked in POM_Debug material. Fixed up BP Commentary Box which was failing to compile. Updated spawn rate on Pulse Ring so it works as intended. #jira UE-39984 Change 3241986 on 2016/12/21 by mason.seay Vehicle Landscape Test map (mainly for crash investigation) #jira UE-29618 Change 3241914 on 2016/12/21 by Josh.Adams - Removed invalid and confusing .ini settings #jira UE-39982 Change 3241902 on 2016/12/21 by Josh.Adams - Moved NVNRHI stuff out of RHI.Build.cs #jira UE-39966 Change 3241889 on 2016/12/21 by andrew.porter QAGame: Added new level sequence to QA-Sequencer level #jira UE-29618 Change 3241884 on 2016/12/21 by Alexis.Matte Make sure the color grading cursor follow the mouse by using the exponent value when painting the cursor. #jira UE-39834 Change 3241869 on 2016/12/21 by andrew.porter QAGame: Adding test content for Sequencer Animation Notifies #jira UE-29618 Change 3241809 on 2016/12/21 by Chris.Wood Fix non-unity build errors in UnrealWatchdog. [UE-39940] - GitHub 3054 : Added EngineBuildSettings.h to UnrealWatchdog.cpp PR #3054: Added EngineBuildSettings.h to UnrealWatchdog.cpp (Contributed by ryanjon2040) #jira UE-39940 Change 3241806 on 2016/12/21 by Marc.Audy Don't unload and then reload streaming levels that are marked to be hidden. #jira UE-39883 Change 3241802 on 2016/12/21 by Marc.Audy Add new object flag RF_NeedInitialization to indicate that ~FObjectInitalizer and PostInitProperties have not been executed for the object Do not allow Modify calls on Objects that have not been initialized #jira UE-39731 Change 3241790 on 2016/12/21 by Marc.Audy Don't rerun construction scripts when an actor has seamless traveled from another level #jira UE-39699 Change 3241789 on 2016/12/21 by Marc.Audy Check Owner has a valid world before trying to access Scene (4.14.2) #jira UE-39560 Change 3241786 on 2016/12/21 by Marc.Audy Fixed crash when seamless travelling in PIE from levels other than the current editor level with a streaming sublevel shared with the current editor level #jira UE-39407 Change 3241781 on 2016/12/21 by Mitchell.Wilson Fixed up redirectors for SkeletalMesh and Personal Walkthroughs. #jira UE-30953 Change 3241747 on 2016/12/21 by mason.seay Tag Query test map and assets #jira UE-29618 Change 3240938 on 2016/12/20 by Ben.Marsh Remaking QFE fixes from 4.14 branch. Change 3240740 on 2016/12/20 by Ben.Marsh Update branch name for analytics. [CL 3272229 by Matthew Griffin in Main branch]
2017-01-25 16:23:41 -05:00
}
case GL_TEXTURE_3D:
case GL_TEXTURE_2D_ARRAY:
case GL_TEXTURE_CUBE_MAP:
case GL_TEXTURE_CUBE_MAP_ARRAY:
FOpenGL::FramebufferTexture(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0 + RenderTargetIndex, RenderTarget->GetResource(), MipmapLevels[RenderTargetIndex]);
break;
default:
FOpenGL::FramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0 + RenderTargetIndex, GL_RENDERBUFFER, RenderTarget->GetResource());
break;
}
}
else
{
// Bind just one slice of the object
switch( RenderTarget->Target )
{
case GL_TEXTURE_2D:
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3443236) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3385304 on 2017/04/07 by Ryan.Vance #jira UEVR-694 GL_TEXTURE_EXTERNAL_OES support hlslcc changes to support the TextureExternal keyword RHI changes to support RHICreateTextureExternal2D Fall back to a standard 2d texture on platforms without extension support Did not implement a shader cache solution as the resource is expected to be shared across processes, so recreating it from the shader cache would be a bad thing Change 3391376 on 2017/04/12 by Ben.Marsh Build: Add additional UE4Game targets for Dev-VR, to catch build failures in plugins that are disabled for games. Change 3392546 on 2017/04/13 by Jeff.Fisher Duplicating in Dev-VR (from Release-4.16) UEVR-734 PSVR sdk 4.5 tracking improvements UEVR-738 PSVR prediction time dynamic adjustment -New tracker profile and camera config to activate ps4 tracking improvements. -Calculating prediction time based on flip timings rather than assuming it will be a particular value. This makes the prediction time nearly perfect as long as we meet framerate and lets it adapt to the timing of when the prediction is made in the frame. -Changed reprojection fliparg to be the frame number, rather than a separate incrementor, so its more useful for debugging. #jira UEVR-734 #review-3391147 Change 3394508 on 2017/04/14 by Jeff.Fisher merge fix ShaderCacheTypes.h Change 3399628 on 2017/04/19 by Jeff.Fisher UEVR-582 PSVR not applying WorldToMeters for position accessor -Changed to apply WorldToMeters scale when we get the position data from PS4Tracker, so that the positions stored in MorpheusHMD are always in world space. #jira UEVR-582 #review-3398683 Change 3404200 on 2017/04/21 by Jeff.Fisher UEVR-239 GearVR headset worn/notworn notifications -Implemented the IHeadMountedDisplay accessor for this, and also hooked up the delegates that fire on PS4. -Implemented the IHeadMountedDisplay accessor for PS4. #jira UEVR-239 #review-3404174 @keli.hloedversson Change 3412688 on 2017/04/27 by Jeff.Fisher UEVR-766 PSVR test level improvements -VR/TM-MotionControllers --Hooked up QA_MoCoAll to the cycle of playercontrllers. --Added instructions for motion tracked device management controls, if the platform supports. -QA_MoCoAll --Switched tracking state colors to tracking spheres, becuase the arrows need to be not rendered in game for some configuration. --Added duplicate motion controller component to pad and another duplicate with disabled low latency tracking. -QA_MoCoDualShock --removed gun controller from this playercontroller, its redundant to the one in QA_MoCoAll -QA_MoCoComponents --world scale from controllers mode added ctrl-w, this is a good way to torture test world scale. #jira UEVR-766 Change 3413801 on 2017/04/28 by Keli.Hlodversson #jira UE-40220 StereoLayer splash layers are hardcoded to 8 by 4.5 meters (16:9 aspect ratio) on OculusRift Change 3429305 on 2017/05/08 by Keli.Hlodversson SteamVR Layers don't honor the (absence of) LAYER_FLAG_QUAD_PRESERVE_TEX_RATIO flag Avoid potential divide by zero in the DefaultStereoLayers implementation of the same flag. #jira UE-42855 Change 3429362 on 2017/05/08 by Ryan.Vance Integrating 3416918 for #jira UE-44404 Change 3429426 on 2017/05/08 by Keli.Hlodversson Set up a Test case for Layers in QA Game so that we can determine differences between platforms #jira UEVR-741 Change 3430829 on 2017/05/09 by Keli.Hlodversson Implement World-locked layer position type on SteamVR #jira UE-42940 Also fixes LAYER_FLAG_TEX_CONTINUOUS_UPDATE flag on SteamVR Change 3432895 on 2017/05/10 by Nick.Whiting Skipping recording of analytics if there is no device connected on startup, to prevent false reports when Oculus / SteamVR runtimes are installed on the user's machine #jira UE-37166 Change 3435917 on 2017/05/11 by Jeff.Fisher UE-44941 LoadErrors produced in log when opening TM-MotionControllers -LoadErrors:Error: Error /Game/Blueprints/QA_MoCoAll : Can't find file for asset. /Game/NewTextureRenderTarget2D -Removed the component that was referencing that. It was temporary test content, not meant to be submitted. #jira UE-44941 Change 3435938 on 2017/05/11 by Ryan.Vance Incorrect VertexDeclarationRHI for the hidden area mask pso. Change 3437197 on 2017/05/12 by Keli.Hlodversson Remove a irrelevant comment. Change 3437221 on 2017/05/12 by Keli.Hlodversson ... and now actually include the change that was supposed to go in CL#3437197 Remove a irrelevant comment. Change 3439359 on 2017/05/15 by Keli.Hlodversson Implement NoAlpha flag in DefauiltStereoLayers. #jira UEVR-777 Change 3439422 on 2017/05/15 by Keli.Hlodversson Fixes for CL#3439359 after review: Implement NoAlpha flag in DefauiltStereoLayers. #jira UEVR-777 Change 3439599 on 2017/05/15 by Jeff.Fisher UE-44962 Motion controller input not registered in TM-MotionControllers package -Pre-exising blueprint assumed only one textrenderactor in the level, but I added two more. It was working or not depending on the order in which they were constructed. -Now searching up the correct actor by Tag. #jira UE-44962 Change 3441176 on 2017/05/16 by Mike.Beach Can now explicitly hide components from a specific player through the player controller. Change 3441242 on 2017/05/16 by Mike.Beach Making it so any component can invoke a preview viewport in the editor (want it to be extended by scene capture components). Change 3441571 on 2017/05/16 by Mike.Beach Fixing CIS shadowed variable name issue (fallout from CL 3441176). Change 3443223 on 2017/05/17 by Mike.Beach Fixing root of shadowed variable name warning (now only in UT, fallout from 3441176) - renaming new base class variable so it doesn't conflict with third parties either. #jira UE-45120 [CL 3443810 by Mike Beach in Main branch]
2017-05-17 12:45:38 -04:00
case GL_TEXTURE_EXTERNAL_OES:
case GL_TEXTURE_2D_MULTISAMPLE:
Copying //UE4/Release-Staging-4.15 to //UE4/Dev-Main (Source: //UE4/Release-4.15 @ 3267632) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3267632 on 2017/01/23 by Jurre.deBaare Marker syncs not working correctly in Blend Spaces #fix Ensure that SampleIndexWithMarkers is serialized #JIRA UE-40975 Change 3266915 on 2017/01/20 by Arciel.Rekman Fix Persona crash on Linux (UE-38790). - Static template variable got instantiated into multiple DSOs; probably exacerbated by --as-needed since this does not happen without it. #jira UE-38790 Change 3266785 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Make usage of CachedUsers thread safe. Duplicates CL 3245390 #jira UE-40649 Change 3266762 on 2017/01/20 by Rolando.Caloca UE4.15 - Fix for reallocating scene color #jira UE-40633 Change 3266642 on 2017/01/20 by Lina.Halper Downgraded Warning to Info #jira: UE-40643 Change 3266532 on 2017/01/20 by Jeff.Campeau Fix multiplatform Windows includes defeating the safety check in MinWindows.h #jira UE-40778 #rn Fixed a compile warning on Xbox One when XboxOneMinApi.h was included before MinWindows.h. Change 3266523 on 2017/01/20 by Marc.Audy Fix case where child actor could avoid getting begin play call #jira UE-40960 Change 3266474 on 2017/01/20 by Peter.Sauerbrei fix for using an API not yet available in iOS 8 #jira UE-40698 Change 3266339 on 2017/01/20 by Frank.Fella Sequencer - Fix UI issues with multi-track section rows. + Don't show an empty sub-track when there are no sections. + Expand parent tracks by default. #Jira UE-40487 Change 3266283 on 2017/01/20 by Jeff.Fisher UE-40683 GearVR projects rendering black -Fix from Remi Palandri #jira UE-40683 #review-3265824 @nick.whiting @ryan.vance Change 3266264 on 2017/01/20 by Lina.Halper Downgraded warning and changed log message #jira: UE-40643 Change 3266239 on 2017/01/20 by Peter.Sauerbrei fix for virtual joystick not showing up on some devices #jira UE-40472 Change 3266084 on 2017/01/20 by Mitchell.Wilson Resaving level to have correct starting camera position. Saved in wrong position after fixing a bug. #jira UE-40887 Change 3266077 on 2017/01/20 by Matt.Kuhlenschmidt Fixed "Wait for Movies to Complete" flag being reversed #jira UE-40943 Change 3266076 on 2017/01/20 by Mitchell.Wilson Updating occulsion bounds method on P_spark_burst_2 so it is not occluded when spawned inside of the coin mesh in BP_Overview example. Updating some post process examples due to changes made with Post Process settings. Film and Scene Color are temporary fixes and are intended to be fully updated in 4.16 #jira UE-40830 UE-40887 Change 3266034 on 2017/01/20 by Benn.Gallagher Fixed crash when reimporting APEX destructibles from apb/x files caused by not allowing the renderer to flush destroy resource commands before emptying an array. #jira UE-40911 Change 3266027 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Fix CreateSession and FindSession each permanently failing after first failure. Duplicates CL 3262175 #jira UE-39110 Change 3265906 on 2017/01/20 by Marcus.Wassmer Fix GPU particle AFR flickering and optimize injection transfers. Duplicate CL's 3260302, 3261252, 3265662, 3265678 #jira UE-40915 Change 3265873 on 2017/01/20 by Mark.Satterthwaite Duplicate CL #3262535: Make sure to set rasterizer state when rendering with a material in FSlateRHIRenderingPolicy::DrawElements #jira UE-40842 Change 3265857 on 2017/01/20 by Jamie.Dale Fixed font pathing issue that could happen in an out-of-source packaged build #jira UE-40855 Change 3265675 on 2017/01/20 by Matt.Kuhlenschmidt Move Dirt Mask Intensity to the correct post process category #jira UE-40851 Change 3265674 on 2017/01/20 by Rolando.Caloca UE4.15 - Revert #jira UE-40633 Change 3265647 on 2017/01/20 by Mitchell.Wilson Updating spawn location of the player pawn after unpossessing character in example 1.10. #jira UE-40870 Change 3265612 on 2017/01/20 by Alexis.Matte Prevent name clash warning when doing automation test #jira UE-40788 Change 3265553 on 2017/01/20 by Matthew.Griffin Fixed Shadow variable warning Change 3265366 on 2017/01/20 by Dmitriy.Dyomin Fixed: Vulkan crashes on Adreno Galaxy S7 #jira UE-40840 Change 3265294 on 2017/01/19 by Dmitriy.Dyomin Fixed typo which was causing assert on mobile #jira UE-40633 Change 3265111 on 2017/01/19 by Rolando.Caloca UE4.15 - Fix for scene color crash #jira UE-40633 Change 3264789 on 2017/01/19 by Josh.Adams - Redoing a fix from Dev-Plat for UI_BUILD_SHIPPING_EDITOR #jira UE-40798 Change 3264780 on 2017/01/19 by Rolando.Caloca UE4.15 - Add Morph compute GPU stat #jira UE-40891 Change 3264486 on 2017/01/19 by Mark.Satterthwaite Fix the crash on startup on Intel GPUs - this is due to Intel Metal forcing SM4 to avoid some drivers bugs in SM5 but I got the condition for initialisation in FMinimalDummyForwardLightingResources wrong so it's attempting to create a RWBuffer for SM4 which won't work. #jira UE-40863 Change 3264427 on 2017/01/19 by Rolando.Caloca UE4.15 - Track down crash #jira UE-40633 Change 3264393 on 2017/01/19 by Aaron.McLeran #jira UE-40850 Re-fixing UE-39650 again in 4.15. I hope this bug doesn't regress yet again! Change 3264364 on 2017/01/19 by Daniel.Wright In forward shading SceneCaptureSource modes Normal and BaseColor are replaced with SceneColorHDR as the GBuffer is not available. This is a silent failure for now as there's no good content error reporting mechanism for scene captures. #jira UE-39658 Change 3264284 on 2017/01/19 by Mark.Satterthwaite Duplicate CL #3264251: Modify some asserts in MetalRHI - technically using a store-action of ENoAction on Stencil buffers should make it invalid to restart a render-pass but on Mac it will work because ENoAction won't invalidate anything written. In future we need to use deferred store-actions in Metal so that we can "restart" passes while enforcing correct Load/Store actions. #jira UE-40803 Change 3264282 on 2017/01/19 by Benn.Gallagher CIS fix, bad expression that failed to compile Mac #jira UE-40716 Change 3264257 on 2017/01/19 by Mike.Beach Revising fix in UBlueprint::BeginCacheForCookedPlatformData(), saving off nativization data if the -nativizeAssets param is present (not just if it was enabled in packaging settings). #jira UE-40620 Change 3264242 on 2017/01/19 by Daniel.Wright [Copy] Sharing IndirectLightingCacheTextureSampler samplers #jira UE-40727 Change 3264191 on 2017/01/19 by Ori.Cohen Fix heightfield not working with traces underneath. #JIRA UE-39819 Change 3264139 on 2017/01/19 by Benn.Gallagher Removed collision between clothing in external skeletal mesh components, as clothing simulations could already be in flight and editing collisions while the simulation is running is not supported by APEX #jira UE-40716 Change 3264110 on 2017/01/19 by Max.Preussner MfMedia: Disabled plug-in on Windows 10, because it is currently broken #jira UE-406344 Change 3264108 on 2017/01/19 by Max.Preussner MfMedia: Fixed compile errors on Windows 10 #jira UE-40644 Change 3264099 on 2017/01/19 by Jamie.Dale Adding deprecation warning for 4.14 style PO export #jira UE-40592 Change 3264089 on 2017/01/19 by Matthew.Griffin Reworked DDC commandlet to make sure it actually calls BeginCacheForCookedPlatformData on assets Skip doing this for Engine content if -ProjectOnly is set as that takes a long time and isn't necessary for the way we use it #jira UE-39968 Change 3264065 on 2017/01/19 by James.Golding Fix ModifyCurve node not calling init/update in SourcePose #jira UE-40852 Change 3263729 on 2017/01/19 by Alexis.Matte Fix a bad condition when filling the material sorting array #jira UE-40814 Change 3263704 on 2017/01/19 by Jack.Porter Fix compile error in AndroidESDeferredOpenGL.cpp when " ES Deferred Shading Renderer" is enabled. #jira UE-40659 Change 3263627 on 2017/01/19 by Jack.Porter Fixed black textures when Vulkan is packaged for ETC1 #jira UE-40658 Change 3263554 on 2017/01/19 by Jack.Porter Fixes to HISMC LOD to use new screen size calculation. Solves issue where HISMC was always rendered at lowest LOD. #jira UE-38930 Change 3263535 on 2017/01/19 by Matthew.Griffin Removed unnecessary directories to always cook Problem was actually down to string asset references not being resolved in file set generation Change 3263534 on 2017/01/19 by Matthew.Griffin Added -SkipPublish parameter to BuildLauncherSample command so that we don't chunk and post preflights Change 3263267 on 2017/01/18 by Dan.Oconnor Fix for editing of TMap/TSet variables in structure editor, async tasks, and when using UK2Node_CommutativeAssociativeBinaryOperator. #jira UE-40428 Change 3263219 on 2017/01/18 by Dan.Oconnor Fix copy paste error found by UDN user Craig.Wright that could result in fatal bytecode execution #jira UE-19425 Change 3262980 on 2017/01/18 by Maciej.Mroz #jira UE-40394, UE-40395, UE-40426, UE-40484, UE-40770 Integrated cl 3262851, 3261613, 3260908 from Dev-Blueprint Change 3262908 on 2017/01/18 by Ori.Cohen When refreshing physics assets, don't do so on components that have no bodies. #JIRA UE-40764 Change 3262709 on 2017/01/18 by Matt.Kuhlenschmidt Fix a crash if a background blur widget ends up being negative or zero sized #jira UE-40820 Change 3262606 on 2017/01/18 by Marc.Audy Don't bother the user with force feedback based on where the unpossessed pawn is standing in the world while in simulate mode #jira UE-40785 Change 3262416 on 2017/01/18 by Marc.Audy Reenable audio threading #jira UE-00000 Change 3262125 on 2017/01/18 by Chris.Wood Fixed unnecessary truncate in SMenuAnchor::Tick that caused menu placement to wobble [UE-40293] - Dropdown selection box jitters when mouse is moved over top of it on Mac #jira UE-40293 Change 3262103 on 2017/01/18 by Jamie.Dale Merging some cooker fixes CL# 3262089 - Fixing RedirectCollector issues with projects outside the UE4 directory CL# 3262091 - Guarding against potentially invalid call to FString::Mid CL# 3262094 - Cook on the fly builds now resolve string asset references #jira UE-40790 Change 3262082 on 2017/01/18 by Chris.Bunner Accumulate used particle materials from final mesh material module, not first. #jira UE-39953 Change 3261996 on 2017/01/18 by Matthew.Griffin Allow Samples to be built in pre-flights if you are specifying an engine version Change 3261995 on 2017/01/18 by Matthew.Griffin Resolve string asset references after loading packages to ensure that we find all required files Change 3261934 on 2017/01/18 by Allan.Bentham Bump shader version to force changes in 3260307 to occur. #jira UE-39701 Change 3261842 on 2017/01/18 by Graeme.Thornton Manual copy of CL 3253580 from Dev-Core Added some validation of the class index in exportmap entries #jira UE-37873 Change 3261017 on 2017/01/17 by Mitchell.Wilson Resaving all levels to resolve short form string asset reference warnings. #jira UE-40732 Change 3260918 on 2017/01/17 by Andrew.Rodham Sequencer: Request unloaded levels to be loaded when being made visible through sequencer #jira UE-40082 Change 3260909 on 2017/01/17 by Ben.Marsh Fix error running "Clean" in installed build. #jira UE-40751 Change 3260757 on 2017/01/17 by Jeff.Fisher UE-39654 Crash when launching Google VR project -Via SwitchGameWindowToUseGameViewport we get an early ResizeViewport which does an early Draw. This calls GetStereoProjectionMatrix before the game has ticked and fetched the device info we use to build that matrix. -In this change we make the call to setup that information in the GoogleVRHMD constructor, to ensure it is done before anything tries to use it. -I also added some asserts. #jira UE-39654 #review-3260644 Change 3260637 on 2017/01/17 by Alexis.Matte Fix crash when importing skeletal mesh containing a texture or a material using the same name. #jira UE-40538 Change 3260630 on 2017/01/17 by Marc.Audy When installing a feature pack maintain the include of the template so that any properties inside it are not lost by replacing it with the project's PCH include Update all C++ feature packs to include the original project .h in the files that are copied in to the new project #jira UE-40730 Change 3260600 on 2017/01/17 by matt.barnes Test content for sequencer event tracks #jira UE-29618 Change 3260593 on 2017/01/17 by Mieszko.Zielinski Made FSupportedAreaData export as part of engine API #UE4 #jira UE-40739 Change 3260538 on 2017/01/17 by Marc.Audy Always display axes in debug info, but show -- for value when we don't yet know the ranges #jira UE-40700 Change 3260422 on 2017/01/17 by Marc.Audy Expose level streaming incremental unregister component cvars in the engine streaming section of the project settings #jira UE-10109 Change 3260392 on 2017/01/17 by Ben.Woodhouse Duplicated from CL 3260107: Fix FMonitoredProcess to prevent infinite loop in -nothreading mode #jira UE-40717 Change 3260358 on 2017/01/17 by Chris.Bunner Only validate tonemapper LUT input if actually hooked up. #jira UE-40467 Change 3260327 on 2017/01/17 by Frank.Fella PlatformMediaSource - Fix Validate to check all specified media sources, and change GetURL to get the url for the current platform when running uncooked. #jira UE-40709 Change 3260307 on 2017/01/17 by Allan.Bentham Restore metal compiler's shader source serialization code when the shader is to be compiled at runtime. #jira UE-39701 Change 3260276 on 2017/01/17 by Alex.Delesky #jira UE-40276 - Fixing an issue where a Standalone game launched from the editor cannot toggle fullscreen mode. Change 3260274 on 2017/01/17 by Chris.Wood Added check for null World ptr in AActor::PostEditChangeProperty to fix crash when pasting temporary Actors [UE-40492] - Crash after ejecting from PIE session and selecting a component in the details panel #jira UE-40492 Change 3260230 on 2017/01/17 by Ben.Woodhouse Duplicated from dev-rendering@3232283 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 3260096 on 2017/01/17 by Thomas.Sarkanen Fixed crash when rendering out a level sequence with layered animations When a level contained sequences with layered animations that *werent* taking part in the render (i.e. they were not part of the current master sequence) then their instances were initialized but not ticked. When their components then got a call to evaluate their bone transforms, the cached blends were in an uninitialized state. #jira UE-40654 - Render Movie using separate process crashes capture process Change 3259875 on 2017/01/17 by Dmitriy.Dyomin Fixed: SunTemple is washed out in one color on some Android devices #jira UE-40689 Change 3259011 on 2017/01/16 by Max.Chen Matinee to Level Sequence: Make RegisterTrackConverters pure virtual #jira UE-37328 Change 3258992 on 2017/01/16 by Rolando.Caloca UE4.15 - Integrate fix for outlines (3258807) #jira UE-40690 Change 3258949 on 2017/01/16 by mason.seay Disabled TranslatedMass test #jira UE-29618 Change 3258860 on 2017/01/16 by Max.Preussner Media: Prevent loading of media plug-ins in console apps, such as game servers (OR-34819) #jira OR-34819 Change 3258846 on 2017/01/16 by Max.Preussner MfMedia: Fixed incorrect tracks being played in multi-track media sources (UE-39703) #jira UE-39703 Change 3258813 on 2017/01/16 by Benn.Gallagher Added error on import for APEX clothing files that either have no submeshes or have no submeshes with simulated vertices. #jira UE-40614 Change 3258771 on 2017/01/16 by James.Golding Skip fatal warning in UBodySetup::Serialize if duplicating (e.g. spawning component via SCS with a BodySetup in its template) #jira UE-40418 Change 3258747 on 2017/01/16 by Max.Chen Sequencer: AddUnique SequencerActorTag to prevent multiple tags being added when spawning/despawning. #jira UE-40665 Change 3258630 on 2017/01/16 by Jurre.deBaare CIS IfDef issue fix #JIRA UE-1234 Change 3258541 on 2017/01/16 by Phillip.Kavan [UE-40131] Revised fix that will work for "inclusive" BP nativization with data-only BPs. change summary: - revised code in UBlueprint::BeginCacheForCookedPlatformData() to also support the "inclusive" nativization method #jira UE-40131 Change 3258532 on 2017/01/16 by Max.Chen Sequencer: Fix max row index off by one error . This was always incorrect, but it was masked by the fact that FixRowIndices() was called on the track when the UI gets built. That function was removed from the node layer in CL #3252753 and therefore exposed this bug. #jira UE-40642 Change 3258505 on 2017/01/16 by Marc.Audy Improve messaging when installing vehicle and vehicle adv C++ feature packs #jira UE-40647 Change 3258478 on 2017/01/16 by Matt.Kuhlenschmidt PR #3131: UE-40567: Added nullcheck to FSplinePointDetails (Contributed by projectgheist) #jira UE-40567 Change 3258457 on 2017/01/16 by Jurre.deBaare SpeedTree Billboards rendering with Incorrect Material #fix Ensure that we add a section info entry for the billboard models/lods during SpeedTree importing #jira UE-39677 Change 3258442 on 2017/01/16 by Alexis.Matte Skeletalmesh import, make sure we increment the lod index when animation is not imported #jira UE-40640 Change 3258431 on 2017/01/16 by Jurre.deBaare Back out changelist 3258392 #fix issue was already resolved #jira UE-1234 Change 3258392 on 2017/01/16 by Jurre.deBaare Fix for non-unity CIS #JIRA UE-1234 Change 3258358 on 2017/01/16 by Matthew.Griffin Prevent warning from being shown when XMPP module is not built #jira UE-40616 (I guess LoadModule could be changed to LoadModuleChecked now if they do exist) Change 3258144 on 2017/01/15 by Marc.Audy Fix non-unity CIS errors #jira UE-00000 Change 3258141 on 2017/01/15 by zachary.wilson Adding testing content for Distance Field Indirect Shadows #jira UE-29618 Change 3258049 on 2017/01/14 by Nick.Shin UFE sent incorrect header data on missing file also, it seems that UFE was written to expect clients to close the connection -- (this should be closed manually -- which will flush the data and then close out the socket -- but, since this is a developer tool... leaving this as-is) first, 404 was not sending the required double newline after headers second, since connection are not closed manually (server side) send a dummy payload with content-length data #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3257984 on 2017/01/14 by Aaron.McLeran Attempting another fix for static analysis warning in CIS #jira UE-40645 Change 3257904 on 2017/01/14 by Aaron.McLeran Resolving static analysis warnings reported by CIS #jira UE-40645 Change 3257883 on 2017/01/14 by Aaron.McLeran Fixing build warning with CL 3257826 #jira UE-40645 Change 3257826 on 2017/01/13 by Aaron.McLeran Integrating fixes from Dev-Framework and Odin to Release-415 #jira UE-40645 Change 3257654 on 2017/01/13 by Marc.Audy Until plugins can drive their own dependencies vehicle and vehicle adv feature packs will not compile automatically and will pop up a message log informing the user of the actions they need to manually take. #jira UE-40466 Change 3257608 on 2017/01/13 by John.Pollard PC: Assertion Fail with UPackageMapClient::AddNetFieldExportGroup() viewing replays #jira OR-34522 Change 3257489 on 2017/01/13 by Mitchell.Wilson Removing preview mesh from multiple materials to resolve CIS warnings. #jira UE-40628 Change 3257485 on 2017/01/13 by Chris.Babcock Don't initialize FMinimalDummyForwardLightingResources for unneeded feature levels (below SM4) #jira UE-40602 #ue4 #android Change 3257444 on 2017/01/13 by Matt.Barnes Updating test assets for UEQATC-2967 #jira UE-29618 Change 3257324 on 2017/01/13 by Arciel.Rekman Linux: Update runtime CEF lib as well (UE-401413). - Followup to CL 3256081. #jira UE-40413 (Merging CL 3257241 from Dev-Platform to Release-4.15) Change 3257140 on 2017/01/13 by Lina.Halper Fix crash with deleting all poses #jira: UE-40537 Change 3257066 on 2017/01/13 by Jurre.deBaare CIS fix for game builds #jira UE-1234 Change 3257056 on 2017/01/13 by Ben.Zeigler #jira UE-40318 Fix crash in streamablemanager where callbacks would get called on a deleted manager. This is being rewritten in 4.16, so do a quick fix for 4.15 to avoid the crash Change 3256839 on 2017/01/13 by Jurre.deBaare Added conversion of HLOD transition screen size to new transition screen area values #fix During serialization patch up the values of transition screen size within the hierarchical lod setups #misc Updated the default value to a screen size to screen area equivalent #JIRA UE-40518 Change 3256761 on 2017/01/13 by Mieszko.Zielinski Fixed EQS debug rendering not clearing previously displayed labels if new request has no labels #UE4 #jira UE-40589 Change 3256177 on 2017/01/12 by Josh.Adams - Moved the MfMedia plugin outside of XboxOne directory, because it's a Windows plugin as well (that happens to also work on XboxOne - all public APIs) #jira UE-40391 Change 3256131 on 2017/01/12 by Jamie.Dale Fixing log spam when trying to load an empty font data #jira UE-40555 Change 3256081 on 2017/01/12 by Arciel.Rekman Fixed CEF compatibility problems on Ubuntu 14.04 (UE-40413). - Also deleted Debug version of it. - Change by yaakuro. #jira UE-40413 (Edigrating CL 3256065 from Dev-Platform to Release-4.15) Change 3256046 on 2017/01/12 by Jon.Nabozny Use PxConvexFlag::eSHIFT_VERTICES when cooking meshes to fix baked in transforms. #jira UE-39212 Change 3255939 on 2017/01/12 by mason.seay Rebuilt lighting #jira UE-29618 Change 3255912 on 2017/01/12 by Olaf.Piesche Replicating fix from 3246828 for #jira UE-39249 Change 3255909 on 2017/01/12 by Rolando.Caloca UE4.15 - Support for choosing discrete AMD GPU #jira UE-40546 Change 3255835 on 2017/01/12 by Martin.Wilson Fix newly added virtual bones not being on screen. #jira UE-40516 Change 3255774 on 2017/01/12 by Mark.Satterthwaite Merging 3251926 for Richard.Wallis: #jira UE-38828 Crash after Enabling Forward Shading on Mac and Creating/Editing Materials. Using TGlobalResource to avoid constant resource allocation. Prev fix (in CL 3239454) caused a crash in D3D11 with zero sized resource views. Change 3255771 on 2017/01/12 by Alexis.Matte Fix a crash when re-importing asset with no material #jira UE-40510 Change 3255746 on 2017/01/12 by Jon.Nabozny Change _DEBUG to PX_DEBUG in ConvexHullLib.cpp #jira UE-0000 Change 3255659 on 2017/01/12 by Jon.Nabozny Enable Shifting Vertices during Convex Hull cooking to prevent precision issues. (Copied CL-3249100 from Dev-Phyics-Upgrade to support new flag) #jira UE-39212 Change 3255617 on 2017/01/12 by Ori.Cohen Fix crash when computing mass for an async object. Using passed in rigid body instead of assuming SyncRigidActor #JIRA UE-40458 Change 3255536 on 2017/01/12 by Jamie.Dale Fixed crash when using an object picker against the 'Object' type This also optimizes some filter code to avoid filtering when it would be pointless (and just slows things down). #jira UE-40408 Change 3255451 on 2017/01/12 by Chris.Wood Fixed read only text color in SCommentBubble [UE-40384] - Reference Viewer comment text is difficult to read Also changed DetermineForegroundColor() method in EditableTextBox classes to fallback on ForegroundColorOverride if it is set and ReadOnlyForegroundColorOverride isn't set. #jira UE-40384 Change 3255448 on 2017/01/12 by Chris.Wood Removed blinking cursor/caret on read only editable text layouts. [UE-40502] - Flashing cursor/caret showing in read-only editable text layouts #jira UE-40502 Change 3255445 on 2017/01/12 by Marc.Audy Create the dynamic level streaming persistent object correctly outered to the World rather than the transient package to avoid GetWorld() crashing #jira UE-00000 Change 3255441 on 2017/01/12 by Jon.Nabozny Regenerate collision for the basic Cube mesh to fix resting issues and invalid verts. #jira UE-40478 Change 3255407 on 2017/01/12 by Yannick.Lange VREditor: - Fix: Assertion Failed crash after pressing F8 in PIE while Foliage Mode was selected - Fix: Assertion Failed crash after pressing F8 in PIE while Paint Mode was selected - Added extra checks for other possible future cases #jira UE-39786 UE-39789 Change 3255393 on 2017/01/12 by Chris.Bunner Duplicating CL 3255244: Removed test variable from MaterialExpressionVectorParameter. #jira UE-40517 Change 3255375 on 2017/01/12 by Steve.Robb CIS fix. #jira UE-39556 Change 3255334 on 2017/01/12 by samuel.proctor Corrected QA Container asset to remove pin warning. #jira UE-29618 Change 3255319 on 2017/01/12 by james.cobbett Fixing motion blur issue with test content for Pose Snapshots. #jira UE-29618 Change 3255247 on 2017/01/12 by Nick.Darnell Slate - Slate's Tab Manager is now a bit smarter about allowing Focus/BringToFront attention grabbing methods. In order to make the UI less jumpy it was restricted to only allowing alerts and bring to front to be triggered if you were on the window, or child window of the active application window. That can negatively impact cases where a user takes an action (clicks a link ro button saying open/goto this tab), that is on another window. To work around this limitation, the Tab Manager will also permit the action if Slate is currently processing user input, implying that the action being taken is in direct response to the user pressing a button and interacting with the UI. #jira UE-40313 Change 3255236 on 2017/01/12 by Phillip.Kavan [UE-40131] Non-native child BPs can now properly override a nativized parent BP's components in a cooked build with exclusive Blueprint class nativiation. - Mirrored from //UE4/Dev-Blueprints (CL# 3254024,3254391) #jira UE-40131 Change 3255216 on 2017/01/12 by Rolando.Caloca UE4.15 - Fix compile issue on Vulkan 1.0.37.0 or newer #jira UE-40506 Change 3255206 on 2017/01/12 by Steve.Robb Use outer walking IsA() implementation in editor to get around reinstancing and hot reload issues. #fyi mike.beach #jira UE-39556 Change 3255195 on 2017/01/12 by mason.seay Adjusted slope to fix platform discrepancy #jira UE-29618 Change 3255086 on 2017/01/12 by Jack.Porter Fix XboxOneShaderCompiler.cpp non-unity compilation #jira None Change 3255085 on 2017/01/12 by Jack.Porter Missing HTML5 changes from CL 3254907 #jira UE-39111 Change 3255031 on 2017/01/12 by Jack.Porter More iOS GoogleVR changes missing from CL 3254907 #jira UE-39111 Change 3254991 on 2017/01/12 by Jack.Porter Missing file from CL 3254907 #jira UE-39111 Change 3254907 on 2017/01/11 by Jack.Porter Android MSAA changes - use r.MobileMSAA cvar, support more than 2x, fix issues where targets other than scene color were created with MSAA #jira UE-39111 #jira UE-35849 #jira UEMOB-35 Change 3254810 on 2017/01/11 by Arciel.Rekman Linux: fix for crash on exit (UE-40488). #jira UE-40488 Change 3254617 on 2017/01/11 by Peter.Sauerbrei remake the fix for missing PhysXVehicle library in binary for IOS and TVOS #jira UE-39349 Change 3254489 on 2017/01/11 by mason.seay Other minor improvements to the map #jira UE-29618 Change 3254477 on 2017/01/11 by mason.seay Map tweaks to prevent the vehicle from getting stuck #jira UE-29618 Change 3254431 on 2017/01/11 by Mitchell.Wilson Rebuilt lighting on all StarterContent levels. #jira UE-40468 Change 3254333 on 2017/01/11 by mason.seay Adjusted lightmap on mesh to remove odd rendering splotches #jira UE-29618 Change 3254131 on 2017/01/11 by Rolando.Caloca UE4.15 - Missing dumped shaders #jira UE-40465 Change 3254126 on 2017/01/11 by Jeff.Fisher UE-40422 Vive Motion Controllers unable to Play Haptic Effect -Removed an unnecessary remapping of controllerindex to deviceid, they are the same now. #jira UE-40422 #review-3254084 Change 3254046 on 2017/01/11 by Mark.Satterthwaite Merging 3233811: 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. #jira UE-39935 Change 3254021 on 2017/01/11 by james.cobbett Test content for Pose Snapshot testing #jira UE-29618 Change 3253993 on 2017/01/11 by Alexis.Matte Fix the morph target import #jira UE-40424 Change 3253948 on 2017/01/11 by mason.seay Fixed Level BP logic that was causing Access None error #jira UE-29618 Change 3253884 on 2017/01/11 by mason.seay Updated mesh colors on map. Disabled motion blur #jira UE-29618 Change 3253862 on 2017/01/11 by mason.seay Disabled Always Show Mobile Input (turned on by accident) #jira UE-29618 Change 3253859 on 2017/01/11 by Mark.Satterthwaite Merging 3252866: Fix Metal shader pipeline hash collisions caused by deferring MTLFunction construction until PrepareToDraw so that we may use Function-Constants to specialise the shader source without generating additional permutations. This is required to generate proper tessellation shaders which are specialised against the index-buffer usage & type (none, uint16, uint32). While we're here amend the hash functions to make better use of the existing hash functions to improve the distribution and hopefully reduce the possibility of collisions in future. #jira UE-40357 Change 3253854 on 2017/01/11 by Mark.Satterthwaite Merging 3252859: Fix the calculation of Metal tessellation struct alignment and size to use largest member size, so that we don't assert in debug or cause out-of-bounds access in development/shipping. #jira UE-40410 Change 3253853 on 2017/01/11 by Mark.Satterthwaite Merging 3237394: 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 3253852 on 2017/01/11 by Mark.Satterthwaite Merging 3236850: Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3253834 on 2017/01/11 by mason.seay Updated mobile input textures to be power of two #jira UE-29618 Change 3253807 on 2017/01/11 by Mark.Satterthwaite Merging 3232641 & 3236788 & 3233854 & 3249742 from Dev-Rendering: 3232641: - 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. 3236788: 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. 3233854: More information about texture type validation errors in Metal. 3249742: 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. #jira UE-40200 Change 3253636 on 2017/01/11 by Chris.Wood Improved tracking of runtime and debugger attachment for analytics purposes. [UE-39780] - Change IsDebugger to WasDebuggerPresent in all crash/AS analytics [UE-39777] - Update MTBF IsDebugger state for every heartbeat [UE-39778] - UnrealWatchdog to send WasDebuggerPresent state for app if set [UE-39779] - UnrealWatchdog to send total run time of process Debugger state was previously read once at startup or once at the time of an event. Debugger is now checked during the heartbeat and doesn't reset flag when detached so we know if a session was ever debugged. Also reporting total run time in UnrealWatchdog. Watchdog still doesn't run when debugging but and will never show popups to a debugger user even when forced on with -forcewatchdog. #jira UE-39780, UE-39777, UE-39778, UE-39779 Change 3253281 on 2017/01/10 by Dan.Oconnor Typo fix caused parameter in local struct definition to shadow the local #jira UE-40027 Change 3253231 on 2017/01/10 by Dan.Oconnor Mirror of 3253220 These pins should infer together #jira UE-40427 Change 3253125 on 2017/01/10 by Uriel.Doyon Brought back CL 3242117 and 3238685, which got lost on the way: - Fix for possiblel check fail when changin mobility of actors. - Fix for possible check fail when processing streaming data. #jira UE-39996 Change 3252936 on 2017/01/10 by Marc.Audy CopyPropertiesForUnrelatedObjects needs to consider path not just name of subobjects when matching them up to copy properties and update references Ensure that a reinstanced child actor component ends up pointing at the correct child actor template #jira UE-40027 Change 3252886 on 2017/01/10 by Lina.Halper Fix for invalid AnimCurves when curve is added while running #jira: UE-39826 Change 3252753 on 2017/01/10 by Frank.Fella Sequencer - Change track rows to use separate track nodes in the display node tree, fixes key edit issues on animation and audio tracks. #jira UE-39836 Change 3252640 on 2017/01/10 by Lukasz.Furman fixed NavCollision losing user settings after any property change copy of 3252628 #jira UE-40388 Change 3252614 on 2017/01/10 by Daniel.Wright UStaticMeshComponent::InvalidateLightingCacheDetailed uses MarkRenderStateDirty. Massively speeds up duplication of HISMC with many instances (10+ minutes -> seconds), as InvalidateLightingCacheDetailed gets called for every instance. #jira UE-40406 Change 3252609 on 2017/01/10 by mason.seay Updated map with text actors for more visual clarity #jira UE-29618 Change 3252477 on 2017/01/10 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios #jira UE-39852 Change 3252451 on 2017/01/10 by Daniel.Wright Garbage collection calls UWorld>SendAllEndOfFrameUpdates() on all loaded worlds first so that deferred recreate render states happen before any UObjects are deleted * Fixes rendering thread crashes in the order of events of 1) SetMaterial 2) GC 3) Rendering command that dereferences the UMaterial #jira UE-30089 Change 3252418 on 2017/01/10 by Ben.Zeigler #jira UE-40390 Fix crash saving blueprint with an inherited DataTable/CurveTable reference. Delta serialization meant that the necessary name wasn't in the name table, so adding it manually now. Change 3252410 on 2017/01/10 by Max.Chen Sequencer : Filter sections on select in range Copy from Dev-Sequencer #jira UE-37854 Change 3252385 on 2017/01/10 by Max.Chen Sequencer: Update auto tangents when setting key time. This fixes a bug where dragging keys with auto tangents doesn't recompute tangents properly. #jira UE-39923 Change 3252360 on 2017/01/10 by Allan.Bentham Remove incorrect assert for iOS. #jira UE-40385 Change 3252297 on 2017/01/10 by mason.seay Test assets for suspending cloth simulation #jira UE-29618 Change 3252125 on 2017/01/10 by Mieszko.Zielinski Fallout fix after removal of BlackboardKeyUtils::CalculateComparisonResult declaration from the AIModule #UE4 #jira UE-40099 Change 3251987 on 2017/01/10 by Allan.Bentham Fix HQ DoF #jira UE-35548 Change 3251856 on 2017/01/10 by Jack.Porter Fixed Get Instances Overlapping Box blueprint function due to issue with FBox constructor. Added MakeBox and MakeBox2D kismet native functions Fixed box overlap test ignoring instance scale #jira UE-34409 Change 3251519 on 2017/01/09 by Daniel.Wright [Copy] Fixed GLandscapeLayerUsageMaterial getting GC'ed #jira UE-40055 Change 3251146 on 2017/01/09 by Lina.Halper Fix on stable track data carrying over to pose asset - decided to clean up track data in anim sequence since we don't really need that data anymore #jira: UE-40351 #code review: Martin.Wilson Change 3251056 on 2017/01/09 by Lina.Halper fixed crash when pose node contains stale data when updating source. #jira: UE-40258 #code review; Thomas.Sarkanen Change 3251035 on 2017/01/09 by Mitchell.Wilson Removed preview mesh in M_GodRay to resolve CIS warning. Relinked textures used in two materials to resolve CIS warnings. #jira UE-40350 Change 3250959 on 2017/01/09 by Mitchell.Wilson Updating master sequence playback end time so the final audio track can be heard. Updating multiple shots to resolve issues with audio not playing back properly. #jira UE-40321 UE-40335 Change 3250896 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed level visibility not working in PIE #jira UE-40082 Change 3250895 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed evaluation of overlapping audio and skeletal aninmation sections - Audio and skeletal animation sections now continue to support legacy evaluation order. Overlapping sections of the same priority on the same row will be filtered out such that only the section with the latest start time will be evaluated. #jira UE-40320 Change 3250830 on 2017/01/09 by Ben.Woodhouse Duplicated from //ue4/Release-4.14 CL 3238182 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. #jira UE-38818 Change 3250790 on 2017/01/09 by Lauren.Ridge Fixing backspace on VR Editor numberpad menu. #jira UE-39770 Change 3250681 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@3249296: 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 3250680 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@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 #jira UE-39949 Change 3250609 on 2017/01/09 by Steve.Robb Maximum number of stats-using threads increased to 512. #jira UE-38153 Change 3250604 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed incorrect seed being used when generating new animation type IDs for object properties #jira UE-40327 Change 3250589 on 2017/01/09 by Matthew.Griffin Changed publish symbols node to use runtime dependencies instead of manually including the whole PhysX folder Avoids unused configs and VS2013 files #jira UE-39171 Change 3250578 on 2017/01/09 by Matthew.Griffin Removed art tools from released build now that they are available separately on the Marketplace Change 3250282 on 2017/01/07 by Mieszko.Zielinski Fixed UNavigationSystem::bNavigationAutoUpdateEnabled getting ignored by recent addition to related condition in UNavigationSystem #UE4 Reported by UT team. Replication of a fix from Dev-Framework that didn't make it to 4.15 stream #jira UE-40324 Change 3250276 on 2017/01/07 by Mieszko.Zielinski Fixed not being able to add elements to UAIPerceptionStimuliSourceComponent.RegisterAsSourceForSenses for instances manually placed on the map #UE4 #jira UE-31711 Change 3250219 on 2017/01/07 by Mieszko.Zielinski Extended comment to AISenseConfig_Sight::PeripheralVisionAngleDegrees to make it clear how it works #UE4 #jira UE-31731 Change 3250147 on 2017/01/07 by Andrew.Rodham Added missing includes #jira UE-40019 Change 3250096 on 2017/01/06 by Nick.Shin refetch on timed out GET/POST requests correction to: UE_MakeHTTPDataRequest #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3249963 on 2017/01/06 by Mieszko.Zielinski removed unused and undefined BlackboardKeyUtils::CalculateComparisonResult #UE4 #jira UE-40099 Change 3249829 on 2017/01/06 by Alexis.Matte turn on the material name clash feature for the content browser importer. #jira UE-40298 Change 3249791 on 2017/01/06 by andrew.porter QAGame: Added level blueprint logic to QA-Sequencer that lets tester override sequence bindings #jira UE-29618 Change 3249755 on 2017/01/06 by Jamie.Dale Some fixes for object reference detection and notification when deleting assets #jira UE-40121 Change 3249727 on 2017/01/06 by James.Golding #jira UE-40242 Change 3249707 on 2017/01/06 by Mitchell.Wilson Removing preview mesh with incorrect path from materials to resolve warnings in CIS. #jira UE-40311 Change 3249543 on 2017/01/06 by Michael.Dupuis #jira UE-40299: validate if UISettings is valid Change 3249506 on 2017/01/06 by Alexis.Matte Make sure we use the correct LodIndex when importing a new LOD in case a previous LOD import fail. #jira UE-40240 Change 3249477 on 2017/01/06 by Ori.Cohen Fix incorrect warning when moving kinematic objects during simulation. #JIRA UE-40290 Change 3249472 on 2017/01/06 by Andrew.Rodham Sequencer: Undo now works as expected when editing the properties of a key #jira UE-40019 Change 3249390 on 2017/01/06 by Mitchell.Wilson Removing preview meshes with improper path from materials to resolve CIS warnings in landscape mountains sample. #jira UE-40300 Change 3249317 on 2017/01/06 by Alexis.Matte Fix a crash when loading skeletalmesh with no section #jira UE-40249 Change 3249294 on 2017/01/06 by Mitchell.Wilson Updated defaultengine.ini for Match 3 to resolve warnings in CIS. ServerDefaultMap and TransitionMap had invalid paths. #jira UE-40295 Change 3249213 on 2017/01/06 by Chris.Bunner Fixed up logic for windowed/fullscreen output display selection when working with HDR. Now selects the most appropriate display if HDR enabled, else current monitor window is on. FullscreenDisplay commandline functions regardless of HDR support. #jira OR-33525, OR-33536, OR-33540, OR-33520 Change 3249135 on 2017/01/06 by Martin.Wilson Fix root motion issues on additive animations. - Fix scale issue on resetting root bone - Fix loss of root motion when animation is additive. #jira UE-40232 Change 3248522 on 2017/01/05 by Alexis.Matte Fix a crash when reimporting morph target. Also fix a crash when initiating ColorVertexBuffer with NULL value #jira UE-40201 Change 3248271 on 2017/01/05 by Andrew.Rodham Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence #jira UE-40234 Change 3248092 on 2017/01/05 by Ben.Marsh UBT: Remove the [Obsolete] attribute from methods in TargetRules; the [ObsoleteOverride] attribute gives a much better (and more concise) warning with specific instructions on how to resolve it. Change 3248091 on 2017/01/05 by Marcus.Wassmer Tick renderthreadtickables in -onethread to avoid leaks. #jira UE-40248 Change 3248063 on 2017/01/05 by Marc.Audy Route FAudioDevice::StopAllSounds to the audio thread if called on the game thread #jira UE-40243 Change 3247995 on 2017/01/05 by Maciej.Mroz NativizationSummary object is always present. manually merged cl#3247985 from Dev-Blueprints #jira UE-40035 Change 3247873 on 2017/01/05 by Chad.Garyet Adding "Generate QA Labels" buildgraph node and automation script. Port of createNewLabel and createMinimumLabel python scripts into UAT #jira UEB-725 Change 3247855 on 2017/01/05 by Nick.Shin refetch on timed out GET/POST requests #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3247737 on 2017/01/05 by Marc.Audy static mesh component instance data now correclty inherits from pritive component instance data instead of skipping it and inheriting directly from scene component instance data #jira UE-40053 Change 3247723 on 2017/01/05 by mason.seay Asset for suspend cloth bug #jira UE-29618 Change 3247708 on 2017/01/05 by Mitchell.Wilson Updating project settings to disable dbuffer decals to resolve rendering issues in Showdown while using -game -vr #jira UE-40195 Change 3247652 on 2017/01/05 by Martin.Wilson Fixes for animation notifies window -Fix notify not being removed from skeleton -Fix crash where editor is not refreshed after notify removal #jira UE-40154 Change 3247638 on 2017/01/05 by mason.seay Test assets for cloth suspension #jira UE-29618 Change 3247630 on 2017/01/05 by Alexis.Matte Prevent crash when the import fail and we have no staticmesh created #jira UE-40024 Change 3247556 on 2017/01/05 by Ben.Marsh Fix non-unity compile error. Change 3247547 on 2017/01/05 by Jurre.deBaare Crash while using the Delete Button in the HLOD Outliner while a Generated Proxy Mesh is opened in the Static Mesh Editor #fix Unify path for both delete cluster options in the outliner UI #jira UE-40066 Change 3247539 on 2017/01/05 by Benn.Gallagher Fixed serialization crash for simplified skeletal meshes leading to corrupted assets that crash on load after skin weight buffer changes. #jira UE-40199 Change 3247515 on 2017/01/05 by Allan.Bentham Fix inverted planar reflections when mobileLDR Fixed incorrect gamma 2 planar reflection rendering when mobileLDR #jira UE-32868 Change 3247502 on 2017/01/05 by Dmitriy.Dyomin Fixed: Single digit frame rate when sculpting landscape foliage. #jira UE-39532 Change 3247232 on 2017/01/04 by Ben.Marsh Remove private include from public header. Prevents compiling samples from installed build of the engine without private headers. #jira UE-40135, UE-40137, UE-40139, UE-40140, UE-40141, UE-40142, UE-40143, UE-40144 Change 3247002 on 2017/01/04 by Chris.Babcock Changed Vulkan hitchy pipeline log message verbosity #jira UE-38354 #ue4 #android #dontbackcopy Change 3246927 on 2017/01/04 by matt.barnes Updating QAGame content to facilitate UEQATC-2969 #jira UE-29618 Change 3246894 on 2017/01/04 by Mike.Beach Mirroring CL 3245322 from Dev-BP Fixed a crash when implementing a native interface in a BP #jira UE-40155, UE-40203 Change 3246830 on 2017/01/04 by Chris.Bunner Allow AllocGBuffer call when in simple-forward so dummy uniform buffer creation can occur. #jira UE-39756 Change 3246816 on 2017/01/04 by Jon.Nabozny Fix Anim Notifies Tab not opening in Animation Editor. #JIRA UE-40134 Change 3246804 on 2017/01/04 by Ori.Cohen Touch engine file to trigger re-link. #JIRA UE-40156 Change 3246709 on 2017/01/04 by mason.seay Updated map #jira UE-29618 Change 3246606 on 2017/01/04 by Ori.Cohen Fix for sweeps taking too long time (OR-32839). - Exhaustive investigation uncovered apparent numerical problems in this code (when compiling with clang 3.9.x with -ffast-math). - Current solution can result in overshoot for certain trace extents, but they are not expected to be a practical problem in Unreal. - NVidia is aware and will investigate a better solution. #tests Compiled Linux server with the changed PhysX and continuously ran bot matches for about a day. #JIRA UE-40156 Change 3246571 on 2017/01/04 by Marc.Audy Look at the body instance's desired collision enabled value rather than the primitive component's current collision enabled value when determining whether physics state should be created #jira UE-39994 Change 3246527 on 2017/01/04 by tim.gautier QAGame: BP_MediaPlayer now displays the name of the MediaPlayer plugin currently in use during playback #jira UE-29618 Change 3246480 on 2017/01/04 by mason.seay Map update #jira UE-29618 Change 3246470 on 2017/01/04 by Ori.Cohen Guard against infinitely thin geometry which fixes some nans. This showed up as issues in various projects #JIRA UE-00000 Change 3246413 on 2017/01/04 by Jon.Nabozny Cube asset did not have Tri Meshes. Reimported to fix the issue. -- Copied from 3233164 -- #jira UE-39657 Change 3246388 on 2017/01/04 by Jon.Nabozny Set 'p.MoveIgnoreFirstBlockingOverlap' to be enabled by default (3158732). This causes collision behavior to remain unchanged unless people opt in to the new behavior. -- Copied from 3239735 (bot health fixed by a different CL) -- #jira UE-39387 Change 3246352 on 2017/01/04 by Jon.Nabozny Fix FPredictProjectilePathParams to use a valid default value for TraceChannel. This requires the use of a new bool bTraceWithChannel which is enabled by default. -- Copied from 3239765 -- #JIRA UE-39726 Change 3246341 on 2017/01/04 by Ori.Cohen Allow vehicles to inherit from PawnMovementComponent and only use the pawn/ai capabilities when a Pawn owner is used. #JIRA UE-39508 Change 3246178 on 2017/01/04 by Andrew.Rodham Sequencer: When playback stops naturally, the play position is set to the boundary that caused playback to stop (the end if playing forwards, the start if playing backwards) - This is to reconcile the movie scene sequence player with previous behaviour #jira UE-40076 Change 3246102 on 2017/01/04 by Benn.Gallagher Fixed single threaded physics dispatcher triggering checks from clothing when running with a CPU with two or fewer cores. #jira UE-39811 Change 3246100 on 2017/01/04 by Benn.Gallagher Fixed ensure triggered when using root motion with sub instances Fixed crash reinstancing an active anim class that had subinstances #jira UE-39582 #jira UE-39579 Change 3246092 on 2017/01/04 by Marc.Audy PR #3082: Improve comment for UInputComponent (Contributed by Soleone) #jira UE-40098 Change 3246084 on 2017/01/04 by Matthew.Griffin Remove bad files Change 3246076 on 2017/01/04 by Matt.Kuhlenschmidt Fixed all non-editable text properties having a double disabled effect. The text box is read only which prevents edting but still allows copying text from it. This feature had regressed and the disabled effect on top of the read only effect made it too difficult to see the text. #jira UE-39652 Change 3246043 on 2017/01/04 by Steve.Robb Use of CastChecked instead of Cast in implementations of IStructSerializerBackend::WriteProperty. This is both more efficient and will hopefully make it easier to diagnose the issue. #jira UE-39872 Change 3246032 on 2017/01/04 by Martin.Wilson Change FindBoneIndex to FindRawBoneIndex (final bone maps are not built until after all adding is done so they will not be found) #jira UE-40105 Change 3246016 on 2017/01/04 by Andrew.Rodham Editor: Insert/Duplicate/Delete menu on array properties now only closes itself on click, rather than all menus - This allows us to edit such properties on context menus #jira UE-39998 Change 3246005 on 2017/01/04 by Thomas.Sarkanen Fixed asset attachment issues in Skeleton Tree Assets were being attached uniquely, so only one asset could be attached to a bone/socket. However the calling code didnt know that the unique attachment function just gave up, so the item just got added to the bottom of the tree. The attachment filter was not set correctly to allow for bone attatchments, so only sockets could be attached to. The attach parent name was not initialized, so assets could not be deleted one at a time. #jira UE-40040 - With multiple Preview assets on one bone, only one appears in Skeleton Tree #jira UE-40041 - Preview assets appear at the bottom of the skeleton tree Change 3246002 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed actor tick prerequisites not getting set up correctly for master sequences #jira UE-39975 Change 3245979 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed scrubbing audio tracks not working propertly #jira UE-40048 Change 3245978 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed dropping a level onto a level visibility section not marking the track as changed, and not correctly creating a transaction #jira UE-39998 Change 3245977 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed crash caused by lingering persistent evaluation data #jira UE-40064 Change 3245971 on 2017/01/04 by Dmitriy.Dyomin Fixed: Using Set World Origin Location will cause the player pawn to stutter #jira UE-40022 Change 3245725 on 2017/01/03 by Matt.Barnes Further improvments on test assets for UEQATC-2963 #jira UE-29618 Change 3245658 on 2017/01/03 by Arciel.Rekman Linux: fix ARM32 build (UE-39913). #jira UE-39913 (Redoing CL 3240982 from Dev-Platform in Release-4.15) Change 3245577 on 2017/01/03 by Mason.Seay More vehicle updates #jira UE-29618 Change 3245556 on 2017/01/03 by Matt.Barnes Updating test content for UEQATC-2963 #jira UEQATC-2963 Change 3245461 on 2017/01/03 by mason.seay Updating Inertia Tensor Scale to improve Vehicle Handling #jira UE-40013 Change 3245442 on 2017/01/03 by Jeff.Fisher UEVR-495 Assert when switching to 2d mode. sceHmdReprojectionStart failing. -There was a race condition between switching output modes on the render thread and sceHmdReprojectionStart on the RHI thread. The flush fixes that. The reprojection would simply have failed that frame previously in shipping which would not matter much as we are switching output modes anyway. #jira UEVR-495 #review-3245374 Change 3245427 on 2017/01/03 by Jeff.Fisher UEVR-456 check if we are using camera before doing camera disconnected dialog on PSVR -If the tracker is active, but we are tracking nothing (ie we have the morpheus hmd tracking plugin, and started up with it, but switched to 2d mode) don't pop up the camera setup warning until we start trying to track something again. -This is useful for apps that have 2d and vr modes. #jira UEVR-456 #review-3245372 Change 3245329 on 2017/01/03 by mason.seay Level and vehicle tweaks #jira UE-29618 Change 3245275 on 2017/01/03 by Chris.Babcock Added EngineVersion to AndroidManfiest.xml metadata #jira UE-40123 #ue4 #android Change 3245235 on 2017/01/03 by Guillaume.Abadie Cherry picks CL 3234813 from Dev-Rendering: Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3245183 on 2017/01/03 by Chris.Babcock Added missing #undef LOCTEXT_NAMESPACE to some files (contributed by projectgheist) #jira UE-40103 #PR #3085 #ue4 #android Change 3245120 on 2017/01/03 by mason.seay Missed some assets #jira UE-29618 Change 3245116 on 2017/01/03 by mason.seay Mass fucntional test #jira UE-29618 Change 3245049 on 2017/01/03 by Ben.Marsh PR #3086: Fixed ScriptGeneratorPlugin #includes (Contributed by projectgheist) Change 3244924 on 2017/01/03 by Ben.Zeigler #jira UE-40057 Fix regression in public access for SwapPlayerControllers, from GitHub #3072 Change 3244831 on 2017/01/03 by Mitchell.Wilson Fixed hole in collision around level. #jira UE-39576 Change 3244817 on 2017/01/03 by Matthew.Griffin Change check for files being under engine directory to avoid problems with relative paths #jira UE-40096 Change 3244801 on 2017/01/03 by Andrew.Rodham Editor: Fixed color picker not working when opened from a details panel on a context menu - When a color picker is opened from a details panel that's on a context menu, it now opens as a sub menu - Added the ability to find an open menu from a widget path to FSlateApplication #jira UE-39932 Change 3244776 on 2017/01/03 by Matt.Kuhlenschmidt Fix window handle and device context being accessed by scene viewports after the underlying window has been destroyed by the OS. This is an invalid state on linux and using some vr devices. #jira UE-7388 Change 3244672 on 2017/01/03 by Ben.Marsh Search all directories containing universal CRT installations from the registry, rather than assuming that the first one found will contain the universal CRT version we want to use. Attempt to fix issues described in PR #3059. Change 3244668 on 2017/01/03 by Thomas.Sarkanen Added "Reimport Animation" and "Export to FBX" to the animation editor toolbar Options were in the asset menu before. #jira UE-39643 - Missing "Reimport" option for animation assets Change 3244667 on 2017/01/03 by Thomas.Sarkanen Reduced default URO distances in-line with new LOD calculations New values should give (roughly) the same effect as the older values with the older system. #jira UE-39939 - URO LOD distance factors different with the new screen size metric Change 3244654 on 2017/01/03 by Matthew.Griffin Added functionality to specify Loading Phase for plugin templates Changed Blueprint Library Template so that it loads pre loading screen and can be linked correctly in blueprints that use it #jira UE-38826 Change 3244631 on 2017/01/03 by Dmitriy.Dyomin Fixed: TM_Landscape_LOD Folder does not Live Update contents after generating LODs with Create Per Package Asset #jira UE-37368 Change 3244548 on 2017/01/02 by Jack.Porter Fix for Post-process Materials rendering incorrectly in editor mobile preview after viewport is resized #jira UE-39905 Change 3244389 on 2016/12/30 by Phillip.Kavan [UE-39816] Fix broken pin links caused by renaming interface function input/output parameters prior to compiling the interface, but after renaming the function itself. Mirrored from //UE4/Dev-Blueprints (CL# 3244388). #jira UE-39816 Change 3244248 on 2016/12/29 by laz.matech Saved the new sublevel in the persistent level and set it to hidden by default #jira UE-29618 Change 3244213 on 2016/12/29 by laz.matech Added a sublevel to QA-Sequencer map #jira UE-29618 Change 3243857 on 2016/12/27 by samuel.proctor Altered Container asset to have proper console input #jira UE-29618 Change 3243852 on 2016/12/27 by Mason.Seay Forgot config file #jira UE-29618 Change 3243847 on 2016/12/27 by mason.seay Improved mobile input #jira UE-29618 Change 3243536 on 2016/12/24 by Phillip.Kavan [UE-39944] Extend the GetClassDefaults node to include output pin exceptions for TSet/TMap properties (i.e. mirror safeguards already in place for TArray). Mirrored from //UE4/Dev-Blueprints (CL# 3243210). #jira UE-39944 Change 3243535 on 2016/12/24 by Phillip.Kavan [UE-39816] Renaming interface input/output parameters will no longer cause broken pin links at interface function call sites in Blueprints that are currently loaded. Mirrored from //UE4/Dev-Blueprints (CL# 3243207). #jira UE-39816 Change 3243534 on 2016/12/24 by Phillip.Kavan [UE-39733] Fix incorrect graph pin value display names for user-defined enum types. Mirrored from //UE4/Dev-Blueprints (CL# 3239965). #jira UE-39733 Change 3243532 on 2016/12/24 by Phillip.Kavan [UE-39854] Fix nativized assets build error when there are no native code dependencies. Mirrored from //UE4/Dev-Blueprints (CL# 3239778). #jira UE-39854 Change 3243529 on 2016/12/24 by Phillip.Kavan [UE-38999] Dump component tree node hierarchy to the output log on error state during widget generation. Mirrored from //UE4/Dev-Blueprints (CL# 3239289). #jira UE-38999 Change 3243442 on 2016/12/23 by mason.seay QAGame cleanup - Replacing copy pose from mesh test assets #jira UE-29618 Change 3243215 on 2016/12/22 by Dmitriy.Dyomin Fixed: Switching to ES2 feature level preview renders black in editor #jira UE-40009 Change 3243185 on 2016/12/22 by Ryan.Vance #jira UEVR-478 Integrating 3235308 Mono changes from DevVR. Change 3243183 on 2016/12/22 by Ryan.Vance #jira UEVR-455 Integrating 3243173 post present call back implementation from 4.14.1 Change 3243182 on 2016/12/22 by Ryan.Vance #jira UE-39269 Working around a nullptr deref in the Oculus runtime. Change 3243153 on 2016/12/22 by mason.seay WIP map update #jira UE-29618 Change 3243128 on 2016/12/22 by andrew.porter QAGame: Adding Actor Sequence test content for a crash. #jira UE-29618 Change 3243117 on 2016/12/22 by Jeff.Fisher UE-34004 GitHub 2659 : Implement support for OpenVR controller roles. -Rather than assigning unreal hands to controllers in the order the controllers are connected assign unreal hands to match the ones the API is using. -We now defer setting up controllers that are disconnected. This lets connected controllers, that may have hand preference from steam, occupy their desired hands first. If a controller is connected later and does not have a role it is assigned to an unoccupied hand or to the right hand. -This can still end up ignoring role in the following circumstance (and I can get it to do this): get one controller to prefer'right' and the other to have no preference. Power off the 'right' prefering controller. Start the game with only the no-preference controller on. The game will put that controller in the right slot, because the api gives it no other hints. Then power on the controller that preferred 'right'. That controller will now be assigned left, because right is occupied. I don't see a way around that without the ability to switch which hand a controller is associated with at runtime. -This does not yet handle starting with 2 controllers, disconnecting one, then connecting a third controller well. That did not work before either. A new Jira was created for that. #2659 #jira UE-34004 #review-3231154 Change 3243093 on 2016/12/22 by mason.seay Some tweaks to vehicle levels #jira UE-29618 Change 3243084 on 2016/12/22 by andrew.porter QAGame: Cleaned up Sequencer_OverrideBindings #jira UE-29618 Change 3243009 on 2016/12/22 by andrew.porter QAGame: Renaming actor in Sequencer_OverrideBindings. #jira UE-29618 Change 3243003 on 2016/12/22 by andrew.porter QAGame: Removing override bindings from level sequence #jira UE-29618 Change 3242996 on 2016/12/22 by andrew.porter QAGame: Slight tweak to QA-Sequencer. #jira UE-29618 Change 3242982 on 2016/12/22 by Marc.Audy Properly reenable stats sounds in both game and level editor #jira UE-40015 Change 3242959 on 2016/12/22 by mason.seay Test map for vehicles and moving meshes #jira UE-29618 Change 3242934 on 2016/12/22 by andrew.porter QAGame: Adding test content to QA-Sequencer for Override Bindings #jira UE-29618 Change 3242870 on 2016/12/22 by Mason.Seay QAGame footprint reduction: Clearing out content (were in for old bug reports) #jira UE-29618 Change 3242799 on 2016/12/22 by tim.gautier QAGame - Adding the following assets for Sequencer Event Track testing: -TM-Sequencer_EventTrack + BuildData -QA_LightStruct -Sequencer_EventTrack #jira UE-29618 Change 3242792 on 2016/12/22 by samuel.proctor Correcting Container test asset for proper output #jira UE-29618 Change 3242727 on 2016/12/22 by Dmitriy.Dyomin Fixed: LoadLevelIntstance returns a reference that can't be used to send an interface message #jira UE-40005 Change 3242666 on 2016/12/22 by Dmitriy.Dyomin Fixed: Packaging Android app for Mali Graphics Debugger v4.3.0 fails #jira UE-39534 Change 3242373 on 2016/12/21 by Ori.Cohen Allow vehicles to override inertia tensor after any mass properties have changed. #JIRA UE-39566 Change 3242323 on 2016/12/21 by Josh.Adams - Somehow my last change just got completely lost in the edigrate shuffle. Or something. I have no idea! Rdoing it #jira UE-39966 Change 3242286 on 2016/12/21 by mason.seay Vehicle Assets and Maps #jira UE-29618 Change 3242284 on 2016/12/21 by Marc.Audy Fix "stat sounds" not working after PIE completes and a new one is begun #jira UE-32743 #jira UE-39511 Change 3242281 on 2016/12/21 by Ori.Cohen Fix multi select being very slow in phat #JIRA UE-39559 Change 3242229 on 2016/12/21 by Ben.Marsh Fixup workspace for building PhysX. Change 3242227 on 2016/12/21 by Marc.Audy Properly update listener position for stat sounds #jira UE-38850 Change 3242218 on 2016/12/21 by Ori.Cohen Fix physx html5 compilation APEX issue. #JIRA UE-39566 Change 3242174 on 2016/12/21 by Ori.Cohen Fix incorrect moment of inertia for convex elements with translation. #JIRA UE-39566 Change 3242145 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix for vehicle stability #JIRA UE-38710 Change 3242139 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix: Fix crash when setting collision trace in construction script. #JIRA UE-39341 Change 3242088 on 2016/12/21 by Alexis.Matte Fix the drag and drop material on level instance to drop on the correct material slot Fix the serialization of the staticmesh property FMeshSectionInfoMap #jira UE-39952 Change 3242081 on 2016/12/21 by Andrew.Rodham Sequencer: Make details view focused when resetting inner struct contents to ensure that focus path is valid. #jira UE-39851 Change 3242079 on 2016/12/21 by Andrew.Rodham Sequencer: Evaluation templates are now only fully rebuilt in PIE, and will not re-cycle track identifiers - This addresses issues with newly compiled tracks recycling the persistent data of old stale tracks. - This commit also ensures we don't fully rebuild templates in the editor when in Sequencer #jira UE-39882 Change 3242078 on 2016/12/21 by Andrew.Rodham Sequencer: Fixed crash when deactivating a section in sequencer #jira UE-39880 Change 3242026 on 2016/12/21 by Josh.Adams - Fixed compile errors in tools after NVNRHI move #jira UE-39966 Change 3241994 on 2016/12/21 by andrew.porter QAGame: Disabled auto play on Sequencer_AnimNotify. #jira UE-29618 Change 3241989 on 2016/12/21 by Mitchell.Wilson Resolving CIS warnings in Content examples. Fixed up redirectors. Moved a texture from developer folder into project and relinked in POM_Debug material. Fixed up BP Commentary Box which was failing to compile. Updated spawn rate on Pulse Ring so it works as intended. #jira UE-39984 Change 3241986 on 2016/12/21 by mason.seay Vehicle Landscape Test map (mainly for crash investigation) #jira UE-29618 Change 3241914 on 2016/12/21 by Josh.Adams - Removed invalid and confusing .ini settings #jira UE-39982 Change 3241902 on 2016/12/21 by Josh.Adams - Moved NVNRHI stuff out of RHI.Build.cs #jira UE-39966 Change 3241889 on 2016/12/21 by andrew.porter QAGame: Added new level sequence to QA-Sequencer level #jira UE-29618 Change 3241884 on 2016/12/21 by Alexis.Matte Make sure the color grading cursor follow the mouse by using the exponent value when painting the cursor. #jira UE-39834 Change 3241869 on 2016/12/21 by andrew.porter QAGame: Adding test content for Sequencer Animation Notifies #jira UE-29618 Change 3241809 on 2016/12/21 by Chris.Wood Fix non-unity build errors in UnrealWatchdog. [UE-39940] - GitHub 3054 : Added EngineBuildSettings.h to UnrealWatchdog.cpp PR #3054: Added EngineBuildSettings.h to UnrealWatchdog.cpp (Contributed by ryanjon2040) #jira UE-39940 Change 3241806 on 2016/12/21 by Marc.Audy Don't unload and then reload streaming levels that are marked to be hidden. #jira UE-39883 Change 3241802 on 2016/12/21 by Marc.Audy Add new object flag RF_NeedInitialization to indicate that ~FObjectInitalizer and PostInitProperties have not been executed for the object Do not allow Modify calls on Objects that have not been initialized #jira UE-39731 Change 3241790 on 2016/12/21 by Marc.Audy Don't rerun construction scripts when an actor has seamless traveled from another level #jira UE-39699 Change 3241789 on 2016/12/21 by Marc.Audy Check Owner has a valid world before trying to access Scene (4.14.2) #jira UE-39560 Change 3241786 on 2016/12/21 by Marc.Audy Fixed crash when seamless travelling in PIE from levels other than the current editor level with a streaming sublevel shared with the current editor level #jira UE-39407 Change 3241781 on 2016/12/21 by Mitchell.Wilson Fixed up redirectors for SkeletalMesh and Personal Walkthroughs. #jira UE-30953 Change 3241747 on 2016/12/21 by mason.seay Tag Query test map and assets #jira UE-29618 Change 3240938 on 2016/12/20 by Ben.Marsh Remaking QFE fixes from 4.14 branch. Change 3240740 on 2016/12/20 by Ben.Marsh Update branch name for analytics. [CL 3272229 by Matthew Griffin in Main branch]
2017-01-25 16:23:41 -05:00
{
check(ArrayIndices[RenderTargetIndex] == 0);
#if PLATFORM_ANDROID
if (RenderTarget->IsTiledMSAA() && glFramebufferTexture2DMultisampleEXT)
{
Copying //UE4/Release-Staging-4.14 to //UE4/Dev-Main (Source: //UE4/Release-4.14 @ 3195953) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3195953 on 2016/11/12 by Leslie.Nivison Rollback //UE4/Release-4.14/Engine/Plugins/Runtime/Nvidia to changelist 3193712 New GameWorks license from NVIDIA #jira UEPROD-900 Change 3195944 on 2016/11/12 by Leslie.Nivison Removing GameWorks SDK license until we get a new one from NVIDIA #jira UEPROD-900 Change 3195942 on 2016/11/11 by Chris.Gagnon Removing Ansel from 4.14 until revised EULA is handle. #jira UE-none Change 3195431 on 2016/11/11 by Mitchell.Wilson Rebuilt lighting in subway reflections sample #jira UE-38538 Change 3195080 on 2016/11/11 by mason.seay Extended floor to allow more driving space #jira UE-29618 Change 3194886 on 2016/11/11 by Chris.Babcock Correct handling for 6x6 blocksize in ASTC compressor #jira UE-38513 #ue4 #android Change 3193712 on 2016/11/10 by Leslie.Nivison Updating Ansel TPS info per NVIDIA response #jira UEPROD-900 Change 3193691 on 2016/11/10 by Lina.Halper #jira: UE-38488 Change 3193532 on 2016/11/10 by Lauren.Ridge Fix to keep the user in VR editing mode after leaving VR PIE. #jira UE-38317 Change 3193468 on 2016/11/10 by Leslie.Nivison Removing unneeded license #jira UEPROD-900 Change 3193465 on 2016/11/10 by Leslie.Nivison Updating credits for 4.14 #jira UEPROD-902 Change 3193416 on 2016/11/10 by Daniel.Lamb Changed default of exclude editor only content flag. #jira UE-38455 Change 3193399 on 2016/11/10 by Mitchell.Wilson Applied correct material to certain LODs of tree meshes in KiteDemo #jira UE-38472 Change 3193049 on 2016/11/10 by Thomas.Sarkanen Fix disappearing mesh on undo in skeletal mesh editor Also fixes crash on undo in morph target panel #jira UE-38430 - Undo in Skeletal Mesh Editor causes model to disappear #jira UE-38437 - Crash when Undo after editing a weight in Morph Target Previewer Change 3192655 on 2016/11/09 by Ryan.Vance #jira UE-37238 Pulling in 3164679 and 3169467 which didn't make the 4.14 cut. Also changed to a full inverse for InvTranslatedViewProjectionMatrix in FViewMatrices::UpdateViewMatrix. Change 3192613 on 2016/11/09 by Leslie.Nivison Updating licenses due to TPS version updates. Logging undocumented TPS per engine audit #jira UEPROD-900 Change 3192197 on 2016/11/09 by Daniel.Wright Added SUPPORT_CONTACT_SHADOWS, only standard deferred lighting supports it. Fixes scene depth texture bound in forward shading base pass. #jira UE-38340 Change 3192182 on 2016/11/09 by Rolando.Caloca UE4.14 - Fix recompute tangents not working when skin cache is enabled #jira UE-38398 Change 3191695 on 2016/11/09 by Chris.Wood Editor heartbeat changes for 4.14 [AN-1003] - Make Editor heartbeat 1min [UE-38417] - Editor heartbeat changes (vanilla editor, new interval, debugger attached) Also added IsDebugger, IsVanilla and IntervalSec to Editor.Usage.Heartbeat #jira UE-38417 Change 3191437 on 2016/11/09 by Jack.Porter Fix for LandscapeInfo crash when using Force Delete #jira UE-37172 Change 3191033 on 2016/11/08 by Leslie.Nivison Adding licenses for marketplace plugins #jira UEPROD-901 Change 3191028 on 2016/11/08 by Leslie.Nivison Updating licenses due to TPS version updates. Logging undocumented TPS per engine audit #jira UEPROD-900 Change 3190632 on 2016/11/08 by mason.seay Updated testmap and assets #jira UE-29618 Change 3190624 on 2016/11/08 by Jamie.Dale Fixed case where FHTML5TargetPlatform::RefreshHTML5Setup could incorrectly add an empty device Changes to UStrProperty::ExportTextItem caused FParse::Value to (correctly) read an empty string for DevicePath which passed the DirectoryExists check (where it would have previously read "))" which would fail that check). #jira UE-38157 Change 3190443 on 2016/11/08 by Josh.Adams - Somehow checking in my tested shelf messed up #jira UE-38304 Change 3190354 on 2016/11/08 by Josh.Adams - Vulkan now always being compiled in, if the SDK exists. Compiling not dependent on project settings #jira UE-38304 Change 3190123 on 2016/11/08 by zachary.wilson Updating testing content for sureface per-pixel improvements #jira UE-29618 Change 3190113 on 2016/11/08 by Alexis.Matte Make sure the default light map channel is 1 and not 0 #jira UE-35627 Change 3190102 on 2016/11/08 by Dmitry.Rekman Linux: default to binned everywhere (UE-38287). - Fixes suspicious crashes happening in uncooked build. Workaround, needs separate investigation. #jira UE-38287 Change 3190000 on 2016/11/08 by Allan.Bentham Removed old protostar loadmap hack. #jira UE-38342 Change 3189914 on 2016/11/08 by Allan.Bentham Fix vulkan crash when rendering sky capture. Fix crash when rendering LDR scene capture on device. #jira UE-38291 Change 3189861 on 2016/11/08 by Thomas.Sarkanen Fix out of bounds access when using hidden bones with master pose components Code was trying to to access the ReferenceToLocal array using a parent index from the master pose component. Now changed to only use indices known to be valid (i.e. this component's) to index the ReferenceToLocal array. Bone visibility is still master-authoratitive. #jira UE-38214 - [CrashReport] UE4Editor_Engine!UpdateRefToLocalMatrices() [skeletalrender.cpp:238] Change 3189370 on 2016/11/07 by Daniel.Wright Only check transform mismatches for static lighting in UStaticMeshComponent::ApplyComponentInstanceData on components that actually can have static lighting #jira UE-38272 Change 3189358 on 2016/11/07 by Mark.Satterthwaite Intel Metal drivers can no longer compile our compute shaders reliably meaning Intel Macs must always use Metal SM4 as otehrwise they will crash. #jira UE-38299 Change 3189273 on 2016/11/07 by Rolando.Caloca UE4.14 - Integrate fix from 3161219 #jira UE-38270 Change 3189084 on 2016/11/07 by Chris.Bunner Fix RemoveAAJitter from projection matrix. #jira UE-37701, UE-38003 Change 3188636 on 2016/11/07 by Allan.Bentham use glVertexAttribIPointer only on ES3.1 enabled projects. #jira UE-38241 Change 3188596 on 2016/11/07 by Yannick.Lange VR Editor: Fix crash when closing window while in VR Editor #jira UE-37995 Change 3188433 on 2016/11/07 by Matthew.Griffin Add starter content .upack files to starter_content tag so that they should still be installed if templates/feature packs option is de-selected in the Launcher Change 3187739 on 2016/11/04 by Mitchell.Wilson Updating DefautlEditor and DefaultEngine ini to correct path to VehicleMenu level. #jira UE-29748 Change 3187536 on 2016/11/04 by Martin.Wilson Fix for "Renaming a montage section via its details panel doesn't update the section correctly" #jira UE-35929 Change 3187499 on 2016/11/04 by zachary.wilson Checking in content fixes for Lighting Scenarios test level #jira UE-29618 Change 3187492 on 2016/11/04 by mason.seay Updated map to improve testing #jira UE-29618 Change 3187438 on 2016/11/04 by Nick.Shin fix html5 port number for cook-on-the-fly option #jira UE-38032 - Quicklaunch HTML5 fails on Chrome. Browser returns "This site can't be reached 127.0.0.1 refused to connect" Change 3187305 on 2016/11/04 by Martin.Wilson Fix log spam from animation sequence thumbnails #jira UE-38224 Change 3187260 on 2016/11/04 by Lauren.Ridge Fix for crash on opening a level in VR Editing mode. When closing VREditorMode for a level load, HMD no longer leaves stereo mode. #jira UE-32541 Change 3187224 on 2016/11/04 by Robert.Manuszewski Proper fix for a crash when launching BP-only project from the Editor with EDL enabled (does not modify UE4Game target binaries) #jira UE-37617 Change 3187136 on 2016/11/04 by Alexis.Matte Fbx importer for static mesh, make sure that we order the materials array to follow the section order. #jira UE-38242 Change 3187065 on 2016/11/04 by Mitchell.Wilson Updated BP_Commentary_Box to resolve warnings with array if the box opens then closes before the text is rendered. #jira UE-38266 Change 3187056 on 2016/11/04 by Mike.Beach Guarding against a rare crash that occurs when compiling a Blueprint after hot-reload. GUnrealEd was null, which is concerning (as it could have resounding effects in other systems), but as I could not repro it more than once (to figure it out more) I simply guarded the use of a null pointer here. #jira UE-38198 Change 3187040 on 2016/11/04 by Matthew.Griffin Corrected path to DotNETCommon folder Exclude all editor plugin pdbs from stripping #jira UE-37072 Change 3186984 on 2016/11/04 by Marc.Audy Fix crash when null component considered #jira UE-36493 Change 3186600 on 2016/11/04 by Max.Chen Sequencer: Fix crash in sequencer editor mode. #jira UE-38205 Change 3186564 on 2016/11/04 by Nick.Shin checking in latest physx libs for html5 #jira UE-38179 HTML5 Player falls through world on Firefox 64-bit Change 3186258 on 2016/11/03 by Nick.Shin fix for automation build to handle deleting of windows x86 & x64 libs properly #jira UE-38179 HTML5 Player falls through world on Firefox 64-bit Change 3186225 on 2016/11/03 by Lauren.Ridge Fix for foliage brush not showing up until after first motion controller click. #jira UE-38002 Change 3186100 on 2016/11/03 by Chris.Babcock Update local notifications to deal with depreciated API #jira UE-38236 #ue4 #android Change 3186074 on 2016/11/03 by Mitchell.Wilson Rebuilt lighting in Content Examples Welcome level #jira UE-38239 Change 3185923 on 2016/11/03 by Lina.Halper Fixed issue with animation not ticking in inactive world causing it to update parent animation #jira: UE-37933 Change 3185764 on 2016/11/03 by Mitchell.Wilson Updating deprecated node in MyCharacter_UMG. #jira UE-38229 Change 3185683 on 2016/11/03 by Nick.Shin non SSE2 version of PhysX for HTML5 #jira UE-38179 HTML5 Player falls through world on Firefox 64-bit Change 3185492 on 2016/11/03 by Ben.Woodhouse Workaround for very high render query memory overhead on D3D12. Add a cvar to limit timestamp queries allocated by the GPU profiler in a given frame. On D3D12 this limit is 1024 - other RHIs remain unbounded. Currently render queries are 64KB each on D3D12, so this prevents high memory overhead on particular frames, e.g when we render a large number of reflection captures. In practice, most frames are under 400 queries, so in practice we shouldn't hit the limit except in extreme cases. #jira UE-38139 Change 3185481 on 2016/11/03 by Dmitry.Rekman Remove version number from Linux README (UE-38059). #jira UE-38059 Change 3185322 on 2016/11/03 by Ryan.Gerleve Allow path names in NetFieldExportGroups to be remapped on the client. #jira UE-37990 Change 3185293 on 2016/11/03 by Matthew.Griffin Exclude UnrealControls and iPhonePackager from Build Tools CS node on non-Windows platforms as they don't compile #jira UE-34016 Change 3185252 on 2016/11/03 by Michael.Trepka Properly revert to OpenGL on Macs that do not support Metal #jira UE-38190 Change 3184835 on 2016/11/03 by Jurre.deBaare Crash when using undo in the preview scene settings of Persona #fix Ensure that the profile index is valid after undo-ing #misc Added transactions for adding/remove of the profiles #jira UE-38142 Change 3184833 on 2016/11/03 by Jack.Porter Fixed crash when ENABLE_VERIFY_GL and r.MobileOnChipMSAA is enabled on Android #jira UE-38186 Change 3184418 on 2016/11/02 by Ryan.Vance #jira UE-38161 Adding ISceneViewExtension::UsePostInitView which will be used to enable/disable the usage of PostRenderViewFamily_RenderThread and PostRenderView_RenderThread which was added earlier. We need to enable this behavior based on the hmd's compositor behavior, so a simple cvar wont work. I missed the PostPresent implementation for steamvr in the earlier check in. Change 3184286 on 2016/11/02 by Dan.Oconnor Fix for IsValidLowLevel check being rotten. More correct fix will go into Dev-BP, but this is a low risk stop-gap #jira UE-38149 Change 3184283 on 2016/11/02 by Arne.Schober DR - UE-38155 replicated MS CL 3183837 - PSO Dangling Pointers: The PSO cache was returning pointers out of a Map which is based on a sparse Array and those pointers could become invalid if other insertions happen. #jira UE-38155 Change 3184244 on 2016/11/02 by Richard.Ugarte #jira UE-37534 Checking in updated UE4_Demo_Head_D on behalf of MikeB Change 3184171 on 2016/11/02 by Michael.Trepka Made Mac CrashReportClient high-DPI aware and fixed high-DPI handling in FMacWindow::IsPointInWindow() #jira UE-37697 Change 3184126 on 2016/11/02 by Lauren.Ridge VR Editor: Fixes for foliage painting only working on one controller, and for full press not painting foliage. #jira UE-38147 #jira UE-38002 Change 3183997 on 2016/11/02 by Mitchell.Wilson Scaled and Rotated 3d Widget to the correct position on example 2.3 in Content Examples UMG. Adjusted collision on example 1.4 in Content Examples Physics. Updated collision on SM_ExampleMesh_Rocket. Realigned some text render actors in Content Examples Post Process. #jira UE-38099 UE-38078 UE-38064 Change 3183945 on 2016/11/02 by Mieszko.Zielinski Fixed changing AreaClass of NavLinkProxy point links not having any effect on navmesh generation #UE4 #jira UE-38137 Change 3183906 on 2016/11/02 by Nick.Shin for OSX (release-4.14 stream): new OSX clang (from 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 fixes for OSX -- update existing (bash shell script and UE4 c#) build files to use the new "incoming" emsdk #jira UE-37329 - Step 'Compile UE4Game HTML5' - 300 Warnings Change 3183899 on 2016/11/02 by Mieszko.Zielinski Fixed EQS debugger not drawing item labels #UE4 #jira UE-38122 Change 3183239 on 2016/11/02 by Peter.Sauerbrei fix for mobile provision with UUID only filename being allowed again by copying them to a new file name which allows them to be used. #jira UE-38006 Change 3183149 on 2016/11/02 by Luke.Thatcher [RELEASE] [SHOOTERGAME] [!] Fix "Is Talking" icon on ShooterGame scoreboard, after PS4 OSS refactor. - ShooterGame was comparing FUniqueNetId::ToString() against AShooterPlayerState::GetShortPlayerName(). - This is wrong, since the NetId is not guaranteed to be equal to the player's name. #jira UE-38011 Change 3183005 on 2016/11/02 by Luke.Thatcher [RELEASE] [PS4] [^] Merging (as edit) PS4 OSS fixes from Engine to OrionGame. #jira UE-38017 UE-38020 Original Changelists: 3182765 [RELEASE] [PS4] [~] Additional logging for PS4 OSS "Play Together". 3182766 [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. 3182767 [RELEASE] [PS4] [!] Fix PS4 session invitations. - Was calling old Web API with SceNpOnlineId where SceNpAccountId is needed. - Replaced with NpToolkit2's session invitation API. 3182892 [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(). 3182951 [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). Change 3182992 on 2016/11/02 by Nick.Darnell UMG Editor - Fixing a regression with the editor, closing the sequencer tab and reopening the editor should no longer cause a crash. #jira UE-38098 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 [CL 3201696 by Matthew Griffin in Main branch]
2016-11-17 04:29:30 -05:00
// GL_EXT_multisampled_render_to_texture requires GL_COLOR_ATTACHMENT0
glFramebufferTexture2DMultisampleEXT(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0 + RenderTargetIndex, RenderTarget->Target, RenderTarget->GetResource(), MipmapLevels[RenderTargetIndex], RenderTarget->GetNumSamplesRendered());
VERIFY_GL(glFramebufferTexture2DMultisampleEXT);
}
else
#endif
{
FOpenGL::FramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0 + RenderTargetIndex, RenderTarget->Target, RenderTarget->GetResource(), MipmapLevels[RenderTargetIndex]);
}
break;
Copying //UE4/Release-Staging-4.15 to //UE4/Dev-Main (Source: //UE4/Release-4.15 @ 3267632) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3267632 on 2017/01/23 by Jurre.deBaare Marker syncs not working correctly in Blend Spaces #fix Ensure that SampleIndexWithMarkers is serialized #JIRA UE-40975 Change 3266915 on 2017/01/20 by Arciel.Rekman Fix Persona crash on Linux (UE-38790). - Static template variable got instantiated into multiple DSOs; probably exacerbated by --as-needed since this does not happen without it. #jira UE-38790 Change 3266785 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Make usage of CachedUsers thread safe. Duplicates CL 3245390 #jira UE-40649 Change 3266762 on 2017/01/20 by Rolando.Caloca UE4.15 - Fix for reallocating scene color #jira UE-40633 Change 3266642 on 2017/01/20 by Lina.Halper Downgraded Warning to Info #jira: UE-40643 Change 3266532 on 2017/01/20 by Jeff.Campeau Fix multiplatform Windows includes defeating the safety check in MinWindows.h #jira UE-40778 #rn Fixed a compile warning on Xbox One when XboxOneMinApi.h was included before MinWindows.h. Change 3266523 on 2017/01/20 by Marc.Audy Fix case where child actor could avoid getting begin play call #jira UE-40960 Change 3266474 on 2017/01/20 by Peter.Sauerbrei fix for using an API not yet available in iOS 8 #jira UE-40698 Change 3266339 on 2017/01/20 by Frank.Fella Sequencer - Fix UI issues with multi-track section rows. + Don't show an empty sub-track when there are no sections. + Expand parent tracks by default. #Jira UE-40487 Change 3266283 on 2017/01/20 by Jeff.Fisher UE-40683 GearVR projects rendering black -Fix from Remi Palandri #jira UE-40683 #review-3265824 @nick.whiting @ryan.vance Change 3266264 on 2017/01/20 by Lina.Halper Downgraded warning and changed log message #jira: UE-40643 Change 3266239 on 2017/01/20 by Peter.Sauerbrei fix for virtual joystick not showing up on some devices #jira UE-40472 Change 3266084 on 2017/01/20 by Mitchell.Wilson Resaving level to have correct starting camera position. Saved in wrong position after fixing a bug. #jira UE-40887 Change 3266077 on 2017/01/20 by Matt.Kuhlenschmidt Fixed "Wait for Movies to Complete" flag being reversed #jira UE-40943 Change 3266076 on 2017/01/20 by Mitchell.Wilson Updating occulsion bounds method on P_spark_burst_2 so it is not occluded when spawned inside of the coin mesh in BP_Overview example. Updating some post process examples due to changes made with Post Process settings. Film and Scene Color are temporary fixes and are intended to be fully updated in 4.16 #jira UE-40830 UE-40887 Change 3266034 on 2017/01/20 by Benn.Gallagher Fixed crash when reimporting APEX destructibles from apb/x files caused by not allowing the renderer to flush destroy resource commands before emptying an array. #jira UE-40911 Change 3266027 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Fix CreateSession and FindSession each permanently failing after first failure. Duplicates CL 3262175 #jira UE-39110 Change 3265906 on 2017/01/20 by Marcus.Wassmer Fix GPU particle AFR flickering and optimize injection transfers. Duplicate CL's 3260302, 3261252, 3265662, 3265678 #jira UE-40915 Change 3265873 on 2017/01/20 by Mark.Satterthwaite Duplicate CL #3262535: Make sure to set rasterizer state when rendering with a material in FSlateRHIRenderingPolicy::DrawElements #jira UE-40842 Change 3265857 on 2017/01/20 by Jamie.Dale Fixed font pathing issue that could happen in an out-of-source packaged build #jira UE-40855 Change 3265675 on 2017/01/20 by Matt.Kuhlenschmidt Move Dirt Mask Intensity to the correct post process category #jira UE-40851 Change 3265674 on 2017/01/20 by Rolando.Caloca UE4.15 - Revert #jira UE-40633 Change 3265647 on 2017/01/20 by Mitchell.Wilson Updating spawn location of the player pawn after unpossessing character in example 1.10. #jira UE-40870 Change 3265612 on 2017/01/20 by Alexis.Matte Prevent name clash warning when doing automation test #jira UE-40788 Change 3265553 on 2017/01/20 by Matthew.Griffin Fixed Shadow variable warning Change 3265366 on 2017/01/20 by Dmitriy.Dyomin Fixed: Vulkan crashes on Adreno Galaxy S7 #jira UE-40840 Change 3265294 on 2017/01/19 by Dmitriy.Dyomin Fixed typo which was causing assert on mobile #jira UE-40633 Change 3265111 on 2017/01/19 by Rolando.Caloca UE4.15 - Fix for scene color crash #jira UE-40633 Change 3264789 on 2017/01/19 by Josh.Adams - Redoing a fix from Dev-Plat for UI_BUILD_SHIPPING_EDITOR #jira UE-40798 Change 3264780 on 2017/01/19 by Rolando.Caloca UE4.15 - Add Morph compute GPU stat #jira UE-40891 Change 3264486 on 2017/01/19 by Mark.Satterthwaite Fix the crash on startup on Intel GPUs - this is due to Intel Metal forcing SM4 to avoid some drivers bugs in SM5 but I got the condition for initialisation in FMinimalDummyForwardLightingResources wrong so it's attempting to create a RWBuffer for SM4 which won't work. #jira UE-40863 Change 3264427 on 2017/01/19 by Rolando.Caloca UE4.15 - Track down crash #jira UE-40633 Change 3264393 on 2017/01/19 by Aaron.McLeran #jira UE-40850 Re-fixing UE-39650 again in 4.15. I hope this bug doesn't regress yet again! Change 3264364 on 2017/01/19 by Daniel.Wright In forward shading SceneCaptureSource modes Normal and BaseColor are replaced with SceneColorHDR as the GBuffer is not available. This is a silent failure for now as there's no good content error reporting mechanism for scene captures. #jira UE-39658 Change 3264284 on 2017/01/19 by Mark.Satterthwaite Duplicate CL #3264251: Modify some asserts in MetalRHI - technically using a store-action of ENoAction on Stencil buffers should make it invalid to restart a render-pass but on Mac it will work because ENoAction won't invalidate anything written. In future we need to use deferred store-actions in Metal so that we can "restart" passes while enforcing correct Load/Store actions. #jira UE-40803 Change 3264282 on 2017/01/19 by Benn.Gallagher CIS fix, bad expression that failed to compile Mac #jira UE-40716 Change 3264257 on 2017/01/19 by Mike.Beach Revising fix in UBlueprint::BeginCacheForCookedPlatformData(), saving off nativization data if the -nativizeAssets param is present (not just if it was enabled in packaging settings). #jira UE-40620 Change 3264242 on 2017/01/19 by Daniel.Wright [Copy] Sharing IndirectLightingCacheTextureSampler samplers #jira UE-40727 Change 3264191 on 2017/01/19 by Ori.Cohen Fix heightfield not working with traces underneath. #JIRA UE-39819 Change 3264139 on 2017/01/19 by Benn.Gallagher Removed collision between clothing in external skeletal mesh components, as clothing simulations could already be in flight and editing collisions while the simulation is running is not supported by APEX #jira UE-40716 Change 3264110 on 2017/01/19 by Max.Preussner MfMedia: Disabled plug-in on Windows 10, because it is currently broken #jira UE-406344 Change 3264108 on 2017/01/19 by Max.Preussner MfMedia: Fixed compile errors on Windows 10 #jira UE-40644 Change 3264099 on 2017/01/19 by Jamie.Dale Adding deprecation warning for 4.14 style PO export #jira UE-40592 Change 3264089 on 2017/01/19 by Matthew.Griffin Reworked DDC commandlet to make sure it actually calls BeginCacheForCookedPlatformData on assets Skip doing this for Engine content if -ProjectOnly is set as that takes a long time and isn't necessary for the way we use it #jira UE-39968 Change 3264065 on 2017/01/19 by James.Golding Fix ModifyCurve node not calling init/update in SourcePose #jira UE-40852 Change 3263729 on 2017/01/19 by Alexis.Matte Fix a bad condition when filling the material sorting array #jira UE-40814 Change 3263704 on 2017/01/19 by Jack.Porter Fix compile error in AndroidESDeferredOpenGL.cpp when " ES Deferred Shading Renderer" is enabled. #jira UE-40659 Change 3263627 on 2017/01/19 by Jack.Porter Fixed black textures when Vulkan is packaged for ETC1 #jira UE-40658 Change 3263554 on 2017/01/19 by Jack.Porter Fixes to HISMC LOD to use new screen size calculation. Solves issue where HISMC was always rendered at lowest LOD. #jira UE-38930 Change 3263535 on 2017/01/19 by Matthew.Griffin Removed unnecessary directories to always cook Problem was actually down to string asset references not being resolved in file set generation Change 3263534 on 2017/01/19 by Matthew.Griffin Added -SkipPublish parameter to BuildLauncherSample command so that we don't chunk and post preflights Change 3263267 on 2017/01/18 by Dan.Oconnor Fix for editing of TMap/TSet variables in structure editor, async tasks, and when using UK2Node_CommutativeAssociativeBinaryOperator. #jira UE-40428 Change 3263219 on 2017/01/18 by Dan.Oconnor Fix copy paste error found by UDN user Craig.Wright that could result in fatal bytecode execution #jira UE-19425 Change 3262980 on 2017/01/18 by Maciej.Mroz #jira UE-40394, UE-40395, UE-40426, UE-40484, UE-40770 Integrated cl 3262851, 3261613, 3260908 from Dev-Blueprint Change 3262908 on 2017/01/18 by Ori.Cohen When refreshing physics assets, don't do so on components that have no bodies. #JIRA UE-40764 Change 3262709 on 2017/01/18 by Matt.Kuhlenschmidt Fix a crash if a background blur widget ends up being negative or zero sized #jira UE-40820 Change 3262606 on 2017/01/18 by Marc.Audy Don't bother the user with force feedback based on where the unpossessed pawn is standing in the world while in simulate mode #jira UE-40785 Change 3262416 on 2017/01/18 by Marc.Audy Reenable audio threading #jira UE-00000 Change 3262125 on 2017/01/18 by Chris.Wood Fixed unnecessary truncate in SMenuAnchor::Tick that caused menu placement to wobble [UE-40293] - Dropdown selection box jitters when mouse is moved over top of it on Mac #jira UE-40293 Change 3262103 on 2017/01/18 by Jamie.Dale Merging some cooker fixes CL# 3262089 - Fixing RedirectCollector issues with projects outside the UE4 directory CL# 3262091 - Guarding against potentially invalid call to FString::Mid CL# 3262094 - Cook on the fly builds now resolve string asset references #jira UE-40790 Change 3262082 on 2017/01/18 by Chris.Bunner Accumulate used particle materials from final mesh material module, not first. #jira UE-39953 Change 3261996 on 2017/01/18 by Matthew.Griffin Allow Samples to be built in pre-flights if you are specifying an engine version Change 3261995 on 2017/01/18 by Matthew.Griffin Resolve string asset references after loading packages to ensure that we find all required files Change 3261934 on 2017/01/18 by Allan.Bentham Bump shader version to force changes in 3260307 to occur. #jira UE-39701 Change 3261842 on 2017/01/18 by Graeme.Thornton Manual copy of CL 3253580 from Dev-Core Added some validation of the class index in exportmap entries #jira UE-37873 Change 3261017 on 2017/01/17 by Mitchell.Wilson Resaving all levels to resolve short form string asset reference warnings. #jira UE-40732 Change 3260918 on 2017/01/17 by Andrew.Rodham Sequencer: Request unloaded levels to be loaded when being made visible through sequencer #jira UE-40082 Change 3260909 on 2017/01/17 by Ben.Marsh Fix error running "Clean" in installed build. #jira UE-40751 Change 3260757 on 2017/01/17 by Jeff.Fisher UE-39654 Crash when launching Google VR project -Via SwitchGameWindowToUseGameViewport we get an early ResizeViewport which does an early Draw. This calls GetStereoProjectionMatrix before the game has ticked and fetched the device info we use to build that matrix. -In this change we make the call to setup that information in the GoogleVRHMD constructor, to ensure it is done before anything tries to use it. -I also added some asserts. #jira UE-39654 #review-3260644 Change 3260637 on 2017/01/17 by Alexis.Matte Fix crash when importing skeletal mesh containing a texture or a material using the same name. #jira UE-40538 Change 3260630 on 2017/01/17 by Marc.Audy When installing a feature pack maintain the include of the template so that any properties inside it are not lost by replacing it with the project's PCH include Update all C++ feature packs to include the original project .h in the files that are copied in to the new project #jira UE-40730 Change 3260600 on 2017/01/17 by matt.barnes Test content for sequencer event tracks #jira UE-29618 Change 3260593 on 2017/01/17 by Mieszko.Zielinski Made FSupportedAreaData export as part of engine API #UE4 #jira UE-40739 Change 3260538 on 2017/01/17 by Marc.Audy Always display axes in debug info, but show -- for value when we don't yet know the ranges #jira UE-40700 Change 3260422 on 2017/01/17 by Marc.Audy Expose level streaming incremental unregister component cvars in the engine streaming section of the project settings #jira UE-10109 Change 3260392 on 2017/01/17 by Ben.Woodhouse Duplicated from CL 3260107: Fix FMonitoredProcess to prevent infinite loop in -nothreading mode #jira UE-40717 Change 3260358 on 2017/01/17 by Chris.Bunner Only validate tonemapper LUT input if actually hooked up. #jira UE-40467 Change 3260327 on 2017/01/17 by Frank.Fella PlatformMediaSource - Fix Validate to check all specified media sources, and change GetURL to get the url for the current platform when running uncooked. #jira UE-40709 Change 3260307 on 2017/01/17 by Allan.Bentham Restore metal compiler's shader source serialization code when the shader is to be compiled at runtime. #jira UE-39701 Change 3260276 on 2017/01/17 by Alex.Delesky #jira UE-40276 - Fixing an issue where a Standalone game launched from the editor cannot toggle fullscreen mode. Change 3260274 on 2017/01/17 by Chris.Wood Added check for null World ptr in AActor::PostEditChangeProperty to fix crash when pasting temporary Actors [UE-40492] - Crash after ejecting from PIE session and selecting a component in the details panel #jira UE-40492 Change 3260230 on 2017/01/17 by Ben.Woodhouse Duplicated from dev-rendering@3232283 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 3260096 on 2017/01/17 by Thomas.Sarkanen Fixed crash when rendering out a level sequence with layered animations When a level contained sequences with layered animations that *werent* taking part in the render (i.e. they were not part of the current master sequence) then their instances were initialized but not ticked. When their components then got a call to evaluate their bone transforms, the cached blends were in an uninitialized state. #jira UE-40654 - Render Movie using separate process crashes capture process Change 3259875 on 2017/01/17 by Dmitriy.Dyomin Fixed: SunTemple is washed out in one color on some Android devices #jira UE-40689 Change 3259011 on 2017/01/16 by Max.Chen Matinee to Level Sequence: Make RegisterTrackConverters pure virtual #jira UE-37328 Change 3258992 on 2017/01/16 by Rolando.Caloca UE4.15 - Integrate fix for outlines (3258807) #jira UE-40690 Change 3258949 on 2017/01/16 by mason.seay Disabled TranslatedMass test #jira UE-29618 Change 3258860 on 2017/01/16 by Max.Preussner Media: Prevent loading of media plug-ins in console apps, such as game servers (OR-34819) #jira OR-34819 Change 3258846 on 2017/01/16 by Max.Preussner MfMedia: Fixed incorrect tracks being played in multi-track media sources (UE-39703) #jira UE-39703 Change 3258813 on 2017/01/16 by Benn.Gallagher Added error on import for APEX clothing files that either have no submeshes or have no submeshes with simulated vertices. #jira UE-40614 Change 3258771 on 2017/01/16 by James.Golding Skip fatal warning in UBodySetup::Serialize if duplicating (e.g. spawning component via SCS with a BodySetup in its template) #jira UE-40418 Change 3258747 on 2017/01/16 by Max.Chen Sequencer: AddUnique SequencerActorTag to prevent multiple tags being added when spawning/despawning. #jira UE-40665 Change 3258630 on 2017/01/16 by Jurre.deBaare CIS IfDef issue fix #JIRA UE-1234 Change 3258541 on 2017/01/16 by Phillip.Kavan [UE-40131] Revised fix that will work for "inclusive" BP nativization with data-only BPs. change summary: - revised code in UBlueprint::BeginCacheForCookedPlatformData() to also support the "inclusive" nativization method #jira UE-40131 Change 3258532 on 2017/01/16 by Max.Chen Sequencer: Fix max row index off by one error . This was always incorrect, but it was masked by the fact that FixRowIndices() was called on the track when the UI gets built. That function was removed from the node layer in CL #3252753 and therefore exposed this bug. #jira UE-40642 Change 3258505 on 2017/01/16 by Marc.Audy Improve messaging when installing vehicle and vehicle adv C++ feature packs #jira UE-40647 Change 3258478 on 2017/01/16 by Matt.Kuhlenschmidt PR #3131: UE-40567: Added nullcheck to FSplinePointDetails (Contributed by projectgheist) #jira UE-40567 Change 3258457 on 2017/01/16 by Jurre.deBaare SpeedTree Billboards rendering with Incorrect Material #fix Ensure that we add a section info entry for the billboard models/lods during SpeedTree importing #jira UE-39677 Change 3258442 on 2017/01/16 by Alexis.Matte Skeletalmesh import, make sure we increment the lod index when animation is not imported #jira UE-40640 Change 3258431 on 2017/01/16 by Jurre.deBaare Back out changelist 3258392 #fix issue was already resolved #jira UE-1234 Change 3258392 on 2017/01/16 by Jurre.deBaare Fix for non-unity CIS #JIRA UE-1234 Change 3258358 on 2017/01/16 by Matthew.Griffin Prevent warning from being shown when XMPP module is not built #jira UE-40616 (I guess LoadModule could be changed to LoadModuleChecked now if they do exist) Change 3258144 on 2017/01/15 by Marc.Audy Fix non-unity CIS errors #jira UE-00000 Change 3258141 on 2017/01/15 by zachary.wilson Adding testing content for Distance Field Indirect Shadows #jira UE-29618 Change 3258049 on 2017/01/14 by Nick.Shin UFE sent incorrect header data on missing file also, it seems that UFE was written to expect clients to close the connection -- (this should be closed manually -- which will flush the data and then close out the socket -- but, since this is a developer tool... leaving this as-is) first, 404 was not sending the required double newline after headers second, since connection are not closed manually (server side) send a dummy payload with content-length data #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3257984 on 2017/01/14 by Aaron.McLeran Attempting another fix for static analysis warning in CIS #jira UE-40645 Change 3257904 on 2017/01/14 by Aaron.McLeran Resolving static analysis warnings reported by CIS #jira UE-40645 Change 3257883 on 2017/01/14 by Aaron.McLeran Fixing build warning with CL 3257826 #jira UE-40645 Change 3257826 on 2017/01/13 by Aaron.McLeran Integrating fixes from Dev-Framework and Odin to Release-415 #jira UE-40645 Change 3257654 on 2017/01/13 by Marc.Audy Until plugins can drive their own dependencies vehicle and vehicle adv feature packs will not compile automatically and will pop up a message log informing the user of the actions they need to manually take. #jira UE-40466 Change 3257608 on 2017/01/13 by John.Pollard PC: Assertion Fail with UPackageMapClient::AddNetFieldExportGroup() viewing replays #jira OR-34522 Change 3257489 on 2017/01/13 by Mitchell.Wilson Removing preview mesh from multiple materials to resolve CIS warnings. #jira UE-40628 Change 3257485 on 2017/01/13 by Chris.Babcock Don't initialize FMinimalDummyForwardLightingResources for unneeded feature levels (below SM4) #jira UE-40602 #ue4 #android Change 3257444 on 2017/01/13 by Matt.Barnes Updating test assets for UEQATC-2967 #jira UE-29618 Change 3257324 on 2017/01/13 by Arciel.Rekman Linux: Update runtime CEF lib as well (UE-401413). - Followup to CL 3256081. #jira UE-40413 (Merging CL 3257241 from Dev-Platform to Release-4.15) Change 3257140 on 2017/01/13 by Lina.Halper Fix crash with deleting all poses #jira: UE-40537 Change 3257066 on 2017/01/13 by Jurre.deBaare CIS fix for game builds #jira UE-1234 Change 3257056 on 2017/01/13 by Ben.Zeigler #jira UE-40318 Fix crash in streamablemanager where callbacks would get called on a deleted manager. This is being rewritten in 4.16, so do a quick fix for 4.15 to avoid the crash Change 3256839 on 2017/01/13 by Jurre.deBaare Added conversion of HLOD transition screen size to new transition screen area values #fix During serialization patch up the values of transition screen size within the hierarchical lod setups #misc Updated the default value to a screen size to screen area equivalent #JIRA UE-40518 Change 3256761 on 2017/01/13 by Mieszko.Zielinski Fixed EQS debug rendering not clearing previously displayed labels if new request has no labels #UE4 #jira UE-40589 Change 3256177 on 2017/01/12 by Josh.Adams - Moved the MfMedia plugin outside of XboxOne directory, because it's a Windows plugin as well (that happens to also work on XboxOne - all public APIs) #jira UE-40391 Change 3256131 on 2017/01/12 by Jamie.Dale Fixing log spam when trying to load an empty font data #jira UE-40555 Change 3256081 on 2017/01/12 by Arciel.Rekman Fixed CEF compatibility problems on Ubuntu 14.04 (UE-40413). - Also deleted Debug version of it. - Change by yaakuro. #jira UE-40413 (Edigrating CL 3256065 from Dev-Platform to Release-4.15) Change 3256046 on 2017/01/12 by Jon.Nabozny Use PxConvexFlag::eSHIFT_VERTICES when cooking meshes to fix baked in transforms. #jira UE-39212 Change 3255939 on 2017/01/12 by mason.seay Rebuilt lighting #jira UE-29618 Change 3255912 on 2017/01/12 by Olaf.Piesche Replicating fix from 3246828 for #jira UE-39249 Change 3255909 on 2017/01/12 by Rolando.Caloca UE4.15 - Support for choosing discrete AMD GPU #jira UE-40546 Change 3255835 on 2017/01/12 by Martin.Wilson Fix newly added virtual bones not being on screen. #jira UE-40516 Change 3255774 on 2017/01/12 by Mark.Satterthwaite Merging 3251926 for Richard.Wallis: #jira UE-38828 Crash after Enabling Forward Shading on Mac and Creating/Editing Materials. Using TGlobalResource to avoid constant resource allocation. Prev fix (in CL 3239454) caused a crash in D3D11 with zero sized resource views. Change 3255771 on 2017/01/12 by Alexis.Matte Fix a crash when re-importing asset with no material #jira UE-40510 Change 3255746 on 2017/01/12 by Jon.Nabozny Change _DEBUG to PX_DEBUG in ConvexHullLib.cpp #jira UE-0000 Change 3255659 on 2017/01/12 by Jon.Nabozny Enable Shifting Vertices during Convex Hull cooking to prevent precision issues. (Copied CL-3249100 from Dev-Phyics-Upgrade to support new flag) #jira UE-39212 Change 3255617 on 2017/01/12 by Ori.Cohen Fix crash when computing mass for an async object. Using passed in rigid body instead of assuming SyncRigidActor #JIRA UE-40458 Change 3255536 on 2017/01/12 by Jamie.Dale Fixed crash when using an object picker against the 'Object' type This also optimizes some filter code to avoid filtering when it would be pointless (and just slows things down). #jira UE-40408 Change 3255451 on 2017/01/12 by Chris.Wood Fixed read only text color in SCommentBubble [UE-40384] - Reference Viewer comment text is difficult to read Also changed DetermineForegroundColor() method in EditableTextBox classes to fallback on ForegroundColorOverride if it is set and ReadOnlyForegroundColorOverride isn't set. #jira UE-40384 Change 3255448 on 2017/01/12 by Chris.Wood Removed blinking cursor/caret on read only editable text layouts. [UE-40502] - Flashing cursor/caret showing in read-only editable text layouts #jira UE-40502 Change 3255445 on 2017/01/12 by Marc.Audy Create the dynamic level streaming persistent object correctly outered to the World rather than the transient package to avoid GetWorld() crashing #jira UE-00000 Change 3255441 on 2017/01/12 by Jon.Nabozny Regenerate collision for the basic Cube mesh to fix resting issues and invalid verts. #jira UE-40478 Change 3255407 on 2017/01/12 by Yannick.Lange VREditor: - Fix: Assertion Failed crash after pressing F8 in PIE while Foliage Mode was selected - Fix: Assertion Failed crash after pressing F8 in PIE while Paint Mode was selected - Added extra checks for other possible future cases #jira UE-39786 UE-39789 Change 3255393 on 2017/01/12 by Chris.Bunner Duplicating CL 3255244: Removed test variable from MaterialExpressionVectorParameter. #jira UE-40517 Change 3255375 on 2017/01/12 by Steve.Robb CIS fix. #jira UE-39556 Change 3255334 on 2017/01/12 by samuel.proctor Corrected QA Container asset to remove pin warning. #jira UE-29618 Change 3255319 on 2017/01/12 by james.cobbett Fixing motion blur issue with test content for Pose Snapshots. #jira UE-29618 Change 3255247 on 2017/01/12 by Nick.Darnell Slate - Slate's Tab Manager is now a bit smarter about allowing Focus/BringToFront attention grabbing methods. In order to make the UI less jumpy it was restricted to only allowing alerts and bring to front to be triggered if you were on the window, or child window of the active application window. That can negatively impact cases where a user takes an action (clicks a link ro button saying open/goto this tab), that is on another window. To work around this limitation, the Tab Manager will also permit the action if Slate is currently processing user input, implying that the action being taken is in direct response to the user pressing a button and interacting with the UI. #jira UE-40313 Change 3255236 on 2017/01/12 by Phillip.Kavan [UE-40131] Non-native child BPs can now properly override a nativized parent BP's components in a cooked build with exclusive Blueprint class nativiation. - Mirrored from //UE4/Dev-Blueprints (CL# 3254024,3254391) #jira UE-40131 Change 3255216 on 2017/01/12 by Rolando.Caloca UE4.15 - Fix compile issue on Vulkan 1.0.37.0 or newer #jira UE-40506 Change 3255206 on 2017/01/12 by Steve.Robb Use outer walking IsA() implementation in editor to get around reinstancing and hot reload issues. #fyi mike.beach #jira UE-39556 Change 3255195 on 2017/01/12 by mason.seay Adjusted slope to fix platform discrepancy #jira UE-29618 Change 3255086 on 2017/01/12 by Jack.Porter Fix XboxOneShaderCompiler.cpp non-unity compilation #jira None Change 3255085 on 2017/01/12 by Jack.Porter Missing HTML5 changes from CL 3254907 #jira UE-39111 Change 3255031 on 2017/01/12 by Jack.Porter More iOS GoogleVR changes missing from CL 3254907 #jira UE-39111 Change 3254991 on 2017/01/12 by Jack.Porter Missing file from CL 3254907 #jira UE-39111 Change 3254907 on 2017/01/11 by Jack.Porter Android MSAA changes - use r.MobileMSAA cvar, support more than 2x, fix issues where targets other than scene color were created with MSAA #jira UE-39111 #jira UE-35849 #jira UEMOB-35 Change 3254810 on 2017/01/11 by Arciel.Rekman Linux: fix for crash on exit (UE-40488). #jira UE-40488 Change 3254617 on 2017/01/11 by Peter.Sauerbrei remake the fix for missing PhysXVehicle library in binary for IOS and TVOS #jira UE-39349 Change 3254489 on 2017/01/11 by mason.seay Other minor improvements to the map #jira UE-29618 Change 3254477 on 2017/01/11 by mason.seay Map tweaks to prevent the vehicle from getting stuck #jira UE-29618 Change 3254431 on 2017/01/11 by Mitchell.Wilson Rebuilt lighting on all StarterContent levels. #jira UE-40468 Change 3254333 on 2017/01/11 by mason.seay Adjusted lightmap on mesh to remove odd rendering splotches #jira UE-29618 Change 3254131 on 2017/01/11 by Rolando.Caloca UE4.15 - Missing dumped shaders #jira UE-40465 Change 3254126 on 2017/01/11 by Jeff.Fisher UE-40422 Vive Motion Controllers unable to Play Haptic Effect -Removed an unnecessary remapping of controllerindex to deviceid, they are the same now. #jira UE-40422 #review-3254084 Change 3254046 on 2017/01/11 by Mark.Satterthwaite Merging 3233811: 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. #jira UE-39935 Change 3254021 on 2017/01/11 by james.cobbett Test content for Pose Snapshot testing #jira UE-29618 Change 3253993 on 2017/01/11 by Alexis.Matte Fix the morph target import #jira UE-40424 Change 3253948 on 2017/01/11 by mason.seay Fixed Level BP logic that was causing Access None error #jira UE-29618 Change 3253884 on 2017/01/11 by mason.seay Updated mesh colors on map. Disabled motion blur #jira UE-29618 Change 3253862 on 2017/01/11 by mason.seay Disabled Always Show Mobile Input (turned on by accident) #jira UE-29618 Change 3253859 on 2017/01/11 by Mark.Satterthwaite Merging 3252866: Fix Metal shader pipeline hash collisions caused by deferring MTLFunction construction until PrepareToDraw so that we may use Function-Constants to specialise the shader source without generating additional permutations. This is required to generate proper tessellation shaders which are specialised against the index-buffer usage & type (none, uint16, uint32). While we're here amend the hash functions to make better use of the existing hash functions to improve the distribution and hopefully reduce the possibility of collisions in future. #jira UE-40357 Change 3253854 on 2017/01/11 by Mark.Satterthwaite Merging 3252859: Fix the calculation of Metal tessellation struct alignment and size to use largest member size, so that we don't assert in debug or cause out-of-bounds access in development/shipping. #jira UE-40410 Change 3253853 on 2017/01/11 by Mark.Satterthwaite Merging 3237394: 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 3253852 on 2017/01/11 by Mark.Satterthwaite Merging 3236850: Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3253834 on 2017/01/11 by mason.seay Updated mobile input textures to be power of two #jira UE-29618 Change 3253807 on 2017/01/11 by Mark.Satterthwaite Merging 3232641 & 3236788 & 3233854 & 3249742 from Dev-Rendering: 3232641: - 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. 3236788: 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. 3233854: More information about texture type validation errors in Metal. 3249742: 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. #jira UE-40200 Change 3253636 on 2017/01/11 by Chris.Wood Improved tracking of runtime and debugger attachment for analytics purposes. [UE-39780] - Change IsDebugger to WasDebuggerPresent in all crash/AS analytics [UE-39777] - Update MTBF IsDebugger state for every heartbeat [UE-39778] - UnrealWatchdog to send WasDebuggerPresent state for app if set [UE-39779] - UnrealWatchdog to send total run time of process Debugger state was previously read once at startup or once at the time of an event. Debugger is now checked during the heartbeat and doesn't reset flag when detached so we know if a session was ever debugged. Also reporting total run time in UnrealWatchdog. Watchdog still doesn't run when debugging but and will never show popups to a debugger user even when forced on with -forcewatchdog. #jira UE-39780, UE-39777, UE-39778, UE-39779 Change 3253281 on 2017/01/10 by Dan.Oconnor Typo fix caused parameter in local struct definition to shadow the local #jira UE-40027 Change 3253231 on 2017/01/10 by Dan.Oconnor Mirror of 3253220 These pins should infer together #jira UE-40427 Change 3253125 on 2017/01/10 by Uriel.Doyon Brought back CL 3242117 and 3238685, which got lost on the way: - Fix for possiblel check fail when changin mobility of actors. - Fix for possible check fail when processing streaming data. #jira UE-39996 Change 3252936 on 2017/01/10 by Marc.Audy CopyPropertiesForUnrelatedObjects needs to consider path not just name of subobjects when matching them up to copy properties and update references Ensure that a reinstanced child actor component ends up pointing at the correct child actor template #jira UE-40027 Change 3252886 on 2017/01/10 by Lina.Halper Fix for invalid AnimCurves when curve is added while running #jira: UE-39826 Change 3252753 on 2017/01/10 by Frank.Fella Sequencer - Change track rows to use separate track nodes in the display node tree, fixes key edit issues on animation and audio tracks. #jira UE-39836 Change 3252640 on 2017/01/10 by Lukasz.Furman fixed NavCollision losing user settings after any property change copy of 3252628 #jira UE-40388 Change 3252614 on 2017/01/10 by Daniel.Wright UStaticMeshComponent::InvalidateLightingCacheDetailed uses MarkRenderStateDirty. Massively speeds up duplication of HISMC with many instances (10+ minutes -> seconds), as InvalidateLightingCacheDetailed gets called for every instance. #jira UE-40406 Change 3252609 on 2017/01/10 by mason.seay Updated map with text actors for more visual clarity #jira UE-29618 Change 3252477 on 2017/01/10 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios #jira UE-39852 Change 3252451 on 2017/01/10 by Daniel.Wright Garbage collection calls UWorld>SendAllEndOfFrameUpdates() on all loaded worlds first so that deferred recreate render states happen before any UObjects are deleted * Fixes rendering thread crashes in the order of events of 1) SetMaterial 2) GC 3) Rendering command that dereferences the UMaterial #jira UE-30089 Change 3252418 on 2017/01/10 by Ben.Zeigler #jira UE-40390 Fix crash saving blueprint with an inherited DataTable/CurveTable reference. Delta serialization meant that the necessary name wasn't in the name table, so adding it manually now. Change 3252410 on 2017/01/10 by Max.Chen Sequencer : Filter sections on select in range Copy from Dev-Sequencer #jira UE-37854 Change 3252385 on 2017/01/10 by Max.Chen Sequencer: Update auto tangents when setting key time. This fixes a bug where dragging keys with auto tangents doesn't recompute tangents properly. #jira UE-39923 Change 3252360 on 2017/01/10 by Allan.Bentham Remove incorrect assert for iOS. #jira UE-40385 Change 3252297 on 2017/01/10 by mason.seay Test assets for suspending cloth simulation #jira UE-29618 Change 3252125 on 2017/01/10 by Mieszko.Zielinski Fallout fix after removal of BlackboardKeyUtils::CalculateComparisonResult declaration from the AIModule #UE4 #jira UE-40099 Change 3251987 on 2017/01/10 by Allan.Bentham Fix HQ DoF #jira UE-35548 Change 3251856 on 2017/01/10 by Jack.Porter Fixed Get Instances Overlapping Box blueprint function due to issue with FBox constructor. Added MakeBox and MakeBox2D kismet native functions Fixed box overlap test ignoring instance scale #jira UE-34409 Change 3251519 on 2017/01/09 by Daniel.Wright [Copy] Fixed GLandscapeLayerUsageMaterial getting GC'ed #jira UE-40055 Change 3251146 on 2017/01/09 by Lina.Halper Fix on stable track data carrying over to pose asset - decided to clean up track data in anim sequence since we don't really need that data anymore #jira: UE-40351 #code review: Martin.Wilson Change 3251056 on 2017/01/09 by Lina.Halper fixed crash when pose node contains stale data when updating source. #jira: UE-40258 #code review; Thomas.Sarkanen Change 3251035 on 2017/01/09 by Mitchell.Wilson Removed preview mesh in M_GodRay to resolve CIS warning. Relinked textures used in two materials to resolve CIS warnings. #jira UE-40350 Change 3250959 on 2017/01/09 by Mitchell.Wilson Updating master sequence playback end time so the final audio track can be heard. Updating multiple shots to resolve issues with audio not playing back properly. #jira UE-40321 UE-40335 Change 3250896 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed level visibility not working in PIE #jira UE-40082 Change 3250895 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed evaluation of overlapping audio and skeletal aninmation sections - Audio and skeletal animation sections now continue to support legacy evaluation order. Overlapping sections of the same priority on the same row will be filtered out such that only the section with the latest start time will be evaluated. #jira UE-40320 Change 3250830 on 2017/01/09 by Ben.Woodhouse Duplicated from //ue4/Release-4.14 CL 3238182 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. #jira UE-38818 Change 3250790 on 2017/01/09 by Lauren.Ridge Fixing backspace on VR Editor numberpad menu. #jira UE-39770 Change 3250681 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@3249296: 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 3250680 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@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 #jira UE-39949 Change 3250609 on 2017/01/09 by Steve.Robb Maximum number of stats-using threads increased to 512. #jira UE-38153 Change 3250604 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed incorrect seed being used when generating new animation type IDs for object properties #jira UE-40327 Change 3250589 on 2017/01/09 by Matthew.Griffin Changed publish symbols node to use runtime dependencies instead of manually including the whole PhysX folder Avoids unused configs and VS2013 files #jira UE-39171 Change 3250578 on 2017/01/09 by Matthew.Griffin Removed art tools from released build now that they are available separately on the Marketplace Change 3250282 on 2017/01/07 by Mieszko.Zielinski Fixed UNavigationSystem::bNavigationAutoUpdateEnabled getting ignored by recent addition to related condition in UNavigationSystem #UE4 Reported by UT team. Replication of a fix from Dev-Framework that didn't make it to 4.15 stream #jira UE-40324 Change 3250276 on 2017/01/07 by Mieszko.Zielinski Fixed not being able to add elements to UAIPerceptionStimuliSourceComponent.RegisterAsSourceForSenses for instances manually placed on the map #UE4 #jira UE-31711 Change 3250219 on 2017/01/07 by Mieszko.Zielinski Extended comment to AISenseConfig_Sight::PeripheralVisionAngleDegrees to make it clear how it works #UE4 #jira UE-31731 Change 3250147 on 2017/01/07 by Andrew.Rodham Added missing includes #jira UE-40019 Change 3250096 on 2017/01/06 by Nick.Shin refetch on timed out GET/POST requests correction to: UE_MakeHTTPDataRequest #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3249963 on 2017/01/06 by Mieszko.Zielinski removed unused and undefined BlackboardKeyUtils::CalculateComparisonResult #UE4 #jira UE-40099 Change 3249829 on 2017/01/06 by Alexis.Matte turn on the material name clash feature for the content browser importer. #jira UE-40298 Change 3249791 on 2017/01/06 by andrew.porter QAGame: Added level blueprint logic to QA-Sequencer that lets tester override sequence bindings #jira UE-29618 Change 3249755 on 2017/01/06 by Jamie.Dale Some fixes for object reference detection and notification when deleting assets #jira UE-40121 Change 3249727 on 2017/01/06 by James.Golding #jira UE-40242 Change 3249707 on 2017/01/06 by Mitchell.Wilson Removing preview mesh with incorrect path from materials to resolve warnings in CIS. #jira UE-40311 Change 3249543 on 2017/01/06 by Michael.Dupuis #jira UE-40299: validate if UISettings is valid Change 3249506 on 2017/01/06 by Alexis.Matte Make sure we use the correct LodIndex when importing a new LOD in case a previous LOD import fail. #jira UE-40240 Change 3249477 on 2017/01/06 by Ori.Cohen Fix incorrect warning when moving kinematic objects during simulation. #JIRA UE-40290 Change 3249472 on 2017/01/06 by Andrew.Rodham Sequencer: Undo now works as expected when editing the properties of a key #jira UE-40019 Change 3249390 on 2017/01/06 by Mitchell.Wilson Removing preview meshes with improper path from materials to resolve CIS warnings in landscape mountains sample. #jira UE-40300 Change 3249317 on 2017/01/06 by Alexis.Matte Fix a crash when loading skeletalmesh with no section #jira UE-40249 Change 3249294 on 2017/01/06 by Mitchell.Wilson Updated defaultengine.ini for Match 3 to resolve warnings in CIS. ServerDefaultMap and TransitionMap had invalid paths. #jira UE-40295 Change 3249213 on 2017/01/06 by Chris.Bunner Fixed up logic for windowed/fullscreen output display selection when working with HDR. Now selects the most appropriate display if HDR enabled, else current monitor window is on. FullscreenDisplay commandline functions regardless of HDR support. #jira OR-33525, OR-33536, OR-33540, OR-33520 Change 3249135 on 2017/01/06 by Martin.Wilson Fix root motion issues on additive animations. - Fix scale issue on resetting root bone - Fix loss of root motion when animation is additive. #jira UE-40232 Change 3248522 on 2017/01/05 by Alexis.Matte Fix a crash when reimporting morph target. Also fix a crash when initiating ColorVertexBuffer with NULL value #jira UE-40201 Change 3248271 on 2017/01/05 by Andrew.Rodham Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence #jira UE-40234 Change 3248092 on 2017/01/05 by Ben.Marsh UBT: Remove the [Obsolete] attribute from methods in TargetRules; the [ObsoleteOverride] attribute gives a much better (and more concise) warning with specific instructions on how to resolve it. Change 3248091 on 2017/01/05 by Marcus.Wassmer Tick renderthreadtickables in -onethread to avoid leaks. #jira UE-40248 Change 3248063 on 2017/01/05 by Marc.Audy Route FAudioDevice::StopAllSounds to the audio thread if called on the game thread #jira UE-40243 Change 3247995 on 2017/01/05 by Maciej.Mroz NativizationSummary object is always present. manually merged cl#3247985 from Dev-Blueprints #jira UE-40035 Change 3247873 on 2017/01/05 by Chad.Garyet Adding "Generate QA Labels" buildgraph node and automation script. Port of createNewLabel and createMinimumLabel python scripts into UAT #jira UEB-725 Change 3247855 on 2017/01/05 by Nick.Shin refetch on timed out GET/POST requests #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3247737 on 2017/01/05 by Marc.Audy static mesh component instance data now correclty inherits from pritive component instance data instead of skipping it and inheriting directly from scene component instance data #jira UE-40053 Change 3247723 on 2017/01/05 by mason.seay Asset for suspend cloth bug #jira UE-29618 Change 3247708 on 2017/01/05 by Mitchell.Wilson Updating project settings to disable dbuffer decals to resolve rendering issues in Showdown while using -game -vr #jira UE-40195 Change 3247652 on 2017/01/05 by Martin.Wilson Fixes for animation notifies window -Fix notify not being removed from skeleton -Fix crash where editor is not refreshed after notify removal #jira UE-40154 Change 3247638 on 2017/01/05 by mason.seay Test assets for cloth suspension #jira UE-29618 Change 3247630 on 2017/01/05 by Alexis.Matte Prevent crash when the import fail and we have no staticmesh created #jira UE-40024 Change 3247556 on 2017/01/05 by Ben.Marsh Fix non-unity compile error. Change 3247547 on 2017/01/05 by Jurre.deBaare Crash while using the Delete Button in the HLOD Outliner while a Generated Proxy Mesh is opened in the Static Mesh Editor #fix Unify path for both delete cluster options in the outliner UI #jira UE-40066 Change 3247539 on 2017/01/05 by Benn.Gallagher Fixed serialization crash for simplified skeletal meshes leading to corrupted assets that crash on load after skin weight buffer changes. #jira UE-40199 Change 3247515 on 2017/01/05 by Allan.Bentham Fix inverted planar reflections when mobileLDR Fixed incorrect gamma 2 planar reflection rendering when mobileLDR #jira UE-32868 Change 3247502 on 2017/01/05 by Dmitriy.Dyomin Fixed: Single digit frame rate when sculpting landscape foliage. #jira UE-39532 Change 3247232 on 2017/01/04 by Ben.Marsh Remove private include from public header. Prevents compiling samples from installed build of the engine without private headers. #jira UE-40135, UE-40137, UE-40139, UE-40140, UE-40141, UE-40142, UE-40143, UE-40144 Change 3247002 on 2017/01/04 by Chris.Babcock Changed Vulkan hitchy pipeline log message verbosity #jira UE-38354 #ue4 #android #dontbackcopy Change 3246927 on 2017/01/04 by matt.barnes Updating QAGame content to facilitate UEQATC-2969 #jira UE-29618 Change 3246894 on 2017/01/04 by Mike.Beach Mirroring CL 3245322 from Dev-BP Fixed a crash when implementing a native interface in a BP #jira UE-40155, UE-40203 Change 3246830 on 2017/01/04 by Chris.Bunner Allow AllocGBuffer call when in simple-forward so dummy uniform buffer creation can occur. #jira UE-39756 Change 3246816 on 2017/01/04 by Jon.Nabozny Fix Anim Notifies Tab not opening in Animation Editor. #JIRA UE-40134 Change 3246804 on 2017/01/04 by Ori.Cohen Touch engine file to trigger re-link. #JIRA UE-40156 Change 3246709 on 2017/01/04 by mason.seay Updated map #jira UE-29618 Change 3246606 on 2017/01/04 by Ori.Cohen Fix for sweeps taking too long time (OR-32839). - Exhaustive investigation uncovered apparent numerical problems in this code (when compiling with clang 3.9.x with -ffast-math). - Current solution can result in overshoot for certain trace extents, but they are not expected to be a practical problem in Unreal. - NVidia is aware and will investigate a better solution. #tests Compiled Linux server with the changed PhysX and continuously ran bot matches for about a day. #JIRA UE-40156 Change 3246571 on 2017/01/04 by Marc.Audy Look at the body instance's desired collision enabled value rather than the primitive component's current collision enabled value when determining whether physics state should be created #jira UE-39994 Change 3246527 on 2017/01/04 by tim.gautier QAGame: BP_MediaPlayer now displays the name of the MediaPlayer plugin currently in use during playback #jira UE-29618 Change 3246480 on 2017/01/04 by mason.seay Map update #jira UE-29618 Change 3246470 on 2017/01/04 by Ori.Cohen Guard against infinitely thin geometry which fixes some nans. This showed up as issues in various projects #JIRA UE-00000 Change 3246413 on 2017/01/04 by Jon.Nabozny Cube asset did not have Tri Meshes. Reimported to fix the issue. -- Copied from 3233164 -- #jira UE-39657 Change 3246388 on 2017/01/04 by Jon.Nabozny Set 'p.MoveIgnoreFirstBlockingOverlap' to be enabled by default (3158732). This causes collision behavior to remain unchanged unless people opt in to the new behavior. -- Copied from 3239735 (bot health fixed by a different CL) -- #jira UE-39387 Change 3246352 on 2017/01/04 by Jon.Nabozny Fix FPredictProjectilePathParams to use a valid default value for TraceChannel. This requires the use of a new bool bTraceWithChannel which is enabled by default. -- Copied from 3239765 -- #JIRA UE-39726 Change 3246341 on 2017/01/04 by Ori.Cohen Allow vehicles to inherit from PawnMovementComponent and only use the pawn/ai capabilities when a Pawn owner is used. #JIRA UE-39508 Change 3246178 on 2017/01/04 by Andrew.Rodham Sequencer: When playback stops naturally, the play position is set to the boundary that caused playback to stop (the end if playing forwards, the start if playing backwards) - This is to reconcile the movie scene sequence player with previous behaviour #jira UE-40076 Change 3246102 on 2017/01/04 by Benn.Gallagher Fixed single threaded physics dispatcher triggering checks from clothing when running with a CPU with two or fewer cores. #jira UE-39811 Change 3246100 on 2017/01/04 by Benn.Gallagher Fixed ensure triggered when using root motion with sub instances Fixed crash reinstancing an active anim class that had subinstances #jira UE-39582 #jira UE-39579 Change 3246092 on 2017/01/04 by Marc.Audy PR #3082: Improve comment for UInputComponent (Contributed by Soleone) #jira UE-40098 Change 3246084 on 2017/01/04 by Matthew.Griffin Remove bad files Change 3246076 on 2017/01/04 by Matt.Kuhlenschmidt Fixed all non-editable text properties having a double disabled effect. The text box is read only which prevents edting but still allows copying text from it. This feature had regressed and the disabled effect on top of the read only effect made it too difficult to see the text. #jira UE-39652 Change 3246043 on 2017/01/04 by Steve.Robb Use of CastChecked instead of Cast in implementations of IStructSerializerBackend::WriteProperty. This is both more efficient and will hopefully make it easier to diagnose the issue. #jira UE-39872 Change 3246032 on 2017/01/04 by Martin.Wilson Change FindBoneIndex to FindRawBoneIndex (final bone maps are not built until after all adding is done so they will not be found) #jira UE-40105 Change 3246016 on 2017/01/04 by Andrew.Rodham Editor: Insert/Duplicate/Delete menu on array properties now only closes itself on click, rather than all menus - This allows us to edit such properties on context menus #jira UE-39998 Change 3246005 on 2017/01/04 by Thomas.Sarkanen Fixed asset attachment issues in Skeleton Tree Assets were being attached uniquely, so only one asset could be attached to a bone/socket. However the calling code didnt know that the unique attachment function just gave up, so the item just got added to the bottom of the tree. The attachment filter was not set correctly to allow for bone attatchments, so only sockets could be attached to. The attach parent name was not initialized, so assets could not be deleted one at a time. #jira UE-40040 - With multiple Preview assets on one bone, only one appears in Skeleton Tree #jira UE-40041 - Preview assets appear at the bottom of the skeleton tree Change 3246002 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed actor tick prerequisites not getting set up correctly for master sequences #jira UE-39975 Change 3245979 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed scrubbing audio tracks not working propertly #jira UE-40048 Change 3245978 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed dropping a level onto a level visibility section not marking the track as changed, and not correctly creating a transaction #jira UE-39998 Change 3245977 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed crash caused by lingering persistent evaluation data #jira UE-40064 Change 3245971 on 2017/01/04 by Dmitriy.Dyomin Fixed: Using Set World Origin Location will cause the player pawn to stutter #jira UE-40022 Change 3245725 on 2017/01/03 by Matt.Barnes Further improvments on test assets for UEQATC-2963 #jira UE-29618 Change 3245658 on 2017/01/03 by Arciel.Rekman Linux: fix ARM32 build (UE-39913). #jira UE-39913 (Redoing CL 3240982 from Dev-Platform in Release-4.15) Change 3245577 on 2017/01/03 by Mason.Seay More vehicle updates #jira UE-29618 Change 3245556 on 2017/01/03 by Matt.Barnes Updating test content for UEQATC-2963 #jira UEQATC-2963 Change 3245461 on 2017/01/03 by mason.seay Updating Inertia Tensor Scale to improve Vehicle Handling #jira UE-40013 Change 3245442 on 2017/01/03 by Jeff.Fisher UEVR-495 Assert when switching to 2d mode. sceHmdReprojectionStart failing. -There was a race condition between switching output modes on the render thread and sceHmdReprojectionStart on the RHI thread. The flush fixes that. The reprojection would simply have failed that frame previously in shipping which would not matter much as we are switching output modes anyway. #jira UEVR-495 #review-3245374 Change 3245427 on 2017/01/03 by Jeff.Fisher UEVR-456 check if we are using camera before doing camera disconnected dialog on PSVR -If the tracker is active, but we are tracking nothing (ie we have the morpheus hmd tracking plugin, and started up with it, but switched to 2d mode) don't pop up the camera setup warning until we start trying to track something again. -This is useful for apps that have 2d and vr modes. #jira UEVR-456 #review-3245372 Change 3245329 on 2017/01/03 by mason.seay Level and vehicle tweaks #jira UE-29618 Change 3245275 on 2017/01/03 by Chris.Babcock Added EngineVersion to AndroidManfiest.xml metadata #jira UE-40123 #ue4 #android Change 3245235 on 2017/01/03 by Guillaume.Abadie Cherry picks CL 3234813 from Dev-Rendering: Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3245183 on 2017/01/03 by Chris.Babcock Added missing #undef LOCTEXT_NAMESPACE to some files (contributed by projectgheist) #jira UE-40103 #PR #3085 #ue4 #android Change 3245120 on 2017/01/03 by mason.seay Missed some assets #jira UE-29618 Change 3245116 on 2017/01/03 by mason.seay Mass fucntional test #jira UE-29618 Change 3245049 on 2017/01/03 by Ben.Marsh PR #3086: Fixed ScriptGeneratorPlugin #includes (Contributed by projectgheist) Change 3244924 on 2017/01/03 by Ben.Zeigler #jira UE-40057 Fix regression in public access for SwapPlayerControllers, from GitHub #3072 Change 3244831 on 2017/01/03 by Mitchell.Wilson Fixed hole in collision around level. #jira UE-39576 Change 3244817 on 2017/01/03 by Matthew.Griffin Change check for files being under engine directory to avoid problems with relative paths #jira UE-40096 Change 3244801 on 2017/01/03 by Andrew.Rodham Editor: Fixed color picker not working when opened from a details panel on a context menu - When a color picker is opened from a details panel that's on a context menu, it now opens as a sub menu - Added the ability to find an open menu from a widget path to FSlateApplication #jira UE-39932 Change 3244776 on 2017/01/03 by Matt.Kuhlenschmidt Fix window handle and device context being accessed by scene viewports after the underlying window has been destroyed by the OS. This is an invalid state on linux and using some vr devices. #jira UE-7388 Change 3244672 on 2017/01/03 by Ben.Marsh Search all directories containing universal CRT installations from the registry, rather than assuming that the first one found will contain the universal CRT version we want to use. Attempt to fix issues described in PR #3059. Change 3244668 on 2017/01/03 by Thomas.Sarkanen Added "Reimport Animation" and "Export to FBX" to the animation editor toolbar Options were in the asset menu before. #jira UE-39643 - Missing "Reimport" option for animation assets Change 3244667 on 2017/01/03 by Thomas.Sarkanen Reduced default URO distances in-line with new LOD calculations New values should give (roughly) the same effect as the older values with the older system. #jira UE-39939 - URO LOD distance factors different with the new screen size metric Change 3244654 on 2017/01/03 by Matthew.Griffin Added functionality to specify Loading Phase for plugin templates Changed Blueprint Library Template so that it loads pre loading screen and can be linked correctly in blueprints that use it #jira UE-38826 Change 3244631 on 2017/01/03 by Dmitriy.Dyomin Fixed: TM_Landscape_LOD Folder does not Live Update contents after generating LODs with Create Per Package Asset #jira UE-37368 Change 3244548 on 2017/01/02 by Jack.Porter Fix for Post-process Materials rendering incorrectly in editor mobile preview after viewport is resized #jira UE-39905 Change 3244389 on 2016/12/30 by Phillip.Kavan [UE-39816] Fix broken pin links caused by renaming interface function input/output parameters prior to compiling the interface, but after renaming the function itself. Mirrored from //UE4/Dev-Blueprints (CL# 3244388). #jira UE-39816 Change 3244248 on 2016/12/29 by laz.matech Saved the new sublevel in the persistent level and set it to hidden by default #jira UE-29618 Change 3244213 on 2016/12/29 by laz.matech Added a sublevel to QA-Sequencer map #jira UE-29618 Change 3243857 on 2016/12/27 by samuel.proctor Altered Container asset to have proper console input #jira UE-29618 Change 3243852 on 2016/12/27 by Mason.Seay Forgot config file #jira UE-29618 Change 3243847 on 2016/12/27 by mason.seay Improved mobile input #jira UE-29618 Change 3243536 on 2016/12/24 by Phillip.Kavan [UE-39944] Extend the GetClassDefaults node to include output pin exceptions for TSet/TMap properties (i.e. mirror safeguards already in place for TArray). Mirrored from //UE4/Dev-Blueprints (CL# 3243210). #jira UE-39944 Change 3243535 on 2016/12/24 by Phillip.Kavan [UE-39816] Renaming interface input/output parameters will no longer cause broken pin links at interface function call sites in Blueprints that are currently loaded. Mirrored from //UE4/Dev-Blueprints (CL# 3243207). #jira UE-39816 Change 3243534 on 2016/12/24 by Phillip.Kavan [UE-39733] Fix incorrect graph pin value display names for user-defined enum types. Mirrored from //UE4/Dev-Blueprints (CL# 3239965). #jira UE-39733 Change 3243532 on 2016/12/24 by Phillip.Kavan [UE-39854] Fix nativized assets build error when there are no native code dependencies. Mirrored from //UE4/Dev-Blueprints (CL# 3239778). #jira UE-39854 Change 3243529 on 2016/12/24 by Phillip.Kavan [UE-38999] Dump component tree node hierarchy to the output log on error state during widget generation. Mirrored from //UE4/Dev-Blueprints (CL# 3239289). #jira UE-38999 Change 3243442 on 2016/12/23 by mason.seay QAGame cleanup - Replacing copy pose from mesh test assets #jira UE-29618 Change 3243215 on 2016/12/22 by Dmitriy.Dyomin Fixed: Switching to ES2 feature level preview renders black in editor #jira UE-40009 Change 3243185 on 2016/12/22 by Ryan.Vance #jira UEVR-478 Integrating 3235308 Mono changes from DevVR. Change 3243183 on 2016/12/22 by Ryan.Vance #jira UEVR-455 Integrating 3243173 post present call back implementation from 4.14.1 Change 3243182 on 2016/12/22 by Ryan.Vance #jira UE-39269 Working around a nullptr deref in the Oculus runtime. Change 3243153 on 2016/12/22 by mason.seay WIP map update #jira UE-29618 Change 3243128 on 2016/12/22 by andrew.porter QAGame: Adding Actor Sequence test content for a crash. #jira UE-29618 Change 3243117 on 2016/12/22 by Jeff.Fisher UE-34004 GitHub 2659 : Implement support for OpenVR controller roles. -Rather than assigning unreal hands to controllers in the order the controllers are connected assign unreal hands to match the ones the API is using. -We now defer setting up controllers that are disconnected. This lets connected controllers, that may have hand preference from steam, occupy their desired hands first. If a controller is connected later and does not have a role it is assigned to an unoccupied hand or to the right hand. -This can still end up ignoring role in the following circumstance (and I can get it to do this): get one controller to prefer'right' and the other to have no preference. Power off the 'right' prefering controller. Start the game with only the no-preference controller on. The game will put that controller in the right slot, because the api gives it no other hints. Then power on the controller that preferred 'right'. That controller will now be assigned left, because right is occupied. I don't see a way around that without the ability to switch which hand a controller is associated with at runtime. -This does not yet handle starting with 2 controllers, disconnecting one, then connecting a third controller well. That did not work before either. A new Jira was created for that. #2659 #jira UE-34004 #review-3231154 Change 3243093 on 2016/12/22 by mason.seay Some tweaks to vehicle levels #jira UE-29618 Change 3243084 on 2016/12/22 by andrew.porter QAGame: Cleaned up Sequencer_OverrideBindings #jira UE-29618 Change 3243009 on 2016/12/22 by andrew.porter QAGame: Renaming actor in Sequencer_OverrideBindings. #jira UE-29618 Change 3243003 on 2016/12/22 by andrew.porter QAGame: Removing override bindings from level sequence #jira UE-29618 Change 3242996 on 2016/12/22 by andrew.porter QAGame: Slight tweak to QA-Sequencer. #jira UE-29618 Change 3242982 on 2016/12/22 by Marc.Audy Properly reenable stats sounds in both game and level editor #jira UE-40015 Change 3242959 on 2016/12/22 by mason.seay Test map for vehicles and moving meshes #jira UE-29618 Change 3242934 on 2016/12/22 by andrew.porter QAGame: Adding test content to QA-Sequencer for Override Bindings #jira UE-29618 Change 3242870 on 2016/12/22 by Mason.Seay QAGame footprint reduction: Clearing out content (were in for old bug reports) #jira UE-29618 Change 3242799 on 2016/12/22 by tim.gautier QAGame - Adding the following assets for Sequencer Event Track testing: -TM-Sequencer_EventTrack + BuildData -QA_LightStruct -Sequencer_EventTrack #jira UE-29618 Change 3242792 on 2016/12/22 by samuel.proctor Correcting Container test asset for proper output #jira UE-29618 Change 3242727 on 2016/12/22 by Dmitriy.Dyomin Fixed: LoadLevelIntstance returns a reference that can't be used to send an interface message #jira UE-40005 Change 3242666 on 2016/12/22 by Dmitriy.Dyomin Fixed: Packaging Android app for Mali Graphics Debugger v4.3.0 fails #jira UE-39534 Change 3242373 on 2016/12/21 by Ori.Cohen Allow vehicles to override inertia tensor after any mass properties have changed. #JIRA UE-39566 Change 3242323 on 2016/12/21 by Josh.Adams - Somehow my last change just got completely lost in the edigrate shuffle. Or something. I have no idea! Rdoing it #jira UE-39966 Change 3242286 on 2016/12/21 by mason.seay Vehicle Assets and Maps #jira UE-29618 Change 3242284 on 2016/12/21 by Marc.Audy Fix "stat sounds" not working after PIE completes and a new one is begun #jira UE-32743 #jira UE-39511 Change 3242281 on 2016/12/21 by Ori.Cohen Fix multi select being very slow in phat #JIRA UE-39559 Change 3242229 on 2016/12/21 by Ben.Marsh Fixup workspace for building PhysX. Change 3242227 on 2016/12/21 by Marc.Audy Properly update listener position for stat sounds #jira UE-38850 Change 3242218 on 2016/12/21 by Ori.Cohen Fix physx html5 compilation APEX issue. #JIRA UE-39566 Change 3242174 on 2016/12/21 by Ori.Cohen Fix incorrect moment of inertia for convex elements with translation. #JIRA UE-39566 Change 3242145 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix for vehicle stability #JIRA UE-38710 Change 3242139 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix: Fix crash when setting collision trace in construction script. #JIRA UE-39341 Change 3242088 on 2016/12/21 by Alexis.Matte Fix the drag and drop material on level instance to drop on the correct material slot Fix the serialization of the staticmesh property FMeshSectionInfoMap #jira UE-39952 Change 3242081 on 2016/12/21 by Andrew.Rodham Sequencer: Make details view focused when resetting inner struct contents to ensure that focus path is valid. #jira UE-39851 Change 3242079 on 2016/12/21 by Andrew.Rodham Sequencer: Evaluation templates are now only fully rebuilt in PIE, and will not re-cycle track identifiers - This addresses issues with newly compiled tracks recycling the persistent data of old stale tracks. - This commit also ensures we don't fully rebuild templates in the editor when in Sequencer #jira UE-39882 Change 3242078 on 2016/12/21 by Andrew.Rodham Sequencer: Fixed crash when deactivating a section in sequencer #jira UE-39880 Change 3242026 on 2016/12/21 by Josh.Adams - Fixed compile errors in tools after NVNRHI move #jira UE-39966 Change 3241994 on 2016/12/21 by andrew.porter QAGame: Disabled auto play on Sequencer_AnimNotify. #jira UE-29618 Change 3241989 on 2016/12/21 by Mitchell.Wilson Resolving CIS warnings in Content examples. Fixed up redirectors. Moved a texture from developer folder into project and relinked in POM_Debug material. Fixed up BP Commentary Box which was failing to compile. Updated spawn rate on Pulse Ring so it works as intended. #jira UE-39984 Change 3241986 on 2016/12/21 by mason.seay Vehicle Landscape Test map (mainly for crash investigation) #jira UE-29618 Change 3241914 on 2016/12/21 by Josh.Adams - Removed invalid and confusing .ini settings #jira UE-39982 Change 3241902 on 2016/12/21 by Josh.Adams - Moved NVNRHI stuff out of RHI.Build.cs #jira UE-39966 Change 3241889 on 2016/12/21 by andrew.porter QAGame: Added new level sequence to QA-Sequencer level #jira UE-29618 Change 3241884 on 2016/12/21 by Alexis.Matte Make sure the color grading cursor follow the mouse by using the exponent value when painting the cursor. #jira UE-39834 Change 3241869 on 2016/12/21 by andrew.porter QAGame: Adding test content for Sequencer Animation Notifies #jira UE-29618 Change 3241809 on 2016/12/21 by Chris.Wood Fix non-unity build errors in UnrealWatchdog. [UE-39940] - GitHub 3054 : Added EngineBuildSettings.h to UnrealWatchdog.cpp PR #3054: Added EngineBuildSettings.h to UnrealWatchdog.cpp (Contributed by ryanjon2040) #jira UE-39940 Change 3241806 on 2016/12/21 by Marc.Audy Don't unload and then reload streaming levels that are marked to be hidden. #jira UE-39883 Change 3241802 on 2016/12/21 by Marc.Audy Add new object flag RF_NeedInitialization to indicate that ~FObjectInitalizer and PostInitProperties have not been executed for the object Do not allow Modify calls on Objects that have not been initialized #jira UE-39731 Change 3241790 on 2016/12/21 by Marc.Audy Don't rerun construction scripts when an actor has seamless traveled from another level #jira UE-39699 Change 3241789 on 2016/12/21 by Marc.Audy Check Owner has a valid world before trying to access Scene (4.14.2) #jira UE-39560 Change 3241786 on 2016/12/21 by Marc.Audy Fixed crash when seamless travelling in PIE from levels other than the current editor level with a streaming sublevel shared with the current editor level #jira UE-39407 Change 3241781 on 2016/12/21 by Mitchell.Wilson Fixed up redirectors for SkeletalMesh and Personal Walkthroughs. #jira UE-30953 Change 3241747 on 2016/12/21 by mason.seay Tag Query test map and assets #jira UE-29618 Change 3240938 on 2016/12/20 by Ben.Marsh Remaking QFE fixes from 4.14 branch. Change 3240740 on 2016/12/20 by Ben.Marsh Update branch name for analytics. [CL 3272229 by Matthew Griffin in Main branch]
2017-01-25 16:23:41 -05:00
}
case GL_TEXTURE_3D:
FOpenGL::FramebufferTexture3D(GL_FRAMEBUFFER,GL_COLOR_ATTACHMENT0 + RenderTargetIndex, RenderTarget->Target, RenderTarget->GetResource(), MipmapLevels[RenderTargetIndex], ArrayIndices[RenderTargetIndex]);
break;
case GL_TEXTURE_CUBE_MAP:
check( ArrayIndices[RenderTargetIndex] < 6);
FOpenGL::FramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0 + RenderTargetIndex, GL_TEXTURE_CUBE_MAP_POSITIVE_X + ArrayIndices[RenderTargetIndex], RenderTarget->GetResource(), MipmapLevels[RenderTargetIndex]);
break;
case GL_TEXTURE_2D_ARRAY:
case GL_TEXTURE_CUBE_MAP_ARRAY:
FOpenGL::FramebufferTextureLayer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0 + RenderTargetIndex, RenderTarget->GetResource(), MipmapLevels[RenderTargetIndex], ArrayIndices[RenderTargetIndex]);
break;
default:
check( ArrayIndices[RenderTargetIndex] == 0);
FOpenGL::FramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0 + RenderTargetIndex, GL_RENDERBUFFER, RenderTarget->GetResource());
break;
}
}
FirstNonzeroRenderTarget = RenderTargetIndex;
}
if (DepthStencilTarget)
{
Copying //UE4/Release-Staging-4.15 to //UE4/Dev-Main (Source: //UE4/Release-4.15 @ 3267632) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3267632 on 2017/01/23 by Jurre.deBaare Marker syncs not working correctly in Blend Spaces #fix Ensure that SampleIndexWithMarkers is serialized #JIRA UE-40975 Change 3266915 on 2017/01/20 by Arciel.Rekman Fix Persona crash on Linux (UE-38790). - Static template variable got instantiated into multiple DSOs; probably exacerbated by --as-needed since this does not happen without it. #jira UE-38790 Change 3266785 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Make usage of CachedUsers thread safe. Duplicates CL 3245390 #jira UE-40649 Change 3266762 on 2017/01/20 by Rolando.Caloca UE4.15 - Fix for reallocating scene color #jira UE-40633 Change 3266642 on 2017/01/20 by Lina.Halper Downgraded Warning to Info #jira: UE-40643 Change 3266532 on 2017/01/20 by Jeff.Campeau Fix multiplatform Windows includes defeating the safety check in MinWindows.h #jira UE-40778 #rn Fixed a compile warning on Xbox One when XboxOneMinApi.h was included before MinWindows.h. Change 3266523 on 2017/01/20 by Marc.Audy Fix case where child actor could avoid getting begin play call #jira UE-40960 Change 3266474 on 2017/01/20 by Peter.Sauerbrei fix for using an API not yet available in iOS 8 #jira UE-40698 Change 3266339 on 2017/01/20 by Frank.Fella Sequencer - Fix UI issues with multi-track section rows. + Don't show an empty sub-track when there are no sections. + Expand parent tracks by default. #Jira UE-40487 Change 3266283 on 2017/01/20 by Jeff.Fisher UE-40683 GearVR projects rendering black -Fix from Remi Palandri #jira UE-40683 #review-3265824 @nick.whiting @ryan.vance Change 3266264 on 2017/01/20 by Lina.Halper Downgraded warning and changed log message #jira: UE-40643 Change 3266239 on 2017/01/20 by Peter.Sauerbrei fix for virtual joystick not showing up on some devices #jira UE-40472 Change 3266084 on 2017/01/20 by Mitchell.Wilson Resaving level to have correct starting camera position. Saved in wrong position after fixing a bug. #jira UE-40887 Change 3266077 on 2017/01/20 by Matt.Kuhlenschmidt Fixed "Wait for Movies to Complete" flag being reversed #jira UE-40943 Change 3266076 on 2017/01/20 by Mitchell.Wilson Updating occulsion bounds method on P_spark_burst_2 so it is not occluded when spawned inside of the coin mesh in BP_Overview example. Updating some post process examples due to changes made with Post Process settings. Film and Scene Color are temporary fixes and are intended to be fully updated in 4.16 #jira UE-40830 UE-40887 Change 3266034 on 2017/01/20 by Benn.Gallagher Fixed crash when reimporting APEX destructibles from apb/x files caused by not allowing the renderer to flush destroy resource commands before emptying an array. #jira UE-40911 Change 3266027 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Fix CreateSession and FindSession each permanently failing after first failure. Duplicates CL 3262175 #jira UE-39110 Change 3265906 on 2017/01/20 by Marcus.Wassmer Fix GPU particle AFR flickering and optimize injection transfers. Duplicate CL's 3260302, 3261252, 3265662, 3265678 #jira UE-40915 Change 3265873 on 2017/01/20 by Mark.Satterthwaite Duplicate CL #3262535: Make sure to set rasterizer state when rendering with a material in FSlateRHIRenderingPolicy::DrawElements #jira UE-40842 Change 3265857 on 2017/01/20 by Jamie.Dale Fixed font pathing issue that could happen in an out-of-source packaged build #jira UE-40855 Change 3265675 on 2017/01/20 by Matt.Kuhlenschmidt Move Dirt Mask Intensity to the correct post process category #jira UE-40851 Change 3265674 on 2017/01/20 by Rolando.Caloca UE4.15 - Revert #jira UE-40633 Change 3265647 on 2017/01/20 by Mitchell.Wilson Updating spawn location of the player pawn after unpossessing character in example 1.10. #jira UE-40870 Change 3265612 on 2017/01/20 by Alexis.Matte Prevent name clash warning when doing automation test #jira UE-40788 Change 3265553 on 2017/01/20 by Matthew.Griffin Fixed Shadow variable warning Change 3265366 on 2017/01/20 by Dmitriy.Dyomin Fixed: Vulkan crashes on Adreno Galaxy S7 #jira UE-40840 Change 3265294 on 2017/01/19 by Dmitriy.Dyomin Fixed typo which was causing assert on mobile #jira UE-40633 Change 3265111 on 2017/01/19 by Rolando.Caloca UE4.15 - Fix for scene color crash #jira UE-40633 Change 3264789 on 2017/01/19 by Josh.Adams - Redoing a fix from Dev-Plat for UI_BUILD_SHIPPING_EDITOR #jira UE-40798 Change 3264780 on 2017/01/19 by Rolando.Caloca UE4.15 - Add Morph compute GPU stat #jira UE-40891 Change 3264486 on 2017/01/19 by Mark.Satterthwaite Fix the crash on startup on Intel GPUs - this is due to Intel Metal forcing SM4 to avoid some drivers bugs in SM5 but I got the condition for initialisation in FMinimalDummyForwardLightingResources wrong so it's attempting to create a RWBuffer for SM4 which won't work. #jira UE-40863 Change 3264427 on 2017/01/19 by Rolando.Caloca UE4.15 - Track down crash #jira UE-40633 Change 3264393 on 2017/01/19 by Aaron.McLeran #jira UE-40850 Re-fixing UE-39650 again in 4.15. I hope this bug doesn't regress yet again! Change 3264364 on 2017/01/19 by Daniel.Wright In forward shading SceneCaptureSource modes Normal and BaseColor are replaced with SceneColorHDR as the GBuffer is not available. This is a silent failure for now as there's no good content error reporting mechanism for scene captures. #jira UE-39658 Change 3264284 on 2017/01/19 by Mark.Satterthwaite Duplicate CL #3264251: Modify some asserts in MetalRHI - technically using a store-action of ENoAction on Stencil buffers should make it invalid to restart a render-pass but on Mac it will work because ENoAction won't invalidate anything written. In future we need to use deferred store-actions in Metal so that we can "restart" passes while enforcing correct Load/Store actions. #jira UE-40803 Change 3264282 on 2017/01/19 by Benn.Gallagher CIS fix, bad expression that failed to compile Mac #jira UE-40716 Change 3264257 on 2017/01/19 by Mike.Beach Revising fix in UBlueprint::BeginCacheForCookedPlatformData(), saving off nativization data if the -nativizeAssets param is present (not just if it was enabled in packaging settings). #jira UE-40620 Change 3264242 on 2017/01/19 by Daniel.Wright [Copy] Sharing IndirectLightingCacheTextureSampler samplers #jira UE-40727 Change 3264191 on 2017/01/19 by Ori.Cohen Fix heightfield not working with traces underneath. #JIRA UE-39819 Change 3264139 on 2017/01/19 by Benn.Gallagher Removed collision between clothing in external skeletal mesh components, as clothing simulations could already be in flight and editing collisions while the simulation is running is not supported by APEX #jira UE-40716 Change 3264110 on 2017/01/19 by Max.Preussner MfMedia: Disabled plug-in on Windows 10, because it is currently broken #jira UE-406344 Change 3264108 on 2017/01/19 by Max.Preussner MfMedia: Fixed compile errors on Windows 10 #jira UE-40644 Change 3264099 on 2017/01/19 by Jamie.Dale Adding deprecation warning for 4.14 style PO export #jira UE-40592 Change 3264089 on 2017/01/19 by Matthew.Griffin Reworked DDC commandlet to make sure it actually calls BeginCacheForCookedPlatformData on assets Skip doing this for Engine content if -ProjectOnly is set as that takes a long time and isn't necessary for the way we use it #jira UE-39968 Change 3264065 on 2017/01/19 by James.Golding Fix ModifyCurve node not calling init/update in SourcePose #jira UE-40852 Change 3263729 on 2017/01/19 by Alexis.Matte Fix a bad condition when filling the material sorting array #jira UE-40814 Change 3263704 on 2017/01/19 by Jack.Porter Fix compile error in AndroidESDeferredOpenGL.cpp when " ES Deferred Shading Renderer" is enabled. #jira UE-40659 Change 3263627 on 2017/01/19 by Jack.Porter Fixed black textures when Vulkan is packaged for ETC1 #jira UE-40658 Change 3263554 on 2017/01/19 by Jack.Porter Fixes to HISMC LOD to use new screen size calculation. Solves issue where HISMC was always rendered at lowest LOD. #jira UE-38930 Change 3263535 on 2017/01/19 by Matthew.Griffin Removed unnecessary directories to always cook Problem was actually down to string asset references not being resolved in file set generation Change 3263534 on 2017/01/19 by Matthew.Griffin Added -SkipPublish parameter to BuildLauncherSample command so that we don't chunk and post preflights Change 3263267 on 2017/01/18 by Dan.Oconnor Fix for editing of TMap/TSet variables in structure editor, async tasks, and when using UK2Node_CommutativeAssociativeBinaryOperator. #jira UE-40428 Change 3263219 on 2017/01/18 by Dan.Oconnor Fix copy paste error found by UDN user Craig.Wright that could result in fatal bytecode execution #jira UE-19425 Change 3262980 on 2017/01/18 by Maciej.Mroz #jira UE-40394, UE-40395, UE-40426, UE-40484, UE-40770 Integrated cl 3262851, 3261613, 3260908 from Dev-Blueprint Change 3262908 on 2017/01/18 by Ori.Cohen When refreshing physics assets, don't do so on components that have no bodies. #JIRA UE-40764 Change 3262709 on 2017/01/18 by Matt.Kuhlenschmidt Fix a crash if a background blur widget ends up being negative or zero sized #jira UE-40820 Change 3262606 on 2017/01/18 by Marc.Audy Don't bother the user with force feedback based on where the unpossessed pawn is standing in the world while in simulate mode #jira UE-40785 Change 3262416 on 2017/01/18 by Marc.Audy Reenable audio threading #jira UE-00000 Change 3262125 on 2017/01/18 by Chris.Wood Fixed unnecessary truncate in SMenuAnchor::Tick that caused menu placement to wobble [UE-40293] - Dropdown selection box jitters when mouse is moved over top of it on Mac #jira UE-40293 Change 3262103 on 2017/01/18 by Jamie.Dale Merging some cooker fixes CL# 3262089 - Fixing RedirectCollector issues with projects outside the UE4 directory CL# 3262091 - Guarding against potentially invalid call to FString::Mid CL# 3262094 - Cook on the fly builds now resolve string asset references #jira UE-40790 Change 3262082 on 2017/01/18 by Chris.Bunner Accumulate used particle materials from final mesh material module, not first. #jira UE-39953 Change 3261996 on 2017/01/18 by Matthew.Griffin Allow Samples to be built in pre-flights if you are specifying an engine version Change 3261995 on 2017/01/18 by Matthew.Griffin Resolve string asset references after loading packages to ensure that we find all required files Change 3261934 on 2017/01/18 by Allan.Bentham Bump shader version to force changes in 3260307 to occur. #jira UE-39701 Change 3261842 on 2017/01/18 by Graeme.Thornton Manual copy of CL 3253580 from Dev-Core Added some validation of the class index in exportmap entries #jira UE-37873 Change 3261017 on 2017/01/17 by Mitchell.Wilson Resaving all levels to resolve short form string asset reference warnings. #jira UE-40732 Change 3260918 on 2017/01/17 by Andrew.Rodham Sequencer: Request unloaded levels to be loaded when being made visible through sequencer #jira UE-40082 Change 3260909 on 2017/01/17 by Ben.Marsh Fix error running "Clean" in installed build. #jira UE-40751 Change 3260757 on 2017/01/17 by Jeff.Fisher UE-39654 Crash when launching Google VR project -Via SwitchGameWindowToUseGameViewport we get an early ResizeViewport which does an early Draw. This calls GetStereoProjectionMatrix before the game has ticked and fetched the device info we use to build that matrix. -In this change we make the call to setup that information in the GoogleVRHMD constructor, to ensure it is done before anything tries to use it. -I also added some asserts. #jira UE-39654 #review-3260644 Change 3260637 on 2017/01/17 by Alexis.Matte Fix crash when importing skeletal mesh containing a texture or a material using the same name. #jira UE-40538 Change 3260630 on 2017/01/17 by Marc.Audy When installing a feature pack maintain the include of the template so that any properties inside it are not lost by replacing it with the project's PCH include Update all C++ feature packs to include the original project .h in the files that are copied in to the new project #jira UE-40730 Change 3260600 on 2017/01/17 by matt.barnes Test content for sequencer event tracks #jira UE-29618 Change 3260593 on 2017/01/17 by Mieszko.Zielinski Made FSupportedAreaData export as part of engine API #UE4 #jira UE-40739 Change 3260538 on 2017/01/17 by Marc.Audy Always display axes in debug info, but show -- for value when we don't yet know the ranges #jira UE-40700 Change 3260422 on 2017/01/17 by Marc.Audy Expose level streaming incremental unregister component cvars in the engine streaming section of the project settings #jira UE-10109 Change 3260392 on 2017/01/17 by Ben.Woodhouse Duplicated from CL 3260107: Fix FMonitoredProcess to prevent infinite loop in -nothreading mode #jira UE-40717 Change 3260358 on 2017/01/17 by Chris.Bunner Only validate tonemapper LUT input if actually hooked up. #jira UE-40467 Change 3260327 on 2017/01/17 by Frank.Fella PlatformMediaSource - Fix Validate to check all specified media sources, and change GetURL to get the url for the current platform when running uncooked. #jira UE-40709 Change 3260307 on 2017/01/17 by Allan.Bentham Restore metal compiler's shader source serialization code when the shader is to be compiled at runtime. #jira UE-39701 Change 3260276 on 2017/01/17 by Alex.Delesky #jira UE-40276 - Fixing an issue where a Standalone game launched from the editor cannot toggle fullscreen mode. Change 3260274 on 2017/01/17 by Chris.Wood Added check for null World ptr in AActor::PostEditChangeProperty to fix crash when pasting temporary Actors [UE-40492] - Crash after ejecting from PIE session and selecting a component in the details panel #jira UE-40492 Change 3260230 on 2017/01/17 by Ben.Woodhouse Duplicated from dev-rendering@3232283 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 3260096 on 2017/01/17 by Thomas.Sarkanen Fixed crash when rendering out a level sequence with layered animations When a level contained sequences with layered animations that *werent* taking part in the render (i.e. they were not part of the current master sequence) then their instances were initialized but not ticked. When their components then got a call to evaluate their bone transforms, the cached blends were in an uninitialized state. #jira UE-40654 - Render Movie using separate process crashes capture process Change 3259875 on 2017/01/17 by Dmitriy.Dyomin Fixed: SunTemple is washed out in one color on some Android devices #jira UE-40689 Change 3259011 on 2017/01/16 by Max.Chen Matinee to Level Sequence: Make RegisterTrackConverters pure virtual #jira UE-37328 Change 3258992 on 2017/01/16 by Rolando.Caloca UE4.15 - Integrate fix for outlines (3258807) #jira UE-40690 Change 3258949 on 2017/01/16 by mason.seay Disabled TranslatedMass test #jira UE-29618 Change 3258860 on 2017/01/16 by Max.Preussner Media: Prevent loading of media plug-ins in console apps, such as game servers (OR-34819) #jira OR-34819 Change 3258846 on 2017/01/16 by Max.Preussner MfMedia: Fixed incorrect tracks being played in multi-track media sources (UE-39703) #jira UE-39703 Change 3258813 on 2017/01/16 by Benn.Gallagher Added error on import for APEX clothing files that either have no submeshes or have no submeshes with simulated vertices. #jira UE-40614 Change 3258771 on 2017/01/16 by James.Golding Skip fatal warning in UBodySetup::Serialize if duplicating (e.g. spawning component via SCS with a BodySetup in its template) #jira UE-40418 Change 3258747 on 2017/01/16 by Max.Chen Sequencer: AddUnique SequencerActorTag to prevent multiple tags being added when spawning/despawning. #jira UE-40665 Change 3258630 on 2017/01/16 by Jurre.deBaare CIS IfDef issue fix #JIRA UE-1234 Change 3258541 on 2017/01/16 by Phillip.Kavan [UE-40131] Revised fix that will work for "inclusive" BP nativization with data-only BPs. change summary: - revised code in UBlueprint::BeginCacheForCookedPlatformData() to also support the "inclusive" nativization method #jira UE-40131 Change 3258532 on 2017/01/16 by Max.Chen Sequencer: Fix max row index off by one error . This was always incorrect, but it was masked by the fact that FixRowIndices() was called on the track when the UI gets built. That function was removed from the node layer in CL #3252753 and therefore exposed this bug. #jira UE-40642 Change 3258505 on 2017/01/16 by Marc.Audy Improve messaging when installing vehicle and vehicle adv C++ feature packs #jira UE-40647 Change 3258478 on 2017/01/16 by Matt.Kuhlenschmidt PR #3131: UE-40567: Added nullcheck to FSplinePointDetails (Contributed by projectgheist) #jira UE-40567 Change 3258457 on 2017/01/16 by Jurre.deBaare SpeedTree Billboards rendering with Incorrect Material #fix Ensure that we add a section info entry for the billboard models/lods during SpeedTree importing #jira UE-39677 Change 3258442 on 2017/01/16 by Alexis.Matte Skeletalmesh import, make sure we increment the lod index when animation is not imported #jira UE-40640 Change 3258431 on 2017/01/16 by Jurre.deBaare Back out changelist 3258392 #fix issue was already resolved #jira UE-1234 Change 3258392 on 2017/01/16 by Jurre.deBaare Fix for non-unity CIS #JIRA UE-1234 Change 3258358 on 2017/01/16 by Matthew.Griffin Prevent warning from being shown when XMPP module is not built #jira UE-40616 (I guess LoadModule could be changed to LoadModuleChecked now if they do exist) Change 3258144 on 2017/01/15 by Marc.Audy Fix non-unity CIS errors #jira UE-00000 Change 3258141 on 2017/01/15 by zachary.wilson Adding testing content for Distance Field Indirect Shadows #jira UE-29618 Change 3258049 on 2017/01/14 by Nick.Shin UFE sent incorrect header data on missing file also, it seems that UFE was written to expect clients to close the connection -- (this should be closed manually -- which will flush the data and then close out the socket -- but, since this is a developer tool... leaving this as-is) first, 404 was not sending the required double newline after headers second, since connection are not closed manually (server side) send a dummy payload with content-length data #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3257984 on 2017/01/14 by Aaron.McLeran Attempting another fix for static analysis warning in CIS #jira UE-40645 Change 3257904 on 2017/01/14 by Aaron.McLeran Resolving static analysis warnings reported by CIS #jira UE-40645 Change 3257883 on 2017/01/14 by Aaron.McLeran Fixing build warning with CL 3257826 #jira UE-40645 Change 3257826 on 2017/01/13 by Aaron.McLeran Integrating fixes from Dev-Framework and Odin to Release-415 #jira UE-40645 Change 3257654 on 2017/01/13 by Marc.Audy Until plugins can drive their own dependencies vehicle and vehicle adv feature packs will not compile automatically and will pop up a message log informing the user of the actions they need to manually take. #jira UE-40466 Change 3257608 on 2017/01/13 by John.Pollard PC: Assertion Fail with UPackageMapClient::AddNetFieldExportGroup() viewing replays #jira OR-34522 Change 3257489 on 2017/01/13 by Mitchell.Wilson Removing preview mesh from multiple materials to resolve CIS warnings. #jira UE-40628 Change 3257485 on 2017/01/13 by Chris.Babcock Don't initialize FMinimalDummyForwardLightingResources for unneeded feature levels (below SM4) #jira UE-40602 #ue4 #android Change 3257444 on 2017/01/13 by Matt.Barnes Updating test assets for UEQATC-2967 #jira UE-29618 Change 3257324 on 2017/01/13 by Arciel.Rekman Linux: Update runtime CEF lib as well (UE-401413). - Followup to CL 3256081. #jira UE-40413 (Merging CL 3257241 from Dev-Platform to Release-4.15) Change 3257140 on 2017/01/13 by Lina.Halper Fix crash with deleting all poses #jira: UE-40537 Change 3257066 on 2017/01/13 by Jurre.deBaare CIS fix for game builds #jira UE-1234 Change 3257056 on 2017/01/13 by Ben.Zeigler #jira UE-40318 Fix crash in streamablemanager where callbacks would get called on a deleted manager. This is being rewritten in 4.16, so do a quick fix for 4.15 to avoid the crash Change 3256839 on 2017/01/13 by Jurre.deBaare Added conversion of HLOD transition screen size to new transition screen area values #fix During serialization patch up the values of transition screen size within the hierarchical lod setups #misc Updated the default value to a screen size to screen area equivalent #JIRA UE-40518 Change 3256761 on 2017/01/13 by Mieszko.Zielinski Fixed EQS debug rendering not clearing previously displayed labels if new request has no labels #UE4 #jira UE-40589 Change 3256177 on 2017/01/12 by Josh.Adams - Moved the MfMedia plugin outside of XboxOne directory, because it's a Windows plugin as well (that happens to also work on XboxOne - all public APIs) #jira UE-40391 Change 3256131 on 2017/01/12 by Jamie.Dale Fixing log spam when trying to load an empty font data #jira UE-40555 Change 3256081 on 2017/01/12 by Arciel.Rekman Fixed CEF compatibility problems on Ubuntu 14.04 (UE-40413). - Also deleted Debug version of it. - Change by yaakuro. #jira UE-40413 (Edigrating CL 3256065 from Dev-Platform to Release-4.15) Change 3256046 on 2017/01/12 by Jon.Nabozny Use PxConvexFlag::eSHIFT_VERTICES when cooking meshes to fix baked in transforms. #jira UE-39212 Change 3255939 on 2017/01/12 by mason.seay Rebuilt lighting #jira UE-29618 Change 3255912 on 2017/01/12 by Olaf.Piesche Replicating fix from 3246828 for #jira UE-39249 Change 3255909 on 2017/01/12 by Rolando.Caloca UE4.15 - Support for choosing discrete AMD GPU #jira UE-40546 Change 3255835 on 2017/01/12 by Martin.Wilson Fix newly added virtual bones not being on screen. #jira UE-40516 Change 3255774 on 2017/01/12 by Mark.Satterthwaite Merging 3251926 for Richard.Wallis: #jira UE-38828 Crash after Enabling Forward Shading on Mac and Creating/Editing Materials. Using TGlobalResource to avoid constant resource allocation. Prev fix (in CL 3239454) caused a crash in D3D11 with zero sized resource views. Change 3255771 on 2017/01/12 by Alexis.Matte Fix a crash when re-importing asset with no material #jira UE-40510 Change 3255746 on 2017/01/12 by Jon.Nabozny Change _DEBUG to PX_DEBUG in ConvexHullLib.cpp #jira UE-0000 Change 3255659 on 2017/01/12 by Jon.Nabozny Enable Shifting Vertices during Convex Hull cooking to prevent precision issues. (Copied CL-3249100 from Dev-Phyics-Upgrade to support new flag) #jira UE-39212 Change 3255617 on 2017/01/12 by Ori.Cohen Fix crash when computing mass for an async object. Using passed in rigid body instead of assuming SyncRigidActor #JIRA UE-40458 Change 3255536 on 2017/01/12 by Jamie.Dale Fixed crash when using an object picker against the 'Object' type This also optimizes some filter code to avoid filtering when it would be pointless (and just slows things down). #jira UE-40408 Change 3255451 on 2017/01/12 by Chris.Wood Fixed read only text color in SCommentBubble [UE-40384] - Reference Viewer comment text is difficult to read Also changed DetermineForegroundColor() method in EditableTextBox classes to fallback on ForegroundColorOverride if it is set and ReadOnlyForegroundColorOverride isn't set. #jira UE-40384 Change 3255448 on 2017/01/12 by Chris.Wood Removed blinking cursor/caret on read only editable text layouts. [UE-40502] - Flashing cursor/caret showing in read-only editable text layouts #jira UE-40502 Change 3255445 on 2017/01/12 by Marc.Audy Create the dynamic level streaming persistent object correctly outered to the World rather than the transient package to avoid GetWorld() crashing #jira UE-00000 Change 3255441 on 2017/01/12 by Jon.Nabozny Regenerate collision for the basic Cube mesh to fix resting issues and invalid verts. #jira UE-40478 Change 3255407 on 2017/01/12 by Yannick.Lange VREditor: - Fix: Assertion Failed crash after pressing F8 in PIE while Foliage Mode was selected - Fix: Assertion Failed crash after pressing F8 in PIE while Paint Mode was selected - Added extra checks for other possible future cases #jira UE-39786 UE-39789 Change 3255393 on 2017/01/12 by Chris.Bunner Duplicating CL 3255244: Removed test variable from MaterialExpressionVectorParameter. #jira UE-40517 Change 3255375 on 2017/01/12 by Steve.Robb CIS fix. #jira UE-39556 Change 3255334 on 2017/01/12 by samuel.proctor Corrected QA Container asset to remove pin warning. #jira UE-29618 Change 3255319 on 2017/01/12 by james.cobbett Fixing motion blur issue with test content for Pose Snapshots. #jira UE-29618 Change 3255247 on 2017/01/12 by Nick.Darnell Slate - Slate's Tab Manager is now a bit smarter about allowing Focus/BringToFront attention grabbing methods. In order to make the UI less jumpy it was restricted to only allowing alerts and bring to front to be triggered if you were on the window, or child window of the active application window. That can negatively impact cases where a user takes an action (clicks a link ro button saying open/goto this tab), that is on another window. To work around this limitation, the Tab Manager will also permit the action if Slate is currently processing user input, implying that the action being taken is in direct response to the user pressing a button and interacting with the UI. #jira UE-40313 Change 3255236 on 2017/01/12 by Phillip.Kavan [UE-40131] Non-native child BPs can now properly override a nativized parent BP's components in a cooked build with exclusive Blueprint class nativiation. - Mirrored from //UE4/Dev-Blueprints (CL# 3254024,3254391) #jira UE-40131 Change 3255216 on 2017/01/12 by Rolando.Caloca UE4.15 - Fix compile issue on Vulkan 1.0.37.0 or newer #jira UE-40506 Change 3255206 on 2017/01/12 by Steve.Robb Use outer walking IsA() implementation in editor to get around reinstancing and hot reload issues. #fyi mike.beach #jira UE-39556 Change 3255195 on 2017/01/12 by mason.seay Adjusted slope to fix platform discrepancy #jira UE-29618 Change 3255086 on 2017/01/12 by Jack.Porter Fix XboxOneShaderCompiler.cpp non-unity compilation #jira None Change 3255085 on 2017/01/12 by Jack.Porter Missing HTML5 changes from CL 3254907 #jira UE-39111 Change 3255031 on 2017/01/12 by Jack.Porter More iOS GoogleVR changes missing from CL 3254907 #jira UE-39111 Change 3254991 on 2017/01/12 by Jack.Porter Missing file from CL 3254907 #jira UE-39111 Change 3254907 on 2017/01/11 by Jack.Porter Android MSAA changes - use r.MobileMSAA cvar, support more than 2x, fix issues where targets other than scene color were created with MSAA #jira UE-39111 #jira UE-35849 #jira UEMOB-35 Change 3254810 on 2017/01/11 by Arciel.Rekman Linux: fix for crash on exit (UE-40488). #jira UE-40488 Change 3254617 on 2017/01/11 by Peter.Sauerbrei remake the fix for missing PhysXVehicle library in binary for IOS and TVOS #jira UE-39349 Change 3254489 on 2017/01/11 by mason.seay Other minor improvements to the map #jira UE-29618 Change 3254477 on 2017/01/11 by mason.seay Map tweaks to prevent the vehicle from getting stuck #jira UE-29618 Change 3254431 on 2017/01/11 by Mitchell.Wilson Rebuilt lighting on all StarterContent levels. #jira UE-40468 Change 3254333 on 2017/01/11 by mason.seay Adjusted lightmap on mesh to remove odd rendering splotches #jira UE-29618 Change 3254131 on 2017/01/11 by Rolando.Caloca UE4.15 - Missing dumped shaders #jira UE-40465 Change 3254126 on 2017/01/11 by Jeff.Fisher UE-40422 Vive Motion Controllers unable to Play Haptic Effect -Removed an unnecessary remapping of controllerindex to deviceid, they are the same now. #jira UE-40422 #review-3254084 Change 3254046 on 2017/01/11 by Mark.Satterthwaite Merging 3233811: 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. #jira UE-39935 Change 3254021 on 2017/01/11 by james.cobbett Test content for Pose Snapshot testing #jira UE-29618 Change 3253993 on 2017/01/11 by Alexis.Matte Fix the morph target import #jira UE-40424 Change 3253948 on 2017/01/11 by mason.seay Fixed Level BP logic that was causing Access None error #jira UE-29618 Change 3253884 on 2017/01/11 by mason.seay Updated mesh colors on map. Disabled motion blur #jira UE-29618 Change 3253862 on 2017/01/11 by mason.seay Disabled Always Show Mobile Input (turned on by accident) #jira UE-29618 Change 3253859 on 2017/01/11 by Mark.Satterthwaite Merging 3252866: Fix Metal shader pipeline hash collisions caused by deferring MTLFunction construction until PrepareToDraw so that we may use Function-Constants to specialise the shader source without generating additional permutations. This is required to generate proper tessellation shaders which are specialised against the index-buffer usage & type (none, uint16, uint32). While we're here amend the hash functions to make better use of the existing hash functions to improve the distribution and hopefully reduce the possibility of collisions in future. #jira UE-40357 Change 3253854 on 2017/01/11 by Mark.Satterthwaite Merging 3252859: Fix the calculation of Metal tessellation struct alignment and size to use largest member size, so that we don't assert in debug or cause out-of-bounds access in development/shipping. #jira UE-40410 Change 3253853 on 2017/01/11 by Mark.Satterthwaite Merging 3237394: 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 3253852 on 2017/01/11 by Mark.Satterthwaite Merging 3236850: Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3253834 on 2017/01/11 by mason.seay Updated mobile input textures to be power of two #jira UE-29618 Change 3253807 on 2017/01/11 by Mark.Satterthwaite Merging 3232641 & 3236788 & 3233854 & 3249742 from Dev-Rendering: 3232641: - 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. 3236788: 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. 3233854: More information about texture type validation errors in Metal. 3249742: 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. #jira UE-40200 Change 3253636 on 2017/01/11 by Chris.Wood Improved tracking of runtime and debugger attachment for analytics purposes. [UE-39780] - Change IsDebugger to WasDebuggerPresent in all crash/AS analytics [UE-39777] - Update MTBF IsDebugger state for every heartbeat [UE-39778] - UnrealWatchdog to send WasDebuggerPresent state for app if set [UE-39779] - UnrealWatchdog to send total run time of process Debugger state was previously read once at startup or once at the time of an event. Debugger is now checked during the heartbeat and doesn't reset flag when detached so we know if a session was ever debugged. Also reporting total run time in UnrealWatchdog. Watchdog still doesn't run when debugging but and will never show popups to a debugger user even when forced on with -forcewatchdog. #jira UE-39780, UE-39777, UE-39778, UE-39779 Change 3253281 on 2017/01/10 by Dan.Oconnor Typo fix caused parameter in local struct definition to shadow the local #jira UE-40027 Change 3253231 on 2017/01/10 by Dan.Oconnor Mirror of 3253220 These pins should infer together #jira UE-40427 Change 3253125 on 2017/01/10 by Uriel.Doyon Brought back CL 3242117 and 3238685, which got lost on the way: - Fix for possiblel check fail when changin mobility of actors. - Fix for possible check fail when processing streaming data. #jira UE-39996 Change 3252936 on 2017/01/10 by Marc.Audy CopyPropertiesForUnrelatedObjects needs to consider path not just name of subobjects when matching them up to copy properties and update references Ensure that a reinstanced child actor component ends up pointing at the correct child actor template #jira UE-40027 Change 3252886 on 2017/01/10 by Lina.Halper Fix for invalid AnimCurves when curve is added while running #jira: UE-39826 Change 3252753 on 2017/01/10 by Frank.Fella Sequencer - Change track rows to use separate track nodes in the display node tree, fixes key edit issues on animation and audio tracks. #jira UE-39836 Change 3252640 on 2017/01/10 by Lukasz.Furman fixed NavCollision losing user settings after any property change copy of 3252628 #jira UE-40388 Change 3252614 on 2017/01/10 by Daniel.Wright UStaticMeshComponent::InvalidateLightingCacheDetailed uses MarkRenderStateDirty. Massively speeds up duplication of HISMC with many instances (10+ minutes -> seconds), as InvalidateLightingCacheDetailed gets called for every instance. #jira UE-40406 Change 3252609 on 2017/01/10 by mason.seay Updated map with text actors for more visual clarity #jira UE-29618 Change 3252477 on 2017/01/10 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios #jira UE-39852 Change 3252451 on 2017/01/10 by Daniel.Wright Garbage collection calls UWorld>SendAllEndOfFrameUpdates() on all loaded worlds first so that deferred recreate render states happen before any UObjects are deleted * Fixes rendering thread crashes in the order of events of 1) SetMaterial 2) GC 3) Rendering command that dereferences the UMaterial #jira UE-30089 Change 3252418 on 2017/01/10 by Ben.Zeigler #jira UE-40390 Fix crash saving blueprint with an inherited DataTable/CurveTable reference. Delta serialization meant that the necessary name wasn't in the name table, so adding it manually now. Change 3252410 on 2017/01/10 by Max.Chen Sequencer : Filter sections on select in range Copy from Dev-Sequencer #jira UE-37854 Change 3252385 on 2017/01/10 by Max.Chen Sequencer: Update auto tangents when setting key time. This fixes a bug where dragging keys with auto tangents doesn't recompute tangents properly. #jira UE-39923 Change 3252360 on 2017/01/10 by Allan.Bentham Remove incorrect assert for iOS. #jira UE-40385 Change 3252297 on 2017/01/10 by mason.seay Test assets for suspending cloth simulation #jira UE-29618 Change 3252125 on 2017/01/10 by Mieszko.Zielinski Fallout fix after removal of BlackboardKeyUtils::CalculateComparisonResult declaration from the AIModule #UE4 #jira UE-40099 Change 3251987 on 2017/01/10 by Allan.Bentham Fix HQ DoF #jira UE-35548 Change 3251856 on 2017/01/10 by Jack.Porter Fixed Get Instances Overlapping Box blueprint function due to issue with FBox constructor. Added MakeBox and MakeBox2D kismet native functions Fixed box overlap test ignoring instance scale #jira UE-34409 Change 3251519 on 2017/01/09 by Daniel.Wright [Copy] Fixed GLandscapeLayerUsageMaterial getting GC'ed #jira UE-40055 Change 3251146 on 2017/01/09 by Lina.Halper Fix on stable track data carrying over to pose asset - decided to clean up track data in anim sequence since we don't really need that data anymore #jira: UE-40351 #code review: Martin.Wilson Change 3251056 on 2017/01/09 by Lina.Halper fixed crash when pose node contains stale data when updating source. #jira: UE-40258 #code review; Thomas.Sarkanen Change 3251035 on 2017/01/09 by Mitchell.Wilson Removed preview mesh in M_GodRay to resolve CIS warning. Relinked textures used in two materials to resolve CIS warnings. #jira UE-40350 Change 3250959 on 2017/01/09 by Mitchell.Wilson Updating master sequence playback end time so the final audio track can be heard. Updating multiple shots to resolve issues with audio not playing back properly. #jira UE-40321 UE-40335 Change 3250896 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed level visibility not working in PIE #jira UE-40082 Change 3250895 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed evaluation of overlapping audio and skeletal aninmation sections - Audio and skeletal animation sections now continue to support legacy evaluation order. Overlapping sections of the same priority on the same row will be filtered out such that only the section with the latest start time will be evaluated. #jira UE-40320 Change 3250830 on 2017/01/09 by Ben.Woodhouse Duplicated from //ue4/Release-4.14 CL 3238182 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. #jira UE-38818 Change 3250790 on 2017/01/09 by Lauren.Ridge Fixing backspace on VR Editor numberpad menu. #jira UE-39770 Change 3250681 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@3249296: 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 3250680 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@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 #jira UE-39949 Change 3250609 on 2017/01/09 by Steve.Robb Maximum number of stats-using threads increased to 512. #jira UE-38153 Change 3250604 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed incorrect seed being used when generating new animation type IDs for object properties #jira UE-40327 Change 3250589 on 2017/01/09 by Matthew.Griffin Changed publish symbols node to use runtime dependencies instead of manually including the whole PhysX folder Avoids unused configs and VS2013 files #jira UE-39171 Change 3250578 on 2017/01/09 by Matthew.Griffin Removed art tools from released build now that they are available separately on the Marketplace Change 3250282 on 2017/01/07 by Mieszko.Zielinski Fixed UNavigationSystem::bNavigationAutoUpdateEnabled getting ignored by recent addition to related condition in UNavigationSystem #UE4 Reported by UT team. Replication of a fix from Dev-Framework that didn't make it to 4.15 stream #jira UE-40324 Change 3250276 on 2017/01/07 by Mieszko.Zielinski Fixed not being able to add elements to UAIPerceptionStimuliSourceComponent.RegisterAsSourceForSenses for instances manually placed on the map #UE4 #jira UE-31711 Change 3250219 on 2017/01/07 by Mieszko.Zielinski Extended comment to AISenseConfig_Sight::PeripheralVisionAngleDegrees to make it clear how it works #UE4 #jira UE-31731 Change 3250147 on 2017/01/07 by Andrew.Rodham Added missing includes #jira UE-40019 Change 3250096 on 2017/01/06 by Nick.Shin refetch on timed out GET/POST requests correction to: UE_MakeHTTPDataRequest #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3249963 on 2017/01/06 by Mieszko.Zielinski removed unused and undefined BlackboardKeyUtils::CalculateComparisonResult #UE4 #jira UE-40099 Change 3249829 on 2017/01/06 by Alexis.Matte turn on the material name clash feature for the content browser importer. #jira UE-40298 Change 3249791 on 2017/01/06 by andrew.porter QAGame: Added level blueprint logic to QA-Sequencer that lets tester override sequence bindings #jira UE-29618 Change 3249755 on 2017/01/06 by Jamie.Dale Some fixes for object reference detection and notification when deleting assets #jira UE-40121 Change 3249727 on 2017/01/06 by James.Golding #jira UE-40242 Change 3249707 on 2017/01/06 by Mitchell.Wilson Removing preview mesh with incorrect path from materials to resolve warnings in CIS. #jira UE-40311 Change 3249543 on 2017/01/06 by Michael.Dupuis #jira UE-40299: validate if UISettings is valid Change 3249506 on 2017/01/06 by Alexis.Matte Make sure we use the correct LodIndex when importing a new LOD in case a previous LOD import fail. #jira UE-40240 Change 3249477 on 2017/01/06 by Ori.Cohen Fix incorrect warning when moving kinematic objects during simulation. #JIRA UE-40290 Change 3249472 on 2017/01/06 by Andrew.Rodham Sequencer: Undo now works as expected when editing the properties of a key #jira UE-40019 Change 3249390 on 2017/01/06 by Mitchell.Wilson Removing preview meshes with improper path from materials to resolve CIS warnings in landscape mountains sample. #jira UE-40300 Change 3249317 on 2017/01/06 by Alexis.Matte Fix a crash when loading skeletalmesh with no section #jira UE-40249 Change 3249294 on 2017/01/06 by Mitchell.Wilson Updated defaultengine.ini for Match 3 to resolve warnings in CIS. ServerDefaultMap and TransitionMap had invalid paths. #jira UE-40295 Change 3249213 on 2017/01/06 by Chris.Bunner Fixed up logic for windowed/fullscreen output display selection when working with HDR. Now selects the most appropriate display if HDR enabled, else current monitor window is on. FullscreenDisplay commandline functions regardless of HDR support. #jira OR-33525, OR-33536, OR-33540, OR-33520 Change 3249135 on 2017/01/06 by Martin.Wilson Fix root motion issues on additive animations. - Fix scale issue on resetting root bone - Fix loss of root motion when animation is additive. #jira UE-40232 Change 3248522 on 2017/01/05 by Alexis.Matte Fix a crash when reimporting morph target. Also fix a crash when initiating ColorVertexBuffer with NULL value #jira UE-40201 Change 3248271 on 2017/01/05 by Andrew.Rodham Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence #jira UE-40234 Change 3248092 on 2017/01/05 by Ben.Marsh UBT: Remove the [Obsolete] attribute from methods in TargetRules; the [ObsoleteOverride] attribute gives a much better (and more concise) warning with specific instructions on how to resolve it. Change 3248091 on 2017/01/05 by Marcus.Wassmer Tick renderthreadtickables in -onethread to avoid leaks. #jira UE-40248 Change 3248063 on 2017/01/05 by Marc.Audy Route FAudioDevice::StopAllSounds to the audio thread if called on the game thread #jira UE-40243 Change 3247995 on 2017/01/05 by Maciej.Mroz NativizationSummary object is always present. manually merged cl#3247985 from Dev-Blueprints #jira UE-40035 Change 3247873 on 2017/01/05 by Chad.Garyet Adding "Generate QA Labels" buildgraph node and automation script. Port of createNewLabel and createMinimumLabel python scripts into UAT #jira UEB-725 Change 3247855 on 2017/01/05 by Nick.Shin refetch on timed out GET/POST requests #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3247737 on 2017/01/05 by Marc.Audy static mesh component instance data now correclty inherits from pritive component instance data instead of skipping it and inheriting directly from scene component instance data #jira UE-40053 Change 3247723 on 2017/01/05 by mason.seay Asset for suspend cloth bug #jira UE-29618 Change 3247708 on 2017/01/05 by Mitchell.Wilson Updating project settings to disable dbuffer decals to resolve rendering issues in Showdown while using -game -vr #jira UE-40195 Change 3247652 on 2017/01/05 by Martin.Wilson Fixes for animation notifies window -Fix notify not being removed from skeleton -Fix crash where editor is not refreshed after notify removal #jira UE-40154 Change 3247638 on 2017/01/05 by mason.seay Test assets for cloth suspension #jira UE-29618 Change 3247630 on 2017/01/05 by Alexis.Matte Prevent crash when the import fail and we have no staticmesh created #jira UE-40024 Change 3247556 on 2017/01/05 by Ben.Marsh Fix non-unity compile error. Change 3247547 on 2017/01/05 by Jurre.deBaare Crash while using the Delete Button in the HLOD Outliner while a Generated Proxy Mesh is opened in the Static Mesh Editor #fix Unify path for both delete cluster options in the outliner UI #jira UE-40066 Change 3247539 on 2017/01/05 by Benn.Gallagher Fixed serialization crash for simplified skeletal meshes leading to corrupted assets that crash on load after skin weight buffer changes. #jira UE-40199 Change 3247515 on 2017/01/05 by Allan.Bentham Fix inverted planar reflections when mobileLDR Fixed incorrect gamma 2 planar reflection rendering when mobileLDR #jira UE-32868 Change 3247502 on 2017/01/05 by Dmitriy.Dyomin Fixed: Single digit frame rate when sculpting landscape foliage. #jira UE-39532 Change 3247232 on 2017/01/04 by Ben.Marsh Remove private include from public header. Prevents compiling samples from installed build of the engine without private headers. #jira UE-40135, UE-40137, UE-40139, UE-40140, UE-40141, UE-40142, UE-40143, UE-40144 Change 3247002 on 2017/01/04 by Chris.Babcock Changed Vulkan hitchy pipeline log message verbosity #jira UE-38354 #ue4 #android #dontbackcopy Change 3246927 on 2017/01/04 by matt.barnes Updating QAGame content to facilitate UEQATC-2969 #jira UE-29618 Change 3246894 on 2017/01/04 by Mike.Beach Mirroring CL 3245322 from Dev-BP Fixed a crash when implementing a native interface in a BP #jira UE-40155, UE-40203 Change 3246830 on 2017/01/04 by Chris.Bunner Allow AllocGBuffer call when in simple-forward so dummy uniform buffer creation can occur. #jira UE-39756 Change 3246816 on 2017/01/04 by Jon.Nabozny Fix Anim Notifies Tab not opening in Animation Editor. #JIRA UE-40134 Change 3246804 on 2017/01/04 by Ori.Cohen Touch engine file to trigger re-link. #JIRA UE-40156 Change 3246709 on 2017/01/04 by mason.seay Updated map #jira UE-29618 Change 3246606 on 2017/01/04 by Ori.Cohen Fix for sweeps taking too long time (OR-32839). - Exhaustive investigation uncovered apparent numerical problems in this code (when compiling with clang 3.9.x with -ffast-math). - Current solution can result in overshoot for certain trace extents, but they are not expected to be a practical problem in Unreal. - NVidia is aware and will investigate a better solution. #tests Compiled Linux server with the changed PhysX and continuously ran bot matches for about a day. #JIRA UE-40156 Change 3246571 on 2017/01/04 by Marc.Audy Look at the body instance's desired collision enabled value rather than the primitive component's current collision enabled value when determining whether physics state should be created #jira UE-39994 Change 3246527 on 2017/01/04 by tim.gautier QAGame: BP_MediaPlayer now displays the name of the MediaPlayer plugin currently in use during playback #jira UE-29618 Change 3246480 on 2017/01/04 by mason.seay Map update #jira UE-29618 Change 3246470 on 2017/01/04 by Ori.Cohen Guard against infinitely thin geometry which fixes some nans. This showed up as issues in various projects #JIRA UE-00000 Change 3246413 on 2017/01/04 by Jon.Nabozny Cube asset did not have Tri Meshes. Reimported to fix the issue. -- Copied from 3233164 -- #jira UE-39657 Change 3246388 on 2017/01/04 by Jon.Nabozny Set 'p.MoveIgnoreFirstBlockingOverlap' to be enabled by default (3158732). This causes collision behavior to remain unchanged unless people opt in to the new behavior. -- Copied from 3239735 (bot health fixed by a different CL) -- #jira UE-39387 Change 3246352 on 2017/01/04 by Jon.Nabozny Fix FPredictProjectilePathParams to use a valid default value for TraceChannel. This requires the use of a new bool bTraceWithChannel which is enabled by default. -- Copied from 3239765 -- #JIRA UE-39726 Change 3246341 on 2017/01/04 by Ori.Cohen Allow vehicles to inherit from PawnMovementComponent and only use the pawn/ai capabilities when a Pawn owner is used. #JIRA UE-39508 Change 3246178 on 2017/01/04 by Andrew.Rodham Sequencer: When playback stops naturally, the play position is set to the boundary that caused playback to stop (the end if playing forwards, the start if playing backwards) - This is to reconcile the movie scene sequence player with previous behaviour #jira UE-40076 Change 3246102 on 2017/01/04 by Benn.Gallagher Fixed single threaded physics dispatcher triggering checks from clothing when running with a CPU with two or fewer cores. #jira UE-39811 Change 3246100 on 2017/01/04 by Benn.Gallagher Fixed ensure triggered when using root motion with sub instances Fixed crash reinstancing an active anim class that had subinstances #jira UE-39582 #jira UE-39579 Change 3246092 on 2017/01/04 by Marc.Audy PR #3082: Improve comment for UInputComponent (Contributed by Soleone) #jira UE-40098 Change 3246084 on 2017/01/04 by Matthew.Griffin Remove bad files Change 3246076 on 2017/01/04 by Matt.Kuhlenschmidt Fixed all non-editable text properties having a double disabled effect. The text box is read only which prevents edting but still allows copying text from it. This feature had regressed and the disabled effect on top of the read only effect made it too difficult to see the text. #jira UE-39652 Change 3246043 on 2017/01/04 by Steve.Robb Use of CastChecked instead of Cast in implementations of IStructSerializerBackend::WriteProperty. This is both more efficient and will hopefully make it easier to diagnose the issue. #jira UE-39872 Change 3246032 on 2017/01/04 by Martin.Wilson Change FindBoneIndex to FindRawBoneIndex (final bone maps are not built until after all adding is done so they will not be found) #jira UE-40105 Change 3246016 on 2017/01/04 by Andrew.Rodham Editor: Insert/Duplicate/Delete menu on array properties now only closes itself on click, rather than all menus - This allows us to edit such properties on context menus #jira UE-39998 Change 3246005 on 2017/01/04 by Thomas.Sarkanen Fixed asset attachment issues in Skeleton Tree Assets were being attached uniquely, so only one asset could be attached to a bone/socket. However the calling code didnt know that the unique attachment function just gave up, so the item just got added to the bottom of the tree. The attachment filter was not set correctly to allow for bone attatchments, so only sockets could be attached to. The attach parent name was not initialized, so assets could not be deleted one at a time. #jira UE-40040 - With multiple Preview assets on one bone, only one appears in Skeleton Tree #jira UE-40041 - Preview assets appear at the bottom of the skeleton tree Change 3246002 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed actor tick prerequisites not getting set up correctly for master sequences #jira UE-39975 Change 3245979 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed scrubbing audio tracks not working propertly #jira UE-40048 Change 3245978 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed dropping a level onto a level visibility section not marking the track as changed, and not correctly creating a transaction #jira UE-39998 Change 3245977 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed crash caused by lingering persistent evaluation data #jira UE-40064 Change 3245971 on 2017/01/04 by Dmitriy.Dyomin Fixed: Using Set World Origin Location will cause the player pawn to stutter #jira UE-40022 Change 3245725 on 2017/01/03 by Matt.Barnes Further improvments on test assets for UEQATC-2963 #jira UE-29618 Change 3245658 on 2017/01/03 by Arciel.Rekman Linux: fix ARM32 build (UE-39913). #jira UE-39913 (Redoing CL 3240982 from Dev-Platform in Release-4.15) Change 3245577 on 2017/01/03 by Mason.Seay More vehicle updates #jira UE-29618 Change 3245556 on 2017/01/03 by Matt.Barnes Updating test content for UEQATC-2963 #jira UEQATC-2963 Change 3245461 on 2017/01/03 by mason.seay Updating Inertia Tensor Scale to improve Vehicle Handling #jira UE-40013 Change 3245442 on 2017/01/03 by Jeff.Fisher UEVR-495 Assert when switching to 2d mode. sceHmdReprojectionStart failing. -There was a race condition between switching output modes on the render thread and sceHmdReprojectionStart on the RHI thread. The flush fixes that. The reprojection would simply have failed that frame previously in shipping which would not matter much as we are switching output modes anyway. #jira UEVR-495 #review-3245374 Change 3245427 on 2017/01/03 by Jeff.Fisher UEVR-456 check if we are using camera before doing camera disconnected dialog on PSVR -If the tracker is active, but we are tracking nothing (ie we have the morpheus hmd tracking plugin, and started up with it, but switched to 2d mode) don't pop up the camera setup warning until we start trying to track something again. -This is useful for apps that have 2d and vr modes. #jira UEVR-456 #review-3245372 Change 3245329 on 2017/01/03 by mason.seay Level and vehicle tweaks #jira UE-29618 Change 3245275 on 2017/01/03 by Chris.Babcock Added EngineVersion to AndroidManfiest.xml metadata #jira UE-40123 #ue4 #android Change 3245235 on 2017/01/03 by Guillaume.Abadie Cherry picks CL 3234813 from Dev-Rendering: Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3245183 on 2017/01/03 by Chris.Babcock Added missing #undef LOCTEXT_NAMESPACE to some files (contributed by projectgheist) #jira UE-40103 #PR #3085 #ue4 #android Change 3245120 on 2017/01/03 by mason.seay Missed some assets #jira UE-29618 Change 3245116 on 2017/01/03 by mason.seay Mass fucntional test #jira UE-29618 Change 3245049 on 2017/01/03 by Ben.Marsh PR #3086: Fixed ScriptGeneratorPlugin #includes (Contributed by projectgheist) Change 3244924 on 2017/01/03 by Ben.Zeigler #jira UE-40057 Fix regression in public access for SwapPlayerControllers, from GitHub #3072 Change 3244831 on 2017/01/03 by Mitchell.Wilson Fixed hole in collision around level. #jira UE-39576 Change 3244817 on 2017/01/03 by Matthew.Griffin Change check for files being under engine directory to avoid problems with relative paths #jira UE-40096 Change 3244801 on 2017/01/03 by Andrew.Rodham Editor: Fixed color picker not working when opened from a details panel on a context menu - When a color picker is opened from a details panel that's on a context menu, it now opens as a sub menu - Added the ability to find an open menu from a widget path to FSlateApplication #jira UE-39932 Change 3244776 on 2017/01/03 by Matt.Kuhlenschmidt Fix window handle and device context being accessed by scene viewports after the underlying window has been destroyed by the OS. This is an invalid state on linux and using some vr devices. #jira UE-7388 Change 3244672 on 2017/01/03 by Ben.Marsh Search all directories containing universal CRT installations from the registry, rather than assuming that the first one found will contain the universal CRT version we want to use. Attempt to fix issues described in PR #3059. Change 3244668 on 2017/01/03 by Thomas.Sarkanen Added "Reimport Animation" and "Export to FBX" to the animation editor toolbar Options were in the asset menu before. #jira UE-39643 - Missing "Reimport" option for animation assets Change 3244667 on 2017/01/03 by Thomas.Sarkanen Reduced default URO distances in-line with new LOD calculations New values should give (roughly) the same effect as the older values with the older system. #jira UE-39939 - URO LOD distance factors different with the new screen size metric Change 3244654 on 2017/01/03 by Matthew.Griffin Added functionality to specify Loading Phase for plugin templates Changed Blueprint Library Template so that it loads pre loading screen and can be linked correctly in blueprints that use it #jira UE-38826 Change 3244631 on 2017/01/03 by Dmitriy.Dyomin Fixed: TM_Landscape_LOD Folder does not Live Update contents after generating LODs with Create Per Package Asset #jira UE-37368 Change 3244548 on 2017/01/02 by Jack.Porter Fix for Post-process Materials rendering incorrectly in editor mobile preview after viewport is resized #jira UE-39905 Change 3244389 on 2016/12/30 by Phillip.Kavan [UE-39816] Fix broken pin links caused by renaming interface function input/output parameters prior to compiling the interface, but after renaming the function itself. Mirrored from //UE4/Dev-Blueprints (CL# 3244388). #jira UE-39816 Change 3244248 on 2016/12/29 by laz.matech Saved the new sublevel in the persistent level and set it to hidden by default #jira UE-29618 Change 3244213 on 2016/12/29 by laz.matech Added a sublevel to QA-Sequencer map #jira UE-29618 Change 3243857 on 2016/12/27 by samuel.proctor Altered Container asset to have proper console input #jira UE-29618 Change 3243852 on 2016/12/27 by Mason.Seay Forgot config file #jira UE-29618 Change 3243847 on 2016/12/27 by mason.seay Improved mobile input #jira UE-29618 Change 3243536 on 2016/12/24 by Phillip.Kavan [UE-39944] Extend the GetClassDefaults node to include output pin exceptions for TSet/TMap properties (i.e. mirror safeguards already in place for TArray). Mirrored from //UE4/Dev-Blueprints (CL# 3243210). #jira UE-39944 Change 3243535 on 2016/12/24 by Phillip.Kavan [UE-39816] Renaming interface input/output parameters will no longer cause broken pin links at interface function call sites in Blueprints that are currently loaded. Mirrored from //UE4/Dev-Blueprints (CL# 3243207). #jira UE-39816 Change 3243534 on 2016/12/24 by Phillip.Kavan [UE-39733] Fix incorrect graph pin value display names for user-defined enum types. Mirrored from //UE4/Dev-Blueprints (CL# 3239965). #jira UE-39733 Change 3243532 on 2016/12/24 by Phillip.Kavan [UE-39854] Fix nativized assets build error when there are no native code dependencies. Mirrored from //UE4/Dev-Blueprints (CL# 3239778). #jira UE-39854 Change 3243529 on 2016/12/24 by Phillip.Kavan [UE-38999] Dump component tree node hierarchy to the output log on error state during widget generation. Mirrored from //UE4/Dev-Blueprints (CL# 3239289). #jira UE-38999 Change 3243442 on 2016/12/23 by mason.seay QAGame cleanup - Replacing copy pose from mesh test assets #jira UE-29618 Change 3243215 on 2016/12/22 by Dmitriy.Dyomin Fixed: Switching to ES2 feature level preview renders black in editor #jira UE-40009 Change 3243185 on 2016/12/22 by Ryan.Vance #jira UEVR-478 Integrating 3235308 Mono changes from DevVR. Change 3243183 on 2016/12/22 by Ryan.Vance #jira UEVR-455 Integrating 3243173 post present call back implementation from 4.14.1 Change 3243182 on 2016/12/22 by Ryan.Vance #jira UE-39269 Working around a nullptr deref in the Oculus runtime. Change 3243153 on 2016/12/22 by mason.seay WIP map update #jira UE-29618 Change 3243128 on 2016/12/22 by andrew.porter QAGame: Adding Actor Sequence test content for a crash. #jira UE-29618 Change 3243117 on 2016/12/22 by Jeff.Fisher UE-34004 GitHub 2659 : Implement support for OpenVR controller roles. -Rather than assigning unreal hands to controllers in the order the controllers are connected assign unreal hands to match the ones the API is using. -We now defer setting up controllers that are disconnected. This lets connected controllers, that may have hand preference from steam, occupy their desired hands first. If a controller is connected later and does not have a role it is assigned to an unoccupied hand or to the right hand. -This can still end up ignoring role in the following circumstance (and I can get it to do this): get one controller to prefer'right' and the other to have no preference. Power off the 'right' prefering controller. Start the game with only the no-preference controller on. The game will put that controller in the right slot, because the api gives it no other hints. Then power on the controller that preferred 'right'. That controller will now be assigned left, because right is occupied. I don't see a way around that without the ability to switch which hand a controller is associated with at runtime. -This does not yet handle starting with 2 controllers, disconnecting one, then connecting a third controller well. That did not work before either. A new Jira was created for that. #2659 #jira UE-34004 #review-3231154 Change 3243093 on 2016/12/22 by mason.seay Some tweaks to vehicle levels #jira UE-29618 Change 3243084 on 2016/12/22 by andrew.porter QAGame: Cleaned up Sequencer_OverrideBindings #jira UE-29618 Change 3243009 on 2016/12/22 by andrew.porter QAGame: Renaming actor in Sequencer_OverrideBindings. #jira UE-29618 Change 3243003 on 2016/12/22 by andrew.porter QAGame: Removing override bindings from level sequence #jira UE-29618 Change 3242996 on 2016/12/22 by andrew.porter QAGame: Slight tweak to QA-Sequencer. #jira UE-29618 Change 3242982 on 2016/12/22 by Marc.Audy Properly reenable stats sounds in both game and level editor #jira UE-40015 Change 3242959 on 2016/12/22 by mason.seay Test map for vehicles and moving meshes #jira UE-29618 Change 3242934 on 2016/12/22 by andrew.porter QAGame: Adding test content to QA-Sequencer for Override Bindings #jira UE-29618 Change 3242870 on 2016/12/22 by Mason.Seay QAGame footprint reduction: Clearing out content (were in for old bug reports) #jira UE-29618 Change 3242799 on 2016/12/22 by tim.gautier QAGame - Adding the following assets for Sequencer Event Track testing: -TM-Sequencer_EventTrack + BuildData -QA_LightStruct -Sequencer_EventTrack #jira UE-29618 Change 3242792 on 2016/12/22 by samuel.proctor Correcting Container test asset for proper output #jira UE-29618 Change 3242727 on 2016/12/22 by Dmitriy.Dyomin Fixed: LoadLevelIntstance returns a reference that can't be used to send an interface message #jira UE-40005 Change 3242666 on 2016/12/22 by Dmitriy.Dyomin Fixed: Packaging Android app for Mali Graphics Debugger v4.3.0 fails #jira UE-39534 Change 3242373 on 2016/12/21 by Ori.Cohen Allow vehicles to override inertia tensor after any mass properties have changed. #JIRA UE-39566 Change 3242323 on 2016/12/21 by Josh.Adams - Somehow my last change just got completely lost in the edigrate shuffle. Or something. I have no idea! Rdoing it #jira UE-39966 Change 3242286 on 2016/12/21 by mason.seay Vehicle Assets and Maps #jira UE-29618 Change 3242284 on 2016/12/21 by Marc.Audy Fix "stat sounds" not working after PIE completes and a new one is begun #jira UE-32743 #jira UE-39511 Change 3242281 on 2016/12/21 by Ori.Cohen Fix multi select being very slow in phat #JIRA UE-39559 Change 3242229 on 2016/12/21 by Ben.Marsh Fixup workspace for building PhysX. Change 3242227 on 2016/12/21 by Marc.Audy Properly update listener position for stat sounds #jira UE-38850 Change 3242218 on 2016/12/21 by Ori.Cohen Fix physx html5 compilation APEX issue. #JIRA UE-39566 Change 3242174 on 2016/12/21 by Ori.Cohen Fix incorrect moment of inertia for convex elements with translation. #JIRA UE-39566 Change 3242145 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix for vehicle stability #JIRA UE-38710 Change 3242139 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix: Fix crash when setting collision trace in construction script. #JIRA UE-39341 Change 3242088 on 2016/12/21 by Alexis.Matte Fix the drag and drop material on level instance to drop on the correct material slot Fix the serialization of the staticmesh property FMeshSectionInfoMap #jira UE-39952 Change 3242081 on 2016/12/21 by Andrew.Rodham Sequencer: Make details view focused when resetting inner struct contents to ensure that focus path is valid. #jira UE-39851 Change 3242079 on 2016/12/21 by Andrew.Rodham Sequencer: Evaluation templates are now only fully rebuilt in PIE, and will not re-cycle track identifiers - This addresses issues with newly compiled tracks recycling the persistent data of old stale tracks. - This commit also ensures we don't fully rebuild templates in the editor when in Sequencer #jira UE-39882 Change 3242078 on 2016/12/21 by Andrew.Rodham Sequencer: Fixed crash when deactivating a section in sequencer #jira UE-39880 Change 3242026 on 2016/12/21 by Josh.Adams - Fixed compile errors in tools after NVNRHI move #jira UE-39966 Change 3241994 on 2016/12/21 by andrew.porter QAGame: Disabled auto play on Sequencer_AnimNotify. #jira UE-29618 Change 3241989 on 2016/12/21 by Mitchell.Wilson Resolving CIS warnings in Content examples. Fixed up redirectors. Moved a texture from developer folder into project and relinked in POM_Debug material. Fixed up BP Commentary Box which was failing to compile. Updated spawn rate on Pulse Ring so it works as intended. #jira UE-39984 Change 3241986 on 2016/12/21 by mason.seay Vehicle Landscape Test map (mainly for crash investigation) #jira UE-29618 Change 3241914 on 2016/12/21 by Josh.Adams - Removed invalid and confusing .ini settings #jira UE-39982 Change 3241902 on 2016/12/21 by Josh.Adams - Moved NVNRHI stuff out of RHI.Build.cs #jira UE-39966 Change 3241889 on 2016/12/21 by andrew.porter QAGame: Added new level sequence to QA-Sequencer level #jira UE-29618 Change 3241884 on 2016/12/21 by Alexis.Matte Make sure the color grading cursor follow the mouse by using the exponent value when painting the cursor. #jira UE-39834 Change 3241869 on 2016/12/21 by andrew.porter QAGame: Adding test content for Sequencer Animation Notifies #jira UE-29618 Change 3241809 on 2016/12/21 by Chris.Wood Fix non-unity build errors in UnrealWatchdog. [UE-39940] - GitHub 3054 : Added EngineBuildSettings.h to UnrealWatchdog.cpp PR #3054: Added EngineBuildSettings.h to UnrealWatchdog.cpp (Contributed by ryanjon2040) #jira UE-39940 Change 3241806 on 2016/12/21 by Marc.Audy Don't unload and then reload streaming levels that are marked to be hidden. #jira UE-39883 Change 3241802 on 2016/12/21 by Marc.Audy Add new object flag RF_NeedInitialization to indicate that ~FObjectInitalizer and PostInitProperties have not been executed for the object Do not allow Modify calls on Objects that have not been initialized #jira UE-39731 Change 3241790 on 2016/12/21 by Marc.Audy Don't rerun construction scripts when an actor has seamless traveled from another level #jira UE-39699 Change 3241789 on 2016/12/21 by Marc.Audy Check Owner has a valid world before trying to access Scene (4.14.2) #jira UE-39560 Change 3241786 on 2016/12/21 by Marc.Audy Fixed crash when seamless travelling in PIE from levels other than the current editor level with a streaming sublevel shared with the current editor level #jira UE-39407 Change 3241781 on 2016/12/21 by Mitchell.Wilson Fixed up redirectors for SkeletalMesh and Personal Walkthroughs. #jira UE-30953 Change 3241747 on 2016/12/21 by mason.seay Tag Query test map and assets #jira UE-29618 Change 3240938 on 2016/12/20 by Ben.Marsh Remaking QFE fixes from 4.14 branch. Change 3240740 on 2016/12/20 by Ben.Marsh Update branch name for analytics. [CL 3272229 by Matthew Griffin in Main branch]
2017-01-25 16:23:41 -05:00
switch (DepthStencilTarget->Target)
{
case GL_TEXTURE_2D:
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 3443236) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3385304 on 2017/04/07 by Ryan.Vance #jira UEVR-694 GL_TEXTURE_EXTERNAL_OES support hlslcc changes to support the TextureExternal keyword RHI changes to support RHICreateTextureExternal2D Fall back to a standard 2d texture on platforms without extension support Did not implement a shader cache solution as the resource is expected to be shared across processes, so recreating it from the shader cache would be a bad thing Change 3391376 on 2017/04/12 by Ben.Marsh Build: Add additional UE4Game targets for Dev-VR, to catch build failures in plugins that are disabled for games. Change 3392546 on 2017/04/13 by Jeff.Fisher Duplicating in Dev-VR (from Release-4.16) UEVR-734 PSVR sdk 4.5 tracking improvements UEVR-738 PSVR prediction time dynamic adjustment -New tracker profile and camera config to activate ps4 tracking improvements. -Calculating prediction time based on flip timings rather than assuming it will be a particular value. This makes the prediction time nearly perfect as long as we meet framerate and lets it adapt to the timing of when the prediction is made in the frame. -Changed reprojection fliparg to be the frame number, rather than a separate incrementor, so its more useful for debugging. #jira UEVR-734 #review-3391147 Change 3394508 on 2017/04/14 by Jeff.Fisher merge fix ShaderCacheTypes.h Change 3399628 on 2017/04/19 by Jeff.Fisher UEVR-582 PSVR not applying WorldToMeters for position accessor -Changed to apply WorldToMeters scale when we get the position data from PS4Tracker, so that the positions stored in MorpheusHMD are always in world space. #jira UEVR-582 #review-3398683 Change 3404200 on 2017/04/21 by Jeff.Fisher UEVR-239 GearVR headset worn/notworn notifications -Implemented the IHeadMountedDisplay accessor for this, and also hooked up the delegates that fire on PS4. -Implemented the IHeadMountedDisplay accessor for PS4. #jira UEVR-239 #review-3404174 @keli.hloedversson Change 3412688 on 2017/04/27 by Jeff.Fisher UEVR-766 PSVR test level improvements -VR/TM-MotionControllers --Hooked up QA_MoCoAll to the cycle of playercontrllers. --Added instructions for motion tracked device management controls, if the platform supports. -QA_MoCoAll --Switched tracking state colors to tracking spheres, becuase the arrows need to be not rendered in game for some configuration. --Added duplicate motion controller component to pad and another duplicate with disabled low latency tracking. -QA_MoCoDualShock --removed gun controller from this playercontroller, its redundant to the one in QA_MoCoAll -QA_MoCoComponents --world scale from controllers mode added ctrl-w, this is a good way to torture test world scale. #jira UEVR-766 Change 3413801 on 2017/04/28 by Keli.Hlodversson #jira UE-40220 StereoLayer splash layers are hardcoded to 8 by 4.5 meters (16:9 aspect ratio) on OculusRift Change 3429305 on 2017/05/08 by Keli.Hlodversson SteamVR Layers don't honor the (absence of) LAYER_FLAG_QUAD_PRESERVE_TEX_RATIO flag Avoid potential divide by zero in the DefaultStereoLayers implementation of the same flag. #jira UE-42855 Change 3429362 on 2017/05/08 by Ryan.Vance Integrating 3416918 for #jira UE-44404 Change 3429426 on 2017/05/08 by Keli.Hlodversson Set up a Test case for Layers in QA Game so that we can determine differences between platforms #jira UEVR-741 Change 3430829 on 2017/05/09 by Keli.Hlodversson Implement World-locked layer position type on SteamVR #jira UE-42940 Also fixes LAYER_FLAG_TEX_CONTINUOUS_UPDATE flag on SteamVR Change 3432895 on 2017/05/10 by Nick.Whiting Skipping recording of analytics if there is no device connected on startup, to prevent false reports when Oculus / SteamVR runtimes are installed on the user's machine #jira UE-37166 Change 3435917 on 2017/05/11 by Jeff.Fisher UE-44941 LoadErrors produced in log when opening TM-MotionControllers -LoadErrors:Error: Error /Game/Blueprints/QA_MoCoAll : Can't find file for asset. /Game/NewTextureRenderTarget2D -Removed the component that was referencing that. It was temporary test content, not meant to be submitted. #jira UE-44941 Change 3435938 on 2017/05/11 by Ryan.Vance Incorrect VertexDeclarationRHI for the hidden area mask pso. Change 3437197 on 2017/05/12 by Keli.Hlodversson Remove a irrelevant comment. Change 3437221 on 2017/05/12 by Keli.Hlodversson ... and now actually include the change that was supposed to go in CL#3437197 Remove a irrelevant comment. Change 3439359 on 2017/05/15 by Keli.Hlodversson Implement NoAlpha flag in DefauiltStereoLayers. #jira UEVR-777 Change 3439422 on 2017/05/15 by Keli.Hlodversson Fixes for CL#3439359 after review: Implement NoAlpha flag in DefauiltStereoLayers. #jira UEVR-777 Change 3439599 on 2017/05/15 by Jeff.Fisher UE-44962 Motion controller input not registered in TM-MotionControllers package -Pre-exising blueprint assumed only one textrenderactor in the level, but I added two more. It was working or not depending on the order in which they were constructed. -Now searching up the correct actor by Tag. #jira UE-44962 Change 3441176 on 2017/05/16 by Mike.Beach Can now explicitly hide components from a specific player through the player controller. Change 3441242 on 2017/05/16 by Mike.Beach Making it so any component can invoke a preview viewport in the editor (want it to be extended by scene capture components). Change 3441571 on 2017/05/16 by Mike.Beach Fixing CIS shadowed variable name issue (fallout from CL 3441176). Change 3443223 on 2017/05/17 by Mike.Beach Fixing root of shadowed variable name warning (now only in UT, fallout from 3441176) - renaming new base class variable so it doesn't conflict with third parties either. #jira UE-45120 [CL 3443810 by Mike Beach in Main branch]
2017-05-17 12:45:38 -04:00
case GL_TEXTURE_EXTERNAL_OES:
case GL_TEXTURE_2D_MULTISAMPLE:
Copying //UE4/Release-Staging-4.15 to //UE4/Dev-Main (Source: //UE4/Release-4.15 @ 3267632) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3267632 on 2017/01/23 by Jurre.deBaare Marker syncs not working correctly in Blend Spaces #fix Ensure that SampleIndexWithMarkers is serialized #JIRA UE-40975 Change 3266915 on 2017/01/20 by Arciel.Rekman Fix Persona crash on Linux (UE-38790). - Static template variable got instantiated into multiple DSOs; probably exacerbated by --as-needed since this does not happen without it. #jira UE-38790 Change 3266785 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Make usage of CachedUsers thread safe. Duplicates CL 3245390 #jira UE-40649 Change 3266762 on 2017/01/20 by Rolando.Caloca UE4.15 - Fix for reallocating scene color #jira UE-40633 Change 3266642 on 2017/01/20 by Lina.Halper Downgraded Warning to Info #jira: UE-40643 Change 3266532 on 2017/01/20 by Jeff.Campeau Fix multiplatform Windows includes defeating the safety check in MinWindows.h #jira UE-40778 #rn Fixed a compile warning on Xbox One when XboxOneMinApi.h was included before MinWindows.h. Change 3266523 on 2017/01/20 by Marc.Audy Fix case where child actor could avoid getting begin play call #jira UE-40960 Change 3266474 on 2017/01/20 by Peter.Sauerbrei fix for using an API not yet available in iOS 8 #jira UE-40698 Change 3266339 on 2017/01/20 by Frank.Fella Sequencer - Fix UI issues with multi-track section rows. + Don't show an empty sub-track when there are no sections. + Expand parent tracks by default. #Jira UE-40487 Change 3266283 on 2017/01/20 by Jeff.Fisher UE-40683 GearVR projects rendering black -Fix from Remi Palandri #jira UE-40683 #review-3265824 @nick.whiting @ryan.vance Change 3266264 on 2017/01/20 by Lina.Halper Downgraded warning and changed log message #jira: UE-40643 Change 3266239 on 2017/01/20 by Peter.Sauerbrei fix for virtual joystick not showing up on some devices #jira UE-40472 Change 3266084 on 2017/01/20 by Mitchell.Wilson Resaving level to have correct starting camera position. Saved in wrong position after fixing a bug. #jira UE-40887 Change 3266077 on 2017/01/20 by Matt.Kuhlenschmidt Fixed "Wait for Movies to Complete" flag being reversed #jira UE-40943 Change 3266076 on 2017/01/20 by Mitchell.Wilson Updating occulsion bounds method on P_spark_burst_2 so it is not occluded when spawned inside of the coin mesh in BP_Overview example. Updating some post process examples due to changes made with Post Process settings. Film and Scene Color are temporary fixes and are intended to be fully updated in 4.16 #jira UE-40830 UE-40887 Change 3266034 on 2017/01/20 by Benn.Gallagher Fixed crash when reimporting APEX destructibles from apb/x files caused by not allowing the renderer to flush destroy resource commands before emptying an array. #jira UE-40911 Change 3266027 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Fix CreateSession and FindSession each permanently failing after first failure. Duplicates CL 3262175 #jira UE-39110 Change 3265906 on 2017/01/20 by Marcus.Wassmer Fix GPU particle AFR flickering and optimize injection transfers. Duplicate CL's 3260302, 3261252, 3265662, 3265678 #jira UE-40915 Change 3265873 on 2017/01/20 by Mark.Satterthwaite Duplicate CL #3262535: Make sure to set rasterizer state when rendering with a material in FSlateRHIRenderingPolicy::DrawElements #jira UE-40842 Change 3265857 on 2017/01/20 by Jamie.Dale Fixed font pathing issue that could happen in an out-of-source packaged build #jira UE-40855 Change 3265675 on 2017/01/20 by Matt.Kuhlenschmidt Move Dirt Mask Intensity to the correct post process category #jira UE-40851 Change 3265674 on 2017/01/20 by Rolando.Caloca UE4.15 - Revert #jira UE-40633 Change 3265647 on 2017/01/20 by Mitchell.Wilson Updating spawn location of the player pawn after unpossessing character in example 1.10. #jira UE-40870 Change 3265612 on 2017/01/20 by Alexis.Matte Prevent name clash warning when doing automation test #jira UE-40788 Change 3265553 on 2017/01/20 by Matthew.Griffin Fixed Shadow variable warning Change 3265366 on 2017/01/20 by Dmitriy.Dyomin Fixed: Vulkan crashes on Adreno Galaxy S7 #jira UE-40840 Change 3265294 on 2017/01/19 by Dmitriy.Dyomin Fixed typo which was causing assert on mobile #jira UE-40633 Change 3265111 on 2017/01/19 by Rolando.Caloca UE4.15 - Fix for scene color crash #jira UE-40633 Change 3264789 on 2017/01/19 by Josh.Adams - Redoing a fix from Dev-Plat for UI_BUILD_SHIPPING_EDITOR #jira UE-40798 Change 3264780 on 2017/01/19 by Rolando.Caloca UE4.15 - Add Morph compute GPU stat #jira UE-40891 Change 3264486 on 2017/01/19 by Mark.Satterthwaite Fix the crash on startup on Intel GPUs - this is due to Intel Metal forcing SM4 to avoid some drivers bugs in SM5 but I got the condition for initialisation in FMinimalDummyForwardLightingResources wrong so it's attempting to create a RWBuffer for SM4 which won't work. #jira UE-40863 Change 3264427 on 2017/01/19 by Rolando.Caloca UE4.15 - Track down crash #jira UE-40633 Change 3264393 on 2017/01/19 by Aaron.McLeran #jira UE-40850 Re-fixing UE-39650 again in 4.15. I hope this bug doesn't regress yet again! Change 3264364 on 2017/01/19 by Daniel.Wright In forward shading SceneCaptureSource modes Normal and BaseColor are replaced with SceneColorHDR as the GBuffer is not available. This is a silent failure for now as there's no good content error reporting mechanism for scene captures. #jira UE-39658 Change 3264284 on 2017/01/19 by Mark.Satterthwaite Duplicate CL #3264251: Modify some asserts in MetalRHI - technically using a store-action of ENoAction on Stencil buffers should make it invalid to restart a render-pass but on Mac it will work because ENoAction won't invalidate anything written. In future we need to use deferred store-actions in Metal so that we can "restart" passes while enforcing correct Load/Store actions. #jira UE-40803 Change 3264282 on 2017/01/19 by Benn.Gallagher CIS fix, bad expression that failed to compile Mac #jira UE-40716 Change 3264257 on 2017/01/19 by Mike.Beach Revising fix in UBlueprint::BeginCacheForCookedPlatformData(), saving off nativization data if the -nativizeAssets param is present (not just if it was enabled in packaging settings). #jira UE-40620 Change 3264242 on 2017/01/19 by Daniel.Wright [Copy] Sharing IndirectLightingCacheTextureSampler samplers #jira UE-40727 Change 3264191 on 2017/01/19 by Ori.Cohen Fix heightfield not working with traces underneath. #JIRA UE-39819 Change 3264139 on 2017/01/19 by Benn.Gallagher Removed collision between clothing in external skeletal mesh components, as clothing simulations could already be in flight and editing collisions while the simulation is running is not supported by APEX #jira UE-40716 Change 3264110 on 2017/01/19 by Max.Preussner MfMedia: Disabled plug-in on Windows 10, because it is currently broken #jira UE-406344 Change 3264108 on 2017/01/19 by Max.Preussner MfMedia: Fixed compile errors on Windows 10 #jira UE-40644 Change 3264099 on 2017/01/19 by Jamie.Dale Adding deprecation warning for 4.14 style PO export #jira UE-40592 Change 3264089 on 2017/01/19 by Matthew.Griffin Reworked DDC commandlet to make sure it actually calls BeginCacheForCookedPlatformData on assets Skip doing this for Engine content if -ProjectOnly is set as that takes a long time and isn't necessary for the way we use it #jira UE-39968 Change 3264065 on 2017/01/19 by James.Golding Fix ModifyCurve node not calling init/update in SourcePose #jira UE-40852 Change 3263729 on 2017/01/19 by Alexis.Matte Fix a bad condition when filling the material sorting array #jira UE-40814 Change 3263704 on 2017/01/19 by Jack.Porter Fix compile error in AndroidESDeferredOpenGL.cpp when " ES Deferred Shading Renderer" is enabled. #jira UE-40659 Change 3263627 on 2017/01/19 by Jack.Porter Fixed black textures when Vulkan is packaged for ETC1 #jira UE-40658 Change 3263554 on 2017/01/19 by Jack.Porter Fixes to HISMC LOD to use new screen size calculation. Solves issue where HISMC was always rendered at lowest LOD. #jira UE-38930 Change 3263535 on 2017/01/19 by Matthew.Griffin Removed unnecessary directories to always cook Problem was actually down to string asset references not being resolved in file set generation Change 3263534 on 2017/01/19 by Matthew.Griffin Added -SkipPublish parameter to BuildLauncherSample command so that we don't chunk and post preflights Change 3263267 on 2017/01/18 by Dan.Oconnor Fix for editing of TMap/TSet variables in structure editor, async tasks, and when using UK2Node_CommutativeAssociativeBinaryOperator. #jira UE-40428 Change 3263219 on 2017/01/18 by Dan.Oconnor Fix copy paste error found by UDN user Craig.Wright that could result in fatal bytecode execution #jira UE-19425 Change 3262980 on 2017/01/18 by Maciej.Mroz #jira UE-40394, UE-40395, UE-40426, UE-40484, UE-40770 Integrated cl 3262851, 3261613, 3260908 from Dev-Blueprint Change 3262908 on 2017/01/18 by Ori.Cohen When refreshing physics assets, don't do so on components that have no bodies. #JIRA UE-40764 Change 3262709 on 2017/01/18 by Matt.Kuhlenschmidt Fix a crash if a background blur widget ends up being negative or zero sized #jira UE-40820 Change 3262606 on 2017/01/18 by Marc.Audy Don't bother the user with force feedback based on where the unpossessed pawn is standing in the world while in simulate mode #jira UE-40785 Change 3262416 on 2017/01/18 by Marc.Audy Reenable audio threading #jira UE-00000 Change 3262125 on 2017/01/18 by Chris.Wood Fixed unnecessary truncate in SMenuAnchor::Tick that caused menu placement to wobble [UE-40293] - Dropdown selection box jitters when mouse is moved over top of it on Mac #jira UE-40293 Change 3262103 on 2017/01/18 by Jamie.Dale Merging some cooker fixes CL# 3262089 - Fixing RedirectCollector issues with projects outside the UE4 directory CL# 3262091 - Guarding against potentially invalid call to FString::Mid CL# 3262094 - Cook on the fly builds now resolve string asset references #jira UE-40790 Change 3262082 on 2017/01/18 by Chris.Bunner Accumulate used particle materials from final mesh material module, not first. #jira UE-39953 Change 3261996 on 2017/01/18 by Matthew.Griffin Allow Samples to be built in pre-flights if you are specifying an engine version Change 3261995 on 2017/01/18 by Matthew.Griffin Resolve string asset references after loading packages to ensure that we find all required files Change 3261934 on 2017/01/18 by Allan.Bentham Bump shader version to force changes in 3260307 to occur. #jira UE-39701 Change 3261842 on 2017/01/18 by Graeme.Thornton Manual copy of CL 3253580 from Dev-Core Added some validation of the class index in exportmap entries #jira UE-37873 Change 3261017 on 2017/01/17 by Mitchell.Wilson Resaving all levels to resolve short form string asset reference warnings. #jira UE-40732 Change 3260918 on 2017/01/17 by Andrew.Rodham Sequencer: Request unloaded levels to be loaded when being made visible through sequencer #jira UE-40082 Change 3260909 on 2017/01/17 by Ben.Marsh Fix error running "Clean" in installed build. #jira UE-40751 Change 3260757 on 2017/01/17 by Jeff.Fisher UE-39654 Crash when launching Google VR project -Via SwitchGameWindowToUseGameViewport we get an early ResizeViewport which does an early Draw. This calls GetStereoProjectionMatrix before the game has ticked and fetched the device info we use to build that matrix. -In this change we make the call to setup that information in the GoogleVRHMD constructor, to ensure it is done before anything tries to use it. -I also added some asserts. #jira UE-39654 #review-3260644 Change 3260637 on 2017/01/17 by Alexis.Matte Fix crash when importing skeletal mesh containing a texture or a material using the same name. #jira UE-40538 Change 3260630 on 2017/01/17 by Marc.Audy When installing a feature pack maintain the include of the template so that any properties inside it are not lost by replacing it with the project's PCH include Update all C++ feature packs to include the original project .h in the files that are copied in to the new project #jira UE-40730 Change 3260600 on 2017/01/17 by matt.barnes Test content for sequencer event tracks #jira UE-29618 Change 3260593 on 2017/01/17 by Mieszko.Zielinski Made FSupportedAreaData export as part of engine API #UE4 #jira UE-40739 Change 3260538 on 2017/01/17 by Marc.Audy Always display axes in debug info, but show -- for value when we don't yet know the ranges #jira UE-40700 Change 3260422 on 2017/01/17 by Marc.Audy Expose level streaming incremental unregister component cvars in the engine streaming section of the project settings #jira UE-10109 Change 3260392 on 2017/01/17 by Ben.Woodhouse Duplicated from CL 3260107: Fix FMonitoredProcess to prevent infinite loop in -nothreading mode #jira UE-40717 Change 3260358 on 2017/01/17 by Chris.Bunner Only validate tonemapper LUT input if actually hooked up. #jira UE-40467 Change 3260327 on 2017/01/17 by Frank.Fella PlatformMediaSource - Fix Validate to check all specified media sources, and change GetURL to get the url for the current platform when running uncooked. #jira UE-40709 Change 3260307 on 2017/01/17 by Allan.Bentham Restore metal compiler's shader source serialization code when the shader is to be compiled at runtime. #jira UE-39701 Change 3260276 on 2017/01/17 by Alex.Delesky #jira UE-40276 - Fixing an issue where a Standalone game launched from the editor cannot toggle fullscreen mode. Change 3260274 on 2017/01/17 by Chris.Wood Added check for null World ptr in AActor::PostEditChangeProperty to fix crash when pasting temporary Actors [UE-40492] - Crash after ejecting from PIE session and selecting a component in the details panel #jira UE-40492 Change 3260230 on 2017/01/17 by Ben.Woodhouse Duplicated from dev-rendering@3232283 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 3260096 on 2017/01/17 by Thomas.Sarkanen Fixed crash when rendering out a level sequence with layered animations When a level contained sequences with layered animations that *werent* taking part in the render (i.e. they were not part of the current master sequence) then their instances were initialized but not ticked. When their components then got a call to evaluate their bone transforms, the cached blends were in an uninitialized state. #jira UE-40654 - Render Movie using separate process crashes capture process Change 3259875 on 2017/01/17 by Dmitriy.Dyomin Fixed: SunTemple is washed out in one color on some Android devices #jira UE-40689 Change 3259011 on 2017/01/16 by Max.Chen Matinee to Level Sequence: Make RegisterTrackConverters pure virtual #jira UE-37328 Change 3258992 on 2017/01/16 by Rolando.Caloca UE4.15 - Integrate fix for outlines (3258807) #jira UE-40690 Change 3258949 on 2017/01/16 by mason.seay Disabled TranslatedMass test #jira UE-29618 Change 3258860 on 2017/01/16 by Max.Preussner Media: Prevent loading of media plug-ins in console apps, such as game servers (OR-34819) #jira OR-34819 Change 3258846 on 2017/01/16 by Max.Preussner MfMedia: Fixed incorrect tracks being played in multi-track media sources (UE-39703) #jira UE-39703 Change 3258813 on 2017/01/16 by Benn.Gallagher Added error on import for APEX clothing files that either have no submeshes or have no submeshes with simulated vertices. #jira UE-40614 Change 3258771 on 2017/01/16 by James.Golding Skip fatal warning in UBodySetup::Serialize if duplicating (e.g. spawning component via SCS with a BodySetup in its template) #jira UE-40418 Change 3258747 on 2017/01/16 by Max.Chen Sequencer: AddUnique SequencerActorTag to prevent multiple tags being added when spawning/despawning. #jira UE-40665 Change 3258630 on 2017/01/16 by Jurre.deBaare CIS IfDef issue fix #JIRA UE-1234 Change 3258541 on 2017/01/16 by Phillip.Kavan [UE-40131] Revised fix that will work for "inclusive" BP nativization with data-only BPs. change summary: - revised code in UBlueprint::BeginCacheForCookedPlatformData() to also support the "inclusive" nativization method #jira UE-40131 Change 3258532 on 2017/01/16 by Max.Chen Sequencer: Fix max row index off by one error . This was always incorrect, but it was masked by the fact that FixRowIndices() was called on the track when the UI gets built. That function was removed from the node layer in CL #3252753 and therefore exposed this bug. #jira UE-40642 Change 3258505 on 2017/01/16 by Marc.Audy Improve messaging when installing vehicle and vehicle adv C++ feature packs #jira UE-40647 Change 3258478 on 2017/01/16 by Matt.Kuhlenschmidt PR #3131: UE-40567: Added nullcheck to FSplinePointDetails (Contributed by projectgheist) #jira UE-40567 Change 3258457 on 2017/01/16 by Jurre.deBaare SpeedTree Billboards rendering with Incorrect Material #fix Ensure that we add a section info entry for the billboard models/lods during SpeedTree importing #jira UE-39677 Change 3258442 on 2017/01/16 by Alexis.Matte Skeletalmesh import, make sure we increment the lod index when animation is not imported #jira UE-40640 Change 3258431 on 2017/01/16 by Jurre.deBaare Back out changelist 3258392 #fix issue was already resolved #jira UE-1234 Change 3258392 on 2017/01/16 by Jurre.deBaare Fix for non-unity CIS #JIRA UE-1234 Change 3258358 on 2017/01/16 by Matthew.Griffin Prevent warning from being shown when XMPP module is not built #jira UE-40616 (I guess LoadModule could be changed to LoadModuleChecked now if they do exist) Change 3258144 on 2017/01/15 by Marc.Audy Fix non-unity CIS errors #jira UE-00000 Change 3258141 on 2017/01/15 by zachary.wilson Adding testing content for Distance Field Indirect Shadows #jira UE-29618 Change 3258049 on 2017/01/14 by Nick.Shin UFE sent incorrect header data on missing file also, it seems that UFE was written to expect clients to close the connection -- (this should be closed manually -- which will flush the data and then close out the socket -- but, since this is a developer tool... leaving this as-is) first, 404 was not sending the required double newline after headers second, since connection are not closed manually (server side) send a dummy payload with content-length data #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3257984 on 2017/01/14 by Aaron.McLeran Attempting another fix for static analysis warning in CIS #jira UE-40645 Change 3257904 on 2017/01/14 by Aaron.McLeran Resolving static analysis warnings reported by CIS #jira UE-40645 Change 3257883 on 2017/01/14 by Aaron.McLeran Fixing build warning with CL 3257826 #jira UE-40645 Change 3257826 on 2017/01/13 by Aaron.McLeran Integrating fixes from Dev-Framework and Odin to Release-415 #jira UE-40645 Change 3257654 on 2017/01/13 by Marc.Audy Until plugins can drive their own dependencies vehicle and vehicle adv feature packs will not compile automatically and will pop up a message log informing the user of the actions they need to manually take. #jira UE-40466 Change 3257608 on 2017/01/13 by John.Pollard PC: Assertion Fail with UPackageMapClient::AddNetFieldExportGroup() viewing replays #jira OR-34522 Change 3257489 on 2017/01/13 by Mitchell.Wilson Removing preview mesh from multiple materials to resolve CIS warnings. #jira UE-40628 Change 3257485 on 2017/01/13 by Chris.Babcock Don't initialize FMinimalDummyForwardLightingResources for unneeded feature levels (below SM4) #jira UE-40602 #ue4 #android Change 3257444 on 2017/01/13 by Matt.Barnes Updating test assets for UEQATC-2967 #jira UE-29618 Change 3257324 on 2017/01/13 by Arciel.Rekman Linux: Update runtime CEF lib as well (UE-401413). - Followup to CL 3256081. #jira UE-40413 (Merging CL 3257241 from Dev-Platform to Release-4.15) Change 3257140 on 2017/01/13 by Lina.Halper Fix crash with deleting all poses #jira: UE-40537 Change 3257066 on 2017/01/13 by Jurre.deBaare CIS fix for game builds #jira UE-1234 Change 3257056 on 2017/01/13 by Ben.Zeigler #jira UE-40318 Fix crash in streamablemanager where callbacks would get called on a deleted manager. This is being rewritten in 4.16, so do a quick fix for 4.15 to avoid the crash Change 3256839 on 2017/01/13 by Jurre.deBaare Added conversion of HLOD transition screen size to new transition screen area values #fix During serialization patch up the values of transition screen size within the hierarchical lod setups #misc Updated the default value to a screen size to screen area equivalent #JIRA UE-40518 Change 3256761 on 2017/01/13 by Mieszko.Zielinski Fixed EQS debug rendering not clearing previously displayed labels if new request has no labels #UE4 #jira UE-40589 Change 3256177 on 2017/01/12 by Josh.Adams - Moved the MfMedia plugin outside of XboxOne directory, because it's a Windows plugin as well (that happens to also work on XboxOne - all public APIs) #jira UE-40391 Change 3256131 on 2017/01/12 by Jamie.Dale Fixing log spam when trying to load an empty font data #jira UE-40555 Change 3256081 on 2017/01/12 by Arciel.Rekman Fixed CEF compatibility problems on Ubuntu 14.04 (UE-40413). - Also deleted Debug version of it. - Change by yaakuro. #jira UE-40413 (Edigrating CL 3256065 from Dev-Platform to Release-4.15) Change 3256046 on 2017/01/12 by Jon.Nabozny Use PxConvexFlag::eSHIFT_VERTICES when cooking meshes to fix baked in transforms. #jira UE-39212 Change 3255939 on 2017/01/12 by mason.seay Rebuilt lighting #jira UE-29618 Change 3255912 on 2017/01/12 by Olaf.Piesche Replicating fix from 3246828 for #jira UE-39249 Change 3255909 on 2017/01/12 by Rolando.Caloca UE4.15 - Support for choosing discrete AMD GPU #jira UE-40546 Change 3255835 on 2017/01/12 by Martin.Wilson Fix newly added virtual bones not being on screen. #jira UE-40516 Change 3255774 on 2017/01/12 by Mark.Satterthwaite Merging 3251926 for Richard.Wallis: #jira UE-38828 Crash after Enabling Forward Shading on Mac and Creating/Editing Materials. Using TGlobalResource to avoid constant resource allocation. Prev fix (in CL 3239454) caused a crash in D3D11 with zero sized resource views. Change 3255771 on 2017/01/12 by Alexis.Matte Fix a crash when re-importing asset with no material #jira UE-40510 Change 3255746 on 2017/01/12 by Jon.Nabozny Change _DEBUG to PX_DEBUG in ConvexHullLib.cpp #jira UE-0000 Change 3255659 on 2017/01/12 by Jon.Nabozny Enable Shifting Vertices during Convex Hull cooking to prevent precision issues. (Copied CL-3249100 from Dev-Phyics-Upgrade to support new flag) #jira UE-39212 Change 3255617 on 2017/01/12 by Ori.Cohen Fix crash when computing mass for an async object. Using passed in rigid body instead of assuming SyncRigidActor #JIRA UE-40458 Change 3255536 on 2017/01/12 by Jamie.Dale Fixed crash when using an object picker against the 'Object' type This also optimizes some filter code to avoid filtering when it would be pointless (and just slows things down). #jira UE-40408 Change 3255451 on 2017/01/12 by Chris.Wood Fixed read only text color in SCommentBubble [UE-40384] - Reference Viewer comment text is difficult to read Also changed DetermineForegroundColor() method in EditableTextBox classes to fallback on ForegroundColorOverride if it is set and ReadOnlyForegroundColorOverride isn't set. #jira UE-40384 Change 3255448 on 2017/01/12 by Chris.Wood Removed blinking cursor/caret on read only editable text layouts. [UE-40502] - Flashing cursor/caret showing in read-only editable text layouts #jira UE-40502 Change 3255445 on 2017/01/12 by Marc.Audy Create the dynamic level streaming persistent object correctly outered to the World rather than the transient package to avoid GetWorld() crashing #jira UE-00000 Change 3255441 on 2017/01/12 by Jon.Nabozny Regenerate collision for the basic Cube mesh to fix resting issues and invalid verts. #jira UE-40478 Change 3255407 on 2017/01/12 by Yannick.Lange VREditor: - Fix: Assertion Failed crash after pressing F8 in PIE while Foliage Mode was selected - Fix: Assertion Failed crash after pressing F8 in PIE while Paint Mode was selected - Added extra checks for other possible future cases #jira UE-39786 UE-39789 Change 3255393 on 2017/01/12 by Chris.Bunner Duplicating CL 3255244: Removed test variable from MaterialExpressionVectorParameter. #jira UE-40517 Change 3255375 on 2017/01/12 by Steve.Robb CIS fix. #jira UE-39556 Change 3255334 on 2017/01/12 by samuel.proctor Corrected QA Container asset to remove pin warning. #jira UE-29618 Change 3255319 on 2017/01/12 by james.cobbett Fixing motion blur issue with test content for Pose Snapshots. #jira UE-29618 Change 3255247 on 2017/01/12 by Nick.Darnell Slate - Slate's Tab Manager is now a bit smarter about allowing Focus/BringToFront attention grabbing methods. In order to make the UI less jumpy it was restricted to only allowing alerts and bring to front to be triggered if you were on the window, or child window of the active application window. That can negatively impact cases where a user takes an action (clicks a link ro button saying open/goto this tab), that is on another window. To work around this limitation, the Tab Manager will also permit the action if Slate is currently processing user input, implying that the action being taken is in direct response to the user pressing a button and interacting with the UI. #jira UE-40313 Change 3255236 on 2017/01/12 by Phillip.Kavan [UE-40131] Non-native child BPs can now properly override a nativized parent BP's components in a cooked build with exclusive Blueprint class nativiation. - Mirrored from //UE4/Dev-Blueprints (CL# 3254024,3254391) #jira UE-40131 Change 3255216 on 2017/01/12 by Rolando.Caloca UE4.15 - Fix compile issue on Vulkan 1.0.37.0 or newer #jira UE-40506 Change 3255206 on 2017/01/12 by Steve.Robb Use outer walking IsA() implementation in editor to get around reinstancing and hot reload issues. #fyi mike.beach #jira UE-39556 Change 3255195 on 2017/01/12 by mason.seay Adjusted slope to fix platform discrepancy #jira UE-29618 Change 3255086 on 2017/01/12 by Jack.Porter Fix XboxOneShaderCompiler.cpp non-unity compilation #jira None Change 3255085 on 2017/01/12 by Jack.Porter Missing HTML5 changes from CL 3254907 #jira UE-39111 Change 3255031 on 2017/01/12 by Jack.Porter More iOS GoogleVR changes missing from CL 3254907 #jira UE-39111 Change 3254991 on 2017/01/12 by Jack.Porter Missing file from CL 3254907 #jira UE-39111 Change 3254907 on 2017/01/11 by Jack.Porter Android MSAA changes - use r.MobileMSAA cvar, support more than 2x, fix issues where targets other than scene color were created with MSAA #jira UE-39111 #jira UE-35849 #jira UEMOB-35 Change 3254810 on 2017/01/11 by Arciel.Rekman Linux: fix for crash on exit (UE-40488). #jira UE-40488 Change 3254617 on 2017/01/11 by Peter.Sauerbrei remake the fix for missing PhysXVehicle library in binary for IOS and TVOS #jira UE-39349 Change 3254489 on 2017/01/11 by mason.seay Other minor improvements to the map #jira UE-29618 Change 3254477 on 2017/01/11 by mason.seay Map tweaks to prevent the vehicle from getting stuck #jira UE-29618 Change 3254431 on 2017/01/11 by Mitchell.Wilson Rebuilt lighting on all StarterContent levels. #jira UE-40468 Change 3254333 on 2017/01/11 by mason.seay Adjusted lightmap on mesh to remove odd rendering splotches #jira UE-29618 Change 3254131 on 2017/01/11 by Rolando.Caloca UE4.15 - Missing dumped shaders #jira UE-40465 Change 3254126 on 2017/01/11 by Jeff.Fisher UE-40422 Vive Motion Controllers unable to Play Haptic Effect -Removed an unnecessary remapping of controllerindex to deviceid, they are the same now. #jira UE-40422 #review-3254084 Change 3254046 on 2017/01/11 by Mark.Satterthwaite Merging 3233811: 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. #jira UE-39935 Change 3254021 on 2017/01/11 by james.cobbett Test content for Pose Snapshot testing #jira UE-29618 Change 3253993 on 2017/01/11 by Alexis.Matte Fix the morph target import #jira UE-40424 Change 3253948 on 2017/01/11 by mason.seay Fixed Level BP logic that was causing Access None error #jira UE-29618 Change 3253884 on 2017/01/11 by mason.seay Updated mesh colors on map. Disabled motion blur #jira UE-29618 Change 3253862 on 2017/01/11 by mason.seay Disabled Always Show Mobile Input (turned on by accident) #jira UE-29618 Change 3253859 on 2017/01/11 by Mark.Satterthwaite Merging 3252866: Fix Metal shader pipeline hash collisions caused by deferring MTLFunction construction until PrepareToDraw so that we may use Function-Constants to specialise the shader source without generating additional permutations. This is required to generate proper tessellation shaders which are specialised against the index-buffer usage & type (none, uint16, uint32). While we're here amend the hash functions to make better use of the existing hash functions to improve the distribution and hopefully reduce the possibility of collisions in future. #jira UE-40357 Change 3253854 on 2017/01/11 by Mark.Satterthwaite Merging 3252859: Fix the calculation of Metal tessellation struct alignment and size to use largest member size, so that we don't assert in debug or cause out-of-bounds access in development/shipping. #jira UE-40410 Change 3253853 on 2017/01/11 by Mark.Satterthwaite Merging 3237394: 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 3253852 on 2017/01/11 by Mark.Satterthwaite Merging 3236850: Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3253834 on 2017/01/11 by mason.seay Updated mobile input textures to be power of two #jira UE-29618 Change 3253807 on 2017/01/11 by Mark.Satterthwaite Merging 3232641 & 3236788 & 3233854 & 3249742 from Dev-Rendering: 3232641: - 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. 3236788: 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. 3233854: More information about texture type validation errors in Metal. 3249742: 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. #jira UE-40200 Change 3253636 on 2017/01/11 by Chris.Wood Improved tracking of runtime and debugger attachment for analytics purposes. [UE-39780] - Change IsDebugger to WasDebuggerPresent in all crash/AS analytics [UE-39777] - Update MTBF IsDebugger state for every heartbeat [UE-39778] - UnrealWatchdog to send WasDebuggerPresent state for app if set [UE-39779] - UnrealWatchdog to send total run time of process Debugger state was previously read once at startup or once at the time of an event. Debugger is now checked during the heartbeat and doesn't reset flag when detached so we know if a session was ever debugged. Also reporting total run time in UnrealWatchdog. Watchdog still doesn't run when debugging but and will never show popups to a debugger user even when forced on with -forcewatchdog. #jira UE-39780, UE-39777, UE-39778, UE-39779 Change 3253281 on 2017/01/10 by Dan.Oconnor Typo fix caused parameter in local struct definition to shadow the local #jira UE-40027 Change 3253231 on 2017/01/10 by Dan.Oconnor Mirror of 3253220 These pins should infer together #jira UE-40427 Change 3253125 on 2017/01/10 by Uriel.Doyon Brought back CL 3242117 and 3238685, which got lost on the way: - Fix for possiblel check fail when changin mobility of actors. - Fix for possible check fail when processing streaming data. #jira UE-39996 Change 3252936 on 2017/01/10 by Marc.Audy CopyPropertiesForUnrelatedObjects needs to consider path not just name of subobjects when matching them up to copy properties and update references Ensure that a reinstanced child actor component ends up pointing at the correct child actor template #jira UE-40027 Change 3252886 on 2017/01/10 by Lina.Halper Fix for invalid AnimCurves when curve is added while running #jira: UE-39826 Change 3252753 on 2017/01/10 by Frank.Fella Sequencer - Change track rows to use separate track nodes in the display node tree, fixes key edit issues on animation and audio tracks. #jira UE-39836 Change 3252640 on 2017/01/10 by Lukasz.Furman fixed NavCollision losing user settings after any property change copy of 3252628 #jira UE-40388 Change 3252614 on 2017/01/10 by Daniel.Wright UStaticMeshComponent::InvalidateLightingCacheDetailed uses MarkRenderStateDirty. Massively speeds up duplication of HISMC with many instances (10+ minutes -> seconds), as InvalidateLightingCacheDetailed gets called for every instance. #jira UE-40406 Change 3252609 on 2017/01/10 by mason.seay Updated map with text actors for more visual clarity #jira UE-29618 Change 3252477 on 2017/01/10 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios #jira UE-39852 Change 3252451 on 2017/01/10 by Daniel.Wright Garbage collection calls UWorld>SendAllEndOfFrameUpdates() on all loaded worlds first so that deferred recreate render states happen before any UObjects are deleted * Fixes rendering thread crashes in the order of events of 1) SetMaterial 2) GC 3) Rendering command that dereferences the UMaterial #jira UE-30089 Change 3252418 on 2017/01/10 by Ben.Zeigler #jira UE-40390 Fix crash saving blueprint with an inherited DataTable/CurveTable reference. Delta serialization meant that the necessary name wasn't in the name table, so adding it manually now. Change 3252410 on 2017/01/10 by Max.Chen Sequencer : Filter sections on select in range Copy from Dev-Sequencer #jira UE-37854 Change 3252385 on 2017/01/10 by Max.Chen Sequencer: Update auto tangents when setting key time. This fixes a bug where dragging keys with auto tangents doesn't recompute tangents properly. #jira UE-39923 Change 3252360 on 2017/01/10 by Allan.Bentham Remove incorrect assert for iOS. #jira UE-40385 Change 3252297 on 2017/01/10 by mason.seay Test assets for suspending cloth simulation #jira UE-29618 Change 3252125 on 2017/01/10 by Mieszko.Zielinski Fallout fix after removal of BlackboardKeyUtils::CalculateComparisonResult declaration from the AIModule #UE4 #jira UE-40099 Change 3251987 on 2017/01/10 by Allan.Bentham Fix HQ DoF #jira UE-35548 Change 3251856 on 2017/01/10 by Jack.Porter Fixed Get Instances Overlapping Box blueprint function due to issue with FBox constructor. Added MakeBox and MakeBox2D kismet native functions Fixed box overlap test ignoring instance scale #jira UE-34409 Change 3251519 on 2017/01/09 by Daniel.Wright [Copy] Fixed GLandscapeLayerUsageMaterial getting GC'ed #jira UE-40055 Change 3251146 on 2017/01/09 by Lina.Halper Fix on stable track data carrying over to pose asset - decided to clean up track data in anim sequence since we don't really need that data anymore #jira: UE-40351 #code review: Martin.Wilson Change 3251056 on 2017/01/09 by Lina.Halper fixed crash when pose node contains stale data when updating source. #jira: UE-40258 #code review; Thomas.Sarkanen Change 3251035 on 2017/01/09 by Mitchell.Wilson Removed preview mesh in M_GodRay to resolve CIS warning. Relinked textures used in two materials to resolve CIS warnings. #jira UE-40350 Change 3250959 on 2017/01/09 by Mitchell.Wilson Updating master sequence playback end time so the final audio track can be heard. Updating multiple shots to resolve issues with audio not playing back properly. #jira UE-40321 UE-40335 Change 3250896 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed level visibility not working in PIE #jira UE-40082 Change 3250895 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed evaluation of overlapping audio and skeletal aninmation sections - Audio and skeletal animation sections now continue to support legacy evaluation order. Overlapping sections of the same priority on the same row will be filtered out such that only the section with the latest start time will be evaluated. #jira UE-40320 Change 3250830 on 2017/01/09 by Ben.Woodhouse Duplicated from //ue4/Release-4.14 CL 3238182 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. #jira UE-38818 Change 3250790 on 2017/01/09 by Lauren.Ridge Fixing backspace on VR Editor numberpad menu. #jira UE-39770 Change 3250681 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@3249296: 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 3250680 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@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 #jira UE-39949 Change 3250609 on 2017/01/09 by Steve.Robb Maximum number of stats-using threads increased to 512. #jira UE-38153 Change 3250604 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed incorrect seed being used when generating new animation type IDs for object properties #jira UE-40327 Change 3250589 on 2017/01/09 by Matthew.Griffin Changed publish symbols node to use runtime dependencies instead of manually including the whole PhysX folder Avoids unused configs and VS2013 files #jira UE-39171 Change 3250578 on 2017/01/09 by Matthew.Griffin Removed art tools from released build now that they are available separately on the Marketplace Change 3250282 on 2017/01/07 by Mieszko.Zielinski Fixed UNavigationSystem::bNavigationAutoUpdateEnabled getting ignored by recent addition to related condition in UNavigationSystem #UE4 Reported by UT team. Replication of a fix from Dev-Framework that didn't make it to 4.15 stream #jira UE-40324 Change 3250276 on 2017/01/07 by Mieszko.Zielinski Fixed not being able to add elements to UAIPerceptionStimuliSourceComponent.RegisterAsSourceForSenses for instances manually placed on the map #UE4 #jira UE-31711 Change 3250219 on 2017/01/07 by Mieszko.Zielinski Extended comment to AISenseConfig_Sight::PeripheralVisionAngleDegrees to make it clear how it works #UE4 #jira UE-31731 Change 3250147 on 2017/01/07 by Andrew.Rodham Added missing includes #jira UE-40019 Change 3250096 on 2017/01/06 by Nick.Shin refetch on timed out GET/POST requests correction to: UE_MakeHTTPDataRequest #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3249963 on 2017/01/06 by Mieszko.Zielinski removed unused and undefined BlackboardKeyUtils::CalculateComparisonResult #UE4 #jira UE-40099 Change 3249829 on 2017/01/06 by Alexis.Matte turn on the material name clash feature for the content browser importer. #jira UE-40298 Change 3249791 on 2017/01/06 by andrew.porter QAGame: Added level blueprint logic to QA-Sequencer that lets tester override sequence bindings #jira UE-29618 Change 3249755 on 2017/01/06 by Jamie.Dale Some fixes for object reference detection and notification when deleting assets #jira UE-40121 Change 3249727 on 2017/01/06 by James.Golding #jira UE-40242 Change 3249707 on 2017/01/06 by Mitchell.Wilson Removing preview mesh with incorrect path from materials to resolve warnings in CIS. #jira UE-40311 Change 3249543 on 2017/01/06 by Michael.Dupuis #jira UE-40299: validate if UISettings is valid Change 3249506 on 2017/01/06 by Alexis.Matte Make sure we use the correct LodIndex when importing a new LOD in case a previous LOD import fail. #jira UE-40240 Change 3249477 on 2017/01/06 by Ori.Cohen Fix incorrect warning when moving kinematic objects during simulation. #JIRA UE-40290 Change 3249472 on 2017/01/06 by Andrew.Rodham Sequencer: Undo now works as expected when editing the properties of a key #jira UE-40019 Change 3249390 on 2017/01/06 by Mitchell.Wilson Removing preview meshes with improper path from materials to resolve CIS warnings in landscape mountains sample. #jira UE-40300 Change 3249317 on 2017/01/06 by Alexis.Matte Fix a crash when loading skeletalmesh with no section #jira UE-40249 Change 3249294 on 2017/01/06 by Mitchell.Wilson Updated defaultengine.ini for Match 3 to resolve warnings in CIS. ServerDefaultMap and TransitionMap had invalid paths. #jira UE-40295 Change 3249213 on 2017/01/06 by Chris.Bunner Fixed up logic for windowed/fullscreen output display selection when working with HDR. Now selects the most appropriate display if HDR enabled, else current monitor window is on. FullscreenDisplay commandline functions regardless of HDR support. #jira OR-33525, OR-33536, OR-33540, OR-33520 Change 3249135 on 2017/01/06 by Martin.Wilson Fix root motion issues on additive animations. - Fix scale issue on resetting root bone - Fix loss of root motion when animation is additive. #jira UE-40232 Change 3248522 on 2017/01/05 by Alexis.Matte Fix a crash when reimporting morph target. Also fix a crash when initiating ColorVertexBuffer with NULL value #jira UE-40201 Change 3248271 on 2017/01/05 by Andrew.Rodham Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence #jira UE-40234 Change 3248092 on 2017/01/05 by Ben.Marsh UBT: Remove the [Obsolete] attribute from methods in TargetRules; the [ObsoleteOverride] attribute gives a much better (and more concise) warning with specific instructions on how to resolve it. Change 3248091 on 2017/01/05 by Marcus.Wassmer Tick renderthreadtickables in -onethread to avoid leaks. #jira UE-40248 Change 3248063 on 2017/01/05 by Marc.Audy Route FAudioDevice::StopAllSounds to the audio thread if called on the game thread #jira UE-40243 Change 3247995 on 2017/01/05 by Maciej.Mroz NativizationSummary object is always present. manually merged cl#3247985 from Dev-Blueprints #jira UE-40035 Change 3247873 on 2017/01/05 by Chad.Garyet Adding "Generate QA Labels" buildgraph node and automation script. Port of createNewLabel and createMinimumLabel python scripts into UAT #jira UEB-725 Change 3247855 on 2017/01/05 by Nick.Shin refetch on timed out GET/POST requests #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3247737 on 2017/01/05 by Marc.Audy static mesh component instance data now correclty inherits from pritive component instance data instead of skipping it and inheriting directly from scene component instance data #jira UE-40053 Change 3247723 on 2017/01/05 by mason.seay Asset for suspend cloth bug #jira UE-29618 Change 3247708 on 2017/01/05 by Mitchell.Wilson Updating project settings to disable dbuffer decals to resolve rendering issues in Showdown while using -game -vr #jira UE-40195 Change 3247652 on 2017/01/05 by Martin.Wilson Fixes for animation notifies window -Fix notify not being removed from skeleton -Fix crash where editor is not refreshed after notify removal #jira UE-40154 Change 3247638 on 2017/01/05 by mason.seay Test assets for cloth suspension #jira UE-29618 Change 3247630 on 2017/01/05 by Alexis.Matte Prevent crash when the import fail and we have no staticmesh created #jira UE-40024 Change 3247556 on 2017/01/05 by Ben.Marsh Fix non-unity compile error. Change 3247547 on 2017/01/05 by Jurre.deBaare Crash while using the Delete Button in the HLOD Outliner while a Generated Proxy Mesh is opened in the Static Mesh Editor #fix Unify path for both delete cluster options in the outliner UI #jira UE-40066 Change 3247539 on 2017/01/05 by Benn.Gallagher Fixed serialization crash for simplified skeletal meshes leading to corrupted assets that crash on load after skin weight buffer changes. #jira UE-40199 Change 3247515 on 2017/01/05 by Allan.Bentham Fix inverted planar reflections when mobileLDR Fixed incorrect gamma 2 planar reflection rendering when mobileLDR #jira UE-32868 Change 3247502 on 2017/01/05 by Dmitriy.Dyomin Fixed: Single digit frame rate when sculpting landscape foliage. #jira UE-39532 Change 3247232 on 2017/01/04 by Ben.Marsh Remove private include from public header. Prevents compiling samples from installed build of the engine without private headers. #jira UE-40135, UE-40137, UE-40139, UE-40140, UE-40141, UE-40142, UE-40143, UE-40144 Change 3247002 on 2017/01/04 by Chris.Babcock Changed Vulkan hitchy pipeline log message verbosity #jira UE-38354 #ue4 #android #dontbackcopy Change 3246927 on 2017/01/04 by matt.barnes Updating QAGame content to facilitate UEQATC-2969 #jira UE-29618 Change 3246894 on 2017/01/04 by Mike.Beach Mirroring CL 3245322 from Dev-BP Fixed a crash when implementing a native interface in a BP #jira UE-40155, UE-40203 Change 3246830 on 2017/01/04 by Chris.Bunner Allow AllocGBuffer call when in simple-forward so dummy uniform buffer creation can occur. #jira UE-39756 Change 3246816 on 2017/01/04 by Jon.Nabozny Fix Anim Notifies Tab not opening in Animation Editor. #JIRA UE-40134 Change 3246804 on 2017/01/04 by Ori.Cohen Touch engine file to trigger re-link. #JIRA UE-40156 Change 3246709 on 2017/01/04 by mason.seay Updated map #jira UE-29618 Change 3246606 on 2017/01/04 by Ori.Cohen Fix for sweeps taking too long time (OR-32839). - Exhaustive investigation uncovered apparent numerical problems in this code (when compiling with clang 3.9.x with -ffast-math). - Current solution can result in overshoot for certain trace extents, but they are not expected to be a practical problem in Unreal. - NVidia is aware and will investigate a better solution. #tests Compiled Linux server with the changed PhysX and continuously ran bot matches for about a day. #JIRA UE-40156 Change 3246571 on 2017/01/04 by Marc.Audy Look at the body instance's desired collision enabled value rather than the primitive component's current collision enabled value when determining whether physics state should be created #jira UE-39994 Change 3246527 on 2017/01/04 by tim.gautier QAGame: BP_MediaPlayer now displays the name of the MediaPlayer plugin currently in use during playback #jira UE-29618 Change 3246480 on 2017/01/04 by mason.seay Map update #jira UE-29618 Change 3246470 on 2017/01/04 by Ori.Cohen Guard against infinitely thin geometry which fixes some nans. This showed up as issues in various projects #JIRA UE-00000 Change 3246413 on 2017/01/04 by Jon.Nabozny Cube asset did not have Tri Meshes. Reimported to fix the issue. -- Copied from 3233164 -- #jira UE-39657 Change 3246388 on 2017/01/04 by Jon.Nabozny Set 'p.MoveIgnoreFirstBlockingOverlap' to be enabled by default (3158732). This causes collision behavior to remain unchanged unless people opt in to the new behavior. -- Copied from 3239735 (bot health fixed by a different CL) -- #jira UE-39387 Change 3246352 on 2017/01/04 by Jon.Nabozny Fix FPredictProjectilePathParams to use a valid default value for TraceChannel. This requires the use of a new bool bTraceWithChannel which is enabled by default. -- Copied from 3239765 -- #JIRA UE-39726 Change 3246341 on 2017/01/04 by Ori.Cohen Allow vehicles to inherit from PawnMovementComponent and only use the pawn/ai capabilities when a Pawn owner is used. #JIRA UE-39508 Change 3246178 on 2017/01/04 by Andrew.Rodham Sequencer: When playback stops naturally, the play position is set to the boundary that caused playback to stop (the end if playing forwards, the start if playing backwards) - This is to reconcile the movie scene sequence player with previous behaviour #jira UE-40076 Change 3246102 on 2017/01/04 by Benn.Gallagher Fixed single threaded physics dispatcher triggering checks from clothing when running with a CPU with two or fewer cores. #jira UE-39811 Change 3246100 on 2017/01/04 by Benn.Gallagher Fixed ensure triggered when using root motion with sub instances Fixed crash reinstancing an active anim class that had subinstances #jira UE-39582 #jira UE-39579 Change 3246092 on 2017/01/04 by Marc.Audy PR #3082: Improve comment for UInputComponent (Contributed by Soleone) #jira UE-40098 Change 3246084 on 2017/01/04 by Matthew.Griffin Remove bad files Change 3246076 on 2017/01/04 by Matt.Kuhlenschmidt Fixed all non-editable text properties having a double disabled effect. The text box is read only which prevents edting but still allows copying text from it. This feature had regressed and the disabled effect on top of the read only effect made it too difficult to see the text. #jira UE-39652 Change 3246043 on 2017/01/04 by Steve.Robb Use of CastChecked instead of Cast in implementations of IStructSerializerBackend::WriteProperty. This is both more efficient and will hopefully make it easier to diagnose the issue. #jira UE-39872 Change 3246032 on 2017/01/04 by Martin.Wilson Change FindBoneIndex to FindRawBoneIndex (final bone maps are not built until after all adding is done so they will not be found) #jira UE-40105 Change 3246016 on 2017/01/04 by Andrew.Rodham Editor: Insert/Duplicate/Delete menu on array properties now only closes itself on click, rather than all menus - This allows us to edit such properties on context menus #jira UE-39998 Change 3246005 on 2017/01/04 by Thomas.Sarkanen Fixed asset attachment issues in Skeleton Tree Assets were being attached uniquely, so only one asset could be attached to a bone/socket. However the calling code didnt know that the unique attachment function just gave up, so the item just got added to the bottom of the tree. The attachment filter was not set correctly to allow for bone attatchments, so only sockets could be attached to. The attach parent name was not initialized, so assets could not be deleted one at a time. #jira UE-40040 - With multiple Preview assets on one bone, only one appears in Skeleton Tree #jira UE-40041 - Preview assets appear at the bottom of the skeleton tree Change 3246002 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed actor tick prerequisites not getting set up correctly for master sequences #jira UE-39975 Change 3245979 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed scrubbing audio tracks not working propertly #jira UE-40048 Change 3245978 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed dropping a level onto a level visibility section not marking the track as changed, and not correctly creating a transaction #jira UE-39998 Change 3245977 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed crash caused by lingering persistent evaluation data #jira UE-40064 Change 3245971 on 2017/01/04 by Dmitriy.Dyomin Fixed: Using Set World Origin Location will cause the player pawn to stutter #jira UE-40022 Change 3245725 on 2017/01/03 by Matt.Barnes Further improvments on test assets for UEQATC-2963 #jira UE-29618 Change 3245658 on 2017/01/03 by Arciel.Rekman Linux: fix ARM32 build (UE-39913). #jira UE-39913 (Redoing CL 3240982 from Dev-Platform in Release-4.15) Change 3245577 on 2017/01/03 by Mason.Seay More vehicle updates #jira UE-29618 Change 3245556 on 2017/01/03 by Matt.Barnes Updating test content for UEQATC-2963 #jira UEQATC-2963 Change 3245461 on 2017/01/03 by mason.seay Updating Inertia Tensor Scale to improve Vehicle Handling #jira UE-40013 Change 3245442 on 2017/01/03 by Jeff.Fisher UEVR-495 Assert when switching to 2d mode. sceHmdReprojectionStart failing. -There was a race condition between switching output modes on the render thread and sceHmdReprojectionStart on the RHI thread. The flush fixes that. The reprojection would simply have failed that frame previously in shipping which would not matter much as we are switching output modes anyway. #jira UEVR-495 #review-3245374 Change 3245427 on 2017/01/03 by Jeff.Fisher UEVR-456 check if we are using camera before doing camera disconnected dialog on PSVR -If the tracker is active, but we are tracking nothing (ie we have the morpheus hmd tracking plugin, and started up with it, but switched to 2d mode) don't pop up the camera setup warning until we start trying to track something again. -This is useful for apps that have 2d and vr modes. #jira UEVR-456 #review-3245372 Change 3245329 on 2017/01/03 by mason.seay Level and vehicle tweaks #jira UE-29618 Change 3245275 on 2017/01/03 by Chris.Babcock Added EngineVersion to AndroidManfiest.xml metadata #jira UE-40123 #ue4 #android Change 3245235 on 2017/01/03 by Guillaume.Abadie Cherry picks CL 3234813 from Dev-Rendering: Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3245183 on 2017/01/03 by Chris.Babcock Added missing #undef LOCTEXT_NAMESPACE to some files (contributed by projectgheist) #jira UE-40103 #PR #3085 #ue4 #android Change 3245120 on 2017/01/03 by mason.seay Missed some assets #jira UE-29618 Change 3245116 on 2017/01/03 by mason.seay Mass fucntional test #jira UE-29618 Change 3245049 on 2017/01/03 by Ben.Marsh PR #3086: Fixed ScriptGeneratorPlugin #includes (Contributed by projectgheist) Change 3244924 on 2017/01/03 by Ben.Zeigler #jira UE-40057 Fix regression in public access for SwapPlayerControllers, from GitHub #3072 Change 3244831 on 2017/01/03 by Mitchell.Wilson Fixed hole in collision around level. #jira UE-39576 Change 3244817 on 2017/01/03 by Matthew.Griffin Change check for files being under engine directory to avoid problems with relative paths #jira UE-40096 Change 3244801 on 2017/01/03 by Andrew.Rodham Editor: Fixed color picker not working when opened from a details panel on a context menu - When a color picker is opened from a details panel that's on a context menu, it now opens as a sub menu - Added the ability to find an open menu from a widget path to FSlateApplication #jira UE-39932 Change 3244776 on 2017/01/03 by Matt.Kuhlenschmidt Fix window handle and device context being accessed by scene viewports after the underlying window has been destroyed by the OS. This is an invalid state on linux and using some vr devices. #jira UE-7388 Change 3244672 on 2017/01/03 by Ben.Marsh Search all directories containing universal CRT installations from the registry, rather than assuming that the first one found will contain the universal CRT version we want to use. Attempt to fix issues described in PR #3059. Change 3244668 on 2017/01/03 by Thomas.Sarkanen Added "Reimport Animation" and "Export to FBX" to the animation editor toolbar Options were in the asset menu before. #jira UE-39643 - Missing "Reimport" option for animation assets Change 3244667 on 2017/01/03 by Thomas.Sarkanen Reduced default URO distances in-line with new LOD calculations New values should give (roughly) the same effect as the older values with the older system. #jira UE-39939 - URO LOD distance factors different with the new screen size metric Change 3244654 on 2017/01/03 by Matthew.Griffin Added functionality to specify Loading Phase for plugin templates Changed Blueprint Library Template so that it loads pre loading screen and can be linked correctly in blueprints that use it #jira UE-38826 Change 3244631 on 2017/01/03 by Dmitriy.Dyomin Fixed: TM_Landscape_LOD Folder does not Live Update contents after generating LODs with Create Per Package Asset #jira UE-37368 Change 3244548 on 2017/01/02 by Jack.Porter Fix for Post-process Materials rendering incorrectly in editor mobile preview after viewport is resized #jira UE-39905 Change 3244389 on 2016/12/30 by Phillip.Kavan [UE-39816] Fix broken pin links caused by renaming interface function input/output parameters prior to compiling the interface, but after renaming the function itself. Mirrored from //UE4/Dev-Blueprints (CL# 3244388). #jira UE-39816 Change 3244248 on 2016/12/29 by laz.matech Saved the new sublevel in the persistent level and set it to hidden by default #jira UE-29618 Change 3244213 on 2016/12/29 by laz.matech Added a sublevel to QA-Sequencer map #jira UE-29618 Change 3243857 on 2016/12/27 by samuel.proctor Altered Container asset to have proper console input #jira UE-29618 Change 3243852 on 2016/12/27 by Mason.Seay Forgot config file #jira UE-29618 Change 3243847 on 2016/12/27 by mason.seay Improved mobile input #jira UE-29618 Change 3243536 on 2016/12/24 by Phillip.Kavan [UE-39944] Extend the GetClassDefaults node to include output pin exceptions for TSet/TMap properties (i.e. mirror safeguards already in place for TArray). Mirrored from //UE4/Dev-Blueprints (CL# 3243210). #jira UE-39944 Change 3243535 on 2016/12/24 by Phillip.Kavan [UE-39816] Renaming interface input/output parameters will no longer cause broken pin links at interface function call sites in Blueprints that are currently loaded. Mirrored from //UE4/Dev-Blueprints (CL# 3243207). #jira UE-39816 Change 3243534 on 2016/12/24 by Phillip.Kavan [UE-39733] Fix incorrect graph pin value display names for user-defined enum types. Mirrored from //UE4/Dev-Blueprints (CL# 3239965). #jira UE-39733 Change 3243532 on 2016/12/24 by Phillip.Kavan [UE-39854] Fix nativized assets build error when there are no native code dependencies. Mirrored from //UE4/Dev-Blueprints (CL# 3239778). #jira UE-39854 Change 3243529 on 2016/12/24 by Phillip.Kavan [UE-38999] Dump component tree node hierarchy to the output log on error state during widget generation. Mirrored from //UE4/Dev-Blueprints (CL# 3239289). #jira UE-38999 Change 3243442 on 2016/12/23 by mason.seay QAGame cleanup - Replacing copy pose from mesh test assets #jira UE-29618 Change 3243215 on 2016/12/22 by Dmitriy.Dyomin Fixed: Switching to ES2 feature level preview renders black in editor #jira UE-40009 Change 3243185 on 2016/12/22 by Ryan.Vance #jira UEVR-478 Integrating 3235308 Mono changes from DevVR. Change 3243183 on 2016/12/22 by Ryan.Vance #jira UEVR-455 Integrating 3243173 post present call back implementation from 4.14.1 Change 3243182 on 2016/12/22 by Ryan.Vance #jira UE-39269 Working around a nullptr deref in the Oculus runtime. Change 3243153 on 2016/12/22 by mason.seay WIP map update #jira UE-29618 Change 3243128 on 2016/12/22 by andrew.porter QAGame: Adding Actor Sequence test content for a crash. #jira UE-29618 Change 3243117 on 2016/12/22 by Jeff.Fisher UE-34004 GitHub 2659 : Implement support for OpenVR controller roles. -Rather than assigning unreal hands to controllers in the order the controllers are connected assign unreal hands to match the ones the API is using. -We now defer setting up controllers that are disconnected. This lets connected controllers, that may have hand preference from steam, occupy their desired hands first. If a controller is connected later and does not have a role it is assigned to an unoccupied hand or to the right hand. -This can still end up ignoring role in the following circumstance (and I can get it to do this): get one controller to prefer'right' and the other to have no preference. Power off the 'right' prefering controller. Start the game with only the no-preference controller on. The game will put that controller in the right slot, because the api gives it no other hints. Then power on the controller that preferred 'right'. That controller will now be assigned left, because right is occupied. I don't see a way around that without the ability to switch which hand a controller is associated with at runtime. -This does not yet handle starting with 2 controllers, disconnecting one, then connecting a third controller well. That did not work before either. A new Jira was created for that. #2659 #jira UE-34004 #review-3231154 Change 3243093 on 2016/12/22 by mason.seay Some tweaks to vehicle levels #jira UE-29618 Change 3243084 on 2016/12/22 by andrew.porter QAGame: Cleaned up Sequencer_OverrideBindings #jira UE-29618 Change 3243009 on 2016/12/22 by andrew.porter QAGame: Renaming actor in Sequencer_OverrideBindings. #jira UE-29618 Change 3243003 on 2016/12/22 by andrew.porter QAGame: Removing override bindings from level sequence #jira UE-29618 Change 3242996 on 2016/12/22 by andrew.porter QAGame: Slight tweak to QA-Sequencer. #jira UE-29618 Change 3242982 on 2016/12/22 by Marc.Audy Properly reenable stats sounds in both game and level editor #jira UE-40015 Change 3242959 on 2016/12/22 by mason.seay Test map for vehicles and moving meshes #jira UE-29618 Change 3242934 on 2016/12/22 by andrew.porter QAGame: Adding test content to QA-Sequencer for Override Bindings #jira UE-29618 Change 3242870 on 2016/12/22 by Mason.Seay QAGame footprint reduction: Clearing out content (were in for old bug reports) #jira UE-29618 Change 3242799 on 2016/12/22 by tim.gautier QAGame - Adding the following assets for Sequencer Event Track testing: -TM-Sequencer_EventTrack + BuildData -QA_LightStruct -Sequencer_EventTrack #jira UE-29618 Change 3242792 on 2016/12/22 by samuel.proctor Correcting Container test asset for proper output #jira UE-29618 Change 3242727 on 2016/12/22 by Dmitriy.Dyomin Fixed: LoadLevelIntstance returns a reference that can't be used to send an interface message #jira UE-40005 Change 3242666 on 2016/12/22 by Dmitriy.Dyomin Fixed: Packaging Android app for Mali Graphics Debugger v4.3.0 fails #jira UE-39534 Change 3242373 on 2016/12/21 by Ori.Cohen Allow vehicles to override inertia tensor after any mass properties have changed. #JIRA UE-39566 Change 3242323 on 2016/12/21 by Josh.Adams - Somehow my last change just got completely lost in the edigrate shuffle. Or something. I have no idea! Rdoing it #jira UE-39966 Change 3242286 on 2016/12/21 by mason.seay Vehicle Assets and Maps #jira UE-29618 Change 3242284 on 2016/12/21 by Marc.Audy Fix "stat sounds" not working after PIE completes and a new one is begun #jira UE-32743 #jira UE-39511 Change 3242281 on 2016/12/21 by Ori.Cohen Fix multi select being very slow in phat #JIRA UE-39559 Change 3242229 on 2016/12/21 by Ben.Marsh Fixup workspace for building PhysX. Change 3242227 on 2016/12/21 by Marc.Audy Properly update listener position for stat sounds #jira UE-38850 Change 3242218 on 2016/12/21 by Ori.Cohen Fix physx html5 compilation APEX issue. #JIRA UE-39566 Change 3242174 on 2016/12/21 by Ori.Cohen Fix incorrect moment of inertia for convex elements with translation. #JIRA UE-39566 Change 3242145 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix for vehicle stability #JIRA UE-38710 Change 3242139 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix: Fix crash when setting collision trace in construction script. #JIRA UE-39341 Change 3242088 on 2016/12/21 by Alexis.Matte Fix the drag and drop material on level instance to drop on the correct material slot Fix the serialization of the staticmesh property FMeshSectionInfoMap #jira UE-39952 Change 3242081 on 2016/12/21 by Andrew.Rodham Sequencer: Make details view focused when resetting inner struct contents to ensure that focus path is valid. #jira UE-39851 Change 3242079 on 2016/12/21 by Andrew.Rodham Sequencer: Evaluation templates are now only fully rebuilt in PIE, and will not re-cycle track identifiers - This addresses issues with newly compiled tracks recycling the persistent data of old stale tracks. - This commit also ensures we don't fully rebuild templates in the editor when in Sequencer #jira UE-39882 Change 3242078 on 2016/12/21 by Andrew.Rodham Sequencer: Fixed crash when deactivating a section in sequencer #jira UE-39880 Change 3242026 on 2016/12/21 by Josh.Adams - Fixed compile errors in tools after NVNRHI move #jira UE-39966 Change 3241994 on 2016/12/21 by andrew.porter QAGame: Disabled auto play on Sequencer_AnimNotify. #jira UE-29618 Change 3241989 on 2016/12/21 by Mitchell.Wilson Resolving CIS warnings in Content examples. Fixed up redirectors. Moved a texture from developer folder into project and relinked in POM_Debug material. Fixed up BP Commentary Box which was failing to compile. Updated spawn rate on Pulse Ring so it works as intended. #jira UE-39984 Change 3241986 on 2016/12/21 by mason.seay Vehicle Landscape Test map (mainly for crash investigation) #jira UE-29618 Change 3241914 on 2016/12/21 by Josh.Adams - Removed invalid and confusing .ini settings #jira UE-39982 Change 3241902 on 2016/12/21 by Josh.Adams - Moved NVNRHI stuff out of RHI.Build.cs #jira UE-39966 Change 3241889 on 2016/12/21 by andrew.porter QAGame: Added new level sequence to QA-Sequencer level #jira UE-29618 Change 3241884 on 2016/12/21 by Alexis.Matte Make sure the color grading cursor follow the mouse by using the exponent value when painting the cursor. #jira UE-39834 Change 3241869 on 2016/12/21 by andrew.porter QAGame: Adding test content for Sequencer Animation Notifies #jira UE-29618 Change 3241809 on 2016/12/21 by Chris.Wood Fix non-unity build errors in UnrealWatchdog. [UE-39940] - GitHub 3054 : Added EngineBuildSettings.h to UnrealWatchdog.cpp PR #3054: Added EngineBuildSettings.h to UnrealWatchdog.cpp (Contributed by ryanjon2040) #jira UE-39940 Change 3241806 on 2016/12/21 by Marc.Audy Don't unload and then reload streaming levels that are marked to be hidden. #jira UE-39883 Change 3241802 on 2016/12/21 by Marc.Audy Add new object flag RF_NeedInitialization to indicate that ~FObjectInitalizer and PostInitProperties have not been executed for the object Do not allow Modify calls on Objects that have not been initialized #jira UE-39731 Change 3241790 on 2016/12/21 by Marc.Audy Don't rerun construction scripts when an actor has seamless traveled from another level #jira UE-39699 Change 3241789 on 2016/12/21 by Marc.Audy Check Owner has a valid world before trying to access Scene (4.14.2) #jira UE-39560 Change 3241786 on 2016/12/21 by Marc.Audy Fixed crash when seamless travelling in PIE from levels other than the current editor level with a streaming sublevel shared with the current editor level #jira UE-39407 Change 3241781 on 2016/12/21 by Mitchell.Wilson Fixed up redirectors for SkeletalMesh and Personal Walkthroughs. #jira UE-30953 Change 3241747 on 2016/12/21 by mason.seay Tag Query test map and assets #jira UE-29618 Change 3240938 on 2016/12/20 by Ben.Marsh Remaking QFE fixes from 4.14 branch. Change 3240740 on 2016/12/20 by Ben.Marsh Update branch name for analytics. [CL 3272229 by Matthew Griffin in Main branch]
2017-01-25 16:23:41 -05:00
{
FOpenGL::FramebufferTexture2D(GL_FRAMEBUFFER, DepthStencilTarget->Attachment, DepthStencilTarget->Target, DepthStencilTarget->GetResource(), 0);
break;
}
case GL_RENDERBUFFER:
{
glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, DepthStencilTarget->GetResource());
glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, GL_RENDERBUFFER, DepthStencilTarget->GetResource());
VERIFY_GL(glFramebufferRenderbuffer);
break;
Copying //UE4/Release-Staging-4.15 to //UE4/Dev-Main (Source: //UE4/Release-4.15 @ 3267632) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3267632 on 2017/01/23 by Jurre.deBaare Marker syncs not working correctly in Blend Spaces #fix Ensure that SampleIndexWithMarkers is serialized #JIRA UE-40975 Change 3266915 on 2017/01/20 by Arciel.Rekman Fix Persona crash on Linux (UE-38790). - Static template variable got instantiated into multiple DSOs; probably exacerbated by --as-needed since this does not happen without it. #jira UE-38790 Change 3266785 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Make usage of CachedUsers thread safe. Duplicates CL 3245390 #jira UE-40649 Change 3266762 on 2017/01/20 by Rolando.Caloca UE4.15 - Fix for reallocating scene color #jira UE-40633 Change 3266642 on 2017/01/20 by Lina.Halper Downgraded Warning to Info #jira: UE-40643 Change 3266532 on 2017/01/20 by Jeff.Campeau Fix multiplatform Windows includes defeating the safety check in MinWindows.h #jira UE-40778 #rn Fixed a compile warning on Xbox One when XboxOneMinApi.h was included before MinWindows.h. Change 3266523 on 2017/01/20 by Marc.Audy Fix case where child actor could avoid getting begin play call #jira UE-40960 Change 3266474 on 2017/01/20 by Peter.Sauerbrei fix for using an API not yet available in iOS 8 #jira UE-40698 Change 3266339 on 2017/01/20 by Frank.Fella Sequencer - Fix UI issues with multi-track section rows. + Don't show an empty sub-track when there are no sections. + Expand parent tracks by default. #Jira UE-40487 Change 3266283 on 2017/01/20 by Jeff.Fisher UE-40683 GearVR projects rendering black -Fix from Remi Palandri #jira UE-40683 #review-3265824 @nick.whiting @ryan.vance Change 3266264 on 2017/01/20 by Lina.Halper Downgraded warning and changed log message #jira: UE-40643 Change 3266239 on 2017/01/20 by Peter.Sauerbrei fix for virtual joystick not showing up on some devices #jira UE-40472 Change 3266084 on 2017/01/20 by Mitchell.Wilson Resaving level to have correct starting camera position. Saved in wrong position after fixing a bug. #jira UE-40887 Change 3266077 on 2017/01/20 by Matt.Kuhlenschmidt Fixed "Wait for Movies to Complete" flag being reversed #jira UE-40943 Change 3266076 on 2017/01/20 by Mitchell.Wilson Updating occulsion bounds method on P_spark_burst_2 so it is not occluded when spawned inside of the coin mesh in BP_Overview example. Updating some post process examples due to changes made with Post Process settings. Film and Scene Color are temporary fixes and are intended to be fully updated in 4.16 #jira UE-40830 UE-40887 Change 3266034 on 2017/01/20 by Benn.Gallagher Fixed crash when reimporting APEX destructibles from apb/x files caused by not allowing the renderer to flush destroy resource commands before emptying an array. #jira UE-40911 Change 3266027 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Fix CreateSession and FindSession each permanently failing after first failure. Duplicates CL 3262175 #jira UE-39110 Change 3265906 on 2017/01/20 by Marcus.Wassmer Fix GPU particle AFR flickering and optimize injection transfers. Duplicate CL's 3260302, 3261252, 3265662, 3265678 #jira UE-40915 Change 3265873 on 2017/01/20 by Mark.Satterthwaite Duplicate CL #3262535: Make sure to set rasterizer state when rendering with a material in FSlateRHIRenderingPolicy::DrawElements #jira UE-40842 Change 3265857 on 2017/01/20 by Jamie.Dale Fixed font pathing issue that could happen in an out-of-source packaged build #jira UE-40855 Change 3265675 on 2017/01/20 by Matt.Kuhlenschmidt Move Dirt Mask Intensity to the correct post process category #jira UE-40851 Change 3265674 on 2017/01/20 by Rolando.Caloca UE4.15 - Revert #jira UE-40633 Change 3265647 on 2017/01/20 by Mitchell.Wilson Updating spawn location of the player pawn after unpossessing character in example 1.10. #jira UE-40870 Change 3265612 on 2017/01/20 by Alexis.Matte Prevent name clash warning when doing automation test #jira UE-40788 Change 3265553 on 2017/01/20 by Matthew.Griffin Fixed Shadow variable warning Change 3265366 on 2017/01/20 by Dmitriy.Dyomin Fixed: Vulkan crashes on Adreno Galaxy S7 #jira UE-40840 Change 3265294 on 2017/01/19 by Dmitriy.Dyomin Fixed typo which was causing assert on mobile #jira UE-40633 Change 3265111 on 2017/01/19 by Rolando.Caloca UE4.15 - Fix for scene color crash #jira UE-40633 Change 3264789 on 2017/01/19 by Josh.Adams - Redoing a fix from Dev-Plat for UI_BUILD_SHIPPING_EDITOR #jira UE-40798 Change 3264780 on 2017/01/19 by Rolando.Caloca UE4.15 - Add Morph compute GPU stat #jira UE-40891 Change 3264486 on 2017/01/19 by Mark.Satterthwaite Fix the crash on startup on Intel GPUs - this is due to Intel Metal forcing SM4 to avoid some drivers bugs in SM5 but I got the condition for initialisation in FMinimalDummyForwardLightingResources wrong so it's attempting to create a RWBuffer for SM4 which won't work. #jira UE-40863 Change 3264427 on 2017/01/19 by Rolando.Caloca UE4.15 - Track down crash #jira UE-40633 Change 3264393 on 2017/01/19 by Aaron.McLeran #jira UE-40850 Re-fixing UE-39650 again in 4.15. I hope this bug doesn't regress yet again! Change 3264364 on 2017/01/19 by Daniel.Wright In forward shading SceneCaptureSource modes Normal and BaseColor are replaced with SceneColorHDR as the GBuffer is not available. This is a silent failure for now as there's no good content error reporting mechanism for scene captures. #jira UE-39658 Change 3264284 on 2017/01/19 by Mark.Satterthwaite Duplicate CL #3264251: Modify some asserts in MetalRHI - technically using a store-action of ENoAction on Stencil buffers should make it invalid to restart a render-pass but on Mac it will work because ENoAction won't invalidate anything written. In future we need to use deferred store-actions in Metal so that we can "restart" passes while enforcing correct Load/Store actions. #jira UE-40803 Change 3264282 on 2017/01/19 by Benn.Gallagher CIS fix, bad expression that failed to compile Mac #jira UE-40716 Change 3264257 on 2017/01/19 by Mike.Beach Revising fix in UBlueprint::BeginCacheForCookedPlatformData(), saving off nativization data if the -nativizeAssets param is present (not just if it was enabled in packaging settings). #jira UE-40620 Change 3264242 on 2017/01/19 by Daniel.Wright [Copy] Sharing IndirectLightingCacheTextureSampler samplers #jira UE-40727 Change 3264191 on 2017/01/19 by Ori.Cohen Fix heightfield not working with traces underneath. #JIRA UE-39819 Change 3264139 on 2017/01/19 by Benn.Gallagher Removed collision between clothing in external skeletal mesh components, as clothing simulations could already be in flight and editing collisions while the simulation is running is not supported by APEX #jira UE-40716 Change 3264110 on 2017/01/19 by Max.Preussner MfMedia: Disabled plug-in on Windows 10, because it is currently broken #jira UE-406344 Change 3264108 on 2017/01/19 by Max.Preussner MfMedia: Fixed compile errors on Windows 10 #jira UE-40644 Change 3264099 on 2017/01/19 by Jamie.Dale Adding deprecation warning for 4.14 style PO export #jira UE-40592 Change 3264089 on 2017/01/19 by Matthew.Griffin Reworked DDC commandlet to make sure it actually calls BeginCacheForCookedPlatformData on assets Skip doing this for Engine content if -ProjectOnly is set as that takes a long time and isn't necessary for the way we use it #jira UE-39968 Change 3264065 on 2017/01/19 by James.Golding Fix ModifyCurve node not calling init/update in SourcePose #jira UE-40852 Change 3263729 on 2017/01/19 by Alexis.Matte Fix a bad condition when filling the material sorting array #jira UE-40814 Change 3263704 on 2017/01/19 by Jack.Porter Fix compile error in AndroidESDeferredOpenGL.cpp when " ES Deferred Shading Renderer" is enabled. #jira UE-40659 Change 3263627 on 2017/01/19 by Jack.Porter Fixed black textures when Vulkan is packaged for ETC1 #jira UE-40658 Change 3263554 on 2017/01/19 by Jack.Porter Fixes to HISMC LOD to use new screen size calculation. Solves issue where HISMC was always rendered at lowest LOD. #jira UE-38930 Change 3263535 on 2017/01/19 by Matthew.Griffin Removed unnecessary directories to always cook Problem was actually down to string asset references not being resolved in file set generation Change 3263534 on 2017/01/19 by Matthew.Griffin Added -SkipPublish parameter to BuildLauncherSample command so that we don't chunk and post preflights Change 3263267 on 2017/01/18 by Dan.Oconnor Fix for editing of TMap/TSet variables in structure editor, async tasks, and when using UK2Node_CommutativeAssociativeBinaryOperator. #jira UE-40428 Change 3263219 on 2017/01/18 by Dan.Oconnor Fix copy paste error found by UDN user Craig.Wright that could result in fatal bytecode execution #jira UE-19425 Change 3262980 on 2017/01/18 by Maciej.Mroz #jira UE-40394, UE-40395, UE-40426, UE-40484, UE-40770 Integrated cl 3262851, 3261613, 3260908 from Dev-Blueprint Change 3262908 on 2017/01/18 by Ori.Cohen When refreshing physics assets, don't do so on components that have no bodies. #JIRA UE-40764 Change 3262709 on 2017/01/18 by Matt.Kuhlenschmidt Fix a crash if a background blur widget ends up being negative or zero sized #jira UE-40820 Change 3262606 on 2017/01/18 by Marc.Audy Don't bother the user with force feedback based on where the unpossessed pawn is standing in the world while in simulate mode #jira UE-40785 Change 3262416 on 2017/01/18 by Marc.Audy Reenable audio threading #jira UE-00000 Change 3262125 on 2017/01/18 by Chris.Wood Fixed unnecessary truncate in SMenuAnchor::Tick that caused menu placement to wobble [UE-40293] - Dropdown selection box jitters when mouse is moved over top of it on Mac #jira UE-40293 Change 3262103 on 2017/01/18 by Jamie.Dale Merging some cooker fixes CL# 3262089 - Fixing RedirectCollector issues with projects outside the UE4 directory CL# 3262091 - Guarding against potentially invalid call to FString::Mid CL# 3262094 - Cook on the fly builds now resolve string asset references #jira UE-40790 Change 3262082 on 2017/01/18 by Chris.Bunner Accumulate used particle materials from final mesh material module, not first. #jira UE-39953 Change 3261996 on 2017/01/18 by Matthew.Griffin Allow Samples to be built in pre-flights if you are specifying an engine version Change 3261995 on 2017/01/18 by Matthew.Griffin Resolve string asset references after loading packages to ensure that we find all required files Change 3261934 on 2017/01/18 by Allan.Bentham Bump shader version to force changes in 3260307 to occur. #jira UE-39701 Change 3261842 on 2017/01/18 by Graeme.Thornton Manual copy of CL 3253580 from Dev-Core Added some validation of the class index in exportmap entries #jira UE-37873 Change 3261017 on 2017/01/17 by Mitchell.Wilson Resaving all levels to resolve short form string asset reference warnings. #jira UE-40732 Change 3260918 on 2017/01/17 by Andrew.Rodham Sequencer: Request unloaded levels to be loaded when being made visible through sequencer #jira UE-40082 Change 3260909 on 2017/01/17 by Ben.Marsh Fix error running "Clean" in installed build. #jira UE-40751 Change 3260757 on 2017/01/17 by Jeff.Fisher UE-39654 Crash when launching Google VR project -Via SwitchGameWindowToUseGameViewport we get an early ResizeViewport which does an early Draw. This calls GetStereoProjectionMatrix before the game has ticked and fetched the device info we use to build that matrix. -In this change we make the call to setup that information in the GoogleVRHMD constructor, to ensure it is done before anything tries to use it. -I also added some asserts. #jira UE-39654 #review-3260644 Change 3260637 on 2017/01/17 by Alexis.Matte Fix crash when importing skeletal mesh containing a texture or a material using the same name. #jira UE-40538 Change 3260630 on 2017/01/17 by Marc.Audy When installing a feature pack maintain the include of the template so that any properties inside it are not lost by replacing it with the project's PCH include Update all C++ feature packs to include the original project .h in the files that are copied in to the new project #jira UE-40730 Change 3260600 on 2017/01/17 by matt.barnes Test content for sequencer event tracks #jira UE-29618 Change 3260593 on 2017/01/17 by Mieszko.Zielinski Made FSupportedAreaData export as part of engine API #UE4 #jira UE-40739 Change 3260538 on 2017/01/17 by Marc.Audy Always display axes in debug info, but show -- for value when we don't yet know the ranges #jira UE-40700 Change 3260422 on 2017/01/17 by Marc.Audy Expose level streaming incremental unregister component cvars in the engine streaming section of the project settings #jira UE-10109 Change 3260392 on 2017/01/17 by Ben.Woodhouse Duplicated from CL 3260107: Fix FMonitoredProcess to prevent infinite loop in -nothreading mode #jira UE-40717 Change 3260358 on 2017/01/17 by Chris.Bunner Only validate tonemapper LUT input if actually hooked up. #jira UE-40467 Change 3260327 on 2017/01/17 by Frank.Fella PlatformMediaSource - Fix Validate to check all specified media sources, and change GetURL to get the url for the current platform when running uncooked. #jira UE-40709 Change 3260307 on 2017/01/17 by Allan.Bentham Restore metal compiler's shader source serialization code when the shader is to be compiled at runtime. #jira UE-39701 Change 3260276 on 2017/01/17 by Alex.Delesky #jira UE-40276 - Fixing an issue where a Standalone game launched from the editor cannot toggle fullscreen mode. Change 3260274 on 2017/01/17 by Chris.Wood Added check for null World ptr in AActor::PostEditChangeProperty to fix crash when pasting temporary Actors [UE-40492] - Crash after ejecting from PIE session and selecting a component in the details panel #jira UE-40492 Change 3260230 on 2017/01/17 by Ben.Woodhouse Duplicated from dev-rendering@3232283 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 3260096 on 2017/01/17 by Thomas.Sarkanen Fixed crash when rendering out a level sequence with layered animations When a level contained sequences with layered animations that *werent* taking part in the render (i.e. they were not part of the current master sequence) then their instances were initialized but not ticked. When their components then got a call to evaluate their bone transforms, the cached blends were in an uninitialized state. #jira UE-40654 - Render Movie using separate process crashes capture process Change 3259875 on 2017/01/17 by Dmitriy.Dyomin Fixed: SunTemple is washed out in one color on some Android devices #jira UE-40689 Change 3259011 on 2017/01/16 by Max.Chen Matinee to Level Sequence: Make RegisterTrackConverters pure virtual #jira UE-37328 Change 3258992 on 2017/01/16 by Rolando.Caloca UE4.15 - Integrate fix for outlines (3258807) #jira UE-40690 Change 3258949 on 2017/01/16 by mason.seay Disabled TranslatedMass test #jira UE-29618 Change 3258860 on 2017/01/16 by Max.Preussner Media: Prevent loading of media plug-ins in console apps, such as game servers (OR-34819) #jira OR-34819 Change 3258846 on 2017/01/16 by Max.Preussner MfMedia: Fixed incorrect tracks being played in multi-track media sources (UE-39703) #jira UE-39703 Change 3258813 on 2017/01/16 by Benn.Gallagher Added error on import for APEX clothing files that either have no submeshes or have no submeshes with simulated vertices. #jira UE-40614 Change 3258771 on 2017/01/16 by James.Golding Skip fatal warning in UBodySetup::Serialize if duplicating (e.g. spawning component via SCS with a BodySetup in its template) #jira UE-40418 Change 3258747 on 2017/01/16 by Max.Chen Sequencer: AddUnique SequencerActorTag to prevent multiple tags being added when spawning/despawning. #jira UE-40665 Change 3258630 on 2017/01/16 by Jurre.deBaare CIS IfDef issue fix #JIRA UE-1234 Change 3258541 on 2017/01/16 by Phillip.Kavan [UE-40131] Revised fix that will work for "inclusive" BP nativization with data-only BPs. change summary: - revised code in UBlueprint::BeginCacheForCookedPlatformData() to also support the "inclusive" nativization method #jira UE-40131 Change 3258532 on 2017/01/16 by Max.Chen Sequencer: Fix max row index off by one error . This was always incorrect, but it was masked by the fact that FixRowIndices() was called on the track when the UI gets built. That function was removed from the node layer in CL #3252753 and therefore exposed this bug. #jira UE-40642 Change 3258505 on 2017/01/16 by Marc.Audy Improve messaging when installing vehicle and vehicle adv C++ feature packs #jira UE-40647 Change 3258478 on 2017/01/16 by Matt.Kuhlenschmidt PR #3131: UE-40567: Added nullcheck to FSplinePointDetails (Contributed by projectgheist) #jira UE-40567 Change 3258457 on 2017/01/16 by Jurre.deBaare SpeedTree Billboards rendering with Incorrect Material #fix Ensure that we add a section info entry for the billboard models/lods during SpeedTree importing #jira UE-39677 Change 3258442 on 2017/01/16 by Alexis.Matte Skeletalmesh import, make sure we increment the lod index when animation is not imported #jira UE-40640 Change 3258431 on 2017/01/16 by Jurre.deBaare Back out changelist 3258392 #fix issue was already resolved #jira UE-1234 Change 3258392 on 2017/01/16 by Jurre.deBaare Fix for non-unity CIS #JIRA UE-1234 Change 3258358 on 2017/01/16 by Matthew.Griffin Prevent warning from being shown when XMPP module is not built #jira UE-40616 (I guess LoadModule could be changed to LoadModuleChecked now if they do exist) Change 3258144 on 2017/01/15 by Marc.Audy Fix non-unity CIS errors #jira UE-00000 Change 3258141 on 2017/01/15 by zachary.wilson Adding testing content for Distance Field Indirect Shadows #jira UE-29618 Change 3258049 on 2017/01/14 by Nick.Shin UFE sent incorrect header data on missing file also, it seems that UFE was written to expect clients to close the connection -- (this should be closed manually -- which will flush the data and then close out the socket -- but, since this is a developer tool... leaving this as-is) first, 404 was not sending the required double newline after headers second, since connection are not closed manually (server side) send a dummy payload with content-length data #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3257984 on 2017/01/14 by Aaron.McLeran Attempting another fix for static analysis warning in CIS #jira UE-40645 Change 3257904 on 2017/01/14 by Aaron.McLeran Resolving static analysis warnings reported by CIS #jira UE-40645 Change 3257883 on 2017/01/14 by Aaron.McLeran Fixing build warning with CL 3257826 #jira UE-40645 Change 3257826 on 2017/01/13 by Aaron.McLeran Integrating fixes from Dev-Framework and Odin to Release-415 #jira UE-40645 Change 3257654 on 2017/01/13 by Marc.Audy Until plugins can drive their own dependencies vehicle and vehicle adv feature packs will not compile automatically and will pop up a message log informing the user of the actions they need to manually take. #jira UE-40466 Change 3257608 on 2017/01/13 by John.Pollard PC: Assertion Fail with UPackageMapClient::AddNetFieldExportGroup() viewing replays #jira OR-34522 Change 3257489 on 2017/01/13 by Mitchell.Wilson Removing preview mesh from multiple materials to resolve CIS warnings. #jira UE-40628 Change 3257485 on 2017/01/13 by Chris.Babcock Don't initialize FMinimalDummyForwardLightingResources for unneeded feature levels (below SM4) #jira UE-40602 #ue4 #android Change 3257444 on 2017/01/13 by Matt.Barnes Updating test assets for UEQATC-2967 #jira UE-29618 Change 3257324 on 2017/01/13 by Arciel.Rekman Linux: Update runtime CEF lib as well (UE-401413). - Followup to CL 3256081. #jira UE-40413 (Merging CL 3257241 from Dev-Platform to Release-4.15) Change 3257140 on 2017/01/13 by Lina.Halper Fix crash with deleting all poses #jira: UE-40537 Change 3257066 on 2017/01/13 by Jurre.deBaare CIS fix for game builds #jira UE-1234 Change 3257056 on 2017/01/13 by Ben.Zeigler #jira UE-40318 Fix crash in streamablemanager where callbacks would get called on a deleted manager. This is being rewritten in 4.16, so do a quick fix for 4.15 to avoid the crash Change 3256839 on 2017/01/13 by Jurre.deBaare Added conversion of HLOD transition screen size to new transition screen area values #fix During serialization patch up the values of transition screen size within the hierarchical lod setups #misc Updated the default value to a screen size to screen area equivalent #JIRA UE-40518 Change 3256761 on 2017/01/13 by Mieszko.Zielinski Fixed EQS debug rendering not clearing previously displayed labels if new request has no labels #UE4 #jira UE-40589 Change 3256177 on 2017/01/12 by Josh.Adams - Moved the MfMedia plugin outside of XboxOne directory, because it's a Windows plugin as well (that happens to also work on XboxOne - all public APIs) #jira UE-40391 Change 3256131 on 2017/01/12 by Jamie.Dale Fixing log spam when trying to load an empty font data #jira UE-40555 Change 3256081 on 2017/01/12 by Arciel.Rekman Fixed CEF compatibility problems on Ubuntu 14.04 (UE-40413). - Also deleted Debug version of it. - Change by yaakuro. #jira UE-40413 (Edigrating CL 3256065 from Dev-Platform to Release-4.15) Change 3256046 on 2017/01/12 by Jon.Nabozny Use PxConvexFlag::eSHIFT_VERTICES when cooking meshes to fix baked in transforms. #jira UE-39212 Change 3255939 on 2017/01/12 by mason.seay Rebuilt lighting #jira UE-29618 Change 3255912 on 2017/01/12 by Olaf.Piesche Replicating fix from 3246828 for #jira UE-39249 Change 3255909 on 2017/01/12 by Rolando.Caloca UE4.15 - Support for choosing discrete AMD GPU #jira UE-40546 Change 3255835 on 2017/01/12 by Martin.Wilson Fix newly added virtual bones not being on screen. #jira UE-40516 Change 3255774 on 2017/01/12 by Mark.Satterthwaite Merging 3251926 for Richard.Wallis: #jira UE-38828 Crash after Enabling Forward Shading on Mac and Creating/Editing Materials. Using TGlobalResource to avoid constant resource allocation. Prev fix (in CL 3239454) caused a crash in D3D11 with zero sized resource views. Change 3255771 on 2017/01/12 by Alexis.Matte Fix a crash when re-importing asset with no material #jira UE-40510 Change 3255746 on 2017/01/12 by Jon.Nabozny Change _DEBUG to PX_DEBUG in ConvexHullLib.cpp #jira UE-0000 Change 3255659 on 2017/01/12 by Jon.Nabozny Enable Shifting Vertices during Convex Hull cooking to prevent precision issues. (Copied CL-3249100 from Dev-Phyics-Upgrade to support new flag) #jira UE-39212 Change 3255617 on 2017/01/12 by Ori.Cohen Fix crash when computing mass for an async object. Using passed in rigid body instead of assuming SyncRigidActor #JIRA UE-40458 Change 3255536 on 2017/01/12 by Jamie.Dale Fixed crash when using an object picker against the 'Object' type This also optimizes some filter code to avoid filtering when it would be pointless (and just slows things down). #jira UE-40408 Change 3255451 on 2017/01/12 by Chris.Wood Fixed read only text color in SCommentBubble [UE-40384] - Reference Viewer comment text is difficult to read Also changed DetermineForegroundColor() method in EditableTextBox classes to fallback on ForegroundColorOverride if it is set and ReadOnlyForegroundColorOverride isn't set. #jira UE-40384 Change 3255448 on 2017/01/12 by Chris.Wood Removed blinking cursor/caret on read only editable text layouts. [UE-40502] - Flashing cursor/caret showing in read-only editable text layouts #jira UE-40502 Change 3255445 on 2017/01/12 by Marc.Audy Create the dynamic level streaming persistent object correctly outered to the World rather than the transient package to avoid GetWorld() crashing #jira UE-00000 Change 3255441 on 2017/01/12 by Jon.Nabozny Regenerate collision for the basic Cube mesh to fix resting issues and invalid verts. #jira UE-40478 Change 3255407 on 2017/01/12 by Yannick.Lange VREditor: - Fix: Assertion Failed crash after pressing F8 in PIE while Foliage Mode was selected - Fix: Assertion Failed crash after pressing F8 in PIE while Paint Mode was selected - Added extra checks for other possible future cases #jira UE-39786 UE-39789 Change 3255393 on 2017/01/12 by Chris.Bunner Duplicating CL 3255244: Removed test variable from MaterialExpressionVectorParameter. #jira UE-40517 Change 3255375 on 2017/01/12 by Steve.Robb CIS fix. #jira UE-39556 Change 3255334 on 2017/01/12 by samuel.proctor Corrected QA Container asset to remove pin warning. #jira UE-29618 Change 3255319 on 2017/01/12 by james.cobbett Fixing motion blur issue with test content for Pose Snapshots. #jira UE-29618 Change 3255247 on 2017/01/12 by Nick.Darnell Slate - Slate's Tab Manager is now a bit smarter about allowing Focus/BringToFront attention grabbing methods. In order to make the UI less jumpy it was restricted to only allowing alerts and bring to front to be triggered if you were on the window, or child window of the active application window. That can negatively impact cases where a user takes an action (clicks a link ro button saying open/goto this tab), that is on another window. To work around this limitation, the Tab Manager will also permit the action if Slate is currently processing user input, implying that the action being taken is in direct response to the user pressing a button and interacting with the UI. #jira UE-40313 Change 3255236 on 2017/01/12 by Phillip.Kavan [UE-40131] Non-native child BPs can now properly override a nativized parent BP's components in a cooked build with exclusive Blueprint class nativiation. - Mirrored from //UE4/Dev-Blueprints (CL# 3254024,3254391) #jira UE-40131 Change 3255216 on 2017/01/12 by Rolando.Caloca UE4.15 - Fix compile issue on Vulkan 1.0.37.0 or newer #jira UE-40506 Change 3255206 on 2017/01/12 by Steve.Robb Use outer walking IsA() implementation in editor to get around reinstancing and hot reload issues. #fyi mike.beach #jira UE-39556 Change 3255195 on 2017/01/12 by mason.seay Adjusted slope to fix platform discrepancy #jira UE-29618 Change 3255086 on 2017/01/12 by Jack.Porter Fix XboxOneShaderCompiler.cpp non-unity compilation #jira None Change 3255085 on 2017/01/12 by Jack.Porter Missing HTML5 changes from CL 3254907 #jira UE-39111 Change 3255031 on 2017/01/12 by Jack.Porter More iOS GoogleVR changes missing from CL 3254907 #jira UE-39111 Change 3254991 on 2017/01/12 by Jack.Porter Missing file from CL 3254907 #jira UE-39111 Change 3254907 on 2017/01/11 by Jack.Porter Android MSAA changes - use r.MobileMSAA cvar, support more than 2x, fix issues where targets other than scene color were created with MSAA #jira UE-39111 #jira UE-35849 #jira UEMOB-35 Change 3254810 on 2017/01/11 by Arciel.Rekman Linux: fix for crash on exit (UE-40488). #jira UE-40488 Change 3254617 on 2017/01/11 by Peter.Sauerbrei remake the fix for missing PhysXVehicle library in binary for IOS and TVOS #jira UE-39349 Change 3254489 on 2017/01/11 by mason.seay Other minor improvements to the map #jira UE-29618 Change 3254477 on 2017/01/11 by mason.seay Map tweaks to prevent the vehicle from getting stuck #jira UE-29618 Change 3254431 on 2017/01/11 by Mitchell.Wilson Rebuilt lighting on all StarterContent levels. #jira UE-40468 Change 3254333 on 2017/01/11 by mason.seay Adjusted lightmap on mesh to remove odd rendering splotches #jira UE-29618 Change 3254131 on 2017/01/11 by Rolando.Caloca UE4.15 - Missing dumped shaders #jira UE-40465 Change 3254126 on 2017/01/11 by Jeff.Fisher UE-40422 Vive Motion Controllers unable to Play Haptic Effect -Removed an unnecessary remapping of controllerindex to deviceid, they are the same now. #jira UE-40422 #review-3254084 Change 3254046 on 2017/01/11 by Mark.Satterthwaite Merging 3233811: 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. #jira UE-39935 Change 3254021 on 2017/01/11 by james.cobbett Test content for Pose Snapshot testing #jira UE-29618 Change 3253993 on 2017/01/11 by Alexis.Matte Fix the morph target import #jira UE-40424 Change 3253948 on 2017/01/11 by mason.seay Fixed Level BP logic that was causing Access None error #jira UE-29618 Change 3253884 on 2017/01/11 by mason.seay Updated mesh colors on map. Disabled motion blur #jira UE-29618 Change 3253862 on 2017/01/11 by mason.seay Disabled Always Show Mobile Input (turned on by accident) #jira UE-29618 Change 3253859 on 2017/01/11 by Mark.Satterthwaite Merging 3252866: Fix Metal shader pipeline hash collisions caused by deferring MTLFunction construction until PrepareToDraw so that we may use Function-Constants to specialise the shader source without generating additional permutations. This is required to generate proper tessellation shaders which are specialised against the index-buffer usage & type (none, uint16, uint32). While we're here amend the hash functions to make better use of the existing hash functions to improve the distribution and hopefully reduce the possibility of collisions in future. #jira UE-40357 Change 3253854 on 2017/01/11 by Mark.Satterthwaite Merging 3252859: Fix the calculation of Metal tessellation struct alignment and size to use largest member size, so that we don't assert in debug or cause out-of-bounds access in development/shipping. #jira UE-40410 Change 3253853 on 2017/01/11 by Mark.Satterthwaite Merging 3237394: 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 3253852 on 2017/01/11 by Mark.Satterthwaite Merging 3236850: Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3253834 on 2017/01/11 by mason.seay Updated mobile input textures to be power of two #jira UE-29618 Change 3253807 on 2017/01/11 by Mark.Satterthwaite Merging 3232641 & 3236788 & 3233854 & 3249742 from Dev-Rendering: 3232641: - 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. 3236788: 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. 3233854: More information about texture type validation errors in Metal. 3249742: 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. #jira UE-40200 Change 3253636 on 2017/01/11 by Chris.Wood Improved tracking of runtime and debugger attachment for analytics purposes. [UE-39780] - Change IsDebugger to WasDebuggerPresent in all crash/AS analytics [UE-39777] - Update MTBF IsDebugger state for every heartbeat [UE-39778] - UnrealWatchdog to send WasDebuggerPresent state for app if set [UE-39779] - UnrealWatchdog to send total run time of process Debugger state was previously read once at startup or once at the time of an event. Debugger is now checked during the heartbeat and doesn't reset flag when detached so we know if a session was ever debugged. Also reporting total run time in UnrealWatchdog. Watchdog still doesn't run when debugging but and will never show popups to a debugger user even when forced on with -forcewatchdog. #jira UE-39780, UE-39777, UE-39778, UE-39779 Change 3253281 on 2017/01/10 by Dan.Oconnor Typo fix caused parameter in local struct definition to shadow the local #jira UE-40027 Change 3253231 on 2017/01/10 by Dan.Oconnor Mirror of 3253220 These pins should infer together #jira UE-40427 Change 3253125 on 2017/01/10 by Uriel.Doyon Brought back CL 3242117 and 3238685, which got lost on the way: - Fix for possiblel check fail when changin mobility of actors. - Fix for possible check fail when processing streaming data. #jira UE-39996 Change 3252936 on 2017/01/10 by Marc.Audy CopyPropertiesForUnrelatedObjects needs to consider path not just name of subobjects when matching them up to copy properties and update references Ensure that a reinstanced child actor component ends up pointing at the correct child actor template #jira UE-40027 Change 3252886 on 2017/01/10 by Lina.Halper Fix for invalid AnimCurves when curve is added while running #jira: UE-39826 Change 3252753 on 2017/01/10 by Frank.Fella Sequencer - Change track rows to use separate track nodes in the display node tree, fixes key edit issues on animation and audio tracks. #jira UE-39836 Change 3252640 on 2017/01/10 by Lukasz.Furman fixed NavCollision losing user settings after any property change copy of 3252628 #jira UE-40388 Change 3252614 on 2017/01/10 by Daniel.Wright UStaticMeshComponent::InvalidateLightingCacheDetailed uses MarkRenderStateDirty. Massively speeds up duplication of HISMC with many instances (10+ minutes -> seconds), as InvalidateLightingCacheDetailed gets called for every instance. #jira UE-40406 Change 3252609 on 2017/01/10 by mason.seay Updated map with text actors for more visual clarity #jira UE-29618 Change 3252477 on 2017/01/10 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios #jira UE-39852 Change 3252451 on 2017/01/10 by Daniel.Wright Garbage collection calls UWorld>SendAllEndOfFrameUpdates() on all loaded worlds first so that deferred recreate render states happen before any UObjects are deleted * Fixes rendering thread crashes in the order of events of 1) SetMaterial 2) GC 3) Rendering command that dereferences the UMaterial #jira UE-30089 Change 3252418 on 2017/01/10 by Ben.Zeigler #jira UE-40390 Fix crash saving blueprint with an inherited DataTable/CurveTable reference. Delta serialization meant that the necessary name wasn't in the name table, so adding it manually now. Change 3252410 on 2017/01/10 by Max.Chen Sequencer : Filter sections on select in range Copy from Dev-Sequencer #jira UE-37854 Change 3252385 on 2017/01/10 by Max.Chen Sequencer: Update auto tangents when setting key time. This fixes a bug where dragging keys with auto tangents doesn't recompute tangents properly. #jira UE-39923 Change 3252360 on 2017/01/10 by Allan.Bentham Remove incorrect assert for iOS. #jira UE-40385 Change 3252297 on 2017/01/10 by mason.seay Test assets for suspending cloth simulation #jira UE-29618 Change 3252125 on 2017/01/10 by Mieszko.Zielinski Fallout fix after removal of BlackboardKeyUtils::CalculateComparisonResult declaration from the AIModule #UE4 #jira UE-40099 Change 3251987 on 2017/01/10 by Allan.Bentham Fix HQ DoF #jira UE-35548 Change 3251856 on 2017/01/10 by Jack.Porter Fixed Get Instances Overlapping Box blueprint function due to issue with FBox constructor. Added MakeBox and MakeBox2D kismet native functions Fixed box overlap test ignoring instance scale #jira UE-34409 Change 3251519 on 2017/01/09 by Daniel.Wright [Copy] Fixed GLandscapeLayerUsageMaterial getting GC'ed #jira UE-40055 Change 3251146 on 2017/01/09 by Lina.Halper Fix on stable track data carrying over to pose asset - decided to clean up track data in anim sequence since we don't really need that data anymore #jira: UE-40351 #code review: Martin.Wilson Change 3251056 on 2017/01/09 by Lina.Halper fixed crash when pose node contains stale data when updating source. #jira: UE-40258 #code review; Thomas.Sarkanen Change 3251035 on 2017/01/09 by Mitchell.Wilson Removed preview mesh in M_GodRay to resolve CIS warning. Relinked textures used in two materials to resolve CIS warnings. #jira UE-40350 Change 3250959 on 2017/01/09 by Mitchell.Wilson Updating master sequence playback end time so the final audio track can be heard. Updating multiple shots to resolve issues with audio not playing back properly. #jira UE-40321 UE-40335 Change 3250896 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed level visibility not working in PIE #jira UE-40082 Change 3250895 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed evaluation of overlapping audio and skeletal aninmation sections - Audio and skeletal animation sections now continue to support legacy evaluation order. Overlapping sections of the same priority on the same row will be filtered out such that only the section with the latest start time will be evaluated. #jira UE-40320 Change 3250830 on 2017/01/09 by Ben.Woodhouse Duplicated from //ue4/Release-4.14 CL 3238182 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. #jira UE-38818 Change 3250790 on 2017/01/09 by Lauren.Ridge Fixing backspace on VR Editor numberpad menu. #jira UE-39770 Change 3250681 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@3249296: 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 3250680 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@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 #jira UE-39949 Change 3250609 on 2017/01/09 by Steve.Robb Maximum number of stats-using threads increased to 512. #jira UE-38153 Change 3250604 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed incorrect seed being used when generating new animation type IDs for object properties #jira UE-40327 Change 3250589 on 2017/01/09 by Matthew.Griffin Changed publish symbols node to use runtime dependencies instead of manually including the whole PhysX folder Avoids unused configs and VS2013 files #jira UE-39171 Change 3250578 on 2017/01/09 by Matthew.Griffin Removed art tools from released build now that they are available separately on the Marketplace Change 3250282 on 2017/01/07 by Mieszko.Zielinski Fixed UNavigationSystem::bNavigationAutoUpdateEnabled getting ignored by recent addition to related condition in UNavigationSystem #UE4 Reported by UT team. Replication of a fix from Dev-Framework that didn't make it to 4.15 stream #jira UE-40324 Change 3250276 on 2017/01/07 by Mieszko.Zielinski Fixed not being able to add elements to UAIPerceptionStimuliSourceComponent.RegisterAsSourceForSenses for instances manually placed on the map #UE4 #jira UE-31711 Change 3250219 on 2017/01/07 by Mieszko.Zielinski Extended comment to AISenseConfig_Sight::PeripheralVisionAngleDegrees to make it clear how it works #UE4 #jira UE-31731 Change 3250147 on 2017/01/07 by Andrew.Rodham Added missing includes #jira UE-40019 Change 3250096 on 2017/01/06 by Nick.Shin refetch on timed out GET/POST requests correction to: UE_MakeHTTPDataRequest #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3249963 on 2017/01/06 by Mieszko.Zielinski removed unused and undefined BlackboardKeyUtils::CalculateComparisonResult #UE4 #jira UE-40099 Change 3249829 on 2017/01/06 by Alexis.Matte turn on the material name clash feature for the content browser importer. #jira UE-40298 Change 3249791 on 2017/01/06 by andrew.porter QAGame: Added level blueprint logic to QA-Sequencer that lets tester override sequence bindings #jira UE-29618 Change 3249755 on 2017/01/06 by Jamie.Dale Some fixes for object reference detection and notification when deleting assets #jira UE-40121 Change 3249727 on 2017/01/06 by James.Golding #jira UE-40242 Change 3249707 on 2017/01/06 by Mitchell.Wilson Removing preview mesh with incorrect path from materials to resolve warnings in CIS. #jira UE-40311 Change 3249543 on 2017/01/06 by Michael.Dupuis #jira UE-40299: validate if UISettings is valid Change 3249506 on 2017/01/06 by Alexis.Matte Make sure we use the correct LodIndex when importing a new LOD in case a previous LOD import fail. #jira UE-40240 Change 3249477 on 2017/01/06 by Ori.Cohen Fix incorrect warning when moving kinematic objects during simulation. #JIRA UE-40290 Change 3249472 on 2017/01/06 by Andrew.Rodham Sequencer: Undo now works as expected when editing the properties of a key #jira UE-40019 Change 3249390 on 2017/01/06 by Mitchell.Wilson Removing preview meshes with improper path from materials to resolve CIS warnings in landscape mountains sample. #jira UE-40300 Change 3249317 on 2017/01/06 by Alexis.Matte Fix a crash when loading skeletalmesh with no section #jira UE-40249 Change 3249294 on 2017/01/06 by Mitchell.Wilson Updated defaultengine.ini for Match 3 to resolve warnings in CIS. ServerDefaultMap and TransitionMap had invalid paths. #jira UE-40295 Change 3249213 on 2017/01/06 by Chris.Bunner Fixed up logic for windowed/fullscreen output display selection when working with HDR. Now selects the most appropriate display if HDR enabled, else current monitor window is on. FullscreenDisplay commandline functions regardless of HDR support. #jira OR-33525, OR-33536, OR-33540, OR-33520 Change 3249135 on 2017/01/06 by Martin.Wilson Fix root motion issues on additive animations. - Fix scale issue on resetting root bone - Fix loss of root motion when animation is additive. #jira UE-40232 Change 3248522 on 2017/01/05 by Alexis.Matte Fix a crash when reimporting morph target. Also fix a crash when initiating ColorVertexBuffer with NULL value #jira UE-40201 Change 3248271 on 2017/01/05 by Andrew.Rodham Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence #jira UE-40234 Change 3248092 on 2017/01/05 by Ben.Marsh UBT: Remove the [Obsolete] attribute from methods in TargetRules; the [ObsoleteOverride] attribute gives a much better (and more concise) warning with specific instructions on how to resolve it. Change 3248091 on 2017/01/05 by Marcus.Wassmer Tick renderthreadtickables in -onethread to avoid leaks. #jira UE-40248 Change 3248063 on 2017/01/05 by Marc.Audy Route FAudioDevice::StopAllSounds to the audio thread if called on the game thread #jira UE-40243 Change 3247995 on 2017/01/05 by Maciej.Mroz NativizationSummary object is always present. manually merged cl#3247985 from Dev-Blueprints #jira UE-40035 Change 3247873 on 2017/01/05 by Chad.Garyet Adding "Generate QA Labels" buildgraph node and automation script. Port of createNewLabel and createMinimumLabel python scripts into UAT #jira UEB-725 Change 3247855 on 2017/01/05 by Nick.Shin refetch on timed out GET/POST requests #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3247737 on 2017/01/05 by Marc.Audy static mesh component instance data now correclty inherits from pritive component instance data instead of skipping it and inheriting directly from scene component instance data #jira UE-40053 Change 3247723 on 2017/01/05 by mason.seay Asset for suspend cloth bug #jira UE-29618 Change 3247708 on 2017/01/05 by Mitchell.Wilson Updating project settings to disable dbuffer decals to resolve rendering issues in Showdown while using -game -vr #jira UE-40195 Change 3247652 on 2017/01/05 by Martin.Wilson Fixes for animation notifies window -Fix notify not being removed from skeleton -Fix crash where editor is not refreshed after notify removal #jira UE-40154 Change 3247638 on 2017/01/05 by mason.seay Test assets for cloth suspension #jira UE-29618 Change 3247630 on 2017/01/05 by Alexis.Matte Prevent crash when the import fail and we have no staticmesh created #jira UE-40024 Change 3247556 on 2017/01/05 by Ben.Marsh Fix non-unity compile error. Change 3247547 on 2017/01/05 by Jurre.deBaare Crash while using the Delete Button in the HLOD Outliner while a Generated Proxy Mesh is opened in the Static Mesh Editor #fix Unify path for both delete cluster options in the outliner UI #jira UE-40066 Change 3247539 on 2017/01/05 by Benn.Gallagher Fixed serialization crash for simplified skeletal meshes leading to corrupted assets that crash on load after skin weight buffer changes. #jira UE-40199 Change 3247515 on 2017/01/05 by Allan.Bentham Fix inverted planar reflections when mobileLDR Fixed incorrect gamma 2 planar reflection rendering when mobileLDR #jira UE-32868 Change 3247502 on 2017/01/05 by Dmitriy.Dyomin Fixed: Single digit frame rate when sculpting landscape foliage. #jira UE-39532 Change 3247232 on 2017/01/04 by Ben.Marsh Remove private include from public header. Prevents compiling samples from installed build of the engine without private headers. #jira UE-40135, UE-40137, UE-40139, UE-40140, UE-40141, UE-40142, UE-40143, UE-40144 Change 3247002 on 2017/01/04 by Chris.Babcock Changed Vulkan hitchy pipeline log message verbosity #jira UE-38354 #ue4 #android #dontbackcopy Change 3246927 on 2017/01/04 by matt.barnes Updating QAGame content to facilitate UEQATC-2969 #jira UE-29618 Change 3246894 on 2017/01/04 by Mike.Beach Mirroring CL 3245322 from Dev-BP Fixed a crash when implementing a native interface in a BP #jira UE-40155, UE-40203 Change 3246830 on 2017/01/04 by Chris.Bunner Allow AllocGBuffer call when in simple-forward so dummy uniform buffer creation can occur. #jira UE-39756 Change 3246816 on 2017/01/04 by Jon.Nabozny Fix Anim Notifies Tab not opening in Animation Editor. #JIRA UE-40134 Change 3246804 on 2017/01/04 by Ori.Cohen Touch engine file to trigger re-link. #JIRA UE-40156 Change 3246709 on 2017/01/04 by mason.seay Updated map #jira UE-29618 Change 3246606 on 2017/01/04 by Ori.Cohen Fix for sweeps taking too long time (OR-32839). - Exhaustive investigation uncovered apparent numerical problems in this code (when compiling with clang 3.9.x with -ffast-math). - Current solution can result in overshoot for certain trace extents, but they are not expected to be a practical problem in Unreal. - NVidia is aware and will investigate a better solution. #tests Compiled Linux server with the changed PhysX and continuously ran bot matches for about a day. #JIRA UE-40156 Change 3246571 on 2017/01/04 by Marc.Audy Look at the body instance's desired collision enabled value rather than the primitive component's current collision enabled value when determining whether physics state should be created #jira UE-39994 Change 3246527 on 2017/01/04 by tim.gautier QAGame: BP_MediaPlayer now displays the name of the MediaPlayer plugin currently in use during playback #jira UE-29618 Change 3246480 on 2017/01/04 by mason.seay Map update #jira UE-29618 Change 3246470 on 2017/01/04 by Ori.Cohen Guard against infinitely thin geometry which fixes some nans. This showed up as issues in various projects #JIRA UE-00000 Change 3246413 on 2017/01/04 by Jon.Nabozny Cube asset did not have Tri Meshes. Reimported to fix the issue. -- Copied from 3233164 -- #jira UE-39657 Change 3246388 on 2017/01/04 by Jon.Nabozny Set 'p.MoveIgnoreFirstBlockingOverlap' to be enabled by default (3158732). This causes collision behavior to remain unchanged unless people opt in to the new behavior. -- Copied from 3239735 (bot health fixed by a different CL) -- #jira UE-39387 Change 3246352 on 2017/01/04 by Jon.Nabozny Fix FPredictProjectilePathParams to use a valid default value for TraceChannel. This requires the use of a new bool bTraceWithChannel which is enabled by default. -- Copied from 3239765 -- #JIRA UE-39726 Change 3246341 on 2017/01/04 by Ori.Cohen Allow vehicles to inherit from PawnMovementComponent and only use the pawn/ai capabilities when a Pawn owner is used. #JIRA UE-39508 Change 3246178 on 2017/01/04 by Andrew.Rodham Sequencer: When playback stops naturally, the play position is set to the boundary that caused playback to stop (the end if playing forwards, the start if playing backwards) - This is to reconcile the movie scene sequence player with previous behaviour #jira UE-40076 Change 3246102 on 2017/01/04 by Benn.Gallagher Fixed single threaded physics dispatcher triggering checks from clothing when running with a CPU with two or fewer cores. #jira UE-39811 Change 3246100 on 2017/01/04 by Benn.Gallagher Fixed ensure triggered when using root motion with sub instances Fixed crash reinstancing an active anim class that had subinstances #jira UE-39582 #jira UE-39579 Change 3246092 on 2017/01/04 by Marc.Audy PR #3082: Improve comment for UInputComponent (Contributed by Soleone) #jira UE-40098 Change 3246084 on 2017/01/04 by Matthew.Griffin Remove bad files Change 3246076 on 2017/01/04 by Matt.Kuhlenschmidt Fixed all non-editable text properties having a double disabled effect. The text box is read only which prevents edting but still allows copying text from it. This feature had regressed and the disabled effect on top of the read only effect made it too difficult to see the text. #jira UE-39652 Change 3246043 on 2017/01/04 by Steve.Robb Use of CastChecked instead of Cast in implementations of IStructSerializerBackend::WriteProperty. This is both more efficient and will hopefully make it easier to diagnose the issue. #jira UE-39872 Change 3246032 on 2017/01/04 by Martin.Wilson Change FindBoneIndex to FindRawBoneIndex (final bone maps are not built until after all adding is done so they will not be found) #jira UE-40105 Change 3246016 on 2017/01/04 by Andrew.Rodham Editor: Insert/Duplicate/Delete menu on array properties now only closes itself on click, rather than all menus - This allows us to edit such properties on context menus #jira UE-39998 Change 3246005 on 2017/01/04 by Thomas.Sarkanen Fixed asset attachment issues in Skeleton Tree Assets were being attached uniquely, so only one asset could be attached to a bone/socket. However the calling code didnt know that the unique attachment function just gave up, so the item just got added to the bottom of the tree. The attachment filter was not set correctly to allow for bone attatchments, so only sockets could be attached to. The attach parent name was not initialized, so assets could not be deleted one at a time. #jira UE-40040 - With multiple Preview assets on one bone, only one appears in Skeleton Tree #jira UE-40041 - Preview assets appear at the bottom of the skeleton tree Change 3246002 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed actor tick prerequisites not getting set up correctly for master sequences #jira UE-39975 Change 3245979 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed scrubbing audio tracks not working propertly #jira UE-40048 Change 3245978 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed dropping a level onto a level visibility section not marking the track as changed, and not correctly creating a transaction #jira UE-39998 Change 3245977 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed crash caused by lingering persistent evaluation data #jira UE-40064 Change 3245971 on 2017/01/04 by Dmitriy.Dyomin Fixed: Using Set World Origin Location will cause the player pawn to stutter #jira UE-40022 Change 3245725 on 2017/01/03 by Matt.Barnes Further improvments on test assets for UEQATC-2963 #jira UE-29618 Change 3245658 on 2017/01/03 by Arciel.Rekman Linux: fix ARM32 build (UE-39913). #jira UE-39913 (Redoing CL 3240982 from Dev-Platform in Release-4.15) Change 3245577 on 2017/01/03 by Mason.Seay More vehicle updates #jira UE-29618 Change 3245556 on 2017/01/03 by Matt.Barnes Updating test content for UEQATC-2963 #jira UEQATC-2963 Change 3245461 on 2017/01/03 by mason.seay Updating Inertia Tensor Scale to improve Vehicle Handling #jira UE-40013 Change 3245442 on 2017/01/03 by Jeff.Fisher UEVR-495 Assert when switching to 2d mode. sceHmdReprojectionStart failing. -There was a race condition between switching output modes on the render thread and sceHmdReprojectionStart on the RHI thread. The flush fixes that. The reprojection would simply have failed that frame previously in shipping which would not matter much as we are switching output modes anyway. #jira UEVR-495 #review-3245374 Change 3245427 on 2017/01/03 by Jeff.Fisher UEVR-456 check if we are using camera before doing camera disconnected dialog on PSVR -If the tracker is active, but we are tracking nothing (ie we have the morpheus hmd tracking plugin, and started up with it, but switched to 2d mode) don't pop up the camera setup warning until we start trying to track something again. -This is useful for apps that have 2d and vr modes. #jira UEVR-456 #review-3245372 Change 3245329 on 2017/01/03 by mason.seay Level and vehicle tweaks #jira UE-29618 Change 3245275 on 2017/01/03 by Chris.Babcock Added EngineVersion to AndroidManfiest.xml metadata #jira UE-40123 #ue4 #android Change 3245235 on 2017/01/03 by Guillaume.Abadie Cherry picks CL 3234813 from Dev-Rendering: Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3245183 on 2017/01/03 by Chris.Babcock Added missing #undef LOCTEXT_NAMESPACE to some files (contributed by projectgheist) #jira UE-40103 #PR #3085 #ue4 #android Change 3245120 on 2017/01/03 by mason.seay Missed some assets #jira UE-29618 Change 3245116 on 2017/01/03 by mason.seay Mass fucntional test #jira UE-29618 Change 3245049 on 2017/01/03 by Ben.Marsh PR #3086: Fixed ScriptGeneratorPlugin #includes (Contributed by projectgheist) Change 3244924 on 2017/01/03 by Ben.Zeigler #jira UE-40057 Fix regression in public access for SwapPlayerControllers, from GitHub #3072 Change 3244831 on 2017/01/03 by Mitchell.Wilson Fixed hole in collision around level. #jira UE-39576 Change 3244817 on 2017/01/03 by Matthew.Griffin Change check for files being under engine directory to avoid problems with relative paths #jira UE-40096 Change 3244801 on 2017/01/03 by Andrew.Rodham Editor: Fixed color picker not working when opened from a details panel on a context menu - When a color picker is opened from a details panel that's on a context menu, it now opens as a sub menu - Added the ability to find an open menu from a widget path to FSlateApplication #jira UE-39932 Change 3244776 on 2017/01/03 by Matt.Kuhlenschmidt Fix window handle and device context being accessed by scene viewports after the underlying window has been destroyed by the OS. This is an invalid state on linux and using some vr devices. #jira UE-7388 Change 3244672 on 2017/01/03 by Ben.Marsh Search all directories containing universal CRT installations from the registry, rather than assuming that the first one found will contain the universal CRT version we want to use. Attempt to fix issues described in PR #3059. Change 3244668 on 2017/01/03 by Thomas.Sarkanen Added "Reimport Animation" and "Export to FBX" to the animation editor toolbar Options were in the asset menu before. #jira UE-39643 - Missing "Reimport" option for animation assets Change 3244667 on 2017/01/03 by Thomas.Sarkanen Reduced default URO distances in-line with new LOD calculations New values should give (roughly) the same effect as the older values with the older system. #jira UE-39939 - URO LOD distance factors different with the new screen size metric Change 3244654 on 2017/01/03 by Matthew.Griffin Added functionality to specify Loading Phase for plugin templates Changed Blueprint Library Template so that it loads pre loading screen and can be linked correctly in blueprints that use it #jira UE-38826 Change 3244631 on 2017/01/03 by Dmitriy.Dyomin Fixed: TM_Landscape_LOD Folder does not Live Update contents after generating LODs with Create Per Package Asset #jira UE-37368 Change 3244548 on 2017/01/02 by Jack.Porter Fix for Post-process Materials rendering incorrectly in editor mobile preview after viewport is resized #jira UE-39905 Change 3244389 on 2016/12/30 by Phillip.Kavan [UE-39816] Fix broken pin links caused by renaming interface function input/output parameters prior to compiling the interface, but after renaming the function itself. Mirrored from //UE4/Dev-Blueprints (CL# 3244388). #jira UE-39816 Change 3244248 on 2016/12/29 by laz.matech Saved the new sublevel in the persistent level and set it to hidden by default #jira UE-29618 Change 3244213 on 2016/12/29 by laz.matech Added a sublevel to QA-Sequencer map #jira UE-29618 Change 3243857 on 2016/12/27 by samuel.proctor Altered Container asset to have proper console input #jira UE-29618 Change 3243852 on 2016/12/27 by Mason.Seay Forgot config file #jira UE-29618 Change 3243847 on 2016/12/27 by mason.seay Improved mobile input #jira UE-29618 Change 3243536 on 2016/12/24 by Phillip.Kavan [UE-39944] Extend the GetClassDefaults node to include output pin exceptions for TSet/TMap properties (i.e. mirror safeguards already in place for TArray). Mirrored from //UE4/Dev-Blueprints (CL# 3243210). #jira UE-39944 Change 3243535 on 2016/12/24 by Phillip.Kavan [UE-39816] Renaming interface input/output parameters will no longer cause broken pin links at interface function call sites in Blueprints that are currently loaded. Mirrored from //UE4/Dev-Blueprints (CL# 3243207). #jira UE-39816 Change 3243534 on 2016/12/24 by Phillip.Kavan [UE-39733] Fix incorrect graph pin value display names for user-defined enum types. Mirrored from //UE4/Dev-Blueprints (CL# 3239965). #jira UE-39733 Change 3243532 on 2016/12/24 by Phillip.Kavan [UE-39854] Fix nativized assets build error when there are no native code dependencies. Mirrored from //UE4/Dev-Blueprints (CL# 3239778). #jira UE-39854 Change 3243529 on 2016/12/24 by Phillip.Kavan [UE-38999] Dump component tree node hierarchy to the output log on error state during widget generation. Mirrored from //UE4/Dev-Blueprints (CL# 3239289). #jira UE-38999 Change 3243442 on 2016/12/23 by mason.seay QAGame cleanup - Replacing copy pose from mesh test assets #jira UE-29618 Change 3243215 on 2016/12/22 by Dmitriy.Dyomin Fixed: Switching to ES2 feature level preview renders black in editor #jira UE-40009 Change 3243185 on 2016/12/22 by Ryan.Vance #jira UEVR-478 Integrating 3235308 Mono changes from DevVR. Change 3243183 on 2016/12/22 by Ryan.Vance #jira UEVR-455 Integrating 3243173 post present call back implementation from 4.14.1 Change 3243182 on 2016/12/22 by Ryan.Vance #jira UE-39269 Working around a nullptr deref in the Oculus runtime. Change 3243153 on 2016/12/22 by mason.seay WIP map update #jira UE-29618 Change 3243128 on 2016/12/22 by andrew.porter QAGame: Adding Actor Sequence test content for a crash. #jira UE-29618 Change 3243117 on 2016/12/22 by Jeff.Fisher UE-34004 GitHub 2659 : Implement support for OpenVR controller roles. -Rather than assigning unreal hands to controllers in the order the controllers are connected assign unreal hands to match the ones the API is using. -We now defer setting up controllers that are disconnected. This lets connected controllers, that may have hand preference from steam, occupy their desired hands first. If a controller is connected later and does not have a role it is assigned to an unoccupied hand or to the right hand. -This can still end up ignoring role in the following circumstance (and I can get it to do this): get one controller to prefer'right' and the other to have no preference. Power off the 'right' prefering controller. Start the game with only the no-preference controller on. The game will put that controller in the right slot, because the api gives it no other hints. Then power on the controller that preferred 'right'. That controller will now be assigned left, because right is occupied. I don't see a way around that without the ability to switch which hand a controller is associated with at runtime. -This does not yet handle starting with 2 controllers, disconnecting one, then connecting a third controller well. That did not work before either. A new Jira was created for that. #2659 #jira UE-34004 #review-3231154 Change 3243093 on 2016/12/22 by mason.seay Some tweaks to vehicle levels #jira UE-29618 Change 3243084 on 2016/12/22 by andrew.porter QAGame: Cleaned up Sequencer_OverrideBindings #jira UE-29618 Change 3243009 on 2016/12/22 by andrew.porter QAGame: Renaming actor in Sequencer_OverrideBindings. #jira UE-29618 Change 3243003 on 2016/12/22 by andrew.porter QAGame: Removing override bindings from level sequence #jira UE-29618 Change 3242996 on 2016/12/22 by andrew.porter QAGame: Slight tweak to QA-Sequencer. #jira UE-29618 Change 3242982 on 2016/12/22 by Marc.Audy Properly reenable stats sounds in both game and level editor #jira UE-40015 Change 3242959 on 2016/12/22 by mason.seay Test map for vehicles and moving meshes #jira UE-29618 Change 3242934 on 2016/12/22 by andrew.porter QAGame: Adding test content to QA-Sequencer for Override Bindings #jira UE-29618 Change 3242870 on 2016/12/22 by Mason.Seay QAGame footprint reduction: Clearing out content (were in for old bug reports) #jira UE-29618 Change 3242799 on 2016/12/22 by tim.gautier QAGame - Adding the following assets for Sequencer Event Track testing: -TM-Sequencer_EventTrack + BuildData -QA_LightStruct -Sequencer_EventTrack #jira UE-29618 Change 3242792 on 2016/12/22 by samuel.proctor Correcting Container test asset for proper output #jira UE-29618 Change 3242727 on 2016/12/22 by Dmitriy.Dyomin Fixed: LoadLevelIntstance returns a reference that can't be used to send an interface message #jira UE-40005 Change 3242666 on 2016/12/22 by Dmitriy.Dyomin Fixed: Packaging Android app for Mali Graphics Debugger v4.3.0 fails #jira UE-39534 Change 3242373 on 2016/12/21 by Ori.Cohen Allow vehicles to override inertia tensor after any mass properties have changed. #JIRA UE-39566 Change 3242323 on 2016/12/21 by Josh.Adams - Somehow my last change just got completely lost in the edigrate shuffle. Or something. I have no idea! Rdoing it #jira UE-39966 Change 3242286 on 2016/12/21 by mason.seay Vehicle Assets and Maps #jira UE-29618 Change 3242284 on 2016/12/21 by Marc.Audy Fix "stat sounds" not working after PIE completes and a new one is begun #jira UE-32743 #jira UE-39511 Change 3242281 on 2016/12/21 by Ori.Cohen Fix multi select being very slow in phat #JIRA UE-39559 Change 3242229 on 2016/12/21 by Ben.Marsh Fixup workspace for building PhysX. Change 3242227 on 2016/12/21 by Marc.Audy Properly update listener position for stat sounds #jira UE-38850 Change 3242218 on 2016/12/21 by Ori.Cohen Fix physx html5 compilation APEX issue. #JIRA UE-39566 Change 3242174 on 2016/12/21 by Ori.Cohen Fix incorrect moment of inertia for convex elements with translation. #JIRA UE-39566 Change 3242145 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix for vehicle stability #JIRA UE-38710 Change 3242139 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix: Fix crash when setting collision trace in construction script. #JIRA UE-39341 Change 3242088 on 2016/12/21 by Alexis.Matte Fix the drag and drop material on level instance to drop on the correct material slot Fix the serialization of the staticmesh property FMeshSectionInfoMap #jira UE-39952 Change 3242081 on 2016/12/21 by Andrew.Rodham Sequencer: Make details view focused when resetting inner struct contents to ensure that focus path is valid. #jira UE-39851 Change 3242079 on 2016/12/21 by Andrew.Rodham Sequencer: Evaluation templates are now only fully rebuilt in PIE, and will not re-cycle track identifiers - This addresses issues with newly compiled tracks recycling the persistent data of old stale tracks. - This commit also ensures we don't fully rebuild templates in the editor when in Sequencer #jira UE-39882 Change 3242078 on 2016/12/21 by Andrew.Rodham Sequencer: Fixed crash when deactivating a section in sequencer #jira UE-39880 Change 3242026 on 2016/12/21 by Josh.Adams - Fixed compile errors in tools after NVNRHI move #jira UE-39966 Change 3241994 on 2016/12/21 by andrew.porter QAGame: Disabled auto play on Sequencer_AnimNotify. #jira UE-29618 Change 3241989 on 2016/12/21 by Mitchell.Wilson Resolving CIS warnings in Content examples. Fixed up redirectors. Moved a texture from developer folder into project and relinked in POM_Debug material. Fixed up BP Commentary Box which was failing to compile. Updated spawn rate on Pulse Ring so it works as intended. #jira UE-39984 Change 3241986 on 2016/12/21 by mason.seay Vehicle Landscape Test map (mainly for crash investigation) #jira UE-29618 Change 3241914 on 2016/12/21 by Josh.Adams - Removed invalid and confusing .ini settings #jira UE-39982 Change 3241902 on 2016/12/21 by Josh.Adams - Moved NVNRHI stuff out of RHI.Build.cs #jira UE-39966 Change 3241889 on 2016/12/21 by andrew.porter QAGame: Added new level sequence to QA-Sequencer level #jira UE-29618 Change 3241884 on 2016/12/21 by Alexis.Matte Make sure the color grading cursor follow the mouse by using the exponent value when painting the cursor. #jira UE-39834 Change 3241869 on 2016/12/21 by andrew.porter QAGame: Adding test content for Sequencer Animation Notifies #jira UE-29618 Change 3241809 on 2016/12/21 by Chris.Wood Fix non-unity build errors in UnrealWatchdog. [UE-39940] - GitHub 3054 : Added EngineBuildSettings.h to UnrealWatchdog.cpp PR #3054: Added EngineBuildSettings.h to UnrealWatchdog.cpp (Contributed by ryanjon2040) #jira UE-39940 Change 3241806 on 2016/12/21 by Marc.Audy Don't unload and then reload streaming levels that are marked to be hidden. #jira UE-39883 Change 3241802 on 2016/12/21 by Marc.Audy Add new object flag RF_NeedInitialization to indicate that ~FObjectInitalizer and PostInitProperties have not been executed for the object Do not allow Modify calls on Objects that have not been initialized #jira UE-39731 Change 3241790 on 2016/12/21 by Marc.Audy Don't rerun construction scripts when an actor has seamless traveled from another level #jira UE-39699 Change 3241789 on 2016/12/21 by Marc.Audy Check Owner has a valid world before trying to access Scene (4.14.2) #jira UE-39560 Change 3241786 on 2016/12/21 by Marc.Audy Fixed crash when seamless travelling in PIE from levels other than the current editor level with a streaming sublevel shared with the current editor level #jira UE-39407 Change 3241781 on 2016/12/21 by Mitchell.Wilson Fixed up redirectors for SkeletalMesh and Personal Walkthroughs. #jira UE-30953 Change 3241747 on 2016/12/21 by mason.seay Tag Query test map and assets #jira UE-29618 Change 3240938 on 2016/12/20 by Ben.Marsh Remaking QFE fixes from 4.14 branch. Change 3240740 on 2016/12/20 by Ben.Marsh Update branch name for analytics. [CL 3272229 by Matthew Griffin in Main branch]
2017-01-25 16:23:41 -05:00
}
case GL_TEXTURE_3D:
case GL_TEXTURE_2D_ARRAY:
case GL_TEXTURE_CUBE_MAP:
case GL_TEXTURE_CUBE_MAP_ARRAY:
FOpenGL::FramebufferTexture(GL_FRAMEBUFFER, DepthStencilTarget->Attachment, DepthStencilTarget->GetResource(), 0);
break;
default:
FOpenGL::FramebufferRenderbuffer(GL_FRAMEBUFFER, DepthStencilTarget->Attachment, GL_RENDERBUFFER, DepthStencilTarget->GetResource());
break;
}
}
if (FirstNonzeroRenderTarget != -1)
{
FOpenGL::ReadBuffer(GL_COLOR_ATTACHMENT0 + FirstNonzeroRenderTarget);
FOpenGL::DrawBuffer(GL_COLOR_ATTACHMENT0 + FirstNonzeroRenderTarget);
}
else
{
FOpenGL::ReadBuffer(GL_NONE);
FOpenGL::DrawBuffer(GL_NONE);
}
// End frame can bind NULL / NULL
// An FBO with no attachments is framebuffer incomplete (INCOMPLETE_MISSING_ATTACHMENT)
// In this case just delete the FBO and map in the default
// In GL 4.x, NULL/NULL is valid and can be done =by specifying a default width/height
if ( FirstNonzeroRenderTarget == -1 && !DepthStencilTarget )
{
glDeleteFramebuffers( 1, &Framebuffer);
Framebuffer = 0;
glBindFramebuffer(GL_FRAMEBUFFER, Framebuffer);
}
FOpenGL::CheckFrameBuffer();
GetOpenGLFramebufferCache().Add(FOpenGLFramebufferKey(NumSimultaneousRenderTargets, RenderTargets, ArrayIndices, MipmapLevels, DepthStencilTarget, PlatformOpenGLCurrentContext(PlatformDevice)), Framebuffer+1);
return Framebuffer;
}
void ReleaseOpenGLFramebuffers(FRHITexture* TextureRHI)
{
VERIFY_GL_SCOPE();
const FOpenGLTexture* Texture = GetOpenGLTextureFromRHITexture(TextureRHI);
if (Texture)
{
for (FOpenGLFramebufferCache::TIterator It(GetOpenGLFramebufferCache()); It; ++It)
{
bool bPurgeFramebuffer = false;
FOpenGLFramebufferKey Key = It.Key();
const FOpenGLTexture* DepthStencilTarget = Key.GetDepthStencilTarget();
if( DepthStencilTarget && DepthStencilTarget->Target == Texture->Target && DepthStencilTarget->GetRawResourceName() == Texture->GetRawResourceName() )
{
bPurgeFramebuffer = true;
}
else
{
for( uint32 RenderTargetIndex = 0; RenderTargetIndex < MaxSimultaneousRenderTargets; ++RenderTargetIndex )
{
const FOpenGLTexture* RenderTarget = Key.GetRenderTarget(RenderTargetIndex);
if( RenderTarget && RenderTarget->Target == Texture->Target && RenderTarget->GetRawResourceName() == Texture->GetRawResourceName() )
{
bPurgeFramebuffer = true;
break;
}
}
}
if( bPurgeFramebuffer )
{
GLuint FramebufferToDelete = It.Value()-1;
check(FramebufferToDelete > 0);
FOpenGLDynamicRHI::Get().PurgeFramebufferFromCaches( FramebufferToDelete );
glDeleteFramebuffers( 1, &FramebufferToDelete );
It.RemoveCurrent();
}
}
}
}
void FOpenGLDynamicRHI::PurgeFramebufferFromCaches( GLuint Framebuffer )
{
VERIFY_GL_SCOPE();
if( Framebuffer == PendingState.Framebuffer )
{
PendingState.Framebuffer = 0;
FMemory::Memset(PendingState.RenderTargets, 0, sizeof(PendingState.RenderTargets));
FMemory::Memset(PendingState.RenderTargetMipmapLevels, 0, sizeof(PendingState.RenderTargetMipmapLevels));
FMemory::Memset(PendingState.RenderTargetArrayIndex, 0, sizeof(PendingState.RenderTargetArrayIndex));
PendingState.DepthStencil = 0;
PendingState.bFramebufferSetupInvalid = true;
}
if( Framebuffer == SharedContextState.Framebuffer )
{
SharedContextState.Framebuffer = -1;
}
if( Framebuffer == RenderingContextState.Framebuffer )
{
RenderingContextState.Framebuffer = -1;
}
}
void FOpenGLDynamicRHI::RHICopyToResolveTarget(FRHITexture* SourceTextureRHI, FRHITexture* DestTextureRHI, const FResolveParams& ResolveParams)
{
if (!SourceTextureRHI || !DestTextureRHI)
{
// no need to do anything (silently ignored)
return;
}
FOpenGLTexture* SourceTexture = GetOpenGLTextureFromRHITexture(SourceTextureRHI);
FOpenGLTexture* DestTexture = GetOpenGLTextureFromRHITexture(DestTextureRHI);
if (SourceTexture != DestTexture)
{
const FRHITextureDesc& SrcDesc = SourceTexture->GetDesc();
const FRHITextureDesc& DstDesc = DestTexture->GetDesc();
VERIFY_GL_SCOPE();
check(GMaxRHIFeatureLevel >= ERHIFeatureLevel::SM5 || ResolveParams.SourceArrayIndex == 0);
check(GMaxRHIFeatureLevel >= ERHIFeatureLevel::SM5 || ResolveParams.DestArrayIndex == 0);
const bool bSrcCubemap = SourceTextureRHI->GetTextureCube() != NULL;
const bool bDestCubemap = DestTextureRHI->GetTextureCube() != NULL;
uint32 DestIndex = ResolveParams.DestArrayIndex * (bDestCubemap ? 6 : 1) + (bDestCubemap ? uint32(ResolveParams.CubeFace) : 0);
uint32 SrcIndex = ResolveParams.SourceArrayIndex * (bSrcCubemap ? 6 : 1) + (bSrcCubemap ? uint32(ResolveParams.CubeFace) : 0);
FIntRect SrcRect(ResolveParams.Rect.X1, ResolveParams.Rect.Y1, ResolveParams.Rect.X2, ResolveParams.Rect.Y2);
if (SrcRect.IsEmpty())
{
// Empty rect mans that the entire source is to be copied. Note that we can't use ResolveParams.Rect.IsValid(), because it
// returns false if the rectangle is "inside out" (e.g. X1 > X2), and we want to perform flipping when that's the case.
SrcRect.Min.X = 0;
SrcRect.Min.Y = 0;
SrcRect.Max.X = SrcDesc.Extent.X;
SrcRect.Max.Y = SrcDesc.Extent.Y;
SrcRect.Max.X = FMath::Max<int32>(1, SrcRect.Max.X >> ResolveParams.MipIndex);
SrcRect.Max.Y = FMath::Max<int32>(1, SrcRect.Max.Y >> ResolveParams.MipIndex);
}
FIntRect DestRect(ResolveParams.DestRect.X1, ResolveParams.DestRect.Y1, ResolveParams.DestRect.X2, ResolveParams.DestRect.Y2);
if(DestRect.IsEmpty())
{
DestRect.Min.X = 0;
DestRect.Min.Y = 0;
DestRect.Max.X = DstDesc.Extent.X;
DestRect.Max.Y = DstDesc.Extent.Y;
DestRect.Max.X = FMath::Max<int32>(1, DestRect.Max.X >> ResolveParams.MipIndex);
DestRect.Max.Y = FMath::Max<int32>(1, DestRect.Max.Y >> ResolveParams.MipIndex);
}
GPUProfilingData.RegisterGPUWork();
const uint32 MipmapLevel = ResolveParams.MipIndex;
const bool bTrueBlit = !SourceTextureRHI->IsMultisampled()
&& !DestTextureRHI->IsMultisampled()
&& SourceTextureRHI->GetFormat() == DestTextureRHI->GetFormat()
&& SrcRect.Size() == DestRect.Size()
&& SrcRect.Width() > 0
&& SrcRect.Height() > 0
&& SourceTexture->Target == DestTexture->Target // glCopyImageSubData() doesn't like copying from a texture to a renderbuffer on Android
;
if ( !bTrueBlit || !FOpenGL::SupportsCopyImage() )
{
// Color buffers can be GL_NONE for attachment purposes if they aren't used as render targets
const bool bIsColorBuffer = SourceTexture->Attachment != GL_DEPTH_STENCIL_ATTACHMENT
&& SourceTexture->Attachment != GL_DEPTH_ATTACHMENT;
check( bIsColorBuffer || (SrcIndex == 0 && DestIndex == 0));
check( bIsColorBuffer || MipmapLevel == 0);
GLuint SrcFramebuffer = bIsColorBuffer ?
GetOpenGLFramebuffer(1, &SourceTexture, &SrcIndex, &MipmapLevel, NULL) :
GetOpenGLFramebuffer(0, NULL, NULL, NULL, SourceTexture);
GLuint DestFramebuffer = bIsColorBuffer ?
GetOpenGLFramebuffer(1, &DestTexture, &DestIndex, &MipmapLevel, NULL) :
GetOpenGLFramebuffer(0, NULL, NULL, NULL, DestTexture);
glBindFramebuffer(UGL_DRAW_FRAMEBUFFER, DestFramebuffer);
FOpenGL::DrawBuffer(bIsColorBuffer ? GL_COLOR_ATTACHMENT0 : GL_NONE);
glBindFramebuffer(UGL_READ_FRAMEBUFFER, SrcFramebuffer);
FOpenGL::ReadBuffer(bIsColorBuffer ? GL_COLOR_ATTACHMENT0 : GL_NONE);
// ToDo - Scissor and possibly color mask can impact blits
// These should be disabled
GLbitfield Mask = GL_NONE;
if (bIsColorBuffer)
{
Mask = GL_COLOR_BUFFER_BIT;
}
else if (SourceTexture->Attachment == GL_DEPTH_ATTACHMENT)
{
Mask = GL_DEPTH_BUFFER_BIT;
}
else
{
Mask = GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT;
}
FOpenGL::BlitFramebuffer(
SrcRect.Min.X, SrcRect.Min.Y, SrcRect.Max.X, SrcRect.Max.Y,
DestRect.Min.X, DestRect.Min.Y, DestRect.Max.X, DestRect.Max.Y,
Mask,
GL_NEAREST
);
}
else
{
// CopyImageSubData seems like a better analog to what UE wants in most cases
// It has no interactions with any other state, and there is no filtering/conversion
// It does not support MSAA resolves though
FOpenGL::CopyImageSubData( SourceTexture->GetResource(),
SourceTexture->Target,
MipmapLevel,
SrcRect.Min.X,
SrcRect.Min.Y,
SrcIndex,
DestTexture->GetResource(),
DestTexture->Target,
MipmapLevel,
DestRect.Min.X,
DestRect.Min.Y,
DestIndex,
SrcRect.Width(),
SrcRect.Height(),
1);
}
// For CPU readback resolve targets we should issue the resolve to the internal PBO immediately.
// This makes any subsequent locking of that texture much cheaper as it won't have to stall on a pixel pack op.
bool bLockableTarget = DestTextureRHI->GetTexture2D() && EnumHasAnyFlags(DestTextureRHI->GetFlags(), TexCreate_CPUReadback) && !EnumHasAnyFlags(DestTextureRHI->GetFlags(), TexCreate_RenderTargetable|TexCreate_DepthStencilTargetable) && !DestTextureRHI->IsMultisampled();
if(bLockableTarget && !ResolveParams.Rect.IsValid())
{
DestTexture->Resolve(MipmapLevel, DestIndex);
}
GetContextStateForCurrentContext().Framebuffer = (GLuint)-1;
}
else
{
// no need to do anything (silently ignored)
}
}
void FOpenGLDynamicRHI::ReadSurfaceDataRaw(FOpenGLContextState& ContextState, FRHITexture* TextureRHI,FIntRect Rect,TArray<uint8>& OutData, FReadSurfaceDataFlags InFlags)
{
VERIFY_GL_SCOPE();
FOpenGLTexture* Texture = GetOpenGLTextureFromRHITexture(TextureRHI);
if( !Texture)
{
return; // just like in D3D11
}
GLuint FramebufferToDelete = 0;
GLuint RenderbufferToDelete = 0;
const FOpenGLTextureFormat& GLFormat = GOpenGLTextureFormats[TextureRHI->GetFormat()];
bool bFloatFormat = false;
bool bUnsupportedFormat = false;
bool bDepthFormat = false;
bool bDepthStencilFormat = false;
switch( TextureRHI->GetFormat() )
{
case PF_DepthStencil:
bDepthStencilFormat = true;
// pass-through
case PF_ShadowDepth:
case PF_D24:
bDepthFormat = true;
break;
case PF_A32B32G32R32F:
case PF_FloatRGBA:
case PF_FloatRGB:
case PF_R32_FLOAT:
case PF_G16R16F:
case PF_G16R16F_FILTER:
case PF_G32R32F:
case PF_R16F:
case PF_R16F_FILTER:
case PF_FloatR11G11B10:
bFloatFormat = true;
break;
case PF_DXT1:
case PF_DXT3:
case PF_DXT5:
case PF_UYVY:
case PF_BC5:
case PF_PVRTC2:
case PF_PVRTC4:
case PF_ATC_RGB:
case PF_ATC_RGBA_E:
case PF_ATC_RGBA_I:
bUnsupportedFormat = true;
break;
default: // the rest is assumed to be integer formats with one or more of ARG and B components in OpenGL
break;
}
if( bUnsupportedFormat )
{
#if UE_BUILD_DEBUG
check(0);
#endif
return;
}
check( !bDepthFormat || FOpenGL::SupportsDepthStencilReadSurface() );
check( !bFloatFormat || FOpenGL::SupportsFloatReadSurface() );
const GLenum Attachment = bDepthFormat ? (bDepthStencilFormat ? GL_DEPTH_STENCIL_ATTACHMENT : GL_DEPTH_ATTACHMENT) : GL_COLOR_ATTACHMENT0;
const bool bIsColorBuffer = (Texture->Attachment == GL_COLOR_ATTACHMENT0) || (Texture->Attachment == 0);
const uint32 MipmapLevel = InFlags.GetMip();
GLuint SourceFramebuffer = bIsColorBuffer ? GetOpenGLFramebuffer(1, &Texture, NULL, &MipmapLevel, NULL) : GetOpenGLFramebuffer(0, NULL, NULL, NULL, Texture);
if (TextureRHI->IsMultisampled())
{
// OpenGL doesn't allow to read pixels from multisample framebuffers, we need a single sample copy
glGenFramebuffers(1, &FramebufferToDelete);
glBindFramebuffer(GL_FRAMEBUFFER, FramebufferToDelete);
GLuint Renderbuffer = 0;
glGenRenderbuffers(1, &RenderbufferToDelete);
glBindRenderbuffer(GL_RENDERBUFFER, RenderbufferToDelete);
glRenderbufferStorage(GL_RENDERBUFFER, GLFormat.InternalFormat[false], Texture->GetSizeX(), Texture->GetSizeY());
glBindRenderbuffer(GL_RENDERBUFFER, 0);
glFramebufferRenderbuffer(GL_FRAMEBUFFER, Attachment, GL_RENDERBUFFER, RenderbufferToDelete);
FOpenGL::CheckFrameBuffer();
glBindFramebuffer(UGL_READ_FRAMEBUFFER, SourceFramebuffer);
FOpenGL::BlitFramebuffer(
0, 0, Texture->GetSizeX(), Texture->GetSizeY(),
0, 0, Texture->GetSizeX(), Texture->GetSizeY(),
(bDepthFormat ? (bDepthStencilFormat ? (GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT) : GL_DEPTH_BUFFER_BIT) : GL_COLOR_BUFFER_BIT),
GL_NEAREST
);
SourceFramebuffer = FramebufferToDelete;
}
uint32 SizeX = Rect.Width();
uint32 SizeY = Rect.Height();
OutData.Empty( SizeX * SizeY * sizeof(FColor) );
uint8* TargetBuffer = (uint8*)&OutData[OutData.AddUninitialized(SizeX * SizeY * sizeof(FColor))];
glBindFramebuffer(UGL_READ_FRAMEBUFFER, SourceFramebuffer);
FOpenGL::ReadBuffer( (!bDepthFormat && !bDepthStencilFormat && !SourceFramebuffer) ? GL_BACK : Attachment);
glPixelStorei(GL_PACK_ALIGNMENT, 1);
if( bDepthFormat )
{
// Get the depth as luminosity, with non-transparent alpha.
// If depth values are between 0 and 1, keep them, otherwise rescale them linearly so they fit within 0-1 range
int32 DepthValueCount = SizeX * SizeY;
int32 FloatDepthDataSize = sizeof(float) * DepthValueCount;
float* FloatDepthData = (float*)FMemory::Malloc( FloatDepthDataSize );
glReadPixels(Rect.Min.X, Rect.Min.Y, SizeX, SizeY, GL_DEPTH_COMPONENT, GL_FLOAT, FloatDepthData );
// Determine minimal and maximal float value present in received data
float MinValue = FLT_MAX;
float MaxValue = FLT_MIN;
float* DataPtr = FloatDepthData;
for( int32 DepthValueIndex = 0; DepthValueIndex < DepthValueCount; ++DepthValueIndex, ++DataPtr )
{
if( *DataPtr < MinValue )
{
MinValue = *DataPtr;
}
if( *DataPtr > MaxValue )
{
MaxValue = *DataPtr;
}
}
// If necessary, rescale the data.
if( ( MinValue < 0.f ) || ( MaxValue > 1.f ) )
{
DataPtr = FloatDepthData;
float RescaleFactor = MaxValue - MinValue;
for( int32 DepthValueIndex = 0; DepthValueIndex < DepthValueCount; ++DepthValueIndex, ++DataPtr )
{
*DataPtr = ( *DataPtr - MinValue ) / RescaleFactor;
}
}
// Convert the data into rgba8 buffer
DataPtr = FloatDepthData;
uint8* TargetPtr = TargetBuffer;
for( int32 DepthValueIndex = 0; DepthValueIndex < DepthValueCount; ++DepthValueIndex )
{
uint8 Value = (uint8)( *DataPtr++ * 255.0f );
*TargetPtr++ = Value;
*TargetPtr++ = Value;
*TargetPtr++ = Value;
*TargetPtr++ = 255;
}
FMemory::Free( FloatDepthData );
}
else if( bFloatFormat )
{
bool bLinearToGamma = InFlags.GetLinearToGamma();
// Determine minimal and maximal float value present in received data. Treat alpha separately.
int32 PixelComponentCount = 4 * SizeX * SizeY;
int32 FloatBGRADataSize = sizeof(float) * PixelComponentCount;
float* FloatBGRAData = (float*)FMemory::Malloc( FloatBGRADataSize );
if ( FOpenGL::SupportsBGRA8888() )
{
glReadPixels(Rect.Min.X, Rect.Min.Y, SizeX, SizeY, GL_BGRA, GL_FLOAT, FloatBGRAData );
Copying //Ocean/Main to //UE4/Dev-Main (Source: //Ocean/Main @ 3755227) #lockdown Nick.Penwarden #rb none ======================== MAJOR FEATURES + CHANGES ======================== Change 3754304 by Chris.Phillips #ue4: Fix for crash that occurred when seeking past the end of an archive (#jira OCN-8990). Change 3748500 by josh.jensen Fixed the round() function hack shader to determine whether the shader needs mediump or highp The shader fails to compile on some Android devices, because the precision keyword follows the round() definitions. Change 3747950 by Brian.Zaugg Exposed the virtual keyboard dismiss action to UMG. Change 3744282 by Brian.Zaugg Fix for failed engine check caused by GSystemResolution getting out of sync with actual device resolution / orientation. Change 3739717 by Brian.Zaugg Fix renderer compile errors in Mac nonunity build that started with Ocean's last integration from Main. Change 3738008 by Chad.Garyet changing lockfile still waiting warning to a regular log message Change 3729582 by Brian.Zaugg Fix for large Metal texture memory leak when opening card packs. (And any other time the size of the static texture heaps is exceeded.) Don't release a dynamic heap until it is completely drained. Change 3722096 by josh.jensen Prevented an unnecessary red<->blue swap in FVulkanDynamicRHI::RHIReadSurfaceData() when reading back a surface in VK_FORMAT_R16G16B16A16_SFLOAT format Change 3718183 by josh.jensen Fixed ES2 issue reading from a render target in float format for BGRA8888 when the glReadPixels() call fails Change 3690830 by Brian.Zaugg Default r.MetalHullParameterSize and r.MetalDomainParameterSize to 0. Saves 20 MB on iOS. Change 3670184 by Chris.Phillips Added ENGINE_API to UTexture2D::GetMipData(). Function was accessible is single executable stand-alone builds, but not in Editor for use when running PIE. Change 3668970 by josh.jensen Provided an implementation of round() under GLES2 when the shader compiler does not provide it Change 3624855 by josh.jensen Fixed issue where FOpenGLDynamicRHI::RHISetRenderTargetsAndClear() would crash when the render target did not have a color binding This reproduced in a number of circumstances, but it was most common with tonemap postprocessing on Android for a particular title. Change 3693739 by Brian.Zaugg Moved the hull and domain shader parameter size change from BaseDeviceProfiles to DefaultDeviceProfiles. Change 3655434 by James.Brinkerhoff Adding a function to set the delay of a particle system dynamically Change 3605036 by Brian.Zaugg Track opened pak files. Console command "DumpOpenedFiles" print the list. [CL 3764500 by James Brinkerhoff in Main branch]
2017-11-17 16:39:23 -05:00
GLenum Error = glGetError();
if (Error != GL_NO_ERROR)
{
glReadPixels(Rect.Min.X, Rect.Min.Y, SizeX, SizeY, GL_RGBA, GL_FLOAT, FloatBGRAData );
Error = glGetError();
if (Error == GL_NO_ERROR)
{
float* FloatDataPtr = FloatBGRAData;
float* FloatDataPtrEnd = FloatBGRAData + PixelComponentCount;
while (FloatDataPtr != FloatDataPtrEnd)
{
float Temp = FloatDataPtr[0];
FloatDataPtr[0] = FloatDataPtr[2];
FloatDataPtr[2] = Temp;
FloatDataPtr += 4;
}
}
}
}
else
{
glReadPixels(Rect.Min.X, Rect.Min.Y, SizeX, SizeY, GL_RGBA, GL_FLOAT, FloatBGRAData );
}
// Determine minimal and maximal float values present in received data. Treat each component separately.
float MinValue[4] = { 0.0f, 0.0f, 0.0f, 0.0f };
float MaxValue[4] = { 1.0f, 1.0f, 1.0f, 1.0f };
float* DataPtr = FloatBGRAData;
for( int32 PixelComponentIndex = 0; PixelComponentIndex < PixelComponentCount; ++PixelComponentIndex, ++DataPtr )
{
int32 ComponentIndex = PixelComponentIndex % 4;
MinValue[ComponentIndex] = FMath::Min<float>(*DataPtr,MinValue[ComponentIndex]);
MaxValue[ComponentIndex] = FMath::Max<float>(*DataPtr,MaxValue[ComponentIndex]);
}
// Convert the data into BGRA8 buffer
DataPtr = FloatBGRAData;
uint8* TargetPtr = TargetBuffer;
float RescaleFactor[4] = { MaxValue[0] - MinValue[0], MaxValue[1] - MinValue[1], MaxValue[2] - MinValue[2], MaxValue[3] - MinValue[3] };
for( int32 PixelIndex = 0; PixelIndex < PixelComponentCount / 4; ++PixelIndex )
{
float R = (DataPtr[2] - MinValue[2]) / RescaleFactor[2];
float G = (DataPtr[1] - MinValue[1]) / RescaleFactor[1];
float B = (DataPtr[0] - MinValue[0]) / RescaleFactor[0];
float A = (DataPtr[3] - MinValue[3]) / RescaleFactor[3];
if ( !FOpenGL::SupportsBGRA8888() )
{
Swap<float>( R,B );
}
FColor NormalizedColor = FLinearColor( R,G,B,A ).ToFColor(bLinearToGamma);
FMemory::Memcpy(TargetPtr,&NormalizedColor,sizeof(FColor));
DataPtr += 4;
TargetPtr += 4;
}
FMemory::Free( FloatBGRAData );
}
#if PLATFORM_ANDROID
else
{
// Flip texture data only for render targets, textures loaded from disk have Attachment set to 0 and don't need flipping.
const bool bFlipTextureData = Texture->Attachment != 0;
GLubyte* RGBAData = TargetBuffer;
if (bFlipTextureData)
{
// OpenGL ES is limited in what it can do with ReadPixels
const int32 PixelComponentCount = 4 * SizeX * SizeY;
const int32 RGBADataSize = sizeof(GLubyte) * PixelComponentCount;
RGBAData = (GLubyte*)FMemory::Malloc(RGBADataSize);
}
glReadPixels(Rect.Min.X, Rect.Min.Y, SizeX, SizeY, GL_RGBA, GL_UNSIGNED_BYTE, RGBAData);
Copying //UE4/Dev-Mobile to //UE4/Dev-Main (Source: //UE4/Dev-Mobile @ 3056055) #lockdown Nick.Penwarden #rb None ========================== MAJOR FEATURES + CHANGES ========================== Change 3011102 on 2016/06/13 by Steve.Cano After taking a screenshot using glReadPixels, transfer the data to the target buffer from bottom row up to fix the "upside-down" render that OpenGL does. Confirmed with QA (owen.stupka_volt) that this does not appear to be happening on iOS (non-metal devices, inclusion of iOS in write-up was a mistake), verified on an ipod touch 5. Also confirmed that this does not happen on html5, and that Mobile HDR flag does not make a difference in function. #jira UE-26421 #ue4 #android Change 3015801 on 2016/06/16 by Dmitriy.Dyomin Probbably fix for UE-30878, was not able to repro an actual crash(FFoliageInstanceBaseCache::AddInstanceBaseId). Added even more logging in case fix does not work. #jira UE-30878 Change 3015903 on 2016/06/16 by Dmitriy.Dyomin Fixed: Levels window has Refresh/UI issues when World Composition is active #jira UE-26160 Change 3018352 on 2016/06/17 by Chris.Babcock Handle Android media prepare failure (URL without internet for example) #jira UE-32029 #ue4 #android Change 3026387 on 2016/06/24 by Jack.Porter Remove FFuncTestManager warning about PIE when running on a standalone game binary Change 3026398 on 2016/06/24 by Jack.Porter Prevent FSocketBSD::Recv returning false on SE_EWOULDBLOCK Change 3027553 on 2016/06/25 by Niklas.Smedberg OpenGL: Made some block size calculation work for arbitrary block sizes (e.g. not pow-of-two). Change 3027554 on 2016/06/25 by Niklas.Smedberg Metal: copyFromTexture now gets block-aligned size parameter (e.g. used for texture streaming) Change 3028061 on 2016/06/26 by Jack.Porter Fixed a problem where newly discovered instances were not added to an existing session in the Session Browser. Fixed a problem where selecting an instance in a session with multiple instances didn't deselect the previously selected instance correctly. Change 3029220 on 2016/06/27 by Steve.Cano Change Android Tilt values to use GetRotationMatrix/GetOrientation logic, same as java-side android would use, and adjust slightly to match as closely as possible to iOS values for tilt. There is drift and some differences in the "Y" value but the same sort of inconsistencies are also seen on iOS. #jira UE-6135 #ue4 #android Change 3030420 on 2016/06/28 by Jack.Porter Fix crash with RenderOutputValidation when running with cooked content Change 3030426 on 2016/06/28 by Jack.Porter Fix to CL 3026398 - make FSocketBSD(IPv6)::Recv(From) return false when recv returns 0. A return value of 0 indicates the connection was shutdown in an orderly manner. Change 3030973 on 2016/06/28 by Steve.Cano Added a landscape downloader background along with the options to change it from within Android settings #ue4 #android #jira UE-32318 Change 3031757 on 2016/06/28 by Chris.Babcock Remove unused methods from AndroidJNI header #ue4 #android Change 3032387 on 2016/06/29 by Allan.Bentham Rename android es31+aep -> glesdeferred. Change 3032711 on 2016/06/29 by Allan.Bentham Rename GLSL_310_ES_EXT shader define: ES31_AEP_PROFILE -> ESDEFERRED_PROFILE bumped UE_SHADER_GLSL_310_ES_EXT_VER version number. Change 3033698 on 2016/06/29 by Jack.Porter Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile) Change 3034210 on 2016/06/30 by Steve.Cano Added a new AndroidRuntimeSettings variable that allows creation of installers for both Windows and Mac/Linux if set to true. #jira UE-32302 #ue4 #android Change 3034530 on 2016/06/30 by Chris.Babcock Rename FManifestReader to FAndroidFileManifestReader in AndroidFile #jira UE-32679 #ue4 #android Change 3034612 on 2016/06/30 by Steve.Cano Change Alpha from being set to a range of 0-255 to being in a range of 0-1 (which is the correct range of values) #jira UE-25325 #ue4 #android Change 3034679 on 2016/06/30 by Chris.Babcock Fix tooltip (.command for mac, not .sh) #jira UE-32302 #ue4 #android Change 3038881 on 2016/07/05 by Jack.Porter Package and launch on multiple Android devices simultaneously using the -Device=xxxxxxx+yyyyyyyy+zzzzzzzz format generated by a Project Launcher profile when you select multiple devices #jira UEMOB-115 Change 3039240 on 2016/07/06 by Jack.Porter TcpMessageTransport - connection-based message bus transport. #jira UEMOB-112 #jira UEMOB-113 Change 3039252 on 2016/07/06 by Jack.Porter Enable messaging and session services and functional testing on Android when launched with -messaging Android device detection module support for adding port forwarding and connection announcement for TcpMessageTransport #jira UEMOB-112 #jira UEMOB-113 Change 3039264 on 2016/07/06 by Jack.Porter Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile) Change 3040041 on 2016/07/06 by Chris.Babcock Pass proper value to script generator functions #jira UE-32861 #ue4 #android Change 3040890 on 2016/07/07 by Allan.Bentham Fix shadow crash #jira UE-32884 Change 3041458 on 2016/07/07 by Peter.Sauerbrei fix for IOS launch on failures Change 3041542 on 2016/07/07 by Peter.Sauerbrei better fix for the multi-device deployment issue Change 3041774 on 2016/07/07 by Steve.Cano Fixing crash that occurs when a games app id for Google Play is set before configuring the apk packaging. Also validating the value that is inserted and using it to override any values that have been hand-inserted into the GooglePlayAppID.xml #jira UE-16992 #android #ue4 Change 3042222 on 2016/07/08 by Dmitriy.Dyomin Mobile packaging scenarious Added a wizard for creating launcher profiles (Android & IOS) for scenario: Minimal App + Downloadable content Added Archive step to launcher profiles to be able to store build product into specified directory Changes to a cooker to be able to pack DLC based with a different flavor to a release App Changes to DLC packaging to be able to build streaming data without chunking pak files #jira UEMOB-119 Change 3042244 on 2016/07/08 by Dmitriy.Dyomin Fixed crash in FTcpMessageTransportConnection::Stop Change 3042270 on 2016/07/08 by Dmitriy.Dyomin GitHub #2320 : [ULevelStreamingKismet] Load Level Instance, Enables UE4 Users to create multiple transformed instances of a .umap without having to include in persistent level's list ? Rama contributed by: EverNewJoy #jira UE-29867 Change 3042449 on 2016/07/08 by Dmitriy.Dyomin Fixing Mac Editor build erros from CL# 3042222 Change 3042480 on 2016/07/08 by Allan.Bentham Add ES3.1 profile & compiler_glsl_es3_1 to shaders. Change 3042481 on 2016/07/08 by Allan.Bentham hlslcc - ES3.1 changes. set ES3.1 version number to 310 Do not use ES2 keywords for ES3.1. Generate Layout Locations for ES3.1 bump version. Change 3042483 on 2016/07/08 by Allan.Bentham Add mobile ES3.1 support. Recreates EGL and ES3.1 context during PlatformInitOpenGL if ES3.1 is required. Change 3042485 on 2016/07/08 by Allan.Bentham Undo android XGE change. Change 3042506 on 2016/07/08 by Dmitriy.Dyomin One more compile fix from CL# 3042222 Change 3044173 on 2016/07/10 by Dmitriy.Dyomin UAT: Added support for building target platforms with multiple cook flavors ex: -targetplatform=Android -cookflavor=ETC1+ETC2 Change 3044213 on 2016/07/11 by Dmitriy.Dyomin Fixed: Can't stream in a level whose name is a substring of another streaming level #jira UE-32999 Change 3044221 on 2016/07/11 by Jack.Porter Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile) Change 3044815 on 2016/07/11 by Allan.Bentham Corrected NAME_GLSL_ES3_1_ANDROID format string. Change 3046911 on 2016/07/12 by Chris.Babcock Add handling of OnTextChanged for virtual keyboard input on Android #jira UE-32348 #ue4 #android Change 3046958 on 2016/07/12 by Chris.Babcock Rename some functions with Error in the name to prevent false coloring in the logs #jira UE-30541 #ue4 #android Change 3047169 on 2016/07/12 by Chris.Babcock Return player ID and handle auth token for Google Play Games on Android (contributed by gameDNAstudio) #jira UE-30610 #pr #2372 #ue4 #android Change 3047406 on 2016/07/12 by Jack.Porter Add missing import to GameActivity.java Change 3047442 on 2016/07/13 by Dmitriy.Dyomin Added: Mobile custom post-process Limitations: can fetch only from PostProcessInput0 (SceneColor) other scene textures are not supported. Does not support "Replacing the Tonemapper" blendable location. #jira UEMOB-147 Change 3047466 on 2016/07/13 by Dmitriy.Dyomin Disabled engine crash handler on Android, system crash handler works more reliably across different os versions/devices Change 3047746 on 2016/07/13 by Jack.Porter Rename FBasePassFowardDynamicPointLightInfo Change 3047778 on 2016/07/13 by Jack.Porter Missing file for rename FBasePassFowardDynamicPointLightInfo Change 3047788 on 2016/07/13 by Allan.Bentham Fix incorrect TargetPlatformDescriptor string generation. Change 3047790 on 2016/07/13 by Allan.Bentham Fixed half3x3 matrix use with ES3.1 glsl Fixed couple of interpolator precision mismatch. Fixed ES3.1 support detection issues Change 3047816 on 2016/07/13 by Allan.Bentham Remove AndroidGL4 remnants. Change 3048926 on 2016/07/13 by Chris.Babcock Added detection of Amazon Fire TV to disable requiring virtual joysticks #ue4 #android Change 3049335 on 2016/07/14 by Dmitriy.Dyomin Fixing UAT crash when packaging project for iOS Change 3049390 on 2016/07/14 by Jack.Porter Disabled error for warning 4819 "The file contains a character that cannot be represented in the current code page (xxx). Save the file in Unicode format to prevent data loss" This is triggered by European characters and copyright symbols in source saved as latin-1 when compiling on non-US windows. Seen often in 3rd party headers, eg nvapi. #code_review: Ben.Marsh Change 3049391 on 2016/07/14 by Jack.Porter Fixed incorrect comment order in CL 3049390 Change 3049545 on 2016/07/14 by Dmitriy.Dyomin Reworking some code from CL#3047442 to make static analizer happy Change 3049626 on 2016/07/14 by Allan.Bentham Automatic CSM shader toggling #jira UE-27429 Change 3051574 on 2016/07/15 by Jack.Porter Support for lighting channels on Mobile - Multiple directional lights are supported in different channels but primitives are only affected by the directional light in the first channel they have set - CSM shadows from stationary or movable directional lights correctly follow their lighting channels - No channel limitations for dynamic point lights Notes: Removed mobile-specific directional light shadowing fields from View uniform buffer and mobile no longers uses SimpleDirectionalLight. Separate uniform buffers for mobile directional light are generated for each lighting channel. CSM culling information is now stored in FViewInfo and not per FVisibleLightViewInfo as the visibility bits are per view. #code_review Daniel.Wright #jira UEMOB-110 Change 3051699 on 2016/07/15 by Steve.Cano Preserve the original, pre-transformed input vertices for Slate shaders, which is required to properly do anti-aliasing (the ViewProjection-transformed values were causing the lines to not be drawn). #jira UE-20320 #ue4 #android Change 3051744 on 2016/07/15 by Chris.Babcock Fix Android Vulkan include path checks (contributed by kodomastro) #jira UE-33311 #PR #2602 #ue4 #android Change 3052023 on 2016/07/15 by Chris.Babcock Fix shadowed variables Change 3052110 on 2016/07/15 by Chris.Babcock Compile fixes for light channel support on mobile - missing template - accessor function for MobileDirectionalLights from scene Change 3052242 on 2016/07/15 by Chris.Babcock Compile fixes for light channel support on mobile - removed dependency on C++14 feature Change 3052730 on 2016/07/16 by Dmitriy.Dyomin Win32 build fix Change 3053041 on 2016/07/17 by Jack.Porter Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile) Change 3053054 on 2016/07/17 by Jack.Porter Changed use of old function ShouldUseDeferredRenderer() to new GetShadingPath() Change 3053055 on 2016/07/17 by Jack.Porter Fixed local variable aliasing in unity build Change 3053206 on 2016/07/18 by Jack.Porter Support ExecuteJavascript on iOS and Android Expose ExecuteJavascript to widget blueprint Fix ExecuteJavascript unicode string support on desktop platforms #jira UEMOB-152 Change 3053323 on 2016/07/18 by Dmitriy.Dyomin Added: Ability to set thread affinity for a device in Device Profiles (ex: +CVars=android.SetThreadAffinity=RT 0x02 GT 0x01) #jira UEMOB-107 Change 3053723 on 2016/07/18 by Jack.Porter Fix for UnrealTournamentProto.Automation.cs build errors Change 3055090 on 2016/07/19 by Dmitriy.Dyomin Junk OnlineBlueprintSupport module binaries [CL 3056789 by Jack Porter in Main branch]
2016-07-19 19:13:01 -04:00
if (bFlipTextureData)
{
//OpenGL ES reads the pixels "upside down" from what we're expecting (flipped vertically), so we need to transfer the data from the bottom up.
uint8* TargetPtr = TargetBuffer;
int32 Stride = SizeX * 4;
int32 FlipHeight = SizeY;
GLubyte* LinePtr = RGBAData + (SizeY - 1) * Stride;
while (FlipHeight--)
{
GLubyte* DataPtr = LinePtr;
int32 Pixels = SizeX;
while (Pixels--)
{
TargetPtr[0] = DataPtr[2];
TargetPtr[1] = DataPtr[1];
TargetPtr[2] = DataPtr[0];
TargetPtr[3] = DataPtr[3];
DataPtr += 4;
TargetPtr += 4;
}
LinePtr -= Stride;
}
FMemory::Free(RGBAData);
}
}
#else
else
{
// It's a simple int format. OpenGL converts them internally to what we want.
glReadPixels(Rect.Min.X, Rect.Min.Y, SizeX, SizeY, GL_BGRA, UGL_ABGR8, TargetBuffer );
}
#endif
glPixelStorei(GL_PACK_ALIGNMENT, 4);
if( FramebufferToDelete )
{
glBindFramebuffer(GL_FRAMEBUFFER, 0);
glDeleteFramebuffers( 1, &FramebufferToDelete );
}
if( RenderbufferToDelete )
{
glDeleteRenderbuffers( 1, &RenderbufferToDelete );
}
ContextState.Framebuffer = (GLuint)-1;
}
void FOpenGLDynamicRHI::RHIReadSurfaceData(FRHITexture* TextureRHI,FIntRect Rect,TArray<FColor>& OutData, FReadSurfaceDataFlags InFlags)
{
Copying //UE4/Release-Staging-4.12 to //UE4/Main (Source: //UE4/Release-4.12 @ 2992821) ========================== MAJOR FEATURES + CHANGES ========================== Change 2992821 on 2016/05/27 by Max.Chen Subway Sequencer: Add "Assets" and "Character" to the list of additional directories to cook. #jira UE-31279 #lockdown Cristina.Riveron Change 2992761 on 2016/05/27 by Max.Chen Add assets from "Directories to Always Cook". #jira UE-31279 #lockdown Cristina.Riveron Change 2992371 on 2016/05/26 by Dmitry.Rekman Fix GUBP Tools node (UE-31378). #jira UE-31378 #lockdown Josh.Adams Change 2992279 on 2016/05/26 by Dmitry.Rekman One more fix for UAT compilation failure (UE-31312). - Make EnvVarsToXML target framework v4.5. #lockdown Josh.Adams #jira UE-31312 Change 2992060 on 2016/05/26 by Josh.Adams - Reset PVRTC compression quality to default, so cooks don't take forever for IOS. We shipped with PVRTC Quality 4 for the App Store version. This is set in the Cooker Settings in the Project Settings window. #lockdown cristina.riveron #jira UE-31373 Change 2992009 on 2016/05/26 by Dmitry.Rekman Fix packaging on Linux (UE-31312). - System.Xml was spelled as System.XML. #jira UE-31312 #lockdown Josh.Adams Change 2991784 on 2016/05/26 by Martin.Wilson Fix for RecalcRequiredBones crashing when there is no lod data #jira UE-30028 #lockdown cristina.riveron Change 2991744 on 2016/05/26 by Dmitry.Rekman Fix Linux code project generation (UE-31322). - Also fixes UE-31318 (not reopening when creating BP project). - Apparently, we cannot reset all signals to default, this makes posix_spawn() fail after fork (child exits with 127). - Added logging of child's return code. #lockdown Josh.Adams #jira UE-31322 #jira UE-31318 Change 2991448 on 2016/05/26 by Nick.Darnell Disabling the logging in the git module that was added from the previous commit. #jira UE-30781 #lockdown cristina.riveron Change 2991352 on 2016/05/26 by Max.Chen Subway Sequencer: Add "Sequencer" to the list of additional directories to cook. #jira UE-31279 #lockdown Cristina.Riveron Change 2991121 on 2016/05/26 by Ben.Marsh Fix ShooterGame warnings on XboxOne. #lockdown cristina.riveron Change 2991097 on 2016/05/26 by Nick.Darnell PR #2386: Git Plugin: fix initialization of a new repository broken by new "migrate" support 4.12 (Contributed by SRombauts) #jira UE-30781 #lockdown cristina.riveron Change 2991095 on 2016/05/26 by Dmitry.Rekman Fix packaging on Linux (UE-31312). - Excludes UAT modules unsupported on the platform (e.g. TVOS). #jira UE-31312 #lockdown Josh.Adams Change 2990806 on 2016/05/25 by Michael.Gay Last minute adjustments to SubwaySequencer shots. Fixed Fade track on master and moved Event tracks to shots. #jira UE-30804 #lockdown Cristina.Riveron Change 2990739 on 2016/05/25 by Dan.Oconnor Fix for transaction buffer failing to restore preview widget trees, these are regenerated post undo/redo and should not be tagged as transactional #jira UE-31155 #lockdown cristina.riveron Change 2990657 on 2016/05/25 by Dmitry.Rekman Fix crash in mono when invoked by the engine (UE-31312). - Reset signal mask on spawning a subprocess. We mask out all signals except explicitly handled, which does not play well with mono. - See also https://answers.unrealengine.com/questions/420161/mono-process-crash.html #jira UE-31312 #lockdown Josh.Adams Change 2990564 on 2016/05/25 by Marc.Audy Undo 4.12 change to DetachFromParent when AttachTo is called with a null parent. #jira UE-00000 #lockdown Cristina.Riveron Change 2990429 on 2016/05/25 by Max.Chen Movie Capture: Fix initialization order warning. Follow up to CL #2990314 #jira UE-31285 #lockdown Nick.Penwarden Change 2990338 on 2016/05/25 by Zabir.Hoque TEMP Fix: On server enqued render thread work is dropped. So on server release Reflection capture resouce immediately instead of trying to defer enque. #jira UE-28838 #lockdown cristina.riveron Change 2990314 on 2016/05/25 by Max.Chen Movie Capture: Flush the viewport when grabbing frames. This fixes more frame accuracy issues. #jira UE-31285 #lockdown Nick.Penwarden Change 2990249 on 2016/05/25 by Max.Chen Sequencer: Fix tick prerequisites getting removed on stop and not re-set on play. This fixes frame accuracies when rendering in a separate process. #jira UE-31285 #lockdown Nick.Penwarden Change 2990243 on 2016/05/25 by Lukasz.Furman Fixed behavior tree observers not being applied correctly #jira UE-31307 #lockdown Cristina.Riveron Change 2990206 on 2016/05/25 by Daniel.Lamb Make sure min number of threads in the large thread pool is at least 2. #jira UE-31253 #lockdown Cristina.Riveron Change 2990182 on 2016/05/25 by Max.Chen Sequencer: Fix null ptr crash on trying to record from current player. This is a regression from the off by one frame fixes. #jira UE-31304 #lockdown Nick.Penwarden Change 2990124 on 2016/05/25 by Chris.Bunner Avoid creating additional inline code fragment casting matching uniform types. #lockdown cristina.riveron #jira UE-29089 Change 2989978 on 2016/05/25 by Uriel.Doyon Merged fix for issue with resolution scale in PostProcessVisualizeComplexity #jira UE-29473 #lockdown cristina.riveron Change 2989970 on 2016/05/25 by Taizyd.Korambayil #lockdown cristina.riveron #jira UE-31293 Added TestMaps Folder and moved all Non-Relevant Maps into it. Change 2989911 on 2016/05/25 by Chris.Babcock Remove warning about Android debugging since CodeWorks for Android Nsight supports VS2015 #jira UE-31292 #ue4 #android #lockdown cristina.riveron Change 2989898 on 2016/05/25 by Robert.Manuszewski Splitting inline shader registration from serialization. Serialization can happen on the async loading thread but registration should only happen on the game thread. Removed a lot of critical section locks. Reimplementing CL #2952596 #jira UE-29245 #lockdown Nick.Penwarden Change 2989849 on 2016/05/25 by Max.Preussner Sequencer: Fixed Crash when playing UMG sequence with audio tracks (UE-31289) #jira UE-31289 #lockdown nick.penwarden Change 2989793 on 2016/05/25 by Max.Chen Sequencer: Change automated capture so it captures in response to a sequence update to fix off by one frames. #jira UE-30755 #lockdown Nick.Penwarden Change 2989792 on 2016/05/25 by Max.Chen Sequencer: Put back setting MaxFPS when forcing fixed frame interval playback to fix motion blur in editor. #jira UE-30755 #lockdown Nick.Penwarden Change 2989774 on 2016/05/25 by Mike.Beach Mirroring CL 2946932 Guarding against invalid EdGraphPins (ones that have been moved to the transient package) when constructing the widget - prevents a crash that we've been unable to repro or determine the cause of (turns it instead into an ensure, so we can collect more contextual information on the issue). #lockdown cristina.riveron #jira UE-26998 Change 2989765 on 2016/05/25 by Olaf.Piesche Moivng CL 2967970 from Dev-Rendering - fix for #jira UE-27297 #lockdown nick.penwarden Change 2989481 on 2016/05/25 by Marc.Audy Properly route AttachToComponent to SetupAttachment if called from the constructor #jira UE-31055 #lockdown Cristina.Riveron Change 2989369 on 2016/05/25 by Robert.Manuszewski Don't create asset import data for archetype TileMap. Propagate component flags to TileMap if the component is an archetype. #jira UE-31033 #lockdown Nick.Penwarden Change 2988975 on 2016/05/24 by Max.Preussner Sequencer: Fixed Cinematic Camera look at tool crashes on auto save (UE-31195) #jira UE-31195 #lockdown nick.penwarden Change 2988834 on 2016/05/24 by Max.Chen Movie Capture: Crash fix - Protect against null encoding filter. #jira UE-31233 #lockdown Nick.Penwarden Change 2988764 on 2016/05/24 by Peter.Sauerbrei fix for exception when deploying to tvOS from PC #jira UE-30318 #lockdown cristina.riveron Change 2988540 on 2016/05/24 by Jeff.Campeau Disable incompatible OpenVR for Windows XP builds. Gut SteamVR and SteamVRController for Windows XP builds (rely on OpenVR). #lockdown Nick.Penwarden #jira UE-30823 Change 2988491 on 2016/05/24 by Zak.Middleton #ue4 - (4.12) Remove version check from serialization logic that fixes up stale transient properties. They would still loaded for archetypes and we always want to prevent that in the future. #lockdown cristina.riveron #jira UE-30625 Change 2988427 on 2016/05/24 by Aaron.McLeran #jira UE-31028 Stop Quietest Concurrency does not remove the quietest sound Fix is to not re-add the sound once its stopped due to max concurrency. #tests ran the QA test map that demonstrated the problem #lockdown cristina.riveron Change 2988391 on 2016/05/24 by Taizyd.Korambayil #lockdown cristina.riveron #jira UE-30301 Rebuilt Ligthing for all Content Example Maps Change 2988315 on 2016/05/24 by Allan.Bentham Re-enabled FLUTBlenderPS on vulkan devices. (it's required for protostar) #jira UE-31079 Change 2988227 on 2016/05/24 by Frank.Fella Sequencer - Add support for forcing editor and runtime evaluation to happen on exact fixed frame intervals. Updated the subway sequencer sample to work with these changes. Change missed in first checkin. #Jira UE-30755 Change 2988200 on 2016/05/24 by Robert.Manuszewski Assert if MaxObjectsInEditor or MaxObjectsInGame are too big and collide with EInternalObjectFlags #jira UE-31218 Change 2988181 on 2016/05/24 by Peter.Sauerbrei revert out the last fix and add more logging as I can't reproduce this bug #jira UE-30813 Change 2988140 on 2016/05/24 by Frank.Fella Sequencer - Add support for forcing editor and runtime evaluation to happen on exact fixed frame intervals. Updated the subway sequencer sample to work with these changes. #Jira UE-30755 Change 2988081 on 2016/05/24 by Jamie.Dale Better fix for UE-29651 that will also work with packages saved from a build without an engine version There was no version bump for the change to FFormatArgumentData, but VER_UE4_K2NODE_VAR_REFERENCEGUIDS was added at almost the same time so testing that should handle the vast majority of packages that we have internally, and will handle all external packages. #jira UE-29651 Change 2987964 on 2016/05/24 by Lee.Clark Fix empty ENV path when compiling PS4 targets. #jira UE-31210 Change 2987721 on 2016/05/23 by Dan.Oconnor Reworking node validation change done in 2910382 so that nodes that are going to spawn other nodes in the expansion step are still validated. #jira UE-31099 Change 2987696 on 2016/05/23 by Chris.Babcock Update AndroidWorks 1R1 to CodeWorks for Android 1R4 #jira UEPLAT-1312 #ue4 #android Change 2987624 on 2016/05/23 by Jeff.Campeau Fix a define protection for WinXP stack walking support. #jira UE-30823 Change 2987607 on 2016/05/23 by Jeff.Campeau Windows Stack Walk fixed to work with Windows XP. Use the ASCII calls where needed. Symbol server is unsupported and is disabled when building for Windows XP. #jira UE-30823 Change 2987593 on 2016/05/23 by Zak.Middleton #ue4 - (4.12) Reject old serialized values of UMovementComponent::UpdatedComponent and UpdatedPrimitive that were saved before those were marked transient. Mark UPawnMovementComponent::PawnOwner and UCharacterMovementComponent::CharacterOwner as transient, and similarly reject old saved values. #jira UE-30625 Change 2987548 on 2016/05/23 by Lukasz.Furman Moved newly added gameplay debugger's code out of perception component #jira UE-31090 Change 2987510 on 2016/05/23 by Lukasz.Furman Restored perception category in old gameplay debugger tool #jira UE-31090 Change 2987278 on 2016/05/23 by Ben.Marsh Rocket: Add Mac GenerateProjectFiles.sh script into installed engine distro. #jira UE-31109 Change 2987156 on 2016/05/23 by Chris.Babcock Added GoogleVR to InstalledEngineFilters.ini #jira UE-31186 #ue4 #android Change 2987129 on 2016/05/23 by Mieszko.Zielinski Fixed FNavigationFilterArea not zeroing its properties in default constuctor #UE4 #jira UE-31185 Change 2987100 on 2016/05/23 by Peter.Sauerbrei fix for crash in DeploymentServer when attempting to copy a file with a space in the path or name #jira UE-30813 Change 2987064 on 2016/05/23 by Dmitry.Rekman PR #2164: [Linux] Fix clang '&&' within '||' error (Contributed by slonopotamus) #jira UE-28537 Change 2987002 on 2016/05/23 by Aaron.McLeran #jira UE-31036 Sound volume does not change when moving past the Non Focus Azimuth range if set to greater than 90 degrees Fix was to remove the clamp on the dot-product #tests ran test map with focus factors greater than 90 degrees Change 2986880 on 2016/05/23 by Mark.Satterthwaite Fix UE-31124 due to bad array iteration logic - amazing that this hadn't been seen earlier. #jira UE-31124 Change 2986873 on 2016/05/23 by Lina.Halper #fix issue with morphtarget importings for LODs - this was caused by option not being set correctly #jira: UE-30955 #code review: Alexis.Matte Change 2986804 on 2016/05/23 by Taizyd.Korambayil #jira UE-31132 Added Missing Function to Blueprint. Change 2986801 on 2016/05/23 by Jamie.Dale SSearchBox will now only delay text changes while it has focus A text changed event when it doesn't have focus is usually triggered by code (rather than the user typing), so we need to process it immediately to avoid other operational ordering issues. #jira UE-31101 Change 2986793 on 2016/05/23 by Martin.Wilson Fix for morph curves not getting applied to meshes in cooked builds (smart names were not being corrected). (brought from dev-rendering 2983747) #Jira UE-31166 Change 2986772 on 2016/05/23 by Benn.Gallagher Fixed montage single node instances with negative rate scales only repeating the final section when looping #jira UE-31164 Change 2986766 on 2016/05/23 by Martin.Wilson Fix for preview not updating when tranform curve flags are changed. #Jira UE-31119 Change 2986569 on 2016/05/23 by Robert.Manuszewski Making hang detection disabled bu default and an opt-in for games. #jira UE-31151 Change 2986564 on 2016/05/23 by Martin.Wilson Fix for being able to set montages on an anim track segment. #jira UE-31039 Change 2986205 on 2016/05/21 by Zabir.Hoque Add new instrumentation to bucketize why we are seeing device lost so often. #jira UE-20434 Change 2986071 on 2016/05/20 by Dan.Oconnor Fix for TRASHCLASS sneaking into property list when recompiling a blueprint that has a dependency that is dirty and requires bytecode recompilation of its dependencies. Make sure that the dirty blueprint itself is part of the bytecode recompilation process and make sure that blueprints compiled in this way are compiled after their parent classes #jira UE-30411 Change 2986068 on 2016/05/20 by Dan.Oconnor Fix for blueprint change/compile delegates leaking #jira UE-31118 Change 2986044 on 2016/05/20 by Zabir.Hoque Make OpenGL VB allocation support alignment (16 by default). Future work should expose this up through the RHI layers. #CodeReview: Olaf.Piesche, Simon.Tovey #jira UE-29231 Change 2985934 on 2016/05/20 by Mark.Satterthwaite Further changes to ensure that UE-30710 really is fixed while also not live-leaking memory in MetalRHI. #jira UE-30710 Change 2985852 on 2016/05/20 by Max.Chen Subway Sequencer: Remove level sequence editor from plugin list since it's on by default. #jira UE-31106 Change 2985821 on 2016/05/20 by Phillip.Kavan [UE-22874] Fix UObject duplication to preserve default subobjects created by the native class ctor when the root object is duplicated. change summary: - added FObjectDuplicationHelperMethods::GatherDefaultSubobjectsForDuplication() - modified StaticDuplicateObjectEx() to map default subobjects created in the duplicated root object's ctor before entering the serialization pass. this preserves those instances instead of causing StaticConstructObject to destroy/recreate them during serialization as part of the UObject reference duplication logic. #jira UE-22874 Change 2985750 on 2016/05/20 by Michael.Gay Default Game map set to SubwaySequencer_P #jira UE-31108 Change 2985660 on 2016/05/20 by Michael.Gay Removing unused track animation #jira UE-30804 Change 2985349 on 2016/05/20 by Dan.Oconnor Fix for crash that occurs when repeatedly pasting and undoing an object with subobjects. We were not clearing the internal flags when recycling an object #jira UE-30954 Change 2985346 on 2016/05/20 by Leslie.Nivison Updating 4.12 credit #jira UEPROD-820 Change 2985297 on 2016/05/20 by Jamie.Dale Fixed VS version detection It was checking the file version (which is 12), rather than the VS version (which is 12 for 2013, and 14 for 2015). #jira UE-30977 Change 2985233 on 2016/05/20 by Gareth.Martin Fixed crash when building lighting when using "Use Landscape Lightmap" on landscape grass #jira UE-30975 Change 2985184 on 2016/05/20 by Chris.Babcock Move audio warning to show proper error result code #jira UE-31085 #ue4 #android Change 2985183 on 2016/05/20 by Chad.Taylor GoogleVR disabled by default #jira UE-30921 Change 2985145 on 2016/05/20 by Jack.Porter Fix for precision issue causing blocky landscape LOD on iPad Pro and several other iOS devices #jira UE-24792 Change 2985124 on 2016/05/20 by Alex.Delesky #jira UE-29794 If the editor cannot find the SSL DLLs when enabling the Perforce source control plugin, it will now display a warning in the Source Control log instead of crashing. Change 2985066 on 2016/05/20 by Lee.Clark Fix r.SelectiveBasePassOutputs so that it defaults to off #jira UE-30133 Change 2985063 on 2016/05/20 by Allan.Bentham Fix for modulated shadow precision issues on low end android hardware. #jira UE-29083 Change 2985061 on 2016/05/20 by Max.Chen Viewport: Fix crash when the viewport widget is null. #jira UE-31050 Change 2985059 on 2016/05/20 by Rolando.Caloca UE4.12 - Workaround for crash trying to track down other crash #jira UE-30875 Change 2984876 on 2016/05/20 by Richard.TalbotWatkin Made SceneOutliner visibility code safer, to avoid a potential crash. #jira UE-30831 - [CrashReport] UE4Editor_SceneOutliner!SceneOutliner::FGetVisibilityVisitor::RecurseChildren() [sceneoutlinergutter.cpp:24] Change 2984873 on 2016/05/20 by Richard.TalbotWatkin Clipped selection box bounds in Matinee viewport to prevent crash when reading outside of the viewport area. #jira UE-30968 - Ctrl+Alt selection drag inside to outside of Matinee window will crash the editor Change 2984844 on 2016/05/20 by Matthew.Griffin Fixing compile error in mono games Change 2984825 on 2016/05/20 by Robert.Manuszewski When the application crashes becaused the GPU driver was disabled, make sure the CrashReporterClient window gets the updated screen metrics after the driver is restored. #jira UE-30556 Change 2984693 on 2016/05/20 by Phillip.Kavan [UE-30495] Fix BP editor crash on component rename following undo of component add action. change summary: - modified USimpleConstructionScript::CreateNode() to create the initial component template object in the transient package, so that subsequent undo actions restore to that state rather than to a valid BPGC-owned state. - modified StaticConstructObject_Internal() to restore the inclusion of RF_ArchetypeObject-flagged objects in the logic that sets new objects to 'PendingKill' state before recording them into the transaction buffer. this ensures that they can be GC'd when construction is undone in the editor. Tested against sample/repro steps in UE-21240 to ensure that it no longer crashes even with the original change from CL# 2832225 reverted (that fix has since been superceded). #jira UE-30495 Change 2984684 on 2016/05/20 by Phillip.Kavan [UE-30852] Fix BPGC custom property list delta generation & post-construct initialization/serialization to properly handle array values that differ from default in length but not inner element values. change summary: - modified UBlueprintGeneratedClass::BuildCustomPropertyListForPostConstruction()/BuildCustomArrayPropertyListForPostConstruction() to return a boolean value indicating whether or not a delta value was detected. - modified UBlueprintGeneratedClass::BuildCustomArrayPropertyListForPostConstruction() and FBlueprintEditorUtils::BuildComponentInstancingData() to ensure that array properties are emitted to delta property lists if the size differs from default, even if none of the elements actually differ from the default value - removed the ensure() for the array property case in FObjectInitializer::InitPropertiesFromCustomList(), as it is now a valid case to encounter an array property delta value without any actual delta element value overrides following it in the custom property stream - restored the bCanUsePostConstructLink optimization for non-native class types in FObjectInitializer::InitProperties() - modified UArrayProperty::SerializeItem() for the ArUseCustomPropertyList case to not empty the array when a resize is needed on load (read) - this fixes an edge case in the cooked BP component data stream when array size differed from default but only one or more of the inner values actually differed, in which case all the array slots were being reset (constructed/zeroed) but only the overridden value was being serialized (loaded) from the template data stream #jira UE-30852 Change 2984651 on 2016/05/19 by Zabir.Hoque Forcing GoogleVR plugin to disabled by default since its causing even non HDM machines to render split foveated viewports. #CodeReview: Chad.Taylor, Nick.Whiting #jira UE-30921 Change 2984636 on 2016/05/19 by Zabir.Hoque Explicitly store the cubemap resolution in encoded reflection data. #CodeReview Daniel.Wright, Marcus.Wassmer #jira UE-30341 Change 2984454 on 2016/05/19 by Rolando.Caloca UE4.12 - Fix for vulkan failing to load shader Integration mirroring changelist 2984432 #jira UE-28140 Change 2984452 on 2016/05/19 by Marcus.Wassmer #jira UE-31054 Remove autocompletion for ToggleRHIThread and ShowMaterialDrawEvents as they no longer do anything Change 2984415 on 2016/05/19 by Dan.Oconnor Fix for crash when we fail to spawn the preview actor because the desired class is deprecated #jira UE-31027 Change 2984376 on 2016/05/19 by Dan.Oconnor Fix for regression in GetClassDefaults - we were not handling the 'None' case #jira UE-31034 Change 2984316 on 2016/05/19 by Aaron.McLeran #jira UE-31049 Updating the Oculus Audio SDK to vs 1.02 #tests Ran updated SDK in several test maps, confirmed HRTF spatialization is working. Change 2984315 on 2016/05/19 by Lina.Halper Fix issue with importing morphtarget LOD when it's missing between #jira: UE-30949 Change 2984237 on 2016/05/19 by Dan.Oconnor Fix for ensure/possible stale memory access in UpdateOverlaps #jira UE-30919 Change 2984170 on 2016/05/19 by Max.Chen Movie Capture: Another pass at texture streaming fix for movie capture. #jira UE-30986 Change 2984134 on 2016/05/19 by Chad.Taylor Mac compiler warning fix #jira UE-30921 Change 2983903 on 2016/05/19 by Taizyd.Korambayil #jira UE-30562 Replaced cube With BSP for Floor Change 2983840 on 2016/05/19 by Taizyd.Korambayil #jira UE-30979 Fixed Typo in one of the Stands Change 2983662 on 2016/05/19 by Ben.Marsh GitHub: Add an exception to allow GoogleVR files to be mirrored to GitHub Change 2983653 on 2016/05/19 by Chris.Bunner Modifed previous change to fixup incorrect ensures. #jira UE-30877 Change 2983599 on 2016/05/19 by Chris.Bunner Added ensure and null ptr check to canvas flush. #jira UE-30877 Change 2983596 on 2016/05/19 by Chad.Taylor FluffyBunny #jira UE-30921 Change 2983534 on 2016/05/19 by Brian.Karis 4.12 fix per pixel translucency #jira UE-30902 Change 2983530 on 2016/05/19 by Chris.Babcock Broadcast EMediaEvent::MediaOpened when media opened successfully #jira UE-31006 #ue4 #android Change 2983427 on 2016/05/19 by Richard.TalbotWatkin Conflated "Import" and "Import Scene" in the File menu; the new action is called "Import Into Level". Limited the allowed file types to .t3d and .fbx. #jira UE-30891 - CRASH: Editor crashes when Importing Actors via File > Import Change 2983386 on 2016/05/19 by Michael.Gay minor last tweaks #jira UE-30804 Change 2983280 on 2016/05/19 by Gil.Gribb UE4 - Fixed crash in FHierarchicalStaticMeshSceneProxy related to reflection captures and foliage. #jira UE-30837 Change 2983079 on 2016/05/18 by Max.Chen Movie Capture: Fix so that texture streaming option for movie capture is set when capturing in editor. #jira UE-30986 Change 2983078 on 2016/05/18 by Dmitriy.Dyomin Added more logging to track UE-30878 #jira UE-30878 Change 2983067 on 2016/05/18 by Dmitriy.Dyomin Fixed: Mobile HDR Path doesn't work on GearVR #jira UE-11846 Change 2983049 on 2016/05/18 by Max.Chen Movie Capture: Fix crash on movie rendering when in HDR mode. #jira UE-30978 Change 2982825 on 2016/05/18 by Mark.Satterthwaite Correctly wait for the dispatch semaphore when clearing the Metal resource free lists. #jira UE-30710 Change 2982697 on 2016/05/18 by Marc.Audy Fix Orion DataProvider use of AddReferencedObjects in light of CL# 2982607 #jira UE-00000 Change 2982546 on 2016/05/18 by Taizyd.Korambayil #jira UE-30862 resaved A bunc hof assets to Fix to attempt to fix Build Warnings Change 2982533 on 2016/05/18 by Daniel.Lamb When you package if you haven't saved the changes will not be reflected in the game. #jira UE-30904 Change 2982415 on 2016/05/18 by Marc.Audy Bring forgotten 4.11 CL# 2928377 to 4.12 Ensure that the compiler will throw an error when passing a non-UObject* TArray to AddReferencedObjects #jira UE-28933 Change 2982358 on 2016/05/18 by Taizyd.Korambayil #jira UE-30546 Updated TP_VehicleAdvPawn Chase Camera Location Change 2982280 on 2016/05/18 by Martin.Mittring UE-26409 Crash when Light Propagation Volume Plugin is disabled on a Project #jira:UE-26409 Change 2982229 on 2016/05/18 by Max.Chen Sequencer: Add tick prerequisites so that the level sequence actor ticks before all of the actors that it controls. This fixes some inconsistencies in the movie rendered frames not matching what's in editor. #jira UE-30755 Change 2982080 on 2016/05/18 by Max.Chen Sequence Recorder: Fix crash when component class to record is null. #jira UE-30944 Change 2982041 on 2016/05/18 by Marcus.Wassmer Protect against crashes reading from a null texture. #jira UE-30834 Change 2981915 on 2016/05/18 by Allan.Bentham Do not mosaic encode for modulate blend operations. Fixes dark 'halos' around mod shadows. #jira UE-29083 Change 2981911 on 2016/05/18 by michael.gay Set framing in sequencer, set start to 200 #jira UE-30633 Change 2981904 on 2016/05/18 by Chase.McAllister #jira UE-30943 Removing unused asset to fix DDC compiling bug Change 2981894 on 2016/05/18 by Michael.Gay removed old cameras, changed start frame to remove black at head of sequence #jira UE-30633 Change 2981827 on 2016/05/18 by Gareth.Martin Fixed crash when entering landscape mode while a landscape is selected while simulating - Landscape infos no longer get created for PIE/Simulate landscapes (they were empty anyway) #jira UE-30917 Change 2981725 on 2016/05/18 by Keith.Judge Xbox One - Fix issues with DFAO/DF Shadowing. Problems were in RHIUpdateTexture3D(). Needed to ensure temp texture had the correct bind flags, etc, and also use the graphics context rather than the DMA context to do the copying, as for some reason the DMA engine corrupts some pixels of the distance field atlas texture. #jira UE-27591 Change 2981466 on 2016/05/17 by Max.Chen Merge from Chris Bunner from Dev-SequencerGDC - Frame state fixes when Sequencer is paused; No velocity in AA, Clamp motion blur scale, Clamp to scatter blur method. #jira UE-30576 Change 2981403 on 2016/05/17 by Dan.Oconnor Fix for overzealous filtering of classes with Within markup #jira UE-29878 Change 2981342 on 2016/05/17 by Dan.Oconnor Removing overzealous check. In Dev-BP this has already been downgraded to an ensure, but no reason to ensure now that we understand why it happens. #jira UE-30792 Change 2981318 on 2016/05/17 by Max.Preussner Sequencer: Fixed crash when scrubbing attached audio tracks; reduced nesting (UE-30923) #jira: UE-30923 Change 2981221 on 2016/05/17 by Dan.Oconnor Preventing spawning components with 'Within' markup specified, it is unsupported by the SCSEditor and Core UObject logic at this time. Likely logic is CoreUObject needs to avoid type checking for RF_ArchetypeObject instances and the SCSEditor needs to be more consistent about using that flag on its template objects #jira UE-29878 Change 2981169 on 2016/05/17 by Marc.Audy Gracefully handle invalid GameSingleton class name in ini file Remove unused DefaultPreviewPawnClass and ClassName from Engine #jira UE-30829 Change 2981104 on 2016/05/17 by Mieszko.Zielinski Made AISenses not send information to listeners that are not registered for given sense #UE4 #jira UE-29939 Change 2981086 on 2016/05/17 by Taizyd.Korambayil #jira UE-30568 Added a check to make sure index being accessed was valid (BP_DemoRoom) Change 2980755 on 2016/05/17 by Taizyd.Korambayil #jira UE-30706 Set material to use Translucent Blend Change 2980753 on 2016/05/17 by Jon.Nabozny Initialize FBox used to store result for CalculateQuatACF96Bounds (bump from //UE4/Dev-Framework). #JIRA UE-30846 Change 2980682 on 2016/05/17 by Taizyd.Korambayil #jira UE-30570, UE-30575 Corrected Some Spellings Change 2980559 on 2016/05/17 by Mieszko.Zielinski Changed UNavigationSystem.AgentToNavDataMap to store weak object pointers rather than raw painters #UE4 This should make it immune to navigation data beging destroyed and not removed from AgentToNavDataMap. #jira UE-30836 Change 2980504 on 2016/05/17 by Daniel.Wright Integrate - Movable skylight now matches stationary for subsurface shading models * Two sided was broken in 4.11, Subsurface had never been handled #jira UE-30855 Change 2980467 on 2016/05/17 by Jamie.Dale Added some checks to avoid temporary worlds being added as favorites #jira UE-30613 Change 2980379 on 2016/05/17 by Jurre.deBaare Fix for static mesh merging, little too eager with changes. #jira UE-30808 Change 2980373 on 2016/05/17 by Gareth.Martin Fixed shader compile errors when applying a speedtree material to a landscape spline #jira UE-25820 Change 2980318 on 2016/05/17 by Gareth.Martin Fixed crash when calling EditorApplySpline with a null spline component Also stopped it doing anything in PIE (it's for blutilities, not runtime) #jira UE-30830 Change 2980300 on 2016/05/17 by Marc.Audy Treat Unreachable components the same as BeginDestroyed for endplay/cleanup purposes #jira UE-30839 Change 2980298 on 2016/05/17 by Gareth.Martin Fixed crash when loading landscape projects that used tessellation #jira UE-30742 Change 2980296 on 2016/05/17 by Martin.Wilson Fix crash accessing sync names from a child anim bp #jira UE-30811 Change 2980289 on 2016/05/17 by Jurre.deBaare Fix for regression with merge actor tab #jira UE-30809 Change 2980272 on 2016/05/17 by Ori.Cohen Make sure that root components do not get attached to non root components in the same actor. Fixes crash in scene outliner and other weird issues. #JIRA UE-30876 Change 2980206 on 2016/05/17 by Keith.Judge Xbox One - Bit the bullet and rewrote the occlusion query buffer handling so that we're not reliant on a finite ring buffer. Instead, each query has a small buffer of its own. removing the dependency of ordering when reading back the results. This should save memory on smaller maps too! #jira UE-30581 #jira UEPLAT-623 Change 2980094 on 2016/05/17 by Matthew.Griffin Added OSVR dlls to InstalledEngineFilters.ini so that they are included in Launcher build even though the plugin is disabled by default #jira UE-30611 Change 2979935 on 2016/05/17 by Aaron.Herzog #jira UE-30619 updating owen sk mesh with proper morph Change 2979816 on 2016/05/16 by Chad.Taylor Fix to address a crash related to multiple player VR Preview #jira UE-20109 Change 2979744 on 2016/05/16 by Mike.Beach Disabling Blueprint spawning, InitProperties() optimization until we can figure out why it is not filling out array properties properly. #jira UE-30745 Change 2979743 on 2016/05/16 by Mike.Beach Mirroring CL 2977497 Clearing property nodes and cached read-addresses when changing the details view object (so any queued actions will not operate on invalid properties). #jira UE-26392 Change 2979544 on 2016/05/16 by Daniel.Wright Fixed crash with RTDF shadows when r.DistanceFieldAO was disabled #jira UE-26319 Change 2979477 on 2016/05/16 by michael.gay Remove errant Play Rate track. #jira UE-30633 Change 2979464 on 2016/05/16 by Mark.Satterthwaite Duplicate CL #2945444: Cache the Metal fallback depth-stencil surface for the canvas tile rendering so that we only ever keep one spare depth-stencil surface around. This costs us a little more permanent memory but reduces churn. #jira UE-30849 Change 2979441 on 2016/05/16 by Rolando.Caloca UE4.12 - vk - Fix quitting taking a long time #jira UE-28239 Change 2979315 on 2016/05/16 by Michael.Trepka Rollback //UE4/Release-4.12/Engine/Source/Programs/UnrealBuildTool/System/XcodeProject.cs to revision 1 #jira UE-28016 Change 2979304 on 2016/05/16 by Jamie.Dale Backing out some changes from CL# 2976673 These caused an issue with Slate hit-testing. The more correct fix here is to make the Slate Windows OS layer treat window positions as relative to the top-left of the window client area, rather than relative to the top-left of the window itself (which includes the OS border). This now matches what other platforms do. To this end, FWindowsWindow::Initialize, FWindowsWindow::MoveWindowTo, and FWindowsWindow::ReshapeWindow all now consider the given window position to be relative to the window client area, and will consistently adjust it to relative to the window before moving/creating the OS window. This only impacts windows with OS borders (aka, non-fullscreen and non-Slate drawn windows). #jira UE-30276 #jira UE-30677 #jira UE-30771 Change 2979077 on 2016/05/16 by Maciej.Mroz #jira UE-28536 Attached Project Crashes on Attempting to Play in Standalone merged from 2979069 Change 2979052 on 2016/05/16 by Chase.McAllister #jira UE-30789 Resaving Maps to fix project warning Change 2978984 on 2016/05/16 by Chase.McAllister #jira UE-30789 Resaving start video assests that contained empty engine version Change 2978806 on 2016/05/16 by Mieszko.Zielinski Fixed EQS tests' scoring equation value getting reset on load #UE4 #jira UE-30470 Change 2978670 on 2016/05/16 by Max.Preussner Media: Workaround for changing Media asset path can cause crash (UE-22691) #jira: UE-22691 Change 2978638 on 2016/05/16 by Michael.Gay Cleanup of old maps in SubwaySequencer project #jira UE-30633 Change 2978636 on 2016/05/16 by Jamie.Dale Added guard against a crash navigating through a menu #jira UE-30698 Change 2978611 on 2016/05/16 by Lee.Clark PS4 - Fix RenderTargetOutputFormat using the wrong output index for velocity rendering when using r.BasePassOutputsVelocity=True #jira UE-30133 Change 2978596 on 2016/05/16 by Allan.Bentham Extend iOS metal Z bias offset to all iOS (metal+gles) depth only shaders. #jira UE-27530 Change 2978566 on 2016/05/16 by Jamie.Dale Downgraded some checks to ensures and added more logging #jira UE-30613 Change 2978399 on 2016/05/16 by Keith.Judge Xbox One - Fix check() firing when we run out of occlusion buffer space. Also added occlusion query result caching (perf gain!). #jira UE-30581 Change 2978323 on 2016/05/16 by Jurre.deBaare Merge actor panel crashes when selecting a mesh component without static mesh #fix display 'No Static Mesh' when none is available #jira UE-30809 Change 2978322 on 2016/05/16 by Jurre.deBaare Issue with merging meshes resulting data saved across different LOD levels #fix use correct target LOD index for all source LODs #jira UE-30808 #lockdown Nick.Penwarden [CL 2999693 by Ben Marsh in Main branch]
2016-06-03 11:49:20 -04:00
if (!ensure(TextureRHI))
{
OutData.Empty();
OutData.AddZeroed(Rect.Width() * Rect.Height());
return;
}
FRHICommandListImmediate& RHICmdList = FRHICommandListExecutor::GetImmediateCommandList();
RHITHREAD_GLCOMMAND_PROLOGUE();
TArray<uint8> Temp;
FOpenGLContextState& ContextState = GetContextStateForCurrentContext();
OutData.Empty();
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 2998063) #lockdown nick.penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2981877 on 2016/05/18 by Rolando.Caloca DR - Fix some PVS warnings - Removed 'uniform' as a keyword on hlslcc as it's ignored/causes issues/doesn't really optimize #jira UE-30996 Change 2981966 on 2016/05/18 by Rolando.Caloca DR - Fix OpenGL crash quitting editor #jira UE-25549 Change 2982072 on 2016/05/18 by Uriel.Doyon Fixed a "Build Texture Streaming" crash related to custom outputs. Fixed issue with debug view mode and translucent primitives Fix bug with visibility that made some texture low res. Enabled per instance visibility in the texture streaming order (in game only). Improved InvestigateTexture Logs. Tweaked the mip computations from screen size. Change 2982077 on 2016/05/18 by Uriel.Doyon Removed debug options! Change 2982108 on 2016/05/18 by Olaf.Piesche #jira UE-30772 moving AMD hacks to console variables Change 2982422 on 2016/05/18 by Gil.Gribb UE4 - Potential crash fix on foliage occlusion queries and reflection captures. Change 2982547 on 2016/05/18 by Martin.Mittring UE-26409 Crash when Light Propagation Volume Plugin is disabled on a Project Change 2982548 on 2016/05/18 by Martin.Mittring Refactored MRT and outer Pixel Shader output to a struct to allow it passed in/out of functions allowing for a more readable code (less #ifdefs, reducing the boolean hell) Needed for upcoming MeshDecals Change 2982601 on 2016/05/18 by Daniel.Wright Movable skylight now matches stationary for subsurface shading models * Two sided was broken in 4.11, Subsurface had never been handled Change 2982603 on 2016/05/18 by Daniel.Wright DrawMaterialToRenderTarget / BeginDrawCanvasToRenderTarget now work correctly with material parameter collections and Time * FCanvas stores an optional scene to render to, UWorld caches the UCanvas needed for implementing these functions Change 2982618 on 2016/05/18 by Daniel.Wright Better categories for some Rendering project settings Change 2982619 on 2016/05/18 by Daniel.Wright Scene capture 2d improvements * Orthographic projection supported * Opacity is now captured in alpha, allows partial rendering in a scene capture and compositing into another scene later * Various GBuffer attributes are now available to be captured, including depth * Changed Blueprint capture function to CaptureScene, which happens immediately (was previously deferred), allowing multiple captures with different parameters Change 2982664 on 2016/05/18 by Daniel.Wright Fading out planar reflections based on roughness since they don't have support for variable roughness (fade starts at .2 roughness, ends at .3) Change 2982684 on 2016/05/18 by Martin.Mittring polish ImageValidator Change 2982685 on 2016/05/18 by Martin.Mittring show testimage on sm4 as well Change 2982736 on 2016/05/18 by Uriel.Doyon Improved overbudget retention logic. Updated ListStreamingTextures stats. Change 2982854 on 2016/05/18 by Martin.Mittring ImageValidator can now save/load IVxml file Change 2982863 on 2016/05/18 by Daniel.Wright Fixed shader compile error Change 2982864 on 2016/05/18 by Daniel.Wright Removed deprecation message Change 2982927 on 2016/05/18 by Martin.Mittring ImageValidator is now sorting by time Change 2983743 on 2016/05/19 by Chris.Bunner Saturated tri-planar UV function outputs to prevent negative blending #jira UE-30964 Change 2983747 on 2016/05/19 by Martin.Wilson Fix for morph curves not getting applied to meshes in cooked builds (smart names were not being corrected). Change 2984008 on 2016/05/19 by Brian.Karis New contact shadows feature. Hair uses ray cast for nonshadow lights Change 2984009 on 2016/05/19 by Brian.Karis changed to ShadowedBits Change 2984054 on 2016/05/19 by Brian.Karis Deleted old motion blur Change 2984420 on 2016/05/19 by Daniel.Wright Shorter display name for WorldPosition material node Change 2984423 on 2016/05/19 by Daniel.Wright Fixed WorldPosition and ScreenPosition for downsampled separate translucency by scaling SvPosition before those computations. The View uniform buffer still contains incorrect buffer sizes for this pass. Change 2984432 on 2016/05/19 by Rolando.Caloca DR - Disable PPCombineLUT for Vulkan to work around glslang issue (will need to be reenabled when adding SM4/5 path) Change 2985415 on 2016/05/20 by Daniel.Wright Added a Texture2D exporter for .hdr Texture2D exporters now implement SupportsObject properly, so you only see extensions that are valid based on the format Change 2985439 on 2016/05/20 by Daniel.Wright Scene color alpha clear value validation Change 2987173 on 2016/05/23 by Martin.Mittring ImageValidator Report with Thumbnail (cannot be copied and pasted into email), non Thumbnail version could be. Change 2987248 on 2016/05/23 by Martin.Mittring ImageValidator: added Summary, removed timer hack Change 2987369 on 2016/05/23 by Martin.Mittring ImageValidator polish Change 2987390 on 2016/05/23 by Brian.Karis Improvement to temporal aa sharpness and speed. Change 2988038 on 2016/05/24 by Gil.Gribb Merging //UE4/Dev-Main@2987977 to Dev-Rendering (//UE4/Dev-Rendering) Change 2988304 on 2016/05/24 by Martin.Mittring added const to prevent coding errors Change 2988332 on 2016/05/24 by Brian.Karis Fixed motion blur crash on SM4 Change 2988446 on 2016/05/24 by Martin.Mittring nicer UI Change 2988990 on 2016/05/24 by Martin.Mittring fixed UE-31227 Building lighting produces bad results #jira:UE-31227 Change 2989729 on 2016/05/25 by Uriel.Doyon Fixed lightmaps and shadowmaps having low resolutions after building the lighting. #jira UE-31254 Change 2989752 on 2016/05/25 by Olaf.Piesche CVar to disable/freeze GPU particle simulation Change 2989811 on 2016/05/25 by Daniel.Wright Making use of MATERIALBLENDING_ANY_TRANSLUCENT Change 2989812 on 2016/05/25 by Daniel.Wright Hide DFGI show flags from UI Change 2989901 on 2016/05/25 by Daniel.Wright Height fog now works properly in planar reflections * The ray used for computing fog is first clipped by the reflection plane Change 2989904 on 2016/05/25 by Daniel.Wright Always use PF_FloatRGBA for LightAccumulation to guarantee alpha channel and negative range Change 2989991 on 2016/05/25 by Daniel.Wright Improved usability for DBuffer Decals * 'Show Decals' works correctly, previously would fetch from uninitialized textures * DBuffer being enabled forces a full prepass, previously decals would render incorrectly unless correct settings of r.EarlyZPass were used * Improved the PrePass draw event to indicate whether it's full or partial * Materials using DBuffer blend modes will fail to compile when the DBuffer project setting is disabled, instead of just being invisible * r.EarlyZPass can now be changed at runtime, which is useful for profiling Change 2990008 on 2016/05/25 by Daniel.Wright Fixed capsule shadows on skeletal meshes with scaling Change 2990274 on 2016/05/25 by Daniel.Wright Fixed DFAO (from cl 2961310) Change 2990304 on 2016/05/25 by Martin.Mittring OR-22233 GPU Sprites invisible unless solo'd #jira:OR-22233 Change 2990309 on 2016/05/25 by Martin.Mittring Added SubDSurface actor (using CPU code of OpenSubDiv), component, asset as starting point for more work in that direction, (Early work in progress) Change 2990363 on 2016/05/25 by Daniel.Wright Spreading precomputed visibility to neighbors now uses a 2d grid to find neighbors, speeds up the process for 800k cells from 40 mins to 20s Change 2990392 on 2016/05/25 by Daniel.Wright Added r.AOSpecularOcclusionMode, which determines how specular should be occluded by DFAO 0: Apply non-directional AO to specular. 1: (default) Intersect the reflection cone with the unoccluded cone produced by DFAO. This gives more accurate occlusion than 0, but can bring out DFAO sampling artifacts. 2: (experimental) Cone trace through distance fields along the reflection vector. Costs about the same as DFAO again because more cone tracing is done, but produces more accurate occlusion. Change 2990454 on 2016/05/25 by Martin.Mittring polish readme Change 2990610 on 2016/05/25 by Martin.Mittring fixed building with VS2015, the right OpenSubDiv .lib files are missing, temporarily disabled the relevant code #code_review:Shane.Caudle Change 2990754 on 2016/05/25 by Zabir.Hoque Fix compiler warning: C4456: declaration of 'NewStaticMesh' hides previous local declaration. #CodeReview: Martin.Mittring Change 2990801 on 2016/05/25 by Zabir.Hoque Only allocate reflection capture cubemaps if we are actually doing a reflection capture. The old approach always allocated based on CVar and worked with a warning on D3D since if SRC was larger than the DST, the extra SRC area was dropped. New approach only allocates when necessary and is correctly sized everytime. Also hardened access to CVar and what users are allowed to set. #CodeReview Marcus.Wassmer, Rolando.Caloca, Daniel.Wright, Martin.Mittring Change 2991169 on 2016/05/26 by Martin.Mittring fixed compiler warning WARNING: Non-editor build cannot depend on non-redistributable modules. Details: #lockdown: gil.gribb Change 2991238 on 2016/05/26 by Martin.Mittring fixed build fatal error C1083: Cannot open include file: 'RawMesh.h': No such file or directory (when RawMesh is not part of PrivateDependencyModuleNames in Engine.Build.cs) #lockdown:Gil.Gribb Change 2991726 on 2016/05/26 by Daniel.Wright Subsurface materials are now handled with simple forward shading #jira OR-22237 #lockdown gil.gribb Change 2991727 on 2016/05/26 by Daniel.Wright Emissive decals are now supported with simple forward shading #jira OR-22282 #lockdown Gil.Gribb Change 2994849 on 2016/05/31 by Daniel.Wright Disabled fix for WorldPosition and ScreenPosition in downsampled separate translucency, since it breaks GetScreenAlignedUV (used in DepthFade), since the uniform buffer still contains full res buffer sizes #lockdown Gil.Gribb Change 2997243 on 2016/06/01 by Gil.Gribb Merging //UE4/Dev-Main@2996565 to Dev-Rendering (//UE4/Dev-Rendering) #lockdown nick.penwarden [CL 2998067 by Gil Gribb in Main branch]
2016-06-02 13:13:43 -04:00
if (&ContextState != &InvalidContextState)
{
ReadSurfaceDataRaw(ContextState, TextureRHI, Rect, Temp, InFlags);
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 2998063) #lockdown nick.penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2981877 on 2016/05/18 by Rolando.Caloca DR - Fix some PVS warnings - Removed 'uniform' as a keyword on hlslcc as it's ignored/causes issues/doesn't really optimize #jira UE-30996 Change 2981966 on 2016/05/18 by Rolando.Caloca DR - Fix OpenGL crash quitting editor #jira UE-25549 Change 2982072 on 2016/05/18 by Uriel.Doyon Fixed a "Build Texture Streaming" crash related to custom outputs. Fixed issue with debug view mode and translucent primitives Fix bug with visibility that made some texture low res. Enabled per instance visibility in the texture streaming order (in game only). Improved InvestigateTexture Logs. Tweaked the mip computations from screen size. Change 2982077 on 2016/05/18 by Uriel.Doyon Removed debug options! Change 2982108 on 2016/05/18 by Olaf.Piesche #jira UE-30772 moving AMD hacks to console variables Change 2982422 on 2016/05/18 by Gil.Gribb UE4 - Potential crash fix on foliage occlusion queries and reflection captures. Change 2982547 on 2016/05/18 by Martin.Mittring UE-26409 Crash when Light Propagation Volume Plugin is disabled on a Project Change 2982548 on 2016/05/18 by Martin.Mittring Refactored MRT and outer Pixel Shader output to a struct to allow it passed in/out of functions allowing for a more readable code (less #ifdefs, reducing the boolean hell) Needed for upcoming MeshDecals Change 2982601 on 2016/05/18 by Daniel.Wright Movable skylight now matches stationary for subsurface shading models * Two sided was broken in 4.11, Subsurface had never been handled Change 2982603 on 2016/05/18 by Daniel.Wright DrawMaterialToRenderTarget / BeginDrawCanvasToRenderTarget now work correctly with material parameter collections and Time * FCanvas stores an optional scene to render to, UWorld caches the UCanvas needed for implementing these functions Change 2982618 on 2016/05/18 by Daniel.Wright Better categories for some Rendering project settings Change 2982619 on 2016/05/18 by Daniel.Wright Scene capture 2d improvements * Orthographic projection supported * Opacity is now captured in alpha, allows partial rendering in a scene capture and compositing into another scene later * Various GBuffer attributes are now available to be captured, including depth * Changed Blueprint capture function to CaptureScene, which happens immediately (was previously deferred), allowing multiple captures with different parameters Change 2982664 on 2016/05/18 by Daniel.Wright Fading out planar reflections based on roughness since they don't have support for variable roughness (fade starts at .2 roughness, ends at .3) Change 2982684 on 2016/05/18 by Martin.Mittring polish ImageValidator Change 2982685 on 2016/05/18 by Martin.Mittring show testimage on sm4 as well Change 2982736 on 2016/05/18 by Uriel.Doyon Improved overbudget retention logic. Updated ListStreamingTextures stats. Change 2982854 on 2016/05/18 by Martin.Mittring ImageValidator can now save/load IVxml file Change 2982863 on 2016/05/18 by Daniel.Wright Fixed shader compile error Change 2982864 on 2016/05/18 by Daniel.Wright Removed deprecation message Change 2982927 on 2016/05/18 by Martin.Mittring ImageValidator is now sorting by time Change 2983743 on 2016/05/19 by Chris.Bunner Saturated tri-planar UV function outputs to prevent negative blending #jira UE-30964 Change 2983747 on 2016/05/19 by Martin.Wilson Fix for morph curves not getting applied to meshes in cooked builds (smart names were not being corrected). Change 2984008 on 2016/05/19 by Brian.Karis New contact shadows feature. Hair uses ray cast for nonshadow lights Change 2984009 on 2016/05/19 by Brian.Karis changed to ShadowedBits Change 2984054 on 2016/05/19 by Brian.Karis Deleted old motion blur Change 2984420 on 2016/05/19 by Daniel.Wright Shorter display name for WorldPosition material node Change 2984423 on 2016/05/19 by Daniel.Wright Fixed WorldPosition and ScreenPosition for downsampled separate translucency by scaling SvPosition before those computations. The View uniform buffer still contains incorrect buffer sizes for this pass. Change 2984432 on 2016/05/19 by Rolando.Caloca DR - Disable PPCombineLUT for Vulkan to work around glslang issue (will need to be reenabled when adding SM4/5 path) Change 2985415 on 2016/05/20 by Daniel.Wright Added a Texture2D exporter for .hdr Texture2D exporters now implement SupportsObject properly, so you only see extensions that are valid based on the format Change 2985439 on 2016/05/20 by Daniel.Wright Scene color alpha clear value validation Change 2987173 on 2016/05/23 by Martin.Mittring ImageValidator Report with Thumbnail (cannot be copied and pasted into email), non Thumbnail version could be. Change 2987248 on 2016/05/23 by Martin.Mittring ImageValidator: added Summary, removed timer hack Change 2987369 on 2016/05/23 by Martin.Mittring ImageValidator polish Change 2987390 on 2016/05/23 by Brian.Karis Improvement to temporal aa sharpness and speed. Change 2988038 on 2016/05/24 by Gil.Gribb Merging //UE4/Dev-Main@2987977 to Dev-Rendering (//UE4/Dev-Rendering) Change 2988304 on 2016/05/24 by Martin.Mittring added const to prevent coding errors Change 2988332 on 2016/05/24 by Brian.Karis Fixed motion blur crash on SM4 Change 2988446 on 2016/05/24 by Martin.Mittring nicer UI Change 2988990 on 2016/05/24 by Martin.Mittring fixed UE-31227 Building lighting produces bad results #jira:UE-31227 Change 2989729 on 2016/05/25 by Uriel.Doyon Fixed lightmaps and shadowmaps having low resolutions after building the lighting. #jira UE-31254 Change 2989752 on 2016/05/25 by Olaf.Piesche CVar to disable/freeze GPU particle simulation Change 2989811 on 2016/05/25 by Daniel.Wright Making use of MATERIALBLENDING_ANY_TRANSLUCENT Change 2989812 on 2016/05/25 by Daniel.Wright Hide DFGI show flags from UI Change 2989901 on 2016/05/25 by Daniel.Wright Height fog now works properly in planar reflections * The ray used for computing fog is first clipped by the reflection plane Change 2989904 on 2016/05/25 by Daniel.Wright Always use PF_FloatRGBA for LightAccumulation to guarantee alpha channel and negative range Change 2989991 on 2016/05/25 by Daniel.Wright Improved usability for DBuffer Decals * 'Show Decals' works correctly, previously would fetch from uninitialized textures * DBuffer being enabled forces a full prepass, previously decals would render incorrectly unless correct settings of r.EarlyZPass were used * Improved the PrePass draw event to indicate whether it's full or partial * Materials using DBuffer blend modes will fail to compile when the DBuffer project setting is disabled, instead of just being invisible * r.EarlyZPass can now be changed at runtime, which is useful for profiling Change 2990008 on 2016/05/25 by Daniel.Wright Fixed capsule shadows on skeletal meshes with scaling Change 2990274 on 2016/05/25 by Daniel.Wright Fixed DFAO (from cl 2961310) Change 2990304 on 2016/05/25 by Martin.Mittring OR-22233 GPU Sprites invisible unless solo'd #jira:OR-22233 Change 2990309 on 2016/05/25 by Martin.Mittring Added SubDSurface actor (using CPU code of OpenSubDiv), component, asset as starting point for more work in that direction, (Early work in progress) Change 2990363 on 2016/05/25 by Daniel.Wright Spreading precomputed visibility to neighbors now uses a 2d grid to find neighbors, speeds up the process for 800k cells from 40 mins to 20s Change 2990392 on 2016/05/25 by Daniel.Wright Added r.AOSpecularOcclusionMode, which determines how specular should be occluded by DFAO 0: Apply non-directional AO to specular. 1: (default) Intersect the reflection cone with the unoccluded cone produced by DFAO. This gives more accurate occlusion than 0, but can bring out DFAO sampling artifacts. 2: (experimental) Cone trace through distance fields along the reflection vector. Costs about the same as DFAO again because more cone tracing is done, but produces more accurate occlusion. Change 2990454 on 2016/05/25 by Martin.Mittring polish readme Change 2990610 on 2016/05/25 by Martin.Mittring fixed building with VS2015, the right OpenSubDiv .lib files are missing, temporarily disabled the relevant code #code_review:Shane.Caudle Change 2990754 on 2016/05/25 by Zabir.Hoque Fix compiler warning: C4456: declaration of 'NewStaticMesh' hides previous local declaration. #CodeReview: Martin.Mittring Change 2990801 on 2016/05/25 by Zabir.Hoque Only allocate reflection capture cubemaps if we are actually doing a reflection capture. The old approach always allocated based on CVar and worked with a warning on D3D since if SRC was larger than the DST, the extra SRC area was dropped. New approach only allocates when necessary and is correctly sized everytime. Also hardened access to CVar and what users are allowed to set. #CodeReview Marcus.Wassmer, Rolando.Caloca, Daniel.Wright, Martin.Mittring Change 2991169 on 2016/05/26 by Martin.Mittring fixed compiler warning WARNING: Non-editor build cannot depend on non-redistributable modules. Details: #lockdown: gil.gribb Change 2991238 on 2016/05/26 by Martin.Mittring fixed build fatal error C1083: Cannot open include file: 'RawMesh.h': No such file or directory (when RawMesh is not part of PrivateDependencyModuleNames in Engine.Build.cs) #lockdown:Gil.Gribb Change 2991726 on 2016/05/26 by Daniel.Wright Subsurface materials are now handled with simple forward shading #jira OR-22237 #lockdown gil.gribb Change 2991727 on 2016/05/26 by Daniel.Wright Emissive decals are now supported with simple forward shading #jira OR-22282 #lockdown Gil.Gribb Change 2994849 on 2016/05/31 by Daniel.Wright Disabled fix for WorldPosition and ScreenPosition in downsampled separate translucency, since it breaks GetScreenAlignedUV (used in DepthFade), since the uniform buffer still contains full res buffer sizes #lockdown Gil.Gribb Change 2997243 on 2016/06/01 by Gil.Gribb Merging //UE4/Dev-Main@2996565 to Dev-Rendering (//UE4/Dev-Rendering) #lockdown nick.penwarden [CL 2998067 by Gil Gribb in Main branch]
2016-06-02 13:13:43 -04:00
uint32 Size = Rect.Width() * Rect.Height();
OutData.AddUninitialized(Size);
FMemory::Memcpy(OutData.GetData(), Temp.GetData(), Size * sizeof(FColor));
}
RHITHREAD_GLCOMMAND_EPILOGUE();
}
void FOpenGLDynamicRHI::RHIReadSurfaceData(FRHITexture* TextureRHI, FIntRect Rect, TArray<FLinearColor>& OutData, FReadSurfaceDataFlags InFlags)
{
// Verify requirements, but don't crash
// Ignore texture format here, GL will convert it for us in glReadPixels
if (!ensure(FOpenGL::SupportsFloatReadSurface()) || !ensure(TextureRHI))
{
return;
}
FRHICommandListImmediate& RHICmdList = FRHICommandListExecutor::GetImmediateCommandList();
RHITHREAD_GLCOMMAND_PROLOGUE();
VERIFY_GL_SCOPE();
FOpenGLTexture* Texture = GetOpenGLTextureFromRHITexture(TextureRHI);
if (!ensure(Texture))
{
return;
}
// Get framebuffer for texture
const uint32 MipmapLevel = InFlags.GetMip();
GLuint SourceFramebuffer = GetOpenGLFramebuffer(1, &Texture, NULL, &MipmapLevel, NULL);
uint32 SizeX = Rect.Width();
uint32 SizeY = Rect.Height();
// Initialize output
OutData.Empty(SizeX * SizeY);
OutData.AddUninitialized(SizeX * SizeY);
// Bind the framebuffer
// @TODO: Do we need to worry about multisampling?
glBindFramebuffer(UGL_READ_FRAMEBUFFER, SourceFramebuffer);
FOpenGL::ReadBuffer(SourceFramebuffer == 0 ? GL_BACK : GL_COLOR_ATTACHMENT0);
// Read the float data from the buffer directly into the output data
// @TODO: Do we need to support BGRA?
glPixelStorei(GL_PACK_ALIGNMENT, 1);
glReadPixels(Rect.Min.X, Rect.Min.Y, SizeX, SizeY, GL_RGBA, GL_FLOAT, OutData.GetData());
glPixelStorei(GL_PACK_ALIGNMENT, 4);
GetContextStateForCurrentContext().Framebuffer = (GLuint)-1;
RHITHREAD_GLCOMMAND_EPILOGUE();
}
void FOpenGLDynamicRHI::RHIMapStagingSurface(FRHITexture* TextureRHI, FRHIGPUFence* FenceRHI, void*& OutData, int32& OutWidth, int32& OutHeight, uint32 GPUIndex)
{
FRHICommandListImmediate& RHICmdList = FRHICommandListExecutor::GetImmediateCommandList();
RHITHREAD_GLCOMMAND_PROLOGUE();
VERIFY_GL_SCOPE();
FOpenGLTexture* Texture = GetOpenGLTextureFromRHITexture(TextureRHI->GetTexture2D());
check(Texture);
check(EnumHasAnyFlags(Texture->GetDesc().Flags, TexCreate_CPUReadback));
OutWidth = Texture->GetSizeX();
OutHeight = Texture->GetSizeY();
uint32 Stride = 0;
OutData = Texture->Lock( 0, 0, RLM_ReadOnly, Stride );
RHITHREAD_GLCOMMAND_EPILOGUE();
}
void FOpenGLDynamicRHI::RHIUnmapStagingSurface(FRHITexture* TextureRHI, uint32 GPUIndex)
{
FRHICommandListImmediate& RHICmdList = FRHICommandListExecutor::GetImmediateCommandList();
RHITHREAD_GLCOMMAND_PROLOGUE();
VERIFY_GL_SCOPE();
FOpenGLTexture* Texture = GetOpenGLTextureFromRHITexture(TextureRHI->GetTexture2D());
check(Texture);
Texture->Unlock( 0, 0 );
RHITHREAD_GLCOMMAND_EPILOGUE();
}
void FOpenGLDynamicRHI::RHIReadSurfaceFloatData(FRHITexture* TextureRHI,FIntRect Rect,TArray<FFloat16Color>& OutData,ECubeFace CubeFace,int32 ArrayIndex,int32 MipIndex)
{
FRHICommandListImmediate& RHICmdList = FRHICommandListExecutor::GetImmediateCommandList();
RHITHREAD_GLCOMMAND_PROLOGUE();
VERIFY_GL_SCOPE();
//reading from arrays only supported on SM5 and up.
check(FOpenGL::SupportsFloatReadSurface() && (ArrayIndex == 0 || GMaxRHIFeatureLevel >= ERHIFeatureLevel::SM5));
FOpenGLTexture* Texture = GetOpenGLTextureFromRHITexture(TextureRHI);
check(TextureRHI->GetFormat() == PF_FloatRGBA);
const uint32 MipmapLevel = MipIndex;
// Temp FBO is introduced to prevent a ballooning of FBO objects, which can have a detrimental
// impact on object management performance in the driver, only for CubeMapArray presently
// as it is the target that really drives FBO permutations
const bool bTempFBO = Texture->Target == GL_TEXTURE_CUBE_MAP_ARRAY;
uint32 Index = uint32(CubeFace) + ( (Texture->Target == GL_TEXTURE_CUBE_MAP_ARRAY) ? 6 : 1) * ArrayIndex;
GLuint SourceFramebuffer = 0;
if (bTempFBO)
{
glGenFramebuffers( 1, &SourceFramebuffer);
glBindFramebuffer(UGL_READ_FRAMEBUFFER, SourceFramebuffer);
FOpenGL::FramebufferTextureLayer(UGL_READ_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, Texture->GetResource(), MipmapLevel, Index);
}
else
{
SourceFramebuffer = GetOpenGLFramebuffer(1, &Texture, &Index, &MipmapLevel, NULL);
}
uint32 SizeX = Rect.Width();
uint32 SizeY = Rect.Height();
OutData.Empty(SizeX * SizeY);
OutData.AddUninitialized(SizeX * SizeY);
glBindFramebuffer(UGL_READ_FRAMEBUFFER, SourceFramebuffer);
FOpenGL::ReadBuffer(SourceFramebuffer == 0 ? GL_BACK : GL_COLOR_ATTACHMENT0);
glPixelStorei(GL_PACK_ALIGNMENT, 1);
if (FOpenGL::GetReadHalfFloatPixelsEnum() == GL_FLOAT)
{
// Slow path: Some Adreno devices won't work with HALF_FLOAT ReadPixels
TArray<FLinearColor> FloatData;
// 4 float components per texel (RGBA)
FloatData.AddUninitialized(SizeX * SizeY);
FMemory::Memzero(FloatData.GetData(),SizeX * SizeY*sizeof(FLinearColor));
glReadPixels(Rect.Min.X, Rect.Min.Y, SizeX, SizeY, GL_RGBA, GL_FLOAT, FloatData.GetData());
FLinearColor* FloatDataPtr = FloatData.GetData();
for (uint32 DataIndex = 0; DataIndex < SizeX * SizeY; ++DataIndex, ++FloatDataPtr)
{
OutData[DataIndex] = FFloat16Color(*FloatDataPtr);
}
}
else
{
glReadPixels(Rect.Min.X, Rect.Min.Y, SizeX, SizeY, GL_RGBA, FOpenGL::GetReadHalfFloatPixelsEnum(), OutData.GetData());
}
glPixelStorei(GL_PACK_ALIGNMENT, 4);
if (bTempFBO)
{
glDeleteFramebuffers( 1, &SourceFramebuffer);
}
GetContextStateForCurrentContext().Framebuffer = (GLuint)-1;
RHITHREAD_GLCOMMAND_EPILOGUE();
}
void FOpenGLDynamicRHI::RHIRead3DSurfaceFloatData(FRHITexture* TextureRHI,FIntRect Rect,FIntPoint ZMinMax,TArray<FFloat16Color>& OutData)
{
FRHICommandListImmediate& RHICmdList = FRHICommandListExecutor::GetImmediateCommandList();
RHITHREAD_GLCOMMAND_PROLOGUE();
VERIFY_GL_SCOPE();
check( FOpenGL::SupportsFloatReadSurface() );
check( FOpenGL::SupportsTexture3D() );
check( TextureRHI->GetFormat() == PF_FloatRGBA );
FOpenGLTexture* Texture = GetOpenGLTextureFromRHITexture(TextureRHI);
uint32 SizeX = Rect.Width();
uint32 SizeY = Rect.Height();
uint32 SizeZ = ZMinMax.Y - ZMinMax.X;
// Allocate the output buffer.
OutData.Empty(SizeX * SizeY * SizeZ * sizeof(FFloat16Color));
OutData.AddZeroed(SizeX * SizeY * SizeZ);
// Set up the source as a temporary FBO
uint32 MipmapLevel = 0;
uint32 Index = 0;
GLuint SourceFramebuffer = 0;
glGenFramebuffers( 1, &SourceFramebuffer);
glBindFramebuffer(UGL_READ_FRAMEBUFFER, SourceFramebuffer);
// Set up the destination as a temporary texture
GLuint TempTexture = 0;
FOpenGL::GenTextures(1, &TempTexture);
glActiveTexture( GL_TEXTURE0 );
glBindTexture( GL_TEXTURE_3D, TempTexture );
FOpenGL::TexImage3D( GL_TEXTURE_3D, 0, GL_RGBA16F, SizeX, SizeY, SizeZ, 0, GL_RGBA, GL_HALF_FLOAT, NULL );
// Copy the pixels within the specified region, minimizing the amount of data that needs to be transferred from GPU to CPU memory
for ( uint32 Z=0; Z < SizeZ; ++Z )
{
FOpenGL::FramebufferTextureLayer(UGL_READ_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, Texture->GetResource(), MipmapLevel, ZMinMax.X + Z);
FOpenGL::ReadBuffer(SourceFramebuffer == 0 ? GL_BACK : GL_COLOR_ATTACHMENT0);
FOpenGL::CopyTexSubImage3D( GL_TEXTURE_3D, 0, 0, 0, Z, Rect.Min.X, Rect.Min.Y, SizeX, SizeY );
}
// Grab the raw data from the temp texture.
glPixelStorei( GL_PACK_ALIGNMENT, 1 );
FOpenGL::GetTexImage( GL_TEXTURE_3D, 0, GL_RGBA, GL_HALF_FLOAT, OutData.GetData() );
glPixelStorei( GL_PACK_ALIGNMENT, 4 );
// Clean up
FOpenGLContextState& ContextState = GetContextStateForCurrentContext();
auto& TextureState = ContextState.Textures[0];
glBindTexture(GL_TEXTURE_3D, (TextureState.Target == GL_TEXTURE_3D) ? TextureState.Resource : 0);
glActiveTexture( GL_TEXTURE0 + ContextState.ActiveTexture );
glDeleteFramebuffers( 1, &SourceFramebuffer);
FOpenGL::DeleteTextures( 1, &TempTexture );
ContextState.Framebuffer = (GLuint)-1;
RHITHREAD_GLCOMMAND_EPILOGUE();
}
void FOpenGLDynamicRHI::BindPendingFramebuffer( FOpenGLContextState& ContextState )
{
VERIFY_GL_SCOPE();
check((GMaxRHIFeatureLevel >= ERHIFeatureLevel::SM5) || !PendingState.bFramebufferSetupInvalid);
if (ContextState.Framebuffer != PendingState.Framebuffer)
{
if (PendingState.Framebuffer)
{
glBindFramebuffer(GL_FRAMEBUFFER, PendingState.Framebuffer);
FOpenGL::ReadBuffer( PendingState.FirstNonzeroRenderTarget >= 0 ? GL_COLOR_ATTACHMENT0 + PendingState.FirstNonzeroRenderTarget : GL_NONE);
GLenum DrawFramebuffers[MaxSimultaneousRenderTargets];
const GLint MaxDrawBuffers = GMaxOpenGLDrawBuffers;
Copying //UE4/Dev-Mobile to //UE4/Main (Source: //UE4/Dev-Mobile @ 2945914) ========================== MAJOR FEATURES + CHANGES ========================== Change 2911743 on 2016/03/16 by Allan.Bentham Fix broken tonemapper when using 32bpp encoded HDR. Fixes UE-28359 Cleaned up some ronin integration hacks from ronin. Change 2912053 on 2016/03/16 by Peter.Sauerbrei disable Vulkan in Win32 builds for now #codereview rolando.caloca #jira UE-28465 Change 2914512 on 2016/03/18 by Dmitriy.Dyomin Fixed crash on Nexus5 with Android 4.4.2 when TonemapperFilm is enabled Change 2914944 on 2016/03/18 by Allan.Bentham Fix es2 tonemap flip. Fixes UE-25148 Change 2915248 on 2016/03/18 by Chris.Babcock Updates to support NDK r11 #jira UE-28529 #ue4 #android Change 2919192 on 2016/03/22 by Chris.Babcock NDK level set above 19 forces minSdkVersion to 21 or above to prevent installing on unsupported devices #jira UE-28408 #ue4 #android #codereview Jack.Porter Change 2919591 on 2016/03/23 by Allan.Bentham Merge ronin's Gaussian DoF to 4.11's dof changes. Gaussian DoF will use a single recombine pass with ES31 devices or if no separate translucency is used on SM4+. Added permutation to exclude separate translucency from Gaussian recombine shader when not in use. #codereview martin.mittring Change 2920758 on 2016/03/24 by Dmitriy.Dyomin Fixed: shifting lighting samples octree https://udn.unrealengine.com/questions/276026/lighting-samples-visualization-not-working-with-le.html Change 2920793 on 2016/03/24 by Dmitriy.Dyomin Fixed: When sub-level set to be unloaded but with visbility state set to true, ULevelStreaming::IsStreamingStatePending returns wrong value #jira UE-26426 Change 2920981 on 2016/03/24 by Dmitriy.Dyomin GPU particles support for iOS Metal (A8+ only) #jira UE-11067 #jira UE-28514 #codereview Jack.Porter Change 2921383 on 2016/03/24 by Allan.Bentham Fix inverted image on device when framebuffer fetch/bViewRectSource is not used. #codereview jack.porter Change 2925694 on 2016/03/29 by Dmitriy.Dyomin Fixed: GPU particles and bloom on S7 Mali Change 2927065 on 2016/03/29 by Chris.Babcock Set the DT_SONAME field in linker (stops warning toast) #ue4 #android #codereview Jack.Porter Change 2927375 on 2016/03/30 by Jack.Porter Fixed localization for placement mode Cube, Sphere, Cylinder and Cone Change 2928643 on 2016/03/30 by Jack.Porter Fixed bug introdued by Ronin merge with DepthOfFieldScale setting being locked for BokehDOF #code_review: allan.bentham Change 2932773 on 2016/04/04 by Jack.Porter Reapply android Vulkan version fixes Change 2932853 on 2016/04/05 by Jack.Porter Enable VULKAN_CLEAR_SURFACE_ON_CREATE on Android to prevent assertion Change 2932998 on 2016/04/05 by Jack.Porter Native web browser widget on iOS #jira UEMOB-20 Change 2933420 on 2016/04/05 by Chris.Babcock Removed hard-coded bUseUnityBuild in UBT for Android (contributed by kosz78) #jira UE-29066 #pr #2236 #ue4 #android Change 2934315 on 2016/04/05 by Chris.Babcock Allow Android to act as server with OnlineSubsystemNull (contributed by psychogony) #jira UE-23937 #PR #1820 #ue4 #android #codereview Ryan.Gerleve Change 2935038 on 2016/04/06 by Chris.Babcock Fix OpenGLES31 compile error #ue4 #android #codereview Jack.Porter Change 2936288 on 2016/04/07 by Allan.Bentham Planar reflection captures for mobile. (UE-27426) Added mobile planar reflection flag to material. #codereview jack.porter, daniel.wright Change 2936297 on 2016/04/07 by Allan.Bentham Missed file. Planar reflection captures for mobile. (UE-27426) #codereview jack.porter, daniel.wright Change 2937763 on 2016/04/08 by Dmitriy.Dyomin Fix InstancedStaticMesh batches for ES2 (contributed by Grimmick) GitHub #2031 #jira UE-26576 #codereview Jack.Porter Change 2937863 on 2016/04/08 by Jack.Porter Merged Ronin CLs 2840392, 2860028 Allow vertex texture fetches on ES2 (requires absolute mip level) Change 2938461 on 2016/04/08 by Chris.Babcock Write Android uninstall batch files #ue4 #android Change 2939679 on 2016/04/11 by Allan.Bentham Remove bStationaryLightUsesCSMForMovableShadows from light component's UI. renamed proxy equivalent and infer its state from Inset Shadows For Movable Objects #codereview jack.porter, daniel.wright Change 2939887 on 2016/04/11 by Chris.Babcock Android ARM64 libraries #jira UEPLAT-1268 #ue4 #android Change 2940125 on 2016/04/11 by Chris.Babcock Added requirements to Arm64 and x86_64 tooltips Change 2941051 on 2016/04/12 by Allan.Bentham Fix for inverted RG channels when using filmic tonemapper with ES2. #codereview jack.porter Change 2942523 on 2016/04/13 by Chris.Babcock Add cxa_demangle build.cs instead of hiding dependency in UEBuildAndroid.cs #ue4 #android #codereview Josh.Adams Change 2942578 on 2016/04/13 by Chris.Babcock Add cxademangle dependency to Core for Android #ue4 #android #codereview Josh.Adams Change 2942997 on 2016/04/13 by Chris.Babcock Run Ant with -quiet first and run again without if there is an error for the log #ue4 #android #codereview Josh.Adams Change 2943320 on 2016/04/14 by Jack.Porter Fixed planar reflection merge errors Change 2943352 on 2016/04/14 by Jack.Porter Fix NAME_VULKAN_ES3_1_ANDROID shader format name #codereview: Rolando.Coloca Change 2943367 on 2016/04/14 by Dmitriy.Dyomin Added cvars to add or strip specific GL extensions from a driver reported extensions string #jira UE-29467 Change 2943425 on 2016/04/14 by Dmitriy.Dyomin Better logging of MobileHDR mode Change 2943461 on 2016/04/14 by Dmitriy.Dyomin Fixing HDR rendering and bloom on Galaxy S7 Change 2943493 on 2016/04/14 by Dmitriy.Dyomin Better HDR fix for devices with ES3 support Change 2943855 on 2016/04/14 by Allan.Bentham Mobile planar reflections. - currently only supports opaque materials #codereview jack.porter Change 2944721 on 2016/04/14 by Chris.Babcock Allow Vulkan-only Android builds #ue4 #android #codereview Allan.Bentham,Jack.Porter Change 2944771 on 2016/04/14 by Dmitriy.Dyomin Fixed: mesh particles crash in ES2 Change 2944827 on 2016/04/15 by Dmitriy.Dyomin Fixed: GPU particles not working on S6 with Android 6.0.1 Change 2944836 on 2016/04/15 by Jack.Porter Disable FX system calls in forward renderer when particles showflag is off Change 2944840 on 2016/04/15 by Jack.Porter Re-enabled non-radial TDeferredLightVS on ES2 for planar and put #if FEATURE_LEVEL >= FEATURE_LEVEL_SM4 around the radial shader code which was tripping up ES2. #codereview: Allan.Bentham, Chris.Babcock, Daniel.Wright Change 2944914 on 2016/04/15 by Jack.Porter Device profiles to detect Galaxy S7 Mali and Adreno variants in Vulkan mode Change 2945020 on 2016/04/15 by Gareth.Martin Cloning changes across from Dev-Landscape to Dev-Mobile due to feature deadline for 4.12. Change 2943560 on 2016/04/14 by Gareth.Martin Added ability to expand landscape bounds #jira UE-28928 #jira UE-25230 Change 2943538 on 2016/04/14 by Gareth.Martin Fix a crash with saving a level >2GB in size. There may still be other crashes with >2GB levels. Change 2943477 on 2016/04/14 by Gareth.Martin Fixed LODFalloff setting on landscape getting reset when using the "Change Landscape Component Size" tool Also moved all the LOD settings together in LandscapeProxy.h because it was messy Change 2942113 on 2016/04/13 by Gareth.Martin Updating comment to clarify behaviour of Foliage Align-To-Normal when Random-Yaw is disabled. Change 2941030 on 2016/04/12 by Gareth.Martin Cleanup and commenting Change 2940994 on 2016/04/12 by Gareth.Martin Implement random scale option for Landscape Grass. #jira UE-25743 Change 2940993 on 2016/04/12 by Gareth.Martin Remove unused BuildFlatTree function from HierarchicalInstancedStaticMeshComponent Change 2940150 on 2016/04/11 by Gareth.Martin Harden UHierarchicalInstancedStaticMeshComponent::UpdateInstanceTransform Change 2940101 on 2016/04/11 by Gareth.Martin Additional checks for bad static mesh when building the HISMC tree Change 2945560 on 2016/04/15 by Rolando.Caloca DM - Fix for newer Vulkan sdks Change 2945638 on 2016/04/15 by Chris.Babcock Fix permissions on uninstall script on Mac #jira UE-29236 #ue4 #android #lockdown Jack.Porter Change 2945856 on 2016/04/15 by Rolando.Caloca DM - vk - Fix mapped allocations on mobile #lockdown nick.penwarden [CL 2945995 by Chris Babcock in Main branch]
2016-04-15 18:19:26 -04:00
for (int32 RenderTargetIndex = 0; RenderTargetIndex < MaxDrawBuffers; ++RenderTargetIndex)
{
DrawFramebuffers[RenderTargetIndex] = PendingState.RenderTargets[RenderTargetIndex] ? GL_COLOR_ATTACHMENT0 + RenderTargetIndex : GL_NONE;
}
FOpenGL::DrawBuffers(MaxDrawBuffers, DrawFramebuffers);
}
else
{
glBindFramebuffer(GL_FRAMEBUFFER, 0);
FOpenGL::ReadBuffer(GL_BACK);
FOpenGL::DrawBuffer(GL_BACK);
}
ContextState.Framebuffer = PendingState.Framebuffer;
}
}
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 4041614) #lockdown Nick.Penwarden ============================ MAJOR FEATURES & CHANGES ============================ Change 3774677 by Arne.Schober DR - Deprecated SetLocal from the RHICmdlist Fixed some unnecessary PSO collisions. Change 3809579 by Chris.Bunner Back out changelist 3774677. #jira UE-53483 Change 3810363 by Mark.Satterthwaite More random fixes to mtlpp: most important is the extension to Buffer that allows creation of sub-buffers that are merely views onto a sub-range of the parent. These sub-buffers are valid to use throughout the mtlpp API with two exceptions: they may not be used for visibilityResultsBuffers and Set*BufferOffset functions cannot take this offset into account (as the encoder does not hold onto the buffers and I don't want it to). In the case of Set*BufferOffset the caller has to know what is going on and in the case of visibilityResultsBuffers it'll just assert as it isn't sensible. This makes it *much* easier to do things like sub-buffer allocation, though the caller must be aware of the alignment restrictions of their intended usage as they are not possible to enforce. For example, a call to SetVertexBuffer requires an offset alignment must match the alignment of the data-type in the shader for "device" resources, or for "constant" data it must be max(4, sizeof(datatype)) on iOS and 256 on macOS. This should allow for much more tightly packed sub-allocations than earlier approaches, though older drivers (e.g. Mac OS X 10.11) enforce only the coarser "constant" data restriction everywhere. Change 3810407 by Marcus.Wassmer PR #4322: ShadowSetup Bug Fix: Only stencil mask drawn meshes (Contributed by DSDambuster) Change 3810676 by Guillaume.Abadie Makes r.Test.SecondaryUpscaleOverride work with any arbitrary pixel size. Change 3810696 by Guillaume.Abadie Adds support for #include "../MyFile.ush" in the shader compiler. Change 3810698 by Guillaume.Abadie Implements enum class based shader permutation dimension. Change 3810699 by Guillaume.Abadie Implements Diaphragm DOF ground work. Change 3811536 by Guillaume.Abadie Pulls the trigger on CircleDOF's setup pass for DiaphragmDOF. Change 3811958 by Mark.Satterthwaite More fixes for mtlpp. Change 3811964 by Mark.Satterthwaite Only views onto a mtlpp::Buffer should return a valid parent-buffer. Change 3812604 by Guillaume.Abadie Changes Diaphragm DOF's source file layout. Change 3812827 by Mark.Satterthwaite More missing/broken functionality in mtlpp fixed and fixed obvious leaks. Change 3812920 by Guillaume.Abadie Adds support for per mip level UAV in FSceneRenderTarget. Change 3812926 by Mark.Satterthwaite Change the way we handle mtlpp resource construction to avoid leaks. Change 3812960 by Rolando.Caloca DR - vk - Disable DFGI Change 3812968 by Rolando.Caloca DR - Linker fix Change 3813318 by Mark.Satterthwaite Fix linear texture allocation from a buffer sub-view. Change 3813326 by Mark.Satterthwaite Fix another Metal mtlpp sub-buffer allocation failure. Change 3813328 by Guillaume.Abadie Removes global samplers in TAA for GL4, Vulkan and Switch. Change 3813937 by Rolando.Caloca DR - Fix logs not getting dumped when r.DumpSCWQueuedJobs is on Change 3813947 by Rolando.Caloca DR - noshaderworker should override r.XGEShaderCompile Change 3817017 by Uriel.Doyon Fixed texture editor black screen #jira UE-53653 Change 3818568 by Rolando.Caloca DR - Fix log when shader jobs crash - Move log10 to common - Added COMPILER_VULKAN define Change 3818603 by Uriel.Doyon Fix to static analysis warning Change 3818623 by Rolando.Caloca DR - Workaround hlslcc loop unrolling bug Change 3819070 by Uriel.Doyon Fix to stat duplication. Change 3819105 by Uriel.Doyon Refactored volume sample shader to avoid using texture dimension. Change 3819136 by Rolando.Caloca DR - vk - Per platform files (empty) Change 3819180 by Rolando.Caloca DR - vk - Move defines out of config into per platform Change 3819247 by Rolando.Caloca DR - vk - Remove more defines into platform settings Change 3819318 by Rolando.Caloca DR - vk - Fixes for linking Change 3819868 by Rolando.Caloca DR - vk - Linux & Android fixes Change 3819873 by Guillaume.Abadie Adds support for PermutationId on r.DumpShaderDebugInfo=1 Change 3819940 by Rolando.Caloca DR - vk - Fix Linux issues Change 3819956 by Rolando.Caloca DR - vk - Invalid check Change 3819961 by Michael.Lentine Hide attributes when plugin is not present Change 3819980 by Rolando.Caloca DR - vk - Standard validation always Change 3820039 by Rolando.Caloca DR - vk - Fix invalid ensure Change 3820326 by Rolando.Caloca DR - vk - Linux compile fix Change 3820422 by Michael.Lentine Add back GBufferAO. Change 3820433 by Rolando.Caloca DR - Fix D3D12 crash on 20 thread (10x2 cores) machines Change 3821677 by Rolando.Caloca DR - vk - Win32 compile fix Change 3821961 by Rolando.Caloca DR - Vulkan uses real UB by default on non-Android Change 3821968 by Rolando.Caloca DR - vk - Update glslang 1.0.65.1 Change 3821969 by Uriel.Doyon Added support for stat groups that must be sorted by name. Defined by DECLARE_STATS_GROUP_SORTBYNAME. Change 3821983 by Rolando.Caloca DR - vk - Change to static array (0.1ms on 10k draw calls) Change 3824141 by Rolando.Caloca DR - vk - Fix static analysis - Bumped up some (c) 2017->2018 Change 3824355 by Rolando.Caloca DR - vk - Accessor to find out if a cmd buffer has been submitted Change 3824420 by Rolando.Caloca DR - Sanity check number of queries per batch on D3D11 as to not break other RHIs Change 3824463 by Rolando.Caloca DR - Removed dummy ensure for D3D12 Change 3824609 by Rolando.Caloca DR - vk - Linux compile fix Change 3826074 by Mark.Satterthwaite Start IMP-caching the various descriptor types in mtlpp. Change 3826098 by Rolando.Caloca DR - vk - Dump layer compile fixes Change 3826113 by Rolando.Caloca DR - vk - Missing dump functions Change 3826302 by Rolando.Caloca DR - vk - Compile fix - Change dump handles to %p Change 3826635 by Mark.Satterthwaite Forward declarations required for mtlpp compilation without exposing Metal headers - plus fixes to the mtlpp test compiler. Change 3827072 by Mark.Satterthwaite Switch some more mtlpp descriptors over to IMPTables from objc_msgSend. Change 3827909 by Guillaume.Abadie Replaces diaphragm DOF's prefiltering with LDS bank coherent bilateral reduction, and implements 1/8 res background gathering pass. Change 3827952 by Guillaume.Abadie Updates copy right to year 2018 on diaphragm DOF's new files. Change 3828055 by Rolando.Caloca DR - vk - Rename in prep for changes Change 3828229 by Guillaume.Abadie Avoids to log multiple time global shader type name that have multiple permutations when verifying global shader map. Change 3828427 by Guillaume.Abadie Reimplements Max3x3 gathering post filtering for Diaphragm DOF with proper shader permutation. Change 3829979 by Guillaume.Abadie Fixes a color NaN source in diaphragm DOF's TAA pass. Change 3830116 by Rolando.Caloca DR - vk - Fix GPU queries/frame time on old system - New system in place, disabled temporarily Change 3830169 by Rolando.Caloca DR - vk - Fix async pso creation crash Change 3830193 by Rolando.Caloca DR - vk - CPU RHI thread improvement Change 3830291 by Guillaume.Abadie Automatically lower the number of gathering rings on background half res gather pass as far CoC is getting smaller. Change 3830300 by Rolando.Caloca DR - vk - Static analysis fix: Split VulkanCommon.h out of VulkanConfiguration.h Change 3830589 by Mark.Satterthwaite In mtlpp cache the IMPTables for all the Metal @protocol's that are dependent on the MTLDevice, this avoids a mutex & map lookup. Also make all the concrete types store their IMPTable statically as it won't change. Change 3830793 by Mark.Satterthwaite Fix a small number of bugs introduced with the mtlpp descriptor and table caching. Change 3831491 by Jian.Ru Fix driver version unknown #jira UE-53688 Change 3832335 by Rolando.Caloca DR - vk - Change include Change 3832550 by Rolando.Caloca DR - vk - Occlusion query rewrite WIP Change 3832589 by Rolando.Caloca DR - vk - Minor refactor to pools in prep for timestamps Change 3832618 by Rolando.Caloca DR - vk - Do not block timestamp queries Change 3832636 by Rolando.Caloca DR - vk - Fix old timestamp queries Change 3833138 by Rolando.Caloca DR - vk - Fix timestamp queries Change 3833249 by Rolando.Caloca DR - vk - Test lock Change 3833667 by Rolando.Caloca DR - vk - Old queries wait on the RHI thread now instead of the driver (disabled) Change 3833907 by Daniel.Wright Fixed NextStartOffset UAV index out of bounds Change 3833918 by Daniel.Wright D3D12 RHI: only refcount uniform buffers if GRHINeedsExtraDeletionLatency is false, which is no longer the case for PC or Xbox. The refcounting was heavy on performance as reported by a licensee because FRHIResource uses atomics for refcounting, which is only necessary when GRHINeedsExtraDeletionLatency is disabled. Change 3834852 by Rolando.Caloca DR - vk - Missing file Change 3834858 by Guillaume.Abadie Implements r.DOF.MinimalFullresBlurringRadius Change 3834979 by Rolando.Caloca DR - vk - Fix Change 3836117 by Rolando.Caloca DR - vk - Update to 1.0.65.1 Change 3836122 by Rolando.Caloca DR - vk - Added r.Vulkan.SubmitOcclusionBatchCmdBuffer - Added new error codes/messages Change 3836421 by Mark.Satterthwaite For the purposes of debugging and conformance testing mtlpp make it possible to compile *without* the IMP cache so that we call the underlying Objective-C. Change 3836896 by Uriel.Doyon Fixed concurrency and exit issues around d3d12 pipeline states on windows. Change 3837385 by Rolando.Caloca DR - vk - Dump memory on OOM Change 3837427 by Rolando.Caloca DR - vk - Change some arrays to array views Change 3837800 by Guillaume.Abadie Implements SHADER_PERMUTATION_RANGE_INT to make contiguous integer permutations that does not start to 0. Change 3838128 by Rolando.Caloca DR - vk - Support for non-cached memory types Change 3838540 by Guillaume.Abadie Refactors Diaphragm DOF's CoC tile buffer under a single API for better maintainability. Change 3838731 by Rolando.Caloca DR - vk - Descriptor pools per command buffer pool (turned off) Change 3838961 by Rolando.Caloca DR - vk - Use ring buffer for per frame uniform buffers - Enable descriptor pools per layout recycled per command buffer Change 3839087 by Rolando.Caloca DR - vk - Compile fixes for Android Change 3839106 by Marcus.Wassmer PR #4413: Removing unnecessary call to FString::ToLower (Contributed by gsfreema) Change 3839252 by Mark.Satterthwaite Fix mtlpp::Resource move operators. Change 3839426 by Marcus.Wassmer Duplicate 380972 Make PC GPU Benchmarks more reliable Change 3840041 by Guillaume.Abadie Fixes shader compilation failure in TAA with alpha channel through post processing support. Change 3840257 by Chris.Bunner Swapping a mul() to * in HLSLTranslator::Dot to allow scalar transformations per a UDN ticket. Change 3840308 by Rolando.Caloca DR - vk - Support for UB & non-UB on emulation mode Change 3840586 by Rolando.Caloca DR - Copy 3840577 Fix for CPUs with more than 16 cores Change 3840671 by Rolando.Caloca DR - vk - Copy from 3840663 Fix for layout ensure on HMD projects on Vulkan Change 3840980 by Rolando.Caloca DR - vk - Android compile fixes Change 3841989 by Guillaume.Abadie Slices Diaphragm DOF's Gather pass in multi shader files, and CFLAG_StandardOptimization flag for faster iteration time. Change 3842216 by Guillaume.Abadie Fixes DDOF's foreground alpha channel. Change 3842217 by Guillaume.Abadie Implements r.DOF.MaximalForegroundBlurringRadius Change 3842353 by Guillaume.Abadie Allows to disable foreground gathering with r.DOF.MaximalForegroundBlurringRadius=0 Change 3842747 by Rolando.Caloca DR - vk - Missing use of GPoolSizeVRAMPercentage - Support for smaller allocations if page size is not available Change 3842791 by Rolando.Caloca DR - vk - Use 95% of available GPU memory to handle some fragmentation Change 3843690 by Guillaume.Abadie Fixes diaphragm DOF's foreground after all this refactoring. Change 3844439 by Guillaume.Abadie Improves Coc dilate pass to make the gather pass as fast as possible, but still without artifacts caused by the fast gathering optimisation. Change 3844946 by Mark.Satterthwaite rd_route v1.1.1 with attached TPS approval. For macOS function interposition which is useful for debugging and the occasional workaround. Change 3845164 by Mark.Satterthwaite Add LLM support for macOS, including tracking of memory allocated in Objective-C. This makes use of runtime method swizzling in the Objective-C runtime and the rd_route library I added for Richard Wallis, which allows for arbitrary runtime function interposition and allows me to hook the custom allocators used in Apple's many Objective-C frameworks on which the whole macOS edifice is built. Objective-C objects are charged to the calling scope as they are too common to impose their own without murdering frame rate. We would need a TPS approval for an iOS function interposition library for this to work fully on iOS, if desired in the short term discarding LowLevelFree events that aren't in the map rather than asserting will workaround the problem. Change 3845849 by Marcus.Wassmer Fix clang and some normal refactor errors Change 3846026 by Rolando.Caloca DR - vk - Descriptor set allocation scheme rewrite - Type hash for each pool - Desc sets Pool on device Change 3846169 by Rolando.Caloca DR - vk - Remove old code for non-layout descriptor set pools Change 3846205 by Mark.Satterthwaite Disambiguate the PatchControlPointOut struct definitions in Metal tessellation shaders at Apple's suggestion to avoid a metallib gotcha. Change 3846346 by Arne.Schober DR - Missing Vector instructions Change 3847037 by Arne.Schober DR - Fix issue with GPU skincache where the offset of the clothbuffer is not relative to the offset of the actual vertexbuffer. Fixed MorphTarget Skincache Offset mixxup Change 3847275 by Marcus.Wassmer Copying MGPU to Dev-Rendering (//UE4/Dev-Rendering) Change 3847464 by Rolando.Caloca DR - vk - Fix static analysis warning Change 3847707 by Michael.Lentine Only use MorphTargetOffset when the shader enables morph targets. Change 3848533 by Richard.Wallis Handle Metal adding FirstInstance into [[ instance_id ]] which is different to other APIs. SV_InstanceID and SV_VertexID should now have their respective base instance and base vertex ID's subtracted before use in the shader. #jira UE-51716 Change 3848625 by Richard.Wallis Compile Fix Change 3848725 by Rolando.Caloca DR - Remove use of Build/SetLocalGraphicsPipelineState Change 3848797 by Rolando.Caloca DR - Deprecate Build/SetLocalGraphicsPipelineState Change 3849237 by Arne.Schober DR - AddCustom Ver for ModelVertex Serialization Change 3851247 by Rolando.Caloca DR - vk - Util functions Change 3851523 by Arne.Schober DR - Update Reflection Comparission shot from the BuildFarm. Change 3851859 by Rolando.Caloca DR - vk - Skip loader Change 3851889 by Krzysztof.Narkowicz Removed lights with lighting channels out of tiled deferred light list. Tiled deferred lights do not support lighting channels and it's wasn't worth to add extra complexity to this shader in order support this special case. #jira UE-51512 Change 3852181 by Rolando.Caloca DR - vk - Linux compile fix Change 3852547 by Uriel.Doyon Fixed Pre-Exposure shader compilation and Temporal AA issue. #jira UE-54276 Change 3852637 by Arne.Schober DR - Fixing Normal Automated Test Result Change 3853167 by Richard.Wallis AvfPlayer - support for streaming media. Due to an operator new/delete mismatch in Apples CFNetwork - we've had to change out one of that framework allocators using rd_route to avoid the memory corruption. #jira UE-35637 Change 3853447 by Chris.Bunner Fixing typos. Change 3853645 by Krzysztof.Narkowicz Fixed light functions on subsurface materials Removed strange code from blending between static and dynamic shadows #jira UE-50275 Change 3853660 by Rolando.Caloca DR - Fix OpenGL overwriting texture samplers on forward renderer Change 3853945 by Mark.Satterthwaite Duplicate #3831616 Fix the black ground scattering on Metal - we've had issues with the atmospheric fog calculations for a long time - one or more intermediate operations generates different precision on Metal so we end up passing -ve values into sqrt which then generates NaN/INF. For Metal when compiling this file and this file only #define sqrt() to sqrt(abs()) so that we don't see anymore unexpected black in atmospheric rendering. This is far from ideal but I don't want to make abs all inputs into every sqrt because AFAIK this is the only case where we have an issue, and until we to investigate each intermediate calculation that isn't ridiculously, soul-crushingly tedious, it isn't practical to identify the source of the error. #jira UE-53720 Change 3853966 by Mark.Satterthwaite Duplicate #3835852 Fix tessellation shaders in Metal with Manual Vertex Fetch enabled: - The control points idnex buffer shouldn't collide with anything else. - We can't use the optimisation of loading texture width & height from the buffer meta-table in tessellation shaders as the combined stages don't guarantee not to clobber unused buffer slots and screw it up when we use linear textures. #jira UE-53851 Change 3854250 by Uriel.Doyon Fix fbx automation tests Change 3854736 by Uriel.Doyon Added a tooltip to the EV100 slider in the exposure menu. Using game settings now disables the slider. #jira UE-53945 Change 3855047 by Jian.Ru Fix DFAO getting NANs when samples out of ViewRect #jira UE-54403 Change 3858197 by Krzysztof.Narkowicz View frustum shadow caster culling for pointlights/spotlights #jira UE-54381 Change 3860081 by Krzysztof.Narkowicz Tighter bounding sphere for a spotlight Replaced IntersectSphere(LightProxy->Origin, LightProxy->Radius) with LightProxy->SphereBounds for tighter culling of spotlights Directional light GetBoundingSphere() now everywhere returns Sphere((0,0,0),HALF_WORLD_MAX) for consistency and proper SphereBounds #jira UE-54258 Change 3860324 by Mark.Satterthwaite Update the macOS deployment target version to 10.12 from 10.11 as we officially ended support for El Capitan a while ago. Should mean that libraries compiled for 10.12 and up won't cause link warnings. Change 3860945 by Arne.Schober DR - Fix not releaseing SRV on render thread for FPositionVertexBuffer, FStaticMeshVertexBuffer, FColorVertexBuffer, FStaticMeshInstanceBuffer. #jira UE-54587 Change 3861129 by Jian.Ru Prevent distance culled objects from casting distance field direct shadows #jira UE-54533 Change 3861502 by Jian.Ru Exclude distance culled objects from DFAO calculation #jira UE-54533 Change 3862243 by Krzysztof.Narkowicz Changed radius of a directional light's bounding sphere from HALF_WORLD_MAX to WORLD_MAX in order to encopass entire WORLD_MAX box Change 3863476 by Krzysztof.Narkowicz Added BuildReflections option to ResavePackages commandlet #jira UE-54581 Change 3863717 by Rolando.Caloca DR - vk - Missed using pipeline cache on compute PSOs Change 3865332 by Arne.Schober DR - Fix UE-52356 Bone Weight Change 3866220 by Rolando.Caloca DR - vk - Fixed GetNativeResource missing on textures - Added support for -preferNvidia|AMD|Intel - Added VulkanRHIBridge.h - Minor fixes Change 3866222 by Rolando.Caloca DR - vk - Missed file Change 3866951 by Krzysztof.Narkowicz Fixed FreezeRendering on non editor builds: ComputeAndMarkRelevanceForViewParallel was calling FrozenMatricesGuard on multiple threads, reading and writing view matrices state in parallel. #jira UE-53640 Change 3867231 by Guillaume.Abadie Adds alpha mode to allow the tonemapper to passthrough the alpha channel for broadcast industry. Change 3867233 by Guillaume.Abadie Fixes a compilation failures in TAAU with r.PostProcessing.PropagateAlpha==2 Change 3867594 by Daniel.Wright Removed EditorOnlyDefaultMaterials, which added 79s of shader compilation during startup Added a dialog when opening the Material Editor on a Default Material, warning of advanced workflow Preventing Material Editor Apply or Save for a Default Material when the preview material has compilation errors Change 3870048 by Daniel.Wright Cleaned up formatting in TranslucentRendering from merges Change 3870106 by Krzysztof.Narkowicz Fixed some FArchive Tell()/Seek() 64bit->32bit truncations Change 3870211 by Rolando.Caloca DR - vk - Added -vulkanvalidation=N/-vulkanstandardvalidation/-novulkanstandardvalidation to set validation layer behaviour from cmd line Change 3870225 by Rolando.Caloca DR - vk - Some platforms do not use a standard swapchain Change 3870267 by Arne.Schober DR - SafeRelease SRVs that might be hold by the Vertexfactories (maybe due to indirect use in GlobalResources) Note that the VFs are not owners of the data, e.g the underlying Buffers might be released before this and this reference counting should be uneccessary Change 3870647 by Daniel.Wright Moved FogRendering.h to Renderer Change 3872130 by Krzysztof.Narkowicz Disable USE_GLOBAL_CLIP_PLANE for MATERIAL_DOMAIN_POSTPROCESS and MERIAL_DOMAIN_UI Merging GitHub Pull request #4459 "When material domain is not needing global clip plane there is no need to generate any code involving it. This does not alter output but removes lot of code at vertex shader and pixel shaders. At least on mobile rendered was actually generating clipping code for ui materials." #jira UE-54616 Change 3872145 by Rolando.Caloca DR - vk - Optional SupportsMarkersWithoutExtension Change 3872404 by Uriel.Doyon Added some guards when streaming virtual textures. Fixed optimized UCanvasRenderTarget2D::RepaintCanvas() to prevent resolving the texture twice. Fixed bad mipmap generation with UCanvasRenderTarget2D. Change 3872507 by Arne.Schober Back out changelist 3870267 Change 3874176 by Ben.Marsh IncludeTool: Add an flag to prevent scanning source files for exported symbols. Change 3874935 by Krzysztof.Narkowicz Fixed white thumbnails and other issues with sky lighting on ES3_1 path, by disabling GGX prefiltering, as mobile path doesn't have a single cubemap with all initialized mips. Instead it ping-pongs between 2 partially initialized. #jira UE-54656 Change 3875710 by Daniel.Wright Renamed uniform buffer member macros to be much shorter for readability Change 3876665 by Guillaume.Abadie Cherry-pick 3870715: Implements DOF's hybrid scatering bare bones. Change 3876666 by Guillaume.Abadie Cherry-pick 3871786: DOF hybrid scatering: fixes NaN source, transition to gather on close to screen edge and low intensity. Change 3876677 by Guillaume.Abadie Cherry-pick 3872348: Implements neighbor comparison for DOF's scattering compilation pass. Change 3876680 by Guillaume.Abadie Cherry-pick 3872357: Oups... fixes build... Change 3876683 by Guillaume.Abadie Cherry-pick 3872475: Controls number of mip to generate with DOF's reduce pass. Change 3876687 by Guillaume.Abadie Cherry-pick 3874104: Fixes various bugs in diaphragm DOF's hybrid scattering. Change 3876690 by Guillaume.Abadie Cherry-pick 3874144: Packs multiple DOF scattering group into same draw instance. Change 3876694 by Guillaume.Abadie Cherry-pick 3874275: Switches hybrid scattering with indexed indirect draw call to reduce scatter vertex shader invocation. Change 3876695 by Guillaume.Abadie Cherry-pick 3874674: Records min and max coc on DOF's setup's draw event. Change 3876783 by Rolando.Caloca DR - Static analysis fix Change 3876845 by Guillaume.Abadie Implements USceneCaptureComponent::ProfilingEventName Change 3877197 by Rolando.Caloca DR - vk - OQ fixes (disabled) Change 3877428 by Krzysztof.Narkowicz Merged with tiny tweaks Ansel photography plugin improvements from Adam Moss (GitHub pull request #4426): -The free-roaming photography camera has new constraints by default, i.e. it can't pass through walls -Photography session can be started and stopped programmatically, e.g. making it possible to bind photography to an alternative hotkey or button combo. This was an often-requested feature. -Tweakables and utilities are now exposed through a Blueprint Function Library (rather than direct manipulation of console variables) -The Ansel photography session UI now exposes some engine effect tweakables as sliders. For example, if the game is using depth-of-field then sliders are made available to allow the photographer to change the focal depth etc. The developer may suppress this behavior through the Blueprint Function Library. -Letterboxing is now removed during multi-part capture, d'oh. -Tiled shots are taken at full resolution even if ScreenPercentage < 100 -SSR is enabled during super-resolution shots since Ansel is now better at hiding any ensuing artifacts -Postprocess settings are frozen at session start to avoid discontinuities during photography, i.e. wandering between postprocess volumes when the camera auto-moves for stereo and 360 shots. #jira UE-54244 #4426 Change 3879086 by Krzysztof.Narkowicz Fixed sky/reflection capture (without owner) update - they are now updated only with a correspoding world Change 3879090 by Guillaume.Abadie Fixes tones of regressions on diaphragm DOF's recombine passes. Change 3879198 by Rolando.Caloca DR - vk - Support for real uniform buffers on Android platforms Change 3879993 by Krzysztof.Narkowicz -Fixed int64->int32 FArchive offset truncation in TShaderMap, VertexFactory and TextureDerivedData -Fixed FSerializationHistory bug, when trying to serialize 0 bytes #jira UE-43203 Change 3881462 by Guillaume.Abadie Implements full res DOF's setup pass for cheaper full res gathering in recombine pass. Change 3881524 by Krzysztof.Narkowicz Fixed compilation by removing FTickableEditorObject from FPreviewScene Change 3881724 by Chris.Bunner Static analysis fix. #jira UE-54762 Change 3881861 by Rolando.Caloca DR - vk - Fix layout warning when generating mip chain Change 3881864 by Rolando.Caloca DR - Use render passes on HZB Change 3882236 by Yuriy.ODonnell IndirectLightingColorScale is now applied to SubsurfaceLighting and DiffuseLighting. Was previously only applied to DiffuseLighting. #jira UE-42534 #github 3326 Change 3882325 by Guillaume.Abadie Implements FocusOnly lower gathering pass for Diaphragm DOF's slight out focus temporal stability. Change 3882340 by Rolando.Caloca DR - vk - Fix api dump Change 3882430 by Rolando.Caloca DR - vk - KHR_maintenance2 Change 3882563 by Rolando.Caloca DR - Add depth-stencil access mode to PSO initializer Change 3882929 by Rolando.Caloca DR - vk - Proper fix for maintenance extension macros Change 3883087 by Mark.Satterthwaite Allow disabling VSync in windowed mode for macOS 10.13.4+ and above. Change 3883597 by Guillaume.Abadie Collapses full and half res DOF setup passes together. Change 3883702 by Guillaume.Abadie Fixes mac's build. Change 3884747 by Uriel.Doyon Fix for static analysis warning Change 3884975 by Rolando.Caloca DR - vk - Move some platform defines to platform properties Change 3884988 by Rolando.Caloca DR - vk - Make an override per platform Change 3885832 by Rolando.Caloca DR - vk - Cosmetic change to group similar members Change 3885891 by Rolando.Caloca DR - vk - Some _RenderThread functions to avoid stalls Change 3886044 by Rolando.Caloca DR - Added RHI api _RenderThread version of RHICreateTextureReference RHICreateShaderLibrary RHICreateRenderQuery Change 3886560 by Guillaume.Abadie Fixes strong aliasing on TAAU's fast shader permutation. This adds a 6th neighbor sampling, and switch AA_TONE ON as TAA does for its fast shader permutation. Change 3886749 by Guillaume.Abadie Cherry-pick 3884748: Implements DOF's BuildBokehLUT for diaphragm blades simulation. Only used in hybrid scattering for now. Change 3886750 by Guillaume.Abadie Cherry-pick 3885457: Simulates diaphragm blades' curvature on bokeh. Change 3886752 by Rolando.Caloca DR - Fix metal static analysis Change 3887460 by Uriel.Doyon Fixed to more static analysis warning. Change 3888201 by Rolando.Caloca DR - vk - Added r.Vulkan.SubmitAfterEveryEndRenderPass - Fixed bad layout on rendering back buffer Change 3888209 by Rolando.Caloca DR - vk - Unity compile fix Change 3888254 by Rolando.Caloca DR - vk - Fix async texture layout Change 3888893 by Guillaume.Abadie Simulates bokeh in DOF's slight out of focus. Change 3889085 by Guillaume.Abadie Fixes DOF's reduce pass sampling outside viewport. Change 3889924 by Rolando.Caloca DR - vk - Skip seemingly bad validation error Change 3890573 by Daniel.Wright Only initialize FDiaphragmDOFGlobalResource in Feature Level 5 Change 3890590 by Arne.Schober DR - Fix Paper2d crash. When addMesh is called the Vertex and Indexbuffers are nulled out. re-create Dynamic Mesh builder for every Mesh instead. #jira UE-55063 Change 3890638 by Arne.Schober DR - Better fix for Paper2d which honors batching #jira UE-55063 Change 3891099 by Krzysztof.Narkowicz 1.5 texel shadow offset fix inside Manual2x2PCF based on #4485 GitHub pull request #jira UE-54985 #4485 Change 3891234 by Krzysztof.Narkowicz Optimized PCF2x2 and PCF3x3 - merged #4494 GithHub pull request #jira UE-55121 Change 3891407 by Rolando.Caloca DR - vk - Set vendor id earlier Change 3891417 by Rolando.Caloca DR - vk - Missing layout transitions Change 3891718 by Arne.Schober DR - Do not recreate one Frame Resource for dynamic draws #jira UE-55063 Change 3891925 by Yuriy.ODonnell Fix/workaround for inconsistent preprocessor definitions for NVAftermath that result in FD3D11DynamicRHI class layout mismatch. NVAftermath support is now enabled by default for Win64. NVAftermath is declared as a private dependency in D3D11RHI. It does not automatically propagate to modules that explicitly include private RHI headers (OculusHMD, OSVR, OSVRInput). This results in NV_AFTERMATH being defined while compiling RHI module and not defined when compiling other modules, causing memory corruption at runtime. The long-term solution for this and similar issues requires some mechanism for adding transitive module dependencies, so that anyone that depends on D3D11RHI module would automatically also get the NVAftermath. Additionally, private headers should *never* be included directly by external modules. The short-term solution is to explicitly add NVAftermath dependency to OculusHMD, OSVR and OSVRInput. Additionally, NV_AFTERMATH is no longer forced by D3D11RHIPrivate.h when it's not defined. This allows catching this kind of mismatch in the future through a compiler warning (C4668). #jira UE-53065 Change 3891987 by Rolando.Caloca DR - vk - Support for dedicated allocations Change 3892339 by Jian.Ru Fix a crash when tessellation shaders are used in dx12 #jira UE-55127 Change 3892528 by Rolando.Caloca DR - vk - Update Linux headers Change 3892867 by Rolando.Caloca DR - vk - Don't create swapchain if not needed Change 3893416 by Guillaume.Abadie Implements bokeh simmulation on foreground and background gather. Change 3893732 by Chris.Bunner GetRelevance_Internal should use the immediate parent resource, not the base, as some features are overridden by permutations e.g. UsesWorldPositionOffset. #jira UE-53404 Change 3893868 by Guillaume.Abadie Allocates diaphragm DOF's buffers and structered buffer only on supported platforms. Change 3893917 by Chris.Bunner Potential fix for CIS. Change 3893933 by Chris.Bunner Duplicating CL 2647737 as this is the same issue from that JIRA where accessing game-thread data was being prevented. We don't have this check in UMaterial::GetMaterialResource already, but presumably the UMaterialInstance case was never removed as we've not been calling it until now. Change 3894218 by Rolando.Caloca DR - vk - Remove stat counters per draw call, gains 10% CPU on Infiltrator Change 3894579 by Arne.Schober RT - Fix assert not in RenderingThread from Triangle Renderer. #jira UE-55247 Change 3894724 by Rolando.Caloca DR - vk - New API for batching barriers Change 3894909 by Arne.Schober DR - Fix crash in Speedtree wind where Renderdata is unavailable #jira UE-54544 Change 3895414 by Rolando.Caloca DR - Add a configurable threshold for SCWs time outs Change 3896429 by Marcus.Wassmer Allow variable frame-latency delay in FrameGrabber frames. For performance you want at least a 1 frame delay so you don't sync the GPU to the CPU. Change 3896495 by Marcus.Wassmer Set pointer properly Fix CIS Change 3897253 by Guillaume.Abadie Fixes CIS warning in diaphragm DOF Change 3899179 by Guillaume.Abadie Implements background hybrid scatter occlusion for diaphragm DOF. Change 3903654 by Rolando.Caloca DR - vk - Rework dump layer to allow other layers Change 3903766 by Rolando.Caloca DR - vk - More wrappers Change 3904025 by Rolando.Caloca DR - vk - More wrappers Change 3904342 by Rolando.Caloca DR - vk - Track image resources & callstacks Change 3904346 by Rolando.Caloca DR - vk - Copy fix from 4.19 for flickering grass Change 3904510 by Rolando.Caloca DR - vk - Compile fix Change 3904914 by Daniel.Wright [Integrate] Fixed PS4 transitions with forward shading Change 3904916 by Daniel.Wright [Integrate] Fixed PS4 transitions with occlusion queries Change 3905975 by Rolando.Caloca DR - vk - Missing wrappers Change 3905977 by Rolando.Caloca DR - vk - Missed file Change 3907829 by Rolando.Caloca DR - Move depth bounds to the PSO Change 3907832 by Rolando.Caloca DR - vk - Prep for delaying transitions Change 3907834 by Rolando.Caloca DR - vk - Fix for depth stencil issues/validation errors Change 3907967 by Rolando.Caloca DR - vk - Linux compile Change 3908093 by Rolando.Caloca DR - vk - Fix depthstencil layout on descriptors Change 3908393 by Rolando.Caloca DR - vk - Disable dedicated allocation as it causes crashes on Nvidia 700 series Change 3908401 by Rolando.Caloca DR - Do transitions outside render pass Change 3908422 by Rolando.Caloca DR - vk - Fix transition state not getting stored Change 3908735 by Guillaume.Abadie Cherry-pick 3896619: Fixes after TAAU post process material that had wrong default buffer UV. #jira UE-55317 Change 3908736 by Guillaume.Abadie Cherry-pick 3891352: Fixes ensure when visualizing HDR with TAAU. #jira UE-55019 Change 3908753 by Guillaume.Abadie Lets the renderer layout the views in the internal render targets like it prefers. Change 3909119 by Daniel.Wright Fix some static analysis warnings Change 3911943 by Rolando.Caloca DR - vk - Fix for packaging Vulkan projects Change 3912145 by Rolando.Caloca DR - vk - Fix layout on streaming textures Change 3913029 by Rolando.Caloca DR - Fix missing transition Change 3913048 by Rolando.Caloca DR - Fix for hlslcc Change 3913054 by Rolando.Caloca DR - vk - Fix number of layers on barrier Change 3913171 by Rolando.Caloca DR - vk - Fix for decal missing transition Change 3913211 by Rolando.Caloca DR - vk - Add debug name to image tracking Change 3913449 by Rolando.Caloca DR - vk - Restore transition Change 3913466 by Rolando.Caloca DR - Fix Vulkan EngineTest Change 3913537 by Rolando.Caloca DR - vk - Fixes independent samplers & textures (contributed by AMD) Change 3913548 by Rolando.Caloca DR - vk - Warning fix Change 3913691 by Rolando.Caloca DR - vk - Fixes for parallel (wip) Change 3914656 by Rolando.Caloca DR - vk - Fix bug when using separate samplerstates and textures Change 3914730 by Rolando.Caloca DR - vk - Bump version Change 3914764 by Rolando.Caloca DR - vk - Don't crash on exit Change 3915532 by Rolando.Caloca DR - vk - Parallel context fixes Change 3915589 by Rolando.Caloca DR - vk - Hoist and rename transition and layout manager class out of the context Change 3915592 by Rolando.Caloca DR - Fix gpu marker name Change 3917607 by Rolando.Caloca DR - vk - Fix depth bounds on Vulkan Change 3917609 by Rolando.Caloca DR - vk - Fix static analysis Change 3917616 by Rolando.Caloca DR - Fix D3D11 initialization Change 3920569 by Rolando.Caloca DR - vk - Prep for layout mgr refactor Change 3921023 by Rolando.Caloca DR - vk - Dump layer fixes Change 3921623 by Rolando.Caloca DR - vk - Prep refactor for layouts - Dump now shows marker tree Change 3922007 by Rolando.Caloca DR - vk - Fix extra allocation per draw call Change 3922442 by Rolando.Caloca DR - vk - Detect potential issues Change 3922470 by Rolando.Caloca DR - vk - Minor optimization Change 3922482 by Rolando.Caloca DR - vk - More minor optimizations Change 3923158 by Rolando.Caloca DR - Move r.DisableEngineAndAppRegistration out to common RHI and use it on Vulkan Change 3923486 by Rolando.Caloca DR - vk - Minor cpu optimizations Change 3923505 by Rolando.Caloca DR - vk - Use bigger allocations for uniform buffers Change 3923516 by Rolando.Caloca DR - vk - Android compile fix Change 3923557 by Rolando.Caloca DR - vk - Cache descriptorset layouts, refactor duplicated code Change 3923851 by Rolando.Caloca DR - vk - Linux compile fix Change 3924153 by Rolando.Caloca DR - vk - Support for dynamic UBs Change 3924193 by Rolando.Caloca DR - vk - Remove old per pso descriptor pools Change 3924197 by Rolando.Caloca DR - vk - Remove unused global uniform buffer pool Change 3924220 by Rolando.Caloca DR - vk - Wrap some unused classes in their define Change 3924234 by Rolando.Caloca DR - vk - Show ring buffer wrapping messages Change 3924243 by Rolando.Caloca DR - vk - Fix bad dynamic buffer Change 3924902 by Rolando.Caloca DR - vk - Fix crash running infiltrator Change 3925209 by Rolando.Caloca DR - vk - Fix bug with dynamic buffers - Remove old defines Change 3925300 by Rolando.Caloca DR - vk - Allow packed uniforms as dynamic UBs (with r.Vulkan.DynamicGlobalUBs) Change 3925627 by Rolando.Caloca DR - vk - Move DynamicOffsets into the pipeline state Change 3925834 by Rolando.Caloca DR - vk - Cache per stage information Change 3925835 by Daniel.Wright Fixed DisplayName for UParticleModuleCollisionGPU Change 3925897 by Rolando.Caloca DR - vk - Split update descriptors loop Change 3926488 by Rolando.Caloca DR - vk - 16MB for ring buffer on desktop, 8 MB for mobile Change 3928168 by Guillaume.Abadie Cherry-pick 3917219: Implements r.DOF.RecombineQuality Change 3928173 by Guillaume.Abadie Cherry-pick 3927888: Enables r.DOF.HybridScatter.BackgroundCompositing and r.DOF.HybridScatter.ForegroundCompositing to work when both enabled. Change 3928216 by Rolando.Caloca DR - vk - Fix Android - Fix static analysis Change 3929119 by Rolando.Caloca DR - vk - Rename some classes for clarity - Fix read-only cvar Change 3929151 by Rolando.Caloca DR - vk - Rename class Change 3930046 by Rolando.Caloca DR - Temp fix Vulkan flickering grass Change 3930148 by Rolando.Caloca DR - vk - Only update dirty descriptors - Use dynamic descriptors for packed global uniform buffers Change 3930998 by Guillaume.Abadie Packs shader permutation in different XGE submissions. Change 3931079 by Rolando.Caloca DR - vk - Fixes for Android and non-real ubs platforms Change 3931942 by Krzysztof.Narkowicz Depth rendering - When EarlyZPassMode is set to DDM_AllOccluders, dynamic objects need also to test bUseAsOccluder just like static ones #jira none Change 3932819 by Daniel.Wright [Integrate] Scene Textures uniform buffer * Base Pass Uniform Buffer now contains a Scene Textures uniform buffer. Previously the translucent base pass had to check ~40 loose scene texture parameters every draw. * FMeshMaterialShader's must now bind PassUniformBuffer and supply a valid pass uniform buffer. For most passes this is just FSceneTextureUniformParameters. * FRendererModule::DrawTileMesh can now cleanly set dummy scene texture resources, just by configuring how the pass uniform buffer is created. * Moved scene texture shader functions out of Common, into SceneTexturesCommon which must be manually included by shaders that want to use them * Separate Mobile Scene Textures uniform buffer to silo the platform complexities Moved DBuffer inputs out of FDeferredPixelShaderParameters and into FOpaqueBasePassUniformParameters Removed per-frame material uniform expressions. GameTime material node with period is now implemented with an fmod in the shader, without the use of MaterialFloat, so that it will happen at full precision. * Per-frame expressions were used when the GameTime material node had a period, to do the fmod on the CPU where 32 bit precision is guaranteed, for mobile GPU's where pixel shader precision is sometimes less than 32fp. Moved forward shading data into the Base Pass Uniform Buffer Removed instanced stereo support for the light cull grid - will have to be reimplemented without changing SRV's per draw Base pass sets View Uniform Buffer from DrawRenderState instead of choosing which one to set per-draw Fixed padding in nested uniform buffer structs Skip SRV members on Feature Level SM4 and below Change 3932964 by Rolando.Caloca DR - vk - Renderdoc on Android Change 3933095 by Daniel.Wright Moved FSceneTextureUniformParameters out of the opaque base pass uniform buffer. * Base Pass shaders now enable SCENE_TEXTURES_DISABLED when compiling for a material of any domain other than MD_Surface. These are used when rendering thumbnails of a material in a different domain, which could be opaque, but the opaque base pass drawing policy does not bind a scene textures uniform buffer, so the shader must not bind it. * Opaque materials can no longer use EyeAdaptation. Change 3933096 by Daniel.Wright Better d3d11 assert message when a uniform buffer was not set by the renderer Change 3933176 by Rolando.Caloca DR - vk - Prefer mailbox if available Change 3933271 by Ryan.Vance #jira UE-55936 Fixed missing referenced uniform bindings on AR pass-through camera shaders. Change 3934000 by Guillaume.Abadie Fixes Win32 build in ShaderCompilerXGE.cpp Change 3934299 by Guillaume.Abadie Fixes a bug in DOF's reduce operator that was casusing color leaking between background and foreground. Change 3934699 by Daniel.Wright Added bAffectDistanceFieldLighting to landscape Change 3935190 by Daniel.Wright Forward Light Grid SRV's use StructuredBuffer on Metal, instead of 'invariant Buffer', which throws off RemoveUniformBuffersFromSource parsing Change 3935606 by Daniel.Wright Removed LightmapPolicy::Set which was needed for vertex lightmaps Renamed FVertexFactory::Set to SetStreams to make it findable Change 3936510 by Rolando.Caloca DR - vk - Update glslangValidator.exe to 1.0.65.1 for dumped debug SPIRV shaders Change 3936545 by Richard.Wallis Clone of CL's (3925763, 3925430, 3925424, 3925385, 3925278) Mark Satt's Xcode fixes from task stream //Tasks/UE4/Dev-UERNDR-354-mtlpp/ Plus XCode 9.2 compile fix in ApplicationPlatformCompilerPreSetup.h for -Wunused-lambda-capture. Change 3938061 by Daniel.Wright Vulkan: Added support for SRV's in Uniform Buffers Change 3938123 by Daniel.Wright Vulkan: Slightly better assert for null resources in uniform buffer Change 3939197 by Rolando.Caloca DR - vk - Disable custom memory mgmt Change 3939677 by Rolando.Caloca DR - vk - Fix static analysis warning Change 3939809 by Rolando.Caloca DR - vk - Fixes for async compute Change 3939875 by Rolando.Caloca DR - vk - Support for -vktrace Change 3939977 by Rolando.Caloca DR - vk - Skip a condition during gather UBs - Set up efficient compute async var - Fix validation cmd line Change 3939982 by Rolando.Caloca DR - vk - Revert mipchain Change 3939984 by Rolando.Caloca DR - vk - Remove unnecessary asserts Change 3940082 by Rolando.Caloca DR - vk - Custom mem mgr Change 3940475 by Rolando.Caloca DR - vk - Fix DFAO (indirect draw offset) Change 3940555 by Rolando.Caloca DR - vk - Minor fixes Change 3940675 by Rolando.Caloca DR - vk - Fix indirect type mismatch Change 3941111 by Rolando.Caloca DR - Renderpass bGeneratingMips Change 3941847 by Daniel.Wright Fixed Volumetric Lightmaps on Static geometry only working if the geometry had been built with Surface Lightmaps before Change 3941978 by Rolando.Caloca DR - vk - Minor fixes for presenting on compute queue Change 3942074 by Rolando.Caloca DR - vk - Remove some RHI stalls - Fixed swap chain stat Change 3943946 by Daniel.Wright Fixed Texcoord0 on Volume materials on a particle sprite, including SubUV particles. Change 3944065 by Daniel.Wright Fixed SceneDepth collision getting broken on GPU particles when a scene capture is rendering Change 3944158 by Daniel.Wright Fixed ViewUniformShaderParameters accessing GEngine->PreIntegratedSkinBRDFTexture too early during slate loading screen Change 3944865 by Rolando.Caloca DR - vk - Prep for render passes Change 3945196 by Rolando.Caloca DR - Move render pass validate to cpp Change 3945202 by Rolando.Caloca DR - vk - Some fixes for using real render passes Change 3945357 by Rolando.Caloca DR - Fix bad condition Change 3946295 by Yuriy.ODonnell Added a sentinel member to FLightMap, which is initialized in the ctor and reset in the dtor. Sentinel is then checked in FLightCacheInterface::GetLightMapInteraction(). This aims to shed some more light on a hard-to-repro crash, which is suspected to be a use-after-free bug: http://crashreporter/Buggs/Show/1785593 Change 3946407 by Rolando.Caloca DR - vk - Prep for refactor Change 3946648 by Rolando.Caloca DR - vk - Fixes for async compute (wip) Change 3947299 by Rolando.Caloca DR - vk - FIx static analysis Change 3948434 by Rolando.Caloca DR - vk - Fix exiting with parallel Change 3948928 by Rolando.Caloca DR - vk - Fix enabling draw markers for tools Change 3949021 by Rolando.Caloca DR - vk - Buffer tracking layer Change 3949602 by Rolando.Caloca DR - vk - static analysis fix Change 3949757 by Rolando.Caloca DR - vk - Remove bogus parameter Change 3949810 by Rolando.Caloca DR - vk - Move waits for cmd buffer Change 3950270 by Guillaume.Abadie Implements dedicated gather pass for foreground hole filling to avoid being VGPR bound in foreground gather pass, but still being hable to amend foreground. Change 3950272 by Rolando.Caloca DR - vk - Minor refactor for semaphores Change 3950279 by Guillaume.Abadie Oups... fixes build Change 3950298 by Rolando.Caloca DR - vk - Gather wait semaphores in the cmd buffers Change 3950371 by Rolando.Caloca DR - vk - fixes for async compute Change 3950597 by Rolando.Caloca DR - vk - Fix for clip distance (fixes planar reflections) Change 3951075 by Rolando.Caloca DR - vk - Fix for async compute Change 3952524 by Guillaume.Abadie Some DOF enum refactoring. Change 3955016 by Daniel.Wright Fixed BuiltData package getting renamed into the map package during a content browser folder move, causing a redirector to be incorrectly placed in the map package Change 3955668 by Guillaume.Abadie Fixes a bug where full res coc buffer was computed even if not doing slight out of focus. Change 3956722 by Guillaume.Abadie Fixes a bug where r.DOF.MaximalForegroundBlurringRadius was screen percentage dependent. Change 3959212 by Guillaume.Abadie Prefixes all DOF's shaders files with DOF keyword. Change 3959705 by Guillaume.Abadie Optimises the DOF setup pass outputing half res and full res with LDS downsample. Change 3959941 by Guillaume.Abadie Halfs DOF's hybrid scatter compilation by using a unique downsampling for both foreground and background, instead of 2 reduce passes. Change 3962273 by Rolando.Caloca DR - Fix typos #jira UE-56317 PR #4586 Change 3962615 by Rolando.Caloca DR - vk - Compile fix Change 3962949 by Rolando.Caloca DR - Fix DOFDownsample extension Change 3962993 by Guillaume.Abadie Back out changelist 3962949 Change 3963016 by Guillaume.Abadie Adds missing DOFDownsample.usf Change 3963041 by Rolando.Caloca DR - vk - Misc changes to help integrate Change 3964293 by Guillaume.Abadie Fixes DOF's setup pass reading outside of the viewport. Change 3964475 by Guillaume.Abadie Collapses DOF's hybrid scatter compilation passes into reduce passes. Change 3964883 by Daniel.Wright Fixed 3d texture in uniform buffer on unsupporting RHI Change 3964897 by Rolando.Caloca DR - Compile fixes Change 3964914 by Guillaume.Abadie Fixes a bug on r.DOF.RecombineQuality=0 Change 3965153 by Guillaume.Abadie Fixes compile warning in D3D12Commands.cpp. Change 3965814 by Rolando.Caloca DR - Prep for integration conflict resolve Change 3965899 by Rolando.Caloca DR - Fix odd linkage issue Change 3966072 by Rolando.Caloca DR - More prep for merge Change 3966163 by Rolando.Caloca DR - Merge prep Change 3966844 by Guillaume.Abadie Packs multiple DOF scattered bokeh per instance and uses PT_RectList in DOF for platforms that can. Change 3967116 by Rolando.Caloca DR - Compile fixes for integration Change 3967273 by Rolando.Caloca DR - Use same path for mip generation Change 3967277 by Rolando.Caloca DR - vk - Fix mips on cubemaps Change 3967693 by Rolando.Caloca DR - Copying //UE4/Dev-Main@3912313 to //UE4-DevRendering, missing shaders Change 3967851 by Rolando.Caloca DR - Copying //UE4/Dev-Main@3912313 to //UE4-DevRendering, Engine 2/2 Change 3968083 by Rolando.Caloca DR - Integration compile fixes Change 3968240 by Rolando.Caloca DR - Shader compile fixes for integration Change 3968270 by Rolando.Caloca DR - Fix for missing hash calculation Change 3969426 by Rolando.Caloca DR - vk - Fix warning Change 3969869 by Krzysztof.Narkowicz Back out changelist 3946295 - UE-54537 is fixed, so no need for this debug sentinel. #jira none Change 3969944 by Rolando.Caloca DR - Warning fix Change 3970020 by Rolando.Caloca DR - Bump after integration Change 3970052 by Rolando.Caloca DR - Fix for mobile Change 3970236 by Daniel.Wright Causing decal shader to recompile to fix a merge bug Change 3970270 by Daniel.Wright Bump shader version from merge Change 3970339 by Olaf.Piesche Replace series of locks/unlocks with a single one for curve injection #tests QAGame Change 3970390 by Rolando.Caloca DR - Rename FSceneTextureUniformParameters to FSceneTexturesUniformParameters - Remove duplicate method for occlusion queries Change 3970523 by Rolando.Caloca DR - Fix serialization of shaders Change 3970533 by Arne.Schober DR - fix for removing the Speed tree wind when the scene gets deleted. The original enque rendercommand requeues the element onto the renderthread although the call already came from the Renderthread and the scene can get lost in between. #jira UE-56322 Change 3971160 by Guillaume.Abadie Fixes CompositeEditorPrimtive pass and SelectionOutline pass for VR editor to work with TAAU. Change 3971516 by Guillaume.Abadie Cherry-pick 3912629: Fixes SSR that was computing vigneting according to PrevScreen that could let some outside viewport samples going through when rotating the camera. #jira UE-55353 Change 3971594 by Krzysztof.Narkowicz Fixed assert inside BindLightMapVertexBuffer. FSplineMeshSceneProxy was calling BindLightMapVertexBuffer for invalid (still not generated) lightmap UV channel after mesh reimport. Simplified assert, as at the moment almost all of the high callsites already clamp lightmap uv channel. #jira UE-56321 Change 3971622 by Krzysztof.Narkowicz Fixed crash inside Indirect Lighting Cache. Data (reflection captures and lightmap) generation calls ULevel::GetOrCreateMapBuildData(), which can destroy lightmap data if level has legacy data. Last Lightmap generation step recreates this data, but if user cancels lightmap generation - it won't do that. #jira UE-56171 Change 3974788 by Rolando.Caloca DR - Remove GSupportsGenerateMips Change 3974789 by Rolando.Caloca DR - Remove bogus function Change 3974986 by Rolando.Caloca DR - vk - Tracking fixes Change 3974989 by Rolando.Caloca DR - vk - Don't submit dummy barriers Change 3975075 by Olaf.Piesche Update for particle curve injection improvement, fixing ES2 problems #tests QAGame tm-shadermodels, various color curve tests in-editor Change 3975957 by Uriel.Doyon Fixed invalid max texture resolution when using the bake material tools. Change 3978471 by Daniel.Wright New cvar r.SkylightUpdateEveryFrame Change 3978779 by Rolando.Caloca DR - Accessor for texture sizes Change 3978797 by Rolando.Caloca DR - Clean up RHI CopyTexture API Change 3978832 by Rolando.Caloca DR - vk - Workaround for RenderDoc crashing due to Descriptor Pool reset Change 3978836 by Rolando.Caloca DR - vk - Remove generate mips Change 3979201 by Rolando.Caloca DR - vk - RHI CopyTexture. Uses general layout for generating mips Change 3979204 by Rolando.Caloca DR - Use render passes and CopyTexture to generate mips Change 3979592 by Rolando.Caloca DR - Warning fix Change 3980855 by Krzysztof.Narkowicz Optimize bounding sphere radius after non-uniform scale by using bounding box extent. #jira UE-56227 Change 3981065 by Rolando.Caloca DR - vk - Fix bad layout #jira UE-56238 Change 3981346 by Rolando.Caloca DR - Copy from 3707257 Support for not flushing compute jobs (r.D3D11.UAVFlushNV) Change 3981347 by Rolando.Caloca DR - Copy from 3707257 Don't flush between morph dispatched Change 3981932 by Mark.Satterthwaite Generate the shader hash and function name when a Metal shader error needs to be reported so that even without shader code we get something to go on. Change 3982442 by Rolando.Caloca DR - Fix warning Change 3982652 by Rolando.Caloca DR - vk - Signal semaphore cleanup Change 3983917 by Richard.Wallis Clone of CL 3974146 converted for mtlpp along with extra mtlpp usage suggestions by Mark Satt: Fix for black flickering on first paint with weighted material landscape on Mac. When using AsyncCopyFromBufferToTexture in Metal we put the blit operation on the prologue encoder - however after a draw call using that resource the copy operation should happen after on the current encoder, this keeps the correct order of operations. Added Bool return from various Asnyc renderpass resource requests so caller can decide correct further action. Updated to include the other async functions. Change 3984409 by Guillaume.Abadie Attempts to make static analysis happy again. Change 3984435 by Nick.Bullard Checking in Performance Test level provided to us by Tor Frick based on UE-44841. This has been utilized for checking issues against Aftermath performance impact. The Map includes 2 Level Book marks, most testing has been done against Bookmark 1 view, in fullscreen, in game mode Change 3985087 by Mark.Satterthwaite Make sure that the particle scratch buffer is large enough to hold all the data for the curve texture we are rendering to, otherwise a full set of curves will start scribbling memory after 64Kb (the curve texture is 256Kb of data - 512x512x4 as sizeof(RGBAUInt8) == 4). This happens in ElementalDemo. Change 3985201 by Rolando.Caloca DR - Fix bad CopyTexture Change 3985258 by Mark.Satterthwaite Try and detect orientation changes so that we don't blow-up on iOS due to a huge mismatch between the drawable texture for the display and the scene's depth-stencil target. I can't just fiddle with the depth-stencil texture itself without running the risk of obliterating in-use data and really we shouldn't permit such a mismatch anyway but it is fallout from 3620990. #jira UE-55756 Change 3986449 by Rolando.Caloca DR - vk - Update & consolidate Vulkan headers to 1.1.70.1 Consolidate SDK into one Change 3986571 by Guillaume.Abadie Makes PVS-Studio happy again in DOF. Change 3987039 by Yuriy.ODonnell Initial implementation of tracing profiler to show CPU and multiple GPUs on the same timeline. Currently only supported on DX12 platforms. Use `TracingProfiler frames=N` console command to trigger a capture of the next N frames. Trace is saved to disk as a JSON file into `Saved/Profiling/Traces` directory. Trace file uses Google Tracing format and can be visualized in Chrome built-in profiler (chrome://tracing). `r.GPUStatsChildTimesIncluded=1` CVar makes timing scopes hierarchical. `TracingProfiler.BufferSize=N` CVar controls the size of the tracing buffer, which may need to be increased for long traces (default is 65k events). Only can be set at startup. Change 3987074 by Yuriy.ODonnell Implemented timestamp calibration on DX11. Calibration is only performed when tracing profiler session starts. Change 3987160 by Yuriy.ODonnell Added thread naming and ordering to the tracing profiler output Change 3987331 by Mark.Satterthwaite Remove the Nvidia hack to retain resource references in command-buffers for UE-46604 as the mtlpp refactor provides stronger resource lifetime guarantees. #jira UE-46604 Change 3987754 by Mark.Satterthwaite Fix MetalRHI memory reporting in non-default path. PR #4568 Change 3988184 by Arciel.Rekman Linux: Fix editor OpenGL performance (UE-55960). - GetCurrentThreadId() calls became much more frequent with the OpenGL RHIT refactor. - We used to only cache that value in monolithic builds, because having per-thread static variables in dynamic libraries is risky due to OS limits. - This change adds dynamically-managed per-thread cache for non-monolithic builds. #jira UE-55960 Change 3988394 by Rolando.Caloca DR - vk - Improve memory mgmt - Use 256MB pages for Device heap (or 1/8th if less). - Remove texture allocations not going through resource manager Change 3988405 by Marcin.Undak Fix VulkanQuery crash on exit #codereview rolando.caloca #codereview arciel.rekman #rb arciel.rekman Change 3988567 by Rolando.Caloca DR - vk - Support for packed global UBs on pci aperture heap Change 3988668 by Rolando.Caloca DR - vk - Remove old comments Change 3988956 by Marcin.Undak RecordPerformance: added option to skip building/cooking before tests #rb none #codereview arciel.rekman Change 3989161 by Yuriy.ODonnell Static analysis error fix Change 3989196 by Guillaume.Abadie Fixes a crash in light shaft's TAA pass. #jira UE-57366 Change 3989207 by Yuriy.ODonnell Refactored FRealtimeGPUProfilerFrame to avoid splitting profile events when calculating exclusive times of scopes. This allows tracing profiler to retain the hierarchical view of the data, while keeping CSV and GPU Stat system behavior intact. Change 3989469 by Rolando.Caloca DR - vk - Fix for bad index; fix for bad transition Change 3989772 by Yuriy.ODonnell Implemented timestamp calibration on Vulkan Change 3990040 by Marcus.Wassmer Aftermath enabled by default. Removed unnecessary warning for other vendors Change 3990064 by Mark.Satterthwaite Ensure that packed globals are reuploaded when the command-encoder is restarted - don't simply invalidate the existing parameters. This properly handles cases where a single logical render-pass is broken into multiple command-encoders and/or command-buffers - otherwise all shaders must reset all parameters each time. When we move between frames we *do* want to perform a full state reset though as previous frame globals are treated as invalid. Change 3990080 by Mark.Satterthwaite Change the way we invalidate the visibility buffer between command-buffers and command-encoders so that on iOS you can reuse the same buffer within the same command-buffer, but not across more than one. The code provides an exception to this rule when running under the MetalRHI validation tools which can break each draw call into its own buffer. Change 3990084 by Mark.Satterthwaite Get MetalStatistics compiling again. Change 3990381 by Arciel.Rekman Bring back D3D12 in RecordPerformance. Change 3991113 by Rolando.Caloca DR - Fix crash on RHI thread on mobile preview - Check RHI objects are not null in the PSO initializer Change 3991191 by Ryan.Vance #jira UE-55952 Reimplemented instanced stereo for forward lighting cull grid after the srv/ub clean up. Change 3991343 by Rolando.Caloca DR - Copy from 3911492 UE4 - Disabled parallel mobile bass pass by default. This is experiemental and not known to be useful on any mobile platform. Change 3991375 by Mark.Satterthwaite Proper copyright assignment in the mtlpp debugger header. Change 3993151 by Daniel.Wright Fix RTDF resource transition found by Rolando Change 3993818 by Rolando.Caloca DR - Missed file Change 3993923 by Krzysztof.Narkowicz Fixed crashes inside RemoveSpeedTreeWind() and RemoveSpeedTreeWind_RenderThread(). FStaticMeshComponentRecreateRenderStateContext didn't flush deferred render updates causing stale RenderData to be left: 1. Thumbnail manager called SetStaticMesh(nullptr), which added StaticMeshComponent to deferred render updates. 2. UStaticMesh::Build called FStaticMeshComponentRecreateRenderStateContext and destroyed DenderData, but didn't touch Thumbnail's manager StaticMeshComponent as it was nullptr. 3. This resulted in a StaticMeshComponent with stale RenderData pointer. #jira UE-54544 Change 3994033 by Rolando.Caloca DR - vk - Reworked layers & extensions, as we were not doing it properly - Remove -vulkanstandardvalidation and -novulkanstandardvalidation as they are not needed anymore Change 3994275 by Mark.Satterthwaite Change to linking against mtlpp via AddEngineThirdPartyPrivateStaticDependencies and marking its header with THIRD_PARTY_* macros in the vain hope that might convince the remote compilation code to distribute the module to the remote machine when building MetalRHI. #jira UE-57507 Change 3994365 by Mark.Satterthwaite Pilfer some code from the old MetalHeap file to handle calculating texture memory size on older macOS and iOS builds when running with stats or LLM enabled. #jira UE-57513 Change 3994382 by Rolando.Caloca DR - vk - Some missing locks during image tracking Change 3994422 by Rolando.Caloca DR - vk - Remove bogus shader format Change 3995530 by Rolando.Caloca DR - vk - Fix for crash when validation is enabled Change 3995531 by Rolando.Caloca DR - vk - Fix static analysis Change 3995532 by Rolando.Caloca DR - vk - Added support for r.Vulkan.SaveValidationCache Change 3995610 by Uriel.Doyon Texture Streaming Changes and Fixes: - Using the small FOV items (like scopes) now only affect visible primitives (through "r.Streaming.MaxHiddenPrimitiveViewBoost"). - Static components added after the level is registered in the streaming manager are now handled correctly (fixes the low quality on the chests) - Dynamic components do not need to register to the streaming manager anymore. - Optimized dynamic component management by removing duplicate entries in the update list. - Added a pregarbage collect pass to the dynamic component management to optimize GC handling. - Added a budget reset logic whenever the scene requirements change significantly. - PIE worlds now have correct visibility information. - Fixed possible invalid memory access when processing the streaming manager slave views. - Refactored the incremental level texture data build to prevent new components from being unhandled. - Removed StreamingManager callbacks for NotifyActorSpawned() and NotifyPrimitiveAttached() - Added a StreamingManager callback NotifyPrimitiveUpdated(), to be used whenever a primitive streaming state must be updated. #jira none Change 3995908 by Arciel.Rekman Fix compile errors when using new Vulkan queries. Change 3995990 by Arciel.Rekman More compile fixes to new Vulkan queries. - MSVC did not catch this, clang did. Change 3996101 by Rolando.Caloca DR - vk - Win32 compile fix Change 3996323 by Mark.Satterthwaite Use the right include path to export the mtlpp headers. #jira UE-57507 Change 3996392 by Arciel.Rekman Vulkan: fix crash on start when using new queries. - CommandBufferManager was not yet set at that point and the code in queries relied on it. Change 3996585 by Rolando.Caloca DR - Slight improvement to GL being black, but just a temporary 'workaround' as it's not correct. Change 3998806 by Arciel.Rekman Fix Linux build (UE-57602). #jira UE-57602 Change 3998866 by Arciel.Rekman SubwaySequencer: fix old shader platform name. Change 3998947 by Mark.Satterthwaite Silence deprecation warnings in CEF on macOS now that we've moved to 10.12 as the minimum. #jira UE-57577 Change 3998951 by Mark.Satterthwaite Fix last of the deprecation errors that I am aware of for macOS 10.12. #jira UE-57581 Change 3998984 by Mark.Satterthwaite Build mtlpp for iOS 9.0 not 9.3. #jira UE-57586 Change 3999065 by Rolando.Caloca DR - vk - Make sure we use version 1.0.0 #jira UE-57521 Change 3999071 by Arne.Schober DR - [UE-55433, UE-57361] Hack SNORM support in OpenGL by re-interpreting UNORM. Underlying data is always SNORM. #jira UE-55433, UE-57361 Change 3999494 by Rolando.Caloca DR - Enable r.UnbindResourcesBetweenDrawsInDX11 in debug - Clear compute resources when r.UnbindResourcesBetweenDrawsInDX11 is enabled Change 4000197 by Krzysztof.Narkowicz Mesh simplifier - normalize TexCoordWeights using min/max TexCoord range. This fixes precision issues for very big TexCoord values and allows to optimize for all TexCoord channels when channels have values of different magnitudes (e.g. non standard TexCoord data). #jira UE-54935 Change 4000305 by Yuriy.ODonnell Suppress PVS Studio warning V547 (Expression is always true) related to Aftermath Reported issue to PVS team and to NVIDIA. Confirmed false positive, fix coming in future PVS version (v6.24). #jira UE-57579 Change 4000853 by Arciel.Rekman Linux: fix not calling CrashReportClient (UE-57678). #jira UE-57678 Change 4001504 by Rolando.Caloca DR - vk - Fix transition Change 4002460 by Krzysztof.Narkowicz Toggle for contant shadow length in word space Exposed contact shadows to Blueprints #jira none Change 4002608 by Rolando.Caloca DR - vk - Fix static analysis - Fix potential debug image tracking crash - Comment out unused methods Change 4002615 by Rolando.Caloca DR - vk - Allow r.Vulkan.WaitForIdleOnSubmit to be set at startup (e.g. in ConsoleVariables.ini) Previously, if your map needed to UpdateSkyCaptureContents on startup, an ensure would fail if GWaitForIdleOnSubmit was set. PrepareForCPURead needs to wait for the command buffer to finish before trying to read the results back, but the wait has already happened when r.Vulkan.WaitForIdleOnSubmit is set. Trying to wait again correctly complains that the command buffer is not in the correct state. So, skip the WaitForCmdBuffer call when r.Vulkan.WaitForIdleOnSubmit is set. Change 4002640 by Rolando.Caloca DR - vk - Missing support for CVarDefaultBackBufferPixelFormat Change 4002919 by Guillaume.Abadie Implements DOF's temporal upsampling pass for better dynamic resolution stability. Change 4002984 by Guillaume.Abadie Integrates Sebastian Aaltonen's ALU optimisations for TAAU. Change 4003112 by Olaf.Piesche Fir for TBB stall (resulting in severe hitches and hangs in the editor with stats active); tested multiple scenarios and encountered no hitches. #tests QAGame PerformanceTest and RenderTest map with various stats on and off Change 4003159 by Mark.Satterthwaite Undo parts of changelist 3970553 - the ref-counted pointer approach to returning textures to the pool is not working as expected so we'll remove that. It'll be faster on the CPU without it and everything works thanks to the changes this CL made to the way textures were released. #jira UE-57538 Change 4003287 by zachary.wilson Adding reflection capture content to TM-LightingScenarios Change 4003395 by Arne.Schober DR - Fix unitzialised value when clicking Go To in the editor #jira UE-57048 Change 4003425 by Rolando.Caloca DR - vk - Fix for new occlusion queries Change 4003530 by Arne.Schober DR - Disable GPU Benchmark in headless configurations #jira UE-57673 Change 4003717 by Rolando.Caloca DR - vk - Fix for depth not store, stencil store Change 4003719 by Rolando.Caloca DR - Minor switch to render pass Change 4003720 by Mark.Satterthwaite Don't suballocate private memory buffers on Vega and only Vega as there is something wrong with the blits in those cases but I can't capture a GPU trace to find out what right now (the driver is broken) - could be a bug in my code but this works on Polaris and Nvidia so it will need to be filed as a radar for AMD. Remove the FMetalBufferChunk from FMetalBuffer and simply store a pointer to the owning Heap/Magazine allocator. The FMetalResourceHeap now calls a new Release function to return the buffer to the allocator which will be faster on the CPU. #jira UE-57659 Change 4003854 by Mark.Satterthwaite Undo parts of 3990064 and try a different approach to get the uniforms to upload and remain available in the right places. As the original bug has been lost to time we should keep an eye out for missing buffer bindings by running under the Metal validation layer periodically. #jira UE-57576 Change 4004709 by Rolando.Caloca DR - Support for D3D 11, 12 & Vulkan for UAVs off Index Buffers Change 4005149 by Guillaume.Abadie Adds shader permutation to avoid clamping input buffer UV in DOF's gather pass. Change 4005284 by Uriel.Doyon Resaved volume texture assets with proper engine version. #jira UE-57534 Change 4005286 by Guillaume.Abadie Reduces constant setup in DOF's gather pass. Change 4005359 by Rolando.Caloca DR - vk - Fix annoying warning Change 4005363 by Rolando.Caloca DR - Fix android not finding vulkan shaders Change 4005457 by Rolando.Caloca DR - vk - Fix swapchain crash Change 4005473 by Patrick.Kelly UE-57135: Editor crash if set Reflection Capture Resolution to be 64 and New a Default level Codde by Daniel Tested by Patrick Change 4005474 by Rolando.Caloca DR - vk - Remove glsl code from shaders. Packaged QAGame goes from 176MB to 162MB Change 4005759 by Krzysztof.Narkowicz Fixed a bug, where reflection capture build is called, even though we are in mobile preview mode. #jira UE-57743 Change 4005774 by Mark.Satterthwaite Update the wave intrinsics to avoid implicit bool->uint conversion that Apple don't like. #jira UE-57750 Change 4005974 by Mark.Satterthwaite Don't use cubemap array types on iOS Metal as they aren't available on all devices and we need to maintain backward compatibiliy for years to come. #jira UE-57083 Change 4006056 by Mark.Satterthwaite Remove the use of the PrimitiveType argument from Metal draw calls. #jira UE-57822 Change 4006139 by Mark.Satterthwaite - Move the render-pass functions into the MetalRHI implementation for later alteration. - Implement Index buffer UAVs for Metal - makes them more like vertex-buffers so this is one more step on the road to a unified buffer base-class implementation. Change 4006215 by Mark.Satterthwaite Metal's begin & end render/compute pass API implementation will take some time, but for now make it not depend on the parent stub implementation. Change 4006394 by Mark.Satterthwaite In lieu of a real instruction count just use the number of lines in the "Main" function of the shader as the instruction count for Metal. #jira UE-57551 Change 4006493 by Mark.Satterthwaite MetalRHI can currently support 4-component formats for Buffer UAVs - this might need some thought in the future as the API evolves but we might as well take advantage while we can. Change 4006495 by Daniel.Wright Integrate from Refactor branch * New FMaterialRenderProxy function GetMaterialWithFallback which provides both the FMaterialRenderProxy and FMaterial. Needed when falling back to default material, so that proxy and material resource match. * Local vertex factory uniform buffer Change 4006851 by Brian.Karis Fix for joined charts forming an L to inflate both axii. Thanks to Jess Kube of The Coalition. Change 4006852 by Brian.Karis Fix for hard coded reflection capture cube map size. Should fix light static light aliasing in captures Change 4006918 by Brian.Karis New ByteBuffer functionality. Memcpy and scatter upload. Can implement GPU side TArray reflection. Not yet used by checked in code. WIP optimization. Change 4007246 by Guillaume.Abadie Creates lower quality permutation for DOF's gathering pass, without Coc based weighting of the samples, and lower number of gathering ring for fast accumulator. Change 4007291 by Guillaume.Abadie Exposes more DOF scalability settings. Change 4007328 by Guillaume.Abadie Optimises DOF's half res only setup pass using gather4 Change 4007627 by Richard.Wallis Fix for when Magic Mouse cannot zoom in World Composition editor. Missing default SNodePanel::OnMouseMove behaviour. Tested using a classic 2xbutton + wheel mouse and a Mac MagicMouse. #jira UE-57030 Change 4007682 by Richard.Wallis No video when playing HLS streaming video on Mac. 2 Issues, FPS was zero making duration for video sample buffer nonsense and Video Track dimensions were going to zero on the AVAsset once fully initialized when playing HSL streams. Now cache relevant details and handle zero frame rate. Notes: - Caching the frame rate is not as important as we could look it up each time and fix for zero - ignoring that at the moment. - Assume we DO NOT want the FrameSize to be the last fetched video frame size from the AvfMediaVideoSampler as I think that is the video quality for streaming video and not the media frame size. - Renamed a variable in the AvfMediaVideoSample - was called FrameRate but it was the FrameDuration by that point. #jira UE-56734 Change 4007731 by Rolando.Caloca DR - Disable byte buffers on non-hlsl based platforms #jira UE-57851 Change 4007741 by Rolando.Caloca DR - Disable byte buffers on hlslcc platforms Change 4007782 by Mark.Satterthwaite Force Metal shaders, including the stdlib, to recompile. Change 4007918 by Rolando.Caloca DR - vk - Some static asserts Change 4008404 by Arciel.Rekman Do not crash on incompatible Vulkan drivers (UE-57521). #jira UE-57521 Change 4008442 by Daniel.Wright Better comments on ERHIFeatureLevel expectations Change 4008494 by Arne.Schober DR - moved bDeletedThroughDeferredCleanup before begincleanup to catch cases where the reference is added twice to the array. also removed finishcleanup as all they ever did was deleting the pointer anyway, and it sould be adfded if such functionallity is ever required fom outside of the regular destructor. #jira UE-57754 Change 4008730 by Mark.Satterthwaite After the most recent changes to handling uniform buffer dirty bits in MetalRHI we should guard against attempts to set an unbound uniform buffer. #jira UE-57870 Change 4008949 by Brian.Karis Fix compile warning Change 4008951 by Brian.Karis Added LTC LUT textures Change 4009326 by Guillaume.Abadie Compiles out DOF's gathering bokeh simulation on platform other than desktop. Change 4009380 by Krzysztof.Narkowicz Moved area light code before the contact shadows, so contact shadows use representative light's direction. Merged all contact shadows shader code. Contact shadows keep constant screen space length independent of FoV settings. Contact shadows for translucents. Contact shadows for eye. Change 4009555 by Guillaume.Abadie Splits DOFCocTile.usf in two. Change 4009999 by Yuriy.ODonnell MallocStomp can now be enabled on certain platforms using '-stompmalloc' command line argument. Previously it was necessary to modify MallocaStomp.h and re-compile the engine. Currently supported platforms: Win64, Mac, Linux. Replaced hard-coded page size with FPlatformMemory::GetConstants().PageSize. Change 4010288 by Rolando.Caloca DR - vk - Fix for vertex streams Change 4010289 by Krzysztof.Narkowicz D3D12 - fixed depth bounds bug, where depth bounds wasn't properly set to [0;1] after disabling. #jira UE-57510 Change 4010297 by Rolando.Caloca DR - vk - Remove some functions for android Change 4010315 by Rolando.Caloca DR - vk - Remove create info macro Change 4010451 by Rolando.Caloca DR - vk - Reuse samplers - Infiltrator goes from 5759 to 24 samplers! Change 4010627 by Rolando.Caloca DR - vk - Fix missing values for tracking swapchain validation Change 4011924 by Guillaume.Abadie Implements tile based early return optimisation on DOF's postfiltering method. Change 4011941 by Guillaume.Abadie Shaves some ALU in DOF's accumulator for LowQuality permutation. Change 4012093 by Yuriy.ODonnell Disable MallocStompOverrunTest() in static analysis config, as it intentionally performs an out-of-bounds access. Change 4012195 by Rolando.Caloca DR - vk - Fix for mobile backbuffer layout Change 4012202 by Rolando.Caloca DR - vk - Don't use staging buffers on UMA Change 4012467 by Rolando.Caloca DR - Remove redundant check Change 4012486 by Rolando.Caloca DR - Fix missing transition Change 4012518 by Guillaume.Abadie Implements fast shader permutation for DOF's TAA pass. Change 4013084 by Arciel.Rekman Fix for Linux clock discrepancy. - Causing at least one precision issue, possibly more. (Edigrating 4003273, 4012462 from //UE4/Dev-Editor/... to //UE4/Dev-Rendering/...) Change 4013266 by Uriel.Doyon Fixed crash when setting SceneDepthTextureNonMS and not having valid depth buffers in the SceneContext. Change 4013626 by Uriel.Doyon Fixed crash in the lighting build when creating a blueprint of the ALight and placing a light component in it. #jira UE-51672 Change 4013805 by Rolando.Caloca DR - Fix more missing transitions Change 4014128 by Arne.Schober DR - Do not create LocalVFUniformBuffer when running without MVF #jira UE-57929 Change 4014193 by Uriel.Doyon Editing component transforms now invalidate the component's lighting cache. #jira UE-48134 Change 4014282 by Rolando.Caloca DR - vk - Remove extra validation during dump Change 4014584 by Uriel.Doyon Duplicated static meshes now generate a new GUID to prevent possible issues with lightmass. #jira UE-49064 Change 4014604 by Uriel.Doyon UStaticMesh postduplicate now only generates a new GUID if !bDuplicateForPIE. Change 4015460 by Guillaume.Abadie Composes separate translucency within DOF's recombine pass. Change 4015571 by Guillaume.Abadie Refactors tonemapper to use global shader permutation API, that adds permutation for HDR output device rather than dynamic branching that some shader compiler are not very well optimizing. Change 4015984 by Krzysztof.Narkowicz Fixed crash inside DFAO resource allocation, when DFAO viewport has zero area. #jira UE-58000 Change 4016056 by Mark.Satterthwaite Fix Mac Metal shader compilation of texture cube arrays. Change 4016062 by Richard.Wallis Convert things like Space, Delete, F6 etc to unicode so they display correctly on the Mac menu rather than first letter of word. Added the default Mac commands to the GenericCommands so we get a Chord overwrite message and stop things like cmd+ q / w / h from getting bound. #jira UE-46999 Change 4016109 by Mark.Satterthwaite One unified Metal buffer implementation - will make further changes a heck of a lot easier. Change 4016221 by Patrick.Kelly UE-57617: Ensure changing viewmode to ShaderComplexity while in -game Change 4016238 by Guillaume.Abadie Makes clang happy again in Tonemapper. Change 4016309 by Mark.Satterthwaite More *_RenderThread implementations for MetalRHI. Change 4016414 by Mark.Satterthwaite And MetalRHI version of CreateStructuredBuffer_RenderThread... Change 4016498 by Mark.Satterthwaite Don't hold on to the uniform buffers bound to the hull shader when switching to a tessellated draw call as they'll have the wrong buffer layout. #jira UE-57930 Change 4017394 by Juan.Canada OpenGL: Fixed shading artifacts due incorrect UNORM/SNORM conversions in skin/skincache/computetangent shaderss. #jira UE-57691 Change 4017522 by Rolando.Caloca DR - vk - Remove unused code path (old mip generation detection) Change 4017539 by Rolando.Caloca DR - vk - Fix for sky lighting mips showing green on AMD Change 4017542 by Arciel.Rekman Moved appCountTrailingZeros to a non-SSE header (fixes ARM64 build). - Arguably WITH_SLI shouldn't apply to Linux on ARM but the fact that the function wasn't available is bad on its own. Change 4017827 by Guillaume.Abadie Optimises DOF's scattering cost by a third. Change 4017835 by Rolando.Caloca DR - Only allow a render pass to generate mips for one color render target Change 4017889 by Mark.Satterthwaite Cache all the Metal state objects to avoid hitting the API unnecessarily. Change 4018251 by Mark.Satterthwaite Fix broken rendering on Metal that tracked back to the innocuous looking changes in CL #4006495 (no blame attached - these changes are entirely reasonable) and cause various bugs in QAGame's TM-DistanceFields, ElementalDemo and probably more. Doesn't fix broken SpeedTree rendering :(. MetalRHI was allowing uniform buffers to blow away linear texture buffers when the constant buffer has been elided due to dead-code elimination. This problem can manifest without linear textures if the uniform buffer contains both constant data and a resource-table but the shader doesn't use any of the constant data. That's because Metal doesn't separate constant buffers from any other kind of buffer unlike D3D which separates all the slots out - and Metal doesn't provide enough buffers to emulate the D3D arrangement. So far this has only manifested in the MVF + Linear Texture case but a more robust solution will be necessary long term. Change 4018514 by Guillaume.Abadie Implements r.DOF.Scatter.MinCocRadius. Change 4018553 by Guillaume.Abadie Implements r.DOF.Scatter.MaxSpriteRatio to control the budget upperbound of DOF's scattering Change 4020369 by Yuriy.ODonnell Disable MallocStompOverrunTest in all static analysis configs (using USING_CODE_ANALYSIS macro) Previously was only disabled for PVS-Studio. Change 4020620 by Arciel.Rekman Fix XboxOne CIS (fallout of appCountTrailingZeros move). Change 4020949 by Guillaume.Abadie Configures DOF in scalability settings. Change 4021593 by Rolando.Caloca DR - vk - Support for Aftermath style api on AMD Change 4021740 by Rolando.Caloca DR - vk - Change log output Change 4022008 by Uriel.Doyon Fixed renderthread stalls when streaming texture mips on low end systems. Change 4022135 by Rolando.Caloca DR - vk - Fix last mip's layout during mip chain creation Change 4022607 by Jian.Ru Speculative fix for a bug where an invalid vertex buffer is deferenced #jira UE-56229 Change 4022890 by Rolando.Caloca DR - Fix reference count not getting released Change 4023540 by Mark.Satterthwaite Avoid some pointless retain/release calls on Metal Encoders. Change 4023796 by Marcus.Wassmer Tell users they are over the maximum size when allocating very large rendertargets. Change 4025337 by Yuriy.ODonnell Improved use-after-free detection mechanism and physical memory usage of MallocStomp on Windows. MallocStomp on Windows will now reserve virtual address space for every allocation and then commit physical pages only to the valid usable part. Physical pages will be unmapped on Free, but virtual address space will not be released and therefore will never be re-used. Virtual address space is allocated from the OS in blocks of 1GB and then linearly sub-allocated. This reduces VA space usage, as VirtualAlloc returns blocks on 64KB granularity even if we just need 4KB. As a small bonus, this also reduces number of syscalls per allocation. This dramatically increases accuracy of use-after-free detection, but consumes significant amount of memory for the OS page table. Virtual memory limit for a process on Win10 is 128 TB, which means we can afford to keep virtual memory reserved for a long time. Running Infiltrator demo consumes ~700MB of virtual address space per second. Additionally, committing physical pages only for the usable part of the entire virtual block reduces physical memory usage by ~30% compared to old behavior, which allocated and committed entire block of pages via BinnedAllocFromOS and then marks border page as non-accessible. Change 4026047 by Rolando.Caloca DR - Fix test/shipping #jira UE-58148 Change 4026150 by Krzysztof.Narkowicz Force proper ordering of buffer visualization materials - after tonemapping (so exposure doesn't influence it) and before editor stuff like icons. #jira UE-57992 Change 4026226 by Rolando.Caloca DR - Fix static analysis #jira UE-58150 Change 4026354 by Jian.Ru Debug check trying to catch a crash. Only enabled in editor build #jira UE-50111 Change 4026655 by Rolando.Caloca DR - Fix for static analysis #jira UE-58149 Change 4026763 by Rolando.Caloca DR - Remove references to defunct CCT to avoid confusing licensees Change 4027167 by Uriel.Doyon Fixed possible out of bound buffer access when serializing with FDuplicateDataWriter. #jira UE-56509 Change 4027850 by Jian.Ru Prevent log spam #jira UE-50111 Change 4029546 by Rolando.Caloca DR - Compile fixes Change 4029624 by Yuriy.ODonnell Addressed static analysis errors in MallocStomp - VirtualAlloc return value is now explicitly checked. - C6250 is suppressed, as VirtualFree does not release address space by design. Change 4030225 by Yuriy.ODonnell Static analysis warning fix: make sure declaration of Sleep() is consistent between Windows headers and TBB The complexity with this particular case is that the warning is generated in synchapi.h, which is included by some Windows headers. If a module includes TBB and then Windows platform headers, static analyzer will report this warning. Suppressing it would require wrapping all instances of Windows header includes in third-party macros. Current pragmatic solution is to modify the Sleep() declaration in TBB header to be consistent with Windows and to report the issue to Intel for a permanent fix. Change 4030440 by Rolando.Caloca DR - Fix crash on mobile #jira UE-58222 Change 4030570 by Daniel.Wright Allow null SRV's in uniform buffers for feature levels that don't support SRV's in shaders Change 4030618 by Arne.Schober DR - missing tangent/normal sign conversion after integration from main #jira UE-58224 Change 4031588 by Rolando.Caloca DR - vk - Fix compile error when missing vkCmdWriteBufferMarkerAMD Change 4032145 by Mark.Satterthwaite Fix UE-58268 by only emitting the base_instance/base_vertex variables required to fix-up the instance/vertex ID values to match D3D when the Metal version is 1.1 or higher, earlier versions don't support these features. #jira UE-58268 Change 4032209 by Rolando.Caloca DR - Fix crash on EngineTest: Mesh Batch's UserIndex is not a union anymore Change 4033178 by Guillaume.Abadie Fixes FXAA sampling outside viewports, that was causing black outline on bottom and right edge of the screen when ViewSize != BufferSize, problematic for some screenshot automated test. #jira UE-58151 Change 4034489 by Daniel.Wright Fixed UStaticMeshComponent modifying its UStaticMesh when undoing a change. This caused a crash when other static mesh components using the same mesh asset were rendered, since their rendering state was not recreated. A component should not modify its asset during PostEditUndo. * This behavior has been present for a long time but was previously hidden because only the vertex factory of the mesh asset is cached in static draw lists, not any of its rendering resources (eg vertex declaration). Change 4035157 by Uriel.Doyon Fixed deadlock in the streaming code when running with -onethread. #jira UE-58299 Change 4035198 by Rolando.Caloca DR - vk - Fix issue when an older SDK was installed, UBT would pick it (should pick the newer of ThirdParty\Vulkan or installed SDK). #jira UE-58267 Change 4035730 by Arne.Schober DR - Fix missing Fog parameters during LightScattering Injection #jira UE-57608 Change 4035843 by Daniel.Wright Reimplemented support for EyeAdaptation node in opaque materials Change 4036837 by Marcus.Wassmer Replace some of the screenshots to match new un-tonemapped buffer visualization Change 4036980 by Rolando.Caloca DR - vk - Fix deadlock contention during mem allocation on Linux Change 4037225 by Guillaume.Abadie Fixes jittering selection outline. #jira UE-58350 Change 4038056 by Marcus.Wassmer roll back changelist 4026150. breaks a bunch of automated tests by cutting off half the image. Change can go back in later with that part fixed also Change 4038296 by Jian.Ru Static analysis fix #jira UE-58377 Change 4038402 by Ben.Marsh Suppress IncludeTool warnings caused by CL 3998947. Change 4038514 by Arne.Schober DR - Fix case with MVF where instance offset is not supported by the API (in this case only foliage OpenGL and TvOS), usually the buffers are offsetted instead but with MVF we do not use offsetted buffers, therfore the offset needs to be passed into the shader although we are drawing with offset of 0. #jira UE-57652 Change 4038747 by Marcus.Wassmer Back out changelist 3853645, causing us to lose shadows in the shaderhair test Change 4040138 by Rolando.Caloca DR - Fix compile warning Change 4041614 by Rolando.Caloca DR - vk - Fix for Oculus module #jira UE-58267 Change 3810277 by Daniel.Wright Ray Traced Distance Field shadows use a two pass tile culling algorithm with no tile max - fixes flickering from tile overflow in dense areas or with a low sun angle. Costs .2ms on PS4. The distance field scene buffers now use float4 on PS4 and Xbox, saves .1ms on PS4. Change 3817029 by Uriel.Doyon Added UVolumeTexture, which use 3D textures. Compressed formats are supported on DX11, DX12, PS4 and XB1. Projects targetting OpengGL don't have access to compressed formats (as the implementation has texture tiling issues). Add "r.AllowVolumeTextureAssetCreation" set as 0 by default, which controls whether volume texture can be sampled in materials and whether they can be created from 2D texture assets. Platform not supporting BC7, will now fallback on RGBA8 instead of DXT to preserve quality, in an attemps to increase usage of BC7. #jira UE-32263 Change 3819960 by Michael.Lentine Expose UEPhysics Clothing Parameters through UI. Change 3823401 by Rolando.Caloca DR - Add NumQueriesInBatch to RHIBeginOcclusionQueryBatch Change 3844805 by Arne.Schober DR - Increased Intermediate normal of Umodel and Skelmesh from 8bit Unorm Compressed to float. A resave/rebuid/reimport of the meshes is recommended to recover some lost precision. Fixed an issue with compressed (packed) normals on the GPU which were off by one integer representation. Also switched from UNORM to SNORM to get a discrete zero representation and removed some mads from all the VertexShaders. Change 3847283 by Marcus.Wassmer Extra fixes from Uriel Change 3876607 by Rolando.Caloca DR - Use render passes when running occlusion queries - Removes the RHI(Begin|End)OcclusionQueryBatch API Change 3903799 by Daniel.Wright [Integrate] Pass Uniform Buffers * All pass-constant shader inputs should go into the appropriate pass uniform buffer, instead of being set per-draw * Moved many per-draw base pass parameters over to the Base Pass Uniform Buffer * Opaque and Translucent base pass shaders have different uniform buffers, which allows compile errors when accessing an invalid resource (eg GBuffer in Opaque), instead of silently falling back to GBlackTexture Uniform buffers can now contain nested structs with UNIFORM_MEMBER_STRUCT() * This allows composing a uniform buffer at a particular update frequency out of many features, with encapsulation of each feature's parameters in a struct. * Eg deferred fog uses FFogUniformParameters, but so does translucency in the base pass, where FFogUniformParameters is reused nested inside the base pass uniform buffer. * Resources can now be located anywhere in the uniform buffer. Padding is inserted to the cbuffer representation to keep memory layouts matching. In the future the cbuffer could be compacted. * RemoveUniformBuffersFromSource() which works around HLSLCC lack of struct initializers now handles nested structs Change 3917500 by Rolando.Caloca DR - Change depth bounds so only the enable bit is in the PSO, allow min/max to be dynamically modified Change 3964907 by Guillaume.Abadie Implements RectList topology support in RHI. Change 3979171 by Mark.Satterthwaite Copying //Tasks/UE4/Dev-UERNDR-354-mtlpp to Dev-Rendering (//UE4/Dev-Rendering): Rewrites MetalRHI in terms of mtlpp, which is a C++ wrapper library built around Metal's Objective-C API that attempts to reduce overheads and eliminate resource lifetime errors. Regarding mtlpp: - The mtlpp library uses C++ constructor/destructor and smart-pointer style management of Objective-C retain/release calls to prevent over- and under-release problems. - To reduce Objective-C overheads the mtlpp library caches the internal C-function that implements the Objective-C selectors for the most commonly used Metal protocol types and calls the function directly - this avoids objc_msgSend which does this look-up dynamically and thus improves CPU performance slightly. - Another advantage is that mtlpp provides infrastructure to extend the Metal API slightly to help improve MetalRHI - the two important aspects are mtlpp::CommandBufferFence which provides a consistent CPU<->GPU synchronisation primitive and sub-buffer allocations from mtlpp::Buffer which allow for far superior memory management. - Validation functionality is also provided by mtlpp to detect CPU vs. GPU data races and resource lifetime validation - this is expensive and is thus optional and compiled out from Shipping binaries that should be used when performance is most critical. The validation only works between resource modification and *submitted* command-buffers - anything that is being actively encoded on the CPU is ignored and it remains the responsibility of the application to validate the order of operations when encoding. Apple Platform: - LLM support which tracks Objective-C objects is enabled only on macOS - we don't have the necessary libraries to intercept and override the internal system calls on iOS. MetalRHI: - All the types are switched over, (mostly) insuling the external API from the horror of Metal and Objective-C. - Buffers are now managed quite differently, small buffers are allocated from a magazine allocator that allocates in fixed blocks from a larger parent buffer, intermediate sized buffers are allocated from a simple heap allocator that wraps a larger buffer and anything of reasonable size (>2Mb) will use the pooled allocator. This *radically* reduces the number of buffer resources, by as much as a factor of 10, because they are now sub-allocated without the need to use MTLHeap or MTLFence so they are performance equivalent to the existing implementation on the GPU and much faster on the CPU. Total memory use is approximately the same. - Vertex & index buffer management has been updated to reflect changes in the management and to avoid reallocating buffers which provide a Linear Texture (for SRVs) unless strictly necessary. This ensures that even in cases where a dynamic buffer is updated multiple times in a frame it will still work acceptably well. - The Metal ring-buffer implementation is completely different again, this time it can use Managed memory on macOS which allows for much better performance on eGPUs which will be more and more important for Mac. - Everyone that needs to wait on a command-buffer fence (rather than a command-buffer itself) now use mtlpp::CommandBufferFence, which prevents race conditions between the different command-buffer handlers (which sometimes execute out of order). - LLM tracking should now report the same data as the MetalRHI stats group for buffer & texture allocations - there is no segmentation for Vertex/index/Structured/Uniform allocations in Metal so these numbers are going to be wrong and will need to be rethought. - What will be unseen are the number of small but important resource usage fixes that avoid stale resources from being bound to the device after the point at which they become invalid. This should eliminate a class of errors where the GPU uses a resource pointer that is modified by the CPU and was necessary to satisfy the new mtlpp validation code. Other: - Remove the Metal focused workarounds from the ClothBuffer resource binding and related vertex-buffer SRV - these were put in when MetalRHI/MetalShaderFormat couldn't handle float->uint conversions correctly and they should now. - Fix a validation error caused by trying to render a 0-sized scissor rect which is invalid in Metal and simply pointless elsewhere. - Consistency of disabling the Manual Vertex Fetch behaviour in shaders. #jira UERNDR-354 Change 3979312 by Rolando.Caloca DR - Remove bogus bKeepOriginalSurface parameter in CopyToResolveTarget Change 4005122 by Rolando.Caloca DR - Support for PS4 Index Buffer UAVs Change 4016298 by Guillaume.Abadie Fixes DOF hybrid scattering on platforms that supports RectList topology. Change 4018575 by Guillaume.Abadie Optimises DOF's reduce pass when doing scattering compilation. Change 4020317 by Guillaume.Abadie Implements WaveBroadcastIntrinsics.ush. [CL 4042226 by Marcus Wassmer in Main branch]
2018-05-01 10:36:33 -04:00
void FOpenGLDynamicRHI::RHIBeginRenderPass(const FRHIRenderPassInfo& InInfo, const TCHAR* InName)
{
FRHISetRenderTargetsInfo RTInfo;
InInfo.ConvertToRenderTargetsInfo(RTInfo);
SetRenderTargetsAndClear(RTInfo);
RenderPassInfo = InInfo;
if (InInfo.NumOcclusionQueries > 0)
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 4041614) #lockdown Nick.Penwarden ============================ MAJOR FEATURES & CHANGES ============================ Change 3774677 by Arne.Schober DR - Deprecated SetLocal from the RHICmdlist Fixed some unnecessary PSO collisions. Change 3809579 by Chris.Bunner Back out changelist 3774677. #jira UE-53483 Change 3810363 by Mark.Satterthwaite More random fixes to mtlpp: most important is the extension to Buffer that allows creation of sub-buffers that are merely views onto a sub-range of the parent. These sub-buffers are valid to use throughout the mtlpp API with two exceptions: they may not be used for visibilityResultsBuffers and Set*BufferOffset functions cannot take this offset into account (as the encoder does not hold onto the buffers and I don't want it to). In the case of Set*BufferOffset the caller has to know what is going on and in the case of visibilityResultsBuffers it'll just assert as it isn't sensible. This makes it *much* easier to do things like sub-buffer allocation, though the caller must be aware of the alignment restrictions of their intended usage as they are not possible to enforce. For example, a call to SetVertexBuffer requires an offset alignment must match the alignment of the data-type in the shader for "device" resources, or for "constant" data it must be max(4, sizeof(datatype)) on iOS and 256 on macOS. This should allow for much more tightly packed sub-allocations than earlier approaches, though older drivers (e.g. Mac OS X 10.11) enforce only the coarser "constant" data restriction everywhere. Change 3810407 by Marcus.Wassmer PR #4322: ShadowSetup Bug Fix: Only stencil mask drawn meshes (Contributed by DSDambuster) Change 3810676 by Guillaume.Abadie Makes r.Test.SecondaryUpscaleOverride work with any arbitrary pixel size. Change 3810696 by Guillaume.Abadie Adds support for #include "../MyFile.ush" in the shader compiler. Change 3810698 by Guillaume.Abadie Implements enum class based shader permutation dimension. Change 3810699 by Guillaume.Abadie Implements Diaphragm DOF ground work. Change 3811536 by Guillaume.Abadie Pulls the trigger on CircleDOF's setup pass for DiaphragmDOF. Change 3811958 by Mark.Satterthwaite More fixes for mtlpp. Change 3811964 by Mark.Satterthwaite Only views onto a mtlpp::Buffer should return a valid parent-buffer. Change 3812604 by Guillaume.Abadie Changes Diaphragm DOF's source file layout. Change 3812827 by Mark.Satterthwaite More missing/broken functionality in mtlpp fixed and fixed obvious leaks. Change 3812920 by Guillaume.Abadie Adds support for per mip level UAV in FSceneRenderTarget. Change 3812926 by Mark.Satterthwaite Change the way we handle mtlpp resource construction to avoid leaks. Change 3812960 by Rolando.Caloca DR - vk - Disable DFGI Change 3812968 by Rolando.Caloca DR - Linker fix Change 3813318 by Mark.Satterthwaite Fix linear texture allocation from a buffer sub-view. Change 3813326 by Mark.Satterthwaite Fix another Metal mtlpp sub-buffer allocation failure. Change 3813328 by Guillaume.Abadie Removes global samplers in TAA for GL4, Vulkan and Switch. Change 3813937 by Rolando.Caloca DR - Fix logs not getting dumped when r.DumpSCWQueuedJobs is on Change 3813947 by Rolando.Caloca DR - noshaderworker should override r.XGEShaderCompile Change 3817017 by Uriel.Doyon Fixed texture editor black screen #jira UE-53653 Change 3818568 by Rolando.Caloca DR - Fix log when shader jobs crash - Move log10 to common - Added COMPILER_VULKAN define Change 3818603 by Uriel.Doyon Fix to static analysis warning Change 3818623 by Rolando.Caloca DR - Workaround hlslcc loop unrolling bug Change 3819070 by Uriel.Doyon Fix to stat duplication. Change 3819105 by Uriel.Doyon Refactored volume sample shader to avoid using texture dimension. Change 3819136 by Rolando.Caloca DR - vk - Per platform files (empty) Change 3819180 by Rolando.Caloca DR - vk - Move defines out of config into per platform Change 3819247 by Rolando.Caloca DR - vk - Remove more defines into platform settings Change 3819318 by Rolando.Caloca DR - vk - Fixes for linking Change 3819868 by Rolando.Caloca DR - vk - Linux & Android fixes Change 3819873 by Guillaume.Abadie Adds support for PermutationId on r.DumpShaderDebugInfo=1 Change 3819940 by Rolando.Caloca DR - vk - Fix Linux issues Change 3819956 by Rolando.Caloca DR - vk - Invalid check Change 3819961 by Michael.Lentine Hide attributes when plugin is not present Change 3819980 by Rolando.Caloca DR - vk - Standard validation always Change 3820039 by Rolando.Caloca DR - vk - Fix invalid ensure Change 3820326 by Rolando.Caloca DR - vk - Linux compile fix Change 3820422 by Michael.Lentine Add back GBufferAO. Change 3820433 by Rolando.Caloca DR - Fix D3D12 crash on 20 thread (10x2 cores) machines Change 3821677 by Rolando.Caloca DR - vk - Win32 compile fix Change 3821961 by Rolando.Caloca DR - Vulkan uses real UB by default on non-Android Change 3821968 by Rolando.Caloca DR - vk - Update glslang 1.0.65.1 Change 3821969 by Uriel.Doyon Added support for stat groups that must be sorted by name. Defined by DECLARE_STATS_GROUP_SORTBYNAME. Change 3821983 by Rolando.Caloca DR - vk - Change to static array (0.1ms on 10k draw calls) Change 3824141 by Rolando.Caloca DR - vk - Fix static analysis - Bumped up some (c) 2017->2018 Change 3824355 by Rolando.Caloca DR - vk - Accessor to find out if a cmd buffer has been submitted Change 3824420 by Rolando.Caloca DR - Sanity check number of queries per batch on D3D11 as to not break other RHIs Change 3824463 by Rolando.Caloca DR - Removed dummy ensure for D3D12 Change 3824609 by Rolando.Caloca DR - vk - Linux compile fix Change 3826074 by Mark.Satterthwaite Start IMP-caching the various descriptor types in mtlpp. Change 3826098 by Rolando.Caloca DR - vk - Dump layer compile fixes Change 3826113 by Rolando.Caloca DR - vk - Missing dump functions Change 3826302 by Rolando.Caloca DR - vk - Compile fix - Change dump handles to %p Change 3826635 by Mark.Satterthwaite Forward declarations required for mtlpp compilation without exposing Metal headers - plus fixes to the mtlpp test compiler. Change 3827072 by Mark.Satterthwaite Switch some more mtlpp descriptors over to IMPTables from objc_msgSend. Change 3827909 by Guillaume.Abadie Replaces diaphragm DOF's prefiltering with LDS bank coherent bilateral reduction, and implements 1/8 res background gathering pass. Change 3827952 by Guillaume.Abadie Updates copy right to year 2018 on diaphragm DOF's new files. Change 3828055 by Rolando.Caloca DR - vk - Rename in prep for changes Change 3828229 by Guillaume.Abadie Avoids to log multiple time global shader type name that have multiple permutations when verifying global shader map. Change 3828427 by Guillaume.Abadie Reimplements Max3x3 gathering post filtering for Diaphragm DOF with proper shader permutation. Change 3829979 by Guillaume.Abadie Fixes a color NaN source in diaphragm DOF's TAA pass. Change 3830116 by Rolando.Caloca DR - vk - Fix GPU queries/frame time on old system - New system in place, disabled temporarily Change 3830169 by Rolando.Caloca DR - vk - Fix async pso creation crash Change 3830193 by Rolando.Caloca DR - vk - CPU RHI thread improvement Change 3830291 by Guillaume.Abadie Automatically lower the number of gathering rings on background half res gather pass as far CoC is getting smaller. Change 3830300 by Rolando.Caloca DR - vk - Static analysis fix: Split VulkanCommon.h out of VulkanConfiguration.h Change 3830589 by Mark.Satterthwaite In mtlpp cache the IMPTables for all the Metal @protocol's that are dependent on the MTLDevice, this avoids a mutex & map lookup. Also make all the concrete types store their IMPTable statically as it won't change. Change 3830793 by Mark.Satterthwaite Fix a small number of bugs introduced with the mtlpp descriptor and table caching. Change 3831491 by Jian.Ru Fix driver version unknown #jira UE-53688 Change 3832335 by Rolando.Caloca DR - vk - Change include Change 3832550 by Rolando.Caloca DR - vk - Occlusion query rewrite WIP Change 3832589 by Rolando.Caloca DR - vk - Minor refactor to pools in prep for timestamps Change 3832618 by Rolando.Caloca DR - vk - Do not block timestamp queries Change 3832636 by Rolando.Caloca DR - vk - Fix old timestamp queries Change 3833138 by Rolando.Caloca DR - vk - Fix timestamp queries Change 3833249 by Rolando.Caloca DR - vk - Test lock Change 3833667 by Rolando.Caloca DR - vk - Old queries wait on the RHI thread now instead of the driver (disabled) Change 3833907 by Daniel.Wright Fixed NextStartOffset UAV index out of bounds Change 3833918 by Daniel.Wright D3D12 RHI: only refcount uniform buffers if GRHINeedsExtraDeletionLatency is false, which is no longer the case for PC or Xbox. The refcounting was heavy on performance as reported by a licensee because FRHIResource uses atomics for refcounting, which is only necessary when GRHINeedsExtraDeletionLatency is disabled. Change 3834852 by Rolando.Caloca DR - vk - Missing file Change 3834858 by Guillaume.Abadie Implements r.DOF.MinimalFullresBlurringRadius Change 3834979 by Rolando.Caloca DR - vk - Fix Change 3836117 by Rolando.Caloca DR - vk - Update to 1.0.65.1 Change 3836122 by Rolando.Caloca DR - vk - Added r.Vulkan.SubmitOcclusionBatchCmdBuffer - Added new error codes/messages Change 3836421 by Mark.Satterthwaite For the purposes of debugging and conformance testing mtlpp make it possible to compile *without* the IMP cache so that we call the underlying Objective-C. Change 3836896 by Uriel.Doyon Fixed concurrency and exit issues around d3d12 pipeline states on windows. Change 3837385 by Rolando.Caloca DR - vk - Dump memory on OOM Change 3837427 by Rolando.Caloca DR - vk - Change some arrays to array views Change 3837800 by Guillaume.Abadie Implements SHADER_PERMUTATION_RANGE_INT to make contiguous integer permutations that does not start to 0. Change 3838128 by Rolando.Caloca DR - vk - Support for non-cached memory types Change 3838540 by Guillaume.Abadie Refactors Diaphragm DOF's CoC tile buffer under a single API for better maintainability. Change 3838731 by Rolando.Caloca DR - vk - Descriptor pools per command buffer pool (turned off) Change 3838961 by Rolando.Caloca DR - vk - Use ring buffer for per frame uniform buffers - Enable descriptor pools per layout recycled per command buffer Change 3839087 by Rolando.Caloca DR - vk - Compile fixes for Android Change 3839106 by Marcus.Wassmer PR #4413: Removing unnecessary call to FString::ToLower (Contributed by gsfreema) Change 3839252 by Mark.Satterthwaite Fix mtlpp::Resource move operators. Change 3839426 by Marcus.Wassmer Duplicate 380972 Make PC GPU Benchmarks more reliable Change 3840041 by Guillaume.Abadie Fixes shader compilation failure in TAA with alpha channel through post processing support. Change 3840257 by Chris.Bunner Swapping a mul() to * in HLSLTranslator::Dot to allow scalar transformations per a UDN ticket. Change 3840308 by Rolando.Caloca DR - vk - Support for UB & non-UB on emulation mode Change 3840586 by Rolando.Caloca DR - Copy 3840577 Fix for CPUs with more than 16 cores Change 3840671 by Rolando.Caloca DR - vk - Copy from 3840663 Fix for layout ensure on HMD projects on Vulkan Change 3840980 by Rolando.Caloca DR - vk - Android compile fixes Change 3841989 by Guillaume.Abadie Slices Diaphragm DOF's Gather pass in multi shader files, and CFLAG_StandardOptimization flag for faster iteration time. Change 3842216 by Guillaume.Abadie Fixes DDOF's foreground alpha channel. Change 3842217 by Guillaume.Abadie Implements r.DOF.MaximalForegroundBlurringRadius Change 3842353 by Guillaume.Abadie Allows to disable foreground gathering with r.DOF.MaximalForegroundBlurringRadius=0 Change 3842747 by Rolando.Caloca DR - vk - Missing use of GPoolSizeVRAMPercentage - Support for smaller allocations if page size is not available Change 3842791 by Rolando.Caloca DR - vk - Use 95% of available GPU memory to handle some fragmentation Change 3843690 by Guillaume.Abadie Fixes diaphragm DOF's foreground after all this refactoring. Change 3844439 by Guillaume.Abadie Improves Coc dilate pass to make the gather pass as fast as possible, but still without artifacts caused by the fast gathering optimisation. Change 3844946 by Mark.Satterthwaite rd_route v1.1.1 with attached TPS approval. For macOS function interposition which is useful for debugging and the occasional workaround. Change 3845164 by Mark.Satterthwaite Add LLM support for macOS, including tracking of memory allocated in Objective-C. This makes use of runtime method swizzling in the Objective-C runtime and the rd_route library I added for Richard Wallis, which allows for arbitrary runtime function interposition and allows me to hook the custom allocators used in Apple's many Objective-C frameworks on which the whole macOS edifice is built. Objective-C objects are charged to the calling scope as they are too common to impose their own without murdering frame rate. We would need a TPS approval for an iOS function interposition library for this to work fully on iOS, if desired in the short term discarding LowLevelFree events that aren't in the map rather than asserting will workaround the problem. Change 3845849 by Marcus.Wassmer Fix clang and some normal refactor errors Change 3846026 by Rolando.Caloca DR - vk - Descriptor set allocation scheme rewrite - Type hash for each pool - Desc sets Pool on device Change 3846169 by Rolando.Caloca DR - vk - Remove old code for non-layout descriptor set pools Change 3846205 by Mark.Satterthwaite Disambiguate the PatchControlPointOut struct definitions in Metal tessellation shaders at Apple's suggestion to avoid a metallib gotcha. Change 3846346 by Arne.Schober DR - Missing Vector instructions Change 3847037 by Arne.Schober DR - Fix issue with GPU skincache where the offset of the clothbuffer is not relative to the offset of the actual vertexbuffer. Fixed MorphTarget Skincache Offset mixxup Change 3847275 by Marcus.Wassmer Copying MGPU to Dev-Rendering (//UE4/Dev-Rendering) Change 3847464 by Rolando.Caloca DR - vk - Fix static analysis warning Change 3847707 by Michael.Lentine Only use MorphTargetOffset when the shader enables morph targets. Change 3848533 by Richard.Wallis Handle Metal adding FirstInstance into [[ instance_id ]] which is different to other APIs. SV_InstanceID and SV_VertexID should now have their respective base instance and base vertex ID's subtracted before use in the shader. #jira UE-51716 Change 3848625 by Richard.Wallis Compile Fix Change 3848725 by Rolando.Caloca DR - Remove use of Build/SetLocalGraphicsPipelineState Change 3848797 by Rolando.Caloca DR - Deprecate Build/SetLocalGraphicsPipelineState Change 3849237 by Arne.Schober DR - AddCustom Ver for ModelVertex Serialization Change 3851247 by Rolando.Caloca DR - vk - Util functions Change 3851523 by Arne.Schober DR - Update Reflection Comparission shot from the BuildFarm. Change 3851859 by Rolando.Caloca DR - vk - Skip loader Change 3851889 by Krzysztof.Narkowicz Removed lights with lighting channels out of tiled deferred light list. Tiled deferred lights do not support lighting channels and it's wasn't worth to add extra complexity to this shader in order support this special case. #jira UE-51512 Change 3852181 by Rolando.Caloca DR - vk - Linux compile fix Change 3852547 by Uriel.Doyon Fixed Pre-Exposure shader compilation and Temporal AA issue. #jira UE-54276 Change 3852637 by Arne.Schober DR - Fixing Normal Automated Test Result Change 3853167 by Richard.Wallis AvfPlayer - support for streaming media. Due to an operator new/delete mismatch in Apples CFNetwork - we've had to change out one of that framework allocators using rd_route to avoid the memory corruption. #jira UE-35637 Change 3853447 by Chris.Bunner Fixing typos. Change 3853645 by Krzysztof.Narkowicz Fixed light functions on subsurface materials Removed strange code from blending between static and dynamic shadows #jira UE-50275 Change 3853660 by Rolando.Caloca DR - Fix OpenGL overwriting texture samplers on forward renderer Change 3853945 by Mark.Satterthwaite Duplicate #3831616 Fix the black ground scattering on Metal - we've had issues with the atmospheric fog calculations for a long time - one or more intermediate operations generates different precision on Metal so we end up passing -ve values into sqrt which then generates NaN/INF. For Metal when compiling this file and this file only #define sqrt() to sqrt(abs()) so that we don't see anymore unexpected black in atmospheric rendering. This is far from ideal but I don't want to make abs all inputs into every sqrt because AFAIK this is the only case where we have an issue, and until we to investigate each intermediate calculation that isn't ridiculously, soul-crushingly tedious, it isn't practical to identify the source of the error. #jira UE-53720 Change 3853966 by Mark.Satterthwaite Duplicate #3835852 Fix tessellation shaders in Metal with Manual Vertex Fetch enabled: - The control points idnex buffer shouldn't collide with anything else. - We can't use the optimisation of loading texture width & height from the buffer meta-table in tessellation shaders as the combined stages don't guarantee not to clobber unused buffer slots and screw it up when we use linear textures. #jira UE-53851 Change 3854250 by Uriel.Doyon Fix fbx automation tests Change 3854736 by Uriel.Doyon Added a tooltip to the EV100 slider in the exposure menu. Using game settings now disables the slider. #jira UE-53945 Change 3855047 by Jian.Ru Fix DFAO getting NANs when samples out of ViewRect #jira UE-54403 Change 3858197 by Krzysztof.Narkowicz View frustum shadow caster culling for pointlights/spotlights #jira UE-54381 Change 3860081 by Krzysztof.Narkowicz Tighter bounding sphere for a spotlight Replaced IntersectSphere(LightProxy->Origin, LightProxy->Radius) with LightProxy->SphereBounds for tighter culling of spotlights Directional light GetBoundingSphere() now everywhere returns Sphere((0,0,0),HALF_WORLD_MAX) for consistency and proper SphereBounds #jira UE-54258 Change 3860324 by Mark.Satterthwaite Update the macOS deployment target version to 10.12 from 10.11 as we officially ended support for El Capitan a while ago. Should mean that libraries compiled for 10.12 and up won't cause link warnings. Change 3860945 by Arne.Schober DR - Fix not releaseing SRV on render thread for FPositionVertexBuffer, FStaticMeshVertexBuffer, FColorVertexBuffer, FStaticMeshInstanceBuffer. #jira UE-54587 Change 3861129 by Jian.Ru Prevent distance culled objects from casting distance field direct shadows #jira UE-54533 Change 3861502 by Jian.Ru Exclude distance culled objects from DFAO calculation #jira UE-54533 Change 3862243 by Krzysztof.Narkowicz Changed radius of a directional light's bounding sphere from HALF_WORLD_MAX to WORLD_MAX in order to encopass entire WORLD_MAX box Change 3863476 by Krzysztof.Narkowicz Added BuildReflections option to ResavePackages commandlet #jira UE-54581 Change 3863717 by Rolando.Caloca DR - vk - Missed using pipeline cache on compute PSOs Change 3865332 by Arne.Schober DR - Fix UE-52356 Bone Weight Change 3866220 by Rolando.Caloca DR - vk - Fixed GetNativeResource missing on textures - Added support for -preferNvidia|AMD|Intel - Added VulkanRHIBridge.h - Minor fixes Change 3866222 by Rolando.Caloca DR - vk - Missed file Change 3866951 by Krzysztof.Narkowicz Fixed FreezeRendering on non editor builds: ComputeAndMarkRelevanceForViewParallel was calling FrozenMatricesGuard on multiple threads, reading and writing view matrices state in parallel. #jira UE-53640 Change 3867231 by Guillaume.Abadie Adds alpha mode to allow the tonemapper to passthrough the alpha channel for broadcast industry. Change 3867233 by Guillaume.Abadie Fixes a compilation failures in TAAU with r.PostProcessing.PropagateAlpha==2 Change 3867594 by Daniel.Wright Removed EditorOnlyDefaultMaterials, which added 79s of shader compilation during startup Added a dialog when opening the Material Editor on a Default Material, warning of advanced workflow Preventing Material Editor Apply or Save for a Default Material when the preview material has compilation errors Change 3870048 by Daniel.Wright Cleaned up formatting in TranslucentRendering from merges Change 3870106 by Krzysztof.Narkowicz Fixed some FArchive Tell()/Seek() 64bit->32bit truncations Change 3870211 by Rolando.Caloca DR - vk - Added -vulkanvalidation=N/-vulkanstandardvalidation/-novulkanstandardvalidation to set validation layer behaviour from cmd line Change 3870225 by Rolando.Caloca DR - vk - Some platforms do not use a standard swapchain Change 3870267 by Arne.Schober DR - SafeRelease SRVs that might be hold by the Vertexfactories (maybe due to indirect use in GlobalResources) Note that the VFs are not owners of the data, e.g the underlying Buffers might be released before this and this reference counting should be uneccessary Change 3870647 by Daniel.Wright Moved FogRendering.h to Renderer Change 3872130 by Krzysztof.Narkowicz Disable USE_GLOBAL_CLIP_PLANE for MATERIAL_DOMAIN_POSTPROCESS and MERIAL_DOMAIN_UI Merging GitHub Pull request #4459 "When material domain is not needing global clip plane there is no need to generate any code involving it. This does not alter output but removes lot of code at vertex shader and pixel shaders. At least on mobile rendered was actually generating clipping code for ui materials." #jira UE-54616 Change 3872145 by Rolando.Caloca DR - vk - Optional SupportsMarkersWithoutExtension Change 3872404 by Uriel.Doyon Added some guards when streaming virtual textures. Fixed optimized UCanvasRenderTarget2D::RepaintCanvas() to prevent resolving the texture twice. Fixed bad mipmap generation with UCanvasRenderTarget2D. Change 3872507 by Arne.Schober Back out changelist 3870267 Change 3874176 by Ben.Marsh IncludeTool: Add an flag to prevent scanning source files for exported symbols. Change 3874935 by Krzysztof.Narkowicz Fixed white thumbnails and other issues with sky lighting on ES3_1 path, by disabling GGX prefiltering, as mobile path doesn't have a single cubemap with all initialized mips. Instead it ping-pongs between 2 partially initialized. #jira UE-54656 Change 3875710 by Daniel.Wright Renamed uniform buffer member macros to be much shorter for readability Change 3876665 by Guillaume.Abadie Cherry-pick 3870715: Implements DOF's hybrid scatering bare bones. Change 3876666 by Guillaume.Abadie Cherry-pick 3871786: DOF hybrid scatering: fixes NaN source, transition to gather on close to screen edge and low intensity. Change 3876677 by Guillaume.Abadie Cherry-pick 3872348: Implements neighbor comparison for DOF's scattering compilation pass. Change 3876680 by Guillaume.Abadie Cherry-pick 3872357: Oups... fixes build... Change 3876683 by Guillaume.Abadie Cherry-pick 3872475: Controls number of mip to generate with DOF's reduce pass. Change 3876687 by Guillaume.Abadie Cherry-pick 3874104: Fixes various bugs in diaphragm DOF's hybrid scattering. Change 3876690 by Guillaume.Abadie Cherry-pick 3874144: Packs multiple DOF scattering group into same draw instance. Change 3876694 by Guillaume.Abadie Cherry-pick 3874275: Switches hybrid scattering with indexed indirect draw call to reduce scatter vertex shader invocation. Change 3876695 by Guillaume.Abadie Cherry-pick 3874674: Records min and max coc on DOF's setup's draw event. Change 3876783 by Rolando.Caloca DR - Static analysis fix Change 3876845 by Guillaume.Abadie Implements USceneCaptureComponent::ProfilingEventName Change 3877197 by Rolando.Caloca DR - vk - OQ fixes (disabled) Change 3877428 by Krzysztof.Narkowicz Merged with tiny tweaks Ansel photography plugin improvements from Adam Moss (GitHub pull request #4426): -The free-roaming photography camera has new constraints by default, i.e. it can't pass through walls -Photography session can be started and stopped programmatically, e.g. making it possible to bind photography to an alternative hotkey or button combo. This was an often-requested feature. -Tweakables and utilities are now exposed through a Blueprint Function Library (rather than direct manipulation of console variables) -The Ansel photography session UI now exposes some engine effect tweakables as sliders. For example, if the game is using depth-of-field then sliders are made available to allow the photographer to change the focal depth etc. The developer may suppress this behavior through the Blueprint Function Library. -Letterboxing is now removed during multi-part capture, d'oh. -Tiled shots are taken at full resolution even if ScreenPercentage < 100 -SSR is enabled during super-resolution shots since Ansel is now better at hiding any ensuing artifacts -Postprocess settings are frozen at session start to avoid discontinuities during photography, i.e. wandering between postprocess volumes when the camera auto-moves for stereo and 360 shots. #jira UE-54244 #4426 Change 3879086 by Krzysztof.Narkowicz Fixed sky/reflection capture (without owner) update - they are now updated only with a correspoding world Change 3879090 by Guillaume.Abadie Fixes tones of regressions on diaphragm DOF's recombine passes. Change 3879198 by Rolando.Caloca DR - vk - Support for real uniform buffers on Android platforms Change 3879993 by Krzysztof.Narkowicz -Fixed int64->int32 FArchive offset truncation in TShaderMap, VertexFactory and TextureDerivedData -Fixed FSerializationHistory bug, when trying to serialize 0 bytes #jira UE-43203 Change 3881462 by Guillaume.Abadie Implements full res DOF's setup pass for cheaper full res gathering in recombine pass. Change 3881524 by Krzysztof.Narkowicz Fixed compilation by removing FTickableEditorObject from FPreviewScene Change 3881724 by Chris.Bunner Static analysis fix. #jira UE-54762 Change 3881861 by Rolando.Caloca DR - vk - Fix layout warning when generating mip chain Change 3881864 by Rolando.Caloca DR - Use render passes on HZB Change 3882236 by Yuriy.ODonnell IndirectLightingColorScale is now applied to SubsurfaceLighting and DiffuseLighting. Was previously only applied to DiffuseLighting. #jira UE-42534 #github 3326 Change 3882325 by Guillaume.Abadie Implements FocusOnly lower gathering pass for Diaphragm DOF's slight out focus temporal stability. Change 3882340 by Rolando.Caloca DR - vk - Fix api dump Change 3882430 by Rolando.Caloca DR - vk - KHR_maintenance2 Change 3882563 by Rolando.Caloca DR - Add depth-stencil access mode to PSO initializer Change 3882929 by Rolando.Caloca DR - vk - Proper fix for maintenance extension macros Change 3883087 by Mark.Satterthwaite Allow disabling VSync in windowed mode for macOS 10.13.4+ and above. Change 3883597 by Guillaume.Abadie Collapses full and half res DOF setup passes together. Change 3883702 by Guillaume.Abadie Fixes mac's build. Change 3884747 by Uriel.Doyon Fix for static analysis warning Change 3884975 by Rolando.Caloca DR - vk - Move some platform defines to platform properties Change 3884988 by Rolando.Caloca DR - vk - Make an override per platform Change 3885832 by Rolando.Caloca DR - vk - Cosmetic change to group similar members Change 3885891 by Rolando.Caloca DR - vk - Some _RenderThread functions to avoid stalls Change 3886044 by Rolando.Caloca DR - Added RHI api _RenderThread version of RHICreateTextureReference RHICreateShaderLibrary RHICreateRenderQuery Change 3886560 by Guillaume.Abadie Fixes strong aliasing on TAAU's fast shader permutation. This adds a 6th neighbor sampling, and switch AA_TONE ON as TAA does for its fast shader permutation. Change 3886749 by Guillaume.Abadie Cherry-pick 3884748: Implements DOF's BuildBokehLUT for diaphragm blades simulation. Only used in hybrid scattering for now. Change 3886750 by Guillaume.Abadie Cherry-pick 3885457: Simulates diaphragm blades' curvature on bokeh. Change 3886752 by Rolando.Caloca DR - Fix metal static analysis Change 3887460 by Uriel.Doyon Fixed to more static analysis warning. Change 3888201 by Rolando.Caloca DR - vk - Added r.Vulkan.SubmitAfterEveryEndRenderPass - Fixed bad layout on rendering back buffer Change 3888209 by Rolando.Caloca DR - vk - Unity compile fix Change 3888254 by Rolando.Caloca DR - vk - Fix async texture layout Change 3888893 by Guillaume.Abadie Simulates bokeh in DOF's slight out of focus. Change 3889085 by Guillaume.Abadie Fixes DOF's reduce pass sampling outside viewport. Change 3889924 by Rolando.Caloca DR - vk - Skip seemingly bad validation error Change 3890573 by Daniel.Wright Only initialize FDiaphragmDOFGlobalResource in Feature Level 5 Change 3890590 by Arne.Schober DR - Fix Paper2d crash. When addMesh is called the Vertex and Indexbuffers are nulled out. re-create Dynamic Mesh builder for every Mesh instead. #jira UE-55063 Change 3890638 by Arne.Schober DR - Better fix for Paper2d which honors batching #jira UE-55063 Change 3891099 by Krzysztof.Narkowicz 1.5 texel shadow offset fix inside Manual2x2PCF based on #4485 GitHub pull request #jira UE-54985 #4485 Change 3891234 by Krzysztof.Narkowicz Optimized PCF2x2 and PCF3x3 - merged #4494 GithHub pull request #jira UE-55121 Change 3891407 by Rolando.Caloca DR - vk - Set vendor id earlier Change 3891417 by Rolando.Caloca DR - vk - Missing layout transitions Change 3891718 by Arne.Schober DR - Do not recreate one Frame Resource for dynamic draws #jira UE-55063 Change 3891925 by Yuriy.ODonnell Fix/workaround for inconsistent preprocessor definitions for NVAftermath that result in FD3D11DynamicRHI class layout mismatch. NVAftermath support is now enabled by default for Win64. NVAftermath is declared as a private dependency in D3D11RHI. It does not automatically propagate to modules that explicitly include private RHI headers (OculusHMD, OSVR, OSVRInput). This results in NV_AFTERMATH being defined while compiling RHI module and not defined when compiling other modules, causing memory corruption at runtime. The long-term solution for this and similar issues requires some mechanism for adding transitive module dependencies, so that anyone that depends on D3D11RHI module would automatically also get the NVAftermath. Additionally, private headers should *never* be included directly by external modules. The short-term solution is to explicitly add NVAftermath dependency to OculusHMD, OSVR and OSVRInput. Additionally, NV_AFTERMATH is no longer forced by D3D11RHIPrivate.h when it's not defined. This allows catching this kind of mismatch in the future through a compiler warning (C4668). #jira UE-53065 Change 3891987 by Rolando.Caloca DR - vk - Support for dedicated allocations Change 3892339 by Jian.Ru Fix a crash when tessellation shaders are used in dx12 #jira UE-55127 Change 3892528 by Rolando.Caloca DR - vk - Update Linux headers Change 3892867 by Rolando.Caloca DR - vk - Don't create swapchain if not needed Change 3893416 by Guillaume.Abadie Implements bokeh simmulation on foreground and background gather. Change 3893732 by Chris.Bunner GetRelevance_Internal should use the immediate parent resource, not the base, as some features are overridden by permutations e.g. UsesWorldPositionOffset. #jira UE-53404 Change 3893868 by Guillaume.Abadie Allocates diaphragm DOF's buffers and structered buffer only on supported platforms. Change 3893917 by Chris.Bunner Potential fix for CIS. Change 3893933 by Chris.Bunner Duplicating CL 2647737 as this is the same issue from that JIRA where accessing game-thread data was being prevented. We don't have this check in UMaterial::GetMaterialResource already, but presumably the UMaterialInstance case was never removed as we've not been calling it until now. Change 3894218 by Rolando.Caloca DR - vk - Remove stat counters per draw call, gains 10% CPU on Infiltrator Change 3894579 by Arne.Schober RT - Fix assert not in RenderingThread from Triangle Renderer. #jira UE-55247 Change 3894724 by Rolando.Caloca DR - vk - New API for batching barriers Change 3894909 by Arne.Schober DR - Fix crash in Speedtree wind where Renderdata is unavailable #jira UE-54544 Change 3895414 by Rolando.Caloca DR - Add a configurable threshold for SCWs time outs Change 3896429 by Marcus.Wassmer Allow variable frame-latency delay in FrameGrabber frames. For performance you want at least a 1 frame delay so you don't sync the GPU to the CPU. Change 3896495 by Marcus.Wassmer Set pointer properly Fix CIS Change 3897253 by Guillaume.Abadie Fixes CIS warning in diaphragm DOF Change 3899179 by Guillaume.Abadie Implements background hybrid scatter occlusion for diaphragm DOF. Change 3903654 by Rolando.Caloca DR - vk - Rework dump layer to allow other layers Change 3903766 by Rolando.Caloca DR - vk - More wrappers Change 3904025 by Rolando.Caloca DR - vk - More wrappers Change 3904342 by Rolando.Caloca DR - vk - Track image resources & callstacks Change 3904346 by Rolando.Caloca DR - vk - Copy fix from 4.19 for flickering grass Change 3904510 by Rolando.Caloca DR - vk - Compile fix Change 3904914 by Daniel.Wright [Integrate] Fixed PS4 transitions with forward shading Change 3904916 by Daniel.Wright [Integrate] Fixed PS4 transitions with occlusion queries Change 3905975 by Rolando.Caloca DR - vk - Missing wrappers Change 3905977 by Rolando.Caloca DR - vk - Missed file Change 3907829 by Rolando.Caloca DR - Move depth bounds to the PSO Change 3907832 by Rolando.Caloca DR - vk - Prep for delaying transitions Change 3907834 by Rolando.Caloca DR - vk - Fix for depth stencil issues/validation errors Change 3907967 by Rolando.Caloca DR - vk - Linux compile Change 3908093 by Rolando.Caloca DR - vk - Fix depthstencil layout on descriptors Change 3908393 by Rolando.Caloca DR - vk - Disable dedicated allocation as it causes crashes on Nvidia 700 series Change 3908401 by Rolando.Caloca DR - Do transitions outside render pass Change 3908422 by Rolando.Caloca DR - vk - Fix transition state not getting stored Change 3908735 by Guillaume.Abadie Cherry-pick 3896619: Fixes after TAAU post process material that had wrong default buffer UV. #jira UE-55317 Change 3908736 by Guillaume.Abadie Cherry-pick 3891352: Fixes ensure when visualizing HDR with TAAU. #jira UE-55019 Change 3908753 by Guillaume.Abadie Lets the renderer layout the views in the internal render targets like it prefers. Change 3909119 by Daniel.Wright Fix some static analysis warnings Change 3911943 by Rolando.Caloca DR - vk - Fix for packaging Vulkan projects Change 3912145 by Rolando.Caloca DR - vk - Fix layout on streaming textures Change 3913029 by Rolando.Caloca DR - Fix missing transition Change 3913048 by Rolando.Caloca DR - Fix for hlslcc Change 3913054 by Rolando.Caloca DR - vk - Fix number of layers on barrier Change 3913171 by Rolando.Caloca DR - vk - Fix for decal missing transition Change 3913211 by Rolando.Caloca DR - vk - Add debug name to image tracking Change 3913449 by Rolando.Caloca DR - vk - Restore transition Change 3913466 by Rolando.Caloca DR - Fix Vulkan EngineTest Change 3913537 by Rolando.Caloca DR - vk - Fixes independent samplers & textures (contributed by AMD) Change 3913548 by Rolando.Caloca DR - vk - Warning fix Change 3913691 by Rolando.Caloca DR - vk - Fixes for parallel (wip) Change 3914656 by Rolando.Caloca DR - vk - Fix bug when using separate samplerstates and textures Change 3914730 by Rolando.Caloca DR - vk - Bump version Change 3914764 by Rolando.Caloca DR - vk - Don't crash on exit Change 3915532 by Rolando.Caloca DR - vk - Parallel context fixes Change 3915589 by Rolando.Caloca DR - vk - Hoist and rename transition and layout manager class out of the context Change 3915592 by Rolando.Caloca DR - Fix gpu marker name Change 3917607 by Rolando.Caloca DR - vk - Fix depth bounds on Vulkan Change 3917609 by Rolando.Caloca DR - vk - Fix static analysis Change 3917616 by Rolando.Caloca DR - Fix D3D11 initialization Change 3920569 by Rolando.Caloca DR - vk - Prep for layout mgr refactor Change 3921023 by Rolando.Caloca DR - vk - Dump layer fixes Change 3921623 by Rolando.Caloca DR - vk - Prep refactor for layouts - Dump now shows marker tree Change 3922007 by Rolando.Caloca DR - vk - Fix extra allocation per draw call Change 3922442 by Rolando.Caloca DR - vk - Detect potential issues Change 3922470 by Rolando.Caloca DR - vk - Minor optimization Change 3922482 by Rolando.Caloca DR - vk - More minor optimizations Change 3923158 by Rolando.Caloca DR - Move r.DisableEngineAndAppRegistration out to common RHI and use it on Vulkan Change 3923486 by Rolando.Caloca DR - vk - Minor cpu optimizations Change 3923505 by Rolando.Caloca DR - vk - Use bigger allocations for uniform buffers Change 3923516 by Rolando.Caloca DR - vk - Android compile fix Change 3923557 by Rolando.Caloca DR - vk - Cache descriptorset layouts, refactor duplicated code Change 3923851 by Rolando.Caloca DR - vk - Linux compile fix Change 3924153 by Rolando.Caloca DR - vk - Support for dynamic UBs Change 3924193 by Rolando.Caloca DR - vk - Remove old per pso descriptor pools Change 3924197 by Rolando.Caloca DR - vk - Remove unused global uniform buffer pool Change 3924220 by Rolando.Caloca DR - vk - Wrap some unused classes in their define Change 3924234 by Rolando.Caloca DR - vk - Show ring buffer wrapping messages Change 3924243 by Rolando.Caloca DR - vk - Fix bad dynamic buffer Change 3924902 by Rolando.Caloca DR - vk - Fix crash running infiltrator Change 3925209 by Rolando.Caloca DR - vk - Fix bug with dynamic buffers - Remove old defines Change 3925300 by Rolando.Caloca DR - vk - Allow packed uniforms as dynamic UBs (with r.Vulkan.DynamicGlobalUBs) Change 3925627 by Rolando.Caloca DR - vk - Move DynamicOffsets into the pipeline state Change 3925834 by Rolando.Caloca DR - vk - Cache per stage information Change 3925835 by Daniel.Wright Fixed DisplayName for UParticleModuleCollisionGPU Change 3925897 by Rolando.Caloca DR - vk - Split update descriptors loop Change 3926488 by Rolando.Caloca DR - vk - 16MB for ring buffer on desktop, 8 MB for mobile Change 3928168 by Guillaume.Abadie Cherry-pick 3917219: Implements r.DOF.RecombineQuality Change 3928173 by Guillaume.Abadie Cherry-pick 3927888: Enables r.DOF.HybridScatter.BackgroundCompositing and r.DOF.HybridScatter.ForegroundCompositing to work when both enabled. Change 3928216 by Rolando.Caloca DR - vk - Fix Android - Fix static analysis Change 3929119 by Rolando.Caloca DR - vk - Rename some classes for clarity - Fix read-only cvar Change 3929151 by Rolando.Caloca DR - vk - Rename class Change 3930046 by Rolando.Caloca DR - Temp fix Vulkan flickering grass Change 3930148 by Rolando.Caloca DR - vk - Only update dirty descriptors - Use dynamic descriptors for packed global uniform buffers Change 3930998 by Guillaume.Abadie Packs shader permutation in different XGE submissions. Change 3931079 by Rolando.Caloca DR - vk - Fixes for Android and non-real ubs platforms Change 3931942 by Krzysztof.Narkowicz Depth rendering - When EarlyZPassMode is set to DDM_AllOccluders, dynamic objects need also to test bUseAsOccluder just like static ones #jira none Change 3932819 by Daniel.Wright [Integrate] Scene Textures uniform buffer * Base Pass Uniform Buffer now contains a Scene Textures uniform buffer. Previously the translucent base pass had to check ~40 loose scene texture parameters every draw. * FMeshMaterialShader's must now bind PassUniformBuffer and supply a valid pass uniform buffer. For most passes this is just FSceneTextureUniformParameters. * FRendererModule::DrawTileMesh can now cleanly set dummy scene texture resources, just by configuring how the pass uniform buffer is created. * Moved scene texture shader functions out of Common, into SceneTexturesCommon which must be manually included by shaders that want to use them * Separate Mobile Scene Textures uniform buffer to silo the platform complexities Moved DBuffer inputs out of FDeferredPixelShaderParameters and into FOpaqueBasePassUniformParameters Removed per-frame material uniform expressions. GameTime material node with period is now implemented with an fmod in the shader, without the use of MaterialFloat, so that it will happen at full precision. * Per-frame expressions were used when the GameTime material node had a period, to do the fmod on the CPU where 32 bit precision is guaranteed, for mobile GPU's where pixel shader precision is sometimes less than 32fp. Moved forward shading data into the Base Pass Uniform Buffer Removed instanced stereo support for the light cull grid - will have to be reimplemented without changing SRV's per draw Base pass sets View Uniform Buffer from DrawRenderState instead of choosing which one to set per-draw Fixed padding in nested uniform buffer structs Skip SRV members on Feature Level SM4 and below Change 3932964 by Rolando.Caloca DR - vk - Renderdoc on Android Change 3933095 by Daniel.Wright Moved FSceneTextureUniformParameters out of the opaque base pass uniform buffer. * Base Pass shaders now enable SCENE_TEXTURES_DISABLED when compiling for a material of any domain other than MD_Surface. These are used when rendering thumbnails of a material in a different domain, which could be opaque, but the opaque base pass drawing policy does not bind a scene textures uniform buffer, so the shader must not bind it. * Opaque materials can no longer use EyeAdaptation. Change 3933096 by Daniel.Wright Better d3d11 assert message when a uniform buffer was not set by the renderer Change 3933176 by Rolando.Caloca DR - vk - Prefer mailbox if available Change 3933271 by Ryan.Vance #jira UE-55936 Fixed missing referenced uniform bindings on AR pass-through camera shaders. Change 3934000 by Guillaume.Abadie Fixes Win32 build in ShaderCompilerXGE.cpp Change 3934299 by Guillaume.Abadie Fixes a bug in DOF's reduce operator that was casusing color leaking between background and foreground. Change 3934699 by Daniel.Wright Added bAffectDistanceFieldLighting to landscape Change 3935190 by Daniel.Wright Forward Light Grid SRV's use StructuredBuffer on Metal, instead of 'invariant Buffer', which throws off RemoveUniformBuffersFromSource parsing Change 3935606 by Daniel.Wright Removed LightmapPolicy::Set which was needed for vertex lightmaps Renamed FVertexFactory::Set to SetStreams to make it findable Change 3936510 by Rolando.Caloca DR - vk - Update glslangValidator.exe to 1.0.65.1 for dumped debug SPIRV shaders Change 3936545 by Richard.Wallis Clone of CL's (3925763, 3925430, 3925424, 3925385, 3925278) Mark Satt's Xcode fixes from task stream //Tasks/UE4/Dev-UERNDR-354-mtlpp/ Plus XCode 9.2 compile fix in ApplicationPlatformCompilerPreSetup.h for -Wunused-lambda-capture. Change 3938061 by Daniel.Wright Vulkan: Added support for SRV's in Uniform Buffers Change 3938123 by Daniel.Wright Vulkan: Slightly better assert for null resources in uniform buffer Change 3939197 by Rolando.Caloca DR - vk - Disable custom memory mgmt Change 3939677 by Rolando.Caloca DR - vk - Fix static analysis warning Change 3939809 by Rolando.Caloca DR - vk - Fixes for async compute Change 3939875 by Rolando.Caloca DR - vk - Support for -vktrace Change 3939977 by Rolando.Caloca DR - vk - Skip a condition during gather UBs - Set up efficient compute async var - Fix validation cmd line Change 3939982 by Rolando.Caloca DR - vk - Revert mipchain Change 3939984 by Rolando.Caloca DR - vk - Remove unnecessary asserts Change 3940082 by Rolando.Caloca DR - vk - Custom mem mgr Change 3940475 by Rolando.Caloca DR - vk - Fix DFAO (indirect draw offset) Change 3940555 by Rolando.Caloca DR - vk - Minor fixes Change 3940675 by Rolando.Caloca DR - vk - Fix indirect type mismatch Change 3941111 by Rolando.Caloca DR - Renderpass bGeneratingMips Change 3941847 by Daniel.Wright Fixed Volumetric Lightmaps on Static geometry only working if the geometry had been built with Surface Lightmaps before Change 3941978 by Rolando.Caloca DR - vk - Minor fixes for presenting on compute queue Change 3942074 by Rolando.Caloca DR - vk - Remove some RHI stalls - Fixed swap chain stat Change 3943946 by Daniel.Wright Fixed Texcoord0 on Volume materials on a particle sprite, including SubUV particles. Change 3944065 by Daniel.Wright Fixed SceneDepth collision getting broken on GPU particles when a scene capture is rendering Change 3944158 by Daniel.Wright Fixed ViewUniformShaderParameters accessing GEngine->PreIntegratedSkinBRDFTexture too early during slate loading screen Change 3944865 by Rolando.Caloca DR - vk - Prep for render passes Change 3945196 by Rolando.Caloca DR - Move render pass validate to cpp Change 3945202 by Rolando.Caloca DR - vk - Some fixes for using real render passes Change 3945357 by Rolando.Caloca DR - Fix bad condition Change 3946295 by Yuriy.ODonnell Added a sentinel member to FLightMap, which is initialized in the ctor and reset in the dtor. Sentinel is then checked in FLightCacheInterface::GetLightMapInteraction(). This aims to shed some more light on a hard-to-repro crash, which is suspected to be a use-after-free bug: http://crashreporter/Buggs/Show/1785593 Change 3946407 by Rolando.Caloca DR - vk - Prep for refactor Change 3946648 by Rolando.Caloca DR - vk - Fixes for async compute (wip) Change 3947299 by Rolando.Caloca DR - vk - FIx static analysis Change 3948434 by Rolando.Caloca DR - vk - Fix exiting with parallel Change 3948928 by Rolando.Caloca DR - vk - Fix enabling draw markers for tools Change 3949021 by Rolando.Caloca DR - vk - Buffer tracking layer Change 3949602 by Rolando.Caloca DR - vk - static analysis fix Change 3949757 by Rolando.Caloca DR - vk - Remove bogus parameter Change 3949810 by Rolando.Caloca DR - vk - Move waits for cmd buffer Change 3950270 by Guillaume.Abadie Implements dedicated gather pass for foreground hole filling to avoid being VGPR bound in foreground gather pass, but still being hable to amend foreground. Change 3950272 by Rolando.Caloca DR - vk - Minor refactor for semaphores Change 3950279 by Guillaume.Abadie Oups... fixes build Change 3950298 by Rolando.Caloca DR - vk - Gather wait semaphores in the cmd buffers Change 3950371 by Rolando.Caloca DR - vk - fixes for async compute Change 3950597 by Rolando.Caloca DR - vk - Fix for clip distance (fixes planar reflections) Change 3951075 by Rolando.Caloca DR - vk - Fix for async compute Change 3952524 by Guillaume.Abadie Some DOF enum refactoring. Change 3955016 by Daniel.Wright Fixed BuiltData package getting renamed into the map package during a content browser folder move, causing a redirector to be incorrectly placed in the map package Change 3955668 by Guillaume.Abadie Fixes a bug where full res coc buffer was computed even if not doing slight out of focus. Change 3956722 by Guillaume.Abadie Fixes a bug where r.DOF.MaximalForegroundBlurringRadius was screen percentage dependent. Change 3959212 by Guillaume.Abadie Prefixes all DOF's shaders files with DOF keyword. Change 3959705 by Guillaume.Abadie Optimises the DOF setup pass outputing half res and full res with LDS downsample. Change 3959941 by Guillaume.Abadie Halfs DOF's hybrid scatter compilation by using a unique downsampling for both foreground and background, instead of 2 reduce passes. Change 3962273 by Rolando.Caloca DR - Fix typos #jira UE-56317 PR #4586 Change 3962615 by Rolando.Caloca DR - vk - Compile fix Change 3962949 by Rolando.Caloca DR - Fix DOFDownsample extension Change 3962993 by Guillaume.Abadie Back out changelist 3962949 Change 3963016 by Guillaume.Abadie Adds missing DOFDownsample.usf Change 3963041 by Rolando.Caloca DR - vk - Misc changes to help integrate Change 3964293 by Guillaume.Abadie Fixes DOF's setup pass reading outside of the viewport. Change 3964475 by Guillaume.Abadie Collapses DOF's hybrid scatter compilation passes into reduce passes. Change 3964883 by Daniel.Wright Fixed 3d texture in uniform buffer on unsupporting RHI Change 3964897 by Rolando.Caloca DR - Compile fixes Change 3964914 by Guillaume.Abadie Fixes a bug on r.DOF.RecombineQuality=0 Change 3965153 by Guillaume.Abadie Fixes compile warning in D3D12Commands.cpp. Change 3965814 by Rolando.Caloca DR - Prep for integration conflict resolve Change 3965899 by Rolando.Caloca DR - Fix odd linkage issue Change 3966072 by Rolando.Caloca DR - More prep for merge Change 3966163 by Rolando.Caloca DR - Merge prep Change 3966844 by Guillaume.Abadie Packs multiple DOF scattered bokeh per instance and uses PT_RectList in DOF for platforms that can. Change 3967116 by Rolando.Caloca DR - Compile fixes for integration Change 3967273 by Rolando.Caloca DR - Use same path for mip generation Change 3967277 by Rolando.Caloca DR - vk - Fix mips on cubemaps Change 3967693 by Rolando.Caloca DR - Copying //UE4/Dev-Main@3912313 to //UE4-DevRendering, missing shaders Change 3967851 by Rolando.Caloca DR - Copying //UE4/Dev-Main@3912313 to //UE4-DevRendering, Engine 2/2 Change 3968083 by Rolando.Caloca DR - Integration compile fixes Change 3968240 by Rolando.Caloca DR - Shader compile fixes for integration Change 3968270 by Rolando.Caloca DR - Fix for missing hash calculation Change 3969426 by Rolando.Caloca DR - vk - Fix warning Change 3969869 by Krzysztof.Narkowicz Back out changelist 3946295 - UE-54537 is fixed, so no need for this debug sentinel. #jira none Change 3969944 by Rolando.Caloca DR - Warning fix Change 3970020 by Rolando.Caloca DR - Bump after integration Change 3970052 by Rolando.Caloca DR - Fix for mobile Change 3970236 by Daniel.Wright Causing decal shader to recompile to fix a merge bug Change 3970270 by Daniel.Wright Bump shader version from merge Change 3970339 by Olaf.Piesche Replace series of locks/unlocks with a single one for curve injection #tests QAGame Change 3970390 by Rolando.Caloca DR - Rename FSceneTextureUniformParameters to FSceneTexturesUniformParameters - Remove duplicate method for occlusion queries Change 3970523 by Rolando.Caloca DR - Fix serialization of shaders Change 3970533 by Arne.Schober DR - fix for removing the Speed tree wind when the scene gets deleted. The original enque rendercommand requeues the element onto the renderthread although the call already came from the Renderthread and the scene can get lost in between. #jira UE-56322 Change 3971160 by Guillaume.Abadie Fixes CompositeEditorPrimtive pass and SelectionOutline pass for VR editor to work with TAAU. Change 3971516 by Guillaume.Abadie Cherry-pick 3912629: Fixes SSR that was computing vigneting according to PrevScreen that could let some outside viewport samples going through when rotating the camera. #jira UE-55353 Change 3971594 by Krzysztof.Narkowicz Fixed assert inside BindLightMapVertexBuffer. FSplineMeshSceneProxy was calling BindLightMapVertexBuffer for invalid (still not generated) lightmap UV channel after mesh reimport. Simplified assert, as at the moment almost all of the high callsites already clamp lightmap uv channel. #jira UE-56321 Change 3971622 by Krzysztof.Narkowicz Fixed crash inside Indirect Lighting Cache. Data (reflection captures and lightmap) generation calls ULevel::GetOrCreateMapBuildData(), which can destroy lightmap data if level has legacy data. Last Lightmap generation step recreates this data, but if user cancels lightmap generation - it won't do that. #jira UE-56171 Change 3974788 by Rolando.Caloca DR - Remove GSupportsGenerateMips Change 3974789 by Rolando.Caloca DR - Remove bogus function Change 3974986 by Rolando.Caloca DR - vk - Tracking fixes Change 3974989 by Rolando.Caloca DR - vk - Don't submit dummy barriers Change 3975075 by Olaf.Piesche Update for particle curve injection improvement, fixing ES2 problems #tests QAGame tm-shadermodels, various color curve tests in-editor Change 3975957 by Uriel.Doyon Fixed invalid max texture resolution when using the bake material tools. Change 3978471 by Daniel.Wright New cvar r.SkylightUpdateEveryFrame Change 3978779 by Rolando.Caloca DR - Accessor for texture sizes Change 3978797 by Rolando.Caloca DR - Clean up RHI CopyTexture API Change 3978832 by Rolando.Caloca DR - vk - Workaround for RenderDoc crashing due to Descriptor Pool reset Change 3978836 by Rolando.Caloca DR - vk - Remove generate mips Change 3979201 by Rolando.Caloca DR - vk - RHI CopyTexture. Uses general layout for generating mips Change 3979204 by Rolando.Caloca DR - Use render passes and CopyTexture to generate mips Change 3979592 by Rolando.Caloca DR - Warning fix Change 3980855 by Krzysztof.Narkowicz Optimize bounding sphere radius after non-uniform scale by using bounding box extent. #jira UE-56227 Change 3981065 by Rolando.Caloca DR - vk - Fix bad layout #jira UE-56238 Change 3981346 by Rolando.Caloca DR - Copy from 3707257 Support for not flushing compute jobs (r.D3D11.UAVFlushNV) Change 3981347 by Rolando.Caloca DR - Copy from 3707257 Don't flush between morph dispatched Change 3981932 by Mark.Satterthwaite Generate the shader hash and function name when a Metal shader error needs to be reported so that even without shader code we get something to go on. Change 3982442 by Rolando.Caloca DR - Fix warning Change 3982652 by Rolando.Caloca DR - vk - Signal semaphore cleanup Change 3983917 by Richard.Wallis Clone of CL 3974146 converted for mtlpp along with extra mtlpp usage suggestions by Mark Satt: Fix for black flickering on first paint with weighted material landscape on Mac. When using AsyncCopyFromBufferToTexture in Metal we put the blit operation on the prologue encoder - however after a draw call using that resource the copy operation should happen after on the current encoder, this keeps the correct order of operations. Added Bool return from various Asnyc renderpass resource requests so caller can decide correct further action. Updated to include the other async functions. Change 3984409 by Guillaume.Abadie Attempts to make static analysis happy again. Change 3984435 by Nick.Bullard Checking in Performance Test level provided to us by Tor Frick based on UE-44841. This has been utilized for checking issues against Aftermath performance impact. The Map includes 2 Level Book marks, most testing has been done against Bookmark 1 view, in fullscreen, in game mode Change 3985087 by Mark.Satterthwaite Make sure that the particle scratch buffer is large enough to hold all the data for the curve texture we are rendering to, otherwise a full set of curves will start scribbling memory after 64Kb (the curve texture is 256Kb of data - 512x512x4 as sizeof(RGBAUInt8) == 4). This happens in ElementalDemo. Change 3985201 by Rolando.Caloca DR - Fix bad CopyTexture Change 3985258 by Mark.Satterthwaite Try and detect orientation changes so that we don't blow-up on iOS due to a huge mismatch between the drawable texture for the display and the scene's depth-stencil target. I can't just fiddle with the depth-stencil texture itself without running the risk of obliterating in-use data and really we shouldn't permit such a mismatch anyway but it is fallout from 3620990. #jira UE-55756 Change 3986449 by Rolando.Caloca DR - vk - Update & consolidate Vulkan headers to 1.1.70.1 Consolidate SDK into one Change 3986571 by Guillaume.Abadie Makes PVS-Studio happy again in DOF. Change 3987039 by Yuriy.ODonnell Initial implementation of tracing profiler to show CPU and multiple GPUs on the same timeline. Currently only supported on DX12 platforms. Use `TracingProfiler frames=N` console command to trigger a capture of the next N frames. Trace is saved to disk as a JSON file into `Saved/Profiling/Traces` directory. Trace file uses Google Tracing format and can be visualized in Chrome built-in profiler (chrome://tracing). `r.GPUStatsChildTimesIncluded=1` CVar makes timing scopes hierarchical. `TracingProfiler.BufferSize=N` CVar controls the size of the tracing buffer, which may need to be increased for long traces (default is 65k events). Only can be set at startup. Change 3987074 by Yuriy.ODonnell Implemented timestamp calibration on DX11. Calibration is only performed when tracing profiler session starts. Change 3987160 by Yuriy.ODonnell Added thread naming and ordering to the tracing profiler output Change 3987331 by Mark.Satterthwaite Remove the Nvidia hack to retain resource references in command-buffers for UE-46604 as the mtlpp refactor provides stronger resource lifetime guarantees. #jira UE-46604 Change 3987754 by Mark.Satterthwaite Fix MetalRHI memory reporting in non-default path. PR #4568 Change 3988184 by Arciel.Rekman Linux: Fix editor OpenGL performance (UE-55960). - GetCurrentThreadId() calls became much more frequent with the OpenGL RHIT refactor. - We used to only cache that value in monolithic builds, because having per-thread static variables in dynamic libraries is risky due to OS limits. - This change adds dynamically-managed per-thread cache for non-monolithic builds. #jira UE-55960 Change 3988394 by Rolando.Caloca DR - vk - Improve memory mgmt - Use 256MB pages for Device heap (or 1/8th if less). - Remove texture allocations not going through resource manager Change 3988405 by Marcin.Undak Fix VulkanQuery crash on exit #codereview rolando.caloca #codereview arciel.rekman #rb arciel.rekman Change 3988567 by Rolando.Caloca DR - vk - Support for packed global UBs on pci aperture heap Change 3988668 by Rolando.Caloca DR - vk - Remove old comments Change 3988956 by Marcin.Undak RecordPerformance: added option to skip building/cooking before tests #rb none #codereview arciel.rekman Change 3989161 by Yuriy.ODonnell Static analysis error fix Change 3989196 by Guillaume.Abadie Fixes a crash in light shaft's TAA pass. #jira UE-57366 Change 3989207 by Yuriy.ODonnell Refactored FRealtimeGPUProfilerFrame to avoid splitting profile events when calculating exclusive times of scopes. This allows tracing profiler to retain the hierarchical view of the data, while keeping CSV and GPU Stat system behavior intact. Change 3989469 by Rolando.Caloca DR - vk - Fix for bad index; fix for bad transition Change 3989772 by Yuriy.ODonnell Implemented timestamp calibration on Vulkan Change 3990040 by Marcus.Wassmer Aftermath enabled by default. Removed unnecessary warning for other vendors Change 3990064 by Mark.Satterthwaite Ensure that packed globals are reuploaded when the command-encoder is restarted - don't simply invalidate the existing parameters. This properly handles cases where a single logical render-pass is broken into multiple command-encoders and/or command-buffers - otherwise all shaders must reset all parameters each time. When we move between frames we *do* want to perform a full state reset though as previous frame globals are treated as invalid. Change 3990080 by Mark.Satterthwaite Change the way we invalidate the visibility buffer between command-buffers and command-encoders so that on iOS you can reuse the same buffer within the same command-buffer, but not across more than one. The code provides an exception to this rule when running under the MetalRHI validation tools which can break each draw call into its own buffer. Change 3990084 by Mark.Satterthwaite Get MetalStatistics compiling again. Change 3990381 by Arciel.Rekman Bring back D3D12 in RecordPerformance. Change 3991113 by Rolando.Caloca DR - Fix crash on RHI thread on mobile preview - Check RHI objects are not null in the PSO initializer Change 3991191 by Ryan.Vance #jira UE-55952 Reimplemented instanced stereo for forward lighting cull grid after the srv/ub clean up. Change 3991343 by Rolando.Caloca DR - Copy from 3911492 UE4 - Disabled parallel mobile bass pass by default. This is experiemental and not known to be useful on any mobile platform. Change 3991375 by Mark.Satterthwaite Proper copyright assignment in the mtlpp debugger header. Change 3993151 by Daniel.Wright Fix RTDF resource transition found by Rolando Change 3993818 by Rolando.Caloca DR - Missed file Change 3993923 by Krzysztof.Narkowicz Fixed crashes inside RemoveSpeedTreeWind() and RemoveSpeedTreeWind_RenderThread(). FStaticMeshComponentRecreateRenderStateContext didn't flush deferred render updates causing stale RenderData to be left: 1. Thumbnail manager called SetStaticMesh(nullptr), which added StaticMeshComponent to deferred render updates. 2. UStaticMesh::Build called FStaticMeshComponentRecreateRenderStateContext and destroyed DenderData, but didn't touch Thumbnail's manager StaticMeshComponent as it was nullptr. 3. This resulted in a StaticMeshComponent with stale RenderData pointer. #jira UE-54544 Change 3994033 by Rolando.Caloca DR - vk - Reworked layers & extensions, as we were not doing it properly - Remove -vulkanstandardvalidation and -novulkanstandardvalidation as they are not needed anymore Change 3994275 by Mark.Satterthwaite Change to linking against mtlpp via AddEngineThirdPartyPrivateStaticDependencies and marking its header with THIRD_PARTY_* macros in the vain hope that might convince the remote compilation code to distribute the module to the remote machine when building MetalRHI. #jira UE-57507 Change 3994365 by Mark.Satterthwaite Pilfer some code from the old MetalHeap file to handle calculating texture memory size on older macOS and iOS builds when running with stats or LLM enabled. #jira UE-57513 Change 3994382 by Rolando.Caloca DR - vk - Some missing locks during image tracking Change 3994422 by Rolando.Caloca DR - vk - Remove bogus shader format Change 3995530 by Rolando.Caloca DR - vk - Fix for crash when validation is enabled Change 3995531 by Rolando.Caloca DR - vk - Fix static analysis Change 3995532 by Rolando.Caloca DR - vk - Added support for r.Vulkan.SaveValidationCache Change 3995610 by Uriel.Doyon Texture Streaming Changes and Fixes: - Using the small FOV items (like scopes) now only affect visible primitives (through "r.Streaming.MaxHiddenPrimitiveViewBoost"). - Static components added after the level is registered in the streaming manager are now handled correctly (fixes the low quality on the chests) - Dynamic components do not need to register to the streaming manager anymore. - Optimized dynamic component management by removing duplicate entries in the update list. - Added a pregarbage collect pass to the dynamic component management to optimize GC handling. - Added a budget reset logic whenever the scene requirements change significantly. - PIE worlds now have correct visibility information. - Fixed possible invalid memory access when processing the streaming manager slave views. - Refactored the incremental level texture data build to prevent new components from being unhandled. - Removed StreamingManager callbacks for NotifyActorSpawned() and NotifyPrimitiveAttached() - Added a StreamingManager callback NotifyPrimitiveUpdated(), to be used whenever a primitive streaming state must be updated. #jira none Change 3995908 by Arciel.Rekman Fix compile errors when using new Vulkan queries. Change 3995990 by Arciel.Rekman More compile fixes to new Vulkan queries. - MSVC did not catch this, clang did. Change 3996101 by Rolando.Caloca DR - vk - Win32 compile fix Change 3996323 by Mark.Satterthwaite Use the right include path to export the mtlpp headers. #jira UE-57507 Change 3996392 by Arciel.Rekman Vulkan: fix crash on start when using new queries. - CommandBufferManager was not yet set at that point and the code in queries relied on it. Change 3996585 by Rolando.Caloca DR - Slight improvement to GL being black, but just a temporary 'workaround' as it's not correct. Change 3998806 by Arciel.Rekman Fix Linux build (UE-57602). #jira UE-57602 Change 3998866 by Arciel.Rekman SubwaySequencer: fix old shader platform name. Change 3998947 by Mark.Satterthwaite Silence deprecation warnings in CEF on macOS now that we've moved to 10.12 as the minimum. #jira UE-57577 Change 3998951 by Mark.Satterthwaite Fix last of the deprecation errors that I am aware of for macOS 10.12. #jira UE-57581 Change 3998984 by Mark.Satterthwaite Build mtlpp for iOS 9.0 not 9.3. #jira UE-57586 Change 3999065 by Rolando.Caloca DR - vk - Make sure we use version 1.0.0 #jira UE-57521 Change 3999071 by Arne.Schober DR - [UE-55433, UE-57361] Hack SNORM support in OpenGL by re-interpreting UNORM. Underlying data is always SNORM. #jira UE-55433, UE-57361 Change 3999494 by Rolando.Caloca DR - Enable r.UnbindResourcesBetweenDrawsInDX11 in debug - Clear compute resources when r.UnbindResourcesBetweenDrawsInDX11 is enabled Change 4000197 by Krzysztof.Narkowicz Mesh simplifier - normalize TexCoordWeights using min/max TexCoord range. This fixes precision issues for very big TexCoord values and allows to optimize for all TexCoord channels when channels have values of different magnitudes (e.g. non standard TexCoord data). #jira UE-54935 Change 4000305 by Yuriy.ODonnell Suppress PVS Studio warning V547 (Expression is always true) related to Aftermath Reported issue to PVS team and to NVIDIA. Confirmed false positive, fix coming in future PVS version (v6.24). #jira UE-57579 Change 4000853 by Arciel.Rekman Linux: fix not calling CrashReportClient (UE-57678). #jira UE-57678 Change 4001504 by Rolando.Caloca DR - vk - Fix transition Change 4002460 by Krzysztof.Narkowicz Toggle for contant shadow length in word space Exposed contact shadows to Blueprints #jira none Change 4002608 by Rolando.Caloca DR - vk - Fix static analysis - Fix potential debug image tracking crash - Comment out unused methods Change 4002615 by Rolando.Caloca DR - vk - Allow r.Vulkan.WaitForIdleOnSubmit to be set at startup (e.g. in ConsoleVariables.ini) Previously, if your map needed to UpdateSkyCaptureContents on startup, an ensure would fail if GWaitForIdleOnSubmit was set. PrepareForCPURead needs to wait for the command buffer to finish before trying to read the results back, but the wait has already happened when r.Vulkan.WaitForIdleOnSubmit is set. Trying to wait again correctly complains that the command buffer is not in the correct state. So, skip the WaitForCmdBuffer call when r.Vulkan.WaitForIdleOnSubmit is set. Change 4002640 by Rolando.Caloca DR - vk - Missing support for CVarDefaultBackBufferPixelFormat Change 4002919 by Guillaume.Abadie Implements DOF's temporal upsampling pass for better dynamic resolution stability. Change 4002984 by Guillaume.Abadie Integrates Sebastian Aaltonen's ALU optimisations for TAAU. Change 4003112 by Olaf.Piesche Fir for TBB stall (resulting in severe hitches and hangs in the editor with stats active); tested multiple scenarios and encountered no hitches. #tests QAGame PerformanceTest and RenderTest map with various stats on and off Change 4003159 by Mark.Satterthwaite Undo parts of changelist 3970553 - the ref-counted pointer approach to returning textures to the pool is not working as expected so we'll remove that. It'll be faster on the CPU without it and everything works thanks to the changes this CL made to the way textures were released. #jira UE-57538 Change 4003287 by zachary.wilson Adding reflection capture content to TM-LightingScenarios Change 4003395 by Arne.Schober DR - Fix unitzialised value when clicking Go To in the editor #jira UE-57048 Change 4003425 by Rolando.Caloca DR - vk - Fix for new occlusion queries Change 4003530 by Arne.Schober DR - Disable GPU Benchmark in headless configurations #jira UE-57673 Change 4003717 by Rolando.Caloca DR - vk - Fix for depth not store, stencil store Change 4003719 by Rolando.Caloca DR - Minor switch to render pass Change 4003720 by Mark.Satterthwaite Don't suballocate private memory buffers on Vega and only Vega as there is something wrong with the blits in those cases but I can't capture a GPU trace to find out what right now (the driver is broken) - could be a bug in my code but this works on Polaris and Nvidia so it will need to be filed as a radar for AMD. Remove the FMetalBufferChunk from FMetalBuffer and simply store a pointer to the owning Heap/Magazine allocator. The FMetalResourceHeap now calls a new Release function to return the buffer to the allocator which will be faster on the CPU. #jira UE-57659 Change 4003854 by Mark.Satterthwaite Undo parts of 3990064 and try a different approach to get the uniforms to upload and remain available in the right places. As the original bug has been lost to time we should keep an eye out for missing buffer bindings by running under the Metal validation layer periodically. #jira UE-57576 Change 4004709 by Rolando.Caloca DR - Support for D3D 11, 12 & Vulkan for UAVs off Index Buffers Change 4005149 by Guillaume.Abadie Adds shader permutation to avoid clamping input buffer UV in DOF's gather pass. Change 4005284 by Uriel.Doyon Resaved volume texture assets with proper engine version. #jira UE-57534 Change 4005286 by Guillaume.Abadie Reduces constant setup in DOF's gather pass. Change 4005359 by Rolando.Caloca DR - vk - Fix annoying warning Change 4005363 by Rolando.Caloca DR - Fix android not finding vulkan shaders Change 4005457 by Rolando.Caloca DR - vk - Fix swapchain crash Change 4005473 by Patrick.Kelly UE-57135: Editor crash if set Reflection Capture Resolution to be 64 and New a Default level Codde by Daniel Tested by Patrick Change 4005474 by Rolando.Caloca DR - vk - Remove glsl code from shaders. Packaged QAGame goes from 176MB to 162MB Change 4005759 by Krzysztof.Narkowicz Fixed a bug, where reflection capture build is called, even though we are in mobile preview mode. #jira UE-57743 Change 4005774 by Mark.Satterthwaite Update the wave intrinsics to avoid implicit bool->uint conversion that Apple don't like. #jira UE-57750 Change 4005974 by Mark.Satterthwaite Don't use cubemap array types on iOS Metal as they aren't available on all devices and we need to maintain backward compatibiliy for years to come. #jira UE-57083 Change 4006056 by Mark.Satterthwaite Remove the use of the PrimitiveType argument from Metal draw calls. #jira UE-57822 Change 4006139 by Mark.Satterthwaite - Move the render-pass functions into the MetalRHI implementation for later alteration. - Implement Index buffer UAVs for Metal - makes them more like vertex-buffers so this is one more step on the road to a unified buffer base-class implementation. Change 4006215 by Mark.Satterthwaite Metal's begin & end render/compute pass API implementation will take some time, but for now make it not depend on the parent stub implementation. Change 4006394 by Mark.Satterthwaite In lieu of a real instruction count just use the number of lines in the "Main" function of the shader as the instruction count for Metal. #jira UE-57551 Change 4006493 by Mark.Satterthwaite MetalRHI can currently support 4-component formats for Buffer UAVs - this might need some thought in the future as the API evolves but we might as well take advantage while we can. Change 4006495 by Daniel.Wright Integrate from Refactor branch * New FMaterialRenderProxy function GetMaterialWithFallback which provides both the FMaterialRenderProxy and FMaterial. Needed when falling back to default material, so that proxy and material resource match. * Local vertex factory uniform buffer Change 4006851 by Brian.Karis Fix for joined charts forming an L to inflate both axii. Thanks to Jess Kube of The Coalition. Change 4006852 by Brian.Karis Fix for hard coded reflection capture cube map size. Should fix light static light aliasing in captures Change 4006918 by Brian.Karis New ByteBuffer functionality. Memcpy and scatter upload. Can implement GPU side TArray reflection. Not yet used by checked in code. WIP optimization. Change 4007246 by Guillaume.Abadie Creates lower quality permutation for DOF's gathering pass, without Coc based weighting of the samples, and lower number of gathering ring for fast accumulator. Change 4007291 by Guillaume.Abadie Exposes more DOF scalability settings. Change 4007328 by Guillaume.Abadie Optimises DOF's half res only setup pass using gather4 Change 4007627 by Richard.Wallis Fix for when Magic Mouse cannot zoom in World Composition editor. Missing default SNodePanel::OnMouseMove behaviour. Tested using a classic 2xbutton + wheel mouse and a Mac MagicMouse. #jira UE-57030 Change 4007682 by Richard.Wallis No video when playing HLS streaming video on Mac. 2 Issues, FPS was zero making duration for video sample buffer nonsense and Video Track dimensions were going to zero on the AVAsset once fully initialized when playing HSL streams. Now cache relevant details and handle zero frame rate. Notes: - Caching the frame rate is not as important as we could look it up each time and fix for zero - ignoring that at the moment. - Assume we DO NOT want the FrameSize to be the last fetched video frame size from the AvfMediaVideoSampler as I think that is the video quality for streaming video and not the media frame size. - Renamed a variable in the AvfMediaVideoSample - was called FrameRate but it was the FrameDuration by that point. #jira UE-56734 Change 4007731 by Rolando.Caloca DR - Disable byte buffers on non-hlsl based platforms #jira UE-57851 Change 4007741 by Rolando.Caloca DR - Disable byte buffers on hlslcc platforms Change 4007782 by Mark.Satterthwaite Force Metal shaders, including the stdlib, to recompile. Change 4007918 by Rolando.Caloca DR - vk - Some static asserts Change 4008404 by Arciel.Rekman Do not crash on incompatible Vulkan drivers (UE-57521). #jira UE-57521 Change 4008442 by Daniel.Wright Better comments on ERHIFeatureLevel expectations Change 4008494 by Arne.Schober DR - moved bDeletedThroughDeferredCleanup before begincleanup to catch cases where the reference is added twice to the array. also removed finishcleanup as all they ever did was deleting the pointer anyway, and it sould be adfded if such functionallity is ever required fom outside of the regular destructor. #jira UE-57754 Change 4008730 by Mark.Satterthwaite After the most recent changes to handling uniform buffer dirty bits in MetalRHI we should guard against attempts to set an unbound uniform buffer. #jira UE-57870 Change 4008949 by Brian.Karis Fix compile warning Change 4008951 by Brian.Karis Added LTC LUT textures Change 4009326 by Guillaume.Abadie Compiles out DOF's gathering bokeh simulation on platform other than desktop. Change 4009380 by Krzysztof.Narkowicz Moved area light code before the contact shadows, so contact shadows use representative light's direction. Merged all contact shadows shader code. Contact shadows keep constant screen space length independent of FoV settings. Contact shadows for translucents. Contact shadows for eye. Change 4009555 by Guillaume.Abadie Splits DOFCocTile.usf in two. Change 4009999 by Yuriy.ODonnell MallocStomp can now be enabled on certain platforms using '-stompmalloc' command line argument. Previously it was necessary to modify MallocaStomp.h and re-compile the engine. Currently supported platforms: Win64, Mac, Linux. Replaced hard-coded page size with FPlatformMemory::GetConstants().PageSize. Change 4010288 by Rolando.Caloca DR - vk - Fix for vertex streams Change 4010289 by Krzysztof.Narkowicz D3D12 - fixed depth bounds bug, where depth bounds wasn't properly set to [0;1] after disabling. #jira UE-57510 Change 4010297 by Rolando.Caloca DR - vk - Remove some functions for android Change 4010315 by Rolando.Caloca DR - vk - Remove create info macro Change 4010451 by Rolando.Caloca DR - vk - Reuse samplers - Infiltrator goes from 5759 to 24 samplers! Change 4010627 by Rolando.Caloca DR - vk - Fix missing values for tracking swapchain validation Change 4011924 by Guillaume.Abadie Implements tile based early return optimisation on DOF's postfiltering method. Change 4011941 by Guillaume.Abadie Shaves some ALU in DOF's accumulator for LowQuality permutation. Change 4012093 by Yuriy.ODonnell Disable MallocStompOverrunTest() in static analysis config, as it intentionally performs an out-of-bounds access. Change 4012195 by Rolando.Caloca DR - vk - Fix for mobile backbuffer layout Change 4012202 by Rolando.Caloca DR - vk - Don't use staging buffers on UMA Change 4012467 by Rolando.Caloca DR - Remove redundant check Change 4012486 by Rolando.Caloca DR - Fix missing transition Change 4012518 by Guillaume.Abadie Implements fast shader permutation for DOF's TAA pass. Change 4013084 by Arciel.Rekman Fix for Linux clock discrepancy. - Causing at least one precision issue, possibly more. (Edigrating 4003273, 4012462 from //UE4/Dev-Editor/... to //UE4/Dev-Rendering/...) Change 4013266 by Uriel.Doyon Fixed crash when setting SceneDepthTextureNonMS and not having valid depth buffers in the SceneContext. Change 4013626 by Uriel.Doyon Fixed crash in the lighting build when creating a blueprint of the ALight and placing a light component in it. #jira UE-51672 Change 4013805 by Rolando.Caloca DR - Fix more missing transitions Change 4014128 by Arne.Schober DR - Do not create LocalVFUniformBuffer when running without MVF #jira UE-57929 Change 4014193 by Uriel.Doyon Editing component transforms now invalidate the component's lighting cache. #jira UE-48134 Change 4014282 by Rolando.Caloca DR - vk - Remove extra validation during dump Change 4014584 by Uriel.Doyon Duplicated static meshes now generate a new GUID to prevent possible issues with lightmass. #jira UE-49064 Change 4014604 by Uriel.Doyon UStaticMesh postduplicate now only generates a new GUID if !bDuplicateForPIE. Change 4015460 by Guillaume.Abadie Composes separate translucency within DOF's recombine pass. Change 4015571 by Guillaume.Abadie Refactors tonemapper to use global shader permutation API, that adds permutation for HDR output device rather than dynamic branching that some shader compiler are not very well optimizing. Change 4015984 by Krzysztof.Narkowicz Fixed crash inside DFAO resource allocation, when DFAO viewport has zero area. #jira UE-58000 Change 4016056 by Mark.Satterthwaite Fix Mac Metal shader compilation of texture cube arrays. Change 4016062 by Richard.Wallis Convert things like Space, Delete, F6 etc to unicode so they display correctly on the Mac menu rather than first letter of word. Added the default Mac commands to the GenericCommands so we get a Chord overwrite message and stop things like cmd+ q / w / h from getting bound. #jira UE-46999 Change 4016109 by Mark.Satterthwaite One unified Metal buffer implementation - will make further changes a heck of a lot easier. Change 4016221 by Patrick.Kelly UE-57617: Ensure changing viewmode to ShaderComplexity while in -game Change 4016238 by Guillaume.Abadie Makes clang happy again in Tonemapper. Change 4016309 by Mark.Satterthwaite More *_RenderThread implementations for MetalRHI. Change 4016414 by Mark.Satterthwaite And MetalRHI version of CreateStructuredBuffer_RenderThread... Change 4016498 by Mark.Satterthwaite Don't hold on to the uniform buffers bound to the hull shader when switching to a tessellated draw call as they'll have the wrong buffer layout. #jira UE-57930 Change 4017394 by Juan.Canada OpenGL: Fixed shading artifacts due incorrect UNORM/SNORM conversions in skin/skincache/computetangent shaderss. #jira UE-57691 Change 4017522 by Rolando.Caloca DR - vk - Remove unused code path (old mip generation detection) Change 4017539 by Rolando.Caloca DR - vk - Fix for sky lighting mips showing green on AMD Change 4017542 by Arciel.Rekman Moved appCountTrailingZeros to a non-SSE header (fixes ARM64 build). - Arguably WITH_SLI shouldn't apply to Linux on ARM but the fact that the function wasn't available is bad on its own. Change 4017827 by Guillaume.Abadie Optimises DOF's scattering cost by a third. Change 4017835 by Rolando.Caloca DR - Only allow a render pass to generate mips for one color render target Change 4017889 by Mark.Satterthwaite Cache all the Metal state objects to avoid hitting the API unnecessarily. Change 4018251 by Mark.Satterthwaite Fix broken rendering on Metal that tracked back to the innocuous looking changes in CL #4006495 (no blame attached - these changes are entirely reasonable) and cause various bugs in QAGame's TM-DistanceFields, ElementalDemo and probably more. Doesn't fix broken SpeedTree rendering :(. MetalRHI was allowing uniform buffers to blow away linear texture buffers when the constant buffer has been elided due to dead-code elimination. This problem can manifest without linear textures if the uniform buffer contains both constant data and a resource-table but the shader doesn't use any of the constant data. That's because Metal doesn't separate constant buffers from any other kind of buffer unlike D3D which separates all the slots out - and Metal doesn't provide enough buffers to emulate the D3D arrangement. So far this has only manifested in the MVF + Linear Texture case but a more robust solution will be necessary long term. Change 4018514 by Guillaume.Abadie Implements r.DOF.Scatter.MinCocRadius. Change 4018553 by Guillaume.Abadie Implements r.DOF.Scatter.MaxSpriteRatio to control the budget upperbound of DOF's scattering Change 4020369 by Yuriy.ODonnell Disable MallocStompOverrunTest in all static analysis configs (using USING_CODE_ANALYSIS macro) Previously was only disabled for PVS-Studio. Change 4020620 by Arciel.Rekman Fix XboxOne CIS (fallout of appCountTrailingZeros move). Change 4020949 by Guillaume.Abadie Configures DOF in scalability settings. Change 4021593 by Rolando.Caloca DR - vk - Support for Aftermath style api on AMD Change 4021740 by Rolando.Caloca DR - vk - Change log output Change 4022008 by Uriel.Doyon Fixed renderthread stalls when streaming texture mips on low end systems. Change 4022135 by Rolando.Caloca DR - vk - Fix last mip's layout during mip chain creation Change 4022607 by Jian.Ru Speculative fix for a bug where an invalid vertex buffer is deferenced #jira UE-56229 Change 4022890 by Rolando.Caloca DR - Fix reference count not getting released Change 4023540 by Mark.Satterthwaite Avoid some pointless retain/release calls on Metal Encoders. Change 4023796 by Marcus.Wassmer Tell users they are over the maximum size when allocating very large rendertargets. Change 4025337 by Yuriy.ODonnell Improved use-after-free detection mechanism and physical memory usage of MallocStomp on Windows. MallocStomp on Windows will now reserve virtual address space for every allocation and then commit physical pages only to the valid usable part. Physical pages will be unmapped on Free, but virtual address space will not be released and therefore will never be re-used. Virtual address space is allocated from the OS in blocks of 1GB and then linearly sub-allocated. This reduces VA space usage, as VirtualAlloc returns blocks on 64KB granularity even if we just need 4KB. As a small bonus, this also reduces number of syscalls per allocation. This dramatically increases accuracy of use-after-free detection, but consumes significant amount of memory for the OS page table. Virtual memory limit for a process on Win10 is 128 TB, which means we can afford to keep virtual memory reserved for a long time. Running Infiltrator demo consumes ~700MB of virtual address space per second. Additionally, committing physical pages only for the usable part of the entire virtual block reduces physical memory usage by ~30% compared to old behavior, which allocated and committed entire block of pages via BinnedAllocFromOS and then marks border page as non-accessible. Change 4026047 by Rolando.Caloca DR - Fix test/shipping #jira UE-58148 Change 4026150 by Krzysztof.Narkowicz Force proper ordering of buffer visualization materials - after tonemapping (so exposure doesn't influence it) and before editor stuff like icons. #jira UE-57992 Change 4026226 by Rolando.Caloca DR - Fix static analysis #jira UE-58150 Change 4026354 by Jian.Ru Debug check trying to catch a crash. Only enabled in editor build #jira UE-50111 Change 4026655 by Rolando.Caloca DR - Fix for static analysis #jira UE-58149 Change 4026763 by Rolando.Caloca DR - Remove references to defunct CCT to avoid confusing licensees Change 4027167 by Uriel.Doyon Fixed possible out of bound buffer access when serializing with FDuplicateDataWriter. #jira UE-56509 Change 4027850 by Jian.Ru Prevent log spam #jira UE-50111 Change 4029546 by Rolando.Caloca DR - Compile fixes Change 4029624 by Yuriy.ODonnell Addressed static analysis errors in MallocStomp - VirtualAlloc return value is now explicitly checked. - C6250 is suppressed, as VirtualFree does not release address space by design. Change 4030225 by Yuriy.ODonnell Static analysis warning fix: make sure declaration of Sleep() is consistent between Windows headers and TBB The complexity with this particular case is that the warning is generated in synchapi.h, which is included by some Windows headers. If a module includes TBB and then Windows platform headers, static analyzer will report this warning. Suppressing it would require wrapping all instances of Windows header includes in third-party macros. Current pragmatic solution is to modify the Sleep() declaration in TBB header to be consistent with Windows and to report the issue to Intel for a permanent fix. Change 4030440 by Rolando.Caloca DR - Fix crash on mobile #jira UE-58222 Change 4030570 by Daniel.Wright Allow null SRV's in uniform buffers for feature levels that don't support SRV's in shaders Change 4030618 by Arne.Schober DR - missing tangent/normal sign conversion after integration from main #jira UE-58224 Change 4031588 by Rolando.Caloca DR - vk - Fix compile error when missing vkCmdWriteBufferMarkerAMD Change 4032145 by Mark.Satterthwaite Fix UE-58268 by only emitting the base_instance/base_vertex variables required to fix-up the instance/vertex ID values to match D3D when the Metal version is 1.1 or higher, earlier versions don't support these features. #jira UE-58268 Change 4032209 by Rolando.Caloca DR - Fix crash on EngineTest: Mesh Batch's UserIndex is not a union anymore Change 4033178 by Guillaume.Abadie Fixes FXAA sampling outside viewports, that was causing black outline on bottom and right edge of the screen when ViewSize != BufferSize, problematic for some screenshot automated test. #jira UE-58151 Change 4034489 by Daniel.Wright Fixed UStaticMeshComponent modifying its UStaticMesh when undoing a change. This caused a crash when other static mesh components using the same mesh asset were rendered, since their rendering state was not recreated. A component should not modify its asset during PostEditUndo. * This behavior has been present for a long time but was previously hidden because only the vertex factory of the mesh asset is cached in static draw lists, not any of its rendering resources (eg vertex declaration). Change 4035157 by Uriel.Doyon Fixed deadlock in the streaming code when running with -onethread. #jira UE-58299 Change 4035198 by Rolando.Caloca DR - vk - Fix issue when an older SDK was installed, UBT would pick it (should pick the newer of ThirdParty\Vulkan or installed SDK). #jira UE-58267 Change 4035730 by Arne.Schober DR - Fix missing Fog parameters during LightScattering Injection #jira UE-57608 Change 4035843 by Daniel.Wright Reimplemented support for EyeAdaptation node in opaque materials Change 4036837 by Marcus.Wassmer Replace some of the screenshots to match new un-tonemapped buffer visualization Change 4036980 by Rolando.Caloca DR - vk - Fix deadlock contention during mem allocation on Linux Change 4037225 by Guillaume.Abadie Fixes jittering selection outline. #jira UE-58350 Change 4038056 by Marcus.Wassmer roll back changelist 4026150. breaks a bunch of automated tests by cutting off half the image. Change can go back in later with that part fixed also Change 4038296 by Jian.Ru Static analysis fix #jira UE-58377 Change 4038402 by Ben.Marsh Suppress IncludeTool warnings caused by CL 3998947. Change 4038514 by Arne.Schober DR - Fix case with MVF where instance offset is not supported by the API (in this case only foliage OpenGL and TvOS), usually the buffers are offsetted instead but with MVF we do not use offsetted buffers, therfore the offset needs to be passed into the shader although we are drawing with offset of 0. #jira UE-57652 Change 4038747 by Marcus.Wassmer Back out changelist 3853645, causing us to lose shadows in the shaderhair test Change 4040138 by Rolando.Caloca DR - Fix compile warning Change 4041614 by Rolando.Caloca DR - vk - Fix for Oculus module #jira UE-58267 Change 3810277 by Daniel.Wright Ray Traced Distance Field shadows use a two pass tile culling algorithm with no tile max - fixes flickering from tile overflow in dense areas or with a low sun angle. Costs .2ms on PS4. The distance field scene buffers now use float4 on PS4 and Xbox, saves .1ms on PS4. Change 3817029 by Uriel.Doyon Added UVolumeTexture, which use 3D textures. Compressed formats are supported on DX11, DX12, PS4 and XB1. Projects targetting OpengGL don't have access to compressed formats (as the implementation has texture tiling issues). Add "r.AllowVolumeTextureAssetCreation" set as 0 by default, which controls whether volume texture can be sampled in materials and whether they can be created from 2D texture assets. Platform not supporting BC7, will now fallback on RGBA8 instead of DXT to preserve quality, in an attemps to increase usage of BC7. #jira UE-32263 Change 3819960 by Michael.Lentine Expose UEPhysics Clothing Parameters through UI. Change 3823401 by Rolando.Caloca DR - Add NumQueriesInBatch to RHIBeginOcclusionQueryBatch Change 3844805 by Arne.Schober DR - Increased Intermediate normal of Umodel and Skelmesh from 8bit Unorm Compressed to float. A resave/rebuid/reimport of the meshes is recommended to recover some lost precision. Fixed an issue with compressed (packed) normals on the GPU which were off by one integer representation. Also switched from UNORM to SNORM to get a discrete zero representation and removed some mads from all the VertexShaders. Change 3847283 by Marcus.Wassmer Extra fixes from Uriel Change 3876607 by Rolando.Caloca DR - Use render passes when running occlusion queries - Removes the RHI(Begin|End)OcclusionQueryBatch API Change 3903799 by Daniel.Wright [Integrate] Pass Uniform Buffers * All pass-constant shader inputs should go into the appropriate pass uniform buffer, instead of being set per-draw * Moved many per-draw base pass parameters over to the Base Pass Uniform Buffer * Opaque and Translucent base pass shaders have different uniform buffers, which allows compile errors when accessing an invalid resource (eg GBuffer in Opaque), instead of silently falling back to GBlackTexture Uniform buffers can now contain nested structs with UNIFORM_MEMBER_STRUCT() * This allows composing a uniform buffer at a particular update frequency out of many features, with encapsulation of each feature's parameters in a struct. * Eg deferred fog uses FFogUniformParameters, but so does translucency in the base pass, where FFogUniformParameters is reused nested inside the base pass uniform buffer. * Resources can now be located anywhere in the uniform buffer. Padding is inserted to the cbuffer representation to keep memory layouts matching. In the future the cbuffer could be compacted. * RemoveUniformBuffersFromSource() which works around HLSLCC lack of struct initializers now handles nested structs Change 3917500 by Rolando.Caloca DR - Change depth bounds so only the enable bit is in the PSO, allow min/max to be dynamically modified Change 3964907 by Guillaume.Abadie Implements RectList topology support in RHI. Change 3979171 by Mark.Satterthwaite Copying //Tasks/UE4/Dev-UERNDR-354-mtlpp to Dev-Rendering (//UE4/Dev-Rendering): Rewrites MetalRHI in terms of mtlpp, which is a C++ wrapper library built around Metal's Objective-C API that attempts to reduce overheads and eliminate resource lifetime errors. Regarding mtlpp: - The mtlpp library uses C++ constructor/destructor and smart-pointer style management of Objective-C retain/release calls to prevent over- and under-release problems. - To reduce Objective-C overheads the mtlpp library caches the internal C-function that implements the Objective-C selectors for the most commonly used Metal protocol types and calls the function directly - this avoids objc_msgSend which does this look-up dynamically and thus improves CPU performance slightly. - Another advantage is that mtlpp provides infrastructure to extend the Metal API slightly to help improve MetalRHI - the two important aspects are mtlpp::CommandBufferFence which provides a consistent CPU<->GPU synchronisation primitive and sub-buffer allocations from mtlpp::Buffer which allow for far superior memory management. - Validation functionality is also provided by mtlpp to detect CPU vs. GPU data races and resource lifetime validation - this is expensive and is thus optional and compiled out from Shipping binaries that should be used when performance is most critical. The validation only works between resource modification and *submitted* command-buffers - anything that is being actively encoded on the CPU is ignored and it remains the responsibility of the application to validate the order of operations when encoding. Apple Platform: - LLM support which tracks Objective-C objects is enabled only on macOS - we don't have the necessary libraries to intercept and override the internal system calls on iOS. MetalRHI: - All the types are switched over, (mostly) insuling the external API from the horror of Metal and Objective-C. - Buffers are now managed quite differently, small buffers are allocated from a magazine allocator that allocates in fixed blocks from a larger parent buffer, intermediate sized buffers are allocated from a simple heap allocator that wraps a larger buffer and anything of reasonable size (>2Mb) will use the pooled allocator. This *radically* reduces the number of buffer resources, by as much as a factor of 10, because they are now sub-allocated without the need to use MTLHeap or MTLFence so they are performance equivalent to the existing implementation on the GPU and much faster on the CPU. Total memory use is approximately the same. - Vertex & index buffer management has been updated to reflect changes in the management and to avoid reallocating buffers which provide a Linear Texture (for SRVs) unless strictly necessary. This ensures that even in cases where a dynamic buffer is updated multiple times in a frame it will still work acceptably well. - The Metal ring-buffer implementation is completely different again, this time it can use Managed memory on macOS which allows for much better performance on eGPUs which will be more and more important for Mac. - Everyone that needs to wait on a command-buffer fence (rather than a command-buffer itself) now use mtlpp::CommandBufferFence, which prevents race conditions between the different command-buffer handlers (which sometimes execute out of order). - LLM tracking should now report the same data as the MetalRHI stats group for buffer & texture allocations - there is no segmentation for Vertex/index/Structured/Uniform allocations in Metal so these numbers are going to be wrong and will need to be rethought. - What will be unseen are the number of small but important resource usage fixes that avoid stale resources from being bound to the device after the point at which they become invalid. This should eliminate a class of errors where the GPU uses a resource pointer that is modified by the CPU and was necessary to satisfy the new mtlpp validation code. Other: - Remove the Metal focused workarounds from the ClothBuffer resource binding and related vertex-buffer SRV - these were put in when MetalRHI/MetalShaderFormat couldn't handle float->uint conversions correctly and they should now. - Fix a validation error caused by trying to render a 0-sized scissor rect which is invalid in Metal and simply pointless elsewhere. - Consistency of disabling the Manual Vertex Fetch behaviour in shaders. #jira UERNDR-354 Change 3979312 by Rolando.Caloca DR - Remove bogus bKeepOriginalSurface parameter in CopyToResolveTarget Change 4005122 by Rolando.Caloca DR - Support for PS4 Index Buffer UAVs Change 4016298 by Guillaume.Abadie Fixes DOF hybrid scattering on platforms that supports RectList topology. Change 4018575 by Guillaume.Abadie Optimises DOF's reduce pass when doing scattering compilation. Change 4020317 by Guillaume.Abadie Implements WaveBroadcastIntrinsics.ush. [CL 4042226 by Marcus Wassmer in Main branch]
2018-05-01 10:36:33 -04:00
{
extern void BeginOcclusionQueryBatch(uint32);
BeginOcclusionQueryBatch(InInfo.NumOcclusionQueries);
}
#if PLATFORM_ANDROID
if (RenderPassInfo.SubpassHint == ESubpassHint::DeferredShadingSubpass &&
FOpenGL::SupportsPixelLocalStorage() && FOpenGL::SupportsShaderDepthStencilFetch())
{
glEnable(GL_SHADER_PIXEL_LOCAL_STORAGE_EXT);
}
#endif
#if PLATFORM_ANDROID
if (FAndroidOpenGL::RequiresAdrenoTilingModeHint())
{
FAndroidOpenGL::EnableAdrenoTilingModeHint(FCString::Strcmp(InName, TEXT("SceneColorRendering")) == 0);
}
#endif
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 4041614) #lockdown Nick.Penwarden ============================ MAJOR FEATURES & CHANGES ============================ Change 3774677 by Arne.Schober DR - Deprecated SetLocal from the RHICmdlist Fixed some unnecessary PSO collisions. Change 3809579 by Chris.Bunner Back out changelist 3774677. #jira UE-53483 Change 3810363 by Mark.Satterthwaite More random fixes to mtlpp: most important is the extension to Buffer that allows creation of sub-buffers that are merely views onto a sub-range of the parent. These sub-buffers are valid to use throughout the mtlpp API with two exceptions: they may not be used for visibilityResultsBuffers and Set*BufferOffset functions cannot take this offset into account (as the encoder does not hold onto the buffers and I don't want it to). In the case of Set*BufferOffset the caller has to know what is going on and in the case of visibilityResultsBuffers it'll just assert as it isn't sensible. This makes it *much* easier to do things like sub-buffer allocation, though the caller must be aware of the alignment restrictions of their intended usage as they are not possible to enforce. For example, a call to SetVertexBuffer requires an offset alignment must match the alignment of the data-type in the shader for "device" resources, or for "constant" data it must be max(4, sizeof(datatype)) on iOS and 256 on macOS. This should allow for much more tightly packed sub-allocations than earlier approaches, though older drivers (e.g. Mac OS X 10.11) enforce only the coarser "constant" data restriction everywhere. Change 3810407 by Marcus.Wassmer PR #4322: ShadowSetup Bug Fix: Only stencil mask drawn meshes (Contributed by DSDambuster) Change 3810676 by Guillaume.Abadie Makes r.Test.SecondaryUpscaleOverride work with any arbitrary pixel size. Change 3810696 by Guillaume.Abadie Adds support for #include "../MyFile.ush" in the shader compiler. Change 3810698 by Guillaume.Abadie Implements enum class based shader permutation dimension. Change 3810699 by Guillaume.Abadie Implements Diaphragm DOF ground work. Change 3811536 by Guillaume.Abadie Pulls the trigger on CircleDOF's setup pass for DiaphragmDOF. Change 3811958 by Mark.Satterthwaite More fixes for mtlpp. Change 3811964 by Mark.Satterthwaite Only views onto a mtlpp::Buffer should return a valid parent-buffer. Change 3812604 by Guillaume.Abadie Changes Diaphragm DOF's source file layout. Change 3812827 by Mark.Satterthwaite More missing/broken functionality in mtlpp fixed and fixed obvious leaks. Change 3812920 by Guillaume.Abadie Adds support for per mip level UAV in FSceneRenderTarget. Change 3812926 by Mark.Satterthwaite Change the way we handle mtlpp resource construction to avoid leaks. Change 3812960 by Rolando.Caloca DR - vk - Disable DFGI Change 3812968 by Rolando.Caloca DR - Linker fix Change 3813318 by Mark.Satterthwaite Fix linear texture allocation from a buffer sub-view. Change 3813326 by Mark.Satterthwaite Fix another Metal mtlpp sub-buffer allocation failure. Change 3813328 by Guillaume.Abadie Removes global samplers in TAA for GL4, Vulkan and Switch. Change 3813937 by Rolando.Caloca DR - Fix logs not getting dumped when r.DumpSCWQueuedJobs is on Change 3813947 by Rolando.Caloca DR - noshaderworker should override r.XGEShaderCompile Change 3817017 by Uriel.Doyon Fixed texture editor black screen #jira UE-53653 Change 3818568 by Rolando.Caloca DR - Fix log when shader jobs crash - Move log10 to common - Added COMPILER_VULKAN define Change 3818603 by Uriel.Doyon Fix to static analysis warning Change 3818623 by Rolando.Caloca DR - Workaround hlslcc loop unrolling bug Change 3819070 by Uriel.Doyon Fix to stat duplication. Change 3819105 by Uriel.Doyon Refactored volume sample shader to avoid using texture dimension. Change 3819136 by Rolando.Caloca DR - vk - Per platform files (empty) Change 3819180 by Rolando.Caloca DR - vk - Move defines out of config into per platform Change 3819247 by Rolando.Caloca DR - vk - Remove more defines into platform settings Change 3819318 by Rolando.Caloca DR - vk - Fixes for linking Change 3819868 by Rolando.Caloca DR - vk - Linux & Android fixes Change 3819873 by Guillaume.Abadie Adds support for PermutationId on r.DumpShaderDebugInfo=1 Change 3819940 by Rolando.Caloca DR - vk - Fix Linux issues Change 3819956 by Rolando.Caloca DR - vk - Invalid check Change 3819961 by Michael.Lentine Hide attributes when plugin is not present Change 3819980 by Rolando.Caloca DR - vk - Standard validation always Change 3820039 by Rolando.Caloca DR - vk - Fix invalid ensure Change 3820326 by Rolando.Caloca DR - vk - Linux compile fix Change 3820422 by Michael.Lentine Add back GBufferAO. Change 3820433 by Rolando.Caloca DR - Fix D3D12 crash on 20 thread (10x2 cores) machines Change 3821677 by Rolando.Caloca DR - vk - Win32 compile fix Change 3821961 by Rolando.Caloca DR - Vulkan uses real UB by default on non-Android Change 3821968 by Rolando.Caloca DR - vk - Update glslang 1.0.65.1 Change 3821969 by Uriel.Doyon Added support for stat groups that must be sorted by name. Defined by DECLARE_STATS_GROUP_SORTBYNAME. Change 3821983 by Rolando.Caloca DR - vk - Change to static array (0.1ms on 10k draw calls) Change 3824141 by Rolando.Caloca DR - vk - Fix static analysis - Bumped up some (c) 2017->2018 Change 3824355 by Rolando.Caloca DR - vk - Accessor to find out if a cmd buffer has been submitted Change 3824420 by Rolando.Caloca DR - Sanity check number of queries per batch on D3D11 as to not break other RHIs Change 3824463 by Rolando.Caloca DR - Removed dummy ensure for D3D12 Change 3824609 by Rolando.Caloca DR - vk - Linux compile fix Change 3826074 by Mark.Satterthwaite Start IMP-caching the various descriptor types in mtlpp. Change 3826098 by Rolando.Caloca DR - vk - Dump layer compile fixes Change 3826113 by Rolando.Caloca DR - vk - Missing dump functions Change 3826302 by Rolando.Caloca DR - vk - Compile fix - Change dump handles to %p Change 3826635 by Mark.Satterthwaite Forward declarations required for mtlpp compilation without exposing Metal headers - plus fixes to the mtlpp test compiler. Change 3827072 by Mark.Satterthwaite Switch some more mtlpp descriptors over to IMPTables from objc_msgSend. Change 3827909 by Guillaume.Abadie Replaces diaphragm DOF's prefiltering with LDS bank coherent bilateral reduction, and implements 1/8 res background gathering pass. Change 3827952 by Guillaume.Abadie Updates copy right to year 2018 on diaphragm DOF's new files. Change 3828055 by Rolando.Caloca DR - vk - Rename in prep for changes Change 3828229 by Guillaume.Abadie Avoids to log multiple time global shader type name that have multiple permutations when verifying global shader map. Change 3828427 by Guillaume.Abadie Reimplements Max3x3 gathering post filtering for Diaphragm DOF with proper shader permutation. Change 3829979 by Guillaume.Abadie Fixes a color NaN source in diaphragm DOF's TAA pass. Change 3830116 by Rolando.Caloca DR - vk - Fix GPU queries/frame time on old system - New system in place, disabled temporarily Change 3830169 by Rolando.Caloca DR - vk - Fix async pso creation crash Change 3830193 by Rolando.Caloca DR - vk - CPU RHI thread improvement Change 3830291 by Guillaume.Abadie Automatically lower the number of gathering rings on background half res gather pass as far CoC is getting smaller. Change 3830300 by Rolando.Caloca DR - vk - Static analysis fix: Split VulkanCommon.h out of VulkanConfiguration.h Change 3830589 by Mark.Satterthwaite In mtlpp cache the IMPTables for all the Metal @protocol's that are dependent on the MTLDevice, this avoids a mutex & map lookup. Also make all the concrete types store their IMPTable statically as it won't change. Change 3830793 by Mark.Satterthwaite Fix a small number of bugs introduced with the mtlpp descriptor and table caching. Change 3831491 by Jian.Ru Fix driver version unknown #jira UE-53688 Change 3832335 by Rolando.Caloca DR - vk - Change include Change 3832550 by Rolando.Caloca DR - vk - Occlusion query rewrite WIP Change 3832589 by Rolando.Caloca DR - vk - Minor refactor to pools in prep for timestamps Change 3832618 by Rolando.Caloca DR - vk - Do not block timestamp queries Change 3832636 by Rolando.Caloca DR - vk - Fix old timestamp queries Change 3833138 by Rolando.Caloca DR - vk - Fix timestamp queries Change 3833249 by Rolando.Caloca DR - vk - Test lock Change 3833667 by Rolando.Caloca DR - vk - Old queries wait on the RHI thread now instead of the driver (disabled) Change 3833907 by Daniel.Wright Fixed NextStartOffset UAV index out of bounds Change 3833918 by Daniel.Wright D3D12 RHI: only refcount uniform buffers if GRHINeedsExtraDeletionLatency is false, which is no longer the case for PC or Xbox. The refcounting was heavy on performance as reported by a licensee because FRHIResource uses atomics for refcounting, which is only necessary when GRHINeedsExtraDeletionLatency is disabled. Change 3834852 by Rolando.Caloca DR - vk - Missing file Change 3834858 by Guillaume.Abadie Implements r.DOF.MinimalFullresBlurringRadius Change 3834979 by Rolando.Caloca DR - vk - Fix Change 3836117 by Rolando.Caloca DR - vk - Update to 1.0.65.1 Change 3836122 by Rolando.Caloca DR - vk - Added r.Vulkan.SubmitOcclusionBatchCmdBuffer - Added new error codes/messages Change 3836421 by Mark.Satterthwaite For the purposes of debugging and conformance testing mtlpp make it possible to compile *without* the IMP cache so that we call the underlying Objective-C. Change 3836896 by Uriel.Doyon Fixed concurrency and exit issues around d3d12 pipeline states on windows. Change 3837385 by Rolando.Caloca DR - vk - Dump memory on OOM Change 3837427 by Rolando.Caloca DR - vk - Change some arrays to array views Change 3837800 by Guillaume.Abadie Implements SHADER_PERMUTATION_RANGE_INT to make contiguous integer permutations that does not start to 0. Change 3838128 by Rolando.Caloca DR - vk - Support for non-cached memory types Change 3838540 by Guillaume.Abadie Refactors Diaphragm DOF's CoC tile buffer under a single API for better maintainability. Change 3838731 by Rolando.Caloca DR - vk - Descriptor pools per command buffer pool (turned off) Change 3838961 by Rolando.Caloca DR - vk - Use ring buffer for per frame uniform buffers - Enable descriptor pools per layout recycled per command buffer Change 3839087 by Rolando.Caloca DR - vk - Compile fixes for Android Change 3839106 by Marcus.Wassmer PR #4413: Removing unnecessary call to FString::ToLower (Contributed by gsfreema) Change 3839252 by Mark.Satterthwaite Fix mtlpp::Resource move operators. Change 3839426 by Marcus.Wassmer Duplicate 380972 Make PC GPU Benchmarks more reliable Change 3840041 by Guillaume.Abadie Fixes shader compilation failure in TAA with alpha channel through post processing support. Change 3840257 by Chris.Bunner Swapping a mul() to * in HLSLTranslator::Dot to allow scalar transformations per a UDN ticket. Change 3840308 by Rolando.Caloca DR - vk - Support for UB & non-UB on emulation mode Change 3840586 by Rolando.Caloca DR - Copy 3840577 Fix for CPUs with more than 16 cores Change 3840671 by Rolando.Caloca DR - vk - Copy from 3840663 Fix for layout ensure on HMD projects on Vulkan Change 3840980 by Rolando.Caloca DR - vk - Android compile fixes Change 3841989 by Guillaume.Abadie Slices Diaphragm DOF's Gather pass in multi shader files, and CFLAG_StandardOptimization flag for faster iteration time. Change 3842216 by Guillaume.Abadie Fixes DDOF's foreground alpha channel. Change 3842217 by Guillaume.Abadie Implements r.DOF.MaximalForegroundBlurringRadius Change 3842353 by Guillaume.Abadie Allows to disable foreground gathering with r.DOF.MaximalForegroundBlurringRadius=0 Change 3842747 by Rolando.Caloca DR - vk - Missing use of GPoolSizeVRAMPercentage - Support for smaller allocations if page size is not available Change 3842791 by Rolando.Caloca DR - vk - Use 95% of available GPU memory to handle some fragmentation Change 3843690 by Guillaume.Abadie Fixes diaphragm DOF's foreground after all this refactoring. Change 3844439 by Guillaume.Abadie Improves Coc dilate pass to make the gather pass as fast as possible, but still without artifacts caused by the fast gathering optimisation. Change 3844946 by Mark.Satterthwaite rd_route v1.1.1 with attached TPS approval. For macOS function interposition which is useful for debugging and the occasional workaround. Change 3845164 by Mark.Satterthwaite Add LLM support for macOS, including tracking of memory allocated in Objective-C. This makes use of runtime method swizzling in the Objective-C runtime and the rd_route library I added for Richard Wallis, which allows for arbitrary runtime function interposition and allows me to hook the custom allocators used in Apple's many Objective-C frameworks on which the whole macOS edifice is built. Objective-C objects are charged to the calling scope as they are too common to impose their own without murdering frame rate. We would need a TPS approval for an iOS function interposition library for this to work fully on iOS, if desired in the short term discarding LowLevelFree events that aren't in the map rather than asserting will workaround the problem. Change 3845849 by Marcus.Wassmer Fix clang and some normal refactor errors Change 3846026 by Rolando.Caloca DR - vk - Descriptor set allocation scheme rewrite - Type hash for each pool - Desc sets Pool on device Change 3846169 by Rolando.Caloca DR - vk - Remove old code for non-layout descriptor set pools Change 3846205 by Mark.Satterthwaite Disambiguate the PatchControlPointOut struct definitions in Metal tessellation shaders at Apple's suggestion to avoid a metallib gotcha. Change 3846346 by Arne.Schober DR - Missing Vector instructions Change 3847037 by Arne.Schober DR - Fix issue with GPU skincache where the offset of the clothbuffer is not relative to the offset of the actual vertexbuffer. Fixed MorphTarget Skincache Offset mixxup Change 3847275 by Marcus.Wassmer Copying MGPU to Dev-Rendering (//UE4/Dev-Rendering) Change 3847464 by Rolando.Caloca DR - vk - Fix static analysis warning Change 3847707 by Michael.Lentine Only use MorphTargetOffset when the shader enables morph targets. Change 3848533 by Richard.Wallis Handle Metal adding FirstInstance into [[ instance_id ]] which is different to other APIs. SV_InstanceID and SV_VertexID should now have their respective base instance and base vertex ID's subtracted before use in the shader. #jira UE-51716 Change 3848625 by Richard.Wallis Compile Fix Change 3848725 by Rolando.Caloca DR - Remove use of Build/SetLocalGraphicsPipelineState Change 3848797 by Rolando.Caloca DR - Deprecate Build/SetLocalGraphicsPipelineState Change 3849237 by Arne.Schober DR - AddCustom Ver for ModelVertex Serialization Change 3851247 by Rolando.Caloca DR - vk - Util functions Change 3851523 by Arne.Schober DR - Update Reflection Comparission shot from the BuildFarm. Change 3851859 by Rolando.Caloca DR - vk - Skip loader Change 3851889 by Krzysztof.Narkowicz Removed lights with lighting channels out of tiled deferred light list. Tiled deferred lights do not support lighting channels and it's wasn't worth to add extra complexity to this shader in order support this special case. #jira UE-51512 Change 3852181 by Rolando.Caloca DR - vk - Linux compile fix Change 3852547 by Uriel.Doyon Fixed Pre-Exposure shader compilation and Temporal AA issue. #jira UE-54276 Change 3852637 by Arne.Schober DR - Fixing Normal Automated Test Result Change 3853167 by Richard.Wallis AvfPlayer - support for streaming media. Due to an operator new/delete mismatch in Apples CFNetwork - we've had to change out one of that framework allocators using rd_route to avoid the memory corruption. #jira UE-35637 Change 3853447 by Chris.Bunner Fixing typos. Change 3853645 by Krzysztof.Narkowicz Fixed light functions on subsurface materials Removed strange code from blending between static and dynamic shadows #jira UE-50275 Change 3853660 by Rolando.Caloca DR - Fix OpenGL overwriting texture samplers on forward renderer Change 3853945 by Mark.Satterthwaite Duplicate #3831616 Fix the black ground scattering on Metal - we've had issues with the atmospheric fog calculations for a long time - one or more intermediate operations generates different precision on Metal so we end up passing -ve values into sqrt which then generates NaN/INF. For Metal when compiling this file and this file only #define sqrt() to sqrt(abs()) so that we don't see anymore unexpected black in atmospheric rendering. This is far from ideal but I don't want to make abs all inputs into every sqrt because AFAIK this is the only case where we have an issue, and until we to investigate each intermediate calculation that isn't ridiculously, soul-crushingly tedious, it isn't practical to identify the source of the error. #jira UE-53720 Change 3853966 by Mark.Satterthwaite Duplicate #3835852 Fix tessellation shaders in Metal with Manual Vertex Fetch enabled: - The control points idnex buffer shouldn't collide with anything else. - We can't use the optimisation of loading texture width & height from the buffer meta-table in tessellation shaders as the combined stages don't guarantee not to clobber unused buffer slots and screw it up when we use linear textures. #jira UE-53851 Change 3854250 by Uriel.Doyon Fix fbx automation tests Change 3854736 by Uriel.Doyon Added a tooltip to the EV100 slider in the exposure menu. Using game settings now disables the slider. #jira UE-53945 Change 3855047 by Jian.Ru Fix DFAO getting NANs when samples out of ViewRect #jira UE-54403 Change 3858197 by Krzysztof.Narkowicz View frustum shadow caster culling for pointlights/spotlights #jira UE-54381 Change 3860081 by Krzysztof.Narkowicz Tighter bounding sphere for a spotlight Replaced IntersectSphere(LightProxy->Origin, LightProxy->Radius) with LightProxy->SphereBounds for tighter culling of spotlights Directional light GetBoundingSphere() now everywhere returns Sphere((0,0,0),HALF_WORLD_MAX) for consistency and proper SphereBounds #jira UE-54258 Change 3860324 by Mark.Satterthwaite Update the macOS deployment target version to 10.12 from 10.11 as we officially ended support for El Capitan a while ago. Should mean that libraries compiled for 10.12 and up won't cause link warnings. Change 3860945 by Arne.Schober DR - Fix not releaseing SRV on render thread for FPositionVertexBuffer, FStaticMeshVertexBuffer, FColorVertexBuffer, FStaticMeshInstanceBuffer. #jira UE-54587 Change 3861129 by Jian.Ru Prevent distance culled objects from casting distance field direct shadows #jira UE-54533 Change 3861502 by Jian.Ru Exclude distance culled objects from DFAO calculation #jira UE-54533 Change 3862243 by Krzysztof.Narkowicz Changed radius of a directional light's bounding sphere from HALF_WORLD_MAX to WORLD_MAX in order to encopass entire WORLD_MAX box Change 3863476 by Krzysztof.Narkowicz Added BuildReflections option to ResavePackages commandlet #jira UE-54581 Change 3863717 by Rolando.Caloca DR - vk - Missed using pipeline cache on compute PSOs Change 3865332 by Arne.Schober DR - Fix UE-52356 Bone Weight Change 3866220 by Rolando.Caloca DR - vk - Fixed GetNativeResource missing on textures - Added support for -preferNvidia|AMD|Intel - Added VulkanRHIBridge.h - Minor fixes Change 3866222 by Rolando.Caloca DR - vk - Missed file Change 3866951 by Krzysztof.Narkowicz Fixed FreezeRendering on non editor builds: ComputeAndMarkRelevanceForViewParallel was calling FrozenMatricesGuard on multiple threads, reading and writing view matrices state in parallel. #jira UE-53640 Change 3867231 by Guillaume.Abadie Adds alpha mode to allow the tonemapper to passthrough the alpha channel for broadcast industry. Change 3867233 by Guillaume.Abadie Fixes a compilation failures in TAAU with r.PostProcessing.PropagateAlpha==2 Change 3867594 by Daniel.Wright Removed EditorOnlyDefaultMaterials, which added 79s of shader compilation during startup Added a dialog when opening the Material Editor on a Default Material, warning of advanced workflow Preventing Material Editor Apply or Save for a Default Material when the preview material has compilation errors Change 3870048 by Daniel.Wright Cleaned up formatting in TranslucentRendering from merges Change 3870106 by Krzysztof.Narkowicz Fixed some FArchive Tell()/Seek() 64bit->32bit truncations Change 3870211 by Rolando.Caloca DR - vk - Added -vulkanvalidation=N/-vulkanstandardvalidation/-novulkanstandardvalidation to set validation layer behaviour from cmd line Change 3870225 by Rolando.Caloca DR - vk - Some platforms do not use a standard swapchain Change 3870267 by Arne.Schober DR - SafeRelease SRVs that might be hold by the Vertexfactories (maybe due to indirect use in GlobalResources) Note that the VFs are not owners of the data, e.g the underlying Buffers might be released before this and this reference counting should be uneccessary Change 3870647 by Daniel.Wright Moved FogRendering.h to Renderer Change 3872130 by Krzysztof.Narkowicz Disable USE_GLOBAL_CLIP_PLANE for MATERIAL_DOMAIN_POSTPROCESS and MERIAL_DOMAIN_UI Merging GitHub Pull request #4459 "When material domain is not needing global clip plane there is no need to generate any code involving it. This does not alter output but removes lot of code at vertex shader and pixel shaders. At least on mobile rendered was actually generating clipping code for ui materials." #jira UE-54616 Change 3872145 by Rolando.Caloca DR - vk - Optional SupportsMarkersWithoutExtension Change 3872404 by Uriel.Doyon Added some guards when streaming virtual textures. Fixed optimized UCanvasRenderTarget2D::RepaintCanvas() to prevent resolving the texture twice. Fixed bad mipmap generation with UCanvasRenderTarget2D. Change 3872507 by Arne.Schober Back out changelist 3870267 Change 3874176 by Ben.Marsh IncludeTool: Add an flag to prevent scanning source files for exported symbols. Change 3874935 by Krzysztof.Narkowicz Fixed white thumbnails and other issues with sky lighting on ES3_1 path, by disabling GGX prefiltering, as mobile path doesn't have a single cubemap with all initialized mips. Instead it ping-pongs between 2 partially initialized. #jira UE-54656 Change 3875710 by Daniel.Wright Renamed uniform buffer member macros to be much shorter for readability Change 3876665 by Guillaume.Abadie Cherry-pick 3870715: Implements DOF's hybrid scatering bare bones. Change 3876666 by Guillaume.Abadie Cherry-pick 3871786: DOF hybrid scatering: fixes NaN source, transition to gather on close to screen edge and low intensity. Change 3876677 by Guillaume.Abadie Cherry-pick 3872348: Implements neighbor comparison for DOF's scattering compilation pass. Change 3876680 by Guillaume.Abadie Cherry-pick 3872357: Oups... fixes build... Change 3876683 by Guillaume.Abadie Cherry-pick 3872475: Controls number of mip to generate with DOF's reduce pass. Change 3876687 by Guillaume.Abadie Cherry-pick 3874104: Fixes various bugs in diaphragm DOF's hybrid scattering. Change 3876690 by Guillaume.Abadie Cherry-pick 3874144: Packs multiple DOF scattering group into same draw instance. Change 3876694 by Guillaume.Abadie Cherry-pick 3874275: Switches hybrid scattering with indexed indirect draw call to reduce scatter vertex shader invocation. Change 3876695 by Guillaume.Abadie Cherry-pick 3874674: Records min and max coc on DOF's setup's draw event. Change 3876783 by Rolando.Caloca DR - Static analysis fix Change 3876845 by Guillaume.Abadie Implements USceneCaptureComponent::ProfilingEventName Change 3877197 by Rolando.Caloca DR - vk - OQ fixes (disabled) Change 3877428 by Krzysztof.Narkowicz Merged with tiny tweaks Ansel photography plugin improvements from Adam Moss (GitHub pull request #4426): -The free-roaming photography camera has new constraints by default, i.e. it can't pass through walls -Photography session can be started and stopped programmatically, e.g. making it possible to bind photography to an alternative hotkey or button combo. This was an often-requested feature. -Tweakables and utilities are now exposed through a Blueprint Function Library (rather than direct manipulation of console variables) -The Ansel photography session UI now exposes some engine effect tweakables as sliders. For example, if the game is using depth-of-field then sliders are made available to allow the photographer to change the focal depth etc. The developer may suppress this behavior through the Blueprint Function Library. -Letterboxing is now removed during multi-part capture, d'oh. -Tiled shots are taken at full resolution even if ScreenPercentage < 100 -SSR is enabled during super-resolution shots since Ansel is now better at hiding any ensuing artifacts -Postprocess settings are frozen at session start to avoid discontinuities during photography, i.e. wandering between postprocess volumes when the camera auto-moves for stereo and 360 shots. #jira UE-54244 #4426 Change 3879086 by Krzysztof.Narkowicz Fixed sky/reflection capture (without owner) update - they are now updated only with a correspoding world Change 3879090 by Guillaume.Abadie Fixes tones of regressions on diaphragm DOF's recombine passes. Change 3879198 by Rolando.Caloca DR - vk - Support for real uniform buffers on Android platforms Change 3879993 by Krzysztof.Narkowicz -Fixed int64->int32 FArchive offset truncation in TShaderMap, VertexFactory and TextureDerivedData -Fixed FSerializationHistory bug, when trying to serialize 0 bytes #jira UE-43203 Change 3881462 by Guillaume.Abadie Implements full res DOF's setup pass for cheaper full res gathering in recombine pass. Change 3881524 by Krzysztof.Narkowicz Fixed compilation by removing FTickableEditorObject from FPreviewScene Change 3881724 by Chris.Bunner Static analysis fix. #jira UE-54762 Change 3881861 by Rolando.Caloca DR - vk - Fix layout warning when generating mip chain Change 3881864 by Rolando.Caloca DR - Use render passes on HZB Change 3882236 by Yuriy.ODonnell IndirectLightingColorScale is now applied to SubsurfaceLighting and DiffuseLighting. Was previously only applied to DiffuseLighting. #jira UE-42534 #github 3326 Change 3882325 by Guillaume.Abadie Implements FocusOnly lower gathering pass for Diaphragm DOF's slight out focus temporal stability. Change 3882340 by Rolando.Caloca DR - vk - Fix api dump Change 3882430 by Rolando.Caloca DR - vk - KHR_maintenance2 Change 3882563 by Rolando.Caloca DR - Add depth-stencil access mode to PSO initializer Change 3882929 by Rolando.Caloca DR - vk - Proper fix for maintenance extension macros Change 3883087 by Mark.Satterthwaite Allow disabling VSync in windowed mode for macOS 10.13.4+ and above. Change 3883597 by Guillaume.Abadie Collapses full and half res DOF setup passes together. Change 3883702 by Guillaume.Abadie Fixes mac's build. Change 3884747 by Uriel.Doyon Fix for static analysis warning Change 3884975 by Rolando.Caloca DR - vk - Move some platform defines to platform properties Change 3884988 by Rolando.Caloca DR - vk - Make an override per platform Change 3885832 by Rolando.Caloca DR - vk - Cosmetic change to group similar members Change 3885891 by Rolando.Caloca DR - vk - Some _RenderThread functions to avoid stalls Change 3886044 by Rolando.Caloca DR - Added RHI api _RenderThread version of RHICreateTextureReference RHICreateShaderLibrary RHICreateRenderQuery Change 3886560 by Guillaume.Abadie Fixes strong aliasing on TAAU's fast shader permutation. This adds a 6th neighbor sampling, and switch AA_TONE ON as TAA does for its fast shader permutation. Change 3886749 by Guillaume.Abadie Cherry-pick 3884748: Implements DOF's BuildBokehLUT for diaphragm blades simulation. Only used in hybrid scattering for now. Change 3886750 by Guillaume.Abadie Cherry-pick 3885457: Simulates diaphragm blades' curvature on bokeh. Change 3886752 by Rolando.Caloca DR - Fix metal static analysis Change 3887460 by Uriel.Doyon Fixed to more static analysis warning. Change 3888201 by Rolando.Caloca DR - vk - Added r.Vulkan.SubmitAfterEveryEndRenderPass - Fixed bad layout on rendering back buffer Change 3888209 by Rolando.Caloca DR - vk - Unity compile fix Change 3888254 by Rolando.Caloca DR - vk - Fix async texture layout Change 3888893 by Guillaume.Abadie Simulates bokeh in DOF's slight out of focus. Change 3889085 by Guillaume.Abadie Fixes DOF's reduce pass sampling outside viewport. Change 3889924 by Rolando.Caloca DR - vk - Skip seemingly bad validation error Change 3890573 by Daniel.Wright Only initialize FDiaphragmDOFGlobalResource in Feature Level 5 Change 3890590 by Arne.Schober DR - Fix Paper2d crash. When addMesh is called the Vertex and Indexbuffers are nulled out. re-create Dynamic Mesh builder for every Mesh instead. #jira UE-55063 Change 3890638 by Arne.Schober DR - Better fix for Paper2d which honors batching #jira UE-55063 Change 3891099 by Krzysztof.Narkowicz 1.5 texel shadow offset fix inside Manual2x2PCF based on #4485 GitHub pull request #jira UE-54985 #4485 Change 3891234 by Krzysztof.Narkowicz Optimized PCF2x2 and PCF3x3 - merged #4494 GithHub pull request #jira UE-55121 Change 3891407 by Rolando.Caloca DR - vk - Set vendor id earlier Change 3891417 by Rolando.Caloca DR - vk - Missing layout transitions Change 3891718 by Arne.Schober DR - Do not recreate one Frame Resource for dynamic draws #jira UE-55063 Change 3891925 by Yuriy.ODonnell Fix/workaround for inconsistent preprocessor definitions for NVAftermath that result in FD3D11DynamicRHI class layout mismatch. NVAftermath support is now enabled by default for Win64. NVAftermath is declared as a private dependency in D3D11RHI. It does not automatically propagate to modules that explicitly include private RHI headers (OculusHMD, OSVR, OSVRInput). This results in NV_AFTERMATH being defined while compiling RHI module and not defined when compiling other modules, causing memory corruption at runtime. The long-term solution for this and similar issues requires some mechanism for adding transitive module dependencies, so that anyone that depends on D3D11RHI module would automatically also get the NVAftermath. Additionally, private headers should *never* be included directly by external modules. The short-term solution is to explicitly add NVAftermath dependency to OculusHMD, OSVR and OSVRInput. Additionally, NV_AFTERMATH is no longer forced by D3D11RHIPrivate.h when it's not defined. This allows catching this kind of mismatch in the future through a compiler warning (C4668). #jira UE-53065 Change 3891987 by Rolando.Caloca DR - vk - Support for dedicated allocations Change 3892339 by Jian.Ru Fix a crash when tessellation shaders are used in dx12 #jira UE-55127 Change 3892528 by Rolando.Caloca DR - vk - Update Linux headers Change 3892867 by Rolando.Caloca DR - vk - Don't create swapchain if not needed Change 3893416 by Guillaume.Abadie Implements bokeh simmulation on foreground and background gather. Change 3893732 by Chris.Bunner GetRelevance_Internal should use the immediate parent resource, not the base, as some features are overridden by permutations e.g. UsesWorldPositionOffset. #jira UE-53404 Change 3893868 by Guillaume.Abadie Allocates diaphragm DOF's buffers and structered buffer only on supported platforms. Change 3893917 by Chris.Bunner Potential fix for CIS. Change 3893933 by Chris.Bunner Duplicating CL 2647737 as this is the same issue from that JIRA where accessing game-thread data was being prevented. We don't have this check in UMaterial::GetMaterialResource already, but presumably the UMaterialInstance case was never removed as we've not been calling it until now. Change 3894218 by Rolando.Caloca DR - vk - Remove stat counters per draw call, gains 10% CPU on Infiltrator Change 3894579 by Arne.Schober RT - Fix assert not in RenderingThread from Triangle Renderer. #jira UE-55247 Change 3894724 by Rolando.Caloca DR - vk - New API for batching barriers Change 3894909 by Arne.Schober DR - Fix crash in Speedtree wind where Renderdata is unavailable #jira UE-54544 Change 3895414 by Rolando.Caloca DR - Add a configurable threshold for SCWs time outs Change 3896429 by Marcus.Wassmer Allow variable frame-latency delay in FrameGrabber frames. For performance you want at least a 1 frame delay so you don't sync the GPU to the CPU. Change 3896495 by Marcus.Wassmer Set pointer properly Fix CIS Change 3897253 by Guillaume.Abadie Fixes CIS warning in diaphragm DOF Change 3899179 by Guillaume.Abadie Implements background hybrid scatter occlusion for diaphragm DOF. Change 3903654 by Rolando.Caloca DR - vk - Rework dump layer to allow other layers Change 3903766 by Rolando.Caloca DR - vk - More wrappers Change 3904025 by Rolando.Caloca DR - vk - More wrappers Change 3904342 by Rolando.Caloca DR - vk - Track image resources & callstacks Change 3904346 by Rolando.Caloca DR - vk - Copy fix from 4.19 for flickering grass Change 3904510 by Rolando.Caloca DR - vk - Compile fix Change 3904914 by Daniel.Wright [Integrate] Fixed PS4 transitions with forward shading Change 3904916 by Daniel.Wright [Integrate] Fixed PS4 transitions with occlusion queries Change 3905975 by Rolando.Caloca DR - vk - Missing wrappers Change 3905977 by Rolando.Caloca DR - vk - Missed file Change 3907829 by Rolando.Caloca DR - Move depth bounds to the PSO Change 3907832 by Rolando.Caloca DR - vk - Prep for delaying transitions Change 3907834 by Rolando.Caloca DR - vk - Fix for depth stencil issues/validation errors Change 3907967 by Rolando.Caloca DR - vk - Linux compile Change 3908093 by Rolando.Caloca DR - vk - Fix depthstencil layout on descriptors Change 3908393 by Rolando.Caloca DR - vk - Disable dedicated allocation as it causes crashes on Nvidia 700 series Change 3908401 by Rolando.Caloca DR - Do transitions outside render pass Change 3908422 by Rolando.Caloca DR - vk - Fix transition state not getting stored Change 3908735 by Guillaume.Abadie Cherry-pick 3896619: Fixes after TAAU post process material that had wrong default buffer UV. #jira UE-55317 Change 3908736 by Guillaume.Abadie Cherry-pick 3891352: Fixes ensure when visualizing HDR with TAAU. #jira UE-55019 Change 3908753 by Guillaume.Abadie Lets the renderer layout the views in the internal render targets like it prefers. Change 3909119 by Daniel.Wright Fix some static analysis warnings Change 3911943 by Rolando.Caloca DR - vk - Fix for packaging Vulkan projects Change 3912145 by Rolando.Caloca DR - vk - Fix layout on streaming textures Change 3913029 by Rolando.Caloca DR - Fix missing transition Change 3913048 by Rolando.Caloca DR - Fix for hlslcc Change 3913054 by Rolando.Caloca DR - vk - Fix number of layers on barrier Change 3913171 by Rolando.Caloca DR - vk - Fix for decal missing transition Change 3913211 by Rolando.Caloca DR - vk - Add debug name to image tracking Change 3913449 by Rolando.Caloca DR - vk - Restore transition Change 3913466 by Rolando.Caloca DR - Fix Vulkan EngineTest Change 3913537 by Rolando.Caloca DR - vk - Fixes independent samplers & textures (contributed by AMD) Change 3913548 by Rolando.Caloca DR - vk - Warning fix Change 3913691 by Rolando.Caloca DR - vk - Fixes for parallel (wip) Change 3914656 by Rolando.Caloca DR - vk - Fix bug when using separate samplerstates and textures Change 3914730 by Rolando.Caloca DR - vk - Bump version Change 3914764 by Rolando.Caloca DR - vk - Don't crash on exit Change 3915532 by Rolando.Caloca DR - vk - Parallel context fixes Change 3915589 by Rolando.Caloca DR - vk - Hoist and rename transition and layout manager class out of the context Change 3915592 by Rolando.Caloca DR - Fix gpu marker name Change 3917607 by Rolando.Caloca DR - vk - Fix depth bounds on Vulkan Change 3917609 by Rolando.Caloca DR - vk - Fix static analysis Change 3917616 by Rolando.Caloca DR - Fix D3D11 initialization Change 3920569 by Rolando.Caloca DR - vk - Prep for layout mgr refactor Change 3921023 by Rolando.Caloca DR - vk - Dump layer fixes Change 3921623 by Rolando.Caloca DR - vk - Prep refactor for layouts - Dump now shows marker tree Change 3922007 by Rolando.Caloca DR - vk - Fix extra allocation per draw call Change 3922442 by Rolando.Caloca DR - vk - Detect potential issues Change 3922470 by Rolando.Caloca DR - vk - Minor optimization Change 3922482 by Rolando.Caloca DR - vk - More minor optimizations Change 3923158 by Rolando.Caloca DR - Move r.DisableEngineAndAppRegistration out to common RHI and use it on Vulkan Change 3923486 by Rolando.Caloca DR - vk - Minor cpu optimizations Change 3923505 by Rolando.Caloca DR - vk - Use bigger allocations for uniform buffers Change 3923516 by Rolando.Caloca DR - vk - Android compile fix Change 3923557 by Rolando.Caloca DR - vk - Cache descriptorset layouts, refactor duplicated code Change 3923851 by Rolando.Caloca DR - vk - Linux compile fix Change 3924153 by Rolando.Caloca DR - vk - Support for dynamic UBs Change 3924193 by Rolando.Caloca DR - vk - Remove old per pso descriptor pools Change 3924197 by Rolando.Caloca DR - vk - Remove unused global uniform buffer pool Change 3924220 by Rolando.Caloca DR - vk - Wrap some unused classes in their define Change 3924234 by Rolando.Caloca DR - vk - Show ring buffer wrapping messages Change 3924243 by Rolando.Caloca DR - vk - Fix bad dynamic buffer Change 3924902 by Rolando.Caloca DR - vk - Fix crash running infiltrator Change 3925209 by Rolando.Caloca DR - vk - Fix bug with dynamic buffers - Remove old defines Change 3925300 by Rolando.Caloca DR - vk - Allow packed uniforms as dynamic UBs (with r.Vulkan.DynamicGlobalUBs) Change 3925627 by Rolando.Caloca DR - vk - Move DynamicOffsets into the pipeline state Change 3925834 by Rolando.Caloca DR - vk - Cache per stage information Change 3925835 by Daniel.Wright Fixed DisplayName for UParticleModuleCollisionGPU Change 3925897 by Rolando.Caloca DR - vk - Split update descriptors loop Change 3926488 by Rolando.Caloca DR - vk - 16MB for ring buffer on desktop, 8 MB for mobile Change 3928168 by Guillaume.Abadie Cherry-pick 3917219: Implements r.DOF.RecombineQuality Change 3928173 by Guillaume.Abadie Cherry-pick 3927888: Enables r.DOF.HybridScatter.BackgroundCompositing and r.DOF.HybridScatter.ForegroundCompositing to work when both enabled. Change 3928216 by Rolando.Caloca DR - vk - Fix Android - Fix static analysis Change 3929119 by Rolando.Caloca DR - vk - Rename some classes for clarity - Fix read-only cvar Change 3929151 by Rolando.Caloca DR - vk - Rename class Change 3930046 by Rolando.Caloca DR - Temp fix Vulkan flickering grass Change 3930148 by Rolando.Caloca DR - vk - Only update dirty descriptors - Use dynamic descriptors for packed global uniform buffers Change 3930998 by Guillaume.Abadie Packs shader permutation in different XGE submissions. Change 3931079 by Rolando.Caloca DR - vk - Fixes for Android and non-real ubs platforms Change 3931942 by Krzysztof.Narkowicz Depth rendering - When EarlyZPassMode is set to DDM_AllOccluders, dynamic objects need also to test bUseAsOccluder just like static ones #jira none Change 3932819 by Daniel.Wright [Integrate] Scene Textures uniform buffer * Base Pass Uniform Buffer now contains a Scene Textures uniform buffer. Previously the translucent base pass had to check ~40 loose scene texture parameters every draw. * FMeshMaterialShader's must now bind PassUniformBuffer and supply a valid pass uniform buffer. For most passes this is just FSceneTextureUniformParameters. * FRendererModule::DrawTileMesh can now cleanly set dummy scene texture resources, just by configuring how the pass uniform buffer is created. * Moved scene texture shader functions out of Common, into SceneTexturesCommon which must be manually included by shaders that want to use them * Separate Mobile Scene Textures uniform buffer to silo the platform complexities Moved DBuffer inputs out of FDeferredPixelShaderParameters and into FOpaqueBasePassUniformParameters Removed per-frame material uniform expressions. GameTime material node with period is now implemented with an fmod in the shader, without the use of MaterialFloat, so that it will happen at full precision. * Per-frame expressions were used when the GameTime material node had a period, to do the fmod on the CPU where 32 bit precision is guaranteed, for mobile GPU's where pixel shader precision is sometimes less than 32fp. Moved forward shading data into the Base Pass Uniform Buffer Removed instanced stereo support for the light cull grid - will have to be reimplemented without changing SRV's per draw Base pass sets View Uniform Buffer from DrawRenderState instead of choosing which one to set per-draw Fixed padding in nested uniform buffer structs Skip SRV members on Feature Level SM4 and below Change 3932964 by Rolando.Caloca DR - vk - Renderdoc on Android Change 3933095 by Daniel.Wright Moved FSceneTextureUniformParameters out of the opaque base pass uniform buffer. * Base Pass shaders now enable SCENE_TEXTURES_DISABLED when compiling for a material of any domain other than MD_Surface. These are used when rendering thumbnails of a material in a different domain, which could be opaque, but the opaque base pass drawing policy does not bind a scene textures uniform buffer, so the shader must not bind it. * Opaque materials can no longer use EyeAdaptation. Change 3933096 by Daniel.Wright Better d3d11 assert message when a uniform buffer was not set by the renderer Change 3933176 by Rolando.Caloca DR - vk - Prefer mailbox if available Change 3933271 by Ryan.Vance #jira UE-55936 Fixed missing referenced uniform bindings on AR pass-through camera shaders. Change 3934000 by Guillaume.Abadie Fixes Win32 build in ShaderCompilerXGE.cpp Change 3934299 by Guillaume.Abadie Fixes a bug in DOF's reduce operator that was casusing color leaking between background and foreground. Change 3934699 by Daniel.Wright Added bAffectDistanceFieldLighting to landscape Change 3935190 by Daniel.Wright Forward Light Grid SRV's use StructuredBuffer on Metal, instead of 'invariant Buffer', which throws off RemoveUniformBuffersFromSource parsing Change 3935606 by Daniel.Wright Removed LightmapPolicy::Set which was needed for vertex lightmaps Renamed FVertexFactory::Set to SetStreams to make it findable Change 3936510 by Rolando.Caloca DR - vk - Update glslangValidator.exe to 1.0.65.1 for dumped debug SPIRV shaders Change 3936545 by Richard.Wallis Clone of CL's (3925763, 3925430, 3925424, 3925385, 3925278) Mark Satt's Xcode fixes from task stream //Tasks/UE4/Dev-UERNDR-354-mtlpp/ Plus XCode 9.2 compile fix in ApplicationPlatformCompilerPreSetup.h for -Wunused-lambda-capture. Change 3938061 by Daniel.Wright Vulkan: Added support for SRV's in Uniform Buffers Change 3938123 by Daniel.Wright Vulkan: Slightly better assert for null resources in uniform buffer Change 3939197 by Rolando.Caloca DR - vk - Disable custom memory mgmt Change 3939677 by Rolando.Caloca DR - vk - Fix static analysis warning Change 3939809 by Rolando.Caloca DR - vk - Fixes for async compute Change 3939875 by Rolando.Caloca DR - vk - Support for -vktrace Change 3939977 by Rolando.Caloca DR - vk - Skip a condition during gather UBs - Set up efficient compute async var - Fix validation cmd line Change 3939982 by Rolando.Caloca DR - vk - Revert mipchain Change 3939984 by Rolando.Caloca DR - vk - Remove unnecessary asserts Change 3940082 by Rolando.Caloca DR - vk - Custom mem mgr Change 3940475 by Rolando.Caloca DR - vk - Fix DFAO (indirect draw offset) Change 3940555 by Rolando.Caloca DR - vk - Minor fixes Change 3940675 by Rolando.Caloca DR - vk - Fix indirect type mismatch Change 3941111 by Rolando.Caloca DR - Renderpass bGeneratingMips Change 3941847 by Daniel.Wright Fixed Volumetric Lightmaps on Static geometry only working if the geometry had been built with Surface Lightmaps before Change 3941978 by Rolando.Caloca DR - vk - Minor fixes for presenting on compute queue Change 3942074 by Rolando.Caloca DR - vk - Remove some RHI stalls - Fixed swap chain stat Change 3943946 by Daniel.Wright Fixed Texcoord0 on Volume materials on a particle sprite, including SubUV particles. Change 3944065 by Daniel.Wright Fixed SceneDepth collision getting broken on GPU particles when a scene capture is rendering Change 3944158 by Daniel.Wright Fixed ViewUniformShaderParameters accessing GEngine->PreIntegratedSkinBRDFTexture too early during slate loading screen Change 3944865 by Rolando.Caloca DR - vk - Prep for render passes Change 3945196 by Rolando.Caloca DR - Move render pass validate to cpp Change 3945202 by Rolando.Caloca DR - vk - Some fixes for using real render passes Change 3945357 by Rolando.Caloca DR - Fix bad condition Change 3946295 by Yuriy.ODonnell Added a sentinel member to FLightMap, which is initialized in the ctor and reset in the dtor. Sentinel is then checked in FLightCacheInterface::GetLightMapInteraction(). This aims to shed some more light on a hard-to-repro crash, which is suspected to be a use-after-free bug: http://crashreporter/Buggs/Show/1785593 Change 3946407 by Rolando.Caloca DR - vk - Prep for refactor Change 3946648 by Rolando.Caloca DR - vk - Fixes for async compute (wip) Change 3947299 by Rolando.Caloca DR - vk - FIx static analysis Change 3948434 by Rolando.Caloca DR - vk - Fix exiting with parallel Change 3948928 by Rolando.Caloca DR - vk - Fix enabling draw markers for tools Change 3949021 by Rolando.Caloca DR - vk - Buffer tracking layer Change 3949602 by Rolando.Caloca DR - vk - static analysis fix Change 3949757 by Rolando.Caloca DR - vk - Remove bogus parameter Change 3949810 by Rolando.Caloca DR - vk - Move waits for cmd buffer Change 3950270 by Guillaume.Abadie Implements dedicated gather pass for foreground hole filling to avoid being VGPR bound in foreground gather pass, but still being hable to amend foreground. Change 3950272 by Rolando.Caloca DR - vk - Minor refactor for semaphores Change 3950279 by Guillaume.Abadie Oups... fixes build Change 3950298 by Rolando.Caloca DR - vk - Gather wait semaphores in the cmd buffers Change 3950371 by Rolando.Caloca DR - vk - fixes for async compute Change 3950597 by Rolando.Caloca DR - vk - Fix for clip distance (fixes planar reflections) Change 3951075 by Rolando.Caloca DR - vk - Fix for async compute Change 3952524 by Guillaume.Abadie Some DOF enum refactoring. Change 3955016 by Daniel.Wright Fixed BuiltData package getting renamed into the map package during a content browser folder move, causing a redirector to be incorrectly placed in the map package Change 3955668 by Guillaume.Abadie Fixes a bug where full res coc buffer was computed even if not doing slight out of focus. Change 3956722 by Guillaume.Abadie Fixes a bug where r.DOF.MaximalForegroundBlurringRadius was screen percentage dependent. Change 3959212 by Guillaume.Abadie Prefixes all DOF's shaders files with DOF keyword. Change 3959705 by Guillaume.Abadie Optimises the DOF setup pass outputing half res and full res with LDS downsample. Change 3959941 by Guillaume.Abadie Halfs DOF's hybrid scatter compilation by using a unique downsampling for both foreground and background, instead of 2 reduce passes. Change 3962273 by Rolando.Caloca DR - Fix typos #jira UE-56317 PR #4586 Change 3962615 by Rolando.Caloca DR - vk - Compile fix Change 3962949 by Rolando.Caloca DR - Fix DOFDownsample extension Change 3962993 by Guillaume.Abadie Back out changelist 3962949 Change 3963016 by Guillaume.Abadie Adds missing DOFDownsample.usf Change 3963041 by Rolando.Caloca DR - vk - Misc changes to help integrate Change 3964293 by Guillaume.Abadie Fixes DOF's setup pass reading outside of the viewport. Change 3964475 by Guillaume.Abadie Collapses DOF's hybrid scatter compilation passes into reduce passes. Change 3964883 by Daniel.Wright Fixed 3d texture in uniform buffer on unsupporting RHI Change 3964897 by Rolando.Caloca DR - Compile fixes Change 3964914 by Guillaume.Abadie Fixes a bug on r.DOF.RecombineQuality=0 Change 3965153 by Guillaume.Abadie Fixes compile warning in D3D12Commands.cpp. Change 3965814 by Rolando.Caloca DR - Prep for integration conflict resolve Change 3965899 by Rolando.Caloca DR - Fix odd linkage issue Change 3966072 by Rolando.Caloca DR - More prep for merge Change 3966163 by Rolando.Caloca DR - Merge prep Change 3966844 by Guillaume.Abadie Packs multiple DOF scattered bokeh per instance and uses PT_RectList in DOF for platforms that can. Change 3967116 by Rolando.Caloca DR - Compile fixes for integration Change 3967273 by Rolando.Caloca DR - Use same path for mip generation Change 3967277 by Rolando.Caloca DR - vk - Fix mips on cubemaps Change 3967693 by Rolando.Caloca DR - Copying //UE4/Dev-Main@3912313 to //UE4-DevRendering, missing shaders Change 3967851 by Rolando.Caloca DR - Copying //UE4/Dev-Main@3912313 to //UE4-DevRendering, Engine 2/2 Change 3968083 by Rolando.Caloca DR - Integration compile fixes Change 3968240 by Rolando.Caloca DR - Shader compile fixes for integration Change 3968270 by Rolando.Caloca DR - Fix for missing hash calculation Change 3969426 by Rolando.Caloca DR - vk - Fix warning Change 3969869 by Krzysztof.Narkowicz Back out changelist 3946295 - UE-54537 is fixed, so no need for this debug sentinel. #jira none Change 3969944 by Rolando.Caloca DR - Warning fix Change 3970020 by Rolando.Caloca DR - Bump after integration Change 3970052 by Rolando.Caloca DR - Fix for mobile Change 3970236 by Daniel.Wright Causing decal shader to recompile to fix a merge bug Change 3970270 by Daniel.Wright Bump shader version from merge Change 3970339 by Olaf.Piesche Replace series of locks/unlocks with a single one for curve injection #tests QAGame Change 3970390 by Rolando.Caloca DR - Rename FSceneTextureUniformParameters to FSceneTexturesUniformParameters - Remove duplicate method for occlusion queries Change 3970523 by Rolando.Caloca DR - Fix serialization of shaders Change 3970533 by Arne.Schober DR - fix for removing the Speed tree wind when the scene gets deleted. The original enque rendercommand requeues the element onto the renderthread although the call already came from the Renderthread and the scene can get lost in between. #jira UE-56322 Change 3971160 by Guillaume.Abadie Fixes CompositeEditorPrimtive pass and SelectionOutline pass for VR editor to work with TAAU. Change 3971516 by Guillaume.Abadie Cherry-pick 3912629: Fixes SSR that was computing vigneting according to PrevScreen that could let some outside viewport samples going through when rotating the camera. #jira UE-55353 Change 3971594 by Krzysztof.Narkowicz Fixed assert inside BindLightMapVertexBuffer. FSplineMeshSceneProxy was calling BindLightMapVertexBuffer for invalid (still not generated) lightmap UV channel after mesh reimport. Simplified assert, as at the moment almost all of the high callsites already clamp lightmap uv channel. #jira UE-56321 Change 3971622 by Krzysztof.Narkowicz Fixed crash inside Indirect Lighting Cache. Data (reflection captures and lightmap) generation calls ULevel::GetOrCreateMapBuildData(), which can destroy lightmap data if level has legacy data. Last Lightmap generation step recreates this data, but if user cancels lightmap generation - it won't do that. #jira UE-56171 Change 3974788 by Rolando.Caloca DR - Remove GSupportsGenerateMips Change 3974789 by Rolando.Caloca DR - Remove bogus function Change 3974986 by Rolando.Caloca DR - vk - Tracking fixes Change 3974989 by Rolando.Caloca DR - vk - Don't submit dummy barriers Change 3975075 by Olaf.Piesche Update for particle curve injection improvement, fixing ES2 problems #tests QAGame tm-shadermodels, various color curve tests in-editor Change 3975957 by Uriel.Doyon Fixed invalid max texture resolution when using the bake material tools. Change 3978471 by Daniel.Wright New cvar r.SkylightUpdateEveryFrame Change 3978779 by Rolando.Caloca DR - Accessor for texture sizes Change 3978797 by Rolando.Caloca DR - Clean up RHI CopyTexture API Change 3978832 by Rolando.Caloca DR - vk - Workaround for RenderDoc crashing due to Descriptor Pool reset Change 3978836 by Rolando.Caloca DR - vk - Remove generate mips Change 3979201 by Rolando.Caloca DR - vk - RHI CopyTexture. Uses general layout for generating mips Change 3979204 by Rolando.Caloca DR - Use render passes and CopyTexture to generate mips Change 3979592 by Rolando.Caloca DR - Warning fix Change 3980855 by Krzysztof.Narkowicz Optimize bounding sphere radius after non-uniform scale by using bounding box extent. #jira UE-56227 Change 3981065 by Rolando.Caloca DR - vk - Fix bad layout #jira UE-56238 Change 3981346 by Rolando.Caloca DR - Copy from 3707257 Support for not flushing compute jobs (r.D3D11.UAVFlushNV) Change 3981347 by Rolando.Caloca DR - Copy from 3707257 Don't flush between morph dispatched Change 3981932 by Mark.Satterthwaite Generate the shader hash and function name when a Metal shader error needs to be reported so that even without shader code we get something to go on. Change 3982442 by Rolando.Caloca DR - Fix warning Change 3982652 by Rolando.Caloca DR - vk - Signal semaphore cleanup Change 3983917 by Richard.Wallis Clone of CL 3974146 converted for mtlpp along with extra mtlpp usage suggestions by Mark Satt: Fix for black flickering on first paint with weighted material landscape on Mac. When using AsyncCopyFromBufferToTexture in Metal we put the blit operation on the prologue encoder - however after a draw call using that resource the copy operation should happen after on the current encoder, this keeps the correct order of operations. Added Bool return from various Asnyc renderpass resource requests so caller can decide correct further action. Updated to include the other async functions. Change 3984409 by Guillaume.Abadie Attempts to make static analysis happy again. Change 3984435 by Nick.Bullard Checking in Performance Test level provided to us by Tor Frick based on UE-44841. This has been utilized for checking issues against Aftermath performance impact. The Map includes 2 Level Book marks, most testing has been done against Bookmark 1 view, in fullscreen, in game mode Change 3985087 by Mark.Satterthwaite Make sure that the particle scratch buffer is large enough to hold all the data for the curve texture we are rendering to, otherwise a full set of curves will start scribbling memory after 64Kb (the curve texture is 256Kb of data - 512x512x4 as sizeof(RGBAUInt8) == 4). This happens in ElementalDemo. Change 3985201 by Rolando.Caloca DR - Fix bad CopyTexture Change 3985258 by Mark.Satterthwaite Try and detect orientation changes so that we don't blow-up on iOS due to a huge mismatch between the drawable texture for the display and the scene's depth-stencil target. I can't just fiddle with the depth-stencil texture itself without running the risk of obliterating in-use data and really we shouldn't permit such a mismatch anyway but it is fallout from 3620990. #jira UE-55756 Change 3986449 by Rolando.Caloca DR - vk - Update & consolidate Vulkan headers to 1.1.70.1 Consolidate SDK into one Change 3986571 by Guillaume.Abadie Makes PVS-Studio happy again in DOF. Change 3987039 by Yuriy.ODonnell Initial implementation of tracing profiler to show CPU and multiple GPUs on the same timeline. Currently only supported on DX12 platforms. Use `TracingProfiler frames=N` console command to trigger a capture of the next N frames. Trace is saved to disk as a JSON file into `Saved/Profiling/Traces` directory. Trace file uses Google Tracing format and can be visualized in Chrome built-in profiler (chrome://tracing). `r.GPUStatsChildTimesIncluded=1` CVar makes timing scopes hierarchical. `TracingProfiler.BufferSize=N` CVar controls the size of the tracing buffer, which may need to be increased for long traces (default is 65k events). Only can be set at startup. Change 3987074 by Yuriy.ODonnell Implemented timestamp calibration on DX11. Calibration is only performed when tracing profiler session starts. Change 3987160 by Yuriy.ODonnell Added thread naming and ordering to the tracing profiler output Change 3987331 by Mark.Satterthwaite Remove the Nvidia hack to retain resource references in command-buffers for UE-46604 as the mtlpp refactor provides stronger resource lifetime guarantees. #jira UE-46604 Change 3987754 by Mark.Satterthwaite Fix MetalRHI memory reporting in non-default path. PR #4568 Change 3988184 by Arciel.Rekman Linux: Fix editor OpenGL performance (UE-55960). - GetCurrentThreadId() calls became much more frequent with the OpenGL RHIT refactor. - We used to only cache that value in monolithic builds, because having per-thread static variables in dynamic libraries is risky due to OS limits. - This change adds dynamically-managed per-thread cache for non-monolithic builds. #jira UE-55960 Change 3988394 by Rolando.Caloca DR - vk - Improve memory mgmt - Use 256MB pages for Device heap (or 1/8th if less). - Remove texture allocations not going through resource manager Change 3988405 by Marcin.Undak Fix VulkanQuery crash on exit #codereview rolando.caloca #codereview arciel.rekman #rb arciel.rekman Change 3988567 by Rolando.Caloca DR - vk - Support for packed global UBs on pci aperture heap Change 3988668 by Rolando.Caloca DR - vk - Remove old comments Change 3988956 by Marcin.Undak RecordPerformance: added option to skip building/cooking before tests #rb none #codereview arciel.rekman Change 3989161 by Yuriy.ODonnell Static analysis error fix Change 3989196 by Guillaume.Abadie Fixes a crash in light shaft's TAA pass. #jira UE-57366 Change 3989207 by Yuriy.ODonnell Refactored FRealtimeGPUProfilerFrame to avoid splitting profile events when calculating exclusive times of scopes. This allows tracing profiler to retain the hierarchical view of the data, while keeping CSV and GPU Stat system behavior intact. Change 3989469 by Rolando.Caloca DR - vk - Fix for bad index; fix for bad transition Change 3989772 by Yuriy.ODonnell Implemented timestamp calibration on Vulkan Change 3990040 by Marcus.Wassmer Aftermath enabled by default. Removed unnecessary warning for other vendors Change 3990064 by Mark.Satterthwaite Ensure that packed globals are reuploaded when the command-encoder is restarted - don't simply invalidate the existing parameters. This properly handles cases where a single logical render-pass is broken into multiple command-encoders and/or command-buffers - otherwise all shaders must reset all parameters each time. When we move between frames we *do* want to perform a full state reset though as previous frame globals are treated as invalid. Change 3990080 by Mark.Satterthwaite Change the way we invalidate the visibility buffer between command-buffers and command-encoders so that on iOS you can reuse the same buffer within the same command-buffer, but not across more than one. The code provides an exception to this rule when running under the MetalRHI validation tools which can break each draw call into its own buffer. Change 3990084 by Mark.Satterthwaite Get MetalStatistics compiling again. Change 3990381 by Arciel.Rekman Bring back D3D12 in RecordPerformance. Change 3991113 by Rolando.Caloca DR - Fix crash on RHI thread on mobile preview - Check RHI objects are not null in the PSO initializer Change 3991191 by Ryan.Vance #jira UE-55952 Reimplemented instanced stereo for forward lighting cull grid after the srv/ub clean up. Change 3991343 by Rolando.Caloca DR - Copy from 3911492 UE4 - Disabled parallel mobile bass pass by default. This is experiemental and not known to be useful on any mobile platform. Change 3991375 by Mark.Satterthwaite Proper copyright assignment in the mtlpp debugger header. Change 3993151 by Daniel.Wright Fix RTDF resource transition found by Rolando Change 3993818 by Rolando.Caloca DR - Missed file Change 3993923 by Krzysztof.Narkowicz Fixed crashes inside RemoveSpeedTreeWind() and RemoveSpeedTreeWind_RenderThread(). FStaticMeshComponentRecreateRenderStateContext didn't flush deferred render updates causing stale RenderData to be left: 1. Thumbnail manager called SetStaticMesh(nullptr), which added StaticMeshComponent to deferred render updates. 2. UStaticMesh::Build called FStaticMeshComponentRecreateRenderStateContext and destroyed DenderData, but didn't touch Thumbnail's manager StaticMeshComponent as it was nullptr. 3. This resulted in a StaticMeshComponent with stale RenderData pointer. #jira UE-54544 Change 3994033 by Rolando.Caloca DR - vk - Reworked layers & extensions, as we were not doing it properly - Remove -vulkanstandardvalidation and -novulkanstandardvalidation as they are not needed anymore Change 3994275 by Mark.Satterthwaite Change to linking against mtlpp via AddEngineThirdPartyPrivateStaticDependencies and marking its header with THIRD_PARTY_* macros in the vain hope that might convince the remote compilation code to distribute the module to the remote machine when building MetalRHI. #jira UE-57507 Change 3994365 by Mark.Satterthwaite Pilfer some code from the old MetalHeap file to handle calculating texture memory size on older macOS and iOS builds when running with stats or LLM enabled. #jira UE-57513 Change 3994382 by Rolando.Caloca DR - vk - Some missing locks during image tracking Change 3994422 by Rolando.Caloca DR - vk - Remove bogus shader format Change 3995530 by Rolando.Caloca DR - vk - Fix for crash when validation is enabled Change 3995531 by Rolando.Caloca DR - vk - Fix static analysis Change 3995532 by Rolando.Caloca DR - vk - Added support for r.Vulkan.SaveValidationCache Change 3995610 by Uriel.Doyon Texture Streaming Changes and Fixes: - Using the small FOV items (like scopes) now only affect visible primitives (through "r.Streaming.MaxHiddenPrimitiveViewBoost"). - Static components added after the level is registered in the streaming manager are now handled correctly (fixes the low quality on the chests) - Dynamic components do not need to register to the streaming manager anymore. - Optimized dynamic component management by removing duplicate entries in the update list. - Added a pregarbage collect pass to the dynamic component management to optimize GC handling. - Added a budget reset logic whenever the scene requirements change significantly. - PIE worlds now have correct visibility information. - Fixed possible invalid memory access when processing the streaming manager slave views. - Refactored the incremental level texture data build to prevent new components from being unhandled. - Removed StreamingManager callbacks for NotifyActorSpawned() and NotifyPrimitiveAttached() - Added a StreamingManager callback NotifyPrimitiveUpdated(), to be used whenever a primitive streaming state must be updated. #jira none Change 3995908 by Arciel.Rekman Fix compile errors when using new Vulkan queries. Change 3995990 by Arciel.Rekman More compile fixes to new Vulkan queries. - MSVC did not catch this, clang did. Change 3996101 by Rolando.Caloca DR - vk - Win32 compile fix Change 3996323 by Mark.Satterthwaite Use the right include path to export the mtlpp headers. #jira UE-57507 Change 3996392 by Arciel.Rekman Vulkan: fix crash on start when using new queries. - CommandBufferManager was not yet set at that point and the code in queries relied on it. Change 3996585 by Rolando.Caloca DR - Slight improvement to GL being black, but just a temporary 'workaround' as it's not correct. Change 3998806 by Arciel.Rekman Fix Linux build (UE-57602). #jira UE-57602 Change 3998866 by Arciel.Rekman SubwaySequencer: fix old shader platform name. Change 3998947 by Mark.Satterthwaite Silence deprecation warnings in CEF on macOS now that we've moved to 10.12 as the minimum. #jira UE-57577 Change 3998951 by Mark.Satterthwaite Fix last of the deprecation errors that I am aware of for macOS 10.12. #jira UE-57581 Change 3998984 by Mark.Satterthwaite Build mtlpp for iOS 9.0 not 9.3. #jira UE-57586 Change 3999065 by Rolando.Caloca DR - vk - Make sure we use version 1.0.0 #jira UE-57521 Change 3999071 by Arne.Schober DR - [UE-55433, UE-57361] Hack SNORM support in OpenGL by re-interpreting UNORM. Underlying data is always SNORM. #jira UE-55433, UE-57361 Change 3999494 by Rolando.Caloca DR - Enable r.UnbindResourcesBetweenDrawsInDX11 in debug - Clear compute resources when r.UnbindResourcesBetweenDrawsInDX11 is enabled Change 4000197 by Krzysztof.Narkowicz Mesh simplifier - normalize TexCoordWeights using min/max TexCoord range. This fixes precision issues for very big TexCoord values and allows to optimize for all TexCoord channels when channels have values of different magnitudes (e.g. non standard TexCoord data). #jira UE-54935 Change 4000305 by Yuriy.ODonnell Suppress PVS Studio warning V547 (Expression is always true) related to Aftermath Reported issue to PVS team and to NVIDIA. Confirmed false positive, fix coming in future PVS version (v6.24). #jira UE-57579 Change 4000853 by Arciel.Rekman Linux: fix not calling CrashReportClient (UE-57678). #jira UE-57678 Change 4001504 by Rolando.Caloca DR - vk - Fix transition Change 4002460 by Krzysztof.Narkowicz Toggle for contant shadow length in word space Exposed contact shadows to Blueprints #jira none Change 4002608 by Rolando.Caloca DR - vk - Fix static analysis - Fix potential debug image tracking crash - Comment out unused methods Change 4002615 by Rolando.Caloca DR - vk - Allow r.Vulkan.WaitForIdleOnSubmit to be set at startup (e.g. in ConsoleVariables.ini) Previously, if your map needed to UpdateSkyCaptureContents on startup, an ensure would fail if GWaitForIdleOnSubmit was set. PrepareForCPURead needs to wait for the command buffer to finish before trying to read the results back, but the wait has already happened when r.Vulkan.WaitForIdleOnSubmit is set. Trying to wait again correctly complains that the command buffer is not in the correct state. So, skip the WaitForCmdBuffer call when r.Vulkan.WaitForIdleOnSubmit is set. Change 4002640 by Rolando.Caloca DR - vk - Missing support for CVarDefaultBackBufferPixelFormat Change 4002919 by Guillaume.Abadie Implements DOF's temporal upsampling pass for better dynamic resolution stability. Change 4002984 by Guillaume.Abadie Integrates Sebastian Aaltonen's ALU optimisations for TAAU. Change 4003112 by Olaf.Piesche Fir for TBB stall (resulting in severe hitches and hangs in the editor with stats active); tested multiple scenarios and encountered no hitches. #tests QAGame PerformanceTest and RenderTest map with various stats on and off Change 4003159 by Mark.Satterthwaite Undo parts of changelist 3970553 - the ref-counted pointer approach to returning textures to the pool is not working as expected so we'll remove that. It'll be faster on the CPU without it and everything works thanks to the changes this CL made to the way textures were released. #jira UE-57538 Change 4003287 by zachary.wilson Adding reflection capture content to TM-LightingScenarios Change 4003395 by Arne.Schober DR - Fix unitzialised value when clicking Go To in the editor #jira UE-57048 Change 4003425 by Rolando.Caloca DR - vk - Fix for new occlusion queries Change 4003530 by Arne.Schober DR - Disable GPU Benchmark in headless configurations #jira UE-57673 Change 4003717 by Rolando.Caloca DR - vk - Fix for depth not store, stencil store Change 4003719 by Rolando.Caloca DR - Minor switch to render pass Change 4003720 by Mark.Satterthwaite Don't suballocate private memory buffers on Vega and only Vega as there is something wrong with the blits in those cases but I can't capture a GPU trace to find out what right now (the driver is broken) - could be a bug in my code but this works on Polaris and Nvidia so it will need to be filed as a radar for AMD. Remove the FMetalBufferChunk from FMetalBuffer and simply store a pointer to the owning Heap/Magazine allocator. The FMetalResourceHeap now calls a new Release function to return the buffer to the allocator which will be faster on the CPU. #jira UE-57659 Change 4003854 by Mark.Satterthwaite Undo parts of 3990064 and try a different approach to get the uniforms to upload and remain available in the right places. As the original bug has been lost to time we should keep an eye out for missing buffer bindings by running under the Metal validation layer periodically. #jira UE-57576 Change 4004709 by Rolando.Caloca DR - Support for D3D 11, 12 & Vulkan for UAVs off Index Buffers Change 4005149 by Guillaume.Abadie Adds shader permutation to avoid clamping input buffer UV in DOF's gather pass. Change 4005284 by Uriel.Doyon Resaved volume texture assets with proper engine version. #jira UE-57534 Change 4005286 by Guillaume.Abadie Reduces constant setup in DOF's gather pass. Change 4005359 by Rolando.Caloca DR - vk - Fix annoying warning Change 4005363 by Rolando.Caloca DR - Fix android not finding vulkan shaders Change 4005457 by Rolando.Caloca DR - vk - Fix swapchain crash Change 4005473 by Patrick.Kelly UE-57135: Editor crash if set Reflection Capture Resolution to be 64 and New a Default level Codde by Daniel Tested by Patrick Change 4005474 by Rolando.Caloca DR - vk - Remove glsl code from shaders. Packaged QAGame goes from 176MB to 162MB Change 4005759 by Krzysztof.Narkowicz Fixed a bug, where reflection capture build is called, even though we are in mobile preview mode. #jira UE-57743 Change 4005774 by Mark.Satterthwaite Update the wave intrinsics to avoid implicit bool->uint conversion that Apple don't like. #jira UE-57750 Change 4005974 by Mark.Satterthwaite Don't use cubemap array types on iOS Metal as they aren't available on all devices and we need to maintain backward compatibiliy for years to come. #jira UE-57083 Change 4006056 by Mark.Satterthwaite Remove the use of the PrimitiveType argument from Metal draw calls. #jira UE-57822 Change 4006139 by Mark.Satterthwaite - Move the render-pass functions into the MetalRHI implementation for later alteration. - Implement Index buffer UAVs for Metal - makes them more like vertex-buffers so this is one more step on the road to a unified buffer base-class implementation. Change 4006215 by Mark.Satterthwaite Metal's begin & end render/compute pass API implementation will take some time, but for now make it not depend on the parent stub implementation. Change 4006394 by Mark.Satterthwaite In lieu of a real instruction count just use the number of lines in the "Main" function of the shader as the instruction count for Metal. #jira UE-57551 Change 4006493 by Mark.Satterthwaite MetalRHI can currently support 4-component formats for Buffer UAVs - this might need some thought in the future as the API evolves but we might as well take advantage while we can. Change 4006495 by Daniel.Wright Integrate from Refactor branch * New FMaterialRenderProxy function GetMaterialWithFallback which provides both the FMaterialRenderProxy and FMaterial. Needed when falling back to default material, so that proxy and material resource match. * Local vertex factory uniform buffer Change 4006851 by Brian.Karis Fix for joined charts forming an L to inflate both axii. Thanks to Jess Kube of The Coalition. Change 4006852 by Brian.Karis Fix for hard coded reflection capture cube map size. Should fix light static light aliasing in captures Change 4006918 by Brian.Karis New ByteBuffer functionality. Memcpy and scatter upload. Can implement GPU side TArray reflection. Not yet used by checked in code. WIP optimization. Change 4007246 by Guillaume.Abadie Creates lower quality permutation for DOF's gathering pass, without Coc based weighting of the samples, and lower number of gathering ring for fast accumulator. Change 4007291 by Guillaume.Abadie Exposes more DOF scalability settings. Change 4007328 by Guillaume.Abadie Optimises DOF's half res only setup pass using gather4 Change 4007627 by Richard.Wallis Fix for when Magic Mouse cannot zoom in World Composition editor. Missing default SNodePanel::OnMouseMove behaviour. Tested using a classic 2xbutton + wheel mouse and a Mac MagicMouse. #jira UE-57030 Change 4007682 by Richard.Wallis No video when playing HLS streaming video on Mac. 2 Issues, FPS was zero making duration for video sample buffer nonsense and Video Track dimensions were going to zero on the AVAsset once fully initialized when playing HSL streams. Now cache relevant details and handle zero frame rate. Notes: - Caching the frame rate is not as important as we could look it up each time and fix for zero - ignoring that at the moment. - Assume we DO NOT want the FrameSize to be the last fetched video frame size from the AvfMediaVideoSampler as I think that is the video quality for streaming video and not the media frame size. - Renamed a variable in the AvfMediaVideoSample - was called FrameRate but it was the FrameDuration by that point. #jira UE-56734 Change 4007731 by Rolando.Caloca DR - Disable byte buffers on non-hlsl based platforms #jira UE-57851 Change 4007741 by Rolando.Caloca DR - Disable byte buffers on hlslcc platforms Change 4007782 by Mark.Satterthwaite Force Metal shaders, including the stdlib, to recompile. Change 4007918 by Rolando.Caloca DR - vk - Some static asserts Change 4008404 by Arciel.Rekman Do not crash on incompatible Vulkan drivers (UE-57521). #jira UE-57521 Change 4008442 by Daniel.Wright Better comments on ERHIFeatureLevel expectations Change 4008494 by Arne.Schober DR - moved bDeletedThroughDeferredCleanup before begincleanup to catch cases where the reference is added twice to the array. also removed finishcleanup as all they ever did was deleting the pointer anyway, and it sould be adfded if such functionallity is ever required fom outside of the regular destructor. #jira UE-57754 Change 4008730 by Mark.Satterthwaite After the most recent changes to handling uniform buffer dirty bits in MetalRHI we should guard against attempts to set an unbound uniform buffer. #jira UE-57870 Change 4008949 by Brian.Karis Fix compile warning Change 4008951 by Brian.Karis Added LTC LUT textures Change 4009326 by Guillaume.Abadie Compiles out DOF's gathering bokeh simulation on platform other than desktop. Change 4009380 by Krzysztof.Narkowicz Moved area light code before the contact shadows, so contact shadows use representative light's direction. Merged all contact shadows shader code. Contact shadows keep constant screen space length independent of FoV settings. Contact shadows for translucents. Contact shadows for eye. Change 4009555 by Guillaume.Abadie Splits DOFCocTile.usf in two. Change 4009999 by Yuriy.ODonnell MallocStomp can now be enabled on certain platforms using '-stompmalloc' command line argument. Previously it was necessary to modify MallocaStomp.h and re-compile the engine. Currently supported platforms: Win64, Mac, Linux. Replaced hard-coded page size with FPlatformMemory::GetConstants().PageSize. Change 4010288 by Rolando.Caloca DR - vk - Fix for vertex streams Change 4010289 by Krzysztof.Narkowicz D3D12 - fixed depth bounds bug, where depth bounds wasn't properly set to [0;1] after disabling. #jira UE-57510 Change 4010297 by Rolando.Caloca DR - vk - Remove some functions for android Change 4010315 by Rolando.Caloca DR - vk - Remove create info macro Change 4010451 by Rolando.Caloca DR - vk - Reuse samplers - Infiltrator goes from 5759 to 24 samplers! Change 4010627 by Rolando.Caloca DR - vk - Fix missing values for tracking swapchain validation Change 4011924 by Guillaume.Abadie Implements tile based early return optimisation on DOF's postfiltering method. Change 4011941 by Guillaume.Abadie Shaves some ALU in DOF's accumulator for LowQuality permutation. Change 4012093 by Yuriy.ODonnell Disable MallocStompOverrunTest() in static analysis config, as it intentionally performs an out-of-bounds access. Change 4012195 by Rolando.Caloca DR - vk - Fix for mobile backbuffer layout Change 4012202 by Rolando.Caloca DR - vk - Don't use staging buffers on UMA Change 4012467 by Rolando.Caloca DR - Remove redundant check Change 4012486 by Rolando.Caloca DR - Fix missing transition Change 4012518 by Guillaume.Abadie Implements fast shader permutation for DOF's TAA pass. Change 4013084 by Arciel.Rekman Fix for Linux clock discrepancy. - Causing at least one precision issue, possibly more. (Edigrating 4003273, 4012462 from //UE4/Dev-Editor/... to //UE4/Dev-Rendering/...) Change 4013266 by Uriel.Doyon Fixed crash when setting SceneDepthTextureNonMS and not having valid depth buffers in the SceneContext. Change 4013626 by Uriel.Doyon Fixed crash in the lighting build when creating a blueprint of the ALight and placing a light component in it. #jira UE-51672 Change 4013805 by Rolando.Caloca DR - Fix more missing transitions Change 4014128 by Arne.Schober DR - Do not create LocalVFUniformBuffer when running without MVF #jira UE-57929 Change 4014193 by Uriel.Doyon Editing component transforms now invalidate the component's lighting cache. #jira UE-48134 Change 4014282 by Rolando.Caloca DR - vk - Remove extra validation during dump Change 4014584 by Uriel.Doyon Duplicated static meshes now generate a new GUID to prevent possible issues with lightmass. #jira UE-49064 Change 4014604 by Uriel.Doyon UStaticMesh postduplicate now only generates a new GUID if !bDuplicateForPIE. Change 4015460 by Guillaume.Abadie Composes separate translucency within DOF's recombine pass. Change 4015571 by Guillaume.Abadie Refactors tonemapper to use global shader permutation API, that adds permutation for HDR output device rather than dynamic branching that some shader compiler are not very well optimizing. Change 4015984 by Krzysztof.Narkowicz Fixed crash inside DFAO resource allocation, when DFAO viewport has zero area. #jira UE-58000 Change 4016056 by Mark.Satterthwaite Fix Mac Metal shader compilation of texture cube arrays. Change 4016062 by Richard.Wallis Convert things like Space, Delete, F6 etc to unicode so they display correctly on the Mac menu rather than first letter of word. Added the default Mac commands to the GenericCommands so we get a Chord overwrite message and stop things like cmd+ q / w / h from getting bound. #jira UE-46999 Change 4016109 by Mark.Satterthwaite One unified Metal buffer implementation - will make further changes a heck of a lot easier. Change 4016221 by Patrick.Kelly UE-57617: Ensure changing viewmode to ShaderComplexity while in -game Change 4016238 by Guillaume.Abadie Makes clang happy again in Tonemapper. Change 4016309 by Mark.Satterthwaite More *_RenderThread implementations for MetalRHI. Change 4016414 by Mark.Satterthwaite And MetalRHI version of CreateStructuredBuffer_RenderThread... Change 4016498 by Mark.Satterthwaite Don't hold on to the uniform buffers bound to the hull shader when switching to a tessellated draw call as they'll have the wrong buffer layout. #jira UE-57930 Change 4017394 by Juan.Canada OpenGL: Fixed shading artifacts due incorrect UNORM/SNORM conversions in skin/skincache/computetangent shaderss. #jira UE-57691 Change 4017522 by Rolando.Caloca DR - vk - Remove unused code path (old mip generation detection) Change 4017539 by Rolando.Caloca DR - vk - Fix for sky lighting mips showing green on AMD Change 4017542 by Arciel.Rekman Moved appCountTrailingZeros to a non-SSE header (fixes ARM64 build). - Arguably WITH_SLI shouldn't apply to Linux on ARM but the fact that the function wasn't available is bad on its own. Change 4017827 by Guillaume.Abadie Optimises DOF's scattering cost by a third. Change 4017835 by Rolando.Caloca DR - Only allow a render pass to generate mips for one color render target Change 4017889 by Mark.Satterthwaite Cache all the Metal state objects to avoid hitting the API unnecessarily. Change 4018251 by Mark.Satterthwaite Fix broken rendering on Metal that tracked back to the innocuous looking changes in CL #4006495 (no blame attached - these changes are entirely reasonable) and cause various bugs in QAGame's TM-DistanceFields, ElementalDemo and probably more. Doesn't fix broken SpeedTree rendering :(. MetalRHI was allowing uniform buffers to blow away linear texture buffers when the constant buffer has been elided due to dead-code elimination. This problem can manifest without linear textures if the uniform buffer contains both constant data and a resource-table but the shader doesn't use any of the constant data. That's because Metal doesn't separate constant buffers from any other kind of buffer unlike D3D which separates all the slots out - and Metal doesn't provide enough buffers to emulate the D3D arrangement. So far this has only manifested in the MVF + Linear Texture case but a more robust solution will be necessary long term. Change 4018514 by Guillaume.Abadie Implements r.DOF.Scatter.MinCocRadius. Change 4018553 by Guillaume.Abadie Implements r.DOF.Scatter.MaxSpriteRatio to control the budget upperbound of DOF's scattering Change 4020369 by Yuriy.ODonnell Disable MallocStompOverrunTest in all static analysis configs (using USING_CODE_ANALYSIS macro) Previously was only disabled for PVS-Studio. Change 4020620 by Arciel.Rekman Fix XboxOne CIS (fallout of appCountTrailingZeros move). Change 4020949 by Guillaume.Abadie Configures DOF in scalability settings. Change 4021593 by Rolando.Caloca DR - vk - Support for Aftermath style api on AMD Change 4021740 by Rolando.Caloca DR - vk - Change log output Change 4022008 by Uriel.Doyon Fixed renderthread stalls when streaming texture mips on low end systems. Change 4022135 by Rolando.Caloca DR - vk - Fix last mip's layout during mip chain creation Change 4022607 by Jian.Ru Speculative fix for a bug where an invalid vertex buffer is deferenced #jira UE-56229 Change 4022890 by Rolando.Caloca DR - Fix reference count not getting released Change 4023540 by Mark.Satterthwaite Avoid some pointless retain/release calls on Metal Encoders. Change 4023796 by Marcus.Wassmer Tell users they are over the maximum size when allocating very large rendertargets. Change 4025337 by Yuriy.ODonnell Improved use-after-free detection mechanism and physical memory usage of MallocStomp on Windows. MallocStomp on Windows will now reserve virtual address space for every allocation and then commit physical pages only to the valid usable part. Physical pages will be unmapped on Free, but virtual address space will not be released and therefore will never be re-used. Virtual address space is allocated from the OS in blocks of 1GB and then linearly sub-allocated. This reduces VA space usage, as VirtualAlloc returns blocks on 64KB granularity even if we just need 4KB. As a small bonus, this also reduces number of syscalls per allocation. This dramatically increases accuracy of use-after-free detection, but consumes significant amount of memory for the OS page table. Virtual memory limit for a process on Win10 is 128 TB, which means we can afford to keep virtual memory reserved for a long time. Running Infiltrator demo consumes ~700MB of virtual address space per second. Additionally, committing physical pages only for the usable part of the entire virtual block reduces physical memory usage by ~30% compared to old behavior, which allocated and committed entire block of pages via BinnedAllocFromOS and then marks border page as non-accessible. Change 4026047 by Rolando.Caloca DR - Fix test/shipping #jira UE-58148 Change 4026150 by Krzysztof.Narkowicz Force proper ordering of buffer visualization materials - after tonemapping (so exposure doesn't influence it) and before editor stuff like icons. #jira UE-57992 Change 4026226 by Rolando.Caloca DR - Fix static analysis #jira UE-58150 Change 4026354 by Jian.Ru Debug check trying to catch a crash. Only enabled in editor build #jira UE-50111 Change 4026655 by Rolando.Caloca DR - Fix for static analysis #jira UE-58149 Change 4026763 by Rolando.Caloca DR - Remove references to defunct CCT to avoid confusing licensees Change 4027167 by Uriel.Doyon Fixed possible out of bound buffer access when serializing with FDuplicateDataWriter. #jira UE-56509 Change 4027850 by Jian.Ru Prevent log spam #jira UE-50111 Change 4029546 by Rolando.Caloca DR - Compile fixes Change 4029624 by Yuriy.ODonnell Addressed static analysis errors in MallocStomp - VirtualAlloc return value is now explicitly checked. - C6250 is suppressed, as VirtualFree does not release address space by design. Change 4030225 by Yuriy.ODonnell Static analysis warning fix: make sure declaration of Sleep() is consistent between Windows headers and TBB The complexity with this particular case is that the warning is generated in synchapi.h, which is included by some Windows headers. If a module includes TBB and then Windows platform headers, static analyzer will report this warning. Suppressing it would require wrapping all instances of Windows header includes in third-party macros. Current pragmatic solution is to modify the Sleep() declaration in TBB header to be consistent with Windows and to report the issue to Intel for a permanent fix. Change 4030440 by Rolando.Caloca DR - Fix crash on mobile #jira UE-58222 Change 4030570 by Daniel.Wright Allow null SRV's in uniform buffers for feature levels that don't support SRV's in shaders Change 4030618 by Arne.Schober DR - missing tangent/normal sign conversion after integration from main #jira UE-58224 Change 4031588 by Rolando.Caloca DR - vk - Fix compile error when missing vkCmdWriteBufferMarkerAMD Change 4032145 by Mark.Satterthwaite Fix UE-58268 by only emitting the base_instance/base_vertex variables required to fix-up the instance/vertex ID values to match D3D when the Metal version is 1.1 or higher, earlier versions don't support these features. #jira UE-58268 Change 4032209 by Rolando.Caloca DR - Fix crash on EngineTest: Mesh Batch's UserIndex is not a union anymore Change 4033178 by Guillaume.Abadie Fixes FXAA sampling outside viewports, that was causing black outline on bottom and right edge of the screen when ViewSize != BufferSize, problematic for some screenshot automated test. #jira UE-58151 Change 4034489 by Daniel.Wright Fixed UStaticMeshComponent modifying its UStaticMesh when undoing a change. This caused a crash when other static mesh components using the same mesh asset were rendered, since their rendering state was not recreated. A component should not modify its asset during PostEditUndo. * This behavior has been present for a long time but was previously hidden because only the vertex factory of the mesh asset is cached in static draw lists, not any of its rendering resources (eg vertex declaration). Change 4035157 by Uriel.Doyon Fixed deadlock in the streaming code when running with -onethread. #jira UE-58299 Change 4035198 by Rolando.Caloca DR - vk - Fix issue when an older SDK was installed, UBT would pick it (should pick the newer of ThirdParty\Vulkan or installed SDK). #jira UE-58267 Change 4035730 by Arne.Schober DR - Fix missing Fog parameters during LightScattering Injection #jira UE-57608 Change 4035843 by Daniel.Wright Reimplemented support for EyeAdaptation node in opaque materials Change 4036837 by Marcus.Wassmer Replace some of the screenshots to match new un-tonemapped buffer visualization Change 4036980 by Rolando.Caloca DR - vk - Fix deadlock contention during mem allocation on Linux Change 4037225 by Guillaume.Abadie Fixes jittering selection outline. #jira UE-58350 Change 4038056 by Marcus.Wassmer roll back changelist 4026150. breaks a bunch of automated tests by cutting off half the image. Change can go back in later with that part fixed also Change 4038296 by Jian.Ru Static analysis fix #jira UE-58377 Change 4038402 by Ben.Marsh Suppress IncludeTool warnings caused by CL 3998947. Change 4038514 by Arne.Schober DR - Fix case with MVF where instance offset is not supported by the API (in this case only foliage OpenGL and TvOS), usually the buffers are offsetted instead but with MVF we do not use offsetted buffers, therfore the offset needs to be passed into the shader although we are drawing with offset of 0. #jira UE-57652 Change 4038747 by Marcus.Wassmer Back out changelist 3853645, causing us to lose shadows in the shaderhair test Change 4040138 by Rolando.Caloca DR - Fix compile warning Change 4041614 by Rolando.Caloca DR - vk - Fix for Oculus module #jira UE-58267 Change 3810277 by Daniel.Wright Ray Traced Distance Field shadows use a two pass tile culling algorithm with no tile max - fixes flickering from tile overflow in dense areas or with a low sun angle. Costs .2ms on PS4. The distance field scene buffers now use float4 on PS4 and Xbox, saves .1ms on PS4. Change 3817029 by Uriel.Doyon Added UVolumeTexture, which use 3D textures. Compressed formats are supported on DX11, DX12, PS4 and XB1. Projects targetting OpengGL don't have access to compressed formats (as the implementation has texture tiling issues). Add "r.AllowVolumeTextureAssetCreation" set as 0 by default, which controls whether volume texture can be sampled in materials and whether they can be created from 2D texture assets. Platform not supporting BC7, will now fallback on RGBA8 instead of DXT to preserve quality, in an attemps to increase usage of BC7. #jira UE-32263 Change 3819960 by Michael.Lentine Expose UEPhysics Clothing Parameters through UI. Change 3823401 by Rolando.Caloca DR - Add NumQueriesInBatch to RHIBeginOcclusionQueryBatch Change 3844805 by Arne.Schober DR - Increased Intermediate normal of Umodel and Skelmesh from 8bit Unorm Compressed to float. A resave/rebuid/reimport of the meshes is recommended to recover some lost precision. Fixed an issue with compressed (packed) normals on the GPU which were off by one integer representation. Also switched from UNORM to SNORM to get a discrete zero representation and removed some mads from all the VertexShaders. Change 3847283 by Marcus.Wassmer Extra fixes from Uriel Change 3876607 by Rolando.Caloca DR - Use render passes when running occlusion queries - Removes the RHI(Begin|End)OcclusionQueryBatch API Change 3903799 by Daniel.Wright [Integrate] Pass Uniform Buffers * All pass-constant shader inputs should go into the appropriate pass uniform buffer, instead of being set per-draw * Moved many per-draw base pass parameters over to the Base Pass Uniform Buffer * Opaque and Translucent base pass shaders have different uniform buffers, which allows compile errors when accessing an invalid resource (eg GBuffer in Opaque), instead of silently falling back to GBlackTexture Uniform buffers can now contain nested structs with UNIFORM_MEMBER_STRUCT() * This allows composing a uniform buffer at a particular update frequency out of many features, with encapsulation of each feature's parameters in a struct. * Eg deferred fog uses FFogUniformParameters, but so does translucency in the base pass, where FFogUniformParameters is reused nested inside the base pass uniform buffer. * Resources can now be located anywhere in the uniform buffer. Padding is inserted to the cbuffer representation to keep memory layouts matching. In the future the cbuffer could be compacted. * RemoveUniformBuffersFromSource() which works around HLSLCC lack of struct initializers now handles nested structs Change 3917500 by Rolando.Caloca DR - Change depth bounds so only the enable bit is in the PSO, allow min/max to be dynamically modified Change 3964907 by Guillaume.Abadie Implements RectList topology support in RHI. Change 3979171 by Mark.Satterthwaite Copying //Tasks/UE4/Dev-UERNDR-354-mtlpp to Dev-Rendering (//UE4/Dev-Rendering): Rewrites MetalRHI in terms of mtlpp, which is a C++ wrapper library built around Metal's Objective-C API that attempts to reduce overheads and eliminate resource lifetime errors. Regarding mtlpp: - The mtlpp library uses C++ constructor/destructor and smart-pointer style management of Objective-C retain/release calls to prevent over- and under-release problems. - To reduce Objective-C overheads the mtlpp library caches the internal C-function that implements the Objective-C selectors for the most commonly used Metal protocol types and calls the function directly - this avoids objc_msgSend which does this look-up dynamically and thus improves CPU performance slightly. - Another advantage is that mtlpp provides infrastructure to extend the Metal API slightly to help improve MetalRHI - the two important aspects are mtlpp::CommandBufferFence which provides a consistent CPU<->GPU synchronisation primitive and sub-buffer allocations from mtlpp::Buffer which allow for far superior memory management. - Validation functionality is also provided by mtlpp to detect CPU vs. GPU data races and resource lifetime validation - this is expensive and is thus optional and compiled out from Shipping binaries that should be used when performance is most critical. The validation only works between resource modification and *submitted* command-buffers - anything that is being actively encoded on the CPU is ignored and it remains the responsibility of the application to validate the order of operations when encoding. Apple Platform: - LLM support which tracks Objective-C objects is enabled only on macOS - we don't have the necessary libraries to intercept and override the internal system calls on iOS. MetalRHI: - All the types are switched over, (mostly) insuling the external API from the horror of Metal and Objective-C. - Buffers are now managed quite differently, small buffers are allocated from a magazine allocator that allocates in fixed blocks from a larger parent buffer, intermediate sized buffers are allocated from a simple heap allocator that wraps a larger buffer and anything of reasonable size (>2Mb) will use the pooled allocator. This *radically* reduces the number of buffer resources, by as much as a factor of 10, because they are now sub-allocated without the need to use MTLHeap or MTLFence so they are performance equivalent to the existing implementation on the GPU and much faster on the CPU. Total memory use is approximately the same. - Vertex & index buffer management has been updated to reflect changes in the management and to avoid reallocating buffers which provide a Linear Texture (for SRVs) unless strictly necessary. This ensures that even in cases where a dynamic buffer is updated multiple times in a frame it will still work acceptably well. - The Metal ring-buffer implementation is completely different again, this time it can use Managed memory on macOS which allows for much better performance on eGPUs which will be more and more important for Mac. - Everyone that needs to wait on a command-buffer fence (rather than a command-buffer itself) now use mtlpp::CommandBufferFence, which prevents race conditions between the different command-buffer handlers (which sometimes execute out of order). - LLM tracking should now report the same data as the MetalRHI stats group for buffer & texture allocations - there is no segmentation for Vertex/index/Structured/Uniform allocations in Metal so these numbers are going to be wrong and will need to be rethought. - What will be unseen are the number of small but important resource usage fixes that avoid stale resources from being bound to the device after the point at which they become invalid. This should eliminate a class of errors where the GPU uses a resource pointer that is modified by the CPU and was necessary to satisfy the new mtlpp validation code. Other: - Remove the Metal focused workarounds from the ClothBuffer resource binding and related vertex-buffer SRV - these were put in when MetalRHI/MetalShaderFormat couldn't handle float->uint conversions correctly and they should now. - Fix a validation error caused by trying to render a 0-sized scissor rect which is invalid in Metal and simply pointless elsewhere. - Consistency of disabling the Manual Vertex Fetch behaviour in shaders. #jira UERNDR-354 Change 3979312 by Rolando.Caloca DR - Remove bogus bKeepOriginalSurface parameter in CopyToResolveTarget Change 4005122 by Rolando.Caloca DR - Support for PS4 Index Buffer UAVs Change 4016298 by Guillaume.Abadie Fixes DOF hybrid scattering on platforms that supports RectList topology. Change 4018575 by Guillaume.Abadie Optimises DOF's reduce pass when doing scattering compilation. Change 4020317 by Guillaume.Abadie Implements WaveBroadcastIntrinsics.ush. [CL 4042226 by Marcus Wassmer in Main branch]
2018-05-01 10:36:33 -04:00
}
void FOpenGLDynamicRHI::RHIEndRenderPass()
{
if (RenderPassInfo.NumOcclusionQueries > 0)
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 4041614) #lockdown Nick.Penwarden ============================ MAJOR FEATURES & CHANGES ============================ Change 3774677 by Arne.Schober DR - Deprecated SetLocal from the RHICmdlist Fixed some unnecessary PSO collisions. Change 3809579 by Chris.Bunner Back out changelist 3774677. #jira UE-53483 Change 3810363 by Mark.Satterthwaite More random fixes to mtlpp: most important is the extension to Buffer that allows creation of sub-buffers that are merely views onto a sub-range of the parent. These sub-buffers are valid to use throughout the mtlpp API with two exceptions: they may not be used for visibilityResultsBuffers and Set*BufferOffset functions cannot take this offset into account (as the encoder does not hold onto the buffers and I don't want it to). In the case of Set*BufferOffset the caller has to know what is going on and in the case of visibilityResultsBuffers it'll just assert as it isn't sensible. This makes it *much* easier to do things like sub-buffer allocation, though the caller must be aware of the alignment restrictions of their intended usage as they are not possible to enforce. For example, a call to SetVertexBuffer requires an offset alignment must match the alignment of the data-type in the shader for "device" resources, or for "constant" data it must be max(4, sizeof(datatype)) on iOS and 256 on macOS. This should allow for much more tightly packed sub-allocations than earlier approaches, though older drivers (e.g. Mac OS X 10.11) enforce only the coarser "constant" data restriction everywhere. Change 3810407 by Marcus.Wassmer PR #4322: ShadowSetup Bug Fix: Only stencil mask drawn meshes (Contributed by DSDambuster) Change 3810676 by Guillaume.Abadie Makes r.Test.SecondaryUpscaleOverride work with any arbitrary pixel size. Change 3810696 by Guillaume.Abadie Adds support for #include "../MyFile.ush" in the shader compiler. Change 3810698 by Guillaume.Abadie Implements enum class based shader permutation dimension. Change 3810699 by Guillaume.Abadie Implements Diaphragm DOF ground work. Change 3811536 by Guillaume.Abadie Pulls the trigger on CircleDOF's setup pass for DiaphragmDOF. Change 3811958 by Mark.Satterthwaite More fixes for mtlpp. Change 3811964 by Mark.Satterthwaite Only views onto a mtlpp::Buffer should return a valid parent-buffer. Change 3812604 by Guillaume.Abadie Changes Diaphragm DOF's source file layout. Change 3812827 by Mark.Satterthwaite More missing/broken functionality in mtlpp fixed and fixed obvious leaks. Change 3812920 by Guillaume.Abadie Adds support for per mip level UAV in FSceneRenderTarget. Change 3812926 by Mark.Satterthwaite Change the way we handle mtlpp resource construction to avoid leaks. Change 3812960 by Rolando.Caloca DR - vk - Disable DFGI Change 3812968 by Rolando.Caloca DR - Linker fix Change 3813318 by Mark.Satterthwaite Fix linear texture allocation from a buffer sub-view. Change 3813326 by Mark.Satterthwaite Fix another Metal mtlpp sub-buffer allocation failure. Change 3813328 by Guillaume.Abadie Removes global samplers in TAA for GL4, Vulkan and Switch. Change 3813937 by Rolando.Caloca DR - Fix logs not getting dumped when r.DumpSCWQueuedJobs is on Change 3813947 by Rolando.Caloca DR - noshaderworker should override r.XGEShaderCompile Change 3817017 by Uriel.Doyon Fixed texture editor black screen #jira UE-53653 Change 3818568 by Rolando.Caloca DR - Fix log when shader jobs crash - Move log10 to common - Added COMPILER_VULKAN define Change 3818603 by Uriel.Doyon Fix to static analysis warning Change 3818623 by Rolando.Caloca DR - Workaround hlslcc loop unrolling bug Change 3819070 by Uriel.Doyon Fix to stat duplication. Change 3819105 by Uriel.Doyon Refactored volume sample shader to avoid using texture dimension. Change 3819136 by Rolando.Caloca DR - vk - Per platform files (empty) Change 3819180 by Rolando.Caloca DR - vk - Move defines out of config into per platform Change 3819247 by Rolando.Caloca DR - vk - Remove more defines into platform settings Change 3819318 by Rolando.Caloca DR - vk - Fixes for linking Change 3819868 by Rolando.Caloca DR - vk - Linux & Android fixes Change 3819873 by Guillaume.Abadie Adds support for PermutationId on r.DumpShaderDebugInfo=1 Change 3819940 by Rolando.Caloca DR - vk - Fix Linux issues Change 3819956 by Rolando.Caloca DR - vk - Invalid check Change 3819961 by Michael.Lentine Hide attributes when plugin is not present Change 3819980 by Rolando.Caloca DR - vk - Standard validation always Change 3820039 by Rolando.Caloca DR - vk - Fix invalid ensure Change 3820326 by Rolando.Caloca DR - vk - Linux compile fix Change 3820422 by Michael.Lentine Add back GBufferAO. Change 3820433 by Rolando.Caloca DR - Fix D3D12 crash on 20 thread (10x2 cores) machines Change 3821677 by Rolando.Caloca DR - vk - Win32 compile fix Change 3821961 by Rolando.Caloca DR - Vulkan uses real UB by default on non-Android Change 3821968 by Rolando.Caloca DR - vk - Update glslang 1.0.65.1 Change 3821969 by Uriel.Doyon Added support for stat groups that must be sorted by name. Defined by DECLARE_STATS_GROUP_SORTBYNAME. Change 3821983 by Rolando.Caloca DR - vk - Change to static array (0.1ms on 10k draw calls) Change 3824141 by Rolando.Caloca DR - vk - Fix static analysis - Bumped up some (c) 2017->2018 Change 3824355 by Rolando.Caloca DR - vk - Accessor to find out if a cmd buffer has been submitted Change 3824420 by Rolando.Caloca DR - Sanity check number of queries per batch on D3D11 as to not break other RHIs Change 3824463 by Rolando.Caloca DR - Removed dummy ensure for D3D12 Change 3824609 by Rolando.Caloca DR - vk - Linux compile fix Change 3826074 by Mark.Satterthwaite Start IMP-caching the various descriptor types in mtlpp. Change 3826098 by Rolando.Caloca DR - vk - Dump layer compile fixes Change 3826113 by Rolando.Caloca DR - vk - Missing dump functions Change 3826302 by Rolando.Caloca DR - vk - Compile fix - Change dump handles to %p Change 3826635 by Mark.Satterthwaite Forward declarations required for mtlpp compilation without exposing Metal headers - plus fixes to the mtlpp test compiler. Change 3827072 by Mark.Satterthwaite Switch some more mtlpp descriptors over to IMPTables from objc_msgSend. Change 3827909 by Guillaume.Abadie Replaces diaphragm DOF's prefiltering with LDS bank coherent bilateral reduction, and implements 1/8 res background gathering pass. Change 3827952 by Guillaume.Abadie Updates copy right to year 2018 on diaphragm DOF's new files. Change 3828055 by Rolando.Caloca DR - vk - Rename in prep for changes Change 3828229 by Guillaume.Abadie Avoids to log multiple time global shader type name that have multiple permutations when verifying global shader map. Change 3828427 by Guillaume.Abadie Reimplements Max3x3 gathering post filtering for Diaphragm DOF with proper shader permutation. Change 3829979 by Guillaume.Abadie Fixes a color NaN source in diaphragm DOF's TAA pass. Change 3830116 by Rolando.Caloca DR - vk - Fix GPU queries/frame time on old system - New system in place, disabled temporarily Change 3830169 by Rolando.Caloca DR - vk - Fix async pso creation crash Change 3830193 by Rolando.Caloca DR - vk - CPU RHI thread improvement Change 3830291 by Guillaume.Abadie Automatically lower the number of gathering rings on background half res gather pass as far CoC is getting smaller. Change 3830300 by Rolando.Caloca DR - vk - Static analysis fix: Split VulkanCommon.h out of VulkanConfiguration.h Change 3830589 by Mark.Satterthwaite In mtlpp cache the IMPTables for all the Metal @protocol's that are dependent on the MTLDevice, this avoids a mutex & map lookup. Also make all the concrete types store their IMPTable statically as it won't change. Change 3830793 by Mark.Satterthwaite Fix a small number of bugs introduced with the mtlpp descriptor and table caching. Change 3831491 by Jian.Ru Fix driver version unknown #jira UE-53688 Change 3832335 by Rolando.Caloca DR - vk - Change include Change 3832550 by Rolando.Caloca DR - vk - Occlusion query rewrite WIP Change 3832589 by Rolando.Caloca DR - vk - Minor refactor to pools in prep for timestamps Change 3832618 by Rolando.Caloca DR - vk - Do not block timestamp queries Change 3832636 by Rolando.Caloca DR - vk - Fix old timestamp queries Change 3833138 by Rolando.Caloca DR - vk - Fix timestamp queries Change 3833249 by Rolando.Caloca DR - vk - Test lock Change 3833667 by Rolando.Caloca DR - vk - Old queries wait on the RHI thread now instead of the driver (disabled) Change 3833907 by Daniel.Wright Fixed NextStartOffset UAV index out of bounds Change 3833918 by Daniel.Wright D3D12 RHI: only refcount uniform buffers if GRHINeedsExtraDeletionLatency is false, which is no longer the case for PC or Xbox. The refcounting was heavy on performance as reported by a licensee because FRHIResource uses atomics for refcounting, which is only necessary when GRHINeedsExtraDeletionLatency is disabled. Change 3834852 by Rolando.Caloca DR - vk - Missing file Change 3834858 by Guillaume.Abadie Implements r.DOF.MinimalFullresBlurringRadius Change 3834979 by Rolando.Caloca DR - vk - Fix Change 3836117 by Rolando.Caloca DR - vk - Update to 1.0.65.1 Change 3836122 by Rolando.Caloca DR - vk - Added r.Vulkan.SubmitOcclusionBatchCmdBuffer - Added new error codes/messages Change 3836421 by Mark.Satterthwaite For the purposes of debugging and conformance testing mtlpp make it possible to compile *without* the IMP cache so that we call the underlying Objective-C. Change 3836896 by Uriel.Doyon Fixed concurrency and exit issues around d3d12 pipeline states on windows. Change 3837385 by Rolando.Caloca DR - vk - Dump memory on OOM Change 3837427 by Rolando.Caloca DR - vk - Change some arrays to array views Change 3837800 by Guillaume.Abadie Implements SHADER_PERMUTATION_RANGE_INT to make contiguous integer permutations that does not start to 0. Change 3838128 by Rolando.Caloca DR - vk - Support for non-cached memory types Change 3838540 by Guillaume.Abadie Refactors Diaphragm DOF's CoC tile buffer under a single API for better maintainability. Change 3838731 by Rolando.Caloca DR - vk - Descriptor pools per command buffer pool (turned off) Change 3838961 by Rolando.Caloca DR - vk - Use ring buffer for per frame uniform buffers - Enable descriptor pools per layout recycled per command buffer Change 3839087 by Rolando.Caloca DR - vk - Compile fixes for Android Change 3839106 by Marcus.Wassmer PR #4413: Removing unnecessary call to FString::ToLower (Contributed by gsfreema) Change 3839252 by Mark.Satterthwaite Fix mtlpp::Resource move operators. Change 3839426 by Marcus.Wassmer Duplicate 380972 Make PC GPU Benchmarks more reliable Change 3840041 by Guillaume.Abadie Fixes shader compilation failure in TAA with alpha channel through post processing support. Change 3840257 by Chris.Bunner Swapping a mul() to * in HLSLTranslator::Dot to allow scalar transformations per a UDN ticket. Change 3840308 by Rolando.Caloca DR - vk - Support for UB & non-UB on emulation mode Change 3840586 by Rolando.Caloca DR - Copy 3840577 Fix for CPUs with more than 16 cores Change 3840671 by Rolando.Caloca DR - vk - Copy from 3840663 Fix for layout ensure on HMD projects on Vulkan Change 3840980 by Rolando.Caloca DR - vk - Android compile fixes Change 3841989 by Guillaume.Abadie Slices Diaphragm DOF's Gather pass in multi shader files, and CFLAG_StandardOptimization flag for faster iteration time. Change 3842216 by Guillaume.Abadie Fixes DDOF's foreground alpha channel. Change 3842217 by Guillaume.Abadie Implements r.DOF.MaximalForegroundBlurringRadius Change 3842353 by Guillaume.Abadie Allows to disable foreground gathering with r.DOF.MaximalForegroundBlurringRadius=0 Change 3842747 by Rolando.Caloca DR - vk - Missing use of GPoolSizeVRAMPercentage - Support for smaller allocations if page size is not available Change 3842791 by Rolando.Caloca DR - vk - Use 95% of available GPU memory to handle some fragmentation Change 3843690 by Guillaume.Abadie Fixes diaphragm DOF's foreground after all this refactoring. Change 3844439 by Guillaume.Abadie Improves Coc dilate pass to make the gather pass as fast as possible, but still without artifacts caused by the fast gathering optimisation. Change 3844946 by Mark.Satterthwaite rd_route v1.1.1 with attached TPS approval. For macOS function interposition which is useful for debugging and the occasional workaround. Change 3845164 by Mark.Satterthwaite Add LLM support for macOS, including tracking of memory allocated in Objective-C. This makes use of runtime method swizzling in the Objective-C runtime and the rd_route library I added for Richard Wallis, which allows for arbitrary runtime function interposition and allows me to hook the custom allocators used in Apple's many Objective-C frameworks on which the whole macOS edifice is built. Objective-C objects are charged to the calling scope as they are too common to impose their own without murdering frame rate. We would need a TPS approval for an iOS function interposition library for this to work fully on iOS, if desired in the short term discarding LowLevelFree events that aren't in the map rather than asserting will workaround the problem. Change 3845849 by Marcus.Wassmer Fix clang and some normal refactor errors Change 3846026 by Rolando.Caloca DR - vk - Descriptor set allocation scheme rewrite - Type hash for each pool - Desc sets Pool on device Change 3846169 by Rolando.Caloca DR - vk - Remove old code for non-layout descriptor set pools Change 3846205 by Mark.Satterthwaite Disambiguate the PatchControlPointOut struct definitions in Metal tessellation shaders at Apple's suggestion to avoid a metallib gotcha. Change 3846346 by Arne.Schober DR - Missing Vector instructions Change 3847037 by Arne.Schober DR - Fix issue with GPU skincache where the offset of the clothbuffer is not relative to the offset of the actual vertexbuffer. Fixed MorphTarget Skincache Offset mixxup Change 3847275 by Marcus.Wassmer Copying MGPU to Dev-Rendering (//UE4/Dev-Rendering) Change 3847464 by Rolando.Caloca DR - vk - Fix static analysis warning Change 3847707 by Michael.Lentine Only use MorphTargetOffset when the shader enables morph targets. Change 3848533 by Richard.Wallis Handle Metal adding FirstInstance into [[ instance_id ]] which is different to other APIs. SV_InstanceID and SV_VertexID should now have their respective base instance and base vertex ID's subtracted before use in the shader. #jira UE-51716 Change 3848625 by Richard.Wallis Compile Fix Change 3848725 by Rolando.Caloca DR - Remove use of Build/SetLocalGraphicsPipelineState Change 3848797 by Rolando.Caloca DR - Deprecate Build/SetLocalGraphicsPipelineState Change 3849237 by Arne.Schober DR - AddCustom Ver for ModelVertex Serialization Change 3851247 by Rolando.Caloca DR - vk - Util functions Change 3851523 by Arne.Schober DR - Update Reflection Comparission shot from the BuildFarm. Change 3851859 by Rolando.Caloca DR - vk - Skip loader Change 3851889 by Krzysztof.Narkowicz Removed lights with lighting channels out of tiled deferred light list. Tiled deferred lights do not support lighting channels and it's wasn't worth to add extra complexity to this shader in order support this special case. #jira UE-51512 Change 3852181 by Rolando.Caloca DR - vk - Linux compile fix Change 3852547 by Uriel.Doyon Fixed Pre-Exposure shader compilation and Temporal AA issue. #jira UE-54276 Change 3852637 by Arne.Schober DR - Fixing Normal Automated Test Result Change 3853167 by Richard.Wallis AvfPlayer - support for streaming media. Due to an operator new/delete mismatch in Apples CFNetwork - we've had to change out one of that framework allocators using rd_route to avoid the memory corruption. #jira UE-35637 Change 3853447 by Chris.Bunner Fixing typos. Change 3853645 by Krzysztof.Narkowicz Fixed light functions on subsurface materials Removed strange code from blending between static and dynamic shadows #jira UE-50275 Change 3853660 by Rolando.Caloca DR - Fix OpenGL overwriting texture samplers on forward renderer Change 3853945 by Mark.Satterthwaite Duplicate #3831616 Fix the black ground scattering on Metal - we've had issues with the atmospheric fog calculations for a long time - one or more intermediate operations generates different precision on Metal so we end up passing -ve values into sqrt which then generates NaN/INF. For Metal when compiling this file and this file only #define sqrt() to sqrt(abs()) so that we don't see anymore unexpected black in atmospheric rendering. This is far from ideal but I don't want to make abs all inputs into every sqrt because AFAIK this is the only case where we have an issue, and until we to investigate each intermediate calculation that isn't ridiculously, soul-crushingly tedious, it isn't practical to identify the source of the error. #jira UE-53720 Change 3853966 by Mark.Satterthwaite Duplicate #3835852 Fix tessellation shaders in Metal with Manual Vertex Fetch enabled: - The control points idnex buffer shouldn't collide with anything else. - We can't use the optimisation of loading texture width & height from the buffer meta-table in tessellation shaders as the combined stages don't guarantee not to clobber unused buffer slots and screw it up when we use linear textures. #jira UE-53851 Change 3854250 by Uriel.Doyon Fix fbx automation tests Change 3854736 by Uriel.Doyon Added a tooltip to the EV100 slider in the exposure menu. Using game settings now disables the slider. #jira UE-53945 Change 3855047 by Jian.Ru Fix DFAO getting NANs when samples out of ViewRect #jira UE-54403 Change 3858197 by Krzysztof.Narkowicz View frustum shadow caster culling for pointlights/spotlights #jira UE-54381 Change 3860081 by Krzysztof.Narkowicz Tighter bounding sphere for a spotlight Replaced IntersectSphere(LightProxy->Origin, LightProxy->Radius) with LightProxy->SphereBounds for tighter culling of spotlights Directional light GetBoundingSphere() now everywhere returns Sphere((0,0,0),HALF_WORLD_MAX) for consistency and proper SphereBounds #jira UE-54258 Change 3860324 by Mark.Satterthwaite Update the macOS deployment target version to 10.12 from 10.11 as we officially ended support for El Capitan a while ago. Should mean that libraries compiled for 10.12 and up won't cause link warnings. Change 3860945 by Arne.Schober DR - Fix not releaseing SRV on render thread for FPositionVertexBuffer, FStaticMeshVertexBuffer, FColorVertexBuffer, FStaticMeshInstanceBuffer. #jira UE-54587 Change 3861129 by Jian.Ru Prevent distance culled objects from casting distance field direct shadows #jira UE-54533 Change 3861502 by Jian.Ru Exclude distance culled objects from DFAO calculation #jira UE-54533 Change 3862243 by Krzysztof.Narkowicz Changed radius of a directional light's bounding sphere from HALF_WORLD_MAX to WORLD_MAX in order to encopass entire WORLD_MAX box Change 3863476 by Krzysztof.Narkowicz Added BuildReflections option to ResavePackages commandlet #jira UE-54581 Change 3863717 by Rolando.Caloca DR - vk - Missed using pipeline cache on compute PSOs Change 3865332 by Arne.Schober DR - Fix UE-52356 Bone Weight Change 3866220 by Rolando.Caloca DR - vk - Fixed GetNativeResource missing on textures - Added support for -preferNvidia|AMD|Intel - Added VulkanRHIBridge.h - Minor fixes Change 3866222 by Rolando.Caloca DR - vk - Missed file Change 3866951 by Krzysztof.Narkowicz Fixed FreezeRendering on non editor builds: ComputeAndMarkRelevanceForViewParallel was calling FrozenMatricesGuard on multiple threads, reading and writing view matrices state in parallel. #jira UE-53640 Change 3867231 by Guillaume.Abadie Adds alpha mode to allow the tonemapper to passthrough the alpha channel for broadcast industry. Change 3867233 by Guillaume.Abadie Fixes a compilation failures in TAAU with r.PostProcessing.PropagateAlpha==2 Change 3867594 by Daniel.Wright Removed EditorOnlyDefaultMaterials, which added 79s of shader compilation during startup Added a dialog when opening the Material Editor on a Default Material, warning of advanced workflow Preventing Material Editor Apply or Save for a Default Material when the preview material has compilation errors Change 3870048 by Daniel.Wright Cleaned up formatting in TranslucentRendering from merges Change 3870106 by Krzysztof.Narkowicz Fixed some FArchive Tell()/Seek() 64bit->32bit truncations Change 3870211 by Rolando.Caloca DR - vk - Added -vulkanvalidation=N/-vulkanstandardvalidation/-novulkanstandardvalidation to set validation layer behaviour from cmd line Change 3870225 by Rolando.Caloca DR - vk - Some platforms do not use a standard swapchain Change 3870267 by Arne.Schober DR - SafeRelease SRVs that might be hold by the Vertexfactories (maybe due to indirect use in GlobalResources) Note that the VFs are not owners of the data, e.g the underlying Buffers might be released before this and this reference counting should be uneccessary Change 3870647 by Daniel.Wright Moved FogRendering.h to Renderer Change 3872130 by Krzysztof.Narkowicz Disable USE_GLOBAL_CLIP_PLANE for MATERIAL_DOMAIN_POSTPROCESS and MERIAL_DOMAIN_UI Merging GitHub Pull request #4459 "When material domain is not needing global clip plane there is no need to generate any code involving it. This does not alter output but removes lot of code at vertex shader and pixel shaders. At least on mobile rendered was actually generating clipping code for ui materials." #jira UE-54616 Change 3872145 by Rolando.Caloca DR - vk - Optional SupportsMarkersWithoutExtension Change 3872404 by Uriel.Doyon Added some guards when streaming virtual textures. Fixed optimized UCanvasRenderTarget2D::RepaintCanvas() to prevent resolving the texture twice. Fixed bad mipmap generation with UCanvasRenderTarget2D. Change 3872507 by Arne.Schober Back out changelist 3870267 Change 3874176 by Ben.Marsh IncludeTool: Add an flag to prevent scanning source files for exported symbols. Change 3874935 by Krzysztof.Narkowicz Fixed white thumbnails and other issues with sky lighting on ES3_1 path, by disabling GGX prefiltering, as mobile path doesn't have a single cubemap with all initialized mips. Instead it ping-pongs between 2 partially initialized. #jira UE-54656 Change 3875710 by Daniel.Wright Renamed uniform buffer member macros to be much shorter for readability Change 3876665 by Guillaume.Abadie Cherry-pick 3870715: Implements DOF's hybrid scatering bare bones. Change 3876666 by Guillaume.Abadie Cherry-pick 3871786: DOF hybrid scatering: fixes NaN source, transition to gather on close to screen edge and low intensity. Change 3876677 by Guillaume.Abadie Cherry-pick 3872348: Implements neighbor comparison for DOF's scattering compilation pass. Change 3876680 by Guillaume.Abadie Cherry-pick 3872357: Oups... fixes build... Change 3876683 by Guillaume.Abadie Cherry-pick 3872475: Controls number of mip to generate with DOF's reduce pass. Change 3876687 by Guillaume.Abadie Cherry-pick 3874104: Fixes various bugs in diaphragm DOF's hybrid scattering. Change 3876690 by Guillaume.Abadie Cherry-pick 3874144: Packs multiple DOF scattering group into same draw instance. Change 3876694 by Guillaume.Abadie Cherry-pick 3874275: Switches hybrid scattering with indexed indirect draw call to reduce scatter vertex shader invocation. Change 3876695 by Guillaume.Abadie Cherry-pick 3874674: Records min and max coc on DOF's setup's draw event. Change 3876783 by Rolando.Caloca DR - Static analysis fix Change 3876845 by Guillaume.Abadie Implements USceneCaptureComponent::ProfilingEventName Change 3877197 by Rolando.Caloca DR - vk - OQ fixes (disabled) Change 3877428 by Krzysztof.Narkowicz Merged with tiny tweaks Ansel photography plugin improvements from Adam Moss (GitHub pull request #4426): -The free-roaming photography camera has new constraints by default, i.e. it can't pass through walls -Photography session can be started and stopped programmatically, e.g. making it possible to bind photography to an alternative hotkey or button combo. This was an often-requested feature. -Tweakables and utilities are now exposed through a Blueprint Function Library (rather than direct manipulation of console variables) -The Ansel photography session UI now exposes some engine effect tweakables as sliders. For example, if the game is using depth-of-field then sliders are made available to allow the photographer to change the focal depth etc. The developer may suppress this behavior through the Blueprint Function Library. -Letterboxing is now removed during multi-part capture, d'oh. -Tiled shots are taken at full resolution even if ScreenPercentage < 100 -SSR is enabled during super-resolution shots since Ansel is now better at hiding any ensuing artifacts -Postprocess settings are frozen at session start to avoid discontinuities during photography, i.e. wandering between postprocess volumes when the camera auto-moves for stereo and 360 shots. #jira UE-54244 #4426 Change 3879086 by Krzysztof.Narkowicz Fixed sky/reflection capture (without owner) update - they are now updated only with a correspoding world Change 3879090 by Guillaume.Abadie Fixes tones of regressions on diaphragm DOF's recombine passes. Change 3879198 by Rolando.Caloca DR - vk - Support for real uniform buffers on Android platforms Change 3879993 by Krzysztof.Narkowicz -Fixed int64->int32 FArchive offset truncation in TShaderMap, VertexFactory and TextureDerivedData -Fixed FSerializationHistory bug, when trying to serialize 0 bytes #jira UE-43203 Change 3881462 by Guillaume.Abadie Implements full res DOF's setup pass for cheaper full res gathering in recombine pass. Change 3881524 by Krzysztof.Narkowicz Fixed compilation by removing FTickableEditorObject from FPreviewScene Change 3881724 by Chris.Bunner Static analysis fix. #jira UE-54762 Change 3881861 by Rolando.Caloca DR - vk - Fix layout warning when generating mip chain Change 3881864 by Rolando.Caloca DR - Use render passes on HZB Change 3882236 by Yuriy.ODonnell IndirectLightingColorScale is now applied to SubsurfaceLighting and DiffuseLighting. Was previously only applied to DiffuseLighting. #jira UE-42534 #github 3326 Change 3882325 by Guillaume.Abadie Implements FocusOnly lower gathering pass for Diaphragm DOF's slight out focus temporal stability. Change 3882340 by Rolando.Caloca DR - vk - Fix api dump Change 3882430 by Rolando.Caloca DR - vk - KHR_maintenance2 Change 3882563 by Rolando.Caloca DR - Add depth-stencil access mode to PSO initializer Change 3882929 by Rolando.Caloca DR - vk - Proper fix for maintenance extension macros Change 3883087 by Mark.Satterthwaite Allow disabling VSync in windowed mode for macOS 10.13.4+ and above. Change 3883597 by Guillaume.Abadie Collapses full and half res DOF setup passes together. Change 3883702 by Guillaume.Abadie Fixes mac's build. Change 3884747 by Uriel.Doyon Fix for static analysis warning Change 3884975 by Rolando.Caloca DR - vk - Move some platform defines to platform properties Change 3884988 by Rolando.Caloca DR - vk - Make an override per platform Change 3885832 by Rolando.Caloca DR - vk - Cosmetic change to group similar members Change 3885891 by Rolando.Caloca DR - vk - Some _RenderThread functions to avoid stalls Change 3886044 by Rolando.Caloca DR - Added RHI api _RenderThread version of RHICreateTextureReference RHICreateShaderLibrary RHICreateRenderQuery Change 3886560 by Guillaume.Abadie Fixes strong aliasing on TAAU's fast shader permutation. This adds a 6th neighbor sampling, and switch AA_TONE ON as TAA does for its fast shader permutation. Change 3886749 by Guillaume.Abadie Cherry-pick 3884748: Implements DOF's BuildBokehLUT for diaphragm blades simulation. Only used in hybrid scattering for now. Change 3886750 by Guillaume.Abadie Cherry-pick 3885457: Simulates diaphragm blades' curvature on bokeh. Change 3886752 by Rolando.Caloca DR - Fix metal static analysis Change 3887460 by Uriel.Doyon Fixed to more static analysis warning. Change 3888201 by Rolando.Caloca DR - vk - Added r.Vulkan.SubmitAfterEveryEndRenderPass - Fixed bad layout on rendering back buffer Change 3888209 by Rolando.Caloca DR - vk - Unity compile fix Change 3888254 by Rolando.Caloca DR - vk - Fix async texture layout Change 3888893 by Guillaume.Abadie Simulates bokeh in DOF's slight out of focus. Change 3889085 by Guillaume.Abadie Fixes DOF's reduce pass sampling outside viewport. Change 3889924 by Rolando.Caloca DR - vk - Skip seemingly bad validation error Change 3890573 by Daniel.Wright Only initialize FDiaphragmDOFGlobalResource in Feature Level 5 Change 3890590 by Arne.Schober DR - Fix Paper2d crash. When addMesh is called the Vertex and Indexbuffers are nulled out. re-create Dynamic Mesh builder for every Mesh instead. #jira UE-55063 Change 3890638 by Arne.Schober DR - Better fix for Paper2d which honors batching #jira UE-55063 Change 3891099 by Krzysztof.Narkowicz 1.5 texel shadow offset fix inside Manual2x2PCF based on #4485 GitHub pull request #jira UE-54985 #4485 Change 3891234 by Krzysztof.Narkowicz Optimized PCF2x2 and PCF3x3 - merged #4494 GithHub pull request #jira UE-55121 Change 3891407 by Rolando.Caloca DR - vk - Set vendor id earlier Change 3891417 by Rolando.Caloca DR - vk - Missing layout transitions Change 3891718 by Arne.Schober DR - Do not recreate one Frame Resource for dynamic draws #jira UE-55063 Change 3891925 by Yuriy.ODonnell Fix/workaround for inconsistent preprocessor definitions for NVAftermath that result in FD3D11DynamicRHI class layout mismatch. NVAftermath support is now enabled by default for Win64. NVAftermath is declared as a private dependency in D3D11RHI. It does not automatically propagate to modules that explicitly include private RHI headers (OculusHMD, OSVR, OSVRInput). This results in NV_AFTERMATH being defined while compiling RHI module and not defined when compiling other modules, causing memory corruption at runtime. The long-term solution for this and similar issues requires some mechanism for adding transitive module dependencies, so that anyone that depends on D3D11RHI module would automatically also get the NVAftermath. Additionally, private headers should *never* be included directly by external modules. The short-term solution is to explicitly add NVAftermath dependency to OculusHMD, OSVR and OSVRInput. Additionally, NV_AFTERMATH is no longer forced by D3D11RHIPrivate.h when it's not defined. This allows catching this kind of mismatch in the future through a compiler warning (C4668). #jira UE-53065 Change 3891987 by Rolando.Caloca DR - vk - Support for dedicated allocations Change 3892339 by Jian.Ru Fix a crash when tessellation shaders are used in dx12 #jira UE-55127 Change 3892528 by Rolando.Caloca DR - vk - Update Linux headers Change 3892867 by Rolando.Caloca DR - vk - Don't create swapchain if not needed Change 3893416 by Guillaume.Abadie Implements bokeh simmulation on foreground and background gather. Change 3893732 by Chris.Bunner GetRelevance_Internal should use the immediate parent resource, not the base, as some features are overridden by permutations e.g. UsesWorldPositionOffset. #jira UE-53404 Change 3893868 by Guillaume.Abadie Allocates diaphragm DOF's buffers and structered buffer only on supported platforms. Change 3893917 by Chris.Bunner Potential fix for CIS. Change 3893933 by Chris.Bunner Duplicating CL 2647737 as this is the same issue from that JIRA where accessing game-thread data was being prevented. We don't have this check in UMaterial::GetMaterialResource already, but presumably the UMaterialInstance case was never removed as we've not been calling it until now. Change 3894218 by Rolando.Caloca DR - vk - Remove stat counters per draw call, gains 10% CPU on Infiltrator Change 3894579 by Arne.Schober RT - Fix assert not in RenderingThread from Triangle Renderer. #jira UE-55247 Change 3894724 by Rolando.Caloca DR - vk - New API for batching barriers Change 3894909 by Arne.Schober DR - Fix crash in Speedtree wind where Renderdata is unavailable #jira UE-54544 Change 3895414 by Rolando.Caloca DR - Add a configurable threshold for SCWs time outs Change 3896429 by Marcus.Wassmer Allow variable frame-latency delay in FrameGrabber frames. For performance you want at least a 1 frame delay so you don't sync the GPU to the CPU. Change 3896495 by Marcus.Wassmer Set pointer properly Fix CIS Change 3897253 by Guillaume.Abadie Fixes CIS warning in diaphragm DOF Change 3899179 by Guillaume.Abadie Implements background hybrid scatter occlusion for diaphragm DOF. Change 3903654 by Rolando.Caloca DR - vk - Rework dump layer to allow other layers Change 3903766 by Rolando.Caloca DR - vk - More wrappers Change 3904025 by Rolando.Caloca DR - vk - More wrappers Change 3904342 by Rolando.Caloca DR - vk - Track image resources & callstacks Change 3904346 by Rolando.Caloca DR - vk - Copy fix from 4.19 for flickering grass Change 3904510 by Rolando.Caloca DR - vk - Compile fix Change 3904914 by Daniel.Wright [Integrate] Fixed PS4 transitions with forward shading Change 3904916 by Daniel.Wright [Integrate] Fixed PS4 transitions with occlusion queries Change 3905975 by Rolando.Caloca DR - vk - Missing wrappers Change 3905977 by Rolando.Caloca DR - vk - Missed file Change 3907829 by Rolando.Caloca DR - Move depth bounds to the PSO Change 3907832 by Rolando.Caloca DR - vk - Prep for delaying transitions Change 3907834 by Rolando.Caloca DR - vk - Fix for depth stencil issues/validation errors Change 3907967 by Rolando.Caloca DR - vk - Linux compile Change 3908093 by Rolando.Caloca DR - vk - Fix depthstencil layout on descriptors Change 3908393 by Rolando.Caloca DR - vk - Disable dedicated allocation as it causes crashes on Nvidia 700 series Change 3908401 by Rolando.Caloca DR - Do transitions outside render pass Change 3908422 by Rolando.Caloca DR - vk - Fix transition state not getting stored Change 3908735 by Guillaume.Abadie Cherry-pick 3896619: Fixes after TAAU post process material that had wrong default buffer UV. #jira UE-55317 Change 3908736 by Guillaume.Abadie Cherry-pick 3891352: Fixes ensure when visualizing HDR with TAAU. #jira UE-55019 Change 3908753 by Guillaume.Abadie Lets the renderer layout the views in the internal render targets like it prefers. Change 3909119 by Daniel.Wright Fix some static analysis warnings Change 3911943 by Rolando.Caloca DR - vk - Fix for packaging Vulkan projects Change 3912145 by Rolando.Caloca DR - vk - Fix layout on streaming textures Change 3913029 by Rolando.Caloca DR - Fix missing transition Change 3913048 by Rolando.Caloca DR - Fix for hlslcc Change 3913054 by Rolando.Caloca DR - vk - Fix number of layers on barrier Change 3913171 by Rolando.Caloca DR - vk - Fix for decal missing transition Change 3913211 by Rolando.Caloca DR - vk - Add debug name to image tracking Change 3913449 by Rolando.Caloca DR - vk - Restore transition Change 3913466 by Rolando.Caloca DR - Fix Vulkan EngineTest Change 3913537 by Rolando.Caloca DR - vk - Fixes independent samplers & textures (contributed by AMD) Change 3913548 by Rolando.Caloca DR - vk - Warning fix Change 3913691 by Rolando.Caloca DR - vk - Fixes for parallel (wip) Change 3914656 by Rolando.Caloca DR - vk - Fix bug when using separate samplerstates and textures Change 3914730 by Rolando.Caloca DR - vk - Bump version Change 3914764 by Rolando.Caloca DR - vk - Don't crash on exit Change 3915532 by Rolando.Caloca DR - vk - Parallel context fixes Change 3915589 by Rolando.Caloca DR - vk - Hoist and rename transition and layout manager class out of the context Change 3915592 by Rolando.Caloca DR - Fix gpu marker name Change 3917607 by Rolando.Caloca DR - vk - Fix depth bounds on Vulkan Change 3917609 by Rolando.Caloca DR - vk - Fix static analysis Change 3917616 by Rolando.Caloca DR - Fix D3D11 initialization Change 3920569 by Rolando.Caloca DR - vk - Prep for layout mgr refactor Change 3921023 by Rolando.Caloca DR - vk - Dump layer fixes Change 3921623 by Rolando.Caloca DR - vk - Prep refactor for layouts - Dump now shows marker tree Change 3922007 by Rolando.Caloca DR - vk - Fix extra allocation per draw call Change 3922442 by Rolando.Caloca DR - vk - Detect potential issues Change 3922470 by Rolando.Caloca DR - vk - Minor optimization Change 3922482 by Rolando.Caloca DR - vk - More minor optimizations Change 3923158 by Rolando.Caloca DR - Move r.DisableEngineAndAppRegistration out to common RHI and use it on Vulkan Change 3923486 by Rolando.Caloca DR - vk - Minor cpu optimizations Change 3923505 by Rolando.Caloca DR - vk - Use bigger allocations for uniform buffers Change 3923516 by Rolando.Caloca DR - vk - Android compile fix Change 3923557 by Rolando.Caloca DR - vk - Cache descriptorset layouts, refactor duplicated code Change 3923851 by Rolando.Caloca DR - vk - Linux compile fix Change 3924153 by Rolando.Caloca DR - vk - Support for dynamic UBs Change 3924193 by Rolando.Caloca DR - vk - Remove old per pso descriptor pools Change 3924197 by Rolando.Caloca DR - vk - Remove unused global uniform buffer pool Change 3924220 by Rolando.Caloca DR - vk - Wrap some unused classes in their define Change 3924234 by Rolando.Caloca DR - vk - Show ring buffer wrapping messages Change 3924243 by Rolando.Caloca DR - vk - Fix bad dynamic buffer Change 3924902 by Rolando.Caloca DR - vk - Fix crash running infiltrator Change 3925209 by Rolando.Caloca DR - vk - Fix bug with dynamic buffers - Remove old defines Change 3925300 by Rolando.Caloca DR - vk - Allow packed uniforms as dynamic UBs (with r.Vulkan.DynamicGlobalUBs) Change 3925627 by Rolando.Caloca DR - vk - Move DynamicOffsets into the pipeline state Change 3925834 by Rolando.Caloca DR - vk - Cache per stage information Change 3925835 by Daniel.Wright Fixed DisplayName for UParticleModuleCollisionGPU Change 3925897 by Rolando.Caloca DR - vk - Split update descriptors loop Change 3926488 by Rolando.Caloca DR - vk - 16MB for ring buffer on desktop, 8 MB for mobile Change 3928168 by Guillaume.Abadie Cherry-pick 3917219: Implements r.DOF.RecombineQuality Change 3928173 by Guillaume.Abadie Cherry-pick 3927888: Enables r.DOF.HybridScatter.BackgroundCompositing and r.DOF.HybridScatter.ForegroundCompositing to work when both enabled. Change 3928216 by Rolando.Caloca DR - vk - Fix Android - Fix static analysis Change 3929119 by Rolando.Caloca DR - vk - Rename some classes for clarity - Fix read-only cvar Change 3929151 by Rolando.Caloca DR - vk - Rename class Change 3930046 by Rolando.Caloca DR - Temp fix Vulkan flickering grass Change 3930148 by Rolando.Caloca DR - vk - Only update dirty descriptors - Use dynamic descriptors for packed global uniform buffers Change 3930998 by Guillaume.Abadie Packs shader permutation in different XGE submissions. Change 3931079 by Rolando.Caloca DR - vk - Fixes for Android and non-real ubs platforms Change 3931942 by Krzysztof.Narkowicz Depth rendering - When EarlyZPassMode is set to DDM_AllOccluders, dynamic objects need also to test bUseAsOccluder just like static ones #jira none Change 3932819 by Daniel.Wright [Integrate] Scene Textures uniform buffer * Base Pass Uniform Buffer now contains a Scene Textures uniform buffer. Previously the translucent base pass had to check ~40 loose scene texture parameters every draw. * FMeshMaterialShader's must now bind PassUniformBuffer and supply a valid pass uniform buffer. For most passes this is just FSceneTextureUniformParameters. * FRendererModule::DrawTileMesh can now cleanly set dummy scene texture resources, just by configuring how the pass uniform buffer is created. * Moved scene texture shader functions out of Common, into SceneTexturesCommon which must be manually included by shaders that want to use them * Separate Mobile Scene Textures uniform buffer to silo the platform complexities Moved DBuffer inputs out of FDeferredPixelShaderParameters and into FOpaqueBasePassUniformParameters Removed per-frame material uniform expressions. GameTime material node with period is now implemented with an fmod in the shader, without the use of MaterialFloat, so that it will happen at full precision. * Per-frame expressions were used when the GameTime material node had a period, to do the fmod on the CPU where 32 bit precision is guaranteed, for mobile GPU's where pixel shader precision is sometimes less than 32fp. Moved forward shading data into the Base Pass Uniform Buffer Removed instanced stereo support for the light cull grid - will have to be reimplemented without changing SRV's per draw Base pass sets View Uniform Buffer from DrawRenderState instead of choosing which one to set per-draw Fixed padding in nested uniform buffer structs Skip SRV members on Feature Level SM4 and below Change 3932964 by Rolando.Caloca DR - vk - Renderdoc on Android Change 3933095 by Daniel.Wright Moved FSceneTextureUniformParameters out of the opaque base pass uniform buffer. * Base Pass shaders now enable SCENE_TEXTURES_DISABLED when compiling for a material of any domain other than MD_Surface. These are used when rendering thumbnails of a material in a different domain, which could be opaque, but the opaque base pass drawing policy does not bind a scene textures uniform buffer, so the shader must not bind it. * Opaque materials can no longer use EyeAdaptation. Change 3933096 by Daniel.Wright Better d3d11 assert message when a uniform buffer was not set by the renderer Change 3933176 by Rolando.Caloca DR - vk - Prefer mailbox if available Change 3933271 by Ryan.Vance #jira UE-55936 Fixed missing referenced uniform bindings on AR pass-through camera shaders. Change 3934000 by Guillaume.Abadie Fixes Win32 build in ShaderCompilerXGE.cpp Change 3934299 by Guillaume.Abadie Fixes a bug in DOF's reduce operator that was casusing color leaking between background and foreground. Change 3934699 by Daniel.Wright Added bAffectDistanceFieldLighting to landscape Change 3935190 by Daniel.Wright Forward Light Grid SRV's use StructuredBuffer on Metal, instead of 'invariant Buffer', which throws off RemoveUniformBuffersFromSource parsing Change 3935606 by Daniel.Wright Removed LightmapPolicy::Set which was needed for vertex lightmaps Renamed FVertexFactory::Set to SetStreams to make it findable Change 3936510 by Rolando.Caloca DR - vk - Update glslangValidator.exe to 1.0.65.1 for dumped debug SPIRV shaders Change 3936545 by Richard.Wallis Clone of CL's (3925763, 3925430, 3925424, 3925385, 3925278) Mark Satt's Xcode fixes from task stream //Tasks/UE4/Dev-UERNDR-354-mtlpp/ Plus XCode 9.2 compile fix in ApplicationPlatformCompilerPreSetup.h for -Wunused-lambda-capture. Change 3938061 by Daniel.Wright Vulkan: Added support for SRV's in Uniform Buffers Change 3938123 by Daniel.Wright Vulkan: Slightly better assert for null resources in uniform buffer Change 3939197 by Rolando.Caloca DR - vk - Disable custom memory mgmt Change 3939677 by Rolando.Caloca DR - vk - Fix static analysis warning Change 3939809 by Rolando.Caloca DR - vk - Fixes for async compute Change 3939875 by Rolando.Caloca DR - vk - Support for -vktrace Change 3939977 by Rolando.Caloca DR - vk - Skip a condition during gather UBs - Set up efficient compute async var - Fix validation cmd line Change 3939982 by Rolando.Caloca DR - vk - Revert mipchain Change 3939984 by Rolando.Caloca DR - vk - Remove unnecessary asserts Change 3940082 by Rolando.Caloca DR - vk - Custom mem mgr Change 3940475 by Rolando.Caloca DR - vk - Fix DFAO (indirect draw offset) Change 3940555 by Rolando.Caloca DR - vk - Minor fixes Change 3940675 by Rolando.Caloca DR - vk - Fix indirect type mismatch Change 3941111 by Rolando.Caloca DR - Renderpass bGeneratingMips Change 3941847 by Daniel.Wright Fixed Volumetric Lightmaps on Static geometry only working if the geometry had been built with Surface Lightmaps before Change 3941978 by Rolando.Caloca DR - vk - Minor fixes for presenting on compute queue Change 3942074 by Rolando.Caloca DR - vk - Remove some RHI stalls - Fixed swap chain stat Change 3943946 by Daniel.Wright Fixed Texcoord0 on Volume materials on a particle sprite, including SubUV particles. Change 3944065 by Daniel.Wright Fixed SceneDepth collision getting broken on GPU particles when a scene capture is rendering Change 3944158 by Daniel.Wright Fixed ViewUniformShaderParameters accessing GEngine->PreIntegratedSkinBRDFTexture too early during slate loading screen Change 3944865 by Rolando.Caloca DR - vk - Prep for render passes Change 3945196 by Rolando.Caloca DR - Move render pass validate to cpp Change 3945202 by Rolando.Caloca DR - vk - Some fixes for using real render passes Change 3945357 by Rolando.Caloca DR - Fix bad condition Change 3946295 by Yuriy.ODonnell Added a sentinel member to FLightMap, which is initialized in the ctor and reset in the dtor. Sentinel is then checked in FLightCacheInterface::GetLightMapInteraction(). This aims to shed some more light on a hard-to-repro crash, which is suspected to be a use-after-free bug: http://crashreporter/Buggs/Show/1785593 Change 3946407 by Rolando.Caloca DR - vk - Prep for refactor Change 3946648 by Rolando.Caloca DR - vk - Fixes for async compute (wip) Change 3947299 by Rolando.Caloca DR - vk - FIx static analysis Change 3948434 by Rolando.Caloca DR - vk - Fix exiting with parallel Change 3948928 by Rolando.Caloca DR - vk - Fix enabling draw markers for tools Change 3949021 by Rolando.Caloca DR - vk - Buffer tracking layer Change 3949602 by Rolando.Caloca DR - vk - static analysis fix Change 3949757 by Rolando.Caloca DR - vk - Remove bogus parameter Change 3949810 by Rolando.Caloca DR - vk - Move waits for cmd buffer Change 3950270 by Guillaume.Abadie Implements dedicated gather pass for foreground hole filling to avoid being VGPR bound in foreground gather pass, but still being hable to amend foreground. Change 3950272 by Rolando.Caloca DR - vk - Minor refactor for semaphores Change 3950279 by Guillaume.Abadie Oups... fixes build Change 3950298 by Rolando.Caloca DR - vk - Gather wait semaphores in the cmd buffers Change 3950371 by Rolando.Caloca DR - vk - fixes for async compute Change 3950597 by Rolando.Caloca DR - vk - Fix for clip distance (fixes planar reflections) Change 3951075 by Rolando.Caloca DR - vk - Fix for async compute Change 3952524 by Guillaume.Abadie Some DOF enum refactoring. Change 3955016 by Daniel.Wright Fixed BuiltData package getting renamed into the map package during a content browser folder move, causing a redirector to be incorrectly placed in the map package Change 3955668 by Guillaume.Abadie Fixes a bug where full res coc buffer was computed even if not doing slight out of focus. Change 3956722 by Guillaume.Abadie Fixes a bug where r.DOF.MaximalForegroundBlurringRadius was screen percentage dependent. Change 3959212 by Guillaume.Abadie Prefixes all DOF's shaders files with DOF keyword. Change 3959705 by Guillaume.Abadie Optimises the DOF setup pass outputing half res and full res with LDS downsample. Change 3959941 by Guillaume.Abadie Halfs DOF's hybrid scatter compilation by using a unique downsampling for both foreground and background, instead of 2 reduce passes. Change 3962273 by Rolando.Caloca DR - Fix typos #jira UE-56317 PR #4586 Change 3962615 by Rolando.Caloca DR - vk - Compile fix Change 3962949 by Rolando.Caloca DR - Fix DOFDownsample extension Change 3962993 by Guillaume.Abadie Back out changelist 3962949 Change 3963016 by Guillaume.Abadie Adds missing DOFDownsample.usf Change 3963041 by Rolando.Caloca DR - vk - Misc changes to help integrate Change 3964293 by Guillaume.Abadie Fixes DOF's setup pass reading outside of the viewport. Change 3964475 by Guillaume.Abadie Collapses DOF's hybrid scatter compilation passes into reduce passes. Change 3964883 by Daniel.Wright Fixed 3d texture in uniform buffer on unsupporting RHI Change 3964897 by Rolando.Caloca DR - Compile fixes Change 3964914 by Guillaume.Abadie Fixes a bug on r.DOF.RecombineQuality=0 Change 3965153 by Guillaume.Abadie Fixes compile warning in D3D12Commands.cpp. Change 3965814 by Rolando.Caloca DR - Prep for integration conflict resolve Change 3965899 by Rolando.Caloca DR - Fix odd linkage issue Change 3966072 by Rolando.Caloca DR - More prep for merge Change 3966163 by Rolando.Caloca DR - Merge prep Change 3966844 by Guillaume.Abadie Packs multiple DOF scattered bokeh per instance and uses PT_RectList in DOF for platforms that can. Change 3967116 by Rolando.Caloca DR - Compile fixes for integration Change 3967273 by Rolando.Caloca DR - Use same path for mip generation Change 3967277 by Rolando.Caloca DR - vk - Fix mips on cubemaps Change 3967693 by Rolando.Caloca DR - Copying //UE4/Dev-Main@3912313 to //UE4-DevRendering, missing shaders Change 3967851 by Rolando.Caloca DR - Copying //UE4/Dev-Main@3912313 to //UE4-DevRendering, Engine 2/2 Change 3968083 by Rolando.Caloca DR - Integration compile fixes Change 3968240 by Rolando.Caloca DR - Shader compile fixes for integration Change 3968270 by Rolando.Caloca DR - Fix for missing hash calculation Change 3969426 by Rolando.Caloca DR - vk - Fix warning Change 3969869 by Krzysztof.Narkowicz Back out changelist 3946295 - UE-54537 is fixed, so no need for this debug sentinel. #jira none Change 3969944 by Rolando.Caloca DR - Warning fix Change 3970020 by Rolando.Caloca DR - Bump after integration Change 3970052 by Rolando.Caloca DR - Fix for mobile Change 3970236 by Daniel.Wright Causing decal shader to recompile to fix a merge bug Change 3970270 by Daniel.Wright Bump shader version from merge Change 3970339 by Olaf.Piesche Replace series of locks/unlocks with a single one for curve injection #tests QAGame Change 3970390 by Rolando.Caloca DR - Rename FSceneTextureUniformParameters to FSceneTexturesUniformParameters - Remove duplicate method for occlusion queries Change 3970523 by Rolando.Caloca DR - Fix serialization of shaders Change 3970533 by Arne.Schober DR - fix for removing the Speed tree wind when the scene gets deleted. The original enque rendercommand requeues the element onto the renderthread although the call already came from the Renderthread and the scene can get lost in between. #jira UE-56322 Change 3971160 by Guillaume.Abadie Fixes CompositeEditorPrimtive pass and SelectionOutline pass for VR editor to work with TAAU. Change 3971516 by Guillaume.Abadie Cherry-pick 3912629: Fixes SSR that was computing vigneting according to PrevScreen that could let some outside viewport samples going through when rotating the camera. #jira UE-55353 Change 3971594 by Krzysztof.Narkowicz Fixed assert inside BindLightMapVertexBuffer. FSplineMeshSceneProxy was calling BindLightMapVertexBuffer for invalid (still not generated) lightmap UV channel after mesh reimport. Simplified assert, as at the moment almost all of the high callsites already clamp lightmap uv channel. #jira UE-56321 Change 3971622 by Krzysztof.Narkowicz Fixed crash inside Indirect Lighting Cache. Data (reflection captures and lightmap) generation calls ULevel::GetOrCreateMapBuildData(), which can destroy lightmap data if level has legacy data. Last Lightmap generation step recreates this data, but if user cancels lightmap generation - it won't do that. #jira UE-56171 Change 3974788 by Rolando.Caloca DR - Remove GSupportsGenerateMips Change 3974789 by Rolando.Caloca DR - Remove bogus function Change 3974986 by Rolando.Caloca DR - vk - Tracking fixes Change 3974989 by Rolando.Caloca DR - vk - Don't submit dummy barriers Change 3975075 by Olaf.Piesche Update for particle curve injection improvement, fixing ES2 problems #tests QAGame tm-shadermodels, various color curve tests in-editor Change 3975957 by Uriel.Doyon Fixed invalid max texture resolution when using the bake material tools. Change 3978471 by Daniel.Wright New cvar r.SkylightUpdateEveryFrame Change 3978779 by Rolando.Caloca DR - Accessor for texture sizes Change 3978797 by Rolando.Caloca DR - Clean up RHI CopyTexture API Change 3978832 by Rolando.Caloca DR - vk - Workaround for RenderDoc crashing due to Descriptor Pool reset Change 3978836 by Rolando.Caloca DR - vk - Remove generate mips Change 3979201 by Rolando.Caloca DR - vk - RHI CopyTexture. Uses general layout for generating mips Change 3979204 by Rolando.Caloca DR - Use render passes and CopyTexture to generate mips Change 3979592 by Rolando.Caloca DR - Warning fix Change 3980855 by Krzysztof.Narkowicz Optimize bounding sphere radius after non-uniform scale by using bounding box extent. #jira UE-56227 Change 3981065 by Rolando.Caloca DR - vk - Fix bad layout #jira UE-56238 Change 3981346 by Rolando.Caloca DR - Copy from 3707257 Support for not flushing compute jobs (r.D3D11.UAVFlushNV) Change 3981347 by Rolando.Caloca DR - Copy from 3707257 Don't flush between morph dispatched Change 3981932 by Mark.Satterthwaite Generate the shader hash and function name when a Metal shader error needs to be reported so that even without shader code we get something to go on. Change 3982442 by Rolando.Caloca DR - Fix warning Change 3982652 by Rolando.Caloca DR - vk - Signal semaphore cleanup Change 3983917 by Richard.Wallis Clone of CL 3974146 converted for mtlpp along with extra mtlpp usage suggestions by Mark Satt: Fix for black flickering on first paint with weighted material landscape on Mac. When using AsyncCopyFromBufferToTexture in Metal we put the blit operation on the prologue encoder - however after a draw call using that resource the copy operation should happen after on the current encoder, this keeps the correct order of operations. Added Bool return from various Asnyc renderpass resource requests so caller can decide correct further action. Updated to include the other async functions. Change 3984409 by Guillaume.Abadie Attempts to make static analysis happy again. Change 3984435 by Nick.Bullard Checking in Performance Test level provided to us by Tor Frick based on UE-44841. This has been utilized for checking issues against Aftermath performance impact. The Map includes 2 Level Book marks, most testing has been done against Bookmark 1 view, in fullscreen, in game mode Change 3985087 by Mark.Satterthwaite Make sure that the particle scratch buffer is large enough to hold all the data for the curve texture we are rendering to, otherwise a full set of curves will start scribbling memory after 64Kb (the curve texture is 256Kb of data - 512x512x4 as sizeof(RGBAUInt8) == 4). This happens in ElementalDemo. Change 3985201 by Rolando.Caloca DR - Fix bad CopyTexture Change 3985258 by Mark.Satterthwaite Try and detect orientation changes so that we don't blow-up on iOS due to a huge mismatch between the drawable texture for the display and the scene's depth-stencil target. I can't just fiddle with the depth-stencil texture itself without running the risk of obliterating in-use data and really we shouldn't permit such a mismatch anyway but it is fallout from 3620990. #jira UE-55756 Change 3986449 by Rolando.Caloca DR - vk - Update & consolidate Vulkan headers to 1.1.70.1 Consolidate SDK into one Change 3986571 by Guillaume.Abadie Makes PVS-Studio happy again in DOF. Change 3987039 by Yuriy.ODonnell Initial implementation of tracing profiler to show CPU and multiple GPUs on the same timeline. Currently only supported on DX12 platforms. Use `TracingProfiler frames=N` console command to trigger a capture of the next N frames. Trace is saved to disk as a JSON file into `Saved/Profiling/Traces` directory. Trace file uses Google Tracing format and can be visualized in Chrome built-in profiler (chrome://tracing). `r.GPUStatsChildTimesIncluded=1` CVar makes timing scopes hierarchical. `TracingProfiler.BufferSize=N` CVar controls the size of the tracing buffer, which may need to be increased for long traces (default is 65k events). Only can be set at startup. Change 3987074 by Yuriy.ODonnell Implemented timestamp calibration on DX11. Calibration is only performed when tracing profiler session starts. Change 3987160 by Yuriy.ODonnell Added thread naming and ordering to the tracing profiler output Change 3987331 by Mark.Satterthwaite Remove the Nvidia hack to retain resource references in command-buffers for UE-46604 as the mtlpp refactor provides stronger resource lifetime guarantees. #jira UE-46604 Change 3987754 by Mark.Satterthwaite Fix MetalRHI memory reporting in non-default path. PR #4568 Change 3988184 by Arciel.Rekman Linux: Fix editor OpenGL performance (UE-55960). - GetCurrentThreadId() calls became much more frequent with the OpenGL RHIT refactor. - We used to only cache that value in monolithic builds, because having per-thread static variables in dynamic libraries is risky due to OS limits. - This change adds dynamically-managed per-thread cache for non-monolithic builds. #jira UE-55960 Change 3988394 by Rolando.Caloca DR - vk - Improve memory mgmt - Use 256MB pages for Device heap (or 1/8th if less). - Remove texture allocations not going through resource manager Change 3988405 by Marcin.Undak Fix VulkanQuery crash on exit #codereview rolando.caloca #codereview arciel.rekman #rb arciel.rekman Change 3988567 by Rolando.Caloca DR - vk - Support for packed global UBs on pci aperture heap Change 3988668 by Rolando.Caloca DR - vk - Remove old comments Change 3988956 by Marcin.Undak RecordPerformance: added option to skip building/cooking before tests #rb none #codereview arciel.rekman Change 3989161 by Yuriy.ODonnell Static analysis error fix Change 3989196 by Guillaume.Abadie Fixes a crash in light shaft's TAA pass. #jira UE-57366 Change 3989207 by Yuriy.ODonnell Refactored FRealtimeGPUProfilerFrame to avoid splitting profile events when calculating exclusive times of scopes. This allows tracing profiler to retain the hierarchical view of the data, while keeping CSV and GPU Stat system behavior intact. Change 3989469 by Rolando.Caloca DR - vk - Fix for bad index; fix for bad transition Change 3989772 by Yuriy.ODonnell Implemented timestamp calibration on Vulkan Change 3990040 by Marcus.Wassmer Aftermath enabled by default. Removed unnecessary warning for other vendors Change 3990064 by Mark.Satterthwaite Ensure that packed globals are reuploaded when the command-encoder is restarted - don't simply invalidate the existing parameters. This properly handles cases where a single logical render-pass is broken into multiple command-encoders and/or command-buffers - otherwise all shaders must reset all parameters each time. When we move between frames we *do* want to perform a full state reset though as previous frame globals are treated as invalid. Change 3990080 by Mark.Satterthwaite Change the way we invalidate the visibility buffer between command-buffers and command-encoders so that on iOS you can reuse the same buffer within the same command-buffer, but not across more than one. The code provides an exception to this rule when running under the MetalRHI validation tools which can break each draw call into its own buffer. Change 3990084 by Mark.Satterthwaite Get MetalStatistics compiling again. Change 3990381 by Arciel.Rekman Bring back D3D12 in RecordPerformance. Change 3991113 by Rolando.Caloca DR - Fix crash on RHI thread on mobile preview - Check RHI objects are not null in the PSO initializer Change 3991191 by Ryan.Vance #jira UE-55952 Reimplemented instanced stereo for forward lighting cull grid after the srv/ub clean up. Change 3991343 by Rolando.Caloca DR - Copy from 3911492 UE4 - Disabled parallel mobile bass pass by default. This is experiemental and not known to be useful on any mobile platform. Change 3991375 by Mark.Satterthwaite Proper copyright assignment in the mtlpp debugger header. Change 3993151 by Daniel.Wright Fix RTDF resource transition found by Rolando Change 3993818 by Rolando.Caloca DR - Missed file Change 3993923 by Krzysztof.Narkowicz Fixed crashes inside RemoveSpeedTreeWind() and RemoveSpeedTreeWind_RenderThread(). FStaticMeshComponentRecreateRenderStateContext didn't flush deferred render updates causing stale RenderData to be left: 1. Thumbnail manager called SetStaticMesh(nullptr), which added StaticMeshComponent to deferred render updates. 2. UStaticMesh::Build called FStaticMeshComponentRecreateRenderStateContext and destroyed DenderData, but didn't touch Thumbnail's manager StaticMeshComponent as it was nullptr. 3. This resulted in a StaticMeshComponent with stale RenderData pointer. #jira UE-54544 Change 3994033 by Rolando.Caloca DR - vk - Reworked layers & extensions, as we were not doing it properly - Remove -vulkanstandardvalidation and -novulkanstandardvalidation as they are not needed anymore Change 3994275 by Mark.Satterthwaite Change to linking against mtlpp via AddEngineThirdPartyPrivateStaticDependencies and marking its header with THIRD_PARTY_* macros in the vain hope that might convince the remote compilation code to distribute the module to the remote machine when building MetalRHI. #jira UE-57507 Change 3994365 by Mark.Satterthwaite Pilfer some code from the old MetalHeap file to handle calculating texture memory size on older macOS and iOS builds when running with stats or LLM enabled. #jira UE-57513 Change 3994382 by Rolando.Caloca DR - vk - Some missing locks during image tracking Change 3994422 by Rolando.Caloca DR - vk - Remove bogus shader format Change 3995530 by Rolando.Caloca DR - vk - Fix for crash when validation is enabled Change 3995531 by Rolando.Caloca DR - vk - Fix static analysis Change 3995532 by Rolando.Caloca DR - vk - Added support for r.Vulkan.SaveValidationCache Change 3995610 by Uriel.Doyon Texture Streaming Changes and Fixes: - Using the small FOV items (like scopes) now only affect visible primitives (through "r.Streaming.MaxHiddenPrimitiveViewBoost"). - Static components added after the level is registered in the streaming manager are now handled correctly (fixes the low quality on the chests) - Dynamic components do not need to register to the streaming manager anymore. - Optimized dynamic component management by removing duplicate entries in the update list. - Added a pregarbage collect pass to the dynamic component management to optimize GC handling. - Added a budget reset logic whenever the scene requirements change significantly. - PIE worlds now have correct visibility information. - Fixed possible invalid memory access when processing the streaming manager slave views. - Refactored the incremental level texture data build to prevent new components from being unhandled. - Removed StreamingManager callbacks for NotifyActorSpawned() and NotifyPrimitiveAttached() - Added a StreamingManager callback NotifyPrimitiveUpdated(), to be used whenever a primitive streaming state must be updated. #jira none Change 3995908 by Arciel.Rekman Fix compile errors when using new Vulkan queries. Change 3995990 by Arciel.Rekman More compile fixes to new Vulkan queries. - MSVC did not catch this, clang did. Change 3996101 by Rolando.Caloca DR - vk - Win32 compile fix Change 3996323 by Mark.Satterthwaite Use the right include path to export the mtlpp headers. #jira UE-57507 Change 3996392 by Arciel.Rekman Vulkan: fix crash on start when using new queries. - CommandBufferManager was not yet set at that point and the code in queries relied on it. Change 3996585 by Rolando.Caloca DR - Slight improvement to GL being black, but just a temporary 'workaround' as it's not correct. Change 3998806 by Arciel.Rekman Fix Linux build (UE-57602). #jira UE-57602 Change 3998866 by Arciel.Rekman SubwaySequencer: fix old shader platform name. Change 3998947 by Mark.Satterthwaite Silence deprecation warnings in CEF on macOS now that we've moved to 10.12 as the minimum. #jira UE-57577 Change 3998951 by Mark.Satterthwaite Fix last of the deprecation errors that I am aware of for macOS 10.12. #jira UE-57581 Change 3998984 by Mark.Satterthwaite Build mtlpp for iOS 9.0 not 9.3. #jira UE-57586 Change 3999065 by Rolando.Caloca DR - vk - Make sure we use version 1.0.0 #jira UE-57521 Change 3999071 by Arne.Schober DR - [UE-55433, UE-57361] Hack SNORM support in OpenGL by re-interpreting UNORM. Underlying data is always SNORM. #jira UE-55433, UE-57361 Change 3999494 by Rolando.Caloca DR - Enable r.UnbindResourcesBetweenDrawsInDX11 in debug - Clear compute resources when r.UnbindResourcesBetweenDrawsInDX11 is enabled Change 4000197 by Krzysztof.Narkowicz Mesh simplifier - normalize TexCoordWeights using min/max TexCoord range. This fixes precision issues for very big TexCoord values and allows to optimize for all TexCoord channels when channels have values of different magnitudes (e.g. non standard TexCoord data). #jira UE-54935 Change 4000305 by Yuriy.ODonnell Suppress PVS Studio warning V547 (Expression is always true) related to Aftermath Reported issue to PVS team and to NVIDIA. Confirmed false positive, fix coming in future PVS version (v6.24). #jira UE-57579 Change 4000853 by Arciel.Rekman Linux: fix not calling CrashReportClient (UE-57678). #jira UE-57678 Change 4001504 by Rolando.Caloca DR - vk - Fix transition Change 4002460 by Krzysztof.Narkowicz Toggle for contant shadow length in word space Exposed contact shadows to Blueprints #jira none Change 4002608 by Rolando.Caloca DR - vk - Fix static analysis - Fix potential debug image tracking crash - Comment out unused methods Change 4002615 by Rolando.Caloca DR - vk - Allow r.Vulkan.WaitForIdleOnSubmit to be set at startup (e.g. in ConsoleVariables.ini) Previously, if your map needed to UpdateSkyCaptureContents on startup, an ensure would fail if GWaitForIdleOnSubmit was set. PrepareForCPURead needs to wait for the command buffer to finish before trying to read the results back, but the wait has already happened when r.Vulkan.WaitForIdleOnSubmit is set. Trying to wait again correctly complains that the command buffer is not in the correct state. So, skip the WaitForCmdBuffer call when r.Vulkan.WaitForIdleOnSubmit is set. Change 4002640 by Rolando.Caloca DR - vk - Missing support for CVarDefaultBackBufferPixelFormat Change 4002919 by Guillaume.Abadie Implements DOF's temporal upsampling pass for better dynamic resolution stability. Change 4002984 by Guillaume.Abadie Integrates Sebastian Aaltonen's ALU optimisations for TAAU. Change 4003112 by Olaf.Piesche Fir for TBB stall (resulting in severe hitches and hangs in the editor with stats active); tested multiple scenarios and encountered no hitches. #tests QAGame PerformanceTest and RenderTest map with various stats on and off Change 4003159 by Mark.Satterthwaite Undo parts of changelist 3970553 - the ref-counted pointer approach to returning textures to the pool is not working as expected so we'll remove that. It'll be faster on the CPU without it and everything works thanks to the changes this CL made to the way textures were released. #jira UE-57538 Change 4003287 by zachary.wilson Adding reflection capture content to TM-LightingScenarios Change 4003395 by Arne.Schober DR - Fix unitzialised value when clicking Go To in the editor #jira UE-57048 Change 4003425 by Rolando.Caloca DR - vk - Fix for new occlusion queries Change 4003530 by Arne.Schober DR - Disable GPU Benchmark in headless configurations #jira UE-57673 Change 4003717 by Rolando.Caloca DR - vk - Fix for depth not store, stencil store Change 4003719 by Rolando.Caloca DR - Minor switch to render pass Change 4003720 by Mark.Satterthwaite Don't suballocate private memory buffers on Vega and only Vega as there is something wrong with the blits in those cases but I can't capture a GPU trace to find out what right now (the driver is broken) - could be a bug in my code but this works on Polaris and Nvidia so it will need to be filed as a radar for AMD. Remove the FMetalBufferChunk from FMetalBuffer and simply store a pointer to the owning Heap/Magazine allocator. The FMetalResourceHeap now calls a new Release function to return the buffer to the allocator which will be faster on the CPU. #jira UE-57659 Change 4003854 by Mark.Satterthwaite Undo parts of 3990064 and try a different approach to get the uniforms to upload and remain available in the right places. As the original bug has been lost to time we should keep an eye out for missing buffer bindings by running under the Metal validation layer periodically. #jira UE-57576 Change 4004709 by Rolando.Caloca DR - Support for D3D 11, 12 & Vulkan for UAVs off Index Buffers Change 4005149 by Guillaume.Abadie Adds shader permutation to avoid clamping input buffer UV in DOF's gather pass. Change 4005284 by Uriel.Doyon Resaved volume texture assets with proper engine version. #jira UE-57534 Change 4005286 by Guillaume.Abadie Reduces constant setup in DOF's gather pass. Change 4005359 by Rolando.Caloca DR - vk - Fix annoying warning Change 4005363 by Rolando.Caloca DR - Fix android not finding vulkan shaders Change 4005457 by Rolando.Caloca DR - vk - Fix swapchain crash Change 4005473 by Patrick.Kelly UE-57135: Editor crash if set Reflection Capture Resolution to be 64 and New a Default level Codde by Daniel Tested by Patrick Change 4005474 by Rolando.Caloca DR - vk - Remove glsl code from shaders. Packaged QAGame goes from 176MB to 162MB Change 4005759 by Krzysztof.Narkowicz Fixed a bug, where reflection capture build is called, even though we are in mobile preview mode. #jira UE-57743 Change 4005774 by Mark.Satterthwaite Update the wave intrinsics to avoid implicit bool->uint conversion that Apple don't like. #jira UE-57750 Change 4005974 by Mark.Satterthwaite Don't use cubemap array types on iOS Metal as they aren't available on all devices and we need to maintain backward compatibiliy for years to come. #jira UE-57083 Change 4006056 by Mark.Satterthwaite Remove the use of the PrimitiveType argument from Metal draw calls. #jira UE-57822 Change 4006139 by Mark.Satterthwaite - Move the render-pass functions into the MetalRHI implementation for later alteration. - Implement Index buffer UAVs for Metal - makes them more like vertex-buffers so this is one more step on the road to a unified buffer base-class implementation. Change 4006215 by Mark.Satterthwaite Metal's begin & end render/compute pass API implementation will take some time, but for now make it not depend on the parent stub implementation. Change 4006394 by Mark.Satterthwaite In lieu of a real instruction count just use the number of lines in the "Main" function of the shader as the instruction count for Metal. #jira UE-57551 Change 4006493 by Mark.Satterthwaite MetalRHI can currently support 4-component formats for Buffer UAVs - this might need some thought in the future as the API evolves but we might as well take advantage while we can. Change 4006495 by Daniel.Wright Integrate from Refactor branch * New FMaterialRenderProxy function GetMaterialWithFallback which provides both the FMaterialRenderProxy and FMaterial. Needed when falling back to default material, so that proxy and material resource match. * Local vertex factory uniform buffer Change 4006851 by Brian.Karis Fix for joined charts forming an L to inflate both axii. Thanks to Jess Kube of The Coalition. Change 4006852 by Brian.Karis Fix for hard coded reflection capture cube map size. Should fix light static light aliasing in captures Change 4006918 by Brian.Karis New ByteBuffer functionality. Memcpy and scatter upload. Can implement GPU side TArray reflection. Not yet used by checked in code. WIP optimization. Change 4007246 by Guillaume.Abadie Creates lower quality permutation for DOF's gathering pass, without Coc based weighting of the samples, and lower number of gathering ring for fast accumulator. Change 4007291 by Guillaume.Abadie Exposes more DOF scalability settings. Change 4007328 by Guillaume.Abadie Optimises DOF's half res only setup pass using gather4 Change 4007627 by Richard.Wallis Fix for when Magic Mouse cannot zoom in World Composition editor. Missing default SNodePanel::OnMouseMove behaviour. Tested using a classic 2xbutton + wheel mouse and a Mac MagicMouse. #jira UE-57030 Change 4007682 by Richard.Wallis No video when playing HLS streaming video on Mac. 2 Issues, FPS was zero making duration for video sample buffer nonsense and Video Track dimensions were going to zero on the AVAsset once fully initialized when playing HSL streams. Now cache relevant details and handle zero frame rate. Notes: - Caching the frame rate is not as important as we could look it up each time and fix for zero - ignoring that at the moment. - Assume we DO NOT want the FrameSize to be the last fetched video frame size from the AvfMediaVideoSampler as I think that is the video quality for streaming video and not the media frame size. - Renamed a variable in the AvfMediaVideoSample - was called FrameRate but it was the FrameDuration by that point. #jira UE-56734 Change 4007731 by Rolando.Caloca DR - Disable byte buffers on non-hlsl based platforms #jira UE-57851 Change 4007741 by Rolando.Caloca DR - Disable byte buffers on hlslcc platforms Change 4007782 by Mark.Satterthwaite Force Metal shaders, including the stdlib, to recompile. Change 4007918 by Rolando.Caloca DR - vk - Some static asserts Change 4008404 by Arciel.Rekman Do not crash on incompatible Vulkan drivers (UE-57521). #jira UE-57521 Change 4008442 by Daniel.Wright Better comments on ERHIFeatureLevel expectations Change 4008494 by Arne.Schober DR - moved bDeletedThroughDeferredCleanup before begincleanup to catch cases where the reference is added twice to the array. also removed finishcleanup as all they ever did was deleting the pointer anyway, and it sould be adfded if such functionallity is ever required fom outside of the regular destructor. #jira UE-57754 Change 4008730 by Mark.Satterthwaite After the most recent changes to handling uniform buffer dirty bits in MetalRHI we should guard against attempts to set an unbound uniform buffer. #jira UE-57870 Change 4008949 by Brian.Karis Fix compile warning Change 4008951 by Brian.Karis Added LTC LUT textures Change 4009326 by Guillaume.Abadie Compiles out DOF's gathering bokeh simulation on platform other than desktop. Change 4009380 by Krzysztof.Narkowicz Moved area light code before the contact shadows, so contact shadows use representative light's direction. Merged all contact shadows shader code. Contact shadows keep constant screen space length independent of FoV settings. Contact shadows for translucents. Contact shadows for eye. Change 4009555 by Guillaume.Abadie Splits DOFCocTile.usf in two. Change 4009999 by Yuriy.ODonnell MallocStomp can now be enabled on certain platforms using '-stompmalloc' command line argument. Previously it was necessary to modify MallocaStomp.h and re-compile the engine. Currently supported platforms: Win64, Mac, Linux. Replaced hard-coded page size with FPlatformMemory::GetConstants().PageSize. Change 4010288 by Rolando.Caloca DR - vk - Fix for vertex streams Change 4010289 by Krzysztof.Narkowicz D3D12 - fixed depth bounds bug, where depth bounds wasn't properly set to [0;1] after disabling. #jira UE-57510 Change 4010297 by Rolando.Caloca DR - vk - Remove some functions for android Change 4010315 by Rolando.Caloca DR - vk - Remove create info macro Change 4010451 by Rolando.Caloca DR - vk - Reuse samplers - Infiltrator goes from 5759 to 24 samplers! Change 4010627 by Rolando.Caloca DR - vk - Fix missing values for tracking swapchain validation Change 4011924 by Guillaume.Abadie Implements tile based early return optimisation on DOF's postfiltering method. Change 4011941 by Guillaume.Abadie Shaves some ALU in DOF's accumulator for LowQuality permutation. Change 4012093 by Yuriy.ODonnell Disable MallocStompOverrunTest() in static analysis config, as it intentionally performs an out-of-bounds access. Change 4012195 by Rolando.Caloca DR - vk - Fix for mobile backbuffer layout Change 4012202 by Rolando.Caloca DR - vk - Don't use staging buffers on UMA Change 4012467 by Rolando.Caloca DR - Remove redundant check Change 4012486 by Rolando.Caloca DR - Fix missing transition Change 4012518 by Guillaume.Abadie Implements fast shader permutation for DOF's TAA pass. Change 4013084 by Arciel.Rekman Fix for Linux clock discrepancy. - Causing at least one precision issue, possibly more. (Edigrating 4003273, 4012462 from //UE4/Dev-Editor/... to //UE4/Dev-Rendering/...) Change 4013266 by Uriel.Doyon Fixed crash when setting SceneDepthTextureNonMS and not having valid depth buffers in the SceneContext. Change 4013626 by Uriel.Doyon Fixed crash in the lighting build when creating a blueprint of the ALight and placing a light component in it. #jira UE-51672 Change 4013805 by Rolando.Caloca DR - Fix more missing transitions Change 4014128 by Arne.Schober DR - Do not create LocalVFUniformBuffer when running without MVF #jira UE-57929 Change 4014193 by Uriel.Doyon Editing component transforms now invalidate the component's lighting cache. #jira UE-48134 Change 4014282 by Rolando.Caloca DR - vk - Remove extra validation during dump Change 4014584 by Uriel.Doyon Duplicated static meshes now generate a new GUID to prevent possible issues with lightmass. #jira UE-49064 Change 4014604 by Uriel.Doyon UStaticMesh postduplicate now only generates a new GUID if !bDuplicateForPIE. Change 4015460 by Guillaume.Abadie Composes separate translucency within DOF's recombine pass. Change 4015571 by Guillaume.Abadie Refactors tonemapper to use global shader permutation API, that adds permutation for HDR output device rather than dynamic branching that some shader compiler are not very well optimizing. Change 4015984 by Krzysztof.Narkowicz Fixed crash inside DFAO resource allocation, when DFAO viewport has zero area. #jira UE-58000 Change 4016056 by Mark.Satterthwaite Fix Mac Metal shader compilation of texture cube arrays. Change 4016062 by Richard.Wallis Convert things like Space, Delete, F6 etc to unicode so they display correctly on the Mac menu rather than first letter of word. Added the default Mac commands to the GenericCommands so we get a Chord overwrite message and stop things like cmd+ q / w / h from getting bound. #jira UE-46999 Change 4016109 by Mark.Satterthwaite One unified Metal buffer implementation - will make further changes a heck of a lot easier. Change 4016221 by Patrick.Kelly UE-57617: Ensure changing viewmode to ShaderComplexity while in -game Change 4016238 by Guillaume.Abadie Makes clang happy again in Tonemapper. Change 4016309 by Mark.Satterthwaite More *_RenderThread implementations for MetalRHI. Change 4016414 by Mark.Satterthwaite And MetalRHI version of CreateStructuredBuffer_RenderThread... Change 4016498 by Mark.Satterthwaite Don't hold on to the uniform buffers bound to the hull shader when switching to a tessellated draw call as they'll have the wrong buffer layout. #jira UE-57930 Change 4017394 by Juan.Canada OpenGL: Fixed shading artifacts due incorrect UNORM/SNORM conversions in skin/skincache/computetangent shaderss. #jira UE-57691 Change 4017522 by Rolando.Caloca DR - vk - Remove unused code path (old mip generation detection) Change 4017539 by Rolando.Caloca DR - vk - Fix for sky lighting mips showing green on AMD Change 4017542 by Arciel.Rekman Moved appCountTrailingZeros to a non-SSE header (fixes ARM64 build). - Arguably WITH_SLI shouldn't apply to Linux on ARM but the fact that the function wasn't available is bad on its own. Change 4017827 by Guillaume.Abadie Optimises DOF's scattering cost by a third. Change 4017835 by Rolando.Caloca DR - Only allow a render pass to generate mips for one color render target Change 4017889 by Mark.Satterthwaite Cache all the Metal state objects to avoid hitting the API unnecessarily. Change 4018251 by Mark.Satterthwaite Fix broken rendering on Metal that tracked back to the innocuous looking changes in CL #4006495 (no blame attached - these changes are entirely reasonable) and cause various bugs in QAGame's TM-DistanceFields, ElementalDemo and probably more. Doesn't fix broken SpeedTree rendering :(. MetalRHI was allowing uniform buffers to blow away linear texture buffers when the constant buffer has been elided due to dead-code elimination. This problem can manifest without linear textures if the uniform buffer contains both constant data and a resource-table but the shader doesn't use any of the constant data. That's because Metal doesn't separate constant buffers from any other kind of buffer unlike D3D which separates all the slots out - and Metal doesn't provide enough buffers to emulate the D3D arrangement. So far this has only manifested in the MVF + Linear Texture case but a more robust solution will be necessary long term. Change 4018514 by Guillaume.Abadie Implements r.DOF.Scatter.MinCocRadius. Change 4018553 by Guillaume.Abadie Implements r.DOF.Scatter.MaxSpriteRatio to control the budget upperbound of DOF's scattering Change 4020369 by Yuriy.ODonnell Disable MallocStompOverrunTest in all static analysis configs (using USING_CODE_ANALYSIS macro) Previously was only disabled for PVS-Studio. Change 4020620 by Arciel.Rekman Fix XboxOne CIS (fallout of appCountTrailingZeros move). Change 4020949 by Guillaume.Abadie Configures DOF in scalability settings. Change 4021593 by Rolando.Caloca DR - vk - Support for Aftermath style api on AMD Change 4021740 by Rolando.Caloca DR - vk - Change log output Change 4022008 by Uriel.Doyon Fixed renderthread stalls when streaming texture mips on low end systems. Change 4022135 by Rolando.Caloca DR - vk - Fix last mip's layout during mip chain creation Change 4022607 by Jian.Ru Speculative fix for a bug where an invalid vertex buffer is deferenced #jira UE-56229 Change 4022890 by Rolando.Caloca DR - Fix reference count not getting released Change 4023540 by Mark.Satterthwaite Avoid some pointless retain/release calls on Metal Encoders. Change 4023796 by Marcus.Wassmer Tell users they are over the maximum size when allocating very large rendertargets. Change 4025337 by Yuriy.ODonnell Improved use-after-free detection mechanism and physical memory usage of MallocStomp on Windows. MallocStomp on Windows will now reserve virtual address space for every allocation and then commit physical pages only to the valid usable part. Physical pages will be unmapped on Free, but virtual address space will not be released and therefore will never be re-used. Virtual address space is allocated from the OS in blocks of 1GB and then linearly sub-allocated. This reduces VA space usage, as VirtualAlloc returns blocks on 64KB granularity even if we just need 4KB. As a small bonus, this also reduces number of syscalls per allocation. This dramatically increases accuracy of use-after-free detection, but consumes significant amount of memory for the OS page table. Virtual memory limit for a process on Win10 is 128 TB, which means we can afford to keep virtual memory reserved for a long time. Running Infiltrator demo consumes ~700MB of virtual address space per second. Additionally, committing physical pages only for the usable part of the entire virtual block reduces physical memory usage by ~30% compared to old behavior, which allocated and committed entire block of pages via BinnedAllocFromOS and then marks border page as non-accessible. Change 4026047 by Rolando.Caloca DR - Fix test/shipping #jira UE-58148 Change 4026150 by Krzysztof.Narkowicz Force proper ordering of buffer visualization materials - after tonemapping (so exposure doesn't influence it) and before editor stuff like icons. #jira UE-57992 Change 4026226 by Rolando.Caloca DR - Fix static analysis #jira UE-58150 Change 4026354 by Jian.Ru Debug check trying to catch a crash. Only enabled in editor build #jira UE-50111 Change 4026655 by Rolando.Caloca DR - Fix for static analysis #jira UE-58149 Change 4026763 by Rolando.Caloca DR - Remove references to defunct CCT to avoid confusing licensees Change 4027167 by Uriel.Doyon Fixed possible out of bound buffer access when serializing with FDuplicateDataWriter. #jira UE-56509 Change 4027850 by Jian.Ru Prevent log spam #jira UE-50111 Change 4029546 by Rolando.Caloca DR - Compile fixes Change 4029624 by Yuriy.ODonnell Addressed static analysis errors in MallocStomp - VirtualAlloc return value is now explicitly checked. - C6250 is suppressed, as VirtualFree does not release address space by design. Change 4030225 by Yuriy.ODonnell Static analysis warning fix: make sure declaration of Sleep() is consistent between Windows headers and TBB The complexity with this particular case is that the warning is generated in synchapi.h, which is included by some Windows headers. If a module includes TBB and then Windows platform headers, static analyzer will report this warning. Suppressing it would require wrapping all instances of Windows header includes in third-party macros. Current pragmatic solution is to modify the Sleep() declaration in TBB header to be consistent with Windows and to report the issue to Intel for a permanent fix. Change 4030440 by Rolando.Caloca DR - Fix crash on mobile #jira UE-58222 Change 4030570 by Daniel.Wright Allow null SRV's in uniform buffers for feature levels that don't support SRV's in shaders Change 4030618 by Arne.Schober DR - missing tangent/normal sign conversion after integration from main #jira UE-58224 Change 4031588 by Rolando.Caloca DR - vk - Fix compile error when missing vkCmdWriteBufferMarkerAMD Change 4032145 by Mark.Satterthwaite Fix UE-58268 by only emitting the base_instance/base_vertex variables required to fix-up the instance/vertex ID values to match D3D when the Metal version is 1.1 or higher, earlier versions don't support these features. #jira UE-58268 Change 4032209 by Rolando.Caloca DR - Fix crash on EngineTest: Mesh Batch's UserIndex is not a union anymore Change 4033178 by Guillaume.Abadie Fixes FXAA sampling outside viewports, that was causing black outline on bottom and right edge of the screen when ViewSize != BufferSize, problematic for some screenshot automated test. #jira UE-58151 Change 4034489 by Daniel.Wright Fixed UStaticMeshComponent modifying its UStaticMesh when undoing a change. This caused a crash when other static mesh components using the same mesh asset were rendered, since their rendering state was not recreated. A component should not modify its asset during PostEditUndo. * This behavior has been present for a long time but was previously hidden because only the vertex factory of the mesh asset is cached in static draw lists, not any of its rendering resources (eg vertex declaration). Change 4035157 by Uriel.Doyon Fixed deadlock in the streaming code when running with -onethread. #jira UE-58299 Change 4035198 by Rolando.Caloca DR - vk - Fix issue when an older SDK was installed, UBT would pick it (should pick the newer of ThirdParty\Vulkan or installed SDK). #jira UE-58267 Change 4035730 by Arne.Schober DR - Fix missing Fog parameters during LightScattering Injection #jira UE-57608 Change 4035843 by Daniel.Wright Reimplemented support for EyeAdaptation node in opaque materials Change 4036837 by Marcus.Wassmer Replace some of the screenshots to match new un-tonemapped buffer visualization Change 4036980 by Rolando.Caloca DR - vk - Fix deadlock contention during mem allocation on Linux Change 4037225 by Guillaume.Abadie Fixes jittering selection outline. #jira UE-58350 Change 4038056 by Marcus.Wassmer roll back changelist 4026150. breaks a bunch of automated tests by cutting off half the image. Change can go back in later with that part fixed also Change 4038296 by Jian.Ru Static analysis fix #jira UE-58377 Change 4038402 by Ben.Marsh Suppress IncludeTool warnings caused by CL 3998947. Change 4038514 by Arne.Schober DR - Fix case with MVF where instance offset is not supported by the API (in this case only foliage OpenGL and TvOS), usually the buffers are offsetted instead but with MVF we do not use offsetted buffers, therfore the offset needs to be passed into the shader although we are drawing with offset of 0. #jira UE-57652 Change 4038747 by Marcus.Wassmer Back out changelist 3853645, causing us to lose shadows in the shaderhair test Change 4040138 by Rolando.Caloca DR - Fix compile warning Change 4041614 by Rolando.Caloca DR - vk - Fix for Oculus module #jira UE-58267 Change 3810277 by Daniel.Wright Ray Traced Distance Field shadows use a two pass tile culling algorithm with no tile max - fixes flickering from tile overflow in dense areas or with a low sun angle. Costs .2ms on PS4. The distance field scene buffers now use float4 on PS4 and Xbox, saves .1ms on PS4. Change 3817029 by Uriel.Doyon Added UVolumeTexture, which use 3D textures. Compressed formats are supported on DX11, DX12, PS4 and XB1. Projects targetting OpengGL don't have access to compressed formats (as the implementation has texture tiling issues). Add "r.AllowVolumeTextureAssetCreation" set as 0 by default, which controls whether volume texture can be sampled in materials and whether they can be created from 2D texture assets. Platform not supporting BC7, will now fallback on RGBA8 instead of DXT to preserve quality, in an attemps to increase usage of BC7. #jira UE-32263 Change 3819960 by Michael.Lentine Expose UEPhysics Clothing Parameters through UI. Change 3823401 by Rolando.Caloca DR - Add NumQueriesInBatch to RHIBeginOcclusionQueryBatch Change 3844805 by Arne.Schober DR - Increased Intermediate normal of Umodel and Skelmesh from 8bit Unorm Compressed to float. A resave/rebuid/reimport of the meshes is recommended to recover some lost precision. Fixed an issue with compressed (packed) normals on the GPU which were off by one integer representation. Also switched from UNORM to SNORM to get a discrete zero representation and removed some mads from all the VertexShaders. Change 3847283 by Marcus.Wassmer Extra fixes from Uriel Change 3876607 by Rolando.Caloca DR - Use render passes when running occlusion queries - Removes the RHI(Begin|End)OcclusionQueryBatch API Change 3903799 by Daniel.Wright [Integrate] Pass Uniform Buffers * All pass-constant shader inputs should go into the appropriate pass uniform buffer, instead of being set per-draw * Moved many per-draw base pass parameters over to the Base Pass Uniform Buffer * Opaque and Translucent base pass shaders have different uniform buffers, which allows compile errors when accessing an invalid resource (eg GBuffer in Opaque), instead of silently falling back to GBlackTexture Uniform buffers can now contain nested structs with UNIFORM_MEMBER_STRUCT() * This allows composing a uniform buffer at a particular update frequency out of many features, with encapsulation of each feature's parameters in a struct. * Eg deferred fog uses FFogUniformParameters, but so does translucency in the base pass, where FFogUniformParameters is reused nested inside the base pass uniform buffer. * Resources can now be located anywhere in the uniform buffer. Padding is inserted to the cbuffer representation to keep memory layouts matching. In the future the cbuffer could be compacted. * RemoveUniformBuffersFromSource() which works around HLSLCC lack of struct initializers now handles nested structs Change 3917500 by Rolando.Caloca DR - Change depth bounds so only the enable bit is in the PSO, allow min/max to be dynamically modified Change 3964907 by Guillaume.Abadie Implements RectList topology support in RHI. Change 3979171 by Mark.Satterthwaite Copying //Tasks/UE4/Dev-UERNDR-354-mtlpp to Dev-Rendering (//UE4/Dev-Rendering): Rewrites MetalRHI in terms of mtlpp, which is a C++ wrapper library built around Metal's Objective-C API that attempts to reduce overheads and eliminate resource lifetime errors. Regarding mtlpp: - The mtlpp library uses C++ constructor/destructor and smart-pointer style management of Objective-C retain/release calls to prevent over- and under-release problems. - To reduce Objective-C overheads the mtlpp library caches the internal C-function that implements the Objective-C selectors for the most commonly used Metal protocol types and calls the function directly - this avoids objc_msgSend which does this look-up dynamically and thus improves CPU performance slightly. - Another advantage is that mtlpp provides infrastructure to extend the Metal API slightly to help improve MetalRHI - the two important aspects are mtlpp::CommandBufferFence which provides a consistent CPU<->GPU synchronisation primitive and sub-buffer allocations from mtlpp::Buffer which allow for far superior memory management. - Validation functionality is also provided by mtlpp to detect CPU vs. GPU data races and resource lifetime validation - this is expensive and is thus optional and compiled out from Shipping binaries that should be used when performance is most critical. The validation only works between resource modification and *submitted* command-buffers - anything that is being actively encoded on the CPU is ignored and it remains the responsibility of the application to validate the order of operations when encoding. Apple Platform: - LLM support which tracks Objective-C objects is enabled only on macOS - we don't have the necessary libraries to intercept and override the internal system calls on iOS. MetalRHI: - All the types are switched over, (mostly) insuling the external API from the horror of Metal and Objective-C. - Buffers are now managed quite differently, small buffers are allocated from a magazine allocator that allocates in fixed blocks from a larger parent buffer, intermediate sized buffers are allocated from a simple heap allocator that wraps a larger buffer and anything of reasonable size (>2Mb) will use the pooled allocator. This *radically* reduces the number of buffer resources, by as much as a factor of 10, because they are now sub-allocated without the need to use MTLHeap or MTLFence so they are performance equivalent to the existing implementation on the GPU and much faster on the CPU. Total memory use is approximately the same. - Vertex & index buffer management has been updated to reflect changes in the management and to avoid reallocating buffers which provide a Linear Texture (for SRVs) unless strictly necessary. This ensures that even in cases where a dynamic buffer is updated multiple times in a frame it will still work acceptably well. - The Metal ring-buffer implementation is completely different again, this time it can use Managed memory on macOS which allows for much better performance on eGPUs which will be more and more important for Mac. - Everyone that needs to wait on a command-buffer fence (rather than a command-buffer itself) now use mtlpp::CommandBufferFence, which prevents race conditions between the different command-buffer handlers (which sometimes execute out of order). - LLM tracking should now report the same data as the MetalRHI stats group for buffer & texture allocations - there is no segmentation for Vertex/index/Structured/Uniform allocations in Metal so these numbers are going to be wrong and will need to be rethought. - What will be unseen are the number of small but important resource usage fixes that avoid stale resources from being bound to the device after the point at which they become invalid. This should eliminate a class of errors where the GPU uses a resource pointer that is modified by the CPU and was necessary to satisfy the new mtlpp validation code. Other: - Remove the Metal focused workarounds from the ClothBuffer resource binding and related vertex-buffer SRV - these were put in when MetalRHI/MetalShaderFormat couldn't handle float->uint conversions correctly and they should now. - Fix a validation error caused by trying to render a 0-sized scissor rect which is invalid in Metal and simply pointless elsewhere. - Consistency of disabling the Manual Vertex Fetch behaviour in shaders. #jira UERNDR-354 Change 3979312 by Rolando.Caloca DR - Remove bogus bKeepOriginalSurface parameter in CopyToResolveTarget Change 4005122 by Rolando.Caloca DR - Support for PS4 Index Buffer UAVs Change 4016298 by Guillaume.Abadie Fixes DOF hybrid scattering on platforms that supports RectList topology. Change 4018575 by Guillaume.Abadie Optimises DOF's reduce pass when doing scattering compilation. Change 4020317 by Guillaume.Abadie Implements WaveBroadcastIntrinsics.ush. [CL 4042226 by Marcus Wassmer in Main branch]
2018-05-01 10:36:33 -04:00
{
extern void EndOcclusionQueryBatch();
EndOcclusionQueryBatch();
}
// Drop depth and stencil to avoid export
if (RenderPassInfo.DepthStencilRenderTarget.DepthStencilTarget)
{
ERenderTargetActions DepthActions = GetDepthActions(RenderPassInfo.DepthStencilRenderTarget.Action);
ERenderTargetActions StencilActions = GetStencilActions(RenderPassInfo.DepthStencilRenderTarget.Action);
bool bDiscardDepth = GetStoreAction(DepthActions) == ERenderTargetStoreAction::ENoAction;
bool bDiscardStencil = GetStoreAction(StencilActions) == ERenderTargetStoreAction::ENoAction;
if (bDiscardDepth || bDiscardStencil)
{
RHIDiscardRenderTargets(bDiscardDepth, bDiscardStencil, 0);
}
}
FRHIRenderTargetView RTV(nullptr, ERenderTargetLoadAction::ENoAction);
FRHIDepthRenderTargetView DepthRTV(nullptr, ERenderTargetLoadAction::ENoAction, ERenderTargetStoreAction::ENoAction);
SetRenderTargets(1, &RTV, &DepthRTV);
#if PLATFORM_ANDROID
if (RenderPassInfo.SubpassHint == ESubpassHint::DeferredShadingSubpass &&
FOpenGL::SupportsPixelLocalStorage() && FOpenGL::SupportsShaderDepthStencilFetch())
{
glDisable(GL_SHADER_PIXEL_LOCAL_STORAGE_EXT);
}
#endif
Copying //UE4/Dev-Rendering to //UE4/Dev-Main (Source: //UE4/Dev-Rendering @ 4041614) #lockdown Nick.Penwarden ============================ MAJOR FEATURES & CHANGES ============================ Change 3774677 by Arne.Schober DR - Deprecated SetLocal from the RHICmdlist Fixed some unnecessary PSO collisions. Change 3809579 by Chris.Bunner Back out changelist 3774677. #jira UE-53483 Change 3810363 by Mark.Satterthwaite More random fixes to mtlpp: most important is the extension to Buffer that allows creation of sub-buffers that are merely views onto a sub-range of the parent. These sub-buffers are valid to use throughout the mtlpp API with two exceptions: they may not be used for visibilityResultsBuffers and Set*BufferOffset functions cannot take this offset into account (as the encoder does not hold onto the buffers and I don't want it to). In the case of Set*BufferOffset the caller has to know what is going on and in the case of visibilityResultsBuffers it'll just assert as it isn't sensible. This makes it *much* easier to do things like sub-buffer allocation, though the caller must be aware of the alignment restrictions of their intended usage as they are not possible to enforce. For example, a call to SetVertexBuffer requires an offset alignment must match the alignment of the data-type in the shader for "device" resources, or for "constant" data it must be max(4, sizeof(datatype)) on iOS and 256 on macOS. This should allow for much more tightly packed sub-allocations than earlier approaches, though older drivers (e.g. Mac OS X 10.11) enforce only the coarser "constant" data restriction everywhere. Change 3810407 by Marcus.Wassmer PR #4322: ShadowSetup Bug Fix: Only stencil mask drawn meshes (Contributed by DSDambuster) Change 3810676 by Guillaume.Abadie Makes r.Test.SecondaryUpscaleOverride work with any arbitrary pixel size. Change 3810696 by Guillaume.Abadie Adds support for #include "../MyFile.ush" in the shader compiler. Change 3810698 by Guillaume.Abadie Implements enum class based shader permutation dimension. Change 3810699 by Guillaume.Abadie Implements Diaphragm DOF ground work. Change 3811536 by Guillaume.Abadie Pulls the trigger on CircleDOF's setup pass for DiaphragmDOF. Change 3811958 by Mark.Satterthwaite More fixes for mtlpp. Change 3811964 by Mark.Satterthwaite Only views onto a mtlpp::Buffer should return a valid parent-buffer. Change 3812604 by Guillaume.Abadie Changes Diaphragm DOF's source file layout. Change 3812827 by Mark.Satterthwaite More missing/broken functionality in mtlpp fixed and fixed obvious leaks. Change 3812920 by Guillaume.Abadie Adds support for per mip level UAV in FSceneRenderTarget. Change 3812926 by Mark.Satterthwaite Change the way we handle mtlpp resource construction to avoid leaks. Change 3812960 by Rolando.Caloca DR - vk - Disable DFGI Change 3812968 by Rolando.Caloca DR - Linker fix Change 3813318 by Mark.Satterthwaite Fix linear texture allocation from a buffer sub-view. Change 3813326 by Mark.Satterthwaite Fix another Metal mtlpp sub-buffer allocation failure. Change 3813328 by Guillaume.Abadie Removes global samplers in TAA for GL4, Vulkan and Switch. Change 3813937 by Rolando.Caloca DR - Fix logs not getting dumped when r.DumpSCWQueuedJobs is on Change 3813947 by Rolando.Caloca DR - noshaderworker should override r.XGEShaderCompile Change 3817017 by Uriel.Doyon Fixed texture editor black screen #jira UE-53653 Change 3818568 by Rolando.Caloca DR - Fix log when shader jobs crash - Move log10 to common - Added COMPILER_VULKAN define Change 3818603 by Uriel.Doyon Fix to static analysis warning Change 3818623 by Rolando.Caloca DR - Workaround hlslcc loop unrolling bug Change 3819070 by Uriel.Doyon Fix to stat duplication. Change 3819105 by Uriel.Doyon Refactored volume sample shader to avoid using texture dimension. Change 3819136 by Rolando.Caloca DR - vk - Per platform files (empty) Change 3819180 by Rolando.Caloca DR - vk - Move defines out of config into per platform Change 3819247 by Rolando.Caloca DR - vk - Remove more defines into platform settings Change 3819318 by Rolando.Caloca DR - vk - Fixes for linking Change 3819868 by Rolando.Caloca DR - vk - Linux & Android fixes Change 3819873 by Guillaume.Abadie Adds support for PermutationId on r.DumpShaderDebugInfo=1 Change 3819940 by Rolando.Caloca DR - vk - Fix Linux issues Change 3819956 by Rolando.Caloca DR - vk - Invalid check Change 3819961 by Michael.Lentine Hide attributes when plugin is not present Change 3819980 by Rolando.Caloca DR - vk - Standard validation always Change 3820039 by Rolando.Caloca DR - vk - Fix invalid ensure Change 3820326 by Rolando.Caloca DR - vk - Linux compile fix Change 3820422 by Michael.Lentine Add back GBufferAO. Change 3820433 by Rolando.Caloca DR - Fix D3D12 crash on 20 thread (10x2 cores) machines Change 3821677 by Rolando.Caloca DR - vk - Win32 compile fix Change 3821961 by Rolando.Caloca DR - Vulkan uses real UB by default on non-Android Change 3821968 by Rolando.Caloca DR - vk - Update glslang 1.0.65.1 Change 3821969 by Uriel.Doyon Added support for stat groups that must be sorted by name. Defined by DECLARE_STATS_GROUP_SORTBYNAME. Change 3821983 by Rolando.Caloca DR - vk - Change to static array (0.1ms on 10k draw calls) Change 3824141 by Rolando.Caloca DR - vk - Fix static analysis - Bumped up some (c) 2017->2018 Change 3824355 by Rolando.Caloca DR - vk - Accessor to find out if a cmd buffer has been submitted Change 3824420 by Rolando.Caloca DR - Sanity check number of queries per batch on D3D11 as to not break other RHIs Change 3824463 by Rolando.Caloca DR - Removed dummy ensure for D3D12 Change 3824609 by Rolando.Caloca DR - vk - Linux compile fix Change 3826074 by Mark.Satterthwaite Start IMP-caching the various descriptor types in mtlpp. Change 3826098 by Rolando.Caloca DR - vk - Dump layer compile fixes Change 3826113 by Rolando.Caloca DR - vk - Missing dump functions Change 3826302 by Rolando.Caloca DR - vk - Compile fix - Change dump handles to %p Change 3826635 by Mark.Satterthwaite Forward declarations required for mtlpp compilation without exposing Metal headers - plus fixes to the mtlpp test compiler. Change 3827072 by Mark.Satterthwaite Switch some more mtlpp descriptors over to IMPTables from objc_msgSend. Change 3827909 by Guillaume.Abadie Replaces diaphragm DOF's prefiltering with LDS bank coherent bilateral reduction, and implements 1/8 res background gathering pass. Change 3827952 by Guillaume.Abadie Updates copy right to year 2018 on diaphragm DOF's new files. Change 3828055 by Rolando.Caloca DR - vk - Rename in prep for changes Change 3828229 by Guillaume.Abadie Avoids to log multiple time global shader type name that have multiple permutations when verifying global shader map. Change 3828427 by Guillaume.Abadie Reimplements Max3x3 gathering post filtering for Diaphragm DOF with proper shader permutation. Change 3829979 by Guillaume.Abadie Fixes a color NaN source in diaphragm DOF's TAA pass. Change 3830116 by Rolando.Caloca DR - vk - Fix GPU queries/frame time on old system - New system in place, disabled temporarily Change 3830169 by Rolando.Caloca DR - vk - Fix async pso creation crash Change 3830193 by Rolando.Caloca DR - vk - CPU RHI thread improvement Change 3830291 by Guillaume.Abadie Automatically lower the number of gathering rings on background half res gather pass as far CoC is getting smaller. Change 3830300 by Rolando.Caloca DR - vk - Static analysis fix: Split VulkanCommon.h out of VulkanConfiguration.h Change 3830589 by Mark.Satterthwaite In mtlpp cache the IMPTables for all the Metal @protocol's that are dependent on the MTLDevice, this avoids a mutex & map lookup. Also make all the concrete types store their IMPTable statically as it won't change. Change 3830793 by Mark.Satterthwaite Fix a small number of bugs introduced with the mtlpp descriptor and table caching. Change 3831491 by Jian.Ru Fix driver version unknown #jira UE-53688 Change 3832335 by Rolando.Caloca DR - vk - Change include Change 3832550 by Rolando.Caloca DR - vk - Occlusion query rewrite WIP Change 3832589 by Rolando.Caloca DR - vk - Minor refactor to pools in prep for timestamps Change 3832618 by Rolando.Caloca DR - vk - Do not block timestamp queries Change 3832636 by Rolando.Caloca DR - vk - Fix old timestamp queries Change 3833138 by Rolando.Caloca DR - vk - Fix timestamp queries Change 3833249 by Rolando.Caloca DR - vk - Test lock Change 3833667 by Rolando.Caloca DR - vk - Old queries wait on the RHI thread now instead of the driver (disabled) Change 3833907 by Daniel.Wright Fixed NextStartOffset UAV index out of bounds Change 3833918 by Daniel.Wright D3D12 RHI: only refcount uniform buffers if GRHINeedsExtraDeletionLatency is false, which is no longer the case for PC or Xbox. The refcounting was heavy on performance as reported by a licensee because FRHIResource uses atomics for refcounting, which is only necessary when GRHINeedsExtraDeletionLatency is disabled. Change 3834852 by Rolando.Caloca DR - vk - Missing file Change 3834858 by Guillaume.Abadie Implements r.DOF.MinimalFullresBlurringRadius Change 3834979 by Rolando.Caloca DR - vk - Fix Change 3836117 by Rolando.Caloca DR - vk - Update to 1.0.65.1 Change 3836122 by Rolando.Caloca DR - vk - Added r.Vulkan.SubmitOcclusionBatchCmdBuffer - Added new error codes/messages Change 3836421 by Mark.Satterthwaite For the purposes of debugging and conformance testing mtlpp make it possible to compile *without* the IMP cache so that we call the underlying Objective-C. Change 3836896 by Uriel.Doyon Fixed concurrency and exit issues around d3d12 pipeline states on windows. Change 3837385 by Rolando.Caloca DR - vk - Dump memory on OOM Change 3837427 by Rolando.Caloca DR - vk - Change some arrays to array views Change 3837800 by Guillaume.Abadie Implements SHADER_PERMUTATION_RANGE_INT to make contiguous integer permutations that does not start to 0. Change 3838128 by Rolando.Caloca DR - vk - Support for non-cached memory types Change 3838540 by Guillaume.Abadie Refactors Diaphragm DOF's CoC tile buffer under a single API for better maintainability. Change 3838731 by Rolando.Caloca DR - vk - Descriptor pools per command buffer pool (turned off) Change 3838961 by Rolando.Caloca DR - vk - Use ring buffer for per frame uniform buffers - Enable descriptor pools per layout recycled per command buffer Change 3839087 by Rolando.Caloca DR - vk - Compile fixes for Android Change 3839106 by Marcus.Wassmer PR #4413: Removing unnecessary call to FString::ToLower (Contributed by gsfreema) Change 3839252 by Mark.Satterthwaite Fix mtlpp::Resource move operators. Change 3839426 by Marcus.Wassmer Duplicate 380972 Make PC GPU Benchmarks more reliable Change 3840041 by Guillaume.Abadie Fixes shader compilation failure in TAA with alpha channel through post processing support. Change 3840257 by Chris.Bunner Swapping a mul() to * in HLSLTranslator::Dot to allow scalar transformations per a UDN ticket. Change 3840308 by Rolando.Caloca DR - vk - Support for UB & non-UB on emulation mode Change 3840586 by Rolando.Caloca DR - Copy 3840577 Fix for CPUs with more than 16 cores Change 3840671 by Rolando.Caloca DR - vk - Copy from 3840663 Fix for layout ensure on HMD projects on Vulkan Change 3840980 by Rolando.Caloca DR - vk - Android compile fixes Change 3841989 by Guillaume.Abadie Slices Diaphragm DOF's Gather pass in multi shader files, and CFLAG_StandardOptimization flag for faster iteration time. Change 3842216 by Guillaume.Abadie Fixes DDOF's foreground alpha channel. Change 3842217 by Guillaume.Abadie Implements r.DOF.MaximalForegroundBlurringRadius Change 3842353 by Guillaume.Abadie Allows to disable foreground gathering with r.DOF.MaximalForegroundBlurringRadius=0 Change 3842747 by Rolando.Caloca DR - vk - Missing use of GPoolSizeVRAMPercentage - Support for smaller allocations if page size is not available Change 3842791 by Rolando.Caloca DR - vk - Use 95% of available GPU memory to handle some fragmentation Change 3843690 by Guillaume.Abadie Fixes diaphragm DOF's foreground after all this refactoring. Change 3844439 by Guillaume.Abadie Improves Coc dilate pass to make the gather pass as fast as possible, but still without artifacts caused by the fast gathering optimisation. Change 3844946 by Mark.Satterthwaite rd_route v1.1.1 with attached TPS approval. For macOS function interposition which is useful for debugging and the occasional workaround. Change 3845164 by Mark.Satterthwaite Add LLM support for macOS, including tracking of memory allocated in Objective-C. This makes use of runtime method swizzling in the Objective-C runtime and the rd_route library I added for Richard Wallis, which allows for arbitrary runtime function interposition and allows me to hook the custom allocators used in Apple's many Objective-C frameworks on which the whole macOS edifice is built. Objective-C objects are charged to the calling scope as they are too common to impose their own without murdering frame rate. We would need a TPS approval for an iOS function interposition library for this to work fully on iOS, if desired in the short term discarding LowLevelFree events that aren't in the map rather than asserting will workaround the problem. Change 3845849 by Marcus.Wassmer Fix clang and some normal refactor errors Change 3846026 by Rolando.Caloca DR - vk - Descriptor set allocation scheme rewrite - Type hash for each pool - Desc sets Pool on device Change 3846169 by Rolando.Caloca DR - vk - Remove old code for non-layout descriptor set pools Change 3846205 by Mark.Satterthwaite Disambiguate the PatchControlPointOut struct definitions in Metal tessellation shaders at Apple's suggestion to avoid a metallib gotcha. Change 3846346 by Arne.Schober DR - Missing Vector instructions Change 3847037 by Arne.Schober DR - Fix issue with GPU skincache where the offset of the clothbuffer is not relative to the offset of the actual vertexbuffer. Fixed MorphTarget Skincache Offset mixxup Change 3847275 by Marcus.Wassmer Copying MGPU to Dev-Rendering (//UE4/Dev-Rendering) Change 3847464 by Rolando.Caloca DR - vk - Fix static analysis warning Change 3847707 by Michael.Lentine Only use MorphTargetOffset when the shader enables morph targets. Change 3848533 by Richard.Wallis Handle Metal adding FirstInstance into [[ instance_id ]] which is different to other APIs. SV_InstanceID and SV_VertexID should now have their respective base instance and base vertex ID's subtracted before use in the shader. #jira UE-51716 Change 3848625 by Richard.Wallis Compile Fix Change 3848725 by Rolando.Caloca DR - Remove use of Build/SetLocalGraphicsPipelineState Change 3848797 by Rolando.Caloca DR - Deprecate Build/SetLocalGraphicsPipelineState Change 3849237 by Arne.Schober DR - AddCustom Ver for ModelVertex Serialization Change 3851247 by Rolando.Caloca DR - vk - Util functions Change 3851523 by Arne.Schober DR - Update Reflection Comparission shot from the BuildFarm. Change 3851859 by Rolando.Caloca DR - vk - Skip loader Change 3851889 by Krzysztof.Narkowicz Removed lights with lighting channels out of tiled deferred light list. Tiled deferred lights do not support lighting channels and it's wasn't worth to add extra complexity to this shader in order support this special case. #jira UE-51512 Change 3852181 by Rolando.Caloca DR - vk - Linux compile fix Change 3852547 by Uriel.Doyon Fixed Pre-Exposure shader compilation and Temporal AA issue. #jira UE-54276 Change 3852637 by Arne.Schober DR - Fixing Normal Automated Test Result Change 3853167 by Richard.Wallis AvfPlayer - support for streaming media. Due to an operator new/delete mismatch in Apples CFNetwork - we've had to change out one of that framework allocators using rd_route to avoid the memory corruption. #jira UE-35637 Change 3853447 by Chris.Bunner Fixing typos. Change 3853645 by Krzysztof.Narkowicz Fixed light functions on subsurface materials Removed strange code from blending between static and dynamic shadows #jira UE-50275 Change 3853660 by Rolando.Caloca DR - Fix OpenGL overwriting texture samplers on forward renderer Change 3853945 by Mark.Satterthwaite Duplicate #3831616 Fix the black ground scattering on Metal - we've had issues with the atmospheric fog calculations for a long time - one or more intermediate operations generates different precision on Metal so we end up passing -ve values into sqrt which then generates NaN/INF. For Metal when compiling this file and this file only #define sqrt() to sqrt(abs()) so that we don't see anymore unexpected black in atmospheric rendering. This is far from ideal but I don't want to make abs all inputs into every sqrt because AFAIK this is the only case where we have an issue, and until we to investigate each intermediate calculation that isn't ridiculously, soul-crushingly tedious, it isn't practical to identify the source of the error. #jira UE-53720 Change 3853966 by Mark.Satterthwaite Duplicate #3835852 Fix tessellation shaders in Metal with Manual Vertex Fetch enabled: - The control points idnex buffer shouldn't collide with anything else. - We can't use the optimisation of loading texture width & height from the buffer meta-table in tessellation shaders as the combined stages don't guarantee not to clobber unused buffer slots and screw it up when we use linear textures. #jira UE-53851 Change 3854250 by Uriel.Doyon Fix fbx automation tests Change 3854736 by Uriel.Doyon Added a tooltip to the EV100 slider in the exposure menu. Using game settings now disables the slider. #jira UE-53945 Change 3855047 by Jian.Ru Fix DFAO getting NANs when samples out of ViewRect #jira UE-54403 Change 3858197 by Krzysztof.Narkowicz View frustum shadow caster culling for pointlights/spotlights #jira UE-54381 Change 3860081 by Krzysztof.Narkowicz Tighter bounding sphere for a spotlight Replaced IntersectSphere(LightProxy->Origin, LightProxy->Radius) with LightProxy->SphereBounds for tighter culling of spotlights Directional light GetBoundingSphere() now everywhere returns Sphere((0,0,0),HALF_WORLD_MAX) for consistency and proper SphereBounds #jira UE-54258 Change 3860324 by Mark.Satterthwaite Update the macOS deployment target version to 10.12 from 10.11 as we officially ended support for El Capitan a while ago. Should mean that libraries compiled for 10.12 and up won't cause link warnings. Change 3860945 by Arne.Schober DR - Fix not releaseing SRV on render thread for FPositionVertexBuffer, FStaticMeshVertexBuffer, FColorVertexBuffer, FStaticMeshInstanceBuffer. #jira UE-54587 Change 3861129 by Jian.Ru Prevent distance culled objects from casting distance field direct shadows #jira UE-54533 Change 3861502 by Jian.Ru Exclude distance culled objects from DFAO calculation #jira UE-54533 Change 3862243 by Krzysztof.Narkowicz Changed radius of a directional light's bounding sphere from HALF_WORLD_MAX to WORLD_MAX in order to encopass entire WORLD_MAX box Change 3863476 by Krzysztof.Narkowicz Added BuildReflections option to ResavePackages commandlet #jira UE-54581 Change 3863717 by Rolando.Caloca DR - vk - Missed using pipeline cache on compute PSOs Change 3865332 by Arne.Schober DR - Fix UE-52356 Bone Weight Change 3866220 by Rolando.Caloca DR - vk - Fixed GetNativeResource missing on textures - Added support for -preferNvidia|AMD|Intel - Added VulkanRHIBridge.h - Minor fixes Change 3866222 by Rolando.Caloca DR - vk - Missed file Change 3866951 by Krzysztof.Narkowicz Fixed FreezeRendering on non editor builds: ComputeAndMarkRelevanceForViewParallel was calling FrozenMatricesGuard on multiple threads, reading and writing view matrices state in parallel. #jira UE-53640 Change 3867231 by Guillaume.Abadie Adds alpha mode to allow the tonemapper to passthrough the alpha channel for broadcast industry. Change 3867233 by Guillaume.Abadie Fixes a compilation failures in TAAU with r.PostProcessing.PropagateAlpha==2 Change 3867594 by Daniel.Wright Removed EditorOnlyDefaultMaterials, which added 79s of shader compilation during startup Added a dialog when opening the Material Editor on a Default Material, warning of advanced workflow Preventing Material Editor Apply or Save for a Default Material when the preview material has compilation errors Change 3870048 by Daniel.Wright Cleaned up formatting in TranslucentRendering from merges Change 3870106 by Krzysztof.Narkowicz Fixed some FArchive Tell()/Seek() 64bit->32bit truncations Change 3870211 by Rolando.Caloca DR - vk - Added -vulkanvalidation=N/-vulkanstandardvalidation/-novulkanstandardvalidation to set validation layer behaviour from cmd line Change 3870225 by Rolando.Caloca DR - vk - Some platforms do not use a standard swapchain Change 3870267 by Arne.Schober DR - SafeRelease SRVs that might be hold by the Vertexfactories (maybe due to indirect use in GlobalResources) Note that the VFs are not owners of the data, e.g the underlying Buffers might be released before this and this reference counting should be uneccessary Change 3870647 by Daniel.Wright Moved FogRendering.h to Renderer Change 3872130 by Krzysztof.Narkowicz Disable USE_GLOBAL_CLIP_PLANE for MATERIAL_DOMAIN_POSTPROCESS and MERIAL_DOMAIN_UI Merging GitHub Pull request #4459 "When material domain is not needing global clip plane there is no need to generate any code involving it. This does not alter output but removes lot of code at vertex shader and pixel shaders. At least on mobile rendered was actually generating clipping code for ui materials." #jira UE-54616 Change 3872145 by Rolando.Caloca DR - vk - Optional SupportsMarkersWithoutExtension Change 3872404 by Uriel.Doyon Added some guards when streaming virtual textures. Fixed optimized UCanvasRenderTarget2D::RepaintCanvas() to prevent resolving the texture twice. Fixed bad mipmap generation with UCanvasRenderTarget2D. Change 3872507 by Arne.Schober Back out changelist 3870267 Change 3874176 by Ben.Marsh IncludeTool: Add an flag to prevent scanning source files for exported symbols. Change 3874935 by Krzysztof.Narkowicz Fixed white thumbnails and other issues with sky lighting on ES3_1 path, by disabling GGX prefiltering, as mobile path doesn't have a single cubemap with all initialized mips. Instead it ping-pongs between 2 partially initialized. #jira UE-54656 Change 3875710 by Daniel.Wright Renamed uniform buffer member macros to be much shorter for readability Change 3876665 by Guillaume.Abadie Cherry-pick 3870715: Implements DOF's hybrid scatering bare bones. Change 3876666 by Guillaume.Abadie Cherry-pick 3871786: DOF hybrid scatering: fixes NaN source, transition to gather on close to screen edge and low intensity. Change 3876677 by Guillaume.Abadie Cherry-pick 3872348: Implements neighbor comparison for DOF's scattering compilation pass. Change 3876680 by Guillaume.Abadie Cherry-pick 3872357: Oups... fixes build... Change 3876683 by Guillaume.Abadie Cherry-pick 3872475: Controls number of mip to generate with DOF's reduce pass. Change 3876687 by Guillaume.Abadie Cherry-pick 3874104: Fixes various bugs in diaphragm DOF's hybrid scattering. Change 3876690 by Guillaume.Abadie Cherry-pick 3874144: Packs multiple DOF scattering group into same draw instance. Change 3876694 by Guillaume.Abadie Cherry-pick 3874275: Switches hybrid scattering with indexed indirect draw call to reduce scatter vertex shader invocation. Change 3876695 by Guillaume.Abadie Cherry-pick 3874674: Records min and max coc on DOF's setup's draw event. Change 3876783 by Rolando.Caloca DR - Static analysis fix Change 3876845 by Guillaume.Abadie Implements USceneCaptureComponent::ProfilingEventName Change 3877197 by Rolando.Caloca DR - vk - OQ fixes (disabled) Change 3877428 by Krzysztof.Narkowicz Merged with tiny tweaks Ansel photography plugin improvements from Adam Moss (GitHub pull request #4426): -The free-roaming photography camera has new constraints by default, i.e. it can't pass through walls -Photography session can be started and stopped programmatically, e.g. making it possible to bind photography to an alternative hotkey or button combo. This was an often-requested feature. -Tweakables and utilities are now exposed through a Blueprint Function Library (rather than direct manipulation of console variables) -The Ansel photography session UI now exposes some engine effect tweakables as sliders. For example, if the game is using depth-of-field then sliders are made available to allow the photographer to change the focal depth etc. The developer may suppress this behavior through the Blueprint Function Library. -Letterboxing is now removed during multi-part capture, d'oh. -Tiled shots are taken at full resolution even if ScreenPercentage < 100 -SSR is enabled during super-resolution shots since Ansel is now better at hiding any ensuing artifacts -Postprocess settings are frozen at session start to avoid discontinuities during photography, i.e. wandering between postprocess volumes when the camera auto-moves for stereo and 360 shots. #jira UE-54244 #4426 Change 3879086 by Krzysztof.Narkowicz Fixed sky/reflection capture (without owner) update - they are now updated only with a correspoding world Change 3879090 by Guillaume.Abadie Fixes tones of regressions on diaphragm DOF's recombine passes. Change 3879198 by Rolando.Caloca DR - vk - Support for real uniform buffers on Android platforms Change 3879993 by Krzysztof.Narkowicz -Fixed int64->int32 FArchive offset truncation in TShaderMap, VertexFactory and TextureDerivedData -Fixed FSerializationHistory bug, when trying to serialize 0 bytes #jira UE-43203 Change 3881462 by Guillaume.Abadie Implements full res DOF's setup pass for cheaper full res gathering in recombine pass. Change 3881524 by Krzysztof.Narkowicz Fixed compilation by removing FTickableEditorObject from FPreviewScene Change 3881724 by Chris.Bunner Static analysis fix. #jira UE-54762 Change 3881861 by Rolando.Caloca DR - vk - Fix layout warning when generating mip chain Change 3881864 by Rolando.Caloca DR - Use render passes on HZB Change 3882236 by Yuriy.ODonnell IndirectLightingColorScale is now applied to SubsurfaceLighting and DiffuseLighting. Was previously only applied to DiffuseLighting. #jira UE-42534 #github 3326 Change 3882325 by Guillaume.Abadie Implements FocusOnly lower gathering pass for Diaphragm DOF's slight out focus temporal stability. Change 3882340 by Rolando.Caloca DR - vk - Fix api dump Change 3882430 by Rolando.Caloca DR - vk - KHR_maintenance2 Change 3882563 by Rolando.Caloca DR - Add depth-stencil access mode to PSO initializer Change 3882929 by Rolando.Caloca DR - vk - Proper fix for maintenance extension macros Change 3883087 by Mark.Satterthwaite Allow disabling VSync in windowed mode for macOS 10.13.4+ and above. Change 3883597 by Guillaume.Abadie Collapses full and half res DOF setup passes together. Change 3883702 by Guillaume.Abadie Fixes mac's build. Change 3884747 by Uriel.Doyon Fix for static analysis warning Change 3884975 by Rolando.Caloca DR - vk - Move some platform defines to platform properties Change 3884988 by Rolando.Caloca DR - vk - Make an override per platform Change 3885832 by Rolando.Caloca DR - vk - Cosmetic change to group similar members Change 3885891 by Rolando.Caloca DR - vk - Some _RenderThread functions to avoid stalls Change 3886044 by Rolando.Caloca DR - Added RHI api _RenderThread version of RHICreateTextureReference RHICreateShaderLibrary RHICreateRenderQuery Change 3886560 by Guillaume.Abadie Fixes strong aliasing on TAAU's fast shader permutation. This adds a 6th neighbor sampling, and switch AA_TONE ON as TAA does for its fast shader permutation. Change 3886749 by Guillaume.Abadie Cherry-pick 3884748: Implements DOF's BuildBokehLUT for diaphragm blades simulation. Only used in hybrid scattering for now. Change 3886750 by Guillaume.Abadie Cherry-pick 3885457: Simulates diaphragm blades' curvature on bokeh. Change 3886752 by Rolando.Caloca DR - Fix metal static analysis Change 3887460 by Uriel.Doyon Fixed to more static analysis warning. Change 3888201 by Rolando.Caloca DR - vk - Added r.Vulkan.SubmitAfterEveryEndRenderPass - Fixed bad layout on rendering back buffer Change 3888209 by Rolando.Caloca DR - vk - Unity compile fix Change 3888254 by Rolando.Caloca DR - vk - Fix async texture layout Change 3888893 by Guillaume.Abadie Simulates bokeh in DOF's slight out of focus. Change 3889085 by Guillaume.Abadie Fixes DOF's reduce pass sampling outside viewport. Change 3889924 by Rolando.Caloca DR - vk - Skip seemingly bad validation error Change 3890573 by Daniel.Wright Only initialize FDiaphragmDOFGlobalResource in Feature Level 5 Change 3890590 by Arne.Schober DR - Fix Paper2d crash. When addMesh is called the Vertex and Indexbuffers are nulled out. re-create Dynamic Mesh builder for every Mesh instead. #jira UE-55063 Change 3890638 by Arne.Schober DR - Better fix for Paper2d which honors batching #jira UE-55063 Change 3891099 by Krzysztof.Narkowicz 1.5 texel shadow offset fix inside Manual2x2PCF based on #4485 GitHub pull request #jira UE-54985 #4485 Change 3891234 by Krzysztof.Narkowicz Optimized PCF2x2 and PCF3x3 - merged #4494 GithHub pull request #jira UE-55121 Change 3891407 by Rolando.Caloca DR - vk - Set vendor id earlier Change 3891417 by Rolando.Caloca DR - vk - Missing layout transitions Change 3891718 by Arne.Schober DR - Do not recreate one Frame Resource for dynamic draws #jira UE-55063 Change 3891925 by Yuriy.ODonnell Fix/workaround for inconsistent preprocessor definitions for NVAftermath that result in FD3D11DynamicRHI class layout mismatch. NVAftermath support is now enabled by default for Win64. NVAftermath is declared as a private dependency in D3D11RHI. It does not automatically propagate to modules that explicitly include private RHI headers (OculusHMD, OSVR, OSVRInput). This results in NV_AFTERMATH being defined while compiling RHI module and not defined when compiling other modules, causing memory corruption at runtime. The long-term solution for this and similar issues requires some mechanism for adding transitive module dependencies, so that anyone that depends on D3D11RHI module would automatically also get the NVAftermath. Additionally, private headers should *never* be included directly by external modules. The short-term solution is to explicitly add NVAftermath dependency to OculusHMD, OSVR and OSVRInput. Additionally, NV_AFTERMATH is no longer forced by D3D11RHIPrivate.h when it's not defined. This allows catching this kind of mismatch in the future through a compiler warning (C4668). #jira UE-53065 Change 3891987 by Rolando.Caloca DR - vk - Support for dedicated allocations Change 3892339 by Jian.Ru Fix a crash when tessellation shaders are used in dx12 #jira UE-55127 Change 3892528 by Rolando.Caloca DR - vk - Update Linux headers Change 3892867 by Rolando.Caloca DR - vk - Don't create swapchain if not needed Change 3893416 by Guillaume.Abadie Implements bokeh simmulation on foreground and background gather. Change 3893732 by Chris.Bunner GetRelevance_Internal should use the immediate parent resource, not the base, as some features are overridden by permutations e.g. UsesWorldPositionOffset. #jira UE-53404 Change 3893868 by Guillaume.Abadie Allocates diaphragm DOF's buffers and structered buffer only on supported platforms. Change 3893917 by Chris.Bunner Potential fix for CIS. Change 3893933 by Chris.Bunner Duplicating CL 2647737 as this is the same issue from that JIRA where accessing game-thread data was being prevented. We don't have this check in UMaterial::GetMaterialResource already, but presumably the UMaterialInstance case was never removed as we've not been calling it until now. Change 3894218 by Rolando.Caloca DR - vk - Remove stat counters per draw call, gains 10% CPU on Infiltrator Change 3894579 by Arne.Schober RT - Fix assert not in RenderingThread from Triangle Renderer. #jira UE-55247 Change 3894724 by Rolando.Caloca DR - vk - New API for batching barriers Change 3894909 by Arne.Schober DR - Fix crash in Speedtree wind where Renderdata is unavailable #jira UE-54544 Change 3895414 by Rolando.Caloca DR - Add a configurable threshold for SCWs time outs Change 3896429 by Marcus.Wassmer Allow variable frame-latency delay in FrameGrabber frames. For performance you want at least a 1 frame delay so you don't sync the GPU to the CPU. Change 3896495 by Marcus.Wassmer Set pointer properly Fix CIS Change 3897253 by Guillaume.Abadie Fixes CIS warning in diaphragm DOF Change 3899179 by Guillaume.Abadie Implements background hybrid scatter occlusion for diaphragm DOF. Change 3903654 by Rolando.Caloca DR - vk - Rework dump layer to allow other layers Change 3903766 by Rolando.Caloca DR - vk - More wrappers Change 3904025 by Rolando.Caloca DR - vk - More wrappers Change 3904342 by Rolando.Caloca DR - vk - Track image resources & callstacks Change 3904346 by Rolando.Caloca DR - vk - Copy fix from 4.19 for flickering grass Change 3904510 by Rolando.Caloca DR - vk - Compile fix Change 3904914 by Daniel.Wright [Integrate] Fixed PS4 transitions with forward shading Change 3904916 by Daniel.Wright [Integrate] Fixed PS4 transitions with occlusion queries Change 3905975 by Rolando.Caloca DR - vk - Missing wrappers Change 3905977 by Rolando.Caloca DR - vk - Missed file Change 3907829 by Rolando.Caloca DR - Move depth bounds to the PSO Change 3907832 by Rolando.Caloca DR - vk - Prep for delaying transitions Change 3907834 by Rolando.Caloca DR - vk - Fix for depth stencil issues/validation errors Change 3907967 by Rolando.Caloca DR - vk - Linux compile Change 3908093 by Rolando.Caloca DR - vk - Fix depthstencil layout on descriptors Change 3908393 by Rolando.Caloca DR - vk - Disable dedicated allocation as it causes crashes on Nvidia 700 series Change 3908401 by Rolando.Caloca DR - Do transitions outside render pass Change 3908422 by Rolando.Caloca DR - vk - Fix transition state not getting stored Change 3908735 by Guillaume.Abadie Cherry-pick 3896619: Fixes after TAAU post process material that had wrong default buffer UV. #jira UE-55317 Change 3908736 by Guillaume.Abadie Cherry-pick 3891352: Fixes ensure when visualizing HDR with TAAU. #jira UE-55019 Change 3908753 by Guillaume.Abadie Lets the renderer layout the views in the internal render targets like it prefers. Change 3909119 by Daniel.Wright Fix some static analysis warnings Change 3911943 by Rolando.Caloca DR - vk - Fix for packaging Vulkan projects Change 3912145 by Rolando.Caloca DR - vk - Fix layout on streaming textures Change 3913029 by Rolando.Caloca DR - Fix missing transition Change 3913048 by Rolando.Caloca DR - Fix for hlslcc Change 3913054 by Rolando.Caloca DR - vk - Fix number of layers on barrier Change 3913171 by Rolando.Caloca DR - vk - Fix for decal missing transition Change 3913211 by Rolando.Caloca DR - vk - Add debug name to image tracking Change 3913449 by Rolando.Caloca DR - vk - Restore transition Change 3913466 by Rolando.Caloca DR - Fix Vulkan EngineTest Change 3913537 by Rolando.Caloca DR - vk - Fixes independent samplers & textures (contributed by AMD) Change 3913548 by Rolando.Caloca DR - vk - Warning fix Change 3913691 by Rolando.Caloca DR - vk - Fixes for parallel (wip) Change 3914656 by Rolando.Caloca DR - vk - Fix bug when using separate samplerstates and textures Change 3914730 by Rolando.Caloca DR - vk - Bump version Change 3914764 by Rolando.Caloca DR - vk - Don't crash on exit Change 3915532 by Rolando.Caloca DR - vk - Parallel context fixes Change 3915589 by Rolando.Caloca DR - vk - Hoist and rename transition and layout manager class out of the context Change 3915592 by Rolando.Caloca DR - Fix gpu marker name Change 3917607 by Rolando.Caloca DR - vk - Fix depth bounds on Vulkan Change 3917609 by Rolando.Caloca DR - vk - Fix static analysis Change 3917616 by Rolando.Caloca DR - Fix D3D11 initialization Change 3920569 by Rolando.Caloca DR - vk - Prep for layout mgr refactor Change 3921023 by Rolando.Caloca DR - vk - Dump layer fixes Change 3921623 by Rolando.Caloca DR - vk - Prep refactor for layouts - Dump now shows marker tree Change 3922007 by Rolando.Caloca DR - vk - Fix extra allocation per draw call Change 3922442 by Rolando.Caloca DR - vk - Detect potential issues Change 3922470 by Rolando.Caloca DR - vk - Minor optimization Change 3922482 by Rolando.Caloca DR - vk - More minor optimizations Change 3923158 by Rolando.Caloca DR - Move r.DisableEngineAndAppRegistration out to common RHI and use it on Vulkan Change 3923486 by Rolando.Caloca DR - vk - Minor cpu optimizations Change 3923505 by Rolando.Caloca DR - vk - Use bigger allocations for uniform buffers Change 3923516 by Rolando.Caloca DR - vk - Android compile fix Change 3923557 by Rolando.Caloca DR - vk - Cache descriptorset layouts, refactor duplicated code Change 3923851 by Rolando.Caloca DR - vk - Linux compile fix Change 3924153 by Rolando.Caloca DR - vk - Support for dynamic UBs Change 3924193 by Rolando.Caloca DR - vk - Remove old per pso descriptor pools Change 3924197 by Rolando.Caloca DR - vk - Remove unused global uniform buffer pool Change 3924220 by Rolando.Caloca DR - vk - Wrap some unused classes in their define Change 3924234 by Rolando.Caloca DR - vk - Show ring buffer wrapping messages Change 3924243 by Rolando.Caloca DR - vk - Fix bad dynamic buffer Change 3924902 by Rolando.Caloca DR - vk - Fix crash running infiltrator Change 3925209 by Rolando.Caloca DR - vk - Fix bug with dynamic buffers - Remove old defines Change 3925300 by Rolando.Caloca DR - vk - Allow packed uniforms as dynamic UBs (with r.Vulkan.DynamicGlobalUBs) Change 3925627 by Rolando.Caloca DR - vk - Move DynamicOffsets into the pipeline state Change 3925834 by Rolando.Caloca DR - vk - Cache per stage information Change 3925835 by Daniel.Wright Fixed DisplayName for UParticleModuleCollisionGPU Change 3925897 by Rolando.Caloca DR - vk - Split update descriptors loop Change 3926488 by Rolando.Caloca DR - vk - 16MB for ring buffer on desktop, 8 MB for mobile Change 3928168 by Guillaume.Abadie Cherry-pick 3917219: Implements r.DOF.RecombineQuality Change 3928173 by Guillaume.Abadie Cherry-pick 3927888: Enables r.DOF.HybridScatter.BackgroundCompositing and r.DOF.HybridScatter.ForegroundCompositing to work when both enabled. Change 3928216 by Rolando.Caloca DR - vk - Fix Android - Fix static analysis Change 3929119 by Rolando.Caloca DR - vk - Rename some classes for clarity - Fix read-only cvar Change 3929151 by Rolando.Caloca DR - vk - Rename class Change 3930046 by Rolando.Caloca DR - Temp fix Vulkan flickering grass Change 3930148 by Rolando.Caloca DR - vk - Only update dirty descriptors - Use dynamic descriptors for packed global uniform buffers Change 3930998 by Guillaume.Abadie Packs shader permutation in different XGE submissions. Change 3931079 by Rolando.Caloca DR - vk - Fixes for Android and non-real ubs platforms Change 3931942 by Krzysztof.Narkowicz Depth rendering - When EarlyZPassMode is set to DDM_AllOccluders, dynamic objects need also to test bUseAsOccluder just like static ones #jira none Change 3932819 by Daniel.Wright [Integrate] Scene Textures uniform buffer * Base Pass Uniform Buffer now contains a Scene Textures uniform buffer. Previously the translucent base pass had to check ~40 loose scene texture parameters every draw. * FMeshMaterialShader's must now bind PassUniformBuffer and supply a valid pass uniform buffer. For most passes this is just FSceneTextureUniformParameters. * FRendererModule::DrawTileMesh can now cleanly set dummy scene texture resources, just by configuring how the pass uniform buffer is created. * Moved scene texture shader functions out of Common, into SceneTexturesCommon which must be manually included by shaders that want to use them * Separate Mobile Scene Textures uniform buffer to silo the platform complexities Moved DBuffer inputs out of FDeferredPixelShaderParameters and into FOpaqueBasePassUniformParameters Removed per-frame material uniform expressions. GameTime material node with period is now implemented with an fmod in the shader, without the use of MaterialFloat, so that it will happen at full precision. * Per-frame expressions were used when the GameTime material node had a period, to do the fmod on the CPU where 32 bit precision is guaranteed, for mobile GPU's where pixel shader precision is sometimes less than 32fp. Moved forward shading data into the Base Pass Uniform Buffer Removed instanced stereo support for the light cull grid - will have to be reimplemented without changing SRV's per draw Base pass sets View Uniform Buffer from DrawRenderState instead of choosing which one to set per-draw Fixed padding in nested uniform buffer structs Skip SRV members on Feature Level SM4 and below Change 3932964 by Rolando.Caloca DR - vk - Renderdoc on Android Change 3933095 by Daniel.Wright Moved FSceneTextureUniformParameters out of the opaque base pass uniform buffer. * Base Pass shaders now enable SCENE_TEXTURES_DISABLED when compiling for a material of any domain other than MD_Surface. These are used when rendering thumbnails of a material in a different domain, which could be opaque, but the opaque base pass drawing policy does not bind a scene textures uniform buffer, so the shader must not bind it. * Opaque materials can no longer use EyeAdaptation. Change 3933096 by Daniel.Wright Better d3d11 assert message when a uniform buffer was not set by the renderer Change 3933176 by Rolando.Caloca DR - vk - Prefer mailbox if available Change 3933271 by Ryan.Vance #jira UE-55936 Fixed missing referenced uniform bindings on AR pass-through camera shaders. Change 3934000 by Guillaume.Abadie Fixes Win32 build in ShaderCompilerXGE.cpp Change 3934299 by Guillaume.Abadie Fixes a bug in DOF's reduce operator that was casusing color leaking between background and foreground. Change 3934699 by Daniel.Wright Added bAffectDistanceFieldLighting to landscape Change 3935190 by Daniel.Wright Forward Light Grid SRV's use StructuredBuffer on Metal, instead of 'invariant Buffer', which throws off RemoveUniformBuffersFromSource parsing Change 3935606 by Daniel.Wright Removed LightmapPolicy::Set which was needed for vertex lightmaps Renamed FVertexFactory::Set to SetStreams to make it findable Change 3936510 by Rolando.Caloca DR - vk - Update glslangValidator.exe to 1.0.65.1 for dumped debug SPIRV shaders Change 3936545 by Richard.Wallis Clone of CL's (3925763, 3925430, 3925424, 3925385, 3925278) Mark Satt's Xcode fixes from task stream //Tasks/UE4/Dev-UERNDR-354-mtlpp/ Plus XCode 9.2 compile fix in ApplicationPlatformCompilerPreSetup.h for -Wunused-lambda-capture. Change 3938061 by Daniel.Wright Vulkan: Added support for SRV's in Uniform Buffers Change 3938123 by Daniel.Wright Vulkan: Slightly better assert for null resources in uniform buffer Change 3939197 by Rolando.Caloca DR - vk - Disable custom memory mgmt Change 3939677 by Rolando.Caloca DR - vk - Fix static analysis warning Change 3939809 by Rolando.Caloca DR - vk - Fixes for async compute Change 3939875 by Rolando.Caloca DR - vk - Support for -vktrace Change 3939977 by Rolando.Caloca DR - vk - Skip a condition during gather UBs - Set up efficient compute async var - Fix validation cmd line Change 3939982 by Rolando.Caloca DR - vk - Revert mipchain Change 3939984 by Rolando.Caloca DR - vk - Remove unnecessary asserts Change 3940082 by Rolando.Caloca DR - vk - Custom mem mgr Change 3940475 by Rolando.Caloca DR - vk - Fix DFAO (indirect draw offset) Change 3940555 by Rolando.Caloca DR - vk - Minor fixes Change 3940675 by Rolando.Caloca DR - vk - Fix indirect type mismatch Change 3941111 by Rolando.Caloca DR - Renderpass bGeneratingMips Change 3941847 by Daniel.Wright Fixed Volumetric Lightmaps on Static geometry only working if the geometry had been built with Surface Lightmaps before Change 3941978 by Rolando.Caloca DR - vk - Minor fixes for presenting on compute queue Change 3942074 by Rolando.Caloca DR - vk - Remove some RHI stalls - Fixed swap chain stat Change 3943946 by Daniel.Wright Fixed Texcoord0 on Volume materials on a particle sprite, including SubUV particles. Change 3944065 by Daniel.Wright Fixed SceneDepth collision getting broken on GPU particles when a scene capture is rendering Change 3944158 by Daniel.Wright Fixed ViewUniformShaderParameters accessing GEngine->PreIntegratedSkinBRDFTexture too early during slate loading screen Change 3944865 by Rolando.Caloca DR - vk - Prep for render passes Change 3945196 by Rolando.Caloca DR - Move render pass validate to cpp Change 3945202 by Rolando.Caloca DR - vk - Some fixes for using real render passes Change 3945357 by Rolando.Caloca DR - Fix bad condition Change 3946295 by Yuriy.ODonnell Added a sentinel member to FLightMap, which is initialized in the ctor and reset in the dtor. Sentinel is then checked in FLightCacheInterface::GetLightMapInteraction(). This aims to shed some more light on a hard-to-repro crash, which is suspected to be a use-after-free bug: http://crashreporter/Buggs/Show/1785593 Change 3946407 by Rolando.Caloca DR - vk - Prep for refactor Change 3946648 by Rolando.Caloca DR - vk - Fixes for async compute (wip) Change 3947299 by Rolando.Caloca DR - vk - FIx static analysis Change 3948434 by Rolando.Caloca DR - vk - Fix exiting with parallel Change 3948928 by Rolando.Caloca DR - vk - Fix enabling draw markers for tools Change 3949021 by Rolando.Caloca DR - vk - Buffer tracking layer Change 3949602 by Rolando.Caloca DR - vk - static analysis fix Change 3949757 by Rolando.Caloca DR - vk - Remove bogus parameter Change 3949810 by Rolando.Caloca DR - vk - Move waits for cmd buffer Change 3950270 by Guillaume.Abadie Implements dedicated gather pass for foreground hole filling to avoid being VGPR bound in foreground gather pass, but still being hable to amend foreground. Change 3950272 by Rolando.Caloca DR - vk - Minor refactor for semaphores Change 3950279 by Guillaume.Abadie Oups... fixes build Change 3950298 by Rolando.Caloca DR - vk - Gather wait semaphores in the cmd buffers Change 3950371 by Rolando.Caloca DR - vk - fixes for async compute Change 3950597 by Rolando.Caloca DR - vk - Fix for clip distance (fixes planar reflections) Change 3951075 by Rolando.Caloca DR - vk - Fix for async compute Change 3952524 by Guillaume.Abadie Some DOF enum refactoring. Change 3955016 by Daniel.Wright Fixed BuiltData package getting renamed into the map package during a content browser folder move, causing a redirector to be incorrectly placed in the map package Change 3955668 by Guillaume.Abadie Fixes a bug where full res coc buffer was computed even if not doing slight out of focus. Change 3956722 by Guillaume.Abadie Fixes a bug where r.DOF.MaximalForegroundBlurringRadius was screen percentage dependent. Change 3959212 by Guillaume.Abadie Prefixes all DOF's shaders files with DOF keyword. Change 3959705 by Guillaume.Abadie Optimises the DOF setup pass outputing half res and full res with LDS downsample. Change 3959941 by Guillaume.Abadie Halfs DOF's hybrid scatter compilation by using a unique downsampling for both foreground and background, instead of 2 reduce passes. Change 3962273 by Rolando.Caloca DR - Fix typos #jira UE-56317 PR #4586 Change 3962615 by Rolando.Caloca DR - vk - Compile fix Change 3962949 by Rolando.Caloca DR - Fix DOFDownsample extension Change 3962993 by Guillaume.Abadie Back out changelist 3962949 Change 3963016 by Guillaume.Abadie Adds missing DOFDownsample.usf Change 3963041 by Rolando.Caloca DR - vk - Misc changes to help integrate Change 3964293 by Guillaume.Abadie Fixes DOF's setup pass reading outside of the viewport. Change 3964475 by Guillaume.Abadie Collapses DOF's hybrid scatter compilation passes into reduce passes. Change 3964883 by Daniel.Wright Fixed 3d texture in uniform buffer on unsupporting RHI Change 3964897 by Rolando.Caloca DR - Compile fixes Change 3964914 by Guillaume.Abadie Fixes a bug on r.DOF.RecombineQuality=0 Change 3965153 by Guillaume.Abadie Fixes compile warning in D3D12Commands.cpp. Change 3965814 by Rolando.Caloca DR - Prep for integration conflict resolve Change 3965899 by Rolando.Caloca DR - Fix odd linkage issue Change 3966072 by Rolando.Caloca DR - More prep for merge Change 3966163 by Rolando.Caloca DR - Merge prep Change 3966844 by Guillaume.Abadie Packs multiple DOF scattered bokeh per instance and uses PT_RectList in DOF for platforms that can. Change 3967116 by Rolando.Caloca DR - Compile fixes for integration Change 3967273 by Rolando.Caloca DR - Use same path for mip generation Change 3967277 by Rolando.Caloca DR - vk - Fix mips on cubemaps Change 3967693 by Rolando.Caloca DR - Copying //UE4/Dev-Main@3912313 to //UE4-DevRendering, missing shaders Change 3967851 by Rolando.Caloca DR - Copying //UE4/Dev-Main@3912313 to //UE4-DevRendering, Engine 2/2 Change 3968083 by Rolando.Caloca DR - Integration compile fixes Change 3968240 by Rolando.Caloca DR - Shader compile fixes for integration Change 3968270 by Rolando.Caloca DR - Fix for missing hash calculation Change 3969426 by Rolando.Caloca DR - vk - Fix warning Change 3969869 by Krzysztof.Narkowicz Back out changelist 3946295 - UE-54537 is fixed, so no need for this debug sentinel. #jira none Change 3969944 by Rolando.Caloca DR - Warning fix Change 3970020 by Rolando.Caloca DR - Bump after integration Change 3970052 by Rolando.Caloca DR - Fix for mobile Change 3970236 by Daniel.Wright Causing decal shader to recompile to fix a merge bug Change 3970270 by Daniel.Wright Bump shader version from merge Change 3970339 by Olaf.Piesche Replace series of locks/unlocks with a single one for curve injection #tests QAGame Change 3970390 by Rolando.Caloca DR - Rename FSceneTextureUniformParameters to FSceneTexturesUniformParameters - Remove duplicate method for occlusion queries Change 3970523 by Rolando.Caloca DR - Fix serialization of shaders Change 3970533 by Arne.Schober DR - fix for removing the Speed tree wind when the scene gets deleted. The original enque rendercommand requeues the element onto the renderthread although the call already came from the Renderthread and the scene can get lost in between. #jira UE-56322 Change 3971160 by Guillaume.Abadie Fixes CompositeEditorPrimtive pass and SelectionOutline pass for VR editor to work with TAAU. Change 3971516 by Guillaume.Abadie Cherry-pick 3912629: Fixes SSR that was computing vigneting according to PrevScreen that could let some outside viewport samples going through when rotating the camera. #jira UE-55353 Change 3971594 by Krzysztof.Narkowicz Fixed assert inside BindLightMapVertexBuffer. FSplineMeshSceneProxy was calling BindLightMapVertexBuffer for invalid (still not generated) lightmap UV channel after mesh reimport. Simplified assert, as at the moment almost all of the high callsites already clamp lightmap uv channel. #jira UE-56321 Change 3971622 by Krzysztof.Narkowicz Fixed crash inside Indirect Lighting Cache. Data (reflection captures and lightmap) generation calls ULevel::GetOrCreateMapBuildData(), which can destroy lightmap data if level has legacy data. Last Lightmap generation step recreates this data, but if user cancels lightmap generation - it won't do that. #jira UE-56171 Change 3974788 by Rolando.Caloca DR - Remove GSupportsGenerateMips Change 3974789 by Rolando.Caloca DR - Remove bogus function Change 3974986 by Rolando.Caloca DR - vk - Tracking fixes Change 3974989 by Rolando.Caloca DR - vk - Don't submit dummy barriers Change 3975075 by Olaf.Piesche Update for particle curve injection improvement, fixing ES2 problems #tests QAGame tm-shadermodels, various color curve tests in-editor Change 3975957 by Uriel.Doyon Fixed invalid max texture resolution when using the bake material tools. Change 3978471 by Daniel.Wright New cvar r.SkylightUpdateEveryFrame Change 3978779 by Rolando.Caloca DR - Accessor for texture sizes Change 3978797 by Rolando.Caloca DR - Clean up RHI CopyTexture API Change 3978832 by Rolando.Caloca DR - vk - Workaround for RenderDoc crashing due to Descriptor Pool reset Change 3978836 by Rolando.Caloca DR - vk - Remove generate mips Change 3979201 by Rolando.Caloca DR - vk - RHI CopyTexture. Uses general layout for generating mips Change 3979204 by Rolando.Caloca DR - Use render passes and CopyTexture to generate mips Change 3979592 by Rolando.Caloca DR - Warning fix Change 3980855 by Krzysztof.Narkowicz Optimize bounding sphere radius after non-uniform scale by using bounding box extent. #jira UE-56227 Change 3981065 by Rolando.Caloca DR - vk - Fix bad layout #jira UE-56238 Change 3981346 by Rolando.Caloca DR - Copy from 3707257 Support for not flushing compute jobs (r.D3D11.UAVFlushNV) Change 3981347 by Rolando.Caloca DR - Copy from 3707257 Don't flush between morph dispatched Change 3981932 by Mark.Satterthwaite Generate the shader hash and function name when a Metal shader error needs to be reported so that even without shader code we get something to go on. Change 3982442 by Rolando.Caloca DR - Fix warning Change 3982652 by Rolando.Caloca DR - vk - Signal semaphore cleanup Change 3983917 by Richard.Wallis Clone of CL 3974146 converted for mtlpp along with extra mtlpp usage suggestions by Mark Satt: Fix for black flickering on first paint with weighted material landscape on Mac. When using AsyncCopyFromBufferToTexture in Metal we put the blit operation on the prologue encoder - however after a draw call using that resource the copy operation should happen after on the current encoder, this keeps the correct order of operations. Added Bool return from various Asnyc renderpass resource requests so caller can decide correct further action. Updated to include the other async functions. Change 3984409 by Guillaume.Abadie Attempts to make static analysis happy again. Change 3984435 by Nick.Bullard Checking in Performance Test level provided to us by Tor Frick based on UE-44841. This has been utilized for checking issues against Aftermath performance impact. The Map includes 2 Level Book marks, most testing has been done against Bookmark 1 view, in fullscreen, in game mode Change 3985087 by Mark.Satterthwaite Make sure that the particle scratch buffer is large enough to hold all the data for the curve texture we are rendering to, otherwise a full set of curves will start scribbling memory after 64Kb (the curve texture is 256Kb of data - 512x512x4 as sizeof(RGBAUInt8) == 4). This happens in ElementalDemo. Change 3985201 by Rolando.Caloca DR - Fix bad CopyTexture Change 3985258 by Mark.Satterthwaite Try and detect orientation changes so that we don't blow-up on iOS due to a huge mismatch between the drawable texture for the display and the scene's depth-stencil target. I can't just fiddle with the depth-stencil texture itself without running the risk of obliterating in-use data and really we shouldn't permit such a mismatch anyway but it is fallout from 3620990. #jira UE-55756 Change 3986449 by Rolando.Caloca DR - vk - Update & consolidate Vulkan headers to 1.1.70.1 Consolidate SDK into one Change 3986571 by Guillaume.Abadie Makes PVS-Studio happy again in DOF. Change 3987039 by Yuriy.ODonnell Initial implementation of tracing profiler to show CPU and multiple GPUs on the same timeline. Currently only supported on DX12 platforms. Use `TracingProfiler frames=N` console command to trigger a capture of the next N frames. Trace is saved to disk as a JSON file into `Saved/Profiling/Traces` directory. Trace file uses Google Tracing format and can be visualized in Chrome built-in profiler (chrome://tracing). `r.GPUStatsChildTimesIncluded=1` CVar makes timing scopes hierarchical. `TracingProfiler.BufferSize=N` CVar controls the size of the tracing buffer, which may need to be increased for long traces (default is 65k events). Only can be set at startup. Change 3987074 by Yuriy.ODonnell Implemented timestamp calibration on DX11. Calibration is only performed when tracing profiler session starts. Change 3987160 by Yuriy.ODonnell Added thread naming and ordering to the tracing profiler output Change 3987331 by Mark.Satterthwaite Remove the Nvidia hack to retain resource references in command-buffers for UE-46604 as the mtlpp refactor provides stronger resource lifetime guarantees. #jira UE-46604 Change 3987754 by Mark.Satterthwaite Fix MetalRHI memory reporting in non-default path. PR #4568 Change 3988184 by Arciel.Rekman Linux: Fix editor OpenGL performance (UE-55960). - GetCurrentThreadId() calls became much more frequent with the OpenGL RHIT refactor. - We used to only cache that value in monolithic builds, because having per-thread static variables in dynamic libraries is risky due to OS limits. - This change adds dynamically-managed per-thread cache for non-monolithic builds. #jira UE-55960 Change 3988394 by Rolando.Caloca DR - vk - Improve memory mgmt - Use 256MB pages for Device heap (or 1/8th if less). - Remove texture allocations not going through resource manager Change 3988405 by Marcin.Undak Fix VulkanQuery crash on exit #codereview rolando.caloca #codereview arciel.rekman #rb arciel.rekman Change 3988567 by Rolando.Caloca DR - vk - Support for packed global UBs on pci aperture heap Change 3988668 by Rolando.Caloca DR - vk - Remove old comments Change 3988956 by Marcin.Undak RecordPerformance: added option to skip building/cooking before tests #rb none #codereview arciel.rekman Change 3989161 by Yuriy.ODonnell Static analysis error fix Change 3989196 by Guillaume.Abadie Fixes a crash in light shaft's TAA pass. #jira UE-57366 Change 3989207 by Yuriy.ODonnell Refactored FRealtimeGPUProfilerFrame to avoid splitting profile events when calculating exclusive times of scopes. This allows tracing profiler to retain the hierarchical view of the data, while keeping CSV and GPU Stat system behavior intact. Change 3989469 by Rolando.Caloca DR - vk - Fix for bad index; fix for bad transition Change 3989772 by Yuriy.ODonnell Implemented timestamp calibration on Vulkan Change 3990040 by Marcus.Wassmer Aftermath enabled by default. Removed unnecessary warning for other vendors Change 3990064 by Mark.Satterthwaite Ensure that packed globals are reuploaded when the command-encoder is restarted - don't simply invalidate the existing parameters. This properly handles cases where a single logical render-pass is broken into multiple command-encoders and/or command-buffers - otherwise all shaders must reset all parameters each time. When we move between frames we *do* want to perform a full state reset though as previous frame globals are treated as invalid. Change 3990080 by Mark.Satterthwaite Change the way we invalidate the visibility buffer between command-buffers and command-encoders so that on iOS you can reuse the same buffer within the same command-buffer, but not across more than one. The code provides an exception to this rule when running under the MetalRHI validation tools which can break each draw call into its own buffer. Change 3990084 by Mark.Satterthwaite Get MetalStatistics compiling again. Change 3990381 by Arciel.Rekman Bring back D3D12 in RecordPerformance. Change 3991113 by Rolando.Caloca DR - Fix crash on RHI thread on mobile preview - Check RHI objects are not null in the PSO initializer Change 3991191 by Ryan.Vance #jira UE-55952 Reimplemented instanced stereo for forward lighting cull grid after the srv/ub clean up. Change 3991343 by Rolando.Caloca DR - Copy from 3911492 UE4 - Disabled parallel mobile bass pass by default. This is experiemental and not known to be useful on any mobile platform. Change 3991375 by Mark.Satterthwaite Proper copyright assignment in the mtlpp debugger header. Change 3993151 by Daniel.Wright Fix RTDF resource transition found by Rolando Change 3993818 by Rolando.Caloca DR - Missed file Change 3993923 by Krzysztof.Narkowicz Fixed crashes inside RemoveSpeedTreeWind() and RemoveSpeedTreeWind_RenderThread(). FStaticMeshComponentRecreateRenderStateContext didn't flush deferred render updates causing stale RenderData to be left: 1. Thumbnail manager called SetStaticMesh(nullptr), which added StaticMeshComponent to deferred render updates. 2. UStaticMesh::Build called FStaticMeshComponentRecreateRenderStateContext and destroyed DenderData, but didn't touch Thumbnail's manager StaticMeshComponent as it was nullptr. 3. This resulted in a StaticMeshComponent with stale RenderData pointer. #jira UE-54544 Change 3994033 by Rolando.Caloca DR - vk - Reworked layers & extensions, as we were not doing it properly - Remove -vulkanstandardvalidation and -novulkanstandardvalidation as they are not needed anymore Change 3994275 by Mark.Satterthwaite Change to linking against mtlpp via AddEngineThirdPartyPrivateStaticDependencies and marking its header with THIRD_PARTY_* macros in the vain hope that might convince the remote compilation code to distribute the module to the remote machine when building MetalRHI. #jira UE-57507 Change 3994365 by Mark.Satterthwaite Pilfer some code from the old MetalHeap file to handle calculating texture memory size on older macOS and iOS builds when running with stats or LLM enabled. #jira UE-57513 Change 3994382 by Rolando.Caloca DR - vk - Some missing locks during image tracking Change 3994422 by Rolando.Caloca DR - vk - Remove bogus shader format Change 3995530 by Rolando.Caloca DR - vk - Fix for crash when validation is enabled Change 3995531 by Rolando.Caloca DR - vk - Fix static analysis Change 3995532 by Rolando.Caloca DR - vk - Added support for r.Vulkan.SaveValidationCache Change 3995610 by Uriel.Doyon Texture Streaming Changes and Fixes: - Using the small FOV items (like scopes) now only affect visible primitives (through "r.Streaming.MaxHiddenPrimitiveViewBoost"). - Static components added after the level is registered in the streaming manager are now handled correctly (fixes the low quality on the chests) - Dynamic components do not need to register to the streaming manager anymore. - Optimized dynamic component management by removing duplicate entries in the update list. - Added a pregarbage collect pass to the dynamic component management to optimize GC handling. - Added a budget reset logic whenever the scene requirements change significantly. - PIE worlds now have correct visibility information. - Fixed possible invalid memory access when processing the streaming manager slave views. - Refactored the incremental level texture data build to prevent new components from being unhandled. - Removed StreamingManager callbacks for NotifyActorSpawned() and NotifyPrimitiveAttached() - Added a StreamingManager callback NotifyPrimitiveUpdated(), to be used whenever a primitive streaming state must be updated. #jira none Change 3995908 by Arciel.Rekman Fix compile errors when using new Vulkan queries. Change 3995990 by Arciel.Rekman More compile fixes to new Vulkan queries. - MSVC did not catch this, clang did. Change 3996101 by Rolando.Caloca DR - vk - Win32 compile fix Change 3996323 by Mark.Satterthwaite Use the right include path to export the mtlpp headers. #jira UE-57507 Change 3996392 by Arciel.Rekman Vulkan: fix crash on start when using new queries. - CommandBufferManager was not yet set at that point and the code in queries relied on it. Change 3996585 by Rolando.Caloca DR - Slight improvement to GL being black, but just a temporary 'workaround' as it's not correct. Change 3998806 by Arciel.Rekman Fix Linux build (UE-57602). #jira UE-57602 Change 3998866 by Arciel.Rekman SubwaySequencer: fix old shader platform name. Change 3998947 by Mark.Satterthwaite Silence deprecation warnings in CEF on macOS now that we've moved to 10.12 as the minimum. #jira UE-57577 Change 3998951 by Mark.Satterthwaite Fix last of the deprecation errors that I am aware of for macOS 10.12. #jira UE-57581 Change 3998984 by Mark.Satterthwaite Build mtlpp for iOS 9.0 not 9.3. #jira UE-57586 Change 3999065 by Rolando.Caloca DR - vk - Make sure we use version 1.0.0 #jira UE-57521 Change 3999071 by Arne.Schober DR - [UE-55433, UE-57361] Hack SNORM support in OpenGL by re-interpreting UNORM. Underlying data is always SNORM. #jira UE-55433, UE-57361 Change 3999494 by Rolando.Caloca DR - Enable r.UnbindResourcesBetweenDrawsInDX11 in debug - Clear compute resources when r.UnbindResourcesBetweenDrawsInDX11 is enabled Change 4000197 by Krzysztof.Narkowicz Mesh simplifier - normalize TexCoordWeights using min/max TexCoord range. This fixes precision issues for very big TexCoord values and allows to optimize for all TexCoord channels when channels have values of different magnitudes (e.g. non standard TexCoord data). #jira UE-54935 Change 4000305 by Yuriy.ODonnell Suppress PVS Studio warning V547 (Expression is always true) related to Aftermath Reported issue to PVS team and to NVIDIA. Confirmed false positive, fix coming in future PVS version (v6.24). #jira UE-57579 Change 4000853 by Arciel.Rekman Linux: fix not calling CrashReportClient (UE-57678). #jira UE-57678 Change 4001504 by Rolando.Caloca DR - vk - Fix transition Change 4002460 by Krzysztof.Narkowicz Toggle for contant shadow length in word space Exposed contact shadows to Blueprints #jira none Change 4002608 by Rolando.Caloca DR - vk - Fix static analysis - Fix potential debug image tracking crash - Comment out unused methods Change 4002615 by Rolando.Caloca DR - vk - Allow r.Vulkan.WaitForIdleOnSubmit to be set at startup (e.g. in ConsoleVariables.ini) Previously, if your map needed to UpdateSkyCaptureContents on startup, an ensure would fail if GWaitForIdleOnSubmit was set. PrepareForCPURead needs to wait for the command buffer to finish before trying to read the results back, but the wait has already happened when r.Vulkan.WaitForIdleOnSubmit is set. Trying to wait again correctly complains that the command buffer is not in the correct state. So, skip the WaitForCmdBuffer call when r.Vulkan.WaitForIdleOnSubmit is set. Change 4002640 by Rolando.Caloca DR - vk - Missing support for CVarDefaultBackBufferPixelFormat Change 4002919 by Guillaume.Abadie Implements DOF's temporal upsampling pass for better dynamic resolution stability. Change 4002984 by Guillaume.Abadie Integrates Sebastian Aaltonen's ALU optimisations for TAAU. Change 4003112 by Olaf.Piesche Fir for TBB stall (resulting in severe hitches and hangs in the editor with stats active); tested multiple scenarios and encountered no hitches. #tests QAGame PerformanceTest and RenderTest map with various stats on and off Change 4003159 by Mark.Satterthwaite Undo parts of changelist 3970553 - the ref-counted pointer approach to returning textures to the pool is not working as expected so we'll remove that. It'll be faster on the CPU without it and everything works thanks to the changes this CL made to the way textures were released. #jira UE-57538 Change 4003287 by zachary.wilson Adding reflection capture content to TM-LightingScenarios Change 4003395 by Arne.Schober DR - Fix unitzialised value when clicking Go To in the editor #jira UE-57048 Change 4003425 by Rolando.Caloca DR - vk - Fix for new occlusion queries Change 4003530 by Arne.Schober DR - Disable GPU Benchmark in headless configurations #jira UE-57673 Change 4003717 by Rolando.Caloca DR - vk - Fix for depth not store, stencil store Change 4003719 by Rolando.Caloca DR - Minor switch to render pass Change 4003720 by Mark.Satterthwaite Don't suballocate private memory buffers on Vega and only Vega as there is something wrong with the blits in those cases but I can't capture a GPU trace to find out what right now (the driver is broken) - could be a bug in my code but this works on Polaris and Nvidia so it will need to be filed as a radar for AMD. Remove the FMetalBufferChunk from FMetalBuffer and simply store a pointer to the owning Heap/Magazine allocator. The FMetalResourceHeap now calls a new Release function to return the buffer to the allocator which will be faster on the CPU. #jira UE-57659 Change 4003854 by Mark.Satterthwaite Undo parts of 3990064 and try a different approach to get the uniforms to upload and remain available in the right places. As the original bug has been lost to time we should keep an eye out for missing buffer bindings by running under the Metal validation layer periodically. #jira UE-57576 Change 4004709 by Rolando.Caloca DR - Support for D3D 11, 12 & Vulkan for UAVs off Index Buffers Change 4005149 by Guillaume.Abadie Adds shader permutation to avoid clamping input buffer UV in DOF's gather pass. Change 4005284 by Uriel.Doyon Resaved volume texture assets with proper engine version. #jira UE-57534 Change 4005286 by Guillaume.Abadie Reduces constant setup in DOF's gather pass. Change 4005359 by Rolando.Caloca DR - vk - Fix annoying warning Change 4005363 by Rolando.Caloca DR - Fix android not finding vulkan shaders Change 4005457 by Rolando.Caloca DR - vk - Fix swapchain crash Change 4005473 by Patrick.Kelly UE-57135: Editor crash if set Reflection Capture Resolution to be 64 and New a Default level Codde by Daniel Tested by Patrick Change 4005474 by Rolando.Caloca DR - vk - Remove glsl code from shaders. Packaged QAGame goes from 176MB to 162MB Change 4005759 by Krzysztof.Narkowicz Fixed a bug, where reflection capture build is called, even though we are in mobile preview mode. #jira UE-57743 Change 4005774 by Mark.Satterthwaite Update the wave intrinsics to avoid implicit bool->uint conversion that Apple don't like. #jira UE-57750 Change 4005974 by Mark.Satterthwaite Don't use cubemap array types on iOS Metal as they aren't available on all devices and we need to maintain backward compatibiliy for years to come. #jira UE-57083 Change 4006056 by Mark.Satterthwaite Remove the use of the PrimitiveType argument from Metal draw calls. #jira UE-57822 Change 4006139 by Mark.Satterthwaite - Move the render-pass functions into the MetalRHI implementation for later alteration. - Implement Index buffer UAVs for Metal - makes them more like vertex-buffers so this is one more step on the road to a unified buffer base-class implementation. Change 4006215 by Mark.Satterthwaite Metal's begin & end render/compute pass API implementation will take some time, but for now make it not depend on the parent stub implementation. Change 4006394 by Mark.Satterthwaite In lieu of a real instruction count just use the number of lines in the "Main" function of the shader as the instruction count for Metal. #jira UE-57551 Change 4006493 by Mark.Satterthwaite MetalRHI can currently support 4-component formats for Buffer UAVs - this might need some thought in the future as the API evolves but we might as well take advantage while we can. Change 4006495 by Daniel.Wright Integrate from Refactor branch * New FMaterialRenderProxy function GetMaterialWithFallback which provides both the FMaterialRenderProxy and FMaterial. Needed when falling back to default material, so that proxy and material resource match. * Local vertex factory uniform buffer Change 4006851 by Brian.Karis Fix for joined charts forming an L to inflate both axii. Thanks to Jess Kube of The Coalition. Change 4006852 by Brian.Karis Fix for hard coded reflection capture cube map size. Should fix light static light aliasing in captures Change 4006918 by Brian.Karis New ByteBuffer functionality. Memcpy and scatter upload. Can implement GPU side TArray reflection. Not yet used by checked in code. WIP optimization. Change 4007246 by Guillaume.Abadie Creates lower quality permutation for DOF's gathering pass, without Coc based weighting of the samples, and lower number of gathering ring for fast accumulator. Change 4007291 by Guillaume.Abadie Exposes more DOF scalability settings. Change 4007328 by Guillaume.Abadie Optimises DOF's half res only setup pass using gather4 Change 4007627 by Richard.Wallis Fix for when Magic Mouse cannot zoom in World Composition editor. Missing default SNodePanel::OnMouseMove behaviour. Tested using a classic 2xbutton + wheel mouse and a Mac MagicMouse. #jira UE-57030 Change 4007682 by Richard.Wallis No video when playing HLS streaming video on Mac. 2 Issues, FPS was zero making duration for video sample buffer nonsense and Video Track dimensions were going to zero on the AVAsset once fully initialized when playing HSL streams. Now cache relevant details and handle zero frame rate. Notes: - Caching the frame rate is not as important as we could look it up each time and fix for zero - ignoring that at the moment. - Assume we DO NOT want the FrameSize to be the last fetched video frame size from the AvfMediaVideoSampler as I think that is the video quality for streaming video and not the media frame size. - Renamed a variable in the AvfMediaVideoSample - was called FrameRate but it was the FrameDuration by that point. #jira UE-56734 Change 4007731 by Rolando.Caloca DR - Disable byte buffers on non-hlsl based platforms #jira UE-57851 Change 4007741 by Rolando.Caloca DR - Disable byte buffers on hlslcc platforms Change 4007782 by Mark.Satterthwaite Force Metal shaders, including the stdlib, to recompile. Change 4007918 by Rolando.Caloca DR - vk - Some static asserts Change 4008404 by Arciel.Rekman Do not crash on incompatible Vulkan drivers (UE-57521). #jira UE-57521 Change 4008442 by Daniel.Wright Better comments on ERHIFeatureLevel expectations Change 4008494 by Arne.Schober DR - moved bDeletedThroughDeferredCleanup before begincleanup to catch cases where the reference is added twice to the array. also removed finishcleanup as all they ever did was deleting the pointer anyway, and it sould be adfded if such functionallity is ever required fom outside of the regular destructor. #jira UE-57754 Change 4008730 by Mark.Satterthwaite After the most recent changes to handling uniform buffer dirty bits in MetalRHI we should guard against attempts to set an unbound uniform buffer. #jira UE-57870 Change 4008949 by Brian.Karis Fix compile warning Change 4008951 by Brian.Karis Added LTC LUT textures Change 4009326 by Guillaume.Abadie Compiles out DOF's gathering bokeh simulation on platform other than desktop. Change 4009380 by Krzysztof.Narkowicz Moved area light code before the contact shadows, so contact shadows use representative light's direction. Merged all contact shadows shader code. Contact shadows keep constant screen space length independent of FoV settings. Contact shadows for translucents. Contact shadows for eye. Change 4009555 by Guillaume.Abadie Splits DOFCocTile.usf in two. Change 4009999 by Yuriy.ODonnell MallocStomp can now be enabled on certain platforms using '-stompmalloc' command line argument. Previously it was necessary to modify MallocaStomp.h and re-compile the engine. Currently supported platforms: Win64, Mac, Linux. Replaced hard-coded page size with FPlatformMemory::GetConstants().PageSize. Change 4010288 by Rolando.Caloca DR - vk - Fix for vertex streams Change 4010289 by Krzysztof.Narkowicz D3D12 - fixed depth bounds bug, where depth bounds wasn't properly set to [0;1] after disabling. #jira UE-57510 Change 4010297 by Rolando.Caloca DR - vk - Remove some functions for android Change 4010315 by Rolando.Caloca DR - vk - Remove create info macro Change 4010451 by Rolando.Caloca DR - vk - Reuse samplers - Infiltrator goes from 5759 to 24 samplers! Change 4010627 by Rolando.Caloca DR - vk - Fix missing values for tracking swapchain validation Change 4011924 by Guillaume.Abadie Implements tile based early return optimisation on DOF's postfiltering method. Change 4011941 by Guillaume.Abadie Shaves some ALU in DOF's accumulator for LowQuality permutation. Change 4012093 by Yuriy.ODonnell Disable MallocStompOverrunTest() in static analysis config, as it intentionally performs an out-of-bounds access. Change 4012195 by Rolando.Caloca DR - vk - Fix for mobile backbuffer layout Change 4012202 by Rolando.Caloca DR - vk - Don't use staging buffers on UMA Change 4012467 by Rolando.Caloca DR - Remove redundant check Change 4012486 by Rolando.Caloca DR - Fix missing transition Change 4012518 by Guillaume.Abadie Implements fast shader permutation for DOF's TAA pass. Change 4013084 by Arciel.Rekman Fix for Linux clock discrepancy. - Causing at least one precision issue, possibly more. (Edigrating 4003273, 4012462 from //UE4/Dev-Editor/... to //UE4/Dev-Rendering/...) Change 4013266 by Uriel.Doyon Fixed crash when setting SceneDepthTextureNonMS and not having valid depth buffers in the SceneContext. Change 4013626 by Uriel.Doyon Fixed crash in the lighting build when creating a blueprint of the ALight and placing a light component in it. #jira UE-51672 Change 4013805 by Rolando.Caloca DR - Fix more missing transitions Change 4014128 by Arne.Schober DR - Do not create LocalVFUniformBuffer when running without MVF #jira UE-57929 Change 4014193 by Uriel.Doyon Editing component transforms now invalidate the component's lighting cache. #jira UE-48134 Change 4014282 by Rolando.Caloca DR - vk - Remove extra validation during dump Change 4014584 by Uriel.Doyon Duplicated static meshes now generate a new GUID to prevent possible issues with lightmass. #jira UE-49064 Change 4014604 by Uriel.Doyon UStaticMesh postduplicate now only generates a new GUID if !bDuplicateForPIE. Change 4015460 by Guillaume.Abadie Composes separate translucency within DOF's recombine pass. Change 4015571 by Guillaume.Abadie Refactors tonemapper to use global shader permutation API, that adds permutation for HDR output device rather than dynamic branching that some shader compiler are not very well optimizing. Change 4015984 by Krzysztof.Narkowicz Fixed crash inside DFAO resource allocation, when DFAO viewport has zero area. #jira UE-58000 Change 4016056 by Mark.Satterthwaite Fix Mac Metal shader compilation of texture cube arrays. Change 4016062 by Richard.Wallis Convert things like Space, Delete, F6 etc to unicode so they display correctly on the Mac menu rather than first letter of word. Added the default Mac commands to the GenericCommands so we get a Chord overwrite message and stop things like cmd+ q / w / h from getting bound. #jira UE-46999 Change 4016109 by Mark.Satterthwaite One unified Metal buffer implementation - will make further changes a heck of a lot easier. Change 4016221 by Patrick.Kelly UE-57617: Ensure changing viewmode to ShaderComplexity while in -game Change 4016238 by Guillaume.Abadie Makes clang happy again in Tonemapper. Change 4016309 by Mark.Satterthwaite More *_RenderThread implementations for MetalRHI. Change 4016414 by Mark.Satterthwaite And MetalRHI version of CreateStructuredBuffer_RenderThread... Change 4016498 by Mark.Satterthwaite Don't hold on to the uniform buffers bound to the hull shader when switching to a tessellated draw call as they'll have the wrong buffer layout. #jira UE-57930 Change 4017394 by Juan.Canada OpenGL: Fixed shading artifacts due incorrect UNORM/SNORM conversions in skin/skincache/computetangent shaderss. #jira UE-57691 Change 4017522 by Rolando.Caloca DR - vk - Remove unused code path (old mip generation detection) Change 4017539 by Rolando.Caloca DR - vk - Fix for sky lighting mips showing green on AMD Change 4017542 by Arciel.Rekman Moved appCountTrailingZeros to a non-SSE header (fixes ARM64 build). - Arguably WITH_SLI shouldn't apply to Linux on ARM but the fact that the function wasn't available is bad on its own. Change 4017827 by Guillaume.Abadie Optimises DOF's scattering cost by a third. Change 4017835 by Rolando.Caloca DR - Only allow a render pass to generate mips for one color render target Change 4017889 by Mark.Satterthwaite Cache all the Metal state objects to avoid hitting the API unnecessarily. Change 4018251 by Mark.Satterthwaite Fix broken rendering on Metal that tracked back to the innocuous looking changes in CL #4006495 (no blame attached - these changes are entirely reasonable) and cause various bugs in QAGame's TM-DistanceFields, ElementalDemo and probably more. Doesn't fix broken SpeedTree rendering :(. MetalRHI was allowing uniform buffers to blow away linear texture buffers when the constant buffer has been elided due to dead-code elimination. This problem can manifest without linear textures if the uniform buffer contains both constant data and a resource-table but the shader doesn't use any of the constant data. That's because Metal doesn't separate constant buffers from any other kind of buffer unlike D3D which separates all the slots out - and Metal doesn't provide enough buffers to emulate the D3D arrangement. So far this has only manifested in the MVF + Linear Texture case but a more robust solution will be necessary long term. Change 4018514 by Guillaume.Abadie Implements r.DOF.Scatter.MinCocRadius. Change 4018553 by Guillaume.Abadie Implements r.DOF.Scatter.MaxSpriteRatio to control the budget upperbound of DOF's scattering Change 4020369 by Yuriy.ODonnell Disable MallocStompOverrunTest in all static analysis configs (using USING_CODE_ANALYSIS macro) Previously was only disabled for PVS-Studio. Change 4020620 by Arciel.Rekman Fix XboxOne CIS (fallout of appCountTrailingZeros move). Change 4020949 by Guillaume.Abadie Configures DOF in scalability settings. Change 4021593 by Rolando.Caloca DR - vk - Support for Aftermath style api on AMD Change 4021740 by Rolando.Caloca DR - vk - Change log output Change 4022008 by Uriel.Doyon Fixed renderthread stalls when streaming texture mips on low end systems. Change 4022135 by Rolando.Caloca DR - vk - Fix last mip's layout during mip chain creation Change 4022607 by Jian.Ru Speculative fix for a bug where an invalid vertex buffer is deferenced #jira UE-56229 Change 4022890 by Rolando.Caloca DR - Fix reference count not getting released Change 4023540 by Mark.Satterthwaite Avoid some pointless retain/release calls on Metal Encoders. Change 4023796 by Marcus.Wassmer Tell users they are over the maximum size when allocating very large rendertargets. Change 4025337 by Yuriy.ODonnell Improved use-after-free detection mechanism and physical memory usage of MallocStomp on Windows. MallocStomp on Windows will now reserve virtual address space for every allocation and then commit physical pages only to the valid usable part. Physical pages will be unmapped on Free, but virtual address space will not be released and therefore will never be re-used. Virtual address space is allocated from the OS in blocks of 1GB and then linearly sub-allocated. This reduces VA space usage, as VirtualAlloc returns blocks on 64KB granularity even if we just need 4KB. As a small bonus, this also reduces number of syscalls per allocation. This dramatically increases accuracy of use-after-free detection, but consumes significant amount of memory for the OS page table. Virtual memory limit for a process on Win10 is 128 TB, which means we can afford to keep virtual memory reserved for a long time. Running Infiltrator demo consumes ~700MB of virtual address space per second. Additionally, committing physical pages only for the usable part of the entire virtual block reduces physical memory usage by ~30% compared to old behavior, which allocated and committed entire block of pages via BinnedAllocFromOS and then marks border page as non-accessible. Change 4026047 by Rolando.Caloca DR - Fix test/shipping #jira UE-58148 Change 4026150 by Krzysztof.Narkowicz Force proper ordering of buffer visualization materials - after tonemapping (so exposure doesn't influence it) and before editor stuff like icons. #jira UE-57992 Change 4026226 by Rolando.Caloca DR - Fix static analysis #jira UE-58150 Change 4026354 by Jian.Ru Debug check trying to catch a crash. Only enabled in editor build #jira UE-50111 Change 4026655 by Rolando.Caloca DR - Fix for static analysis #jira UE-58149 Change 4026763 by Rolando.Caloca DR - Remove references to defunct CCT to avoid confusing licensees Change 4027167 by Uriel.Doyon Fixed possible out of bound buffer access when serializing with FDuplicateDataWriter. #jira UE-56509 Change 4027850 by Jian.Ru Prevent log spam #jira UE-50111 Change 4029546 by Rolando.Caloca DR - Compile fixes Change 4029624 by Yuriy.ODonnell Addressed static analysis errors in MallocStomp - VirtualAlloc return value is now explicitly checked. - C6250 is suppressed, as VirtualFree does not release address space by design. Change 4030225 by Yuriy.ODonnell Static analysis warning fix: make sure declaration of Sleep() is consistent between Windows headers and TBB The complexity with this particular case is that the warning is generated in synchapi.h, which is included by some Windows headers. If a module includes TBB and then Windows platform headers, static analyzer will report this warning. Suppressing it would require wrapping all instances of Windows header includes in third-party macros. Current pragmatic solution is to modify the Sleep() declaration in TBB header to be consistent with Windows and to report the issue to Intel for a permanent fix. Change 4030440 by Rolando.Caloca DR - Fix crash on mobile #jira UE-58222 Change 4030570 by Daniel.Wright Allow null SRV's in uniform buffers for feature levels that don't support SRV's in shaders Change 4030618 by Arne.Schober DR - missing tangent/normal sign conversion after integration from main #jira UE-58224 Change 4031588 by Rolando.Caloca DR - vk - Fix compile error when missing vkCmdWriteBufferMarkerAMD Change 4032145 by Mark.Satterthwaite Fix UE-58268 by only emitting the base_instance/base_vertex variables required to fix-up the instance/vertex ID values to match D3D when the Metal version is 1.1 or higher, earlier versions don't support these features. #jira UE-58268 Change 4032209 by Rolando.Caloca DR - Fix crash on EngineTest: Mesh Batch's UserIndex is not a union anymore Change 4033178 by Guillaume.Abadie Fixes FXAA sampling outside viewports, that was causing black outline on bottom and right edge of the screen when ViewSize != BufferSize, problematic for some screenshot automated test. #jira UE-58151 Change 4034489 by Daniel.Wright Fixed UStaticMeshComponent modifying its UStaticMesh when undoing a change. This caused a crash when other static mesh components using the same mesh asset were rendered, since their rendering state was not recreated. A component should not modify its asset during PostEditUndo. * This behavior has been present for a long time but was previously hidden because only the vertex factory of the mesh asset is cached in static draw lists, not any of its rendering resources (eg vertex declaration). Change 4035157 by Uriel.Doyon Fixed deadlock in the streaming code when running with -onethread. #jira UE-58299 Change 4035198 by Rolando.Caloca DR - vk - Fix issue when an older SDK was installed, UBT would pick it (should pick the newer of ThirdParty\Vulkan or installed SDK). #jira UE-58267 Change 4035730 by Arne.Schober DR - Fix missing Fog parameters during LightScattering Injection #jira UE-57608 Change 4035843 by Daniel.Wright Reimplemented support for EyeAdaptation node in opaque materials Change 4036837 by Marcus.Wassmer Replace some of the screenshots to match new un-tonemapped buffer visualization Change 4036980 by Rolando.Caloca DR - vk - Fix deadlock contention during mem allocation on Linux Change 4037225 by Guillaume.Abadie Fixes jittering selection outline. #jira UE-58350 Change 4038056 by Marcus.Wassmer roll back changelist 4026150. breaks a bunch of automated tests by cutting off half the image. Change can go back in later with that part fixed also Change 4038296 by Jian.Ru Static analysis fix #jira UE-58377 Change 4038402 by Ben.Marsh Suppress IncludeTool warnings caused by CL 3998947. Change 4038514 by Arne.Schober DR - Fix case with MVF where instance offset is not supported by the API (in this case only foliage OpenGL and TvOS), usually the buffers are offsetted instead but with MVF we do not use offsetted buffers, therfore the offset needs to be passed into the shader although we are drawing with offset of 0. #jira UE-57652 Change 4038747 by Marcus.Wassmer Back out changelist 3853645, causing us to lose shadows in the shaderhair test Change 4040138 by Rolando.Caloca DR - Fix compile warning Change 4041614 by Rolando.Caloca DR - vk - Fix for Oculus module #jira UE-58267 Change 3810277 by Daniel.Wright Ray Traced Distance Field shadows use a two pass tile culling algorithm with no tile max - fixes flickering from tile overflow in dense areas or with a low sun angle. Costs .2ms on PS4. The distance field scene buffers now use float4 on PS4 and Xbox, saves .1ms on PS4. Change 3817029 by Uriel.Doyon Added UVolumeTexture, which use 3D textures. Compressed formats are supported on DX11, DX12, PS4 and XB1. Projects targetting OpengGL don't have access to compressed formats (as the implementation has texture tiling issues). Add "r.AllowVolumeTextureAssetCreation" set as 0 by default, which controls whether volume texture can be sampled in materials and whether they can be created from 2D texture assets. Platform not supporting BC7, will now fallback on RGBA8 instead of DXT to preserve quality, in an attemps to increase usage of BC7. #jira UE-32263 Change 3819960 by Michael.Lentine Expose UEPhysics Clothing Parameters through UI. Change 3823401 by Rolando.Caloca DR - Add NumQueriesInBatch to RHIBeginOcclusionQueryBatch Change 3844805 by Arne.Schober DR - Increased Intermediate normal of Umodel and Skelmesh from 8bit Unorm Compressed to float. A resave/rebuid/reimport of the meshes is recommended to recover some lost precision. Fixed an issue with compressed (packed) normals on the GPU which were off by one integer representation. Also switched from UNORM to SNORM to get a discrete zero representation and removed some mads from all the VertexShaders. Change 3847283 by Marcus.Wassmer Extra fixes from Uriel Change 3876607 by Rolando.Caloca DR - Use render passes when running occlusion queries - Removes the RHI(Begin|End)OcclusionQueryBatch API Change 3903799 by Daniel.Wright [Integrate] Pass Uniform Buffers * All pass-constant shader inputs should go into the appropriate pass uniform buffer, instead of being set per-draw * Moved many per-draw base pass parameters over to the Base Pass Uniform Buffer * Opaque and Translucent base pass shaders have different uniform buffers, which allows compile errors when accessing an invalid resource (eg GBuffer in Opaque), instead of silently falling back to GBlackTexture Uniform buffers can now contain nested structs with UNIFORM_MEMBER_STRUCT() * This allows composing a uniform buffer at a particular update frequency out of many features, with encapsulation of each feature's parameters in a struct. * Eg deferred fog uses FFogUniformParameters, but so does translucency in the base pass, where FFogUniformParameters is reused nested inside the base pass uniform buffer. * Resources can now be located anywhere in the uniform buffer. Padding is inserted to the cbuffer representation to keep memory layouts matching. In the future the cbuffer could be compacted. * RemoveUniformBuffersFromSource() which works around HLSLCC lack of struct initializers now handles nested structs Change 3917500 by Rolando.Caloca DR - Change depth bounds so only the enable bit is in the PSO, allow min/max to be dynamically modified Change 3964907 by Guillaume.Abadie Implements RectList topology support in RHI. Change 3979171 by Mark.Satterthwaite Copying //Tasks/UE4/Dev-UERNDR-354-mtlpp to Dev-Rendering (//UE4/Dev-Rendering): Rewrites MetalRHI in terms of mtlpp, which is a C++ wrapper library built around Metal's Objective-C API that attempts to reduce overheads and eliminate resource lifetime errors. Regarding mtlpp: - The mtlpp library uses C++ constructor/destructor and smart-pointer style management of Objective-C retain/release calls to prevent over- and under-release problems. - To reduce Objective-C overheads the mtlpp library caches the internal C-function that implements the Objective-C selectors for the most commonly used Metal protocol types and calls the function directly - this avoids objc_msgSend which does this look-up dynamically and thus improves CPU performance slightly. - Another advantage is that mtlpp provides infrastructure to extend the Metal API slightly to help improve MetalRHI - the two important aspects are mtlpp::CommandBufferFence which provides a consistent CPU<->GPU synchronisation primitive and sub-buffer allocations from mtlpp::Buffer which allow for far superior memory management. - Validation functionality is also provided by mtlpp to detect CPU vs. GPU data races and resource lifetime validation - this is expensive and is thus optional and compiled out from Shipping binaries that should be used when performance is most critical. The validation only works between resource modification and *submitted* command-buffers - anything that is being actively encoded on the CPU is ignored and it remains the responsibility of the application to validate the order of operations when encoding. Apple Platform: - LLM support which tracks Objective-C objects is enabled only on macOS - we don't have the necessary libraries to intercept and override the internal system calls on iOS. MetalRHI: - All the types are switched over, (mostly) insuling the external API from the horror of Metal and Objective-C. - Buffers are now managed quite differently, small buffers are allocated from a magazine allocator that allocates in fixed blocks from a larger parent buffer, intermediate sized buffers are allocated from a simple heap allocator that wraps a larger buffer and anything of reasonable size (>2Mb) will use the pooled allocator. This *radically* reduces the number of buffer resources, by as much as a factor of 10, because they are now sub-allocated without the need to use MTLHeap or MTLFence so they are performance equivalent to the existing implementation on the GPU and much faster on the CPU. Total memory use is approximately the same. - Vertex & index buffer management has been updated to reflect changes in the management and to avoid reallocating buffers which provide a Linear Texture (for SRVs) unless strictly necessary. This ensures that even in cases where a dynamic buffer is updated multiple times in a frame it will still work acceptably well. - The Metal ring-buffer implementation is completely different again, this time it can use Managed memory on macOS which allows for much better performance on eGPUs which will be more and more important for Mac. - Everyone that needs to wait on a command-buffer fence (rather than a command-buffer itself) now use mtlpp::CommandBufferFence, which prevents race conditions between the different command-buffer handlers (which sometimes execute out of order). - LLM tracking should now report the same data as the MetalRHI stats group for buffer & texture allocations - there is no segmentation for Vertex/index/Structured/Uniform allocations in Metal so these numbers are going to be wrong and will need to be rethought. - What will be unseen are the number of small but important resource usage fixes that avoid stale resources from being bound to the device after the point at which they become invalid. This should eliminate a class of errors where the GPU uses a resource pointer that is modified by the CPU and was necessary to satisfy the new mtlpp validation code. Other: - Remove the Metal focused workarounds from the ClothBuffer resource binding and related vertex-buffer SRV - these were put in when MetalRHI/MetalShaderFormat couldn't handle float->uint conversions correctly and they should now. - Fix a validation error caused by trying to render a 0-sized scissor rect which is invalid in Metal and simply pointless elsewhere. - Consistency of disabling the Manual Vertex Fetch behaviour in shaders. #jira UERNDR-354 Change 3979312 by Rolando.Caloca DR - Remove bogus bKeepOriginalSurface parameter in CopyToResolveTarget Change 4005122 by Rolando.Caloca DR - Support for PS4 Index Buffer UAVs Change 4016298 by Guillaume.Abadie Fixes DOF hybrid scattering on platforms that supports RectList topology. Change 4018575 by Guillaume.Abadie Optimises DOF's reduce pass when doing scattering compilation. Change 4020317 by Guillaume.Abadie Implements WaveBroadcastIntrinsics.ush. [CL 4042226 by Marcus Wassmer in Main branch]
2018-05-01 10:36:33 -04:00
}
void FOpenGLDynamicRHI::RHINextSubpass()
{
IRHICommandContext::RHINextSubpass();
if (RenderPassInfo.SubpassHint == ESubpassHint::DepthReadSubpass)
{
FOpenGL::FrameBufferFetchBarrier();
}
}
void FOpenGLDynamicRHI::RHIBeginTransitions(TArrayView<const FRHITransition*> Transitions)
{
}
void FOpenGLDynamicRHI::RHIEndTransitions(TArrayView<const FRHITransition*> Transitions)
{
}