Commit Graph

68 Commits

Author SHA1 Message Date
Jerome Delattre
ba5b3a87b5 Output Functional Tests metadata in test info during execution in the log
Use Automation.LogBPTestMetadata CVar to enable the behavior

#jira UE-175266
#preflight 63e15f061020773a3f113f5b
#rb Chris.Constantinescu

[CL 24177156 by Jerome Delattre in ue5-main branch]
2023-02-13 11:33:49 -05:00
patrick enfedaque
369054a373 AFunctionalTest: No support for DataLayers
#rb jeanfancois.dube
#preflight skip

[CL 23989321 by patrick enfedaque in ue5-main branch]
2023-02-03 08:30:39 -05:00
zak middleton
cab8a68724 #ue5 - Fix truncation warnings in modules: DeviceProfileServices, FieldSystemEngine, FontEditor, FunctionalTesting. Includes some related engine fixes as well.
#jira UE-160832
#rb Andrew.Davidson, Dave.Jones2
#preflight 632cbdc17b582f58ab6315ad

[CL 22164453 by zak middleton in ue5-main branch]
2022-09-23 20:23:56 -04:00
dave jones2
0f77ef0224 Added missing tests for various core types. Also cleaned up const usage in the function declarations.
This is a resubmit of 20675159, which changed the inputs to const ref. However, that can break BP nodes that rely on using default values. Instead, we just drop the superfluous 'const' instead.

#rb justin.hare
#preflight 62bf1669ed35ee71a76e4b18
#jira none

[CL 20917189 by dave jones2 in ue5-main branch]
2022-07-01 13:50:07 -04:00
Jerome Delattre
c35aec0e53 Make AFunctionalTest's Author and Description public properties
#jira UE-157317
#preflight 62b31e15d76167320e288565
#rb trivial

[CL 20830355 by Jerome Delattre in ue5-main branch]
2022-06-27 10:14:57 -04:00
dave jones2
9b1a83861a [Backout] - CL20675159
#fyi dave.jones2
Original CL Desc
-----------------------------------------------------------------
Added missing tests for various core types. Also cleaned up const and reference usage in the function declarations.

#rb justin.hare
#preflight 62a93a76054bb5c04e1b0020
#jira none

[CL 20678517 by dave jones2 in ue5-main branch]
2022-06-15 18:56:38 -04:00
dave jones2
ef9dbb4e52 Added missing tests for various core types. Also cleaned up const and reference usage in the function declarations.
#rb justin.hare
#preflight 62a93a76054bb5c04e1b0020
#jira none

[CL 20675159 by dave jones2 in ue5-main branch]
2022-06-15 15:10:02 -04:00
JeanFrancois Dube
51ad294492 OFPA support for functional tests.
Maps and functional test actors needs to be resaved.

#jira UE-151432, UE-145986
#rb richard.malo
#preflight 628f7234f622d972b5d7d752

[CL 20378197 by JeanFrancois Dube in ue5-main branch]
2022-05-26 08:42:23 -04:00
Michael Galetzka
76cee75854 Removed useless stack walks for test info messages; added some test stats
#jira none
#rb simon.tovey
#preflight 6283f65c486700b561a1dc26

[CL 20249713 by Michael Galetzka in ue5-main branch]
2022-05-17 15:47:34 -04:00
aurel cordonnier
e3f7878676 Merge from Release-Engine-Test @ 17462327 to UE5/Main
This represents UE4/Main @17430120 and Dev-PerfTest @17437669

[CL 17463546 by aurel cordonnier in ue5-main branch]
2021-09-08 16:42:26 -04:00
Jason Adcock
38a159c6fb Add CallInEditor function specifier to DebugGatherRelevantActors in FunctionalTest.h
#jira UE-116235
#8054
#rb brian.bekich

[CL 17183366 by Jason Adcock in ue5-main branch]
2021-08-16 18:13:46 -04:00
Jerome Delattre
aa9c726b34 Use GetActorLabel instead of GetName when taking Screenshot with functional test
Actor Name is a property that user can't change directly from the Outliner now. To keep to ScreenshotFunctionalTest actor behavior seamless for the user, we use the actor label instead.
A property is introduced to hold the Actor name on the Client build.

+ update all the necessary screenshot names.

#jira UE-114551
#rb Andrew.Grant, JeanFrancois.Dube, William.Ewen
#rnx

[CL 16152859 by Jerome Delattre in ue5-main branch]
2021-04-28 22:51:13 -04:00
Zousar Shaker
3b4c8fc1c5 Automated wrapped object pointer upgrade for Engine + ShooterGame + ShooterGame referenced plugins
#rb none

[CL 15224650 by Zousar Shaker in ue5-main branch]
2021-01-27 17:40:25 -04:00
Marcus Wassmer
3b81cf8201 Merging using //UE5/Main_to_//UE5/Release-Engine-Staging @14384769
autoresolved files
#rb none

[CL 14384911 by Marcus Wassmer in ue5-main branch]
2020-09-24 00:43:27 -04:00
Marc Audy
a7c9001a94 Merging //UE5/Release-Engine-Staging to Main (//UE5/Main) @ 14075166
#rb
#rnx

[CL 14075271 by Marc Audy in ue5-main branch]
2020-08-11 01:36:57 -04:00
ben hoffman
7bfb54c87e Add asserts compatabile with doubles for Functional Tests
#jira none
#rb marc.audy
#rnx

[CL 13679863 by ben hoffman in ue5-main branch]
2020-06-15 16:46:00 -04:00
ryan durand
471d972e62 Updating copyright for Engine Developer.
#rnx
#rb none


#ROBOMERGE-SOURCE: CL 10869240 via CL 10869516 via CL 10869902
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870584 by ryan durand in Main branch]
2019-12-26 15:32:37 -05:00
andrew grant
cd81dee9ab Created FunctionalTest base class.
FunctionalTest now implements TreatLogErrorsAsErrors and TreatLogWarningsAsErrors. Default is true and false, but projects and individual tests can override these.

#rb CR'd
[at]josh.engebretson [at]clayton.langford [at]ben.salem


#ROBOMERGE-SOURCE: CL 6238394 via CL 6242055

[CL 6242098 by andrew grant in Main branch]
2019-05-01 21:54:46 -04:00
Ben Marsh
7598af0532 Update copyright notices to 2019.
#rb none
#lockdown Nick.Penwarden

[CL 4662404 by Ben Marsh in Main branch]
2018-12-14 13:41:00 -05:00
Marc Audy
d90da4ab1a Merge to Dev-Main for 4.20 @ 4090813
#rb
#rnx
#lockdown Nick.Penwarden

[CL 4091081 by Marc Audy in Main branch]
2018-05-23 21:04:31 -04:00
JeanMichel Dignard
81bc574d4c Copying //UE4/Dev-Enterprise to //UE4/Dev-Main (Source: //UE4/Dev-Enterprise @ 4059031)
#lockdown Nick.Penwarden
#rb none

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

Change 3974233 by Rex.Hill

	Optimized BuildStaticMeshVertexAndIndexBuffers and TEdgeBuilder

Change 3974234 by Rex.Hill

	Reduced number of calls to SaveRawMesh and LoadRawMesh

Change 3974235 by Rex.Hill

	Optimized SaveRawMesh by pre-allocating buffer

Change 3981370 by Jamie.Dale

	Added support for deprecated (renamed) classes, structs, enums, functions, and properties in Python

	The glue code generation will now use the existing redirects system to build deprecated entries for old names. You can also specify deprecated names to the ScriptName and ScriptMethod meta-data values by adding extra semi-colon separated entries (the first entry is the current name).

	Accessing deprecated objects in Python leads to a deprecation warning when developer mode is enabled.

Change 3983875 by Jamie.Dale

	Exposed some asset registry functions that may be useful in a commandlet environment

Change 3983901 by Jamie.Dale

	Hoisted some AssetData helpers onto the struct in Python

Change 3988367 by Jamie.Dale

	Python now honors EditInstanceOnly and EditDefaultsOnly when setting property values

Change 3988369 by Jamie.Dale

	Exposed generic get_default_object function that takes a type and returns you the CDO

	This is needed for types that aren't natively exposed to Python (such as Blueprint generated types)

Change 3989890 by Jamie.Dale

	Moved BlutilityActor to be Private in EditorScriptingUtils

	This can be removed once it's no longer needed.

Change 3989900 by Jamie.Dale

	Updated EditorScriptingUtilities to use the Public/Private folder structure for source code

Change 3990082 by Anousack.Kitisa

	Added plugin for Shotgun integration in Unreal.

	#jira UEENT-959

Change 3990783 by Anousack.Kitisa

	Changed ShotgunMenuItem to a struct.

Change 3991139 by Jamie.Dale

	Minimized use of GUnrealEd (favoring GEditor) so that this code can be used by commandlets

	Removed redundant usages of GEditor/GUnrealEd from within UEditorEngine itself, and fixed cases where null data was being accessed. Testing that loading, saving, and creating a new blank map will now work in a commandlet without crashing.

Change 3993189 by Jamie.Dale

	Fixed some mismatched return types

Change 3993191 by Jamie.Dale

	Inital support for taking the GIL at key points where external C code calls into Python

Change 3993683 by Patrick.Boutot

	[LTC]
	Add a CustomTimeStep that decode a LinearTimecode from the MediaSource. The MediaPlayer need to support buffering and should not run late since it's used to tick the engine time.
	Update DropTimecode to use the new Timecode structure in TimeManagement.

Change 3994430 by Jamie.Dale

	Adjusted how inline structs work so that types known at compile time can inline allocate without being fully hand-wrapped in Python

	They must now be registered via FPyWrapperTypeRegistry::RegisterInlineStructFactory before we start generating wrapped types

Change 3996083 by Jamie.Dale

	Added a distinct type for generated enum types so that you can query their available enum entries

Change 3998253 by conan.reis

	Remove redundant Perforce error output from the log

Change 4000307 by JeanMichel.Dignard

	Optimized FFbxImporter::ValidateAllMeshesAreReferenceByNodeAttribute()
	- Stored all scene nodes geometry ids in a set instead of looping on all scene nodes for every geometry. O(N) instead of O(N^2).
	- For 38685 scene nodes and 5417 geometry, the time went from 2 min 21.688 s to 0 min 0.098 s.

Change 4000605 by Jamie.Dale

	Added support for constant "hoisting"

	This allows you to tag a helper function that returns a constant with ScriptConstant meta-data (providing a potentially overridden name) to "hoist" that helper function to be a constant of the type it operates on when wrapped for Python (ScriptConstantHost can be used to host the constant on a struct rather than its own object).

Change 4001617 by Jamie.Dale

	Updated ScriptMethod and ScriptConstant to allow hoisting onto other classes as well as structs

	This allows you to have a runtime class be extended via methods in an editor-only module

Change 4005287 by Jamie.Dale

	Added a GIL lock when Slate Tick events call back into Python

Change 4005383 by Andrew.Rodham

	Sequencer: Initial scripting exposure and support

	First pass includes the following:
	  - Find/add/interate master tracks
	  - Find/add/interate bindings (both possessables and spawnables)
	  - Find/add/interate tracks on bindings
	  - Add/interate sections on tracks
	  - Get/Set section ranges

Change 4008609 by Jamie.Dale

	Added some missing native Python types to the documentation

	Native modules now build up a list of types and functions associated with them. This information is then passed through to the document generation to ensure that all exposed native types and functions are documented.

	In addition, any native Python module files are now assimilated into the unreal.py stub file and parsed so that they can be documented too.

Change 4008654 by Jamie.Dale

	Allow math operators to use the base type versions unless overridden

Change 4009740 by Patrick.Boutot

	Add BP function to convert a Timecode into a string.

Change 4009763 by Patrick.Boutot

	Update AudioCapture to retreive the SampleRate. Used by the LinearTimecode. Change the requested format from int16 to float since we converted it into that format later on.

Change 4009768 by Andrew.Rodham

	Removed explicit names from ScriptName methods, expanded sequencer scripting range functionality

