Files
UnrealEngineUWP/Engine/Source/Editor/BlueprintGraph/Private/K2Node_DynamicCast.cpp

537 lines
17 KiB
C++
Raw Normal View History

// Copyright Epic Games, Inc. All Rights Reserved.
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
#include "K2Node_DynamicCast.h"
#include "UObject/Interface.h"
#include "Engine/Blueprint.h"
#include "Framework/Commands/UIAction.h"
#include "ToolMenus.h"
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
#include "EdGraphSchema_K2.h"
Exclude node spawner actions for non-imported component types from the Blueprint graph context menu when Blueprint namespace editor features are enabled. Change summary: - Extended FBlueprintActionContext to include a weak ptr to the current IBlueprintEditor context. - Added ENUM_CLASS_FLAGS() for the FBlueprintActionFilter::EFlags enumeration (for use as bitflags). - Deprecated the current FBlueprintActionFilter constructor, replaced with a more explicitly-typed EFlags param. - FBlueprintActionFilter now internally stores its filter flags. Also added FBlueprintActionFilter::HasAnyFlags/HasAllFlags(). - Minor refactor to a few action filter delegates to query the filter flags locally rather than add bool flags to delegate payloads. - The FBlueprintActionFilter constructor now unsets the non-imported filter flag if Blueprint namespace editor settings are disabled. - BlueprintActionFilterImpl::IsNonImportedObject() now utilizes the filter context rather than iterate the Blueprints array to find open asset editors. - Added an override for UBlueprintComponentNodeSpawner::IsTemplateNodeFilteredOut(). This is now used to filter out any loaded or unloaded BP component types from the context menu. - Cleaned up display inconsistencies in the menu UI spec between loaded vs. unloaded "Add Component" node spawner actions in the context menu. - Added an FSoftObjectPath variant of IBlueprintEditor::IsNonImportedObject() (to support unloaded non-native component type entries which store the class object path). Implemented as FBlueprintEditor::IsNonImportedObject(FSoftObjectPath). - Added an override for UK2Node_DynamicCast::IsActionFilteredOut() to exclude cast operator actions for non-native component types if they are not imported into the current editor context. - Modified SBlueprintActionMenu, SBlueprintFavoritesPalette and SBlueprintLibraryPalette to include the current editor context in applicable action filter context(s). #jira UE-149760 #rb Ben.Hoffman #preflight 62753dd9e31cfc52d5bd0539 [CL 20077282 by Phillip Kavan in ue5-main branch]
2022-05-06 11:49:20 -04:00
#include "BlueprintEditorModule.h"
#include "BlueprintEditorSettings.h"
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
#include "Kismet2/CompilerResultsLog.h"
#include "DynamicCastHandler.h"
#include "EditorCategoryUtils.h"
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
#include "Kismet2/KismetEditorUtilities.h"
#include "ScopedTransaction.h"
Exclude node spawner actions for non-imported component types from the Blueprint graph context menu when Blueprint namespace editor features are enabled. Change summary: - Extended FBlueprintActionContext to include a weak ptr to the current IBlueprintEditor context. - Added ENUM_CLASS_FLAGS() for the FBlueprintActionFilter::EFlags enumeration (for use as bitflags). - Deprecated the current FBlueprintActionFilter constructor, replaced with a more explicitly-typed EFlags param. - FBlueprintActionFilter now internally stores its filter flags. Also added FBlueprintActionFilter::HasAnyFlags/HasAllFlags(). - Minor refactor to a few action filter delegates to query the filter flags locally rather than add bool flags to delegate payloads. - The FBlueprintActionFilter constructor now unsets the non-imported filter flag if Blueprint namespace editor settings are disabled. - BlueprintActionFilterImpl::IsNonImportedObject() now utilizes the filter context rather than iterate the Blueprints array to find open asset editors. - Added an override for UBlueprintComponentNodeSpawner::IsTemplateNodeFilteredOut(). This is now used to filter out any loaded or unloaded BP component types from the context menu. - Cleaned up display inconsistencies in the menu UI spec between loaded vs. unloaded "Add Component" node spawner actions in the context menu. - Added an FSoftObjectPath variant of IBlueprintEditor::IsNonImportedObject() (to support unloaded non-native component type entries which store the class object path). Implemented as FBlueprintEditor::IsNonImportedObject(FSoftObjectPath). - Added an override for UK2Node_DynamicCast::IsActionFilteredOut() to exclude cast operator actions for non-native component types if they are not imported into the current editor context. - Modified SBlueprintActionMenu, SBlueprintFavoritesPalette and SBlueprintLibraryPalette to include the current editor context in applicable action filter context(s). #jira UE-149760 #rb Ben.Hoffman #preflight 62753dd9e31cfc52d5bd0539 [CL 20077282 by Phillip Kavan in ue5-main branch]
2022-05-06 11:49:20 -04:00
#include "BlueprintActionFilter.h"
#define LOCTEXT_NAMESPACE "K2Node_DynamicCast"
namespace UK2Node_DynamicCastImpl
{
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
static const FName CastSuccessPinName("bSuccess");
}
UK2Node_DynamicCast::UK2Node_DynamicCast(const FObjectInitializer& ObjectInitializer)
: Super(ObjectInitializer)
, bIsPureCast(false)
{
}
void UK2Node_DynamicCast::AllocateDefaultPins()
{
const bool bReferenceObsoleteClass = TargetType && TargetType->HasAnyClassFlags(CLASS_NewerVersionExists);
if (bReferenceObsoleteClass)
{
Message_Error(FString::Printf(TEXT("Node '%s' references obsolete class '%s'"), *GetPathName(), *TargetType->GetPathName()));
}
ensure(!bReferenceObsoleteClass);
const UEdGraphSchema_K2* K2Schema = Cast<UEdGraphSchema_K2>(GetSchema());
check(K2Schema != nullptr);
if (!K2Schema->DoesGraphSupportImpureFunctions(GetGraph()))
{
bIsPureCast = true;
}
if (!bIsPureCast)
{
// Input - Execution Pin
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
CreatePin(EGPD_Input, UEdGraphSchema_K2::PC_Exec, UEdGraphSchema_K2::PN_Execute);
// Output - Execution Pins
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
CreatePin(EGPD_Output, UEdGraphSchema_K2::PC_Exec, UEdGraphSchema_K2::PN_CastSucceeded);
CreatePin(EGPD_Output, UEdGraphSchema_K2::PC_Exec, UEdGraphSchema_K2::PN_CastFailed);
}
// Input - Source type Pin
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
CreatePin(EGPD_Input, UEdGraphSchema_K2::PC_Wildcard, UObject::StaticClass(), UEdGraphSchema_K2::PN_ObjectToCast);
// Output - Data Pin
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
if (TargetType)
{
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
const FString CastResultPinName = UEdGraphSchema_K2::PN_CastedValuePrefix + TargetType->GetDisplayNameText().ToString();
if (TargetType->IsChildOf(UInterface::StaticClass()))
{
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
CreatePin(EGPD_Output, UEdGraphSchema_K2::PC_Interface, *TargetType, *CastResultPinName);
}
else
{
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
CreatePin(EGPD_Output, UEdGraphSchema_K2::PC_Object, *TargetType, *CastResultPinName);
}
}
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
UEdGraphPin* BoolSuccessPin = CreatePin(EGPD_Output, UEdGraphSchema_K2::PC_Boolean, UK2Node_DynamicCastImpl::CastSuccessPinName);
BoolSuccessPin->bHidden = !bIsPureCast;
Super::AllocateDefaultPins();
}
FLinearColor UK2Node_DynamicCast::GetNodeTitleColor() const
{
return FLinearColor(0.0f, 0.55f, 0.62f);
}
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 2973866) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2937390 on 2016/04/07 by Cody.Albert #jira UE-29211 Fixed slider to properly bubble unhandled OnKeyDown events Change 2939672 on 2016/04/11 by Richard.TalbotWatkin Made a change to how file check out notifications work. Now the dirty package state is processed at the end of every tick, meaning that packages which are dirtied and then cleaned again are not processed. This fixes an issue where a number of child blueprints were flagged as needing checkout when a parent blueprint was compiled. This also allows multiple packages which are dirtied at the same time to be treated as one transaction. #jira UE-29193 - "Files need check-out" prompt spams Blueprint users Change 2939686 on 2016/04/11 by Richard.TalbotWatkin A number of further improvements to mesh vertex color painting: * Lower LODs are now automatically fixed up for instances which were created in a previous bugged version of the engine. * Since lower LODs cannot currently have their vertex colors edited, their vertex colors are always derived from LOD0. * Fixed a bug when building lower LODs so that vertices in neighboring octree nodes are considered when looking for the nearest vertex from LOD0 which corresponds. * Fixed issue where static meshes with imported LODs would not have the lower LODs' override colors set when "Copy instance vertex colors to source mesh" was used (static meshes with generated LODs were always getting correct override colors). #jira UE-28563 - Incorrectly displayed LOD VertexColor until paint mode is selected Change 2939906 on 2016/04/11 by Nick.Darnell Automation - Adding several enhancements to the automation framework and improving the UI. * Tests in the UI now have a link to the source and line where they orginate. * There's now a general purpose latent lambda command you can use to run arbitrary code latently. * Added Inlined AddCommand for regular and networked commands to the base automation class, to avoid the use of the macro, which prevents breakpoints from working in lambda code. * Front end now has better column displays offering more room to the test name * Changed several events to the automation controller to multicast delegates so that many could hook them. * The UI now refreshes the selection after tests finish so that the output log updates. Change 2939908 on 2016/04/11 by Nick.Darnell Automation - The editor import/export tests are now a complex test and actually sperate out all the tests that can be run, some trickiness was required on the filenames so that they didn't expand into more child tests in the UI. (replacing .'s with _'s) Change 2940028 on 2016/04/11 by Nick.Darnell Automation - Removing the search box from the toolbar. It's now inlined above the test tree. Tweaking the padding to make it look more other windows and make everything not look so squished. Recursive expansion now works on tests. Change 2940066 on 2016/04/11 by Nick.Darnell Automation - Moving the filter group dropdown out of the toolbar and onto the line with the search box above the treeview - additional tweaks to it. Change 2940092 on 2016/04/11 by Jamie.Dale PR #2248: Datatable select next row (Contributed by FineRedMist) Change 2940093 on 2016/04/11 by Jamie.Dale PR #2248: Datatable select next row (Contributed by FineRedMist) Change 2940157 on 2016/04/11 by Jamie.Dale Fixing FTextTest due to some changes made to how currency is formatted Change 2940694 on 2016/04/12 by Richard.TalbotWatkin Fixed issue where vertex override colors were not being propagated correctly for generated lower LODs. #jira UE-29360 - Override Colors not propagated correctly to generated lower LODs Change 2942379 on 2016/04/13 by Richard.TalbotWatkin Fixed issue where entering PIE while selecting an actor in Mesh Paint mode could lead to a MeshPaintStaticMeshAdapter holding onto an invalid pointer to an old mesh component, and causing a crash upon leaving the mode. This can happen because, when loading a new streaming level, the proxy actor can be selected when starting PIE, which will subsequently be added to the tool's internal lists. This needs to be added as a GC reference so that it can be NULLed when forcibly destroyed. #jira UE-29345 - Crash occurs exiting the editor after enabling mesh paint mode and PIEing Change 2942947 on 2016/04/13 by Richard.TalbotWatkin Fixed crash when pasting a material function call node from one project to another in which it is not defined. #jira UE-27087 - Crash when pasting MaterialFunctionCall expressions into the material editor between projects Change 2943452 on 2016/04/14 by Richard.TalbotWatkin Updated F4 debug key binding to match what's in ShowFlags.cpp PR #2197 (contributed by mfortin-bhvr) Change 2943824 on 2016/04/14 by Alexis.Matte #jira UE-29090 Make sure we cannot open the color picker when a property is edit const Change 2943841 on 2016/04/14 by Alexis.Matte #jira UE-28924 tooltip was add for every hierarchy import option Change 2943927 on 2016/04/14 by Alexis.Matte #jira UE-29423 Add Obj support for scene importer Github PR #2272 Change 2943967 on 2016/04/14 by Richard.TalbotWatkin Added relevant fields from FBodyInstance to the FoliageType customizations. #jira UE-20138 - FoliageType has a FBodyInstance but only shows Collision Presets and not other FBodyInstance properties Change 2948397 on 2016/04/19 by Andrew.Rodham Moved FSlateIcon definition to SlateCore It was previously declared as SLATE_API, despite its header residing inside SlateCore. Reviewed by Jamie Dale. Change 2948805 on 2016/04/19 by Andrew.Rodham Editor: Deprecated FName UEdGraphNode::GetPaletteIcon(FLinearColor&); in favor of FSlateIcon UEdGraphNode::GetIconAndTint(FLinearColor&); to allow for icons in external style sets to be used. - Previously, all icons were assumed to reside within FEditorStyle, which is not the case and would create broken icons in the graph editor. All relevant code has been updated to use FSlateIcon structures instead of a simple name. - This change required a significant overhaul to FClassIconFinder to support FSlateIcons. To keep the API clean, FSlateIconFinder now deals with FSlateIcon class icon finding operations, and FClassIconFinder for the most part just adds actor specific logic. #jira UE-26502 Change 2950658 on 2016/04/20 by Alexis.Matte #jira UE-24333 Skinxx workflow, we now output an error if there is mix of material with skinxx and some with no skinxx suffix Change 2950663 on 2016/04/20 by Alexis.Matte #jira UE-29582 When exporting to fbx we have to export each material instance as one fbx material Change 2951240 on 2016/04/21 by Alexis.Matte #jira UE-28473 Make sure light are render properly after importing a fbx scene Change 2951421 on 2016/04/21 by Alexis.Matte #jira UE-29773 fbx skeletalmesh import now support mesh hierarchy Change 2955873 on 2016/04/26 by Richard.TalbotWatkin PR #2225: Fix working package directory from the launch profiles (Contributed by projectgheist) Change 2955965 on 2016/04/26 by Nick.Darnell Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 2956717 on 2016/04/26 by Andrew.Rodham Editor: World Outliner now correctly calls ProcessEditDelete on editor modes that have asked to process delete operations #jira UE-26968 Change 2956822 on 2016/04/26 by Andrew.Rodham Editor: Fixed actors not being removed from the scene outliner when they are added and removed on the same frame #jira UE-7777 Change 2956931 on 2016/04/26 by Nick.Darnell New Module - UATHelper - Moving the UAT launching code from the MainFrame module into a reusable module other modules can trigger. Change 2956932 on 2016/04/26 by Nick.Darnell Plugins - Now allowing you to package a plugin from the plugin browsing view. Still work in progress. Change 2957164 on 2016/04/26 by Nick.Darnell Hot Reload - Fixing hot reload, it no longer creates a temporary copy of the module manager. Making the copy constructor private on the module manager to prevent this in the future. Change 2957165 on 2016/04/26 by Nick.Darnell Fixing the Editor Mode plugin sample, it no longer provides a bad starting example for where to create your widgets. #jira UE-28456 Change 2957510 on 2016/04/27 by Nick.Darnell PR #2198: Git Plugin implement the Sync operation to update local files using the git pull --rebase command (Contributed by SRombauts) #jira UE-28763 Change 2957511 on 2016/04/27 by Andrew.Rodham Editor: Make favorites button on details panel non-focusable - This was preventing users being able to tab between value fields on the details panel Change 2957610 on 2016/04/27 by Nick.Darnell PR #1836: Git plugin: make initial commit when initializing new project (Contributed by SRombauts) #jira UE-24190 Change 2957667 on 2016/04/27 by Jamie.Dale Fixed crash that could happen in FTextLayout::GetLineViewIndexForTextLocation if passed a bad location #jira OR-18634 Change 2958035 on 2016/04/27 by Nick.Darnell Fixing the DesignerRebuild flag detection so that we can just refresh the slate widget without recreating the preview UObject, which causes the destruction of the details panel, and the slate widget recreation was the only part that was required. Change 2958272 on 2016/04/27 by Jamie.Dale Added FAssetData::GetTagValue to handle getting asset tag values in a type-correct way This allows type-conversion using LexicalConversion, and also has specializations for FString, FText, and FName. #jira UE-12096 Change 2958348 on 2016/04/27 by Jamie.Dale PR #2282: Slate font shutdown order fix (Contributed by FineRedMist) Change 2958352 on 2016/04/27 by Jamie.Dale Fixed the subtitle manager updating the wrong list of subtitles #jira UE-29511 Change 2958390 on 2016/04/27 by Jamie.Dale Removed some old placement-new style array insertions Change 2959360 on 2016/04/28 by Richard.TalbotWatkin Fixed potential crash when mesh painting actors whose geometry adapters are no longer registered. #jira UE-29615 - [CrashReport] UE4Editor_MeshPaint!FEdModeMeshPaint::DoPaint() [meshpaintedmode.cpp:1127] Change 2959724 on 2016/04/28 by Cody.Albert Merging hardware survey gating logic from 4.10 #jira UE-28666 Change 2959807 on 2016/04/28 by Cody.Albert Removed deprecated function call #jira UE-28666 Change 2959894 on 2016/04/28 by Cody.Albert Fix for scroll offset being clamped by content size, not scroll max #jira UE-20676 Change 2960048 on 2016/04/28 by Jamie.Dale Added FAssetData::GetTagValueRef to go along with FAssetData::GetTagValue #jira UE-12096 Change 2960782 on 2016/04/29 by Jamie.Dale Updating code to use the new FText aware asset registry tag functions #jira UE-12096 Change 2960885 on 2016/04/29 by Jamie.Dale Updating code to use the new FText aware asset registry tag functions #jira UE-12096 Change 2961170 on 2016/04/29 by Jamie.Dale Updating code to use the new FText aware asset registry tag functions #jira UE-12096 Change 2961171 on 2016/04/29 by Jamie.Dale Updating code to use the new FText aware asset registry tag functions #jira UE-12096 Change 2961173 on 2016/04/29 by Jamie.Dale Removed some inline duplication on the specialized template functions #jira UE-12096 Change 2963124 on 2016/05/02 by Jamie.Dale FExternalDragOperation can now contain both text and file data at the same time This better mirrors what the OS level drag-and-drop operations are capable of, and some applications will actually give you both bits of data at the same time. #jira UE-26585 Change 2963175 on 2016/05/02 by Jamie.Dale Updated some font editor tooltips to be more descriptive #jira UE-17429 Change 2963290 on 2016/05/02 by Jamie.Dale The Localise UAT command can now be run with a null localisation provider Change 2963305 on 2016/05/02 by Jamie.Dale Fixed minor typo Change 2963402 on 2016/05/02 by Jamie.Dale Cleaned up all the current localization key conflicts and warnings from gathering Engine code #jira UE-25833 Change 2963415 on 2016/05/02 by Jamie.Dale Rephrased a message that could generate a CIS warning #jira UE-25833 Change 2964184 on 2016/05/03 by Jamie.Dale Fixed duplicate "Font" entry in asset picker menu This was caused by PropertyCustomizationHelpers::GetNewAssetFactoriesForClasses using CanCreateNew rather than ShouldShowInNewMenu, as UFont has two factories, but one is supposed to be hidden from the UI. We also now make sure the factories are sorted by display name before being shown in the UI. #jira UE-24903 Change 2966108 on 2016/05/04 by Nick.Darnell Engine - Rearranging the order of ELoadingPhase's enums so that they match the loading order of modules. Change 2966113 on 2016/05/04 by Nick.Darnell [Engine Loop Change] UEngine now defines a Start() function, that subclasses can use to start game related things after initialization of the engine. This is done so that after the Init() call on UEngine, we can then perform a module load for the ELoadingPhase::PostEngineInit phase of loading, then inform the UEngine that it's time to start the game. Therefore, UGameEngine now tells the GameInstance to Start during this phase now. Change 2966121 on 2016/05/04 by Jamie.Dale Config writing improvements when dealing with property values This updates FConfigFile::ShouldExportQuotedString to make sure that a property value containing any characters that FParse::LineExtended will consume when parsing back in the config file (such as { and }, or a trailing \) cause the string to be quoted. This also adds FConfigFile::GenerateExportedPropertyLine to generate the INI key->value lines in a consistent and correctly escaped way, and makes sure that everything that writes out lines to a config file uses it. FConfigCacheIni::SetString and FConfigCacheIni::SetText have been updated to update the value even if it only differs by case. UObject::SaveConfig and UObject::LoadConfig have had some code whitespace fix-up (from a bad merge). Change 2966122 on 2016/05/04 by Jamie.Dale Added a setting to control dialogue wave audio filenames Change 2966481 on 2016/05/04 by Jamie.Dale PR #2336: BUGFIX: Selection of objects in the Content browser from WorldSettings (Contributed by projectgheist) Change 2966887 on 2016/05/04 by Jamie.Dale PR #2336: BUGFIX: Selection of objects in the Content browser from WorldSettings (Contributed by projectgheist) Change 2967488 on 2016/05/05 by Ben.Marsh Changes to support packaging plugins from the editor. * UBT now has an option to explicitly disable hot-reloading in any circumstances. * When running with -module arguments for a monolithic target, UBT will no longer try to relink the executable in source builds (so it's possible to compile plugin libs outside of an installed engine build without having already built UE4Game). * When packaging, a temporary host project is always generated in the output directory to avoid invalidating intermediates in the source directory. * An empty Config\FilterPlugin.ini file is written out with instructions on how to list additional files to package if it is not already present. Change 2967947 on 2016/05/05 by Nick.Darnell PR #2358: Properly display Mip Level Count and Format for UTexture2DDynamic Textures (Contributed by Allegorithmic) #jira UE-30371 Change 2968333 on 2016/05/05 by Jamie.Dale Fixed MultiLine not working with arrays of string or text properties - The detail customizations for FString and FText properties now read the meta-data off the correct property. - The UDS editor now lets you set the "MultiLine" meta-data on arrays of FString and FText properties. - Fixed changing the "MultiLine" flag on a UDS property not rebuilding the default value editor. - Fixed the default values panel in the UDS editor having a title area. #jira UE-30392 Change 2968999 on 2016/05/06 by Jamie.Dale Fixed infinite loop in the editor if a directory that is being watched is deleted #jira UE-30172 Change 2969105 on 2016/05/06 by Richard.TalbotWatkin Fixed issue where opening a submenu while the parent menu had a text box focused would lead to a crash. The graph node comment text widget now only dismisses all menus if the text commit info implies that it was committed by some user action. #jira UE-29086 - Crash When Typing a Node Comment and Hovering Over the Alignment Option Change 2969440 on 2016/05/06 by Jamie.Dale Significant performance improvements when pasting a large amount of text #jira UE-19712 Change 2969619 on 2016/05/06 by Andrew.Rodham Auto-reimport is now disabled inside an editor running in unattended mode Change 2969621 on 2016/05/06 by Jamie.Dale Added the ability to override the subtitle used on a dialogue wave This is useful for effort sounds, plus some other cases, such as characters speaking in a foreign language not known to the player. #jira UETOOL-795 Change 2970588 on 2016/05/09 by Chris.Wood Fix typo in operator expression in UEndUserSettings::SetSendAnonymousUsageDataToEpic() [UE-26958] - GitHub 2056 : Fixing typo in the operator #2056 Change 2971151 on 2016/05/09 by Chris.Wood Logging ensure fails as errors. Automated tests with ensure fails will be unsuccessful. [UE-19579] - If an ensure() fails within an automated test, the test can still show a positive result. [UE-26575] - GitHub 2030 : Add error-severity message to log on ensure. PR #2030 Change 2971267 on 2016/05/09 by Alexis.Matte Wrong parameter when calling GetImportOptions #jira UE-30299 Change 2972073 on 2016/05/10 by Richard.TalbotWatkin Fixed UModel methods which make surfaces as modified. #jira UE-28831 - Unable to undo material placement on BSP Change 2972329 on 2016/05/10 by Nick.Darnell Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 2972887 on 2016/05/10 by Alexis.Matte #jira UE-30167 We now import the geometric transform also when we uncheck the absolute transform in the vertex. Change 2973664 on 2016/05/11 by Nick.Darnell Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 2973717 on 2016/05/11 by Nick.Darnell Fixing compiler issues from main merge. #jira UE-30590 Change 2973846 on 2016/05/11 by Jamie.Dale Exposed FConfigValue::ExpandValue and added FConfigValue::CollapseValue These are both static and can be used to expand or collapse the macros used in our config files (mostly when dealing with paths), in code that has to deal with the config system, but isn't internal to the config system (mostly things that deal with default configs outside of UObjects). The old non-static version of FConfigValue::ExpandValue is now FConfigValue::ExpandValueInternal, which just calls FConfigValue::ExpandValue on SavedValue and ExpandedValue. This also changes some code that was using FString.Replace to use FString.ReplaceInline. This reduces allocations, and also allows us to avoid another string comparison to see whether the strings are identical (as ReplaceInline returns the number of replacements that were made). Change 2973847 on 2016/05/11 by Jamie.Dale Changing the loading phase in the localization dashboard now writes to the default config #jira UE-30482 Change 2973866 on 2016/05/11 by Jamie.Dale Deprecated some functions that were taking an unused position. These unused parameters caused confusion and lead to UE-30276. The old versions have been deprecated, and new versions without those parameters have been added. Existing code has been updated to call the non-deprecated version. - FViewportFrame::ResizeFrame - FSceneViewport::ResizeFrame - FSceneViewport::ResizeViewport [CL 2973886 by Nick Darnell in Main branch]
2016-05-11 11:05:13 -04:00
FSlateIcon UK2Node_DynamicCast::GetIconAndTint(FLinearColor& OutColor) const
{
static FSlateIcon Icon(FAppStyle::GetAppStyleSetName(), "GraphEditor.Cast_16x");
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 2973866) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2937390 on 2016/04/07 by Cody.Albert #jira UE-29211 Fixed slider to properly bubble unhandled OnKeyDown events Change 2939672 on 2016/04/11 by Richard.TalbotWatkin Made a change to how file check out notifications work. Now the dirty package state is processed at the end of every tick, meaning that packages which are dirtied and then cleaned again are not processed. This fixes an issue where a number of child blueprints were flagged as needing checkout when a parent blueprint was compiled. This also allows multiple packages which are dirtied at the same time to be treated as one transaction. #jira UE-29193 - "Files need check-out" prompt spams Blueprint users Change 2939686 on 2016/04/11 by Richard.TalbotWatkin A number of further improvements to mesh vertex color painting: * Lower LODs are now automatically fixed up for instances which were created in a previous bugged version of the engine. * Since lower LODs cannot currently have their vertex colors edited, their vertex colors are always derived from LOD0. * Fixed a bug when building lower LODs so that vertices in neighboring octree nodes are considered when looking for the nearest vertex from LOD0 which corresponds. * Fixed issue where static meshes with imported LODs would not have the lower LODs' override colors set when "Copy instance vertex colors to source mesh" was used (static meshes with generated LODs were always getting correct override colors). #jira UE-28563 - Incorrectly displayed LOD VertexColor until paint mode is selected Change 2939906 on 2016/04/11 by Nick.Darnell Automation - Adding several enhancements to the automation framework and improving the UI. * Tests in the UI now have a link to the source and line where they orginate. * There's now a general purpose latent lambda command you can use to run arbitrary code latently. * Added Inlined AddCommand for regular and networked commands to the base automation class, to avoid the use of the macro, which prevents breakpoints from working in lambda code. * Front end now has better column displays offering more room to the test name * Changed several events to the automation controller to multicast delegates so that many could hook them. * The UI now refreshes the selection after tests finish so that the output log updates. Change 2939908 on 2016/04/11 by Nick.Darnell Automation - The editor import/export tests are now a complex test and actually sperate out all the tests that can be run, some trickiness was required on the filenames so that they didn't expand into more child tests in the UI. (replacing .'s with _'s) Change 2940028 on 2016/04/11 by Nick.Darnell Automation - Removing the search box from the toolbar. It's now inlined above the test tree. Tweaking the padding to make it look more other windows and make everything not look so squished. Recursive expansion now works on tests. Change 2940066 on 2016/04/11 by Nick.Darnell Automation - Moving the filter group dropdown out of the toolbar and onto the line with the search box above the treeview - additional tweaks to it. Change 2940092 on 2016/04/11 by Jamie.Dale PR #2248: Datatable select next row (Contributed by FineRedMist) Change 2940093 on 2016/04/11 by Jamie.Dale PR #2248: Datatable select next row (Contributed by FineRedMist) Change 2940157 on 2016/04/11 by Jamie.Dale Fixing FTextTest due to some changes made to how currency is formatted Change 2940694 on 2016/04/12 by Richard.TalbotWatkin Fixed issue where vertex override colors were not being propagated correctly for generated lower LODs. #jira UE-29360 - Override Colors not propagated correctly to generated lower LODs Change 2942379 on 2016/04/13 by Richard.TalbotWatkin Fixed issue where entering PIE while selecting an actor in Mesh Paint mode could lead to a MeshPaintStaticMeshAdapter holding onto an invalid pointer to an old mesh component, and causing a crash upon leaving the mode. This can happen because, when loading a new streaming level, the proxy actor can be selected when starting PIE, which will subsequently be added to the tool's internal lists. This needs to be added as a GC reference so that it can be NULLed when forcibly destroyed. #jira UE-29345 - Crash occurs exiting the editor after enabling mesh paint mode and PIEing Change 2942947 on 2016/04/13 by Richard.TalbotWatkin Fixed crash when pasting a material function call node from one project to another in which it is not defined. #jira UE-27087 - Crash when pasting MaterialFunctionCall expressions into the material editor between projects Change 2943452 on 2016/04/14 by Richard.TalbotWatkin Updated F4 debug key binding to match what's in ShowFlags.cpp PR #2197 (contributed by mfortin-bhvr) Change 2943824 on 2016/04/14 by Alexis.Matte #jira UE-29090 Make sure we cannot open the color picker when a property is edit const Change 2943841 on 2016/04/14 by Alexis.Matte #jira UE-28924 tooltip was add for every hierarchy import option Change 2943927 on 2016/04/14 by Alexis.Matte #jira UE-29423 Add Obj support for scene importer Github PR #2272 Change 2943967 on 2016/04/14 by Richard.TalbotWatkin Added relevant fields from FBodyInstance to the FoliageType customizations. #jira UE-20138 - FoliageType has a FBodyInstance but only shows Collision Presets and not other FBodyInstance properties Change 2948397 on 2016/04/19 by Andrew.Rodham Moved FSlateIcon definition to SlateCore It was previously declared as SLATE_API, despite its header residing inside SlateCore. Reviewed by Jamie Dale. Change 2948805 on 2016/04/19 by Andrew.Rodham Editor: Deprecated FName UEdGraphNode::GetPaletteIcon(FLinearColor&); in favor of FSlateIcon UEdGraphNode::GetIconAndTint(FLinearColor&); to allow for icons in external style sets to be used. - Previously, all icons were assumed to reside within FEditorStyle, which is not the case and would create broken icons in the graph editor. All relevant code has been updated to use FSlateIcon structures instead of a simple name. - This change required a significant overhaul to FClassIconFinder to support FSlateIcons. To keep the API clean, FSlateIconFinder now deals with FSlateIcon class icon finding operations, and FClassIconFinder for the most part just adds actor specific logic. #jira UE-26502 Change 2950658 on 2016/04/20 by Alexis.Matte #jira UE-24333 Skinxx workflow, we now output an error if there is mix of material with skinxx and some with no skinxx suffix Change 2950663 on 2016/04/20 by Alexis.Matte #jira UE-29582 When exporting to fbx we have to export each material instance as one fbx material Change 2951240 on 2016/04/21 by Alexis.Matte #jira UE-28473 Make sure light are render properly after importing a fbx scene Change 2951421 on 2016/04/21 by Alexis.Matte #jira UE-29773 fbx skeletalmesh import now support mesh hierarchy Change 2955873 on 2016/04/26 by Richard.TalbotWatkin PR #2225: Fix working package directory from the launch profiles (Contributed by projectgheist) Change 2955965 on 2016/04/26 by Nick.Darnell Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 2956717 on 2016/04/26 by Andrew.Rodham Editor: World Outliner now correctly calls ProcessEditDelete on editor modes that have asked to process delete operations #jira UE-26968 Change 2956822 on 2016/04/26 by Andrew.Rodham Editor: Fixed actors not being removed from the scene outliner when they are added and removed on the same frame #jira UE-7777 Change 2956931 on 2016/04/26 by Nick.Darnell New Module - UATHelper - Moving the UAT launching code from the MainFrame module into a reusable module other modules can trigger. Change 2956932 on 2016/04/26 by Nick.Darnell Plugins - Now allowing you to package a plugin from the plugin browsing view. Still work in progress. Change 2957164 on 2016/04/26 by Nick.Darnell Hot Reload - Fixing hot reload, it no longer creates a temporary copy of the module manager. Making the copy constructor private on the module manager to prevent this in the future. Change 2957165 on 2016/04/26 by Nick.Darnell Fixing the Editor Mode plugin sample, it no longer provides a bad starting example for where to create your widgets. #jira UE-28456 Change 2957510 on 2016/04/27 by Nick.Darnell PR #2198: Git Plugin implement the Sync operation to update local files using the git pull --rebase command (Contributed by SRombauts) #jira UE-28763 Change 2957511 on 2016/04/27 by Andrew.Rodham Editor: Make favorites button on details panel non-focusable - This was preventing users being able to tab between value fields on the details panel Change 2957610 on 2016/04/27 by Nick.Darnell PR #1836: Git plugin: make initial commit when initializing new project (Contributed by SRombauts) #jira UE-24190 Change 2957667 on 2016/04/27 by Jamie.Dale Fixed crash that could happen in FTextLayout::GetLineViewIndexForTextLocation if passed a bad location #jira OR-18634 Change 2958035 on 2016/04/27 by Nick.Darnell Fixing the DesignerRebuild flag detection so that we can just refresh the slate widget without recreating the preview UObject, which causes the destruction of the details panel, and the slate widget recreation was the only part that was required. Change 2958272 on 2016/04/27 by Jamie.Dale Added FAssetData::GetTagValue to handle getting asset tag values in a type-correct way This allows type-conversion using LexicalConversion, and also has specializations for FString, FText, and FName. #jira UE-12096 Change 2958348 on 2016/04/27 by Jamie.Dale PR #2282: Slate font shutdown order fix (Contributed by FineRedMist) Change 2958352 on 2016/04/27 by Jamie.Dale Fixed the subtitle manager updating the wrong list of subtitles #jira UE-29511 Change 2958390 on 2016/04/27 by Jamie.Dale Removed some old placement-new style array insertions Change 2959360 on 2016/04/28 by Richard.TalbotWatkin Fixed potential crash when mesh painting actors whose geometry adapters are no longer registered. #jira UE-29615 - [CrashReport] UE4Editor_MeshPaint!FEdModeMeshPaint::DoPaint() [meshpaintedmode.cpp:1127] Change 2959724 on 2016/04/28 by Cody.Albert Merging hardware survey gating logic from 4.10 #jira UE-28666 Change 2959807 on 2016/04/28 by Cody.Albert Removed deprecated function call #jira UE-28666 Change 2959894 on 2016/04/28 by Cody.Albert Fix for scroll offset being clamped by content size, not scroll max #jira UE-20676 Change 2960048 on 2016/04/28 by Jamie.Dale Added FAssetData::GetTagValueRef to go along with FAssetData::GetTagValue #jira UE-12096 Change 2960782 on 2016/04/29 by Jamie.Dale Updating code to use the new FText aware asset registry tag functions #jira UE-12096 Change 2960885 on 2016/04/29 by Jamie.Dale Updating code to use the new FText aware asset registry tag functions #jira UE-12096 Change 2961170 on 2016/04/29 by Jamie.Dale Updating code to use the new FText aware asset registry tag functions #jira UE-12096 Change 2961171 on 2016/04/29 by Jamie.Dale Updating code to use the new FText aware asset registry tag functions #jira UE-12096 Change 2961173 on 2016/04/29 by Jamie.Dale Removed some inline duplication on the specialized template functions #jira UE-12096 Change 2963124 on 2016/05/02 by Jamie.Dale FExternalDragOperation can now contain both text and file data at the same time This better mirrors what the OS level drag-and-drop operations are capable of, and some applications will actually give you both bits of data at the same time. #jira UE-26585 Change 2963175 on 2016/05/02 by Jamie.Dale Updated some font editor tooltips to be more descriptive #jira UE-17429 Change 2963290 on 2016/05/02 by Jamie.Dale The Localise UAT command can now be run with a null localisation provider Change 2963305 on 2016/05/02 by Jamie.Dale Fixed minor typo Change 2963402 on 2016/05/02 by Jamie.Dale Cleaned up all the current localization key conflicts and warnings from gathering Engine code #jira UE-25833 Change 2963415 on 2016/05/02 by Jamie.Dale Rephrased a message that could generate a CIS warning #jira UE-25833 Change 2964184 on 2016/05/03 by Jamie.Dale Fixed duplicate "Font" entry in asset picker menu This was caused by PropertyCustomizationHelpers::GetNewAssetFactoriesForClasses using CanCreateNew rather than ShouldShowInNewMenu, as UFont has two factories, but one is supposed to be hidden from the UI. We also now make sure the factories are sorted by display name before being shown in the UI. #jira UE-24903 Change 2966108 on 2016/05/04 by Nick.Darnell Engine - Rearranging the order of ELoadingPhase's enums so that they match the loading order of modules. Change 2966113 on 2016/05/04 by Nick.Darnell [Engine Loop Change] UEngine now defines a Start() function, that subclasses can use to start game related things after initialization of the engine. This is done so that after the Init() call on UEngine, we can then perform a module load for the ELoadingPhase::PostEngineInit phase of loading, then inform the UEngine that it's time to start the game. Therefore, UGameEngine now tells the GameInstance to Start during this phase now. Change 2966121 on 2016/05/04 by Jamie.Dale Config writing improvements when dealing with property values This updates FConfigFile::ShouldExportQuotedString to make sure that a property value containing any characters that FParse::LineExtended will consume when parsing back in the config file (such as { and }, or a trailing \) cause the string to be quoted. This also adds FConfigFile::GenerateExportedPropertyLine to generate the INI key->value lines in a consistent and correctly escaped way, and makes sure that everything that writes out lines to a config file uses it. FConfigCacheIni::SetString and FConfigCacheIni::SetText have been updated to update the value even if it only differs by case. UObject::SaveConfig and UObject::LoadConfig have had some code whitespace fix-up (from a bad merge). Change 2966122 on 2016/05/04 by Jamie.Dale Added a setting to control dialogue wave audio filenames Change 2966481 on 2016/05/04 by Jamie.Dale PR #2336: BUGFIX: Selection of objects in the Content browser from WorldSettings (Contributed by projectgheist) Change 2966887 on 2016/05/04 by Jamie.Dale PR #2336: BUGFIX: Selection of objects in the Content browser from WorldSettings (Contributed by projectgheist) Change 2967488 on 2016/05/05 by Ben.Marsh Changes to support packaging plugins from the editor. * UBT now has an option to explicitly disable hot-reloading in any circumstances. * When running with -module arguments for a monolithic target, UBT will no longer try to relink the executable in source builds (so it's possible to compile plugin libs outside of an installed engine build without having already built UE4Game). * When packaging, a temporary host project is always generated in the output directory to avoid invalidating intermediates in the source directory. * An empty Config\FilterPlugin.ini file is written out with instructions on how to list additional files to package if it is not already present. Change 2967947 on 2016/05/05 by Nick.Darnell PR #2358: Properly display Mip Level Count and Format for UTexture2DDynamic Textures (Contributed by Allegorithmic) #jira UE-30371 Change 2968333 on 2016/05/05 by Jamie.Dale Fixed MultiLine not working with arrays of string or text properties - The detail customizations for FString and FText properties now read the meta-data off the correct property. - The UDS editor now lets you set the "MultiLine" meta-data on arrays of FString and FText properties. - Fixed changing the "MultiLine" flag on a UDS property not rebuilding the default value editor. - Fixed the default values panel in the UDS editor having a title area. #jira UE-30392 Change 2968999 on 2016/05/06 by Jamie.Dale Fixed infinite loop in the editor if a directory that is being watched is deleted #jira UE-30172 Change 2969105 on 2016/05/06 by Richard.TalbotWatkin Fixed issue where opening a submenu while the parent menu had a text box focused would lead to a crash. The graph node comment text widget now only dismisses all menus if the text commit info implies that it was committed by some user action. #jira UE-29086 - Crash When Typing a Node Comment and Hovering Over the Alignment Option Change 2969440 on 2016/05/06 by Jamie.Dale Significant performance improvements when pasting a large amount of text #jira UE-19712 Change 2969619 on 2016/05/06 by Andrew.Rodham Auto-reimport is now disabled inside an editor running in unattended mode Change 2969621 on 2016/05/06 by Jamie.Dale Added the ability to override the subtitle used on a dialogue wave This is useful for effort sounds, plus some other cases, such as characters speaking in a foreign language not known to the player. #jira UETOOL-795 Change 2970588 on 2016/05/09 by Chris.Wood Fix typo in operator expression in UEndUserSettings::SetSendAnonymousUsageDataToEpic() [UE-26958] - GitHub 2056 : Fixing typo in the operator #2056 Change 2971151 on 2016/05/09 by Chris.Wood Logging ensure fails as errors. Automated tests with ensure fails will be unsuccessful. [UE-19579] - If an ensure() fails within an automated test, the test can still show a positive result. [UE-26575] - GitHub 2030 : Add error-severity message to log on ensure. PR #2030 Change 2971267 on 2016/05/09 by Alexis.Matte Wrong parameter when calling GetImportOptions #jira UE-30299 Change 2972073 on 2016/05/10 by Richard.TalbotWatkin Fixed UModel methods which make surfaces as modified. #jira UE-28831 - Unable to undo material placement on BSP Change 2972329 on 2016/05/10 by Nick.Darnell Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 2972887 on 2016/05/10 by Alexis.Matte #jira UE-30167 We now import the geometric transform also when we uncheck the absolute transform in the vertex. Change 2973664 on 2016/05/11 by Nick.Darnell Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) Change 2973717 on 2016/05/11 by Nick.Darnell Fixing compiler issues from main merge. #jira UE-30590 Change 2973846 on 2016/05/11 by Jamie.Dale Exposed FConfigValue::ExpandValue and added FConfigValue::CollapseValue These are both static and can be used to expand or collapse the macros used in our config files (mostly when dealing with paths), in code that has to deal with the config system, but isn't internal to the config system (mostly things that deal with default configs outside of UObjects). The old non-static version of FConfigValue::ExpandValue is now FConfigValue::ExpandValueInternal, which just calls FConfigValue::ExpandValue on SavedValue and ExpandedValue. This also changes some code that was using FString.Replace to use FString.ReplaceInline. This reduces allocations, and also allows us to avoid another string comparison to see whether the strings are identical (as ReplaceInline returns the number of replacements that were made). Change 2973847 on 2016/05/11 by Jamie.Dale Changing the loading phase in the localization dashboard now writes to the default config #jira UE-30482 Change 2973866 on 2016/05/11 by Jamie.Dale Deprecated some functions that were taking an unused position. These unused parameters caused confusion and lead to UE-30276. The old versions have been deprecated, and new versions without those parameters have been added. Existing code has been updated to call the non-deprecated version. - FViewportFrame::ResizeFrame - FSceneViewport::ResizeFrame - FSceneViewport::ResizeViewport [CL 2973886 by Nick Darnell in Main branch]
2016-05-11 11:05:13 -04:00
return Icon;
}
FText UK2Node_DynamicCast::GetNodeTitle(ENodeTitleType::Type TitleType) const
{
if (TargetType == nullptr)
{
return NSLOCTEXT("K2Node_DynamicCast", "BadCastNode", "Bad cast node");
}
else if (CachedNodeTitle.IsOutOfDate(this))
{
// If casting to BP class, use BP name not class name (ie. remove the _C)
FString TargetName;
UBlueprint* CastToBP = UBlueprint::GetBlueprintFromClass(TargetType);
if (CastToBP != NULL)
{
TargetName = CastToBP->GetName();
}
else
{
TargetName = TargetType->GetName();
}
FFormatNamedArguments Args;
Args.Add(TEXT("TargetName"), FText::FromString(TargetName));
// FText::Format() is slow, so we cache this to save on performance
CachedNodeTitle.SetCachedText(FText::Format(NSLOCTEXT("K2Node_DynamicCast", "CastTo", "Cast To {TargetName}"), Args), this);
}
return CachedNodeTitle;
}
FText UK2Node_DynamicCast::GetTooltipText() const
{
if (TargetType && TargetType->IsChildOf(UInterface::StaticClass()))
{
return FText::Format(LOCTEXT("CastToInterfaceTooltip", "Tries to access object as an interface '{0}' it may implement."), FText::FromString(TargetType->GetName()));
}
UBlueprint* CastToBP = UBlueprint::GetBlueprintFromClass(TargetType);
if (CastToBP)
{
return FText::Format(LOCTEXT("CastToBPTooltip", "Tries to access object as a blueprint class '{0}' it may be an instance of.\n\nNOTE: This will cause the blueprint to always be loaded, which can be expensive."), FText::FromString(CastToBP->GetName()));
}
const FString ClassName = TargetType ? TargetType->GetName() : TEXT("");
return FText::Format(LOCTEXT("CastToNativeTooltip", "Tries to access object as a class '{0}' it may be an instance of."), FText::FromString(ClassName));
}
void UK2Node_DynamicCast::GetNodeContextMenuActions(UToolMenu* Menu, UGraphNodeContextMenuContext* Context) const
{
Super::GetNodeContextMenuActions(Menu, Context);
if (!Context->bIsDebugging)
{
{
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3544039) #lockdown Nick.Penwarden #rb none #rnx ===================================== MAJOR FEATURES + CHANGES ===================================== Change 3343905 by Dan.Oconnor ResolveMember optimizations and moved into cpp. ResolveMember<UFunction> now checks UClass::FuncMap before doing more expensive searches Change 3346637 by Ben.Zeigler Actually fix in non editor builds Change 3355484 by Dan.Oconnor Back out FMemberReference Optimization Change 3425833 by Ben.Zeigler #jira UE-31749 Fix it so Undo works properly when modifying a local variable #jira UE-44736 Fix it so changing the type of a local variable correctly resets the default value Change 3510091 by Marc.Audy Expose on Spawn functional test #rnx Change 3510100 by Marc.Audy Fix spelling error #rnx Change 3510132 by Marc.Audy Fix issues with marking a widget blueprint class as abstract Change 3510133 by Marc.Audy Minor code cleanup #rnx Change 3510178 by Ben.Zeigler #jira UE-46500 Fix it so editor-only and transient stuct members are not serialized for literal blueprint structs. It's unsafe to serialize them because they may not exist in the cooked build Change 3510466 by Ben.Zeigler Start adding basic ability system tests to enginetest, very minimal so far Change 3511295 by Marc.Audy Fix wasted work going weak -> object -> weak -> object #rnx Change 3511824 by Marc.Audy Fix spelling error in tooltip #jira UE-46515 #rnx Change 3514446 by Ben.Zeigler Fix ActorBoundEvent and ComponentBoundEvent to always refresh their event signature from the delegate property they are bound to. This is required to correctly deal with delegate signatures being moved or renamed. Both types now do the fixup one time, in ReconstructNode. Change 3514578 by Marc.Audy Move clearing of the actor component need end of frame update mark to base class instead of just primitive component Change 3514583 by Ben.Zeigler Better fix to last delegate checkin that also handles moving functions between modules but not renaming Change 3515325 by Dan.Oconnor Fix for rare orphan pin false positive, rare exposed on spawn false positive #rnx Change 3515761 by Marc.Audy fix shipping configuration #rnx Change 3515772 by Marc.Audy Fix static analysis warnings #rnx Change 3516287 by Marc.Audy Fix references to instanced components not being updated when resetting component to default #jira UE-44706 #rnx Change 3516303 by Marc.Audy Back out CL# 3516287 while an oddity is investigated #rnx Change 3516563 by Marc.Audy (4.17) Fix references to instanced components not being updated when resetting component to default #jira UE-44706 Change 3516637 by Phillip.Kavan #jira UE-44661 - Fix potential crash when changing the ChildActorComponent class default value on a Blueprint that also sets the class in the Construction Script. Change summary: - Modified UChildActorComponent::DestroyChildActor() to move the check for PendingKill/Unreachable so that we can also rename a defunct ChildActor instance out of the way in order to allow for a new ChildActor instance w/ the cached name. Change 3517735 by Marc.Audy Avoid unnecessary string copy #rnx Change 3517931 by Marc.Audy Small optimization to CleanupActors Change 3518221 by Dan.Oconnor Fix rare crash when running ConformImplementedEvents when async loading #jira UE-45348 Change 3518270 by Ben.Zeigler #jira UE-46574 Add FCollectionReference type and customization to allow setting an FName to an editor collection Add AssetCollection to PrimaryAssetLabel that derives the bundled assets from an editor collection Change 3518271 by Marc.Audy Get rid of unnecessary construction differentiation if custom reset is being used Change 3518310 by Ben.Marsh Re-adding IOS files with correct case. Change 3518423 by Ben.Zeigler #jira UE-46574 Initial support for chunk installation in Asset Manager. Refactor AssetManagerSettings so it copies runtime bools into the asset manager for fast access Add a concept of a stalled streamable manager handle, handles can be created stalled and will not execute their async load until all needed resources have been acquired externally Change 3518480 by Marc.Audy Correctly get the variable reference for an input variable get from the member scope rather than a member variable of the same name on the class #jira UE-46737 Change 3518498 by Ben.Zeigler Fix bug with AssetManager where requesting the same load twice in a row before the first one finishes caused the complete callback to get called too early for the second load Update test map to catch this Change 3518526 by Ben.Zeigler IOS Fix Change 3518619 by Ben.Zeigler #jira UE-46744 Fix issue where refreshing asset manager editor settings would throw away asset label rules overrides, causing the recursive flag to accidentally get set Change 3518747 by Phillip.Kavan #jira UE-43154 - Prevent ConstructGenericObject nodes from compiling if the selected type does not include 'BlueprintType' in its inheritance hierarchy. Change summary: - Moved UGameplayStatics::CanSpawnObjectOfClass() into UK2Node_GenericCreateObject as a local util method (per JIRA notes). This was not exposed to Blueprints and as such was inconsistent with the rest of the API. - Modified UGameplayStatics::SpawnObject() to no longer call CanSpawnObjectOfClass(). This seemed redundant as this will already have been called during node validation at Blueprint compile time. - Refactored CanSpawnObjectOfClass() into FK2Node_GenericCreateObject_Utils. Walking up the inheritance chain no longer starts out w/ the assumption that 'BlueprintType' is set by default, which was previously including a lot of engine-specific classes into the "allowed" set (e.g. UByteProperty). Also unified the 2 loop iterations that were being used to check for 'BlueprintType'/'NotBlueprintType' and 'DontUseGenericSpawnObjectName', as well as the check for whether or not the class is a derivative of AActor/UActorComponent. - Modified UK2Node_GenericCreateObject::EarlyValidation() to call FK2Node_GenericCreateObject_Utils::CanSpawnObjectOfClass() and emit a slightly more informative error message to the BP compiler message log. Change 3518756 by Michael.Noland (4.17) Framework: Prevent various asserts when USplineComponent methods are called on a spline with no points Change 3518760 by Michael.Noland Core: Changed FRuntimeAssetCache ensures to ensureAsRuntimeWarning Change 3518771 by Michael.Noland AI: Prevent an ensure in UBlackboardComponent::ClearValue when called on a component with a null BlackboardAsset Change 3518818 by Michael.Noland Rendering: Fixed a whitespace issue in UCanvasRenderTarget2D::RepaintCanvas() #rnx Change 3518822 by Michael.Noland Sequencer: Prevented crashes in some methods of UMovieSceneSequencePlayer when there is no Sequence set Sequencer: Prevented a crash in FMovieSceneRootEvaluationTemplateInstance::Evaluate when the instance has no template set Change 3518824 by Michael.Noland Landscape: Marked ULandscapeComponent and ULandscapeHeightfieldCollisionComponent as Within=LandscapeProxy, since they do CastChecked on their Outer all the time Change 3519073 by Michael.Noland QAGame: Fixed a crash in UQASynth::PlaySynth() if called on a directly created instance rather than using the factory method Change 3519076 by Michael.Noland Preventing crashes in UAutomationPerformaceHelper (sic) when spawned abnormally for fuzzing (assumes that the outer will have a route to a world) #rnx Change 3519079 by Michael.Noland Sequencer: Fixed a potential crash in UMediaPlaylist::Insert and UMediaPlaylist::RemoveAt when passed an invalid index Change 3519081 by Michael.Noland Blueprints: Added support for creating appropriate outers for objects that must be nested within another class during fuzzing (ones that specify Within=, other relationships aren't knowable yet) Change 3519082 by Michael.Noland VR: Prevent a crash in UMRMeshComponent::ConnectReconstructor when passed a null reconstructor Change 3519084 by Michael.Noland Rendering: Prevent crashes when UNiagaraComponent::GetEffectDataInterface is called on a component with no effect asset set Change 3521889 by Michael.Noland Sequencer: Prevented a bogus static analysis warning by reworking the code (FixedFrameInterval could have only been set if the pointer were valid from the line above) #rnx Change 3521987 by Michael.Noland Animation: Prevent a couple of potential asserts in UControlRig::GetOrAllocateSubControlRig Change 3522101 by Michael.Noland Physics: Improved the comment on UPhysicalMaterial::Friction #rn Change 3522105 by Michael.Noland Physics: Fixed a few crashes in UVehicleWheel when spawned directly Change 3522106 by Michael.Noland Framework: Marked ULevelStreaming as Within=World, since it does CastChecked on the Outer all the time Change 3522109 by Michael.Noland Animation: Marked UAnimInstance as Within=SkeletalMeshComponent since it assumes the outer in various places Change 3522121 by Michael.Noland Mobile: Prevent UMobileInstalledContent methods from crashing when called on a created instance in an uncooked build (no installed manifest) Change 3522783 by Zak.Middleton #ue4 - Imported new simple collision for Engine/Content/BasicShaps/Cylinder.uasset which is a single convex shape (rather than being 4 shapes as before). Change 3525477 by Dan.Oconnor Remove Tooltip, Category, and HideCategories tooltip from the blueprint generated class if source data is cleared Change 3526538 by Ben.Zeigler Refresh primary asset labels if their bundles are different at all and not just if they're added or removed. This is required because they now work based on collections or directories. This fixes issue with the onboarding collection changes not correctly modifying chunks Copy of CL #3526501 Change 3526817 by Ben.Zeigler #jira UE-46917 Fix issue where maps that do not contain level script blueprints were being counted as unindexed for find in blueprints. The old behavior depended on detecting the existence of empty tags, but the asset registry now filters those out so treat maps with no FiB data as indexed Change 3526873 by Ben.Zeigler #jira UE-46627 Change it so blueprint or native subclasses of static mesh actor cannot be added to clusters, as they are not likely to be immutable the way the base class is Add code to to the ubergraph frame to fall back to hard reference serialization if the reference collector doesn't support weak references, such as the cluster collector Change 3526958 by Marc.Audy (4.17) Don't copy and then break pin links when reconstructing. Instead simply move. #jira UE-46935 Change 3528916 by Marc.Audy PR #3609: Adds GetKeysForAxis() to complement GetKeysForAction() in UPlayerInput (Contributed by alanedwardes) #jira UE-45347 Change 3529080 by mason.seay BP asset for undetermined type bug Change 3529381 by Marc.Audy Fix ability to insert duplicates in to a set or map Change 3529471 by Dan.Oconnor Fix for clang 4.0 error: definition of builtin function '__rdtsc' inline unsigned long long __rdtsc() Change 3530876 by Marc.Audy Based on PR #3457: Add MakeSet BP node (Contributed by projectgheist) Also refactored MakeArray/Set to share a base MakeContainer class Cleaned up some dead code from MakeArray Added icon for MakeSet Added Functional Test for MakeSet #jira UE-43717 Change 3531070 by Phillip.Kavan #jira UE-46866 - Fix crash on load when an external variable member reference's owning type cannot be loaded. Change summary: - Modified FBlueprintEditorUtils::GetSkeletonClass() to check for NULL before attempting to check for the generating BP. Change 3531081 by Marc.Audy Remove deprecated CustomMapParamValue code Change 3531094 by Phillip.Kavan #jira UE-46952 - Fix a packaging code build failure that will occur with a nativized Blueprint class that contains a UInterfaceProperty. Change summary: - Modified TScriptInterface::operator=() to cast the given 'SourceObject' instance to the 'InterfaceType' type before assigning to 'SourceInterface'. This was necessary because if the caller (in this case nativized codegen) passes in a UObject* that does not explicitly inherit from 'InterfaceType', then it will need to go through the object's GetInterfaceAddress() API instead and cast the result back to an 'InterfaceType' pointer. Change 3531186 by Phillip.Kavan Back out changelist 3531094 (temp CIS fix). #rnx Change 3532082 by Marc.Audy Move garbage collection timers and other management to UEngine instead of UWorld Fixes CollectGarbage blueprint node not working in shipping #jira UE-46566 Change 3532134 by Phillip.Kavan Restored changelist 3531094 w/ fix for non-unity. - Mirrored from //UE4/Release-4.17 (CL# 3531232). #rnx Change 3533009 by Marc.Audy Fixup missing function and deprecation warnings Change 3534056 by Marc.Audy (4.17) Fix expose on spawn of map and sets to work #jira UE-47140 Change 3534761 by Marc.Audy (4.17) Apply code review changes to Dev-Framework as well #rnx Change 3535147 by Dan.Oconnor Build fix, already made in 4.17 #rnx Change 3535530 by mason.seay Resaving to remove error when opening level blueprint Change 3535581 by Marc.Audy Class Properties are only identical if they are literally the same object. Do not consider the deep compare port flags as object property base does. #jira UE-46533 Change 3535583 by Marc.Audy When properties are imported in to a child actor component the cached instance data is invalidated, so clear it. #jira UE-46533 Change 3535617 by Marc.Audy PR #3788: UE-39237: Prevent (im-)pure casting during BP debugging (Contributed by projectgheist) #jira UE-47188 #jira UE-39237 Change 3535671 by Marc.Audy Change NodeFactory to look at interface to use sequence node instead of each node having to add itself Change 3535955 by Marc.Audy Prevent MakeSet from removing split pins Change 3536114 by Michael.Noland Paper2D: Removing deprecated code from 4.3/4.4 era #rnx Change 3536120 by Michael.Noland Animation: Removed deprecated FTAlphaBlend class and AlphaBlendType.h header Change 3536124 by Michael.Noland Physics: Removed deprecated methods that were replaced by _AssumesLocked variations Change 3536131 by Michael.Noland Slate: Converting remaining uses of EKeyboardFocusCause to EFocusCause and properly deprecating it Change 3536138 by Michael.Noland Slate: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536167 by Dan.Oconnor When a client provides a skeleton class as the self scope, make sure we also use a skel class for non-self scopes - but only if using the compilation manager. Skel classes are not reliably up to date when not using the compilation manager #jira UE-46904 Change 3536221 by Michael.Noland Editor: Removing deprecated code from 4.9 or earlier Change 3536240 by Michael.Noland Blueprints: Removed long-deprecated TypeToString method from the K2 schema #rnx Change 3536243 by Michael.Noland AI: Prevent crashes if UMockTask_Log is created manually rather than via the CreateTask factory method Change 3536244 by Michael.Noland Core: Prevent FScopedExternalProfilerBase::StopScopedTimer() from asserting if called an unmatched number of times with StartScopedTimer, as both are exposed to BPs now Change 3536250 by Michael.Noland CoreUObject: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536253 by Michael.Noland Core: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536310 by Michael.Noland Engine: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536397 by Mieszko.Zielinski Fixed UCrowdFollowingComponent::UpdateCachedDirections crashing when CharacterMovement is not set #UE4 #jira UE-46860 Change 3536404 by Michael.Noland Platform: Added a warning for others when they try to remove this 'deprecated' method Change 3536639 by Michael.Noland CharacterMovement: Changed the name of a variable introduced in CL# 3536397 to better match intent #rnx Change 3536893 by Michael.Noland Blueprints: Clear the stale value on the value pin when a map find node fails to find an item #jira UE-47233 Change 3536902 by Michael.Noland Framework: Killed a couple of more deprecated methods that were not exposed to Blueprints #rnx Change 3537038 by Ben.Marsh Fixing case of iOS directories, pt1 Change 3537039 by Ben.Marsh Fixing case of iOS directories, pt2 Change 3538246 by Michael.Noland UnrealTournament: Fixing issues with renamed enum #rnx Change 3538618 by Ben.Zeigler Fix ensure when closing sequencer transform UI Change 3540213 by Ben.Zeigler #jira UE-47313 Fix crash serializing a MapProperty where the value type has changed for a type that implements ConvertFromType. The address passed to ConvertFromType needs to be the container root, not the specific value address, keys worked because the offset was 0. Change 3540253 by Marc.Audy Only copy default values for input pins as output pins do not have them #rnx Change 3540376 by Marc.Audy Add utility FromPinType for FEdGraphTerminalType #rnx Change 3540433 by Marc.Audy Add MakeMap #jira UE-47093 Unify IsConnectionDisallowed for containers and fix static analysis warning #jira UE-47291 Change 3540585 by Phillip.Kavan #jira UE-47117 - Fix crash on launch of a nativized build that includes an instanced default subobject that's referenced by another instanced default subobject. Change summary: - Modified FEmitDefaultValueHelper::HandleSpecialTypes() to only direct HandleInstancedSubobject() to emit code to create the instanced subobject if it's not a default subobject. This was previously being incorrectly interpreted as an object having the 'RF_ArchetypeObject' flag set; however, default subobjects will also have that flag set in addition to the 'RF_DefaultSubobject' flag. - Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to assert in the 'GetDefaultSubobjectByName' case if the given object is not also a default subobject. Change 3541147 by Dan.Oconnor Fix for not being able to override custom events when using the compilation manager post 3536167 #jira UE-47292 #rnx Change 3541177 by Ben.Zeigler #jira UE-46595, UE-46553 Fix issue where creating a widget template could cause a widget blueprint being cooked to have the wrong package flags, making it appear to be an uncooked package Copy of CL #3541027 Change 3541325 by Dan.Oconnor K2node data table data needs to preload data before the compilation queue is flushed #rnx #jira UE-47319 Change 3541409 by Michael.Noland Blueprints: Added code to reapply any active breakpoints after recompilation when using the BP compilation manager #jira UE-47322 [reimplementing CL# 3541404 in Dev-Framework] Change 3541418 by Dan.Oconnor Fix for bad SKEL_ CDO reference in blueprint bytecode #jira UE-47265 #rnx Change 3541482 by Dan.Oconnor Blanket fix up of preload calls that are being done in AllocateDefaultPins. AllocatDefaultPins is not called until compile, meaning if these preload calls load blueprints they will be loaded while the compilation manager is compiling blueprints #rnx #jira UE-47319 Change 3541817 by Marc.Audy Fix static analysis warnings #rnx Change 3542299 by Michael.Noland Blueprints: Speculative fix for static analysis warning #rnx Change 3542406 by Marc.Audy Use a check slow to avoid any cost #rnx Change 3542486 by Michael.Noland Asset Manager: Removing an unnecessary ensure (it's a potentially expected case) #jira UE-47380 Change 3542659 by Michael.Noland Blueprints: Clear out null entries in the LastEditedDocuments list during PostLoad() and remove entries when a graph is being deleted to prevent their generation in the first place #jira UE-47385 Change 3543620 by Dan.Oconnor Remove overzealous ensure - we may recompile blueprints that are asynchronously loading when a user triggers a synchronous compile #jira UE-47415 #rnx Change 3518415 by Ben.Zeigler #jira UE-46574 Deprecate IPlatformChunkInstall::SetChunkInstallDelgate as it was spelled wrong, was only half implemented, and did not support success vs failure Replace with AddChunkInstallDelegate, which supports a bool error code and is bound once instead of separately for each chunk. All implementations support this delegate at a basic level, although several could be improved to call the failure delegate in more cases Change 3534339 by Michael.Noland Platforms: Changed DEPRECATED() macro description to use 4.xx rather than a speciifc version in examples, so it doesn't show up when removing deprecated code [CL 3544050 by Marc Audy in Main branch]
2017-07-19 09:49:59 -04:00
FText MenuEntryTitle = LOCTEXT("MakePureTitle", "Convert to pure cast");
FText MenuEntryTooltip = LOCTEXT("MakePureTooltip", "Removes the execution pins to make the node more versatile (NOTE: the cast could still fail, resulting in an invalid output).");
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3544039) #lockdown Nick.Penwarden #rb none #rnx ===================================== MAJOR FEATURES + CHANGES ===================================== Change 3343905 by Dan.Oconnor ResolveMember optimizations and moved into cpp. ResolveMember<UFunction> now checks UClass::FuncMap before doing more expensive searches Change 3346637 by Ben.Zeigler Actually fix in non editor builds Change 3355484 by Dan.Oconnor Back out FMemberReference Optimization Change 3425833 by Ben.Zeigler #jira UE-31749 Fix it so Undo works properly when modifying a local variable #jira UE-44736 Fix it so changing the type of a local variable correctly resets the default value Change 3510091 by Marc.Audy Expose on Spawn functional test #rnx Change 3510100 by Marc.Audy Fix spelling error #rnx Change 3510132 by Marc.Audy Fix issues with marking a widget blueprint class as abstract Change 3510133 by Marc.Audy Minor code cleanup #rnx Change 3510178 by Ben.Zeigler #jira UE-46500 Fix it so editor-only and transient stuct members are not serialized for literal blueprint structs. It's unsafe to serialize them because they may not exist in the cooked build Change 3510466 by Ben.Zeigler Start adding basic ability system tests to enginetest, very minimal so far Change 3511295 by Marc.Audy Fix wasted work going weak -> object -> weak -> object #rnx Change 3511824 by Marc.Audy Fix spelling error in tooltip #jira UE-46515 #rnx Change 3514446 by Ben.Zeigler Fix ActorBoundEvent and ComponentBoundEvent to always refresh their event signature from the delegate property they are bound to. This is required to correctly deal with delegate signatures being moved or renamed. Both types now do the fixup one time, in ReconstructNode. Change 3514578 by Marc.Audy Move clearing of the actor component need end of frame update mark to base class instead of just primitive component Change 3514583 by Ben.Zeigler Better fix to last delegate checkin that also handles moving functions between modules but not renaming Change 3515325 by Dan.Oconnor Fix for rare orphan pin false positive, rare exposed on spawn false positive #rnx Change 3515761 by Marc.Audy fix shipping configuration #rnx Change 3515772 by Marc.Audy Fix static analysis warnings #rnx Change 3516287 by Marc.Audy Fix references to instanced components not being updated when resetting component to default #jira UE-44706 #rnx Change 3516303 by Marc.Audy Back out CL# 3516287 while an oddity is investigated #rnx Change 3516563 by Marc.Audy (4.17) Fix references to instanced components not being updated when resetting component to default #jira UE-44706 Change 3516637 by Phillip.Kavan #jira UE-44661 - Fix potential crash when changing the ChildActorComponent class default value on a Blueprint that also sets the class in the Construction Script. Change summary: - Modified UChildActorComponent::DestroyChildActor() to move the check for PendingKill/Unreachable so that we can also rename a defunct ChildActor instance out of the way in order to allow for a new ChildActor instance w/ the cached name. Change 3517735 by Marc.Audy Avoid unnecessary string copy #rnx Change 3517931 by Marc.Audy Small optimization to CleanupActors Change 3518221 by Dan.Oconnor Fix rare crash when running ConformImplementedEvents when async loading #jira UE-45348 Change 3518270 by Ben.Zeigler #jira UE-46574 Add FCollectionReference type and customization to allow setting an FName to an editor collection Add AssetCollection to PrimaryAssetLabel that derives the bundled assets from an editor collection Change 3518271 by Marc.Audy Get rid of unnecessary construction differentiation if custom reset is being used Change 3518310 by Ben.Marsh Re-adding IOS files with correct case. Change 3518423 by Ben.Zeigler #jira UE-46574 Initial support for chunk installation in Asset Manager. Refactor AssetManagerSettings so it copies runtime bools into the asset manager for fast access Add a concept of a stalled streamable manager handle, handles can be created stalled and will not execute their async load until all needed resources have been acquired externally Change 3518480 by Marc.Audy Correctly get the variable reference for an input variable get from the member scope rather than a member variable of the same name on the class #jira UE-46737 Change 3518498 by Ben.Zeigler Fix bug with AssetManager where requesting the same load twice in a row before the first one finishes caused the complete callback to get called too early for the second load Update test map to catch this Change 3518526 by Ben.Zeigler IOS Fix Change 3518619 by Ben.Zeigler #jira UE-46744 Fix issue where refreshing asset manager editor settings would throw away asset label rules overrides, causing the recursive flag to accidentally get set Change 3518747 by Phillip.Kavan #jira UE-43154 - Prevent ConstructGenericObject nodes from compiling if the selected type does not include 'BlueprintType' in its inheritance hierarchy. Change summary: - Moved UGameplayStatics::CanSpawnObjectOfClass() into UK2Node_GenericCreateObject as a local util method (per JIRA notes). This was not exposed to Blueprints and as such was inconsistent with the rest of the API. - Modified UGameplayStatics::SpawnObject() to no longer call CanSpawnObjectOfClass(). This seemed redundant as this will already have been called during node validation at Blueprint compile time. - Refactored CanSpawnObjectOfClass() into FK2Node_GenericCreateObject_Utils. Walking up the inheritance chain no longer starts out w/ the assumption that 'BlueprintType' is set by default, which was previously including a lot of engine-specific classes into the "allowed" set (e.g. UByteProperty). Also unified the 2 loop iterations that were being used to check for 'BlueprintType'/'NotBlueprintType' and 'DontUseGenericSpawnObjectName', as well as the check for whether or not the class is a derivative of AActor/UActorComponent. - Modified UK2Node_GenericCreateObject::EarlyValidation() to call FK2Node_GenericCreateObject_Utils::CanSpawnObjectOfClass() and emit a slightly more informative error message to the BP compiler message log. Change 3518756 by Michael.Noland (4.17) Framework: Prevent various asserts when USplineComponent methods are called on a spline with no points Change 3518760 by Michael.Noland Core: Changed FRuntimeAssetCache ensures to ensureAsRuntimeWarning Change 3518771 by Michael.Noland AI: Prevent an ensure in UBlackboardComponent::ClearValue when called on a component with a null BlackboardAsset Change 3518818 by Michael.Noland Rendering: Fixed a whitespace issue in UCanvasRenderTarget2D::RepaintCanvas() #rnx Change 3518822 by Michael.Noland Sequencer: Prevented crashes in some methods of UMovieSceneSequencePlayer when there is no Sequence set Sequencer: Prevented a crash in FMovieSceneRootEvaluationTemplateInstance::Evaluate when the instance has no template set Change 3518824 by Michael.Noland Landscape: Marked ULandscapeComponent and ULandscapeHeightfieldCollisionComponent as Within=LandscapeProxy, since they do CastChecked on their Outer all the time Change 3519073 by Michael.Noland QAGame: Fixed a crash in UQASynth::PlaySynth() if called on a directly created instance rather than using the factory method Change 3519076 by Michael.Noland Preventing crashes in UAutomationPerformaceHelper (sic) when spawned abnormally for fuzzing (assumes that the outer will have a route to a world) #rnx Change 3519079 by Michael.Noland Sequencer: Fixed a potential crash in UMediaPlaylist::Insert and UMediaPlaylist::RemoveAt when passed an invalid index Change 3519081 by Michael.Noland Blueprints: Added support for creating appropriate outers for objects that must be nested within another class during fuzzing (ones that specify Within=, other relationships aren't knowable yet) Change 3519082 by Michael.Noland VR: Prevent a crash in UMRMeshComponent::ConnectReconstructor when passed a null reconstructor Change 3519084 by Michael.Noland Rendering: Prevent crashes when UNiagaraComponent::GetEffectDataInterface is called on a component with no effect asset set Change 3521889 by Michael.Noland Sequencer: Prevented a bogus static analysis warning by reworking the code (FixedFrameInterval could have only been set if the pointer were valid from the line above) #rnx Change 3521987 by Michael.Noland Animation: Prevent a couple of potential asserts in UControlRig::GetOrAllocateSubControlRig Change 3522101 by Michael.Noland Physics: Improved the comment on UPhysicalMaterial::Friction #rn Change 3522105 by Michael.Noland Physics: Fixed a few crashes in UVehicleWheel when spawned directly Change 3522106 by Michael.Noland Framework: Marked ULevelStreaming as Within=World, since it does CastChecked on the Outer all the time Change 3522109 by Michael.Noland Animation: Marked UAnimInstance as Within=SkeletalMeshComponent since it assumes the outer in various places Change 3522121 by Michael.Noland Mobile: Prevent UMobileInstalledContent methods from crashing when called on a created instance in an uncooked build (no installed manifest) Change 3522783 by Zak.Middleton #ue4 - Imported new simple collision for Engine/Content/BasicShaps/Cylinder.uasset which is a single convex shape (rather than being 4 shapes as before). Change 3525477 by Dan.Oconnor Remove Tooltip, Category, and HideCategories tooltip from the blueprint generated class if source data is cleared Change 3526538 by Ben.Zeigler Refresh primary asset labels if their bundles are different at all and not just if they're added or removed. This is required because they now work based on collections or directories. This fixes issue with the onboarding collection changes not correctly modifying chunks Copy of CL #3526501 Change 3526817 by Ben.Zeigler #jira UE-46917 Fix issue where maps that do not contain level script blueprints were being counted as unindexed for find in blueprints. The old behavior depended on detecting the existence of empty tags, but the asset registry now filters those out so treat maps with no FiB data as indexed Change 3526873 by Ben.Zeigler #jira UE-46627 Change it so blueprint or native subclasses of static mesh actor cannot be added to clusters, as they are not likely to be immutable the way the base class is Add code to to the ubergraph frame to fall back to hard reference serialization if the reference collector doesn't support weak references, such as the cluster collector Change 3526958 by Marc.Audy (4.17) Don't copy and then break pin links when reconstructing. Instead simply move. #jira UE-46935 Change 3528916 by Marc.Audy PR #3609: Adds GetKeysForAxis() to complement GetKeysForAction() in UPlayerInput (Contributed by alanedwardes) #jira UE-45347 Change 3529080 by mason.seay BP asset for undetermined type bug Change 3529381 by Marc.Audy Fix ability to insert duplicates in to a set or map Change 3529471 by Dan.Oconnor Fix for clang 4.0 error: definition of builtin function '__rdtsc' inline unsigned long long __rdtsc() Change 3530876 by Marc.Audy Based on PR #3457: Add MakeSet BP node (Contributed by projectgheist) Also refactored MakeArray/Set to share a base MakeContainer class Cleaned up some dead code from MakeArray Added icon for MakeSet Added Functional Test for MakeSet #jira UE-43717 Change 3531070 by Phillip.Kavan #jira UE-46866 - Fix crash on load when an external variable member reference's owning type cannot be loaded. Change summary: - Modified FBlueprintEditorUtils::GetSkeletonClass() to check for NULL before attempting to check for the generating BP. Change 3531081 by Marc.Audy Remove deprecated CustomMapParamValue code Change 3531094 by Phillip.Kavan #jira UE-46952 - Fix a packaging code build failure that will occur with a nativized Blueprint class that contains a UInterfaceProperty. Change summary: - Modified TScriptInterface::operator=() to cast the given 'SourceObject' instance to the 'InterfaceType' type before assigning to 'SourceInterface'. This was necessary because if the caller (in this case nativized codegen) passes in a UObject* that does not explicitly inherit from 'InterfaceType', then it will need to go through the object's GetInterfaceAddress() API instead and cast the result back to an 'InterfaceType' pointer. Change 3531186 by Phillip.Kavan Back out changelist 3531094 (temp CIS fix). #rnx Change 3532082 by Marc.Audy Move garbage collection timers and other management to UEngine instead of UWorld Fixes CollectGarbage blueprint node not working in shipping #jira UE-46566 Change 3532134 by Phillip.Kavan Restored changelist 3531094 w/ fix for non-unity. - Mirrored from //UE4/Release-4.17 (CL# 3531232). #rnx Change 3533009 by Marc.Audy Fixup missing function and deprecation warnings Change 3534056 by Marc.Audy (4.17) Fix expose on spawn of map and sets to work #jira UE-47140 Change 3534761 by Marc.Audy (4.17) Apply code review changes to Dev-Framework as well #rnx Change 3535147 by Dan.Oconnor Build fix, already made in 4.17 #rnx Change 3535530 by mason.seay Resaving to remove error when opening level blueprint Change 3535581 by Marc.Audy Class Properties are only identical if they are literally the same object. Do not consider the deep compare port flags as object property base does. #jira UE-46533 Change 3535583 by Marc.Audy When properties are imported in to a child actor component the cached instance data is invalidated, so clear it. #jira UE-46533 Change 3535617 by Marc.Audy PR #3788: UE-39237: Prevent (im-)pure casting during BP debugging (Contributed by projectgheist) #jira UE-47188 #jira UE-39237 Change 3535671 by Marc.Audy Change NodeFactory to look at interface to use sequence node instead of each node having to add itself Change 3535955 by Marc.Audy Prevent MakeSet from removing split pins Change 3536114 by Michael.Noland Paper2D: Removing deprecated code from 4.3/4.4 era #rnx Change 3536120 by Michael.Noland Animation: Removed deprecated FTAlphaBlend class and AlphaBlendType.h header Change 3536124 by Michael.Noland Physics: Removed deprecated methods that were replaced by _AssumesLocked variations Change 3536131 by Michael.Noland Slate: Converting remaining uses of EKeyboardFocusCause to EFocusCause and properly deprecating it Change 3536138 by Michael.Noland Slate: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536167 by Dan.Oconnor When a client provides a skeleton class as the self scope, make sure we also use a skel class for non-self scopes - but only if using the compilation manager. Skel classes are not reliably up to date when not using the compilation manager #jira UE-46904 Change 3536221 by Michael.Noland Editor: Removing deprecated code from 4.9 or earlier Change 3536240 by Michael.Noland Blueprints: Removed long-deprecated TypeToString method from the K2 schema #rnx Change 3536243 by Michael.Noland AI: Prevent crashes if UMockTask_Log is created manually rather than via the CreateTask factory method Change 3536244 by Michael.Noland Core: Prevent FScopedExternalProfilerBase::StopScopedTimer() from asserting if called an unmatched number of times with StartScopedTimer, as both are exposed to BPs now Change 3536250 by Michael.Noland CoreUObject: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536253 by Michael.Noland Core: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536310 by Michael.Noland Engine: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536397 by Mieszko.Zielinski Fixed UCrowdFollowingComponent::UpdateCachedDirections crashing when CharacterMovement is not set #UE4 #jira UE-46860 Change 3536404 by Michael.Noland Platform: Added a warning for others when they try to remove this 'deprecated' method Change 3536639 by Michael.Noland CharacterMovement: Changed the name of a variable introduced in CL# 3536397 to better match intent #rnx Change 3536893 by Michael.Noland Blueprints: Clear the stale value on the value pin when a map find node fails to find an item #jira UE-47233 Change 3536902 by Michael.Noland Framework: Killed a couple of more deprecated methods that were not exposed to Blueprints #rnx Change 3537038 by Ben.Marsh Fixing case of iOS directories, pt1 Change 3537039 by Ben.Marsh Fixing case of iOS directories, pt2 Change 3538246 by Michael.Noland UnrealTournament: Fixing issues with renamed enum #rnx Change 3538618 by Ben.Zeigler Fix ensure when closing sequencer transform UI Change 3540213 by Ben.Zeigler #jira UE-47313 Fix crash serializing a MapProperty where the value type has changed for a type that implements ConvertFromType. The address passed to ConvertFromType needs to be the container root, not the specific value address, keys worked because the offset was 0. Change 3540253 by Marc.Audy Only copy default values for input pins as output pins do not have them #rnx Change 3540376 by Marc.Audy Add utility FromPinType for FEdGraphTerminalType #rnx Change 3540433 by Marc.Audy Add MakeMap #jira UE-47093 Unify IsConnectionDisallowed for containers and fix static analysis warning #jira UE-47291 Change 3540585 by Phillip.Kavan #jira UE-47117 - Fix crash on launch of a nativized build that includes an instanced default subobject that's referenced by another instanced default subobject. Change summary: - Modified FEmitDefaultValueHelper::HandleSpecialTypes() to only direct HandleInstancedSubobject() to emit code to create the instanced subobject if it's not a default subobject. This was previously being incorrectly interpreted as an object having the 'RF_ArchetypeObject' flag set; however, default subobjects will also have that flag set in addition to the 'RF_DefaultSubobject' flag. - Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to assert in the 'GetDefaultSubobjectByName' case if the given object is not also a default subobject. Change 3541147 by Dan.Oconnor Fix for not being able to override custom events when using the compilation manager post 3536167 #jira UE-47292 #rnx Change 3541177 by Ben.Zeigler #jira UE-46595, UE-46553 Fix issue where creating a widget template could cause a widget blueprint being cooked to have the wrong package flags, making it appear to be an uncooked package Copy of CL #3541027 Change 3541325 by Dan.Oconnor K2node data table data needs to preload data before the compilation queue is flushed #rnx #jira UE-47319 Change 3541409 by Michael.Noland Blueprints: Added code to reapply any active breakpoints after recompilation when using the BP compilation manager #jira UE-47322 [reimplementing CL# 3541404 in Dev-Framework] Change 3541418 by Dan.Oconnor Fix for bad SKEL_ CDO reference in blueprint bytecode #jira UE-47265 #rnx Change 3541482 by Dan.Oconnor Blanket fix up of preload calls that are being done in AllocateDefaultPins. AllocatDefaultPins is not called until compile, meaning if these preload calls load blueprints they will be loaded while the compilation manager is compiling blueprints #rnx #jira UE-47319 Change 3541817 by Marc.Audy Fix static analysis warnings #rnx Change 3542299 by Michael.Noland Blueprints: Speculative fix for static analysis warning #rnx Change 3542406 by Marc.Audy Use a check slow to avoid any cost #rnx Change 3542486 by Michael.Noland Asset Manager: Removing an unnecessary ensure (it's a potentially expected case) #jira UE-47380 Change 3542659 by Michael.Noland Blueprints: Clear out null entries in the LastEditedDocuments list during PostLoad() and remove entries when a graph is being deleted to prevent their generation in the first place #jira UE-47385 Change 3543620 by Dan.Oconnor Remove overzealous ensure - we may recompile blueprints that are asynchronously loading when a user triggers a synchronous compile #jira UE-47415 #rnx Change 3518415 by Ben.Zeigler #jira UE-46574 Deprecate IPlatformChunkInstall::SetChunkInstallDelgate as it was spelled wrong, was only half implemented, and did not support success vs failure Replace with AddChunkInstallDelegate, which supports a bool error code and is bound once instead of separately for each chunk. All implementations support this delegate at a basic level, although several could be improved to call the failure delegate in more cases Change 3534339 by Michael.Noland Platforms: Changed DEPRECATED() macro description to use 4.xx rather than a speciifc version in examples, so it doesn't show up when removing deprecated code [CL 3544050 by Marc Audy in Main branch]
2017-07-19 09:49:59 -04:00
bool bCanTogglePurity = true;
auto CanExecutePurityToggle = [](bool const bInCanTogglePurity)->bool
{
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3544039) #lockdown Nick.Penwarden #rb none #rnx ===================================== MAJOR FEATURES + CHANGES ===================================== Change 3343905 by Dan.Oconnor ResolveMember optimizations and moved into cpp. ResolveMember<UFunction> now checks UClass::FuncMap before doing more expensive searches Change 3346637 by Ben.Zeigler Actually fix in non editor builds Change 3355484 by Dan.Oconnor Back out FMemberReference Optimization Change 3425833 by Ben.Zeigler #jira UE-31749 Fix it so Undo works properly when modifying a local variable #jira UE-44736 Fix it so changing the type of a local variable correctly resets the default value Change 3510091 by Marc.Audy Expose on Spawn functional test #rnx Change 3510100 by Marc.Audy Fix spelling error #rnx Change 3510132 by Marc.Audy Fix issues with marking a widget blueprint class as abstract Change 3510133 by Marc.Audy Minor code cleanup #rnx Change 3510178 by Ben.Zeigler #jira UE-46500 Fix it so editor-only and transient stuct members are not serialized for literal blueprint structs. It's unsafe to serialize them because they may not exist in the cooked build Change 3510466 by Ben.Zeigler Start adding basic ability system tests to enginetest, very minimal so far Change 3511295 by Marc.Audy Fix wasted work going weak -> object -> weak -> object #rnx Change 3511824 by Marc.Audy Fix spelling error in tooltip #jira UE-46515 #rnx Change 3514446 by Ben.Zeigler Fix ActorBoundEvent and ComponentBoundEvent to always refresh their event signature from the delegate property they are bound to. This is required to correctly deal with delegate signatures being moved or renamed. Both types now do the fixup one time, in ReconstructNode. Change 3514578 by Marc.Audy Move clearing of the actor component need end of frame update mark to base class instead of just primitive component Change 3514583 by Ben.Zeigler Better fix to last delegate checkin that also handles moving functions between modules but not renaming Change 3515325 by Dan.Oconnor Fix for rare orphan pin false positive, rare exposed on spawn false positive #rnx Change 3515761 by Marc.Audy fix shipping configuration #rnx Change 3515772 by Marc.Audy Fix static analysis warnings #rnx Change 3516287 by Marc.Audy Fix references to instanced components not being updated when resetting component to default #jira UE-44706 #rnx Change 3516303 by Marc.Audy Back out CL# 3516287 while an oddity is investigated #rnx Change 3516563 by Marc.Audy (4.17) Fix references to instanced components not being updated when resetting component to default #jira UE-44706 Change 3516637 by Phillip.Kavan #jira UE-44661 - Fix potential crash when changing the ChildActorComponent class default value on a Blueprint that also sets the class in the Construction Script. Change summary: - Modified UChildActorComponent::DestroyChildActor() to move the check for PendingKill/Unreachable so that we can also rename a defunct ChildActor instance out of the way in order to allow for a new ChildActor instance w/ the cached name. Change 3517735 by Marc.Audy Avoid unnecessary string copy #rnx Change 3517931 by Marc.Audy Small optimization to CleanupActors Change 3518221 by Dan.Oconnor Fix rare crash when running ConformImplementedEvents when async loading #jira UE-45348 Change 3518270 by Ben.Zeigler #jira UE-46574 Add FCollectionReference type and customization to allow setting an FName to an editor collection Add AssetCollection to PrimaryAssetLabel that derives the bundled assets from an editor collection Change 3518271 by Marc.Audy Get rid of unnecessary construction differentiation if custom reset is being used Change 3518310 by Ben.Marsh Re-adding IOS files with correct case. Change 3518423 by Ben.Zeigler #jira UE-46574 Initial support for chunk installation in Asset Manager. Refactor AssetManagerSettings so it copies runtime bools into the asset manager for fast access Add a concept of a stalled streamable manager handle, handles can be created stalled and will not execute their async load until all needed resources have been acquired externally Change 3518480 by Marc.Audy Correctly get the variable reference for an input variable get from the member scope rather than a member variable of the same name on the class #jira UE-46737 Change 3518498 by Ben.Zeigler Fix bug with AssetManager where requesting the same load twice in a row before the first one finishes caused the complete callback to get called too early for the second load Update test map to catch this Change 3518526 by Ben.Zeigler IOS Fix Change 3518619 by Ben.Zeigler #jira UE-46744 Fix issue where refreshing asset manager editor settings would throw away asset label rules overrides, causing the recursive flag to accidentally get set Change 3518747 by Phillip.Kavan #jira UE-43154 - Prevent ConstructGenericObject nodes from compiling if the selected type does not include 'BlueprintType' in its inheritance hierarchy. Change summary: - Moved UGameplayStatics::CanSpawnObjectOfClass() into UK2Node_GenericCreateObject as a local util method (per JIRA notes). This was not exposed to Blueprints and as such was inconsistent with the rest of the API. - Modified UGameplayStatics::SpawnObject() to no longer call CanSpawnObjectOfClass(). This seemed redundant as this will already have been called during node validation at Blueprint compile time. - Refactored CanSpawnObjectOfClass() into FK2Node_GenericCreateObject_Utils. Walking up the inheritance chain no longer starts out w/ the assumption that 'BlueprintType' is set by default, which was previously including a lot of engine-specific classes into the "allowed" set (e.g. UByteProperty). Also unified the 2 loop iterations that were being used to check for 'BlueprintType'/'NotBlueprintType' and 'DontUseGenericSpawnObjectName', as well as the check for whether or not the class is a derivative of AActor/UActorComponent. - Modified UK2Node_GenericCreateObject::EarlyValidation() to call FK2Node_GenericCreateObject_Utils::CanSpawnObjectOfClass() and emit a slightly more informative error message to the BP compiler message log. Change 3518756 by Michael.Noland (4.17) Framework: Prevent various asserts when USplineComponent methods are called on a spline with no points Change 3518760 by Michael.Noland Core: Changed FRuntimeAssetCache ensures to ensureAsRuntimeWarning Change 3518771 by Michael.Noland AI: Prevent an ensure in UBlackboardComponent::ClearValue when called on a component with a null BlackboardAsset Change 3518818 by Michael.Noland Rendering: Fixed a whitespace issue in UCanvasRenderTarget2D::RepaintCanvas() #rnx Change 3518822 by Michael.Noland Sequencer: Prevented crashes in some methods of UMovieSceneSequencePlayer when there is no Sequence set Sequencer: Prevented a crash in FMovieSceneRootEvaluationTemplateInstance::Evaluate when the instance has no template set Change 3518824 by Michael.Noland Landscape: Marked ULandscapeComponent and ULandscapeHeightfieldCollisionComponent as Within=LandscapeProxy, since they do CastChecked on their Outer all the time Change 3519073 by Michael.Noland QAGame: Fixed a crash in UQASynth::PlaySynth() if called on a directly created instance rather than using the factory method Change 3519076 by Michael.Noland Preventing crashes in UAutomationPerformaceHelper (sic) when spawned abnormally for fuzzing (assumes that the outer will have a route to a world) #rnx Change 3519079 by Michael.Noland Sequencer: Fixed a potential crash in UMediaPlaylist::Insert and UMediaPlaylist::RemoveAt when passed an invalid index Change 3519081 by Michael.Noland Blueprints: Added support for creating appropriate outers for objects that must be nested within another class during fuzzing (ones that specify Within=, other relationships aren't knowable yet) Change 3519082 by Michael.Noland VR: Prevent a crash in UMRMeshComponent::ConnectReconstructor when passed a null reconstructor Change 3519084 by Michael.Noland Rendering: Prevent crashes when UNiagaraComponent::GetEffectDataInterface is called on a component with no effect asset set Change 3521889 by Michael.Noland Sequencer: Prevented a bogus static analysis warning by reworking the code (FixedFrameInterval could have only been set if the pointer were valid from the line above) #rnx Change 3521987 by Michael.Noland Animation: Prevent a couple of potential asserts in UControlRig::GetOrAllocateSubControlRig Change 3522101 by Michael.Noland Physics: Improved the comment on UPhysicalMaterial::Friction #rn Change 3522105 by Michael.Noland Physics: Fixed a few crashes in UVehicleWheel when spawned directly Change 3522106 by Michael.Noland Framework: Marked ULevelStreaming as Within=World, since it does CastChecked on the Outer all the time Change 3522109 by Michael.Noland Animation: Marked UAnimInstance as Within=SkeletalMeshComponent since it assumes the outer in various places Change 3522121 by Michael.Noland Mobile: Prevent UMobileInstalledContent methods from crashing when called on a created instance in an uncooked build (no installed manifest) Change 3522783 by Zak.Middleton #ue4 - Imported new simple collision for Engine/Content/BasicShaps/Cylinder.uasset which is a single convex shape (rather than being 4 shapes as before). Change 3525477 by Dan.Oconnor Remove Tooltip, Category, and HideCategories tooltip from the blueprint generated class if source data is cleared Change 3526538 by Ben.Zeigler Refresh primary asset labels if their bundles are different at all and not just if they're added or removed. This is required because they now work based on collections or directories. This fixes issue with the onboarding collection changes not correctly modifying chunks Copy of CL #3526501 Change 3526817 by Ben.Zeigler #jira UE-46917 Fix issue where maps that do not contain level script blueprints were being counted as unindexed for find in blueprints. The old behavior depended on detecting the existence of empty tags, but the asset registry now filters those out so treat maps with no FiB data as indexed Change 3526873 by Ben.Zeigler #jira UE-46627 Change it so blueprint or native subclasses of static mesh actor cannot be added to clusters, as they are not likely to be immutable the way the base class is Add code to to the ubergraph frame to fall back to hard reference serialization if the reference collector doesn't support weak references, such as the cluster collector Change 3526958 by Marc.Audy (4.17) Don't copy and then break pin links when reconstructing. Instead simply move. #jira UE-46935 Change 3528916 by Marc.Audy PR #3609: Adds GetKeysForAxis() to complement GetKeysForAction() in UPlayerInput (Contributed by alanedwardes) #jira UE-45347 Change 3529080 by mason.seay BP asset for undetermined type bug Change 3529381 by Marc.Audy Fix ability to insert duplicates in to a set or map Change 3529471 by Dan.Oconnor Fix for clang 4.0 error: definition of builtin function '__rdtsc' inline unsigned long long __rdtsc() Change 3530876 by Marc.Audy Based on PR #3457: Add MakeSet BP node (Contributed by projectgheist) Also refactored MakeArray/Set to share a base MakeContainer class Cleaned up some dead code from MakeArray Added icon for MakeSet Added Functional Test for MakeSet #jira UE-43717 Change 3531070 by Phillip.Kavan #jira UE-46866 - Fix crash on load when an external variable member reference's owning type cannot be loaded. Change summary: - Modified FBlueprintEditorUtils::GetSkeletonClass() to check for NULL before attempting to check for the generating BP. Change 3531081 by Marc.Audy Remove deprecated CustomMapParamValue code Change 3531094 by Phillip.Kavan #jira UE-46952 - Fix a packaging code build failure that will occur with a nativized Blueprint class that contains a UInterfaceProperty. Change summary: - Modified TScriptInterface::operator=() to cast the given 'SourceObject' instance to the 'InterfaceType' type before assigning to 'SourceInterface'. This was necessary because if the caller (in this case nativized codegen) passes in a UObject* that does not explicitly inherit from 'InterfaceType', then it will need to go through the object's GetInterfaceAddress() API instead and cast the result back to an 'InterfaceType' pointer. Change 3531186 by Phillip.Kavan Back out changelist 3531094 (temp CIS fix). #rnx Change 3532082 by Marc.Audy Move garbage collection timers and other management to UEngine instead of UWorld Fixes CollectGarbage blueprint node not working in shipping #jira UE-46566 Change 3532134 by Phillip.Kavan Restored changelist 3531094 w/ fix for non-unity. - Mirrored from //UE4/Release-4.17 (CL# 3531232). #rnx Change 3533009 by Marc.Audy Fixup missing function and deprecation warnings Change 3534056 by Marc.Audy (4.17) Fix expose on spawn of map and sets to work #jira UE-47140 Change 3534761 by Marc.Audy (4.17) Apply code review changes to Dev-Framework as well #rnx Change 3535147 by Dan.Oconnor Build fix, already made in 4.17 #rnx Change 3535530 by mason.seay Resaving to remove error when opening level blueprint Change 3535581 by Marc.Audy Class Properties are only identical if they are literally the same object. Do not consider the deep compare port flags as object property base does. #jira UE-46533 Change 3535583 by Marc.Audy When properties are imported in to a child actor component the cached instance data is invalidated, so clear it. #jira UE-46533 Change 3535617 by Marc.Audy PR #3788: UE-39237: Prevent (im-)pure casting during BP debugging (Contributed by projectgheist) #jira UE-47188 #jira UE-39237 Change 3535671 by Marc.Audy Change NodeFactory to look at interface to use sequence node instead of each node having to add itself Change 3535955 by Marc.Audy Prevent MakeSet from removing split pins Change 3536114 by Michael.Noland Paper2D: Removing deprecated code from 4.3/4.4 era #rnx Change 3536120 by Michael.Noland Animation: Removed deprecated FTAlphaBlend class and AlphaBlendType.h header Change 3536124 by Michael.Noland Physics: Removed deprecated methods that were replaced by _AssumesLocked variations Change 3536131 by Michael.Noland Slate: Converting remaining uses of EKeyboardFocusCause to EFocusCause and properly deprecating it Change 3536138 by Michael.Noland Slate: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536167 by Dan.Oconnor When a client provides a skeleton class as the self scope, make sure we also use a skel class for non-self scopes - but only if using the compilation manager. Skel classes are not reliably up to date when not using the compilation manager #jira UE-46904 Change 3536221 by Michael.Noland Editor: Removing deprecated code from 4.9 or earlier Change 3536240 by Michael.Noland Blueprints: Removed long-deprecated TypeToString method from the K2 schema #rnx Change 3536243 by Michael.Noland AI: Prevent crashes if UMockTask_Log is created manually rather than via the CreateTask factory method Change 3536244 by Michael.Noland Core: Prevent FScopedExternalProfilerBase::StopScopedTimer() from asserting if called an unmatched number of times with StartScopedTimer, as both are exposed to BPs now Change 3536250 by Michael.Noland CoreUObject: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536253 by Michael.Noland Core: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536310 by Michael.Noland Engine: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536397 by Mieszko.Zielinski Fixed UCrowdFollowingComponent::UpdateCachedDirections crashing when CharacterMovement is not set #UE4 #jira UE-46860 Change 3536404 by Michael.Noland Platform: Added a warning for others when they try to remove this 'deprecated' method Change 3536639 by Michael.Noland CharacterMovement: Changed the name of a variable introduced in CL# 3536397 to better match intent #rnx Change 3536893 by Michael.Noland Blueprints: Clear the stale value on the value pin when a map find node fails to find an item #jira UE-47233 Change 3536902 by Michael.Noland Framework: Killed a couple of more deprecated methods that were not exposed to Blueprints #rnx Change 3537038 by Ben.Marsh Fixing case of iOS directories, pt1 Change 3537039 by Ben.Marsh Fixing case of iOS directories, pt2 Change 3538246 by Michael.Noland UnrealTournament: Fixing issues with renamed enum #rnx Change 3538618 by Ben.Zeigler Fix ensure when closing sequencer transform UI Change 3540213 by Ben.Zeigler #jira UE-47313 Fix crash serializing a MapProperty where the value type has changed for a type that implements ConvertFromType. The address passed to ConvertFromType needs to be the container root, not the specific value address, keys worked because the offset was 0. Change 3540253 by Marc.Audy Only copy default values for input pins as output pins do not have them #rnx Change 3540376 by Marc.Audy Add utility FromPinType for FEdGraphTerminalType #rnx Change 3540433 by Marc.Audy Add MakeMap #jira UE-47093 Unify IsConnectionDisallowed for containers and fix static analysis warning #jira UE-47291 Change 3540585 by Phillip.Kavan #jira UE-47117 - Fix crash on launch of a nativized build that includes an instanced default subobject that's referenced by another instanced default subobject. Change summary: - Modified FEmitDefaultValueHelper::HandleSpecialTypes() to only direct HandleInstancedSubobject() to emit code to create the instanced subobject if it's not a default subobject. This was previously being incorrectly interpreted as an object having the 'RF_ArchetypeObject' flag set; however, default subobjects will also have that flag set in addition to the 'RF_DefaultSubobject' flag. - Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to assert in the 'GetDefaultSubobjectByName' case if the given object is not also a default subobject. Change 3541147 by Dan.Oconnor Fix for not being able to override custom events when using the compilation manager post 3536167 #jira UE-47292 #rnx Change 3541177 by Ben.Zeigler #jira UE-46595, UE-46553 Fix issue where creating a widget template could cause a widget blueprint being cooked to have the wrong package flags, making it appear to be an uncooked package Copy of CL #3541027 Change 3541325 by Dan.Oconnor K2node data table data needs to preload data before the compilation queue is flushed #rnx #jira UE-47319 Change 3541409 by Michael.Noland Blueprints: Added code to reapply any active breakpoints after recompilation when using the BP compilation manager #jira UE-47322 [reimplementing CL# 3541404 in Dev-Framework] Change 3541418 by Dan.Oconnor Fix for bad SKEL_ CDO reference in blueprint bytecode #jira UE-47265 #rnx Change 3541482 by Dan.Oconnor Blanket fix up of preload calls that are being done in AllocateDefaultPins. AllocatDefaultPins is not called until compile, meaning if these preload calls load blueprints they will be loaded while the compilation manager is compiling blueprints #rnx #jira UE-47319 Change 3541817 by Marc.Audy Fix static analysis warnings #rnx Change 3542299 by Michael.Noland Blueprints: Speculative fix for static analysis warning #rnx Change 3542406 by Marc.Audy Use a check slow to avoid any cost #rnx Change 3542486 by Michael.Noland Asset Manager: Removing an unnecessary ensure (it's a potentially expected case) #jira UE-47380 Change 3542659 by Michael.Noland Blueprints: Clear out null entries in the LastEditedDocuments list during PostLoad() and remove entries when a graph is being deleted to prevent their generation in the first place #jira UE-47385 Change 3543620 by Dan.Oconnor Remove overzealous ensure - we may recompile blueprints that are asynchronously loading when a user triggers a synchronous compile #jira UE-47415 #rnx Change 3518415 by Ben.Zeigler #jira UE-46574 Deprecate IPlatformChunkInstall::SetChunkInstallDelgate as it was spelled wrong, was only half implemented, and did not support success vs failure Replace with AddChunkInstallDelegate, which supports a bool error code and is bound once instead of separately for each chunk. All implementations support this delegate at a basic level, although several could be improved to call the failure delegate in more cases Change 3534339 by Michael.Noland Platforms: Changed DEPRECATED() macro description to use 4.xx rather than a speciifc version in examples, so it doesn't show up when removing deprecated code [CL 3544050 by Marc Audy in Main branch]
2017-07-19 09:49:59 -04:00
return bInCanTogglePurity;
};
if (bIsPureCast)
{
MenuEntryTitle = LOCTEXT("MakeImpureTitle", "Convert to impure cast");
MenuEntryTooltip = LOCTEXT("MakeImpureTooltip", "Adds in branching execution pins so that you can separatly handle when the cast fails/succeeds.");
const UEdGraphSchema_K2* K2Schema = Cast<UEdGraphSchema_K2>(GetSchema());
check(K2Schema != nullptr);
bCanTogglePurity = K2Schema->DoesGraphSupportImpureFunctions(GetGraph());
if (!bCanTogglePurity)
{
MenuEntryTooltip = LOCTEXT("CannotMakeImpureTooltip", "This graph does not support impure calls (and you should therefore test the cast's result for validity).");
}
}
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3544039) #lockdown Nick.Penwarden #rb none #rnx ===================================== MAJOR FEATURES + CHANGES ===================================== Change 3343905 by Dan.Oconnor ResolveMember optimizations and moved into cpp. ResolveMember<UFunction> now checks UClass::FuncMap before doing more expensive searches Change 3346637 by Ben.Zeigler Actually fix in non editor builds Change 3355484 by Dan.Oconnor Back out FMemberReference Optimization Change 3425833 by Ben.Zeigler #jira UE-31749 Fix it so Undo works properly when modifying a local variable #jira UE-44736 Fix it so changing the type of a local variable correctly resets the default value Change 3510091 by Marc.Audy Expose on Spawn functional test #rnx Change 3510100 by Marc.Audy Fix spelling error #rnx Change 3510132 by Marc.Audy Fix issues with marking a widget blueprint class as abstract Change 3510133 by Marc.Audy Minor code cleanup #rnx Change 3510178 by Ben.Zeigler #jira UE-46500 Fix it so editor-only and transient stuct members are not serialized for literal blueprint structs. It's unsafe to serialize them because they may not exist in the cooked build Change 3510466 by Ben.Zeigler Start adding basic ability system tests to enginetest, very minimal so far Change 3511295 by Marc.Audy Fix wasted work going weak -> object -> weak -> object #rnx Change 3511824 by Marc.Audy Fix spelling error in tooltip #jira UE-46515 #rnx Change 3514446 by Ben.Zeigler Fix ActorBoundEvent and ComponentBoundEvent to always refresh their event signature from the delegate property they are bound to. This is required to correctly deal with delegate signatures being moved or renamed. Both types now do the fixup one time, in ReconstructNode. Change 3514578 by Marc.Audy Move clearing of the actor component need end of frame update mark to base class instead of just primitive component Change 3514583 by Ben.Zeigler Better fix to last delegate checkin that also handles moving functions between modules but not renaming Change 3515325 by Dan.Oconnor Fix for rare orphan pin false positive, rare exposed on spawn false positive #rnx Change 3515761 by Marc.Audy fix shipping configuration #rnx Change 3515772 by Marc.Audy Fix static analysis warnings #rnx Change 3516287 by Marc.Audy Fix references to instanced components not being updated when resetting component to default #jira UE-44706 #rnx Change 3516303 by Marc.Audy Back out CL# 3516287 while an oddity is investigated #rnx Change 3516563 by Marc.Audy (4.17) Fix references to instanced components not being updated when resetting component to default #jira UE-44706 Change 3516637 by Phillip.Kavan #jira UE-44661 - Fix potential crash when changing the ChildActorComponent class default value on a Blueprint that also sets the class in the Construction Script. Change summary: - Modified UChildActorComponent::DestroyChildActor() to move the check for PendingKill/Unreachable so that we can also rename a defunct ChildActor instance out of the way in order to allow for a new ChildActor instance w/ the cached name. Change 3517735 by Marc.Audy Avoid unnecessary string copy #rnx Change 3517931 by Marc.Audy Small optimization to CleanupActors Change 3518221 by Dan.Oconnor Fix rare crash when running ConformImplementedEvents when async loading #jira UE-45348 Change 3518270 by Ben.Zeigler #jira UE-46574 Add FCollectionReference type and customization to allow setting an FName to an editor collection Add AssetCollection to PrimaryAssetLabel that derives the bundled assets from an editor collection Change 3518271 by Marc.Audy Get rid of unnecessary construction differentiation if custom reset is being used Change 3518310 by Ben.Marsh Re-adding IOS files with correct case. Change 3518423 by Ben.Zeigler #jira UE-46574 Initial support for chunk installation in Asset Manager. Refactor AssetManagerSettings so it copies runtime bools into the asset manager for fast access Add a concept of a stalled streamable manager handle, handles can be created stalled and will not execute their async load until all needed resources have been acquired externally Change 3518480 by Marc.Audy Correctly get the variable reference for an input variable get from the member scope rather than a member variable of the same name on the class #jira UE-46737 Change 3518498 by Ben.Zeigler Fix bug with AssetManager where requesting the same load twice in a row before the first one finishes caused the complete callback to get called too early for the second load Update test map to catch this Change 3518526 by Ben.Zeigler IOS Fix Change 3518619 by Ben.Zeigler #jira UE-46744 Fix issue where refreshing asset manager editor settings would throw away asset label rules overrides, causing the recursive flag to accidentally get set Change 3518747 by Phillip.Kavan #jira UE-43154 - Prevent ConstructGenericObject nodes from compiling if the selected type does not include 'BlueprintType' in its inheritance hierarchy. Change summary: - Moved UGameplayStatics::CanSpawnObjectOfClass() into UK2Node_GenericCreateObject as a local util method (per JIRA notes). This was not exposed to Blueprints and as such was inconsistent with the rest of the API. - Modified UGameplayStatics::SpawnObject() to no longer call CanSpawnObjectOfClass(). This seemed redundant as this will already have been called during node validation at Blueprint compile time. - Refactored CanSpawnObjectOfClass() into FK2Node_GenericCreateObject_Utils. Walking up the inheritance chain no longer starts out w/ the assumption that 'BlueprintType' is set by default, which was previously including a lot of engine-specific classes into the "allowed" set (e.g. UByteProperty). Also unified the 2 loop iterations that were being used to check for 'BlueprintType'/'NotBlueprintType' and 'DontUseGenericSpawnObjectName', as well as the check for whether or not the class is a derivative of AActor/UActorComponent. - Modified UK2Node_GenericCreateObject::EarlyValidation() to call FK2Node_GenericCreateObject_Utils::CanSpawnObjectOfClass() and emit a slightly more informative error message to the BP compiler message log. Change 3518756 by Michael.Noland (4.17) Framework: Prevent various asserts when USplineComponent methods are called on a spline with no points Change 3518760 by Michael.Noland Core: Changed FRuntimeAssetCache ensures to ensureAsRuntimeWarning Change 3518771 by Michael.Noland AI: Prevent an ensure in UBlackboardComponent::ClearValue when called on a component with a null BlackboardAsset Change 3518818 by Michael.Noland Rendering: Fixed a whitespace issue in UCanvasRenderTarget2D::RepaintCanvas() #rnx Change 3518822 by Michael.Noland Sequencer: Prevented crashes in some methods of UMovieSceneSequencePlayer when there is no Sequence set Sequencer: Prevented a crash in FMovieSceneRootEvaluationTemplateInstance::Evaluate when the instance has no template set Change 3518824 by Michael.Noland Landscape: Marked ULandscapeComponent and ULandscapeHeightfieldCollisionComponent as Within=LandscapeProxy, since they do CastChecked on their Outer all the time Change 3519073 by Michael.Noland QAGame: Fixed a crash in UQASynth::PlaySynth() if called on a directly created instance rather than using the factory method Change 3519076 by Michael.Noland Preventing crashes in UAutomationPerformaceHelper (sic) when spawned abnormally for fuzzing (assumes that the outer will have a route to a world) #rnx Change 3519079 by Michael.Noland Sequencer: Fixed a potential crash in UMediaPlaylist::Insert and UMediaPlaylist::RemoveAt when passed an invalid index Change 3519081 by Michael.Noland Blueprints: Added support for creating appropriate outers for objects that must be nested within another class during fuzzing (ones that specify Within=, other relationships aren't knowable yet) Change 3519082 by Michael.Noland VR: Prevent a crash in UMRMeshComponent::ConnectReconstructor when passed a null reconstructor Change 3519084 by Michael.Noland Rendering: Prevent crashes when UNiagaraComponent::GetEffectDataInterface is called on a component with no effect asset set Change 3521889 by Michael.Noland Sequencer: Prevented a bogus static analysis warning by reworking the code (FixedFrameInterval could have only been set if the pointer were valid from the line above) #rnx Change 3521987 by Michael.Noland Animation: Prevent a couple of potential asserts in UControlRig::GetOrAllocateSubControlRig Change 3522101 by Michael.Noland Physics: Improved the comment on UPhysicalMaterial::Friction #rn Change 3522105 by Michael.Noland Physics: Fixed a few crashes in UVehicleWheel when spawned directly Change 3522106 by Michael.Noland Framework: Marked ULevelStreaming as Within=World, since it does CastChecked on the Outer all the time Change 3522109 by Michael.Noland Animation: Marked UAnimInstance as Within=SkeletalMeshComponent since it assumes the outer in various places Change 3522121 by Michael.Noland Mobile: Prevent UMobileInstalledContent methods from crashing when called on a created instance in an uncooked build (no installed manifest) Change 3522783 by Zak.Middleton #ue4 - Imported new simple collision for Engine/Content/BasicShaps/Cylinder.uasset which is a single convex shape (rather than being 4 shapes as before). Change 3525477 by Dan.Oconnor Remove Tooltip, Category, and HideCategories tooltip from the blueprint generated class if source data is cleared Change 3526538 by Ben.Zeigler Refresh primary asset labels if their bundles are different at all and not just if they're added or removed. This is required because they now work based on collections or directories. This fixes issue with the onboarding collection changes not correctly modifying chunks Copy of CL #3526501 Change 3526817 by Ben.Zeigler #jira UE-46917 Fix issue where maps that do not contain level script blueprints were being counted as unindexed for find in blueprints. The old behavior depended on detecting the existence of empty tags, but the asset registry now filters those out so treat maps with no FiB data as indexed Change 3526873 by Ben.Zeigler #jira UE-46627 Change it so blueprint or native subclasses of static mesh actor cannot be added to clusters, as they are not likely to be immutable the way the base class is Add code to to the ubergraph frame to fall back to hard reference serialization if the reference collector doesn't support weak references, such as the cluster collector Change 3526958 by Marc.Audy (4.17) Don't copy and then break pin links when reconstructing. Instead simply move. #jira UE-46935 Change 3528916 by Marc.Audy PR #3609: Adds GetKeysForAxis() to complement GetKeysForAction() in UPlayerInput (Contributed by alanedwardes) #jira UE-45347 Change 3529080 by mason.seay BP asset for undetermined type bug Change 3529381 by Marc.Audy Fix ability to insert duplicates in to a set or map Change 3529471 by Dan.Oconnor Fix for clang 4.0 error: definition of builtin function '__rdtsc' inline unsigned long long __rdtsc() Change 3530876 by Marc.Audy Based on PR #3457: Add MakeSet BP node (Contributed by projectgheist) Also refactored MakeArray/Set to share a base MakeContainer class Cleaned up some dead code from MakeArray Added icon for MakeSet Added Functional Test for MakeSet #jira UE-43717 Change 3531070 by Phillip.Kavan #jira UE-46866 - Fix crash on load when an external variable member reference's owning type cannot be loaded. Change summary: - Modified FBlueprintEditorUtils::GetSkeletonClass() to check for NULL before attempting to check for the generating BP. Change 3531081 by Marc.Audy Remove deprecated CustomMapParamValue code Change 3531094 by Phillip.Kavan #jira UE-46952 - Fix a packaging code build failure that will occur with a nativized Blueprint class that contains a UInterfaceProperty. Change summary: - Modified TScriptInterface::operator=() to cast the given 'SourceObject' instance to the 'InterfaceType' type before assigning to 'SourceInterface'. This was necessary because if the caller (in this case nativized codegen) passes in a UObject* that does not explicitly inherit from 'InterfaceType', then it will need to go through the object's GetInterfaceAddress() API instead and cast the result back to an 'InterfaceType' pointer. Change 3531186 by Phillip.Kavan Back out changelist 3531094 (temp CIS fix). #rnx Change 3532082 by Marc.Audy Move garbage collection timers and other management to UEngine instead of UWorld Fixes CollectGarbage blueprint node not working in shipping #jira UE-46566 Change 3532134 by Phillip.Kavan Restored changelist 3531094 w/ fix for non-unity. - Mirrored from //UE4/Release-4.17 (CL# 3531232). #rnx Change 3533009 by Marc.Audy Fixup missing function and deprecation warnings Change 3534056 by Marc.Audy (4.17) Fix expose on spawn of map and sets to work #jira UE-47140 Change 3534761 by Marc.Audy (4.17) Apply code review changes to Dev-Framework as well #rnx Change 3535147 by Dan.Oconnor Build fix, already made in 4.17 #rnx Change 3535530 by mason.seay Resaving to remove error when opening level blueprint Change 3535581 by Marc.Audy Class Properties are only identical if they are literally the same object. Do not consider the deep compare port flags as object property base does. #jira UE-46533 Change 3535583 by Marc.Audy When properties are imported in to a child actor component the cached instance data is invalidated, so clear it. #jira UE-46533 Change 3535617 by Marc.Audy PR #3788: UE-39237: Prevent (im-)pure casting during BP debugging (Contributed by projectgheist) #jira UE-47188 #jira UE-39237 Change 3535671 by Marc.Audy Change NodeFactory to look at interface to use sequence node instead of each node having to add itself Change 3535955 by Marc.Audy Prevent MakeSet from removing split pins Change 3536114 by Michael.Noland Paper2D: Removing deprecated code from 4.3/4.4 era #rnx Change 3536120 by Michael.Noland Animation: Removed deprecated FTAlphaBlend class and AlphaBlendType.h header Change 3536124 by Michael.Noland Physics: Removed deprecated methods that were replaced by _AssumesLocked variations Change 3536131 by Michael.Noland Slate: Converting remaining uses of EKeyboardFocusCause to EFocusCause and properly deprecating it Change 3536138 by Michael.Noland Slate: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536167 by Dan.Oconnor When a client provides a skeleton class as the self scope, make sure we also use a skel class for non-self scopes - but only if using the compilation manager. Skel classes are not reliably up to date when not using the compilation manager #jira UE-46904 Change 3536221 by Michael.Noland Editor: Removing deprecated code from 4.9 or earlier Change 3536240 by Michael.Noland Blueprints: Removed long-deprecated TypeToString method from the K2 schema #rnx Change 3536243 by Michael.Noland AI: Prevent crashes if UMockTask_Log is created manually rather than via the CreateTask factory method Change 3536244 by Michael.Noland Core: Prevent FScopedExternalProfilerBase::StopScopedTimer() from asserting if called an unmatched number of times with StartScopedTimer, as both are exposed to BPs now Change 3536250 by Michael.Noland CoreUObject: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536253 by Michael.Noland Core: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536310 by Michael.Noland Engine: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536397 by Mieszko.Zielinski Fixed UCrowdFollowingComponent::UpdateCachedDirections crashing when CharacterMovement is not set #UE4 #jira UE-46860 Change 3536404 by Michael.Noland Platform: Added a warning for others when they try to remove this 'deprecated' method Change 3536639 by Michael.Noland CharacterMovement: Changed the name of a variable introduced in CL# 3536397 to better match intent #rnx Change 3536893 by Michael.Noland Blueprints: Clear the stale value on the value pin when a map find node fails to find an item #jira UE-47233 Change 3536902 by Michael.Noland Framework: Killed a couple of more deprecated methods that were not exposed to Blueprints #rnx Change 3537038 by Ben.Marsh Fixing case of iOS directories, pt1 Change 3537039 by Ben.Marsh Fixing case of iOS directories, pt2 Change 3538246 by Michael.Noland UnrealTournament: Fixing issues with renamed enum #rnx Change 3538618 by Ben.Zeigler Fix ensure when closing sequencer transform UI Change 3540213 by Ben.Zeigler #jira UE-47313 Fix crash serializing a MapProperty where the value type has changed for a type that implements ConvertFromType. The address passed to ConvertFromType needs to be the container root, not the specific value address, keys worked because the offset was 0. Change 3540253 by Marc.Audy Only copy default values for input pins as output pins do not have them #rnx Change 3540376 by Marc.Audy Add utility FromPinType for FEdGraphTerminalType #rnx Change 3540433 by Marc.Audy Add MakeMap #jira UE-47093 Unify IsConnectionDisallowed for containers and fix static analysis warning #jira UE-47291 Change 3540585 by Phillip.Kavan #jira UE-47117 - Fix crash on launch of a nativized build that includes an instanced default subobject that's referenced by another instanced default subobject. Change summary: - Modified FEmitDefaultValueHelper::HandleSpecialTypes() to only direct HandleInstancedSubobject() to emit code to create the instanced subobject if it's not a default subobject. This was previously being incorrectly interpreted as an object having the 'RF_ArchetypeObject' flag set; however, default subobjects will also have that flag set in addition to the 'RF_DefaultSubobject' flag. - Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to assert in the 'GetDefaultSubobjectByName' case if the given object is not also a default subobject. Change 3541147 by Dan.Oconnor Fix for not being able to override custom events when using the compilation manager post 3536167 #jira UE-47292 #rnx Change 3541177 by Ben.Zeigler #jira UE-46595, UE-46553 Fix issue where creating a widget template could cause a widget blueprint being cooked to have the wrong package flags, making it appear to be an uncooked package Copy of CL #3541027 Change 3541325 by Dan.Oconnor K2node data table data needs to preload data before the compilation queue is flushed #rnx #jira UE-47319 Change 3541409 by Michael.Noland Blueprints: Added code to reapply any active breakpoints after recompilation when using the BP compilation manager #jira UE-47322 [reimplementing CL# 3541404 in Dev-Framework] Change 3541418 by Dan.Oconnor Fix for bad SKEL_ CDO reference in blueprint bytecode #jira UE-47265 #rnx Change 3541482 by Dan.Oconnor Blanket fix up of preload calls that are being done in AllocateDefaultPins. AllocatDefaultPins is not called until compile, meaning if these preload calls load blueprints they will be loaded while the compilation manager is compiling blueprints #rnx #jira UE-47319 Change 3541817 by Marc.Audy Fix static analysis warnings #rnx Change 3542299 by Michael.Noland Blueprints: Speculative fix for static analysis warning #rnx Change 3542406 by Marc.Audy Use a check slow to avoid any cost #rnx Change 3542486 by Michael.Noland Asset Manager: Removing an unnecessary ensure (it's a potentially expected case) #jira UE-47380 Change 3542659 by Michael.Noland Blueprints: Clear out null entries in the LastEditedDocuments list during PostLoad() and remove entries when a graph is being deleted to prevent their generation in the first place #jira UE-47385 Change 3543620 by Dan.Oconnor Remove overzealous ensure - we may recompile blueprints that are asynchronously loading when a user triggers a synchronous compile #jira UE-47415 #rnx Change 3518415 by Ben.Zeigler #jira UE-46574 Deprecate IPlatformChunkInstall::SetChunkInstallDelgate as it was spelled wrong, was only half implemented, and did not support success vs failure Replace with AddChunkInstallDelegate, which supports a bool error code and is bound once instead of separately for each chunk. All implementations support this delegate at a basic level, although several could be improved to call the failure delegate in more cases Change 3534339 by Michael.Noland Platforms: Changed DEPRECATED() macro description to use 4.xx rather than a speciifc version in examples, so it doesn't show up when removing deprecated code [CL 3544050 by Marc Audy in Main branch]
2017-07-19 09:49:59 -04:00
FToolMenuSection& Section = Menu->AddSection("K2NodeDynamicCast", LOCTEXT("DynamicCastHeader", "Cast"));
Section.AddMenuEntry(
"TogglePurity",
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3544039) #lockdown Nick.Penwarden #rb none #rnx ===================================== MAJOR FEATURES + CHANGES ===================================== Change 3343905 by Dan.Oconnor ResolveMember optimizations and moved into cpp. ResolveMember<UFunction> now checks UClass::FuncMap before doing more expensive searches Change 3346637 by Ben.Zeigler Actually fix in non editor builds Change 3355484 by Dan.Oconnor Back out FMemberReference Optimization Change 3425833 by Ben.Zeigler #jira UE-31749 Fix it so Undo works properly when modifying a local variable #jira UE-44736 Fix it so changing the type of a local variable correctly resets the default value Change 3510091 by Marc.Audy Expose on Spawn functional test #rnx Change 3510100 by Marc.Audy Fix spelling error #rnx Change 3510132 by Marc.Audy Fix issues with marking a widget blueprint class as abstract Change 3510133 by Marc.Audy Minor code cleanup #rnx Change 3510178 by Ben.Zeigler #jira UE-46500 Fix it so editor-only and transient stuct members are not serialized for literal blueprint structs. It's unsafe to serialize them because they may not exist in the cooked build Change 3510466 by Ben.Zeigler Start adding basic ability system tests to enginetest, very minimal so far Change 3511295 by Marc.Audy Fix wasted work going weak -> object -> weak -> object #rnx Change 3511824 by Marc.Audy Fix spelling error in tooltip #jira UE-46515 #rnx Change 3514446 by Ben.Zeigler Fix ActorBoundEvent and ComponentBoundEvent to always refresh their event signature from the delegate property they are bound to. This is required to correctly deal with delegate signatures being moved or renamed. Both types now do the fixup one time, in ReconstructNode. Change 3514578 by Marc.Audy Move clearing of the actor component need end of frame update mark to base class instead of just primitive component Change 3514583 by Ben.Zeigler Better fix to last delegate checkin that also handles moving functions between modules but not renaming Change 3515325 by Dan.Oconnor Fix for rare orphan pin false positive, rare exposed on spawn false positive #rnx Change 3515761 by Marc.Audy fix shipping configuration #rnx Change 3515772 by Marc.Audy Fix static analysis warnings #rnx Change 3516287 by Marc.Audy Fix references to instanced components not being updated when resetting component to default #jira UE-44706 #rnx Change 3516303 by Marc.Audy Back out CL# 3516287 while an oddity is investigated #rnx Change 3516563 by Marc.Audy (4.17) Fix references to instanced components not being updated when resetting component to default #jira UE-44706 Change 3516637 by Phillip.Kavan #jira UE-44661 - Fix potential crash when changing the ChildActorComponent class default value on a Blueprint that also sets the class in the Construction Script. Change summary: - Modified UChildActorComponent::DestroyChildActor() to move the check for PendingKill/Unreachable so that we can also rename a defunct ChildActor instance out of the way in order to allow for a new ChildActor instance w/ the cached name. Change 3517735 by Marc.Audy Avoid unnecessary string copy #rnx Change 3517931 by Marc.Audy Small optimization to CleanupActors Change 3518221 by Dan.Oconnor Fix rare crash when running ConformImplementedEvents when async loading #jira UE-45348 Change 3518270 by Ben.Zeigler #jira UE-46574 Add FCollectionReference type and customization to allow setting an FName to an editor collection Add AssetCollection to PrimaryAssetLabel that derives the bundled assets from an editor collection Change 3518271 by Marc.Audy Get rid of unnecessary construction differentiation if custom reset is being used Change 3518310 by Ben.Marsh Re-adding IOS files with correct case. Change 3518423 by Ben.Zeigler #jira UE-46574 Initial support for chunk installation in Asset Manager. Refactor AssetManagerSettings so it copies runtime bools into the asset manager for fast access Add a concept of a stalled streamable manager handle, handles can be created stalled and will not execute their async load until all needed resources have been acquired externally Change 3518480 by Marc.Audy Correctly get the variable reference for an input variable get from the member scope rather than a member variable of the same name on the class #jira UE-46737 Change 3518498 by Ben.Zeigler Fix bug with AssetManager where requesting the same load twice in a row before the first one finishes caused the complete callback to get called too early for the second load Update test map to catch this Change 3518526 by Ben.Zeigler IOS Fix Change 3518619 by Ben.Zeigler #jira UE-46744 Fix issue where refreshing asset manager editor settings would throw away asset label rules overrides, causing the recursive flag to accidentally get set Change 3518747 by Phillip.Kavan #jira UE-43154 - Prevent ConstructGenericObject nodes from compiling if the selected type does not include 'BlueprintType' in its inheritance hierarchy. Change summary: - Moved UGameplayStatics::CanSpawnObjectOfClass() into UK2Node_GenericCreateObject as a local util method (per JIRA notes). This was not exposed to Blueprints and as such was inconsistent with the rest of the API. - Modified UGameplayStatics::SpawnObject() to no longer call CanSpawnObjectOfClass(). This seemed redundant as this will already have been called during node validation at Blueprint compile time. - Refactored CanSpawnObjectOfClass() into FK2Node_GenericCreateObject_Utils. Walking up the inheritance chain no longer starts out w/ the assumption that 'BlueprintType' is set by default, which was previously including a lot of engine-specific classes into the "allowed" set (e.g. UByteProperty). Also unified the 2 loop iterations that were being used to check for 'BlueprintType'/'NotBlueprintType' and 'DontUseGenericSpawnObjectName', as well as the check for whether or not the class is a derivative of AActor/UActorComponent. - Modified UK2Node_GenericCreateObject::EarlyValidation() to call FK2Node_GenericCreateObject_Utils::CanSpawnObjectOfClass() and emit a slightly more informative error message to the BP compiler message log. Change 3518756 by Michael.Noland (4.17) Framework: Prevent various asserts when USplineComponent methods are called on a spline with no points Change 3518760 by Michael.Noland Core: Changed FRuntimeAssetCache ensures to ensureAsRuntimeWarning Change 3518771 by Michael.Noland AI: Prevent an ensure in UBlackboardComponent::ClearValue when called on a component with a null BlackboardAsset Change 3518818 by Michael.Noland Rendering: Fixed a whitespace issue in UCanvasRenderTarget2D::RepaintCanvas() #rnx Change 3518822 by Michael.Noland Sequencer: Prevented crashes in some methods of UMovieSceneSequencePlayer when there is no Sequence set Sequencer: Prevented a crash in FMovieSceneRootEvaluationTemplateInstance::Evaluate when the instance has no template set Change 3518824 by Michael.Noland Landscape: Marked ULandscapeComponent and ULandscapeHeightfieldCollisionComponent as Within=LandscapeProxy, since they do CastChecked on their Outer all the time Change 3519073 by Michael.Noland QAGame: Fixed a crash in UQASynth::PlaySynth() if called on a directly created instance rather than using the factory method Change 3519076 by Michael.Noland Preventing crashes in UAutomationPerformaceHelper (sic) when spawned abnormally for fuzzing (assumes that the outer will have a route to a world) #rnx Change 3519079 by Michael.Noland Sequencer: Fixed a potential crash in UMediaPlaylist::Insert and UMediaPlaylist::RemoveAt when passed an invalid index Change 3519081 by Michael.Noland Blueprints: Added support for creating appropriate outers for objects that must be nested within another class during fuzzing (ones that specify Within=, other relationships aren't knowable yet) Change 3519082 by Michael.Noland VR: Prevent a crash in UMRMeshComponent::ConnectReconstructor when passed a null reconstructor Change 3519084 by Michael.Noland Rendering: Prevent crashes when UNiagaraComponent::GetEffectDataInterface is called on a component with no effect asset set Change 3521889 by Michael.Noland Sequencer: Prevented a bogus static analysis warning by reworking the code (FixedFrameInterval could have only been set if the pointer were valid from the line above) #rnx Change 3521987 by Michael.Noland Animation: Prevent a couple of potential asserts in UControlRig::GetOrAllocateSubControlRig Change 3522101 by Michael.Noland Physics: Improved the comment on UPhysicalMaterial::Friction #rn Change 3522105 by Michael.Noland Physics: Fixed a few crashes in UVehicleWheel when spawned directly Change 3522106 by Michael.Noland Framework: Marked ULevelStreaming as Within=World, since it does CastChecked on the Outer all the time Change 3522109 by Michael.Noland Animation: Marked UAnimInstance as Within=SkeletalMeshComponent since it assumes the outer in various places Change 3522121 by Michael.Noland Mobile: Prevent UMobileInstalledContent methods from crashing when called on a created instance in an uncooked build (no installed manifest) Change 3522783 by Zak.Middleton #ue4 - Imported new simple collision for Engine/Content/BasicShaps/Cylinder.uasset which is a single convex shape (rather than being 4 shapes as before). Change 3525477 by Dan.Oconnor Remove Tooltip, Category, and HideCategories tooltip from the blueprint generated class if source data is cleared Change 3526538 by Ben.Zeigler Refresh primary asset labels if their bundles are different at all and not just if they're added or removed. This is required because they now work based on collections or directories. This fixes issue with the onboarding collection changes not correctly modifying chunks Copy of CL #3526501 Change 3526817 by Ben.Zeigler #jira UE-46917 Fix issue where maps that do not contain level script blueprints were being counted as unindexed for find in blueprints. The old behavior depended on detecting the existence of empty tags, but the asset registry now filters those out so treat maps with no FiB data as indexed Change 3526873 by Ben.Zeigler #jira UE-46627 Change it so blueprint or native subclasses of static mesh actor cannot be added to clusters, as they are not likely to be immutable the way the base class is Add code to to the ubergraph frame to fall back to hard reference serialization if the reference collector doesn't support weak references, such as the cluster collector Change 3526958 by Marc.Audy (4.17) Don't copy and then break pin links when reconstructing. Instead simply move. #jira UE-46935 Change 3528916 by Marc.Audy PR #3609: Adds GetKeysForAxis() to complement GetKeysForAction() in UPlayerInput (Contributed by alanedwardes) #jira UE-45347 Change 3529080 by mason.seay BP asset for undetermined type bug Change 3529381 by Marc.Audy Fix ability to insert duplicates in to a set or map Change 3529471 by Dan.Oconnor Fix for clang 4.0 error: definition of builtin function '__rdtsc' inline unsigned long long __rdtsc() Change 3530876 by Marc.Audy Based on PR #3457: Add MakeSet BP node (Contributed by projectgheist) Also refactored MakeArray/Set to share a base MakeContainer class Cleaned up some dead code from MakeArray Added icon for MakeSet Added Functional Test for MakeSet #jira UE-43717 Change 3531070 by Phillip.Kavan #jira UE-46866 - Fix crash on load when an external variable member reference's owning type cannot be loaded. Change summary: - Modified FBlueprintEditorUtils::GetSkeletonClass() to check for NULL before attempting to check for the generating BP. Change 3531081 by Marc.Audy Remove deprecated CustomMapParamValue code Change 3531094 by Phillip.Kavan #jira UE-46952 - Fix a packaging code build failure that will occur with a nativized Blueprint class that contains a UInterfaceProperty. Change summary: - Modified TScriptInterface::operator=() to cast the given 'SourceObject' instance to the 'InterfaceType' type before assigning to 'SourceInterface'. This was necessary because if the caller (in this case nativized codegen) passes in a UObject* that does not explicitly inherit from 'InterfaceType', then it will need to go through the object's GetInterfaceAddress() API instead and cast the result back to an 'InterfaceType' pointer. Change 3531186 by Phillip.Kavan Back out changelist 3531094 (temp CIS fix). #rnx Change 3532082 by Marc.Audy Move garbage collection timers and other management to UEngine instead of UWorld Fixes CollectGarbage blueprint node not working in shipping #jira UE-46566 Change 3532134 by Phillip.Kavan Restored changelist 3531094 w/ fix for non-unity. - Mirrored from //UE4/Release-4.17 (CL# 3531232). #rnx Change 3533009 by Marc.Audy Fixup missing function and deprecation warnings Change 3534056 by Marc.Audy (4.17) Fix expose on spawn of map and sets to work #jira UE-47140 Change 3534761 by Marc.Audy (4.17) Apply code review changes to Dev-Framework as well #rnx Change 3535147 by Dan.Oconnor Build fix, already made in 4.17 #rnx Change 3535530 by mason.seay Resaving to remove error when opening level blueprint Change 3535581 by Marc.Audy Class Properties are only identical if they are literally the same object. Do not consider the deep compare port flags as object property base does. #jira UE-46533 Change 3535583 by Marc.Audy When properties are imported in to a child actor component the cached instance data is invalidated, so clear it. #jira UE-46533 Change 3535617 by Marc.Audy PR #3788: UE-39237: Prevent (im-)pure casting during BP debugging (Contributed by projectgheist) #jira UE-47188 #jira UE-39237 Change 3535671 by Marc.Audy Change NodeFactory to look at interface to use sequence node instead of each node having to add itself Change 3535955 by Marc.Audy Prevent MakeSet from removing split pins Change 3536114 by Michael.Noland Paper2D: Removing deprecated code from 4.3/4.4 era #rnx Change 3536120 by Michael.Noland Animation: Removed deprecated FTAlphaBlend class and AlphaBlendType.h header Change 3536124 by Michael.Noland Physics: Removed deprecated methods that were replaced by _AssumesLocked variations Change 3536131 by Michael.Noland Slate: Converting remaining uses of EKeyboardFocusCause to EFocusCause and properly deprecating it Change 3536138 by Michael.Noland Slate: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536167 by Dan.Oconnor When a client provides a skeleton class as the self scope, make sure we also use a skel class for non-self scopes - but only if using the compilation manager. Skel classes are not reliably up to date when not using the compilation manager #jira UE-46904 Change 3536221 by Michael.Noland Editor: Removing deprecated code from 4.9 or earlier Change 3536240 by Michael.Noland Blueprints: Removed long-deprecated TypeToString method from the K2 schema #rnx Change 3536243 by Michael.Noland AI: Prevent crashes if UMockTask_Log is created manually rather than via the CreateTask factory method Change 3536244 by Michael.Noland Core: Prevent FScopedExternalProfilerBase::StopScopedTimer() from asserting if called an unmatched number of times with StartScopedTimer, as both are exposed to BPs now Change 3536250 by Michael.Noland CoreUObject: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536253 by Michael.Noland Core: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536310 by Michael.Noland Engine: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536397 by Mieszko.Zielinski Fixed UCrowdFollowingComponent::UpdateCachedDirections crashing when CharacterMovement is not set #UE4 #jira UE-46860 Change 3536404 by Michael.Noland Platform: Added a warning for others when they try to remove this 'deprecated' method Change 3536639 by Michael.Noland CharacterMovement: Changed the name of a variable introduced in CL# 3536397 to better match intent #rnx Change 3536893 by Michael.Noland Blueprints: Clear the stale value on the value pin when a map find node fails to find an item #jira UE-47233 Change 3536902 by Michael.Noland Framework: Killed a couple of more deprecated methods that were not exposed to Blueprints #rnx Change 3537038 by Ben.Marsh Fixing case of iOS directories, pt1 Change 3537039 by Ben.Marsh Fixing case of iOS directories, pt2 Change 3538246 by Michael.Noland UnrealTournament: Fixing issues with renamed enum #rnx Change 3538618 by Ben.Zeigler Fix ensure when closing sequencer transform UI Change 3540213 by Ben.Zeigler #jira UE-47313 Fix crash serializing a MapProperty where the value type has changed for a type that implements ConvertFromType. The address passed to ConvertFromType needs to be the container root, not the specific value address, keys worked because the offset was 0. Change 3540253 by Marc.Audy Only copy default values for input pins as output pins do not have them #rnx Change 3540376 by Marc.Audy Add utility FromPinType for FEdGraphTerminalType #rnx Change 3540433 by Marc.Audy Add MakeMap #jira UE-47093 Unify IsConnectionDisallowed for containers and fix static analysis warning #jira UE-47291 Change 3540585 by Phillip.Kavan #jira UE-47117 - Fix crash on launch of a nativized build that includes an instanced default subobject that's referenced by another instanced default subobject. Change summary: - Modified FEmitDefaultValueHelper::HandleSpecialTypes() to only direct HandleInstancedSubobject() to emit code to create the instanced subobject if it's not a default subobject. This was previously being incorrectly interpreted as an object having the 'RF_ArchetypeObject' flag set; however, default subobjects will also have that flag set in addition to the 'RF_DefaultSubobject' flag. - Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to assert in the 'GetDefaultSubobjectByName' case if the given object is not also a default subobject. Change 3541147 by Dan.Oconnor Fix for not being able to override custom events when using the compilation manager post 3536167 #jira UE-47292 #rnx Change 3541177 by Ben.Zeigler #jira UE-46595, UE-46553 Fix issue where creating a widget template could cause a widget blueprint being cooked to have the wrong package flags, making it appear to be an uncooked package Copy of CL #3541027 Change 3541325 by Dan.Oconnor K2node data table data needs to preload data before the compilation queue is flushed #rnx #jira UE-47319 Change 3541409 by Michael.Noland Blueprints: Added code to reapply any active breakpoints after recompilation when using the BP compilation manager #jira UE-47322 [reimplementing CL# 3541404 in Dev-Framework] Change 3541418 by Dan.Oconnor Fix for bad SKEL_ CDO reference in blueprint bytecode #jira UE-47265 #rnx Change 3541482 by Dan.Oconnor Blanket fix up of preload calls that are being done in AllocateDefaultPins. AllocatDefaultPins is not called until compile, meaning if these preload calls load blueprints they will be loaded while the compilation manager is compiling blueprints #rnx #jira UE-47319 Change 3541817 by Marc.Audy Fix static analysis warnings #rnx Change 3542299 by Michael.Noland Blueprints: Speculative fix for static analysis warning #rnx Change 3542406 by Marc.Audy Use a check slow to avoid any cost #rnx Change 3542486 by Michael.Noland Asset Manager: Removing an unnecessary ensure (it's a potentially expected case) #jira UE-47380 Change 3542659 by Michael.Noland Blueprints: Clear out null entries in the LastEditedDocuments list during PostLoad() and remove entries when a graph is being deleted to prevent their generation in the first place #jira UE-47385 Change 3543620 by Dan.Oconnor Remove overzealous ensure - we may recompile blueprints that are asynchronously loading when a user triggers a synchronous compile #jira UE-47415 #rnx Change 3518415 by Ben.Zeigler #jira UE-46574 Deprecate IPlatformChunkInstall::SetChunkInstallDelgate as it was spelled wrong, was only half implemented, and did not support success vs failure Replace with AddChunkInstallDelegate, which supports a bool error code and is bound once instead of separately for each chunk. All implementations support this delegate at a basic level, although several could be improved to call the failure delegate in more cases Change 3534339 by Michael.Noland Platforms: Changed DEPRECATED() macro description to use 4.xx rather than a speciifc version in examples, so it doesn't show up when removing deprecated code [CL 3544050 by Marc Audy in Main branch]
2017-07-19 09:49:59 -04:00
MenuEntryTitle,
MenuEntryTooltip,
FSlateIcon(),
FUIAction(
FExecuteAction::CreateUObject(const_cast<UK2Node_DynamicCast*>(this), &UK2Node_DynamicCast::TogglePurity),
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3544039) #lockdown Nick.Penwarden #rb none #rnx ===================================== MAJOR FEATURES + CHANGES ===================================== Change 3343905 by Dan.Oconnor ResolveMember optimizations and moved into cpp. ResolveMember<UFunction> now checks UClass::FuncMap before doing more expensive searches Change 3346637 by Ben.Zeigler Actually fix in non editor builds Change 3355484 by Dan.Oconnor Back out FMemberReference Optimization Change 3425833 by Ben.Zeigler #jira UE-31749 Fix it so Undo works properly when modifying a local variable #jira UE-44736 Fix it so changing the type of a local variable correctly resets the default value Change 3510091 by Marc.Audy Expose on Spawn functional test #rnx Change 3510100 by Marc.Audy Fix spelling error #rnx Change 3510132 by Marc.Audy Fix issues with marking a widget blueprint class as abstract Change 3510133 by Marc.Audy Minor code cleanup #rnx Change 3510178 by Ben.Zeigler #jira UE-46500 Fix it so editor-only and transient stuct members are not serialized for literal blueprint structs. It's unsafe to serialize them because they may not exist in the cooked build Change 3510466 by Ben.Zeigler Start adding basic ability system tests to enginetest, very minimal so far Change 3511295 by Marc.Audy Fix wasted work going weak -> object -> weak -> object #rnx Change 3511824 by Marc.Audy Fix spelling error in tooltip #jira UE-46515 #rnx Change 3514446 by Ben.Zeigler Fix ActorBoundEvent and ComponentBoundEvent to always refresh their event signature from the delegate property they are bound to. This is required to correctly deal with delegate signatures being moved or renamed. Both types now do the fixup one time, in ReconstructNode. Change 3514578 by Marc.Audy Move clearing of the actor component need end of frame update mark to base class instead of just primitive component Change 3514583 by Ben.Zeigler Better fix to last delegate checkin that also handles moving functions between modules but not renaming Change 3515325 by Dan.Oconnor Fix for rare orphan pin false positive, rare exposed on spawn false positive #rnx Change 3515761 by Marc.Audy fix shipping configuration #rnx Change 3515772 by Marc.Audy Fix static analysis warnings #rnx Change 3516287 by Marc.Audy Fix references to instanced components not being updated when resetting component to default #jira UE-44706 #rnx Change 3516303 by Marc.Audy Back out CL# 3516287 while an oddity is investigated #rnx Change 3516563 by Marc.Audy (4.17) Fix references to instanced components not being updated when resetting component to default #jira UE-44706 Change 3516637 by Phillip.Kavan #jira UE-44661 - Fix potential crash when changing the ChildActorComponent class default value on a Blueprint that also sets the class in the Construction Script. Change summary: - Modified UChildActorComponent::DestroyChildActor() to move the check for PendingKill/Unreachable so that we can also rename a defunct ChildActor instance out of the way in order to allow for a new ChildActor instance w/ the cached name. Change 3517735 by Marc.Audy Avoid unnecessary string copy #rnx Change 3517931 by Marc.Audy Small optimization to CleanupActors Change 3518221 by Dan.Oconnor Fix rare crash when running ConformImplementedEvents when async loading #jira UE-45348 Change 3518270 by Ben.Zeigler #jira UE-46574 Add FCollectionReference type and customization to allow setting an FName to an editor collection Add AssetCollection to PrimaryAssetLabel that derives the bundled assets from an editor collection Change 3518271 by Marc.Audy Get rid of unnecessary construction differentiation if custom reset is being used Change 3518310 by Ben.Marsh Re-adding IOS files with correct case. Change 3518423 by Ben.Zeigler #jira UE-46574 Initial support for chunk installation in Asset Manager. Refactor AssetManagerSettings so it copies runtime bools into the asset manager for fast access Add a concept of a stalled streamable manager handle, handles can be created stalled and will not execute their async load until all needed resources have been acquired externally Change 3518480 by Marc.Audy Correctly get the variable reference for an input variable get from the member scope rather than a member variable of the same name on the class #jira UE-46737 Change 3518498 by Ben.Zeigler Fix bug with AssetManager where requesting the same load twice in a row before the first one finishes caused the complete callback to get called too early for the second load Update test map to catch this Change 3518526 by Ben.Zeigler IOS Fix Change 3518619 by Ben.Zeigler #jira UE-46744 Fix issue where refreshing asset manager editor settings would throw away asset label rules overrides, causing the recursive flag to accidentally get set Change 3518747 by Phillip.Kavan #jira UE-43154 - Prevent ConstructGenericObject nodes from compiling if the selected type does not include 'BlueprintType' in its inheritance hierarchy. Change summary: - Moved UGameplayStatics::CanSpawnObjectOfClass() into UK2Node_GenericCreateObject as a local util method (per JIRA notes). This was not exposed to Blueprints and as such was inconsistent with the rest of the API. - Modified UGameplayStatics::SpawnObject() to no longer call CanSpawnObjectOfClass(). This seemed redundant as this will already have been called during node validation at Blueprint compile time. - Refactored CanSpawnObjectOfClass() into FK2Node_GenericCreateObject_Utils. Walking up the inheritance chain no longer starts out w/ the assumption that 'BlueprintType' is set by default, which was previously including a lot of engine-specific classes into the "allowed" set (e.g. UByteProperty). Also unified the 2 loop iterations that were being used to check for 'BlueprintType'/'NotBlueprintType' and 'DontUseGenericSpawnObjectName', as well as the check for whether or not the class is a derivative of AActor/UActorComponent. - Modified UK2Node_GenericCreateObject::EarlyValidation() to call FK2Node_GenericCreateObject_Utils::CanSpawnObjectOfClass() and emit a slightly more informative error message to the BP compiler message log. Change 3518756 by Michael.Noland (4.17) Framework: Prevent various asserts when USplineComponent methods are called on a spline with no points Change 3518760 by Michael.Noland Core: Changed FRuntimeAssetCache ensures to ensureAsRuntimeWarning Change 3518771 by Michael.Noland AI: Prevent an ensure in UBlackboardComponent::ClearValue when called on a component with a null BlackboardAsset Change 3518818 by Michael.Noland Rendering: Fixed a whitespace issue in UCanvasRenderTarget2D::RepaintCanvas() #rnx Change 3518822 by Michael.Noland Sequencer: Prevented crashes in some methods of UMovieSceneSequencePlayer when there is no Sequence set Sequencer: Prevented a crash in FMovieSceneRootEvaluationTemplateInstance::Evaluate when the instance has no template set Change 3518824 by Michael.Noland Landscape: Marked ULandscapeComponent and ULandscapeHeightfieldCollisionComponent as Within=LandscapeProxy, since they do CastChecked on their Outer all the time Change 3519073 by Michael.Noland QAGame: Fixed a crash in UQASynth::PlaySynth() if called on a directly created instance rather than using the factory method Change 3519076 by Michael.Noland Preventing crashes in UAutomationPerformaceHelper (sic) when spawned abnormally for fuzzing (assumes that the outer will have a route to a world) #rnx Change 3519079 by Michael.Noland Sequencer: Fixed a potential crash in UMediaPlaylist::Insert and UMediaPlaylist::RemoveAt when passed an invalid index Change 3519081 by Michael.Noland Blueprints: Added support for creating appropriate outers for objects that must be nested within another class during fuzzing (ones that specify Within=, other relationships aren't knowable yet) Change 3519082 by Michael.Noland VR: Prevent a crash in UMRMeshComponent::ConnectReconstructor when passed a null reconstructor Change 3519084 by Michael.Noland Rendering: Prevent crashes when UNiagaraComponent::GetEffectDataInterface is called on a component with no effect asset set Change 3521889 by Michael.Noland Sequencer: Prevented a bogus static analysis warning by reworking the code (FixedFrameInterval could have only been set if the pointer were valid from the line above) #rnx Change 3521987 by Michael.Noland Animation: Prevent a couple of potential asserts in UControlRig::GetOrAllocateSubControlRig Change 3522101 by Michael.Noland Physics: Improved the comment on UPhysicalMaterial::Friction #rn Change 3522105 by Michael.Noland Physics: Fixed a few crashes in UVehicleWheel when spawned directly Change 3522106 by Michael.Noland Framework: Marked ULevelStreaming as Within=World, since it does CastChecked on the Outer all the time Change 3522109 by Michael.Noland Animation: Marked UAnimInstance as Within=SkeletalMeshComponent since it assumes the outer in various places Change 3522121 by Michael.Noland Mobile: Prevent UMobileInstalledContent methods from crashing when called on a created instance in an uncooked build (no installed manifest) Change 3522783 by Zak.Middleton #ue4 - Imported new simple collision for Engine/Content/BasicShaps/Cylinder.uasset which is a single convex shape (rather than being 4 shapes as before). Change 3525477 by Dan.Oconnor Remove Tooltip, Category, and HideCategories tooltip from the blueprint generated class if source data is cleared Change 3526538 by Ben.Zeigler Refresh primary asset labels if their bundles are different at all and not just if they're added or removed. This is required because they now work based on collections or directories. This fixes issue with the onboarding collection changes not correctly modifying chunks Copy of CL #3526501 Change 3526817 by Ben.Zeigler #jira UE-46917 Fix issue where maps that do not contain level script blueprints were being counted as unindexed for find in blueprints. The old behavior depended on detecting the existence of empty tags, but the asset registry now filters those out so treat maps with no FiB data as indexed Change 3526873 by Ben.Zeigler #jira UE-46627 Change it so blueprint or native subclasses of static mesh actor cannot be added to clusters, as they are not likely to be immutable the way the base class is Add code to to the ubergraph frame to fall back to hard reference serialization if the reference collector doesn't support weak references, such as the cluster collector Change 3526958 by Marc.Audy (4.17) Don't copy and then break pin links when reconstructing. Instead simply move. #jira UE-46935 Change 3528916 by Marc.Audy PR #3609: Adds GetKeysForAxis() to complement GetKeysForAction() in UPlayerInput (Contributed by alanedwardes) #jira UE-45347 Change 3529080 by mason.seay BP asset for undetermined type bug Change 3529381 by Marc.Audy Fix ability to insert duplicates in to a set or map Change 3529471 by Dan.Oconnor Fix for clang 4.0 error: definition of builtin function '__rdtsc' inline unsigned long long __rdtsc() Change 3530876 by Marc.Audy Based on PR #3457: Add MakeSet BP node (Contributed by projectgheist) Also refactored MakeArray/Set to share a base MakeContainer class Cleaned up some dead code from MakeArray Added icon for MakeSet Added Functional Test for MakeSet #jira UE-43717 Change 3531070 by Phillip.Kavan #jira UE-46866 - Fix crash on load when an external variable member reference's owning type cannot be loaded. Change summary: - Modified FBlueprintEditorUtils::GetSkeletonClass() to check for NULL before attempting to check for the generating BP. Change 3531081 by Marc.Audy Remove deprecated CustomMapParamValue code Change 3531094 by Phillip.Kavan #jira UE-46952 - Fix a packaging code build failure that will occur with a nativized Blueprint class that contains a UInterfaceProperty. Change summary: - Modified TScriptInterface::operator=() to cast the given 'SourceObject' instance to the 'InterfaceType' type before assigning to 'SourceInterface'. This was necessary because if the caller (in this case nativized codegen) passes in a UObject* that does not explicitly inherit from 'InterfaceType', then it will need to go through the object's GetInterfaceAddress() API instead and cast the result back to an 'InterfaceType' pointer. Change 3531186 by Phillip.Kavan Back out changelist 3531094 (temp CIS fix). #rnx Change 3532082 by Marc.Audy Move garbage collection timers and other management to UEngine instead of UWorld Fixes CollectGarbage blueprint node not working in shipping #jira UE-46566 Change 3532134 by Phillip.Kavan Restored changelist 3531094 w/ fix for non-unity. - Mirrored from //UE4/Release-4.17 (CL# 3531232). #rnx Change 3533009 by Marc.Audy Fixup missing function and deprecation warnings Change 3534056 by Marc.Audy (4.17) Fix expose on spawn of map and sets to work #jira UE-47140 Change 3534761 by Marc.Audy (4.17) Apply code review changes to Dev-Framework as well #rnx Change 3535147 by Dan.Oconnor Build fix, already made in 4.17 #rnx Change 3535530 by mason.seay Resaving to remove error when opening level blueprint Change 3535581 by Marc.Audy Class Properties are only identical if they are literally the same object. Do not consider the deep compare port flags as object property base does. #jira UE-46533 Change 3535583 by Marc.Audy When properties are imported in to a child actor component the cached instance data is invalidated, so clear it. #jira UE-46533 Change 3535617 by Marc.Audy PR #3788: UE-39237: Prevent (im-)pure casting during BP debugging (Contributed by projectgheist) #jira UE-47188 #jira UE-39237 Change 3535671 by Marc.Audy Change NodeFactory to look at interface to use sequence node instead of each node having to add itself Change 3535955 by Marc.Audy Prevent MakeSet from removing split pins Change 3536114 by Michael.Noland Paper2D: Removing deprecated code from 4.3/4.4 era #rnx Change 3536120 by Michael.Noland Animation: Removed deprecated FTAlphaBlend class and AlphaBlendType.h header Change 3536124 by Michael.Noland Physics: Removed deprecated methods that were replaced by _AssumesLocked variations Change 3536131 by Michael.Noland Slate: Converting remaining uses of EKeyboardFocusCause to EFocusCause and properly deprecating it Change 3536138 by Michael.Noland Slate: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536167 by Dan.Oconnor When a client provides a skeleton class as the self scope, make sure we also use a skel class for non-self scopes - but only if using the compilation manager. Skel classes are not reliably up to date when not using the compilation manager #jira UE-46904 Change 3536221 by Michael.Noland Editor: Removing deprecated code from 4.9 or earlier Change 3536240 by Michael.Noland Blueprints: Removed long-deprecated TypeToString method from the K2 schema #rnx Change 3536243 by Michael.Noland AI: Prevent crashes if UMockTask_Log is created manually rather than via the CreateTask factory method Change 3536244 by Michael.Noland Core: Prevent FScopedExternalProfilerBase::StopScopedTimer() from asserting if called an unmatched number of times with StartScopedTimer, as both are exposed to BPs now Change 3536250 by Michael.Noland CoreUObject: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536253 by Michael.Noland Core: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536310 by Michael.Noland Engine: Removed any deprecated code older than 4.10 that didn't affect content compatibility Change 3536397 by Mieszko.Zielinski Fixed UCrowdFollowingComponent::UpdateCachedDirections crashing when CharacterMovement is not set #UE4 #jira UE-46860 Change 3536404 by Michael.Noland Platform: Added a warning for others when they try to remove this 'deprecated' method Change 3536639 by Michael.Noland CharacterMovement: Changed the name of a variable introduced in CL# 3536397 to better match intent #rnx Change 3536893 by Michael.Noland Blueprints: Clear the stale value on the value pin when a map find node fails to find an item #jira UE-47233 Change 3536902 by Michael.Noland Framework: Killed a couple of more deprecated methods that were not exposed to Blueprints #rnx Change 3537038 by Ben.Marsh Fixing case of iOS directories, pt1 Change 3537039 by Ben.Marsh Fixing case of iOS directories, pt2 Change 3538246 by Michael.Noland UnrealTournament: Fixing issues with renamed enum #rnx Change 3538618 by Ben.Zeigler Fix ensure when closing sequencer transform UI Change 3540213 by Ben.Zeigler #jira UE-47313 Fix crash serializing a MapProperty where the value type has changed for a type that implements ConvertFromType. The address passed to ConvertFromType needs to be the container root, not the specific value address, keys worked because the offset was 0. Change 3540253 by Marc.Audy Only copy default values for input pins as output pins do not have them #rnx Change 3540376 by Marc.Audy Add utility FromPinType for FEdGraphTerminalType #rnx Change 3540433 by Marc.Audy Add MakeMap #jira UE-47093 Unify IsConnectionDisallowed for containers and fix static analysis warning #jira UE-47291 Change 3540585 by Phillip.Kavan #jira UE-47117 - Fix crash on launch of a nativized build that includes an instanced default subobject that's referenced by another instanced default subobject. Change summary: - Modified FEmitDefaultValueHelper::HandleSpecialTypes() to only direct HandleInstancedSubobject() to emit code to create the instanced subobject if it's not a default subobject. This was previously being incorrectly interpreted as an object having the 'RF_ArchetypeObject' flag set; however, default subobjects will also have that flag set in addition to the 'RF_DefaultSubobject' flag. - Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to assert in the 'GetDefaultSubobjectByName' case if the given object is not also a default subobject. Change 3541147 by Dan.Oconnor Fix for not being able to override custom events when using the compilation manager post 3536167 #jira UE-47292 #rnx Change 3541177 by Ben.Zeigler #jira UE-46595, UE-46553 Fix issue where creating a widget template could cause a widget blueprint being cooked to have the wrong package flags, making it appear to be an uncooked package Copy of CL #3541027 Change 3541325 by Dan.Oconnor K2node data table data needs to preload data before the compilation queue is flushed #rnx #jira UE-47319 Change 3541409 by Michael.Noland Blueprints: Added code to reapply any active breakpoints after recompilation when using the BP compilation manager #jira UE-47322 [reimplementing CL# 3541404 in Dev-Framework] Change 3541418 by Dan.Oconnor Fix for bad SKEL_ CDO reference in blueprint bytecode #jira UE-47265 #rnx Change 3541482 by Dan.Oconnor Blanket fix up of preload calls that are being done in AllocateDefaultPins. AllocatDefaultPins is not called until compile, meaning if these preload calls load blueprints they will be loaded while the compilation manager is compiling blueprints #rnx #jira UE-47319 Change 3541817 by Marc.Audy Fix static analysis warnings #rnx Change 3542299 by Michael.Noland Blueprints: Speculative fix for static analysis warning #rnx Change 3542406 by Marc.Audy Use a check slow to avoid any cost #rnx Change 3542486 by Michael.Noland Asset Manager: Removing an unnecessary ensure (it's a potentially expected case) #jira UE-47380 Change 3542659 by Michael.Noland Blueprints: Clear out null entries in the LastEditedDocuments list during PostLoad() and remove entries when a graph is being deleted to prevent their generation in the first place #jira UE-47385 Change 3543620 by Dan.Oconnor Remove overzealous ensure - we may recompile blueprints that are asynchronously loading when a user triggers a synchronous compile #jira UE-47415 #rnx Change 3518415 by Ben.Zeigler #jira UE-46574 Deprecate IPlatformChunkInstall::SetChunkInstallDelgate as it was spelled wrong, was only half implemented, and did not support success vs failure Replace with AddChunkInstallDelegate, which supports a bool error code and is bound once instead of separately for each chunk. All implementations support this delegate at a basic level, although several could be improved to call the failure delegate in more cases Change 3534339 by Michael.Noland Platforms: Changed DEPRECATED() macro description to use 4.xx rather than a speciifc version in examples, so it doesn't show up when removing deprecated code [CL 3544050 by Marc Audy in Main branch]
2017-07-19 09:49:59 -04:00
FCanExecuteAction::CreateStatic(CanExecutePurityToggle, bCanTogglePurity),
FIsActionChecked()
)
);
}
}
}
void UK2Node_DynamicCast::PostReconstructNode()
{
Super::PostReconstructNode();
// update the pin name (to "Interface" if an interface is connected)
NotifyPinConnectionListChanged(GetCastSourcePin());
}
void UK2Node_DynamicCast::PostPlacedNewNode()
{
Super::PostPlacedNewNode();
const UBlueprintEditorSettings* BlueprintSettings = GetDefault<UBlueprintEditorSettings>();
SetPurity(BlueprintSettings->bFavorPureCastNodes);
}
UEdGraphPin* UK2Node_DynamicCast::GetValidCastPin() const
{
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
UEdGraphPin* Pin = FindPin(UEdGraphSchema_K2::PN_CastSucceeded);
check((Pin != nullptr) || bIsPureCast);
check((Pin == nullptr) || (Pin->Direction == EGPD_Output));
return Pin;
}
UEdGraphPin* UK2Node_DynamicCast::GetInvalidCastPin() const
{
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
UEdGraphPin* Pin = FindPin(UEdGraphSchema_K2::PN_CastFailed);
check((Pin != nullptr) || bIsPureCast);
check((Pin == nullptr) || (Pin->Direction == EGPD_Output));
return Pin;
}
UEdGraphPin* UK2Node_DynamicCast::GetCastResultPin() const
{
if(TargetType != nullptr)
{
for (int32 PinIdx = 0; PinIdx < Pins.Num(); PinIdx++)
{
if (Pins[PinIdx]->PinType.PinSubCategoryObject == *TargetType
&& Pins[PinIdx]->Direction == EGPD_Output
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
&& Pins[PinIdx]->PinName.ToString().StartsWith(UEdGraphSchema_K2::PN_CastedValuePrefix))
{
return Pins[PinIdx];
}
}
}
return nullptr;
}
UEdGraphPin* UK2Node_DynamicCast::GetCastSourcePin() const
{
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
UEdGraphPin* Pin = FindPin(UEdGraphSchema_K2::PN_ObjectToCast);
check(Pin);
check(Pin->Direction == EGPD_Input);
return Pin;
}
UEdGraphPin* UK2Node_DynamicCast::GetBoolSuccessPin() const
{
UEdGraphPin* Pin = FindPin(UK2Node_DynamicCastImpl::CastSuccessPinName);
check((Pin == nullptr) || (Pin->Direction == EGPD_Output));
return Pin;
}
void UK2Node_DynamicCast::SetPurity(bool bNewPurity)
{
if (bNewPurity != bIsPureCast)
{
bIsPureCast = bNewPurity;
bool const bHasBeenConstructed = (Pins.Num() > 0);
if (bHasBeenConstructed)
{
ReconstructNode();
}
}
}
void UK2Node_DynamicCast::TogglePurity()
{
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3582324) #lockdown Nick.Penwarden #rb none #rnx ============================ MAJOR FEATURES & CHANGES ============================ Change 3431439 by Marc.Audy Editor only subobjects shouldn't exist in PIE world #jira UE-43186 Change 3457323 by Marc.Audy Undo CL# 3431439 and once again allow (incorrectly) for editor only objects to exist in a PIE world #jira UE-45087 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 3502939 by Michael.Noland Back out changelist 3499927 Change 3522783 by Zak.Middleton #ue4 - Imported new simple collision for Engine/Content/BasicShaps/Cylinder.uasset which is a single convex shape (rather than being 4 shapes as before). Change 3544641 by Dan.Oconnor Remove conditional that is no longer needed, replace with ensure. It is unsafe to change CDO names #jira OR-38176 Change 3544645 by Dan.Oconnor In addition to marking nodes as not transient, FBlueprintEditor::ExpandNode needs to mark them as transactional #jira UE-45248 Change 3545023 by Marc.Audy Properly encapsulate FPinDeletionQueue Fix ensure during deletion of split pins when not clearing links Fix split pins able to end up in delete queue twice during undo/redo Change 3545025 by Marc.Audy Properly allow changing the pin type from a struct that is split on the node #jira UE-47328 Change 3545455 by Ben.Zeigler Fix issue where combined streamable handles could be freed before their complete callback is called if nothing external referenced them Copy of CL#3544474 Change 3545456 by Ben.Zeigler Allow PrimaryAssets to update their AssetData based on in-memory changes when launching 'Standalone Game' and 'Mobile Preview' from the editor. As it was, changes could be detected and propagated through UPrimaryDataAsset::PostLoad, but the changes would always reapply whatever already exists in the AssetRegistry. The primary use-case for this: making AssetBundle tag changes and allowing them to propagate without resaving/recooking all affected assets. Copy of CL #3544374 Change 3545547 by Ben.Zeigler CIS Fix Change 3545568 by Michael.Noland PR #3758: Fixing a comment typo from Transistion to Transition (Contributed by gsfreema) #jira UE-46845 Change 3545582 by Michael.Noland Blueprints: Prevent duplicate messages from being added to the compiler results log (fixes a crash when resizing the results log while a math expression node has an error) Blueprints: Fixed the tooltip of math expression nodes not showing up, and error messages getting cleared on subsequent compiles [Duplicating fixes for UE-47491 and UE-47512 from 4.17 to Dev-Framework] Change 3546528 by Ben.Zeigler #jira UE-47548 Fix crash when a map's key type has changed but value has not, it was passing the UStruct defaults in when serialize was expecting the default instance, so pass null instead as we don't have the instance Change 3546544 by Marc.Audy Fix split pin restoration logic to deal with wildcards and variations in const/refness Change 3546551 by Marc.Audy Don't crash if the struct type is missing for whatever reason Change 3547152 by Marc.Audy Fix array exporting so you don't end up getting none instead of defaults #jira UE-47320 Change 3547438 by Marc.Audy Fix split pins on class defaults Don't cause a structural change when reapplying a split pin as part of node reconstruction #jira UE-46935 Change 3547501 by Ben.Zeigler Fix ensure, it's valid to pass a null path for a dynamic asset Change 3551185 by Ben.Zeigler #jira UE-42835 Fix it so SoftObjectPaths work correctly when inside levels loaded for the first time from PIE. Added code to do in-place PIE fixup for levels that are loaded instead of duplicated, and changed the fixup logic to fix all level references, not just ones being explicitly duplicated Change 3551723 by Ben.Zeigler Improve UI for displaying actor soft references. Add an error/warning icon if the cross level reference is broken or unloaded, and fix various display and copy/paste behaviors Change 3553216 by Phillip.Kavan #jira UE-39303, UE-46268, UE-47519 - Nativized UDS now support external asset dependencies and will construct their own linker import tables on load. Change summary: - Modified FCompactBlueprintDependencyData and FFakeImportTableHelper to be more relevant to UStruct and not just UClass-derivative types. - Modified FBlueprintDependencyData to accept a single FCompactBlueprintDependencyData struct rather than its individual fields. - Modified FBlueprintCompilerCppBackendBase::GenerateCodeFromStruct() to emit dependency assignment and static type registration functions for nativized UStruct types. - Modified FBlueprintNativeCodeGenModule::FStatePerPlatform to include an array for tracking UDS assets that need to be converted during the nativization pass at cook time. - Modified FBlueprintNativeCodeGenModule::GenerateFullyConvertedClasses() to generate nativized code for UDS assets. This ensures that UDS conversion falls under the same scope as BPGC conversion, so that they both feed into the same NativizationSummary context for asset dependency tracking (i.e. since we only have a single global dependency table in the codegen). Also modified InitializeForRerunDebugOnly() to do the same. - Modified FBlueprintNativeCodeGenModule::Convert() to defer UDS conversion so that it's done at the same time as BPGC conversion (see note above). - Modified FEmitDefaultValueHelper::AddStaticFunctionsForDependencies() to include support for UStruct types and to conform to changes made to FCompactBlueprintDependencyData. - Modified FEmitDefaultValueHelper::AddRegisterHelper() to include support for UStruct types. - Modified FBlueprintNativeCodeGenModule::FindReplacedClassForObject() to ensure that converted User-Defined Enum types are switched to a UEnumProperty at package save time so that any import tables contain the proper class. This is necessary because we nativize User-Defined Enum types as 'enum class' types, and UHT will generate code for those as a UEnumProperty with an "underlying" property. However, non-nativized User-Defined Enum types are referenced as a UByteProperty with a UEnum reference, so we have to fix up all the import tables before saving. Otherwise, EDL will assert on load (see UE-47519). Change 3553301 by Ben.Zeigler Fix ensure when passing literal None to SoftObjectPath, it now treats them as empty instead Change 3553631 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. This change was originally submitted in 3499927, but it was incorrectly clearing the UField::Next pointer in UField::Serialize. #jira UE-43458 Change 3553799 by Ben.Zeigler Fix issue where calling WaitUntilComplete on a combined handle with Stalled children wouldn't work properly. It now forces all stalled children to start immediately. I also added a warning log when this happens and an ensure if somehow the force didn't work Copy of CL #3553781 Change 3553896 by Michael.Noland Blueprints: Allow the autowiring logic to better break and replace existing connections when made (e.g., when dragging a variable onto a compatible pin with an existing connection, break the old connection to allow the new connection to be made) #jira UE-31031 Change 3553897 by Michael.Noland Blueprints: Adjust search query when doing 'Find References' on variables from My Blueprints so that bound event nodes show up for components and widgets #jira UE-37862 Change 3553898 by Michael.Noland Blueprints: Add the name of the variable directly in the get/set menu options (when dragging from My Blueprints into the graph) Change 3553909 by Michael.Noland Blueprints: Added the full name of the type, container type (and value type for maps) to the tooltips for the type picker elements, so long names can be read in full #jira UE-19710 Change 3554517 by Michael.Noland Blueprints: Added an option to disable the comment bubble on comment boxes that appears when zoomed out #jira UE-21810 Change 3554664 by Michael.Noland Editor: Renamed "Find in CB" command to "Browse" and renamed "Search" (in BP) to "Find", so terminology is consistent and keyboard shortcuts make sense (Ctrl+B for Browse, Ctrl+F for find, not using the term Search anywhere) #jira UE-27121 Change 3554831 by Dan.Oconnor Non editor build fix Change 3554834 by Dan.Oconnor Actor bound event related warnings now show up in blueprint status when opening level blueprint for first time, improved warning message. Removed unused delegate and return value from FixLevelScriptActorBindings. Can now pass raw strings to blueprint results log (no need for Printf, although padding is not great), UClasses in compiler results log will open the generated blueprint when clicked on #jira UE-40438 Change 3556157 by Ben.Zeigler Convert LevelSequenceBindingReference to use FSoftObjectPath so it works properly with redirectors and fixups Change 3557775 by Michael.Noland Blueprints: Fixed swapped transaction messages when converting a cast node between pure and impure #jira UE-36090 Change 3557777 by Michael.Noland Blueprints: Allow 'Goto Definition' and 'Find References' to be used while stopped at a breakpoint PR #3774: Expose GotoFunctionDefinition during BP debugging (Contributed by projectgheist) #jira UE-47024 Change 3560510 by Michael.Noland Blueprints: Add support for 'goto definition' on Create Event nodes when the Object pin is not hooked up #jira UE-38912 Change 3560563 by Michael.Noland Blueprints: Disallow converting a variable get node to impure/back when debugging (no graph mutating operations should be allowed) Change 3561443 by Ben.Zeigler Restore code to support gc.DumpPoolStats, was accidentally removed when FGCArrayPool was moved to a header. Clean up comments around Cleanup function, the functionality to trim the memory pools was integrated into ClearWeakReferences on a prior change Change 3561658 by Michael.Noland Blueprints: Refactored 'Goto Definition' so there is no per-class logic in the Blueprint editor or schema any more; any node can opt in individually - Added a key binding for Goto Definition (Alt+G) - Added a key binding for Find References (Shift+Alt+F) - Collapsed 'Goto Code Definition' for variables and functions into the same path, so there aren't separate menu items and commands - Added new methods CanJumpToDefinition and JumpToDefinition to UEdGraphNode, the default behavior for UK2Node subclasses is to call GetJumpTargetForDoubleClick and call into FKismetEditorUtilities::BringKismetToFocusAttentionOnObject - Going to a native function now goes thru a better code path that will actually put the source code editor on the function definition, rather than just opening the file containing the definition Change 3562291 by Ben.Zeigler Fix issue where calling FSoftObjectPtr::Get during a package save would result in that ptr being forever marked broken, because the ResolveObject fails during save. It's too risky to change that behavior, so change it so the TagAtLastTest doesn't get updated in that case Change 3562292 by Ben.Zeigler #jira UE-39042 When renaming or moving actors between levels it now attempts to fix any soft object references from blueprints or sequencer When deleting actors that are soft referenced by actor/sequencer it will now warn the same way it does for level script. Added IAssetTools::FindSoftReferencesToObject to perform this search Change it so saving a non-primary world does not result it being dirtied due to the temporary physics scene fixup Fix issue where the actor name was shown incorrectly in the SSCS tree for actor instances, which meant that if you renamed it you would end up renaming it to the BP's name Change 3564814 by Ben.Zeigler #jira UE-47843 Don't set InputKey output pins to AnyKey if empty, this was causing blueprints with key events to constantly dirty themselves Change 3566707 by Dan.Oconnor Remove unused code, UClassGenerateCDODuplicatesForHotReload was attempting to create a CDO with a special name, which triggered an ensure. The Duplicated CDO was never used (callign code removed in 3289276 as it was a waste of cycles) #jira None Change 3566717 by Michael.Noland Core: Remove all defintions that contain "_API" from the command line when compiling .rc files (they do not support repsonse files and a too-long command line will fail the compile) Change 3566771 by Michael.Noland Editor: Fixing deprecation warning #jira UE-47922 Change 3567023 by Michael.Noland Blueprints: Change various TArray<> uses to TSet<> throughout name validation and related code to enable it to scale better to high component or variable counts Adapted from PR #3708: Fast construction of bp (Contributed by gildor2) #jira UE-46473 Change 3567304 by Ben.Zeigler Add bCheckRecursive option to IsEditorOnlyObject that is enabled by default and will check outer/archetype/class. This is needed for places that call this function from outside of SavePackage.cpp when the editor only mark is set, such as the automation test code Change 3567398 by Ben.Zeigler Fix crash when spawning a widget that has no editor WidgetTree, but does have a cooked widget tree template due to tree inheritance Change 3567729 by Michael.Noland Blueprints: Clarified message about "{VariableName} is not blueprint visible" to define what that means "(BlueprintReadOnly or BlueprintReadWrite)" Change 3567739 by Ben.Zeigler Don't crash if PropertyStruct cannot find it's struct. The function half handled this before, but Preload crashes with a null parameter Change 3567741 by Ben.Zeigler Disable optimization for a path test that was crashing in VC2015 in a monolithic build Change 3568332 by Mieszko.Zielinski Prevented UAIPerceptionSystem::GetCurrent causing a BP error when WorldContextObject is null #UE4 #jira UE-47948 Change 3568676 by Michael.Noland Blueprints: Allow editing the tooltip of each enum value in a user defined enum #jira UE-20036 Known issue: Undo/redo is not currently possible on the tooltip as it is directly stored in package metadata Change 3569128 by Michael.Noland Blueprints: Removing the experimental profiler as we won't be returning to it any time soon #jira UE-46852 Change 3569207 by Michael.Noland Blueprints: Allow drag-dropping component Blueprint assets into the graph to create Add Component nodes and improved the error message when dragging something that cannot be dropped into an actor Blueprint #jira UE-8708 Change 3569208 by Michael.Noland Blueprints: Allow specifying a description for user defined enums (shown in the content browser) #jira UE-20036 Change 3569209 by Michael.Noland Editor: Allow adjusting the font size for each individual comment box node in Blueprints and Materials #jira UE-16085 Change 3570177 by Michael.Noland Blueprints: Fixed discrepancy between the Structure tab name and the menu option for the tab in the user defined structure editor (now both say Structure Editor) #jira UE-47962 Change 3570179 by Michael.Noland Blueprints: Fixed the tooltip of a user defined structure not updating immediately in the content browser after being edited Change 3570192 by Michael.Noland Blueprints: Added "(selected)" after the label (in the 'debug filter' dropdown in the Blueprint editor) for actors that are selected in the level editor, which should make it easier to choose the specific actor you want to debug #jira UE-20709 Change 3571203 by Michael.Noland Blueprints: Cleanup and refactoring to prepare for turning commented out nodes into an official feature - Made EnabledState and bUserSetEnabledState private on UEdGraphNode and added new getters/setters - Introduced IsAutomaticallyPlacedGhostNode() and MakeAutomaticallyPlacedGhostNode() to start decoupling the concept from commented out nodes - Updated a couple of places that used a hardcoded UberGraphPages[0] into instead editing the most recently interacted with event graph if possible - Updated 'is data only blueprint' logic to allow multiple ubergraph pages, as long as they're all empty of non-disabled nodes Change 3571224 by Michael.Noland Blueprints: Draw banners on development-only and user disabled nodes (excluding 'ghost' nodes like autogenerated event entries in new BPs) Adapted from PR #2701: Differentiate development nodes in BP (Contributed by projectgheist) #jira UE-29848 #jira UE-34698 Change 3571279 by Michael.Noland Blueprints: Changed UK2Node::GetPassThroughPin so that only the execution wire on nodes with exactly one input and one output exec wire will have a corresponding pass-through pin (when there is ambiguity in which exec would be used, e.g., with a branch or sequence or timeline node, the subsequent nodes are now effectively disabled as well) Change 3571282 by Michael.Noland Blueprints: Fixed the tooltip for dragging a variable onto an inherited category not showing the 'move to category' hint Change 3571284 by Michael.Noland Blueprints: Made wires into/out of a user-disabled node draw verly dimly (other than the passthrough exec if it exists) Change 3571311 by Ben.Zeigler Add ActorIteratorFlags which allows overriding which types of actors/levels are iterated by ActorIterator, to allow iterating levels that are not visible. All of the iteration logic is now in the base and the children just set different flags, which fixes it so TActorIterator does the same level collection check as FActorIterator Change 3571313 by Ben.Zeigler Several fixes to automation framework to allow it to work better with Cooked builds. Change it so the automation test list is a single message. There is no guarantee on order of message packets, so several tests were being missed each time. Change 3571485 by mason.seay Test map for Make Set bug Change 3571501 by Ben.Zeigler Accidentally undid the UHT fixup for TAssetPtr during my bulk rename Change 3571531 by Ben.Zeigler Fix warning messages Change 3571591 by Michael.Noland Blueprints: Made drag-dropping assets into a graph to create a component transactional (allowing the action to be undone) #jira UE-48024 Change 3572938 by Michael.Noland Blueprints: Fixed a typo in a set function comment #jira UE-48036 Change 3572941 by Michael.Noland Blueprints: Made the compact node title for cross and dot product the words cross and dot rather than hard to see . and x symbols #jira UE-38624 Change 3574816 by mason.seay Renamed asset to better reflect name of object reference Change 3574985 by mason.seay Updated comments and string outputs to list Soft Object Reference Change 3575740 by Ben.Zeigler #jira UE-48061 Change it so Editor builds work like cooked builds and always try to reuse existing packages when loading them instead of recreating them in place. Recreating in place does not work well for levels and blueprints, and blueprints already had a hack that was causing this behavior to not activate Change 3575795 by Ben.Zeigler #jira UE-48118 Call into the AssetManager as part of the DistillPackages commandlet. This makes sure that ShooterGame and EngineTest end up with the correct content in launcher builds Change 3576374 by mason.seay Forgot to submit the deleting of a redirector Change 3576966 by Ben.Zeigler #jira UE-48153 Fix issue where actors in streaming levels weren't properly replicating in PIE. It now does the remap path on both send and receive for the manual PC level streaming commands Change 3577002 by Marc.Audy Prevent wildcard pins from being connected to exec pins #jira UE-48148 Change 3577232 by Phillip.Kavan #jira UE-48034 - Fix EDL assert on load caused by a native reference to a nativized BP class that also references a nativized UDS asset. Change summary: - Modified FNativeClassHeaderGenerator::ExportGeneratedStructBodyMacros() to emit the 'ReplaceConverted' package name for the FCompiledInDeferStruct global associated with the nativized UDS asset in the UHT codegen. This brings nativized UDS to parity with nativized BP class assets (it was likely just an oversight initially). Change 3577710 by Dan.Oconnor Mirror of 3576977: Fix for crash when loading cooked uassets that reference functions that are not present #jira UE-47644 Change 3577723 by Dan.Oconnor Prevent deferring of classes that are needed to load subobjects #jira UE-47726 Change 3577741 by Dan.Oconnor Back out changelist 3577723 - causes crash when starting QAGame in Dev-Framework - not in Release-4.17 Change 3578938 by Ben.Zeigler #jira UE-27124 Fix issue where renaming a map with legacy map build data would end up with a half-loaded redirector package, becuase the old map build data was still in use. It's possible the call to HandleLegacyMapBuildData should just be in World PostLoad instead of piecemeal in several other places but I am unsure. Fix it so the redirector cleanup code on map change will not be stopped by non-standalone top level objects, which could be left behind by issues in other systems Change 3578947 by Marc.Audy (4.17) Properly expose members of DialogueContext to blueprints #jira UE-48175 Change 3578952 by Ben.Zeigler Fix ensure where ParentHandles on a StreamableHandle could be modified while iterating Change 3579315 by mason.seay Test map for Make Container nodes Change 3579600 by Ben.Zeigler Disable window test on non-desktop platforms as they cannot be resized post launch Change 3579601 by Ben.Zeigler #jira UE-48236 Disable optimizations on PS4 for certain math tests pending fixing of platform issue Change 3579713 by Dan.Oconnor Prevent crashes when bluepints implement an interface that was deleted #jira UE-48223 Change 3579719 by Dan.Oconnor Fix two compilation manager issues: Make sure CDOs are not renamed under a UClass, because they will be considered as possible subobjects, which has bad side effects and make sure that we update references even on empty functions, so that empty UFunctions are not left with references to REINST data #jira UE-48240 Change 3579745 by Michael.Noland Blueprints: Improve categorization and reordering support in 'My Blueprints' - Allow drag-dropping functions, macros, delegates, etc... to reorder them within a category or to change categories (bringing them to parity with variables) - Make category ordering on all categories sticky so you can reorder categories (the relative ordering will be the same within different sections like variables and functions) - Added hover cues when drag dropping some items that were missing them (e.g., event dispatchers) - Added support for renaming categories using F2 Known issues (none are regressions): - Timelines cannot be moved to other categories or reordered - Renaming a nested category will result in it becoming a top level category (discarding the parent category chain) - Some actions do not support undo #jira UE-31557 Change 3579795 by Michael.Noland PR #3867: Fix for not releasing Local Notification Delegate. (Contributed by enginevividgames) #jira UE-48105 Change 3580463 by Marc.Audy (4.17) Don't crash if calling PostEditUndo on an Actor in the transient package #jira UE-47523 Change 3581073 by Marc.Audy Make UK2Node_SpawnActorFromClass inherit from K2Node_ConstructObjectFromClass and eliminate duplicate code. Correctly reconnect split pins when changing class on create widget, construct object, and spawn actor nodes Change 3581156 by Ben.Zeigler #jira UE-48161 Fix issue where split pins would not be restored if a Struct type was changed due to refactoring of parent variables/functions. For structs we want to copy the pins, if they're invalid due to other changes they will be individual orphaned Also fix bug where the category of parent pins was being set incorrectly while changing variable type, we only want to override type for wildcard pins Change 3581473 by Ben.Zeigler Properly turn off optimization for PS4 test Change 3582094 by Marc.Audy Fix anim nodes not navigating to their graph on double click #jira UE-48333 Change 3582157 by Marc.Audy Fix double-clicking on animation asset nodes not opening the asset editors Change 3582289 by Marc.Audy (4.17) Don't crash when adding a streaming level that's already in the level #jira UE-48928 Change 3545435 by Ben.Zeigler #jira UE-47509 Rename and refactor internals StringAssetReferences and AssetPtrs to become SoftObjectPath/Ptr. This is to prepare them for use for subobjects like actors. Here is the rename table: FStringAssetReference -> FSoftObjectPath FStringClassReference -> FSoftClassPath TAssetPtr -> TSoftObjectPtr TAssetSubclassOf -> TSoftClassPtr The old headers are deprecated, and FSoftClassPath is now in the same header has FSoftObjectPath. This change increments the UE4 version because FSoftObjectPaths are now stored as a name + substring instead of one giant name, which in practice will improve performance and memory while manipulating them. Also the package table of soft referenced packages is now stored as FNames instead of FStrings as these packages names will already be in the name table due to the AssetRegistry Remove automatic support for loading Objectpaths starting with engine-ini:, as it was only partially supported and is very outdated. ResolveIniObjectsReference can still be called manually Changed TPersistentObjectPtr and TLazyObjectPtr to be structs instead of classes Change UnrealHeaderTool to read configuration such as StructsWithNoPrefix out of inis instead of using a hardcoded list. Add support for TypeRedirects, which is used to make the old type names automatically remap to the new ones Clean up FRedirectCollector to remove some of the functionality that is no longer used by the cooker, and disable tracking of redirects in standalone -game builds Change 3567760 by Ben.Zeigler Fix it so EngineTest can be cooked by moving some utility functions to EditorTestsUtilityLibrary and adding an EditorFunctionalTest. The core EngineTest module is safely runtime-only now and can run it's tests locally in windows cooked Merge FuncTestManager into FunctionalTestModule to avoid confusion with FunctionalTestingManager UObject Add EngineTestAssetManager and override the cook function to cook all maps with runtime functional tests Change actor merging tests to be editor only, this stops them from cooking Several individual tests crash on cooked builds, I started threads with the owners of those Change 3575737 by Ben.Zeigler #jira UE-48042 Change it so playing via PIE Standalone, multiprocess networked PIE and external cook launch on does not save temporary levels to UEDPC and instead prompts the user to save. This is how launch on works by default already, and this fixes cross level references/sequencer. The UEDPC code has been removed entirely. As part of this change, connecting a -game client to a PIE server and vice versa is much more likely to work. You may still have game-side problems, look at UEditorEngine::NetworkRemapPath for an example of how to do the PIE prefix conversion Remove advanced CreateTemporaryCopiesOfLevels option from sequencer capture, it has not been tested in multiple years and does not work with newer sequencer features #jira UE-27124 Fix several possible crashes with changing levels while in PIE Change 3578806 by Marc.Audy Fix Construct Object not working correctly with split pins. Add Construct Object test cases to functional tests. Added split pin expose on spawn test cases. #jira UE-33924 [CL 3582334 by Marc Audy in Main branch]
2017-08-11 12:43:42 -04:00
const FText TransactionTitle = bIsPureCast ? LOCTEXT("TogglePurityToImpure", "Convert to Impure Cast") : LOCTEXT("TogglePurityToPure", "Convert to Pure Cast");
const FScopedTransaction Transaction( TransactionTitle );
Modify();
SetPurity(!bIsPureCast);
}
UK2Node::ERedirectType UK2Node_DynamicCast::DoPinsMatchForReconstruction(const UEdGraphPin* NewPin, int32 NewPinIndex, const UEdGraphPin* OldPin, int32 OldPinIndex) const
{
ERedirectType RedirectType = Super::DoPinsMatchForReconstruction(NewPin, NewPinIndex, OldPin, OldPinIndex);
if((ERedirectType_None == RedirectType) && (NULL != NewPin) && (NULL != OldPin))
{
const bool bProperPrefix =
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
NewPin->PinName.ToString().StartsWith(UEdGraphSchema_K2::PN_CastedValuePrefix, ESearchCase::CaseSensitive) &&
OldPin->PinName.ToString().StartsWith(UEdGraphSchema_K2::PN_CastedValuePrefix, ESearchCase::CaseSensitive);
const bool bClassMatch = NewPin->PinType.PinSubCategoryObject.IsValid() &&
(NewPin->PinType.PinSubCategoryObject == OldPin->PinType.PinSubCategoryObject);
if(bProperPrefix && bClassMatch)
{
RedirectType = ERedirectType_Name;
}
}
return RedirectType;
}
FNodeHandlingFunctor* UK2Node_DynamicCast::CreateNodeHandler(FKismetCompilerContext& CompilerContext) const
{
return new FKCHandler_DynamicCast(CompilerContext, KCST_DynamicCast);
}
Merging UE4-Pretest @ 2042161 to UE4 Change 1996384 by Andrew Brown: 322252 - EDITOR: Asset picker displays incorrect text when there are no filter results. Change 1996385 by Andrew Brown: 321858 - CRASH: Assertion failed: (Index >= 0) Function: STransformViewportToolBar::GetLocationGridLabel() STextBlock::CacheDesiredSize() Change 1996977 by Andrew Brown: 309685 - UE4: Adding an event/renaming an event on an event track in Matinee does not update the MatineeActor node in blueprint Change 2034873 by Jaroslaw Palczynski: More robust VS installation detection. Change 2039693 by Jaroslaw Palczynski: 327268 - RocketGDC: POSTLAUNCH: DEV: Make engine more robust against bad Visual Studio environment variables Change 1978978 by Jaroslaw Surowiec: - Removed obsolete AllowEliminatingReferences from the FArchive Change 2020326 by Maciej Mroz: pretest BP K2Node: RemovePinsFromOldPins function moved from K2Node to RemovePinsFromOldPins Change 2017608 by Maciej Mroz: pretest Some changes in SFortMissionEventSelector caused by FPinTypeTreeInfo Change 2017463 by Maciej Mroz: PinTypeSelector can lins unloaded UDStructs Change 2019979 by Maciej Mroz: pretest BP: Crash when performing Diff against Depot with blueprints containing Format Text nodes Change 2024469 by Maciej Mroz: MemberReference variable added to PinType. It's necessary for delegate's signature. Change 2024049 by Maciej Mroz: HasExternalBlueprintDependencies added to UK2Node_DynamicCast Change 2024586 by Maciej Mroz: FillSimpleMemberReference fix Change 2024472 by Maciej Mroz: workaround for delegates signature in pintype removed. Change 2023997 by Maciej Mroz: BP, UDStruc: Class UserDefinedStructEditorData added. It fixes many problems with undo/redo. Change 2021934 by Maciej Mroz: typo in a comment Change 2020355 by Maciej Mroz: Back out changelist 2020342 Change 2022178 by Maciej Mroz: CRASH: PRETEST: EDITOR: UDS: Crash when undo then redo new variable in struct that is used by blueprint Change 2021958 by Maciej Mroz: CRASH: PRETEST: EDITOR: UDS: Crash using variable of a type of copied struct in blueprint Change 1986247 by Maciej Mroz: User Defined Structures: circle dependency fixed. Early version. Change 1985107 by Maciej Mroz: UserDefinedStruct cannot have a field of a non-native type Change 1986278 by Maciej Mroz: pretest ensureMsgf in Struct::link Change 1986250 by Maciej Mroz: User Defined Struct: Non native classes are accepted types od values in structures. Change 1980955 by Maciej Mroz: Using AssetPtr and LazyPtr as UFunction parameter (intput or return) is explicitly disallowed. Change 2041215 by Maciej Mroz: ttp331249 BLOCKER: PRETEST: UI: Survive the Storm is missing the Mission HUD. Change 1984316 by Maciej Mroz: New User Defined Structure. WIP - there are still problems with circular dependencies. Change 2011616 by Maciej Mroz: UserDefinedStructures - various problems fixed. Change 2011609 by Maciej Mroz: more robust HasExternalBlueprintDependencies implementation Change 2016697 by Maciej Mroz: pretest BP: UDStruct - default value propagation in cooked build Change 2016288 by Maciej Mroz: pretest BP: UDStruct: Renaming variables wont break links from make/break nodes Change 1987637 by Maciej Mroz: CustomStruct icons placeholders Change 1987422 by Maciej Mroz: Better tooltips for variables in MyBlueprint Change 1991387 by Maciej Mroz: UDStructures fixes: Change 2029165 by Maciej Mroz: BP: better comment for incomatible pins Change 2030016 by Maciej Mroz: 8PRETEST: EDITOR: UDS: Defaults values aren't updated in struct type variables in blueprints Change 2030017 by Maciej Mroz: Unused UDStructure code removed (PPF_UseDefaultsForUDStructures) Change 2028856 by Maciej Mroz: BP: Pins with PC_Struct type are compatible only with exactly the same structure. (No derived structures are not handled as compatible). Change 2026701 by Maciej Mroz: k2: odd error on an add item node within a function (see attached image in details) Change 2028160 by Maciej Mroz: PRETEST: EDITOR: UDS: When deleting structures just after creating there is always some references in the memory Change 2028165 by Maciej Mroz: BP: BreakHitResult function has proper icon. Change 2033340 by Maciej Mroz: ttp330786 PRETEST: EDITOR: UDS: Changes of default values aren't apllied to breeak nodes for text type of variables Change 2034255 by Maciej Mroz: EDITOR: UDS: Changes of default values aren't apllied to make nodes for text type of variables ttp#330620 Change 2037682 by Maciej Mroz: ttp331309 BLOCKER: PRETEST: CRASH: EDITOR: Crash occurs when performing Diff Against Depot on any Blueprint Change 2033142 by Maciej Mroz: CreateDelegate Node uses internally FMemberReference. Refactor. Change 2032329 by Maciej Mroz: ttp330608 CRASH: PRETEST: EDITOR: UDS: Crash when trying to use struct named 'Color' in blueprint Change 2032420 by Maciej Mroz: ttp330620 PRETEST: EDITOR: UDS: Changes of default values aren't apllied to make nodes for text type of variables Change 2033139 by Maciej Mroz: Functions generated from CustomEvents can be also identified by GUID Change 2026631 by Maciej Mroz: BP. UDStruct: Invalid structs are handled better. Change 2025344 by Maciej Mroz: UDStruct enabled by default Change 2026672 by Maciej Mroz: EDITOR: BP: Can't easily remove 'pass-by-reference' pins on ReturnNodes Change 2026411 by Maciej Mroz: ExposeOnSpawn updated, it supports UDStructs, custom native Structs, and it throws compiler error. Change 2025342 by Maciej Mroz: GenerateBlueprintSkeleton moved from BLueprint::Serialize to RegenerateBlueprintClass, because SkeletonClass compilation requires all external dependencies to be loaded and linked. Change 2025570 by Steve Robb: Moved dependency processing to its own function. Change 2033235 by Steve Robb: String improvements Change 2035830 by Steve Robb: Workaround for FriendsAndChat crash in Fortnite. Change 2035115 by Steve Robb: UBT build time regression fixes. Change 2034162 by Steve Robb: 312775: UObject improvement: Ensure that *.generated.inl is included somewhere Change 2034181 by Steve Robb: Removal of any references to .generated.inl Change 2020165 by Steve Robb: BuildPublicAndPrivateUObjectHeaders factored out into its own function. Change 2020187 by Steve Robb: CreateModuleCompileEnvironment function factored out. Change 2020055 by Steve Robb: Refactoring of Unity.cs to remove complex and duplicate iteration. Change 2020083 by Steve Robb: Another use of dictionary utilities. Change 2031049 by Steve Robb: 312775: UObject improvement: Ensure that *.generated.inl is included somewhere Change 2025728 by Steve Robb: Refactored the application of a shared PCH file to multiple file into a single ApplySharedPCH function. Change 2020068 by Steve Robb: A couple of helpful utility functions for populating dictionaries. Change 2032307 by Steve Robb: 312775: UObject improvement: Ensure that *.generated.inl is included somewhere [CL 2054495 by Robert Manuszewski in Main branch]
2014-04-23 20:18:55 -04:00
bool UK2Node_DynamicCast::HasExternalDependencies(TArray<class UStruct*>* OptionalOutput) const
Merging UE4-Pretest @ 2042161 to UE4 Change 1996384 by Andrew Brown: 322252 - EDITOR: Asset picker displays incorrect text when there are no filter results. Change 1996385 by Andrew Brown: 321858 - CRASH: Assertion failed: (Index >= 0) Function: STransformViewportToolBar::GetLocationGridLabel() STextBlock::CacheDesiredSize() Change 1996977 by Andrew Brown: 309685 - UE4: Adding an event/renaming an event on an event track in Matinee does not update the MatineeActor node in blueprint Change 2034873 by Jaroslaw Palczynski: More robust VS installation detection. Change 2039693 by Jaroslaw Palczynski: 327268 - RocketGDC: POSTLAUNCH: DEV: Make engine more robust against bad Visual Studio environment variables Change 1978978 by Jaroslaw Surowiec: - Removed obsolete AllowEliminatingReferences from the FArchive Change 2020326 by Maciej Mroz: pretest BP K2Node: RemovePinsFromOldPins function moved from K2Node to RemovePinsFromOldPins Change 2017608 by Maciej Mroz: pretest Some changes in SFortMissionEventSelector caused by FPinTypeTreeInfo Change 2017463 by Maciej Mroz: PinTypeSelector can lins unloaded UDStructs Change 2019979 by Maciej Mroz: pretest BP: Crash when performing Diff against Depot with blueprints containing Format Text nodes Change 2024469 by Maciej Mroz: MemberReference variable added to PinType. It's necessary for delegate's signature. Change 2024049 by Maciej Mroz: HasExternalBlueprintDependencies added to UK2Node_DynamicCast Change 2024586 by Maciej Mroz: FillSimpleMemberReference fix Change 2024472 by Maciej Mroz: workaround for delegates signature in pintype removed. Change 2023997 by Maciej Mroz: BP, UDStruc: Class UserDefinedStructEditorData added. It fixes many problems with undo/redo. Change 2021934 by Maciej Mroz: typo in a comment Change 2020355 by Maciej Mroz: Back out changelist 2020342 Change 2022178 by Maciej Mroz: CRASH: PRETEST: EDITOR: UDS: Crash when undo then redo new variable in struct that is used by blueprint Change 2021958 by Maciej Mroz: CRASH: PRETEST: EDITOR: UDS: Crash using variable of a type of copied struct in blueprint Change 1986247 by Maciej Mroz: User Defined Structures: circle dependency fixed. Early version. Change 1985107 by Maciej Mroz: UserDefinedStruct cannot have a field of a non-native type Change 1986278 by Maciej Mroz: pretest ensureMsgf in Struct::link Change 1986250 by Maciej Mroz: User Defined Struct: Non native classes are accepted types od values in structures. Change 1980955 by Maciej Mroz: Using AssetPtr and LazyPtr as UFunction parameter (intput or return) is explicitly disallowed. Change 2041215 by Maciej Mroz: ttp331249 BLOCKER: PRETEST: UI: Survive the Storm is missing the Mission HUD. Change 1984316 by Maciej Mroz: New User Defined Structure. WIP - there are still problems with circular dependencies. Change 2011616 by Maciej Mroz: UserDefinedStructures - various problems fixed. Change 2011609 by Maciej Mroz: more robust HasExternalBlueprintDependencies implementation Change 2016697 by Maciej Mroz: pretest BP: UDStruct - default value propagation in cooked build Change 2016288 by Maciej Mroz: pretest BP: UDStruct: Renaming variables wont break links from make/break nodes Change 1987637 by Maciej Mroz: CustomStruct icons placeholders Change 1987422 by Maciej Mroz: Better tooltips for variables in MyBlueprint Change 1991387 by Maciej Mroz: UDStructures fixes: Change 2029165 by Maciej Mroz: BP: better comment for incomatible pins Change 2030016 by Maciej Mroz: 8PRETEST: EDITOR: UDS: Defaults values aren't updated in struct type variables in blueprints Change 2030017 by Maciej Mroz: Unused UDStructure code removed (PPF_UseDefaultsForUDStructures) Change 2028856 by Maciej Mroz: BP: Pins with PC_Struct type are compatible only with exactly the same structure. (No derived structures are not handled as compatible). Change 2026701 by Maciej Mroz: k2: odd error on an add item node within a function (see attached image in details) Change 2028160 by Maciej Mroz: PRETEST: EDITOR: UDS: When deleting structures just after creating there is always some references in the memory Change 2028165 by Maciej Mroz: BP: BreakHitResult function has proper icon. Change 2033340 by Maciej Mroz: ttp330786 PRETEST: EDITOR: UDS: Changes of default values aren't apllied to breeak nodes for text type of variables Change 2034255 by Maciej Mroz: EDITOR: UDS: Changes of default values aren't apllied to make nodes for text type of variables ttp#330620 Change 2037682 by Maciej Mroz: ttp331309 BLOCKER: PRETEST: CRASH: EDITOR: Crash occurs when performing Diff Against Depot on any Blueprint Change 2033142 by Maciej Mroz: CreateDelegate Node uses internally FMemberReference. Refactor. Change 2032329 by Maciej Mroz: ttp330608 CRASH: PRETEST: EDITOR: UDS: Crash when trying to use struct named 'Color' in blueprint Change 2032420 by Maciej Mroz: ttp330620 PRETEST: EDITOR: UDS: Changes of default values aren't apllied to make nodes for text type of variables Change 2033139 by Maciej Mroz: Functions generated from CustomEvents can be also identified by GUID Change 2026631 by Maciej Mroz: BP. UDStruct: Invalid structs are handled better. Change 2025344 by Maciej Mroz: UDStruct enabled by default Change 2026672 by Maciej Mroz: EDITOR: BP: Can't easily remove 'pass-by-reference' pins on ReturnNodes Change 2026411 by Maciej Mroz: ExposeOnSpawn updated, it supports UDStructs, custom native Structs, and it throws compiler error. Change 2025342 by Maciej Mroz: GenerateBlueprintSkeleton moved from BLueprint::Serialize to RegenerateBlueprintClass, because SkeletonClass compilation requires all external dependencies to be loaded and linked. Change 2025570 by Steve Robb: Moved dependency processing to its own function. Change 2033235 by Steve Robb: String improvements Change 2035830 by Steve Robb: Workaround for FriendsAndChat crash in Fortnite. Change 2035115 by Steve Robb: UBT build time regression fixes. Change 2034162 by Steve Robb: 312775: UObject improvement: Ensure that *.generated.inl is included somewhere Change 2034181 by Steve Robb: Removal of any references to .generated.inl Change 2020165 by Steve Robb: BuildPublicAndPrivateUObjectHeaders factored out into its own function. Change 2020187 by Steve Robb: CreateModuleCompileEnvironment function factored out. Change 2020055 by Steve Robb: Refactoring of Unity.cs to remove complex and duplicate iteration. Change 2020083 by Steve Robb: Another use of dictionary utilities. Change 2031049 by Steve Robb: 312775: UObject improvement: Ensure that *.generated.inl is included somewhere Change 2025728 by Steve Robb: Refactored the application of a shared PCH file to multiple file into a single ApplySharedPCH function. Change 2020068 by Steve Robb: A couple of helpful utility functions for populating dictionaries. Change 2032307 by Steve Robb: 312775: UObject improvement: Ensure that *.generated.inl is included somewhere [CL 2054495 by Robert Manuszewski in Main branch]
2014-04-23 20:18:55 -04:00
{
const UBlueprint* SourceBlueprint = GetBlueprint();
UClass* SourceClass = *TargetType;
const bool bResult = (SourceClass != NULL) && (SourceClass->ClassGeneratedBy != SourceBlueprint);
Merging UE4-Pretest @ 2042161 to UE4 Change 1996384 by Andrew Brown: 322252 - EDITOR: Asset picker displays incorrect text when there are no filter results. Change 1996385 by Andrew Brown: 321858 - CRASH: Assertion failed: (Index >= 0) Function: STransformViewportToolBar::GetLocationGridLabel() STextBlock::CacheDesiredSize() Change 1996977 by Andrew Brown: 309685 - UE4: Adding an event/renaming an event on an event track in Matinee does not update the MatineeActor node in blueprint Change 2034873 by Jaroslaw Palczynski: More robust VS installation detection. Change 2039693 by Jaroslaw Palczynski: 327268 - RocketGDC: POSTLAUNCH: DEV: Make engine more robust against bad Visual Studio environment variables Change 1978978 by Jaroslaw Surowiec: - Removed obsolete AllowEliminatingReferences from the FArchive Change 2020326 by Maciej Mroz: pretest BP K2Node: RemovePinsFromOldPins function moved from K2Node to RemovePinsFromOldPins Change 2017608 by Maciej Mroz: pretest Some changes in SFortMissionEventSelector caused by FPinTypeTreeInfo Change 2017463 by Maciej Mroz: PinTypeSelector can lins unloaded UDStructs Change 2019979 by Maciej Mroz: pretest BP: Crash when performing Diff against Depot with blueprints containing Format Text nodes Change 2024469 by Maciej Mroz: MemberReference variable added to PinType. It's necessary for delegate's signature. Change 2024049 by Maciej Mroz: HasExternalBlueprintDependencies added to UK2Node_DynamicCast Change 2024586 by Maciej Mroz: FillSimpleMemberReference fix Change 2024472 by Maciej Mroz: workaround for delegates signature in pintype removed. Change 2023997 by Maciej Mroz: BP, UDStruc: Class UserDefinedStructEditorData added. It fixes many problems with undo/redo. Change 2021934 by Maciej Mroz: typo in a comment Change 2020355 by Maciej Mroz: Back out changelist 2020342 Change 2022178 by Maciej Mroz: CRASH: PRETEST: EDITOR: UDS: Crash when undo then redo new variable in struct that is used by blueprint Change 2021958 by Maciej Mroz: CRASH: PRETEST: EDITOR: UDS: Crash using variable of a type of copied struct in blueprint Change 1986247 by Maciej Mroz: User Defined Structures: circle dependency fixed. Early version. Change 1985107 by Maciej Mroz: UserDefinedStruct cannot have a field of a non-native type Change 1986278 by Maciej Mroz: pretest ensureMsgf in Struct::link Change 1986250 by Maciej Mroz: User Defined Struct: Non native classes are accepted types od values in structures. Change 1980955 by Maciej Mroz: Using AssetPtr and LazyPtr as UFunction parameter (intput or return) is explicitly disallowed. Change 2041215 by Maciej Mroz: ttp331249 BLOCKER: PRETEST: UI: Survive the Storm is missing the Mission HUD. Change 1984316 by Maciej Mroz: New User Defined Structure. WIP - there are still problems with circular dependencies. Change 2011616 by Maciej Mroz: UserDefinedStructures - various problems fixed. Change 2011609 by Maciej Mroz: more robust HasExternalBlueprintDependencies implementation Change 2016697 by Maciej Mroz: pretest BP: UDStruct - default value propagation in cooked build Change 2016288 by Maciej Mroz: pretest BP: UDStruct: Renaming variables wont break links from make/break nodes Change 1987637 by Maciej Mroz: CustomStruct icons placeholders Change 1987422 by Maciej Mroz: Better tooltips for variables in MyBlueprint Change 1991387 by Maciej Mroz: UDStructures fixes: Change 2029165 by Maciej Mroz: BP: better comment for incomatible pins Change 2030016 by Maciej Mroz: 8PRETEST: EDITOR: UDS: Defaults values aren't updated in struct type variables in blueprints Change 2030017 by Maciej Mroz: Unused UDStructure code removed (PPF_UseDefaultsForUDStructures) Change 2028856 by Maciej Mroz: BP: Pins with PC_Struct type are compatible only with exactly the same structure. (No derived structures are not handled as compatible). Change 2026701 by Maciej Mroz: k2: odd error on an add item node within a function (see attached image in details) Change 2028160 by Maciej Mroz: PRETEST: EDITOR: UDS: When deleting structures just after creating there is always some references in the memory Change 2028165 by Maciej Mroz: BP: BreakHitResult function has proper icon. Change 2033340 by Maciej Mroz: ttp330786 PRETEST: EDITOR: UDS: Changes of default values aren't apllied to breeak nodes for text type of variables Change 2034255 by Maciej Mroz: EDITOR: UDS: Changes of default values aren't apllied to make nodes for text type of variables ttp#330620 Change 2037682 by Maciej Mroz: ttp331309 BLOCKER: PRETEST: CRASH: EDITOR: Crash occurs when performing Diff Against Depot on any Blueprint Change 2033142 by Maciej Mroz: CreateDelegate Node uses internally FMemberReference. Refactor. Change 2032329 by Maciej Mroz: ttp330608 CRASH: PRETEST: EDITOR: UDS: Crash when trying to use struct named 'Color' in blueprint Change 2032420 by Maciej Mroz: ttp330620 PRETEST: EDITOR: UDS: Changes of default values aren't apllied to make nodes for text type of variables Change 2033139 by Maciej Mroz: Functions generated from CustomEvents can be also identified by GUID Change 2026631 by Maciej Mroz: BP. UDStruct: Invalid structs are handled better. Change 2025344 by Maciej Mroz: UDStruct enabled by default Change 2026672 by Maciej Mroz: EDITOR: BP: Can't easily remove 'pass-by-reference' pins on ReturnNodes Change 2026411 by Maciej Mroz: ExposeOnSpawn updated, it supports UDStructs, custom native Structs, and it throws compiler error. Change 2025342 by Maciej Mroz: GenerateBlueprintSkeleton moved from BLueprint::Serialize to RegenerateBlueprintClass, because SkeletonClass compilation requires all external dependencies to be loaded and linked. Change 2025570 by Steve Robb: Moved dependency processing to its own function. Change 2033235 by Steve Robb: String improvements Change 2035830 by Steve Robb: Workaround for FriendsAndChat crash in Fortnite. Change 2035115 by Steve Robb: UBT build time regression fixes. Change 2034162 by Steve Robb: 312775: UObject improvement: Ensure that *.generated.inl is included somewhere Change 2034181 by Steve Robb: Removal of any references to .generated.inl Change 2020165 by Steve Robb: BuildPublicAndPrivateUObjectHeaders factored out into its own function. Change 2020187 by Steve Robb: CreateModuleCompileEnvironment function factored out. Change 2020055 by Steve Robb: Refactoring of Unity.cs to remove complex and duplicate iteration. Change 2020083 by Steve Robb: Another use of dictionary utilities. Change 2031049 by Steve Robb: 312775: UObject improvement: Ensure that *.generated.inl is included somewhere Change 2025728 by Steve Robb: Refactored the application of a shared PCH file to multiple file into a single ApplySharedPCH function. Change 2020068 by Steve Robb: A couple of helpful utility functions for populating dictionaries. Change 2032307 by Steve Robb: 312775: UObject improvement: Ensure that *.generated.inl is included somewhere [CL 2054495 by Robert Manuszewski in Main branch]
2014-04-23 20:18:55 -04:00
if (bResult && OptionalOutput)
{
OptionalOutput->AddUnique(SourceClass);
Merging UE4-Pretest @ 2042161 to UE4 Change 1996384 by Andrew Brown: 322252 - EDITOR: Asset picker displays incorrect text when there are no filter results. Change 1996385 by Andrew Brown: 321858 - CRASH: Assertion failed: (Index >= 0) Function: STransformViewportToolBar::GetLocationGridLabel() STextBlock::CacheDesiredSize() Change 1996977 by Andrew Brown: 309685 - UE4: Adding an event/renaming an event on an event track in Matinee does not update the MatineeActor node in blueprint Change 2034873 by Jaroslaw Palczynski: More robust VS installation detection. Change 2039693 by Jaroslaw Palczynski: 327268 - RocketGDC: POSTLAUNCH: DEV: Make engine more robust against bad Visual Studio environment variables Change 1978978 by Jaroslaw Surowiec: - Removed obsolete AllowEliminatingReferences from the FArchive Change 2020326 by Maciej Mroz: pretest BP K2Node: RemovePinsFromOldPins function moved from K2Node to RemovePinsFromOldPins Change 2017608 by Maciej Mroz: pretest Some changes in SFortMissionEventSelector caused by FPinTypeTreeInfo Change 2017463 by Maciej Mroz: PinTypeSelector can lins unloaded UDStructs Change 2019979 by Maciej Mroz: pretest BP: Crash when performing Diff against Depot with blueprints containing Format Text nodes Change 2024469 by Maciej Mroz: MemberReference variable added to PinType. It's necessary for delegate's signature. Change 2024049 by Maciej Mroz: HasExternalBlueprintDependencies added to UK2Node_DynamicCast Change 2024586 by Maciej Mroz: FillSimpleMemberReference fix Change 2024472 by Maciej Mroz: workaround for delegates signature in pintype removed. Change 2023997 by Maciej Mroz: BP, UDStruc: Class UserDefinedStructEditorData added. It fixes many problems with undo/redo. Change 2021934 by Maciej Mroz: typo in a comment Change 2020355 by Maciej Mroz: Back out changelist 2020342 Change 2022178 by Maciej Mroz: CRASH: PRETEST: EDITOR: UDS: Crash when undo then redo new variable in struct that is used by blueprint Change 2021958 by Maciej Mroz: CRASH: PRETEST: EDITOR: UDS: Crash using variable of a type of copied struct in blueprint Change 1986247 by Maciej Mroz: User Defined Structures: circle dependency fixed. Early version. Change 1985107 by Maciej Mroz: UserDefinedStruct cannot have a field of a non-native type Change 1986278 by Maciej Mroz: pretest ensureMsgf in Struct::link Change 1986250 by Maciej Mroz: User Defined Struct: Non native classes are accepted types od values in structures. Change 1980955 by Maciej Mroz: Using AssetPtr and LazyPtr as UFunction parameter (intput or return) is explicitly disallowed. Change 2041215 by Maciej Mroz: ttp331249 BLOCKER: PRETEST: UI: Survive the Storm is missing the Mission HUD. Change 1984316 by Maciej Mroz: New User Defined Structure. WIP - there are still problems with circular dependencies. Change 2011616 by Maciej Mroz: UserDefinedStructures - various problems fixed. Change 2011609 by Maciej Mroz: more robust HasExternalBlueprintDependencies implementation Change 2016697 by Maciej Mroz: pretest BP: UDStruct - default value propagation in cooked build Change 2016288 by Maciej Mroz: pretest BP: UDStruct: Renaming variables wont break links from make/break nodes Change 1987637 by Maciej Mroz: CustomStruct icons placeholders Change 1987422 by Maciej Mroz: Better tooltips for variables in MyBlueprint Change 1991387 by Maciej Mroz: UDStructures fixes: Change 2029165 by Maciej Mroz: BP: better comment for incomatible pins Change 2030016 by Maciej Mroz: 8PRETEST: EDITOR: UDS: Defaults values aren't updated in struct type variables in blueprints Change 2030017 by Maciej Mroz: Unused UDStructure code removed (PPF_UseDefaultsForUDStructures) Change 2028856 by Maciej Mroz: BP: Pins with PC_Struct type are compatible only with exactly the same structure. (No derived structures are not handled as compatible). Change 2026701 by Maciej Mroz: k2: odd error on an add item node within a function (see attached image in details) Change 2028160 by Maciej Mroz: PRETEST: EDITOR: UDS: When deleting structures just after creating there is always some references in the memory Change 2028165 by Maciej Mroz: BP: BreakHitResult function has proper icon. Change 2033340 by Maciej Mroz: ttp330786 PRETEST: EDITOR: UDS: Changes of default values aren't apllied to breeak nodes for text type of variables Change 2034255 by Maciej Mroz: EDITOR: UDS: Changes of default values aren't apllied to make nodes for text type of variables ttp#330620 Change 2037682 by Maciej Mroz: ttp331309 BLOCKER: PRETEST: CRASH: EDITOR: Crash occurs when performing Diff Against Depot on any Blueprint Change 2033142 by Maciej Mroz: CreateDelegate Node uses internally FMemberReference. Refactor. Change 2032329 by Maciej Mroz: ttp330608 CRASH: PRETEST: EDITOR: UDS: Crash when trying to use struct named 'Color' in blueprint Change 2032420 by Maciej Mroz: ttp330620 PRETEST: EDITOR: UDS: Changes of default values aren't apllied to make nodes for text type of variables Change 2033139 by Maciej Mroz: Functions generated from CustomEvents can be also identified by GUID Change 2026631 by Maciej Mroz: BP. UDStruct: Invalid structs are handled better. Change 2025344 by Maciej Mroz: UDStruct enabled by default Change 2026672 by Maciej Mroz: EDITOR: BP: Can't easily remove 'pass-by-reference' pins on ReturnNodes Change 2026411 by Maciej Mroz: ExposeOnSpawn updated, it supports UDStructs, custom native Structs, and it throws compiler error. Change 2025342 by Maciej Mroz: GenerateBlueprintSkeleton moved from BLueprint::Serialize to RegenerateBlueprintClass, because SkeletonClass compilation requires all external dependencies to be loaded and linked. Change 2025570 by Steve Robb: Moved dependency processing to its own function. Change 2033235 by Steve Robb: String improvements Change 2035830 by Steve Robb: Workaround for FriendsAndChat crash in Fortnite. Change 2035115 by Steve Robb: UBT build time regression fixes. Change 2034162 by Steve Robb: 312775: UObject improvement: Ensure that *.generated.inl is included somewhere Change 2034181 by Steve Robb: Removal of any references to .generated.inl Change 2020165 by Steve Robb: BuildPublicAndPrivateUObjectHeaders factored out into its own function. Change 2020187 by Steve Robb: CreateModuleCompileEnvironment function factored out. Change 2020055 by Steve Robb: Refactoring of Unity.cs to remove complex and duplicate iteration. Change 2020083 by Steve Robb: Another use of dictionary utilities. Change 2031049 by Steve Robb: 312775: UObject improvement: Ensure that *.generated.inl is included somewhere Change 2025728 by Steve Robb: Refactored the application of a shared PCH file to multiple file into a single ApplySharedPCH function. Change 2020068 by Steve Robb: A couple of helpful utility functions for populating dictionaries. Change 2032307 by Steve Robb: 312775: UObject improvement: Ensure that *.generated.inl is included somewhere [CL 2054495 by Robert Manuszewski in Main branch]
2014-04-23 20:18:55 -04:00
}
const bool bSuperResult = Super::HasExternalDependencies(OptionalOutput);
return bSuperResult || bResult;
Merging UE4-Pretest @ 2042161 to UE4 Change 1996384 by Andrew Brown: 322252 - EDITOR: Asset picker displays incorrect text when there are no filter results. Change 1996385 by Andrew Brown: 321858 - CRASH: Assertion failed: (Index >= 0) Function: STransformViewportToolBar::GetLocationGridLabel() STextBlock::CacheDesiredSize() Change 1996977 by Andrew Brown: 309685 - UE4: Adding an event/renaming an event on an event track in Matinee does not update the MatineeActor node in blueprint Change 2034873 by Jaroslaw Palczynski: More robust VS installation detection. Change 2039693 by Jaroslaw Palczynski: 327268 - RocketGDC: POSTLAUNCH: DEV: Make engine more robust against bad Visual Studio environment variables Change 1978978 by Jaroslaw Surowiec: - Removed obsolete AllowEliminatingReferences from the FArchive Change 2020326 by Maciej Mroz: pretest BP K2Node: RemovePinsFromOldPins function moved from K2Node to RemovePinsFromOldPins Change 2017608 by Maciej Mroz: pretest Some changes in SFortMissionEventSelector caused by FPinTypeTreeInfo Change 2017463 by Maciej Mroz: PinTypeSelector can lins unloaded UDStructs Change 2019979 by Maciej Mroz: pretest BP: Crash when performing Diff against Depot with blueprints containing Format Text nodes Change 2024469 by Maciej Mroz: MemberReference variable added to PinType. It's necessary for delegate's signature. Change 2024049 by Maciej Mroz: HasExternalBlueprintDependencies added to UK2Node_DynamicCast Change 2024586 by Maciej Mroz: FillSimpleMemberReference fix Change 2024472 by Maciej Mroz: workaround for delegates signature in pintype removed. Change 2023997 by Maciej Mroz: BP, UDStruc: Class UserDefinedStructEditorData added. It fixes many problems with undo/redo. Change 2021934 by Maciej Mroz: typo in a comment Change 2020355 by Maciej Mroz: Back out changelist 2020342 Change 2022178 by Maciej Mroz: CRASH: PRETEST: EDITOR: UDS: Crash when undo then redo new variable in struct that is used by blueprint Change 2021958 by Maciej Mroz: CRASH: PRETEST: EDITOR: UDS: Crash using variable of a type of copied struct in blueprint Change 1986247 by Maciej Mroz: User Defined Structures: circle dependency fixed. Early version. Change 1985107 by Maciej Mroz: UserDefinedStruct cannot have a field of a non-native type Change 1986278 by Maciej Mroz: pretest ensureMsgf in Struct::link Change 1986250 by Maciej Mroz: User Defined Struct: Non native classes are accepted types od values in structures. Change 1980955 by Maciej Mroz: Using AssetPtr and LazyPtr as UFunction parameter (intput or return) is explicitly disallowed. Change 2041215 by Maciej Mroz: ttp331249 BLOCKER: PRETEST: UI: Survive the Storm is missing the Mission HUD. Change 1984316 by Maciej Mroz: New User Defined Structure. WIP - there are still problems with circular dependencies. Change 2011616 by Maciej Mroz: UserDefinedStructures - various problems fixed. Change 2011609 by Maciej Mroz: more robust HasExternalBlueprintDependencies implementation Change 2016697 by Maciej Mroz: pretest BP: UDStruct - default value propagation in cooked build Change 2016288 by Maciej Mroz: pretest BP: UDStruct: Renaming variables wont break links from make/break nodes Change 1987637 by Maciej Mroz: CustomStruct icons placeholders Change 1987422 by Maciej Mroz: Better tooltips for variables in MyBlueprint Change 1991387 by Maciej Mroz: UDStructures fixes: Change 2029165 by Maciej Mroz: BP: better comment for incomatible pins Change 2030016 by Maciej Mroz: 8PRETEST: EDITOR: UDS: Defaults values aren't updated in struct type variables in blueprints Change 2030017 by Maciej Mroz: Unused UDStructure code removed (PPF_UseDefaultsForUDStructures) Change 2028856 by Maciej Mroz: BP: Pins with PC_Struct type are compatible only with exactly the same structure. (No derived structures are not handled as compatible). Change 2026701 by Maciej Mroz: k2: odd error on an add item node within a function (see attached image in details) Change 2028160 by Maciej Mroz: PRETEST: EDITOR: UDS: When deleting structures just after creating there is always some references in the memory Change 2028165 by Maciej Mroz: BP: BreakHitResult function has proper icon. Change 2033340 by Maciej Mroz: ttp330786 PRETEST: EDITOR: UDS: Changes of default values aren't apllied to breeak nodes for text type of variables Change 2034255 by Maciej Mroz: EDITOR: UDS: Changes of default values aren't apllied to make nodes for text type of variables ttp#330620 Change 2037682 by Maciej Mroz: ttp331309 BLOCKER: PRETEST: CRASH: EDITOR: Crash occurs when performing Diff Against Depot on any Blueprint Change 2033142 by Maciej Mroz: CreateDelegate Node uses internally FMemberReference. Refactor. Change 2032329 by Maciej Mroz: ttp330608 CRASH: PRETEST: EDITOR: UDS: Crash when trying to use struct named 'Color' in blueprint Change 2032420 by Maciej Mroz: ttp330620 PRETEST: EDITOR: UDS: Changes of default values aren't apllied to make nodes for text type of variables Change 2033139 by Maciej Mroz: Functions generated from CustomEvents can be also identified by GUID Change 2026631 by Maciej Mroz: BP. UDStruct: Invalid structs are handled better. Change 2025344 by Maciej Mroz: UDStruct enabled by default Change 2026672 by Maciej Mroz: EDITOR: BP: Can't easily remove 'pass-by-reference' pins on ReturnNodes Change 2026411 by Maciej Mroz: ExposeOnSpawn updated, it supports UDStructs, custom native Structs, and it throws compiler error. Change 2025342 by Maciej Mroz: GenerateBlueprintSkeleton moved from BLueprint::Serialize to RegenerateBlueprintClass, because SkeletonClass compilation requires all external dependencies to be loaded and linked. Change 2025570 by Steve Robb: Moved dependency processing to its own function. Change 2033235 by Steve Robb: String improvements Change 2035830 by Steve Robb: Workaround for FriendsAndChat crash in Fortnite. Change 2035115 by Steve Robb: UBT build time regression fixes. Change 2034162 by Steve Robb: 312775: UObject improvement: Ensure that *.generated.inl is included somewhere Change 2034181 by Steve Robb: Removal of any references to .generated.inl Change 2020165 by Steve Robb: BuildPublicAndPrivateUObjectHeaders factored out into its own function. Change 2020187 by Steve Robb: CreateModuleCompileEnvironment function factored out. Change 2020055 by Steve Robb: Refactoring of Unity.cs to remove complex and duplicate iteration. Change 2020083 by Steve Robb: Another use of dictionary utilities. Change 2031049 by Steve Robb: 312775: UObject improvement: Ensure that *.generated.inl is included somewhere Change 2025728 by Steve Robb: Refactored the application of a shared PCH file to multiple file into a single ApplySharedPCH function. Change 2020068 by Steve Robb: A couple of helpful utility functions for populating dictionaries. Change 2032307 by Steve Robb: 312775: UObject improvement: Ensure that *.generated.inl is included somewhere [CL 2054495 by Robert Manuszewski in Main branch]
2014-04-23 20:18:55 -04:00
}
FText UK2Node_DynamicCast::GetMenuCategory() const
{
static FNodeTextCache CachedCategory;
if (CachedCategory.IsOutOfDate(this))
{
// FText::Format() is slow, so we cache this to save on performance
CachedCategory.SetCachedText(FEditorCategoryUtils::BuildCategoryString(FCommonEditorCategory::Utilities, LOCTEXT("ActionMenuCategory", "Casting")), this);
}
return CachedCategory;
}
FBlueprintNodeSignature UK2Node_DynamicCast::GetSignature() const
{
FBlueprintNodeSignature NodeSignature = Super::GetSignature();
NodeSignature.AddSubObject(TargetType.Get());
return NodeSignature;
}
bool UK2Node_DynamicCast::IsConnectionDisallowed(const UEdGraphPin* MyPin, const UEdGraphPin* OtherPin, FString& OutReason) const
{
bool bIsDisallowed = Super::IsConnectionDisallowed(MyPin, OtherPin, OutReason);
if (MyPin == GetCastSourcePin())
{
const FEdGraphPinType& OtherPinType = OtherPin->PinType;
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
const FText OtherPinName = OtherPin->PinFriendlyName.IsEmpty() ? FText::FromName(OtherPin->PinName) : OtherPin->PinFriendlyName;
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3130440) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3050029 on 2016/07/14 by Ben.Cosh This modifies the blueprint instrumented compilation chain so only the the blueprint you compile and all dependencies are instrumented and the profiler is notified rather than waiting for event data. #Jira UE-32063 - The blueprint profiler doesn't display any stats in the execution graph if no instance is placed in the current level. #Proj BlueprintProfiler, Kismet, UnrelEd - This also improves the execution graph UI, notifying the user that no instances are available to display data from. Change 3101549 on 2016/08/25 by Maciej.Mroz BP nativization: fixed FEmitDefaultValueHelper::HandleInstancedSubobject https://udn.unrealengine.com/questions/308800/nativized-blueprints-newobject-call-uses-incorrect.html Change 3101811 on 2016/08/25 by Ryan.Rauschkolb BP Profiler: Fixed stack overflow crash when compiling blueprints with nested macros #jira UE-34503 Change 3102478 on 2016/08/26 by Maciej.Mroz #jira UE-35135 - Odin compiles with errors when using Blueprint nativization BP Nativization: - improved native cast - improved bool handling Change 3102944 on 2016/08/26 by Phillip.Kavan [UE-33017] Don't include transient properties when generating property lists at cook time for optimized runtime Blueprint component instancing. Also ensure that deprecated properties are serialized during load/instancing at runtime. change summary: - modified FBlueprintComponentInstanceDataLoader to append 'PPF_UseDeprecatedProperties' to the FArchive port flags. - modified FBlueprintComponentInstanceDataWriter to append both 'PPF_Duplicate' and 'PPF_UseDeprecatedProperties" to the FArchive port flags (to ensure consistency w/ the instancing side). - switched the RecursivePropertyGatherLambda helper to a static class method instead - modified the RecursivePropertyGather utility method to exclude transient properties. notes: - the primary cause of UE-33017 was that UBodySetup can "share" the ShapeBodySetup object across all instances, but the shared object is not owned by the CDO, it's owned by the archetype. this caused the archetype to differ from the CDO, which caused us to emit the transient property at cook time. thsi threw off the serialization offset between read/write FArchive passes at runtime. since transient properties are not serialized as part of the template, there's no need to include them in the generated delta property list, so as a fix, i'm just excluding them altogether. #jira UE-33017 Change 3103692 on 2016/08/27 by Mike.Beach Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints) Change 3104266 on 2016/08/29 by Ben.Marsh Add test script to native assets for QAGame. Change 3104399 on 2016/08/29 by Ben.Marsh Fix missing property warning in build script. Change 3104419 on 2016/08/29 by Maciej.Mroz #jira UE-35135 Odin compiles with errors when using Blueprint nativization - Reduced number of DynamicCLass instance dependencies - Fixed UDS default values dependencies - Improved WeakObjPtr handling - Improved const parameters handling Change 3104474 on 2016/08/29 by Ryan.Rauschkolb BP Profiler: Fixed issue where collapsed nodes that share a name with a parent class collapsed node can cause a stack overflow #jira UE-35245 Change 3105605 on 2016/08/30 by Maciej.Mroz Temp change: CIS Test Change 3105738 on 2016/08/30 by Maciej.Mroz UAT, CIS: testing NoRecompileUAT switch. Change 3105800 on 2016/08/30 by Maciej.Mroz UAT, CIS, Nativization: - reverted NoRecompileUAT switch. - testing nativization with -nocompileeditor flag and without -compile flag Change 3106162 on 2016/08/30 by Maciej.Mroz UAT, CIS, Nativization: -NoSubmit flag added. Otherwise UAT files are singed (when they are used by other process). It causes an error. - Ugly hack removed. Change 3106261 on 2016/08/30 by Phillip.Kavan [UE-34705] Gracefully handle tunnel node entry exec pins that aren't internally linked during BP profiler tunnel boundary mapping. change summary: - added FBlueprintFunctionContext::GetTunnelBoundaryNode() (uncheckedl variant). - moved FBlueprintFunctionContext::GetTunnelBoundaryNodeChecked() impl into GetTunnelBoundaryNode(). - re-implemented FBlueprintFunctionContext::GetTunnelBoundaryNodeChecked() to call GetTunnelBoundaryNode() and then assert on the result. - changed the FBlueprintTunnelInstanceContext::GetTunnelBoundaryNodeChecked() impl to override GetTunnelBoundaryNode() instead. - modified FBlueprintFunctionContext::MapTunnelBoundary() to only process the entry case if the TunnelBoundaryNode result is valid. this way we simply skip tunnel boundary mapping if an entry path was not previously mapped (rather than assert). #jira UE-34705 Change 3106478 on 2016/08/30 by Ben.Marsh Include *.uasset files on builders running the NativizeAssets job. Change 3107514 on 2016/08/31 by Ben.Cosh This set of changes is the result of a full pass on the blueprint profiler heat interface to try and bring them into a usable state. #Jira UE-33465 - Stat heat colors and heat wire traces need a quick pass to ensure they are working as expected. #Jira UE-33309 - FlipFlop node breaks hottest path wire heatmap #Jira UE-33650 - Blueprint heatwire effects do not work when touching user macros #Jira UE-33706 - BP Profiler - Macro instances not colored or reporting time #Jira UE-33701 - BP Profiler: Hottest path wire heatmap doesn't appear to be working #Jira UE-33083 - BP Profiler - (Exclusive) pure node heatmap missing from some nodes #Jira UE-34855 - BP Profiler - Update heatmap coloration when switching between Default/Custom thresholds #Jira UE-32218 - BP Profiler: Clear "inclusive" time entries from "avg. time" row. #Proj GraphEditor, Kismet, BlueprintProfiler, Change 3108268 on 2016/08/31 by Ben.Cosh Minor change from profiler review sessions to move macro timing to average stats. #Jira UE-33706 - BP Profiler - Macro instances not colored or reporting time #Proj Kismet Change 3108991 on 2016/08/31 by Maciej.Mroz UAT, CIS, Nativization: Test separate cooking and compiling Change 3110097 on 2016/09/01 by Ben.Cosh Minor update to the blueprint profiler mapping functionality to ignore disabled nodes and a fix for the max timing white glow bug. #Jira UE-35377 - Blueprint macros highlighting white in profiler #Jira UE-34973 - Remove Ghost Nodes #Proj Kismet, BlueprintProfiler Change 3114553 on 2016/09/06 by Dan.Oconnor Support for TMap/TSet in blueprint variable editor panel #jira UE-2114 Change 3116367 on 2016/09/07 by Dan.Oconnor Fixed Function/Macro inputs/outputs list (had become cramped with my last change) + misc. fixes for new container types, fixes uninitialized members in FTerminalType #jira UE-2114, UE-35676 Change 3116663 on 2016/09/07 by Dan.Oconnor Fix for array functions showing up with TSet and TMap pins #jira UE-2114 Change 3118259 on 2016/09/08 by Ryan.Rauschkolb BP Profiler: Fixed Assert when profiling parent/child Blueprint #jira UE-35487 Change 3119023 on 2016/09/09 by Maciej.Mroz Manually integrated (from Odin branch) recent changes related to BP and nativization: 3115713 UE-35448 3117590 UE-35697 3117742 ODIN-577 Change 3119058 on 2016/09/09 by Maciej.Mroz #jira UE-32841 GitHub 2574 : fix typos #2574 https://github.com/EpicGames/UnrealEngine/pull/2574 Renamed function CustomNativeInitilize to InitializeNativeClassData and made it private. Change 3119302 on 2016/09/09 by Maciej.Mroz #jira UE-35584 Orion - nativized server crashes Global variable for WITH_PERFCOUNTERS definition in UEBuildConfiguration. Previously the same header could be compiled with the WITH_PERFCOUNTERS flag enadles and disabled (during a single compilation) . Change 3119502 on 2016/09/09 by Mike.Beach When building a deterministic UUID for latent nodes, we now use expanded nodes' origin (node) to avoid collisions (latent node in macros, etc.) #jira UE-35609 Change 3119517 on 2016/09/09 by Ryan.Rauschkolb Added blueprint editor settings option to display unique names for blueprint nodes Change 3119602 on 2016/09/09 by Maciej.Mroz #jira UEBP-214 Implement Solution for Nativized AnimBlueprints Size Reduction Added stats about nativized AnimBP Mechanism to exlcude reducible AnimBP Editor config option:[BlueprintNativizationSettings] bNativizeAnimBPOnlyWhenNonReducibleFuncitons=false Change 3119615 on 2016/09/09 by Maciej.Mroz Missing change (should be part of cl#3119602) Change 3119619 on 2016/09/09 by Maciej.Mroz #jira UEBP-214 Implement Solution for Nativized AnimBlueprints Size Reduction Excluding all AnimBP from Orion nativization. Change 3120752 on 2016/09/12 by Maciej.Mroz #jira UE-35051 [CrashReport] UE4Editor_BlueprintNativeCodeGen!FBlueprintNativeCodeGenModule::GenerateSingleAsset() Removed unnecessary ensure Change 3121354 on 2016/09/12 by Dan.Oconnor Fixed variable type width, required for TMap's extra combobox. Change 3121626 on 2016/09/12 by Phillip.Kavan [UE-35456] Fix crash on right-click in components tree view after copying one or more BSP actors to clipboard. Note: This applies to the components tree view in both the Blueprint editor and the Level editor's Actor details panel. change summary: - modified FComponentObjectTextFactory::CanCreateClass() to exclude Actor/Component subtypes that are not Blueprint-compatible (e.g. ABrush). #jira UE-35456 Change 3122712 on 2016/09/13 by Maciej.Mroz #jira UE-35714 [CrashReport] UE4Editor_BlueprintGraph!UK2Node_CallArrayFunction::GetArrayPins() [k2node_callarrayfunction.cpp:141] Replaced "check" with "ensure". Change 3124398 on 2016/09/14 by Maciej.Mroz More strict BP validation in UBlueprintThumbnailRenderer::Draw #jira UE-35705 Change 3124405 on 2016/09/14 by Maciej.Mroz #jira UE-35110 Packaged project crashes when playing sound from blueprint library with enum input after nativizing blueprints Function Libraries are properly added to dependencies list while nativization. Change 3124667 on 2016/09/14 by Maciej.Mroz #jira UE-35262 Incompatible pins give generate warning, when error is necessary. Fixed incompatible pins validation. Change 3125245 on 2016/09/14 by Phillip.Kavan [UE-33674] Fix missing stats for the ForEachElementInEnum node type in the Blueprint profiler tree view. change summary: - modified FScriptEventPlayback::Process() to not allow intermediate node exit pins to pollute the current trace path - modified FBlueprintFunctionContext::DetermineGraphNodeCharacteristics() to handle the UK2Node_ForEachElementInEnum type as a special case and account for extra loop iterations in the sample frequency computed at mapping time - exported UK2Node_ForEachElementInEnum::InsideLoopPinName and EnumOutputPinName string constants #jira UE-33674 Change 3126211 on 2016/09/15 by Maciej.Mroz #jira UE-36016 Struct pin can be connected to Object pin without error Change 3126393 on 2016/09/15 by Maciej.Mroz #jira UE-35936 Replace "check" by "ensure". Change 3126623 on 2016/09/15 by Maciej.Mroz #jira UE-35816 User defined struct array resets to defaults in blueprint after updating the struct STRUCT_SerializeFromMismatchedTag is not necessary to serialize structure when guids match. Anyway STRUCT_SerializeFromMismatchedTag sholud precede SerializeFromMismatchedTag(). Change 3127288 on 2016/09/15 by Mike.Beach Making the script VM overhead and native time stats threadsafe (to account for threaded anim Blueprints in Orion). Change 3127375 on 2016/09/15 by Mike.Beach Making sure Blueprint classes inherit the super's ClassConfigName properly (inherit the ID instead of the filename). Change 3127381 on 2016/09/15 by Mike.Beach Removing an overzealous ensure that certain users were hitting when a loading array property wasn't fully filled out yet (confirmed that it was populated with the proper objects by the end of the load). Change 3127476 on 2016/09/15 by Dan.Oconnor Build fix #jira UE-36073 Change 3128335 on 2016/09/16 by Maciej.Mroz #jira UE-36075 Odin: BP_DefaultHand and BigBotCharacter blueprints fail to compile Fixed broken BP assets. Change 3128589 on 2016/09/16 by Mike.Beach Fixing a static analysis CIS warning (duplicated condition). Change 3128630 on 2016/09/16 by Dan.Oconnor Re-fix with engine version set Change 3129338 on 2016/09/16 by Dan.Oconnor =FScriptSet/FScriptSetHelper fleshed out (Add, Remove, and Find implemented) +SetParam implemented for marking up sets for primitive Set functions (to be checked in once completed as BlueprintSetLibrary) #jira UE-2114 [CL 3131171 by Mike Beach in Main branch]
2016-09-19 16:14:06 -04:00
if (OtherPinType.IsContainer())
{
bIsDisallowed = true;
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3130440) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3050029 on 2016/07/14 by Ben.Cosh This modifies the blueprint instrumented compilation chain so only the the blueprint you compile and all dependencies are instrumented and the profiler is notified rather than waiting for event data. #Jira UE-32063 - The blueprint profiler doesn't display any stats in the execution graph if no instance is placed in the current level. #Proj BlueprintProfiler, Kismet, UnrelEd - This also improves the execution graph UI, notifying the user that no instances are available to display data from. Change 3101549 on 2016/08/25 by Maciej.Mroz BP nativization: fixed FEmitDefaultValueHelper::HandleInstancedSubobject https://udn.unrealengine.com/questions/308800/nativized-blueprints-newobject-call-uses-incorrect.html Change 3101811 on 2016/08/25 by Ryan.Rauschkolb BP Profiler: Fixed stack overflow crash when compiling blueprints with nested macros #jira UE-34503 Change 3102478 on 2016/08/26 by Maciej.Mroz #jira UE-35135 - Odin compiles with errors when using Blueprint nativization BP Nativization: - improved native cast - improved bool handling Change 3102944 on 2016/08/26 by Phillip.Kavan [UE-33017] Don't include transient properties when generating property lists at cook time for optimized runtime Blueprint component instancing. Also ensure that deprecated properties are serialized during load/instancing at runtime. change summary: - modified FBlueprintComponentInstanceDataLoader to append 'PPF_UseDeprecatedProperties' to the FArchive port flags. - modified FBlueprintComponentInstanceDataWriter to append both 'PPF_Duplicate' and 'PPF_UseDeprecatedProperties" to the FArchive port flags (to ensure consistency w/ the instancing side). - switched the RecursivePropertyGatherLambda helper to a static class method instead - modified the RecursivePropertyGather utility method to exclude transient properties. notes: - the primary cause of UE-33017 was that UBodySetup can "share" the ShapeBodySetup object across all instances, but the shared object is not owned by the CDO, it's owned by the archetype. this caused the archetype to differ from the CDO, which caused us to emit the transient property at cook time. thsi threw off the serialization offset between read/write FArchive passes at runtime. since transient properties are not serialized as part of the template, there's no need to include them in the generated delta property list, so as a fix, i'm just excluding them altogether. #jira UE-33017 Change 3103692 on 2016/08/27 by Mike.Beach Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints) Change 3104266 on 2016/08/29 by Ben.Marsh Add test script to native assets for QAGame. Change 3104399 on 2016/08/29 by Ben.Marsh Fix missing property warning in build script. Change 3104419 on 2016/08/29 by Maciej.Mroz #jira UE-35135 Odin compiles with errors when using Blueprint nativization - Reduced number of DynamicCLass instance dependencies - Fixed UDS default values dependencies - Improved WeakObjPtr handling - Improved const parameters handling Change 3104474 on 2016/08/29 by Ryan.Rauschkolb BP Profiler: Fixed issue where collapsed nodes that share a name with a parent class collapsed node can cause a stack overflow #jira UE-35245 Change 3105605 on 2016/08/30 by Maciej.Mroz Temp change: CIS Test Change 3105738 on 2016/08/30 by Maciej.Mroz UAT, CIS: testing NoRecompileUAT switch. Change 3105800 on 2016/08/30 by Maciej.Mroz UAT, CIS, Nativization: - reverted NoRecompileUAT switch. - testing nativization with -nocompileeditor flag and without -compile flag Change 3106162 on 2016/08/30 by Maciej.Mroz UAT, CIS, Nativization: -NoSubmit flag added. Otherwise UAT files are singed (when they are used by other process). It causes an error. - Ugly hack removed. Change 3106261 on 2016/08/30 by Phillip.Kavan [UE-34705] Gracefully handle tunnel node entry exec pins that aren't internally linked during BP profiler tunnel boundary mapping. change summary: - added FBlueprintFunctionContext::GetTunnelBoundaryNode() (uncheckedl variant). - moved FBlueprintFunctionContext::GetTunnelBoundaryNodeChecked() impl into GetTunnelBoundaryNode(). - re-implemented FBlueprintFunctionContext::GetTunnelBoundaryNodeChecked() to call GetTunnelBoundaryNode() and then assert on the result. - changed the FBlueprintTunnelInstanceContext::GetTunnelBoundaryNodeChecked() impl to override GetTunnelBoundaryNode() instead. - modified FBlueprintFunctionContext::MapTunnelBoundary() to only process the entry case if the TunnelBoundaryNode result is valid. this way we simply skip tunnel boundary mapping if an entry path was not previously mapped (rather than assert). #jira UE-34705 Change 3106478 on 2016/08/30 by Ben.Marsh Include *.uasset files on builders running the NativizeAssets job. Change 3107514 on 2016/08/31 by Ben.Cosh This set of changes is the result of a full pass on the blueprint profiler heat interface to try and bring them into a usable state. #Jira UE-33465 - Stat heat colors and heat wire traces need a quick pass to ensure they are working as expected. #Jira UE-33309 - FlipFlop node breaks hottest path wire heatmap #Jira UE-33650 - Blueprint heatwire effects do not work when touching user macros #Jira UE-33706 - BP Profiler - Macro instances not colored or reporting time #Jira UE-33701 - BP Profiler: Hottest path wire heatmap doesn't appear to be working #Jira UE-33083 - BP Profiler - (Exclusive) pure node heatmap missing from some nodes #Jira UE-34855 - BP Profiler - Update heatmap coloration when switching between Default/Custom thresholds #Jira UE-32218 - BP Profiler: Clear "inclusive" time entries from "avg. time" row. #Proj GraphEditor, Kismet, BlueprintProfiler, Change 3108268 on 2016/08/31 by Ben.Cosh Minor change from profiler review sessions to move macro timing to average stats. #Jira UE-33706 - BP Profiler - Macro instances not colored or reporting time #Proj Kismet Change 3108991 on 2016/08/31 by Maciej.Mroz UAT, CIS, Nativization: Test separate cooking and compiling Change 3110097 on 2016/09/01 by Ben.Cosh Minor update to the blueprint profiler mapping functionality to ignore disabled nodes and a fix for the max timing white glow bug. #Jira UE-35377 - Blueprint macros highlighting white in profiler #Jira UE-34973 - Remove Ghost Nodes #Proj Kismet, BlueprintProfiler Change 3114553 on 2016/09/06 by Dan.Oconnor Support for TMap/TSet in blueprint variable editor panel #jira UE-2114 Change 3116367 on 2016/09/07 by Dan.Oconnor Fixed Function/Macro inputs/outputs list (had become cramped with my last change) + misc. fixes for new container types, fixes uninitialized members in FTerminalType #jira UE-2114, UE-35676 Change 3116663 on 2016/09/07 by Dan.Oconnor Fix for array functions showing up with TSet and TMap pins #jira UE-2114 Change 3118259 on 2016/09/08 by Ryan.Rauschkolb BP Profiler: Fixed Assert when profiling parent/child Blueprint #jira UE-35487 Change 3119023 on 2016/09/09 by Maciej.Mroz Manually integrated (from Odin branch) recent changes related to BP and nativization: 3115713 UE-35448 3117590 UE-35697 3117742 ODIN-577 Change 3119058 on 2016/09/09 by Maciej.Mroz #jira UE-32841 GitHub 2574 : fix typos #2574 https://github.com/EpicGames/UnrealEngine/pull/2574 Renamed function CustomNativeInitilize to InitializeNativeClassData and made it private. Change 3119302 on 2016/09/09 by Maciej.Mroz #jira UE-35584 Orion - nativized server crashes Global variable for WITH_PERFCOUNTERS definition in UEBuildConfiguration. Previously the same header could be compiled with the WITH_PERFCOUNTERS flag enadles and disabled (during a single compilation) . Change 3119502 on 2016/09/09 by Mike.Beach When building a deterministic UUID for latent nodes, we now use expanded nodes' origin (node) to avoid collisions (latent node in macros, etc.) #jira UE-35609 Change 3119517 on 2016/09/09 by Ryan.Rauschkolb Added blueprint editor settings option to display unique names for blueprint nodes Change 3119602 on 2016/09/09 by Maciej.Mroz #jira UEBP-214 Implement Solution for Nativized AnimBlueprints Size Reduction Added stats about nativized AnimBP Mechanism to exlcude reducible AnimBP Editor config option:[BlueprintNativizationSettings] bNativizeAnimBPOnlyWhenNonReducibleFuncitons=false Change 3119615 on 2016/09/09 by Maciej.Mroz Missing change (should be part of cl#3119602) Change 3119619 on 2016/09/09 by Maciej.Mroz #jira UEBP-214 Implement Solution for Nativized AnimBlueprints Size Reduction Excluding all AnimBP from Orion nativization. Change 3120752 on 2016/09/12 by Maciej.Mroz #jira UE-35051 [CrashReport] UE4Editor_BlueprintNativeCodeGen!FBlueprintNativeCodeGenModule::GenerateSingleAsset() Removed unnecessary ensure Change 3121354 on 2016/09/12 by Dan.Oconnor Fixed variable type width, required for TMap's extra combobox. Change 3121626 on 2016/09/12 by Phillip.Kavan [UE-35456] Fix crash on right-click in components tree view after copying one or more BSP actors to clipboard. Note: This applies to the components tree view in both the Blueprint editor and the Level editor's Actor details panel. change summary: - modified FComponentObjectTextFactory::CanCreateClass() to exclude Actor/Component subtypes that are not Blueprint-compatible (e.g. ABrush). #jira UE-35456 Change 3122712 on 2016/09/13 by Maciej.Mroz #jira UE-35714 [CrashReport] UE4Editor_BlueprintGraph!UK2Node_CallArrayFunction::GetArrayPins() [k2node_callarrayfunction.cpp:141] Replaced "check" with "ensure". Change 3124398 on 2016/09/14 by Maciej.Mroz More strict BP validation in UBlueprintThumbnailRenderer::Draw #jira UE-35705 Change 3124405 on 2016/09/14 by Maciej.Mroz #jira UE-35110 Packaged project crashes when playing sound from blueprint library with enum input after nativizing blueprints Function Libraries are properly added to dependencies list while nativization. Change 3124667 on 2016/09/14 by Maciej.Mroz #jira UE-35262 Incompatible pins give generate warning, when error is necessary. Fixed incompatible pins validation. Change 3125245 on 2016/09/14 by Phillip.Kavan [UE-33674] Fix missing stats for the ForEachElementInEnum node type in the Blueprint profiler tree view. change summary: - modified FScriptEventPlayback::Process() to not allow intermediate node exit pins to pollute the current trace path - modified FBlueprintFunctionContext::DetermineGraphNodeCharacteristics() to handle the UK2Node_ForEachElementInEnum type as a special case and account for extra loop iterations in the sample frequency computed at mapping time - exported UK2Node_ForEachElementInEnum::InsideLoopPinName and EnumOutputPinName string constants #jira UE-33674 Change 3126211 on 2016/09/15 by Maciej.Mroz #jira UE-36016 Struct pin can be connected to Object pin without error Change 3126393 on 2016/09/15 by Maciej.Mroz #jira UE-35936 Replace "check" by "ensure". Change 3126623 on 2016/09/15 by Maciej.Mroz #jira UE-35816 User defined struct array resets to defaults in blueprint after updating the struct STRUCT_SerializeFromMismatchedTag is not necessary to serialize structure when guids match. Anyway STRUCT_SerializeFromMismatchedTag sholud precede SerializeFromMismatchedTag(). Change 3127288 on 2016/09/15 by Mike.Beach Making the script VM overhead and native time stats threadsafe (to account for threaded anim Blueprints in Orion). Change 3127375 on 2016/09/15 by Mike.Beach Making sure Blueprint classes inherit the super's ClassConfigName properly (inherit the ID instead of the filename). Change 3127381 on 2016/09/15 by Mike.Beach Removing an overzealous ensure that certain users were hitting when a loading array property wasn't fully filled out yet (confirmed that it was populated with the proper objects by the end of the load). Change 3127476 on 2016/09/15 by Dan.Oconnor Build fix #jira UE-36073 Change 3128335 on 2016/09/16 by Maciej.Mroz #jira UE-36075 Odin: BP_DefaultHand and BigBotCharacter blueprints fail to compile Fixed broken BP assets. Change 3128589 on 2016/09/16 by Mike.Beach Fixing a static analysis CIS warning (duplicated condition). Change 3128630 on 2016/09/16 by Dan.Oconnor Re-fix with engine version set Change 3129338 on 2016/09/16 by Dan.Oconnor =FScriptSet/FScriptSetHelper fleshed out (Add, Remove, and Find implemented) +SetParam implemented for marking up sets for primitive Set functions (to be checked in once completed as BlueprintSetLibrary) #jira UE-2114 [CL 3131171 by Mike Beach in Main branch]
2016-09-19 16:14:06 -04:00
OutReason = LOCTEXT("CannotContainerCast", "You cannot cast containers of objects.").ToString();
}
else if (TargetType == nullptr)
{
bIsDisallowed = true;
OutReason = LOCTEXT("InvalidTargetType", "This cast has an invalid target type (was the class deleted without a redirect?).").ToString();
}
else if (OtherPinType.PinCategory == UEdGraphSchema_K2::PC_Interface)
{
// allow all interface casts, but don't allow casting non-objects to interfaces
}
else if (OtherPinType.PinCategory == UEdGraphSchema_K2::PC_Object)
{
// let's handle wasted cast inputs with warnings in ValidateNodeDuringCompilation() instead
}
else
{
bIsDisallowed = true;
OutReason = LOCTEXT("NonObjectCast", "You can only cast objects/interfaces.").ToString();
}
}
return bIsDisallowed;
}
void UK2Node_DynamicCast::NotifyPinConnectionListChanged(UEdGraphPin* Pin)
{
Super::NotifyPinConnectionListChanged(Pin);
if (Pin == GetCastSourcePin())
{
Pin->PinFriendlyName = FText::GetEmpty();
FEdGraphPinType& InputPinType = Pin->PinType;
if (Pin->LinkedTo.Num() == 0)
{
InputPinType.PinCategory = UEdGraphSchema_K2::PC_Wildcard;
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
InputPinType.PinSubCategory = NAME_None;
InputPinType.PinSubCategoryObject = nullptr;
}
else
{
const FEdGraphPinType& ConnectedPinType = Pin->LinkedTo[0]->PinType;
if (ConnectedPinType.PinCategory == UEdGraphSchema_K2::PC_Interface)
{
Pin->PinFriendlyName = LOCTEXT("InterfaceInputName", "Interface");
InputPinType.PinCategory = UEdGraphSchema_K2::PC_Interface;
InputPinType.PinSubCategoryObject = ConnectedPinType.PinSubCategoryObject;
}
else if (ConnectedPinType.PinCategory == UEdGraphSchema_K2::PC_Object)
{
InputPinType.PinCategory = UEdGraphSchema_K2::PC_Object;
InputPinType.PinSubCategoryObject = UObject::StaticClass();
}
}
}
}
void UK2Node_DynamicCast::ReallocatePinsDuringReconstruction(TArray<UEdGraphPin*>& OldPins)
{
Super::ReallocatePinsDuringReconstruction(OldPins);
// Update exec pins if we converted from impure to pure
ReconnectPureExecPins(OldPins);
}
void UK2Node_DynamicCast::ValidateNodeDuringCompilation(FCompilerResultsLog& MessageLog) const
{
Super::ValidateNodeDuringCompilation(MessageLog);
UEdGraphPin* SourcePin = GetCastSourcePin();
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3125172) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3053250 on 2016/07/18 by Steve.Robb TNot metafunction added. Change 3053252 on 2016/07/18 by Steve.Robb New TIsEnumClass trait. Change 3061345 on 2016/07/22 by Robert.Manuszewski Changing FMallocStomp::GetAllocationSize() to return the requested allocation size instead of the physical allocation size to make FMallocStomp work properly with FMallocPoisonProxy Change 3061377 on 2016/07/22 by Graeme.Thornton Added bStripAnimationDataOnDedicatedServer option to UAnimationSettings which will remove all compressed data from cooked server data. Disabled by default Change 3064592 on 2016/07/26 by Steven.Hutton Uploading repository files Change 3064595 on 2016/07/26 by Steven.Hutton Assign crashes to buggs based not just on Callstack but also based on Error message. Error messages have "data" masked out and are then compared to a table of error messages to find similar messages. Ensures are not currently filtered by error message. Change 3066046 on 2016/07/27 by Graeme.Thornton Better dedicated client/server class exclusion during cooking - Add class lists to cooker settings so they can be modified in the editor Change 3066077 on 2016/07/27 by Graeme.Thornton Move Paragon NeedsLoadForServer calls over to the new config based system Change 3066203 on 2016/07/27 by Chris.Wood CrashReportProcess logging and Slack reporting improvements to monitor disk space. [UE-31129] - Crash Report server need to alert on Slack when the PDB cache is full Change 3066276 on 2016/07/27 by Graeme.Thornton Move simple NeedsLoadForClient implementations over to new config based system Change 3068019 on 2016/07/28 by Graeme.Thornton Don't call ReleaseResources on UStaticMesh if we never render, and therefore never actually initialize the resources - Corrects some bad stats Change 3068218 on 2016/07/28 by Chris.Wood CrashReportProcess 1.1.18 passes BuildVersion to MinidumpDiagnostics [UE-31706] - Add new BuildVersion string to crash context and website Also modified command line log file ini settings to stop MDD stalling trying to sort and delete its logs. Change 3071665 on 2016/08/01 by Robert.Manuszewski Moving RemoveNamesFromMasterList from UEnum destructor to BeginDestroy to avoid potential issues when its package has already been destroyed. Change 3073388 on 2016/08/02 by Graeme.Thornton Invalidate string asset reference tags after finishing up loading of an async package Change 3073745 on 2016/08/02 by Robert.Manuszewski Disabling logging to memory in shipping by default. From now on FOutputDeviceMemory will be an opt-in for games. #jira FORT-27839 Change 3074866 on 2016/08/03 by Robert.Manuszewski PR #2650: Fixed a bug where newline escape sequence wasnt written to the pipe (Contributed by ozturkhakki) Change 3075128 on 2016/08/03 by Steve.Robb Static analysis fixes: error C2065: 'ThisOuterWorld': undeclared identifier Change 3075130 on 2016/08/03 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'LODLevel' Change 3075131 on 2016/08/03 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Owner' Change 3075235 on 2016/08/03 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'AnimToOperateOn' Change 3075248 on 2016/08/03 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ParentProfile' Change 3075662 on 2016/08/03 by Steve.Robb Static analysis/buffer size fix: warning C28020: The expression '_Param_(7)>=sizeof(ICMP_ECHO_REPLY)+_Param_(4)+8' is not true at this call Change 3075668 on 2016/08/03 by Steve.Robb Static analysis fix: warning C6326: Potential comparison of a constant with another constant Change 3075679 on 2016/08/03 by Chris.Wood Added -NoTrimCallstack command line arg to MDD calls from CRP 1.1.19 [OR-26335] - 29.1 crash reporter generating reports with no callstacks / info New MDD has -NoTrimCallstack option to leave possibly irrelevant entires in the stack. Trimming is somewhat arbitrary and based on string matching. I'd rather see the whole thing. Change 3077070 on 2016/08/04 by Steve.Robb Dead array slack tracking code removed. Change 3077113 on 2016/08/04 by Steve.Robb TEnumAsByte is now deprecated for enum classes. All current uses fixed (which tidies up that code anyway). New FArchive::op<< for enum classes. Generated code now never uses TEnumAsByte for enum classes. Change 3077117 on 2016/08/04 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'DefaultSettings' Change 3078709 on 2016/08/05 by Steve.Robb FUNCTION_NO_NULL_RETURN_* macros added to statically annotate a function to say that it never returns a null pointer. TObjectIterator annotated to never return null. NewObject annotated to never return null. Change 3078836 on 2016/08/05 by Graeme.Thornton Silently skip creating exports from a package where the outer is also an export and has been filtered at runtime during loading Change 3082217 on 2016/08/09 by Steve.Robb Missing #include for FUniqueNetIdRepl added. Change 3083679 on 2016/08/10 by Chris.Wood CrashReportProcess performance improvements. CRP v1.1.22 [UE-34402] - Crash Reporter: Improve CRP performance by allowing multiple MDD instances [UE-34403] - Crash Reporter: CRP should throw away crashes when backlog is too large to avoid runaway Passing lock details to MDD on command line and managing multiple MDD tasks in CRP. Configurable values for range of queue sizes that cause us to throw away crashes. Change 3085362 on 2016/08/11 by Steve.Robb Rule-of-three fixes for FAIMessageObserver, to prevent accidents. From here: https://udn.unrealengine.com/questions/306507/tstaticarray-doesnt-call-destructor-on-elements-be.html Change 3085396 on 2016/08/11 by Steve.Robb Swap can now be configured via the TUseBitwiseSwap trait to not use Memswap, which can be less optimal for certain types. Change 3088840 on 2016/08/15 by Steve.Robb TRemoveReference moved to its own header. Change 3088858 on 2016/08/15 by Steve.Robb TDecay moved to its own header. Change 3088963 on 2016/08/15 by Steve.Robb Invoke function, for doing a generic call on a generic callable thing. Equivalent to std::invoke. Change 3089144 on 2016/08/15 by Steve.Robb Algo::Transform updated to use Invoke. Algorithm tests updated to test the new features. Change 3089147 on 2016/08/15 by Steve.Robb TLess and TGreater moved to their own headers and defaulted to void as a type-deducing version, as per std::. Change 3090243 on 2016/08/16 by Steve.Robb New Algo::Sort and Algo::SortBy algorithms. Change 3090387 on 2016/08/16 by Steve.Robb Improved bitwise swapping for Swap. See: https://udn.unrealengine.com/questions/306922/swap-is-painfully-slow.html Change 3090444 on 2016/08/16 by Steve.Robb Ptr+Size overloads removed after discussion - MakeArrayView should be used instead. Change 3090495 on 2016/08/16 by Steve.Robb Assert when FString::Mid is passed a negative count. #jira UE-18756 Change 3093455 on 2016/08/18 by Steve.Robb Debuggability and efficiency improvements to UScriptStruct::DeferCppStructOps. Change 3094476 on 2016/08/19 by Steve.Robb BOM removed from InvariantCulture.h. Change 3094697 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6237: (<zero> && <expression>) is always zero. <expression> is never evaluated and might have side effects. Change 3094702 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Interactor'. Change 3094715 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6385: Reading invalid data from 'Order': the readable size is '256' bytes, but '8160' bytes may be read. Change 3094737 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'OwnedComponent'. warning C28182: Dereferencing NULL pointer. 'Child' contains the same NULL value as 'AttachToComponent' did. Change 3094750 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Actor'. Change 3094768 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'LevelSequence'. warning C6011: Dereferencing NULL pointer 'Actor'. Change 3094774 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'CallFunctionNode'. Change 3094783 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'TargetPin'. Change 3094807 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SourceClass'. Change 3094815 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'VarNode'. warning C6011: Dereferencing NULL pointer 'SourceClass'. Change 3094840 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'TunnelGraph'. warning C28182: Dereferencing NULL pointer. 'GraphNode' contains the same NULL value as 'SourceNode' did. Change 3094864 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'. Change 3094880 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'PrevIfIndexMatchesStatement'. Change 3094886 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'SpawnBlueprintPin'. Change 3094903 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'K2Node'. Change 3094916 on 2016/08/19 by Steve.Robb Static analysis fix: Dereferencing NULL pointer 'CompilerContext'. Change 3094931 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'VariablePin'. Change 3094935 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurrentPin'. Change 3094943 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Pin'. warning C28182: Dereferencing NULL pointer. 'Graph' contains the same NULL value as 'TargetGraph' did. Change 3094960 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'LastOutPin'. Change 3095046 on 2016/08/19 by Steve.Robb Single parameter version of CastChecked tagged to never return null. Change 3095054 on 2016/08/19 by Steve.Robb Committed wrong version in CL# 3095046. Change 3095089 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6509: Invalid annotation: 'return' cannot be referenced in some contexts warning C6101: Returning uninitialized memory '*lpdwExitCode'. Change 3096035 on 2016/08/22 by Steve.Robb Fix for static lighting in pixel inspector. Change 3096039 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'World'. Change 3096045 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Actor'. Change 3096058 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OtherPin'. Change 3096059 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'MainMesh'. Change 3096066 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'SourceType'. Change 3096070 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'LastPushStatement'. Change 3096074 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OriginalDataTableInPin'. Change 3096075 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurrentPin'. Change 3096081 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'RunningPlatformData'. Change 3096156 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'BP'. warning C6011: Dereferencing NULL pointer 'Object'. Change 3096308 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'TopMipData'. warning C6011: Dereferencing NULL pointer 'MipCoverageData[0]'. Change 3096315 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'OldParent'. warning C6011: Dereferencing NULL pointer 'TestExecutionInfo'. Change 3096318 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OwnerClass'. Change 3096322 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'StaticMeshInstanceData'. Change 3096337 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Pin'. warning C6011: Dereferencing NULL pointer 'SpawnVarPin'. Change 3096345 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6246: Local declaration of 'NumTris' hides declaration of the same name in outer scope. Change 3096356 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'InWorld'. Change 3096387 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'ExpressionPreviewMaterial'. warning C6011: Dereferencing NULL pointer 'MaterialNode->MaterialExpression'. Change 3096400 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'FunctionInputs'. Change 3096413 on 2016/08/22 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'LODPackage' contains the same NULL value as 'AssetsOuter' did. Change 3096416 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6237: (<zero> && <expression>) is always zero. <expression> is never evaluated and might have side effects. Change 3096423 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'RedirectorRefs.Redirector'. Change 3096439 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'NewObject'. Change 3096446 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'BaseClass'. Change 3096454 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OldSkeleton'. Change 3096464 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'MyNode'. Change 3096469 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'VRInteractor'. Change 3097559 on 2016/08/23 by Steve.Robb Alternate fix to CL# 3096439. Change 3097583 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SourceCategoryEnum'. warning C6011: Dereferencing NULL pointer 'CurrentWorld'. Change 3097584 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'LocalizationTarget'. Change 3097585 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C28182: Dereferencing NULL pointer. 'VariableSetNode' contains the same NULL value as 'AssignmentNode' did. warning C6011: Dereferencing NULL pointer 'FirstNativeClass'. Change 3097588 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OutputObjClass'. Change 3097589 on 2016/08/23 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'Term' contains the same NULL value as 'RValueTerm' did. Change 3097591 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Schema'. Change 3097597 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'LayerInfo'. Change 3097598 on 2016/08/23 by Steve.Robb Const-correctness fix for ILandscapeEditorModule::GetHeightmapFormatByExtension and ILandscapeEditorModule::GetWeightmapFormatByExtension. Change 3097600 on 2016/08/23 by Steve.Robb Fix for incorrect null check. Change 3097605 on 2016/08/23 by Steve.Robb Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'TexDataPtr'. Bug filed here: https://connect.microsoft.com/VisualStudio/feedback/details/3078125 Change 3097609 on 2016/08/23 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'ObjClass' contains the same NULL value as 'BaseClass' did. Change 3097613 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'InEdGraph'. Change 3097620 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ThisScalableFloat'. Change 3097627 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'AnimBlueprint'. Change 3097629 on 2016/08/23 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'Pin' contains the same NULL value as 'PoseNet' did. Change 3097631 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'IPOverlayInfo.Brush'. Change 3097634 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Survey'. Change 3097639 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Settings'. Change 3097650 on 2016/08/23 by Steve.Robb Alternate fix for CL# 3097597. Change 3097725 on 2016/08/23 by Steve.Robb Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'BodySetup'. Change 3097764 on 2016/08/23 by Steve.Robb Spurious static analysis fix: warning C28182: Dereferencing NULL pointer. 'FoundMode' contains the same NULL value as 'ElementType * FoundMode=LoopModes.FindByPredicate(<lambda>)' did. Change 3097770 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Triangle'. Change 3097775 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurGroup'. Change 3097796 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'SourceComponent'. Change 3097797 on 2016/08/23 by Steve.Robb Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'HitComponent'. Change 3097843 on 2016/08/23 by Steve.Robb Spurious static analysis fix: Dereferencing NULL pointer. 'MatchingNewPin' contains the same NULL value as 'UEdGraphPin ** MatchingNewPin=this->Pins.FindByPredicate(<lambda>)' did. Change 3097864 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'ObjectClass'. warning C6011: Dereferencing NULL pointer 'Client'. Change 3097871 on 2016/08/23 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'SMLightingMesh->StaticMesh' contains the same NULL value as 'StaticMesh' did. Change 3098015 on 2016/08/23 by Steve.Robb Alternative fix for CL# 3094864. Change 3098024 on 2016/08/23 by Steve.Robb Alternative fix for CL# 3094943. Change 3098052 on 2016/08/23 by Steve.Robb Alternative fix for CL# 3094886. Change 3098080 on 2016/08/23 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'PrimitiveComponent' contains the same NULL value as 'ReplacementComponent' did. Change 3098102 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'IndexTermPtr'. Change 3098148 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Node'. warning C6011: Dereferencing NULL pointer 'OldNode'. warning C6011: Dereferencing NULL pointer 'LinkedPin'. warning C6011: Dereferencing NULL pointer 'RootNode'. Change 3098156 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'BTGraphNode'. Change 3098176 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'NewSection'. Change 3098182 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Sprite'. Change 3098197 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Node'. Coding standards fixes. Change 3098202 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ExistingEventNode'. Change 3098208 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C28182: Dereferencing NULL pointer. 'Graph' contains the same NULL value as 'GraphNew' did. warning C28182: Dereferencing NULL pointer. 'GoodGraph' contains the same NULL value as 'GraphNew' did. Change 3098229 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Property'. Change 3099188 on 2016/08/24 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SharedBaseClass'. Change 3099195 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'NodeProperty'. Change 3099205 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'VarDesc'. Change 3099228 on 2016/08/24 by Steve.Robb Spurious static analysis fix: warning C28182: Dereferencing NULL pointer. 'Node' contains the same NULL value as 'ParentNode' did. Change 3099539 on 2016/08/24 by Steve.Robb Spurious static analysis fixes: warning C6011: Dereferencing NULL pointer 'InBlueprint'. warning C28182: Dereferencing NULL pointer. 'TestObj' contains the same NULL value as 'TestOuter' did. https://connect.microsoft.com/VisualStudio/feedback/details/3082362 https://connect.microsoft.com/VisualStudio/feedback/details/3082622 Change 3099546 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OldNode'. Change 3099561 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ReferencedObject'. Change 3099571 on 2016/08/24 by Steve.Robb Static analysis fix: Dereferencing NULL pointer. 'ObjClass' contains the same NULL value as 'CommonBaseClass' did. Change 3099600 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6385: Reading invalid data from 'this->Packages': the readable size is '24' bytes, but '32' bytes may be read. warning C6385: Reading invalid data from 'Diff.ObjectSets': the readable size is '24' bytes, but '32' bytes may be read. warning C6386: Buffer overrun while writing to 'Objects': the writable size is '24' bytes, but '32' bytes might be written. Change 3099912 on 2016/08/24 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SharedBaseClass'. Change 3099923 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ThumbnailInfo'. Change 3100977 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C6001: Using uninitialized memory '*VectorRef'. warning C6001: Using uninitialized memory '*PointRef'. warning C6001: Using uninitialized memory '*PolyRef'. Coding standard fixes. Change 3100985 on 2016/08/25 by Steve.Robb Static analyis fix: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'. Change 3100987 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C28183: 'Resources.BitmapHandle' could be '0', and is a copy of the value found in 'CreateDIBSection()`829': this does not adhere to the specification for the function 'SelectObject'. warning C6387: '_Param_(4)' could be '0': this does not adhere to the specification for the function 'CreateDIBSection'. Change 3100992 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6287: Redundant code: the left and right sub-expressions are identical. Change 3101000 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C6001: Using uninitialized memory 'tmpMemReq'. warning C6001: Using uninitialized memory 'TmpCreateInfo'. Change 3101004 on 2016/08/25 by Steve.Robb warning C28182: Dereferencing NULL pointer. 'FoliageActor' contains the same NULL value as 'Actor' did. Change 3101009 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'StaticMeshComponent'. Change 3101115 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Canvas'. Change 3101120 on 2016/08/25 by Steve.Robb Fixes to previous fixes. Change 3101128 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Stream'. Change 3101281 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C6262: Function uses '99256' bytes of stack: exceeds /analyze:stacksize '81940'. Consider moving some data to heap. warning C6001: Using uninitialized memory 'Pixel'. Change 3101292 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'BulkDataPointer'. Change 3101299 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'UnrealMaterial'. Change 3101300 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'AssetObject'. Change 3101304 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'MeshRootNode'. Change 3101311 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Cluster'. Change 3101323 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'StartNode'. Change 3101329 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Object'. Change 3101333 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ArrayRef'. Change 3101339 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'ImportData'. warning C6011: Dereferencing NULL pointer 'CurveToImport'. Change 3101485 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ObjectProperty'. Change 3101583 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'UserDefinedStruct'. Change 3105721 on 2016/08/30 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'. Change 3105724 on 2016/08/30 by Steven.Hutton Change users page to more responsive paginated version. Change 3105725 on 2016/08/30 by Steven.Hutton Added field for crash processor failed Change 3105786 on 2016/08/30 by Steve.Robb Reintroduced missing operator<< for enum classes. Change 3105803 on 2016/08/30 by Steve.Robb Removal of obsolete code and state. PrepareCppStructOps() has several unreachable blocks, one of which sets UScriptStruct::bCppStructOpsFromBaseClass which is otherwise never true, so it can be removed too. Change 3106251 on 2016/08/30 by Steve.Robb Switch static analysis node to build editor instead of just the engine. Change 3107556 on 2016/08/31 by Steven.Hutton Added build version data from CRP to DB as part of add crash #rb none Change 3107557 on 2016/08/31 by Steven.Hutton Passed build version data to CRW through crash description #rb none Change 3107634 on 2016/08/31 by Graeme.Thornton Only accept "log=<filename>" and "abslog=<filename>" command line values if the filename has a "log" or "txt" extension #jira UE-20147 Change 3107797 on 2016/08/31 by Steve.Robb Fix for UHT debugging manifest, after paths changed in CL# 3088416. Change 3107964 on 2016/08/31 by Steve.Robb TCString::Strfind renamed to TCString::Strifind, as it is case-insensitive. New case-sensitive TCString::Strfind added, based on GitHub PR #2453. Change 3108023 on 2016/08/31 by Steve.Robb Removal of test code which no longer compiles now that we emit errors on skipped preprocessor blocks. Change 3108160 on 2016/08/31 by Steven.Hutton Update to add new filter to website front page #rb none Change 3109556 on 2016/09/01 by Steven.Hutton Fixing compile warning #rb none Change 3110001 on 2016/09/01 by Steve.Robb PR #2468: Fix for UnrealHeaderTool TArray<TScriptInterface<>> UFUNCTION parameters (Contributed by UnrealEverything) Change 3111835 on 2016/09/02 by Steve.Robb Enforce uint8 on UENUM() enum classes. #jira UE-35224 Change 3111867 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6236: (<expression> || <non-zero constant>) is always a non-zero constant. Change 3111880 on 2016/09/02 by Steve.Robb Static analysis fixes: warning C6386: Buffer overrun while writing to 'Views': the writable size is 'ShaderBindings.ResourceViews.public: int __cdecl TArray<class TSlateD3DTypedShaderParameter<struct ID3D11ShaderResourceView> *,class FDefaultAllocator>::Num(void)const ()*8' bytes, but '16' bytes might be written. warning C6386: Buffer overrun while writing to 'ConstantBuffers': the writable size is 'ShaderBindings.ConstantBuffers.public: int __cdecl TArray<class TSlateD3DTypedShaderParameter<struct ID3D11Buffer> *,class FDefaultAllocator>::Num(void)const ()*8' bytes, but '16' bytes might be written. Change 3111886 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6386: Buffer overrun while writing to 'DistortionMeshIndices': the writable size is 'NumIndices*2' bytes, but '4' bytes might be written. Change 3112025 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'pInputProcessParameters'. warning C6011: Dereferencing NULL pointer 'pOutputProcessParameters'. Change 3112051 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Command'. Change 3112066 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurNetDriver'. Change 3112093 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'byteArray'. Change 3112110 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'PersistentParty'. Change 3112123 on 2016/09/02 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'CurDriver'. warning C6011: Dereferencing NULL pointer 'CurNetDriver'. warning C6011: Dereferencing NULL pointer 'CurWorld'. Change 3112157 on 2016/09/02 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'UnitTest'. Change 3112283 on 2016/09/02 by Steve.Robb Static analysis fixes: warning C6244: Local declaration of 'None' hides previous declaration at line '173' of 'netcodeunittest.h'. Change 3113455 on 2016/09/05 by Chris.Wood CRP performance improvements (v1.1.25) Change 3113468 on 2016/09/05 by Steve.Robb Reverting unnecessary merge in CL# 3112464. Change 3113508 on 2016/09/05 by Steve.Robb Static analysis fix: warning C6031: Return value ignored: 'CoCreateGuid'. Change 3113588 on 2016/09/05 by Steve.Robb Static analysis fix: warning C6244: Local declaration of 'hInstance' hides previous declaration Change 3113863 on 2016/09/06 by Steve.Robb Fix for this error: Could not find a part of the path 'D:\Build\++UE4+Dev-Core+Compile\Sync\Engine\Plugins\2D\Paper2D\Binaries\Win64\UE4Editor.modules'. Change 3113864 on 2016/09/06 by Steve.Robb Misc static analysis fixes for VS2015 Update 2. Change 3113918 on 2016/09/06 by Ben.Marsh Explicitly check for version manifest existing before trying to delete it, rather than swallowing the exception. Change 3114293 on 2016/09/06 by Steve.Robb Static analysis fixes for Visual Studio Update 2. Change 3115732 on 2016/09/07 by Steve.Robb Static analysis fix: warning C6262: Function uses '121180' bytes of stack: exceeds /analyze:stacksize '81940'. Consider moving some data to heap. Change 3115754 on 2016/09/07 by Steve.Robb GObjectArrayForDebugVisualizers init order fix. Removal of obsolete FName visualizer helper code. Change 3115774 on 2016/09/07 by Steve.Robb Fix for ICE by moving static variables into their own file and removing const return types. #jira UE-35597 Change 3116061 on 2016/09/07 by Steve.Robb Redundant LOCTEXT_NAMESPACE removed - was missed in CL# 3115774. Change 3117478 on 2016/09/08 by Steve.Robb Static analysis fixes in third party code, using a new macro-based system. Change 3119152 on 2016/09/09 by Steve.Robb TArray::RemoveAt and RemoveAtSwap with a bool Count is now a compile error. Change 3119200 on 2016/09/09 by Steve.Robb Fix for destructors not being called in TSparseArray move assignment. Change 3119568 on 2016/09/09 by Steve.Robb Fix for TSparseArray visualizer. Change 3119591 on 2016/09/09 by Steve.Robb New MakeShared function which allocates the object and reference controller in a single block. Change 3120281 on 2016/09/09 by Steve.Robb Fix for ICE on static analysis build. #jira UE-35596 Change 3120786 on 2016/09/12 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'SavedGame'. Change 3120787 on 2016/09/12 by Steve.Robb Removal of TEnumAsByte on enum classes. Change 3120789 on 2016/09/12 by Steve.Robb Static analysis fixes: warning C6385: Reading invalid data from 'D3D11X_CERAM_OFFSET_BY_SET_STAGE': the readable size is '28' bytes, but '64' bytes may be read. warning C6101: Returning uninitialized memory '*pDescriptorDst'. A successful path through the function does not set the named _Out_ parameter. Change 3121234 on 2016/09/12 by Steve.Robb Unused ToBuildInfoString function declaration removed. Change 3122616 on 2016/09/13 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Compiler'. Change 3123070 on 2016/09/13 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'top' contains the same NULL value as 'edge' did. [CL 3126145 by Robert Manuszewski in Main branch]
2016-09-15 00:21:42 -04:00
if (SourcePin->LinkedTo.Num() > 0)
{
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3235800) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3194900 on 2016/11/11 by Ryan.Rauschkolb Fixed issue where Reroute node pins weren't mirroring data properly. #jira UE-33717 Change 3195081 on 2016/11/11 by Dan.Oconnor This @todo was addressed Change 3196368 on 2016/11/14 by Maciej.Mroz Results of FBlueprintNativeCodeGenModule::IsTargetedForReplacement are cashed - optimization (cooking time). Change 3196369 on 2016/11/14 by Maciej.Mroz CompileDisplaysBinaryBackend, CompileDisplaysTextBackend and bDisplaysLayout features (in [Kismet] in Engine.ini) are disabled in commandlets. They slow down BP compilation. Change 3196398 on 2016/11/14 by Ben.Cosh Reworked the tracking of latent and expansion event tracking in the blueprint compiler for use with the blueprint profiler. #Jira - UE-37364 - Crash: PIE with instrumented PlayerPawn_Generic added to AITestbed scene #Proj BlueprintProfiler, KismetCompiler. BlueprintGraph, Engine Change 3196410 on 2016/11/14 by Maciej.Mroz Fixed crash in UK2Node_Knot::PropagatePinTypeFromInput Change 3196852 on 2016/11/14 by Maciej.Mroz Fixed static analysis warning. Change 3196874 on 2016/11/14 by Maciej.Mroz #jira UE-37778 (the issue was already fixed, but it was reintroduced, when EDL support was added). ObjectImport->XObject is not filled prematurelly, so CreateExport is properly called each dynamic class. Change 3197469 on 2016/11/14 by Dan.Oconnor Fix for being able to make Sets and Maps of user defined structs that contained unhashable types (e.g. Rotator) Change 3197703 on 2016/11/14 by Dan.Oconnor Updated documentation comment to reflect current behavior Change 3198167 on 2016/11/15 by Maciej.Mroz Merged 3196582 from Dev-Core UE4 - Changed a check to a warning related to detaching linekrs twice. Seen in nativized BP version of platformer game. Change 3198433 on 2016/11/15 by Ryan.Rauschkolb Fixed Copy/pasting variable nodes hides them from a reference search #UE-31606 Change 3198811 on 2016/11/15 by Maciej.Mroz Fixed Knot node - it will use/propagate the type from input connection, if it's possible (intstead of the type from output connection). Change 3198866 on 2016/11/15 by Maciej.Mroz #jira UE-38578 Fixed infinite loading of DynamicClass in EDL. Change 3199045 on 2016/11/15 by Phillip.Kavan [UE-27402] Fix attached Actor-based Blueprint instance root component relative transform values after reconstruction. change summary: - modified FActorComponentInstanceData's ctor to exclude relative transform properties when caching root component values. #jira UE-27402 Change 3200703 on 2016/11/16 by Mike.Beach Marking the ease node explicitly as pure, which makes it so we can prune it from graphs when it is unused. #jira UE-38453 Change 3201115 on 2016/11/16 by Maciej.Mroz Nativization + EDL: "Dynamic" objects are processed by FAsyncPackage::PostLoadDeferredObjects, so the EInternalObjectFlags::AsyncLoading flag is properly cleared. Change 3201749 on 2016/11/17 by Maciej.Mroz In EDL a package containig a dynamic class has PKG_CompiledIn flag (the same like without EDL). Change 3202577 on 2016/11/17 by Mike.Beach Accounting for a change in our intermediate node mapping - the old list no longer maps expanded nodes to macro instances (instead it maps to the corresponding node in the macro graph), so we had to use a new mapping meant for this. #jira UE-35609 Change 3204803 on 2016/11/18 by Phillip.Kavan [UE-38607] Implicitly turn on Blueprint class nativization for dependencies. change summary: - added a UBlueprint::PostEditChangeProperty() override method to handle this. #jira UE-38607 Change 3204812 on 2016/11/18 by Phillip.Kavan [UE-38580] Implicitly turn on the "nativize" project setting when enabling nativize for any Blueprint class. change summary: - modified UBlueprint::PostEditChangeProperty() to update project packaging settings if necessary #jira UE-38580 Change 3204818 on 2016/11/18 by Phillip.Kavan [UE-38725] Interface class dependencies that are not enabled for nativization will now raise an error during nativized cooks. change summary: - modified FBlueprintNativeCodeGenModule::IsTargetedForReplacement() to check interface class dependencies in addition to parent class dependencies. #jira UE-38725 Change 3204963 on 2016/11/18 by Dan.Oconnor Create a transaction when using UBlueprintFunctionNodeSpawner* directly #jira UE-36439 Change 3206510 on 2016/11/21 by Mike.Beach Adding math-expression aliases for dot and cross functions ("dot" and "cross" respectively). #jira UEBP-71 Change 3206547 on 2016/11/21 by Mike.Beach Exposing GetReflectionVector() to Blueprints. #jira UEBP-70 Change 3206658 on 2016/11/21 by Dan.Oconnor Fix for compile error, digging out authorative class from trash class. Mirror of 3206638 from Odin #jira None Change 3207579 on 2016/11/22 by Mike.Beach No longer enforcing the requirement that game UFunctions have to have a category (making writing of game code easier). #jira UE-18093 Change 3207956 on 2016/11/22 by Phillip.Kavan [UE-38690] Fix a regression in which nested scene component subobjects would no longer be registered after construction of an instance-added component in IWCE. change summary: - modified the IWCE path in SSCSEditor::AddNewComponent() to ensure that any components added as a result of instancing the newly-added component are also registered. - modified AActor::ExecuteConstruction() to ensure that non-scene, native nested component subobjects that might be created as a result of SCS execution are also registered (previously it was only considering non-scene components that were explicitly created by the SCS, or that inherited the creation method of the instance that created it). #jira UE-38690 Change 3208217 on 2016/11/22 by Mike.Beach Modified fix (originally from Ryan.Rauschkolb, CL 3186023): Fixed unable to set struct variable name if name includes space #jira UE-28435 Change 3208347 on 2016/11/22 by Mike.Beach Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints) Change 3208688 on 2016/11/23 by Ben.Cosh Made a minor change that forces debugging references to the PIE world when the play in editor world is changed. This is intended to better handle mutliple game instance/world debugging scenarios. #Jira UE-26386 - Can't hit breakpoints in blueprints for level script for server instances #Proj Engine, UnrealEd Change 3208712 on 2016/11/23 by Ben.Cosh Improved handling of unwired transform struct terminal expression's in the blueprint VM compiler to remove an errant warning. #Jira UE-32401 - "ImportText: Missing opening parenthesis" message, when a function returns Transform #Proj KismetCompiler Change 3209457 on 2016/11/23 by Phillip.Kavan [UE-30479] Fix inability to edit the ISMC instance array on Actor instances when the ISMC is inherited from a Blueprint class. change summary: - added PPF_ForceTaggedSerialization as a means to override the CPF_SkipSerialization flag when explicit serialization of the property value is needed - modified UProperty::ShouldSerializeValue() to check for and handle the PPF_ForceTaggedSerialization flag when the CPF_SkipSerialization flag is present - modified UActorComponent::DetermineUCSModifiedProperties() to add the PPF_ForceTaggedSerialization flag to the custom FArchive impl - modified FActorComponentInstanceData::FActorComponentInstanceData() to add the PPF_ForceTaggedSerialization flag to the custom FObjectWriter impl - modified FActorComponentInstanceData::ApplyToComponent() to add the PPF_ForceTaggedSerialization flag to the custom FObjectReader impl #jira UE-30479 Change 3209758 on 2016/11/24 by Maciej.Mroz #jira UE-38979 Nativization: fixed error when a BP implements a native interface. FBlueprintNativeCodeGenModule::IsTargetedForReplacement will return "DontReplace" for native class. Change 3210376 on 2016/11/25 by Maciej.Mroz #jira UE-39028 Fixed FBlueprintNativeCodeGenModule::FindReplacedNameAndOuter Components in nativized BPCG SCS have replaced outer object and name while cooking. Change 3210936 on 2016/11/28 by Phillip.Kavan Minor revision to try and avoid a potentially expensive Contains() call when possible. Change 3211527 on 2016/11/28 by Maciej.Mroz Fixed map of names cooked in packages in nativized build. Change 3211969 on 2016/11/28 by Mike.Beach Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints) Change 3212328 on 2016/11/28 by Dan.Oconnor Enum, pointer and arithmetic specializations for THasGetTypeHash, as VC doesn't detect them properly. TIsEnum moved to its own header. Submitted on behalf of steve.robb Change 3212398 on 2016/11/28 by Dan.Oconnor Build fix, this function is part of another change Change 3212442 on 2016/11/28 by Dan.Oconnor UHT now supports structs in TMap and TSet, misc. fixes to PropertyStruct's PropertyFlags detecting whether the struct type is hashable (all HasGetTypeHash flags are now computed from THasGetTypeHash). Various fixes for generating TMap/TSet code from blueprints Change 3212578 on 2016/11/28 by Dan.Oconnor Rename RegisterClass to avoid collsion with RegistClass macro in generated code Change 3213668 on 2016/11/29 by Dan.Oconnor Fix for missing CDO when instatiating some subobjects in nativized BPs #jira UE-34980 Change 3213737 on 2016/11/29 by Dan.Oconnor Added GetTypeHash implementation to UEnumProperty #jira UE-39091 Change 3215225 on 2016/11/30 by Maciej.Mroz Bunch of changes required for nativized Orion to work with EDL. - ClientOnly, ServerOnly and EditorOnly assets are properly distinguished and handled - Introduced FCompilerNativizationOptions - fixed inproper references to BP instead of BPGC - fixed generated delegate name - hack for DefaultRootNode UE-39168 - improved NativeCodeGenrationTool - various minor improvements Change 3216363 on 2016/11/30 by Dan.Oconnor Better fix for discrepency between UUserDefinedEnum::GetEnumText and UEnum::GetEnumText. Without meta data we could not look up display names, so I'm writing out the display names into a function in the BP cpp backend. This function could be generated by UHT if we wanted to correct this odd behavior for native enums #jira UE-27735 Change 3217168 on 2016/12/01 by Maciej.Mroz #jira UE-35390 Nativization: Fixed compilation warning C4458: declaration of 'CurrentState' hides class member Disabled warning C4996 (deprecated) in nativized code. Change 3217320 on 2016/12/01 by Phillip.Kavan [UE-38652] Selecting Blueprint assets for nativization is now integrated into the project's configuration. change summary: - added EProjectPackagingBlueprintNativizationMethod - deprecated the 'bNativizeBlueprintAssets' and 'bNativizeOnlySelectedBlueprints' flags in favor of a new 'BlueprintNativizationMethod' config property in UProjectPackagingSettings - added a new 'NativizeBlueprintAssets' config property to UProjectPackagingSettings to track/store the list of Blueprints to be nativized when the exclusive method (whitelist) is selected - added a PostInitProperties() override to UProjectPackagingSettings; implemented to migrate from the deprecated config properties to the new method enum type - updated FMainFrameActionCallbacks::PackageProject() to migrate to checking the enum type - updated FBlueprintNativeCodeGenModule::IsTargetedForReplacement() to migrate to checking the enum type - modified UProjectPackagingSettings::CanEditChange() to enable editing of the nativization whitelist only when the "exclusive" method is active - modified UProjectPackagingSettings::PostEditChangeProperty() to add a new case for handling changes to the whitelist; changes are propagated to any Blueprint assets that are loaded - added new Add/RemoveBlueprintAssetFromNativizationList() APIs to UProjectPackagingSettings for assisting with adding/removing Blueprint assets to/from the exclusive list (whitelist) - deprecated the 'bNativize' flag in UBlueprint in favor of a new transient 'bSelectedForNativization' flag that is no longer serialized; this now caches whether or not the asset is present in the whitelist in the project config - modified UBlueprint::Serialize() to both migrate from the deprecated flag to the project config/transient flag on load, as well as to propagate the value of the transient flag back to the project config on save. this means that if the user changes the value of the transient flag through the Details view, that change won't be reflected back to the project config until the Blueprint is actually saved (saving the value to the config rather than serializing to the asset) - modified UBlueprint::PostEditChangeProperty() to remove code that was previously updating the project configuration at edit time. this functionality has been relocated to Serialize() (save time) instead. notes: - also completes UE-38636 (task: consolidate config options into a single drop-down) #jira UE-38652 Change 3218124 on 2016/12/01 by Dan.Oconnor CPF_HasGetValueTypeHash flag was not set on native UEnumProperties #jira UE-39181 Change 3218168 on 2016/12/01 by Phillip.Kavan Fix local var name that shadows a function param (CIS fix). Change 3219117 on 2016/12/02 by Maciej.Mroz #jira UE-39241 "warning C4458: declaration of XXX hides class member" In Nativized Code Nativization: Fixed compilation warning C4458: when local function variable hides a class variable. Names of local variables in funvtions have prefix "bpfv__". Change 3219201 on 2016/12/02 by Mike.Beach Keeping the "Select All Input Nodes" option from infinitely recurssing by blocking on nodes it has already selected. #jira UE-38988 Change 3219247 on 2016/12/02 by Mike.Beach Fixing CIS shadow variable warning from my last check in (CL 3219201). Change 3219332 on 2016/12/02 by Maciej.Mroz #jira HeaderParser: "private:" specifier is lost in FGameplayTag::TagName Workaround for UE-38231 Change 3219381 on 2016/12/02 by Mike.Beach Accounting for cyclic compile issues in cast-node's validate function, making it check the authoratative class instead of the current type. Also down grading some of the warnings to notes (suggesting the users don't need the cast). #jira UE-39272 Change 3220224 on 2016/12/02 by Dan.Oconnor Reduce font size for compact nodes Change 3220476 on 2016/12/03 by Maciej.Mroz #jira UE-35390 Better fix for UE-35390 Disabled deprecation warnings in nativized code. Change 3221637 on 2016/12/05 by Maciej.Mroz #jira UEBP-245 Nativization: Forced ImportCreation while InitialLoad for DynamicClasses. Change 3222306 on 2016/12/05 by Dan.Oconnor Support for default values of TMap and TSet local variables #jira UE-39239 Change 3222383 on 2016/12/05 by Dan.Oconnor Fixed bug in Blueprint TMap function for getting values out of a TMap Change 3222427 on 2016/12/05 by Mike.Beach Preventing ChildActorTemplate fixups from occuring on component load, when they may instead be a placeholder object (a byproduct of deferred Blueprint loading - a guard against cyclic load problems). #jira UE-39323 Change 3222679 on 2016/12/05 by Dan.Oconnor Remove unused code. Had no sideeffects, other than potential for leak when struct with non-trivial dtor was allocated here. Change 3222719 on 2016/12/05 by Dan.Oconnor Earlier detection of invalid native map/set properties. These generate a compile error if any TMap/TSet functions are used, but will slip by undetected if not used. Working on static assert to catch them. #jira UE-39338 Change 3224375 on 2016/12/06 by Dan.Oconnor Add tags for testing of array diffing Change 3224507 on 2016/12/07 by Phillip.Kavan [UE-39055] Fix a crash caused by an object name collision that could occur when loading some older Blueprint assets. change summary: - added UInheritableComponentHandler::FixComponentTemplateName() - modified UInheritableComponentHandler::PostLoad() to check for and correct stale records that cause a collision with the corrected name - added a UInheritableComponentHandler::Serialize() override to ensure that UsingCustomVersion() is called for the asset containing the ICH (already happening in UBlueprint::Serialize(), but added for consistency with other usage) - modified USimpleConstructionScript::Serialize() to ensure that UsingCustomVersion() is called for the asset containing the SCS (same reason as above) #jira UE-39055 Change 3225572 on 2016/12/07 by Samuel.Proctor Test assets for TSet/TMap testing. Includes new native class for testing containers. #rb none Change 3225577 on 2016/12/07 by Samuel.Proctor New test map for Array, TSet and Tmap testing. Change 3226281 on 2016/12/07 by Dan.Oconnor Container test asset, needs to be in p4 for diff tool tests. Change 3226345 on 2016/12/07 by Dan.Oconnor Another revision of test data Change 3228496 on 2016/12/09 by Ben.Cosh This change adds extra information to component template arrays so that the component class can be determined in builds that strip out objects of certain class types such as the editor dedicated server build. #Jira UE-38842 - "LogBlueprint:Error: [Compiler BP_Skybox_World_RandomTrees_01] Error Can't connect pins ReturnValue and Target" after entering a lobby in a synced server #Proj KismetCompiler, BlueprintGraph, UnrealEd, Core, Engine, Kismet, BlueprintCompilerCppBackend Change 3230120 on 2016/12/09 by Dan.Oconnor Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints) Change 3230700 on 2016/12/12 by Samuel.Proctor Removing some array test properties from container test class that were not needed. Also updated struct element to better reflect testing purpose. #rb none Change 3230926 on 2016/12/12 by Samuel.Proctor Missed a file on previous container test native QA asset checkin. #rb none Change 3231246 on 2016/12/12 by Dan.Oconnor PR #3003: New Feature: In-editor diff of arrays and structs now highlights diff. (Contributed by CA-ADuran). I've added TSet and TMap support as well. Change 3231311 on 2016/12/12 by Dan.Oconnor Handle class load failure #jira UE-39480 Change 3231387 on 2016/12/12 by Dan.Oconnor Shadow variable fixes Change 3231501 on 2016/12/12 by Dan.Oconnor More shadow fixes Change 3231584 on 2016/12/12 by Maciej.Mroz #jira UE-39636 Replaced obsolate macro usage. #fyi Dan.Oconnor Change 3231685 on 2016/12/12 by Mike.Beach PR #3032: Fixed category for IsValidIndex (Contributed by elFarto) #jira UE-39660 Change 3231689 on 2016/12/12 by Maciej.Mroz Nativization: Fixed Dependency list generation. Change 3231765 on 2016/12/12 by Phillip.Kavan [UE-38903] Auto-enable exclusive Blueprint nativization only after explicitly selecting the first asset. change summary: - fixed up the auto-enable logic on save in UBlueprint::Serialize() #jira UE-38903 #fyi Maciej.Mroz Change 3231837 on 2016/12/12 by Dan.Oconnor Restore hack to keep objects referenced by bytecode alive while in editor #jira UE-38486 Change 3232085 on 2016/12/13 by Phillip.Kavan Compile fix. Change 3232435 on 2016/12/13 by Ben.Cosh Fix for a bug introduced in CL 3228496 that caused component templates to fail to be identified by name and resulted in blueprint compilation issues for add component nodes. #Jira UE-39623 - Unknown template referenced by Add Component Node #Proj BlueprintGraph, Engine Change 3232437 on 2016/12/13 by Maciej.Mroz #jira UE-33021 Remove an obsolete warning. Change 3232564 on 2016/12/13 by Ben.Cosh This adds extra component template renaming propagation and checking for the blueprint generated class and blueprint skeleton class. #Jira UE-39623 - Unknown template referenced by Add Component Node #Proj BlueprintGraph - Implementing a bit of review feedback and some safety checking. Change 3232598 on 2016/12/13 by Maciej.Mroz Nativization: stati functions cannot be const, so no workaound (_Inner function) specyfic to const functions is necessary #jira UE-39518 Change 3232601 on 2016/12/13 by Phillip.Kavan [UE-38975] Warn on BuildCookRun or a standalone cook when the -nativizeAssets flag is omitted from the command line for a nativization-enabled project. change summary: - added 'bWarnIfPackagedWithoutNativizationFlag' to UProjectPackagingSettings (default = true) - modified UCookOnTheFlyServer::StartCookByTheBook() to check for the presence of the -nativizeAssets flag and emit a warning for unexpected omission from the command line - modified UAT to include a warning for the BuildCookRun command when -build is specified with the same unexpected omission of the -nativizeAssets flag on the UAT command line #jira UE-38975 Change 3232749 on 2016/12/13 by Mike.Beach Moving Blueprint nativization out of the experimental category. #jira UE-39358 Change 3233043 on 2016/12/13 by Dan.Oconnor Various fixes for TSet/TMap nativization issues #jira UE-39634 Change 3233086 on 2016/12/13 by Dan.Oconnor Advanced Containers (TSet/TMap) no longer experimental Change 3233175 on 2016/12/13 by Mike.Beach Whitelising "Packaging" as an acceptable BP settings category (follow up to CL 3232749). #jira UE-39358 Change 3233182 on 2016/12/13 by Mike.Beach Exposing the editor setting "Show Action Menu Item Signatures" through the Blueprint Developer menu (for ease of access). Change 3233662 on 2016/12/13 by Phillip.Kavan [UE-39722] Fix a typo that led to a UAT runtime failure. #jira UE-39722 Change 3233710 on 2016/12/13 by Dan.Oconnor Clang template useage fix #jira UE-39742 Change 3233895 on 2016/12/13 by Dan.Oconnor Several fixes to crashes that occur when you delete a blueprint asset when its children are not loaded. #jira UE-39558 Change 3234443 on 2016/12/14 by Phillip.Kavan [UE-39354] Fix script VM crash on assignment to TSet/TMap variables. change summary: - modified FScriptBuilderBase::EmitDestinationExpression() to consider TSet/TMap value types in addition to TArray terms #jira UE-39354 Change 3234581 on 2016/12/14 by Mike.Beach Backing out fix for UE-38842 (CL 3228496/3232435/3232564) - mapping UBlueprintGeneratedClass's ComponentTemplates array to a new format was causing issues with deferred dependency loading during serialization (trying to extract type information from a placeholder object). We're opting for a smaller/simpler solution to UE-38842, which will be to store the component information on the node itself (not with the templates). #jira UE-39707 Change 3234729 on 2016/12/14 by Mike.Beach Making it so AddComponent nodes now track the component (class) type that they represent (in case the template cannot be spawned, like in -server w/ client-only components). #jira UE-38842 Change 3234805 on 2016/12/14 by Mike.Beach Fixing CIS shadowed variable warning. Change 3234830 on 2016/12/14 by Nick.Atamas Added extra debugging mechanisms to help track down duplicate item issues with TableViews. Change 3235075 on 2016/12/14 by Mike.Beach Creating a helper to better manage nested scope blocks added in generated code - on close, clears out cached local accessor variables that were added, so we don't use one that was declared inside the nested scope. #jira UE-39769 Change 3235213 on 2016/12/14 by Phillip.Kavan [UE-39790] Fix UAT compile issue after latest merge from Main. change summary: - migrated the BuildCookRun command's usage of the (deprecated) ConfigCacheIni to the new ConfigHierarchy API #jira UE-39790 Change 3235384 on 2016/12/14 by Mike.Beach Defaulting to excluding data-only Blueprints from nativization. Change 3235675 on 2016/12/14 by Nick.Atamas Hopefully fixed build. Added OnEnteredBadState delegate that lets users add arbitrary logging info when the List/Tree enters a bad state. Change 3235761 on 2016/12/14 by Mike.Beach Hopefully resolving CIS mac/ps4 build failures in Dev-BP for 4.15 integration. #jira UE-39800 Change 3235800 on 2016/12/14 by Mike.Beach More hopeful CIS mac/ps4 fixes for 4.15 integration. #jira UE-39800 [CL 3236017 by Mike Beach in Main branch]
2016-12-14 22:10:20 -05:00
UClass* SourceType = *TargetType;
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3125172) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3053250 on 2016/07/18 by Steve.Robb TNot metafunction added. Change 3053252 on 2016/07/18 by Steve.Robb New TIsEnumClass trait. Change 3061345 on 2016/07/22 by Robert.Manuszewski Changing FMallocStomp::GetAllocationSize() to return the requested allocation size instead of the physical allocation size to make FMallocStomp work properly with FMallocPoisonProxy Change 3061377 on 2016/07/22 by Graeme.Thornton Added bStripAnimationDataOnDedicatedServer option to UAnimationSettings which will remove all compressed data from cooked server data. Disabled by default Change 3064592 on 2016/07/26 by Steven.Hutton Uploading repository files Change 3064595 on 2016/07/26 by Steven.Hutton Assign crashes to buggs based not just on Callstack but also based on Error message. Error messages have "data" masked out and are then compared to a table of error messages to find similar messages. Ensures are not currently filtered by error message. Change 3066046 on 2016/07/27 by Graeme.Thornton Better dedicated client/server class exclusion during cooking - Add class lists to cooker settings so they can be modified in the editor Change 3066077 on 2016/07/27 by Graeme.Thornton Move Paragon NeedsLoadForServer calls over to the new config based system Change 3066203 on 2016/07/27 by Chris.Wood CrashReportProcess logging and Slack reporting improvements to monitor disk space. [UE-31129] - Crash Report server need to alert on Slack when the PDB cache is full Change 3066276 on 2016/07/27 by Graeme.Thornton Move simple NeedsLoadForClient implementations over to new config based system Change 3068019 on 2016/07/28 by Graeme.Thornton Don't call ReleaseResources on UStaticMesh if we never render, and therefore never actually initialize the resources - Corrects some bad stats Change 3068218 on 2016/07/28 by Chris.Wood CrashReportProcess 1.1.18 passes BuildVersion to MinidumpDiagnostics [UE-31706] - Add new BuildVersion string to crash context and website Also modified command line log file ini settings to stop MDD stalling trying to sort and delete its logs. Change 3071665 on 2016/08/01 by Robert.Manuszewski Moving RemoveNamesFromMasterList from UEnum destructor to BeginDestroy to avoid potential issues when its package has already been destroyed. Change 3073388 on 2016/08/02 by Graeme.Thornton Invalidate string asset reference tags after finishing up loading of an async package Change 3073745 on 2016/08/02 by Robert.Manuszewski Disabling logging to memory in shipping by default. From now on FOutputDeviceMemory will be an opt-in for games. #jira FORT-27839 Change 3074866 on 2016/08/03 by Robert.Manuszewski PR #2650: Fixed a bug where newline escape sequence wasnt written to the pipe (Contributed by ozturkhakki) Change 3075128 on 2016/08/03 by Steve.Robb Static analysis fixes: error C2065: 'ThisOuterWorld': undeclared identifier Change 3075130 on 2016/08/03 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'LODLevel' Change 3075131 on 2016/08/03 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Owner' Change 3075235 on 2016/08/03 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'AnimToOperateOn' Change 3075248 on 2016/08/03 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ParentProfile' Change 3075662 on 2016/08/03 by Steve.Robb Static analysis/buffer size fix: warning C28020: The expression '_Param_(7)>=sizeof(ICMP_ECHO_REPLY)+_Param_(4)+8' is not true at this call Change 3075668 on 2016/08/03 by Steve.Robb Static analysis fix: warning C6326: Potential comparison of a constant with another constant Change 3075679 on 2016/08/03 by Chris.Wood Added -NoTrimCallstack command line arg to MDD calls from CRP 1.1.19 [OR-26335] - 29.1 crash reporter generating reports with no callstacks / info New MDD has -NoTrimCallstack option to leave possibly irrelevant entires in the stack. Trimming is somewhat arbitrary and based on string matching. I'd rather see the whole thing. Change 3077070 on 2016/08/04 by Steve.Robb Dead array slack tracking code removed. Change 3077113 on 2016/08/04 by Steve.Robb TEnumAsByte is now deprecated for enum classes. All current uses fixed (which tidies up that code anyway). New FArchive::op<< for enum classes. Generated code now never uses TEnumAsByte for enum classes. Change 3077117 on 2016/08/04 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'DefaultSettings' Change 3078709 on 2016/08/05 by Steve.Robb FUNCTION_NO_NULL_RETURN_* macros added to statically annotate a function to say that it never returns a null pointer. TObjectIterator annotated to never return null. NewObject annotated to never return null. Change 3078836 on 2016/08/05 by Graeme.Thornton Silently skip creating exports from a package where the outer is also an export and has been filtered at runtime during loading Change 3082217 on 2016/08/09 by Steve.Robb Missing #include for FUniqueNetIdRepl added. Change 3083679 on 2016/08/10 by Chris.Wood CrashReportProcess performance improvements. CRP v1.1.22 [UE-34402] - Crash Reporter: Improve CRP performance by allowing multiple MDD instances [UE-34403] - Crash Reporter: CRP should throw away crashes when backlog is too large to avoid runaway Passing lock details to MDD on command line and managing multiple MDD tasks in CRP. Configurable values for range of queue sizes that cause us to throw away crashes. Change 3085362 on 2016/08/11 by Steve.Robb Rule-of-three fixes for FAIMessageObserver, to prevent accidents. From here: https://udn.unrealengine.com/questions/306507/tstaticarray-doesnt-call-destructor-on-elements-be.html Change 3085396 on 2016/08/11 by Steve.Robb Swap can now be configured via the TUseBitwiseSwap trait to not use Memswap, which can be less optimal for certain types. Change 3088840 on 2016/08/15 by Steve.Robb TRemoveReference moved to its own header. Change 3088858 on 2016/08/15 by Steve.Robb TDecay moved to its own header. Change 3088963 on 2016/08/15 by Steve.Robb Invoke function, for doing a generic call on a generic callable thing. Equivalent to std::invoke. Change 3089144 on 2016/08/15 by Steve.Robb Algo::Transform updated to use Invoke. Algorithm tests updated to test the new features. Change 3089147 on 2016/08/15 by Steve.Robb TLess and TGreater moved to their own headers and defaulted to void as a type-deducing version, as per std::. Change 3090243 on 2016/08/16 by Steve.Robb New Algo::Sort and Algo::SortBy algorithms. Change 3090387 on 2016/08/16 by Steve.Robb Improved bitwise swapping for Swap. See: https://udn.unrealengine.com/questions/306922/swap-is-painfully-slow.html Change 3090444 on 2016/08/16 by Steve.Robb Ptr+Size overloads removed after discussion - MakeArrayView should be used instead. Change 3090495 on 2016/08/16 by Steve.Robb Assert when FString::Mid is passed a negative count. #jira UE-18756 Change 3093455 on 2016/08/18 by Steve.Robb Debuggability and efficiency improvements to UScriptStruct::DeferCppStructOps. Change 3094476 on 2016/08/19 by Steve.Robb BOM removed from InvariantCulture.h. Change 3094697 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6237: (<zero> && <expression>) is always zero. <expression> is never evaluated and might have side effects. Change 3094702 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Interactor'. Change 3094715 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6385: Reading invalid data from 'Order': the readable size is '256' bytes, but '8160' bytes may be read. Change 3094737 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'OwnedComponent'. warning C28182: Dereferencing NULL pointer. 'Child' contains the same NULL value as 'AttachToComponent' did. Change 3094750 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Actor'. Change 3094768 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'LevelSequence'. warning C6011: Dereferencing NULL pointer 'Actor'. Change 3094774 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'CallFunctionNode'. Change 3094783 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'TargetPin'. Change 3094807 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SourceClass'. Change 3094815 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'VarNode'. warning C6011: Dereferencing NULL pointer 'SourceClass'. Change 3094840 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'TunnelGraph'. warning C28182: Dereferencing NULL pointer. 'GraphNode' contains the same NULL value as 'SourceNode' did. Change 3094864 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'. Change 3094880 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'PrevIfIndexMatchesStatement'. Change 3094886 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'SpawnBlueprintPin'. Change 3094903 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'K2Node'. Change 3094916 on 2016/08/19 by Steve.Robb Static analysis fix: Dereferencing NULL pointer 'CompilerContext'. Change 3094931 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'VariablePin'. Change 3094935 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurrentPin'. Change 3094943 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Pin'. warning C28182: Dereferencing NULL pointer. 'Graph' contains the same NULL value as 'TargetGraph' did. Change 3094960 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'LastOutPin'. Change 3095046 on 2016/08/19 by Steve.Robb Single parameter version of CastChecked tagged to never return null. Change 3095054 on 2016/08/19 by Steve.Robb Committed wrong version in CL# 3095046. Change 3095089 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6509: Invalid annotation: 'return' cannot be referenced in some contexts warning C6101: Returning uninitialized memory '*lpdwExitCode'. Change 3096035 on 2016/08/22 by Steve.Robb Fix for static lighting in pixel inspector. Change 3096039 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'World'. Change 3096045 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Actor'. Change 3096058 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OtherPin'. Change 3096059 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'MainMesh'. Change 3096066 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'SourceType'. Change 3096070 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'LastPushStatement'. Change 3096074 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OriginalDataTableInPin'. Change 3096075 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurrentPin'. Change 3096081 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'RunningPlatformData'. Change 3096156 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'BP'. warning C6011: Dereferencing NULL pointer 'Object'. Change 3096308 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'TopMipData'. warning C6011: Dereferencing NULL pointer 'MipCoverageData[0]'. Change 3096315 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'OldParent'. warning C6011: Dereferencing NULL pointer 'TestExecutionInfo'. Change 3096318 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OwnerClass'. Change 3096322 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'StaticMeshInstanceData'. Change 3096337 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Pin'. warning C6011: Dereferencing NULL pointer 'SpawnVarPin'. Change 3096345 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6246: Local declaration of 'NumTris' hides declaration of the same name in outer scope. Change 3096356 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'InWorld'. Change 3096387 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'ExpressionPreviewMaterial'. warning C6011: Dereferencing NULL pointer 'MaterialNode->MaterialExpression'. Change 3096400 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'FunctionInputs'. Change 3096413 on 2016/08/22 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'LODPackage' contains the same NULL value as 'AssetsOuter' did. Change 3096416 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6237: (<zero> && <expression>) is always zero. <expression> is never evaluated and might have side effects. Change 3096423 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'RedirectorRefs.Redirector'. Change 3096439 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'NewObject'. Change 3096446 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'BaseClass'. Change 3096454 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OldSkeleton'. Change 3096464 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'MyNode'. Change 3096469 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'VRInteractor'. Change 3097559 on 2016/08/23 by Steve.Robb Alternate fix to CL# 3096439. Change 3097583 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SourceCategoryEnum'. warning C6011: Dereferencing NULL pointer 'CurrentWorld'. Change 3097584 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'LocalizationTarget'. Change 3097585 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C28182: Dereferencing NULL pointer. 'VariableSetNode' contains the same NULL value as 'AssignmentNode' did. warning C6011: Dereferencing NULL pointer 'FirstNativeClass'. Change 3097588 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OutputObjClass'. Change 3097589 on 2016/08/23 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'Term' contains the same NULL value as 'RValueTerm' did. Change 3097591 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Schema'. Change 3097597 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'LayerInfo'. Change 3097598 on 2016/08/23 by Steve.Robb Const-correctness fix for ILandscapeEditorModule::GetHeightmapFormatByExtension and ILandscapeEditorModule::GetWeightmapFormatByExtension. Change 3097600 on 2016/08/23 by Steve.Robb Fix for incorrect null check. Change 3097605 on 2016/08/23 by Steve.Robb Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'TexDataPtr'. Bug filed here: https://connect.microsoft.com/VisualStudio/feedback/details/3078125 Change 3097609 on 2016/08/23 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'ObjClass' contains the same NULL value as 'BaseClass' did. Change 3097613 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'InEdGraph'. Change 3097620 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ThisScalableFloat'. Change 3097627 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'AnimBlueprint'. Change 3097629 on 2016/08/23 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'Pin' contains the same NULL value as 'PoseNet' did. Change 3097631 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'IPOverlayInfo.Brush'. Change 3097634 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Survey'. Change 3097639 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Settings'. Change 3097650 on 2016/08/23 by Steve.Robb Alternate fix for CL# 3097597. Change 3097725 on 2016/08/23 by Steve.Robb Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'BodySetup'. Change 3097764 on 2016/08/23 by Steve.Robb Spurious static analysis fix: warning C28182: Dereferencing NULL pointer. 'FoundMode' contains the same NULL value as 'ElementType * FoundMode=LoopModes.FindByPredicate(<lambda>)' did. Change 3097770 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Triangle'. Change 3097775 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurGroup'. Change 3097796 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'SourceComponent'. Change 3097797 on 2016/08/23 by Steve.Robb Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'HitComponent'. Change 3097843 on 2016/08/23 by Steve.Robb Spurious static analysis fix: Dereferencing NULL pointer. 'MatchingNewPin' contains the same NULL value as 'UEdGraphPin ** MatchingNewPin=this->Pins.FindByPredicate(<lambda>)' did. Change 3097864 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'ObjectClass'. warning C6011: Dereferencing NULL pointer 'Client'. Change 3097871 on 2016/08/23 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'SMLightingMesh->StaticMesh' contains the same NULL value as 'StaticMesh' did. Change 3098015 on 2016/08/23 by Steve.Robb Alternative fix for CL# 3094864. Change 3098024 on 2016/08/23 by Steve.Robb Alternative fix for CL# 3094943. Change 3098052 on 2016/08/23 by Steve.Robb Alternative fix for CL# 3094886. Change 3098080 on 2016/08/23 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'PrimitiveComponent' contains the same NULL value as 'ReplacementComponent' did. Change 3098102 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'IndexTermPtr'. Change 3098148 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Node'. warning C6011: Dereferencing NULL pointer 'OldNode'. warning C6011: Dereferencing NULL pointer 'LinkedPin'. warning C6011: Dereferencing NULL pointer 'RootNode'. Change 3098156 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'BTGraphNode'. Change 3098176 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'NewSection'. Change 3098182 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Sprite'. Change 3098197 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Node'. Coding standards fixes. Change 3098202 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ExistingEventNode'. Change 3098208 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C28182: Dereferencing NULL pointer. 'Graph' contains the same NULL value as 'GraphNew' did. warning C28182: Dereferencing NULL pointer. 'GoodGraph' contains the same NULL value as 'GraphNew' did. Change 3098229 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Property'. Change 3099188 on 2016/08/24 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SharedBaseClass'. Change 3099195 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'NodeProperty'. Change 3099205 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'VarDesc'. Change 3099228 on 2016/08/24 by Steve.Robb Spurious static analysis fix: warning C28182: Dereferencing NULL pointer. 'Node' contains the same NULL value as 'ParentNode' did. Change 3099539 on 2016/08/24 by Steve.Robb Spurious static analysis fixes: warning C6011: Dereferencing NULL pointer 'InBlueprint'. warning C28182: Dereferencing NULL pointer. 'TestObj' contains the same NULL value as 'TestOuter' did. https://connect.microsoft.com/VisualStudio/feedback/details/3082362 https://connect.microsoft.com/VisualStudio/feedback/details/3082622 Change 3099546 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OldNode'. Change 3099561 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ReferencedObject'. Change 3099571 on 2016/08/24 by Steve.Robb Static analysis fix: Dereferencing NULL pointer. 'ObjClass' contains the same NULL value as 'CommonBaseClass' did. Change 3099600 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6385: Reading invalid data from 'this->Packages': the readable size is '24' bytes, but '32' bytes may be read. warning C6385: Reading invalid data from 'Diff.ObjectSets': the readable size is '24' bytes, but '32' bytes may be read. warning C6386: Buffer overrun while writing to 'Objects': the writable size is '24' bytes, but '32' bytes might be written. Change 3099912 on 2016/08/24 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SharedBaseClass'. Change 3099923 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ThumbnailInfo'. Change 3100977 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C6001: Using uninitialized memory '*VectorRef'. warning C6001: Using uninitialized memory '*PointRef'. warning C6001: Using uninitialized memory '*PolyRef'. Coding standard fixes. Change 3100985 on 2016/08/25 by Steve.Robb Static analyis fix: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'. Change 3100987 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C28183: 'Resources.BitmapHandle' could be '0', and is a copy of the value found in 'CreateDIBSection()`829': this does not adhere to the specification for the function 'SelectObject'. warning C6387: '_Param_(4)' could be '0': this does not adhere to the specification for the function 'CreateDIBSection'. Change 3100992 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6287: Redundant code: the left and right sub-expressions are identical. Change 3101000 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C6001: Using uninitialized memory 'tmpMemReq'. warning C6001: Using uninitialized memory 'TmpCreateInfo'. Change 3101004 on 2016/08/25 by Steve.Robb warning C28182: Dereferencing NULL pointer. 'FoliageActor' contains the same NULL value as 'Actor' did. Change 3101009 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'StaticMeshComponent'. Change 3101115 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Canvas'. Change 3101120 on 2016/08/25 by Steve.Robb Fixes to previous fixes. Change 3101128 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Stream'. Change 3101281 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C6262: Function uses '99256' bytes of stack: exceeds /analyze:stacksize '81940'. Consider moving some data to heap. warning C6001: Using uninitialized memory 'Pixel'. Change 3101292 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'BulkDataPointer'. Change 3101299 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'UnrealMaterial'. Change 3101300 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'AssetObject'. Change 3101304 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'MeshRootNode'. Change 3101311 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Cluster'. Change 3101323 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'StartNode'. Change 3101329 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Object'. Change 3101333 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ArrayRef'. Change 3101339 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'ImportData'. warning C6011: Dereferencing NULL pointer 'CurveToImport'. Change 3101485 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ObjectProperty'. Change 3101583 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'UserDefinedStruct'. Change 3105721 on 2016/08/30 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'. Change 3105724 on 2016/08/30 by Steven.Hutton Change users page to more responsive paginated version. Change 3105725 on 2016/08/30 by Steven.Hutton Added field for crash processor failed Change 3105786 on 2016/08/30 by Steve.Robb Reintroduced missing operator<< for enum classes. Change 3105803 on 2016/08/30 by Steve.Robb Removal of obsolete code and state. PrepareCppStructOps() has several unreachable blocks, one of which sets UScriptStruct::bCppStructOpsFromBaseClass which is otherwise never true, so it can be removed too. Change 3106251 on 2016/08/30 by Steve.Robb Switch static analysis node to build editor instead of just the engine. Change 3107556 on 2016/08/31 by Steven.Hutton Added build version data from CRP to DB as part of add crash #rb none Change 3107557 on 2016/08/31 by Steven.Hutton Passed build version data to CRW through crash description #rb none Change 3107634 on 2016/08/31 by Graeme.Thornton Only accept "log=<filename>" and "abslog=<filename>" command line values if the filename has a "log" or "txt" extension #jira UE-20147 Change 3107797 on 2016/08/31 by Steve.Robb Fix for UHT debugging manifest, after paths changed in CL# 3088416. Change 3107964 on 2016/08/31 by Steve.Robb TCString::Strfind renamed to TCString::Strifind, as it is case-insensitive. New case-sensitive TCString::Strfind added, based on GitHub PR #2453. Change 3108023 on 2016/08/31 by Steve.Robb Removal of test code which no longer compiles now that we emit errors on skipped preprocessor blocks. Change 3108160 on 2016/08/31 by Steven.Hutton Update to add new filter to website front page #rb none Change 3109556 on 2016/09/01 by Steven.Hutton Fixing compile warning #rb none Change 3110001 on 2016/09/01 by Steve.Robb PR #2468: Fix for UnrealHeaderTool TArray<TScriptInterface<>> UFUNCTION parameters (Contributed by UnrealEverything) Change 3111835 on 2016/09/02 by Steve.Robb Enforce uint8 on UENUM() enum classes. #jira UE-35224 Change 3111867 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6236: (<expression> || <non-zero constant>) is always a non-zero constant. Change 3111880 on 2016/09/02 by Steve.Robb Static analysis fixes: warning C6386: Buffer overrun while writing to 'Views': the writable size is 'ShaderBindings.ResourceViews.public: int __cdecl TArray<class TSlateD3DTypedShaderParameter<struct ID3D11ShaderResourceView> *,class FDefaultAllocator>::Num(void)const ()*8' bytes, but '16' bytes might be written. warning C6386: Buffer overrun while writing to 'ConstantBuffers': the writable size is 'ShaderBindings.ConstantBuffers.public: int __cdecl TArray<class TSlateD3DTypedShaderParameter<struct ID3D11Buffer> *,class FDefaultAllocator>::Num(void)const ()*8' bytes, but '16' bytes might be written. Change 3111886 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6386: Buffer overrun while writing to 'DistortionMeshIndices': the writable size is 'NumIndices*2' bytes, but '4' bytes might be written. Change 3112025 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'pInputProcessParameters'. warning C6011: Dereferencing NULL pointer 'pOutputProcessParameters'. Change 3112051 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Command'. Change 3112066 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurNetDriver'. Change 3112093 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'byteArray'. Change 3112110 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'PersistentParty'. Change 3112123 on 2016/09/02 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'CurDriver'. warning C6011: Dereferencing NULL pointer 'CurNetDriver'. warning C6011: Dereferencing NULL pointer 'CurWorld'. Change 3112157 on 2016/09/02 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'UnitTest'. Change 3112283 on 2016/09/02 by Steve.Robb Static analysis fixes: warning C6244: Local declaration of 'None' hides previous declaration at line '173' of 'netcodeunittest.h'. Change 3113455 on 2016/09/05 by Chris.Wood CRP performance improvements (v1.1.25) Change 3113468 on 2016/09/05 by Steve.Robb Reverting unnecessary merge in CL# 3112464. Change 3113508 on 2016/09/05 by Steve.Robb Static analysis fix: warning C6031: Return value ignored: 'CoCreateGuid'. Change 3113588 on 2016/09/05 by Steve.Robb Static analysis fix: warning C6244: Local declaration of 'hInstance' hides previous declaration Change 3113863 on 2016/09/06 by Steve.Robb Fix for this error: Could not find a part of the path 'D:\Build\++UE4+Dev-Core+Compile\Sync\Engine\Plugins\2D\Paper2D\Binaries\Win64\UE4Editor.modules'. Change 3113864 on 2016/09/06 by Steve.Robb Misc static analysis fixes for VS2015 Update 2. Change 3113918 on 2016/09/06 by Ben.Marsh Explicitly check for version manifest existing before trying to delete it, rather than swallowing the exception. Change 3114293 on 2016/09/06 by Steve.Robb Static analysis fixes for Visual Studio Update 2. Change 3115732 on 2016/09/07 by Steve.Robb Static analysis fix: warning C6262: Function uses '121180' bytes of stack: exceeds /analyze:stacksize '81940'. Consider moving some data to heap. Change 3115754 on 2016/09/07 by Steve.Robb GObjectArrayForDebugVisualizers init order fix. Removal of obsolete FName visualizer helper code. Change 3115774 on 2016/09/07 by Steve.Robb Fix for ICE by moving static variables into their own file and removing const return types. #jira UE-35597 Change 3116061 on 2016/09/07 by Steve.Robb Redundant LOCTEXT_NAMESPACE removed - was missed in CL# 3115774. Change 3117478 on 2016/09/08 by Steve.Robb Static analysis fixes in third party code, using a new macro-based system. Change 3119152 on 2016/09/09 by Steve.Robb TArray::RemoveAt and RemoveAtSwap with a bool Count is now a compile error. Change 3119200 on 2016/09/09 by Steve.Robb Fix for destructors not being called in TSparseArray move assignment. Change 3119568 on 2016/09/09 by Steve.Robb Fix for TSparseArray visualizer. Change 3119591 on 2016/09/09 by Steve.Robb New MakeShared function which allocates the object and reference controller in a single block. Change 3120281 on 2016/09/09 by Steve.Robb Fix for ICE on static analysis build. #jira UE-35596 Change 3120786 on 2016/09/12 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'SavedGame'. Change 3120787 on 2016/09/12 by Steve.Robb Removal of TEnumAsByte on enum classes. Change 3120789 on 2016/09/12 by Steve.Robb Static analysis fixes: warning C6385: Reading invalid data from 'D3D11X_CERAM_OFFSET_BY_SET_STAGE': the readable size is '28' bytes, but '64' bytes may be read. warning C6101: Returning uninitialized memory '*pDescriptorDst'. A successful path through the function does not set the named _Out_ parameter. Change 3121234 on 2016/09/12 by Steve.Robb Unused ToBuildInfoString function declaration removed. Change 3122616 on 2016/09/13 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Compiler'. Change 3123070 on 2016/09/13 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'top' contains the same NULL value as 'edge' did. [CL 3126145 by Robert Manuszewski in Main branch]
2016-09-15 00:21:42 -04:00
if (SourceType == nullptr)
{
return;
}
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3235800) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3194900 on 2016/11/11 by Ryan.Rauschkolb Fixed issue where Reroute node pins weren't mirroring data properly. #jira UE-33717 Change 3195081 on 2016/11/11 by Dan.Oconnor This @todo was addressed Change 3196368 on 2016/11/14 by Maciej.Mroz Results of FBlueprintNativeCodeGenModule::IsTargetedForReplacement are cashed - optimization (cooking time). Change 3196369 on 2016/11/14 by Maciej.Mroz CompileDisplaysBinaryBackend, CompileDisplaysTextBackend and bDisplaysLayout features (in [Kismet] in Engine.ini) are disabled in commandlets. They slow down BP compilation. Change 3196398 on 2016/11/14 by Ben.Cosh Reworked the tracking of latent and expansion event tracking in the blueprint compiler for use with the blueprint profiler. #Jira - UE-37364 - Crash: PIE with instrumented PlayerPawn_Generic added to AITestbed scene #Proj BlueprintProfiler, KismetCompiler. BlueprintGraph, Engine Change 3196410 on 2016/11/14 by Maciej.Mroz Fixed crash in UK2Node_Knot::PropagatePinTypeFromInput Change 3196852 on 2016/11/14 by Maciej.Mroz Fixed static analysis warning. Change 3196874 on 2016/11/14 by Maciej.Mroz #jira UE-37778 (the issue was already fixed, but it was reintroduced, when EDL support was added). ObjectImport->XObject is not filled prematurelly, so CreateExport is properly called each dynamic class. Change 3197469 on 2016/11/14 by Dan.Oconnor Fix for being able to make Sets and Maps of user defined structs that contained unhashable types (e.g. Rotator) Change 3197703 on 2016/11/14 by Dan.Oconnor Updated documentation comment to reflect current behavior Change 3198167 on 2016/11/15 by Maciej.Mroz Merged 3196582 from Dev-Core UE4 - Changed a check to a warning related to detaching linekrs twice. Seen in nativized BP version of platformer game. Change 3198433 on 2016/11/15 by Ryan.Rauschkolb Fixed Copy/pasting variable nodes hides them from a reference search #UE-31606 Change 3198811 on 2016/11/15 by Maciej.Mroz Fixed Knot node - it will use/propagate the type from input connection, if it's possible (intstead of the type from output connection). Change 3198866 on 2016/11/15 by Maciej.Mroz #jira UE-38578 Fixed infinite loading of DynamicClass in EDL. Change 3199045 on 2016/11/15 by Phillip.Kavan [UE-27402] Fix attached Actor-based Blueprint instance root component relative transform values after reconstruction. change summary: - modified FActorComponentInstanceData's ctor to exclude relative transform properties when caching root component values. #jira UE-27402 Change 3200703 on 2016/11/16 by Mike.Beach Marking the ease node explicitly as pure, which makes it so we can prune it from graphs when it is unused. #jira UE-38453 Change 3201115 on 2016/11/16 by Maciej.Mroz Nativization + EDL: "Dynamic" objects are processed by FAsyncPackage::PostLoadDeferredObjects, so the EInternalObjectFlags::AsyncLoading flag is properly cleared. Change 3201749 on 2016/11/17 by Maciej.Mroz In EDL a package containig a dynamic class has PKG_CompiledIn flag (the same like without EDL). Change 3202577 on 2016/11/17 by Mike.Beach Accounting for a change in our intermediate node mapping - the old list no longer maps expanded nodes to macro instances (instead it maps to the corresponding node in the macro graph), so we had to use a new mapping meant for this. #jira UE-35609 Change 3204803 on 2016/11/18 by Phillip.Kavan [UE-38607] Implicitly turn on Blueprint class nativization for dependencies. change summary: - added a UBlueprint::PostEditChangeProperty() override method to handle this. #jira UE-38607 Change 3204812 on 2016/11/18 by Phillip.Kavan [UE-38580] Implicitly turn on the "nativize" project setting when enabling nativize for any Blueprint class. change summary: - modified UBlueprint::PostEditChangeProperty() to update project packaging settings if necessary #jira UE-38580 Change 3204818 on 2016/11/18 by Phillip.Kavan [UE-38725] Interface class dependencies that are not enabled for nativization will now raise an error during nativized cooks. change summary: - modified FBlueprintNativeCodeGenModule::IsTargetedForReplacement() to check interface class dependencies in addition to parent class dependencies. #jira UE-38725 Change 3204963 on 2016/11/18 by Dan.Oconnor Create a transaction when using UBlueprintFunctionNodeSpawner* directly #jira UE-36439 Change 3206510 on 2016/11/21 by Mike.Beach Adding math-expression aliases for dot and cross functions ("dot" and "cross" respectively). #jira UEBP-71 Change 3206547 on 2016/11/21 by Mike.Beach Exposing GetReflectionVector() to Blueprints. #jira UEBP-70 Change 3206658 on 2016/11/21 by Dan.Oconnor Fix for compile error, digging out authorative class from trash class. Mirror of 3206638 from Odin #jira None Change 3207579 on 2016/11/22 by Mike.Beach No longer enforcing the requirement that game UFunctions have to have a category (making writing of game code easier). #jira UE-18093 Change 3207956 on 2016/11/22 by Phillip.Kavan [UE-38690] Fix a regression in which nested scene component subobjects would no longer be registered after construction of an instance-added component in IWCE. change summary: - modified the IWCE path in SSCSEditor::AddNewComponent() to ensure that any components added as a result of instancing the newly-added component are also registered. - modified AActor::ExecuteConstruction() to ensure that non-scene, native nested component subobjects that might be created as a result of SCS execution are also registered (previously it was only considering non-scene components that were explicitly created by the SCS, or that inherited the creation method of the instance that created it). #jira UE-38690 Change 3208217 on 2016/11/22 by Mike.Beach Modified fix (originally from Ryan.Rauschkolb, CL 3186023): Fixed unable to set struct variable name if name includes space #jira UE-28435 Change 3208347 on 2016/11/22 by Mike.Beach Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints) Change 3208688 on 2016/11/23 by Ben.Cosh Made a minor change that forces debugging references to the PIE world when the play in editor world is changed. This is intended to better handle mutliple game instance/world debugging scenarios. #Jira UE-26386 - Can't hit breakpoints in blueprints for level script for server instances #Proj Engine, UnrealEd Change 3208712 on 2016/11/23 by Ben.Cosh Improved handling of unwired transform struct terminal expression's in the blueprint VM compiler to remove an errant warning. #Jira UE-32401 - "ImportText: Missing opening parenthesis" message, when a function returns Transform #Proj KismetCompiler Change 3209457 on 2016/11/23 by Phillip.Kavan [UE-30479] Fix inability to edit the ISMC instance array on Actor instances when the ISMC is inherited from a Blueprint class. change summary: - added PPF_ForceTaggedSerialization as a means to override the CPF_SkipSerialization flag when explicit serialization of the property value is needed - modified UProperty::ShouldSerializeValue() to check for and handle the PPF_ForceTaggedSerialization flag when the CPF_SkipSerialization flag is present - modified UActorComponent::DetermineUCSModifiedProperties() to add the PPF_ForceTaggedSerialization flag to the custom FArchive impl - modified FActorComponentInstanceData::FActorComponentInstanceData() to add the PPF_ForceTaggedSerialization flag to the custom FObjectWriter impl - modified FActorComponentInstanceData::ApplyToComponent() to add the PPF_ForceTaggedSerialization flag to the custom FObjectReader impl #jira UE-30479 Change 3209758 on 2016/11/24 by Maciej.Mroz #jira UE-38979 Nativization: fixed error when a BP implements a native interface. FBlueprintNativeCodeGenModule::IsTargetedForReplacement will return "DontReplace" for native class. Change 3210376 on 2016/11/25 by Maciej.Mroz #jira UE-39028 Fixed FBlueprintNativeCodeGenModule::FindReplacedNameAndOuter Components in nativized BPCG SCS have replaced outer object and name while cooking. Change 3210936 on 2016/11/28 by Phillip.Kavan Minor revision to try and avoid a potentially expensive Contains() call when possible. Change 3211527 on 2016/11/28 by Maciej.Mroz Fixed map of names cooked in packages in nativized build. Change 3211969 on 2016/11/28 by Mike.Beach Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints) Change 3212328 on 2016/11/28 by Dan.Oconnor Enum, pointer and arithmetic specializations for THasGetTypeHash, as VC doesn't detect them properly. TIsEnum moved to its own header. Submitted on behalf of steve.robb Change 3212398 on 2016/11/28 by Dan.Oconnor Build fix, this function is part of another change Change 3212442 on 2016/11/28 by Dan.Oconnor UHT now supports structs in TMap and TSet, misc. fixes to PropertyStruct's PropertyFlags detecting whether the struct type is hashable (all HasGetTypeHash flags are now computed from THasGetTypeHash). Various fixes for generating TMap/TSet code from blueprints Change 3212578 on 2016/11/28 by Dan.Oconnor Rename RegisterClass to avoid collsion with RegistClass macro in generated code Change 3213668 on 2016/11/29 by Dan.Oconnor Fix for missing CDO when instatiating some subobjects in nativized BPs #jira UE-34980 Change 3213737 on 2016/11/29 by Dan.Oconnor Added GetTypeHash implementation to UEnumProperty #jira UE-39091 Change 3215225 on 2016/11/30 by Maciej.Mroz Bunch of changes required for nativized Orion to work with EDL. - ClientOnly, ServerOnly and EditorOnly assets are properly distinguished and handled - Introduced FCompilerNativizationOptions - fixed inproper references to BP instead of BPGC - fixed generated delegate name - hack for DefaultRootNode UE-39168 - improved NativeCodeGenrationTool - various minor improvements Change 3216363 on 2016/11/30 by Dan.Oconnor Better fix for discrepency between UUserDefinedEnum::GetEnumText and UEnum::GetEnumText. Without meta data we could not look up display names, so I'm writing out the display names into a function in the BP cpp backend. This function could be generated by UHT if we wanted to correct this odd behavior for native enums #jira UE-27735 Change 3217168 on 2016/12/01 by Maciej.Mroz #jira UE-35390 Nativization: Fixed compilation warning C4458: declaration of 'CurrentState' hides class member Disabled warning C4996 (deprecated) in nativized code. Change 3217320 on 2016/12/01 by Phillip.Kavan [UE-38652] Selecting Blueprint assets for nativization is now integrated into the project's configuration. change summary: - added EProjectPackagingBlueprintNativizationMethod - deprecated the 'bNativizeBlueprintAssets' and 'bNativizeOnlySelectedBlueprints' flags in favor of a new 'BlueprintNativizationMethod' config property in UProjectPackagingSettings - added a new 'NativizeBlueprintAssets' config property to UProjectPackagingSettings to track/store the list of Blueprints to be nativized when the exclusive method (whitelist) is selected - added a PostInitProperties() override to UProjectPackagingSettings; implemented to migrate from the deprecated config properties to the new method enum type - updated FMainFrameActionCallbacks::PackageProject() to migrate to checking the enum type - updated FBlueprintNativeCodeGenModule::IsTargetedForReplacement() to migrate to checking the enum type - modified UProjectPackagingSettings::CanEditChange() to enable editing of the nativization whitelist only when the "exclusive" method is active - modified UProjectPackagingSettings::PostEditChangeProperty() to add a new case for handling changes to the whitelist; changes are propagated to any Blueprint assets that are loaded - added new Add/RemoveBlueprintAssetFromNativizationList() APIs to UProjectPackagingSettings for assisting with adding/removing Blueprint assets to/from the exclusive list (whitelist) - deprecated the 'bNativize' flag in UBlueprint in favor of a new transient 'bSelectedForNativization' flag that is no longer serialized; this now caches whether or not the asset is present in the whitelist in the project config - modified UBlueprint::Serialize() to both migrate from the deprecated flag to the project config/transient flag on load, as well as to propagate the value of the transient flag back to the project config on save. this means that if the user changes the value of the transient flag through the Details view, that change won't be reflected back to the project config until the Blueprint is actually saved (saving the value to the config rather than serializing to the asset) - modified UBlueprint::PostEditChangeProperty() to remove code that was previously updating the project configuration at edit time. this functionality has been relocated to Serialize() (save time) instead. notes: - also completes UE-38636 (task: consolidate config options into a single drop-down) #jira UE-38652 Change 3218124 on 2016/12/01 by Dan.Oconnor CPF_HasGetValueTypeHash flag was not set on native UEnumProperties #jira UE-39181 Change 3218168 on 2016/12/01 by Phillip.Kavan Fix local var name that shadows a function param (CIS fix). Change 3219117 on 2016/12/02 by Maciej.Mroz #jira UE-39241 "warning C4458: declaration of XXX hides class member" In Nativized Code Nativization: Fixed compilation warning C4458: when local function variable hides a class variable. Names of local variables in funvtions have prefix "bpfv__". Change 3219201 on 2016/12/02 by Mike.Beach Keeping the "Select All Input Nodes" option from infinitely recurssing by blocking on nodes it has already selected. #jira UE-38988 Change 3219247 on 2016/12/02 by Mike.Beach Fixing CIS shadow variable warning from my last check in (CL 3219201). Change 3219332 on 2016/12/02 by Maciej.Mroz #jira HeaderParser: "private:" specifier is lost in FGameplayTag::TagName Workaround for UE-38231 Change 3219381 on 2016/12/02 by Mike.Beach Accounting for cyclic compile issues in cast-node's validate function, making it check the authoratative class instead of the current type. Also down grading some of the warnings to notes (suggesting the users don't need the cast). #jira UE-39272 Change 3220224 on 2016/12/02 by Dan.Oconnor Reduce font size for compact nodes Change 3220476 on 2016/12/03 by Maciej.Mroz #jira UE-35390 Better fix for UE-35390 Disabled deprecation warnings in nativized code. Change 3221637 on 2016/12/05 by Maciej.Mroz #jira UEBP-245 Nativization: Forced ImportCreation while InitialLoad for DynamicClasses. Change 3222306 on 2016/12/05 by Dan.Oconnor Support for default values of TMap and TSet local variables #jira UE-39239 Change 3222383 on 2016/12/05 by Dan.Oconnor Fixed bug in Blueprint TMap function for getting values out of a TMap Change 3222427 on 2016/12/05 by Mike.Beach Preventing ChildActorTemplate fixups from occuring on component load, when they may instead be a placeholder object (a byproduct of deferred Blueprint loading - a guard against cyclic load problems). #jira UE-39323 Change 3222679 on 2016/12/05 by Dan.Oconnor Remove unused code. Had no sideeffects, other than potential for leak when struct with non-trivial dtor was allocated here. Change 3222719 on 2016/12/05 by Dan.Oconnor Earlier detection of invalid native map/set properties. These generate a compile error if any TMap/TSet functions are used, but will slip by undetected if not used. Working on static assert to catch them. #jira UE-39338 Change 3224375 on 2016/12/06 by Dan.Oconnor Add tags for testing of array diffing Change 3224507 on 2016/12/07 by Phillip.Kavan [UE-39055] Fix a crash caused by an object name collision that could occur when loading some older Blueprint assets. change summary: - added UInheritableComponentHandler::FixComponentTemplateName() - modified UInheritableComponentHandler::PostLoad() to check for and correct stale records that cause a collision with the corrected name - added a UInheritableComponentHandler::Serialize() override to ensure that UsingCustomVersion() is called for the asset containing the ICH (already happening in UBlueprint::Serialize(), but added for consistency with other usage) - modified USimpleConstructionScript::Serialize() to ensure that UsingCustomVersion() is called for the asset containing the SCS (same reason as above) #jira UE-39055 Change 3225572 on 2016/12/07 by Samuel.Proctor Test assets for TSet/TMap testing. Includes new native class for testing containers. #rb none Change 3225577 on 2016/12/07 by Samuel.Proctor New test map for Array, TSet and Tmap testing. Change 3226281 on 2016/12/07 by Dan.Oconnor Container test asset, needs to be in p4 for diff tool tests. Change 3226345 on 2016/12/07 by Dan.Oconnor Another revision of test data Change 3228496 on 2016/12/09 by Ben.Cosh This change adds extra information to component template arrays so that the component class can be determined in builds that strip out objects of certain class types such as the editor dedicated server build. #Jira UE-38842 - "LogBlueprint:Error: [Compiler BP_Skybox_World_RandomTrees_01] Error Can't connect pins ReturnValue and Target" after entering a lobby in a synced server #Proj KismetCompiler, BlueprintGraph, UnrealEd, Core, Engine, Kismet, BlueprintCompilerCppBackend Change 3230120 on 2016/12/09 by Dan.Oconnor Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints) Change 3230700 on 2016/12/12 by Samuel.Proctor Removing some array test properties from container test class that were not needed. Also updated struct element to better reflect testing purpose. #rb none Change 3230926 on 2016/12/12 by Samuel.Proctor Missed a file on previous container test native QA asset checkin. #rb none Change 3231246 on 2016/12/12 by Dan.Oconnor PR #3003: New Feature: In-editor diff of arrays and structs now highlights diff. (Contributed by CA-ADuran). I've added TSet and TMap support as well. Change 3231311 on 2016/12/12 by Dan.Oconnor Handle class load failure #jira UE-39480 Change 3231387 on 2016/12/12 by Dan.Oconnor Shadow variable fixes Change 3231501 on 2016/12/12 by Dan.Oconnor More shadow fixes Change 3231584 on 2016/12/12 by Maciej.Mroz #jira UE-39636 Replaced obsolate macro usage. #fyi Dan.Oconnor Change 3231685 on 2016/12/12 by Mike.Beach PR #3032: Fixed category for IsValidIndex (Contributed by elFarto) #jira UE-39660 Change 3231689 on 2016/12/12 by Maciej.Mroz Nativization: Fixed Dependency list generation. Change 3231765 on 2016/12/12 by Phillip.Kavan [UE-38903] Auto-enable exclusive Blueprint nativization only after explicitly selecting the first asset. change summary: - fixed up the auto-enable logic on save in UBlueprint::Serialize() #jira UE-38903 #fyi Maciej.Mroz Change 3231837 on 2016/12/12 by Dan.Oconnor Restore hack to keep objects referenced by bytecode alive while in editor #jira UE-38486 Change 3232085 on 2016/12/13 by Phillip.Kavan Compile fix. Change 3232435 on 2016/12/13 by Ben.Cosh Fix for a bug introduced in CL 3228496 that caused component templates to fail to be identified by name and resulted in blueprint compilation issues for add component nodes. #Jira UE-39623 - Unknown template referenced by Add Component Node #Proj BlueprintGraph, Engine Change 3232437 on 2016/12/13 by Maciej.Mroz #jira UE-33021 Remove an obsolete warning. Change 3232564 on 2016/12/13 by Ben.Cosh This adds extra component template renaming propagation and checking for the blueprint generated class and blueprint skeleton class. #Jira UE-39623 - Unknown template referenced by Add Component Node #Proj BlueprintGraph - Implementing a bit of review feedback and some safety checking. Change 3232598 on 2016/12/13 by Maciej.Mroz Nativization: stati functions cannot be const, so no workaound (_Inner function) specyfic to const functions is necessary #jira UE-39518 Change 3232601 on 2016/12/13 by Phillip.Kavan [UE-38975] Warn on BuildCookRun or a standalone cook when the -nativizeAssets flag is omitted from the command line for a nativization-enabled project. change summary: - added 'bWarnIfPackagedWithoutNativizationFlag' to UProjectPackagingSettings (default = true) - modified UCookOnTheFlyServer::StartCookByTheBook() to check for the presence of the -nativizeAssets flag and emit a warning for unexpected omission from the command line - modified UAT to include a warning for the BuildCookRun command when -build is specified with the same unexpected omission of the -nativizeAssets flag on the UAT command line #jira UE-38975 Change 3232749 on 2016/12/13 by Mike.Beach Moving Blueprint nativization out of the experimental category. #jira UE-39358 Change 3233043 on 2016/12/13 by Dan.Oconnor Various fixes for TSet/TMap nativization issues #jira UE-39634 Change 3233086 on 2016/12/13 by Dan.Oconnor Advanced Containers (TSet/TMap) no longer experimental Change 3233175 on 2016/12/13 by Mike.Beach Whitelising "Packaging" as an acceptable BP settings category (follow up to CL 3232749). #jira UE-39358 Change 3233182 on 2016/12/13 by Mike.Beach Exposing the editor setting "Show Action Menu Item Signatures" through the Blueprint Developer menu (for ease of access). Change 3233662 on 2016/12/13 by Phillip.Kavan [UE-39722] Fix a typo that led to a UAT runtime failure. #jira UE-39722 Change 3233710 on 2016/12/13 by Dan.Oconnor Clang template useage fix #jira UE-39742 Change 3233895 on 2016/12/13 by Dan.Oconnor Several fixes to crashes that occur when you delete a blueprint asset when its children are not loaded. #jira UE-39558 Change 3234443 on 2016/12/14 by Phillip.Kavan [UE-39354] Fix script VM crash on assignment to TSet/TMap variables. change summary: - modified FScriptBuilderBase::EmitDestinationExpression() to consider TSet/TMap value types in addition to TArray terms #jira UE-39354 Change 3234581 on 2016/12/14 by Mike.Beach Backing out fix for UE-38842 (CL 3228496/3232435/3232564) - mapping UBlueprintGeneratedClass's ComponentTemplates array to a new format was causing issues with deferred dependency loading during serialization (trying to extract type information from a placeholder object). We're opting for a smaller/simpler solution to UE-38842, which will be to store the component information on the node itself (not with the templates). #jira UE-39707 Change 3234729 on 2016/12/14 by Mike.Beach Making it so AddComponent nodes now track the component (class) type that they represent (in case the template cannot be spawned, like in -server w/ client-only components). #jira UE-38842 Change 3234805 on 2016/12/14 by Mike.Beach Fixing CIS shadowed variable warning. Change 3234830 on 2016/12/14 by Nick.Atamas Added extra debugging mechanisms to help track down duplicate item issues with TableViews. Change 3235075 on 2016/12/14 by Mike.Beach Creating a helper to better manage nested scope blocks added in generated code - on close, clears out cached local accessor variables that were added, so we don't use one that was declared inside the nested scope. #jira UE-39769 Change 3235213 on 2016/12/14 by Phillip.Kavan [UE-39790] Fix UAT compile issue after latest merge from Main. change summary: - migrated the BuildCookRun command's usage of the (deprecated) ConfigCacheIni to the new ConfigHierarchy API #jira UE-39790 Change 3235384 on 2016/12/14 by Mike.Beach Defaulting to excluding data-only Blueprints from nativization. Change 3235675 on 2016/12/14 by Nick.Atamas Hopefully fixed build. Added OnEnteredBadState delegate that lets users add arbitrary logging info when the List/Tree enters a bad state. Change 3235761 on 2016/12/14 by Mike.Beach Hopefully resolving CIS mac/ps4 build failures in Dev-BP for 4.15 integration. #jira UE-39800 Change 3235800 on 2016/12/14 by Mike.Beach More hopeful CIS mac/ps4 fixes for 4.15 integration. #jira UE-39800 [CL 3236017 by Mike Beach in Main branch]
2016-12-14 22:10:20 -05:00
SourceType = SourceType->GetAuthoritativeClass();
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3125172) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3053250 on 2016/07/18 by Steve.Robb TNot metafunction added. Change 3053252 on 2016/07/18 by Steve.Robb New TIsEnumClass trait. Change 3061345 on 2016/07/22 by Robert.Manuszewski Changing FMallocStomp::GetAllocationSize() to return the requested allocation size instead of the physical allocation size to make FMallocStomp work properly with FMallocPoisonProxy Change 3061377 on 2016/07/22 by Graeme.Thornton Added bStripAnimationDataOnDedicatedServer option to UAnimationSettings which will remove all compressed data from cooked server data. Disabled by default Change 3064592 on 2016/07/26 by Steven.Hutton Uploading repository files Change 3064595 on 2016/07/26 by Steven.Hutton Assign crashes to buggs based not just on Callstack but also based on Error message. Error messages have "data" masked out and are then compared to a table of error messages to find similar messages. Ensures are not currently filtered by error message. Change 3066046 on 2016/07/27 by Graeme.Thornton Better dedicated client/server class exclusion during cooking - Add class lists to cooker settings so they can be modified in the editor Change 3066077 on 2016/07/27 by Graeme.Thornton Move Paragon NeedsLoadForServer calls over to the new config based system Change 3066203 on 2016/07/27 by Chris.Wood CrashReportProcess logging and Slack reporting improvements to monitor disk space. [UE-31129] - Crash Report server need to alert on Slack when the PDB cache is full Change 3066276 on 2016/07/27 by Graeme.Thornton Move simple NeedsLoadForClient implementations over to new config based system Change 3068019 on 2016/07/28 by Graeme.Thornton Don't call ReleaseResources on UStaticMesh if we never render, and therefore never actually initialize the resources - Corrects some bad stats Change 3068218 on 2016/07/28 by Chris.Wood CrashReportProcess 1.1.18 passes BuildVersion to MinidumpDiagnostics [UE-31706] - Add new BuildVersion string to crash context and website Also modified command line log file ini settings to stop MDD stalling trying to sort and delete its logs. Change 3071665 on 2016/08/01 by Robert.Manuszewski Moving RemoveNamesFromMasterList from UEnum destructor to BeginDestroy to avoid potential issues when its package has already been destroyed. Change 3073388 on 2016/08/02 by Graeme.Thornton Invalidate string asset reference tags after finishing up loading of an async package Change 3073745 on 2016/08/02 by Robert.Manuszewski Disabling logging to memory in shipping by default. From now on FOutputDeviceMemory will be an opt-in for games. #jira FORT-27839 Change 3074866 on 2016/08/03 by Robert.Manuszewski PR #2650: Fixed a bug where newline escape sequence wasnt written to the pipe (Contributed by ozturkhakki) Change 3075128 on 2016/08/03 by Steve.Robb Static analysis fixes: error C2065: 'ThisOuterWorld': undeclared identifier Change 3075130 on 2016/08/03 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'LODLevel' Change 3075131 on 2016/08/03 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Owner' Change 3075235 on 2016/08/03 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'AnimToOperateOn' Change 3075248 on 2016/08/03 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ParentProfile' Change 3075662 on 2016/08/03 by Steve.Robb Static analysis/buffer size fix: warning C28020: The expression '_Param_(7)>=sizeof(ICMP_ECHO_REPLY)+_Param_(4)+8' is not true at this call Change 3075668 on 2016/08/03 by Steve.Robb Static analysis fix: warning C6326: Potential comparison of a constant with another constant Change 3075679 on 2016/08/03 by Chris.Wood Added -NoTrimCallstack command line arg to MDD calls from CRP 1.1.19 [OR-26335] - 29.1 crash reporter generating reports with no callstacks / info New MDD has -NoTrimCallstack option to leave possibly irrelevant entires in the stack. Trimming is somewhat arbitrary and based on string matching. I'd rather see the whole thing. Change 3077070 on 2016/08/04 by Steve.Robb Dead array slack tracking code removed. Change 3077113 on 2016/08/04 by Steve.Robb TEnumAsByte is now deprecated for enum classes. All current uses fixed (which tidies up that code anyway). New FArchive::op<< for enum classes. Generated code now never uses TEnumAsByte for enum classes. Change 3077117 on 2016/08/04 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'DefaultSettings' Change 3078709 on 2016/08/05 by Steve.Robb FUNCTION_NO_NULL_RETURN_* macros added to statically annotate a function to say that it never returns a null pointer. TObjectIterator annotated to never return null. NewObject annotated to never return null. Change 3078836 on 2016/08/05 by Graeme.Thornton Silently skip creating exports from a package where the outer is also an export and has been filtered at runtime during loading Change 3082217 on 2016/08/09 by Steve.Robb Missing #include for FUniqueNetIdRepl added. Change 3083679 on 2016/08/10 by Chris.Wood CrashReportProcess performance improvements. CRP v1.1.22 [UE-34402] - Crash Reporter: Improve CRP performance by allowing multiple MDD instances [UE-34403] - Crash Reporter: CRP should throw away crashes when backlog is too large to avoid runaway Passing lock details to MDD on command line and managing multiple MDD tasks in CRP. Configurable values for range of queue sizes that cause us to throw away crashes. Change 3085362 on 2016/08/11 by Steve.Robb Rule-of-three fixes for FAIMessageObserver, to prevent accidents. From here: https://udn.unrealengine.com/questions/306507/tstaticarray-doesnt-call-destructor-on-elements-be.html Change 3085396 on 2016/08/11 by Steve.Robb Swap can now be configured via the TUseBitwiseSwap trait to not use Memswap, which can be less optimal for certain types. Change 3088840 on 2016/08/15 by Steve.Robb TRemoveReference moved to its own header. Change 3088858 on 2016/08/15 by Steve.Robb TDecay moved to its own header. Change 3088963 on 2016/08/15 by Steve.Robb Invoke function, for doing a generic call on a generic callable thing. Equivalent to std::invoke. Change 3089144 on 2016/08/15 by Steve.Robb Algo::Transform updated to use Invoke. Algorithm tests updated to test the new features. Change 3089147 on 2016/08/15 by Steve.Robb TLess and TGreater moved to their own headers and defaulted to void as a type-deducing version, as per std::. Change 3090243 on 2016/08/16 by Steve.Robb New Algo::Sort and Algo::SortBy algorithms. Change 3090387 on 2016/08/16 by Steve.Robb Improved bitwise swapping for Swap. See: https://udn.unrealengine.com/questions/306922/swap-is-painfully-slow.html Change 3090444 on 2016/08/16 by Steve.Robb Ptr+Size overloads removed after discussion - MakeArrayView should be used instead. Change 3090495 on 2016/08/16 by Steve.Robb Assert when FString::Mid is passed a negative count. #jira UE-18756 Change 3093455 on 2016/08/18 by Steve.Robb Debuggability and efficiency improvements to UScriptStruct::DeferCppStructOps. Change 3094476 on 2016/08/19 by Steve.Robb BOM removed from InvariantCulture.h. Change 3094697 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6237: (<zero> && <expression>) is always zero. <expression> is never evaluated and might have side effects. Change 3094702 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Interactor'. Change 3094715 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6385: Reading invalid data from 'Order': the readable size is '256' bytes, but '8160' bytes may be read. Change 3094737 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'OwnedComponent'. warning C28182: Dereferencing NULL pointer. 'Child' contains the same NULL value as 'AttachToComponent' did. Change 3094750 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Actor'. Change 3094768 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'LevelSequence'. warning C6011: Dereferencing NULL pointer 'Actor'. Change 3094774 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'CallFunctionNode'. Change 3094783 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'TargetPin'. Change 3094807 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SourceClass'. Change 3094815 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'VarNode'. warning C6011: Dereferencing NULL pointer 'SourceClass'. Change 3094840 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'TunnelGraph'. warning C28182: Dereferencing NULL pointer. 'GraphNode' contains the same NULL value as 'SourceNode' did. Change 3094864 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'. Change 3094880 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'PrevIfIndexMatchesStatement'. Change 3094886 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'SpawnBlueprintPin'. Change 3094903 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'K2Node'. Change 3094916 on 2016/08/19 by Steve.Robb Static analysis fix: Dereferencing NULL pointer 'CompilerContext'. Change 3094931 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'VariablePin'. Change 3094935 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurrentPin'. Change 3094943 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Pin'. warning C28182: Dereferencing NULL pointer. 'Graph' contains the same NULL value as 'TargetGraph' did. Change 3094960 on 2016/08/19 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'LastOutPin'. Change 3095046 on 2016/08/19 by Steve.Robb Single parameter version of CastChecked tagged to never return null. Change 3095054 on 2016/08/19 by Steve.Robb Committed wrong version in CL# 3095046. Change 3095089 on 2016/08/19 by Steve.Robb Static analysis fixes: warning C6509: Invalid annotation: 'return' cannot be referenced in some contexts warning C6101: Returning uninitialized memory '*lpdwExitCode'. Change 3096035 on 2016/08/22 by Steve.Robb Fix for static lighting in pixel inspector. Change 3096039 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'World'. Change 3096045 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Actor'. Change 3096058 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OtherPin'. Change 3096059 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'MainMesh'. Change 3096066 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'SourceType'. Change 3096070 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'LastPushStatement'. Change 3096074 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OriginalDataTableInPin'. Change 3096075 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurrentPin'. Change 3096081 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'RunningPlatformData'. Change 3096156 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'BP'. warning C6011: Dereferencing NULL pointer 'Object'. Change 3096308 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'TopMipData'. warning C6011: Dereferencing NULL pointer 'MipCoverageData[0]'. Change 3096315 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'OldParent'. warning C6011: Dereferencing NULL pointer 'TestExecutionInfo'. Change 3096318 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OwnerClass'. Change 3096322 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'StaticMeshInstanceData'. Change 3096337 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Pin'. warning C6011: Dereferencing NULL pointer 'SpawnVarPin'. Change 3096345 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6246: Local declaration of 'NumTris' hides declaration of the same name in outer scope. Change 3096356 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'InWorld'. Change 3096387 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'ExpressionPreviewMaterial'. warning C6011: Dereferencing NULL pointer 'MaterialNode->MaterialExpression'. Change 3096400 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'FunctionInputs'. Change 3096413 on 2016/08/22 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'LODPackage' contains the same NULL value as 'AssetsOuter' did. Change 3096416 on 2016/08/22 by Steve.Robb Static analysis fixes: warning C6237: (<zero> && <expression>) is always zero. <expression> is never evaluated and might have side effects. Change 3096423 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'RedirectorRefs.Redirector'. Change 3096439 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'NewObject'. Change 3096446 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'BaseClass'. Change 3096454 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OldSkeleton'. Change 3096464 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'MyNode'. Change 3096469 on 2016/08/22 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'VRInteractor'. Change 3097559 on 2016/08/23 by Steve.Robb Alternate fix to CL# 3096439. Change 3097583 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SourceCategoryEnum'. warning C6011: Dereferencing NULL pointer 'CurrentWorld'. Change 3097584 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'LocalizationTarget'. Change 3097585 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C28182: Dereferencing NULL pointer. 'VariableSetNode' contains the same NULL value as 'AssignmentNode' did. warning C6011: Dereferencing NULL pointer 'FirstNativeClass'. Change 3097588 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OutputObjClass'. Change 3097589 on 2016/08/23 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'Term' contains the same NULL value as 'RValueTerm' did. Change 3097591 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Schema'. Change 3097597 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'LayerInfo'. Change 3097598 on 2016/08/23 by Steve.Robb Const-correctness fix for ILandscapeEditorModule::GetHeightmapFormatByExtension and ILandscapeEditorModule::GetWeightmapFormatByExtension. Change 3097600 on 2016/08/23 by Steve.Robb Fix for incorrect null check. Change 3097605 on 2016/08/23 by Steve.Robb Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'TexDataPtr'. Bug filed here: https://connect.microsoft.com/VisualStudio/feedback/details/3078125 Change 3097609 on 2016/08/23 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'ObjClass' contains the same NULL value as 'BaseClass' did. Change 3097613 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'InEdGraph'. Change 3097620 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ThisScalableFloat'. Change 3097627 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'AnimBlueprint'. Change 3097629 on 2016/08/23 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'Pin' contains the same NULL value as 'PoseNet' did. Change 3097631 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'IPOverlayInfo.Brush'. Change 3097634 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Survey'. Change 3097639 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Settings'. Change 3097650 on 2016/08/23 by Steve.Robb Alternate fix for CL# 3097597. Change 3097725 on 2016/08/23 by Steve.Robb Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'BodySetup'. Change 3097764 on 2016/08/23 by Steve.Robb Spurious static analysis fix: warning C28182: Dereferencing NULL pointer. 'FoundMode' contains the same NULL value as 'ElementType * FoundMode=LoopModes.FindByPredicate(<lambda>)' did. Change 3097770 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Triangle'. Change 3097775 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurGroup'. Change 3097796 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'SourceComponent'. Change 3097797 on 2016/08/23 by Steve.Robb Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'HitComponent'. Change 3097843 on 2016/08/23 by Steve.Robb Spurious static analysis fix: Dereferencing NULL pointer. 'MatchingNewPin' contains the same NULL value as 'UEdGraphPin ** MatchingNewPin=this->Pins.FindByPredicate(<lambda>)' did. Change 3097864 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'ObjectClass'. warning C6011: Dereferencing NULL pointer 'Client'. Change 3097871 on 2016/08/23 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'SMLightingMesh->StaticMesh' contains the same NULL value as 'StaticMesh' did. Change 3098015 on 2016/08/23 by Steve.Robb Alternative fix for CL# 3094864. Change 3098024 on 2016/08/23 by Steve.Robb Alternative fix for CL# 3094943. Change 3098052 on 2016/08/23 by Steve.Robb Alternative fix for CL# 3094886. Change 3098080 on 2016/08/23 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'PrimitiveComponent' contains the same NULL value as 'ReplacementComponent' did. Change 3098102 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'IndexTermPtr'. Change 3098148 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Node'. warning C6011: Dereferencing NULL pointer 'OldNode'. warning C6011: Dereferencing NULL pointer 'LinkedPin'. warning C6011: Dereferencing NULL pointer 'RootNode'. Change 3098156 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'BTGraphNode'. Change 3098176 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'NewSection'. Change 3098182 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Sprite'. Change 3098197 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Node'. Coding standards fixes. Change 3098202 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ExistingEventNode'. Change 3098208 on 2016/08/23 by Steve.Robb Static analysis fixes: warning C28182: Dereferencing NULL pointer. 'Graph' contains the same NULL value as 'GraphNew' did. warning C28182: Dereferencing NULL pointer. 'GoodGraph' contains the same NULL value as 'GraphNew' did. Change 3098229 on 2016/08/23 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Property'. Change 3099188 on 2016/08/24 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SharedBaseClass'. Change 3099195 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'NodeProperty'. Change 3099205 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'VarDesc'. Change 3099228 on 2016/08/24 by Steve.Robb Spurious static analysis fix: warning C28182: Dereferencing NULL pointer. 'Node' contains the same NULL value as 'ParentNode' did. Change 3099539 on 2016/08/24 by Steve.Robb Spurious static analysis fixes: warning C6011: Dereferencing NULL pointer 'InBlueprint'. warning C28182: Dereferencing NULL pointer. 'TestObj' contains the same NULL value as 'TestOuter' did. https://connect.microsoft.com/VisualStudio/feedback/details/3082362 https://connect.microsoft.com/VisualStudio/feedback/details/3082622 Change 3099546 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'OldNode'. Change 3099561 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ReferencedObject'. Change 3099571 on 2016/08/24 by Steve.Robb Static analysis fix: Dereferencing NULL pointer. 'ObjClass' contains the same NULL value as 'CommonBaseClass' did. Change 3099600 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6385: Reading invalid data from 'this->Packages': the readable size is '24' bytes, but '32' bytes may be read. warning C6385: Reading invalid data from 'Diff.ObjectSets': the readable size is '24' bytes, but '32' bytes may be read. warning C6386: Buffer overrun while writing to 'Objects': the writable size is '24' bytes, but '32' bytes might be written. Change 3099912 on 2016/08/24 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SharedBaseClass'. Change 3099923 on 2016/08/24 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ThumbnailInfo'. Change 3100977 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C6001: Using uninitialized memory '*VectorRef'. warning C6001: Using uninitialized memory '*PointRef'. warning C6001: Using uninitialized memory '*PolyRef'. Coding standard fixes. Change 3100985 on 2016/08/25 by Steve.Robb Static analyis fix: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'. Change 3100987 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C28183: 'Resources.BitmapHandle' could be '0', and is a copy of the value found in 'CreateDIBSection()`829': this does not adhere to the specification for the function 'SelectObject'. warning C6387: '_Param_(4)' could be '0': this does not adhere to the specification for the function 'CreateDIBSection'. Change 3100992 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6287: Redundant code: the left and right sub-expressions are identical. Change 3101000 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C6001: Using uninitialized memory 'tmpMemReq'. warning C6001: Using uninitialized memory 'TmpCreateInfo'. Change 3101004 on 2016/08/25 by Steve.Robb warning C28182: Dereferencing NULL pointer. 'FoliageActor' contains the same NULL value as 'Actor' did. Change 3101009 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'StaticMeshComponent'. Change 3101115 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Canvas'. Change 3101120 on 2016/08/25 by Steve.Robb Fixes to previous fixes. Change 3101128 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Stream'. Change 3101281 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C6262: Function uses '99256' bytes of stack: exceeds /analyze:stacksize '81940'. Consider moving some data to heap. warning C6001: Using uninitialized memory 'Pixel'. Change 3101292 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'BulkDataPointer'. Change 3101299 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'UnrealMaterial'. Change 3101300 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'AssetObject'. Change 3101304 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'MeshRootNode'. Change 3101311 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Cluster'. Change 3101323 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'StartNode'. Change 3101329 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Object'. Change 3101333 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ArrayRef'. Change 3101339 on 2016/08/25 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'ImportData'. warning C6011: Dereferencing NULL pointer 'CurveToImport'. Change 3101485 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'ObjectProperty'. Change 3101583 on 2016/08/25 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'UserDefinedStruct'. Change 3105721 on 2016/08/30 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'. Change 3105724 on 2016/08/30 by Steven.Hutton Change users page to more responsive paginated version. Change 3105725 on 2016/08/30 by Steven.Hutton Added field for crash processor failed Change 3105786 on 2016/08/30 by Steve.Robb Reintroduced missing operator<< for enum classes. Change 3105803 on 2016/08/30 by Steve.Robb Removal of obsolete code and state. PrepareCppStructOps() has several unreachable blocks, one of which sets UScriptStruct::bCppStructOpsFromBaseClass which is otherwise never true, so it can be removed too. Change 3106251 on 2016/08/30 by Steve.Robb Switch static analysis node to build editor instead of just the engine. Change 3107556 on 2016/08/31 by Steven.Hutton Added build version data from CRP to DB as part of add crash #rb none Change 3107557 on 2016/08/31 by Steven.Hutton Passed build version data to CRW through crash description #rb none Change 3107634 on 2016/08/31 by Graeme.Thornton Only accept "log=<filename>" and "abslog=<filename>" command line values if the filename has a "log" or "txt" extension #jira UE-20147 Change 3107797 on 2016/08/31 by Steve.Robb Fix for UHT debugging manifest, after paths changed in CL# 3088416. Change 3107964 on 2016/08/31 by Steve.Robb TCString::Strfind renamed to TCString::Strifind, as it is case-insensitive. New case-sensitive TCString::Strfind added, based on GitHub PR #2453. Change 3108023 on 2016/08/31 by Steve.Robb Removal of test code which no longer compiles now that we emit errors on skipped preprocessor blocks. Change 3108160 on 2016/08/31 by Steven.Hutton Update to add new filter to website front page #rb none Change 3109556 on 2016/09/01 by Steven.Hutton Fixing compile warning #rb none Change 3110001 on 2016/09/01 by Steve.Robb PR #2468: Fix for UnrealHeaderTool TArray<TScriptInterface<>> UFUNCTION parameters (Contributed by UnrealEverything) Change 3111835 on 2016/09/02 by Steve.Robb Enforce uint8 on UENUM() enum classes. #jira UE-35224 Change 3111867 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6236: (<expression> || <non-zero constant>) is always a non-zero constant. Change 3111880 on 2016/09/02 by Steve.Robb Static analysis fixes: warning C6386: Buffer overrun while writing to 'Views': the writable size is 'ShaderBindings.ResourceViews.public: int __cdecl TArray<class TSlateD3DTypedShaderParameter<struct ID3D11ShaderResourceView> *,class FDefaultAllocator>::Num(void)const ()*8' bytes, but '16' bytes might be written. warning C6386: Buffer overrun while writing to 'ConstantBuffers': the writable size is 'ShaderBindings.ConstantBuffers.public: int __cdecl TArray<class TSlateD3DTypedShaderParameter<struct ID3D11Buffer> *,class FDefaultAllocator>::Num(void)const ()*8' bytes, but '16' bytes might be written. Change 3111886 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6386: Buffer overrun while writing to 'DistortionMeshIndices': the writable size is 'NumIndices*2' bytes, but '4' bytes might be written. Change 3112025 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'pInputProcessParameters'. warning C6011: Dereferencing NULL pointer 'pOutputProcessParameters'. Change 3112051 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Command'. Change 3112066 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurNetDriver'. Change 3112093 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'byteArray'. Change 3112110 on 2016/09/02 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'PersistentParty'. Change 3112123 on 2016/09/02 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'CurDriver'. warning C6011: Dereferencing NULL pointer 'CurNetDriver'. warning C6011: Dereferencing NULL pointer 'CurWorld'. Change 3112157 on 2016/09/02 by Steve.Robb Static analysis fixes: warning C6011: Dereferencing NULL pointer 'UnitTest'. Change 3112283 on 2016/09/02 by Steve.Robb Static analysis fixes: warning C6244: Local declaration of 'None' hides previous declaration at line '173' of 'netcodeunittest.h'. Change 3113455 on 2016/09/05 by Chris.Wood CRP performance improvements (v1.1.25) Change 3113468 on 2016/09/05 by Steve.Robb Reverting unnecessary merge in CL# 3112464. Change 3113508 on 2016/09/05 by Steve.Robb Static analysis fix: warning C6031: Return value ignored: 'CoCreateGuid'. Change 3113588 on 2016/09/05 by Steve.Robb Static analysis fix: warning C6244: Local declaration of 'hInstance' hides previous declaration Change 3113863 on 2016/09/06 by Steve.Robb Fix for this error: Could not find a part of the path 'D:\Build\++UE4+Dev-Core+Compile\Sync\Engine\Plugins\2D\Paper2D\Binaries\Win64\UE4Editor.modules'. Change 3113864 on 2016/09/06 by Steve.Robb Misc static analysis fixes for VS2015 Update 2. Change 3113918 on 2016/09/06 by Ben.Marsh Explicitly check for version manifest existing before trying to delete it, rather than swallowing the exception. Change 3114293 on 2016/09/06 by Steve.Robb Static analysis fixes for Visual Studio Update 2. Change 3115732 on 2016/09/07 by Steve.Robb Static analysis fix: warning C6262: Function uses '121180' bytes of stack: exceeds /analyze:stacksize '81940'. Consider moving some data to heap. Change 3115754 on 2016/09/07 by Steve.Robb GObjectArrayForDebugVisualizers init order fix. Removal of obsolete FName visualizer helper code. Change 3115774 on 2016/09/07 by Steve.Robb Fix for ICE by moving static variables into their own file and removing const return types. #jira UE-35597 Change 3116061 on 2016/09/07 by Steve.Robb Redundant LOCTEXT_NAMESPACE removed - was missed in CL# 3115774. Change 3117478 on 2016/09/08 by Steve.Robb Static analysis fixes in third party code, using a new macro-based system. Change 3119152 on 2016/09/09 by Steve.Robb TArray::RemoveAt and RemoveAtSwap with a bool Count is now a compile error. Change 3119200 on 2016/09/09 by Steve.Robb Fix for destructors not being called in TSparseArray move assignment. Change 3119568 on 2016/09/09 by Steve.Robb Fix for TSparseArray visualizer. Change 3119591 on 2016/09/09 by Steve.Robb New MakeShared function which allocates the object and reference controller in a single block. Change 3120281 on 2016/09/09 by Steve.Robb Fix for ICE on static analysis build. #jira UE-35596 Change 3120786 on 2016/09/12 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'SavedGame'. Change 3120787 on 2016/09/12 by Steve.Robb Removal of TEnumAsByte on enum classes. Change 3120789 on 2016/09/12 by Steve.Robb Static analysis fixes: warning C6385: Reading invalid data from 'D3D11X_CERAM_OFFSET_BY_SET_STAGE': the readable size is '28' bytes, but '64' bytes may be read. warning C6101: Returning uninitialized memory '*pDescriptorDst'. A successful path through the function does not set the named _Out_ parameter. Change 3121234 on 2016/09/12 by Steve.Robb Unused ToBuildInfoString function declaration removed. Change 3122616 on 2016/09/13 by Steve.Robb Static analysis fix: warning C6011: Dereferencing NULL pointer 'Compiler'. Change 3123070 on 2016/09/13 by Steve.Robb Static analysis fix: warning C28182: Dereferencing NULL pointer. 'top' contains the same NULL value as 'edge' did. [CL 3126145 by Robert Manuszewski in Main branch]
2016-09-15 00:21:42 -04:00
for (UEdGraphPin* CastInput : SourcePin->LinkedTo)
{
const FEdGraphPinType& SourcePinType = CastInput->PinType;
if (SourcePinType.PinCategory != UEdGraphSchema_K2::PC_Object)
{
// all other types should have been rejected by IsConnectionDisallowed()
continue;
}
UClass* SourceClass = Cast<UClass>(SourcePinType.PinSubCategoryObject.Get());
if ((SourceClass == nullptr) && (SourcePinType.PinSubCategory == UEdGraphSchema_K2::PSC_Self))
{
if (UK2Node* K2Node = Cast<UK2Node>(CastInput->GetOwningNode()))
{
SourceClass = K2Node->GetBlueprint()->GeneratedClass;
}
}
if (SourceClass == nullptr)
{
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
const FString SourcePinName = CastInput->PinFriendlyName.IsEmpty() ? CastInput->PinName.ToString() : CastInput->PinFriendlyName.ToString();
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3805092) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3623004 by Ben.Marsh Fix RemoteExecutor not taking the remote machine specs into account. Change 3623172 by Ben.Marsh UGS: Fix "More Info..." button not using P4 server override. Change 3628820 by Ben.Marsh PR #3979: Get working directory from task element, not tool node (Contributed by nullbus) Change 3630424 by Graeme.Thornton Make the AES key parameter const in FAES::EncryptData() Change 3632786 by Steve.Robb FString constructor fixed to not take an ignored void* parameter, which can be misleading. Change 3639534 by Ben.Marsh Remove old P4.NET library. Doesn't seem to be used by anything. Change 3640536 by Steve.Robb GitHub #4007 : Delete unnecessary specialization of MakeArrayView #jira UE-49617 Change 3641155 by Gil.Gribb UE4 - Speculative fix for problem with summary reading in FAsyncArchive2. Change 3643932 by Ben.Marsh Add an example build script for updating the version number, then compiling and staging the editor and tools to an output directory. Optionally submits at the end (requires -Submit argument). Change 3644825 by Ben.Marsh Use VSWHERE to find the location of MsBuild.exe, if available. https://github.com/EpicGames/UnrealEngine/pull/3879#issuecomment-329688645 Change 3647395 by Ben.Marsh Allow compiling of monolithic binaries from BuildEditorAndTools.xml, using the -set:GameTarget=FooGame -set:TargetPlatforms=Win32;Win64 options. Change 3650300 by Ben.Marsh UAT: Remove code that deletes cooked data on a failed cook. The engine should write packages out transactionally now (by writing to a temporary file and moving into place), and deleting the cooked data just prevents post-mortem analysis. Change 3650856 by Robert.Manuszewski Adding checks to prevent FlushAsyncLoading and LoadObject/LoadPackage from being called from any threads other than the game thread Change 3651022 by Gil.Gribb UE4 - Possible fix for mysterious ensure indicating problematic recursion in the pak precacher. Change 3658331 by Steve.Robb Fix for the parsing of large integer values. Change 3661958 by Gil.Gribb UE4 - Fixed rare hang in task graph. Change 3664021 by Robert.Manuszewski Fix for a potential GC crash caused by stale pointer in AnimInstanceProxy See https://udn.unrealengine.com/questions/392432/gc-issue-uaniminstancemontageinstances-empty-but-u.html Change 3664254 by Steve.Robb Use ANSI allocator when thread sanitizer is enabled. This allows the generation of more accurate and meaningful reports. Change 3664436 by Steve.Robb Use TUniquePtr instead of a thread-unsafe TSharedPtr to move data between threads. Change 3666461 by Graeme.Thornton Improvements to signing/encryption key embedding and runtime access - Changed method of embedding key into the executable to make it more secure - Added FAESKey class to wrap a 32 byte key Change 3666462 by Graeme.Thornton Cut ShooterGame AES key down to 32 characters Change 3677560 by Ben.Marsh PR #4074: UBT: Add include and library-related fields to module JSON output (Contributed by adamrehn) Change 3683534 by Steve.Robb Refactoring of enum/struct lookup during hot reload. Change 3683754 by Steve.Robb Alignment fixes to allow int64 on 32-bit platforms Support for integral types in IsAligned. Static asserts so that alignment functions will no longer be called with non-intergal, non-pointer types. Some fixes to existing code. Change 3686670 by Steve.Robb Fix for thread-unsafe modification of static array in FString::ParseIntoArrayWS. Change 3687540 by Ben.Marsh Fix all UBT/UAT output going to stderr rather than stdout. Change 3688931 by Gil.Gribb UE4 - Critical fix for a rare race condition in the pak file async IO layer. Change 3690000 by Graeme.Thornton Manual copy of 4.18 CL 3687869 Make UBT include the destination INI file for a given hierarchy if it exists Renamed VSCode enum value to VisualStudioCode, so it matches the source accessor plugin name Change 3690030 by Graeme.Thornton VSCode fixes - Source Code Accessor plugin changes. Add new interface method to open a solution at a given path - GameProjectUtils now uses the source navigation API to open solutions rather than hardcoding which solution file types to look for - Various fixes for vscode project file generation #jira UE-50554 Change 3690885 by Steve.Robb Atomic reads in FReferenceControllerOps<ESPMode::ThreadSafe>. Change 3691052 by Steve.Robb Free stats thread on shutdown. Change 3695138 by Steve.Robb AsConst helper function added. Change 3696627 by James.Hopkin Changed player controller iterator typedefs to use TWeakObjectPtr rather than the deprecated TAutoWeakObjectPtr (review-3606695) Change 3697099 by Steve.Robb GitHub #4105 : Removed redundant class access modifier Change 3697154 by Steve.Robb Removal of deprecated functions in delegates. Mutable lambdas to can now be bound to delegates. Change 3697180 by Steve.Robb GitHub #4115 : Incorrect CPPMacroType used for USoftClassProperty Change 3697239 by Steve.Robb Allow TArray::Insert to take an array with any allocator type. Change 3697269 by Steve.Robb RelocateConstructItems instead of MoveConstructItems. Change 3697558 by Steve.Robb New _GetRef functions for TArray, which return a reference to the newly-added element. Unit tests for these functions. Change 3699776 by Steve.Robb TSAN warning suppression around IAsyncReadRequest::bCompleteAndCallbackCalled. Change 3702397 by Steve.Robb TIsTrivial type trait. Change 3702569 by Steve.Robb Allow a TGuardValue to be assigned to a different type from the one being guarded. Change 3706644 by Robert.Manuszewski Different stack ingore count for development builds for FArchiveStackTrace Change 3709272 by Steve.Robb Removal of redundant UpdateVertices, which causes a race condition on the renderer thread. Change 3709452 by Robert.Manuszewski Fixed a bug where with async time limit set to a low value the async loading could hang because the linker would keep reloading the preload dependencies Change 3709454 by Robert.Manuszewski Added command line option -NOEDL to disable EDL Change 3709487 by Steve.Robb Remove use of PLATFORM_HAS_64BIT_ATOMICS, which is always 1. Change 3709645 by Ben.Marsh Fix race condition between multiple instances of UBT trying to write out the XML config cache. Change 3711193 by Ben.Marsh Add an editor setting for the shared DDC location to use. #jira UE-51487 Change 3713811 by Steve.Robb Update .modules files after a hot reload. Don't check for directory timestamp changes as a way of detecting new files if hot reloading with a makefile, as this is already done during makefile invalidation checks. Pass hotreload flags around in UBT instead of relying on global state. This fixes the hot reload iteration speed regression without also regressing the fix to UE-42205. #jira UE-51472 Change 3715654 by Steve.Robb GitHub #4156 : Fixed not compiling template function Algo::UpperBoundBy. Change 3718782 by Steve.Robb TSharedPtr, TSharedRef and TWeakPtr assignment are now implemented as copy-and-swap to avoid an invalid smart pointer state being visible to any destructors being called. Change 3720830 by Steve.Robb Initial import of TAtomic object wrapper, which guarantees atomic access to an object. Change 3720881 by Steve.Robb FCompression ThreadSanitizer data race fixes. Change 3722640 by Graeme.Thornton Guard network platform file heartbeat function with the socket critical section. Stop heartbeat from causing a crash when firing during async loading. #jira UE-51463 Change 3722655 by Steve.Robb Don't null name table because it's already zeroed at startup. Some tidy-ups. Change 3722754 by Steve.Robb Thread sanitizer fix. Small typo fix. Change 3722849 by Graeme.Thornton Improve "caching file" message in networkplatformfile so it says "Requesting file..." and is only output when we actually request the file from the server Change 3723081 by Steve.Robb TAtomic is now aligned to the underlying integer type. TAtomic will now static assert with a better error message when given an unsupported type. Define added for the maximum platform-supported atomic type, and used instead of a (wrong) hardcoded number. Misc renames. Change 3723270 by Ben.Marsh Include /d2cgsummary argument when running UBT with -Timing. Change 3723683 by Ben.Marsh Do not include documentation in the generated project files by default. Suspect that the 30,000 UDN files that get added to the solution take up memory and degrate performance. Change 3725422 by Robert.Manuszewski When serializing compressed archive with multithreaded compression enabled, wait for the oldest async task instead of spinning. Change 3725735 by Robert.Manuszewski Making all CheckDefaultSubobjects related functions const Change 3726167 by Steve.Robb FMinimalName::IsNone added. Change 3726458 by Steve.Robb TAtomic will no longer instantiate for types which are not exactly a size supported by the platform layer. Change 3726542 by Ben.Marsh UGS: Always include the project filename in the editor build command. The project may not be in one of the .uprojectdirs paths. Change 3726595 by Ben.Marsh Allow building multiple game targets in the example BuildEditorAndTools.xml script. Change 3726724 by Ben.Marsh Fix ambiguities in calculating root directory. (GitHub #4172) Change 3726959 by Ben.Marsh Make sure that AutomationTool uses the same list of preprocessor definitions when compiling *.target.cs files as UnrealBuildTool does. Change 3728437 by Steve.Robb VisitTupleElements now supports invocation of a functor taking arguments from multiple tuples in parallel. Some improved documentation. NOTE: This is a backward-incompatible change to VisitTupleElements. Any existing calls will need their arguments swapping. Change 3732262 by Gil.Gribb UE4 - Fixed rare hangs in the task graph. Change 3732755 by Steve.Robb Stats TSAN fixes. Optimizations to FCycleCounter::Start() to only read the stat name once. Change 3735000 by Robert.Manuszewski Always preload the AssetRegistry module on startup. even if EDL is disabled. Even without EDL, if the async loading thread is enabled the AssetRegistryModule will otherwise be loaded from the ASL thread and that will assert. Change 3735292 by Robert.Manuszewski Made sure component visualizer is removed from VisualizersForSelection when UnregisterComponentVisualizer() is called otherwise it may cause crashes when the engine terminates. Change 3735332 by Steve.Robb Refactoring of UDelegateProperty::Identical() to clarify logic. Fixed UMulticastDelegateProperty::Identical() to compare the bound function names. PPF_DeltaComparison removed, as it doesn't seem useful. Change 3737960 by Graeme.Thornton VSCode - Add launch task for generating project files for the given folder Change 3738398 by Graeme.Thornton Make Visual Studio source code accessor's module hotreload handler pass the 'save all files' message to the current accesor, rather than direct to the visual studio accessor #jira UE-51451 Change 3738405 by Graeme.Thornton VSCode: Format c/cpp settings strings using comment path formatting function Change 3738928 by Steve.Robb Fix for lack of null conditional operators in some older Monos. (replicated from CL# 3729574 in Release-4.18) #jira UE-51842 Change 3739135 by Ben.Marsh Fix being unable to package projects in a folder called "Wolf". This is only a restricted folder for Epic's Perforce history. #jira UE-51855 Change 3739360 by Ben.Marsh UAT: Fix issue with P4PORT setting not being parsed correctly. Change 3745959 by James.Hopkin #core Added ImplicitConv for safe upcasts to a specific required type, e.g. deduced delegate payload types Change 3746125 by Steve.Robb FName ThreadSanitizer fixes. Change 3747274 by Steve.Robb TSAN fix for FMediaTicker::Stopping. Change 3747618 by Steve.Robb ThreadSanitizer data race fix for FShaderCompileThreadRunnableBase::bForceFinish. Change 3747720 by Steve.Robb ThreadSanitizer fix for FMessageRouter::Stopping. Change 3749207 by Graeme.Thornton First pass of CryptoKeys plugin. Allows creation/editing/cycling of AES/RSA keys. Change 3749323 by Graeme.Thornton Fix UAT crash when only -targetplatform is specifiied Change 3749349 by Steve.Robb TSAN_SAFE guards around LockFreeList to silence ThreadSanitizer. Change 3749617 by Steve.Robb Logf static_assert for formatting string enabled. Change 3749897 by Steve.Robb FDebug::LogAssertFailedMessage static assert for formatting string enabled. Change 3754011 by Steve.Robb Static asserts that the allocator supports move. Move-enabled our allocators which don't support move. Change 3754227 by Ben.Marsh Fix build command line in generated projects missing a space before the compiler version override. #jira UE-52226 Change 3754562 by Ben.Marsh PR #4206: Replace deprecated wsprintf with secure swprintf for Bootstrap executable (Contributed by jessicafalk) Change 3755616 by Graeme.Thornton Runtime code for using the new crypto ini files to define signing/encryption keys #jira UE-46580 Change 3755666 by James.Hopkin Used ImplicitConv to remove Casts being used for up-casts #review-3745965 Change 3755671 by Graeme.Thornton Add log message in unrealpak to say which config file system it is using for crypto keys Change 3755672 by Graeme.Thornton Updating ShooterGame with new CryptoKeys based security setup Change 3756778 by Ben.Marsh Add support for running multiple jobs simultaneously on a single builder. When running job or agent setup, the --num-slots=X parameter defines the number of steps that can run simultaneously (EC procedures pass in the resource step limit). A lock file is created under the workspace root (D:\Build) and a reservation file is created for the first slot that can be allocated (slot-1, slot-2, etc...). The slot number is used to define the workspace name that should be used. Change 3758498 by Ben.Marsh Re-throw exceptions when a file cannot be deleted when cleaning a target. Change 3758921 by Steve.Robb ThreadSanitizer fix to FThreadSafeStaticStatBase::HighPerformanceEnable to do a relaxed atomic load on access. DoSetup() now returns the newly-allocated pointer, instead of reloading it from memory. Change 3760599 by Graeme.Thornton Added missing epic header comment to some new source files Change 3760642 by Steve.Robb ThreadSanitizer fix for concurrent access to GMainThreadBlockedOnRenderThread. Change 3760669 by Graeme.Thornton Improvement to OpenSSL based signing key generator. Generate a full RSA key then steal the primes from it, rather than generating the primes manually. Added a test mode to the cryptokeys commandlet to test signing key generation Change 3760711 by Steve.Robb ThreadSanitizer fixes to GIsRenderingThreadSuspended. Change 3760739 by Steve.Robb ThreadSanitizer fix for FQueuedThread::TimeToDie. Change 3760763 by Steve.Robb ThreadSanitizer fix for GRunRenderingThreadHeartbeat. Removal of unnecessary/dangerous initializer for GMainThreadBlockedOnRenderThread. Change 3760793 by Steve.Robb Some simple refactoring to remove some volatile reads of BufferStartPos and BufferEndPos. Change 3760817 by Steve.Robb ThreadSanitizer fixes for FAsyncWriter::BufferStartPos and BufferEndPos. Change 3761331 by Josh.Engebretson UnrealBuildTool enforcement of Development and Debug configurations in existing .csproj #jira UE-52416 Change 3761521 by Steve.Robb ThreadSanitizer fixes for FEvent::EventStartCycles and EventUniqueId. Change 3763117 by Graeme.Thornton PR #3722: Optimising FPaths::IsRelative() (Contributed by jovisgCL) Change 3763358 by Graeme.Thornton Ensure that all branches within FGenericPlatformMisc::RootDir() produce an absolute path with no duplicate slashes Remove relative->abs conversion of root dir from FPaths::MakeStandardFilename(), now that we know RootDir() always returns an absolute path Derived from the content of this PR: PR #3742: Treat RootDirectory the same way as Standardized (Contributed by TroutZhang) Change 3764058 by Graeme.Thornton Generate a .code-workspace file for the current workspace. Allows foreign projects to "mount" the UE4 folder so that the engine tasks are avaible, and all engine source is visible to VSCode for searching purposes #jira UE-52359 Change 3764705 by Steve.Robb Better handling of whitespace in ImportText_Internal() for set and map properties. Containers are now emptied upon import failure, to avoid leaving bad container states (unhashed, partial data). Fix to USetProperty's temp buffer size to avoid buffer overruns. Duplicate map keys are now skipped during import, same as USetProperty's behavior. Change 3764731 by Steve.Robb Don't re-run UHT if only source files have changed in the same folder as headers. This was already done for hot reload, but there's no reason why it should be limited to that. Change 3765923 by Graeme.Thornton VSCode - "taskName" -> "label" for C# build tasks Change 3766018 by Steve.Robb constexpr constructor for TAtomic. Change 3766037 by Steve.Robb Misc tidyings in HotReload.cpp. Change 3766046 by Steve.Robb ThreadSanitizer fixes to ENamedThreads::RenderThread and ENamedThreads::ENamedThreads_Local. Change 3766288 by Steve.Robb Improved efficiency of adding/removing elements to UGCObjectReferencer::ReferencedObjects. Change 3766374 by Josh.Engebretson Fix issue with ini quoted value comparison #jira UE-52066 Change 3766532 by Josh.Engebretson PR #3680: Added NetSerialize to FDateTime fixing UE-22533 (Contributed by druhasu) #jira UE-46156 Change 3766740 by Steve.Robb TMultiMap::Append added. Change 3767523 by Steve.Robb ThreadSanitizer fix for UE4Delegates_Private::GNextID. Change 3767601 by Steve.Robb ThreadSanitizer fix for FStats::GameThreadStatsFrame. Change 3770567 by Ben.Marsh Add a FAnnotatedArchiveFormatter interface which allows querying structural type information that may not be in binary archives. Change 3770826 by Ben.Marsh Move StructuredArchive implementation into Core, so primitive types can implement serialization overloads for it. Change 3770875 by Steve.Robb Redundant UScriptStruct::PostLoad removed, which was causing a race condition in async loading. This was re-establishing the CppStructOps, but that is unnecessary because native classes cannot change as a result of a load - only BP structs can, and they don't have CppStructOps. Change 3772167 by Ben.Marsh Add a context-free binary formatter that can serialize tagged data. This functions as a lower-overhead binary intermediate format for JSON data. Change 3772248 by Steve.Robb ThreadSanitizer fixes to FMalloc call counters. Change 3772383 by Ben.Marsh Separate archive metadata from FArchive into FArchiveContext, so it can be safely exposed to consumers of FStructuredArchive. Change 3772906 by Graeme.Thornton TextAssetCommandlet - Utility commandlet for testing/converting to text asset format Change 3772932 by Ben.Marsh Fix "String:" prefix not being stripped from escaped string values. Change 3772942 by Graeme.Thornton Add experimental setting to enable in-editor text asset format functionality Add "export to text" option into the content browser asset actions context menu Change 3772955 by Ben.Marsh Add a new "stream" compound type to FStructuredArchive, which allows serializing a sequence of elements similarly to an array, but without serializing an explicit size. Allows passing through data to an underlying binary archive without breaking compatibility. Change 3772963 by Ben.Marsh Allow querying record keys and stream lengths from annotated archive formatters, since these archives have markup for field boundaries. Change 3773010 by Graeme.Thornton Added CORE_API to FArchiveFromStructuredArchive Gave text asset format experimental option a slightly less random tooltip comment Change 3773057 by Ben.Marsh Add a flag to FArchive to determine whether the archive is text (IsTextFormat()). Add support for seeking within FArchiveFromStructuredArchive. For text formats, data is serialized to an in-memory buffer, with names and objects serialized as indices into an array. For non-text formats, data is serialized directly to the underlying archive. Also rename FStructuredArchive::TryEnterSlot() to TryEnterField(). Change 3773118 by Steve.Robb TSignedIntType and TUnsignedIntType type traits for getting an integer type of a given size. Change 3773122 by Steve.Robb TAtomic fixes for pointer arithmetic. TSignedIntType used instead of reimplementing its own trait. Change 3773123 by Steve.Robb Unit tests for TAtomic. Change 3773138 by Steve.Robb Run numeric tests on integer types instead of basic tests. Fix for compiler warnings when subtracting from unsigned atomics. Change 3773166 by Steve.Robb Refactoring of arithmetic operations into its own class, then basing the pointer and integral versions on that. Change 3774216 by Gil.Gribb UE4 - Fix rare crash in the pak precacher immediately after unmounting a pak file. Change 3774426 by Ben.Marsh Copy all C# tools to a staging directory before compiling them. This prevents access violations when compiling tools like iPhonePackager that reference DotNETCommon, and ensures we strip NotForLicensees folders out of them all. See: https://answers.unrealengine.com/questions/726010/418-will-not-build-from-source.html Change 3774658 by Ben.Marsh Improve error reporting while generating intellisense for project files. Include the name of the target being compiled, and allow project file generation to continue without it. Change 3775141 by Ben.Marsh Always output HTML5 diagnostics at "information" verbosity, to avoid every line being prefixed with "WARNING:" and screwing up the EC postprocessor. Change 3775459 by Ben.Marsh Removing .NET Framework Perforce DLL as runtime dependency of engine third party library. The actual library is linked statically. Change 3775522 by Ben.Marsh UGS: Treat .uproject and .uplugin files as code changes. Change 3775597 by Ben.Marsh Fix post-build steps for plugins not being executed. #jira UE-52754 Change 3777895 by Graeme.Thornton StructuredArchiveFromArchive - An adapter class for wrapping an existing FArchive with a structured archive Change 3777931 by Graeme.Thornton Refactored FArchiveUObjects serialization code into some static helpers Added FArchiveUObjectFromStructuredArchive which allows the adaption of a structured archive into an FArchive that supports the extra UObect serialization functions for weak/soft pointers Change 3777942 by Graeme.Thornton Added missing CORE_API to FStructuredArchive::FStream Added FStructuredArchive::FSlot insertion operator for char Added specialization of TArray<uint8> serializer for structured archives which serializes the contents as one value Change 3778084 by Graeme.Thornton Adding FPackageName::GetTextAssetPackageExtension() to access the file extension we use for text asset files Change 3778096 by Graeme.Thornton Add a constructor to FArchiveUObjectFromStructuredArchive that takes a slot and passes it to the base class Change 3778389 by Josh.Engebretson Fix an optimization issue with CPU benchmarking Add better support for debugging/testing local rocket builds UDN Link: https://udn.unrealengine.com/questions/400909/command-scalability-auto-gives-inaccurate-cpu-benc.html #jira UE-52192 Change 3778701 by Josh.Engebretson Ensure plugin content folders are mounted consistently. Fixes TryConvertFilenameToLongPackageName failing to work on plugin assets UDN Link: https://udn.unrealengine.com/questions/276386/tryconvertfilenametolongpackagename-fails-for-plug.html #jira UE-40317 Change 3778832 by Chad.Garyet Adding enterprise path support for PCB's for UGS Change 3780258 by Graeme.Thornton TextAssetCommandlet - Accumulate timings for loading packages and saving packages Change 3780463 by Graeme.Thornton CryptoKeys improvements - Enable CryptoKeys plugin by default - Attempt to inherit settings from the old system by default - Hide ini/index encryption settings from packaging settings and just inherit previous values into new system Minor UBT change to remove a trailing comma from the end of encryption/signing key binary strings Change 3780557 by Ben.Marsh Fix LoginFlow module not being precompiled for the binary release. Change 3780846 by Josh.Engebretson Improve filename to long package name resolution when provided a relative path Change 3780863 by Ben.Marsh UAT: Add a better error message when a C# project has an invalid reference. Change 3780911 by Ben.Marsh Update the BuildEditorAndTools.xml script to allow submitting archived binaries to Perforce. The "Submit To Perforce For UGS" node creates a zip of all the binaries that have been built, and submits it to the stream specified by the 'ArchiveStream' argument. Change 3780956 by Josh.Engebretson Add support for ! (RemoveKey) config command to UBT UDN Link: https://udn.unrealengine.com/questions/397267/index.html #jira UE-52033 Change 3782957 by Robert.Manuszewski UE4 - Fixed a linear search in EDL that caused performance problems for very large maps. Change 3784503 by Ben.Marsh Optimizations for FStructuredArchive: * Store the depth explicitly in element objects, to avoid having to loop through the scope stack to find it. * Prevent shrinking of arrays when removing elements. * Add an inline allocator to the scope and container stacks. Change 3784700 by Ben.Marsh Remove the inline allocator from FStructuredArchive; checking whether the inline or backup allocator is being used is slower than just allocating up-front. Change 3784989 by Ben.Marsh Compile out all the FStructuredArchive validation code when WITH_TEXT_ARCHIVE_SUPPORT = 0. Change 3786860 by Gil.Gribb UE4 - Remove no buffering flag from windows async IO because it disabled the disk cache entirely. Change 3787159 by Ben.Marsh Guard against UE4.0 backwards compatibility path when determining if an engine is a source distribution. Change 3787493 by Josh.Engebretson Parallel pak generation now uses MaxDegreeOfParallelism option which is now set to the number of CPU cores Moved cryptography settings parsing out of threaded CreatePak method to avoid concurrency issue in ConfigCache.TryReadFile Fix for multiple threads parsing ini keys (PR 3995) #PR 3995 #jira 52913 #jira 49503 Change 3787773 by Steve.Robb Fix for missing final values from FOREACH_ENUM_ macros. Change 3788287 by Ben.Marsh TBA: Add checks in debug builds that key names in maps and records for FStructuredArchive are unique. Change 3788678 by Ben.Marsh Fix compile error due to inability to instantiate TArray<> of forward declared struct. Convert set of key names to an array to avoid including Set.h in public header for FStructuredArchive. Change 3789353 by Graeme.Thornton Removed unused/rotten modes from TextAsset commandlet. Used existing "-iterations=n" switch to control a global iteration over the given command. Useful for performance testing. Change 3789396 by Ben.Marsh Move code to validate container keys/sizes into DO_GUARD_SLOW checks, and allocate container metadata instances dynamically to fix problems with references to things not declared in headers that can't be included from StructuredArchive.h Change 3789772 by Ben.Marsh Always strip trailing slashes from the end of paths specified by .build.cs files; they can cause quoted paths to be escaped on the command line. Change 3790003 by Ben.Marsh TBA: Rename FStructuredArchive::EElementType::Object to FStructuredArchive::EElementType::Record. Change 3790051 by Steve.Robb PIE is disabled during a hot reload. Hot reload in editor is disabled during PIE. Hot reload from IDE is deferred until after PIE is exited. Compiling multiple times before a hot reload (e.g. compiling multiple times in PIE) will now load the most recent change. #jira UE-20357 #jira UE-52137 Change 3790709 by Steve.Robb Better move support for TVariant. EVariantTypes switched over to using an enum class to aid debugger visualization. Change 3791422 by Ben.Marsh TBA: Return the type of a field from an annotated archive formatter at the point that we enter it, rather than querying all the time. Change 3791489 by Graeme.Thornton TBA: Change StructuredArchiveFromArchive adapter to use the archive.Open() result directly, now that it's a slot and not a record Change 3792344 by Ben.Marsh Improvements to base64 encoding library. * Now supports encoding and decoding with ANSICHAR and WIDECHAR implementations. * Added support for decoding base-64 blobs without padding marks. * Added support for decoding into pre-allocated buffer. * Added constexpr functions for determining the encoded and maximum decoded size of an input buffer. * Prevent writes past the end of allocated buffer (no longer need to manually remove padding bytes). Change 3792949 by Ben.Marsh TBA: Rename FAnnotatedArchiveFormatter to FAnnotatedStructuredArchiveFormatter. Change 3794078 by Robert.Manuszewski Fixing a crash that could happen when FGCObjects were constructed and destructed when shutting down the engine #jira UE-52392 Change 3794413 by Ben.Marsh TBA: Remove the element type parameter to SetScope(). It isn't really needed; we can just assume the element ID correctly identifies the item on the stack. Change 3794731 by Ben.Marsh TBA: Optimize creation of stack elements for empty slots in FStructuredArchive. This saves a lot of bookkeeping when serializing a large number of individual fields. Since only one slot can be active at a time (and it only exists temporarily, until we write into it), we can just store the element ID assigned to it in a member variable. Change 3795081 by Ben.Marsh UBT: Move LinuxCommon.cs into Platform/Linux folder. Change 3795137 by Ben.Marsh UBT: Allow modules to specify private compiler definitions from the build.cs file, only visible within that module (via the "PrivateDefinitions" property). Change 3795247 by Ben.Marsh Fix missing header when creating a new interface from the editor new code wizard. #jira UE-53174 Change 3796025 by Graeme.Thornton Fixed some deprecated "Definitions" warnings in OpenCV build files Change 3796103 by Graeme.Thornton Disable experimental text asset option - it does nothing useful yet. Change 3796157 by Graeme.Thornton Fix path type mismatch in visual studio source code accessor meaning that the DTE comms wouldn't identify a running instance of VS as having the current solution open. #jira UE-53206 Change 3796315 by Ben.Marsh Move Formatter to the correct position for initializer. #jira UE-53208 Change 3797082 by Ben.Marsh UAT: Work around for exception thrown by launching cook with "-platform=Android_ETC1 -targetplatform=Android -cookflavor=ETC1". Anrdoid_ETC1 is not a valid platform (it's a cook platform), and can't be parsed by UAT. #jira UE-53232 Change 3799050 by Ben.Marsh Make UnrealPak.version files writable for Mac and Linux. Change 3801012 by Graeme.Thornton VSCode - Update source accessor to use code workspace as it's target, rather than just the project directory Change 3801214 by Gil.Gribb UE4 - Remove assert to work around minor problem with lock free lists. #jira UE-49600 Change 3801219 by Steve.Robb WeakObjectPtrs now warn when casting away const. Change 3801299 by Graeme.Thornton Fix quote issue with foreign project build tasks on PC Change 3803292 by Graeme.Thornton Fix crash on startup when using cook-on-the-side. Force a flush of the asset registry background scanning when creating the cook-on-the-side platform registries Change 3803559 by Steve.Robb TSAN fix for FMalloc::MaxSingleAlloc. Change 3803735 by Graeme.Thornton Last set of cryptokeys changes - Added some comments for editor exposed settings - Split "encrypt assets" option into "encrypt uassets" and "encrypt all assets" Change 3803929 by Ben.Marsh UGS: Show an in-place error panel when a project fails to open, allowing the user to retry and have their tabs saved instead of creating a modal dialog. Change 3624590 by Steve.Robb AddReferencedObjects now generates a compile error with containers of UObject*s where the UObjectType is forward-declared, as these which won't be added to the reference collector. Tidy-up of existing calls to AddReferencedObjects. Change 3629473 by Ben.Marsh Build: Rename the option for embedding source server information in PDB files for installed engine builds. Change 3632894 by Steve.Robb VARARG* macros deprecated and usage replaced with variadic templates. Change 3640704 by Steve.Robb MakeWeakObjectPtr added, which deduces a TWeakObjectPtr type from a raw pointer type. Fix to TWeakObjectPtr's constructor which implicitly removed const. Fixes to everything which didn't compile as a result. Change 3650813 by Graeme.Thornton Removed FStartupPackages and associated code Change 3651000 by Ben.Marsh Return the stack size from FPlatformStackWalk::CaptureStackBacktrace() rather than checking for the first null pointer, to prevent truncated callstacks if parts of the stack are zeroed out. #jira UE-49980 Change 3690842 by Steve.Robb FPlatformAtomics::AtomicRead added - needs optimizing. AtomicRead() used in FThreadSafeCounter::GetValue(). Change 3699416 by Steve.Robb Fix to debugger visualization of TArray with a TInlineAllocator or TFixedAllocator. Improved readability of TSparseArray visualization. Change 3720812 by Steve.Robb Atomic functions for 8-bit and 16-bit. Android, Linux and Switch implementations now just use the Clang implementation. AtomicRead64 deprecated in favor of the int64* AtomicRead overload. Change 3722698 by Steve.Robb VS debugger visualizers for TAtomic. Change 3732270 by Steve.Robb Relaxed stores and loads. Change 3749315 by Graeme.Thornton If UAT is invoked with platforms in both the -platform and -targetplatform command line switches, build using all of them rather than just the ones in -targetplatform #jira UE-52034 Change 3750657 by Josh.Engebretson Fixed issue when debugging editor cook/package and project launch operations #jira UE-52207 Change 3758514 by Steve.Robb Fixes to FString::Printf having non-literals being passed as its formatting string. Change 3763356 by Steve.Robb ENamedThreads::RenderThread and ENamedThreads::RenderThread_Local encapsulated by getters and setters. Change 3770549 by Steve.Robb Removal of obsolete PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS and PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES. Tidy up of existing code which uses it. Change 3770553 by Ben.Marsh Adding structured serialization API to Core/CoreUObject for use with text-based assets. * FStructuredArchive abstracts an archive which is made up of compound types (records, arrays, and maps). Values are stored in slots within these types. * Records are string -> value dictionaries where the key names can be compiled out in non-editor builds or when WITH_TEXT_ARCHIVE_SUPPORT = 0. * Maps are string -> value dictionaries where the key names are present regardless of the build type. * Proxy objects are defined to express the context for serialization (FStructuredArchive::FRecord, FStructuredArchive::FArray, FStructuredArchive::FMap, FStructuredArchive::FSlot) which allows basic validation through static typing. These objects act as lightweight handles, and can be cheaply constructed and passed around on the stack. Most serialization to and from the archive is done through these objects. * Runtime checks perform additional validation to ensure that serialized data is well formed and written in a forward-only manner, regardless of the underlying archive type. * The actual input/output format is determined by a separate interface (FArchiveFormatter). Context validation (always causing matching LeaveArray for every EnterArray, etc...) is done by FStructuredArchive, so implementing these classes is fairly trivial. FArchiveFormatter can be de-virtualized in non-editor builds, where WITH_TEXT_ARCHIVE_SUPPORT = 0. * Includes implementations of FArchiveFormatter for binary and JSON formats. Change 3771105 by Steve.Robb Deprecation warnings for PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES and PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS. Fix for incorrect warning formatting on Clang platforms. Change 3771520 by Steve.Robb Start moving Clang-using platforms' pre-setup stuff into a Clang-specific header. Change 3771564 by Steve.Robb More common macros moved to the Clang pre-setup header. Change 3771613 by Steve.Robb EMIT_CUSTOM_WARNING_AT_LINE moved to ClangPlatformCompilerPreSetup.h. Change 3772881 by Ben.Marsh Add support for serializing FName and UObject through FStructuredArchive. In order to allow custom linker behavior when serializing objects: * The constructor to JSON input formatter now takes a delegate to convert a string object name into a UObject pointer. * The constructor to tagged binary formatter takes a delegate to serialize a UObject pointer into any form it chooses (likely an integer index into the import table) Object and name types are stored as strings in JSON, using an "Object:" or "Name:" prefix to differentiate them from regular strings. Any strings that already contain one of these prefixes are prepended with a "String:" prefix (as is any string that already has a "String:" prefix). Change 3772941 by Graeme.Thornton Make build work when including StructuredArchive.h from core container types Added standard header to new files Add structured archive serializer for TArray Fix bug in structured archive where containers weren't being popped from the scope stack Change 3772972 by Ben.Marsh Add an adapter which presents a legacy FArchive interface to a FStructuredArchive slot. Data is serialized into this slot as a stream of elements; raw data is buffered up into fixed size chunks, names and objects are serialized separately. When used with FBinaryArchiveFormatter, this should result in all data being passed through to the underlying archive in a backwards compatible way, wiith no additional bookkeeping fields. Change 3773006 by Ben.Marsh Rename FStructuredArchive::FRecord::EnterSlot() to EnterField(). Change 3773013 by Steve.Robb bUseInlining target rule added to UnrealBuildTool, which defaults to true, to allow inlining to be disabled for debugging purposes. Change 3774499 by Ben.Marsh Minor fixes for FStructuredArchive related classes: * Text-based archive formats are now compiled out when WITH_TEXT_ARCHIVE_SUPPORT = 0. * Fixed issue with FTaggedBinaryArchiveFormatter state becoming corrupted when looking ahead at field types. * FArchiveFieldName constructor is now explicit, to fix cases where strings were being passed directly to serialize functions. Change 3774600 by Ben.Marsh Add CopyFormattedData() function, which can copy data from one formatter to another. Add a test case to SerializationAPI that converts from data -> JSON -> binary -> JSON -> data. This function can be used to implement a generic visitor pattern, by implementing a FArchiveFormatter which receives the deserialized data. Change 3789721 by Ben.Marsh TBA: Split FTaggedBinaryArchiveFormatter into separate classes for reading and writing. Change 3789920 by Ben.Marsh TBA: Support automatic coercion between any numeric types in tagged binary archives. Also report the smallest type that can contain a value, rather than just in32/double. #jira UECORE-364 Change 3789982 by Ben.Marsh TBA: Change FStructuredArchive::Open() to return a slot, rather than a record, to make it easier to implement a raw FArchive adapter. Change 3792466 by Ben.Marsh TBA: Better handling of raw data in text based assets. Short sequences of binary data are Base64 encoded as a single string. Longer sequences are stored as an array of Base64 encoded lines, push a SHA1 hash to detect cases where the data was merged incorrectly. In order to allow inference of the correct type for a field, other fields called "Base64" will be escaped to "_Base64", and any field beginning with "_" will have an additional underscore inserted. Reading files back in reverses these transformations. Change 3792935 by Ben.Marsh TBA: Rename FArchiveFormatter to FStructuredArchiveFormatter for consistency with FStructuredArchive. Change 3795100 by Ben.Marsh UBT: Rename the ModuleRules Definitions property to PublicDefinitions, to make its semantics clearer. Change 3795106 by Ben.Marsh Replace all internal usages of ModuleRules.Definitions, and replace it with ModuleRules.PublicDefinitions. Change 3796275 by Ben.Marsh Fix paths to Version.h includes from resource files. Change 3800683 by Josh.Engebretson Remove WER from Mac and Linux crash reports in favor of unified runtime-xml format #jira UE-50073 Change 3803545 by Steve.Robb TWeakObjPtr const-dropping assignment fix. Fixes to change. [CL 3805231 by Ben Marsh in Main branch]
2017-12-12 18:32:45 -05:00
FText const ErrorFormat = LOCTEXT("BadCastInputFmt", "'{0}' does not have a clear object type (invalid input into @@).");
MessageLog.Error( *FText::Format(ErrorFormat, FText::FromString(SourcePinName)).ToString(), this );
continue;
}
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3235800) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3194900 on 2016/11/11 by Ryan.Rauschkolb Fixed issue where Reroute node pins weren't mirroring data properly. #jira UE-33717 Change 3195081 on 2016/11/11 by Dan.Oconnor This @todo was addressed Change 3196368 on 2016/11/14 by Maciej.Mroz Results of FBlueprintNativeCodeGenModule::IsTargetedForReplacement are cashed - optimization (cooking time). Change 3196369 on 2016/11/14 by Maciej.Mroz CompileDisplaysBinaryBackend, CompileDisplaysTextBackend and bDisplaysLayout features (in [Kismet] in Engine.ini) are disabled in commandlets. They slow down BP compilation. Change 3196398 on 2016/11/14 by Ben.Cosh Reworked the tracking of latent and expansion event tracking in the blueprint compiler for use with the blueprint profiler. #Jira - UE-37364 - Crash: PIE with instrumented PlayerPawn_Generic added to AITestbed scene #Proj BlueprintProfiler, KismetCompiler. BlueprintGraph, Engine Change 3196410 on 2016/11/14 by Maciej.Mroz Fixed crash in UK2Node_Knot::PropagatePinTypeFromInput Change 3196852 on 2016/11/14 by Maciej.Mroz Fixed static analysis warning. Change 3196874 on 2016/11/14 by Maciej.Mroz #jira UE-37778 (the issue was already fixed, but it was reintroduced, when EDL support was added). ObjectImport->XObject is not filled prematurelly, so CreateExport is properly called each dynamic class. Change 3197469 on 2016/11/14 by Dan.Oconnor Fix for being able to make Sets and Maps of user defined structs that contained unhashable types (e.g. Rotator) Change 3197703 on 2016/11/14 by Dan.Oconnor Updated documentation comment to reflect current behavior Change 3198167 on 2016/11/15 by Maciej.Mroz Merged 3196582 from Dev-Core UE4 - Changed a check to a warning related to detaching linekrs twice. Seen in nativized BP version of platformer game. Change 3198433 on 2016/11/15 by Ryan.Rauschkolb Fixed Copy/pasting variable nodes hides them from a reference search #UE-31606 Change 3198811 on 2016/11/15 by Maciej.Mroz Fixed Knot node - it will use/propagate the type from input connection, if it's possible (intstead of the type from output connection). Change 3198866 on 2016/11/15 by Maciej.Mroz #jira UE-38578 Fixed infinite loading of DynamicClass in EDL. Change 3199045 on 2016/11/15 by Phillip.Kavan [UE-27402] Fix attached Actor-based Blueprint instance root component relative transform values after reconstruction. change summary: - modified FActorComponentInstanceData's ctor to exclude relative transform properties when caching root component values. #jira UE-27402 Change 3200703 on 2016/11/16 by Mike.Beach Marking the ease node explicitly as pure, which makes it so we can prune it from graphs when it is unused. #jira UE-38453 Change 3201115 on 2016/11/16 by Maciej.Mroz Nativization + EDL: "Dynamic" objects are processed by FAsyncPackage::PostLoadDeferredObjects, so the EInternalObjectFlags::AsyncLoading flag is properly cleared. Change 3201749 on 2016/11/17 by Maciej.Mroz In EDL a package containig a dynamic class has PKG_CompiledIn flag (the same like without EDL). Change 3202577 on 2016/11/17 by Mike.Beach Accounting for a change in our intermediate node mapping - the old list no longer maps expanded nodes to macro instances (instead it maps to the corresponding node in the macro graph), so we had to use a new mapping meant for this. #jira UE-35609 Change 3204803 on 2016/11/18 by Phillip.Kavan [UE-38607] Implicitly turn on Blueprint class nativization for dependencies. change summary: - added a UBlueprint::PostEditChangeProperty() override method to handle this. #jira UE-38607 Change 3204812 on 2016/11/18 by Phillip.Kavan [UE-38580] Implicitly turn on the "nativize" project setting when enabling nativize for any Blueprint class. change summary: - modified UBlueprint::PostEditChangeProperty() to update project packaging settings if necessary #jira UE-38580 Change 3204818 on 2016/11/18 by Phillip.Kavan [UE-38725] Interface class dependencies that are not enabled for nativization will now raise an error during nativized cooks. change summary: - modified FBlueprintNativeCodeGenModule::IsTargetedForReplacement() to check interface class dependencies in addition to parent class dependencies. #jira UE-38725 Change 3204963 on 2016/11/18 by Dan.Oconnor Create a transaction when using UBlueprintFunctionNodeSpawner* directly #jira UE-36439 Change 3206510 on 2016/11/21 by Mike.Beach Adding math-expression aliases for dot and cross functions ("dot" and "cross" respectively). #jira UEBP-71 Change 3206547 on 2016/11/21 by Mike.Beach Exposing GetReflectionVector() to Blueprints. #jira UEBP-70 Change 3206658 on 2016/11/21 by Dan.Oconnor Fix for compile error, digging out authorative class from trash class. Mirror of 3206638 from Odin #jira None Change 3207579 on 2016/11/22 by Mike.Beach No longer enforcing the requirement that game UFunctions have to have a category (making writing of game code easier). #jira UE-18093 Change 3207956 on 2016/11/22 by Phillip.Kavan [UE-38690] Fix a regression in which nested scene component subobjects would no longer be registered after construction of an instance-added component in IWCE. change summary: - modified the IWCE path in SSCSEditor::AddNewComponent() to ensure that any components added as a result of instancing the newly-added component are also registered. - modified AActor::ExecuteConstruction() to ensure that non-scene, native nested component subobjects that might be created as a result of SCS execution are also registered (previously it was only considering non-scene components that were explicitly created by the SCS, or that inherited the creation method of the instance that created it). #jira UE-38690 Change 3208217 on 2016/11/22 by Mike.Beach Modified fix (originally from Ryan.Rauschkolb, CL 3186023): Fixed unable to set struct variable name if name includes space #jira UE-28435 Change 3208347 on 2016/11/22 by Mike.Beach Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints) Change 3208688 on 2016/11/23 by Ben.Cosh Made a minor change that forces debugging references to the PIE world when the play in editor world is changed. This is intended to better handle mutliple game instance/world debugging scenarios. #Jira UE-26386 - Can't hit breakpoints in blueprints for level script for server instances #Proj Engine, UnrealEd Change 3208712 on 2016/11/23 by Ben.Cosh Improved handling of unwired transform struct terminal expression's in the blueprint VM compiler to remove an errant warning. #Jira UE-32401 - "ImportText: Missing opening parenthesis" message, when a function returns Transform #Proj KismetCompiler Change 3209457 on 2016/11/23 by Phillip.Kavan [UE-30479] Fix inability to edit the ISMC instance array on Actor instances when the ISMC is inherited from a Blueprint class. change summary: - added PPF_ForceTaggedSerialization as a means to override the CPF_SkipSerialization flag when explicit serialization of the property value is needed - modified UProperty::ShouldSerializeValue() to check for and handle the PPF_ForceTaggedSerialization flag when the CPF_SkipSerialization flag is present - modified UActorComponent::DetermineUCSModifiedProperties() to add the PPF_ForceTaggedSerialization flag to the custom FArchive impl - modified FActorComponentInstanceData::FActorComponentInstanceData() to add the PPF_ForceTaggedSerialization flag to the custom FObjectWriter impl - modified FActorComponentInstanceData::ApplyToComponent() to add the PPF_ForceTaggedSerialization flag to the custom FObjectReader impl #jira UE-30479 Change 3209758 on 2016/11/24 by Maciej.Mroz #jira UE-38979 Nativization: fixed error when a BP implements a native interface. FBlueprintNativeCodeGenModule::IsTargetedForReplacement will return "DontReplace" for native class. Change 3210376 on 2016/11/25 by Maciej.Mroz #jira UE-39028 Fixed FBlueprintNativeCodeGenModule::FindReplacedNameAndOuter Components in nativized BPCG SCS have replaced outer object and name while cooking. Change 3210936 on 2016/11/28 by Phillip.Kavan Minor revision to try and avoid a potentially expensive Contains() call when possible. Change 3211527 on 2016/11/28 by Maciej.Mroz Fixed map of names cooked in packages in nativized build. Change 3211969 on 2016/11/28 by Mike.Beach Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints) Change 3212328 on 2016/11/28 by Dan.Oconnor Enum, pointer and arithmetic specializations for THasGetTypeHash, as VC doesn't detect them properly. TIsEnum moved to its own header. Submitted on behalf of steve.robb Change 3212398 on 2016/11/28 by Dan.Oconnor Build fix, this function is part of another change Change 3212442 on 2016/11/28 by Dan.Oconnor UHT now supports structs in TMap and TSet, misc. fixes to PropertyStruct's PropertyFlags detecting whether the struct type is hashable (all HasGetTypeHash flags are now computed from THasGetTypeHash). Various fixes for generating TMap/TSet code from blueprints Change 3212578 on 2016/11/28 by Dan.Oconnor Rename RegisterClass to avoid collsion with RegistClass macro in generated code Change 3213668 on 2016/11/29 by Dan.Oconnor Fix for missing CDO when instatiating some subobjects in nativized BPs #jira UE-34980 Change 3213737 on 2016/11/29 by Dan.Oconnor Added GetTypeHash implementation to UEnumProperty #jira UE-39091 Change 3215225 on 2016/11/30 by Maciej.Mroz Bunch of changes required for nativized Orion to work with EDL. - ClientOnly, ServerOnly and EditorOnly assets are properly distinguished and handled - Introduced FCompilerNativizationOptions - fixed inproper references to BP instead of BPGC - fixed generated delegate name - hack for DefaultRootNode UE-39168 - improved NativeCodeGenrationTool - various minor improvements Change 3216363 on 2016/11/30 by Dan.Oconnor Better fix for discrepency between UUserDefinedEnum::GetEnumText and UEnum::GetEnumText. Without meta data we could not look up display names, so I'm writing out the display names into a function in the BP cpp backend. This function could be generated by UHT if we wanted to correct this odd behavior for native enums #jira UE-27735 Change 3217168 on 2016/12/01 by Maciej.Mroz #jira UE-35390 Nativization: Fixed compilation warning C4458: declaration of 'CurrentState' hides class member Disabled warning C4996 (deprecated) in nativized code. Change 3217320 on 2016/12/01 by Phillip.Kavan [UE-38652] Selecting Blueprint assets for nativization is now integrated into the project's configuration. change summary: - added EProjectPackagingBlueprintNativizationMethod - deprecated the 'bNativizeBlueprintAssets' and 'bNativizeOnlySelectedBlueprints' flags in favor of a new 'BlueprintNativizationMethod' config property in UProjectPackagingSettings - added a new 'NativizeBlueprintAssets' config property to UProjectPackagingSettings to track/store the list of Blueprints to be nativized when the exclusive method (whitelist) is selected - added a PostInitProperties() override to UProjectPackagingSettings; implemented to migrate from the deprecated config properties to the new method enum type - updated FMainFrameActionCallbacks::PackageProject() to migrate to checking the enum type - updated FBlueprintNativeCodeGenModule::IsTargetedForReplacement() to migrate to checking the enum type - modified UProjectPackagingSettings::CanEditChange() to enable editing of the nativization whitelist only when the "exclusive" method is active - modified UProjectPackagingSettings::PostEditChangeProperty() to add a new case for handling changes to the whitelist; changes are propagated to any Blueprint assets that are loaded - added new Add/RemoveBlueprintAssetFromNativizationList() APIs to UProjectPackagingSettings for assisting with adding/removing Blueprint assets to/from the exclusive list (whitelist) - deprecated the 'bNativize' flag in UBlueprint in favor of a new transient 'bSelectedForNativization' flag that is no longer serialized; this now caches whether or not the asset is present in the whitelist in the project config - modified UBlueprint::Serialize() to both migrate from the deprecated flag to the project config/transient flag on load, as well as to propagate the value of the transient flag back to the project config on save. this means that if the user changes the value of the transient flag through the Details view, that change won't be reflected back to the project config until the Blueprint is actually saved (saving the value to the config rather than serializing to the asset) - modified UBlueprint::PostEditChangeProperty() to remove code that was previously updating the project configuration at edit time. this functionality has been relocated to Serialize() (save time) instead. notes: - also completes UE-38636 (task: consolidate config options into a single drop-down) #jira UE-38652 Change 3218124 on 2016/12/01 by Dan.Oconnor CPF_HasGetValueTypeHash flag was not set on native UEnumProperties #jira UE-39181 Change 3218168 on 2016/12/01 by Phillip.Kavan Fix local var name that shadows a function param (CIS fix). Change 3219117 on 2016/12/02 by Maciej.Mroz #jira UE-39241 "warning C4458: declaration of XXX hides class member" In Nativized Code Nativization: Fixed compilation warning C4458: when local function variable hides a class variable. Names of local variables in funvtions have prefix "bpfv__". Change 3219201 on 2016/12/02 by Mike.Beach Keeping the "Select All Input Nodes" option from infinitely recurssing by blocking on nodes it has already selected. #jira UE-38988 Change 3219247 on 2016/12/02 by Mike.Beach Fixing CIS shadow variable warning from my last check in (CL 3219201). Change 3219332 on 2016/12/02 by Maciej.Mroz #jira HeaderParser: "private:" specifier is lost in FGameplayTag::TagName Workaround for UE-38231 Change 3219381 on 2016/12/02 by Mike.Beach Accounting for cyclic compile issues in cast-node's validate function, making it check the authoratative class instead of the current type. Also down grading some of the warnings to notes (suggesting the users don't need the cast). #jira UE-39272 Change 3220224 on 2016/12/02 by Dan.Oconnor Reduce font size for compact nodes Change 3220476 on 2016/12/03 by Maciej.Mroz #jira UE-35390 Better fix for UE-35390 Disabled deprecation warnings in nativized code. Change 3221637 on 2016/12/05 by Maciej.Mroz #jira UEBP-245 Nativization: Forced ImportCreation while InitialLoad for DynamicClasses. Change 3222306 on 2016/12/05 by Dan.Oconnor Support for default values of TMap and TSet local variables #jira UE-39239 Change 3222383 on 2016/12/05 by Dan.Oconnor Fixed bug in Blueprint TMap function for getting values out of a TMap Change 3222427 on 2016/12/05 by Mike.Beach Preventing ChildActorTemplate fixups from occuring on component load, when they may instead be a placeholder object (a byproduct of deferred Blueprint loading - a guard against cyclic load problems). #jira UE-39323 Change 3222679 on 2016/12/05 by Dan.Oconnor Remove unused code. Had no sideeffects, other than potential for leak when struct with non-trivial dtor was allocated here. Change 3222719 on 2016/12/05 by Dan.Oconnor Earlier detection of invalid native map/set properties. These generate a compile error if any TMap/TSet functions are used, but will slip by undetected if not used. Working on static assert to catch them. #jira UE-39338 Change 3224375 on 2016/12/06 by Dan.Oconnor Add tags for testing of array diffing Change 3224507 on 2016/12/07 by Phillip.Kavan [UE-39055] Fix a crash caused by an object name collision that could occur when loading some older Blueprint assets. change summary: - added UInheritableComponentHandler::FixComponentTemplateName() - modified UInheritableComponentHandler::PostLoad() to check for and correct stale records that cause a collision with the corrected name - added a UInheritableComponentHandler::Serialize() override to ensure that UsingCustomVersion() is called for the asset containing the ICH (already happening in UBlueprint::Serialize(), but added for consistency with other usage) - modified USimpleConstructionScript::Serialize() to ensure that UsingCustomVersion() is called for the asset containing the SCS (same reason as above) #jira UE-39055 Change 3225572 on 2016/12/07 by Samuel.Proctor Test assets for TSet/TMap testing. Includes new native class for testing containers. #rb none Change 3225577 on 2016/12/07 by Samuel.Proctor New test map for Array, TSet and Tmap testing. Change 3226281 on 2016/12/07 by Dan.Oconnor Container test asset, needs to be in p4 for diff tool tests. Change 3226345 on 2016/12/07 by Dan.Oconnor Another revision of test data Change 3228496 on 2016/12/09 by Ben.Cosh This change adds extra information to component template arrays so that the component class can be determined in builds that strip out objects of certain class types such as the editor dedicated server build. #Jira UE-38842 - "LogBlueprint:Error: [Compiler BP_Skybox_World_RandomTrees_01] Error Can't connect pins ReturnValue and Target" after entering a lobby in a synced server #Proj KismetCompiler, BlueprintGraph, UnrealEd, Core, Engine, Kismet, BlueprintCompilerCppBackend Change 3230120 on 2016/12/09 by Dan.Oconnor Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints) Change 3230700 on 2016/12/12 by Samuel.Proctor Removing some array test properties from container test class that were not needed. Also updated struct element to better reflect testing purpose. #rb none Change 3230926 on 2016/12/12 by Samuel.Proctor Missed a file on previous container test native QA asset checkin. #rb none Change 3231246 on 2016/12/12 by Dan.Oconnor PR #3003: New Feature: In-editor diff of arrays and structs now highlights diff. (Contributed by CA-ADuran). I've added TSet and TMap support as well. Change 3231311 on 2016/12/12 by Dan.Oconnor Handle class load failure #jira UE-39480 Change 3231387 on 2016/12/12 by Dan.Oconnor Shadow variable fixes Change 3231501 on 2016/12/12 by Dan.Oconnor More shadow fixes Change 3231584 on 2016/12/12 by Maciej.Mroz #jira UE-39636 Replaced obsolate macro usage. #fyi Dan.Oconnor Change 3231685 on 2016/12/12 by Mike.Beach PR #3032: Fixed category for IsValidIndex (Contributed by elFarto) #jira UE-39660 Change 3231689 on 2016/12/12 by Maciej.Mroz Nativization: Fixed Dependency list generation. Change 3231765 on 2016/12/12 by Phillip.Kavan [UE-38903] Auto-enable exclusive Blueprint nativization only after explicitly selecting the first asset. change summary: - fixed up the auto-enable logic on save in UBlueprint::Serialize() #jira UE-38903 #fyi Maciej.Mroz Change 3231837 on 2016/12/12 by Dan.Oconnor Restore hack to keep objects referenced by bytecode alive while in editor #jira UE-38486 Change 3232085 on 2016/12/13 by Phillip.Kavan Compile fix. Change 3232435 on 2016/12/13 by Ben.Cosh Fix for a bug introduced in CL 3228496 that caused component templates to fail to be identified by name and resulted in blueprint compilation issues for add component nodes. #Jira UE-39623 - Unknown template referenced by Add Component Node #Proj BlueprintGraph, Engine Change 3232437 on 2016/12/13 by Maciej.Mroz #jira UE-33021 Remove an obsolete warning. Change 3232564 on 2016/12/13 by Ben.Cosh This adds extra component template renaming propagation and checking for the blueprint generated class and blueprint skeleton class. #Jira UE-39623 - Unknown template referenced by Add Component Node #Proj BlueprintGraph - Implementing a bit of review feedback and some safety checking. Change 3232598 on 2016/12/13 by Maciej.Mroz Nativization: stati functions cannot be const, so no workaound (_Inner function) specyfic to const functions is necessary #jira UE-39518 Change 3232601 on 2016/12/13 by Phillip.Kavan [UE-38975] Warn on BuildCookRun or a standalone cook when the -nativizeAssets flag is omitted from the command line for a nativization-enabled project. change summary: - added 'bWarnIfPackagedWithoutNativizationFlag' to UProjectPackagingSettings (default = true) - modified UCookOnTheFlyServer::StartCookByTheBook() to check for the presence of the -nativizeAssets flag and emit a warning for unexpected omission from the command line - modified UAT to include a warning for the BuildCookRun command when -build is specified with the same unexpected omission of the -nativizeAssets flag on the UAT command line #jira UE-38975 Change 3232749 on 2016/12/13 by Mike.Beach Moving Blueprint nativization out of the experimental category. #jira UE-39358 Change 3233043 on 2016/12/13 by Dan.Oconnor Various fixes for TSet/TMap nativization issues #jira UE-39634 Change 3233086 on 2016/12/13 by Dan.Oconnor Advanced Containers (TSet/TMap) no longer experimental Change 3233175 on 2016/12/13 by Mike.Beach Whitelising "Packaging" as an acceptable BP settings category (follow up to CL 3232749). #jira UE-39358 Change 3233182 on 2016/12/13 by Mike.Beach Exposing the editor setting "Show Action Menu Item Signatures" through the Blueprint Developer menu (for ease of access). Change 3233662 on 2016/12/13 by Phillip.Kavan [UE-39722] Fix a typo that led to a UAT runtime failure. #jira UE-39722 Change 3233710 on 2016/12/13 by Dan.Oconnor Clang template useage fix #jira UE-39742 Change 3233895 on 2016/12/13 by Dan.Oconnor Several fixes to crashes that occur when you delete a blueprint asset when its children are not loaded. #jira UE-39558 Change 3234443 on 2016/12/14 by Phillip.Kavan [UE-39354] Fix script VM crash on assignment to TSet/TMap variables. change summary: - modified FScriptBuilderBase::EmitDestinationExpression() to consider TSet/TMap value types in addition to TArray terms #jira UE-39354 Change 3234581 on 2016/12/14 by Mike.Beach Backing out fix for UE-38842 (CL 3228496/3232435/3232564) - mapping UBlueprintGeneratedClass's ComponentTemplates array to a new format was causing issues with deferred dependency loading during serialization (trying to extract type information from a placeholder object). We're opting for a smaller/simpler solution to UE-38842, which will be to store the component information on the node itself (not with the templates). #jira UE-39707 Change 3234729 on 2016/12/14 by Mike.Beach Making it so AddComponent nodes now track the component (class) type that they represent (in case the template cannot be spawned, like in -server w/ client-only components). #jira UE-38842 Change 3234805 on 2016/12/14 by Mike.Beach Fixing CIS shadowed variable warning. Change 3234830 on 2016/12/14 by Nick.Atamas Added extra debugging mechanisms to help track down duplicate item issues with TableViews. Change 3235075 on 2016/12/14 by Mike.Beach Creating a helper to better manage nested scope blocks added in generated code - on close, clears out cached local accessor variables that were added, so we don't use one that was declared inside the nested scope. #jira UE-39769 Change 3235213 on 2016/12/14 by Phillip.Kavan [UE-39790] Fix UAT compile issue after latest merge from Main. change summary: - migrated the BuildCookRun command's usage of the (deprecated) ConfigCacheIni to the new ConfigHierarchy API #jira UE-39790 Change 3235384 on 2016/12/14 by Mike.Beach Defaulting to excluding data-only Blueprints from nativization. Change 3235675 on 2016/12/14 by Nick.Atamas Hopefully fixed build. Added OnEnteredBadState delegate that lets users add arbitrary logging info when the List/Tree enters a bad state. Change 3235761 on 2016/12/14 by Mike.Beach Hopefully resolving CIS mac/ps4 build failures in Dev-BP for 4.15 integration. #jira UE-39800 Change 3235800 on 2016/12/14 by Mike.Beach More hopeful CIS mac/ps4 fixes for 4.15 integration. #jira UE-39800 [CL 3236017 by Mike Beach in Main branch]
2016-12-14 22:10:20 -05:00
SourceClass = SourceClass->GetAuthoritativeClass();
if (SourceClass == SourceType)
{
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
const FString SourcePinName = CastInput->PinFriendlyName.IsEmpty() ? CastInput->PinName.ToString() : CastInput->PinFriendlyName.ToString();
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3805092) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3623004 by Ben.Marsh Fix RemoteExecutor not taking the remote machine specs into account. Change 3623172 by Ben.Marsh UGS: Fix "More Info..." button not using P4 server override. Change 3628820 by Ben.Marsh PR #3979: Get working directory from task element, not tool node (Contributed by nullbus) Change 3630424 by Graeme.Thornton Make the AES key parameter const in FAES::EncryptData() Change 3632786 by Steve.Robb FString constructor fixed to not take an ignored void* parameter, which can be misleading. Change 3639534 by Ben.Marsh Remove old P4.NET library. Doesn't seem to be used by anything. Change 3640536 by Steve.Robb GitHub #4007 : Delete unnecessary specialization of MakeArrayView #jira UE-49617 Change 3641155 by Gil.Gribb UE4 - Speculative fix for problem with summary reading in FAsyncArchive2. Change 3643932 by Ben.Marsh Add an example build script for updating the version number, then compiling and staging the editor and tools to an output directory. Optionally submits at the end (requires -Submit argument). Change 3644825 by Ben.Marsh Use VSWHERE to find the location of MsBuild.exe, if available. https://github.com/EpicGames/UnrealEngine/pull/3879#issuecomment-329688645 Change 3647395 by Ben.Marsh Allow compiling of monolithic binaries from BuildEditorAndTools.xml, using the -set:GameTarget=FooGame -set:TargetPlatforms=Win32;Win64 options. Change 3650300 by Ben.Marsh UAT: Remove code that deletes cooked data on a failed cook. The engine should write packages out transactionally now (by writing to a temporary file and moving into place), and deleting the cooked data just prevents post-mortem analysis. Change 3650856 by Robert.Manuszewski Adding checks to prevent FlushAsyncLoading and LoadObject/LoadPackage from being called from any threads other than the game thread Change 3651022 by Gil.Gribb UE4 - Possible fix for mysterious ensure indicating problematic recursion in the pak precacher. Change 3658331 by Steve.Robb Fix for the parsing of large integer values. Change 3661958 by Gil.Gribb UE4 - Fixed rare hang in task graph. Change 3664021 by Robert.Manuszewski Fix for a potential GC crash caused by stale pointer in AnimInstanceProxy See https://udn.unrealengine.com/questions/392432/gc-issue-uaniminstancemontageinstances-empty-but-u.html Change 3664254 by Steve.Robb Use ANSI allocator when thread sanitizer is enabled. This allows the generation of more accurate and meaningful reports. Change 3664436 by Steve.Robb Use TUniquePtr instead of a thread-unsafe TSharedPtr to move data between threads. Change 3666461 by Graeme.Thornton Improvements to signing/encryption key embedding and runtime access - Changed method of embedding key into the executable to make it more secure - Added FAESKey class to wrap a 32 byte key Change 3666462 by Graeme.Thornton Cut ShooterGame AES key down to 32 characters Change 3677560 by Ben.Marsh PR #4074: UBT: Add include and library-related fields to module JSON output (Contributed by adamrehn) Change 3683534 by Steve.Robb Refactoring of enum/struct lookup during hot reload. Change 3683754 by Steve.Robb Alignment fixes to allow int64 on 32-bit platforms Support for integral types in IsAligned. Static asserts so that alignment functions will no longer be called with non-intergal, non-pointer types. Some fixes to existing code. Change 3686670 by Steve.Robb Fix for thread-unsafe modification of static array in FString::ParseIntoArrayWS. Change 3687540 by Ben.Marsh Fix all UBT/UAT output going to stderr rather than stdout. Change 3688931 by Gil.Gribb UE4 - Critical fix for a rare race condition in the pak file async IO layer. Change 3690000 by Graeme.Thornton Manual copy of 4.18 CL 3687869 Make UBT include the destination INI file for a given hierarchy if it exists Renamed VSCode enum value to VisualStudioCode, so it matches the source accessor plugin name Change 3690030 by Graeme.Thornton VSCode fixes - Source Code Accessor plugin changes. Add new interface method to open a solution at a given path - GameProjectUtils now uses the source navigation API to open solutions rather than hardcoding which solution file types to look for - Various fixes for vscode project file generation #jira UE-50554 Change 3690885 by Steve.Robb Atomic reads in FReferenceControllerOps<ESPMode::ThreadSafe>. Change 3691052 by Steve.Robb Free stats thread on shutdown. Change 3695138 by Steve.Robb AsConst helper function added. Change 3696627 by James.Hopkin Changed player controller iterator typedefs to use TWeakObjectPtr rather than the deprecated TAutoWeakObjectPtr (review-3606695) Change 3697099 by Steve.Robb GitHub #4105 : Removed redundant class access modifier Change 3697154 by Steve.Robb Removal of deprecated functions in delegates. Mutable lambdas to can now be bound to delegates. Change 3697180 by Steve.Robb GitHub #4115 : Incorrect CPPMacroType used for USoftClassProperty Change 3697239 by Steve.Robb Allow TArray::Insert to take an array with any allocator type. Change 3697269 by Steve.Robb RelocateConstructItems instead of MoveConstructItems. Change 3697558 by Steve.Robb New _GetRef functions for TArray, which return a reference to the newly-added element. Unit tests for these functions. Change 3699776 by Steve.Robb TSAN warning suppression around IAsyncReadRequest::bCompleteAndCallbackCalled. Change 3702397 by Steve.Robb TIsTrivial type trait. Change 3702569 by Steve.Robb Allow a TGuardValue to be assigned to a different type from the one being guarded. Change 3706644 by Robert.Manuszewski Different stack ingore count for development builds for FArchiveStackTrace Change 3709272 by Steve.Robb Removal of redundant UpdateVertices, which causes a race condition on the renderer thread. Change 3709452 by Robert.Manuszewski Fixed a bug where with async time limit set to a low value the async loading could hang because the linker would keep reloading the preload dependencies Change 3709454 by Robert.Manuszewski Added command line option -NOEDL to disable EDL Change 3709487 by Steve.Robb Remove use of PLATFORM_HAS_64BIT_ATOMICS, which is always 1. Change 3709645 by Ben.Marsh Fix race condition between multiple instances of UBT trying to write out the XML config cache. Change 3711193 by Ben.Marsh Add an editor setting for the shared DDC location to use. #jira UE-51487 Change 3713811 by Steve.Robb Update .modules files after a hot reload. Don't check for directory timestamp changes as a way of detecting new files if hot reloading with a makefile, as this is already done during makefile invalidation checks. Pass hotreload flags around in UBT instead of relying on global state. This fixes the hot reload iteration speed regression without also regressing the fix to UE-42205. #jira UE-51472 Change 3715654 by Steve.Robb GitHub #4156 : Fixed not compiling template function Algo::UpperBoundBy. Change 3718782 by Steve.Robb TSharedPtr, TSharedRef and TWeakPtr assignment are now implemented as copy-and-swap to avoid an invalid smart pointer state being visible to any destructors being called. Change 3720830 by Steve.Robb Initial import of TAtomic object wrapper, which guarantees atomic access to an object. Change 3720881 by Steve.Robb FCompression ThreadSanitizer data race fixes. Change 3722640 by Graeme.Thornton Guard network platform file heartbeat function with the socket critical section. Stop heartbeat from causing a crash when firing during async loading. #jira UE-51463 Change 3722655 by Steve.Robb Don't null name table because it's already zeroed at startup. Some tidy-ups. Change 3722754 by Steve.Robb Thread sanitizer fix. Small typo fix. Change 3722849 by Graeme.Thornton Improve "caching file" message in networkplatformfile so it says "Requesting file..." and is only output when we actually request the file from the server Change 3723081 by Steve.Robb TAtomic is now aligned to the underlying integer type. TAtomic will now static assert with a better error message when given an unsupported type. Define added for the maximum platform-supported atomic type, and used instead of a (wrong) hardcoded number. Misc renames. Change 3723270 by Ben.Marsh Include /d2cgsummary argument when running UBT with -Timing. Change 3723683 by Ben.Marsh Do not include documentation in the generated project files by default. Suspect that the 30,000 UDN files that get added to the solution take up memory and degrate performance. Change 3725422 by Robert.Manuszewski When serializing compressed archive with multithreaded compression enabled, wait for the oldest async task instead of spinning. Change 3725735 by Robert.Manuszewski Making all CheckDefaultSubobjects related functions const Change 3726167 by Steve.Robb FMinimalName::IsNone added. Change 3726458 by Steve.Robb TAtomic will no longer instantiate for types which are not exactly a size supported by the platform layer. Change 3726542 by Ben.Marsh UGS: Always include the project filename in the editor build command. The project may not be in one of the .uprojectdirs paths. Change 3726595 by Ben.Marsh Allow building multiple game targets in the example BuildEditorAndTools.xml script. Change 3726724 by Ben.Marsh Fix ambiguities in calculating root directory. (GitHub #4172) Change 3726959 by Ben.Marsh Make sure that AutomationTool uses the same list of preprocessor definitions when compiling *.target.cs files as UnrealBuildTool does. Change 3728437 by Steve.Robb VisitTupleElements now supports invocation of a functor taking arguments from multiple tuples in parallel. Some improved documentation. NOTE: This is a backward-incompatible change to VisitTupleElements. Any existing calls will need their arguments swapping. Change 3732262 by Gil.Gribb UE4 - Fixed rare hangs in the task graph. Change 3732755 by Steve.Robb Stats TSAN fixes. Optimizations to FCycleCounter::Start() to only read the stat name once. Change 3735000 by Robert.Manuszewski Always preload the AssetRegistry module on startup. even if EDL is disabled. Even without EDL, if the async loading thread is enabled the AssetRegistryModule will otherwise be loaded from the ASL thread and that will assert. Change 3735292 by Robert.Manuszewski Made sure component visualizer is removed from VisualizersForSelection when UnregisterComponentVisualizer() is called otherwise it may cause crashes when the engine terminates. Change 3735332 by Steve.Robb Refactoring of UDelegateProperty::Identical() to clarify logic. Fixed UMulticastDelegateProperty::Identical() to compare the bound function names. PPF_DeltaComparison removed, as it doesn't seem useful. Change 3737960 by Graeme.Thornton VSCode - Add launch task for generating project files for the given folder Change 3738398 by Graeme.Thornton Make Visual Studio source code accessor's module hotreload handler pass the 'save all files' message to the current accesor, rather than direct to the visual studio accessor #jira UE-51451 Change 3738405 by Graeme.Thornton VSCode: Format c/cpp settings strings using comment path formatting function Change 3738928 by Steve.Robb Fix for lack of null conditional operators in some older Monos. (replicated from CL# 3729574 in Release-4.18) #jira UE-51842 Change 3739135 by Ben.Marsh Fix being unable to package projects in a folder called "Wolf". This is only a restricted folder for Epic's Perforce history. #jira UE-51855 Change 3739360 by Ben.Marsh UAT: Fix issue with P4PORT setting not being parsed correctly. Change 3745959 by James.Hopkin #core Added ImplicitConv for safe upcasts to a specific required type, e.g. deduced delegate payload types Change 3746125 by Steve.Robb FName ThreadSanitizer fixes. Change 3747274 by Steve.Robb TSAN fix for FMediaTicker::Stopping. Change 3747618 by Steve.Robb ThreadSanitizer data race fix for FShaderCompileThreadRunnableBase::bForceFinish. Change 3747720 by Steve.Robb ThreadSanitizer fix for FMessageRouter::Stopping. Change 3749207 by Graeme.Thornton First pass of CryptoKeys plugin. Allows creation/editing/cycling of AES/RSA keys. Change 3749323 by Graeme.Thornton Fix UAT crash when only -targetplatform is specifiied Change 3749349 by Steve.Robb TSAN_SAFE guards around LockFreeList to silence ThreadSanitizer. Change 3749617 by Steve.Robb Logf static_assert for formatting string enabled. Change 3749897 by Steve.Robb FDebug::LogAssertFailedMessage static assert for formatting string enabled. Change 3754011 by Steve.Robb Static asserts that the allocator supports move. Move-enabled our allocators which don't support move. Change 3754227 by Ben.Marsh Fix build command line in generated projects missing a space before the compiler version override. #jira UE-52226 Change 3754562 by Ben.Marsh PR #4206: Replace deprecated wsprintf with secure swprintf for Bootstrap executable (Contributed by jessicafalk) Change 3755616 by Graeme.Thornton Runtime code for using the new crypto ini files to define signing/encryption keys #jira UE-46580 Change 3755666 by James.Hopkin Used ImplicitConv to remove Casts being used for up-casts #review-3745965 Change 3755671 by Graeme.Thornton Add log message in unrealpak to say which config file system it is using for crypto keys Change 3755672 by Graeme.Thornton Updating ShooterGame with new CryptoKeys based security setup Change 3756778 by Ben.Marsh Add support for running multiple jobs simultaneously on a single builder. When running job or agent setup, the --num-slots=X parameter defines the number of steps that can run simultaneously (EC procedures pass in the resource step limit). A lock file is created under the workspace root (D:\Build) and a reservation file is created for the first slot that can be allocated (slot-1, slot-2, etc...). The slot number is used to define the workspace name that should be used. Change 3758498 by Ben.Marsh Re-throw exceptions when a file cannot be deleted when cleaning a target. Change 3758921 by Steve.Robb ThreadSanitizer fix to FThreadSafeStaticStatBase::HighPerformanceEnable to do a relaxed atomic load on access. DoSetup() now returns the newly-allocated pointer, instead of reloading it from memory. Change 3760599 by Graeme.Thornton Added missing epic header comment to some new source files Change 3760642 by Steve.Robb ThreadSanitizer fix for concurrent access to GMainThreadBlockedOnRenderThread. Change 3760669 by Graeme.Thornton Improvement to OpenSSL based signing key generator. Generate a full RSA key then steal the primes from it, rather than generating the primes manually. Added a test mode to the cryptokeys commandlet to test signing key generation Change 3760711 by Steve.Robb ThreadSanitizer fixes to GIsRenderingThreadSuspended. Change 3760739 by Steve.Robb ThreadSanitizer fix for FQueuedThread::TimeToDie. Change 3760763 by Steve.Robb ThreadSanitizer fix for GRunRenderingThreadHeartbeat. Removal of unnecessary/dangerous initializer for GMainThreadBlockedOnRenderThread. Change 3760793 by Steve.Robb Some simple refactoring to remove some volatile reads of BufferStartPos and BufferEndPos. Change 3760817 by Steve.Robb ThreadSanitizer fixes for FAsyncWriter::BufferStartPos and BufferEndPos. Change 3761331 by Josh.Engebretson UnrealBuildTool enforcement of Development and Debug configurations in existing .csproj #jira UE-52416 Change 3761521 by Steve.Robb ThreadSanitizer fixes for FEvent::EventStartCycles and EventUniqueId. Change 3763117 by Graeme.Thornton PR #3722: Optimising FPaths::IsRelative() (Contributed by jovisgCL) Change 3763358 by Graeme.Thornton Ensure that all branches within FGenericPlatformMisc::RootDir() produce an absolute path with no duplicate slashes Remove relative->abs conversion of root dir from FPaths::MakeStandardFilename(), now that we know RootDir() always returns an absolute path Derived from the content of this PR: PR #3742: Treat RootDirectory the same way as Standardized (Contributed by TroutZhang) Change 3764058 by Graeme.Thornton Generate a .code-workspace file for the current workspace. Allows foreign projects to "mount" the UE4 folder so that the engine tasks are avaible, and all engine source is visible to VSCode for searching purposes #jira UE-52359 Change 3764705 by Steve.Robb Better handling of whitespace in ImportText_Internal() for set and map properties. Containers are now emptied upon import failure, to avoid leaving bad container states (unhashed, partial data). Fix to USetProperty's temp buffer size to avoid buffer overruns. Duplicate map keys are now skipped during import, same as USetProperty's behavior. Change 3764731 by Steve.Robb Don't re-run UHT if only source files have changed in the same folder as headers. This was already done for hot reload, but there's no reason why it should be limited to that. Change 3765923 by Graeme.Thornton VSCode - "taskName" -> "label" for C# build tasks Change 3766018 by Steve.Robb constexpr constructor for TAtomic. Change 3766037 by Steve.Robb Misc tidyings in HotReload.cpp. Change 3766046 by Steve.Robb ThreadSanitizer fixes to ENamedThreads::RenderThread and ENamedThreads::ENamedThreads_Local. Change 3766288 by Steve.Robb Improved efficiency of adding/removing elements to UGCObjectReferencer::ReferencedObjects. Change 3766374 by Josh.Engebretson Fix issue with ini quoted value comparison #jira UE-52066 Change 3766532 by Josh.Engebretson PR #3680: Added NetSerialize to FDateTime fixing UE-22533 (Contributed by druhasu) #jira UE-46156 Change 3766740 by Steve.Robb TMultiMap::Append added. Change 3767523 by Steve.Robb ThreadSanitizer fix for UE4Delegates_Private::GNextID. Change 3767601 by Steve.Robb ThreadSanitizer fix for FStats::GameThreadStatsFrame. Change 3770567 by Ben.Marsh Add a FAnnotatedArchiveFormatter interface which allows querying structural type information that may not be in binary archives. Change 3770826 by Ben.Marsh Move StructuredArchive implementation into Core, so primitive types can implement serialization overloads for it. Change 3770875 by Steve.Robb Redundant UScriptStruct::PostLoad removed, which was causing a race condition in async loading. This was re-establishing the CppStructOps, but that is unnecessary because native classes cannot change as a result of a load - only BP structs can, and they don't have CppStructOps. Change 3772167 by Ben.Marsh Add a context-free binary formatter that can serialize tagged data. This functions as a lower-overhead binary intermediate format for JSON data. Change 3772248 by Steve.Robb ThreadSanitizer fixes to FMalloc call counters. Change 3772383 by Ben.Marsh Separate archive metadata from FArchive into FArchiveContext, so it can be safely exposed to consumers of FStructuredArchive. Change 3772906 by Graeme.Thornton TextAssetCommandlet - Utility commandlet for testing/converting to text asset format Change 3772932 by Ben.Marsh Fix "String:" prefix not being stripped from escaped string values. Change 3772942 by Graeme.Thornton Add experimental setting to enable in-editor text asset format functionality Add "export to text" option into the content browser asset actions context menu Change 3772955 by Ben.Marsh Add a new "stream" compound type to FStructuredArchive, which allows serializing a sequence of elements similarly to an array, but without serializing an explicit size. Allows passing through data to an underlying binary archive without breaking compatibility. Change 3772963 by Ben.Marsh Allow querying record keys and stream lengths from annotated archive formatters, since these archives have markup for field boundaries. Change 3773010 by Graeme.Thornton Added CORE_API to FArchiveFromStructuredArchive Gave text asset format experimental option a slightly less random tooltip comment Change 3773057 by Ben.Marsh Add a flag to FArchive to determine whether the archive is text (IsTextFormat()). Add support for seeking within FArchiveFromStructuredArchive. For text formats, data is serialized to an in-memory buffer, with names and objects serialized as indices into an array. For non-text formats, data is serialized directly to the underlying archive. Also rename FStructuredArchive::TryEnterSlot() to TryEnterField(). Change 3773118 by Steve.Robb TSignedIntType and TUnsignedIntType type traits for getting an integer type of a given size. Change 3773122 by Steve.Robb TAtomic fixes for pointer arithmetic. TSignedIntType used instead of reimplementing its own trait. Change 3773123 by Steve.Robb Unit tests for TAtomic. Change 3773138 by Steve.Robb Run numeric tests on integer types instead of basic tests. Fix for compiler warnings when subtracting from unsigned atomics. Change 3773166 by Steve.Robb Refactoring of arithmetic operations into its own class, then basing the pointer and integral versions on that. Change 3774216 by Gil.Gribb UE4 - Fix rare crash in the pak precacher immediately after unmounting a pak file. Change 3774426 by Ben.Marsh Copy all C# tools to a staging directory before compiling them. This prevents access violations when compiling tools like iPhonePackager that reference DotNETCommon, and ensures we strip NotForLicensees folders out of them all. See: https://answers.unrealengine.com/questions/726010/418-will-not-build-from-source.html Change 3774658 by Ben.Marsh Improve error reporting while generating intellisense for project files. Include the name of the target being compiled, and allow project file generation to continue without it. Change 3775141 by Ben.Marsh Always output HTML5 diagnostics at "information" verbosity, to avoid every line being prefixed with "WARNING:" and screwing up the EC postprocessor. Change 3775459 by Ben.Marsh Removing .NET Framework Perforce DLL as runtime dependency of engine third party library. The actual library is linked statically. Change 3775522 by Ben.Marsh UGS: Treat .uproject and .uplugin files as code changes. Change 3775597 by Ben.Marsh Fix post-build steps for plugins not being executed. #jira UE-52754 Change 3777895 by Graeme.Thornton StructuredArchiveFromArchive - An adapter class for wrapping an existing FArchive with a structured archive Change 3777931 by Graeme.Thornton Refactored FArchiveUObjects serialization code into some static helpers Added FArchiveUObjectFromStructuredArchive which allows the adaption of a structured archive into an FArchive that supports the extra UObect serialization functions for weak/soft pointers Change 3777942 by Graeme.Thornton Added missing CORE_API to FStructuredArchive::FStream Added FStructuredArchive::FSlot insertion operator for char Added specialization of TArray<uint8> serializer for structured archives which serializes the contents as one value Change 3778084 by Graeme.Thornton Adding FPackageName::GetTextAssetPackageExtension() to access the file extension we use for text asset files Change 3778096 by Graeme.Thornton Add a constructor to FArchiveUObjectFromStructuredArchive that takes a slot and passes it to the base class Change 3778389 by Josh.Engebretson Fix an optimization issue with CPU benchmarking Add better support for debugging/testing local rocket builds UDN Link: https://udn.unrealengine.com/questions/400909/command-scalability-auto-gives-inaccurate-cpu-benc.html #jira UE-52192 Change 3778701 by Josh.Engebretson Ensure plugin content folders are mounted consistently. Fixes TryConvertFilenameToLongPackageName failing to work on plugin assets UDN Link: https://udn.unrealengine.com/questions/276386/tryconvertfilenametolongpackagename-fails-for-plug.html #jira UE-40317 Change 3778832 by Chad.Garyet Adding enterprise path support for PCB's for UGS Change 3780258 by Graeme.Thornton TextAssetCommandlet - Accumulate timings for loading packages and saving packages Change 3780463 by Graeme.Thornton CryptoKeys improvements - Enable CryptoKeys plugin by default - Attempt to inherit settings from the old system by default - Hide ini/index encryption settings from packaging settings and just inherit previous values into new system Minor UBT change to remove a trailing comma from the end of encryption/signing key binary strings Change 3780557 by Ben.Marsh Fix LoginFlow module not being precompiled for the binary release. Change 3780846 by Josh.Engebretson Improve filename to long package name resolution when provided a relative path Change 3780863 by Ben.Marsh UAT: Add a better error message when a C# project has an invalid reference. Change 3780911 by Ben.Marsh Update the BuildEditorAndTools.xml script to allow submitting archived binaries to Perforce. The "Submit To Perforce For UGS" node creates a zip of all the binaries that have been built, and submits it to the stream specified by the 'ArchiveStream' argument. Change 3780956 by Josh.Engebretson Add support for ! (RemoveKey) config command to UBT UDN Link: https://udn.unrealengine.com/questions/397267/index.html #jira UE-52033 Change 3782957 by Robert.Manuszewski UE4 - Fixed a linear search in EDL that caused performance problems for very large maps. Change 3784503 by Ben.Marsh Optimizations for FStructuredArchive: * Store the depth explicitly in element objects, to avoid having to loop through the scope stack to find it. * Prevent shrinking of arrays when removing elements. * Add an inline allocator to the scope and container stacks. Change 3784700 by Ben.Marsh Remove the inline allocator from FStructuredArchive; checking whether the inline or backup allocator is being used is slower than just allocating up-front. Change 3784989 by Ben.Marsh Compile out all the FStructuredArchive validation code when WITH_TEXT_ARCHIVE_SUPPORT = 0. Change 3786860 by Gil.Gribb UE4 - Remove no buffering flag from windows async IO because it disabled the disk cache entirely. Change 3787159 by Ben.Marsh Guard against UE4.0 backwards compatibility path when determining if an engine is a source distribution. Change 3787493 by Josh.Engebretson Parallel pak generation now uses MaxDegreeOfParallelism option which is now set to the number of CPU cores Moved cryptography settings parsing out of threaded CreatePak method to avoid concurrency issue in ConfigCache.TryReadFile Fix for multiple threads parsing ini keys (PR 3995) #PR 3995 #jira 52913 #jira 49503 Change 3787773 by Steve.Robb Fix for missing final values from FOREACH_ENUM_ macros. Change 3788287 by Ben.Marsh TBA: Add checks in debug builds that key names in maps and records for FStructuredArchive are unique. Change 3788678 by Ben.Marsh Fix compile error due to inability to instantiate TArray<> of forward declared struct. Convert set of key names to an array to avoid including Set.h in public header for FStructuredArchive. Change 3789353 by Graeme.Thornton Removed unused/rotten modes from TextAsset commandlet. Used existing "-iterations=n" switch to control a global iteration over the given command. Useful for performance testing. Change 3789396 by Ben.Marsh Move code to validate container keys/sizes into DO_GUARD_SLOW checks, and allocate container metadata instances dynamically to fix problems with references to things not declared in headers that can't be included from StructuredArchive.h Change 3789772 by Ben.Marsh Always strip trailing slashes from the end of paths specified by .build.cs files; they can cause quoted paths to be escaped on the command line. Change 3790003 by Ben.Marsh TBA: Rename FStructuredArchive::EElementType::Object to FStructuredArchive::EElementType::Record. Change 3790051 by Steve.Robb PIE is disabled during a hot reload. Hot reload in editor is disabled during PIE. Hot reload from IDE is deferred until after PIE is exited. Compiling multiple times before a hot reload (e.g. compiling multiple times in PIE) will now load the most recent change. #jira UE-20357 #jira UE-52137 Change 3790709 by Steve.Robb Better move support for TVariant. EVariantTypes switched over to using an enum class to aid debugger visualization. Change 3791422 by Ben.Marsh TBA: Return the type of a field from an annotated archive formatter at the point that we enter it, rather than querying all the time. Change 3791489 by Graeme.Thornton TBA: Change StructuredArchiveFromArchive adapter to use the archive.Open() result directly, now that it's a slot and not a record Change 3792344 by Ben.Marsh Improvements to base64 encoding library. * Now supports encoding and decoding with ANSICHAR and WIDECHAR implementations. * Added support for decoding base-64 blobs without padding marks. * Added support for decoding into pre-allocated buffer. * Added constexpr functions for determining the encoded and maximum decoded size of an input buffer. * Prevent writes past the end of allocated buffer (no longer need to manually remove padding bytes). Change 3792949 by Ben.Marsh TBA: Rename FAnnotatedArchiveFormatter to FAnnotatedStructuredArchiveFormatter. Change 3794078 by Robert.Manuszewski Fixing a crash that could happen when FGCObjects were constructed and destructed when shutting down the engine #jira UE-52392 Change 3794413 by Ben.Marsh TBA: Remove the element type parameter to SetScope(). It isn't really needed; we can just assume the element ID correctly identifies the item on the stack. Change 3794731 by Ben.Marsh TBA: Optimize creation of stack elements for empty slots in FStructuredArchive. This saves a lot of bookkeeping when serializing a large number of individual fields. Since only one slot can be active at a time (and it only exists temporarily, until we write into it), we can just store the element ID assigned to it in a member variable. Change 3795081 by Ben.Marsh UBT: Move LinuxCommon.cs into Platform/Linux folder. Change 3795137 by Ben.Marsh UBT: Allow modules to specify private compiler definitions from the build.cs file, only visible within that module (via the "PrivateDefinitions" property). Change 3795247 by Ben.Marsh Fix missing header when creating a new interface from the editor new code wizard. #jira UE-53174 Change 3796025 by Graeme.Thornton Fixed some deprecated "Definitions" warnings in OpenCV build files Change 3796103 by Graeme.Thornton Disable experimental text asset option - it does nothing useful yet. Change 3796157 by Graeme.Thornton Fix path type mismatch in visual studio source code accessor meaning that the DTE comms wouldn't identify a running instance of VS as having the current solution open. #jira UE-53206 Change 3796315 by Ben.Marsh Move Formatter to the correct position for initializer. #jira UE-53208 Change 3797082 by Ben.Marsh UAT: Work around for exception thrown by launching cook with "-platform=Android_ETC1 -targetplatform=Android -cookflavor=ETC1". Anrdoid_ETC1 is not a valid platform (it's a cook platform), and can't be parsed by UAT. #jira UE-53232 Change 3799050 by Ben.Marsh Make UnrealPak.version files writable for Mac and Linux. Change 3801012 by Graeme.Thornton VSCode - Update source accessor to use code workspace as it's target, rather than just the project directory Change 3801214 by Gil.Gribb UE4 - Remove assert to work around minor problem with lock free lists. #jira UE-49600 Change 3801219 by Steve.Robb WeakObjectPtrs now warn when casting away const. Change 3801299 by Graeme.Thornton Fix quote issue with foreign project build tasks on PC Change 3803292 by Graeme.Thornton Fix crash on startup when using cook-on-the-side. Force a flush of the asset registry background scanning when creating the cook-on-the-side platform registries Change 3803559 by Steve.Robb TSAN fix for FMalloc::MaxSingleAlloc. Change 3803735 by Graeme.Thornton Last set of cryptokeys changes - Added some comments for editor exposed settings - Split "encrypt assets" option into "encrypt uassets" and "encrypt all assets" Change 3803929 by Ben.Marsh UGS: Show an in-place error panel when a project fails to open, allowing the user to retry and have their tabs saved instead of creating a modal dialog. Change 3624590 by Steve.Robb AddReferencedObjects now generates a compile error with containers of UObject*s where the UObjectType is forward-declared, as these which won't be added to the reference collector. Tidy-up of existing calls to AddReferencedObjects. Change 3629473 by Ben.Marsh Build: Rename the option for embedding source server information in PDB files for installed engine builds. Change 3632894 by Steve.Robb VARARG* macros deprecated and usage replaced with variadic templates. Change 3640704 by Steve.Robb MakeWeakObjectPtr added, which deduces a TWeakObjectPtr type from a raw pointer type. Fix to TWeakObjectPtr's constructor which implicitly removed const. Fixes to everything which didn't compile as a result. Change 3650813 by Graeme.Thornton Removed FStartupPackages and associated code Change 3651000 by Ben.Marsh Return the stack size from FPlatformStackWalk::CaptureStackBacktrace() rather than checking for the first null pointer, to prevent truncated callstacks if parts of the stack are zeroed out. #jira UE-49980 Change 3690842 by Steve.Robb FPlatformAtomics::AtomicRead added - needs optimizing. AtomicRead() used in FThreadSafeCounter::GetValue(). Change 3699416 by Steve.Robb Fix to debugger visualization of TArray with a TInlineAllocator or TFixedAllocator. Improved readability of TSparseArray visualization. Change 3720812 by Steve.Robb Atomic functions for 8-bit and 16-bit. Android, Linux and Switch implementations now just use the Clang implementation. AtomicRead64 deprecated in favor of the int64* AtomicRead overload. Change 3722698 by Steve.Robb VS debugger visualizers for TAtomic. Change 3732270 by Steve.Robb Relaxed stores and loads. Change 3749315 by Graeme.Thornton If UAT is invoked with platforms in both the -platform and -targetplatform command line switches, build using all of them rather than just the ones in -targetplatform #jira UE-52034 Change 3750657 by Josh.Engebretson Fixed issue when debugging editor cook/package and project launch operations #jira UE-52207 Change 3758514 by Steve.Robb Fixes to FString::Printf having non-literals being passed as its formatting string. Change 3763356 by Steve.Robb ENamedThreads::RenderThread and ENamedThreads::RenderThread_Local encapsulated by getters and setters. Change 3770549 by Steve.Robb Removal of obsolete PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS and PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES. Tidy up of existing code which uses it. Change 3770553 by Ben.Marsh Adding structured serialization API to Core/CoreUObject for use with text-based assets. * FStructuredArchive abstracts an archive which is made up of compound types (records, arrays, and maps). Values are stored in slots within these types. * Records are string -> value dictionaries where the key names can be compiled out in non-editor builds or when WITH_TEXT_ARCHIVE_SUPPORT = 0. * Maps are string -> value dictionaries where the key names are present regardless of the build type. * Proxy objects are defined to express the context for serialization (FStructuredArchive::FRecord, FStructuredArchive::FArray, FStructuredArchive::FMap, FStructuredArchive::FSlot) which allows basic validation through static typing. These objects act as lightweight handles, and can be cheaply constructed and passed around on the stack. Most serialization to and from the archive is done through these objects. * Runtime checks perform additional validation to ensure that serialized data is well formed and written in a forward-only manner, regardless of the underlying archive type. * The actual input/output format is determined by a separate interface (FArchiveFormatter). Context validation (always causing matching LeaveArray for every EnterArray, etc...) is done by FStructuredArchive, so implementing these classes is fairly trivial. FArchiveFormatter can be de-virtualized in non-editor builds, where WITH_TEXT_ARCHIVE_SUPPORT = 0. * Includes implementations of FArchiveFormatter for binary and JSON formats. Change 3771105 by Steve.Robb Deprecation warnings for PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES and PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS. Fix for incorrect warning formatting on Clang platforms. Change 3771520 by Steve.Robb Start moving Clang-using platforms' pre-setup stuff into a Clang-specific header. Change 3771564 by Steve.Robb More common macros moved to the Clang pre-setup header. Change 3771613 by Steve.Robb EMIT_CUSTOM_WARNING_AT_LINE moved to ClangPlatformCompilerPreSetup.h. Change 3772881 by Ben.Marsh Add support for serializing FName and UObject through FStructuredArchive. In order to allow custom linker behavior when serializing objects: * The constructor to JSON input formatter now takes a delegate to convert a string object name into a UObject pointer. * The constructor to tagged binary formatter takes a delegate to serialize a UObject pointer into any form it chooses (likely an integer index into the import table) Object and name types are stored as strings in JSON, using an "Object:" or "Name:" prefix to differentiate them from regular strings. Any strings that already contain one of these prefixes are prepended with a "String:" prefix (as is any string that already has a "String:" prefix). Change 3772941 by Graeme.Thornton Make build work when including StructuredArchive.h from core container types Added standard header to new files Add structured archive serializer for TArray Fix bug in structured archive where containers weren't being popped from the scope stack Change 3772972 by Ben.Marsh Add an adapter which presents a legacy FArchive interface to a FStructuredArchive slot. Data is serialized into this slot as a stream of elements; raw data is buffered up into fixed size chunks, names and objects are serialized separately. When used with FBinaryArchiveFormatter, this should result in all data being passed through to the underlying archive in a backwards compatible way, wiith no additional bookkeeping fields. Change 3773006 by Ben.Marsh Rename FStructuredArchive::FRecord::EnterSlot() to EnterField(). Change 3773013 by Steve.Robb bUseInlining target rule added to UnrealBuildTool, which defaults to true, to allow inlining to be disabled for debugging purposes. Change 3774499 by Ben.Marsh Minor fixes for FStructuredArchive related classes: * Text-based archive formats are now compiled out when WITH_TEXT_ARCHIVE_SUPPORT = 0. * Fixed issue with FTaggedBinaryArchiveFormatter state becoming corrupted when looking ahead at field types. * FArchiveFieldName constructor is now explicit, to fix cases where strings were being passed directly to serialize functions. Change 3774600 by Ben.Marsh Add CopyFormattedData() function, which can copy data from one formatter to another. Add a test case to SerializationAPI that converts from data -> JSON -> binary -> JSON -> data. This function can be used to implement a generic visitor pattern, by implementing a FArchiveFormatter which receives the deserialized data. Change 3789721 by Ben.Marsh TBA: Split FTaggedBinaryArchiveFormatter into separate classes for reading and writing. Change 3789920 by Ben.Marsh TBA: Support automatic coercion between any numeric types in tagged binary archives. Also report the smallest type that can contain a value, rather than just in32/double. #jira UECORE-364 Change 3789982 by Ben.Marsh TBA: Change FStructuredArchive::Open() to return a slot, rather than a record, to make it easier to implement a raw FArchive adapter. Change 3792466 by Ben.Marsh TBA: Better handling of raw data in text based assets. Short sequences of binary data are Base64 encoded as a single string. Longer sequences are stored as an array of Base64 encoded lines, push a SHA1 hash to detect cases where the data was merged incorrectly. In order to allow inference of the correct type for a field, other fields called "Base64" will be escaped to "_Base64", and any field beginning with "_" will have an additional underscore inserted. Reading files back in reverses these transformations. Change 3792935 by Ben.Marsh TBA: Rename FArchiveFormatter to FStructuredArchiveFormatter for consistency with FStructuredArchive. Change 3795100 by Ben.Marsh UBT: Rename the ModuleRules Definitions property to PublicDefinitions, to make its semantics clearer. Change 3795106 by Ben.Marsh Replace all internal usages of ModuleRules.Definitions, and replace it with ModuleRules.PublicDefinitions. Change 3796275 by Ben.Marsh Fix paths to Version.h includes from resource files. Change 3800683 by Josh.Engebretson Remove WER from Mac and Linux crash reports in favor of unified runtime-xml format #jira UE-50073 Change 3803545 by Steve.Robb TWeakObjPtr const-dropping assignment fix. Fixes to change. [CL 3805231 by Ben Marsh in Main branch]
2017-12-12 18:32:45 -05:00
FText const WarningFormat = LOCTEXT("EqualObjectCastFmt", "'{0}' is already a '{1}', you don't need @@.");
MessageLog.Note( *FText::Format(WarningFormat, FText::FromString(SourcePinName), TargetType->GetDisplayNameText()).ToString(), this );
}
else if (SourceClass->IsChildOf(SourceType))
{
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
const FString SourcePinName = CastInput->PinFriendlyName.IsEmpty() ? CastInput->PinName.ToString() : CastInput->PinFriendlyName.ToString();
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3805092) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3623004 by Ben.Marsh Fix RemoteExecutor not taking the remote machine specs into account. Change 3623172 by Ben.Marsh UGS: Fix "More Info..." button not using P4 server override. Change 3628820 by Ben.Marsh PR #3979: Get working directory from task element, not tool node (Contributed by nullbus) Change 3630424 by Graeme.Thornton Make the AES key parameter const in FAES::EncryptData() Change 3632786 by Steve.Robb FString constructor fixed to not take an ignored void* parameter, which can be misleading. Change 3639534 by Ben.Marsh Remove old P4.NET library. Doesn't seem to be used by anything. Change 3640536 by Steve.Robb GitHub #4007 : Delete unnecessary specialization of MakeArrayView #jira UE-49617 Change 3641155 by Gil.Gribb UE4 - Speculative fix for problem with summary reading in FAsyncArchive2. Change 3643932 by Ben.Marsh Add an example build script for updating the version number, then compiling and staging the editor and tools to an output directory. Optionally submits at the end (requires -Submit argument). Change 3644825 by Ben.Marsh Use VSWHERE to find the location of MsBuild.exe, if available. https://github.com/EpicGames/UnrealEngine/pull/3879#issuecomment-329688645 Change 3647395 by Ben.Marsh Allow compiling of monolithic binaries from BuildEditorAndTools.xml, using the -set:GameTarget=FooGame -set:TargetPlatforms=Win32;Win64 options. Change 3650300 by Ben.Marsh UAT: Remove code that deletes cooked data on a failed cook. The engine should write packages out transactionally now (by writing to a temporary file and moving into place), and deleting the cooked data just prevents post-mortem analysis. Change 3650856 by Robert.Manuszewski Adding checks to prevent FlushAsyncLoading and LoadObject/LoadPackage from being called from any threads other than the game thread Change 3651022 by Gil.Gribb UE4 - Possible fix for mysterious ensure indicating problematic recursion in the pak precacher. Change 3658331 by Steve.Robb Fix for the parsing of large integer values. Change 3661958 by Gil.Gribb UE4 - Fixed rare hang in task graph. Change 3664021 by Robert.Manuszewski Fix for a potential GC crash caused by stale pointer in AnimInstanceProxy See https://udn.unrealengine.com/questions/392432/gc-issue-uaniminstancemontageinstances-empty-but-u.html Change 3664254 by Steve.Robb Use ANSI allocator when thread sanitizer is enabled. This allows the generation of more accurate and meaningful reports. Change 3664436 by Steve.Robb Use TUniquePtr instead of a thread-unsafe TSharedPtr to move data between threads. Change 3666461 by Graeme.Thornton Improvements to signing/encryption key embedding and runtime access - Changed method of embedding key into the executable to make it more secure - Added FAESKey class to wrap a 32 byte key Change 3666462 by Graeme.Thornton Cut ShooterGame AES key down to 32 characters Change 3677560 by Ben.Marsh PR #4074: UBT: Add include and library-related fields to module JSON output (Contributed by adamrehn) Change 3683534 by Steve.Robb Refactoring of enum/struct lookup during hot reload. Change 3683754 by Steve.Robb Alignment fixes to allow int64 on 32-bit platforms Support for integral types in IsAligned. Static asserts so that alignment functions will no longer be called with non-intergal, non-pointer types. Some fixes to existing code. Change 3686670 by Steve.Robb Fix for thread-unsafe modification of static array in FString::ParseIntoArrayWS. Change 3687540 by Ben.Marsh Fix all UBT/UAT output going to stderr rather than stdout. Change 3688931 by Gil.Gribb UE4 - Critical fix for a rare race condition in the pak file async IO layer. Change 3690000 by Graeme.Thornton Manual copy of 4.18 CL 3687869 Make UBT include the destination INI file for a given hierarchy if it exists Renamed VSCode enum value to VisualStudioCode, so it matches the source accessor plugin name Change 3690030 by Graeme.Thornton VSCode fixes - Source Code Accessor plugin changes. Add new interface method to open a solution at a given path - GameProjectUtils now uses the source navigation API to open solutions rather than hardcoding which solution file types to look for - Various fixes for vscode project file generation #jira UE-50554 Change 3690885 by Steve.Robb Atomic reads in FReferenceControllerOps<ESPMode::ThreadSafe>. Change 3691052 by Steve.Robb Free stats thread on shutdown. Change 3695138 by Steve.Robb AsConst helper function added. Change 3696627 by James.Hopkin Changed player controller iterator typedefs to use TWeakObjectPtr rather than the deprecated TAutoWeakObjectPtr (review-3606695) Change 3697099 by Steve.Robb GitHub #4105 : Removed redundant class access modifier Change 3697154 by Steve.Robb Removal of deprecated functions in delegates. Mutable lambdas to can now be bound to delegates. Change 3697180 by Steve.Robb GitHub #4115 : Incorrect CPPMacroType used for USoftClassProperty Change 3697239 by Steve.Robb Allow TArray::Insert to take an array with any allocator type. Change 3697269 by Steve.Robb RelocateConstructItems instead of MoveConstructItems. Change 3697558 by Steve.Robb New _GetRef functions for TArray, which return a reference to the newly-added element. Unit tests for these functions. Change 3699776 by Steve.Robb TSAN warning suppression around IAsyncReadRequest::bCompleteAndCallbackCalled. Change 3702397 by Steve.Robb TIsTrivial type trait. Change 3702569 by Steve.Robb Allow a TGuardValue to be assigned to a different type from the one being guarded. Change 3706644 by Robert.Manuszewski Different stack ingore count for development builds for FArchiveStackTrace Change 3709272 by Steve.Robb Removal of redundant UpdateVertices, which causes a race condition on the renderer thread. Change 3709452 by Robert.Manuszewski Fixed a bug where with async time limit set to a low value the async loading could hang because the linker would keep reloading the preload dependencies Change 3709454 by Robert.Manuszewski Added command line option -NOEDL to disable EDL Change 3709487 by Steve.Robb Remove use of PLATFORM_HAS_64BIT_ATOMICS, which is always 1. Change 3709645 by Ben.Marsh Fix race condition between multiple instances of UBT trying to write out the XML config cache. Change 3711193 by Ben.Marsh Add an editor setting for the shared DDC location to use. #jira UE-51487 Change 3713811 by Steve.Robb Update .modules files after a hot reload. Don't check for directory timestamp changes as a way of detecting new files if hot reloading with a makefile, as this is already done during makefile invalidation checks. Pass hotreload flags around in UBT instead of relying on global state. This fixes the hot reload iteration speed regression without also regressing the fix to UE-42205. #jira UE-51472 Change 3715654 by Steve.Robb GitHub #4156 : Fixed not compiling template function Algo::UpperBoundBy. Change 3718782 by Steve.Robb TSharedPtr, TSharedRef and TWeakPtr assignment are now implemented as copy-and-swap to avoid an invalid smart pointer state being visible to any destructors being called. Change 3720830 by Steve.Robb Initial import of TAtomic object wrapper, which guarantees atomic access to an object. Change 3720881 by Steve.Robb FCompression ThreadSanitizer data race fixes. Change 3722640 by Graeme.Thornton Guard network platform file heartbeat function with the socket critical section. Stop heartbeat from causing a crash when firing during async loading. #jira UE-51463 Change 3722655 by Steve.Robb Don't null name table because it's already zeroed at startup. Some tidy-ups. Change 3722754 by Steve.Robb Thread sanitizer fix. Small typo fix. Change 3722849 by Graeme.Thornton Improve "caching file" message in networkplatformfile so it says "Requesting file..." and is only output when we actually request the file from the server Change 3723081 by Steve.Robb TAtomic is now aligned to the underlying integer type. TAtomic will now static assert with a better error message when given an unsupported type. Define added for the maximum platform-supported atomic type, and used instead of a (wrong) hardcoded number. Misc renames. Change 3723270 by Ben.Marsh Include /d2cgsummary argument when running UBT with -Timing. Change 3723683 by Ben.Marsh Do not include documentation in the generated project files by default. Suspect that the 30,000 UDN files that get added to the solution take up memory and degrate performance. Change 3725422 by Robert.Manuszewski When serializing compressed archive with multithreaded compression enabled, wait for the oldest async task instead of spinning. Change 3725735 by Robert.Manuszewski Making all CheckDefaultSubobjects related functions const Change 3726167 by Steve.Robb FMinimalName::IsNone added. Change 3726458 by Steve.Robb TAtomic will no longer instantiate for types which are not exactly a size supported by the platform layer. Change 3726542 by Ben.Marsh UGS: Always include the project filename in the editor build command. The project may not be in one of the .uprojectdirs paths. Change 3726595 by Ben.Marsh Allow building multiple game targets in the example BuildEditorAndTools.xml script. Change 3726724 by Ben.Marsh Fix ambiguities in calculating root directory. (GitHub #4172) Change 3726959 by Ben.Marsh Make sure that AutomationTool uses the same list of preprocessor definitions when compiling *.target.cs files as UnrealBuildTool does. Change 3728437 by Steve.Robb VisitTupleElements now supports invocation of a functor taking arguments from multiple tuples in parallel. Some improved documentation. NOTE: This is a backward-incompatible change to VisitTupleElements. Any existing calls will need their arguments swapping. Change 3732262 by Gil.Gribb UE4 - Fixed rare hangs in the task graph. Change 3732755 by Steve.Robb Stats TSAN fixes. Optimizations to FCycleCounter::Start() to only read the stat name once. Change 3735000 by Robert.Manuszewski Always preload the AssetRegistry module on startup. even if EDL is disabled. Even without EDL, if the async loading thread is enabled the AssetRegistryModule will otherwise be loaded from the ASL thread and that will assert. Change 3735292 by Robert.Manuszewski Made sure component visualizer is removed from VisualizersForSelection when UnregisterComponentVisualizer() is called otherwise it may cause crashes when the engine terminates. Change 3735332 by Steve.Robb Refactoring of UDelegateProperty::Identical() to clarify logic. Fixed UMulticastDelegateProperty::Identical() to compare the bound function names. PPF_DeltaComparison removed, as it doesn't seem useful. Change 3737960 by Graeme.Thornton VSCode - Add launch task for generating project files for the given folder Change 3738398 by Graeme.Thornton Make Visual Studio source code accessor's module hotreload handler pass the 'save all files' message to the current accesor, rather than direct to the visual studio accessor #jira UE-51451 Change 3738405 by Graeme.Thornton VSCode: Format c/cpp settings strings using comment path formatting function Change 3738928 by Steve.Robb Fix for lack of null conditional operators in some older Monos. (replicated from CL# 3729574 in Release-4.18) #jira UE-51842 Change 3739135 by Ben.Marsh Fix being unable to package projects in a folder called "Wolf". This is only a restricted folder for Epic's Perforce history. #jira UE-51855 Change 3739360 by Ben.Marsh UAT: Fix issue with P4PORT setting not being parsed correctly. Change 3745959 by James.Hopkin #core Added ImplicitConv for safe upcasts to a specific required type, e.g. deduced delegate payload types Change 3746125 by Steve.Robb FName ThreadSanitizer fixes. Change 3747274 by Steve.Robb TSAN fix for FMediaTicker::Stopping. Change 3747618 by Steve.Robb ThreadSanitizer data race fix for FShaderCompileThreadRunnableBase::bForceFinish. Change 3747720 by Steve.Robb ThreadSanitizer fix for FMessageRouter::Stopping. Change 3749207 by Graeme.Thornton First pass of CryptoKeys plugin. Allows creation/editing/cycling of AES/RSA keys. Change 3749323 by Graeme.Thornton Fix UAT crash when only -targetplatform is specifiied Change 3749349 by Steve.Robb TSAN_SAFE guards around LockFreeList to silence ThreadSanitizer. Change 3749617 by Steve.Robb Logf static_assert for formatting string enabled. Change 3749897 by Steve.Robb FDebug::LogAssertFailedMessage static assert for formatting string enabled. Change 3754011 by Steve.Robb Static asserts that the allocator supports move. Move-enabled our allocators which don't support move. Change 3754227 by Ben.Marsh Fix build command line in generated projects missing a space before the compiler version override. #jira UE-52226 Change 3754562 by Ben.Marsh PR #4206: Replace deprecated wsprintf with secure swprintf for Bootstrap executable (Contributed by jessicafalk) Change 3755616 by Graeme.Thornton Runtime code for using the new crypto ini files to define signing/encryption keys #jira UE-46580 Change 3755666 by James.Hopkin Used ImplicitConv to remove Casts being used for up-casts #review-3745965 Change 3755671 by Graeme.Thornton Add log message in unrealpak to say which config file system it is using for crypto keys Change 3755672 by Graeme.Thornton Updating ShooterGame with new CryptoKeys based security setup Change 3756778 by Ben.Marsh Add support for running multiple jobs simultaneously on a single builder. When running job or agent setup, the --num-slots=X parameter defines the number of steps that can run simultaneously (EC procedures pass in the resource step limit). A lock file is created under the workspace root (D:\Build) and a reservation file is created for the first slot that can be allocated (slot-1, slot-2, etc...). The slot number is used to define the workspace name that should be used. Change 3758498 by Ben.Marsh Re-throw exceptions when a file cannot be deleted when cleaning a target. Change 3758921 by Steve.Robb ThreadSanitizer fix to FThreadSafeStaticStatBase::HighPerformanceEnable to do a relaxed atomic load on access. DoSetup() now returns the newly-allocated pointer, instead of reloading it from memory. Change 3760599 by Graeme.Thornton Added missing epic header comment to some new source files Change 3760642 by Steve.Robb ThreadSanitizer fix for concurrent access to GMainThreadBlockedOnRenderThread. Change 3760669 by Graeme.Thornton Improvement to OpenSSL based signing key generator. Generate a full RSA key then steal the primes from it, rather than generating the primes manually. Added a test mode to the cryptokeys commandlet to test signing key generation Change 3760711 by Steve.Robb ThreadSanitizer fixes to GIsRenderingThreadSuspended. Change 3760739 by Steve.Robb ThreadSanitizer fix for FQueuedThread::TimeToDie. Change 3760763 by Steve.Robb ThreadSanitizer fix for GRunRenderingThreadHeartbeat. Removal of unnecessary/dangerous initializer for GMainThreadBlockedOnRenderThread. Change 3760793 by Steve.Robb Some simple refactoring to remove some volatile reads of BufferStartPos and BufferEndPos. Change 3760817 by Steve.Robb ThreadSanitizer fixes for FAsyncWriter::BufferStartPos and BufferEndPos. Change 3761331 by Josh.Engebretson UnrealBuildTool enforcement of Development and Debug configurations in existing .csproj #jira UE-52416 Change 3761521 by Steve.Robb ThreadSanitizer fixes for FEvent::EventStartCycles and EventUniqueId. Change 3763117 by Graeme.Thornton PR #3722: Optimising FPaths::IsRelative() (Contributed by jovisgCL) Change 3763358 by Graeme.Thornton Ensure that all branches within FGenericPlatformMisc::RootDir() produce an absolute path with no duplicate slashes Remove relative->abs conversion of root dir from FPaths::MakeStandardFilename(), now that we know RootDir() always returns an absolute path Derived from the content of this PR: PR #3742: Treat RootDirectory the same way as Standardized (Contributed by TroutZhang) Change 3764058 by Graeme.Thornton Generate a .code-workspace file for the current workspace. Allows foreign projects to "mount" the UE4 folder so that the engine tasks are avaible, and all engine source is visible to VSCode for searching purposes #jira UE-52359 Change 3764705 by Steve.Robb Better handling of whitespace in ImportText_Internal() for set and map properties. Containers are now emptied upon import failure, to avoid leaving bad container states (unhashed, partial data). Fix to USetProperty's temp buffer size to avoid buffer overruns. Duplicate map keys are now skipped during import, same as USetProperty's behavior. Change 3764731 by Steve.Robb Don't re-run UHT if only source files have changed in the same folder as headers. This was already done for hot reload, but there's no reason why it should be limited to that. Change 3765923 by Graeme.Thornton VSCode - "taskName" -> "label" for C# build tasks Change 3766018 by Steve.Robb constexpr constructor for TAtomic. Change 3766037 by Steve.Robb Misc tidyings in HotReload.cpp. Change 3766046 by Steve.Robb ThreadSanitizer fixes to ENamedThreads::RenderThread and ENamedThreads::ENamedThreads_Local. Change 3766288 by Steve.Robb Improved efficiency of adding/removing elements to UGCObjectReferencer::ReferencedObjects. Change 3766374 by Josh.Engebretson Fix issue with ini quoted value comparison #jira UE-52066 Change 3766532 by Josh.Engebretson PR #3680: Added NetSerialize to FDateTime fixing UE-22533 (Contributed by druhasu) #jira UE-46156 Change 3766740 by Steve.Robb TMultiMap::Append added. Change 3767523 by Steve.Robb ThreadSanitizer fix for UE4Delegates_Private::GNextID. Change 3767601 by Steve.Robb ThreadSanitizer fix for FStats::GameThreadStatsFrame. Change 3770567 by Ben.Marsh Add a FAnnotatedArchiveFormatter interface which allows querying structural type information that may not be in binary archives. Change 3770826 by Ben.Marsh Move StructuredArchive implementation into Core, so primitive types can implement serialization overloads for it. Change 3770875 by Steve.Robb Redundant UScriptStruct::PostLoad removed, which was causing a race condition in async loading. This was re-establishing the CppStructOps, but that is unnecessary because native classes cannot change as a result of a load - only BP structs can, and they don't have CppStructOps. Change 3772167 by Ben.Marsh Add a context-free binary formatter that can serialize tagged data. This functions as a lower-overhead binary intermediate format for JSON data. Change 3772248 by Steve.Robb ThreadSanitizer fixes to FMalloc call counters. Change 3772383 by Ben.Marsh Separate archive metadata from FArchive into FArchiveContext, so it can be safely exposed to consumers of FStructuredArchive. Change 3772906 by Graeme.Thornton TextAssetCommandlet - Utility commandlet for testing/converting to text asset format Change 3772932 by Ben.Marsh Fix "String:" prefix not being stripped from escaped string values. Change 3772942 by Graeme.Thornton Add experimental setting to enable in-editor text asset format functionality Add "export to text" option into the content browser asset actions context menu Change 3772955 by Ben.Marsh Add a new "stream" compound type to FStructuredArchive, which allows serializing a sequence of elements similarly to an array, but without serializing an explicit size. Allows passing through data to an underlying binary archive without breaking compatibility. Change 3772963 by Ben.Marsh Allow querying record keys and stream lengths from annotated archive formatters, since these archives have markup for field boundaries. Change 3773010 by Graeme.Thornton Added CORE_API to FArchiveFromStructuredArchive Gave text asset format experimental option a slightly less random tooltip comment Change 3773057 by Ben.Marsh Add a flag to FArchive to determine whether the archive is text (IsTextFormat()). Add support for seeking within FArchiveFromStructuredArchive. For text formats, data is serialized to an in-memory buffer, with names and objects serialized as indices into an array. For non-text formats, data is serialized directly to the underlying archive. Also rename FStructuredArchive::TryEnterSlot() to TryEnterField(). Change 3773118 by Steve.Robb TSignedIntType and TUnsignedIntType type traits for getting an integer type of a given size. Change 3773122 by Steve.Robb TAtomic fixes for pointer arithmetic. TSignedIntType used instead of reimplementing its own trait. Change 3773123 by Steve.Robb Unit tests for TAtomic. Change 3773138 by Steve.Robb Run numeric tests on integer types instead of basic tests. Fix for compiler warnings when subtracting from unsigned atomics. Change 3773166 by Steve.Robb Refactoring of arithmetic operations into its own class, then basing the pointer and integral versions on that. Change 3774216 by Gil.Gribb UE4 - Fix rare crash in the pak precacher immediately after unmounting a pak file. Change 3774426 by Ben.Marsh Copy all C# tools to a staging directory before compiling them. This prevents access violations when compiling tools like iPhonePackager that reference DotNETCommon, and ensures we strip NotForLicensees folders out of them all. See: https://answers.unrealengine.com/questions/726010/418-will-not-build-from-source.html Change 3774658 by Ben.Marsh Improve error reporting while generating intellisense for project files. Include the name of the target being compiled, and allow project file generation to continue without it. Change 3775141 by Ben.Marsh Always output HTML5 diagnostics at "information" verbosity, to avoid every line being prefixed with "WARNING:" and screwing up the EC postprocessor. Change 3775459 by Ben.Marsh Removing .NET Framework Perforce DLL as runtime dependency of engine third party library. The actual library is linked statically. Change 3775522 by Ben.Marsh UGS: Treat .uproject and .uplugin files as code changes. Change 3775597 by Ben.Marsh Fix post-build steps for plugins not being executed. #jira UE-52754 Change 3777895 by Graeme.Thornton StructuredArchiveFromArchive - An adapter class for wrapping an existing FArchive with a structured archive Change 3777931 by Graeme.Thornton Refactored FArchiveUObjects serialization code into some static helpers Added FArchiveUObjectFromStructuredArchive which allows the adaption of a structured archive into an FArchive that supports the extra UObect serialization functions for weak/soft pointers Change 3777942 by Graeme.Thornton Added missing CORE_API to FStructuredArchive::FStream Added FStructuredArchive::FSlot insertion operator for char Added specialization of TArray<uint8> serializer for structured archives which serializes the contents as one value Change 3778084 by Graeme.Thornton Adding FPackageName::GetTextAssetPackageExtension() to access the file extension we use for text asset files Change 3778096 by Graeme.Thornton Add a constructor to FArchiveUObjectFromStructuredArchive that takes a slot and passes it to the base class Change 3778389 by Josh.Engebretson Fix an optimization issue with CPU benchmarking Add better support for debugging/testing local rocket builds UDN Link: https://udn.unrealengine.com/questions/400909/command-scalability-auto-gives-inaccurate-cpu-benc.html #jira UE-52192 Change 3778701 by Josh.Engebretson Ensure plugin content folders are mounted consistently. Fixes TryConvertFilenameToLongPackageName failing to work on plugin assets UDN Link: https://udn.unrealengine.com/questions/276386/tryconvertfilenametolongpackagename-fails-for-plug.html #jira UE-40317 Change 3778832 by Chad.Garyet Adding enterprise path support for PCB's for UGS Change 3780258 by Graeme.Thornton TextAssetCommandlet - Accumulate timings for loading packages and saving packages Change 3780463 by Graeme.Thornton CryptoKeys improvements - Enable CryptoKeys plugin by default - Attempt to inherit settings from the old system by default - Hide ini/index encryption settings from packaging settings and just inherit previous values into new system Minor UBT change to remove a trailing comma from the end of encryption/signing key binary strings Change 3780557 by Ben.Marsh Fix LoginFlow module not being precompiled for the binary release. Change 3780846 by Josh.Engebretson Improve filename to long package name resolution when provided a relative path Change 3780863 by Ben.Marsh UAT: Add a better error message when a C# project has an invalid reference. Change 3780911 by Ben.Marsh Update the BuildEditorAndTools.xml script to allow submitting archived binaries to Perforce. The "Submit To Perforce For UGS" node creates a zip of all the binaries that have been built, and submits it to the stream specified by the 'ArchiveStream' argument. Change 3780956 by Josh.Engebretson Add support for ! (RemoveKey) config command to UBT UDN Link: https://udn.unrealengine.com/questions/397267/index.html #jira UE-52033 Change 3782957 by Robert.Manuszewski UE4 - Fixed a linear search in EDL that caused performance problems for very large maps. Change 3784503 by Ben.Marsh Optimizations for FStructuredArchive: * Store the depth explicitly in element objects, to avoid having to loop through the scope stack to find it. * Prevent shrinking of arrays when removing elements. * Add an inline allocator to the scope and container stacks. Change 3784700 by Ben.Marsh Remove the inline allocator from FStructuredArchive; checking whether the inline or backup allocator is being used is slower than just allocating up-front. Change 3784989 by Ben.Marsh Compile out all the FStructuredArchive validation code when WITH_TEXT_ARCHIVE_SUPPORT = 0. Change 3786860 by Gil.Gribb UE4 - Remove no buffering flag from windows async IO because it disabled the disk cache entirely. Change 3787159 by Ben.Marsh Guard against UE4.0 backwards compatibility path when determining if an engine is a source distribution. Change 3787493 by Josh.Engebretson Parallel pak generation now uses MaxDegreeOfParallelism option which is now set to the number of CPU cores Moved cryptography settings parsing out of threaded CreatePak method to avoid concurrency issue in ConfigCache.TryReadFile Fix for multiple threads parsing ini keys (PR 3995) #PR 3995 #jira 52913 #jira 49503 Change 3787773 by Steve.Robb Fix for missing final values from FOREACH_ENUM_ macros. Change 3788287 by Ben.Marsh TBA: Add checks in debug builds that key names in maps and records for FStructuredArchive are unique. Change 3788678 by Ben.Marsh Fix compile error due to inability to instantiate TArray<> of forward declared struct. Convert set of key names to an array to avoid including Set.h in public header for FStructuredArchive. Change 3789353 by Graeme.Thornton Removed unused/rotten modes from TextAsset commandlet. Used existing "-iterations=n" switch to control a global iteration over the given command. Useful for performance testing. Change 3789396 by Ben.Marsh Move code to validate container keys/sizes into DO_GUARD_SLOW checks, and allocate container metadata instances dynamically to fix problems with references to things not declared in headers that can't be included from StructuredArchive.h Change 3789772 by Ben.Marsh Always strip trailing slashes from the end of paths specified by .build.cs files; they can cause quoted paths to be escaped on the command line. Change 3790003 by Ben.Marsh TBA: Rename FStructuredArchive::EElementType::Object to FStructuredArchive::EElementType::Record. Change 3790051 by Steve.Robb PIE is disabled during a hot reload. Hot reload in editor is disabled during PIE. Hot reload from IDE is deferred until after PIE is exited. Compiling multiple times before a hot reload (e.g. compiling multiple times in PIE) will now load the most recent change. #jira UE-20357 #jira UE-52137 Change 3790709 by Steve.Robb Better move support for TVariant. EVariantTypes switched over to using an enum class to aid debugger visualization. Change 3791422 by Ben.Marsh TBA: Return the type of a field from an annotated archive formatter at the point that we enter it, rather than querying all the time. Change 3791489 by Graeme.Thornton TBA: Change StructuredArchiveFromArchive adapter to use the archive.Open() result directly, now that it's a slot and not a record Change 3792344 by Ben.Marsh Improvements to base64 encoding library. * Now supports encoding and decoding with ANSICHAR and WIDECHAR implementations. * Added support for decoding base-64 blobs without padding marks. * Added support for decoding into pre-allocated buffer. * Added constexpr functions for determining the encoded and maximum decoded size of an input buffer. * Prevent writes past the end of allocated buffer (no longer need to manually remove padding bytes). Change 3792949 by Ben.Marsh TBA: Rename FAnnotatedArchiveFormatter to FAnnotatedStructuredArchiveFormatter. Change 3794078 by Robert.Manuszewski Fixing a crash that could happen when FGCObjects were constructed and destructed when shutting down the engine #jira UE-52392 Change 3794413 by Ben.Marsh TBA: Remove the element type parameter to SetScope(). It isn't really needed; we can just assume the element ID correctly identifies the item on the stack. Change 3794731 by Ben.Marsh TBA: Optimize creation of stack elements for empty slots in FStructuredArchive. This saves a lot of bookkeeping when serializing a large number of individual fields. Since only one slot can be active at a time (and it only exists temporarily, until we write into it), we can just store the element ID assigned to it in a member variable. Change 3795081 by Ben.Marsh UBT: Move LinuxCommon.cs into Platform/Linux folder. Change 3795137 by Ben.Marsh UBT: Allow modules to specify private compiler definitions from the build.cs file, only visible within that module (via the "PrivateDefinitions" property). Change 3795247 by Ben.Marsh Fix missing header when creating a new interface from the editor new code wizard. #jira UE-53174 Change 3796025 by Graeme.Thornton Fixed some deprecated "Definitions" warnings in OpenCV build files Change 3796103 by Graeme.Thornton Disable experimental text asset option - it does nothing useful yet. Change 3796157 by Graeme.Thornton Fix path type mismatch in visual studio source code accessor meaning that the DTE comms wouldn't identify a running instance of VS as having the current solution open. #jira UE-53206 Change 3796315 by Ben.Marsh Move Formatter to the correct position for initializer. #jira UE-53208 Change 3797082 by Ben.Marsh UAT: Work around for exception thrown by launching cook with "-platform=Android_ETC1 -targetplatform=Android -cookflavor=ETC1". Anrdoid_ETC1 is not a valid platform (it's a cook platform), and can't be parsed by UAT. #jira UE-53232 Change 3799050 by Ben.Marsh Make UnrealPak.version files writable for Mac and Linux. Change 3801012 by Graeme.Thornton VSCode - Update source accessor to use code workspace as it's target, rather than just the project directory Change 3801214 by Gil.Gribb UE4 - Remove assert to work around minor problem with lock free lists. #jira UE-49600 Change 3801219 by Steve.Robb WeakObjectPtrs now warn when casting away const. Change 3801299 by Graeme.Thornton Fix quote issue with foreign project build tasks on PC Change 3803292 by Graeme.Thornton Fix crash on startup when using cook-on-the-side. Force a flush of the asset registry background scanning when creating the cook-on-the-side platform registries Change 3803559 by Steve.Robb TSAN fix for FMalloc::MaxSingleAlloc. Change 3803735 by Graeme.Thornton Last set of cryptokeys changes - Added some comments for editor exposed settings - Split "encrypt assets" option into "encrypt uassets" and "encrypt all assets" Change 3803929 by Ben.Marsh UGS: Show an in-place error panel when a project fails to open, allowing the user to retry and have their tabs saved instead of creating a modal dialog. Change 3624590 by Steve.Robb AddReferencedObjects now generates a compile error with containers of UObject*s where the UObjectType is forward-declared, as these which won't be added to the reference collector. Tidy-up of existing calls to AddReferencedObjects. Change 3629473 by Ben.Marsh Build: Rename the option for embedding source server information in PDB files for installed engine builds. Change 3632894 by Steve.Robb VARARG* macros deprecated and usage replaced with variadic templates. Change 3640704 by Steve.Robb MakeWeakObjectPtr added, which deduces a TWeakObjectPtr type from a raw pointer type. Fix to TWeakObjectPtr's constructor which implicitly removed const. Fixes to everything which didn't compile as a result. Change 3650813 by Graeme.Thornton Removed FStartupPackages and associated code Change 3651000 by Ben.Marsh Return the stack size from FPlatformStackWalk::CaptureStackBacktrace() rather than checking for the first null pointer, to prevent truncated callstacks if parts of the stack are zeroed out. #jira UE-49980 Change 3690842 by Steve.Robb FPlatformAtomics::AtomicRead added - needs optimizing. AtomicRead() used in FThreadSafeCounter::GetValue(). Change 3699416 by Steve.Robb Fix to debugger visualization of TArray with a TInlineAllocator or TFixedAllocator. Improved readability of TSparseArray visualization. Change 3720812 by Steve.Robb Atomic functions for 8-bit and 16-bit. Android, Linux and Switch implementations now just use the Clang implementation. AtomicRead64 deprecated in favor of the int64* AtomicRead overload. Change 3722698 by Steve.Robb VS debugger visualizers for TAtomic. Change 3732270 by Steve.Robb Relaxed stores and loads. Change 3749315 by Graeme.Thornton If UAT is invoked with platforms in both the -platform and -targetplatform command line switches, build using all of them rather than just the ones in -targetplatform #jira UE-52034 Change 3750657 by Josh.Engebretson Fixed issue when debugging editor cook/package and project launch operations #jira UE-52207 Change 3758514 by Steve.Robb Fixes to FString::Printf having non-literals being passed as its formatting string. Change 3763356 by Steve.Robb ENamedThreads::RenderThread and ENamedThreads::RenderThread_Local encapsulated by getters and setters. Change 3770549 by Steve.Robb Removal of obsolete PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS and PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES. Tidy up of existing code which uses it. Change 3770553 by Ben.Marsh Adding structured serialization API to Core/CoreUObject for use with text-based assets. * FStructuredArchive abstracts an archive which is made up of compound types (records, arrays, and maps). Values are stored in slots within these types. * Records are string -> value dictionaries where the key names can be compiled out in non-editor builds or when WITH_TEXT_ARCHIVE_SUPPORT = 0. * Maps are string -> value dictionaries where the key names are present regardless of the build type. * Proxy objects are defined to express the context for serialization (FStructuredArchive::FRecord, FStructuredArchive::FArray, FStructuredArchive::FMap, FStructuredArchive::FSlot) which allows basic validation through static typing. These objects act as lightweight handles, and can be cheaply constructed and passed around on the stack. Most serialization to and from the archive is done through these objects. * Runtime checks perform additional validation to ensure that serialized data is well formed and written in a forward-only manner, regardless of the underlying archive type. * The actual input/output format is determined by a separate interface (FArchiveFormatter). Context validation (always causing matching LeaveArray for every EnterArray, etc...) is done by FStructuredArchive, so implementing these classes is fairly trivial. FArchiveFormatter can be de-virtualized in non-editor builds, where WITH_TEXT_ARCHIVE_SUPPORT = 0. * Includes implementations of FArchiveFormatter for binary and JSON formats. Change 3771105 by Steve.Robb Deprecation warnings for PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES and PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS. Fix for incorrect warning formatting on Clang platforms. Change 3771520 by Steve.Robb Start moving Clang-using platforms' pre-setup stuff into a Clang-specific header. Change 3771564 by Steve.Robb More common macros moved to the Clang pre-setup header. Change 3771613 by Steve.Robb EMIT_CUSTOM_WARNING_AT_LINE moved to ClangPlatformCompilerPreSetup.h. Change 3772881 by Ben.Marsh Add support for serializing FName and UObject through FStructuredArchive. In order to allow custom linker behavior when serializing objects: * The constructor to JSON input formatter now takes a delegate to convert a string object name into a UObject pointer. * The constructor to tagged binary formatter takes a delegate to serialize a UObject pointer into any form it chooses (likely an integer index into the import table) Object and name types are stored as strings in JSON, using an "Object:" or "Name:" prefix to differentiate them from regular strings. Any strings that already contain one of these prefixes are prepended with a "String:" prefix (as is any string that already has a "String:" prefix). Change 3772941 by Graeme.Thornton Make build work when including StructuredArchive.h from core container types Added standard header to new files Add structured archive serializer for TArray Fix bug in structured archive where containers weren't being popped from the scope stack Change 3772972 by Ben.Marsh Add an adapter which presents a legacy FArchive interface to a FStructuredArchive slot. Data is serialized into this slot as a stream of elements; raw data is buffered up into fixed size chunks, names and objects are serialized separately. When used with FBinaryArchiveFormatter, this should result in all data being passed through to the underlying archive in a backwards compatible way, wiith no additional bookkeeping fields. Change 3773006 by Ben.Marsh Rename FStructuredArchive::FRecord::EnterSlot() to EnterField(). Change 3773013 by Steve.Robb bUseInlining target rule added to UnrealBuildTool, which defaults to true, to allow inlining to be disabled for debugging purposes. Change 3774499 by Ben.Marsh Minor fixes for FStructuredArchive related classes: * Text-based archive formats are now compiled out when WITH_TEXT_ARCHIVE_SUPPORT = 0. * Fixed issue with FTaggedBinaryArchiveFormatter state becoming corrupted when looking ahead at field types. * FArchiveFieldName constructor is now explicit, to fix cases where strings were being passed directly to serialize functions. Change 3774600 by Ben.Marsh Add CopyFormattedData() function, which can copy data from one formatter to another. Add a test case to SerializationAPI that converts from data -> JSON -> binary -> JSON -> data. This function can be used to implement a generic visitor pattern, by implementing a FArchiveFormatter which receives the deserialized data. Change 3789721 by Ben.Marsh TBA: Split FTaggedBinaryArchiveFormatter into separate classes for reading and writing. Change 3789920 by Ben.Marsh TBA: Support automatic coercion between any numeric types in tagged binary archives. Also report the smallest type that can contain a value, rather than just in32/double. #jira UECORE-364 Change 3789982 by Ben.Marsh TBA: Change FStructuredArchive::Open() to return a slot, rather than a record, to make it easier to implement a raw FArchive adapter. Change 3792466 by Ben.Marsh TBA: Better handling of raw data in text based assets. Short sequences of binary data are Base64 encoded as a single string. Longer sequences are stored as an array of Base64 encoded lines, push a SHA1 hash to detect cases where the data was merged incorrectly. In order to allow inference of the correct type for a field, other fields called "Base64" will be escaped to "_Base64", and any field beginning with "_" will have an additional underscore inserted. Reading files back in reverses these transformations. Change 3792935 by Ben.Marsh TBA: Rename FArchiveFormatter to FStructuredArchiveFormatter for consistency with FStructuredArchive. Change 3795100 by Ben.Marsh UBT: Rename the ModuleRules Definitions property to PublicDefinitions, to make its semantics clearer. Change 3795106 by Ben.Marsh Replace all internal usages of ModuleRules.Definitions, and replace it with ModuleRules.PublicDefinitions. Change 3796275 by Ben.Marsh Fix paths to Version.h includes from resource files. Change 3800683 by Josh.Engebretson Remove WER from Mac and Linux crash reports in favor of unified runtime-xml format #jira UE-50073 Change 3803545 by Steve.Robb TWeakObjPtr const-dropping assignment fix. Fixes to change. [CL 3805231 by Ben Marsh in Main branch]
2017-12-12 18:32:45 -05:00
FText const WarningFormat = LOCTEXT("UnneededObjectCastFmt", "'{0}' is already a '{1}' (which inherits from '{2}'), so you don't need @@.");
MessageLog.Note( *FText::Format(WarningFormat, FText::FromString(SourcePinName), SourceClass->GetDisplayNameText(), TargetType->GetDisplayNameText()).ToString(), this );
}
else if (!SourceType->IsChildOf(SourceClass) && !FKismetEditorUtilities::IsClassABlueprintInterface(SourceType))
{
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3805092) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3623004 by Ben.Marsh Fix RemoteExecutor not taking the remote machine specs into account. Change 3623172 by Ben.Marsh UGS: Fix "More Info..." button not using P4 server override. Change 3628820 by Ben.Marsh PR #3979: Get working directory from task element, not tool node (Contributed by nullbus) Change 3630424 by Graeme.Thornton Make the AES key parameter const in FAES::EncryptData() Change 3632786 by Steve.Robb FString constructor fixed to not take an ignored void* parameter, which can be misleading. Change 3639534 by Ben.Marsh Remove old P4.NET library. Doesn't seem to be used by anything. Change 3640536 by Steve.Robb GitHub #4007 : Delete unnecessary specialization of MakeArrayView #jira UE-49617 Change 3641155 by Gil.Gribb UE4 - Speculative fix for problem with summary reading in FAsyncArchive2. Change 3643932 by Ben.Marsh Add an example build script for updating the version number, then compiling and staging the editor and tools to an output directory. Optionally submits at the end (requires -Submit argument). Change 3644825 by Ben.Marsh Use VSWHERE to find the location of MsBuild.exe, if available. https://github.com/EpicGames/UnrealEngine/pull/3879#issuecomment-329688645 Change 3647395 by Ben.Marsh Allow compiling of monolithic binaries from BuildEditorAndTools.xml, using the -set:GameTarget=FooGame -set:TargetPlatforms=Win32;Win64 options. Change 3650300 by Ben.Marsh UAT: Remove code that deletes cooked data on a failed cook. The engine should write packages out transactionally now (by writing to a temporary file and moving into place), and deleting the cooked data just prevents post-mortem analysis. Change 3650856 by Robert.Manuszewski Adding checks to prevent FlushAsyncLoading and LoadObject/LoadPackage from being called from any threads other than the game thread Change 3651022 by Gil.Gribb UE4 - Possible fix for mysterious ensure indicating problematic recursion in the pak precacher. Change 3658331 by Steve.Robb Fix for the parsing of large integer values. Change 3661958 by Gil.Gribb UE4 - Fixed rare hang in task graph. Change 3664021 by Robert.Manuszewski Fix for a potential GC crash caused by stale pointer in AnimInstanceProxy See https://udn.unrealengine.com/questions/392432/gc-issue-uaniminstancemontageinstances-empty-but-u.html Change 3664254 by Steve.Robb Use ANSI allocator when thread sanitizer is enabled. This allows the generation of more accurate and meaningful reports. Change 3664436 by Steve.Robb Use TUniquePtr instead of a thread-unsafe TSharedPtr to move data between threads. Change 3666461 by Graeme.Thornton Improvements to signing/encryption key embedding and runtime access - Changed method of embedding key into the executable to make it more secure - Added FAESKey class to wrap a 32 byte key Change 3666462 by Graeme.Thornton Cut ShooterGame AES key down to 32 characters Change 3677560 by Ben.Marsh PR #4074: UBT: Add include and library-related fields to module JSON output (Contributed by adamrehn) Change 3683534 by Steve.Robb Refactoring of enum/struct lookup during hot reload. Change 3683754 by Steve.Robb Alignment fixes to allow int64 on 32-bit platforms Support for integral types in IsAligned. Static asserts so that alignment functions will no longer be called with non-intergal, non-pointer types. Some fixes to existing code. Change 3686670 by Steve.Robb Fix for thread-unsafe modification of static array in FString::ParseIntoArrayWS. Change 3687540 by Ben.Marsh Fix all UBT/UAT output going to stderr rather than stdout. Change 3688931 by Gil.Gribb UE4 - Critical fix for a rare race condition in the pak file async IO layer. Change 3690000 by Graeme.Thornton Manual copy of 4.18 CL 3687869 Make UBT include the destination INI file for a given hierarchy if it exists Renamed VSCode enum value to VisualStudioCode, so it matches the source accessor plugin name Change 3690030 by Graeme.Thornton VSCode fixes - Source Code Accessor plugin changes. Add new interface method to open a solution at a given path - GameProjectUtils now uses the source navigation API to open solutions rather than hardcoding which solution file types to look for - Various fixes for vscode project file generation #jira UE-50554 Change 3690885 by Steve.Robb Atomic reads in FReferenceControllerOps<ESPMode::ThreadSafe>. Change 3691052 by Steve.Robb Free stats thread on shutdown. Change 3695138 by Steve.Robb AsConst helper function added. Change 3696627 by James.Hopkin Changed player controller iterator typedefs to use TWeakObjectPtr rather than the deprecated TAutoWeakObjectPtr (review-3606695) Change 3697099 by Steve.Robb GitHub #4105 : Removed redundant class access modifier Change 3697154 by Steve.Robb Removal of deprecated functions in delegates. Mutable lambdas to can now be bound to delegates. Change 3697180 by Steve.Robb GitHub #4115 : Incorrect CPPMacroType used for USoftClassProperty Change 3697239 by Steve.Robb Allow TArray::Insert to take an array with any allocator type. Change 3697269 by Steve.Robb RelocateConstructItems instead of MoveConstructItems. Change 3697558 by Steve.Robb New _GetRef functions for TArray, which return a reference to the newly-added element. Unit tests for these functions. Change 3699776 by Steve.Robb TSAN warning suppression around IAsyncReadRequest::bCompleteAndCallbackCalled. Change 3702397 by Steve.Robb TIsTrivial type trait. Change 3702569 by Steve.Robb Allow a TGuardValue to be assigned to a different type from the one being guarded. Change 3706644 by Robert.Manuszewski Different stack ingore count for development builds for FArchiveStackTrace Change 3709272 by Steve.Robb Removal of redundant UpdateVertices, which causes a race condition on the renderer thread. Change 3709452 by Robert.Manuszewski Fixed a bug where with async time limit set to a low value the async loading could hang because the linker would keep reloading the preload dependencies Change 3709454 by Robert.Manuszewski Added command line option -NOEDL to disable EDL Change 3709487 by Steve.Robb Remove use of PLATFORM_HAS_64BIT_ATOMICS, which is always 1. Change 3709645 by Ben.Marsh Fix race condition between multiple instances of UBT trying to write out the XML config cache. Change 3711193 by Ben.Marsh Add an editor setting for the shared DDC location to use. #jira UE-51487 Change 3713811 by Steve.Robb Update .modules files after a hot reload. Don't check for directory timestamp changes as a way of detecting new files if hot reloading with a makefile, as this is already done during makefile invalidation checks. Pass hotreload flags around in UBT instead of relying on global state. This fixes the hot reload iteration speed regression without also regressing the fix to UE-42205. #jira UE-51472 Change 3715654 by Steve.Robb GitHub #4156 : Fixed not compiling template function Algo::UpperBoundBy. Change 3718782 by Steve.Robb TSharedPtr, TSharedRef and TWeakPtr assignment are now implemented as copy-and-swap to avoid an invalid smart pointer state being visible to any destructors being called. Change 3720830 by Steve.Robb Initial import of TAtomic object wrapper, which guarantees atomic access to an object. Change 3720881 by Steve.Robb FCompression ThreadSanitizer data race fixes. Change 3722640 by Graeme.Thornton Guard network platform file heartbeat function with the socket critical section. Stop heartbeat from causing a crash when firing during async loading. #jira UE-51463 Change 3722655 by Steve.Robb Don't null name table because it's already zeroed at startup. Some tidy-ups. Change 3722754 by Steve.Robb Thread sanitizer fix. Small typo fix. Change 3722849 by Graeme.Thornton Improve "caching file" message in networkplatformfile so it says "Requesting file..." and is only output when we actually request the file from the server Change 3723081 by Steve.Robb TAtomic is now aligned to the underlying integer type. TAtomic will now static assert with a better error message when given an unsupported type. Define added for the maximum platform-supported atomic type, and used instead of a (wrong) hardcoded number. Misc renames. Change 3723270 by Ben.Marsh Include /d2cgsummary argument when running UBT with -Timing. Change 3723683 by Ben.Marsh Do not include documentation in the generated project files by default. Suspect that the 30,000 UDN files that get added to the solution take up memory and degrate performance. Change 3725422 by Robert.Manuszewski When serializing compressed archive with multithreaded compression enabled, wait for the oldest async task instead of spinning. Change 3725735 by Robert.Manuszewski Making all CheckDefaultSubobjects related functions const Change 3726167 by Steve.Robb FMinimalName::IsNone added. Change 3726458 by Steve.Robb TAtomic will no longer instantiate for types which are not exactly a size supported by the platform layer. Change 3726542 by Ben.Marsh UGS: Always include the project filename in the editor build command. The project may not be in one of the .uprojectdirs paths. Change 3726595 by Ben.Marsh Allow building multiple game targets in the example BuildEditorAndTools.xml script. Change 3726724 by Ben.Marsh Fix ambiguities in calculating root directory. (GitHub #4172) Change 3726959 by Ben.Marsh Make sure that AutomationTool uses the same list of preprocessor definitions when compiling *.target.cs files as UnrealBuildTool does. Change 3728437 by Steve.Robb VisitTupleElements now supports invocation of a functor taking arguments from multiple tuples in parallel. Some improved documentation. NOTE: This is a backward-incompatible change to VisitTupleElements. Any existing calls will need their arguments swapping. Change 3732262 by Gil.Gribb UE4 - Fixed rare hangs in the task graph. Change 3732755 by Steve.Robb Stats TSAN fixes. Optimizations to FCycleCounter::Start() to only read the stat name once. Change 3735000 by Robert.Manuszewski Always preload the AssetRegistry module on startup. even if EDL is disabled. Even without EDL, if the async loading thread is enabled the AssetRegistryModule will otherwise be loaded from the ASL thread and that will assert. Change 3735292 by Robert.Manuszewski Made sure component visualizer is removed from VisualizersForSelection when UnregisterComponentVisualizer() is called otherwise it may cause crashes when the engine terminates. Change 3735332 by Steve.Robb Refactoring of UDelegateProperty::Identical() to clarify logic. Fixed UMulticastDelegateProperty::Identical() to compare the bound function names. PPF_DeltaComparison removed, as it doesn't seem useful. Change 3737960 by Graeme.Thornton VSCode - Add launch task for generating project files for the given folder Change 3738398 by Graeme.Thornton Make Visual Studio source code accessor's module hotreload handler pass the 'save all files' message to the current accesor, rather than direct to the visual studio accessor #jira UE-51451 Change 3738405 by Graeme.Thornton VSCode: Format c/cpp settings strings using comment path formatting function Change 3738928 by Steve.Robb Fix for lack of null conditional operators in some older Monos. (replicated from CL# 3729574 in Release-4.18) #jira UE-51842 Change 3739135 by Ben.Marsh Fix being unable to package projects in a folder called "Wolf". This is only a restricted folder for Epic's Perforce history. #jira UE-51855 Change 3739360 by Ben.Marsh UAT: Fix issue with P4PORT setting not being parsed correctly. Change 3745959 by James.Hopkin #core Added ImplicitConv for safe upcasts to a specific required type, e.g. deduced delegate payload types Change 3746125 by Steve.Robb FName ThreadSanitizer fixes. Change 3747274 by Steve.Robb TSAN fix for FMediaTicker::Stopping. Change 3747618 by Steve.Robb ThreadSanitizer data race fix for FShaderCompileThreadRunnableBase::bForceFinish. Change 3747720 by Steve.Robb ThreadSanitizer fix for FMessageRouter::Stopping. Change 3749207 by Graeme.Thornton First pass of CryptoKeys plugin. Allows creation/editing/cycling of AES/RSA keys. Change 3749323 by Graeme.Thornton Fix UAT crash when only -targetplatform is specifiied Change 3749349 by Steve.Robb TSAN_SAFE guards around LockFreeList to silence ThreadSanitizer. Change 3749617 by Steve.Robb Logf static_assert for formatting string enabled. Change 3749897 by Steve.Robb FDebug::LogAssertFailedMessage static assert for formatting string enabled. Change 3754011 by Steve.Robb Static asserts that the allocator supports move. Move-enabled our allocators which don't support move. Change 3754227 by Ben.Marsh Fix build command line in generated projects missing a space before the compiler version override. #jira UE-52226 Change 3754562 by Ben.Marsh PR #4206: Replace deprecated wsprintf with secure swprintf for Bootstrap executable (Contributed by jessicafalk) Change 3755616 by Graeme.Thornton Runtime code for using the new crypto ini files to define signing/encryption keys #jira UE-46580 Change 3755666 by James.Hopkin Used ImplicitConv to remove Casts being used for up-casts #review-3745965 Change 3755671 by Graeme.Thornton Add log message in unrealpak to say which config file system it is using for crypto keys Change 3755672 by Graeme.Thornton Updating ShooterGame with new CryptoKeys based security setup Change 3756778 by Ben.Marsh Add support for running multiple jobs simultaneously on a single builder. When running job or agent setup, the --num-slots=X parameter defines the number of steps that can run simultaneously (EC procedures pass in the resource step limit). A lock file is created under the workspace root (D:\Build) and a reservation file is created for the first slot that can be allocated (slot-1, slot-2, etc...). The slot number is used to define the workspace name that should be used. Change 3758498 by Ben.Marsh Re-throw exceptions when a file cannot be deleted when cleaning a target. Change 3758921 by Steve.Robb ThreadSanitizer fix to FThreadSafeStaticStatBase::HighPerformanceEnable to do a relaxed atomic load on access. DoSetup() now returns the newly-allocated pointer, instead of reloading it from memory. Change 3760599 by Graeme.Thornton Added missing epic header comment to some new source files Change 3760642 by Steve.Robb ThreadSanitizer fix for concurrent access to GMainThreadBlockedOnRenderThread. Change 3760669 by Graeme.Thornton Improvement to OpenSSL based signing key generator. Generate a full RSA key then steal the primes from it, rather than generating the primes manually. Added a test mode to the cryptokeys commandlet to test signing key generation Change 3760711 by Steve.Robb ThreadSanitizer fixes to GIsRenderingThreadSuspended. Change 3760739 by Steve.Robb ThreadSanitizer fix for FQueuedThread::TimeToDie. Change 3760763 by Steve.Robb ThreadSanitizer fix for GRunRenderingThreadHeartbeat. Removal of unnecessary/dangerous initializer for GMainThreadBlockedOnRenderThread. Change 3760793 by Steve.Robb Some simple refactoring to remove some volatile reads of BufferStartPos and BufferEndPos. Change 3760817 by Steve.Robb ThreadSanitizer fixes for FAsyncWriter::BufferStartPos and BufferEndPos. Change 3761331 by Josh.Engebretson UnrealBuildTool enforcement of Development and Debug configurations in existing .csproj #jira UE-52416 Change 3761521 by Steve.Robb ThreadSanitizer fixes for FEvent::EventStartCycles and EventUniqueId. Change 3763117 by Graeme.Thornton PR #3722: Optimising FPaths::IsRelative() (Contributed by jovisgCL) Change 3763358 by Graeme.Thornton Ensure that all branches within FGenericPlatformMisc::RootDir() produce an absolute path with no duplicate slashes Remove relative->abs conversion of root dir from FPaths::MakeStandardFilename(), now that we know RootDir() always returns an absolute path Derived from the content of this PR: PR #3742: Treat RootDirectory the same way as Standardized (Contributed by TroutZhang) Change 3764058 by Graeme.Thornton Generate a .code-workspace file for the current workspace. Allows foreign projects to "mount" the UE4 folder so that the engine tasks are avaible, and all engine source is visible to VSCode for searching purposes #jira UE-52359 Change 3764705 by Steve.Robb Better handling of whitespace in ImportText_Internal() for set and map properties. Containers are now emptied upon import failure, to avoid leaving bad container states (unhashed, partial data). Fix to USetProperty's temp buffer size to avoid buffer overruns. Duplicate map keys are now skipped during import, same as USetProperty's behavior. Change 3764731 by Steve.Robb Don't re-run UHT if only source files have changed in the same folder as headers. This was already done for hot reload, but there's no reason why it should be limited to that. Change 3765923 by Graeme.Thornton VSCode - "taskName" -> "label" for C# build tasks Change 3766018 by Steve.Robb constexpr constructor for TAtomic. Change 3766037 by Steve.Robb Misc tidyings in HotReload.cpp. Change 3766046 by Steve.Robb ThreadSanitizer fixes to ENamedThreads::RenderThread and ENamedThreads::ENamedThreads_Local. Change 3766288 by Steve.Robb Improved efficiency of adding/removing elements to UGCObjectReferencer::ReferencedObjects. Change 3766374 by Josh.Engebretson Fix issue with ini quoted value comparison #jira UE-52066 Change 3766532 by Josh.Engebretson PR #3680: Added NetSerialize to FDateTime fixing UE-22533 (Contributed by druhasu) #jira UE-46156 Change 3766740 by Steve.Robb TMultiMap::Append added. Change 3767523 by Steve.Robb ThreadSanitizer fix for UE4Delegates_Private::GNextID. Change 3767601 by Steve.Robb ThreadSanitizer fix for FStats::GameThreadStatsFrame. Change 3770567 by Ben.Marsh Add a FAnnotatedArchiveFormatter interface which allows querying structural type information that may not be in binary archives. Change 3770826 by Ben.Marsh Move StructuredArchive implementation into Core, so primitive types can implement serialization overloads for it. Change 3770875 by Steve.Robb Redundant UScriptStruct::PostLoad removed, which was causing a race condition in async loading. This was re-establishing the CppStructOps, but that is unnecessary because native classes cannot change as a result of a load - only BP structs can, and they don't have CppStructOps. Change 3772167 by Ben.Marsh Add a context-free binary formatter that can serialize tagged data. This functions as a lower-overhead binary intermediate format for JSON data. Change 3772248 by Steve.Robb ThreadSanitizer fixes to FMalloc call counters. Change 3772383 by Ben.Marsh Separate archive metadata from FArchive into FArchiveContext, so it can be safely exposed to consumers of FStructuredArchive. Change 3772906 by Graeme.Thornton TextAssetCommandlet - Utility commandlet for testing/converting to text asset format Change 3772932 by Ben.Marsh Fix "String:" prefix not being stripped from escaped string values. Change 3772942 by Graeme.Thornton Add experimental setting to enable in-editor text asset format functionality Add "export to text" option into the content browser asset actions context menu Change 3772955 by Ben.Marsh Add a new "stream" compound type to FStructuredArchive, which allows serializing a sequence of elements similarly to an array, but without serializing an explicit size. Allows passing through data to an underlying binary archive without breaking compatibility. Change 3772963 by Ben.Marsh Allow querying record keys and stream lengths from annotated archive formatters, since these archives have markup for field boundaries. Change 3773010 by Graeme.Thornton Added CORE_API to FArchiveFromStructuredArchive Gave text asset format experimental option a slightly less random tooltip comment Change 3773057 by Ben.Marsh Add a flag to FArchive to determine whether the archive is text (IsTextFormat()). Add support for seeking within FArchiveFromStructuredArchive. For text formats, data is serialized to an in-memory buffer, with names and objects serialized as indices into an array. For non-text formats, data is serialized directly to the underlying archive. Also rename FStructuredArchive::TryEnterSlot() to TryEnterField(). Change 3773118 by Steve.Robb TSignedIntType and TUnsignedIntType type traits for getting an integer type of a given size. Change 3773122 by Steve.Robb TAtomic fixes for pointer arithmetic. TSignedIntType used instead of reimplementing its own trait. Change 3773123 by Steve.Robb Unit tests for TAtomic. Change 3773138 by Steve.Robb Run numeric tests on integer types instead of basic tests. Fix for compiler warnings when subtracting from unsigned atomics. Change 3773166 by Steve.Robb Refactoring of arithmetic operations into its own class, then basing the pointer and integral versions on that. Change 3774216 by Gil.Gribb UE4 - Fix rare crash in the pak precacher immediately after unmounting a pak file. Change 3774426 by Ben.Marsh Copy all C# tools to a staging directory before compiling them. This prevents access violations when compiling tools like iPhonePackager that reference DotNETCommon, and ensures we strip NotForLicensees folders out of them all. See: https://answers.unrealengine.com/questions/726010/418-will-not-build-from-source.html Change 3774658 by Ben.Marsh Improve error reporting while generating intellisense for project files. Include the name of the target being compiled, and allow project file generation to continue without it. Change 3775141 by Ben.Marsh Always output HTML5 diagnostics at "information" verbosity, to avoid every line being prefixed with "WARNING:" and screwing up the EC postprocessor. Change 3775459 by Ben.Marsh Removing .NET Framework Perforce DLL as runtime dependency of engine third party library. The actual library is linked statically. Change 3775522 by Ben.Marsh UGS: Treat .uproject and .uplugin files as code changes. Change 3775597 by Ben.Marsh Fix post-build steps for plugins not being executed. #jira UE-52754 Change 3777895 by Graeme.Thornton StructuredArchiveFromArchive - An adapter class for wrapping an existing FArchive with a structured archive Change 3777931 by Graeme.Thornton Refactored FArchiveUObjects serialization code into some static helpers Added FArchiveUObjectFromStructuredArchive which allows the adaption of a structured archive into an FArchive that supports the extra UObect serialization functions for weak/soft pointers Change 3777942 by Graeme.Thornton Added missing CORE_API to FStructuredArchive::FStream Added FStructuredArchive::FSlot insertion operator for char Added specialization of TArray<uint8> serializer for structured archives which serializes the contents as one value Change 3778084 by Graeme.Thornton Adding FPackageName::GetTextAssetPackageExtension() to access the file extension we use for text asset files Change 3778096 by Graeme.Thornton Add a constructor to FArchiveUObjectFromStructuredArchive that takes a slot and passes it to the base class Change 3778389 by Josh.Engebretson Fix an optimization issue with CPU benchmarking Add better support for debugging/testing local rocket builds UDN Link: https://udn.unrealengine.com/questions/400909/command-scalability-auto-gives-inaccurate-cpu-benc.html #jira UE-52192 Change 3778701 by Josh.Engebretson Ensure plugin content folders are mounted consistently. Fixes TryConvertFilenameToLongPackageName failing to work on plugin assets UDN Link: https://udn.unrealengine.com/questions/276386/tryconvertfilenametolongpackagename-fails-for-plug.html #jira UE-40317 Change 3778832 by Chad.Garyet Adding enterprise path support for PCB's for UGS Change 3780258 by Graeme.Thornton TextAssetCommandlet - Accumulate timings for loading packages and saving packages Change 3780463 by Graeme.Thornton CryptoKeys improvements - Enable CryptoKeys plugin by default - Attempt to inherit settings from the old system by default - Hide ini/index encryption settings from packaging settings and just inherit previous values into new system Minor UBT change to remove a trailing comma from the end of encryption/signing key binary strings Change 3780557 by Ben.Marsh Fix LoginFlow module not being precompiled for the binary release. Change 3780846 by Josh.Engebretson Improve filename to long package name resolution when provided a relative path Change 3780863 by Ben.Marsh UAT: Add a better error message when a C# project has an invalid reference. Change 3780911 by Ben.Marsh Update the BuildEditorAndTools.xml script to allow submitting archived binaries to Perforce. The "Submit To Perforce For UGS" node creates a zip of all the binaries that have been built, and submits it to the stream specified by the 'ArchiveStream' argument. Change 3780956 by Josh.Engebretson Add support for ! (RemoveKey) config command to UBT UDN Link: https://udn.unrealengine.com/questions/397267/index.html #jira UE-52033 Change 3782957 by Robert.Manuszewski UE4 - Fixed a linear search in EDL that caused performance problems for very large maps. Change 3784503 by Ben.Marsh Optimizations for FStructuredArchive: * Store the depth explicitly in element objects, to avoid having to loop through the scope stack to find it. * Prevent shrinking of arrays when removing elements. * Add an inline allocator to the scope and container stacks. Change 3784700 by Ben.Marsh Remove the inline allocator from FStructuredArchive; checking whether the inline or backup allocator is being used is slower than just allocating up-front. Change 3784989 by Ben.Marsh Compile out all the FStructuredArchive validation code when WITH_TEXT_ARCHIVE_SUPPORT = 0. Change 3786860 by Gil.Gribb UE4 - Remove no buffering flag from windows async IO because it disabled the disk cache entirely. Change 3787159 by Ben.Marsh Guard against UE4.0 backwards compatibility path when determining if an engine is a source distribution. Change 3787493 by Josh.Engebretson Parallel pak generation now uses MaxDegreeOfParallelism option which is now set to the number of CPU cores Moved cryptography settings parsing out of threaded CreatePak method to avoid concurrency issue in ConfigCache.TryReadFile Fix for multiple threads parsing ini keys (PR 3995) #PR 3995 #jira 52913 #jira 49503 Change 3787773 by Steve.Robb Fix for missing final values from FOREACH_ENUM_ macros. Change 3788287 by Ben.Marsh TBA: Add checks in debug builds that key names in maps and records for FStructuredArchive are unique. Change 3788678 by Ben.Marsh Fix compile error due to inability to instantiate TArray<> of forward declared struct. Convert set of key names to an array to avoid including Set.h in public header for FStructuredArchive. Change 3789353 by Graeme.Thornton Removed unused/rotten modes from TextAsset commandlet. Used existing "-iterations=n" switch to control a global iteration over the given command. Useful for performance testing. Change 3789396 by Ben.Marsh Move code to validate container keys/sizes into DO_GUARD_SLOW checks, and allocate container metadata instances dynamically to fix problems with references to things not declared in headers that can't be included from StructuredArchive.h Change 3789772 by Ben.Marsh Always strip trailing slashes from the end of paths specified by .build.cs files; they can cause quoted paths to be escaped on the command line. Change 3790003 by Ben.Marsh TBA: Rename FStructuredArchive::EElementType::Object to FStructuredArchive::EElementType::Record. Change 3790051 by Steve.Robb PIE is disabled during a hot reload. Hot reload in editor is disabled during PIE. Hot reload from IDE is deferred until after PIE is exited. Compiling multiple times before a hot reload (e.g. compiling multiple times in PIE) will now load the most recent change. #jira UE-20357 #jira UE-52137 Change 3790709 by Steve.Robb Better move support for TVariant. EVariantTypes switched over to using an enum class to aid debugger visualization. Change 3791422 by Ben.Marsh TBA: Return the type of a field from an annotated archive formatter at the point that we enter it, rather than querying all the time. Change 3791489 by Graeme.Thornton TBA: Change StructuredArchiveFromArchive adapter to use the archive.Open() result directly, now that it's a slot and not a record Change 3792344 by Ben.Marsh Improvements to base64 encoding library. * Now supports encoding and decoding with ANSICHAR and WIDECHAR implementations. * Added support for decoding base-64 blobs without padding marks. * Added support for decoding into pre-allocated buffer. * Added constexpr functions for determining the encoded and maximum decoded size of an input buffer. * Prevent writes past the end of allocated buffer (no longer need to manually remove padding bytes). Change 3792949 by Ben.Marsh TBA: Rename FAnnotatedArchiveFormatter to FAnnotatedStructuredArchiveFormatter. Change 3794078 by Robert.Manuszewski Fixing a crash that could happen when FGCObjects were constructed and destructed when shutting down the engine #jira UE-52392 Change 3794413 by Ben.Marsh TBA: Remove the element type parameter to SetScope(). It isn't really needed; we can just assume the element ID correctly identifies the item on the stack. Change 3794731 by Ben.Marsh TBA: Optimize creation of stack elements for empty slots in FStructuredArchive. This saves a lot of bookkeeping when serializing a large number of individual fields. Since only one slot can be active at a time (and it only exists temporarily, until we write into it), we can just store the element ID assigned to it in a member variable. Change 3795081 by Ben.Marsh UBT: Move LinuxCommon.cs into Platform/Linux folder. Change 3795137 by Ben.Marsh UBT: Allow modules to specify private compiler definitions from the build.cs file, only visible within that module (via the "PrivateDefinitions" property). Change 3795247 by Ben.Marsh Fix missing header when creating a new interface from the editor new code wizard. #jira UE-53174 Change 3796025 by Graeme.Thornton Fixed some deprecated "Definitions" warnings in OpenCV build files Change 3796103 by Graeme.Thornton Disable experimental text asset option - it does nothing useful yet. Change 3796157 by Graeme.Thornton Fix path type mismatch in visual studio source code accessor meaning that the DTE comms wouldn't identify a running instance of VS as having the current solution open. #jira UE-53206 Change 3796315 by Ben.Marsh Move Formatter to the correct position for initializer. #jira UE-53208 Change 3797082 by Ben.Marsh UAT: Work around for exception thrown by launching cook with "-platform=Android_ETC1 -targetplatform=Android -cookflavor=ETC1". Anrdoid_ETC1 is not a valid platform (it's a cook platform), and can't be parsed by UAT. #jira UE-53232 Change 3799050 by Ben.Marsh Make UnrealPak.version files writable for Mac and Linux. Change 3801012 by Graeme.Thornton VSCode - Update source accessor to use code workspace as it's target, rather than just the project directory Change 3801214 by Gil.Gribb UE4 - Remove assert to work around minor problem with lock free lists. #jira UE-49600 Change 3801219 by Steve.Robb WeakObjectPtrs now warn when casting away const. Change 3801299 by Graeme.Thornton Fix quote issue with foreign project build tasks on PC Change 3803292 by Graeme.Thornton Fix crash on startup when using cook-on-the-side. Force a flush of the asset registry background scanning when creating the cook-on-the-side platform registries Change 3803559 by Steve.Robb TSAN fix for FMalloc::MaxSingleAlloc. Change 3803735 by Graeme.Thornton Last set of cryptokeys changes - Added some comments for editor exposed settings - Split "encrypt assets" option into "encrypt uassets" and "encrypt all assets" Change 3803929 by Ben.Marsh UGS: Show an in-place error panel when a project fails to open, allowing the user to retry and have their tabs saved instead of creating a modal dialog. Change 3624590 by Steve.Robb AddReferencedObjects now generates a compile error with containers of UObject*s where the UObjectType is forward-declared, as these which won't be added to the reference collector. Tidy-up of existing calls to AddReferencedObjects. Change 3629473 by Ben.Marsh Build: Rename the option for embedding source server information in PDB files for installed engine builds. Change 3632894 by Steve.Robb VARARG* macros deprecated and usage replaced with variadic templates. Change 3640704 by Steve.Robb MakeWeakObjectPtr added, which deduces a TWeakObjectPtr type from a raw pointer type. Fix to TWeakObjectPtr's constructor which implicitly removed const. Fixes to everything which didn't compile as a result. Change 3650813 by Graeme.Thornton Removed FStartupPackages and associated code Change 3651000 by Ben.Marsh Return the stack size from FPlatformStackWalk::CaptureStackBacktrace() rather than checking for the first null pointer, to prevent truncated callstacks if parts of the stack are zeroed out. #jira UE-49980 Change 3690842 by Steve.Robb FPlatformAtomics::AtomicRead added - needs optimizing. AtomicRead() used in FThreadSafeCounter::GetValue(). Change 3699416 by Steve.Robb Fix to debugger visualization of TArray with a TInlineAllocator or TFixedAllocator. Improved readability of TSparseArray visualization. Change 3720812 by Steve.Robb Atomic functions for 8-bit and 16-bit. Android, Linux and Switch implementations now just use the Clang implementation. AtomicRead64 deprecated in favor of the int64* AtomicRead overload. Change 3722698 by Steve.Robb VS debugger visualizers for TAtomic. Change 3732270 by Steve.Robb Relaxed stores and loads. Change 3749315 by Graeme.Thornton If UAT is invoked with platforms in both the -platform and -targetplatform command line switches, build using all of them rather than just the ones in -targetplatform #jira UE-52034 Change 3750657 by Josh.Engebretson Fixed issue when debugging editor cook/package and project launch operations #jira UE-52207 Change 3758514 by Steve.Robb Fixes to FString::Printf having non-literals being passed as its formatting string. Change 3763356 by Steve.Robb ENamedThreads::RenderThread and ENamedThreads::RenderThread_Local encapsulated by getters and setters. Change 3770549 by Steve.Robb Removal of obsolete PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS and PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES. Tidy up of existing code which uses it. Change 3770553 by Ben.Marsh Adding structured serialization API to Core/CoreUObject for use with text-based assets. * FStructuredArchive abstracts an archive which is made up of compound types (records, arrays, and maps). Values are stored in slots within these types. * Records are string -> value dictionaries where the key names can be compiled out in non-editor builds or when WITH_TEXT_ARCHIVE_SUPPORT = 0. * Maps are string -> value dictionaries where the key names are present regardless of the build type. * Proxy objects are defined to express the context for serialization (FStructuredArchive::FRecord, FStructuredArchive::FArray, FStructuredArchive::FMap, FStructuredArchive::FSlot) which allows basic validation through static typing. These objects act as lightweight handles, and can be cheaply constructed and passed around on the stack. Most serialization to and from the archive is done through these objects. * Runtime checks perform additional validation to ensure that serialized data is well formed and written in a forward-only manner, regardless of the underlying archive type. * The actual input/output format is determined by a separate interface (FArchiveFormatter). Context validation (always causing matching LeaveArray for every EnterArray, etc...) is done by FStructuredArchive, so implementing these classes is fairly trivial. FArchiveFormatter can be de-virtualized in non-editor builds, where WITH_TEXT_ARCHIVE_SUPPORT = 0. * Includes implementations of FArchiveFormatter for binary and JSON formats. Change 3771105 by Steve.Robb Deprecation warnings for PLATFORM_COMPILER_HAS_AUTO_RETURN_TYPES and PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS. Fix for incorrect warning formatting on Clang platforms. Change 3771520 by Steve.Robb Start moving Clang-using platforms' pre-setup stuff into a Clang-specific header. Change 3771564 by Steve.Robb More common macros moved to the Clang pre-setup header. Change 3771613 by Steve.Robb EMIT_CUSTOM_WARNING_AT_LINE moved to ClangPlatformCompilerPreSetup.h. Change 3772881 by Ben.Marsh Add support for serializing FName and UObject through FStructuredArchive. In order to allow custom linker behavior when serializing objects: * The constructor to JSON input formatter now takes a delegate to convert a string object name into a UObject pointer. * The constructor to tagged binary formatter takes a delegate to serialize a UObject pointer into any form it chooses (likely an integer index into the import table) Object and name types are stored as strings in JSON, using an "Object:" or "Name:" prefix to differentiate them from regular strings. Any strings that already contain one of these prefixes are prepended with a "String:" prefix (as is any string that already has a "String:" prefix). Change 3772941 by Graeme.Thornton Make build work when including StructuredArchive.h from core container types Added standard header to new files Add structured archive serializer for TArray Fix bug in structured archive where containers weren't being popped from the scope stack Change 3772972 by Ben.Marsh Add an adapter which presents a legacy FArchive interface to a FStructuredArchive slot. Data is serialized into this slot as a stream of elements; raw data is buffered up into fixed size chunks, names and objects are serialized separately. When used with FBinaryArchiveFormatter, this should result in all data being passed through to the underlying archive in a backwards compatible way, wiith no additional bookkeeping fields. Change 3773006 by Ben.Marsh Rename FStructuredArchive::FRecord::EnterSlot() to EnterField(). Change 3773013 by Steve.Robb bUseInlining target rule added to UnrealBuildTool, which defaults to true, to allow inlining to be disabled for debugging purposes. Change 3774499 by Ben.Marsh Minor fixes for FStructuredArchive related classes: * Text-based archive formats are now compiled out when WITH_TEXT_ARCHIVE_SUPPORT = 0. * Fixed issue with FTaggedBinaryArchiveFormatter state becoming corrupted when looking ahead at field types. * FArchiveFieldName constructor is now explicit, to fix cases where strings were being passed directly to serialize functions. Change 3774600 by Ben.Marsh Add CopyFormattedData() function, which can copy data from one formatter to another. Add a test case to SerializationAPI that converts from data -> JSON -> binary -> JSON -> data. This function can be used to implement a generic visitor pattern, by implementing a FArchiveFormatter which receives the deserialized data. Change 3789721 by Ben.Marsh TBA: Split FTaggedBinaryArchiveFormatter into separate classes for reading and writing. Change 3789920 by Ben.Marsh TBA: Support automatic coercion between any numeric types in tagged binary archives. Also report the smallest type that can contain a value, rather than just in32/double. #jira UECORE-364 Change 3789982 by Ben.Marsh TBA: Change FStructuredArchive::Open() to return a slot, rather than a record, to make it easier to implement a raw FArchive adapter. Change 3792466 by Ben.Marsh TBA: Better handling of raw data in text based assets. Short sequences of binary data are Base64 encoded as a single string. Longer sequences are stored as an array of Base64 encoded lines, push a SHA1 hash to detect cases where the data was merged incorrectly. In order to allow inference of the correct type for a field, other fields called "Base64" will be escaped to "_Base64", and any field beginning with "_" will have an additional underscore inserted. Reading files back in reverses these transformations. Change 3792935 by Ben.Marsh TBA: Rename FArchiveFormatter to FStructuredArchiveFormatter for consistency with FStructuredArchive. Change 3795100 by Ben.Marsh UBT: Rename the ModuleRules Definitions property to PublicDefinitions, to make its semantics clearer. Change 3795106 by Ben.Marsh Replace all internal usages of ModuleRules.Definitions, and replace it with ModuleRules.PublicDefinitions. Change 3796275 by Ben.Marsh Fix paths to Version.h includes from resource files. Change 3800683 by Josh.Engebretson Remove WER from Mac and Linux crash reports in favor of unified runtime-xml format #jira UE-50073 Change 3803545 by Steve.Robb TWeakObjPtr const-dropping assignment fix. Fixes to change. [CL 3805231 by Ben Marsh in Main branch]
2017-12-12 18:32:45 -05:00
FText const WarningFormat = LOCTEXT("DisallowedObjectCast", "'{0}' does not inherit from '{1}' (@@ would always fail).");
MessageLog.Warning( *FText::Format(WarningFormat, TargetType->GetDisplayNameText(), SourceClass->GetDisplayNameText()).ToString(), this );
}
}
}
}
bool UK2Node_DynamicCast::ReconnectPureExecPins(TArray<UEdGraphPin*>& OldPins)
{
if (bIsPureCast)
{
// look for an old exec pin
UEdGraphPin* PinExec = nullptr;
for (UEdGraphPin* Pin : OldPins)
{
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
if (Pin->PinName == UEdGraphSchema_K2::PN_Execute)
{
PinExec = Pin;
break;
}
}
if (PinExec)
{
// look for old then pin
UEdGraphPin* PinThen = nullptr;
for (UEdGraphPin* Pin : OldPins)
{
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
if (Pin->PinName == UEdGraphSchema_K2::PN_Then)
{
PinThen = Pin;
break;
}
}
if (PinThen)
{
// reconnect all incoming links to old exec pin to the far end of the old then pin.
if (PinThen->LinkedTo.Num() > 0)
{
UEdGraphPin* PinThenLinked = PinThen->LinkedTo[0];
while (PinExec->LinkedTo.Num() > 0)
{
UEdGraphPin* PinExecLinked = PinExec->LinkedTo[0];
PinExecLinked->BreakLinkTo(PinExec);
PinExecLinked->MakeLinkTo(PinThenLinked);
}
return true;
}
}
}
}
return false;
}
Exclude node spawner actions for non-imported component types from the Blueprint graph context menu when Blueprint namespace editor features are enabled. Change summary: - Extended FBlueprintActionContext to include a weak ptr to the current IBlueprintEditor context. - Added ENUM_CLASS_FLAGS() for the FBlueprintActionFilter::EFlags enumeration (for use as bitflags). - Deprecated the current FBlueprintActionFilter constructor, replaced with a more explicitly-typed EFlags param. - FBlueprintActionFilter now internally stores its filter flags. Also added FBlueprintActionFilter::HasAnyFlags/HasAllFlags(). - Minor refactor to a few action filter delegates to query the filter flags locally rather than add bool flags to delegate payloads. - The FBlueprintActionFilter constructor now unsets the non-imported filter flag if Blueprint namespace editor settings are disabled. - BlueprintActionFilterImpl::IsNonImportedObject() now utilizes the filter context rather than iterate the Blueprints array to find open asset editors. - Added an override for UBlueprintComponentNodeSpawner::IsTemplateNodeFilteredOut(). This is now used to filter out any loaded or unloaded BP component types from the context menu. - Cleaned up display inconsistencies in the menu UI spec between loaded vs. unloaded "Add Component" node spawner actions in the context menu. - Added an FSoftObjectPath variant of IBlueprintEditor::IsNonImportedObject() (to support unloaded non-native component type entries which store the class object path). Implemented as FBlueprintEditor::IsNonImportedObject(FSoftObjectPath). - Added an override for UK2Node_DynamicCast::IsActionFilteredOut() to exclude cast operator actions for non-native component types if they are not imported into the current editor context. - Modified SBlueprintActionMenu, SBlueprintFavoritesPalette and SBlueprintLibraryPalette to include the current editor context in applicable action filter context(s). #jira UE-149760 #rb Ben.Hoffman #preflight 62753dd9e31cfc52d5bd0539 [CL 20077282 by Phillip Kavan in ue5-main branch]
2022-05-06 11:49:20 -04:00
bool UK2Node_DynamicCast::IsActionFilteredOut(const FBlueprintActionFilter& Filter)
{
bool bIsFilteredOut = false;
if (Filter.HasAnyFlags(FBlueprintActionFilter::BPFILTER_RejectNonImportedFields))
{
TSharedPtr<IBlueprintEditor> BlueprintEditor = Filter.Context.EditorPtr.Pin();
if (BlueprintEditor.IsValid() && TargetType)
{
bIsFilteredOut = BlueprintEditor->IsNonImportedObject(TargetType);
}
}
return bIsFilteredOut;
}
#undef LOCTEXT_NAMESPACE