Commit Graph

33 Commits

Author SHA1 Message Date
dave jones2
bcadd23489 UE-151338 - Implement refactored implicit conversion for math types.
Removed container and struct conversions from the script VM. This introduced complexity that the VM doesn't need, nor did it scale for the various struct types that we want to implicitly convert in Blueprints. Instead, the script VM is *only* aware of float<->double conversion. Container and struct conversions have now been moved to BlueprintTypeConversions. Currently, only the existing FVector3f<->FVector3d conversion has been added, but the remaining LWC types will be added in a subsequent change.

During Blueprint compilation of container and struct conversions, we now inject a function call into the bytecode that performs the conversion, which is better suited to the task instead of burdening the VM with the work. One drawback to this technique is that containers are slightly more inefficient when it comes to conversions. They won't know their type(s) ahead of time, which requires dynamically looking up a conversion function at runtime. We can possibly optimize this further, but the generaly recommendation is to avoid implicit conversions of container types when possible.

Additionally, a couple of convenience functions were added to the KismetCastingUtils to help remove a fair amount of boilerplate code that was used for implicit casting in various node types. ScriptCastingUtils.h was also removed since the VM no longer needs to concern itself with complex conversions.

#jira UE-151338
#preflight 629a507fb42820769428c133
#rb phillip.kavan

[CL 20560449 by dave jones2 in ue5-main branch]
2022-06-08 13:50:57 -04:00
dave jones2
ed1b4ed6a5 UE-140327 - Remove ENABLE_BLUEPRINT_REAL_NUMBERS usage
The original ENABLE_BLUEPRINT_REAL_NUMBERS macro was strictly meant for AB testing in the Dev-LWC. Currently, disabling it won't work, and would likely lead to broken behavior. Its presence might incorrectly indicate to licensees that this is an option that can be toggled safely.

#rb marc.audy
#jira UE-140327
#preflight 61fc6449dc0b3ecbecb6f381
#lockdown julien.marchand

#ROBOMERGE-AUTHOR: dave.jones2
#ROBOMERGE-SOURCE: CL 18864654 in //UE5/Release-5.0/... via CL 18864683 via CL 18864993
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18865002 by dave jones2 in ue5-main branch]
2022-02-04 11:54:52 -05:00
dave jones2
c8574d3b74 Merging //UE5/Dev-LargeWorldCoordinates [at] 18802167 to //UE5/Release-5.0
Blueprint real number support.

This change deprecates the use the of "float" and "double" types in Blueprints in favor of a new "real". By default, "real" is back by a double precision floating point number. However, it can be single precision if the number is a native float property or function parameter. This distinction won't be visible to the Blueprint user: in both instances, they'll be represented by "real" pin types. During deserialization, we'll automatically convert Blueprint pin types to use real/doubles, unless they're used to represent native code (including delegate signatures).

One consequence of this change is that we need to perform implicit casts between single and double precision real numbers. During Blueprint compilation, the compiler will detect points in the graph for when either a widening or narrowing conversion needs to occur. Subsequently, the script bytecode will contain a new cast instruction that performs the conversion. This also works on container types, but each entry in the container will have to be converted. This can introduce unwanted overhead for large containers that are frequently passed between Blueprint and native code.

The scope of this change affects Blueprints used by Gameplay, Animation, Control Rig, and UMG.

#rb marc.audy (serialization changes)
#jira UE-116484
#preflight 61f8bdd5a2514ba12ff7bdfc

#ROBOMERGE-AUTHOR: dave.jones2
#ROBOMERGE-SOURCE: CL 18809077 in //UE5/Release-5.0/... via CL 18809455 via CL 18822548
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v908-18788545)

[CL 18823569 by dave jones2 in ue5-main branch]
2022-02-02 05:50:50 -05:00
Marc Audy
4c1bb11c29 Merge UE5/Release-Engine-Staging to UE5/Main @ 14548662
This represents UE4/Main @ 14525125 + cherrypicked fixes
#skipundocheck

[CL 14551026 by Marc Audy in ue5-main branch]
2020-10-22 19:19:16 -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
ryan durand
627baf970a Updating copyright for Engine Editor.
#rnx
#rb none


#ROBOMERGE-SOURCE: CL 10869241 via CL 10869527 via CL 10869904
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870586 by ryan durand in Main branch]
2019-12-26 15:33:43 -05: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
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
Marc Audy
78ce1089a6 Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3716594)
#lockdown Nick.Penwarden

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

Change 3623720 by Phillip.Kavan

	#jira UE-49239 - Temp fix for QAGame animations not updating in a nativized build.

	Change summary:
	- Temporarily excluded all AnimBP assets from nativization as a workaround.

Change 3626305 by Phillip.Kavan

	#jira UE-49269 - Workaround fix for crash after packaging a nativized QAGame build with all AnimBP assets disabled for nativization by default.

Change 3629145 by Marc.Audy

	Don't hide developer nativization tool behind ini

Change 3630849 by Marc.Audy

	Fix nativization uncompilable code when using a non-referenceable term in a switch statement.
	#jira UE-44085

Change 3631037 by Marc.Audy

	(4.17.2) Fix crash when nativizing blueprint with MakeMap or MakeSet node in it
	#jira UE-49440

Change 3631206 by Marc.Audy

	Make NAME_None == TEXT("") behave the same as NAME_None == FName(TEXT(""))

Change 3631232 by Marc.Audy

	Remove outdated diagnostic code throwing false positives
	#jira UE-47986

Change 3631573 by Marc.Audy

	Fix containers of vector, rotator, or transform placing a space between the type and the pluralization 's'

Change 3633168 by Lukasz.Furman

	fixed behavior tree changing its state during latent abort,
	modified order of operations during abort to: abort & wait -> change aux nodes -> execute

Change 3633609 by Marc.Audy

	Don't get unneeded string

Change 3633691 by Marc.Audy

	Fix copy-pasting of a collapsed graph containing a map input losing the value type
	#jira UE-49517

Change 3633967 by Ben.Zeigler

	Actor.h header cleanup, fix various comments and reorganize some members,  saves 80 bytes per actor in a cooked Win64 build
	bRunningUserConstructionScript is now private, exposed with IsRunningUserConstructionScript
	Fixed a few other fields to be private that were accidentally made public in 4.17

Change 3633984 by Michael.Noland

	Blueprints: Fixed a potential crash when collapsing nodes to a function when a potential entry pin had no links

Change 3634464 by Ben.Zeigler

	Header cleanups for Pawn, Controller, Character, and PlayerController

Change 3636858 by Marc.Audy

	In preview worlds don't display the light error sprite
	#jira UE-49555

Change 3636903 by Marc.Audy

	Fix numerous issues with copy/pasting editable pin bases
	#jira UE-49532

Change 3638898 by Marc.Audy

	Allow right-click creation of local variables in blueprint function libraries
	#jira UE-49590

Change 3639086 by Marc.Audy

	PR #4006: Mark UEdGraphSchema::BreakSinglePinLink as const (Contributed by leyyin)
	#jira UE-49591

Change 3639445 by Marc.Audy

	Fix mistaken override and virtual markup on niagara schema function.

Change 3641202 by Marc.Audy

	(4.17.2) Fix crash undoing pin changes with split pins
	#jira UE-49634

Change 3643825 by Marc.Audy

	(4.17.2) Fix crash right clicking a struct pin when the struct it represented has been deleted
	#jira UE-49756

Change 3645110 by mason.seay

	Fixed up QA-ClickHUD map so it's usable and makes more sense

Change 3646428 by Dan.Oconnor

	Fix for UbergraphFrame layout changing during bytecode recompile, which would cause actual ubergraph frame layout to mismatch reflection data
	#jira None

Change 3647298 by Marc.Audy

	PR #4016: Rename argument name for SetInputMode (Contributed by projectgheist)
	#jira UE-49748

Change 3647815 by Marc.Audy

	Minor performance improvements

Change 3648931 by Lina.Halper

	#Compiler : fixed so that each type of BP can provide module info, and compiler info
	- Moved out AnimBlueprint Compiler
	- Refactored WidgetBlueprint

	- DUPE - Merging using ControlRig_Dev-Framework

Change 3654310 by Marc.Audy

	Shrink USkinnedMeshComponent 64 bytes
	Shrink USkeletalMeshComponent 224 bytes (160 bytes internal)

Change 3654636 by Lina.Halper

	Fix crashing on shutdown

	#jira: UE-50004

Change 3654960 by Lina.Halper

	- Fix with automation test of creation/duplication
	- Fixed shut down crash with editor again due to uobject GCed

	#jira: UE-50028

Change 3655023 by Ben.Zeigler

	#jira UE-50101 Fix level streaming transform when PIE-duplicating a level that has been preloaded but not made visible in the editor. Instead of always saying actors have been moved we copy the source level's flag

Change 3655426 by Ben.Zeigler

	#jira UE-50019 Fix issue where StreamableManager could return objects that are partially loaded if called from PostLoad. StreamableManager never wants half-loaded objects, so change it to explicitly skip them

Change 3657627 by Ben.Zeigler

	#jira UE-50157 Fix EDL load dependency issue where the simple construction script/ICH are not guaranteed to be serialized in time for subobject construction

Change 3662086 by Mieszko.Zielinski

	Fixed navmesh not loading properly in PIE when owning world has been duplicated-for-play #UE4

	This can happen when navigation containing level is loaded via AsyncLoadPrimaryAssetList

	#jira UE-50101

Change 3662294 by Ben.Zeigler

	Fix enum redirects to handle non-class enums properly where a value redirect is not specified. It needs to convert from EOldEnum::Value to ENewEnum::Value before doing the name check

Change 3662825 by Mieszko.Zielinski

	Fixed VisLog debug drawing crashing when using UI to change log lines to be displayed #UE4

	there was a loop iterating over elements of a map and was modifying the map as it went, which is a big no-no

Change 3664424 by Marc.Audy

	UE-50076 test assets #rb none #rnx

Change 3664441 by Mieszko.Zielinski

	PR #3993: UE-25907: Added logging to Log Text, Log Location, and Log Box Shape (Contributed by projectgheist)

	Piggybacking on this PR I've redone how visual log is using categories. Now it's using FName rather than FLogCategoryBase to indicated log category. All UE_VLOG macros have been updated.


Change 3664506 by Phillip.Kavan

	#jira UE-47852 - Fix various issues with both UAT/UBT-driven and manually-configured code/data build workflows involving nativized Blueprint assets.

	Change summary:
	- UAT: Removed '-nativizedAssets' command-line option. It's no longer required to specify this flag when cooking/building in order to enable nativization.
	- UAT: Removed AutomationTool.ProjectParams.BlueprintPluginPaths.
	- UAT: Modified AutomationTool.ProjectParams.ProjectParams() to initialize the 'RunAssetNativization' field based on the current 'BlueprintNativizationMethod' config setting. This flag is now used just to direct UAT to defer invoking UBT for '-build' until after the '-cook' stage has finished.
	- UAT: Modified BuildCookRun.DoBuildCookRun() to remove the 'bWarnIfPackagedWithoutNativizationFlag' case (since we removed the '-nativizedAssets' command-line option).
	- UAT: Removed Project.AddBlueprintPluginPathArgument() and Project.GetBlueprintPluginPathArgument(). These utility functions are no longer needed.
	- UAT: Modified Project.Cook() to remove the registration of each NativizedAssets plugin path for '-build' along with the addition of the '-nativizedAssets' argument with the platform-agnostic path to the NativizedAssets plugin when invoking UE4Editor.exe for '-cook'. This is now handled by the UE4Editor cook commandlet instead.
	- UAT: Modified Project.Build() to remove the addition of the '-plugin' argument with the path to the NativizedAssets plugin when invoking UBT for '-build'. This is now handled by UBT instead.
	- UBT: Modified UnrealBuildTool.ProjectFileGenerator.DiscoverExtraPlugins() to remove the previously-added search for intermediate plugin assets based on the 'AdditionalPluginDirectories' optionally found in the .uproject file. Instead, this search is now handled via a Plugins.EnumeratePlugins() LINQ query. It is also gated by a new Advanced project setting in DefaultGame.ini that defaults to off, but this way users can still add generated assets into the solution file.
	- UBT: Added UnrealBuildTool.UEBuildTarget.ShouldIncludeNativizedAssets() as a utility method for checking the current 'BlueprintNativizationMethod' setting in the game's config file.
	- UBT: Modified UnrealBuildTool.UEBuildTarget.CreateTarget() to confirm the existence of a NativizedAssets plugin (generated at cook time) when the project is configured for nativization. If the plugin is found, it is added to the RulesAssembly chain and the ProjectDescriptor.ForeignPlugins list. If the plugin is not found, then a BuildException is thrown informing the user that the plugin must exist in order to build (with a note to make sure to cook the target platform first).
	- UE4: Added 'Lex' namespace utility functions for converting PlatformInfo::EPlatformType to/from an FString. Note: Lex::FromString() is simply a proxy to the already-existing PlatformInfo::EPlaformTypeFromString() API, but it was included for completeness.
	- UE4: Removed the UProjectPackagingSettings::bWarnIfPackagedWithoutNativizationFlag. This is no longer needed since the '-nativizedAssets' command-line option has been removed.
	- UE4: Added UProjectPackagingSettings::bIncludeNativizedAssetsInProjectGeneration (advanced setting). This defaults to 'false' (off). When true, running GenerateProjects.bat will also generate project files for any NativizedAssets plugins previously generated at cook time. This gives advanced users/engineers an option to include nativized Blueprint class sources in the set of generated C++ code projects for faster browsing, etc.
	- UE4: Modified UProjectPackagingSettings::PostEditChangeProperty() to remove the case that handles the 'BlueprintNativizationMethod' property. When this value changes, we no longer make an attempt to modify the .uproject file.
	- UE4: Removed BlueprintNativeCodeGenManifestImpl::PlatformPlaceholderPattern. This pattern string is no longer in use. Also modified the FBlueprintNativeCodeGenPaths ctor to remove the replacement logic for the pattern string.
	- UE4: Modified FBlueprintNativeCodeGenPaths::GetDefaultCodeGenPaths() to construct and return a new directory pattern for the generated NativizedAssets plugin. This is now generated to: Intermediate/Plugins/NativizedAssets/<Platform>/<Type:Game|Client|Server>.
	- UE4: Modified FBlueprintNativeCodeGenPaths::PluginRootDir() to no longer append "NativizedAssets" to the end of the path to the generated NativizedAssets plugin.
	- UE4: Removed FCookByTheBookStartupOptions::bNativizeAssets and NativizedPluginPath (no longer in use since the '-nativizeAssets' command-line option has been removed).
	- UE4: Modified UCookCommandlet::CookByTheBook() to remove initialization of the 'bNativizeAssets' field in the startup options (since the corresponding command-line argument has been removed).
	- UE4: Removed FNativeCodeGenData::DestPluginPath and modified FBlueprintNativeCodeGenModule::Initialize() to remove the check for it.
	- UE4: Added FBlueprintNativeCodeGenModule::ShutdownModule(). This now handles cleanup for the nativization module after the cook process has finished.
	- UE4: Modified UCookCommandlet::CookByTheBook() to no longer look for the '-nativizedAssets' command-line option as well as to remove the initialization of the nativization-related startup option flags that were removed.
	- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to check the 'BlueprintNativizationMethod' config setting in order to determine whether or not to nativize assets. This replaces the '-nativizedAssets' command-line flag.
	- UE4: Modified UCookOnTheFlyServer::StartCookByTheBook() to remove the case that previously handled the 'bWarnIfPackagedWithoutNativizationFlag' check. This is no longer needed since the '-nativizedAssets' flag was removed.
	- UE4: Modified UCookOnTheFlyServer::CookByTheBookFinished() to unload the IBlueprintNativeCodeGenModule instance after cooking, in order to reset module state for another potential pass within the same process context.
	- UE4: Modified UWidgetBlueprintGeneratedClass::InitializeTemplate() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we shift the OldArchetype object into the transient package, it doesn't invalidate the outer package's linker. We need that to remain valid so that multiple nativized cooks within the same process don't fail.
	- UE4: Modified FMainFrameActionCallbacks::PackageProject() to remove the addition of '-nativizedAssets' to the UAT command line based on project settings (this is no longer needed, as it is now handled internally by UAT).
	- UE4: Modified SaveWorld() to append 'REN_ForceNoResetLoaders' to the Rename() flags so that when we rename the world instead of duplicating it, it no longer triggers a reset of *all* object loaders.

	Notes:
	- After this change, all nativization workflows (e.g. UAT, UBT and UE4Editor) now look to the 'BlueprintNativizationMethod' flag in the Project settings (UProjectPackagingSettings). This unifies everything on a single flag by default, and removes the feature added in 4.17 that touched the .uproject file when that setting changed (which itself introduced a couple of new regressions in that release).
	- Advanced users and build engineers can override this value per task. Instructions to do that are as follows:
	    - For UAT/UBT/UE4Editor.exe tasks, adding '-ini:Game:[/Script/UnrealEd.ProjectPackagingSettings]:BlueprintNativizationMethod=<Disabled|Inclusive|Exclusive>' will allow the current setting to be overridden on the command line.
	    - When '-cook' is included on the RunUAT BuildCookRun command line, the above needs to also be embedded within the '-AdditionalCookerOptions' command-line argument. This means that if both '-cook' and '-build' are included, then both the '-ini' argument shown above as well as the same '-ini' argument embedded inside the '-AdditionalCookerOptions' argument will need to be included for the build pipeline to work properly.
	- We should add a release note instructing users to check their .uproject file and remove any 'AdditionalPluginDirectories' entries that list the "Intermediate/Plugins" path. This will avoid issues when building the cooked target with UBT.
	- We should also add a release note and/or documentation to explain the "advanced" build pipeline options (i.e. the '-ini' argument noted above).

Change 3665061 by Phillip.Kavan

	Fix crash on load in a nativized build caused by a reference to a BP class containing a nativized enum.

	Mirrored from //UE4/Release-4.18 (CL# 3664993).

	#3969
	#jira UE-49233

Change 3665108 by Marc.Audy

	(4.18) Fix  crash when diffing a blueprint whose older version's parent blueprint has been deleted
	+ additional code cleanup
	#jira UE-50076

Change 3665114 by Marc.Audy

	Minor change that could potentially improve performance in some cases

Change 3665410 by Mieszko.Zielinski

	Fixed naming of Vislog's BP API #UE4

Change 3665634 by Ben.Zeigler

	#jira UE-50045 Mark PIE-duplicated packages as explicitly fully loaded to fix PIE networking crash. These used to be accidentally treated as fully loaded because it was checking the wrong package name on disk

Change 3666970 by Phillip.Kavan

	Do not emit a BOM when generating nativized Blueprint asset source files encoded as UTF-8.

	#jira UE-46814

Change 3667058 by Phillip.Kavan

	Ensure that '-build' is always passed to BuildCookRun automation for projects configured with Blueprint nativization enabled so that it doesn't skip that stage.

	Mirrored from //UE4/Release-4.18 (CL# 3667043).

	#jira UE-50403

Change 3667150 by Mieszko.Zielinski

	PR #4042: BT CompositeDecorator node clears RF_Transient flag for all owned Decorator nodes. (Contributed by BibbitM)

	Minor tweak from the original PR - made UBehaviorTreeDecoratorGraphNode_Decorator::ResetNodeOwner protected and added UBehaviorTreeGraphNode_CompositeDecorator class a a friend.


	#jira UE-50249

Change 3667152 by Mieszko.Zielinski

	PR #4047: Clearing RF_Transient flag when reseting EQS node owner - single change. (Contributed by BibbitM)


	#jira UE-50298