Change 4009830 by Jamie.Dale

	Added support for UPARAM(ref) on arguments exposed to Python

	For standard functions, this just produces an input and output for the same argument (we can't mutate the input due to potential coercion).

	For ScriptMethod functions that use it on the 'self' argument, this will mark the function as "inline" and have the function apply the result of the 'self' argument back onto the 'self' instance after calling the function.

Change 4010034 by Jamie.Dale

	Added support for init_unreal.py start-up scripts

	These can be placed in any known sys.path in Python, including the Content/Python folders we automatically add, and the UnrealEngine/Python directory under the users home directory.

Change 4010422 by Jamie.Dale

	Improved errror reporting during Python generation

	It will now ensure if a debugger is attached to draw programmer attention to an error.

Change 4010498 by Patrick.Boutot

	Remove unnecessary loop Timecode.ToFrameNumber()

Change 4011312 by Jamie.Dale

	Duplicate deprecated names will no longer assert during Python glue generation

	They will now log a warning and continue

Change 4012068 by JeanMichel.Dignard

	Allow to render thumbnails for newly created packages.
	- To render a thumbnail, you either need a customer thumbnail renderer or a cached thumbnail. Querying cached thumbnails fails for newly created packages because it calls DoesPackageExist which check on disk. This call is unnecessary since we're relying on FindPackage which only works for packages that are loaded in memory.

Change 4013781 by Jamie.Dale

	FFrame::KismetExecutionMessage (or LogRuntimeError or LogRuntimeWarning) will now produce Python exceptions

	You can use these to emit warnings or errors from UFunctions wrapped for scripting, and when called from Python they will produce a Python exception (for errors), or Python warning (for warnings).

Change 4014337 by Jamie.Dale

	Struct coercion now errors if you provide a sequence with too many elements

	This also makes sure that PyConversion doesn't set an error state if ESetErrorState::No is passed (which could have previously happened from type casting calls).

Change 4015290 by Andrew.Rodham

	Sequencer: Moved runtime functionality from ISequencerChannelInterface to IMovieSceneChannelInterface

	  - Rename IBatchChannelInterface to IMovieSceneChannelInterface
	  - Removed MovieScene::Dilate()
	  - Added TMovieSceneChannelTraits::SupportsDefaults to automatically stub out functions relating to channel defaults

Change 4015664 by Jamie.Dale

	Renamed ScriptMathOp meta-data to ScriptOperator

Change 4016230 by Jamie.Dale

	Fixed incorrect make/break path in Importance Sampling Library (for Importance Texture)

Change 4017326 by Jamie.Dale

	Added make and break support in Python

	Structs that have a native make function will now use this as their constructor. This also adds support for breaking a struct into a tuple, either via a native break function, or via generic property enumeration.

Change 4017551 by Jamie.Dale

	Removed redundant outer parameter from find/load_asset/package

Change 4018594 by Jamie.Dale

	Added ScriptMethodSelfReturn as an alternative to UPARAM(ref)

	These two function signatures produce the same behavior and have the same cost in Python, the only difference is how they appear to Blueprints (and Blueprints seem to favor non-reference functions).

	UFUNCTION(..., meta=(ScriptMethod))
	static void DoThing(UPARAM(ref) FThingType&, int32);

	UFUNCTION(..., meta=(ScriptMethod, ScriptMethodSelfReturn))
	static FThingType DoThing(FThingType, int32);

Change 4020956 by Anousack.Kitisa

	Added Shotgun to the Level Editor/World Outliner and Content Browser context menus when there's a selected actor or asset.

	#jira UEENT-1219

Change 4021986 by Anousack.Kitisa

	Used the Python startup scripts mechanism to launch the Shotgun bootstrap script.

	Related to Jira UE-57896.

Change 4022993 by Jamie.Dale

	Added support for extra operators on Python structs

	You can now expose bool conversion and comparison operators (==, !=, <, <=, >, >=) in addition to the previous set of math operators. As part of this there is now stricter signature validation when generating the Python binding.

Change 4023226 by Jamie.Dale

	Added Make and Break function for FSoftClassPath

Change 4023348 by Jamie.Dale

	Exposed some methods and operators for PrimaryAssetId and PrimaryAssetType

Change 4027911 by Jamie.Dale

	Cross-outer redirects are no longer applied in Python

	#jira UETOOL-1382

Change 4029618 by JeanMichel.Dignard

	Unreal Studio UX
	- Made "Unreal Studio" the default tab in the new project wizard if we're using an installed enterprise build.
	- Create new projects as enterprise projects if we're using an insalled enterprise build.

	#jira UEENT-1231, UEENT-796

Change 4030217 by Jamie.Dale

	Exposed ScopedSlowTask to Python

	#jira UETOOL-1375

Change 4030784 by Matt.Hoffman

	Sequencer curve editor now shows vertical axis labels.

	#jira UE-58160

Change 4030858 by JeanLuc.Corenthin

	Expose LOD creation thru Python:
	- Create one struct to hold onto reduction settings per LOD
	- Create one struct to hold onto an array of reduction settings and a parameter to enable of disable automatic computation of screen size
	- Create new method to apply reduction settings to an array of StaticMeshActors

	#jira UEENT-1232

Change 4032239 by Jamie.Dale

	Cleanup pass over wrapped structs

	- Code dealing with reflected structs now uses UScriptStruct rather than UStruct.
	- The old PyConversion::NativizeStruct and PyConversion::PythonizeStruct have been renamed to PyConversion::NativizeStructInstance and PyConversion::PythonizeStructInstance.
	- New PyConversion::NativizeStruct and PyConversion::PythonizeStruct functions have been added to convert an object (or Python type) to a UScriptStruct (akin to what PyConversion::NativizeClass and PyConversion::PythonizeClass does for UClass).

Change 4032247 by Jamie.Dale

	Cleaned up some Python slow task code

Change 4032251 by Jamie.Dale

	Added functions to get the Python type associated with an Unreal class, struct, or enum

Change 4032258 by Jamie.Dale

	Added Python iterators for Unreal objects, classes, and structs, as well as the Python types wrapped by Unreal classes or structs

	#jira UETOOL-1380

Change 4032320 by Jamie.Dale

	Fixed Python object iterators skipping their first item

Change 4032321 by Jamie.Dale

	Added Python iterators for actors and selected actors

	#jira UETOOL-1380

Change 4033908 by Anousack.Kitisa

	Added Shotgun settings for metadata tags.

	#jira UEENT-1175

Change 4033909 by Anousack.Kitisa

	Added wrapper function to sync Content Browser to assets for scripting.

	#jira UEENT-1218

Change 4034951 by Matt.Hoffman

	Media Tracks now highlight when added to a Sequence/UMG animation.

Change 4034966 by Jamie.Dale

	Added GIL locks around post_init code that can be called from C++

Change 4035019 by Matt.Hoffman

	UMG Render Transforms + Margins now support infinite sections.

Change 4035470 by Andrew.Rodham

	Introduced a common base class for all movie scene channel data, FMovieSceneChannel.
	Removed IMovieSceneChannelInterface.
	Renamed FMovieSceneChannelEditorData to FMovieSceneChannelMetaData.
	Renamed FMovieSceneChannel and TMovieSceneChannel to FMovieSceneChannelData and TMovieSceneChannelData, to make way for common channel base class.
	Renamed instances of 'specialized' channel editor data to 'extended' channel editor data.
	Introduced non-templated FMovieSceneChannelHandle and a templated version. Changed internal implementation to use a lookup rather than a directly resolved weak ptr.
	Various pieces of documentation and cleanup.

Change 4037112 by Max.Chen

	Sequencer: Added some missing RF_Transactional flags to newly created sections.

Change 4037121 by Max.Chen

	Sequence Recorder: Timecode recording

	Introduced an FSourceTimecode which is saved as editor only data to the MovieSceneSection and MovieScene. FSourceTimecode consists of an FFrameNumber delta that correlates the section's initial start time to an FTimecode. The FFrameNumber is adjusted whenever the section is moved.

	One use case for this is through sequence recorder, which captures the timecode at the start of recording and saves an FSourceTimecode per movie scene section it creates. If the section is moved, it can always be returned to its source timecode by the section's right click menu, "Sync to Source Timecode".

	#jira UESEQ-406

Change 4038462 by Jamie.Dale

	Added support for using Python callables with delegates

	All the "x_function" methods on delegates and multicast delegates now have an "x_callable" equivalent that take a Python callable (we attempt basic validation of the signature, but that only allows us to check the input argument count is what we expect).

	Internally the callable is wrapped in a UObject, so certain GC restrictions are present (and is why coercion is disabled for callables). Delegates wrapped in Python (including as a direct property of an object or struct, or inside a container) will be kept alive via the Python reference collection, however once there are no Python references left the proxy object will be allowed to die unless something external has taken a reference to the proxy object.

Change 4039123 by James.McNatton

	Remove dependency on SteamController in VirtualCamera #rb none

Change 4039162 by Jamie.Dale

	Fixed linter warnings about unescaped backslashes in docstrings

Change 4039170 by Jamie.Dale

	No longer expose deprecated functions or properties if they clash with another Python exposed item

Change 4039429 by Max.Chen

	Sequence Recorder: Swap to editor actors on end PIE if the actors to record were set to the PIE actors

Change 4039442 by Max.Chen

	Sequence Recorder: Find the existing object binding and record into it if it exists. When recording to an existing object binding, if the track exists, remove all animation data and reuse the track.

Change 4039477 by Jamie.Dale

	Added warnings for conflicting Python type and field names

Change 4039478 by Jamie.Dale

	Fixed warnings for conflicting Python type and field names

Change 4039511 by Max.Chen

	Sequencer: Remove all animation data for spawn track

Change 4040649 by James.McNatton

	Multiple Virtual Camera bug fixes
	- Removed QAGame mannequin from test map
	- Fixed errors being generated when trying to load preset
	- Presets now properly load and save axis settings
	- Deleted presets should no longer linger in menus
	- Presets now save and load favorite status

Change 4041356 by Max.Chen

	Sequence Recorder: Takes system

	#jira UESP-544

Change 4041589 by Jamie.Dale

	Added C++ source information (plugin, module, and file) to the Python doc string

Change 4041746 by Jamie.Dale

	Made ScriptOperator more relaxed about its signature validation as long as the additional input parameters are defaulted

Change 4041757 by James.McNatton

	Virtual Camera Bug Fixes
	- The Input Source dropdown now accurately reflects user selection
	- Input source changed to EditDefaultsOnly
	- Focus should no longer be set when the settings menu is open

Change 4041823 by Jamie.Dale

	Made ScriptOperator more relaxed about its signature validation for defaulted input parameters

	Existing Blueprint exposed operator functions may both default required arguments, and add additional default arguments. ScriptOperator will now accept both of these as long as there are enough arguments, but not too many non-defaulted arguments.


Change 4042956 by James.McNatton

	VirtualCamera bug fixes related to focus plane visualization
	- Removed extra focus plane that was being displayed
	- Added logic to adjust for nonuniform scaling of objects when settings up tracking focus

Change 4043400 by James.McNatton

	Multiple bug fixes related to saving various values
	- Now saves matte opacity and updates on load
	- Now saves filmback format name and updates on load
	- Now saves desired distance units and updates on load

Change 4043481 by James.McNatton

	Fixed issue in Virtual Camera where joystick movement would not properly apply locks after rotating #rb none

Change 4044358 by Jamie.Dale

	Fixed some cases where empty default values would be lost from UHT

	Eg, empty strings, null objects

Change 4044362 by Jamie.Dale

	Fixed old-style enums being missed by the Python glue generation if they're only referenced by a property of function

Change 4044371 by Jamie.Dale

	Fixed default value application for some struct types that use a custom default value format when exported by UHT

Change 4044417 by Max.Chen

	Sequence Recorder: Better default group names with an underscore separator for letters

Change 4045164 by Jamie.Dale

	Hardened usage of CopyScriptStruct to ensure that the source type is a child of the destination type, and that the destination type is used to copy (to still allow slicing of derived data)

Change 4045195 by Jamie.Dale

	Updated FPropValueOnScope::GetValue to be able to return the value for a particular array index

Change 4045589 by James.McNatton

	Fixed packaging error for VirtualCamera plugin
	- Plugin is now a runtime plugin rather than developer
	- Fixed up associated warnings with saving and loading in editor

Change 4046208 by James.McNatton

	Virtual Camera bug fixes
	- Adjusted how mattes and filmback works together
	- Should now always respond properly to changing filmback settings in UI
	- Should now match the correct view size within the matte under all circumstances

Change 4046372 by Max.Chen

	Sequencer: Fix subsequence binding ids.

	#jira UE-55337

Change 4046694 by Max.Chen

	Sequence Recorder: Compile the template before finding the camera sequence id since the precompiled template is not up to date.

Change 4046801 by Jamie.Dale

	Improved default values and return types used in the unreal.py stub file

	 - Object and Struct types generate an __init__ function with the correct signature.
	 - Struct __init__ functions list the correct default values (including when using make/break functions).
	 - Methods now list the correct default values.
	 - Get/Set getters return a value of the correct type.
	 - Get/Set setters are no longer exported for read-only properties.
	 - Constants resolve to the correct type and value.

	#jira UETOOL-1377

Change 4047023 by Jamie.Dale

	Added missing hook-up for % and %= in Python

Change 4047100 by Jamie.Dale

	Operators are now exposed to unreal.py and generate docs stating which overloads are available

Change 4047105 by Jamie.Dale

	String is now "str" in doc strings to match the Python type

Change 4047714 by Max.Chen

	Sequencer: Resolved merge conflicts with Dev-Sequencer

Change 4048150 by Jamie.Dale

	Fixed single-culture PO import/export failing

	#jira UE-47079

Change 4048653 by Andrew.Rodham

	Sequencer: Automatic re-evaluation is now suppressed for external changes that modified only default values on channels

	  - The issue is that moving an object that is partially-keyed in sequencer, with auto-key off, will set default values for the non-keyed channels. Doing so will dirty the sequence, which causes a re-evaluation, which re-evalutes the keyed channels, which effectively undoes the external change.
	  - This is now fixed by suppressing the automatic re-evaluation for a specific signature of a specific sequence, if that is the only thing that has dirtied the sequence. Any subsequent changes to the sequence will cause a re-evaluation, and the suppression to be wiped.

	#jira UE-57519
	#jira UE-58487

Change 4048814 by Jamie.Dale

	Fixed syntax error if an enum had an unknown value

Change 4048819 by Jamie.Dale

	Fixed struct init functions having the wrong default values

Change 4048856 by JeanLuc.Corenthin

	- Removed LOD & collision functions from UEditorLevelLibrary
	- Created a new class, UEditorMeshLibrary, to hold onto functionalities related to StaticMeshes
	  - Added method to set LODs on a static mesh
	  - Added method to remove LODs from a static mesh
	  - Added method to get number of LODs on a static mesh
	  - Added method to get number of simple collisions onto a static mesh
	  - Added method to get number of convex collisions onto a static mesh
	  - Added method to add convex collision onto a static mesh
	  - Added method to remove all collisions onto a static mesh

	#jira UEENT-1232
	#jira UEENT-1233

Change 4048961 by Jamie.Dale

	Improved formatting of output parameters in doc strings

	#jira UETOOL-1376

Change 4048988 by Jamie.Dale

	Fixed context leakage between the console and files, and import "unreal" by default now in the console

	#jira UETOOL-1379

Change 4049912 by Max.Chen

	Sequence Recorder: Minor recording group name improvements.
	- Initialize newly created actor group with existing actor group's base path.
	- When duplicating, use the current group's name as the base.
	- When typing in a name, if it fits the group format, the name should be allowable if it doesn't conflict with existing group names/assets.

Change 4049934 by Andrew.Rodham

	Sequencer: Minor clean-up of sequencer interfaces and overloads

	  - Replaced remaining instances of void* with FMovieSceneChannel* now that we mandate a common base class
	  - Changed remaining explicit calls to SetDefault to SetChannelDefault overload so it works correctly with the SupportsDefaults trait
	  - Exposed ability to manually implement an ISequencerChannelInterface rather than using the default templated one

Change 4050608 by conan.reis

	Was getting link error about use of FFrameTime in  ULevelSequencePlaybackController::PlayFromBeginning() in the VirtualCamera plugin so added TimeManagement to its dependant modules so it compiles again.

Change 4050899 by Max.Chen

	Sequencer: Allow actor components for synchronization

	#jira UE-58468

Change 4050900 by Max.Chen

	Sequence Recorder: Don't create a spawn section if the object is a possessable

	#jira UE-58272

Change 4050904 by Max.Chen

	Curve Editor: Fix for evaluation a section of time when one key is non-weighted and the other is weighted.  What we do is evaluate them both as being weighted, but we don't have the weight value for the non-weighted tangent. The weight of the non-weighted tangent is implicilty 1/3rd the distance between the two points, so we just calculate that if needed.

	#jira UE-58573

Change 4050905 by Max.Chen

	Curve Editor: When calculating vertical extents find feature points where slopes are zero and check them in addition to the keys if the curve is cubic. Curves now fit correclty vertically.

	Also changed fudge to 5% from 10% to match up old editor. Tighter fits seems better.

	#jira UE-58571

Change 4050972 by James.McNatton

	Added functions to ISequenceRecorder
	- Calling StartRecording with an empty array now triggers recording without clearning queued recordings
	- Added function to queue an actor to be recorded
	- Added function to check the next take number for a given actor when using groups

Change 4050994 by James.McNatton

	Bug fixes for Virtual Camera
	- Preset menu now shows dates in the timestamp
	- Resetting offsets now alerts the system to update UI

Change 4051431 by David.Hibbitts

	Added a component and blueprint library to access LiveLink data in blueprints which also works in editor.
	Deprecated LiveLink Driven component

	#jira UESP-577

Change 4051475 by Patrick.Boutot

	Rename EditorMeshLibrary
	Merge AssetScriptingUtilititesEditor with EditorScriptingUtilities. Add Redirects.

Change 4051558 by Patrick.Boutot

	EngineCustomTimeStep returns true when we also want to perform the default engine code.

Change 4052106 by Andrew.Rodham

	Sequencer: Adding an example that creates a sequence out of the current editor selection

Change 4052205 by Anousack.Kitisa

	Fixed selected asset paths referenced by selected actors when using context Shotgun menu.
	Added function to retrieve the work area directory for Shotgun.

	#jira UEENT-1220

Change 4052951 by James.McNatton

	Virtual Camera Sequence Recorder updates to integrate new take system
	- Takes no longer display unless sequence recorder has a group selected
	- Adjusted fix to packaging error
	- FPS value will no longer appear if sequence recorder isn't available

Change 4053130 by mason.seay

	Updated Game Mode Override

Change 4053273 by James.McNatton

	Virtual Camera cleanup adjustments

Change 4053627 by Max.Chen

	Sequencer: Disable bind sequencer to PIE/simulate while recording.

Change 4053628 by Max.Chen

	Sequence Recorder: Fix target animation not persisting

	#jira UE-58508

Change 4053871 by Max.Chen

	Image Plate: Fix icon path

Change 4054370 by Patrick.Boutot

	Remove LiveLink warning. Create base a class for FLiveLinkFrameRate as suggested in GenericPlatformCompilerPreSetup.h

Change 4054447 by Darren.Pegg

	AJA low level device API
	Blackmagic low level API
	MediaIOCore changes to support AJA/Blackmagic changes
	AJA Module converted to use MediaIOCore
	Blackmagic Module changes for MediaIOCore
	Blackmagic/AJA Binary files

Change 4054769 by Patrick.Boutot

	Packaging error issue introduce with CL 4054370.

	#jira UE-58749

Change 4055443 by Max.Chen

	Sequencer: Fix crash in adding filler shot

	#jira UE-58767

Change 4056577 by JeanMichel.Dignard

	Fixed crash with automation tests.
	We would bind the default UEditorEngine to Automation and on map load, it would call PIE on GEditor but with recent changes, PIE is called on this and the default UEditorEngine is not initialized so it would crash with a null GameViewportClass. Now we'll bind Automation on UEditorEngine InitializeObjectReferences so that we're in a good state and it's only called for GEditor.

	#jira UE-58792

Change 4057238 by Jamie.Dale

	Fixed crash when renaming Python generated classes or structs

Change 4058435 by Jamie.Dale

	Fixed lingering exception state when converting a dict to a struct

Change 4058486 by mason.seay

	Removed remote.host call from map

[CL 4060164 by JeanMichel Dignard in Main branch]
2018-05-09 10:24:50 -04:00
Marc Audy
d5628cd986 Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3967517)
#rb none
#lockdown Nick.Penwarden
#rnx

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

