27 Commits

Author SHA1 Message Date
ben marsh
2b46ba7b94 Update copyright notices to 2019.
#rb none
#lockdown Nick.Penwarden

#ROBOMERGE-OWNER: ryan.gerleve
#ROBOMERGE-AUTHOR: ben.marsh
#ROBOMERGE-SOURCE: CL 4662404 in //UE4/Main/...
#ROBOMERGE-BOT: ENGINE (Main -> Dev-Networking)

[CL 4662413 by ben marsh in Dev-Networking branch]
2018-12-14 13:44:01 -05:00
ryan gerleve
289a4fa159 Copying //UE4/Fortnite-Staging to Dev-Main (//UE4/Dev-Main)
#rb none
#lockdown Nick.Penwarden

#ROBOMERGE-OWNER: ryan.gerleve
#ROBOMERGE-AUTHOR: ben.marsh
#ROBOMERGE-SOURCE: CL 4567513 in //UE4/Main/...
#ROBOMERGE-BOT: ENGINE (Main -> Dev-Networking)

[CL 4573136 by ryan gerleve in Dev-Networking branch]
2018-11-16 14:01:06 -05:00
Peter Engstrom
6ccdf3f214 Added tests for FBitReader and FBitWriter SerializeIntPacked implementations.
#rb ryan.gerleve

[CL 4427466 by Peter Engstrom in Dev-Networking branch]
2018-10-04 10:45:48 -04:00
Peter Engstrom
661cf1050f All tests run in NetBitsTest will now pass. Tests that will fail if run have been ifdefed out.
#rb ryan.gerleve

[CL 4320118 by Peter Engstrom in Dev-Networking branch]
2018-08-27 16:01:06 -04:00
John Barrett
735656c513 Updated NetcodeUnitTest modules to support Hot Reload.
#rb none

[CL 4134304 by John Barrett in Dev-Networking branch]
2018-06-15 20:30:14 -04:00
Lauren Ridge
b46b1ce9ed Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 4048875)
#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]
2018-05-04 14:14:10 -04:00
Ryan Gerleve
545b303834 Copying //UE4/Dev-Networking to //UE4/Dev-Main (Source: //UE4/Dev-Networking @ 4051526)
#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]
2018-05-04 10:11:42 -04:00
Ben Marsh
13d012685f Merging copyright update from 4.19 branch.
#rb none
#rnx
#jira

[CL 3818977 by Ben Marsh in Staging-4.19 branch]
2018-01-02 15:30:26 -05:00
Bart Hawthorne
d60243e455 Copying //UE4/Dev-Networking to //UE4/Dev-Main (Source: //UE4/Dev-Networking @ 3802510)
#lockdown Nick.Penwarden
#rb none

============================
  MAJOR FEATURES & CHANGES
============================

Change 3596568 by Ryan.Gerleve

	Restore changelist 3594583

Change 3613386 by John.Barrett

	When a NetConnecton rejects a channel, stop processing further bunches from the same ChIndex, within the same packet.

	Fixes an edge case triggered by NetcodeUnitTest.

Change 3613422 by John.Barrett

	Added net.ForceNetFlush CVar, to force flushing of bunches as soon as they are comitted to the NetConnection buffer.

	Helps give more useful stack traces, when tracing packet sends - but should be considered potentially unstable.

Change 3617584 by John.Barrett

	Error/warning log tweak, to help with NetcodeUnitTest automation support.

Change 3630704 by Jon.Nabozny

	Fix issue where CurrentWorld is null after CancelTravel is called from StartTravel.

Change 3633371 by Ryan.Gerleve

	Merged, from Mike.Fricker: send a single RPC for updating level visibility and loaded status when possible
	- This is an optimization to avoid RPC spam when there are a large number of players connected
	- We now send a single RPC for each local player upon connection or match start to tell the server which levels are visible
	- We now send a single RPC from the server to each connected client to tell them which levels they should have loaded
	- There are still some cases where we don't batch the RPCs, such as when levels are loaded on the fly in the client.

Change 3639159 by Jon.Nabozny

	Fixup code assuming Actor outers were ULevels.

Change 3640190 by Jake.Leonard

	First pass Play in Editor replays. Should be backwards compatible with existing replays.

	#Jira UENET-659

Change 3643356 by Jake.Leonard

	Do not error out if we have a valid pending net game. Current code was erroring and then would attempt to browse again, even though our travel is correct.

	#Jira UE-49672

Change 3648785 by Jake.Leonard

	Add explicit nullcheck

	#Jira UE-49928

Change 3649319 by Jake.Leonard

	Fix the double achievement, save and leaderboard write in shooter game if you are a listen server.

	All of these functions require a localplayer, which is not true in any case but a listen server.

	An RPC that fires off to everyone will end up pushing these stats anyways (since clients write their own stats unless we have server authentication which I don't think UE4 doesn't supports anyways)

	#Jira UE-14327

Change 3659736 by Jake.Leonard

	Fix steam voice not working after a seemless travel.

	#Jira UE-44432

Change 3660990 by John.Barrett

	Major NetcodeUnitTest refactor, providing infrastructure for Fortnite MCP support.

	Full changes:
	- Added UnitTask class, for performing complex game/environment specific setup for UnitTest's, at different stages of execution. Multiple UnitTask's can be assigned to a UnitTest, but they will execute sequentially, and will block UnitTest progression until complete.

	- Added FUnitLogInterface, as a generic interface for UNIT_LOG logging, and optionally redirecting logs back to the parent UnitTest for MinimalClient's and UnitTask's - refactored all log related code to be based on this class

	- Refactored more ClientUnitTest code into MinimalClient, to reduce co-dependence, and to allow MinimalClient use by UnitTask's - and planned future refactors.

	- Added improved tracking/interface, for identifying log events belonging to a particular unit test

	- Added ability to specify join URL options, for MinimalClient

	- Fixed MinimalClient connections, that were broken by changes to the base control channel messages

	- Corrected some relevant logs not getting hooked by the UnitTest log window

	- Suppress PackageMap warning/error logs, caused by NetcodeUnitTest hooks, that were triggering automation failures

Change 3660996 by John.Barrett

	Added full search highlighting, plus search error tips, to the NetcodeUnitTest log windows.

	Full changes:
	- Added search highlighting, with checkbox for enabling/disabling highlighting
	- Added 'tooltip' notifying when a search failed, and when a search wraps/restarts from the top/bottom
	- Focus the search edit box, when the search tab is opened

Change 3660997 by John.Barrett

	Added support for reflection with USoftObjectProperty, plus other reflection tweaks.

	Full changes:
	- Now support reflection with USoftObjectProperty, with cast to FSoftObjectPtr, and can assign soft object properties using strings
	- Added support for UStruct-casting with compile-time checks, using GetStructRef (NOTE: Alters the state of the reflection object)
	- Adjusted FFuncReflection, to allow modification (rather than just reading) of UFunction parameters
	- Added casting of UEnum values to/from strings, and verified proper enum support
	- Fixed conversion of UFunction parameter values to strings, due to transient variables not getting exported
	- Tightened const-correctness in the internal code

Change 3660999 by John.Barrett

	Added simple 'Process Log Watches', to allow use of quick inline delegates/lambda's, to monitor the log output of any process run by a unit test.

