Disabled by default, set r.Mobile.VirtualTextures=1 to enable
known issues: RVT compression is not implementted, Android OpenGL will have R and G channels swapped for uncompressed streaming VT, no sRGB support
#jira UE-79955
#rb jeremy.moore
#ROBOMERGE-SOURCE: CL 11070636 via CL 11070637
#ROBOMERGE-BOT: (v637-11041722)
[CL 11070638 by dmitriy dyomin in Main branch]
#rnx
#rb none
#ROBOMERGE-SOURCE: CL 10869240 via CL 10869516 via CL 10869902
#ROBOMERGE-BOT: (v613-10869866)
[CL 10870584 by ryan durand in Main branch]
#ROBOMERGE-SOURCE: CL 10221882 via CL 10222025 via CL 10222065 via CL 10222106
#ROBOMERGE-BOT: (v590-10202696)
[CL 10222163 by ethan geller in Main branch]
#rb maxwell.hayes
#ROBOMERGE-SOURCE: CL 9826412 via CL 9826418 via CL 9826421
#ROBOMERGE-BOT: (v546-9757112)
[CL 9826427 by ethan geller in Main branch]
#rb Aaron.Mcleran, Marc.Audy, Ethan.Geller
#jira UE-80323
#ROBOMERGE-OWNER: jimmy.smith
#ROBOMERGE-AUTHOR: jimmy.smith
#ROBOMERGE-SOURCE: CL 9542946 via CL 9542950
#ROBOMERGE-BOT: (v521-9539702)
[CL 9543087 by jimmy smith in Main branch]
Also rework logic for determining whether a project needs to be compiled, to more closely match equivalent code in UAT. ITargetPlatform::NeedsTempTarget() now allows querying whether a project needs a temporary target to be generated.
#rb none
#jira UE-79833
[CL 8623682 by Ben Marsh in Dev-Build branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 4125165 by Ben.Woodhouse
[INTEGRATE] Integrate from //UE4/Main/...@4124306 to //UE4/Dev-Console/...
Change 4136060 by Marcin.Undak
Editor: fixed device unclaiming
#jira UE-58464
Change 4190321 by Marcin.Undak
Linux: fixes for automation and RecordPerformance
#jira UE-61053
Change 4199010 by Marcin.Undak
Linux: remove unnecessary -g option
Change 4201876 by Marcin.Undak
First implementation of WebM media player for Windows and Linux
Change 4201922 by Marcin.Undak
Whitelisted WebMem plugin only for Windows and Linux
Change 4202203 by Marcin.Undak
WebM build fixes
Change 4223102 by Marcin.Undak
Vulkan: console commands for testing device lost
#jira UE-61789
Change 4225028 by Marcin.Undak
WebMMedia: disabled on Linux until fixed compilation issues
Change 4231444 by David.Harvey
UI - Fixing where the virtual cursor renders. It doesn't correctly take into account DPI scale, which isn't apparent except on the Xbox One.
Integrate as edit from CL 4166648.
#jira UE-62115
Change 4233057 by Marcin.Undak
TestPAL: added new test for string allocation size
Change 4234649 by Marcin.Undak
Linux: switched linux plaform to 16bit wide strings
Change 4235253 by Marcin.Undak
TestPAL: compilation fix for platforms that don't use DirectoryWatcher
Change 4235477 by Marcin.Undak
Linux: re-enabled WebMMedia plugin
Change 4242242 by Marcin.Undak
WebMMediaPlayer: implemented proper format retrieving. MediaFrameworkTest now works.
Change 4243321 by Marcin.Undak
WebMPlayer: static code analisys fix
Change 4243505 by Marcin.Undak
MediaFrameworkTest: added WebM video for testing
Change 4244646 by Marcin.Undak
WebMMedia: improved concurrency
Change 4244735 by Arciel.Rekman
Vulkan: skip unnecessary transitions properly (UE-62348, merge).
(Edigrating CL 4244274 from Release-4.20)
Change 4246685 by Arciel.Rekman
PhysX: remove Cygwin from %PATH% on Windows as it confuses CMake (UE-62326).
Change 4247808 by Marcin.Undak
WebMMediaPlayer: added support for seeking
Change 4254841 by Marcin.Undak
WebM: module dependencies fix
Change 4255124 by laz.matech
Updated UMG_AllPaletterWidgets' combo box to include options so that when selected, the dropdown presents 2 options instead of it appearing like it is broken
#jira none
Change 4256415 by Marcin.Undak
WebM: added missing editor module
Change 4256716 by Arciel.Rekman
Make SetReuseAddr() also set SO_REUSEPORT where available (UE-57076).
- Pull request #4617 by malavon.
#jira UE-57076
Change 4266049 by Marcin.Undak
Linux: UnrealLightmass and CrashReportClient compilation fixes
#jira UE-62521
#jira UE-62522
Change 4266678 by Arciel.Rekman
Merge speculative commit to get aligned pointer on mmap().
(Edigrating CL 4225330)
Change 4267998 by Anthony.Bills
Fix DBufferC clear color due to bad merge.
#jira UE-62649
Change 4269441 by Marcin.Undak
GenericPlatformStrings::VarArgs() implemented %-*s, %lu, %z, %h formatting
#jira UE-62582
Change 4269712 by Marcin.Undak
WebMMediaPlayer: removed LibSimpleWebM
Change 4272849 by Marcin.Undak
WebMMediaPlayer: fixed re-initialisation
Change 4277931 by Arciel.Rekman
Linux: switch to Vulkan by default (UE-62807).
- Default behavior: attempt Vulkan first, but in case of failure instead of quitting silently fall back to GL, unless -vulkan is passed.
- Forcing GL is still possible.
Change 4277965 by Arciel.Rekman
Fix standalone applications after the Vulkan switch.
Change 4277968 by Arciel.Rekman
Linux: make CrashReportClient headful (UE-14089).
- The -unattended flags keep even a headful CRC usable on the servers.
- ldd did not change. Need to check Localization stuff to see if there are any deployment concerns.
#jira UE-14089
Change 4279402 by Arciel.Rekman
Merge from 4.20.1: Vulkan: log validation errors. Also fix handling of some message types (UE-62628).
(Edigrating 4273516 from //UE4/Release-4.20/... to //UE4/Dev-Console/...)
Change 4279992 by Marcin.Undak
Linux: fix SlateViewer compilation
#jira UE-62831
Change 4285613 by Arciel.Rekman
Vulkan: fix mismatched layout.
- I tested with RecordPerformance on InfiltratorDemo and haven't found any impact.
Change 4285622 by Arciel.Rekman
Merged from 4.20.2: Linux: do not refuse to start if system limits cannot be raised (UE-62515).
- Too aggressive behavior, which can break cooking for no valid reason.
- If a commandline argument is used, the engine will still treat inability to raise the limits as an error.
(Edigrating 4273547 from //UE4/Release-4.20/... to //UE4/Dev-Console/...)
Change 4293083 by Arciel.Rekman
Merging //UE4/Main@4291654 to //UE4/Dev-Console
Change 4295297 by Marcin.Undak
Vulkan: temporary disable generic pipeline cache saving to prevent crashes
#jira UE-62848
Change 4300191 by Arciel.Rekman
Delete files added under lowercase directories.
Change 4300211 by Arciel.Rekman
Re-add files deleted in previous commit under camel-cased paths.
Change 4300895 by Arciel.Rekman
Linux: fix editor build
Change 4303543 by Ben.Marsh
Fix compile error for FortGPUTestBed.
Change 4305659 by Marcin.Undak
[Vulkan][Engine] Update the Vulkan RHI to obey r.VSync (and the vsync and novsync command-line arguments).
Change 4222769 by Jason.Stewart@Jason.Stewart_AMD_Dev_Rendering_threadripper-win10 on 2018/07/19 10:55:48
The original implementation ran into a latent thread hazard between the RHI thread and the rendering thread, where the rendering thread would try to use the backbuffer of the swap chain while the swap chain was being recreated (specifically after the swap chain recreation code had released and nulled out the back buffer, but before swap chain creation had actually happened to get a new back buffer). This implementation addresses that issue.
This is Tim's code. I'm just submitting it as Tim is currently out of office.
Change 4305661 by Marcin.Undak
Moved libwebm and libvpx inside WebMMediaPlayer directory
Change 4308659 by Marcin.Undak
Linux: fixed LLDB visualizers
#jira UE-52619
Change 4313650 by Marcin.Undak
WebMMediaPlayer: implemented looping
Change 4321713 by David.Harvey
removed hard-coded platform labels from device output log window in favour of ITargetPlatform::SupportsFeature + updated editor tooltip with correct platform list.
https://ec-01.epicgames.net/commander/link/jobDetails/jobs/8641984?
Change 4321942 by Brandon.Schaefer
Linux: Use the Target RHI list as the default ordering for which RHI is prefered
Also update the RHI list in the project settings for our default list
#jira UE-59487
#review-4316134 @Arciel.Rekman
Change 4322230 by Brandon.Schaefer
Treat %lf as %f in GenericWidePlatformString
#jira UE-62582
Change 4322392 by Brandon.Schaefer
Make sure our fmt size is large enough to check indexes
#jira none
Change 4322895 by Brandon.Schaefer
Actually get the current size of Src as it could have been moved down
#jira none
Change 4327866 by Brandon.Schaefer
Linux: Tell the platform misc what RHI we are using
#jira none
Change 4328926 by Brandon.Schaefer
Linux: Add haptic support for controllers
Github PR #4167 (thanks maiself!)
#jira UE-51681
Change 4328963 by Arciel.Rekman
TestPAL: improve the test by randomizing allocation size.
- The range will no longer be constrained to <=128KB at once, allocations can be as big as 16MB but they will unevenly distributed, with smaller sizes being more frequent.
Change 4329208 by Arciel.Rekman
hlslcc: suppressed benign compiler warning during the Linux build (UE-43988).
Change 4329283 by Arciel.Rekman
Linux: replace CachedOSPageAllocator with PooledVirtualMemoryAllocator for Linux.
For the explanation of FPooledVirtualMemoryAllocator, see PooledVirtualMemoryAllocator.h
For the details, test data and comparisons, message Arciel Rekman.
Relevant command line args added:
-vmapoolscale=<float> (defaults to 1.4)
-vmapoolevict
-novmapoolevict
By default, freed memory will not be evicted from RAM (unless running on a server)
Also changed:
- Removed the fixed-size pool previously used by Linux (and supporting machinery like scaling it on start)
- Replaced the way we manage free blocks from pointers to a bitmap to reduce memory footprint.
Change 4331946 by Luke.Thatcher
[CONSOLE] [^] (merging CL 4162064) Implement new thread heart beat clock to solve the suspend/resume problem across all platforms.
- The hang and hitch detectors now maintain their own clocks which are ticked by their respective threads.
- If the title is suspended, the ticking thread will stop and the clock will stop advancing. On resume, the maximum delta in the clock is clamped to a small value, so we ignore all the time the thread was not ticking for (i.e. the duration of the title being suspended).
- As such, we don't need any logic for handling PLM suspend/resume in the hang and hitch detectors, so this change removes that too.
#jira FORT-96886
Change 4331973 by Luke.Thatcher
[CONSOLE] [^] (merging CL 4183499) Add frame-present-based hang detection.
- RHIs call FThreadHeartBeat::PresentFrame() whenever they present a frame to the swap chain.
- These calls form a separate heartbeat from the thread-based ones, allowing the hang detector to fire if, for example, the game thread is stuck in an async loading loop and is ticking the game thread heartbeat, but making no progress.
- Also refactored ThreadHeartBeat.cpp to move hang detection logging into a FORCENOINLINE function. This will put OnHang and OnPresentHang at the top of the callstack in retail crash dumps, making the bucketing easier to recognise.
Change 4332200 by Luke.Thatcher
[CONSOLE] [+] (merging CL 4227517) Add PlatformDebugData to FShaderResource.
- We can use this to store platform specific shader symbols etc. The data gets serialized to the DDC and can be retrieved during a cook.
- Data is entirely discarded in cooked builds, and is a no-op on platforms which don't implement support for shader debug data.
- Bumped shader version to invalidate DDC keys.
Change 4332407 by Luke.Thatcher
[CONSOLE] [CORE] [!] (merging CL 4279686) Fixed unaligned integer load macro inconsistencies.
- Renamed PLATFORM_SUPPORTS_UNALIGNED_INT_LOADS to PLATFORM_SUPPORTS_UNALIGNED_LOADS
- Merged it with REQUIRES_ALIGNED_ACCESS and REQUIRES_ALIGNED_INT_ACCESS
- Fixed Linux platform which had both the old macros defined to 1, which is wrong because they are mutually exclusive.
Change 4333386 by Luke.Thatcher
[CONSOLE] [!] (merging CL 4317367) Fix compile error in AnimationCompression.h
Change 4334395 by Arciel.Rekman
Corrected PLATFORM_DESKTOP definition.
Change 4336190 by Anthony.Bills
(Original CL4314280) Use the debug file writer when using framepro. This buffers more data which should reduce stalls when writing out on certain platforms.
#jira none
Change 4336291 by Anthony.Bills
Use a clamped local clock when timing out the renderthread.
- This prevents suspend and resume issues on platforms where suspend events may not occur or the system clock is not set to the process time.
#jira none
Change 4336292 by Anthony.Bills
(Orignal CL 4195778) Fix printing of the hang detector multiplier and other logging.
"f" is the correct format specifier for a double.
#jira none
Change 4336307 by Anthony.Bills
(Orignal CL 4257875) Use the correct clock when printing the scoped hitch stat.
- Needs to be the internal FGameThreadHitchHeartBeat clock incase FPlatformTime::Seconds becomes out of sync with FrameStartTime.
#jira none
Change 4336321 by Anthony.Bills
(Original CL 4258186) Add GetNoInit function to FGameThreadHitchHeartBeat.
#jira none
Change 4336397 by Anthony.Bills
Fix redefinition of macro.
#jira none
Change 4336738 by Brandon.Schaefer
Linux: Add options for ASan, TSan, and UBSan
#jira UE-62784 UE-62803 UE-62804
Change 4336791 by Brandon.Schaefer
Linux: Add missing xml comments
#jira none
Change 4336957 by Joe.Barnes
Integrate as edit CL#4218145:
Convert some of our Vector macros to inline functions as thier names class with 3rd party functions.
#jira ue-61733
Change 4338228 by Arciel.Rekman
Switch to v12 Linux cross-toolchain (UE-63589).
#jira UE-63589
Change 4339195 by Ben.Woodhouse
Integrate-as-edit latest CSV profiler changes up to CL 4292187
Change 4339237 by Ben.Woodhouse
Integrate-as-edit CL 4226269
Add support for extern GPU stats, so we can use one stat across multiple CPPs
Fix the Forward rendering GPUProjection stat
Change 4339239 by Ben.Woodhouse
Integrate-as-edit CL 4292520
Support different sized buffers for FArchiveFileWriterGeneric per-platform so we can tune per-platform as needed.
No changes to existing defaults values of 1KB for read, 4KB for write:
#define PLATFORM_FILE_READER_BUFFER_SIZE 1024
#define PLATFORM_FILE_WRITER_BUFFER_SIZE 4096
#define PLATFORM_DEBUG_FILE_WRITER_BUFFER_SIZE 4096
Change 4339241 by Ben.Woodhouse
Integrate-as-edit CL 4210462
Comment out an assert while I investigate properly (doesn't appear to be fatal)
Change 4339265 by Anthony.Bills
[Linux] Fix ContainerBuildThirdParty.sh to pick the first default interface.
#jira none
Change 4339274 by Anthony.Bills
[Linux] Cache the bundled toolchain when using git builds.
- Also will not attempt to download the toolchain if AutoSDK or Multiarch root are specified.
#jira UE-63394
Change 4339623 by Anthony.Bills
[Linux] Update native toolchain buildscript to support clang 6.0.1
- Main issue was due to libxml2 as an extra dependency of some test libraries, so needs to be disabled via DLLVM_ENABLE_LIBXML2.
#jira UE-63588
Change 4339685 by Anthony.Bills
[Linux] Update toolchain setup script to download v12 when it is available.
#jira UE-63588
Change 4339833 by Ben.Woodhouse
[INTEGRATE] Integrate from //UE4/Main/...@4339548 to //UE4/Dev-Console/...
Change 4339843 by Ben.Woodhouse
Attempt to fix a weird possible bad merge issue
Change 4339890 by Ben.Woodhouse
Fix a build issue
#jira nojira
Change 4340314 by Anthony.Bills
Fix mesh decal rendering when write mask is enabled and no deferred decals are in the scene.
#jira UE-55159
Change 4341099 by Marcin.Undak
Mediashader fix
#jira UE-63650
Change 4341106 by Marcin.Undak
QAGame: added MediaPlayer for Linux test
#jira UE-59667
#jira UE-62775
#jira UE-62780
Change 4341107 by Marcin.Undak
WebMMediaPlayer: blacklist all not supported platforms
#jira UE-59667
#jira UE-62775
#jira UE-62780
Change 4341110 by Marcin.Undak
WebMMediaPlayer: enable for Unix platforms
#jira UE-59667
#jira UE-62775
#jira UE-62780
Change 4341804 by Luke.Thatcher
[CONSOLE] [!] Fix memory scribble in black depth texture cube on platforms with 16-bit depth.
- Original code was writing a FColor into the locked texture data, which causes a 2 byte scribble if the PF_ShadowDepth format is 16-bits.
[!] Also fixed GWhiteTextureCube being black. FColor::White is not a compile-time constant, so an initialization order problem meant the value of FColor::White is actually black when the GWhiteTextureCube constructor runs.
#jira none
Change 4342244 by Anthony.Bills
[Linux] Allow restarting the crashed application from the crash report client
#jira UE-62903
Change 4342636 by Brandon.Schaefer
Linux: Update LLVM libc++.a libc++abi.a with version 6.0.1
#jira UE-63587
Change 4343420 by Marcin.Undak
Fixed assert in console
#jira UE-63643
Change 4345166 by Luke.Thatcher
[CONSOLE] [!] (merging CL 4345072) Fix initialization order bug with FColor and FLinearColor constants.
- The original constants were dynamically initialized during startup. Using these constants from other global constructors may result in getting the wrong value (transparent black) if a given constructor runs before FColor/FLinearColor's constructor.
- Adding constexpr to the FColor/FLinearColor constructor makes these constants known at compile-time, and included in the readonly data section, so they don't require dynamic initialization.
[~] Also restores the original constant color values in RenderUtils.cpp
#jira none
Change 4345860 by Arciel.Rekman
Make StompMalloc return 16-byte aligned memory on 64 bit platforms (UE-63743).
#jira UE-63743
(Edigrating 4345734 from Release-4.20)
Change 4345950 by Brandon.Schaefer
Linux: Remove libelf/libdwarf fallback for symbolicating symbols during a crash
#jira UE-63103
Change 4350249 by David.Harvey
helper function to retrieve an LLM tag's name, including platform tags.
Change 4351184 by Ben.Woodhouse
[INTEGRATE] Integrate from //UE4/Main/...@4348973 to //UE4/Dev-Console/...
Change 4351593 by Ben.Woodhouse
Clean up aggressive batching (remove xbox specific #if and //TODO)
#jira UE-46780
Change 4351734 by James.Cobbett
Setting TM-ShaderModels_Niagara to always load
Change 4351984 by Marcin.Undak
QAGame: restored platform media source in TM-ShaderModels map
Change 4353508 by Ben.Woodhouse
[INTEGRATE] Integrate from //UE4/Main/...@4353110 to //UE4/Dev-Console/...
Change 4354237 by Anthony.Bills
[Linux] Fix Linux compilation issues due to change over to TCHAR being char16_t.
#jira UE-63544
Change 4354334 by Anthony.Bills
[Linux] (Missing file from CL 4354237) Fix Linux compilation issues due to change over to TCHAR being char16_t.
#jira UE-63544
Change 4355994 by Brandon.Schaefer
Linux: Agree not Agreed
#jira UE-63937
Change 4356068 by Joe.Barnes
Replace a duplicate DEFINE_EXPRESSION_NODE_TYPE(bool,...) causing errors with iOS unity build compiles. Remove version in ExpressionParser.cpp and include TextFilterExpressionEvaluator.h.
#jira ue-63877
Change 4357726 by David.Harvey
[iOS] add clean support for device output log, after catchup.
#jira none
Change 4357724 by Ben.Woodhouse
[INTEGRATE] Integrate from //UE4/Main/...@4357176 to //UE4/Dev-Console/...
Change 4359634 by Ben.Woodhouse
[INTEGRATE] Integrate from //UE4/Main/...@4359072 to //UE4/Dev-Console/...
Change 4359958 by Ben.Woodhouse
Fix FortGPUTestbed merge issues via p4 copy (content files didn't get moved before for some reason)
Change 4361108 by Anthony.Bills
Fix webm deprecation issues with DrawPrimitiveUp.
#jira UE-64012
Change 4361896 by James.Cobbett
Re-saving materials so that they render correctly outside of the editor.
Change 4362262 by Anthony.Bills
Fix for WebM video decoder crash.
#jira UE-64025
[CL 4362700 by Joe Barnes in Main branch]
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 4073167 by Krzysztof.Narkowicz
Added subsurface profile for eye shading model.
#jira none
Change 4073422 by Krzysztof.Narkowicz
Added dual specular for subsurface profile shading model.
#jira none
Change 4075278 by Krzysztof.Narkowicz
Fixed forward reflection/refraction rendering issues, which caused ShaderModels.Material.Refraction to fail.
#jira none
Change 4084231 by Krzysztof.Narkowicz
Dual specular - replace lobe spread with two separate roughness multipliers. Default material roughness is now replaced by an average lobe roughness in order to support non dual specular features.
#jira none
Change 4092798 by Matt.Collins
Some HDR refactoring.
Previously the DisplayOutput and ColorGamut were only set in GameUserSettings.
I added a Sink that checks the HDR enable. If it's toggled we apply the correct DisplayOutput and ColorGamut for the current platform (this way we get good settings even if you toggle via the console). These settings are still exposed via the console and can be set independently if the user wants.
Change 4096954 by Chris.Bunner
Added ShaderModelID as scene texture option and renamed existing value to ShaderModelColor to better reflect the internal code.
Change 4111285 by Brian.Karis
Eye shading update.
Added Iris normal (disabled). Removed wrap. Fixed contact shadows.
Change 4155261 by Krzysztof.Narkowicz
Planar reflection prefilter - use scene viewport size instead of reflection target size in order to keep filter size constant in screen space. This makes planar reflection filter more stable in case of dynamic resolution.
#jira none
Change 4167644 by Krzysztof.Narkowicz
Global shader map is now stored in multiple DDC entries (one per shader filename) instead of keeping everything in a single one. This allows to skip recompilation of unchanged shader files.
Change 4183727 by Yuriy.ODonnell
Implemented auto-conversion from deferred to DBuffer decals in forward shading mode (when GBuffer is not available).
Added support for specular and metallic channels for DBuffer decals, based on work by Chris Bunner.
This requires DBufferC to be expanded from 2 to 4 channels, leading to slight increase in DBuffer bandwidth and memory requirements.
Appearance of DBuffer decals is affected by this change, as specular and metallic channel values previously hard-coded in DBufferDecalShared.ush.
Decals were forced to be non-metallic and have specular of 4% (0.5 numeric value). Now the authored decal material values will be used, which matches GBuffer decals.
Added support for DBuffer decals with emissive component.
Most decal types can now be automatically converted, with the exception of stain decals. Those are currently approximated as regular translucent decals.
Change 4197684 by laz.matech
Added a PostProcess Volume test to the map to test that Cinematic Depth of View can be achieved through PPVs as well. Changed the BP_DepthOfFeildPOV asset - I exposed Focus Method so that it can be disabled for the PPV test. Added a second Hair Model head to the InFocusHair test so that it tests in and out of focus hair models (changed the name of the test to FocusHair).
#jira none
Change 4225614 by Rolando.Caloca
DR - Enable depth collision particles on Vulkan mobile
Change 4235489 by Uriel.Doyon
Removed r.DefaultFeature.PointLightUnits and r.DefaultFeature.SpotLightUnits and replaced them by a single r.DefaultFeature.LightUnits which also controls the units of newly placed rect lights.
#jira UE-59525
Change 4260154 by Mark.Satterthwaite
Parallelize the creation of Metal archives and libraries when they are broken up into smaller sub-libraries, this should reduce apparent cook time by going wide across threads on the host of the cooker.
Change 4270594 by Brian.Karis
Fix for textured rect light L pointing away from plane due to approximate diffuse integration.
Change 4273361 by Daniel.Wright
Particle Cutouts with 8 verts now always use stochastic approach. Circle textures with > 234 edges in the convex hull were overflowing the uint64 calculation of the total number of combinations, causing an infinite loop.
Change 4309174 by Mark.Satterthwaite
Graph device utilization from the driver monitor stats - really helps see how well the GPU is being used.
Change 4310121 by Matt.Collins
Optmizing RemoveUniformBuffersFromSource. Brings it from ~20% to ~1.5% in my testing.
#jira none
Change 4312960 by Daniel.Wright
Fix from Stephen Hill for incorrect light grid culling near the near plane
Change 4314169 by Richard.Wallis
FShaderCache and associated public structures are now marked as deprecated. All FShaderCache code hooks removed from MetalRHI, OpenGLDrv and engine Launch/Shutdown logic.
#jira none
Change 4320760 by Arne.Schober
DR - Remove SV_Coverage from basepass interpolants when running with Masked in early Depth with ForwardShading as otherwise earlyZ will be disabled (as the PS has to run).
#jira UE-60992
Change 4334607 by Uriel.Doyon
Added custom overrides to reset ULightComponent::Intensity to default (in FLightComponentDetails).
Now settings a light Intesity to default resets the brightness to the archetype brightness.
This handles correctly cases where the intensity units differs between the two objects.
Also changed FLocalLightComponentDetails so that changing intensity units kepts the same brightness
(by recomputing the Intensity).
#jira UE-61401
Change 4336188 by Rolando.Caloca
DR - Added -ReduceThreadUsage so programs can use less threads (for SCW )
Change 4337967 by Rolando.Caloca
DR - Remove unused RHISupportsShaderCompression function
#rb none
[CL 4358751 by Rolando Caloca in Main branch]
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 4048227 by Rolando.Caloca
VR - vk - Some Vulkan merge conflicts resolved
Change 4078631 by Mike.Beach
Fixing MR Calibration so it scales the alignment model according the the capture's FOV (so they appear the same size across capture devices - leading to a homogenous experience).
Also moved the FOV override config setting to be a console command/setting (mrc.FovOverride) to help in testing this.
#jira UE-55499
Change 4080389 by Mike.Beach
Speculative fix/guard against live crash - trying to catch malformed model data. Logging helpful information to give us insight in the future.
#jira UE-57680
Change 4080792 by Joe.Graf
Prep work for moving face ar to its own plugin
Change 4080852 by Joe.Graf
Prep work for moving face ar support to its own plugin
Change 4081735 by Keli.Hlodversson
Remove a workaround change from the Lumin branch that should not have been merged over.
Change 4081737 by Keli.Hlodversson
Fix SteamVR forcing full screen regardless of user settings.
#jira UE-51654
Change 4082323 by Joe.Graf
Pulled face ar support into its own plugin so that it can be enabled/disabled independently from room ar
Change 4082334 by Joe.Graf
Changed where face LiveLink was logging to
Change 4095529 by Joe.Graf
Dramatically simplified the face API isolation to a separate plugin
Change 4103356 by Joe.Graf
Fixed a threading bug that appeared when migrating the face ar code into its own plugin
Change 4109752 by Joe.Graf
Added a setting to specify the type of AR world alignment transform type a session should use
Deleted some old ARKit configuration code that wasn't really used
Fixed the setting of light estimation using the wrong value to determine the setting on ARKit
#jira: UE-58544, UE-59371
Change 4110601 by Jason.Bestimt
#DEV-VR - Adding spaces to plugin names
#JIRA: UE-58642, UE-58643
Change 4110721 by Jason.Bestimt
#DEV-VR - Removing question mark from tooltip
#JIRA: UE-58641
Change 4111412 by Joe.Graf
Fixed a bad merge of BaseEngine.ini
Change 4111902 by Nick.Whiting
Adding in support for locking HMD tracking to an external tracking environment (e.g. mo cap). This is not meant to drive the position continually in lieu of an HMD's built in system, but is rather to help keep the HMD from generally getting out of alignment with another tracking system. Two functions, CalibrateExternalTrackingToHMD and UpdateExternalTrackingHMDPosition allow for arbitrary rigid offsets between the HMD and the external tracking source, and updating as desired.
Change 4116059 by Joe.Graf
First pass integration of ARKit 2.0 (very wip, thar be dragons everywhere)
Change 4116109 by Jason.Bestimt
#DEV-VR - Disable editing of Tegra Debugger setting for installed builds
#JIRA: UE-58636
Change 4117821 by Jason.Bestimt
#DEV-VR - Fix for crash in DebugCanvas on application termination
#JIRA: UE-58865
Change 4118560 by Joe.Conley
MagicLeap ImageTrackerComponent: Adding check for PLATFORM_LUMIN to prevent PIE crash running code that was designed to only run on device.
Tested PIE in editor and launching to device.
Change 4118626 by Jason.Bestimt
#DEV-VR - Removing ES2 from bMobileRendering Tooltop
#JIRA: UE-58640
Change 4119786 by Joe.Conley
Merging CL-4118965 from Release-4.20 using DevVRtoRelease420
Change 4119906 by Joe.Conley
Magic Leap settings: Changing comment/tooltip on mobile rendering flag to not mention vulkan and just say "mobile". Still technically possible to use ES2 but it's hidden.
#jira UE-59755 "Magic Leap: Project setting to set vulkan or ES2 needs to be removed"
Change 4122067 by Jason.Bestimt
#DEV-VR - Copying all relevant files for Resonance Audio
Change 4122930 by Keli.Hlodversson
Use XR ThreadUtils when scheduling GameTrackingThread to Render and RHI thread.
#jira UE-58852
Change 4123848 by Nick.Whiting
Enabling RHI threading on Lumin
Change 4124116 by Nick.Whiting
Adding support for DefaultStereoLayers on Lumin
Change 4151051 by Joe.Conley
Magic Leap: Override IniPlatfromName() for LuminTargetPlatform to report "Lumin" rather than reporting the value from it's parent, AndroidTargetPlatform, "Android".
#jira UE-60389 "Lumin - Need to switch the *Phaedra* launch on option "All_Android_On..." to a single "All_Phaedra_On..." with no expandable options"
Unsure if this will affect more than just this display name, as IniPlatformName() is used in a few places in the code, but eventually it will need to be "Lumin" anyway so we'll fix fallout as we find it.
Change 4160099 by Nick.Whiting
Enabling RHI threading on Vulkan by default on Magic Leap
Change 4163986 by Joe.Graf
Merging using Dev-VR_to_Release-4.20
Change 4164500 by Joe.Graf
Merging using Release-4.20_to_Dev-VR
Change 4166311 by Jason.Bestimt
#DEV-VR - Merge from //UE4/Dev-MagicLeap/... @ CL 4136411
Change 4167085 by Ryan.Vance
#integrating 4.20 cl 4132173 to fix mobile vulkan occusion query issues.
#jira UE-61051
Change 4167151 by Jason.Bestimt
#DEV-VR - Manual merge of Dev-MAIN to resolve conflicts for robomerge
Change 4167983 by Joe.Conley
For Lumin, only build shaders for OpenGL or Vulkan, not both. Fix a shader compile error in BogMyrtle material (can't use SpeedTree node on mobile).
#jira UE-61126 Lumin Sample: Warning: LogMaterial : Failed to compile material for GLSL_ES2
Change 4168244 by Nick.Whiting
Fix for stereo layers crashing on exit, where the DebugCanvas was destroyed after the layer manager, causing a nullptr dereference
Change 4170213 by Mike.Beach
CIS build fix - removing duplicate definition & adding a missing #pragma once to a header fille
#mlqdr
Change 4170299 by Mike.Beach
LNK fix - fixing up more fallout from the recent merge from DevMain. Adding in missing function that was dropped in the merge (matching Main's version).
Change 4170962 by Nick.Whiting
Back out changelist 4160099: Removing the enabling by default on lumin
Change 4171227 by Chance.Ivey
Unreal Engine logos for Portal and Model. These need to be set in Project Settings.
Change 4171260 by Chance.Ivey
Removing ML basic assets for project icons.
Change 4171939 by Joe.Conley
#jira UE-61124 Lumin Sample: EDL errors during Launch On
Change Lumin Sample to use vulkan, like we do for everything by default now.
Didn't see this error after this change.
Change 4172321 by Mike.Beach
Sizing the debug layer properly for the magic leap device (inverting the y when rendering with opengl).
#jira UE-60299
#mlqdr
Change 4174175 by Jason.Bestimt
#DEV-VR - Fix for dragging a "skylight" from lighting menu directly into sequencer.
Change 4174237 by Jason.Bestimt
#DEV-VR - fixing initializer order
#JIRA - UE-61337
Change 4175281 by Joe.Graf
Added support to stream a preview image and the accompanying AR world data for shared AR experiences
Change 4175656 by Ryan.Vance
Copying //Tasks/UE4/Dev-VR-VulkanMedia to Dev-VR (//UE4/Dev-VR)
Preliminary vulkan media player support for ML.
There are a number of tasks left to do with this feature before committing to main:
- Clean up leaked color conversion handles
- Texture slot binding is not robust for media textures
- Color conversion extension init should be move to a lumin platform function
- Mobile renderer's base pass may collapse multiple materials together into the same drawing policy, so the immutable samplers referenced in the pso would bleed into other materials
- Fixing above will allow us to remove the immutable samplers from the mobile material rendering proxy to ensure we don't re-introduce the fort bug listed in the related comment
Change 4175684 by Ryan.Vance
Fix for vk media player crash
Change 4175699 by Nick.Whiting
Merging CL 4175640 (fix for Audio Capture pausing and resuming) to Dev-VR
Change 4176804 by Joe.Conley
Rolando originally hacked the RHI for Lumin with the ForceEnableDebugMarkers() function; return false there instead of if PLATFORM_LUMIN.
Change 4178261 by Ethan.Geller
Back out changelist 4175699 #fyi nick.whiting #rb none
Change 4179088 by Mike.Beach
Mirroring CL4178961.
Removing spammy error log, per consult from ML - apparently, at this time, MLSnapshotGetTransform() can return NaNs (which we handle). It is currently expected from the API.
#jira UE-61127
#mlqdr
Change 4179629 by Jeff.Fisher
UEVR-1209 Update to Magic Leap Hand Tracking API
-Switched from the Gestures API to the HandTracking API
-There is nothing like the 0 and 1 tracking point that change meaning per gesture in the new API, so I assigned the former Center/Pointer/Secondary special 1/3/5 2/4/6 to Center/IndexFingerTip/ThumbTip.
#review-4178177
#jira UEVR-1209
#mlqdr
Change 4179705 by Jeff.Fisher
MagicLeapHandTracking CIS fix.
Change 4181301 by Joe.Graf
Moved FaceARSample to Samples/Sandbox/AR/ so we can have all of the AR samples together
Change 4181402 by Joe.Graf
Fixed a missing #ifdef wrapper in the MagicLeap plugin
Change 4181445 by Joe.Graf
Fixed another missing #ifdef wrapper in the MagicLeap plugin
Change 4181558 by Jeff.Fisher
HandTracking LeftGestureButton fix
-The reality is Nihav made the fix, and I reviewed it.
Change 4185551 by Joe.Graf
Added support to query and specify the desired video format for an AR session
Change 4185843 by Joe.Graf
Merged in absolute scale/location/rotation PR #4760 from Wang Hao
Change 4186875 by Joe.Graf
Added stats for face ar
#jira: UE-53883
Change 4187681 by Joe.Graf
Fixed unity build compilation error
Change 4188782 by Joe.Graf
Work around LiveLink interpreting ARKit timestamps incorrectly causing jitter and animation lag
#jira: UE-61540
Change 4189204 by Joe.Graf
Merging using Release-4.20_to_Dev-VR
Change 4189331 by Joe.Graf
Removed all of my merge markers from the lab
Change 4189477 by Joe.Graf
Added performance tuning options for Face AR to ARSessionConfig
Added whether to mirror or be face relative for Face AR to ARSessionConfig
#jira: UE-53881
Change 4189835 by Joe.Graf
Changed how timestamps for ARKit objects are updated to make them more amenable with the engine
#jira: UE-61550
Change 4190085 by Jeff.Fisher
Duplicating from Dev-Partner-MagicLeap-4.20 cl 4189995
HandTracking 'failed to load' errors.
-Needed a package redirector as well as the various class and enum redirectors.
#MLQDR
#review-4189613
Files:
//UE4/Dev-Partner-MagicLeap-4.20/Engine/Config/BaseEngine.ini#8
Change 4190100 by Jason.Bestimt
#DEV-VR - Adding script version string to make sure AutoSDK gets run again
[To Fix CIS Builds for UE4 Lumin]
Change 4190795 by Joe.Conley
#jira UE-61265 Audio Capture Components need to hook Lumin backgrounding notifications to pause capture
Shelve 4175638 got committed but didn't compile. Fixed compile errors and changed some checks from Handle != ML_HANDLE_INVALID to MlIsValidHandle(Handle), fixed functions to return false if they error, responded to the errors by not continuing further, etc...
Don't know if this fixes all the functionality, but doesn't crash for me anymore.
Change 4196211 by Jason.Bestimt
#DEV-VR - Fixes for Android platform with new Lumin Vulkan Color Conversion Functions
Change 4199020 by Jason.Bestimt
Making sure bHaveVulkan is true for Lumin
Change 4199506 by Jason.Bestimt
#DEV-VR - Merging CL 4199443 from Dev-Magicleap to clear cache on looping media
Change 4200139 by Joe.Graf
Initial check in of a project to illustrate AR persistent sessions
Change 4200299 by Joe.Graf
Fixed the plugin setup for ARSaveLoad
Change 4200327 by Joe.Graf
Fixed adding face ar plugin instead of world ar plugin
Change 4200330 by Joe.Graf
Added a sample for using ARKit's environment probe feature
Change 4200352 by Joe.Graf
Changed the ARSessionConfig to use automatic environment probe generation
Change 4201607 by Zak.Parrish
Moving latest version of FaceARSample to DevVR
Change 4203453 by Jason.Bestimt
#DEV-VR - Fixing Audio Capture to not re-open stream if it's already open
#JIRA: UE-61609
Change 4204527 by Joe.Graf
Changed the AR World Save and AR Get Candidate Object latent actions to use the new mechanism to reduce code
Change 4204533 by Joe.Graf
POC of saving and load an AR world
Change 4204806 by Joe.Graf
Added more descriptive display names for AR blueprint operations
Change 4204870 by Jeff.Fisher
HandTracking blueprint access to all keypoints
-Duplicating for Dev-VR from Dev-Partner-MagicLeap-4.20
-Created new GetGestureKeypointTransform blueprint function to get a keypoint's transform by hand and keypoint enum.
-Deprecated the old GetGestureKeypoint methods
-Fixed Special_1 and Special_2 to use hand center instead of wrist center.
-Exposed all the keypoints to blueprint, so they can work right away when underlyign support appears in the OS.
#MLQDR
#review-4200777
Change 4204877 by Jeff.Fisher
Updated gesture test content to replace deprecated hand tracking blueprint functions.
Change 4204915 by Joe.Graf
Hid blueprint internal methods from being callable
Change 4205082 by Joe.Graf
Split ImportFileAsTexture2D into two functions so you can also import from a buffer
Change 4205170 by Joe.Graf
Made the proxy create function blueprint internal only
Change 4206898 by Joe.Graf
Initial ARSharedWorld multiplayer sample check in
Change 4207396 by Joe.Graf
Removed the FARSharedWorld from ARSharedWorldGameState to make things simpler/cleaner
Change 4207406 by Joe.Graf
Hooked up the delivery of the AR shared world data to the clients in the MP sample
Change 4207444 by Joe.Graf
Fixed the shadowing warning
Change 4207794 by zak.parrish
Checking in first stage of usable Save/Load AR work. Some UI, foundational functionality. Not testable yet.
Change 4207832 by Joe.Graf
For Zak
Change 4207952 by Joe.Graf
For Zak part 2
Change 4208268 by zak.parrish
Checking in changes to ARSaveLoad's game mode
Change 4208316 by zak.parrish
Living in shame under JoeG's rough admonishment. And fixing UI bugs.
Change 4208404 by zak.parrish
Actually saving... maybe?
Change 4208407 by Joe.Graf
Fixed wrong platform name being used as the whitelist for the AppleImageUtils plugin
Change 4209764 by Joe.Graf
Added missing module class for AppleImageUtilsBlueprintSupport
Change 4210695 by Joe.Graf
Added compression and versioning to the AR saved world data
Change 4211461 by Joe.Graf
Incremented the face live link packet version since the new blendshapes were added
Change 4211843 by Joe.Graf
Split some of the methods for ARKit conversion into a cpp from being all in the header
Added some logging during conversion
Change 4212020 by Joe.Graf
Added support for telling the AR system whether to reset tracking and tracked objects (useful for generating a play space and then using lower cpu/gpu tracking only)
Change 4212878 by Joe.Graf
Fixed inline problem and exported FAppleARKitConversion class
Change 4214969 by Ryan.Vance
#jira UEVR-1257
Adding initialization to all members in the default FAppleARKitFrame ctor
Change 4217193 by Jason.Bestimt
#DEV-VR - Fix for swapping shader cache formats and using Launch On
We now reload the settings each time they are used rather than caching once at startup
Change 4217487 by Jason.Bestimt
#DEV-VR - Fix for CIS shadowed member variable error
Change 4220007 by Jason.Bestimt
#DEV-VR - Fix for Dev-VR compile issue for Lumin Target Platform dependencies on Engine
Change 4223757 by Jason.Bestimt
#DEV-VR - Moving Lumin Audio Platform above Android because Lumin is Android
Change 4230863 by Keli.Hlodversson
Updating to SteamVR 1.0.15
Change 4235330 by Jason.Bestimt
#DEV-VR - Selective Merge from Dev-Partner-MagicLeap-4.20
CL 4117808
SKIP 4166531, 4172433, 4173415, 4174167, 4175152, 4174192
CL 4175448, 4175781, 4176126, 4176135, 4176138, 4176803, 4178961
SKIP - 4179818, 4179864
CL 4179921, 4179956, 4180229, 4180268, 4180298, 4182733, 4183548, 4184684, 4186883, 4187230, 4189420, 4189995, 4190527, 4190721
SKIP - 4191085
CL 4192219
SKIP 4195948
CL 4197287, 4197951, 4197956, 4201351, 4202541, 4202544, 4202547
SKIP 4202774
CL 4203462, 4203484
SKIP 4204670
CL 4206823, 4209729, 4209810, 4211003, 4215367, 4215662, 4215892, 4215898, 4220239, 4220257
SKIP 4220295
CL 4220307
SKIP 4221842
CL 4221866, 4222959, 4223772, 4225943
SKIP 4226329, 4227773
CL 4228213, 4228270
SKIP 422902, 4229054, 4229365, 4230881, 4233277
Change 4235969 by Joe.Conley
MagicLeap: Add quotes around the path to the tools (clang etc) in the mlsdk directory, so that it won't fail if the MLSDK directory has a space in the path.
Change 4239300 by Nick.Whiting
Adding missing uplugin file to GoogleARCoreServices
Change 4240183 by Keli.Hlodversson
Updating to SteamVR 1.0.16
Change 4241714 by joe.conley
#jira UE-62189 - "Various QAARApp/Content/...uassets have been saved with empty engine version"
Resaved assets.
Change 4242300 by Nick.Whiting
Fix for ARCore Tools being in the wrong folder, emitting RuntimeDependency ref to make sure they're properly included
#jira UE-62277
Change 4244428 by Mike.Beach
Copying //UE4/Partner-Oculus-Staging to Dev-VR (//UE4/Dev-VR)
Change 4244671 by Jeff.Fisher
Fxing 'Lumi" build break.
Change 4247283 by Nick.Whiting
Merging fix from CL 4247094 for ARCore external dependency locations
Change 4255817 by Ryan.Vance
#jira UE-58854
Vulkan Shared Texture Media Framework support cleanup
Don't leak vk color conversion handles and only allocate if needed
Move color conversion device init to a lumin platform call
Add immutable sampler state to mobile base pass policy comparison
Remove WITH_VULKAN_COLOR_CONVERSIONS wrappers around color conversion code
TODO: FVulkanDescriptorSetsLayoutInfo::AddBindingsForStage still uses the first combined image sampler found when handking materials w/ immutable sampelrs which is not robust. The correct binding needs to be selected from reflection data generated by the compiler.
Change 4256021 by Jeff.Fisher
UEVR-1261 MagicLeap HandTracking should be exposed to LiveLink
-Exposed hand tracking transforms through live link.
-Added blueprint function to get the livelink source.
-Exposed LiveLikeSourceHandle through ILiveLinkSource.h so that it can be used by the MagicLeapPlugin.
-The transforms are in tracking space. They form a hierarchical skeleton with HandCenter as the root. See FMagicLeapHandTracking::SetupLiveLinkData() for details on the hierarchy. With the current magicleap runtime functionality many transforms in the skeleton are always identity.
#jira UEVR-1261
#review-4248322
Change 4258366 by Jeff.Fisher
UE-62494 Dev-VR Editor fails to build with errors related to MagicLeapHandTrackingLiveLink.cpp
-Fixed build break
Change 4260114 by Ryan.Vance
#jira UE-62509
Moving color conversion vk entry points to lumin platform to avoid failing to find them in android drivers.
Change 4263040 by Ryan.Vance
Fixing scope issue.
Change 4263556 by Jeff.Fisher
UE-62507 Fatal error crash opening packaged QAGame
UE-62544 //UE4/Dev-VR - Run Automated Tests Cooked Win64 - Unhandled Exception
-Updated #define OPENVR_SDK_VER TEXT("OpenVRv1_0_16")
#jira UE-62507
Change 4265161 by Jason.Bestimt
#DEV-VR - Fix for Lumin BP Projects not using their project specific ini files for compiling/cooking/packaging
#JIRA: UE-62568
Change 4265739 by Ryan.Vance
Marker API override for ML VK.
The current ML driver unofficially supports debug markers, but will report the extension unsupported if queried directly.
Once they add official support, we need to add the extension name back into the list.
Change 4267320 by Ryan.Vance
We need to add the debug marker extension for all platforms but Lumin.
Change 4268149 by Michael.Trepka
Fix for Lumin Toolchain failing to compile on Mac due to changes to the SDK
[CL 4268410 by Jason Bestimt in Main branch]
#jira UE-60389 "Lumin - Need to switch the *Phaedra* launch on option "All_Android_On..." to a single "All_Phaedra_On..." with no expandable options"
(Proper change to the name requires changing IniPlatformName() for LuminTargetPlatform, but that is used in several other places in the code, and I'm not sure if there will be other impacts, so just disabling that menu for now. Main concern was it just being confusing saying "Android", so it no being there at all for 4.20 should be fine.)
#rb Nick.Whiting
#ROBOMERGE-SOURCE: CL 4156370 in //UE4/Release-4.20/...
#ROBOMERGE-BOT: RELEASE (Release-4.20 -> Release-Staging-4.20)
#ROBOMERGE-AUTHOR: joe.conley
[CL 4156372 by joe conley in Staging-4.20 branch]
UE-57505 - Crash launching ES31 app on Android
The shader platform is now read from GConfig instead of using the (cached) out of date internal data.
#rb Jack.Porter
#jira UE-57505
#ROBOMERGE-SOURCE: CL 4120444 in //UE4/Release-4.20/...
#ROBOMERGE-BOT: RELEASE (Release-4.20 -> Release-Staging-4.20)
[CL 4122751 by bogdan vasilache in Staging-4.20 branch]
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3873313 by Nick.Atamas
Merging CL 3834212 using //UE4/Dev-VR=>//Tasks/UE4/Dev-VR-4.19a
Merging CL 3805354, CL 3822769, CL 3827454, CL 3831789
//UE4/Partner-Google-VR/Engine/...
to //Tasks/UE4/Dev-VR-4.19a/Engine/...
Change 3873330 by Nick.Atamas
Merging CL 3835373 using //UE4/Dev-VR=>//Tasks/UE4/Dev-VR-4.19a
Merging CL 3777058
//UE4/Partner-Google-VR/Engine/...
to //Tasks/UE4/Dev-VR-4.19a/Engine/...
and fixing up QAARApp to work with latest ARCore changes.
Change 3873791 by Nick.Atamas
Merging //UE4/Dev-Main@3866324 to Dev-VR (//UE4/Dev-VR) to get missing files and fixing CIS.
Change 3933769 by Keli.Hlodversson
Remove unused IStereoRendering::GetCustomPresent
#jira UEVR-1083
Change 3935219 by Nick.Atamas
QAARApp re-write.
Change 3935664 by Mike.Beach
Oculus SI 1.23 changes
Change 3941505 by Joe.Graf
Made the send & recv buffer sizes for the BackChannel plugin configurable
Added send & recv counters for tracking the amount of transmission data
Change 3944003 by Joe.Graf
Added -buildscw to the CMake build command lines for editors to match what XCode is doing on Mac
Change 3945189 by Douglas.Copeland
Saving Material with Use w/ Static Lighting Flag set to resolve Engine warnings
Change 3945245 by Douglas.Copeland
Resaving QA_MeshTypes asset to resolve warnings produced by missing info
Change 3945266 by Douglas.Copeland
Updating TM-HMDNodes LevelBP WallofGets to use PxielDensity instead of ScreenPercentage. Resolving Engine warnings
Change 3947785 by Mike.Beach
Oculus changes to Android core count - only count usable cores not deadicated to the OS, etc.
Change 3951763 by Joe.Graf
Fixed thread ordering bug with remote session frame compression
Change 3952242 by Joe.Graf
Saved about 20-25% of the cpu time for compressing jpeg when performing the cpu swizzle
Change 3954571 by Keli.Hlodversson
* Add FXRRenderBridge base class containing common code from different CustomPresent implementations.
* Create a default implementation of UpdateViewportRHIBridge in FXRRenderTargetManager by adding GetActiveRenderBridge_GameThread.
** The default implementation now handles calling View->SetCustomPresent instead of making it up to the custom present (now XRRenderBridge) implementation (it already had to handle when the custom present was null.)
* Remove unused member variable ViewportRHI from RHICustomPresent.
#jira UEVR-1081
Change 3954572 by Keli.Hlodversson
* Apply XRRenderBridge and XRRenderTargetManager changes to the SteamVR plugin
* Move duplicated methods into an already existing BridgeBaseImpl class
#jira UEVR-592
Change 3954573 by Keli.Hlodversson
* Apply XRRenderBridge refactor to Oculus plugin
#jira UEVR-590
Change 3954575 by Keli.Hlodversson
* Apply XRRenderBridge refactor to OSVR
#jira UEVR-595
Change 3954578 by Keli.Hlodversson
* Apply XRRenderBridge refactor to GoogleVR
#jira UEVR-594
Change 3954596 by Keli.Hlodversson
Add file missing from cl#3954572
Change 3957882 by Jeff.Fisher
UEVR-1100 bLockToHmd false doesn't work correctly
-CameraComponent can now tell the LateUpdateManager to store, correctly buffered, the fact that we don't want to do late update this frame. DefaultXRCamera checks that flag before applying the late upate to the camera.
#jira UEVR-1100
#review-3956168
Change 3957945 by Jeff.Fisher
Fix for Oculus begin/end frame problem after XRRenderBridge refactor.
-The 'Frame' lifetime in the frame was not long enough, so it was null by the time GetActiveRenderBridge_GameThread was called. NextFrameToRender is the same value, but has a long enough lifetime.
#review-3957897
Change 3958760 by Dongsik.Seo
Adding UseCameraRotation feature to StereoPanorama plug-in.
To enable this feature, use console command
SP.UseCameraRotation 7
Simply add numbers to mark axis to use. 1 = Pitch, 2 = Yaw, 4 = Roll
7 means all axis (1+2+4)
#review-3958756 @Joe.Conley
Change 3959347 by Douglas.Copeland
Fixing spelling errors in test displays
Change 3964331 by Jason.Bestimt
Merging CL 3959979 from 4.19 to Dev-VR + uplugin change from CL 3954046
GoogleARCore Plugin fixes for Unreal 4.19.1 hotfix:
Fixed the crash in Acquire/Release UGoogleARCorePointCloud.
Fixed the issue that multiple line trace channel doesn't work correctly.
Fixed the issue the passthrough camera texture has blue and red channel swapped when building against gles 3.1
Fixed the issue that UGoogleARCorePointCloud::GetPoint doesn't return position in world space.
Change 3967485 by Ryan.Vance
Removed the exlude rect, we want to clear stencil on the entire surface.
Change 3968028 by Zak.Parrish
Nuking contents of existing FaceARSample, to be replaced by the one from Release-4.19.
Change 3968114 by Zak.Parrish
Adding in the new version of FaceARSample from Release-4.19 #rb none
Change 3978381 by Mike.Beach
Mirroring CL 3969503 from 4.19
Only triggering new Blueprint event, OnMotionControllerUpdated, from the game thread (causing a assert/crash when triggered from the render thread and the component has been destroyed on the main thread).
#jira UE-55445
Change 3981160 by Joe.Graf
Merged the BackChannel unit test fix over from Owl
Change 3981705 by Mike.Beach
[WIP] MR Calibration - Expose a config setting that will alter the tracking origin type used to calibrate (eye vs. floor).
#jira UE-55220
Change 3981898 by Joe.Graf
Added support for Apple hardware accelerated image conversion to JPEG, TIFF, PNG, and HEIF
Added a Blueprint latent action to perform the conversion in the background
Change 3981910 by Joe.Graf
WIP AR texture support so that other systems can interact with the camera data
Change 3982102 by Joe.Graf
Pull request: Update CMakefileGenerator.cs for CLion
Fixed an issue in the PR and added cleanup for the macro errors that result in FOO()= definitions
#jira: UE-57103
GitHub #4619
Change 3982883 by Joe.Graf
Added a CLionGenerator for consistency
Fixed editor preferred source code accessor parsing in the project file generator
Added code to detect the bad assumption of the project name always being UE4 and stripped that off in the CLionSourceCodeAccessor
#jira UE-54801
Change 3983687 by Joe.Graf
Fixed the lack of platform checks for adding a framework in the Apple image utils plugin causing a Switch compile error
Change 3984325 by Jeff.Fisher
UEVR-1141 PSVR - fix morpheus on pc render target scaling
-Hard coding the target size. Perhaps the old method broke with the pixel density change.
#review-3983261
Change 3984563 by Joe.Graf
Temporarily disabled ConvertToHEIF on Mac until the build machines are updated to XCode 9.3
Change 3985213 by Zak.Parrish
Removing a ton of excess art assets that were taking up lots of space and possibly throwing warnings. We weren't going to use them anyway. #rb none
Change 3985577 by Joe.Graf
WIP support for the Apple Vision API to perform computer vision tasks on images
Change 3985654 by Joe.Graf
Fixed missing forward declaration hidden by unity files
Change 3990596 by Mike.Beach
Adding a delegate for handling when the active XR system modifies the tracking space origin, and a API function for getting a transform between floor and eye space.
#jira UE-55220
Change 3990788 by Mike.Beach
Attempted CIS fix (fallout from CL 3990596)
Change 3990824 by Ryan.Vance
Re-submitting 4.19.1 hotfox 3968537
Change 3995804 by Jeff.Fisher
Merging cl 3995785
//UE4/Dev-VR-Seal/Engine/Source/...
to //UE4/Dev-VR/Engine/Source/...
UEVR-1148 bLockToHmd change breaking qagame entry level xr camera behavior
-Fixing late update when no camera component is in use.
-The camera component's bLockToHMD==false behavior is supposed to be that hmd motion is ignored, meaning we should not do a late update. This behavior is being applied TO the XRCamera system FROM the camera component, but the camera component can go away or be switched at any time. We want the default to be do apply hmd motion and late update, so disabling late update needs to be a positive setting applied each frame.
#review-3995764
Change 3999842 by Nick.Whiting
Exposing Apple ARKit function library as public for our buddies down under.
Change 4005541 by Joe.Graf
UE-57541 Blacklisted TVOS since it also defines PLATFORM_IOS as 1
#jira UE-57541
Change 4006308 by Jason.Bestimt
#DEV_VR - Hopeful fix for possible unity issue
Change 4006543 by Joe.Graf
Added code to be more correct on setting face blendshapes
Change 4007508 by Jason.Bestimt
#LUMIN - Adjusting automation tests.
- Moved QA specific content test into QA Game
- Wrapped controller not found to only happen on device
Change 4007515 by Jason.Bestimt
#LUMIN - Disabling privilege warning except on device
Change 4007552 by Jason.Bestimt
#LUMIN - Wrapping LuminTargetPlatform internals that require WITH_ENGINE
Change 4008585 by Joe.Graf
Added virtual curves for the head rotation information from the FaceAR's face tracking for streaming via LiveLink
#jira: UE-57830
Change 4008604 by Mike.Beach
MR - Making the chroma key material easier to customize & switch out. Updating the calibration to let you set whatever params you've exposed in the video processing material (removing hardcoded params for old chroma keying material).
#jira UEVR-1153
Change 4009396 by Jason.Bestimt
#DEV-VR - Removing warning about stat on different threads (CL 4009124)
Change 4009514 by Joe.Graf
Added a weighted moving average method to the modify curve anim node
Change 4010125 by Jason.Bestimt
#DEV-VR - Integrating 0.12 changes from Dev-VR-Seal to Dev-VR
Change 4010434 by Jason.Bestimt
#DEV-VR - Fix for Lumin Haptic Test include
Change 4010945 by Jeff.Fisher
QAHapticTests build fix
-removed unused bad include
Change 4011002 by Nick.Atamas
Fixed Android compilation.
Change 4011220 by Nick.Atamas
- Adding visualization for boundary polygons.
- Adding support for vertical planes.
Change 4011298 by Mike.Beach
MR - Revamping the VideoProcessing/ChromaKeying material so that it:
1) Better extracts luminance from the image
2) Utilizes despill to remove chroma bleed from the scene
3) Leverages the generated despill mask to add back in a faux bounce
#jira UEVR-1153
Change 4011858 by Keli.Hlodversson
Move ExecuteOn(RHI|Render)Thread from Oculus plugin into XRThreadUtils.{h|cpp} inside the HMD module
Use TFunction and TFunctionRef instead of std::function as arguments. (Depends on the changes in CL#3987166: Allow overloading of functions which take TFunctions or TFunctionRefs with mutually exclusive signatures.)
-- Ref for methods that guarantee the function has been invoked before returning, TFunction for *_NoWait, as the function may not get execured until later when RHI is in a separate thtread and not bypassed.
#jira UE-57380
Change 4011956 by Keli.Hlodversson
Fix missing includes after CL#4011858
Change 4012096 by Joe.Graf
Disabled building AppleVision on Mac until there's a good solution for older Mac OSes
Change 4012294 by Jason.Bestimt
#DEV-VR - Adding dependency on LuminRuntimeSettings to MagicLeap module. Hopefully, this will fix the generated files not being found
Change 4012390 by Jason.Bestimt
#DEV-VR - Misc fixes for static code analysis issues
- Guards around GEngine usage
- Fix from Rolando for uint32 -> uint64 + shifting warning
- Redundant if checks
Change 4013426 by Jason.Bestimt
#DEV-VR - Guarding RestoreBaseProfile so we don't crash on exit
#JIRA: UE-57960
Change 4014661 by Ryan.Vance
Initial support for omni-directional stereo captures.
https://developers.google.com/vr/jump/rendering-ods-content.pdf
Change 4015561 by Jason.Bestimt
#DEV-VR - Moving MLSDK out of thirdparty directory to fix static code analysis issue
Change 4016202 by Jason.Bestimt
#DEV-VR - Integrated CL 2685 from Seal depot
#JIRA: UEVR-1157
Change 4016448 by Jason.Bestimt
#DEV-VR - Adding LuminRuntimeSettings as dependent modules for anything that references the MLSDK
Change 4016457 by Ryan.Vance
#jira UE-58018
Cleaning up compiler errors/warnings.
Change 4017246 by Jason.Bestimt
#DEV-VR - Potential fix for UE-58043 where metal asserts that it should be in the render thread rather than either the render thread OR RHI Thread
#JIRA: UE-58043
Change 4018571 by Joe.Graf
Added a remapping of curve values in a range to the modify curve anim node
Change 4018991 by Joe.Graf
Wrapped vertical plane detection in a if iOS 11.3 check since ARKit 1.5 is only availabe from 11.3 on
#jira: UE-57999
Change 4019068 by Joe.Graf
Changed how Apple Vision support is enabled in code
#jira: UE-57552
Change 4019194 by Joe.Graf
Added a console command to change where Face AR is publishing LiveLink curve data "LiveLinkFaceAR SendTo=192.168.1.1"
Change 4019648 by Keli.Hlodversson
Work around build failures caused by missing virtual destructor warnings.
Reverting back to Oculus' original method of implementing own RHICommand wrapper around TFunctions and TFunctionRefs (using overloaded inline functions and templates to reduce code duplication.)
Change 4019871 by Joe.Graf
Changed the __IPHONE_11_3 to the raw numeric value
Change 4020121 by Keli.Hlodversson
Fix parameter types to match header declarations.
Change 4020127 by Keli.Hlodversson
Remove dllimport/export macros from cpp file.
Change 4020621 by Joe.Graf
Wrapped the Apple ARKit plane geometry building in a #if IOS_11_3 check
Change 4020910 by Joe.Graf
Refactored how ARKit support #define to make it easy to wrap individual features by ARKit version
Change 4020952 by Joe.Graf
Added checks to make sure PLATFORM_IOS and PLATFORM_TVOS are defined to 0 on non-Apple platforms when checking for ARKit
Change 4021116 by Jason.Bestimt
#DEV-VR - Integrating CL 4005915 from Dev-Core to remove plugin modules that aren't supported on target platform
Change 4021320 by Joe.Graf
Fixed warnings resulting from unity builds hiding them
Change 4021738 by Chad.Garyet
- adding lumin filters
- changing defaults for platforms back to true, this was brought over erroneously.
#jira none
#ROBOMERGE: Dogma, Nightlies
Change 4021898 by Chad.Garyet
added missing bits from the ue4main script
#jira none
#ROBOMERGE: Dogma, Nightlies
Change 4022583 by Joe.Graf
Added functions for checking ARKit version availability at runtime
Change 4022610 by Joe.Graf
Added checks for ARKit 1.0 availability when creating the AR session to prevent calling invalid selectors on older iOSes
Change 4022616 by Joe.Graf
Added support for enabling the ARKit 1.5 autofocus setting
Change 4022650 by Joe.Graf
Defaulted autofocus for AR to on
Change 4023026 by Joe.Graf
Changed the ARKit video overlay to use the new availability api
Change 4023124 by Joe.Graf
Switched another version check in the ARKit overlay code to use the faster version
Change 4023489 by Ethan.Geller
[Dev-VR] #jira none fix AudioMixerModuleName for Lumin. #fyi nick.whiting, jason.bestimt
Change 4023995 by Nick.Atamas
Properly deprecated the bitfield for plane detection mode.
#jira UE-57842
Change 4024992 by Jason.Bestimt
#DEV-VR - Adding SupportPlatforms to MagicLeapAnalytics plugin
Change 4025702 by Jason.Bestimt
#DEV-VR - Fix for loading ML libraries even when the MLSDK is not present
#JIRA: UE-58033
Change 4026639 by Mike.Beach
Removing innocuous Oculus error that did not match up with the rest of the code - it is handled/acceptable when Frame_RenderThread has been reset.
#jira UE-58001
Change 4026949 by Mike.Beach
MR - Making a few fixes to the lens undistortion and how it interacts with the MRC component...
- Switching to a 16bit displacement map instead of a 32bit UV map (updating the materials accordingly)
- Using the OpenCV focal ratio to scale the aspect ratio to avoid stretching from the undistortion
- Adding CVar commands to enable/disable pieces of the undistortion
- Changing the default undistortion cropping to be uncropped
- Removing the need for the 'EnableMapping' material parameter
#jira UE-55195
Change 4027147 by Jason.Bestimt
#DEV-VR - Fix for UE-58043 (more call sites where it should be Render OR RHI thread)
#JIRA: UE-58043
Change 4027301 by Mike.Beach
Updating the MRCalibration project's ini so it doesn't error on packaging.
Change 4027469 by Mike.Beach
MR Calibration - Setting StartInVR to true, so when we package the app, we don't have to manually enable it.
Change 4027957 by Mike.Beach
As part of renaming the MR plugin, first renaming the root folder to be MixedRealityCaptureFramework.
#jira UE-57782
Change 4029182 by Keli.Hlodversson
Revert back to not enqueuing RHI tasks when RHI is not on a separate thread. Oculus code depends on being able to call ExecuteOnRHIThread from code potentially called from within other calls to ExecuteOnRHIThread.
#jira UE-58079
Change 4029687 by Dragan.Jerosimovic
Boy rig and pose asset mb files, maps and masks
Change 4030059 by Mike.Beach
As part of renaming the MR plugin, renaming the inner module to be MixedRealityCaptureFramework.
#jira UE-57782
Change 4030296 by Charles.Egenbacher
#LUMIN Copying from Dev-Incoming-Staging to Dev-VR
Change 4030593 by Jason.Bestimt
#DEV-VR - Merging olaf test maps to Dev-VR
Change 4031042 by Keli.Hlodversson
Allow executing ExecuteOnRHIThread* on the RHI thread. Enables simplifying destructors that can either be invoked on the RHI or Render thread.
#jira UE-58239
Change 4031046 by Keli.Hlodversson
Use the new XRThreadUtils functions in the HMD module for executing tasks on the RHI thread
#jira UE-58238
Change 4032593 by Mike.Beach
As part of renaming the MR plugin, renaming the inner module to be MixedRealityCaptureCalibration.
#jira UE-57782
Change 4033911 by Jason.Bestimt
#DEV-VR - Fix to LuminToolChain to allow it use a custom strip executable (android instead of gcc)
Change 4034087 by Mike.Beach
Renaming the MR plugin to be the 'MixedRealityCaptureFramework' plugin.
#jira UE-57782
Change 4034253 by Joe.Graf
Made the Apple Vision plugin use version checking consistent with ARKit
Change 4034543 by Joe.Graf
Added availability checks for the Apple Image Utils plugin similar to ARKit
#jira: UE-57541
Change 4034548 by Joe.Graf
Fixed the implicit conversion in the head rotation curves from the face ar feed causing the values to be 0
Change 4034577 by Jason.Bestimt
#DEV-VR - Removing MAC Custom Metal present (fixes Mac with -game rendering all black)
Change 4034605 by zak.parrish
Checking in test case for head rotation tracking - minor temporary change to AnimBP #rb none
Change 4034686 by Jason.Bestimt
#DEV-VR - Integrating (most of) CL 3980919 to disable instances of deprecation warnings caused by building for ios11
#JIRA: UE-58046
Change 4034799 by Joe.Graf
Added base types for detecting images in a AR session
Change 4034820 by Joe.Graf
Added a friendly name to UARCandidateImage objects
Change 4035010 by Joe.Graf
Added support for handling ARImageAnchor notifications from ARKit
Change 4035355 by Mike.Beach
[WIP] MR - Renaming some classes to reflect the plugin's new name.
#jira UE-57782
Change 4035464 by Joe.Graf
Added orientation to the ARCandidateImage object to pass to the detection system
Change 4035524 by Mike.Beach
[WIP] MR - More renaming of some classes to better match the plugin's new name.
#jira UE-57782
Change 4035606 by Mike.Beach
[WIP] MR - More renaming of some classes to better match the plugin's new name.
#jira UE-57782
Change 4035918 by Mike.Beach
[WIP] MR - Renaming the MrcFramework module's source files to better match the plugin's new name.
#jira UE-57782
Change 4035976 by Mike.Beach
[WIP] MR - Renaming some more files and classes to better match the MRC framework's new name.
#jira UE-57782
Change 4036044 by Ryan.Vance
#jira UEVR-377
Adding support for ISR Translucency.
Change 4036069 by Ryan.Vance
We can remove the last word PrimitiveVisibilityMap masking for ISR since the maps are always the same size between views.
Change 4036073 by Chance.Ivey
Fixed select blocks on LuminSamplePawn and GesturesAndTotem map to reflect recent changes. Fixes #JIRA UE-58328 #rb none
Change 4036307 by Mike.Beach
[WIP] MR - Renaming the MRC calibration files to better match the MRC framework's new name.
#jira UE-57782
Change 4036314 by Mike.Beach
[WIP] MR - Renaming some more calibration classes to better match the MRC framework's new name.
#jira UE-57782
Change 4036319 by Charles.Egenbacher
#LUMIN this is an out-of-date version of the lumin sample. Nuking.
Change 4036396 by Charles.Egenbacher
#LUMIN Adding the up to date version of the LuminSample.
Change 4036485 by Sorin.Gradinaru
UE-57773 Disable Thermals Message
#4.20
#iOS
Add in the Remote Session App BP an Execute Console Command node immediately after Event Begin Play, disabling all on-screen messages, for all builds.
Change 4036695 by Jason.Bestimt
#DEV-VR - Adding Lumin case to PrecompileTargetType check
Change 4037110 by Jason.Bestimt
#DEV-VR - Extra deprecated macro guards around HarfBuzz includes
#JIRA: UE-58046
Change 4037443 by Jason.Bestimt
#DEV-VR - Merging CL 4028003 from Partners-Google
Change 4037490 by Jason.Bestimt
#DEV-VR - Integrating CL 4028922 from Partners-Google (+ assignment guarding)
Change 4037691 by Jason.Bestimt
#DEV-VR - Swapping order of comparrison operator to deal with const error
Change 4037892 by Joe.Graf
Added UTexture2D to CGImage conversion in Apple Image Utils plugin
Change 4037894 by Joe.Graf
Changed the name of a property to make it clearer as to what it is and to have fewer things named similar in the same system
Change 4037901 by Joe.Graf
Added support for configuring which images you'd like detected during a AR session
Change 4037906 by Jason.Bestimt
#DEV-VR - Fixing buckled logic for =operator (derp)
Change 4038293 by Mike.Beach
[WIP] MR - Moving the calibration setup/level/content into its own project, and out of the MR plugin.
#jira UE-57782
Change 4038403 by Joe.Graf
Added the name from the candidate image when creating the Apple side representation
Change 4038488 by Mike.Beach
[WIP] MR Calibration - Moving calibration specific files to the MRCalibration project, out of the plugin (followup to CL 4038293). This makes the MRCalibration project a code project now.
#jira UE-57782
Change 4038776 by Chance.Ivey
Updates to Fix for Gestures change. Affects #JIRA UE-58328, though other non-content issues may cause packaging to fail #rb none #fyi Nick.Whiting
Change 4038877 by Mike.Beach
[WIP] MR - Renaming assets to better match the new plugin name.
#jira UE-57782
Change 4039097 by Joe.Graf
Fixed the public include path warnings in the Apple* plugins I added
Change 4039106 by Joe.Graf
Worked around a bad compile time assert that blocked valid FString::Printf debug code
Change 4039209 by Jeff.Fisher
Fixing one build script paths
Change 4039275 by Jeff.Fisher
More include path fixes.
Change 4039415 by Joe.Graf
Added support for remote session sending AR camera image data to be rendered on the host like we do for AR on device
Change 4039471 by Joe.Graf
Added a file I missed when adding to the remote session plugin
Change 4039473 by Joe.Graf
#ifdef-ed some code out until the linkage can be fixed
Change 4040249 by Mike.Beach
[WIP] MR - Moving some more asset files that aren't needed for the MRC plugin
#jira UE-57782
Change 4040365 by Mike.Beach
Fixing a compiler issue in the MRCalibration project, since moving MRC files there (WITH_OPENCV is not defined for the project).
#jira UE-57782
Change 4040455 by Mike.Beach
Moving the few remaining methods that were calibration specific, sprinkled through the MRC plugin.
#jira UE-57782
Change 4041404 by Mike.Beach
Fixing an issue with BP async nodes - making it so their wrapped function can be renamed and redirected.
Change 4041406 by Mike.Beach
MR - Splitting the Mrc video util library so that the BP functions needed for calibration aren't exposed to users.
#jira UE-57782
Change 4042110 by Jason.Bestimt
#DEV-VR - Stopping spew for ML eye tracking when not on platform
#JIRA: UE-58365
Change 4042407 by Joe.Graf
Disabled HEIF compression on Mac
#jira: UE-58479
Change 4042727 by Jason.Bestimt
#DEV-VR - Fix for Android compiling without version 24
Change 4042861 by Olaf.Piesche
#jira UE-57784
Change 4043105 by Mike.Beach
Exposing a way for programmers to strip save game headers from save data, and get to the tagged object serialization portion.
#jira UE-58389
Change 4043120 by Mike.Beach
MR - Loading the base save data, even if we're unable to fully construct the original save object class.
#jira UE-58389
Change 4043401 by Mike.Beach
New Oculus poke-a-hole material, in support on SI 1.25. Checking in to alleviate QA contention for testing the rest of SI 1.25.
#jira UEVR-1143
Change 4043424 by Mike.Beach
Oculus SI 1.24/1.25 - Engine rendering changes
#jira UEVR-1143
Change 4043495 by Mike.Beach
CIS fix - Missing files needed for the Oculus SI 1.24/25 Vulkan changes.
#jira UEVR-1143
Change 4043642 by Zak.Parrish
Changes to FaceARSample: added in support for JoeG's smoothing algorithm, also refactored calibration to use the new Modify Curves node. Added some more comments to the AnimBp to make it easier to read. #rb none
Change 4045638 by Zak.Parrish
Some minor updates to FaceARSample content. Mostly refactoring for new ModifyCurve stuff.
Change 4046003 by Jason.Bestimt
#DEV-VR - Fix for bEnableAlphaChannelInPostProcessing reading in as false for LuminSample
bEnableAlphaChannelInPostProcessing translates to r.PostProcessing.PropagateAlpha in ini files
#JIRA: UE-58523
Change 4046548 by Jules.Blok
Fix SetInstancedEyeIndex() ignoring the left eye.
#jira UE-54044
Change 4046859 by zak.parrish
Checking in the new rig from 3Lateral - this prevents the eyelashes from separating
Change 4047060 by Nick.Whiting
Wrapping -norhithread in PLATFORM_LUMIN to prevent the ML plugin from always disabling RHI threading.
#jira UEVR-1192
Change 4047667 by Mike.Beach
CIS fix - removing uneeded line from bad merge.
Change 4047673 by Mike.Beach
More CIS fixes for fallout from recent rendering merge.
Change 4048227 by Rolando.Caloca
VR - vk - Some Vulkan merge conflicts resolved
Change 4048421 by Jason.Bestimt
#DEV-VR - Converting OwnerName to EventName in UpdateSceneCaptureContent_RenderThread call
Change 4048423 by Jason.Bestimt
#DEV-VR - Fixing mediandk version check
Change 4048452 by Rolando.Caloca
VR - Merge fix
Change 4048530 by Rolando.Caloca
VR - Merge fix
Change 4048607 by Jason.Bestimt
#DEV-VR - Probable repair of Mr Mesh post merge
Change 4048794 by Rolando.Caloca
VK - Fix mobile from merge
Change 4048972 by Jeff.Fisher
Fixing MeshReconstructor merge problems.
Change 4049969 by Ryan.Vance
Fixing missing shader assert.
Change 4050831 by Ryan.Vance
Merge clean up. This is still needed to build w/ vulkan on Lumin.
Change 4050854 by Ryan.Vance
Merge clean up.
We need GetAllocationHandle for the ML Vulkan custom present sRGB workaround.
Change 4051495 by Jason.Bestimt
#DEV-VR - Adding Android, Quail, Linux vulkan include clauses
Change 4052528 by Zak.Parrish
Changing defaultEngine.ini for the higher res version of Gremlin
Change 4052880 by Ryan.Vance
Merge clean up.
Now with more Lumin
#jira UE-58645
Change 4052991 by zak.parrish
Update to FaceTrackingMap2 for proper camera positioning
Change 4053139 by Nick.Whiting
Fixing Lumin Vulkan platform header
Change 4053352 by Mike.Beach
On PC (in editor), not enabling ML stereo by default. Waiting for it to be enable by the EnableStereo() call (like we do for Oculus/SteamVR).
#jira UE-57991
Change 4053644 by Nick.Whiting
Fix for build break by wrapping bStereoDesired in !PLATFORM_LUMIN
Change 4054329 by Jason.Bestimt
#DEV-VR - Resave of GoogleARCorePassthroughCameraMaterial.uasset
#JIRA: UE-58689
Change 4054785 by Mike.Beach
Fixing a MRCalibration BP compilation error from the latest merge - was using a deprecated variable which was no longer exposed to BPs.
Change 4055466 by Jules.Blok
Suppress SteamVR submission errors after they've been logged once.
Change 4055500 by Jason.Bestimt
#DEV-VR - MrMeshComponent fix for unsupported pixel format
#JIRA: UE-58759
Change 4055761 by Ryan.Vance
#jira UE-58729
There's a single frame where the TLV textures are not initialized when using FCanvasTileRendererItem on startup.
Change 4056008 by Mike.Beach
Fixing bad merge from Main.
Change 4056616 by Nick.Whiting
Changing UBT configs to use Lumin-specific config files
#jira UE-58760
Change 4056969 by Keli.Hlodversson
MRCalibration: Set r.SceneRenderTargetResizeMethod to "Grow" to avoid cycling the scene render target size on every frame causing a flicker
#jira UE-58191
Change 4057356 by Jason.Bestimt
#DEV-VR - Guard around JNI function for Lumin
Change 4059353 by Nick.Whiting
Fix for shadow variable warnings on Linux
#jira UE-58843
Change 4060158 by Rolando.Caloca
DVR - vk - Temporarily add backbuffer delay/extra copy blit on android
#jira UE-58859
Change 4060432 by Mike.Beach
Fix for shadow variable warnings on Linux
#jira UE-58843
Change 4060520 by Rolando.Caloca
VR - Proper fix for r.Vulkan.DelayAcquireBackBuffer=0
- Restore Android to not delay
#jira UE-58859
Change 4060587 by Nick.Whiting
Fix for minimum iOS version being set to iOS 8 on MRCalibration, which was causing CIS warnings
#jira UE-58762
Change 4061277 by Jeff.Fisher
UE-58861 //UE4/Dev-VR - Compile UE4Game Lumin - ERROR: MLSDK is not specified; cannot use Lumin toolchain.
-Overriding HasAnySDK to setup the MLSDK.
Change 4061308 by Jason.Bestimt
#DEV-VR - Work around of UE-58864 crashing when mousing over project launcher with only a Lumin device plugged in
#JIRA: UE-58864
Change 4062111 by Ryan.Vance
#jira UE-58875
Fixing audio compilation failure.
Change 4064091 by Jason.Bestimt
#DEV-VR - Disabling ML Plugin with the editor when bIsVDZIEnabled is off
#JIRA: UE-58954
Change 4064554 by Jason.Bestimt
#DEV-VR - Removing ML haptic tests when not on the platform
#JIRA: UE-58966
Change 4064755 by Jeff.Fisher
UE-58970 Dev-VR - Incremental UE4Editor Linux - Referenced directory 'D:\Build\AutoSDK\HostWin64\Lumin\0.12\lib\linux64' does not exist.
-Removed linux from magicleap plugin whitelists, we have no sdk for linux.
#review-4064614
#jira UE-58970
[CL 4064889 by Mike Beach in Main branch]
#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]
============================
MAJOR FEATURES & CHANGES
============================
Change 3873906 by Dan.Oconnor
Revised fix for preventing delegate functions from appearing in context menu when using the compilation manager - needed to run after CallDelegateHandler changed statement type
#jira UE-51726
Change 3873614 by Dan.Oconnor
Prevent delegate functions from appearing in context menu when using the compilation manager and prevent crash if such a function is somehow compiled
#jira UE-51726
Change 3873428 by Ben.Zeigler
#jira UE-54753 Fix class pin on SpawnActorFromClass to correctly support browse. It was inherting from the wrong pin widget
Copy of 3873408
Change 3873083 by Ethan.Geller
[4.19]#jira UE-54865 fix seconds -> milliseconds conversion issue. #rb aaron.mcleran #lockdown cristina.riveron
Change 3872714 by Dan.Oconnor
Further revise fix for UE-53840, mistakenly reverted to old behavior when compiling synchronously
#jira UE-53840
Change 3872648 by Ben.Zeigler
#jira UE-54845 Fix crash in NextDebugTarget when there are no valid debug targets
Copy of CL #3872636
Change 3872500 by Arne.Schober
Back out changelist 3870283
#jira UE-54838
Change 3872412 by Mark.Satterthwaite
Remove now unnecessary r.Metal.ManualVertexFetch from the device profiles.
#jira UE-54853
Change 3872313 by Martin.Wilson
Add UI to Live Link Client to warn live link users about background performance throttling
#jira none
Change 3872272 by Martin.Wilson
Fix crash when clearing a skeletal mesh on a skeletal mesh component with an active Post Process Anim Instance
#jira none
Change 3872238 by Mark.Satterthwaite
Duplicate CL #3871025
Make Manual Vertex Fetch a property of the shader platform for Metal - only the desktop platforms (METAL SM5/SM5_NoTess/MRT) will use manual vertex fetch. The mobile platforms use vertex descriptors. Prevents problems with cooked versions of games not working properly on Metal due to a mismatch between the runtime's Manual-Vertex-Fetch state versus the state used by the cooker when compiling shaders.
#jira UE-54843
Change 3872087 by Yasiman.Ahsani
Adding Python, libdisasm, musl, and LSS licenses.
#JIRA n/a - adding licenses for new TPS
Change 3872037 by Ben.Marsh
BuildGraph: Add a task for compiling MSBuild projects.
#jira
Change 3871934 by Lina.Halper
#jira: UE-54703
Change 3871595 by Michael.Trepka
Fixed a problem with Mac editor not exiting with error code returned from GuardedMain function
#jira UE-54830
Change 3870829 by Joe.Barnes
Fix unintentional change to PhysX libs used in Debug builds.
#jira ue-54817
Change 3870820 by Nick.Atamas
Copying //Tasks/UE4/Dev-VR-4.19a@3870772 to Release-4.19 (//UE4/Release-4.19)
#jira UE-54816
Change 3870755 by Chance.Ivey
Min Android version set - should fix camera permissions issue found in #JIRA UE-54024 #rb none #fyi nick.atamas
Change 3870547 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 3870546 by Krzysztof.Narkowicz
Fixed tesselation shader tex/uniform initialization in OpenGL3/4 path
#jira UE-54471
Change 3870284 by Ben.Zeigler
#jira UE-54583 Fix issue where loading multiple already loaded assets via Async Load Asset node could return the wrong asset on the loaded pin. The assign variable node was happening at a slightly wrong time
Copy of CL #3870279
Change 3870283 by Arne.Schober
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
#jira none
Change 3870098 by Ben.Marsh
Fix OptimizeCode = CodeOptimization.Always causing compile errors in Linux debug builds. bUseInlining was not set correctly on the global compile environment used to build shared PCHs. Also fixed other settings not being propogated down from the target correctly.
#jira UE-53855
Change 3870013 by Ben.Marsh
UBT: Add an error if a user attempts to clean a target through hot-reload, rather than just failing to delete DLLs because they are locked.
#jira UE-54179
Change 3870010 by Ben.Marsh
UBT: Add an option to format output messages in a form that can be parsed by MSBuild. Prevents errors showing as "EXEC: Error:", and displays them correctly in the error list window.
#jira
Change 3869814 by Ben.Marsh
UBT: Unify command line arguments to use -Name=Value syntax. -Module <Name>, -ModuleWithSuffix <Name> <Suffix>, -Plugin <Path> and -Receipt <Path> are no longer supported.
Also remove the RemoteRoot option, which was not used anywhere.
#jira
Change 3869786 by Martin.Wilson
Fix Live Link Remove Source button not working
#Jira UE-54652
Change 3869660 by Martin.Wilson
Fix missing message bus sources in the live link client (not repolling for new sources)
#Jira UE-54712
Change 3869659 by Guillaume.Abadie
Fixes SimpleComposure's BP_AdvancedCompositing keep allocating memory every frame.
Credits for fixing the issue to Ron Radeztsk.
#jira UE-54780
Change 3869401 by Lauren.Ridge
Adding to the conditional in FindAllAncestorNamedSlotHostWidgetsForContent
#jira UE-51470
Change 3869384 by Brandon.Schaefer
Open the project in the explorer when NullSourceCodeAccess is done creating the project
#jira UE-54630
Change 3869308 by Ben.Marsh
PR #4452: Fixed FindFilesRecursively in IPlatformFilePak (Contributed by user37337)
#jira UE-54568
Change 3869265 by Martin.Wilson
Fix crash and subsequently found issues with unloading/reloading Maya Live Link plugin
-Crash on reload due to core code getting reinitialize, made this a one time only thing (as Maya never gets rid of the module from memory)
-Added manual ticking of FTicker, allows message bus objects to be cleaned up properly (cannot do this as part of normal flow as it is in engine code which we dont have)
-rebuild binaries for Engine/Extras
#Jira UE-54643
Change 3869206 by Benn.Gallagher
Fixed crash updating clothing paint mode after tab spawners have been destroyed by the hosting application.
#jira UE-54116
Change 3869064 by Benn.Gallagher
Resolved skeletal mesh data changes and clothing section disable changes after collision. Re-added ability to disable sections at the mesh level and removed the ability to strip editor sections as these are required for a number of other features to correctly function.
#jira UE-52557
Change 3869062 by Guillaume.Abadie
Fixes "dynamic resolution is not supported on this platform" warning message being always visible.
#jira UE-54655
Change 3868202 by Lauren.Ridge
Fix for assert on expanding vector param in layered material
#jira UE-54737
Change 3868161 by zak.parrish
Replacing FaceARDebugUI with a blank UI until a new one can be created, due to a crash bug. #rb none #JIRA UE-54639
Change 3867750 by Ethan.Geller
[4.19] #jira UE-54725 Fix for Envelope attack and release values not being properly set on Synth Components #rb aaron.mcleran #lockdown cristina.riveron
Change 3867657 by Lauren.Ridge
Adding if with editor wrapper to new function
#jira cis fix
Change 3867646 by Aaron.McLeran
#jira UE-53867 Access violation on Switch when playing sound with specified time out of range
Change 3867340 by Lauren.Ridge
Fixes to Material Layers from 4.19 preview feedback
-Need to pass through base attributes better/have better default nodes in layer (optional Example Layers and Blends checkbox now enables this in Experimental Settings)
-Parent in function should be editable
-Enforce only two layers in a blend
-Mat layer should warn if it has incorrect output in the layer itself
-Enforce not being able to delete outputs
-Warn about creating a MAL node inside a function
#jira UETOOL-1312
Change 3867317 by Aaron.McLeran
#jira UE-53867 Access violation on Switch when playing sound with specified time out of range
Change 3867000 by Lauren.Ridge
Fix for folder favorites possibly becoming very large
#jira UE-54704
Change 3866892 by Martin.Wilson
Fix crash if clicking ok on message bus add source without having a source selected
#jira UE-54572
Change 3866391 by Matt.Kuhlenschmidt
Fix static analysis
#jira UE-53379
Change 3866241 by Ryan.Vance
#jira UE-54681
Fixed missing Vulkan texture GetNativeResource implementation that was lost in a bad merge.
Change 3866071 by Nick.Shin
UDN 412414
update HTMl5 readme file
#jira none
Change 3866005 by Max.Preussner
Messaging: Preventing dangling references when removing message subscribers
#jira UE-54680
Change 3865988 by Simon.Tourangeau
Fix static analysis warnings
#jira none
Change 3865895 by zachary.wilson
Renaming QA-PhysicalLightUnits to TM-PhysicalLightUnits in QAGame.
#JIRA UE-29618
Change 3865469 by Simon.Tourangeau
Support for DX11 quad buffer stereo rendering
#jira UEENT-704
Change 3865461 by Chris.Babcock
Add a wait for audio thread to pause audio on going to background
#jira UE-54301
#ue4
#android
Change 3865350 by Matt.Kuhlenschmidt
Fix issue where cascade emitter UI would disapper
#jira UE-53379
Change 3865336 by Arne.Schober
REL - Fix UE-52356 Bone Weight
#jira UE-52356
Change 3865257 by Ben.Marsh
Fix editor failing to load content-only projects when compiled in DebugGame.
#jira UE-54661
Change 3865238 by Simon.Tovey
Pulling Olaf's fix from 3832595 over to release
#tests EngineTests boots in vulkan
#JIRA UE-54394
Change 3865191 by Sorin.Gradinaru
UE-54317 DXT apps fail on first launch when 'For Distribution' enabled, Unsupported Texture Format
#jira UE-54317
#Android
#4.19
From //Dev-Mobile/3863322
Change 3865190 by Sorin.Gradinaru
UE-54175 Selecting For Distribution no longer sets configuration to Shipping
#UE4
#4.19
#jira UE-54175
From //Dev-Mobile/3863371
"For Distribution" enable-> reset "Build COnfiguration" to Shipping and force serialization to DefaultGame.ini (see UE-52845)
Change 3865056 by Jamie.Dale
Fixed culture being incorrect when added via the Localization Dashboard
#jira none
Change 3864826 by Max.Preussner
WmfMedia: Added missing scope lock
#jira UE-54365
Change 3864055 by Aaron.McLeran
#jira UE-54213
Crash fix for GC'd plugin settings objects. Adding to AddReferencedObjects.
Change 3863775 by Andrew.Porter
MediaFrameworkTest: Removing Platform Media Source TVOS test content
#jira UE-29618
Change 3863714 by Dan.Oconnor
Make array, set, and map nodes no longer switch object type when a pin is disconnected. Also, you can no longer attach unrelated map types to the MakeMap node if only the value pin has been inferred
#jira UE-54634
Change 3863696 by Max.Chen
Sequencer: Fix crash open a new sequence while another is still active.
#jira UE-54620
#jira UE-54624
Change 3863638 by Dan.Oconnor
Make sure all blueprints that are skeleton compiled get a BroadcastChanged notification, also run BroadcastChanged after reinstancing, matching pre compilation manager behavior
#jira UE-54193
Change 3863494 by Jamie.Dale
Ensure Py_SetPythonHome is set correctly before the embedded Python interpreter is initialized
#jira UE-54345
Change 3863433 by Max.Preussner
MediaPlayerEditor: Removed tvOS from list of available platforms in Platform Media Source assets
tvOS currently reports itself as iOS, so it cannot have its own setting.
#jira UE-54559
Change 3863406 by Lauren.Ridge
Fix for a crash when filtering a dropdown with no set value
#jira UE-54631
Change 3863238 by Michael.Kirzinger
#jira UE-52730: Fix mac voip crash
Change 3862586 by Marc.Audy
Clean up rendering thread heartbeat checks that got mangled in various integrations
#jira
Change 3862247 by Guillaume.Abadie
Fixes editor lines that were using a simple element blending mode that was generating an incorrect alpha channel.
#jira UE-53830
Change 3862120 by Guillaume.Abadie
Fixes USceneCaptureComponent::HiddenActors always staying gray out in world editor.
#jira UE-51458
Change 3861363 by Jamie.Dale
Static analysis fixes
#jira none
Change 3861150 by Matt.Kuhlenschmidt
Fix static mesh editor displaying 0 for all stats on LODs > 0
#jira UE-53776
Change 3860990 by Dan.Oconnor
Clear subobjects not recreated on load, e.g. because we're running with -game and the subobject was created using CreateEditorOnlySubobject
#jira UE-54551
Change 3860972 by Nick.Shin
HTML5 - detect "SyntaxError: " and do a forced reload
- an actual syntax error would be caught during compile time
- this is usually error condition is usually seen when browser is running "old/partial" cached data and it's fairly safe to just reload the page
#jira UE-54017 QAGame fails to launch properly on HTML5 Firefox 64 bit
Change 3860951 by Arne.Schober
Fix not releaseing SRV on render thread for FPositionVertexBuffer, FStaticMeshVertexBuffer, FColorVertexBuffer, FStaticMeshInstanceBuffer.
#jira UE-54587
Change 3860950 by tim.gautier
QAGame: Updating ML_Stone to include Texture Coordinate and Panner functions
#jira UE-29618
Change 3860833 by Michael.Dupuis
#jira UE-54181: Repopulate the foliage list when existing simulate mode
Let the GC know that internal struct hold UObject ptr
Change 3860762 by Jamie.Dale
Ensure we invoke the correct version of Python from UBT
#jira UE-54345
Change 3860676 by Simon.Tourangeau
Remove DirectoryWatcher warning in output log
#jira UEENT-846
Change 3860598 by Lauren.Ridge
Fix for crash on opening new material instance
#jira UE-54589
Change 3860338 by Michael.Lentine
Integrate changes for fixing MorphTargets.
#jira 54398
Change 3860215 by Ben.Marsh
UAT: Fix exception consturcting target rules assembly inside UAT, now that there's an abstract TargetRules class.
#jira UE-54578
Change 3860186 by Matt.Kuhlenschmidt
Fix crash top 10 with the font editor shutting down and then a dpi event occuring
#jira UE-54543
Change 3859854 by Graeme.Thornton
PR #4124: VSCode: Changed VisualStudioCodeSourceCodeAccessor to work with non-default VSCode install paths on Linux (Contributed by christopherreed)
#jira UE-51289
Change 3859848 by Graeme.Thornton
Fix crypto.cs reading the wrong ini setting names for uasset encryption settings
#jira UE-54566
Change 3859684 by Ben.Marsh
PR #4436: Fix compile error when building BlankProgram because incorrect directory path (Contributed by windkey)
#jira UE-54392
Change 3859657 by Ben.Marsh
Fix FTransform being passed by value, causing alignment error when compiling for Win32.
#jira
Change 3859312 by nick.bullard
Updating AEOverviewMan to remove reference to sub-level AEOverviewSWP which was deleted in 3859278
Still need to update menu to remove selection
#jira UE-50784
Change 3859278 by Nick.Bullard
Deleteing AEOverviewSWP.umap per request of Developer. Also updated TM-AnimPhys which refereneced this map as well.
"This test map is a custom C++ implementation of a "procedural sound wave". This code is super janky and not worth fixing up. I'm sure there's a legit thread safety problem in there but the code is in QAGame only.
We've since implemented "synth components" which do what this test does in a much safer/better way and maintaining/testing this old thing is *not* worth the time."
#jira UE-50784
Change 3859124 by Dan.Oconnor
Fix long standing crash when duplicating a blueprint that is missing its parent class. Entries in CrashReport go back to 4.16
#jira UE-54468
Change 3859086 by Ryan.Vance
#jira UE-54470
We need to set the viewport in both cases.
Change 3859006 by Dan.Oconnor
Revise fix for archetype lookup when reinstancing. During compilation we do not want to force use of the up to date class
#jira UE-54541
Change 3858990 by mason.seay
Cleaned up blueprints to remove compile errors
#jira UE-29618
Change 3858945 by Aaron.McLeran
#jira UE-54265
PR #4428: Fixing Envelope Bug in AudioMixer (Contributed by Chrispykins)
Change 3858719 by Aaron.McLeran
#jira UE-54552 Fix for sample buffer reader
Change 3858647 by Ethan.Geller
PR #4439: Removes ambiX -> FuMa conversion (Contributed by mgorzel)
#jira UE-54407
Change 3858364 by Michael.Dupuis
#jira UE-52049: There was a case where adding and removing multiple time would lead to reordering the instances and this would cause the regeneration of the random stream for all the reorded instances.
Change 3858268 by Dan.Oconnor
Prevent postload logic running on REINST and SKEL classes
#jira UE-54531
Change 3858205 by Mitchell.Wilson
Removed particle looping from some emitters to resolve anim notify warnings.
#jira UE-53823
Change 3858148 by Lauren.Ridge
Changes based on Material Layer Feedback from previews
- (Temporary) Disabled being able to create a layer or blend in the asset dropdown
- Sections of the stack that have been disabled now inactivate that part of the UI
- Create Function Instance now indicates if you are making a layer or a blend
- Parent dropdown has been removed from layers and blends. Where relevant, a filter button has been added instead.
#jira UETOOL-1328
Change 3857933 by Michael.Dupuis
#jira UE-45854: Properly unregister callback when replacing foliage type with another one
Change 3857898 by Michael.Dupuis
#jira UE-54396: Remove the Ensure as it could be possible that the Landscape Info is invalid during an undo operation
Change 3857878 by Max.Chen
Sequencer: Assign the sequence id after the template is compiled.
Copy from Dev-Sequencer
#jira UE-54462
Change 3857808 by Michael.Dupuis
#jira UE-54421: Prevent edition during Simulate when clicking on actor
Change 3857786 by Rolando.Caloca
UE4.19 - Fix recompute tangents and skin cache for OpenGL
#jira UE-42108
PR #3271
Change 3857549 by Lina.Halper
another jittering issue due to revision number change
clear the motion vector after compile
#jira: UE-53930
Change 3857439 by Lina.Halper
Clear motion vector when end of sequencer when in editor world
#jira:UE-54057
Change 3857384 by Graeme.Thornton
Restore fix for visual studio source code accessor not correctly determining that a content project has no solution and opening a fresh instance of visual studio
#jira UE-50020
Change 3856596 by Chris.Babcock
Fix ResonanceAudioApi Android library architecture filtering
#jira UE-54478
#ue4
#android
Change 3856449 by Michael.Dupuis
#jira UE-35097: Various cosmetic changes that were done in phase 2 that help improve clarity of the design.
Change 3856415 by Dan.Oconnor
Fix regression when loading instances that have had their class deleted. Issue detected by static analysis
#jira UE-54467
Change 3856332 by Ben.Marsh
Resaving TP_HandheldARBP assets to fix version again.
#jira
Change 3856319 by Ben.Marsh
Back out changelist 3855588
Causes build failure in UFE because it introduces a dependency on the Engine module. UFE compiles with WITH_ENGINE = 0.
#jira UE-54472
Change 3856292 by Ben.Marsh
Fix app-local dependencies not being included in binary builds, and only working for code projects in source builds.
#jira UE-54448
Change 3856190 by Martin.Wilson
Fix bone access mismatch between raw mesh bones and final bones (that include virtual bones too)
#jira UE-54266
Change 3856169 by Ben.Marsh
Tag XGEControlWorker.exe as a build product, so it's included in the binary distro.
#jira UE-54283
Change 3856123 by Chris.Babcock
Fix missing ARCore file
#jira UE-54453
#ue4
#android
Change 3856005 by Richard.Wallis
Clone of Dev-Rendering CL 3855993 - turn off FShaderCache.
#jira UE-52928
Change 3855961 by Jian.Ru
Copy 3855047 - fix DFAO Nan problem
#jira UE-54403
Change 3855811 by Martin.Wilson
Add build process for Maya Live Link plugin (standalone, manually triggered) + add built binaries to Engine/Extras (Maya 2016, Maya 2017, Maya 2018)
#jira none
Change 3855758 by Cosmin.Sulea
UE-53569 - tvOS does not package or launch-on
#jira UE-53569
Change 3855727 by Ben.Marsh
Resaving assets with a versioned build in the editor, to fix warnings building DDC.
#jira
Change 3855626 by Adrian.Siminciuc
https://jira.it.epicgames.net/browse/UE-50979 (MP4 doesn't resume playback when iOS 11 device wakes from sleep)
#jira UE-50979
Change 3855588 by Graeme.Thornton
Fix visual studio solution path being incorrect for content projects
#jira UE-50020
Change 3855283 by Ben.Marsh
Fix race condition where stdout/stderr write handles could be inherited by multiple processes, resulting in them not being closed (and the process exit being detected) until all processes that inherited them had been closed. Improves performance of ParallelExecutor.
#jira
Change 3855009 by Chance.Ivey
Resaving with version number. #JIRA-54330 #rb none
Change 3854943 by Dan.Oconnor
Fix archetype lookup when searching hierarchy that has been partially reinstanced
#jira UE-53840
Change 3854882 by Ryan.Vance
#jira UE-54438
Removing vr related references to screen percentage.
Removing previously removed gvr screen percentage code that came back in an integration from google.
Change 3854806 by Mike.Beach
Mirroring part of CL 3802176 to fix a crash that can occur when users try to use the default 'DisplayModel' on MotionController components. Also provided users a better error message to explain why a model might not be showing up.
#jira UE-54214
Change 3854680 by Chance.Ivey
Saving assets with version number#JIRA UE-54330 #rb none
Change 3854652 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 3854605 by Dan.Oconnor
Make sure we don't create objects outered to a placeholder object, also make sure that archetypes that are reinstanced on load are relinked in to the linker table so that they are postload'd (and the old instance isn't)
#jira UE-53954
Change 3854274 by Brandon.Schaefer
Changes in CL 3842286 changed the function glslang::GlslangToSpv and requires a rebuild on Linux
#jira UE-54302
#codeview Arciel.Rekman
Change 3854255 by Phillip.Kavan
Fix a scoping issue for local instanced subobject references in nativized Blueprint C++ code. Also, don't emit redundant assignment statements for instanced subobject reference properties.
- Mirrored from //UE4/Dev-Framework (3853349).
#jira UE-53960
Change 3854177 by Ethan.Geller
#jira UE-54415 set EnabledByDefault to false for Resonance Audio
Change 3854123 by Ethan.Geller
#jira UE-54410 set AudioComponentID
Change 3853775 by Lauren.Ridge
Minor cleanup
#jira UE-54054
Change 3853772 by Lauren.Ridge
Don't create widgets when just testing if the selected widget is a replacement candidate
#jira UE-54054
Change 3853715 by Rolando.Caloca
UE4.19 - Fix for OpenGL overwriting texture units
#jira UE-54401
Change 3853655 by Ben.Marsh
Add a retry loop on creating the first directory before copying files. Attempt to work around problems copying to shared folders.
#jira
Change 3853535 by Ben.Marsh
Expose the engine compatible changelist to Perforce. If EnginePatchVersion > 0, this will be the changelist of the original .0 release.
#jira
Change 3852583 by Nick.Atamas
Resaved assets so they don't produce DDC warnings.
#jira none
Change 3852552 by Uriel.Doyon
Fixed Pre-Exposure shader compilation and Temporal AA issue.
#jira UE-54276
Change 3852354 by Nick.Atamas
Hopefully fixes the static analysis warning from jira issue.
#jira UE-54332
Change 3852281 by Nick.Atamas
Merging CL 3851690 from //Tasks/UE4/Dev-VR-4.19a/... to //UE4/Telease-4.19/...
#jira UE-54331
Change 3852274 by Simon.Tourangeau
Back out changelist 3851041 until Win7 issue is resolved.
#jira UE-54354
Change 3852208 by Jamie.Dale
Merging CL# 3821754 from //UE4/Dev-Enterprise
Class property conversion now goes through NativizeClass/PythonizeClass
This allows it to coerce from Python wrapped object types
#jira none
Change 3852202 by Jamie.Dale
More explicit handling of EngineDir for Python SDK
#jira UE-54345
Change 3851982 by Brandon.Schaefer
Workaround using a hardcoded path
#jira UE-54136
Change 3851748 by Michael.Dupuis
#jira UE-53904: Put the code back to what it was before, as we really only want to perform this code if bIsLayerThumbnail is true, it was changed to fix another issue complaining about a missing shader, that end up being added to the existing functions
Change 3851545 by Marc.Audy
Remove debugging code that slipped in
#jira none
Change 3851461 by Ben.Marsh
Fix #includes with backslashes from crashing UBT.
#jira UE-53996
Change 3851391 by Jamie.Dale
Updated Python to prefer our TPS SDK
#jira UE-54345
Change 3851372 by Jamie.Dale
Added bat file to copy the Python SDK into TPS
#jira UE-54345
Change 3851218 by Ben.Marsh
Add missing template to installed engine build.
#jira UE-54339
Change 3851117 by andrew.porter
QAGame: Removing duplicate map
#jira UE-29618
Change 3851041 by Simon.Tourangeau
Support for DX11 quad buffer stereo rendering
#jira UEENT-704
Change 3850548 by Ben.Marsh
Add TP_HandheldARBP to installed engine build.
#jira
Change 3850424 by Ben.Zeigler
Fix reported memory for asset registry to be correct, extracted from a larger change
#jira none
Change 3850324 by Ryan.Vance
#jira UEVR-1050
Hook up the Rift dynamic res to the new IDynamicResolutionState framework
Change 3849819 by JeanLuc.Corenthin
Unhide Datasmith plugins in "regular" projects to allow easy project conversion
#jira UEENT-795
Change 3849302 by Martin.Wilson
Live Link is no longer experimental in 4.19 (moved from experimental folder to Animation)
#jira none
Change 3849238 by Max.Chen
Sequencer: Remove bKeepStaleTracks so that stale tracks are now always purged.
#jira UE-54248
Change 3849211 by Michael.Dupuis
#jira UE-54181: Prevent foliage edition during PIE or simulate mode
#coderevire jack.porter
Change 3849123 by Benn.Gallagher
Fixed crash in clothing actor creation when the clothing simulation mesh has no simulated vertices
#jira UE-53741
Change 3849120 by Benn.Gallagher
Fixed crash adding empty materials to destructible meshes in the destructible mesh editor
#jira UE-53938
Change 3849047 by Jurre.deBaare
Move material baking out of experimental
#fix follow-up also remove the entry from experimental settings
#jira UE-52685
Change 3848808 by Michael.Dupuis
#jira UE-35097: Remove IncludeTessellationInShadowLOD & RestrictTessellationToShadowCascade from 4.19 as there is currently a bug regarding this in the dynamic rendering code path and would be too risky to fix for now.
Fixed dynamic shadow code path issue vs static code path
Change 3848659 by Lina.Halper
Fix issue with animation resetting in the sequencer
#jira: UE-54047
Change 3848635 by Rolando.Caloca
UE4.19 - Fix static analysis
#jira UE-50449
Change 3848515 by Sorin.Gradinaru
Unshelved from pending changelist '3843541':
WebBrowser Android crash on 4.4.3
#jira UE-53247
#Android
#4.19
Crash on Android 4.x.x caused by a call to a Api Level 21 method
Change 3848514 by Jurre.deBaare
Moving over:
CL 3832173
"Failed to import Alembic files
#jira UE-53941
#fix Change Alembic thirdparty library setup
- Removed old unused library files
- Updated batch files for building HDF5 ILMBase and Alembic libraries to use new AlembicDeploy path
- HDF5 is now build as a Dynamic library (which also enableds multi-threading)
- Added DLLs for HDF5 to build.cs file
CL 3838053
"Adding missing hdf5 dynamic libraries
Change 3848245 by Ben.Marsh
Downgrade warning about not using XGE shader compilation to a log message. Build machines do not have XGE.
#jira UE-54237
Change 3847300 by Phillip.Kavan
Fix shadowed local variable.
#jira UE-54141
Change 3846922 by Max.Preussner
ImgMedia: Fixed image media player never finished initialization if loading failed
Copied from Dev-Sequencer CL# 3846902
#jira UE-54247
Change 3846831 by Arciel.Rekman
Linux: only use lld for x86_64 (UE-54144).
- lld support for other architectures seems to not ready for prime time.
#jira UE-54144
Change 3846771 by Lauren.Ridge
Material window now uses the background color set in preview scene.
#jira UE-52215
Change 3846705 by Ben.Marsh
Fix batch file paths not being quoted correctly when run through XGE.
#jira
Change 3846550 by Lauren.Ridge
Toggling Show Background now updates the background as well
#jira UE-52250
Change 3846417 by Matt.Kuhlenschmidt
Fix crash resizing shootergame window
#jira UE-53137
Change 3846295 by Rolando.Caloca
UE4.19 - New Vulkan descriptor pooling mechanism (enabled on non-android)
#jira UE-50449
Change 3846273 by tim.gautier
QAGame: Updating Material Layer test assets to include more Params
- Added temp assets, quicker repros for bugs
#jira UE-54176, UE-54165
Change 3846255 by Lauren.Ridge
Parameter tab is the primary tab for material instances
#jira UE-54092
Change 3846086 by Chris.Babcock
Add missing SecureHash.h include
#jira UE-54026
#PR #4417
#ue4
#android
Change 3846049 by Martin.Wilson
Fix Set Root Motion Enabled Anim Data Modifier node (previously didn't set the enabled flag)
#jira UE-54220
Change 3846033 by Martin.Wilson
Fix root motion being repeatedly applied ( Clear() call only clears bHasRootMotion flag, not the transform itself )
#Jira UE-54219
Change 3845991 by andrew.porter
QAGame: Updating bindings on activechannels sequencer test content
#jira UE-29618
Change 3845933 by Lauren.Ridge
Check for original material being valid
#jira UE-54166
Change 3845920 by Martin.Wilson
Optimized redundant key removal
#jira UE-51303
Change 3845812 by Matt.Kuhlenschmidt
Fix not being able to change BSP brush shape
#jira UE-53738
Change 3845790 by Martin.Wilson
Fix for assert failure when accumulating root motion in debug.
#jira UE-53955
Change 3845730 by JeanLuc.Corenthin
Fix build breakage
warning: resaved disc.uasset with 4.19.0 preview #1
failure: set the correct default mesh for AreaLightStruct.uasset
#jira none
Change 3845693 by Lina.Halper
Fix issue with previewing pose asset with curve data
#jira: UE-53967
Change 3845533 by Andrew.Rodham
Sequencer: Fixed sub sequences potentially being loaded during AddReferencedObjects
#jira UE-54173
Change 3845472 by Thomas.Sarkanen
Prevented debug object selection dropdown from displaying objects with pending kill outers
#jira UE-54045 - Animation Blueprint Editor Crashes on Compile if the Debug Instance Selection is Other Than No Object or Preview Instance
Change 3845401 by Yannick.Lange
Reverting thumbnail capture from viewport.
#jira UE-53775
#jira UE-53701
Change 3844693 by JeanMichel.Dignard
Changed IES texture brightness to be the max candela value and set the texture multiplier to be 1. This fixes the IES lights intensity being too high.
#jira UEENT-632
Change 3844689 by JeanLuc.Corenthin
Update Datasmith content assets to latest
Copying fix from Dev-Enterprise by Jean-Luc Corenthin CL 3809803
Updated assets with correct release version
Cleanup some paths on static meshes and texture
#jira UEENT-759
#jira UEENT-657
Change 3844571 by Martin.Wilson
Fix motion controller motion source pin still showing when pin is connected to something
#Jira UE-53236
Change 3844564 by Martin.Wilson
Due to previously fixed bug some anim blueprint nodes could have duplicated guids, this fixes them
#Jira UE-54174
Change 3844545 by Jamie.Dale
No longer attempt to parse group separators for numeric inputs
This avoids some ambiguity when parsing numbers for languages such as German
#jira UE-54170
Change 3844221 by Nick.Shin
HTML5 - filter out "windows/super" keys - these are not used in UE4
- but, keycode are not the expected "91 or 92" values, SDL keys are "227 & 231" instead...
#jira UE-54056 HTML5 crashes inside browser upon pressing windows key
Change 3843937 by JeanMichel.Dignard
Fixed a crash when right clicking on a static mesh for which its AssetImportData class is currently unavailable (ie: in an unloaded plugin).
#jira UEENT-764
Change 3843929 by Peter.Sauerbrei
pull over fix for bad directory when copying launch images
#jira UE-53177
Change 3843658 by Thomas.Sarkanen
Text is red again in anim viewports
#jira UE-53224 - Colouring removed from "Animation is being edited" warning messages
Change 3843657 by Thomas.Sarkanen
Enable picking via Enter for details panel asset pickers
The previous (4.18) behavior was to only allow selection of the previous/next item in the list with arrow keys. A fix (CL 3783114) for pickers with many assets broke this. This change now allows for selection of any item by navigating with arrow keys and pressing Enter, as suggested in the Jira.
#jira UE-53440 - Unable to select assets within modal Asset Selection dropdowns after navigating with keyboard entry
Change 3843120 by Dan.Oconnor
Avoid fixing component template games outside the editor, this logic does not work for games that have been nativized
#jira UE-54009
Change 3842841 by Ben.Zeigler
#jira UE-50020
Switch visual studio module back to using absolute paths so go to definition works, broken in CL #3796157
Change 3842582 by Lauren.Ridge
Guards against the widget passed to scrollwidgetintoview being null
#jira UE-54037
Change 3842575 by Max.Chen
Sequence Recorder: Stop recording if the preview window is destroyed.
#jira UE-49778
Change 3842551 by Michael.Dupuis
#jira UE-35097: Minor bug fix, documentation, etc. to the landscape optim that was done in the phase 2 that have 0 risk.
Change 3842371 by Max.Preussner
Media: Merged 4.19 fixes from Dev-Sequencer
CL 3807293 WmfMedia: Fixed YUY2 video format strides
CL 3827988 MediaPlayerAssets: Fixed Media Texture is not linked to Media Player when created together
CL 3805414 MediaAssets: Setting valid GUID when initializing media texture resource
CL 3804183 MediaAssets: Added missing lock in media sound component
CL 3831580 MfMedia: Media open events generated in same order as on other platforms
CL 3807193 WmfMedia: Fixed incorrect buffer stride for RGB32 video tracks
#jira UE-53532
#jira UE-53328
Change 3842356 by Max.Preussner
ImgMedia: Fixed ensure when cooking project that uses ImgMediaSource
#jira UE-51631
Change 3842335 by Aaron.McLeran
#jira UE-54087
PR #4419: Fixes a crash due to nullptr dereference (Contributed by mgorzel)
Change 3842286 by Rolando.Caloca
UE4.19 - Fix for static analysis
- Glslang 1.0.65.1
#jira UE-54128
Change 3842222 by andrew.porter
QAGame: Updating framerate of EXR_Sequence
#jira UE-29618
Change 3842211 by Ben.Marsh
Fix determination of Windows version string. The manifest for UE4 applications declares compatibility with Windows 10 nowadays, so we get accurate version numbers returned from GetOSVersionInfo().
#jira UE-54035
Change 3842163 by Cosmin.Sulea
UE-53303 - We do not check for remote connection before attempting remote shader compile, causing crashes when misconfigured
#jira UE-53303
Change 3841770 by Max.Chen
Sequencer: Fix to allow keying of an arbitrarily deep property path.
#jira UE-54095
Change 3841758 by Max.Chen
Sequencer: Fix unbound possessable components when pasting spawnables.
#jira UE-54104
Change 3841415 by Lauren.Ridge
Renaming a material layer or material layer blend will no longer cause the asset to appear removed from the stack
#jira UE-53942
Change 3841327 by Arciel.Rekman
Linux: fix Debug build (UE-53855)
- A workaround. UBT should be using proper PCH files instead.
#jira UE-53855
Change 3840975 by Rolando.Caloca
UE4.19 - Updated VulkanRHI
- Fixes for GPU frame time
- Fixes for CPU performance
#jira UE-50449
Change 3840838 by Michael.Dupuis
#jira UE-53944: Make sure the LOD generated is in the valid range to prevent the crash
Change 3840693 by Ben.Zeigler
#jira UE-53923 Fix regression in 4.19 where PrintScriptCallstack is not always safe to call from the immediate window. I narrowed down the issue to some confusing optimized code so I turned off optimization
Copy of CL #3840692
Change 3840680 by Aaron.McLeran
Bringing fixes from Dev-AnimPhys to 4.19.
#jira UE-53903 crash on load with oculus audio and old audio engine
#jira UE-52786, UE-53910 Fix for broken spatialization on xaudio2, old audio engine.
Change 3840663 by Rolando.Caloca
UE4.19 - Fix for layout ensure on HMD projects on Vulkan
#jira UE-50265
Change 3840577 by Rolando.Caloca
UE4.19 - Fix for CPUs with more than 16 cores
#jira UE-53434
Change 3840551 by andrew.porter
QAGame: Setting Allow Bindings from Asset to false
#jira UE-29618
Change 3840491 by Ben.Zeigler
#jira UE-31662 Fix regression with renaming parent inherited function. It was not correctly searching the parent's skeleton class during the child's recompile so it was erroneously detecting the parent function as missing
Copy of CL #3840489
Change 3840297 by Max.Chen
Sequencer: Fix copy/paste crash for lights
#jira UE-54084
Change 3840284 by Michael.Dupuis
#jira UE-53053: Was having a mismatch between the remove reorder and the actual remove
Change 3840215 by Sorin.Gradinaru
Unshelved from pending changelist '3812852':
UE-53550 Level doesn't render on Lenovo 939
UE-53592 Assertion right after rendering scene on Lenovo S939
#jira UE-53550
#jira UE-53592
#4.19
#Android
UE-53550
Removed force disabling texture2DLodEXT and textureCubeLodEXT on Mali-400 devices
The problem was that the shader compiler complains about code lines before the #extension directives.
Placeholder // end extensions in the original shader code - to be replaced with round() functions
UE-53592
Always use a new task for devices that have GIsThreadedRendering=false, even when the call is from the rendering thread
Change 3840048 by Michael.Dupuis
#jira UE-52975: Was always performing the equivalent of an Add, so now we use the Transform during the duplicate
Change 3840005 by Richard.Wallis
Clone of CL 3835252
Fix for shader library not working with iterative cooking, also fixes native Metal library not working with iterative cook. This works by saving a "backup" of the shader library file - this is reloaded only during iterative cook and adds back in shaders that are missing from the current cook.
Fix for extracting/searching .metal files in different directories so debug tgz archiving wasn't working correctly and also support iterative cook.
Includes first pass code review suggestions by Mark Sat and Dmitriy Dyomin.
#jira UE-53815
Change 3839968 by Michael.Dupuis
#jira UE-52289: When OnRegister is called on the component make sure our PerInstanceRenderData is up to date
Prevent a possible crash if ClearInstanceSelection was called on a component with no PerInstanceRenderData existing
##codereview jack.porter
Change 3839924 by Richard.Wallis
Clone of CL 3838093
Fix for rewind / seek bugs in AvfMediaPlayer.
- Don't initialise and send audio buffers that have a duration of Zero from the audio tap. This chokes the audio sink and adds overhead we don't need.
- Don't faff around with current play rates during loop operation - normal seek doesn't do this so loop seek shouldn't either.
- SetRate() should not required to be passed to media tracks - should be enough to do this on audio track select only.
#jira UE-54019, UE-53027
Change 3839321 by andrew.porter
QAGame: Adding missing bookmark to QA-Sequencer_Blending
#jira UE-29618
Change 3839286 by Marcus.Wassmer
Duplicate CL: 3823296
#jira UE-52784
Change 3839229 by Brandon.Schaefer
Fix audio clean up crash when exiting PIE
#jira UE-54050
#review-3839109 @Arciel.Rekman, @Aaron.McLeran
Change 3839223 by andrew.porter
QAGame: Rebinding pointlight actor to sequences
#jira UE-29618
Change 3839098 by andrew.porter
QAGame: Fixing missing sequencer blending test content
#jira UE-29618
Change 3838919 by Mike.Erwin
glTF: binary format's BIN chunk is not necessarily right after the JSON chunk.
Discussed this with glTF spec authors. See https://github.com/KhronosGroup/glTF/issues/1177
Rearranged how we read "chunks" from the file since they are not fixed in number or order, besides JSON always being first.
#jira UE-50695
Change 3838909 by Mike.Erwin
glTF: base64 decoding of data buffers and images
Data can be encoded inside the glTF JSON as a Base64 data URI. This CL addresses a known limitation of initial commit CL 3793018. I added this after because base64 is expected to be uncommon in the wild. Authoring software will typically use external BIN files (.gltf) or a BIN chunk (.glb) to store data.
#jira UE-50695
Change 3838812 by Uriel.Doyon
Integrated CL 3838576, 3838581 and 3831760 from DevRendering, fixing issues with texture streaming.
#jira none
Change 3838773 by Lauren.Ridge
Fixing material layer filters
#jira UE-54064
Change 3838748 by Michael.Trepka
Fixed EngineTest runtime warning caused by CL 3838626
#jira UE-53893
Change 3838730 by Max.Chen
Sequencer: Add notification when the blend type is changed.
#jira UE-54046
Change 3838626 by Michael.Trepka
Changed FMacMenu to store MultiBox and MenuEntryBox as weak pointers instead of shared pointers. This way we avoid a situation where FMacMenu would try to release them on the main Cocoa thread or where we'd try to execute a menu action for menu items that Slate considers released.
#jira UE-53893
Change 3838392 by Arciel.Rekman
Fix assert on a policy removal (UE-54042).
- Applying Gil's safe fix which just sweeps the problem under the rug.
#jira UE-54042
Change 3838162 by Arciel.Rekman
Linux: fix crash due to lambda lifetime issues (UE-54040).
- The lambda goes out of scope in FBufferVisualizationMenuCommands::CreateVisualizationCommands, crashing the editor if compiled with a recent clang (5.0+).
#jira UE-54040
(Edigrating 3819174 to Release-4.19)
Change 3838156 by Rolando.Caloca
UE4.19 - Support for Vulkan devices that have no cached memory type
#jira UE-54039
Change 3838096 by Brandon.Schaefer
Set sound to unfocused volume multiplier if not focused
#jira UE-51327
#review-3835736 arciel.rekman
Change 3838087 by Brandon.Schaefer
Fix arm server building. A fix from CL 3617084 remove inheriting from IHeadMountedDisplayVulkanExtensions. Remove overrides
#jira UE-53901
#review-3838088 arciel.rekman
Change 3837072 by Phillip.Kavan
Fix for a build failure that could occur with Blueprint nativization enabled and EDL disabled. This was a regression introduced in 4.18.
- Mirrored from //UE4/Dev-Framework (3836768).
#jira UE-53908
Change 3837071 by Phillip.Kavan
Emit proper syntax for set/map fields containing converted assets to generated C++ Blueprint class headers when Blueprint nativization is enabled.
- Mirrored from //UE4/Dev-Framework (3835944, 3835965).
#jira UE-42614
Change 3837070 by Phillip.Kavan
#4202 - Blueprint nativization bug fixes (PR).
- Mirrored from //UE4/Dev-Framework (3830562, 3832292).
#jira UE-52188
Change 3836507 by Ryan.Vance
#jira UE-53992
Due to hijacking the depth target directly from the scene context, we can't support depth compositing if it's being scaled by screen percentage since it wont match our color render target dimensions.
Change 3836390 by Dan.Oconnor
Fix failure to resolve archetype when using the compilation manager
#jira UE-53840
Change 3836251 by Ryan.Vance
#jira UE-53992
Change 3835852 by Mark.Satterthwaite
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 3835802 by JeanMichel.Dignard
UBT changes for Enterprise deployment
- Allow building enterprise against an installed engine version
- Added enterprise to the cleanup process if its not installed
#jira UEENT-748
Change 3835625 by Bogdan.Vasilache
UE-50257 --> (Skeletal meshes silently fail to render if they have more than 75 bones) --> changed logged error with a warning
#jira UE-50257
Change 3833649 by Mike.Beach
Enabling debug layer when multiview is enabled.
#jira UE-49954
Change 3833525 by Ethan.Geller
Fix copyright in ActiveSound.cpp #jira none #rb none
Change 3642649 by Stewart.Lynch
Renamed loctext key to stop it clashing with an existing entry
#jira UE-49432
Change 3644762 by Stewart.Lynch
LLM update: Added Total, Untracked and FMalloc Unused to LLMFULL stat page. Fixed occasionally missing allocs/frees. Removed platform csv.
* removed CheckSize arg from OnLowLevelFree
* show a warning in LLM Map when replacing existing value. This means that there has been an alloc/free mismatch.
* minor optimization in LLMMap::GetMaxIndex - cache Mask value
* added Total and Untracked stats to LLMFULL. LLMFULL now tracks almost all of the memory that LLMPlatform does, so there is no real need to use LLMPlatform. Removed the LLMPlatform csv.
* added FMalloc Unused stat to LLMFULL to account for memory Binned2 has allocated internally. This can be used to track Binned2 fragmentation over time.
* renamed Binned stats to FMemory to make it more general
* added Default tracking to CustomVirtualAlloc and disable it where necessary. This catches the few VirtualAlloc calls that were missed.
* added AllocType arg to all allocation tracking. This was needed in order to track the FMalloc total, and also to fix the pausing
* fixed a bug in pausing where alloc/frees were being missed. Now only pauses a specific allocation type.
* Trackers now maintain totals for each enum tag
* tracking of Texture and mesh allocation on Windows D3D11 & D3D12
Change 3651334 by Joe.Barnes
Fix misspelled function name.
#jira 39441
#3016
Change 3653857 by Ben.Woodhouse
Integrate from //UE4/Main/...@3653675 to //UE4/Dev-Console/...
Change 3656553 by Joe.Barnes
Add path for SCS_DeviceDepth.
Change 3662703 by Ben.Woodhouse
Merging CL 3659069 from //Fortnite/Main/... to to //ue4/dev-console/...:
[FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism
- Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame.
- Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe.
- r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency.
Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup.
A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index.
In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread.
[~] Unified platform specific sync interval CVars into one: rhi.SyncInterval
- 1 == 60Hz
- 2 == 30Hz
- 3 == 20Hz
Change 3675239 by Keith.Judge
Fixed thread priorities for Windows so that BelowNormal and SlightlyBelowNormal are the same. Bumped Lowest down a notch so they all fit.
#jira UE-50626
Change 3676709 by Ben.Woodhouse
Integrate from //UE4/Main/...@3675008 to //UE4/Dev-Console/...
Change 3689712 by Ben.Woodhouse
Integrate from //UE4/Main/...@3687781 to //UE4/Dev-Console/...
Change 3701778 by Ben.Woodhouse
Integrate from //UE4/Main/...@3699491 to //UE4/Dev-Console/...
Change 3677043 by Ben.Woodhouse
From StewartL:
I also found that on Windows Fortnite is overflowing int32 values due to the number of allocations. I changed LLMArray and LLMMap to use uint32 and it seems to be Ok now. I didn't want to check this in at the last minute, so here's the shelf: 3645336
Change 3726532 by Luke.Thatcher
[CONSOLE] [~] Enable XGE shader compilation by default.
- Also set XGE mode to "force interception". With XGE on by default, we don't want people with an old Incredibuild version using the old system inadvertently.
Change 3726554 by Luke.Thatcher
[CONSOLE] [+] Improved Scoped Named Events
- Added SCOPED_NAMED_EVENT(_FSTRING/_TEXT/_F) macros to allow use of string literals, FString and printf in scoped named event strings.
- Replaced explicit use of FPlatformMisc::Begin/EndNamedEvent throughout the engine with macros, so the events can be compiled out.
- Fixed performance issues on various platforms with named events. SCOPED_NAMED_EVENT macros were not considering whether the platform uses wide or ansi char strings.
Change 3751378 by Ben.Woodhouse
Integrate from //UE4/Main/...@3748735 to //UE4/Dev-Console/...
Change 3751812 by Ben.Woodhouse
Integrate from //UE4/Main/...@3750870 to //UE4/Dev-Console/...
Change 3728571 by Luke.Thatcher
[CONSOLE] [!] Drop another XGE controller warning to log.
Change 3747150 by Joe.Barnes
Add AuthoringToolHelper.bat file to installed build copy list.
Change 3768585 by Ben.Woodhouse
Integrate from //UE4/Main/...@3767531 to //UE4/Dev-Console/...
Change 3772333 by Ben.Woodhouse
Integrate from //UE4/Main/...@3771573 to //UE4/Dev-Console/...
Change 3786872 by Ben.Woodhouse
Integrate from //UE4/Main/...@3786785 to //UE4/Dev-Console/...
Change 3787279 by Luke.Thatcher
[CONSOLE] [~] Unified present threshold CVars.
- CVars are now in RHIUtilities.cpp, and are renamed to rhi.PresentThreshold.Top and rhi.PresentThreshold.Bottom.
- Platform implementations will be checked in shortly.
Change 3787445 by Luke.Thatcher
[CONSOLE] [^] Merging (as edit) improvements to low-latency frame syncing from //Fortnite/Main to //UE4/Dev-Console
Original CLs
- 3708949 - Added rhi.SyncSlackMS cvar to allow an offset of the game thread sync time by a number of milliseconds.
- 3712693 - Fix for crash on startup in new frame syncing.
- 3735765 - Fix r.GTSyncType logic when vsync is disabled (falls back to old behaviour when vsync is off).
Change 3788417 by Ben.Woodhouse
Duplicate from FN CL 3712515
CSV profiler GPU and pre-declared stat support
- refactor the GPU profiler so it's no longer dependent on the stats system and can work in Test builds
- add support for pre-declared CSV stats, using FNames (these are required for GPU stats)
- add DECLARE_GPU_STAT macro which handles STATS and CsvProfiler declarations
Note: still a few issues to resolve with GPU stats: these randomly go to 0 at times during a replay on XB1, the GPU total is lower than the stat unit number, and the unaccounted stat is too large due to missing stats
Change 3807818 by Ben.Woodhouse
Integrate from //UE4/Main/...@3803271 to //UE4/Dev-Console/...
Change 3818577 by Ben.Woodhouse
Integrate from //UE4/Main/...@3812936 to //UE4/Dev-Console/...
Change 3821198 by Ben.Woodhouse
Integrate from //UE4/Release-4.19/...@3820127 to //UE4/Dev-Console/...
Change 3821519 by Ben.Woodhouse
Integrate from //UE4/Release-4.19/...@3820753 to //UE4/Dev-Console/...
#robomerge none
Change 3813513 by Ben.Woodhouse
CSV profiler refactor+ bug fix
- Move the CSV profiler to core, so we can use it in modules other than engine
- Profiler no longer enqueues RT commands - this is handled by a new core delegate type
- Make begin/end requests more robust, enqueued via a command queue and processed in order
- Defer end capture requests by a frame. This ensures stats on threads other than the gamethread (e.g. renderthread etc) are complete, so the last frame is not truncated
- Fix long-standing bug with multiple captures where old/stale frames would appear in the first <128 frames of captures
- Move unit stats and dynamic resolution out of the profiler itself and into the engine. Only frametime is recorded in the profiler now
- Fix longstanding bug in first frame renderthread time in the engine
Change 3814039 by Ben.Woodhouse
More Csvprofiler improvements
- Event support (via CSV_EVENT macros). These appear in the "EVENTS" column of the CSV and can be used to add context to the stat data
- Reduced memory overhead for timestamps through bit-packing (now 16 bytes per marker instead of 24), and splitting stats into different types
Change 3814041 by Ben.Woodhouse
Integrate as edit CL 3796390 from Fortnite/Main:
Fix CsvProfiler not compiling in shipping for now
Change 3814229 by Ben.Woodhouse
Integrate + refactor of CL 3792591 to reduce complexity and fix bugs
Original changelist description:
CSV profiler improvements:
- The CSV profiler is now always compiled in on the server
- The CSV profiler can now handle both int32 and float stats
- In BeginCapture, the function can take additional arguments for some customization of filenames
Fixes to the above:
- Remove FCustomValue class
- Fixes bug where all timestamp values from CSV_SCOPED_STATs were garbage (due to issues resulting from FCustomValue type ambiguity when adding values together)
- FCsvCustomStat now just uses simple union + bitfield flag to reduce size and complexity (4 bytes instead of 8 per value)
- FCsvColumn class modified to use doubles, which can represent both ints and floats without loss of precision - this class is not memory or time critical
- Replace multiple overrides used by the server for filenameprefix/folder/postfix etc with a single FilenameOverride
Change 3814242 by Ben.Woodhouse
Disable CSV unit stats on the dedicated server
Change 3817339 by Ben.Woodhouse
Duplicate from 3816641: CSV profiler improvements
- Added a low-pri processing thread to compress raw timing data into a much more efficient format
- Reduces memory usage for 15 minute 30k frame capture with GPU stats enabled from 110MB to 3.4MB
- Processing time : 0.1ms per frame
- Improved name handling for char literal stats. We now use the string as the ID rather than the pointer so multiple stat uses of the same name string apply only to a single stat
- Reworked thread data access to eliminate locking for anything time-critical. Frame boundaries now handled via a lock-free helper class
- Fixed bug with queue implementation where 1 in 128 reads would duplicate the last block of stat data
- Reduced #include dependencies for CSVProfiler.h
- Removed AccumulateMax because it doesn't work, and implementing properly would add a lot of complexity
- Added a simple test harness
Change 3817582 by Ben.Woodhouse
Fix android compile warning
Change 3823242 by Ben.Woodhouse
Integrate as edit from Fortnite/Main 3820067:
Fix threading issue with D3D12 pipeline state caches for windows. This was caused by the usage of FRwScopeLock::RaiseLockToWrite. A pointer read before RaiseLockToWrite was called was invalidated because RaiseLockToWrite has to release the read lock before acquiring the write lock.
Rename FRwScopeLock::RaiseLockToWrite to ReleaseReadOnlyLockAndAcquireWriteLock_USE_WITH_CAUTION to make it more explicit what's happening. As the comment says:
// This function should be used with caution.
// It releases the read lock _before_ acquiring a new write lock. This is not an atomic operation and the caller should
// not treat it as such.
// E.g. Pointers read from protected data structures prior to this call may be invalid after the function is called.
Change 3823840 by Ben.Woodhouse
Edigrate from 3823816
Fix an issue where the csvprofile console commands would sometimes result in an empty CSV. The root cause was GFrameNumber incrementing between the console command being read and FCSVProfiler::EndFrame(). We now use our own frame counter which is updated in EndFrame, so this can't happen
Also fix an issue where calling csvprofile stop twice would cause all further commands to be ignored.
Change 3827787 by Ben.Woodhouse
Integrate-as-edit CL 3820678 from Fortnite/Main
Allow the CSV Profiler to be compiled in to shipping dedicated server builds
Change 3827842 by Ben.Woodhouse
Integrate-as-edit CL 3827079 from Fortnite/Main
CSV profiler category support
Change 3827918 by Luke.Thatcher
[CONSOLE] [!] Fix compile error in CSV custom stats.
Change 3827964 by Luke.Thatcher
[CONSOLE] [!] Fix inverted logic and spelling of boolean.
- Functionally, the boolean did the correct thing, but the logic was backwards inside the build tool.
Change 3831661 by Ben.Woodhouse
Integrate-as-edit CL 3830630 from Fortnite/Main
Fix CSVProfiler assert in dev builds on XB1
Change 3860300 by Joe.Barnes
Use same method for src and dest rect calculation as other post processing passes so rects match between passes. Prevents read of unprocessed pixels.
Change 3860347 by Joe.Barnes
Delete existing SourceConfigFile before allocating a new one to prevent them leaking.
Change 3860348 by Joe.Barnes
Completely encapsulate GetLLMAlloc() in #ifdef.
Change 3861772 by Ben.Woodhouse
Integrate-as-edit CL 3861688 from Fortnite/Main: Forward lighting GPU crash fixes
Change 3861774 by Ben.Woodhouse
Integrate as edit CL 3833918 from dev-rendering (courtesy of DanielW):
D3D12 RHI: only refcount uniform buffers if GRHINeedsExtraDeletionLatency is false, which is no longer the case for PC. 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 3862214 by Ben.Woodhouse
Integrate-as-edit CL 3859637 from Fortnite/Main
Dynamic resolution console tweaks
- Dynamic resolution high level switch driven by a cvar instead of code
- Disable user settings dynamic resolution handling on non-desktop platforms. DynamicRes as a user setting does not make sense on consoles/mobile - we'll drive it from device profiles/scalability
- Modify naming of GPUHeadRoom to make it clear that it's a percentage, not millseconds
Change 3863919 by Ben.Woodhouse
[Copy] Integrate console dynamic resolution interface changes from CL 3863354, 3862754, 3862639
Change 3864347 by Ben.Woodhouse
Fix the editor build. This will need a proper fix before 4.19 ships.
#lockdown Nick.Penwarden
#rb none
[CL 3913399 by Ben Marsh in Main branch]