Change 3804281 by Fred.Kimberley

	Improve contrast on watches in blueprints.

Change 3804322 by Fred.Kimberley

	First pass at adding a watch window for blueprint debugging.

Change 3804737 by mason.seay

	Added some Descriptions to tests that didn't have any, and fixed some typos

Change 3806103 by mason.seay

	Moved and Renamed Timers test map and content appropriately

Change 3806164 by Fred.Kimberley

	Add missing property types to GetDebugInfoInternal.

	#jira UE-53355

Change 3806617 by Dan.Oconnor

	Function Terminator (and derived types) now use FMemberReference instead of a UClass/FName pair. This fixes various bugs when resolving the UFunction referenced by the function terminator

	#jira UE-31754, UE-42431, UE-53315, UE-53172

Change 3808541 by Fred.Kimberley

	Add support for redirecting user defined enums.
	This is in response to the following UDN thread: https://udn.unrealengine.com/questions/404141/is-is-possible-to-create-a-redirector-from-a-bluep.html

Change 3808565 by mason.seay

	Added a few more struct tests

Change 3809840 by mason.seay

	Renamed CharacterMovement.umap to CharacterCollision.  Fixed up content to reflect this change.

Change 3809847 by mason.seay

	Added Object Timer tests.  Fixed up existing timer test to remove delay dependency

Change 3811704 by Ben.Zeigler

	Fix issue where identical enum redirects registered to different initial names would throw an incorrect error, it's fine if the value change maps are identical

Change 3811946 by Ben.Zeigler

	#jira UE-53511 Fix it so it is possible to set a user defined struct value back to it's default. The UDS hack in PropertyValueToString is no longer needed, but this could affect some other user struct editor operations

Change 3812061 by Dan.Oconnor

	Stepping over or in to nodes that are expanded at compile time (e.g. event nodes, spawn actor nodes) no longer requires multiple 'steps'

	#jira UE-52854

Change 3812259 by Dan.Oconnor

	Fix asset broken by removal of an unkown enum

	#jira UE-51419

Change 3812904 by Ben.Zeigler

	Make ResolveRedirects on StreamableManager public as it can be used to validate things

Change 3812958 by Ben.Zeigler

	#jira UE-52977 Fix crashes when binding blueprint editor commands to keys and using from invalid contexts

Change 3812975 by Mieszko.Zielinski

	Added contraptions to catch a rare eidtor-time EQS crash #UE4

	#jira UE-53468

Change 3818530 by Phillip.Kavan

	Fix incorrect access to nested instanced subobjects in nativized Blueprint ctor codegen.

	Change summary:
	- Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to properly reference the outer and check ptr validity when creating/obtaining nested default subobjects.
	- Modified FEmitDefaultValueHelper::HandleClassSubobject() to better guard against code generation based on an invalid local variable name.

	#jira UE-52167

Change 3819733 by Mieszko.Zielinski

	Marked UAISenseConfig_Blueprint and UAISense_Blueprint as hidedropdown #UE4

	#jira UE-15089

Change 3821776 by Marc.Audy

	Remove redundent code in SpawnActorFromClass that already exists in ConstructObjectFromClass parent class

Change 3823851 by mason.seay

	Moved and renamed blueprints used for Object Reference testing

Change 3824165 by Phillip.Kavan

	Ensure that subobject class types are constructed prior to accessing a subobject CDO in a nativized Blueprint class's generated ctor at runtime.

	Change summary:
	- Modified FFakeImportTableHelper to tag subobject class types as a preload dependency of the outer converted Blueprint class type and not of the CDO.

	#jira UE-53111

Change 3830309 by mason.seay

	Created Literal Gameplay Tag Container test

Change 3830562 by Phillip.Kavan

	Blueprint nativization bug fixes (reviewed/taken from PR).

	Change summary:
	- Modified FSafeContextScopedEmitter::ValidationChain() to ensure that generated code calls the global IsValid() utility function on objects.
	- Modified FBlueprintCompilerCppBackend::EmitCreateArrayStatement() to generate a proper cast on MakeArray node inputs for enum class types.
	- Modified FBlueprintCompilerCppBackend::EnimCallStatementInner() to more correctly identify an interface function call site.
	- Modified FEmitHelper::GenerateAutomaticCast() to properly handle automatic casts of enum arrays.
	- (Modified from PR source) Added new FComponentDataUtils statics to consolidate custom init code generation for converted special-case component types (e.g. BodyInstance). Ties native component DSOs to the same pre/post as converted non-native component templates around the OuterGenerate() loop.
	- Modified FExposeOnSpawnValidator::IsSupported() to include CPT_SoftObjectReference property types.
	- Modified UBlueprintGeneratedClass::CheckAndApplyComponentTemplateOverrides() to no longer break out of the loop before finding additional ICH override record matches.

	#4202

	#jira UE-52188

Change 3830579 by Fred.Kimberley

	Add support for turning off multiple watches at once in the watch window.

	#jira UE-53852

Change 3836047 by Zak.Middleton

	#ue4 - Dev test maps for overlaps perf tests.

Change 3836768 by Phillip.Kavan

	Fix for a build failure that could occur with Blueprint nativization enabled and EDL disabled. This was a regression introduced in 4.18.

	Change summary:
	- Modified FEmitDefaultValueHelper::AddStaticFunctionsForDependencies() to emit the correct signature for constructing FBlueprintDependencyData elements when the EDL boot time optimization is disabled.

	#jira UE-53908

Change 3838085 by mason.seay

	Functional tests around basic blueprint functions

Change 3840489 by Ben.Zeigler

	#jira UE-31662 Fix regression with renaming parent inherited function. It was not correctly searching the parent's skeleton class during the child's recompile so it was erroneously detecting the parent function as missing

Change 3840648 by mason.seay

	Updated Descriptions on tests

Change 3842914 by Ben.Zeigler

	Improve comments around stremable handle cancel/release

Change 3850413 by Ben.Zeigler

	Fix asset registry memory reporting, track some newer fields and correctly report the state size instead of static size twice
	Copy of CL #3849610

