#lockdown Nick.Penwarden
#rb Jack.Porter
============================
MAJOR FEATURES & CHANGES
============================
Change 4066430 by Nick.Shin
HTML5 - fix merge stomping and add in missing SC.Metadatadir (null) object to last {if else} block
#jira UE-58423 HTML5 Quicklaunch through UnrealFrontEnd fails on Stage Command: Error: System.NullReferenceExeception
Change 4067037 by Bogdan.Vasilache
#jira UE-57406
Shaders compiled for GLSL_ES2 with CFLAG_FeatureLevelES31 compiler flag will now shift to GLSL_ES3_1_ANDROID profile instead of GLSL_310_ES_EXT.
Change 4067649 by Jack.Porter
Remove obsolete cvars from ini files
#jira UE-54768
Change 4071833 by Bogdan.Vasilache
#jira UE-57406
ShaderVersion guid updated to reflect changes in the OpenGL shader compiler.
Change 4075162 by Bogdan.Vasilache
#jira UE-53195
Change 4099176 by Jack.Porter
Fix SpeedTree node not working on ES3_1 (Contributed by PicaroonX)
#jira UE-59685
PR #4761
Change 4124398 by Mi.Wang
Add particle cutout support for feature level es31.
Change 4129400 by Sorin.Gradinaru
UE-60226 Web Browser widget is completely white on Android
#jira UE-60226
#jira UE-53247
#Android
#4.21
from Release-4.20 CL 4122319
The URL from the sample app is malformed (http:www.google.com).
Since the phone's default browser is able to correct this problem for http and https URLs, I've added this exception to the code that checks the URL prefix, re-writing the fix for UE-53247.
Change 4164212 by Nick.Shin
minor fixes to merge from Main
#jira none
Change 4165606 by Nick.Shin
#jira UE-57006 QA-Promotion WebGL1 HTML5 Launch On has numerous graphical errors
in order for UNROLL to work -- break statement needs to be removed
Change 4165823 by Nick.Shin
HTML5 - split single large template file to smaller component (e.g. js & css) files
custom template files are also supported on a per-project basis:
copy
.../Engine/Build/HTML5/GameX.*.template
to
<project>/Build/HTML5/.
build will automatically pick it the project's path (otherwise fallback to the Engine's version)
this is based on GitHub PR #4780
#jira UE-60136 GitHub 4780 : Proposed HTML5 Changes
Change 4202481 by Sorin.Gradinaru
UE-50492 OnUrlChanged does not fire on mobile
#jira UE-50492
#iOS
#4.21
Adding the events for load started & finished with errors
Change 4202484 by Sorin.Gradinaru
UEMOB-454 Move the virtual keyboard out of Experimental and make it enabled by default
#jira UEMOB-454
#4.21
Change 4202583 by Bogdan.Vasilache
[UE-53816] Allow texture sampling in vertex shaders for ES2 feature level
#jira UE-53816
Change 4214064 by Nick.Shin
Epic's GitHub policy is to treat "unknown" file extensions as "binary"
changing filenames so that they will show up GitHub's repo
this is in reference to GitHub PR #4780
#jira UE-60136 GitHub 4780 : Proposed HTML5 Changes
Change 4224514 by Mi.Wang
We should not Tick USceneCaptureComponent on DS by default.
Change 4230192 by Nick.Shin
HTML5 READMEs
updating old ones - and putting new ones in
these originally came from (mostly) onboarding the chrome team on UE4 emails. capturing most of that in markdown format.
#jria UEMOB-255 HTML5 Multithreading
Change 4232460 by Nick.Shin
HTML5 - fix UE_MakeHTTPDataRequest() crash
#jira UE-38351 ( Pri:1 - 4.21 ) Red and Blue color channels flipped on materials called from HTML5 server
Change 4234647 by Nick.Shin
HTML5 - ERGBFormat::RGBA vs ERGBFormat::BGRA
- make use of the enums in UAsyncTaskDownloadImage::HandleImageRequest()
- enable RGBA vs BGRA options for JPG decoder
#jira UE-38351 ( Pri:1 - 4.21 ) Red and Blue color channels flipped on materials called from HTML5 server
Change 4240086 by Sorin.Gradinaru
UE-61345 Decals in Remote Session are not rendering on some iOS devices
#jira UE-61345
#4.21
#iOS
Changed the texture compression from DXT5 to RGBA
Change 4240234 by Sorin.Gradinaru
UE-61838 Android 'Launch On All' can't run during an existing launch on session on Windows
#jira UE-61838
#4.21
Cancel previous sessions before launching the selected configuration.
Change 4244686 by Nick.Shin
HTML5 - syncing build scripts
#jria UEMOB-255 HTML5 Multithreading
Change 4246399 by Nick.Shin
HTML5 - syncing PhysX build scripts
#jria UEMOB-255 HTML5 Multithreading
Change 4267990 by Bogdan.Vasilache
[UEMOB-405] - Mobile PIE polishing - Bezel & Rotation + related subtasks
#jira UEMOB-405
#jira UEMOB-458
#jira UEMOB-459
#jira UEMOB-460
Change 4280211 by Chris.Babcock
Fix FD_SET macro invoke crash when Socket FD exceed 1023 (contributed by scahp)
#jira UE-62290
#PR #4912
#ue4
#android
Change 4300275 by Nick.Shin
HTML5 - Unreal File Server - css response header fixes
#jira UE-63009 HTML5 template page has non-centered viewport and loading banner stretches the entire screen
Change 4302328 by Nick.Shin
#jira UE-63108 HTML5 RunMacHTML5LauncherHelper.command files do not have appropriate permissions to run on Mac
Change 4303428 by Jack.Porter
Fixed crash during cooking for certain landscapes with collision data out of sync with render data.
Change 4307517 by Jack.Porter
Fix warning on Mac/Linux
#jira UE-62993
Change 4311437 by Nick.Shin
HTML5 : re-enabling [ -s BINARYEN_TRAP_MODE='clamp'; ]
warning: this is technically slower performing -- but, this fixes a lot of 64-bit issues (HTML5 is "only" 32-bits)
#jira UE-63049 HTML5 Quicklaunch to Chrome crashes with RuntimeError: float unrepresentable in integer range
Change 4312602 by Chris.Babcock
Allow some hardware buttons through if hardware keyboard disabled
#jira UE-63260
#ue4
#android
Change 4312711 by Chris.Babcock
Fix string formatting for some locales in GetMetaDataString Method (contributed by IlinAleksey)
#jira UE-63252
#PR #5026
#ue4
#android
Change 4321719 by Bogdan.Vasilache
UE-63378 - Fixed static analysis warnings
#jira UE-63378
Change 4331224 by Jack.Porter
Fixed Mobile PIE resolution for iPhone 8 Plus
#jira UE-63191
Change 4339446 by Jack.Porter
Modified foliage thumbnail color to better show when it is inactive
#jira UE-30824
#5057
Change 4339458 by Dmitriy.Dyomin
Fixed typos in glObjectPtrLabel type definitions (contributed by TheCodez)
#4920
#jira UE-62368
Change 4339460 by Dmitriy.Dyomin
Fixed: bRenderInMainPass on SkeletalMeshes doesn't work on Mobile
#jira UE-59077
Change 4339523 by Sorin.Gradinaru
UE-61351 Error: Failed to send -1 bytes of data to RemoteConnection spammed in the editor log when closing RemoteSession on device during connection
#jira UE-61351
#4.21
Not an real issue. The message is issued whenever the host (or the client) tries to send messages through an inactive channel. There is a "/ping" message sent back and forth between the host and the client, with high frequency (hence the spam) - if this message is no longer received, the host (or the client) decides to terminate the connection.
"Downgrading" the message from Error to Log, to avoid spamming the log on release builds.
Change 4339590 by Sorin.Gradinaru
UE-61554 Web Browser: No Transparency in 3D Widget Component on Mobile
#jira UE-61554
#Android
#4.21
Modified Web Texture Material's blend mode to "Translucent"
Change 4339595 by Sorin.Gradinaru
[Build] UE4 Dev-Mobile - CL 4339590 - Incremental Editor Win64
Change 4339597 by Jack.Porter
Fix static analysis CIS
This function should be moved to SceneUtils.h and the dependency in AsyncTaskDownloadImage resolved another way.
#jira UE-63378
Change 4339599 by Sorin.Gradinaru
UE-56076 Android Launch On "Running..." toast intermittently doesn't appear
#jira UE-56076
#Android
#4.21
wait before getting the process list with "adb shell ps" - on some devices the list is not yet ready
Change 4339647 by Sorin.Gradinaru
UE-54791 Planar Reflection gamma / brightness incorrect on Samsung Galaxy S5
#jira UE-54791
#Android
#4.21
The planar texture contains encoded data:
- decode it immediately after sampling the texture
- alpha channel was inverted during the PrefilterPlanarReflectionPS step
Change 4339654 by Sorin.Gradinaru
UE-59697 WebBrowser SetVisibility not working on Android & iOS
#jira UE-59697
#4.21
#iOS
#Android
SetVisibility implemented on iOS and Android's web browsers, by extending the implementation on Windows: use a list to store references to the webbrowsers in the scene , then in WebBrowserSingleton::Tick check if the cached web browsers windows or widgets ticked on the last frame
Change 4339656 by Sorin.Gradinaru
Remove unnecessary comment in IOSPlatformWebBrowser.cpp
Change 4339666 by Bogdan.Vasilache
[UEMOB-455] Make editor tool to dump out a device .json file for a connected Android device
#jira UEMOB-455
Change 4339667 by Bogdan.Vasilache
Mobile PIE bugfixes
#jira UE-63288
#jira UE-63282
Change 4339700 by Bogdan.Vasilache
[bugfix] Accidentally disabled SetPreviewPlatform() call for mobile PIE simulation.
Change 4339733 by Sorin.Gradinaru
UE-59381 Ios application default orientation
#jira UE-59381
#iOS
#4.21
- added Initial interface orientation in the generated Plist file (UIInterfaceOrientation key)
- implemented preferredInterfaceOrientationForPresentation in the IOSViewController
- re-arranged the orientation list in the Plist file
Change 4339781 by Sorin.Gradinaru
UE-60716 Show cursor in Editor text boxes when focused on Android
#jira UE-60716
#Android
#4.21
Updating the widget's cursor position from the native code.
This also overrides the fix for UE49124 Cursor in virtual keyboard and UMG don't match - initially the solution was to hide the widget's cursor.
Change 4340037 by Jack.Porter
Added an Android Project Settings checkbox to enable detection of Vulkan device support by default. If unchecked, the -detectvulkan command line parameter can be used.
Change 4340076 by Jack.Porter
Fix warning seen by CIS
#jira UE-63377
Change 4340212 by Sorin.Gradinaru
UE-63224 Android DLC profile in Project Launcher fails if there is a space in the path for the destination directory
#jira UE-63224
#4.21
#Android
Avoid enclosing path arguments in double quotes (""<path>""). MakePathSafeToUseWithCommandLine(<path>) already adds quotes when needed.
Change 4340721 by Andrew.Grant
Fixed -vsmac argument not working with GenerateProjectFiles
#jira nojira
Change 4340822 by Andrew.Grant
Replaced default iOS splashcreens with UE logo
Added missing resolutions (iPhone 5 portrait, iPad 10.5")
Removed custom splash images from RemoteSessionApp
#jira UE-59864, UE-61939
Change 4340857 by Chris.Babcock
Fix virtual keyboard crashes on Android
#jira none
Change 4341047 by Andrew.Grant
Prevent Xcode upgrade warnings for >9.0 versions
Change 4343797 by Cosmin.Sulea
iOS - iPhonePackager ExportCertificate command failing 100%
Change 4343823 by Sorin.Gradinaru
UE-63334 Unreal Remote 2 does not send information about motion control
#jira UE-63334
#iOS
#Android
The functionality was commented out. Tested it for performance and it seems OK (despite the high frequency of /motion signals)
Change 4343824 by Sorin.Gradinaru
UEMOB-185 Implement the equivalent of FAndroidJSScripting for iOS
UE-59488 FWebBrowserWindow::UnbindUObject of IOSPlatformWebBrowser.cpp is not implemented yet
#jira UEMOB-185
#jira UE-59488
#4.21
#iOS
New methods (using WebKit, matching the Android implementation):
- Go back/forward
- HandlePageLoading (loading/didCommitNavigation, loaded/didFinishNavigation)
- HandleReceivedError (didFailNavigation)
- execute JS code
- controlling the client using JS commands (WKWebViewConfiguration & WKUserContentController):
- in Android we using shouldInterceptRequest to intercept a custom resource URL (JS: XMLHttpRequest.send, document.location)
- iOS will register handlers (JS: window.webkit.messageHandlers.<FMobileJSScripting::JSMessageHandler>.postMessage)
Change 4343845 by Sorin.Gradinaru
Adding the signatures for FJavaWrapper's CallLongMethod, CallFloatMethod and CallDoubleMethod in the AndroidJNI.h
#4.21
#Android
Change 4343893 by Cosmin.Sulea
UEMOB-465 - Add Device Output Log support for iOS
#jira UEMOB-465
Change 4343895 by Dmitriy.Dyomin
Fixed: DepthFade does not work in mobile emulation while MobileMSAA enabled
#jira UE-60404
Change 4343899 by Dmitriy.Dyomin
GitHub 4851 : Fix layer info property bNoWeightBlend not being saved after tiled landscape import (contributed by cmp-)
#4851
#jira UE-61437
Change 4343906 by Bogdan.Vasilache
Editor's feature level is now saved and restored between sessions
#jira UE-55506
#jira UE-59688
Change 4346729 by Jack.Porter
Fix CIS
#jira UE-63716
Change 4347811 by Jack.Porter
Fix dependency chain while including PIEPreviewDeviceSpecification
#jira UE-63755
Change 4348580 by Jack.Porter
Fix CIS issues in IOSPlatformWebBrowser
#jira UE-63809
Change 4350092 by Jack.Porter
Fix null pointer exception in iPhonePackager when a matching certificate cannot be found
#jira UE-63821
Change 4350968 by Jack.Porter
Update binaries for deployment server
#jira UEMOB-332
Change 4353925 by Jack.Porter
Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)
Rework PR 4912 from CL 4280211
#jira UE-62290
Change 4354034 by Jack.Porter
Rebuilt deployment server after backing out changes
#jira UE-63826
Change 4354338 by Ben.Marsh
Attempted fix for incorrect certificate errors when compiling remotely.
* Overloaded meaning of the -Certificate argument (ie. as the output path rather than as the desired certificate when selecting a provision) was causing certificate name check to fail. Now uses a different parameter to specify the output path.
* TVOS argument was not being passed when exporting the certificate, also causing the wrong provision/certificate pair to be selected.
* Add support for the -bundlename argument, though it shouldn't be necessary when invoked from UBT since the UUID discovered in a previous invocation of IPP is explicitly specified.
Since the provision UUID is already being specified to IPP, it should be able to identify the correct provision on phase -1 using this info.
#jira UE-63859
Change 4354459 by Chris.Babcock
Fix issue with Android PCH include files
#jira UE-63909
#ue4
#android
Change 4255761 by Peter.Sauerbrei
fix for space in manifest name
#jira UE-63868
#ROBOMERGE-OWNER: jason.bestimt
#ROBOMERGE-SOURCE: CL 4356719 in //UE4/Main/...
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR)
[CL 4356730 by chris babcock in Dev-VR branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3813004 by Matt.Kuhlenschmidt
Fix dpi scale being wrong when there is a mix of high dpi and low dpi monitors and the editor opens the window on the low dpi monitor
Change 3946515 by Michael.Trepka
Reverted CL 3813004. We need to save editor's root window size and position in DPI-independent units, as that's what the loading code expects.
Change 4052825 by Brandon.Schaefer
Add back -funwind-tables for arm
This was removed an only tested on x86 which worked just fine. Arm reqiures this for backtrace
#jira none
Change 4055318 by Brandon.Schaefer
Remove extra mallocs when crash handling
Still need to look into gmalloc calls, such as using FStrings during Ensure/Crash handling
[at]Arciel.Rekman
#jira UE-58538
Change 4055623 by Brandon.Schaefer
Replace std::endl with "\n"
As std::endl is "\n" << std::flush. On windows dump_syms was taking 33 seconds to fflush with std::endl on a 1.2GB file. No longer with "\n".
[at]Josh.Engebretson
Change 4057102 by Jamie.Dale
Added missing API export
Change 4057384 by Rex.Hill
Fix ReversePolygonFacing crash
Change 4067426 by Matt.Kuhlenschmidt
PR #4667: Source control history: remove empty spacing in the right of the detail panel (Contributed by SRombauts)
Change 4067587 by Matt.Kuhlenschmidt
PR #4311: PlacementModeTools shapes searchable and thumbnail (Contributed by projectgheist)
Change 4068480 by Cody.Albert
Fix display name for Display UI Extension Points
Change 4070876 by Brandon.Schaefer
Avoid printing when in a signal handler. Put that off until the end
#jira UE-36663
[at]Arciel.Rekman, [at]Anthony.Bills
Change 4071980 by Brandon.Schaefer
Cache files that are invalid or the wrong case sensitivity
#jira UE-58250
[at]Arciel.Rekman
Change 4079967 by Matt.Kuhlenschmidt
Added scale parameter to Canvas::DrawText
#jira UE-59023
Change 4080228 by Alexis.Matte
Fix the PerPlatformPropertiesWidget to be readable when there is many platform
#jira UE-57556
Change 4081171 by Matt.Kuhlenschmidt
PR #4272: Fix typo. (Contributed by Damianno19)
Change 4081601 by Matt.Kuhlenschmidt
GitHub 4077 : Hide SDetailView Filterbox when no actor selected
Change 4090114 by Matt.Kuhlenschmidt
Fixed touch events simulated through mouse not respecting high dpi
#jira UE-59477
Change 4091999 by Matt.Kuhlenschmidt
Fixed insert/delete/duplicate children calling PostEditChange on the existing child node not the array
Change 4093187 by Arciel.Rekman
Do not save window position if running with -nullrhi (UE-52498).
- This also fixes a crash on exiting automation tests.
#jira UE-52498
Change 4096404 by Richard.TalbotWatkin
Resaved test assets to update to latest UStaticMesh serialization format.
Change 4096445 by Richard.TalbotWatkin
New serialization layout for UMeshDescription.
- Only the bare minimum is serialized: any internal values which can be inferred from others in the Mesh Description are omitted.
- Triangles are no longer serialized: a triangulation step is performed per polygon when serialized.
- Attribute arrays of simple types are now serialized with BulkSerialize for speed; only FName requires element-by-element serialization.
Change 4112843 by Brandon.Schaefer
Rebuilt replacing std::endl with '\n' avoiding a std::flush *pre* write
Was taking 30 seconds to std::flush on a 1.2 GB file
#jira none
Change 4113422 by Brandon.Schaefer
If we are using the native bundled toolchain set LC_ALL=C to avoid locale issues
#jira UE-59416
Change 4113849 by Cody.Albert
Fix support for toolbar extensions in the UMG editor
Change 4118758 by Richard.TalbotWatkin
- Refactor to put UStaticMesh Mesh Descriptions in a separate object which is not loaded by default, but which can be requested when needed. This needs to be kept in sync with the number of SourceModel LODs.
- Various refactors to import/building.
- Changed UMeshDescription to FMeshDescription, and made its preferred semantics pass-by-reference rather than by pointer.
- Deprecated UMeshDescription.
Change 4119883 by Rex.Hill
Cleanup blueprint callable categories
Landscape Editor -> Landscape|Editor
Landscape Runtime -> Landscape|Runtime
Cloth -> Clothing Simulation
Cinematics -> Cinematic
Utility -> Utilities
Change 4119898 by Rex.Hill
Cleanup blueprint callable categories
x|Magic Leap -> Magic Leap|x
Apple ARKit * -> Apple ARKit|*
Change 4119972 by Brandon.Schaefer
Dont add colors if we are not outputing to a terminal
#jira UE-58173
Change 4119994 by Brandon.Schaefer
Only check once if we are outputing to a terminal
#jira UE-58173
Change 4122654 by Alexis.Matte
Fix re import assignment of sections
#jira UE-59611
Change 4123536 by Alexis.Matte
Add to the fbx importer the possibility to use different sample rate when importing an animation.
#jira UE-59444
Change 4124702 by Brandon.Schaefer
Fix duplicated struct/class from slightly different submit into main coming back into dev-editor
#jira UE-60163
Change 4133449 by Mike.Erwin
glTF importer work
Foundations of work for Skeletal Mesh import; right now we just support Static Mesh.
- node hierarchy
- joint IDs & skinning weights
- matrix & quaternion values
#jira none
Change 4133749 by Matt.Kuhlenschmidt
PR #4771: Fix access violation for ImportAsset commandlet fbx reimport. (Contributed by UristMcRainmaker)
Change 4133758 by Matt.Kuhlenschmidt
PR #4675: Properly set TextScale for OnScreenDebugMessages (Contributed by projectgheist)
Change 4134543 by Alexis.Matte
Update the staticmesh LOD model max deviation when generating a LOD
#jira UE-60353
Change 4134559 by Alexis.Matte
Deprecate FRawMesh, replace by MeshDescription - Editor scripting utilities
#jira UE-60666
Change 4134560 by Alexis.Matte
Deprecate FRawMesh, replace by MeshDescription - SpeedTreeImporter
#jira UE-60667
Change 4135335 by Alexis.Matte
Deprecate FRawMesh - GLTF importer
#jira UE-60670
Change 4135857 by Alexis.Matte
Fix CIS build warning
#jira none
Change 4137249 by Matt.Kuhlenschmidt
Fix tiny fonts from appearing in slow task dialogs
Change 4137280 by Matt.Kuhlenschmidt
Fix specifying relative paths for the auto-import commandlet not working
Change 4137283 by Matt.Kuhlenschmidt
PR #4305: Light map index was unintialized (Contributed by DSDambuster)
Change 4137290 by Matt.Kuhlenschmidt
PR #4382: Prevent error log due to non-existing plugin directory (Contributed by projectgheist)
Change 4147032 by Alexis.Matte
Deprecate FRawMesh, replace by MeshDescription - ABC Importer
#jira UE-60702
Change 4147978 by Matt.Kuhlenschmidt
Fix one of the CIS fails
Change 4154874 by Matt.Kuhlenschmidt
Fix hidden asset properties in struct details panels.
We consider all object properties with "allowedclasses" metadata to be asset properties since they only show an asset picker.
Change 4167303 by Matt.Kuhlenschmidt
Work around for sync to content browser from details panels not working for interface properties
Change 4167388 by Matt.Kuhlenschmidt
Make sure when converting relative path filenames in automated import that we convert them relative to the project directory.
Change 4171891 by Matt.Kuhlenschmidt
Fix preview mesh actor becoming stuck to the cursor when the editor or viewport loses focus
#jira UE-61246
Change 4175503 by Cody.Albert
Updated variable details panels to not display unusable metadata options for UMG widget references
#jira UE-55078
Change 4175736 by Cody.Albert
PR #4663: UE-20103: Slate widgets retain their category name v2 (Contributed by projectgheist)
Change 4178937 by Rex.Hill
Fix crash opening level after removing as sublevel
jira: UE-61305
Change 4181097 by Matt.Kuhlenschmidt
Fix Linux/Mac CIS
Change 4184333 by Alexis.Matte
Fix the material ID assignation when re-importing static mesh
#jira none
Change 4199682 by Arciel.Rekman
Linux: enable XGE during cross-builds to see whether the build issues persist.
- Licensees are asking for this and XGE folks are eager to help investigating the crashes, if any.
Change 4200944 by Cody.Albert
Updated VR Mode button to become inactive during SIE (instead of disappearing altogether)
#jira UE-50220
Change 4204817 by Alexis.Matte
Enable or disable the morph target weight slider depending of the project settings.
#jira UE-61671
Change 4204821 by Alexis.Matte
Optimize import time for morph targets
#jira UE-61670
Change 4207394 by Cody.Albert
PR #3299: UMG Slider Additions (Contributed by Dzuelu)
Change 4208299 by Brandon.Schaefer
Fix warning/error with logical operators
#jira none
Change 4210660 by Cody.Albert
PR #3458: UE-43728: Always show scrollbar when necessary (Contributed by projectgheist)
#jira UE-43727, UE-43278
Change 4215684 by Brandon.Schaefer
Linux: Implement minimized function for LinuxWindow
#jira UE-56023
Change 4217350 by Brandon.Schaefer
Linux: Clean up IsMaximized
#jira none
Change 4217489 by Brandon.Schaefer
Linux: Make popup menus BORDERLESS. Slate will give the menu events
This appears to fix a lot of our grabs causing compiz to do something issue.
#jira UE-59237, UE-54085, UE-51407, UE-50018, UE-53915
Change 4225018 by Cody.Albert
UMG Hierarchy now remembers expansion state when being destroyed and recreated (due to closing widget or switching to Graph view)
#jira UE-61836
Change 4225088 by Cody.Albert
Added hover style for color picker slider
Change 4226081 by Richard.TalbotWatkin
New attribute array API.
Fixed some flaws in the original API, deprecated various methods, and introduced some new features.
- Now attribute arrays are accessed via TAttributesRef or TAttributesView (and corresponding const versions). These value types hold references to attribute arrays, and individual elements can be accessed by their element ID and attribute index. Using a value type is safer than the previous method which required assignment to a const-ref (and not doing so would take a temporary copy of the attribute array).
- The attribute set has been totally flattened, so all attributes of different types are added to the same container. This greatly improves compile times, prevents attributes from being created with the same name but different types, and permits the view feature.
- The class hierarchy has changed to have generic base classes where possible with no particular ElementID type. This reduces the code footprint by no longer generating nearly identical copies of templated methods.
- A TAttributesView allows the user to access an attribute array by the type of their choosing, regardless of its actual type. For example, the Normal attribute may be registered with type FPackedVector, but accessed as if it was an FVector. This allows us to move away from very strong typing, and instead transparently store attributes of a more efficient size, while the user is not affected.
- A transient attribute flag has been added, to denote that a particular attribute should not be saved.
Change 4226083 by Richard.TalbotWatkin
Reinstated original mesh editor materials.
Change 4226102 by Richard.TalbotWatkin
Fixed some deprecation warnings, and a mistake in MeshAttributeArray.h.
Change 4226118 by Richard.TalbotWatkin
Fix build errors:
- Added missing file
- Corrected the last fix.
Change 4226121 by Richard.TalbotWatkin
Bumped static mesh mesh data GUID.
Change 4226231 by Richard.TalbotWatkin
Removed some test code which got checked in by mistake.
Change 4226232 by Richard.TalbotWatkin
Fixed typo which caused build errors.
Change 4226234 by Richard.TalbotWatkin
Fixed a typo in MeshDescriptionTests.
Change 4226237 by Richard.TalbotWatkin
Removed over-cautious deprecation warnings. Once GetAttributes() is changed to GetAttributesRef(), element access will still work with array syntax.
Change 4226625 by Richard.TalbotWatkin
Added missing asset.
Change 4227365 by Matt.Kuhlenschmidt
Fix brush actors not showing the correct icon in scene outliner.
- Actors can now supply their own icon if needed
#jira UE-61948
Change 4229632 by Alexis.Matte
Make the namespace an import option
#jira UE-62099
#jira UE-62067
Change 4229637 by Alexis.Matte
Fix fbx importer staticmesh the light map index, the index was check before the build.
#jira UE-62064
Change 4232793 by Chris.Gagnon
Added include to fix non unity builds.
#jira UE-62138
Change 4234206 by Brandon.Schaefer
Linux: Allow windows that want to be resizable to be resizeable
Github PR #3578 thanks hhyyrylainen
#jira UE-45847
Change 4234322 by Brandon.Schaefer
Continue after starting UnrealVersionSelector to avoid blocking a chain command
#jira UE-61530
Change 4234446 by Chris.Gagnon
Properly handled FPackageName::TryConvertFilenameToLongPackageName() failing in Cache Thumbnail.
#jira UE-61990
Change 4235057 by Brandon.Schaefer
Linux: Write to stderr when we fail to find expected to find sym file
#jira none
Change 4235121 by Brandon.Schaefer
Linux: Mark the static bool as soon as we enter the scope
#jira none
Change 4235399 by Brandon.Schaefer
Linux: Check we are not x86 otherwise add unwind tables
Copying the change that went over into 4.20.1 here
#jira none
Change 4240539 by Jamie.Dale
Made DataTableUtils::GetX functions take a const data pointer
Change 4240646 by Chris.Gagnon
Fix for delayed destruction of UWidgets when they are manually removed from a panel as part of tear down.
Inspired by the pull request, however I put in a more generic fix.
PR #4904: Fix late release of Slate resources managed by UMG slot widgets (Contributed by cmp-)
Change 4242975 by Yuriy.ODonnell
Moved duplicated code from MeshUtilities and MeshDescriptionOperations (FLayoutUV, FAllocator2D, FOverlappingCorners, etc.) into a new single module MeshUtilitiesCommon.
Add a generic opaque mesh view interface FLayoutUV::IMeshView to abstract mesh data access and allow FLayoutUV to be used with any mesh type in any module.
Replaced few instances of using an old version of overlapping corners data structure (multi-map) with new specialized FOverlappingCorners container.
Change 4243112 by Yuriy.ODonnell
Use new attribute array API for accessing FMeshDescription data.
Change 4243131 by Brandon.Schaefer
Cast our new resize w/h to int before checking if we are already that size
#jira UE-52291
Change 4243172 by Brandon.Schaefer
Ceil not trunk for this compare
#jira none
Change 4243271 by Brandon.Schaefer
Change address to be more portable
MS compiler does not place a '0x' on %p formating. Linux/Mac append a '0x' to the address
#jira UE-62325
Change 4243276 by Richard.TalbotWatkin
Fixed deprecated MeshDescription calls (merged with Yuriy's changes).
Change 4244067 by Lauren.Ridge
Preventing crash on floating text if asset container does not exist. VR Editor floating text is now not placeable or blueprintable.
#jira UE-62139
Change 4244547 by Lauren.Ridge
Changes to more accurately represent android behavior in PIE and UMG
#jira UE-62301
Change 4244830 by Alexis.Matte
Fix animation Range import, prevent changing the option when validating the anim range.
#jira UE-62055
Change 4250565 by Yuriy.ODonnell
Removed GeometryCache dependency on MeshUtilitiesCommon in non-editor configs.
Change 4254733 by Matt.Kuhlenschmidt
Slate Fast Path - Changed FSlateWindowElementList GetWindow to be thread safe. For fast path, this is accessed on multiple threads so it needs to be safe
GetWindow is deprecated and GetPaintWindow should be used instead
Edigrate from source CL 4254611
Change 4257092 by Chris.Gagnon
Improved UMG rename validation to respect the errors from the blueprint validator.
This fixes at least the case where it miss reported the issue when the name was greater than the length limit in blueprints.
#jira UE-62417
Change 4257124 by Chris.Gagnon
PR #4924: UE-62113 Fix Other filters toggling all assets to show up (Contributed by mamoniem)
#jira UE-62457
Change 4258696 by Chris.Gagnon
Removed Tab Spawner for Color Curve Editor is your not editing the color curve.
#jira none
Change 4258937 by Chris.Gagnon
Simplifed the code in the case of a null CurveOwner.
#jira UE-62443
Change 4259162 by Richard.TalbotWatkin
Fixed crash when entering mesh editor mode after having loaded a new level.
Change 4259909 by Chris.Gagnon
Added better check output to try and learn more about a crash in the wild.
Added some better const saftey while in there.
#jira UE-60696
Change 4259995 by Chris.Gagnon
Fix for possible crash if the mesh has invalid materials.
Also fixed the fact the FindMaterialIndicesUsingTexture() didn't work as advertised at all.
Seems like you'd attemp to paint all materials even when trying to only paint the ones using a particular texture.
#jira UE-62488
Change 4261012 by Michael.Dupuis
#jira UE-48899: Make sure the RootComponent is valid before trying to use it.
Change 4261361 by Michael.Dupuis
#jira UE-48899: Fixed the warning about scale
Change 4261926 by Michael.Dupuis
#jira UE-48899: Only check the root component validity as it's possible that the component is not registered when this get called.
Change 4262163 by Richard.TalbotWatkin
Fixed uninitialized member.
#jira UE-62493
#jira UE-62506
Change 4262549 by Brandon.Schaefer
Linux: Update the Slate application what the window size will most likely be
As X11 takes a frame to send an Event that a window has had its size changed. This causes things such as the slate renderer to think the window size is different then it actually it. This causes streching of tooltips
#jira UE-62555
Change 4262581 by Brandon.Schaefer
Linux: Use Show so we preserve our bIsVisible bool and avoid sending SDL_ShowWindow twice (ie. if its already shown)
#jira none
Change 4262906 by Chris.Gagnon
PR #4915: [UMG] Bind UWidgetAnimation from C++ to blueprint created animation (Contributed by TheCodez)
Change 4262965 by Chris.Gagnon
PR #4932: Fix to generate cleaner C++ files when using "New C++ Class" (Contributed by TheCodez)
Change 4263177 by Chris.Gagnon
PR #4935: Prevent crash when clicking use selected game mode multiple times (Contributed by projectgheist)
Change 4264723 by Christina.TempelaarL
Fixed SceneCaptureComponent so ShowOnlyActors property is writeable in blueprints.
#jira UE-62547
Change 4266029 by Michael.Dupuis
#jira none: Guarded against the scene being null
Change 4266356 by Richard.TalbotWatkin
Changed FMeshDescription to a struct from a class.
Added log errors when loading UMeshDescription objects (now deprecated), in preparation to resave any which remain.
Once all serialized UMeshDescriptions are wiped out (they only exist internally), FMeshDescription will become a USTRUCT.
Change 4266621 by Matt.Kuhlenschmidt
Fix UE4 icon to be the correct one
Change 4266635 by Chris.Gagnon
Added Message Log output for invalid software cursor as opposed to ensure/log.
#jira UE-62554
Change 4268136 by Matt.Kuhlenschmidt
Fix outline colors not updating when changing on the fly
#jira UE-42116
Change 4269184 by Chris.Gagnon
Fix for possible nullptr dereference.
#jira none
Change 4269902 by Brandon.Schaefer
Slate dialog modal window was not settings its parent window
#jira UE-62608
Change 4272083 by Chris.Gagnon
Fix for case where the the property noded arn't rebuilt in time and custom property ui can be using stale data.
#jira UE-62499
Change 4272869 by Michael.Trepka
Make sure ShooterGame sets correct input modes/mouse capture in menus and in game to avoid problems with keyboard not working in menus after alt-tab
#jira UE-61017
Change 4275155 by Michael.Dupuis
#jira UE-62526: Update lightmap/shadow UV mapping after lighting build on HISMC. ISM will get also updated due to the Edit() that will reapply the values on CreateSceneProxy
Change 4275298 by Lauren.Ridge
Fixed string parsing when looking at parent cvar values
#jira UE-62301
Change 4275391 by Lauren.Ridge
Fix for resolutions increasing when swapping landscape/portrait
Change 4275606 by Lauren.Ridge
Moving all asset container access to PostActorCreated to avoid VR editor assets in cooks
#jira UE-57797
Change 4275807 by Lauren.Ridge
Duplicating color themes now dupllicates the color labels as well
#jira UE-60697
Change 4275989 by Lauren.Ridge
When selecting a node while the details panel is behind a different panel in the same dock tab, the details panel is brought forward
#jira UETOOL-1325
Change 4276146 by Lauren.Ridge
Fix for new texture sample nodes not taking the selected texture from the content browser as the starting value.
#jira UETOOL-1322
Change 4276412 by Lauren.Ridge
Assets that can be dragged into the material graph now indicate that with a checkmark
#jira UE-56024
Change 4279549 by Lauren.Ridge
Fixed recursion of calls through SetDesignerFlags to avoid double-recursion with many nested panels
#jira none
Change 4279894 by Lauren.Ridge
Adding check for RootWidget existing
Change 4279969 by Michael.Trepka
Updated FDesktopPlatformMac::FileDialogShared() to handle a case where no extensions were specified in FileTypes string
#jira UE-62421
Change 4280317 by Lauren.Ridge
Adding if WITH_EDITOR
Change 4280716 by Chris.Gagnon
PR #4979: UE-62795: Deprecate bAutoWrapText in TextBlock (Contributed by projectgheist)
Slightly modified, the base syncronize sets the autowrap value.
Change 4280847 by Lauren.Ridge
Single property setting changes will now also call OnModified delegate for their section
#jira UE-58276
Change 4280850 by Chris.Gagnon
Added early out and log if focus is attempted to be set when the window is suppost to be be disabled due to a modal window being up.
#jira UE-62742
Change 4280931 by Brandon.Schaefer
Linux: Use MallocCrash when hitting out of memory issues in BinnedAllocFromOS
#jira FORT-108267
Change 4281460 by Lauren.Ridge
Clearing focus on a variable once it is committed. Fixes assert on undo
#jira UE-61872
Change 4283706 by tim.gautier
QAGame: Adding HISM test map / assets
Change 4283980 by Michael.Trepka
Unshelved from pending changelist '4238012':
Xcode project generator improvements
- Per-project precompiled header that wraps UnrealEd.h with #ifdef __cplusplus to allow Xcode to compile the pch in ObjC mode. Later we could replace UnrealEd.h with some other header file for non-editor targets
- Moved commands that disable compile warnings from MacToolChain's GetCompileArguments_Global to ApplePlatformCompilerPreSetup.h. Thanks to this we can have all the Xcode recommended warnings enabled in the project, but still allow Clang to index our code without reporting warnings
- Few more minor changes to fix Xcode's project validation and indexing warnings
Also, unify compile warning flags across all Apple platforms.
#jira UE-47965, UE-44327
Change 4284062 by Michael.Trepka
Copy of CL 4222794 from 4.20
Fixed a crash at exit in Mac editor caused by an attempt to use MetalProfiler after deleting it
#jira none
Change 4284266 by Brandon.Schaefer
Linux: Fix deadlock in a file cache which could be locked in a crash handler
#jira UE-62808
Change 4284469 by Lauren.Ridge
Fix for material parameter node crashing
Change 4284541 by Lauren.Ridge
Blueprints inheriting from UWidget will now show up in the palette view even if they are not loaded.
#jira UE-59164
Change 4284542 by Michael.Trepka
Copy of CL 4222797
Fixed a problem with FMacPlatformMisc::NormalizePath allocating an autorelease pool during crash handling, which resulted in the OS killing the process before we spawn CrashReportClient. Now this function is identical to Linux version.
#jira UE-61779
Change 4285288 by Cody.Albert
Fixed crash when changing "Show Coalesced" setting in profiler
Change 4285483 by Chris.Gagnon
PR #4936: Duplicate widget functionality for UMG editor (Contributed by projectgheist)
Fixed up some variable names.
#jira UE-62528
Change 4287219 by Brandon.Schaefer
dump_syms: Replace inline file/line with their callsite over the inline location
Fix <name omitted> appearing as the names for the function
Disable CFI generation for Windows (Linux theres a command line). Speeds up symbol generation
#jira FORT-670
Change 4287247 by Brandon.Schaefer
BreakpadSymbolEncoder: If the file doesnt have a newline at EOF handle that as a seperate case
#jira none
Change 4287259 by Brandon.Schaefer
dump_syms: Build on centos7
#jira none
Change 4287269 by Brandon.Schaefer
Linux: Disable generating CFI info when running dump_syms
#jira none
Change 4287326 by Brandon.Schaefer
dump_syms: Update to disabling the CFI generation version
#jira none
Change 4287902 by Brandon.Schaefer
TestPAL: Add cases for testing inline callstacks
#jira UEENGQA-21414
Change 4288365 by Lauren.Ridge
PR #4422: Set default material parameter name (Contributed by projectgheist)
Change 4292002 by Brandon.Schaefer
Linux: If our default settings are empty help fill in the proper name
#jira UE-62910
Change 4292496 by Lauren.Ridge
Now all renamable nodes do name verification also
Change 4292532 by Lauren.Ridge
PR #4989: Add icons to folder context menu favorites (Contributed by projectgheist)
Change 4293043 by tim.gautier
QAGame: Added a panner to ML_Albedo
Change 4295326 by Richard.TalbotWatkin
- Updated MeshDescription attribute calls to fix deprecation warnings.
- Removed TMeshAttributeArraySet::AddArray because the functionality was already available as part of SetNumIndices.
- Renamed TMeshAttributeArraySet::InsertArray, RemoveArray to InsertIndex, RemoveIndex for naming convention consistency (these methods deal with attribute indices, not with arrays). Added support for them in other attribute classes, and made them virtual so they can be called as part of an AttributesView.
- Removed redundant code in FUSDStaticMeshImportState::AddPolygons, when determining the number of UVs in the mesh description.
Change 4295795 by Richard.TalbotWatkin
Corrected MAX_MESH_TEXTURE_COORDS_MD references.
Change 4297308 by Cody.Albert
Fixed bug with InputPreProcessorsHelper::Add not correctly adding input processors
Change 4297799 by Brandon.Schaefer
Linux: Dont assume DISPlAY=:0
#jira UE-63050
Change 4298150 by Brandon.Schaefer
dump_syms: This is rebuilding dump_sym changes from CL 4287219 for Mac
Replace inline file/line with their callsite over the inline location
Fix <name omitted> appearing as the names for the function
Disable CFI generation for Windows (Linux theres a command line). Speeds up symbol generation
Source code changes for dump_syms was changed at CL 4287219
#jira none
Change 4298369 by Brandon.Schaefer
dump_syms: Rebuild for Linux/Windows to fix a possible crash when missing debug_ranges in the debug section
Source changed in CL 4298150
#jira none
Change 4301952 by Lauren.Ridge
Fixing input labels on material function inputs
#jira UE-63077
Change 4302388 by Brandon.Schaefer
Linux: If we have a 0 LineNumber lets try to use to the previous Record.
Still an issue with non-virtual thunks reporting line number zero but it seems even windows skips these frames. GDB reports a different callsite that doesnt seem super related (possibly?) Nothing to do with thunking though.
#jira UE-62930
Change 4304835 by Alexis.Matte
Add imported framerate info to anime sequence
#jira UE-51302
Change 4307480 by Brandon.Schaefer
SDL2: Update to newer version hg-12121:4358e537000a
Fixed github PR #4844 as well (thanks tomix1024)
#jira UE-62783 UE-61369
Change 4307481 by Brandon.Schaefer
SDL2: Rebuild with the newer version hg-12121:4358e537000a
Fixed github PR #4844 as well (thanks tomix1024)
#jira UE-62783 UE-61369
Change 4308264 by Brandon.Schaefer
Linux: Make both DLLIMPORT the same value
#jira UE-61174
Change 4308640 by Matt.Kuhlenschmidt
Added a "report bug" menu entry to the help menu
#jira UE-63182
Change 4309508 by Brandon.Schaefer
nvTextureTools: Rebuild on Linux using our libc++ and not libstdc++
Move to the proper runtime depend location
#jira UE-54892 UE-61705
Change 4309554 by Brandon.Schaefer
SDL2: Add last missing folder
#jira none
Change 4309955 by Chris.Gagnon
PR #5017: UE-63105: Modify SGraphActionMenu::OnKeyDown to use a different branc. (Contributed by projectgheist)
Change 4311008 by Brandon.Schaefer
nvTextureTools: Actually remove libstdc++ from Linux build
#jira UE-54892
Change 4312195 by Alexis.Matte
- Fix the set range feature to always use the file sample rate so the range match what the user see in the DCC
- Also add some fbx file information to the import dialog
#jira UE-62504
Change 4315347 by Brandon.Schaefer
Linux: Disable XGE builds as it appears to be lower casing folders when the build platform is Windows
#jira UE-63296
Change 4318704 by Lauren.Ridge
Fix for crash on opening map built data
#jira UE-63301
Change 4319999 by Lauren.Ridge
Fix for crash in vr mode
#jira UE-63376
Change 4320144 by Chris.Gagnon
Fix for smoke content that set the hovered size different to the normal size on the UMG slider handle.
#jira UE-63367
Change 4327887 by Michael.Trepka
Disable nonportable-include-path warning in iOS toolchain to allow incorrect case in paths to headers passed using -include
#jira UE-63408
Change 4217622 by Brandon.Schaefer
Linux: Pass a command line argument to crash reporter to show or skip a user agreement popup
#jira none
Change 4312048 by Brandon.Schaefer
Linux: Dont disable ICU by default on Servers
#jira UE-59113
Change 4320173 by Chris.Gagnon
Fix for startup movie streamer on xbox not finishing.
#ROBOMERGE-OWNER: jason.bestimt
#ROBOMERGE-SOURCE: CL 4329255 in //UE4/Main/...
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR)
[CL 4329265 by chris gagnon in Dev-VR 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]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3821754 by Jamie.Dale
[Python] Class property conversion now goes through NativizeClass/PythonizeClass
This allows it to coerce from Python wrapped object types
Change 3833107 by Patrick.Boutot
Added functions to fill an existing DataTable from an existing CSV/JSON file.
Change 3835044 by Aaron.Carlisle
Exposure for asset_import_data (editor property) and it's functions: extract_filenames and get_first_filename.
Change 3835466 by Patrick.Boutot
Hide function from Python that need special compile command to be executed by the VM.
Change 3839237 by Jamie.Dale
Added a way to inspect the full chain of properties that are currently being serialized by an archive
You used to only have access to the leaf-most property, and while you could use its outer chain to inspect other properties within the same object/struct, you couldn't always get the full chain (eg, if you had an object containing a struct).
Change 3839974 by Jamie.Dale
Make sure that SerializedProperty is copied correctly, as SetSerializedPropertyChain may set it to something else
Change 3842311 by Jamie.Dale
Fixing potential null level assert
Change 3842313 by Jamie.Dale
Updated settings editor to handle external properties
Change 3842316 by Jamie.Dale
Allowing a console command to be given to GEditor/GEngine even if there's a player
CL# 1848982 said it was to prevent multiple execution of stat commands, however that no longer seems to be an issue.
Change 3842867 by Jamie.Dale
Added a way to generate diffs from editor transactions
The notifications from these diffs are send to UObject::PostTransacted and FCoreUObjectDelegates::OnObjectTransacted.
These notifications are typically generated when a transaction is "finalized", but can also be generated from "snapshots" (eg, to trap nodes being dragged in the world). They're also generated from normal undo/redo events.
Change 3844428 by Patrick.Boutot
Move the SetMaterial code from the StaticMeshEditor to StaticMesh to be reusable by script.
Change 3845966 by Jamie.Dale
Added support for minimal game RPC worlds
These can be created in the editor and engine and exist to allow RPC communication via Unreal Networking in a way that is sandboxed from any other worlds that may be loaded (like the main game world)
Change 3848844 by Patrick.Boutot
Expose EComponentMobility to blueprint.
Change 3854616 by Patrick.Boutot
Add Custom way time step the engine loop. Will be used by the Synchronization of media for enterprise.
Change 3856650 by Jamie.Dale
Fixed a bug where transaction finalization could miss changes since the last snapshot
Change 3864951 by Patrick.Boutot
Fix ghost asset in Content Browser when an asset is added and renamed before the RecentlyAddedAssets list had a chance to be processed.
Change 3867158 by JeanMichel.Dignard
UBT
- Added the ability for dll programs to export symbols.
#jira UEENT-541
Change 3872342 by Jamie.Dale
Merging static analysis fixes from 4.19
Change 3879305 by Jamie.Dale
Improved the processing of py files from exec commands
The old logic used to just test if the entire command was a .py file. The new logic extracts out the first token and sees if that's a .py file, and if it is, treats the remaining data as extra arguments.
Change 3879306 by Jamie.Dale
Added a minimal commandlet for invoking Python scripts
Change 3881631 by Jamie.Dale
Added basic RTTI to Python meta-data types
Change 3885384 by Jamie.Dale
[Python] Prevent glue code using reserved names
Change 3888957 by Patrick.Boutot
In MediaPlayer, only create a PlayerFacade & Playlist when it's not a ClassDefaultObject.
The MediaPlayerFacade is a MediaTickable. That trigger the tick thread to be awake even if there is no Media playing.
Change 3888961 by Patrick.Boutot
Fix FInterval::IsValid return type.
Change 3888980 by Patrick.Boutot
Modification to Media and MediaAsset to support MediaSmith. The TInterval<int64> will be changed into TTinterval<FTimespan> UEENT-947. MediaSampleQueue's critical section will be change into an atomic operation UEENT-948.
Change 3889165 by Patrick.Boutot
Fix build. Missing include for Timespan. Introduce with CL 3888980.
Change 3889261 by Jamie.Dale
[Python] Fixing some more name conflicts in generated code
Change 3889504 by Darren.Pegg
Add option to change PreferredPixelFormat
Change 3891193 by Patrick.Boutot
Fix build. Missing include for Interval. Introduce with CL 3888980.
Change 3897108 by Patrick.Boutot
TTinterval use it own traits. Create a Interval traits for Timespan.
#jira UEENT-947
Change 3899669 by Jamie.Dale
Fixed Functions sometimes being exposed to Python as if they were Structs
Change 3900692 by Jamie.Dale
Removed some boilerplate associated with wrapping a basic type to Python
You can now derive from TPyWrapperBasic to wrap a type that is simply a value copied into Python (see FPyWrapperName and FPyWrapperText for an example)
Change 3901066 by conan.reis
UE4 editor script bindings (Cobra) and helper functions for version control
- exposed SourceControl class with common source control methods and associated SourceControlState structure
- commands have smart file strings that can convert from any of fully qualified path, relative path, long package name, asset path or export text path (often stored on clipboard)
- commands store any errors in a shared error text object which is optionally printed to the error log
- renamed some calls across the UE4 codebase to USourceControlHelpers::CheckOutOrAddFile() from USourceControlHelpers::CheckOutFile()
- included Python test script for source control commands including that auto-creates test files as needed and passes various types of files to test as command line arguments. Any unexpected results displays error messages.
Change 3901388 by Jamie.Dale
Minimal Slate hooks for Python
Change 3901456 by Jamie.Dale
Added missing file
Change 3901549 by Jamie.Dale
Removing some more Windows defines that were causing build issues
Change 3904518 by conan.reis
Source Control
- ensured that "check if modified" flag is set whenver getting source control state in USourceControlHelpers::QueryFileState() which was needed when using Perforce source control provider
Change 3905612 by Francis.Hurteau
Optimize RemoveDuplicates somewhat using a TSet
#jira UEENT-217
Change 3912626 by Jamie.Dale
Fixed ShouldExcludeDerivedClasses option not working
RecursiveClassesExclusionSet requires a base ClassNames entry to operate on when filtering.
Change 3917739 by Jamie.Dale
Output Log suggestions list is now clamped to the work area width of the monitor that hosts the widget
Change 3917744 by Jamie.Dale
Changed generated code to reference the UProperty and UFunction directly, rather than constantly look them up by name
Names were originally used because UHT couldn't access the objects when it registered the glue code, but now that we generate at runtime via reflection, we already have the relevant objects available, and caching them the glue structs helps performance at both generation time and runtime.
Change 3918832 by Jamie.Dale
Removed field iteration from Python function calls
We now cache the input and output parameters for all function calls (methods, get/set, and delegates) and use this rather than iterate the struct fields.
Change 3920648 by Patrick.Boutot
Remove the bottom right part of the windows border of the grabbed frame when in the editor. Tested in the standalone, windowed and full screen.
Add option to request a FlushOnDraw on the viewport. Flushing in SDI output flow decreases the performance by ~10ms. SDI output is synchronized and the engine tick follows that synchronization.
Change 3921396 by Jamie.Dale
Split up the generated type data to correspond to the type being wrapped
A lot of types can just use the minimal set, but classes and structs have some extra data.
Change 3921619 by conan.reis
- add delegate to FSourceControlWindows::ChoosePackagesToCheckin() that gives info for result, result description, files added, files checked in and flag indicating whether files were checked out again.
- also added result info to FSourceControlWindows::PromptForCheckin()
#jira UE-55255
Change 3921624 by conan.reis
Removed Source Control common files from pre compiled header
- main changes are in UnrealEdPrivatePCH.h, UnrealEdSharedPCH.h, SouceControlWindows.h and the added SouceControlWindows.cpp
- remaining files have includes changed to accomodate
Change 3921958 by conan.reis
Fix attempt for incude file dependency needed by some build configurations (likely PCH disabled) caused by CL3921619
Change 3922740 by conan.reis
Included SourceControlOperations.h and SourceControlHelpers.h back in ISourceControlProvider.h though it does not need them since other files that were including ISourceControlProvider.h have come to expect their inclusion.
They were previously removed in CL3921624
Change 3923375 by Jamie.Dale
Added optimized FString <-> icu::UnicodeString conversion for platforms using UTF-16 native strings
Change 3926547 by Jamie.Dale
Added support for struct method "hoisting"
This allows you to tag a helper function that takes a struct as its first argument with the ScriptMethod meta-data (optionally providing a new name) to "hoist" that helper function to be a method of the struct it operates on when wrapped for Python.
Change 3927050 by conan.reis
Source control - ensured that ISourceControlProvider::Execute(FConnect, EConcurrency, FSourceControlOperationComplete) delegate is called on initial connection even if it fails immediately. Modified Perforce, Git and Subversion source control providers
#JIRA UE-55256
Change 3929268 by conan.reis
- fixed case in Perforce source control code where the server available flag was set even when the server was not successfully connected
- removed Perforce error message about file folders outside of the workspace client mappings
- clarified comments for ISourceControlProvider::IsEnabled() and ISourceControlModule::IsEnabled()
#JIRA UE-55254
Change 3931024 by Rex.Hill
Expose FBX and Texture import to python
Change 3931273 by Rex.Hill
Hide re-import slate notification pop-up during python automated asset import
Change 3931368 by Jamie.Dale
Stopped bools coercing to numeric types in Python nativization
Change 3931374 by Jamie.Dale
Added support for struct math operator "hoisting"
This allows you to tag a helper function that takes a struct as its first argument with the ScriptMathOp meta-data (providing a potentially semi-colon separated list of operators to map to) to "hoist" that helper function to be a math operator of the struct it operates on when wrapped for Python.
Change 3932586 by Rex.Hill
Removed file read into unused memory buffer during Fbx import
Change 3934308 by Jamie.Dale
Added a public interface for the Python plugin
Very basic, just lets you query if Python is compiled in, and lets you execute Python commands like you would via the Output Log.
Change 3935088 by conan.reis
- Added info/warning and error message storage to all the source control operation structures so additional information can be made available.
- Added ISourceControlOperation::GetResultInfo() which returns the modified control structures (mentioned above) with appended info/warning messages and error messages and implemented its use in all source control operations in Perforce, Git and Subversion.
#JIRA UE-55257
Change 3936668 by Rex.Hill
#jira UE-55985
Avoid re-allocation of memory buffer holding file bytes during asset import
Change 3940596 by Rex.Hill
#jira UE-55989 Optimize skeletal mesh import performance scaling
Overlapping vertex check was O (N^2)
100k vertex mesh took ~15 seconds to perform overlap step now takes 0.023 seconds
Change 3942629 by Rex.Hill
#jira UE-55995 Read fbx file only once during import
Fixes a memory leak of FbxScene and reduces wait time during import.
Change 3942884 by Rex.Hill
Python asset import can now customize destination asset name
Change 3946278 by Jamie.Dale
Added stricter conversion for math operator arguments
PyConversion now returns FPyConversionResult rather than bool, which will tell you not only whether a conversion succeeded or failed, but also whether type coercion was applied during the conversion.
This allows the operator stack evaluation to run a first pass looking for an exact argument match, before falling back to a coerced match if available. This allows operators to apply correctly to coerced types (eg, int vs float overloads).
Change 3948455 by Jamie.Dale
Added generic Tick function to FPythonScriptPlugin
This can also handle init logic for after the engine is fully initialized
Change 3948888 by Jamie.Dale
Added settings for the Python plugin
You can now define start-up scripts to execute once the engine is initialized, additional system paths for Python, and whether you want to enable developer mode (which will enable things like deprecation warnings).
Change 3948982 by Jamie.Dale
Fixed Python 3 build error caused by CObject being removed in Python 3.2
Change 3949614 by Francis.Hurteau
Create a camera cut track from the camera switcher camera index animation curve when importing a fbx in sequencer
#jira UEENT-1053
Change 3950829 by Rex.Hill
Update error message to be more specific when ENGINE_API keyword is found before 'static' keyword for a UFUNCTION
Change 3953452 by Jamie.Dale
Fixed some dependencies
Change 3953645 by Jamie.Dale
Fixed Python parameter packing treating bool output paramers as potential return values
void GetState(bool& OutState) would have previously triggered the code for packing output for a function that returns a bool.
Change 3953850 by Jamie.Dale
Fixed doc string generation for a function with multiple output paramters and no return value
Change 3954279 by Jamie.Dale
Initial support for exposing deprecated properties and functions to Python
This handles properties and functions that are directly deprecated. We still need to handle the cases where they're renamed and a redirector is left.
Change 3954922 by Rex.Hill
Expose UnloadPackages to python
Change 3955209 by Jamie.Dale
Initial support for exposing deprecated classes to Python
Change 3955248 by Jamie.Dale
Added a way to load Unreal modules via Python
unreal.load_module("modulename")
Change 3955561 by Rex.Hill
Expose asset export to python
Change 3956068 by Rex.Hill
Linux compile fix.
Change 3960449 by Rex.Hill
Fix automated test using bCombineMeshes
Change 3960495 by Patrick.Boutot
Add a temporary menu to show the MetaData of an asset.
The menu will need to be updated to have a look and feel of the Detail View and support edition at one point.
Change 3961599 by Rex.Hill
Reduced peak memory during import of meshes related to duplicate vertex tracking
Change 3962104 by Rex.Hill
Disable import mesh overlapping corners memory optimization to because it can change uv generation
Change 3962507 by Rex.Hill
Fix uv generation
Change 3965285 by Rex.Hill
Add support for FBX export as ASCII
#jira UE-56465
Change 3965287 by Rex.Hill
Forgotten file, fbx export as ascii
Change 3966772 by Simon.Tourangeau
Fix MaterialExpressionFunctions for ExternalTexture support
Change 3967014 by Jamie.Dale
Added a way to get the CDO in Python
Wrapped objects now have a get_default_object class method
Change 3967151 by Jamie.Dale
Added stats to track Python generation time
Change 3968006 by Simon.Therriault
Media Samples
- Removed Locks and Min/Max SampleTime from queues
- Added methods to fetch NextSampleTime and SampleCount in queues
- Added MediaSource base class for players that want to be time synchronized
#jira UEENT-948
Change 3969119 by Patrick.Boutot
Add delay functionnality to MediaPlayer to delay the frame by some time. It will allow more than one player to be start at the same time, played at the same frame but offset in relation to each other.
[CL 3972277 by Simon Tourangeau in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3805828 by Gil.Gribb
UE4 - Fixed a bug in the lock free stalling task queue and adjusted a comment. The code is not current used, so this is not actually change the way the code works.
Change 3806784 by Ben.Marsh
UAT: Remove code to compile UBT when using UE4Build. It should already be compiled as a dependency of UAT.
Change 3807549 by Graeme.Thornton
Add a cook timer around VerifyCanCookPackage. A licensee reports this taking a lot of time so it'll be good to account for it.
Change 3807727 by Graeme.Thornton
Unhide the text asset format experimental editor option
Change 3807746 by Josh.Engebretson
Remove WER from iOS platform
Change 3807928 by Robert.Manuszewski
When async loading, GC Clusters will be created after packages have been processed to avoid situations where some of the objects that are being added to a cluster haven't been fully loaded yet
Change 3808221 by Steve.Robb
GitHub #4307 - Made GetModulePtr() thread safe by not using GetModule()
^ I'm not convinced by how much thread-safer this is really, but it's tidier anyway.
Change 3809233 by Graeme.Thornton
TBA: Misc changes to text asset commandlet
- Rename mode to "loadsave"
- Add -outputFormat option which can be assigned "text" or "binary"
- When saving binary, use a differentiated filename so that source assets aren't overwritten
Change 3809518 by Ben.Marsh
Remove the outdated UnrealSync automation script.
Change 3809643 by Steve.Robb
GitHub #4277 : fix bug; FMath::FormatIntToHumanReadable 3rd comma and negative value
#jira UE-53037
Change 3809862 by Steve.Robb
GitHub #3342 : [FRotator.h] Fix to DecompressAxisFromByte to be more efficient and reflect its intent accurately
#jira UE-42593
Change 3811190 by Graeme.Thornton
Add support for writing specific log channels to their own files
Change 3811197 by Graeme.Thornton
Minor updates to output formatting and timing for the text asset commandlet
Change 3811257 by Robert.Manuszewski
Cluster creation will now be time-sliced
Change 3811565 by Steve.Robb
Define out non-monolithic module functions.
Change 3812561 by Steve.Robb
GitHub #3886 : Enable Brace-Initialization for Declaring Variables
Incorrect semi-colon search removed after discussion with author.
Test added.
#jira UE-48242
Change 3812864 by Steve.Robb
Removal of some unproven code which was supposed to fix hot reloading BP class functions in plugins.
See: https://udn.unrealengine.com/questions/376978/aitask-blueprint-nodes-disappear-when-their-module.html
#jira UE-53089
Change 3820358 by Ben.Marsh
PR #4358: Incredibuild use ShowAgent by default (Contributed by projectgheist)
Change 3822594 by Ben.Marsh
UAT: Improvements to log file handling.
- Always create log files in the final location, rather than writing to a temp directory and copying in later.
- Now supports -Verbose and -VeryVerbose for increasing log verbosity, rather than -Verbose=XXX.
- Keep a backlog of log output before the log system is initialized, and flush it to the log file once it is.
- Allow buildmachines to specify the uebp_FinalLogFolder environment variable, which is used to form paths for display. When build machines copy log files elsewhere after UAT finishes (eg. a network share), this allows error messages to display the right location.
Change 3823695 by Ben.Marsh
UGS: Fix issue where precompiled binaries would not be shown as available for a change until scrolling the last submitted code change into the buffer (other symptoms, like de-focussing the main window would cause it to go back to an unavailable state, since the changes buffer was shrunk).
Now always queries changes up to the last change for which zipped binaries are available.
Change 3823845 by Ben.Marsh
UBT: Exclude C# projects for unsupported platforms when generating project files.
Change 3824180 by Ben.Marsh
UGS: Add an option to show changes by build machines, and move the "only show reviewed" option in there too (Options > Show Changes).
#jira
Change 3825777 by Steve.Robb
Fix to return value of StringToBytes.
Change 3825810 by Ben.Marsh
UBT: Reduce length of include paths for MSVC toolchain.
Change 3825822 by Robert.Manuszewski
Optimized PIE lazy pointer fixup. Should be up to 8x faster now.
Change 3826734 by Ben.Marsh
Remove code to disable TextureFormatAndroid on Linux. It seems to be an editor dependency.
Change 3827730 by Steve.Robb
Try to avoid decltype(auto) if it's not supported.
See: https://udn.unrealengine.com/questions/395644/build-417-with-c11-on-linux-ttuple-errors.html
Change 3827745 by Steve.Robb
Initializer list support for TMap.
Change 3827770 by Steve.Robb
GitHub #4399 : Added a CONSTEXPR qualifiers to FVariant::GetType()
#jira UE-53813
Change 3829189 by Ben.Marsh
UBT: Now always writes a minimal log file. By default, just contains the regular console output and any reasons why actions are outdated and needed to be executed. UAT directs child UBT instances to output logs into its own log folder, so that build machines can save them off.
Change 3830444 by Steve.Robb
BuildVersion and ModuleManifest moved to Core, and parsing of these files reimplemented to avoid a JSON library.
This should be revisited when Core has its own JSON library.
Change 3830718 by Ben.Marsh
Fix incorrect group name being returned by FStatNameAndInfo::GetGroupName() for stat groups.
The editor populates the viewport stats list by calling this for every registered stat and stat group (via FLevelViewportCommands::HandleNewStatGroup). The menu entry attempts to show the stat name with STAT_XXX stripped from the start as the menu item label, with the free-form text description as a tooltip.
For stat groups, the it would previously just return the stat group name as "Groups" (due to the raw naming convention of "//Groups//STATGROUP_Foo//..."). Since this didn't match the expected naming convention in FLevelViewportCommands::HandleNewStat (ie. STAT_XXX or STATGROUP_XXX), it would fail to add it.
When the first actual stat belonging to that group is added, it would add a menu entry for the group based on that, but the stat description no longer makes sense as a tooltip for the group. As a result, all the editor tooltips were junk.
#jira UE-53845
Change 3831064 by Ben.Marsh
Fix log file contention when spawning UBT recursively.
Change 3832654 by Ben.Marsh
UGS: Fix error panel not being selected when opened, and weird alignment/color issues on it.
Change 3832680 by Ben.Marsh
UGS: Fix failing to detect workspace if synced to a different stream. Seems to be a regression caused by recent P4D upgrade.
Change 3832695 by Ben.Marsh
UGS: Invert the options in the 'Show Changes' submenu for simplicity.
Change 3833528 by Ben.Marsh
UAT: Script to rewrite source files with public include paths relative to the 'Public' folder. Usage is: RebasePublicIncludePaths -UpdateDir=<Dir> [-Project=<Dir>] [-Write].
Change 3833543 by Ben.Marsh
UBT: Allow targets to opt-out of having public include paths added for every dependent module. This reduces the command line length when building a target, which has recently become a problem with larger games (due to Microsoft's compiler embedding the command line into each object file, with a maximum length of 64kb). All engine modules are compiled with this enabled; games may opt into it by setting bLegacyPublicIncludePaths = false; from their .target.cs, as may individual modules.
Change 3834354 by Robert.Manuszewski
Archetype pointer will now be cached to avoid locking the object tables when acquiring its info. It should also be faster this way regardless of any locks.
#jira UE-52035
Change 3834400 by Robert.Manuszewski
Fixing crash on exit caused by cached archetypes not being cleaned up before static exit cleanup.
#jira UE-52035
Change 3834947 by Steve.Robb
USE_FORMAT_STRING_TYPE_CHECKING removed from FMsg::Logf and FMsg::Logf_Internal.
Change 3835004 by Ben.Marsh
Fix code that relies on dubious behavior of requiring referenced "include path only" modules having their _API macros set to be empty, even if the module is actually implemented in a separate DLL.
Change 3835340 by Ben.Marsh
Fix errors making installed build from directories with spaces in the name.
Change 3835972 by Ben.Marsh
UBT: Improved diagnostic message for targets which don't need a version file.
Change 3836019 by Ben.Marsh
UBT: Fix warnings caused by defining linkage macros for third party libraries.
Change 3836269 by Ben.Marsh
Fix message box larger than the screen height being created when a large number of modules are incompatible on startup.
Change 3836543 by Ben.Marsh
Enable SoundMod plugin on Linux, since it's already supported through the editor.
Change 3836546 by Ben.Marsh
PR #4412: fix type mismatch (Contributed by nakapon)
Change 3836805 by Ben.Marsh
Fix commandlet to compile marketplace plugins.
Change 3836829 by Ben.Marsh
UBT: Fix ability to precompile plugins from installed engine builds.
Change 3837036 by Ben.Marsh
UBT: Write the previous and new contents of intermediate files to the log if they change. Makes it easier to debug unexpected rebuilds.
Change 3837037 by Ben.Marsh
UBT: Fix engine modules having inconsistent definitions depending on whether modules are only referenced for their include paths vs being linked into a binary (due to different _API macro).
Change 3837040 by Ben.Marsh
UBT: Remove code that initializes members in ModuleRules and TargetRules objects before the constructor is run. This is no longer necessary, now that the backwards-compatible default constructors have been removed.
Change 3837247 by Ben.Marsh
UBT: Remove UELinkerFixups module, now that plugins and precompiled modules do not require hacks to force initialization (since they're linked in as object files).
Encryption and signing keys are now set via macros expanded from the IMPLEMENT_PRIMARY_GAME_MODULE macro, via project-specific macros added in the TargetRules constructor.
Change 3837262 by Ben.Marsh
UBT: Set whether a module is an engine module or not via a default value for the rules assembly. All non-program engine and enterprise modules are created with this flag set to true; program targets and modules are now created from a different assembly that sets it to false. This removes hacks from UEBuildModule needed to adjust behavior for different module types based on the directory containing the module.
Also add a bUseBackwardsCompatibleDefaults flag to the TargetRules class, also initialized to a default value from a setting passed to the RulesAssembly constructor. This controls whether modules created for the target should be configured to allow breaking changes to default settings, and is set to false for all engine targets, and true for all project targets.
Change 3837343 by Ben.Marsh
UBT: Remove the OverrideExecutableFileExtension target property. Change the only current use for this (the MayaLiveLinkPlugin target) to use a post build step to copy the file instead.
Change 3837356 by Ben.Marsh
Fix invalid character encodings.
Change 3837727 by Graeme.Thornton
UnrealPak: KeyGenerator: Only generate prime table when required, not all the time
Change 3837823 by Ben.Marsh
UBT: Output warnings and errors when compiling module rules assembly in a way that allows them to be double-clicked in the Visual Studio output window.
Change 3837831 by Graeme.Thornton
UBT: When parsing crypto settings, always load legacy data first, then allow the new system to override it. Provides the same key backwards compatibility that the editor settings class gives
Change 3837857 by Robert.Manuszewski
PR #4404: Make FGCArrayPool singleton global instead of per-CU (Contributed by mhutch)
Change 3837943 by Robert.Manuszewski
PR #4405: Fix FGarbageCollectionTracer (Contributed by mhutch)
Change 3838451 by Ben.Marsh
UBT: Fix exceptions thrown on a background thread while caching C++ includes not being caught and logged correctly. Now captures exceptions and re-throws on the main thread.
#jira UE-53996
Change 3839519 by Ben.Marsh
UBT: Simplify configuring bPrecompile and bUsePrecompile settings for modules. Each rules assembly can now be configured as installed, which defaults the module rules it creates to use precompiled data.
Change 3843790 by Graeme.Thornton
UnrealPak: Log the size of all encrypted data
Change 3844258 by Ben.Marsh
Fix plugin compile failure when created via new plugin wizard. Passing -plugin on the command line is unnecessary, and is now reserved for packaging external plugins for the marketplace.
Also extend the length of time that the error toast stays visible, and don't delete the plugin on failure.
#jira UE-54157
Change 3845796 by Ben.Marsh
Workaround for slow performance of String.EndsWith() on Mono.
Change 3845823 by Ben.Marsh
Fix case sensitive matching of platform names in -TargetPlatform=X argument to BuildCookRun.
#jira UE-54123
Change 3845901 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+).
(Edigrating 3819174 to Dev-Core)
Change 3846439 by Ben.Marsh
Revert CL 3822742 to always call Process.WaitForExit(). The Android target platform module in the editor spawns ADB.EXE, which inherits the editor's stdout/stderr handles and forks itself. Process.WaitForExit() waits for EOF on those pipes, which never occurs because the forked process never terminates.
Proper fix is probably to have the engine explicitly duplicate stdout/stderr handles for new pipes to output process, but too risky before copying up to Main.
Change 3816608 by Ben.Marsh
UBT: Use DirectoryReference objects for all include paths.
Change 3816954 by Ben.Marsh
UBT: Remove bIncludeDependentLibrariesInLibrary option. This is not widely supported by platform toolchains, and is not used anywhere.
Change 3816986 by Ben.Marsh
UBT: Remove UEBuildBinaryConfig; UEBuildBinary objects are now just created directly.
Change 3816991 by Ben.Marsh
UBT: Deprecate PlatformSpecificDynamicallyLoadedModules. We no longer have any special behavior for these modules.
Change 3823090 by Ben.Marsh
UAT: Improve logging for child UAT instances.
- Calling RunUAT now requires an identifier for prefixing into the parent log, which is also used to determine the name of the log folder.
- Stdout is no longer written to its own output file, since it's written to the parent stdout, the parent log file, and the child log file anyway.
- Log folders for child UAT instances are left intact, rather than being copied to the parent folder. The derived names for the copied names were confusing and hard to read.
- Output from UAT is no longer returned as a string. It should not be parsed anyway (but may be huge!). ProcessResult now supports running without capturing output.
Change 3826082 by Ben.Marsh
UBT: Add a check to make sure that all modules that are precompiled are correctly marked to enable it, even if they are part of the build target.
Change 3827025 by Ben.Marsh
UBT: Move the compile output directory into a property on the module, and explicitly pass it to the toolchain when compiling.
Change 3829927 by James.Hopkin
Made HTTP interface const correct
Change 3833533 by Ben.Marsh
Rewrite engine source files to base include paths relative to the "Public" directory. This allows reducing the number of public include paths that have to be added for engine modules.
Change 3835826 by Ben.Marsh
UBT: Precompiled targets now generate a separate manifest for each precompiled module, rather than adding object files to a library. This fixes issues where object files from static libraries would not be linked into a target if a symbol in them was not referenced.
Change 3835969 by Ben.Marsh
UBT: Fix cases where text is being written directly to the console rather than via logging functions.
Change 3837777 by Steve.Robb
Format string type checking added to FOutputDevice::Logf.
Fixes for those.
Change 3838569 by Steve.Robb
Algo moved up a folder.
[CL 3847482 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3623004 by Ben.Marsh
Fix RemoteExecutor not taking the remote machine specs into account.
Change 3623172 by Ben.Marsh
UGS: Fix "More Info..." button not using P4 server override.
Change 3628820 by Ben.Marsh
PR #3979: Get working directory from task element, not tool node (Contributed by nullbus)
Change 3630424 by Graeme.Thornton
Make the AES key parameter const in FAES::EncryptData()
Change 3632786 by Steve.Robb
FString constructor fixed to not take an ignored void* parameter, which can be misleading.
Change 3639534 by Ben.Marsh
Remove old P4.NET library. Doesn't seem to be used by anything.
Change 3640536 by Steve.Robb
GitHub #4007 : Delete unnecessary specialization of MakeArrayView
#jira UE-49617
Change 3641155 by Gil.Gribb
UE4 - Speculative fix for problem with summary reading in FAsyncArchive2.
Change 3643932 by Ben.Marsh
Add an example build script for updating the version number, then compiling and staging the editor and tools to an output directory. Optionally submits at the end (requires -Submit argument).
Change 3644825 by Ben.Marsh
Use VSWHERE to find the location of MsBuild.exe, if available.
https://github.com/EpicGames/UnrealEngine/pull/3879#issuecomment-329688645
Change 3647395 by Ben.Marsh
Allow compiling of monolithic binaries from BuildEditorAndTools.xml, using the -set:GameTarget=FooGame -set:TargetPlatforms=Win32;Win64 options.
Change 3650300 by Ben.Marsh
UAT: Remove code that deletes cooked data on a failed cook. The engine should write packages out transactionally now (by writing to a temporary file and moving into place), and deleting the cooked data just prevents post-mortem analysis.
Change 3650856 by Robert.Manuszewski
Adding checks to prevent FlushAsyncLoading and LoadObject/LoadPackage from being called from any threads other than the game thread
Change 3651022 by Gil.Gribb
UE4 - Possible fix for mysterious ensure indicating problematic recursion in the pak precacher.
Change 3658331 by Steve.Robb
Fix for the parsing of large integer values.
Change 3661958 by Gil.Gribb
UE4 - Fixed rare hang in task graph.
Change 3664021 by Robert.Manuszewski
Fix for a potential GC crash caused by stale pointer in AnimInstanceProxy
See https://udn.unrealengine.com/questions/392432/gc-issue-uaniminstancemontageinstances-empty-but-u.html
Change 3664254 by Steve.Robb
Use ANSI allocator when thread sanitizer is enabled. This allows the generation of more accurate and meaningful reports.
Change 3664436 by Steve.Robb
Use TUniquePtr instead of a thread-unsafe TSharedPtr to move data between threads.
Change 3666461 by Graeme.Thornton
Improvements to signing/encryption key embedding and runtime access
- Changed method of embedding key into the executable to make it more secure
- Added FAESKey class to wrap a 32 byte key
Change 3666462 by Graeme.Thornton
Cut ShooterGame AES key down to 32 characters
Change 3677560 by Ben.Marsh
PR #4074: UBT: Add include and library-related fields to module JSON output (Contributed by adamrehn)
Change 3683534 by Steve.Robb
Refactoring of enum/struct lookup during hot reload.
Change 3683754 by Steve.Robb
Alignment fixes to allow int64 on 32-bit platforms
Support for integral types in IsAligned.
Static asserts so that alignment functions will no longer be called with non-intergal, non-pointer types.
Some fixes to existing code.
Change 3686670 by Steve.Robb
Fix for thread-unsafe modification of static array in FString::ParseIntoArrayWS.
Change 3687540 by Ben.Marsh
Fix all UBT/UAT output going to stderr rather than stdout.
Change 3688931 by Gil.Gribb
UE4 - Critical fix for a rare race condition in the pak file async IO layer.
Change 3690000 by Graeme.Thornton
Manual copy of 4.18 CL 3687869
Make UBT include the destination INI file for a given hierarchy if it exists
Renamed VSCode enum value to VisualStudioCode, so it matches the source accessor plugin name
Change 3690030 by Graeme.Thornton
VSCode fixes
- Source Code Accessor plugin changes. Add new interface method to open a solution at a given path
- GameProjectUtils now uses the source navigation API to open solutions rather than hardcoding which solution file types to look for
- Various fixes for vscode project file generation
#jira UE-50554
Change 3690885 by Steve.Robb
Atomic reads in FReferenceControllerOps<ESPMode::ThreadSafe>.
Change 3691052 by Steve.Robb
Free stats thread on shutdown.
Change 3695138 by Steve.Robb
AsConst helper function added.
Change 3696627 by James.Hopkin
Changed player controller iterator typedefs to use TWeakObjectPtr rather than the deprecated TAutoWeakObjectPtr
(review-3606695)
Change 3697099 by Steve.Robb
GitHub #4105 : Removed redundant class access modifier
Change 3697154 by Steve.Robb
Removal of deprecated functions in delegates.
Mutable lambdas to can now be bound to delegates.
Change 3697180 by Steve.Robb
GitHub #4115 : Incorrect CPPMacroType used for USoftClassProperty
Change 3697239 by Steve.Robb
Allow TArray::Insert to take an array with any allocator type.
Change 3697269 by Steve.Robb
RelocateConstructItems instead of MoveConstructItems.
Change 3697558 by Steve.Robb
New _GetRef functions for TArray, which return a reference to the newly-added element.
Unit tests for these functions.
Change 3699776 by Steve.Robb
TSAN warning suppression around IAsyncReadRequest::bCompleteAndCallbackCalled.
Change 3702397 by Steve.Robb
TIsTrivial type trait.
Change 3702569 by Steve.Robb
Allow a TGuardValue to be assigned to a different type from the one being guarded.
Change 3706644 by Robert.Manuszewski
Different stack ingore count for development builds for FArchiveStackTrace
Change 3709272 by Steve.Robb
Removal of redundant UpdateVertices, which causes a race condition on the renderer thread.
Change 3709452 by Robert.Manuszewski
Fixed a bug where with async time limit set to a low value the async loading could hang because the linker would keep reloading the preload dependencies
Change 3709454 by Robert.Manuszewski
Added command line option -NOEDL to disable EDL
Change 3709487 by Steve.Robb
Remove use of PLATFORM_HAS_64BIT_ATOMICS, which is always 1.
Change 3709645 by Ben.Marsh
Fix race condition between multiple instances of UBT trying to write out the XML config cache.
Change 3711193 by Ben.Marsh
Add an editor setting for the shared DDC location to use.
#jira UE-51487
Change 3713811 by Steve.Robb
Update .modules files after a hot reload.
Don't check for directory timestamp changes as a way of detecting new files if hot reloading with a makefile, as this is already done during makefile invalidation checks.
Pass hotreload flags around in UBT instead of relying on global state.
This fixes the hot reload iteration speed regression without also regressing the fix to UE-42205.
#jira UE-51472
Change 3715654 by Steve.Robb
GitHub #4156 : Fixed not compiling template function Algo::UpperBoundBy.
Change 3718782 by Steve.Robb
TSharedPtr, TSharedRef and TWeakPtr assignment are now implemented as copy-and-swap to avoid an invalid smart pointer state being visible to any destructors being called.
Change 3720830 by Steve.Robb
Initial import of TAtomic object wrapper, which guarantees atomic access to an object.
Change 3720881 by Steve.Robb
FCompression ThreadSanitizer data race fixes.
Change 3722640 by Graeme.Thornton
Guard network platform file heartbeat function with the socket critical section. Stop heartbeat from causing a crash when firing during async loading.
#jira UE-51463
Change 3722655 by Steve.Robb
Don't null name table because it's already zeroed at startup.
Some tidy-ups.
Change 3722754 by Steve.Robb
Thread sanitizer fix.
Small typo fix.
Change 3722849 by Graeme.Thornton
Improve "caching file" message in networkplatformfile so it says "Requesting file..." and is only output when we actually request the file from the server
Change 3723081 by Steve.Robb
TAtomic is now aligned to the underlying integer type.
TAtomic will now static assert with a better error message when given an unsupported type.
Define added for the maximum platform-supported atomic type, and used instead of a (wrong) hardcoded number.
Misc renames.
Change 3723270 by Ben.Marsh
Include /d2cgsummary argument when running UBT with -Timing.
Change 3723683 by Ben.Marsh
Do not include documentation in the generated project files by default. Suspect that the 30,000 UDN files that get added to the solution take up memory and degrate performance.
Change 3725422 by Robert.Manuszewski
When serializing compressed archive with multithreaded compression enabled, wait for the oldest async task instead of spinning.
Change 3725735 by Robert.Manuszewski
Making all CheckDefaultSubobjects related functions const
Change 3726167 by Steve.Robb
FMinimalName::IsNone added.
Change 3726458 by Steve.Robb
TAtomic will no longer instantiate for types which are not exactly a size supported by the platform layer.
Change 3726542 by Ben.Marsh
UGS: Always include the project filename in the editor build command. The project may not be in one of the .uprojectdirs paths.
Change 3726595 by Ben.Marsh
Allow building multiple game targets in the example BuildEditorAndTools.xml script.
Change 3726724 by Ben.Marsh
Fix ambiguities in calculating root directory. (GitHub #4172)
Change 3726959 by Ben.Marsh
Make sure that AutomationTool uses the same list of preprocessor definitions when compiling *.target.cs files as UnrealBuildTool does.
Change 3728437 by Steve.Robb
VisitTupleElements now supports invocation of a functor taking arguments from multiple tuples in parallel.
Some improved documentation.
NOTE: This is a backward-incompatible change to VisitTupleElements. Any existing calls will need their arguments swapping.
Change 3732262 by Gil.Gribb
UE4 - Fixed rare hangs in the task graph.
Change 3732755 by Steve.Robb
Stats TSAN fixes.
Optimizations to FCycleCounter::Start() to only read the stat name once.
Change 3735000 by Robert.Manuszewski
Always preload the AssetRegistry module on startup. even if EDL is disabled.
Even without EDL, if the async loading thread is enabled the AssetRegistryModule will otherwise be loaded from the ASL thread and that will assert.
Change 3735292 by Robert.Manuszewski
Made sure component visualizer is removed from VisualizersForSelection when UnregisterComponentVisualizer() is called otherwise it may cause crashes when the engine terminates.
Change 3735332 by Steve.Robb
Refactoring of UDelegateProperty::Identical() to clarify logic.
Fixed UMulticastDelegateProperty::Identical() to compare the bound function names.
PPF_DeltaComparison removed, as it doesn't seem useful.
Change 3737960 by Graeme.Thornton
VSCode - Add launch task for generating project files for the given folder
Change 3738398 by Graeme.Thornton
Make Visual Studio source code accessor's module hotreload handler pass the 'save all files' message to the current accesor, rather than direct to the visual studio accessor
#jira UE-51451
Change 3738405 by Graeme.Thornton
VSCode: Format c/cpp settings strings using comment path formatting function
Change 3738928 by Steve.Robb
Fix for lack of null conditional operators in some older Monos. (replicated from CL# 3729574 in Release-4.18)
#jira UE-51842
Change 3739135 by Ben.Marsh
Fix being unable to package projects in a folder called "Wolf". This is only a restricted folder for Epic's Perforce history.
#jira UE-51855
Change 3739360 by Ben.Marsh
UAT: Fix issue with P4PORT setting not being parsed correctly.
Change 3745959 by James.Hopkin
#core Added ImplicitConv for safe upcasts to a specific required type, e.g. deduced delegate payload types
Change 3746125 by Steve.Robb
FName ThreadSanitizer fixes.
Change 3747274 by Steve.Robb
TSAN fix for FMediaTicker::Stopping.
Change 3747618 by Steve.Robb
ThreadSanitizer data race fix for FShaderCompileThreadRunnableBase::bForceFinish.
Change 3747720 by Steve.Robb
ThreadSanitizer fix for FMessageRouter::Stopping.
Change 3749207 by Graeme.Thornton
First pass of CryptoKeys plugin. Allows creation/editing/cycling of AES/RSA keys.
Change 3749323 by Graeme.Thornton
Fix UAT crash when only -targetplatform is specifiied
Change 3749349 by Steve.Robb
TSAN_SAFE guards around LockFreeList to silence ThreadSanitizer.
Change 3749617 by Steve.Robb
Logf static_assert for formatting string enabled.
Change 3749897 by Steve.Robb
FDebug::LogAssertFailedMessage static assert for formatting string enabled.
Change 3754011 by Steve.Robb
Static asserts that the allocator supports move.
Move-enabled our allocators which don't support move.
Change 3754227 by Ben.Marsh
Fix build command line in generated projects missing a space before the compiler version override.
#jira UE-52226
Change 3754562 by Ben.Marsh
PR #4206: Replace deprecated wsprintf with secure swprintf for Bootstrap executable (Contributed by jessicafalk)
Change 3755616 by Graeme.Thornton
Runtime code for using the new crypto ini files to define signing/encryption keys
#jira UE-46580
Change 3755666 by James.Hopkin
Used ImplicitConv to remove Casts being used for up-casts
#review-3745965
Change 3755671 by Graeme.Thornton
Add log message in unrealpak to say which config file system it is using for crypto keys
Change 3755672 by Graeme.Thornton
Updating ShooterGame with new CryptoKeys based security setup
Change 3756778 by Ben.Marsh
Add support for running multiple jobs simultaneously on a single builder.
When running job or agent setup, the --num-slots=X parameter defines the number of steps that can run simultaneously (EC procedures pass in the resource step limit). A lock file is created under the workspace root (D:\Build) and a reservation file is created for the first slot that can be allocated (slot-1, slot-2, etc...). The slot number is used to define the workspace name that should be used.
Change 3758498 by Ben.Marsh
Re-throw exceptions when a file cannot be deleted when cleaning a target.
Change 3758921 by Steve.Robb
ThreadSanitizer fix to FThreadSafeStaticStatBase::HighPerformanceEnable to do a relaxed atomic load on access.
DoSetup() now returns the newly-allocated pointer, instead of reloading it from memory.
Change 3760599 by Graeme.Thornton
Added missing epic header comment to some new source files
Change 3760642 by Steve.Robb
ThreadSanitizer fix for concurrent access to GMainThreadBlockedOnRenderThread.
Change 3760669 by Graeme.Thornton
Improvement to OpenSSL based signing key generator. Generate a full RSA key then steal the primes from it, rather than generating the primes manually.
Added a test mode to the cryptokeys commandlet to test signing key generation
Change 3760711 by Steve.Robb
ThreadSanitizer fixes to GIsRenderingThreadSuspended.
Change 3760739 by Steve.Robb
ThreadSanitizer fix for FQueuedThread::TimeToDie.
Change 3760763 by Steve.Robb
ThreadSanitizer fix for GRunRenderingThreadHeartbeat.
Removal of unnecessary/dangerous initializer for GMainThreadBlockedOnRenderThread.
Change 3760793 by Steve.Robb
Some simple refactoring to remove some volatile reads of BufferStartPos and BufferEndPos.
Change 3760817 by Steve.Robb
ThreadSanitizer fixes for FAsyncWriter::BufferStartPos and BufferEndPos.
Change 3761331 by Josh.Engebretson
UnrealBuildTool enforcement of Development and Debug configurations in existing .csproj
#jira UE-52416
Change 3761521 by Steve.Robb
ThreadSanitizer fixes for FEvent::EventStartCycles and EventUniqueId.
Change 3763117 by Graeme.Thornton
PR #3722: Optimising FPaths::IsRelative() (Contributed by jovisgCL)
Change 3763358 by Graeme.Thornton
Ensure that all branches within FGenericPlatformMisc::RootDir() produce an absolute path with no duplicate slashes
Remove relative->abs conversion of root dir from FPaths::MakeStandardFilename(), now that we know RootDir() always returns an absolute path
Derived from the content of this PR:
PR #3742: Treat RootDirectory the same way as Standardized (Contributed by TroutZhang)
Change 3764058 by Graeme.Thornton
Generate a .code-workspace file for the current workspace. Allows foreign projects to "mount" the UE4 folder so that the engine tasks are avaible, and all engine source is visible to VSCode for searching purposes
#jira UE-52359
Change 3764705 by Steve.Robb
Better handling of whitespace in ImportText_Internal() for set and map properties.
Containers are now emptied upon import failure, to avoid leaving bad container states (unhashed, partial data).
Fix to USetProperty's temp buffer size to avoid buffer overruns.
Duplicate map keys are now skipped during import, same as USetProperty's behavior.
Change 3764731 by Steve.Robb
Don't re-run UHT if only source files have changed in the same folder as headers. This was already done for hot reload, but there's no reason why it should be limited to that.
Change 3765923 by Graeme.Thornton
VSCode - "taskName" -> "label" for C# build tasks
Change 3766018 by Steve.Robb
constexpr constructor for TAtomic.
Change 3766037 by Steve.Robb
Misc tidyings in HotReload.cpp.
Change 3766046 by Steve.Robb
ThreadSanitizer fixes to ENamedThreads::RenderThread and ENamedThreads::ENamedThreads_Local.
Change 3766288 by Steve.Robb
Improved efficiency of adding/removing elements to UGCObjectReferencer::ReferencedObjects.
Change 3766374 by Josh.Engebretson
Fix issue with ini quoted value comparison
#jira UE-52066
Change 3766532 by Josh.Engebretson
PR #3680: Added NetSerialize to FDateTime fixing UE-22533 (Contributed by druhasu)
#jira UE-46156
Change 3766740 by Steve.Robb
TMultiMap::Append added.
Change 3767523 by Steve.Robb
ThreadSanitizer fix for UE4Delegates_Private::GNextID.
Change 3767601 by Steve.Robb
ThreadSanitizer fix for FStats::GameThreadStatsFrame.
Change 3770567 by Ben.Marsh
Add a FAnnotatedArchiveFormatter interface which allows querying structural type information that may not be in binary archives.
Change 3770826 by Ben.Marsh
Move StructuredArchive implementation into Core, so primitive types can implement serialization overloads for it.
Change 3770875 by Steve.Robb
Redundant UScriptStruct::PostLoad removed, which was causing a race condition in async loading. This was re-establishing the CppStructOps, but that is unnecessary because native classes cannot change as a result of a load - only BP structs can, and they don't have CppStructOps.
Change 3772167 by Ben.Marsh
Add a context-free binary formatter that can serialize tagged data. This functions as a lower-overhead binary intermediate format for JSON data.
Change 3772248 by Steve.Robb
ThreadSanitizer fixes to FMalloc call counters.
Change 3772383 by Ben.Marsh
Separate archive metadata from FArchive into FArchiveContext, so it can be safely exposed to consumers of FStructuredArchive.
Change 3772906 by Graeme.Thornton
TextAssetCommandlet - Utility commandlet for testing/converting to text asset format
Change 3772932 by Ben.Marsh
Fix "String:" prefix not being stripped from escaped string values.
Change 3772942 by Graeme.Thornton
Add experimental setting to enable in-editor text asset format functionality
Add "export to text" option into the content browser asset actions context menu
Change 3772955 by Ben.Marsh
Add a new "stream" compound type to FStructuredArchive, which allows serializing a sequence of elements similarly to an array, but without serializing an explicit size. Allows passing through data to an underlying binary archive without breaking compatibility.
Change 3772963 by Ben.Marsh
Allow querying record keys and stream lengths from annotated archive formatters, since these archives have markup for field boundaries.
Change 3773010 by Graeme.Thornton
Added CORE_API to FArchiveFromStructuredArchive
Gave text asset format experimental option a slightly less random tooltip comment
Change 3773057 by Ben.Marsh
Add a flag to FArchive to determine whether the archive is text (IsTextFormat()).
Add support for seeking within FArchiveFromStructuredArchive. For text formats, data is serialized to an in-memory buffer, with names and objects serialized as indices into an array. For non-text formats, data is serialized directly to the underlying archive.
Also rename FStructuredArchive::TryEnterSlot() to TryEnterField().
Change 3773118 by Steve.Robb
TSignedIntType and TUnsignedIntType type traits for getting an integer type of a given size.
Change 3773122 by Steve.Robb
TAtomic fixes for pointer arithmetic.
TSignedIntType used instead of reimplementing its own trait.
Change 3773123 by Steve.Robb
Unit tests for TAtomic.
Change 3773138 by Steve.Robb
Run numeric tests on integer types instead of basic tests.
Fix for compiler warnings when subtracting from unsigned atomics.
Change 3773166 by Steve.Robb
Refactoring of arithmetic operations into its own class, then basing the pointer and integral versions on that.
Change 3774216 by Gil.Gribb
UE4 - Fix rare crash in the pak precacher immediately after unmounting a pak file.
Change 3774426 by Ben.Marsh
Copy all C# tools to a staging directory before compiling them. This prevents access violations when compiling tools like iPhonePackager that reference DotNETCommon, and ensures we strip NotForLicensees folders out of them all.
See: https://answers.unrealengine.com/questions/726010/418-will-not-build-from-source.html
Change 3774658 by Ben.Marsh
Improve error reporting while generating intellisense for project files. Include the name of the target being compiled, and allow project file generation to continue without it.
Change 3775141 by Ben.Marsh
Always output HTML5 diagnostics at "information" verbosity, to avoid every line being prefixed with "WARNING:" and screwing up the EC postprocessor.
Change 3775459 by Ben.Marsh
Removing .NET Framework Perforce DLL as runtime dependency of engine third party library. The actual library is linked statically.
Change 3775522 by Ben.Marsh
UGS: Treat .uproject and .uplugin files as code changes.
Change 3775597 by Ben.Marsh
Fix post-build steps for plugins not being executed.
#jira UE-52754
Change 3777895 by Graeme.Thornton
StructuredArchiveFromArchive - An adapter class for wrapping an existing FArchive with a structured archive
Change 3777931 by Graeme.Thornton
Refactored FArchiveUObjects serialization code into some static helpers
Added FArchiveUObjectFromStructuredArchive which allows the adaption of a structured archive into an FArchive that supports the extra UObect serialization functions for weak/soft pointers
Change 3777942 by Graeme.Thornton
Added missing CORE_API to FStructuredArchive::FStream
Added FStructuredArchive::FSlot insertion operator for char
Added specialization of TArray<uint8> serializer for structured archives which serializes the contents as one value
Change 3778084 by Graeme.Thornton
Adding FPackageName::GetTextAssetPackageExtension() to access the file extension we use for text asset files
Change 3778096 by Graeme.Thornton
Add a constructor to FArchiveUObjectFromStructuredArchive that takes a slot and passes it to the base class
Change 3778389 by Josh.Engebretson
Fix an optimization issue with CPU benchmarking
Add better support for debugging/testing local rocket builds
UDN Link: https://udn.unrealengine.com/questions/400909/command-scalability-auto-gives-inaccurate-cpu-benc.html
#jira UE-52192
Change 3778701 by Josh.Engebretson
Ensure plugin content folders are mounted consistently. Fixes TryConvertFilenameToLongPackageName failing to work on plugin assets
UDN Link: https://udn.unrealengine.com/questions/276386/tryconvertfilenametolongpackagename-fails-for-plug.html
#jira UE-40317
Change 3778832 by Chad.Garyet
Adding enterprise path support for PCB's for UGS
Change 3780258 by Graeme.Thornton
TextAssetCommandlet - Accumulate timings for loading packages and saving packages
Change 3780463 by Graeme.Thornton
CryptoKeys improvements
- Enable CryptoKeys plugin by default
- Attempt to inherit settings from the old system by default
- Hide ini/index encryption settings from packaging settings and just inherit previous values into new system
Minor UBT change to remove a trailing comma from the end of encryption/signing key binary strings
Change 3780557 by Ben.Marsh
Fix LoginFlow module not being precompiled for the binary release.
Change 3780846 by Josh.Engebretson
Improve filename to long package name resolution when provided a relative path
Change 3780863 by Ben.Marsh
UAT: Add a better error message when a C# project has an invalid reference.
Change 3780911 by Ben.Marsh
Update the BuildEditorAndTools.xml script to allow submitting archived binaries to Perforce.
The "Submit To Perforce For UGS" node creates a zip of all the binaries that have been built, and submits it to the stream specified by the 'ArchiveStream' argument.
Change 3780956 by Josh.Engebretson
Add support for ! (RemoveKey) config command to UBT
UDN Link: https://udn.unrealengine.com/questions/397267/index.html
#jira UE-52033
Change 3782957 by Robert.Manuszewski
UE4 - Fixed a linear search in EDL that caused performance problems for very large maps.
Change 3784503 by Ben.Marsh
Optimizations for FStructuredArchive:
* Store the depth explicitly in element objects, to avoid having to loop through the scope stack to find it.
* Prevent shrinking of arrays when removing elements.
* Add an inline allocator to the scope and container stacks.
Change 3784700 by Ben.Marsh
Remove the inline allocator from FStructuredArchive; checking whether the inline or backup allocator is being used is slower than just allocating up-front.
Change 3784989 by Ben.Marsh
Compile out all the FStructuredArchive validation code when WITH_TEXT_ARCHIVE_SUPPORT = 0.
Change 3786860 by Gil.Gribb
UE4 - Remove no buffering flag from windows async IO because it disabled the disk cache entirely.
Change 3787159 by Ben.Marsh
Guard against UE4.0 backwards compatibility path when determining if an engine is a source distribution.
Change 3787493 by Josh.Engebretson
Parallel pak generation now uses MaxDegreeOfParallelism option which is now set to the number of CPU cores
Moved cryptography settings parsing out of threaded CreatePak method to avoid concurrency issue in ConfigCache.TryReadFile
Fix for multiple threads parsing ini keys (PR 3995)
#PR 3995
#jira 52913
#jira 49503
Change 3787773 by Steve.Robb
Fix for missing final values from FOREACH_ENUM_ macros.
Change 3788287 by Ben.Marsh
TBA: Add checks in debug builds that key names in maps and records for FStructuredArchive are unique.
Change 3788678 by Ben.Marsh
Fix compile error due to inability to instantiate TArray<> of forward declared struct. Convert set of key names to an array to avoid including Set.h in public header for FStructuredArchive.
Change 3789353 by Graeme.Thornton
Removed unused/rotten modes from TextAsset commandlet.
Used existing "-iterations=n" switch to control a global iteration over the given command. Useful for performance testing.
Change 3789396 by Ben.Marsh
Move code to validate container keys/sizes into DO_GUARD_SLOW checks, and allocate container metadata instances dynamically to fix problems with references to things not declared in headers that can't be included from StructuredArchive.h
Change 3789772 by Ben.Marsh
Always strip trailing slashes from the end of paths specified by .build.cs files; they can cause quoted paths to be escaped on the command line.
Change 3790003 by Ben.Marsh
TBA: Rename FStructuredArchive::EElementType::Object to FStructuredArchive::EElementType::Record.
Change 3790051 by Steve.Robb
PIE is disabled during a hot reload.
Hot reload in editor is disabled during PIE.
Hot reload from IDE is deferred until after PIE is exited.
Compiling multiple times before a hot reload (e.g. compiling multiple times in PIE) will now load the most recent change.
#jira UE-20357
#jira UE-52137
Change 3790709 by Steve.Robb
Better move support for TVariant.
EVariantTypes switched over to using an enum class to aid debugger visualization.
Change 3791422 by Ben.Marsh
TBA: Return the type of a field from an annotated archive formatter at the point that we enter it, rather than querying all the time.
Change 3791489 by Graeme.Thornton
TBA: Change StructuredArchiveFromArchive adapter to use the archive.Open() result directly, now that it's a slot and not a record
Change 3792344 by Ben.Marsh
Improvements to base64 encoding library.
* Now supports encoding and decoding with ANSICHAR and WIDECHAR implementations.
* Added support for decoding base-64 blobs without padding marks.
* Added support for decoding into pre-allocated buffer.
* Added constexpr functions for determining the encoded and maximum decoded size of an input buffer.
* Prevent writes past the end of allocated buffer (no longer need to manually remove padding bytes).
Change 3792949 by Ben.Marsh
TBA: Rename FAnnotatedArchiveFormatter to FAnnotatedStructuredArchiveFormatter.
Change 3794078 by Robert.Manuszewski
Fixing a crash that could happen when FGCObjects were constructed and destructed when shutting down the engine
#jira UE-52392
Change 3794413 by Ben.Marsh
TBA: Remove the element type parameter to SetScope(). It isn't really needed; we can just assume the element ID correctly identifies the item on the stack.
Change 3794731 by Ben.Marsh
TBA: Optimize creation of stack elements for empty slots in FStructuredArchive. This saves a lot of bookkeeping when serializing a large number of individual fields. Since only one slot can be active at a time (and it only exists temporarily, until we write into it), we can just store the element ID assigned to it in a member variable.
Change 3795081 by Ben.Marsh
UBT: Move LinuxCommon.cs into Platform/Linux folder.
Change 3795137 by Ben.Marsh
UBT: Allow modules to specify private compiler definitions from the build.cs file, only visible within that module (via the "PrivateDefinitions" property).
Change 3795247 by Ben.Marsh
Fix missing header when creating a new interface from the editor new code wizard.
#jira UE-53174
Change 3796025 by Graeme.Thornton
Fixed some deprecated "Definitions" warnings in OpenCV build files
Change 3796103 by Graeme.Thornton
Disable experimental text asset option - it does nothing useful yet.
Change 3796157 by Graeme.Thornton
Fix path type mismatch in visual studio source code accessor meaning that the DTE comms wouldn't identify a running instance of VS as having the current solution open.
#jira UE-53206
Change 3796315 by Ben.Marsh
Move Formatter to the correct position for initializer.
#jira UE-53208
Change 3797082 by Ben.Marsh
UAT: Work around for exception thrown by launching cook with "-platform=Android_ETC1 -targetplatform=Android -cookflavor=ETC1". Anrdoid_ETC1 is not a valid platform (it's a cook platform), and can't be parsed by UAT.
#jira UE-53232
Change 3799050 by Ben.Marsh
Make UnrealPak.version files writable for Mac and Linux.
Change 3801012 by Graeme.Thornton
VSCode - Update source accessor to use code workspace as it's target, rather than just the project directory
Change 3801214 by Gil.Gribb
UE4 - Remove assert to work around minor problem with lock free lists.
#jira UE-49600
Change 3801219 by Steve.Robb
WeakObjectPtrs now warn when casting away const.
Change 3801299 by Graeme.Thornton
Fix quote issue with foreign project build tasks on PC
Change 3803292 by Graeme.Thornton
Fix crash on startup when using cook-on-the-side. Force a flush of the asset registry background scanning when creating the cook-on-the-side platform registries
Change 3803559 by Steve.Robb
TSAN fix for FMalloc::MaxSingleAlloc.
Change 3803735 by Graeme.Thornton
Last set of cryptokeys changes
- Added some comments for editor exposed settings
- Split "encrypt assets" option into "encrypt uassets" and "encrypt all assets"
Change 3803929 by Ben.Marsh
UGS: Show an in-place error panel when a project fails to open, allowing the user to retry and have their tabs saved instead of creating a modal dialog.
Change 3624590 by Steve.Robb
AddReferencedObjects now generates a compile error with containers of UObject*s where the UObjectType is forward-declared, as these which won't be added to the reference collector.
Tidy-up of existing calls to AddReferencedObjects.
Change 3629473 by Ben.Marsh
Build: Rename the option for embedding source server information in PDB files for installed engine builds.
Change 3632894 by Steve.Robb
VARARG* macros deprecated and usage replaced with variadic templates.
Change 3640704 by Steve.Robb
MakeWeakObjectPtr added, which deduces a TWeakObjectPtr type from a raw pointer type.
Fix to TWeakObjectPtr's constructor which implicitly removed const.
Fixes to everything which didn't compile as a result.
Change 3650813 by Graeme.Thornton
Removed FStartupPackages and associated code
Change 3651000 by Ben.Marsh
Return the stack size from FPlatformStackWalk::CaptureStackBacktrace() rather than checking for the first null pointer, to prevent truncated callstacks if parts of the stack are zeroed out.
#jira UE-49980
Change 3690842 by Steve.Robb
FPlatformAtomics::AtomicRead added - needs optimizing.
AtomicRead() used in FThreadSafeCounter::GetValue().
Change 3699416 by Steve.Robb
Fix to debugger visualization of TArray with a TInlineAllocator or TFixedAllocator.
Improved readability of TSparseArray visualization.
Change 3720812 by Steve.Robb
Atomic functions for 8-bit and 16-bit.
Android, Linux and Switch implementations now just use the Clang implementation.
AtomicRead64 deprecated in favor of the int64* AtomicRead overload.
Change 3722698 by Steve.Robb
VS debugger visualizers for TAtomic.
Change 3732270 by Steve.Robb
Relaxed stores and loads.
Change 3749315 by Graeme.Thornton
If UAT is invoked with platforms in both the -platform and -targetplatform command line switches, build using all of them rather than just the ones in -targetplatform
#jira UE-52034
Change 3750657 by Josh.Engebretson
Fixed issue when debugging editor cook/package and project launch operations
#jira UE-52207
Change 3758514 by Steve.Robb
Fixes to FString::Printf having non-literals being passed as its formatting string.
Change 3763356 by Steve.Robb
ENamedThreads::RenderThread and ENamedThreads::RenderThread_Local encapsulated by getters and setters.
Change 3770549 by Steve.Robb
Removal of obsolete PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS and PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES.
Tidy up of existing code which uses it.
Change 3770553 by Ben.Marsh
Adding structured serialization API to Core/CoreUObject for use with text-based assets.
* FStructuredArchive abstracts an archive which is made up of compound types (records, arrays, and maps). Values are stored in slots within these types.
* Records are string -> value dictionaries where the key names can be compiled out in non-editor builds or when WITH_TEXT_ARCHIVE_SUPPORT = 0.
* Maps are string -> value dictionaries where the key names are present regardless of the build type.
* Proxy objects are defined to express the context for serialization (FStructuredArchive::FRecord, FStructuredArchive::FArray, FStructuredArchive::FMap, FStructuredArchive::FSlot) which allows basic validation through static typing. These objects act as lightweight handles, and can be cheaply constructed and passed around on the stack. Most serialization to and from the archive is done through these objects.
* Runtime checks perform additional validation to ensure that serialized data is well formed and written in a forward-only manner, regardless of the underlying archive type.
* The actual input/output format is determined by a separate interface (FArchiveFormatter). Context validation (always causing matching LeaveArray for every EnterArray, etc...) is done by FStructuredArchive, so implementing these classes is fairly trivial. FArchiveFormatter can be de-virtualized in non-editor builds, where WITH_TEXT_ARCHIVE_SUPPORT = 0.
* Includes implementations of FArchiveFormatter for binary and JSON formats.
Change 3771105 by Steve.Robb
Deprecation warnings for PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES and PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS.
Fix for incorrect warning formatting on Clang platforms.
Change 3771520 by Steve.Robb
Start moving Clang-using platforms' pre-setup stuff into a Clang-specific header.
Change 3771564 by Steve.Robb
More common macros moved to the Clang pre-setup header.
Change 3771613 by Steve.Robb
EMIT_CUSTOM_WARNING_AT_LINE moved to ClangPlatformCompilerPreSetup.h.
Change 3772881 by Ben.Marsh
Add support for serializing FName and UObject through FStructuredArchive.
In order to allow custom linker behavior when serializing objects:
* The constructor to JSON input formatter now takes a delegate to convert a string object name into a UObject pointer.
* The constructor to tagged binary formatter takes a delegate to serialize a UObject pointer into any form it chooses (likely an integer index into the import table)
Object and name types are stored as strings in JSON, using an "Object:" or "Name:" prefix to differentiate them from regular strings. Any strings that already contain one of these prefixes are prepended with a "String:" prefix (as is any string that already has a "String:" prefix).
Change 3772941 by Graeme.Thornton
Make build work when including StructuredArchive.h from core container types
Added standard header to new files
Add structured archive serializer for TArray
Fix bug in structured archive where containers weren't being popped from the scope stack
Change 3772972 by Ben.Marsh
Add an adapter which presents a legacy FArchive interface to a FStructuredArchive slot.
Data is serialized into this slot as a stream of elements; raw data is buffered up into fixed size chunks, names and objects are serialized separately.
When used with FBinaryArchiveFormatter, this should result in all data being passed through to the underlying archive in a backwards compatible way, wiith no additional bookkeeping fields.
Change 3773006 by Ben.Marsh
Rename FStructuredArchive::FRecord::EnterSlot() to EnterField().
Change 3773013 by Steve.Robb
bUseInlining target rule added to UnrealBuildTool, which defaults to true, to allow inlining to be disabled for debugging purposes.
Change 3774499 by Ben.Marsh
Minor fixes for FStructuredArchive related classes:
* Text-based archive formats are now compiled out when WITH_TEXT_ARCHIVE_SUPPORT = 0.
* Fixed issue with FTaggedBinaryArchiveFormatter state becoming corrupted when looking ahead at field types.
* FArchiveFieldName constructor is now explicit, to fix cases where strings were being passed directly to serialize functions.
Change 3774600 by Ben.Marsh
Add CopyFormattedData() function, which can copy data from one formatter to another. Add a test case to SerializationAPI that converts from data -> JSON -> binary -> JSON -> data.
This function can be used to implement a generic visitor pattern, by implementing a FArchiveFormatter which receives the deserialized data.
Change 3789721 by Ben.Marsh
TBA: Split FTaggedBinaryArchiveFormatter into separate classes for reading and writing.
Change 3789920 by Ben.Marsh
TBA: Support automatic coercion between any numeric types in tagged binary archives. Also report the smallest type that can contain a value, rather than just in32/double.
#jira UECORE-364
Change 3789982 by Ben.Marsh
TBA: Change FStructuredArchive::Open() to return a slot, rather than a record, to make it easier to implement a raw FArchive adapter.
Change 3792466 by Ben.Marsh
TBA: Better handling of raw data in text based assets. Short sequences of binary data are Base64 encoded as a single string. Longer sequences are stored as an array of Base64 encoded lines, push a SHA1 hash to detect cases where the data was merged incorrectly.
In order to allow inference of the correct type for a field, other fields called "Base64" will be escaped to "_Base64", and any field beginning with "_" will have an additional underscore inserted. Reading files back in reverses these transformations.
Change 3792935 by Ben.Marsh
TBA: Rename FArchiveFormatter to FStructuredArchiveFormatter for consistency with FStructuredArchive.
Change 3795100 by Ben.Marsh
UBT: Rename the ModuleRules Definitions property to PublicDefinitions, to make its semantics clearer.
Change 3795106 by Ben.Marsh
Replace all internal usages of ModuleRules.Definitions, and replace it with ModuleRules.PublicDefinitions.
Change 3796275 by Ben.Marsh
Fix paths to Version.h includes from resource files.
Change 3800683 by Josh.Engebretson
Remove WER from Mac and Linux crash reports in favor of unified runtime-xml format
#jira UE-50073
Change 3803545 by Steve.Robb
TWeakObjPtr const-dropping assignment fix.
Fixes to change.
[CL 3805231 by Ben Marsh in Main branch]
#rb Rendering
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3658809 by Chris.Bunner
Changing default HDR display gamut to P3 as in practice that's more common than Rec2020, this should be a user-facing option where possible though as we can't automatically retrieve that data.
Change 3658842 by Chris.Bunner
Backing out previous HDR default gamut change as it conflicts with mandatory platform defaults.
Change 3695269 by Arne.Schober
DR - Make clang happy wreorder
Change 3695418 by Guillaume.Abadie
Fixes compilation failure in FoliageType_InstancedStaticMesh.cpp.
Change 3695430 by Guillaume.Abadie
Fixes missing BeginFrame dynamic resolution event in EngineTest.
Change 3695469 by Guillaume.Abadie
Fixes crash when passing down an invalid parameter on the sample material expression's DDX, DDY parameters.
Change 3696091 by Guillaume.Abadie
Fixes Linux compilation failure in DynamicResolution.cpp
Change 3696593 by Chris.Bunner
Fixed typo in vetex factory enum.
Change 3696596 by Chris.Bunner
Added material attributes type checking to If material expression.
Updated If material expression to validate compilation of inputs.
Change 3696597 by Chris.Bunner
Allow visible parameter retrieval to correctly traverse through internally called functions. Previous check was intended to prevent function previews from leaving their graph through unhooked inputs, but unintentionally blocked all function inputs.
Change 3696599 by Chris.Bunner
Fixed material instance parameter visiblity when using nested static switches across functions.
#jira UE-50878
Change 3696734 by Chris.Bunner
Return type fix.
Change 3697123 by Guillaume.Abadie
Fixes compilation failure in PostProcessWeightedSampleSum.cpp on Windows 32bits.
Change 3697125 by Guillaume.Abadie
Fixes compilation failure in MaterialExpressionIf.h
Change 3697127 by Guillaume.Abadie
Fixes compilation failure in DynamicResolution.cpp on shipping build.
Change 3697135 by Guillaume.Abadie
Fixes crash in dynamic resolution event frontend when resizing game play viewport in EngineTest.
Change 3697199 by Guillaume.Abadie
Fixes TAA upsample's shader compilation failure on Mac.
Change 3697220 by Guillaume.Abadie
Makes static analysis happy again.
Change 3697280 by Chris.Bunner
Fixing up invalid casts in material layers validation.
Change 3697366 by Rolando.Caloca
DR - hlslcc - Fix warning
#jira UE-43988
Change 3697451 by Rolando.Caloca
DR - vk - Per pipeline descriptor pools
Descriptor pool are now allocated per PSO instead of globally to reduce peak mem consumption and fragmentation
Enabled on Windows only via VULKAN_USE_PER_PIPELINE_DESCRIPTOR_POOLS
Change 3697477 by Rolando.Caloca
DR - vk - Custom memory allocator
Remove old/unused stats
Change 3697486 by Rolando.Caloca
DR - vk - Fix validation issue
Change 3697488 by Richard.Wallis
Fix for Mac editor session no longer accurately tracking Mouse location after moving between Desktops in Mission Control on 10.12.6. Problem stems from the extra call to update the slate cached window position in mouse move while dragging, which is itself is a hack but apparently this is needed as we don't get window position updates on Mac while dragging (although I couldn't see any -ve side effects without it) then the OS (in 10.12.6) doesn't always push out a final window did move notificaiton when changing desktops which leaves the window according to slate incorrectly positoned to it's frame.
Solution is to either remove the mouse-move-while-drag window position hack or add a final window position update to the mouse-up event while dragging - this change is the latter.
#jira UE-37553
Change 3697501 by Richard.Wallis
Move audio processing over to audio bus tap. Currently on Mac Media audio playback uses OS media player mixer rather than Engine as existing implemtation, using AVAssetReader, now suffers from poor performance with new Media Framework. This audio tap version replaces that asset reader implementation but also suffers from bad quality audio hence is still disabled at the top of AvfMediaTracks.cpp.
Original Code Review Description:
Convert Mac to Play audio through the engine MediaFramework API rather than using AVMediaPlayer. This is the Mac implementation only - this should work ok on iOS but unable to test due to missing audio type implementation (throws error "Init Buffer on unsupported sound type name = Synth type = 5"), as such is only enabled for Mac. There maybe some extra tweaks required for iOS on app backgrounding etc if this feature is enabled.
- Stuttering Audio Performace issue investiagation: Re-Tested this implementation against [now fixed] current Mac implementation which was working fine last year and that implementation now has the same audio output quality (performance) issues as this one. Basic investigation seems to point to somewhere in the engine audio handing. When poor audio is heard the FMediaAudioResampler::Generate() function is dequeing an IMediaAudioSample sample buffer and the audio sample queue usually has 50-100 of these IMediaAudioSample buffers waiting in the queue. I think the AvfMedia playback system is providing the sample buffers in good time but they are not getting consumed "fast" enough. This under consuming also occurs if I force the Core Audio - Audio Unit mixer to use 48000 samples/sec.
#jira UEPLAT-1677
Change 3697517 by Richard.Wallis
XCode 9.0 extra nullability specifiers required.
Change 3697537 by Richard.Wallis
Back out revision 23 from //UE4/Dev-Rendering/Engine/Plugins/Media/AvfMedia/Source/AvfMedia/Private/Player/AvfMediaTracks.cpp
Change 3697670 by Rolando.Caloca
DR - vk - Fix mapstaging surface
Change 3697846 by Uriel.Doyon
Allow denormalized values when converting float32 to float16.
Change 3697892 by Uriel.Doyon
Fix for unaligned structure elements
Change 3699335 by Richard.Wallis
Mac compile fix - turns out I did need these nullability specifiers here.
Change 3699663 by Guillaume.Abadie
Fixes time unit conversions from microseconds to milliseconds error in dynamic resolution heuristic when using GPU busy time queries.
Change 3699959 by Rolando.Caloca
DR - Fix barrier in the middle of render pass
Change 3699969 by Rolando.Caloca
DR - vk - Change dump layer location so it prints out validation ids
Change 3700356 by Guillaume.Abadie
Implements secondary screen percentage to be able to do TAA upsample followed spatial upscale so that the editor viewport still have same TAA upsample screen percentage range to test the content with no matter monitor's DPI.
Change 3701105 by Guillaume.Abadie
Ignore per view automatic mip bias on texture type other than 2d textures.
#jira UE-51396
Change 3702297 by Richard.Wallis
Mac compile fix for nullable specifier. Looks like Obj class using the C++ class also needs this otherwise it throws. Seems to be some kind of xcode/compiler caching bug with this stuff as it'll report the error once then on subsequent compiles say everything is ok.
#jira UE-51386
Change 3702357 by Richard.Wallis
Mac nullability compile fix - again. Looks like I fell foul of that xcode compile caching!
#jira UE-51386
Change 3702424 by Guillaume.Abadie
Fixes planar reflection from drowing themselves in their own FSceneRenderer in forward shading.
#jira UE-51395
Change 3702464 by Guillaume.Abadie
Fixes wrong viewport to buffer conversion of the distortion.
#jira UE-51406
Change 3702819 by Guillaume.Abadie
Fixes planar reflections with secondary screen percentage for HighDPI editor viewports.
Change 3703732 by Guillaume.Abadie
Removes unecessary check(); when there is more than 2 players with planar reflections.
#jira UE-51436
Change 3704302 by Guillaume.Abadie
Removes unecessary Interface suffix on new dynamic resolution related interfaces
Change 3704390 by Chris.Bunner
Fixed a coincidentally correct define.
Change 3704730 by Rolando.Caloca
DR - vk - Fix map for depth surfaces
Change 3704739 by Rolando.Caloca
DR - Debug label on D3D11 UAVs
- Validate when running -d3debug
Change 3705000 by Chris.Bunner
Skip compiling opacity and opacity mask inputs on opaque surface materials. Previously the code was always added to the shader, sometimes we force opaque materials down a masked path which then calls the dormant code unintentionally. A safer fix for UE-48254.
Partially reverted previous fix in CL 3608303 which removed a material instance optimization caching the overridden base properties.
Change 3706065 by Guillaume.Abadie
Does some renaming for primary screen percentage, and move the primary screen percentage method selection from dynamic resolution driver to FSceneView.
Change 3706464 by Chris.Bunner
Fixed material property translate overrides that were generating code in the wrong entry.
Fixed conditions in If material expression GetInputType and IsMA check.
#jira UE-51368
Change 3706641 by Chris.Bunner
Missing "break" in switch statement (which unfortunately needs another bump to resolve).
Change 3706642 by Guillaume.Abadie
Fixes assertion failure when r.TemporalAA.EnableUpscale = 1
Change 3706650 by Gil.Gribb
UE4 - UE4 - Changes from intel. Increase number of worker threads on Windows to if hyperthreads (hyperthreads √ 2) else cores √ 1 up to a max of 22 workers. Increase MAX_THREADS multiplier per bank from 22 to 26. Intel VTune ITT event annotations. Wrapped in same function as your existing CPU events and enabled with √vtune. Optimize NV cloth by consuming FVector instead of FVector4 out of the solver. Vertex buffers were using FVector all along. ~15% improvement. Optimize cloth copy to vertex buffer by adding prefetch (similar to how bones are already done). Move local to world cloth transform from CPU to GPU. When simulating lots of vertices game thread was becoming bottleneck doing matrix multiply. Add your TaskGraph task switch latency test code.
Change 3706733 by Daniel.Wright
Print Embree Build time
Change 3706841 by Daniel.Wright
EmbreeFilterFunc4 now handles masked out intersections properly
Change 3707437 by Rolando.Caloca
DR - vk - Android compile fix
#jira UE-51474
Change 3707785 by Guillaume.Abadie
Fixes viewport issue in bloom setup pass with TAA upsample.
Change 3709623 by Rolando.Caloca
DR - vk - Missing barrier for reading into cpu
Change 3709633 by Rolando.Caloca
DR - vk - Compile fix
Change 3710454 by Mark.Satterthwaite
Refactor the way we compile Buffer<> & RWBuffer<> types for Metal so that we can support the type-conversion semantics of HLSL/D3D.
- Buffer<> types are converted to Linear Textures unless the internal type is 3-compnent or the STRONG_TYPE macro is added as a type-qualifier. Linear Textures require an MTLTexture "view" object be created around the MTLBuffer which is the backing-store and it is typically best if that buffer is marked as Private (GPU-only) memory, reading from this in the shader then uses the texture-fetch hardware to perform the format conversion on load.
- RWBuffer<> & 3-compnent Buffer<> types are converted to use template functions to load/store - the implementation of which will read the format from the BufferSizes meta-table and determine which type-conversion to apply. Function-constants are used to specialise the shader where feasible to reduce branch costs (function-constants are a Metal feature that allow efficient runtime recompilation of bytecode shaders).
- Buffer<> & RWBuffer<> types where the STRONG_TYPE macro is added as a type-qualifier (only does something on Metal, everywhere else it is #define'd away) are compiled as "raw" Metal buffers of the inner-type (e.g. float4 for Buffer<float4>) and the MetalRHI runtime will enforce that only SRVs/UAVs of the proper format are bound to it. This is necessary in a couple of cases (BoneMatrices, NumCulledLightsGrid, CulledLightDataGrid & ForwardLocalLightBuffer buffers) which are used in a larger number of shaders as Linear Textures have poorer performance than Buffer<>/RWBuffer<>.
- Most of the complications to generating subtly different Metal code for different OS/device combinations have been factored out into ue4_stdlib.metal which acts as an extension to the Metal shader standard-library and helps simplify the MetalBackend code - particularly helpful for Buffer<>/RWBuffer<> but also texturecube_array and the SM6 wave-related intrinsics.
- Reverted some of the awkward Metal-specific changes Richard.Wallis & Arne had to make to the high-level shaders as they aren't necessary anymore.
- Made the existing Metal-specific changes to use uint32 for all light-grid injection buffers apply to all Metal platforms again (I had hoped that it would not be necessary anymore, but it is much faster this way).
- STRONG_TYPE is actually hlslcc's "invariant" keyword applied as a type-qualifier to a Buffer<>/RWBuffer<> type - only valid when using Metal which exports this through ILanguageSpec and #define'd out for everyone else.
- Old versions of iOS (anything earlier than iOS 10.3) won't be able to use this new code, so every buffer will be treated as "raw" and the MetalRHI will now properly report when something goes awry rather than it leading to mysterious rendering errors and crashes.
Change 3710456 by Mark.Satterthwaite
Fix the Eddie workset project generator so that Enterprise projects don't get mixed in with regular projects at the top-level because of the way Eddie combines workset groups.
Change 3710457 by Mark.Satterthwaite
DX11 texture formats for Mac Metal please!
Change 3710480 by Mark.Satterthwaite
Permit RHI thread and parallel execution in Mac -game mode again.
Change 3710522 by Mark.Satterthwaite
MSVC type-mismatch error fixes.
Change 3710580 by Mark.Satterthwaite
Alright then - if I can't use the C++11 extended string semantics I'll have to use "xxd -i" to generate a hex-dump include header from ue4_stdlib.metal instead. This can only be updated from a machine with access to the POSIX xxd command (Mac & Linux, possibly the new Linux sub-system for Win10).
Change 3710616 by Mark.Satterthwaite
Missing file.
Change 3712972 by Guillaume.Abadie
Fixes Circle DOF's negative alpha channel getting clamped to 0 in TAA pass.
Change 3712979 by Guillaume.Abadie
Fixes wrong RT reallocation when doing TAA upsample in editor viewports with secondary upscale.
Change 3713406 by Mark.Satterthwaite
Use GPU morph targets on Mac - the necessary buffer conversions will always be available there. For iOS it can only be supported if iOS 10 is the minimum OS & Metal standard so leave that on the CPU path for now.
Change 3713494 by Richard.Wallis
Fix for hitch when PIE unloading sublevel. PerformReachabilityAnalysisOnObjects is spawing multiple threads in Editor builds as there is an extra code path that results in Critical Section locking within a singleton type static object - this is a bottle neck for multiple threads. However they all just need to read the data not change it. Replaced FScopeLock with a Read/Write version allowing these threads to all take a read lock at the same time to reduce contention.
Changed the FUObjectAnnotationDense implementation only - left the sparse implementation alone as its not currently affecting this - although we could proactivly change that too.
Also tested again repro in linked bug UE-24711.
#jira UE-40533
Change 3713612 by Mark.Satterthwaite
Integrate LPV_STORE_INDEX_IN_HEAD_BUFFER related changes from //depot/Partners/Microsoft/UE4-MS/Engine-Fable @ 2954744
This should make Light Propagation Volumes potentially viable on non-Microsoft platforms.
Change 3713623 by Mark.Satterthwaite
Implement ByteAddressBuffer/RWByteAddressBuffer in hlslcc in a similar manner to StructuredBuffer/RWStructuredBuffer so that the backends don't need too much modification. Implement the necessary changes into MetalBackend to make this work for Metal.
Load/Store{+2,3,4} & Atomics are supported. Counter operations are not supported and aren't likely to be.
Change 3713636 by Mark.Satterthwaite
Enable LPVs for Mac Metal.
- Rework some multi-dimensional arrays & array-index dependent HLSL code that hlslcc simply can't cope with, the mesa-glsl compiler core is only capable of dealing with 1 dimensional arrays and array-indexing can't itself be directly dependent on the result of an array-index operation.
- MetalRHI needs to ignore any SetRenderTargets call that binds nothing at all as you must bind at least one target (UAV, RT, Depth/Stencil) for it to be able to do anything sensible.
- Turn on LPVs for Metal as it works now.
Change 3714049 by Guillaume.Abadie
Do not set screen percentage method to TAA upsample when anti aliasing method is not TAA even if there is automatic fallback in the renderer.
Change 3714306 by Guillaume.Abadie
Fixes assertion failure in dynamic resolution state proxy with GPU busy time queries.
Change 3714714 by Mark.Satterthwaite
Tweak Metal GPU identification so that it works with eGPU boxes and protoype hardware - these changes only apply to macOS 10.13 so the system as a whole remains.
Change 3716104 by Mark.Satterthwaite
Fix 10.12/Xcode 8 compile errors from the build-farm which is still split until Fortnite can update.
Change 3716120 by Mark.Satterthwaite
Silence static-analysis.
Change 3716158 by Guillaume.Abadie
Rewrites editor primitive compositing to support TAA upsample.
This takes the oportunity to remove the manual depth testing in base pass pixel shader of editor primitives.
Change 3716271 by Daniel.Wright
Lightmass correctness fixes
* After these changes, point, spot, directional and sky lights closely match reference renderer Mitsuba after light unit conversions
* Photon density trimming intended for direct photons was affecting indirect photons as well. This caused high noise for point / spot lights with a large attenuation radius. Indirect photon density even for small lights is 5x with this change, which improves 2nd bounce quality.
* Removed legacy fudge factor on point / spot light photon energy
* Spotlights no longer emit based on indirect photon paths. Fixes excessive photon energy from spot lights as they were emitting outside of the cone.
* Fixed photons computing one more bounce than requested.
* Added an option to use the Radiosity solver for all multibounce, replacing photons. Useful as a reference but generally too much noise indoors.
* Fixed visualization of photons without final gather
Change 3716434 by Mark.Satterthwaite
Backout the remaining change from 3632041 that is no longer necessary - this was the last of the 4.18 Metal workarounds.
Change 3716491 by Chris.Bunner
Fixing up an edge-case on a recent optimization.
Change 3716611 by Guillaume.Abadie
Allows secondary screen percentage >= 100%.
Change 3716977 by Guillaume.Abadie
Back out changelist 3716158 to unblock QA pass.
#jira UE-51580
Change 3717111 by Arne.Schober
Fixing nomalization of Morph Tangents https://udn.unrealengine.com/questions/392462/
Also implemanted batching of the dispatches which should help worst case perfomance where dispatches become too small.
CalculateInverseAccumulatedWeights is not cheap and proably should be moved onto a task thread that runs as soon as the input weights are ready.
Change 3717127 by Mark.Satterthwaite
Fix a mismerge from the reversion of 3632041 - part of the modified code had been moved into another file and I didn't initially notice.
Change 3717178 by Mark.Satterthwaite
Remove useless copy-pasted expressions from glsl_type::GetByteAddressBufferInstance & force MetalBackend to relink. Apparently the previous Mac libs were mysteriously broken.
#jira UE-51583
Change 3717476 by Marcus.Wassmer
Fix PS4 compile. funciton local statics not allowed on PSSL
Also enabled the new atomics method for LPVs for all platforms
Change 3717502 by Arne.Schober
DR - Compiletime option for compressed ruleset (0.02ms perf gain on PS4 and disabled by default as it limits array size to 2million entries)
Change 3717601 by Arne.Schober
DR - Move cycle counter into more meaningfull locations.
Change 3718054 by Guillaume.Abadie
Removes unecessary check() failure on secondary upscale that fires when testing raw output screen percentage method.
Change 3718066 by Guillaume.Abadie
Reland: Rewrites editor primitive compositing to support TAA upsample.
This takes the oportunity to remove the manual depth testing in base pass pixel shader of editor primitives.
Change 3718589 by Mark.Satterthwaite
Console-variable to enable and disable Manual-Vertex-Fetch for Metal and fix the internal code to handle the subtle changes in behaviour for vertex-declarations so we don't explode under the Metal validation layer. MVF works on macOS, though testing did expose an error with Tessellation on Nvidia (true for MVF enabled & disabled).
Change 3718633 by Guillaume.Abadie
Fixes temporal instability issue of TAA upsample with secondary screen percentage.
Change 3718658 by Arne.Schober
DR - 25% MorphTarget Speed increase because there was a bit of cache thrashing between the waves going on.
Change 3718818 by Mark.Satterthwaite
Fix compilation on hlslcc - integral values are not automatically converted into comparisons with zero.
Change 3719004 by Guillaume.Abadie
Lets the game viewport client automatically set raw output screen percentage method when doing dynamic resolution with stereo rendering but without TAA upsample.
Change 3719375 by Mark.Satterthwaite
Extend mtlpp compiler testing app to support Metal tessellation compute shaders so we can send Nvidia a much simpler reproduction of their regression.
Change 3720099 by Mark.Satterthwaite
Make the left-hand arguments work in airdiff.
Change 3720413 by Mark.Satterthwaite
Support standalone compute shaders in the mtlpp compiler test app.
Change 3721232 by Mark.Satterthwaite
No more Metal Shader Model 4 - instead we have to have a Metal Shader Model 5 w/o Tessellation as Nvidia's shader compiler is broken on all tessellation shaders in 10.13.0 and above. There is no guarantee that they will fix this prior to 10.14 and I can't afford to disable tessellation entirely as if I do that then the AMD & Intel compilers will also regress. As there is no Shader Model 4 platform on Mac anymore I've amended the LevelEditorActions to disable the preview modes when no appropriate shader platform is available.
Change 3721244 by Mark.Satterthwaite
Fix incorrect enum handling for Metal features due to overflow.
#jira UE-51643
Change 3721338 by Mark.Satterthwaite
MIssing file from 3721232
Change 3721818 by Mark.Satterthwaite
Fix the Intel vector-array-dereference workaround so that it doesn't cause the AMD compiler to explode instead.
Change 3722139 by Arne.Schober
DR - [UE-51602] -Fixed Typo that accidently bound the LightingInstancebuffer to the Transform one
#jira UE-51602
Change 3722165 by Rolando.Caloca
DR - Default -opengl to GL4
Change 3722682 by Guillaume.Abadie
Fixes wrong clear color in SSR important for VR that has a HMD mesh.
Change 3722766 by Rolando.Caloca
DR - Fix static analysis
Change 3722943 by Mark.Satterthwaite
Disable the METAL_SM5_NOTESS shader platform again - I can workaround the Nvidia pipeline state compiler crash by changing the buffer address space from "constant" to "device" as we're managing to confuse the poor thing. This won't materially affect AMD or Intel as they don't care much about this, but to limit performance issues on Nvidia we only need to do this for Tessellation Compute shaders.
Change 3723100 by Mark.Satterthwaite
Apparently users like enabling Metal shader standards that won't work on their current OS, so don't display those that aren't going to work & display an error message before quitting rather than crashing when trying to load a project that tries to use an incompatible shader version.
Change 3723121 by Mark.Satterthwaite
Fix build error.
Change 3723245 by Daniel.Wright
Ensure for when a reflection capture upload fails due to incorrect lighting scenario level handling
Reflection captures with no data use an array index of 0, instead of -1. Might avoid reading uninitialized memory on PS4.
Change 3723387 by Arne.Schober
DR - Metal already applies the instance and vertexoffset in the shader
Change 3723393 by Mark.Satterthwaite
More fixes to the mtlpp compiler test application.
Change 3725258 by Guillaume.Abadie
Improves fast TAA upsample shader permutation by 15% on console.
Change 3725555 by Chris.Bunner
[Dupliate] CL 3725548 - Fixed invalid screenpercentage value in VehicleGame sample (was setting -1 but should default to 100). This has always been broken but was recently exposed by CL 3686200.
Change 3726845 by Guillaume.Abadie
Exposes SvPosition to material through screen position material expression, so that material no longer have SvPosition * InvViewSize * ViewSize precision loss.
#jira UE-51428
Change 3728014 by Guillaume.Abadie
Uses ScreenPosition material expression's PixelPosition pin in existing engine functions to improve precision.
#jira UE-51428
Change 3728053 by Richard.Wallis
Duplicate CL 3727958: Crash fix when using shared material libraries. Initial shader code library offset is not zero'd so all entry offsets were garbage.
Change 3728339 by Guillaume.Abadie
Adds project setting for TAA upample, and officialises TAA upsampling CVar.
Change 3728549 by Guillaume.Abadie
CsvProfiler is pretty cool, but even better with console autocompletion for lazy developers.
Change 3728752 by nick.bullard
Built and re-saved QA-MeshPaint
#jira UE-50978
Change 3728775 by Guillaume.Abadie
Implements r.DynamicRes.ChangePercentageThreshold to stabilize primary screen percentage.
Change 3729224 by Uriel.Doyon
Hidden levels now keep their last build data when using lighting scenarios.
Hidden levels don't affect the scene anymore volumetric lighting when not using lighting scenarios.
#jira UE-40454
#jira UE-38131
Change 3729243 by Marcus.Wassmer
Update Ansel to 1.4
#github 4159
#jira UE-51545
Change 3729325 by zachary.wilson
Adding indirect lighting to TM-LightingChannels
#jira UE-47069
Change 3729485 by zachary.wilson
Fixing ambient occlusion bias on QA-LightsStationary. Removed global PPV with bad settings, also fixed the shadow on the roof.
#jira UE-50972
Change 3729629 by Uriel.Doyon
Fixed crash when using debug view modes.
Fixed d3ddebug error when clearing quad overdraw buffer.
#jira UE-51836
Change 3730053 by Guillaume.Abadie
Allows edititing of AScreenshotFunctionalTestBase::ScreenshotCamera.
Change 3730308 by Guillaume.Abadie
Disables TAA upsample on buffer visualization, and disallow screen percentage preview in editor viewport with any buffer visualization.
Change 3730355 by Guillaume.Abadie
Sacrifices consistency for good cvar name for TAA upsample.
Change 3731403 by Daniel.Wright
Reduced slider for ContactShadowLength to .1, algorithm produces poor results with larger values.
Change 3731404 by Daniel.Wright
Checkpoint for ScreenShadowMaskTexture, allowing 'vis ScreenShadowMaskTexture'
Change 3731407 by Daniel.Wright
Must opt-in for FDistanceFieldSceneData::VerifyIntegrity
Change 3731517 by Guillaume.Abadie
Freezes dynamic resolution heuristic when doing pause.
Change 3732168 by Guillaume.Abadie
Renames TAA upsampling cvar.
Change 3732295 by Guillaume.Abadie
Lets the scene texture's size and texel size return the correct sizes after TAA upsample.
Change 3732313 by Guillaume.Abadie
Implements SceneTexture material expressions' automated tests.
Change 3734928 by Guillaume.Abadie
Adds panic mode when the last N frames are over budget to the dynamic resolution heuristic.
Change 3735966 by Ryan.Vance
Fixing mac steamvr compile issue. Missed a few lines in the refactor because mac.
Change 3736104 by Guillaume.Abadie
Removes FSceneViewInitOptions::bDisableGameScreenPercentage brought by 4.18, that new screen percentage API do in a better way.
Change 3736346 by Daniel.Wright
Volumetric fog is always interpolated in the pixel shader, since per-vertex interpolation gives consistently poor results. Fixes Volumetric Fog on opaque in Forward, and on transparent in Deferred.
Forward shading: per-pixel height fog is always done in the base pass, to work with MSAA correctly
Change 3736348 by Daniel.Wright
Forward shadowing of directional light for translucency
* Static shadowing and CSM supported with minimal filtering (1 PCF)
* Deferred renderer: affects translucency using 'Surface ForwardShading' lighting mode. Forward renderer: affects all translucency.
Change 3736650 by Rolando.Caloca
DR - vk - # of desc pools
Change 3737985 by Guillaume.Abadie
Fixes pixel inspector with primary and secondary screen percentage.
Change 3738638 by Michael.Lentine
Compile fix due to unclear operator precendence.
Change 3739417 by Daniel.Wright
Fixed a few issues with irradiance cache visualization
Change 3739447 by Daniel.Wright
Skip forward static shadowing in projects with static lighting disabled
Change 3739595 by Daniel.Wright
ConditionalPostLoad DistanceFieldReplacementMesh. Should fix a crash on load when static mesh derived data is being rebuilt, and the DistanceFieldReplacementMesh is in use.
Change 3739598 by Daniel.Wright
Disable capsules shadows on lowest shadow quality
Change 3739611 by Daniel.Wright
Added r.CapsuleDirectShadows and r.CapsuleIndirectShadows for more specific scalability control over capsule shadow features
New Lighting Feature show flags for RTDF shadows and Capsule Shadows
Change 3740516 by Guillaume.Abadie
Fixes VR editor rendering only on eye with TAA upsample.
#jira UE-52016
Change 3740580 by Guillaume.Abadie
Fixes chromatic aberration with TAA upsample and multiple view rendering.
#jira UE-51993
Change 3740588 by Guillaume.Abadie
Gives to FXAA a more explicit draw event name for easier UDN support.
Change 3740845 by Michael.Lentine
Fix shipping build.
Change 3740903 by Guillaume.Abadie
Disables dynamic resolution threading outliers detection by default and includes editor UI GPU cost within dynamic resolution's begin/end frame events for better reliability of timestamp query based dynamic res in editor.
Change 3741355 by Daniel.Wright
Normalize planar reflection plane - fixes crash when scaling a BP with a planar reflection component
Change 3741357 by Daniel.Wright
More info on volumetric lightmap import failure
Change 3742535 by Ryan.Vance
Fix for view rect changes.
Change 3743282 by Guillaume.Abadie
Fixes a bug in dynamic resolution heuristic's outlier detection that was preventing the over budget panic to react.
Change 3743559 by Michael.Lentine
Port Siren changes for recompute tangents. This adds recompute tangents for cloth as well as the ability for recompute tangents to work across seams where vertices are duplicated.
Change 3743679 by Guillaume.Abadie
Cherry-pick 3743621: Fixes subsurface profile fallback to lit shading model when Opacity == 0, introduced by 3447144.
#jira UE-51569
Change 3743906 by Ryan.Brucks
BlueprintMaterialAndTextureNodes Plugin: Fix for clamping sampled HDR render target values by setting ERangeCompressionMode in the FReadSurfaceDataFlags to RCM_MinMax
Change 3744096 by Ryan.Brucks
BlueprintMaterialAndTextureNodes Plugin: removed Mip option from Texture2D_SampleUV_EditorOnly for now since reads from source data cannot access mips and it can be misleading.
Change 3744253 by Guillaume.Abadie
Fixes merge collisions of debug canvas rendering with High DPI, fixes stat unit on high DPI monitors, and fixes secondary screen percentages.
Change 3744953 by Chris.Bunner
Crash workaround.
Change 3745628 by Marcus.Wassmer
Temporarily disable recalctangent normal-smoothing
#jira UE-52166
Change 3745942 by Guillaume.Abadie
Fixes a todo in FCommonViewportClient
Change 3746005 by Guillaume.Abadie
Fixes stat UnitGraph on high DPI monitor.
Change 3746029 by Guillaume.Abadie
Oups.... Fix compilation. :D
Change 3748322 by Guillaume.Abadie
Shows dynamic resolution's primary screen percentage on stat unit/unitgraph console commands.
Change 3748346 by Chris.Bunner
Potential static analysis fix.
Change 3748349 by Chris.Bunner
Mac feature support flag fix on versions < 10.30.
Change 3749336 by Guillaume.Abadie
Fixes some spelling mistakes in dynamic resolution cvars. Thanks Daniel!
Change 3749374 by Guillaume.Abadie
Adds a black background on the stat unitgraph so timing curves can be seen no matter the content.
Change 3749437 by Guillaume.Abadie
Final UI polish up for `stat unitgraph`
Change 3749719 by Guillaume.Abadie
Fixes a crash when changing r.DynamicRes.MaxScreenPercentage below current screen percentage.
Change 3750243 by Chris.Bunner
Increasing controller's automated test timeout to allow for slower machines to complete the longest tests.
#jira UE-48494, UE-51907
Change 3750728 by Guillaume.Abadie
Fixes merge collision in chromatic aberration.
#jira UE-52282
Change 3750791 by Guillaume.Abadie
Fixes chromatic baerration R and G channel swap.
Change 3751246 by Guillaume.Abadie
Bypasses screen percentage apply with mobile LDR rendering.
#jira UE-52089
Change 3752624 by Guillaume.Abadie
Simplies dyn res state's event interface to a single virtual method.
Change 3753766 by Chris.Bunner
Rebuilt volumetric baked lighting test map and updated screenshots.
#jira UE-52322
Change 3755108 by Guillaume.Abadie
Fixes a bug where default dynamic resolution state was created at startup of server build.
#jira UE-52345
Change 3755267 by Mark.Satterthwaite
Fix condition controlling which features are enabled when iOS >= 10.3 - it wasn't working for iOS 11+ which was causing all kinds of problems.
#jira UE-52301
Change 3755811 by Chris.Bunner
Disable some new logging that was causing a stack overflow during EnginePreInit.
#jira UE-52345
Change 3756983 by Mark.Satterthwaite
Prevent different versions of metal_stdlib/ue4_stdlib from causing shader compilation failures due to a time-stamp mismatch between the local file & the PCH. This can happen when working with Xcode Beta releases that change the modification date, but not the content or compiler version, amongst other possibilities.
#jira UE-52073
Change 3757156 by Guillaume.Abadie
Fixes editor compositing with wireframe rendering.
#jira UE-52017
Change 3757435 by Mark.Satterthwaite
Workaround a bug in the MobileSceneCaptureRendering where it was copying the ViewInfo's ViewRect prior to it being configured by the mobile renderer.
#jira UE-52327
Change 3757523 by Uriel.Doyon
Fixed d3ddebug warning with unused inputs
Change 3758318 by Guillaume.Abadie
Cleaner fix for mobile scene captures.
#jira UE-52327
Change 3759541 by Mark.Satterthwaite
Don't enable Manual Vertex Fetch on iOS Metal for the moment as it isn't well tested there and will probably need further changes.
Change 3695086 by Guillaume.Abadie
Render thread dynamic resolution & TAA upsample.
Merging //Tasks/UE4/Dev-DynamicRes/...@3694528 to //UE4/Dev-Rendering/...
New features breakdown:
- TAA upsample compute shader that accepts screen percentage from 50% to 200%, with a faster shader permutation for consoles;
- Material no longer have to deal with BufferUV, and post process material after TAA upsample can sample any scene buffer seamlessly;
- Material texture per view mip bias to produce sharper images with TAA upsample;
- Render thread dynamic resolution heuristic is fully plugable by game code (for VR plugin specific heuristics);
- Dynamic resolution in PIE and game builds;
- Busy time queries in the RHI to be implemented on the different platforms so that the dynamic resolution heuristic can exactly associate GPU frame times with screen percentages in its history;
- Game user settings to enable/disable dynamic resolution;
- In editor viewport screen percentage config to previsualise and test content at different screen percentage.
Fixes:
- Various fixes for algorithms producing different outputs at different screen percentage.
- Various fixes for algorithms sampling outside view rects.
Refactors:
- TAA shader
- Moved some screen percentage specific members from FSceneView to FViewInfo for thread race bullet proofing.
Aknowledgements:
- VR plugins are broken
- DFAO still have some artifacts
Premiliminary review: Marcus.Wassmer
Review for TAA refactor and TAA upsample shader: Brian.Karis
Review for dynamic resolution: Brian.Karis
[CL 3761165 by Chris Bunner in Main branch]
#lockdown Nick.Penwarden
#rb none
Copying //UE4/WEX-Staging to //UE4/Dev-Main (Source: //WEX/Main/Engine @ 3740665)
#lockdown Nick.Penwarden
Change 3739326 by Ben.Zeigler
Change iteration order of depends nodes so it lists hard management references before soft management references, this is better for the UI when lots of references exist
Update text for loading custom asset registry bin to be clearer
Change 3739000 by John.Opila
Caching optimization for text widget desired size.
Change 3713551 by David.Nikdel
Allow Set Properties to recognize Json array values as importable.
Change 3712485 by Josh.May
Added Pete's fix for the PLATFORM_TVOS/PLATFORM_IOS #define conflict introduced by mach-o/loader.h
Change 3700174 by Chris.Babcock
Fix setFilters crash on some Android devices
Change 3691531 by Josh.May
Fixed an intermittent crash that occurred when opening the AssetAuditBrower. AssetManagerEditorModule's CurrentRegistrySource was getting set too early, becoming invalid in the event that RegistrySourceMap is resized.
Change 3688409 by Gil.Gribb
Critical fix for an extremely rare race condition on async IO.
Change 3687529 by josh.may
Force layout recalculations for single-pass layout SScaleBoxes when their final scale is zero. This tends to occur in calls to SearchForWidgetRecursively before a SScaleBox's AllottedGeometry has been calculated.
Change 3684788 by Peter.Sauerbrei
fix for archive generation on the build machines
Change 3684320 by john.opila
Workaround for widgets disappering. Ensuring scale is never 0 so we don't get divide by zero.
Change 3684042 by Peter.Sauerbrei
more logging to figure out why there is not data in the Applicaiton diretory of the archive
Change 3678620 by Ben.Zeigler
Minor text changes to size map
Change 3678314 by Ben.Zeigler
Add Make Collection With References and Audit References to Size Map to easily allow inspecting the specific set of filtered packages in other tools
Change 3677875 by Ben.Zeigler
Fix crash in size map from keeping reference to node after map was resized, and undo the Name->DisplayName rename as it could affect licensees
Change 3676899 by Peter.Sauerbrei
narrowed down to the plist data, trying to figure out if it is missing or not
Change 3676570 by Peter.Sauerbrei
more logging to track down the archive error
Change 3676293 by Peter.Sauerbrei
fix for compile failure on IOS
Change 3676172 by Peter.Sauerbrei
potential fix for missing icons in the ipa when run through the build machines
Change 3673544 by Ben.Zeigler
Sort AllChunksInfo alphabetically so the order is consistent accross build and platforms to facillitate diffing
Change 3671597 by Peter.Sauerbrei
Merging
//UE4/Dev-Mobile/Engine/...
to //WEX/Main/Engine/...
Change 3670932 by Ben.Zeigler
Change it so cooking with the AssetManager writes out AllChunksInfo.csv next to the DevelopmentAssetRegistry, but not the per-chunk csv files as those are not useful. Also made the size counts platform accurate
Change 3670906 by Peter.Sauerbrei
update WEX for building with Xcode 9
Change 3660026 by Josh.May
Moved SWebBrowserView's parent window "searches" to OnPaint. There's definitely something wrong with FindWidgetWindow... Even after deferring SWebBrowserView's calls to FindWidgetWindow until first Tick, the same widget layout artifacts could occur after opening multiple SWebBrowserViews. And, as Nick pointed out in the related email thread, this approach is also more efficient.
Change 3655411 by Josh.May
Ensure SWebBrowserView's parent window searches are deferred until after Construct. We haven't puzzled through it yet, but calling FindWidgetWindow during Construct seems to corrupt some Slate state. Deferring this search until later gets around the issue and makes sense anyway, given the widget isn't added to the hierarchy until after Construct.
Change 3655407 by John.Opila
Sneaking in some stats for SpawnActor.
Change 3654649 by Ben.Zeigler
Refactor SizeMap and ReferenceViewer into the AssetManagerEditor plugin, and delete the old modules.
Fix SizeMap crash that I temporarily added. TreeMap is initialized weirdly
Change 3648912 by Ben.Zeigler
First half of changes to refactor sizemap/reference viewer into the asset manager editor plugin
Add GetAllContentBrowserCommandExtenders to ContentBrowserModule that allows registering commands/keybinds to extend the content browser via plugins
Add GetSharedMenu/ToolbarExtensibilityManager to AssetEditorToolkit that allows extending the generic asset editor via plugin
Move the code to spawn the Reference Viewer and SizeMap into the AssetManagerEditor plugin so these UIs can be tightly bound and share data. This also enables keybinds for Size Map and Audit.
Remove size map from the save as dialog, it created a special modal size map window that will not work after my refactor
Change 3639419 by Ben.Marsh
Use DirectoryInfo instead of DirectoryReference to enumerate projects. Tracking down UHT compile failures on Mac.
Change 3638619 by David.Nikdel
AsyncLoading: Suggested change by Gil to add lock prior to changing LoadPhase to WaitingForHeader (presumably to make FArchiveAsync2::StartReadingHeader's assumption about locking true)
Change 3633562 by Chris.Babcock
Update Android virtual keyboard support
Change 3630564 by Peter.Sauerbrei
fix for the manifest stage problem
Change 3629577 by Chris.Babcock
Fix merge errors in GameActivity.java
Change 3629154 by David.Nikdel
Disable debug device output in shipping builds (even if logs are enabled)
Change 3626542 by John.Opila
Back out changelist 3603452
Undoing the OpenGL load changes as the initial load time was just too damn high!
Change 3620472 by David.Nikdel
Fix from Nick to fix a BP that crashes on Compile
Change 3618090 by Josh.May
Reset inertial scrolling for SScrollboxes and STableView-based Slate widgets when scrolling to specific scroll offsets.
Change 3613980 by Chris.Babcock
Fix issue with Android password keyboard input
Change 3603825 by John.Opila
Shader change doesn't seem to like standalone PC.
Change 3603452 by John.Opila
Moving openGL shader compilation into loading instead of at the last minute.
Change 3593008 by David.Nikdel
Merging CL 3504471
from //Fortnite/Dev-Cinematics/Engine/...
to //WEX/Main/Engine/...
----------------------------------------
Sequencer: Delay mouse capture until drag for sequencer time slider
- Fixes context menus not opening as a result of mouse capture being taken on mouse down
=================================================================================================
THESE CHANGES TOUCH MULTIPLE PLATFORMS
=================================================================================================
Change 3739931 by Ben.Zeigler
changes to some asset manager code modified on WEX, and fix several FStringAssetReference->FSoftObjectPath
Change 3723451 by Josh.May
Exposed OnBeforePopup to UMG and Blueprint for UWebBrowser. This is triggered by the CEFBrowserHandler when attempting to open hyperlinks targeting _blank and, when not handled, would result in the page never loading.
Added OnBeforePopup handling for the HTMLNewsWidget, ensuring the URLs are opened in an external browser.
Change 3711256 by Dmitriy.Dyomin
Fixed: Friend list invalidation panel relative transform caching issues
Also fixed issues with and set slate.cacherenderdata=0 for better batching
Change 3698695 by Josh.May
Made the UMG default font overridable via config, allowing us to replace it with a game-scope localized Font asset. If there's a better place for this mechanism/accessor to live, please let me know.
Added a new 'Default' font that replicates '/Engine/EngineFonts/Roboto'. This also has a localized Font asset variant for zh-Hans.
Change 3676085 by Josh.May
Implemented MulticastBroadcastReceiver, a BroadcastReceiver capable of "multicasting" intents to other receivers. AppsFlyer defines a similar MultiInstallBroadcastReceiver class specific to the INSTALL_REFERRER intent, but it MUST be the very first one defined (cannot be guaranteed in our build pipeline AFAIK).
Added MulticastBroadcastReceiver (for INSTALL_REFERRER) to the AndroidManifest generation logic, allowing BOTH Adjust and AppsFlyer to receive the intent.
Added dev channel support for AndroidAppsFlyer, enabled conditionally based on shipping/distribution and whether or not a valid AppsFlyerDevChannel name is specified. For WEX, our dev channel is WEX_Dev.
Fixed AppsFlyer_EventAttribute's Java class lookups and constructor signature.
Change 3670860 by Ben.Zeigler
First version of improvements to tools to analyze chunks
Size Map and Reference Viewer now support reading cooked asset data and displaying chunks. Changing the platform dropdown in the Asset Audit window switches the other windows as well
Asset Audit window now has "Add Chunks" button, and selecting AllTypes in the Primary Asset drop down will add all primary assets
Size Map now shows Disk Size by default, and supports a right click context menu
Significant UI improvements to all 3 tools, including keybind support
Split Manage references into Hard and Soft, where Hard are set explicitly and soft are inherited. This allows determining why an asset was included in a chunk/primary asset
When the AssetManager builds management information for the audit browser/cooker, it now precomputes a chunk mapping for relevant assets. PackageChunkType is used to refer to these virtual primary assets
Add callback to content browser delegates to handle adding arbitrary FAssetData to an asset view, used to show chunks
Several changes to the ITreeMap UI used by size map
Change 3670290 by Josh.May
Added AppleAppID configs for AppsFlyer.
Added AdSupport and iAd frameworks for IOSAppsFlyer. According to the AppsFlyer documentation, these are required for IDFA and Apple Search Ads tracking.
Change 3643531 by Peter.Sauerbrei
fix for save game location and certain data backed up to the cloud when it shouldn't
Change 3629303 by Ben.Zeigler
Merge fix for shared ptr corruption in async loading thread from Main, and enable asnyc loading thread for WEX
Copy of CL #3623261 and 3625806
Change 3629219 by Peter.Sauerbrei
Merging using WEX_Main_to_UE4_WEX_Staging
bringing over the files that Stan didn't have access to
Change 3629063 by Stanley.Hayes
Engine Merge: Merging using WEX_Main_to_UE4_WEX_Staging(flipped)
Change 3618988 by Josh.May
Reimplemented DevicePerformanceBucket-based WorldMap class selection to account for the WorldMap actor being pre-serialized into the UMAP.
On a related note, ChildActorComponents marked as "editor only" now mark their spawned Actors as Transient to prevent them from getting serialized at cook-time.
Change 3597981 by Josh.May
Converted WExpCampaignDefinition's RegionDefinition refs back to hard references and, to compensate, converted WExpZoneDefinition's ZoneBoss refs to soft references. This moves the RegionDefinitions and ZoneDefinitions from chunk 2 to chunk 1 without pulling in assets for the ZoneBosses. This also allows us to grab the ZoneBoss refs during UWExpAssetManager::GetMainMenuAssetList.
Reworked UWExpAssetManager::GetMainMenuAssetList and UWExpAssetManager::GetLevelAssetList to build more "complete" asset lists by expanding lists of PrimaryAssetIds.
Tweaked the WorldMap's ZoneBoss spawning to account for the switch to AssetPtrs.
Change 3581214 by Josh.Markiewicz
added cookie deletion for Google on logout
[CL 3750870 by Stanley Hayes in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3441680 by Uriel.Doyon
Added units to point light intensity, to allow the user to specify the value in candelas or lumens.
New point light actors now configure the intensity in candelas by default.
Replaced viewport exposure settings by an EV100 slider.
Hidding the tone mapper in the show flag now still applies the exposure.
Added a new AutoExposure method called EV100 which allows to specify :
- MinEV100, MaxEV100
- Calibration Constnat
- Exposure Compensation
#jira UE-42783
Change 3454934 by Chris.Bunner
Backing out changelists 3441680, 3454636 and 3454844 for the sake of integration stability.
Change 3629223 by Rolando.Caloca
DR - Rollback //UE4/Dev-Rendering/Engine/Source/Runtime/VulkanRHI to changelist 3627847
Change 3629708 by Rolando.Caloca
DR - vk - Redo some changes from DevMobile
3601439
3604186
3606672
3617383
3617474
3617483
Change 3636145 by Chris.Bunner
Linux compile fix.
Change 3636198 by Chris.Bunner
Include fix.
Change 3636225 by Daniel.Wright
Removed spammy draw event
Change 3636397 by Daniel.Wright
Visualize volumetric lightmaps uses 18% grey in lit mode
Change 3636398 by Daniel.Wright
Translucency lighting modes work with Volumetric Lightmaps
* The old Indirect Lighting Cache always interpolated one sample per object, while Volumetric lightmaps operate at the frequency of the Translucency Lighting Mode (per-vertex or per-pixel) so the lighting accuracy is much higher.
* The old ILC always applied the single lighting sample with a per-pixel normal, even in per-vertex lighting modes
* Volumetric PerVertex NonDirectional (cheapest lit translucency) went from 74 instructions down to 42
* Volumetric Directional went from 104 up to 122
Change 3636604 by Chris.Bunner
Added a material translation error on identically named/associated but differently valued parameters as this will cause one of them to be lost during parameter evaluation, the result being "random".
Change 3637668 by Rolando.Caloca
DR - hlslcc - Skip preprocessor when not required which reduces peak mem consumption by ~500 MB
- Fix missing indexing on intrinsic return type
Change 3638541 by Chris.Bunner
Fixed editor materials - Skip hardcoded parameter names that we rely on being overridden when checking for non-matching duplicate parameters.
Change 3638798 by Mark.Satterthwaite
Rebuilt hlslcc for Mac for Rolando's 3637668 changes.
Change 3638861 by Mark.Satterthwaite
Missed making a log verbose in the Metal ring-buffer.
Change 3639482 by Rolando.Caloca
DR - vk - Minor fixes
Change 3639909 by Michael.Lentine
Add special case for struct needed to compile.
Workaround issues in parser such that (x)[0] is replaced with x[0] and (x).a is replaced with x.a.
Change 3639916 by Michael.Lentine
Spelling fix.
Change 3640053 by Mark.Satterthwaite
Fix Desktop Forward rendering on Nvidia Metal rendering on macOS by modifying the shader and runtime to treat ForwardLocalLightBuffer data as uint rather than float and invert the use of as*() casts.
Tthis is *necessary* to avoid a bug/limitation of Nvidia's current Metal shader compiler that flushes all denorm values to zero on load from any resource. AMD & iOS Metal only flush-to-zero when sampling from textures and that's what Apple regard as the expected behaviour. I have however asked them to standardise on the D3D behaviour of preserving denorms on all load, move (incl. min/max/as*()-casts) & store operations. This won't happen in the current or imminent OS/Xcode releases.
Now only Intel Metal is broken and their problems run deeper.
#jira UE-48881
Change 3640983 by Olaf.Piesche
Cache the depth buffer collision shader for GPU particles even when simple forward is enabled, as that can be turned off at runtime.
#jira UE-48799
Change 3641480 by Michael.Lentine
Add min16float to FP16Math
Change 3642442 by Mark.Satterthwaite
Fix the native shader libraries again & undo the increase in cook time from changes to the way FShaderCodeLibrary was compiling & deduplicating the shaders.
- Remvoe the single linear array for accumulated shader code: reallocating this is tremendously expensive and will double the time taken to iteratively cook large projects.
- Uncompress the shader data for the native library system so that it actually works again.
- Fix some errant change to the Metal compiler that was trying to wedge the fully compiled library into the single Metal library which is 100% bogus.
#jira UE-49192
Change 3642919 by Chris.Bunner
Reverted unintended changes to material static parameter set serialization.
Bumped material version to force re-serialization.
Fixed a few typos.
Change 3642923 by Richard.Wallis
Fix for "Pixel Inspector On" message not disappearing when closing pixel inspector window while on. Handle tab closed events to cancel the pixel inspector if window closed while running.
#jira UE-46504
Change 3643296 by Michael.Lentine
Convert all structures that aren't use globally to halfs.
Change 3643381 by Ryan.Brucks
New Plugin allowing Blueprint Texture and RT reads as well as MIC creation and modification.
Change 3643929 by Ben.Salem
Added better precision on thread values in Perf Monitor. Also added global thread values to go with per-world ones to help track down the most accurate numbers possible.
#tests Ran locally, changes validated by benj
Change 3644203 by Mark.Satterthwaite
Refactor mtlpp a little bit to make the compiler do more of the work & update for all the latest publicly exposed APIs.
Change 3644336 by Mark.Satterthwaite
Ref-count the mtlpp Device object so that it can be the repository for IMP caching - now just have to go through the types created from a specific device and have them keep a reference....
Change 3644431 by Uriel.Doyon
Added a intensity units property, for point lights and spot lights, that can be set to Candelas, Lumens or Unitless (legacy).
The default units value for newly placed point lights and spot lights is configured in the project settings.
Spot lights configured in lumens have their whole luminous energy redirected toward the cone.
This means that changing the outer cone angle, changes the spot light brightness.
New exposure menu that uses an EV100 slider.
New post process settings "camera" tab regrouping : ShutterSpeed, ISO, Aperture and ExposureCompensation.
Post process settings "auto exposure" tab renamed "exposure".
The calibration constant for "Auto Exposure Basic" is now configurable in the advanced tab.
The auto exposure method is renamed "Metering Mode"
New pre-exposure feature that allows the engine to apply the previous frame exposure before writing to the scene color.
This allows the engine to render the scene with similar range than the final color (after exposure), and avoid arithmetic overflow for low precision RT formats.
The amount of exposure applied directly is called pre-exposure, and is compensated by a smaller post-exposure value.
Change 3645098 by Marcus.Wassmer
Don't add meshes twice when in simpleforward
Change 3645551 by Daniel.Wright
VolumetricScatteringIntensity is greyed out based on Mobility
Change 3645707 by Chris.Bunner
Skip empty parameters when identifying invalid duplicates during material translation.
Change 3646225 by Uriel.Doyon
Texture streaming support for particle sub-uv
Change 3646323 by Rolando.Caloca
DR - vk - Fix bad update texture 2/3d parameters
Change 3646463 by Mark.Satterthwaite
Metal shader files that can serve as extensions to the metal_stdlib rather than trying to wedge even more into the shader compiler. Might as well leverage Metal's C++'ness.
Currently just a skeleton of a buffer type that would better emulate HLSL Buffer<>/RWBuffer<> objects.
Change 3646727 by Marcus.Wassmer
fix linux and nonunity compiles
Change 3647777 by Rolando.Caloca
DR - Mobile Vulkan optimization
Change 3647822 by Lauren.Ridge
Layers are now renameable (except Layer 0 is always "Background") in Material Layers Functions
Change 3647918 by Chris.Bunner
Static analysis fixes - Monolithic include, forward delcared enums, locally shadowed variable.
Change 3648010 by Michael.Lentine
Don't use min16float by default.
Change 3648015 by Michael.Lentine
Add special case fixes for min16float as well as half on console.
Change 3648024 by Lauren.Ridge
Moving MaterialLayersFunctions Layer naming to EditorOnly wrappers
Change 3648127 by Lauren.Ridge
Moving name getter functionality to FMaterialLayersFunctions
Change 3648265 by Lauren.Ridge
Fixing loctext key
Change 3648293 by Rolando.Caloca
DR - D3D12 fix
Change 3648326 by Rolando.Caloca
DR - vk - Added subrectangle support when updating Texture2D and Texture3D
Change 3648522 by Rolando.Caloca
DR - vk - Do not try to create a BufferView of a StructuredBuffer (no valid pixelformat)
Change 3648612 by Rolando.Caloca
DR - vk - Implement RHIMapStagingSurface
Change 3648673 by Rolando.Caloca
DR - vk - Reduce Vulkan pipeline cache disk size by filtering duplicated shader ucodes
Change 3648913 by Arne.Schober
DR - Performance optimization during HLod traversal. using vector load and avoiding array copy by passing it through reference instead through value.
Change 3649443 by Daniel.Wright
Exposed EmissiveBoost, since Lightmass supports Emissive areas on meshes
Change 3650436 by Mark.Satterthwaite
Implemented the necessary extensions for Metal shading language to move lots of complexity out of MetalBackend and into actual shader code to make life *vastly* simpler.
- Full ue4::typed_buffer<T> wrapper type & associated ue4::buffer<>/ue4::buffer_atomic<> API - totally untested but should be functionally equivalent to HLSL Buffer<T>/RWBuffer<T>.
- All the sensible casts I can think of are now defined in ue4_format - any additional ones can just be added. The enurm of formats needs to be exposed to MetalRHI so we upload the correct values, but this should be trivial.
- Added a full series of wrappers around texturecube_array and depthcube_array to insulate code from whether it is backed by a real cube_array or a texture2d_array so we don't have to maintain complicated variants for new/old iOS devices.
- Added implementations for a bunch of annoying HLSL & GLSL intrinsics that were being matched by name + reverse_bits which needs a custom implementation on old shader standards.
Change 3650861 by Rolando.Caloca
DR - vk - Fix warnings
Change 3651116 by Rolando.Caloca
DR - vk - Support for compressed saved PSO cache
Change 3651321 by Rolando.Caloca
DR - vk - Prep for load multiple PSO files
Change 3651337 by Chris.Bunner
Editor-only default material fallback (hardcoded material).
#jira UE-48404
Change 3651839 by Rolando.Caloca
DR - vk - Integrate minor pipeline changes
Change 3652042 by Mark.Satterthwaite
More work on mtlpp:
- Selector class that caches IMP from SEL & Class.
- Fixes to ns::Error.
- Added test case application for testing denorm & float reinterpret-cast behaviour on Metal.
Change 3652370 by Uriel.Doyon
New "stat StreamingOverview" giving high level metrics of texture usage.
New function ResetAverageRequiredTexturePoolSize() and GetAverageRequiredTexturePoolSize() giving the average ideal value for "r.streaming.poolsize".
Change 3653658 by Chris.Bunner
Material vertex interpolator for sprite and gpu sprite particles.
Change 3653676 by Rolando.Caloca
DR - vk - Integrate changes: Multiple PSO caches, shared ucode & compression, size reduction up to 80%
Change 3653940 by Daniel.Wright
Moved Volumetric Lightmap textures out of FScene and into FPrecomputedVolumetricLightmapData so their lifetime can match the MapBuildData. This allows tossing the source BulkData in game after RHI texture creation even though switching lighting scenarios does Release/InitializeRenderingResources multiple times.
Change 3653956 by Daniel.Wright
Fixed leak of BatchVisibilityId's
Change 3653991 by Daniel.Wright
Fixed missing include
Change 3654013 by Daniel.Wright
Refactored reflection capture composite SM4 handling, now forces fully rough even if !REFLECTION_COMPOSITE_USE_BLENDED_REFLECTION_CAPTURES (forward shading default)
Change 3654018 by Daniel.Wright
Remove unused SM4 reflection capture cubemap
Change 3654118 by Rolando.Caloca
DR - vk - Fix for queries; support for r.Vulkan.ProfileCmdBuffers to only time cmd buffers w/o gpu bubbles
Change 3654339 by Chris.Bunner
Temporarily disabed a material error whilst working with content teams to fix the introduced bugs.
Change 3654534 by Daniel.Wright
Editor is only supported on Feature Level 5 platforms. Added a message box and exit when SM4 is detected (d3d10, OpenGL 3).
Change 3654751 by Rolando.Caloca
DR - vk - Add readback for RGB10A2; minor optimization
Change 3654940 by Rolando.Caloca
DR - vk - Warning fix
Change 3655104 by Mark.Satterthwaite
Add a bunch of code to mtlpp to wrap the Xcode command-line Metal tools and use them to provide a convenient command-line tool that can compile two Metal shaders & diff the resulting AIR to make debugging easier. Obviously this only works on macOS.
Change 3655173 by Jian.Ru
Render dithered material as masked if a stencil prepass is not used
#jira UE-50064, UE-49537
Change 3655479 by Daniel.Wright
Fixed HandleLegacyMapBuildData not getting called on P maps loaded in the editor, which apparently was dropped in an integration error, causing all legacy maps (before the BuildData change) to lose their built lighting.
Change 3656341 by Richard.Wallis
Metal validation checks to test for drawing of the end of a vertex stream as seen in UE-48172 (Landscape Mesh Flickers Rapidly When Using Sculpting Landscape). This is not a fix for that but just a error log to catch the bad draw calls.
#jira UE-48172
Change 3656844 by Rolando.Caloca
DR - vk - Avoid microcode copy
- Fix link error
Change 3656894 by Rolando.Caloca
DR - vk - Enable api dump without needing validation enabled
Change 3656915 by Marcus.Wassmer
Fix DX12 buffer lock for read
Change 3657166 by Rolando.Caloca
DR - vk - Proper fix for api dump layer
Change 3657401 by Rolando.Caloca
DR - vk - Linux compile fix
Change 3657607 by Rolando.Caloca
DR - vk - Prep for changes
Change 3658722 by Chris.Bunner
Refresh shared texture samplers when changing max ansiotropy level (e.g. scalability settings).
#jira UE-30086
Change 3659499 by Daniel.Wright
Moved bEnableAutoLODGeneration to LOD category so it's not the only one in HLOD category
Change 3659644 by Mark.Satterthwaite
D3D11 equivalent to 3656341 (only enabled when -d3ddebug is) to validate DrawIndexedPrimitives isn't trying to draw off the end of the instanced vertex streams which has inconsistent (and potentially undefined) behaviour across the various APIs we support. This fires when painting the landscape because the code attempts to render with a FirstInstance value that is as large as the number of elements in the instance-data streams which D3D11 drivers silently fails to render, but which Metal (& probably Vulkan too) will renders as garbage. This pattern is wrong & will be even more dangerous in a Draw*Indirect world.
#jira UE-48172
Change 3659831 by Rolando.Caloca
DR - vk - Copy 3657927 (fixes for Mali)
Change 3661921 by Rolando.Caloca
DR - vk - Minor log/info changes
Change 3661985 by Mark.Satterthwaite
Change the Metal sampler filter translation to better match D3D.
Change 3662050 by Richard.Wallis
Compile fix for Metal enums.
Change 3662062 by Rolando.Caloca
DR - Copy from 3662060
- OpenGL cloth fix
Change 3662100 by Mark.Satterthwaite
Use a temporary file and an atomic move to put the Metal PCH into the right place and reduce the number of false PCH compile failures on the build farm.
Change 3662253 by Daniel.Wright
Reflection Captures support Lighting Scenarios without recapturing
* Reflection Captures are now part of the Map Build
* Modifying a capture in editor will display a preview, but game can only display built captures (black for unbuilt with screen message)
* Reflection Capture build data moved to the BuildData package
* Building lighting / reflection captures no longer dirties ULevels
* Sky lights which capture the scene now work correctly with Lighting Scenarios
* Lighting Scenarios must now be loaded for each time they are made visible (no switching back and forth while keeping both loaded)
Change 3663215 by Mark.Satterthwaite
Initial, incomplete, tool added to mtlpp to help debug macOS Internal Compiler Errors - the mtlpp command-line tool can be fed the debug output from UE4 along with compiler settings to automatically compile shaders and construct the render pipeline that crashes the runtime compiler.
So far only macOS render-pipeline-states are supported currently.
Change 3663293 by Mark.Satterthwaite
Added Metal device selection to the mtlpp command-line tool so I can quickly test compile on dual-GPU Macbook Pro's.
Change 3663471 by Daniel.Wright
Reflection Capture Builds no longer use UEditorLevelUtils::SetLevelVisibility to control level visibility, which streams out sublevels, modifying nav mesh
Fixed status updates during Reflection Capture Build
Captures overflowing GMaxNumReflectionCaptures now log a warning instead of pretending that they built successfully
Change 3664056 by Rolando.Caloca
DR - Linux compile fix
Change 3664460 by Daniel.Wright
Restored unused LoadTimesObjectVersion, packages saved with it will issue a warning on load
Change 3664802 by Uriel.Doyon
Fixed flash created by pre-exposure when the value changed dramatically between frames
Change 3664890 by Daniel.Wright
Created 'Stat MapBuildData' to track the memory size of lighting and reflection capture build outputs
Change 3665163 by Rolando.Caloca
DR - Copy from 3665156
- Gracefully fail when there are mem leaks exiting Vulkan
Change 3665629 by Daniel.Wright
Only Surface domain materials cast shadows in Lightmass
Change 3665855 by Marcus.Wassmer
PR #4032: Fix comparison of SceneColorFormat (Contributed by Hybrid0)
Change 3666707 by Guillaume.Abadie
Replaces some custom material node to get View.BufferSizeAndInvSize with ViewProperty material expression in some engine material functions.
Change 3667239 by Rolando.Caloca
DR - Use hlslcc define for common issues
Change 3668108 by Brian.Karis
Disabled to Catmull-Rom filter. Too many flickering issues. Disabled antiflicker as well.
Change 3668157 by Mark.Satterthwaite
In the prototype Metal stdlib extension library add inline versions of the D3D SM6 "wave" intrinsics that can be expressed in terms of Metal 2.0 simd/quad group operations (macOS=simd, iOS=quad). These are unlikely to be as efficient as direct intrinsics but they should be functionally equivalent.
These functions are not available *yet* as I still need to hook the ue4_stdlib into MetalShaderFormat & MetalRHI.
The following HLSL 6 functions are implemented:
WaveAllBitAnd
WaveAllMax
WaveAllMin
WaveAllBitOr
WaveAllBitXor
WaveAllEqual
WaveAllProduct
WaveAllSum
WaveAllTrue
WaveAnyTrue
WaveBallot
WaveGetLaneCount
WaveGetLaneIndex
WaveOnce
WavePrefixProduct
WavePrefixSum
WaveReadFirstLane
WaveReadLaneAt
The following can't be implemented in Metal as of Metal 2.0 AFAIK:
WaveGetOrderedIndex
WaveIsHelperLane
GlobalOrderedCountIncrement
QuadReadLaneAt
QuadSwapX
QuadSwapY
Change 3668260 by Olaf.Piesche
Cache particle collision shaders regardless of simple forward state
Missed this checkin
#jira FORT-51307
Change 3669243 by Daniel.Wright
Bumped shader version to propagate FReflectionCaptureData rename
Change 3669369 by Mark.Satterthwaite
Duplicating Metal changes from //UE4/Release-4.18 to Dev-Rendering (//UE4/Dev-Rendering)
3662503 Collapse system-variables to one declaration in MetalUtils to avoid later shader compiler errors when they are specified more than once, which is seemingly permissable. Fixes volumetric fog.
#jira UE-50293
3665210 - Invalidate all Metal shaders again to force a recompile to workaround another driver bug.
- On macOS compact the clip-distance value into a single output to avoid bugs in the runtime pipeline compilers.
- In SCW's direct-compile mode MetalShaderForamt should always dump the resulting Metal shader and print any errors we encounter to the log.
- Change FGenerateMetalVisitor to take a FMetalCodeBackend& not a FMetalCodeBackend* to avoid a lot of pointless pointer validation.
#jira UE-50244
3665429 Fix a crash on shutdown due to MetalRHI caching vertex-declarations beyond the lifetime of the RHI by moving the cache into the FMetalDynamicRHI itself.
#jira UE-50356
3665613 Fix DistanceField rendering on Metal & the associated validation layer error when it is enabled - MetalRHI can't use the same approach as Vulkan without a bit more work.
#jira UE-50364
3667584 Fix black flickering on some materials that use World Position Offset - the Metal sincos intrinsic comes into two flavours for single precision floats and we want the precise version not the fast version. The "cross" implementation needed a few more fma's too and this change has to invalidate Metal shaders again to take effect.
#jira UE-50399
3667805 Changing sincos in Metal fragment shaders had undesirable side-effects - the compiler is now re-associating another floating point operation - so limit the use of precise::sincos to vertex-shaders for now. This fixes the WPO materials without causing any other obvious problems.
#jira UE-50399
Change 3669912 by Mark.Satterthwaite
Fix Metal compilation for PCSS shadows - the HLSL that is compiled uses both SampleCmp and Sample which GLSL disallows (shadowSampler types in GLSL only allow SampleCmp) but is perfectly valid in Metal where only the texture type declaration changes.
Duplicate MetalBackend.cpp changes from Joe.Graf's: 3667781
Fixed an extra ) being emitted during HLSL->Metal translation
Added depthcube_array support per Mark's instructions
Change 3670308 by Mark.Satterthwaite
Missing autorelease pool blocks in MetalTexture functions.
Change 3670989 by Mark.Satterthwaite
Stop trying to be so clever with Metal clip-distances: AMD have a bug in 10.13.0 that means we can only emit one clip-distance value, so simply emit the value with the lowest index (we have handily ordered them by importance!) and let the others become user-interpolators until this bug is resolved in a macOS SU (according to Max@AMD the fix is in, just not in time for 4.18). This means planar reflections will work, VR no-multi-view-fallback will work & layered rendering will work either individually or together - the difference being that on macOS *only* the VR no-multi-view-fallback & layered rendering paths may be slower when combined with the global clip plane.
Hit & run fix to MetalCaptureManager and availability of tile-shader functions while I'm here.
#jira UE-50518
Change 3671014 by Mark.Satterthwaite
Correct handling of RowLinearPVRTC blits for iOS Metal desired for Ocean.
Change 3671575 by Rolando.Caloca
DR - Copy 3668036
Stop syncing CPU with GPU on Vulkan
Change 3671637 by Rolando.Caloca
DR - Copy 3670937
Fixes Vulkan editor outline
Change 3672309 by Mark.Satterthwaite
Submitted on behalf of Richard Wallis:
Only disable V-Sync on Metal in macOS 10.13 when running in "true" fullscreen mode (where we switch display modes & forbid switching spaces or tabbing out) so that you won't see the rainbow artefact caused by being out-of-sync with WindowServer, only the tearing you'd expect when V-Sync is disabled. We'll chat with Apple about whether there is a way to avoid the rainbow artefact when switching spaces in Windowed Fullscreen with displaySync disabled.
#jira UE-50134
Change 3672314 by Daniel.Wright
User friendly message dialog for when a required key is missing from BaseLightmass.ini
Change 3672315 by Daniel.Wright
Assert on load when a uniform buffer struct goes missing, instead of a crash on save
Change 3672476 by Chris.Bunner
Removed duplicate material instance editor command binding that appeared in a task stream merge.
Change 3672626 by Mark.Satterthwaite
Move the ue4_stdlib.metal extensions to MetalRHI's Public header directory as it'll need to be available to both modules and that's easier to accomplish from here.
Change 3672643 by Mark.Satterthwaite
iOS compilation fixes.
Change 3672728 by Daniel.Wright
Fixed encoded HDR reflection captures
Change 3672753 by Jian.Ru
Fix texture swimming
#jira UE-49369
Change 3672815 by Daniel.Wright
Tooltip for build button explaining why it might be disabled
Change 3673350 by Rolando.Caloca
DR - vk - Do not reallocate memory every draw call
Change 3673501 by Rolando.Caloca
DR - vk - Remove more reallocations
Change 3673505 by Rolando.Caloca
DR - Remove global variable with semantic
Change 3673514 by Rolando.Caloca
DR - vk - compile fix
Change 3675899 by Chris.Bunner
Fixed support for editor-time transient parameter overrides. This happens when a compiled material's scalar or vector parameter is changed in value only, the active material resources should also update and be reverted when the material graph is closed. The code was incorrectly pulling base parameters from expressions instead of the actual uniform.
Change 3676843 by Arne.Schober
DR - UE-49473 - Fix Stateleak caused by custom drawer in the long for loop, where the depth stencil state might not be reset in a subsequent itteration of the loop.
Change 3678269 by Daniel.Wright
Fixed Encoded HDR reflection capture data getting the wrong Brightness applied when cooking
Change 3678543 by Daniel.Wright
MapBuildData now tosses the unneeded reflection capture format on load. Affects target platforms that require multiple formats at cook time.
Change 3679602 by Jian.Ru
Fix up mesh decal shader complexity view mode
#jira UE-50272
Change 3679959 by Chris.Bunner
Fixed logic on overriden vector parameter retrieval for material instances checking a function owned parameter.
#jira UE-50712
Change 3679998 by Daniel.Wright
Fixed crash when precomputing static visibility only
[CL 3680175 by Marcus Wassmer in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3567301 by Arciel.Rekman
Linux: fix for importing failure when clicking shortcuts (UE-47932).
- Slate dialog would return incorrect relative paths (not matching CWD) if Engine or Project shortcuts were used.
#jira UE-47932
Change 3567687 by Arciel.Rekman
Minor fixes to gdb pretty printers by icculus.
Change 3568024 by Arciel.Rekman
Made SDL_SetWindowInputFocus() wait until window is viewable (UE-33369).
- Pull request #2608 contributed by Ereski.
- Updated x86_64 lib only (anticipating more changes to SDL).
#coderview Cengiz.Terzibas, Ryan.Gordon
Change 3568173 by Max.Chen
Movie Scene Capture: Delay on shot boundaries by setting the sequencer play rate to 0.
This allows particles, TAA, and other effects to settle on the shot cuts.
#jira UE-44598
Change 3568174 by Max.Chen
Sequencer: Added option to rerun construction scripts on bound actors in the sequence every frame.
#jira UE-31193
Change 3568331 by Matt.Kuhlenschmidt
PR #3850: Add extensible source navigation service (Contributed by mhutch)
Change 3568350 by Matt.Kuhlenschmidt
PR #3851: Add argument to pass params to standalone play session (Contributed by mhutch)
Change 3568387 by Matt.Kuhlenschmidt
PR #3852: Add FEditorDelegates::BeginLocalPlay event (Contributed by mhutch)
Change 3568541 by Arciel.Rekman
Merged Icculus' patch for copy-paste (UE-40071).
- Alas does not seem to fix inability to copy/paste between Output log and kate.
- Updated x86_64 lib only (anticipating more changes).
Change 3568547 by Arciel.Rekman
Fix OpenGL queries reused after deletion.
Change 3568790 by Matt.Kuhlenschmidt
PR #3857: Loading screen widgets not scaled correctly (Contributed by projectgheist)
Change 3568900 by Alexis.Matte
Fix the fbx re-import factory handler to say failed in case there was no geometry to import.
#jira UE-47506
Change 3568902 by Alexis.Matte
Reduce memory footprint when importing large FBX scene PR #3834
#jira UE-47833
Change 3569061 by Arciel.Rekman
Linux: remove unnecessary symbols for MSVC visualizers.
- Reported by ASan as collision because they exist in each DSO.
Change 3569782 by Cody.Albert
Updated ImportAssets Commandlet help text to properly reflect supported features.
Change 3569843 by Arciel.Rekman
SDL: add logic to select headless EGL device.
- SDL will try to guess which device is GPU using CUDA device id (can also be hinted explicitly).
- Also fixes the problem of engine not starting on some drivers that don't support the necessary EGL extensions.
Change 3570234 by Max.Chen
Sequencer: Import FBX settings. Added settings to toggle force front x axis and whether to create cameras that don't already exist in the level.
#jira UE-46754
Change 3570578 by Arciel.Rekman
Linux: make FAnsiMalloc compatible with malloc()/free().
- Prerequisite for ASan. Also helps fringe cases when we have to use FAnsiMalloc.
Change 3571015 by Alexis.Matte
Issue warning when we found zero normal, tangent or binormal
#jira UE-46419
Change 3571376 by Jamie.Dale
Force a unique package localization ID when loading packages for diffing
Change 3571412 by Jamie.Dale
Removed unused setting
Change 3571487 by Alexis.Matte
fix speed tree import cancel workflow
#jira UE-47482
Change 3571614 by Jamie.Dale
Games now use the native culture of any of the game targets as the fallback (rather than always using English)
This replaces the previously removed redundant setting from CL# 3571412
Change 3572649 by Jamie.Dale
SavePackageHelper now always honors KeepObjectFlags
Change 3572730 by Matt.Kuhlenschmidt
Guard against crash in the details panel when there is a message in the queue and something scrolls into view when the list has been invalidated
#jira UE-48037
Change 3572773 by Matt.Kuhlenschmidt
Guard against high res screenshot crashing if the requested image size doesnt match the image data size
#jira UE-47765
Change 3572813 by Michael.Trepka
Workaround for a mysterious issue in Xcode 9 beta 3 and 4 which makes it generate -Wnullability-inferred-on-nested-type warnings/errors in MetalDebugCommandEncoder.h even though we tell Clang to ignore them in MacPlatformCompilerPreSetup.h
Change 3573043 by Arciel.Rekman
FAnsiMalloc: fix compile issue (UE-48066).
#jira UE-48066
Change 3573236 by Arciel.Rekman
Linux: add UnrealLightmass to the installed build.
- Was also requested by a licensee on UDN.
Change 3573705 by Arciel.Rekman
SDL: update UE4 fork to the latest trunk (UETOOL-1242).
- Revision 11184 form 2017-08-04: http://hg.libsdl.org/SDL/rev/04063928c4a8
- Change by icculus (Ryan Gordon).
- Rebuilt x86_64 library only for now.
Change 3573741 by Arciel.Rekman
Fix crash when capturing a movie (UE-48093).
#jira UE-48093
Change 3574389 by Max.Chen
Sequencer: Array bounds check.
#jira UE-48095
Change 3574399 by Max.Chen
Sequencer: Fix crash in removing delegate
#jira UE-47461
Change 3574415 by Max.Chen
Sequencer: Put level visibility tracks in the SpawnObjects evaluation group to ensure levels are streamed before any possessable bindings are resolved
Change 3574416 by Max.Chen
Prevent slow task feedback from performing slow operations (flushing rendering commands, checking if shaders are initialized) when there are no modal dialogs open
Change 3574726 by Matt.Kuhlenschmidt
Focus the details view when actor selection changes if it is not focused
Change 3574922 by Michael.Trepka
Copy of CL 3574653 by Richard.Wallis
XCode Beta 4 Compile fixes. "Inferring '_Nonnull' for pointer type within array is deprecated "
Change 3576525 by Nick.Darnell
Editor - Data table rows names sort correctly in the property customization.
Blueprint - Fixing some crashes due to holding onto raw pointers instead of TWeakObjectPtrs.
UMG - SetWidgetClass now reinstances the widget if you change it at runtime.
Editor - Deleting actors that are still referenced now at least logs to the console what still references it.
Change 3576714 by Nick.Darnell
Editor - Build fix.
Change 3576770 by Jamie.Dale
Removed some dead code
It seems to be left over from the first attempt at stable localization keys
Change 3578433 by Matt.Kuhlenschmidt
Fix content browser settings being per project and having created a "Global" category for one setting
Change 3578556 by Max.Chen
Editor: Fix toolbar shared ref which was keeping the viewport toolbar around when switching between default and cinematic viewports.
#jira UE-48125
Change 3578561 by Matt.Kuhlenschmidt
Fix USD importing not respecting DestinationPath for automated import
Change 3580124 by Matt.Kuhlenschmidt
Fix bogus warning message when a property has an editcondition that is not marked edit aynwhere. This has always been supported and is the correct way to make an editcondition
Change 3581936 by Jamie.Dale
Restoring defaults for UContentBrowserSettings
Change 3582039 by Matt.Kuhlenschmidt
High DPI mode changes
- Editor viewport screen percentage is now adjusted automatically to account for DPI scaling. By default the scene will be rendered at a lower resolution based on screen percentage calculated based on 100/DPIScale. Users can override this automatic calcuation in the performance options if desired.
- DPI awareness is only set on windows in the editor now (still disabled by default)
- Fixed hit proxy calculation not working properly with screen percentage
- Developers can now register a delegate with SlateApplication to tell when a window's DPI changes
Change 3582049 by Matt.Kuhlenschmidt
Fix color picker not properly converting FColor properties back to gamma space
Change 3582054 by Matt.Kuhlenschmidt
Fix mac menus updating during unsafe times such as modal windows and slow tasks
#jira UE-47874
Change 3582084 by Jamie.Dale
Make sure to update the rendering resources for the active world if reloading its map build data
This prevents a crash in the renderer due to it holding onto stale data
Change 3582257 by Matt.Kuhlenschmidt
Fix widget component spawning widgets on cook
#jira UE-48201
Change 3582655 by Matt.Kuhlenschmidt
Fix DPI scale not being accounted for when entering immersive.
Change 3582706 by Matt.Kuhlenschmidt
Fix automation tests
Change 3582728 by Matt.Kuhlenschmidt
Turn on high dpi by default for windows editor
Change 3582732 by Matt.Kuhlenschmidt
Turn on high DPI by default for mac editor
Change 3583112 by Max.Chen
Sequencer: Add OnPlayReverse() event for when playback is in reverse
Change 3584130 by Matt.Kuhlenschmidt
PR #3897: Git plugin: fix action icon in history window (Contributed by SRombauts)
Change 3584237 by Matt.Kuhlenschmidt
Added the beginnings of a way to extend the usd importer with a custom resolver class that optionally handles prim identification and mesh and actor spawning.
Added a test resolver that handles prims based on usd "kind" metadata.
Change 3584535 by Matt.Kuhlenschmidt
Fix LOD identification in USD files
Change 3587703 by Matt.Kuhlenschmidt
Fix tooltip
Change 3587901 by Matt.Kuhlenschmidt
Fixed USD importing not finding and importing LODs properly
Change 3588380 by Matt.Kuhlenschmidt
Fix ctrl+w not duplicating on mac
#jira UE-46573
Change 3590435 by Jamie.Dale
Added support for in-editor previews of localized game text
This is configured by the "Preview Game Culture" setting, and will automatically be active when PIE is running (the preview language is also passed to any standalone games that are launched via the editor). This preview can also be used in the UMG editor to preview widgets in different languages.
While a preview is running, all editable FText fields are locked-down (read-only) to prevent accidentally clobbering source data with translation data. You can also use this new lock-down feature to prevent any localization changes in your project (set "LockLocalization" to "True" under the "Internationalization" section of either your DefaultGame or DefaultEngine INI).
In order to allow the game translations to be used in the editor, we now map the translation to any package localization ID variants when the LocRes data is loaded (or when looking up a specific piece of text). This is needed as the LocRes files only ever contain the "clean" versions of the IDs (without the package localization ID the editor uses), and also means that we no longer need to gather the "editor-only" variants of the text within assets.
Change 3592131 by Matt.Kuhlenschmidt
Log for newly converted actors being pending kill
#jira UE-47464
Change 3592200 by Matt.Kuhlenschmidt
Made the class viewer menu function properly on mac. Since it as a nomad tab it wasnt properly inserting itself into the top level menu on mac nor should it since it could be docked anywhere. The filters menu is now consistent with other filters menus
Change 3592227 by Matt.Kuhlenschmidt
Fix drag drop of actors being offset with high dpi monitors.
Change 3592719 by Bradut.Palas
#jira UE-45632 - dual key bindings feature
My approach was transforming the ActiveChord and DefaultChord into arrays and accessing them through an enum class called EMultipleKeyBindingIndex. A lot of connecting code, function prototypes, and data structures had to be changed to accomodate this. Most menus and tooltip texts are generated using the first valid active shortcut.
Change 3592793 by Bradut.Palas
Fix compile warnings for InputBindingManager (there were actually hidden bugs among them)
Change 3593128 by Matt.Kuhlenschmidt
Force low quality mode for background blurs by default on android
Change 3593579 by Michael.Dupuis
#jira UE-47223 :
If we have no world simply return null when GetLandscapeInfo is called
Handle the cases in PostEditChange to handle null returned from GetLandscapeInfo
Change 3593580 by Michael.Dupuis
Added missing shaders while generating thumbnails
Change 3593582 by Michael.Dupuis
#jira UE-47492 : Make sure LayerInfo is valid before accessing data
Change 3593584 by Michael.Dupuis
#jira UE-47253: Do not recreate the scene info in simulation mode
Change 3593585 by Michael.Dupuis
#jira UE-48484: no longer mark the package dirty while generating the GrassMap if they were not existing
Change 3593586 by Michael.Dupuis
#jira UE-48483 : hide the Rendering property group so user can't by mistake change the actor visibility
Change 3593593 by Michael.Dupuis
#jira UE-48327: Added guard to prevent crash when using CVarFoliageDiscardDataOnLoad and having invalid foliage in your map
Change 3593597 by Michael.Dupuis
#jira UE-48309: Do not build the tree if the static mesh is not even loaded yet
#jira UE-48340: Properly support the Random stream and partial buffer update
#jira UE-48228: Instance from blueprint are now visible in standalone game
#jira UE-45854: Crash probably linked to post load called on not loaded static mesh
#jira UE-48035: Properly init the per instance render data when creating a new component
Only update instance in non archetype or CDO.
Change 3594060 by Matt.Kuhlenschmidt
Fix high DPI mode being set for non-editor. Also prevent possible crashes due to dll handle for high DPI method being freed before called
Change 3594355 by Matt.Kuhlenschmidt
Change API help link to point to a website since offline CHM based docs are no longer used
#jira UE-48230
Change 3595358 by Matt.Kuhlenschmidt
Fixed bad initial window position and sizes for editor windows
By default SWindow.ClientSize will assume unscaled window size and will scale it based on DPI as needed. AdjustInitialSizeAndPositionForDPIScale argument can be used to disable this if needed
Fixed a dock tabs and the main frame not taking into account dpi scale when saving their layout. Now we always save window size at 1.0 scale and auto scale it based on DPI of the monitor it opens on.
#jira UE-48446
Change 3595590 by Matt.Kuhlenschmidt
Fix missing includes
Change 3595792 by Matt.Kuhlenschmidt
Fix style warnings
Change 3596418 by Bradut.Palas
fixing initial issue with dual keybinds (removed ensure macro to speedup first use of alternate key)
Change 3598679 by Max.Chen
PR #3872: Fix small typo in ImagePlate Plugin (Contributed by TheCodez)
#jira UE-48141
Change 3598720 by Max.Chen
Cine Camera: Add toggle to disable constraining the roll when look at tracking is enabled. This allows the user to animate the roll while tracking an object.
#jira UE-48316
Change 3600236 by Alexis.Matte
Create a LOD Custom Mode in the meshes editor UI. This allow user to compare details values between LODs
#jira UE-46822
Change 3600260 by Alexis.Matte
Make sure temporary rename do not create redirector
#jira UE-48364
Change 3600671 by Lauren.Ridge
PR #3913: Fixed 3D preview issue in the material editor (Contributed by YuchenMei)
#jira UE-48539
#jira UE-48180
#jira UE-48182
Change 3600812 by Jamie.Dale
We now defer the registration of IME contexts until an editable text first gains focus
Certain IMEs can have very high per-context costs, so this avoids that cost until we know that we definitely need to use the context
#jira UE-48100
Change 3601839 by Matt.Kuhlenschmidt
Fix USD import crash with "facevarying" normals
Change 3602434 by Jamie.Dale
Removing dead code
These flags were never being tested or used in any meaningul way
Change 3602611 by Jamie.Dale
Ensure PackageToReload is non-null
#jira UE-46655
Change 3602648 by Jamie.Dale
Fixed custom columns with the same name as fixed columns causing infinite duplications in the content browser
#jira UE-47392
Change 3602651 by Lauren.Ridge
Fix for parameter tooltips not being found
#jira UE-47417
Change 3604172 by Bradut.Palas
#jira UE-48449
#jira UE-48380
#jira UE-48381
#jira UE-48423
I moved the IsFilenameValidForSaving() function from FEditorFileUtils to FFileHelper so that it is accessible from CollectionManager.cpp in order to validate collection names as file names and no longer trigger any of the bugs.
Change 3604210 by Bradut.Palas
#jira UE-48718
Regression issue appeared from fixing a crash when using console command "open"
Reworked by only refusing to open local URLs in case of client mode and multiprocess being active simultaneously.
Change 3604258 by Jamie.Dale
IME contexts can now flag themselves as dead to avoid latent IME callbacks trying to access a deleted widget
#jira UE-46815
#jira UE-47295
Change 3604312 by Matt.Kuhlenschmidt
PR #3931: Fixing a few obvious copy & paste errors. (Contributed by DaveC79)
Change 3604352 by Matt.Kuhlenschmidt
Fix crash accessing potentially invalid parent layout from a detail category
#jira UE-48729
Change 3604402 by Lauren.Ridge
Epic Friday - array drag and drop
Change 3605228 by Cody.Albert
TSets and TMaps should now properly rehash if a key is modified in the details panel.
Change 3605275 by Alexis.Matte
Merge actor do not keep the material slot name
#jira UE-43246
Change 3605715 by Max.Chen
Sequencer: Fix cinematic mode getting activated on BeginPlay() instead of OnStartedPlaying().
#jira UE-48770
Change 3606411 by Max.Chen
Sequencer: Fix a few player state issues. When paused, calling stop now tears down properly (spawnables are removed, etc). When a level sequence is deleted, tears down properly as well.
#jira UE-42008
Change 3606440 by Max.Chen
Sequencer: Update spawanble name when the spawnable actor name is changed.
#jira UE-47815
Change 3606899 by Lauren.Ridge
Disabling enum-based arrays from reordering
Change 3606958 by Lauren.Ridge
Visual polish on array handles
Change 3607733 by Max.Chen
Sequencer: Check null in camera cut
Change 3607849 by Max.Chen
Sequencer: Clip transport controls.
#jira UE-48812
Change 3608181 by Max.Chen
#jira UE-48813 Correctly set GPlayInEditorID when initializing the PIE gameinstance, which does the initial tick. This fixes autoplay sequences
Copy from Dev-Framework
Change 3608361 by christopher.biancard
QAGame: Submitting test content for Array Element Reorder testing
Change 3608512 by Alexis.Matte
Add fbx exporter option dialog, support export all and cancel all functionality when doing bulk export.
#jira UE-48058
Change 3608629 by Max.Chen
Camera Rig: Fix crane and rail not being packaged properly.
#jira UE-48829
Change 3609217 by Matt.Kuhlenschmidt
Added a lock around access to slate active timers to protect it against race conditions when accessed on the slate movie thread and the game thread
Change 3609722 by Alexis.Matte
Make sure a warning is log when we cannot export an animation sequence.
#jira UE-48390
Change 3609774 by Alexis.Matte
Fix the merge actor build LOD scale again, a previous merge erase the fix
#jira UE-48156
Change 3609891 by christopher.biancard
QAGame: Minor additions for test coverage on Array Element Reorder
Change 3610171 by Lauren.Ridge
Fixes for reordering metadata, creating actual swap function out of three element functions
#jira UE-48823
Change 3610407 by Lauren.Ridge
Fixing highlighting and behavior to place dragged row in the spot you release (not below)
Change 3610472 by Lauren.Ridge
Moving final location logic
Change 3610797 by Lauren.Ridge
Disabling dragging handles during PIE
Change 3611089 by Lauren.Ridge
Disabling handles when overall tree is disabled
Change 3612479 by Lauren.Ridge
Fix for asset contex menu warning
#jira UE-46667
Change 3612791 by Michael.Dupuis
#jira UE-48914 : Add the possibility to specify if we need CPU access to the instance buffer depending on the usage.
Grass should always have CPU access.
Change 3612802 by Michael.Dupuis
missing file from checkin 3612791
Change 3612805 by Max.Chen
Sequencer: Fix crash with null GEditor
Copy from Release-4.17
#jira UE-48443
Change 3612806 by Max.Chen
Sequencer: Fix crash when capturing a movie with options enabling separate process and close editor.
Copy from Release-4.17
#jira UE-48487
Change 3612807 by Max.Chen
Sequencer: Fix crash upgrading the time range of a null track.
Copy from Release-4.17
#jira UE-48490
Change 3612808 by Max.Chen
Sequencer: Fixed dragging skeletal animations causing them to revert back to t-pose
Copy from Release-4.17
#jira UE-48367
Change 3612849 by Arciel.Rekman
Fix tesselation in packaged Linux projects (UE-24301).
- Change by Cengiz.Terzibas.
#jira UE-24301
Change 3613022 by Nick.Darnell
Editor - Fixing a crash on load with a null CoordIndex json node.
Change 3613030 by Matt.Kuhlenschmidt
PR #3932: UE-48693: if instead of while statement (Contributed by projectgheist)
#jira UE-48747
Change 3613047 by Matt.Kuhlenschmidt
PR #3933: Git plugin: add "branch source" in history window (Contributed by SRombauts)
Change 3613050 by Matt.Kuhlenschmidt
PR #3942: Sort Data Table Structures Alphabetically (Contributed by Nick-Pearson)
Change 3613062 by Matt.Kuhlenschmidt
PR #3939: Fix a typo in RecordQualityLevelsAnalytics(). (Contributed by samhocevar)
Change 3613241 by Nick.Darnell
Editor - Fixing the content browser's view settings to be project agnostic, and they will start saving again.
Change 3613329 by Lauren.Ridge
Moving favorite levels to a standard submenu so they also work on Mac
Change 3613344 by Nick.Darnell
Editor - Fixing the achorgrid show up as white in HDPI mode, seems because we were upsampling the image, the blend was between dark and a transparent white, so that caused everything to turn white in HDPI mode.
#jira UE-48921
Change 3613380 by Matt.Kuhlenschmidt
Fix FBX window being off the screen in high DPI
#jira UE-48872
Change 3614598 by Matt.Kuhlenschmidt
Fixed Sequencer Keyframes appearing out of place on High DPI Monitors
#jira UE-48915
Change 3614625 by Matt.Kuhlenschmidt
Fixed not being able to click on BSP correctly in high dpi
#jira UE-48947
Change 3614672 by Matt.Kuhlenschmidt
Fix combo box windows being larger than necessary on high dpi monitors
#jira UE-48908
Change 3614699 by Matt.Kuhlenschmidt
Fix typo
#jira UE-48941
Change 3615011 by Matt.Kuhlenschmidt
Fix color picker calculation appearing offscreen for high dpi
Change 3615013 by Michael.Dupuis
#jira UE-48897: Properly rebuild the tree when reapplying instance to the component
Change 3615014 by Colin.Benoit
Sequencer Recorder test content
Change 3615048 by Colin.Benoit
Sequencer Recorder: more test content
Change 3615118 by Lauren.Ridge
Updating realtime state of viewports to also change when settings toggled
#jira UE-48884
Change 3615127 by Lauren.Ridge
Remove delegate binding on viewport destruction
Change 3615180 by Bradut.Palas
#jira UE-48167 profiler crash
Don't duplicate the graph data when rebuilding because that completely voids the OneToOneMapping mechanism, resulting in the crash. Looking up objects in the mapping would always return null because the mapping contains the old addresses, before the rebuild.
One option would have been to completely rebuild the mapping according to the duplicate graph, which would be dubious because the duplicate method isn't specifically designed so that the result would replace the source.
But it looks like duplicating the data is not needed, it's safe to rebuild in-place, RebuildForFilter() doesn't do anything illegal with the objects. This is also the only purpose and the only reference of the function.
Change 3615232 by Lauren.Ridge
Adding input handling to the material editor viewport client
#jira UE-48909
Change 3615703 by Jamie.Dale
Fixed crash when fixing up references after a package rename failed
#jira UE-48856
Change 3615752 by Matt.Kuhlenschmidt
More generic fix for color picker and other windows that use CalculatePopupWindowPostion not accounting for DPI scale
Change 3615907 by Jamie.Dale
Fixed some crashes caused by CL# 3600812
Change 3616031 by Matt.Kuhlenschmidt
Added guard against invalid blueprints (ones without a generated class) being trying to be opened in the property matrix and failing
#jira UE-48986
Change 3616151 by Arciel.Rekman
Fixing adding array elements in config.
- "+Blah=Foo" will do Blah.AddUnique(Foo)
- ".Blah=Foo" will do Blah.Add(Foo)
- See JoshA re: why (also see: https://udn.unrealengine.com/questions/388157/incorrect-behavior-in-configcacheinicpp.html?childToView=389307)
Change 3616439 by Andrew.Porter
QAGame: Updating level visibility content in sequencer smoke map
Change 3616441 by Matt.Kuhlenschmidt
Fix more sequencer track offsetting with DPI scale
#jira UE-48981
Change 3617263 by Max.Chen
Sequencer: Fix crash in level visibility teardown. Null playback context.
#jira UE-49012
Change 3617316 by Max.Chen
Sequencer: Fixed a regression where the frame rate isn't getting initialized for a movie scene.
Change 3617648 by Matt.Kuhlenschmidt
Adding some windows specific logging around setting or failing to set process dpi awareness
Change 3617665 by Matt.Kuhlenschmidt
Guard against layers module not being loaded in keybinding automation test
Change 3617731 by Arciel.Rekman
Fix crashes on AMD Mesa drivers (UE-48374).
- Do not expose unnecessary symbols from libelf.a to avoid symbol collision with system library used by drivers.
Change 3617923 by Bradut.Palas
#jira UE-47072
Editor was crashing because deleted actor was not cleaned properly from asset editors. Changed IAssetEditorInstance to offer a function for deleting an object from the editor.
Change 3618088 by Matt.Kuhlenschmidt
Guard against crash with potentially invalid worlds in preview scenes
#jira UE-48997
Change 3618373 by Matt.Kuhlenschmidt
Force worldsettings to be hidden in editor so that it is not considered for selection
#jira UE-48996
Change 3618464 by Max.Chen
Sequencer: Fix regression where spawnables don't play because they're defined as temporary editor actors.
#jira UE-48923
Change 3619789 by Matt.Kuhlenschmidt
Fix DPI scale warnings in any kind of headless editor mode
Change 3619802 by Jamie.Dale
Fixed deprecation warning in malloc profiler
Change 3619841 by Matt.Kuhlenschmidt
Fix missing icons in the package project menu
#jira UE-48674
Change 3619991 by Lauren.Ridge
Fix typo in transaction message
#jira UE-48993
Change 3620086 by Lauren.Ridge
Moving realtime viewport logic to refresh instead of construct so it is always triggered upon opening a new material editor
#jira UE-48884
Change 3620616 by Matt.Kuhlenschmidt
Fix up file
Change 3621002 by Matt.Kuhlenschmidt
Back out change to apply scaling rules in loading screens since blueprint based DPI scaling rule classes will not have been created yet
#jira UE-49125
Change 3621049 by Arciel.Rekman
Fix a build error.
- Also make sure that we don't print confusing message when no messagebox can be shown
(this code changed during the merge).
Change 3621064 by Arciel.Rekman
Deleted too much in the previous changelist.
Change 3621369 by Matt.Kuhlenschmidt
Fix keybindings automation test failing due to multiple entries in the active choords array pointing to the same thing
#jira UE-49131
[CL 3621569 by Matt Kuhlenschmidt in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3550452 by Ben.Marsh
UAT: Improve readability of error message when an editor commandlet fails with an error code.
Change 3551179 by Ben.Marsh
Add methods for reading text files into an array of strings.
Change 3551260 by Ben.Marsh
Core: Change FFileHelper routines to use enum classes for flags.
Change 3555697 by Gil.Gribb
Fixed a rare crash when the asset registry scanner found old cooked files with package level compression.
#jira UE-47668
Change 3556464 by Ben.Marsh
UGS: If working in a virtual stream, use the name of the first non-virtual ancestor for writing version files.
Change 3557630 by Ben.Marsh
Allow the network version to be set via Build.version if it's not overriden from Version.h.
Change 3561357 by Gil.Gribb
Fixed crashes related to loading old unversioned files in the editor.
#jira UE-47806
Change 3565711 by Graeme.Thornton
PR #3839: Make non-encoding specific Base64 functions accessible (Contributed by stfx)
Change 3565864 by Robert.Manuszewski
Temp fix for a race condition with the async loading thread enabled - caching the linker in case it gets removed (but not deleted) from super class object.
Change 3569022 by Ben.Marsh
PR #3849: Update gitignore (Contributed by mhutch)
Change 3569113 by Ben.Marsh
Fix Japanese errors not displaying correctly in the cook output log.
#jira UE-47746
Change 3569486 by Ben.Marsh
UGS: Always sync the Enterprise folder if the selected .uproject file has the "Enterprise" flag set.
Change 3570483 by Graeme.Thornton
Minor C# cleanups. Removing some redundant "using" calls which also cause dotnetcore compile errors
Change 3570513 by Robert.Manuszewski
Fix for a race condition with async loading thread enabled.
Change 3570664 by Ben.Marsh
UBT: Use P/Invoke to determine number of physical processors on Windows rather than using WMI. Starting up WMIC adds 2.5 seconds to build times, and is not compatible with .NET core.
Change 3570708 by Robert.Manuszewski
Added ENABLE_GC_OBJECT_CHECKS macro to be able to quickly toggle UObject pointer checks in shipping builds when the garbage collector is running.
Change 3571592 by Ben.Marsh
UBT: Allow running with -installed without creating [InstalledPlatforms] entries in BaseEngine.ini. If there is no HasInstalledPlatformInfo=true setting, assume that all platforms are still available.
Change 3572215 by Graeme.Thornton
UBT
- Remove some unnecessary using directives
- Point SN-DBS code at the new Utils.GetPhysicalProcessorCount call, rather than trying to calculate it itself
Change 3572437 by Robert.Manuszewski
Game-specific fix for lazy object pointer issues in one of the test levels. The previous fix had to be partially reverted due to side-effects.
#jira UE-44996
Change 3572480 by Robert.Manuszewski
MaterialInstanceCollections will no longer be added to GC clusters to prevent materials staying around in memory for too long
Change 3573547 by Ben.Marsh
Add support for displaying log timestamps in local time. Set LogTimes=Local in *Engine.ini, or pass -LocalLogTimes on the command line.
Change 3574562 by Robert.Manuszewski
PR #3847: Add GC callbacks for script integrations (Contributed by mhutch)
Change 3575017 by Ben.Marsh
Move some functions related to generating window resolutions out of Core (FParse::Resolution, GenerateConvenientWindowedResolutions). Also remove a few headers from shared PCHs prior to splitting application functionality out of Core.
Change 3575689 by Ben.Marsh
Add a fixed URL for opening the API documentation, so it works correctly in "internal" and "perforce" builds.
Change 3575934 by Steve.Robb
Fix for nested preprocessor definitions.
Change 3575961 by Steve.Robb
Fix for nested zeros.
Change 3576297 by Robert.Manuszewski
Material resources will now be discarded in PostLoad (Game Thread) instead of in Serialize (potentially Async Loading Thread) so that shader deregistration doesn't assert when done from a different thread than the game thread.
#jira FORT-38977
Change 3576366 by Ben.Marsh
Add shim functions to allow redirecting FPlatformMisc::ClipboardCopy()/ClipboardPaste() to FPlatformApplicationMisc::ClipboardCopy()/ClipboardPaste() while they are deprecated.
Change 3578290 by Graeme.Thornton
Changes to Ionic zip library to allow building on dot net core
Change 3578291 by Graeme.Thornton
Ionic zip library binaries built for .NET Core
Change 3578354 by Graeme.Thornton
Added FBase64::GetDecodedDataSize() to determine the size of bytes of a decoded base64 string
Change 3578674 by Robert.Manuszewski
After loading packages flush linker cache on uncooked platforms to free precache memory
Change 3579068 by Steve.Robb
Fix for CLASS_Intrinsic getting stomped.
Fix to EClassFlags so that they are visible in the debugger.
Re-added mysteriously-removed comments.
Change 3579228 by Steve.Robb
BOM removed.
Change 3579297 by Ben.Marsh
Fix exception if a plugin lists the same module twice.
#jira UE-48232
Change 3579898 by Robert.Manuszewski
When creating GC clusters and asserting due to objects still being pending load, the object name and cluster name will now be logged with the assert.
Change 3579983 by Robert.Manuszewski
More fixes for freeing linker cache memory in the editor.
Change 3580012 by Graeme.Thornton
Remove redundant copy of FileReference.cs
Change 3580408 by Ben.Marsh
Validate that arguments passed to the checkf macro are valid sprintf types, and fix up a few places which are currently incorrect.
Change 3582104 by Graeme.Thornton
Added a dynamic compilation path that uses the latest roslyn apis. Currently only used by the .NET Core path.
Change 3582131 by Graeme.Thornton
#define out some PerformanceCounter calls that don't exist in .NET Core. They're only used by mono-specific calls anyway.
Change 3582645 by Ben.Marsh
PR #3879: fix bug when creating a new VS2017 C++ project (Contributed by mnannola)
#jira UE-48192
Change 3583955 by Robert.Manuszewski
Support for EDL cooked packages in the editor
Change 3584035 by Graeme.Thornton
Split RunExternalExecutable into RunExternaNativelExecutable and RunExternalDotNETExecutable. When running under .NET Core, externally launched DotNET utilities must be launched via the 'dotnet' proxy to work correctly.
Change 3584177 by Robert.Manuszewski
Removed unused member variable (FArchiveAsync2::bKeepRestOfFilePrecached)
Change 3584315 by Ben.Marsh
Move Android JNI accessor functions into separate header, to decouple it from the FAndroidApplication class.
Change 3584370 by Ben.Marsh
Move hooks which allow platforms to load any modules into the FPlatformApplicationMisc classes.
Change 3584498 by Ben.Marsh
Move functions for getting and setting the hardware window pointer onto the appropriate platform window classes.
Change 3585003 by Steve.Robb
Fix for TChunkedArray ranged-for iteration.
#jira UE-48297
Change 3585235 by Ben.Marsh
Remove LogEngine extern from Core; use the platform log channels instead.
Change 3585942 by Ben.Marsh
Move MessageBoxExt() implementation into application layer for platforms that require it.
Change 3587071 by Ben.Marsh
Move Linux's UngrabAllInput() function into a callback, so DebugBreak still works without SDL.
Change 3587161 by Ben.Marsh
Remove headers which will be stripped out of the Core module from Core.h and PlatformIncludes.h.
Change 3587579 by Steve.Robb
Fix for Children list not being rebuilt after hot reload.
Change 3587584 by Graeme.Thornton
Logging improvements for pak signature check failures
- Added "PakCorrupt" console command which corrupts the master signature table
- Added some extra log information about which block failed
- Re-hash the master signature table and to make sure that it hasn't changed since startup
- Moved the ensure around so that some extra logging messages can make it out before the ensure is hit
- Added PAK_SIGNATURE_CHECK_FAILS_ARE_FATAL to IPlatformFilePak.h so we have a single place to make signature check failures fatal again
Change 3587586 by Graeme.Thornton
Changes to make UBT build and run on .NET Core
- Added *_DNC csproj files for DotNETUtilities and UnrealBuildTool projects which contain the .NET Core build setups
- VCSharpProjectFile can no be asked for the CsProjectInfo for a particular configuration, which is cached for future use
- After loading VCSharpProjectFiles, .NET Core based projects will be excluded unless generating VSCode projects
Change 3587953 by Steve.Robb
Allow arbitrary UENUM initializers for enumerators.
Editor-only data UENUM support.
Enumerators named MAX are now treated as the UENUM's maximum, and will not cause a MAX+1 value to be generated.
#jira UE-46274
Change 3589827 by Graeme.Thornton
More fixes for VSCode project generation and for UBT running on .NET Core
- Use a different file extension for rules assemblies when build on .NET Core, so they never get used by their counterparts
- UEConsoleTraceListener supports stdout/stderror constructor parameter and outputs to the appropriate channel
- Added documentation for UEConsoleTraceListener
- All platforms .NET project compilation tasks/launch configs now use "dotnet" and not the normal batch files
- Restored the default UBT log verbosity to "Log" rather than "VeryVeryVerbose"
- Renamed assemblies for .NETCore versions of DotNETUtilities and UnrealBuildTool so they don't conflict with the output of the existing .NET Desktop Framework stuff
Change 3589868 by Graeme.Thornton
Separate .NET Core projects for UBT and DotNETCommon out into their own directories so that their intermediates don't overlap with the standard .NET builds, causing failures.
UBT registers ONLY .NET Core C# projects when generating VSCode solutions, and ONLY standard C# projects in all other cases
Change 3589919 by Robert.Manuszewski
Fixing crash when cooking textures that have already been cooked for EDL (support for cooked content in the editor)
Change 3589940 by Graeme.Thornton
Force UBT to think it's running on mono when actually running on .NET Core. Disables a lot of windows specific code paths.
Change 3590078 by Graeme.Thornton
Fully disable automatic assembly info generation in .NET Core projects
Change 3590534 by Robert.Manuszewski
Marking UObject as intrinsic clas to fix a crash on UFE startup.
Change 3591498 by Gil.Gribb
UE4 - Fixed several edge cases in the low level async loading code, especially around cancellation. Also PakFileTest is a console command which can be used to stress test pak file loading.
Change 3591605 by Gil.Gribb
UE4 - Follow up to fixing several edge cases in the low level async loading code.
Change 3592577 by Graeme.Thornton
.NET Core C# projects now reference source files explicitly, to stop it accidentally compiling various intermediates
Change 3592684 by Steve.Robb
Fix for EObjectFlags being passed as the wrong argument to csgCopyBrush.
Change 3592710 by Steve.Robb
Fix for invalid casts in ListProps command.
Some name changes in command output.
Change 3592715 by Ben.Marsh
Move Windows event log code into cpp file, and expose it to other modules even if it's not enabled by default.
Change 3592767 by Gil.Gribb
UE4 - Changed the logic so that engine UObjects boot before anything else. The engine classes are known to be cycle-free, so we will get them done before moving onto game modules.
Change 3592770 by Gil.Gribb
UE4 - Fixed a race condition with async read completion in the prescence of cancels.
Change 3593090 by Steve.Robb
Better error message when there two clashing type names are found.
Change 3593697 by Steve.Robb
VisitTupleElements function, which calls a functor for each element in the tuple.
Change 3595206 by Ben.Marsh
Include additional diagnostics for missing imports when a module load fails.
Change 3596140 by Graeme.Thornton
Batch file for running MSBuild
Change 3596267 by Steve.Robb
Thread safety fix to FPaths::GetProjectFilePath().
Change 3596271 by Robert.Manuszewski
Added code to verify compression flags in package file summary to avoid cases where corrupt packages are crashing the editor
#jira UE-47535
Change 3596283 by Steve.Robb
Redundant casts removed from UHT.
Change 3596303 by Ben.Marsh
EC: Improve parsing of Android Clang errors and warnings, which are formatted as MSVC diagnostics to allow go-to-line clicking in the Output Window.
Change 3596337 by Ben.Marsh
UBT: Format messages about incorrect headers in a way that makes them clickable from Visual Studio.
Change 3596367 by Steve.Robb
Iterator checks in ranged-for on TMap, TSet and TSparseArray.
Change 3596410 by Gil.Gribb
UE4 - Improved some error messages on runtime failures in the EDL.
Change 3596532 by Ben.Marsh
UnrealVS: Fix setting command line to empty not affecting property sheet. Also remove support for VS2013.
#jira UE-48119
Change 3596631 by Steve.Robb
Tool which takes a .map file and a .objmap file (from UBT) and creates a report which shows the size of all the symbols contributed by the source code per-folder.
Change 3596807 by Ben.Marsh
Improve Intellisense when generated headers are missing or out of date (eg. line numbers changed, etc...). These errors seem to be masked by VAX, but are present when using the default Visual Studio Intellisense.
* UCLASS macro is defined to empty when __INTELLISENSE__ is defined. Previous macro was preventing any following class declaration being parsed correctly if generated code was out of date, causing squiggles over all class methods/variables.
* Insert a semicolon after each expanded GENERATED_BODY macro, so that if it parses incorrectly, the compiler can still continue parsing the next declaration.
Change 3596957 by Steve.Robb
UBT can be used to write out an .objsrcmap file for use with the MapFileParser.
Renaming of ObjMap to ObjSrcMap in MapFileParser.
Change 3597213 by Ben.Marsh
Remove AutoReporter. We don't support this any more.
Change 3597558 by Ben.Marsh
UGS: Allow adding custom actions to the context menu for right clicking on a changelist. Actions are specified in the project's UnrealEngine.ini file, with the following syntax:
+ContextMenu=(Label="This is the menu item", Execute="foo.exe", Arguments="bar")
The standard set of variables for custom tools is expanded in each parameter (eg. $(ProjectDir), $(EditorConfig), etc...), plus the $(Change) variable.
Change 3597982 by Ben.Marsh
Add an option to allow overriding the local DDC path from the editor (under Editor Preferences > Global > Local Derived Data Cache).
#jira UE-47173
Change 3598045 by Ben.Marsh
UGS: Add variables for stream and client name, and the ability to escape any variables for URIs using the syntax $(VariableName:URI).
Change 3599214 by Ben.Marsh
Avoid string duplication when comparing extensions.
Change 3600038 by Steve.Robb
Fix for maps being modified during iteration in cache compaction.
Change 3600136 by Steve.Robb
GitHub #3538 : Fixed a bug with the handling of 'TMap' key/value types in the UnrealHeaderTool
Change 3600214 by Steve.Robb
More accurate error message when unsupported template parameters are provided in a TSet property.
Change 3600232 by Ben.Marsh
UBT: Force UHT to run again if the .build.cs file for a module has changed.
#jira UE-46119
Change 3600246 by Steve.Robb
GitHub #3045 : allow multiple interface definition in a file
Change 3600645 by Ben.Marsh
Convert QAGame to Include-What-You-Use.
Change 3600897 by Ben.Marsh
Fix invalid path (multiple slashes) in LibCurl.build.cs. Causes exception when scanning for includes.
Change 3601558 by Graeme.Thornton
Simple first pass VSCode editor integration plugin
Change 3601658 by Graeme.Thornton
Enable intellisense generation for VS Code project files and setup include paths properly
Change 3601762 by Ben.Marsh
UBT: Add support for adaptive non-unity builds when working from a Git repository.
The ISourceFileWorkingSet interface is now used to query files belonging to the working set, and has separate implementations for Perforce (PerforceSourceFileWorkingSet) and Git (GitSourceFileWorkingSet). The Git implementation is used if a .git directory is found in the directory containing the Engine folder, the directory containing the project file, or the parent directory of the project file, and spawns a "git status" process in the background to determine which files are untracked or staged.
Several new settings are supported in BuildConfiguration.xml to allow modifying default behavior:
<SourceFileWorkingSet>
<Provider>Default</Provider> <!-- May be None, Default, Git or Perforce -->
<RepositoryPath></RepositoryPath> <!-- Specifies the path to the repository, relative to the directory containing the Engine folder. If not set, tries to find a .git directory in the locations listed above. -->
<GitPath>git</GitPath> <!-- Specifies the path to the Git executable. Defaults to "git", which assumes that it will be on the PATH -->
</SourceFileWorkingSet>
Change 3604032 by Graeme.Thornton
First attempt at automatically detecting the existance and location of visual studio code in the source code accessor module. Only works for windows.
Change 3604038 by Graeme.Thornton
Added FSourceCodeNavigation::GetSelectedSourceCodeIDE() which returns the name of the selected source code accessor.
Replaced all usages of FSourceCodeNavigation::GetSuggestedSourceCodeIDE() with GetSelectedSourceCodeIDE(), where the message is referring to the opening or editing of code.
Change 3604106 by Steve.Robb
GitHub #3561 : UE-44950: Don't see all caps struct constructor as macro
Change 3604192 by Steve.Robb
GitHub #3911 : Improving ToUpper/ToLower efficiency
Change 3604273 by Graeme.Thornton
IWYU build fixes when malloc profiler is enabled
Change 3605457 by Ben.Marsh
Fix race for intiialization of ThreadID variable on FRunnableThreadWin, and restore a previous check that was working around it.
Change 3606720 by James.Hopkin
Dave Ratti's fix to character base recursion protection code - was missing a GetOwner call, instead attempting to cast a component to a pawn.
Change 3606807 by Graeme.Thornton
Disabled optimizations around FShooterStyle::Create(), which was crashing in Win64 shipping game builds due to some known compiler issue. Same variety of fix as BenZ did in CL 3567741.
Change 3607026 by James.Hopkin
Fixed incorrect ABrush cast - was attempting to cast a UModel to ABrush, which can never succeed
Change 3607142 by Graeme.Thornton
UBT - Minor refactor of BackgroundProcess shutdown in SourceFileWorkingSet. Check whether the process has already exited before trying to kill it during Dispose.
Change 3607146 by Ben.Marsh
UGS: Fix exception due to formatting string when Perforce throws an error.
Change 3607147 by Steve.Robb
Efficiency fix for integer properties, which were causing a property mismatch and thus a tag lookup every time.
Float and double conversion support added to int properties.
NAME_DoubleProperty added.
Fix for converting enum class enumerators > 255 to int properties.
Change 3607516 by Ben.Marsh
PR #3935: Fix DECLARE_DELEGATE_NineParams, DECLARE_MULTICAST_DELEGATE_NineParams. (Contributed by enginevividgames)
Change 3610421 by Ben.Marsh
UAT: Move help for RebuildLightMapsCommand into attributes, so they display when running with -help.
Change 3610657 by Ben.Marsh
UAT: Unify initialization of command environment for build machines and local execution. Always derive parameters which aren't manually set via environment variables.
Change 3611000 by Ben.Marsh
UAT: Remove the -ForceLocal command line option. Settings are now determined automatically, independently of the -Buildmachine argument.
Change 3612471 by Ben.Marsh
UBT: Move FastJSON into DotNETUtilities.
Change 3613479 by Ben.Marsh
UBT: Remove the bIsCodeProject flag from UProjectInfo. This was only really being used to determine which projects to generate an IDE project for, so it is now checked in the project file generator.
Change 3613910 by Ben.Marsh
UBT: Remove unnecessary code to guess a project from the target name; doesn't work due to init order, actual project is determined later.
Change 3614075 by Ben.Marsh
UBT: Remove hacks for testing project file attributes by name.
Change 3614090 by Ben.Marsh
UBT: Remove global lookup of project by name. Projects should be explicitly specified by path when necessary.
Change 3614488 by Ben.Marsh
UBT: Prevent annoying (but handled) exception when constructing SQLiteModuleSupport objects with -precompile enabled.
Change 3614490 by Ben.Marsh
UBT: Simplify generation of arguments for building intellisense; determine the platform/configuration to build from the project file generation code, rather than inside the target itself.
Change 3614962 by Ben.Marsh
UBT: Move the VS2017 strict conformance mode (/permissive-) behind a command line option (-Strict), and disable it by default. Building with this mode is not guaranteed to work correctly without updated Windows headers.
Change 3615416 by Ben.Marsh
EC: Include an icon showing the overall status of a build in the grid view.
Change 3615713 by Ben.Marsh
UBT: Delete any files in output directories which match output files in other directories. Allows automatically deleting build products which are moved into another folder.
#jira UE-48987
Change 3616652 by Ben.Marsh
Plugins: Fix incorrect dialog when binaries for a plugin are missing. Should only prompt to disable if starting a content-only project.
#jira UE-49007
Change 3616680 by Ben.Marsh
Add the CodeAPI-HTML.tgz file into the installed engine build.
Change 3616767 by Ben.Marsh
Plugins: Tweak error message if the FModuleManager::IsUpToDate() function returns false for a plugin module; the module may be missing, not just incompatible.
Change 3616864 by Ben.Marsh
Cap the length of the temporary package name during save, to prevent excessively long filenames going over the limit once a GUID is appended.
#jira UE-48711
Change 3619964 by Ben.Marsh
UnrealVS: Fix single file compile for foreign projects, where the command line contains $(SolutionDir) and $(ProjectName) variables.
Change 3548930 by Ben.Marsh
UBT: Remove UEBuildModuleCSDLL; there is no codepath that still supports creating them. Remove the remaining UEBuildModule/UEBuildModuleCPP abstraction.
Change 3558056 by Ben.Marsh
Deprecate FString::Trim() and FString::TrimTrailing(), and replace them with separate versions to mutate (TrimStartInline(), TrimEndInline()) or return by copy (TrimStart(), TrimEnd()). Also add a functions to trim whitespace from both ends of a string (TrimStartAndEnd(), TrimStartAndEndInline()).
Change 3563309 by Graeme.Thornton
Moved some common C# classes into the DotNETCommon assembly
Change 3570283 by Graeme.Thornton
Move some code out of RPCUtility and into DotNETCommon, removing the dependency between the two projects
Added UEConsoleTraceListener to replace ConsoleTraceListener, which doesn't exist in DotNetCore
Change 3572811 by Ben.Marsh
UBT: Add -enableasan / -enabletsan command line options and bEnableAddressSanitizer / bEnableThreadSanitizer settings in BuildConfiguration.xml (and remove environment variables).
Change 3573397 by Ben.Marsh
UBT: Create a <ExeName>.version file for every target built by UBT, in the same JSON format as Engine/Build/Build.version. This allows monolithic targets to read a version number at runtime, unlike when it's embedded in a modules file, and allows creating versioned client executables that will work with versioned servers when syncing through UGS.
Change 3575659 by Ben.Marsh
Remove CHM API documentation.
Change 3582103 by Graeme.Thornton
Simple ResX writer implemetation that the xbox deloyment code can use instead of the one from the windows forms assembly, which isn't supported on .NET Core
Removed reference to System.Windows.Form from UBT.
Change 3584113 by Ben.Marsh
Move key-mapping functionality into the InputCore module.
Change 3584278 by Ben.Marsh
Move FPlatformMisc::RequestMinimize() into FPlatformApplicationMisc.
Change 3584453 by Ben.Marsh
Move functionality for querying device display density to FApplicationMisc, due to dependence on application-level functionality on mobile platforms.
Change 3585301 by Ben.Marsh
Move PlatformPostInit() into an FPlatformApplicationMisc function.
Change 3587050 by Ben.Marsh
Move IsThisApplicationForeground() into FPlatformApplicationMisc.
Change 3587059 by Ben.Marsh
Move RequiresVirtualKeyboard() into FPlatformApplicationMisc.
Change 3587119 by Ben.Marsh
Move GetAbsoluteLogFilename() into FPlatformMisc.
Change 3587800 by Steve.Robb
Fixes to container visualizers for types whose pointer type isn't simply Type*.
Change 3588393 by Ben.Marsh
Move platform output devices into their own headers.
Change 3588868 by Ben.Marsh
Move creation of console, error and warning output devices int PlatformApplicationMisc.
Change 3589879 by Graeme.Thornton
All automation projects now have a reference to DotNETUtilities
Fixed a build error in the WEX automation library
Change 3590034 by Ben.Marsh
Move functionality related to windowing and input out of the Core module and into an ApplicationCore module, so it is possible to build utilities with Core without adding dependencies on XInput (Windows), SDL (Linux), and OpenGL (Mac).
Change 3593754 by Steve.Robb
Fix for tuple debugger visualization.
Change 3597208 by Ben.Marsh
Move CrashReporter out of a public folder; it's not in a form that is usable by subscribers and licensees.
Change 3600163 by Ben.Marsh
UBT: Simplify how targets are cleaned. Delete all intermediate folders for a platform/configuration, and delete any build products matching the UE4 naming convention for that target, rather than relying on the current build configuration or list of previous build products. This will ensure that build products which are no longer being generated will also be cleaned.
#jira UE-46725
Change 3604279 by Graeme.Thornton
Move pre/post garbage collection delegates into accessor functions so they can be used by globally constructed objects
Change 3606685 by James.Hopkin
Removed redundant 'Cast's (casting to either the same type or a base).
In SClassViewer, replaced cast with TAssetPtr::operator* call to get the wrapped UClass.
Also removed redundant 'IsA's from AnimationRetargetContent::AddRemappedAsset in EditorAnimUtils.cpp.
Change 3610950 by Ben.Marsh
UAT: Simplify logic for detecting Perforce settings, using environment variables if they are set, otherwise falling back to detecting them. Removes special cases for build machines, and makes it simpler to set up UAT commands on builders outside Epic.
Change 3610991 by Ben.Marsh
UAT: Use the correct P4 settings to detect settings if only some parameters are specified on the command line.
Change 3612342 by Ben.Marsh
UBT: Change JsonObject.Read() to take a FileReference parameter.
Change 3612362 by Ben.Marsh
UBT: Remove some more cases of paths being passed as strings rather than using FileReference objects.
Change 3619128 by Ben.Marsh
Include builder warnings and errors in the notification emails for automated tests, otherwise it's difficult to track down non-test failures.
[CL 3620189 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
#rb none
=====================================
MAJOR FEATURES + CHANGES
=====================================
Change 3433074 by Matt.Kuhlenschmidt
Fix crash when clicking on certian tutorial blueprints.
#jira UE-44593
Change 3433075 by Matt.Kuhlenschmidt
Remove hittest grid log spam. The underlying problem causing this has been fixed
Change 3433077 by Matt.Kuhlenschmidt
Fix lighting becoming unbuilt when mesh painting
#jira UE-44837
Change 3433081 by Matt.Kuhlenschmidt
PR #3553: Crashfix for static array properties (Contributed by Pierdek)
Change 3433104 by Alexis.Matte
Make sure re-import skeletal mesh follow the import morph option
#jira UE-42846
Change 3434825 by Matt.Kuhlenschmidt
Fix crash when GC happens while the vr editor radial menu is open.
Change 3434831 by Matt.Kuhlenschmidt
Added missing file
Change 3434868 by Shaun.Kime
If you have a reroute node between a Material Function texture input and its usage, the parent material will fail to resolve the reroute node.
#jira ue-44670
Change 3434998 by Alexis.Matte
Meshes editors material/section panel are now fully transactional
- Staticmesh editor: section material slot, section cast shadow, section collision, material slot instance, material slot name
- Skeletal mesh editor: material slot instance, material slot name
Also fix some transaction description
#jira UE-44462
Change 3435195 by Jamie.Dale
Fixed incorrect handling of some LTR scripts that require shaping
These scripts need to go through HarfBuzz, and this also fixes a case where HarfBuzz wasn't applying font scale correctly.
#jira UE-44767
Change 3435199 by Jamie.Dale
Fixed some crashes/artifacts with bidirectional text
It was possible for a line to compute an incorrect range, which could cause crashes or other highlighting issues. The highlighting logic has also been updated as the old code didn't handle all bidirectional cases correctly.
Change 3435200 by Jamie.Dale
Fixed a grapheme cluster metrics issue in the font editor viewport
The viewport also now respects the default shaping method CVar.
Change 3435771 by Alexis.Matte
Fix degenerated bounds calculation for skeletalmesh when the skeleton is remove from a re-import
(PhysicAsset API change, adding 1 function)
#jira UE-44609
Change 3436856 by Jamie.Dale
Added some missing Unicode block ranges
Change 3436914 by Jamie.Dale
Adding some missing combining character ranges to the text shaper
Change 3436923 by Alexis.Matte
PR #3463: Get bounds for all triangles, not just the first one. WedgeIndex was . (Contributed by DaveC79)
#jira UE-43764
Change 3436948 by Jamie.Dale
Updated the Portal to use the predefined Unicode block ranges
Change 3436961 by Max.Chen
Sequencer: Show camera shake/anim track menus even if there aren't any assets.
Change 3437244 by Max.Chen
Sequencer: Clear locked cameras when releasing Sequencer.
#jira UE-44967
Change 3437515 by Arciel.Rekman
UBT: improvements for LocalExecutor.
- Larger number of parallel jobs on 16GB+ machines.
- Use WaitForExit() instead of polling.
- Tested on Linux and Mac.
Change 3437629 by Matt.Kuhlenschmidt
Improve asset import data display in static and skeletal meshes
Change 3438047 by Arciel.Rekman
Fix overlapping ranges being passed to memcpy().
Change 3438822 by Yannick.Lange
ViewportInteraction: Move gizmo handle files to make them private.
Change 3438906 by Matt.Kuhlenschmidt
PR #3556: Git Plugin: fix new option "init Git LFS" that make assets read-only (master/UE4.17) (Contributed by SRombauts)
Change 3438907 by Matt.Kuhlenschmidt
PR #3565: add -quality option to buildlighing commandlet (Contributed by kayama-shift)
Change 3438908 by Matt.Kuhlenschmidt
PR #3558: UE-44862: Always update SColorPicker color on OK button (Contributed by projectgheist)
Change 3439393 by Matt.Kuhlenschmidt
Force highest LOD for highres screenshots
Change 3439819 by Matt.Kuhlenschmidt
Turned FAssetData into a struct for some upcoming script exposure of FAssetData
Change 3439949 by Arciel.Rekman
Fixed selection logic for the UE4_LINUX_USE_LIBCXX environment variable.
- Allows disabling libc++ by setting the variable to 0.
- Pull request #3576 contributed by jared-improbable.
Change 3441078 by Jamie.Dale
The culture/language/locale console commands are now available in all build configs
Change 3441109 by Jamie.Dale
Text containing surrogate pairs now runs through HarfBuzz when shaping in Auto mode
This is needed as the kerning-only shaping code assumes that everything is within the BMP
Change 3441275 by Matt.Kuhlenschmidt
Disable spinning on location and scale. These dont work because we have no notion of infinite spinning
Change 3442748 by Yannick.Lange
ViewportInteraction: Remove unused console variables.
Change 3442775 by James.Golding
Add support for editing MaterialFunctions to MaterialEditingLibrary
Pull Material recompile/update code into UMaterialEditingLibrary::RecompileMaterial
Pull MaterialFunction update code into UMaterialEditingLibrary::UpdateMaterialFunction util
Move RebuildMaterialInstanceEditors to UMaterialEditingLibrary
Added test content for Material/MaterialFunction editing
Add needed BlueprintReadWrite to expressions (constants, function input/output)
Expose UMaterialExpressionMaterialFunctionCall::SetMaterialFunction to BP, rename old func (which takes old function) to SetMaterialFunctionEx, also expose GetInputNameWithType
Change 3442779 by James.Golding
Fix header order
Change 3442817 by Yannick.Lange
ViewportInteraction: Add can execute checks for level editor commands.
Change 3443038 by Michael.Dupuis
#jira UE-43377: When you select a foliage actor we will move all instance contained in it to the new level as we can't move a foliage actor
Only permit moving foliage instance if there is some selected
Change 3443855 by Michael.Dupuis
#jira UE-44885: Unregister from PerModuleDataObjects when the object is destroyed
Change 3446096 by Max.Chen
Sequencer: Add OnFinished() event when a level sequence completes playback
#jira UE-45173
Change 3446097 by Max.Chen
Sequencer: Evaluate one last time before the sequence is torn down and reset
#jira UE-45174
Change 3446242 by Jamie.Dale
Fixed caret not appearing in empty text layouts
Caret selections have no range, and therefore have no width
Change 3446361 by Matt.Kuhlenschmidt
Fix WITH_EDITOR only functions causing generated code compile errors when the all functions on the class are WITH_EDITOR
Change 3446457 by Alexis.Matte
Polish the speed tree import dialog
#jira UE-44963
Change 3446946 by Michael.Trepka
Modified FWindowsWindow::GetRestoredDimensions to return correct window position for normal windows for which GetWindowPlacement returns position in workspace coordinates
#jira UE-37934
Change 3447543 by Arciel.Rekman
Reduce VMAs on Linux.
- Trades off increased address space (VIRT in terms of ps/htop) for smaller number of distinct mappings (VMAs, virtual memory areas).
This decreases possibility to run into vm.max_map_count limit on Linux.
- Tested on Linux and Mac.
Change 3448468 by Arciel.Rekman
Fix race condition during creation of GMalloc.
- On Mac GMalloc can be created on two different thread that are racing with each other - app's main thread and a system thread.
Change 3449012 by Max.Chen
Sequencer: Add time to transform, color and vector key structs so that key times are editable from the key editors.
#jira UE-45089
Change 3449018 by Max.Chen
Sequencer: Add OnCameraCut event that fires when there is a camera cut.
#jira UE-45137
Change 3449195 by Max.Chen
Sequencer: Add setting for limit scrubbing to playback range.
#jira UE-43502
Change 3449198 by Max.Chen
Sequencer: Reorder hierarchical bias so that group priority takes precedence.
Change 3449217 by Max.Chen
Sequencer: Add setting to activate realtime viewports when in sequencer.
Change 3449219 by Max.Chen
Sequencer: Focus on search boxes when opened.
Change 3449238 by Max.Chen
Sequencer: Assign actor should replace the actor itself after it has updated all the components. Also, replace components be fullname rather than by class.
Change 3449239 by Max.Chen
Sequencer: Fix offsets when moving multiple sections. Dragging should be clamped to the bounds that any of the selected sections hits against the unselected sections.
Change 3449241 by Max.Chen
Sequencer: Restore section selection after full tree rebuild.
Change 3449279 by Max.Chen
Sequencer: Set movie scene capture frames only when not using custom frames. This allows the user entered frame numbers to persist in config, rather than overwriting them when doing a "Render Shot"
Change 3449280 by Max.Chen
Sequencer: Spawn in the persistent level. Otherwise, they get spawned into whatever sublevel is current.
#jira UE-44552
Change 3449294 by Max.Chen
Sequencer: Null check for sequencer ed mode crash.
Change 3449297 by Max.Chen
Sequencer: Fix delay in sliding values. Mark changed when sliding values. Mark refresh immediately when committing values since OnValueChanged will be called and needs to have the correct value that was refreshed immediately.
#jira UE-42866
Change 3449542 by Max.Chen
Sequencer: Fix scrubber hit testing so that the time scrubber is really favored over the playback ranges.
#jira UE-44569
Change 3451507 by Matt.Kuhlenschmidt
Fix extra slate uv coords not functioning on ES2
Change 3451510 by Matt.Kuhlenschmidt
PR #3595: Fixed wrong colour for level status (Contributed by ronve)
Change 3451529 by Alexis.Matte
fbx scene importer: Make sure we set INVALID_UNIQUE_ID to node that has no attribute.
#jira UE-34410
Change 3451611 by Yannick.Lange
ViewportInteraction: Dragging gizmo without second pass for snapped calculations.
Change 3452134 by Jamie.Dale
Fixed constant font cache flushing if a widget had no font set
Change 3452239 by Jamie.Dale
Fixed constant font measure flushing if a widget had no font set
Change 3452243 by Jamie.Dale
Removed deprecated code for creating fonts from bulk data
Change 3452277 by Jamie.Dale
The concept of "stale" composite fonts is now editor-only
Change 3452358 by Alexis.Matte
Fbx scene importer: Do not remove existing attribute reference from the blueprint if the reimport of the associate mesh attribute is not tick.
#jira UE-45232
Change 3452678 by Max.Chen
Sequencer: Fix crash on export if there's no shot data.
Change 3453057 by Matt.Kuhlenschmidt
Exposed asset exporting to script
Change 3453782 by Andrew.Rodham
Sequencer: Fixed deterministic cooking issues with movie scene data
- Movie scene signatures are now initialized in PostInitProperties
- A warning is now presented when attempting to cook old data that was never serialized with a signature.
- Removed redundant legacy data upgrade logic that could dirty level sequences on load.
#jira UE-44912
Change 3453788 by Yannick.Lange
ViewportInteraction: Custom scene proxy for gizmo handles.
Change 3453938 by Max.Chen
Sequencer: Hotkeys (shift , and shift .) to step to next/previous shot
#jira UE-45119
Change 3454058 by Michael.Dupuis
Fixed StaticAnalysis
Change 3454077 by Max.Chen
Sequencer: Fix not saving the pre-animated track value when creating a track/key.
On pre object change, broadcast property change so that a track or key can be created. That track/key needs to be evaluated immediately so that the pre-animated state can be saved properly. This is done now with RefreshAllImmediately and is only called when a track has been created. Also, added a return value for OnKeyProperty, so that it's known what changed in particular (ie. track created, track modified, etc)
Also, fixed transform keying so that if a transform track already exists for the object or the scene component, the existing track is used.
#jira UE-45130
Change 3454108 by Nick.Darnell
UMG - Fixing the WIC to properly record cursor delta so that scrollbars work.
Change 3454109 by Jamie.Dale
Cache the text layout source info in non-shipping builds so you can inspect it in the debugger
Change 3454202 by Matt.Kuhlenschmidt
Fix bogus error message about the number of usable texture coordinates on ES2 when compiling a UI domain material
Change 3454390 by Yannick.Lange
Fix creating a plugin in a C++ project opens a second instance of Visual Studio. Use SourceCodeAccessor to open solution when necessary.
#jira UE-45035
Change 3454564 by Matt.Kuhlenschmidt
#rnx Fix deprecation warnings
Change 3455471 by Yannick.Lange
ViewportInteraction: Fix entering and exiting VR Mode disables gizmo in desktop editor viewport.
#jira UE-44965
Change 3456183 by Max.Chen
Sequencer: Auto key, auto track refactor.
Auto key - create a key when the property changes and there's an existing track.
Auto track - create a track when the property changes. This is only exposed in the level sequence editor.
All - create a key and a track when the property changes. This is only exposed in VR Editor.
None - do nothing.
#jira UE-43469
Change 3456349 by Andrew.Rodham
Sequencer: Only perform legacy signature checks on instances, and only where signatures match the CDO
Change 3456678 by Alexis.Matte
Allow to add null level instance override material via the advance material array. But still limit the override material number to the mesh material number.
#jira UE-45306
Change 3456945 by Max.Chen
UMG: Add restore state to 2d transform section.
#jira UE-45372
Change 3457196 by Arciel.Rekman
Linux: serialize allocations from the memory pool.
Change 3458434 by Max.Chen
Sequencer: Remove obsolete set tick prerequites functions.
Change 3458671 by James.Golding
Added MIC editing support to MaterialEditingLibrary
Fix static analysis warning
Change 3458888 by Matt.Kuhlenschmidt
PR #3615: More detailed log messages for debugging warnings/errors (Contributed by projectgheist)
Change 3458893 by Matt.Kuhlenschmidt
PR #3583: UE-44960: Delta value wasn't being used (Contributed by projectgheist)
Change 3458895 by Matt.Kuhlenschmidt
Fix typo
Change 3458902 by Matt.Kuhlenschmidt
PR #3607: Improved InputKeySelector functionality (Contributed by projectgheist)
Change 3458917 by Matt.Kuhlenschmidt
Fix crash with invalid object properties in the class picker
#jira UE-39000
Change 3458939 by Matt.Kuhlenschmidt
Fix compile error
Change 3458984 by andrew.porter
QAGame: Initial check in of sequencer smoke test map
Change 3459510 by Matt.Kuhlenschmidt
Fixed ensure when deleting a map that contains build data which also happens to be the currently loaded map.
#jira UE-45052
Change 3460985 by Max.Chen
Sequencer: Snap play time to keys now allows scrubbing between keys and snaps to key times within a certain screenspace tolerance.
#jira UE-45090
Change 3461698 by Arciel.Rekman
Avoid using ARRAY_COUNT in Vulkan.
- Sometimes those arrays can have no extensions whatsoever, and it is illegal to declare a 0 element C array.
Change 3462053 by Max.Chen
Sequencer: Show sequencer spawnables in the world outliner and add the icon overlay for spawnables.
#jira UE-43470
Change 3462139 by Max.Chen
Property Editor: Add objects to FPropertyAndParent
Change 3462202 by Arciel.Rekman
Fix FSocket::Recv() blocking with Peek when there's no data.
Change 3462253 by Nick.Darnell
Slate - New Clipping System
Clipping is now a stateful choice made during composition of the slate hierarchy. Previously every widget got to respect or modify the clipping rect on an as needed basis. The problem was that clipping was only allowed in the layout space of the widget, and it wasn't possible to properly clip elements with render transforms. The new system permits all kinds of transforms on any widget, and they will all be clipped correctly. It tries to use Scissor Rects as they are much cheaper, but will switch over to stenciling if need be to represent a complicated masking structure with several rotated clipping rects all needed to be combined together.
Here are the new clipping states a widget can have, almost all widgets are set to No. Only change it from No if your widget actually needs to clip, generally speaking most widgets don't need to clip.
/**
* This widget does not clip children, it and all children inherit the clipping area of the last widget that clipped.
*/
Inherit,
/**
* This widget clips content the bounds of this widget. It intersects those bounds with any previous clipping area.
*/
ClipToBounds,
/**
* This widget clips to its bounds. It does NOT intersect with any existing clipping geometry, it pushes a new clipping
* state. Effectively allowing it to render outside the bounds of hierarchy that does clip.
*
* NOTE: This will NOT allow you ignore the clipping zone that is set to [Yes - Always].
*/
ClipToBoundsWithoutIntersecting UMETA(DisplayName = "Yes - Without Intersecting (Advanced)"),
/**
* This widget clips to its bounds. It intersects those bounds with any previous clipping area.
*
* NOTE: This clipping area can NOT be ignored, it will always clip children. Useful for hard barriers
* in the UI where you never want animations or other effects to break this region.
*/
ClipToBoundsAlways UMETA(DisplayName = "Yes - Always (Advanced)"),
/**
* This widget clips to its bounds when it's Desired Size is larger than the allocated geometry
* the widget is given. If that occurs, it behaves like [Yes].
*
* NOTE: This mode was primarily added for Text, which is often placed into containers that eventually
* are resized to not be able to support the length of the text. So rather than needing to tag every
* container that could contain text with [Yes], which would result in almost no batching, this mode
* was added to dynamically adjust the clipping if needed. The reason not every panel is set to OnDemand,
* is because not every panel returns a Desired Size that matches what it plans to render at.
*/
OnDemand UMETA(DisplayName = "On Demand (Advanced)")
- Large API Change -
All FSlateDrawElement::Make_____ calls have been deprecated that involved passing in a clipping rect. You no longer should are passed a Clipping rect via OnPaint. You are still passed a rect, but this rect represents a Culling Rect, which is valuable if you need to just out right not paint things the user can't possibly see.
If you were previously trying to determine if you should cull widgets, by doing something like this,
if ( FSlateRect::DoRectanglesIntersect(MyClippingRect, CurWidget.Geometry.GetRenderBoundingRect()) )
That's no longer a good option since there are ways for widgets to ignore the culling bounds. You should convert anything like above to the one below,
if (!SWidget::IsWidgetCulled(MyCullingRect, CurWidget))
To assist in debugging efforts, there are several new debugging console flags in Slate,
Slate.ShowClipping 1 - Controls whether we should render a clipping zone outline. Yellow = Axis Scissor Rect Clipping (cheap). Red = Stencil Clipping (expensive).
Slate.DebugCulling 1 - Disables pushing clipping or stencil rects to the GPU, but continues to intersect culling rects, so that you can tell if a widget is properly culling children it can't possibly draw.
Slate.ShowTextDebugging 1 - Show debugging painting for text rendering.
I've added a new Experimental Feathering Option, it adds AA geometry around the outside of Box and Image brushes.
Slate.Feathering 1
If you're using RenderDoc or something similar, you can now enable render events for slate, so that you can better grok how we're batching and changing states for each UI render pass.
Slate.EnableDrawEvents 1
#jira UE-4659
#rn
Change 3462714 by Nick.Darnell
Fixing a few more compiler issues with the clipping changes.
Change 3462726 by Max.Chen
Switch OnEditStructChildContentsChanged to use FObjectWriter instead of FMemoryWriter which supports serializeing UObjects. This fixes a crash when adding actor array elements to a user defined event struct.
#jira UE-45431
Change 3462801 by Nick.Darnell
Adding a UMG dependency to EngineTestBuild.
Change 3462914 by Max.Chen
Sequencer: Fix regression where spawnables aren't getting saved. Caused by 3407138
#jira UE-30007
#jira UE-39003
Change 3462946 by Nick.Darnell
Automation - Tweaking the UI automation tests converting them over to use the new UI Screenshot automation test.
Automation - Adding a blur widget test.
Change 3462987 by Matt.Kuhlenschmidt
Back out changelist 3458893
Change 3464774 by Matt.Kuhlenschmidt
PR #3629: Bugfix: Missing small icon in Project Launcher profile editor (Contributed by aarmbruster)
Change 3464785 by Nick.Darnell
Fixing some clipping stuff in the editor.
Change 3464830 by andrew.porter
QAGame: Second pass on sequencer smoke test map
Change 3464902 by Nick.Darnell
Loading - Adding some additional checks to the the loading code to ensure we're on the main thread. Additionally adding a fix from UDN that prevents deadlocks in the rare case a user hits Alt+Tab in a fullscreen game while in a hard loading screen.
Change 3464988 by Max.Chen
Sequencer: Add attenuation settings for attached audio components.
#jira UE-33080
Change 3465024 by Nick.Darnell
MoviePlayer - Impoving the playback mode displaynames.
Change 3465074 by Arciel.Rekman
Fix shadowing issues of GraphicsPSOInit.
Change 3465097 by Matt.Kuhlenschmidt
Some refactoring of the details panel
Exposed new methods of adding a struct on scope to a details panel and have it work properly with customizations. The scruct on scope has a "fake" ustructproperty that allows the details panel to show the whole struct not just an individual property.
Refactored the API for adding rows to details panels to make it more consistent\
AddChildCustomBuilder->AddCustomBuilder
AddChildGroup->AddGroup
AddChildContent->AddCustomRow
AddChildPropert->AddProperty
AddChildStructure->AddExternalStructureProperty
AddStructure->AddAllExternalStructureProperties
AddExternalProperty->AddExternalObjectProperty or AddExternalStructureProperty
Change 3465186 by Max.Chen
Sequencer: Save the BindingID in the pre animated token producer so that it can be destroyed properly. This fixes a bug where the default state of a spawnable isn't saved.
#jira UE-43780
Change 3465315 by Matt.Kuhlenschmidt
Fix Fortnite and Orion details panel customization warnings
Change 3465424 by Nick.Darnell
Automation - Moving the step for setting the link to the automation reports to be set before we start the engine.
Change 3465488 by Nick.Darnell
Automation - Forcing textures to load before taking screenshot, so that the scene gets another opportunity to render before we render with Slate. This should fix the Blur UI Test.
Change 3466277 by Arciel.Rekman
Linux: fix window drift when dragging (UE-40380).
- Change by Cengiz Terzibas.
Change 3466370 by Nick.Darnell
UMG - Fixing the colors for the resize handle in the designer.
Change 3466372 by Nick.Darnell
UMG - Fixing the ruler ticks sometimes not being drawn.
Change 3466374 by Nick.Darnell
UMG - Fixing the designer showing multiple options for sequencer.
Change 3466377 by Nick.Darnell
UMG - Cleaning up some clipping bits.
Change 3467025 by Andrew.Rodham
Re-saving assets that contain legacy (<4.15) movie scene data to remove deterministic cook warning.
If conflicts arise during merging of these assets, please ignore the changes made in dev-editor, and accept game-side changes.
(CIS step 62283298, jobId 7773146)
(CIS step 62283297, jobId 7773146)
Change 3467099 by Max.Chen
Fix GetObjectPropertyClass ensure logic. This was returning UObject::StaticClass when valid.
Change 3467172 by Max.Chen
Sequencer: Evaluation optimizations. Also, fixes subsequences not getting expired, leaving dangling spawnables.
#jira UE-43690
Change 3467192 by Matt.Kuhlenschmidt
Fix transactions getting stuck in the color grading controls. This prevents PIE from working properly and causes shutdown crashes
#jira UE-45527
Change 3467251 by Yannick.Lange
ViewportInteraction: Fix scale and rotation snap while dragging with two lasers.
#jira UE-43489
Change 3467331 by Matt.Kuhlenschmidt
Fix D3D shader compiler hard coding shader path and not giving proper warnings when it cannot find the shaders
Change 3467335 by Matt.Kuhlenschmidt
Remove DarkStyle attribute from SNumericEntryBox and allow a spin box style to be passed to it.
Change 3467558 by Max.Chen
Scene Outliner: Generic support to add default columns to a scene outliner.
Change 3467565 by Jamie.Dale
Removing old screenshot data for test
Change 3467589 by Nick.Darnell
Editor - Random cleanup.
Change 3467596 by Nick.Darnell
Progress Bar - Exposing Border Padding to UMG.
Change 3467600 by Nick.Darnell
Slate - Adjusting the rendering of the splitter, previously it could be off by a pixel or two, which becomes more apparent now with the clipping changes.
Change 3467601 by Max.Chen
Property Editor: Fix static analysis warning
Change 3467662 by Nick.Darnell
Automation - Fixing a bug with the screenshot comparison tool not replacing (removing) the old screenshot data.
Change 3467674 by Max.Chen
Property Editor: Fix static analysis warning
Change 3467737 by Max.Chen
Sequencer: Added OnMovieSceneBindingsChanged delegate
Change 3468053 by tim.gautier
QAGame: Updating Editor Smoke Map
- Updated landscapes into Stations for testing
- Added Foliage Sublevel
Change 3468194 by Arciel.Rekman
Linux: fix problems communicating with various STL-using libs.
- Stop hiding global new/delete signatures.
- Disable CEF3 since this change uncovers the problem with libcef.so not built to use bundled libpng.
Change 3468678 by Max.Chen
Sequencer: Set "Sequencer Actor" tag before setting the actor label so that the outliner refreshes after the actor has the tag.
Change 3469314 by tim.gautier
QAGame: Added Painted Foliage / Spline section to EditorSmoke map
Change 3469377 by Nick.Darnell
Slate - Fixing some warnings in a couple of sample games due to the clipping changes.
#rnx
Change 3469767 by Max.Chen
Sequencer: Outliner column and sequencer binding data
#jira UE-43470
Change 3469974 by Arciel.Rekman
Fix code projects not working in Linux installed build.
Change 3470082 by Nick.Darnell
Slate - The GetRenderer() call on SlateApplication no longer returns a SharedPtr, rather than convert it to a thread safe ptr, going to just make accessing it a raw ptr return, so it can be safely referenced on the game thread while being used on the slate loading thread.
Change 3470174 by Nick.Darnell
Slate - Get the last widget in a widget path utility.
Change 3470176 by Nick.Darnell
UMG - User Widgets now have an easy way to know if they're part of or have been removed from the focused widget path, which is handy for doing effects.
Change 3470261 by Nick.Darnell
Slate - The GetRenderer() call on SlateApplication no longer returns a SharedPtr, rather than convert it to a thread safe ptr, going to just make accessing it a raw ptr return, so it can be safely referenced on the game thread while being used on the slate loading thread.
Change 3470286 by Max.Chen
Sequencer: Scene Component's HiddenInGame now goes through the VisibilityTrack and the visibility template.
Change 3470366 by Nick.Darnell
Slate - We now version focus per user, that way during focus events, we can safely abort focus events and state transitions if someone interrrupts the active focus event with something new.
Change 3470649 by Matt.Kuhlenschmidt
Fix deprecation warnings
Change 3470695 by Matt.Kuhlenschmidt
Fixed typo
#jira UE-45580
Change 3470721 by Matt.Kuhlenschmidt
Fix static analysis
Change 3471254 by Michael.Dupuis
#jira UE-42952: Keep occlusion result per view
Change 3471287 by Nick.Darnell
UMG - Render Focus Rule now defaults to never.
Change 3471291 by Nick.Darnell
Slate - Fixing FSlateRenderer* change fallout.
Change 3471299 by Nick.Darnell
Slate - Fixing FSlateRenderer* change.
Change 3471323 by Nick.Darnell
Automation - Fixing automation and Static Analysis warning.
Change 3471413 by andrew.porter
QAGame: Added test content for anim blending and material parameteres to sequencer smoke level
Change 3471649 by Max.Chen
Sequencer: Modify the track when adding animation
#jira UE-45618
Change 3471659 by Matt.Kuhlenschmidt
Added a way to check if a movie is playing from the engine.
Prevented viewport redraws for canvas loading screens if a slate based loading movie is playing
Change 3471734 by Matt.Kuhlenschmidt
Added basic material hookup to USD. Similar to FBX it will find materials based on rules specified by the user in the import settings
Change 3472176 by Nick.Darnell
UMG - Improving the display of the +Track menu in sequencer for UMG. Renamed it from +Add, which is repetitve to +Track. Additionally, the dropdown now shows the currently selected widgets, as well as a submenu containing all the 'important' widgets, so we no longer populate that list with a ton of irrelevant widgets that are just Buton_1 - N, which is pointless in showing people, they'll never guess which is the right button.
Change 3472740 by Max.Chen
Sequencer: Add GetThisFrameMetaData accessor
Change 3472748 by Max.Chen
Sequencer: Added OnBeginScrubbing and OnEndScrubbing event delegates
Change 3472753 by Max.Chen
Sequencer: Add EMovieSceneDataChangeType parameter to OnMovieSceneDataChanged delegate
Change 3472870 by Nick.Darnell
Clipping - Fixing the deprecated tip for scissor rect boxes to be correct. Removing it's usage from UT.
Change 3473340 by Max.Chen
Scene Outliner: Add ability to register additional filters
Change 3473348 by Max.Chen
Details View: Make ForceRefresh virtual. Added accessors to delegates (ie. GetIsPropertyReadOnlyDelegate)
Change 3473441 by Max.Chen
Sequencer: Autokey Refactor Part 2.
Autokey is now a single toggleable state.
Allow Edits Mode has 3 states:
Allow All Edits - Allow any edits to occur, some of which may produce tracks/keys or modify default properties.
Allow Sequencer Edits Only - All edits will produce either a track or a key.
Allow Level Edits Only - Properties in the details panel will be disabled if they have a track.
#jira UE-45229
Change 3473670 by Nick.Darnell
Modules - The module manager no longer returns sharedptrs to IModuleInterfaces, this was the source of rare hard to track down crashes due to a shared ptr reference leak when GetModule was called on non-main threads. We now store a TUniquePtr internally, and only lease out raw pointers.
#rn
Change 3473711 by Nick.Darnell
Disabling the ensure in the module manager.
Change 3473747 by Max.Chen
Sequencer: Fix tooltip
Change 3474091 by Jamie.Dale
Added a warning when cooking a UFontFace that is outered to a UFont asset
These cause issues with iterative COTF, and should be split off into their own assets (as the UI has been asking people to do for several versions)
Change 3475052 by Yannick.Lange
VR Editor: Fix Crash when quitting the editor with VR Mode enabled. VR Editor was being enabled when saving the map on closing the editor.
#jira UE-45415
Change 3475054 by Yannick.Lange
Fix crash when adding a camera to the world in VR Mode the second time. The slate application did not reset when stop dragging in VR Mode, so the second time when starting to drag a camera out of the UI it would already by in a dragging state.
#jira UE-45574
Change 3475263 by Nick.Darnell
Fixing some additional cases of IModuleInteface SharedPtr usage.
Change 3475268 by Max.Chen
Sequencer: Set jumped state when looping playback. This fixes an issue where audio doesn't stop and restart when looped.
#jira UE-45654
Change 3475269 by Max.Chen
Scene Outliner: Additional filters should only apply to actor browsing mode
Change 3475407 by Nick.Darnell
Fixing some clipping / module shared ptr changes in the launcher code.
Change 3475542 by Max.Chen
Sequencer: Update thumbnail and section highlighting to use new clipping behavior.
#jira UE-45692
#jira UE-45689
Change 3475743 by Michael.Dupuis
#jira UE-45183: When updating phyx region take into account simple collision mip
Change 3475949 by Arciel.Rekman
Remove PhysX deoptimization (no longer needed).
- OR-24947 has been closed three months ago.
Change 3476022 by Michael.Dupuis
#jira UE-45560: Make sure we're not going out of range
Change 3476063 by Michael.Dupuis
#jira UE-45562: Do not try to unregister from static mesh if no static mesh is specified for the component
Change 3476168 by Michael.Trepka
Added handling of directory symlinks to FApplePlatformFile::IterateDirectory
#jira UE-43704
Change 3476172 by Nick.Darnell
Fixing a Imoduleinterface change.
Change 3476183 by Jamie.Dale
Exposing GoTo/ScrollTo to single-line editable text for API parity with multi-line editable text
Change 3476385 by Arciel.Rekman
Linux: handle symlinks when iterating directories.
Change 3476522 by Michael.Trepka
Solved a problem with Mac FMallocTBB::Malloc() returning nullptr for 0 bytes allocations, which is inconsistent with other platforms. On Mac we always scalable_aligned_malloc, which behaves differently than scalable_malloc, so for 0 bytes requests we allocate sizeof(size_t), which is exactly what scalable_malloc does internally in such case.
Change 3476806 by Nick.Darnell
UMG - Focus the designer after dropping a widget onto the surface.
Change 3476809 by Nick.Darnell
Curve Editor - Enable Clipping on the curve editor.
Change 3477475 by Nick.Darnell
Fixing a module interface shared ptr usage in UT.
Change 3477553 by Yannick.Lange
VR Editor: Removed AssetEditorPanelID and replaced it with TabManagerPanelID. A panel for AssetEditorPanelID was never created making it impossible to open an asset editor.
Change 3477734 by Yannick.Lange
VR Editor: Fix Warning: SetRelativeScale3D : Invalid Scale entered (X=inf Y=inf Z=inf). Resetting to 1.f. warning when adding CineCameraActor to World from Modes Panel. Make sure to not divide by zero when there is no boundary scale.
#jira UE-44933
Change 3477761 by Jamie.Dale
Some improvements to avoid loading the native .locres files twice when we don't need to
Change 3477780 by Nick.Darnell
PR #3250: Return correct VirtualUserIndex (Contributed by projectgheist)
Change 3477786 by Nick.Darnell
PR #3650: Changed TestNull to accept const pointers. (Contributed by e-agaubatz)
Change 3477795 by Nick.Darnell
PR #2844: UE-36936: Don't stretch container for Plugin Image (Contributed by projectgheist)
Change 3478092 by Nick.Darnell
PR #2341: Optional Middle Mouse Button panning in Graph Editor (Contributed by flipswitchingmonkey)
Engine Edit - Made some small changes to the enum type, and some naming.
Change 3478450 by Nick.Darnell
Fixing some uninitialized variable errors.
Change 3479827 by Andrew.Rodham
Sequencer: Addressed serialization issues with some struct types
Change 3479874 by Jamie.Dale
Fixed "NativeGameLanguage" not being used correctly during localization initialization
Change 3480012 by Andrew.Rodham
Sequencer: Fixed loading tagged properties as native for track identifiers
#jira UE-45823
Change 3480337 by Alexis.Matte
Fix morph target crash missing some valid index check
Change 3480804 by Alexis.Matte
Fix crash with ColorGradingMode custom detail
#jira UE-45638
Change 3480892 by Andrew.Rodham
Sequencer: Ensure that movie scene sequences know about the editor object version
#jira UE-45842
Change 3481073 by Nick.Darnell
Fix the shader compiler error from main in Slate.
Change 3481303 by Nick.Darnell
UMG - Fixing a bug with the drag handle not working correctly in HDPI mode.
Change 3481308 by Nick.Darnell
Slate - Tweaking the IsWidgetCulled logic to consider both the layout and rendering bounds. If we do this, we get a much more desireable outcome for people that want to animate widgets and such and plan to have temporary animations to move the widget offscreen, but want the layout bounds to anchor that widget in the visible frame so that it animates even when normally it would be culled b/c the render transform and therefore the renderbounds moved it completely outside the culling rect.
Change 3481629 by Max.Chen
Sequencer: Add Level Sequence Actor as an output for CreateLevelSequencePlayer()
#jira UE-45785
Change 3481899 by Yannick.Lange
VR Editor: Added debug modetoggle command with an event that is broadcasted whenever this happens. Currently this is used to show all the floating UIs of the UI system to debug without HMD using VREd.ForceVRMode.
Change 3481984 by Michael.Dupuis
#jira UE-45845: always validate if we have a static mesh before trying to access it as user can decide to not assign one and use the tools
Change 3482047 by Nick.Darnell
Slate - Adding some comments to IsWidgetCulled.
Change 3482110 by Nick.Darnell
Slate - IsWidgetCulled is no longer static and is now called IsChildWidgetCulled.
Change 3482136 by Jamie.Dale
The CamelCase break iterator now treats digits around character tokens as part of the identifier
Change 3482138 by Michael.Dupuis
#jira UE-45854: Properly unregister during undo operation
Change 3482150 by Michael.Dupuis
#jira UE-45845 : Add missing nullcheck for GetStaticMesh
Change 3482153 by Nick.Darnell
Slate - IsWidgetCulled is no longer static and is now called IsChildWidgetCulled.
Change 3482180 by Nick.Darnell
UMG - Widget Components do not need to define a widget class to be rendererd, they can have native slate widgets only. This was a regression from main.
Change 3482273 by Nick.Darnell
UMG - Tweaking some more things about the widget component box outline.
Change 3482308 by Alexis.Matte
Fixing morph target smooth group support. Do not call FillSkeletalMeshImportData more then once on FbxNode since this fonction is doing some conversion and change the FbxNode, applying those conversion twice do not return the same faces smooth group.
#jira UE-45696
Change 3482327 by Nick.Darnell
UMG - More tweaks to the WidgetComponent so both shows the box outline, but works in game and VR editor.
Change 3482705 by Andrew.Rodham
Resaving assets that contain legacy data to suppress CIS warnings.
- If conflicts arise in these assets, please take game-side changes and ignore these.
Change 3484245 by Max.Chen
Sequencer: Evaluate on end scrub. This fixes a bug where audio doesn't evaluate in a stopped position at the end of scrubbing, causing it to not stop all sounds. This fixes a bug introduced from 3365018 where evaluate on end scrub was removed.
#jira UE-45905
Change 3484263 by Max.Chen
Sequencer: Fix crash on forcing refresh of details panel on release.
#jira UE-45911
Change 3484431 by Andrew.Rodham
Resaving assets that contain legacy data to suppress CIS warnings.
- If conflicts arise in these assets, please take game-side changes and ignore these.
Change 3484474 by Alexis.Matte
Fix the morph target animation curve name matching.
#jira UE-20294
Change 3484475 by Alexis.Matte
When removing a LOD, make sure we remove all morph target data associate to the LOD.
Change 3484489 by Nick.Darnell
PR #3668: UE-45908: Cache debug line locations when performing a LineTraceMulti (Contributed by projectgheist)
#jira UE-45908
Change 3484692 by Nick.Darnell
Slate - Reverting a change from a game stream. All Arranged Children don't need to allocated 42 to begin with. Do need to initialize WidgetPaths better.
Change 3484703 by Nick.Darnell
Player Input - Making the input event loop for players obey EKeys::NUM_TOUCH_KEYS, rather than being set to Touch10, as the maximum touch input amount, to make supporting greater than 10 touches easier. Also making the seeding of keys use EKeys::NUM_TOUCH_KEYS.
#jira UE-43213
Change 3484918 by Jamie.Dale
Fixed font measuring regression with RTL text
RTL applies the character count to the next glyph, so it shouldn't process the end of the loop (this was how the older code used to work).
Change 3485718 by Nick.Darnell
Editor - Removing Super Search & User Feedback button.
Change 3485719 by Nick.Darnell
Portal - Removing SuperSearch.
Change 3485751 by Matt.Kuhlenschmidt
Fix crash accessing platformer game menu if the menu is open during a console based load
#jira UE-45950
Change 3486047 by Arciel.Rekman
Linux: add OpenEXR implementation (UE-40270).
#jira UE-40270
Change 3486467 by Max.Chen
Sequencer: Reset max tick rate when destroyed.
#jira UE-45956
Change 3486477 by Max.Chen
Sequencer: Refresh outliner when column is removed.
#jira UE-45891
Change 3486667 by Andrew.Rodham
Added missing include
Change 3486724 by Andrew.Rodham
Sequencer: Fixed curves with no default value, and no keys being evaluated and applied to properties
- Also fixed an edge case where a zero (but non-animated) channel could be applied to a final transform
Change 3486730 by Alexis.Matte
In the Auto-Reimport options, hide the mout point only for the default /Game/ folder
#UE-45684
Change 3486749 by Alexis.Matte
Make sure the parent window of the monitor directory browse folder is set properly
#jira UE-45682
Change 3486805 by Matt.Kuhlenschmidt
Additional safety against invalid objects being accessed by slate
Change 3486848 by Alexis.Matte
Make sure Monitor folder feature support root mount point map folder
During auto import, give priority to asset import factory over the scene import factory
#jira UE-45691
Change 3486879 by Andrew.Rodham
Removing obsolete QA assets
Change 3486950 by Nick.Darnell
PR #2281: Scrollbar missing features and SScrollbar fixes (Contributed by SNikon)
Review - made some adjustments from the original.
Change 3486954 by Nick.Darnell
Slate - Moving the STableViewBase over to the FOverscroll class, rather than it's own clone.
Change 3486967 by Nick.Darnell
Slate - Fixing some HDPI calculations for fitting new windows on screen, it was using the unscaled size of the widgets for fitting, when it needed to scale them up.
Change 3486970 by Andrew.Rodham
Sequencer: Delay mouse capture until drag for sequencer time slider
- Fixes context menus not opening as a result of mouse capture being taken on mouse down
#jira UE-45937
Change 3486984 by Andrew.Rodham
Sequencer: Improved blending type iconography
Change 3486996 by Nick.Darnell
UMG - Adding a way for games to opt-out of the slow widget path, to completely prevent them from being cooked.
UMG - The movie data is no longer cloned for each new instance that inhabits. It now keeps a reference to the now publically accessible movie scene data on the class instead.
Change 3487070 by Andrew.Rodham
Sequencer: Added graphics for key areas that represent empty space
Change 3487195 by Andrew.Rodham
Sequencer: Changed evaluation groups to always flush implicitly
- Due to the latent nature of blended token types, it's no longer safe to rely solely on execution token order between tracks
- This fixes an issue where events set in the PostEvaluation stage were executed before blended token actuation
Change 3487322 by Nick.Darnell
PR #2457: Add .gitdeps.xml-files for plugins support (Contributed by bozaro)
Change 3487363 by Nick.Darnell
PR #2481: Fix for packing of a project with users plugins (Contributed by yatagarasu25)
Change 3487439 by Nick.Darnell
PR #2642: Changed private to protected in SVirtualJoystick.h (Contributed by Skylonxe)
Change 3487500 by Arciel.Rekman
Removed LinuxNativeDialogs.
- No longer used; has been superceded by SlateDialogs since UE 4.8 (2 years ago).
Change 3487630 by Lauren.Ridge
Don't create Landscape Info Maps for Editor Preview Worlds or thumbnail worlds
#jira UE-44885
Change 3487864 by Matt.Kuhlenschmidt
Exposed the asset registry to blueprints and script. Works in editor scripts and runtime scripts
AssetRegistry is now a UInterface object.
Blueprint users can access various asset registry methods using the asset registry interface (via GetAssetRegistry) and various static helpers in the AssetRegistryHelpers object
C++ users should still continue to use IAssetRegistry.
Change 3487879 by Matt.Kuhlenschmidt
Renamed asset tools uobject helper to UAssetToolsHelpers
Change 3487926 by Lauren.Ridge
Fixing reset to default not showing up for custom widgets
#jira UE-44164
Change 3488184 by Matt.Kuhlenschmidt
PR #3656: Make References/Referencers List copyable (Contributed by user37337)
#jira UE-45763
Change 3488240 by Matt.Kuhlenschmidt
Fix compiler issue
Change 3488350 by Lauren.Ridge
Landscape info map transactional state is based on its world's transactional state
#jira UE-44885
#jira UE-46019
Change 3488412 by Matt.Kuhlenschmidt
Fix reset to default showing up in two different places for some customizations
Change 3488413 by Matt.Kuhlenschmidt
Fix slate font customization
Change 3488414 by Matt.Kuhlenschmidt
Fix slate font customization
Change 3488415 by Matt.Kuhlenschmidt
Missed file
Change 3488565 by Arciel.Rekman
Add pretty printers for gdb (UETOOL-1171).
- Committing shelf by Cengiz.Terzibas, with some modifications.
#jira UETOOL-1171
Change 3489094 by Nick.Darnell
Slate - The Slate RHI Renderer now caches the TextureLODGroups so that it can properly lookup the filtering of different texture groups that are set to Default, instead of a particular filter override on a texture.
Engine/Rendering - Simplifying some of the setup logic in TextureLODSettings so that code is shared for setting them up properly after loading from a config file.
Change 3489095 by Nick.Darnell
PR #2699: GameViewportClient - Added a method to allow setting the viewport cur. (Contributed by rfenner)
Review - Fixed spacing.
Change 3489108 by Matt.Kuhlenschmidt
Fix deprecation warning
Change 3489120 by Nick.Darnell
PR #3478: Fix possible UComboBoxString crash (Contributed by nakosung)
Change 3489147 by Andrew.Rodham
Sequencer: Adding return value to function to appease static analysis
- This function is never compiled, and if it is, it won't compile, but static analysis doesn't know that
Change 3489264 by Nick.Darnell
Testing - Finishing the thought behind an enum comment.
Change 3489265 by Nick.Darnell
PR #2750: UE-35164: Button padding (Contributed by projectgheist)
Change 3489267 by Nick.Darnell
PR #3645: UE-45464: Handle SSlider mouse interaction more accurately (Contributed by projectgheist)
Change 3489632 by Arciel.Rekman
Correctness changes to MallocPoisonProxy.
- Missing forwarding functions added. Incorrect comment removed.
- Change by Steve.Robb, doing here so it is in 4.17.
Change 3489689 by Arciel.Rekman
More MallocPoisonProxy changes I missed in previous CL.
Change 3489751 by Matt.Kuhlenschmidt
Moved editor performance settings out of per-project settings so they can be shared across projects
Change 3489837 by Lauren.Ridge
Keyboard shortcut for entering/leaving VR Mode is now Alt+V
Change 3491082 by Arciel.Rekman
Linux: better fix for the crash due to name collision (UE-46040).
- Put classes in Sequencer module into Sequencer namespace instead of SceneOutliner namespace.
- Undid change in the SceneOutliner module.
#jira UE-46040
Change 3491096 by Arciel.Rekman
Fix UAT compilation on the newest mono.
Change 3491240 by Max.Chen
Sequencer: Disable key button when allow level edits only is on.
#jira UE-46060
Change 3491406 by Yannick.Lange
Fix editor crashes when opening a project that includes a plugin with more than two custom Volume classes. This issue was caused because registering show volume commands is based on finding volume classes. Finding these classes at multiple times resulted in a mismatch of the returned array of volume classes because modules/plugins were still being loaded.
#jira UE-45806
Change 3491559 by Alexis.Matte
Make sure we use the good preview mesh when doing a preview
#jira UE-45963
Change 3491563 by Alexis.Matte
Fix crash with staticmesh editor LodLevel selection
Change 3491564 by Nick.Darnell
UMG - Fixing an offset with the grab handles in HDPI mode.
Change 3491595 by Nick.Darnell
Editor - Fixing a clipping artifact in the pin type dropdown in the blueprint editor.
Change 3491604 by Nick.Darnell
Back out changelist 3489265
Change 3491615 by Arciel.Rekman
Added malloc replay proxy (Linux only for now).
- Allows to dump malloc callstream (without regard to threads) and replay later to study the behavior of different mallocs and/or repro problems.
Change 3491684 by Arciel.Rekman
Added FMalloc functions I missed.
- Also moved function bodies into the .cpp file, this does not make a difference in performance in this case.
Change 3491692 by Matt.Kuhlenschmidt
Some minor fixes to the static mesh editor
- Fix UV combo button looking non-standard on the toolbar
- Fix a few combo buttons in the details panel looking too big.
Change 3491702 by Arciel.Rekman
Do not compile replay proxy-specific code when not used.
Change 3491717 by Michael.Dupuis
#jira UE-35083:
The component is now the owner of the PerInstanceRenderData instead of the proxy
Add an Update path to only update specified instances range
Always call BuildTreeIfOutdated so we have a standard code path to make sure static mesh are fully loaded before trying to build the tree
Moved the Instance Buffer aysnc to the base class, as it's not related to UHierarchicalInstancedStaticMeshComponent
Expose a new property to decide if we require dynamic instance buffer
Change 3491758 by Matt.Kuhlenschmidt
Fix crash on static mesh editor shutdown
Change 3491873 by Cody.Albert
Fixed clipping issue in Sequencer curve editor
#rnx
Change 3491956 by Matt.Kuhlenschmidt
Fix crash opening the Previewing sub-menu in the level editor settings menu
#jira UE-46095
Change 3492046 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492076 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492165 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492222 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492274 by Michael.Dupuis
#jira UE-46105: Fixed Clang warning
Change 3492338 by andrew.porter
QAGame: Testing ensure when submitting
Change 3492371 by Nick.Darnell
UMG - Reverting the animation sharing, cossed GLEO regressions in cooking. Will look for a better solution.
Change 3492462 by Matt.Kuhlenschmidt
Fix ensure checking in files through perforce
Change 3492491 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492505 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3492517 by Jamie.Dale
The package localization ID is no longer used at all at runtime, and is now truly editor-only
This should have always been the case, but it was leaked into manifest/archives/PO files in 4.14, and while 4.15 removed it from PO files it was still present in the manifest/archives. This change removes it entirely (unless gathering editor-only data, and even then the PO file will still collapse the entries together for translation), and the deprecated 4.14 export behavior will now produce an error if you attempt to use it.
After taking this change you'll need to run a gather, import, and compile of your LocRes files to update your game localization to use the new localization IDs.
Change 3492630 by Nick.Darnell
UMG - Removing some extra cleanup code that's probably overkill and is causing a crash for uses of "Within" in class meta.
#jira UE-46124
Change 3492692 by Matt.Kuhlenschmidt
Fix drop shadows inheriting the outline color of the font. The outline should still appear but not have a different outline color from fill color
Change 3492714 by Matt.Kuhlenschmidt
Added outline with drop shadow to font automation test
Change 3492737 by Matt.Kuhlenschmidt
Fix linux
Change 3492992 by tim.gautier
Resaving Ocean Widget Blueprints / Sequences to resolve Legacy Sequence Data warnings
#jira UE-46132
Change 3493089 by Jamie.Dale
Ensure that the composite font of a font asset is flushed when the font object is GC'd
Change 3493322 by Jamie.Dale
Fixing null crash
#jira UE-45758
Change 3494467 by Andrew.Rodham
Fix Xbox warning
Change 3494852 by tim.gautier
QAGame: Changed streaming method of QA-EditorSmoke-Landscape to Always Loaded
Change 3494853 by Nick.Darnell
Another attempt at fixing the automation blueprint SA warning.
Change 3494896 by Arciel.Rekman
Fix possible null pointer access during Vulkan init.
- May fix static analysis warnings in UE-46142, although warnings seem to be referring to something else.
#jira UE-46142
Change 3494987 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3495010 by Matt.Kuhlenschmidt
Adding additional logging to track down html5 issue
Change 3495212 by Michael.Dupuis
#jira UE-46143: Properly init the InstanceRenderData during the cooking phase (required by fortnite)
Change 3495536 by Jamie.Dale
Updating UGameEngine to call its Super::PreExit after performing its own teardown
This prevents UEngine cleaning up resources that UGameEngine still needs.
#jira UE-46159
Change 3495551 by Arciel.Rekman
Another attempt to fix analyzer problem (UE-46142).
Change 3495794 by Jamie.Dale
Fixing some font cooking warnings by splitting out font faces from their font assets
#jira UE-45843
Change 3495905 by Matt.Kuhlenschmidt
Fix USD crash when importing a meshwith no material
[CL 3499771 by Matt Kuhlenschmidt in Main branch]
#lockdown nick.penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3437481 on 2017/05/12 by Brian.Zaugg@Brian.Zaugg_A4140_WexDevMain
#wex - Put the change to sort the CookedAssetRegistry back in.
#jira WEX-5841
Back out changelist 3437412
Change 3437412 on 2017/05/12 by Brian.Zaugg@brian.zaugg_8402_WexDevMain
#wex - Back out change to CookedAssetRegistry, which turned out to be unnecessary.
#jira WEX-5841
Back out changelist 3437372
Change 3437372 on 2017/05/12 by Brian.Zaugg@brian.zaugg_8402_WexDevMain
#wex - Sort the cooked asset registry on save to fix nondeterministic cook.
#jira WEX-5841
Change 3435902 on 2017/05/11 by Brian.Zaugg@brian.zaugg_8402_WexDevMain
#wex - Removed UpgradeTrackRows from MovieScenes. It was no longer needed and was causing nondeterministic cooks.
#jira WEX-5841
Change 3435900 on 2017/05/11 by Brian.Zaugg@brian.zaugg_8402_WexDevMain
#wex - Merge in fix for nondeterministic script compilation from Dev-General.
#jira WEX-5841
Merging
//Orion/Dev-General/Engine/Source/Runtime/MovieScene/Private/MovieSceneSignedObject.cpp
to //WEX/Main/Engine/Source/Runtime/MovieScene/Private/MovieSceneSignedObject.cpp
Change 3435897 on 2017/05/11 by Brian.Zaugg@brian.zaugg_8402_WexDevMain
#wex - Merge in fix for nondeterministic blueprint cook from Dev-Editor
#jira WEX-5841
Merging
//UE4/Dev-Editor/Engine/Source/Runtime/MovieScene/...
to //WEX/Main/Engine/Source/Runtime/MovieScene/...
Change 3435896 on 2017/05/11 by Brian.Zaugg@brian.zaugg_8402_WexDevMain
#wex - Merge in fix for nondeterministic script compilation from Dev-Framework.
#jira WEX-5841
Merging
//UE4/Dev-Framework/Engine/Source/Editor/...
to //WEX/Main/Engine/Source/Editor/...
Change 3435387 on 2017/05/11 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Upload Crashlytics symbols after succesful build by build machine
#jira none
Change 3433935 on 2017/05/10 by Brian.Zaugg@brian.zaugg_8402_WexDevMain
#wex - Resaved more assets to fix nondeterministic cooks.
#jira WEX-5841
Change 3433707 on 2017/05/10 by robomerge@ROBOMERGE_WEX_Main
fix for thinking Android is always on WiFi even when it is on LTE
#jira none
Change 3433634 on 2017/05/10 by peter.sauerbrei@peter.sauerbrei_WEX
fix for loading a null object when the object is just pending kill
not happy with this fix, but it works
#jira WEX-6265
Change 3432228 on 2017/05/10 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Added LoadTimes.Reset console command to reset accumulated data reported by LoadTimes.DumpReport
#jira WEX-6319
Change 3431341 on 2017/05/09 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Make sure file handle is valid for flush
#jira none
Change 3431036 on 2017/05/09 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Capture UE_LOG for Crashlytics (can be disabled by setting ENABLE_CRASHLYTICS_LOGGING to 0 in CrashlyticsModule.cpp)
- Added IFileHandle::Flush() to get the full pre-init log
#jira WEX-6311
Change 3429394 on 2017/05/08 by robomerge@ROBOMERGE_WEX_Main
fix for missing logs when crashing in crash reporter
#jira none
Change 3428450 on 2017/05/08 by Josh.May@WEX-Main-JMAY
#WEX
#JIRA: WEX-6248, WEX-6285
- Converted the MonsterPit hero list over to using the new UListView-based WExpHexGrid.
- Generalized some of the item selection logic from B_HexGrid_Heroes.
- Removed a bunch of MonsterPit-specific cruft from the HeroIcons.
Change 3428177 on 2017/05/08 by robomerge@ROBOMERGE_WEX_Main
fix for no symbols on the crashreport site
#jira none
Change 3428110 on 2017/05/08 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Enable CL as store version for Android
#jira WEX-5432
#ue4
#android
Change 3427082 on 2017/05/05 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Crashlytics for Android
- also adds support for CL used as StoreVersion (requires bUseChangleListAsStoreVersion=true and environment variable IsBuildMachine=1), but
not enabled yet
#jira WEX-5785
Change 3426577 on 2017/05/05 by robomerge@ROBOMERGE_WEX_Main
another pass at deprecation warnings
#jira none
Change 3426360 on 2017/05/05 by robomerge@ROBOMERGE_WEX_Main
write out the UUID for the dSYM when generating the debug symbols
#jira none
Change 3426356 on 2017/05/05 by robomerge@ROBOMERGE_WEX_Main
fix for deprecation warnings on IOS
#jira none
Change 3424160 on 2017/05/04 by robomerge@ROBOMERGE_WEX_Main
fix for resetting the load status when attempting a second load of an asset
#jira WEX-6226
Change 3423174 on 2017/05/04 by robomerge@ROBOMERGE_WEX_Main
made an extra change I didn't need
#jira none
Change 3423173 on 2017/05/04 by robomerge@ROBOMERGE_WEX_Main
fix for crash reports from build machine builds not symbolicating
#jira none
Change 3422009 on 2017/05/03 by Josh.May@WEX-Main-JMAY
#WEX
#JIRA: None
- Added generic widget pooling support. Among other things, this allows us to reuse the same pool of HeroIcon widgets between all HeroLists.
Change 3421747 on 2017/05/03 by robomerge@ROBOMERGE_WEX_Main
[NULL MERGE]
make it so we are back to 100MB
temporary fix until I can either download the symbol file or symbolicate on the server
#jira WEX-6142
Change 3420916 on 2017/05/03 by Brian.Zaugg@brian.zaugg_8402_WexDevMain
#wex - Resaved Entry.umap to fix nondeterministic cooks.
#jira WEX-5841
Change 3420757 on 2017/05/03 by robomerge@ROBOMERGE_WEX_Main
fix for debug symbols not showing up in the ipa
#jira none
Change 3420620 on 2017/05/03 by robomerge@ROBOMERGE_WEX_Main
fix for some more warnings
#jira none
Change 3420069 on 2017/05/02 by robomerge@ROBOMERGE_WEX_Main
fix for build warning
#JIRA none
Change 3419305 on 2017/05/02 by robomerge@ROBOMERGE_WEX_Main
crashreporter part 2, now sending reports to the database on successive run
#jira WEX-5531
Change 3419050 on 2017/05/02 by Josh.May@WEX-Main-JMAY
#WEX
#JIRA: WEX-6037
- Added support for alert-less local notifications on iOS.
Change 3418171 on 2017/05/02 by David.Nikdel@david.nikdel_WEX
#WEX: Merging 3385512 by Aaron.McLeran minus 2 XBOX specific merge conflicts in XBoxOneTargetPlatform.cpp and libOpus.build.cs
#JIRA: WEX-5829
Change 3412179 on 2017/04/27 by robomerge@ROBOMERGE_WEX_Main
fix for new warnings from CrashDebugHelper in IOS
#jira none
Change 3411573 on 2017/04/27 by robomerge@ROBOMERGE_WEX_Main
initial crash reporter changes (pt. 1)
* client side to generate the crash report
* inclusion of the debug symbols in the ipa
#jira WEX-5531
Change 3410200 on 2017/04/26 by robomerge@ROBOMERGE_WEX_Main
update to the dSymExporter to handle IOS
#jira none
Change 3409679 on 2017/04/26 by Rob.Cannaday@rob.cannaday_wex
OpenSSL 1.0.2g updates from //UE4/Main
Fixes prompt asking user to insert a disk on a removable drive
#jira WEX-6136
Change 3408188 on 2017/04/25 by robomerge@ROBOMERGE_WEX_Main
update to the chunk data to allow characters to have some duplicate data in their chunks
this increases the installed size only slightly
#jira WEX-6118
#jira WEX-5996
Change 3405129 on 2017/04/23 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Removed ZOrder manipulations for world map region widgets and restored caching in B_MenuBars
#jira WEX-6071
Change 3404674 on 2017/04/21 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Better Android web browser closing
#jira WEX-5871
#ue4
#android
Change 3404003 on 2017/04/21 by robomerge@ROBOMERGE_WEX_Main
revert out the lock free list change, was bleed over from a memory test
#jira WEX-6077
Change 3403125 on 2017/04/21 by robomerge@ROBOMERGE_WEX_Main
#WEX
#JIRA: WEX-5669
- Exposed binadable OnRowReleased delegate for UListView.
- Added UListView widget resuse for the FriendsList. As is, each FriendsList instance now uses at most 16 FriendWidget's apiece.
Change 3402992 on 2017/04/20 by josh.may@WEX-Main-JMAY
#WEX
#JIRA: WEX-5669
- Refactored the FriendsList to use a UListView. Instead of handling UWExpFriendWidgets directly, the UListView tracks an array of
UWExpFriendProxy objects and sets up the widgets based on what's visible.
- Exposed a few STableViewBase functions to UListView's blueprint interface (scroll to start/end, list refreshing).
Change 3402970 on 2017/04/20 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Fix copy-paste bug
#jira WEX-5871
Change 3402914 on 2017/04/20 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Better behavior for Android LaunchURL
#jira WEX-5871
#ue4
#android
Change 3401897 on 2017/04/20 by robomerge@ROBOMERGE_WEX_Main
Xcode 8.3 compiler fixes
#jira none
Change 3397963 on 2017/04/18 by robomerge@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: josh.may
#WEX
#JIRA: WEX-5966
- Added safer SAndroidWebBrowserWidget lookups. Rather than using the GetNativePtr result directly, we treat it as a key to lookup a WeakPtr
to the corresponding SAndroidWebBrowserWidget. For the future, we may want to convert the key type to an FName to make this relationship more clear.
Change 3397360 on 2017/04/18 by robomerge@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: michael.noland
UMG - Fixing widget alignment in the viewport when using the widget component with screen space, with an aspect ratio lock on the player's
camera. The widgets should now show up in the right locations.
#reimplementing CL# 3371590 from Dev-Editor
#jira None
Change 3387613 on 2017/04/10 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - moving Android Facebook SDK to NFL directory
#jira OGS-636
Change 3383489 on 2017/04/06 by Peter.Sauerbrei@peter.sauerbrei_WEX
use pngs for iconbs in the plist
properly copy icon pngs
#jira none
Change 3375079 on 2017/03/31 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Add missing keycodes for Android keyboard
#jira WEX-5777
#android
Change 3369953 on 2017/03/29 by David.Nikdel@david.nikdel_WEX
#Android: (from ChrisB)
- Workaround to not having GET_ACCOUNTS permission but calling GoogleAuthUtil.getToken anyway (causes a crash)
- We don't need this token anyway so band-aiding it out
#JIRA: WEX-5730
Change 3369826 on 2017/03/29 by Daniel.Vogel@battle_breakers
trimmed include to only include what is needed
#jira none
Change 3369563 on 2017/03/29 by Allan.Bentham@allan.bentham_WEX
Fix Android build error.
fallout from 3358094
#jira WEX-5193
#rb none
Change 3368945 on 2017/03/28 by Josh.May@WEX-Main-JMAY
#WEX
#JIRA: WEX-5675
- Ensure the local scope ScreenRect passed into OnVirtualKeyboardShown in AndroidJNI is captured by value instead of by reference.
- Moved ShowVirtualKeyboardInput's bKeyboardShowing early-out checks into the UI thread task. This allows the keyboard to continue showing
when changing focus between multiple EditableTextBox widgets.
Change 3368793 on 2017/03/28 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - java toolchain changes for OnlineSubsystemGoogle
- update google auth to 9.8.0
- update required sdk to 25
#jira none
Change 3366529 on 2017/03/27 by Daniel.Vogel@battle_breakers
added CSV output w/ class type
skip /Script/ dependencies
#jira n/a
Change 3366478 on 2017/03/27 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Updated Android newkeyboard support
* AndroidRuntimeSetting bEnableNewKeyboard instead of commandline to enable
* Calculating the area covered by the virtual keyboard
* Calling OnVirtualKeyboardShown and OnVirtualKeyboardHidden events
* Passing the Rect of the area covered by the virtual keyboard OnVirtualKeyboardShown event
#jira WEX-5675
Change 3364155 on 2017/03/24 by Josh.May@WEX-Main-JMAY
#WEX
#JIRA: WEX-5538
- Removed FPlatformMisc::IsPluggedIn() and migrated the iOS/Android implementations over to FPlatformMisc::IsRunningOnBattery().
- Fixed EBatteryState enumeration ordering in FAndroidMisc. According to Google's documentation, BATTERY_STATUS_CHARGING=2,
BATTERY_STATUS_DISCHARGING=3, BATTERY_STATUS_FULL=5, BATTERY_STATUS_NOT_CHARGING=4, BATTERY_STATUS_UNKNOWN=1.
Change 3363599 on 2017/03/24 by Josh.May@WEX-Main-JMAY
#WEX
#JIRA: WEX-5538
- Added FPlatformMisc::IsPluggedIn().
- Block battery drainage tracking when the device is plugged in.
Change 3363498 on 2017/03/24 by robomerge@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
fix for archives having truncated directory names
#jira none
Change 3363297 on 2017/03/24 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Fix Android password hiding
#jira WEX-5159
#ue4
#android
#rb Peter.Sauerbrei
Change 3362117 on 2017/03/23 by Josh.May@WEX-Main-JMAY
#WEX
#JIRA: WEX-5538, WEX-5591
- Added FPlatformMisc::GetBatteryLevel().
- Added battery usage tracking to the PerformanceTrackingManger. This is tracked per SecondaryContext and accumulated whenever the
SecondaryContext changes.
- Added BatteryTimeSpent and BatteryDelta attributes to the Perf_Menu analytics events.
- Added OnEnterForeground and OnEnterBackground handling for performance analytics tracking. FWExpAnalytics now maintains it's own multicast
delegates for both scenarios to avoid delegate registration ordering issues (i.e. OnEnterBackground informs subscribers prior to flushing it's
AnalyticsProvider). Unfortunately, events sent during these transitions need to use the AnalyticsProvider directly to get around IsInGameThread()
checks in FWExpAnalytics. I've added notes in FWExpAnalytics explaining this.
- Added DevicePerfBucket to the FWExpAnalytics::StartSessionAttrs().
Change 3359313 on 2017/03/22 by David.Nikdel@david.nikdel_WEX
#WidgetComponent
- Create a simple box proxy for cases where the widget wouldn't otherwise be visible in the editor.
#JIRA: none
Change 3359294 on 2017/03/22 by David.Nikdel@david.nikdel_WEX
#Engine #ActorComponents: Pasting components
- Try to respect the pasted component's name if possible.
- Disable tree updates while pasting (pasting 100 components generated O(100^2) node updates)
- Scroll into view after pasting
#JIRA: none
Change 3359262 on 2017/03/22 by Josh.May@WEX-Main-JMAY
#WEX
#JIRA: WEX-5286
- Added an ActionMapping for toggling a 4th ParticleLODBias preset (VeryLow).
- Added editor hotkeys for switching between specific LODLevels in Cascade. As is, the hotkeys are CTRL+M for LOD0, CTRL+Comma for LOD1, CTRL
+Period for LOD3, and CTRL+Slash for LOD4.
- Remapped the in-game ParticleLODBias hotkeys to match the hotkeys in Cascade.
Change 3358952 on 2017/03/22 by Josh.May@WEX-Main-JMAY
#WEX
#JIRA: None
Reverted my change that reversed Cascade's LOD ordering.
Change 3358816 on 2017/03/22 by robomerge@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
some changes to track down this rare streaming crash
#jira WEX-5631
Change 3358544 on 2017/03/22 by robomerge@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
fix for IOS 8 crash when trying to link Facebook
addition of IOSVersionCompare to FIOSPlatformMisc
#jira WEX-5613
Change 3358099 on 2017/03/22 by Allan.Bentham@allan.bentham_WEX
Add 'bBuildWithHiddenSymbolVisibility' to AndroidPlatform.HasDefaultBuildConfig()
bBuildWithHiddenSymbolVisibility defaults to false in BaseEngine.ini
#jira WEX-5193
Change 3358094 on 2017/03/22 by Allan.Bentham@allan.bentham_WEX
Added Android option to enable builds with hidden symbol visbility by default. (bBuildWithHiddenSymbolVisibility)
Android links with -gc-sections to remove unused code/data
Add JNI_METHOD for java accessible native functions, fix up existing JNI functions to use macro.
Add support to generate a map file with android.
#rb chris.babcock
#jira WEX-5193
Change 3357775 on 2017/03/21 by Josh.May@WEX-Main-JMAY
#WEX
#JIRA: WEX-5286
- Promoted r.ParticleLODBias to a full-blown scalability setting.
- Ensure DirectSet particle systems don't set their initial LODLevel based on LOD distances.
- Ensure ParticleSystems get their initial LODLevel set on activation relative to the LODBias.
- Reversed the Cascade's LOD ordering to be consistent with other systems.
Change 3352516 on 2017/03/17 by David.Nikdel@david.nikdel_WEX
#WEX: perforce is the devil
#JIRA: none
Change 3352404 on 2017/03/17 by David.Nikdel@david.nikdel_WEX
#WEX: Moving LocalMCP into the WEX folder so UGS will sync it along with everything else
#JIRA: none
Change 3352291 on 2017/03/17 by David.Nikdel@david.nikdel_WEX
#WEX: Fix for a bug in run-local-mcp-main.bat
#JIRA: none
Change 3352242 on 2017/03/17 by David.Nikdel@david.nikdel_WEX
#WEX: Change build.gradle to pull from the EPIC_BUILD_CREDENTIALS_NEXUS_* env vars and hardcode repo url for now
#JIRA: none
Change 3352046 on 2017/03/17 by David.Nikdel@david.nikdel_WEX
#WEX: Get the stream name from P4 in the run-local-mcp-main.bat script
- removed wex's run-release.bat (won't be necessary)
- removed the product_version param (going off stream name now)
#JIRA: none
Change 3351635 on 2017/03/17 by David.Nikdel@david.nikdel_WEX
#WEX: LocalMCP changes to support release branch MCP download (still need maven to support RELEASE in addition to LATEST)
#JIRA: none
Change 3351165 on 2017/03/16 by robomerge@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
compile fix
#jira none
Change 3351162 on 2017/03/16 by robomerge@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
pull chunk 1 back out
#jira WEX-4037
Change 3351075 on 2017/03/16 by robomerge@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
put all of the onboarding data in the apk, iinitial windows install, IOS is still too large for now
#jira WEX-4037
Change 3351059 on 2017/03/16 by Josh.May@WEX-Main-JMAY
#WEX
#JIRA: WEX-5526
- Added analytics events for map load times (on Chance's behalf). No info about chunk downloading yet, though.
Change 3350595 on 2017/03/16 by robomerge@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
move some of the onboarding data in to the IPA
#jira WEX-4037
Change 3349934 on 2017/03/16 by robomerge@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
fix for splash screen disappearing on iPhone 5s and iPod Touch
#jira none
Change 3348093 on 2017/03/15 by robomerge@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
fix for iPod Touch 6 splash screen
#jira WEX-5482
Change 3346183 on 2017/03/14 by robomerge@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
fix for portrait only not being respected
#jira WEX-5517
Change 3344276 on 2017/03/13 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Fix target value 1.5 obsolete warning
#android
#jira: none
Change 3344177 on 2017/03/13 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Add new notification icons
#jira WEX-5173
#ue4
#android
Change 3343706 on 2017/03/13 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Update script version for CarefullyRedist (need to use jdk1.8)
#jira: none
#android
Change 3342571 on 2017/03/11 by David.Nikdel@david.nikdel_WEX
#GooglePlay #Android #IAP: compile fix
#JIRA: WEX-5479
Change 3342524 on 2017/03/11 by David.Nikdel@david.nikdel_WEX
#IAP #GooglePlay #Engine: Fix for possible integer overflow getting price_amount_micros out of JSON. Really we should be returning this value
(unadjusted) to C++ as a long to avoid precision loss, but converting to double until after removing micros is probably fine for all practical
currency prices.
#JIRA: WEX-5479
Change 3340549 on 2017/03/09 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Update handling of device and advertiser IDs for Android
- remove GetUniqueDeviceId() - deprecated
- add GetLoginId() - uses GUID approach
- remove fallback from GetUnqiueAdvertisingId()
- changed CreateUserId
- don't send Attribution and UniqueDeviceId from USERLOGIN
#jira WEX-5461
#ue4
#android
#rb Wes.Hunt
Change 3339488 on 2017/03/09 by David.Nikdel@david.nikdel_WEX
#Engine #JSON
- Expose FJsonObjectConverter::GetTextFromObject conversion method so this can be used elsewhere as appropriate
#JIRA: none
Change 3338332 on 2017/03/08 by Josh.May@WEX-Main-JMAY
#WEX
#JIRA: WEX-5367
- Added background transparency support for AndroidWebBrowserWidget.
Change 3338176 on 2017/03/08 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Support large OBB files in APK
- moved over since it also reduces process space used because OBB previously was mmapped
#jira: none
Change 3336630 on 2017/03/07 by Josh.May@WEX-Main-JMAY
#WEX
#JIRA: WEX-5367
- Ensure pending HTML content and URL are properly retained for IOSWebViewWrapper instances. This was a fix I added in CL 3214410 that got
clobbered by the most recent engine merge. After repro'ing the crash again consistently on older devices, I figured I should readd it.
- Added background transparency support for IOSWebViewWrapper.
Change 3331981 on 2017/03/03 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - Online Subsystem consistency cleanup
- all OSS classes use the instance name passed into the CreateFactory function
- nothing should be using the default constructor
- OnlineSubsystemImpl requires two params now (OSS name, Instance name)
- added GetSubsystemName to return OSS name from OnlineSubsystemNames.h
#JIRA none
Change 3331955 on 2017/03/03 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - Google sign-in first pass
- discovery service query
- user consent screen
- token exchange for access/refresh token
- retrieve user profile
- logout
#JIRA WEX-5103
Change 3331947 on 2017/03/03 by Daniel.Vogel@battle_breakers
added GDF export support
#JIRA n/a
Change 3331709 on 2017/03/03 by Daniel.Vogel@battle_breakers
Added ExportDependencies to UnrealPak. It spits out a JSON of the game's package dependencies joined with size information from the PAK file.
The format of the Json is
array<Packages>
InclusiveSize
ExclusiveSize
Name
array<string> DirectlyReferencing
array<string> DirectlyReferencedBy
array<string> AllReferences
allowing easy graph building and digestion of data.
Usage example
C:\Development\BB\WEX\Saved\StagedBuilds\WindowsNoEditor\WorldExplorers\Content\Paks\WorldExplorers-WindowsNoEditor.pak WorldExplorers WEX -
exportdependencies=c:\dvtemp\output.json -debug -NoAssetRegistryCache -ForceDependsGathering
#JIRA n/a
Change 3329259 on 2017/03/02 by Peter.Sauerbrei@peter.sauerbrei_WEX
switch to using jpgs for icons and splash screens
Change 3329240 on 2017/03/02 by Peter.Sauerbrei@peter.sauerbrei_WEX
remove all duplicate data from the paks
Change 3328658 on 2017/03/01 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for low resolution on iPad Pro
#jira WEX-5157
Change 3326751 on 2017/03/01 by Josh.May@WEX-Main-JMAY
#WEX
#JIRA: WEX-5278
- Reenable the system idle timer after FinalizeLevel has completed, as per David's feedback.
- Added hooks for enabling/disabling the idle timer based on auto-battle being "paused" (i.e. having he options menu open).
- Reworked the idle timer enable/disable logic for iOS to get around a silly platform limitation. As it turns out, re-enabling the system idle
timer won't reset the system-recorded idle time, meaning the idle timeout can kick-in immediately after re-enabling the idle timer after long periods
of inactivity (i.e. finishing a level with auto-battle enabled).
Change 3323981 on 2017/02/27 by Josh.May@WEX-Main-MacBookPro
#WEX
- Fixed a iOS startup crash. It looks like the splash image path-string was getting released prematurely in cases where the JPG splash image
doesn't exist.
Change 3323478 on 2017/02/27 by Peter.Sauerbrei@peter.sauerbrei_WEX
check for png and then jpg for splash screens
Change 3320989 on 2017/02/24 by Chris.Babcock@Home_WEX
Ignore AAR/JAR dependencies with scope "test"
#android
Change 3319897 on 2017/02/23 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - Last of the facebook cleanup
- moved profile fields to common
- added facebook profile picture to profile and friends structures
- moved FacebookError to OnlineSubsystemFacebookTypes.h
Change 3318425 on 2017/02/22 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Remove eglSwapInterval causing S6 to freeze
#jira WEX-5147
#android
Change 3317974 on 2017/02/22 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - Java toolchain fix for Facebook SDK
- hack per ChrisB
@codereview Chris.Babcock
Change 3317968 on 2017/02/22 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - Facebook SDK for Android enabled
Change 3317216 on 2017/02/22 by David.Nikdel@david.nikdel_WEX
#Engine: Break out cursor building from settings into UGameViewportClient::RebuildCursors so that game code can call this method after
RemoveAllViewportWidgets if we don't want to lose cursor settings.
Change 3315560 on 2017/02/21 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - Facebook TPS files for iOS and Android latest SDKs
Change 3315541 on 2017/02/21 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#WEX - Fixes for Facebook SDK changes
- Fix for comment in DefaultPlatformService ini entry
Change 3315529 on 2017/02/21 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - Android toolchain changes
Change 3315492 on 2017/02/21 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - Facebook IOS
Change 3315490 on 2017/02/21 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - Facebook Common
Change 3315283 on 2017/02/21 by Colin.Pyle@Colin.Pyle_WEX_Main
#WEX
#JIRA: WEX-5114, WEX-5116
- Buttons now only respond to first finger touch events.
Change 3315045 on 2017/02/21 by Peter.Sauerbrei@peter.sauerbrei_WEX
enable compile for size on iOS
Change 3310519 on 2017/02/17 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Implement GetUniqueDeviceId for Android
- this doesn't identify the device uniquely if reinstalled; it will show as a new device since it uses GUID stored to local file
#android
Change 3310043 on 2017/02/17 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Fix bad merge related to UPL configuration variable (needed for Adjust on Android to use correct server)
Change 3310024 on 2017/02/17 by David.Nikdel@david.nikdel_WEX
#Android #AdvertisingId
Merging shelf CL 3195079 for Chris.Babcock
Change 3309580 on 2017/02/17 by Josh.May@WEX-Main-JMAY
#WEX
- Moved SOURCE_IN_LINEAR_SPACE shader #define to SlateShaderCommon.
Change 3308653 on 2017/02/17 by Dmitriy.Dyomin@dmitriy.dyomin-wex
ShaderCache will use up to 16 samplers
#rb jack.porter
Change 3307584 on 2017/02/16 by Josh.May@WEX-Main-MacBookPro
#WEX
#JIRA: WEX-5019
- Fixed "washed out" UMG widget coloring on iOS.
Change 3305699 on 2017/02/16 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Clear for viewport instead of drawing quad on top, when scene rendering is disabled
#rb Jack.Porter
Change 3305662 on 2017/02/16 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Update invalidation panel to account for a new LayoutToRenderTransform
Change 3305615 on 2017/02/16 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Invalidation panel fixes.
Moved geometry checks and caching from Tick to OnPaint to account for Window resize transforms.
Updating scissor rect inside cached elements.
Change 3305019 on 2017/02/15 by Peter.Sauerbrei@peter.sauerbrei_WEX
Merging using WEX_Main_to_UE4_WEX_Staging
Change 3301188 on 2017/02/14 by Jack.Porter@Jack.Porter_WEX_Stream
Added support for runtime change of the Android GT and RT affinity masks at the console.
eg "android.DefaultThreadAffinity GT 0x1 RT 0x2". args are bitmasks for core(s) to run on, 0=all
#rb Dmitriy.Dyomin
Change 3300968 on 2017/02/13 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Option for invalidation panel to cache just drawable elements instead of render data (slate.CacheRenderData=0)
Iinvalidation panel fixes
#rb nick.darnell
Change 3300554 on 2017/02/13 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: david.nikdel
#WEX: serialize ClientVersion as a number instead of a string of the form "CL_####"
Change 3300114 on 2017/02/13 by Peter.Sauerbrei@peter.sauerbrei_MacWEX
fix for iOS build failure
Change 3300059 on 2017/02/13 by Peter.Sauerbrei@peter.sauerbrei_WEX
turn on PLCrashReporter for iOS
Change 3300057 on 2017/02/13 by Peter.Sauerbrei@peter.sauerbrei_MacWEX
built PLCrashReporter for IOS
Change 3298338 on 2017/02/10 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Updated Java files that look like were missed in merge
#rb none
Change 3295755 on 2017/02/09 by Aaron.McLeran@Wex2
UE-41567 Fixes for duplicating sound assets
Change 3295429 on 2017/02/09 by Peter.Sauerbrei@peter.sauerbrei_MacWEX
re-enable pak pre-cache
Change 3294463 on 2017/02/09 by Allan.Bentham@allan.bentham_WEX
Bump shader version, hopefully will make WEX-4517 go away...
#rb none
Change 3294229 on 2017/02/09 by Allan.Bentham@allan.bentham_WEX
Prevent UI materials producing encoded results.
#jira WEX-4975
#rb Jack.Porter
Change 3293759 on 2017/02/08 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Don't enqueue TickVideo since it is causing a hang (movies not used in WEX) DO NOT MOVE BACK
#jira WEX-5046
#rb Max.Preussner
Change 3291872 on 2017/02/08 by Allan.Bentham@allan.bentham_WEX
add RGBA8 mode to mobile HDR 32bpp encoding methods. (render directly to RGBA8 scene colour target)
r.MobileHDR32bppMode == 3 to override devices encoding mode with RGBA
enabled in WEX for android low end devices.
add mosaic state to android window's resolution cache conditions.
#jira WEX-4927
#rb chris.babcock, jack.porter
Change 3289698 on 2017/02/07 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Enabled bExplicitCanvasChildZOrder by default (saves more than 100 drawcalls in Heroes tab)
Fixed ordering of CommanderBar image in B_HeroIcon
Removed unique ZOrder for world map region widgets (saves more than 100 drawcalls in WorldMap)
Change 3289082 on 2017/02/06 by Josh.Markiewicz@JMARKIEWICZ_WEX_MACPRO
#UE4 - cleaned up some dev garbage in Facebook module file
Change 3288589 on 2017/02/06 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Temporarily limit GMaxTextureSamples to 16 for Android
#jira WEX-5051
#rb Peter.Sauerbrei
Change 3286181 on 2017/02/03 by Tyler.Cole@tyler.cole-Z6140-stream-wex
[Engine]
LocalMcp run script:
- Remove quotes from output.
- Display progress bar when downloading artifact.
- Output MongoDB data directory.
Change 3286118 on 2017/02/03 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
[NULL MERGE]
turn off logging in test builds in release stream
Change 3286106 on 2017/02/03 by Kevin.Abbott@WEX2017
#LocalMCP: Fix for BAT file terribleness (the whole if command is evailuated at once so an internal SET doesn't take effect until outside the
block)
Change 3285065 on 2017/02/03 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
better fix for the app name in the archive
Change 3285060 on 2017/02/03 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
fix for archive failure
Change 3284408 on 2017/02/02 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
properly naming the dSYM for uploading
#rb none
Change 3284022 on 2017/02/02 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - Facebook changes to get Windows/iOS up to date
- Facebook user data structure gets information from proper URL request with valid public fields, stores consistently on both platforms
-- store values in generic key value pairs
- RequestElevatedPermissions feature that goes through external ui to grant more permissions (Windows)
- Reorder shutdown so that sharing interface can properly register/unregister from LoginStatusChanged events
Change 3283978 on 2017/02/02 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
[NULL MERGE]
potential fix for dSYM not uploading properly
#rb none
Change 3283672 on 2017/02/02 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Fix for web browser crash on Android distribution (from 4.15)
#jira WEX-4947
#rb none
Change 3283329 on 2017/02/02 by Tyler.Cole@tyler.cole-Z6140-stream-wex
[Engine]
Add support for uberjar MCPs in LocalMcp scripts.
[WEX]
Use uberjar when launching local MCP.
Change 3283030 on 2017/02/02 by Allan.Bentham@allan.bentham_WEX
Fix for tangents not being avaliable in ES2 pixel shader when transformvector/transformposition nodes are used.
#jira WEX-4517.
#rb jack.porter
Change 3281190 on 2017/02/01 by Peter.Sauerbrei@peter.sauerbrei_MacWEX
pull over the metal state rasterizer fix from main
#jira WEX-4855
Change 3280541 on 2017/01/31 by Chris.Babcock@Chris.Babcock_Z2433_WEX
More GCM work
- platform=ANDROID for registration URL (case-sensitive)
- hooked up registration through FPlatformMisc like iOS
- removed old retrigger for delegates (not needed)
- stubbed in unregister for later
- added notification generation on message (disabled for now)
Change 3280255 on 2017/01/31 by Michael.Noland@mnoland_T2801_WEX_Main
Canvas: Fixed a bug where UCanvas::K2_DrawMaterial did not respect the currently active canvas draw color
Upgrade Notes: This does change the behavior, so K2_DrawMaterial calls with a non-white color set will now be affected by the color *if* they
use a vertex color node. Impact is expected to be minimal because most of the materials people used with it were unlikely to include the vertex color
node.
Change 3280150 on 2017/01/31 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for double add to manifests
Change 3279807 on 2017/01/31 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for iOS build failure
Change 3279583 on 2017/01/31 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for animation crash
#jira WEX-4906
Change 3279310 on 2017/01/31 by Peter.Sauerbrei@peter.sauerbrei_WEX
reduce the parallelism of the packaging step to alleviate strain on Mac
Change 3278827 on 2017/01/31 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Fixed: Multiple UI assets appear too dark when accessed (replicated CL#3278637, 3278802 from 4.15)
#jira WEX-4862
Change 3278558 on 2017/01/30 by Chance.Lyon@Chance.Lyon_WEX_Dev-Main
#WEX
#JIRA: WEX-4634
- Attempt to re-hide the navigation bar when we detect a few different events
Change 3277376 on 2017/01/30 by Peter.Sauerbrei@peter.sauerbrei_WEX
disable pak precaching as it seems to be causing crashes
Change 3276469 on 2017/01/28 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Fixes for GoogleCloudMessaging
- moved registration later to correct issues with engine not ready
- save registration status message and token for later retrigger
- UWExpMcpProfile::Initialize uses retrigger after binding to delegate so it gets the earlier success/fail
- send correct platform in OnRegisteredForRemoteNotifications (Android or IOS)
Change 3276308 on 2017/01/27 by Michael.Noland@mnoland_T2801_WEX_Main
UBT: Improved the error message when the wrong header is first in an engine file to include the wrong file name
Change 3275574 on 2017/01/27 by David.Nikdel@david.nikdel_WEX
#WEX: performance tracking analytics tags
- make FPerformanceTrackingChart::DumpChartToAnalyticsParams const-correct
- Broke out the event firing code into their own functions and added scraper documentation (unsure if 100% correct, Michael please review)
- changed #if to regular if so inner code gets compiled in all cases
#JIRA: WEX-4838
Change 3275275 on 2017/01/27 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for missing virtual keyboard
#jira WEX-4859
Change 3275266 on 2017/01/27 by Josh.Markiewicz@JMARKIEWICZ_WEX_MACPRO
#UE4 - Facebook iOS upgrade to 4.18
IdentityInterface should be using proper in app dialogs now
Change 3275263 on 2017/01/27 by Josh.Markiewicz@JMARKIEWICZ_WEX_MACPRO
Facebook SDK 4.18
Change 3274408 on 2017/01/26 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for tower collision
Change 3273928 on 2017/01/26 by Peter.Sauerbrei@peter.sauerbrei_WEX
Merging
//UE4/Release-4.15/Engine/Source/Runtime/...
to //WEX/Main/Engine/Source/Runtime/...
Change 3273907 on 2017/01/26 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - moved parsing of LogCategory verbosity slightly sooner to occur before plugins are loaded
- fixes plugins not printing proper log levels if initialized too early
#rb gil.gribb
Change 3272834 on 2017/01/25 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Add GoogleCloudMessaging plugin for Android
Change 3272124 on 2017/01/25 by Jamie.Dale@JamieDale_BHX-WD-7636_WEX
Updated the GatherText commandlet to no longer hold a ConfigFile pointer while it runs
This pointer is internal to GConfig, and may be updated (or invalidated) when other config files are loaded (as can happen via game code while
gathering text).
#rb Peter.Sauerbrei
Change 3272044 on 2017/01/25 by David.Nikdel@david.nikdel_WEX
#Json: Adding MapProperty support to JsonObjectConverter
- Only TMaps with FString keys are allowed (to match JSON spec)
- ScheduledEvents module is dependent on this commit (at runtime, compile is ok)
Change 3272035 on 2017/01/25 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for crash when trying to pre-cache a pak file smaller than the cache granularity
Change 3271618 on 2017/01/25 by Allan.Bentham@allan.bentham_WEX
Avoid unneeded stencil clear in mobile renderer.
#rb jack.porter
Change 3271536 on 2017/01/25 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for non-unity compile failures
Change 3270865 on 2017/01/24 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for another warning
Change 3270781 on 2017/01/24 by Peter.Sauerbrei@peter.sauerbrei_WEX
some warning fixes
Change 3270395 on 2017/01/24 by Nick.Darnell@Nick.Darnell_BattleBreakers
UMG - Adding a way to config the default option for how Scaleboxes should perform layout, single or double.
#rb none
Change 3270051 on 2017/01/24 by Peter.Sauerbrei@peter.sauerbrei_WEX
Merging using WEX_Main_to_UE4_WEX_Staging
#rb none
Change 3268999 on 2017/01/23 by Colin.Pyle@Colin.Pyle_WEX_Main
#WEX
#JIRA: WEX-4685
- Scale boxes now default to single pass
Change 3263481 on 2017/01/19 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Enabled shader cache on Android
Also added recorded shader cache from my play session (need to record more complete cache later)
#rb jack.porter
#jira WEX-4691
Change 3258935 on 2017/01/16 by David.Nikdel@david.nikdel_WEX
#WebBrowser: Fix field initialization order warning.
Change 3258614 on 2017/01/16 by David.Nikdel@david.nikdel_WEX
#Engine #WebBrowser:
- LoadString literally didn't work on strings with line breaks in them due to our forwarding of the request content via the headers (wut?).
Cef barfed trying to parse header values with newlines in them.
- Changed locally generated requests to use PostData instead.
- Added a way to specify the mime type by appending a hash to the dummy url (the BP params for this are all kinds of weird, but I don't want
to change the signature)
- Default mime type to text/html to support the old behavior
Change 3257030 on 2017/01/13 by Peter.Sauerbrei@peter.sauerbrei_WEX
turn on test logging
DO NOT SUBMIT THIS TO UE4/MAIN
#rb none
Change 3256835 on 2017/01/13 by Nick.Darnell@Nick.Darnell_BattleBreakers
Slate - Fixing the size of Paper2D sprites when used as box brushes in Slate.
#rb none
Change 3256813 on 2017/01/13 by Nick.Darnell@Nick.Darnell_BattleBreakers
Slate/UMG - The ScaleBox now supports a SingleLayoutPass mode. This mode is not the default, but it can save a considerable amount of time in
the right situation. Generally when wrapped around a large UI, where the outer bounds of the scalebox are constant.
#rb none
Change 3256777 on 2017/01/13 by Nick.Darnell@Nick.Darnell_BattleBreakers
UMG - Adding a way to access the absolute size of a piece of Geometry in blueprints.
#rb none
Change 3256774 on 2017/01/13 by Nick.Darnell@Nick.Darnell_BattleBreakers
UMG - Adding a way to access the absolute size of a piece of Geometry in blueprints.
#rb none
Change 3256656 on 2017/01/13 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Slate pixel shaders will use half precision where possible on mobile
#rb jack.porter
Change 3256586 on 2017/01/13 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Fixed redundant blend state changes in opengl
#rb jack.porter
Change 3256584 on 2017/01/13 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Reduced state setup for slate draw calls (saves about 4ms RT time on mobile)
#rb jack.porter
Change 3256380 on 2017/01/12 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
properly set the file extension for the dSYM for the manifest
#rb none
Change 3256260 on 2017/01/12 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
trying to track down why the dSYM isn't working
#rb none
Change 3255825 on 2017/01/12 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
return the zip version for now
#rb none
Change 3255652 on 2017/01/12 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
add dSYM.zip to the output produced if we want the dSYMBundle
utilize that if it exists to populate the xcarchive
#rb none
Change 3254552 on 2017/01/11 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
fix for build error
#rb none
Change 3254462 on 2017/01/11 by Chris.Babcock@Chris.Babcock_Z2433_WEX
C string is not null terminated in FCurlHttpRequest::DebugCallback
#jira WEX-4610
Change 3254448 on 2017/01/11 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
make it so xcarchives can be archived to a directory on build machines
make it so the build machine puts the CL in as the CFBundleVersion
make it so we generated an XCArchive and a dSYM
#rb none
Change 3251055 on 2017/01/09 by Nick.Darnell@Nick.Darnell_BattleBreakers
Platform - Adding the degree symbol to the log statement for android's temperature update, and noting that it's celsius.
#rb none
Change 3250488 on 2017/01/08 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Fixed: Device output log partial lines
#rb jack.porter
Change 3249072 on 2017/01/06 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Disable java console cmd receiver only in shipping builds
#rb jack.porter
Change 3248990 on 2017/01/06 by Jack.Porter@Jack.Porter_WEX_Stream
Support Dynamic r.MobileContentScaleFactor change on Android
#rb Dmitriy.Dyomin
Change 3248989 on 2017/01/06 by Jack.Porter@Jack.Porter_WEX_Stream
Integrating Mobile Support for r.ScreenPercentage
#rb Dmitriy.Dyomin
Change 3248156 on 2017/01/05 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Added trackSubsessionStart to iOS Adjust plugin (for real)
#ios
Change 3248131 on 2017/01/05 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Added trackSubsessionStart to iOS Adjust plugin
#ios
Change 3245184 on 2017/01/03 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - FB OSS for PC
- login flow implemented using web based LoginFlow module
- implemented ShowLoginUI for external UI interface
- added Login function with existing access token
- fixed GetAuthType function
- added reference to main online subsystem to Friend/Identity interfaces
Change 3243067 on 2016/12/22 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - used more prpoer shared pointer cast
Change 3241011 on 2016/12/20 by Chance.Lyon@Chance.Lyon_WEX_Dev-Main
#WEX
#JIRA WEX-4557
- An engine change that separates serializing the actor from file operations
- Serialize the saved level on the main thread, save it to a slot during the async task
Change 3240508 on 2016/12/19 by Michael.Noland@mnoland_T2801_WEX_Main
Engine: Added GetGameInstance<T> and GetGameInstanceChecked<T> wrappers to UWorld that automatically Cast/CastChecked to the specified
subclass of UGameInstance
Change 3240366 on 2016/12/19 by Josh.May@josh.may-WEX-MacBookPro-DevMain
#WEX
#JIRA: WEX-4475
- Block UIWebView closure from granting keyboard focus to the parent IOSView. This was causing the keyboard to show when closing the UIWebView
after interacting with it in any way.
Change 3239026 on 2016/12/16 by Nick.Darnell@Nick.Darnell_BattleBreakers
Slate - Removing a crashing check that turned out to not be nessesary.
Change 3238569 on 2016/12/16 by Nick.Darnell@Nick.Darnell_BattleBreakers
Slate - Disabling the deferred desired size optimization.
Change 3237052 on 2016/12/15 by David.Nikdel@david.nikdel_WEX
#PlatformMisc: GetUniqueAdvertisingId should return empty string unless one is defined by the platform (no fallback to GetUniqueDeviceId)
Change 3237024 on 2016/12/15 by Nick.Darnell@Nick.Darnell_BattleBreakers
Slate - Core Refactor. Found a way to save about 2ms on mobile for an average screen. It involves deferring when slate computes the desired
size of a widget, from during prepass, to instead doing it on demand, and only invalidating it during Prepass. It saves time because not every widget
cares what the desired size of their children is.
I'm enabling it with the code define SLATE_DEFERRED_DESIRED_SIZE.
I've added an ensure prints the message, "The layout is cyclically dependent. A child widget can not ask the desired size of a parent while
the parent is asking the desired size of its children."
Change 3236593 on 2016/12/15 by Nick.Darnell@Nick.Darnell_BattleBreakers
Slate - Optimizing some usage of FWidgetPath and other reduction on copies on the stack/heap.
Change 3236579 on 2016/12/15 by Nick.Darnell@Nick.Darnell_BattleBreakers
Slate - You can now visualize batching by doing Slate.ShowBatching 1.
Change 3236453 on 2016/12/15 by Nick.Darnell@Nick.Darnell_BattleBreakers
Slate - Further refactoring how the scrollbox manages when and how to perform scrolling when dealing with touch input. Feels really tight to
me now and this change should resolve the problem where it sometimes doesn't respond to input, or where it over-responds to touch and amplifies
movement by the user, not able to reproduce those conditions now.
Change 3236435 on 2016/12/15 by Nick.Darnell@Nick.Darnell_BattleBreakers
Core - Fixing some bugs with FrameValue, making it a bit simpler by just being composed of a TOptional and a uint64.
Change 3236410 on 2016/12/15 by Nick.Darnell@Nick.Darnell_BattleBreakers
Engine - Fixing a crash in the game viewport client if no debug canvas is provded.
Change 3236405 on 2016/12/15 by Nick.Darnell@Nick.Darnell_BattleBreakers
Android - Fixing the code that sends remote commands to android.
Change 3233400 on 2016/12/13 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for console entry
#jira WEX-4488
Change 3233247 on 2016/12/13 by Nick.Darnell@Nick.Darnell_BattleBreakers
Slate - Adding some scoped performance counters for more rendering infromation in slate.
Change 3233242 on 2016/12/13 by Nick.Darnell@Nick.Darnell_BattleBreakers
UMG - Making a few calls more efficent for mobile, by caching values for a frame that end up getting called a lot if you have several widget
components.
Change 3233236 on 2016/12/13 by Nick.Darnell@Nick.Darnell_BattleBreakers
Core - Adding a frame cached value struct that keeps a value as valid for one GFrameCounter, which is incremented once an engine tick.
Change 3233229 on 2016/12/13 by Nick.Darnell@Nick.Darnell_BattleBreakers
UMG - Don't layout components if they're not marked as visible in the world widget screen layer for widget componets.
Change 3233219 on 2016/12/13 by Nick.Darnell@Nick.Darnell_BattleBreakers
Blueprints - Making the array K2 Nodes not self referencial in doing layout logic, that causes really strange behavior.
Change 3233209 on 2016/12/13 by Nick.Darnell@Nick.Darnell_BattleBreakers
Slate - You can now show overdraw in slate by doing Slate.ShowOverdraw 1, or 0 to disable.
Change 3233202 on 2016/12/13 by Nick.Darnell@Nick.Darnell_BattleBreakers
Slate - We now have a scope counter for text layout now, to let people determine when their text is a massive performance drain usually due to
scaleboxes.
Change 3233012 on 2016/12/13 by Michael.Noland@mnoland_T2801_WEX_Main
Sound: Added SoundClassObject to the asset registry searchable data for sound assets, to make it easier to track down volume/muting bugs when
assets have the wrong sound class set
- Note: Assets will need to be resaved before this data will show up for unloaded assets (loaded assets should work immediately)
Change 3230757 on 2016/12/12 by Andrew.Brown@Andrew.Brown_G5751_WEX_Main
LauncherCheck module no longer has a dependancy on the DesktopPlatform module
#jira OPP-6491 : LauncherCheck module is dependent on a DeveloperModule
#branch WEX_Dev-Main
#change Removed all the Launcher specific calls that the LauncherCheck module makes out of DesktopPlatform and into a new runtime module
called LauncherPlatform (and fixed up all the associated calls).
#change Also removed DesktopPlatform header/module usage from files if it's no longer needed.
Change 3229399 on 2016/12/09 by Josh.May@josh.may-WEX-MacBookPro-DevMain
#WEX
#JIRA: WEX-3793
- Added config support for enabling/disabling the iOS integrated keyboard implementation.
- Switched over to using the iOS integrated keyboard implementation.
- Ensure the character code, rather than the key code, is passed in to IOSInputInterface's calls to OnKeyChar. This caused the backspace key
to not function as intended...
- Expanded the iOS integrated keyboard implementation to support different keyboard types and keyboard deactivation when text field widget
focus is lost.
Change 3228702 on 2016/12/09 by Nick.Darnell@Nick.Darnell_BattleBreakers
Widget Compiler - Improving the error message for multiple widget trees.
Change 3228369 on 2016/12/08 by Nick.Darnell@Nick.Darnell_BattleBreakers
Engine - Adding an OnStart to UGameInstance that is called for both StartPIEGameInstance and StartGameInstance.
Change 3228267 on 2016/12/08 by Nick.Darnell@Nick.Darnell_BattleBreakers
Windows - Adding code to catch remote desktop cases where no mouse was detected, but it's a remote session, which sometimes doesn't list a
mouse, which affects how the engine handles input.
Change 3226374 on 2016/12/07 by Nick.Darnell@Nick.Darnell_BattleBreakers
UMG - Exposing a way to dynamically set the touch/click method on buttons.
Change 3226320 on 2016/12/07 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
fix for get-task-allow being true when distribution is enabled
Change 3226103 on 2016/12/07 by Nick.Darnell@Nick.Darnell_BattleBreakers
Editor - Adding PPI/DPI to the unit conversion tables.
Change 3225274 on 2016/12/07 by Michael.Noland@mnoland_T2801_WEX_Main
Engine: Made "Can't load invalid package" warning clearer that it has a name (and thus clearer when there was no name at all)
Change 3224426 on 2016/12/06 by Michael.Noland@mnoland_T2801_WEX_Main
Platform: Improved the warning message slightly when there is no local notification service
Change 3224421 on 2016/12/06 by Michael.Noland@mnoland_T2801_WEX_Main
Engine: Prevent fighting between GEngine->SetMaxFPS and UGameUserSettings::SetFrameRateLimitCVar that caused log spam by preserving the 'last
set' reason when changing the value
Change 3224401 on 2016/12/06 by Michael.Noland@mnoland_T2801_WEX_Main
[Reimplemented CL# 3134965 from Dev-Blueprints]
Fix for crash in FCDODiffControl when CDOs have different numbers of properties. First branch in the while loop would incorrectly advance Iter
past the end of the array. Comments courtesy of Jon.Nabozny
#jira UE-36263
Change 3224380 on 2016/12/06 by Michael.Noland@mnoland_T2801_WEX_Main
UMG: Added a compilation warning for naughty child blueprints that define a widget hierarchy if the parent also has one (only the children
widgets will be created, the parent ones are ignored)
Change 3224084 on 2016/12/06 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: josh.markiewicz
#UE4 - Add ue4.displaymetrics.dpi metadata to query device DPI for Android
*MERGED* Change: 3216126 Date: 11/30/2016 6:10 PM
Change 3223665 on 2016/12/06 by Chance.Lyon@Chance.Lyon_WEX_Dev-Main
#WEX
#JIRA: WEX-3557
- Reduce the uniform buffer size for Android GPU's
Change 3222576 on 2016/12/05 by Michael.Noland@mnoland_T2801_WEX_Main
MediaPlayer: Fixed a typo in the editor style that included .png twice
Change 3222574 on 2016/12/05 by Michael.Noland@mnoland_T2801_WEX_Main
Editor: Added the missing editor Slate brush WhiteGroupBorder (been missing since branch creation, no idea why)
Change 3222487 on 2016/12/05 by Michael.Noland@mnoland_T2801_WEX_Main
[Reimplementing CL# 3149669 from Dev-Core]
Lower verbosity of warnings from deleting native properties. These cases do not cause any problems and are not fixable without resaving the
content after it has started warning. I checked Jira history and neither of these warnings has ever found a real bug, but has caused a lot of content
to be resaved unnecessarily.
Change 3222486 on 2016/12/05 by Michael.Noland@mnoland_T2801_WEX_Main
[Reimplementing CL# 3149397 from Dev-Framework]
Fix collision profile writing out response values to channels that don't exist.
Change 3222485 on 2016/12/05 by Michael.Noland@mnoland_T2801_WEX_Main
Engine: Undoing a temporary workaround for one kind of warning that caused a different kind of warning (RE: property in collision profiles)
Change 3222341 on 2016/12/05 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: david.nikdel
Back out changelist 3220848 now that NickD's proper fix is in
Change 3222327 on 2016/12/05 by Nick.Darnell@Nick.Darnell_BattleBreakers
UI - Missions markers should now accept a single click to become activated.
UI - This should resolve the majority of problems with the game getting stuck in a state where mouse capture was stolen permanatly.
UI - Game should no longer register swipe too easily, it's now using the physical distance calculation for the screen.
#jira WEX-4390
#jira WEX-4137
#jira WEX-4373
Change 3222046 on 2016/12/05 by Nick.Darnell@Nick.Darnell_BattleBreakers
Android / IOS / Platform - Updating the logic for screen density to call an internal one overridden by each platform, and to cache that in
GenericPlatformMisc, also adding some calls to convert Inches to Pixels and Pixels to Inches. Did some general cleanup around this work with names
and such.
Slate - Also fixing an issue in SlateApp, we now always break mouse lock on Touch input when a finger is released.
Change 3221875 on 2016/12/05 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: david.nikdel
#ChunkInstaller:
- Added support for errors that may occur during ParseManifest
- Renamed BuildVersion (variable) to BuildUrl to match JSON key
- Fail parsing on bad file entry
- In the event of a client mismatch, fail manifest download with a specific error (will need to plus this later at the app level)
- Don't rebind delegates when entering Setup after a Retry
- Check bNeedsRetry befpre doing countdown for auto-retry
Change 3221737 on 2016/12/05 by Michael.Noland@mnoland_T2801_WEX_Main
Engine: Added the ability to suppress warnings when using on-screen log warning/error display (DurationOfErrorsAndWarningsOnHUD > 0) by
setting Engine.SupressWarningsInOnScreenDisplay to 1
Change 3221593 on 2016/12/05 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
fix for icons missing in the IPA
#jira WEX-4380
Change 3220588 on 2016/12/03 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: david.nikdel
#IOS #PlatformMisc: Adding PPI information for IOS_IPhone7 and IOS_IPhone7Plus
Change 3220084 on 2016/12/02 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
fix for iPhone 7/7Plus not finding the correct splash screen image for holding
addition of iPhone 7/7Plus device profiles
hold the splash screen until the manifest is downloaded
Change 3220056 on 2016/12/02 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
changes to make it so we only copy the images needed for the support orientations
set minimu iOS to 8
Change 3220036 on 2016/12/02 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
make it so the engine doesn't try to load editor only content in the game
#jira WEX-4319
Change 3219992 on 2016/12/02 by Nick.Darnell@Nick.Darnell_BattleBreakers
Slate - Locking down the exposure of ComputeDesiredSize, this function was never intended to be public on widgets, so trying to prevent that.
Change 3219754 on 2016/12/02 by Nick.Darnell@Nick.Darnell_BattleBreakers
Adding the console command Slate.ShowDebugTextLayout to help debug layout issues in Slate.
Change 3218374 on 2016/12/01 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
some code missed in an earlier check-in to reduce data duplication in chunks
Change 3218358 on 2016/12/01 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: michael.noland
Engine: Changed FPSChart analytics events to send IniPlatformName instead of PlatformName for the PlatformName parameter
- Most platforms don't change
- Android removes the texture format suffix from it (main goal of the change, though it also unifies behavior with a number of other analytics
events that were already using IniPlatformName)
- Desktop platforms remove the editor/client/server distinction, which should be fine since the event names for client/server are different
already
#rb david.nikdel
Change 3218354 on 2016/12/01 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: michael.noland
Engine: Added FPlatformMisc::GetDeviceMakeAndModel() which tries to return DeviceMake|DeviceModel where possible, and CPUVendor|CPUBrand
otherwise
#rb david.nikdel
Change 3218353 on 2016/12/01 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: michael.noland
Engine: Added reporting of PeakPhysical and PeakVirtual memory usage to FPS chart analytics
#rb david.nikdel
#jira WEX-4342
Change 3217769 on 2016/12/01 by Nick.Darnell@Nick.Darnell_BattleBreakers
Slate - Disabled widgets now render correctly on mobile. Previously they were being transformed as if they were in linear space, on mobile
the textures and fonts are already in gamma space, so the transform for luminance needs to also be done in gamma space.
Change 3217059 on 2016/12/01 by Nick.Darnell@Nick.Darnell_BattleBreakers
Slate/UMG - Tweaking how the scrollbars fade on different platforms to be a platform defined feature. Cleaning up some logic in the
InertialScrollManager to be configurable externally.
Change 3216605 on 2016/12/01 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Fixed precision issues on Adreno devices when sampling sRGB textures
#rb Jack.Porter
Change 3216388 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers
IOS - Tweaking the unknown screen density value to be a multiple of the native CSF, which should get us pretty close.
Change 3216382 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers
Android - Calculating CSF using the surface size vs window size.
Change 3216376 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers
IOS - Fixing a bug with scaling screen density by the content scale factor.
Change 3216335 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers
Android - Converting the code over in GetPhysicalScreenDensity to use an average of xdpi and ydpi as the approximate density, as the direct
density call is affected by users adjusting their screen size option in the OS, which we definitely are not interested in taking into account here.
Change 3216313 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers
Build - Fixing the build on mac.
Change 3216126 on 2016/11/30 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Add ue4.displaymetrics.dpi metadata to query device DPI for Android
Change 3215983 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers
Slate - Reverting a change to button I was testing things with.
Change 3215971 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers
UMG/Android - Making several improvements to the way mobile scrolling is handled in UMG/Slate. Introducing a way to get the Physical Screen
Density on Android and iOS. On iOS it's a hardcoded set of densities, for android they're loaded from the AndroidEngine.ini. If we can't find a
match to the model phone you're on, we rely on the OS to report a reasonable screen density. With physical screen dimension knowledge, we can make
much better decisions about deadzones around the finger before things like Drags are triggered. This change also introduces a gesture detector to
Slate so that Slate can simulate gestures that may not be provided by the OS. The first and only gesture we currently support is the new Long Press
gesture that has been added. The innertial scrolling logic has been rewriten on the ScrollBox, and the inertial scroll manager now has a better
default experience.
Change 3215963 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers
UMG - Making a pass on invalidation. The ability to store invalidated elements in local space locations and apply transforms in the GPU had
rotted, restoring that functionality.
Change 3214960 on 2016/11/30 by Nick.Darnell@Nick.Darnell_BattleBreakers
Android - Adding a visualizers file for the Nsight Tegra debugger for visual studio for UE4 types.
Change 3214557 on 2016/11/29 by Dmitriy.Dyomin@dmitriy.dyomin-wex
Disable dynamic buffer discarding on Adreno330 (was casuing 10ms stalls on slate buffers update)
#rb Jack.Porter
Change 3214410 on 2016/11/29 by Josh.May@josh.may-WEX-MacBookPro-DevMain
#WEX
#JIRA: WEX-4255
- Ensure pending HTML content and URL are properly retained for IOSWebViewWrapper instances.
Change 3213890 on 2016/11/29 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
update to the notification delegates to add a parameter for the state of the app when the notification was recieved
Change 3212287 on 2016/11/28 by Josh.May@josh.may-WEX-JMAY-Main
#WEX
#JIRA: WEX-4135
- Added a full purge of GC array pool following full GC purges.
Change 3212256 on 2016/11/28 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Adjust analytics plugin for Android and iOS
#jira WEX-3939
#rb David.Nikdel
Change 3211730 on 2016/11/28 by Allan.Bentham@allan.bentham_WEX
Create and set PrimitiveSceneProxy->PrimitiveSceneInfo before SetTransform render thread command is enqueued. Avoids race condition with
FPrimitiveSceneInfo's constructor which can occur on out-of-order CPUs.
#jira WEX-3691
#rb jack.porter
Change 3207395 on 2016/11/22 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: bruce.knapik
#WEX Final fix for buildmachine crash
Change 3207375 on 2016/11/22 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: bruce.knapik
#WEX Fix for crash on buildmachine part 2: this time I saved the file!
Change 3207341 on 2016/11/22 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: bruce.knapik
#WEX Fix for crash on buildmachine
Change 3207019 on 2016/11/21 by Jason.Bestimt@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
temporary fix for crash after logging in
#jira WEX-4085
Change 3205594 on 2016/11/20 by Jack.Porter@Jack.Porter_WEX_Stream
Added workaround for WEX-2079 - Fog effects on the map are rendering as circles.
Change 3204498 on 2016/11/18 by Peter.Sauerbrei@peter.sauerbrei_WEX
update IPP to look at Library/Caches as well when backing up the documents
Change 3204238 on 2016/11/18 by Peter.Sauerbrei@peter.sauerbrei_MacWEX
implement peak memory stats on IOS
#jira WEX-3947
Change 3204187 on 2016/11/18 by Peter.Sauerbrei@peter.sauerbrei_WEX
GPU vendor data from MichaelN
Change 3203487 on 2016/11/17 by Peter.Sauerbrei@peter.sauerbrei_WEX
latest changes to generate the proper manifest and be ready for MCP
Change 3203362 on 2016/11/17 by Peter.Sauerbrei@peter.sauerbrei_WEX
bringing over fix for Apple HTTP requests
Change 3203188 on 2016/11/17 by Peter.Sauerbrei@peter.sauerbrei_WEX
slightly better fix for the curl crash
Change 3202785 on 2016/11/17 by Peter.Sauerbrei@peter.sauerbrei_MacWEX
IOS now reads/writes from Library/Caches instead of Documents
Change 3202565 on 2016/11/17 by Peter.Sauerbrei@peter.sauerbrei_WEX
switch to platform manifest names in prep for switch to MCP
disable screen saver while downloading chunks
another potential build machine speed up
Change 3202141 on 2016/11/17 by Peter.Sauerbrei@peter.sauerbrei_WEX
correct fix for cook crash
Change 3201994 on 2016/11/17 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for crash when cooking without chunks
Change 3201552 on 2016/11/16 by Peter.Sauerbrei@peter.sauerbrei_WEX
chunk assignment fixes
Change 3201315 on 2016/11/16 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Return Android Make, Model, and Version for GetCPUVendor, GetCPUBrand, GetOSVersions
#rb Michael.Noland
Change 3200892 on 2016/11/16 by Michael.Noland@mnoland_T2801_WEX_Main
Editor: Fixed a crash when opening the cooker settings panel (and got rid of some junk string literals)
Change 3200737 on 2016/11/16 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for Android build error
Change 3200719 on 2016/11/16 by Peter.Sauerbrei@peter.sauerbrei_WEX
potential speed up of builds
Change 3200608 on 2016/11/16 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for crash in the curl debug info callback
#jira WEX-4039
Change 3200237 on 2016/11/16 by Jack.Porter@Jack.Porter_WEX_Stream
Remove mosaic resolution limitation on ES3 devices
#jira WEX-3119
#rb Dmitriy.Dyomin
Change 3199640 on 2016/11/15 by Peter.Sauerbrei@peter.sauerbrei_WEX
addition of the device token to the log
Change 3199313 on 2016/11/15 by Peter.Sauerbrei@peter.sauerbrei_WEX
switch back to IOSCompile-01 for default mac
Change 3198769 on 2016/11/15 by Peter.Sauerbrei@peter.sauerbrei_WEX
allow different deployments from the command line when using chunking
NOTE: you can NOT change the deployment after starting due to the way chunking downloads data
#jira WEX-3951
Change 3198423 on 2016/11/15 by Peter.Sauerbrei@peter.sauerbrei_WEX
potential fix for audio cued at different speeds
#jira WEX-3637
Change 3197915 on 2016/11/15 by Josh.May@josh.may-WEX-MacBookPro-DevMain
#WEX
- Disabled freed alloc caching for MallocBinned on mobile.
Change 3197734 on 2016/11/14 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for IOS never enabling the chunk data
Change 3197732 on 2016/11/14 by Michael.Noland@mnoland_T2801_WEX_Main
Engine: Moved FDumpFPSChartToEndpoint to the public header, and fixed an ensure if sending FPS chart analytics during shutdown (now sends 0,0
for SizeX/SizeY rather than omitting them entirely)
Change 3197720 on 2016/11/14 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#WEX - reconciled android settings
- added placeholder app id
Change 3196696 on 2016/11/14 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for missing platform for promotion
Change 3196628 on 2016/11/14 by David.Nikdel@david.nikdel_WEX
#Analytics: Added "AttributionId" field to SessionStart event. This reflects the advertising tracking ID for a given device (for iOS this is
the IDFA).
Change 3196534 on 2016/11/14 by Peter.Sauerbrei@peter.sauerbrei_WEX
missed one texture on the resave
Change 3196310 on 2016/11/14 by Peter.Sauerbrei@peter.sauerbrei_WEX
warning reduction
Change 3196287 on 2016/11/14 by Peter.Sauerbrei@peter.sauerbrei_WEX
resaved engine materials to a version
Change 3196103 on 2016/11/12 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for heroes not showing up in the hero inspect menu for chunking
they will briefly show as a question mark until the download completes, might want an animated effect instead for the future
#jira WEX-3936
#jira WEX-3958
Change 3195827 on 2016/11/11 by Michael.Noland@mnoland_T2801_WEX_Main
UMG: Changed wording of warning slightly
Change 3195806 on 2016/11/11 by Michael.Noland@mnoland_T2801_WEX_Main
UMG: Added a warning message to UWidget::RemoveFromParent when being used to remove an instantiated widget that has no UMG parent owner (e.g.,
someone manually called TakeWidget and placed it in a native Slate slot). In this case it is a no-op, and the user was probably expecting it to
remove it from the native parent widget and destroy the slot, which is impossible at this level (the calling code needs to handle that directly)
Change 3195210 on 2016/11/11 by Peter.Sauerbrei@peter.sauerbrei_WEX
addition of advertising id, IOS implemented
Change 3195124 on 2016/11/11 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#WEX - android setup for new permanent backend
- added BattleBreakers keystore
- added billing settings for android in both Engine/Game AndroidEngine.ini (why do we have settings in both that overlap, DefaultPlatform for
OSS was wrong there)
- turned on ForDistribution (not sure how this affects other platforms, but Android won't work without this)
Change 3194283 on 2016/11/10 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - hopefully last of the Android/GooglePlay cleanup
- QueryInAppPurchases never needed an array of consumables flag
- BeginPurchase doesn't take a bConsumable flag (old code calls it inside PurchaseComplete, new interface requires call to FinalizePurchase)
- all java functions now return the productToken as part of the callback if applicable
-- token easily accessible in java, saves Base64 decode and json calls to get in native
- ** note ** fixed up GameCircle/Amazon, fortunately it didn't use these flags either
Change 3194208 on 2016/11/10 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - GooglePlay purchasing refactor
- finished QueryReceipts to not care about bRestorePurchases and left comment with explanation
- delegates to low level GooglePlay calls return FGoogleTransactionData to sooner encapsulate the opaque data
- fixed up RestoreTransactions for StoreV1 to use multicast delegate as well
- changed delegate assignment to use thread safe shared pointers (required adding Init() and moving code out of constructor where .AsShared is
premature)
- reduced log verbosity and log spam
Change 3194205 on 2016/11/10 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#Android - small java code cleanup
Change 3194003 on 2016/11/10 by Michael.Noland@mnoland_T2801_WEX_Main
Engine: Made the set of interesting FPS thresholds for FPS charts configurable (as a comma separated list in cvar
t.FPSChart.InterestingFramerates)
Engine: Exposed helpers on FPerformanceTrackingChart (GetAverageFramerate() and GetPercentMissedVSync())
#rb david.nikdel
Change 3194002 on 2016/11/10 by Michael.Noland@mnoland_T2801_WEX_Main
Core: Added FHistogram::InitFromArray to create a histogram from an explicit list of thresholds
#rb david.nikdel
Change 3193771 on 2016/11/10 by Chance.Lyon@Chance.Lyon_WEX_Dev-Main
#WEX
#JIRA: WEX-3856
- Refactored how loading screens work
- Allow Pre / Post load map to handle loading screen setup / teardown by default
- Manually show the loading screen when we perform the initial level save
- Re-enable the loading screen ensure
Change 3193723 on 2016/11/10 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for crash when bringing up the console in chunked build
#jira WEX-3922
fix for missing assets at game start in chunked build
Change 3193503 on 2016/11/10 by Peter.Sauerbrei@peter.sauerbrei_WEX
start pushing streaming data to the appropriate deployment
Change 3193210 on 2016/11/10 by Peter.Sauerbrei@peter.sauerbrei_WEX
allow CloudStorage to be re-initialized with new credentials if necessary
Change 3192750 on 2016/11/09 by Josh.May@josh.may-WEX-JMAY-Main
#WEX
- Added a mechanism for force-disabling GPU particles.
- Disabled GPU particles for all iOS devices. This was eating up a constant 56MB of render target memory, whether or not the feature was used.
Change 3192686 on 2016/11/09 by Peter.Sauerbrei@peter.sauerbrei_WEX
latest s3 chunk data placement
Change 3192468 on 2016/11/09 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#Android - added features to GooglePlay IAP apis
- audited code against example code
- added some code to JNI to make IAP functions not optional if store is enabled
- added ConsumePurchase call to separate consumption until after entitlements have been granted
- added QueryExistingPurchases call to enumerate pending/permanent transactions
Change 3192246 on 2016/11/09 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for windows build failure
first attempt at promotion code
Change 3191660 on 2016/11/09 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for PC build of IOS
Change 3191598 on 2016/11/09 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for too many open handles
Change 3191459 on 2016/11/09 by Peter.Sauerbrei@peter.sauerbrei_WEX
more fixes for building chunks on the build machines
Change 3190565 on 2016/11/08 by Peter.Sauerbrei@peter.sauerbrei_MacWEX
fixes for Remote notifications
Change 3190466 on 2016/11/08 by Peter.Sauerbrei@peter.sauerbrei_WEX
pointing at the s3 servers
Change 3189120 on 2016/11/07 by Peter.Sauerbrei@peter.sauerbrei_WEX
optimization for obtaining chunk data
startup screen which checks for updated data before loading the entry (not yet enabled)
Change 3186019 on 2016/11/03 by David.Nikdel@david.nikdel_WEX
#Engine: Empty string is a valid ImportText for an array (indicates an empty array)
Change 3185461 on 2016/11/03 by Chris.Babcock@Chris.Babcock_Z2433_WEX
Corrections to memory stats for Android
#jira WEX-3760
#ue4
#android
Change 3184309 on 2016/11/02 by Chance.Lyon@Chance.Lyon_WEX_Main
#WEX
#JIRA: WEX-3721
- Remove all the "WaitForLoadingScreen" calls. These actually kill the loading screen before the travel, causing the actual travel to be a
visible hang instead of a spinner
- Commented out and ensure that got hit before it killed the loading screen. Seems like the wrong check to me.
Change 3184029 on 2016/11/02 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for some load hitches on mobile
Change 3183761 on 2016/11/02 by Peter.Sauerbrei@peter.sauerbrei_WEX
allow Android to specify which texture format to get
Change 3183760 on 2016/11/02 by Peter.Sauerbrei@peter.sauerbrei_WEX
updates for chunking on the various platforms
Change 3182107 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX
when chunking is disable, initialize the chunk installer in a paused state
Change 3182068 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for Scheme name when project is not UE4Game
Change 3182007 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX
more logging to track down this iOS signing failure
Change 3181844 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX
attempt to generate the plist before trying to generate the project for stub generation for iOS
Change 3181816 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX
revert out the extra logging for the iOS build now that I have verified it is working correctly
Change 3181806 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for warnings on IOS
Change 3181779 on 2016/11/01 by David.Nikdel@david.nikdel_WEX
#Engine: Fix for null pointer dereference if you have closed the animation tool window.
Change 3181773 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for shipping build failure
Change 3181763 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for Android compile failure
Change 3181667 on 2016/11/01 by Josh.May@josh.may-WEX-JMAY-Main
#WEX
#JIRA: WEX-3753
- Ensure the input type of Android keyboard input textbox is set before populating the initial content.
Change 3181666 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX
initial chunk installer submission, first pass, disabled by default
#rb none
Change 3181408 on 2016/11/01 by Peter.Sauerbrei@peter.sauerbrei_WEX
some logging to track down why the build machine is using the wrong certificate and provision
Change 3181070 on 2016/11/01 by Nathan.Green@Nathan.Green_Friday_Main
#WEX
- Fixing broken android build temporarily
Change 3180690 on 2016/10/31 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#WEX - Android support enabled
- some better java logging
- added ini placeholder for GooglePlay features that need setting (set locally, not ready to check in yet without backend app setup)
Change 3180322 on 2016/10/31 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - setup catalog to be GooglePlay aware
- fixed up some log output inconsistencies
Change 3180307 on 2016/10/31 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - updating libPNG to 1.5.27 for Android only (from Main, early integration)
- wolf platform commented out (needs to be reinstated before merge to main)
Change 3175413 on 2016/10/26 by Peter.Sauerbrei@peter.sauerbrei_MacWEX
fix for buffer being re-used before it was out of use by GPU
#rb mark.satterthwaite
#jira WEX-3482
Change 3175143 on 2016/10/26 by Steve.Allison@steve.allison_Z4797_6338
Adding:
Personal_iPhone6SP_DavidN
Personal_iPhone7P_DonaldM
Change 3174322 on 2016/10/25 by Steve.Allison@steve.allison_Z4797_6338
Adding:
Personal_iPhone6P_ZakP
Change 3173760 on 2016/10/25 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for incorrect icons and missing splash screens
#rb none
#jira wex-3012
Change 3169892 on 2016/10/20 by Steve.Allison@steve.allison_Friday_Main_Stream
Adding:
UX_iPadMini4_UX8
UX_iPadMini4_UX7
UX_iPadAir2_UX6
UX_iPadAir2_UX5
UX_iPhone6SP_UX4
UX_iPhone6SP_UX3
UX_iPhone6S_UX2
UX_iPhone6S_UX1
Personal_iPhone5S_PaulH
Personal_iPhone6_PaulI
Personal_iPhone6_EdZ
Change 3169848 on 2016/10/20 by Steve.Allison@steve.allison_Friday_Main_Stream
Adding:
Personal_iPhone6S_NickP
Personal_iPhone6SP_SteveA
Personal_iPhone6_NickC
Personal_iPhone6_GeremyM
Personal_iPhone6S_AndyK_HSL
Personal_iPhone6_LizS_HSL
Personal_iPhone7_JoshM_HSL
Personal_iPhone6_CaseyS
Personal_iPhone6S_GregL
Personal_iPhone6S_BruceK
Personal2_iPhone7P_DavidH
Personal1_iPhone7P_DavidH
Personal_iPhone6SP_SimonH
Change 3169651 on 2016/10/20 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for profile captures not working with Metal
Change 3169537 on 2016/10/20 by Josh.May@josh.may-WEX-MacPro2-Main
#WEX
#JIRA: WEX-3059
- Added injection of TouchMoved events whenever a TouchBegin is triggered. This allows legacy iOS devices (i.e. pre-3D Touch) to properly
emulate MouseOver/MouseMoved events for rapid taps.
Change 3169294 on 2016/10/20 by Josh.May@josh.may-WEX-JMAY-Main
#WEX
#JIRA: WEX-3497, WEX-3499
- Downgraded a few Engine-level log warnings to verbose. These are cases where the logs are either redundent or triggering in spite of nothing
being functionally wrong.
Change 3168564 on 2016/10/19 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - typo fix
Change 3165381 on 2016/10/17 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - changed log formatting line for GFrameCounter to properly use %llu instead of %d
- fixes Android display problems
#rb josh.adams
Change 3165359 on 2016/10/17 by Steve.Allison@steve.allison_Friday_Main_Stream
Adding:
Partner_01_iPhone6SP_HardSuit
Change 3165127 on 2016/10/17 by Nathan.Green@Nathan.Green_Friday_Main
#WEX
#JIRA: WEX-3320
- Putting back code erased by the merge, since the viewport is always handling touch commands we'll never get a chance to attempt to drop the
object and cancel the operation if we fail, instead we should handle DropEvents first as otherwise our widgets will never recieve an
NativeOnDragCancelled event.
Change 3164936 on 2016/10/17 by Josh.Markiewicz@JMARKIEWICZ_WEXMAIN
#UE4 - missing code related to the OSS plugin refactor to respect the "enabled by default" settings in the .plugin file
Change 3164933 on 2016/10/17 by Josh.May@josh.may-WEX-MacPro2-Main
#WEX
- Fixed naming conventions for the iPadPro device profile configs.
Change 3162452 on 2016/10/13 by Peter.Sauerbrei@peter.sauerbrei_WEX
missed one engine texture for optimization, do not merge back to engine
#rb none
Change 3162414 on 2016/10/13 by Peter.Sauerbrei@peter.sauerbrei_WEX
reduce the engine texture sizes, do not merge this back to the main engine stream
#rb none
Change 3162326 on 2016/10/13 by Nathan.Green@Nathan.Green_Friday_Main
#WEX
- Reverting change, with Peter's ok, to fix scrollboxes behaving strangely on mobile devices
Change 3160261 on 2016/10/12 by Steve.Allison@steve.allison_Friday_Main_Stream
Adding:
9744_iPhone7P_EpicQA
9745_iPhone7_EpicQA
Change 3157269 on 2016/10/10 by Peter.Sauerbrei@peter.sauerbrei_WEX
removed a line that shouldn't have been in, fixes MattH save crash
#rb none
Change 3155086 on 2016/10/07 by David.Nikdel@david.nikdel_WEX
#Analytics: Better support for connection loss scenarios
- Enforce a minimum delay (2 min) after any failed submission.
- Delay only applies to timeout/capcaity flushes, not flushes due to end of session or manually requested flushes.
- Remove URL from the DroppedSubmission event per Wes
Change 3154873 on 2016/10/07 by Steve.Allison@steve.allison_Friday_Main_Stream
Add:
8034_iPhone7_EpicQA
Change 3153367 on 2016/10/06 by Steve.Allison@steve.allison_Friday_Main_Stream
Adding:
9597_iPhone6SP_Epic
Change 3153322 on 2016/10/06 by Peter.Sauerbrei@peter.sauerbrei_WEX
disable shadows for android devices as well
Change 3152758 on 2016/10/05 by Peter.Sauerbrei@peter.sauerbrei_MacWEX
disable shadows for all IOS device profiles
enable arm64 for development and shipping
#rb none
Change 3150660 on 2016/10/04 by David.Nikdel@ROBOMERGE_WEX_Main
#ROBOMERGE-AUTHOR: peter.sauerbrei
Merging
//WEX/Main/Engine/...
to //WEX/Release-03/Engine/...
Change 3150347 on 2016/10/04 by Steve.Allison@steve.allison_Friday_Main_Stream
Adding:
9724_iPadAir2_EpicQA
Change 3149190 on 2016/10/03 by Peter.Sauerbrei@peter.sauerbrei_WEX
bring over the rest of the code signing fixes for Xcode 8
#rb none
Change 3149101 on 2016/10/03 by Peter.Sauerbrei@peter.sauerbrei_WEX
re-submit a built IPP with the code signing changes
Change 3147338 on 2016/09/30 by David.Nikdel@david.nikdel_WEX
Merging CL 3136158
from //UE4/Main/...
to //WEX/Main/...
UBT: Fix support for the x64-on-x86 compiler shipped with Visual Studio Express, which is causing errors for artists generating project files
with UGS. Was not looking for the compiler executable at the correct path.
Change 3143944 on 2016/09/28 by Peter.Sauerbrei@peter.sauerbrei_WEX
Merging using WEX_Main_to_UE4_WEX_Staging
Bringing in Main from WEX-Staging
#rb none
Change 3138249 on 2016/09/23 by Chad.Garyet@cgaryet_wex_main
Integrating codesign fix into WEX/Main
Change 3137757 on 2016/09/23 by Peter.Sauerbrei@peter.sauerbrei_WEX
fix for code signing on Xcode 8 (re-made from 4.13 stream)
#rb none
Change 3133037 on 2016/09/20 by Chance.Lyon@Chance.Lyon_WEX_Main
#WEX
- Fix warning about architecture mismatch
Change 3131645 on 2016/09/19 by Josh.May@josh.may-WEX-MacPro2-Main
#WEX
- Changed hard-coded TextureCube asset defaults from SunsetAmbientCubemap to DefaultTextureCube. This buys us ~16MB memory savings on mobile.
Change 3131515 on 2016/09/19 by David.Nikdel@david.nikdel_WEX
#Slate: Replace WheelScrollAmount constant with a CVAR
Change 3130602 on 2016/09/19 by Nathan.Green@Nathan.Green_Friday_Main
#WEX
#JIRA: WEX-3154, WEX-2954, WEX-2953
- Fix location of WidgetComponents when we're offsetting the screen of the game (fullscreen mode in the game state)
[CL 3479958 by Peter Sauerbrei in Main branch]
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3388286 on 2017/04/11 by Chris.Bunner
Fix mips in texture GnmUAV creation.
Change 3388287 on 2017/04/11 by Chris.Bunner
Improved PS/CS code sharing for TemporalAA.
Change 3388291 on 2017/04/11 by Chris.Bunner
HLODs now correctly hide their children in shadow maps.
Propagate bCastFarShadow flag on HLOD generation.
#jira UE-42254
Change 3388448 on 2017/04/11 by Brian.Karis
Better handle divide by zero
Change 3388449 on 2017/04/11 by Brian.Karis
Optimizations to shading model math.
PR #3340: Bug fixes related to shader TODOs (Contributed by vgfx)
Change 3388455 on 2017/04/11 by Uriel.Doyon
Changed Remove for RemoveSwap when clearing dynamic component references
Change 3388612 on 2017/04/11 by Simon.Tourangeau
Support shaders in projects and in plugins
When searching for a shader it will
- First look in Engine/Shaders as usual
- Then in project's Shader folder
- Then in all enabled plugin Shader folders
Project or plugin must be loaded in PostConfigInit phase
Tested in PIE, engine (cooked, packaged)
Change 3388819 on 2017/04/11 by Arne.Schober
DR - Faster MorpthTarget implementation. Changed the previous Gather aproach to a scatter based one. Reaching about 110GB/s on PS4 which is up to 4x faster than the previous implementation. On PC DX11 the impact is lower due to unecessary UAV barriers but still 2x faster on AMD and up to 6x faster on Nvidia Hardware.
#RB Lina.Halper, Rolando.Caloca
Change 3388862 on 2017/04/11 by Guillaume.Abadie
Allows Motion Blur and TAA in scene capture 2d.
Change 3388953 on 2017/04/11 by Uriel.Doyon
Fixed issue where lights from hidden levels where affecting the lighting build, by checking if the light is registered before adding it.
#UE-43220
Change 3389138 on 2017/04/11 by Arne.Schober
DR - Fix crash when opening a Level without Contentbrowser open.
#RB Matt.Kuhlenschmidt
Change 3389400 on 2017/04/11 by Uriel.Doyon
- Renamed FMaterialResource::IsSeparateTranslucencyEnabled() to FMaterialResource::IsTranslucencyAfterDOFEnabled()
- Removed different logic to determine if translucency after DOF was enabled, and centralized it into a single function: FSceneViewFamily::AllowTranslucencyAfterDOF()
- FSceneRenderTargets::FinishRenderingSeparateTranslucency() now only resolves a single view, allowing better Begin/Finish scopes.
- Renamed FSceneRenderTargets::SeparateTranslucencyDepthRT into FSceneRenderTargets::DownsampledTranslucencyDepthRT since this one is only allocated when rendering in downsampled mode.
- Standard translucency is now rendered in the same resolution than translucency after DOF. (downsampled or full resolution)
- Removed RenderTranslucencyParallel and merged it's logic into RenderTranslucency. Renamed DrawAllTranslucencyPasses to RenderViewTranslucency and added a parallel version RenderViewTranslucencyParallel.
- Moved all debug draw logic (VisualizeLPV, ViewMeshElements and SimpleElementCollector) to a common place.
- New option "r.AllowDownsampledStandardTranslucency" to control the downsampling of standard translucency. Affect blend module materials
#jira UE-39505
Change 3389860 on 2017/04/12 by Richard.Wallis
UE-41407 Cable actor does not render correctly in viewport on Mac.
Build the mesh at creation time - call into exisiting mesh create function.
Change 3390933 on 2017/04/12 by Arne.Schober
DR - potential fix for UE-43125 where the this pointer might get invalidated in the middle of the function
#RB Marcus.Wassmer
Change 3391010 on 2017/04/12 by Ben.Marsh
Compile UE4Game non-unity for Mac as part of nightly builds in //UE4/Dev-Rendering.
Change 3391412 on 2017/04/12 by Uriel.Doyon
Mesh Decals are now sorted according to the component TranslucencySortPriority.
#jira UE-43053
Change 3392117 on 2017/04/13 by Guillaume.Abadie
Integrates Raven's experimental PCSS for cascaded shadow map hidden behind a CVar.
Change 3392179 on 2017/04/13 by Guillaume.Abadie
Attempts to fix linux compilation by removing mistakenly submitted dead code.
Change 3392231 on 2017/04/13 by Guillaume.Abadie
Fixes a wrong enum value real quick in FRenderingObjectVersion I introduced after main integration... Oups...
Change 3393879 on 2017/04/14 by Guillaume.Abadie
Attempts to fix linux compilation warning.
Change 3393881 on 2017/04/14 by Guillaume.Abadie
Back out changelist 3393879
Change 3393882 on 2017/04/14 by Guillaume.Abadie
Attempts #2 to fix linux compilation error.
Change 3394100 on 2017/04/14 by Chris.Bunner
Corrected material shared sampler usage with mip-biasing.
Change 3394174 on 2017/04/14 by Rolando.Caloca
DR - Change ensure to warning
Change 3394221 on 2017/04/14 by Marcus.Wassmer
Fix poseable mesh bounds calculation.
Change 3396238 on 2017/04/17 by David.Hill
Fix Bloom with LensFlare
Duplicating fix - will also fix directly in 4.16
#jira 44050
Change 3397055 on 2017/04/17 by Joe.Graf
Fixed Windows specific assumptions in Slate File Dialog Window's file filtering that lead to crashes
#CodeReview: matt.kuhlenschmidt
#rb: n/a
Change 3397921 on 2017/04/18 by Joe.Graf
Rewrote SlateFileDlgWindow's file filtering to allow for extensionless file selection and to remove the O(n^2) file filtering
#CodeReview: arciel.rekman, matt.kuhlenschmidt
#rb: n/a
Change 3398406 on 2017/04/18 by Rolando.Caloca
DR - Fix shaders in plugins on Mac
Change 3399546 on 2017/04/19 by Benjamin.Hyder
Updating content for test levels (HDR, Bloom_FFT, DistanceFields_IndirectShadows)
Change 3399725 on 2017/04/19 by Guillaume.Abadie
Avoids compiling PCSS shaders for SM4.
Change 3400295 on 2017/04/19 by Michael.Trepka
Fixed metal shader compile errors in MorphTargets.usf
Change 3400457 on 2017/04/19 by Michael.Trepka
Merged Rolando's shader fixes
Change 3400473 on 2017/04/19 by Arne.Schober
DR - provide Aftermath Reason when init failed.
#RB none
Change 3400699 on 2017/04/19 by Arne.Schober
DR - Fixed Text macro
#RB none
Change 3402280 on 2017/04/20 by Simon.Tovey
Minor cascade fix
#tests no crash
#jira UE-41560
Change 3402517 on 2017/04/20 by Arne.Schober
DR - Fix static analysis warning
#RB none
Change 3403897 on 2017/04/21 by Arne.Schober
DR - [UE-43898] - Someone missed a shaderversion bump which poisoned the DCC
#RB None
#jira UE-43898
Change 3404591 on 2017/04/21 by Olaf.Piesche
#jira UE-41979
Should never be crashing there, unless the mesh is changed after Init of the effect instance; this change safeguards against the number of mesh sections (and hence materials) changing after creation of the dynamic data to avoid the crash.
Change 3407451 on 2017/04/25 by Daniel.Wright
Fixed Indirect Lighting Cache updates caused by capsule indirect shadows forcing point samples, breaking primitives using ILCQ_Volume
Change 3407452 on 2017/04/25 by Daniel.Wright
Added r.AOJitterConeDirections, although disabled by default because it requires the temporal filter to be much stronger
Change 3408397 on 2017/04/25 by Daniel.Wright
ViewFamily.bRealtimeUpdate is set to false if Slate is throttling (like when toggling show flags). Volumetric fog discards the temporal history when not realtime, so you can see changes immediately.
Change 3408428 on 2017/04/25 by Daniel.Wright
Changed 'r.AOMaxObjectsPerCullTile' default back to 512 as 256 causes artifacts with RTDF shadows
Change 3409764 on 2017/04/26 by Daniel.Wright
Force dumping shader debug info for Global shaders when r.ShaderDevelopmentMode is enabled. Most of the shaders you want to look at in a GPU capture are global shaders, and global shaders create few debug files. 'recompileshaders global' time 35s -> 38s for SM5.
Change 3411659 on 2017/04/27 by Daniel.Wright
[Copy] Set Xbox One engine default screen percentage to 83.33 (1600x900), as ESRAM choices are dependent on this
Change 3411660 on 2017/04/27 by Daniel.Wright
[Copy] Global distance field composite shader has a version for each flattened axis, which improves efficiency when updating a slab which is what camera movement typically causes
Change 3411667 on 2017/04/27 by Daniel.Wright
[Copy] Discard distance field AO history buffer if it doesn't match the new buffer size. This prevents reading uinitialized data after a scene render target resize.
Change 3411668 on 2017/04/27 by Daniel.Wright
[Copy] Better indirect capsule shadow draw event info
Change 3411669 on 2017/04/27 by Daniel.Wright
[Copy] Pass down FeatureLevel to AddSubjectPrimitive and GatherShadowsForPrimitiveInner instead of calling the scene's virtual function. Showed up prominently in a sampling profile.
Change 3411755 on 2017/04/27 by Daniel.Wright
[Copy] Occlusion queries are now always done before the base pass if a nearly full prepass is being used(DDM_AllOccluders or DDM_AllOpaque)
* Removed r.OcclusionQueryLocation
Change 3411827 on 2017/04/27 by Daniel.Wright
[Copy] Much cheaper implementation of IsForwardShadingEnabled which showed up prominently in sampling profiles - inlined function and no more unnecessary thread safety overhead
Change 3411829 on 2017/04/27 by Daniel.Wright
Added an ensure to console manager when doing FindTConsoleVariableData* on a FAutoConsoleVariableRef
Change 3411837 on 2017/04/27 by Daniel.Wright
[Copy] Worked around slow memcpy's being used to sort FSortedLightSceneInfo
Change 3411838 on 2017/04/27 by Daniel.Wright
[Copy] Skip tracking MaterialRenderProxyMap on cooked platforms
Change 3411843 on 2017/04/27 by Daniel.Wright
[Copy] Fixed r.ParallelShadows on PS4 and enabled by default engine-wide (saves 5ms RT with CSM)
* Gnm was not tracking DepthClearValue when a depth target was set but not cleared
* Gnm has a bug where TargetsNeedingEliminateFastClear does not persist across commandlist breaks. Moved FinishRenderingGBuffer before RenderShadowDepthMaps to workaround (accidentally not in this changelist)
* Shadow depth rendering was not using BindClearMRTValues to populate GNM parallel commandlist TargetsNeedingEliminateFastClear values
Change 3411873 on 2017/04/27 by Daniel.Wright
[Copy] Deferred uniform expression caching. Setting multiple parameters on a material only causes its uniform expressions to be recached once.
* 280 calls to CacheUniformExpressions -> 120 during Fortnite combat (6.5ms -> 3.4ms)
Change 3411891 on 2017/04/27 by Daniel.Wright
[Copy] GatherShadowPrimitives optimizations
* Total GatherShadowPrimivies went from 2.3ms -> 1.3ms on PS4 with these changes in GPUPerfTest (duplicated 3x)
* Much flatter primitive octree (16 -> 256 max primitives)
* Primitives are culled against the shadow frustum before FPrimitiveSceneInfo or FPrimitiveSceneProxy are dereferenced in FilterPrimitiveForShadows
* FilterPrimitiveForShadows work is done in a ParallelFor. Primitive octree nodes are processed in different jobs.
* StaticMeshWholeSceneShadowBatchVisibility now only stores entries for meshes with bRequiresPerElementVisibility (landscape). Previously it was allocating and zeroing 500Kb 3x per frame (main view + 2 cascades) which cost ~.8ms on PS4.
Change 3412192 on 2017/04/27 by Michael.Trepka
Fixed Clang compile errors in FortniteGame, partial copy of CL 3313426
Change 3412547 on 2017/04/27 by Daniel.Wright
Fixed leak of FShadowMapAllocation and FLightMapAllocation's found by licensee
Change 3414239 on 2017/04/28 by Arne.Schober
DR - UE-44500 - Removed use of Structured Buffer from MorphTargets due to HLSLCC not supporting it.
#RB none
#jira UE-44500
Change 3414754 on 2017/04/28 by Daniel.Wright
Added VolumetricFogEmissive to ExponentialHeightFogComponent
* Volumetric fog does not yet support precomputed lighting, so this is the only way to get an ambient lighting term
Change 3416859 on 2017/05/01 by Arne.Schober
DR - Remove FeatureLevel from the Clear Functions to reduce area of error
#RB Rolando.Caloca
Change 3420750 on 2017/05/03 by Arne.Schober
DR - [UE-44497] - Fix several PS4 validation layer issues
#RB Marcus.Wassmer
Change 3422869 on 2017/05/04 by Benjamin.Hyder
Fix compile error from merge.
Change 3423938 on 2017/05/04 by Marc.Olano
[UE-44453] Fix bloom problems by moving saturate after vector math
Change 3424494 on 2017/05/04 by Olaf.Piesche
#jira UE-44589
When using FindTCosoleVariableData, the CVar can not be an FAutoConsoleVariable.
#tests as described in jira ticket
Change 3424754 on 2017/05/04 by Uriel.Doyon
Fixed call to get texture compressor module outside the main thread.
#jira UE-42168
Change 3425447 on 2017/05/05 by Uriel.Doyon
#buildfix
Change 3427042 on 2017/05/05 by Arne.Schober
DR - Fix one of my typos
#RB none
Change 3428119 on 2017/05/08 by Marcus.Wassmer
Fix UE-44733
static analysis warning.
Change 3428222 on 2017/05/08 by Uriel.Doyon
Fixed bad condition in translucency rendering
#jira UE-44452
Change 3429794 on 2017/05/08 by Uriel.Doyon
Fixed issues with lightshafts and low res translucency.
#jira UE-44452
Change 3430921 on 2017/05/09 by Rolando.Caloca
DR - Get additional function pointers for D3DReflect, Compile and Disassemble instructions from the same DLL when compiling D3D11 shaders.
- Also fixes using the correct fxc.exe path to match the DLL we distribute.
Change 3431156 on 2017/05/09 by Rolando.Caloca
DR - Remove unused code
Change 3431396 on 2017/05/09 by David.Hill
Copy of changes made directly in 4.16 ( CL 341037 )
to be submitted to dev-rendering
#jira UE-44641
Change 3431400 on 2017/05/09 by Rolando.Caloca
DR - Fix typo
Change 3431527 on 2017/05/09 by David.Hill
#rb: none
Oops.
comment out r.ShaderDevelopmentMode =1
Change 3431590 on 2017/05/09 by Daniel.Wright
Removed early return landmine in USceneCaptureComponent2D::Serialize
Change 3431591 on 2017/05/09 by Daniel.Wright
Disallow map building while in PIE, or PIE while buildling lighting
Change 3431594 on 2017/05/09 by Daniel.Wright
Added RenderTargetFormat to UTextureRenderTarget2D, with choices of 8 bit, 16fp, 32fp and 1, 2 or 4 channels.
Change 3431667 on 2017/05/09 by Daniel.Wright
Volumetric fog now supersamples lighting when the history is not available, reducing noise on areas that just came on-screen or after a camera cut.
* The number of samples is controlled by r.VolumetricFog.HistoryMissSupersampleCount, defaults to 4, cinematic scalability uses 16
* Under fast camera movement, volumetric fog cost went from 1.79ms -> 1.97ms with 4 samples, on a 970GTX
Change 3432366 on 2017/05/10 by Richard.Wallis
Fix for MetalRHI Asserts When Using "Profile GPU" With RHI-Thread/Parallel-Execution. Don't insert events when not in RHIThread or the actual single-threaded-render thread.
#jira UE-36006
Change 3432367 on 2017/05/10 by Richard.Wallis
Fix for Metal ReStartRenderPass assert with profiling. macOS metal asserts when using "profileGPU" even with -norhithread argument set.
Added no action to the allowed render pass restart store actions for the depth buffer avoiding the assert. Interested to know the details if this is not a valid assumption to make - throwing away the depth buffer after a render pass I think would be a common case.
#jira UE-44322
Change 3432409 on 2017/05/10 by Richard.Wallis
Merged across CL 3415890 from Release-4.16 fix for (jira UE-43895)
Fix for deferred store actions getting cleared when we don't have a valid render target.
Change 3432833 on 2017/05/10 by Daniel.Wright
Fixed Ocean compile error
Change 3432874 on 2017/05/10 by Marc.Olano
Improved captions for Noise and VectorNoise material nodes
Change 3432947 on 2017/05/10 by Richard.Wallis
Fix for shared Material Native Shader Libraries Don't Function With Iterative Cooking. Keep latest versions of shader byte code in native shared material packaged build in an intermediate directory than can be reused on a later iterative cook.
- Doesn't handle deletion of the intermediate directory contents. Assumed to be a higher level requirement on non iterative cook flag.
#jira UE-44657
Change 3433484 on 2017/05/10 by Arne.Schober
DR - UE-44393 - Move ShaderPlatform into TShaderMap for extra debuginformation when it fails to find a proper shader. Also log when Gobalshaders are verified and recompiled.
#jira UE-44393
#RB Daniel.Wright
Change 3433515 on 2017/05/10 by Arne.Schober
DR - Fix a bug where recompileshaders changed while compiling causes a crash where the chached local vertex factories are mutated while been used.
#RB Daniel.Wright
Change 3433606 on 2017/05/10 by Daniel.Wright
Fixed static shadowing of volumetric fog and translucency causing shadowing past the lightmass importance volume.
Change 3433619 on 2017/05/10 by Daniel.Wright
Skip recapturing reflection captures when PropagateLightingScenarioChange is being called for a level unload. This leaves stale results in reflection captures around when hiding a level in the editor, but avoids the double recapture that happens when swapping lighting scenarios in game, and the unnecessary reflection capture update when exiting PIE.
Change 3433795 on 2017/05/10 by Arne.Schober
DR - add cmdline to select a GPU vendor when multiple GPUs from differnt Vendors are installed into the same Machine
#RB marcus.Wassmer
Change 3433941 on 2017/05/10 by Daniel.Wright
Cone vs tile bounding sphere intersection tests for Light Grid culling of spotlights, which provides much tighter culling than just View space tile AABB vs light bounding sphere.
* Forward shading BasePass 3.7ms -> 2.4ms in a scene with 24 spotlights on 970GTX
* Volumetric fog 2.87ms -> 2.09ms in the same scene
Change 3435139 on 2017/05/11 by Daniel.Wright
Restored GTextureRenderTarget2DMaxSizeX which is used by Ocean
Change 3435297 on 2017/05/11 by Arne.Schober
DR - Remove manual AlignOf and use C++11 keyword instead
#RB Steve.Robb
Change 3435367 on 2017/05/11 by Daniel.Wright
Circle vertex buffer for slightly tighter voxelization of volumetric fog shadowed lights
* 1.5ms -> 1.38ms on 970 GTX with 24 spotlights
Change 3435522 on 2017/05/11 by Brian.Karis
Dither opacity mask now stacks properly for non parallel polys. Dither is randomized by triangle normal.
Change 3436063 on 2017/05/11 by Daniel.Wright
Disabled CLB_AggressiveBatching for PC d3d12 as it causes flickering artifacts in lighting
Change 3436269 on 2017/05/11 by Uriel.Doyon
Fixed UVChannel data possibly not up-to-date depending on user manips.
Change 3436611 on 2017/05/12 by Simon.Tovey
Improved name and tooltip for static mesh property controlling generation of alias tables for uniform sampling.
Change 3436676 on 2017/05/12 by Simon.Tovey
Fix for fixed bounds being "invalid" unless set via the toolbar option.
Change 3436700 on 2017/05/12 by Simon.Tovey
Crash fix.
Issue found in https://udn.unrealengine.com/questions/355944/crash-in-fdynamicspriteemitterdatagetdynamicmeshel.html
Particle proxies would have stale material resource pointers if the material is changed while the system was invisible.
If the old material is freed during this time, the next time the system renders it will crash.
Change 3437367 on 2017/05/12 by Brian.Karis
Fixed bug with small UV charts not packing.
Change 3437860 on 2017/05/12 by Arne.Schober
DR - Fix alignment compile error in win32 where according to ABI alignment is 4 for int64
#RB none
Change 3437972 on 2017/05/12 by Arne.Schober
DR - Fix alignment compile error in win32 where according to ABI function calls cannot take alingned structures. In all of the cases the copy was completely unnecessary.
#RB none
Change 3437975 on 2017/05/12 by Chris.Bunner
Added calculation for MaterialParamsEx to MeshDecals.usf.
#jira UE-43052
Change 3438109 on 2017/05/12 by Rolando.Caloca
DR - Support for -nomcpp on SCW
Change 3438889 on 2017/05/15 by Chris.Bunner
Nullptr check in a few material uniform expressions.
Change 3439351 on 2017/05/15 by Chris.Bunner
Added tooltip to Power material expression.
Change 3439763 on 2017/05/15 by Daniel.Wright
Apply passed in DistanceBiasSqr to line lights - allows volumetric fog to reduce aliasing on line lights
Change 3439764 on 2017/05/15 by Daniel.Wright
Fixed order of operations with bTreatMaxDepthUnshadowed - manifested as unfiltered static shadow depth lookups
Change 3440722 on 2017/05/16 by Guillaume.Abadie
Exposes Scene capture's FOV to blueprints
Change 3441680 on 2017/05/16 by Uriel.Doyon
Added units to point light intensity, to allow the user to specify the value in candelas or lumens.
New point light actors now configure the intensity in candelas by default.
Replaced viewport exposure settings by an EV100 slider.
Hidding the tone mapper in the show flag now still applies the exposure.
Added a new AutoExposure method called EV100 which allows to specify :
- MinEV100, MaxEV100
- Calibration Constnat
- Exposure Compensation
#jira UE-42783
Change 3441884 on 2017/05/16 by Uriel.Doyon
Fixed StreamingDistanceMultiplier not being applied to the texture streaming data.
Change 3442800 on 2017/05/17 by Gil.Gribb
Fixed botched merge.
Change 3442896 on 2017/05/17 by Gil.Gribb
UE4 - Allowed the possibility of running the RHI "thread" on task threads instead and cleaned up and unified the conditionals involved. By default we still have a dedicated RHI thread because it tested slightly faster.
Change 3443951 on 2017/05/17 by Richard.Wallis
Added Apple override allocator macro - each command encoder type needs it's own allocator queue.
Change 3444787 on 2017/05/17 by Daniel.Wright
Fixed DBuffer decal default normal (used when DBuffer decals enabled, but not decals rendered) not reconstructing zero properly, adding -.008 to WorldNormal which then caused artifacts with forward lighting specular on materials with roughness near 0.
Change 3444882 on 2017/05/17 by Daniel.Wright
Added comment to FClearValueBinding::DefaultNormal8Bit to make the dependency on shader decode clear
Change 3444883 on 2017/05/17 by Brian.Karis
Improved contact shadows
Change 3445048 on 2017/05/17 by Daniel.Wright
Fixed particle lights in forward shading, they were not setting the lighting channel mask properly
Change 3445107 on 2017/05/17 by Michael.Trepka
Changed the order of operations in FMetalStateCache::SetRenderState to work around an issue with some Intel drivers where they would not recalculate the raster state in some edge cases.
#jira UE-43725
Change 3445212 on 2017/05/17 by Uriel.Doyon
Added a -CSV option to ListTextures command
Change 3445947 on 2017/05/18 by Richard.Wallis
Clone of Release-4.16 Stream CL 3437181 and CL 3442450 - fix(s) for black rendering on macOS El Cap with Nvidia GPU. Move sampling of EyeAdaption texture to pixel shader for Mac Metal using shader language version <= 1 only.
Change 3446545 on 2017/05/18 by Chris.Bunner
Removed hardcoded (and unused) MRT write from Decal shaders.
#jira UE-45095
Change 3446568 on 2017/05/18 by Marc.Olano
Sobol and image-based importance sampling C++ functions and blueprint nodes
Change 3446988 on 2017/05/18 by Marc.Olano
Fix build error: missing include
Change 3446990 on 2017/05/18 by Marc.Olano
Cell-indexed Sobol sampling for shaders (in MonteCarlo.usf) and materials (Sobol and TemporalSobol nodes)
Change 3447142 on 2017/05/18 by Rolando.Caloca
DR - RWLock instead of mutex for PSO cache
Change 3447144 on 2017/05/18 by Uriel.Doyon
Moved shading model code to SetGBufferFromShadingModel(). This allows the code to be reused in other shader files.
Change 3447794 on 2017/05/18 by Brian.Karis
Virtual texturing foundation code
Change 3448944 on 2017/05/19 by Arciel.Rekman
Fix non-unity Linux (and Mac, etc) builds.
- Mac fix is tentative, did not try.
Change 3449183 on 2017/05/19 by Marcus.Wassmer
Duplicate fix for reflection captures to happen after sequencer updates.
Change 3449196 on 2017/05/19 by Uriel.Doyon
Handling RCM_MinMax when reading FloatRGBA textures.
This fixes pixel inspector always reading 1 for scene color values greater than one.
Change 3451652 on 2017/05/22 by Rolando.Caloca
DR - Compile fix
#jira UE-45245
Change 3451660 on 2017/05/22 by Chris.Bunner
Additional compile fix.
#jira UE-45245
Change 3451897 on 2017/05/22 by Daniel.Wright
Moved RTDF shadow project back after the base pass, since it samples the GBuffer for subsurface shadowing. Removed r.DFShadowAsyncCompute which was relying on the previous ordering.
Change 3452055 on 2017/05/22 by Rolando.Caloca
DR - Switch compile fix
#jira UE-45265
Change 3452089 on 2017/05/22 by Rolando.Caloca
DR - Compile fix
#jira UE-45246
Change 3452108 on 2017/05/22 by Rolando.Caloca
DR - Compile fix
#jira UE-45246
Change 3452179 on 2017/05/22 by Brian.Karis
Exposed dimensions. Fixed static analysis.
Change 3452734 on 2017/05/22 by Daniel.Wright
When post processing is disabled, TPT_TranslucencyAfterDOF translucency gets forced into the standard translucency pass.
Change 3452770 on 2017/05/22 by Daniel.Wright
Static light source shapes drawn into reflection captures handle SourceLength via scaled sphere
Change 3452861 on 2017/05/22 by Rolando.Caloca
DR - Switch compile fix
Change 3452952 on 2017/05/22 by Brian.Karis
Small VT fixes
Change 3453647 on 2017/05/23 by Richard.Wallis
Fix for tessellation shaders on Mac (Metal v1.2) failing to compile.
#jira UE-45227
Change 3454844 on 2017/05/23 by Uriel.Doyon
Fixed extra X16 on some point lights
#jira UE-45250
Change 3454934 on 2017/05/23 by Chris.Bunner
Backing out changelists 3441680, 3454636 and 3454844 for the sake of integration stability.
Change 3457131 on 2017/05/24 by Arne.Schober
DR - [UE-45317] - Fix Depthbuffer not available for resolve in Forward mode
#jira UE-45317
#RB Chris.Bunner
Change 3457141 on 2017/05/24 by Marc.Olano
Sobol bug fixes
Change 3457953 on 2017/05/24 by Brian.Karis
Fix static analysis
#jira UE-45315
#jira UE-45314
#jira UE-45313
Change 3459064 on 2017/05/25 by Chris.Bunner
Fix for out of bounds material translation crash.
#jira UE-45406
Change 3459700 on 2017/05/25 by Brian.Karis
Revert using sprite index buffer because the vert order is different.
Change 3459847 on 2017/05/25 by Chris.Bunner
Fixing ensure in RenderTestMap.
[CL 3461201 by Chris Bunner in Main branch]