Commit Graph

23 Commits

Author SHA1 Message Date
robert manuszewski
b7568cc694 Fix for UE-90683: You can no longer delete conflicting variables
Refactored FindField into FindUField and FindFProperty to avoid confusion caused by the fact that FindField<UField> will no longer return FProperties.

#jira UE-90683
#rb Steve.Robb
#tests Basic editor functionality test, cooked and ran PC client and server, bot soak tests for two hours

#ROBOMERGE-OWNER: robert.manuszewski
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 12190998 in //UE4/Release-4.25/... via CL 12190999
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v661-12148976)

[CL 12191300 by robert manuszewski in Main branch]
2020-03-15 10:33:45 -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
Robert Manuszewski
7b6f840f7f Copying //UE4/Dev-Core @ 10708550 to Dev-Main (//UE4/Dev-Main)
#rb none

[CL 10708666 by Robert Manuszewski in Main branch]
2019-12-13 11:07:03 -05:00
sebastian nordgren
3e7e4917f0 Don't allow properties to be used as override pins in blueprints that aren't marked as editable in blueprints.
#jira UE-77354

#rb marc.audy

#ROBOMERGE-SOURCE: CL 7658997 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v372-7473910)

[CL 7659000 by sebastian nordgren in Main branch]
2019-07-30 04:20:17 -04:00
Robert Manuszewski
2752c82adc Merging //UE4/Dev-Main @ 4664414 to Dev-Core (//UE4/Dev-Core)
#rb none

[CL 4675693 by Robert Manuszewski in Dev-Core branch]
2019-01-02 00:55:51 -05:00
Steve Robb
3ecfe5151c TIndirectArray's placement new syntax deprecated, which can cause new/free or malloc/delete mismatches.
Also see UE-64535.

#rb martin.ridgers
#fyi luke.thatcher

[CL 4623722 by Steve Robb in Dev-Core branch]
2018-12-03 10:52:48 -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
Ben Marsh
4cf17e6c44 Merging //UE4/Release-4.18 @ 3660388 to Release-Staging-4.18 (//UE4/Release-Staging-4.18)
#rb none
#jira

[CL 3662266 by Ben Marsh in Staging-4.18 branch]
2017-09-25 14:08:25 -04:00
Marc Audy
b8b4a8b2d0 Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3510040)
#lockdown Nick.Penwarden

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

Change 3459524 by Marc.Audy

	Get/Set of properties that were previously BPRW/BPRO should error when used
	#jira UE-20993

Change 3460004 by Phillip.Kavan

	#jira UE-45171 - Fix C++ compilation failures during packaging caused by nativizing a Blueprint that overrides a native function with a 'TSubclassOf' parameter or return value.

	Change summary:
	- Modified FKismetCompilerContext::CreateParametersForFunction() to pass the 'CPF_UObjectWrapper' flag through to new function parameter properties during Blueprint compilation.

Change 3461210 by Phillip.Kavan

	#jira UE-44505 - Fix occasional Blueprint editor crashes that could occur while rebuilding the context menu from the action registry.

	Change summary:
	- Modified FBlueprintActionDatabase::FActionRegistry to use an FObjectKey as the key type. This allows us to test entries for UObject validity before rebuilding context menu items based on the action database.
	- Changed FBlueprintActionInfo::CachedOwnerClass to be a TWeakObjectPtr rather than a raw UClass* since it's based on the ActionOwner, which could potentially become invalid after the OwnerClass has been cached.
	- Modified FBlueprintActionDatabase::RefreshAssetActions() to exclude World assets if the WorldType is not EWorldType::Editor. This eliminates an issue with unreferenced "inactive" GC'd world objects being left in the BP action registry after cooking, at which point the keys could become invalid.
	- Added FBlueprintActionDatabase::DeferredRemoveEntry() to allow for scheduling removal of entries from outside of the database if they are known to be invalid.
	- Modified FBlueprintActionDatabase::Tick() to handle deferred entry removals.
	- Modified FBlueprintActionMenuBuilder::RebuildActionList() to both test actions for validity before building menu items and schedule removal of invalid actions on the next tick.

	Notes:
	- Alternatively we could just include UObject keys in the database's AddReferencedObject impl, but that would then prevent objects from ever being GC'd if they are not explicitly removed. For most entries the action database takes the approach of explicitly removing entries via delegate when the UObject is destroyed, so I chose to use a TWeakObjectPtr instead so that any entries that may not be getting explicitly removed via delegate will now simply become invalidated if the UObject key is GC'd due to not being referenced. I also set it up to clean and remove any entries (along with any associated node spawners) that are found to be invalid the next time we open the BP editor.

Change 3461373 by Lukasz.Furman

	fixed async navmesh rebuilds not kicking in for requests from navdata.bForceRebuildOnLoad
	#jira UE-44231

Change 3461409 by Lukasz.Furman

	fixed reenabling automatic navmesh generation in Editor Preferences
	#ue4

Change 3461550 by Ben.Zeigler

	#jira UE-45328 Fix local variable support for Redirectors and other save-time validation. We need to run the local variables to UProperty and back at save time
	Add new flag PPF_SerializedAsImportText which is used for BP pins/default values and indicates that something has been serialized as import text and so needs to handle string asset redirectors

Change 3462625 by Zak.Middleton

	#ue4 - Fix InterpToMovementComponent not setting velocity on the object it moves. Fix movement rate when substepping enabled (other related fixes to come).

	github PR #3620

Change 3462796 by Dan.Oconnor

	Fix for spamming BroadcastBlueprintReinstanced and for creating CDO at wrong time when compiling FrontEnd.uasset in OrionGame

	#jira UE-45434

Change 3462995 by Ben.Zeigler

	#jira UE-16941 Fix it so Load Asset node works with a literal value as well as a connected pin

Change 3463099 by Ben.Zeigler

	#jira UE-45471 Allow abstract base classes for primary assets

Change 3464809 by Marc.Audy

	Expose FVector2D / FVector2D to blueprints
	#jira UE-45427

Change 3467254 by Mieszko.Zielinski

	Added an AI helper BP function that supplies caller with a copy of navigation path given controller is currently following #UE4

Change 3467644 by Dan.Oconnor

	Fix for cook issues in ocean when using compilation manager, one issue caused by bad dependencies list, one issue caused by lack of subobject mapping in archetype reinstancing.
	#jira UE-45443, UE-45444

Change 3468176 by Dan.Oconnor

	Fix dependent blueprints being marked dirty when a blueprint is compiled

Change 3468353 by Michael.Noland

	UnrealHeaderTool: Improved the warning generated when missing Category= on a function or property declared in an engine module, and centralized the logic that determines if the module is engine or game

Change 3470532 by Dan.Oconnor

	Re-enable compilation manager

Change 3470572 by Dan.Oconnor

	Fix for pin paramters resetting when an archetype was reinstanced
	#jira UE-45619

	#rnx

Change 3471949 by Mason.Seay

	Adding Primary Assets for testing

Change 3472074 by Ben.Zeigler

	#jira UE-45140 Convert iterative cooking to use the Asset Registry as it's only mode, remove old hash and timestamp versions. This allows deleting the entire PackageDependencyInfo module
	Change the asset registry iteration to not compute a hash at all, and instead store the script package guids in it's cache.
	Expose bIgnoreIniSettingsOutOfDateForIteration and bIgnoreScriptPackagesOutOfDateForIteration in cooker settings, affects rather to listen to ini/script changes when doing iterative cooking

Change 3472079 by Ben.Zeigler

	With new incremental cook options, change Fortnite to never care about ini settings, but do care about code changes. This can be changed but from previous discussions we wanted to be more safe than fast here

Change 3473429 by Lukasz.Furman

	changed path following update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
	#jira UE-41884

Change 3473476 by Lukasz.Furman

	changed crowd simulation path update tick to allow working on "invalid, update pending" paths, solves AI getting stuck when navigation is rebuild very frequently (e.g. every tick from moving mesh)
	#jira UE-41884

Change 3473663 by Ben.Zeigler

	Fix it so base k2node registers framework version, this is needed for the assetptr fixup I previously added

Change 3473679 by Mason.Seay

	Slight cleanup of test map and added ability to teleport across level for easy navigation

Change 3473712 by Marc.Audy

	Do default value validation against the actual value of the default entry of an enum rather than the serialized empty autogenerated default value

Change 3474055 by Marc.Audy

	When nodes are reconstructed any pins that were previously linked or set to non-default values that have been removed will no longer simply vanish, but instead will remain in an Orphaned state until dealt with.
	#jira UE-41828

Change 3474119 by mason.seay

	Tweaked Force Feedback test

Change 3474156 by Marc.Audy

	Actually enable orphan pin retention

Change 3474382 by Ben.Zeigler

	Class.h Header and comment cleanup. Started this because IsChildOf did not have a comment and it's usage is a bit confusing

Change 3474386 by Ben.Zeigler

	Close popup window when adding asset class to audit window

Change 3474491 by Ben.Zeigler

	Remove ability for Worlds to not be saved as assets, this has been the default since 2014.

Change 3475363 by Marc.Audy

	Alt-click now works with orphaned pins
	#jira UE-45699

Change 3475523 by Marc.Audy

	Fixup Fortnite and Paragon content for orphaned pin errors and warnings

Change 3475623 by Phillip.Kavan

	#jira UE-45477 - Fix an EDL assertion on load in a nativized build with one or more Actor subobjects instanced via the EditInlineNew UI in the BP class defaults property editor.

	Change summary:
	- Modified FEmitDefaultValueHelper::OuterGenerate() to emit code to construct/initialize instanced subobject values that do not have the RF_DefaultSubObject flag set, and also to recursively handle nested subobjects for those values.
	- Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to alternatively emit a 'NewObject' assignment statement rather than a 'CreateDefaultSubobject' statement if only RF_ArchetypeObject is set on the source object value.

Change 3476008 by Dan.Oconnor

	Fix for failing to preload our super class's subobjects. Effectively moving UBlueprint::ForceLoad calls earlier in loading process. This only results in data resetting to your parent's parent's default value from your parent's default value.

	#jira UE-18765

Change 3476115 by Dan.Oconnor

	Fix missing category information for inherited functions when using compilation manager
	#jira UE-45660

	#rnx

Change 3476577 by Lukasz.Furman

	added early outs from navmesh layer generation when there's no walkable cells or contours to avoid allocating 0 bytes by next generation steps (behavior differs between platforms)
	#ue4

Change 3476587 by Phillip.Kavan

	#jira UE-45517 - Fix a regression in which dragging UMG widgets around in the designer view results in redundantly-compounded BP class properties and context menu actions.

	Change summary:
	- Modified SDesignerView::ClearDropPreviews() to move the widget that was removed from the tree into the transient package. This ensures that FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() won't pick them up.
	- Modified SDesignerView::ProcessDropAndAddWidget() to also consider any widgets not added to the 'DropPreviews' array as being transient (i.e. also move them into the transient package since they were not added to the tree).

	Notes:
	- The regression was introduced by the changes in CL# 3410168, and was merged to Main at CL# 3431398.

	#rnx

Change 3476723 by Dan.Oconnor

	Match old behavior wrt updating implemented interfaces in blueprints - this logic from FKismetEditorUtilities::CompileBlueprint was missing in compilation manager
	#jira UE-45468

	#rnx

Change 3476948 by Michael.Noland

	Framework: Changed AActor::FindComponentByClass (and AActor::GetComponentByClass by extension) to return nullptr when passed a nullptr class, rather than crashing

Change 3476970 by Ben.Zeigler

	Fix bug I introduced in 4.16 where assigning assets to multiple chunks did not work properly

Change 3477536 by Marc.Audy

	Don't display default value box on linked orphaned input pins

Change 3477835 by Marc.Audy

	Fix pins orphaned by deletion of an entry in a user-defined enum disappearing instead of remaining connected
	#jira UE-45754

Change 3478027 by Marc.Audy

	Minor performance optimization

	#rnx