Change 3850426 by Ben.Zeigler

	Reduce asset registry memory in cooked build by stripping out searchable names and empty dependency nodes by default
	Add option to strip dependency data for asset data with no tags, this was always true before but isn't necessarily safe
	Copy of CL #3850389

Change 3853449 by Phillip.Kavan

	Fix a scoping issue for local instanced subobject references in nativized Blueprint C++ code. Also, don't emit redundant assignment statements for instanced subobject reference properties.

	Change summary:
	- Consolidated FComponentDataUtils into FDefaultSubobjectData and extended FNonativeComponentData from it in order to handle both native & non-native DSO initialization codegen through a more common interface.
	- Exposed FEmitDefaultValueHelper::HandleInstancedSubobject() as a public API and added a 'SubobjectData' parameter to allow initialization codegen to be deferred until after all default subobjects have been mapped to local variables within the current scope.
	- Modified FEmitDefaultValueHelper::GenerateConstructor() to first map all default subobjects to local variables and then emit any delta initialization code for property values.
	- Modified FEmitDefaultValueHelper::HandleSpecialTypes() to return an empty string for an instanced reference to a default subobject. This allows us to avoid emitting initialization statements to unnecessarily reassign instances back to the same property.
	- Modified FEmitDefaultValueHelper::InnerGenerate() to better handle instanced references to default subobjects, ensuring that we don't emit unnecessary assignment statements and array initialization code to the converted class constructor in C++.
	- Fixed a few typos.

	#jira UE-53960

Change 3853465 by Phillip.Kavan

	Fix plugin module C++ source template to conform to recent public include path changes.

Change 3857599 by Marc.Audy

	PR #4438: UE-54281: Make None a valid default value to select (Contributed by projectgheist)
	#jira UE-54281
	#jira UE-54399

Change 3863259 by Zak.Middleton

	#ue4 - Save bandwidth for replicated characters by only replicating 4 byte timestamp value to clients if it's actually needed for Linear smoothing. Added option to always replicate the timestamp ("bNetworkAlwaysReplicateTransformUpdateTimestamp", default off), in case users still want this timestamp for some reason, or if smoothing mode changes dynamically and the server won't know.

	#jira UE-46293

Change 3863491 by Zak.Middleton

	#ue4 - Reduce network RPC overhead for players that are not moving. Added ClientNetSendMoveDeltaTimeStationary (default 12Hz) to supplement existing ClientNetSendMoveDeltaTime and ClientNetSendMoveDeltaTimeThrottled. UCharacterMovementComponent::GetClientNetSendDeltaTime() now uses this time if Acceleration and Velocity are zero, and the control rotation matches the last ack'd control rotation from the server.

	Also fixed up code default for ClientNetSendMoveDeltaTime to match default INI value.

	#jira UE-21264

Change 3865325 by Zak.Middleton

	#ue4 - Fix static analysis warning about possible null PC pointer.

	#jira none

Change 3869828 by Ben.Zeigler

	#jira UE-54786 Fix it so -cookonthefly cooperates with -iterate by writing out a development asset registry

Change 3869969 by mason.seay

	Character Movement Functional Tests

Change 3870099 by Mason.Seay

	Submitted asset deletes

Change 3870105 by mason.seay

	Removed link to anim blueprint to fix errors

Change 3870238 by mason.seay

	Test map for Async Loading in a Loop

Change 3870479 by Ben.Zeigler

	Add code to check CoreRedirects for SoftObjectPaths when saving or resolving in the editor. This is a bit slow so we don't want to do it on load
	We don't have any good way to know the type of a path so I check both Object and Class redirectors, which will also pickup Module renames

Change 3875224 by mason.seay

	Functional tests for Event BeginPlay execution order

Change 3875409 by mason.seay

	Optimized and fixed up character movement tests (because a potential bug in FunctionalTestActor is always passing a test when it can fail)

Change 3878947 by Mieszko.Zielinski

	CIS fixes #UE4

Change 3879000 by Mieszko.Zielinski

	More CIS fixes #UE4

Change 3879139 by Mieszko.Zielinski

	Even moar CIS fixes #UE4

Change 3879742 by mason.seay

	Added animation to Nativization Widget asset

Change 3880198 by Zak.Middleton

	#ue4 - CanCrouchInCurrentState() returns false when character capsule is simulating physics.

	#jira UE-54875
	github #4479

Change 3880266 by Zak.Middleton

	#ue4 - Optimize UpdateCharacterStateBeforeMovement() to do cheaper tests earlier (avoid CanCrouchInCurrentState() unless necessary, now that it tests IsSimulatingPhysics() which is not trivial).

	#jira UE-54875

Change 3881546 by Mieszko.Zielinski

	*.Build.cs files clean up - removed redundant dependencies from NavigationSystem and AIModule #UE4

Change 3881547 by Mieszko.Zielinski

	Removed a bunch of DEPRECATED functions from the new NavigationSystem module #UE4

	Removed all deprecates prior 4.15 (picked this one because I do know some licencees are still using it).

Change 3881742 by mason.seay

	Additional crouch test to cover UE-54875

Change 3881794 by Mieszko.Zielinski

	Fixed a bug in FVisualLoggerHelpers::GetCategories resulting in losing verbosity information #UE4

Change 3884503 by Mieszko.Zielinski

	Fixed TopDown code template to make it compile after navsys refactor #UE4

	#jira UE-55039

Change 3884507 by Mieszko.Zielinski

	Switched ensures in UNavigationSystemV1:SimpleMoveToX to error-level logs #UE4

	It's an error rather than a warning because the functions no longer do anything. Making it work would require a cyclic dependency between NavigationSystem and AIModule.

	#jira UE-55033

Change 3884594 by Mieszko.Zielinski

	Added a const FNavigationSystem::GetCurrent version #UE4

	lack of it was causing KiteDemo to not compile.

Change 3884602 by Mieszko.Zielinski

	Mac editor compilation fix #UE4

Change 3884615 by Mieszko.Zielinski

	Fixed FAIDataProviderValue::GetRawValuePtr not being accessible from outside of AIModule #UE4

Change 3885254 by Mieszko.Zielinski

	Guessfix for UE-55030 #UE4

	The name of NavigationSystem module was put in wrong in the IMPLEMENT_MODULE macro

	#jira 55030

Change 3885286 by Mieszko.Zielinski

	Changed how NavigationSystem module includes DerivedDataCache module #UE4

	#jira UE-55035

Change 3885492 by mason.seay

	Minor tweaks to animation

Change 3885773 by mason.seay

	Resaving assets to clear out warning

Change 3886433 by Mieszko.Zielinski

	Fixed TP_TopDownBP's player controller BP to not use deprecated nav functions #UE4

	#jira UE-55108

Change 3886783 by Mieszko.Zielinski

	Removed silly inclusion of NavigationSystemTypes.h from NavigationSystemTypes.h #UE4

Change 3887019 by Mieszko.Zielinski

	Fixed accessing unchecked pointer in ANavigationData::OnNavAreaAdded #UE4

Change 3891031 by Mieszko.Zielinski

	Fixed missing includes in NavigationSystem.cpp #UE4

Change 3891037 by Mieszko.Zielinski

	ContentEample's navigation fix #UE4

	#jira UE-55109

Change 3891044 by Mieszko.Zielinski

	PR #4456: Fix bug in UAISense_Sight::OnListenerForgetsActor (Contributed by maxtunel)

	#UE4

Change 3891598 by mason.seay

	Resaving assets to clear out "empty engine version" spam

Change 3891612 by mason.seay

	Fixed deprecated Set Text warnings

Change 3893334 by Mieszko.Zielinski

	Fixed a bug in navmesh generation resulting in not removing layers that ended up empty after rebuilding #UE4

	#jira UE-55041

Change 3893394 by Mieszko.Zielinski

	Fixed navmesh debug drawing to properly display octree elements with "per instance transforms" (like instanced SMs) #UE4

	Also, added a more detailed debug drawing of navoctree contents (optional, but on by default).

Change 3893395 by Mieszko.Zielinski

	Added a bit of code to navigation system's initialization that checks the enegine ini for sections refering to the moved navigation classes, and complain about it #UE4

	The message is printed as an error-level log line and it says what should the offending section be renamed to.

Change 3895563 by Dan.Oconnor

	Mirror 3895535
	Append history from previous branches in source control history view

	#jira none

Change 3896930 by Mieszko.Zielinski

	Added an option to tick navigation system while the game is paused #UE4

	Controlled via NavigationSystemV1.bTickWhilePaused, ini- and ProjectSettings-configurable.

	#jira UE-39275

Change 3897554 by Mieszko.Zielinski

	Unified how NavMeshRenderingComponent draws navmesh and octree collision's polys #UE4

Change 3897556 by Mieszko.Zielinski

	Fixed what kind of nav tile bounds we're sending to nav-colliding elements when calling 'per-instance transform' delegate #UE4

	#jira UE-45261

Change 3898064 by Mieszko.Zielinski

	Made SM Editor display AI-navigation-related whenever bHasNavigationData is set to true #UE4

	#jira UE-50436

Change 3899004 by Mieszko.Zielinski

	Fixed UEnvQueryItemType_Actor::GetItemLocation and UEnvQueryItemType_Actor::GetItemRotation to return FAISystem::InvalidLocation and FAISystem::InvalidRotation respectively instead of '0' when hosted Actor ptr is null #UE4

	Note for programmers: this changes the default behavior of this edge case. You might want to go through your code and check if you're comparing UEnvQueryItemType_Actor::GetItem*'s results to 0.

Change 3901733 by Mieszko.Zielinski

	Made FEnvQueryInstance::PrepareContext implementations returning vectors and rotators ignore InvalidLocation and InvalidRotation (respectively) #UE4

Change 3901925 by Ben.Zeigler

	#jira UE-55395 Fix issue where the cooker could load asset registry caches made in -game that do not have dependency data, leading to broken cooks

Change 3902166 by Marc.Audy

	Make ULevel::GetWorld final

Change 3902749 by Ben.Zeigler

	Fix it so pressing refresh button in asset audit window actually refreshes the asset management database

Change 3902763 by Ben.Zeigler

	#jira UE-55407 Fix it so editor tutorials are not cooked unless referenced, by correctly marking soft object paths imported from editor project settings as editor-only

Change 3905578 by Phillip.Kavan

	The UX to add a new parameter on a Blueprint delegate is now at parity with Blueprint functions.

	#4392

	#jira UE-53779

Change 3905848 by Phillip.Kavan

	First pass of the experimental Blueprint graph bookmarks feature.

	#jira UE-10052

Change 3906025 by Phillip.Kavan

	CIS fix.

Change 3906195 by Phillip.Kavan

	Add missing icon file.

Change 3906356 by Phillip.Kavan

	Moved Blueprint bookmarks enable flag into EditorExperimentalSettings for consistency with other options.

Change 3910628 by Ben.Zeigler

	Partial fix for UE-55363, this allows references to ObjectRedirectors to be switched from parent class to a child class on load as this should always be safe
	This does not actually fix UE-55363 because that case is changing from UMaterial to UMaterialInstanceConstant, and those are siblings instead of parent/child

Change 3912470 by Ben.Zeigler

	#jira UE-55586 Fix issue with saving redirected soft object paths where the export sort could accidentally cause the parent CDO to get modified between name tagging and writing exports, which is unsafe because due to delta serialization it would try to write names that were not previously tagged

Change 3913045 by Marc.Audy

	Fix issues where recursion in to child actors wasn't being handled correctly

Change 3913398 by Fred.Kimberley

	Fixes a misspelled name for one of the classes in the ability system.

	PR #4430: Fixed spelling of FGameplayAbilityInputBinds. (Contributed by IntegralLee)
	#github

	#jira UE-54327

Change 3918016 by Fred.Kimberley

	Ensure AllocGameplayEffectContext is being used in all cases where FGameplayeEffectContext is being created.

	#jira UE-52668

	PR #4250: Only create FGameplayEffectContext via AbilitySystemGlobals::.AllocGameplayEffectContext (Contributed by slonopotamus)
	#github

Change 3924653 by Mieszko.Zielinski

	Fixed LoadEngineClass local to UnrealEngine.cpp to check class redirects before falling back to default class instance #UE4

	#jira UE-55378

Change 3925614 by Phillip.Kavan

	Fix ForEachEnum node to skip over hidden enum values in new placements by default.

	Change summary:
	- Added FKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() as an internal-only Blueprint node support API.
	- Modified FForExpandNodeHelper::AllocateDefaultPins() to add a "Skip Hidden" input pin (advanced). Pin default value is false.
	- Added a UK2Node_ForEachElementInEnum::PostPlacedNewNode() override to set the default value of the "Skip Hidden" input pin to 'true' for all new node placements.
	- Modified UK2Node_ForEachElementInEnum::ExpandNode() to include additional expansion logic based on the "Skip Hidden" input pin. For new placements (i.e. when the pin defaults to 'true'), an intermediate branch node will now be inserted into the compiled execution sequence to test for "hidden" metadata on the value before executing the loop body. If the input pin is linked, another intermediate branch will be inserted into the execution sequence prior to the "hidden" metadata test. All existing placements of the node will remain as-is after compilation (i.e. no additional intermediate branch nodes will be included in the expansion).

	#jira UE-34563

