2018-01-02 15:30:26 -05:00
|
|
|
// Copyright 1998-2018 Epic Games, Inc. All Rights Reserved.
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
#include "SGraphNodeComment.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 "Widgets/SBoxPanel.h"
|
|
|
|
|
#include "Framework/Application/SlateApplication.h"
|
|
|
|
|
#include "EdGraphNode_Comment.h"
|
|
|
|
|
#include "GraphEditorSettings.h"
|
|
|
|
|
#include "SGraphPanel.h"
|
|
|
|
|
#include "SCommentBubble.h"
|
2014-03-14 14:13:41 -04:00
|
|
|
//#include "TextWrapperHelpers.h"
|
2014-09-05 07:39:52 -04:00
|
|
|
#include "TutorialMetaData.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 "Widgets/Text/SInlineEditableTextBlock.h"
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
namespace SCommentNodeDefs
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
/** Size of the hit result border for the window borders */
|
|
|
|
|
/* L, T, R, B */
|
|
|
|
|
static const FSlateRect HitResultBorderSize(10,10,10,10);
|
|
|
|
|
|
|
|
|
|
/** Minimum resize width for comment */
|
|
|
|
|
static const float MinWidth = 30.0;
|
|
|
|
|
|
|
|
|
|
/** Minimum resize height for comment */
|
|
|
|
|
static const float MinHeight = 30.0;
|
|
|
|
|
|
2015-04-28 04:58:34 -04:00
|
|
|
/** TitleBarColor = CommentColor * TitleBarColorMultiplier */
|
2014-03-14 14:13:41 -04:00
|
|
|
static const float TitleBarColorMultiplier = 0.6f;
|
|
|
|
|
|
|
|
|
|
/** Titlebar Offset - taken from the widget borders in UpdateGraphNode */
|
|
|
|
|
static const FSlateRect TitleBarOffset(13,8,-3,0);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
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
|
|
|
void SGraphNodeComment::Construct(const FArguments& InArgs, UEdGraphNode_Comment* InNode)
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
this->GraphNode = InNode;
|
|
|
|
|
this->bIsSelected = false;
|
|
|
|
|
|
|
|
|
|
// Set up animation
|
|
|
|
|
{
|
|
|
|
|
ZoomCurve = SpawnAnim.AddCurve(0, 0.1f);
|
|
|
|
|
FadeCurve = SpawnAnim.AddCurve(0.15f, 0.15f);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Cache these values so they do not force a re-build of the node next tick.
|
|
|
|
|
CachedCommentTitle = GetNodeComment();
|
|
|
|
|
CachedWidth = InNode->NodeWidth;
|
|
|
|
|
|
|
|
|
|
this->UpdateGraphNode();
|
|
|
|
|
|
|
|
|
|
// Pull out sizes
|
|
|
|
|
UserSize.X = InNode->NodeWidth;
|
|
|
|
|
UserSize.Y = InNode->NodeHeight;
|
|
|
|
|
|
Added a new documentation node to the blueprints to display udn documentation excerpts in the grapheditor.
#TTP 312311 - ROCKET: TASK: Add a "Documentation Node"
#Branch UE4
#Proj BlueprintGraph, EdGraph, Kismet, KismetCompiler, GraphEditor, Documentation, EditorStyle
#Change Updated UEdGraphSchema to include an interface call to retrieve an FEdGraphSchemaAction to create documentation nodes. At this point only the K2 interfaces implement this.
#Change Updated UEdGraphSchema_K2 to include a call to retrieve an FEdGraphSchemaAction to create documentation nodes. This is used to add the actions to the blueprint palette and context menus.
#Add Added FEdGraphSchemaAction_K2AddDocumentation in EdGraphSchema_K2_Actions.h/cpp to implement the calls in UEdGraphSchema to create documenation nodes from palette and context menus.
#Change Modified FK2ActionMenuBuilder to provide a static call to create a documentation action in the same style as the comment. Additionally added calls to FK2ActionMenuBuilder::GetPaletteActions and FK2ActionMenuBuilder::GetContextAllowedNodeTypes to call this to add entries in the palette and context menus.
#Add Added a new Brush GraphEditor.Documentation_16x, for the context menu icon in SlateEditorStyle.cpp.
#Change Modified GetPaletteItemIcon in SBlueprintPalette.cpp to return the new icon for the DocumentationNode
#Change Modified FKismetCompilerContext::IsNodePure to include the Documentaton node in the drop through ensure test to prevent asserts on compling if a documentation node is present.
#Change Added an entry for Documentation node in FNodeFactory::CreateNodeWidget.
#Change Modified IDocumentationPage interface to provide the ability to provide a TextWrapAt Attribute so this can be set before creating excerpt content if desired.
#Change Modified the UDNParser to control text wrap at values in the created widgets using a float Attribute WrapAt, Added a set call in the DocumentationPage and made the default behaviour mimic the code it replaced.
#Add Added the class UEdGraphNode_Documentation implemented in EdGraphNode_Documentation.h and UEdGraph.cpp, this is the UObject implementation for the documentation nodes.
#Add Added the class SGraphNodeDocumentation as the GraphPanel implementation of the EdGraphNode_Documentation.
#Change Moved the resizable code from SGraphNodeComment into a SGraphNodeResizable and changed SGraphNodeComment and SGraphNodeDocumentation inherit from it to avoid duplicating code.
#Change Added a documentation specific details customisation so the excerpts can be displayed as combo button.
#Change Added FBlueprintDocumentationDetails into BlueprintDetailsCustomization.h/cpp to handle the user interaction with the documentation node in the BP Editor.
ReviewedBy Chris.Wood, Mike.Beach
[CL 2247425 by Ben Cosh in Main branch]
2014-08-07 15:33:55 -04:00
|
|
|
MouseZone = CRWZ_NotInWindow;
|
2014-03-14 14:13:41 -04:00
|
|
|
bUserIsDragging = false;
|
|
|
|
|
}
|
|
|
|
|
|
---- Merging with SlateDev branch ----
Introduces the concept of "Active Ticking" to allow Slate to go to sleep when there is no need to update the UI.
While asleep, Slate will skip the Tick & Paint pass for that frame entirely.
- There are TWO ways to "wake" Slate and cause a Tick/Paint pass:
1. Provide some sort of input (mouse movement, clicks, and key presses). Slate will always tick when the user is active.
- Therefore, if the logic in a given widget's Tick is only relevant in response to user action, there is no need to register an active tick.
2. Register an Active Tick. Currently this is an all-or-nothing situation, so if a single active tick needs to execute, all of Slate will be ticked.
- The purpose of an Active Tick is to allow a widget to "drive" Slate and guarantee a Tick/Paint pass in the absence of any user action.
- Examples include animation, async operations that update periodically, progress updates, loading bars, etc.
- An empty active tick is registered for viewports when they are real-time, so game project widgets are unaffected by this change and should continue to work as before.
- An Active Tick is registered by creating an FWidgetActiveTickDelegate and passing it to SWidget::RegisterActiveTick()
- There are THREE ways to unregister an active tick:
1. Return EActiveTickReturnType::StopTicking from the active tick function
2. Pass the FActiveTickHandle returned by RegisterActiveTick() to SWidget::UnregisterActiveTick()
3. Destroy the widget responsible for the active tick
- Sleeping is currently disabled, can be enabled with Slate.AllowSlateToSleep cvar
- There is currently a little buffer time during which Slate continues to tick following any input. Long-term, this is planned to be removed.
- The duration of the buffer can be adjusted using Slate.SleepBufferPostInput cvar (defaults to 1.0f)
- The FCurveSequence API has been updated to work with the active tick system
- Playing a curve sequence now requires that you pass the widget being animated by the sequence
- The active tick will automatically be registered on behalf of the widget and unregister when the sequence is complete
- GetLerpLooping() has been removed. Instead, pass true as the second param to Play() to indicate that the animation will loop. This causes the active tick to be registered indefinitely until paused or jumped to the start/end.
[CL 2391669 by Dan Hertzka in Main branch]
2014-12-17 16:07:57 -05:00
|
|
|
void SGraphNodeComment::Tick( const FGeometry& AllottedGeometry, const double InCurrentTime, const float InDeltaTime )
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
SGraphNode::Tick(AllottedGeometry, InCurrentTime, InDeltaTime);
|
|
|
|
|
|
|
|
|
|
const FString CurrentCommentTitle = GetNodeComment();
|
2015-02-17 12:27:10 -05:00
|
|
|
if (CurrentCommentTitle != CachedCommentTitle)
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
CachedCommentTitle = CurrentCommentTitle;
|
2015-02-17 12:27:10 -05:00
|
|
|
}
|
2014-03-14 14:13:41 -04:00
|
|
|
|
2015-02-17 12:27:10 -05:00
|
|
|
const int32 CurrentWidth = static_cast<int32>(UserSize.X);
|
|
|
|
|
if (CurrentWidth != CachedWidth)
|
|
|
|
|
{
|
|
|
|
|
CachedWidth = CurrentWidth;
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
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
|
|
|
|
2018-07-16 11:43:36 -04:00
|
|
|
UEdGraphNode_Comment* CommentNode = CastChecked<UEdGraphNode_Comment>(GraphNode);
|
|
|
|
|
if (bCachedBubbleVisibility != CommentNode->bCommentBubbleVisible_InDetailsPanel)
|
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
|
|
|
{
|
2018-07-16 11:43:36 -04:00
|
|
|
CommentBubble->UpdateBubble();
|
|
|
|
|
bCachedBubbleVisibility = CommentNode->bCommentBubbleVisible_InDetailsPanel;
|
2018-06-26 08:42:47 -04:00
|
|
|
}
|
|
|
|
|
|
2018-07-16 11:43:36 -04:00
|
|
|
if (CachedFontSize != CommentNode->FontSize)
|
|
|
|
|
{
|
|
|
|
|
UpdateGraphNode();
|
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
|
|
|
}
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FReply SGraphNodeComment::OnDrop( const FGeometry& MyGeometry, const FDragDropEvent& DragDropEvent )
|
|
|
|
|
{
|
|
|
|
|
return FReply::Unhandled();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void SGraphNodeComment::OnDragEnter( const FGeometry& MyGeometry, const FDragDropEvent& DragDropEvent )
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
float SGraphNodeComment::GetWrapAt() const
|
|
|
|
|
{
|
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3380068)
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3358702 on 2017/03/22 by Marc.Audy
Always mark child actors pending kill when in PostLoad as often the World is too early to have a WorldContext which causes issues in DestroyActor
#jira UE-42679
Change 3358737 on 2017/03/22 by Mieszko.Zielinski
Exposed UBrainComponent::IsRunning() and UBrainComponent::IsPaused() to Blueprint #UE4
Change 3359062 on 2017/03/22 by Michael.Noland
Blueprints: Show the Save and Find in CB buttons when working with level script blueprints (they will save/show the map package)
#jira UE-30748
Change 3359066 on 2017/03/22 by Michael.Noland
PR #3348: Make fields of FAttributeMetaData editable (Contributed by hoelzl)
#jira UE-42620
Change 3359069 on 2017/03/22 by Michael.Noland
PR #3288: InverseLerp Blueprint Tooltips Clarification (Contributed by wunawuna)
#jira UE-42250
Change 3359108 on 2017/03/22 by Michael.Noland
Blueprints: Fix an issue where running the editor in a different culture could break pins on nodes that have optional arrays of pins (e.g., animation graph nodes like blend by layer)
#jira UE-36232
Change 3359235 on 2017/03/22 by Marc.Audy
Expose bShouldPerformFullTickWhenPaused to blueprints and details panel
#jira UE-17286
Change 3359324 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Disable collision on NavModifierVolumes. Previously they had an OverlapAll response and generated overlap events. They are only supposed to be used for preventing nav mesh generation, but overlap events could affect gameplay, and also are bad for performance.
(Integrate CL 3249525 from Odin).
Change 3359326 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Optimization during attachment to check bool before expensive casts and body instance fetching.
(Integrate CL 3261262 from Odin).
Change 3359327 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Make bSkipAgentHeightCheckWhenPickingNavData actually ignore height when picking data.
(Integrate CL 3231908 from Odin)
Change 3359328 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Make a static FName in UMovementComponent::OverlapTest const and move it to a namespace.
(Integrate CL 3259985 from Odin)
Change 3359329 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix ProjectileMovementComponent continuing to simulate (and generate hit events) after it is deactivated during simulation. HasStoppedSimulation() should check if bIsActive is false.
(Integrate CL 3260001 from Odin)
Change 3359330 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix accumulated forces in CharacterMovement when movement mode or activation changes.
- Added CharacterMovementComponent::ClearAccumulatedForces()
- AddForce() and related functions now avoid adding the force if in MovementMode "None". When ticking in "None", forces are cleared so they don't pile up until the next valid movement mode. Forces are also cleared if the updated component changes or when the capsule simulates physics.
- CharacterMovementComponent::Deactivate() implemented to stop movement and call ClearAccumulatedForces().
- ClearAccumulatedForces() now also clears pending launch velocity.
- Exposed ClearAccumulatedForces() to blueprints.
- AddForce() and AddImpulse() now also check that character movement is active (not deactivated, able to tick).
- ApplyAccumulatedForces() does not call ClearAccumulatedForces(), since that would prevent pending launch.
- SimulateMovement() handles pending launch and clears forces regardless of whether it's simulated proxy. Added note to investigate using ApplyAccumulatedForces() in SimulateMovement().
- Inlined ActorComponent::IsActive().
(Integrate CLs 3259933, 3266018 from Odin)
Change 3359338 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) TickCharacterPose() and clear root motion before abandoning tick in UCharacterMovementComponent::PerformMovement() when movement mode is None. Prevents root motion building up until next valid movement mode.
(Integrate CL 3271928 from Odin)
Change 3359345 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix characters sliding when landing on slanted surfaces or stairs, when aggressive "Perch" settings could cause a line trace (from the center of a capsule) instead of capsule trace and thereby screw up the floor distance checks.
(Integrate CL 3273026 from Odin)
Change 3359381 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Performance tweak to ApplyRadialDamageWithFalloff(). Don't rebuild FRadialDamageEvent each loop over hit actors. Added stats for BreakHitResult()/MakeHitResult() under "stat game".
(Integrate CLs 3275415, 3276810 from Odin).
Change 3359422 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix build (CollisionProfile included).
Change 3359442 on 2017/03/22 by Michael.Noland
Blueprints: Prevent comment boxes from clipping the last letter of some words at the edge by increasing the padding on the wrap-at position
Change 3359445 on 2017/03/22 by Michael.Noland
PR #2989: Improved BP comment nodes (Contributed by projectgheist)
#jira UE-36788
#jira UE-39118
Change 3359446 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Add support for FScopedMovementUpdate to be able to queue up overlaps that do not require reflexive bGenerateOverlapEvents. This allows custom inspection or processing of overlaps within a scoped move. Overlap events from the move will still only trigger in UpdateOverlaps() if bGenerateOverlapEvents is enabled on both components, as before.
(Integrate CL 3278307 from Odin)
Change 3359494 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Make some data in FScopedMovementUpdate protected rather than private so it can easily be subclassed, and expose a new helper SetWorldLocationAndRotation().
(Integrated CL 3280775 from Odin).
Change 3359506 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) MovementComponent::Deactivate() calls StopMovement() to clear cached velocity. It's silly that reactivation many seconds or frames later would restore that velocity. Some special handling in CharacterMovement to keep it acting as before (it cleared velocity, but did not clear the path request, leaving that alone).
(Integrate CL 3287026 from Odin).
Change 3359514 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Collision.ListComponentsWithResponseToProfile command includes pending kill objects.
(Integrate CL 3293322 from Odin)
Change 3359553 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Optimization in CharacterMovement tick to not extract transform values twice.
(Integrate CL 3299098 from Odin).
Change 3359554 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: optimize UKismetMathLibrary::GetForwardVector() (converts Rotator to forward direction). This way we avoid building a matrix, and avoids 1 more SinCos call.
(Integrate CL 3296254 from Odin).
Change 3359555 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Add OnComponentCollisionSettingsChangedEvent delegate to PrimitiveComponent. Fixed SkeletalMeshComponent not calling Super implementation.
(Integrate CL 3295744 from Odin)
Change 3359561 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: AActor::GetComponents() with generic type should *not* assume the output array needs space for the entire contents of OwnedComponents. If OwnedComponents.Num() > the array reserve size, this forces an allocation, even if few or no components of the requested type are found.
(Integrate CL 3299111 from Odin)
Change 3359573 on 2017/03/22 by dan.reynolds
Added BP log to the Passive Mix Modifier test platform BP
Change 3359593 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: avoid allocations during creation in AAIController::PostInitializeComponents() (in development builds).
(Integrate CL 3299118 from Odin)
Change 3359595 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: HasActiveCameraComponent() and HasActivePawnControlCameraComponent() don't need to fill in an array while searching for a certain component. Also see CL 3359561, which could cause each of these functions to always cause an allocation when filling in the array when num components > 24.
(Integrate CL 3299116 from Odin)
Change 3359602 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Clean up some of the new fast overlap code in PrimitiveComponent. Mostly some variable renaming, and CVar access optimization.
(Integrate CL 3340622 from Odin)
Change 3359616 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Added support for bIgnoreTouches to FCollisionQueryParams. MoveComponent uses this to avoid PhysX collision queries for overlaps in GeomSweepMulti when bGenerateOverlapEvents is off.
(Integrate CL 3340635 from Odin)
Change 3359864 on 2017/03/23 by Mieszko.Zielinski
Added a safeguard to prevent crashes resulting from people trying to name their BB keys things longer than 1024 characters #UE4
#jira UE-43120
Change 3360884 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: AUDIO_MIXER_ENABLE_DEBUG_MODE turned off in Test builds. Shipping already had it off.
(Integrate CL 3310724 from Odin)
Change 3361045 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: new cvars to help with optimization:
- au.DisableReverbSubmix
- au.DisableEQSubmix
- au.DisableParallelSourceProcessing
- au.SetAudioChannelCount
Also checked in some code to cut down on the amount of parameter setting in EQ
(Integrate of CL 3303165 in Odin by Aaron.Mcleran)
Change 3361172 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: added stat for HRTF.
(Integrate CL 3310728 from Odin)
Change 3361189 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) CVar to toggle HRTF for perf settings. Default is on.
(Integrate CL 3310926 from Odin).
Change 3361914 on 2017/03/23 by Aaron.McLeran
UE-42649 Fixing crash in cleaning up active sound in sound concurrency
-Handling edge case of an active sound not have a sound base ptr, which is possible.
Change 3361924 on 2017/03/23 by Aaron.McLeran
UE-41378 Fixing passive mix modifier bug
Change 3361978 on 2017/03/23 by Aaron.McLeran
UE-42627 Fix for when audio device is removed and getting a deadlock in computing audio clock
Change 3361989 on 2017/03/23 by Aaron.McLeran
PR #3010: Check for null GEngine on sound processing
Change 3362053 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: Avoid thousands of Array.Add() calls during processing, which on shipping still does checks to see if the allocator has to grow, and updates ArrayCount.
(Integrate CL 3311120 from Odin)
Change 3362102 on 2017/03/23 by Aaron.McLeran
PR #3182: Enabled SwitchOnEnum nodes for EAttenuationShape and EAttenuationDistanceModel
Change 3362153 on 2017/03/23 by Aaron.McLeran
UE-43286 Oculus audio plugin not working/available
Change 3362162 on 2017/03/23 by Aaron.McLeran
UE-42252 Frequent ensure in FLevelEditorViewportClient::UpdateAudioListener
Change 3362206 on 2017/03/23 by Aaron.McLeran
UE-43287 Fixing HRTF spatialization in editor viewport
- Steam Audio doesn't support multiple audio devices at the moment
- Instead of hard-coding all audio plugins to not work in main audio device (GDC temp fix), I allow audio plugins to specify if they should be used on main audio device
Change 3362775 on 2017/03/24 by mason.seay
Replaced deprecated node
Change 3363024 on 2017/03/24 by Ben.Zeigler
Fix regression in behavior of streamable manager where loading both a valid and null asset used to work but now fails. Instead added a warning for that case, but if only null are requested it still fails with an error
Change 3363030 on 2017/03/24 by Zak.Middleton
#ue4 - Lower default max sendrate for clients to 60Hz from 90Hz when net speed is high and player count is low. Throttled rate remains at 45Hz. This value has been tested in Paragon with no ill effect, and saves on bandwidth and server CPU when clients run at high framerate.
Change 3363036 on 2017/03/24 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: turned a float divide into a multiply. It happens at least 32k times per audio update.
(Integrate CL 3311158 from Odin)
Change 3363541 on 2017/03/24 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: remove pointer indirection, and successive TArray Add()s in GetChannelMap().
(Integrate CL 3311169 from Odin)
Change 3363642 on 2017/03/24 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: Save ~5% total audio update time. Savings in "Source Output Buffers".
- Removed function call overhead to updating channel map. 64,000 function calls...
- Simplified FSourceParam::Update() to reduce branching and have 1 return site.
- Added alternative to GetChannelMap() called UpdateChannelMap() that avoids copying out values to an array. The values can then be fetched from the channel data directly.
(Integrate CL 3311235 from Odin)
Change 3364441 on 2017/03/24 by Ben.Zeigler
Fix issue where calling LoadLocalIniFile on a plugin file would result in an empty file. It was assuming engine/game dirs, now it instead pulls it out of GConfig if available.
This fixes issue where iterative cooking would fail on plugin config files
Add FindConfigFileWithBaseName to GConfig
Change 3364652 on 2017/03/25 by Phillip.Kavan
#jira UE-43210 - Fix a runtime VM crash upon removing an element from a set after consecutive add/remove iterations.
Change summary:
- Fixed FScriptSet::Add() to initialize the HashIndex member of the new element when the HashSize does not change.
Change 3365609 on 2017/03/27 by Richard.Hinckley
#jira UEDOC-4720
Fixed global enums being dropped from documentation after being extracted by Doxygen.
Change 3365737 on 2017/03/27 by Marc.Audy
Move setting of the ParentComponent property on an actor to PostRepNotifies instead of having a separate OnRep function.
Change 3365795 on 2017/03/27 by Marc.Audy
Fix compile error
Change 3365894 on 2017/03/27 by Phillip.Kavan
#jira UE-35507 - Fix for a GLEO when choosing an LSBP class as the default value for a class input pin in a non-LSBP graph.
Change summary:
- Modified FGraphPinFilter::IsClassAllowed() to disallow a given class if the type is contained within a map package that does not match the current graph context.
Change 3366067 on 2017/03/27 by Marc.Audy
Add UWorld* to PostLoadMap indicating which world has been loaded. Null if an error has occurred.
#jira UE-40228
Change 3366097 on 2017/03/27 by Marc.Audy
Fixed missed deprecation disable pairing for PostLadMap
Change 3366170 on 2017/03/27 by Aaron.McLeran
Fixing div by zero
Change 3366221 on 2017/03/27 by Aaron.McLeran
UE-43240 Removing dependency on component visualizers in runtime Phonon module.
Change 3366698 on 2017/03/27 by Marc.Audy
Fix Orion compile errors
Change 3366782 on 2017/03/27 by Aaron.McLeran
Bringing over optimizations from Odin to Dev-framework.
Original CL 3311435
Change 3366818 on 2017/03/27 by Aaron.McLeran
Bringing fix from Odin to Dev-Framework from CL 3304533
Fix for rare condition that stomps memory during source recycling.
Change 3366984 on 2017/03/27 by Michael.Noland
Blueprints: Downgraded a warning in the connection drawing policy to verbose to suppress it. It does no good to a typical user.
#jira UE-41638
Change 3367085 on 2017/03/27 by Brent.Pease
- Improve AudioMixer buffering so that only two buffers are needed instead of three, buffer submission and buffer processing are ovelapped, and a warning is issued if the audio processing thread can not keep up.
- Added time critical thread priority so that audio processing is not starved which would produce clicks and popping
- Allow the audio thread to not be created if a platform implements its own BeginGeneratingAudio() call (as happens on Android)
Change 3367434 on 2017/03/28 by Marc.Audy
Fix UT compile error
Change 3368587 on 2017/03/28 by Mike.Beach
Adding a "CookedOnly" plugin type (now used by the nativized Blueprint plugin).
Change 3368724 on 2017/03/28 by Zak.Middleton
#ue4 - MovementComponent does not ignore initial blocking overlaps when moving from SafeMoveUpdatedComponent(). Set "p.MoveIgnoreFirstBlockingOverlap" back to zero and add a new flag that prevents the depenetration test from generating hit events (to prevent the problem discovered in UE-39387).
#jira UE-41613, UE-28610
Change 3368748 on 2017/03/28 by Dan.Oconnor
Provide &FUObjectThreadContext::Get().ObjLoaded when using the compilation manager, add validation functions for finding REINST/TRASH references
Change 3368852 on 2017/03/28 by Mike.Beach
Fixing a CIS error before it happens - wrapping implementation in preprocessor defines to match declaration in header.
Change 3368873 on 2017/03/28 by Dan.Oconnor
Rather than collecting script object references, just use the ScriptObjectReferences array. This allows reference replacing archives to update ScriptObjectReferences.
Change 3368998 on 2017/03/28 by Dan.Oconnor
Setting CLASS_Interface early in the compilation process
Change 3369494 on 2017/03/29 by Marc.Audy
Fix UAT compile error
Change 3369924 on 2017/03/29 by Zak.Middleton
#ue4 - Allow CharacterMovement AdjustFloorHeight() to adjust using the line trace if in penetration. Force next floor check so it will check after it depenetrates.
#jira UE-36973
Change 3369932 on 2017/03/29 by Ben.Zeigler
#jira UE-19494 Finish asset auditing work by allowing reading back a cooked asset registry in the editor
Split off FAssetRegistryState as the struct to hold serialization and accessors, to allow loading multiple platform states at once.
Optimized runtime asset registry serialization to be around 1/3 as large as before. Dependencies are disabled by default for the runtime registry, you can re-enable with bSerializeDependencies in Engine.ini
Add FAssetPackageData which is explicitly per-package and only updated on save/load time. File size is stored in here and is computed for both editor and cooked data
Add code to AssetManagerEditorModule to allow loading pre-cooked asset registry files and reading cooked sizes. The Asset Audit window now has a platform drop down that allows reading from cooked data
Rename ChunkManifestGenerator to AssetRegistryGenerator and change it to directly hold an FAssetRegistryState internally
Add new experimental AssetRegistry mode for iterative cooking. This mode is much faster as it does not need to do it's own internal dependency checking and it can be enabled with bUseAssetRegistryForIteration
Change it so during cooking it doesn't directly load string asset references, but instead cues them for cook and uses the asset registry to find and add redirector mappings that are used during save time
Change 3370028 on 2017/03/29 by Ben.Zeigler
CIS fix
Change 3370360 on 2017/03/29 by Mike.Beach
Adding an extra field to FPlatformInfo; a 'UBTTarget' identifier intended to sync up with UBT's UnrealTargetPlatform enum (needed for programatically generating plugin platform whitelists).
Change 3370363 on 2017/03/29 by Ben.Zeigler
Fix issue where loading out of date editor asset registry cache would throw pointless errors
Change 3370414 on 2017/03/29 by Marc.Audy
Remove autos
Change 3370428 on 2017/03/29 by Ben.Zeigler
Fix linux CIS issue, remove implicit conversion from FSavePackageResultStruct back to enum result as it was creating ambiguous operators
Change 3370453 on 2017/03/29 by Marc.Audy
CIS fix
Change 3370548 on 2017/03/29 by Marc.Audy
#rn Fix issues with seamless travel in PIE and shared sub levels between different parents.
Change 3370564 on 2017/03/29 by Mieszko.Zielinski
PR #3429: fix comment typo (Contributed by kayama-shift)
Change 3370602 on 2017/03/29 by Mieszko.Zielinski
Fixed FRecastTileGenerator::Modifiers being erroneously counted twice when stating memory #UE4
Change 3370615 on 2017/03/29 by Phillip.Kavan
#jira UE-35515 - No longer crash when creating a new BP class from one or more selected Actors in which the root component is not Blueprint-spawnable.
Change summary:
- Modified FKismetEditorUtilities::AddComponentsToBlueprint() to handle deferred SceneComponent SCS node adds when the parent component was not also added (due to not being BP-spawnable).
Change 3370693 on 2017/03/29 by Michael.Noland
Fixing some bad indentation
#rnx
Change 3370740 on 2017/03/29 by Ben.Zeigler
DLC/Mod Cooking fixes, the list of packages from release build as in uncooked filename format so fixed code and made this more obvious
Fix Asset Registry to allow loading multiple source asset registries into the same state, by keeping a list of preallocated buffers
Change 3370792 on 2017/03/29 by Michael.Noland
Blueprints: Deleted some unversioned backwards compat. code that would only matter for assets older than VER_UE4_OLDEST_LOADABLE_PACKAGE
Change 3370794 on 2017/03/29 by Michael.Noland
PR #3190: Reduce some output logging
- Reduced an Oculus log from Log to Verbose because it spams quite a bit
- Corrected the spelling and the meaning of a blueprint warning when an invalid breakpoint is encountered
- Treat UInputComponent::GetAxisValue(None) as not a warning
- Switch FGenericSaveGameSystem::LoadGame to silently attempt to load the file, it returns success/failure and it isn't necessary to have a separate warning at the file i/o layer
#jira UE-41446
Change 3370831 on 2017/03/29 by Dan.Oconnor
Iteration on compilation manager
- Fix Skeleton class compilation order
- Pass ObjLoaded array to compilation manager to ensure all objects get PostLoaded
- Make sure data only classes get reinstanced, so that UpdateCustomPropertyListForPostConstruction is run correctly
Change 3370923 on 2017/03/29 by Michael.Noland
Blueprints: Added an icon to indicate whether or not a macro contains latent actions
- Note: The state of the icon is cached for performance reasons on request, with the cache being cleared when the BP containing the macro is modified or a macro graph is removed
- This does mean that editing the inner macro of a nested macro to add/remove a latent action will not show up in visualization for the outer node until the editor is restarted or the outer macro is modified
Change 3371039 on 2017/03/29 by Dan.Oconnor
Hacky fix for dropping return params when a function's return node is culled
Change 3371750 on 2017/03/30 by Richard.Hinckley
Stencil write mask exposed. Adds nine new options (all bits, plus each bit individually - write on pass or depth fail). This allows stencil overlaps to be detected by mixing masks.
Change 3372513 on 2017/03/30 by Ben.Zeigler
#jira UE-43475 Fix cooker issues with string asset references to null packages.
Fix redirector detection to follow recursive chains, and correctly strip object class from redirected string asset references.
Change 3372565 on 2017/03/30 by Richard.Hinckley
Rolling back stencil change, will be moved to Dev-Rendering.
Change 3372764 on 2017/03/30 by Marc.Audy
Do not create a duplicate sub object that is not in the annotation if a sub object of the same name and class already exists.
#jira UE-43328
#rn Fixed cases where the blueprint of a class used as a child actor could be dirtied when compiling the owning blueprint.
Change 3372847 on 2017/03/30 by Marc.Audy
Fix missing include
Change 3372994 on 2017/03/30 by Zak.Middleton
#ue4 - Fix build in Debug (checkSlow using incorrect function params).
Change 3373195 on 2017/03/30 by Mike.Beach
For nativization, changing it so we key off of the target platform-info struct instead of the platform (in preparation for defining the nativized plugin's platform whitelist).
Change 3373320 on 2017/03/30 by mason.seay
Basic for TM-Gameplay map (WIP)
Change 3373448 on 2017/03/30 by Ben.Zeigler
Fix recursive size display in audit window
Improve asset manager comments
Change 3373576 on 2017/03/30 by dan.reynolds
AEOverview Update:
Updated Passive Mix Modifier Test based on recent changes in behavior
Also added Initial Delay Time timer to test
Change 3373589 on 2017/03/30 by dan.reynolds
AEOverview Passive Mix Mod Test Map update
Change 3373624 on 2017/03/30 by Zak.Middleton
#ue4 - Increase Pawn location replication precision to 2 decimal places from 0. Prevents replicated pawns from being inside geometry by a large amount. Removed CVars controlling CharacterMovement proxy shrink amount and made those instanced properties on the component.
#jira UE-40420
Change 3374271 on 2017/03/31 by Marc.Audy
Fix deprecation warning in new UT code
Change 3374320 on 2017/03/31 by Marc.Audy
Fix HTML5 compile.
Change 3374413 on 2017/03/31 by Jeff.Farris
Added ENGINE_API to 2 functions in PlanarReflection, so projects can subclass it.
(Copied CL 3276454 from Robo Recall to Dev-Framework)
Change 3374414 on 2017/03/31 by Jeff.Farris
Added support for setting UNavigationSystem::bUpdateNavOctreeOnComponentChange
(Copied CL 3267903 from RoboRecall to Dev-Framework)
Change 3374616 on 2017/03/31 by Ben.Zeigler
Copy of Fortnite CL #3312058 to add a missing redirector. I do not understand why this is not erroring on Main, I guess my minor cook changes somehow exposed this
Change 3374664 on 2017/03/31 by Jeff.Farris
Consted AIController::GetBrainComponent()
(Copied 3239101 from Robo Recall to Dev-Framework)
Change 3374665 on 2017/03/31 by Jeff.Farris
PrimitiveComponent bIgnoreRadialImpulse and bIgnoreRadialForce are now exposed to BPs. bIgnoreRadialImpulse now respected when applying impulse to relevant movement components.
(Coped CL 3242355 from Robo Recall to Dev-Framework)
Change 3374779 on 2017/03/31 by Jeff.Farris
Exposed SetAllPhysicsAngularVelocity to blueprints
(Copied CL 3228390 from Robo Recall to Dev-Framework)
Change 3374792 on 2017/03/31 by Ben.Zeigler
#jira UE-42618
PR #3347: Improve support for FGameplayAttributeData properties in attribute sets (Contributed by hoelzl)
Change 3374844 on 2017/03/31 by Ben.Zeigler
#jira UE-42587 Fix issue where supressed gameplay effects that granted abilities would only work the first time, it now clears out of date ability handles
Change 3374925 on 2017/03/31 by Marc.Audy
Don't throw warning about missing world context for inactive worlds.
#jira UE-42679
Change 3374927 on 2017/03/31 by Michael.Noland
Editor: Added options for configuring the editor window background color and texture, which can be useful to visually distinguish the editor when switching between different branches or projects
Change 3374995 on 2017/03/31 by Michael.Noland
Editor: Rewrote CallInEditor support and promoted it so it can be used on functions in any class, not just blueprints derived from AActor:
- CallInEditor used on native UFUNCTION() declarations will now show up without having to make a BP subclass
- CallInEditor can now be used as a top-level keyword in the UFUNCTION() declaration (e.g., UFUNCTION(Category=CoolCommands, CallInEditor))
- Now shows each function as a separate button, placed in the category associated with the function
- The button strip entry is now searchable by function name or tooltip
- Prevented operating on functions that have parameters or return values, which would crash before
- Removed the duplicate copies of properties placed in the Blutility section
- Added a scoped transaction around CallInEditor execution
- Allowed functions to be marked as CallInEditor in addition to custom events (currently we don't allow editing category or tooltip on custom events...)
Editor: Moved Experimental/EarlyAccessPreview details customizations up to UObject so it can be used on any class, not just actors/components
Upgrade Note: Behavior has changed so that CallInEditor can be called on CDOs as well, this will probably be walked back in a subsequent update, at least for actors and components.
Change 3375005 on 2017/03/31 by Michael.Noland
Fixing incremental compilation error due to missing include
#rnx
Change 3375015 on 2017/03/31 by Michael.Noland
Fixing incremental compilation error due to missing include (for real)
#rnx
Change 3375045 on 2017/03/31 by Marc.Audy
Only calculate the streaming levels prefix during seamless travel if it is a PIE world
#jira UE-43485
Change 3375053 on 2017/03/31 by Ben.Zeigler
#jira UE-41988 Fix it so leaving PIE while gameplay debugger is active will disable HUD extensions properly, restoring ability to print messages to screen
Change 3375057 on 2017/03/31 by Ben.Zeigler
#jira UE-39226 Don't add to DrawDebug list for player controllers with no local player
Change 3375121 on 2017/03/31 by Michael.Noland
Added missing include for FScopedTransaction
#rnx
Change 3375222 on 2017/03/31 by mason.seay
Submitting work done to TM-Gameplay. Still WIP
Change 3375308 on 2017/03/31 by Michael.Noland
Editor: Added back CDO filtering to CallInEditor, it's too easy to explode in the BP editor. May consider allowing opt-in behavior when we revisit Blutilities
Change 3375321 on 2017/03/31 by Ben.Zeigler
#jira UE-39062 Fix issue where using the level editor toolbar to modify blueprints was not properly marking the blueprints as modified, so the constructor links weren't being updated until manually compiling or resaving
Always recompute post constructor links when calling MarkBlueprintAsModified, as it can be called from native and other places where we modified CDOs but don't have a property changed event
Change 3375372 on 2017/03/31 by Ben.Zeigler
#jira UE-39568 Change Components to specifically update LatentActions the same as Actors do, so they update properly if bUpdateWhilePaused is set
Change 3375380 on 2017/03/31 by Marc.Audy
Modify IsMainAudioDevice to deal with the case where no audio device has been created.
Change 3375402 on 2017/03/31 by Marc.Audy
Fix DuplicateWorldForPIE in the case that the OwningWorld is null.
Change 3376037 on 2017/04/02 by Phillip.Kavan
#jira UE-35332 - Preserve the least common ancestor pin type on object array function node inputs after a node refresh.
Change summary:
- Added UK2Node_CallArrayFunction::GetDynamicallyTypedPins() to consolidate the code that retrieves type-dependent parameter pins.
- Added FBlueprintEditorUtils::FindLinkedPinWithAuthoritativePinType() to consolidate the code that considers other linked pins when choosing which type to propagate to type-dependent parameter pins.
- Added FBlueprintEditorUtils::PropagatePinTypeInfo() to consolidate the common code from UK2Node_CallArrayFunction::PropagateArrayTypeInfo(); this eliminated a redundant retrieval of the target pin set.
- Refactored UK2Node_CallArrayFunction::PropagateArrayTypeInfo() to now call FBlueprintEditorUtils::PropagatePinTypeInfo() after retrieving the set of dynamically-typed pins.
- Refactored UK2Node_CallArrayFunction::NotifyPinConnectionListChanged() to remove some unnecessary iteration passes and to ensure that we propagate the authoritative (least common ancestor) pin type for object- and struct-based types.
Change 3376364 on 2017/04/03 by Richard.Hinckley
UE-40920 Fix to Paper2D flipbook timeline editor. Previously, the timeline shown was one frame shorter than the animation. Now, the timeline shows the correct frame count.
Change 3376366 on 2017/04/03 by Richard.Hinckley
UE-40920 Bugfix to Paper2D flipbook editor. The red line indicating the current frame now adjusts properly if the timeline is longer than the editor window and the scroll bar is moved to the right.
Change 3376517 on 2017/04/03 by Marc.Audy
PR #3195: Added support for GamePad on RawInput Plugin (Contributed by katze7514)
#jira UE-41499
Change 3376708 on 2017/04/03 by Mike.Beach
Moving nativized plugins into a centralized folder (so we can use it as an additional plugin lookup dir) - this is so we can ultimately keep the generated code around for debugging purposes.
Summary of changes:
- nativized plugins now moved to ...\Intermediate\Plugins\<PLATFORM>\NativizedAssets
- corresponding manifest files get saved inside the module and named to match the platform
- nativized modules now whitelisted only for the platform they were generated for
- cleanup on how we generate paths (now piping in platform name) and pass multi-cook process ids (for building manifest filenames)
- extending the 'NativizeAssets' command line, so you can use it to specify the target plugin path (utilized by UAT to coordinate the plugin path between cook & build - was previously hardcoded in multiple places).
Change 3376826 on 2017/04/03 by Phillip.Kavan
#jira UE-43330 - Fix a crash when adding an input parameter to a Custom Event node after deleting a Function Graph containing a Create Event node.
Change summary:
- Modified UK2Node_CreateDelegate::HandleAnyChangeWithoutNotifying() to check for a valid blueprint before accessing it (since the accessor is now a checked operation).
- Modified UK2Node_CreateDelegate::GetScopeClass() to also check for a valid blueprint before accessing it.
- Switched 'NULL' to 'nullptr' in a few spots.
Change 3376831 on 2017/04/03 by Ben.Zeigler
#jira UE-43500, clean up UPackage when EDL/async loading fails. This restores EDL LoadPackage to work the same as non EDL and return NULL instead of an invalid empty package
Change 3376846 on 2017/04/03 by Ben.Zeigler
#jira UE-38760 Properly refresh exec pins when removing pin from a Switch on Int node
Change 3376850 on 2017/04/03 by Dan.Oconnor
Use authoritative class to mitigate compilation order issues
Change 3376961 on 2017/04/03 by Ben.Zeigler
#jira UE-43127 Add struct ops implementations for FIntVector and FBox2d, any blueprint type needs struct ops to avoid crashes
Fix Box2d variable name in NoExportTypes
Change 3376985 on 2017/04/03 by Ben.Zeigler
#jira UE-43582 Remove Xbox-specific code from AssetRegistry because it won't work after my refactor. The serialization is much faster now and neither Bob nor I can conceive of a way this would take long enough to stall the main thread. If it it is somehow a problem, it should be wrapped in a slow task instead
Change 3377009 on 2017/04/03 by Ben.Zeigler
#jira UE-43036 Fix crash when right clicking blueprint with no parent class. Ensures are fine but crashes should be avoided so people can try to copy data out of them
Change 3377054 on 2017/04/03 by Zak.Middleton
#ue4 - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta.
#jira UE-40344
#udn https://udn.unrealengine.com/questions/310497/large-delta-time-for-first-player-movement-update.html
Change 3377061 on 2017/04/03 by Dan.Oconnor
Fixes for issues exposed by cooking with compilation manager. When cooking we end up with more blueprints compiling at a single time, which highlighted issues reading from generated classes while they were actively regenerating.
Note that EInternalCompilerFlags::PostponeLocalsGenerationUntilPhaseTwo has only been added to mitigate risk - there is no known reason that existing compilation flows can't postpone generatation of local variables.
Change 3377073 on 2017/04/03 by Mike.Beach
CIS fix - proper initialization ordering.
Change 3377371 on 2017/04/03 by Ben.Zeigler
#jira UE-43144 Disallow creating map of FText, like bool it is not hashable
Change 3377395 on 2017/04/03 by Dan.Oconnor
Build fix - make order in source match initialization order in artifact
Change 3377417 on 2017/04/03 by Dan.Oconnor
Speculative SA fix
Change 3377496 on 2017/04/03 by Aaron.McLeran
#jira UE-43558 Cleaning up shutdown code with audio plugins.
Change 3377608 on 2017/04/03 by Zak.Middleton
#ue4 - Added function ACharacter::CacheInitialMeshOffset() to cache initial mesh offset, used as the target for network smoothing. Added a call to this function from BeginPlay() in addition to the existing call from PostInitializeComponents(), and exposed this to blueprints as well. This fixes the case of people moving the mesh in BeginPlay rather than in the editor or construction script and not having the mesh offset reflected correctly in network games.
#jira UE-38966
Change 3377880 on 2017/04/03 by Aaron.McLeran
Audio bug fixes
#jira UE-43600 Fixing sounds played by playsoundatlocation for audio volume calculations
#jira UE-43601 Fixing listener volume interpolation
#jida UE-43602 Fixing reverb/eq interpolation
Change 3377908 on 2017/04/03 by Phillip.Kavan
#jira UE-43565 - Fix a regression on type-dependent array function node pins that have more than one link.
Change summary:
- Added FBlueprintEditorUtils::FindLinkedPinWithMostDerivedPinType()
- Modified FBlueprintEditorUtils::FindLinkedPinWithAuthoritativePinType() to properly handle pins that have multiple links.
Change 3377912 on 2017/04/03 by Dan.Oconnor
Fix for missing SUBINSTANCE variables on anim BP skeletons. I elected to force SUBINSTANCE variable creation for the compilation manager codepath
Change 3377946 on 2017/04/03 by Ben.Zeigler
#jira UE-43594 Fix issue with streamable manager where a failed load would leave bAsyncLoadRequestOutstanding, which would confuse later calls to stream the same asset
Lower some error verbosity now that I believe I have tracked down the issue
Change 3377950 on 2017/04/03 by Michael.Noland
Blueprints: Prevent merge tool from crashing in SVN when looking at a file with gaps in the revision history
(May still not work correctly, but it won't crash; full fix covered by UE-43603)
#jira UE-22428
Change 3377981 on 2017/04/03 by Michael.Noland
PR #3416: UE-43005: Prevent crash due to too long name (Contributed by projectgheist)
#jira UE-43291
#jira UE-43005
Change 3378039 on 2017/04/04 by Michael.Noland
PhysX: Allowed the editor to compile when bRuntimePhysicsCooking is disabled (WITH_EDITOR is used in every place in C++ to force it in already)
Change 3378041 on 2017/04/04 by Michael.Noland
Paper2D: Adjusted under what circumstances CreatePhysicsMeshes is called on various Paper2D types to match UProceduralMeshComponent
Change 3378081 on 2017/04/04 by Dan.Oconnor
Fix Blueprint Context nodes so that they don't rely on Ar.IsBeingSaved() call before compilation
3x because of copy/paste
Change 3378094 on 2017/04/04 by Dan.Oconnor
Add missing preload call for compilation manager
Change 3378917 on 2017/04/04 by Marc.Audy
Fix static analysis (which is very dumb)
Change 3378986 on 2017/04/04 by Dan.Oconnor
Fix bad merge
Change 3379100 on 2017/04/04 by Dan.Oconnor
Fix missing CPF_ConstParm/CPF_ReferenceParm/CPF_OutParm logic in 'fast' skeleton path
#jira UE-43629
Change 3379102 on 2017/04/04 by Ben.Zeigler
Actually fix StreamableManager issues with cancelling a request messing up things in the future. We now always queue a request, even if it failed before or there is one in progress. This has to be done to avoid issues with cancelling the existing request or mounting new files after it's failed once
Now that StreamableManager will retry missing files, add failed load packages to the known missing list so it won't spam errors over and over
Change 3379147 on 2017/04/04 by Zak.Middleton
#ue4 - Improve on CL 3377608: Made Character::CacheInitialMeshOffset() take location and rotation params so you can be explicit on the values, in case you try to change these during network smoothing, where reading the relative offsets would have been skewed.
Change 3379254 on 2017/04/04 by Aaron.McLeran
Fixing sounds in audio mixer when no EQ has been set.
Change 3379760 on 2017/04/04 by Ben.Zeigler
#jira UE-43647 Don't delete failed async packages that are rooted
[CL 3380073 by Dan Oconnor in Main branch]
2017-04-04 20:49:52 -04:00
|
|
|
return (float)(CachedWidth - 32.0f);
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool SGraphNodeComment::IsNameReadOnly() const
|
|
|
|
|
{
|
|
|
|
|
return !IsEditable.Get() || SGraphNode::IsNameReadOnly();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void SGraphNodeComment::UpdateGraphNode()
|
|
|
|
|
{
|
|
|
|
|
// No pins in a comment box
|
|
|
|
|
InputPins.Empty();
|
|
|
|
|
OutputPins.Empty();
|
|
|
|
|
|
|
|
|
|
// Avoid standard box model too
|
|
|
|
|
RightNodeBox.Reset();
|
|
|
|
|
LeftNodeBox.Reset();
|
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
|
|
|
|
|
|
|
|
// Remember if we should be showing the bubble
|
|
|
|
|
UEdGraphNode_Comment* CommentNode = CastChecked<UEdGraphNode_Comment>(GraphNode);
|
2018-07-16 11:43:36 -04:00
|
|
|
bCachedBubbleVisibility = CommentNode->bCommentBubbleVisible_InDetailsPanel;
|
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
|
|
|
|
2014-08-13 03:41:45 -04:00
|
|
|
// Setup a tag for this node
|
|
|
|
|
FString TagName;
|
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
|
|
|
|
|
|
|
|
// We want the name of the blueprint as our name - we can find the node from the GUID
|
|
|
|
|
UObject* Package = GraphNode->GetOutermost();
|
|
|
|
|
UObject* LastOuter = GraphNode->GetOuter();
|
|
|
|
|
while (LastOuter->GetOuter() != Package)
|
2014-08-13 03:41:45 -04:00
|
|
|
{
|
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
|
|
|
LastOuter = LastOuter->GetOuter();
|
2014-08-13 03:41:45 -04:00
|
|
|
}
|
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
|
|
|
TagName = FString::Printf(TEXT("GraphNode,%s,%s"), *LastOuter->GetFullName(), *GraphNode->NodeGuid.ToString());
|
2014-03-14 14:13:41 -04:00
|
|
|
|
2015-01-15 15:57:51 -05:00
|
|
|
SetupErrorReporting();
|
2014-03-14 14:13:41 -04:00
|
|
|
|
2014-09-05 07:39:52 -04:00
|
|
|
// Setup a meta tag for this node
|
|
|
|
|
FGraphNodeMetaData TagMeta(TEXT("Graphnode"));
|
|
|
|
|
PopulateMetaTag(&TagMeta);
|
|
|
|
|
|
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
|
|
|
CommentStyle = FEditorStyle::Get().GetWidgetStyle<FInlineEditableTextBlockStyle>("Graph.CommentBlock.TitleInlineEditableText");
|
|
|
|
|
CommentStyle.EditableTextBoxStyle.Font.Size = CommentNode->FontSize;
|
|
|
|
|
CommentStyle.TextStyle.Font.Size = CommentNode->FontSize;
|
|
|
|
|
CachedFontSize = CommentNode->FontSize;
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
bool bIsSet = GraphNode->IsA(UEdGraphNode_Comment::StaticClass());
|
|
|
|
|
this->ContentScale.Bind( this, &SGraphNode::GetContentScale );
|
2014-11-03 10:40:57 -05:00
|
|
|
this->GetOrAddSlot( ENodeZone::Center )
|
2014-03-14 14:13:41 -04:00
|
|
|
.HAlign(HAlign_Fill)
|
|
|
|
|
.VAlign(VAlign_Fill)
|
|
|
|
|
[
|
|
|
|
|
SNew(SBorder)
|
|
|
|
|
.BorderImage( FEditorStyle::GetBrush("Kismet.Comment.Background") )
|
|
|
|
|
.ColorAndOpacity( FLinearColor::White )
|
|
|
|
|
.BorderBackgroundColor( this, &SGraphNodeComment::GetCommentBodyColor )
|
|
|
|
|
.Padding( FMargin(3.0f) )
|
2014-09-05 07:39:52 -04:00
|
|
|
.AddMetaData<FGraphNodeMetaData>(TagMeta)
|
2014-03-14 14:13:41 -04:00
|
|
|
[
|
|
|
|
|
SNew(SVerticalBox)
|
|
|
|
|
.ToolTipText( this, &SGraphNode::GetNodeTooltip )
|
|
|
|
|
+SVerticalBox::Slot()
|
|
|
|
|
.AutoHeight()
|
|
|
|
|
.HAlign(HAlign_Fill)
|
|
|
|
|
.VAlign(VAlign_Top)
|
|
|
|
|
[
|
|
|
|
|
SAssignNew(TitleBar, SBorder)
|
|
|
|
|
.BorderImage( FEditorStyle::GetBrush("Graph.Node.TitleBackground") )
|
|
|
|
|
.BorderBackgroundColor( this, &SGraphNodeComment::GetCommentTitleBarColor )
|
|
|
|
|
.Padding( FMargin(10,5,5,3) )
|
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3380068)
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3358702 on 2017/03/22 by Marc.Audy
Always mark child actors pending kill when in PostLoad as often the World is too early to have a WorldContext which causes issues in DestroyActor
#jira UE-42679
Change 3358737 on 2017/03/22 by Mieszko.Zielinski
Exposed UBrainComponent::IsRunning() and UBrainComponent::IsPaused() to Blueprint #UE4
Change 3359062 on 2017/03/22 by Michael.Noland
Blueprints: Show the Save and Find in CB buttons when working with level script blueprints (they will save/show the map package)
#jira UE-30748
Change 3359066 on 2017/03/22 by Michael.Noland
PR #3348: Make fields of FAttributeMetaData editable (Contributed by hoelzl)
#jira UE-42620
Change 3359069 on 2017/03/22 by Michael.Noland
PR #3288: InverseLerp Blueprint Tooltips Clarification (Contributed by wunawuna)
#jira UE-42250
Change 3359108 on 2017/03/22 by Michael.Noland
Blueprints: Fix an issue where running the editor in a different culture could break pins on nodes that have optional arrays of pins (e.g., animation graph nodes like blend by layer)
#jira UE-36232
Change 3359235 on 2017/03/22 by Marc.Audy
Expose bShouldPerformFullTickWhenPaused to blueprints and details panel
#jira UE-17286
Change 3359324 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Disable collision on NavModifierVolumes. Previously they had an OverlapAll response and generated overlap events. They are only supposed to be used for preventing nav mesh generation, but overlap events could affect gameplay, and also are bad for performance.
(Integrate CL 3249525 from Odin).
Change 3359326 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Optimization during attachment to check bool before expensive casts and body instance fetching.
(Integrate CL 3261262 from Odin).
Change 3359327 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Make bSkipAgentHeightCheckWhenPickingNavData actually ignore height when picking data.
(Integrate CL 3231908 from Odin)
Change 3359328 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Make a static FName in UMovementComponent::OverlapTest const and move it to a namespace.
(Integrate CL 3259985 from Odin)
Change 3359329 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix ProjectileMovementComponent continuing to simulate (and generate hit events) after it is deactivated during simulation. HasStoppedSimulation() should check if bIsActive is false.
(Integrate CL 3260001 from Odin)
Change 3359330 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix accumulated forces in CharacterMovement when movement mode or activation changes.
- Added CharacterMovementComponent::ClearAccumulatedForces()
- AddForce() and related functions now avoid adding the force if in MovementMode "None". When ticking in "None", forces are cleared so they don't pile up until the next valid movement mode. Forces are also cleared if the updated component changes or when the capsule simulates physics.
- CharacterMovementComponent::Deactivate() implemented to stop movement and call ClearAccumulatedForces().
- ClearAccumulatedForces() now also clears pending launch velocity.
- Exposed ClearAccumulatedForces() to blueprints.
- AddForce() and AddImpulse() now also check that character movement is active (not deactivated, able to tick).
- ApplyAccumulatedForces() does not call ClearAccumulatedForces(), since that would prevent pending launch.
- SimulateMovement() handles pending launch and clears forces regardless of whether it's simulated proxy. Added note to investigate using ApplyAccumulatedForces() in SimulateMovement().
- Inlined ActorComponent::IsActive().
(Integrate CLs 3259933, 3266018 from Odin)
Change 3359338 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) TickCharacterPose() and clear root motion before abandoning tick in UCharacterMovementComponent::PerformMovement() when movement mode is None. Prevents root motion building up until next valid movement mode.
(Integrate CL 3271928 from Odin)
Change 3359345 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix characters sliding when landing on slanted surfaces or stairs, when aggressive "Perch" settings could cause a line trace (from the center of a capsule) instead of capsule trace and thereby screw up the floor distance checks.
(Integrate CL 3273026 from Odin)
Change 3359381 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Performance tweak to ApplyRadialDamageWithFalloff(). Don't rebuild FRadialDamageEvent each loop over hit actors. Added stats for BreakHitResult()/MakeHitResult() under "stat game".
(Integrate CLs 3275415, 3276810 from Odin).
Change 3359422 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix build (CollisionProfile included).
Change 3359442 on 2017/03/22 by Michael.Noland
Blueprints: Prevent comment boxes from clipping the last letter of some words at the edge by increasing the padding on the wrap-at position
Change 3359445 on 2017/03/22 by Michael.Noland
PR #2989: Improved BP comment nodes (Contributed by projectgheist)
#jira UE-36788
#jira UE-39118
Change 3359446 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Add support for FScopedMovementUpdate to be able to queue up overlaps that do not require reflexive bGenerateOverlapEvents. This allows custom inspection or processing of overlaps within a scoped move. Overlap events from the move will still only trigger in UpdateOverlaps() if bGenerateOverlapEvents is enabled on both components, as before.
(Integrate CL 3278307 from Odin)
Change 3359494 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Make some data in FScopedMovementUpdate protected rather than private so it can easily be subclassed, and expose a new helper SetWorldLocationAndRotation().
(Integrated CL 3280775 from Odin).
Change 3359506 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) MovementComponent::Deactivate() calls StopMovement() to clear cached velocity. It's silly that reactivation many seconds or frames later would restore that velocity. Some special handling in CharacterMovement to keep it acting as before (it cleared velocity, but did not clear the path request, leaving that alone).
(Integrate CL 3287026 from Odin).
Change 3359514 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Collision.ListComponentsWithResponseToProfile command includes pending kill objects.
(Integrate CL 3293322 from Odin)
Change 3359553 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Optimization in CharacterMovement tick to not extract transform values twice.
(Integrate CL 3299098 from Odin).
Change 3359554 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: optimize UKismetMathLibrary::GetForwardVector() (converts Rotator to forward direction). This way we avoid building a matrix, and avoids 1 more SinCos call.
(Integrate CL 3296254 from Odin).
Change 3359555 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Add OnComponentCollisionSettingsChangedEvent delegate to PrimitiveComponent. Fixed SkeletalMeshComponent not calling Super implementation.
(Integrate CL 3295744 from Odin)
Change 3359561 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: AActor::GetComponents() with generic type should *not* assume the output array needs space for the entire contents of OwnedComponents. If OwnedComponents.Num() > the array reserve size, this forces an allocation, even if few or no components of the requested type are found.
(Integrate CL 3299111 from Odin)
Change 3359573 on 2017/03/22 by dan.reynolds
Added BP log to the Passive Mix Modifier test platform BP
Change 3359593 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: avoid allocations during creation in AAIController::PostInitializeComponents() (in development builds).
(Integrate CL 3299118 from Odin)
Change 3359595 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: HasActiveCameraComponent() and HasActivePawnControlCameraComponent() don't need to fill in an array while searching for a certain component. Also see CL 3359561, which could cause each of these functions to always cause an allocation when filling in the array when num components > 24.
(Integrate CL 3299116 from Odin)
Change 3359602 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Clean up some of the new fast overlap code in PrimitiveComponent. Mostly some variable renaming, and CVar access optimization.
(Integrate CL 3340622 from Odin)
Change 3359616 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Added support for bIgnoreTouches to FCollisionQueryParams. MoveComponent uses this to avoid PhysX collision queries for overlaps in GeomSweepMulti when bGenerateOverlapEvents is off.
(Integrate CL 3340635 from Odin)
Change 3359864 on 2017/03/23 by Mieszko.Zielinski
Added a safeguard to prevent crashes resulting from people trying to name their BB keys things longer than 1024 characters #UE4
#jira UE-43120
Change 3360884 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: AUDIO_MIXER_ENABLE_DEBUG_MODE turned off in Test builds. Shipping already had it off.
(Integrate CL 3310724 from Odin)
Change 3361045 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: new cvars to help with optimization:
- au.DisableReverbSubmix
- au.DisableEQSubmix
- au.DisableParallelSourceProcessing
- au.SetAudioChannelCount
Also checked in some code to cut down on the amount of parameter setting in EQ
(Integrate of CL 3303165 in Odin by Aaron.Mcleran)
Change 3361172 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: added stat for HRTF.
(Integrate CL 3310728 from Odin)
Change 3361189 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) CVar to toggle HRTF for perf settings. Default is on.
(Integrate CL 3310926 from Odin).
Change 3361914 on 2017/03/23 by Aaron.McLeran
UE-42649 Fixing crash in cleaning up active sound in sound concurrency
-Handling edge case of an active sound not have a sound base ptr, which is possible.
Change 3361924 on 2017/03/23 by Aaron.McLeran
UE-41378 Fixing passive mix modifier bug
Change 3361978 on 2017/03/23 by Aaron.McLeran
UE-42627 Fix for when audio device is removed and getting a deadlock in computing audio clock
Change 3361989 on 2017/03/23 by Aaron.McLeran
PR #3010: Check for null GEngine on sound processing
Change 3362053 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: Avoid thousands of Array.Add() calls during processing, which on shipping still does checks to see if the allocator has to grow, and updates ArrayCount.
(Integrate CL 3311120 from Odin)
Change 3362102 on 2017/03/23 by Aaron.McLeran
PR #3182: Enabled SwitchOnEnum nodes for EAttenuationShape and EAttenuationDistanceModel
Change 3362153 on 2017/03/23 by Aaron.McLeran
UE-43286 Oculus audio plugin not working/available
Change 3362162 on 2017/03/23 by Aaron.McLeran
UE-42252 Frequent ensure in FLevelEditorViewportClient::UpdateAudioListener
Change 3362206 on 2017/03/23 by Aaron.McLeran
UE-43287 Fixing HRTF spatialization in editor viewport
- Steam Audio doesn't support multiple audio devices at the moment
- Instead of hard-coding all audio plugins to not work in main audio device (GDC temp fix), I allow audio plugins to specify if they should be used on main audio device
Change 3362775 on 2017/03/24 by mason.seay
Replaced deprecated node
Change 3363024 on 2017/03/24 by Ben.Zeigler
Fix regression in behavior of streamable manager where loading both a valid and null asset used to work but now fails. Instead added a warning for that case, but if only null are requested it still fails with an error
Change 3363030 on 2017/03/24 by Zak.Middleton
#ue4 - Lower default max sendrate for clients to 60Hz from 90Hz when net speed is high and player count is low. Throttled rate remains at 45Hz. This value has been tested in Paragon with no ill effect, and saves on bandwidth and server CPU when clients run at high framerate.
Change 3363036 on 2017/03/24 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: turned a float divide into a multiply. It happens at least 32k times per audio update.
(Integrate CL 3311158 from Odin)
Change 3363541 on 2017/03/24 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: remove pointer indirection, and successive TArray Add()s in GetChannelMap().
(Integrate CL 3311169 from Odin)
Change 3363642 on 2017/03/24 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: Save ~5% total audio update time. Savings in "Source Output Buffers".
- Removed function call overhead to updating channel map. 64,000 function calls...
- Simplified FSourceParam::Update() to reduce branching and have 1 return site.
- Added alternative to GetChannelMap() called UpdateChannelMap() that avoids copying out values to an array. The values can then be fetched from the channel data directly.
(Integrate CL 3311235 from Odin)
Change 3364441 on 2017/03/24 by Ben.Zeigler
Fix issue where calling LoadLocalIniFile on a plugin file would result in an empty file. It was assuming engine/game dirs, now it instead pulls it out of GConfig if available.
This fixes issue where iterative cooking would fail on plugin config files
Add FindConfigFileWithBaseName to GConfig
Change 3364652 on 2017/03/25 by Phillip.Kavan
#jira UE-43210 - Fix a runtime VM crash upon removing an element from a set after consecutive add/remove iterations.
Change summary:
- Fixed FScriptSet::Add() to initialize the HashIndex member of the new element when the HashSize does not change.
Change 3365609 on 2017/03/27 by Richard.Hinckley
#jira UEDOC-4720
Fixed global enums being dropped from documentation after being extracted by Doxygen.
Change 3365737 on 2017/03/27 by Marc.Audy
Move setting of the ParentComponent property on an actor to PostRepNotifies instead of having a separate OnRep function.
Change 3365795 on 2017/03/27 by Marc.Audy
Fix compile error
Change 3365894 on 2017/03/27 by Phillip.Kavan
#jira UE-35507 - Fix for a GLEO when choosing an LSBP class as the default value for a class input pin in a non-LSBP graph.
Change summary:
- Modified FGraphPinFilter::IsClassAllowed() to disallow a given class if the type is contained within a map package that does not match the current graph context.
Change 3366067 on 2017/03/27 by Marc.Audy
Add UWorld* to PostLoadMap indicating which world has been loaded. Null if an error has occurred.
#jira UE-40228
Change 3366097 on 2017/03/27 by Marc.Audy
Fixed missed deprecation disable pairing for PostLadMap
Change 3366170 on 2017/03/27 by Aaron.McLeran
Fixing div by zero
Change 3366221 on 2017/03/27 by Aaron.McLeran
UE-43240 Removing dependency on component visualizers in runtime Phonon module.
Change 3366698 on 2017/03/27 by Marc.Audy
Fix Orion compile errors
Change 3366782 on 2017/03/27 by Aaron.McLeran
Bringing over optimizations from Odin to Dev-framework.
Original CL 3311435
Change 3366818 on 2017/03/27 by Aaron.McLeran
Bringing fix from Odin to Dev-Framework from CL 3304533
Fix for rare condition that stomps memory during source recycling.
Change 3366984 on 2017/03/27 by Michael.Noland
Blueprints: Downgraded a warning in the connection drawing policy to verbose to suppress it. It does no good to a typical user.
#jira UE-41638
Change 3367085 on 2017/03/27 by Brent.Pease
- Improve AudioMixer buffering so that only two buffers are needed instead of three, buffer submission and buffer processing are ovelapped, and a warning is issued if the audio processing thread can not keep up.
- Added time critical thread priority so that audio processing is not starved which would produce clicks and popping
- Allow the audio thread to not be created if a platform implements its own BeginGeneratingAudio() call (as happens on Android)
Change 3367434 on 2017/03/28 by Marc.Audy
Fix UT compile error
Change 3368587 on 2017/03/28 by Mike.Beach
Adding a "CookedOnly" plugin type (now used by the nativized Blueprint plugin).
Change 3368724 on 2017/03/28 by Zak.Middleton
#ue4 - MovementComponent does not ignore initial blocking overlaps when moving from SafeMoveUpdatedComponent(). Set "p.MoveIgnoreFirstBlockingOverlap" back to zero and add a new flag that prevents the depenetration test from generating hit events (to prevent the problem discovered in UE-39387).
#jira UE-41613, UE-28610
Change 3368748 on 2017/03/28 by Dan.Oconnor
Provide &FUObjectThreadContext::Get().ObjLoaded when using the compilation manager, add validation functions for finding REINST/TRASH references
Change 3368852 on 2017/03/28 by Mike.Beach
Fixing a CIS error before it happens - wrapping implementation in preprocessor defines to match declaration in header.
Change 3368873 on 2017/03/28 by Dan.Oconnor
Rather than collecting script object references, just use the ScriptObjectReferences array. This allows reference replacing archives to update ScriptObjectReferences.
Change 3368998 on 2017/03/28 by Dan.Oconnor
Setting CLASS_Interface early in the compilation process
Change 3369494 on 2017/03/29 by Marc.Audy
Fix UAT compile error
Change 3369924 on 2017/03/29 by Zak.Middleton
#ue4 - Allow CharacterMovement AdjustFloorHeight() to adjust using the line trace if in penetration. Force next floor check so it will check after it depenetrates.
#jira UE-36973
Change 3369932 on 2017/03/29 by Ben.Zeigler
#jira UE-19494 Finish asset auditing work by allowing reading back a cooked asset registry in the editor
Split off FAssetRegistryState as the struct to hold serialization and accessors, to allow loading multiple platform states at once.
Optimized runtime asset registry serialization to be around 1/3 as large as before. Dependencies are disabled by default for the runtime registry, you can re-enable with bSerializeDependencies in Engine.ini
Add FAssetPackageData which is explicitly per-package and only updated on save/load time. File size is stored in here and is computed for both editor and cooked data
Add code to AssetManagerEditorModule to allow loading pre-cooked asset registry files and reading cooked sizes. The Asset Audit window now has a platform drop down that allows reading from cooked data
Rename ChunkManifestGenerator to AssetRegistryGenerator and change it to directly hold an FAssetRegistryState internally
Add new experimental AssetRegistry mode for iterative cooking. This mode is much faster as it does not need to do it's own internal dependency checking and it can be enabled with bUseAssetRegistryForIteration
Change it so during cooking it doesn't directly load string asset references, but instead cues them for cook and uses the asset registry to find and add redirector mappings that are used during save time
Change 3370028 on 2017/03/29 by Ben.Zeigler
CIS fix
Change 3370360 on 2017/03/29 by Mike.Beach
Adding an extra field to FPlatformInfo; a 'UBTTarget' identifier intended to sync up with UBT's UnrealTargetPlatform enum (needed for programatically generating plugin platform whitelists).
Change 3370363 on 2017/03/29 by Ben.Zeigler
Fix issue where loading out of date editor asset registry cache would throw pointless errors
Change 3370414 on 2017/03/29 by Marc.Audy
Remove autos
Change 3370428 on 2017/03/29 by Ben.Zeigler
Fix linux CIS issue, remove implicit conversion from FSavePackageResultStruct back to enum result as it was creating ambiguous operators
Change 3370453 on 2017/03/29 by Marc.Audy
CIS fix
Change 3370548 on 2017/03/29 by Marc.Audy
#rn Fix issues with seamless travel in PIE and shared sub levels between different parents.
Change 3370564 on 2017/03/29 by Mieszko.Zielinski
PR #3429: fix comment typo (Contributed by kayama-shift)
Change 3370602 on 2017/03/29 by Mieszko.Zielinski
Fixed FRecastTileGenerator::Modifiers being erroneously counted twice when stating memory #UE4
Change 3370615 on 2017/03/29 by Phillip.Kavan
#jira UE-35515 - No longer crash when creating a new BP class from one or more selected Actors in which the root component is not Blueprint-spawnable.
Change summary:
- Modified FKismetEditorUtilities::AddComponentsToBlueprint() to handle deferred SceneComponent SCS node adds when the parent component was not also added (due to not being BP-spawnable).
Change 3370693 on 2017/03/29 by Michael.Noland
Fixing some bad indentation
#rnx
Change 3370740 on 2017/03/29 by Ben.Zeigler
DLC/Mod Cooking fixes, the list of packages from release build as in uncooked filename format so fixed code and made this more obvious
Fix Asset Registry to allow loading multiple source asset registries into the same state, by keeping a list of preallocated buffers
Change 3370792 on 2017/03/29 by Michael.Noland
Blueprints: Deleted some unversioned backwards compat. code that would only matter for assets older than VER_UE4_OLDEST_LOADABLE_PACKAGE
Change 3370794 on 2017/03/29 by Michael.Noland
PR #3190: Reduce some output logging
- Reduced an Oculus log from Log to Verbose because it spams quite a bit
- Corrected the spelling and the meaning of a blueprint warning when an invalid breakpoint is encountered
- Treat UInputComponent::GetAxisValue(None) as not a warning
- Switch FGenericSaveGameSystem::LoadGame to silently attempt to load the file, it returns success/failure and it isn't necessary to have a separate warning at the file i/o layer
#jira UE-41446
Change 3370831 on 2017/03/29 by Dan.Oconnor
Iteration on compilation manager
- Fix Skeleton class compilation order
- Pass ObjLoaded array to compilation manager to ensure all objects get PostLoaded
- Make sure data only classes get reinstanced, so that UpdateCustomPropertyListForPostConstruction is run correctly
Change 3370923 on 2017/03/29 by Michael.Noland
Blueprints: Added an icon to indicate whether or not a macro contains latent actions
- Note: The state of the icon is cached for performance reasons on request, with the cache being cleared when the BP containing the macro is modified or a macro graph is removed
- This does mean that editing the inner macro of a nested macro to add/remove a latent action will not show up in visualization for the outer node until the editor is restarted or the outer macro is modified
Change 3371039 on 2017/03/29 by Dan.Oconnor
Hacky fix for dropping return params when a function's return node is culled
Change 3371750 on 2017/03/30 by Richard.Hinckley
Stencil write mask exposed. Adds nine new options (all bits, plus each bit individually - write on pass or depth fail). This allows stencil overlaps to be detected by mixing masks.
Change 3372513 on 2017/03/30 by Ben.Zeigler
#jira UE-43475 Fix cooker issues with string asset references to null packages.
Fix redirector detection to follow recursive chains, and correctly strip object class from redirected string asset references.
Change 3372565 on 2017/03/30 by Richard.Hinckley
Rolling back stencil change, will be moved to Dev-Rendering.
Change 3372764 on 2017/03/30 by Marc.Audy
Do not create a duplicate sub object that is not in the annotation if a sub object of the same name and class already exists.
#jira UE-43328
#rn Fixed cases where the blueprint of a class used as a child actor could be dirtied when compiling the owning blueprint.
Change 3372847 on 2017/03/30 by Marc.Audy
Fix missing include
Change 3372994 on 2017/03/30 by Zak.Middleton
#ue4 - Fix build in Debug (checkSlow using incorrect function params).
Change 3373195 on 2017/03/30 by Mike.Beach
For nativization, changing it so we key off of the target platform-info struct instead of the platform (in preparation for defining the nativized plugin's platform whitelist).
Change 3373320 on 2017/03/30 by mason.seay
Basic for TM-Gameplay map (WIP)
Change 3373448 on 2017/03/30 by Ben.Zeigler
Fix recursive size display in audit window
Improve asset manager comments
Change 3373576 on 2017/03/30 by dan.reynolds
AEOverview Update:
Updated Passive Mix Modifier Test based on recent changes in behavior
Also added Initial Delay Time timer to test
Change 3373589 on 2017/03/30 by dan.reynolds
AEOverview Passive Mix Mod Test Map update
Change 3373624 on 2017/03/30 by Zak.Middleton
#ue4 - Increase Pawn location replication precision to 2 decimal places from 0. Prevents replicated pawns from being inside geometry by a large amount. Removed CVars controlling CharacterMovement proxy shrink amount and made those instanced properties on the component.
#jira UE-40420
Change 3374271 on 2017/03/31 by Marc.Audy
Fix deprecation warning in new UT code
Change 3374320 on 2017/03/31 by Marc.Audy
Fix HTML5 compile.
Change 3374413 on 2017/03/31 by Jeff.Farris
Added ENGINE_API to 2 functions in PlanarReflection, so projects can subclass it.
(Copied CL 3276454 from Robo Recall to Dev-Framework)
Change 3374414 on 2017/03/31 by Jeff.Farris
Added support for setting UNavigationSystem::bUpdateNavOctreeOnComponentChange
(Copied CL 3267903 from RoboRecall to Dev-Framework)
Change 3374616 on 2017/03/31 by Ben.Zeigler
Copy of Fortnite CL #3312058 to add a missing redirector. I do not understand why this is not erroring on Main, I guess my minor cook changes somehow exposed this
Change 3374664 on 2017/03/31 by Jeff.Farris
Consted AIController::GetBrainComponent()
(Copied 3239101 from Robo Recall to Dev-Framework)
Change 3374665 on 2017/03/31 by Jeff.Farris
PrimitiveComponent bIgnoreRadialImpulse and bIgnoreRadialForce are now exposed to BPs. bIgnoreRadialImpulse now respected when applying impulse to relevant movement components.
(Coped CL 3242355 from Robo Recall to Dev-Framework)
Change 3374779 on 2017/03/31 by Jeff.Farris
Exposed SetAllPhysicsAngularVelocity to blueprints
(Copied CL 3228390 from Robo Recall to Dev-Framework)
Change 3374792 on 2017/03/31 by Ben.Zeigler
#jira UE-42618
PR #3347: Improve support for FGameplayAttributeData properties in attribute sets (Contributed by hoelzl)
Change 3374844 on 2017/03/31 by Ben.Zeigler
#jira UE-42587 Fix issue where supressed gameplay effects that granted abilities would only work the first time, it now clears out of date ability handles
Change 3374925 on 2017/03/31 by Marc.Audy
Don't throw warning about missing world context for inactive worlds.
#jira UE-42679
Change 3374927 on 2017/03/31 by Michael.Noland
Editor: Added options for configuring the editor window background color and texture, which can be useful to visually distinguish the editor when switching between different branches or projects
Change 3374995 on 2017/03/31 by Michael.Noland
Editor: Rewrote CallInEditor support and promoted it so it can be used on functions in any class, not just blueprints derived from AActor:
- CallInEditor used on native UFUNCTION() declarations will now show up without having to make a BP subclass
- CallInEditor can now be used as a top-level keyword in the UFUNCTION() declaration (e.g., UFUNCTION(Category=CoolCommands, CallInEditor))
- Now shows each function as a separate button, placed in the category associated with the function
- The button strip entry is now searchable by function name or tooltip
- Prevented operating on functions that have parameters or return values, which would crash before
- Removed the duplicate copies of properties placed in the Blutility section
- Added a scoped transaction around CallInEditor execution
- Allowed functions to be marked as CallInEditor in addition to custom events (currently we don't allow editing category or tooltip on custom events...)
Editor: Moved Experimental/EarlyAccessPreview details customizations up to UObject so it can be used on any class, not just actors/components
Upgrade Note: Behavior has changed so that CallInEditor can be called on CDOs as well, this will probably be walked back in a subsequent update, at least for actors and components.
Change 3375005 on 2017/03/31 by Michael.Noland
Fixing incremental compilation error due to missing include
#rnx
Change 3375015 on 2017/03/31 by Michael.Noland
Fixing incremental compilation error due to missing include (for real)
#rnx
Change 3375045 on 2017/03/31 by Marc.Audy
Only calculate the streaming levels prefix during seamless travel if it is a PIE world
#jira UE-43485
Change 3375053 on 2017/03/31 by Ben.Zeigler
#jira UE-41988 Fix it so leaving PIE while gameplay debugger is active will disable HUD extensions properly, restoring ability to print messages to screen
Change 3375057 on 2017/03/31 by Ben.Zeigler
#jira UE-39226 Don't add to DrawDebug list for player controllers with no local player
Change 3375121 on 2017/03/31 by Michael.Noland
Added missing include for FScopedTransaction
#rnx
Change 3375222 on 2017/03/31 by mason.seay
Submitting work done to TM-Gameplay. Still WIP
Change 3375308 on 2017/03/31 by Michael.Noland
Editor: Added back CDO filtering to CallInEditor, it's too easy to explode in the BP editor. May consider allowing opt-in behavior when we revisit Blutilities
Change 3375321 on 2017/03/31 by Ben.Zeigler
#jira UE-39062 Fix issue where using the level editor toolbar to modify blueprints was not properly marking the blueprints as modified, so the constructor links weren't being updated until manually compiling or resaving
Always recompute post constructor links when calling MarkBlueprintAsModified, as it can be called from native and other places where we modified CDOs but don't have a property changed event
Change 3375372 on 2017/03/31 by Ben.Zeigler
#jira UE-39568 Change Components to specifically update LatentActions the same as Actors do, so they update properly if bUpdateWhilePaused is set
Change 3375380 on 2017/03/31 by Marc.Audy
Modify IsMainAudioDevice to deal with the case where no audio device has been created.
Change 3375402 on 2017/03/31 by Marc.Audy
Fix DuplicateWorldForPIE in the case that the OwningWorld is null.
Change 3376037 on 2017/04/02 by Phillip.Kavan
#jira UE-35332 - Preserve the least common ancestor pin type on object array function node inputs after a node refresh.
Change summary:
- Added UK2Node_CallArrayFunction::GetDynamicallyTypedPins() to consolidate the code that retrieves type-dependent parameter pins.
- Added FBlueprintEditorUtils::FindLinkedPinWithAuthoritativePinType() to consolidate the code that considers other linked pins when choosing which type to propagate to type-dependent parameter pins.
- Added FBlueprintEditorUtils::PropagatePinTypeInfo() to consolidate the common code from UK2Node_CallArrayFunction::PropagateArrayTypeInfo(); this eliminated a redundant retrieval of the target pin set.
- Refactored UK2Node_CallArrayFunction::PropagateArrayTypeInfo() to now call FBlueprintEditorUtils::PropagatePinTypeInfo() after retrieving the set of dynamically-typed pins.
- Refactored UK2Node_CallArrayFunction::NotifyPinConnectionListChanged() to remove some unnecessary iteration passes and to ensure that we propagate the authoritative (least common ancestor) pin type for object- and struct-based types.
Change 3376364 on 2017/04/03 by Richard.Hinckley
UE-40920 Fix to Paper2D flipbook timeline editor. Previously, the timeline shown was one frame shorter than the animation. Now, the timeline shows the correct frame count.
Change 3376366 on 2017/04/03 by Richard.Hinckley
UE-40920 Bugfix to Paper2D flipbook editor. The red line indicating the current frame now adjusts properly if the timeline is longer than the editor window and the scroll bar is moved to the right.
Change 3376517 on 2017/04/03 by Marc.Audy
PR #3195: Added support for GamePad on RawInput Plugin (Contributed by katze7514)
#jira UE-41499
Change 3376708 on 2017/04/03 by Mike.Beach
Moving nativized plugins into a centralized folder (so we can use it as an additional plugin lookup dir) - this is so we can ultimately keep the generated code around for debugging purposes.
Summary of changes:
- nativized plugins now moved to ...\Intermediate\Plugins\<PLATFORM>\NativizedAssets
- corresponding manifest files get saved inside the module and named to match the platform
- nativized modules now whitelisted only for the platform they were generated for
- cleanup on how we generate paths (now piping in platform name) and pass multi-cook process ids (for building manifest filenames)
- extending the 'NativizeAssets' command line, so you can use it to specify the target plugin path (utilized by UAT to coordinate the plugin path between cook & build - was previously hardcoded in multiple places).
Change 3376826 on 2017/04/03 by Phillip.Kavan
#jira UE-43330 - Fix a crash when adding an input parameter to a Custom Event node after deleting a Function Graph containing a Create Event node.
Change summary:
- Modified UK2Node_CreateDelegate::HandleAnyChangeWithoutNotifying() to check for a valid blueprint before accessing it (since the accessor is now a checked operation).
- Modified UK2Node_CreateDelegate::GetScopeClass() to also check for a valid blueprint before accessing it.
- Switched 'NULL' to 'nullptr' in a few spots.
Change 3376831 on 2017/04/03 by Ben.Zeigler
#jira UE-43500, clean up UPackage when EDL/async loading fails. This restores EDL LoadPackage to work the same as non EDL and return NULL instead of an invalid empty package
Change 3376846 on 2017/04/03 by Ben.Zeigler
#jira UE-38760 Properly refresh exec pins when removing pin from a Switch on Int node
Change 3376850 on 2017/04/03 by Dan.Oconnor
Use authoritative class to mitigate compilation order issues
Change 3376961 on 2017/04/03 by Ben.Zeigler
#jira UE-43127 Add struct ops implementations for FIntVector and FBox2d, any blueprint type needs struct ops to avoid crashes
Fix Box2d variable name in NoExportTypes
Change 3376985 on 2017/04/03 by Ben.Zeigler
#jira UE-43582 Remove Xbox-specific code from AssetRegistry because it won't work after my refactor. The serialization is much faster now and neither Bob nor I can conceive of a way this would take long enough to stall the main thread. If it it is somehow a problem, it should be wrapped in a slow task instead
Change 3377009 on 2017/04/03 by Ben.Zeigler
#jira UE-43036 Fix crash when right clicking blueprint with no parent class. Ensures are fine but crashes should be avoided so people can try to copy data out of them
Change 3377054 on 2017/04/03 by Zak.Middleton
#ue4 - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta.
#jira UE-40344
#udn https://udn.unrealengine.com/questions/310497/large-delta-time-for-first-player-movement-update.html
Change 3377061 on 2017/04/03 by Dan.Oconnor
Fixes for issues exposed by cooking with compilation manager. When cooking we end up with more blueprints compiling at a single time, which highlighted issues reading from generated classes while they were actively regenerating.
Note that EInternalCompilerFlags::PostponeLocalsGenerationUntilPhaseTwo has only been added to mitigate risk - there is no known reason that existing compilation flows can't postpone generatation of local variables.
Change 3377073 on 2017/04/03 by Mike.Beach
CIS fix - proper initialization ordering.
Change 3377371 on 2017/04/03 by Ben.Zeigler
#jira UE-43144 Disallow creating map of FText, like bool it is not hashable
Change 3377395 on 2017/04/03 by Dan.Oconnor
Build fix - make order in source match initialization order in artifact
Change 3377417 on 2017/04/03 by Dan.Oconnor
Speculative SA fix
Change 3377496 on 2017/04/03 by Aaron.McLeran
#jira UE-43558 Cleaning up shutdown code with audio plugins.
Change 3377608 on 2017/04/03 by Zak.Middleton
#ue4 - Added function ACharacter::CacheInitialMeshOffset() to cache initial mesh offset, used as the target for network smoothing. Added a call to this function from BeginPlay() in addition to the existing call from PostInitializeComponents(), and exposed this to blueprints as well. This fixes the case of people moving the mesh in BeginPlay rather than in the editor or construction script and not having the mesh offset reflected correctly in network games.
#jira UE-38966
Change 3377880 on 2017/04/03 by Aaron.McLeran
Audio bug fixes
#jira UE-43600 Fixing sounds played by playsoundatlocation for audio volume calculations
#jira UE-43601 Fixing listener volume interpolation
#jida UE-43602 Fixing reverb/eq interpolation
Change 3377908 on 2017/04/03 by Phillip.Kavan
#jira UE-43565 - Fix a regression on type-dependent array function node pins that have more than one link.
Change summary:
- Added FBlueprintEditorUtils::FindLinkedPinWithMostDerivedPinType()
- Modified FBlueprintEditorUtils::FindLinkedPinWithAuthoritativePinType() to properly handle pins that have multiple links.
Change 3377912 on 2017/04/03 by Dan.Oconnor
Fix for missing SUBINSTANCE variables on anim BP skeletons. I elected to force SUBINSTANCE variable creation for the compilation manager codepath
Change 3377946 on 2017/04/03 by Ben.Zeigler
#jira UE-43594 Fix issue with streamable manager where a failed load would leave bAsyncLoadRequestOutstanding, which would confuse later calls to stream the same asset
Lower some error verbosity now that I believe I have tracked down the issue
Change 3377950 on 2017/04/03 by Michael.Noland
Blueprints: Prevent merge tool from crashing in SVN when looking at a file with gaps in the revision history
(May still not work correctly, but it won't crash; full fix covered by UE-43603)
#jira UE-22428
Change 3377981 on 2017/04/03 by Michael.Noland
PR #3416: UE-43005: Prevent crash due to too long name (Contributed by projectgheist)
#jira UE-43291
#jira UE-43005
Change 3378039 on 2017/04/04 by Michael.Noland
PhysX: Allowed the editor to compile when bRuntimePhysicsCooking is disabled (WITH_EDITOR is used in every place in C++ to force it in already)
Change 3378041 on 2017/04/04 by Michael.Noland
Paper2D: Adjusted under what circumstances CreatePhysicsMeshes is called on various Paper2D types to match UProceduralMeshComponent
Change 3378081 on 2017/04/04 by Dan.Oconnor
Fix Blueprint Context nodes so that they don't rely on Ar.IsBeingSaved() call before compilation
3x because of copy/paste
Change 3378094 on 2017/04/04 by Dan.Oconnor
Add missing preload call for compilation manager
Change 3378917 on 2017/04/04 by Marc.Audy
Fix static analysis (which is very dumb)
Change 3378986 on 2017/04/04 by Dan.Oconnor
Fix bad merge
Change 3379100 on 2017/04/04 by Dan.Oconnor
Fix missing CPF_ConstParm/CPF_ReferenceParm/CPF_OutParm logic in 'fast' skeleton path
#jira UE-43629
Change 3379102 on 2017/04/04 by Ben.Zeigler
Actually fix StreamableManager issues with cancelling a request messing up things in the future. We now always queue a request, even if it failed before or there is one in progress. This has to be done to avoid issues with cancelling the existing request or mounting new files after it's failed once
Now that StreamableManager will retry missing files, add failed load packages to the known missing list so it won't spam errors over and over
Change 3379147 on 2017/04/04 by Zak.Middleton
#ue4 - Improve on CL 3377608: Made Character::CacheInitialMeshOffset() take location and rotation params so you can be explicit on the values, in case you try to change these during network smoothing, where reading the relative offsets would have been skewed.
Change 3379254 on 2017/04/04 by Aaron.McLeran
Fixing sounds in audio mixer when no EQ has been set.
Change 3379760 on 2017/04/04 by Ben.Zeigler
#jira UE-43647 Don't delete failed async packages that are rooted
[CL 3380073 by Dan Oconnor in Main branch]
2017-04-04 20:49:52 -04:00
|
|
|
.HAlign(HAlign_Fill)
|
2014-03-14 14:13:41 -04:00
|
|
|
.VAlign(VAlign_Center)
|
|
|
|
|
[
|
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3380068)
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3358702 on 2017/03/22 by Marc.Audy
Always mark child actors pending kill when in PostLoad as often the World is too early to have a WorldContext which causes issues in DestroyActor
#jira UE-42679
Change 3358737 on 2017/03/22 by Mieszko.Zielinski
Exposed UBrainComponent::IsRunning() and UBrainComponent::IsPaused() to Blueprint #UE4
Change 3359062 on 2017/03/22 by Michael.Noland
Blueprints: Show the Save and Find in CB buttons when working with level script blueprints (they will save/show the map package)
#jira UE-30748
Change 3359066 on 2017/03/22 by Michael.Noland
PR #3348: Make fields of FAttributeMetaData editable (Contributed by hoelzl)
#jira UE-42620
Change 3359069 on 2017/03/22 by Michael.Noland
PR #3288: InverseLerp Blueprint Tooltips Clarification (Contributed by wunawuna)
#jira UE-42250
Change 3359108 on 2017/03/22 by Michael.Noland
Blueprints: Fix an issue where running the editor in a different culture could break pins on nodes that have optional arrays of pins (e.g., animation graph nodes like blend by layer)
#jira UE-36232
Change 3359235 on 2017/03/22 by Marc.Audy
Expose bShouldPerformFullTickWhenPaused to blueprints and details panel
#jira UE-17286
Change 3359324 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Disable collision on NavModifierVolumes. Previously they had an OverlapAll response and generated overlap events. They are only supposed to be used for preventing nav mesh generation, but overlap events could affect gameplay, and also are bad for performance.
(Integrate CL 3249525 from Odin).
Change 3359326 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Optimization during attachment to check bool before expensive casts and body instance fetching.
(Integrate CL 3261262 from Odin).
Change 3359327 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Make bSkipAgentHeightCheckWhenPickingNavData actually ignore height when picking data.
(Integrate CL 3231908 from Odin)
Change 3359328 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Make a static FName in UMovementComponent::OverlapTest const and move it to a namespace.
(Integrate CL 3259985 from Odin)
Change 3359329 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix ProjectileMovementComponent continuing to simulate (and generate hit events) after it is deactivated during simulation. HasStoppedSimulation() should check if bIsActive is false.
(Integrate CL 3260001 from Odin)
Change 3359330 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix accumulated forces in CharacterMovement when movement mode or activation changes.
- Added CharacterMovementComponent::ClearAccumulatedForces()
- AddForce() and related functions now avoid adding the force if in MovementMode "None". When ticking in "None", forces are cleared so they don't pile up until the next valid movement mode. Forces are also cleared if the updated component changes or when the capsule simulates physics.
- CharacterMovementComponent::Deactivate() implemented to stop movement and call ClearAccumulatedForces().
- ClearAccumulatedForces() now also clears pending launch velocity.
- Exposed ClearAccumulatedForces() to blueprints.
- AddForce() and AddImpulse() now also check that character movement is active (not deactivated, able to tick).
- ApplyAccumulatedForces() does not call ClearAccumulatedForces(), since that would prevent pending launch.
- SimulateMovement() handles pending launch and clears forces regardless of whether it's simulated proxy. Added note to investigate using ApplyAccumulatedForces() in SimulateMovement().
- Inlined ActorComponent::IsActive().
(Integrate CLs 3259933, 3266018 from Odin)
Change 3359338 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) TickCharacterPose() and clear root motion before abandoning tick in UCharacterMovementComponent::PerformMovement() when movement mode is None. Prevents root motion building up until next valid movement mode.
(Integrate CL 3271928 from Odin)
Change 3359345 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix characters sliding when landing on slanted surfaces or stairs, when aggressive "Perch" settings could cause a line trace (from the center of a capsule) instead of capsule trace and thereby screw up the floor distance checks.
(Integrate CL 3273026 from Odin)
Change 3359381 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Performance tweak to ApplyRadialDamageWithFalloff(). Don't rebuild FRadialDamageEvent each loop over hit actors. Added stats for BreakHitResult()/MakeHitResult() under "stat game".
(Integrate CLs 3275415, 3276810 from Odin).
Change 3359422 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix build (CollisionProfile included).
Change 3359442 on 2017/03/22 by Michael.Noland
Blueprints: Prevent comment boxes from clipping the last letter of some words at the edge by increasing the padding on the wrap-at position
Change 3359445 on 2017/03/22 by Michael.Noland
PR #2989: Improved BP comment nodes (Contributed by projectgheist)
#jira UE-36788
#jira UE-39118
Change 3359446 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Add support for FScopedMovementUpdate to be able to queue up overlaps that do not require reflexive bGenerateOverlapEvents. This allows custom inspection or processing of overlaps within a scoped move. Overlap events from the move will still only trigger in UpdateOverlaps() if bGenerateOverlapEvents is enabled on both components, as before.
(Integrate CL 3278307 from Odin)
Change 3359494 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Make some data in FScopedMovementUpdate protected rather than private so it can easily be subclassed, and expose a new helper SetWorldLocationAndRotation().
(Integrated CL 3280775 from Odin).
Change 3359506 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) MovementComponent::Deactivate() calls StopMovement() to clear cached velocity. It's silly that reactivation many seconds or frames later would restore that velocity. Some special handling in CharacterMovement to keep it acting as before (it cleared velocity, but did not clear the path request, leaving that alone).
(Integrate CL 3287026 from Odin).
Change 3359514 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Collision.ListComponentsWithResponseToProfile command includes pending kill objects.
(Integrate CL 3293322 from Odin)
Change 3359553 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Optimization in CharacterMovement tick to not extract transform values twice.
(Integrate CL 3299098 from Odin).
Change 3359554 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: optimize UKismetMathLibrary::GetForwardVector() (converts Rotator to forward direction). This way we avoid building a matrix, and avoids 1 more SinCos call.
(Integrate CL 3296254 from Odin).
Change 3359555 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Add OnComponentCollisionSettingsChangedEvent delegate to PrimitiveComponent. Fixed SkeletalMeshComponent not calling Super implementation.
(Integrate CL 3295744 from Odin)
Change 3359561 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: AActor::GetComponents() with generic type should *not* assume the output array needs space for the entire contents of OwnedComponents. If OwnedComponents.Num() > the array reserve size, this forces an allocation, even if few or no components of the requested type are found.
(Integrate CL 3299111 from Odin)
Change 3359573 on 2017/03/22 by dan.reynolds
Added BP log to the Passive Mix Modifier test platform BP
Change 3359593 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: avoid allocations during creation in AAIController::PostInitializeComponents() (in development builds).
(Integrate CL 3299118 from Odin)
Change 3359595 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: HasActiveCameraComponent() and HasActivePawnControlCameraComponent() don't need to fill in an array while searching for a certain component. Also see CL 3359561, which could cause each of these functions to always cause an allocation when filling in the array when num components > 24.
(Integrate CL 3299116 from Odin)
Change 3359602 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Clean up some of the new fast overlap code in PrimitiveComponent. Mostly some variable renaming, and CVar access optimization.
(Integrate CL 3340622 from Odin)
Change 3359616 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Added support for bIgnoreTouches to FCollisionQueryParams. MoveComponent uses this to avoid PhysX collision queries for overlaps in GeomSweepMulti when bGenerateOverlapEvents is off.
(Integrate CL 3340635 from Odin)
Change 3359864 on 2017/03/23 by Mieszko.Zielinski
Added a safeguard to prevent crashes resulting from people trying to name their BB keys things longer than 1024 characters #UE4
#jira UE-43120
Change 3360884 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: AUDIO_MIXER_ENABLE_DEBUG_MODE turned off in Test builds. Shipping already had it off.
(Integrate CL 3310724 from Odin)
Change 3361045 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: new cvars to help with optimization:
- au.DisableReverbSubmix
- au.DisableEQSubmix
- au.DisableParallelSourceProcessing
- au.SetAudioChannelCount
Also checked in some code to cut down on the amount of parameter setting in EQ
(Integrate of CL 3303165 in Odin by Aaron.Mcleran)
Change 3361172 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: added stat for HRTF.
(Integrate CL 3310728 from Odin)
Change 3361189 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) CVar to toggle HRTF for perf settings. Default is on.
(Integrate CL 3310926 from Odin).
Change 3361914 on 2017/03/23 by Aaron.McLeran
UE-42649 Fixing crash in cleaning up active sound in sound concurrency
-Handling edge case of an active sound not have a sound base ptr, which is possible.
Change 3361924 on 2017/03/23 by Aaron.McLeran
UE-41378 Fixing passive mix modifier bug
Change 3361978 on 2017/03/23 by Aaron.McLeran
UE-42627 Fix for when audio device is removed and getting a deadlock in computing audio clock
Change 3361989 on 2017/03/23 by Aaron.McLeran
PR #3010: Check for null GEngine on sound processing
Change 3362053 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: Avoid thousands of Array.Add() calls during processing, which on shipping still does checks to see if the allocator has to grow, and updates ArrayCount.
(Integrate CL 3311120 from Odin)
Change 3362102 on 2017/03/23 by Aaron.McLeran
PR #3182: Enabled SwitchOnEnum nodes for EAttenuationShape and EAttenuationDistanceModel
Change 3362153 on 2017/03/23 by Aaron.McLeran
UE-43286 Oculus audio plugin not working/available
Change 3362162 on 2017/03/23 by Aaron.McLeran
UE-42252 Frequent ensure in FLevelEditorViewportClient::UpdateAudioListener
Change 3362206 on 2017/03/23 by Aaron.McLeran
UE-43287 Fixing HRTF spatialization in editor viewport
- Steam Audio doesn't support multiple audio devices at the moment
- Instead of hard-coding all audio plugins to not work in main audio device (GDC temp fix), I allow audio plugins to specify if they should be used on main audio device
Change 3362775 on 2017/03/24 by mason.seay
Replaced deprecated node
Change 3363024 on 2017/03/24 by Ben.Zeigler
Fix regression in behavior of streamable manager where loading both a valid and null asset used to work but now fails. Instead added a warning for that case, but if only null are requested it still fails with an error
Change 3363030 on 2017/03/24 by Zak.Middleton
#ue4 - Lower default max sendrate for clients to 60Hz from 90Hz when net speed is high and player count is low. Throttled rate remains at 45Hz. This value has been tested in Paragon with no ill effect, and saves on bandwidth and server CPU when clients run at high framerate.
Change 3363036 on 2017/03/24 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: turned a float divide into a multiply. It happens at least 32k times per audio update.
(Integrate CL 3311158 from Odin)
Change 3363541 on 2017/03/24 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: remove pointer indirection, and successive TArray Add()s in GetChannelMap().
(Integrate CL 3311169 from Odin)
Change 3363642 on 2017/03/24 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: Save ~5% total audio update time. Savings in "Source Output Buffers".
- Removed function call overhead to updating channel map. 64,000 function calls...
- Simplified FSourceParam::Update() to reduce branching and have 1 return site.
- Added alternative to GetChannelMap() called UpdateChannelMap() that avoids copying out values to an array. The values can then be fetched from the channel data directly.
(Integrate CL 3311235 from Odin)
Change 3364441 on 2017/03/24 by Ben.Zeigler
Fix issue where calling LoadLocalIniFile on a plugin file would result in an empty file. It was assuming engine/game dirs, now it instead pulls it out of GConfig if available.
This fixes issue where iterative cooking would fail on plugin config files
Add FindConfigFileWithBaseName to GConfig
Change 3364652 on 2017/03/25 by Phillip.Kavan
#jira UE-43210 - Fix a runtime VM crash upon removing an element from a set after consecutive add/remove iterations.
Change summary:
- Fixed FScriptSet::Add() to initialize the HashIndex member of the new element when the HashSize does not change.
Change 3365609 on 2017/03/27 by Richard.Hinckley
#jira UEDOC-4720
Fixed global enums being dropped from documentation after being extracted by Doxygen.
Change 3365737 on 2017/03/27 by Marc.Audy
Move setting of the ParentComponent property on an actor to PostRepNotifies instead of having a separate OnRep function.
Change 3365795 on 2017/03/27 by Marc.Audy
Fix compile error
Change 3365894 on 2017/03/27 by Phillip.Kavan
#jira UE-35507 - Fix for a GLEO when choosing an LSBP class as the default value for a class input pin in a non-LSBP graph.
Change summary:
- Modified FGraphPinFilter::IsClassAllowed() to disallow a given class if the type is contained within a map package that does not match the current graph context.
Change 3366067 on 2017/03/27 by Marc.Audy
Add UWorld* to PostLoadMap indicating which world has been loaded. Null if an error has occurred.
#jira UE-40228
Change 3366097 on 2017/03/27 by Marc.Audy
Fixed missed deprecation disable pairing for PostLadMap
Change 3366170 on 2017/03/27 by Aaron.McLeran
Fixing div by zero
Change 3366221 on 2017/03/27 by Aaron.McLeran
UE-43240 Removing dependency on component visualizers in runtime Phonon module.
Change 3366698 on 2017/03/27 by Marc.Audy
Fix Orion compile errors
Change 3366782 on 2017/03/27 by Aaron.McLeran
Bringing over optimizations from Odin to Dev-framework.
Original CL 3311435
Change 3366818 on 2017/03/27 by Aaron.McLeran
Bringing fix from Odin to Dev-Framework from CL 3304533
Fix for rare condition that stomps memory during source recycling.
Change 3366984 on 2017/03/27 by Michael.Noland
Blueprints: Downgraded a warning in the connection drawing policy to verbose to suppress it. It does no good to a typical user.
#jira UE-41638
Change 3367085 on 2017/03/27 by Brent.Pease
- Improve AudioMixer buffering so that only two buffers are needed instead of three, buffer submission and buffer processing are ovelapped, and a warning is issued if the audio processing thread can not keep up.
- Added time critical thread priority so that audio processing is not starved which would produce clicks and popping
- Allow the audio thread to not be created if a platform implements its own BeginGeneratingAudio() call (as happens on Android)
Change 3367434 on 2017/03/28 by Marc.Audy
Fix UT compile error
Change 3368587 on 2017/03/28 by Mike.Beach
Adding a "CookedOnly" plugin type (now used by the nativized Blueprint plugin).
Change 3368724 on 2017/03/28 by Zak.Middleton
#ue4 - MovementComponent does not ignore initial blocking overlaps when moving from SafeMoveUpdatedComponent(). Set "p.MoveIgnoreFirstBlockingOverlap" back to zero and add a new flag that prevents the depenetration test from generating hit events (to prevent the problem discovered in UE-39387).
#jira UE-41613, UE-28610
Change 3368748 on 2017/03/28 by Dan.Oconnor
Provide &FUObjectThreadContext::Get().ObjLoaded when using the compilation manager, add validation functions for finding REINST/TRASH references
Change 3368852 on 2017/03/28 by Mike.Beach
Fixing a CIS error before it happens - wrapping implementation in preprocessor defines to match declaration in header.
Change 3368873 on 2017/03/28 by Dan.Oconnor
Rather than collecting script object references, just use the ScriptObjectReferences array. This allows reference replacing archives to update ScriptObjectReferences.
Change 3368998 on 2017/03/28 by Dan.Oconnor
Setting CLASS_Interface early in the compilation process
Change 3369494 on 2017/03/29 by Marc.Audy
Fix UAT compile error
Change 3369924 on 2017/03/29 by Zak.Middleton
#ue4 - Allow CharacterMovement AdjustFloorHeight() to adjust using the line trace if in penetration. Force next floor check so it will check after it depenetrates.
#jira UE-36973
Change 3369932 on 2017/03/29 by Ben.Zeigler
#jira UE-19494 Finish asset auditing work by allowing reading back a cooked asset registry in the editor
Split off FAssetRegistryState as the struct to hold serialization and accessors, to allow loading multiple platform states at once.
Optimized runtime asset registry serialization to be around 1/3 as large as before. Dependencies are disabled by default for the runtime registry, you can re-enable with bSerializeDependencies in Engine.ini
Add FAssetPackageData which is explicitly per-package and only updated on save/load time. File size is stored in here and is computed for both editor and cooked data
Add code to AssetManagerEditorModule to allow loading pre-cooked asset registry files and reading cooked sizes. The Asset Audit window now has a platform drop down that allows reading from cooked data
Rename ChunkManifestGenerator to AssetRegistryGenerator and change it to directly hold an FAssetRegistryState internally
Add new experimental AssetRegistry mode for iterative cooking. This mode is much faster as it does not need to do it's own internal dependency checking and it can be enabled with bUseAssetRegistryForIteration
Change it so during cooking it doesn't directly load string asset references, but instead cues them for cook and uses the asset registry to find and add redirector mappings that are used during save time
Change 3370028 on 2017/03/29 by Ben.Zeigler
CIS fix
Change 3370360 on 2017/03/29 by Mike.Beach
Adding an extra field to FPlatformInfo; a 'UBTTarget' identifier intended to sync up with UBT's UnrealTargetPlatform enum (needed for programatically generating plugin platform whitelists).
Change 3370363 on 2017/03/29 by Ben.Zeigler
Fix issue where loading out of date editor asset registry cache would throw pointless errors
Change 3370414 on 2017/03/29 by Marc.Audy
Remove autos
Change 3370428 on 2017/03/29 by Ben.Zeigler
Fix linux CIS issue, remove implicit conversion from FSavePackageResultStruct back to enum result as it was creating ambiguous operators
Change 3370453 on 2017/03/29 by Marc.Audy
CIS fix
Change 3370548 on 2017/03/29 by Marc.Audy
#rn Fix issues with seamless travel in PIE and shared sub levels between different parents.
Change 3370564 on 2017/03/29 by Mieszko.Zielinski
PR #3429: fix comment typo (Contributed by kayama-shift)
Change 3370602 on 2017/03/29 by Mieszko.Zielinski
Fixed FRecastTileGenerator::Modifiers being erroneously counted twice when stating memory #UE4
Change 3370615 on 2017/03/29 by Phillip.Kavan
#jira UE-35515 - No longer crash when creating a new BP class from one or more selected Actors in which the root component is not Blueprint-spawnable.
Change summary:
- Modified FKismetEditorUtilities::AddComponentsToBlueprint() to handle deferred SceneComponent SCS node adds when the parent component was not also added (due to not being BP-spawnable).
Change 3370693 on 2017/03/29 by Michael.Noland
Fixing some bad indentation
#rnx
Change 3370740 on 2017/03/29 by Ben.Zeigler
DLC/Mod Cooking fixes, the list of packages from release build as in uncooked filename format so fixed code and made this more obvious
Fix Asset Registry to allow loading multiple source asset registries into the same state, by keeping a list of preallocated buffers
Change 3370792 on 2017/03/29 by Michael.Noland
Blueprints: Deleted some unversioned backwards compat. code that would only matter for assets older than VER_UE4_OLDEST_LOADABLE_PACKAGE
Change 3370794 on 2017/03/29 by Michael.Noland
PR #3190: Reduce some output logging
- Reduced an Oculus log from Log to Verbose because it spams quite a bit
- Corrected the spelling and the meaning of a blueprint warning when an invalid breakpoint is encountered
- Treat UInputComponent::GetAxisValue(None) as not a warning
- Switch FGenericSaveGameSystem::LoadGame to silently attempt to load the file, it returns success/failure and it isn't necessary to have a separate warning at the file i/o layer
#jira UE-41446
Change 3370831 on 2017/03/29 by Dan.Oconnor
Iteration on compilation manager
- Fix Skeleton class compilation order
- Pass ObjLoaded array to compilation manager to ensure all objects get PostLoaded
- Make sure data only classes get reinstanced, so that UpdateCustomPropertyListForPostConstruction is run correctly
Change 3370923 on 2017/03/29 by Michael.Noland
Blueprints: Added an icon to indicate whether or not a macro contains latent actions
- Note: The state of the icon is cached for performance reasons on request, with the cache being cleared when the BP containing the macro is modified or a macro graph is removed
- This does mean that editing the inner macro of a nested macro to add/remove a latent action will not show up in visualization for the outer node until the editor is restarted or the outer macro is modified
Change 3371039 on 2017/03/29 by Dan.Oconnor
Hacky fix for dropping return params when a function's return node is culled
Change 3371750 on 2017/03/30 by Richard.Hinckley
Stencil write mask exposed. Adds nine new options (all bits, plus each bit individually - write on pass or depth fail). This allows stencil overlaps to be detected by mixing masks.
Change 3372513 on 2017/03/30 by Ben.Zeigler
#jira UE-43475 Fix cooker issues with string asset references to null packages.
Fix redirector detection to follow recursive chains, and correctly strip object class from redirected string asset references.
Change 3372565 on 2017/03/30 by Richard.Hinckley
Rolling back stencil change, will be moved to Dev-Rendering.
Change 3372764 on 2017/03/30 by Marc.Audy
Do not create a duplicate sub object that is not in the annotation if a sub object of the same name and class already exists.
#jira UE-43328
#rn Fixed cases where the blueprint of a class used as a child actor could be dirtied when compiling the owning blueprint.
Change 3372847 on 2017/03/30 by Marc.Audy
Fix missing include
Change 3372994 on 2017/03/30 by Zak.Middleton
#ue4 - Fix build in Debug (checkSlow using incorrect function params).
Change 3373195 on 2017/03/30 by Mike.Beach
For nativization, changing it so we key off of the target platform-info struct instead of the platform (in preparation for defining the nativized plugin's platform whitelist).
Change 3373320 on 2017/03/30 by mason.seay
Basic for TM-Gameplay map (WIP)
Change 3373448 on 2017/03/30 by Ben.Zeigler
Fix recursive size display in audit window
Improve asset manager comments
Change 3373576 on 2017/03/30 by dan.reynolds
AEOverview Update:
Updated Passive Mix Modifier Test based on recent changes in behavior
Also added Initial Delay Time timer to test
Change 3373589 on 2017/03/30 by dan.reynolds
AEOverview Passive Mix Mod Test Map update
Change 3373624 on 2017/03/30 by Zak.Middleton
#ue4 - Increase Pawn location replication precision to 2 decimal places from 0. Prevents replicated pawns from being inside geometry by a large amount. Removed CVars controlling CharacterMovement proxy shrink amount and made those instanced properties on the component.
#jira UE-40420
Change 3374271 on 2017/03/31 by Marc.Audy
Fix deprecation warning in new UT code
Change 3374320 on 2017/03/31 by Marc.Audy
Fix HTML5 compile.
Change 3374413 on 2017/03/31 by Jeff.Farris
Added ENGINE_API to 2 functions in PlanarReflection, so projects can subclass it.
(Copied CL 3276454 from Robo Recall to Dev-Framework)
Change 3374414 on 2017/03/31 by Jeff.Farris
Added support for setting UNavigationSystem::bUpdateNavOctreeOnComponentChange
(Copied CL 3267903 from RoboRecall to Dev-Framework)
Change 3374616 on 2017/03/31 by Ben.Zeigler
Copy of Fortnite CL #3312058 to add a missing redirector. I do not understand why this is not erroring on Main, I guess my minor cook changes somehow exposed this
Change 3374664 on 2017/03/31 by Jeff.Farris
Consted AIController::GetBrainComponent()
(Copied 3239101 from Robo Recall to Dev-Framework)
Change 3374665 on 2017/03/31 by Jeff.Farris
PrimitiveComponent bIgnoreRadialImpulse and bIgnoreRadialForce are now exposed to BPs. bIgnoreRadialImpulse now respected when applying impulse to relevant movement components.
(Coped CL 3242355 from Robo Recall to Dev-Framework)
Change 3374779 on 2017/03/31 by Jeff.Farris
Exposed SetAllPhysicsAngularVelocity to blueprints
(Copied CL 3228390 from Robo Recall to Dev-Framework)
Change 3374792 on 2017/03/31 by Ben.Zeigler
#jira UE-42618
PR #3347: Improve support for FGameplayAttributeData properties in attribute sets (Contributed by hoelzl)
Change 3374844 on 2017/03/31 by Ben.Zeigler
#jira UE-42587 Fix issue where supressed gameplay effects that granted abilities would only work the first time, it now clears out of date ability handles
Change 3374925 on 2017/03/31 by Marc.Audy
Don't throw warning about missing world context for inactive worlds.
#jira UE-42679
Change 3374927 on 2017/03/31 by Michael.Noland
Editor: Added options for configuring the editor window background color and texture, which can be useful to visually distinguish the editor when switching between different branches or projects
Change 3374995 on 2017/03/31 by Michael.Noland
Editor: Rewrote CallInEditor support and promoted it so it can be used on functions in any class, not just blueprints derived from AActor:
- CallInEditor used on native UFUNCTION() declarations will now show up without having to make a BP subclass
- CallInEditor can now be used as a top-level keyword in the UFUNCTION() declaration (e.g., UFUNCTION(Category=CoolCommands, CallInEditor))
- Now shows each function as a separate button, placed in the category associated with the function
- The button strip entry is now searchable by function name or tooltip
- Prevented operating on functions that have parameters or return values, which would crash before
- Removed the duplicate copies of properties placed in the Blutility section
- Added a scoped transaction around CallInEditor execution
- Allowed functions to be marked as CallInEditor in addition to custom events (currently we don't allow editing category or tooltip on custom events...)
Editor: Moved Experimental/EarlyAccessPreview details customizations up to UObject so it can be used on any class, not just actors/components
Upgrade Note: Behavior has changed so that CallInEditor can be called on CDOs as well, this will probably be walked back in a subsequent update, at least for actors and components.
Change 3375005 on 2017/03/31 by Michael.Noland
Fixing incremental compilation error due to missing include
#rnx
Change 3375015 on 2017/03/31 by Michael.Noland
Fixing incremental compilation error due to missing include (for real)
#rnx
Change 3375045 on 2017/03/31 by Marc.Audy
Only calculate the streaming levels prefix during seamless travel if it is a PIE world
#jira UE-43485
Change 3375053 on 2017/03/31 by Ben.Zeigler
#jira UE-41988 Fix it so leaving PIE while gameplay debugger is active will disable HUD extensions properly, restoring ability to print messages to screen
Change 3375057 on 2017/03/31 by Ben.Zeigler
#jira UE-39226 Don't add to DrawDebug list for player controllers with no local player
Change 3375121 on 2017/03/31 by Michael.Noland
Added missing include for FScopedTransaction
#rnx
Change 3375222 on 2017/03/31 by mason.seay
Submitting work done to TM-Gameplay. Still WIP
Change 3375308 on 2017/03/31 by Michael.Noland
Editor: Added back CDO filtering to CallInEditor, it's too easy to explode in the BP editor. May consider allowing opt-in behavior when we revisit Blutilities
Change 3375321 on 2017/03/31 by Ben.Zeigler
#jira UE-39062 Fix issue where using the level editor toolbar to modify blueprints was not properly marking the blueprints as modified, so the constructor links weren't being updated until manually compiling or resaving
Always recompute post constructor links when calling MarkBlueprintAsModified, as it can be called from native and other places where we modified CDOs but don't have a property changed event
Change 3375372 on 2017/03/31 by Ben.Zeigler
#jira UE-39568 Change Components to specifically update LatentActions the same as Actors do, so they update properly if bUpdateWhilePaused is set
Change 3375380 on 2017/03/31 by Marc.Audy
Modify IsMainAudioDevice to deal with the case where no audio device has been created.
Change 3375402 on 2017/03/31 by Marc.Audy
Fix DuplicateWorldForPIE in the case that the OwningWorld is null.
Change 3376037 on 2017/04/02 by Phillip.Kavan
#jira UE-35332 - Preserve the least common ancestor pin type on object array function node inputs after a node refresh.
Change summary:
- Added UK2Node_CallArrayFunction::GetDynamicallyTypedPins() to consolidate the code that retrieves type-dependent parameter pins.
- Added FBlueprintEditorUtils::FindLinkedPinWithAuthoritativePinType() to consolidate the code that considers other linked pins when choosing which type to propagate to type-dependent parameter pins.
- Added FBlueprintEditorUtils::PropagatePinTypeInfo() to consolidate the common code from UK2Node_CallArrayFunction::PropagateArrayTypeInfo(); this eliminated a redundant retrieval of the target pin set.
- Refactored UK2Node_CallArrayFunction::PropagateArrayTypeInfo() to now call FBlueprintEditorUtils::PropagatePinTypeInfo() after retrieving the set of dynamically-typed pins.
- Refactored UK2Node_CallArrayFunction::NotifyPinConnectionListChanged() to remove some unnecessary iteration passes and to ensure that we propagate the authoritative (least common ancestor) pin type for object- and struct-based types.
Change 3376364 on 2017/04/03 by Richard.Hinckley
UE-40920 Fix to Paper2D flipbook timeline editor. Previously, the timeline shown was one frame shorter than the animation. Now, the timeline shows the correct frame count.
Change 3376366 on 2017/04/03 by Richard.Hinckley
UE-40920 Bugfix to Paper2D flipbook editor. The red line indicating the current frame now adjusts properly if the timeline is longer than the editor window and the scroll bar is moved to the right.
Change 3376517 on 2017/04/03 by Marc.Audy
PR #3195: Added support for GamePad on RawInput Plugin (Contributed by katze7514)
#jira UE-41499
Change 3376708 on 2017/04/03 by Mike.Beach
Moving nativized plugins into a centralized folder (so we can use it as an additional plugin lookup dir) - this is so we can ultimately keep the generated code around for debugging purposes.
Summary of changes:
- nativized plugins now moved to ...\Intermediate\Plugins\<PLATFORM>\NativizedAssets
- corresponding manifest files get saved inside the module and named to match the platform
- nativized modules now whitelisted only for the platform they were generated for
- cleanup on how we generate paths (now piping in platform name) and pass multi-cook process ids (for building manifest filenames)
- extending the 'NativizeAssets' command line, so you can use it to specify the target plugin path (utilized by UAT to coordinate the plugin path between cook & build - was previously hardcoded in multiple places).
Change 3376826 on 2017/04/03 by Phillip.Kavan
#jira UE-43330 - Fix a crash when adding an input parameter to a Custom Event node after deleting a Function Graph containing a Create Event node.
Change summary:
- Modified UK2Node_CreateDelegate::HandleAnyChangeWithoutNotifying() to check for a valid blueprint before accessing it (since the accessor is now a checked operation).
- Modified UK2Node_CreateDelegate::GetScopeClass() to also check for a valid blueprint before accessing it.
- Switched 'NULL' to 'nullptr' in a few spots.
Change 3376831 on 2017/04/03 by Ben.Zeigler
#jira UE-43500, clean up UPackage when EDL/async loading fails. This restores EDL LoadPackage to work the same as non EDL and return NULL instead of an invalid empty package
Change 3376846 on 2017/04/03 by Ben.Zeigler
#jira UE-38760 Properly refresh exec pins when removing pin from a Switch on Int node
Change 3376850 on 2017/04/03 by Dan.Oconnor
Use authoritative class to mitigate compilation order issues
Change 3376961 on 2017/04/03 by Ben.Zeigler
#jira UE-43127 Add struct ops implementations for FIntVector and FBox2d, any blueprint type needs struct ops to avoid crashes
Fix Box2d variable name in NoExportTypes
Change 3376985 on 2017/04/03 by Ben.Zeigler
#jira UE-43582 Remove Xbox-specific code from AssetRegistry because it won't work after my refactor. The serialization is much faster now and neither Bob nor I can conceive of a way this would take long enough to stall the main thread. If it it is somehow a problem, it should be wrapped in a slow task instead
Change 3377009 on 2017/04/03 by Ben.Zeigler
#jira UE-43036 Fix crash when right clicking blueprint with no parent class. Ensures are fine but crashes should be avoided so people can try to copy data out of them
Change 3377054 on 2017/04/03 by Zak.Middleton
#ue4 - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta.
#jira UE-40344
#udn https://udn.unrealengine.com/questions/310497/large-delta-time-for-first-player-movement-update.html
Change 3377061 on 2017/04/03 by Dan.Oconnor
Fixes for issues exposed by cooking with compilation manager. When cooking we end up with more blueprints compiling at a single time, which highlighted issues reading from generated classes while they were actively regenerating.
Note that EInternalCompilerFlags::PostponeLocalsGenerationUntilPhaseTwo has only been added to mitigate risk - there is no known reason that existing compilation flows can't postpone generatation of local variables.
Change 3377073 on 2017/04/03 by Mike.Beach
CIS fix - proper initialization ordering.
Change 3377371 on 2017/04/03 by Ben.Zeigler
#jira UE-43144 Disallow creating map of FText, like bool it is not hashable
Change 3377395 on 2017/04/03 by Dan.Oconnor
Build fix - make order in source match initialization order in artifact
Change 3377417 on 2017/04/03 by Dan.Oconnor
Speculative SA fix
Change 3377496 on 2017/04/03 by Aaron.McLeran
#jira UE-43558 Cleaning up shutdown code with audio plugins.
Change 3377608 on 2017/04/03 by Zak.Middleton
#ue4 - Added function ACharacter::CacheInitialMeshOffset() to cache initial mesh offset, used as the target for network smoothing. Added a call to this function from BeginPlay() in addition to the existing call from PostInitializeComponents(), and exposed this to blueprints as well. This fixes the case of people moving the mesh in BeginPlay rather than in the editor or construction script and not having the mesh offset reflected correctly in network games.
#jira UE-38966
Change 3377880 on 2017/04/03 by Aaron.McLeran
Audio bug fixes
#jira UE-43600 Fixing sounds played by playsoundatlocation for audio volume calculations
#jira UE-43601 Fixing listener volume interpolation
#jida UE-43602 Fixing reverb/eq interpolation
Change 3377908 on 2017/04/03 by Phillip.Kavan
#jira UE-43565 - Fix a regression on type-dependent array function node pins that have more than one link.
Change summary:
- Added FBlueprintEditorUtils::FindLinkedPinWithMostDerivedPinType()
- Modified FBlueprintEditorUtils::FindLinkedPinWithAuthoritativePinType() to properly handle pins that have multiple links.
Change 3377912 on 2017/04/03 by Dan.Oconnor
Fix for missing SUBINSTANCE variables on anim BP skeletons. I elected to force SUBINSTANCE variable creation for the compilation manager codepath
Change 3377946 on 2017/04/03 by Ben.Zeigler
#jira UE-43594 Fix issue with streamable manager where a failed load would leave bAsyncLoadRequestOutstanding, which would confuse later calls to stream the same asset
Lower some error verbosity now that I believe I have tracked down the issue
Change 3377950 on 2017/04/03 by Michael.Noland
Blueprints: Prevent merge tool from crashing in SVN when looking at a file with gaps in the revision history
(May still not work correctly, but it won't crash; full fix covered by UE-43603)
#jira UE-22428
Change 3377981 on 2017/04/03 by Michael.Noland
PR #3416: UE-43005: Prevent crash due to too long name (Contributed by projectgheist)
#jira UE-43291
#jira UE-43005
Change 3378039 on 2017/04/04 by Michael.Noland
PhysX: Allowed the editor to compile when bRuntimePhysicsCooking is disabled (WITH_EDITOR is used in every place in C++ to force it in already)
Change 3378041 on 2017/04/04 by Michael.Noland
Paper2D: Adjusted under what circumstances CreatePhysicsMeshes is called on various Paper2D types to match UProceduralMeshComponent
Change 3378081 on 2017/04/04 by Dan.Oconnor
Fix Blueprint Context nodes so that they don't rely on Ar.IsBeingSaved() call before compilation
3x because of copy/paste
Change 3378094 on 2017/04/04 by Dan.Oconnor
Add missing preload call for compilation manager
Change 3378917 on 2017/04/04 by Marc.Audy
Fix static analysis (which is very dumb)
Change 3378986 on 2017/04/04 by Dan.Oconnor
Fix bad merge
Change 3379100 on 2017/04/04 by Dan.Oconnor
Fix missing CPF_ConstParm/CPF_ReferenceParm/CPF_OutParm logic in 'fast' skeleton path
#jira UE-43629
Change 3379102 on 2017/04/04 by Ben.Zeigler
Actually fix StreamableManager issues with cancelling a request messing up things in the future. We now always queue a request, even if it failed before or there is one in progress. This has to be done to avoid issues with cancelling the existing request or mounting new files after it's failed once
Now that StreamableManager will retry missing files, add failed load packages to the known missing list so it won't spam errors over and over
Change 3379147 on 2017/04/04 by Zak.Middleton
#ue4 - Improve on CL 3377608: Made Character::CacheInitialMeshOffset() take location and rotation params so you can be explicit on the values, in case you try to change these during network smoothing, where reading the relative offsets would have been skewed.
Change 3379254 on 2017/04/04 by Aaron.McLeran
Fixing sounds in audio mixer when no EQ has been set.
Change 3379760 on 2017/04/04 by Ben.Zeigler
#jira UE-43647 Don't delete failed async packages that are rooted
[CL 3380073 by Dan Oconnor in Main branch]
2017-04-04 20:49:52 -04:00
|
|
|
SAssignNew(InlineEditableText, SInlineEditableTextBlock)
|
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
|
|
|
.Style( &CommentStyle )
|
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3380068)
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3358702 on 2017/03/22 by Marc.Audy
Always mark child actors pending kill when in PostLoad as often the World is too early to have a WorldContext which causes issues in DestroyActor
#jira UE-42679
Change 3358737 on 2017/03/22 by Mieszko.Zielinski
Exposed UBrainComponent::IsRunning() and UBrainComponent::IsPaused() to Blueprint #UE4
Change 3359062 on 2017/03/22 by Michael.Noland
Blueprints: Show the Save and Find in CB buttons when working with level script blueprints (they will save/show the map package)
#jira UE-30748
Change 3359066 on 2017/03/22 by Michael.Noland
PR #3348: Make fields of FAttributeMetaData editable (Contributed by hoelzl)
#jira UE-42620
Change 3359069 on 2017/03/22 by Michael.Noland
PR #3288: InverseLerp Blueprint Tooltips Clarification (Contributed by wunawuna)
#jira UE-42250
Change 3359108 on 2017/03/22 by Michael.Noland
Blueprints: Fix an issue where running the editor in a different culture could break pins on nodes that have optional arrays of pins (e.g., animation graph nodes like blend by layer)
#jira UE-36232
Change 3359235 on 2017/03/22 by Marc.Audy
Expose bShouldPerformFullTickWhenPaused to blueprints and details panel
#jira UE-17286
Change 3359324 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Disable collision on NavModifierVolumes. Previously they had an OverlapAll response and generated overlap events. They are only supposed to be used for preventing nav mesh generation, but overlap events could affect gameplay, and also are bad for performance.
(Integrate CL 3249525 from Odin).
Change 3359326 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Optimization during attachment to check bool before expensive casts and body instance fetching.
(Integrate CL 3261262 from Odin).
Change 3359327 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Make bSkipAgentHeightCheckWhenPickingNavData actually ignore height when picking data.
(Integrate CL 3231908 from Odin)
Change 3359328 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Make a static FName in UMovementComponent::OverlapTest const and move it to a namespace.
(Integrate CL 3259985 from Odin)
Change 3359329 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix ProjectileMovementComponent continuing to simulate (and generate hit events) after it is deactivated during simulation. HasStoppedSimulation() should check if bIsActive is false.
(Integrate CL 3260001 from Odin)
Change 3359330 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix accumulated forces in CharacterMovement when movement mode or activation changes.
- Added CharacterMovementComponent::ClearAccumulatedForces()
- AddForce() and related functions now avoid adding the force if in MovementMode "None". When ticking in "None", forces are cleared so they don't pile up until the next valid movement mode. Forces are also cleared if the updated component changes or when the capsule simulates physics.
- CharacterMovementComponent::Deactivate() implemented to stop movement and call ClearAccumulatedForces().
- ClearAccumulatedForces() now also clears pending launch velocity.
- Exposed ClearAccumulatedForces() to blueprints.
- AddForce() and AddImpulse() now also check that character movement is active (not deactivated, able to tick).
- ApplyAccumulatedForces() does not call ClearAccumulatedForces(), since that would prevent pending launch.
- SimulateMovement() handles pending launch and clears forces regardless of whether it's simulated proxy. Added note to investigate using ApplyAccumulatedForces() in SimulateMovement().
- Inlined ActorComponent::IsActive().
(Integrate CLs 3259933, 3266018 from Odin)
Change 3359338 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) TickCharacterPose() and clear root motion before abandoning tick in UCharacterMovementComponent::PerformMovement() when movement mode is None. Prevents root motion building up until next valid movement mode.
(Integrate CL 3271928 from Odin)
Change 3359345 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix characters sliding when landing on slanted surfaces or stairs, when aggressive "Perch" settings could cause a line trace (from the center of a capsule) instead of capsule trace and thereby screw up the floor distance checks.
(Integrate CL 3273026 from Odin)
Change 3359381 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Performance tweak to ApplyRadialDamageWithFalloff(). Don't rebuild FRadialDamageEvent each loop over hit actors. Added stats for BreakHitResult()/MakeHitResult() under "stat game".
(Integrate CLs 3275415, 3276810 from Odin).
Change 3359422 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Fix build (CollisionProfile included).
Change 3359442 on 2017/03/22 by Michael.Noland
Blueprints: Prevent comment boxes from clipping the last letter of some words at the edge by increasing the padding on the wrap-at position
Change 3359445 on 2017/03/22 by Michael.Noland
PR #2989: Improved BP comment nodes (Contributed by projectgheist)
#jira UE-36788
#jira UE-39118
Change 3359446 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Add support for FScopedMovementUpdate to be able to queue up overlaps that do not require reflexive bGenerateOverlapEvents. This allows custom inspection or processing of overlaps within a scoped move. Overlap events from the move will still only trigger in UpdateOverlaps() if bGenerateOverlapEvents is enabled on both components, as before.
(Integrate CL 3278307 from Odin)
Change 3359494 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Make some data in FScopedMovementUpdate protected rather than private so it can easily be subclassed, and expose a new helper SetWorldLocationAndRotation().
(Integrated CL 3280775 from Odin).
Change 3359506 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) MovementComponent::Deactivate() calls StopMovement() to clear cached velocity. It's silly that reactivation many seconds or frames later would restore that velocity. Some special handling in CharacterMovement to keep it acting as before (it cleared velocity, but did not clear the path request, leaving that alone).
(Integrate CL 3287026 from Odin).
Change 3359514 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Collision.ListComponentsWithResponseToProfile command includes pending kill objects.
(Integrate CL 3293322 from Odin)
Change 3359553 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Optimization in CharacterMovement tick to not extract transform values twice.
(Integrate CL 3299098 from Odin).
Change 3359554 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: optimize UKismetMathLibrary::GetForwardVector() (converts Rotator to forward direction). This way we avoid building a matrix, and avoids 1 more SinCos call.
(Integrate CL 3296254 from Odin).
Change 3359555 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Add OnComponentCollisionSettingsChangedEvent delegate to PrimitiveComponent. Fixed SkeletalMeshComponent not calling Super implementation.
(Integrate CL 3295744 from Odin)
Change 3359561 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: AActor::GetComponents() with generic type should *not* assume the output array needs space for the entire contents of OwnedComponents. If OwnedComponents.Num() > the array reserve size, this forces an allocation, even if few or no components of the requested type are found.
(Integrate CL 3299111 from Odin)
Change 3359573 on 2017/03/22 by dan.reynolds
Added BP log to the Passive Mix Modifier test platform BP
Change 3359593 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: avoid allocations during creation in AAIController::PostInitializeComponents() (in development builds).
(Integrate CL 3299118 from Odin)
Change 3359595 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Perf: HasActiveCameraComponent() and HasActivePawnControlCameraComponent() don't need to fill in an array while searching for a certain component. Also see CL 3359561, which could cause each of these functions to always cause an allocation when filling in the array when num components > 24.
(Integrate CL 3299116 from Odin)
Change 3359602 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Clean up some of the new fast overlap code in PrimitiveComponent. Mostly some variable renaming, and CVar access optimization.
(Integrate CL 3340622 from Odin)
Change 3359616 on 2017/03/22 by Zak.Middleton
#ue4 - (Merge) Added support for bIgnoreTouches to FCollisionQueryParams. MoveComponent uses this to avoid PhysX collision queries for overlaps in GeomSweepMulti when bGenerateOverlapEvents is off.
(Integrate CL 3340635 from Odin)
Change 3359864 on 2017/03/23 by Mieszko.Zielinski
Added a safeguard to prevent crashes resulting from people trying to name their BB keys things longer than 1024 characters #UE4
#jira UE-43120
Change 3360884 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: AUDIO_MIXER_ENABLE_DEBUG_MODE turned off in Test builds. Shipping already had it off.
(Integrate CL 3310724 from Odin)
Change 3361045 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: new cvars to help with optimization:
- au.DisableReverbSubmix
- au.DisableEQSubmix
- au.DisableParallelSourceProcessing
- au.SetAudioChannelCount
Also checked in some code to cut down on the amount of parameter setting in EQ
(Integrate of CL 3303165 in Odin by Aaron.Mcleran)
Change 3361172 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: added stat for HRTF.
(Integrate CL 3310728 from Odin)
Change 3361189 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) CVar to toggle HRTF for perf settings. Default is on.
(Integrate CL 3310926 from Odin).
Change 3361914 on 2017/03/23 by Aaron.McLeran
UE-42649 Fixing crash in cleaning up active sound in sound concurrency
-Handling edge case of an active sound not have a sound base ptr, which is possible.
Change 3361924 on 2017/03/23 by Aaron.McLeran
UE-41378 Fixing passive mix modifier bug
Change 3361978 on 2017/03/23 by Aaron.McLeran
UE-42627 Fix for when audio device is removed and getting a deadlock in computing audio clock
Change 3361989 on 2017/03/23 by Aaron.McLeran
PR #3010: Check for null GEngine on sound processing
Change 3362053 on 2017/03/23 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: Avoid thousands of Array.Add() calls during processing, which on shipping still does checks to see if the allocator has to grow, and updates ArrayCount.
(Integrate CL 3311120 from Odin)
Change 3362102 on 2017/03/23 by Aaron.McLeran
PR #3182: Enabled SwitchOnEnum nodes for EAttenuationShape and EAttenuationDistanceModel
Change 3362153 on 2017/03/23 by Aaron.McLeran
UE-43286 Oculus audio plugin not working/available
Change 3362162 on 2017/03/23 by Aaron.McLeran
UE-42252 Frequent ensure in FLevelEditorViewportClient::UpdateAudioListener
Change 3362206 on 2017/03/23 by Aaron.McLeran
UE-43287 Fixing HRTF spatialization in editor viewport
- Steam Audio doesn't support multiple audio devices at the moment
- Instead of hard-coding all audio plugins to not work in main audio device (GDC temp fix), I allow audio plugins to specify if they should be used on main audio device
Change 3362775 on 2017/03/24 by mason.seay
Replaced deprecated node
Change 3363024 on 2017/03/24 by Ben.Zeigler
Fix regression in behavior of streamable manager where loading both a valid and null asset used to work but now fails. Instead added a warning for that case, but if only null are requested it still fails with an error
Change 3363030 on 2017/03/24 by Zak.Middleton
#ue4 - Lower default max sendrate for clients to 60Hz from 90Hz when net speed is high and player count is low. Throttled rate remains at 45Hz. This value has been tested in Paragon with no ill effect, and saves on bandwidth and server CPU when clients run at high framerate.
Change 3363036 on 2017/03/24 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: turned a float divide into a multiply. It happens at least 32k times per audio update.
(Integrate CL 3311158 from Odin)
Change 3363541 on 2017/03/24 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: remove pointer indirection, and successive TArray Add()s in GetChannelMap().
(Integrate CL 3311169 from Odin)
Change 3363642 on 2017/03/24 by Zak.Middleton
#ue4 - (Merge) Audio: Perf: Save ~5% total audio update time. Savings in "Source Output Buffers".
- Removed function call overhead to updating channel map. 64,000 function calls...
- Simplified FSourceParam::Update() to reduce branching and have 1 return site.
- Added alternative to GetChannelMap() called UpdateChannelMap() that avoids copying out values to an array. The values can then be fetched from the channel data directly.
(Integrate CL 3311235 from Odin)
Change 3364441 on 2017/03/24 by Ben.Zeigler
Fix issue where calling LoadLocalIniFile on a plugin file would result in an empty file. It was assuming engine/game dirs, now it instead pulls it out of GConfig if available.
This fixes issue where iterative cooking would fail on plugin config files
Add FindConfigFileWithBaseName to GConfig
Change 3364652 on 2017/03/25 by Phillip.Kavan
#jira UE-43210 - Fix a runtime VM crash upon removing an element from a set after consecutive add/remove iterations.
Change summary:
- Fixed FScriptSet::Add() to initialize the HashIndex member of the new element when the HashSize does not change.
Change 3365609 on 2017/03/27 by Richard.Hinckley
#jira UEDOC-4720
Fixed global enums being dropped from documentation after being extracted by Doxygen.
Change 3365737 on 2017/03/27 by Marc.Audy
Move setting of the ParentComponent property on an actor to PostRepNotifies instead of having a separate OnRep function.
Change 3365795 on 2017/03/27 by Marc.Audy
Fix compile error
Change 3365894 on 2017/03/27 by Phillip.Kavan
#jira UE-35507 - Fix for a GLEO when choosing an LSBP class as the default value for a class input pin in a non-LSBP graph.
Change summary:
- Modified FGraphPinFilter::IsClassAllowed() to disallow a given class if the type is contained within a map package that does not match the current graph context.
Change 3366067 on 2017/03/27 by Marc.Audy
Add UWorld* to PostLoadMap indicating which world has been loaded. Null if an error has occurred.
#jira UE-40228
Change 3366097 on 2017/03/27 by Marc.Audy
Fixed missed deprecation disable pairing for PostLadMap
Change 3366170 on 2017/03/27 by Aaron.McLeran
Fixing div by zero
Change 3366221 on 2017/03/27 by Aaron.McLeran
UE-43240 Removing dependency on component visualizers in runtime Phonon module.
Change 3366698 on 2017/03/27 by Marc.Audy
Fix Orion compile errors
Change 3366782 on 2017/03/27 by Aaron.McLeran
Bringing over optimizations from Odin to Dev-framework.
Original CL 3311435
Change 3366818 on 2017/03/27 by Aaron.McLeran
Bringing fix from Odin to Dev-Framework from CL 3304533
Fix for rare condition that stomps memory during source recycling.
Change 3366984 on 2017/03/27 by Michael.Noland
Blueprints: Downgraded a warning in the connection drawing policy to verbose to suppress it. It does no good to a typical user.
#jira UE-41638
Change 3367085 on 2017/03/27 by Brent.Pease
- Improve AudioMixer buffering so that only two buffers are needed instead of three, buffer submission and buffer processing are ovelapped, and a warning is issued if the audio processing thread can not keep up.
- Added time critical thread priority so that audio processing is not starved which would produce clicks and popping
- Allow the audio thread to not be created if a platform implements its own BeginGeneratingAudio() call (as happens on Android)
Change 3367434 on 2017/03/28 by Marc.Audy
Fix UT compile error
Change 3368587 on 2017/03/28 by Mike.Beach
Adding a "CookedOnly" plugin type (now used by the nativized Blueprint plugin).
Change 3368724 on 2017/03/28 by Zak.Middleton
#ue4 - MovementComponent does not ignore initial blocking overlaps when moving from SafeMoveUpdatedComponent(). Set "p.MoveIgnoreFirstBlockingOverlap" back to zero and add a new flag that prevents the depenetration test from generating hit events (to prevent the problem discovered in UE-39387).
#jira UE-41613, UE-28610
Change 3368748 on 2017/03/28 by Dan.Oconnor
Provide &FUObjectThreadContext::Get().ObjLoaded when using the compilation manager, add validation functions for finding REINST/TRASH references
Change 3368852 on 2017/03/28 by Mike.Beach
Fixing a CIS error before it happens - wrapping implementation in preprocessor defines to match declaration in header.
Change 3368873 on 2017/03/28 by Dan.Oconnor
Rather than collecting script object references, just use the ScriptObjectReferences array. This allows reference replacing archives to update ScriptObjectReferences.
Change 3368998 on 2017/03/28 by Dan.Oconnor
Setting CLASS_Interface early in the compilation process
Change 3369494 on 2017/03/29 by Marc.Audy
Fix UAT compile error
Change 3369924 on 2017/03/29 by Zak.Middleton
#ue4 - Allow CharacterMovement AdjustFloorHeight() to adjust using the line trace if in penetration. Force next floor check so it will check after it depenetrates.
#jira UE-36973
Change 3369932 on 2017/03/29 by Ben.Zeigler
#jira UE-19494 Finish asset auditing work by allowing reading back a cooked asset registry in the editor
Split off FAssetRegistryState as the struct to hold serialization and accessors, to allow loading multiple platform states at once.
Optimized runtime asset registry serialization to be around 1/3 as large as before. Dependencies are disabled by default for the runtime registry, you can re-enable with bSerializeDependencies in Engine.ini
Add FAssetPackageData which is explicitly per-package and only updated on save/load time. File size is stored in here and is computed for both editor and cooked data
Add code to AssetManagerEditorModule to allow loading pre-cooked asset registry files and reading cooked sizes. The Asset Audit window now has a platform drop down that allows reading from cooked data
Rename ChunkManifestGenerator to AssetRegistryGenerator and change it to directly hold an FAssetRegistryState internally
Add new experimental AssetRegistry mode for iterative cooking. This mode is much faster as it does not need to do it's own internal dependency checking and it can be enabled with bUseAssetRegistryForIteration
Change it so during cooking it doesn't directly load string asset references, but instead cues them for cook and uses the asset registry to find and add redirector mappings that are used during save time
Change 3370028 on 2017/03/29 by Ben.Zeigler
CIS fix
Change 3370360 on 2017/03/29 by Mike.Beach
Adding an extra field to FPlatformInfo; a 'UBTTarget' identifier intended to sync up with UBT's UnrealTargetPlatform enum (needed for programatically generating plugin platform whitelists).
Change 3370363 on 2017/03/29 by Ben.Zeigler
Fix issue where loading out of date editor asset registry cache would throw pointless errors
Change 3370414 on 2017/03/29 by Marc.Audy
Remove autos
Change 3370428 on 2017/03/29 by Ben.Zeigler
Fix linux CIS issue, remove implicit conversion from FSavePackageResultStruct back to enum result as it was creating ambiguous operators
Change 3370453 on 2017/03/29 by Marc.Audy
CIS fix
Change 3370548 on 2017/03/29 by Marc.Audy
#rn Fix issues with seamless travel in PIE and shared sub levels between different parents.
Change 3370564 on 2017/03/29 by Mieszko.Zielinski
PR #3429: fix comment typo (Contributed by kayama-shift)
Change 3370602 on 2017/03/29 by Mieszko.Zielinski
Fixed FRecastTileGenerator::Modifiers being erroneously counted twice when stating memory #UE4
Change 3370615 on 2017/03/29 by Phillip.Kavan
#jira UE-35515 - No longer crash when creating a new BP class from one or more selected Actors in which the root component is not Blueprint-spawnable.
Change summary:
- Modified FKismetEditorUtilities::AddComponentsToBlueprint() to handle deferred SceneComponent SCS node adds when the parent component was not also added (due to not being BP-spawnable).
Change 3370693 on 2017/03/29 by Michael.Noland
Fixing some bad indentation
#rnx
Change 3370740 on 2017/03/29 by Ben.Zeigler
DLC/Mod Cooking fixes, the list of packages from release build as in uncooked filename format so fixed code and made this more obvious
Fix Asset Registry to allow loading multiple source asset registries into the same state, by keeping a list of preallocated buffers
Change 3370792 on 2017/03/29 by Michael.Noland
Blueprints: Deleted some unversioned backwards compat. code that would only matter for assets older than VER_UE4_OLDEST_LOADABLE_PACKAGE
Change 3370794 on 2017/03/29 by Michael.Noland
PR #3190: Reduce some output logging
- Reduced an Oculus log from Log to Verbose because it spams quite a bit
- Corrected the spelling and the meaning of a blueprint warning when an invalid breakpoint is encountered
- Treat UInputComponent::GetAxisValue(None) as not a warning
- Switch FGenericSaveGameSystem::LoadGame to silently attempt to load the file, it returns success/failure and it isn't necessary to have a separate warning at the file i/o layer
#jira UE-41446
Change 3370831 on 2017/03/29 by Dan.Oconnor
Iteration on compilation manager
- Fix Skeleton class compilation order
- Pass ObjLoaded array to compilation manager to ensure all objects get PostLoaded
- Make sure data only classes get reinstanced, so that UpdateCustomPropertyListForPostConstruction is run correctly
Change 3370923 on 2017/03/29 by Michael.Noland
Blueprints: Added an icon to indicate whether or not a macro contains latent actions
- Note: The state of the icon is cached for performance reasons on request, with the cache being cleared when the BP containing the macro is modified or a macro graph is removed
- This does mean that editing the inner macro of a nested macro to add/remove a latent action will not show up in visualization for the outer node until the editor is restarted or the outer macro is modified
Change 3371039 on 2017/03/29 by Dan.Oconnor
Hacky fix for dropping return params when a function's return node is culled
Change 3371750 on 2017/03/30 by Richard.Hinckley
Stencil write mask exposed. Adds nine new options (all bits, plus each bit individually - write on pass or depth fail). This allows stencil overlaps to be detected by mixing masks.
Change 3372513 on 2017/03/30 by Ben.Zeigler
#jira UE-43475 Fix cooker issues with string asset references to null packages.
Fix redirector detection to follow recursive chains, and correctly strip object class from redirected string asset references.
Change 3372565 on 2017/03/30 by Richard.Hinckley
Rolling back stencil change, will be moved to Dev-Rendering.
Change 3372764 on 2017/03/30 by Marc.Audy
Do not create a duplicate sub object that is not in the annotation if a sub object of the same name and class already exists.
#jira UE-43328
#rn Fixed cases where the blueprint of a class used as a child actor could be dirtied when compiling the owning blueprint.
Change 3372847 on 2017/03/30 by Marc.Audy
Fix missing include
Change 3372994 on 2017/03/30 by Zak.Middleton
#ue4 - Fix build in Debug (checkSlow using incorrect function params).
Change 3373195 on 2017/03/30 by Mike.Beach
For nativization, changing it so we key off of the target platform-info struct instead of the platform (in preparation for defining the nativized plugin's platform whitelist).
Change 3373320 on 2017/03/30 by mason.seay
Basic for TM-Gameplay map (WIP)
Change 3373448 on 2017/03/30 by Ben.Zeigler
Fix recursive size display in audit window
Improve asset manager comments
Change 3373576 on 2017/03/30 by dan.reynolds
AEOverview Update:
Updated Passive Mix Modifier Test based on recent changes in behavior
Also added Initial Delay Time timer to test
Change 3373589 on 2017/03/30 by dan.reynolds
AEOverview Passive Mix Mod Test Map update
Change 3373624 on 2017/03/30 by Zak.Middleton
#ue4 - Increase Pawn location replication precision to 2 decimal places from 0. Prevents replicated pawns from being inside geometry by a large amount. Removed CVars controlling CharacterMovement proxy shrink amount and made those instanced properties on the component.
#jira UE-40420
Change 3374271 on 2017/03/31 by Marc.Audy
Fix deprecation warning in new UT code
Change 3374320 on 2017/03/31 by Marc.Audy
Fix HTML5 compile.
Change 3374413 on 2017/03/31 by Jeff.Farris
Added ENGINE_API to 2 functions in PlanarReflection, so projects can subclass it.
(Copied CL 3276454 from Robo Recall to Dev-Framework)
Change 3374414 on 2017/03/31 by Jeff.Farris
Added support for setting UNavigationSystem::bUpdateNavOctreeOnComponentChange
(Copied CL 3267903 from RoboRecall to Dev-Framework)
Change 3374616 on 2017/03/31 by Ben.Zeigler
Copy of Fortnite CL #3312058 to add a missing redirector. I do not understand why this is not erroring on Main, I guess my minor cook changes somehow exposed this
Change 3374664 on 2017/03/31 by Jeff.Farris
Consted AIController::GetBrainComponent()
(Copied 3239101 from Robo Recall to Dev-Framework)
Change 3374665 on 2017/03/31 by Jeff.Farris
PrimitiveComponent bIgnoreRadialImpulse and bIgnoreRadialForce are now exposed to BPs. bIgnoreRadialImpulse now respected when applying impulse to relevant movement components.
(Coped CL 3242355 from Robo Recall to Dev-Framework)
Change 3374779 on 2017/03/31 by Jeff.Farris
Exposed SetAllPhysicsAngularVelocity to blueprints
(Copied CL 3228390 from Robo Recall to Dev-Framework)
Change 3374792 on 2017/03/31 by Ben.Zeigler
#jira UE-42618
PR #3347: Improve support for FGameplayAttributeData properties in attribute sets (Contributed by hoelzl)
Change 3374844 on 2017/03/31 by Ben.Zeigler
#jira UE-42587 Fix issue where supressed gameplay effects that granted abilities would only work the first time, it now clears out of date ability handles
Change 3374925 on 2017/03/31 by Marc.Audy
Don't throw warning about missing world context for inactive worlds.
#jira UE-42679
Change 3374927 on 2017/03/31 by Michael.Noland
Editor: Added options for configuring the editor window background color and texture, which can be useful to visually distinguish the editor when switching between different branches or projects
Change 3374995 on 2017/03/31 by Michael.Noland
Editor: Rewrote CallInEditor support and promoted it so it can be used on functions in any class, not just blueprints derived from AActor:
- CallInEditor used on native UFUNCTION() declarations will now show up without having to make a BP subclass
- CallInEditor can now be used as a top-level keyword in the UFUNCTION() declaration (e.g., UFUNCTION(Category=CoolCommands, CallInEditor))
- Now shows each function as a separate button, placed in the category associated with the function
- The button strip entry is now searchable by function name or tooltip
- Prevented operating on functions that have parameters or return values, which would crash before
- Removed the duplicate copies of properties placed in the Blutility section
- Added a scoped transaction around CallInEditor execution
- Allowed functions to be marked as CallInEditor in addition to custom events (currently we don't allow editing category or tooltip on custom events...)
Editor: Moved Experimental/EarlyAccessPreview details customizations up to UObject so it can be used on any class, not just actors/components
Upgrade Note: Behavior has changed so that CallInEditor can be called on CDOs as well, this will probably be walked back in a subsequent update, at least for actors and components.
Change 3375005 on 2017/03/31 by Michael.Noland
Fixing incremental compilation error due to missing include
#rnx
Change 3375015 on 2017/03/31 by Michael.Noland
Fixing incremental compilation error due to missing include (for real)
#rnx
Change 3375045 on 2017/03/31 by Marc.Audy
Only calculate the streaming levels prefix during seamless travel if it is a PIE world
#jira UE-43485
Change 3375053 on 2017/03/31 by Ben.Zeigler
#jira UE-41988 Fix it so leaving PIE while gameplay debugger is active will disable HUD extensions properly, restoring ability to print messages to screen
Change 3375057 on 2017/03/31 by Ben.Zeigler
#jira UE-39226 Don't add to DrawDebug list for player controllers with no local player
Change 3375121 on 2017/03/31 by Michael.Noland
Added missing include for FScopedTransaction
#rnx
Change 3375222 on 2017/03/31 by mason.seay
Submitting work done to TM-Gameplay. Still WIP
Change 3375308 on 2017/03/31 by Michael.Noland
Editor: Added back CDO filtering to CallInEditor, it's too easy to explode in the BP editor. May consider allowing opt-in behavior when we revisit Blutilities
Change 3375321 on 2017/03/31 by Ben.Zeigler
#jira UE-39062 Fix issue where using the level editor toolbar to modify blueprints was not properly marking the blueprints as modified, so the constructor links weren't being updated until manually compiling or resaving
Always recompute post constructor links when calling MarkBlueprintAsModified, as it can be called from native and other places where we modified CDOs but don't have a property changed event
Change 3375372 on 2017/03/31 by Ben.Zeigler
#jira UE-39568 Change Components to specifically update LatentActions the same as Actors do, so they update properly if bUpdateWhilePaused is set
Change 3375380 on 2017/03/31 by Marc.Audy
Modify IsMainAudioDevice to deal with the case where no audio device has been created.
Change 3375402 on 2017/03/31 by Marc.Audy
Fix DuplicateWorldForPIE in the case that the OwningWorld is null.
Change 3376037 on 2017/04/02 by Phillip.Kavan
#jira UE-35332 - Preserve the least common ancestor pin type on object array function node inputs after a node refresh.
Change summary:
- Added UK2Node_CallArrayFunction::GetDynamicallyTypedPins() to consolidate the code that retrieves type-dependent parameter pins.
- Added FBlueprintEditorUtils::FindLinkedPinWithAuthoritativePinType() to consolidate the code that considers other linked pins when choosing which type to propagate to type-dependent parameter pins.
- Added FBlueprintEditorUtils::PropagatePinTypeInfo() to consolidate the common code from UK2Node_CallArrayFunction::PropagateArrayTypeInfo(); this eliminated a redundant retrieval of the target pin set.
- Refactored UK2Node_CallArrayFunction::PropagateArrayTypeInfo() to now call FBlueprintEditorUtils::PropagatePinTypeInfo() after retrieving the set of dynamically-typed pins.
- Refactored UK2Node_CallArrayFunction::NotifyPinConnectionListChanged() to remove some unnecessary iteration passes and to ensure that we propagate the authoritative (least common ancestor) pin type for object- and struct-based types.
Change 3376364 on 2017/04/03 by Richard.Hinckley
UE-40920 Fix to Paper2D flipbook timeline editor. Previously, the timeline shown was one frame shorter than the animation. Now, the timeline shows the correct frame count.
Change 3376366 on 2017/04/03 by Richard.Hinckley
UE-40920 Bugfix to Paper2D flipbook editor. The red line indicating the current frame now adjusts properly if the timeline is longer than the editor window and the scroll bar is moved to the right.
Change 3376517 on 2017/04/03 by Marc.Audy
PR #3195: Added support for GamePad on RawInput Plugin (Contributed by katze7514)
#jira UE-41499
Change 3376708 on 2017/04/03 by Mike.Beach
Moving nativized plugins into a centralized folder (so we can use it as an additional plugin lookup dir) - this is so we can ultimately keep the generated code around for debugging purposes.
Summary of changes:
- nativized plugins now moved to ...\Intermediate\Plugins\<PLATFORM>\NativizedAssets
- corresponding manifest files get saved inside the module and named to match the platform
- nativized modules now whitelisted only for the platform they were generated for
- cleanup on how we generate paths (now piping in platform name) and pass multi-cook process ids (for building manifest filenames)
- extending the 'NativizeAssets' command line, so you can use it to specify the target plugin path (utilized by UAT to coordinate the plugin path between cook & build - was previously hardcoded in multiple places).
Change 3376826 on 2017/04/03 by Phillip.Kavan
#jira UE-43330 - Fix a crash when adding an input parameter to a Custom Event node after deleting a Function Graph containing a Create Event node.
Change summary:
- Modified UK2Node_CreateDelegate::HandleAnyChangeWithoutNotifying() to check for a valid blueprint before accessing it (since the accessor is now a checked operation).
- Modified UK2Node_CreateDelegate::GetScopeClass() to also check for a valid blueprint before accessing it.
- Switched 'NULL' to 'nullptr' in a few spots.
Change 3376831 on 2017/04/03 by Ben.Zeigler
#jira UE-43500, clean up UPackage when EDL/async loading fails. This restores EDL LoadPackage to work the same as non EDL and return NULL instead of an invalid empty package
Change 3376846 on 2017/04/03 by Ben.Zeigler
#jira UE-38760 Properly refresh exec pins when removing pin from a Switch on Int node
Change 3376850 on 2017/04/03 by Dan.Oconnor
Use authoritative class to mitigate compilation order issues
Change 3376961 on 2017/04/03 by Ben.Zeigler
#jira UE-43127 Add struct ops implementations for FIntVector and FBox2d, any blueprint type needs struct ops to avoid crashes
Fix Box2d variable name in NoExportTypes
Change 3376985 on 2017/04/03 by Ben.Zeigler
#jira UE-43582 Remove Xbox-specific code from AssetRegistry because it won't work after my refactor. The serialization is much faster now and neither Bob nor I can conceive of a way this would take long enough to stall the main thread. If it it is somehow a problem, it should be wrapped in a slow task instead
Change 3377009 on 2017/04/03 by Ben.Zeigler
#jira UE-43036 Fix crash when right clicking blueprint with no parent class. Ensures are fine but crashes should be avoided so people can try to copy data out of them
Change 3377054 on 2017/04/03 by Zak.Middleton
#ue4 - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta.
#jira UE-40344
#udn https://udn.unrealengine.com/questions/310497/large-delta-time-for-first-player-movement-update.html
Change 3377061 on 2017/04/03 by Dan.Oconnor
Fixes for issues exposed by cooking with compilation manager. When cooking we end up with more blueprints compiling at a single time, which highlighted issues reading from generated classes while they were actively regenerating.
Note that EInternalCompilerFlags::PostponeLocalsGenerationUntilPhaseTwo has only been added to mitigate risk - there is no known reason that existing compilation flows can't postpone generatation of local variables.
Change 3377073 on 2017/04/03 by Mike.Beach
CIS fix - proper initialization ordering.
Change 3377371 on 2017/04/03 by Ben.Zeigler
#jira UE-43144 Disallow creating map of FText, like bool it is not hashable
Change 3377395 on 2017/04/03 by Dan.Oconnor
Build fix - make order in source match initialization order in artifact
Change 3377417 on 2017/04/03 by Dan.Oconnor
Speculative SA fix
Change 3377496 on 2017/04/03 by Aaron.McLeran
#jira UE-43558 Cleaning up shutdown code with audio plugins.
Change 3377608 on 2017/04/03 by Zak.Middleton
#ue4 - Added function ACharacter::CacheInitialMeshOffset() to cache initial mesh offset, used as the target for network smoothing. Added a call to this function from BeginPlay() in addition to the existing call from PostInitializeComponents(), and exposed this to blueprints as well. This fixes the case of people moving the mesh in BeginPlay rather than in the editor or construction script and not having the mesh offset reflected correctly in network games.
#jira UE-38966
Change 3377880 on 2017/04/03 by Aaron.McLeran
Audio bug fixes
#jira UE-43600 Fixing sounds played by playsoundatlocation for audio volume calculations
#jira UE-43601 Fixing listener volume interpolation
#jida UE-43602 Fixing reverb/eq interpolation
Change 3377908 on 2017/04/03 by Phillip.Kavan
#jira UE-43565 - Fix a regression on type-dependent array function node pins that have more than one link.
Change summary:
- Added FBlueprintEditorUtils::FindLinkedPinWithMostDerivedPinType()
- Modified FBlueprintEditorUtils::FindLinkedPinWithAuthoritativePinType() to properly handle pins that have multiple links.
Change 3377912 on 2017/04/03 by Dan.Oconnor
Fix for missing SUBINSTANCE variables on anim BP skeletons. I elected to force SUBINSTANCE variable creation for the compilation manager codepath
Change 3377946 on 2017/04/03 by Ben.Zeigler
#jira UE-43594 Fix issue with streamable manager where a failed load would leave bAsyncLoadRequestOutstanding, which would confuse later calls to stream the same asset
Lower some error verbosity now that I believe I have tracked down the issue
Change 3377950 on 2017/04/03 by Michael.Noland
Blueprints: Prevent merge tool from crashing in SVN when looking at a file with gaps in the revision history
(May still not work correctly, but it won't crash; full fix covered by UE-43603)
#jira UE-22428
Change 3377981 on 2017/04/03 by Michael.Noland
PR #3416: UE-43005: Prevent crash due to too long name (Contributed by projectgheist)
#jira UE-43291
#jira UE-43005
Change 3378039 on 2017/04/04 by Michael.Noland
PhysX: Allowed the editor to compile when bRuntimePhysicsCooking is disabled (WITH_EDITOR is used in every place in C++ to force it in already)
Change 3378041 on 2017/04/04 by Michael.Noland
Paper2D: Adjusted under what circumstances CreatePhysicsMeshes is called on various Paper2D types to match UProceduralMeshComponent
Change 3378081 on 2017/04/04 by Dan.Oconnor
Fix Blueprint Context nodes so that they don't rely on Ar.IsBeingSaved() call before compilation
3x because of copy/paste
Change 3378094 on 2017/04/04 by Dan.Oconnor
Add missing preload call for compilation manager
Change 3378917 on 2017/04/04 by Marc.Audy
Fix static analysis (which is very dumb)
Change 3378986 on 2017/04/04 by Dan.Oconnor
Fix bad merge
Change 3379100 on 2017/04/04 by Dan.Oconnor
Fix missing CPF_ConstParm/CPF_ReferenceParm/CPF_OutParm logic in 'fast' skeleton path
#jira UE-43629
Change 3379102 on 2017/04/04 by Ben.Zeigler
Actually fix StreamableManager issues with cancelling a request messing up things in the future. We now always queue a request, even if it failed before or there is one in progress. This has to be done to avoid issues with cancelling the existing request or mounting new files after it's failed once
Now that StreamableManager will retry missing files, add failed load packages to the known missing list so it won't spam errors over and over
Change 3379147 on 2017/04/04 by Zak.Middleton
#ue4 - Improve on CL 3377608: Made Character::CacheInitialMeshOffset() take location and rotation params so you can be explicit on the values, in case you try to change these during network smoothing, where reading the relative offsets would have been skewed.
Change 3379254 on 2017/04/04 by Aaron.McLeran
Fixing sounds in audio mixer when no EQ has been set.
Change 3379760 on 2017/04/04 by Ben.Zeigler
#jira UE-43647 Don't delete failed async packages that are rooted
[CL 3380073 by Dan Oconnor in Main branch]
2017-04-04 20:49:52 -04:00
|
|
|
.Text( this, &SGraphNodeComment::GetEditableNodeTitleAsText )
|
|
|
|
|
.OnVerifyTextChanged(this, &SGraphNodeComment::OnVerifyNameTextChanged)
|
|
|
|
|
.OnTextCommitted(this, &SGraphNodeComment::OnNameTextCommited)
|
|
|
|
|
.IsReadOnly( this, &SGraphNodeComment::IsNameReadOnly )
|
|
|
|
|
.IsSelected( this, &SGraphNodeComment::IsSelectedExclusively )
|
|
|
|
|
.WrapTextAt( this, &SGraphNodeComment::GetWrapAt )
|
|
|
|
|
.MultiLine(true)
|
|
|
|
|
.ModiferKeyForNewLine(EModifierKey::Shift)
|
2014-03-14 14:13:41 -04:00
|
|
|
]
|
|
|
|
|
]
|
|
|
|
|
+SVerticalBox::Slot()
|
|
|
|
|
.AutoHeight()
|
|
|
|
|
.Padding(1.0f)
|
|
|
|
|
[
|
2015-01-15 15:57:51 -05:00
|
|
|
ErrorReporting->AsWidget()
|
2014-03-14 14:13:41 -04:00
|
|
|
]
|
|
|
|
|
+SVerticalBox::Slot()
|
|
|
|
|
.AutoHeight()
|
|
|
|
|
.HAlign(HAlign_Fill)
|
|
|
|
|
.VAlign(VAlign_Fill)
|
|
|
|
|
[
|
|
|
|
|
// NODE CONTENT AREA
|
|
|
|
|
SNew(SBorder)
|
|
|
|
|
.BorderImage( FEditorStyle::GetBrush("NoBorder") )
|
|
|
|
|
]
|
|
|
|
|
]
|
|
|
|
|
];
|
2014-11-03 10:40:57 -05:00
|
|
|
|
2018-07-16 11:43:36 -04:00
|
|
|
// Create comment bubble
|
|
|
|
|
CommentBubble = SNew(SCommentBubble)
|
|
|
|
|
.GraphNode(GraphNode)
|
|
|
|
|
.Text(this, &SGraphNodeComment::GetNodeComment)
|
|
|
|
|
.OnTextCommitted(this, &SGraphNodeComment::OnNameTextCommited)
|
|
|
|
|
.ColorAndOpacity(this, &SGraphNodeComment::GetCommentBubbleColor )
|
|
|
|
|
.AllowPinning(true)
|
|
|
|
|
.EnableTitleBarBubble(false)
|
|
|
|
|
.EnableBubbleCtrls(false)
|
|
|
|
|
.GraphLOD(this, &SGraphNode::GetCurrentLOD)
|
|
|
|
|
.InvertLODCulling(true)
|
|
|
|
|
.IsGraphNodeHovered(this, &SGraphNode::IsHovered);
|
|
|
|
|
|
|
|
|
|
GetOrAddSlot(ENodeZone::TopCenter)
|
|
|
|
|
.SlotOffset(TAttribute<FVector2D>(CommentBubble.Get(), &SCommentBubble::GetOffset))
|
|
|
|
|
.SlotSize(TAttribute<FVector2D>(CommentBubble.Get(), &SCommentBubble::GetSize))
|
|
|
|
|
.AllowScaling(TAttribute<bool>(CommentBubble.Get(), &SCommentBubble::IsScalingAllowed))
|
|
|
|
|
.VAlign(VAlign_Top)
|
|
|
|
|
[
|
|
|
|
|
CommentBubble.ToSharedRef()
|
|
|
|
|
];
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
|
2015-01-14 19:04:45 -05:00
|
|
|
FVector2D SGraphNodeComment::ComputeDesiredSize( float ) const
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
return UserSize;
|
|
|
|
|
}
|
|
|
|
|
|
2015-04-28 04:58:34 -04:00
|
|
|
FString SGraphNodeComment::GetNodeComment() const
|
|
|
|
|
{
|
|
|
|
|
const FString Title = GetEditableNodeTitle();;
|
|
|
|
|
return Title;
|
|
|
|
|
}
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
FReply SGraphNodeComment::OnMouseButtonDoubleClick( const FGeometry& InMyGeometry, const FPointerEvent& InMouseEvent )
|
|
|
|
|
{
|
|
|
|
|
// If user double-clicked in the title bar area
|
Added a new documentation node to the blueprints to display udn documentation excerpts in the grapheditor.
#TTP 312311 - ROCKET: TASK: Add a "Documentation Node"
#Branch UE4
#Proj BlueprintGraph, EdGraph, Kismet, KismetCompiler, GraphEditor, Documentation, EditorStyle
#Change Updated UEdGraphSchema to include an interface call to retrieve an FEdGraphSchemaAction to create documentation nodes. At this point only the K2 interfaces implement this.
#Change Updated UEdGraphSchema_K2 to include a call to retrieve an FEdGraphSchemaAction to create documentation nodes. This is used to add the actions to the blueprint palette and context menus.
#Add Added FEdGraphSchemaAction_K2AddDocumentation in EdGraphSchema_K2_Actions.h/cpp to implement the calls in UEdGraphSchema to create documenation nodes from palette and context menus.
#Change Modified FK2ActionMenuBuilder to provide a static call to create a documentation action in the same style as the comment. Additionally added calls to FK2ActionMenuBuilder::GetPaletteActions and FK2ActionMenuBuilder::GetContextAllowedNodeTypes to call this to add entries in the palette and context menus.
#Add Added a new Brush GraphEditor.Documentation_16x, for the context menu icon in SlateEditorStyle.cpp.
#Change Modified GetPaletteItemIcon in SBlueprintPalette.cpp to return the new icon for the DocumentationNode
#Change Modified FKismetCompilerContext::IsNodePure to include the Documentaton node in the drop through ensure test to prevent asserts on compling if a documentation node is present.
#Change Added an entry for Documentation node in FNodeFactory::CreateNodeWidget.
#Change Modified IDocumentationPage interface to provide the ability to provide a TextWrapAt Attribute so this can be set before creating excerpt content if desired.
#Change Modified the UDNParser to control text wrap at values in the created widgets using a float Attribute WrapAt, Added a set call in the DocumentationPage and made the default behaviour mimic the code it replaced.
#Add Added the class UEdGraphNode_Documentation implemented in EdGraphNode_Documentation.h and UEdGraph.cpp, this is the UObject implementation for the documentation nodes.
#Add Added the class SGraphNodeDocumentation as the GraphPanel implementation of the EdGraphNode_Documentation.
#Change Moved the resizable code from SGraphNodeComment into a SGraphNodeResizable and changed SGraphNodeComment and SGraphNodeDocumentation inherit from it to avoid duplicating code.
#Change Added a documentation specific details customisation so the excerpts can be displayed as combo button.
#Change Added FBlueprintDocumentationDetails into BlueprintDetailsCustomization.h/cpp to handle the user interaction with the documentation node in the BP Editor.
ReviewedBy Chris.Wood, Mike.Beach
[CL 2247425 by Ben Cosh in Main branch]
2014-08-07 15:33:55 -04:00
|
|
|
if(FindMouseZone(InMyGeometry.AbsoluteToLocal(InMouseEvent.GetScreenSpacePosition())) == CRWZ_TitleBar && IsEditable.Get())
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
// Request a rename
|
|
|
|
|
RequestRename();
|
|
|
|
|
|
|
|
|
|
// Set the keyboard focus
|
|
|
|
|
if(!HasKeyboardFocus())
|
|
|
|
|
{
|
2014-10-30 12:29:36 -04:00
|
|
|
FSlateApplication::Get().SetKeyboardFocus(SharedThis(this), EFocusCause::SetDirectly);
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return FReply::Handled();
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
2015-05-08 17:44:46 -04:00
|
|
|
// Otherwise let the graph handle it, to allow spline interactions to work when they overlap with a comment node
|
|
|
|
|
return FReply::Unhandled();
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2014-12-05 05:33:22 -05:00
|
|
|
FReply SGraphNodeComment::OnMouseButtonUp( const FGeometry& MyGeometry, const FPointerEvent& MouseEvent )
|
|
|
|
|
{
|
|
|
|
|
if ( (MouseEvent.GetEffectingButton() == EKeys::LeftMouseButton) && bUserIsDragging )
|
|
|
|
|
{
|
|
|
|
|
bUserIsDragging = false;
|
|
|
|
|
|
|
|
|
|
// Resize the node
|
|
|
|
|
UserSize.X = FMath::RoundToFloat(UserSize.X);
|
|
|
|
|
UserSize.Y = FMath::RoundToFloat(UserSize.Y);
|
|
|
|
|
|
|
|
|
|
GetNodeObj()->ResizeNode(UserSize);
|
|
|
|
|
|
|
|
|
|
// End resize transaction
|
|
|
|
|
ResizeTransactionPtr.Reset();
|
|
|
|
|
|
|
|
|
|
// Update contained child Nodes
|
|
|
|
|
HandleSelection( bIsSelected, true );
|
|
|
|
|
|
|
|
|
|
return FReply::Handled().ReleaseMouseCapture();
|
|
|
|
|
}
|
|
|
|
|
return FReply::Unhandled();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
int32 SGraphNodeComment::GetSortDepth() const
|
|
|
|
|
{
|
|
|
|
|
UEdGraphNode_Comment* CommentNode = Cast<UEdGraphNode_Comment>( GraphNode );
|
|
|
|
|
return CommentNode ? CommentNode->CommentDepth : -1;
|
|
|
|
|
}
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
void SGraphNodeComment::HandleSelection(bool bSelected, bool bUpdateNodesUnderComment) const
|
|
|
|
|
{
|
2014-11-06 15:27:28 -05:00
|
|
|
const FVector2D NodeSize = GetDesiredSize();
|
|
|
|
|
// we only want to do this after the comment has a valid desired size
|
|
|
|
|
if( !NodeSize.IsZero() )
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
2014-11-06 15:27:28 -05:00
|
|
|
if ((!this->bIsSelected && bSelected) || bUpdateNodesUnderComment)
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
2014-11-06 15:27:28 -05:00
|
|
|
SGraphNodeComment* Comment = const_cast<SGraphNodeComment*> (this);
|
|
|
|
|
UEdGraphNode_Comment* CommentNode = Cast<UEdGraphNode_Comment>(GraphNode);
|
2014-03-14 14:13:41 -04:00
|
|
|
|
2014-11-06 15:27:28 -05:00
|
|
|
if (CommentNode)
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
2014-11-06 15:27:28 -05:00
|
|
|
// Get our geo
|
|
|
|
|
const FVector2D NodePosition = GetPosition();
|
|
|
|
|
const FSlateRect CommentRect( NodePosition.X, NodePosition.Y, NodePosition.X + NodeSize.X, NodePosition.Y + NodeSize.Y );
|
2014-03-14 14:13:41 -04:00
|
|
|
|
2014-12-05 05:33:22 -05:00
|
|
|
TSharedPtr<SGraphPanel> Panel = Comment->GetOwnerPanel();
|
2014-11-17 14:04:07 -05:00
|
|
|
FChildren* PanelChildren = Panel->GetAllChildren();
|
2014-11-06 15:27:28 -05:00
|
|
|
int32 NumChildren = PanelChildren->Num();
|
|
|
|
|
CommentNode->ClearNodesUnderComment();
|
2014-03-14 14:13:41 -04:00
|
|
|
|
2014-11-06 15:27:28 -05:00
|
|
|
for ( int32 NodeIndex=0; NodeIndex < NumChildren; ++NodeIndex )
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
2014-11-06 15:27:28 -05:00
|
|
|
const TSharedRef<SGraphNode> SomeNodeWidget = StaticCastSharedRef<SGraphNode>(PanelChildren->GetChildAt(NodeIndex));
|
|
|
|
|
|
|
|
|
|
UObject* GraphObject = SomeNodeWidget->GetObjectBeingDisplayed();
|
|
|
|
|
|
2014-12-05 05:33:22 -05:00
|
|
|
if( GraphObject != CommentNode )
|
2014-11-06 15:27:28 -05:00
|
|
|
{
|
2014-12-05 05:33:22 -05:00
|
|
|
const FVector2D SomeNodePosition = SomeNodeWidget->GetPosition();
|
|
|
|
|
const FVector2D SomeNodeSize = SomeNodeWidget->GetDesiredSize();
|
|
|
|
|
|
|
|
|
|
const FSlateRect NodeGeometryGraphSpace( SomeNodePosition.X, SomeNodePosition.Y, SomeNodePosition.X + SomeNodeSize.X, SomeNodePosition.Y + SomeNodeSize.Y );
|
2015-01-05 08:54:17 -05:00
|
|
|
if( FSlateRect::IsRectangleContained( CommentRect, NodeGeometryGraphSpace ) )
|
2014-12-05 05:33:22 -05:00
|
|
|
{
|
2015-01-05 08:54:17 -05:00
|
|
|
CommentNode->AddNodeUnderComment(GraphObject);
|
2014-12-05 05:33:22 -05:00
|
|
|
}
|
2014-11-06 15:27:28 -05:00
|
|
|
}
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2014-11-06 15:27:28 -05:00
|
|
|
bIsSelected = bSelected;
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const FSlateBrush* SGraphNodeComment::GetShadowBrush(bool bSelected) const
|
|
|
|
|
{
|
|
|
|
|
HandleSelection(bSelected);
|
|
|
|
|
return SGraphNode::GetShadowBrush(bSelected);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void SGraphNodeComment::GetOverlayBrushes(bool bSelected, const FVector2D WidgetSize, TArray<FOverlayBrushInfo>& Brushes) const
|
|
|
|
|
{
|
|
|
|
|
const float Fudge = 3.0f;
|
|
|
|
|
|
|
|
|
|
HandleSelection(bSelected);
|
|
|
|
|
|
|
|
|
|
FOverlayBrushInfo HandleBrush = FEditorStyle::GetBrush( TEXT("Kismet.Comment.Handle") );
|
|
|
|
|
|
|
|
|
|
HandleBrush.OverlayOffset.X = WidgetSize.X - HandleBrush.Brush->ImageSize.X - Fudge;
|
|
|
|
|
HandleBrush.OverlayOffset.Y = WidgetSize.Y - HandleBrush.Brush->ImageSize.Y - Fudge;
|
|
|
|
|
|
|
|
|
|
Brushes.Add(HandleBrush);
|
|
|
|
|
return SGraphNode::GetOverlayBrushes(bSelected, WidgetSize, Brushes);
|
|
|
|
|
}
|
|
|
|
|
|
2014-05-06 04:45:44 -04:00
|
|
|
void SGraphNodeComment::MoveTo( const FVector2D& NewPosition, FNodeSet& NodeFilter )
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
FVector2D PositionDelta = NewPosition - GetPosition();
|
2014-05-06 04:45:44 -04:00
|
|
|
SGraphNode::MoveTo(NewPosition, NodeFilter);
|
2014-03-14 14:13:41 -04:00
|
|
|
// Don't drag note content if either of the shift keys are down.
|
|
|
|
|
FModifierKeysState KeysState = FSlateApplication::Get().GetModifierKeys();
|
|
|
|
|
if(!KeysState.IsShiftDown())
|
|
|
|
|
{
|
|
|
|
|
UEdGraphNode_Comment* CommentNode = Cast<UEdGraphNode_Comment>(GraphNode);
|
|
|
|
|
if (CommentNode && CommentNode->MoveMode == ECommentBoxMode::GroupMovement)
|
|
|
|
|
{
|
|
|
|
|
// Now update any nodes which are touching the comment but *not* selected
|
|
|
|
|
// Selected nodes will be moved as part of the normal selection code
|
|
|
|
|
TSharedPtr< SGraphPanel > Panel = GetOwnerPanel();
|
|
|
|
|
|
|
|
|
|
for (FCommentNodeSet::TConstIterator NodeIt( CommentNode->GetNodesUnderComment() ); NodeIt; ++NodeIt)
|
|
|
|
|
{
|
|
|
|
|
if (UEdGraphNode* Node = Cast<UEdGraphNode>(*NodeIt))
|
|
|
|
|
{
|
2015-06-30 22:14:13 -04:00
|
|
|
if (!Panel->SelectionManager.IsNodeSelected(Node) && !NodeFilter.Find(Node->DEPRECATED_NodeWidget.Pin()))
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
2015-06-30 22:14:13 -04:00
|
|
|
NodeFilter.Add(Node->DEPRECATED_NodeWidget.Pin());
|
2014-05-29 17:14:05 -04:00
|
|
|
Node->Modify();
|
2014-03-14 14:13:41 -04:00
|
|
|
Node->NodePosX += PositionDelta.X;
|
|
|
|
|
Node->NodePosY += PositionDelta.Y;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2015-01-05 08:54:17 -05:00
|
|
|
void SGraphNodeComment::EndUserInteraction() const
|
|
|
|
|
{
|
|
|
|
|
// Find any parent comments and their list of child nodes
|
|
|
|
|
const FVector2D NodeSize = GetDesiredSize();
|
|
|
|
|
if( !NodeSize.IsZero() )
|
|
|
|
|
{
|
|
|
|
|
const FVector2D NodePosition = GetPosition();
|
|
|
|
|
const FSlateRect CommentRect( NodePosition.X, NodePosition.Y, NodePosition.X + NodeSize.X, NodePosition.Y + NodeSize.Y );
|
|
|
|
|
|
|
|
|
|
TSharedPtr<SGraphPanel> Panel = GetOwnerPanel();
|
|
|
|
|
FChildren* PanelChildren = Panel->GetAllChildren();
|
|
|
|
|
int32 NumChildren = PanelChildren->Num();
|
|
|
|
|
|
|
|
|
|
for ( int32 NodeIndex=0; NodeIndex < NumChildren; ++NodeIndex )
|
|
|
|
|
{
|
|
|
|
|
TSharedPtr<SGraphNodeComment> CommentWidget = StaticCastSharedRef<SGraphNodeComment>(PanelChildren->GetChildAt(NodeIndex));
|
|
|
|
|
|
|
|
|
|
if( CommentWidget.IsValid() )
|
|
|
|
|
{
|
|
|
|
|
const FVector2D SomeNodePosition = CommentWidget->GetPosition();
|
|
|
|
|
const FVector2D SomeNodeSize = CommentWidget->GetDesiredSize();
|
|
|
|
|
|
|
|
|
|
const FSlateRect NodeGeometryGraphSpace( SomeNodePosition.X, SomeNodePosition.Y, SomeNodePosition.X + SomeNodeSize.X, SomeNodePosition.Y + SomeNodeSize.Y );
|
|
|
|
|
if( FSlateRect::DoRectanglesIntersect( CommentRect, NodeGeometryGraphSpace ) )
|
|
|
|
|
{
|
|
|
|
|
CommentWidget->HandleSelection( CommentWidget->bIsSelected, true );
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
Added a new documentation node to the blueprints to display udn documentation excerpts in the grapheditor.
#TTP 312311 - ROCKET: TASK: Add a "Documentation Node"
#Branch UE4
#Proj BlueprintGraph, EdGraph, Kismet, KismetCompiler, GraphEditor, Documentation, EditorStyle
#Change Updated UEdGraphSchema to include an interface call to retrieve an FEdGraphSchemaAction to create documentation nodes. At this point only the K2 interfaces implement this.
#Change Updated UEdGraphSchema_K2 to include a call to retrieve an FEdGraphSchemaAction to create documentation nodes. This is used to add the actions to the blueprint palette and context menus.
#Add Added FEdGraphSchemaAction_K2AddDocumentation in EdGraphSchema_K2_Actions.h/cpp to implement the calls in UEdGraphSchema to create documenation nodes from palette and context menus.
#Change Modified FK2ActionMenuBuilder to provide a static call to create a documentation action in the same style as the comment. Additionally added calls to FK2ActionMenuBuilder::GetPaletteActions and FK2ActionMenuBuilder::GetContextAllowedNodeTypes to call this to add entries in the palette and context menus.
#Add Added a new Brush GraphEditor.Documentation_16x, for the context menu icon in SlateEditorStyle.cpp.
#Change Modified GetPaletteItemIcon in SBlueprintPalette.cpp to return the new icon for the DocumentationNode
#Change Modified FKismetCompilerContext::IsNodePure to include the Documentaton node in the drop through ensure test to prevent asserts on compling if a documentation node is present.
#Change Added an entry for Documentation node in FNodeFactory::CreateNodeWidget.
#Change Modified IDocumentationPage interface to provide the ability to provide a TextWrapAt Attribute so this can be set before creating excerpt content if desired.
#Change Modified the UDNParser to control text wrap at values in the created widgets using a float Attribute WrapAt, Added a set call in the DocumentationPage and made the default behaviour mimic the code it replaced.
#Add Added the class UEdGraphNode_Documentation implemented in EdGraphNode_Documentation.h and UEdGraph.cpp, this is the UObject implementation for the documentation nodes.
#Add Added the class SGraphNodeDocumentation as the GraphPanel implementation of the EdGraphNode_Documentation.
#Change Moved the resizable code from SGraphNodeComment into a SGraphNodeResizable and changed SGraphNodeComment and SGraphNodeDocumentation inherit from it to avoid duplicating code.
#Change Added a documentation specific details customisation so the excerpts can be displayed as combo button.
#Change Added FBlueprintDocumentationDetails into BlueprintDetailsCustomization.h/cpp to handle the user interaction with the documentation node in the BP Editor.
ReviewedBy Chris.Wood, Mike.Beach
[CL 2247425 by Ben Cosh in Main branch]
2014-08-07 15:33:55 -04:00
|
|
|
float SGraphNodeComment::GetTitleBarHeight() const
|
|
|
|
|
{
|
|
|
|
|
return TitleBar.IsValid() ? TitleBar->GetDesiredSize().Y : 0.0f;
|
|
|
|
|
}
|
|
|
|
|
|
2015-05-12 06:09:01 -04:00
|
|
|
FSlateRect SGraphNodeComment::GetHitTestingBorder() const
|
Added a new documentation node to the blueprints to display udn documentation excerpts in the grapheditor.
#TTP 312311 - ROCKET: TASK: Add a "Documentation Node"
#Branch UE4
#Proj BlueprintGraph, EdGraph, Kismet, KismetCompiler, GraphEditor, Documentation, EditorStyle
#Change Updated UEdGraphSchema to include an interface call to retrieve an FEdGraphSchemaAction to create documentation nodes. At this point only the K2 interfaces implement this.
#Change Updated UEdGraphSchema_K2 to include a call to retrieve an FEdGraphSchemaAction to create documentation nodes. This is used to add the actions to the blueprint palette and context menus.
#Add Added FEdGraphSchemaAction_K2AddDocumentation in EdGraphSchema_K2_Actions.h/cpp to implement the calls in UEdGraphSchema to create documenation nodes from palette and context menus.
#Change Modified FK2ActionMenuBuilder to provide a static call to create a documentation action in the same style as the comment. Additionally added calls to FK2ActionMenuBuilder::GetPaletteActions and FK2ActionMenuBuilder::GetContextAllowedNodeTypes to call this to add entries in the palette and context menus.
#Add Added a new Brush GraphEditor.Documentation_16x, for the context menu icon in SlateEditorStyle.cpp.
#Change Modified GetPaletteItemIcon in SBlueprintPalette.cpp to return the new icon for the DocumentationNode
#Change Modified FKismetCompilerContext::IsNodePure to include the Documentaton node in the drop through ensure test to prevent asserts on compling if a documentation node is present.
#Change Added an entry for Documentation node in FNodeFactory::CreateNodeWidget.
#Change Modified IDocumentationPage interface to provide the ability to provide a TextWrapAt Attribute so this can be set before creating excerpt content if desired.
#Change Modified the UDNParser to control text wrap at values in the created widgets using a float Attribute WrapAt, Added a set call in the DocumentationPage and made the default behaviour mimic the code it replaced.
#Add Added the class UEdGraphNode_Documentation implemented in EdGraphNode_Documentation.h and UEdGraph.cpp, this is the UObject implementation for the documentation nodes.
#Add Added the class SGraphNodeDocumentation as the GraphPanel implementation of the EdGraphNode_Documentation.
#Change Moved the resizable code from SGraphNodeComment into a SGraphNodeResizable and changed SGraphNodeComment and SGraphNodeDocumentation inherit from it to avoid duplicating code.
#Change Added a documentation specific details customisation so the excerpts can be displayed as combo button.
#Change Added FBlueprintDocumentationDetails into BlueprintDetailsCustomization.h/cpp to handle the user interaction with the documentation node in the BP Editor.
ReviewedBy Chris.Wood, Mike.Beach
[CL 2247425 by Ben Cosh in Main branch]
2014-08-07 15:33:55 -04:00
|
|
|
{
|
2015-05-12 06:09:01 -04:00
|
|
|
return SCommentNodeDefs::HitResultBorderSize;
|
Added a new documentation node to the blueprints to display udn documentation excerpts in the grapheditor.
#TTP 312311 - ROCKET: TASK: Add a "Documentation Node"
#Branch UE4
#Proj BlueprintGraph, EdGraph, Kismet, KismetCompiler, GraphEditor, Documentation, EditorStyle
#Change Updated UEdGraphSchema to include an interface call to retrieve an FEdGraphSchemaAction to create documentation nodes. At this point only the K2 interfaces implement this.
#Change Updated UEdGraphSchema_K2 to include a call to retrieve an FEdGraphSchemaAction to create documentation nodes. This is used to add the actions to the blueprint palette and context menus.
#Add Added FEdGraphSchemaAction_K2AddDocumentation in EdGraphSchema_K2_Actions.h/cpp to implement the calls in UEdGraphSchema to create documenation nodes from palette and context menus.
#Change Modified FK2ActionMenuBuilder to provide a static call to create a documentation action in the same style as the comment. Additionally added calls to FK2ActionMenuBuilder::GetPaletteActions and FK2ActionMenuBuilder::GetContextAllowedNodeTypes to call this to add entries in the palette and context menus.
#Add Added a new Brush GraphEditor.Documentation_16x, for the context menu icon in SlateEditorStyle.cpp.
#Change Modified GetPaletteItemIcon in SBlueprintPalette.cpp to return the new icon for the DocumentationNode
#Change Modified FKismetCompilerContext::IsNodePure to include the Documentaton node in the drop through ensure test to prevent asserts on compling if a documentation node is present.
#Change Added an entry for Documentation node in FNodeFactory::CreateNodeWidget.
#Change Modified IDocumentationPage interface to provide the ability to provide a TextWrapAt Attribute so this can be set before creating excerpt content if desired.
#Change Modified the UDNParser to control text wrap at values in the created widgets using a float Attribute WrapAt, Added a set call in the DocumentationPage and made the default behaviour mimic the code it replaced.
#Add Added the class UEdGraphNode_Documentation implemented in EdGraphNode_Documentation.h and UEdGraph.cpp, this is the UObject implementation for the documentation nodes.
#Add Added the class SGraphNodeDocumentation as the GraphPanel implementation of the EdGraphNode_Documentation.
#Change Moved the resizable code from SGraphNodeComment into a SGraphNodeResizable and changed SGraphNodeComment and SGraphNodeDocumentation inherit from it to avoid duplicating code.
#Change Added a documentation specific details customisation so the excerpts can be displayed as combo button.
#Change Added FBlueprintDocumentationDetails into BlueprintDetailsCustomization.h/cpp to handle the user interaction with the documentation node in the BP Editor.
ReviewedBy Chris.Wood, Mike.Beach
[CL 2247425 by Ben Cosh in Main branch]
2014-08-07 15:33:55 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FVector2D SGraphNodeComment::GetNodeMaximumSize() const
|
|
|
|
|
{
|
|
|
|
|
return FVector2D( UserSize.X + 100, UserSize.Y + 100 );
|
|
|
|
|
}
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
FSlateColor SGraphNodeComment::GetCommentBodyColor() const
|
|
|
|
|
{
|
|
|
|
|
UEdGraphNode_Comment* CommentNode = Cast<UEdGraphNode_Comment>(GraphNode);
|
|
|
|
|
|
2015-04-27 06:45:26 -04:00
|
|
|
if (CommentNode)
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
return CommentNode->CommentColor;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
return FLinearColor::White;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FSlateColor SGraphNodeComment::GetCommentTitleBarColor() const
|
2015-04-27 06:45:26 -04:00
|
|
|
{
|
|
|
|
|
UEdGraphNode_Comment* CommentNode = Cast<UEdGraphNode_Comment>(GraphNode);
|
|
|
|
|
if (CommentNode)
|
|
|
|
|
{
|
|
|
|
|
const FLinearColor Color = CommentNode->CommentColor * SCommentNodeDefs::TitleBarColorMultiplier;
|
|
|
|
|
return FLinearColor(Color.R, Color.G, Color.B);
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
const FLinearColor Color = FLinearColor::White * SCommentNodeDefs::TitleBarColorMultiplier;
|
|
|
|
|
return FLinearColor(Color.R, Color.G, Color.B);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FSlateColor SGraphNodeComment::GetCommentBubbleColor() const
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
UEdGraphNode_Comment* CommentNode = Cast<UEdGraphNode_Comment>(GraphNode);
|
2015-04-28 04:58:34 -04:00
|
|
|
if (CommentNode)
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
2015-04-28 04:58:34 -04:00
|
|
|
const FLinearColor Color = CommentNode->bColorCommentBubble ? (CommentNode->CommentColor * SCommentNodeDefs::TitleBarColorMultiplier) :
|
|
|
|
|
GetDefault<UGraphEditorSettings>()->DefaultCommentNodeTitleColor;
|
2014-03-14 14:13:41 -04:00
|
|
|
return FLinearColor(Color.R, Color.G, Color.B);
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
const FLinearColor Color = FLinearColor::White * SCommentNodeDefs::TitleBarColorMultiplier;
|
|
|
|
|
return FLinearColor(Color.R, Color.G, Color.B);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool SGraphNodeComment::CanBeSelected(const FVector2D& MousePositionInNode) const
|
|
|
|
|
{
|
Added a new documentation node to the blueprints to display udn documentation excerpts in the grapheditor.
#TTP 312311 - ROCKET: TASK: Add a "Documentation Node"
#Branch UE4
#Proj BlueprintGraph, EdGraph, Kismet, KismetCompiler, GraphEditor, Documentation, EditorStyle
#Change Updated UEdGraphSchema to include an interface call to retrieve an FEdGraphSchemaAction to create documentation nodes. At this point only the K2 interfaces implement this.
#Change Updated UEdGraphSchema_K2 to include a call to retrieve an FEdGraphSchemaAction to create documentation nodes. This is used to add the actions to the blueprint palette and context menus.
#Add Added FEdGraphSchemaAction_K2AddDocumentation in EdGraphSchema_K2_Actions.h/cpp to implement the calls in UEdGraphSchema to create documenation nodes from palette and context menus.
#Change Modified FK2ActionMenuBuilder to provide a static call to create a documentation action in the same style as the comment. Additionally added calls to FK2ActionMenuBuilder::GetPaletteActions and FK2ActionMenuBuilder::GetContextAllowedNodeTypes to call this to add entries in the palette and context menus.
#Add Added a new Brush GraphEditor.Documentation_16x, for the context menu icon in SlateEditorStyle.cpp.
#Change Modified GetPaletteItemIcon in SBlueprintPalette.cpp to return the new icon for the DocumentationNode
#Change Modified FKismetCompilerContext::IsNodePure to include the Documentaton node in the drop through ensure test to prevent asserts on compling if a documentation node is present.
#Change Added an entry for Documentation node in FNodeFactory::CreateNodeWidget.
#Change Modified IDocumentationPage interface to provide the ability to provide a TextWrapAt Attribute so this can be set before creating excerpt content if desired.
#Change Modified the UDNParser to control text wrap at values in the created widgets using a float Attribute WrapAt, Added a set call in the DocumentationPage and made the default behaviour mimic the code it replaced.
#Add Added the class UEdGraphNode_Documentation implemented in EdGraphNode_Documentation.h and UEdGraph.cpp, this is the UObject implementation for the documentation nodes.
#Add Added the class SGraphNodeDocumentation as the GraphPanel implementation of the EdGraphNode_Documentation.
#Change Moved the resizable code from SGraphNodeComment into a SGraphNodeResizable and changed SGraphNodeComment and SGraphNodeDocumentation inherit from it to avoid duplicating code.
#Change Added a documentation specific details customisation so the excerpts can be displayed as combo button.
#Change Added FBlueprintDocumentationDetails into BlueprintDetailsCustomization.h/cpp to handle the user interaction with the documentation node in the BP Editor.
ReviewedBy Chris.Wood, Mike.Beach
[CL 2247425 by Ben Cosh in Main branch]
2014-08-07 15:33:55 -04:00
|
|
|
const EResizableWindowZone InMouseZone = FindMouseZone(MousePositionInNode);
|
2014-12-05 05:33:22 -05:00
|
|
|
return CRWZ_TitleBar == InMouseZone;
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FVector2D SGraphNodeComment::GetDesiredSizeForMarquee() const
|
|
|
|
|
{
|
|
|
|
|
const float TitleBarHeight = TitleBar.IsValid() ? TitleBar->GetDesiredSize().Y : 0.0f;
|
|
|
|
|
return FVector2D(UserSize.X, TitleBarHeight);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FSlateRect SGraphNodeComment::GetTitleRect() const
|
|
|
|
|
{
|
|
|
|
|
const FVector2D NodePosition = GetPosition();
|
|
|
|
|
FVector2D NodeSize = TitleBar.IsValid() ? TitleBar->GetDesiredSize() : GetDesiredSize();
|
|
|
|
|
return FSlateRect( NodePosition.X, NodePosition.Y, NodePosition.X + NodeSize.X, NodePosition.Y + NodeSize.Y ) + SCommentNodeDefs::TitleBarOffset;
|
|
|
|
|
}
|
2014-09-05 07:39:52 -04:00
|
|
|
|
|
|
|
|
void SGraphNodeComment::PopulateMetaTag(FGraphNodeMetaData* TagMeta) const
|
|
|
|
|
{
|
|
|
|
|
if (GraphNode != nullptr)
|
|
|
|
|
{
|
|
|
|
|
// We want the name of the blueprint as our name - we can find the node from the GUID
|
|
|
|
|
UObject* Package = GraphNode->GetOutermost();
|
|
|
|
|
UObject* LastOuter = GraphNode->GetOuter();
|
|
|
|
|
while (LastOuter->GetOuter() != Package)
|
|
|
|
|
{
|
|
|
|
|
LastOuter = LastOuter->GetOuter();
|
|
|
|
|
}
|
|
|
|
|
TagMeta->Tag = FName(*FString::Printf(TEXT("GraphNode_%s_%s"), *LastOuter->GetFullName(), *GraphNode->NodeGuid.ToString()));
|
|
|
|
|
TagMeta->OuterName = LastOuter->GetFullName();
|
|
|
|
|
TagMeta->GUID = GraphNode->NodeGuid;
|
|
|
|
|
TagMeta->FriendlyName = FString::Printf(TEXT("%s in %s"), *GraphNode->GetNodeTitle(ENodeTitleType::FullTitle).ToString(), *TagMeta->OuterName);
|
|
|
|
|
}
|
|
|
|
|
}
|