Change 3478198 by Phillip.Kavan

	#jira UE-42431 - Remove an unnecessary ensure() when pasting an event node.

	Change summary:
	- Modified UEdGraphSchema_K2::CreateSubstituteNode() to no longer ensure() that we have a valid PreExistingNode; it's only used for logging when a substitute node is created in response to a conflict with an existing node.

Change 3478485 by Marc.Audy

	Eliminate extraneous error messages about orphaned pins on get/set nodes
	#jira UE-45749

	#rnx

Change 3478756 by Marc.Audy

	Fix fallout from changes to DoesDefaultValueMatchAutogenerated for user defined enums
	#jira UE-45721

	#rnx

Change 3478926 by Marc.Audy

	Non-blueprint type structs can no longer be made/broken
	Non-blueprint visible properties in structs will no longer have pins created for them
	#jira UE-43122

Change 3478988 by Marc.Audy

	DeltaTime for a tick function with a tick interval is now correct after disabling and then reenabling the tick function.
	#jira UE-45524

Change 3479818 by Marc.Audy

	Allow ctrl-drag off of orphan pins
	#jira UE-45803

Change 3480214 by Marc.Audy

	Modifications to user defined enumerations are now transacted
	#jira UE-43866

Change 3480579 by Marc.Audy

	Maintain all pin properties through transactions.
	#rn Reference pins that are removed and then restored via undo now correctly have the diamond icon instead of the standard circle.

Change 3481043 by Marc.Audy

	Make/Break of structs does not depend on having blueprint exposed properties.
	Splitting of a struct pin still requires blueprint exposed properties.
	#jira UE-45840
	#jira UE-45831

Change 3481271 by Ben.Zeigler

	Fix the AssetManager chunking code to use ChunkDependencyInfo instead of a hardcoded check for chunk 0
	Clean up ChunkDependencyInfo and make it properly public
	Move ShouldSetManager to be WITH_EDITOR
	Ported from WEX branch
	#RB peter.sauerbrei

Change 3481373 by Dan.Oconnor

	Reduce reliance on expensive FindDelegateSignature. 3275922 made warnings about a ambiguous search more likely as it preserved names of members on the REINST_ classes

	#jira UE-45704

Change 3481380 by Ben.Zeigler

	Change it so Struct and Object AssetRegistrySearchable properties do not show up in content browser, they are not helpful

Change 3482362 by Marc.Audy

	Fix properties not exposed to blueprint warnings for input properties on function graphs.
	#jira UE-45824

Change 3482406 by Ben.Zeigler

	#jira UE-45883 Fix Switch On Gameplay Tag Container node, and add switch nodes to TagCheck map

Change 3482498 by Ben.Zeigler

	Attempt to fix hot reload issues with Asset Manager. We need to reset and re-acquire the asset classes when rescanning, as they may be pointing to the replaced class

Change 3482517 by Lukasz.Furman

	fixed smart navlink update functions removing important flag
	#jira UE-45875

Change 3482538 by Marc.Audy

	When comparing float, vector, and rotator values for whether the the default matches the autogenerated do not use the string compare because differences in use of decimal or number of 0s after decimal are then considered not the same float
	#jira UE-45846

Change 3482773 by Marc.Audy

	Don't show default value or pass by reference for exec pins
	#jira UE-45868

Change 3482791 by Ben.Zeigler

	#jira UE-45800 Correctly dirty game mode blueprint when changing player controller/etc classes from game mode customization
	Fix it so MarkBlueprintAsStructurallyModified calls MarkBlueprintAsModified as several fixes were only in the second function

Change 3483131 by Zak.Middleton

	#ue4 - InterpToMovementComponent:

	- Fix velocity not zeroed when interpolation stops.
	- Various fixes when calculating velocity and time when substepping is enabled.
	- Improve accuracy of interpolation when looping and there is time remaining after the loop event is hit. Consume the remainder of the time after the event back in the loop (similar to handling a blocking impact).

	#jira UE-45690

Change 3483146 by Phillip.Kavan

	#jira UE-38358 - Propagate 'const' function flag from interface Blueprint to implementing Blueprints.

	Change summary:
	- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified() to call SkeletalRecompileChildren() on dependent BPs when the target is an interface BP.
	- Modified FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified::FRefreshHelper::SkeletalRecompileChildren() to set child BP status to BS_Dirty after compiling.
	- Modified ConformInterfaceByName() (FBlueprintEditorUtils) to use the interface's skeleton class for function iteration as well as to match the Function Entry node's 'const' setting to the interface UFunction's signature.

Change 3483340 by Ben.Zeigler

	Fix issue querying asset registry after a hot reload, make sure pending kill objects are never considered to be Assets

Change 3483548 by Michael.Noland

	Epic Friday: Playing around with some prototype traps

Change 3483700 by Phillip.Kavan

	Fix CIS cook crash introduced by last submit.

	#rnx


Change 3485217 by Ben.Zeigler

	#jira UE-45519 Fix regression introduced in 4.16 where it would no longer cook all maps when no explicit maps were specified in ini or game callback. Moved the code that detects changes before culture/default map code and hardened it to deal with the case where some engine packages were already in the list before it entered the function

Change 3485367 by Dan.Oconnor

	Avoid adding mappings to anim node when creating variables on the skeleton class and using the compilation manager

	#jira UE-45756

Change 3485565 by Ben.Zeigler

	#jira UE-45948 Fix compilation manager to properly reset variable default values after promoting a pin to local variable

Change 3485566 by Marc.Audy

	Fix crashes caused by undo/redo of user defined struct changes
	#jira UE-45775
	#jira UE-45781

Change 3485805 by Michael.Noland

	PR #3459: Fix for world origin shifting and SpringArmComponent location lag (Contributed by michail-nikolaev)

	#jira UE-43747

Change 3485807 by Michael.Noland

	PR #3485: Added additional textures field to paper 2d tileset class (Contributed by gryphonmyers)

	#jira UE-44041

Change 3485811 by Michael.Noland

	Framework: Fixed a bug in FStreamLevelAction::MakeSafeLevelName to avoid appending the PIE prefix multiple times (fixes functions like Unload Streaming Level when passed a full package name from an instanced streaming level)

Change 3485829 by Michael.Noland

	Framework: Made GetWorldAssetPackageFName BlueprintCallable so instanced levels can be unloaded

Change 3485830 by Michael.Noland

	PR #3568: add API declarations to ALevelStreamingVolume methods (Contributed by kayama-shift)
	#jira UE-45002

Change 3486039 by Michael.Noland

	PR #3495: UE-44014: Refreshing node error fixes (Contributed by projectgheist)
	- Empty out the ErrorMsg when a node gets refreshed to prevent the same error messages from compounding
	- Added support for split pins in UK2Node_Event::IsFunctionEntryCompatible
	- Added a missing check for the delegate pin name on the entry node part of UK2Node_Event::IsFunctionEntryCompatible

	#jira UE-44014

Change 3486093 by Michael.Noland

	PR #3379: Added GAMEPLAYABILITIES_API to all Ability Tasks. (Contributed by ryanjon2040)


	#jira UE-42903

Change 3486139 by Michael.Noland

	Blueprints: Added new config options for execution wire thickness when not debugging (DefaultExecutionWireThickness) and data wire thicknesses (DefaultDataWireThickness) to the Graph Editor Settings page
	#rn

Change 3486154 by Michael.Noland

	Framework: Speculative fix for CIS error about FStructOnScope
	#rnx

Change 3486180 by Dan.Oconnor

	Better match old logic for determining when to skip data only compile
	#jira UE-45830

Change 3487276 by Marc.Audy

	Fix crash when using Setter with a locally scoped variable

	#rnx

Change 3487278 by Marc.Audy

	Ensure that pin change notifications occur on all pin breaks unless it is part of a node being garbage collected

Change 3487658 by Marc.Audy

	Ensure that child actor template is created for subclasses
	#jira UE-45985

Change 3487699 by Marc.Audy

	Move non-templated elements out of FArchiveReplaceObjectRef and put them in FArchiveReplaceObjectRefBase

Change 3487813 by Dan.Oconnor

	Asset demonstrating a crash

Change 3488101 by Marc.Audy

	Fix crash with spawn/construct actor/object from class nodes when they no longer had any pins.
	Correctly orphan pins when a node goes to 0 pins.

Change 3488337 by Marc.Audy

	Editable pin base should not manually remove pin and let reconstruct node and rewire pins do their job
	#jira UE-46020

Change 3488512 by Dan.Oconnor

	ConstructObject nodes and SubInstances nodes use skeleton class when compilation manager can provide it

	#jira UE-45830, UE-45965
	#rnx

Change 3488631 by Michael.Noland

	Framework: Fixed a crash when loading a blueprint with a parent class of ALevelBounds caused by trying to register the class default object with a non-existent level

	#jira UE-45630

Change 3488665 by Michael.Noland

	Blueprints: Improve the details panel customization for optional pin nodes like Struct Member Get/Set
	- The category, raw name, and tooltip of the property are now included as part of the filter text as well
	- The property tooltip is now displayed when hovering over the property name
	- Code updated to use GET_MEMBER_NAME_CHECKED() where appropriate

Change 3489324 by Marc.Audy

	Fix recursion causing stack crash
	#jira UE-46038

	#rnx

Change 3489326 by Marc.Audy

	Fix cooking crash
	#jira UE-46031

	#rnx

Change 3489687 by mason.seay

	Assets for testing orphan pins

Change 3489701 by Marc.Audy

	Back out changelist 3487278 and 3489443 and make targetted changes for fixing up orphan pin cases where changing connections doesn't remove the pin.
	#jira UE-46051
	#jira UE-46052

	#rnx

Change 3490352 by Dan.Oconnor

	Fix for missing WidgetTree on Skeleton class - just look directly at the WidgetBlueprint

	#jira UE-46062

Change 3490814 by Marc.Audy

	Make callfunction/macro instances save all pins in orphan state more similar to previous behavior

	#rnx

Change 3491022 by Dan.Oconnor

	Properly clean up 'Key' property when we fail to create a value property
	#jira UE-45279

Change 3491071 by Ben.Zeigler

	#jira UE-45981 Fix rotation issues, vector/rotator pins with empty strings were not matching due to uninitialized memory.

Change 3491244 by Michael.Noland

	Blueprints: Add compile time message back to the output log (will not auto-open the output log if there were no warnings/errors)

	#jira UE-32948

Change 3491276 by Michael.Noland

	Blueprints: Fixed some bugs where a newly added item would fail show up in the "My Blueprints" tree if there was a filter active (e.g., when promoting a variable)
	- Centralized the logic for clearing the filter so it happens when we try and fail to select the item, rather than ad hoc in various other places
	- Made it only clear the filter if necessary, rather than (almost) always clearing it when adding an item
	#jira UE-43372

Change 3491562 by Marc.Audy

	Put back pin removal in to editable pin base and instead modify the pin destroy implementation to take down child split pins with it
	#jira UE-46020

	#rnx

Change 3491658 by Marc.Audy

	Unify RemoveUserDefinedPin implementations. Use version that has break to avoid size change assert

	#rnx

Change 3491946 by Marc.Audy

	ReconstructSinglePin no longer destroys OldPin (avoids oprhaned sub pins being destroyed before reparented)
	RewireOldPinsToNewPins now destroys OldPins at the end (calling code no longer reponsible)
	DestroyImpl now prunes out SubPins that had already been trashed

	#rnx

Change 3492040 by Marc.Audy

	Discard exec/then pins from a callfunction that has been converted to a pure node

	#rnx

Change 3492200 by Zak.Middleton

	#ue4 - Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size.

	Fixes possible regression from CL 3359561 that removed the Reset(...) entirely.

	#jira UE-46012

Change 3492290 by Ben.Zeigler

	#jira UE-46108 Fix StringLibrary Mid to never crash, Substring had already been fixed

Change 3492311 by Marc.Audy

	Don't clear the pin type if what you're connecting to's pin type is wildcard

	#rnx

Change 3492680 by Dan.Oconnor

	Handle missing generated class when using compilation manager - tested by forcing compile of BP_ParentClassIsMissingType.uasset