Change 3925649 by Marc.Audy

	Fix up issue post merge from Main with navigation system refactor

Change 3926293 by Phillip.Kavan

	Temp fix to unblock CIS.

	#jira UE-34563

Change 3926523 by Marc.Audy

	Ensure that a renamed Actor is in the correct Actors array

	#jira UE-46718

Change 3928732 by Fred.Kimberley

	Unshelved from pending changelist '3793298':

	#jira UE-53136

	PR #4287: virtual additions for AttributeSet extendability (Contributed by TWIDan)
	#github

Change 3928780 by Marc.Audy

	PR #4309: The display names of the functions. (Contributed by SertacOgan)
	#jira UE-53334

Change 3929730 by Joseph.Wysosky

	Submitting test assets for the new Blueprint Structure test cases

Change 3931919 by Joseph.Wysosky

	Deleting BasicStructure asset to rest MemberVariables back to default settings

Change 3931922 by Joseph.Wysosky

	Adding BasicStructure test asset back with default members

Change 3932083 by Phillip.Kavan

	Fix Compositing plugin source files to conform to updated relative include path specifications.

	- Encountered while testing Blueprint nativization of assets with dependencies on Composure/LensDistortion APIs.

Change 3932196 by Dan.Oconnor

	Resetting a property to default now uses the same codepath as assigning the value from the slate control

	#jira UE-55909

Change 3932408 by Lukasz.Furman

	fixed behavior tree services attached to task nodes being sometimes recognized as root level
	#jira nope

Change 3932808 by Marc.Audy

	PR #4083: Change to UK2Node_BaseAsyncTask to have pin tooltips on latent nodes (Contributed by dwrpayne)
	#jira UE-50871

Change 3934101 by Phillip.Kavan

	Revise ForEachEnum node expansion logic to exclude hidden values at compile time.

	Change summary:
	- Removed UKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() (no longer in use).
	- Modified UK2Node_ForEachElementInEnum::ExpandNode() to include an enum switch node in the expansion, which will exclude hidden values when constructed. The additional expansion will occur if the enum type contains at least one hidden value.

	#jira UE-34563

Change 3934106 by Phillip.Kavan

	Mirrored 4.19 fixes to allow for EngineTest iteration w/ nativization enabled.

	Change summary:
	- Mirrored CLs 3876918, 3878968, 3883257, 3885566, 3912161 and 3920519.

Change 3934116 by Phillip.Kavan

	UBT: Explicitly define the DEPRECATED_FORGAME macro only for non-engine modules.

	Change summary:
	- Modified UEBuildModule.SetupPrivateCompileEnvironment() to check the 'bTreatAsEngineModule' flag from the rules assembly rather than testing the module's build type.

Change 3934382 by Phillip.Kavan

	Avoid inclusion of monolothic engine header files in nativized Blueprint codegen.

Change 3936387 by Mieszko.Zielinski

	Added a flag to NavModifierComponent to control whether agent's height is being used while expadning modifier's bounds during navmesh generation #UE4

Change 3936905 by Ben.Marsh

	Disable IncludeTool warning for DEPRECATED_FORGAME macro; we expect this to be different for game modules.

Change 3940537 by Marc.Audy

	Don't allow maps, sets, or arrays with an actor inner type in user defined structs to select an actor from the currently open level as default value.
	#jira UE-55938

Change 3940901 by Marc.Audy

	Properly name CVar global to reflect what it is for

Change 3943043 by Marc.Audy

	Fix world context functions not being able to be used in CheatManager derived blueprints
	#jira UE-55787

Change 3943075 by Mieszko.Zielinski

	Moved path-following related delegats' interface from NavigationSystemBase over to a new IPathFollowingManagerInterface #UE4

Change 3943089 by Mieszko.Zielinski

	Fixed how WorldSettings.NavigationSystemConfig gets created #UE4

	Made it so that there's always a NavigationSystemConfig instance present, but added a 'Null' config - this was required due to issues with creation/serialization of instanced subobjects.
	The change required adding copying constructors to FNavAgentProperties and FNavDataConfig.
	Also, fixed FNavAgentProperties.IsEquivalent to be symetrical.

Change 3943225 by Marc.Audy

	Fix spelling of Implements

Change 3950813 by Marc.Audy

	Include owner in attachment mismatch ensure
	#jira UE-56148

Change 3950996 by Marc.Audy

	Fix cases where bit packed properties used the entire byte not just the bit when interacting with boolean arrays

	#jira UE-55482

Change 3952086 by Marc.Audy

	PR #4483: Add Missing Radial Damage Multicast Delegate (Contributed by error454)
	#jira UE-54974

Change 3952720 by Marc.Audy

	PR #4575: Check if *Pawn* is a null Pointer (Contributed by dani9bma)
	#jira UE-56248

Change 3952804 by Richard.Hinckley

	Changes to BP API export commandlet to support better plugin exporting. Contributed by Harry Wang of Google.

Change 3952962 by Marc.Audy

	UHT now validates that ExpandEnumAsExecs references a valid parameter to the function.
	#jira UE-49610

Change 3952977 by Phillip.Kavan

	Fix EDL cycle at load time in nativized cooked builds when a circular dependency exists between converted and unconverted assets.

	Change summary:
	- Added FGatherConvertedClassDependencies::MarkUnconvertedClassAsNecessary().
	- Modified FFindAssetsToInclude::MaybeIncludeObjectAsDependency() to mark unconverted BPGCs (e.g. DOBPs) as necessary for conversion when the potential for a circular dependency exists so that we generate stub wrappers rather than depend on them directly.
	- Fixed a few typos in existing API names.

	#jira UE-48233

Change 3953658 by Marc.Audy

	(4.19.1) Fix inserting a reroute node causing connections to break on a GetClassDefaults node
	#jira UE-56270

Change 3954727 by Marc.Audy

	Add friendly name to custom version mismatch message

Change 3954906 by Marc.Audy

	(4.19.1) Fix crash when undoing changes related to reroute nodes connected to a GetClassDefaults node
	#jira UE-56313

Change 3954997 by Marc.Audy

	Ensure and return null if GetOuter<WithinClass> is called on a CDO for uclasses declared as within another so we don't get a UPackage c-style cast to the expected outer type

Change 3955091 by Marc.Audy

	Do not register subcomponents that are not auto register
	#jira UE-52878

Change 3955943 by Marc.Audy

	Make AbilitySystemComponent pass parameters by const& instead of ref as no state is being changed

Change 3956185 by Zak.Middleton

	#ue4 - Fix Characters using scoped movement updates (the default) not visually rotating when rotated at small rates at high framerate.

	This was caused by FScopedMovementUpdate::IsTransformDirty() using a larger FTransform comparison tolerance than USceneComponent::UpdateComponentToWorldWithParent().

	#jira none

Change 3958102 by Marc.Audy

	Clean out dead code path from k2node_select
	Select node now resets pins to wildcard if none of the pins are in use

Change 3958113 by Lukasz.Furman

	added OnSearchStart call to root level behavior tree services
	#jira UE-56257

Change 3958361 by Marc.Audy

	Fix literal input pins on select being set to wildcard during compilation

Change 3961148 by Dan.Oconnor

	Mirror 3961139 from Release 4.19
	Fix for placeholder objects being left behind when loading certain UMG assets - this could causea crash when loading UMG assets
	#jira UE-55742

Change 3961640 by Marc.Audy

	Select node now displays Add Pin button
	Undo of changing select node index type now works correctly.
	Connections to option pins now maintained across change of index pin type
	#jira UE-20742

Change 3962262 by Marc.Audy

	Display "Object Reference" instead of "Object Object Reference" and "Soft Object Reference" instead of "Object Soft Object Reference"

Change 3962795 by Phillip.Kavan

	Fix for a crash when cooking with Blueprint nativization enabled after encountering a nested instanced editor-only default subobject inherited from a native C++ base class.

	- Mirrored from //UE4/Release-4.19 (3962782)

	#jira UE-56316

Change 3962991 by Marc.Audy

	Modify Negate/Increment/Decrement Int/Float so that the output is always the desired result even if a non-mutable pin is passed in.
	Note that this can mean the result being returned and the value of the pin passed in if queried again will not be the same (in the case of pure nodes).
	#jira UE-54807

Change 3963114 by Marc.Audy

	Fix ensures/crash as a result of UClass expecting to be able to access the UPackage of CDOs via the GetOuterUPackage call.

Change 3963427 by Marc.Audy

	Fix initialization order
	Initialize bUseBackwardsCompatForEmptyAutogeneratedValue

Change 3963781 by Marc.Audy

	Fix without editor compiles

Change 3964576 by Marc.Audy

	PR #4599: : Working category for timelines (Contributed by projectgheist)
	#jira UE-56460
	#jira UE-26053

Change 3964782 by Dan.Oconnor

	Mirror 3964772 from Release 4.19

	Fix crash when force deleting certain blueprints, we can only check for authoritativeness while reinstancing

	#jira UE-56447

Change 3965156 by Mieszko.Zielinski

	PR #4592: Visual Logger optimization to fix rapid FPS drop when many items are hidden (Contributed by tstaples)

	#jira UE-56435

Change 3965173 by Marc.Audy

	(4.19.1) Fix incorrectly switching a cooling down tick to be an enabled tick when marking it enabled.
	#jira UE-56431

Change 3966117 by Marc.Audy

	Fix select nodes inside macros using wildcard array inputs having issues resolving type.
	#jira UE-56484

Change 3878901 by Mieszko.Zielinski

	NavigationSystem's code refactored out of the engine and into a new separate module #UE4

	The CL contains required changes to all of our internal projects. Fortnite and Paragon have been tested, while the rest have been only compiled.

Change 3879409 by Mieszko.Zielinski

	Further fallout fixes after ripping out NavigationSystem out of the engine #UE4

	- Fixed bad ini redirects (had NavigationSystem.NavigationSystem instead of NavigationSystem.NavigationSystemV1)
	- Added missing FNavigationSystem::GetDefaultNavDataClass binding (resulting in QAGame's func tests failing)

Change 3897655 by Ben.Zeigler

	#jira UE-55211 Fix it so literal soft object pins on blueprint nodes get correctly cooked/referenced
	It now sets the thread context to skip internal serialize and calls the archive's serialize function instead of bypassing it, which allows it to pick up references

	Change 3962780 by Marc.Audy

	When preventing a split pin from being orphaned, all sub pins must also be prevented.
	#jira UE-56328
	Repack members of UEdGraphPin to avoid wasted space (saves 16bytes)

[CL 3967553 by Marc Audy in Main branch]
2018-03-27 14:27:07 -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
Bob Tellez
c3818ebea9 Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main
#rb none
#lockdown Nick.Penwarden

=================================================================================================
THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS.
YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS.
=================================================================================================

Change 3662267 by Nick.Darnell

	Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float.

	#jira nojira

Change 3662176 by Ben.Marsh

	Disable image integrity report generation if a debugger is attached, and in editor builds.

	#jira FORT-55656

Change 3656958 by Luke.Thatcher

	[FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism
	 - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame.
	 - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe.
	 - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency.

	Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup.
	A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index.
	In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread.

	[~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval
	 - 1 == 60Hz
	 - 2 == 30Hz
	 - 3 == 20Hz

	[-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings).

	#jira FORT-50803

Change 3655598 by Lukasz.Furman

	added filtering for navmesh's low height spans to fix crash on layer partitioning
	% of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory

	#jira FORT-35375

Change 3648972 by Keith.Judge

	Add analytics to help diagnose default parameter collection buffer issue.

	+++ REMOVE ONCE CORE ISSUE IS SOLVED +++

	#jira FORT-54690

Change 3648756 by Bart.Hawthorne

	Integrate 3645298 from //UE4/Dev-Networking

	Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods.

	#jira none

Change 3643090 by Josh.Markiewicz

	#UE4 - proper handling of "pending connection lost"
	- triggered only if a connection is lost and there no "owning actor" to deal with the connection loss
	-- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time
	- delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello)

	- changed debug output on timeout if the net connection was already in the process of being destroyed
	-- occurs when game hitches during the pending destroy 2 second wait
	-- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout

	- added userid to UNetConnection::Describe
	- bad split screen player handling of unique id
	-- splitscreen uniqueid was overwriting the primary player id
	-- only store the id on the child connection

	- added some clarifying comments

	#review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti
	#jira FORT-26776

Change 3639043 by Alex.Thurman

	Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem.

	#JIRA FORT-45841

Change 3632275 by Seth.Weedin

	#JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general.

Change 3626944 by Josh.Markiewicz

	#UE4 - added "updates connection status" flag to ServiceConfigMCP
	- disable updates on Cloud and Friend services (Fortnite only)
	- removed overloaded ProcessConnectionStatus function in cloud service
	#jira FORT-53113

Change 3626226 by Stewart.Lynch

	LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags

	* Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB)
	* re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes.
	* changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8)
	* summary page for content creators where all lower-level stats are grouped under one Engine stat
	* renamed ELLMScopeTag enum to ELLMTag
	* renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE
	* removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro
	* fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore
	* fixed BackupOOMMemoryPool stat (now shows in both default and platform pages)
	* added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.)
	* lots of changes adding/removing/renaming tags
	* added LLMArray and FLLMObjectAllocator classes
	* disabled asset tag tracking by default because it takes up so much memory even when not used
	* enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv.
	* all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging.
	* disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed.
	* added a CVar to control the csv write interval: LLM.LLMWriteInterval
	* added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements.
	* renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum
	* fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup

	#jira NONE-01