Change 3667166 by Mieszko.Zielinski

	Fixed FRichCurve baking so that it doesn't loose its curvature #UE4

	Also, added some baking sanity checking (like if the range is larger than a single point).

Change 3668025 by Dan.Oconnor

	Added a step to the compilation manager to skip recompilation of classes that are dependent on a given classes function signatures when those signatures have not changed

	#jira UE-50453

Change 3672063 by Ben.Zeigler

	#jira UE-49049 Fix issue with StreamableHandle ParentHandles array being modified during iteration, I had already fixed the Cancel case but not the complete case

Change 3672306 by Ben.Zeigler

	#jira UE-50571 Fix issue where PrimaryAsset blueprints would be incorrectly added to the dictionary if their base class had an active class redirect referencing it

Change 3672683 by Marc.Audy

	Code cleanup

Change 3672749 by Ben.Zeigler

	Fix issue where deleting a source package would not cause the generated cooked package to get deleted while doing an incremental build

Change 3672831 by Ben.Zeigler

	#jira UE-50507 Add a cook/save warning when a registered PrimaryAssetId does not match the object's real exported PrimaryAssetId.
	Make PrimaryDataAsset blueprintable so you can make primary assets in a blueprint-only project

Change 3673551 by Ben.Zeigler

	#jira UE-50029 Fix it so data-only blueprints will never create a UCS function in the final class. If you manually compiled the blueprint or it got recompiled due to inheritance it would create a UCS function that just calls its parent, which could cause problems later on when it did not create a UCS function during normal load

Change 3675074 by mason.seay

	Test map for VisLog Testing

Change 3675084 by Mieszko.Zielinski

	Fixed BT editor constantly marking BT asset as dirty if it has a "RunBehavior" node #UE4

	#jira UE-43430

Change 3676490 by Ben.Zeigler

	#jira UE-50635 Fix it so directly blueprinting PrimaryDataAsset will give you a useful PrimaryAssetType. Unless overridden the Type of a PrimaryDataAsset will be the first native class found in the hierarchy, or the the blueprint class that directly blueprints PrimaryDataAsset

Change 3676579 by Lukasz.Furman

	fixed crash in behavior tree's search rollback

Change 3676586 by Lukasz.Furman

	added local scope mode to behavior tree's composite nodes

Change 3676587 by Ben.Zeigler

	Swap PrimaryAssetId property customization to use the same ui as the Pin customization. This one better handles objects that aren't loaded into memory, the old Property one would show None in that case
	Add browse, use selected, and clear buttons, and make ID selector font the normal property font

Change 3676715 by Lukasz.Furman

	changed order of behavior tree's aux node ticking

Change 3676867 by Ben.Zeigler

	#jira UE-50665 Fix issue where resolving Soft Object Ptrs that are stored inside static assets or Blueprint CDOs from PIE will return the editor actor, not the PIE actor. So when resolving a path/ptr during PIE add a failsafe to do a PIE fixup
	Fix issue where Lazy pointer fixup could corrupt Soft Object Ptrs by applying the PIE fixup too early

Change 3677892 by Ben.Zeigler

	Fix crash when additional level viewport sprites are added after level editor module is loaded. This is basically the same fix as CL #3491406, but for sprites

Change 3678247 by Marc.Audy

	Fix static analysis warning

Change 3678357 by Ben.Zeigler

	#jira UE-50696 Add some container variables to diff test to track down crashes

Change 3678385 by Ben.Zeigler

	#jira UE-50696 Fix crash diffing blueprints where array properties were changed. It needs to not run the generic identical check until it's sure the container types match

Change 3678600 by Ben.Zeigler

	#jira UE-50703 Fix crash when a soft actor reference is not actually pointing to an actor, treat it like a broken reference

Change 3679075 by Dan.Oconnor

	Mirror 3679030 from Release-4.18
	Fix crash when compiling a level blueprint that has delegates to a blueprint that it also has a direct dependency on
	#jira UE-48692

Change 3679087 by Dan.Oconnor

	Filter out unnecessary relink jobs from the compilation manager

	#jira None

Change 3680221 by Ben.Zeigler

	#jira UE-50764 Fix crash when converting a property from a soft object reference to hard, it needs to validate the class after the conversion and null if necessary

Change 3680561 by Lukasz.Furman

	fixed unsafe StopTree calls in behavior tree
	#jira nope

Change 3680788 by Ben.Zeigler

	Fix issue where scrubbing sequencer in simulate would not modify actors. We need to temporarily set the PIE context global when doing this specific type of actor bind

Change 3683001 by mason.seay

	Submitting various test maps and assets

Change 3686837 by Mieszko.Zielinski

	Fixed NavMeshBoundsVolume not updating navmesh when its location gets changed via the Transform Details widget #Orion

	#jira UE-50857

Change 3688451 by Marc.Audy

	Fix up new material expression to work with String -> Name refactor

Change 3689097 by Mason.Seay

	Test content for nativization and enum testing

Change 3689106 by Mieszko.Zielinski

	Made NavMeshBoundsVolume react to undo in the editor #Orion

	#jira UE-51013

Change 3689347 by Mieszko.Zielinski

	Fixed a crash on FAIDynamicParam creation resulting from uninitialized member variables #UE4

	Manual merge of CL#3689316 over from 4.18

	#jira UE-51019

Change 3692524 by mason.seay

	Moved some assets to folder for org, fixed up redirectors

Change 3692540 by mason.seay

	Renaming test maps so they are clearly indicated for testing nativization

Change 3692577 by mason.seay

	Deleted a bunch of old assets I created specifically for various bugs reported.  All issues are closed so they're no longer needed

Change 3692724 by mason.seay

	Deleting handful of assets found in developer folders of those no longer with the team.  Moved assets that are still used by test maps

Change 3693184 by mason.seay

	Assets for testing nativization with structs

Change 3693367 by mason.seay

	Improvements to test content

Change 3695395 by Dan.Oconnor

	Fix for rare linker issue, IsBlueprintFinalizationPending would return true when we were trying to force load subobjects that were now ready to be loaded. This would prevent some placeholder objects from being replaced

	#jira None

Change 3695484 by Marc.Audy

	Fix sound cue connection drawing policy not getting returned.
	#jira UE-51032

Change 3695494 by mason.seay

	More test content for nativization testing

Change 3697829 by Mieszko.Zielinski

	PR #4104: Fixed a typo CaclulateMaxTilesCount to CalculateMaxTilesCount (Contributed by YuchenMei)


Change 3700541 by mason.seay

	Test map for containers with function bug

Change 3703459 by Marc.Audy

	Remove poorly named InverseLerp
	Fix degenerate behavior returning bad value
	#jira UE-50295

Change 3703803 by Marc.Audy

	Clean up autos
	Minor improvement to ShouldGenerateCluster

Change 3704496 by Mason.Seay

	More test content for testing nativization

Change 3706314 by Marc.Audy

	PR #4085: GetDefaultPawnClassForController -> BlueprintCallable (Contributed by Allar)
	#jira UE-50874

Change 3707502 by Mason.Seay

	Final changes to nativization test content (hopefully)

Change 3709478 by Marc.Audy

	PR #4144: Exposed MassageAxisInput for inheritence (Contributed by jackknobel)
	Same as CL# 3689702 implemented in Fortnite
	#jira UE-51453

Change 3709967 by Marc.Audy

	PR #4139: fixed a typo in a comment (Contributed by derekvanvliet)
	#jira UE-51372

Change 3709970 by Marc.Audy

	PR #4150: Fixed a typo in movement override comment (Contributed by ruffenman)
	#jira UE-51495

Change 3709971 by Marc.Audy

	PR #4149: Fixing typo on movement pawn component (Contributed by celsodantas)
	#jira UE-51492

Change 3710041 by Marc.Audy

	Minor code cleanup

Change 3711223 by Phillip.Kavan

	Move some Blueprint nativization log spam into the verbose category.

	#jira UE-49770

Change 3713398 by Marc.Audy

	PR #4157: Renamed AActor::InternalTakePointDamage function's parameter. (Contributed by BibbitM)
	#jira UE-51517

Change 3713601 by Marc.Audy

	Fix merge error

Change 3713994 by Marc.Audy

	(4.18) Just mark level script actor pending kill when the level script blueprint has been recompiled, instead of trying to send it through the destroy actor lifecycle event.
	#jira UE-50738

Change 3714270 by Marc.Audy

	Fix crashes with tickables as a result of virtuals not being usable in constructors/destructors
	#jira UE-51534

Change 3714406 by Marc.Audy

	Fix dumb inverted boolean check

Change 3716594 by Dan.Oconnor

	Integrate 3681301 from 4.18
	Only run OnLevelScriptBlueprintChanged when explicitly compiling a level blueprint, this matches the old behavior
	#jira UE-50780, UE-51568

Change 3686450 by Marc.Audy

	PinCategory, PinSubcategory, and PinName are now stored as FName instead of FString.
	CreatePin has several simplified overrides so you can only specify Subcategory or SubcategoryObject or neither.
	CreatePin also takes a parameter bundle for reference, const, container type, index, and value terminal type rather than a long list of default parameters.
	Material Expressions now store input and output names as FName instead of FString
	FNiagaraParameterHandle now stores the parameter handle, namespace, and name as FName instead of FString
	Most existing pin related functions using string have been deprecated.

Change 3713796 by Marc.Audy

	Added virtual GetTickableType function to FTickableBaseObject that can return Conditional (default), Always, or Never. Tickable Never objects will not get added to the tickable array or ever evaluated. Tickable Always objects do not call IsTickable and assume it will return true. Tickable Conditional objects work as in the past with IsTickable called each frame to make the determination whether to call Tick or not.

	IsTickable no longer a pure virtual (defaults to true).

	Applied fixes to avoid array corruption when a FTickableEditorObject is deleted during the tick phase consistent with previous fixes to FTickableGameObject.

Change 3638554 by Marc.Audy

	Add enum expansion functional test to validate that the metadata ExpandEnumAsExecs works as expected.

Change 3676502 by Ben.Zeigler

	Add Blueprint-only primary asset type to EngineTest, to cover testing UE-50635

[CL 3718205 by Marc Audy in Main branch]
2017-10-25 09:30:36 -04:00
Marc Audy
22f58737f9 Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3431384)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3252833 on 2017/01/10 by Ori.Cohen

	Refactor constraint so that it can be used for external solvers. (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework))

Change 3256288 on 2017/01/12 by Ori.Cohen

	Undo constraint refactor as we found a way around it and it made the code much harder to read/debug