Change 3492826 by Marc.Audy

	Don't do pin connection list change notifications from DestroyPins while regenerating on load
	#jira UE-46112

	#rnx

Change 3492851 by Michael.Noland

	Core: Fixed various crashes when using UObject::CallFunctionByNameWithArguments with non-trivial argument types by properly initializing the allocated parameters

Change 3492852 by Michael.Noland

	Framework: Fixed a crash if ACharacter::FindComponentByClass was passed a nullptr class

Change 3492934 by Marc.Audy

	Fix ensure and crash delete macro containing orphaned pin

	#rnx

Change 3493079 by Dan.Oconnor

	Fix for crash when opening ThirdPersonAnimBlueprint and ThirdPersonAnimBlueprint_Perf then clicking 'Compile' button in ThirdPersonAnimBlueprint editor. Make sure the convenience members in the derived compilers get set when we relink child classes (which requires making cdos, which requires PropagateValuesToCDO..)

	#rnx

Change 3493346 by Phillip.Kavan

	#jira UE-40560 - Fix a reported crash when pasting nodes between unrelated Blueprint graphs.

	Change summary:
	- Modified FEdGraphUtilities::PostProcessPastedNodes() to ensure() on a NULL pin entry; this will allow execution to continue while still alerting us since it is an unexpected result. Also added an 'else' case to then remove the NULL entry so that PostPasteNode() implementations don't all have to guard against NULL pin entries. When the node is reconstructed, the NULL entry will be replaced with the correct pin initialized to its default values.
	- Modified UEdGraphPin::ImportTextItem() to add some additional logging to parse error cases when importing pin properties from source T3D text. Hopefully this gives us more information when this is encountered in the future.

Change 3493938 by Michael.Noland

	Blueprints: Prevent issues with renaming event dispatchers to contain periods (this may be disallowed in the future, but they no longer become uneditable)
	#jira UE-45780

Change 3493945 by Michael.Noland

	Blueprints: Fixed GetDelegatePoperty typos
	#rnx

Change 3493997 by Michael.Noland

	Blueprints: Partially reverting changes from CL# 3319966 to reroute nodes, restoring their alignment but losing the symmetrical grab handle changes
	#jira UE-45760

Change 3493998 by Dan.Oconnor

	Fix rare crash in RefreshStandAloneDefaultsEditor when the blueprint editor is opened and a blueprint had errors in it
	Note: I stumbled across this by running a unit test and then opening a blueprint in the BPE. CrashReporter indicates 3 crashes in the last 3 days

Change 3494025 by Michael.Noland

	Engine: Deleted some dead code (DEBUGGING_VIEWPORT_SIZES)

	#rnx

Change 3494026 by Michael.Noland

	Blueprints: V0 of a BlueprintCallable/BlueprintPure function fuzzer
	- Calls exposed methods with default parameters on classes it is able to spawn for now, which catches crashes due to null and /0 but not out of bounds issues or ones on classes it can't spawn due to classwithin, abstract, etc...
	- Can be called using Test.ScriptFuzzing, won't be integrated into automated tests until it is more fully fleshed out and all known issues are addressed
	#rnx

Change 3496382 by Ben.Zeigler

	Fix ensure when launching editor with cook on the side and incremental cooking enabled. It now flushes the background asset gather when calling the sync load all assets if one is in progress

Change 3496688 by Marc.Audy

	Avoid crashing in component instance data if (for some reason) the Actor's root component isn't properly set up
	#jira UE-46073

Change 3496830 by Michael.Noland

	Editor: Change FEditorCategoryUtils methods to take UStruct* instead of UClass*, as they are just reading metadata

	#rnx