Change 3622978 by Lukasz.Furman

	changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon
	includes copy of CL# 3620700

	#jira FORT-45914
	#review-3622979 John.Abercrombie

Change 3622340 by Josh.Markiewicz

	#UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers
	- ipconnection prints uniqueid with lowleveldescribe

	#jira fort-0

Change 3621386 by Tim.Tillotson

	Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations.
	#JIRA FORT-53717
	#review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello

Change 3620517 by Keith.Judge

	Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion.

	#jira FORT-53928

Change 3620248 by Lukasz.Furman

	changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed
	#jira nojira

Change 3616187 by Bob.Tellez

	#UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock.

	#JIRA UE-0

Change 3613935 by Peter.Knepley

	More logging on update launcher launching

	#jira nojira
	#robomerge rp rn

Change 3613537 by Marcus.Wassmer

	Safety asserts around the MarkPendingKill feature for rendering classes.
	#jira FORT-50385

Change 3613399 by Arne.Schober

	Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash.
	#RB Marcus.Wassmer
	#jira FORT-53610

Change 3610794 by robomerge

	#ROBOMERGE-AUTHOR: marc.audy
	Reduce UMG class memory
	#jira UE-52043

	#ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3610144 by Stewart.Lynch

	General LLM improvements

	* added tracking for misc task graph tasks (moves 20MB out of Untagged)
	* renamed EngineTick to EngineMisc
	* added tracking for FName
	* added tracking for GC_ProcessObjectArray potential leak
	* renamed index & vertex buffers stat to Meshes
	* added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h.
	* removed AVAILABLE_PHYSICAL stat from LLM csv
	* csv files now include the date in the filename
	* fixed potential threading bug when reading stat values to csv
	* made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning.
	* added lots more scopes
	* started changing Stat scopes to enum scopes. Stat scopes will be phased out.
	* added tracking of FName memory
	* added llmplatform tracking for XBoxSymbols
	* added llm tracking for CPU symbol allocations (20MB)
	* wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM.
	* added tracking for GC
	* fixed tracking for TransientMemoryAllocator
	* added tracking for networking memory
	* added more audio memory tracking
	* added tracking for blueprints
	* added tracking for static meshes
	* show on screen warning if debug memory is enabled
	* added tracking for particles
	* renamed Phys to PhysX and added more scopes
	* renamed Slate to UI and added more scopes
	* much better coverage of networking memory
	* improved coverage of audio

	#jira FORT-53420

Change 3610136 by robomerge

	#ROBOMERGE-AUTHOR: marc.audy
	Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive)
	Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive).
	Reduce size of USceneComponent by 112 bytes.
	Reduce size of FLightingChannels from 3 bytes to 1.
	Reduce size of FBodyInstance by 16 bytes.

	#jira FORT-52043

	#ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3607937 by robomerge

	#ROBOMERGE-AUTHOR: paul.moore
	#jira FORT-53105
	- Fix websocket not providing information when the peer closes the connection.

	#ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3607042 by Bart.Hawthorne

	Move replay.Loop functionality into the demo net driver and rename it demo.Loop

	#jira none

Change 3605448 by robomerge

	#ROBOMERGE-AUTHOR: seth.weedin
	#Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180

	#ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3604787 by robomerge

	#ROBOMERGE-AUTHOR: mike.fricker
	Initial support for hotfixing live assets from .ini files
	- This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded
	- Only CurveTables and DataTables are supported for now
	- The new asset content must be in Json format, the same format the editor uses for importing
	- Assets that are hotfixed will be synchronously loaded if they're not already in memory.  They'll be retained in memory afterwards.
	- IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped!

	- The changes must go in the Game.ini file and use the following syntax:

	          [AssetHotfix]
	          +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]")
	          +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]")

	#jira FORT-52099
	[CODEREVIEW] frank.gigliotti
	[FYI] peter.knepley,bob.tellez

	#ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3602067 by robomerge

	#ROBOMERGE-AUTHOR: mike.fricker
	Loading time improvements
	- This shaves off up to 10 seconds of load time on PS4 in Athena

	Details:
	- Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame.  Athena has ~300 sub-levels, so this ended up wasting up many seconds.
	- Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming)
	- UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started.  It now allows this as long as the world isn't being rendered (loading screen.)
	- Eliminated extra 2 second delay before loading screen is dismissed (in Athena only)

	- Note:  A side effect of this change is that the progress bar may not update as smoothly on loading screen.  We'll look at tuning the throttle settings if it ends up being a problem.

	[CODEREVIEW] ori.cohen
	#jira AT-1477

	#ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3601951 by Luke.Thatcher

	[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.

	#jira FORT-52910

Change 3600340 by robomerge

	#ROBOMERGE-AUTHOR: wes.hunt
	All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent.

	Added some new context to crashreporter to help identify Athena matches near and long term.
	* Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged
	  * Added bools to the params to indicate WHICH ones are changing
	  * Allows you to set only some values, and clear them out.
	  * Hooked up in FortGameState::PostInitializeComponents.
	  * FortGameState clears it (for returning to main menu).
	  * FortGameStateAthena sets it (for going into an Athena match).
	  * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified.
	* Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged.
	  * This works for ANY crash on ANY game.
	  * Hooked up in GameState::HandleMatchIsWaitingToStart.

	#jira AT-1457
	#jira AT-519
	[CODEREVIEW] peter.knepley,josh.markiewicz

	#ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3597593 by Ben.Zeigler

	#jira FORT-50722
	Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie
	Partial copy of CL #3402335 and #3526538
	#robomerge rp, rn

Change 3597577 by Luke.Thatcher

	[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.

	#jira FORT-50825
	#jira FORT-49688
	#jira FORT-49695
	#jira FORT-50054

Change 3596556 by robomerge

	#ROBOMERGE-AUTHOR: mike.fricker
	Enable GC clustering for actors and blueprints in Fortnite
	- This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms)
	- Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered!
	- This gets us into the realm of shippability on console for very large UObject counts

	[FYI] bob.tellez,peter.knepley,michael.noland
	#jira AT-1440

	#ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3593994 by robomerge

	#ROBOMERGE-AUTHOR: mike.fricker
	Force largest distance field atlas size in Athena
	- We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB).  This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times.
	- Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero)
	- Important:  Currently we never "reset" this atlas texture.  This will be a problem when going back to play Campaigns after preloading to play Athena.  I will look into this soon!

	[CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright
	#jira AT-1477

	#ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3592096 by robomerge

	#ROBOMERGE-AUTHOR: ben.salem
	Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning.
	#jira FORT-0

	#ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3592085 by robomerge

	#ROBOMERGE-AUTHOR: mike.fricker
	HLOD: Added support for a fixed distance override via CVar
	- Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance
	- New CVar:  r.HLOD.DistanceOverride (defaults to 0)
	- Fortnite uses 350m for this distance, fornow

	[CODEREVIEW] jurre.debaare
	#jira AT-1462

	#ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/...
	#ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main)

Change 3587391 by Michael.Noland

	Fortnite: Lots of memory tracking stuff
	- Added memory logging to game state transitions and overall health tracking for the entire session
	- Added support for Gauntlet-based tests to Fortnite
	- Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file)
	- Added code to set gauntlet state based on the current subclass of AFortGameState
	- Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon)
	- Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon)

	#jira FORT-50567

Change 3583307 by Peter.Knepley

	Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space

	Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix.

	#jira AT-733

Change 3582378 by Luke.Thatcher

	[FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles.
	 - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups.
	 - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p.
	 - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main.

	#jira FORT-50206

Change 3580934 by Luke.Thatcher

	[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.

	#jira FORT-50206

Change 3576664 by Bart.Hawthorne

	Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT.

	#jira FORT-49986

	#tests Connected to PC server with editor -game build on Mac in Athena

Change 3575671 by Nick.Darnell

	Athena - The gameplay ability system now supports adding Gameplay Cue's with params.  Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end.  THe new method should properly show and disappear on time, b/c it's all client side.  Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn.

	#jira AT-644

Change 3575534 by Peter.Knepley

	Ability montage replication optimizations

	#jira AT-955

Change 3573305 by Lukasz.Furman

	disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners
	#jira FORT-49748

Change 3566775 by John.Abercrombie

	Optimizations from Dev-Athena
	- Tested with PIE & and 2 Player local server game

	#ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager].

	For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz).
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17.

	#ue4-athena - (merge CL 3377054 from Framework) -  Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45.

	#athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18.

	#ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component.
	Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43.

	#ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement.
	Added configurable settings to control this. Set times to zero to disable this.
	- NetworkMinTimeBetweenClientAckGoodMove
	- NetworkMinTimeBetweenClientAdjustments
	- NetworkMinTimeBetweenClientAdjustmentsLargeCorrection
	- NetworkLargeClientCorrectionDistance

	#ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19.

	#ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12.

	#ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04.

	#ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): Avoid call to virtual getSimulationFilterData() to only use it when needed in PreFilter if we actually have items in the IgnoreComponents list (which is rare). The sim filter data 'word2' stores the component ID.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11.

	#ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57.

	#ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual().
	Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees.
	#AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39.

	#jira Fort-1

Change 3562825 by Chris.Gagnon

	Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways.

	#jira FORT-0

Change 3562098 by Josh.Markiewicz

	#UE4 Encryption token/ack changes
	- 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

	#review-3559694 @ryan.gerleve
	#tests PC dedicated server connections golden path and forced failures
	#jira FORT-0

Change 3559354 by Luke.Thatcher

	[FORTNITE] [PS4] [^] Merging (as edit)  support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/...
	 - Allowed rates are now 60Hz, 30Hz and 20Hz.
	 - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1.

	#jira FORT-49463

Change 3532644 by Jeff.Campeau

	Fix mapping current culture to movie audio channels using data table to map languages to track indices.
	Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost.
	Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync).
	Generic implementation for getting current languages in BP.
	Fix more issues with calling into media source functionality when using the source reader (potential hangs).

	#jira FORT-44376,FORT-48209,FORT-48040

	#testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each.

Change 3527761 by Chris.Gagnon

	Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur.

	#jira FORT-47988, FORT-47984

Change 3525390 by Jeff.Campeau

	Remove media player log spam

	#jira FORT-47393

	#testedon compiled client

Change 3518692 by Chris.Gagnon

	Added CleanOperation Adding which will remove unneeded op combinations from the op queue.
	Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective.

	GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated.

	Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view.
	This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL.

	#jira FORT-47395

Change 3514658 by Jeff.Campeau

	Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed.
	Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing.
	Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup.
	Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames.

	#jira FORT-46801
	#testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video

Change 3507896 by Ryan.Gerleve

	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.

	#jira FORT-46878
	#review-3507897 @josh.markiewicz

Change 3503928 by Ryan.Gerleve

	Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing.

	#jira FORT-46772
	#review-3503929 bob.tellez
	#robomerge ReleaseNext

[CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
Marc Audy
a66199e8a7 Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3628051)
#lockdown Nick.Penwarden
#rb none
#rnx

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

Change 3582363 by Marc.Audy

	Make ComponentToWorld fully private and remove deprecation informing of this
	#jira UE-46286

Change 3582885 by Ben.Zeigler

	#jira UE-47642 Add ToString for SoftObjectReference/SoftClassReference/PrimaryAssetId/PrimaryAssetType to use for debugging. The other direction is not provided because the type validation cannot be done at runtime

Change 3584468 by Ben.Zeigler

	#jira UE-48301 Avoid infinite recursion crash when cooking client/server only component blueprints

Change 3584596 by Marc.Audy

	(4.17) Ensure that old user defined structs have their members properly marked as blueprint visible
	#jira UE-48346

Change 3586057 by Ben.Zeigler

	#jira UE-48413 Fix issue where running a dedicated server with a fixed framerate could cause a time crash because the "last time" was out of sync. Clarified code to indicate which times are real and which are logical. This manifested as a crash in EngineTest but could happen in any game with a fixed framerate