Change 3373195 on 2017/03/30 by Mike.Beach

	For nativization, changing it so we key off of the target platform-info struct instead of the platform (in preparation for defining the nativized plugin's platform whitelist).

Change 3381178 on 2017/04/05 by Dan.Oconnor

	Make sure we don't inherit the NATIVE func flag when generating skeleton functions, also make sure all bojects outer'd to the skeleton class are marked transient
	#jira UE-43616

Change 3381532 on 2017/04/05 by Marc.Audy

	(4.16) Fix various cases where built lighting on child actors could be lost when loading a level
	#jira UE-43553

Change 3381586 on 2017/04/05 by Mike.Beach

	Now generating TArrayCaster conversions for nativized UClass arrays that need it (to handle different TSubclassOf arrays).

	#jira UE-42676, UE-43257

Change 3381682 on 2017/04/05 by mason.seay

	Some more changes to test map

Change 3381844 on 2017/04/05 by Dan.Oconnor

	Match existing logic for CPF_ReturnParm/CPF_OutParm. Fixes compilation error in BP_TurbineBlades when using compilation manager

Change 3382054 on 2017/04/05 by Zak.Middleton

	#ue4 - Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls.

	#jira UE-30998

Change 3382703 on 2017/04/06 by Lukasz.Furman

	fixed missing links between navmesh polys when there are more than 4 neighbor connections
	#jira UE-43524

Change 3383357 on 2017/04/06 by Marc.Audy

	(4.16) Make SetHiddenInGame propagate consistently with SetVisibility
	#jira UE-43709

Change 3383359 on 2017/04/06 by Dan.Oconnor

	Fix last errant SKEL reference when cooking Odin

Change 3383591 on 2017/04/06 by Mike.Beach

	Prevent users from setting object variables as 'config' properties (disallowed by UHT). This prevents some errors that could happen later when users nativize the Blueprint.

	#jira UE-42085

Change 3384762 on 2017/04/07 by Zak.Middleton

	#ue4 - Fix SpringArmComponent not restoring relative transform when bUsePawnControlRotation is turned off. Fixes the editor interaction ignoring transform of the component in the viewport after bUsePawnControlRotation is toggled on then off, since by then the world transform had been overwritten (from tick in editor) and nothing would drive transform changes from the editable value.

	Toggling bUsePawnControlRotation off at runtime now restores the rotation to the initial relative rotation, not stomping it with the current pawn rotation, allowing toggling between the editable/desired base rotation and the control rotation.

	#jira UE-24850

Change 3384948 on 2017/04/07 by Dan.Oconnor

	Prevent GForceDisableBlueprintCompileOnLoad from causing all sorts of badness when dependencies are loaded as part of a Diff operation. Instead of setting a global flag we flag the package as LOAD_DisableCompileOnLoad

Change 3385267 on 2017/04/07 by Michael.Noland

	Graph Editing: Pushed some node diffing code down from UAIGraphNode into UEdGraphNode so nodes with details panel properties will diff correctly (e.g., various animation nodes and BP switch nodes)

	#jira UE-21724

Change 3385473 on 2017/04/07 by Phillip.Kavan

	#jira UE-43067 - Fix broken pin wires after an Expand Node operation, along with some misc. cleanup.

	Change summary:
	- Fixed to use correct string for "Expand Node" transaction name.
	- Modified FBlueprintEditor::OnExpandNodes() to consolidate some redundant code.
	- Fixed to generate a unique node GUID for cases where the source graph is not removed after expansion.

Change 3385583 on 2017/04/07 by Dan.Oconnor

	Handle CreatePropertyOnScope nullptr return values (happens for structs missing a struct property)

	#jira UE-43746

Change 3386581 on 2017/04/10 by Michael.Noland

	Blueprints: Further hardening FBlueprintActionInfo::GetOwnerClass()
	#jira UE-43824

Change 3386615 on 2017/04/10 by Marc.Audy

	Instanced properties can now properly be set on a per-instance basis in blueprint added components.
	#jira UE-42066

Change 3387000 on 2017/04/10 by Marc.Audy

	Fix includes for CIS

Change 3387229 on 2017/04/10 by mason.seay

	More changes to TM-Gameplay

	Added Save Game test (with blueprint)

	Tick Interval test (with blueprint)

	BP logic cleanup

	Level organization

Change 3388437 on 2017/04/11 by Mike.Beach

	Adding support for map/set literals in the backend (so you can use set nodes for structs containing sets/maps, without having to connect a RHS input - resets to struct defaults).

	#jira UE-42617

Change 3388532 on 2017/04/11 by mason.seay

	Submitting latest changes for crash repro

Change 3389026 on 2017/04/11 by Ben.Zeigler

	Performance and bug fixes for incremetal cooking with asset registry, duplicate of several changes made on //Fortnite/Main
	Fix it so AssetRegistry.ScanPathsAndFilesSynchronous won't scan subdirectories inside already scanned directories, this cuts down on the number of cache files
	Fix 2 second stall when shutting down AssetSourceFilenameCache if it had never been previously created

Change 3389163 on 2017/04/11 by Ben.Zeigler

	#jira UE-42922 Fix it so connecting function input node output pins does not clear default value, we only want to clear the value when connecting an input pin. Properly testing this fix depends on UE-43883

Change 3389205 on 2017/04/11 by Marc.Audy

	Protect against a handful of GEditor usages that can now be hit in standalone

Change 3389220 on 2017/04/11 by Marc.Audy

	Don't borrow ClassWithin to masquerade as ParentClass during compilation and instead just set the super struct immediately

Change 3389222 on 2017/04/11 by Michael.Noland

	Framework: Adding a cvar (t.TickComponentLatentActionsWithTheComponent) to allow users to revert to the old behavior on when component latent actions tick
	- Non-zero values behave the same way as actors do, ticking pending latent action when the component ticks, instead of later on in the frame (default behavior in 4.16 and beyond)
	- Prior to 4.16, components behaved as if the value were 0, which meant their latent actions behaved differently to actors

	This CVar will be removed in a future version, defaulting to on

	#jira UE-43661

Change 3389276 on 2017/04/11 by Marc.Audy

	Spelling fix and NULL to nullptr

Change 3389303 on 2017/04/11 by Mieszko.Zielinski

	Made sure AIController::Posses doesn't get called when compiling Pawn BP #UE4

	#jira UE-43873

Change 3390215 on 2017/04/12 by mason.seay

	Removed some tests, will need further review

Change 3390638 on 2017/04/12 by Mike.Beach

	Generalizing the omission of the CoerceProperty (in EmitTerm) - previously we were only omitting properties for our custom array lib. For wildcards, a coerce property should not be used as its type will not match.

	NOTE: There is a slight behavior change in UEdGraphSchema_K2::ConvertPropertyToPinType(), as it will return 'wildcard' for params marked as 'ArrayTypeDependentParams' (previously would have returned 'int').

	#jira UE-42747

Change 3390774 on 2017/04/12 by Ben.Zeigler

	#jira UE-43911 Fix several issues with saving a runtime asset registry containing redirectors that caused crashes in cook on the fly. Don't resolve redirectors on incoming links because it will make a circular link, and fix an issue where chained redirectors would break the for loop iteration and return a bad dependency
	Fix it so the asset registry written out at the beginning of CookOnTheFly uses the registry generator, otherwise it will include all of the stripped editor only tags

Change 3390778 on 2017/04/12 by Ben.Zeigler

	Fix UCookOnTheFlyServer::CollectFilesToCook to check for initial unsolicited packages up front. This is required in iterative mode because it may skip cooking all explicit packages and thus miss a new startup loaded package

Change 3390782 on 2017/04/12 by Ben.Zeigler

	Change RunProjectCommand to not imply -nomcp, and allow reading -clientcmdline to override setting the map parameter to 127.0.0.1 by default
	Fix RunProjectCommand to remove ios-specific checks to not pass weird platform parameters, and instead never pass them
	Fix PS4Platform to pass along command line when calling build cook run, args needs to be the last parameter so explicitly set -target=

Change 3390859 on 2017/04/12 by Mike.Beach

	T3D class fields now export with the class's fully qualified path name (to avoid abiguity). Since we can have multiple classes with the same name (Blueprints in different folders), we have to use the class's fully qualified object path.

	#jira UE-28048

Change 3390914 on 2017/04/12 by Lukasz.Furman

	fixed missing navlink component's transform in exported navigation data
	#jira  UE-43688

Change 3391122 on 2017/04/12 by Ben.Zeigler

	Add new PreloadPrimaryAssets call to AssetManager that stream the desired assets without modifying the official load/unload state. This is useful if you want to preload things in case the might be used in the future, and it also supports recursion
	Fix crash calling GetAssetDataForPath with null path

Change 3391494 on 2017/04/12 by Dan.Oconnor

	Fix bad references in deep object (widget) hierarchies

	#jira UE-43802

Change 3391529 on 2017/04/12 by Dan.Oconnor

	Fix log spam, accidently submitted

	#rnx

Change 3391756 on 2017/04/12 by Dan.Oconnor

	LinkExternalDependencies needs to be performed before we RefreshVariables

	#jira UE-43843

Change 3392542 on 2017/04/13 by Marc.Audy

	Ensure that initialized actors get cleaned up when removed from world even if that world hasn't begun play.
	#jira UE-43879

Change 3392746 on 2017/04/13 by Marc.Audy

	(4.16) When duplicating a blueprint node, correctly make the new node a sibling of the duplicated node, not a child of it (unless duplicating the root component).
	Also resets scale of a duplicated root component to 1 to avoid a squaring of the scale for that component.
	#jira UE-40218
	#jira UE-42086

Change 3393253 on 2017/04/13 by Dan.Oconnor

	Make sure calculated meta data is correctly set on functions generated by the compilation manager (SKEL_ class functions)

	#jira UE-43883

Change 3393509 on 2017/04/13 by Mike.Beach

	Removing hack'ish ResetLoaders() call that was causing undesired side-effects (resetting of a loaded package that other objects were relying on). This was originally intended to release file handles so separate editor processes could make updates and save the file (from CL 1712376). Using ResetLoaders() for this is bad though, as it has too many side effects. Instead we have to wait for GC to run. This also makes sure that GC should run as intended as the CookOnTheFly sever is idling.

	#jira UE-37284

Change 3394350 on 2017/04/14 by Michael.Noland

	Core: Making FDateTime and FTimespan actually reflected, so they get duplicated properly in CopyPropertiesForUnrelatedObjects, etc...
	#jira UE-39921

Change 3395985 on 2017/04/17 by Phillip.Kavan

	#jira UE-38280 - Fix invalid custom type selections on member fields in the User-Defined Structure Editor after a reload.

	Change summary:
	- Ensure that the 'SubCategoryObject' member in a UDS variable descriptor has been loaded when converting to an FEdGraphPinType.

Change 3396152 on 2017/04/17 by Marc.Audy

	TickableGameObjects that have IsTickableInEditor false should not tick in the editor
	#jira UE-40421

Change 3396279 on 2017/04/17 by Phillip.Kavan

	#jira UE-43968 - Fix failed validation of bitmask enum types when serializing bitmask literal nodes.

Change 3396299 on 2017/04/17 by Dan.Oconnor

	Fix resintancing issues exposed by running TM-Gameplay with -game. We cannot reinstance actors in levels on load because the scene is not created.

	#jira UE-43859

Change 3396712 on 2017/04/17 by Marc.Audy

	Call PostLoad on subobjects before copying for unrelated properties to avoid cases where an out of date object patched over in the linker has not been brought up to date
	#jira UE-38234

Change 3396718 on 2017/04/17 by Mike.Beach

	Adding a search bar to the components tree for Blueprints.

	#epicfriday
	#jira UE-17620

Change 3396999 on 2017/04/17 by Mike.Beach

	In generated code, call event '_Implementation' functions directly for interface functions being invoked on self (avoids a UHT runtime error).

	#jira UE-44018

Change 3397700 on 2017/04/18 by Marc.Audy

	UT struct BlueprintType fixups

Change 3397701 on 2017/04/18 by Marc.Audy

	Odin struct BlueprintType fixups

Change 3397703 on 2017/04/18 by Marc.Audy

	Ocean struct BlueprintType fixups

Change 3397704 on 2017/04/18 by Marc.Audy

	WEX struct BlueprintType fixups

Change 3397705 on 2017/04/18 by Marc.Audy

	Additional UT blueprint type struct fixups

Change 3397706 on 2017/04/18 by Marc.Audy

	Fortnite struct BlueprintType fixups

Change 3397708 on 2017/04/18 by Marc.Audy

	Fixup Engine BlueprintType markup of structs

Change 3397709 on 2017/04/18 by Marc.Audy

	Sample Game struct BlueprintType fixups

Change 3397711 on 2017/04/18 by Marc.Audy

	Mark AnimNodes as BlueprintType and BlueprintInternalUseOnly

Change 3397712 on 2017/04/18 by Marc.Audy

	Paragon struct BlueprintType fixups

Change 3397735 on 2017/04/18 by Marc.Audy

	Definition pieces of BlueprintInternalUseOnly to fix UHT errors with structs already marked to use it

Change 3397912 on 2017/04/18 by Mike.Beach

	Fix for CIS warnings about shadowed variables (fallout from CL 3396718).

Change 3398455 on 2017/04/18 by Marc.Audy

	Make less critical errors log an error rather than immediately throwing allowing multiple errors to be reported in the same compile

Change 3398491 on 2017/04/18 by Marc.Audy

	BPRW/BPRO in a non-BlueprintType is now a UHT error

Change 3398539 on 2017/04/18 by Marc.Audy

	Fixup live link struct markups

Change 3399412 on 2017/04/19 by Marc.Audy

	Fix Match3 blueprint type struct markups

Change 3399509 on 2017/04/19 by Phillip.Kavan

	#jira UE-38574 - Fix AnimBlueprint function graphs marked as 'const' to treat 'self' as read-only when compiling.

	Change summary:
	- Modified FKismetCompilerContext::ProcessOneFunctionGraph() to use the function graph schema rather than the compiler context schema for both the function context's schema as well as testing the function for 'const'-ness. For AnimBPs, the compiler context and the function graph context can differ, so we need to make sure we are using the right one when making queries for a specific function context during compilation.
	- Minor cleanup: changed the function context schema to be 'const' in order to be consistent with the function graph GetSchema() API's result. Added a few 'const' qualifiers where needed to match.
	- Added a new object version in order to avoid breaking compilation of existing AnimBP function graphs that may already be violating the 'const' rule (this is the same thing that was done when 'const' was first added to "normal" BP function graphs). Just as with normal function graphs in place before the addition, a warning will be generated for existing AnimBP function graphs if they violate 'const' correctness, and an error will be generated for all new ones.

Change 3399749 on 2017/04/19 by Mike.Beach

	Hiding the Nativized Blueprints plugin from the in-editor browser (prevent users from disabling it).

Change 3399774 on 2017/04/19 by Marc.Audy

	ConditionalPostLoad is already called on StaticMesh earlier in the function

	#rnx

Change 3400313 on 2017/04/19 by Mike.Beach

	Mirroring CL 3398673 from 4.16

	Now, with ICWYU, making sure that the coresponding header gets included first in nativized Blueprint files (else we get a UHT error). Had to fixup some ShooterGame specific files as a result (they had missing includes and forward declarations).

	#jira UE-44124

Change 3400328 on 2017/04/19 by Mike.Beach

	Missing file from mirrored change (CL 3400313 - mirroring CL 3398673 from 4.16)

	#jira UE-44124

Change 3400415 on 2017/04/19 by Chad.Garyet

	adding physx switch build to framework

Change 3400514 on 2017/04/19 by Mike.Beach

	Back out changelist 3400313 / 3400328 (mirrored from CL 3398673 in 4.16), as it was producing "include PCH first" errors. Likely, CL 3398673 was a fix for a 4.16 specific change, altering the expected include order. We'll have to wait for this one to be integrated back.

Change 3400552 on 2017/04/19 by Marc.Audy

	Undo the calling of post load prior to the CPFUO as dependent objects may not yet be loaded. Instead copy the need load flag to the new CDO subobject, similarly to how the top level CDO object copies its flags over.
	#jira UE-44150

Change 3400815 on 2017/04/19 by Marc.Audy

	Spelling fix (part of PR #3490)

	#rnx

Change 3400918 on 2017/04/19 by Marc.Audy

	Partial pull of PR #3490: Improved remapping game controls support (Contributed by projectgheist)
	This portion brings in the exposure of the bindings to blueprint
	#jira UE-44122

Change 3401550 on 2017/04/20 by Marc.Audy

	fix kitedemo blueprint type markup

	#rnx

Change 3401702 on 2017/04/20 by Mike.Beach

	Make it so plugins added to a project through the .uproject's 'AdditionalPluginDirectories' list get folded into the generated code project (for visual studio, etc.).

Change 3401720 on 2017/04/20 by Mike.Beach

	Add white and black lists for target type (game, client, server, etc.) to plugin module descriptors.

Change 3401725 on 2017/04/20 by Mike.Beach

	Whitelisting the nativized Blueprint plugin for only the targets it was built for (game, server, or client).

Change 3401800 on 2017/04/20 by Ben.Zeigler

	Add Algo::BinarySearch, LowerBound, and UpperBound. These are setup to allow binary searching a presorted array, and allow for specifying projection and sort predicates. Convert some engine code to use it
	Add TSortedMap, which is a map data structure that has the same API as TMap, but is backed by a sorted array. It uses half the memory and performance is faster below n=10
	Add FName::CompareIndexes so a SortedMap with FNames can be used without doing very slow string compares, and FNameSortIndexes predicate to sort by it
	Add code to Algo and Container tests. Split up container tests so the new ones aren't run in smoketest as they are a bit slow
	Add RemoveCurrent and SetToEnd to ArrayIterator

Change 3401849 on 2017/04/20 by Marc.Audy

	Partial pull of PR #3490: Improved remapping game controls support (Contributed by projectgheist)

	This portion brings bug fixes and improvements to InputKeySelector UMG widgets.
	#jira UE-44122

Change 3402088 on 2017/04/20 by Marc.Audy

	Focus the search box when expanding the map value type
	#jira UE-44211

Change 3402251 on 2017/04/20 by Ben.Zeigler

	Fix issue where SortedMap needs to be resorted after serialization, because the sorting may have changed from when it was saved out

Change 3402335 on 2017/04/20 by Ben.Zeigler

	Significant changes to FAssetData serialization and memory, cuts memory significantly but will break code that was using some of the internal API that was not properly hidden before
	Both Editor and Runtime cache now use the same FAssetRegistryVersion, which is now registered as a custom version
	Rename FAssetData and FAssetPackage operator<< to SerializeForCache to make it clear that it isn't safe to use for general serialization
	Remove GroupNames from FAssetData, it has not been useful since the UE4 package structure changed around 4.0
	Rename generic-sounding but not actually generic SharedMapView class to AssetDataTagMapSharedView to indicate what it is actually used for
	Change TagsAndValues to use a new array-backed TSortedMap as the base structure instead of a hash map. Also, it only allocates the map on demand, which saves significant memory at runtime as many packages have no tags
	Add bFilterAssetDataWithNoTags to [AssetRegistry] ini section, if set it will only save cooked asset data if it has tags, off by default but saves significant memory if your whitelist is set up properly
	Fix issue where asset registry tags updated by loading assets during cook were not being reflected in the cooked registry
	Add AssetRegistry::GetAllocatedSize and add to MemReport output

Change 3402457 on 2017/04/20 by Ben.Zeigler

	Enable asset registry iteration and stripping unused asset data in Fortnite. Registry iteration is already on in //Fortnite/Main, stripping is a new feature I want to test

Change 3402498 on 2017/04/20 by Ben.Zeigler

	CIS fix. Why did this compile locally?

Change 3402537 on 2017/04/20 by Ben.Zeigler

	Remove ensure for making AssetData for subobjects, the editor does this for thumbnail creation in some cases

Change 3402600 on 2017/04/20 by Ben.Zeigler

	Add bShouldGuessTypeAndNameInEditor to manager settings, can be set false for games where type cannot be safely implied and content must be resaved
	Fix up some bool setting code inside asset manager, and fix const correctness and for iterator issues
	AssetManager can now discover any BlueprintCore type when bHasBlueprintClasses=true
	Add AssetManager.DumpAssetRegistryInfo to output detailed asset registry usage stats
	Add Primary Name to asset audit window by default

Change 3403556 on 2017/04/21 by Marc.Audy

	Fix Orion input key selector override class

	#rnx

Change 3404090 on 2017/04/21 by mason.seay

	Applying Forcefeedback to test map

Change 3404093 on 2017/04/21 by mason.seay

	Changing text in level

Change 3404139 on 2017/04/21 by mason.seay

	Added Force Feedback test and made some tweaks.

Change 3404146 on 2017/04/21 by mason.seay

	Added source reference to Instanced Variable test

Change 3404154 on 2017/04/21 by mason.seay

	More minor tweaks

Change 3404155 on 2017/04/21 by Marc.Audy

	Remove auto

	#rnx

Change 3404188 on 2017/04/21 by Marc.Audy

	Fixed crash changing variable type when any type other than map
	#jira UE-44249

	#rnx

Change 3404463 on 2017/04/21 by Ben.Zeigler

	Fix asset data code to not ensure when loading an object with invalid exports, and instead print warning with name of package that needs to be resaved
	Resave a map that had a redirector from a DIFFERENT package saved in it's exports. I do not understand how this happened, but it appears to be related to the lightmap BuiltData transition when old maps are opened

Change 3404465 on 2017/04/21 by Ben.Zeigler

	Fix issue with trying to load editor-only asset classes in a cooked build
	Fix issues with renaming or changing template Ids of assets from the editor
	Always print the Duplicate Asset ID error, as if you have more than one the ensuremsg only goes off once

Change 3404481 on 2017/04/21 by Dan.Oconnor

	Remove unneeded walk up hierarchy - prevent stale entries in action database if we compile a BP but don't compile its children

Change 3404510 on 2017/04/21 by Phillip.Kavan

	#jira UE-35727 - Collapsed graphs containing a local variable node will no longer cause a compile error when the parent graph is renamed.

Change 3404590 on 2017/04/21 by Michael.Noland

	Editor: Fixed incorrect filtering of abstract/deprecated UDeveloperSettings and UContentBrowserFrontEndFilterExtension classes caused by a typo (HasAnyCastFlags versus HasAnyClassFlags)

Change 3404593 on 2017/04/21 by Marc.Audy

	Fixed another crash to do with input pin secondary combo box
	#jira UE-44269

	#rnx

Change 3404600 on 2017/04/21 by Michael.Noland

	Core: Allow UE_GC_TRACK_OBJ_AVAILABLE to be set externally
	#rnx

Change 3404602 on 2017/04/21 by Michael.Noland

	Engine: Switched from an include to a forward declaration of SWidget in UDeveloperSettings to keep it slim
	#rnx

Change 3404608 on 2017/04/21 by Michael.Noland

	Core: Marked TNumericLimits as constexpr so they can be used in static asserts

Change 3404659 on 2017/04/21 by Michael.Noland

	Engine: Adding includes back to two UDeveloperSettings subclasses

Change 3405289 on 2017/04/24 by Marc.Audy

	Remove auto

	#rnx

Change 3405446 on 2017/04/24 by Marc.Audy

	Fix Win32 unsigned compile issue

Change 3405512 on 2017/04/24 by Mike.Beach

	Piping through NativizationOptions to filename generation (so we're able to gen different files names per target: client vs. server).

Change 3406080 on 2017/04/24 by Ben.Zeigler

	Deprecate UEngine::OnPostEngineInit and move to FCoreDelegates, clean up comments for the initialization delegates
	Call OnPostEngineInit from commandlet initialization as well as normal execution. I thought about making a wrapper function, but the commandlet calls EditorInit directly so it wouldn't work
	Bind delegate to refresh the AssetRegistry native class hierarchy after engine init so it picks up game/plugin classes. Undo ini change that was required to hack around this

Change 3406381 on 2017/04/24 by Ben.Zeigler

	#jira UE-23768 Enable Run Physics With No Controller for montage test pawn. The montage pawn has no controller so wasn't correctly running physics when the root motion stopped. This flag needs to be set to allow it to correctly stop after the montage is over

Change 3406438 on 2017/04/24 by Ben.Zeigler

	Fix deprecation warning

Change 3406519 on 2017/04/24 by Phillip.Kavan

	#jira UE-43612 - Suppress array "Get" node fixup notifications on load when the BP Compilation Manager is enabled.

	Change summary:
	- Wrapped BPCM calls to FBlueprintEditorUtils::ReconstructAllNodes() and ReplaceDeprecatedNodes() duirng compile-on-load with bIsRegeneratingOnLoad = true. This matches the BP's state during compile-on-load when the BPCM is not enabled.

Change 3406565 on 2017/04/24 by Dan.Oconnor

	Make sure all interface functions are added to skeleton

	#jira UE-44152

Change 3407489 on 2017/04/25 by Ben.Zeigler

	#jira UE-44317 Fix game-only TickableGameObjects to correctly tick in PIE

Change 3407558 on 2017/04/25 by Ben.Zeigler

	Fix Fortnite cook warnings, issue had to do with the CDO being registered as a Primary Asset in conflict with the Class being registered
	Fix issue with renaming a BP primary asset not finding the old name

Change 3407701 on 2017/04/25 by Dan.Oconnor

	Remove unneeded null check, static analysis doen't like the inconsistency

Change 3407995 on 2017/04/25 by Marc.Audy

	Fixed maps and sets not working correctly with split pin.
	#jira UE-43857

Change 3408124 on 2017/04/25 by Ben.Zeigler

	#jira UE-39586 Change it so the blueprint String/Name/Object to Text node creates culture invariant text, and also have them show as an expanded node with a comment explaining this
	Fix Transform to actually return in the format specified in the comment, and fix comments on many text conversions

Change 3408134 on 2017/04/25 by Marc.Audy

	Graph pin container type now represented by an enumeration (EPinContainerType) rather than 3 "independent" booleans.
	FEdGraphPinType constructor, UEdGraphNode::CreatePin, and FKismetCompilerContext::SpawnInternalVariable that took 3 booleans deprecated and replaced with a version that takes EPinContainerType.
	UEdGraphNode::CreatePin parameters reorganized so that PinName is before ContainerType and bIsReference, which default to None and false respectively

Change 3408256 on 2017/04/25 by Michael.Noland

	Core: Changed UClass::ClassFlags to be of type EClassFlags for improved type safety

Change 3408282 on 2017/04/25 by Marc.Audy

	(4.16) Fix incorrect positioning of instance components after duplication
	#jira UE-44314

Change 3408404 on 2017/04/25 by Mike.Beach

	Adding and removing the nativized plugin to/from the project when we alter the packaging nativization setting (so it gets picked up by project generation).

Change 3408445 on 2017/04/25 by Marc.Audy

	Fix up missed deprecation cases

	#rnx

Change 3409354 on 2017/04/26 by Marc.Audy

	Fix Linux CIS failure

	#rnx

Change 3409487 on 2017/04/26 by Marc.Audy

	When dragging assets in to the SCS create them as siblings, not nested
	#jira UE-43041

Change 3409776 on 2017/04/26 by Ben.Zeigler

	#jira UE-44401 Fix issue with cooking a map containing a reparented component. In that case the child component may think it's not editor only, but it's archetype is editor only. This is not allowed in EDL, so now the child is marked as editor only as well

Change 3410168 on 2017/04/26 by Dan.Oconnor

	Avoid calling virtual functions in the middle of compile
	#jira UE-44243

Change 3410252 on 2017/04/26 by Lukasz.Furman

	adjusted WITH_GAMEPLAY_DEBUGGER checks after IWYU changes
	#ue4

Change 3410385 on 2017/04/26 by Marc.Audy

	ChildActorComponent SetClass no longer fails when setting at runtime.
	#jira UE-43356

Change 3410466 on 2017/04/26 by Michael.Noland

	Core: Ensuring EClassFlags is 32 bit in a different way (underlying type of the enum is coming out signed even though all members are unsigned, long term fix is probably to move it to an enum class)
	#rnx

Change 3410476 on 2017/04/26 by Michael.Noland

	Automation: Deleting some commented out methods
	#rnx

Change 3411070 on 2017/04/27 by Marc.Audy

	Properly complete deprecation of old attachment API

Change 3411338 on 2017/04/27 by mason.seay

	Map for Latent Action Tick Bug

Change 3411637 on 2017/04/27 by Ben.Zeigler

	Back out CL #3381532 as it was causing crashes when adding new variables to blueprints, as the transaction array was being recursively modified while it was being added to

Change 3412052 on 2017/04/27 by mason.seay

	Updated jump test map and pawn

Change 3412231 on 2017/04/27 by Ben.Zeigler

	Fix issue where running SearchAllAssets multiple times after mounting new paths would throw away the asset registry cache, which slowed down incremental cooking substantially because the cooker mounts the autosave folder
	Duplicate of CL #3411860

Change 3412233 on 2017/04/27 by Ben.Zeigler

	Made FStreamableHandle::GetLoadedCount much faster by taking advantage of existing progress counter
	Duplicate of CL #3411778

Change 3412235 on 2017/04/27 by Ben.Zeigler

	Add code to FStringAssetReferenceThreadContext and FStringAssetReferenceSerializationScope which allows setting package name and collect options for string asset references serialized via something other than linker load
	Make RedirectCollector threadsafe to avoid issues with async loading asset references
	Fix it so ProcessStringAssetReferencePackageList will remove entries from the string asset array like resolve did, and rename function to indicate that
	Fix it so string asset references created by asset labels do not automatically get cooked, and significantly improve the speed of labels with lots of assets
	Add code to cooker and asset manager to explicitly mark non-cookable assets as NeverVook, this stops labels from ending up in the build if set that way
	Added option to not recurse package dependency changes more than one level when hashes change. This ended up not being significantly faster in a realistic case so left disabled
	Duplicate of CL #3412080

Change 3412352 on 2017/04/27 by Marc.Audy

	Refix lighting getting wrong position when getting component instance data

Change 3412426 on 2017/04/27 by Marc.Audy

	Take first steps to making ComponentToWorld private and force use of accessor
	Make bWorldToComponentUpdated private
	Make ComponentToWorld and bWorldToComponentUpdated mutable
	Add a SetComponentToWorld function for the (likely ill-advised) places that were setting it directly.

Change 3412468 on 2017/04/27 by Marc.Audy

	Remove last remnants of deprecated (4.11) custom location system

Change 3413398 on 2017/04/28 by Marc.Audy

	Fix up missed deprecated attachment API  uses

Change 3413403 on 2017/04/28 by Marc.Audy

	Fix Orion compile error

	#rnx

Change 3413448 on 2017/04/28 by Marc.Audy

	Fix up kite demo component to world privataization warnings

	#rnx

Change 3413792 on 2017/04/28 by Ben.Zeigler

	Fix many bugs with blueprint pin default values, and add "Reset to Default Value" option to pin context menu
	Deprecate and rename SetPinDefaultValue because it actually sets the Autogenerated default. This was being called in bad places and destroying the stored autogenerated defaults
	#jira UE-40101 Fix expose on spawn pins to correctly update when the spawned object's defaults change
	#jira UE-21642 Fix struct pin default values to properly update when the struct is changed
	#jira UE-39418 Fix changed function/macro default values to properly update in already placed call nodes

Change 3413839 on 2017/04/28 by samuel.proctor

	Added some Blueprint focused tests for TM-Gameplay

Change 3414030 on 2017/04/28 by Ben.Zeigler

	Enable use of AssetPtr variables with Config, for native and blueprint
	This incorporates CL #3302487 but also enables for blueprint usage as that code is new to framework branch

Change 3414229 on 2017/04/28 by Marc.Audy

	Fixup virtuals not calling their Super
	Remove some autos

	#rnx

Change 3414451 on 2017/04/28 by Lukasz.Furman

	static analysis fix for gameplay debugger

Change 3414482 on 2017/04/28 by Ben.Zeigler

	Fix crash found where changing pin type on ConvertAsset accessed an array while deleting it

Change 3414609 on 2017/04/28 by Ben.Zeigler

	#jira UE-18146 Refresh graph when disconnecting a resolve asset id node

Change 3415852 on 2017/05/01 by Marc.Audy

	Remove unused code

	#rnx

Change 3415856 on 2017/05/01 by Marc.Audy

	auto removal

	#rnx

Change 3415858 on 2017/05/01 by Marc.Audy

	Fix function taking an input as reference when unneeded and causing (still unclear why it suddenly started showing up) error in cooking

	#rnx

Change 3415946 on 2017/05/01 by Marc.Audy

	Have K2Node_StructOperation skip the K2Node_Variable validation as it doesn't need a property (per CL# 1756451)

	#rnx

Change 3415988 on 2017/05/01 by Lukasz.Furman

	renamed WorldContext param in AI related static blueprint functions to remove load/cook warnings
	#jira UE-44544

Change 3416030 on 2017/05/01 by Ben.Zeigler

	Fix issue with WorldContext pins being broken by my pin value refactor, partial paths like "WorldContext" need to be stored as strings and not as broken object references.

Change 3416230 on 2017/05/01 by Marc.Audy

	Fix spelling error

	#rnx

Change 3416419 on 2017/05/01 by Phillip.Kavan

	#jira UE-44213 - Nativizing a Blueprint class with a non-nativized Blueprint class subobject dependency will no longer lead to a crash at load time.

	Change summary:
	- Modified the FFakeImportTableHelper ctor to inject subobject CDOs into the 'SerializeBeforeCreateCDODependencies' array. This in turn ensures that EDL will serialize those subobject CDOs (if necessary) before we create the subobject's nativized owner's CDO at load time.
	- Modified FEmitDefaultValueHelper::GenerateCustomDynamicClassInitialization() to emit MiscConvertedSubobject instantiations AFTER we emit the FillUsedAssetsInDynamicClass() call. This is now consistent with the code emitted for other subobjects (all of which assumes that the UsedAssets array has been initialized).
	- Modified FFindAssetsToInclude::HandleObjectReference() to add UField owner CDOs in addition to the owner class to the asset dependency list. This ensures that owner CDOs will be emitted alongside the class to both the nativized asset dependency table as well as to the fake import table associated with the UDynamicClass linker for the nativized BP asset.

Change 3416425 on 2017/05/01 by Phillip.Kavan

	#jira UE-44219 - Nativizing a Blueprint class with a nativized DOBP class dependency will no longer lead to a compile error at cook/nativization time.

	- Modified the FGatherConvertedClassDependencies ctor to properly handle DOBPs in exclusive mode that have been explicitly enabled for nativization. Previously, this code wasn't taking that possibility into account, and as a result could lead to a missing header file in a dependent nativized class body's include set.
	- Modified FGatherConvertedClassDependencies::GetFirstNativeOrConvertedClass() to remove the 'bExcludeBPDataOnly' parameter, as it was primarily just being used for a redundant exclusion check when called from the FGatherConvertedClassDependencies ctor. That call site has now been modified to start searching from the super class instead. Additionally, any DOBPs will already fail the preceding WillClassBeConverted() check if they have not been explicitly enabled for nativization in exclusive mode, and will always fail if nativizing in inclusive mode. The extra check was breaking the explicitly-enabled case, so it was removed to allow explicitly-enabled DOBPs to pass.

	Notes:
	- Allowing for explicitly-enabled DOBPs in exclusive mode may be removed in a future change, but since it is currently supported, the changes noted above will at least ensure that the generated code will compile properly for now.

Change 3416570 on 2017/05/01 by mason.seay

	Added UMG test to map.  Tweaked force feedback test

Change 3416580 on 2017/05/01 by mason.seay

	Resubmitting sub levels

Change 3416597 on 2017/05/01 by Dan.Oconnor

	Compilation manager iteration, adds machinery for individual blueprint compilation, adds comments, cleans up duplicated code

Change 3416636 on 2017/05/01 by Phillip.Kavan

	#jira UE-44505 - Potential fix for a low-repro crash tied to the Blueprint graph context menu.

	Change summary:
	- Switched FBlueprintActionInfo::ActionOwner to be a weak object reference.

Change 3416960 on 2017/05/01 by Dan.Oconnor

	Use compilation manager when clicking the compile button, PIE'ing, etc

Change 3417207 on 2017/05/01 by Ben.Zeigler

	Fix issue with None strings causing default value parsing failures
	Add SetPinDefaultValueAtConstruction needed by some other changes

Change 3417519 on 2017/05/01 by Ben.Zeigler

	Fix BP compile errors caused by local variables with invalid default values. There's no reason to set autogenerated here because the nodes are transient and invisible in the UI.
	There is still a problem here, local variables are not getting their default values validated when type is changed, so you end up with an integer that has the default value of a struct.

Change 3418659 on 2017/05/02 by Ben.Zeigler

	#jira UE-44534 Fix it so animation node pins get properly created autogenerated default values that are based on the node struct defaults. This fixes issues when they are reset to other defaults
	#jira UE-44532 Fix it so connecting an animation asset pin on a node player resets the pin value to the autogenerated default instead of the cached asset. This was causing old unused assets to get unnecessarily cooked
	Fix it so any animation node with an exposed pin that is an object property will reset that object propery when the pin is exposed. This fixes UE-31015 in a generic way
	Change the OptionalPinManager to take a Defaults address as well as a current address, to allow setting autogenerated defaults properly
	Remove Import/ExportKismetDefaultValueToProperty as they were redundant with PropertyValueFromString and were using the wrong pin setting functions, replaced with PropertyValueFromString_Direct and calling the schema pin set functions
	I need to write some backward compatibility code to fix existing nodes, I'll do that in a later checkin

Change 3418700 on 2017/05/02 by Ben.Zeigler

	Actually fix None object paths for real this time. I did not test sufficiently before

Change 3418811 on 2017/05/02 by Ben.Zeigler

	Fix existing animation blueprint nodes with dead asset references duplicated by pins. This code can be applied independent of the other change to fix specific games

Change 3419165 on 2017/05/02 by Dan.Oconnor

	Add misc. functionality from FKismetEditorUtilities::CompileBlueprint

Change 3419202 on 2017/05/02 by Marc.Audy

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3417825

	#rnx

Change 3419236 on 2017/05/02 by mason.seay

	Removed OnPressed event from Widget BP

Change 3419314 on 2017/05/02 by Marc.Audy

	Fix bad auto-resolve

	#rnx

Change 3419524 on 2017/05/02 by Marc.Audy

	PR #3528: Improved Input BP library node display names (Contributed by projectgheist)
	#jira UE-44587
	#rn Improved Input BP library node display names

Change 3419570 on 2017/05/02 by Zak.Middleton

	#ue4 - Fix typo in TFunctionRef comment/example.

Change 3419709 on 2017/05/02 by Dan.Oconnor

	Fix missing category metadata on SkeletonGeneratedClass when using compilation manager

Change 3419756 on 2017/05/02 by Dan.Oconnor

	Remove unintentional verbosity increase

Change 3420875 on 2017/05/03 by Marc.Audy

	Make IsExecPin static
	Minor optimization to IsMetaPin

	#rnx

Change 3420981 on 2017/05/03 by Marc.Audy

	Change tagging temporarily until other changes are done so that we don't have warnings in the meantime

	#rnx

Change 3421367 on 2017/05/03 by Marc.Audy

	Manually introduce changes from CL# 3398673 in 4.16 that failed to make it to Dev-Framework as a result of the integration submitted as CL# 3401725.

	#rnx

Change 3421685 on 2017/05/03 by Ben.Zeigler

	#jira UE-23001 Convert literal Asset ID/Class ID pins to store path as string instead of as hard object reference. Old pins are fixed on load, after resaving the hard references will go away
	Refactor the way that FStringAssetReference and FAssetPtr are serialized, it now does the various fixups in FStringAssetReference::SerializePath, which is called from archivers
	Change it so the asset registry reads in a list of all scanned redirectors and adds them to GRedirectCollector, this means that saving a string asset reference will automatically fix it up to point to the redirector destination
	Change the default behavior of FAssetPtr serialize on ArchiveUObject to match what most of it's children want, and remove several special case hacks. It now serializes as asset reference when saving/loading, and as object for other cases
	Deprecate StringAssetReferenceLoaded/StringAssetReferenceSaving delegates, replace with PreSavePath and PostLoadPath on FStringAssetReference
	Make AssetLongPathname private on FStringAssetReference, it was deprecated in 4.9

Change 3421728 on 2017/05/03 by Phillip.Kavan

	Mirror CL 3408285 from //UE4/Release-4.16.

	#jira UE-44124

	#rnx

Change 3422370 on 2017/05/03 by Dan.Oconnor

	Mirror 3422359

	Implement UBlueprintGeneratedClass::NeedsLoadForEditorGame to match UBlueprint, also tag a class's CDO as NeedsLoadForEditorGame.

	This prevents us from failing to load a UBlueprint's GeneratedClass when running the editor with -server.

	#jira UE-44659

Change 3423192 on 2017/05/04 by Ben.Zeigler

	CIS Fix

Change 3423305 on 2017/05/04 by Ben.Zeigler

	Fix "Missing opening parenthesis" warnings for Vector and Rotator the same way they were fixed for Transform

Change 3423358 on 2017/05/04 by Marc.Audy

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3422809

	#rnx

Change 3423766 on 2017/05/04 by Ben.Zeigler

	#jira UE-44680 Delete some corrupted redirectors that are no longer in use

Change 3423804 on 2017/05/04 by Dan.Oconnor

	Honor SaveIntermediateCompilerResults when using compilation manager

Change 3424010 on 2017/05/04 by Marc.Audy

	Validate that switch string cases are unique

Change 3424011 on 2017/05/04 by Marc.Audy

	Re-fix switch node default pin not appearing as an exec output
	Remove unused boolean

Change 3424071 on 2017/05/04 by Ben.Zeigler

	Delete FixupRedirects commandlet, replace with -FixupRedirects/FixupRedirectors option on ResavePackages. This new method is much faster than the old commandlet as it uses the asset registry vs loading all packages, fixing up all redirectors in Fortnite only took about an hour vs 12+ hours the old way
	Removed some hacky bits in Core that only existed to support FixupRedirects
	Change it so the AssetRegistry listens to DirectoryWatcher callbacks in commandlets now that commandlets use the asset registry properly. This won't do anything unless you tick directory watcher the way that ResavePackages does

Change 3424313 on 2017/05/04 by Dan.Oconnor

	Address missing property flags on SkeletonGeneratedClass when using compilation manager
	#jira UE-44705

Change 3424325 on 2017/05/04 by Phillip.Kavan

	#jira UE-44222 - Move nativized UDS implementation details into its own .cpp file in order to avoid circular dependencies.

	Change summary:
	- Modified IKismetCompilerInterface::GenerateCppCodeForStruct() to include an output parameter for CPP source and modified FKismet2CompilerModule to match the updated API.
	- Modified IBlueprintCompilerCppBackend::GenerateCodeFromStruct() to include an output parameter for CPP source and modified FBlueprintCompilerCppBackendBase to match the updated API.
	- Modified FBlueprintNativeCodeGenUtils::GenerateCppCode() to adjust the call to GenerateCppCodeForStruct() to include CPP source output.
	- Modified FGatherConvertedClassDependencies::DependenciesForHeader() to switch UDS property dependencies to be forward declarations rather than includes (for default value init code).
	- Modified FEmitDefaultValueHelper::GenerateGetDefaultValue() to emit implementation details to the 'Body' container, and adjust the header content to be a declaration only.
	- Modified FIncludeHeaderHelper::EmitInner() to exclude a potentially-redundant line for the module's .h file, for the case when the caller has included the base filename in the 'AlreadyIncluded' set.
	- Modified FEmitterLocalContext::FindGloballyMappedObject() to limit the 'TryUsedAssetsList' path to UClass conversions only (since that requires a UDynamicClass target to work).
	- Modified FGatherConvertedClassDependencies::DependenciesForHeader() to only include BPGC fields if they are also being converted. Eliminates an issue with missing header files in generated code.

Change 3424359 on 2017/05/04 by Ben.Zeigler

	Fix issue where StreamableManager would break when requesting an async load that failed the first time. Because our game supports downloading assets during gameplay it's not safe to assume it will never load again.
	Port of CL #3424159

Change 3424367 on 2017/05/04 by Ben.Zeigler

	Fix some asset manager warnings to not go off in invalid cases

Change 3425270 on 2017/05/05 by Marc.Audy

	Pack booleans/enums in UEdGraphNode and FOptionalPinFromProperty

	#rnx

Change 3425696 on 2017/05/05 by Ben.Zeigler

	#jira UE-44672 Fix it so select node option pins get populated with default values properly
	#jira UE-43927 Fix it so select node opion pin type is correctly maintained accross node recreation, as opposed to deriving from the attached pins
	#jira UE-44675 Fix it to correctly refresh select node when switching from bool to integer index

Change 3425833 on 2017/05/05 by Ben.Zeigler

	#jira UE-31749 Fix it so Undo works properly when modifying a local variable
	#jira UE-44736 Fix it so changing the type of a local variable correctly resets the default value

Change 3425890 on 2017/05/05 by Marc.Audy

	Fix Copy/Paste of child actor components losing the template
	#jira UE-44566

Change 3425947 on 2017/05/05 by Ben.Zeigler

	This was meant to be part of last checkin

Change 3425959 on 2017/05/05 by Ben.Zeigler

	#jira UE-44692 Fix it so only the sequentially last node can be removed from a Switch On Int, and for Switch On Name stop it from removing an exec pin if it's the only non-default one

Change 3425979 on 2017/05/05 by Dan.Oconnor

	PVS fix

Change 3425985 on 2017/05/05 by Phillip.Kavan

	Fix an uninitialized variable.

	#rnx

Change 3426043 on 2017/05/05 by Ben.Zeigler

	#jira UE-35583 Correctly refresh array node UI when connecting pins that change it away from wildcard

Change 3426174 on 2017/05/05 by Zak.Middleton

	#ue4 - 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.

Change 3426621 on 2017/05/05 by Phillip.Kavan

	#jira UE-44708 - Fix an issue that re-introduced component data loss in a non-nativized child Blueprint class with a nativized parent Blueprint class.

	Change summary:
	- Removed an unnecessary additional check I had for the presence of "-NativizeAssets" switch on the command line in UBlueprint::BeginCacheForCookedPlatformData(). This check was failing because the usage was recently changed to include an optional value. It was not needed anyway so I just removed it.

	#rnx

Change 3426906 on 2017/05/05 by Ben.Zeigler

	#jira UE-11189 Fix function/macro input default values to show as a pin customization instead of as a broken text box that doesn't work correctly for most types. This fixes enums and provide validation for other types
	Types that don't have a customization (most structs) will now show any more, they did not work before either
	#jira UE-21754 Hide function default values if pass by reference is set
	Fix it so changing input parameter will also reset default value, to avoid having the wrong type value set and to work the same as local variables

Change 3426941 on 2017/05/05 by Dan.Oconnor

	Fix determinstic cooking of LoadAssetClass nodes in macros

Change 3427021 on 2017/05/05 by Dan.Oconnor

	Build fix, make initialization order in source match artifact

	#rnx

Change 3427135 on 2017/05/05 by Phillip.Kavan

	#jira UE-44702 - Restore code-based interface classes to Blueprint editor UI.

	Change summary:
	- Partially backed out CL# 3348513 to return to previous behavior for 4.16. The UI is no longer filtering on the __is_abstract() type trait for interface classes.
	- Modified FNativeClassHeaderGenerator::ExportClassFromSourceFileInner() to emit the _getUObject() declaration for native interface types as a default implementation that returns NULL rather than as a pure virtual declaration.

	#rnx

Change 3427144 on 2017/05/06 by Marc.Audy

	Fix init order

	#rnx

Change 3427146 on 2017/05/06 by Marc.Audy

	remove stray semicolon

	#rnx

Change 3427242 on 2017/05/06 by Phillip.Kavan

	#jira UE-44744 - Fix a regression in which a UMG Widget Blueprint property not explicitly marked as a variable would cause Blueprint nativization to fail at package time.

	Change summary:
	- Modified FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() to only add 'Category' metadata when we set the 'CPF_BlueprintVisible' flag on the UProperty, which in is now tied to whether or not the property has been explcitly marked as a variable. This avoids a UHT warning when compiling the nativized codegen that would cause packaging to fail.

	#rnx

Change 3427720 on 2017/05/08 by Dan.Oconnor

	Backing out 3419202

	#rnx

Change 3427725 on 2017/05/08 by Dan.Oconnor

	SA fix

	#rnx

Change 3427734 on 2017/05/08 by Dan.Oconnor

	More exhaustive GEditor null checks, to appease SA

	#rnx

Change 3427882 on 2017/05/08 by Marc.Audy

	Properly order all booleans in intialization

	#rnx

Change 3428049 on 2017/05/08 by Marc.Audy

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3427804

	#rnx

Change 3428523 on 2017/05/08 by Ben.Zeigler

	#jira UE-44781 Refresh function input UI when blueprint graph refreshes, needed as pins may have gone away

Change 3428563 on 2017/05/08 by Ben.Zeigler

	#jira UE-44783 If setting a hard reference pin type from a string, load the referenced object.

Change 3428595 on 2017/05/08 by Dan.Oconnor

	Avoid node reconstruction when we're compiling a blueprint with no linker (e.g., a duplicated blueprint)

	#jira UE-44777

Change 3428599 on 2017/05/08 by Ben.Zeigler

	#jira UE-44789 Fix string asset renamer to not mark IsPersistent becuase that crashes in lightmap code, change it so the path fixup doesn't require the persistent flag

Change 3428609 on 2017/05/08 by Dan.Oconnor

	Improved fix for UE-44777

	#jira UE-44777
	#rnx

Change 3429176 on 2017/05/08 by Phillip.Kavan

	#jira UE-44755 - Fix nativization build errors when packaging a game project that is not IWYU-compliant for a build target that disables PCH files.

	- Mirrored from //UE4/Release-4.16 (CL# 3429030).

	#rnx

Change 3429198 on 2017/05/08 by Phillip.Kavan

	CIS fix.

	#rnx

Change 3429583 on 2017/05/08 by Ben.Zeigler

	Fix SGraphPinClass to work properly after my changes to allow unloaded assets. For Class pins we need to store separate Runtime and Editor asset data objects, as one has _C and refers to the class, and the other doesn't and refers to the blueprint. The content browser wants the editor path, the pin defaults want the runtime path.
	Change default value widgets to look more like properties widgets by forcing them to act as highlighted and disabling black background

Change 3429640 on 2017/05/08 by Marc.Audy

	Fix issues with select nodes in macros connected to wildcard pins.
	#jira UE-44799

	#rnx

Change 3429890 on 2017/05/08 by Ben.Zeigler

	Fix function/macro defaults to properly propagate when changed using the new edit UI
	Refactor some code out of the details customization into the k2 schema
	Disable defaults UI for object/class/interface hard references as it is disabled in KismetCompiler

Change 3429947 on 2017/05/08 by Michael.Noland

	Core: Backing out CL# 3394352 (marking FDateTime and FTimespan nonexport member Tick with UPROPERTY()), which will re-break UE-39921 but fix UE-44418
	There appears to be a more serious underlying issue with how the CDO is instanced which needs to be addressed
	#jira UE-44418

	#reimplementing 3411681 from Release 4.16

Change 3429987 on 2017/05/08 by Ben.Zeigler

	#jira UE-44798 Do a better job of validating object paths saved as default values, due to an old bug with local variables some object paths are saved as struct exportext
	At load time clear invalid default value for local variables
	Add IsValidObjectPath to FPackageName that validates the passed in path would be valid to load with LoadObject

Change 3430392 on 2017/05/09 by Marc.Audy

	Fix SA CIS error

	#rnx

Change 3430747 on 2017/05/09 by Ben.Zeigler

	#jira UE-44836 Don't reconstruct node during callback for param value changing, this can happen during a reconstruction and recursive reconstruction is unsafe
	Don't call ModifyUserDefinedPinDefaultValue unless the default value has actually changed

Change 3431027 on 2017/05/09 by Marc.Audy

	Fix BPRW mark up causing Ocean warnings

	#rnx

Change 3431353 on 2017/05/09 by Marc.Audy

	Fix UHT error due to exposing FJsonObjectWrapper to blueprints

	#rnx

[CL 3431398 by Marc Audy in Main branch]
2017-05-09 17:15:32 -04:00
Marc Audy
03d64a49e8 Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3293188)
#rb none
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3203880 on 2016/11/18 by Ori.Cohen

	Copying //UE4/Dev-Physics-Upgrade to Dev-Framework (//UE4/Dev-Framework)

Change 3207429 on 2016/11/22 by Marc.Audy

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3207285

Change 3252627 on 2017/01/10 by Lukasz.Furman

	removed duplicated entries from visual logger shape rendering
	#ue4

Change 3252675 on 2017/01/10 by Ori.Cohen

	Add support for tagged memory regions (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework))

Change 3252686 on 2017/01/10 by Ori.Cohen

	Refactor BodySetup to make it easier to reuse shape creation (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework))