Change 3661001 by John.Barrett

	Added '-DumpRPCs' commandline parameter in NetcodeUnitTest, which will dump all received RPC calls (plus full parameters) to the log.

	Has a bug (feature) where it will also dump all sent RPC's as well - distinguish based on Server/Client prefix.

	Other changes:
	- Adjusted FProcessEventHook to support global/process-wide hooks for UE4 VM events (particularly RPC's)

Change 3661003 by John.Barrett

	Added 'FScopedLogSuppress' to NetcodeUnitTest, for suppressing logs within a certain scope - and fixed a bug with the LogTrace command spamming the log.

Change 3661007 by John.Barrett

	Minor NetcodeUnitTest tweaks/fixes.

Change 3661338 by John.Barrett

	Fixed Linux compile warning.

Change 3663237 by John.Barrett

	Attempted static analysis fixes.

Change 3664787 by John.Barrett

	Reduced logspam from scoped logging - and more attempted static analysis fixes.

Change 3674073 by John.Barrett

	Another static analysis fix.

Change 3677370 by John.Barrett

	Static analysis fixes...

Change 3678820 by John.Barrett

	Added '-NetDriverOverrides' commandline parameter, to allow overriding of multiple named net driver definitions, without modifying the config file. See code for documentation.

Change 3679833 by John.Barrett

	Added comment to clarify ambiguous code.

Change 3683251 by John.Barrett

	Improved 'wrong network actors list' error log.

Change 3683252 by John.Barrett

	Added CVars to Steam online subsystem: "OSS.SteamInitServerOnClient" for disabling server API init on clients (to allow running Steam server + client on same computer), and "OSS.SteamUnitTest" to force-enable Steam for unit testing.

Change 3683253 by John.Barrett

	Updated NetcodeUnitTest to work with arbitrary net drivers, plus minor refactoring/fixes.

Change 3683254 by John.Barrett

	Added unit tests for testing basic net driver functionality, for the IP, HTML5 and Steam net drivers.

Change 3683599 by John.Barrett

	Fixed missing includes.

Change 3705189 by Ryan.Gerleve

	Changing filetype in attempt to fix a merge issue

Change 3705219 by Ryan.Gerleve

	Just delete the file, it's not needed anyway.

Change 3719300 by John.Barrett

	Restricted NUTActor spawning on servers, to only happen as part of unit tests.

Change 3719305 by John.Barrett

	Made NetcodeUnitTest plugins Developer-only, and enabled them all by default, for automation tests.

Change 3719943 by Jake.Leonard

	Test harness for Online Presence Interface.

	This does require the testing user to have friends and be connected to the platform.
	Usage is "online test presence [OPTIONAL ID]". The id passed should be an arbitrary non-friend. If no id is passed, the arbitrary lookup test is skipped.

	This test does wait for presence updates for about two minutes, after this time if no updates are recieved, the harness will mark the test as a failure.

	#Jira UE-41232

Change 3720402 by Jake.Leonard

	Steam Rich Presence

	* Adds a new Steam Presence interface
	* Auto-updates presence/status information
	* Fixes up some of the rich presence issues in addition to pushing advertisements of users joining game servers reliably (which should also bandaid UE-10686 until secure sessions are implemented, I was not able to fully test this).

	#Jira UE-41232

Change 3720467 by Jake.Leonard

	Fixing warnings with test interface.

Change 3720533 by Jake.Leonard

	Fix ordering warnings

Change 3723717 by Brian.Bekich

	change package flag check to account for objects being PIE packages

	#jira UE-51513, UE-51601

Change 3723982 by Ryan.Gerleve

	PR #4098: Delete ensure for not found nefield during replay (Contributed by ymartel06)


Change 3724030 by John.Barrett

	Minor NetcodeUnitTest refactor - implemented a tweaked version of GitHub pull #4097 (by GeorgeR).
	Have left out server parms change, as intentionally don't use full project path.


Change 3724047 by Ryan.Gerleve

	PR #4096: Fix ENetDormancy enum states to be exposed properly and fix typo in DORN_MAX (Contributed by konflictue)

	Updated from original PR to fix spelling and add enum redirect for DORN_MAX.


Change 3724845 by John.Barrett

	#PR 4097: Specify full project path for client/server executable (contributed by GeorgeR).


Change 3725519 by Brian.Bekich

	Adding local file replay from single file, supports playback/recording and live playback, compression, and recording/updating of events
	#jira UENET-847

Change 3726561 by Jake.Leonard

	Limit demos to a single active playback in editor.

	Also prevent errors from causing crashes in shootergame because it forces global world destruction.

	#Jira UE-51582

Change 3728494 by Brian.Bekich

	Fix for pvs studio

Change 3730150 by Brian.Bekich

	Handle replication of startup actors that get renamed
	#jira UE-51387
	#jira UE-46951

Change 3730230 by Brian.Bekich

	- Prevent warnings from Start/EndSession when no session exists in ShooterGame
	- Changed warnings to logs in connection status events
	- Disable "Paused" presence key in ShooterGame, it is trivial to spam it in offline games and hit rate limit errors on console

	#jira UE-51252

Change 3734054 by John.Barrett

	Added support for partial packets to NetcodeUnitTest, to support unusually large connect URL's used by Fortnite.

	Fixed a bug where the full connect URL was not passed to NMT_Login.

	Added FScopedNetNameReplace class, for replacing FName's serialized during replication.

Change 3734056 by John.Barrett

	Adjusted -DumpRPCs commandline parameter, to allow filtering for specific RPC's (with partial string matches), in the format:
	-DumpRPCs="RPC1,RPC2"

Change 3734180 by Brian.Bekich

	Fix for single process PIE dedicated server ticking objects it should not

	#jira UE-15947

Change 3744491 by John.Barrett

	Fixed FName crash/exploit while accessing invalid hardcoded names.

	#JIRA UENET-787

Change 3750058 by Ryan.Gerleve

	Disable net.UseAdaptiveNetUpdateFrequency by default. This causes too many regressions for users who are not using ForceNetUpdate() aggressively.

	#jira UE-45681

Change 3750650 by John.Barrett

	Added "-MaxAlloc=x" commandline parameter, for limiting the maximum size of any single memory (re)allocation, for debugging.

Change 3750651 by John.Barrett

	Adjusted ClientUnitTest to allow overriding of the MinimalClient class.

	Fixed AssertDisable command.

Change 3751738 by John.Barrett

	Fixed missed non-shipping check.

Change 3752561 by John.Barrett

	Made NMT_Login serialize RequestURL as a string again, instead of a TArray - as the latter had no checks for strings with invalid data, which allowed reading past the end of the raw array data.

	Also increased the maximum string serialize size, while processing NMT_Login, to allow Fortnite's enormous join URL's - this removes the need to use TArray for the join URL.

	#JIRA UENET-850

Change 3752562 by John.Barrett

	Made the MinimalClient use a string for the NMT_Login URL again.

Change 3758533 by John.Barrett

	Moved NetcodeUnitTest CIS/Automation commandline to file - to help with future tweaks.

Change 3758901 by Brian.Bekich

	Modify FSimpleAbstractSocket_FSocket::Send to handle partial sends

	#jira UE-52393

Change 3761445 by Brian.Bekich

	Fix for temporary scopelocks in steam user cloud interface

Change 3761503 by John.Barrett

	Adjusted serialization of TArray's to FArchive's, to properly handle serialization of invalid/negative ArrayNum values, and to limit maximum serialization for archives used by the netcode.

	#JIRA UENET-850

Change 3764345 by Ryan.Gerleve

	PR #4225: Allow dedicated servers to use voice subsystem override (Contributed by sswires)


Change 3772444 by John.Barrett

	Adjusted control channel message defines, to require checking that received parameters were serialized successfully, before executing the message.

Change 3772445 by John.Barrett

	Updated control channel messages, to check that parameters were serialized properly.

Change 3773647 by John.Barrett

	Fixed a crash/exploit with the lobby ServerKickPlayer function.

	#JIRA UENET-732

Change 3775618 by John.Barrett

	Made array serialization security fix, more limited in scope, to fix issue with ArrayNum serialization.

Change 3788035 by Jake.Leonard

	Fix the test presence harness crashing because the subsystem doesn't have a presence interface hooked up. Also prevent crashes due to already being in a session when the command runs.

	#Jira UE-52806, UE-52810

Change 3790676 by Jake.Leonard

	Add a world destruction watch to make sure that nothing crashes during the presence test incorrectly due to dangling deleted pointers.

	#Jira UE-52961

Change 3792485 by Ryan.Gerleve

	Fix merge issues

Change 3793285 by Jake.Leonard

	Check to see if the perf counter module is loaded before trying to write stats. This causes perfcounters module to not be loaded during garbage collection.

	See comments in JIRA ticket.

	#Jira UE-51619

Change 3793402 by Jake.Leonard

	Fix the timer that did not clean up properly in a very specific case, thus causing the timer to fire after a test has completed. This now will end the timers correctly.

	#Jira UE-52961

Change 3793517 by Jake.Leonard

	Fix randrange going out of bounds during a presence test.

	#Jira UE-52961

Change 3793563 by Jake.Leonard

	Fix yet another crash in the presence test where the world is null while spamming the test command several times in rapid succession.

	#Jira UE-52961

Change 3797866 by Bart.Hawthorne

	Remove check that would get hit if the player tries to server travel to a world that has the same name as a uasset. Instead, log the failure. The player can then travel using the full path of the umap.

	#jira UE-51605

Change 3801245 by Bart.Hawthorne

	Fix oodle2.h include directive

[CL 3802705 by Bart Hawthorne in Main branch]
2017-12-11 18:59:06 -05:00
Andrew Grant
ca24b4e26d Copying Orion-Staging @ 3748653 (Orion/Dev-General @ 3722124) to //UE4/Main
#lockdown Nick.Penwarden
#rb none


Change 3720210 on 2017/10/25 by Olaf.Piesche

	Fixing dynamic material params for ribbons

	#!codereview scott.kennedy
	#!rb none
	#!tests scott's test ribbon

Change 3720073 on 2017/10/25 by robomerge

	#!ROBOMERGE-AUTHOR: frank.fella
	Niagara - Fix a crash where a UNiagaraSystem has been GCed at runtime and there is still a system simulation ticking for it.

	#!Tests Minion automated tests no longer crash randomly.
	#!rb SimonT

	#!ROBOMERGE-SOURCE: CL 3719901 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3719233 on 2017/10/25 by robomerge

	#!ROBOMERGE-AUTHOR: philip.buuck
	[OR-45889] Ability fail widget will no longer fire if you are dead and have a passive (which is failing to activate while you are dead).

	#!rb Matt.Schembari
	#!tests PIE

	[QAREVIEW] Ensure the ability fail widget and its attached sounds do not trigger on death

	#!ROBOMERGE-SOURCE: CL 3719016 in //Orion/Release-44/... via CL 3719072 via CL 3719091
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3718474 on 2017/10/25 by Yannick.Lange

	Niagara: Only show isolate menu items on track context menu if it is a system.
	Rename "Isolate toggle" to "Isolated".
	#!rb none
	#!codereview Shaun.Kime
	#!tests n/a

Change 3718095 on 2017/10/25 by Yannick.Lange

	Niagara: Fix crash when not having dynamic parameter in material.
	#!rb none
	#!codereview Shaun.Kime
	#!tests n/a

Change 3718069 on 2017/10/25 by Yannick.Lange

	Niagara: Remove material member from material parameter node and add helper function for getting material dynamic parameter expression.
	#!rb none
	#!codereview Shaun.Kime
	#!tests n/a

Change 3717545 on 2017/10/24 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Removed read / write locks from PipelineStateCache.

	#!rb Andrew.Grant, Gil.Gribb
	#!test paragon ps4.

	#!ROBOMERGE-SOURCE: CL 3716445 in //Orion/Release-44/... via CL 3716701
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3716928 on 2017/10/24 by Shaun.Kime

	The cooked dusk minions on PS4 don't have an index buffer, previously causing us to crash. We now fail to initialize the skeletal mesh data interface if this happens. This change also reworks  the skeletal mesh data interface to be more like what Simon is already working on, getting rid of some places where we were skinning. Additionally, I have disabled the parallel pretick and posttick logic.Many more checks have been added to try and detect bad situations at runtime.

	#!rb olaf.piesche, simon.tovey
	#!fyi olaf.piesche, simon.tovey, frank.fella
	#!tests am now able to run Test_minionWave on PS4

Change 3715712 on 2017/10/24 by Yannick.Lange

	Niagara: Set display name of if node to "If" instead of "NiagaraNodeIf".
	#!rb none
	#!codereview Shaun.Kime
	#!tests n/a

Change 3715430 on 2017/10/23 by Shaun.Kime

	Rather than make a unique decision each time we bind a VM function about whether or not we need previous positions, we initialize the decision with the results of last time. The value defaults to false in the constructor, so we're still behaving as we did before, but this time asking for UV info last won't initialize the data to no longer want the previous position even though we later ask for it.

	#!rb none
	#!fyi simon.tovey
	#!tests from Tim Elek - testMinion map get minions spawned then run down the lane and "setteamnum 1" crashes everytime

Change 3715368 on 2017/10/23 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Merging 3714121 from //Orion/Release-44 to Main (//Orion/Main)
	#!tests #!rb none

	#!ROBOMERGE-SOURCE: CL 3715255 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3715226 on 2017/10/23 by Shaun.Kime

	Getting rid of an ensure for Nan's and switching to a log warning. This keeps it from polluting long term runs in the debugger. It seems like at least one of the Niagara systems on minions generates Nan's.

	#!rb none
	#!fyi simon.tovey, olaf.piesche, frank.fella
	#!tests ran in PIE

Change 3714645 on 2017/10/23 by Yannick.Lange

	Niagara: Add ability to create particle system from this emitter in content browser.
	#!rb Shaun.Kime
	#!tests n/a

Change 3714200 on 2017/10/23 by Olaf.Piesche

	Niagara: Fixing rendering of GPU simulated emitters; store SRV instead of data buffers, so we can point the VF at the correct buffer based on sim target

	#!codereview simon
	#!rb none
	#!tests Orion Niagara assets

Change 3713341 on 2017/10/23 by Yannick.Lange

	Niagara: Fix NiagaraNodeIF output pins cannot be deleted.
	Fix NiagaraNodeIF output pins cannot be renamed.
	#!jira UE-50193
	#!jira UE-50193
	#!rb Shaun.Kime
	#!tests n/a

Change 3713133 on 2017/10/23 by Yannick.Lange

	Niagara: Isolate emitters in sequencer UI.
	- Added being able to extend the sequencer track context menu with a delegate.
	- Added entry in track context menu to toggle the selected emitters isolation state.
	- Added entry in track context menu to isolate all the selected emitters and turn isolation off for all non-selected emitters.
	#!rb Shaun.Kime
	#!tests n/a

Change 3712445 on 2017/10/22 by robomerge

	#!ROBOMERGE-AUTHOR: shaun.kime
	UVScale, UniformAorBFloat, and LinearColorAlongVector added.

	#!rb none
	#!tests new autotest added

	#!ROBOMERGE-SOURCE: CL 3712444 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3712420 on 2017/10/21 by robomerge

	#!ROBOMERGE-AUTHOR: shaun.kime
	Fixing issue where if you disabled Acceleration Force it would cause a compile error saying that it could find a default for Physics.Force but not in the parameter map. This was because of a simple error of using the index of the pin instead of the value of the pin when routing around the disabled node. In interpolated spawn scripts, there are two parameter maps, the spawn and update. If you always look in 0, which you would if you just use the pin index, you'd never find the Physics.Force variable in parameter map at entry 1.

	#!rb none
	[CODEREVIEW] frank.fella
	[FYI] simon.tovey, olaf.piesche, wyeth.johnson
	#!tests created an emitter, disabled Acceleration Force.. still compiled.

	#!ROBOMERGE-SOURCE: CL 3712419 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3711602 on 2017/10/20 by robomerge

	#!ROBOMERGE-AUTHOR: shaun.kime
	Fix for issue where we were getting a check due to the mesh not being set up properly. We now catch the error and don't try and do the bad operation. The log will have something like:

	LogNiagara: SkeletalMesh data interface has no valid mesh. Failed InitPerInstanceData

	#!jira UE-51511
	#!rb Simon.Tovey
	#!tests n/a

	#!ROBOMERGE-SOURCE: CL 3711601 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3711288 on 2017/10/20 by robomerge

	#!ROBOMERGE-AUTHOR: eric.ketchum
	[Justice] Ultiamte VFX in Niagara work, includes GeneratePositionEvent Module work

	#!rb: None

	#!tests: PIE

	[CODEREVIEW] Scott.Kennedy, Tim.Elek, Simon.Tovey, Shaun.Kime

	#!ROBOMERGE-SOURCE: CL 3711285 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3711197 on 2017/10/20 by Olaf.Piesche

	Fix for ribbon facing issue; VF assumed local space particles in the ribbon, now it assumes world space (the most common case); TODO: deal with local space properly

	#!rb none
	#!tests minion projectile ribbon trail

Change 3710634 on 2017/10/20 by Mic.Rooney

	Moving some Facial Animation stuff around so I can use some of their importing logic inside Orion Dialogue asset importing.

	#!RB: none
	#!Test: tested/built locally ran preflight Editor/Monolithics build.
	#!review-3710635 @andrew.grant, @david.ratti, @thomas.sarkanen

Change 3709686 on 2017/10/20 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Added some more timerguards for slow timer manager tick objects.
	Commented out for now.
	#!rb Trivial
	#!test Paragon Cooked ps4.

	#!ROBOMERGE-SOURCE: CL 3709683 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3708958 on 2017/10/19 by Shaun.Kime

	Back out changelist 3708456 .. this was an unintentional change
	#!rb none
	#!tests n/a

Change 3708839 on 2017/10/19 by Shaun.Kime

	Merging CL 3708835
	Fixing Scott's common crash with adding an emitter with autocompile off

	#!rb frank.fella
	#!tests n/a

Change 3708784 on 2017/10/19 by Shaun.Kime

	Merging CL 3708782

	//Orion/Main/... to //Orion/DevGeneral/...

	#!rb none
	#!tests n/a

Change 3708600 on 2017/10/19 by robomerge

	#!ROBOMERGE-AUTHOR: mieszko.zielinski
	Made bots in Ultimate movement mode not ignore all enemies but instead use a very small radius for enemy selection #!Orion

	#!rb none
	#!test golden path

	#!ROBOMERGE-SOURCE: CL 3706947 in //Orion/Release-44/... via CL 3708165
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3708473 on 2017/10/19 by Shaun.Kime

	Merging Frank's changes for team color support from Main to Dev-General
	#!rb Frank.Fella
	#!tests test_minionwave worked

Change 3708456 on 2017/10/19 by Shaun.Kime

	Particles.Random set to 0.0

	#!rb none
	#!tests n/a

Change 3708455 on 2017/10/19 by Shaun.Kime

	Merging using //Orion/Dev-General/_To_//Orion/Dev-Niagara
	#!rb none
	#!tests passed minion fx autotest

Change 3707648 on 2017/10/19 by Shaun.Kime

	Temporary render thread safety code for emitter instances and it's dataset until a more thorough refactor/safety pass can be made.
	Defer deletion of dataset to RT.
	Ensure resets don't mess with data inflight RT commands are using.
	Checkin on behalf of Simon Tovey

	#!jira OR-45423
	#!rb Simon.Tovey
	#!tests ran through the LaneMinionFXTests successfully on PC

Change 3707096 on 2017/10/19 by robomerge

	#!ROBOMERGE-AUTHOR: shaun.kime
	CameraOffset for sprites. Had to bless some new images due to Simon's off by one frame render fix from a few days ago.

	#!rb none
	#!tests automated tests pass

	#!ROBOMERGE-SOURCE: CL 3707088 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3706726 on 2017/10/19 by Rob.Cannaday

	Merge XMPP resource version to use version 2 instead of version 3
	#!rb trivial
	#!tests compile
	#!ROBOMERGE: Main, 44, Tencent

Change 3706349 on 2017/10/19 by Josh.Markiewicz

	#!UE4 - Cross Voice code review feedback
	- fixed up broken stack vs queue
	- fixed GetRoomId returning int32 instead of uint64
	- fixed switch room logic
	- more/better logging
	- more comments
	#!jira TEN-301
	#!review-3681404 @sam.zamani, @rob.cannaday
	#!rb none
	#!tests local cheat codes

Change 3705453 on 2017/10/18 by robomerge

	#!ROBOMERGE-AUTHOR: arne.schober
	Initzalize missing Cubemaps with Zero index to avoid inconsistencies between platforms (like PS4 where a negative index will access the memory shead of the array)
	#!RB Daniel.Wright
	#!Tests LaunchOnPs4

	#!ROBOMERGE-SOURCE: CL 3704845 in //Orion/Release-44/... via CL 3704847
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3705399 on 2017/10/18 by robomerge

	#!ROBOMERGE-AUTHOR: scott.kennedy
	Default Niagara emitter changed color property to better default value.
	Updated basic glow emitter
	Added energy bubble base emitter
	put a little more polish into siege minion impact FX.

	#!ROBOMERGE-SOURCE: CL 3704654 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3704426 on 2017/10/18 by Shaun.Kime

	Standardizing our null and zero checks for the sprite and mesh renderers trying to prevent OR-45423

	#!rb simon.tovey
	#!fyi hunter.kent
	#!tests ran test_minionwave with no crashes on PC, needs QA to bang on it to be sure

Change 3703288 on 2017/10/18 by Olaf.Piesche

	Simon's change to avoid recreation of vertex buffers; should also fix uninitialized gpu buffer crash

	#!rb olaf.piesche, simon.tovey
	#!tests minion test map PC and PS4

Change 3701373 on 2017/10/17 by robomerge

	#!ROBOMERGE-AUTHOR: shaun.kime
	Passing the wrong shader into ribbon vertex factories when setting shader constants for pixel shader.

	#!rb Olaf.Piesche
	#!tests test_minionwave runs

	#!ROBOMERGE-SOURCE: CL 3701371 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3701108 on 2017/10/17 by Hunter.Kent

	Added a "New Minions (nomcp)" option to the Mode dropdown in the BuildLauncher tool so that Devs can test the new minions on PS4 more easily.

	#!RNX
	#!Test PS4
	#!rb @tim.elek
	#!review-3701110 @andrew.grant, @daniel.lamb

Change 3701044 on 2017/10/17 by robomerge

	#!ROBOMERGE-AUTHOR: jon.lietz
	- white space fixes
	- added in more detail to logging
	- fixed dragon GC to not hide when the mesh is hidden

	#!rb none
	#!tests complies and logging is updated
	[FYI] Billy.Rivers, Eric.Ketchum, Fredrik.Seehuusen

	#!ROBOMERGE-SOURCE: CL 3700996 in //Orion/Release-44/... via CL 3701002
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3700900 on 2017/10/17 by Shaun.Kime

	Integrating possible crash fix from Dev-Niagara to Dev-Gen
	#!rb none
	#!tests n/a
	#!fyi Olaf.Piesche

Change 3700492 on 2017/10/17 by Shaun.Kime

	Merging using //Orion/Dev-General/_To_//Orion/Dev-Niagara
	#!rb none
	#!tests done in branch

Change 3700217 on 2017/10/17 by Olaf.Piesche

	Fix for potential crash in sprite renderer

	#!rb none
	#!tests minion test map

Change 3700216 on 2017/10/17 by Benn.Gallagher

	Fix for crash using Ghost's E on Rampage due to posable mesh being set as the master pose component. Clothing simulation assumed derivative of skeletal mesh component so was failing to correctly map its bones to the master.
	#!rb Lina.Halper
	#!jira OR-45226
	#!tests PIE + Standalone games hitting Rampage with Ghosts E

Change 3699660 on 2017/10/17 by Jason.Bestimt

	#!ORION_DG - Fixes to UnrealHitchParser edge cases

	#!RB:none
	#!Tests: Ran on Logs from QA

	#!CodeReview: ben.salem

Change 3699462 on 2017/10/17 by Shaun.Kime

	Merging using //Orion/Dev-General/_To_//Orion/Dev-Niagara
	#!tests preflight ok
	#!rb none

Change 3699010 on 2017/10/17 by Jeff.Williams

	Merging //Orion/Main to Dev-General (//Orion/Dev-General) @3698920
	#!rb none
	#!tests none

Change 3698519 on 2017/10/16 by Olaf.Piesche

	Sawtooth ribbon fix; may well fix other potential ribbon rendering artifacts

	#!rb none
	#!tests minion wave test map

Change 3698380 on 2017/10/16 by Shaun.Kime

	Updating logic to now support the autoattachment

	#!rb none
	#!tests autotests pass..

Change 3698263 on 2017/10/16 by Olaf.Piesche

	Assume degrees for sprite rotation

	#!rb none
	#!codereview shaun.kime
	#!tests test sprite emitter

Change 3697652 on 2017/10/16 by Olaf.Piesche

	Fixing crappy FP math for alternating vertex IDs ffor ribbon expansion

	#!rb none
	#!tests minion test map

Change 3696906 on 2017/10/15 by Shaun.Kime

	Fixing the spurious missing required attribute errors that were occuring for Scott on Friday. These were a result of a bad assumption in the code. The scripts input array can include more than just this emitter's scripts and as such we cannot assume that all the input scripts should be checked against the Emitter's renderers. Now we only check this emitter's scripts against the renderers.

	#!rb none
	#!tests now no longer generates invalid errors
	#!fyi frank.fella, olaf.piesche, simon.tovey

Change 3695456 on 2017/10/13 by Olaf.Piesche

	Fix for potential ribbon crash and end-of-ribbon rendering artifacts

	#!rb none
	#!codereview scott.kennedy
	#!tests minion wave test map

Change 3694545 on 2017/10/13 by Andrew.Grant

	Fix for low frequency async loading crash (OR-42535)

	#!rb gil.gribb
	#!tests comppiled

Change 3694176 on 2017/10/13 by Jeff.Williams

	Plugin manifest name changed to DLCFile name
	#!rb none
	#!tests compile, stage

Change 3693582 on 2017/10/12 by Don.Eubanks

	Fixing PS4 Compile warning (constructor init order not matching member define order)

	#!rb none
	#!tests Compile Shipping Client PS4
	#!fyi olaf.piesche

Change 3693516 on 2017/10/12 by Olaf.Piesche

	Niagara: Remove mesh renderer assert, replace with early out

	#!rb none
	#!tests niagara mesh test asset

	Merging

	//Orion/Dev-Niagara/Engine/Plugins/FX/Niagara/Source/Niagara/Private/NiagaraRendererMeshes.cpp

	to //Orion/Dev-General/Engine/Plugins/FX/Niagara/Source/Niagara/Private/NiagaraRendererMeshes.cpp

Change 3693051 on 2017/10/12 by Ben.Salem

	Adding parser for any logs with dumphitches enabled. Run UnrealHitchParser <logfile> to receive a logfile_hitches.txt file containing only the hitches in the log, plus reference lines to their location in the original log.
	#!rb Clayton.Langford
	#!tests Parsed a 5mb log with dumphitches down to 23k of hitch data.

Change 3692912 on 2017/10/12 by Olaf.Piesche

	Merging: Niagara ribbon tiling distance

	#!rb none
	#!tests ribbon test asset

Change 3692835 on 2017/10/12 by Shaun.Kime

	Synching with Dev-Niagara, specifically CL 3692821 which made InitialMeshRotation respect local space flags.

	#!rb none
	#!fyi scott.kennedy, wyeth.johnson
	#!tests n/a

Change 3692751 on 2017/10/12 by Shaun.Kime

	Removing script that shouldn't have come over.

	#!rb none
	#!tests n/a

Change 3692746 on 2017/10/12 by Shaun.Kime

	Merging using //Orion/Dev-General/_To_//Orion/Dev-Niagara

	#!rb none
	#!tests opened test level and created new emitter/system

Change 3692616 on 2017/10/12 by Don.Eubanks

	OR-45131

	Marking SRetainerWidget and our Orion-specific VirtualWindow (child of the RetainerWidget when bUseRetainerWidget is true) as SelfHitTestInvisible so they don't interfere with our HUD tooltip mouse picking.

	#!rb dan.hertzka
	#!tests Compile DebugGame Editor Win64 / Shipping Client PS4 / PIE
	#!codereview nick.darnell

Change 3691912 on 2017/10/12 by robomerge

	#!ROBOMERGE-AUTHOR: jeff.williams
	Merging //Orion/Dev-General to Main (//Orion/Main) to [at 3689865] #!rb none
	#!tests compile, editor

	#!ROBOMERGE-SOURCE: CL 3691870 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3690944 on 2017/10/11 by Jeff.Williams

	Adding Plugin Config .ini's to DLC paks. Building pluginmanifests per-DLC.
	#!rb Daniel.Lamb
	#!tests Compile, build

Change 3688989 on 2017/10/10 by Lina.Halper

	LOD sync of attached/parent
	#!rb: Laurent.Delayen
	#!tests: price with shotgun skin/PIE/editor

Change 3687592 on 2017/10/09 by Ben.Salem

	Increase the number of times we run each shallow test to make sure our numbers are reliable. Improve shallow FX perf logger to be able to handle multiple runs of the same test.
	#!rb clayton.langford
	#!tests Ran sparrow shallow tests.

Change 3686560 on 2017/10/09 by Shaun.Kime

	Flipping the min/max values to be standard
	#!rb none
	#!tests n/a

Change 3686046 on 2017/10/09 by Shaun.Kime

	Merging latest from Dev-Niagara in preparation for Effects team  work on Monday

	#!rb none
	#!tests successful preflight
	#!fyi Andrew.Grant, Simon.Tovey, Frank.Fella, Olaf.Piesche, Scott.Kennedy, Tim.Elek

Change 3685613 on 2017/10/07 by robomerge

	#!ROBOMERGE-AUTHOR: simon.tovey
	Implementing vector field matrix inverse fix from CL3675167 to 43.3.

	#!rb none
	#!tests none
	#!lockdown  andrew.grant

	#!ROBOMERGE-SOURCE: CL 3684339 in //Orion/Release-43.3/... via CL 3684340 via CL 3684342
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3685603 on 2017/10/07 by robomerge

	#!ROBOMERGE-AUTHOR: thomas.ross
	RotationalContent Improvements
	- Fixed potential bug where tags could be updated when not intended on RotationalContentManager
	- Fix for PIE assert
	- Moved DebugParsing checks to all cases of InitializingTagsFromMCP so that connecting to MCP or returning to the main menu would not overwrite a console / manually set debug option.
	- Removing config tag from RotationalContentOverrides in OrionGlobals.

	New Halloween Gauntlet Test
	- Adding in Halloween Gauntlet Test to facilitate launching halloween overriden builds easily. Run by typing Halloween into the custom text box.

	#!rb none
	#!tests local builds / editor / PIE

	#!ROBOMERGE-SOURCE: CL 3682813 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3685408 on 2017/10/07 by ben.salem

	Fixing robomerge error in DevGen

	#!CodeReview: ben.salem, jason.bestimt, andrew.grant, jeff.williams

	Unresolved conflicts. ben.salem, please merge this change by hand.
	//ROBOMERGE_ORION_Dev_General/OrionGame/Build/OrionBuild.xml

	--------------------------------------
	Merging using DevGen->Release43.3
	Repairing mailer for nightly Perf tests, fixing email headers.
	#!tests run in devgen
	#!rb none
	#!lockdown andrew.grant

	#!ROBOMERGE-SOURCE: CL 3680914 in //Orion/Release-43.3/... via CL 3680919 via CL 3680922
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3685073 on 2017/10/06 by Andrew.Grant

	Merging 3680922 //Orion/Main to Dev-General (//Orion/Dev-General)

	#!tests #!rb na

Change 3684717 on 2017/10/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fixed issue where GT & RT times in profile info were reversed :(

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3680128 in //Orion/Release-43.2/... via CL 3680129 via CL 3680130 via CL 3680235
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3684512 on 2017/10/06 by Laurent.Delayen

	Added 'PlayRateBasis' to SequencePlayer node, to scale PlayRate without having to do more expensive BP code.

	#!rb lina.halper
	#!tests minion AnimBP nativization

Change 3684059 on 2017/10/06 by Max.Preussner

	Orion: Fixed ability videos not loading on PS4 and/or not looping

	#!fyi stephan.jiang
	#!jira OR-44682
	#!rb none
	#!rnx
	#!tests none

Change 3683538 on 2017/10/06 by David.Ratti

	batch all non-trickle gold and XP gameplay cues into single compact RPC call. Fixes issues where rpc throttling would prevent gold/xp number pops over large groups of minions.

	-Fixes enemy heroe kills/assists never showing XP pops. We now pass the avatar actor as the Source Actor into ::AwardXP (like we do for ::AwardCardXP). This was causing XP pops to only show for minions and not players.

	-Fixes case where killing minions with badass was not displaying pops (prediction key issue)

	#!rb none
	#!tests editor, pie
	#!review-3683539 @Matt.Schembari

Change 3683364 on 2017/10/06 by Andrew.Grant

	Changed warning to info

	#!tests #!rb na

Change 3681999 on 2017/10/05 by Bart.Hawthorne

	Implement live spectating feature. Clients can join a match using a custom key by setting their custom key and using the "JoinAsSpectator" console command. This will be replaced with proper UI later. The client is able to watch a match from start to finish (or join in the middle), then they will see the end game sequence and return to the title screen at match completion.

	#!rb cody.haskell
	#!fyi ben.zeigler, matt.schembari, matt.kuhlenschmidt, paul.moore
	#!jira OR-44111
	#!tests Golden path, live spectated numerous matches.

Change 3681403 on 2017/10/04 by Josh.Markiewicz

	#!UE4 - base pass for Tencent Cross SDK
	- basic testing done with enter/exit/switch room
	- basic testing of ShowUI
	- checked in disabled
	#!rb duck
	#!tests see above
	#!jira TEN-301
	#!review-3681404 @sam.zamani, @rob.cannaday

Change 3680623 on 2017/10/04 by David.Ratti

	Rework for how max movement speed is calculated.

	The design is now "only strongest movement speed slow affects player speed". Movement speed buffs are unaffected : they are still accumulated along with the strongest slow.

	Combat Slows (Shooting, jump penalties) are now aggregated within Max Movement Speed, so the same rules apply. If a slow of greater magnitude is active, Combat Slows will effectively be ignored. Likewise, if a combat slow is stronger than a debuff slow, the debuff slow will effectively be ignored.

	Directional Slows (penalty for strafing or backpeddaling) are treated in a similar way. There are some subtleties here, but basically directional slows are only applied if they would be "the strongest" slow.

	GE Slows that are not contributing (due to not being the strongest active slow) will still appear to be "on" and applied. (Their GCs will still play, they are not inhibited, handles to them are still valid, etc).

	Suggested methods for inspection:
	AbilitySystem debug hud (Home/End)
	p.VisualizeMovement (displays final calculated movement speed)
	Orion.Movement.DirectionalScaleDebug (displays directional slow movement scalar)

	Technical information:
	1. Changes the way attribute mods are qualified. Rather than qualifying inside the mod prior to evaluating, we qualify all mods within an FAggregator first, then allow a custom callback to run which can further muck with the mods IsQualified bool, then we evaluate like normal except that we just check the IsQualified bool.

	2. Added a concept of Aggregator Evaluate Meta Data that can be set per aggregator. This is data that is instrinc to the aggregator rather than passed in by the person evaluating.  It may make sense to have this be a shared ptr to reduce memory footprint if this struct grows.

	3. Added a notification for attribute sets when an aggregator is created for one of their attributes.

	4. Added ForEachMod functions in the aggregators to iterate over all mods (while getting the channel and mod op which are otherwise not known to the actual FAggregatorMod)

	5. Added FAggregatorEvaluateMetaDataLibrary which can store common/shared functions for this type of extension.

	#!tests pie
	#!rb FrankG
	#!codereview Fred.Kimberley, Billy.Bramer
	#!fyi colin.fogle
	#!QAReview
	#!RN
	#!designchange

Change 3680580 on 2017/10/04 by Ben.Salem

	Repair email titles for various reports.
	#!rb none
	#!tests Reran tests.

Change 3680438 on 2017/10/04 by Dan.Hertzka

	GameplayAbilities now pass along their SourceObject when creating the effect context for a new effect
	- Fixes the HUD status effect feed not showing sources for a lot of itemization abilities

	Also added the tag to prevent showing a feed entry for the Lifesteal received from the first major agi pip

	#!rb Dave.Ratti
	#!tests OrionEntry PIE - equipped Sand Speeder

	#!QAReview: This should address the majority of cases where a card/gem effect buff doesn't show the source item. There are still a number of unaddressed cases, but these will largely be content one-offs from here on

Change 3680344 on 2017/10/04 by robomerge

	#!ROBOMERGE-AUTHOR: marcus.wassmer
	Speculative disable of defragging on volumetric lightmap textures.
	#!rb andrew.grant
	#!test monolith2 ps4

	#!ROBOMERGE-SOURCE: CL 3678624 in //Orion/Release-43.3/... via CL 3678628
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3680302 on 2017/10/04 by Shaun.Kime

	Integration from DevNiagara.
	Some character and card blueprints were changed in a minor way when they called their parent Burst, Loop, etc. as Blueprints cannot have an unattached array pin and Gameplay cues now have an Additional Niagara Particle Systems array.

	#!rb none
	#!fyi Scott.Kennedy, Olaf.Piesche, Simon.Tovey, Frank.Fella, Andrew.Grant, Tim.Elek
	#!tests passed PS4 test level (not submitted, but ported from DevNiagara). Automated tests pass.

Change 3679946 on 2017/10/04 by Laurent.Delayen

	Fix for OR-44826. Old minions would crash because their LODs would reduce bone counts, and LowerBodyBoneIndices wasn't properly reset between LOD switches.

	#!rb lina.halper
	#!FYI andrew.grant
	#!tests monolith2 old minions

Change 3679938 on 2017/10/04 by Daniel.Lamb

	Allowed foliage cullall option to be modified by scalability options.
	#!rb Trivial
	#!test Compile paragon editor

Change 3679563 on 2017/10/04 by Jon.Lietz

	OR-43599

	- added support for WaitForAttributeChange, WaitForAttributeChangeWithComparison, WaitForAttributeChangeThreshold, and WaitForAttributeChangeRatioThreshold to support tracking on an extrnal source. This way you can track when that extranal sources attribute changes and respond to it.

	#!rb Dave.Ratti
	#!review-3679564 @John.Nielson
	#!tests added these waits to hot pursuit and they worked as expected

Change 3679006 on 2017/10/03 by Ben.Salem

	Try to fix broken nightly mailer issues for FX tests.
	#!rb none
	#!tests Preflighted a shallow fx pass successfully in EC.

Change 3677845 on 2017/10/03 by Andrew.Grant

	Added an ensure to guard against OR-44826 while further investigations occur

	#!tests compiled
	#!rb none

Change 3677443 on 2017/10/03 by John.Nielson

	Fix to OrionOR-44394, Log Warnings related to Phase GC when loading into game as Phase.

	Made it so that gameplayCue's async loads are cancelled when Unloaded (in UnloadGameplayCueNotify).

	#!RB: None
	#!Test: Pie, Uncooked
	#!review-3677445: @David.Ratti

Change 3676748 on 2017/10/02 by Laurent.Delayen

	Minions: split body layer is now done in mesh space, to maintain upper body orientation.

	#!FYI ray.arnett, lina.halper
	#!rb none
	#!test lane minion test map

Change 3675950 on 2017/10/02 by Don.Eubanks

	Added several new supported tags / status effects to the Floating Status Effect Text system.

	Added support for providing a list of Instigating actors when a status effect begins, the list isn't super perfect (overlapping status effects can result in an instigator appearing in multiple lists) but it should be pretty good for now.  This paves the way for us to squelch status effects unless they are initiated by the player.

	Added ScaleOverDistance curve support for floating numbers / text.

	Inverted the Instigator / Target checkboxes for XP in the DamageNumberManager per @matt.schembari request to support his work while I had the asset checked out.

	#!rb matt.schembari
	#!tests Compile DebugGame Editor Win64 / Shipping Client PS4

Change 3675186 on 2017/10/02 by Mic.Rooney

	Support for other anim curve driving audio types (right now specifically DialogueWave)

	#!RB: none
	#!Test: compiled editor/monolithics/withoutunity and tested locally.
	#!review-3675187 @andrew.grant, @david.ratti, @thomas.sarkanen

Change 3675167 on 2017/10/02 by Shaun.Kime

	Changed unsafe InverseFast() to an Inverse()

	#!jira OR-44671
	#!rb Simon.Tovey
	#!tests n/a

Change 3674888 on 2017/10/02 by David.Ratti

	GGP V2
	* Major refactor of the GGP system though this first check in is a scaled back integration from original plans. Primarily to stabilize the system and improve designer work flows before possibly going deeper for a "Completely unified" integration.


	Item System:
	* Simple Ability Keyword Data now directly references gameplay effect to apply, effectively removing Gameplay Effect Keywords.
	* Qualifier and Gameplay Effect parameters now use the FAutoExportScalableFloat structure which automatically hooks up the values to spreadsheets. (GGP is used to surface these parameters for the auto hookup).

	Ability System:
	* SetByCaller magnitudes are now copied over anytime a GE applies another GE. When an ability applies a GE it also brings over its SetByCaller Magnitude tags from the GE that granted it (if granted bya  GE)


	#!rb none
	#!tests editor pie cooked
	#!review-3674889 @Jon.Lietz

Change 3674170 on 2017/09/30 by Mieszko.Zielinski

	Fixed a bug in OrionToggleableNavLinkProxy resulting from an overly optimistic assumption that Navmesh and Gameplay levels are being saved in sync #!Orion

	Had to make OrionToggleableNavLinkProxy's nav poly ID caching happen on map load.

	#!rb none
	#!test golden path
	#!OR-44738

Change 3672937 on 2017/09/29 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Changed Gauntlet filecopy to a single thread to see if it addresses issue with PS4 files

	#!tests 3compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3670237 in //Orion/Release-43/... via CL 3670243 via CL 3670244 via CL 3670245 via CL 3670246
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3672867 on 2017/09/29 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Restored previous behaviour of integer numbers being formatted as "1" and not "1.00"

	#!tests ran game, checked playlist analytic
	#!rb nikdel

	#!ROBOMERGE-SOURCE: CL 3669417 in //Orion/Release-43/... via CL 3669556 via CL 3669557 via CL 3669558 via CL 3669559
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3672575 on 2017/09/29 by robomerge

	#!ROBOMERGE-AUTHOR: david.ratti
	Remove warning that can happens normally with backwards compat replays
	#!rb none
	#!tests compile

	#!ROBOMERGE-SOURCE: CL 3667518 in //Orion/Release-43.3/... via CL 3667520
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3672548 on 2017/09/29 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Fixed crash in the editor caused by trying to build hlods with StaticMeshComponents that don't have a static mesh assigned.
	#!rb Andrew.Grant
	#!test Editor building hlods

	#!ROBOMERGE-SOURCE: CL 3667059 in //Orion/Release-43.3/... via CL 3667060
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3672542 on 2017/09/29 by Andrew.Grant

	Merging

	#!rb #!tests na

Change 3672390 on 2017/09/29 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Changed memreport settings for frontend tests

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3666239 in //Orion/Release-43/... via CL 3666240 via CL 3666241 via CL 3666242 via CL 3666243
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3672385 on 2017/09/29 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Reworked and pretty much final PipelineState cache code

	- various comments incorporated
	- namespaced functions
	- removed redundant class and replaced with ref pointer

	#!tests soaked a lot
	[at daniel.lamb,] [at arne.schober] #!rb none

	#!ROBOMERGE-SOURCE: CL 3666233 in //Orion/Release-43/... via CL 3666235 via CL 3666236 via CL 3666237 via CL 3666238
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3672281 on 2017/09/29 by Rob.Cannaday

	Add user ID to OnNetworkCheatDetected
	#!jira TEN-272
	#!jira TEN-273
	#!jira TEN-274
	#!rb rob.cannaday
	#!tests Win64 AI match, simulate cheat detected by cheat command
	#!review-3672282 @ian.fox @sam.zamani

Change 3671688 on 2017/09/29 by Frank.Gigliotti

	Added ability to set developer comment when adding native tags.

	#!RB David.Ratti
	#!Tests None

Change 3670409 on 2017/09/28 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fix for dump type made while doing cleanup

	#!tests compiled Win64, PS4, ran PS4
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3664048 in //Orion/Release-43/... via CL 3664049 via CL 3664050 via CL 3664873
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3670399 on 2017/09/28 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fixed race condition in pipeline state cache

	Cache now trims every 60 secs to reduce memory. Saves ~95MB in a 60m game of Paragon

	(Couple of extra tweaks planned, but this should be GTG for a v43 release)

	#!rb codereviewed
	#!tests soaked locally, lots

	#!ROBOMERGE-SOURCE: CL 3663603 in //Orion/Release-43/... via CL 3663605 via CL 3663607 via CL 3664870
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3669802 on 2017/09/28 by Andrew.Grant

	From Dev-Framework

	#!jira UE-49858 Fix performance regression deleting many actors at once. It was redundantly serializing packages repeatedly to look for actor references, so now we cache that once per package and only display the slow dialog/p4 check when needed
	#!rb michael.noland
	#!codereview andrew.grant
	#!tests na

Change 3669709 on 2017/09/28 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	Restored LoadTimesObjectVersion even though it is no longer used, packages saved with it will issue a warning in the cooker
	#!rb none
	#!TESTS none

	#!ROBOMERGE-SOURCE: CL 3664407 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3669177 on 2017/09/28 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	[Copy] 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)
	#!rb Marcus.Wassmer
	#!TESTS Paragon editor Monolith02

	#!ROBOMERGE-SOURCE: CL 3662969 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3669124 on 2017/09/28 by Daniel.Lamb

	Merging //Orion/Main/Engine/Shaders/Public/ShaderVersion.ush
	to //Orion/Dev-General/Engine/Shaders/Public/ShaderVersion.ush

	Fix cook in devgeneral

	Bumped shader version to invalidate stale uniform buffer name.
	#!rb none
	#!TESTS none
	#!fyi Daniel.Wright

Change 3667906 on 2017/09/27 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	[Copy] 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.
	#!rb none
	#!TESTS QAGame

	#!ROBOMERGE-SOURCE: CL 3662475 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3667899 on 2017/09/27 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	[Copy] Remove unused SM4 reflection capture cubemap
	#!rb none
	#!TESTS none

	#!ROBOMERGE-SOURCE: CL 3662462 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3667894 on 2017/09/27 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	[Copy from Brian] SM4 fallback for reflection captures.
	#!rb none
	#!TESTS none

	#!ROBOMERGE-SOURCE: CL 3662449 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3667859 on 2017/09/27 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	[Copy from Brian] Removed old rasterized deferred reflection env path.
	Removed reflection compute shader. Replaced with PS. Small perf gain.
	#!rb none
	#!TESTS none

	#!ROBOMERGE-SOURCE: CL 3662439 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3667852 on 2017/09/27 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	[Copy] Fixed missing include
	#!rb none
	#!TESTS none

	#!ROBOMERGE-SOURCE: CL 3662396 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3667807 on 2017/09/27 by Daniel.Lamb

	Tencent DLC can now remap the plugin content to the game root directory.
	#!rb Ben.Marsh
	#!test Paragon regioncl dlc build, preflight ps4, win64 standard build + test

Change 3667753 on 2017/09/27 by Clayton.Langford

	Adding automated test for capturing fx perf for lane minions. Also adding a Gauntlet node to run the test nightly, added test map to the cook list, updated the SpawnMinion phase to use new minion assets, and fixed an issue with the spawn timer.

	#!RB Ben.Salem, Adric.Worley
	#!tests PIE, local synced client/server, and Gauntlet's RunAutomaticTest.bat

Change 3667408 on 2017/09/27 by Jordan.Walker

	Optimization to bakedNormal layer blend on Low end material quality
	-uses simple multiply and add normal map blend

Change 3667388 on 2017/09/27 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	[Copy] 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.
	#!rb none
	#!TESTS QAGame on console

	#!ROBOMERGE-SOURCE: CL 3662389 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3667383 on 2017/09/27 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.wright
	[Copy] CPU interpolation of Volumetric Lightmaps for the mobile renderer.  They use a scene cache based on interpolation position, since the precomputed lighting buffer for movable objects is recreated every frame.
	#!rb none
	#!TESTS QAGame

	#!ROBOMERGE-SOURCE: CL 3662383 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3667265 on 2017/09/27 by Daniel.Lamb

	Fixed crash in the editor caused by trying to build hlods with StaticMeshComponents that don't have a static mesh assigned.
	#!rb Uriel.Doyon
	#!test Editor building hlods

Change 3667159 on 2017/09/27 by Mieszko.Zielinski

	Added simple logging to BT loading allowing us to identify missing BB keys #!Orion

	#!test golden path
	#!rb Lukasz.Furman

Change 3665944 on 2017/09/26 by Dan.Hertzka

	Fix PS4 compile

	#!rb none
	#!tests compile PS4

Change 3665590 on 2017/09/26 by Daniel.Lamb

	Fix for DLC cooking everything when it should only cook the DLC.
	#!rb None
	#!test None

Change 3665569 on 2017/09/26 by Dan.Hertzka

	New status effect feed for the new HUD:
	- Now placed in the mid-upper-left side of the HUD
	- Biggest difference from before is that there are now names associated with each effect
	- If we can determine the ability it came from (and it has a name/icon), we show that as well. This doesn't work for any card effects yet.

	Cleaning:
	- Deleted all of the old buff widget classes & codepaths
	- Removed redundant properties from StatusEffectDisplayInfo
	- Added BuffStatusTags and DebuffStatusTags to AttributeViewItem. This allows us to associate the effects that modify an attribute with the attribute itself. Allowed me to remove about half of the entries in StatusEffectDisplayData

	Also:
	- Consolidated all of the events on FActiveGameplayEffect into a single struct. Since we don't want to allow non-const access to any other part of the active effect, each of these has an individual getter on the ASC. This is pretty obnoxious when you want to bind multiple events. There is now a getter for the event set of an active effect on the ASC. This allows more convenient non-const native access to these events
	- Added an event for when the inhibition of an effect changes. This is important for UI to know when an effect is no longer relevant (despite never being actually removed)

	@todo: Add support for showing the item ability names that are responsible for effects (note that this will be the ability, not the name of the item. The name of the item will be a lot harder.)

	#!rb Don.Eubanks
	#!tests OrionEntry PIE with some cards and hero abilities

	#!QAReview - Please keep an eye on this to make sure it works as expected during normal play. I wasn't sure how to test stack counts - not sure which status effects actually support that. They should show up though if any do. Please also verify that this still works/appears correctly during the tutorial.

	#!lockdown Billy.Rivers

Change 3665555 on 2017/09/26 by Daniel.Lamb

	AudioStreaming mpsc queue fix up.
	#!rb Andrew.Grant
	#!test Compile paragon client / editor.

Change 3665517 on 2017/09/26 by Daniel.Lamb

	Suspect fix for OR-44619
	#!jira OR-44619
	#!test Paragon editor compile
	#!rb Trivial

Change 3664346 on 2017/09/26 by Jon.Lietz

	- making LifeSpanCallback inside UDecalComponent virtual so sub classes can override how Decals handle fade out.
	- Adding in UOrionDecalComponent to replace the use of UDecalComponent, for the most part they are the same the only thing we needed to change was the LifeSpanCallback() if the Owner is a AOrionGameplayCueNotify_Actor we dont call Super::LifeSpanCallback() that would result in the GC getting destroyed but now call GameplayCueFinishedCallback() so our gameplay cues will recycle as desired.
	- Updated all GC's data to use the new decal class
	- removed the option to place UDecalComponent as BP comp and only left our new UOrionDecalComponent

	#!rb Dave.Ratti
	#!reivew Dave.Ratti
	#!tests used characters that had decal comps in the GC and they recylce as expected.
	#!QAReview please check the effected abilities and cues, I tested and everything looks fine to me up a deeper check is needed.

Change 3664099 on 2017/09/26 by Jon.Lietz

	OR-44510

	- bringing over engine fixes for the Enum Redirector from Dev-Framework

	#!rb none
	#!tests compiles and warnings are gone

Change 3663019 on 2017/09/25 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Gil: fixed race condition in the PipelineStateCache
	#!rb Daniel.Lamb
	#!test paragon ps4 with higher repro modified build
	#!lockdown Andrew.Grant
	#!jira OR-44441

	#!ROBOMERGE-SOURCE: CL 3659463 in //Orion/Release-43/... via CL 3661481 via CL 3661489 via CL 3661497
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3663014 on 2017/09/25 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Quick fix to remove a redundant copy of the PipelineStateInitializer (saves 16MB over a 10min game) incase we need to submit a build before the more extensive changes are ready.

	#!tests ran locally
	#!rb [at daniel.lamb] [at arne.schober]

	#!ROBOMERGE-SOURCE: CL 3658907 in //Orion/Release-43/... via CL 3661480 via CL 3661488 via CL 3661494
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3663004 on 2017/09/25 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Changed dev check for extra commandline args from /data to /temp0

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3658497 in //Orion/Release-43/... via CL 3661478 via CL 3661486 via CL 3661492
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3662999 on 2017/09/25 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Gauntlet - Fixed DateTime used for folders not being set

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3658390 in //Orion/Release-43/... via CL 3661477 via CL 3661485 via CL 3661491
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3662255 on 2017/09/25 by Sam.Zamani

	#!tencent
	- fix for link error due to missing define of static OnNetworkCheatDetected delegate

	#!rb none
	#!tests none

Change 3662073 on 2017/09/25 by Sam.Zamani

	#!tencent
	Added new global network delegates callback FNetworkCheatDetected for when cheating is detected on a server
	Possible options

	#!jira TEN-275 TSS detect and expose punish user callbacks

	KickClient - User should be booted from the current game session via disconnect
	KickMatch - User received info about being punished (eg. ban type etc)
	PunishInfo - User received info about being punished (eg. ban type etc)

	#!rb rob.cannaday
	#!tests none

Change 3659487 on 2017/09/22 by Josh.Markiewicz

	#!Orion - removed NUTFortnite* files because they have been moved into Fortnite specific plugin
	#!review-3659190 john.barrett, ryan.gerleve

Change 3659485 on 2017/09/22 by Josh.Markiewicz

	#!UE4 - removed OSSUtils dependencies from NUTUnrealEngine4 since the refactor moved dependencies into game specific plugins
	#!fyi john.barrett, ryan.gerleve

Change 3659184 on 2017/09/22 by Josh.Markiewicz

	#!UE4 - delete EpicSurvey module
	#!fyi justin.sargent, nick.darnell
	#!rb none

Change 3658697 on 2017/09/22 by Ryan.Gerleve

	Fixes for server-side Tencent anti-cheat library integration:
	-Fix DLL loading to properly call tss_sdk_load and use the correct paths on Linux as well as Windows
	-Add getter for the TssSdkAntiInterf object
	-Enable server anti-cheat in editor builds

	#!codereview sam.zamani
	#!rb none
	#!tests enabled Tencent OSS, built & ran server

Change 3658200 on 2017/09/22 by Graeme.Thornton

	Manual copy of CL 3587584 from Dev-Core

	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

	#!rb none
	#!tests been in Dev-Core and Main for a while now. Compile tests in Dev-General

Change 3657970 on 2017/09/22 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Added Trim() delegate hook to PipelineStateCache so accumulated memory is freed on a hard level transition.

	We've noticed this memory growing considerably overtime and while it may reach a ceiling eventually it was still increasing after 60m of Paragon. This should at least reset it upon the end of each game,

	[at marcus.wassmer,] [at arne.schober] #!rb none
	#!tests cycled 6-7 levels of Paragon

	#!ROBOMERGE-SOURCE: CL 3657965 in //Orion/Release-43/... via CL 3657967 via CL 3657968 via CL 3657969
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657914 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Non-shipping: test and dev builds now check testkit's data drive for a commandline override. Not sure if this will work as-is, but shouldn't cause any harm if not and it needs to go into a pkg build for testing...

	#!tests stepped through in non-pkg build
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3657910 in //Orion/Release-43/... via CL 3657911 via CL 3657912 via CL 3657913
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657906 on 2017/09/21 by Andrew.Grant

	Improved some logging

	#!tests used locally
	#!rb none

Change 3657891 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Formalized idea of multiple test passes in Gauntlet. Current pass and total passes are provided to nodes incase they want to perform custom processing

	Fixed issue with -dev mode on PS4 not updating symbols

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3657887 in //Orion/Release-43/... via CL 3657888 via CL 3657889 via CL 3657890
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657867 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	[NULL MERGE]
	Re-locked network CL to 3652780

	#!tests #!rb na

	#!ROBOMERGE-SOURCE: CL 3657221 in //Orion/Release-43/... via CL 3657359 via CL 3657366 via CL 3657374
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657857 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - Removing start up dialog that warns of non-optional instructions - OR-44444

	#!RB:arciel.rekman
	#!Tests:Compiled

	[CODEREVIEW] daniel.lamb, andrew.grant, arciel.rekman, benjamin.crocker, matthew.coleman, joe.graf

	#!ROBOMERGE-SOURCE: CL 3657058 in //Orion/Release-43/... via CL 3657355 via CL 3657364 via CL 3657370
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657852 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fix for case-insensitivity causing title.json not to be staged

	#!rb daniel.lamb, bob.tellez
	#!tests ran packaging script, verified contents match v42

	#!ROBOMERGE-SOURCE: CL 3657054 in //Orion/Release-43/... via CL 3657353 via CL 3657363 via CL 3657369
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657831 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - Removing popcnt version of CountBits to repair pre-Nehalem processors

	We can worry about a more permanent solution after we get this live.

	#!RB:none
	#!Tests: Compiled

	[CODEREVIEW] daniel.lamb, andrew.grant, ben.marsh, marcus.wassmer

	#!ROBOMERGE-SOURCE: CL 3656206 in //Orion/Release-43/... via CL 3657325 via CL 3657333 via CL 3657338
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657824 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	[CODEREVIEW] andrew.grant, jason.bestimt, jeff.williams

	Unresolved conflicts. andrew.grant, please merge this change by hand.
	//ROBOMERGE_ORION_Release_43_1/Engine/Binaries/Win64/UnrealCEFSubProcess.exe
	//ROBOMERGE_ORION_Release_43_1/Engine/Binaries/Win64/UnrealCEFSubProcess.pdb

	--------------------------------------
	Built new UnrealCEFSubprocess client
	Changed OrionBuild.xml to build the shipping version of the above.

	The first should definitely fix out store issue. It's not clear to me if the latter will because if this artifact was being staged I'd expect to see UnrealCEFSubProcess-Win64-Development etc be distributed and it's not. This suggests to me we just stage what's in P4 and not the result of this step, but further investigationds will be needed to vet this.

	[at justin.sargent,[at benjamin.crocker,[at wes.fudala]]]

	#!ROBOMERGE-SOURCE: CL 3656066 in //Orion/Release-43/... via CL 3657319 via CL 3657332 via CL 3657337
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3657488 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: anton.migulko
	LIGHTING AND assets update

	#!ROBOMERGE-SOURCE: CL 3656996 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3656388 on 2017/09/21 by Laurent.Delayen

	Added default GetAxisVector static function to EAxisOption

	#!rb none
	#!FYI thomas.sarkanen
	#!tests lane minions test map

Change 3656387 on 2017/09/21 by Laurent.Delayen

	Initialize FAnimInstanceProxy with default constructor.

	#!rb none
	#!fyi lina.halper, thomas.sarkanen
	#!tests lane minion test map

Change 3656003 on 2017/09/21 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	[NULL MERGE]
	Locked net version to 3650578 for patching

	benjamin.crocker
	#!tests #!rb na

	#!ROBOMERGE-SOURCE: CL 3655998 in //Orion/Release-43/... via CL 3656000 via CL 3656001 via CL 3656002
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3654403 on 2017/09/20 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Merge DevCore -> Orion Release-43 CL 3641450
	UE4 - Switch PS4 over to atomics that issue a full memory barrier. UE4 assumes atomics have memory barriers.
	#!rb Daniel.Lamb
	#!test Compile
	#!lockdown Andrew.Grant

	#!ROBOMERGE-SOURCE: CL 3654399 in //Orion/Release-43/... via CL 3654400 via CL 3654401 via CL 3654402
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3654356 on 2017/09/20 by Andrew.Grant

	Merging 3653658 from Dev-Rendering

	#!tests compiled, ran editor
	#!rb marcus.wassmer

Change 3653914 on 2017/09/20 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Bumped script version to reprocess autosdks (installs debugger for CoreFileAPI access).

	#!rb none
	#!tests ran locally

	#!ROBOMERGE-SOURCE: CL 3653910 in //Orion/Release-43.1/... via CL 3653911 via CL 3653912
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3652495 on 2017/09/19 by Andrew.Grant

	Editgration of VR fix in 3643776 from Release-4.17

	#!tests #!rb na

Change 3652244 on 2017/09/19 by Sam.Zamani

	#!tencent
	Disable launcher checks if "-q" is on command line indicating QQ id when launched via TCLS launcher
	Added "-q" to whitelist of command line params for shipping builds
	Skip update URI routing to Epic Launcher for tencent builds since they use TCLS launcher

	#!rb rob.cannaday
	#!tests none

Change 3651493 on 2017/09/19 by buildmachine

	BuildPhysX.Automation: Deploying PhysX & APEX & NvCloth Linux_x86_64-unknown-linux-gnu libs.
	#!rb none
	#!lockdown Nick.Penwarden
	#!tests none

Change 3651490 on 2017/09/19 by buildmachine

	BuildPhysX.Automation: Deploying PhysX & APEX & NvCloth Linux_aarch64-unknown-linux-gnueabi libs.
	#!rb none
	#!lockdown Nick.Penwarden
	#!tests none

Change 3651489 on 2017/09/19 by buildmachine

	BuildPhysX.Automation: Deploying PhysX & APEX & NvCloth Linux_arm-unknown-linux-gnueabihf libs.
	#!rb none
	#!lockdown Nick.Penwarden
	#!tests none

Change 3651445 on 2017/09/19 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - Integrating CL 3651124 from Release-4.17 to remove -ffast-math flag

	#!RB:none
	#!Tests:none

	[CODEREVIEW] dmitry.rekman, daniel.lamb, andrew.grant

	#!ROBOMERGE-SOURCE: CL 3651441 in //Orion/Release-43/... via CL 3651443 via CL 3651444
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3651059 on 2017/09/19 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Removed code to archive load-order during tests

	#!tests #!rb na

	#!ROBOMERGE-SOURCE: CL 3651056 in //Orion/Release-43/... via CL 3651057 via CL 3651058
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3651043 on 2017/09/19 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Changed error parsing from tests to put cause ahead of file info

	#!tests ran self-test
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3651034 in //Orion/Release-43/... via CL 3651041 via CL 3651042
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3649683 on 2017/09/18 by Andrew.Grant

	Bulk-merge of oustanding changes in Main to DG

	#!tests #!rb na

Change 3649345 on 2017/09/18 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Integrate fix for eidtor crash when switching between low and high scaleability options.
	#!rb Olaf.Piesche
	#!test Paragon editor

	#!ROBOMERGE-SOURCE: CL 3643174 in //Orion/Release-43/... via CL 3643214 via CL 3643240
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3649335 on 2017/09/18 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - OR-44257 - Fix for hair not working
	It is valuable to use the proper variable when doing Boolean logic :/  Cut-n-paste error from bit-packing conversion.

	#!RB:daniel.lamb
	#!Tests:Re-tested in cooked build

	[CODEREVIEW] daniel.lamb

	#!ROBOMERGE-SOURCE: CL 3643061 in //Orion/Release-43/... via CL 3643211 via CL 3643237
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3649231 on 2017/09/18 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - Bit packing skel mesh cache variable and then reverting sound cue changes to avoid collision with AaronM

	#!RB:none
	#!Tests:none

	[CODEREVIEW] daniel.lamb, aaron.mcleran, marc.audy

	#!ROBOMERGE-SOURCE: CL 3642166 in //Orion/Release-43/... via CL 3643199 via CL 3643231
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3649211 on 2017/09/18 by robomerge

	#!ROBOMERGE-AUTHOR: marcus.wassmer
	Fix 'lowest' shadow settings (simple forward rendering)
	#!rb arne.schober
	[FYI] Daniel.Wright
	#!tests monolith

	#!ROBOMERGE-SOURCE: CL 3642119 in //Orion/Release-43/... via CL 3643196 via CL 3643228
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3649141 on 2017/09/18 by Stephan.Jiang

	Tagging files that shouldn't be merged up to Main, upon next engine merge should accept source.

	  -- These are hacks for ability videos to work before we have the new Sequencer updates
	  -- CLs contain those hacks: 3649066, 3649049, 3648752, 3648748

	#!fyi Andrew.Grant, Max.Preussner
	#!rb none
	#!test compile

Change 3649087 on 2017/09/18 by Thomas.Ross

	Merging //UE4/Dev-Framework/ CL#!3646428 using //UE4/Dev-Framework_to_//Orion/Dev-General
	#!rb none
	#!tests none
	#!fyi Andrew.Grant,Jeff.Williams,dan.oconnor

Change 3649066 on 2017/09/18 by Max.Preussner

	WmfMedia: Fix for multiple media sessions being created when repeatedly opening media sources

	#!rb stephan.jiang
	#!rnx
	#!tests none

Change 3649049 on 2017/09/18 by Max.Preussner

	Media: Changed audio sample rate warning to verbose log

	#!fyi stephan.jiang
	#!rb none
	#!rnx
	#!tests none

Change 3648752 on 2017/09/18 by Max.Preussner

	WmfMedia: Fixed race condition in media sound wave

	#!rb none
	#!rnx
	#!tests none

Change 3648748 on 2017/09/18 by Max.Preussner

	WmfMedia: Hack for preventing flicker between media source switching

	Do not merge to Dev-Main!

	#!rb stephan.jiang
	#!rnx
	#!tests none

Change 3648596 on 2017/09/18 by Bart.Hawthorne

	More Oodle batch file fixes - cleaned up the changelist description and removed the changelist parameter since the branch parameter is enough.

Change 3648575 on 2017/09/18 by Sam.Zamani

	#!tencent
	Fix for missing library calls when initializing TSS anti cheat SDK

	#!rb none
	#!tests compiles win64 server

Change 3648556 on 2017/09/18 by Jeff.Williams

	Null Merging //Orion/Main to Dev-General (//Orion/Dev-General) @3642084

	Clearing up robomerge


	#!rb none
	#!tests none

Change 3648533 on 2017/09/18 by clayton.langford

	Unblocking RM.

	#!CodeReview: clayton.langford, jason.bestimt, andrew.grant, jeff.williams

	Unresolved conflicts. clayton.langford, please merge this change by hand.
	//ROBOMERGE_ORION_Dev_General/Engine/Source/Programs/AutomationTool/NotForLicensees/Gauntlet/Gauntlet.Automation.csproj

	--------------------------------------
	Backing out 3641723 for now due to nontrivial merge conflicts. Did not back out change to DefaultEditor.ini since this change is unrelated to the conflict and essential for existing tests to run properly.

	#!RB Adric.Worley
	#!tests none

	#!ROBOMERGE-SOURCE: CL 3642084 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3648219 on 2017/09/18 by Sam.Zamani

	#!tencent
	fixed Tencent module thirdparty dll runtime dependency paths
	fixed DLLHandle not being set

	#!rb none
	#!tests none

Change 3647998 on 2017/09/18 by Clayton.Langford

	Reorganized CardFXTests to the appropriate location for this branch as part of the merge associated with 3645763.

	#!tests compiled
	#!rb Adric.Worley

Change 3647817 on 2017/09/18 by James.Golding

	Mirror fix from 4.18 release stream (CL 3647799) to Dev-General
	Fix out-of-bounds access of cloth mapping data during CPU skinning
	#!rb benn.gallagher
	#!jira UE-49628
	#!fyi benn.gallagher
	#!tests convert RiftMage to static mesh

Change 3647749 on 2017/09/18 by Benn.Gallagher

	Small change to windows memory intrinsics in PhysX to avoid VS compilation bug on windows causing restrict parameters to bleed the restrict into the calling scope.

	This caused matrix transposition to fail after the data was copied in using memcpy

	BuildPhysX.Automation: Deploying PhysX & APEX Win64 libs.
	#!rb none
	#!tests Editor reimport of clothing assets

Change 3646242 on 2017/09/15 by Tyler.Cole

	Revert shared engine LocalMCP scripts.

Change 3646153 on 2017/09/15 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - Caching off HasActiveClothingAssets for SkeletalMeshes and ShouldApplyInteriorVolumes for SoundCues in non editor builds

	#!RB:daniel.lamb
	#!Tests: Ran cooked Client

	[CODEREVIEW] daniel.lamb, Benn.Gallagher, lina.halper, marc.audy

	#!ROBOMERGE-SOURCE: CL 3641934 in //Orion/Release-43/... via CL 3641936 via CL 3641940
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3646125 on 2017/09/15 by robomerge

	#!ROBOMERGE-AUTHOR: arne.schober
	OR - Sorting Primitive Components to increase I-Cache utilization and to keep the branch prediction alive during initviews.
	#!RB Marcus.Wassmer
	#!tests automated performance tests

	#!ROBOMERGE-SOURCE: CL 3641873 in //Orion/Release-43/... via CL 3641882 via CL 3641886
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3645861 on 2017/09/15 by clayton.langford

	#!CodeReview: clayton.langford, jason.bestimt, andrew.grant, jeff.williams

	Still need to move OrionTest.CardFXTest.cs to the correct location and generate the proper includes in the GauntletExtra csproj file. Will do this in a separate CL as advised by JeffW.

	Unresolved conflicts. clayton.langford, please merge this change by hand.
	//ROBOMERGE_ORION_Dev_General/Engine/Source/Programs/AutomationTool/NotForLicensees/Gauntlet/Gauntlet.Automation.csproj

	--------------------------------------
	Adding more card types to the automated tests. We now support all cards with an active ability and valid target types. This brings us to a current total of 40 cards for now, but new cards that fit the criteria will automatically be included once they are added.

	To execute the tests, either run a gauntlet test for CardFXTests or enterthe following command from the frontend: Automation RunTests OrionPerf.Effects.Cards

	Known issues: The following cards do not properly confirm their abilities and so produce invalid results: StaticTrap, LampLighter, ProtectiveSentry, and AstralLeap. Disabling these cards is nontrivial as the tests are automatically generated.

	#!tests ran local client/server, preflighted
	#!rb Ben.Salem
	#!rnx
	[FYI] Sean.Tobin, Hunter.Kent, Edward.King

	#!ROBOMERGE-SOURCE: CL 3641723 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3644062 on 2017/09/14 by Aaron.McLeran

	#!jira OR-44171 Some looping sounds are extremely loud
	#!rb Ethan.Geller
	#!tests run paragon, run near water river, don't observe looping sound being very loud

Change 3643901 on 2017/09/14 by Laurent.Delayen

	Integrated CL #!3604725 to fix bug with opening state machines from anim graph.

	#!rb none
	#!tests fixes bug
	#!FYI lina.halper

Change 3643641 on 2017/09/14 by Rob.Cannaday

	Fix unreachable code detected
	#!rb rob.cannaday
	#!tests Win64 compile

Change 3643326 on 2017/09/14 by Sam.Zamani

	#!tencent
	- temp disabled TerSafe.dll loading until staging issues can be resolved

	#!rb none
	#!tests none

Change 3643039 on 2017/09/14 by Sam.Zamani

	#!tencent
	- temp disabled TSS on servers due to linux build issues

	#!rb none
	#!tests none

Change 3642438 on 2017/09/13 by Rob.Cannaday

	Handle new analytics param types (number, string, etc)
	Stub implementation of FAnalyticsProviderETTencent DefaultAttrs
	#!rb rob.cannaday
	#!tests Win64 vs AI match

Change 3641655 on 2017/09/13 by Sam.Zamani

	#!tencent
	WIP added tss_sdk.dll (server) and TerSafe.dll (client)

	JIRA TEN-262 StoryAnti-Cheat SDK - TerSafe.dll 3rd party module for client
	JIRA TEN-197 StoryTSS SDK 3rd party module for dedicated servers

	#!rb none
	#!tests PC run with RegionCN.pak enabling tencent mode

Change 3641559 on 2017/09/13 by Bart.Hawthorne

	Fix up oodle dictionary generation scripts

	#!rb none
	#!jira none

Change 3641550 on 2017/09/13 by robomerge

	#!ROBOMERGE-AUTHOR: john.nielson
	Added more temp logging in attempt to find OrionOR-43600: Master Bug: Some hero ability FXs are missing in v43

	#!rb: none
	#!test: Pie

	#!ROBOMERGE-SOURCE: CL 3641546 in //Orion/Release-43/... via CL 3641548 via CL 3641549
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3641393 on 2017/09/13 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	We'd lilke to start using this on PS4 but the cost is very high (link-times are 60-90m!) so it needs to be something that is enabled selectively on the farm. I think we're going to consider it analogous to "Arxan" where it's on by default for Nightly/Standard builds in Release branches, but can be flipped off for quick turnarounds and is off in dev.

	Currently LTCG/LTO on PS4 is driven purely by bEnableLTOPerfBuilds / bEnableLTODevBuilds project settings. This change allows it to be specified as a command line UBT argument, and also preps the ground for targets to specify their own PGO file which would be used when LTO is enabled

	- Changed UBT option from -NoLTCG to -LTCG (I didn't see how it's possible to turn this on, since the default is false and adding the option also turns it false)
	- Added PGOInput option to TargetRules and passed through to compile environment
	- Updated UEBuildPS4.cs to that bAllowLTCG=true overrides settings in the ini file about what targets to have LTCG on for
	- Updated PS4 toolchain to use both LTO and PGO depending on what was set

	#!tests soaked locally, preflighted
	#!rb codereviewed

	FWIW here are before/after results for LTCG.

	Orion Performance report from 3 games and 1441.51 seconds
	MVP:    2.83 (Min: 2.05, Max: 3.22)
	HPM:    4.29 (Min: 4.24, Max: 4.37)
	AvgH:   2.77ms (Min: 2.08ms, Max: 4.16ms)
	GT:     12.88ms (Min: 12.68ms, Max: 13.25ms)
	RT:     13.71ms (Min: 13.48ms, Max: 14.08ms)
	GPU:    14.39ms (Min: 14.21ms, Max: 14.50ms)

	Orion Performance report from 3 games and 1440.49 seconds
	MVP:    1.42 (Min: 1.02, Max: 1.94)
	HPM:    3.25 (Min: 2.75, Max: 3.62)
	AvgH:   2.08ms (Min: 2.08ms, Max: 2.08ms)
	GT:     11.93ms (Min: 11.64ms, Max: 12.47ms)
	RT:     12.80ms (Min: 12.54ms, Max: 13.24ms)
	GPU:    14.10ms (Min: 13.91ms, Max: 14.27ms)

	#!ROBOMERGE-SOURCE: CL 3641352 in //Orion/Release-43/... via CL 3641354 via CL 3641357
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3640885 on 2017/09/13 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Limited warning to once every 10 secs.

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3640377 in //Orion/Release-43/... via CL 3640380
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3640875 on 2017/09/13 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fixed shipping config issue

	#!tests #!rb na

	#!ROBOMERGE-SOURCE: CL 3640328 in //Orion/Release-43/... via CL 3640362
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3640870 on 2017/09/13 by robomerge

	#!ROBOMERGE-AUTHOR: mieszko.zielinski
	Fixing CIS builds #!Orion

	The builds were failing because InitAsyncThread is being run as part of UHT, which doesn't usually include -DebugFX parameter, and warnings reported by UHT during reflection code generation are treated as errors.

	[CODEREVIEW] John.Nielson
	#!rb none
	#!test compilation

	#!ROBOMERGE-SOURCE: CL 3640310 in //Orion/Release-43/... via CL 3640361
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3640783 on 2017/09/13 by robomerge

	#!ROBOMERGE-AUTHOR: john.nielson
	More temporary logging for finding the missing FX issue.

	#!rb: none
	#!Test: Pie

	#!ROBOMERGE-SOURCE: CL 3640089 in //Orion/Release-43/... via CL 3640352
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3639910 on 2017/09/12 by Rob.Cannaday

	Build fix for AnalyticsETTencent
	#!rb rob.cannaday
	#!tests compile Win64 DebugGame Editor

Change 3639565 on 2017/09/12 by Laurent.Delayen

	SkeletalMeshComponent::InitAnim doesn't call Update and Eval anymore, but instead initializes transforms with cheaper ref pose, and relies on regular ticking for updating the pose, so we can take advantage of visibility related optimizations. Also RecalcRequiredBones uses correct predicted LOD level instead of defaulting to 0.

	#!rb lina.halper
	#!FYI lina.halper
	#!tests minion test lane, dropping meshes in a level, testing masterpose component at runtime.

Change 3639228 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Tools - Added ability to postmortem a PS4 devkit for last crash

	#!rb run locally
	#!tests none

	#!ROBOMERGE-SOURCE: CL 3639226 in //Orion/Release-43/... via CL 3639227
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3639075 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: jeff.williams
	Specifically requesting 'all' configuration, to avoid missing manifest in jar.

	#!ROBOMERGE-SOURCE: CL 3639072 in //Orion/Release-43/... via CL 3639074
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3639022 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: dan.hertzka
	Remove dependency on the editor style set in the WidgetReflector
	- Fixes a crash when trying to use the reflector in a client cooked build
	- Also updated Focusable column name to shared var

	#!rb none
	#!tests Widget Reflected in a cooked build

	#!ROBOMERGE-SOURCE: CL 3639020 in //Orion/Release-43/... via CL 3639021
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3638984 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: john.nielson
	Added some more temp logging to get to the bottom of the missing FX issue.  OR-43600 : Master Bug: Some hero ability FXs are missing in v43

	#!rb: none
	#!test: Pie

	#!ROBOMERGE-SOURCE: CL 3638982 in //Orion/Release-43/... via CL 3638983
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3638696 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Swapped problematic ensure to LogError, made draft obey notimeouts.

	#!tests compiled
	#!rb none
	[at daniel.lamb]

	#!ROBOMERGE-SOURCE: CL 3638693 in //Orion/Release-43/... via CL 3638695
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3638644 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Third time's the charm

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3638620 in //Orion/Release-43/... via CL 3638636
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3638628 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Removed ensure in a PS4 friendly way

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3638550 in //Orion/Release-43/... via CL 3638551
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3638583 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Removed ensure to get a cook

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3638476 in //Orion/Release-43/... via CL 3638478
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3638545 on 2017/09/12 by Bart.Hawthorne

	Add analytics for oodle compression percentages

	#!rb ryan.gerleve, wes.hunt
	#!tests ran a 2 person game with dedicated server and verified analytics were reported
	#!jira OR-26386

Change 3638172 on 2017/09/12 by robomerge

	#!ROBOMERGE-AUTHOR: marcus.wassmer
	Duplicate 3620803
	Partial Fix for Dither Opacity Mask
	#!rb none
	#!tests PC monolith

	#!ROBOMERGE-SOURCE: CL 3637837 in //Orion/Release-43/... via CL 3637838
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3637643 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: jeff.williams
	Fixing version stream to Main

	#!ROBOMERGE-SOURCE: CL 3637373 in //Orion/Release-43/... via CL 3637466
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3637524 on 2017/09/11 by Andrew.Grant

	Merging EngineTest and latest Gauntlet using //Orion/Dev-General/_To_//UE4/Orion-Stating

	#!tests build Win64 editor, ran tests locally
	#!rb none

Change 3637402 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Gauntlet -  Restored logging of runoptions when not verbose

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3636838 in //Orion/Release-43/... via CL 3636840
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3637357 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Made 'none' test specify Attended

	#!rb Daniel.Lamb
	#!tests compiled

	#!ROBOMERGE-SOURCE: CL 3636811 in //Orion/Release-43/... via CL 3636812
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3637305 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: john.nielson
	Added temporary debug logging cmd line option for finding Jira OrionOR-43600

	#!RB: none
	#!Test: Pie
	[at David.Ratti]

	#!ROBOMERGE-SOURCE: CL 3636730 in //Orion/Release-43/... via CL 3636732
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3636549 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - Integrating CL 3633162 from Dev-Rendering to guard around potential issues

	#!RB:none
	#!Tests:none

	[CODEREVIEW] uriel.doyon

	#!ROBOMERGE-SOURCE: CL 3636541 in //Orion/Release-43/... via CL 3636542
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3636507 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: dan.hertzka
	[OR-44013] & [OR-43780] - Hamstrung the old long-form rich text formatting functions to remove unsupported formatting immediately. Will be cleaning up API and usages in DG.

	Also:
	- Added distance formatting type for simple ability description values (will automatically append u to the value)
	- SimpleAbility description values can now go up to two decimal places

	Engine:
	- Modified FGameplayTag::ImportTextItem to account for redirects when establishing TagName

	#!rb Matt.Schembari
	#!tests PIE OrionEntry & FrontEndScene - various bug repros

	#!ROBOMERGE-SOURCE: CL 3636370 in //Orion/Release-43/... via CL 3636412
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3636372 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Implement fast particle pool memory.
	Default is 2mb, automatically cleans up oldest used pool slots.
	Estimated 1/4 time for STAT_PARTALLOC.
	#!rb Jason.Bestimt
	#!test paragon ps4 cooked

	#!ROBOMERGE-SOURCE: CL 3636045 in //Orion/Release-43/... via CL 3636048
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3636319 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fixed issue with fatal error message not being shown in reports.

	Fixed issue where some cancelled tests reported as succeeded

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3635951 in //Orion/Release-43/... via CL 3635955
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3636264 on 2017/09/11 by robomerge

	#!ROBOMERGE-AUTHOR: jason.bestimt
	#!ORION_43 - Integrating CL 3609090  && 3621546 from Dev-Rendering to help with Render Thread mip map streaming performance

	#!RB:none
	#!Tests: Ran client cooked build

	[CODEREVIEW] daniel.lamb, andrew.grant, Uriel.Doyon
	[QAREVIEW]

	#!ROBOMERGE-SOURCE: CL 3635817 in //Orion/Release-43/... via CL 3635819
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3635288 on 2017/09/10 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Added CleanDevices command and task that runs nightly in Dev-Gen to remove old builds from devices
	Fixed missing - in SoloSmoke args that were causing trailing params to be lost

	#!tests preflighted, ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3635286 in //Orion/Release-43/... via CL 3635287
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3635145 on 2017/09/09 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Bumped script version to pick up SDK change for patch packages
	#!rb none
	#!tests none

	#!ROBOMERGE-SOURCE: CL 3635143 in //Orion/Release-43/... via CL 3635144
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3635097 on 2017/09/09 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Added cleardevices option to Gauntlet that removes all devices after running.

	Added to Orion build scripts

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3635090 in //Orion/Release-43/... via CL 3635091
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3634985 on 2017/09/09 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Cleaned up some logging around device failures

	Attempt to handle "Too Many Connections" error at a lower level

	Added removeall command to PS4DevkitUtil (not yet used)

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3634983 in //Orion/Release-43/... via CL 3634984
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3634897 on 2017/09/09 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Checking in change to timeouts to test theory

	#!tests ran test locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3634895 in //Orion/Release-43/... via CL 3634896
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3634765 on 2017/09/08 by robomerge

	#!ROBOMERGE-AUTHOR: marcus.wassmer
	Scrape another .05ms out of GPU particle simulation.

	#!rb none
	#!tests ps4 monolith

	#!ROBOMERGE-SOURCE: CL 3634763 in //Orion/Release-43/... via CL 3634764
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3634422 on 2017/09/08 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fix for Gauntlet shutdown issue on builders
	Fix for BP editing crash from Dev-Framework

	#!tests ran locally
	#!rb none!

	#!ROBOMERGE-SOURCE: CL 3634313 in //Orion/Release-43/... via CL 3634314
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3634139 on 2017/09/08 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Gauntlet - provision devices on demand. Cuts down logging and reduces issue of kits having too many TM connections when tests on different branches are running

	#!tests ran locally with single and file-based devices
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3633919 in //Orion/Release-43/... via CL 3633921
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3633799 on 2017/09/08 by robomerge

	#!ROBOMERGE-AUTHOR: laurent.delayen
	Fixed crash when on Turrets, when changing their MeshUpdate mode to Montages only.

	#!rb none
	#!tests monolith02 turrets
	[CODEREVIEW] lina.halper

	#!ROBOMERGE-SOURCE: CL 3633600 in //Orion/Release-43/... via CL 3633601
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3633647 on 2017/09/08 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Possible fix for OR-43926 from Arne

	#!tests ran locally, observed no ensures or negative side-effects in UI or HUD
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3633278 in //Orion/Release-43/... via CL 3633281
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3633637 on 2017/09/08 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Upped timeout for editorbased tests
	#!tests #!rb none

	#!ROBOMERGE-SOURCE: CL 3633271 in //Orion/Release-43/... via CL 3633274
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3632565 on 2017/09/08 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Removed some test code...
	#!tests #!rb none

	#!ROBOMERGE-SOURCE: CL 3632563 in //Orion/Release-43/... via CL 3632564
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3632385 on 2017/09/07 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	More improvements to device handling.
	Specifically PS4 targets now force-kill other connection if they're not in use, and fixed an edge case where devices could be left in TM and cause problems.

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3632383 in //Orion/Release-43/... via CL 3632384
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3632177 on 2017/09/07 by robomerge

	#!ROBOMERGE-AUTHOR: thomas.ross
	Merging CL#!3631888 from //UE4/Dev-Framework to //Orion/Dev-Release-43
	#!rb none
	#!test local commandlet

	#!ROBOMERGE-SOURCE: CL 3632175 in //Orion/Release-43/... via CL 3632176
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3632131 on 2017/09/07 by robomerge

	#!ROBOMERGE-AUTHOR: marcus.wassmer
	Fix a bug with new local vector-field only project setting
	#!rb none
	#!tests ps4 monolith

	#!ROBOMERGE-SOURCE: CL 3632127 in //Orion/Release-43/... via CL 3632130
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3632034 on 2017/09/07 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fixed issue where problem devices were reset each attempt

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3632029 in //Orion/Release-43/... via CL 3632032
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3631812 on 2017/09/07 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	More improvements to device management in Gauntlet

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3631602 in //Orion/Release-43/... via CL 3631604
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3631787 on 2017/09/07 by robomerge

	#!ROBOMERGE-AUTHOR: laurent.delayen
	Fix for OR-42922, reset TickRecords when doing 'OnlyTickMontagesWhenNotRendered' since the montage will appear to have jumped when regular ticking resumes.

	#!rb none
	[CODEREVIEW] martin.wilson
	#!test bot game

	#!ROBOMERGE-SOURCE: CL 3631532 in //Orion/Release-43/... via CL 3631536
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3631251 on 2017/09/07 by Andrew.Grant

	Additional device selection improvements

	#!tests #!rb na

Change 3630861 on 2017/09/07 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Imrpoved device selection to randomize pick order, exclude devices that failed on the last round, and provide more info as to the constraints of the pool

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3630857 in //Orion/Release-43/... via CL 3630858
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3630620 on 2017/09/07 by Laurent.Delayen

	RigidBody anim node: Maintain Bone Velocity transfers through LOD changes. Refactored bone velocity transfer to be queued one frame, while we let final animation pose through. Added support for transferring angular velocity. If update rate is less than 30FPS, break down update into several iterations (max 4). This is to support URO, which can update animations at 15 FPS for minions.

	#!rb Ori.Cohen
	#!codereview benn.gallagher
	#!tests lane minions test map

Change 3629990 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: daniel.lamb
	Fix for gpu hang on ps4.
	#!rb Marcus.Wassmer
	#!test Paragon cooked ps4
	#!jira OR-43835

	#!ROBOMERGE-SOURCE: CL 3629890 in //Orion/Release-43/... via CL 3629891
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629980 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Moved some missed code to FDebug::HasAsserted()

	#!tests na
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3629794 in //Orion/Release-43/... via CL 3629795
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629975 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: marcus.wassmer
	Project optimization to only support local vector fields.
	separate 'stat emitters' into 'stat emitters' and 'stat emittersrt' to separate gamethread cost from renderthread cost.
	#!rb olaf.piesche
	#!tests monolith ps4/pc

	#!ROBOMERGE-SOURCE: CL 3629782 in //Orion/Release-43/... via CL 3629783
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629917 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: marcus.wassmer
	Fix for sizebyspeed on ps4
	#!rb Simon.Tovey
	#!tests pc

	#!ROBOMERGE-SOURCE: CL 3629660 in //Orion/Release-43/... via CL 3629661
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629620 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Always get the rest result from nodes, this is where UnrealTestNode parses logs for errors

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3629618 in //Orion/Release-43/... via CL 3629619
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629554 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Restored screenshot support to gauntlet (now driven externally)

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3629551 in //Orion/Release-43/... via CL 3629553
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629495 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: don.eubanks
	Stat panel will only show stat changes or improvements that come from Item sources (cards / gems)

	#!rb dan.hertzka
	#!tests Compile DebugGame Editor Win64 / Shipping Client PS4 / PIE
	[RN] Card Shop now only considers Attribute Point effects and Card effects when calculating the bonuses for stats on the stats panel.  No more giant HP/MP regen numbers when standing in base!

	#!ROBOMERGE-SOURCE: CL 3629334 in //Orion/Release-43/... via CL 3629337
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629468 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Replaced global access to bHasAsserted to FDebug::HasAsserted() and added FDebug::IsEnsuring()

	Changed GameThreadWaitForTask so it won't timeout if an ensure is ocurring on a different thread.

	#!tests ran locally
	#!rb none
	[at marcus.wassmer]

	#!ROBOMERGE-SOURCE: CL 3629246 in //Orion/Release-43/... via CL 3629296
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629410 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	[CODEREVIEW] andrew.grant, jason.bestimt, jeff.williams

	Unresolved conflicts. andrew.grant, please merge this change by hand.
	//ROBOMERGE_ORION_Main/Engine/Plugins/Runtime/PacketHandlers/CompressionComponents/Oodle/Source/ThirdParty/NotForLicensees/Oodle/Oodle.Build.cs

	--------------------------------------
	Fix for generating project files
	#!tests GPF
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3629088 in //Orion/Release-43/... via CL 3629174
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629369 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Ignore pak signing if fileopenorder is specified (temp? workaround for deadlock in Orion tests)

	#!rb none
	#!tests verified signing is disabled and game gets to main menu with -fileopenlog
	[at graeme.thornton]

	#!ROBOMERGE-SOURCE: CL 3628814 in //Orion/Release-43/... via CL 3628816
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3629254 on 2017/09/06 by Laurent.Delayen

	URO: ensure we don't skip more frames than desired when switching LODs.

	#!rb lina.halper
	#!codereview martin.wilson, benn.gallagher
	#!test lane minions test map

Change 3629191 on 2017/09/06 by Laurent.Delayen

	Added CopyAndAssign to BoneContainer. To help transfer Cached Poses through LOD transitions.

	#!rb lina.halper
	#!codereview martin.wilson
	#!test lane minions test map

Change 3629130 on 2017/09/06 by Laurent.Delayen

	AnimInstance: tweaked debug display of AnimSequences, and added DeltaTime to AnimInstance debug.

	#!rb none
	#!tests lane minion test map

Change 3628300 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fixed exception that could occur during tests if all devices were in use
	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3628298 in //Orion/Release-43/... via CL 3628299
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3627915 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Undoing Oodle check for the time being

	#!tests #!rb none

	#!ROBOMERGE-SOURCE: CL 3627913 in //Orion/Main/...
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3627875 on 2017/09/06 by Jason.Bestimt

	#!ORION_DG - Merge of CL#! 3626655 from Dev-Framework to fix assetimportdata loading (allowing for re-import of curve tables)

	#!RB:none
	#!Tests:none

	#!CodeReview: andrew.grant, alex.gillies, colin.fogle, benjamin.crocker
	#!ROBOMERGE: MAIN, 43

Change 3627694 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Improved warnings

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3627691 in //Orion/Release-43/... via CL 3627693
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3627642 on 2017/09/06 by robomerge

	#!ROBOMERGE-AUTHOR: david.ratti
	More logging for OR-43892 and OR-43779
	#!rb none
	#!tests compile

	#!ROBOMERGE-SOURCE: CL 3627640 in //Orion/Release-43/... via CL 3627641
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3627247 on 2017/09/05 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Removed check that turns out to be bogus

	#!tests #!rb none

	#!ROBOMERGE-SOURCE: CL 3627245 in //Orion/Release-43/... via CL 3627246
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3627240 on 2017/09/05 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Added compile-time check for presence of Oodle files to prevent future hard-to-debug-runtime-failures

	#!tests compiled OrionClient
	[at daniel.lamb] #!rb none

	#!ROBOMERGE-SOURCE: CL 3627237 in //Orion/Release-43/... via CL 3627239
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3627211 on 2017/09/05 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Added ensure for OR-43777

	#!tests compiled
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3627209 in //Orion/Release-43/... via CL 3627210
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3626839 on 2017/09/05 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Added wait to PS4DevkitUtil before trying to postmortem crashdump

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3626833 in //Orion/Release-43/... via CL 3626837
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3626755 on 2017/09/05 by Rob.Cannaday

	Merge //Orion/Release-Tencent to //Orion/Dev-General
	Some features need to be re-implemented as noted by #!ifdef TODO_TENCENT
	TODO:  Figure out how to have OnlineSubsystemTencent be Enabled by default in OrionGame.uproject, some calls to IOnlineSubsystem::IsLoaded(TENCENT_SUBSYSTEM) will return true even though the OSS is disabled by config because the module itself is loaded
	#!rb sam.zamani
	#!lockdown andrew.grant
	#!tests Win64 vs AI match, QA smoke test
	#!fyi sam.zamani

Change 3626285 on 2017/09/05 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fixed BaseDir argument not being correctly applied in tests

	Added check for LowLevelFatalError to log parser. Don't consider RequestExit's clean if StaticShutdownAfterError was called

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3626280 in //Orion/Release-43/... via CL 3626284
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3626221 on 2017/09/05 by robomerge

	#!ROBOMERGE-AUTHOR: david.ratti
	Queue OnRep_ReplicatedMovement for simulated proxy OrionChars for a single end of frame call. This is to address when clients can't keep up with server's send rate and end up processing multiple packets / actor bunches in a single frame. Rather than handling multiple bunches with movement updates and calling OnRep_ReplicatedMovement every time, this will call the OnRep once at the end of the frame.

	Can be toggled off via UOrionRuntimeOptions::bQueueSimulatedProxyOnRepMovement

	#!rb none
	#!tests verified OnRep_Movement doesn't show up in profiler when client running at < 60hz

	[at Laurent.Delayen] [FYI] [at Andrew.Grant]

	#!ROBOMERGE-SOURCE: CL 3626215 in //Orion/Release-43/... via CL 3626219
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3625925 on 2017/09/05 by Laurent.Delayen

	If using URO with bShouldUseLodMap and we're missing higher LOD numbers into our LOD Map, use highest available settings (below our current LOD number). Instead of defaulting to high quality (eval every frame), which is certainly not what we want.

	#!rb benn.gallagher
	#!codereview martin.wilson, lina.halper
	#!tests lane minion map

Change 3624051 on 2017/09/02 by Andrew.Grant

	Fixed issue with test params not being set.

	Went through OrionBuild.xml and added explicit configs arguments to tests where missing. Also set order of args to tests as "-platform -config" to improve readability.

	#!tests preflighted
	#!rb none
	#!review-3624052 @ben.salem

Change 3623907 on 2017/09/02 by Andrew.Grant

	Fixed usesyncedbuild option being broken in Gauntlet

	#!codereview @daniel.lamb
	#!tests compiled
	#!rb none

Change 3623906 on 2017/09/02 by David.Ratti

	Fix some issues where GameplayCues played on an OrionBaseActor wouldn't be properly translated for skin overrides

	#!rb none
	#!test future wukong pie

Change 3623766 on 2017/09/01 by Daniel.Wright

	[Copy] Volume materials on static meshes now voxelize the mesh's Object space bounding box
	#!rb none
	#!Tests PC QAGame

Change 3623518 on 2017/09/01 by Don.Eubanks

	Fix for Shipping Client PS4

	#!rb none
	#!tests Compile Shipping Client PS4
	#!fyi daniel.lamb andrew.grant

Change 3623515 on 2017/09/01 by Daniel.Wright

	[Copy] Volume materials applied to static meshes operate on the object's bounding sphere
	#!rb none
	#!TESTS QAGame PC

Change 3623503 on 2017/09/01 by Daniel.Wright

	[Copy] Fixed ObjectRadius in Volume domain materials
	#!rb none
	#!TESTS none

Change 3623102 on 2017/09/01 by Marcus.Wassmer

	Add GT (gamethread), AT (async task), RT (renderthread) to stuff in 'stat particles' to make things easier to understand
	#!rb none
	#!tests monolith on PS4
	#!fyi olaf.piesche,tim.elek

Change 3623096 on 2017/09/01 by Marcus.Wassmer

	checkslow -> check to find issues with ILC
	#!rb none
	#!tests ran monolith on ps4

Change 3622744 on 2017/09/01 by Laurent.Delayen

	RigidBody anim node: Added option 'bTransferBoneVelocities' to transfer bone velocities to simulation upon start, so ragdolls transition seamlessly from kinematic (animation) to simulation. (just linear velocity for now).
	Added 'bFreezeIncomingPoseOnStart' option to freeze incoming pose and stop ticking/evaluating rest of the AnimGraph. Also prevents animation animating non simulated bodies.
	Take gravity from movement component if present, to inherit custom gravity scaling.
	Use proper animation deltatime, rather than world deltatime, as that would cause the simulation to run in slow motion when URO was used.
	If LOD enables new bodies, they are now initialized during simulation.
	Only write transforms from simulated bodies. Stop considering children of simulated bodies, since SkelControl system handles that by default.
	Cached MeshBoneIndexToBodyIndex on initialization to avoid linear search during InitializeBoneTransforms, on LOD change.
	Added AnimStats for PreUpdate, Update and Eval.

	#!rb ori.cohen
	#!codereview ori.cohen, lina.halper, benn.ghallager
	#!tests lane minion test map

Change 3622743 on 2017/09/01 by Laurent.Delayen

	Added UpdateComponentPose_AnyThread and EvaluateComponentPose_AnyThread to AnimNode_SkeletalControlBase to allow overriding these in child classes.

	#!rb lina.halper
	#!tests lane minion test map

Change 3622742 on 2017/09/01 by Laurent.Delayen

	'showdebug animation' now shows current LOD, various counters to know if Update/Eval/Cachebones/Init was called. Also URO settings.
	Renamed DisplayDebugCustom to DisplayDebugInstance.

	#!rb lina.halper
	#!tests lane minion test map

Change 3622738 on 2017/09/01 by Laurent.Delayen

	Removed unused USkinnedMeshComponent::AnimUpdateRateSetParams

	#!rb lina.halper
	#!tests lane minion test map

Change 3622666 on 2017/09/01 by Jian.Ru

	Fix incorrect grouping when FHierarchicalStaticMeshSceneProxy::GetDynamicMeshElements
	#!jira UE-48972, OR-43455
	#!rb Chris.Bunner
	#!tests editor

Change 3622579 on 2017/09/01 by Andrew.Grant

	Fixed shutdown issues with some tests being detected as errors

	Simplied and cleanup some things in state management of tests.

	#!tests ShortSOloGame test locally
	#!rb none

Change 3622322 on 2017/09/01 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fix for OR-40366 from v43

	#!tests compiled
	#!rb Aaron.McLeran

	#!ROBOMERGE-SOURCE: CL 3620707 in //Orion/Release-42.4/... via CL 3621208 via CL 3622295
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3621054 on 2017/08/31 by Andrew.Grant

	Merging Gauntlet refactor from //Orion/Dev-General/_To_//UE4/Orion-Stating

	#!tests preflighted
	#!rb none

Change 3620755 on 2017/08/31 by Daniel.Lamb

	Added a pooling system for FDynamicSkelMeshObjectDataGPUSkin.  Doesn't add a lot of memory over head.  Cleans out every few allocations.
	#!rb Jason.Bestimt
	#!test Cooked paragon ps4

Change 3620541 on 2017/08/31 by Ben.Salem

	Tag all nightly gauntlet report emails with [NightlyAuto] for easier sorting.
	#!rb none
	#!tests compiled.

Change 3620443 on 2017/08/31 by Mieszko.Zielinski

	Extended EQSTestingPawn with an option to specify its nav agent properties to affect navigation-related EQS tests/features #!UE4

	#!rb none
	#!test golden path

Change 3620428 on 2017/08/31 by Aaron.McLeran

	#!jira OR-40366 Bringing fix from FN and Anim-Phys to Dev-General

	#!rb Ethan.Geller
	#!tests there is no internal repro. Rare crash online. Confirmed fixed in FN crash reports.

Change 3620411 on 2017/08/31 by Mieszko.Zielinski

	Fix to removal of simuli sources from the AISense_Sight #!UE4

	Made sure given source gets removed from ObservedTargets.

	#!rb none
	#!test golden path

Change 3620343 on 2017/08/31 by Ben.Salem

	Add hitch reporting into FX tests. Layout is definitely WIP but we want the data in those reports to iterate on.
	#!rb clayton.langford
	#!tests ran shallow and normal FX tests, generated hitches to display.

Change 3620050 on 2017/08/31 by Luke.Thatcher

	[ORION] [PS4] [^] Merging compile fix in UEBuildPS4.cs (CL 3619919) from //UE4/Dev-Console/... to //Orion/Dev-General/...
	 - USE_DEFRAG_ALLOCATOR was not always defined in all cases.

	#!rb Daniel.Lamb
	#!tests none

Change 3619836 on 2017/08/31 by Andrew.Grant

	Merging //UE4/Main @ 3613306 (largely 4.17 fixes and an update from rendering team)

	#!tests preflighted, ran locally
	#!rb none

Change 3618597 on 2017/08/30 by Dan.Hertzka

	Fixed Additive UI materials not being affected by the widget opacity
	- We needed to multiply the sampled color by the alpha of the vertex color

	Also added fade in anim for scoreboard when showing after the endgame cinematic

	#!rb Nick.Darnell
	#!tests Widget alpha affects additive materials

Change 3618441 on 2017/08/30 by Laurent.Delayen

	Added AnimInstance::DisplayDebugCustom, to display custom debug info before AnimGraph display.

	#!rb lina.halper
	#!tests lane minions

Change 3618404 on 2017/08/30 by Paul.Moore

	- Update to new MMS client API from Fortnite.
	- Add MMS API plugin.
	#!rb none
	#!tests matchmaking, v2 MMS matchmaking, draft lobby.
	#!lockdown andrew.grant

Change 3618167 on 2017/08/30 by Marcus.Wassmer

	Fix fog on PS4, also volume texture clears.
	#!rb luke.thatcher
	#!fyi Jordan.Walker
	#!tests ran monolith on ps4

Change 3617911 on 2017/08/30 by Andrew.Grant

	Fix for OR-43401, lighting remaining unbuilt

	#!tests ran cook, verified that lighting for bp components is now correctly found.
	#!rb marc.audy

Change 3617765 on 2017/08/30 by Andrew.Grant

	Fix for lighting always being unbuilt on some blueprints

	#!tests cooked data and verified BP components have the correct transform and receive cached lighting data
	#!rb marc.audy, bp-team

Change 3617757 on 2017/08/30 by Laurent.Delayen

	clang fix

	#!rb none
	#!tests none

Change 3617700 on 2017/08/30 by Laurent.Delayen

	Added PreEvalSkelControl_AnyThread to SkelControlBase, to allow capture of incoming pose before SkelControl is evaluated.

	#!rb lina.halper
	#!tests lane minions map

Change 3617695 on 2017/08/30 by Laurent.Delayen

	Added Empty() to FBaseCompactPose and FCSPose, to release allocated arrays.

	#!rb lina.halper
	#!tests test lane minions map

Change 3616757 on 2017/08/29 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Fix for OR-43459 from Laurent

	#!tests na
	#!rb Lina.Halper, Andrew.Grant

	#!ROBOMERGE-SOURCE: CL 3615643 in //Orion/Release-42.3/... via CL 3615645 via CL 3615649
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3616745 on 2017/08/29 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	[NULL MERGE]
	Locked net version to 3609966 in anticipation of patch

	#!rb #!tests na

	#!ROBOMERGE-SOURCE: CL 3615584 in //Orion/Release-42.3/... via CL 3615592 via CL 3615597
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3616551 on 2017/08/29 by Daniel.Lamb

	Fix memory leak in paragon.
	#!rb Andrew.Grant
	#!test Paragon ps4

Change 3613700 on 2017/08/28 by Andrew.Grant

	Integrated r.Shadow.UnbuiltPreviewInGame support from Dev-Rendering (reduces cost of rendering unbuilt lighting). Set to off for Orion

	Renabled r.Cache.UpdatePrimsTaskEnabled

	#!tests ran locally
	#!rb none

Change 3613694 on 2017/08/28 by Andrew.Grant

	Added -teamsize argument to Orion none test.

	#!tests ran None test :)
	#!rb none

Change 3613638 on 2017/08/28 by Ben.Salem

	Hide threshold colors for Perf tests on Thread times when in development. Add hyperlinks to description videos for Shallow tests. Support for linking new videos on other tests is already in for when videos are created.
	#!rb clayton.langford
	#!tests Ran shallow and deep test for multiple characters.

Change 3612731 on 2017/08/28 by Chris.Bunner

	[DUPLICATE] CL 3572421 - Edge case in lazyobjptr assignment failing for landscape collision components which causes grass data to be flushed during cook.
	#!rb
	#!fyi Robert Manuszewski, Andrew.Grant, Daniel.Lamb
	#!tests Cooking/running simple scene with grass foliage
	#!jira UE-48698, OR-42612

Change 3612695 on 2017/08/28 by Andrew.Grant

	Added longtimeouts option that uses TimeoutMultiplierForUnoptimizedBuilds value for net connections to solve issue where nomcp can timeout due to non-async loading

	Moved Gauntlet-in-shipping determination to OrionClient.Target.cs so it can be enabled with other things.

	#!tests ran NoneTest with -nomcp
	#!rb none

Change 3612002 on 2017/08/27 by Andrew.Grant

	Fix for crash seen during nightly tests

	#!tests baseline perf didn't crast 3/3
	#!rb none

Change 3611980 on 2017/08/27 by Andrew.Grant

	PS4DevkitUtil post-mortem improvements to logging
	#!tests run ShortSoloGame
	#!rb none

Change 3611758 on 2017/08/26 by Andrew.Grant

	Fix for warning

	#!tests #!rb na

Change 3611737 on 2017/08/26 by Andrew.Grant

	Merging optimizations 3517039, 3545241, & 3545347 from Dev-Rendering

	3517039 -

	GitHub #!2655: Optimization for shadow map resolution selection for spot lights

	* Use the radius of the inscribed sphere at the cone end as the spot light's screen radius

	Note: slight drop of shadow quality of spot lights may occur when they are far away from the camera. This is intended, since before this optimization they tend to be always rendered with the maximum shadow map resolution (2048), which is very costly

	3545241 -

	Fixed spotlight whole scene shadows using a radius 2x too long

	3545347 -

	Fixed shadow occlusion culling broken by shadowmap caching change.  FProjectedShadowKey is now computed correctly for whole scene shadows and SDCM_StaticPrimitivesOnly shadowmaps will fall back to the query for a SDCM_MovablePrimitivesOnly, since the static primitives shadowmap's query is not issued every frame.
	#!rb none
	#!tests compiled

Change 3611718 on 2017/08/26 by andrew.grant

	#!CodeReview: andrew.grant, jason.bestimt, jeff.williams

	Unresolved conflicts. andrew.grant, please merge this change by hand.
	//ROBOMERGE_ORION_Dev_General/Engine/Source/Programs/AutomationTool/NotForLicensees/Gauntlet/Unreal/Gauntlet.UnrealLogParser.cs

	--------------------------------------
	Improved parsing of callstacks and errors in test logs
	Added unit test for error parsing

	#!tests ran locally, unit tests
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3611709 in //Orion/Release-42.3/... via CL 3611710 via CL 3611711
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3611704 on 2017/08/26 by robomerge

	#!ROBOMERGE-AUTHOR: andrew.grant
	Test fixes - addresses issue with memory report failing

	#!tests ran locally
	#!rb none

	#!ROBOMERGE-SOURCE: CL 3611695 in //Orion/Release-42.3/... via CL 3611702 via CL 3611703
	#!ROBOMERGE-BOT: ORION (Main -> Dev-General)

Change 3611683 on 2017/08/26 by Andrew.Grant

	Upgraded PS4 SDK to 4.508.111

	#!tests SoloGames locally
	#!rb none

Change 3611466 on 2017/08/25 by Andrew.Grant

	Changed none test to use monolith02 by default

	#!tests compiled
	#!rb none

Change 3611167 on 2017/08/25 by Laurent.Delayen

	Reset UpdateCounter in AnimProxy when initialized, to force an update if rendered without updated.

	#!rb none
	#!tests lane minions
	#!codereview martin.wilson

Change 3610850 on 2017/08/25 by dan.hertzka

	Unclog Robomerge

	#!rb none
	#!tests none

Change 3610325 on 2017/08/25 by Andrew.Grant

	Compile fix for PS4

	#!tests compiled
	#!rb none

Change 3610018 on 2017/08/25 by Laurent.Delayen

	UE-48827, OR-43346, OR-43345 Fix for SingleNodeInstances not getting ticked properly. Due to them not increasing UpdateCounter, and forcing a tick even if we're doing parallel ticking later.

	#!rb lina.halper
	#!tests venus ult on minion lane test map

Change 3609967 on 2017/08/25 by Daniel.Lamb

	Merging using //Fortnite/Main/->//Orion/Dev-General/
	Bringing across several changes to the texture streamer and budgets from fortnite so as to reduce our garlic memory pool slack for PS4.

	CL 3526904 [FORTNITE] [PS4] [!] Fix blurry textures in shipping.
	 - The texture streaming manager has additional logic in shipping builds which caused textures to never stream back in once they had streamed out.
	 - Added an extra flag to reset mip bias values when texture memory budget is increased.
	#!rb Uriel.Doyon
	#!jira FORT-45385
	#!jira FORT-47739

	CL 3505459 [FORTNITE] [PS4] [~] Memory savings for Fortnite on PS4.
	 - Disabled LLM. This was increasing the libc heap from 32MB to 100MB in builds with STATs enabled.
	 - Reduced Libc heap size from 32MB to 8MB. The game only uses 2-3 MB of this heap space, so additional memory is wasted.
	 - Removed "RESERVED_MEMORY_SIZE" allocation. This is just wasting 1 MB unnecessarily. There is already ~1.5 MB of unallocated direct memory due to alignment requirements of the garlic/onion heaps.
	#!jira FORT-45229
	#!rb Ben.Woodhouse


	CL 3564368
	LLM Changes

	Summary:
	LLM now has 3 stat pages, stat LLM for engine allocations, LLMPlatform for OS allocations and LLMOverhead.
	Changes where LLM hooks into the various allocation functions and pools.
	Added more LLM tracking scopes.
	Changed the way LLM gets its internal memory.
	Writing stats out to csv
	Fixed a few bugs with the tracker code

	Details:
	* re-enabled LLM by default in Dev builds for XB1 and PS4
	* Reduced overhead to 30MB when LLM is defined in but disabled (this will be removed in a future update)
	* track allocations made from the defrag pool (PS4)
	* track non-drfrag pool garlic allocations (PS4)
	* track allocations made from PS4 malloc
	* combined the RHI and Malloc trackers into the Default tracker
	* changed stat groups to LLM, LLMPlatform and LLMOverhead
	* OnLowLevelAlloc how takes a default tag to be used is no tag scope has been set
	* XMemAlloc now uses AllocationType if no LLM scope has been set
	* renamed VirtualMap to LLMMap
	* added global function pointers for LLMMap to use to allocate memory. Using malloc to allocate memory meant that we couldn't track that memory using LLM. LLM now uses the lowest level OS function depending on the platform. If the platform doesn't set these fiunction pointers LLM will be disabled.
	* support for tracking allocations that move in memory (for the PS4 defrag allocator)
	* support for tracking explicit memory without pausing the tracker
	* LLMCsvWriter for writing out the LLM stats periodically. Enable with -LLMCSV command line arg
	* fixed check in FNameToTag. It was checking the wrong value when verifying the name index
	* show a warning on screen if LLM has been enabled without debug memory enabled (on consoles)
	* fixed program size tracking
	* fixed bug with tag scopes being tracked in all trackers. This caused allocations to be counted in stats that were not shown in the tracker. The tracker is now passed in to the scope.
	* optimised FLLMScopedTag so that it only calls the singleton once when disabled (instead of 3 times)
	* fixed problem in the Pause feature. It now only pauses the specified tracker instead of all of them.
	* fixed compile error when LLM_ALLOW_ASSETS_TAGS is disabled
	* changed default alloc size for LLMMap to 16K
	* Added lots more LLM scopes renamed some of the existing ones
	* made FMemBlock::Allocators private and added accessor functions, which include LLM tracking.
	* fixed LLM alignment tracking in CustomVirtualAlloc
	* implemented LLM on XB1 so that it properly tracks D3D12Allocations
	* added tracking to allocations that come from FMemBlock (excluding the defrag heap alloc) and removed tracking from Growable allocator
	* tracking of render targets
	* fixed LLM pool total column value.

	#!rb luke.thatcher

	CL 3565905
	[ATHENA] [PS4] [^] Merging new PS4 memory system from //UE4/Dev-Console/... to //Fortnite/Dev-Athena/...

	3458941 - Initial submission of new PS4 memory allocator.
	3485054 - Finer grain scope locks. Prevents contention stalls between threads where possible.
	3498440 - Flexible and framebuffer memory fallbacks
	3515704 - Add stats to new PS4 memory system.

	UEBuildPS4.cpp changes reimplemented as edit. Cannot merge as Dev-Athena's copy is too old to merge properly.

	#!rb Ben.Woodhouse

	CL 3580934
	[FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo.
	 - Neo has 512 MB more direct memory than a base kit.
	 - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB.

	#!rb Marcus.Wassmer
	#!jira FORT-50206

	CL 3590180
	[FORTNITE] [PS4] [!] Allow fallback to MallocBinned2 when Libc mspace heaps are exhausted.
	 - Since FORCE_ANSI_ALLOCATOR is not defined, the Libc heap only had 8 MB.
	 - Platform and 3rd party libraries that make libc malloc/free calls could potentially crash OOM if we exhausted the pool.
	 - Now, when no memory is left in the mspace heaps, we call into the base allocator (MallocBinned2). This has the added benefit that we should get proper OOM crashes/logs if a libc allocation fails.

	#!jira FORT-49700
	#!rb Aaron.McLeran

	CL 3593920
	[FORTNITE] [PS4] [!] Fix 4 GB CPU memory limit in old PS4 memory system.
	 - Incorrect bitmask usage was truncating the available memory value to 32 bits.

	 - Also includes some minor refactoring to make parts more readable.
	 - Removed PS4_USE_FLEXIBLE_FIRST. Dead code that doesn't compile.

	#!rb Jonathan.Fitzpatrick
	#!jira FORT-50918

	CL 3597577
	[FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU.
	 - Previously the amount of texture memory wasnÆt fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack.
	 - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is.

	#!rb Stewart.Lynch
	#!jira FORT-50825
	#!jira FORT-49688
	#!jira FORT-49695
	#!jira FORT-50054

	CL 3601951
	[FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system
	 - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0.
	 - Added garlic, onion and defrag stats to the platform memory stats struct.
	 - Added fixed pool sizes to platform memory stats.
	 - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools.

	#!rb Stewart.Lynch
	#!jira FORT-52910


	#!test preflight with baseline performance memory report tests, local tests on neo
	#!rb Luke.Thatcher

Change 3608480 on 2017/08/24 by Uriel.Doyon

	Instanced static mesh lightmaps are now updated correctly after lighting scenario changes
	#!jira UE-48522
	#!tests Build lighting, loaded maps
	#!rb michel.dupuis

Change 3608407 on 2017/08/24 by Andrew.Grant

	Reintegrated ROlando's cloth optimizations

	#!tests #!rb none

Change 3608349 on 2017/08/24 by Rolando.Caloca

	O - Cloth vertex buffers no longer generate dummy vertices
	#!rb Lina.Halper
	#!fyi James.Golding
	#!tests Check obj list memory with multiple characters, tested animations

Change 3607815 on 2017/08/24 by Laurent.Delayen

	Fixed crash when displaying a two bone IK gizmo for a node that hadn't had a chance to evaluate or had a zero alpha.
	https://jira.it.epicgames.net/browse/OR-43186

	#!rb none
	#!tests Price hand two bone IK
	#!codereview lina.halper, thomas.sarkanen

Change 3607770 on 2017/08/24 by Andrew.Grant

	Fixed bug with peak memory being missing in BaselinePerf tests and time being wrong

	#!tests ran locally, updated parser test
	#!rb none

Change 3607546 on 2017/08/24 by Jian.Ru

	Add more control to chromatic aberration effect
	#!jira UE-47138
	#!rb Brian.Karis
	#!tests editor

Change 3607270 on 2017/08/24 by Andrew.Grant

	Mirroring 3605735  from FN to address bug with MIC deduplication

	#!tests compiled
	#!rb none

Change 3607082 on 2017/08/24 by Laurent.Delayen

	Moved up Paragon functionality to cycle between targets with PageUp and PageDown for 'showdebug' commands.
	List of targets is contextual (For example 'showdebug animation' will consider all visible actors with an AnimGraph).
	Current debug Target is highlighted in a green bounding box.
	Paragon now supports 'ShowDebugForReticleTargetToggle <class>' to have 'showdebug' for Actors aimed at by the player.
	Paragon maintains feature to track AbilitySystemComponents across Targets. But Cycling is restricted to visible actors.
	Target cycling in Paragon now works for all 'showdebug' tags, not just ASCs and Animation.

	#!rb dave.ratti
	#!tests lane minion test map, debugging individual minions
	#!codereview jon.lietz

Change 3606772 on 2017/08/24 by David.Ratti

	Spot edigrate CL 3606417 for accurate CurveTable memory tracking
	#!rb none
	#!tests none

[CL 3748735 by Andrew Grant in Main branch]
2017-11-09 18:22:55 -05:00
Ryan Gerleve
96e96b3cfa Copying //UE4/Dev-Networking to //UE4/Dev-Main (Source: //UE4/Dev-Networking @ 3596412)
#lockdown Nick.Penwarden

============================
  MAJOR FEATURES & CHANGES
============================

Change 3497498 by John.Barrett

	Added CVar for toggling NetConnection sequence randomization 'net.RandomizeSequence'.

	Tweaked asserts related to sequence randomization, to remove some false positives.

Change 3520192 by John.Barrett

	Added delegate hooks to the base netcode, new virtual functions, and made the UChannel classes overridable through UNetDriver, to allow netcode hooks without requiring a dependency on Online plugin packages - required to keep NetcodeUnitTest functionality, after Online packages were moved out of Engine.

Change 3520215 by John.Barrett

	Second pass at big NetcodeUnitTest Minimal Client refactor, consolidating most of the client helper code into MinimalClient, and refactoring the ClientUnitTest API (touching all unit tests).

	Also eliminated Online plugin dependencies (removing UnitTestNetDriver and UnitTestNetConnection), replacing them with low level netcode hooks.

Change 3526952 by John.Barrett

	Fixed minimal client PackageMap override.

Change 3528488 by John.Barrett

	Added actor channel hook, to disable NMT_ActorChannelFailure notification.

Change 3528491 by John.Barrett

	Fixed unit test actor channel blocking from triggering disconnects, by using an Engine hook to block NMT_ActorChannelFailure, instead of using a more complex/unreliable method of blocking.

Change 3529906 by John.Barrett

	Modified commandline parse function, to detect when it is incorrectly parsing a parameter, from within another parameters value (not exhaustive).

	For example, this commandline only contains the parameter ParamA. It should not be possible to parse ParamB, as it is part of ParamA's value:
	-ParamA="-ParamB=Value"

Change 3550072 by John.Barrett

	Added compile-time verification for unit test and minimal client configuration flags, and refactored how the flags are set - speeds up writing new unit tests, for games with excessive launch times.

Change 3565074 by Jon.Nabozny

	Fix Replication Paused logic.

Change 3565093 by Jon.Nabozny

	Add a 'UseDistanceBasedRelevancy' check in APawn::IsNetRelevantFor, to make it consistent with AActor.

Change 3565132 by Jon.Nabozny

	Fix Actor's GetLevel to no longer assume the immediate outer is the level. Fix similar inconsistent usages of GetOuter on Actors.

Change 3573678 by Jake.Leonard

	Update actor replication based stats even when we are currently saturated (their values will be 0 anyways)

	#jira UE-46523
	#RB: Ryan.Gerleve

Change 3574047 by John.Barrett

	Added new '-FullStdOutLogOutput' commandline parameter, for capturing full log output through stdout.

	Makes up for the shortcoming of '-AllowStdOutLogVerbosity', being limited to ELogVerbosity::Log.

Change 3575518 by Jon.Nabozny

	Remove actors from UNetDriver::DestroyedStartupOrDormant actors when their level is unloaded.

	#jira UE-47192

Change 3575911 by Jake.Leonard

	Adding option for specifying an editor server port for PIE. This allows users to change the default port used when playing net games without interferring with other instances.

	#jira UE-12093

Change 3575916 by Jake.Leonard

	Fixing the UI so that it doesn't respond to the same input as the camera controls by making the playback button unfocusable.

	#Jira UE-37831

Change 3578830 by Ryan.Gerleve

	Merging new PlatformCrypto plugin for interfacing with encryption libraries, with a generic OpenSSL implementation and a BCrypt/CNG implementation for Xbox One.
	Added EncryptionComponent interface so that engine code can talk to encryption components without knowing their concrete type.
	New AESHandlerComponent packet handler component which uses PlatformCrypto to encrypt packets.

Change 3578855 by Ryan.Gerleve

	Merging hooks for encryption in the network handshake flow. NMT_Hello messages may now send an EncryptionToken as a parameter, which can be used by games to derive an encryption key used by the PacketHandler's EncryptionComponent.

Change 3578864 by Ryan.Gerleve

	Merged: Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption.
	This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step.

Change 3588479 by Ryan.Gerleve

	Merging: Encryption token/ack changes from josh.markiewicz
	- moved encryption token request/ack to delegates
	- moved FNetworkNotify to NetworkDelegates.h
	- moved connection logic out of GameInstance and back into networking code
	-- GameInstance sends an enum and the network code does the right thing based on that

	#tests PC dedicated server connections golden path and forced failures

Change 3588830 by Jake.Leonard

	New camera logic for playercontrollers so that we set the death cams correctly.

	#jira UE-44307

Change 3588956 by Jake.Leonard

	Quickfix for the character mesh position becoming offset due to movement smoothing being cached out.

	#jira UE-45947

Change 3588974 by Ryan.Gerleve

	Add a cvar and code to allow testing encryption functionality in ShooterGame, ShooterGame.TestEncryption (off by default). If enabled, attempts to use the PlatformCrypo and AESHandlerComponent to encrypt game traffic with a hardcoded key (for debugging/testing only, not secure!).

Change 3592922 by Jon.Nabozny

	Call AActor::PreReplication before performing initial replication triggered from an RPC.

[CL 3596435 by Ryan Gerleve in Main branch]
2017-08-18 09:54:37 -04:00
Ben Marsh
f461ea68e9 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3548365)
#lockdown Nick.Penwarden

============================
  MAJOR FEATURES & CHANGES
============================

Change 3494741 by Steve.Robb

	Generated code size savings.

	#jira UE-43048

Change 3495484 by Steve.Robb

	Fix for generated indices of static arrays when saving configs.

Change 3497926 by Robert.Manuszewski

	Removed FPackageFileSummary's CompressedChunks array as it was no longer being used by anything.

Change 3498077 by Robert.Manuszewski

	Only use the recursion guard in async loading code when the event driven loader is enabled.

Change 3498112 by Ben.Marsh

	UBT: Respect the option to not create debug info in the Android toolchain. This option is already being respected by the compiler, but the linker adds debug info of its own.

Change 3500239 by Robert.Manuszewski

	Made sure the Super Class token stream is also locked when assembling Class token stream with async loading thread enabled. This to to prevent race conditions when loading BP classes.

Change 3500395 by Steve.Robb

	Extra codegen savings when not in hot reload.

Change 3501004 by Steve.Robb

	EObjectFlags now have constexpr operators.

Change 3502079 by Ben.Marsh

	UBT: Pad multi-line error messages so that they align under the prefix for the first line, and include the timestamp if necessary.

Change 3502527 by Steve.Robb

	Fix for zero-sized array compile error in generated code when all functions are editor-only.

Change 3502542 by Ben.Marsh

	UAT: Remove the custom source parameter from log functions, and add support for a customizable indent instead.

Change 3502868 by Steve.Robb

	Workaround for inefficient generated code with stateless lambdas on Clang.

Change 3503550 by Steve.Robb

	Another generated code lambda optimization.

Change 3503582 by Ben.Marsh

	BuildGraph: Add support for nullable parameter types.

Change 3504424 by Steve.Robb

	New AllOf, AnyOf and NoneOf algorithms.

Change 3504712 by Ben.Marsh

	UAT: Less spammy log and error output from UAT.

	* Callstacks for AutomationExceptions are suppressed by default but still included in the log (the path to the log is noted in console output with the message from the exception).
	* Add a mechanism for any exceptions to be caught and rethrown with additional lines of context (CommandUtils.AddContext()) that will be appended to the error output by UAT. Avoids decaying the exception type or masking the inner exception message while still adding additional information.
	* AggregateExceptions resulting from exceptions on child threads are automatically unwrapped (full details are still appended to the log)
	* Name of the calling function is not included in console output by default, but still included in the log.

Change 3504808 by Ben.Marsh

	UAT: Suppress P4 output when running a recursive instance of UAT.

Change 3505044 by Steve.Robb

	Code generation improved for TCppClassType code.

Change 3505485 by Ben.Marsh

	Fix deterministic cooking issue; always use a pseudo-random number stream when compiling a module.

Change 3505699 by Ben.Marsh

	Plugins: Store the bEnabledByDefault flag exactly as it was read from disk rather than collapsing it to an absolute value based on the default for the location it was read from. This allows loading/saving plugin descriptors without any knowledge of whether they are game or engine plugins.

Change 3506055 by Ben.Marsh

	UAT: Add a class to apply a log indent for the lifetime of an object (ScopedLogIndent), and use it to apply an indent to MegaXGE/ParallelExecutor output.

Change 3507745 by Robert.Manuszewski

	Moved FSimpleObjectReferenceCollectorArchive and FSimpleObjectReferenceCollectorArchive to be internal archives used only by FReferenceCollector so that they are constructed only once per GC task instead of potentially multiple times per GC (as was the case with UDataTables and BlueprintGeneratedClasses).

Change 3507911 by Ben.Marsh

	Plugins: Minor changes to plugin descriptors.

	* Add a distinct setting for an unspecified EnabledByDefault setting in plugin descriptors.
	* Add a function to IPlugin to determine the effective EnabledByDefault setting, based on where the plugin was loaded from.

Change 3508669 by Ben.Marsh

	EC: Parse multi-line messages from UBT and UAT.

Change 3508691 by Ben.Marsh

	Fix double-spacing of cook stats.

Change 3509245 by Steve.Robb

	UHT makefiles removed.
	Flag audit removed.

Change 3509275 by Steve.Robb

	Fix for mismatched stat categories in AudioMixer.

	#jira UE-46129

Change 3509289 by Robert.Manuszewski

	Custom Version Container will no longer be always constructed in FArchive constructor. This reduces the number of the Custom Version Container allocations considerably.

Change 3509294 by Robert.Manuszewski

	UDataTable::AddReferencedObjects will no longer try to iterate over the RowMap if there's no UObject references in it.

Change 3509312 by Steve.Robb

	GitHub# 3679: Add TArray constructor that takes a raw pointer and a count

	Check improved for Append() to allow nullptr in empty ranges, and added to new constructor too.

	#jira UE-46136

Change 3509396 by Steve.Robb

	GitHub# 3676: Fix TUnion operator<< compile error

	#jira UE-46099

Change 3509633 by Steve.Robb

	Fix for line numbers on multiline macros.

Change 3509938 by Gil.Gribb

	UE4 - Fix rare assert involving cancelled precache requests and non-pak-file loading.

Change 3510593 by Daniel.Lamb

	Fixed up unsoilicited files getting populated with files which aren't finished being created yet.

	#test None

Change 3510594 by Daniel.Lamb

	Fixed up temp files directory for patching.

	Thanks David Yerkess @ Milestone
	#review@Ben.Marsh

Change 3511628 by Ben.Marsh

	PR #3707: Fixed UBT stack size (Contributed by gildor2)


Change 3511808 by Ben.Marsh

	Optimize checks for whether the game project contains source code. Now stops as soon as the first file is found and ignores directories beginning with a '.' character (eg. .git)

	#jira UE-46540

Change 3512017 by Ben.Marsh

	Plugins: Deprecate the QueryStatusForAllPlugins() function; the same functionality is available via the IPlugin interface.

Change 3513935 by Steve.Robb

	Reverted array iteration in FPropertyNode::PropagatePropertyChange as this is now covered in TProperty::InitializeValueInternal() as of CL# 3293477.

Change 3514142 by Steve.Robb

	MemoryProfiler2 added to generated solution.

Change 3516463 by Ben.Marsh

	Plugins: Create a manifest for each PAK file containing all the plugin descriptors in one place. Eliminates need to recurse through directories and read separate multiple files in serial at startup, and allows reading all plugin descriptors with one read. The "Mods" directory is excluded from the manifest, since these are intended to be installed separately by the user.

Change 3517860 by Ben.Marsh

	PR #3727: FString Dereference Fixes (Contributed by jovisgCL)


Change 3517967 by Ben.Marsh

	Suppress additional system error dialogs when loading DLLs if -unnattended is on the command line.

Change 3518070 by Steve.Robb

	Disable Binned2 stats in shipping non-editor builds.

Change 3520079 by Steve.Robb

	Fixed bad codegen TAssetPtrs being passed into BlueprintImplementableEvent functions.

	#jira UE-24034

Change 3520080 by Robert.Manuszewski

	Made max package summary size to be configurable with ini setting

Change 3520083 by Steve.Robb

	Force a GC after hot reload to clean up reinstanced objects which may still tick.

	#jira UE-40421

Change 3520480 by Robert.Manuszewski

	Improved assert message when the initial package read request was too small.

Change 3520590 by Graeme.Thornton

	SignedArchiveReader optimizations
	 - Loads more stats
	 - Stop chunk cache worker from waking up continuously to poll for work. Only wake up when triggered by the archive reader
	 - Signed archive reader just yields when waiting for buffers to finish loading, rather than sleeping for some arbitrary amount of time
	 - Track the number of pending read requests in an atomic counter, to save having to lock the request queue to check for new entries

Change 3521023 by Graeme.Thornton

	Remove spin from signed archive reader. Main thread waits on an event triggered by the chunk worker to indicate that new chunks are ready for processing

Change 3521787 by Ben.Marsh

	PR #3736: Small static code analysis fixes (Contributed by jovisgCL)


Change 3521789 by Ben.Marsh

	PR #3735: Fix case sensitivity issue in FWindowsPlatformProcess::IsApplicationRunning. (Contributed by samhocevar)


Change 3524721 by Ben.Marsh

	Move Linux SDL initialization into FLinuxPlatformApplicationMisc. Attempting to move functionality related to interactive applications (graphics, input, etc...) into a separate place, so it can ultimately be moved out of Core.

Change 3524741 by Ben.Marsh

	Move PumpMessages() into FPlatformApplicationMisc.

Change 3525399 by Ben.Marsh

	UGS: Use the default Perforce server port when opening P4V if there is not one set in the environment.

Change 3525743 by Ben.Marsh

	UAT: Add a parameter to allow updating version files without updating Version.h, to allow faster link times on incremental builds.

Change 3525746 by Ben.Marsh

	EC: Include the clobber option on new workspaces, to allow overriding version files when syncing.

Change 3526453 by Ben.Marsh

	UGS: Do not generate project files when syncing precompiled binaries.

Change 3527045 by Ben.Marsh

	Fix hot reload generating import libraries without DLLs. Now that they are produced by separate actions by default, it was removing DLLs from the action graph due to the bSkipLinkingWhenNothingToCompile setting.

Change 3527420 by Ben.Marsh

	UGS: Add additional search paths for UGS config files, and fix a few cosmetic issues (inability to display ampersands in tools menu, showing changelist -1 when running a tool without syncing).

	Config files are now read from:

	Engine/Programs/UnrealGameSync/UnrealGameSync.ini
	Engine/Programs/UnrealGameSync/NotForLicensees/UnrealGameSync.ini

	If a project is selected:

	<ProjectDir>/Build/UnrealGameSync.ini
	<ProjectDir>/Build/NotForLicensees/UnrealGameSync.ini

	If the .uprojectdirs file is selected:

	Engine/Programs/UnrealGameSync/DefaultProject.ini
	Engine/Programs/UnrealGameSync/NotForLicensees/DefaultProject.ini

Change 3528063 by Ben.Marsh

	Fix non-thread safe construction of FPluginManager singleton. Length of time spent in the constructor resulted in multiple instances being constructed at startup, making the time to enumerate plugins on slow media significantly worse.

Change 3528415 by Ben.Marsh

	UAT: Remove \r characters from the end of multiline log messages.

Change 3528427 by Ben.Marsh

	EC: Fix spaces being converted to tabs at start of line in failure emails (by Gmail), and wrap following lines at the same indent.

Change 3528485 by Ben.Marsh

	EC: Remove zero-width word break characters from slashes in notification emails; can cause really hard to debug problems when copy pasted into other places.

Change 3528505 by Steve.Robb

	PR #3755: MallocProfiler - Remove subfolder from profiling save directory (Contributed by Josef-CL)


	#jira UE-46819

Change 3528772 by Robert.Manuszewski

	Enabling actor and blueprint clustering in ShooterGame

Change 3528786 by Robert.Manuszewski

	PR #3760: Fix typo (Contributed by jesseyeh)


Change 3528792 by Steve.Robb

	PR #3764: MallocProfiler - Refactoring Scopelock (Contributed by Josef-CL)


	#jira UE-46962

Change 3528941 by Robert.Manuszewski

	Fixed lazy object pointers not being updated for streaming sub-levels in PIE. Fixed lazy pointers returning object that is still being loaded which could lead to undefined behavior when client code started modifying the returned object.

	#jira UE-44996

Change 3530241 by Ben.Marsh

	UAT: Only pass -submit or -nosubmit to child instances of UAT if they were specified on the original command line. BuildCookRun uses this flag to determine whether to submit, rather than just whether to allow submitting, so we shouldn't pass an inferred value.

Change 3531377 by Ben.Marsh

	Plugins: Allow plugins to specify a list of supported target platforms, which is propagated to any .uproject file that enables it.

	This has several advantages over the per-module platform whitelist/blacklist:

	* Platform-specific .uplugin files can now be excluded when staging other platforms. Previously, it was only possible to determine which platforms a plugin supports by reading the plugin descriptor itself. Now that information is copied into the .uproject file, so the runtime knows which plugins to ignore.
	* References to dependent plugins from platform-specific plugins can now be eliminated.
	* Plugins containing content can now be unambiguously disabled on a per-platform basis (having no modules for a platform does not confer that a plugin doesn't support that platform; now it is possible to specify supported platforms explicitly).
	* The editor can load any plugins without having to whitelist supported editor host platforms.

	UE4 targets which support loading plugins for target platforms can set TargetRules.bIncludePluginsForTargetPlatforms (true for the editor by default, false for any other target types). This defines the LOAD_PLUGINS_FOR_TARGET_PLATFORMS macro at runtime, which allows the plugin system to filter which plugins to look for at runtime.

	Any .uproject file will be updated at startup to contain the list of supported platforms for each referenced plugin if necessary.

Change 3531502 by Jin.Zhang

	Add support for GPUCrash #rb

Change 3531664 by Ben.Marsh

	UBT: Change output format from C# JSON writer to match output by the engine.

Change 3531848 by Ben.Marsh

	UAT: Add script to resaving all project descriptors under a folder, embedding information for any supported platforms for the plugins they enable.

Change 3531869 by Ben.Marsh

	UAT: Add parameter to the ResaveProjectDescriptors command to update the engine association field.

Change 3532474 by Ben.Marsh

	UBT: Use the same mechanism as UAT for logging exceptions.

Change 3532734 by Graeme.Thornton

	Initial VSCode Support
	 - Tasks generated for building all game/engine/program targets
	 - Debugging support for targets on Win64

Change 3532789 by Steve.Robb

	FScriptSet::Add and TScriptMap::Add now replace the element, matching the behavior of TSet and TMap.
	Set_Add and Map_Add no longer have a return value.
	FScriptSet::Find and FScriptMap::Find functions are now FindIndex.
	FScriptSetHelper::FindElementFromHash is now FindElementIndexFromHash.

Change 3532845 by Steve.Robb

	Obsolete UHT settings deleted.

Change 3532875 by Graeme.Thornton

	VSCode
	 - Add debug targets for different target configurations
	 - Choose between VS debugger (windows) and GDB (mac/linux)

Change 3532906 by Graeme.Thornton

	VSCode
	 - Point all builds directly at UBT rather than the batch files
	 - Adjust mac build tasks to run through mono

Change 3532924 by Ben.Marsh

	UAT: Set the UAT working directory immediately on startup. This ensures that any command line arguments containing paths are resolved consistently to the branch root.

Change 3535234 by Graeme.Thornton

	VSCode - Pass intellisense system a list of paths to use for header resolution

Change 3535247 by Graeme.Thornton

	UBT - Add a ToString to ProjectFile.Source file to help with debugger watch presentation

Change 3535376 by Graeme.Thornton

	VSCode
	 - Added build jobs for C# projects
	 - Linked launch tasks to relevant build task

Change 3537083 by Ben.Marsh

	EC: Change P4 swarm links to start at the changelist for a build.

Change 3537368 by Graeme.Thornton

	Fix for crash in FSignedArchiveReader when multithreading is disabled

Change 3537550 by Graeme.Thornton

	Fixed a crash in the taskgraph when running single threaded

Change 3537922 by Steve.Robb

	Missing PF_ATC_RGBA_I added to FOREACH_ENUM_EPIXELFORMAT.

Change 3539691 by Graeme.Thornton

	VSCode - Various updates to get PC and Mac C++ projects building and debugging.
	 - Some other changes to C# setup to allow compilation. Debugging doesn't work.

Change 3539775 by Ben.Marsh

	Plugins: Various fixes to settings for enabling plugins.

	* Fix crash on startup when trying to disable a missing plugin (was keeping pointers to elements in the project's plugin reference array, which may be modified if a plugin is disabled).
	* Revert fix to set PluginDescriptor.bRequiresBuildPlatform = true by default. This was the originally intended behavior, but it was accidentally defaulted to false during serialization unless specified in the .uplugin file. Many plugins may rely on this behavior (they may not declare asset classes otherwise, for example, which could result in loss of data), so change the default value to false instead. Also fixes popups to disable platform-specific plugins if platform SDKs are not installed.
	* Fix plugins which are referenced but do not exist not showing the appropriate prompt to disable them.

Change 3540788 by Ben.Marsh

	UBT: Add support for declaring custom pre-build steps and post-build steps from .target.cs files. Similarly to the custom build steps configurable from .uproject and .uplugin files, these specify commands which will be executed by the host platform's shell before or after a build. The following variables are expanded within the list of commands before execution: $(EngineDir), $(ProjectDir), $(TargetName), $(TargetPlatform), $(TargetConfiguration), $(TargetType), $(ProjectFile).

	Example usage:

	public class UnrealPakTarget : TargetRules
	{
		public UnrealPakTarget(TargetInfo Target) : base(Target)
		{
			Type = TargetType.Program;
			LinkType = TargetLinkType.Monolithic;
			LaunchModuleName = "UnrealPak";

			if(HostPlatform == UnrealTargetPlatform.Win64)
			{
				PreBuildSteps.Add("echo Before building:");
				PreBuildSteps.Add("echo This is $(TargetName) $(TargetConfiguration) $(TargetPlatform)");

				PostBuildSteps.Add("echo After building!");
				PostBuildSteps.Add("echo This is $(TargetName) $(TargetConfiguration) $(TargetPlatform)");
			}
		}
	}

Change 3541664 by Graeme.Thornton

	VSCode - Add problemMatcher tag to cpp build targets

Change 3541732 by Graeme.Thornton

	VSCode - Change UBT command line switch to "-vscode" for simplicity

Change 3541967 by Graeme.Thornton

	VSCode - Fixes for Mac/Linux build steps

Change 3541968 by Ben.Marsh

	CRP: Pass through the EnabledPlugins element in crash context XML files.

	#jira UE-46912

Change 3542519 by Ben.Marsh

	UBT: Add chain of references to error messages when configuring plugins.

Change 3542523 by Ben.Marsh

	UBT: Add more useful error message when attempt to parse a JSON object fails.

Change 3542658 by Ben.Marsh

	UBT: Include a chain of references when reporting errors instantiating modules.

Change 3543432 by Ben.Marsh

	Plugins: Fix plugins which are enabled by default not being enabled unless a project file is set.

Change 3543436 by Ben.Marsh

	UBT: Prevent recursing through the same module more than once when building out the referenced modules. Produces much shorter reference chains when something fails.

Change 3543536 by Ben.Marsh

	UBT: Downgrade message about redundant plugin references to a warning.

Change 3543871 by Gil.Gribb

	UE4 - Fixed a critical crash bug with non-EDL loading from pak files.

Change 3543924 by Robert.Manuszewski

	Fixed a crash on UnrealFrontend startup caused by re-assembling GC token stream for one of the classes.
	+Small optimization to token stream generation code.

Change 3544469 by Jin.Zhang

	Crashes page displays the list of plugins from the crash context #rb

Change 3544608 by Steve.Robb

	Fix for nativized generated code.

	#jira UE-47452

Change 3544612 by Ben.Marsh

	Add callback into FMacPlatformMisc::PumpMessages() from FMacPlatformApplicationMisc::PumpMessages().

	#jira UE-47449

Change 3545954 by Gil.Gribb

	Fixed a critical crash bug relating to a race condition in async package summary reading.

Change 3545968 by Ben.Marsh

	UAT: Fix incorrect username in BuildGraph <Submit> task. Should use the username from the Perforce environment, not assume the logged in user name is the same.

	#jira UE-47419

Change 3545976 by Ben.Marsh

	EC: Delete the AutoSDK client if the directory doesn't exist. When we format build machines, we need to force everything to be resynced from scratch.

Change 3546185 by Ben.Marsh

	Hacky fix for deployment on IOS/TVOS. Since deployment directly references the NonUFS manifest files that are written out, merge all the SystemNonUFS files back into the NonUFS list after the regular NonUFS files have been remapped.

Change 3547084 by Gil.Gribb

	Fixed a critical race condition in the new async loader. This was only reproducible on IOS, but may affect other platforms.

Change 3547968 by Gil.Gribb

	Fixed critical race which potentially could cause a crash in the pak precacher.

Change 3504722 by Ben.Marsh

	BuildGraph: Improved tracing for error messages. All errors are now propagated as exceptions, and are tagged with additional context information about the task currently being run.

	For example, throwing new AutomationException("Unable to write foo.txt") from SetVersionTask.Execute is now displayed in the log as:

	ERROR: Unable to write to foo.txt
	         while executing <SetVersion Change="0" CompatibleChange="0" Branch="Unknown" Promoted="True" />
	         at Engine\Build\InstalledEngineBuild.xml(91)
	       (see D:\P4 UE4\Engine\Programs\AutomationTool\Saved\Logs\UAT_Log.txt for full exception trace)

Change 3512255 by Ben.Marsh

	Rename FPaths functions with a "Game" prefix (GameDir(), GameContentDir(), etc...) to have a "Project" prefix (ProjectDir(), ProjectContentDir(), etc...) for clarity with non-game uses of UE4. Old functions still exist but are deprecated.

Change 3512332 by Ben.Marsh

	Rename "Game" functions in FApp to be "Project" functions (FApp::GetGameName() -> FApp::GetProjectName(), etc...) for clarity with non-game uses of UE4.

Change 3512393 by Ben.Marsh

	Rename FPaths::GameLogDir() to FPaths::ProjectLogDir().

Change 3513452 by Ben.Marsh

	Plugins: Rename EPluginLoadedFrom::GameProject to EPluginLoadedFrom::Project.

Change 3516262 by Ben.Marsh

	Add support for a "Mods" folder distinct from the project's "Plugins" folder, instead of using the bIsMod flag on the plugin descriptor.

	* Mods are enumerated similarly to regular plugins, but IPlugin::GetType() will return EPluginType::Mod.
	* The DLCName parameter to BuildCookRun and the cooker now correctly finds any plugin in the Plugins or Mods directory (or any subfolders).

Change 3517565 by Ben.Marsh

	Remove fixed engine version numbers from OSS plugins.

Change 3518005 by Ben.Marsh

	UAT: Remove the bUFSFile parameter from DeployLowerCaseFilenames(). Every platform returns false if the argument is false.

Change 3518054 by Ben.Marsh

	UAT: Use an enum to direct whether all directories should be searched when finding files to stage, rather than a bool. Having so many optional boolean arguments makes code unreadable and refactoring hard.

Change 3524496 by Ben.Marsh

	Start moving GUI application code into a separate static platform class, hopefully ultimately removing it from Core.

Change 3524641 by Ben.Marsh

	Move more functionality related to windowed/graphical applications into FPlatformApplicationMisc.

Change 3528723 by Steve.Robb

	MoveTemp now static asserts if passed a const reference or rvalue.
	MoveTempIfPossible still follows the old (std::move) rule, which is useful for templates where the nature of the argument is not obvious.
	Fixes to violations of these new rules.

Change 3528876 by Ben.Marsh

	Move FPlatformMisc::ClipboardCopy and FPlatformMisc::ClipboardPaste to FPlatformApplicationMisc::ClipboardCopy and FPlatformApplicationMisc::ClipboardPaste.

Change 3529073 by Ben.Marsh

	Add script to package ShooterGame for any platforms.

Change 3531493 by Ben.Marsh

	Update platform-specific plugins to declare the target platforms they support.

Change 3531611 by Ben.Marsh

	UAT: Add a ResavePluginDescriptors command, which resaves all plugin descriptors under a given folder, removing any outdated fields and rewrites them in a consistent style. Many plugins in the wild contain redundant or no-longer used fields due to using our plugins as templates.

Change 3531868 by Ben.Marsh

	Resaving project descriptors to remove invalid fields.

Change 3531983 by Ben.Marsh

	UAT: Simplify logic for staging code, and add validation against shipping files in restricted folders.

	* Added a new SystemNonUFS type for staged files, which excludes files from being remapped or renamed by the platform layer.
	* Replaced the DeplyomentContext.StageFiles() function with simpler overloads for particular use cases (options for remapping are replaced with the SystemNonUFS file type)
	* Config entries in the [Staging] category in DefaultGame.ini file allow remapping one directory to another, so restricted content can be made public in packaged builds (Example syntax: +RemapDirectory=(From="Foo/NoRedist", To="Foo"))
	* An error is output if any restricted folder names other than the output platform are in the staged output.

Change 3540315 by Ben.Marsh

	UAT: Moving StreamCopyDescription command into a NotForLicensees folder, since it's only meant to be used by engine developers.

Change 3542410 by Ben.Marsh

	UBT: Deprecate accessing properties through BuildConfiguration.* or UEBuildConfiguration.* from .target.cs files. These have been aliases to the current TargetRules instance for several releases already.

Change 3543018 by Ben.Marsh

	UBT: Deprecate the BuildConfiguration and UEBuildConfiguration aliases from the ModuleRules class. These have been implemented as an alias ot the ReadOnlyTargetRules instance passed to the constructor for several engine versions.

Change 3544371 by Steve.Robb

	Fixes to TSet_Add and TMap_Add BPs.

	#jira UE-47441

[CL 3548391 by Ben Marsh in Main branch]
2017-07-21 12:42:36 -04:00
Ryan Gerleve
338b22f6e7 Copying //UE4/Dev-Networking to //UE4/Dev-Main (Source: //UE4/Dev-Networking @ 3495493)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3302759 on 2017/02/14 by John.Pollard

	Remove invalid replay samples that can occur due to oversampling (sampling at higher rate than physics is being ticked)

Change 3306072 on 2017/02/16 by John.Barrett

	Minor NetcodeUnitTest updates/fixes.

	Improved assignment for some types, using FVMReflection - added assignment to enum by name.

Change 3322165 on 2017/02/24 by John.Barrett

	Fixed issue where Steam would block unit tests. #JIRA UENET-537

Change 3323917 on 2017/02/27 by John.Barrett

	Added better unit test log file management. #JIRA UENET-535

	Unit test logs are now stored in subfolders in the game log folder, with one main folder for the current UE4 session, and one subfolder for every unit test run during that session.
	Logs are purged occasionally, in line with how the main game logs are purged.

Change 3326307 on 2017/02/28 by John.Pollard

	Remove unused cvar

Change 3327907 on 2017/03/01 by John.Barrett

	Merged some old NetcodeUnitTest debug features:
	- Added command for bit-based log dumping of data (for debugging bit-based netcode)

	- Added exported function, for allowing access to console commands, in modules which don't import Engine

Change 3332710 on 2017/03/05 by John.Barrett

	Updated unit test flags to expect a disconnect when expecting a server crash.

Change 3332715 on 2017/03/05 by John.Barrett

	Wrapped all CreateChannelBunch pointers with a nullptr check (used to not be required).

	Replaced old/duplicate unit test code (using CreateChannelBunch) for marking 'exploit failure', with the current centralized function calls.

	#JIRA UENET-539

Change 3336258 on 2017/03/07 by John.Pollard

	Add more info to history overflow logging

Change 3336259 on 2017/03/07 by John.Pollard

	Don't pause replication for replay connections

Change 3341288 on 2017/03/10 by John.Barrett

	Fixed invalid access to GLog during game shutdown. #JIRA UE-42394

Change 3341736 on 2017/03/10 by John.Pollard

	Get reliability packet handler working again (but still disabled by default)

Change 3349298 on 2017/03/16 by John.Barrett

	Fixed issues/potential-issues with the timing of global variable destruction, based on Graeme Thornton's fix. #JIRA UE-42394

Change 3349393 on 2017/03/16 by John.Pollard

	Reliability handler cleanup

Change 3350029 on 2017/03/16 by John.Barrett

	Updated PacketHandler to support an optional handshaking stage for HandlerComponents, where each handshake must execute sequentially starting at the component closest to the socket.

Change 3350030 on 2017/03/16 by John.Barrett

	Updated Asymetric Encryption to support updated PacketHandler system, to perform a key handshake that is compatible with other HandlerComponent's, and fixed some serialization security issues by setting proper limits on values.

Change 3350032 on 2017/03/16 by John.Barrett

	Minor corrections to variable types and constructor initializer lists, for the rest of the encryption code.

Change 3355536 on 2017/03/20 by John.Barrett

	Added new PacketAudit debug feature, which uses inter-process-communication, to audit the integrity of incoming/outgoing packets at various stages of serialization, between a client and server.

	This is critically useful for low level netcode development, particularly with the PacketHandler.

	See PacketAudit.h for more information.

Change 3355570 on 2017/03/20 by John.Barrett

	Added a small number packet auditing checks to key areas of low level netcode.

Change 3355584 on 2017/03/20 by John.Barrett

	Updated ReliabilityHandlerComponent, to support packet reliability during the PacketHandler handshaking stage, and fixed ReliabilityHandlerComponent serializing based on a packets byte size, rather than bit size.

Change 3373389 on 2017/03/30 by John.Barrett

	Added check for HandlerComponent's that require reliability.

Change 3373390 on 2017/03/30 by John.Barrett

	Added TLS-like encryption handler component, which exchanges a secret key using asymmetric encryption (RSA), and implements symmetric encryption using that key (AES).

	Based on RSA encryption component, and John Pollard's AES changes.

	Enable in *Engine.ini, using:
	[PacketHandlerComponents]
	Components=RSAKeyAESEncryption
	bEnableReliability=true

Change 3394518 on 2017/04/14 by Ryan.Gerleve

	Fix memory leak in FRepChangelistState: added destructor that properly destroys the properties in the shadow state buffer.

Change 3432955 on 2017/05/10 by John.Barrett

	Randomized the initial packet sequence numbers for UNetConnection's and for reliable packets - using the stateless handshake cookie.

	Also added hooks to determine when PacketHandler level handshaking has completed, so that the initial connection packets can be delayed until this stage (required now, in order to exchange the sequence numbers first).

Change 3464528 on 2017/05/29 by John.Barrett

	Fixed connection failure during unreliable network conditions, caused by a bad interaction between the stateless handshake and sequence initialization code.

	Added a new 'ack' stage to the stateless handshake, to ensure the client/server sequence is properly synchronised.

	Expanded the timeout/retry handling for the stateless handshake, so it is more robust, and fixed some bugs in this code.

Change 3464537 on 2017/05/29 by John.Barrett

	Fixed an incompatibility between the asymmetric encryption, and the new PacketHandler handshake code.

Change 3464543 on 2017/05/29 by John.Barrett

	Updated CryptoPP to 5.6.5.

Change 3467529 on 2017/05/31 by Jon.Nabozny

	Add comments to FPacketSimulationSettings vars.

Change 3469584 on 2017/06/01 by Ryan.Gerleve

	Log bunch ChSequence on reliable channel open along with other info.

Change 3471329 on 2017/06/02 by John.Barrett

	Fixed PacketHandlerLog type not being exported.

Change 3471875 on 2017/06/02 by John.Barrett

	Fixed code that was trying to send NetConnection packets from the server to the client, too early - and tidied up related checks.

	#JIRA UE-45637

Change 3473030 on 2017/06/04 by John.Barrett

	Fixed replay incomaptibility with recent sequence/handshake changes.

Change 3476313 on 2017/06/06 by Ryan.Gerleve

	Add initial reliable sequence numbers to the log in UNetConnection::InitSequence.

Change 3478649 on 2017/06/07 by Ryan.Gerleve

	Add additional logging for the case where a channel open command is received by a channel that's already opened locally.

Change 3482926 on 2017/06/09 by John.Barrett

	First pass at Minimal Client refactor for NetcodeUnitTest - split basic/minimal client code out of ClientUnitTest, into its own class - while preserving existing ClientUnitTest interface.

	This will allow multiple minimal clients per unit test, where only one could be used before (necessary for games that require a beacon + game connection).

	Added reflection support for weak UObject properties.
	Added MCP requirements flag for unit tests.
	Process pipe reading tweaks, to avoid UI freezes.

Change 3485179 on 2017/06/12 by Ryan.Gerleve

	Add backwards-compatibility macros for random initial packet sequence changes so that game plugins can check them.

Change 3489040 on 2017/06/14 by John.Barrett

	Removed OnlineSubsystem dependencies.

[CL 3495525 by Ryan Gerleve in Main branch]
2017-06-16 14:10:35 -04:00
Ben Marsh
aa969f9931 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3420477)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3386262 on 2017/04/10 by Ben.Marsh

	Add app-local deployment of DirectX components that are no longer included with newer versions of Windows by default (XAudio 2.7, XInput 1.3). Also add a one-click button to the packaging settings to include the default app-local dependencies, rather than having to specify the path.

Change 3386999 on 2017/04/10 by Ben.Marsh

	Plugins: Add support for explicit dependencies from one plugin onto another. Required plugins can be configured in an identical manner to project files, by adding a "Plugins" key to the .uplugin file. Dependencies are automatically built and loaded, and the plugin browser will warn if you try to disable a plugin that something else has a dependency on.

Change 3387073 on 2017/04/10 by Ben.Marsh

	Move FLightPropagationRuntimeSettings into the Renderer module, to remove engine dependency on a plugin.

Change 3387988 on 2017/04/11 by Steve.Robb

	Comments added to clarify the role of DestructItem and DestructItems.

Change 3388085 on 2017/04/11 by Ben.Marsh

	UBT: Fix bEnabled flag on plugin references being ignored. Now collect up all the plugin references in order of priority before creating plugin instances for them. Fixes CIS fail for UT.

Change 3390048 on 2017/04/12 by Richard.Hinckley

	#jira UE-43876
	Fixed description of Streaming settings (within Project Settings).

Change 3390697 on 2017/04/12 by Steve.Robb

	CLASS_PointersDefaultToAutoWeak and CLASS_PointersDefaultToWeak removed.

Change 3390711 on 2017/04/12 by Steve.Robb

	AGRESSIVE_ARRAY_FORCEINLINE removed.

Change 3392167 on 2017/04/13 by Robert.Manuszewski

	UObject can be added to GC cluster only if all of its Outers can also be added to it.

	Fixing asserts caused by components that are added to GC clusters even if their owner actors that can't be in GC clusters.

	#jira UE-42948

Change 3392309 on 2017/04/13 by Robert.Manuszewski

	When adding objects to clusters after these clusters have been created it's possible to come across objects that are already in the cluster we're adding the object to so instead of crashing, allow it.

Change 3392620 on 2017/04/13 by Ben.Marsh

	UGS: Only check for updates every 5 minutes.

Change 3392623 on 2017/04/13 by Ben.Marsh

	UGS: Only poll for new changes every 60 seconds.

Change 3392744 on 2017/04/13 by Ben.Marsh

	UGS: Query changelist descriptions individually to determine whether changes affect code or content, to hopefully reduce Perforce server load.

Change 3392874 on 2017/04/13 by Ben.Marsh

	UGS: Allow specifying regexes in the project config file which filters which changes to be displayed. Useful for changes submitted by build machines, updates to collections, etc...

Change 3392878 on 2017/04/13 by Ben.Marsh

	Update UGS to version 1.96

Change 3395635 on 2017/04/17 by Ben.Marsh

	UAT: Prefix log output from executing UAT commands through BuildGraph with the name of that command.

Change 3395655 on 2017/04/17 by Ben.Marsh

	UAT: Add a command for syncing a DDC over the network (SyncDDC). Allows specifying a maximum size to copy, number of days worth of modified files to copy, and time limit not to be exceeded.

Change 3396989 on 2017/04/17 by Wes.Hunt

	CrashReporter configurable tweaks.
	* Added QueueWaitingTimeAlertThreshold (used to be hardcoded to 1 min).
	  - When the queue waiting time gets beyond this many seconds, trigger a slack alert message. Default is 10 min.
	  - Zero means never alert.
	* Added DiskSpaceAvailableAlertInterval (used to be hardcoded to 1 day).
	  - Interval by which to report disk space availability.
	  - Default is never (Zero)
	* Updated config file to match production config.
	#codereview:jin.zhang

Change 3397656 on 2017/04/18 by Ben.Marsh

	UBT: Allow modules to opt-out of getting the default include paths from being added, by setting bAddDefaultIncludePaths = false from their build.cs file.

Change 3397677 on 2017/04/18 by Robert.Manuszewski

	PR #3167 : Adding more descriptive error text to DetatchLinker error check (by rooneym)


Change 3397722 on 2017/04/18 by Robert.Manuszewski

	PR #2252: Increase linker reporting for failed imports (Contributed by FineRedMist)


Change 3397739 on 2017/04/18 by Richard.Hinckley

	#jira UE-44100
	Fixed SanitizePackageName() to remove double-slash, triple-slash, etc. from package names. Also updated CreatePackage() to call SanitizePackageName() before creating.

Change 3398023 on 2017/04/18 by Ben.Marsh

	PR #3105: Cook/package with editor and debugger attached (Contributed by projectgheist)


Change 3398095 on 2017/04/18 by Ben.Marsh

	PR #3051: Generate map file from UAT (Contributed by projectgheist)


Change 3398212 on 2017/04/18 by Ben.Marsh

	PR #2915: UE-38232: Removed duplicate stats (Contributed by projectgheist)


Change 3399304 on 2017/04/19 by Ben.Marsh

	UGS: Prevent editor target files being removed when running custom tools.

Change 3399306 on 2017/04/19 by Robert.Manuszewski

	Moved InitPropertiesFromCustomList to UbLueprintGeneratedClass and made it thread safe

Change 3399729 on 2017/04/19 by Steve.Robb

	Simple optimization to TBitArray::RemoveAt() when all removed bits are at the end of the array.
	RemoveAtSwap() now simply decrements the count instead of calling RemoveAt().
	Checks for a positive count added to RemoveAt() and RemoveAtSwap().

Change 3399750 on 2017/04/19 by Jin.Zhang

	Order branch alphabetically #RB

Change 3400186 on 2017/04/19 by Steve.Robb

	Per-header generated code.

Change 3401458 on 2017/04/20 by Steve.Robb

	Static log categories moved out of headers to prevent duplicates when the header is included multiple times.

	#jira UE-37507

Change 3401657 on 2017/04/20 by Gil.Gribb

	UE4 - Simplified and reworked lock free lists and the task graph bringing all platforms under the same scheme.

Change 3401735 on 2017/04/20 by Gil.Gribb

	UE4 - Updated apple platform atomics with a new clang version which is intended to be shared among all clang platforms.

Change 3403362 on 2017/04/21 by Steve.Robb

	Algo::Sort() fixed to support C arrays.
	Size+count versions of Also::IsSorted() deprecated.
	Algo::IsSortedBy() added.
	Algo::FindBy() added to allow an element to be found by projection.
	Simplifications and generalizations.

Change 3404017 on 2017/04/21 by Ben.Marsh

	Fix issue where referenced plugin descriptors were missing from console builds, and prevent monolithic builds from offering to disable missing plugins.

Change 3405299 on 2017/04/24 by Steve.Robb

	Clarified the class of the incompatible function in the error message about incompatible BP event specifiers.

	#jira UE-35106

Change 3405302 on 2017/04/24 by Ben.Marsh

	UBT: Allow excluding documentation from generated project files, by setting <ProjectFileGenerator><bIncludeDocumentation>false</bIncludeDocumentation></ProjectFileGenerator> in the XML configuration file.

Change 3405629 on 2017/04/24 by Ben.Marsh

	Rename CPPEnvironment to CppCompileEnvironment, to reflect the class name.

Change 3406431 on 2017/04/24 by Ben.Marsh

	UAT: Fix incorrect handling of P4SubmitOptions when multiple values are present.

Change 3406670 on 2017/04/24 by Ben.Marsh

	UBT: Enable warnings for classes with virtual functions and no virtual destructor (C4265 on Windows, -fdelete-non-virtual-dtor on Clang).

Change 3407080 on 2017/04/25 by Gil.Gribb

	UE4 - Critical fix: Propoerly disambiguate imports with the same name and the same outer name. This fixes an assert: LocalExportIndex.IsNull.

Change 3407486 on 2017/04/25 by Gil.Gribb

	UE4 - Made changes so that servers, programs and non-engine executables do not create background or high priority threads.

Change 3407495 on 2017/04/25 by Gil.Gribb

	UE4 - Tweaked out XBox and Windows low level file IO.

Change 3407497 on 2017/04/25 by Gil.Gribb

	UE4 - Fixed bug in the pak precacher that would result in blocks being discarded too soon, which, in turn, resulted in redudnant reads.

Change 3407705 on 2017/04/25 by Ben.Marsh

	Removing most of the junk in DotNETUtilities.

Change 3409701 on 2017/04/26 by Ben.Marsh

	Disable another static analyzer warning for third party libraries.

Change 3410074 on 2017/04/26 by Daniel.Lamb

	Network platform file runs heart beats and responds to modified file changes.
	Cook on the fly server in the editor (COTS) now detects changes to content and notifies client.
	Fixed issue with network platform file not using correct sandbox.

	#test cook on the side shootergame

Change 3411131 on 2017/04/27 by Steve.Robb

	TIsTriviallyDestructible now supports forward-declared enums.

Change 3411186 on 2017/04/27 by Steve.Robb

	Fix for #includes in generated code for Within classes which are in a different module from the generated class.

Change 3411917 on 2017/04/27 by Steve.Robb

	Fixes to pushing/popping the CPP macro.

Change 3411966 on 2017/04/27 by Steve.Robb

	Include spam reduced in generated code.

Change 3412155 on 2017/04/27 by Ben.Marsh

	Fix for PVS Studio warning: VFOVInRadians used instead of HFOVInRadians.

Change 3412223 on 2017/04/27 by Ben.Marsh

	Fix for PVS-Studio warning: Calling SetHelperA.Num() twice.

Change 3412273 on 2017/04/27 by Ben.Marsh

	Fix for PVS-Studio warning: Duplicated variable name.

Change 3412511 on 2017/04/27 by Ben.Marsh

	PR #3462: Fixed PVS-Studio issues (Part 1) (Contributed by PaulEremeeff)


Change 3412582 on 2017/04/27 by Ben.Marsh

	Fix for PVS-Studio warning: Incorrect variable name in copy/pasted code

Change 3413136 on 2017/04/28 by Robert.Manuszewski

	Helper functions for dissolving specific GC clusters

Change 3413310 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Incorrect variable name in copy/pasted code.

Change 3413341 on 2017/04/28 by Gil.Gribb

	UE4 - Add prestream capability to allow us to preload always loaded sublevels. Only turned on for Shootergame.

Change 3413351 on 2017/04/28 by Ben.Marsh

	Include code analysis macros directly from Platform.h, so that macros are available to everything.

Change 3413352 on 2017/04/28 by Ben.Marsh

	Fixing a few more PVS studio warnings.

Change 3413437 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Comparison is always true.

Change 3413759 on 2017/04/28 by Ben.Marsh

	Suppressing warnings for PVS-Studio.

Change 3413784 on 2017/04/28 by Ben.Marsh

	Fix PVS-Studio warning.

Change 3413898 on 2017/04/28 by Ben.Marsh

	Fix PVS-Studio warning: Same conditional is checked twice.

Change 3413915 on 2017/04/28 by Ben.Marsh

	Fix PVS-Studio warning: LHS of expression is identical to RHS.

Change 3413989 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: If CurrentGraph->SubGraphs.Num() == 1, it will always enter the first conditional block.

Change 3414053 on 2017/04/28 by Ben.Marsh

	More PVS-Studio fixes.

Change 3414062 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Pointer to object goes out of scope without being freed.

Change 3414070 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Fix incorrect condition.

Change 3414071 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Array index is always zero.

Change 3414116 on 2017/04/28 by Ben.Marsh

	BuildGraph: Allow marking compile tasks as unsuitable for use with the parallel executor, via an AllowParallelExecutor="false" attribute.

Change 3414160 on 2017/04/28 by Ben.Marsh

	Add support for running PVS-Studio through UnrealBuildTool. To use, pass -StaticAnalyzer=PVSStudio to the build command line (similarly, the Visual C++ analyzer can now be invoked using -StaticAnalyzer=VisualCpp). A log file will be written to the Engine/Saved/PVS-Studio or <Project>/Saved/PVS-Studio directory containing diagnostics, which can be opened using the "unparsed output" filter in the PVS-Studio standalone application. High priority warnings are printed to stdout.

Change 3414237 on 2017/04/28 by Ben.Marsh

	EC: Allow disabling and enabling the log preprocessor via special markers in the log.

	To disable: <-- Suspend Log Parsing -->
	To enable: <-- Resume Log Parsing -->

Change 3414343 on 2017/04/28 by Ben.Marsh

	UBT: Exclude ThirdParty folders from PVS output.


Change 3414392 on 2017/04/28 by Ben.Marsh

	Fix regular strings being casted to BSTRs; BSTRs have a hidden length prefix in the two bytes before the first character, so passing a regular TCHAR* is reading random memory.

Change 3414459 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Object goes out of scope without being freed.

Change 3414495 on 2017/04/28 by Ben.Marsh

	Suppress some more PVS-Studio warnings.

Change 3414514 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Testing WorldType being equal to EditorPreview and not equal to Inactive is redundant; changing to match description in comment instead.

Change 3414526 on 2017/04/28 by Ben.Marsh

	Fix for PVS-Studio warning: Variable assigned to itself has no effect.

Change 3415183 on 2017/04/29 by Ben.Marsh

	Fix conflict in macro definitions for ENABLE_HTTP_FOR_NFS - rename the macro defined by NetworkFile to ENABLE_HTTP_FOR_NF. Hopefully fix CIS.

Change 3415765 on 2017/05/01 by Ben.Marsh

	Suppressing PVS-Studio warning to get things building cleanly. Not sure if FContentHelper is being leaked or not.

Change 3415853 on 2017/05/01 by Ben.Marsh

	EC: Fix jobs never completing if a "Sync & Build" step fails. Dependent jobs should evaluate their run conditions as soon as the parent step finishes, rather than waiting for child job steps to be created.

Change 3416138 on 2017/05/01 by Ben.Marsh

	Fix Fortnite cook failures. Not sure what the exact problem is here, but my hunch is that discarded "const" causes blueprint compile failures due to not being able to connect output pins between nodes for overloaded functions, or something like that.

Change 3416309 on 2017/05/01 by Ben.Marsh

	Build: Fix node names for static analysis.

Change 3416360 on 2017/05/01 by Ben.Marsh

	UBT: Remove unused arguments to PrepForUATPackageOrDeploy for Windows.

Change 3416398 on 2017/05/01 by Daniel.Lamb

	Cook on the fly NetworkFileServerConnection Remove FileModifiedCallback delegate when the connection is closed.

	#test Cook on the side shootergame.

Change 3416826 on 2017/05/01 by Daniel.Lamb

	Added callback to game when files are requested reload from networkfileserver.
	Game will need to unload / reload effected objects.
	Working on simple reload capability in shootergame.

	#test Cook on the side shootergame with reloading

Change 3417983 on 2017/05/02 by Ben.Marsh

	EC: Remove warning for lines not matching p4 tag syntax when running preflights; multi-line descriptions in shelved changelists break this pattern.

Change 3418747 on 2017/05/02 by Steve.Robb

	Fix for const pointer properties.
	Fix for UHT debugging manifest.
	Test added for pointer properties.

Change 3420477 on 2017/05/03 by Gil.Gribb

	UE4 - Removed check from windows async IO layer.

[CL 3421020 by Ben Marsh in Main branch]
2017-05-03 14:18:32 -04:00
Ryan Gerleve
a4db063766 Copying //UE4/Dev-Networking to //UE4/Dev-Main (Source: //UE4/Dev-Networking @ 3289368)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3240806 on 2016/12/20 by John.Barrett

	Added 'SendUnitRPCChecked' function, to streamline executing 'UnitTestServer_' pseudo-RPC functons within unit tests, on the server.

	Worked around an Engine bug with NetConnection.QueueBits.

Change 3240807 on 2016/12/20 by John.Barrett

	Added new variations of 'ReceiveNetFieldExports' exploits, "ReceiveNetFieldExports_MapAlloc", "ReceiveNetFieldExports_NullAlloc", "ReceiveNetFieldExports_NullCheck".

Change 3241838 on 2016/12/21 by John.Barrett

	Quick compile fix for Win32.

Change 3243149 on 2016/12/22 by John.Barrett

	Another Win32 compile fix.

Change 3252022 on 2017/01/10 by John.Barrett

	Added new non-shipping commandline switch, for appending to the commandline using a text file: -CmdLineFile="D:\Users\John\Desktop\ServerCmdLine.txt"

	This sidesteps Windows commandline length limit.

Change 3257927 on 2017/01/14 by John.Barrett

	Fixed a couple of issues in ReceiveNetFieldExports, and deprioritized the remaining issues by only allowing execution when Replay is enabled.

	#JIRA UENET-460, UENET-466, UENET-472, UENET-478, UENET-484, UENET-490

Change 3258731 on 2017/01/16 by John.Pollard

	Refactor network actor list management to be more efficient

	* Move dormancy list management to FNetworkObjectList
	* Optimize actor network dormancy by removing actors from the active list that are dormant on all connections
	* Removed NetUpdateTime on actor, and now use the NextUpdateTime on FNetworkObjectInfo (these values are more hot in the cache too)
	* We now early out of the consider logic faster when possible
	* Remove other misc unused network state/code and general cleanup

	Merging using FNMain->DevNetworking

Change 3258736 on 2017/01/16 by John.Pollard

	Fix compile

Change 3259482 on 2017/01/16 by John.Pollard

	Deprecate GetNetworkActor

Change 3264957 on 2017/01/19 by John.Pollard

	Deprecate bPendingNetUpdate, NetUpdateTime and LastNetUpdateTime

	Merging using FNMain->DevNetworking

Change 3264962 on 2017/01/19 by John.Pollard

	Fix for FORT-35711 - Edited buildings do not always replicate correctly

	We were removing the actor from the network object list too soon

	Merging using FNMain->DevNetworking

Change 3264963 on 2017/01/19 by John.Pollard

	Turn on adaptive network updates by default

	Merging using FNMain->DevNetworking

Change 3265878 on 2017/01/20 by John.Pollard

	UE-40902 - CIS warnings due to deprecated properties

Change 3265930 on 2017/01/20 by John.Pollard

	UE-40902 - CIS warnings due to deprecated properties

Change 3273552 on 2017/01/26 by John.Barrett

	Added way to specify Associativity for binary operators with the expression parser, which defines whether operators of the same precedence are executed Left-To-Right, or Right-To-Left.

	Defaults to Right-To-Left for legacy reasons.

Change 3273553 on 2017/01/26 by John.Barrett

	Added 'reflect' console command, tying existing FVMReflection helper to a string parser, allowing full access to UE4 reflection using C++ style syntax (like a supercharged get/set command), e.g:
	"Reflect Find(,PlayerController).Player.ViewportClient.GameInstance.LocalPlayers"

	Added supporting FVMReflectionParser class, for evaluating strings as reflection statements, using the ExpressionParser code to implement the syntax.

	Added automation testing for ExpressionParser binary operator Associativity (placed here rather than in Core, as the reflection parser is better suited to associativity tests).

Change 3273555 on 2017/01/26 by John.Barrett

	Added 'ServerAddCardInternal' and 'ServerUndoRemoveCard' exploit unit tests, for testing more nullptr access exploits in the card RPC code.

	Updated expected results on unit tests for issues that have been fixed.

Change 3273931 on 2017/01/26 by Bart.Hawthorne

	- Steamworks has been upgraded to 1.39
	- The steam controller implementation has been rewritten to accommodate the new interface added in 1.36

Change 3275010 on 2017/01/27 by John.Barrett

	Quick compile fixes.

Change 3276218 on 2017/01/27 by John.Pollard

	FORT-36482 - Fix issue with using wrong serializer for re-mapping objects

	Merging using FNMain->DevNetworking

Change 3276219 on 2017/01/27 by John.Pollard

	First pass at implementing net relevancy for replays

	* All connections are considered when determing if an actor is relevant
	* Enable by setting demo.UseNetRelevancy to 1
	* Override cull distance with demo.CullDistanceOverride

	Merging using FNMain->DevNetworking

Change 3278725 on 2017/01/31 by John.Barrett

	Fixed multiple card system RPC exploits, through checking parameters in _Validate functions.

	#JIRA UENET-445, UENET-512 and UENET-518

Change 3278730 on 2017/01/31 by John.Barrett

	Misc. NetcodeUnitTest updates.

Change 3278733 on 2017/01/31 by John.Barrett

	Marked last of card unit tests as fixed.

Change 3278956 on 2017/01/31 by Bart.Hawthorne

	Disable static analysis warnings from Steamworks headers

	#jira UE-41262

Change 3278978 on 2017/01/31 by Bart.Hawthorne

	Fixed Linux warning caused by initializing variables out of order

	#jira UE-41307

Change 3280081 on 2017/01/31 by Bart.Hawthorne

	ShooterGame now supports dedicated servers on PC/Mac/Linux

Change 3281217 on 2017/02/01 by John.Pollard

	PR #3172 - GitHub 3172 : Fixed IPAddressBSD validation when setting Ip from string.

Change 3283556 on 2017/02/02 by John.Barrett

	CIS compile fixes.

Change 3284509 on 2017/02/02 by John.Barrett

	CIS no-PCH compile fixes.

Change 3285075 on 2017/02/03 by Bart.Hawthorne

	- Use Engine\Binaries\ThirdParty\Steamworks libraries for 64 bit Steam builds since it seems to be working with 1.39
	- Add 32 bit and 64 bit Steam libs for linux

Change 3285229 on 2017/02/03 by John.Barrett

	CIS monolithic include warning fixes.

Change 3286108 on 2017/02/03 by Bart.Hawthorne

	- Fixed issues with Steam not working correctly on Linux
	- Removed unnecessary controller.vdf dependency

[CL 3289494 by Ryan Gerleve in Main branch]
2017-02-06 22:51:28 -05:00
Ben Marsh
5275490168 Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3277940)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3233612 on 2016/12/13 by Ben.Marsh

	UGS: Fix cases where precompiled binaries are submitted for a content change.

Change 3235584 on 2016/12/14 by Ben.Marsh

	UBT: Deprecate the overridable TargetRules.ShouldUseSharedBuildEnvironment() function; targets should specify which build environment to use by setting the BuildEnvironment field in their constructor instead.

Change 3235741 on 2016/12/14 by Ben.Marsh

	UBT: Deprecate the SetupBinaries() callback on the TargetRules class. Instead of overriding this, targets may override their launch module through the "LaunchModuleName" property in their constructor, and add extra modules to the "ExtraModuleNames" field on the TargetRules object itself.

Change 3238176 on 2016/12/16 by Ben.Marsh

	UBT: New XML config file parser. Now reads once at startup and can be applied to instanced objects rather than global fields, and caches parsed output in a binary form for quicker initialization on subsequent runs.

Change 3238249 on 2016/12/16 by Ben.Marsh

	UBT: Add attribute-driven command line parser.

Change 3238462 on 2016/12/16 by Ben.Marsh

	UBT: Include the Platform, Configuration and Architecture on the TargetRules. Add a constructor which takes the TargetInfo object and deprecate the parameterless one; these fields are currently initialized before invoking the constructor in RulesAssembly.

Change 3238564 on 2016/12/16 by Ben.Marsh

	UBT: Deprecate the ModuleRules constructor which takes a TargetInfo argument. Replace it with a read-only wrapper around the target rules instead, so target-specific configuration options can be read without needing to access global static variables. Also require that it's passed to the base class constructor.

Change 3239919 on 2016/12/19 by Ben.Marsh

	UBT: Remove the "PreferredSubPlatform" property. This is only used for Windows XP support, which is being retired anyway. Having the target define its own architecture is an awkward contractiction to maintain support for, since the target rules are constructed after the architecture already has been determined.

Change 3240061 on 2016/12/19 by Ben.Marsh

	UBT: Remove ThirdPartyHeaderFinder. I don't think anything is using this any more.

Change 3240175 on 2016/12/19 by Ben.Marsh

	UBT: Add the target name and project file location to the target rules.

Change 3240490 on 2016/12/19 by Ben.Marsh

	UAT: Remove Mac staging code that requires UAT to compile and construct .target.cs files when packaging, to check bUseSteam and bUseCEF3 flags. libsteam_api.dylib is now staged at build time by adding it as a bundle resource, CEF3 is already marked as a runtime dependency by CEF3.build.cs, and UnrealCEFSubProcess.app is already marked as a runtime dependency from WebBrowser.build.cs.

Change 3240717 on 2016/12/20 by Ben.Marsh

	UAT: Allow configuring UAT to run as if on a build machine by passing the -buildmachine argument on the command line.

Change 3240718 on 2016/12/20 by Ben.Marsh

	UAT: Remove target-specific properties that are no longer used by staging (bUsesSlate, bUsesCEF3, etc...). This stuff should all be handled inside UBT.

Change 3241002 on 2016/12/20 by Ben.Marsh

	UBT: Move most target configuration settings from UEBuildConfiguration to TargetRules. This encapsulates target specific settings that will allow instancing multiple targets in the future. To facilitate migration of settings to their new location, "UEBuildConfiguration" is now a property that returns the current target rules instance.

Change 3241027 on 2016/12/20 by Ben.Marsh

	Only copy the Steamworks dylib into the app bundle for monolithic builds. For all other times, just add it as a runtime dependency.

Change 3241055 on 2016/12/20 by Ben.Marsh

	UBT: Only store a ReadOnlyTargetRules object on the instanced build target; finalize the configuration before it's instantiated.

Change 3241156 on 2016/12/20 by Ben.Marsh

	Update SwarmInterface.csproj to .NET framework 4.5, to match what all other C# tools are using.

Change 3241205 on 2016/12/20 by Ben.Marsh

	Replace all uses of TargetRules.TargetType with TargetType.

Change 3241881 on 2016/12/21 by Ben.Marsh

	UBT: Remove project file information from UEBuildContext base class. As configurable properties are moved on to the TargetRules object, it will no longer be a dependency to instantiate the platform with this path.

Change 3241895 on 2016/12/21 by Ben.Marsh

	UBT: Remove toolchain support for Windows XP.

Change 3241908 on 2016/12/21 by Ben.Marsh

	UBT: Move settings for windows targets into a WindowsTargetRules class, which is exposed for targets to modify via the TargetRules.WindowsPlatform field.

Change 3242835 on 2016/12/22 by Ben.Marsh

	UBT: Fix multiple binaries being created if plugins specify module names more than once. MfMedia.uplugin has MfMediaFactory listed twice.

Change 3242837 on 2016/12/22 by Ben.Marsh

	Change UE4EditorServices to include MacSystemIncludes rather than Cocoa.h directly; causes FVector to be defined incorrectly in non-unity builds.

Change 3242923 on 2016/12/22 by Ben.Marsh

	Build: Fixes for conforming incremental workspaces:

	* P4 have table is now reset before deleting all the files. This prevents Perforce being out of sync if the delete fails for some reason.
	* Incremental workspaces are skipped when running a clean operation, because they do not have a workspace capture file (causing a full re-sync, always). The "P4 Clean" option is still effective for cleaning these workspaces.

Change 3242961 on 2016/12/22 by Ben.Marsh

	UBT: Move entry points from PreBuildSync() and PostBuildSync() from UEToolChain to UEBuildPlatform, and make the original toolchain versions static. These functions are already at odds with the rest of the data flow within UBT because they rely on global state cached outside the toolchain instance, making assumptions that UBT is only ever going to be invoked with one target that's constructed in the same run and that nothing is being cached (eg. UBT makefiles). Moving them onto UEBuildPlatform simplifies the toolchain lifecycle for other platforms without leaving Mac and IOS any more limited than they were before.

Change 3242981 on 2016/12/22 by Ben.Marsh

	UBT: Remove symbol server handling code into UAT's platform library, since it's never needed from inside UBT.

Change 3242999 on 2016/12/22 by Ben.Marsh

	UBT: Remove the StripSymbols() function from the UEToolChain base class. This functionality is only required by UAT, so it's better suited to being exposed through UAT's modular platform classes.

Change 3243022 on 2016/12/22 by Ben.Marsh

	UBT: Require an instance of the target rules to be able to construct a toolchain in UBT. This will allow configuring toolchain-specific options from the target, using reflection from config files, and the command line.

Change 3243083 on 2016/12/22 by Ben.Marsh

	UBT: Move settings for the Windows compiler version to use onto the Windows-specific target rules.

Change 3243090 on 2016/12/22 by Ben.Marsh

	UBT: Change the third party paths in UEBuildConfiguration to constants. Changing these would not work.

Change 3243423 on 2016/12/23 by Ben.Marsh

	UBT: Move a lot of settings from BuildConfiguration to TargetRules. This allows different targets to have different settings, naturally, and moves converts argument parsing and config to be driven by attributes.

Change 3243516 on 2016/12/23 by Ben.Marsh

	UBT: Remove the ValidateUEBuildConfiguration callback, which is no longer used. (XGE settings validation occurs in XGE.cs)

Change 3244020 on 2016/12/28 by Ben.Marsh

	UBT: Remove the BaseIntermediatePath static property. Precursor to removing RelativeEnginePath and IntermediateFolder properties.

Change 3244074 on 2016/12/28 by Ben.Marsh

	UBT: Remove the RelativeEnginePath variable from BuildConfiguration. UnrealBuildTool.EngineDirectory gives the absolute path, and can be used to construct a relative path when necessary.

Change 3244076 on 2016/12/28 by Ben.Marsh

	UBT: Remove BuildConfiguration.BaseIntermediateFolder; just use a fixed directory everywhere instead.

Change 3244083 on 2016/12/28 by Ben.Marsh

	UBT: Replace FileReference and DirectoryReference instance methods for manipulating files and directories with static methods, to mirror the System.IO.File and System.IO.Directory classes.

Change 3244441 on 2016/12/31 by Ben.Marsh

	UBT: Remove code to force PDBs when building with no debug info under XGE. Verified described symptoms (that it causes PCH generation to be serialized) no longer occur.

Change 3244687 on 2017/01/03 by Matthew.Griffin

	Changed Exception to use FirstInclude.IncludeName as PrecompiledHeaderIncludeFilename can be null when this occurs

Change 3246112 on 2017/01/04 by Ben.Marsh

	UBT: Fix UHT failures building some targets with the -useprecompiled option, due to differences in the order that circularly dependent modules are parsed. Precompiled binaries are now kept in the regular AppBinaries list, but are excluded from the build at the last minute. Also change some checks from IsEngineInstalled() to bUsePrecompiled, to prevent headers being overwritten when running in a non-installed precompiled build.

Change 3246223 on 2017/01/04 by Ben.Marsh

	UBT: Prevent version manifests being overridden if a file is not being built as part of the target.

Change 3246387 on 2017/01/04 by Ben.Marsh

	UBT: Remove BuildConfiguration settings for UnrealCodeAnalyzer. This tool isn't used at the moment, but it's configured using global variables accessed from all over the UBT codebase, making it difficult to refactor the build options into an instanced object. If we bring this tool back from the dead in the future, it should be possible to implement it using the exported JSON target definition or the XGE manifest, similarly to how IncludeTool uses it.

Change 3247004 on 2017/01/04 by Ben.Marsh

	UBT: Simplify the logic for cleaning targets in UBT. Now uses FileReference/DirectoryReference objects everywhere, doesn't require the compile/link environment, and does all the checking to avoid deleting precompiled binaries in one place.

Change 3247250 on 2017/01/04 by Ben.Marsh

	UBT: Prevent precompiled binaries being added to the list of app binaries twice.

Change 3247594 on 2017/01/05 by Ben.Marsh

	Build: Run sample and template editors on the same agents as the other incremental builds. Remove ProtoStar, which does not have any non-precompiled editor target to build.

Change 3247763 on 2017/01/05 by Ben.Marsh

	UBT: Allow the toolchain to update the list of build products for each module linked into a binary. Allows Mac to add dylibs and bundle resources specified per-module without having to construct a link environment and try to link them.

Change 3247775 on 2017/01/05 by Ben.Marsh

	UBT: Instance the target compile and link environments when they are required during building, and don't persist them on the UEBuildTarget instance.

Change 3247811 on 2017/01/05 by Ben.Marsh

	EC: Add a batch file for testing postp filters.

Change 3247839 on 2017/01/05 by Ben.Marsh

	EC: Include the name of the file being compiled when parsing MSVC errors and warnings.

Change 3248101 on 2017/01/05 by Ben.Marsh

	UBT: Fix Android support for force included headers.

Change 3248533 on 2017/01/05 by Ben.Marsh

	PR #3097: UBT project supports optional platforms (Contributed by PrimalJohnScott)

Change 3249205 on 2017/01/06 by Ben.Marsh

	UAT: Fix ParseTaggedP4Output throwing an exception if the same key name is specified more than once. This can happen when parsing the output from "P4 INFO", where multiple brokers are present.

Change 3249249 on 2017/01/06 by Ben.Marsh

	UBT: Check for the existance of AndroidManifest.xml within extracted AAR directories, rather than just checking for the existance of the directory itself. Perforce does not remove empty directories when cleaning a workspace unless the rmdir option is on the workspace, so this can cause incremental build failures to fail on build machines.

Change 3249486 on 2017/01/06 by Ben.Marsh

	UBT: Use relative paths in unity files when compiling for Mac/IOS, rather than generating a separate local/remote version of the file for gathering include dependencies. Absolute paths are only used to work around the way that MSVC concatenates paths internally; we don't hit the same problems when checking dependencies.

Change 3249736 on 2017/01/06 by Ben.Marsh

	UBT: Rename CPPEnvironment to CppCompileEnvironment, and remove the separate CPPEnvironmentConfiguration object. All settings are now stored directly on the CppCompileEnvironment object.

Change 3250179 on 2017/01/07 by Ben.Marsh

	Fix creating installed build when root directory contains a space in the name.

Change 3250181 on 2017/01/07 by Ben.Marsh

	UBT: Remove some esoteric (and unused, AFAIK) options for orthogonally building different platforms.

Change 3250223 on 2017/01/07 by Ben.Marsh

	UBT: Merge the LinkEnvironment and LinkEnvironmentConfiguration classes together.

Change 3250233 on 2017/01/07 by Ben.Marsh

	UGS: Allow specifying a workspace-specific sync filter, which is applied on top of the standard filter. Also fix filter being cleared if the cancel button is pressed, and help text being stripped out.

Change 3250241 on 2017/01/07 by Ben.Marsh

	UBT: Move the options for specifying additional Android architectures to target onto an Android-specific object on the TargetRules.

Change 3250400 on 2017/01/08 by Ben.Marsh

	UBT: Move executor config settings onto the executor instances.

Change 3257708 on 2017/01/13 by Ben.Marsh

	UBT: Remove the ThirdPartySourceDirectory constant; there are many places which hard-code or assume this location anyway, and it's not going to change.

Change 3260535 on 2017/01/17 by Ben.Marsh

	Add an optional "RequiredSubmittedChange" setting to EC settings files. Allows a scheduled job to run even if there have been no code changes submitted. Test with the utilization capture job.

Change 3260875 on 2017/01/17 by Ben.Marsh

	EC: Fix workspaces getting out of sync wrt. newly added files when jobs are aborted during a sync. In such cases, the P4 have table indicates the new files have been synced locally, but the workspace is forced back to a state before it had them due to the capture file. When a following sync tries to add them again, P4 believes the workspace already has them synced.

	To work around this, we now write an additional file to the root folder of a workspace containing the last CL that was captured, and sync back to it before doing the reconcile.

Change 3261724 on 2017/01/18 by Ben.Marsh

	Allow filtering job types from the list view in EC. Hide the utilization capture job by default. Also set up notifications for the utilization capture job.

Change 3261756 on 2017/01/18 by Ben.Marsh

	IncludeTool: Prevent matching a full enum declaration as a forward declaration.

Change 3261932 on 2017/01/18 by Ben.Marsh

	EC: Add support for specifying days of the week in schedules. The following syntaxes are supported:

	"Monday, Tuesday and Wednesday at 10:30"
	"Daily except Sunday and Wednesday at 14:30"

	 Also tweak display of dates relative to now to handle dates/times in the future, and include the date when specifying a day name.

	#jira UEB-729

Change 3262676 on 2017/01/18 by Ben.Marsh

	UBT: Split UBTMakefile into its own file. (From PR #3106)

Change 3263893 on 2017/01/19 by Ben.Marsh

	UBT: Stop exporting platform classes from UBT, as well as all the referenced classes that have to be made public as a result. Any platform-specific functionality that needs to be shared with UAT is now exposed through wrappers in separate public classes, eg. WindowsExports.cs, IOSExports.cs, etc...

Change 3264291 on 2017/01/19 by Ben.Marsh

	UBT: Fix errors generating documentation in UBT, and enable it by default. Will catch more errors with new code being added. Originally in PR #3106, but redone due to conflicts.

Change 3264534 on 2017/01/19 by Ben.Marsh

	UBT: Include plugin config files in generated projects.

Change 3264571 on 2017/01/19 by Ben.Marsh

	UBT: Prevent overwriting .modules files if nothing has changed. On builders, it's common to build multiple editors in the same workspace, and changing the last modified timestamp causes BuildGraph to fail due to tampered files.

Change 3265745 on 2017/01/20 by Ben.Marsh

	UGS: Automatically open UGS when running the launcher for a second time, rather than prompting to close the original instance.

Change 3265777 on 2017/01/20 by Ben.Marsh

	UGS: Automatically close and reopen when UGS is re-ran with the shift key held down to switch into unstable mode.

Change 3268314 on 2017/01/23 by Ben.Marsh

	UBT: Make sure version manifests are stable by sorting the list of build products, so they are only touched if the contents have really changed.

Change 3269601 on 2017/01/24 by Ben.Marsh

	UBT: Fix symbol files being added to manifest for some platforms even though debug info is disabled.

Change 3269607 on 2017/01/24 by Ben.Marsh

	UBT: Fix bug where UBT would need to be invoked when switching between two editors sharing the same engine binaries on Mac. The location of the .modules file cannot be guessed on Mac by looking in the same directory as the primary output executable because it's an .app bundle, and the actual modules are nested several directories below that.

Change 3269608 on 2017/01/24 by Ben.Marsh

	UBT: Fix additional files copied into the app bundle always being updated on Mac. Now uses rsync --checksum to make sure only modified files are updated.

Change 3271062 on 2017/01/24 by Ben.Marsh

	UBT: Fixes for bugs detected by PVS Studio (PR #3161)

Change 3272421 on 2017/01/25 by Ben.Marsh

	Fix commends regarding DDC in BaseEngine.ini

	#jira UE-41076

Change 3272810 on 2017/01/25 by Ben.Marsh

	Fix VS2017 being displayed as 'Visual Studio 15' in the Windows target settings panel.

Change 3272935 on 2017/01/25 by Ben.Marsh

	Fix Metal errors launching on Mac due to use of OSX environment settings before they are initialized. Toolchain settings are now constructed on demand in a separate class, for Mac, iOS and TVOS.

Change 3274167 on 2017/01/26 by Ben.Marsh

	Fix resource files not being compiled in installed builds on Windows. Was causing metadata not to be embedded into executables.

	#jira UE-36457

Change 3275557 on 2017/01/27 by Ben.Marsh

	Expand checks for propagation of restricted folder names to include source files, and to ensure that each restricted folder is represented in the output. Also improve messaging to show the dependency chain leading to a restricted folder being referenced, and which folder it is.

Change 3275628 on 2017/01/27 by Ben.Marsh

	UBT: Splitting configuration files into one class per-file.

Change 3276784 on 2017/01/29 by Ben.Marsh

	Add an authoritative list of confidential folder names, and expose it through global BuildGraph properties ($(RestrictedFolderNames) and $(RestrictedFolderFilter)). Also switch existing scripts to use it.

Change 3276792 on 2017/01/29 by Ben.Marsh

	UBT: Use UE4CSharp.prog files to indicate which projects should be included in the solution without having to hard-code a list of them in UBT.

Change 3277263 on 2017/01/30 by Ben.Marsh

	IncludeTool: Merging various fixes.

	* Fix warnings about #include directives after first code block from parsing monolithic headers.
	* Fix exception on startup if the intermediate directory does not already exist.
	* Add a special case for ignoring missing header guards from MonolithicHeaderBoilerplate.h, rather than marking it as an inline header. Marking it as inline prevents parsing include directives, which results in including CoreTypes.h from the wrong location.
	* Create job objects for spawned compiler instances to prevent them trying allocating more memory than the system can spare.
	* Remove (unused) code which makes assumptions about files ending with "Classes.h".
	* Add a verbose per-file output log to aid with debugging.
	* Negate the MakeStandalone command line option, which was added to allow tweaking forward declarations in already optimized files, so the optimized output does not have missing headers by default.
	* Fix missing headers when creating standalone files, due to incorrect list of previous files being passed in to the OutputFile constructor. Now passes the original list of included files, not the output list.
	* Fix initial header for a cpp file sometimes being removed. Forcibly including a header at the start of the file does not use the normal pathway for spidering through includes, so a second include of the same file was being generated. Any includes of that header were being forced into output, and the earlier include was then removed due to being redundant.
	* Prevent forward declaring enums which have to be parsed by UHT. UHT relies on includes to determine a parse order, and will fail if the enum definition has not been parsed first.
	* Use a relative path for private includes in the same module if there are any. Fixes some incorrect paths, and makes it clearer that we're doing something we shouldn't.

Change 3277307 on 2017/01/30 by Ben.Marsh

	UBT: Fix private PCHs not using correct header. Causes custom definitions to be excluded from the command line.

[CL 3278101 by Ben Marsh in Main branch]
2017-01-30 16:52:08 -05:00
Ben Marsh
20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

[CL 3226823 by Ben Marsh in Main branch]
2016-12-08 08:52:44 -05:00
Ben Marsh
4ba423868f Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3209340 on 2016/11/23 by Ben.Marsh

	Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.

	Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.

	  * Every header now includes everything it needs to compile.
	        * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
	        * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
	  * Every .cpp file includes its matching .h file first.
	        * This helps validate that each header is including everything it needs to compile.
	  * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
	        * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
	        * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
	  * No engine code explicitly includes a precompiled header any more.
	        * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
	        * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.

	Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.

[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
John Pollard
504d0bebbd Copying //UE4/Dev-Networking to //UE4/Main (Source: //UE4/Dev-Networking @3004032 )
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2939164 on 2016/04/10 by John.Barrett

	Updated base UNetConnection netcode to be bit-based, rather than byte-based (to optimize packet size with PacketHandler's and Oodle) - this CL is interdependent with subsequent CL's.

	Fixed an issue with FBitReader, when inserting a non-byte-aligned number of bits, where it would fail to zero the unused bits, in the last byte - this led to corrupt reads, in the new termination bit code (subsequent CL).

	Added better overflow detection for FBitWriter - plus other additional asserts.

	Fixed a potential bug with control channel messages, where non-byte-aligned control channel messages that were queued for later sending, were stored as byte-aligned, causing bad (too large) data to be sent.

	Optimized MAX_PACKET_HEADER_BITS to save a bit.

Change 2939169 on 2016/04/10 by John.Barrett

	NetcodeUnitTest maintenance.

	Added unit test for testing bit reader/writer limits.

	Added 'LogHex' debug command, for logging a hex-editor-style dump of selected memory data - without requiring a dependency on NetcodeUnitTest.

Change 2939170 on 2016/04/10 by John.Barrett

	Added work-in-progress DoS/DDoS unit test.

Change 2943718 on 2016/04/14 by John.Pollard

	Allow override of replay session ID + start using match ID for replays

Change 2944678 on 2016/04/14 by Ryan.Gerleve

	Merging using Release-4.11_to_Dev-Networking:

	4.11 hotfix change: fix for an assert that can occur when network clients call AActor::SetReplicates. SetReplicates will now only modify RemoteRole if Role is Authority and warn otherwise.

	#jira UE-27646

Change 2946909 on 2016/04/18 by John.Pollard

	Misc seamless travel cleanup + sanity checks

	* Cleanup the naming of variables and logic used to pick which actors will transfer to new world during seamless travel to more explicitly convey intent
	* Warn when there is no context for a world when destroying actors, it's likely that this world is the floating world during seamless travel, and if we hit this case, something is likely in a bad state

Change 2948883 on 2016/04/19 by John.Pollard

	GitHub request: https://jira.ol.epicgames.net/browse/UE-29385

Change 2952109 on 2016/04/21 by John.Barrett

	Fixed false positive with FBitWriter overflow error log, in PackageMap code.

Change 2953639 on 2016/04/22 by John.Barrett

	Fixed shadowed local variable - UE-29829

Change 2958267 on 2016/04/27 by John.Pollard

	Make vision manager more resilient to bad network data from old replays

Change 2958410 on 2016/04/27 by John.Pollard

	Fix incorrect warning when ReceivedBunch fails for replays

Change 2958411 on 2016/04/27 by John.Pollard

	Replay backwards compatibility fixes.

	* Mark custom properties/RPC's as incompatible if there was an error reading them in the stream, and ignore from there on out.
	* Don't close connection when failing to read properties on clients now that we can skip over this info easily.

Change 2960134 on 2016/04/28 by Ryan.Gerleve

	Protect against adding null player controllers to the out list of UEngine::GetAllLocalPlayerControllers.
	See https://udn.unrealengine.com/questions/289948/uenginegetalllocalplayercontrollers-pushes-a-null.html

Change 2960617 on 2016/04/29 by John.Barrett

	Made way for engine version code refactor.

Change 2961050 on 2016/04/29 by John.Pollard

	Log when we send hello to server in pending net game

Change 2961468 on 2016/04/29 by John.Pollard

	ReplayCompat: Show name of incompatible property when logging + log when we don't read correct number of bits + cleanup

Change 2964357 on 2016/05/03 by John.Barrett

	Optimized netcode SerializeInt\WriteIntWrapped, to allow compile-time calculation of the data bit size.

	The runtime calculated version of these functions, has been adjusted to not assert on 1-bit sized writes - to fix a false positive in Paragon.

	Adjusted some FMath functions, to allow CONSTEXPR for compile-time calculation.

Change 2964361 on 2016/05/03 by John.Barrett

	Update unit test to work with new integer serialization code.

Change 2964831 on 2016/05/03 by John.Barrett

	Back out net serialization changes for now.

Change 2964832 on 2016/05/03 by John.Barrett

	Back out unit test net serialization change.

Change 2964838 on 2016/05/03 by John.Barrett

	Fix Paragon false positive netcode assert.

Change 2966257 on 2016/05/04 by John.Pollard

	Unify network version logic + move to core

	* Move network version logic to core
	* Formalized concept of compatible network/replay changelist
	* Fixed up UDemoNetDriver to work with new version concepts
	* Fixed up Orion/other samples in the same way
	* This is first step to officially supporting backwards compatility for replays, and possibly networking in general (would be opt-in if so)

Change 2966657 on 2016/05/04 by John.Pollard

	Deprecate GEngineNetVersion, GEngineMinNetVersion and GEngineNegotiationVersion

Change 2968945 on 2016/05/06 by John.Pollard

	Print name of object that has NULL level

Change 2970529 on 2016/05/09 by Bart.Bressler

	Add an optional "CapturePercentage" command line parameter that has a percentage chance of generating capture files per connection

Change 2971233 on 2016/05/09 by Bart.Bressler

	Update Oodle DLLs in Orion

Change 2975585 on 2016/05/12 by Bart.Bressler

	- Keep track of STAT_NumNetActors on clients as well as servers
	- Change STAT_NumActors to just be the world actor count instead of using FActorIterator (FActorIterator was causing a hitch)

Change 2979207 on 2016/05/16 by Bart.Bressler

	Remove FActorIterator loop around world actor count retrieval in UNetDriver::TickFlush

Change 2981198 on 2016/05/17 by John.Pollard

	Changes to support FN replays

	* Save streaming levels within network stream
	* Don't load streaming level if it's already in the list
	* Remove need for meta data

Change 2981201 on 2016/05/17 by John.Pollard

	Forgot to check in

Change 2982075 on 2016/05/18 by John.Pollard

	Cache network checksum so we don't spam log (we call this function more now)

Change 2982092 on 2016/05/18 by John.Pollard

	Lower verbosity of log

Change 2986571 on 2016/05/23 by Bart.Bressler

	Fix issue where oodle wasn't getting enabled in shipping correctly

Change 2988628 on 2016/05/24 by Bart.Bressler

	When processing captures with the Oodle commandlet, only check files that end with "ucap" (there might be gzipped files that have the exact same filenames, for example)

Change 2988838 on 2016/05/24 by Bart.Bressler

	- Add script to pull down captures from S3
	- Add script to do the whole process from pulling down captures to generating dictionaries

Change 2994575 on 2016/05/31 by John.Pollard

	Include networkversion.h in UnrealNetwork.h, this is so that older code will continue to compile that relied on network version code that used to be in this file

Change 2996026 on 2016/06/01 by John.Pollard

	Add network version to FArchive

Change 2996043 on 2016/06/01 by John.Pollard

	Store network version on NetConnection/Bunch, replays properly initialize these to current replay network versions

Change 2996081 on 2016/06/01 by John.Pollard

	Remove unused FInBunch constructor

Change 2996544 on 2016/06/01 by John.Pollard

	Make sure network version is correct for external data + set on connection after checkpoint

Change 2996731 on 2016/06/01 by John.Pollard

	Set game network version for Orion

Change 2997042 on 2016/06/01 by John.Pollard

	Fix issue when game server times out, and replay service turns off live replay flag, and we fail to download last chunk + more log info when replay http chunk downloading fails

Change 2997908 on 2016/06/02 by Ryan.Gerleve

	Use the smoothed mesh transform for characters when recording client replays.
	Since the root component's transform may only be updated periodically, this greatly improves the quality of character movement.

Change 2998001 on 2016/06/02 by Ryan.Gerleve

	Set the NetDriverName in the replay spectator's constructor.
	The replay spectator will always be associated with a DemoNetDriver and this fixes cases where GetNetMode could return the wrong value before the net driver name was set (such as during BeginPlay).
	Also inverted the logic in IsForPlayback() to make it more intuitive.

Change 2998636 on 2016/06/02 by John.Pollard

	If we don't have enough external replay samples, use the best one

Change 2998637 on 2016/06/02 by John.Pollard

	Clamp replay time

Change 2998705 on 2016/06/02 by John.Pollard

	Replay fixes:

	* Fix issue when scrubbing to time 0, and first chunk takes longer than normal to download
	* Better streaming logic that works better with new backend delay logic
	* Better handling when replay flips from live to not live
	* Don't update StreamTimeRangeStart/End unless we got those values in the header response
	* Handle when we fail to download a chunk and HighPriorityEndTime is active

Change 2998832 on 2016/06/02 by Ryan.Gerleve

	Fix an issue that could cause the replay spectator controller to not get the notification that the spectator class has been received while recording a client replay.

Change 2999054 on 2016/06/02 by Ryan.Gerleve

	Added ability to set a maximum desired time budget for replay recording. Once the budget is reached, remaining actors will have to wait until the next frame to try to replicate.

Change 2999057 on 2016/06/02 by Ryan.Gerleve

	Fixed an issue that could cause the main game world to use the incorrect vision manager when deathcam was enabled and the replay recording time budget was set very aggressively.
	In this case, AOrionVisionManager2::PostInitializeComponents would be called before the spectator player controller was spawned in the playback world, causing it to fail to find the local player and not initializing GKillcamVisionManager correctly.

Change 2999749 on 2016/06/03 by Ryan.Gerleve

	RPCs will now be recorded in client replays.
	Cleaned up actor role swapping logic for client recording and re-use it for RPCs.

Change 3000051 on 2016/06/03 by Ryan.Gerleve

	Fix Paragon server crash.

	#jira UE-31618

Change 3001361 on 2016/06/05 by Ryan.Gerleve

	Added support for prioritizing actors during replay recording to get better results when a maximum desired recording time is set.
	Added virtual function GetReplayPriority to Actor, similar to GetNetPriority, but allows different priorities for live networking and replays.
	Moved FCompareFActorPriority to a header so that the DemoNetDriver can use it.

Change 3001365 on 2016/06/05 by Ryan.Gerleve

	Paragon now uses a desired recording time limit and enables actor prioritization for recording the deathcam replay.

Change 3002094 on 2016/06/06 by Ryan.Gerleve

	Missed file from a main merge fixup.

Change 3002417 on 2016/06/06 by Ryan.Gerleve

	Disabling a check to work around UE-31636 for now.

Change 3002547 on 2016/06/06 by John.Barrett

	Added improved 'DebugDump' command option to the Oodle trainer commandlet - this takes UE4 .ucap capture files, and batch converts them into Oodle-example-code compatible .bin files.

	Use through the new BatchDebugDump.bat file.

Change 3002989 on 2016/06/06 by John.Pollard

	Add ability to skip missing/changed properties in FFastArraySerializer

Change 3003072 on 2016/06/06 by John.Pollard

	Fix crash related to new replay backwards compatibility changes

#lockdown Nick.Penwarden

[CL 3004618 by John Pollard in Main branch]
2016-06-07 16:19:22 -04:00
Marc Audy
af581ecffc Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 2972815)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2821607 on 2016/01/08 by Mieszko.Zielinski

	Added a way to limit amount of information logged by vlog by discarding logs from classes from outside of class whitelist #UE4

	This feature was followed by refactoring of functions taking FVisualLogEntry pointers to use references instead.

Change 2828384 on 2016/01/14 by Mieszko.Zielinski

	Back out of visual log refactor done as part of CL#2821607 #UE4

Change 2965743 on 2016/05/04 by Tom.Looman

	Added check to PostActorConstruction to avoid BeginPlay call on pendingkill actor. UE-27528 #rb MarcA

Change 2965744 on 2016/05/04 by Marc.Audy

	VS2015 Shadow Variable fixes

Change 2965813 on 2016/05/04 by Tom.Looman

	Moved UninitializeComponents outside (bActorInitialized) to always uninit components when actors gets destroyed early.

	UE-27529 #rb MarcA

Change 2966564 on 2016/05/04 by Marc.Audy

	VS2015 shadow variable fixes

Change 2967244 on 2016/05/05 by Jon.Nabozny

	Remove UPROPERTY from members that don't require serialization and aren't user editable.
	#JIRA UE-30155

Change 2967377 on 2016/05/05 by Lukasz.Furman

	fixed processing of AIMessages when new message appears during notify loop
	#ue4

Change 2967437 on 2016/05/05 by Marc.Audy

	Add a static One to TBigInt
	Remove numerous local statics and TEncryptionInt specific version in KeyGenerator.cpp
	Part of fixing shadow variables for VS2015

Change 2967465 on 2016/05/05 by Marc.Audy

	Fix VS2015 shadow variables fixes

Change 2967552 on 2016/05/05 by Marc.Audy

	Fix compile error in DocumentationCode

Change 2967556 on 2016/05/05 by Marc.Audy

	Enable shadow variable warnings in 2015

Change 2967836 on 2016/05/05 by Marc.Audy

	Another DocumentationCode project fix

Change 2967941 on 2016/05/05 by Marc.Audy

	Make bShowHUD not config
	Expose HUD properties to blueprints
	Cleanup stale entries in BaseGame.ini
	Deprecate unnecessary colors in AHUD in favor of using FColor statics
	#jira UE-30045

Change 2969008 on 2016/05/06 by Marc.Audy

	VS2015 Shadow Variable fixes found by CIS

Change 2969315 on 2016/05/06 by John.Abercrombie

	Duplicating CL 2969279 from //Fortnite/Main/

	Behavior tree auxilary nodes, parallel tasks, active tasks, and aborting tasks shouldn't be ticked while the behavior tree is paused

	--------
	Integrated using branch //Fortnite/Main/_to_//UE4/Dev-Framework of change#2969279 by John.Abercrombie on 2016/05/06 14:21:40.

Change 2969611 on 2016/05/06 by Marc.Audy

	Default bShowHUD to true

Change 2971041 on 2016/05/09 by Marc.Audy

	Add Get/Set Actor/Component TickInterval functions and expose to blueprints

Change 2971072 on 2016/05/09 by Marc.Audy

	Fix VS2015 shadow variables warnings

Change 2971629 on 2016/05/09 by Marc.Audy

	PR#1981 (contributed by EverNewJoy)
	CheatManager is blueprintable (though very basic exposure at this time) and can be set from PlayerController
	DebugCameraController is now visible and can be subclassed and specified via CheatManager blueprint
	#jira UE-25901

Change 2971632 on 2016/05/09 by Marc.Audy

	Missed file from CL# 2971629

[CL 2972828 by Marc Audy in Main branch]
2016-05-10 16:00:39 -04:00
Max Chen
41e5062f30 Copying //UE4/Dev-Sequencer to //UE4/Main (Source: //UE4/Dev-Sequencer @ 2945541)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2837601 on 2016/01/20 by Thomas.Sarkanen

	Sequencer: Exposed bool, byte, event, fade, float, slomo, and visibility section keys in context menu

Change 2840895 on 2016/01/23 by Thomas.Sarkanen

	Sequencer: Moved key proxy handling from section into key area; added support for grouped keys; exposed color properties in context menu.

Change 2901092 on 2016/03/09 by Thomas.Sarkanen

	Sequencer: Fixed ensure() and crash when exiting PIE & then playing back in editor

	Made sure that instances that are playing that have active montages can re-connect to a playing montage if it is already active. We dont stop/start preview/non-
preview playback when switching modes right now so I've just made the system robust to the switch when playing back animation.
	Ensured that instances are kept up to date by hooking into EndPlayMapDelegate. This fires slightly later than OnEndPIE, so it allows us to pick up when instances
have been deleted from the world. OnEndPIE is fired before the worlds are shutdown so instances can still be bound to valid (but nearly dead) actors at this point.

	#jira UE-27898
	#jira UE-27899

Change 2901159 on 2016/03/09 by Chris.Bunner

	Allow EXR frames from SaveHighResScreenshot to be uncompressed (r.SaveUncompressedEXRFrames).

Change 2903123 on 2016/03/10 by Max.Chen

	Sequencer: Add snapping for the in/out range.

Change 2903126 on 2016/03/10 by Max.Chen

	Sequencer: Fix split and trim for cinematic shot sections so that the start offset value is set.

Change 2903132 on 2016/03/10 by Max.Chen

	Sequencer: Create camera here and set it as the current camera cut.

Change 2903138 on 2016/03/10 by Max.Chen

	Sequencer: Improve mechanism for adding objects to Sequencer. Hold down shift while dragging from content browser to add as a spawnable. Hold down ctrl while
dragging from content browser to add as a possessable.

Change 2903143 on 2016/03/10 by Max.Chen

	Sequencer: Add 4k to movie capture dialog.

	#jira UE-28147

Change 2903157 on 2016/03/10 by Max.Chen

	Sequencer: Pop out of locked camera when popping out of the sequence.

	#jira UE-27662

Change 2908097 on 2016/03/14 by Andrew.Rodham

	Sequencer: Added default viewport type onto the viewport types menu
	  - The activation command for a given viewport type no longer toggles it if it's already active, it will just do nothing.
	  - Switching back to the default viewport type can be achieved with SHIFT+D

Change 2911869 on 2016/03/16 by Max.Preussner

	Editor: Caching device proxy manager, so the UI doesn't constantly poll for the TargetDeviceServices module

Change 2917943 on 2016/03/22 by Thomas.Sarkanen

	Sequence Recording: Added "Record New Sequence From Current Player" to sub-sequence track menu

	This option is only available in PIE. When selected it primes a new seciton for recording against the pawn that is currently being controlled by the player.

Change 2917946 on 2016/03/22 by Max.Chen

	Sequencer: Automatically add and attach a cine camera when dropping a crane or rail.

Change 2917954 on 2016/03/22 by Thomas.Sarkanen

	Fix anim dynamics going crazy on time skips

	Added new API to FAnimNode_Base: NeedsDynamicReset and ResetDynamics.
	This allows nodes that subscribe to this interface to be reset on teleport/time skips.
	Call through to ResetDynamics on zero timestep (ie. skips) in the preview path in Sequencer.

Change 2917961 on 2016/03/22 by Frank.Fella

	Sequencer - Sequencer - Update the color track code to match the behavior in matinee, also remove empty light color tracks from the sequence, and add a missing
particle parameter track.

Change 2917984 on 2016/03/22 by Max.Chen

	Sequencer: Fix crash on deleting object binding nodes multiple times.

Change 2917986 on 2016/03/22 by Max.Chen

	Sequencer: Fix if adding multiple camera cuts at the same time with the same duration as an existing camera cut. The camera is replaced in this case.

Change 2917994 on 2016/03/22 by Jeff.Farris

	Support for scene depth picker. Used for focus depth sampling in cine cams.

Change 2918003 on 2016/03/22 by Max.Chen

	Sequencer - Fix selection issues related to keying an undo by moving the selection clear on rebuild to after the tree selection state has been cached by path.

Change 2920371 on 2016/03/23 by Max.Preussner

	UnrealEd: Added a file import path that doesn't load the entire file into memory prior to importing

	UFactory::StaticImport will now call FactoryCreateFile for both text and binary files. The default implementation will load the file into a buffer/string and call
FactoryCreateBinary/FactoryCreateText to preserve legacy behavior. New factories may override FactoryCreateFile to perform their own file processing instead.

Change 2923359 on 2016/03/25 by Max.Preussner

	UnrealEd: Refactored out StaticImportObject code into ImportObject

Change 2924887 on 2016/03/28 by Jeff.Farris

	Sequencer: Camera Anim and Camera Shake tracks now support PostProcess changes in the CameraAnim

Change 2927283 on 2016/03/30 by Max.Chen

	Sequencer: Fix crash resetting default in audio track in sequencer. Fix audio track rename when adding another audio.

	#jira UE-28836, UE-28859

Change 2928290 on 2016/03/30 by Max.Preussner

	ContentBrowser: Disabling 'Show in Explorer' context menu option for newly created/unsaved asset(s)

Change 2928480 on 2016/03/30 by Max.Preussner

	AssetTools: Added built-in type category for Media assets

Change 2928498 on 2016/03/30 by Max.Preussner

	AssetTools: Sorting asset type categories alphabetically

Change 2932326 on 2016/04/04 by Frank.Fella

	Sequencer - Add "paste from matinee" support for audio tracks, and add volume support to audio sections in sequencer.

Change 2933917 on 2016/04/05 by Max.Preussner

	Core: Added microseconds support to FTimespan

Change 2933920 on 2016/04/05 by Max.Preussner

	Sockets: Simplified socket timeout assignments

Change 2935434 on 2016/04/06 by Max.Chen

	Sequencer: Deselect possessable before converting it to a spawnable and deleting it. Also, make sure the newly converted spawnables are selected. This fixes a bug
where the transform gizmo remains after adding a spawnable.

	Also, consolidate code for adding possessables to sequencer so that the newly added possessable node will be selected in the widget tree.

	#jira UE-28215

Change 2935590 on 2016/04/06 by Jeff.Farris

	Made crane rig preview mesh at the tip move as expected and appear in a reasonable place.

Change 2936082 on 2016/04/07 by Max.Chen

	Sequencer: Attach should use default attach component of the actor if it exists. This fixes a bug where trying to attach to a camera crane rig attaches to the
proper component.

Change 2936118 on 2016/04/07 by Max.Chen

	Sequencer: Adding crane/rail with shift now adds the crane/rig as a spawnable and the attached cine camera as a spawnable. An attach track is created for the cine
camera spawnable.

	#jira UE-28308

Change 2937226 on 2016/04/07 by Max.Chen

	Sequencer: Add invalidation when levels are added or removed.This fixes a bug were if you have a level sequence open and then add a sublevel that the level
sequence operates on, it correctly updates the actors from the new sub level.

	#jira UE-27595

Change 2937263 on 2016/04/07 by Frank.Fella

	Sequencer - Changed the matinee to sequencer conversion tools so that curve keys set to "clamped auto" import as user tangents since we don't support clamped auto
in sequencer.

Change 2937273 on 2016/04/07 by Max.Chen

	Sequencer: No longer experimental/betal and now enabled by default.

	#jira UETOOl-625

Change 2937694 on 2016/04/08 by Max.Chen

	Curve Editor: Separate out input and output snapping.

	#jira UE-27209

Change 2937852 on 2016/04/08 by Andrew.Rodham

	Sequencer: Spawnables no longer use generated classes

	  - Spawnables now store a template actor instance, rather than a generated class
	  - All relevant code has been converted to use this new approach
	  - Spawnable defaults are now harvested directly from any spawned instances when the movie scene is saved, or when the object is de-spawned. We only do this for
spawnables *in the currently active sequence instance*. This approach ensures that instance components and other properties persist.
	    - Currently we don't mark the package as dirty when the defaults are changed. This needs to be addressed.
	  - Some fixes have been made to AActor and Actor Iterators to ensure that actors not contained within a level do not crash.
	  - Spawning optimisations to follow

Change 2937956 on 2016/04/08 by Max.Preussner

	Sequencer: Added selection range commands to general toolbar menu

Change 2937981 on 2016/04/08 by Max.Preussner

	Sequencer: Refactored GetKeyHandles to take a time range for filtering keys

Change 2938007 on 2016/04/08 by Max.Preussner

	Sequencer: Implemented selection range key selection

Change 2938184 on 2016/04/08 by Max.Chen

	Sequencer: Find in Content Browser is now in the top level menubar.

	#jira UE-21598

Change 2938665 on 2016/04/08 by Frank.Fella

	UMG - Add support for material animation.

Change 2939048 on 2016/04/10 by Max.Chen

	CineCamera: Change current position on rail to normalize position.

Change 2939067 on 2016/04/10 by Max.Chen

	Sequencer: Add paste color from matinee

Change 2939587 on 2016/04/11 by Andrew.Rodham

	Sequencer: Fixes to spawnable rework
	  - Removed commented out code.
	  - Fixed particle system components not disabling auto activate.
	  - Instance Components are now correctly registered on spawn.
	  - Removed ability to set the editable flag on actors in favor of a delegate assigned to SActorDetails to disable property editing on actors spawned from outside
of the currently focused sequence.

Change 2939666 on 2016/04/11 by Andrew.Rodham

	Sequencer: Fixed active sequence ID not being set on creation

Change 2940663 on 2016/04/12 by Andrew.Rodham

	Sequencer: Spawnable object templates now always have the RF_ArchetypeObject flag

	#jira UE-29337, UE-29339

Change 2940742 on 2016/04/12 by Thomas.Sarkanen

	Improvements to sequence recording API

	Sequence recording is now more extensible.
	Moved the majority of recorders into a seperate module.
	Cleaned up recorder API, removed bRecord that was only really used once.
	Added factory class as a modular feature that allows users to register and implement their own recorders.
	Recorders can supply their own settings classes. These are incorporated into the UI via a details customization so they appear to be seamlessly integrated.
	Exposed components to record as an advanced setting. Users can use this to gate the components and actors that are recorded.

	#jira UE-28850 - Update sequence recording API for better extensibility

Change 2940828 on 2016/04/12 by Max.Chen

	Level Editor: Clear the camera preview if the level viewport is locked to the same camera.

	#jira UE-27489

Change 2941090 on 2016/04/12 by Frank.Fella

	Sequencer - Fix inconsistencies with the level visibility track.
	+ Add an option to update a track instance when it stops playing due to it's parent movie scene being deactivated as a sub-scene.
	+ Reset level visibility state when the section ends, or when it's parent subsection ends.

Change 2941427 on 2016/04/12 by Andrew.Rodham

	Sequencer: Fixes for recorded dynamic components
	  - Dynamic components are now named uniquely within their owner actor, and are no longer re-bound to new object tracks when detached/re-attached
	  - New dynamic components are created every time a new component is detected on an actor, regardless of whether it was once attached before. This affords
recording externally managed components from a component pool.
	  - Section recorders for components that are no longer attached to the actor are now disabled correctly.

Change 2941760 on 2016/04/12 by Max.Preussner

	Editor: Setting up correct material expresions when creating material from normal map texture

Change 2941819 on 2016/04/13 by Max.Chen

	Sequencer: Fire named events in all sublevels.

	#jira UE-28843

Change 2942052 on 2016/04/13 by Andrew.Rodham

	Sequencer: Fixed not being able to add dynamic material parameter tracks to spawnables when the object is not spawned

	#jira UE-24287

Change 2942223 on 2016/04/13 by Max.Preussner

	Editor: Using built-in function to assign sampler format

Change 2942833 on 2016/04/13 by Max.Chen

	Sequencer: More copy matinee helpers.

	- Make some sections infinite.
	- Fix FindPossessableObjectId
	- Expose FindGroupByName

Change 2942944 on 2016/04/13 by Max.Chen

	Sequencer: Fix anim copy so that it doesn't create an animation clip longer than the next clip's start position.

Change 2943313 on 2016/04/14 by Max.Chen

	Sequencer: Initial matinee to level sequence asset converter. Right click on a matinee actor in the level and choose "Convert to Level Sequence"

	Current supports:
	 - movement tracks
	 - generic property tracks
	 - particle tracks
	 - anim control tracks
	 - event tracks
	 - audio tracks
	 - visibility track
	 - director track (fade, slomo, camera cuts)

	Possible todos:
	- Relative scale3D
	- Option to create spawnables instead of possessables
	- Create shots per director track camera cut instead of a direct translation to the camera cut track

	#jira UETOOL-467

Change 2943596 on 2016/04/14 by Andrew.Rodham

	Editor: Fixed placement mode scrollbar visibility not working for custom content

	#jira UE-27191

Change 2943651 on 2016/04/14 by Max.Chen

	Sequencer: Invalidate the audio waveform when the source changes.

	#jira UE-29394

Change 2943674 on 2016/04/14 by Max.Chen

	Sequencer: Store/restore playback state when rebuilding.

	#jira UE-29452

Change 2943993 on 2016/04/14 by Max.Chen

	Sequencer: Convert slot name from matinee to level sequence.

Change 2944156 on 2016/04/14 by Frank.Fella

	Sequencer - Fix undo when moving items into folders, and when deleting folder.

	#jira UE-27368

Change 2944227 on 2016/04/14 by Max.Chen

	Sequencer: Show curves in the curve editor if one of the parent nodes is selected. For example, if Location is selected, show Location.X, Location.Y, and
Location.Z

Change 2945057 on 2016/04/15 by Andrew.Rodham

	Editor: Fixed placement mode scrollbar visibility not working for custom content

	#jira UE-27191

#lockdown nick.penwarden

[CL 2945551 by Max Chen in Main branch]
2016-04-15 14:50:58 -04:00
John Pollard
308116c6f6 Fix CIS
#lockdown Nick.Penwarden

[CL 2903217 by John Pollard in Main branch]
2016-03-10 11:34:26 -05:00
John Pollard
239341c650 Copying //UE4/Dev-Networking to Dev-Main (//UE4/Dev-Main)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2814968 on 2016/01/04 by John.Pollard
	Remove warning per connection when same warning happens at net driver level

Change 2815271 on 2016/01/04 by John.Pollard
	Fix header uploads in replays showing wrong size

	#rb none
	#tests Compiled, confirmed correct size

Change 2830613 on 2016/01/15 by John.Barrett
	Added better ability for unit tests to test socket-level netcode

	Full changes:
	- Added flag for auto-reconnecting on connection close
	- Added hook for socket level sends
	- Added ability to block socket-level sends and pre-PacketHandler LowLevelSend's
	- Added ability for net connections to force-enable packet handlers, even if presently off in the engine

	#rb none

Change 2830617 on 2016/01/15 by John.Barrett@JC2Q-LT_UE4

	Enabled NetcodeUnitTest in Linux, and other minor updates.

	#rb none

Change 2830621 on 2016/01/15 by John.Barrett@JC2Q-LT_UE4

	Added 'PacketLimitTest' and 'PacketLimitTest_Oodle' unit tests, for testing/verifying that MaxPacket limits are respected, through testing with Bunches and with raw sends passed through PacketHandlers (such as Oodle).

	#rb none

Change 2832402 on 2016/01/18 by Bart.Bressler@bart.bressler_Dev_Networking

	Always use the physical platform file when writing out steam_appid.txt, because it has to live next to executable that's being run (CotF builds will output it to the wrong location).

	#rb josh.markiewicz
	#tests checked that steam_appid.txt was written to the correct place with both CotF and cooked builds

Change 2833728 on 2016/01/19 by Joe.Conley@Joe.Conley_EGJWD5708_Dev-Networking-Minimal

	Fix for UE-20017 - "Http server headers implemented as TMaps and are overridden".  Just changing TMaps to TMultiMaps.  Haven't modified the behavior of GetHeader(), which will still return the first header that matches.

Change 2844880 on 2016/01/26 by Joe.Conley
	Fix for UE-20017 Http server headers implemented as TMaps and are overridden

	Previously had submitted a fix that changes the request and response headers TMap into a MultiMap, but the consensus was that it would be better to leave them as TMaps, but allow appending onto the existing entry for a given request header with an "AppendToHeader" function, and to concatenate entries for the same header name in the response headers.  In both cases, entries for the same header name are concatenated with ", ".

	Mac and iOS already had the desired behavior for responses, just added the AppendToHeader function to their request classes.

	HTML5 still has no implementation of response headers, filed as separate JIRA issue UE-26047.

	#platformnotify josh.adams

Change 2859343 on 2016/02/08 by Bart.Bressler
	Default MaxSearchResults in FOnlineSessionSearch objects to 1 instead of 0 - otherwise, the FOnlineAsyncTaskSteamFindServerBase tasks will complete right away without searching for sessions. Also print a warning in the task if this will happen.

	#codereview josh.markiewicz

Change 2862352 on 2016/02/10 by Bart.Bressler
	Fix demo.SkipTime cvar to work with negative values

	#rb john.pollard

Change 2866624 on 2016/02/14 by John.Barrett
	Fix plugin commandlet crash.

	#rb none

Change 2866627 on 2016/02/14 by John.Barrett
	Added NetDriver/PacketHandler ability to send/receive connectionless packets - i.e. packets not associated with a UNetConnection.

	Removed 'bEnabled' from PacketHandler - PacketHandler is now a default always-on part of the Engine.

	Added 'CountBits' to LowLevelSend, to support bit-level additions to packets from PacketHandler's, and refactored related code.

	#codereview John.Pollard

Change 2866628 on 2016/02/14 by John.Barrett
	Added an HMAC (Hash-based Message Authentication Code) generating function, to the SHA-1 code - for use with performing secure net connection handshakes.

	#rb none

Change 2866629 on 2016/02/14 by John.Barrett
	Added 'stateless handshake' to UE4, allowing a handshake to be performed without any open UNetConnection - making it more difficult for DoS attacks to consume memory resources.

	#codereview John.Pollard

Change 2866630 on 2016/02/14 by John.Barrett
	Updated Oodle to support new stateless handshake.

	#rb none

Change 2866631 on 2016/02/14 by John.Barrett
	Updated NetcodeUnitTest to work with new connectionless/stateless handshake changes. Compiles, but netcode presently needs fixing.

	#rb none

Change 2868367 on 2016/02/16 by John.Barrett
	Updated NetcodeUnitTest to work with stateless handshakes (now fixed connecting).

	Also fixed further commandlet problems.

	#rb none

Change 2878025 on 2016/02/23 by John.Barrett
	Immediately stop processing zero-size packets, to prevent CPU utilization during DDoS.

	Log IP of new connections, post-stateless-challenge (first time we know IP is verified).

	#codereview john.pollard

Change 2883776 on 2016/02/26 by John.Barrett
	Fixed beacons to work with stateless handshake.

Change 2886773 on 2016/02/29 by John.Barrett
	Made PacketHandler bit overhead align upwards to the next byte -  this wastes more bits than necessary, but is required as a temporary fix.

Change 2887801 on 2016/03/01 by John.Pollard
	Use correct default values when initializing shadow state for replication.

	Fixes issues with certain components and actors that have default values that differ from CDO.

[CL 2901490 by John Pollard in Main branch]
2016-03-09 13:54:33 -05:00
Matthew Griffin
bb70b349ce Merging CL 2804086 from //UE4/Release-4.11 to Dev-Main (//UE4/Dev-Main) to isolate copyright update
#lockdown Nick.Penwarden

[CL 2819020 by Matthew Griffin in Main branch]
2016-01-07 08:17:16 -05:00
Ben Marsh
92ec2b8239 Copying //UE4/Dev-Build to Dev-Main (//UE4/Dev-Main)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2718441 on 2015/10/06 by Ben.Marsh@Ben.Marsh_T3245_Stream

	Allow nodes to be added with an "explicit" frequency, meaning that they'll only be part of manually triggered builds (not CIS).

Change 2718698 on 2015/10/06 by Ben.Marsh@Ben.Marsh_T3245_Stream

	Add a type of node that can execute an arbitrary sequence of tasks, and allow constructing graphs of such nodes from an XML file.

Change 2723013 on 2015/10/09 by Ben.Marsh@Ben.Marsh_T3245_Stream

	Small utility to quickly capture a workspace, or delete files to restore the workspace to a previously captured state (and output a p4 sync list to restore it)

Change 2744521 on 2015/10/28 by Matthew.Griffin@Matthew.Griffin_G5772_BuildStream

	Adding config entries to determine which platforms/configurations are available

	Currently only written out as part of the Rocket Build process but could be done elsewhere for other types of installed build.

	A near identical singleton class is used in both C++ and C# to load the config section and check whether configuration/platform combinations are valid.

Change 2773723 on 2015/11/19 by Ben.Marsh@Ben.Marsh_T3245_Stream

	Copying UnrealGameSync into Engine/Source/Programs.

Change 2773914 on 2015/11/19 by Ben.Marsh@Ben.Marsh_T3245_Stream

	PR #1687: [GitDependencies] New feature: ignore file support (.gitdepsignore) (Contributed by nbjk667)

Change 2775317 on 2015/11/20 by Ben.Marsh@Ben.Marsh_T3245_Stream

	Add a -listtps option to UBT, which will find all the TPS files in any directory that's compiled into a target.

Change 2780832 on 2015/11/25 by Ben.Marsh@Ben.Marsh_T3245_Stream

	Allow compiling a single file in UBT. Pass -singlefile=<Path> on command line to UBT to use.

Change 2781071 on 2015/11/25 by Ben.Marsh@Ben.Marsh_T3245_Stream

	Precompile all valid engine modules for Rocket by default. Modules may set the PrecompileForTargets field to control which configurations they should be compiled for. Modules which currently fail to compile have this set to
PrecompileTargetsType.None.

	#codereview Matthew.Griffin

Change 2784469 on 2015/12/01 by Matthew.Griffin@Matthew.Griffin_G5772_BuildStream

	Added -FastPDB commandline parameter for UBT, so that we can make use of the /DEBUG:FASTLINK option in VS2015

Change 2784722 on 2015/12/01 by Matthew.Griffin@Matthew.Griffin_G5772_BuildStream

	Made -FastPDB option part of BuildConfiguration instead of checking commandline at each place it's used. Also added option to override if someone doesn't want it automatically added to their project files.

Change 2787501 on 2015/12/02 by Ben.Marsh@Ben.Marsh_T3245_Stream

	Restore change to gather VC environment directly from registry.

#lockdown Nick.Penwarden

[CL 2790002 by Ben Marsh in Main branch]
2015-12-04 09:32:58 -05:00