Change 3588211 by Marc.Audy

	PR #3889: Added BLUEPRINTGRAPH_API module specifier to the input nodes. (Contributed by karanseqwb)
	#jira UE-48318

Change 3588826 by Marc.Audy

	Don't ensure when connecting the output pin of a create delegate node to a wildcard input
	#jira UE-48157

Change 3588827 by Marc.Audy

	Always throw error when unable to validate a link connection instead of allowing totally broken content to compile

Change 3588872 by Ben.Zeigler

	#jira UE-48457 Add Export To CSV to content browser/asset audit windows that are in the column view. This is useful for preparing memory/disk usage reports

Change 3589134 by Dan.Oconnor

	Mirror 3585244 from Release 4.17
	Run actor construction via UBlueprint::BroadcastCompiled after reinstancing, matching non-compilation manager behavior
	#jira UE-48189

Change 3589140 by Dan.Oconnor

	Mirror 3588406 from Release-4.17
	Set "WorldContext" metadata earlier in the compilation process, so that it can be used reliably in other blueprints. This fixes occasionally 'None' WorldContext references

	#jira UE-48464

Change 3589141 by Dan.Oconnor

	Mirror 3588681 from Release-4.17
	Set Default values and CallInEditor meta data for event nodes

	#jira UE-48386

Change 3590690 by Ben.Zeigler

	#jira UE-48509 Fix crash in incremental cook when a file in the incremental cook was deleted from p4

Change 3590909 by Ben.Zeigler

	#jira UE-48509 Fix crash in incremental cooker when DDC data is not built for a package that is skipped for rebuilding. The cached data would not be checked for completness, but would assert becuase it was not complete.
	WillNeverCacheCookedPlatformDataAgain no longer does anything other than assert, so remove it.

Change 3591386 by Marc.Audy

	Split pins are now correctly handled when expanding macros and functions.
	#jira UE-47747

Change 3591939 by Dan.Oconnor

	Mirror 3591923 from Release-4.17
	Split ReplaceInstancesOfClass_Inner into two passes, one for objects and one for actors because actor reconstruction needs all components to be of final class type (e.g. not REINST_ or HOT_RELOAD_)
	#jira UE-48250

Change 3593243 by Marc.Audy

	PR #3910: Add FQuat initialization from FString (Contributed by cneumann)
	#jira UE-48534

Change 3593407 by Marc.Audy

	Properly expose Lex::To/FromString for FName

Change 3593648 by Marc.Audy

	Refactor AActor::PostEditUndo to have a single implementation to avoid incosistent fixes

Change 3593917 by Marc.Audy

	Improved comment

Change 3594501 by Marc.Audy

	Fix biased shuffle algorithm
	#jira UE-48432

Change 3594699 by Ben.Zeigler

	#jira UE-48555 Fix crash where async loading flush update callback was happening in the async loading thread, it's supposed to be a game delegate
	Fix InstancedStaticMesh to not ensure when loaded via the async loading thread

Change 3595327 by Phillip.Kavan

	#jira UE-16485 - Add an option to host global Blueprint searches in a dockable tab that's not tied to any Blueprint editor context.

	Change summary:
	- Added a few additional Slate editor style descriptors specifically for the Find Results tab.
	- Added a private dependency on the 'WorkspaceMenuStructure' module to the 'Kismet' editor module.
	- Added a new Blueprint Editor settings option to the "Workflow" section to toggle the feature on/off (now set to 'on' by default).
	- Added a UBluepriintEditorSettings::PostEditChangeProperty() implementation to reset FiB state upon changing the experimental toggle switch.
	- Modified the FFindResultsSummoner ctor to use an alternate tooltip when the feature is turned on. In that case the "local" Find Results tab will always search only the local BP context.
	- Modified FBlueprintEditor::OnRequestClose() to additionally find and close the local Find Results tab if the feature is turned on and we're not in a full BP editor context. This ensures that the local Find Results tab context will be reset to hidden if the option is toggled while a defaults-only BP editor context is active.
	- Modified FBlueprintEditor::SummonSearchUI() to invoke the global Find Results tab if the feature is turned on and 'bSetFindWithinBlueprint' is true.
	- Simplified FBlueprintEditor::FindInBlueprint_Clicked() and FBlueprintEditor::FindInBlueprints_OnClicked() to call SummonSearchUI().
	- Moved the FFindInBlueprintsResult declaration into FindInBlueprintManager.h. Also relocated the ExpandAllChildren API out of this class and into the localized FindInBlueprintsHelpers util class.
	- Added new FFindInBlueprintSearchManager public APIs - GetGlobalFindResults() and CloseAllGlobalResults(). Also added a delegate for handling cleanup after a global Find Results tab is closed.
	- When the feature is turned on, global Find Results tabs will be named "Find in Blueprints" to correlate to the menu command that's bound to CTRL-SHIFT-F. An index will be appended to the tab name if more than one context is active.
	- Extended FFindInBlueprintSearchManager to support spawning and maintaining up to 4 global Find Results widget contexts. These are registered and spawned as "nomad" tabs, but they don't currently auto-insert into the menu. Instead, they are invoked internally by the GetGlobalFindResults() API as needed, in response to the BP editor's "Find in Blueprints" command.
	- Extended the SFindInBlueprints widget to support a "locked" state and allow users to toggle it via an SButton. This is visible only in the global Find Results context.
	- Extended the SFindInBlueprints widget to support an additional "Find in All Blueprints" button on the local Find Results context. Clicking the button will invoke an unlocked global Find Results tab and initiate a global search with the text taken from the local context. This is visible only in the local Find Results context.
	- Removed the "Find in Current Blueprint only" checkbox from the local Find Results context when the feature is enabled. Global searches are instead redirected to the global Find Results tab.

Change 3596499 by Marc.Audy

	Fix non-editor CIS error

Change 3596653 by Marc.Audy

	When a transaction is cancelled the previous redo buffer will now be restored instead of lost
	#jira UE-48513

Change 3598187 by Ben.Zeigler

	Add ability for automation command line to run as remote session with Automation StartRemoteSession (SessionGuid). In this mode it waits for external clients to be ready
	Fix functional tests to work in editor builds with -game by forcing an asset registry scan

Change 3598193 by Ben.Zeigler

	Add support for -TcpMessagingListen=IP:port and TcpMessagingConnect=IP:Port command line options to the TCP messaging layer, this is used by automation to connect a specific device to an editor coordinator.

Change 3600168 by Marc.Audy

	(4.17.2) Protect against crash when ParentClass has become null for unknown reasons
	#jira UE-47467

Change 3600457 by Ben.Zeigler

	Fix issue where nonblocking BSD sockets on some platforms may return EINPROGRESS on initial connect, which should not be treated as an error

Change 3600462 by Ben.Zeigler

	Remove platform whitelist from TcpMessaging plugin, this was effectively blocking it on all other platforms

Change 3600685 by Marc.Audy

	(4.17.2) ParentClass is known to be able to be null if a class has been deleted without redirector. Allow the class to be marked deprecated under this circumstance.
	#jira UE-47467

Change 3600859 by Marc.Audy

	(4.17.2) Prevent error pop ups about failing to save world due to save on compile of blueprints
	#jira UE-48672

Change 3600918 by Marc.Audy

	Transient child actor components should create transient child actors.
	#jira UE-48605

Change 3601012 by Ben.Zeigler

	Fix TCP Messaging system to work better on non desktop by sleeping for some real time during the thread tick.
	Add verbose logs and fix warning spam about thread stats being duplicated by renaming the thread per connection.

Change 3602595 by Marc.Audy

	(4.17.2) PR #3930: Fix compiler error for PS4 if a nativized blueprint invokes a method of its own through interface (Contributed by hillin)
	#jira UE-48684

Change 3602644 by Ben.Zeigler

	Add game game thread asserts to streamable manager to track down possible async loading thread issues

Change 3602745 by Ben.Zeigler

	Add Tolerance parameters to AssertEqual_Rotator and Transform, Vector and Float already had them

Change 3602807 by Phillip.Kavan

	#jira UE-48426
	- Fix runtime crash in a nativized child Blueprint that includes a parent function call node in a replicated function implementation.

	Change summary:
	- Modified FBlueprintCompilerCppBackend::EmitCallStatmentInner() to append the "_Implementation" postfix to parent RPC calls in a child class RPC implementation.

Change 3602856 by Ben.Zeigler

	Fix fixed frame rate to be more stable by computing delta time as doubles, to avoid rounding issues

Change 3602903 by Marc.Audy

	Allow Scale to be set on an AnimNotify as well as the spawn emitter gameplay statics
	#jira UE-39362

Change 3602963 by Marc.Audy

	PR #3762: DisableHaptics disables haptics properly (Contributed by projectgheist)
	#jira UE-46960

Change 3603249 by Marc.Audy

	Prevent compilation of a blueprint containing a child actor component to mark the blueprint the child actor's class dirty
	#jira UE-43328

Change 3603311 by Ben.Zeigler

	Add -nocodesign option to disable code signing during staging

Change 3603504 by Ben.Zeigler

	#jira UE-27124 Fix crash during PIE by ensuring the world package PIE flag is always set, even if it's loaded via redirector

Change 3604790 by Marc.Audy

	Fix inability to undo Add Pin via context menu to make container nodes.
	#jira UE-48751

Change 3605079 by mason.seay

	Renamed component from Cube to Cylinder, because it's actually a Cylinder

Change 3605113 by Mieszko.Zielinski

	PR #3927: Fixed issue of behavior if setting InfiniteLoopTimeoutTime variable (Contributed by yhase7)


Change 3605276 by mason.seay

	Fixed comment error in level bp

Change 3605706 by Zak.Middleton

	#ue4 - Fix redundant GetDefault<>.

	#jira none

Change 3605850 by Zak.Middleton

	#ue4 -  Fix client assert when trying to send RPCs while connection is pending closure due to queued bunches. ChIndex is -1 during this time, though the channel is not actually closed. Added ensure when calling SendBunch() under this condition to catch future cases like this.

	(Mirror CL 3602849 in Fortnite)

	#jira FORT-51215, UT-6139

Change 3607677 by Dan.Oconnor

	Mirror 3597636 from Release-4.17
	Don't clear UClass CDO until after we've duplicated the class, in case class duplication wants to read from the CDO (e.g. when duplicating a class that has ChildActorComponents)
	#jira UE-48524

Change 3607704 by Dan.Oconnor

	Back out changelist 3607677 - want to obliterate integration record

Change 3607727 by Dan.Oconnor

	Mirror 3597636 from Release-4.17 - now with integrations converted to edits
	Don't clear UClass CDO until after we've duplicated the class, in case class duplication wants to read from the CDO (e.g. when duplicating a class that has ChildActorComponents)
	#jira UE-48524

Change 3607735 by Dan.Oconnor

	Mirror 3606248 from Release-4.17
	When copying data from old archetypes to new archetypes we want to use delta's from the old instances, but only when reliable (e.g. not CDO)

	#jira UE-48697, UE-48465

Change 3607919 by Ben.Zeigler

	#jira UE- 48815
	Fix issue where StreamableHandle CompletedDelegate wasn't being reset after being called. If this had a payload pointing to the handle the handle would then be kept alive forever due to the reference counting, causing bad memory leaks
	Copy of CL #3607743

Change 3608447 by mason.seay

	Fixing deprecated node

Change 3608779 by Ben.Zeigler

	#jira UE-48762 Do not rename a PIE world in place if it was loaded by redirector, this corrupts the redirector and later crashes if used again

Change 3609860 by Marc.Audy

	Allow uint8:1 properties to be used as expose on spawn

	#jira FORT-52043

Change 3609877 by Marc.Audy

	Reduce size of UProperty and UWidgetBlueprintGeneratedClass by 8 bytes
	Reduce size UBlueprintGeneratedClass by 32 bytes

	#jira FORT-52043

Change 3609944 by Marc.Audy

	Remove unused per instance physics create/destroyed delegates from UActorComponent (reduce size by 224 bytes)

Change 3610009 by mason.seay

	Moving assets to another folder for organization

Change 3610840 by Ben.Zeigler

	#jira UE-47351 Fix multiple launch ons inside the editor to correctly detect changed source files by refreshing the asset registry each time.
	Packages are now always saved to disk before launch on so we just need to load the data off disk and then refresh the registry generators.

Change 3610961 by Ben.Zeigler

	Fix it so when a test times out it writes out the full report with a proper error
	Fix typo with ErrorCount

Change 3611183 by Marc.Audy

	(4.17.2) Don't crash clicking the variable of a deleted component
	#jira UE-47678

Change 3611262 by Ben.Zeigler

	#jira UE-41412 Fix Delegate ImportText to check the outer chain for owning object before searching all packages, this fixes several issues with copy-pasting actors that have bound delegates

Change 3611667 by Phillip.Kavan

	#jira UE-48450
	- Fix UHT C++ codegen compile error (regression) after choosing to package with Blueprint nativization enabled if the project includes a converted User-Defined Structure asset.