Change 3252833 on 2017/01/10 by Ori.Cohen

	Refactor constraint so that it can be used for external solvers. (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework))

Change 3252887 on 2017/01/10 by Dan.Reynolds

	Increased modes to include:
	Harmonic minor
	Melodic minor (going up)
	Pentatonic (Major)
	Pentatonic (minor)
	Whole Tone
	Diminished (WH)
	and Blues

Change 3252895 on 2017/01/10 by Aaron.McLeran

	update to music utilities.

Change 3253060 on 2017/01/10 by Aaron.McLeran

	Updates to synthesis plugin and some new features to DSP objects

Change 3253061 on 2017/01/10 by Aaron.McLeran

	Updates to music maps

Change 3253078 on 2017/01/10 by Aaron.McLeran

	Removing pragma optimization code accidentally checked in

Change 3253110 on 2017/01/10 by Ori.Cohen

	First iteration of immediate mode ragdoll node (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework))

Change 3253315 on 2017/01/10 by Aaron.McLeran

	Fixing a few bugs in DSP objects

	- Added a new types file EpicSynth1 and EpicSynth1 component can share enums

Change 3253577 on 2017/01/11 by Aaron.McLeran

	Checking in updates to assets for music -- celestial manager for rotating objects like planets, new ambient map

