Clamp values after scaling to prevent too large numbers being passed to FMath::RoundToInt which would result in unexpected values being read.
#jira UE-64430
#rb ryan.gerleve
[CL 4400357 by Peter Engstrom in Dev-Networking branch]
Added ability for unit tests to partially rewind/restart execution, at specific stages, to save time.
#rb none
[CL 4134299 by John Barrett in Dev-Networking branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3808185 by Cody.Albert
Added missing calls to FEditorViewportClient::AddReferencedObjects in overrides
Change 3809824 by Michael.Trepka
Improved the way we generate groups in Xcode project's source code navigator. They are now sorted alphabetically and have correct paths so Xcode no longer displays them in red. Also, added __INTELLISENSE__ to preprocessor definitions for indexing to improve indexing without game header files generated.
Change 3810089 by Jamie.Dale
Fixed PO files failing to import translations containing only whitespace
Change 3811281 by Matt.Kuhlenschmidt
PR #4331: Toggle SIE shortcut only in PIE (Contributed by projectgheist)
Change 3813031 by Matt.Kuhlenschmidt
Fix undocked tabs not dropping at users mouse location
#jira UE-53427
Change 3813361 by Brandon.Schaefer
Print what SDL video driver we are using
Change 3818430 by Matt.Kuhlenschmidt
PR #4365: Incorrect font name and forgotten undef (Contributed by projectgheist)
Change 3818432 by Matt.Kuhlenschmidt
PR #4366: Asset Color Strip updates correct on drag and drop (Contributed by projectgheist)
Change 3818436 by Matt.Kuhlenschmidt
PR #4367: Improved logging (Contributed by projectgheist)
Change 3819886 by Matt.Kuhlenschmidt
Add a way to optionally disable the warning about referenced actors being moved to other levels. Useful for bulk actor moves via script
Change 3819888 by Matt.Kuhlenschmidt
Avoid crashing when a window size becomes too large to render. Instead just ensure and clamp to the maximum allowed size. Avoids crashes where the screen dimensions are saved with super large numbers for unknown reasons
Change 3821773 by Brandon.Schaefer
Fix crash when importing to level
#jira UE-31573
Change 3821892 by Jamie.Dale
Improved the localized asset cooking so that it only cooks L10N variants if their source asset is cooked
#jira UE-53010
Change 3823714 by Christina.TempelaarL
#jira UE-52179 added support for grayscale PSD files
Change 3826805 by Christina.TempelaarL
#jira UE-49636 SceneCaptureComponent2D hidden actor and show only actors disabled in blueprints
#jira UE-53445 SceneCaptureComponent2D hidden actors always disabled in details layout
Change 3828444 by Anthony.Bills
Add LXC container script for building third party libraries.
The intention is that this should become the only way to rebuild the third party libraries that require system dependencies not included in the cross-compile toolchain and also to rebuild the toolchains. Other third party libraries without any system dependencies could be rebuilt via the cross-compile toolchains/UBT.
This script has been tested running on CentOS 7 and Ubuntu 17.10.
Buy default the x86 and x86_64 builds will be built against a CentOS 6 container (and targeting glibc 1.12) and the aarch64 and armhf builds will use an Ubuntu Ubuntu Trusty (14.04) but this is not yet complete.
Change 3828754 by Brandon.Schaefer
Linux: Fix gamepad thumbstick clicks not registering (github #4209 thanks J??rn M??ller)
#jira UE-45722
#review-3828733 Arciel.Rekman
Change 3830414 by Brandon.Schaefer
Remove circular referencing to a parent window. Move to use AddSP vs AddRaw as well to be safe manually remove ourselves from the selection event delegate list due to Linux pending deletion of windows.
Looks like this should fix UE-28322 as well which I've removed the work around placed in for that.
#jira UE-53918
#review @michael.trepka, @matt.kuhlenschmidt, @arciel.rekman
Change 3830916 by Brandon.Schaefer
More verbose message about missing VK extensions (from Marcin Undak)
#review-3830710 marcin.undak, arciel.rekman
Change 3831339 by Brandon.Schaefer
Default to as-needed for debug mode
#jira none
#review-3830658 Arciel.Rekman
Change 3833102 by Jamie.Dale
Re-added warning for duplicate package localization IDs when gathering asset localization
Change 3834600 by Jamie.Dale
Optimized asset registry filter intersection
Change 3838024 by Brandon.Schaefer
Remove tracking of CLion/CMake build files (from github #4346 thanks reapazor!)
#jira UE-53551
#review-3835803 arciel.rekman
Change 3839969 by Michael.Dupuis
#jira UE-52289: When OnRegister is called on the component make sure our PerInstanceRenderData is up to date
Prevent a possible crash if ClearInstanceSelection was called on a component with no PerInstanceRenderData existing
Change 3840049 by Michael.Dupuis
#jira UE-52975: Was always performing the equivalent of an Add, so now we use the Transform during the duplicate
Change 3840071 by Matt.Kuhlenschmidt
- Combine some shader params for slate in order to reduce overhead setting uniform buffers
- Added better stats for slate draw call rendering
- cleaned up huge lambda in Slate rendering main function so we can read the main slate rendering function again
Change 3840291 by Michael.Dupuis
#jira UE-53053: Was having a mismatch between the remove reorder and the actual remove
Change 3840840 by Michael.Dupuis
#jira UE-53944: Make sure the LOD generated is in the valid range to prevent the crash
Change 3842072 by Michael.Dupuis
#jira UE-50299: Include NumSubsection in calculation of component quad factor
Change 3842487 by Christina.TempelaarL
#jira UE-50573 HighResShot has wrong res in immersive mode
Change 3845702 by Matt.Kuhlenschmidt
PR #4381: DefaultASTCQualityBySpeed too high max value. (Contributed by kallehamalainen)
Change 3845706 by Matt.Kuhlenschmidt
PR #4388: Only restore window if minimized (Contributed by projectgheist)
Change 3845993 by Christina.TempelaarL
#jira UE-41558 crash when selecting PostProcessingVolumes in separate levels
Change 3856395 by Brandon.Schaefer
No longer using ALAudio on Linux
#jira UE-53717
Change 3858324 by Michael.Trepka
Preserve command line arguments in Xcode project when regenerating it
Change 3858365 by Michael.Dupuis
#jira UE-52049: There was a case where adding and removing multiple time would lead to reordering the instances and this would cause the regeneration of the random stream for all the reorded instances.
Change 3858492 by Michael.Trepka
Updated dependencies for Mac dSYM files so that only cross-referenced modules have their dSYMs recreated on subsequent builds instead of all modules.
Change 3859470 by Michael.Trepka
CIS fix. Make sure a scheme file exists before trying to read it when generating Xcode project.
Change 3859900 by Joe.Conley
Fix for "Check Out Assets" window not properly receiving focus.
Change 3865218 by Michael.Dupuis
#jira UE-45784: Exposed the possibility to edit LDMaxDrawDistance
Change 3866957 by Michael.Dupuis
#jira UE-42509: Added BodyInstance to ULandscapeSplineSegment and ULandscapeSplineControlPoint
Deprecated bEnabledCollision and migrate data as it's replaced by BodyInstance
Change 3867220 by Cody.Albert
Fixed Project Launcher scrollbar to properly stay anchored at the bottom of the scroll area.
Change 3869117 by Michael.Dupuis
#jira UE-42509:Fixed compile error when not having editor data
Change 3872478 by Arciel.Rekman
Linux: disable PIE if compiler enables it by default.
Change 3874786 by Michael.Dupuis
#jira UE-46925: Remove the guessing functionality when importing a heightmap, and instead propose to the user valid size that can be used for the import through a combo button.
Improved usability of the UI by disabling size field when no file was specified
Change 3875859 by Jamie.Dale
Implemented our own canonization for culture codes
Change 3877604 by Cody.Albert
We now validate actor names passed to SetActorLabel to ensure None isn't passed in, which can corrupt levels
Change 3877777 by Nick.Shin
PhysX build fix - this came from CL: 3809757
#jira UE-54924 Cannot rebuild Apex/PhysX/NvCloth .emscripten missing
Change 3881693 by Alexis.Matte
Fix local path search to not search in memory only
#jira UE-55018
Change 3882512 by Michael.Dupuis
#jira none : Fixed screen size calculation to take aspect ratio into account correctly
Change 3886926 by Arciel.Rekman
Linux: fixed checking clang settings during the cross-build (UE-55132).
#jira UE-55132
Change 3887080 by Anthony.Bills
Updated SDL2 build script.
- Now allows compiling inside a CentOS 6 or Ubuntu 12.04 container with wayland support when using the ContainerBuildThirdParty.sh.
- Added multiple build arch support to the BuildThirdParty script and pass this down to the SDL2 build script.
Change 3887260 by Arciel.Rekman
Linux: fix leaking process handles in the cross-toolchain.
Change 3889072 by Brandon.Schaefer
Fix RPath workaround, to better handle both cases
#jira UE-55150
#review-3888119 @Arciel.Rekman, @Ben.Marsh
Change 3892546 by Alexis.Matte
Remove fbx exporter welded vertices options
#jira UE-51575
Change 3893516 by Michael.Dupuis
Remove static mesh instancing async buffer filling, as with all the changes made, it's no longer necessary, the cost of loading very large buffer is negligable
Rebuild the occlusion tree when using foliage.DensityScale with something other than 1.0
Change 3894365 by Brandon.Schaefer
Pass FileReference over a raw string to the LinkEnvironment
#jira none
#review-3894241 @Ben.Marsh, @Arciel.Rekman
Change 3895251 by Brandon.Schaefer
Use X11 pointer barriers to bound the cursor to a region over warping the pointers. Patch from Cengiz
#jira UE-25615
#jira UE-30714
#review-3894886 @Arciel.Rekman
Change 3897541 by Michael.Dupuis
#jira UE-53787: Added guard if for some reason the material is null we should not try to draw using this material
Change 3904143 by Rex.Hill
#jira UE-55366: Fix crash when overwriting existing level during level save as
#jira UE-42426: Map '_BuiltData' can now be deleted when selected at same time as map
- Map '_BuiltData' package is now garbage collected when switching maps in the editor
Change 3906373 by Brandon.Schaefer
Fix splash image. Use alias format for big/little endian machines.
#jira none
Change 3906711 by Rex.Hill
#jira UE-42426: BuiltData now deleted with maps
Change 3907221 by Cody.Albert
Add support for relative asset source paths in content plugins
Change 3911670 by Alexis.Matte
Fix assetimportdata creation owner
#jira UE-55567
Change 3912382 by Anthony.Bills
Linux: Add binaries for GoogleTest and add to BuildThirdParty script.
Change 3914634 by Cody.Albert
Added missing include that could cause compile errors if IWYU was disabled.
Change 3916227 by Cody.Albert
Fixing some cases where we check #ifdef WITH_EDITOR instead of #if WITH_EDITOR
Change 3917245 by Michael.Dupuis
#jira UE-35097: Fixed crash when creating a new landscape with 2x2 subsection and material containing grass spawning
Change 3918331 by Anthony.Bills
Linux: Bundled Mono - Explicilty pick libc.so.6 as libc.so is a linker script and store the config file directly.
Change 3920191 by Rex.Hill
#jira UE-44197 Fix saving sub-level level causing MapBuildData to be deleted
Improved MapBuildData rename, move, duplicate, copy
Change 3920333 by Matt.Kuhlenschmidt
Render target clear color property now settable in editor
#jira UE-55347
Change 3926094 by Michael.Dupuis
#jira UE-51502: Added some min/max values to foliage and grass settings to prevent overflow/crash
#coderevew jack.porter
Change 3926243 by Michael.Dupuis
#jira UE-54669: cleaned up invalid/duplicate shader and moved some shaders to appropriate list
Change 3926760 by Jamie.Dale
Added support for TTC/OTC fonts
These can be used via a sub-face index on FFontData, which can be set via a new combo in the font editor. You can also see the cached list of sub-faces within a font file from the UFontFace asset.
Change 3927793 by Anthony.Bills
Mono: Remove SharpZipLib and references from bundled Mono.
#review-3887212 @ben.marsh, @michael.trepka
Change 3928029 by Anthony.Bills
Linux: Add support for UnrealVersionSelector.
- Supports using UVS to launch without a project file. This will then launch the selected engine's project wizard.
- Linux UVS uses Slate for the version selection and error log dialogs.
- Mime-types and desktop file support added to DesktopPlatformLinux to allow associating with UVS as per the Windows binary and git builds.
- Icons added for Linux.
#review-3882197 @arciel.rekman, @brandon.schaefer
Change 3931293 by Alexis.Matte
Add generic Levenshtein edit distance to core algo. This algorithm will help suggesting name matching when users have to resolve material name conflict when re-import fbx meshes.
Add also plenty of automation tests for it.
#jira none
Change 3931436 by Arciel.Rekman
Stop RHI thread before shutting down RHI.
- Prevents crashes for some drivers that create TLS objects with destructors; those destructors will get called after the thread exited, but the library will already be unloaded on RHI shutdown.
Change 3934287 by Alexis.Matte
Fix crash when re-importing skeletal mesh. Skinned component render data resource is now release when re-importing.
#jira none
Change 3937585 by Lauren.Ridge
Added labels to the colors stored in the theme bar.
Change 3937738 by Alexis.Matte
Make sure content browser do not show a preview asset created when we cancel an export animation preview
#jira UE-49743
Change 3941345 by Michael.Dupuis
#jira UE-26959: Prevent reusing multiple type the same grass type into the same material grass output node
Change 3941453 by Michael.Dupuis
#jira UE-47492: Added a guard to validate LayerIndex
Change 3942065 by Jamie.Dale
Fixed crash trying to use FSlateApplication when it wasn't available (eg, in a commandlet)
Change 3942573 by Alexis.Matte
Fix static analysis
Change 3942623 by Michael.Dupuis
#jira 0
Cast to ulong as TaskIndex * NumStripes could exceed an int limit and add an assert if the wraparound is negative
Change 3942993 by Matt.Kuhlenschmidt
PR #4547: Verify the return value of FT_New_Memory_Face (Contributed by jorgenpt)
Change 3942998 by Matt.Kuhlenschmidt
PR #4554: Cleanup log printing (Contributed by projectgheist)
Change 3943003 by Matt.Kuhlenschmidt
PR #4534: Prevent Fatal log when alt tabbing during a level save (Contributed by projectgheist)
Change 3943011 by Matt.Kuhlenschmidt
PR #4518: edit (Contributed by pdlogingithub)
Change 3943027 by Matt.Kuhlenschmidt
PR #4524: Notifications always render on the screen with the main viewport (Contributed by projectgheist)
Change 3943074 by Matt.Kuhlenschmidt
PR #4484: Add group actor to folder (Contributed by ggsharkmob)
Change 3943079 by Matt.Kuhlenschmidt
PR #4431: Git Plugin: replace usage of the 2 cli args "--work-tree" and "--git-dir" by "-C" (Contributed by SRombauts)
Change 3943092 by Matt.Kuhlenschmidt
PR #4434: Git plugin: configure the default remote URL 'origin' (Contributed by SRombauts)
Change 3943132 by Matt.Kuhlenschmidt
PR #4247: Add File picker to Git Path setting on GitSourceControl (Contributed by shiena)
Change 3943141 by Matt.Kuhlenschmidt
PR #4303: Fix ULevelExporterT3D so that it works in a commandlet (Contributed by DSDambuster)
Change 3943349 by Jamie.Dale
Cleaned up PR #4547
Made the assert non-fatal to avoid it being able to take down the editor if you load up a bad font.
Fixed some code that was deleted during the merge.
Change 3943976 by Michael.Trepka
Copy of CL 3940687
Fixed long link times when building for Mac in Debug by passing -no_deduplicate flag to the linker, which is what Xcode does in Debug configs.
#jira none
Change 3944882 by Matt.Kuhlenschmidt
Fix a few regressions with scene viewport activation locking can capturing the cursor in editor
#jira UE-56080, UE-56081
Change 3947339 by Michael.Dupuis
#jira UE-55664: Fixed undo/redo buffer handling so we remove from the beginning of the buffer during undo buffer where buffer is at max memory and from the end during redo operation.
Fixed cancel also to re add removed transaction at the end or the start depending if we're doing a redo or undo operation
Fixed the Undo History UI to listen to an event when the undo buffer changed instead of checking every frame, as when the buffer was full, no changes would occur, thus no UI update.
Change 3948179 by Jamie.Dale
Fixed monochromatic font rendering
- All non-8bpp images are now converted to 8bpp images for processing in Slate.
- We convert the gray color of any images not using 256 grays (eg, monochromatic images that use 2 grays).
- Fixed a case where the temporary bitmap wasn't being deleted.
- Fixed a case where the bitmap could be used after it was deleted.
- Added a CVar (Slate.EnableFontAntiAliasing) to control whether you want anti-aliased (256 grayscale) rendering (default), or monochromatic (2 grayscale) rendering.
Change 3949922 by Alexis.Matte
Ensure fbx node name are not empty when loading a fbx file. I use the same naming convention as Maya
#jira UE-56079
Change 3950202 by Rex.Hill
Fix crash during editor asset automation tests.
Now skips showing modal progress window when opening asset editor window. ActiveTopLevelWindow is not set when modal windows are open.
#jira UE-56112
Change 3950484 by Michael.Dupuis
#jira UE-52176: delete the Cluster tree when the builder is no longer needed
Change 3954628 by Michael.Dupuis
Bring back 4.19/4.19.1 Landscape changes
Change 3957037 by Michael.Dupuis
#jira UE-53343: Add foliage instances back when changing component size
Changed the formulation for the Clip/Expand behavior to make it more explicit on what will happen
Added SlowTask stuff to manage big landscape change
Change 3959020 by Rex.Hill
Rename/move file MallocLeakDetection.h
Change 3960325 by Michael.Dupuis
Fixed static analysis
Change 3961416 by Michael.Dupuis
#jira UE-46100: Exposed UseDynamicInstanceBuffer on Foliage type, so user can decide if they want to update them dynamically
#jira UE-55092: Fixed the warning to appear when having resource array as empty but VB as set up
Added data conssitency that when using Dynamic buffer, Keep CPU Access should also be true, even if implicitly it's already the case, now it's explicit
Change 3962372 by Michael.Trepka
Copy of CL 3884121
Fix for SProgressBar rendering incorreclty on Mac
#jira UE-56241
Change 3964931 by Anthony.Bills
Linux: Add cross-compiled binary of UVS Shipping.
Change 3966719 by Matt.Kuhlenschmidt
Fix parameters out of order here
#jira UE-56399
Change 3966724 by Matt.Kuhlenschmidt
PR #4585: Export symbols for the FDragTool (Contributed by Begounet)
Change 3966734 by Matt.Kuhlenschmidt
PR #4596: fix the slider issue of the HighResolutionScreenshot window (Contributed by mamoniem)
Change 3966739 by Matt.Kuhlenschmidt
Removed duplicated code
#jira UE-56369
Change 3966744 by Matt.Kuhlenschmidt
PR #4602: Fixes check for existing extensions when generating "All Extensions". (Contributed by PhilBax)
Change 3966758 by Matt.Kuhlenschmidt
PR #4604: Fixed an issue where the Modules and DebugTools tabs would be unrecognized after startup if docked in the level editor (Contributed by tstaples)
Change 3966780 by Matt.Kuhlenschmidt
Fix crash accessing graph node title widgets when objects have become stale.
#jira UE-56442
Change 3966884 by Alexis.Matte
Fix speedtree uninitialized values
#jira none
Change 3967568 by Alexis.Matte
Do not override the screensize when importing a skeletal mesh, let the value set by the AddLodInfo function
#jira UE-56493
Change 3968333 by Brandon.Schaefer
Fix order of operation
#jira UE-56400
Change 3969070 by Anthony.Bills
Linux: Make sure to set the UE_ENGINE_DIRECTORY
#jira UE-56503
#review-3966609 @arciel.rekman, @brandon.schaefer
Change 3971431 by Michael.Dupuis
#jira UE-56515: Fixed an issue where ForcedLOD > MaxLOD and make sure that LastLOD will at least contain current streamed in LOD.
#jira UE-56517: When using ParallelInitView 1 there was a memory leak related to a reallocate that happen with the TArray of FMemstack
Pass correctly LODDistanceFactor instead of View.LODScale as we do not want StaticMeshScale to affect us.
Change 3971467 by Matt.Kuhlenschmidt
Fixed crash deleting a texture with texture painting on it
#jira UE-56994
Change 3971557 by Matt.Kuhlenschmidt
Fix temporary exporter objects being potentially GC'd and causing crashes during export
#jira UE-56981
Change 3971713 by Cody.Albert
PR #4597: [FPS Template] Small null pointer check fix and cleanup (Contributed by TheCodez)
Change 3971846 by Michael.Dupuis
#jira UE-56517: Properly "round" the count so we have the right amount of memory reserved
#jira UE-56515: Still had a edge case left, so when using forced lod i simply make sure the value is in valid range, and allocate all the required data for this range
Change 3973035 by Nick.Atamas
Line and Spline rendering changes:
* Lines/Splines now use 1 UV channel to anti-alias (this channel can be used for texturing)
* Anti-aliasing filter now adjusted based on resolution
* Modified Line/Spline topology to accomodate new UV requirements
* Disabled vertex snapping for anti-aliased lines/splines; previously vertexes were snapped, but vertex positions did not affect line rendering (behavior effectively unchanged)
* Splines now adaptively subdivided to avoid certain edge-cases
Change 3973345 by Nick.Atamas
- Number tweaks to maintain previously perceived wire thickness in various editors.
Change 3977764 by Rex.Hill
MallocTBB no longer debug fills bytes in development configuration
Change 3978713 by Arciel.Rekman
UVS: Fix stale dependency.
Change 3980520 by Matt.Kuhlenschmidt
Fix typo
#jira UE-57059
Change 3980557 by Matt.Kuhlenschmidt
Fixed negative pie window sizes causing crashes
#jira UE-57100
Change 3980565 by Matt.Kuhlenschmidt
PR #4628: Fixed revert action, now correctly uses CanRevert() condition (Contributed by Kryofenix)
Change 3980568 by Matt.Kuhlenschmidt
PR #4626: UE-57111: Handle CaptureRegion for HighResShot in PIE (Contributed by projectgheist)
Change 3980580 by Matt.Kuhlenschmidt
PR #4567: [Editor UI] Pick Parent Class dialog: set keyboard focus and handle Escape & Enter (Contributed by SRombauts)
Change 3980581 by Matt.Kuhlenschmidt
PR #4565: [Editor UI] Add C++ Class dialog: set keyboard focus and handle Escape & Enter (Contributed by SRombauts)
Change 3981341 by Jamie.Dale
Re-added GIsEditor condition around package namespace access
#jira UE-55816
Change 3981808 by Ryan.Brucks
Added LandscapeProxy functions to push RenderTarget data to Heightmaps and Weightmaps
Change 3983344 by Jack.Porter
#include fixes for CL 3981808
#jira 0
Change 3983391 by Jack.Porter
One for #include fix for CL 3981808
#jira 0
Change 3983562 by Michael.Dupuis
#jira UE-53787: Make sure the material array is valid before trying to generate static mesh batch element
#jira UE-56451: Instead of asserting, simply skip this element as it had invalid custom data anyway, so we can't render it
Change 3983600 by Matt.Kuhlenschmidt
PR #4289: Pragma Once/Include guard cleanup (Contributed by projectgheist)
Change 3983637 by Matt.Kuhlenschmidt
PR #4408: Add a template pregeneration hook (Contributed by mhutch)
Change 3984392 by Michael.Dupuis
#jira UE-56314: Correctly apply LODBias on calculated LOD
Fixed some Landscape popping that could occur when we were forcing a LOD that didn't match the component screen size
Change 3984950 by Rex.Hill
Optimized texture import speed 2-3x depending on number of cpu cores and image size
Change 3985033 by Rex.Hill
File drag and drop is more quick to respond when editor is in background
#jira UE-57192
Change 3986218 by Jack.Porter
Missing template parameter fix for CL 3981808
#jira 0
Change 3986376 by Michael.Dupuis
#jira UE-56453: Do not use the CreateDynamicMaterialInstance as it will change the parenting of the actor used material, instead simply use the function to generate the MID and parent it correctly.
Change 3989391 by Matt.Kuhlenschmidt
Fix constant FName lookup in level editor when checking various states of level editor tabs
Change 3990182 by Rex.Hill
Optimize editor startup time: GetCurrentProjectModules
Change 3990365 by Alexis.Matte
Fix crash with spline mesh when the attach SM get a new imported LOD
#jira UE-57119
Change 3991151 by Rex.Hill
VR Editor module now waits to load images until VR mode activated in editor. Saves 0.4 seconds of editor startup time.
Change 3991164 by Rex.Hill
Optimize editor startup time: FindModulePaths()
- Invalidates cache when search paths added
- Use cache during wildcard searches containing * and ?
Change 3995366 by Anthony.Bills
Update BuildCrossToolchain script to allow a Linux host targeting multiple Linux architectures (including the hosts arch). Added a patch to support a gcc 4.8.5 based toolchain on windows (potentially useful for users crosscompiling using GCC and libstdc++ and targeting CentOS 7).
#review-3848487 @arciel.rekman, @brandon.schaefer
Change 3996109 by Jamie.Dale
Reworked BP error messages to be more localization friendly
#jira UETOOL-1356
Change 3996123 by Michael.Dupuis
#jira UE-57427: Update random color on load of the component
#jira UE-56272:
Change 3996279 by Merritt.Cely
Removed hardware survey from editor
#jira an-2243
#tests launched the editor
Change 3996626 by Alexis.Matte
Fix crash when SkeletalMesh tangent buffer is empty after the build and we serialize the tangent array.
#jira UE-57227
Change 3996663 by Max.Chen
Sequencer: Fix fbx animation export - rotation and scale channels were flipped.
#jira UE-57509
#jira UE-57512
#jira UE-57514
Change 4000331 by Brandon.Schaefer
Add a GFNameTableForDebuggerVisualizers_MT back only for Unix under the Core module
#review-3999426 @Arciel.Rekman
#jira UE-55298
Change 4000450 by Matt.Kuhlenschmidt
Another guard against a factory being destroyed during import
#jira UE-57674
Change 4000459 by Matt.Kuhlenschmidt
Added check for valid game viewport to see if this is the problem in UE-57677
#jira UE-57677
Change 4000493 by Matt.Kuhlenschmidt
Remove stale GC'd components when refreshing paint mode to prevent crashes
#jira UE-52618
Change 4000683 by Jamie.Dale
Fixed target being incorrect when added via the Localization Dashboard
#jira UE-57588
Change 4000738 by Alexis.Matte
Add a section settings to ignore the section when reducing
#jira UE-52580
Change 4000920 by Alexis.Matte
PR #4219: Fix for SColorGradingPicker preventing PIE (Contributed by projectgheist)
author projectgheist projectgheist@gmail.com
Change 4001432 by Alexis.Matte
Add a fbx re-import resolve material windows, user can now help resolving the material in case the importer fail to found a match.
Change 4001447 by Jamie.Dale
Fixed property table not working with multi-line editable text
Change 4001449 by Jamie.Dale
PR #4531: Localization multiline fix (Contributed by Lallapallooza)
Change 4001557 by Alexis.Matte
Fix a check in fbx scene importer, in case the user import a fbx LOD group with no geometry under it
#jira UE-57676
Change 4002539 by Alexis.Matte
Make the fbx importer global transform options persist in the config file
#jira UE-50897
Change 4002562 by Anthony.Bills
Linux: Enable UVS registering for git builds only and remove old Mono and pre-UVS script code.
Change 4003241 by Alexis.Matte
Fix the staticmesh import socket logic, it was duplicating socket when re-importing
#jira UE-53635
Change 4003368 by Michael.Dupuis
#jira UE-57276:
#jira UE-56239:
#jira UE-54547:
Make sure we can't go above MaxLOD even for texture streaming
Change 4003534 by Alexis.Matte
Fix re-import mesh name match
#jira UE-56485
Change 4005069 by Michael.Dupuis
#jira UE-57594: Add a guard to prevent crash if we have an invalid resource for the heightmap texture (happen when component is deleted, for example)
Change 4005468 by Lauren.Ridge
Widgets should not be removed from parent when they are pending GC
#jira UE-52260
Change 4006075 by Michael.Dupuis
Fixed foliage density scaling to be applied even in editor, except in Foliage edit mode.
Change 4006332 by Arciel.Rekman
UBT: Adding support for bundled toolchains on Linux.
- Authored by Anthony Bills, with modifications.
Change 4007528 by Matt.Kuhlenschmidt
PR #4665: Source control History Window: enlarge column Description (Contributed by SRombauts)
Change 4007531 by Matt.Kuhlenschmidt
PR #4656: UE-57200: Ignore reference to actor if same actor (Contributed by projectgheist)
Change 4007548 by Matt.Kuhlenschmidt
PR #4664: Set Password on EditableText (Contributed by projectgheist)
Change 4007730 by Brandon.Schaefer
Add a new way to symbolicate symbols for a crash at runtime
Two new tools are used for this.
1) dump_syms Will generate a symbol file, which is to large to read from at runtime
2) BreakpadSymbolEncoder Takes the dump_syms file and encodes it in such a way we can do
a binary search at runtime to find a Program Counter to a symbol we are looking for
#review @Arciel.Rekman, @Anthony.Bills
#jira UETOOL-1206
Change 4008429 by Lauren.Ridge
Fixing undo bug when deleting user widgets from the widget tree
#jira UE-56394
Change 4008581 by Cody.Albert
Reinitialize needs to set the audio and caption tracks in addition to the video track or the currently selected track will be lost
Change 4009605 by Lauren.Ridge
Added Recently Opened assets filter under Other Filters in the Content Browser
Change 4009797 by Anthony.Bills
Linux: Update MultiArchRoot path to not cache. Move in tree toolchain location to match UBT convention and make sure the MultiArchRoot is checked before the system.
Change 4010266 by Michael.Trepka
Copy of CL 4010052
Moved some key event handling calls to the main thread on Mac to satisfy new macOS requirements
#jira UE-54623
Change 4010838 by Arciel.Rekman
Linux: limit allowed clang versions to 3.8-6.0.
Change 4012160 by Matt.Kuhlenschmidt
Changed the messagiing on the crash reporter dialog to reflect new bug submission process
#jira UE-56475
Change 4013432 by Lauren.Ridge
Fix for non-assets attempting to add to the Content Browser's recent filter
#jira none
Change 4016353 by Cody.Albert
Improved copy/paste behavior for UMG editor:
-Pasting in the designer while a canvas is selected will place the new widget under the cursor
-Pasting multiple times while a canvas panel is selected in the hierarchy view will cascade the widgets starting at 0,0
-Pasting while something that isn't a panel is selected is now allowed, and will cascade the pasted widgets off the position of the selected widget (as siblings)
-Newly pasted widgets will now be selected automatically
-Pasting multiple widgets at once will try and maintain their relative positions if they're being pasted into a canvas panel
Change 4017274 by Matt.Kuhlenschmidt
Added some guards against invalid property handle access
#jira UE-58026
Change 4017295 by Matt.Kuhlenschmidt
Fix trying to apply delta to a mix of scene components and non scene components. Its acceptable to not have scene components in the selected component list
#jira UE-57980
Change 4022021 by Rex.Hill
Fix for audio desync and video fast-forwarding behavior.
There long delay (500ms+) until samples start arriving unless we use RequestedTimeCurrent.
After delay occurs samples begin arriving at accelerated speed until caught up to playback time leading to visual and audio problems.
#jira UE-54592
Change 4023608 by Brandon.Schaefer
Downscale memory if we dont have enough
#jira UE-58073
#review-4023609 @Arciel.Rekman
Change 4025618 by Michael.Dupuis
#jira UE-58036: Apply world position offset correctly
Change 4025661 by Michael.Dupuis
#jira UE-57681: Added guard to prevent possible crash if either we have an invalid material or the material parent is invalid
Change 4025675 by Michael.Dupuis
#jira UE-52919: if no actor was found in the level skip moving the instances
Change 4026336 by Brandon.Schaefer
Manually generate *.sym files for Physx3
This should be done in the BuildPhysx file
Change 4026627 by Rex.Hill
Fix memory leak fix when playing video and main thread blocks
#jira UE-57873
Change 4029635 by Yannick.Lange
Fix VRMode loading assets only when VRMode starts.
#jira UE-57797
Change 4030288 by Jamie.Dale
Null FreeType face on load error to prevent potential crashes
Change 4030782 by Rex.Hill
Fix save BuildData after changing reflection capture in a new level
#jira UE-57949
Change 4033560 by Michael.Dupuis
#jira UE-57710: Added some guard to prevent crash/assert
Change 4034244 by Michael.Trepka
Copy of CL 4034116
Fixed arrow keys handling on Mac
Change 4034708 by Lauren.Ridge
PR #4699: UE-8508: Update config file to keep folder color in sync (Contributed by projectgheist)
#jira UE-58251
Change 4034746 by Lauren.Ridge
PR #4701: Add option to close tabs to the right of the active tab (Contributed by jesseyeh)
#jira UE-58277
Change 4034873 by Lauren.Ridge
Fix for not being able to enter simulate more than once in a row.
#jira UE-58261
Change 4034922 by Lauren.Ridge
PR #4387: Commands mapped in incorrect location (Contributed by projectgheist)
#jira UE-53752
Change 4035484 by Lauren.Ridge
Tentative fix for crash on pasting comment. All other accesses to UMaterialExpressionComment check its validity first
#jira UE-57979
Change 4037111 by Brandon.Schaefer
Try to use absolute path from dladdr if we can to find the sym files
#jira UE-57858
#review-4013964 @Arciel.Rekman
Change 4037366 by Brandon.Schaefer
Dont check the command line before its inited
#review-4037183 @Arciel.Rekman
#jira UE-57947
Change 4037418 by Alexis.Matte
Remove the checkSlow when adding polygon
Change 4037745 by Brandon.Schaefer
Use as much info as we can during ensure
Just as fast as the old way but with more information
#review-4037495 @Arciel.Rekman
#jira UE-47770
Change 4037816 by Rex.Hill
Import mesh optimization, BuildVertexBuffer
Change 4037957 by Arciel.Rekman
UBT: make it easier to try XGE on Linux.
Change 4038401 by Lauren.Ridge
Reordering is now correctly handled by undo. Reordering and then undoing will no longer cause a "ghost" widget to also be part of the tree.
#jira UE-58206
Change 4039612 by Anthony.Bills
Unix: Check for null StdOut and ReturnCode parameters, otherwise the code may dereference a null variable when the process fails to create.
Change 4039754 by Alexis.Matte
Remove the Render meshdescription, no need to carry this temporary data in the staticmesh
Change 4039806 by Anthony.Bills
Linux: UVS fixes
- Update to use new Unix base platform.
- Use bin/bash instead of usr/bin/bash (may need revisiting later).
- Recompile Shipping version with changes.
- Update Setup.sh to run from correct CWD (due to current limitations in the relative directory handling).
Change 4039883 by Lauren.Ridge
PR #4576: Save editor config to file first time a fav folder is added in the co. (Contributed by projectgheist)
#jira UE-56249
Change 4040117 by Lauren.Ridge
Replacing widgets should now also clear out references to the widget
#jira UE-57045
Change 4040790 by Lauren.Ridge
Tentative fix for Project Launcher crash when platform info not found
#jira UE-58371
Change 4042136 by Arciel.Rekman
UBT: refactor of LinuxToolChain to make it leaner and more configurable.
- Made it possible to override SDK passed to the toolchain.
- Simplified the code by using the same executable names on Windows and Linux (as .exe is optional), except where File.Exists() is needed (also remove a few)
- Some minor renames to make it clear that SystemSDK means system compiler (which otherwise may be unclear)
- Made changes to accomodate the new debug format.
Change 4042930 by Brandon.Schaefer
GCoreObjectArrayForDebugVisualizers was changed to FChunkedFixedUObjectArray reflect that in the Unix part
Change 4043539 by Brandon.Schaefer
Fix callsite address being used at times for the Program Counter
Fix only reporting the actual callstack and not the crash handling callstacks
#review-4041370 @Arciel.Rekman
#jira UE-58477
Change 4043674 by Arciel.Rekman
Added Linux ARM64 (AArch64) lib for MikkTSpace.
- Now required for standalone games due to EditableMesh runtime plugin.
Change 4043677 by Arciel.Rekman
Linux: updated ARM64 (AArch64) version of SDL2.
Change 4043690 by Arciel.Rekman
Linux: allow compiling VulkanRHI for AArch64 (ARM64).
Change 4045467 by Brandon.Schaefer
Add Anthony Bills SetupToolchain.sh script
Used to download the latest toolchain
Change 4045940 by Michael.Trepka
Return empty list instead of null from Mac GetDebugInfoExtensions() in UBT
#jira UE-58470
Change 4046542 by Alexis.Matte
Fix skeletal re-import material assignation
#jira UE-58551
Change 4048262 by Brandon.Schaefer
Rebuild SDL with pulse audio libs
#jira UE-58577
Change 3887093 by Anthony.Bills
Add bundled mono binary for Linux.
- Unify some of the script structure across Mac and Linux.
- This currently uses the same mono C# assemblies as Mac to keep the additional source size down.
- If the Mac mono version is updated, the Linux version will also need to be updated to match the same mono git revision.
- The system version of mono can still be used by setting the UE_USE_SYSTEM_MONO env var to 1.
Change 4003226 by Michael.Dupuis
Refactored StaticMeshInstancing to now use a command buffer to communicate with the GPU to prevent concurent access issues. It's mostly used in Editor or if runtime changes occur, otherwise the data is built and send to the GPU directly without keeping CPU copy.
Changed how the density scaling was applied to be more optimal
Removed UseDynamicInstanceBuffer as the concept is now irrelevant
Change 3833097 by Jamie.Dale
Localization Pipeline Optimization
Manifest/Archives:
Added FLocKey to keep an immutable string and its hash. This is used in several places within manifests and archives to minimize string hashing. FLocTextHelper also now take these in its API.
This also fixes some places where manifests were being iterated by key rather than source string (as this was causing redundant work).
Portable Object:
Cleaned up a lot of redundant code, changed things to use FLocKey, and simplified a lot of string manipulation to use algorithms instead (which proved to be faster).
Asset Gathering:
Optimized the way garbage collection runs while gathering from assets so that we avoid purging assets that we still need to gather from (or are still active dependencies). This also sorts the assets so that we can try and evict dependencies from memory as soon as possible (in much the same way that the cooker does).
Automation:
The gather commandlet can now take multiple configs to process. This is used by automation to avoid starting the editor several times (which can save a significant amount of start-up overhead).
[CL 4052378 by Lauren Ridge in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3809757 by Jon.Nabozny
Fixup BuildPhysx to only set up HTML5 when needed.
Change 3812325 by Jake.Leonard
Fix keyed debug messages from getting scaled to 0 and thus not appearing at all. This appears to be a bug in main as well. Only -1 keyed messages (which are handled differently) will display anything at all as the scale application was removed.
#Jira UE-53579
Change 3828032 by Jon.Nabozny
Make sure the State is set before triggering delegates in FLwsWebSocket.
Change 3837391 by John.Barrett
NetcodeUnitTest updates for better CIS/automation support.
Change 3837392 by John.Barrett
Fixed performance issue with processing piped output for large numbers of unit tests, and fixed unit test windows overlapping - plus other bugfixes.
Change 3837397 by John.Barrett
Moved a unit test to the 'Obsolete' folder.
Change 3837476 by John.Barrett
Reduced unwanted OSS-null logspam.
Change 3844506 by Jake.Leonard
Implementing missing steam leaderboard implementations. Also streamlines and fixes the friends leaderboard too.
#Jira UE-53474,UE-53475,UE-53476
Change 3844803 by Jake.Leonard
Fixing the Steam Leaderboard to allow for overwrite instead of increment.
Please see Jira for recent comments
#Jira UE-24791
Change 3844829 by Jake.Leonard
Does the following:
* Add message on the screen while the presence test is running to let users know that the test is still running.
* Remove the FUniqueNetIDString dependencies in the test
* Fix the Steam Rich Presence from having to do an unnecessary cast
#Jira UE-53066,UE-54177
Change 3851997 by Jake.Leonard
Remove one of the double steam p2p dump prints. Now the socket subsystem is the only one that prints, which will cover more cases anyways and limits the potential of duplicate prints.
Also changes the dump interval to 10s from 3s.
#Jira: UE-53763
Change 3882307 by John.Barrett
Fixed packet flooding protection, and handling of packets with errors, so that they don't delay further packet processing.
When there's an error receiving a packet, make sure the wrong/previous-packets address isn't used for logging.
Change 3882311 by John.Barrett
Restricted socket recv code from CL 3026398/3209824 to TCP, as with UDP it prevented telling the difference between the socket having no data to receive, and receiving a 0-length UDP packet.
This is important for protecting against DoS attacks.
Change 3894785 by Jake.Leonard
Fix replays not ending properly when the user goes to end their PIE instance.
#Jira UE-54488
Change 3902627 by Jake.Leonard
Fix the demo time values being incorrect if our delta would push us to the end of the replay. Since we're done, we early out of the functions before we have a chance to update the DemoCurrentTime variable. This causes issues with UI elements as it looks like the replay is not over but it actually is.
#Jira UE-54483
Change 3902632 by Jake.Leonard
Fix voice issues on seamless travel for NullOSS
#Jira UE-54899
Change 3904775 by Jake.Leonard
Properly grab the correct world context (we were sometimes grabbing the editor instead, when we wanted the PIE world). These changes will allow us to reliably end the demos. Improves the fix in 3894785.
#Jira UE-54488
Change 3968022 by Ryan.Gerleve
PR #4538: Guarantee Return Value of 0 When GetPortNo() Fails (Contributed by XenonicDev)
Change 3994505 by Jake.Leonard
Fix some shootergame minor bugs:
1. If there's no map selector UI option, just search for all maps. This fixes the only seeing Sanctuary bug (first option in the maplist)
2. Always make the server push gametype (which is just TeamDeathmatch by default)
#Jira none
Change 3999511 by Jake.Leonard
FArchive serializer for FUniqueNetIdSteam
#Jira none
Change 4014550 by Jake.Leonard
Fix Steam Dedicated Server from linking steamclient dlls, which should not be necessary.
This fix introduces a new launch argument (-force_steamclient_link) that can be used to force the steamclient link anyways for licensees who might have required this under extreme circumstances.
#Jira UE-55183
Change 4017165 by Jake.Leonard
Modification of the leaderboard test interface to add more tests as well as arbitrary rank fetches.
Command is "online test leaderboards [optional arbitrary user id for lookup]"
#Jira UE-53533
Change 4017215 by Jake.Leonard
Fix MULTIHOME returning the incorrect ip address on Linux and Android
#Jira UE-57463
Change 4024116 by Ryan.Gerleve
Fix for the transform of spawned rollback actors in replays now that gc is not guaranteed to happen between the destroy and respawn
#jira none
#AUTOMERGE using branch FNMain->DevNetworking of change#3876761 by Brian.Bekich on 2018/02/07 11:06:24.
Change 4024119 by Ryan.Gerleve
Better fix for replay gc changes with rollback actors - rename pending kill copy out of the way first
#jira none
#AUTOMERGE using branch FNMain->DevNetworking of change#3877425 by Brian.Bekich on 2018/02/07 15:14:42.
Change 4024125 by Ryan.Gerleve
Allow replays to ignore rpcs while fast forwarding (demo.FastForwardIgnoreRPCs)
#jira FORT-67138
#AUTOMERGE using branch FNMain->DevNetworking of change#3877483 by Brian.Bekich on 2018/02/07 15:31:41.
Change 4024126 by Ryan.Gerleve
Save additional state of rollback actors in replays to be applied upon respawn (demo.SaveRollbackActorState)
Convert FRepState in object replicator to a shared pointer
#jira none
#AUTOMERGE using branch FNMain->DevNetworking of change#3877681 by Brian.Bekich on 2018/02/07 16:52:11.
Change 4024131 by Ryan.Gerleve
[+] Add -csvdemostarttime and -csvdemoendtime command line arguments to automate CSV profiles when running replays. Since these commands use the playback time of the replay, they are much more reliable than the loading screen method we used previously.
#jira none
#AUTOMERGE using branch FNMain->DevNetworking of change#3879630 by Luke.Thatcher on 2018/02/08 14:26:01.
Change 4024155 by Ryan.Gerleve
Fixed potential null access in DemoNetDriver
#jira none
#AUTOMERGE using branch FNMain->DevNetworking of change#3882753 by Jeff.Farris on 2018/02/09 16:46:43.
Change 4024158 by Ryan.Gerleve
Fixup issues with Demo Recording and Playback when using Streaming Levels.
#jira FORT-65185
#AUTOMERGE using branch FNMain->DevNetworking of change#3889448 by Jon.Nabozny on 2018/02/14 13:09:22.
Change 4024164 by Ryan.Gerleve
Create Burn In for DemoRecording / Replays
#jira NONE
#AUTOMERGE using branch FNMain->DevNetworking of change#3890879 by Jon.Nabozny on 2018/02/15 01:31:47.
Change 4024176 by Ryan.Gerleve
Added DemoNetDriver::IsSavingCheckpoint.
#jira none
#AUTOMERGE using branch FNMain->DevNetworking of change#3897504 by Jeff.Farris on 2018/02/19 12:55:37.
Change 4024178 by Ryan.Gerleve
Fix up edge cases in Replays where Actors were being destroyed inappropriately.
#jira None
#AUTOMERGE using branch FNMain->DevNetworking of change#3903472 by Jon.Nabozny on 2018/02/22 09:40:02.
Change 4024181 by Ryan.Gerleve
Support the notion of Rewindable Actors for replays. These are actors that shouldn't be destroyed during scrubbing.
#jira FORT-71396
#AUTOMERGE using branch FNMain->DevNetworking of change#3908062 by Jon.Nabozny on 2018/02/24 11:59:27.
Change 4024184 by Ryan.Gerleve
Add functions to DemoNetDriver to support testing for changes in replicated state.
Clean up RepLayout DiffProperties, support passing flags in, add a flag to include conditional properties.
#AUTOMERGE using branch FNMain->DevNetworking of change#3908132 by ryan.gerleve on 2018/02/24 16:25:20.
Change 4024194 by Ryan.Gerleve
Change a cvar to GetValueOnAnyThread
#AUTOMERGE using branch FNMain->DevNetworking of change#3910273 by ryan.gerleve on 2018/02/26 16:34:44.
Change 4024197 by Ryan.Gerleve
Replication Graph v1. This is the new system for dedicated server performance in BR. It is currently disabled by default. Other changes to engine should have no practical impact on existing behavior.
#jira nojira
Engine Changes Summary
-------------------------------------------
UNetConnection::>ActorChannels no longer public. This is to prevent code from adding/removing actor channels from underneath the ReplicationDriver.
UActorChannel::Close() returns int64 for num bits written. int64 is used because that is what FBitWriter uses.
UNetconnection::DestroyedStartupOrDormantActorGUIDs now private. Add/Remove/Reset methods are exposed. This is so RepDriver can intercept these calls (when present).
Added USimulatedClientNetConnection. Use net.SimulateConnections command to add them.
New UNetDriver::ForceNetUpdate function. Notifies replication driver that force net update was called.
UNetDriver::DestroyedStartupOrDormantActors now wraps the FActorDestructionInfo in TUniquePtr. This is so pointers to destruct infos are stable within the map and rep driver can keep track of them in its own list.
UNetDriver::GetFunctionRepLayout exposed as ENGINE_API for RepDriver use.
UNetDriver::ProcessRemoteFunction changes a bit.
-Forwards to RepDriver if present. The intention is to give RepDriver the chance to change routing logic and do its own traffic bookkeeping on the RPC.
-A new function, ProcessRemoteFunctionForChannel exists for the meat of the RPC call which RepDriver probably doesn't want to change and is free to call.
-Removed FRepLayout::SendPropertiesForRPC first UObject parameter because it was not used.
New function UNetDriver::NotifyActorDormancyChange for when actor dormancy changes.
New Functions UNetDriver::AddNetworkActor/RemoveNetworkActor. These forward to the rep driver if present.
-Really want to get rid of public access to GetNetworkObjectList() outside of net code. Doesn't seem easy without breaking backcompat.
New Function UNetDriver::NotifyActorTearOff for when tear off happens.
-bTearOff is public though. RepGraph requires the explicit TearOff() call to notify the system about tear off actors. I'm not sure how to fix this with deprecation warnings. (Keep variable public but warn if accessed)
New UNetDriver::RemoveClientConnection function should be the only place that removes ClientConnections. Forwards to RepDriver.
-Again, would like to make ClientConnections private but it is used all over the place. (Thankfully only one place removes from it).
New UNetDriver::NotifyActorFullyDormantForConnection. So RepGraph can intercept and do its book keeping.
Made UNetDriver::IsLevelInitializedForActor public.
Made UNetDriver::FlushActorDormancyInternal to hold common code that happens when Dormancy is flushed or changes.
FNetworkObjectList::FindOrAdd has optional bool parameter for if actor info was actually added.
UWorld has new delegates for when all starting actors are initialized and registered with networking.
-TODO: NavSystem and AI system should make use of this. The currently has direct function calls into them.
Moved checks for bPendingDormancy/Dormant into UActorChannel::StartBecomingDormant rather than at the callsite(s).
Added GReplicationGatherPriortizeTimeSeconds, GServerReplicateActorTimeSeconds, GReplicateActorTimeSeconds, GNumReplicateActorCalls. These are for new Replication CSV stat group (disabled by default).
FObjectReplicator::QueueRemoteFunctionBunch drops MustBeMappedGUIDs if it suppresses the RPC call. This fixes a bug that exists in both systems.
UWorld::SpawnActor now adds network actor after PostSpawnInitialize rather than prior. This is so the initial location of the actor can be used.
-Deferred actor spawning can still make this not the case, but without this change there is no chance of the actor location being correct.
-In this case, I care about this for FN building actors who do not use deferred spawning.
Added STAT_NetServerGatherPrioritizeRepActorsTime which is the total Server Rep Actor time minus the time spent in ReplicateActor.
-Removed STAT_NumRelevantActors because it made no sense (set to whatever connection repped last).
-STAT_NumReplicatedActors now sum of replicated actors on all connections for the frame.
-STAT_NumReplicatedActorBytes now sum of replicated property bytes on all connections per frame. Does not track package map guid bytes.
-FRepLayout BuildSharedSerializationForRPC/ClearSharedSerializationForRPC exposed as ENGINE_API for RepGraph to use.
Non Networking Engine Changes:
Added optional RenderColor parameter to K2_DrawBox.
ULevel::HasVisibilityChangeRequestPending and ULevel::IsNetActor exposed as ENGINE_API so ReplicationGraph module can call it.
Added AHUD::OnHUDPostRender callback for easier debug huds that don't revolve around players or debug actor targets.
#AUTOMERGE using branch FNMain->DevNetworking of change#3914530 by david.ratti on 2018/02/28 10:53:10.
Change 4024210 by Ryan.Gerleve
DemoNetDriver properly unreadies level status in OnLevelRemovedFromWorld.
#jira none
#AUTOMERGE using branch FNMain->DevNetworking of change#3919218 by ryan.gerleve on 2018/03/01 18:50:11.
Change 4024213 by Ryan.Gerleve
UDemoNetDriver now properly associates actor channel close bunches with the actor's level. Fixes ensures & asserts that were occurring during replay playback due to trying to handle these channel closes while the level was streamed out.
Moved the check for IsRecording in the ConditionallyCreatePacketManager functions to an if, since the check can now be triggered while the demo net driver is shutting down.
#jira FORT-71916
#AUTOMERGE using branch FNMain->DevNetworking of change#3919321 by ryan.gerleve on 2018/03/01 19:26:43.
Change 4024217 by Ryan.Gerleve
Fix for placed actors not respawning in some cases when scrubbing in a replay: don't add startup actors that are destroyed due to level streaming out to a replay checkpoint's destroyed actor list. Added some verbose (off by default) logging to help detect these cases.
#jira FORT-73939
#AUTOMERGE using branch FNMain->DevNetworking of change#3923164 by ryan.gerleve on 2018/03/03 11:19:37.
Change 4024310 by Ryan.Gerleve
Replication Graph:
* Fix issue with dormancy node not fully reseting when spatialization grid is rebuilt
* Improved some logging when failures do happen
* Added Net.RepGraph.Spatial.BiasCreep cvar to force spatial rebuild every frame
* Added blacklist of classes that can never cause a spatial rebuild.
* Fixed issue with dynamic actors changing cull distances dynamically.
* Removed unused rep graph node.
#jira none
#AUTOMERGE using branch FNMain->DevNetworking of change#3931497 by david.ratti on 2018/03/07 11:58:14.
Change 4024316 by Ryan.Gerleve
Replication Graph
-Fix issue where dependant actor channels could stay open
-Fix global actor channel timeout property to actually be used
#jira none
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3933936 by david.ratti on 2018/03/08 08:22:35.
Change 4024365 by Ryan.Gerleve
Added some debug functions: Net.RepGraph.PrintAllActorInfo, FortRepGraph.PrintRouting
Minor cleanup, additional comments
#jira none
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3936644 by David.Ratti on 2018/03/09 11:13:37.
Change 4024369 by Ryan.Gerleve
Fix repgraph crash with certain spawned actors
#jira none
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3937302 by David.Ratti on 2018/03/09 15:03:02.
Change 4024382 by Ryan.Gerleve
Initial work for high priority RPCs. This will allow damage RPCs to be sent immediately at the top of a frame rather than at the end. Currently disabled while testing.
#jira none
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3944887 by David.Ratti on 2018/03/14 10:01:35.
Change 4024384 by Ryan.Gerleve
#UE4 Explicitly discarding the ReplicationDriver in UNetDriver::Shutdown. Fixes a crash when shutting down a net driver when the replication graph object is listening to delegates.
#jira nojira
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3946884 by Bob.Tellez on 2018/03/14 22:03:36.
Change 4024391 by Ryan.Gerleve
GameplayDebugger support for ReplicationGraph. AGameplayDebuggerCategoryReplicator will start replicating once a replication owner is set on it.
#jira none
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3949584 by David.Ratti on 2018/03/16 08:36:01.
Change 4024394 by Ryan.Gerleve
Fix crash in rep graph when spatialization gets rebuilt while dormancy actors were in a particular state.
Dormancy nodes still had delegates registered for their contained actors. Though they dumped the list of actors, they would still get notification when the actors' dormancy changed which would cause them to readd the actors some times. If these nodes overlapped between rebuilds, actors could get readded to the same node twice which ultimately leads to them not being fully removed when they do get destroyed, and garbage AActor* trying to replicate. Net.RepGraph.Verify can catch these problems.
To fix, we are going to MarkPendingKill the GridCell nodes rather than keeping them around and just reseting their actor lists. They will get recreated as needed.
They could have also manually unregistered each of their delegates but this is more complicated and probably performs worse overall (though spatial rebuild is rare/should never really happen in a real game). Just marking the uobject pending kill will suppress the delegate callbacks to the nodes.
#jira FORT-76555
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3952558 by David.Ratti on 2018/03/19 09:19:09.
Change 4024395 by Ryan.Gerleve
RepGraph was not "undormatizing" actors when streaming levels were reloaded like legacy was.
#jira FORT-76729
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3959632 by david.ratti on 2018/03/22 12:51:19.
Change 4024398 by Ryan.Gerleve
Fix for dormant actors not opening actor channel for multicast rpcs in some cases. Use the global cull distance rather than the per-connection which is cleaered for dormancy trickle.
#jira FORT-76101
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3960888 by david.ratti on 2018/03/22 19:23:00.
Change 4024402 by Ryan.Gerleve
Fix dormant actors being instant destroyed not playing their death gameplay cue
#jira FORT-76101
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3965842 by david.ratti on 2018/03/26 17:23:31.
Change 4024403 by Ryan.Gerleve
More robust fix for rep graph having multiple channels for the same actor open simulataneously. Guarded behind CVar_RepGraph_FixDuplicateChannels.
Add a replication driver hook for UActorChannel::CleanUp.
Don't replicate actors or RPCs if the channel is closing.
Don't clear the channel pointer on FConnectionReplicationActorInfo as soon as the channel closes, but wait until it's cleaned up to either clear the channel if the actor's dormant or remove the actor info from the map completely otherwise.
Fixed missing include in ReplicationGraphDebugging.
#jira FORT-77769
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3975732 by ryan.gerleve on 2018/03/30 16:03:25.
Change 4024415 by Ryan.Gerleve
Fix potential actor channel churning by making sure the close frame num is never lowered. This could happen for short-lived dependant actors.
Removed CVar_RepGraph_FixDuplicateChannels: we definitely need this behavior to always be on.
#jira FORT-79292
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3980479 by david.ratti on 2018/04/03 08:25:53.
Change 4024419 by Ryan.Gerleve
Enable Net.RepGraph.EnableRPCSendPolicy by default. This makes damage/weapon firing RPCs be flushed immediately rather than at the end of the frame, resulting in less latency between clients while shooting.
#jira none
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3981390 by david.ratti on 2018/04/03 13:24:34.
Change 4024423 by Ryan.Gerleve
enable Replication csv category by default (when CSV profiling is enabled) on server builds
#jira none
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3981553 by david.ratti on 2018/04/03 14:04:38.
Change 4024424 by Ryan.Gerleve
Replication Graph. These are mostly for engine related purposes/cleanup.
-Don't remove TornOff actors from rep graph when they are destroyed. They are removed when they are torn off already. Fixes benign log warnings.
-When an actor causes spatialization rebuild, set the bias such that the actor is in the middle of new cell. This mitigates the issue where spatialization would be rebuilt every frame once an actor moves "away from the grid".
-When rebuilding spatilization, force garbage collection after tearing down old nodes. This is to mitigate OOMs. You are already going to hitch because of the rebuild anyways.
-Removed some dead/debug code that isnt needed.
#jira none
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3984296 by David.Ratti on 2018/04/04 12:52:54.
Change 4024427 by Ryan.Gerleve
Allow setting thresholds for actor replication frequency buckets to help balance them out if too many actors end up in one bucket.
#jira none
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3990318 by david.ratti on 2018/04/06 14:47:58.
Change 4024475 by Ryan.Gerleve
Const-corrected a few parameters
#jira none
#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3904240 by Ryan.Gerleve on 2018/02/22 15:18:50.
Change 4030975 by Jake.Leonard
Fixing Linux configs to move the proper configs into the right files.
#Jira none
Change 4031710 by Jake.Leonard
Implementation #3 of Steam Auth:
Features:
----------------
* Most of stuff from Implementation #2
* Blocks users from progressing unless they pass valid keys to the auth system
* Overrides for licensees to change the behavior
* Requires little to no configs
* Has no P2P mesh support
#Jira UE-10686, UE-50441, UE-50444
Change 4034520 by David.Ratti
Spot edit rep graph fixes from FN
-Fix issue where actor channel is created to queue an unreliable rpc, but then times out before actor is returned from rep graph pull. (update time out frame when queueing the rpc)
-Fix issue where we weren't properly handling DORM_Never when trying to detect dormancy changes.
Change 4037513 by Jon.Nabozny
Fixup some misused clamps reported by users.
Change 4042569 by Brian.Bekich
Add sample repgraph implementation to ShooterGame
#jira UENET-879
Change 4046889 by Brian.Bekich
- Rep graph and nodes now share the graph globals
- Fix rep graph world not being updated when using seamless travel
- Set ShooterSpectatorPawn to not replicate by default to fix rep graph spam
- Move ShooterPickup actors to the static spatialized list
#jira UE-58540
Change 4048648 by Ryan.Gerleve
Change replication driver warning to log.
#jira UE-58578
Change 4048939 by Brian.Bekich
Adding null check for game viewport client to OnPreLoadMap
#jira UE-58579
[CL 4051554 by Ryan Gerleve in Main branch]