Change 3496840 by Michael.Noland

	Framework: Remove the requirement for a local player in UCheatManager::CheatScript, so it can be be started from the server side (doesn't change the availability of the cheat manager, just allows things like the redundant "cheat cheatscript scriptname" to work)

Change 3497038 by Michael.Noland

	Fortnite: Added UFortDeveloperSettings to allow developers to auto-run cheats in PIE (does not occur in -game or outside of WITH_EDITOR builds)
	- You can specify a list of cheat commands to run when a pawn is possessed (also needs CL# 3496840 for cheatscripts)
	- You can also specify a set of items to grant to your local inventory when it is created

Change 3497204 by Marc.Audy

	Fix AbilitySystemComponent not being blueprint readable.

	#rnx

Change 3497668 by Mieszko.Zielinski

	Fixed a crash in BT editor when dealing with enum-typed Blackboard-keys pointing to enum values that have been deleted #UE4

	#jira UE-43659

Change 3497677 by Mieszko.Zielinski

	Added a community-suggested working solution to patching up dynamic navmesh after world offset #UE4

	Also, fixed a crash related to navmesh rebuilding if generation was configured to lazily gather navigatble geometry

	#jira UE-41293

Change 3497678 by Mieszko.Zielinski

	Marked AbstractNavData class as transient #UE4

	We never want to save it to levels

Change 3497679 by Mieszko.Zielinski

	Made NavModifierVolume responsive to editor-time property changes #UE4

	#jira UE-32831

Change 3497900 by Dan.Oconnor

	Fix bad skel reference when using construct object from class, just limiting scope of 3491946. To reproduce the bug just nativize QA Game, including the TM-Gameplay level
	#rnx

Change 3497904 by Dan.Oconnor

	Use K2Node_Event::FindEventSignatureFunction in order when directly generating the skeleton generated class to get event params correct
	#jira UE-46153

	#rnx

Change 3497907 by Dan.Oconnor

	Correctly set blueprint visibility flags on params for inherited functions when generating the skeleton class

	#rnx
	#jira UE-46186

Change 3498218 by mason.seay

	Updates to pin testing BP's

Change 3498323 by Mieszko.Zielinski

	Made UNavCollision instance assigned to StaticMesh not get re-created from scratch every single time any StaticMesh property changes #UE4

	Recreation was resulting in some of the UNavCollision's properties not getting saved and the way we were recreating the nav collision could also interfere with undo buffers

	#jira UE-44891

Change 3499007 by Marc.Audy

	Allow systems to hook Pre and PostCompile to do custom behaviors

Change 3499013 by Mieszko.Zielinski

	Made AbstractNavData class non-transient again #UE4

	Implemented AbstractNavData instances' transientness in a different manner.

	#jira UE-46194

Change 3499204 by Mieszko.Zielinski

	Introduced CrowdManagerBase, an engine-level class that can be extended to implement custom crowd management #Orion

	Extracted FRecastQueryFilter into a separate file, which will break some peoples' compilation.

	#jira UE-43799

Change 3499321 by mason.seay

	Updated bp for struct testing

Change 3499388 by Marc.Audy

	Allow the compiler log to store off potential messages from earlier in the compile cycle (early validation), that can be committed later (for example once pruning is completed).

Change 3499390 by Marc.Audy

	Generate the orphan pin error messages during EarlyValidation, but cache until the regular validation phase. This ensures all are generated, but only those that aren't pruned will be emitted.

	#rnx

Change 3499420 by Michael.Noland

	Engine: Introduced a new version of UEngine::GetWorldFromContextObject which takes an enum specifying the behavior on failures and updated all existing uses

	The new version intentionally does not have a default value for ErrorMode, callers need to think about which variant of behavior they want:
	- ReturnNull: Silently returns nullptr, the calling code is expected to handle this gracefully
	- LogAndReturnNull: Raises a runtime error but still returns nullptr, the calling code is expected to handle this gracefully
	- Assert: Asserts, the calling code is not expecting to handle a failure gracefully

	- Deprecated UEngine::GetWorldFromContextObject(object, boolean) and changed the default behavior for the deprecated instances to do LogAndReturnNull rather than Assert, based on the real-world call pattern
	- Introduced GetWorldFromContextObjectChecked(object) as a shorthand for passing in EGetWorldErrorMode::Assert
	- Made UObject::GetWorldChecked() actually assert if it would return nullptr (under some cases the old function could silently return nullptr while reporting bSupported = true, so it neither ensured nor checked)
	- Fixed a race condition in the 'is implemented' bookkeeping logic in GetWorld()/GetWorldChecked() by confining it to the game thread and added a check() to ImplementsGetWorld() to make it clear that it only works on the game thread

	The typical recommended call pattern is to use something like:

	if (UWorld* World = GEngine->GetWorldFromContextObject(WorldContextObject, EGetWorldErrorMode::LogAndReturnNull))
	{
	... Do something with World
	}

	Handling the failure case but requesting a log message (with BP call stack printed out) if it failed. This is now also the default behavior for old calls to UEngine::GetWorldFromContextObject(Object) (using the default value of bChecked=true), which is a behavior change but it matches how the function was being used in practice; the vast majority of call sites actually expected it to potentially fail and handled the nullptr case gracefully; very few places used the return value unguarded and wanted it to assert when passed a nullptr.
	#jira UE-42458

Change 3499429 by Michael.Noland

	Engine: Removed a bogus TODO (the problematic code had already been reworked)
	#rnx

Change 3499470 by Michael.Noland

	Core: Improved and corrected the comment for ensure()
	- It doesn't crash when checking is disabled (and hasn't since UE3, maybe ever?)
	- It now only fires once per ensure() by default, added a note about ensureAlways()

	#rnx

Change 3499643 by Marc.Audy

	Use TGuardValue instead of manually managing it

	#rnx

Change 3499874 by Marc.Audy

	Display <Unnamed> instead of nothing for Pins with blank display name in the compiler log

Change 3499875 by Marc.Audy

	When changing function parameter types, don't orphan a pin on the function entry/exit nodes (but do at the call sites)
	#jira UE-46224

Change 3499927 by Dan.Oconnor

	UField::Serialize no longer serialize's its next ptr,  UStruct::Serialize serializes all Children properties instead. This resolves a hard circular dependency between function libraries that EDL detected. It was resolved in an ad hoc way by the old linker

	#jira UE-43458

Change 3499953 by Michael.Noland

	Core: Created a variant of ensure that does runtime error logging without stopping in the debugger and some related functions that print a warning or error and may trigger a BP callstack (under the same rules as FFrame::KismetExecutionMessage)
	- These are WIP and the API may change in the future, but are being used to fix various crashes found by fuzzing BP exposed functions

Change 3499957 by Michael.Noland

	Animation: Added runtime errors for nullptr ControlRigs passed into BP methods

	#rnx

Change 3499958 by Michael.Noland

	Blueprints: Changed an ensure in UKismetNodeHelperLibrary::GetValidValue to a runtime error

	#rnx

Change 3499959 by Michael.Noland

	Engine: Downgrade various checks() to ensures() in the runtime asset cache functions exposed to Blueprints

Change 3499960 by Michael.Noland

	AI: Changed UBTFunctionLibrary to not check/ensure if passed a null world context object

Change 3499968 by Michael.Noland

	Editor: Fixed a couple of crashes in UEditorLevelUtils when passed nullptr arguments, and reformatted the entire file to fix widespread indentation issues

	#rnx

Change 3499969 by Michael.Noland

	Engine: Changed the verbosity of the failure log message of UEngine::GetWorldFromContextObject(..., LogAndReturnNull) from Warning to Error, so it always prints out a BP callstack

	#rnx

Change 3499973 by Michael.Noland

	Rendering: Fixed asserts in various UKismetRenderingLibrary methods if passed a nullptr for the WorldContextObject
	- Also fixed flipped warnings in the failure cases for EndDrawCanvasToRenderTarget

Change 3499979 by Michael.Noland

	Editor: Prevented a crash in UMaterialEditingLibrary::RecompileMaterial when passed a nullptr material

Change 3499984 by Michael.Noland

	Physics: Prevented a crash in UTraceQueryTestResults::AssertEqual when passed in nullptr for Expected

Change 3499993 by Michael.Noland

	Blueprints: Added validation when renaming variables, functions, components, multicast delegates, etc... to prevent names from containing some unacceptable characters
	- This validation only kicks in when trying to rename an item, so bad names in existing content are 'grandfathered in'
	- These bad names can cause bugs when working with content that contains these characters (e.g., names that contain a period cannot be found via FindObject<T>)
	- Currently only . is banned, but eventually we may expand it to include all of INVALID_OBJECTNAME_CHARACTERS

Change 3500009 by Michael.Noland

	Blueprints: Made the fuzzer skip classes declared in UnrealEd for now (some of the exposed methods change global state that can cause other tests to fail as the fuzzer isn't particularly sandboxed ATM)

	#rnx

Change 3500011 by Michael.Noland

	Android: Fixed a crash in UAndroidPermissionFunctionLibrary::AcquirePermissions when called with an empty array on non-Android platforms

Change 3500012 by Michael.Noland

	Editor: Prevent a crash in UEditorTutorial::OpenAsset when passed a nullptr Asset

Change 3500014 by Michael.Noland

	Engine: Changed FRuntimeAssetCacheFilesystemBackend::ClearCache(NAME_None) to not try to clear all cache directories (there is a separate no-args method for that)

Change 3500019 by Michael.Noland

	Core: Fixed some more issues with CallFunctionByNameWithArguments and initializing / destroying parameters
	- It was skipping the return value and incorrectly relying on the FirstPropertyToInit list which isn't set for by ref arguments

Change 3500020 by Michael.Noland

	Automation: Prevent UFunctionalTestingManager::RunAllFunctionalTests and UFunctionalTestingManager* UFunctionalTestingManager::GetManager from crashing when a manager cannot be created (because we can't route to a world)

Change 3501062 by Marc.Audy

	MakeArray AddInputPin is often used as part of node expansion, so need to move the transaction out of the function
	Fix inability to undo/redo pin additions to sequence node
	Add a K2Node_AddPinInterface to generalize the interface that K2Nodes implement to interact with SGraphNodeK2Sequence so it can be more generally used
	#jira UE-46164
	#jira UE-46270

Change 3501330 by Michael.Noland

	AI: Fix an error on shutdown when the CDO of UAIPerceptionComponent tries to clean up (as it was never registered in the first place)

	#jira UE-46271

Change 3501356 by Marc.Audy

	Fix crash when multi-editing actor blueprints
	#jira UE-46248

Change 3501408 by Michael.Noland

	Core: Improve the print-out of FFrame::GetStackTrace() / FFrame::GetScriptCallstack() when there is no script stack (e.g., when FFrame::KismetExecutionMessage is called by native code with no BP above in the call stack)

Change 3501457 by Phillip.Kavan

	#jira UE-46054 - Fix crash when launching a packaged build that includes a nativized Blueprint instance with a ChildActorComponent instanced via an AddComponent node.

	Change summary:
	- Removed UK2Node_AddComponent::PostDuplicate(). This eliminates the creation of redundant component templates that were being unnecessarily created during the Blueprint duplication that precedes the nativization pass.
	- Modified SMyBlueprint::OnDuplicateAction() to call MakeNewComponentTemplate() in response to a graph duplication action within the same Blueprint context (replaces previous UK2Node_AddComponent::PostDuplicate() impl).
	- Modified FEmitDefaultValueHelper::HandleSpecialTypes() to force AddComponent-based CAC-owned template objects in the emitted codegen to use the UDynamicClass as the Outer when instancing. This matches what we already do for SCS-based CAC-owned template objects - that logic was added in CL# 3270456, and this matches up with FBlueprintNativeCodeGenModule::FindReplacedNameAndOuter(), where we specifically handle CAC-owned template objects.

Change 3502741 by Phillip.Kavan

	#jira UE-45782 - Fix undo for index pin type changes.

	Change summary:
	- Modified SGraphPinIndex::OnTypeChanged() to call Modify() on the pin that was changed.

Change 3502939 by Michael.Noland

	Back out changelist 3499927

Change 3503087 by Marc.Audy

	Re-fixed ocean content as editor had also changed so had to take theirs and redo

	#rnx

Change 3503266 by Ben.Zeigler

	#jira UE-46335 Fix regression added in 4.16 where AssetRegistry GetAncesorClassNames/GetDerivedClassNames were not working properly in cooked builds for classes not in memory

Change 3503325 by mason.seay

	updated Anim BP to prep for pin testing

Change 3503445 by Marc.Audy

	Fix crash caused by OldPins being destroyed before rewiring

	#rnx

Change 3505024 by Marc.Audy

	Fix NodeEffectsPanel blueprint as it was using pins that no longer existed

	#rnx

Change 3505254 by Marc.Audy

	Don't include orphan pins when gather source property names
	If a property doesn't exist for a source property name just skip the property rather than crashing
	#jira UE-46345

	#rnx

Change 3506125 by Ben.Zeigler

	#jira UE-46311 Fix issues when blueprints are reloaded in place, it needs to remove them from root properly and sanitize the old class. It's still not clear why they are being reloaded in place

Change 3506334 by Dan.Oconnor

	Move UAnimGraphNode_Base::PreloadRequiredAssets up to K2Node, make sure nodes get a chance to preload data before compilation manager compiles newly loaded blueprints
	#jira UE-46411

Change 3506439 by Dan.Oconnor

	Return to pre 3488512 behavior for construct object nodes. This means that we can still get warnings on load when users compile after saving a blueprint, but the current behavior loses default values because it's lookng at the skeleton cdo

	#jira UE-46308

Change 3506468 by Dan.Oconnor

	Return to pre 3488512 behavior, as it causes bad default values
	#jira UE-46414

	#rnx

Change 3506733 by Marc.Audy

	Use the most up to date class to determine whether a property still exists when adding pins during reconstruction
	#jira UE-45965
	#author Dan.OConnor

	#rnx

Change 3507531 by Ben.Zeigler

	#jira UE-46449 Better fix to flush the asset registry queue when the editor requests a synchronous scan at startup. Sometimes it can take a few frames because of file handle delays

Change 3507924 by mason.seay

	Sanity save of TM-Gameplay and sublevels to maybe resolve level streaming issues

Change 3507962 by Marc.Audy

	Remake changes from CL# 3150796 wiped out by WEX-Staging merge to Main in CL# 3479958

	#rnx

Change 3509131 by Dan.Oconnor

	Compilation manager compile on load flow never called FindExportsInMemoryFirst, which is critical to prevent reloading of UBlueprintGeneratedClasses when Rename clears the export table

	#jira UE-46311

Change 3509345 by Marc.Audy

	CVar to disable orphan pins if necessary

	#rnx


Change 3509959 by Marc.Audy

	Protect against crashing due to large values in Timespan From functions

	#jira UE-43840

Change 3510040 by Marc.Audy

	Remove all the old unneeded ShooterGame test maps

	#rnx

[CL 3510073 by Marc Audy in Main branch]
2017-06-26 15:07:18 -04: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
Bob Tellez
c747634240 Copying //UE4/Fortnite-Staging to //UE4/Dev-Main (Source: //UE4/Fortnite-Staging @ 3026859)
#rb none
#lockdown Nick.Penwarden

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

Change 3016173 on 2016/06/16 by Lukasz.Furman

	fixed path updates in nested move tasks
	#jira FORT-25742

Change 3015722 on 2016/06/15 by Bob.Tellez

	#UE4 Avoiding a crash in FOnlinePartySystemMcp::PublishPartyInfoToPresence

	#JIRA OR-14102

Change 3015626 on 2016/06/15 by Bob.Tellez

	#UE4 Experimental fix for hitches involving spinlocks in windows.

	#JIRA FORT-25253

Change 3015473 on 2016/06/15 by Bob.Tellez

	#UE4 Compiling CrashReportClient in VS2013 instead of 2015 until we can figure out the appropriate way to install the redist on end-user machines.

	#JIRA FORT-25748

Change 3014721 on 2016/06/15 by Bob.Tellez

	#UE4 Returning false in cases where we want to skip replication of GameplayAbilities structures in NetDeltaSerialize. This fixes a bug where actors trying to become net dormant were not allowed because they were continuously reporting that they had data to replicate.

	#JIRA FORT-25689

Change 3014323 on 2016/06/15 by Rob.Cannaday

	When kicked from lobby beacon, restore the persistent party after leaving the previous persistent party
	#jira FORT-25407
	#tests front end parties, being kicked from outpost lobby

Change 3013712 on 2016/06/14 by Bob.Tellez

	#UE4 Fix DrawNetDriverDebug crash during map transitions

Change 3013418 on 2016/06/14 by Mark.Satterthwaite

	Don't release Metal buffers directly into the buffer pool, instead defer this until the command-buffer is known to have finished. This prevents the CPU from trying to modify the buffer while the GPU is still reading it if the GPU has fallen so far behind the CPU and therefore eliminates one possible cause of invalid access on the GPU.
	#jira FORT-24510

Change 3013394 on 2016/06/14 by Mark.Satterthwaite

	Report Metal command-buffer failures in MetalQuery in the same way as MetalCommandList and make them fatal as well. This ensures that the game doesn't try to continue if the commands failed as that is unsafe.
	#jira FORT-24808

Change 3012977 on 2016/06/14 by Fred.Kimberley

	Add a blueprint exposed function to evaluate an attribute from a given base value.

Change 3012755 on 2016/06/14 by Bob.Tellez

	#UE4 ExclusiveInternalFlags is now respected when passing in a null ObjectPackage in StaticFindObjectFastInternalThreadSafe

	#JIRA FORT-113

Change 3011948 on 2016/06/13 by Mark.Satterthwaite

	Workaround a Fortnite crash on launch for Mac OpenGL - one or more shaders are using the bit-cast operators (asuint(), asfloat()) that aren't available with GLSL version 150. In order to use them the GLSL version must be 330 which means switching the version tag at runtime. There will be Mac GPUs on 10.10.5 which don't correctly implement these instructions so this really isn't a fix - that would be to change shaders to not use SM5-level instructions.

Change 3011659 on 2016/06/13 by Bob.Tellez

	#UE4 Better handling of checked state in SGameplayTagWidget::IsTagChecked. Checking direct child tags was not sufficient and also not needed since HasTag allows you to follow parent tags when checking for an explicit tag.

Change 3011647 on 2016/06/13 by Rob.Cannaday

	Fix for multiple account login not kicking previous logins
	Client was not parsing response from backend.  Client was expecting content-type to be "application/json" (using FString::Equals).  Backend was returning "application/json;charset=UTF-8".  Changed usage from FString::Equals to FString::StartsWith
	#jira FORT-25452
	#tests multiple account login, frontend only

Change 3011436 on 2016/06/13 by Nick.Cooper

	#UE4 - Added bRelativeToInitialFOV option to UCameraAnim, defaulting to true. If turned off, camera anims will use the camera's current FOV as the initial FOV for the animation

	#jira FORT-23606

Change 3010411 on 2016/06/12 by Bob.Tellez

	#UE4 Fix for a possible case where a reference to an async loading package that would contain a level gets replicated before the level it contains is fully serialized, causing network loading code client side to attempt to load the package even though it is not allowed to load maps.

	#jira FORT-113, FORT-22222

Change 3009885 on 2016/06/10 by Billy.Bramer

	#jira FORT-25361
	[FORT-25361] Health and shield values are incorrect when slotting survivors with bonuses
	- Fix some resultant bugs from swapping attributes to be struct-based:
	   - Fix issue wherein the initial creation of the client-side aggregator could be initialized with the computed final value from the server, resulting in incorrect client-side math
	   - Fix issue where subsequent changes to the aggregator's base value on the client would be lost

Change 3009514 on 2016/06/10 by Bob.Tellez

	#UE4 Remove final usage of the task graph in WmfMediaPlayer to dodge shutdown crashes.

Change 3009197 on 2016/06/10 by Michael.Trepka

	Disabled reverb on Mac again. It's too expensive and doesn't fix FORT-22090 anyway

Change 3008392 on 2016/06/09 by Ben.Zeigler

	#jira FORT-25244
	Change it so application error codes like 400/404 do not cause the mcp to think it is disconnected from the backend. Only 408, 501, 502, and 504 now result in ServiceUnavailable.

Change 3008106 on 2016/06/09 by Lukasz.Furman

	fixed cutting corners near navmesh obstacles in detour crowd's string pulling
	#jira FORT-24981

Change 3008039 on 2016/06/09 by Bob.Tellez

	#UE4 Fixed conversion of TAssetPtr to UObject* properties for the case where the referenced object is not already loaded.

Change 3007864 on 2016/06/09 by Fred.Kimberley

	Updates to supporting attributes as structs. Adding functionality that makes them easier to use and override in projects.

Change 3007682 on 2016/06/09 by Michael.Trepka

	Re-enabled reverb on Mac

Change 3006971 on 2016/06/08 by Saul.Abreu

	#fortnite
	#jira FORT-25169
	Added node costs types, cost amounts, and remaining balance for each cost type to the NodePurchase analytics event.

Change 3006933 on 2016/06/08 by Chris.Gagnon

	Fixed up all the Power levle widget use cases.

	#Jira FORT-23472, FORT-24132, FORT-24144, FORT-24952, FORT-24924

Change 3006633 on 2016/06/08 by Dmitry.Rekman

	Linux: propagate ensure message to the CR (FORT-23030).

	- Without this, ensure() has a generic "SIGTRAP" error message, which is misleading for QA.

	#tests Tried "debug ensure" a few times, observed crash report (on the website) with the proper message
	#jira FORT-23030

Change 3006036 on 2016/06/08 by Rob.Cannaday

	Remove warning about missing "recentplayers" field.  The absence of the field is gracefully handled in the client and is only absent if the list is absent on the server.
	#jira FORT-18687

Change 3005216 on 2016/06/07 by Bob.Tellez

	#UE4 Avoiding layout invalidation if you use SetEnabled to set an identical enabled state. This is the same as how SetVisibility works.

Change 3004857 on 2016/06/07 by Rob.Cannaday

	Fix for incorrect reason displayed for inability to join party
	#jira FORT-13517

Change 3004811 on 2016/06/07 by Michael.Trepka

	Increased the number of input buses for CoreAudio 3D Mixer to support 64 audio channels. Also, added a warning to FAudioDevice::StartSources so it doesn't silently ignore sound source initialization failures.

Change 3004553 on 2016/06/07 by Lukasz.Furman

	fixed AnySpawners activating before navmesh unlock & rebuild
	#jira FORT-25067

Change 3004083 on 2016/06/07 by Bob.Tellez

	#UE4 Fixing GenerateApplicationPath for monolithic games.

Change 3003457 on 2016/06/06 by Bob.Tellez

	#UE4 Add a little info to a warning about failing to load a file for streaming.

Change 3003256 on 2016/06/06 by Bob.Tellez

	#UE4 Fixed a bug where not having a crash report would cause CrashReportClient not not properly exit on Mac

Change 3003146 on 2016/06/06 by jonathan.lindquist

	switching from a ceil and lerp technique to an if statement to provide better transform results.

Change 3002048 on 2016/06/06 by Daniel.Broder

	Support for setting Scalar and Vector Materials by Index rather than by name on MIDs.

	This feature allows much better performance in cases where large numbers of parameters are being set per frame and where the indices can be cached by the calling code in an initialization step.

	#RB Stephan.Delmer

	#CodeReview Bob.Tellez

	#UE4 #ReleaseNote

Change 3001315 on 2016/06/05 by Daniel.Broder

	Fixed crash that could occur when the FPhysScene* was null (the world has no PhysicsScene) in USkeletalMeshComponent::TermArticulated().  That could happen when loading a world without fully instantiating it, such as when right-clicking a world in the context browser rather than opening the world directly.

	#RB Stephan.Delmer

	Ori, I wasn't sure if the whole line (and the line below it using PScene) should be moved within the if (PhysScene) block or not, but this change seems to fix it.  If they can safely be moved, that would be presumably more efficeint though (since we'd only compare vs. nullptr once).

	#CodeReview Ori.Cohen

	#UE4 #Fortnite #BugFix

Change 3001001 on 2016/06/04 by Fred.Kimberley

	Added meta data about attributes and a post serialize function so we can recover attributes that have changed their type.

	Adding Fortnite specific attribute type specialization. This type enforces minimum and maximum values for attributes.

Change 3000613 on 2016/06/03 by Sam.Spiro

	#fort online 24747
	Take change from SamZ to get connection change delegates firing correctly
	Add a delegate to the frontend player controller to logout if the connection goes bad (when all retries have failed)

	#RB Ben.Zeigler

Change 3000482 on 2016/06/03 by Rob.Cannaday

	Fix problem where newly added friends don't recognize party invitations
	#jira FORT-19415

	From CL 2953432:
	Ignore presence updates for local user with different resources
	#jira OR-19929
	#tests front end party invites

Change 2998044 on 2016/06/02 by Lukasz.Furman

	fixed path box intersection test used to verify if hotspot is still required for updated path
	#jira FORT-24422

Change 2997948 on 2016/06/02 by Eric.Newman

	Moved ProdCom to bottom of file w/ deprecation comment, and clarified deprecation criteria.  Will probably need to be removed in //UE4 first and check for any fallout from EC jobs failing

Change 2997660 on 2016/06/02 by Chris.Wood

	Changed Linux server crash handler to force CRC log paths to match main engine log.
	[UE-30259] - Some server crashes are missing from crashreporter database

	Should allow us to have CRC logs uploaded to S3 along with main logs easily.

Change 2996702 on 2016/06/01 by Bob.Tellez

	#UE4 You can now use Edit Asset on Level assets in the reference viewer.

Change 2996683 on 2016/06/01 by Tim.Tillotson

	#fortnite
	Fix analytics comments, changed a few NULL to nullptr, and removed stale code.
	#JIRA FORT-23833

Change 2996548 on 2016/06/01 by Bob.Tellez

	#Fortnite Fixing up or deleting remaining references to homebase buildings. HBOnboarding_BuildHeroBuilding is the last reference now and it will be removed soon.

Change 2996322 on 2016/06/01 by Bob.Tellez

	#UE4 Fix for specifying more than one ini override on the command line

Change 2996306 on 2016/06/01 by Bob.Tellez

	#UE4 Delete unneeded and broken script to unlock files in xcode. Does not work since XCode 6.3.

Change 2995634 on 2016/06/01 by Jonathan.Lindquist

	imrpoving the wind magnitude and noise texture

Change 2995249 on 2016/05/31 by Bob.Tellez

	#UE4 Importing "INVALID" in FUniqueNetIdRepl no longer triggers the warning about using ImportText during cook.

Change 2992135 on 2016/05/26 by Bob.Tellez

	#UE4 extern for GuardedMain in LaunchLinux to fix nonunity

Change 2991912 on 2016/05/26 by jonathan.lindquist

	moved a texture sample into a new grouping

Change 2991738 on 2016/05/26 by Bob.Tellez

	#UE4 Level SaveAs now duplicates the world before saving it. This fixes a problem where level assets had the same guids for objects saved in them, which causes LazyObjectPtr issues when they are both in memory at the same time since they can not be uniquely identified.

Change 2991449 on 2016/05/26 by Lukasz.Furman

	AI Ftests will now delay spawning until navmesh is ready
	#fortnite

Change 2990705 on 2016/05/25 by Chris.Gagnon

	New stats panel, upon stat changes there is a delta pop up.
	New Squads Tab.
	Navigation from nodes to squad slots working.

	Added GetAnimationCurrentTime() to UMG Animation API.

	#RB Fred.Kimberley, Saul.Abreu

Change 2990286 on 2016/05/25 by Bob.Tellez

	#UE4 Fix logging error regarding max tag container replication size

Change 2990285 on 2016/05/25 by Bob.Tellez

	#UE4 Fix for crash when using "ShowDebug Game" client side

Change 2989977 on 2016/05/25 by Lukasz.Furman

	auto generating navigation bounds from building grid data, UnitNavMeshBounds volume is no longer required
	#fortnite

Change 2989174 on 2016/05/24 by Bob.Tellez

	#UE4 Added GC reason to the log message declaring that we are doing a GC during the cook commandlet.

Change 2988571 on 2016/05/24 by Jonathan.Lindquist

	submitting a fix for grass-like hierarchy layouts

Change 2985428 on 2016/05/20 by Bob.Tellez

	Experimenting with making UGS CIS not rebuild UBT when incremental building.

Change 2985319 on 2016/05/20 by Bob.Tellez

	#UE4 Removing NumActorChannelsReadyDormant stat as it is somewhat expensive to calculate.

Change 2985258 on 2016/05/20 by Billy.Bramer

	- Add GetFloatAttributeBase and GetFloatAttributeBaseFromAbilitySystemComponent to AbilitySystemBlueprintLibrary, allows querying for a base value of an attribute

Change 2985157 on 2016/05/20 by Bob.Tellez

	Experimenting with non-unity CIS

Change 2984664 on 2016/05/19 by Bob.Tellez

	#UE4 Pasting multiple cells into the property matrix no longer depends on your selected tiles, only your target cell. This is to match the behavior in Excel. Pasting a single cell into multiple cells remains unchanged.

Change 2984663 on 2016/05/19 by Bob.Tellez

	#UE4 Fixed a crash in the property matrix involving going into edit mode on rows that include widgets that are not editable.

Change 2984613 on 2016/05/19 by Bob.Tellez

	#UE4 You can now text import gameplay tags by directly using the tag string (i.e. Evolution.Hero.Soldier). This allows pasting these strings directly into the property matrix or other property-based editors.

Change 2984508 on 2016/05/19 by Billy.Bramer

	- Add constructors for the new struct based attribute

Change 2983883 on 2016/05/19 by Lukasz.Furman

	disabled movement mode in EQS testing pawn to prevent it from falling at PIE start
	#ue4

Change 2983770 on 2016/05/19 by Bob.Tellez

	#UE4 Fixed a bug where "OutputToScreen" BP messages would get stuck disabled after a screenshot (using a number of different codepaths). All screenshots now preserve the state of the "suppress messages" bool.

	#JIRA FORT-24303

Change 2982306 on 2016/05/18 by Bob.Tellez

	Also experimenting with not updating version files in UGS CIS.

Change 2982154 on 2016/05/18 by Lukasz.Furman

	changed navwalking geometry conforming to use building prop special case
	#jira FORT-24215

Change 2982019 on 2016/05/18 by Bob.Tellez

	Trying out incremental CIS builds

Change 2981192 on 2016/05/17 by Bob.Tellez

	#UE4 No longer staging movie files for dedicated server builds.

Change 2981023 on 2016/05/17 by Lukasz.Furman

	added new mode for NavWalking geometry conforming: prefer height closer to current one
	this should allow standing on top of props or walking off them in lower LOD, instead of moving at ground level - needed for survivors on low cars

Change 2980578 on 2016/05/17 by Lukasz.Furman

	added option for disabling path replan in crowd manager, turned it off in fortnite
	this must be handled through path update events and corridor assignment or else hotspot detection will break
	#jira FORT-24116

Change 2980364 on 2016/05/17 by Lukasz.Furman

	unified bounds tests for applying navmesh modifiers, always expanding bounds one cell height on Z axis to cover for voxelization roundings
	#jira FORT-24045

Change 2980360 on 2016/05/17 by Lukasz.Furman

	more detailed logs for using custom navlinks
	#jira FORT-23990

Change 2979880 on 2016/05/16 by Bob.Tellez

	#UE4 Raising scalability threshold for high end machines to adjust for modern hardware.

Change 2979522 on 2016/05/16 by Saul.Abreu

	#fortnite
	Added IsValid BP-exposed method for FGameplayAttribute (which is already a BP-exposed struct type), as there is no existing method of validating a gameplay attribute from blueprints. Useful for UI that represents an attribute.

Change 2977690 on 2016/05/13 by Daniel.Broder

	Made most FBox functions FORCEINLINE to improve DebugGame performance.

	#Fortnite: This change (just on IsInsideOrOn()) improved DebugGame performance for one part of Wind performance in Fortnite by ~18%.

	#CodeReview Bob.Tellez

	#UE4 #ReleaseNotes

Change 2977517 on 2016/05/13 by Daniel.Broder

	Added ForceInline to TIndexedContainerIterator<...>::operator!=(...).  This change improved DebugGame performance of a for loop using ranged-based syntax by ~27%!

	#CodeReview Bob.Tellez

	#Fortnite Wind perf improvement in DebugGame builds.

	#UE4 #ReleaseNote

Change 2974910 on 2016/05/11 by Bob.Tellez

	#UE4 More graceful handling of export class names in string asset references.

Change 2974095 on 2016/05/11 by Bob.Tellez

	#UE4 Fixed a bug where the RenderTargetOutputFormat for velocity rendering when using r.BasePassOutputsVelocity=True was using the wrong output index.

Change 2973663 on 2016/05/11 by John.Abercrombie

	[implemented by Ben.Marsh]

	UBT: Add a config setting to allow overriding the output directory for PCH files. To use, edit Engine\Saved\UnrealBuildTool\BuildConfiguration.xml and add:

		<BuildConfiguration>
			<PCHOutputDirectory>D:\TestOutputDir</PCHOutputDirectory>
		</BuildConfiguration>

Change 2972603 on 2016/05/10 by Saad.Nader

	#Fort Added the catalyst to the requirements of an evolvable item. It will only disable the evolution button if there is a catalyst.

Change 2971741 on 2016/05/09 by Bob.Tellez

	#UE4 Adding more context to an error message about serializing FUniqueNetIdRepl during cook.

Change 2969838 on 2016/05/06 by Bob.Tellez

	#Fortnite Added FN PS4 to build scripts

Change 2969542 on 2016/05/06 by Bob.Tellez

	#UE4 Fixed a crash that involved renaming SCS nodes during compile on load.

	#JIRA FORT-23754

Change 2969520 on 2016/05/06 by Billy.Bramer

	- Fix missing virtual destructor now that the initter struct has virtual members

Change 2969467 on 2016/05/06 by Billy.Bramer

	- Change FAttributeSetInitter to only contain pure virtual functions in preparation for making it easier to provide a custom implementation per game
	- Change the existing example FAttributeSetInitter to be called FAttributeSetInitterDiscreteLevels, make it derive from FAttributeSetInitter (DiscreteLevels is now allocated by default for now)
	- Add support for the new struct-based attribute type to FAttributeSetInitterDiscreteLevels
	- Fix typos in the initter
	- Convert usages of FString in AbilitySystemGlobals to FStringAssetReference, where appropriate
	- Allow attribute init data to come from several curve tables instead of just one
	- Remove reimport bindings from attribute metadata and global curve table, as neither was in use

Change 2969279 on 2016/05/06 by John.Abercrombie

	Behavior tree auxilary nodes, parallel tasks, active tasks, and aborting tasks shouldn't be ticked while the behavior tree is paused

Change 2966311 on 2016/05/04 by Rob.Cannaday

	Fix PS4 Orion players being able to whisper chat with non-Orion players
	#jira OR-20626
	#tests chat with launcher, fortnite
	(From //Orion/Dev-General CL 2963555)

Change 2966255 on 2016/05/04 by Bob.Tellez

	#UE4 Added an ensure to track down the cause of FORT-23604 and to gracefully recover from what would have been a crash.

	#JIRA FORT-23604

Change 2966083 on 2016/05/04 by Bob.Tellez

	#UE4 Adjusted material quality level for "Medium" settings to medium quality. High quality is still used in High and Epic scalability levels.

Change 2965669 on 2016/05/04 by Nicholas.Davies

	Change the restricted platform ID to PSN to prevent Fortnite > PS4 paragon whisper chat
	#OPP-5268 Integrate PS4 Chat block Social and OSS code to Fortnite, UT, and Launcher
	#RB Antony.Carter

Change 2965316 on 2016/05/03 by Ben.Zeigler

	#jira FORT-23600 Fix issue where stalled mcp queries never finished. This causes the query to properly fail
	Manual merge of CL #2907874:
	When MCP cancels a request due to its required auth failing, the http retry system would never kick off the complete delegates.
	This was due to the system only adding a request to its list once ProcessRequest was called, which does not happen in the above case.
	The fix is to add the request to the list when it is cancelled if we did not find it.

Change 2965164 on 2016/05/03 by Bob.Tellez

	#UE4 Fix for Crash in WmfMedia for when the player is destroyed while loading media. Thanks MaxP!

Change 2963754 on 2016/05/02 by Billy.Bramer

	- Switch ability system from binding to OnPostWorldCreation to PreLoadMap for its cleanup functions, as OnPostWorldCreation is called repeatedly with sublevels and can cause data loss
	- This is a bit of a stopgap, as where and when this happens should probably be configured per game (example: a long session game like an MMO would want to trigger these on something other than a map transition possibly)

Change 2962922 on 2016/05/02 by Lukasz.Furman

	fixed gameplay debugger in "simulate in editor" mode

Change 2959860 on 2016/04/28 by David.Nikdel

	#OGF #McpProfile
	- Add Profile Write Lock support to client API
	NOTE: Still need to finish backend support so haven't been able to test yet but this is enough for API hookup
	NOTE2: You may see a log message about "write lock unexpectedly released" when you do your first command after locking. This is expected because the backend isn't sending down the write lock timeout yet.
	#CodeReview: Ben.Zeigler

Change 2959810 on 2016/04/28 by Jonathan.Lindquist

	A few more saftey measures to warn the user of incorrect settings and faulty meshes. (In response a licensee's question)

Change 2959336 on 2016/04/28 by Bob.Tellez

	#UE4 Some improvements to asset save time: Added an early-out in PackageBackup to avoid inspecting files in cases where we don't care about the resutls. Also now using GetObjectsWithOuter when passing in a package list to GetObjectsInPackages (which probably should be renamed to GetAssetsInPackage)

Change 2958942 on 2016/04/28 by Jonathan.Lindquist

	Wrote a new portion of pivot painter 2 that unifies edge normals across multiple static meshes

Change 2958644 on 2016/04/27 by Jonathan.Lindquist

	lowering default recursive steps

Change 2956612 on 2016/04/26 by Jonathan.Lindquist

	A few new saftey measures

Change 2956197 on 2016/04/26 by Fred.Kimberley

	Fix a bug where a delegate won't be fired if the base value of an attribute has been changed and the attribute is the new type and doesn't have an aggregator.

	Fix a bug in gameplay effect tag matching where the deprecated tag is being checked but not the current one.

Change 2955386 on 2016/04/25 by Jonathan.Lindquist

	Fixed a ui bug related to the first time path geo generator is run
	Pivot painter 2 has a new feature. It duplicates each model in a hierarchy, combines them and then welds their verts.

Change 2955230 on 2016/04/25 by Billy.Bramer

	- Add a debug gameplay tag to string blueprint function, should only be used for debugging purposes

Change 2954899 on 2016/04/25 by Fred.Kimberley

	Added a new backing data type for gameplay attributes. The new type holds both the current and base values. Currently, this new type can coexist with numeric types for gameplay attributes.

Change 2953511 on 2016/04/22 by Bob.Tellez

	#UE4 Bumping up texture streaming pool allowance for min spec and redistributing mid an high to match. Also reduced mip bias at min spec.

Change 2953496 on 2016/04/22 by Chris.Gagnon

	When the console closes it now properly restores the viewports input state (both focus and capture).

Change 2952930 on 2016/04/22 by Lukasz.Furman

	fixed behavior tree getting stuck on instantly finished gameplay tasks
	#jira FORT-23041

Change 2951765 on 2016/04/21 by John.Abercrombie

	Removed unused code when initializing attribute sets

Change 2951617 on 2016/04/21 by Jonathan.Lindquist

	new elements to the grass shader to include wind influence

	also adding a test model

	and the latest version of canopy creator

Change 2950861 on 2016/04/21 by Jonathan.Lindquist

	Submitting a new material for grass so that it may react to the wind
	New wind test maps
	Functions to support global wind
	a new "fuzzy" mat functions
	Adding wind to the rift portals

Change 2950725 on 2016/04/20 by Bob.Tellez

	Fixups for non NewEC in GetLastSucceededCL

Change 2950695 on 2016/04/20 by Bob.Tellez

	Adding a small helper function to get the last succeeded CL of a given node.

Change 2950616 on 2016/04/20 by Maury.Mountain

	hook up the pivot (+ (0,-1,0)) section of material function that was causing offset motion from pivots

Change 2950207 on 2016/04/20 by Bob.Tellez

	#UE4 NoTimeouts is now respected even in the initial connection timeout. This fixes a bug where a large stall when starting pie causes you to transition to the entry map.

Change 2950162 on 2016/04/20 by Lukasz.Furman

	fixed processing of repath requests, added infinite loop protection
	#jira FORT-23090

Change 2949974 on 2016/04/20 by Lukasz.Furman

	another batch of fixes for hotspot tasks getting out of sync:
	abort move is now ignored if instigated by new task at goal, clearing hotspot data on dying while gameplay tasks are still accessible, ignoring move resume when controller is being destroyed

Change 2949923 on 2016/04/20 by Rob.Cannaday

	FOnlineIdentityMcp:  Cancel ClientAuthRequests and ExternalAuthRequests on shutdown
	#tests PIE start game / shutdown

Change 2949210 on 2016/04/19 by Bob.Tellez

	#UE4 Removing all local players from the game instance when it is shut down. This ensures that local players are properly torn down and events related to the lifespan of the player or controller are fired when exiting the game normally.

	#JIRA FORT-23024

Change 2947381 on 2016/04/18 by Rob.Cannaday

	Change XMPP presence, pubsub, messages, multi user chat, and chat's ref counting to be thread safe
	#jira FORT-22861
	#tests front end partying

Change 2945301 on 2016/04/15 by Michael.Trepka

	Reset SyncStatus in FAvfMediaVideoTrack::SeekToTime to fix issues with video not updating after rewind

Change 2944422 on 2016/04/14 by Michael.Trepka

	Fixed Mono compile errors in UAT

Change 2944375 on 2016/04/14 by Fred.Kimberley

	Changed how we handle missing gameplay tags so we now ensure once per missing tag instead of only ensuring on the first missing gameplay tag.

Change 2944040 on 2016/04/14 by Michael.Trepka

	Fixed a problem with CoreAudio AudioUnitGraph update caused by adding and deleting the same node in a single tick

Change 2943864 on 2016/04/14 by Lukasz.Furman

	fixed initialization order of gameplay debugger replicators on client
	#jira FORT-22885

Change 2943228 on 2016/04/13 by Bob.Tellez

	#UE4 Moved the addition of the IsDataOnly tag out of the if (ParentClass) block. Tags should not be dynamically added like this or else they can not be discovered by the editor which relies on asking the CDO for the tags relevant to an asset type.

Change 2942303 on 2016/04/13 by Daniel.Broder

	Added support to be able to set a CanvasRenderTarget2D NOT to clear to green whenever it's updated (so you can just draw pixels that have changed instead of always having to redraw everything.

	#RB Bob.Tellez

	#UE4

Change 2941919 on 2016/04/13 by Jonathan.Lindquist

	Adding a new maxscript that allows artists to procedurally generate trees.

Change 2941816 on 2016/04/13 by Saul.Abreu

	Demoted errors regarding widget-bound properties when first compling a new created widget blueprint - otherwise an ensure occurs.

Change 2941752 on 2016/04/12 by jonathan.lindquist

	adding a new function to optimize trees and fix a few issues

Change 2941519 on 2016/04/12 by Jonathan.Lindquist

	submitting a new warning regarding file unit types

Change 2940980 on 2016/04/12 by John.Abercrombie

	Turned Graphs off by default in the Visual Logger

Change 2940134 on 2016/04/11 by Billy.Bramer

	- Add support for new overrideable function OnPostDataImport to FTableRowBase; Can be override to perform custom parsing, fix-up, etc. per struct type whenever a data table is imported or reimported
	- Change row struct combo box on the data table importer to be sorted alphabetically

Change 2938828 on 2016/04/08 by David.Hunt

	#FN || Economy Rebuild
	Updating several code references to items and item paths that no longer exist, with Bob's help.

	This fixes FORT-22784 (hopefully for real) and several other build and item errors. It also indicates that the various redirector issues I have been experiencing were likely red herrings - they were C++ defaults that were showing up on items that had nothing set, as opposed to redirects that failed.

	#CodeReview Bob.Tellez, Ben.Zeigler, William.Ewen, Carlos.Cuello

Change 2938675 on 2016/04/08 by Lukasz.Furman

	fixed gameplay debugger displaying paths of killed pawns
	#fortnite

Change 2938426 on 2016/04/08 by Rob.Cannaday

	Implement new command line party invitation format into Fortnite
	#jira FORT-22685
	#tests launch with command line party invite
	Integrate CLs 2908339 and 2917498 from Orion

Change 2938367 on 2016/04/08 by Billy.Bramer

	- Mark the reimport data table factory with UNREALED_API for external use
	- Change CSVImportFactory to respect the class of existing data being reimported upon

Change 2937319 on 2016/04/07 by Lukasz.Furman

	improved gameplay task info in gameplay debugger tool

Change 2937178 on 2016/04/07 by Lukasz.Furman

	fixed aborting undermine tasks when player becomes reachable
	#jira FORT-22240, FORT-22077

Change 2937166 on 2016/04/07 by Saul.Abreu

	Fixed redundant typename in TPair that was causing clang compilation errors.

Change 2937093 on 2016/04/07 by Saul.Abreu

	#fortnite
	Made ElementSetType protected again in the Map family.

Change 2937044 on 2016/04/07 by Saul.Abreu

	Tweaked Set/Map family of data structures to expose the typedefs for their key, value, and pair types.

Change 2936940 on 2016/04/07 by Bob.Tellez

	#UE4 Fixed a bug that prevented the log summary from being printed after a blueprint compile.

Change 2936696 on 2016/04/07 by Bob.Tellez

	#UE4 Blueprint names are once again part of Blueprint compile log messages.

Change 2936572 on 2016/04/07 by Lukasz.Furman

	added more debug logs for tracking rare NaN error in player movement
	#jira FORT-19426

Change 2934892 on 2016/04/06 by Lukasz.Furman

	fixed updating hotspot information after all tasks instigated by it are finished
	#jira FORT-22515

Change 2933664 on 2016/04/05 by Michael.Trepka

	Fixed a rare crash in USoundNodeLooping::NotifyWaveInstanceFinished

Change 2933554 on 2016/04/05 by Lukasz.Furman

	fixed taker's portal move (priorities of gameplay tasks spawned by path following)
	#jira FORT-22482

Change 2933343 on 2016/04/05 by John.Abercrombie

	Changed FGameplayAbilityActorInfo's AnimInstance property to a SkeletalMeshComponent in case AnimInstances are ever changed on a SkeletalMeshComponent
	- AnimInstance can be used through an accessor

Change 2933300 on 2016/04/05 by Lukasz.Furman

	fixed number of spawned AI in FTests using PreSpawnDelay
	#fortnite

Change 2933171 on 2016/04/05 by Lukasz.Furman

	added PreSpawnDelay param to function test spawn sets
	#fortnite

Change 2931072 on 2016/04/01 by Lukasz.Furman

	changed pawn actions to gameplay tasks
	#jira FORT-21314

Change 2930987 on 2016/04/01 by Billy.Bramer

	- Add method to data table to get all rows as a type
	- Add metadata tag for data table rows to report columns as DataTableImportOptional, at which point they will not be warned against if missing during import (this allows games to do custom post-import fix-up or synthesis of data w/o expecting it to be imported)
	- Use new method for getting all tags to fix FORT-20563 "Gameplay tag table import checks by numerical row name for no reason"

Change 2929651 on 2016/03/31 by Nick.Cooper

	#Fortnite - Fixed Actor AttachmentReplication not being cleared on detachment, which would cause issues with the actor's location for clients joining in progress

	#jira FORT-21330
	#RB ben.zeigler

Change 2929360 on 2016/03/31 by Daniel.Broder

	Fixed bug where CanvasRenderTarget2D assets would crash on load in editor due to trying to update the asset during post-load.

	Thanks to Bob for what I needed to check to early-out and avoid the crash.

	#RB Bob.Tellez

	#UE4

Change 2928845 on 2016/03/31 by Nicholas.Davies

	Add fix for chat text not clearing
	#jira FORT-22049 Textbox does not clear when text is sent through chat

Change 2928574 on 2016/03/30 by Ben.Zeigler

	Fix issue with redirectors not working properly for blueprint function libraries. When a blueprint got regenerated it patched the old export, but failed to clear the "load failed" flag, so it would fail to find it when later pointed to by a redirect

Change 2928572 on 2016/03/30 by Ben.Zeigler

	#Jira FORT-20763
	Fix issue with "Server re-loading object" warning going off for deleted actors. It now only logs, and only for things that are going to successfully load

Change 2928436 on 2016/03/30 by Bob.Tellez

	#UE4 Added Canvas Render Target factory and asset type actions so you can create them in the content browser and search for them after they are created.

Change 2928372 on 2016/03/30 by Bob.Tellez

	#UE4 Added verbose message about animation assets that need to be resaved due to resetting the skeleton.

Change 2926805 on 2016/03/29 by Bob.Tellez

	#UE4 Made SetOverallScalabilityLevel virtual so game-specific features can be updated based on a single-value level.

Change 2926752 on 2016/03/29 by Bob.Tellez

	#UE4 Using DesiredScreenHeight is now optional. Often games use ResolutionQuality as purely a way to run better on slower machines so it should be controlled entirely by scalability.

Change 2926189 on 2016/03/29 by Rob.Cannaday

	Change storing HTTP requests as raw pointers to weak pointers with validity being checked via Pinning it
	#jira FORT-18947
	#jira OR-17695
	#tests golden path

Change 2924921 on 2016/03/28 by Lukasz.Furman

	removed log message showing as navmesh generation error when it skips over degenerated poly
	#fortnite

Change 2924843 on 2016/03/28 by Lukasz.Furman

	added more debug logs for navmesh's failed triangulate()
	#jira FORT-22186

Change 2924719 on 2016/03/28 by Lukasz.Furman

	fixed offmesh link connection issue causing path portal edges to have duplicated data and breaking hotspot detection traces
	#jira FORT-22132

Change 2921698 on 2016/03/24 by Lukasz.Furman

	fixed EQS instancing queries by debug name instead of using unique one, fixed debug name on asset duplication
	#fortnite

Change 2920395 on 2016/03/23 by Bob.Tellez

	#UE4 Added a call to FBaseServiceMcp::Shutdown() in FOnlineServiceAvailabilityMcp::Shutdown. The parent class doesnt do anything today, but this may fix a bug in the future.

Change 2920343 on 2016/03/23 by Ben.Zeigler

	In ConvertScalarUPropertyToJsonValue, move the execution of the custom callback up above the specific property types. This is needed to allow us to override the TextProperty export, and allows overriding in general. It can have a performance implication if the custom callback is very slow
	#RB josh.markiewicz

Change 2920310 on 2016/03/23 by Bob.Tellez

	#UE4 FOnlineServiceAvailabilityMcp::Init was not invoking the Superclass' Init

Change 2920254 on 2016/03/23 by Aaron.McLeran

	FORT-22090 Re-disabling reverb.

	Will add an ini-based disabling ability but this CL quickly re-disables to resolve volume issue on FN and (hopefully) bypass crash mentioned in FORT-22037

Change 2920249 on 2016/03/23 by Rob.Cannaday

	Fix for crash in FOnlinePartySystemMcp::InternalCleanUpPartyMember
	Don't trigger "member left" type events if we are leaving the party
	#jira FORT-20422
	#jira FORT-21726

Change 2920178 on 2016/03/23 by Bob.Tellez

	#UE4 Calling the platform-specific implementation of StackWalkAndDump when invoking StackWalkAndDumpEx. This fixes a bug in Windows where the first ensure does not produce a callstack.

Change 2919858 on 2016/03/23 by Bob.Tellez

	#UE4 Fix for ensure about accessing a CVar in UParticleModuleLight on a non-game thread using GetValueOnGameThread. I changed this to GetValueOnAnyThread.

Change 2919775 on 2016/03/23 by Bob.Tellez

	#UE4 Restoring enforced uniqueness in FUObjectAnnotationSparseSearchable and put all manipulations of InverseAnnotationMap in critical sections. This will make RemoveAnnotation fast again.

Change 2919233 on 2016/03/22 by Bob.Tellez

	#UE4 Removing a warning that is pretty chatty in our cooked logs.

Change 2919125 on 2016/03/22 by Bob.Tellez

	#UE4 Added ParticleLightQuality scalability setting since lower-end machines have trouble with particle lights. They are disabled on low and medium spec machines. HQ lights are only allowed on high-end machines.

Change 2918831 on 2016/03/22 by Bob.Tellez

	#UE4 Fixed a bug where WinInet response headers were not properly being trimmed.

	#JIRA FORT-22054

Change 2917722 on 2016/03/21 by Ben.Zeigler

	Remove FortniteServer module and move those classes to FortniteGame. The engine doesn't support classes that only exist on servers but not clients, so this fixes a lot of error spam bugs, and should improve compile times
	Resave assets that directly referenced FortniteServer

Change 2917588 on 2016/03/21 by Bob.Tellez

	#UE4 Fixed shadow variable that I introduced

Change 2914169 on 2016/03/17 by Ben.Zeigler

	Disable extra logging that was added to track down Auth issues, they look to be resolved

Change 2912626 on 2016/03/16 by Bob.Tellez

	#UE4 Success messages should not be warnings.

Change 2911171 on 2016/03/15 by Bob.Tellez

	#UE4 Minor fix to correctly display GetBulkDataSize in the warning in FUntypedBulkData::WaitForAsyncLoading

Change 2911170 on 2016/03/15 by Billy.Bramer

	#jira [FORT-6139]
	Trap models persist after destroying supporting structure in Outpost
	- Root issue was caused by error within network dormancy and queued bunches: If a dormant actor's open bunch ended up queued and a close bunch came in before the bunch was processed, the actor would never be properly destroyed client side as a result of not re-establishing the channel's actor pointer
	- Fix issue by changing close bunches to not be fully processed until their appropriate place in the queue. While this could cause superfluous execution (i.e. actor recreated just to be immediately destroyed), it should respect gameplay programming intent in regards to RPCs

Change 2911009 on 2016/03/15 by Bob.Tellez

	#UE4 Fixed a bug in UHierarchicalInstancedStaticMeshComponent where RemoveInstances would not rebuild the ClusterTree, causing SortedInstances to contain incorect indices in GetInstancesOverlappingBox. This is the behavior of the singular RemoveInstance so this is what should also be done in the plural RemoveInstances.

	#JIRA FORT-21605

Change 2910295 on 2016/03/15 by Bob.Tellez

	#UE4 World thumbnails no longer cull primitives. This is because the camera is very far away and if terrain pieces are culled, the level is not visible.

Change 2909324 on 2016/03/14 by Bob.Tellez

	#UE4 Since empty headers values cause GenerateHeaderBuffer to emit ERROR_HTTP_HEADER_NOT_FOUND, they are now omitted from the header buffer in WinInet.

Change 2905920 on 2016/03/11 by Lukasz.Furman

	fixed crowd simulation getting stuck with invalid velocity (moonwalking husks)
	#fortnite

Change 2905612 on 2016/03/11 by Bob.Tellez

	#UE4 Made the minimum quadtree size configurable in ProceduralFoliageSpawner. You need to reduce the minimum size a little if you are spawning very many small foliage meshes.

[CL 3027184 by Bob Tellez in Main branch]
2016-06-24 16:58:12 -04:00
Ben Marsh
f402006cb7 Merging //UE4/Release-4.11 to //UE4/Main (Up to CL#2867947)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2858603 on 2016/02/08 by Tim.Hobson

	#jira UE-26550 - checked in new art assets for buttons and symbols

Change 2858665 on 2016/02/08 by Taizyd.Korambayil

	#jira UE-25797 Added TextureLODSettings for Ipad Mini set all LODBias to 2.

Change 2858668 on 2016/02/08 by Matthew.Griffin

	Added InfiltratorDemo back into Rocket samples

	#jira UEB-591

Change 2858743 on 2016/02/08 by Taizyd.Korambayil

	#jira UE-25996 Fixed Import Error in TopDOwn Code

Change 2858776 on 2016/02/08 by Matthew.Griffin

	Added UnrealMatch3 to packaged projects

	#jira UEB-589

Change 2858900 on 2016/02/08 by Taizyd.Korambayil

	#jira UE-15234 Switched all Mask Textures to use the (Mask,No sRGB) Compression

Change 2858947 on 2016/02/08 by Mike.Beach

	Controlling more when VerifyImport() is ran - trying to  prevent Verify() from running when DeferDependencyLoads is on, and instead trying to fully verify every import upfront (where it's meant to happen) before serializing in the package's contents (to alleviate cyclic dependency complications).

	#jira UE-21098

Change 2858954 on 2016/02/08 by Taizyd.Korambayil

	#jira UE-25524 Resaved Sound Assets to Fix NodeGuid Warnings

Change 2859126 on 2016/02/08 by Max.Chen

	Sequencer: Release track editors when destroying sequencer

	#jira UE-26423

Change 2859147 on 2016/02/08 by Martin.Wilson

	Fix uninitialized variable bug

	#jira UE-26606

Change 2859237 on 2016/02/08 by Lauren.Ridge

	Bumping Match 3 Version Number for iTunes Connect

	#jira UE-26648

Change 2859434 on 2016/02/08 by Chad.Taylor

	Handle the quit and focus message pipe from the SteamVR SDK

	#jira UEBP-142

Change 2859562 on 2016/02/08 by Chad.Taylor

	Mac/Android compile fix

	#jira UEBP-142

Change 2859633 on 2016/02/08 by Dan.Oconnor

	Transaction buffer uniformly address subobjects and SCS created components via an array of names and a root object. This allows undo/redo to work reliably to any depth of object hierarchy. Removed FReferencedObject and replaced it with the robust FPersistentObjectRef.

	DefaultSubObjects of the CDO are now tagged as RF_Archetype at construction (logic in PropertyHandleImpl.cpp probably no longer required)

	Actors reinstanced due to blueprint compilation now have stable names, so that this name can be used to reference their subobjects.

	This is also part of the fix needed for UE-23335, completely fixes UE-26045

	This version of the fix is less aggressive about searching all the way up an object's outer chain before stopping. Fixes issues with parts of outer chain changing on PIE. Also doesn't add objects referenced by subobject name to any AddReference calls which fixes race conditions with GC.

	Also fixes bad logic in CopyPropertiesForUnrelatedObjects, which would create copies of subobjects that already existed because we were populating the ReferenceReplacementMap before adding all existing subobjects (always components in this case)

	#jira UE-26045

Change 2859640 on 2016/02/08 by Dan.Oconnor

	Removed debugging code..

	#jira UE-26045

Change 2859668 on 2016/02/08 by Aaron.McLeran

	#jira UE-26503 A Mixer with a Concatenator node won't loop with a Looping node

	- issue was the looping nodes weren't properly reseting all the child wave instances
	- also looping nodes weren't reporting the correct GetNumSounds() count for use with sequencer node

Change 2859688 on 2016/02/08 by Chris.Babcock

	Allow external access to runtime modifications to OpenGL shaders
	#jira UE-26679
	#ue4

Change 2859739 on 2016/02/08 by Chad.Taylor

	UE4_Win64_Mono compile fix

	#jira UEBP-142

Change 2859962 on 2016/02/09 by Chris.Wood

	Passing command line to Crash Report Client without stripping the project name.
	[UE-24959] - "Send and Restart" brings up the Project Browser
	#jira UE-24959

	Reimplement changes from Orion in UE 4.11
	Reimplementing the command line logging filtering over from Dev-Core (same change as CL 2821359 that moved this change into Orion)
	Reimplementing passing full command line to Crash Report Client (same change as CL 2858617 in Orion)

Change 2859966 on 2016/02/09 by Matthew.Griffin

	Fixed shadow variable issue that was causing build failure in NonUnity mode on Mac

[CL 2873884 by Ben Marsh in Main branch]
2016-02-19 13:49:13 -05:00
Mike Beach
73c6bbc883 Copying //UE4/Dev-Blueprints to Dev-Main (//UE4/Dev-Main)
#lockdown Nick.Penwarden

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

Change 2842642 on 2016/01/25 by Maciej.Mroz

	Blueprint C++ Conversion: fixed dependency (headers) list builder

Change 2842648 on 2016/01/25 by Maciej.Mroz

	AssetPtr has implicit constructor from StringReference

Change 2842652 on 2016/01/25 by Maciej.Mroz

	Minor improvements in Orion headers. Necessary to compile the project with converted Blueprints

Change 2842653 on 2016/01/25 by Maciej.Mroz

	Blueprint C++ Conversion:
	Split UberGraph into subfunctions

Change 2843917 on 2016/01/26 by Michael.Schoell

	Replacing variable nodes with other variable nodes will now correctly mark the Blueprint as structurally modified.

	#jira UE-24925 - Using "Replace variable with..." does not mark a blueprint as needing compilation

Change 2844300 on 2016/01/26 by Maciej.Mroz

	Blueprint C++ Conversion: improvements in constructor
	- UProperties for inaccessigle variables are reused
	- Arrays of structs use "StaticStruct()->InitializeStruct.." and diff-serialization.

Change 2845536 on 2016/01/27 by Ben.Cosh

	Refactor of the Blueprint Profiler core to enable execution wire heatmaps.

	Still to do:

	- Sequence node handling - spotted as a bug last minute
	- Some functions still require a refactor, I'll pick this is up in next changes
	- Alternative statistic display widgets
	- enable blueprint breakpoints when profiling?! not sure we want this but adding for visibility

Change 2845619 on 2016/01/27 by Michael.Schoell

	BP-Version bump to resolve TODO in K2Node_Event.

Change 2845824 on 2016/01/27 by Michael.Schoell

	BP-Version bump to resolve TODO in K2Node_FunctionEntry.

Change 2847390 on 2016/01/28 by Maciej.Mroz

	AssetPtr constructor from StringReference in explicit

Change 2847894 on 2016/01/28 by Maciej.Mroz

	Blueprint C++ Conversion:
	Fixed pathologically included headers.

Change 2848662 on 2016/01/29 by Ben.Cosh

	Fix for problems closing the blueprint editor introduced with CL 2845536

	#UE-26153 - Unable to open the same blueprint after closing blueprint editor.
	#UE-26090 - Crash when closing the editor with the blueprint editor open

Change 2848922 on 2016/01/29 by Maciej.Mroz

	Blueprint C++ Conversion:
	Removed unnecessary switch and StateStack in ubergraph subfunctions

Change 2848934 on 2016/01/29 by Maciej.Mroz

	 FEnumEditorUtils::EnsureAllDisplayNamesExist modifies UUserDefinedEnum::DisplayNames only when it's necessary
	It should fix the "Saving FText XXX which has been initialized from FString at cook time " warning

Change 2849251 on 2016/01/29 by Michael.Schoell

	Fixed issues with the "Set Members..." node for structs not providing modified literals and other by-value data in the output connection.

	Reworked the compiler to handle terms with bPassedByReference in new ways. Variables will always mark their terms as bPassedByReference and the "Set Members..." node will leverage the value to know whether it needs to create a local output variable on the node or forward the reference.

	Break nodes will adapt their output terms to reflect the state of the input term, effectively forwarding the bPassedByReference state.

	#jira UE-24451 - "Set Members..." node does not return by-ref as expected when the input pin is connected to a literal (or otherwise truly by-value) pin.

Change 2849263 on 2016/01/29 by Michael.Schoell

	Submit for missing file from CL# 2849251

Change 2849269 on 2016/01/29 by Michael.Schoell

	Improvements to localization support in SBlueprintPalette (items in the MyBlueprint window as well as the BP context menu when selecting nodes).

Change 2849925 on 2016/01/29 by Mike.Beach

	Hanlding deferred loading placeholder-classes in UObjectPropertyBase::CheckValidObject (considering placeholder objects valid, when loading with deferring is enabled).

Change 2850484 on 2016/01/31 by Maciej.Mroz

	Fixed crash when converting Widget Blueprint

Change 2850485 on 2016/01/31 by Maciej.Mroz

	Blueprint C++ Conversion:
	KCST_UnconditionalGoto requires switch, when it's generated by UK2Node_ExecutionSequence

Change 2850859 on 2016/02/01 by Ben.Cosh

	Fix for issue with debug instance filter causing an out of bounds access on the debug function stack array.
	#UE-25552 - Debugging specific instances of Fortnite's player pawn generic bp causes crashes
	#Proj UnrealEd

Change 2850997 on 2016/02/01 by Maciej.Mroz

	Blueprint C++ Conversion:
	Fixed a lot of errors caused by cl#2842642

Change 2851965 on 2016/02/01 by Mike.Beach

	Preventing pin watches from saving/retaining old split pins that have since been deleted (recombine).

	#jira  UE-26299

[CL 2865780 by Mike Beach in Main branch]
2016-02-12 17:00:45 -05:00
Matthew Griffin
bb70b349ce Merging CL 2804086 from //UE4/Release-4.11 to Dev-Main (//UE4/Dev-Main) to isolate copyright update
#lockdown Nick.Penwarden

[CL 2819020 by Matthew Griffin in Main branch]
2016-01-07 08:17:16 -05:00
Michael Schoell
663fc7445f Improvements to the usability of PostProcessSettings structure in Blueprints.
Make/Break/Set nodes will no longer show the overrides variables that are used as conditionals for other variables.

These values will automatically be set to true when their corresponding variable is made visible in the node and false if they are not visible.

Added a tooltip for the checkbox to enable these pins to explain the situation.

This feature changes the functionality of existing nodes, all affected cases will give a Warning until the Blueprint is recompiled.

#jira UE-18268 - Post process settings blueprint polish

[CL 2667807 by Michael Schoell in Main branch]
2015-08-25 12:43:09 -04:00
Michael Schoell
d0f3e3d7e7 Merging PR #680 to fix crashes when casting an Interface pin to an Object pin inside of Blueprints.
#jira UE-6503 - GitHub 680 : Fix: UE-6268: Implict cast stack corruption
#jira UE-6268 - The Editor may crash in PIE mode if the Engine was built from source code using the Debug Editor configuration.

[CL 2391686 by Michael Schoell in Main branch]
2014-12-17 16:12:53 -05: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
Maciej Mroz
f32d2a3583 Local Graph Varaibles. An early version of function FEventGraphUtils::PinRepresentsSharedTerminal, that tells if a pin represetns a terminal, that is truly shared. If not, it will be added to local varaibles.
Creating Terminals was slightly refactored.

#codereview Nick.Whiting, Michael.Noland

[CL 2311113 by Maciej Mroz in Main branch]
2014-09-26 11:32:41 -04:00
Mike Beach
d126d670c6 Catching the case where struct ref pins on the new set-struct-members nodes are left empty (now presenting the user a compiler error rather than a crash)
(TTP #342994)

#codereview Maciej.Mroz

[CL 2240368 by Mike Beach in Main branch]
2014-08-01 18:04:33 -04:00
Mikolaj Sieluzycki
4e71f89e00 CIS build fix.
[CL 2121895 by Mikolaj Sieluzycki in Main branch]
2014-06-30 10:50:21 -04:00
Maciej Mroz
16465aabb0 Blueprint: Structure Setter Node. First version.
#codereview Nick.Whiting

[CL 2121726 by Maciej Mroz in Main branch]
2014-06-30 06:59:25 -04:00