Change 3254052 on 2017/01/11 by Ori.Cohen

	Fix build.

Change 3254059 on 2017/01/11 by Ori.Cohen

	Turn off html5 trying to build apex.

Change 3254095 on 2017/01/11 by Ori.Cohen

	Fix build

Change 3254200 on 2017/01/11 by Jon.Nabozny

	Make vectorized FTransform Accumulate (with blend) and AccumulateWithAdditive (with blend) consistent with the non-vectorized version and comments.

	#JIRA UE-40469

Change 3254334 on 2017/01/11 by Marc.Audy

	Put in missing virtual

Change 3254397 on 2017/01/11 by dan.reynolds

	Updates to OtonOkeMap

Change 3254410 on 2017/01/11 by Marc.Audy

	Cleanup autos

Change 3254420 on 2017/01/11 by Marc.Audy

	PR #3110: Add missing IsInAudioThread check (Contributed by projectgheist)

	Modified somewhat, but based on what PR indicated as a problem.

	#jira UE-40369

Change 3254423 on 2017/01/11 by Marc.Audy

	Optimize GetDefaultSubobjectByName and GetDefaultSubobjects
	Remove autos

Change 3254826 on 2017/01/11 by Aaron.McLeran

	Bringing optimizations to dev-framework

Change 3254831 on 2017/01/11 by dan.reynolds

	Modified MidiSynthTestBP to use Program Change events to pull a Preset from a Preset Bank--added a Data Blueprint Object ES1Bank_Default (containing Preset arrays) with children classes for different classifications of Presets.

Change 3254833 on 2017/01/11 by dan.reynolds

	Updating MidiSynthTestBP's default SynthPreset pan value.

Change 3254851 on 2017/01/11 by dan.reynolds

	Updating ES1Bank_Bass

	Updating OtonOkeMap

Change 3254854 on 2017/01/11 by Aaron.McLeran

	Some fixups for pan modulation

Change 3255682 on 2017/01/12 by aaron.mcleran

	Turning the bass down a bit on OtonOkeMap

Change 3255721 on 2017/01/12 by Marc.Audy

	Fix spelling error

Change 3255790 on 2017/01/12 by Marc.Audy

	Copying //UE4/Dev-Physics-Upgrade to Dev-Framework (//UE4/Dev-Framework)

Change 3256263 on 2017/01/12 by Ori.Cohen

	Refactor immediate mode api to take PxD6Joint and PxRigidActor instead.

Change 3256288 on 2017/01/12 by Ori.Cohen

	Undo constraint refactor as we found a way around it and it made the code much harder to read/debug

Change 3256360 on 2017/01/12 by Ori.Cohen

	Make sure physx actors passed into immediate mode are done so with proper locks (can probably improve this in the case where the actor is not even in the scene)

Change 3256846 on 2017/01/13 by Marc.Audy

	Deprecate FBox/FBox2D int32 constructor because it makes no sense if you pass in a non 0 value. Use ForceInit instead.

Change 3256954 on 2017/01/13 by Marc.Audy

	Fix missed fixup of deprecated constructor use

Change 3257167 on 2017/01/13 by Jon.Nabozny

	Fix check in FBodyInstance::SetCollisionEnabled.
	Create convenience methods for HasPhysics and HasQuery.

	#jira UE-39633

Change 3257181 on 2017/01/13 by Zak.Parrish

	Adding input map and some testing content to Xenakis

Change 3257183 on 2017/01/13 by Mieszko.Zielinski

	Implemented an improved navigation projection BP function that retrieves both projected locaiton as well as a boolean indicating if the projection succeeded #UE4

	Also, did similar changes to GetRandomReachablePointInRadius and GetRandomPointInNavigableRadius

	#jira UE-40368

Change 3257211 on 2017/01/13 by Jon.Nabozny

	Fix CIS issue caused by 3257167.

Change 3257220 on 2017/01/13 by Marc.Audy

	Additional FBox constructor deprecation fixups

Change 3257236 on 2017/01/13 by zak.parrish

	Fixed error on Xenakis input pawn

Change 3257242 on 2017/01/13 by zak.parrish

	Update to InputListener

Change 3257273 on 2017/01/13 by Marc.Audy

	No reason to pass simple types by reference

Change 3257418 on 2017/01/13 by Ori.Cohen

	Attempt to turn android physx libs back to static libs.

Change 3257445 on 2017/01/13 by Ori.Cohen

	Turn android libs back to OBJ and removed unreal side linking as it seems we are now just merging into a single physx lib

Change 3257903 on 2017/01/14 by Aaron.McLeran

	Additions to synth module and updates to dsp objects

	- Adding ability to create arbitrary modular patches from modulating sources to modulation destinations
	- DSP objects define their default depths but patches can override
	- Creating new SynthesisEditor module for synthesis plugin so we can create synthesis preset assets
	- Adding a preset bank type so we can store a bank of presets (aka factory presets)

Change 3258179 on 2017/01/15 by Seth.Weedin

	Duplicating input test map for some FX work

Change 3258181 on 2017/01/15 by Seth.Weedin

	Modify skybox in test map to be dark and spooky

Change 3258183 on 2017/01/15 by aaron.johnson

	substituted classes, changed wind speed and adjusted level lighting

Change 3258190 on 2017/01/15 by aaron.johnson

	substituted triplet pawn and motion controller classes, enabled grabbing animations

Change 3258191 on 2017/01/15 by Aaron.McLeran

	Getting source effects working for GDC demo

	- Added new synthesis editor module to create instances of user-created source effects
	- Added code to do source effects
	- Modified old design to a newer, more simpler design for calling into client code to set parameters. No longer using the complex struct reflection design and instead just pass in the uobject preset the user created. They'll then cast it to the type that has the actual settings.
	- Tweaks and fixes to existing dsp objects to get source effects working
	- Modified existing engine code to allow for playing out source effect tails
	- Only supporting mono and stereo assets for source effect processing. Multi-channel effect processing is overly complex for this feature though we may extend the capabilities in the future.
	- Fixed issue of pitching with stereo delay effect on setting first interpolated param
	- Moving synth/dsp stuff in synthesis plugins into appropriate public/private folders in plugin/module
	- Deleting some cruft files no longer needed

Change 3258201 on 2017/01/15 by Seth.Weedin

	C++ and BP classes for managing grid cells. Initial grid mapping tests. #rb none

Change 3258206 on 2017/01/15 by aaron.johnson

	map push, triplets interface created, debug widget placed in level

Change 3258222 on 2017/01/15 by Aaron.McLeran

	Fixing crash when there's a null entry in the source effect chain

	Fixed some zippering introduced by applying volume twice.

Change 3258225 on 2017/01/15 by aaron.johnson

	Interface changes, pawn output values wip

Change 3258228 on 2017/01/15 by aaron.johnson

	Pawn should be outputting all correct values for Tripletsinterface

Change 3258242 on 2017/01/15 by Stanley.Hayes

	Edge lights and Spherical Density Materials

Change 3258251 on 2017/01/16 by Seth.Weedin

	More progress on grid FX. Add curve strength modifiers, begin hooking up interaction. #rb none

Change 3258284 on 2017/01/16 by Aaron.McLeran

	Fixing CIS build error

	Surprised that MSVC allows that...

Change 3258525 on 2017/01/16 by Mieszko.Zielinski

	Made UGameplayTask::ResourceOverlapPolicy configurable via ini files #UE4

Change 3258537 on 2017/01/16 by Lukasz.Furman

	fixed duplicated & undo operations not updating navigation area in nav link proxy and nav link component
	#ue4

Change 3258595 on 2017/01/16 by Marc.Audy

	Fix static analysis warning

Change 3259364 on 2017/01/16 by Mieszko.Zielinski

	BTTask_RotateToFaceBBEntry comment spelling fix #UE4

	#jira UE-40669

Change 3259683 on 2017/01/16 by dan.reynolds

	Updated Preset Bank System implemented in MidiSynthTestBP and 4 Preset Banks have been started

Change 3260244 on 2017/01/17 by Lina.Halper

	#anim

	- optimize layer blend node to not create mask weights in run-time but in compile time.

	#code review: Martin.Wilson

Change 3260617 on 2017/01/17 by Ori.Cohen

	Immediate mode spawns its own actors.

Change 3260701 on 2017/01/17 by Ori.Cohen

	Don't bother blending physics with animation when physics is QueryOnly

Change 3260796 on 2017/01/17 by Ori.Cohen

	EndPhysics tick will no longer be scheduled if QueryOnly is used on a ragdoll.

Change 3261207 on 2017/01/17 by Ori.Cohen

	First iteration of contact enabling/disabling for immediate mode.

Change 3262010 on 2017/01/18 by Marc.Audy

	Remove some autos

Change 3262525 on 2017/01/18 by Lina.Halper

	Fix crash with required bones index not using property indexing

	#jira: UE-40786

Change 3263658 on 2017/01/19 by Martin.Wilson

	Add AnimTechDemo to dev-framework (base third person + feng mao)

Change 3263684 on 2017/01/19 by Lina.Halper

	#anim : layer node - fix allocation change I made by mistake

Change 3264523 on 2017/01/19 by Ori.Cohen

	Immediate mode can now add static geometry it finds in the world. Also improve contact gen by caching iteration order

Change 3264701 on 2017/01/19 by Ori.Cohen

	Make it so that immediate mode ragdolls collide with the ground in persona.This is a bit of an editor only hack which allows immediate mode to find non-static actors

Change 3264980 on 2017/01/19 by Ori.Cohen

	Make sure physics asset collision disabled works in immediate mode.

Change 3265011 on 2017/01/19 by Ori.Cohen

	Added the ability to override physics asset for immediate mode

Change 3265030 on 2017/01/19 by Ori.Cohen

	Added override gravity for immediate mode.

Change 3265650 on 2017/01/20 by Benn.Gallagher

	NvCloth Source

Change 3265652 on 2017/01/20 by Benn.Gallagher

	NvCloth Lib
	#rnx

Change 3265653 on 2017/01/20 by Benn.Gallagher

	NvCloth Bin
	#rnx

Change 3266195 on 2017/01/20 by Danny.Bouimad

	Initial ClothTest Assets for NCloth Before and after comparison TM-MultiClothTest (Under Maps>Framework>Cloth)

Change 3266377 on 2017/01/20 by Marc.Audy

	Ensure that OrphanedDataOnly and TrashClass blueprint generated classes are correctly considered a blueprint class for disregard for GC purposes.

Change 3267873 on 2017/01/23 by Jon.Nabozny

	Fix SceneProxy shadowing in UGeometryCacheComponent.

Change 3268025 on 2017/01/23 by Benn.Gallagher

	IWYU change, platform PCH generation seemed to hide this one.

Change 3268026 on 2017/01/23 by Benn.Gallagher

	Fixed LOCTEXT_NAMESPACE being inconsistently scoped in an #if block
	#rnx

Change 3268630 on 2017/01/23 by Zak.Parrish

	Updating to add MIGS shooter content, as well as audio interaction Blueprints

Change 3268663 on 2017/01/23 by Ori.Cohen

	Ragdoll animnode uses raw physics asset pointer to ensure it makes a hard reference.

Change 3268811 on 2017/01/23 by Ori.Cohen

	Added component space sim for immediate mode

Change 3269369 on 2017/01/24 by Benn.Gallagher

	Copying //Tasks/UE4/Dev-UEFW-11-NewClothingPipeline to Dev-Framework (//UE4/Dev-Framework)

	Replaced clothing with new simulation framework

Change 3269417 on 2017/01/24 by danny.bouimad

	Minor Update to cloth map for test

Change 3269420 on 2017/01/24 by Benn.Gallagher

	Removed APEX simulation from clothing framework (used in testing, not fully complete)

Change 3269421 on 2017/01/24 by danny.bouimad

	Small tweaks

Change 3269515 on 2017/01/24 by Lukasz.Furman

	enabled gameplay debugger's OnSelectionChanged event support for both PIE and SIE modes
	fixed GameplayAbility debugger's category not using IAbilitySystemInterface
	#ue4

Change 3269595 on 2017/01/24 by mason.seay

	Break apart physics asset for crash bug

Change 3269819 on 2017/01/24 by Ori.Cohen

	Make the possibly kinematic actor the first actor in the immediate mode joint. This is consistent with physx vanilla solver.

Change 3270364 on 2017/01/24 by Josh.Stoddard

	upgrade to the latest version of v-HACD:
	https://github.com/kmammou/v-hacd/tree/master/src/VHACD_Lib
	commit: 7a09f9d
	NOTE: only updated windows binaries
	  mac and linux still using old binaries until they can be tested
	#jira UE-40124 #rb josh.stoddard

Change 3271188 on 2017/01/25 by Jurre.deBaare

	Post-import script support
	#jira UEFW-80

Change 3271249 on 2017/01/25 by Thomas.Sarkanen

	Move soundwave-internal curve tables to advanced display

	Exposing it was confusing to audio people

Change 3271586 on 2017/01/25 by Marc.Audy

	Don't rerun construction scripts twice on a level that has been hidden and reshown
	#jira UE-40306

Change 3272048 on 2017/01/25 by Ori.Cohen

	Fix for immediate mode sim when root body is the same as the root bone.

Change 3272083 on 2017/01/25 by Ori.Cohen

	Make sure to warn when component space sim and collision are used together. Also handle it gracefully.

Change 3272300 on 2017/01/25 by Ori.Cohen

	Fix incorrect collision generation when a shape's local pose is not identity.