Change 3612641 by Marc.Audy

	Private StaticMesh, remove deprecation warning

Change 3612990 by Marc.Audy

	Reduce memory footprint of UClass

Change 3613137 by Ben.Zeigler

	#jira UE-44570 Fix issue with GUID struct customization where it would generate a post edit after modifying only the first element in the GUID, which caused the property handle to get invalidated

Change 3613161 by Ben.Zeigler

	#jira UE-48372 Add InRange (Int) for Blueprints, and cleanup KismetMathLibrary.h comments
	PR #3899

Change 3613192 by Ben.Zeigler

	#jira UE-48366 PR #3895 Fix missing small icons within the blueprint Merge and diff tools

Change 3613320 by Mason.Seay

	Submitting deleted redirectors

Change 3613321 by Marc.Audy

	Shrink AActor 32 bytes

Change 3613326 by Marc.Audy

	Move Serialize to be editoronly

Change 3613358 by Phillip.Kavan

	#jira UE-48525 - Fix non-native script interface property value initialization for nativized Blueprint class default objects.

	Change summary:
	- Modified FEmitDefaultValueHelper::HandleSpecialTypes() to special-case interface property values when emitting initialization code for converted class subobjects.

Change 3613827 by Marc.Audy

	Combine material parameter caches of UMeshComponent in to a single sorted map instead of 3 independent maps (saves ~224 bytes)

Change 3613841 by Ben.Zeigler

	#jira UE-48800 Fix crash with undoing blueprint changes while blueprint differ is open, it now listens for blueprint changes

Change 3614031 by Marc.Audy

	Fix initialization order

Change 3614033 by Marc.Audy

	Use Reset instead of Empty in get functions

Change 3615211 by Ben.Zeigler

	Fix CIS warning

Change 3615386 by Ben.Zeigler

	#jira UE-48976 Fix crash compiling user struct when out of date nodes point to it

Change 3615571 by Ben.Zeigler

	#jira UE-48974 Fix crash trying to reconnect blueprint pins with null connections

Change 3615844 by Marc.Audy

	(4.17.2) Reexpose WeightedBlendables/Post Process Materials to blueprints
	#jira UE-48977

Change 3615887 by Marc.Audy

	(4.17.2) Don't crash getting context menu actions if the variable get doesn't have a value pin
	#jira UE-48970

Change 3615965 by Dan.Oconnor

	Make sure that depedent blueprints are bytecode recompiled (e.g. child blueprints that are also dependent must also be bytecode recompiled), also no longer call RefreshNodes on dependent blueprints of interfaces, as this is no longer needed and can result in incoherent skeleton class hierarchies

	#jira UE-48429, UE-48433, UE-48437, UE-48445, UE-48692

Change 3616149 by mason.seay

	Updated BP for more thorough Find in BP testing

Change 3616261 by Dan.Oconnor

	Mirror 3594264 and 3594798 from Release-4.17
	Fix crash after compiling a blueprint that has an invalid ParentClass
	#jira UE-48430, UE-48903

Change 3616816 by Zak.Middleton

	#ue4 - Add GetTargetRotation() to SpringArmComponent, which returns the rotation target based on the combination of various rotation setting flags (bUsePawnControlRotation, bInheritPitch, bInheritYaw, bInheritRoll, absolute rotation flags).

	#jira UE-48351

Change 3616934 by Phillip.Kavan

	#jira UE-48877 - Close a disabled new-style global find tab if docked after restoring a previously-saved Blueprint editor layout.

	Change summary:
	- Modified FBlueprintEditor::PostLayoutBlueprintEditorInitialization() to close any active global tabs after restoring from a saved layout if the option is disabled.

Change 3616946 by Phillip.Kavan

	#jira UE-48595 - Global FiB Results are now accessible through the main Window menu.

Change 3618007 by Marc.Audy

	(4.17.2) Ensure that RootComponent is correct after undo/redo
	#jira UE-48995

Change 3618014 by Phillip.Kavan

	#jira UE-49025 - Fix global FiB menu item names.

Change 3618206 by Dan.Oconnor

	Make sure instances in the same package as a UBlueprintGeneratedClass are properly created after the CDO

	#jira UE-47991, UE-47726

Change 3618211 by Dan.Oconnor

	Fix 'bad' USE_DEFERRED_DEPENDENCY_CHECK_VERIFICATION_TEST - this is only broken until we get the fix from core that restores CLASS_Intrinsic

Change 3618299 by Zak.Middleton

	#ue4 - Fix comment in GetComponents (UActorComponent version)

	#jira none

Change 3618409 by Marc.Audy

	Make linker placeholder properly support map and set properties
	#jira UE-48925

Change 3618436 by Marc.Audy

	Fix shadow variable

Change 3618682 by Ben.Zeigler

	Fix issue where pressing escape or losing focus while using a SpinBox would leave the UI in a state where the SpinBox could never be used again, caused by CL #3173966. Also fix the initial value to be correct the first time it is dragged

Change 3618783 by Ben.Zeigler

	Fix several issues with the Component Transform details UI
	#jira UE-48959 Fix it so the world/relative transform type bools are correctly propagated to inherited components when modified via editor customizations
	#jira UE-48963 Refactor Transform customization to handle paste and reset to default as atomic operations, allowing them to work properly on blueprint component instances
	#jira UE-48960 Correctly notify blueprint system when component transforms are changed
	#jira UE-4311 Preserve exact rotation typed into component rotation field in most cases
	Fix the "Reset to Defaults" icon to be correct in transform details

Change 3618904 by Ben.Zeigler

	#jira UE-489999 Fix blueprint breakpoint crash when breakpoint data is out of date with UI

Change 3618984 by Zak.Middleton

	#ue4 - Reduce memory churn/allocations when duplicating for PIE.

	#jira none

Change 3619895 by Marc.Audy

	Very minor cleanup

Change 3620129 by Marc.Audy

	PR #3958: Exposing GetOwningPlayerController and GetOwningPawn as public in AHUD. (Contributed by ill)
	#jira UE-49083

Change 3620350 by Lukasz.Furman

	restored intended behavior of path following's acceptance radius: additive with goal and agent radii (included when FAIMoveRequest flags allow it)
	copy of CL# 3618825, 3618828
	#ue4

Change 3620628 by Zak.Middleton

	#ue4 - Moved hardcoded limits on FCollisionShape extents to a static value and refactored external code to reference that instead.

	Fixed Capsules where axis length (half-height - radius) < 1 were clamped to a new capsule with axis length of 1. Changed the clamp threshold to 1e-4 and changed FPhysXShapeAdaptor to use a Sphere instead when Radius >= HalfHeight.

	This would cause sweeps using the capsule params to use a capsule of a different size, up to 1 UU different along the axis.

	#jira UE-49035

Change 3620700 by Lukasz.Furman

	moved blackboard decortator's version of requesting abort to parent class, so all decorators can use it with external events
	#ue4

Change 3620716 by mason.seay

	Test map for flow control save issue

Change 3620723 by mason.seay

	Minor improvement

Change 3620792 by Ben.Zeigler

	Clang doesn't like template specializations in classes, switch to an overload instead to fix CIS

Change 3621084 by Marc.Audy

	Fix NegateInt/Float in StandardMacros
	#jira UE-36242
	#jira UE-36470

Change 3621152 by Marc.Audy

	Fix backwards compatibility on FEdGraphPinType for particularly old blueprints.
	#jira UE-49111

Change 3621246 by mason.seay

	Test BP for UE-48800

Change 3621257 by Michael.Noland

	Animation: Corrected a comment on the LegIK node

Change 3621480 by Zak.Middleton

	#ue4 - Added FTransform::TransformRotation(FQuat) and FTransform::InverseTransformRotation(FQuat). Added matching Blueprint library functions taking FRotator.

	#jira UE-39088
	#github PR 2985 (modified)

Change 3621685 by Phillip.Kavan

	#jira UE-49024 - Add/remove global FiB menu items from the Main Menu when the global FiB option is enabled/disabled.

	Change summary:
	- Added FFindInBlueprintSearchManager::EnableGlobalFindResults(). Now using this API to enable/disable both the Main menu items as well as the global FiB workflow change within the BP editor context.
	- Renamed FFindInBlueprintSearchManager::CloseAllGlobalResults() to CloseOrphanedGlobalFindResultsTabs(). This is now being called to clean up any orphaned global FiB tabs when opening the BP editor context.

Change 3622629 by Marc.Audy

	Reduce memory footprint of UMG/Slate classes: UWidget, UBorder, UImage, UUserWidget, SWidget, SButton, SOverlay, SBoxPanel, SInlineEditableTextBlock, FSlateFontInfo, EVisibility, FSlateBrush, FCheckBoxStyle, FButtonStyle, FComboBoxStyle

Change 3622779 by Zak.Middleton

	#ue4 - Rename USceneComponent::bWorldToComponentUpdated to bComponentToWorldUpdated (since the transform is called ComponentToWorld).

	#jira none

Change 3623020 by Marc.Audy

	Fix initialization order

Change 3623021 by Marc.Audy

	Reorganize USceneComponent to improve cache coherency

Change 3623261 by Ben.Zeigler

	#jira UE-48555: Fix for corruption of shared pointers by the async loading thread. It is unsafe to copy delegates by value on the async loading threads because they may have shared pointers on them that are being used by the main thread. Instead of copying by value, we now allocate once on the game thread and copy by TUniquePtr.

Change 3623294 by Marc.Audy

	Realign UActorComponent to avoid members crossing cache lines

Change 3623383 by Marc.Audy

	Compress UParticleSystemComponent and fix up cases of members crossing cache lines

Change 3623492 by Marc.Audy

	(4.17.2) Fix pin values on function nodes not correctly carrying the value between reloads/refreshes
	#jira UE-49189
	#jira UE-49196

Change 3623573 by Ben.Zeigler

	#jira UE-49223 Fix crash when undoing changes to actors that have been recompiled. We need to skip most of PostEditUndo when the class is out of date and this got broken in a recent refactor

Change 3623642 by Dan.Oconnor

	Make sure we don't attempt to defer exports that rely on CDOs that have been regenerated

	#jira UE-49211

Change 3623719 by Marc.Audy

	PR #3387: Added new Swap method (blueprint KismetArrayLibrary). (Contributed by RChehowski)
	#jira UE-42970

Change 3624191 by Marc.Audy

	Cache GetWorld()

Change 3624232 by Marc.Audy

	Remove accidentally checked in change

Change 3624688 by Marc.Audy

	PR #3491: Client play force feedback can now ignore time dilation. (Contributed by miracle7)
	Force feedback component can also ignore time dilation
	#jira UE-44155

Change 3624880 by Marc.Audy

	PR #3970: SpawnObject not checking for a nullptr causing an editor crash

Change 3625740 by Mason.Seay

	Check in the correct file this time...

Change 3625806 by Ben.Zeigler

	#jira UE-48555 Code review fix for async loading thread fixes, disable an assert when cancel is called in non-EDL, and add comment + assert if Cancel is re-enabled for EDL in the future

Change 3626128 by Marc.Audy

	Fix dragging off component tree in to graph showing an error message
	#jira UE-49114

Change 3626655 by Ben.Zeigler

	#jira OR-43846 Fix asset import objects to correctly load off disk again. They aren't marked as SubObjects so the special case code to add the NeedsLoad flag wasn't getting hit. Change it so in the editor it marks all unloaded subobjects as needs load, need to talk to Core about rather this fix should be editor specific or not

Change 3626740 by Marc.Audy

	Fix compile errors when nativizing when a property references a sub object of a dervied type with modified default properties
	#jira UE-49276

Change 3626831 by Marc.Audy

	Remove BOM

Change 3627162 by Phillip.Kavan

	#jira UE-49239 - Fix an invalid cast emitted to nativized codegen for converted AnimBP types.

	- Regression introduced in CL# 3613358.

Change 3628051 by Marc.Audy

	Fix spelling of redundant
	#jira UE-49343

Change 3596437 by Marc.Audy

	Don't copy metadata unnecessarily

Change 3613302 by Marc.Audy

	Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 56 bytes exclusive)
	Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive).
	Reduce size of USceneComponent by 112 bytes.
	Reduce size of FLightingChannels from 3 bytes to 1.
	Reduce size of FBodyInstance by 16 bytes.

Change 3620363 by Lukasz.Furman

	split UBTTask_MoveTo.bStopOnOverlap flag to separate goal & agent parts to match actual parameters of AI move request, added simple versioning for behavior tree nodes
	copy of CL# 3620248
	#ue4

Change 3622569 by Marc.Audy

	Remove unnecessarily deprecated visibility member and use redirect instead

Change 3624879 by Marc.Audy

	Add a deprecated version of ClientPlayForceFeedback for backwards compatibility.
	Adjust existing game calls to ClientPlayrForceFeedback to use new API

[CL 3628687 by Marc Audy in Main branch]
2017-09-06 14:17:59 -04:00