Change 3273195 on 2017/01/26 by Jurre.deBaare

	Fix for Anim import script crash in GetBonePosesForTime

Change 3273204 on 2017/01/26 by Ben.Marsh

	Ignore PRAGMA_DISABLE_SHADOW_VARIABLE_WARNINGS and PRAGMA_ENABLE_SHADOW_VARIABLE_WARNINGS macros between include directives. Fixes CIS warning with IncludeTool.

Change 3273378 on 2017/01/26 by James.Golding

	In AnimBP editor, call CopyNodeDataToPreviewNode when properties are edited, not just pin defaults changed

Change 3273381 on 2017/01/26 by James.Golding

	Big refactor to PoseDriver
	  - RBF logic now moved into its own class/file
	  - Allow editing of transform and radial scaling per-target
	  - Add support for different falloff functions (not just Gaussian)
	  - Allow driving curves directly, rather than always poses
	  - Add details customization for pose driver node
	  - Edits to PoseDriver settings now take immediate effect, don't need to recompile

Change 3273826 on 2017/01/26 by Josh.Stoddard

	modify VHACD to improve quality of hulls generated by convex decomposition
	NOTE: mac libs not included - mac editor will use legacy libs for now

Change 3273902 on 2017/01/26 by Marc.Audy

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3273433

Change 3274018 on 2017/01/26 by Ori.Cohen

	Added immediate physics preview in phat.

Change 3274165 on 2017/01/26 by Ori.Cohen

	PhAT now depends on immediate mode plugin. Fix build

	#JIRA UE-41179

Change 3275001 on 2017/01/27 by Jurre.deBaare

	Fix for crash in Persona with Anim Modifiers

Change 3275297 on 2017/01/27 by Ori.Cohen

	Big refactor to iterate over shapes instead of bodies (allows multiple shape per body collision)

Change 3275340 on 2017/01/27 by Benn.Gallagher

	Fixed Paragon clothing crashes during clothing upgrade step, fixed bone mapping not getting updated on reimport with different hierarchy
	#jira UE-41025
	#jira UE-41039

Change 3275383 on 2017/01/27 by Benn.Gallagher

	Blacklisted double promotion warning on ps4 NvCloth build
	#rnx

Change 3275426 on 2017/01/27 by Benn.Gallagher

	Removed CUDA dependencies from NvCloth cmake files

Change 3275670 on 2017/01/27 by Ori.Cohen

	Fix phat ragdoll in immediate mode updating sketal mesh component transform

Change 3275673 on 2017/01/27 by Ori.Cohen

	Add position/velocity iteration to immediate mode

Change 3276001 on 2017/01/27 by Alan.Noon

	Migrated Immediate Mode Minion Ragdoll Content to GDC AnimTech Project. Updated DefaultInput.ini
	none

Change 3276596 on 2017/01/28 by Aaron.McLeran

	Removing unused #ifdef

Change 3276597 on 2017/01/28 by Aaron.McLeran

	Getting rid of static analysis warning

Change 3277354 on 2017/01/30 by Lukasz.Furman

	fixed custom navlink Id collisions
	#ue4

Change 3277356 on 2017/01/30 by Lukasz.Furman

	fixed comments in GameplayDebugger.h
	#jira UE-41103

Change 3277371 on 2017/01/30 by mason.seay

	Test map for spawn sound/force feedback bug.

Change 3277445 on 2017/01/30 by Lukasz.Furman

	fixed compilation warning
	#ue4

Change 3277560 on 2017/01/30 by Danny.Bouimad

	Made checkin to Fix Crash that occured due to bad content.

Change 3277567 on 2017/01/30 by Ori.Cohen

	Fix immediate mode crashing when joint is empty.

	#JIRA UE-41026

Change 3277928 on 2017/01/30 by Ori.Cohen

	Turn on immediate mode plugin by default

Change 3278433 on 2017/01/30 by Ori.Cohen

	Immediate mode supports heightfield collision.

Change 3278449 on 2017/01/30 by Ori.Cohen

	Fix immediate mode cache not being initialized properly.

Change 3278787 on 2017/01/31 by James.Golding

	Fix CIS error in ImmediatePhysicsSimulation.cpp

Change 3279303 on 2017/01/31 by mason.seay

	Assets for RigidBody node bug

Change 3279352 on 2017/01/31 by Benn.Gallagher

	Fixed inertia blends on self collision cloth assets as we now only have local space simulation and these values weren't used before

Change 3279377 on 2017/01/31 by Alan.Noon

	GDC AnimTech Demo: adjusted minion physics assets
	none

Change 3279425 on 2017/01/31 by james.cobbett

	Updating QA-Physics map.

	Made one of the simulated physics objects more user-friendly, able to enable/disable physics on key-press now.

Change 3279436 on 2017/01/31 by Benn.Gallagher

	Fixed inertia scales on Owen mesh

Change 3279480 on 2017/01/31 by Benn.Gallagher

	Fixes for clothing behavior changes
	#jira UE-41092

Change 3279495 on 2017/01/31 by Ori.Cohen

	Remove unneeded cache clearing when contact pairs are not skipped, but there is no collision.

Change 3279579 on 2017/01/31 by james.cobbett

	Added new scenario to QA-Physics map.

	Moving platforms (up/down, left/right) with physics objects on them.

Change 3279695 on 2017/01/31 by mason.seay

	RigidBody node test asset

Change 3280105 on 2017/01/31 by Ori.Cohen

	Prevent query only ragdolls from simulating if their bodysetup is marked as simulated. Also remove slow check in term body for owning components. This is not true for destructibles or immediate mode

Change 3280148 on 2017/01/31 by mason.seay

	First round of assets for force feedback testing

Change 3280860 on 2017/02/01 by James.Golding

	Merge CL 3280853 to Dev-Framework
	Fix crash with null CurrentSkeleton on AnimInstance when using Re-import button in SkelMesh Editor

Change 3281172 on 2017/02/01 by Marc.Audy

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3281156

Change 3281210 on 2017/02/01 by james.cobbett

	Updated QA-Physics map

	Added cube that starts off with physics enabled, then disables. Made physics toggleable on that and another cube.

Change 3281211 on 2017/02/01 by James.Golding

	Details customization for editing PoseDriver targets list

Change 3281332 on 2017/02/01 by Marc.Audy

	Fix bad merge
	Fix file types

Change 3281388 on 2017/02/01 by mason.seay

	Updated Force Feedback asset

Change 3281396 on 2017/02/01 by mason.seay

	moving asset

Change 3281987 on 2017/02/01 by Benn.Gallagher

	Fixed project generation failing after main merge

Change 3282047 on 2017/02/01 by Marc.Audy

	Fix up Target and build cs files after changes from Dev-Build

Change 3282214 on 2017/02/01 by Ori.Cohen

	Expose radial forces to immediate mode

Change 3282221 on 2017/02/01 by Alan.Noon

	Immediate Mode GDC demo content: development on minion anim B, refined Orbital Laser Pawn controls, tweaked laser parameters
	none

Change 3282273 on 2017/02/01 by Ori.Cohen

	Fix crash when recompiling animbp of immediate mode due to null pointer.

Change 3282368 on 2017/02/01 by Ori.Cohen

	Quick iteration on minion demo

Change 3282824 on 2017/02/02 by James.Golding

	Fix for CIS in RBFSolver.h

Change 3282829 on 2017/02/02 by James.Golding

	Fix CIS in PoseDriverDetails.cpp
	Fix list UI not refreshing after copying targets from PoseAsset

Change 3282834 on 2017/02/02 by Danny.Bouimad

	Adding Pose driver additive assets

Change 3282863 on 2017/02/02 by James.Golding

	Add Mambo mesh and Skeleton

Change 3282892 on 2017/02/02 by James.Golding

	Copy Aurora (Ice) and Mambo meshes/materials/some anims from Dev-General to AnimTechDemo project in Dev-Framework

Change 3283157 on 2017/02/02 by Mieszko.Zielinski

	Cook Orion Win64 fix #UE4

	Had to change the Extent param of K2_ProjectPointToNavigation. Updated the error causing Orion BP

Change 3283159 on 2017/02/02 by Marc.Audy

	Additional CIS fixes

Change 3283179 on 2017/02/02 by Marc.Audy

	More CIS fixes

Change 3283197 on 2017/02/02 by Jurre.deBaare

	Fix for issues importing Fornite geometry cache assets
	#fix Use actual import number of frames instead of total number of frames in the Alembic Cache

Change 3283201 on 2017/02/02 by Marc.Audy

	Keep fixing CIS

Change 3283270 on 2017/02/02 by James.Golding

	Merging CL 3276013 to Dev-Framework
	- fix issue with additive pose preview applying twice

Change 3283499 on 2017/02/02 by Marc.Audy

	More CIS fixes

Change 3283543 on 2017/02/02 by Jon.Nabozny

	Update comment on AActor::GetActorBounds to properly reflect ChildActorComponents aren't included in the calculation.

Change 3283663 on 2017/02/02 by Ori.Cohen

	Fix potential null dereference in ragdoll node

Change 3283757 on 2017/02/02 by Marc.Audy

	May fix remaining CIS issues

Change 3283984 on 2017/02/02 by Marc.Audy

	Fix linux CIS

Change 3284039 on 2017/02/02 by Marc.Audy

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3283913

Change 3284067 on 2017/02/02 by Marc.Audy

	Fixup mistakes in converting redirects

Change 3284187 on 2017/02/02 by Ori.Cohen

	Immediate mode works with radial force (not just radial impulse)

Change 3284358 on 2017/02/02 by Ori.Cohen

	Update arcblade phys asset for immediate mode

Change 3284667 on 2017/02/02 by Marc.Audy

	Arguments is an array not a string now. Fixing commented out code.

Change 3284684 on 2017/02/02 by Marc.Audy

	Move AVIWriter out in to its own module to avoid any possible unity build issues where xwindows.h got indirectly included through the DirectShow third party library and caused FGenericWindow::IsMaximized and IsMinimized to conflict with a macro.

Change 3284707 on 2017/02/02 by Marc.Audy

	Fix AVIWriter module compilation on Mac

Change 3285012 on 2017/02/03 by Benn.Gallagher

	Fixes for Dx NvCloth shader warnings

Change 3285016 on 2017/02/03 by Marc.Audy

	Fix missing include

Change 3285048 on 2017/02/03 by Benn.Gallagher

	Fixed Persona needing a restart when changing number of clothing assets (import/delete)
	#jira UE-41323

Change 3285325 on 2017/02/03 by Marc.Audy

	Properly implement AVIWriter module

Change 3285538 on 2017/02/03 by Marc.Audy

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3285499

Change 3285735 on 2017/02/03 by Jon.Nabozny

	Add IsInAir method to UVehicleWheel.

	#jira UE-38369

Change 3285862 on 2017/02/03 by Aaron.McLeran

	UE-41435 Fixing PIE audio

	- Fixing PIE audio. Recent change to editor preferences from Dev-Editor branch (CL 3234495) caused all audio to be muted in PIE.

Change 3285914 on 2017/02/03 by danny.bouimad

	RecomputeTangents Test Assets

Change 3286246 on 2017/02/03 by Mieszko.Zielinski

	Changes to game-specific BPs containing calls to deprecated NavigationSystem functions #UE4

	#jira UE-41527
	#jira UE-41518

Change 3286308 on 2017/02/03 by Ori.Cohen

	Make sure physx trimesh scale is never too small. Fix box clamping being ignored. Fixes cook warnings for Odin.

	#JIRA UE-41529

Change 3286396 on 2017/02/03 by Ori.Cohen

	Fix CIS

Change 3286479 on 2017/02/03 by Ori.Cohen

	Copying //UE4/Dev-Physics-Upgrade to Dev-Framework (//UE4/Dev-Framework)

Change 3287421 on 2017/02/06 by James.Golding

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3286819

Change 3287427 on 2017/02/06 by James.Golding

	Fix PoseBlendNode to 'pass through' if no poses are activated

Change 3287430 on 2017/02/06 by James.Golding

	- Add support to PoseDriver for evaluating source bone in the space of a different bone
	- Fix driven bone adding a scale of 1
	- Fix posedriver values 'sticking' (reset all weights to zero each frame)
	- Move CopyTargetsFromPoseAsset and AutoSetTargetScales from FAnimNode_PoseDriver to UAnimGraphNode_PoseDriver (not required outside editor)
	- Tranlsation targets now draw larger when selected
	- 'Copy from pose asset' now also auto-sets radius for you
	- Remove spammy warnings for missing poses/curves
	- Add UPoseAsset::GetNumTracks and ::GetFullPose
	- Remove unused ExtractionContext from UPoseAsset::GetBaseAnimationPose
	- Remove bIncludeRefPoseAsNeutralPose option (not really useful since we no longer always normalize weights to 1.0)

Change 3287496 on 2017/02/06 by Chad.Garyet

	fixing busted quotes around defaultvalues

Change 3287569 on 2017/02/06 by Mieszko.Zielinski

	Orion BP fixed after deprecating NavigationSystem's BP API #Orion

Change 3287595 on 2017/02/06 by Benn.Gallagher

	BuildPhysX.Automation: Deploying PhysX & NvCloth Win64 Win32 PS4 libs.
	Built for new NvCloth upgrade

Change 3287598 on 2017/02/06 by Benn.Gallagher

	NvCloth Upgrade to 21604115
	Added Linux+Mac support

Change 3287710 on 2017/02/06 by Lukasz.Furman

	added option to disable navlink polys at the end of generated paths
	#ue4

Change 3287857 on 2017/02/06 by Benn.Gallagher

	Fixed NvCloth module files to correctly set up linux and mac hopefully

Change 3287894 on 2017/02/06 by Benn.Gallagher

	Another fix to NvCloth build files, didn't get picked up in VS for some reason.

Change 3287917 on 2017/02/06 by Lina.Halper

	Copy from CharacterRigging to Dev-Framework

	#code review:Thomas.Sarkanen, Martin.Wilson, James.Golding, Andrew.Rodham

Change 3287938 on 2017/02/06 by Thomas.Sarkanen

	Fix crash opening a media sound wave

	#jira UE-41582 - Editor crashes when running Automation test

Change 3287942 on 2017/02/06 by Marc.Audy

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3287682

Change 3288035 on 2017/02/06 by James.Golding

	Remove C++ GameMode and pawn classes (replace with floating BP instead)
	Resave anims to remove Orion refs
	Add simple AnimBP and map for Mambo testing

Change 3288036 on 2017/02/06 by Benn.Gallagher

	Fix to BuildPhysX task to trigger Mac and Linux builds properly

Change 3288125 on 2017/02/06 by Ori.Cohen

	Change PhysXCommon back to dylib

Change 3288127 on 2017/02/06 by Benn.Gallagher

	Fixed project file identification not working for NvCloth under XCode

Change 3288156 on 2017/02/06 by Benn.Gallagher

	Disable "expansion-to-defined" warning in Linux NvCloth builds

Change 3288159 on 2017/02/06 by Lina.Halper

	potential compile fix for Ocean Editor

	#code review:Thomas.Sarkanen

Change 3288190 on 2017/02/06 by Ori.Cohen

	Link against static PhysXCommon for mac

Change 3288200 on 2017/02/06 by Marc.Audy

	Fix CIS

Change 3288270 on 2017/02/06 by Lina.Halper

	fix compile error

	#code review:Thomas.Sarkanen, Marc.Audy

Change 3288302 on 2017/02/06 by Thomas.Sarkanen

	Fixed ensure when deselecting bones in anim BP editor

	#jira UE-41274 - Ensure when clicking in the viewport of an animation blueprint

Change 3288348 on 2017/02/06 by Lina.Halper

	- Enabled control rig
	- Changed plugin name to be Control Rig

Change 3288490 on 2017/02/06 by Benn.Gallagher

	Fixes for Mac attempting static links against NvCloth and failing to load dynamic libraries. Worked with MasonS to get Mac editor up and running.

Change 3288511 on 2017/02/06 by Lina.Halper

	compile fix

Change 3288513 on 2017/02/06 by Lina.Halper

	Check in content to work with

Change 3288615 on 2017/02/06 by Ori.Cohen

	Fix skeletal mesh not simulating when using an aggregate.

	#JIRA UE-41593

Change 3288791 on 2017/02/06 by thomas.sarkanen

	Exposed transforms to cinematics so they can be animated

Change 3288795 on 2017/02/06 by Ori.Cohen

	Fix lock warnings for physx

	#JIRA UE-41591

Change 3288817 on 2017/02/06 by Charles.Anderson

	GDC Arcblade setup tests.

Change 3288825 on 2017/02/06 by Lina.Halper

	Fix build issue of shadow variable

Change 3289058 on 2017/02/06 by Ori.Cohen

	Fix crash when immediate mode constraint generates 0 rows. This is a potentially temporary fix until NVIDIA replies with a better solution.

	#JIRA UE-41026

Change 3289348 on 2017/02/06 by Lina.Halper

	fix compile issue

Change 3289369 on 2017/02/06 by Lina.Halper

	Renamed leg control to limb control and will be used for arm/feet.
	- changed vars.
	- has unused variables that will be used soon but want to check in so that i don't block content change on BaseHuman.

	#code review:Thomas.Sakanen

Change 3289422 on 2017/02/06 by Lina.Halper

	Fixed IK sinking issue - or moving

	#code review:Thomas.Sarkanen

Change 3289433 on 2017/02/06 by Lina.Halper

	Fixed real shadow error

Change 3289485 on 2017/02/06 by Lina.Halper

	fixed build issue

Change 3289657 on 2017/02/07 by thomas.sarkanen

	Added rig bone mapping to Ice's skeletal mesh

Change 3289658 on 2017/02/07 by thomas.sarkanen

	Added ControlRig map with Ice setup to pose

Change 3289662 on 2017/02/07 by Thomas.Sarkanen

	Fixed up static analysis warning

Change 3289663 on 2017/02/07 by Thomas.Sarkanen

	Fixed crash when attempting to bind to skeletal mesh with already-set anim BP

	Anim instance may not have actually been created when binding, so dont dereference it

Change 3289717 on 2017/02/07 by Benn.Gallagher

	Switch Linux NvCloth to static for Linux builds. Adjust lib directory to match actual directory

Change 3289718 on 2017/02/07 by Benn.Gallagher

	BuildPhysX.Automation: Deploying NvCloth Linux_x86_64-unknown-linux-gnu libs.

Change 3289744 on 2017/02/07 by Benn.Gallagher

	Fixed missing masses causing crash initialising clothing actors
	#jira UE-41599

Change 3289746 on 2017/02/07 by Danny.Bouimad

	Adding Some Content for JamesG he wanted some nicer looking Pose driver test files.

Change 3289756 on 2017/02/07 by danny.bouimad

	Changing the asset for JamesG.

Change 3289785 on 2017/02/07 by James.Golding

	Replace old PoseDrive test with Danny's new one

Change 3289858 on 2017/02/07 by Lina.Halper

	fixed issue with undo transaction buffer

Change 3289860 on 2017/02/07 by Benn.Gallagher

	Fixed crash after reimporting a clothing asset with the clothing config open and then changing the confg
	#jira UE-41655

Change 3289912 on 2017/02/07 by Thomas.Sarkanen

	Merging using Raven_To_Dev-Framework

	Originally from CLs 3249471, 3258522, 3260271, 3273791:

	Sequencer: More work supporting array properties more generically

	+ fixes

Change 3289962 on 2017/02/07 by James.Golding

	Add thickness option to DrawWireDiamond

Change 3289963 on 2017/02/07 by James.Golding

	Add spin option to VectorInputBox

Change 3289966 on 2017/02/07 by James.Golding

	Add weight bar chart to PoseDriver details
	Stop drawing pose weight text in viewport
	Fix position targets not drawing larger when selected

Change 3290094 on 2017/02/07 by Thomas.Sarkanen

	Fixed typo in filename (fallout from search and replace)

Change 3290119 on 2017/02/07 by Thomas.Sarkanen

	Manipulators can now have their IK/FK space set on them

	They are not drawn when the space for the chain that they control is not the same as their setting
	Also fixed a crash with invalid objects when reloading maps.

Change 3290145 on 2017/02/07 by Thomas.Sarkanen

	CIS fix for fallout from Raven changes

	#jira UE-41670 - Mac editor fails to compile with PropertyTrackEditor errors

Change 3290319 on 2017/02/07 by Marc.Audy

	Make sound player nodes hard reference the assets unless they are in a chain below a quality node.

Change 3290484 on 2017/02/07 by Richard.Hinckley

	Fixing grammar in popup messages.

Change 3290533 on 2017/02/07 by Marc.Audy

	Make GetAIController BlueprintPure
	#jira UE-41654

Change 3290624 on 2017/02/07 by Marc.Audy

	Reorder header to avoid include tool warnings

Change 3290697 on 2017/02/07 by Lina.Halper

	- support FK manipulator being in local space
	- fixed FK key spamming issue for making blend weight to be not keyable - this creates conflicts with enum

	#code review: Thomas.Sarkanen

Change 3290748 on 2017/02/07 by Ori.Cohen

	Touch immediate mode file to force physx re-link

Change 3290807 on 2017/02/07 by Richard.Hinckley

	#jira UE-39891
	Updates to assist in automatic documentation generation.

Change 3290946 on 2017/02/07 by Lina.Halper

	Fix issue of notify looping.

	#jira: UE-31463
	#Code review:Martin.Wilson

Change 3291553 on 2017/02/07 by Lina.Halper

	Rename/move file(s)
	- modified mesh mapping controller window to be Control Rig

Change 3291571 on 2017/02/07 by Lina.Halper

	added set up spine option

	#code review:Thomas.Sarkanen

Change 3291581 on 2017/02/07 by Ori.Cohen

	Temporarily turn off phat immediate mode preview which crashes.

Change 3291949 on 2017/02/08 by James.Golding

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3291819

Change 3291966 on 2017/02/08 by Lina.Halper

	Fix issue with notify looping bug

	#jira: UE-31463

Change 3292247 on 2017/02/08 by Marc.Audy

	Clean up bad merge caused by Fortnite integration to main

Change 3292326 on 2017/02/08 by Marc.Audy

	Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3292313

Change 3292409 on 2017/02/08 by Marc.Audy

	Resubmit FortPawn.cpp with proper code even though perforce doesn't think there is a difference since when you sync it, the contents are wrong.

Change 3292481 on 2017/02/08 by Ori.Cohen

	Fix for convex hull cooking (from Josh.S)

	#JIRA UE-41656

Change 3292492 on 2017/02/08 by Mieszko.Zielinski

	Redone replacement of deprecated navigation system's BP functions in Fortnite BPs #Fortnite

Change 3292778 on 2017/02/08 by Ori.Cohen

	Touch physx DDC key for new cooking.

	#JIRA UE-41656

[CL 3293329 by Marc Audy in Main branch]
2017-02-08 17:53:41 -05:00
Ben Marsh
20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

[CL 3226823 by Ben Marsh in Main branch]
2016-12-08 08:52:44 -05:00
Ben Marsh
4ba423868f Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3209340 on 2016/11/23 by Ben.Marsh

	Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.

	Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.

	  * Every header now includes everything it needs to compile.
	        * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
	        * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
	  * Every .cpp file includes its matching .h file first.
	        * This helps validate that each header is including everything it needs to compile.
	  * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
	        * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
	        * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
	  * No engine code explicitly includes a precompiled header any more.
	        * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
	        * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.

	Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.

[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
Robert Manuszewski
5925a19dc9 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3125172)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3053250 on 2016/07/18 by Steve.Robb

	TNot metafunction added.

Change 3053252 on 2016/07/18 by Steve.Robb

	New TIsEnumClass trait.

Change 3061345 on 2016/07/22 by Robert.Manuszewski

	Changing FMallocStomp::GetAllocationSize() to return the requested allocation size instead of the physical allocation size to make FMallocStomp work properly with FMallocPoisonProxy

Change 3061377 on 2016/07/22 by Graeme.Thornton

	Added bStripAnimationDataOnDedicatedServer option to UAnimationSettings which will remove all compressed data from cooked server data. Disabled by default

Change 3064592 on 2016/07/26 by Steven.Hutton

	Uploading repository files

Change 3064595 on 2016/07/26 by Steven.Hutton

	Assign crashes to buggs based not just on Callstack but also based on Error message.

	Error messages have "data" masked out and are then compared to a table of  error messages to find similar messages. Ensures are not currently filtered by error message.

Change 3066046 on 2016/07/27 by Graeme.Thornton

	Better dedicated client/server class exclusion during cooking
	 - Add class lists to cooker settings so they can be modified in the editor

Change 3066077 on 2016/07/27 by Graeme.Thornton

	Move Paragon NeedsLoadForServer calls over to the new config based system

Change 3066203 on 2016/07/27 by Chris.Wood

	CrashReportProcess logging and Slack reporting improvements to monitor disk space.
	[UE-31129] - Crash Report server need to alert on Slack when the PDB cache is full

Change 3066276 on 2016/07/27 by Graeme.Thornton

	Move simple NeedsLoadForClient implementations over to new config based system

Change 3068019 on 2016/07/28 by Graeme.Thornton

	Don't call ReleaseResources on UStaticMesh if we never render, and therefore never actually initialize the resources
	 - Corrects some bad stats

Change 3068218 on 2016/07/28 by Chris.Wood

	CrashReportProcess 1.1.18 passes BuildVersion to MinidumpDiagnostics
	[UE-31706] - Add new BuildVersion string to crash context and website

	Also modified command line log file ini settings to stop MDD stalling trying to sort and delete its logs.

Change 3071665 on 2016/08/01 by Robert.Manuszewski

	Moving RemoveNamesFromMasterList from UEnum destructor to BeginDestroy to avoid potential issues when its package has already been destroyed.

Change 3073388 on 2016/08/02 by Graeme.Thornton

	Invalidate string asset reference tags after finishing up loading of an async package

Change 3073745 on 2016/08/02 by Robert.Manuszewski

	Disabling logging to memory in shipping by default. From now on FOutputDeviceMemory will be an opt-in for games.

	#jira FORT-27839

Change 3074866 on 2016/08/03 by Robert.Manuszewski

	PR #2650: Fixed a bug where newline escape sequence wasnt written to the pipe (Contributed by ozturkhakki)

Change 3075128 on 2016/08/03 by Steve.Robb

	Static analysis fixes: error C2065: 'ThisOuterWorld': undeclared identifier

Change 3075130 on 2016/08/03 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'LODLevel'

Change 3075131 on 2016/08/03 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Owner'

Change 3075235 on 2016/08/03 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'AnimToOperateOn'

Change 3075248 on 2016/08/03 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'ParentProfile'

Change 3075662 on 2016/08/03 by Steve.Robb

	Static analysis/buffer size fix: warning C28020: The expression '_Param_(7)>=sizeof(ICMP_ECHO_REPLY)+_Param_(4)+8' is not true at this call

Change 3075668 on 2016/08/03 by Steve.Robb

	Static analysis fix: warning C6326: Potential comparison of a constant with another constant

Change 3075679 on 2016/08/03 by Chris.Wood

	Added -NoTrimCallstack command line arg to MDD calls from CRP 1.1.19
	[OR-26335] - 29.1 crash reporter generating reports with no callstacks / info

	New MDD has -NoTrimCallstack option to leave possibly irrelevant entires in the stack. Trimming is somewhat arbitrary and based on string matching. I'd rather see the whole thing.

Change 3077070 on 2016/08/04 by Steve.Robb

	Dead array slack tracking code removed.

Change 3077113 on 2016/08/04 by Steve.Robb

	TEnumAsByte is now deprecated for enum classes.
	All current uses fixed (which tidies up that code anyway).
	New FArchive::op<< for enum classes.
	Generated code now never uses TEnumAsByte for enum classes.

Change 3077117 on 2016/08/04 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'DefaultSettings'

Change 3078709 on 2016/08/05 by Steve.Robb

	FUNCTION_NO_NULL_RETURN_* macros added to statically annotate a function to say that it never returns a null pointer.
	TObjectIterator annotated to never return null.
	NewObject annotated to never return null.

Change 3078836 on 2016/08/05 by Graeme.Thornton

	Silently skip creating exports from a package where the outer is also an export and has been filtered at runtime during loading

Change 3082217 on 2016/08/09 by Steve.Robb

	Missing #include for FUniqueNetIdRepl added.

Change 3083679 on 2016/08/10 by Chris.Wood

	CrashReportProcess performance improvements. CRP v1.1.22
	[UE-34402] - Crash Reporter: Improve CRP performance by allowing multiple MDD instances
	[UE-34403] - Crash Reporter: CRP should throw away crashes when backlog is too large to avoid runaway

	Passing lock details to MDD on command line and managing multiple MDD tasks in CRP.
	Configurable values for range of queue sizes that cause us to throw away crashes.

Change 3085362 on 2016/08/11 by Steve.Robb

	Rule-of-three fixes for FAIMessageObserver, to prevent accidents.

	From here: https://udn.unrealengine.com/questions/306507/tstaticarray-doesnt-call-destructor-on-elements-be.html

Change 3085396 on 2016/08/11 by Steve.Robb

	Swap can now be configured via the TUseBitwiseSwap trait to not use Memswap, which can be less optimal for certain types.

Change 3088840 on 2016/08/15 by Steve.Robb

	TRemoveReference moved to its own header.

Change 3088858 on 2016/08/15 by Steve.Robb

	TDecay moved to its own header.

Change 3088963 on 2016/08/15 by Steve.Robb

	Invoke function, for doing a generic call on a generic callable thing.  Equivalent to std::invoke.

Change 3089144 on 2016/08/15 by Steve.Robb

	Algo::Transform updated to use Invoke.  Algorithm tests updated to test the new features.

Change 3089147 on 2016/08/15 by Steve.Robb

	TLess and TGreater moved to their own headers and defaulted to void as a type-deducing version, as per std::.

Change 3090243 on 2016/08/16 by Steve.Robb

	New Algo::Sort and Algo::SortBy algorithms.

Change 3090387 on 2016/08/16 by Steve.Robb

	Improved bitwise swapping for Swap.

	See: https://udn.unrealengine.com/questions/306922/swap-is-painfully-slow.html

Change 3090444 on 2016/08/16 by Steve.Robb

	Ptr+Size overloads removed after discussion - MakeArrayView should be used instead.

Change 3090495 on 2016/08/16 by Steve.Robb

	Assert when FString::Mid is passed a negative count.

	#jira UE-18756

Change 3093455 on 2016/08/18 by Steve.Robb

	Debuggability and efficiency improvements to UScriptStruct::DeferCppStructOps.

Change 3094476 on 2016/08/19 by Steve.Robb

	BOM removed from InvariantCulture.h.

Change 3094697 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6237: (<zero> && <expression>) is always zero.  <expression> is never evaluated and might have side effects.

Change 3094702 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Interactor'.

Change 3094715 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6385: Reading invalid data from 'Order':  the readable size is '256' bytes, but '8160' bytes may be read.

Change 3094737 on 2016/08/19 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'OwnedComponent'.
	warning C28182: Dereferencing NULL pointer. 'Child' contains the same NULL value as 'AttachToComponent' did.

Change 3094750 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Actor'.

Change 3094768 on 2016/08/19 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'LevelSequence'.
	warning C6011: Dereferencing NULL pointer 'Actor'.

Change 3094774 on 2016/08/19 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'CallFunctionNode'.

Change 3094783 on 2016/08/19 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'TargetPin'.

Change 3094807 on 2016/08/19 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SourceClass'.

Change 3094815 on 2016/08/19 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'VarNode'.
	warning C6011: Dereferencing NULL pointer 'SourceClass'.

Change 3094840 on 2016/08/19 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'TunnelGraph'.
	warning C28182: Dereferencing NULL pointer. 'GraphNode' contains the same NULL value as 'SourceNode' did.

Change 3094864 on 2016/08/19 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'.

Change 3094880 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'PrevIfIndexMatchesStatement'.

Change 3094886 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'SpawnBlueprintPin'.

Change 3094903 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'K2Node'.

Change 3094916 on 2016/08/19 by Steve.Robb

	Static analysis fix: Dereferencing NULL pointer 'CompilerContext'.

Change 3094931 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'VariablePin'.

Change 3094935 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurrentPin'.

Change 3094943 on 2016/08/19 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Pin'.
	warning C28182: Dereferencing NULL pointer. 'Graph' contains the same NULL value as 'TargetGraph' did.

Change 3094960 on 2016/08/19 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'LastOutPin'.

Change 3095046 on 2016/08/19 by Steve.Robb

	Single parameter version of CastChecked tagged to never return null.

Change 3095054 on 2016/08/19 by Steve.Robb

	Committed wrong version in CL# 3095046.

Change 3095089 on 2016/08/19 by Steve.Robb

	Static analysis fixes:

	warning C6509: Invalid annotation: 'return' cannot be referenced in some contexts
	warning C6101: Returning uninitialized memory '*lpdwExitCode'.

Change 3096035 on 2016/08/22 by Steve.Robb

	Fix for static lighting in pixel inspector.

Change 3096039 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'World'.

Change 3096045 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Actor'.

Change 3096058 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'OtherPin'.

Change 3096059 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'MainMesh'.

Change 3096066 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'SourceType'.

Change 3096070 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'LastPushStatement'.

Change 3096074 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'OriginalDataTableInPin'.

Change 3096075 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurrentPin'.

Change 3096081 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'RunningPlatformData'.

Change 3096156 on 2016/08/22 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'BP'.
	warning C6011: Dereferencing NULL pointer 'Object'.

Change 3096308 on 2016/08/22 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'TopMipData'.
	warning C6011: Dereferencing NULL pointer 'MipCoverageData[0]'.

Change 3096315 on 2016/08/22 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'OldParent'.
	warning C6011: Dereferencing NULL pointer 'TestExecutionInfo'.

Change 3096318 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'OwnerClass'.

Change 3096322 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'StaticMeshInstanceData'.

Change 3096337 on 2016/08/22 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Pin'.
	warning C6011: Dereferencing NULL pointer 'SpawnVarPin'.

Change 3096345 on 2016/08/22 by Steve.Robb

	Static analysis fixes: warning C6246: Local declaration of 'NumTris' hides declaration of the same name in outer scope.

Change 3096356 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'InWorld'.

Change 3096387 on 2016/08/22 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'ExpressionPreviewMaterial'.
	warning C6011: Dereferencing NULL pointer 'MaterialNode->MaterialExpression'.

Change 3096400 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'FunctionInputs'.

Change 3096413 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'LODPackage' contains the same NULL value as 'AssetsOuter' did.

Change 3096416 on 2016/08/22 by Steve.Robb

	Static analysis fixes: warning C6237: (<zero> && <expression>) is always zero.  <expression> is never evaluated and might have side effects.

Change 3096423 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'RedirectorRefs.Redirector'.

Change 3096439 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'NewObject'.

Change 3096446 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'BaseClass'.

Change 3096454 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'OldSkeleton'.

Change 3096464 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'MyNode'.

Change 3096469 on 2016/08/22 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'VRInteractor'.

Change 3097559 on 2016/08/23 by Steve.Robb

	Alternate fix to CL# 3096439.

Change 3097583 on 2016/08/23 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'SourceCategoryEnum'.
	warning C6011: Dereferencing NULL pointer 'CurrentWorld'.

Change 3097584 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'LocalizationTarget'.

Change 3097585 on 2016/08/23 by Steve.Robb

	Static analysis fixes:

	warning C28182: Dereferencing NULL pointer. 'VariableSetNode' contains the same NULL value as 'AssignmentNode' did.
	warning C6011: Dereferencing NULL pointer 'FirstNativeClass'.

Change 3097588 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'OutputObjClass'.

Change 3097589 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'Term' contains the same NULL value as 'RValueTerm' did.

Change 3097591 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Schema'.

Change 3097597 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'LayerInfo'.

Change 3097598 on 2016/08/23 by Steve.Robb

	Const-correctness fix for ILandscapeEditorModule::GetHeightmapFormatByExtension and ILandscapeEditorModule::GetWeightmapFormatByExtension.

Change 3097600 on 2016/08/23 by Steve.Robb

	Fix for incorrect null check.

Change 3097605 on 2016/08/23 by Steve.Robb

	Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'TexDataPtr'.

	Bug filed here: https://connect.microsoft.com/VisualStudio/feedback/details/3078125

Change 3097609 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'ObjClass' contains the same NULL value as 'BaseClass' did.

Change 3097613 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'InEdGraph'.

Change 3097620 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'ThisScalableFloat'.

Change 3097627 on 2016/08/23 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'AnimBlueprint'.

Change 3097629 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'Pin' contains the same NULL value as 'PoseNet' did.

Change 3097631 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'IPOverlayInfo.Brush'.

Change 3097634 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Survey'.

Change 3097639 on 2016/08/23 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Settings'.

Change 3097650 on 2016/08/23 by Steve.Robb

	Alternate fix for CL# 3097597.

Change 3097725 on 2016/08/23 by Steve.Robb

	Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'BodySetup'.

Change 3097764 on 2016/08/23 by Steve.Robb

	Spurious static analysis fix: warning C28182: Dereferencing NULL pointer. 'FoundMode' contains the same NULL value as 'ElementType * FoundMode=LoopModes.FindByPredicate(<lambda>)' did.

Change 3097770 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Triangle'.

Change 3097775 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurGroup'.

Change 3097796 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'SourceComponent'.

Change 3097797 on 2016/08/23 by Steve.Robb

	Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'HitComponent'.

Change 3097843 on 2016/08/23 by Steve.Robb

	Spurious static analysis fix: Dereferencing NULL pointer. 'MatchingNewPin' contains the same NULL value as 'UEdGraphPin ** MatchingNewPin=this->Pins.FindByPredicate(<lambda>)' did.

Change 3097864 on 2016/08/23 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'ObjectClass'.
	warning C6011: Dereferencing NULL pointer 'Client'.

Change 3097871 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'SMLightingMesh->StaticMesh' contains the same NULL value as 'StaticMesh' did.

Change 3098015 on 2016/08/23 by Steve.Robb

	Alternative fix for CL# 3094864.

Change 3098024 on 2016/08/23 by Steve.Robb

	Alternative fix for CL# 3094943.

Change 3098052 on 2016/08/23 by Steve.Robb

	Alternative fix for CL# 3094886.

Change 3098080 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'PrimitiveComponent' contains the same NULL value as 'ReplacementComponent' did.

Change 3098102 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'IndexTermPtr'.

Change 3098148 on 2016/08/23 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Node'.
	warning C6011: Dereferencing NULL pointer 'OldNode'.
	warning C6011: Dereferencing NULL pointer 'LinkedPin'.
	warning C6011: Dereferencing NULL pointer 'RootNode'.

Change 3098156 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'BTGraphNode'.

Change 3098176 on 2016/08/23 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'NewSection'.

Change 3098182 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Sprite'.

Change 3098197 on 2016/08/23 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Node'.
	Coding standards fixes.

Change 3098202 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'ExistingEventNode'.

Change 3098208 on 2016/08/23 by Steve.Robb

	Static analysis fixes:

	warning C28182: Dereferencing NULL pointer. 'Graph' contains the same NULL value as 'GraphNew' did.
	warning C28182: Dereferencing NULL pointer. 'GoodGraph' contains the same NULL value as 'GraphNew' did.

Change 3098229 on 2016/08/23 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Property'.

Change 3099188 on 2016/08/24 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SharedBaseClass'.

Change 3099195 on 2016/08/24 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'NodeProperty'.

Change 3099205 on 2016/08/24 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'VarDesc'.

Change 3099228 on 2016/08/24 by Steve.Robb

	Spurious static analysis fix: warning C28182: Dereferencing NULL pointer. 'Node' contains the same NULL value as 'ParentNode' did.

Change 3099539 on 2016/08/24 by Steve.Robb

	Spurious static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'InBlueprint'.
	warning C28182: Dereferencing NULL pointer. 'TestObj' contains the same NULL value as 'TestOuter' did.

	https://connect.microsoft.com/VisualStudio/feedback/details/3082362
	https://connect.microsoft.com/VisualStudio/feedback/details/3082622

Change 3099546 on 2016/08/24 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'OldNode'.

Change 3099561 on 2016/08/24 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'ReferencedObject'.

Change 3099571 on 2016/08/24 by Steve.Robb

	Static analysis fix: Dereferencing NULL pointer. 'ObjClass' contains the same NULL value as 'CommonBaseClass' did.

Change 3099600 on 2016/08/24 by Steve.Robb

	Static analysis fix:

	warning C6385: Reading invalid data from 'this->Packages':  the readable size is '24' bytes, but '32' bytes may be read.
	warning C6385: Reading invalid data from 'Diff.ObjectSets':  the readable size is '24' bytes, but '32' bytes may be read.
	warning C6386: Buffer overrun while writing to 'Objects':  the writable size is '24' bytes, but '32' bytes might be written.

Change 3099912 on 2016/08/24 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SharedBaseClass'.

Change 3099923 on 2016/08/24 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'ThumbnailInfo'.

Change 3100977 on 2016/08/25 by Steve.Robb

	Static analysis fixes:

	warning C6001: Using uninitialized memory '*VectorRef'.
	warning C6001: Using uninitialized memory '*PointRef'.
	warning C6001: Using uninitialized memory '*PolyRef'.

	Coding standard fixes.

Change 3100985 on 2016/08/25 by Steve.Robb

	Static analyis fix: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'.

Change 3100987 on 2016/08/25 by Steve.Robb

	Static analysis fixes:

	warning C28183: 'Resources.BitmapHandle' could be '0', and is a copy of the value found in 'CreateDIBSection()`829':  this does not adhere to the specification for the function 'SelectObject'.
	warning C6387: '_Param_(4)' could be '0':  this does not adhere to the specification for the function 'CreateDIBSection'.

Change 3100992 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6287: Redundant code:  the left and right sub-expressions are identical.

Change 3101000 on 2016/08/25 by Steve.Robb

	Static analysis fixes:

	warning C6001: Using uninitialized memory 'tmpMemReq'.
	warning C6001: Using uninitialized memory 'TmpCreateInfo'.

Change 3101004 on 2016/08/25 by Steve.Robb

	warning C28182: Dereferencing NULL pointer. 'FoliageActor' contains the same NULL value as 'Actor' did.

Change 3101009 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'StaticMeshComponent'.

Change 3101115 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Canvas'.

Change 3101120 on 2016/08/25 by Steve.Robb

	Fixes to previous fixes.

Change 3101128 on 2016/08/25 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Stream'.

Change 3101281 on 2016/08/25 by Steve.Robb

	Static analysis fixes:

	warning C6262: Function uses '99256' bytes of stack:  exceeds /analyze:stacksize '81940'.  Consider moving some data to heap.
	warning C6001: Using uninitialized memory 'Pixel'.

Change 3101292 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'BulkDataPointer'.

Change 3101299 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'UnrealMaterial'.

Change 3101300 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'AssetObject'.

Change 3101304 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'MeshRootNode'.

Change 3101311 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Cluster'.

Change 3101323 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'StartNode'.

Change 3101329 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Object'.

Change 3101333 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'ArrayRef'.

Change 3101339 on 2016/08/25 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'ImportData'.
	warning C6011: Dereferencing NULL pointer 'CurveToImport'.

Change 3101485 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'ObjectProperty'.

Change 3101583 on 2016/08/25 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'UserDefinedStruct'.

Change 3105721 on 2016/08/30 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'.

Change 3105724 on 2016/08/30 by Steven.Hutton

	Change users page to more responsive paginated version.

Change 3105725 on 2016/08/30 by Steven.Hutton

	Added field for crash processor failed

Change 3105786 on 2016/08/30 by Steve.Robb

	Reintroduced missing operator<< for enum classes.

Change 3105803 on 2016/08/30 by Steve.Robb

	Removal of obsolete code and state.  PrepareCppStructOps() has several unreachable blocks, one of which sets UScriptStruct::bCppStructOpsFromBaseClass which is otherwise never true, so it can be removed too.

Change 3106251 on 2016/08/30 by Steve.Robb

	Switch static analysis node to build editor instead of just the engine.

Change 3107556 on 2016/08/31 by Steven.Hutton

	Added build version data from CRP to DB as part of add crash #rb none

Change 3107557 on 2016/08/31 by Steven.Hutton

	Passed build version data to CRW through crash description #rb none

Change 3107634 on 2016/08/31 by Graeme.Thornton

	Only accept "log=<filename>" and "abslog=<filename>" command line values if the filename has a "log" or "txt" extension

	#jira UE-20147

Change 3107797 on 2016/08/31 by Steve.Robb

	Fix for UHT debugging manifest, after paths changed in CL# 3088416.

Change 3107964 on 2016/08/31 by Steve.Robb

	TCString::Strfind renamed to TCString::Strifind, as it is case-insensitive.
	New case-sensitive TCString::Strfind added, based on GitHub PR #2453.

Change 3108023 on 2016/08/31 by Steve.Robb

	Removal of test code which no longer compiles now that we emit errors on skipped preprocessor blocks.

Change 3108160 on 2016/08/31 by Steven.Hutton

	Update to add new filter to website front page #rb none

Change 3109556 on 2016/09/01 by Steven.Hutton

	Fixing compile warning #rb none

Change 3110001 on 2016/09/01 by Steve.Robb

	PR #2468: Fix for UnrealHeaderTool TArray<TScriptInterface<>> UFUNCTION parameters (Contributed by UnrealEverything)

Change 3111835 on 2016/09/02 by Steve.Robb

	Enforce uint8 on UENUM() enum classes.

	#jira UE-35224

Change 3111867 on 2016/09/02 by Steve.Robb

	Static analysis fix: warning C6236: (<expression> || <non-zero constant>) is always a non-zero constant.

Change 3111880 on 2016/09/02 by Steve.Robb

	Static analysis fixes:

	warning C6386: Buffer overrun while writing to 'Views':  the writable size is 'ShaderBindings.ResourceViews.public: int __cdecl TArray<class TSlateD3DTypedShaderParameter<struct ID3D11ShaderResourceView> *,class FDefaultAllocator>::Num(void)const ()*8' bytes, but '16' bytes might be written.
	warning C6386: Buffer overrun while writing to 'ConstantBuffers':  the writable size is 'ShaderBindings.ConstantBuffers.public: int __cdecl TArray<class TSlateD3DTypedShaderParameter<struct ID3D11Buffer> *,class FDefaultAllocator>::Num(void)const ()*8' bytes, but '16' bytes might be written.

Change 3111886 on 2016/09/02 by Steve.Robb

	Static analysis fix: warning C6386: Buffer overrun while writing to 'DistortionMeshIndices':  the writable size is 'NumIndices*2' bytes, but '4' bytes might be written.

Change 3112025 on 2016/09/02 by Steve.Robb

	Static analysis fix:

	warning C6011: Dereferencing NULL pointer 'pInputProcessParameters'.
	warning C6011: Dereferencing NULL pointer 'pOutputProcessParameters'.

Change 3112051 on 2016/09/02 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Command'.

Change 3112066 on 2016/09/02 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurNetDriver'.

Change 3112093 on 2016/09/02 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'byteArray'.

Change 3112110 on 2016/09/02 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'PersistentParty'.

Change 3112123 on 2016/09/02 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'CurDriver'.
	warning C6011: Dereferencing NULL pointer 'CurNetDriver'.
	warning C6011: Dereferencing NULL pointer 'CurWorld'.

Change 3112157 on 2016/09/02 by Steve.Robb

	Static analysis fixes: warning C6011: Dereferencing NULL pointer 'UnitTest'.

Change 3112283 on 2016/09/02 by Steve.Robb

	Static analysis fixes:

	warning C6244: Local declaration of 'None' hides previous declaration at line '173' of 'netcodeunittest.h'.

Change 3113455 on 2016/09/05 by Chris.Wood

	CRP performance improvements (v1.1.25)

Change 3113468 on 2016/09/05 by Steve.Robb

	Reverting unnecessary merge in CL# 3112464.

Change 3113508 on 2016/09/05 by Steve.Robb

	Static analysis fix: warning C6031: Return value ignored: 'CoCreateGuid'.

Change 3113588 on 2016/09/05 by Steve.Robb

	Static analysis fix: warning C6244: Local declaration of 'hInstance' hides previous declaration

Change 3113863 on 2016/09/06 by Steve.Robb

	Fix for this error:

	Could not find a part of the path 'D:\Build\++UE4+Dev-Core+Compile\Sync\Engine\Plugins\2D\Paper2D\Binaries\Win64\UE4Editor.modules'.

Change 3113864 on 2016/09/06 by Steve.Robb

	Misc static analysis fixes for VS2015 Update 2.

Change 3113918 on 2016/09/06 by Ben.Marsh

	Explicitly check for version manifest existing before trying to delete it, rather than swallowing the exception.

Change 3114293 on 2016/09/06 by Steve.Robb

	Static analysis fixes for Visual Studio Update 2.

Change 3115732 on 2016/09/07 by Steve.Robb

	Static analysis fix: warning C6262: Function uses '121180' bytes of stack:  exceeds /analyze:stacksize '81940'.  Consider moving some data to heap.

Change 3115754 on 2016/09/07 by Steve.Robb

	GObjectArrayForDebugVisualizers init order fix.
	Removal of obsolete FName visualizer helper code.

Change 3115774 on 2016/09/07 by Steve.Robb

	Fix for ICE by moving static variables into their own file and removing const return types.

	#jira UE-35597

Change 3116061 on 2016/09/07 by Steve.Robb

	Redundant LOCTEXT_NAMESPACE removed - was missed in CL# 3115774.

Change 3117478 on 2016/09/08 by Steve.Robb

	Static analysis fixes in third party code, using a new macro-based system.

Change 3119152 on 2016/09/09 by Steve.Robb

	TArray::RemoveAt and RemoveAtSwap with a bool Count is now a compile error.

Change 3119200 on 2016/09/09 by Steve.Robb

	Fix for destructors not being called in TSparseArray move assignment.

Change 3119568 on 2016/09/09 by Steve.Robb

	Fix for TSparseArray visualizer.

Change 3119591 on 2016/09/09 by Steve.Robb

	New MakeShared function which allocates the object and reference controller in a single block.

Change 3120281 on 2016/09/09 by Steve.Robb

	Fix for ICE on static analysis build.

	#jira UE-35596

Change 3120786 on 2016/09/12 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'SavedGame'.

Change 3120787 on 2016/09/12 by Steve.Robb

	Removal of TEnumAsByte on enum classes.

Change 3120789 on 2016/09/12 by Steve.Robb

	Static analysis fixes:

	warning C6385: Reading invalid data from 'D3D11X_CERAM_OFFSET_BY_SET_STAGE':  the readable size is '28' bytes, but '64' bytes may be read.
	warning C6101: Returning uninitialized memory '*pDescriptorDst'.  A successful path through the function does not set the named _Out_ parameter.

Change 3121234 on 2016/09/12 by Steve.Robb

	Unused ToBuildInfoString function declaration removed.

Change 3122616 on 2016/09/13 by Steve.Robb

	Static analysis fix: warning C6011: Dereferencing NULL pointer 'Compiler'.

Change 3123070 on 2016/09/13 by Steve.Robb

	Static analysis fix: warning C28182: Dereferencing NULL pointer. 'top' contains the same NULL value as 'edge' did.

[CL 3126145 by Robert Manuszewski in Main branch]
2016-09-15 00:21:42 -04:00
Mike Beach
dc0798f872 Copying //UE4/Dev-Blueprints to Dev-Main (//UE4/Dev-Main)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2910968 on 2016/03/15 by Dan.Oconnor

	PR #2152: Fix for UE-27652 (Contributed by SNikon)

	#jira UE-28368, UE-27652

Change 2911052 on 2016/03/15 by Dan.Oconnor

	Moving Pin tooltip generating into GetPinHoverText to correct some issues with hovertext being stale. Motivation was PR #2095: Keep ResultPin Tooltip up to date on SpawnActor and CreateObject Nodes (Contributed by mollstam)
	#jira UE-27345

Change 2912261 on 2016/03/16 by Maciej.Mroz

	Fixed DynamicClass loading.

	#codereview Robert.Manuszewski

Change 2912719 on 2016/03/17 by Phillip.Kavan

	[UE-28450] Cooked component template data now properly handles array property values having one or more items that differ from the default object.

	change summary:
	- modified FBlueprintEditorUtils::BuildComponentInstancingData() to generate additional data for individual array property values that differ from the component's class default object at cook time.
	- modified FBlueprintCookedComponentInstancingData::BuildCachedPropertyList() to parse cooked array property data at load time and generate a SubPropertyList representing the set of changed array property values.
	- modified UArrayProperty::SerializeItem() to handle an explicit custom property list when specified as part of the FArchive.
	- modified AActor::CreateComponentFromTemplateData() to set the 'PPF_Duplicate' PortFlag in order to emulate expected behavior that would otherwise occur when SDO is used for component instancing.
	- modified UActorComponent::Serialize() to not set 'bHasBeenCreated' on load for component template objects.

Change 2912749 on 2016/03/17 by Phillip.Kavan

	[UE-28450] CIS fix

Change 2912811 on 2016/03/17 by Phillip.Kavan

	[UEBP-112] Fix for a minor issue w/ branch nodes not including pure node chains in profiler tree view. Also reversed order of pure node chain display in tree view.

	#codereview Ben.Cosh

Change 2912890 on 2016/03/17 by Maciej.Mroz

	Blueprint C++ Conversion:
	- Constructor handles private (inaccessible) member variables.
	- no ensure failed when a component was removed in a static actor instance.

Change 2913115 on 2016/03/17 by Phillip.Kavan

	[UEBP-112] Fix for a potential profiler crash when processing a pure node event with a script code offset that also maps to an impure exec node in a different function context.

	(forgot to include this in the previous CL)

	#codereview Ben.Cosh

Change 2913266 on 2016/03/17 by Maciej.Mroz

	Blueprint C++ Conversion:
	- fixed super:: call for BP native event.

Change 2913313 on 2016/03/17 by Phillip.Kavan

	[UEBP-112] Fix reversed trace paths on pure nodes which caused missing pure timing data.

	(introduced in CL# 2912811)

	#codereview Ben.Cosh

Change 2915001 on 2016/03/18 by Maciej.Mroz

	Blueprint C++ Conversion: Fixed color construction

Change 2915306 on 2016/03/18 by Phillip.Kavan

	Fix /initProperties() optimization when PostLoad() changes a CDO property value away from the default value.

Change 2916140 on 2016/03/20 by Phillip.Kavan

	Improved array property handling for both InitProperties() and cooked component data optimizations.

	Note: This should allow for proper runtime handling of array properties with an Inner that is potentially also an array property.

	change summary:
	- added FObjectInitializer::InitArrayPropertyFromCustomList() to assist with initializing instances from array properties with an explicit sub-property list.
	- added FBlueprintCookedComponentInstancingData::BuildCachedArrayPropertyList() to assist with recursively building a sub-property list for array deltas.
	- added FBlueprintGeneratedClass::BuildCustomArrayPropertyListForPostConstruction() to assist with recursively building a sub-property list for array deltas.

Change 2916640 on 2016/03/21 by Ben.Cosh

	Support for tunnelling graphs in the blueprint profiler
	#UEBP-183 - Tunneling graph support
	#Proj Kismet, BlueprintProfiler

	- This removes the need to filter stat updates to prevent cyclic references ( now tunnel nodes are better described in terms of i/o pins )
	- Moves to the more complete function based mapping of graphs.
	- Precursor to final macro code

	codereview Phillip.Kavan

Change 2916902 on 2016/03/21 by Michael.Schoell

	The graph panel will now properly fade in splines when highlighting them.

	Added dynamic tick registering that will invalidate the graph panel, allowing it to update the current display per tick until the action is complete.

Change 2917087 on 2016/03/21 by Ben.Cosh

	CIS mac fix

Change 2917433 on 2016/03/21 by Dan.Oconnor

	PR #2163: Fix Bug for "IsDataOnlyBlueprint" Error (Contributed by cdsama)

	#jira UE-28534

Change 2917499 on 2016/03/21 by Mike.Beach

	Correcting an expectation that custom collision mappings were ordered (by collision channel). Now sorting the list before we translate them into trace types.

	#codereview Ori.Cohen, Lina.Halper, Zak.Middleton
	#rb Ori.Cohen, Zak.Middleton

Change 2919538 on 2016/03/23 by Maciej.Mroz

[CL 2937623 by Mike Beach in Main branch]
2016-04-07 21:18:08 -04:00
Matthew Griffin
bb70b349ce Merging CL 2804086 from //UE4/Release-4.11 to Dev-Main (//UE4/Dev-Main) to isolate copyright update
#lockdown Nick.Penwarden

[CL 2819020 by Matthew Griffin in Main branch]
2016-01-07 08:17:16 -05:00
Michael Schoell
75200e5a0d Cached node titles can now be forced to refresh without iteration over every node.
This will occur with every structural modification to any BP, node titles refresh only when visible.

[CL 2499923 by Michael Schoell in Main branch]
2015-04-02 11:16:23 -04:00
Ben Marsh
149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00
Jaroslaw Palczynski
7c41927cf4 Rename FPostConstructInitializeProperties to something simpler
Changed it with FObjectInitializer.

UECORE-7

[CL 2328384 by Jaroslaw Palczynski in Main branch]
2014-10-14 10:29:11 -04:00
Mike Beach
7b8425fc04 Reverting some perf optimizations that were resulting in stale node text (have to figure out when to clear the cached text).
TTP #346788

[CL 2308590 by Mike Beach in Main branch]
2014-09-24 14:15:13 -04:00
Michael Schoell
266efcffb5 "Set By-Ref Value" node will no longer appear in the new context menu system unless dragging off of an output reference pin (bringing it to parity with old system).
[CL 2305701 by Michael Schoell in Main branch]
2014-09-22 12:23:59 -04:00
Mike Beach
27b65e9cab Keeping nodes from spawning unessecery menu actions (was causing a big memory spike for the new menu system).
[CL 2292953 by Mike Beach in Main branch]
2014-09-10 17:09:26 -04:00
Mike Beach
1b87f7d3ee Deprecating EdGraphNode's GetTooltip() (in exchange for one that returns FText over FString).
[CL 2283396 by Mike Beach in Main branch]
2014-09-03 18:14:09 -04:00
Mike Beach
1dfbb2d829 Optimizing BP node titles (caching any that use FText::Format(), which is slow).
[CL 2282225 by Mike Beach in Main branch]
2014-09-02 19:08:09 -04:00