2016-12-08 08:52:44 -05:00
|
|
|
// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
|
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3209340 on 2016/11/23 by Ben.Marsh
Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.
Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.
* Every header now includes everything it needs to compile.
* There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
* There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
* Every .cpp file includes its matching .h file first.
* This helps validate that each header is including everything it needs to compile.
* No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
* You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
* There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
* No engine code explicitly includes a precompiled header any more.
* We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
* PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.
Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.
[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
|
|
|
#include "K2Node_MakeArray.h"
|
|
|
|
|
#include "EdGraph/EdGraphPin.h"
|
|
|
|
|
#include "Engine/Blueprint.h"
|
|
|
|
|
#include "Framework/Commands/UIAction.h"
|
|
|
|
|
#include "Framework/MultiBox/MultiBoxBuilder.h"
|
|
|
|
|
#include "EdGraphSchema_K2.h"
|
|
|
|
|
#include "EdGraph/EdGraphNodeUtils.h"
|
|
|
|
|
#include "Kismet2/BlueprintEditorUtils.h"
|
2014-03-14 14:13:41 -04:00
|
|
|
|
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 "Kismet/KismetArrayLibrary.h"
|
2014-03-14 14:13:41 -04:00
|
|
|
#include "ScopedTransaction.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 "EdGraphUtilities.h"
|
|
|
|
|
#include "KismetCompiledFunctionContext.h"
|
|
|
|
|
#include "KismetCompilerMisc.h"
|
2014-07-14 16:05:25 -04:00
|
|
|
#include "BlueprintNodeSpawner.h"
|
|
|
|
|
#include "EditorCategoryUtils.h"
|
2014-08-23 20:16:29 -04:00
|
|
|
#include "BlueprintActionDatabaseRegistrar.h"
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
static const FString OutputPinName = FString(TEXT("Array"));
|
|
|
|
|
|
|
|
|
|
#define LOCTEXT_NAMESPACE "MakeArrayNode"
|
|
|
|
|
|
|
|
|
|
/////////////////////////////////////////////////////
|
|
|
|
|
// FKCHandler_MakeArray
|
|
|
|
|
class FKCHandler_MakeArray : public FNodeHandlingFunctor
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
FKCHandler_MakeArray(FKismetCompilerContext& InCompilerContext)
|
|
|
|
|
: FNodeHandlingFunctor(InCompilerContext)
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
2014-06-13 06:14:46 -04:00
|
|
|
virtual void RegisterNets(FKismetFunctionContext& Context, UEdGraphNode* Node) override
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
UK2Node_MakeArray* ArrayNode = CastChecked<UK2Node_MakeArray>(Node);
|
|
|
|
|
UEdGraphPin* OutputPin = ArrayNode->GetOutputPin();
|
|
|
|
|
|
|
|
|
|
FNodeHandlingFunctor::RegisterNets(Context, Node);
|
|
|
|
|
|
|
|
|
|
// Create a local term to drop the array into
|
2014-09-26 11:32:41 -04:00
|
|
|
FBPTerminal* Term = Context.CreateLocalTerminalFromPinAutoChooseScope(OutputPin, Context.NetNameMap->MakeValidName(OutputPin));
|
2014-03-14 14:13:41 -04:00
|
|
|
Term->bPassedByReference = false;
|
|
|
|
|
Term->Source = Node;
|
|
|
|
|
Context.NetMap.Add(OutputPin, Term);
|
|
|
|
|
}
|
|
|
|
|
|
2014-06-13 06:14:46 -04:00
|
|
|
virtual void Compile(FKismetFunctionContext& Context, UEdGraphNode* Node) override
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
UK2Node_MakeArray* ArrayNode = CastChecked<UK2Node_MakeArray>(Node);
|
|
|
|
|
UEdGraphPin* OutputPin = ArrayNode->GetOutputPin();
|
|
|
|
|
|
|
|
|
|
FBPTerminal** ArrayTerm = Context.NetMap.Find(OutputPin);
|
|
|
|
|
check(ArrayTerm);
|
|
|
|
|
|
|
|
|
|
FBlueprintCompiledStatement& CreateArrayStatement = Context.AppendStatementForNode(Node);
|
|
|
|
|
CreateArrayStatement.Type = KCST_CreateArray;
|
|
|
|
|
CreateArrayStatement.LHS = *ArrayTerm;
|
|
|
|
|
|
|
|
|
|
for(auto PinIt = Node->Pins.CreateIterator(); PinIt; ++PinIt)
|
|
|
|
|
{
|
|
|
|
|
UEdGraphPin* Pin = *PinIt;
|
|
|
|
|
if(Pin && Pin->Direction == EGPD_Input)
|
|
|
|
|
{
|
|
|
|
|
FBPTerminal** InputTerm = Context.NetMap.Find(FEdGraphUtilities::GetNetFromPin(Pin));
|
|
|
|
|
if( InputTerm )
|
|
|
|
|
{
|
|
|
|
|
CreateArrayStatement.RHS.Add(*InputTerm);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/////////////////////////////////////////////////////
|
|
|
|
|
// UK2Node_MakeArray
|
|
|
|
|
|
2014-10-14 10:29:11 -04:00
|
|
|
UK2Node_MakeArray::UK2Node_MakeArray(const FObjectInitializer& ObjectInitializer)
|
|
|
|
|
: Super(ObjectInitializer)
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
|
|
|
|
|
NumInputs = 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FNodeHandlingFunctor* UK2Node_MakeArray::CreateNodeHandler(FKismetCompilerContext& CompilerContext) const
|
|
|
|
|
{
|
|
|
|
|
return new FKCHandler_MakeArray(CompilerContext);
|
|
|
|
|
}
|
|
|
|
|
|
2014-04-23 18:30:37 -04:00
|
|
|
FText UK2Node_MakeArray::GetNodeTitle(ENodeTitleType::Type TitleType) const
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
2014-04-23 18:30:37 -04:00
|
|
|
return LOCTEXT("NodeTitle", "Make Array");
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
UEdGraphPin* UK2Node_MakeArray::GetOutputPin() const
|
|
|
|
|
{
|
|
|
|
|
return FindPin(OutputPinName);
|
|
|
|
|
}
|
|
|
|
|
|
2016-05-20 16:22:44 -04:00
|
|
|
void UK2Node_MakeArray::ReallocatePinsDuringReconstruction(TArray<UEdGraphPin*>& OldPins)
|
|
|
|
|
{
|
|
|
|
|
Super::ReallocatePinsDuringReconstruction(OldPins);
|
|
|
|
|
|
|
|
|
|
// This is necessary to retain type information after pasting or loading from disc
|
|
|
|
|
UEdGraphPin* OutputPin = GetOutputPin();
|
|
|
|
|
if (OutputPin)
|
|
|
|
|
{
|
|
|
|
|
// Only update the output pin if it is currently a wildcard
|
|
|
|
|
if (OutputPin->PinType.PinCategory == UEdGraphSchema_K2::PC_Wildcard)
|
|
|
|
|
{
|
|
|
|
|
// Find the matching Old Pin if it exists
|
|
|
|
|
for (UEdGraphPin* OldPin : OldPins)
|
|
|
|
|
{
|
|
|
|
|
if (OldPin->Direction == EGPD_Output)
|
|
|
|
|
{
|
|
|
|
|
// Update our output pin with the old type information and then propagate it to our input pins
|
|
|
|
|
OutputPin->PinType = OldPin->PinType;
|
|
|
|
|
PropagatePinType();
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
void UK2Node_MakeArray::AllocateDefaultPins()
|
|
|
|
|
{
|
|
|
|
|
// Create the output pin
|
2014-11-17 09:46:35 -05:00
|
|
|
CreatePin(EGPD_Output, UEdGraphSchema_K2::PC_Wildcard, TEXT(""), NULL, true, false, *OutputPinName);
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
// Create the input pins to create the arrays from
|
|
|
|
|
for (int32 i = 0; i < NumInputs; ++i)
|
|
|
|
|
{
|
2014-11-17 09:46:35 -05:00
|
|
|
CreatePin(EGPD_Input, UEdGraphSchema_K2::PC_Wildcard, TEXT(""), NULL, false, false, *FString::Printf(TEXT("[%d]"), i));
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2014-11-17 09:46:35 -05:00
|
|
|
bool UK2Node_MakeArray::CanResetToWildcard() const
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
bool bClearPinsToWildcard = true;
|
|
|
|
|
|
|
|
|
|
// Check to see if we want to clear the wildcards.
|
2014-11-17 09:46:35 -05:00
|
|
|
for (const UEdGraphPin* Pin : Pins)
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
2014-11-17 09:46:35 -05:00
|
|
|
if( Pin->LinkedTo.Num() > 0 )
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
// One of the pins is still linked, we will not be clearing the types.
|
|
|
|
|
bClearPinsToWildcard = false;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2014-11-17 09:46:35 -05:00
|
|
|
return bClearPinsToWildcard;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void UK2Node_MakeArray::ClearPinTypeToWildcard()
|
|
|
|
|
{
|
|
|
|
|
if( CanResetToWildcard() )
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
UEdGraphPin* OutputPin = GetOutputPin();
|
2014-11-17 09:46:35 -05:00
|
|
|
OutputPin->PinType.PinCategory = UEdGraphSchema_K2::PC_Wildcard;
|
2014-03-14 14:13:41 -04:00
|
|
|
OutputPin->PinType.PinSubCategory = TEXT("");
|
|
|
|
|
OutputPin->PinType.PinSubCategoryObject = NULL;
|
|
|
|
|
|
|
|
|
|
PropagatePinType();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void UK2Node_MakeArray::NotifyPinConnectionListChanged(UEdGraphPin* Pin)
|
|
|
|
|
{
|
|
|
|
|
Super::NotifyPinConnectionListChanged(Pin);
|
|
|
|
|
|
|
|
|
|
// Was this the first or last connection?
|
|
|
|
|
int32 NumPinsWithLinks = 0;
|
|
|
|
|
// Array to cache the input pins we might want to find these if we are removing the last link
|
|
|
|
|
TArray< UEdGraphPin* > InputPins;
|
|
|
|
|
for (int32 PinIndex = 0; PinIndex < Pins.Num(); ++PinIndex)
|
|
|
|
|
{
|
|
|
|
|
NumPinsWithLinks += (Pins[PinIndex]->LinkedTo.Num() > 0) ? 1 : 0;
|
|
|
|
|
if( Pins[PinIndex]->Direction == EGPD_Input )
|
|
|
|
|
{
|
|
|
|
|
InputPins.Add(Pins[PinIndex]);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
UEdGraphPin* OutputPin = GetOutputPin();
|
|
|
|
|
|
|
|
|
|
if (Pin->LinkedTo.Num() > 0)
|
|
|
|
|
{
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2927746 on 2016/03/30 by Michael.Schoell
Local variables in function graphs will now store a hard reference to their UObject value.
Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint.
#jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native
Change 2927751 on 2016/03/30 by Michael.Schoell
Back out changelist 2927746
Change 2986483 on 2016/05/23 by Maciej.Mroz
#jira UE-30976 Editable enum values set on an instance are lost during nativization
Added overriden names of Enum keys.
Change 2986712 on 2016/05/23 by Phillip.Kavan
[UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class.
change summary:
- modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root.
Change 2987406 on 2016/05/23 by Ryan.Rauschkolb
Fixed Functions filter in Find-In-Blueprints will show components from the SCS
#jira UE-30140
Change 2988925 on 2016/05/24 by Ryan.Rauschkolb
Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph.
#jira UE-20232
Change 2989001 on 2016/05/24 by Dan.Oconnor
PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner)
#jira UE-31142
Change 2989447 on 2016/05/25 by Phillip.Kavan
[UE-30807] Propagate edit condition property value changes to instances of template objects.
change summary:
- modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO)
Change 2989804 on 2016/05/25 by Phillip.Kavan
[UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class.
change summary:
- modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component
Change 2990234 on 2016/05/25 by Ryan.Rauschkolb
Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph
#jira UE-4426
Change 2990566 on 2016/05/25 by Mike.Beach
Better warn logging to help locate variable nodes that emit a "variable not found" message.
Change 2991083 on 2016/05/26 by Maciej.Mroz
Blueprint nativization: converted classes have "config" specified.
Change 2991363 on 2016/05/26 by Phillip.Kavan
[UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components.
change summary:
- modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text
- modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed)
- modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass
- modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects
Change 2992990 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node
#jira UE-21973
Change 2992995 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked.
#jira UE-30990
Change 2993449 on 2016/05/27 by Phillip.Kavan
[UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing.
change summary:
- modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type.
Change 2993531 on 2016/05/27 by Mike.Beach
PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell)
Change 2993969 on 2016/05/30 by Maciej.Mroz
UE-30729 Crash in Native Orion when selecting Sword or Tomahawk
Clear AsyncLoading in subobjects.
Change 2993990 on 2016/05/30 by Phillip.Kavan
[UE-30984] Exclude reroute nodes from Blueprint profiler node mapping.
change summary:
- modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links.
- modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links.
- modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points.
- modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points.
Change 2994591 on 2016/05/31 by Ryan.Rauschkolb
Fixed issue where inherited Blueprint variable would not show parent's replications settings
#jira UE-18912
Change 2994613 on 2016/05/31 by Ben.Cosh
Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal.
#Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher
#Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy
#Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler
#Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab
#Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status
#Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented
#Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out
#Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean"
#Jira UE-31377 - BP Profiler - Default tree view filtering to off
#Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP
#Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)"
Notes:-
- Sequence node inclusive time fixed
- Trace History tidy up
- Compile Icon and status messages for instrumentation
- Message in the profiler tab for instrumentation
- Profiler view tidy up and heat thresholds controls added
- fixed the summed execution branch stats
- fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396
- added hottest path and hottest endpoint wire heatmaps
- switched off the graph filter by default
- added total time for the heatmaps
- fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code
Change 2995058 on 2016/05/31 by Phillip.Kavan
[UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running.
change summary:
- modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class.
- modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context.
Change 2995218 on 2016/05/31 by Phillip.Kavan
[UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size.
change summary:
- modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout.
Change 2996417 on 2016/06/01 by Phillip.Kavan
[UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor.
change summary:
- modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object.
Change 2997001 on 2016/06/01 by Ryan.Rauschkolb
Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component
#jira UE-30143
Change 2997521 on 2016/06/02 by Maciej.Mroz
[Blueprint Nativization]
- Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h
- Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated.
Change 2997522 on 2016/06/02 by Maciej.Mroz
Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization)
Change 2997638 on 2016/06/02 by Maciej.Mroz
Improvements for Blueprint Nativization:
- Overridden names in nativized code have proper escape characters (in generated code).
- OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared
- Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>)
- warning C4883 is disabled in .generated.cpp files for nativized module
Change 2997639 on 2016/06/02 by Maciej.Mroz
Minor improvements in Ocean gameplay code. Required for Blueprint Nativization.
#jira UE-28945 Failure packaging Nativized Ocean
Change 2997656 on 2016/06/02 by Maciej.Mroz
Various improvements in BlueprintCompilerCppBackend:
- Fixed interface cast
- Fixed TSwitchValue issue (when used with literals)
- Fixed improper name for NativeBlueprintEvent (when calling parent's implementation)
- Fixed bitfield getter code.
- Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums)
- operator == is generated for nativized structs
- Fixed AssedId (AssetPtr) constructor in nativized code.
- Fixed arrays of noexport struct
- Fixed missing headers for native single cast delegate signature.
- Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata.
Change 2997691 on 2016/06/02 by Maciej.Mroz
operator == in FText. It is required for some functions in TArray<FText>
Change 2997793 on 2016/06/02 by Ben.Cosh
Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter
#Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh
#Proj BlueprintProfiler, Kismet
Change 2997901 on 2016/06/02 by Maciej.Mroz
Back out changelist 2997691
Change 2998038 on 2016/06/02 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 2998052 on 2016/06/02 by Ryan.Rauschkolb
Fixed Comment bubbles not remembering changes after losing focus
#jira UE-20012
Change 2998450 on 2016/06/02 by Phillip.Kavan
[UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata.
change summary:
- modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it.
Change 2999763 on 2016/06/03 by Mike.Beach
Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes.
#jira UE-26761
Change 2999768 on 2016/06/03 by Maciej.Mroz
#jira UE-31592, UE-31593
This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty.
Change 2999770 on 2016/06/03 by Maciej.Mroz
[Blueprint Nativization]
Workaround for missing ==operator in native structures. The generated code uses special version of array funtions.
Change 2999798 on 2016/06/03 by Mike.Beach
Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor.
#jira UE-31522
Change 2999941 on 2016/06/03 by Mike.Beach
Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning).
#jira UE-23371
Change 3001731 on 2016/06/06 by Phillip.Kavan
[UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target.
change summary:
- modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events.
- modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field.
- modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals.
- modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events.
Change 3002075 on 2016/06/06 by Maciej.Mroz
Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend.
Literal expression can be emitted without known desitination property.
#jira UE-28443 Set Boolean (by ref) crashes the editor on compile
Change 3002096 on 2016/06/06 by Ben.Cosh
This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs.
#Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called
#Proj BlueprintProfiler
Change 3002108 on 2016/06/06 by Ben.Cosh
Adds a new default option to average the blueprint level stats in the profiler.
#Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged
#Proj Kismet, BlueprintProfiler
- The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward.
Change 3002782 on 2016/06/06 by samuel.proctor
Test assets for Interface testing
Change 3003826 on 2016/06/07 by Ben.Cosh
A few minor visual improvements for the blueprint profiler.
#Proj Kismet, BlueprintProfiler, EditorStyle
- Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors.
- Updated the pure node icon.
Change 3004067 on 2016/06/07 by samuel.proctor
New test asset for blueprint interfaces
Change 3004069 on 2016/06/07 by samuel.proctor
Updating asset for Interface testing
Change 3004275 on 2016/06/07 by Ryan.Rauschkolb
Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility
#jira UE-23733
Change 3004329 on 2016/06/07 by Dan.Oconnor
EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced.
Change 3004418 on 2016/06/07 by Maciej.Mroz
KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value.
Change 3004496 on 2016/06/07 by Dan.Oconnor
Disabling expensive pin allocation tracking
Change 3004649 on 2016/06/07 by Mike.Beach
Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors).
#jira UE-31236
Change 3004667 on 2016/06/07 by Dan.Oconnor
Removed my debugging logic
Change 3004848 on 2016/06/07 by Dan.Oconnor
Fix spammy ensure
Change 3004871 on 2016/06/07 by Phillip.Kavan
[UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view.
change summary:
- modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO).
- modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts.
Change 3005203 on 2016/06/07 by Dan.Oconnor
Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems
#jira UE-31750
Change 3005441 on 2016/06/08 by Maciej.Mroz
#jira UE-31625 Crash in nativized Orion
AssembleReferenceTokenStream is called for Dynamic Classes:
- in ConstructDynamicType() (when class is explicitly loaded)
- in __CustomDynamicClassInitialization() (when CDO is created)
Change 3005540 on 2016/06/08 by Ben.Cosh
This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring.
#Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE
#Proj BlueprintProfiler, Kismet
- The jira was already fixed but I think this change improves the instance status clarity
Change 3006196 on 2016/06/08 by Dan.Oconnor
Copy/paste logic for pin connections got lost in the shuffle
#jira UE-31747
Change 3006416 on 2016/06/08 by Phillip.Kavan
[UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order).
change summary:
- modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load.
Change 3006522 on 2016/06/08 by Dan.Oconnor
Under rare circumstances a deprecated pin comes in that is outered to the transient package
#jira UE-31779
Change 3006576 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
#jira UE-31796
Change 3006610 on 2016/06/08 by Phillip.Kavan
[UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance.
change summary:
- modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO.
Change 3006824 on 2016/06/08 by Dan.Oconnor
More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays
#jira UE-31794
Change 3006828 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
Change 3006857 on 2016/06/08 by Dan.Oconnor
Investigating shutdown ensure, traced back to a static UEdGraphPin
Change 3006907 on 2016/06/08 by Dan.Oconnor
Noneditor build fix
Change 3006929 on 2016/06/08 by Dan.Oconnor
Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779
Change 3007133 on 2016/06/09 by Ben.Cosh
Fix for issue in the profiler asserting creating pins that don't have unique names.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
- I believe this was recently introduced with the changes to UEdGraphPin's
Change 3007964 on 2016/06/09 by Dan.Oconnor
Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo
#jira UE-31829
Change 3007996 on 2016/06/09 by Ryan.Rauschkolb
Added 'empty' keyword to Array Clear Node.
#jira UE-12356
Change 3008007 on 2016/06/09 by Ryan.Rauschkolb
Added 'negate' keyword to boolean NOT node
#jira UE-12490
Change 3008011 on 2016/06/09 by Ryan.Rauschkolb
Added Vector2D * Vector2D multiplication node
#jira UE-31503
Change 3008014 on 2016/06/09 by Ryan.Rauschkolb
Fixed Cannot connect Make Array node output to MakeArray input with split pins
#jira UE-28530
Change 3008243 on 2016/06/09 by Dan.Oconnor
Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe'
#jira UE-31841
Change 3008289 on 2016/06/09 by Dan.Oconnor
Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later
#jira UE-31794
Change 3008422 on 2016/06/09 by Dan.Oconnor
Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out)
#jira UE-31857
Change 3009164 on 2016/06/10 by Ryan.Rauschkolb
Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel.
#jira UE-21141,UE-23723
Change 3009165 on 2016/06/10 by Ryan.Rauschkolb
Fixed Structure Default value editor collapses after undoing an alteration of a default value
#jira UE-31741
Change 3009181 on 2016/06/10 by Ryan.Rauschkolb
Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh
#jira UE-30014
Change 3009313 on 2016/06/10 by Mike.Beach
Addressing issues with function return nodes in multiple ways:
- Preventing users from deleting return nodes for overriden/inherited functions.
- Also making sure that we create terminals for out params when the return node is disconnected (and pruned).
- Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function).
#jira UE-31418
Change 3009595 on 2016/06/10 by Dan.Oconnor
EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile
#jira UE-31879
Change 3009774 on 2016/06/10 by Dan.Oconnor
Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return
#jira UE-31906
Change 3009988 on 2016/06/10 by Dan.Oconnor
Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization
#jira UE-31888
Change 3010050 on 2016/06/10 by Dan.Oconnor
Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved
#jira UE-31892
Change 3010071 on 2016/06/10 by Dan.Oconnor
Fix for pasting when owning node has whitespace in result of GetPathName
#jira UE-31898
#coderview Bob.Tellez
Change 3010244 on 2016/06/11 by Dan.Oconnor
Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870
Change 3010630 on 2016/06/13 by Dan.Oconnor
No longer relying on path name for pin resolution, path is unstable across graphs
#jira UE-31870
Change 3010647 on 2016/06/13 by Dan.Oconnor
PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays)
#jira UE-31928
Change 3011175 on 2016/06/13 by Ben.Cosh
Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance.
#Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert
#Proj Kismet, BlueprintProfiler
- Ensured that the trace paths contain the macro instance exec nodes
- Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates.
- Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does.
Change 3011271 on 2016/06/13 by Ben.Cosh
This adds support for inherited blueprint classes to the blueprint profiler.
#Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
Change 3011556 on 2016/06/13 by Ryan.Rauschkolb
Fixed Crash when breaking link to a split pin in MakeArray that is an array type
#jira UE-31919
Change 3011624 on 2016/06/13 by Dan.Oconnor
Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating.
#jira UE-31955
Change 3011984 on 2016/06/13 by Dan.Oconnor
Sanitizing parentpin's subpins when destroying a pin
#jira UE-21392
Change 3012894 on 2016/06/14 by Phillip.Kavan
[UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing.
change summary:
- modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types.
#jira UE-30922
Change 3013037 on 2016/06/14 by Ryan.Rauschkolb
Fixed Crash when connecting to a split pin in a MakeArray node that has no connections
#jira UE-31917
Change 3014846 on 2016/06/15 by Dan.Oconnor
No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change)
#jira FORT-23753
Change 3015014 on 2016/06/15 by Dan.Oconnor
Removing poorly implement IsLetter function
Change 3015142 on 2016/06/15 by Dan.Oconnor
More intentional about removing subpins, prevents stale iterator on split pin collapse
#jira UE-32072
Change 3016326 on 2016/06/16 by Ryan.Rauschkolb
Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values
#jira UE-32016
Change 3016494 on 2016/06/16 by Ryan.Rauschkolb
Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class
#jira UE-31876
Change 3016557 on 2016/06/16 by Dan.Oconnor
Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark
#jira FORT-23753
Change 3016577 on 2016/06/16 by Ryan.Rauschkolb
Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType
Change 3016906 on 2016/06/16 by Dan.Oconnor
Back out changelist 3016557
This will be done by Jamie.Dale in Dev-Editor
Change 3018081 on 2016/06/17 by Phillip.Kavan
[UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus)
#jira UE-31832
Change 3018402 on 2016/06/17 by Dan.Oconnor
Missing include
Change 3018426 on 2016/06/17 by Ryan.Rauschkolb
Fixed MakeArray node with split pins and no connections does not paste correctly
#jira UE-32148
Change 3018452 on 2016/06/17 by Mike.Beach
Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load).
#jira UE-32158
Change 3018456 on 2016/06/17 by Dan.Oconnor
Fix for static analysis warning, this null check does nothing
Change 3018595 on 2016/06/17 by Mike.Beach
Fix for shadowed variable warning in CIS.
Change 3018699 on 2016/06/17 by Mike.Beach
Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing).
Change 3019734 on 2016/06/20 by Phillip.Kavan
[UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes.
change summary:
- added a UK2Node_AddComponent::PostDuplicate() override
- moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides.
notes:
- will prevent getting into the scenario described in UE-31831
#jira UE-32064
Change 3020635 on 2016/06/20 by Dan.Oconnor
Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile)
Change 3020894 on 2016/06/21 by Maciej.Mroz
#2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell)
Change 3020958 on 2016/06/21 by Ben.Cosh
This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling.
#Jira UE-32270 - Input key events generate extra instrumentation data per key press
#Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation.
#Proj BlueprintProfiler, UnrealEd
Change 3021316 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where Copy/Paste of event nodes would not retain link information
Change 3021826 on 2016/06/21 by Phillip.Kavan
[UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object.
change summary:
- added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API
- modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates
#jira UE-31831
Change 3022047 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where copy/paste of return nodes would not preserve value or link data
#jira UE-26937
Change 3022619 on 2016/06/22 by Maciej.Mroz
#jira UE-30858 Nativized Orion - Some particle effects are not rendering
A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added.
It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry.
Fixed GameplayCueManager. Nativized cues can be found.
This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage).
Change 3022654 on 2016/06/22 by Maciej.Mroz
FBackendHelperStaticSearchableValues -fixed too strict ensure
Change 3023067 on 2016/06/22 by Maciej.Mroz
#jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project
Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor.
Change 3023222 on 2016/06/22 by Ryan.Rauschkolb
Fixed MakeArray node elements break when editing struct elements
#jira UE-21392
Change 3023405 on 2016/06/22 by Mike.Beach
Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran).
#jira UE-31897
Change 3023992 on 2016/06/22 by Mike.Beach
Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions.
#jira UE-31859
[CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
|
|
|
// Just made a connection, was it the first and was it the parent pin?
|
|
|
|
|
if (Pin->ParentPin == nullptr && NumPinsWithLinks == 1)
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
// Update the types on all the pins
|
|
|
|
|
OutputPin->PinType = Pin->LinkedTo[0]->PinType;
|
|
|
|
|
OutputPin->PinType.bIsArray = true;
|
|
|
|
|
PropagatePinType();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
// Just broke a connection, was it the last?
|
|
|
|
|
if (NumPinsWithLinks == 0)
|
|
|
|
|
{
|
|
|
|
|
// Return to wildcard if theres nothing in any of the input pins
|
|
|
|
|
bool bResetOutputPin = true;
|
|
|
|
|
for (int32 PinIndex = 0; PinIndex < InputPins.Num(); ++PinIndex)
|
|
|
|
|
{
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2927746 on 2016/03/30 by Michael.Schoell
Local variables in function graphs will now store a hard reference to their UObject value.
Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint.
#jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native
Change 2927751 on 2016/03/30 by Michael.Schoell
Back out changelist 2927746
Change 2986483 on 2016/05/23 by Maciej.Mroz
#jira UE-30976 Editable enum values set on an instance are lost during nativization
Added overriden names of Enum keys.
Change 2986712 on 2016/05/23 by Phillip.Kavan
[UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class.
change summary:
- modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root.
Change 2987406 on 2016/05/23 by Ryan.Rauschkolb
Fixed Functions filter in Find-In-Blueprints will show components from the SCS
#jira UE-30140
Change 2988925 on 2016/05/24 by Ryan.Rauschkolb
Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph.
#jira UE-20232
Change 2989001 on 2016/05/24 by Dan.Oconnor
PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner)
#jira UE-31142
Change 2989447 on 2016/05/25 by Phillip.Kavan
[UE-30807] Propagate edit condition property value changes to instances of template objects.
change summary:
- modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO)
Change 2989804 on 2016/05/25 by Phillip.Kavan
[UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class.
change summary:
- modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component
Change 2990234 on 2016/05/25 by Ryan.Rauschkolb
Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph
#jira UE-4426
Change 2990566 on 2016/05/25 by Mike.Beach
Better warn logging to help locate variable nodes that emit a "variable not found" message.
Change 2991083 on 2016/05/26 by Maciej.Mroz
Blueprint nativization: converted classes have "config" specified.
Change 2991363 on 2016/05/26 by Phillip.Kavan
[UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components.
change summary:
- modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text
- modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed)
- modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass
- modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects
Change 2992990 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node
#jira UE-21973
Change 2992995 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked.
#jira UE-30990
Change 2993449 on 2016/05/27 by Phillip.Kavan
[UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing.
change summary:
- modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type.
Change 2993531 on 2016/05/27 by Mike.Beach
PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell)
Change 2993969 on 2016/05/30 by Maciej.Mroz
UE-30729 Crash in Native Orion when selecting Sword or Tomahawk
Clear AsyncLoading in subobjects.
Change 2993990 on 2016/05/30 by Phillip.Kavan
[UE-30984] Exclude reroute nodes from Blueprint profiler node mapping.
change summary:
- modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links.
- modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links.
- modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points.
- modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points.
Change 2994591 on 2016/05/31 by Ryan.Rauschkolb
Fixed issue where inherited Blueprint variable would not show parent's replications settings
#jira UE-18912
Change 2994613 on 2016/05/31 by Ben.Cosh
Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal.
#Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher
#Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy
#Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler
#Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab
#Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status
#Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented
#Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out
#Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean"
#Jira UE-31377 - BP Profiler - Default tree view filtering to off
#Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP
#Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)"
Notes:-
- Sequence node inclusive time fixed
- Trace History tidy up
- Compile Icon and status messages for instrumentation
- Message in the profiler tab for instrumentation
- Profiler view tidy up and heat thresholds controls added
- fixed the summed execution branch stats
- fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396
- added hottest path and hottest endpoint wire heatmaps
- switched off the graph filter by default
- added total time for the heatmaps
- fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code
Change 2995058 on 2016/05/31 by Phillip.Kavan
[UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running.
change summary:
- modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class.
- modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context.
Change 2995218 on 2016/05/31 by Phillip.Kavan
[UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size.
change summary:
- modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout.
Change 2996417 on 2016/06/01 by Phillip.Kavan
[UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor.
change summary:
- modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object.
Change 2997001 on 2016/06/01 by Ryan.Rauschkolb
Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component
#jira UE-30143
Change 2997521 on 2016/06/02 by Maciej.Mroz
[Blueprint Nativization]
- Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h
- Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated.
Change 2997522 on 2016/06/02 by Maciej.Mroz
Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization)
Change 2997638 on 2016/06/02 by Maciej.Mroz
Improvements for Blueprint Nativization:
- Overridden names in nativized code have proper escape characters (in generated code).
- OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared
- Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>)
- warning C4883 is disabled in .generated.cpp files for nativized module
Change 2997639 on 2016/06/02 by Maciej.Mroz
Minor improvements in Ocean gameplay code. Required for Blueprint Nativization.
#jira UE-28945 Failure packaging Nativized Ocean
Change 2997656 on 2016/06/02 by Maciej.Mroz
Various improvements in BlueprintCompilerCppBackend:
- Fixed interface cast
- Fixed TSwitchValue issue (when used with literals)
- Fixed improper name for NativeBlueprintEvent (when calling parent's implementation)
- Fixed bitfield getter code.
- Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums)
- operator == is generated for nativized structs
- Fixed AssedId (AssetPtr) constructor in nativized code.
- Fixed arrays of noexport struct
- Fixed missing headers for native single cast delegate signature.
- Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata.
Change 2997691 on 2016/06/02 by Maciej.Mroz
operator == in FText. It is required for some functions in TArray<FText>
Change 2997793 on 2016/06/02 by Ben.Cosh
Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter
#Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh
#Proj BlueprintProfiler, Kismet
Change 2997901 on 2016/06/02 by Maciej.Mroz
Back out changelist 2997691
Change 2998038 on 2016/06/02 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 2998052 on 2016/06/02 by Ryan.Rauschkolb
Fixed Comment bubbles not remembering changes after losing focus
#jira UE-20012
Change 2998450 on 2016/06/02 by Phillip.Kavan
[UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata.
change summary:
- modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it.
Change 2999763 on 2016/06/03 by Mike.Beach
Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes.
#jira UE-26761
Change 2999768 on 2016/06/03 by Maciej.Mroz
#jira UE-31592, UE-31593
This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty.
Change 2999770 on 2016/06/03 by Maciej.Mroz
[Blueprint Nativization]
Workaround for missing ==operator in native structures. The generated code uses special version of array funtions.
Change 2999798 on 2016/06/03 by Mike.Beach
Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor.
#jira UE-31522
Change 2999941 on 2016/06/03 by Mike.Beach
Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning).
#jira UE-23371
Change 3001731 on 2016/06/06 by Phillip.Kavan
[UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target.
change summary:
- modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events.
- modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field.
- modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals.
- modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events.
Change 3002075 on 2016/06/06 by Maciej.Mroz
Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend.
Literal expression can be emitted without known desitination property.
#jira UE-28443 Set Boolean (by ref) crashes the editor on compile
Change 3002096 on 2016/06/06 by Ben.Cosh
This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs.
#Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called
#Proj BlueprintProfiler
Change 3002108 on 2016/06/06 by Ben.Cosh
Adds a new default option to average the blueprint level stats in the profiler.
#Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged
#Proj Kismet, BlueprintProfiler
- The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward.
Change 3002782 on 2016/06/06 by samuel.proctor
Test assets for Interface testing
Change 3003826 on 2016/06/07 by Ben.Cosh
A few minor visual improvements for the blueprint profiler.
#Proj Kismet, BlueprintProfiler, EditorStyle
- Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors.
- Updated the pure node icon.
Change 3004067 on 2016/06/07 by samuel.proctor
New test asset for blueprint interfaces
Change 3004069 on 2016/06/07 by samuel.proctor
Updating asset for Interface testing
Change 3004275 on 2016/06/07 by Ryan.Rauschkolb
Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility
#jira UE-23733
Change 3004329 on 2016/06/07 by Dan.Oconnor
EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced.
Change 3004418 on 2016/06/07 by Maciej.Mroz
KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value.
Change 3004496 on 2016/06/07 by Dan.Oconnor
Disabling expensive pin allocation tracking
Change 3004649 on 2016/06/07 by Mike.Beach
Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors).
#jira UE-31236
Change 3004667 on 2016/06/07 by Dan.Oconnor
Removed my debugging logic
Change 3004848 on 2016/06/07 by Dan.Oconnor
Fix spammy ensure
Change 3004871 on 2016/06/07 by Phillip.Kavan
[UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view.
change summary:
- modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO).
- modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts.
Change 3005203 on 2016/06/07 by Dan.Oconnor
Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems
#jira UE-31750
Change 3005441 on 2016/06/08 by Maciej.Mroz
#jira UE-31625 Crash in nativized Orion
AssembleReferenceTokenStream is called for Dynamic Classes:
- in ConstructDynamicType() (when class is explicitly loaded)
- in __CustomDynamicClassInitialization() (when CDO is created)
Change 3005540 on 2016/06/08 by Ben.Cosh
This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring.
#Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE
#Proj BlueprintProfiler, Kismet
- The jira was already fixed but I think this change improves the instance status clarity
Change 3006196 on 2016/06/08 by Dan.Oconnor
Copy/paste logic for pin connections got lost in the shuffle
#jira UE-31747
Change 3006416 on 2016/06/08 by Phillip.Kavan
[UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order).
change summary:
- modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load.
Change 3006522 on 2016/06/08 by Dan.Oconnor
Under rare circumstances a deprecated pin comes in that is outered to the transient package
#jira UE-31779
Change 3006576 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
#jira UE-31796
Change 3006610 on 2016/06/08 by Phillip.Kavan
[UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance.
change summary:
- modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO.
Change 3006824 on 2016/06/08 by Dan.Oconnor
More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays
#jira UE-31794
Change 3006828 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
Change 3006857 on 2016/06/08 by Dan.Oconnor
Investigating shutdown ensure, traced back to a static UEdGraphPin
Change 3006907 on 2016/06/08 by Dan.Oconnor
Noneditor build fix
Change 3006929 on 2016/06/08 by Dan.Oconnor
Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779
Change 3007133 on 2016/06/09 by Ben.Cosh
Fix for issue in the profiler asserting creating pins that don't have unique names.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
- I believe this was recently introduced with the changes to UEdGraphPin's
Change 3007964 on 2016/06/09 by Dan.Oconnor
Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo
#jira UE-31829
Change 3007996 on 2016/06/09 by Ryan.Rauschkolb
Added 'empty' keyword to Array Clear Node.
#jira UE-12356
Change 3008007 on 2016/06/09 by Ryan.Rauschkolb
Added 'negate' keyword to boolean NOT node
#jira UE-12490
Change 3008011 on 2016/06/09 by Ryan.Rauschkolb
Added Vector2D * Vector2D multiplication node
#jira UE-31503
Change 3008014 on 2016/06/09 by Ryan.Rauschkolb
Fixed Cannot connect Make Array node output to MakeArray input with split pins
#jira UE-28530
Change 3008243 on 2016/06/09 by Dan.Oconnor
Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe'
#jira UE-31841
Change 3008289 on 2016/06/09 by Dan.Oconnor
Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later
#jira UE-31794
Change 3008422 on 2016/06/09 by Dan.Oconnor
Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out)
#jira UE-31857
Change 3009164 on 2016/06/10 by Ryan.Rauschkolb
Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel.
#jira UE-21141,UE-23723
Change 3009165 on 2016/06/10 by Ryan.Rauschkolb
Fixed Structure Default value editor collapses after undoing an alteration of a default value
#jira UE-31741
Change 3009181 on 2016/06/10 by Ryan.Rauschkolb
Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh
#jira UE-30014
Change 3009313 on 2016/06/10 by Mike.Beach
Addressing issues with function return nodes in multiple ways:
- Preventing users from deleting return nodes for overriden/inherited functions.
- Also making sure that we create terminals for out params when the return node is disconnected (and pruned).
- Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function).
#jira UE-31418
Change 3009595 on 2016/06/10 by Dan.Oconnor
EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile
#jira UE-31879
Change 3009774 on 2016/06/10 by Dan.Oconnor
Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return
#jira UE-31906
Change 3009988 on 2016/06/10 by Dan.Oconnor
Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization
#jira UE-31888
Change 3010050 on 2016/06/10 by Dan.Oconnor
Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved
#jira UE-31892
Change 3010071 on 2016/06/10 by Dan.Oconnor
Fix for pasting when owning node has whitespace in result of GetPathName
#jira UE-31898
#coderview Bob.Tellez
Change 3010244 on 2016/06/11 by Dan.Oconnor
Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870
Change 3010630 on 2016/06/13 by Dan.Oconnor
No longer relying on path name for pin resolution, path is unstable across graphs
#jira UE-31870
Change 3010647 on 2016/06/13 by Dan.Oconnor
PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays)
#jira UE-31928
Change 3011175 on 2016/06/13 by Ben.Cosh
Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance.
#Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert
#Proj Kismet, BlueprintProfiler
- Ensured that the trace paths contain the macro instance exec nodes
- Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates.
- Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does.
Change 3011271 on 2016/06/13 by Ben.Cosh
This adds support for inherited blueprint classes to the blueprint profiler.
#Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
Change 3011556 on 2016/06/13 by Ryan.Rauschkolb
Fixed Crash when breaking link to a split pin in MakeArray that is an array type
#jira UE-31919
Change 3011624 on 2016/06/13 by Dan.Oconnor
Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating.
#jira UE-31955
Change 3011984 on 2016/06/13 by Dan.Oconnor
Sanitizing parentpin's subpins when destroying a pin
#jira UE-21392
Change 3012894 on 2016/06/14 by Phillip.Kavan
[UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing.
change summary:
- modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types.
#jira UE-30922
Change 3013037 on 2016/06/14 by Ryan.Rauschkolb
Fixed Crash when connecting to a split pin in a MakeArray node that has no connections
#jira UE-31917
Change 3014846 on 2016/06/15 by Dan.Oconnor
No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change)
#jira FORT-23753
Change 3015014 on 2016/06/15 by Dan.Oconnor
Removing poorly implement IsLetter function
Change 3015142 on 2016/06/15 by Dan.Oconnor
More intentional about removing subpins, prevents stale iterator on split pin collapse
#jira UE-32072
Change 3016326 on 2016/06/16 by Ryan.Rauschkolb
Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values
#jira UE-32016
Change 3016494 on 2016/06/16 by Ryan.Rauschkolb
Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class
#jira UE-31876
Change 3016557 on 2016/06/16 by Dan.Oconnor
Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark
#jira FORT-23753
Change 3016577 on 2016/06/16 by Ryan.Rauschkolb
Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType
Change 3016906 on 2016/06/16 by Dan.Oconnor
Back out changelist 3016557
This will be done by Jamie.Dale in Dev-Editor
Change 3018081 on 2016/06/17 by Phillip.Kavan
[UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus)
#jira UE-31832
Change 3018402 on 2016/06/17 by Dan.Oconnor
Missing include
Change 3018426 on 2016/06/17 by Ryan.Rauschkolb
Fixed MakeArray node with split pins and no connections does not paste correctly
#jira UE-32148
Change 3018452 on 2016/06/17 by Mike.Beach
Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load).
#jira UE-32158
Change 3018456 on 2016/06/17 by Dan.Oconnor
Fix for static analysis warning, this null check does nothing
Change 3018595 on 2016/06/17 by Mike.Beach
Fix for shadowed variable warning in CIS.
Change 3018699 on 2016/06/17 by Mike.Beach
Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing).
Change 3019734 on 2016/06/20 by Phillip.Kavan
[UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes.
change summary:
- added a UK2Node_AddComponent::PostDuplicate() override
- moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides.
notes:
- will prevent getting into the scenario described in UE-31831
#jira UE-32064
Change 3020635 on 2016/06/20 by Dan.Oconnor
Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile)
Change 3020894 on 2016/06/21 by Maciej.Mroz
#2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell)
Change 3020958 on 2016/06/21 by Ben.Cosh
This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling.
#Jira UE-32270 - Input key events generate extra instrumentation data per key press
#Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation.
#Proj BlueprintProfiler, UnrealEd
Change 3021316 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where Copy/Paste of event nodes would not retain link information
Change 3021826 on 2016/06/21 by Phillip.Kavan
[UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object.
change summary:
- added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API
- modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates
#jira UE-31831
Change 3022047 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where copy/paste of return nodes would not preserve value or link data
#jira UE-26937
Change 3022619 on 2016/06/22 by Maciej.Mroz
#jira UE-30858 Nativized Orion - Some particle effects are not rendering
A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added.
It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry.
Fixed GameplayCueManager. Nativized cues can be found.
This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage).
Change 3022654 on 2016/06/22 by Maciej.Mroz
FBackendHelperStaticSearchableValues -fixed too strict ensure
Change 3023067 on 2016/06/22 by Maciej.Mroz
#jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project
Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor.
Change 3023222 on 2016/06/22 by Ryan.Rauschkolb
Fixed MakeArray node elements break when editing struct elements
#jira UE-21392
Change 3023405 on 2016/06/22 by Mike.Beach
Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran).
#jira UE-31897
Change 3023992 on 2016/06/22 by Mike.Beach
Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions.
#jira UE-31859
[CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
|
|
|
UEdGraphPin*& CurrentPin = InputPins[PinIndex];
|
|
|
|
|
if (CurrentPin->GetDefaultAsString() != CurrentPin->AutogeneratedDefaultValue)
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
bResetOutputPin = false;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if( bResetOutputPin == true )
|
|
|
|
|
{
|
2014-11-17 09:46:35 -05:00
|
|
|
OutputPin->PinType.PinCategory = UEdGraphSchema_K2::PC_Wildcard;
|
2014-03-14 14:13:41 -04:00
|
|
|
OutputPin->PinType.PinSubCategory = TEXT("");
|
|
|
|
|
OutputPin->PinType.PinSubCategoryObject = NULL;
|
|
|
|
|
|
|
|
|
|
PropagatePinType();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void UK2Node_MakeArray::PropagatePinType()
|
|
|
|
|
{
|
|
|
|
|
const UEdGraphPin* OutputPin = GetOutputPin();
|
|
|
|
|
|
|
|
|
|
if (OutputPin)
|
|
|
|
|
{
|
|
|
|
|
UClass const* CallingContext = NULL;
|
|
|
|
|
if (UBlueprint const* Blueprint = GetBlueprint())
|
|
|
|
|
{
|
|
|
|
|
CallingContext = Blueprint->GeneratedClass;
|
|
|
|
|
if (CallingContext == NULL)
|
|
|
|
|
{
|
|
|
|
|
CallingContext = Blueprint->ParentClass;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const UEdGraphSchema_K2* Schema = GetDefault<UEdGraphSchema_K2>();
|
|
|
|
|
bool bWantRefresh = false;
|
|
|
|
|
// Propagate pin type info (except for array info!) to pins with dependent types
|
|
|
|
|
for (TArray<UEdGraphPin*>::TIterator it(Pins); it; ++it)
|
|
|
|
|
{
|
|
|
|
|
UEdGraphPin* CurrentPin = *it;
|
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3125172)
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3053250 on 2016/07/18 by Steve.Robb
TNot metafunction added.
Change 3053252 on 2016/07/18 by Steve.Robb
New TIsEnumClass trait.
Change 3061345 on 2016/07/22 by Robert.Manuszewski
Changing FMallocStomp::GetAllocationSize() to return the requested allocation size instead of the physical allocation size to make FMallocStomp work properly with FMallocPoisonProxy
Change 3061377 on 2016/07/22 by Graeme.Thornton
Added bStripAnimationDataOnDedicatedServer option to UAnimationSettings which will remove all compressed data from cooked server data. Disabled by default
Change 3064592 on 2016/07/26 by Steven.Hutton
Uploading repository files
Change 3064595 on 2016/07/26 by Steven.Hutton
Assign crashes to buggs based not just on Callstack but also based on Error message.
Error messages have "data" masked out and are then compared to a table of error messages to find similar messages. Ensures are not currently filtered by error message.
Change 3066046 on 2016/07/27 by Graeme.Thornton
Better dedicated client/server class exclusion during cooking
- Add class lists to cooker settings so they can be modified in the editor
Change 3066077 on 2016/07/27 by Graeme.Thornton
Move Paragon NeedsLoadForServer calls over to the new config based system
Change 3066203 on 2016/07/27 by Chris.Wood
CrashReportProcess logging and Slack reporting improvements to monitor disk space.
[UE-31129] - Crash Report server need to alert on Slack when the PDB cache is full
Change 3066276 on 2016/07/27 by Graeme.Thornton
Move simple NeedsLoadForClient implementations over to new config based system
Change 3068019 on 2016/07/28 by Graeme.Thornton
Don't call ReleaseResources on UStaticMesh if we never render, and therefore never actually initialize the resources
- Corrects some bad stats
Change 3068218 on 2016/07/28 by Chris.Wood
CrashReportProcess 1.1.18 passes BuildVersion to MinidumpDiagnostics
[UE-31706] - Add new BuildVersion string to crash context and website
Also modified command line log file ini settings to stop MDD stalling trying to sort and delete its logs.
Change 3071665 on 2016/08/01 by Robert.Manuszewski
Moving RemoveNamesFromMasterList from UEnum destructor to BeginDestroy to avoid potential issues when its package has already been destroyed.
Change 3073388 on 2016/08/02 by Graeme.Thornton
Invalidate string asset reference tags after finishing up loading of an async package
Change 3073745 on 2016/08/02 by Robert.Manuszewski
Disabling logging to memory in shipping by default. From now on FOutputDeviceMemory will be an opt-in for games.
#jira FORT-27839
Change 3074866 on 2016/08/03 by Robert.Manuszewski
PR #2650: Fixed a bug where newline escape sequence wasnt written to the pipe (Contributed by ozturkhakki)
Change 3075128 on 2016/08/03 by Steve.Robb
Static analysis fixes: error C2065: 'ThisOuterWorld': undeclared identifier
Change 3075130 on 2016/08/03 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'LODLevel'
Change 3075131 on 2016/08/03 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'Owner'
Change 3075235 on 2016/08/03 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'AnimToOperateOn'
Change 3075248 on 2016/08/03 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'ParentProfile'
Change 3075662 on 2016/08/03 by Steve.Robb
Static analysis/buffer size fix: warning C28020: The expression '_Param_(7)>=sizeof(ICMP_ECHO_REPLY)+_Param_(4)+8' is not true at this call
Change 3075668 on 2016/08/03 by Steve.Robb
Static analysis fix: warning C6326: Potential comparison of a constant with another constant
Change 3075679 on 2016/08/03 by Chris.Wood
Added -NoTrimCallstack command line arg to MDD calls from CRP 1.1.19
[OR-26335] - 29.1 crash reporter generating reports with no callstacks / info
New MDD has -NoTrimCallstack option to leave possibly irrelevant entires in the stack. Trimming is somewhat arbitrary and based on string matching. I'd rather see the whole thing.
Change 3077070 on 2016/08/04 by Steve.Robb
Dead array slack tracking code removed.
Change 3077113 on 2016/08/04 by Steve.Robb
TEnumAsByte is now deprecated for enum classes.
All current uses fixed (which tidies up that code anyway).
New FArchive::op<< for enum classes.
Generated code now never uses TEnumAsByte for enum classes.
Change 3077117 on 2016/08/04 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'DefaultSettings'
Change 3078709 on 2016/08/05 by Steve.Robb
FUNCTION_NO_NULL_RETURN_* macros added to statically annotate a function to say that it never returns a null pointer.
TObjectIterator annotated to never return null.
NewObject annotated to never return null.
Change 3078836 on 2016/08/05 by Graeme.Thornton
Silently skip creating exports from a package where the outer is also an export and has been filtered at runtime during loading
Change 3082217 on 2016/08/09 by Steve.Robb
Missing #include for FUniqueNetIdRepl added.
Change 3083679 on 2016/08/10 by Chris.Wood
CrashReportProcess performance improvements. CRP v1.1.22
[UE-34402] - Crash Reporter: Improve CRP performance by allowing multiple MDD instances
[UE-34403] - Crash Reporter: CRP should throw away crashes when backlog is too large to avoid runaway
Passing lock details to MDD on command line and managing multiple MDD tasks in CRP.
Configurable values for range of queue sizes that cause us to throw away crashes.
Change 3085362 on 2016/08/11 by Steve.Robb
Rule-of-three fixes for FAIMessageObserver, to prevent accidents.
From here: https://udn.unrealengine.com/questions/306507/tstaticarray-doesnt-call-destructor-on-elements-be.html
Change 3085396 on 2016/08/11 by Steve.Robb
Swap can now be configured via the TUseBitwiseSwap trait to not use Memswap, which can be less optimal for certain types.
Change 3088840 on 2016/08/15 by Steve.Robb
TRemoveReference moved to its own header.
Change 3088858 on 2016/08/15 by Steve.Robb
TDecay moved to its own header.
Change 3088963 on 2016/08/15 by Steve.Robb
Invoke function, for doing a generic call on a generic callable thing. Equivalent to std::invoke.
Change 3089144 on 2016/08/15 by Steve.Robb
Algo::Transform updated to use Invoke. Algorithm tests updated to test the new features.
Change 3089147 on 2016/08/15 by Steve.Robb
TLess and TGreater moved to their own headers and defaulted to void as a type-deducing version, as per std::.
Change 3090243 on 2016/08/16 by Steve.Robb
New Algo::Sort and Algo::SortBy algorithms.
Change 3090387 on 2016/08/16 by Steve.Robb
Improved bitwise swapping for Swap.
See: https://udn.unrealengine.com/questions/306922/swap-is-painfully-slow.html
Change 3090444 on 2016/08/16 by Steve.Robb
Ptr+Size overloads removed after discussion - MakeArrayView should be used instead.
Change 3090495 on 2016/08/16 by Steve.Robb
Assert when FString::Mid is passed a negative count.
#jira UE-18756
Change 3093455 on 2016/08/18 by Steve.Robb
Debuggability and efficiency improvements to UScriptStruct::DeferCppStructOps.
Change 3094476 on 2016/08/19 by Steve.Robb
BOM removed from InvariantCulture.h.
Change 3094697 on 2016/08/19 by Steve.Robb
Static analysis fix: warning C6237: (<zero> && <expression>) is always zero. <expression> is never evaluated and might have side effects.
Change 3094702 on 2016/08/19 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'Interactor'.
Change 3094715 on 2016/08/19 by Steve.Robb
Static analysis fix: warning C6385: Reading invalid data from 'Order': the readable size is '256' bytes, but '8160' bytes may be read.
Change 3094737 on 2016/08/19 by Steve.Robb
Static analysis fixes:
warning C6011: Dereferencing NULL pointer 'OwnedComponent'.
warning C28182: Dereferencing NULL pointer. 'Child' contains the same NULL value as 'AttachToComponent' did.
Change 3094750 on 2016/08/19 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'Actor'.
Change 3094768 on 2016/08/19 by Steve.Robb
Static analysis fixes:
warning C6011: Dereferencing NULL pointer 'LevelSequence'.
warning C6011: Dereferencing NULL pointer 'Actor'.
Change 3094774 on 2016/08/19 by Steve.Robb
Static analysis fixes: warning C6011: Dereferencing NULL pointer 'CallFunctionNode'.
Change 3094783 on 2016/08/19 by Steve.Robb
Static analysis fixes: warning C6011: Dereferencing NULL pointer 'TargetPin'.
Change 3094807 on 2016/08/19 by Steve.Robb
Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SourceClass'.
Change 3094815 on 2016/08/19 by Steve.Robb
Static analysis fixes:
warning C6011: Dereferencing NULL pointer 'VarNode'.
warning C6011: Dereferencing NULL pointer 'SourceClass'.
Change 3094840 on 2016/08/19 by Steve.Robb
Static analysis fixes:
warning C6011: Dereferencing NULL pointer 'TunnelGraph'.
warning C28182: Dereferencing NULL pointer. 'GraphNode' contains the same NULL value as 'SourceNode' did.
Change 3094864 on 2016/08/19 by Steve.Robb
Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'.
Change 3094880 on 2016/08/19 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'PrevIfIndexMatchesStatement'.
Change 3094886 on 2016/08/19 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'SpawnBlueprintPin'.
Change 3094903 on 2016/08/19 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'K2Node'.
Change 3094916 on 2016/08/19 by Steve.Robb
Static analysis fix: Dereferencing NULL pointer 'CompilerContext'.
Change 3094931 on 2016/08/19 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'VariablePin'.
Change 3094935 on 2016/08/19 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurrentPin'.
Change 3094943 on 2016/08/19 by Steve.Robb
Static analysis fixes:
warning C6011: Dereferencing NULL pointer 'Pin'.
warning C28182: Dereferencing NULL pointer. 'Graph' contains the same NULL value as 'TargetGraph' did.
Change 3094960 on 2016/08/19 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'LastOutPin'.
Change 3095046 on 2016/08/19 by Steve.Robb
Single parameter version of CastChecked tagged to never return null.
Change 3095054 on 2016/08/19 by Steve.Robb
Committed wrong version in CL# 3095046.
Change 3095089 on 2016/08/19 by Steve.Robb
Static analysis fixes:
warning C6509: Invalid annotation: 'return' cannot be referenced in some contexts
warning C6101: Returning uninitialized memory '*lpdwExitCode'.
Change 3096035 on 2016/08/22 by Steve.Robb
Fix for static lighting in pixel inspector.
Change 3096039 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'World'.
Change 3096045 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'Actor'.
Change 3096058 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'OtherPin'.
Change 3096059 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'MainMesh'.
Change 3096066 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'SourceType'.
Change 3096070 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'LastPushStatement'.
Change 3096074 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'OriginalDataTableInPin'.
Change 3096075 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurrentPin'.
Change 3096081 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'RunningPlatformData'.
Change 3096156 on 2016/08/22 by Steve.Robb
Static analysis fixes:
warning C6011: Dereferencing NULL pointer 'BP'.
warning C6011: Dereferencing NULL pointer 'Object'.
Change 3096308 on 2016/08/22 by Steve.Robb
Static analysis fixes:
warning C6011: Dereferencing NULL pointer 'TopMipData'.
warning C6011: Dereferencing NULL pointer 'MipCoverageData[0]'.
Change 3096315 on 2016/08/22 by Steve.Robb
Static analysis fixes:
warning C6011: Dereferencing NULL pointer 'OldParent'.
warning C6011: Dereferencing NULL pointer 'TestExecutionInfo'.
Change 3096318 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'OwnerClass'.
Change 3096322 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'StaticMeshInstanceData'.
Change 3096337 on 2016/08/22 by Steve.Robb
Static analysis fixes:
warning C6011: Dereferencing NULL pointer 'Pin'.
warning C6011: Dereferencing NULL pointer 'SpawnVarPin'.
Change 3096345 on 2016/08/22 by Steve.Robb
Static analysis fixes: warning C6246: Local declaration of 'NumTris' hides declaration of the same name in outer scope.
Change 3096356 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'InWorld'.
Change 3096387 on 2016/08/22 by Steve.Robb
Static analysis fixes:
warning C6011: Dereferencing NULL pointer 'ExpressionPreviewMaterial'.
warning C6011: Dereferencing NULL pointer 'MaterialNode->MaterialExpression'.
Change 3096400 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'FunctionInputs'.
Change 3096413 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C28182: Dereferencing NULL pointer. 'LODPackage' contains the same NULL value as 'AssetsOuter' did.
Change 3096416 on 2016/08/22 by Steve.Robb
Static analysis fixes: warning C6237: (<zero> && <expression>) is always zero. <expression> is never evaluated and might have side effects.
Change 3096423 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'RedirectorRefs.Redirector'.
Change 3096439 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'NewObject'.
Change 3096446 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'BaseClass'.
Change 3096454 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'OldSkeleton'.
Change 3096464 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'MyNode'.
Change 3096469 on 2016/08/22 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'VRInteractor'.
Change 3097559 on 2016/08/23 by Steve.Robb
Alternate fix to CL# 3096439.
Change 3097583 on 2016/08/23 by Steve.Robb
Static analysis fixes:
warning C6011: Dereferencing NULL pointer 'SourceCategoryEnum'.
warning C6011: Dereferencing NULL pointer 'CurrentWorld'.
Change 3097584 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'LocalizationTarget'.
Change 3097585 on 2016/08/23 by Steve.Robb
Static analysis fixes:
warning C28182: Dereferencing NULL pointer. 'VariableSetNode' contains the same NULL value as 'AssignmentNode' did.
warning C6011: Dereferencing NULL pointer 'FirstNativeClass'.
Change 3097588 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'OutputObjClass'.
Change 3097589 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C28182: Dereferencing NULL pointer. 'Term' contains the same NULL value as 'RValueTerm' did.
Change 3097591 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'Schema'.
Change 3097597 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'LayerInfo'.
Change 3097598 on 2016/08/23 by Steve.Robb
Const-correctness fix for ILandscapeEditorModule::GetHeightmapFormatByExtension and ILandscapeEditorModule::GetWeightmapFormatByExtension.
Change 3097600 on 2016/08/23 by Steve.Robb
Fix for incorrect null check.
Change 3097605 on 2016/08/23 by Steve.Robb
Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'TexDataPtr'.
Bug filed here: https://connect.microsoft.com/VisualStudio/feedback/details/3078125
Change 3097609 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C28182: Dereferencing NULL pointer. 'ObjClass' contains the same NULL value as 'BaseClass' did.
Change 3097613 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'InEdGraph'.
Change 3097620 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'ThisScalableFloat'.
Change 3097627 on 2016/08/23 by Steve.Robb
Static analysis fixes: warning C6011: Dereferencing NULL pointer 'AnimBlueprint'.
Change 3097629 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C28182: Dereferencing NULL pointer. 'Pin' contains the same NULL value as 'PoseNet' did.
Change 3097631 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'IPOverlayInfo.Brush'.
Change 3097634 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'Survey'.
Change 3097639 on 2016/08/23 by Steve.Robb
Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Settings'.
Change 3097650 on 2016/08/23 by Steve.Robb
Alternate fix for CL# 3097597.
Change 3097725 on 2016/08/23 by Steve.Robb
Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'BodySetup'.
Change 3097764 on 2016/08/23 by Steve.Robb
Spurious static analysis fix: warning C28182: Dereferencing NULL pointer. 'FoundMode' contains the same NULL value as 'ElementType * FoundMode=LoopModes.FindByPredicate(<lambda>)' did.
Change 3097770 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'Triangle'.
Change 3097775 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurGroup'.
Change 3097796 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'SourceComponent'.
Change 3097797 on 2016/08/23 by Steve.Robb
Spurious static analysis fix: warning C6011: Dereferencing NULL pointer 'HitComponent'.
Change 3097843 on 2016/08/23 by Steve.Robb
Spurious static analysis fix: Dereferencing NULL pointer. 'MatchingNewPin' contains the same NULL value as 'UEdGraphPin ** MatchingNewPin=this->Pins.FindByPredicate(<lambda>)' did.
Change 3097864 on 2016/08/23 by Steve.Robb
Static analysis fixes:
warning C6011: Dereferencing NULL pointer 'ObjectClass'.
warning C6011: Dereferencing NULL pointer 'Client'.
Change 3097871 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C28182: Dereferencing NULL pointer. 'SMLightingMesh->StaticMesh' contains the same NULL value as 'StaticMesh' did.
Change 3098015 on 2016/08/23 by Steve.Robb
Alternative fix for CL# 3094864.
Change 3098024 on 2016/08/23 by Steve.Robb
Alternative fix for CL# 3094943.
Change 3098052 on 2016/08/23 by Steve.Robb
Alternative fix for CL# 3094886.
Change 3098080 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C28182: Dereferencing NULL pointer. 'PrimitiveComponent' contains the same NULL value as 'ReplacementComponent' did.
Change 3098102 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'IndexTermPtr'.
Change 3098148 on 2016/08/23 by Steve.Robb
Static analysis fixes:
warning C6011: Dereferencing NULL pointer 'Node'.
warning C6011: Dereferencing NULL pointer 'OldNode'.
warning C6011: Dereferencing NULL pointer 'LinkedPin'.
warning C6011: Dereferencing NULL pointer 'RootNode'.
Change 3098156 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'BTGraphNode'.
Change 3098176 on 2016/08/23 by Steve.Robb
Static analysis fixes: warning C6011: Dereferencing NULL pointer 'NewSection'.
Change 3098182 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'Sprite'.
Change 3098197 on 2016/08/23 by Steve.Robb
Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Node'.
Coding standards fixes.
Change 3098202 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'ExistingEventNode'.
Change 3098208 on 2016/08/23 by Steve.Robb
Static analysis fixes:
warning C28182: Dereferencing NULL pointer. 'Graph' contains the same NULL value as 'GraphNew' did.
warning C28182: Dereferencing NULL pointer. 'GoodGraph' contains the same NULL value as 'GraphNew' did.
Change 3098229 on 2016/08/23 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'Property'.
Change 3099188 on 2016/08/24 by Steve.Robb
Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SharedBaseClass'.
Change 3099195 on 2016/08/24 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'NodeProperty'.
Change 3099205 on 2016/08/24 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'VarDesc'.
Change 3099228 on 2016/08/24 by Steve.Robb
Spurious static analysis fix: warning C28182: Dereferencing NULL pointer. 'Node' contains the same NULL value as 'ParentNode' did.
Change 3099539 on 2016/08/24 by Steve.Robb
Spurious static analysis fixes:
warning C6011: Dereferencing NULL pointer 'InBlueprint'.
warning C28182: Dereferencing NULL pointer. 'TestObj' contains the same NULL value as 'TestOuter' did.
https://connect.microsoft.com/VisualStudio/feedback/details/3082362
https://connect.microsoft.com/VisualStudio/feedback/details/3082622
Change 3099546 on 2016/08/24 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'OldNode'.
Change 3099561 on 2016/08/24 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'ReferencedObject'.
Change 3099571 on 2016/08/24 by Steve.Robb
Static analysis fix: Dereferencing NULL pointer. 'ObjClass' contains the same NULL value as 'CommonBaseClass' did.
Change 3099600 on 2016/08/24 by Steve.Robb
Static analysis fix:
warning C6385: Reading invalid data from 'this->Packages': the readable size is '24' bytes, but '32' bytes may be read.
warning C6385: Reading invalid data from 'Diff.ObjectSets': the readable size is '24' bytes, but '32' bytes may be read.
warning C6386: Buffer overrun while writing to 'Objects': the writable size is '24' bytes, but '32' bytes might be written.
Change 3099912 on 2016/08/24 by Steve.Robb
Static analysis fixes: warning C6011: Dereferencing NULL pointer 'SharedBaseClass'.
Change 3099923 on 2016/08/24 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'ThumbnailInfo'.
Change 3100977 on 2016/08/25 by Steve.Robb
Static analysis fixes:
warning C6001: Using uninitialized memory '*VectorRef'.
warning C6001: Using uninitialized memory '*PointRef'.
warning C6001: Using uninitialized memory '*PolyRef'.
Coding standard fixes.
Change 3100985 on 2016/08/25 by Steve.Robb
Static analyis fix: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'.
Change 3100987 on 2016/08/25 by Steve.Robb
Static analysis fixes:
warning C28183: 'Resources.BitmapHandle' could be '0', and is a copy of the value found in 'CreateDIBSection()`829': this does not adhere to the specification for the function 'SelectObject'.
warning C6387: '_Param_(4)' could be '0': this does not adhere to the specification for the function 'CreateDIBSection'.
Change 3100992 on 2016/08/25 by Steve.Robb
Static analysis fix: warning C6287: Redundant code: the left and right sub-expressions are identical.
Change 3101000 on 2016/08/25 by Steve.Robb
Static analysis fixes:
warning C6001: Using uninitialized memory 'tmpMemReq'.
warning C6001: Using uninitialized memory 'TmpCreateInfo'.
Change 3101004 on 2016/08/25 by Steve.Robb
warning C28182: Dereferencing NULL pointer. 'FoliageActor' contains the same NULL value as 'Actor' did.
Change 3101009 on 2016/08/25 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'StaticMeshComponent'.
Change 3101115 on 2016/08/25 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'Canvas'.
Change 3101120 on 2016/08/25 by Steve.Robb
Fixes to previous fixes.
Change 3101128 on 2016/08/25 by Steve.Robb
Static analysis fixes: warning C6011: Dereferencing NULL pointer 'Stream'.
Change 3101281 on 2016/08/25 by Steve.Robb
Static analysis fixes:
warning C6262: Function uses '99256' bytes of stack: exceeds /analyze:stacksize '81940'. Consider moving some data to heap.
warning C6001: Using uninitialized memory 'Pixel'.
Change 3101292 on 2016/08/25 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'BulkDataPointer'.
Change 3101299 on 2016/08/25 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'UnrealMaterial'.
Change 3101300 on 2016/08/25 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'AssetObject'.
Change 3101304 on 2016/08/25 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'MeshRootNode'.
Change 3101311 on 2016/08/25 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'Cluster'.
Change 3101323 on 2016/08/25 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'StartNode'.
Change 3101329 on 2016/08/25 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'Object'.
Change 3101333 on 2016/08/25 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'ArrayRef'.
Change 3101339 on 2016/08/25 by Steve.Robb
Static analysis fixes:
warning C6011: Dereferencing NULL pointer 'ImportData'.
warning C6011: Dereferencing NULL pointer 'CurveToImport'.
Change 3101485 on 2016/08/25 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'ObjectProperty'.
Change 3101583 on 2016/08/25 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'UserDefinedStruct'.
Change 3105721 on 2016/08/30 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'SpawnClassPin'.
Change 3105724 on 2016/08/30 by Steven.Hutton
Change users page to more responsive paginated version.
Change 3105725 on 2016/08/30 by Steven.Hutton
Added field for crash processor failed
Change 3105786 on 2016/08/30 by Steve.Robb
Reintroduced missing operator<< for enum classes.
Change 3105803 on 2016/08/30 by Steve.Robb
Removal of obsolete code and state. PrepareCppStructOps() has several unreachable blocks, one of which sets UScriptStruct::bCppStructOpsFromBaseClass which is otherwise never true, so it can be removed too.
Change 3106251 on 2016/08/30 by Steve.Robb
Switch static analysis node to build editor instead of just the engine.
Change 3107556 on 2016/08/31 by Steven.Hutton
Added build version data from CRP to DB as part of add crash #rb none
Change 3107557 on 2016/08/31 by Steven.Hutton
Passed build version data to CRW through crash description #rb none
Change 3107634 on 2016/08/31 by Graeme.Thornton
Only accept "log=<filename>" and "abslog=<filename>" command line values if the filename has a "log" or "txt" extension
#jira UE-20147
Change 3107797 on 2016/08/31 by Steve.Robb
Fix for UHT debugging manifest, after paths changed in CL# 3088416.
Change 3107964 on 2016/08/31 by Steve.Robb
TCString::Strfind renamed to TCString::Strifind, as it is case-insensitive.
New case-sensitive TCString::Strfind added, based on GitHub PR #2453.
Change 3108023 on 2016/08/31 by Steve.Robb
Removal of test code which no longer compiles now that we emit errors on skipped preprocessor blocks.
Change 3108160 on 2016/08/31 by Steven.Hutton
Update to add new filter to website front page #rb none
Change 3109556 on 2016/09/01 by Steven.Hutton
Fixing compile warning #rb none
Change 3110001 on 2016/09/01 by Steve.Robb
PR #2468: Fix for UnrealHeaderTool TArray<TScriptInterface<>> UFUNCTION parameters (Contributed by UnrealEverything)
Change 3111835 on 2016/09/02 by Steve.Robb
Enforce uint8 on UENUM() enum classes.
#jira UE-35224
Change 3111867 on 2016/09/02 by Steve.Robb
Static analysis fix: warning C6236: (<expression> || <non-zero constant>) is always a non-zero constant.
Change 3111880 on 2016/09/02 by Steve.Robb
Static analysis fixes:
warning C6386: Buffer overrun while writing to 'Views': the writable size is 'ShaderBindings.ResourceViews.public: int __cdecl TArray<class TSlateD3DTypedShaderParameter<struct ID3D11ShaderResourceView> *,class FDefaultAllocator>::Num(void)const ()*8' bytes, but '16' bytes might be written.
warning C6386: Buffer overrun while writing to 'ConstantBuffers': the writable size is 'ShaderBindings.ConstantBuffers.public: int __cdecl TArray<class TSlateD3DTypedShaderParameter<struct ID3D11Buffer> *,class FDefaultAllocator>::Num(void)const ()*8' bytes, but '16' bytes might be written.
Change 3111886 on 2016/09/02 by Steve.Robb
Static analysis fix: warning C6386: Buffer overrun while writing to 'DistortionMeshIndices': the writable size is 'NumIndices*2' bytes, but '4' bytes might be written.
Change 3112025 on 2016/09/02 by Steve.Robb
Static analysis fix:
warning C6011: Dereferencing NULL pointer 'pInputProcessParameters'.
warning C6011: Dereferencing NULL pointer 'pOutputProcessParameters'.
Change 3112051 on 2016/09/02 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'Command'.
Change 3112066 on 2016/09/02 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'CurNetDriver'.
Change 3112093 on 2016/09/02 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'byteArray'.
Change 3112110 on 2016/09/02 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'PersistentParty'.
Change 3112123 on 2016/09/02 by Steve.Robb
Static analysis fixes:
warning C6011: Dereferencing NULL pointer 'CurDriver'.
warning C6011: Dereferencing NULL pointer 'CurNetDriver'.
warning C6011: Dereferencing NULL pointer 'CurWorld'.
Change 3112157 on 2016/09/02 by Steve.Robb
Static analysis fixes: warning C6011: Dereferencing NULL pointer 'UnitTest'.
Change 3112283 on 2016/09/02 by Steve.Robb
Static analysis fixes:
warning C6244: Local declaration of 'None' hides previous declaration at line '173' of 'netcodeunittest.h'.
Change 3113455 on 2016/09/05 by Chris.Wood
CRP performance improvements (v1.1.25)
Change 3113468 on 2016/09/05 by Steve.Robb
Reverting unnecessary merge in CL# 3112464.
Change 3113508 on 2016/09/05 by Steve.Robb
Static analysis fix: warning C6031: Return value ignored: 'CoCreateGuid'.
Change 3113588 on 2016/09/05 by Steve.Robb
Static analysis fix: warning C6244: Local declaration of 'hInstance' hides previous declaration
Change 3113863 on 2016/09/06 by Steve.Robb
Fix for this error:
Could not find a part of the path 'D:\Build\++UE4+Dev-Core+Compile\Sync\Engine\Plugins\2D\Paper2D\Binaries\Win64\UE4Editor.modules'.
Change 3113864 on 2016/09/06 by Steve.Robb
Misc static analysis fixes for VS2015 Update 2.
Change 3113918 on 2016/09/06 by Ben.Marsh
Explicitly check for version manifest existing before trying to delete it, rather than swallowing the exception.
Change 3114293 on 2016/09/06 by Steve.Robb
Static analysis fixes for Visual Studio Update 2.
Change 3115732 on 2016/09/07 by Steve.Robb
Static analysis fix: warning C6262: Function uses '121180' bytes of stack: exceeds /analyze:stacksize '81940'. Consider moving some data to heap.
Change 3115754 on 2016/09/07 by Steve.Robb
GObjectArrayForDebugVisualizers init order fix.
Removal of obsolete FName visualizer helper code.
Change 3115774 on 2016/09/07 by Steve.Robb
Fix for ICE by moving static variables into their own file and removing const return types.
#jira UE-35597
Change 3116061 on 2016/09/07 by Steve.Robb
Redundant LOCTEXT_NAMESPACE removed - was missed in CL# 3115774.
Change 3117478 on 2016/09/08 by Steve.Robb
Static analysis fixes in third party code, using a new macro-based system.
Change 3119152 on 2016/09/09 by Steve.Robb
TArray::RemoveAt and RemoveAtSwap with a bool Count is now a compile error.
Change 3119200 on 2016/09/09 by Steve.Robb
Fix for destructors not being called in TSparseArray move assignment.
Change 3119568 on 2016/09/09 by Steve.Robb
Fix for TSparseArray visualizer.
Change 3119591 on 2016/09/09 by Steve.Robb
New MakeShared function which allocates the object and reference controller in a single block.
Change 3120281 on 2016/09/09 by Steve.Robb
Fix for ICE on static analysis build.
#jira UE-35596
Change 3120786 on 2016/09/12 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'SavedGame'.
Change 3120787 on 2016/09/12 by Steve.Robb
Removal of TEnumAsByte on enum classes.
Change 3120789 on 2016/09/12 by Steve.Robb
Static analysis fixes:
warning C6385: Reading invalid data from 'D3D11X_CERAM_OFFSET_BY_SET_STAGE': the readable size is '28' bytes, but '64' bytes may be read.
warning C6101: Returning uninitialized memory '*pDescriptorDst'. A successful path through the function does not set the named _Out_ parameter.
Change 3121234 on 2016/09/12 by Steve.Robb
Unused ToBuildInfoString function declaration removed.
Change 3122616 on 2016/09/13 by Steve.Robb
Static analysis fix: warning C6011: Dereferencing NULL pointer 'Compiler'.
Change 3123070 on 2016/09/13 by Steve.Robb
Static analysis fix: warning C28182: Dereferencing NULL pointer. 'top' contains the same NULL value as 'edge' did.
[CL 3126145 by Robert Manuszewski in Main branch]
2016-09-15 00:21:42 -04:00
|
|
|
check(CurrentPin);
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
if (CurrentPin != OutputPin)
|
|
|
|
|
{
|
2015-03-10 18:34:29 -04:00
|
|
|
// sub pins will be updated by their parent pin, so if we have a parent pin just do nothing
|
|
|
|
|
if (CurrentPin->ParentPin == nullptr)
|
|
|
|
|
{
|
|
|
|
|
bWantRefresh = true;
|
|
|
|
|
|
|
|
|
|
// if we've reset to wild card or the parentpin no longer matches we need to collapse the split pin(s)
|
|
|
|
|
// otherwise everything should be OK:
|
|
|
|
|
if (CurrentPin->SubPins.Num() != 0 &&
|
|
|
|
|
( CurrentPin->PinType.PinCategory != OutputPin->PinType.PinCategory ||
|
|
|
|
|
CurrentPin->PinType.PinSubCategory != OutputPin->PinType.PinSubCategory ||
|
|
|
|
|
CurrentPin->PinType.PinSubCategoryObject != OutputPin->PinType.PinSubCategoryObject )
|
|
|
|
|
)
|
|
|
|
|
{
|
|
|
|
|
// this is a little dicey, but should be fine.. relies on the fact that RecombinePin will only remove pins that
|
|
|
|
|
// are placed after CurrentPin in the Pins member:
|
|
|
|
|
Schema->RecombinePin(CurrentPin->SubPins[0]);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
CurrentPin->PinType.PinCategory = OutputPin->PinType.PinCategory;
|
|
|
|
|
CurrentPin->PinType.PinSubCategory = OutputPin->PinType.PinSubCategory;
|
|
|
|
|
CurrentPin->PinType.PinSubCategoryObject = OutputPin->PinType.PinSubCategoryObject;
|
|
|
|
|
}
|
2014-03-14 14:13:41 -04:00
|
|
|
|
2014-11-17 09:46:35 -05:00
|
|
|
if (CurrentPin->PinType.PinCategory == UEdGraphSchema_K2::PC_Wildcard)
|
|
|
|
|
{
|
|
|
|
|
CurrentPin->ResetDefaultValue();
|
|
|
|
|
}
|
2014-11-26 18:11:01 -05:00
|
|
|
else if (CurrentPin->GetDefaultAsString().IsEmpty() == true)
|
2014-11-17 09:46:35 -05:00
|
|
|
{
|
2014-11-26 18:11:01 -05:00
|
|
|
// Only reset default value if there isn't one set. Otherwise this deletes data!
|
2014-11-17 09:46:35 -05:00
|
|
|
Schema->SetPinDefaultValueBasedOnType(CurrentPin);
|
|
|
|
|
}
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
// Verify that all previous connections to this pin are still valid with the new type
|
|
|
|
|
for (TArray<UEdGraphPin*>::TIterator ConnectionIt(CurrentPin->LinkedTo); ConnectionIt; ++ConnectionIt)
|
|
|
|
|
{
|
|
|
|
|
UEdGraphPin* ConnectedPin = *ConnectionIt;
|
|
|
|
|
if (!Schema->ArePinsCompatible(CurrentPin, ConnectedPin, CallingContext))
|
|
|
|
|
{
|
|
|
|
|
CurrentPin->BreakLinkTo(ConnectedPin);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
// If we have a valid graph we should refresh it now to refelect any changes we made
|
|
|
|
|
if( (bWantRefresh == true ) && ( OutputPin->GetOwningNode() != NULL ) && ( OutputPin->GetOwningNode()->GetGraph() != NULL ) )
|
|
|
|
|
{
|
|
|
|
|
OutputPin->GetOwningNode()->GetGraph()->NotifyGraphChanged();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
UFunction* UK2Node_MakeArray::GetArrayClearFunction() const
|
|
|
|
|
{
|
|
|
|
|
UClass* ArrayLibClass = UKismetArrayLibrary::StaticClass();
|
|
|
|
|
UFunction* ReturnFunction = ArrayLibClass->FindFunctionByName(FName(TEXT("Array_Clear")));
|
|
|
|
|
check(ReturnFunction);
|
|
|
|
|
return ReturnFunction;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
UFunction* UK2Node_MakeArray::GetArrayAddFunction() const
|
|
|
|
|
{
|
|
|
|
|
UClass* ArrayLibClass = UKismetArrayLibrary::StaticClass();
|
|
|
|
|
UFunction* ReturnFunction = ArrayLibClass->FindFunctionByName(FName(TEXT("Array_Add")));
|
|
|
|
|
check(ReturnFunction);
|
|
|
|
|
return ReturnFunction;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void UK2Node_MakeArray::PostReconstructNode()
|
|
|
|
|
{
|
|
|
|
|
// Find a pin that has connections to use to jumpstart the wildcard process
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2927746 on 2016/03/30 by Michael.Schoell
Local variables in function graphs will now store a hard reference to their UObject value.
Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint.
#jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native
Change 2927751 on 2016/03/30 by Michael.Schoell
Back out changelist 2927746
Change 2986483 on 2016/05/23 by Maciej.Mroz
#jira UE-30976 Editable enum values set on an instance are lost during nativization
Added overriden names of Enum keys.
Change 2986712 on 2016/05/23 by Phillip.Kavan
[UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class.
change summary:
- modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root.
Change 2987406 on 2016/05/23 by Ryan.Rauschkolb
Fixed Functions filter in Find-In-Blueprints will show components from the SCS
#jira UE-30140
Change 2988925 on 2016/05/24 by Ryan.Rauschkolb
Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph.
#jira UE-20232
Change 2989001 on 2016/05/24 by Dan.Oconnor
PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner)
#jira UE-31142
Change 2989447 on 2016/05/25 by Phillip.Kavan
[UE-30807] Propagate edit condition property value changes to instances of template objects.
change summary:
- modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO)
Change 2989804 on 2016/05/25 by Phillip.Kavan
[UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class.
change summary:
- modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component
Change 2990234 on 2016/05/25 by Ryan.Rauschkolb
Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph
#jira UE-4426
Change 2990566 on 2016/05/25 by Mike.Beach
Better warn logging to help locate variable nodes that emit a "variable not found" message.
Change 2991083 on 2016/05/26 by Maciej.Mroz
Blueprint nativization: converted classes have "config" specified.
Change 2991363 on 2016/05/26 by Phillip.Kavan
[UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components.
change summary:
- modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text
- modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed)
- modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass
- modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects
Change 2992990 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node
#jira UE-21973
Change 2992995 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked.
#jira UE-30990
Change 2993449 on 2016/05/27 by Phillip.Kavan
[UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing.
change summary:
- modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type.
Change 2993531 on 2016/05/27 by Mike.Beach
PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell)
Change 2993969 on 2016/05/30 by Maciej.Mroz
UE-30729 Crash in Native Orion when selecting Sword or Tomahawk
Clear AsyncLoading in subobjects.
Change 2993990 on 2016/05/30 by Phillip.Kavan
[UE-30984] Exclude reroute nodes from Blueprint profiler node mapping.
change summary:
- modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links.
- modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links.
- modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points.
- modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points.
Change 2994591 on 2016/05/31 by Ryan.Rauschkolb
Fixed issue where inherited Blueprint variable would not show parent's replications settings
#jira UE-18912
Change 2994613 on 2016/05/31 by Ben.Cosh
Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal.
#Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher
#Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy
#Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler
#Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab
#Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status
#Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented
#Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out
#Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean"
#Jira UE-31377 - BP Profiler - Default tree view filtering to off
#Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP
#Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)"
Notes:-
- Sequence node inclusive time fixed
- Trace History tidy up
- Compile Icon and status messages for instrumentation
- Message in the profiler tab for instrumentation
- Profiler view tidy up and heat thresholds controls added
- fixed the summed execution branch stats
- fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396
- added hottest path and hottest endpoint wire heatmaps
- switched off the graph filter by default
- added total time for the heatmaps
- fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code
Change 2995058 on 2016/05/31 by Phillip.Kavan
[UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running.
change summary:
- modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class.
- modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context.
Change 2995218 on 2016/05/31 by Phillip.Kavan
[UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size.
change summary:
- modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout.
Change 2996417 on 2016/06/01 by Phillip.Kavan
[UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor.
change summary:
- modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object.
Change 2997001 on 2016/06/01 by Ryan.Rauschkolb
Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component
#jira UE-30143
Change 2997521 on 2016/06/02 by Maciej.Mroz
[Blueprint Nativization]
- Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h
- Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated.
Change 2997522 on 2016/06/02 by Maciej.Mroz
Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization)
Change 2997638 on 2016/06/02 by Maciej.Mroz
Improvements for Blueprint Nativization:
- Overridden names in nativized code have proper escape characters (in generated code).
- OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared
- Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>)
- warning C4883 is disabled in .generated.cpp files for nativized module
Change 2997639 on 2016/06/02 by Maciej.Mroz
Minor improvements in Ocean gameplay code. Required for Blueprint Nativization.
#jira UE-28945 Failure packaging Nativized Ocean
Change 2997656 on 2016/06/02 by Maciej.Mroz
Various improvements in BlueprintCompilerCppBackend:
- Fixed interface cast
- Fixed TSwitchValue issue (when used with literals)
- Fixed improper name for NativeBlueprintEvent (when calling parent's implementation)
- Fixed bitfield getter code.
- Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums)
- operator == is generated for nativized structs
- Fixed AssedId (AssetPtr) constructor in nativized code.
- Fixed arrays of noexport struct
- Fixed missing headers for native single cast delegate signature.
- Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata.
Change 2997691 on 2016/06/02 by Maciej.Mroz
operator == in FText. It is required for some functions in TArray<FText>
Change 2997793 on 2016/06/02 by Ben.Cosh
Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter
#Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh
#Proj BlueprintProfiler, Kismet
Change 2997901 on 2016/06/02 by Maciej.Mroz
Back out changelist 2997691
Change 2998038 on 2016/06/02 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 2998052 on 2016/06/02 by Ryan.Rauschkolb
Fixed Comment bubbles not remembering changes after losing focus
#jira UE-20012
Change 2998450 on 2016/06/02 by Phillip.Kavan
[UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata.
change summary:
- modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it.
Change 2999763 on 2016/06/03 by Mike.Beach
Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes.
#jira UE-26761
Change 2999768 on 2016/06/03 by Maciej.Mroz
#jira UE-31592, UE-31593
This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty.
Change 2999770 on 2016/06/03 by Maciej.Mroz
[Blueprint Nativization]
Workaround for missing ==operator in native structures. The generated code uses special version of array funtions.
Change 2999798 on 2016/06/03 by Mike.Beach
Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor.
#jira UE-31522
Change 2999941 on 2016/06/03 by Mike.Beach
Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning).
#jira UE-23371
Change 3001731 on 2016/06/06 by Phillip.Kavan
[UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target.
change summary:
- modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events.
- modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field.
- modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals.
- modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events.
Change 3002075 on 2016/06/06 by Maciej.Mroz
Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend.
Literal expression can be emitted without known desitination property.
#jira UE-28443 Set Boolean (by ref) crashes the editor on compile
Change 3002096 on 2016/06/06 by Ben.Cosh
This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs.
#Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called
#Proj BlueprintProfiler
Change 3002108 on 2016/06/06 by Ben.Cosh
Adds a new default option to average the blueprint level stats in the profiler.
#Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged
#Proj Kismet, BlueprintProfiler
- The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward.
Change 3002782 on 2016/06/06 by samuel.proctor
Test assets for Interface testing
Change 3003826 on 2016/06/07 by Ben.Cosh
A few minor visual improvements for the blueprint profiler.
#Proj Kismet, BlueprintProfiler, EditorStyle
- Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors.
- Updated the pure node icon.
Change 3004067 on 2016/06/07 by samuel.proctor
New test asset for blueprint interfaces
Change 3004069 on 2016/06/07 by samuel.proctor
Updating asset for Interface testing
Change 3004275 on 2016/06/07 by Ryan.Rauschkolb
Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility
#jira UE-23733
Change 3004329 on 2016/06/07 by Dan.Oconnor
EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced.
Change 3004418 on 2016/06/07 by Maciej.Mroz
KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value.
Change 3004496 on 2016/06/07 by Dan.Oconnor
Disabling expensive pin allocation tracking
Change 3004649 on 2016/06/07 by Mike.Beach
Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors).
#jira UE-31236
Change 3004667 on 2016/06/07 by Dan.Oconnor
Removed my debugging logic
Change 3004848 on 2016/06/07 by Dan.Oconnor
Fix spammy ensure
Change 3004871 on 2016/06/07 by Phillip.Kavan
[UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view.
change summary:
- modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO).
- modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts.
Change 3005203 on 2016/06/07 by Dan.Oconnor
Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems
#jira UE-31750
Change 3005441 on 2016/06/08 by Maciej.Mroz
#jira UE-31625 Crash in nativized Orion
AssembleReferenceTokenStream is called for Dynamic Classes:
- in ConstructDynamicType() (when class is explicitly loaded)
- in __CustomDynamicClassInitialization() (when CDO is created)
Change 3005540 on 2016/06/08 by Ben.Cosh
This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring.
#Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE
#Proj BlueprintProfiler, Kismet
- The jira was already fixed but I think this change improves the instance status clarity
Change 3006196 on 2016/06/08 by Dan.Oconnor
Copy/paste logic for pin connections got lost in the shuffle
#jira UE-31747
Change 3006416 on 2016/06/08 by Phillip.Kavan
[UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order).
change summary:
- modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load.
Change 3006522 on 2016/06/08 by Dan.Oconnor
Under rare circumstances a deprecated pin comes in that is outered to the transient package
#jira UE-31779
Change 3006576 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
#jira UE-31796
Change 3006610 on 2016/06/08 by Phillip.Kavan
[UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance.
change summary:
- modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO.
Change 3006824 on 2016/06/08 by Dan.Oconnor
More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays
#jira UE-31794
Change 3006828 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
Change 3006857 on 2016/06/08 by Dan.Oconnor
Investigating shutdown ensure, traced back to a static UEdGraphPin
Change 3006907 on 2016/06/08 by Dan.Oconnor
Noneditor build fix
Change 3006929 on 2016/06/08 by Dan.Oconnor
Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779
Change 3007133 on 2016/06/09 by Ben.Cosh
Fix for issue in the profiler asserting creating pins that don't have unique names.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
- I believe this was recently introduced with the changes to UEdGraphPin's
Change 3007964 on 2016/06/09 by Dan.Oconnor
Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo
#jira UE-31829
Change 3007996 on 2016/06/09 by Ryan.Rauschkolb
Added 'empty' keyword to Array Clear Node.
#jira UE-12356
Change 3008007 on 2016/06/09 by Ryan.Rauschkolb
Added 'negate' keyword to boolean NOT node
#jira UE-12490
Change 3008011 on 2016/06/09 by Ryan.Rauschkolb
Added Vector2D * Vector2D multiplication node
#jira UE-31503
Change 3008014 on 2016/06/09 by Ryan.Rauschkolb
Fixed Cannot connect Make Array node output to MakeArray input with split pins
#jira UE-28530
Change 3008243 on 2016/06/09 by Dan.Oconnor
Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe'
#jira UE-31841
Change 3008289 on 2016/06/09 by Dan.Oconnor
Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later
#jira UE-31794
Change 3008422 on 2016/06/09 by Dan.Oconnor
Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out)
#jira UE-31857
Change 3009164 on 2016/06/10 by Ryan.Rauschkolb
Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel.
#jira UE-21141,UE-23723
Change 3009165 on 2016/06/10 by Ryan.Rauschkolb
Fixed Structure Default value editor collapses after undoing an alteration of a default value
#jira UE-31741
Change 3009181 on 2016/06/10 by Ryan.Rauschkolb
Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh
#jira UE-30014
Change 3009313 on 2016/06/10 by Mike.Beach
Addressing issues with function return nodes in multiple ways:
- Preventing users from deleting return nodes for overriden/inherited functions.
- Also making sure that we create terminals for out params when the return node is disconnected (and pruned).
- Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function).
#jira UE-31418
Change 3009595 on 2016/06/10 by Dan.Oconnor
EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile
#jira UE-31879
Change 3009774 on 2016/06/10 by Dan.Oconnor
Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return
#jira UE-31906
Change 3009988 on 2016/06/10 by Dan.Oconnor
Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization
#jira UE-31888
Change 3010050 on 2016/06/10 by Dan.Oconnor
Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved
#jira UE-31892
Change 3010071 on 2016/06/10 by Dan.Oconnor
Fix for pasting when owning node has whitespace in result of GetPathName
#jira UE-31898
#coderview Bob.Tellez
Change 3010244 on 2016/06/11 by Dan.Oconnor
Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870
Change 3010630 on 2016/06/13 by Dan.Oconnor
No longer relying on path name for pin resolution, path is unstable across graphs
#jira UE-31870
Change 3010647 on 2016/06/13 by Dan.Oconnor
PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays)
#jira UE-31928
Change 3011175 on 2016/06/13 by Ben.Cosh
Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance.
#Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert
#Proj Kismet, BlueprintProfiler
- Ensured that the trace paths contain the macro instance exec nodes
- Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates.
- Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does.
Change 3011271 on 2016/06/13 by Ben.Cosh
This adds support for inherited blueprint classes to the blueprint profiler.
#Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
Change 3011556 on 2016/06/13 by Ryan.Rauschkolb
Fixed Crash when breaking link to a split pin in MakeArray that is an array type
#jira UE-31919
Change 3011624 on 2016/06/13 by Dan.Oconnor
Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating.
#jira UE-31955
Change 3011984 on 2016/06/13 by Dan.Oconnor
Sanitizing parentpin's subpins when destroying a pin
#jira UE-21392
Change 3012894 on 2016/06/14 by Phillip.Kavan
[UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing.
change summary:
- modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types.
#jira UE-30922
Change 3013037 on 2016/06/14 by Ryan.Rauschkolb
Fixed Crash when connecting to a split pin in a MakeArray node that has no connections
#jira UE-31917
Change 3014846 on 2016/06/15 by Dan.Oconnor
No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change)
#jira FORT-23753
Change 3015014 on 2016/06/15 by Dan.Oconnor
Removing poorly implement IsLetter function
Change 3015142 on 2016/06/15 by Dan.Oconnor
More intentional about removing subpins, prevents stale iterator on split pin collapse
#jira UE-32072
Change 3016326 on 2016/06/16 by Ryan.Rauschkolb
Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values
#jira UE-32016
Change 3016494 on 2016/06/16 by Ryan.Rauschkolb
Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class
#jira UE-31876
Change 3016557 on 2016/06/16 by Dan.Oconnor
Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark
#jira FORT-23753
Change 3016577 on 2016/06/16 by Ryan.Rauschkolb
Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType
Change 3016906 on 2016/06/16 by Dan.Oconnor
Back out changelist 3016557
This will be done by Jamie.Dale in Dev-Editor
Change 3018081 on 2016/06/17 by Phillip.Kavan
[UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus)
#jira UE-31832
Change 3018402 on 2016/06/17 by Dan.Oconnor
Missing include
Change 3018426 on 2016/06/17 by Ryan.Rauschkolb
Fixed MakeArray node with split pins and no connections does not paste correctly
#jira UE-32148
Change 3018452 on 2016/06/17 by Mike.Beach
Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load).
#jira UE-32158
Change 3018456 on 2016/06/17 by Dan.Oconnor
Fix for static analysis warning, this null check does nothing
Change 3018595 on 2016/06/17 by Mike.Beach
Fix for shadowed variable warning in CIS.
Change 3018699 on 2016/06/17 by Mike.Beach
Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing).
Change 3019734 on 2016/06/20 by Phillip.Kavan
[UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes.
change summary:
- added a UK2Node_AddComponent::PostDuplicate() override
- moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides.
notes:
- will prevent getting into the scenario described in UE-31831
#jira UE-32064
Change 3020635 on 2016/06/20 by Dan.Oconnor
Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile)
Change 3020894 on 2016/06/21 by Maciej.Mroz
#2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell)
Change 3020958 on 2016/06/21 by Ben.Cosh
This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling.
#Jira UE-32270 - Input key events generate extra instrumentation data per key press
#Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation.
#Proj BlueprintProfiler, UnrealEd
Change 3021316 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where Copy/Paste of event nodes would not retain link information
Change 3021826 on 2016/06/21 by Phillip.Kavan
[UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object.
change summary:
- added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API
- modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates
#jira UE-31831
Change 3022047 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where copy/paste of return nodes would not preserve value or link data
#jira UE-26937
Change 3022619 on 2016/06/22 by Maciej.Mroz
#jira UE-30858 Nativized Orion - Some particle effects are not rendering
A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added.
It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry.
Fixed GameplayCueManager. Nativized cues can be found.
This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage).
Change 3022654 on 2016/06/22 by Maciej.Mroz
FBackendHelperStaticSearchableValues -fixed too strict ensure
Change 3023067 on 2016/06/22 by Maciej.Mroz
#jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project
Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor.
Change 3023222 on 2016/06/22 by Ryan.Rauschkolb
Fixed MakeArray node elements break when editing struct elements
#jira UE-21392
Change 3023405 on 2016/06/22 by Mike.Beach
Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran).
#jira UE-31897
Change 3023992 on 2016/06/22 by Mike.Beach
Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions.
#jira UE-31859
[CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
|
|
|
bool bResetToWildcard = true;
|
2014-03-14 14:13:41 -04:00
|
|
|
for (int32 PinIndex = 0; PinIndex < Pins.Num(); ++PinIndex)
|
|
|
|
|
{
|
|
|
|
|
if (Pins[PinIndex]->LinkedTo.Num() > 0)
|
|
|
|
|
{
|
|
|
|
|
// The pin is linked, continue to use its type as the type for all pins.
|
|
|
|
|
|
|
|
|
|
// Update the types on all the pins
|
|
|
|
|
UEdGraphPin* OutputPin = GetOutputPin();
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2927746 on 2016/03/30 by Michael.Schoell
Local variables in function graphs will now store a hard reference to their UObject value.
Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint.
#jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native
Change 2927751 on 2016/03/30 by Michael.Schoell
Back out changelist 2927746
Change 2986483 on 2016/05/23 by Maciej.Mroz
#jira UE-30976 Editable enum values set on an instance are lost during nativization
Added overriden names of Enum keys.
Change 2986712 on 2016/05/23 by Phillip.Kavan
[UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class.
change summary:
- modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root.
Change 2987406 on 2016/05/23 by Ryan.Rauschkolb
Fixed Functions filter in Find-In-Blueprints will show components from the SCS
#jira UE-30140
Change 2988925 on 2016/05/24 by Ryan.Rauschkolb
Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph.
#jira UE-20232
Change 2989001 on 2016/05/24 by Dan.Oconnor
PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner)
#jira UE-31142
Change 2989447 on 2016/05/25 by Phillip.Kavan
[UE-30807] Propagate edit condition property value changes to instances of template objects.
change summary:
- modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO)
Change 2989804 on 2016/05/25 by Phillip.Kavan
[UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class.
change summary:
- modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component
Change 2990234 on 2016/05/25 by Ryan.Rauschkolb
Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph
#jira UE-4426
Change 2990566 on 2016/05/25 by Mike.Beach
Better warn logging to help locate variable nodes that emit a "variable not found" message.
Change 2991083 on 2016/05/26 by Maciej.Mroz
Blueprint nativization: converted classes have "config" specified.
Change 2991363 on 2016/05/26 by Phillip.Kavan
[UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components.
change summary:
- modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text
- modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed)
- modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass
- modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects
Change 2992990 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node
#jira UE-21973
Change 2992995 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked.
#jira UE-30990
Change 2993449 on 2016/05/27 by Phillip.Kavan
[UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing.
change summary:
- modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type.
Change 2993531 on 2016/05/27 by Mike.Beach
PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell)
Change 2993969 on 2016/05/30 by Maciej.Mroz
UE-30729 Crash in Native Orion when selecting Sword or Tomahawk
Clear AsyncLoading in subobjects.
Change 2993990 on 2016/05/30 by Phillip.Kavan
[UE-30984] Exclude reroute nodes from Blueprint profiler node mapping.
change summary:
- modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links.
- modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links.
- modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points.
- modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points.
Change 2994591 on 2016/05/31 by Ryan.Rauschkolb
Fixed issue where inherited Blueprint variable would not show parent's replications settings
#jira UE-18912
Change 2994613 on 2016/05/31 by Ben.Cosh
Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal.
#Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher
#Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy
#Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler
#Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab
#Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status
#Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented
#Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out
#Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean"
#Jira UE-31377 - BP Profiler - Default tree view filtering to off
#Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP
#Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)"
Notes:-
- Sequence node inclusive time fixed
- Trace History tidy up
- Compile Icon and status messages for instrumentation
- Message in the profiler tab for instrumentation
- Profiler view tidy up and heat thresholds controls added
- fixed the summed execution branch stats
- fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396
- added hottest path and hottest endpoint wire heatmaps
- switched off the graph filter by default
- added total time for the heatmaps
- fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code
Change 2995058 on 2016/05/31 by Phillip.Kavan
[UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running.
change summary:
- modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class.
- modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context.
Change 2995218 on 2016/05/31 by Phillip.Kavan
[UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size.
change summary:
- modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout.
Change 2996417 on 2016/06/01 by Phillip.Kavan
[UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor.
change summary:
- modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object.
Change 2997001 on 2016/06/01 by Ryan.Rauschkolb
Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component
#jira UE-30143
Change 2997521 on 2016/06/02 by Maciej.Mroz
[Blueprint Nativization]
- Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h
- Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated.
Change 2997522 on 2016/06/02 by Maciej.Mroz
Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization)
Change 2997638 on 2016/06/02 by Maciej.Mroz
Improvements for Blueprint Nativization:
- Overridden names in nativized code have proper escape characters (in generated code).
- OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared
- Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>)
- warning C4883 is disabled in .generated.cpp files for nativized module
Change 2997639 on 2016/06/02 by Maciej.Mroz
Minor improvements in Ocean gameplay code. Required for Blueprint Nativization.
#jira UE-28945 Failure packaging Nativized Ocean
Change 2997656 on 2016/06/02 by Maciej.Mroz
Various improvements in BlueprintCompilerCppBackend:
- Fixed interface cast
- Fixed TSwitchValue issue (when used with literals)
- Fixed improper name for NativeBlueprintEvent (when calling parent's implementation)
- Fixed bitfield getter code.
- Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums)
- operator == is generated for nativized structs
- Fixed AssedId (AssetPtr) constructor in nativized code.
- Fixed arrays of noexport struct
- Fixed missing headers for native single cast delegate signature.
- Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata.
Change 2997691 on 2016/06/02 by Maciej.Mroz
operator == in FText. It is required for some functions in TArray<FText>
Change 2997793 on 2016/06/02 by Ben.Cosh
Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter
#Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh
#Proj BlueprintProfiler, Kismet
Change 2997901 on 2016/06/02 by Maciej.Mroz
Back out changelist 2997691
Change 2998038 on 2016/06/02 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 2998052 on 2016/06/02 by Ryan.Rauschkolb
Fixed Comment bubbles not remembering changes after losing focus
#jira UE-20012
Change 2998450 on 2016/06/02 by Phillip.Kavan
[UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata.
change summary:
- modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it.
Change 2999763 on 2016/06/03 by Mike.Beach
Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes.
#jira UE-26761
Change 2999768 on 2016/06/03 by Maciej.Mroz
#jira UE-31592, UE-31593
This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty.
Change 2999770 on 2016/06/03 by Maciej.Mroz
[Blueprint Nativization]
Workaround for missing ==operator in native structures. The generated code uses special version of array funtions.
Change 2999798 on 2016/06/03 by Mike.Beach
Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor.
#jira UE-31522
Change 2999941 on 2016/06/03 by Mike.Beach
Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning).
#jira UE-23371
Change 3001731 on 2016/06/06 by Phillip.Kavan
[UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target.
change summary:
- modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events.
- modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field.
- modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals.
- modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events.
Change 3002075 on 2016/06/06 by Maciej.Mroz
Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend.
Literal expression can be emitted without known desitination property.
#jira UE-28443 Set Boolean (by ref) crashes the editor on compile
Change 3002096 on 2016/06/06 by Ben.Cosh
This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs.
#Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called
#Proj BlueprintProfiler
Change 3002108 on 2016/06/06 by Ben.Cosh
Adds a new default option to average the blueprint level stats in the profiler.
#Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged
#Proj Kismet, BlueprintProfiler
- The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward.
Change 3002782 on 2016/06/06 by samuel.proctor
Test assets for Interface testing
Change 3003826 on 2016/06/07 by Ben.Cosh
A few minor visual improvements for the blueprint profiler.
#Proj Kismet, BlueprintProfiler, EditorStyle
- Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors.
- Updated the pure node icon.
Change 3004067 on 2016/06/07 by samuel.proctor
New test asset for blueprint interfaces
Change 3004069 on 2016/06/07 by samuel.proctor
Updating asset for Interface testing
Change 3004275 on 2016/06/07 by Ryan.Rauschkolb
Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility
#jira UE-23733
Change 3004329 on 2016/06/07 by Dan.Oconnor
EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced.
Change 3004418 on 2016/06/07 by Maciej.Mroz
KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value.
Change 3004496 on 2016/06/07 by Dan.Oconnor
Disabling expensive pin allocation tracking
Change 3004649 on 2016/06/07 by Mike.Beach
Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors).
#jira UE-31236
Change 3004667 on 2016/06/07 by Dan.Oconnor
Removed my debugging logic
Change 3004848 on 2016/06/07 by Dan.Oconnor
Fix spammy ensure
Change 3004871 on 2016/06/07 by Phillip.Kavan
[UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view.
change summary:
- modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO).
- modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts.
Change 3005203 on 2016/06/07 by Dan.Oconnor
Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems
#jira UE-31750
Change 3005441 on 2016/06/08 by Maciej.Mroz
#jira UE-31625 Crash in nativized Orion
AssembleReferenceTokenStream is called for Dynamic Classes:
- in ConstructDynamicType() (when class is explicitly loaded)
- in __CustomDynamicClassInitialization() (when CDO is created)
Change 3005540 on 2016/06/08 by Ben.Cosh
This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring.
#Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE
#Proj BlueprintProfiler, Kismet
- The jira was already fixed but I think this change improves the instance status clarity
Change 3006196 on 2016/06/08 by Dan.Oconnor
Copy/paste logic for pin connections got lost in the shuffle
#jira UE-31747
Change 3006416 on 2016/06/08 by Phillip.Kavan
[UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order).
change summary:
- modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load.
Change 3006522 on 2016/06/08 by Dan.Oconnor
Under rare circumstances a deprecated pin comes in that is outered to the transient package
#jira UE-31779
Change 3006576 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
#jira UE-31796
Change 3006610 on 2016/06/08 by Phillip.Kavan
[UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance.
change summary:
- modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO.
Change 3006824 on 2016/06/08 by Dan.Oconnor
More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays
#jira UE-31794
Change 3006828 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
Change 3006857 on 2016/06/08 by Dan.Oconnor
Investigating shutdown ensure, traced back to a static UEdGraphPin
Change 3006907 on 2016/06/08 by Dan.Oconnor
Noneditor build fix
Change 3006929 on 2016/06/08 by Dan.Oconnor
Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779
Change 3007133 on 2016/06/09 by Ben.Cosh
Fix for issue in the profiler asserting creating pins that don't have unique names.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
- I believe this was recently introduced with the changes to UEdGraphPin's
Change 3007964 on 2016/06/09 by Dan.Oconnor
Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo
#jira UE-31829
Change 3007996 on 2016/06/09 by Ryan.Rauschkolb
Added 'empty' keyword to Array Clear Node.
#jira UE-12356
Change 3008007 on 2016/06/09 by Ryan.Rauschkolb
Added 'negate' keyword to boolean NOT node
#jira UE-12490
Change 3008011 on 2016/06/09 by Ryan.Rauschkolb
Added Vector2D * Vector2D multiplication node
#jira UE-31503
Change 3008014 on 2016/06/09 by Ryan.Rauschkolb
Fixed Cannot connect Make Array node output to MakeArray input with split pins
#jira UE-28530
Change 3008243 on 2016/06/09 by Dan.Oconnor
Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe'
#jira UE-31841
Change 3008289 on 2016/06/09 by Dan.Oconnor
Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later
#jira UE-31794
Change 3008422 on 2016/06/09 by Dan.Oconnor
Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out)
#jira UE-31857
Change 3009164 on 2016/06/10 by Ryan.Rauschkolb
Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel.
#jira UE-21141,UE-23723
Change 3009165 on 2016/06/10 by Ryan.Rauschkolb
Fixed Structure Default value editor collapses after undoing an alteration of a default value
#jira UE-31741
Change 3009181 on 2016/06/10 by Ryan.Rauschkolb
Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh
#jira UE-30014
Change 3009313 on 2016/06/10 by Mike.Beach
Addressing issues with function return nodes in multiple ways:
- Preventing users from deleting return nodes for overriden/inherited functions.
- Also making sure that we create terminals for out params when the return node is disconnected (and pruned).
- Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function).
#jira UE-31418
Change 3009595 on 2016/06/10 by Dan.Oconnor
EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile
#jira UE-31879
Change 3009774 on 2016/06/10 by Dan.Oconnor
Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return
#jira UE-31906
Change 3009988 on 2016/06/10 by Dan.Oconnor
Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization
#jira UE-31888
Change 3010050 on 2016/06/10 by Dan.Oconnor
Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved
#jira UE-31892
Change 3010071 on 2016/06/10 by Dan.Oconnor
Fix for pasting when owning node has whitespace in result of GetPathName
#jira UE-31898
#coderview Bob.Tellez
Change 3010244 on 2016/06/11 by Dan.Oconnor
Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870
Change 3010630 on 2016/06/13 by Dan.Oconnor
No longer relying on path name for pin resolution, path is unstable across graphs
#jira UE-31870
Change 3010647 on 2016/06/13 by Dan.Oconnor
PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays)
#jira UE-31928
Change 3011175 on 2016/06/13 by Ben.Cosh
Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance.
#Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert
#Proj Kismet, BlueprintProfiler
- Ensured that the trace paths contain the macro instance exec nodes
- Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates.
- Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does.
Change 3011271 on 2016/06/13 by Ben.Cosh
This adds support for inherited blueprint classes to the blueprint profiler.
#Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
Change 3011556 on 2016/06/13 by Ryan.Rauschkolb
Fixed Crash when breaking link to a split pin in MakeArray that is an array type
#jira UE-31919
Change 3011624 on 2016/06/13 by Dan.Oconnor
Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating.
#jira UE-31955
Change 3011984 on 2016/06/13 by Dan.Oconnor
Sanitizing parentpin's subpins when destroying a pin
#jira UE-21392
Change 3012894 on 2016/06/14 by Phillip.Kavan
[UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing.
change summary:
- modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types.
#jira UE-30922
Change 3013037 on 2016/06/14 by Ryan.Rauschkolb
Fixed Crash when connecting to a split pin in a MakeArray node that has no connections
#jira UE-31917
Change 3014846 on 2016/06/15 by Dan.Oconnor
No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change)
#jira FORT-23753
Change 3015014 on 2016/06/15 by Dan.Oconnor
Removing poorly implement IsLetter function
Change 3015142 on 2016/06/15 by Dan.Oconnor
More intentional about removing subpins, prevents stale iterator on split pin collapse
#jira UE-32072
Change 3016326 on 2016/06/16 by Ryan.Rauschkolb
Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values
#jira UE-32016
Change 3016494 on 2016/06/16 by Ryan.Rauschkolb
Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class
#jira UE-31876
Change 3016557 on 2016/06/16 by Dan.Oconnor
Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark
#jira FORT-23753
Change 3016577 on 2016/06/16 by Ryan.Rauschkolb
Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType
Change 3016906 on 2016/06/16 by Dan.Oconnor
Back out changelist 3016557
This will be done by Jamie.Dale in Dev-Editor
Change 3018081 on 2016/06/17 by Phillip.Kavan
[UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus)
#jira UE-31832
Change 3018402 on 2016/06/17 by Dan.Oconnor
Missing include
Change 3018426 on 2016/06/17 by Ryan.Rauschkolb
Fixed MakeArray node with split pins and no connections does not paste correctly
#jira UE-32148
Change 3018452 on 2016/06/17 by Mike.Beach
Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load).
#jira UE-32158
Change 3018456 on 2016/06/17 by Dan.Oconnor
Fix for static analysis warning, this null check does nothing
Change 3018595 on 2016/06/17 by Mike.Beach
Fix for shadowed variable warning in CIS.
Change 3018699 on 2016/06/17 by Mike.Beach
Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing).
Change 3019734 on 2016/06/20 by Phillip.Kavan
[UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes.
change summary:
- added a UK2Node_AddComponent::PostDuplicate() override
- moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides.
notes:
- will prevent getting into the scenario described in UE-31831
#jira UE-32064
Change 3020635 on 2016/06/20 by Dan.Oconnor
Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile)
Change 3020894 on 2016/06/21 by Maciej.Mroz
#2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell)
Change 3020958 on 2016/06/21 by Ben.Cosh
This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling.
#Jira UE-32270 - Input key events generate extra instrumentation data per key press
#Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation.
#Proj BlueprintProfiler, UnrealEd
Change 3021316 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where Copy/Paste of event nodes would not retain link information
Change 3021826 on 2016/06/21 by Phillip.Kavan
[UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object.
change summary:
- added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API
- modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates
#jira UE-31831
Change 3022047 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where copy/paste of return nodes would not preserve value or link data
#jira UE-26937
Change 3022619 on 2016/06/22 by Maciej.Mroz
#jira UE-30858 Nativized Orion - Some particle effects are not rendering
A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added.
It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry.
Fixed GameplayCueManager. Nativized cues can be found.
This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage).
Change 3022654 on 2016/06/22 by Maciej.Mroz
FBackendHelperStaticSearchableValues -fixed too strict ensure
Change 3023067 on 2016/06/22 by Maciej.Mroz
#jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project
Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor.
Change 3023222 on 2016/06/22 by Ryan.Rauschkolb
Fixed MakeArray node elements break when editing struct elements
#jira UE-21392
Change 3023405 on 2016/06/22 by Mike.Beach
Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran).
#jira UE-31897
Change 3023992 on 2016/06/22 by Mike.Beach
Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions.
#jira UE-31859
[CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
|
|
|
if (Pins[PinIndex]->ParentPin != nullptr)
|
|
|
|
|
{
|
|
|
|
|
// This is a split pin, so we want to base the pin type on the parent rather than the linked to pin
|
|
|
|
|
OutputPin->PinType = Pins[PinIndex]->ParentPin->PinType;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
OutputPin->PinType = Pins[PinIndex]->LinkedTo[0]->PinType;
|
|
|
|
|
}
|
2014-03-14 14:13:41 -04:00
|
|
|
OutputPin->PinType.bIsArray = true;
|
|
|
|
|
PropagatePinType();
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2927746 on 2016/03/30 by Michael.Schoell
Local variables in function graphs will now store a hard reference to their UObject value.
Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint.
#jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native
Change 2927751 on 2016/03/30 by Michael.Schoell
Back out changelist 2927746
Change 2986483 on 2016/05/23 by Maciej.Mroz
#jira UE-30976 Editable enum values set on an instance are lost during nativization
Added overriden names of Enum keys.
Change 2986712 on 2016/05/23 by Phillip.Kavan
[UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class.
change summary:
- modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root.
Change 2987406 on 2016/05/23 by Ryan.Rauschkolb
Fixed Functions filter in Find-In-Blueprints will show components from the SCS
#jira UE-30140
Change 2988925 on 2016/05/24 by Ryan.Rauschkolb
Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph.
#jira UE-20232
Change 2989001 on 2016/05/24 by Dan.Oconnor
PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner)
#jira UE-31142
Change 2989447 on 2016/05/25 by Phillip.Kavan
[UE-30807] Propagate edit condition property value changes to instances of template objects.
change summary:
- modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO)
Change 2989804 on 2016/05/25 by Phillip.Kavan
[UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class.
change summary:
- modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component
Change 2990234 on 2016/05/25 by Ryan.Rauschkolb
Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph
#jira UE-4426
Change 2990566 on 2016/05/25 by Mike.Beach
Better warn logging to help locate variable nodes that emit a "variable not found" message.
Change 2991083 on 2016/05/26 by Maciej.Mroz
Blueprint nativization: converted classes have "config" specified.
Change 2991363 on 2016/05/26 by Phillip.Kavan
[UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components.
change summary:
- modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text
- modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed)
- modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass
- modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects
Change 2992990 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node
#jira UE-21973
Change 2992995 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked.
#jira UE-30990
Change 2993449 on 2016/05/27 by Phillip.Kavan
[UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing.
change summary:
- modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type.
Change 2993531 on 2016/05/27 by Mike.Beach
PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell)
Change 2993969 on 2016/05/30 by Maciej.Mroz
UE-30729 Crash in Native Orion when selecting Sword or Tomahawk
Clear AsyncLoading in subobjects.
Change 2993990 on 2016/05/30 by Phillip.Kavan
[UE-30984] Exclude reroute nodes from Blueprint profiler node mapping.
change summary:
- modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links.
- modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links.
- modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points.
- modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points.
Change 2994591 on 2016/05/31 by Ryan.Rauschkolb
Fixed issue where inherited Blueprint variable would not show parent's replications settings
#jira UE-18912
Change 2994613 on 2016/05/31 by Ben.Cosh
Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal.
#Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher
#Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy
#Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler
#Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab
#Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status
#Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented
#Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out
#Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean"
#Jira UE-31377 - BP Profiler - Default tree view filtering to off
#Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP
#Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)"
Notes:-
- Sequence node inclusive time fixed
- Trace History tidy up
- Compile Icon and status messages for instrumentation
- Message in the profiler tab for instrumentation
- Profiler view tidy up and heat thresholds controls added
- fixed the summed execution branch stats
- fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396
- added hottest path and hottest endpoint wire heatmaps
- switched off the graph filter by default
- added total time for the heatmaps
- fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code
Change 2995058 on 2016/05/31 by Phillip.Kavan
[UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running.
change summary:
- modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class.
- modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context.
Change 2995218 on 2016/05/31 by Phillip.Kavan
[UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size.
change summary:
- modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout.
Change 2996417 on 2016/06/01 by Phillip.Kavan
[UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor.
change summary:
- modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object.
Change 2997001 on 2016/06/01 by Ryan.Rauschkolb
Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component
#jira UE-30143
Change 2997521 on 2016/06/02 by Maciej.Mroz
[Blueprint Nativization]
- Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h
- Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated.
Change 2997522 on 2016/06/02 by Maciej.Mroz
Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization)
Change 2997638 on 2016/06/02 by Maciej.Mroz
Improvements for Blueprint Nativization:
- Overridden names in nativized code have proper escape characters (in generated code).
- OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared
- Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>)
- warning C4883 is disabled in .generated.cpp files for nativized module
Change 2997639 on 2016/06/02 by Maciej.Mroz
Minor improvements in Ocean gameplay code. Required for Blueprint Nativization.
#jira UE-28945 Failure packaging Nativized Ocean
Change 2997656 on 2016/06/02 by Maciej.Mroz
Various improvements in BlueprintCompilerCppBackend:
- Fixed interface cast
- Fixed TSwitchValue issue (when used with literals)
- Fixed improper name for NativeBlueprintEvent (when calling parent's implementation)
- Fixed bitfield getter code.
- Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums)
- operator == is generated for nativized structs
- Fixed AssedId (AssetPtr) constructor in nativized code.
- Fixed arrays of noexport struct
- Fixed missing headers for native single cast delegate signature.
- Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata.
Change 2997691 on 2016/06/02 by Maciej.Mroz
operator == in FText. It is required for some functions in TArray<FText>
Change 2997793 on 2016/06/02 by Ben.Cosh
Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter
#Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh
#Proj BlueprintProfiler, Kismet
Change 2997901 on 2016/06/02 by Maciej.Mroz
Back out changelist 2997691
Change 2998038 on 2016/06/02 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 2998052 on 2016/06/02 by Ryan.Rauschkolb
Fixed Comment bubbles not remembering changes after losing focus
#jira UE-20012
Change 2998450 on 2016/06/02 by Phillip.Kavan
[UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata.
change summary:
- modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it.
Change 2999763 on 2016/06/03 by Mike.Beach
Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes.
#jira UE-26761
Change 2999768 on 2016/06/03 by Maciej.Mroz
#jira UE-31592, UE-31593
This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty.
Change 2999770 on 2016/06/03 by Maciej.Mroz
[Blueprint Nativization]
Workaround for missing ==operator in native structures. The generated code uses special version of array funtions.
Change 2999798 on 2016/06/03 by Mike.Beach
Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor.
#jira UE-31522
Change 2999941 on 2016/06/03 by Mike.Beach
Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning).
#jira UE-23371
Change 3001731 on 2016/06/06 by Phillip.Kavan
[UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target.
change summary:
- modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events.
- modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field.
- modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals.
- modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events.
Change 3002075 on 2016/06/06 by Maciej.Mroz
Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend.
Literal expression can be emitted without known desitination property.
#jira UE-28443 Set Boolean (by ref) crashes the editor on compile
Change 3002096 on 2016/06/06 by Ben.Cosh
This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs.
#Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called
#Proj BlueprintProfiler
Change 3002108 on 2016/06/06 by Ben.Cosh
Adds a new default option to average the blueprint level stats in the profiler.
#Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged
#Proj Kismet, BlueprintProfiler
- The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward.
Change 3002782 on 2016/06/06 by samuel.proctor
Test assets for Interface testing
Change 3003826 on 2016/06/07 by Ben.Cosh
A few minor visual improvements for the blueprint profiler.
#Proj Kismet, BlueprintProfiler, EditorStyle
- Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors.
- Updated the pure node icon.
Change 3004067 on 2016/06/07 by samuel.proctor
New test asset for blueprint interfaces
Change 3004069 on 2016/06/07 by samuel.proctor
Updating asset for Interface testing
Change 3004275 on 2016/06/07 by Ryan.Rauschkolb
Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility
#jira UE-23733
Change 3004329 on 2016/06/07 by Dan.Oconnor
EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced.
Change 3004418 on 2016/06/07 by Maciej.Mroz
KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value.
Change 3004496 on 2016/06/07 by Dan.Oconnor
Disabling expensive pin allocation tracking
Change 3004649 on 2016/06/07 by Mike.Beach
Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors).
#jira UE-31236
Change 3004667 on 2016/06/07 by Dan.Oconnor
Removed my debugging logic
Change 3004848 on 2016/06/07 by Dan.Oconnor
Fix spammy ensure
Change 3004871 on 2016/06/07 by Phillip.Kavan
[UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view.
change summary:
- modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO).
- modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts.
Change 3005203 on 2016/06/07 by Dan.Oconnor
Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems
#jira UE-31750
Change 3005441 on 2016/06/08 by Maciej.Mroz
#jira UE-31625 Crash in nativized Orion
AssembleReferenceTokenStream is called for Dynamic Classes:
- in ConstructDynamicType() (when class is explicitly loaded)
- in __CustomDynamicClassInitialization() (when CDO is created)
Change 3005540 on 2016/06/08 by Ben.Cosh
This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring.
#Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE
#Proj BlueprintProfiler, Kismet
- The jira was already fixed but I think this change improves the instance status clarity
Change 3006196 on 2016/06/08 by Dan.Oconnor
Copy/paste logic for pin connections got lost in the shuffle
#jira UE-31747
Change 3006416 on 2016/06/08 by Phillip.Kavan
[UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order).
change summary:
- modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load.
Change 3006522 on 2016/06/08 by Dan.Oconnor
Under rare circumstances a deprecated pin comes in that is outered to the transient package
#jira UE-31779
Change 3006576 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
#jira UE-31796
Change 3006610 on 2016/06/08 by Phillip.Kavan
[UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance.
change summary:
- modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO.
Change 3006824 on 2016/06/08 by Dan.Oconnor
More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays
#jira UE-31794
Change 3006828 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
Change 3006857 on 2016/06/08 by Dan.Oconnor
Investigating shutdown ensure, traced back to a static UEdGraphPin
Change 3006907 on 2016/06/08 by Dan.Oconnor
Noneditor build fix
Change 3006929 on 2016/06/08 by Dan.Oconnor
Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779
Change 3007133 on 2016/06/09 by Ben.Cosh
Fix for issue in the profiler asserting creating pins that don't have unique names.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
- I believe this was recently introduced with the changes to UEdGraphPin's
Change 3007964 on 2016/06/09 by Dan.Oconnor
Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo
#jira UE-31829
Change 3007996 on 2016/06/09 by Ryan.Rauschkolb
Added 'empty' keyword to Array Clear Node.
#jira UE-12356
Change 3008007 on 2016/06/09 by Ryan.Rauschkolb
Added 'negate' keyword to boolean NOT node
#jira UE-12490
Change 3008011 on 2016/06/09 by Ryan.Rauschkolb
Added Vector2D * Vector2D multiplication node
#jira UE-31503
Change 3008014 on 2016/06/09 by Ryan.Rauschkolb
Fixed Cannot connect Make Array node output to MakeArray input with split pins
#jira UE-28530
Change 3008243 on 2016/06/09 by Dan.Oconnor
Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe'
#jira UE-31841
Change 3008289 on 2016/06/09 by Dan.Oconnor
Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later
#jira UE-31794
Change 3008422 on 2016/06/09 by Dan.Oconnor
Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out)
#jira UE-31857
Change 3009164 on 2016/06/10 by Ryan.Rauschkolb
Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel.
#jira UE-21141,UE-23723
Change 3009165 on 2016/06/10 by Ryan.Rauschkolb
Fixed Structure Default value editor collapses after undoing an alteration of a default value
#jira UE-31741
Change 3009181 on 2016/06/10 by Ryan.Rauschkolb
Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh
#jira UE-30014
Change 3009313 on 2016/06/10 by Mike.Beach
Addressing issues with function return nodes in multiple ways:
- Preventing users from deleting return nodes for overriden/inherited functions.
- Also making sure that we create terminals for out params when the return node is disconnected (and pruned).
- Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function).
#jira UE-31418
Change 3009595 on 2016/06/10 by Dan.Oconnor
EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile
#jira UE-31879
Change 3009774 on 2016/06/10 by Dan.Oconnor
Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return
#jira UE-31906
Change 3009988 on 2016/06/10 by Dan.Oconnor
Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization
#jira UE-31888
Change 3010050 on 2016/06/10 by Dan.Oconnor
Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved
#jira UE-31892
Change 3010071 on 2016/06/10 by Dan.Oconnor
Fix for pasting when owning node has whitespace in result of GetPathName
#jira UE-31898
#coderview Bob.Tellez
Change 3010244 on 2016/06/11 by Dan.Oconnor
Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870
Change 3010630 on 2016/06/13 by Dan.Oconnor
No longer relying on path name for pin resolution, path is unstable across graphs
#jira UE-31870
Change 3010647 on 2016/06/13 by Dan.Oconnor
PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays)
#jira UE-31928
Change 3011175 on 2016/06/13 by Ben.Cosh
Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance.
#Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert
#Proj Kismet, BlueprintProfiler
- Ensured that the trace paths contain the macro instance exec nodes
- Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates.
- Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does.
Change 3011271 on 2016/06/13 by Ben.Cosh
This adds support for inherited blueprint classes to the blueprint profiler.
#Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
Change 3011556 on 2016/06/13 by Ryan.Rauschkolb
Fixed Crash when breaking link to a split pin in MakeArray that is an array type
#jira UE-31919
Change 3011624 on 2016/06/13 by Dan.Oconnor
Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating.
#jira UE-31955
Change 3011984 on 2016/06/13 by Dan.Oconnor
Sanitizing parentpin's subpins when destroying a pin
#jira UE-21392
Change 3012894 on 2016/06/14 by Phillip.Kavan
[UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing.
change summary:
- modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types.
#jira UE-30922
Change 3013037 on 2016/06/14 by Ryan.Rauschkolb
Fixed Crash when connecting to a split pin in a MakeArray node that has no connections
#jira UE-31917
Change 3014846 on 2016/06/15 by Dan.Oconnor
No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change)
#jira FORT-23753
Change 3015014 on 2016/06/15 by Dan.Oconnor
Removing poorly implement IsLetter function
Change 3015142 on 2016/06/15 by Dan.Oconnor
More intentional about removing subpins, prevents stale iterator on split pin collapse
#jira UE-32072
Change 3016326 on 2016/06/16 by Ryan.Rauschkolb
Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values
#jira UE-32016
Change 3016494 on 2016/06/16 by Ryan.Rauschkolb
Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class
#jira UE-31876
Change 3016557 on 2016/06/16 by Dan.Oconnor
Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark
#jira FORT-23753
Change 3016577 on 2016/06/16 by Ryan.Rauschkolb
Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType
Change 3016906 on 2016/06/16 by Dan.Oconnor
Back out changelist 3016557
This will be done by Jamie.Dale in Dev-Editor
Change 3018081 on 2016/06/17 by Phillip.Kavan
[UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus)
#jira UE-31832
Change 3018402 on 2016/06/17 by Dan.Oconnor
Missing include
Change 3018426 on 2016/06/17 by Ryan.Rauschkolb
Fixed MakeArray node with split pins and no connections does not paste correctly
#jira UE-32148
Change 3018452 on 2016/06/17 by Mike.Beach
Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load).
#jira UE-32158
Change 3018456 on 2016/06/17 by Dan.Oconnor
Fix for static analysis warning, this null check does nothing
Change 3018595 on 2016/06/17 by Mike.Beach
Fix for shadowed variable warning in CIS.
Change 3018699 on 2016/06/17 by Mike.Beach
Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing).
Change 3019734 on 2016/06/20 by Phillip.Kavan
[UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes.
change summary:
- added a UK2Node_AddComponent::PostDuplicate() override
- moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides.
notes:
- will prevent getting into the scenario described in UE-31831
#jira UE-32064
Change 3020635 on 2016/06/20 by Dan.Oconnor
Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile)
Change 3020894 on 2016/06/21 by Maciej.Mroz
#2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell)
Change 3020958 on 2016/06/21 by Ben.Cosh
This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling.
#Jira UE-32270 - Input key events generate extra instrumentation data per key press
#Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation.
#Proj BlueprintProfiler, UnrealEd
Change 3021316 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where Copy/Paste of event nodes would not retain link information
Change 3021826 on 2016/06/21 by Phillip.Kavan
[UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object.
change summary:
- added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API
- modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates
#jira UE-31831
Change 3022047 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where copy/paste of return nodes would not preserve value or link data
#jira UE-26937
Change 3022619 on 2016/06/22 by Maciej.Mroz
#jira UE-30858 Nativized Orion - Some particle effects are not rendering
A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added.
It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry.
Fixed GameplayCueManager. Nativized cues can be found.
This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage).
Change 3022654 on 2016/06/22 by Maciej.Mroz
FBackendHelperStaticSearchableValues -fixed too strict ensure
Change 3023067 on 2016/06/22 by Maciej.Mroz
#jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project
Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor.
Change 3023222 on 2016/06/22 by Ryan.Rauschkolb
Fixed MakeArray node elements break when editing struct elements
#jira UE-21392
Change 3023405 on 2016/06/22 by Mike.Beach
Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran).
#jira UE-31897
Change 3023992 on 2016/06/22 by Mike.Beach
Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions.
#jira UE-31859
[CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
|
|
|
bResetToWildcard = false;
|
2014-03-14 14:13:41 -04:00
|
|
|
break;
|
|
|
|
|
}
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2927746 on 2016/03/30 by Michael.Schoell
Local variables in function graphs will now store a hard reference to their UObject value.
Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint.
#jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native
Change 2927751 on 2016/03/30 by Michael.Schoell
Back out changelist 2927746
Change 2986483 on 2016/05/23 by Maciej.Mroz
#jira UE-30976 Editable enum values set on an instance are lost during nativization
Added overriden names of Enum keys.
Change 2986712 on 2016/05/23 by Phillip.Kavan
[UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class.
change summary:
- modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root.
Change 2987406 on 2016/05/23 by Ryan.Rauschkolb
Fixed Functions filter in Find-In-Blueprints will show components from the SCS
#jira UE-30140
Change 2988925 on 2016/05/24 by Ryan.Rauschkolb
Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph.
#jira UE-20232
Change 2989001 on 2016/05/24 by Dan.Oconnor
PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner)
#jira UE-31142
Change 2989447 on 2016/05/25 by Phillip.Kavan
[UE-30807] Propagate edit condition property value changes to instances of template objects.
change summary:
- modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO)
Change 2989804 on 2016/05/25 by Phillip.Kavan
[UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class.
change summary:
- modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component
Change 2990234 on 2016/05/25 by Ryan.Rauschkolb
Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph
#jira UE-4426
Change 2990566 on 2016/05/25 by Mike.Beach
Better warn logging to help locate variable nodes that emit a "variable not found" message.
Change 2991083 on 2016/05/26 by Maciej.Mroz
Blueprint nativization: converted classes have "config" specified.
Change 2991363 on 2016/05/26 by Phillip.Kavan
[UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components.
change summary:
- modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text
- modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed)
- modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass
- modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects
Change 2992990 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node
#jira UE-21973
Change 2992995 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked.
#jira UE-30990
Change 2993449 on 2016/05/27 by Phillip.Kavan
[UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing.
change summary:
- modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type.
Change 2993531 on 2016/05/27 by Mike.Beach
PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell)
Change 2993969 on 2016/05/30 by Maciej.Mroz
UE-30729 Crash in Native Orion when selecting Sword or Tomahawk
Clear AsyncLoading in subobjects.
Change 2993990 on 2016/05/30 by Phillip.Kavan
[UE-30984] Exclude reroute nodes from Blueprint profiler node mapping.
change summary:
- modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links.
- modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links.
- modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points.
- modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points.
Change 2994591 on 2016/05/31 by Ryan.Rauschkolb
Fixed issue where inherited Blueprint variable would not show parent's replications settings
#jira UE-18912
Change 2994613 on 2016/05/31 by Ben.Cosh
Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal.
#Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher
#Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy
#Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler
#Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab
#Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status
#Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented
#Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out
#Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean"
#Jira UE-31377 - BP Profiler - Default tree view filtering to off
#Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP
#Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)"
Notes:-
- Sequence node inclusive time fixed
- Trace History tidy up
- Compile Icon and status messages for instrumentation
- Message in the profiler tab for instrumentation
- Profiler view tidy up and heat thresholds controls added
- fixed the summed execution branch stats
- fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396
- added hottest path and hottest endpoint wire heatmaps
- switched off the graph filter by default
- added total time for the heatmaps
- fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code
Change 2995058 on 2016/05/31 by Phillip.Kavan
[UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running.
change summary:
- modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class.
- modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context.
Change 2995218 on 2016/05/31 by Phillip.Kavan
[UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size.
change summary:
- modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout.
Change 2996417 on 2016/06/01 by Phillip.Kavan
[UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor.
change summary:
- modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object.
Change 2997001 on 2016/06/01 by Ryan.Rauschkolb
Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component
#jira UE-30143
Change 2997521 on 2016/06/02 by Maciej.Mroz
[Blueprint Nativization]
- Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h
- Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated.
Change 2997522 on 2016/06/02 by Maciej.Mroz
Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization)
Change 2997638 on 2016/06/02 by Maciej.Mroz
Improvements for Blueprint Nativization:
- Overridden names in nativized code have proper escape characters (in generated code).
- OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared
- Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>)
- warning C4883 is disabled in .generated.cpp files for nativized module
Change 2997639 on 2016/06/02 by Maciej.Mroz
Minor improvements in Ocean gameplay code. Required for Blueprint Nativization.
#jira UE-28945 Failure packaging Nativized Ocean
Change 2997656 on 2016/06/02 by Maciej.Mroz
Various improvements in BlueprintCompilerCppBackend:
- Fixed interface cast
- Fixed TSwitchValue issue (when used with literals)
- Fixed improper name for NativeBlueprintEvent (when calling parent's implementation)
- Fixed bitfield getter code.
- Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums)
- operator == is generated for nativized structs
- Fixed AssedId (AssetPtr) constructor in nativized code.
- Fixed arrays of noexport struct
- Fixed missing headers for native single cast delegate signature.
- Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata.
Change 2997691 on 2016/06/02 by Maciej.Mroz
operator == in FText. It is required for some functions in TArray<FText>
Change 2997793 on 2016/06/02 by Ben.Cosh
Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter
#Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh
#Proj BlueprintProfiler, Kismet
Change 2997901 on 2016/06/02 by Maciej.Mroz
Back out changelist 2997691
Change 2998038 on 2016/06/02 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 2998052 on 2016/06/02 by Ryan.Rauschkolb
Fixed Comment bubbles not remembering changes after losing focus
#jira UE-20012
Change 2998450 on 2016/06/02 by Phillip.Kavan
[UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata.
change summary:
- modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it.
Change 2999763 on 2016/06/03 by Mike.Beach
Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes.
#jira UE-26761
Change 2999768 on 2016/06/03 by Maciej.Mroz
#jira UE-31592, UE-31593
This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty.
Change 2999770 on 2016/06/03 by Maciej.Mroz
[Blueprint Nativization]
Workaround for missing ==operator in native structures. The generated code uses special version of array funtions.
Change 2999798 on 2016/06/03 by Mike.Beach
Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor.
#jira UE-31522
Change 2999941 on 2016/06/03 by Mike.Beach
Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning).
#jira UE-23371
Change 3001731 on 2016/06/06 by Phillip.Kavan
[UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target.
change summary:
- modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events.
- modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field.
- modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals.
- modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events.
Change 3002075 on 2016/06/06 by Maciej.Mroz
Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend.
Literal expression can be emitted without known desitination property.
#jira UE-28443 Set Boolean (by ref) crashes the editor on compile
Change 3002096 on 2016/06/06 by Ben.Cosh
This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs.
#Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called
#Proj BlueprintProfiler
Change 3002108 on 2016/06/06 by Ben.Cosh
Adds a new default option to average the blueprint level stats in the profiler.
#Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged
#Proj Kismet, BlueprintProfiler
- The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward.
Change 3002782 on 2016/06/06 by samuel.proctor
Test assets for Interface testing
Change 3003826 on 2016/06/07 by Ben.Cosh
A few minor visual improvements for the blueprint profiler.
#Proj Kismet, BlueprintProfiler, EditorStyle
- Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors.
- Updated the pure node icon.
Change 3004067 on 2016/06/07 by samuel.proctor
New test asset for blueprint interfaces
Change 3004069 on 2016/06/07 by samuel.proctor
Updating asset for Interface testing
Change 3004275 on 2016/06/07 by Ryan.Rauschkolb
Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility
#jira UE-23733
Change 3004329 on 2016/06/07 by Dan.Oconnor
EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced.
Change 3004418 on 2016/06/07 by Maciej.Mroz
KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value.
Change 3004496 on 2016/06/07 by Dan.Oconnor
Disabling expensive pin allocation tracking
Change 3004649 on 2016/06/07 by Mike.Beach
Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors).
#jira UE-31236
Change 3004667 on 2016/06/07 by Dan.Oconnor
Removed my debugging logic
Change 3004848 on 2016/06/07 by Dan.Oconnor
Fix spammy ensure
Change 3004871 on 2016/06/07 by Phillip.Kavan
[UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view.
change summary:
- modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO).
- modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts.
Change 3005203 on 2016/06/07 by Dan.Oconnor
Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems
#jira UE-31750
Change 3005441 on 2016/06/08 by Maciej.Mroz
#jira UE-31625 Crash in nativized Orion
AssembleReferenceTokenStream is called for Dynamic Classes:
- in ConstructDynamicType() (when class is explicitly loaded)
- in __CustomDynamicClassInitialization() (when CDO is created)
Change 3005540 on 2016/06/08 by Ben.Cosh
This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring.
#Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE
#Proj BlueprintProfiler, Kismet
- The jira was already fixed but I think this change improves the instance status clarity
Change 3006196 on 2016/06/08 by Dan.Oconnor
Copy/paste logic for pin connections got lost in the shuffle
#jira UE-31747
Change 3006416 on 2016/06/08 by Phillip.Kavan
[UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order).
change summary:
- modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load.
Change 3006522 on 2016/06/08 by Dan.Oconnor
Under rare circumstances a deprecated pin comes in that is outered to the transient package
#jira UE-31779
Change 3006576 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
#jira UE-31796
Change 3006610 on 2016/06/08 by Phillip.Kavan
[UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance.
change summary:
- modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO.
Change 3006824 on 2016/06/08 by Dan.Oconnor
More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays
#jira UE-31794
Change 3006828 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
Change 3006857 on 2016/06/08 by Dan.Oconnor
Investigating shutdown ensure, traced back to a static UEdGraphPin
Change 3006907 on 2016/06/08 by Dan.Oconnor
Noneditor build fix
Change 3006929 on 2016/06/08 by Dan.Oconnor
Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779
Change 3007133 on 2016/06/09 by Ben.Cosh
Fix for issue in the profiler asserting creating pins that don't have unique names.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
- I believe this was recently introduced with the changes to UEdGraphPin's
Change 3007964 on 2016/06/09 by Dan.Oconnor
Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo
#jira UE-31829
Change 3007996 on 2016/06/09 by Ryan.Rauschkolb
Added 'empty' keyword to Array Clear Node.
#jira UE-12356
Change 3008007 on 2016/06/09 by Ryan.Rauschkolb
Added 'negate' keyword to boolean NOT node
#jira UE-12490
Change 3008011 on 2016/06/09 by Ryan.Rauschkolb
Added Vector2D * Vector2D multiplication node
#jira UE-31503
Change 3008014 on 2016/06/09 by Ryan.Rauschkolb
Fixed Cannot connect Make Array node output to MakeArray input with split pins
#jira UE-28530
Change 3008243 on 2016/06/09 by Dan.Oconnor
Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe'
#jira UE-31841
Change 3008289 on 2016/06/09 by Dan.Oconnor
Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later
#jira UE-31794
Change 3008422 on 2016/06/09 by Dan.Oconnor
Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out)
#jira UE-31857
Change 3009164 on 2016/06/10 by Ryan.Rauschkolb
Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel.
#jira UE-21141,UE-23723
Change 3009165 on 2016/06/10 by Ryan.Rauschkolb
Fixed Structure Default value editor collapses after undoing an alteration of a default value
#jira UE-31741
Change 3009181 on 2016/06/10 by Ryan.Rauschkolb
Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh
#jira UE-30014
Change 3009313 on 2016/06/10 by Mike.Beach
Addressing issues with function return nodes in multiple ways:
- Preventing users from deleting return nodes for overriden/inherited functions.
- Also making sure that we create terminals for out params when the return node is disconnected (and pruned).
- Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function).
#jira UE-31418
Change 3009595 on 2016/06/10 by Dan.Oconnor
EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile
#jira UE-31879
Change 3009774 on 2016/06/10 by Dan.Oconnor
Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return
#jira UE-31906
Change 3009988 on 2016/06/10 by Dan.Oconnor
Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization
#jira UE-31888
Change 3010050 on 2016/06/10 by Dan.Oconnor
Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved
#jira UE-31892
Change 3010071 on 2016/06/10 by Dan.Oconnor
Fix for pasting when owning node has whitespace in result of GetPathName
#jira UE-31898
#coderview Bob.Tellez
Change 3010244 on 2016/06/11 by Dan.Oconnor
Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870
Change 3010630 on 2016/06/13 by Dan.Oconnor
No longer relying on path name for pin resolution, path is unstable across graphs
#jira UE-31870
Change 3010647 on 2016/06/13 by Dan.Oconnor
PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays)
#jira UE-31928
Change 3011175 on 2016/06/13 by Ben.Cosh
Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance.
#Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert
#Proj Kismet, BlueprintProfiler
- Ensured that the trace paths contain the macro instance exec nodes
- Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates.
- Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does.
Change 3011271 on 2016/06/13 by Ben.Cosh
This adds support for inherited blueprint classes to the blueprint profiler.
#Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
Change 3011556 on 2016/06/13 by Ryan.Rauschkolb
Fixed Crash when breaking link to a split pin in MakeArray that is an array type
#jira UE-31919
Change 3011624 on 2016/06/13 by Dan.Oconnor
Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating.
#jira UE-31955
Change 3011984 on 2016/06/13 by Dan.Oconnor
Sanitizing parentpin's subpins when destroying a pin
#jira UE-21392
Change 3012894 on 2016/06/14 by Phillip.Kavan
[UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing.
change summary:
- modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types.
#jira UE-30922
Change 3013037 on 2016/06/14 by Ryan.Rauschkolb
Fixed Crash when connecting to a split pin in a MakeArray node that has no connections
#jira UE-31917
Change 3014846 on 2016/06/15 by Dan.Oconnor
No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change)
#jira FORT-23753
Change 3015014 on 2016/06/15 by Dan.Oconnor
Removing poorly implement IsLetter function
Change 3015142 on 2016/06/15 by Dan.Oconnor
More intentional about removing subpins, prevents stale iterator on split pin collapse
#jira UE-32072
Change 3016326 on 2016/06/16 by Ryan.Rauschkolb
Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values
#jira UE-32016
Change 3016494 on 2016/06/16 by Ryan.Rauschkolb
Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class
#jira UE-31876
Change 3016557 on 2016/06/16 by Dan.Oconnor
Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark
#jira FORT-23753
Change 3016577 on 2016/06/16 by Ryan.Rauschkolb
Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType
Change 3016906 on 2016/06/16 by Dan.Oconnor
Back out changelist 3016557
This will be done by Jamie.Dale in Dev-Editor
Change 3018081 on 2016/06/17 by Phillip.Kavan
[UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus)
#jira UE-31832
Change 3018402 on 2016/06/17 by Dan.Oconnor
Missing include
Change 3018426 on 2016/06/17 by Ryan.Rauschkolb
Fixed MakeArray node with split pins and no connections does not paste correctly
#jira UE-32148
Change 3018452 on 2016/06/17 by Mike.Beach
Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load).
#jira UE-32158
Change 3018456 on 2016/06/17 by Dan.Oconnor
Fix for static analysis warning, this null check does nothing
Change 3018595 on 2016/06/17 by Mike.Beach
Fix for shadowed variable warning in CIS.
Change 3018699 on 2016/06/17 by Mike.Beach
Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing).
Change 3019734 on 2016/06/20 by Phillip.Kavan
[UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes.
change summary:
- added a UK2Node_AddComponent::PostDuplicate() override
- moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides.
notes:
- will prevent getting into the scenario described in UE-31831
#jira UE-32064
Change 3020635 on 2016/06/20 by Dan.Oconnor
Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile)
Change 3020894 on 2016/06/21 by Maciej.Mroz
#2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell)
Change 3020958 on 2016/06/21 by Ben.Cosh
This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling.
#Jira UE-32270 - Input key events generate extra instrumentation data per key press
#Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation.
#Proj BlueprintProfiler, UnrealEd
Change 3021316 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where Copy/Paste of event nodes would not retain link information
Change 3021826 on 2016/06/21 by Phillip.Kavan
[UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object.
change summary:
- added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API
- modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates
#jira UE-31831
Change 3022047 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where copy/paste of return nodes would not preserve value or link data
#jira UE-26937
Change 3022619 on 2016/06/22 by Maciej.Mroz
#jira UE-30858 Nativized Orion - Some particle effects are not rendering
A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added.
It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry.
Fixed GameplayCueManager. Nativized cues can be found.
This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage).
Change 3022654 on 2016/06/22 by Maciej.Mroz
FBackendHelperStaticSearchableValues -fixed too strict ensure
Change 3023067 on 2016/06/22 by Maciej.Mroz
#jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project
Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor.
Change 3023222 on 2016/06/22 by Ryan.Rauschkolb
Fixed MakeArray node elements break when editing struct elements
#jira UE-21392
Change 3023405 on 2016/06/22 by Mike.Beach
Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran).
#jira UE-31897
Change 3023992 on 2016/06/22 by Mike.Beach
Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions.
#jira UE-31859
[CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
|
|
|
else if(Pins[PinIndex]->GetDefaultAsString() != Pins[PinIndex]->AutogeneratedDefaultValue)
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
|
|
|
|
// The pin has user data in it, continue to use its type as the type for all pins.
|
|
|
|
|
|
|
|
|
|
// Update the types on all the pins
|
|
|
|
|
UEdGraphPin* OutputPin = GetOutputPin();
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2927746 on 2016/03/30 by Michael.Schoell
Local variables in function graphs will now store a hard reference to their UObject value.
Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint.
#jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native
Change 2927751 on 2016/03/30 by Michael.Schoell
Back out changelist 2927746
Change 2986483 on 2016/05/23 by Maciej.Mroz
#jira UE-30976 Editable enum values set on an instance are lost during nativization
Added overriden names of Enum keys.
Change 2986712 on 2016/05/23 by Phillip.Kavan
[UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class.
change summary:
- modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root.
Change 2987406 on 2016/05/23 by Ryan.Rauschkolb
Fixed Functions filter in Find-In-Blueprints will show components from the SCS
#jira UE-30140
Change 2988925 on 2016/05/24 by Ryan.Rauschkolb
Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph.
#jira UE-20232
Change 2989001 on 2016/05/24 by Dan.Oconnor
PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner)
#jira UE-31142
Change 2989447 on 2016/05/25 by Phillip.Kavan
[UE-30807] Propagate edit condition property value changes to instances of template objects.
change summary:
- modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO)
Change 2989804 on 2016/05/25 by Phillip.Kavan
[UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class.
change summary:
- modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component
Change 2990234 on 2016/05/25 by Ryan.Rauschkolb
Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph
#jira UE-4426
Change 2990566 on 2016/05/25 by Mike.Beach
Better warn logging to help locate variable nodes that emit a "variable not found" message.
Change 2991083 on 2016/05/26 by Maciej.Mroz
Blueprint nativization: converted classes have "config" specified.
Change 2991363 on 2016/05/26 by Phillip.Kavan
[UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components.
change summary:
- modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text
- modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed)
- modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass
- modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects
Change 2992990 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node
#jira UE-21973
Change 2992995 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked.
#jira UE-30990
Change 2993449 on 2016/05/27 by Phillip.Kavan
[UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing.
change summary:
- modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type.
Change 2993531 on 2016/05/27 by Mike.Beach
PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell)
Change 2993969 on 2016/05/30 by Maciej.Mroz
UE-30729 Crash in Native Orion when selecting Sword or Tomahawk
Clear AsyncLoading in subobjects.
Change 2993990 on 2016/05/30 by Phillip.Kavan
[UE-30984] Exclude reroute nodes from Blueprint profiler node mapping.
change summary:
- modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links.
- modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links.
- modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points.
- modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points.
Change 2994591 on 2016/05/31 by Ryan.Rauschkolb
Fixed issue where inherited Blueprint variable would not show parent's replications settings
#jira UE-18912
Change 2994613 on 2016/05/31 by Ben.Cosh
Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal.
#Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher
#Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy
#Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler
#Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab
#Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status
#Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented
#Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out
#Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean"
#Jira UE-31377 - BP Profiler - Default tree view filtering to off
#Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP
#Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)"
Notes:-
- Sequence node inclusive time fixed
- Trace History tidy up
- Compile Icon and status messages for instrumentation
- Message in the profiler tab for instrumentation
- Profiler view tidy up and heat thresholds controls added
- fixed the summed execution branch stats
- fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396
- added hottest path and hottest endpoint wire heatmaps
- switched off the graph filter by default
- added total time for the heatmaps
- fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code
Change 2995058 on 2016/05/31 by Phillip.Kavan
[UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running.
change summary:
- modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class.
- modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context.
Change 2995218 on 2016/05/31 by Phillip.Kavan
[UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size.
change summary:
- modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout.
Change 2996417 on 2016/06/01 by Phillip.Kavan
[UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor.
change summary:
- modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object.
Change 2997001 on 2016/06/01 by Ryan.Rauschkolb
Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component
#jira UE-30143
Change 2997521 on 2016/06/02 by Maciej.Mroz
[Blueprint Nativization]
- Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h
- Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated.
Change 2997522 on 2016/06/02 by Maciej.Mroz
Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization)
Change 2997638 on 2016/06/02 by Maciej.Mroz
Improvements for Blueprint Nativization:
- Overridden names in nativized code have proper escape characters (in generated code).
- OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared
- Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>)
- warning C4883 is disabled in .generated.cpp files for nativized module
Change 2997639 on 2016/06/02 by Maciej.Mroz
Minor improvements in Ocean gameplay code. Required for Blueprint Nativization.
#jira UE-28945 Failure packaging Nativized Ocean
Change 2997656 on 2016/06/02 by Maciej.Mroz
Various improvements in BlueprintCompilerCppBackend:
- Fixed interface cast
- Fixed TSwitchValue issue (when used with literals)
- Fixed improper name for NativeBlueprintEvent (when calling parent's implementation)
- Fixed bitfield getter code.
- Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums)
- operator == is generated for nativized structs
- Fixed AssedId (AssetPtr) constructor in nativized code.
- Fixed arrays of noexport struct
- Fixed missing headers for native single cast delegate signature.
- Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata.
Change 2997691 on 2016/06/02 by Maciej.Mroz
operator == in FText. It is required for some functions in TArray<FText>
Change 2997793 on 2016/06/02 by Ben.Cosh
Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter
#Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh
#Proj BlueprintProfiler, Kismet
Change 2997901 on 2016/06/02 by Maciej.Mroz
Back out changelist 2997691
Change 2998038 on 2016/06/02 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 2998052 on 2016/06/02 by Ryan.Rauschkolb
Fixed Comment bubbles not remembering changes after losing focus
#jira UE-20012
Change 2998450 on 2016/06/02 by Phillip.Kavan
[UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata.
change summary:
- modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it.
Change 2999763 on 2016/06/03 by Mike.Beach
Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes.
#jira UE-26761
Change 2999768 on 2016/06/03 by Maciej.Mroz
#jira UE-31592, UE-31593
This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty.
Change 2999770 on 2016/06/03 by Maciej.Mroz
[Blueprint Nativization]
Workaround for missing ==operator in native structures. The generated code uses special version of array funtions.
Change 2999798 on 2016/06/03 by Mike.Beach
Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor.
#jira UE-31522
Change 2999941 on 2016/06/03 by Mike.Beach
Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning).
#jira UE-23371
Change 3001731 on 2016/06/06 by Phillip.Kavan
[UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target.
change summary:
- modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events.
- modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field.
- modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals.
- modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events.
Change 3002075 on 2016/06/06 by Maciej.Mroz
Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend.
Literal expression can be emitted without known desitination property.
#jira UE-28443 Set Boolean (by ref) crashes the editor on compile
Change 3002096 on 2016/06/06 by Ben.Cosh
This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs.
#Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called
#Proj BlueprintProfiler
Change 3002108 on 2016/06/06 by Ben.Cosh
Adds a new default option to average the blueprint level stats in the profiler.
#Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged
#Proj Kismet, BlueprintProfiler
- The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward.
Change 3002782 on 2016/06/06 by samuel.proctor
Test assets for Interface testing
Change 3003826 on 2016/06/07 by Ben.Cosh
A few minor visual improvements for the blueprint profiler.
#Proj Kismet, BlueprintProfiler, EditorStyle
- Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors.
- Updated the pure node icon.
Change 3004067 on 2016/06/07 by samuel.proctor
New test asset for blueprint interfaces
Change 3004069 on 2016/06/07 by samuel.proctor
Updating asset for Interface testing
Change 3004275 on 2016/06/07 by Ryan.Rauschkolb
Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility
#jira UE-23733
Change 3004329 on 2016/06/07 by Dan.Oconnor
EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced.
Change 3004418 on 2016/06/07 by Maciej.Mroz
KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value.
Change 3004496 on 2016/06/07 by Dan.Oconnor
Disabling expensive pin allocation tracking
Change 3004649 on 2016/06/07 by Mike.Beach
Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors).
#jira UE-31236
Change 3004667 on 2016/06/07 by Dan.Oconnor
Removed my debugging logic
Change 3004848 on 2016/06/07 by Dan.Oconnor
Fix spammy ensure
Change 3004871 on 2016/06/07 by Phillip.Kavan
[UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view.
change summary:
- modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO).
- modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts.
Change 3005203 on 2016/06/07 by Dan.Oconnor
Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems
#jira UE-31750
Change 3005441 on 2016/06/08 by Maciej.Mroz
#jira UE-31625 Crash in nativized Orion
AssembleReferenceTokenStream is called for Dynamic Classes:
- in ConstructDynamicType() (when class is explicitly loaded)
- in __CustomDynamicClassInitialization() (when CDO is created)
Change 3005540 on 2016/06/08 by Ben.Cosh
This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring.
#Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE
#Proj BlueprintProfiler, Kismet
- The jira was already fixed but I think this change improves the instance status clarity
Change 3006196 on 2016/06/08 by Dan.Oconnor
Copy/paste logic for pin connections got lost in the shuffle
#jira UE-31747
Change 3006416 on 2016/06/08 by Phillip.Kavan
[UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order).
change summary:
- modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load.
Change 3006522 on 2016/06/08 by Dan.Oconnor
Under rare circumstances a deprecated pin comes in that is outered to the transient package
#jira UE-31779
Change 3006576 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
#jira UE-31796
Change 3006610 on 2016/06/08 by Phillip.Kavan
[UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance.
change summary:
- modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO.
Change 3006824 on 2016/06/08 by Dan.Oconnor
More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays
#jira UE-31794
Change 3006828 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
Change 3006857 on 2016/06/08 by Dan.Oconnor
Investigating shutdown ensure, traced back to a static UEdGraphPin
Change 3006907 on 2016/06/08 by Dan.Oconnor
Noneditor build fix
Change 3006929 on 2016/06/08 by Dan.Oconnor
Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779
Change 3007133 on 2016/06/09 by Ben.Cosh
Fix for issue in the profiler asserting creating pins that don't have unique names.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
- I believe this was recently introduced with the changes to UEdGraphPin's
Change 3007964 on 2016/06/09 by Dan.Oconnor
Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo
#jira UE-31829
Change 3007996 on 2016/06/09 by Ryan.Rauschkolb
Added 'empty' keyword to Array Clear Node.
#jira UE-12356
Change 3008007 on 2016/06/09 by Ryan.Rauschkolb
Added 'negate' keyword to boolean NOT node
#jira UE-12490
Change 3008011 on 2016/06/09 by Ryan.Rauschkolb
Added Vector2D * Vector2D multiplication node
#jira UE-31503
Change 3008014 on 2016/06/09 by Ryan.Rauschkolb
Fixed Cannot connect Make Array node output to MakeArray input with split pins
#jira UE-28530
Change 3008243 on 2016/06/09 by Dan.Oconnor
Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe'
#jira UE-31841
Change 3008289 on 2016/06/09 by Dan.Oconnor
Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later
#jira UE-31794
Change 3008422 on 2016/06/09 by Dan.Oconnor
Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out)
#jira UE-31857
Change 3009164 on 2016/06/10 by Ryan.Rauschkolb
Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel.
#jira UE-21141,UE-23723
Change 3009165 on 2016/06/10 by Ryan.Rauschkolb
Fixed Structure Default value editor collapses after undoing an alteration of a default value
#jira UE-31741
Change 3009181 on 2016/06/10 by Ryan.Rauschkolb
Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh
#jira UE-30014
Change 3009313 on 2016/06/10 by Mike.Beach
Addressing issues with function return nodes in multiple ways:
- Preventing users from deleting return nodes for overriden/inherited functions.
- Also making sure that we create terminals for out params when the return node is disconnected (and pruned).
- Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function).
#jira UE-31418
Change 3009595 on 2016/06/10 by Dan.Oconnor
EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile
#jira UE-31879
Change 3009774 on 2016/06/10 by Dan.Oconnor
Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return
#jira UE-31906
Change 3009988 on 2016/06/10 by Dan.Oconnor
Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization
#jira UE-31888
Change 3010050 on 2016/06/10 by Dan.Oconnor
Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved
#jira UE-31892
Change 3010071 on 2016/06/10 by Dan.Oconnor
Fix for pasting when owning node has whitespace in result of GetPathName
#jira UE-31898
#coderview Bob.Tellez
Change 3010244 on 2016/06/11 by Dan.Oconnor
Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870
Change 3010630 on 2016/06/13 by Dan.Oconnor
No longer relying on path name for pin resolution, path is unstable across graphs
#jira UE-31870
Change 3010647 on 2016/06/13 by Dan.Oconnor
PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays)
#jira UE-31928
Change 3011175 on 2016/06/13 by Ben.Cosh
Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance.
#Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert
#Proj Kismet, BlueprintProfiler
- Ensured that the trace paths contain the macro instance exec nodes
- Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates.
- Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does.
Change 3011271 on 2016/06/13 by Ben.Cosh
This adds support for inherited blueprint classes to the blueprint profiler.
#Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
Change 3011556 on 2016/06/13 by Ryan.Rauschkolb
Fixed Crash when breaking link to a split pin in MakeArray that is an array type
#jira UE-31919
Change 3011624 on 2016/06/13 by Dan.Oconnor
Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating.
#jira UE-31955
Change 3011984 on 2016/06/13 by Dan.Oconnor
Sanitizing parentpin's subpins when destroying a pin
#jira UE-21392
Change 3012894 on 2016/06/14 by Phillip.Kavan
[UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing.
change summary:
- modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types.
#jira UE-30922
Change 3013037 on 2016/06/14 by Ryan.Rauschkolb
Fixed Crash when connecting to a split pin in a MakeArray node that has no connections
#jira UE-31917
Change 3014846 on 2016/06/15 by Dan.Oconnor
No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change)
#jira FORT-23753
Change 3015014 on 2016/06/15 by Dan.Oconnor
Removing poorly implement IsLetter function
Change 3015142 on 2016/06/15 by Dan.Oconnor
More intentional about removing subpins, prevents stale iterator on split pin collapse
#jira UE-32072
Change 3016326 on 2016/06/16 by Ryan.Rauschkolb
Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values
#jira UE-32016
Change 3016494 on 2016/06/16 by Ryan.Rauschkolb
Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class
#jira UE-31876
Change 3016557 on 2016/06/16 by Dan.Oconnor
Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark
#jira FORT-23753
Change 3016577 on 2016/06/16 by Ryan.Rauschkolb
Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType
Change 3016906 on 2016/06/16 by Dan.Oconnor
Back out changelist 3016557
This will be done by Jamie.Dale in Dev-Editor
Change 3018081 on 2016/06/17 by Phillip.Kavan
[UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus)
#jira UE-31832
Change 3018402 on 2016/06/17 by Dan.Oconnor
Missing include
Change 3018426 on 2016/06/17 by Ryan.Rauschkolb
Fixed MakeArray node with split pins and no connections does not paste correctly
#jira UE-32148
Change 3018452 on 2016/06/17 by Mike.Beach
Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load).
#jira UE-32158
Change 3018456 on 2016/06/17 by Dan.Oconnor
Fix for static analysis warning, this null check does nothing
Change 3018595 on 2016/06/17 by Mike.Beach
Fix for shadowed variable warning in CIS.
Change 3018699 on 2016/06/17 by Mike.Beach
Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing).
Change 3019734 on 2016/06/20 by Phillip.Kavan
[UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes.
change summary:
- added a UK2Node_AddComponent::PostDuplicate() override
- moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides.
notes:
- will prevent getting into the scenario described in UE-31831
#jira UE-32064
Change 3020635 on 2016/06/20 by Dan.Oconnor
Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile)
Change 3020894 on 2016/06/21 by Maciej.Mroz
#2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell)
Change 3020958 on 2016/06/21 by Ben.Cosh
This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling.
#Jira UE-32270 - Input key events generate extra instrumentation data per key press
#Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation.
#Proj BlueprintProfiler, UnrealEd
Change 3021316 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where Copy/Paste of event nodes would not retain link information
Change 3021826 on 2016/06/21 by Phillip.Kavan
[UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object.
change summary:
- added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API
- modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates
#jira UE-31831
Change 3022047 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where copy/paste of return nodes would not preserve value or link data
#jira UE-26937
Change 3022619 on 2016/06/22 by Maciej.Mroz
#jira UE-30858 Nativized Orion - Some particle effects are not rendering
A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added.
It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry.
Fixed GameplayCueManager. Nativized cues can be found.
This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage).
Change 3022654 on 2016/06/22 by Maciej.Mroz
FBackendHelperStaticSearchableValues -fixed too strict ensure
Change 3023067 on 2016/06/22 by Maciej.Mroz
#jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project
Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor.
Change 3023222 on 2016/06/22 by Ryan.Rauschkolb
Fixed MakeArray node elements break when editing struct elements
#jira UE-21392
Change 3023405 on 2016/06/22 by Mike.Beach
Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran).
#jira UE-31897
Change 3023992 on 2016/06/22 by Mike.Beach
Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions.
#jira UE-31859
[CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
|
|
|
if (Pins[PinIndex]->ParentPin != nullptr)
|
|
|
|
|
{
|
|
|
|
|
// This is a split pin, so we want to base the pin type on the parent instead of this pin
|
|
|
|
|
OutputPin->PinType = Pins[PinIndex]->ParentPin->PinType;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
OutputPin->PinType = Pins[PinIndex]->PinType;
|
|
|
|
|
}
|
2014-03-14 14:13:41 -04:00
|
|
|
OutputPin->PinType.bIsArray = true;
|
|
|
|
|
PropagatePinType();
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2927746 on 2016/03/30 by Michael.Schoell
Local variables in function graphs will now store a hard reference to their UObject value.
Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint.
#jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native
Change 2927751 on 2016/03/30 by Michael.Schoell
Back out changelist 2927746
Change 2986483 on 2016/05/23 by Maciej.Mroz
#jira UE-30976 Editable enum values set on an instance are lost during nativization
Added overriden names of Enum keys.
Change 2986712 on 2016/05/23 by Phillip.Kavan
[UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class.
change summary:
- modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root.
Change 2987406 on 2016/05/23 by Ryan.Rauschkolb
Fixed Functions filter in Find-In-Blueprints will show components from the SCS
#jira UE-30140
Change 2988925 on 2016/05/24 by Ryan.Rauschkolb
Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph.
#jira UE-20232
Change 2989001 on 2016/05/24 by Dan.Oconnor
PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner)
#jira UE-31142
Change 2989447 on 2016/05/25 by Phillip.Kavan
[UE-30807] Propagate edit condition property value changes to instances of template objects.
change summary:
- modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO)
Change 2989804 on 2016/05/25 by Phillip.Kavan
[UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class.
change summary:
- modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component
Change 2990234 on 2016/05/25 by Ryan.Rauschkolb
Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph
#jira UE-4426
Change 2990566 on 2016/05/25 by Mike.Beach
Better warn logging to help locate variable nodes that emit a "variable not found" message.
Change 2991083 on 2016/05/26 by Maciej.Mroz
Blueprint nativization: converted classes have "config" specified.
Change 2991363 on 2016/05/26 by Phillip.Kavan
[UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components.
change summary:
- modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text
- modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed)
- modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass
- modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects
Change 2992990 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node
#jira UE-21973
Change 2992995 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked.
#jira UE-30990
Change 2993449 on 2016/05/27 by Phillip.Kavan
[UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing.
change summary:
- modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type.
Change 2993531 on 2016/05/27 by Mike.Beach
PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell)
Change 2993969 on 2016/05/30 by Maciej.Mroz
UE-30729 Crash in Native Orion when selecting Sword or Tomahawk
Clear AsyncLoading in subobjects.
Change 2993990 on 2016/05/30 by Phillip.Kavan
[UE-30984] Exclude reroute nodes from Blueprint profiler node mapping.
change summary:
- modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links.
- modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links.
- modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points.
- modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points.
Change 2994591 on 2016/05/31 by Ryan.Rauschkolb
Fixed issue where inherited Blueprint variable would not show parent's replications settings
#jira UE-18912
Change 2994613 on 2016/05/31 by Ben.Cosh
Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal.
#Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher
#Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy
#Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler
#Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab
#Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status
#Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented
#Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out
#Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean"
#Jira UE-31377 - BP Profiler - Default tree view filtering to off
#Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP
#Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)"
Notes:-
- Sequence node inclusive time fixed
- Trace History tidy up
- Compile Icon and status messages for instrumentation
- Message in the profiler tab for instrumentation
- Profiler view tidy up and heat thresholds controls added
- fixed the summed execution branch stats
- fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396
- added hottest path and hottest endpoint wire heatmaps
- switched off the graph filter by default
- added total time for the heatmaps
- fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code
Change 2995058 on 2016/05/31 by Phillip.Kavan
[UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running.
change summary:
- modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class.
- modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context.
Change 2995218 on 2016/05/31 by Phillip.Kavan
[UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size.
change summary:
- modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout.
Change 2996417 on 2016/06/01 by Phillip.Kavan
[UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor.
change summary:
- modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object.
Change 2997001 on 2016/06/01 by Ryan.Rauschkolb
Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component
#jira UE-30143
Change 2997521 on 2016/06/02 by Maciej.Mroz
[Blueprint Nativization]
- Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h
- Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated.
Change 2997522 on 2016/06/02 by Maciej.Mroz
Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization)
Change 2997638 on 2016/06/02 by Maciej.Mroz
Improvements for Blueprint Nativization:
- Overridden names in nativized code have proper escape characters (in generated code).
- OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared
- Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>)
- warning C4883 is disabled in .generated.cpp files for nativized module
Change 2997639 on 2016/06/02 by Maciej.Mroz
Minor improvements in Ocean gameplay code. Required for Blueprint Nativization.
#jira UE-28945 Failure packaging Nativized Ocean
Change 2997656 on 2016/06/02 by Maciej.Mroz
Various improvements in BlueprintCompilerCppBackend:
- Fixed interface cast
- Fixed TSwitchValue issue (when used with literals)
- Fixed improper name for NativeBlueprintEvent (when calling parent's implementation)
- Fixed bitfield getter code.
- Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums)
- operator == is generated for nativized structs
- Fixed AssedId (AssetPtr) constructor in nativized code.
- Fixed arrays of noexport struct
- Fixed missing headers for native single cast delegate signature.
- Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata.
Change 2997691 on 2016/06/02 by Maciej.Mroz
operator == in FText. It is required for some functions in TArray<FText>
Change 2997793 on 2016/06/02 by Ben.Cosh
Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter
#Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh
#Proj BlueprintProfiler, Kismet
Change 2997901 on 2016/06/02 by Maciej.Mroz
Back out changelist 2997691
Change 2998038 on 2016/06/02 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 2998052 on 2016/06/02 by Ryan.Rauschkolb
Fixed Comment bubbles not remembering changes after losing focus
#jira UE-20012
Change 2998450 on 2016/06/02 by Phillip.Kavan
[UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata.
change summary:
- modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it.
Change 2999763 on 2016/06/03 by Mike.Beach
Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes.
#jira UE-26761
Change 2999768 on 2016/06/03 by Maciej.Mroz
#jira UE-31592, UE-31593
This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty.
Change 2999770 on 2016/06/03 by Maciej.Mroz
[Blueprint Nativization]
Workaround for missing ==operator in native structures. The generated code uses special version of array funtions.
Change 2999798 on 2016/06/03 by Mike.Beach
Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor.
#jira UE-31522
Change 2999941 on 2016/06/03 by Mike.Beach
Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning).
#jira UE-23371
Change 3001731 on 2016/06/06 by Phillip.Kavan
[UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target.
change summary:
- modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events.
- modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field.
- modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals.
- modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events.
Change 3002075 on 2016/06/06 by Maciej.Mroz
Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend.
Literal expression can be emitted without known desitination property.
#jira UE-28443 Set Boolean (by ref) crashes the editor on compile
Change 3002096 on 2016/06/06 by Ben.Cosh
This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs.
#Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called
#Proj BlueprintProfiler
Change 3002108 on 2016/06/06 by Ben.Cosh
Adds a new default option to average the blueprint level stats in the profiler.
#Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged
#Proj Kismet, BlueprintProfiler
- The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward.
Change 3002782 on 2016/06/06 by samuel.proctor
Test assets for Interface testing
Change 3003826 on 2016/06/07 by Ben.Cosh
A few minor visual improvements for the blueprint profiler.
#Proj Kismet, BlueprintProfiler, EditorStyle
- Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors.
- Updated the pure node icon.
Change 3004067 on 2016/06/07 by samuel.proctor
New test asset for blueprint interfaces
Change 3004069 on 2016/06/07 by samuel.proctor
Updating asset for Interface testing
Change 3004275 on 2016/06/07 by Ryan.Rauschkolb
Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility
#jira UE-23733
Change 3004329 on 2016/06/07 by Dan.Oconnor
EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced.
Change 3004418 on 2016/06/07 by Maciej.Mroz
KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value.
Change 3004496 on 2016/06/07 by Dan.Oconnor
Disabling expensive pin allocation tracking
Change 3004649 on 2016/06/07 by Mike.Beach
Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors).
#jira UE-31236
Change 3004667 on 2016/06/07 by Dan.Oconnor
Removed my debugging logic
Change 3004848 on 2016/06/07 by Dan.Oconnor
Fix spammy ensure
Change 3004871 on 2016/06/07 by Phillip.Kavan
[UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view.
change summary:
- modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO).
- modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts.
Change 3005203 on 2016/06/07 by Dan.Oconnor
Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems
#jira UE-31750
Change 3005441 on 2016/06/08 by Maciej.Mroz
#jira UE-31625 Crash in nativized Orion
AssembleReferenceTokenStream is called for Dynamic Classes:
- in ConstructDynamicType() (when class is explicitly loaded)
- in __CustomDynamicClassInitialization() (when CDO is created)
Change 3005540 on 2016/06/08 by Ben.Cosh
This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring.
#Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE
#Proj BlueprintProfiler, Kismet
- The jira was already fixed but I think this change improves the instance status clarity
Change 3006196 on 2016/06/08 by Dan.Oconnor
Copy/paste logic for pin connections got lost in the shuffle
#jira UE-31747
Change 3006416 on 2016/06/08 by Phillip.Kavan
[UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order).
change summary:
- modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load.
Change 3006522 on 2016/06/08 by Dan.Oconnor
Under rare circumstances a deprecated pin comes in that is outered to the transient package
#jira UE-31779
Change 3006576 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
#jira UE-31796
Change 3006610 on 2016/06/08 by Phillip.Kavan
[UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance.
change summary:
- modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO.
Change 3006824 on 2016/06/08 by Dan.Oconnor
More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays
#jira UE-31794
Change 3006828 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
Change 3006857 on 2016/06/08 by Dan.Oconnor
Investigating shutdown ensure, traced back to a static UEdGraphPin
Change 3006907 on 2016/06/08 by Dan.Oconnor
Noneditor build fix
Change 3006929 on 2016/06/08 by Dan.Oconnor
Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779
Change 3007133 on 2016/06/09 by Ben.Cosh
Fix for issue in the profiler asserting creating pins that don't have unique names.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
- I believe this was recently introduced with the changes to UEdGraphPin's
Change 3007964 on 2016/06/09 by Dan.Oconnor
Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo
#jira UE-31829
Change 3007996 on 2016/06/09 by Ryan.Rauschkolb
Added 'empty' keyword to Array Clear Node.
#jira UE-12356
Change 3008007 on 2016/06/09 by Ryan.Rauschkolb
Added 'negate' keyword to boolean NOT node
#jira UE-12490
Change 3008011 on 2016/06/09 by Ryan.Rauschkolb
Added Vector2D * Vector2D multiplication node
#jira UE-31503
Change 3008014 on 2016/06/09 by Ryan.Rauschkolb
Fixed Cannot connect Make Array node output to MakeArray input with split pins
#jira UE-28530
Change 3008243 on 2016/06/09 by Dan.Oconnor
Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe'
#jira UE-31841
Change 3008289 on 2016/06/09 by Dan.Oconnor
Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later
#jira UE-31794
Change 3008422 on 2016/06/09 by Dan.Oconnor
Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out)
#jira UE-31857
Change 3009164 on 2016/06/10 by Ryan.Rauschkolb
Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel.
#jira UE-21141,UE-23723
Change 3009165 on 2016/06/10 by Ryan.Rauschkolb
Fixed Structure Default value editor collapses after undoing an alteration of a default value
#jira UE-31741
Change 3009181 on 2016/06/10 by Ryan.Rauschkolb
Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh
#jira UE-30014
Change 3009313 on 2016/06/10 by Mike.Beach
Addressing issues with function return nodes in multiple ways:
- Preventing users from deleting return nodes for overriden/inherited functions.
- Also making sure that we create terminals for out params when the return node is disconnected (and pruned).
- Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function).
#jira UE-31418
Change 3009595 on 2016/06/10 by Dan.Oconnor
EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile
#jira UE-31879
Change 3009774 on 2016/06/10 by Dan.Oconnor
Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return
#jira UE-31906
Change 3009988 on 2016/06/10 by Dan.Oconnor
Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization
#jira UE-31888
Change 3010050 on 2016/06/10 by Dan.Oconnor
Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved
#jira UE-31892
Change 3010071 on 2016/06/10 by Dan.Oconnor
Fix for pasting when owning node has whitespace in result of GetPathName
#jira UE-31898
#coderview Bob.Tellez
Change 3010244 on 2016/06/11 by Dan.Oconnor
Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870
Change 3010630 on 2016/06/13 by Dan.Oconnor
No longer relying on path name for pin resolution, path is unstable across graphs
#jira UE-31870
Change 3010647 on 2016/06/13 by Dan.Oconnor
PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays)
#jira UE-31928
Change 3011175 on 2016/06/13 by Ben.Cosh
Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance.
#Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert
#Proj Kismet, BlueprintProfiler
- Ensured that the trace paths contain the macro instance exec nodes
- Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates.
- Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does.
Change 3011271 on 2016/06/13 by Ben.Cosh
This adds support for inherited blueprint classes to the blueprint profiler.
#Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
Change 3011556 on 2016/06/13 by Ryan.Rauschkolb
Fixed Crash when breaking link to a split pin in MakeArray that is an array type
#jira UE-31919
Change 3011624 on 2016/06/13 by Dan.Oconnor
Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating.
#jira UE-31955
Change 3011984 on 2016/06/13 by Dan.Oconnor
Sanitizing parentpin's subpins when destroying a pin
#jira UE-21392
Change 3012894 on 2016/06/14 by Phillip.Kavan
[UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing.
change summary:
- modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types.
#jira UE-30922
Change 3013037 on 2016/06/14 by Ryan.Rauschkolb
Fixed Crash when connecting to a split pin in a MakeArray node that has no connections
#jira UE-31917
Change 3014846 on 2016/06/15 by Dan.Oconnor
No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change)
#jira FORT-23753
Change 3015014 on 2016/06/15 by Dan.Oconnor
Removing poorly implement IsLetter function
Change 3015142 on 2016/06/15 by Dan.Oconnor
More intentional about removing subpins, prevents stale iterator on split pin collapse
#jira UE-32072
Change 3016326 on 2016/06/16 by Ryan.Rauschkolb
Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values
#jira UE-32016
Change 3016494 on 2016/06/16 by Ryan.Rauschkolb
Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class
#jira UE-31876
Change 3016557 on 2016/06/16 by Dan.Oconnor
Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark
#jira FORT-23753
Change 3016577 on 2016/06/16 by Ryan.Rauschkolb
Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType
Change 3016906 on 2016/06/16 by Dan.Oconnor
Back out changelist 3016557
This will be done by Jamie.Dale in Dev-Editor
Change 3018081 on 2016/06/17 by Phillip.Kavan
[UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus)
#jira UE-31832
Change 3018402 on 2016/06/17 by Dan.Oconnor
Missing include
Change 3018426 on 2016/06/17 by Ryan.Rauschkolb
Fixed MakeArray node with split pins and no connections does not paste correctly
#jira UE-32148
Change 3018452 on 2016/06/17 by Mike.Beach
Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load).
#jira UE-32158
Change 3018456 on 2016/06/17 by Dan.Oconnor
Fix for static analysis warning, this null check does nothing
Change 3018595 on 2016/06/17 by Mike.Beach
Fix for shadowed variable warning in CIS.
Change 3018699 on 2016/06/17 by Mike.Beach
Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing).
Change 3019734 on 2016/06/20 by Phillip.Kavan
[UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes.
change summary:
- added a UK2Node_AddComponent::PostDuplicate() override
- moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides.
notes:
- will prevent getting into the scenario described in UE-31831
#jira UE-32064
Change 3020635 on 2016/06/20 by Dan.Oconnor
Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile)
Change 3020894 on 2016/06/21 by Maciej.Mroz
#2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell)
Change 3020958 on 2016/06/21 by Ben.Cosh
This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling.
#Jira UE-32270 - Input key events generate extra instrumentation data per key press
#Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation.
#Proj BlueprintProfiler, UnrealEd
Change 3021316 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where Copy/Paste of event nodes would not retain link information
Change 3021826 on 2016/06/21 by Phillip.Kavan
[UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object.
change summary:
- added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API
- modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates
#jira UE-31831
Change 3022047 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where copy/paste of return nodes would not preserve value or link data
#jira UE-26937
Change 3022619 on 2016/06/22 by Maciej.Mroz
#jira UE-30858 Nativized Orion - Some particle effects are not rendering
A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added.
It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry.
Fixed GameplayCueManager. Nativized cues can be found.
This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage).
Change 3022654 on 2016/06/22 by Maciej.Mroz
FBackendHelperStaticSearchableValues -fixed too strict ensure
Change 3023067 on 2016/06/22 by Maciej.Mroz
#jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project
Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor.
Change 3023222 on 2016/06/22 by Ryan.Rauschkolb
Fixed MakeArray node elements break when editing struct elements
#jira UE-21392
Change 3023405 on 2016/06/22 by Mike.Beach
Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran).
#jira UE-31897
Change 3023992 on 2016/06/22 by Mike.Beach
Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions.
#jira UE-31859
[CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
|
|
|
bResetToWildcard = false;
|
2014-03-14 14:13:41 -04:00
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
2015-09-08 19:37:41 -04:00
|
|
|
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2927746 on 2016/03/30 by Michael.Schoell
Local variables in function graphs will now store a hard reference to their UObject value.
Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint.
#jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native
Change 2927751 on 2016/03/30 by Michael.Schoell
Back out changelist 2927746
Change 2986483 on 2016/05/23 by Maciej.Mroz
#jira UE-30976 Editable enum values set on an instance are lost during nativization
Added overriden names of Enum keys.
Change 2986712 on 2016/05/23 by Phillip.Kavan
[UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class.
change summary:
- modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root.
Change 2987406 on 2016/05/23 by Ryan.Rauschkolb
Fixed Functions filter in Find-In-Blueprints will show components from the SCS
#jira UE-30140
Change 2988925 on 2016/05/24 by Ryan.Rauschkolb
Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph.
#jira UE-20232
Change 2989001 on 2016/05/24 by Dan.Oconnor
PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner)
#jira UE-31142
Change 2989447 on 2016/05/25 by Phillip.Kavan
[UE-30807] Propagate edit condition property value changes to instances of template objects.
change summary:
- modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO)
Change 2989804 on 2016/05/25 by Phillip.Kavan
[UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class.
change summary:
- modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component
Change 2990234 on 2016/05/25 by Ryan.Rauschkolb
Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph
#jira UE-4426
Change 2990566 on 2016/05/25 by Mike.Beach
Better warn logging to help locate variable nodes that emit a "variable not found" message.
Change 2991083 on 2016/05/26 by Maciej.Mroz
Blueprint nativization: converted classes have "config" specified.
Change 2991363 on 2016/05/26 by Phillip.Kavan
[UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components.
change summary:
- modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text
- modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed)
- modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass
- modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects
Change 2992990 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node
#jira UE-21973
Change 2992995 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked.
#jira UE-30990
Change 2993449 on 2016/05/27 by Phillip.Kavan
[UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing.
change summary:
- modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type.
Change 2993531 on 2016/05/27 by Mike.Beach
PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell)
Change 2993969 on 2016/05/30 by Maciej.Mroz
UE-30729 Crash in Native Orion when selecting Sword or Tomahawk
Clear AsyncLoading in subobjects.
Change 2993990 on 2016/05/30 by Phillip.Kavan
[UE-30984] Exclude reroute nodes from Blueprint profiler node mapping.
change summary:
- modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links.
- modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links.
- modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points.
- modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points.
Change 2994591 on 2016/05/31 by Ryan.Rauschkolb
Fixed issue where inherited Blueprint variable would not show parent's replications settings
#jira UE-18912
Change 2994613 on 2016/05/31 by Ben.Cosh
Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal.
#Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher
#Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy
#Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler
#Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab
#Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status
#Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented
#Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out
#Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean"
#Jira UE-31377 - BP Profiler - Default tree view filtering to off
#Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP
#Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)"
Notes:-
- Sequence node inclusive time fixed
- Trace History tidy up
- Compile Icon and status messages for instrumentation
- Message in the profiler tab for instrumentation
- Profiler view tidy up and heat thresholds controls added
- fixed the summed execution branch stats
- fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396
- added hottest path and hottest endpoint wire heatmaps
- switched off the graph filter by default
- added total time for the heatmaps
- fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code
Change 2995058 on 2016/05/31 by Phillip.Kavan
[UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running.
change summary:
- modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class.
- modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context.
Change 2995218 on 2016/05/31 by Phillip.Kavan
[UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size.
change summary:
- modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout.
Change 2996417 on 2016/06/01 by Phillip.Kavan
[UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor.
change summary:
- modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object.
Change 2997001 on 2016/06/01 by Ryan.Rauschkolb
Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component
#jira UE-30143
Change 2997521 on 2016/06/02 by Maciej.Mroz
[Blueprint Nativization]
- Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h
- Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated.
Change 2997522 on 2016/06/02 by Maciej.Mroz
Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization)
Change 2997638 on 2016/06/02 by Maciej.Mroz
Improvements for Blueprint Nativization:
- Overridden names in nativized code have proper escape characters (in generated code).
- OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared
- Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>)
- warning C4883 is disabled in .generated.cpp files for nativized module
Change 2997639 on 2016/06/02 by Maciej.Mroz
Minor improvements in Ocean gameplay code. Required for Blueprint Nativization.
#jira UE-28945 Failure packaging Nativized Ocean
Change 2997656 on 2016/06/02 by Maciej.Mroz
Various improvements in BlueprintCompilerCppBackend:
- Fixed interface cast
- Fixed TSwitchValue issue (when used with literals)
- Fixed improper name for NativeBlueprintEvent (when calling parent's implementation)
- Fixed bitfield getter code.
- Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums)
- operator == is generated for nativized structs
- Fixed AssedId (AssetPtr) constructor in nativized code.
- Fixed arrays of noexport struct
- Fixed missing headers for native single cast delegate signature.
- Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata.
Change 2997691 on 2016/06/02 by Maciej.Mroz
operator == in FText. It is required for some functions in TArray<FText>
Change 2997793 on 2016/06/02 by Ben.Cosh
Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter
#Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh
#Proj BlueprintProfiler, Kismet
Change 2997901 on 2016/06/02 by Maciej.Mroz
Back out changelist 2997691
Change 2998038 on 2016/06/02 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 2998052 on 2016/06/02 by Ryan.Rauschkolb
Fixed Comment bubbles not remembering changes after losing focus
#jira UE-20012
Change 2998450 on 2016/06/02 by Phillip.Kavan
[UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata.
change summary:
- modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it.
Change 2999763 on 2016/06/03 by Mike.Beach
Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes.
#jira UE-26761
Change 2999768 on 2016/06/03 by Maciej.Mroz
#jira UE-31592, UE-31593
This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty.
Change 2999770 on 2016/06/03 by Maciej.Mroz
[Blueprint Nativization]
Workaround for missing ==operator in native structures. The generated code uses special version of array funtions.
Change 2999798 on 2016/06/03 by Mike.Beach
Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor.
#jira UE-31522
Change 2999941 on 2016/06/03 by Mike.Beach
Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning).
#jira UE-23371
Change 3001731 on 2016/06/06 by Phillip.Kavan
[UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target.
change summary:
- modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events.
- modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field.
- modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals.
- modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events.
Change 3002075 on 2016/06/06 by Maciej.Mroz
Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend.
Literal expression can be emitted without known desitination property.
#jira UE-28443 Set Boolean (by ref) crashes the editor on compile
Change 3002096 on 2016/06/06 by Ben.Cosh
This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs.
#Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called
#Proj BlueprintProfiler
Change 3002108 on 2016/06/06 by Ben.Cosh
Adds a new default option to average the blueprint level stats in the profiler.
#Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged
#Proj Kismet, BlueprintProfiler
- The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward.
Change 3002782 on 2016/06/06 by samuel.proctor
Test assets for Interface testing
Change 3003826 on 2016/06/07 by Ben.Cosh
A few minor visual improvements for the blueprint profiler.
#Proj Kismet, BlueprintProfiler, EditorStyle
- Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors.
- Updated the pure node icon.
Change 3004067 on 2016/06/07 by samuel.proctor
New test asset for blueprint interfaces
Change 3004069 on 2016/06/07 by samuel.proctor
Updating asset for Interface testing
Change 3004275 on 2016/06/07 by Ryan.Rauschkolb
Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility
#jira UE-23733
Change 3004329 on 2016/06/07 by Dan.Oconnor
EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced.
Change 3004418 on 2016/06/07 by Maciej.Mroz
KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value.
Change 3004496 on 2016/06/07 by Dan.Oconnor
Disabling expensive pin allocation tracking
Change 3004649 on 2016/06/07 by Mike.Beach
Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors).
#jira UE-31236
Change 3004667 on 2016/06/07 by Dan.Oconnor
Removed my debugging logic
Change 3004848 on 2016/06/07 by Dan.Oconnor
Fix spammy ensure
Change 3004871 on 2016/06/07 by Phillip.Kavan
[UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view.
change summary:
- modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO).
- modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts.
Change 3005203 on 2016/06/07 by Dan.Oconnor
Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems
#jira UE-31750
Change 3005441 on 2016/06/08 by Maciej.Mroz
#jira UE-31625 Crash in nativized Orion
AssembleReferenceTokenStream is called for Dynamic Classes:
- in ConstructDynamicType() (when class is explicitly loaded)
- in __CustomDynamicClassInitialization() (when CDO is created)
Change 3005540 on 2016/06/08 by Ben.Cosh
This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring.
#Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE
#Proj BlueprintProfiler, Kismet
- The jira was already fixed but I think this change improves the instance status clarity
Change 3006196 on 2016/06/08 by Dan.Oconnor
Copy/paste logic for pin connections got lost in the shuffle
#jira UE-31747
Change 3006416 on 2016/06/08 by Phillip.Kavan
[UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order).
change summary:
- modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load.
Change 3006522 on 2016/06/08 by Dan.Oconnor
Under rare circumstances a deprecated pin comes in that is outered to the transient package
#jira UE-31779
Change 3006576 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
#jira UE-31796
Change 3006610 on 2016/06/08 by Phillip.Kavan
[UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance.
change summary:
- modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO.
Change 3006824 on 2016/06/08 by Dan.Oconnor
More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays
#jira UE-31794
Change 3006828 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
Change 3006857 on 2016/06/08 by Dan.Oconnor
Investigating shutdown ensure, traced back to a static UEdGraphPin
Change 3006907 on 2016/06/08 by Dan.Oconnor
Noneditor build fix
Change 3006929 on 2016/06/08 by Dan.Oconnor
Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779
Change 3007133 on 2016/06/09 by Ben.Cosh
Fix for issue in the profiler asserting creating pins that don't have unique names.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
- I believe this was recently introduced with the changes to UEdGraphPin's
Change 3007964 on 2016/06/09 by Dan.Oconnor
Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo
#jira UE-31829
Change 3007996 on 2016/06/09 by Ryan.Rauschkolb
Added 'empty' keyword to Array Clear Node.
#jira UE-12356
Change 3008007 on 2016/06/09 by Ryan.Rauschkolb
Added 'negate' keyword to boolean NOT node
#jira UE-12490
Change 3008011 on 2016/06/09 by Ryan.Rauschkolb
Added Vector2D * Vector2D multiplication node
#jira UE-31503
Change 3008014 on 2016/06/09 by Ryan.Rauschkolb
Fixed Cannot connect Make Array node output to MakeArray input with split pins
#jira UE-28530
Change 3008243 on 2016/06/09 by Dan.Oconnor
Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe'
#jira UE-31841
Change 3008289 on 2016/06/09 by Dan.Oconnor
Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later
#jira UE-31794
Change 3008422 on 2016/06/09 by Dan.Oconnor
Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out)
#jira UE-31857
Change 3009164 on 2016/06/10 by Ryan.Rauschkolb
Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel.
#jira UE-21141,UE-23723
Change 3009165 on 2016/06/10 by Ryan.Rauschkolb
Fixed Structure Default value editor collapses after undoing an alteration of a default value
#jira UE-31741
Change 3009181 on 2016/06/10 by Ryan.Rauschkolb
Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh
#jira UE-30014
Change 3009313 on 2016/06/10 by Mike.Beach
Addressing issues with function return nodes in multiple ways:
- Preventing users from deleting return nodes for overriden/inherited functions.
- Also making sure that we create terminals for out params when the return node is disconnected (and pruned).
- Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function).
#jira UE-31418
Change 3009595 on 2016/06/10 by Dan.Oconnor
EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile
#jira UE-31879
Change 3009774 on 2016/06/10 by Dan.Oconnor
Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return
#jira UE-31906
Change 3009988 on 2016/06/10 by Dan.Oconnor
Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization
#jira UE-31888
Change 3010050 on 2016/06/10 by Dan.Oconnor
Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved
#jira UE-31892
Change 3010071 on 2016/06/10 by Dan.Oconnor
Fix for pasting when owning node has whitespace in result of GetPathName
#jira UE-31898
#coderview Bob.Tellez
Change 3010244 on 2016/06/11 by Dan.Oconnor
Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870
Change 3010630 on 2016/06/13 by Dan.Oconnor
No longer relying on path name for pin resolution, path is unstable across graphs
#jira UE-31870
Change 3010647 on 2016/06/13 by Dan.Oconnor
PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays)
#jira UE-31928
Change 3011175 on 2016/06/13 by Ben.Cosh
Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance.
#Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert
#Proj Kismet, BlueprintProfiler
- Ensured that the trace paths contain the macro instance exec nodes
- Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates.
- Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does.
Change 3011271 on 2016/06/13 by Ben.Cosh
This adds support for inherited blueprint classes to the blueprint profiler.
#Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
Change 3011556 on 2016/06/13 by Ryan.Rauschkolb
Fixed Crash when breaking link to a split pin in MakeArray that is an array type
#jira UE-31919
Change 3011624 on 2016/06/13 by Dan.Oconnor
Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating.
#jira UE-31955
Change 3011984 on 2016/06/13 by Dan.Oconnor
Sanitizing parentpin's subpins when destroying a pin
#jira UE-21392
Change 3012894 on 2016/06/14 by Phillip.Kavan
[UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing.
change summary:
- modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types.
#jira UE-30922
Change 3013037 on 2016/06/14 by Ryan.Rauschkolb
Fixed Crash when connecting to a split pin in a MakeArray node that has no connections
#jira UE-31917
Change 3014846 on 2016/06/15 by Dan.Oconnor
No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change)
#jira FORT-23753
Change 3015014 on 2016/06/15 by Dan.Oconnor
Removing poorly implement IsLetter function
Change 3015142 on 2016/06/15 by Dan.Oconnor
More intentional about removing subpins, prevents stale iterator on split pin collapse
#jira UE-32072
Change 3016326 on 2016/06/16 by Ryan.Rauschkolb
Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values
#jira UE-32016
Change 3016494 on 2016/06/16 by Ryan.Rauschkolb
Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class
#jira UE-31876
Change 3016557 on 2016/06/16 by Dan.Oconnor
Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark
#jira FORT-23753
Change 3016577 on 2016/06/16 by Ryan.Rauschkolb
Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType
Change 3016906 on 2016/06/16 by Dan.Oconnor
Back out changelist 3016557
This will be done by Jamie.Dale in Dev-Editor
Change 3018081 on 2016/06/17 by Phillip.Kavan
[UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus)
#jira UE-31832
Change 3018402 on 2016/06/17 by Dan.Oconnor
Missing include
Change 3018426 on 2016/06/17 by Ryan.Rauschkolb
Fixed MakeArray node with split pins and no connections does not paste correctly
#jira UE-32148
Change 3018452 on 2016/06/17 by Mike.Beach
Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load).
#jira UE-32158
Change 3018456 on 2016/06/17 by Dan.Oconnor
Fix for static analysis warning, this null check does nothing
Change 3018595 on 2016/06/17 by Mike.Beach
Fix for shadowed variable warning in CIS.
Change 3018699 on 2016/06/17 by Mike.Beach
Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing).
Change 3019734 on 2016/06/20 by Phillip.Kavan
[UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes.
change summary:
- added a UK2Node_AddComponent::PostDuplicate() override
- moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides.
notes:
- will prevent getting into the scenario described in UE-31831
#jira UE-32064
Change 3020635 on 2016/06/20 by Dan.Oconnor
Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile)
Change 3020894 on 2016/06/21 by Maciej.Mroz
#2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell)
Change 3020958 on 2016/06/21 by Ben.Cosh
This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling.
#Jira UE-32270 - Input key events generate extra instrumentation data per key press
#Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation.
#Proj BlueprintProfiler, UnrealEd
Change 3021316 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where Copy/Paste of event nodes would not retain link information
Change 3021826 on 2016/06/21 by Phillip.Kavan
[UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object.
change summary:
- added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API
- modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates
#jira UE-31831
Change 3022047 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where copy/paste of return nodes would not preserve value or link data
#jira UE-26937
Change 3022619 on 2016/06/22 by Maciej.Mroz
#jira UE-30858 Nativized Orion - Some particle effects are not rendering
A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added.
It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry.
Fixed GameplayCueManager. Nativized cues can be found.
This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage).
Change 3022654 on 2016/06/22 by Maciej.Mroz
FBackendHelperStaticSearchableValues -fixed too strict ensure
Change 3023067 on 2016/06/22 by Maciej.Mroz
#jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project
Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor.
Change 3023222 on 2016/06/22 by Ryan.Rauschkolb
Fixed MakeArray node elements break when editing struct elements
#jira UE-21392
Change 3023405 on 2016/06/22 by Mike.Beach
Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran).
#jira UE-31897
Change 3023992 on 2016/06/22 by Mike.Beach
Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions.
#jira UE-31859
[CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
|
|
|
if (bResetToWildcard)
|
|
|
|
|
{
|
|
|
|
|
ClearPinTypeToWildcard();
|
|
|
|
|
}
|
|
|
|
|
|
2015-09-08 19:37:41 -04:00
|
|
|
Super::PostReconstructNode();
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
|
2014-09-03 18:14:09 -04:00
|
|
|
FText UK2Node_MakeArray::GetTooltipText() const
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
2014-09-03 18:14:09 -04:00
|
|
|
return LOCTEXT("MakeArrayTooltip", "Create an array from a series of items.");
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
|
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 2973866)
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2937390 on 2016/04/07 by Cody.Albert
#jira UE-29211
Fixed slider to properly bubble unhandled OnKeyDown events
Change 2939672 on 2016/04/11 by Richard.TalbotWatkin
Made a change to how file check out notifications work. Now the dirty package state is processed at the end of every tick, meaning that packages which are dirtied and then cleaned again are not processed. This fixes an issue where a number of child blueprints were flagged as needing checkout when a parent blueprint was compiled. This also allows multiple packages which are dirtied at the same time to be treated as one transaction.
#jira UE-29193 - "Files need check-out" prompt spams Blueprint users
Change 2939686 on 2016/04/11 by Richard.TalbotWatkin
A number of further improvements to mesh vertex color painting:
* Lower LODs are now automatically fixed up for instances which were created in a previous bugged version of the engine.
* Since lower LODs cannot currently have their vertex colors edited, their vertex colors are always derived from LOD0.
* Fixed a bug when building lower LODs so that vertices in neighboring octree nodes are considered when looking for the nearest vertex from LOD0 which corresponds.
* Fixed issue where static meshes with imported LODs would not have the lower LODs' override colors set when "Copy instance vertex colors to source mesh" was used (static meshes with generated LODs were always getting correct override colors).
#jira UE-28563 - Incorrectly displayed LOD VertexColor until paint mode is selected
Change 2939906 on 2016/04/11 by Nick.Darnell
Automation - Adding several enhancements to the automation framework and improving the UI.
* Tests in the UI now have a link to the source and line where they orginate.
* There's now a general purpose latent lambda command you can use to run arbitrary code latently.
* Added Inlined AddCommand for regular and networked commands to the base automation class, to avoid the use of the macro, which prevents breakpoints from working in lambda code.
* Front end now has better column displays offering more room to the test name
* Changed several events to the automation controller to multicast delegates so that many could hook them.
* The UI now refreshes the selection after tests finish so that the output log updates.
Change 2939908 on 2016/04/11 by Nick.Darnell
Automation - The editor import/export tests are now a complex test and actually sperate out all the tests that can be run, some trickiness was required on the filenames so that they didn't expand into more child tests in the UI. (replacing .'s with _'s)
Change 2940028 on 2016/04/11 by Nick.Darnell
Automation - Removing the search box from the toolbar. It's now inlined above the test tree. Tweaking the padding to make it look more other windows and make everything not look so squished. Recursive expansion now works on tests.
Change 2940066 on 2016/04/11 by Nick.Darnell
Automation - Moving the filter group dropdown out of the toolbar and onto the line with the search box above the treeview - additional tweaks to it.
Change 2940092 on 2016/04/11 by Jamie.Dale
PR #2248: Datatable select next row (Contributed by FineRedMist)
Change 2940093 on 2016/04/11 by Jamie.Dale
PR #2248: Datatable select next row (Contributed by FineRedMist)
Change 2940157 on 2016/04/11 by Jamie.Dale
Fixing FTextTest due to some changes made to how currency is formatted
Change 2940694 on 2016/04/12 by Richard.TalbotWatkin
Fixed issue where vertex override colors were not being propagated correctly for generated lower LODs.
#jira UE-29360 - Override Colors not propagated correctly to generated lower LODs
Change 2942379 on 2016/04/13 by Richard.TalbotWatkin
Fixed issue where entering PIE while selecting an actor in Mesh Paint mode could lead to a MeshPaintStaticMeshAdapter holding onto an invalid pointer to an old mesh component, and causing a crash upon leaving the mode. This can happen because, when loading a new streaming level, the proxy actor can be selected when starting PIE, which will subsequently be added to the tool's internal lists. This needs to be added as a GC reference so that it can be NULLed when forcibly destroyed.
#jira UE-29345 - Crash occurs exiting the editor after enabling mesh paint mode and PIEing
Change 2942947 on 2016/04/13 by Richard.TalbotWatkin
Fixed crash when pasting a material function call node from one project to another in which it is not defined.
#jira UE-27087 - Crash when pasting MaterialFunctionCall expressions into the material editor between projects
Change 2943452 on 2016/04/14 by Richard.TalbotWatkin
Updated F4 debug key binding to match what's in ShowFlags.cpp
PR #2197 (contributed by mfortin-bhvr)
Change 2943824 on 2016/04/14 by Alexis.Matte
#jira UE-29090
Make sure we cannot open the color picker when a property is edit const
Change 2943841 on 2016/04/14 by Alexis.Matte
#jira UE-28924
tooltip was add for every hierarchy import option
Change 2943927 on 2016/04/14 by Alexis.Matte
#jira UE-29423
Add Obj support for scene importer
Github PR #2272
Change 2943967 on 2016/04/14 by Richard.TalbotWatkin
Added relevant fields from FBodyInstance to the FoliageType customizations.
#jira UE-20138 - FoliageType has a FBodyInstance but only shows Collision Presets and not other FBodyInstance properties
Change 2948397 on 2016/04/19 by Andrew.Rodham
Moved FSlateIcon definition to SlateCore
It was previously declared as SLATE_API, despite its header residing inside SlateCore. Reviewed by Jamie Dale.
Change 2948805 on 2016/04/19 by Andrew.Rodham
Editor: Deprecated FName UEdGraphNode::GetPaletteIcon(FLinearColor&); in favor of FSlateIcon UEdGraphNode::GetIconAndTint(FLinearColor&); to allow for icons in external style sets to be used.
- Previously, all icons were assumed to reside within FEditorStyle, which is not the case and would create broken icons in the graph editor. All relevant code has been updated to use FSlateIcon structures instead of a simple name.
- This change required a significant overhaul to FClassIconFinder to support FSlateIcons. To keep the API clean, FSlateIconFinder now deals with FSlateIcon class icon finding operations, and FClassIconFinder for the most part just adds actor specific logic.
#jira UE-26502
Change 2950658 on 2016/04/20 by Alexis.Matte
#jira UE-24333
Skinxx workflow, we now output an error if there is mix of material with skinxx and some with no skinxx suffix
Change 2950663 on 2016/04/20 by Alexis.Matte
#jira UE-29582
When exporting to fbx we have to export each material instance as one fbx material
Change 2951240 on 2016/04/21 by Alexis.Matte
#jira UE-28473
Make sure light are render properly after importing a fbx scene
Change 2951421 on 2016/04/21 by Alexis.Matte
#jira UE-29773
fbx skeletalmesh import now support mesh hierarchy
Change 2955873 on 2016/04/26 by Richard.TalbotWatkin
PR #2225: Fix working package directory from the launch profiles (Contributed by projectgheist)
Change 2955965 on 2016/04/26 by Nick.Darnell
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 2956717 on 2016/04/26 by Andrew.Rodham
Editor: World Outliner now correctly calls ProcessEditDelete on editor modes that have asked to process delete operations
#jira UE-26968
Change 2956822 on 2016/04/26 by Andrew.Rodham
Editor: Fixed actors not being removed from the scene outliner when they are added and removed on the same frame
#jira UE-7777
Change 2956931 on 2016/04/26 by Nick.Darnell
New Module - UATHelper - Moving the UAT launching code from the MainFrame module into a reusable module other modules can trigger.
Change 2956932 on 2016/04/26 by Nick.Darnell
Plugins - Now allowing you to package a plugin from the plugin browsing view. Still work in progress.
Change 2957164 on 2016/04/26 by Nick.Darnell
Hot Reload - Fixing hot reload, it no longer creates a temporary copy of the module manager. Making the copy constructor private on the module manager to prevent this in the future.
Change 2957165 on 2016/04/26 by Nick.Darnell
Fixing the Editor Mode plugin sample, it no longer provides a bad starting example for where to create your widgets.
#jira UE-28456
Change 2957510 on 2016/04/27 by Nick.Darnell
PR #2198: Git Plugin implement the Sync operation to update local files using the git pull --rebase command (Contributed by SRombauts)
#jira UE-28763
Change 2957511 on 2016/04/27 by Andrew.Rodham
Editor: Make favorites button on details panel non-focusable
- This was preventing users being able to tab between value fields on the details panel
Change 2957610 on 2016/04/27 by Nick.Darnell
PR #1836: Git plugin: make initial commit when initializing new project (Contributed by SRombauts)
#jira UE-24190
Change 2957667 on 2016/04/27 by Jamie.Dale
Fixed crash that could happen in FTextLayout::GetLineViewIndexForTextLocation if passed a bad location
#jira OR-18634
Change 2958035 on 2016/04/27 by Nick.Darnell
Fixing the DesignerRebuild flag detection so that we can just refresh the slate widget without recreating the preview UObject, which causes the destruction of the details panel, and the slate widget recreation was the only part that was required.
Change 2958272 on 2016/04/27 by Jamie.Dale
Added FAssetData::GetTagValue to handle getting asset tag values in a type-correct way
This allows type-conversion using LexicalConversion, and also has specializations for FString, FText, and FName.
#jira UE-12096
Change 2958348 on 2016/04/27 by Jamie.Dale
PR #2282: Slate font shutdown order fix (Contributed by FineRedMist)
Change 2958352 on 2016/04/27 by Jamie.Dale
Fixed the subtitle manager updating the wrong list of subtitles
#jira UE-29511
Change 2958390 on 2016/04/27 by Jamie.Dale
Removed some old placement-new style array insertions
Change 2959360 on 2016/04/28 by Richard.TalbotWatkin
Fixed potential crash when mesh painting actors whose geometry adapters are no longer registered.
#jira UE-29615 - [CrashReport] UE4Editor_MeshPaint!FEdModeMeshPaint::DoPaint() [meshpaintedmode.cpp:1127]
Change 2959724 on 2016/04/28 by Cody.Albert
Merging hardware survey gating logic from 4.10
#jira UE-28666
Change 2959807 on 2016/04/28 by Cody.Albert
Removed deprecated function call
#jira UE-28666
Change 2959894 on 2016/04/28 by Cody.Albert
Fix for scroll offset being clamped by content size, not scroll max
#jira UE-20676
Change 2960048 on 2016/04/28 by Jamie.Dale
Added FAssetData::GetTagValueRef to go along with FAssetData::GetTagValue
#jira UE-12096
Change 2960782 on 2016/04/29 by Jamie.Dale
Updating code to use the new FText aware asset registry tag functions
#jira UE-12096
Change 2960885 on 2016/04/29 by Jamie.Dale
Updating code to use the new FText aware asset registry tag functions
#jira UE-12096
Change 2961170 on 2016/04/29 by Jamie.Dale
Updating code to use the new FText aware asset registry tag functions
#jira UE-12096
Change 2961171 on 2016/04/29 by Jamie.Dale
Updating code to use the new FText aware asset registry tag functions
#jira UE-12096
Change 2961173 on 2016/04/29 by Jamie.Dale
Removed some inline duplication on the specialized template functions
#jira UE-12096
Change 2963124 on 2016/05/02 by Jamie.Dale
FExternalDragOperation can now contain both text and file data at the same time
This better mirrors what the OS level drag-and-drop operations are capable of, and some applications will actually give you both bits of data at the same time.
#jira UE-26585
Change 2963175 on 2016/05/02 by Jamie.Dale
Updated some font editor tooltips to be more descriptive
#jira UE-17429
Change 2963290 on 2016/05/02 by Jamie.Dale
The Localise UAT command can now be run with a null localisation provider
Change 2963305 on 2016/05/02 by Jamie.Dale
Fixed minor typo
Change 2963402 on 2016/05/02 by Jamie.Dale
Cleaned up all the current localization key conflicts and warnings from gathering Engine code
#jira UE-25833
Change 2963415 on 2016/05/02 by Jamie.Dale
Rephrased a message that could generate a CIS warning
#jira UE-25833
Change 2964184 on 2016/05/03 by Jamie.Dale
Fixed duplicate "Font" entry in asset picker menu
This was caused by PropertyCustomizationHelpers::GetNewAssetFactoriesForClasses using CanCreateNew rather than ShouldShowInNewMenu, as UFont has two factories, but one is supposed to be hidden from the UI.
We also now make sure the factories are sorted by display name before being shown in the UI.
#jira UE-24903
Change 2966108 on 2016/05/04 by Nick.Darnell
Engine - Rearranging the order of ELoadingPhase's enums so that they match the loading order of modules.
Change 2966113 on 2016/05/04 by Nick.Darnell
[Engine Loop Change] UEngine now defines a Start() function, that subclasses can use to start game related things after initialization of the engine. This is done so that after the Init() call on UEngine, we can then perform a module load for the ELoadingPhase::PostEngineInit phase of loading, then inform the UEngine that it's time to start the game. Therefore, UGameEngine now tells the GameInstance to Start during this phase now.
Change 2966121 on 2016/05/04 by Jamie.Dale
Config writing improvements when dealing with property values
This updates FConfigFile::ShouldExportQuotedString to make sure that a property value containing any characters that FParse::LineExtended will consume when parsing back in the config file (such as { and }, or a trailing \) cause the string to be quoted.
This also adds FConfigFile::GenerateExportedPropertyLine to generate the INI key->value lines in a consistent and correctly escaped way, and makes sure that everything that writes out lines to a config file uses it.
FConfigCacheIni::SetString and FConfigCacheIni::SetText have been updated to update the value even if it only differs by case.
UObject::SaveConfig and UObject::LoadConfig have had some code whitespace fix-up (from a bad merge).
Change 2966122 on 2016/05/04 by Jamie.Dale
Added a setting to control dialogue wave audio filenames
Change 2966481 on 2016/05/04 by Jamie.Dale
PR #2336: BUGFIX: Selection of objects in the Content browser from WorldSettings (Contributed by projectgheist)
Change 2966887 on 2016/05/04 by Jamie.Dale
PR #2336: BUGFIX: Selection of objects in the Content browser from WorldSettings (Contributed by projectgheist)
Change 2967488 on 2016/05/05 by Ben.Marsh
Changes to support packaging plugins from the editor.
* UBT now has an option to explicitly disable hot-reloading in any circumstances.
* When running with -module arguments for a monolithic target, UBT will no longer try to relink the executable in source builds (so it's possible to compile plugin libs outside of an installed engine build without having already built UE4Game).
* When packaging, a temporary host project is always generated in the output directory to avoid invalidating intermediates in the source directory.
* An empty Config\FilterPlugin.ini file is written out with instructions on how to list additional files to package if it is not already present.
Change 2967947 on 2016/05/05 by Nick.Darnell
PR #2358: Properly display Mip Level Count and Format for UTexture2DDynamic Textures (Contributed by Allegorithmic)
#jira UE-30371
Change 2968333 on 2016/05/05 by Jamie.Dale
Fixed MultiLine not working with arrays of string or text properties
- The detail customizations for FString and FText properties now read the meta-data off the correct property.
- The UDS editor now lets you set the "MultiLine" meta-data on arrays of FString and FText properties.
- Fixed changing the "MultiLine" flag on a UDS property not rebuilding the default value editor.
- Fixed the default values panel in the UDS editor having a title area.
#jira UE-30392
Change 2968999 on 2016/05/06 by Jamie.Dale
Fixed infinite loop in the editor if a directory that is being watched is deleted
#jira UE-30172
Change 2969105 on 2016/05/06 by Richard.TalbotWatkin
Fixed issue where opening a submenu while the parent menu had a text box focused would lead to a crash. The graph node comment text widget now only dismisses all menus if the text commit info implies that it was committed by some user action.
#jira UE-29086 - Crash When Typing a Node Comment and Hovering Over the Alignment Option
Change 2969440 on 2016/05/06 by Jamie.Dale
Significant performance improvements when pasting a large amount of text
#jira UE-19712
Change 2969619 on 2016/05/06 by Andrew.Rodham
Auto-reimport is now disabled inside an editor running in unattended mode
Change 2969621 on 2016/05/06 by Jamie.Dale
Added the ability to override the subtitle used on a dialogue wave
This is useful for effort sounds, plus some other cases, such as characters speaking in a foreign language not known to the player.
#jira UETOOL-795
Change 2970588 on 2016/05/09 by Chris.Wood
Fix typo in operator expression in UEndUserSettings::SetSendAnonymousUsageDataToEpic()
[UE-26958] - GitHub 2056 : Fixing typo in the operator
#2056
Change 2971151 on 2016/05/09 by Chris.Wood
Logging ensure fails as errors. Automated tests with ensure fails will be unsuccessful.
[UE-19579] - If an ensure() fails within an automated test, the test can still show a positive result.
[UE-26575] - GitHub 2030 : Add error-severity message to log on ensure.
PR #2030
Change 2971267 on 2016/05/09 by Alexis.Matte
Wrong parameter when calling GetImportOptions
#jira UE-30299
Change 2972073 on 2016/05/10 by Richard.TalbotWatkin
Fixed UModel methods which make surfaces as modified.
#jira UE-28831 - Unable to undo material placement on BSP
Change 2972329 on 2016/05/10 by Nick.Darnell
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 2972887 on 2016/05/10 by Alexis.Matte
#jira UE-30167
We now import the geometric transform also when we uncheck the absolute transform in the vertex.
Change 2973664 on 2016/05/11 by Nick.Darnell
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
Change 2973717 on 2016/05/11 by Nick.Darnell
Fixing compiler issues from main merge.
#jira UE-30590
Change 2973846 on 2016/05/11 by Jamie.Dale
Exposed FConfigValue::ExpandValue and added FConfigValue::CollapseValue
These are both static and can be used to expand or collapse the macros used in our config files (mostly when dealing with paths), in code that has to deal with the config system, but isn't internal to the config system (mostly things that deal with default configs outside of UObjects).
The old non-static version of FConfigValue::ExpandValue is now FConfigValue::ExpandValueInternal, which just calls FConfigValue::ExpandValue on SavedValue and ExpandedValue.
This also changes some code that was using FString.Replace to use FString.ReplaceInline. This reduces allocations, and also allows us to avoid another string comparison to see whether the strings are identical (as ReplaceInline returns the number of replacements that were made).
Change 2973847 on 2016/05/11 by Jamie.Dale
Changing the loading phase in the localization dashboard now writes to the default config
#jira UE-30482
Change 2973866 on 2016/05/11 by Jamie.Dale
Deprecated some functions that were taking an unused position.
These unused parameters caused confusion and lead to UE-30276. The old versions have been deprecated, and new versions without those parameters have been added. Existing code has been updated to call the non-deprecated version.
- FViewportFrame::ResizeFrame
- FSceneViewport::ResizeFrame
- FSceneViewport::ResizeViewport
[CL 2973886 by Nick Darnell in Main branch]
2016-05-11 11:05:13 -04:00
|
|
|
FSlateIcon UK2Node_MakeArray::GetIconAndTint(FLinearColor& OutColor) const
|
|
|
|
|
{
|
|
|
|
|
static FSlateIcon Icon("EditorStyle", "GraphEditor.MakeArray_16x");
|
|
|
|
|
return Icon;
|
|
|
|
|
}
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
void UK2Node_MakeArray::AddInputPin()
|
|
|
|
|
{
|
|
|
|
|
FScopedTransaction Transaction( LOCTEXT("AddPinTx", "AddPin") );
|
|
|
|
|
Modify();
|
|
|
|
|
|
|
|
|
|
++NumInputs;
|
2014-12-10 12:38:55 -05:00
|
|
|
FEdGraphPinType OutputPinType = GetOutputPin()->PinType;
|
2015-06-09 15:39:31 -04:00
|
|
|
UEdGraphPin* Pin = CreatePin(EGPD_Input, OutputPinType.PinCategory, OutputPinType.PinSubCategory, OutputPinType.PinSubCategoryObject.Get(), false, false, *FString::Printf(TEXT("[%d]"), (NumInputs-1)));
|
|
|
|
|
GetDefault<UEdGraphSchema_K2>()->SetPinDefaultValueBasedOnType(Pin);
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
const bool bIsCompiling = GetBlueprint()->bBeingCompiled;
|
|
|
|
|
if( !bIsCompiling )
|
|
|
|
|
{
|
|
|
|
|
FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified(GetBlueprint());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2927746 on 2016/03/30 by Michael.Schoell
Local variables in function graphs will now store a hard reference to their UObject value.
Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint.
#jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native
Change 2927751 on 2016/03/30 by Michael.Schoell
Back out changelist 2927746
Change 2986483 on 2016/05/23 by Maciej.Mroz
#jira UE-30976 Editable enum values set on an instance are lost during nativization
Added overriden names of Enum keys.
Change 2986712 on 2016/05/23 by Phillip.Kavan
[UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class.
change summary:
- modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root.
Change 2987406 on 2016/05/23 by Ryan.Rauschkolb
Fixed Functions filter in Find-In-Blueprints will show components from the SCS
#jira UE-30140
Change 2988925 on 2016/05/24 by Ryan.Rauschkolb
Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph.
#jira UE-20232
Change 2989001 on 2016/05/24 by Dan.Oconnor
PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner)
#jira UE-31142
Change 2989447 on 2016/05/25 by Phillip.Kavan
[UE-30807] Propagate edit condition property value changes to instances of template objects.
change summary:
- modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO)
Change 2989804 on 2016/05/25 by Phillip.Kavan
[UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class.
change summary:
- modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component
Change 2990234 on 2016/05/25 by Ryan.Rauschkolb
Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph
#jira UE-4426
Change 2990566 on 2016/05/25 by Mike.Beach
Better warn logging to help locate variable nodes that emit a "variable not found" message.
Change 2991083 on 2016/05/26 by Maciej.Mroz
Blueprint nativization: converted classes have "config" specified.
Change 2991363 on 2016/05/26 by Phillip.Kavan
[UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components.
change summary:
- modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text
- modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed)
- modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass
- modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects
Change 2992990 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node
#jira UE-21973
Change 2992995 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked.
#jira UE-30990
Change 2993449 on 2016/05/27 by Phillip.Kavan
[UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing.
change summary:
- modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type.
Change 2993531 on 2016/05/27 by Mike.Beach
PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell)
Change 2993969 on 2016/05/30 by Maciej.Mroz
UE-30729 Crash in Native Orion when selecting Sword or Tomahawk
Clear AsyncLoading in subobjects.
Change 2993990 on 2016/05/30 by Phillip.Kavan
[UE-30984] Exclude reroute nodes from Blueprint profiler node mapping.
change summary:
- modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links.
- modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links.
- modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points.
- modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points.
Change 2994591 on 2016/05/31 by Ryan.Rauschkolb
Fixed issue where inherited Blueprint variable would not show parent's replications settings
#jira UE-18912
Change 2994613 on 2016/05/31 by Ben.Cosh
Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal.
#Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher
#Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy
#Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler
#Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab
#Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status
#Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented
#Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out
#Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean"
#Jira UE-31377 - BP Profiler - Default tree view filtering to off
#Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP
#Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)"
Notes:-
- Sequence node inclusive time fixed
- Trace History tidy up
- Compile Icon and status messages for instrumentation
- Message in the profiler tab for instrumentation
- Profiler view tidy up and heat thresholds controls added
- fixed the summed execution branch stats
- fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396
- added hottest path and hottest endpoint wire heatmaps
- switched off the graph filter by default
- added total time for the heatmaps
- fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code
Change 2995058 on 2016/05/31 by Phillip.Kavan
[UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running.
change summary:
- modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class.
- modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context.
Change 2995218 on 2016/05/31 by Phillip.Kavan
[UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size.
change summary:
- modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout.
Change 2996417 on 2016/06/01 by Phillip.Kavan
[UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor.
change summary:
- modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object.
Change 2997001 on 2016/06/01 by Ryan.Rauschkolb
Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component
#jira UE-30143
Change 2997521 on 2016/06/02 by Maciej.Mroz
[Blueprint Nativization]
- Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h
- Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated.
Change 2997522 on 2016/06/02 by Maciej.Mroz
Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization)
Change 2997638 on 2016/06/02 by Maciej.Mroz
Improvements for Blueprint Nativization:
- Overridden names in nativized code have proper escape characters (in generated code).
- OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared
- Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>)
- warning C4883 is disabled in .generated.cpp files for nativized module
Change 2997639 on 2016/06/02 by Maciej.Mroz
Minor improvements in Ocean gameplay code. Required for Blueprint Nativization.
#jira UE-28945 Failure packaging Nativized Ocean
Change 2997656 on 2016/06/02 by Maciej.Mroz
Various improvements in BlueprintCompilerCppBackend:
- Fixed interface cast
- Fixed TSwitchValue issue (when used with literals)
- Fixed improper name for NativeBlueprintEvent (when calling parent's implementation)
- Fixed bitfield getter code.
- Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums)
- operator == is generated for nativized structs
- Fixed AssedId (AssetPtr) constructor in nativized code.
- Fixed arrays of noexport struct
- Fixed missing headers for native single cast delegate signature.
- Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata.
Change 2997691 on 2016/06/02 by Maciej.Mroz
operator == in FText. It is required for some functions in TArray<FText>
Change 2997793 on 2016/06/02 by Ben.Cosh
Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter
#Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh
#Proj BlueprintProfiler, Kismet
Change 2997901 on 2016/06/02 by Maciej.Mroz
Back out changelist 2997691
Change 2998038 on 2016/06/02 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 2998052 on 2016/06/02 by Ryan.Rauschkolb
Fixed Comment bubbles not remembering changes after losing focus
#jira UE-20012
Change 2998450 on 2016/06/02 by Phillip.Kavan
[UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata.
change summary:
- modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it.
Change 2999763 on 2016/06/03 by Mike.Beach
Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes.
#jira UE-26761
Change 2999768 on 2016/06/03 by Maciej.Mroz
#jira UE-31592, UE-31593
This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty.
Change 2999770 on 2016/06/03 by Maciej.Mroz
[Blueprint Nativization]
Workaround for missing ==operator in native structures. The generated code uses special version of array funtions.
Change 2999798 on 2016/06/03 by Mike.Beach
Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor.
#jira UE-31522
Change 2999941 on 2016/06/03 by Mike.Beach
Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning).
#jira UE-23371
Change 3001731 on 2016/06/06 by Phillip.Kavan
[UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target.
change summary:
- modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events.
- modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field.
- modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals.
- modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events.
Change 3002075 on 2016/06/06 by Maciej.Mroz
Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend.
Literal expression can be emitted without known desitination property.
#jira UE-28443 Set Boolean (by ref) crashes the editor on compile
Change 3002096 on 2016/06/06 by Ben.Cosh
This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs.
#Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called
#Proj BlueprintProfiler
Change 3002108 on 2016/06/06 by Ben.Cosh
Adds a new default option to average the blueprint level stats in the profiler.
#Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged
#Proj Kismet, BlueprintProfiler
- The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward.
Change 3002782 on 2016/06/06 by samuel.proctor
Test assets for Interface testing
Change 3003826 on 2016/06/07 by Ben.Cosh
A few minor visual improvements for the blueprint profiler.
#Proj Kismet, BlueprintProfiler, EditorStyle
- Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors.
- Updated the pure node icon.
Change 3004067 on 2016/06/07 by samuel.proctor
New test asset for blueprint interfaces
Change 3004069 on 2016/06/07 by samuel.proctor
Updating asset for Interface testing
Change 3004275 on 2016/06/07 by Ryan.Rauschkolb
Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility
#jira UE-23733
Change 3004329 on 2016/06/07 by Dan.Oconnor
EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced.
Change 3004418 on 2016/06/07 by Maciej.Mroz
KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value.
Change 3004496 on 2016/06/07 by Dan.Oconnor
Disabling expensive pin allocation tracking
Change 3004649 on 2016/06/07 by Mike.Beach
Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors).
#jira UE-31236
Change 3004667 on 2016/06/07 by Dan.Oconnor
Removed my debugging logic
Change 3004848 on 2016/06/07 by Dan.Oconnor
Fix spammy ensure
Change 3004871 on 2016/06/07 by Phillip.Kavan
[UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view.
change summary:
- modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO).
- modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts.
Change 3005203 on 2016/06/07 by Dan.Oconnor
Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems
#jira UE-31750
Change 3005441 on 2016/06/08 by Maciej.Mroz
#jira UE-31625 Crash in nativized Orion
AssembleReferenceTokenStream is called for Dynamic Classes:
- in ConstructDynamicType() (when class is explicitly loaded)
- in __CustomDynamicClassInitialization() (when CDO is created)
Change 3005540 on 2016/06/08 by Ben.Cosh
This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring.
#Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE
#Proj BlueprintProfiler, Kismet
- The jira was already fixed but I think this change improves the instance status clarity
Change 3006196 on 2016/06/08 by Dan.Oconnor
Copy/paste logic for pin connections got lost in the shuffle
#jira UE-31747
Change 3006416 on 2016/06/08 by Phillip.Kavan
[UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order).
change summary:
- modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load.
Change 3006522 on 2016/06/08 by Dan.Oconnor
Under rare circumstances a deprecated pin comes in that is outered to the transient package
#jira UE-31779
Change 3006576 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
#jira UE-31796
Change 3006610 on 2016/06/08 by Phillip.Kavan
[UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance.
change summary:
- modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO.
Change 3006824 on 2016/06/08 by Dan.Oconnor
More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays
#jira UE-31794
Change 3006828 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
Change 3006857 on 2016/06/08 by Dan.Oconnor
Investigating shutdown ensure, traced back to a static UEdGraphPin
Change 3006907 on 2016/06/08 by Dan.Oconnor
Noneditor build fix
Change 3006929 on 2016/06/08 by Dan.Oconnor
Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779
Change 3007133 on 2016/06/09 by Ben.Cosh
Fix for issue in the profiler asserting creating pins that don't have unique names.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
- I believe this was recently introduced with the changes to UEdGraphPin's
Change 3007964 on 2016/06/09 by Dan.Oconnor
Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo
#jira UE-31829
Change 3007996 on 2016/06/09 by Ryan.Rauschkolb
Added 'empty' keyword to Array Clear Node.
#jira UE-12356
Change 3008007 on 2016/06/09 by Ryan.Rauschkolb
Added 'negate' keyword to boolean NOT node
#jira UE-12490
Change 3008011 on 2016/06/09 by Ryan.Rauschkolb
Added Vector2D * Vector2D multiplication node
#jira UE-31503
Change 3008014 on 2016/06/09 by Ryan.Rauschkolb
Fixed Cannot connect Make Array node output to MakeArray input with split pins
#jira UE-28530
Change 3008243 on 2016/06/09 by Dan.Oconnor
Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe'
#jira UE-31841
Change 3008289 on 2016/06/09 by Dan.Oconnor
Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later
#jira UE-31794
Change 3008422 on 2016/06/09 by Dan.Oconnor
Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out)
#jira UE-31857
Change 3009164 on 2016/06/10 by Ryan.Rauschkolb
Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel.
#jira UE-21141,UE-23723
Change 3009165 on 2016/06/10 by Ryan.Rauschkolb
Fixed Structure Default value editor collapses after undoing an alteration of a default value
#jira UE-31741
Change 3009181 on 2016/06/10 by Ryan.Rauschkolb
Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh
#jira UE-30014
Change 3009313 on 2016/06/10 by Mike.Beach
Addressing issues with function return nodes in multiple ways:
- Preventing users from deleting return nodes for overriden/inherited functions.
- Also making sure that we create terminals for out params when the return node is disconnected (and pruned).
- Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function).
#jira UE-31418
Change 3009595 on 2016/06/10 by Dan.Oconnor
EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile
#jira UE-31879
Change 3009774 on 2016/06/10 by Dan.Oconnor
Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return
#jira UE-31906
Change 3009988 on 2016/06/10 by Dan.Oconnor
Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization
#jira UE-31888
Change 3010050 on 2016/06/10 by Dan.Oconnor
Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved
#jira UE-31892
Change 3010071 on 2016/06/10 by Dan.Oconnor
Fix for pasting when owning node has whitespace in result of GetPathName
#jira UE-31898
#coderview Bob.Tellez
Change 3010244 on 2016/06/11 by Dan.Oconnor
Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870
Change 3010630 on 2016/06/13 by Dan.Oconnor
No longer relying on path name for pin resolution, path is unstable across graphs
#jira UE-31870
Change 3010647 on 2016/06/13 by Dan.Oconnor
PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays)
#jira UE-31928
Change 3011175 on 2016/06/13 by Ben.Cosh
Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance.
#Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert
#Proj Kismet, BlueprintProfiler
- Ensured that the trace paths contain the macro instance exec nodes
- Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates.
- Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does.
Change 3011271 on 2016/06/13 by Ben.Cosh
This adds support for inherited blueprint classes to the blueprint profiler.
#Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
Change 3011556 on 2016/06/13 by Ryan.Rauschkolb
Fixed Crash when breaking link to a split pin in MakeArray that is an array type
#jira UE-31919
Change 3011624 on 2016/06/13 by Dan.Oconnor
Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating.
#jira UE-31955
Change 3011984 on 2016/06/13 by Dan.Oconnor
Sanitizing parentpin's subpins when destroying a pin
#jira UE-21392
Change 3012894 on 2016/06/14 by Phillip.Kavan
[UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing.
change summary:
- modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types.
#jira UE-30922
Change 3013037 on 2016/06/14 by Ryan.Rauschkolb
Fixed Crash when connecting to a split pin in a MakeArray node that has no connections
#jira UE-31917
Change 3014846 on 2016/06/15 by Dan.Oconnor
No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change)
#jira FORT-23753
Change 3015014 on 2016/06/15 by Dan.Oconnor
Removing poorly implement IsLetter function
Change 3015142 on 2016/06/15 by Dan.Oconnor
More intentional about removing subpins, prevents stale iterator on split pin collapse
#jira UE-32072
Change 3016326 on 2016/06/16 by Ryan.Rauschkolb
Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values
#jira UE-32016
Change 3016494 on 2016/06/16 by Ryan.Rauschkolb
Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class
#jira UE-31876
Change 3016557 on 2016/06/16 by Dan.Oconnor
Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark
#jira FORT-23753
Change 3016577 on 2016/06/16 by Ryan.Rauschkolb
Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType
Change 3016906 on 2016/06/16 by Dan.Oconnor
Back out changelist 3016557
This will be done by Jamie.Dale in Dev-Editor
Change 3018081 on 2016/06/17 by Phillip.Kavan
[UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus)
#jira UE-31832
Change 3018402 on 2016/06/17 by Dan.Oconnor
Missing include
Change 3018426 on 2016/06/17 by Ryan.Rauschkolb
Fixed MakeArray node with split pins and no connections does not paste correctly
#jira UE-32148
Change 3018452 on 2016/06/17 by Mike.Beach
Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load).
#jira UE-32158
Change 3018456 on 2016/06/17 by Dan.Oconnor
Fix for static analysis warning, this null check does nothing
Change 3018595 on 2016/06/17 by Mike.Beach
Fix for shadowed variable warning in CIS.
Change 3018699 on 2016/06/17 by Mike.Beach
Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing).
Change 3019734 on 2016/06/20 by Phillip.Kavan
[UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes.
change summary:
- added a UK2Node_AddComponent::PostDuplicate() override
- moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides.
notes:
- will prevent getting into the scenario described in UE-31831
#jira UE-32064
Change 3020635 on 2016/06/20 by Dan.Oconnor
Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile)
Change 3020894 on 2016/06/21 by Maciej.Mroz
#2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell)
Change 3020958 on 2016/06/21 by Ben.Cosh
This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling.
#Jira UE-32270 - Input key events generate extra instrumentation data per key press
#Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation.
#Proj BlueprintProfiler, UnrealEd
Change 3021316 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where Copy/Paste of event nodes would not retain link information
Change 3021826 on 2016/06/21 by Phillip.Kavan
[UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object.
change summary:
- added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API
- modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates
#jira UE-31831
Change 3022047 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where copy/paste of return nodes would not preserve value or link data
#jira UE-26937
Change 3022619 on 2016/06/22 by Maciej.Mroz
#jira UE-30858 Nativized Orion - Some particle effects are not rendering
A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added.
It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry.
Fixed GameplayCueManager. Nativized cues can be found.
This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage).
Change 3022654 on 2016/06/22 by Maciej.Mroz
FBackendHelperStaticSearchableValues -fixed too strict ensure
Change 3023067 on 2016/06/22 by Maciej.Mroz
#jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project
Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor.
Change 3023222 on 2016/06/22 by Ryan.Rauschkolb
Fixed MakeArray node elements break when editing struct elements
#jira UE-21392
Change 3023405 on 2016/06/22 by Mike.Beach
Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran).
#jira UE-31897
Change 3023992 on 2016/06/22 by Mike.Beach
Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions.
#jira UE-31859
[CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
|
|
|
void UK2Node_MakeArray::SyncPinNames()
|
|
|
|
|
{
|
|
|
|
|
int32 CurrentNumParentPins = 0;
|
|
|
|
|
for (int32 PinIndex = 0; PinIndex < Pins.Num(); ++PinIndex)
|
|
|
|
|
{
|
|
|
|
|
UEdGraphPin*& CurrentPin = Pins[PinIndex];
|
|
|
|
|
if (CurrentPin->Direction == EGPD_Input &&
|
|
|
|
|
CurrentPin->ParentPin == nullptr)
|
|
|
|
|
{
|
|
|
|
|
FString OldName = CurrentPin->PinName;
|
|
|
|
|
FString ElementName = FString::Printf(TEXT("[%d]"), CurrentNumParentPins++);
|
|
|
|
|
|
|
|
|
|
CurrentPin->Modify();
|
|
|
|
|
CurrentPin->PinName = ElementName;
|
|
|
|
|
|
|
|
|
|
if (CurrentPin->SubPins.Num() > 0)
|
|
|
|
|
{
|
|
|
|
|
FString OldFriendlyName = OldName;
|
|
|
|
|
FString ElementFriendlyName = ElementName;
|
|
|
|
|
|
|
|
|
|
// SubPin Friendly Name has an extra space in it so we need to account for that
|
|
|
|
|
OldFriendlyName.InsertAt(1, " ");
|
|
|
|
|
ElementFriendlyName.InsertAt(1, " ");
|
|
|
|
|
|
|
|
|
|
for (UEdGraphPin*& SubPin : CurrentPin->SubPins)
|
|
|
|
|
{
|
|
|
|
|
FString SubPinFriendlyName = SubPin->PinFriendlyName.ToString();
|
|
|
|
|
SubPinFriendlyName = SubPinFriendlyName.Replace(*OldFriendlyName, *ElementFriendlyName);
|
|
|
|
|
|
|
|
|
|
SubPin->Modify();
|
|
|
|
|
SubPin->PinName = SubPin->PinName.Replace(*OldName, *ElementName);
|
|
|
|
|
SubPin->PinFriendlyName = FText::FromString(SubPinFriendlyName);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
void UK2Node_MakeArray::RemoveInputPin(UEdGraphPin* Pin)
|
|
|
|
|
{
|
|
|
|
|
FScopedTransaction Transaction( LOCTEXT("RemovePinTx", "RemovePin") );
|
|
|
|
|
Modify();
|
|
|
|
|
|
|
|
|
|
check(Pin->Direction == EGPD_Input);
|
|
|
|
|
|
|
|
|
|
int32 PinRemovalIndex = INDEX_NONE;
|
|
|
|
|
if (Pins.Find(Pin, /*out*/ PinRemovalIndex))
|
|
|
|
|
{
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2927746 on 2016/03/30 by Michael.Schoell
Local variables in function graphs will now store a hard reference to their UObject value.
Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint.
#jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native
Change 2927751 on 2016/03/30 by Michael.Schoell
Back out changelist 2927746
Change 2986483 on 2016/05/23 by Maciej.Mroz
#jira UE-30976 Editable enum values set on an instance are lost during nativization
Added overriden names of Enum keys.
Change 2986712 on 2016/05/23 by Phillip.Kavan
[UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class.
change summary:
- modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root.
Change 2987406 on 2016/05/23 by Ryan.Rauschkolb
Fixed Functions filter in Find-In-Blueprints will show components from the SCS
#jira UE-30140
Change 2988925 on 2016/05/24 by Ryan.Rauschkolb
Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph.
#jira UE-20232
Change 2989001 on 2016/05/24 by Dan.Oconnor
PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner)
#jira UE-31142
Change 2989447 on 2016/05/25 by Phillip.Kavan
[UE-30807] Propagate edit condition property value changes to instances of template objects.
change summary:
- modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO)
Change 2989804 on 2016/05/25 by Phillip.Kavan
[UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class.
change summary:
- modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component
Change 2990234 on 2016/05/25 by Ryan.Rauschkolb
Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph
#jira UE-4426
Change 2990566 on 2016/05/25 by Mike.Beach
Better warn logging to help locate variable nodes that emit a "variable not found" message.
Change 2991083 on 2016/05/26 by Maciej.Mroz
Blueprint nativization: converted classes have "config" specified.
Change 2991363 on 2016/05/26 by Phillip.Kavan
[UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components.
change summary:
- modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text
- modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed)
- modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass
- modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects
Change 2992990 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node
#jira UE-21973
Change 2992995 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked.
#jira UE-30990
Change 2993449 on 2016/05/27 by Phillip.Kavan
[UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing.
change summary:
- modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type.
Change 2993531 on 2016/05/27 by Mike.Beach
PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell)
Change 2993969 on 2016/05/30 by Maciej.Mroz
UE-30729 Crash in Native Orion when selecting Sword or Tomahawk
Clear AsyncLoading in subobjects.
Change 2993990 on 2016/05/30 by Phillip.Kavan
[UE-30984] Exclude reroute nodes from Blueprint profiler node mapping.
change summary:
- modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links.
- modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links.
- modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points.
- modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points.
Change 2994591 on 2016/05/31 by Ryan.Rauschkolb
Fixed issue where inherited Blueprint variable would not show parent's replications settings
#jira UE-18912
Change 2994613 on 2016/05/31 by Ben.Cosh
Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal.
#Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher
#Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy
#Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler
#Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab
#Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status
#Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented
#Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out
#Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean"
#Jira UE-31377 - BP Profiler - Default tree view filtering to off
#Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP
#Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)"
Notes:-
- Sequence node inclusive time fixed
- Trace History tidy up
- Compile Icon and status messages for instrumentation
- Message in the profiler tab for instrumentation
- Profiler view tidy up and heat thresholds controls added
- fixed the summed execution branch stats
- fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396
- added hottest path and hottest endpoint wire heatmaps
- switched off the graph filter by default
- added total time for the heatmaps
- fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code
Change 2995058 on 2016/05/31 by Phillip.Kavan
[UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running.
change summary:
- modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class.
- modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context.
Change 2995218 on 2016/05/31 by Phillip.Kavan
[UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size.
change summary:
- modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout.
Change 2996417 on 2016/06/01 by Phillip.Kavan
[UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor.
change summary:
- modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object.
Change 2997001 on 2016/06/01 by Ryan.Rauschkolb
Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component
#jira UE-30143
Change 2997521 on 2016/06/02 by Maciej.Mroz
[Blueprint Nativization]
- Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h
- Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated.
Change 2997522 on 2016/06/02 by Maciej.Mroz
Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization)
Change 2997638 on 2016/06/02 by Maciej.Mroz
Improvements for Blueprint Nativization:
- Overridden names in nativized code have proper escape characters (in generated code).
- OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared
- Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>)
- warning C4883 is disabled in .generated.cpp files for nativized module
Change 2997639 on 2016/06/02 by Maciej.Mroz
Minor improvements in Ocean gameplay code. Required for Blueprint Nativization.
#jira UE-28945 Failure packaging Nativized Ocean
Change 2997656 on 2016/06/02 by Maciej.Mroz
Various improvements in BlueprintCompilerCppBackend:
- Fixed interface cast
- Fixed TSwitchValue issue (when used with literals)
- Fixed improper name for NativeBlueprintEvent (when calling parent's implementation)
- Fixed bitfield getter code.
- Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums)
- operator == is generated for nativized structs
- Fixed AssedId (AssetPtr) constructor in nativized code.
- Fixed arrays of noexport struct
- Fixed missing headers for native single cast delegate signature.
- Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata.
Change 2997691 on 2016/06/02 by Maciej.Mroz
operator == in FText. It is required for some functions in TArray<FText>
Change 2997793 on 2016/06/02 by Ben.Cosh
Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter
#Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh
#Proj BlueprintProfiler, Kismet
Change 2997901 on 2016/06/02 by Maciej.Mroz
Back out changelist 2997691
Change 2998038 on 2016/06/02 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 2998052 on 2016/06/02 by Ryan.Rauschkolb
Fixed Comment bubbles not remembering changes after losing focus
#jira UE-20012
Change 2998450 on 2016/06/02 by Phillip.Kavan
[UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata.
change summary:
- modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it.
Change 2999763 on 2016/06/03 by Mike.Beach
Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes.
#jira UE-26761
Change 2999768 on 2016/06/03 by Maciej.Mroz
#jira UE-31592, UE-31593
This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty.
Change 2999770 on 2016/06/03 by Maciej.Mroz
[Blueprint Nativization]
Workaround for missing ==operator in native structures. The generated code uses special version of array funtions.
Change 2999798 on 2016/06/03 by Mike.Beach
Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor.
#jira UE-31522
Change 2999941 on 2016/06/03 by Mike.Beach
Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning).
#jira UE-23371
Change 3001731 on 2016/06/06 by Phillip.Kavan
[UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target.
change summary:
- modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events.
- modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field.
- modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals.
- modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events.
Change 3002075 on 2016/06/06 by Maciej.Mroz
Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend.
Literal expression can be emitted without known desitination property.
#jira UE-28443 Set Boolean (by ref) crashes the editor on compile
Change 3002096 on 2016/06/06 by Ben.Cosh
This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs.
#Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called
#Proj BlueprintProfiler
Change 3002108 on 2016/06/06 by Ben.Cosh
Adds a new default option to average the blueprint level stats in the profiler.
#Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged
#Proj Kismet, BlueprintProfiler
- The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward.
Change 3002782 on 2016/06/06 by samuel.proctor
Test assets for Interface testing
Change 3003826 on 2016/06/07 by Ben.Cosh
A few minor visual improvements for the blueprint profiler.
#Proj Kismet, BlueprintProfiler, EditorStyle
- Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors.
- Updated the pure node icon.
Change 3004067 on 2016/06/07 by samuel.proctor
New test asset for blueprint interfaces
Change 3004069 on 2016/06/07 by samuel.proctor
Updating asset for Interface testing
Change 3004275 on 2016/06/07 by Ryan.Rauschkolb
Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility
#jira UE-23733
Change 3004329 on 2016/06/07 by Dan.Oconnor
EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced.
Change 3004418 on 2016/06/07 by Maciej.Mroz
KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value.
Change 3004496 on 2016/06/07 by Dan.Oconnor
Disabling expensive pin allocation tracking
Change 3004649 on 2016/06/07 by Mike.Beach
Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors).
#jira UE-31236
Change 3004667 on 2016/06/07 by Dan.Oconnor
Removed my debugging logic
Change 3004848 on 2016/06/07 by Dan.Oconnor
Fix spammy ensure
Change 3004871 on 2016/06/07 by Phillip.Kavan
[UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view.
change summary:
- modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO).
- modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts.
Change 3005203 on 2016/06/07 by Dan.Oconnor
Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems
#jira UE-31750
Change 3005441 on 2016/06/08 by Maciej.Mroz
#jira UE-31625 Crash in nativized Orion
AssembleReferenceTokenStream is called for Dynamic Classes:
- in ConstructDynamicType() (when class is explicitly loaded)
- in __CustomDynamicClassInitialization() (when CDO is created)
Change 3005540 on 2016/06/08 by Ben.Cosh
This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring.
#Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE
#Proj BlueprintProfiler, Kismet
- The jira was already fixed but I think this change improves the instance status clarity
Change 3006196 on 2016/06/08 by Dan.Oconnor
Copy/paste logic for pin connections got lost in the shuffle
#jira UE-31747
Change 3006416 on 2016/06/08 by Phillip.Kavan
[UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order).
change summary:
- modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load.
Change 3006522 on 2016/06/08 by Dan.Oconnor
Under rare circumstances a deprecated pin comes in that is outered to the transient package
#jira UE-31779
Change 3006576 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
#jira UE-31796
Change 3006610 on 2016/06/08 by Phillip.Kavan
[UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance.
change summary:
- modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO.
Change 3006824 on 2016/06/08 by Dan.Oconnor
More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays
#jira UE-31794
Change 3006828 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
Change 3006857 on 2016/06/08 by Dan.Oconnor
Investigating shutdown ensure, traced back to a static UEdGraphPin
Change 3006907 on 2016/06/08 by Dan.Oconnor
Noneditor build fix
Change 3006929 on 2016/06/08 by Dan.Oconnor
Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779
Change 3007133 on 2016/06/09 by Ben.Cosh
Fix for issue in the profiler asserting creating pins that don't have unique names.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
- I believe this was recently introduced with the changes to UEdGraphPin's
Change 3007964 on 2016/06/09 by Dan.Oconnor
Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo
#jira UE-31829
Change 3007996 on 2016/06/09 by Ryan.Rauschkolb
Added 'empty' keyword to Array Clear Node.
#jira UE-12356
Change 3008007 on 2016/06/09 by Ryan.Rauschkolb
Added 'negate' keyword to boolean NOT node
#jira UE-12490
Change 3008011 on 2016/06/09 by Ryan.Rauschkolb
Added Vector2D * Vector2D multiplication node
#jira UE-31503
Change 3008014 on 2016/06/09 by Ryan.Rauschkolb
Fixed Cannot connect Make Array node output to MakeArray input with split pins
#jira UE-28530
Change 3008243 on 2016/06/09 by Dan.Oconnor
Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe'
#jira UE-31841
Change 3008289 on 2016/06/09 by Dan.Oconnor
Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later
#jira UE-31794
Change 3008422 on 2016/06/09 by Dan.Oconnor
Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out)
#jira UE-31857
Change 3009164 on 2016/06/10 by Ryan.Rauschkolb
Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel.
#jira UE-21141,UE-23723
Change 3009165 on 2016/06/10 by Ryan.Rauschkolb
Fixed Structure Default value editor collapses after undoing an alteration of a default value
#jira UE-31741
Change 3009181 on 2016/06/10 by Ryan.Rauschkolb
Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh
#jira UE-30014
Change 3009313 on 2016/06/10 by Mike.Beach
Addressing issues with function return nodes in multiple ways:
- Preventing users from deleting return nodes for overriden/inherited functions.
- Also making sure that we create terminals for out params when the return node is disconnected (and pruned).
- Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function).
#jira UE-31418
Change 3009595 on 2016/06/10 by Dan.Oconnor
EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile
#jira UE-31879
Change 3009774 on 2016/06/10 by Dan.Oconnor
Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return
#jira UE-31906
Change 3009988 on 2016/06/10 by Dan.Oconnor
Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization
#jira UE-31888
Change 3010050 on 2016/06/10 by Dan.Oconnor
Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved
#jira UE-31892
Change 3010071 on 2016/06/10 by Dan.Oconnor
Fix for pasting when owning node has whitespace in result of GetPathName
#jira UE-31898
#coderview Bob.Tellez
Change 3010244 on 2016/06/11 by Dan.Oconnor
Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870
Change 3010630 on 2016/06/13 by Dan.Oconnor
No longer relying on path name for pin resolution, path is unstable across graphs
#jira UE-31870
Change 3010647 on 2016/06/13 by Dan.Oconnor
PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays)
#jira UE-31928
Change 3011175 on 2016/06/13 by Ben.Cosh
Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance.
#Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert
#Proj Kismet, BlueprintProfiler
- Ensured that the trace paths contain the macro instance exec nodes
- Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates.
- Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does.
Change 3011271 on 2016/06/13 by Ben.Cosh
This adds support for inherited blueprint classes to the blueprint profiler.
#Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
Change 3011556 on 2016/06/13 by Ryan.Rauschkolb
Fixed Crash when breaking link to a split pin in MakeArray that is an array type
#jira UE-31919
Change 3011624 on 2016/06/13 by Dan.Oconnor
Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating.
#jira UE-31955
Change 3011984 on 2016/06/13 by Dan.Oconnor
Sanitizing parentpin's subpins when destroying a pin
#jira UE-21392
Change 3012894 on 2016/06/14 by Phillip.Kavan
[UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing.
change summary:
- modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types.
#jira UE-30922
Change 3013037 on 2016/06/14 by Ryan.Rauschkolb
Fixed Crash when connecting to a split pin in a MakeArray node that has no connections
#jira UE-31917
Change 3014846 on 2016/06/15 by Dan.Oconnor
No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change)
#jira FORT-23753
Change 3015014 on 2016/06/15 by Dan.Oconnor
Removing poorly implement IsLetter function
Change 3015142 on 2016/06/15 by Dan.Oconnor
More intentional about removing subpins, prevents stale iterator on split pin collapse
#jira UE-32072
Change 3016326 on 2016/06/16 by Ryan.Rauschkolb
Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values
#jira UE-32016
Change 3016494 on 2016/06/16 by Ryan.Rauschkolb
Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class
#jira UE-31876
Change 3016557 on 2016/06/16 by Dan.Oconnor
Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark
#jira FORT-23753
Change 3016577 on 2016/06/16 by Ryan.Rauschkolb
Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType
Change 3016906 on 2016/06/16 by Dan.Oconnor
Back out changelist 3016557
This will be done by Jamie.Dale in Dev-Editor
Change 3018081 on 2016/06/17 by Phillip.Kavan
[UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus)
#jira UE-31832
Change 3018402 on 2016/06/17 by Dan.Oconnor
Missing include
Change 3018426 on 2016/06/17 by Ryan.Rauschkolb
Fixed MakeArray node with split pins and no connections does not paste correctly
#jira UE-32148
Change 3018452 on 2016/06/17 by Mike.Beach
Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load).
#jira UE-32158
Change 3018456 on 2016/06/17 by Dan.Oconnor
Fix for static analysis warning, this null check does nothing
Change 3018595 on 2016/06/17 by Mike.Beach
Fix for shadowed variable warning in CIS.
Change 3018699 on 2016/06/17 by Mike.Beach
Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing).
Change 3019734 on 2016/06/20 by Phillip.Kavan
[UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes.
change summary:
- added a UK2Node_AddComponent::PostDuplicate() override
- moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides.
notes:
- will prevent getting into the scenario described in UE-31831
#jira UE-32064
Change 3020635 on 2016/06/20 by Dan.Oconnor
Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile)
Change 3020894 on 2016/06/21 by Maciej.Mroz
#2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell)
Change 3020958 on 2016/06/21 by Ben.Cosh
This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling.
#Jira UE-32270 - Input key events generate extra instrumentation data per key press
#Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation.
#Proj BlueprintProfiler, UnrealEd
Change 3021316 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where Copy/Paste of event nodes would not retain link information
Change 3021826 on 2016/06/21 by Phillip.Kavan
[UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object.
change summary:
- added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API
- modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates
#jira UE-31831
Change 3022047 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where copy/paste of return nodes would not preserve value or link data
#jira UE-26937
Change 3022619 on 2016/06/22 by Maciej.Mroz
#jira UE-30858 Nativized Orion - Some particle effects are not rendering
A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added.
It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry.
Fixed GameplayCueManager. Nativized cues can be found.
This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage).
Change 3022654 on 2016/06/22 by Maciej.Mroz
FBackendHelperStaticSearchableValues -fixed too strict ensure
Change 3023067 on 2016/06/22 by Maciej.Mroz
#jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project
Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor.
Change 3023222 on 2016/06/22 by Ryan.Rauschkolb
Fixed MakeArray node elements break when editing struct elements
#jira UE-21392
Change 3023405 on 2016/06/22 by Mike.Beach
Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran).
#jira UE-31897
Change 3023992 on 2016/06/22 by Mike.Beach
Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions.
#jira UE-31859
[CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
|
|
|
UEdGraphPin* ParentPin = Pin->ParentPin;
|
|
|
|
|
Pins.RemoveAt(PinRemovalIndex);
|
|
|
|
|
Pin->MarkPendingKill();
|
|
|
|
|
|
|
|
|
|
if (!ParentPin)
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2927746 on 2016/03/30 by Michael.Schoell
Local variables in function graphs will now store a hard reference to their UObject value.
Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint.
#jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native
Change 2927751 on 2016/03/30 by Michael.Schoell
Back out changelist 2927746
Change 2986483 on 2016/05/23 by Maciej.Mroz
#jira UE-30976 Editable enum values set on an instance are lost during nativization
Added overriden names of Enum keys.
Change 2986712 on 2016/05/23 by Phillip.Kavan
[UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class.
change summary:
- modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root.
Change 2987406 on 2016/05/23 by Ryan.Rauschkolb
Fixed Functions filter in Find-In-Blueprints will show components from the SCS
#jira UE-30140
Change 2988925 on 2016/05/24 by Ryan.Rauschkolb
Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph.
#jira UE-20232
Change 2989001 on 2016/05/24 by Dan.Oconnor
PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner)
#jira UE-31142
Change 2989447 on 2016/05/25 by Phillip.Kavan
[UE-30807] Propagate edit condition property value changes to instances of template objects.
change summary:
- modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO)
Change 2989804 on 2016/05/25 by Phillip.Kavan
[UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class.
change summary:
- modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component
Change 2990234 on 2016/05/25 by Ryan.Rauschkolb
Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph
#jira UE-4426
Change 2990566 on 2016/05/25 by Mike.Beach
Better warn logging to help locate variable nodes that emit a "variable not found" message.
Change 2991083 on 2016/05/26 by Maciej.Mroz
Blueprint nativization: converted classes have "config" specified.
Change 2991363 on 2016/05/26 by Phillip.Kavan
[UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components.
change summary:
- modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text
- modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed)
- modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass
- modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects
Change 2992990 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node
#jira UE-21973
Change 2992995 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked.
#jira UE-30990
Change 2993449 on 2016/05/27 by Phillip.Kavan
[UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing.
change summary:
- modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type.
Change 2993531 on 2016/05/27 by Mike.Beach
PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell)
Change 2993969 on 2016/05/30 by Maciej.Mroz
UE-30729 Crash in Native Orion when selecting Sword or Tomahawk
Clear AsyncLoading in subobjects.
Change 2993990 on 2016/05/30 by Phillip.Kavan
[UE-30984] Exclude reroute nodes from Blueprint profiler node mapping.
change summary:
- modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links.
- modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links.
- modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points.
- modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points.
Change 2994591 on 2016/05/31 by Ryan.Rauschkolb
Fixed issue where inherited Blueprint variable would not show parent's replications settings
#jira UE-18912
Change 2994613 on 2016/05/31 by Ben.Cosh
Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal.
#Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher
#Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy
#Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler
#Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab
#Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status
#Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented
#Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out
#Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean"
#Jira UE-31377 - BP Profiler - Default tree view filtering to off
#Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP
#Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)"
Notes:-
- Sequence node inclusive time fixed
- Trace History tidy up
- Compile Icon and status messages for instrumentation
- Message in the profiler tab for instrumentation
- Profiler view tidy up and heat thresholds controls added
- fixed the summed execution branch stats
- fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396
- added hottest path and hottest endpoint wire heatmaps
- switched off the graph filter by default
- added total time for the heatmaps
- fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code
Change 2995058 on 2016/05/31 by Phillip.Kavan
[UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running.
change summary:
- modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class.
- modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context.
Change 2995218 on 2016/05/31 by Phillip.Kavan
[UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size.
change summary:
- modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout.
Change 2996417 on 2016/06/01 by Phillip.Kavan
[UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor.
change summary:
- modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object.
Change 2997001 on 2016/06/01 by Ryan.Rauschkolb
Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component
#jira UE-30143
Change 2997521 on 2016/06/02 by Maciej.Mroz
[Blueprint Nativization]
- Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h
- Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated.
Change 2997522 on 2016/06/02 by Maciej.Mroz
Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization)
Change 2997638 on 2016/06/02 by Maciej.Mroz
Improvements for Blueprint Nativization:
- Overridden names in nativized code have proper escape characters (in generated code).
- OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared
- Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>)
- warning C4883 is disabled in .generated.cpp files for nativized module
Change 2997639 on 2016/06/02 by Maciej.Mroz
Minor improvements in Ocean gameplay code. Required for Blueprint Nativization.
#jira UE-28945 Failure packaging Nativized Ocean
Change 2997656 on 2016/06/02 by Maciej.Mroz
Various improvements in BlueprintCompilerCppBackend:
- Fixed interface cast
- Fixed TSwitchValue issue (when used with literals)
- Fixed improper name for NativeBlueprintEvent (when calling parent's implementation)
- Fixed bitfield getter code.
- Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums)
- operator == is generated for nativized structs
- Fixed AssedId (AssetPtr) constructor in nativized code.
- Fixed arrays of noexport struct
- Fixed missing headers for native single cast delegate signature.
- Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata.
Change 2997691 on 2016/06/02 by Maciej.Mroz
operator == in FText. It is required for some functions in TArray<FText>
Change 2997793 on 2016/06/02 by Ben.Cosh
Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter
#Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh
#Proj BlueprintProfiler, Kismet
Change 2997901 on 2016/06/02 by Maciej.Mroz
Back out changelist 2997691
Change 2998038 on 2016/06/02 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 2998052 on 2016/06/02 by Ryan.Rauschkolb
Fixed Comment bubbles not remembering changes after losing focus
#jira UE-20012
Change 2998450 on 2016/06/02 by Phillip.Kavan
[UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata.
change summary:
- modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it.
Change 2999763 on 2016/06/03 by Mike.Beach
Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes.
#jira UE-26761
Change 2999768 on 2016/06/03 by Maciej.Mroz
#jira UE-31592, UE-31593
This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty.
Change 2999770 on 2016/06/03 by Maciej.Mroz
[Blueprint Nativization]
Workaround for missing ==operator in native structures. The generated code uses special version of array funtions.
Change 2999798 on 2016/06/03 by Mike.Beach
Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor.
#jira UE-31522
Change 2999941 on 2016/06/03 by Mike.Beach
Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning).
#jira UE-23371
Change 3001731 on 2016/06/06 by Phillip.Kavan
[UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target.
change summary:
- modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events.
- modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field.
- modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals.
- modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events.
Change 3002075 on 2016/06/06 by Maciej.Mroz
Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend.
Literal expression can be emitted without known desitination property.
#jira UE-28443 Set Boolean (by ref) crashes the editor on compile
Change 3002096 on 2016/06/06 by Ben.Cosh
This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs.
#Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called
#Proj BlueprintProfiler
Change 3002108 on 2016/06/06 by Ben.Cosh
Adds a new default option to average the blueprint level stats in the profiler.
#Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged
#Proj Kismet, BlueprintProfiler
- The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward.
Change 3002782 on 2016/06/06 by samuel.proctor
Test assets for Interface testing
Change 3003826 on 2016/06/07 by Ben.Cosh
A few minor visual improvements for the blueprint profiler.
#Proj Kismet, BlueprintProfiler, EditorStyle
- Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors.
- Updated the pure node icon.
Change 3004067 on 2016/06/07 by samuel.proctor
New test asset for blueprint interfaces
Change 3004069 on 2016/06/07 by samuel.proctor
Updating asset for Interface testing
Change 3004275 on 2016/06/07 by Ryan.Rauschkolb
Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility
#jira UE-23733
Change 3004329 on 2016/06/07 by Dan.Oconnor
EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced.
Change 3004418 on 2016/06/07 by Maciej.Mroz
KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value.
Change 3004496 on 2016/06/07 by Dan.Oconnor
Disabling expensive pin allocation tracking
Change 3004649 on 2016/06/07 by Mike.Beach
Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors).
#jira UE-31236
Change 3004667 on 2016/06/07 by Dan.Oconnor
Removed my debugging logic
Change 3004848 on 2016/06/07 by Dan.Oconnor
Fix spammy ensure
Change 3004871 on 2016/06/07 by Phillip.Kavan
[UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view.
change summary:
- modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO).
- modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts.
Change 3005203 on 2016/06/07 by Dan.Oconnor
Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems
#jira UE-31750
Change 3005441 on 2016/06/08 by Maciej.Mroz
#jira UE-31625 Crash in nativized Orion
AssembleReferenceTokenStream is called for Dynamic Classes:
- in ConstructDynamicType() (when class is explicitly loaded)
- in __CustomDynamicClassInitialization() (when CDO is created)
Change 3005540 on 2016/06/08 by Ben.Cosh
This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring.
#Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE
#Proj BlueprintProfiler, Kismet
- The jira was already fixed but I think this change improves the instance status clarity
Change 3006196 on 2016/06/08 by Dan.Oconnor
Copy/paste logic for pin connections got lost in the shuffle
#jira UE-31747
Change 3006416 on 2016/06/08 by Phillip.Kavan
[UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order).
change summary:
- modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load.
Change 3006522 on 2016/06/08 by Dan.Oconnor
Under rare circumstances a deprecated pin comes in that is outered to the transient package
#jira UE-31779
Change 3006576 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
#jira UE-31796
Change 3006610 on 2016/06/08 by Phillip.Kavan
[UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance.
change summary:
- modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO.
Change 3006824 on 2016/06/08 by Dan.Oconnor
More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays
#jira UE-31794
Change 3006828 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
Change 3006857 on 2016/06/08 by Dan.Oconnor
Investigating shutdown ensure, traced back to a static UEdGraphPin
Change 3006907 on 2016/06/08 by Dan.Oconnor
Noneditor build fix
Change 3006929 on 2016/06/08 by Dan.Oconnor
Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779
Change 3007133 on 2016/06/09 by Ben.Cosh
Fix for issue in the profiler asserting creating pins that don't have unique names.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
- I believe this was recently introduced with the changes to UEdGraphPin's
Change 3007964 on 2016/06/09 by Dan.Oconnor
Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo
#jira UE-31829
Change 3007996 on 2016/06/09 by Ryan.Rauschkolb
Added 'empty' keyword to Array Clear Node.
#jira UE-12356
Change 3008007 on 2016/06/09 by Ryan.Rauschkolb
Added 'negate' keyword to boolean NOT node
#jira UE-12490
Change 3008011 on 2016/06/09 by Ryan.Rauschkolb
Added Vector2D * Vector2D multiplication node
#jira UE-31503
Change 3008014 on 2016/06/09 by Ryan.Rauschkolb
Fixed Cannot connect Make Array node output to MakeArray input with split pins
#jira UE-28530
Change 3008243 on 2016/06/09 by Dan.Oconnor
Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe'
#jira UE-31841
Change 3008289 on 2016/06/09 by Dan.Oconnor
Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later
#jira UE-31794
Change 3008422 on 2016/06/09 by Dan.Oconnor
Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out)
#jira UE-31857
Change 3009164 on 2016/06/10 by Ryan.Rauschkolb
Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel.
#jira UE-21141,UE-23723
Change 3009165 on 2016/06/10 by Ryan.Rauschkolb
Fixed Structure Default value editor collapses after undoing an alteration of a default value
#jira UE-31741
Change 3009181 on 2016/06/10 by Ryan.Rauschkolb
Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh
#jira UE-30014
Change 3009313 on 2016/06/10 by Mike.Beach
Addressing issues with function return nodes in multiple ways:
- Preventing users from deleting return nodes for overriden/inherited functions.
- Also making sure that we create terminals for out params when the return node is disconnected (and pruned).
- Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function).
#jira UE-31418
Change 3009595 on 2016/06/10 by Dan.Oconnor
EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile
#jira UE-31879
Change 3009774 on 2016/06/10 by Dan.Oconnor
Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return
#jira UE-31906
Change 3009988 on 2016/06/10 by Dan.Oconnor
Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization
#jira UE-31888
Change 3010050 on 2016/06/10 by Dan.Oconnor
Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved
#jira UE-31892
Change 3010071 on 2016/06/10 by Dan.Oconnor
Fix for pasting when owning node has whitespace in result of GetPathName
#jira UE-31898
#coderview Bob.Tellez
Change 3010244 on 2016/06/11 by Dan.Oconnor
Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870
Change 3010630 on 2016/06/13 by Dan.Oconnor
No longer relying on path name for pin resolution, path is unstable across graphs
#jira UE-31870
Change 3010647 on 2016/06/13 by Dan.Oconnor
PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays)
#jira UE-31928
Change 3011175 on 2016/06/13 by Ben.Cosh
Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance.
#Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert
#Proj Kismet, BlueprintProfiler
- Ensured that the trace paths contain the macro instance exec nodes
- Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates.
- Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does.
Change 3011271 on 2016/06/13 by Ben.Cosh
This adds support for inherited blueprint classes to the blueprint profiler.
#Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
Change 3011556 on 2016/06/13 by Ryan.Rauschkolb
Fixed Crash when breaking link to a split pin in MakeArray that is an array type
#jira UE-31919
Change 3011624 on 2016/06/13 by Dan.Oconnor
Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating.
#jira UE-31955
Change 3011984 on 2016/06/13 by Dan.Oconnor
Sanitizing parentpin's subpins when destroying a pin
#jira UE-21392
Change 3012894 on 2016/06/14 by Phillip.Kavan
[UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing.
change summary:
- modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types.
#jira UE-30922
Change 3013037 on 2016/06/14 by Ryan.Rauschkolb
Fixed Crash when connecting to a split pin in a MakeArray node that has no connections
#jira UE-31917
Change 3014846 on 2016/06/15 by Dan.Oconnor
No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change)
#jira FORT-23753
Change 3015014 on 2016/06/15 by Dan.Oconnor
Removing poorly implement IsLetter function
Change 3015142 on 2016/06/15 by Dan.Oconnor
More intentional about removing subpins, prevents stale iterator on split pin collapse
#jira UE-32072
Change 3016326 on 2016/06/16 by Ryan.Rauschkolb
Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values
#jira UE-32016
Change 3016494 on 2016/06/16 by Ryan.Rauschkolb
Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class
#jira UE-31876
Change 3016557 on 2016/06/16 by Dan.Oconnor
Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark
#jira FORT-23753
Change 3016577 on 2016/06/16 by Ryan.Rauschkolb
Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType
Change 3016906 on 2016/06/16 by Dan.Oconnor
Back out changelist 3016557
This will be done by Jamie.Dale in Dev-Editor
Change 3018081 on 2016/06/17 by Phillip.Kavan
[UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus)
#jira UE-31832
Change 3018402 on 2016/06/17 by Dan.Oconnor
Missing include
Change 3018426 on 2016/06/17 by Ryan.Rauschkolb
Fixed MakeArray node with split pins and no connections does not paste correctly
#jira UE-32148
Change 3018452 on 2016/06/17 by Mike.Beach
Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load).
#jira UE-32158
Change 3018456 on 2016/06/17 by Dan.Oconnor
Fix for static analysis warning, this null check does nothing
Change 3018595 on 2016/06/17 by Mike.Beach
Fix for shadowed variable warning in CIS.
Change 3018699 on 2016/06/17 by Mike.Beach
Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing).
Change 3019734 on 2016/06/20 by Phillip.Kavan
[UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes.
change summary:
- added a UK2Node_AddComponent::PostDuplicate() override
- moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides.
notes:
- will prevent getting into the scenario described in UE-31831
#jira UE-32064
Change 3020635 on 2016/06/20 by Dan.Oconnor
Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile)
Change 3020894 on 2016/06/21 by Maciej.Mroz
#2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell)
Change 3020958 on 2016/06/21 by Ben.Cosh
This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling.
#Jira UE-32270 - Input key events generate extra instrumentation data per key press
#Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation.
#Proj BlueprintProfiler, UnrealEd
Change 3021316 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where Copy/Paste of event nodes would not retain link information
Change 3021826 on 2016/06/21 by Phillip.Kavan
[UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object.
change summary:
- added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API
- modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates
#jira UE-31831
Change 3022047 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where copy/paste of return nodes would not preserve value or link data
#jira UE-26937
Change 3022619 on 2016/06/22 by Maciej.Mroz
#jira UE-30858 Nativized Orion - Some particle effects are not rendering
A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added.
It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry.
Fixed GameplayCueManager. Nativized cues can be found.
This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage).
Change 3022654 on 2016/06/22 by Maciej.Mroz
FBackendHelperStaticSearchableValues -fixed too strict ensure
Change 3023067 on 2016/06/22 by Maciej.Mroz
#jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project
Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor.
Change 3023222 on 2016/06/22 by Ryan.Rauschkolb
Fixed MakeArray node elements break when editing struct elements
#jira UE-21392
Change 3023405 on 2016/06/22 by Mike.Beach
Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran).
#jira UE-31897
Change 3023992 on 2016/06/22 by Mike.Beach
Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions.
#jira UE-31859
[CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
|
|
|
--NumInputs;
|
|
|
|
|
}
|
|
|
|
|
else if (ParentPin->SubPins.Num() == 0)
|
|
|
|
|
{
|
|
|
|
|
// We have removed all of the subpins, so we need to remove the parent as well
|
|
|
|
|
Pins.Remove(ParentPin);
|
|
|
|
|
ParentPin->MarkPendingKill();
|
|
|
|
|
--NumInputs;
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2927746 on 2016/03/30 by Michael.Schoell
Local variables in function graphs will now store a hard reference to their UObject value.
Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint.
#jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native
Change 2927751 on 2016/03/30 by Michael.Schoell
Back out changelist 2927746
Change 2986483 on 2016/05/23 by Maciej.Mroz
#jira UE-30976 Editable enum values set on an instance are lost during nativization
Added overriden names of Enum keys.
Change 2986712 on 2016/05/23 by Phillip.Kavan
[UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class.
change summary:
- modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root.
Change 2987406 on 2016/05/23 by Ryan.Rauschkolb
Fixed Functions filter in Find-In-Blueprints will show components from the SCS
#jira UE-30140
Change 2988925 on 2016/05/24 by Ryan.Rauschkolb
Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph.
#jira UE-20232
Change 2989001 on 2016/05/24 by Dan.Oconnor
PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner)
#jira UE-31142
Change 2989447 on 2016/05/25 by Phillip.Kavan
[UE-30807] Propagate edit condition property value changes to instances of template objects.
change summary:
- modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO)
Change 2989804 on 2016/05/25 by Phillip.Kavan
[UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class.
change summary:
- modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component
Change 2990234 on 2016/05/25 by Ryan.Rauschkolb
Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph
#jira UE-4426
Change 2990566 on 2016/05/25 by Mike.Beach
Better warn logging to help locate variable nodes that emit a "variable not found" message.
Change 2991083 on 2016/05/26 by Maciej.Mroz
Blueprint nativization: converted classes have "config" specified.
Change 2991363 on 2016/05/26 by Phillip.Kavan
[UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components.
change summary:
- modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text
- modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed)
- modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass
- modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects
Change 2992990 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node
#jira UE-21973
Change 2992995 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked.
#jira UE-30990
Change 2993449 on 2016/05/27 by Phillip.Kavan
[UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing.
change summary:
- modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type.
Change 2993531 on 2016/05/27 by Mike.Beach
PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell)
Change 2993969 on 2016/05/30 by Maciej.Mroz
UE-30729 Crash in Native Orion when selecting Sword or Tomahawk
Clear AsyncLoading in subobjects.
Change 2993990 on 2016/05/30 by Phillip.Kavan
[UE-30984] Exclude reroute nodes from Blueprint profiler node mapping.
change summary:
- modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links.
- modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links.
- modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points.
- modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points.
Change 2994591 on 2016/05/31 by Ryan.Rauschkolb
Fixed issue where inherited Blueprint variable would not show parent's replications settings
#jira UE-18912
Change 2994613 on 2016/05/31 by Ben.Cosh
Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal.
#Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher
#Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy
#Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler
#Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab
#Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status
#Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented
#Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out
#Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean"
#Jira UE-31377 - BP Profiler - Default tree view filtering to off
#Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP
#Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)"
Notes:-
- Sequence node inclusive time fixed
- Trace History tidy up
- Compile Icon and status messages for instrumentation
- Message in the profiler tab for instrumentation
- Profiler view tidy up and heat thresholds controls added
- fixed the summed execution branch stats
- fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396
- added hottest path and hottest endpoint wire heatmaps
- switched off the graph filter by default
- added total time for the heatmaps
- fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code
Change 2995058 on 2016/05/31 by Phillip.Kavan
[UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running.
change summary:
- modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class.
- modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context.
Change 2995218 on 2016/05/31 by Phillip.Kavan
[UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size.
change summary:
- modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout.
Change 2996417 on 2016/06/01 by Phillip.Kavan
[UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor.
change summary:
- modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object.
Change 2997001 on 2016/06/01 by Ryan.Rauschkolb
Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component
#jira UE-30143
Change 2997521 on 2016/06/02 by Maciej.Mroz
[Blueprint Nativization]
- Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h
- Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated.
Change 2997522 on 2016/06/02 by Maciej.Mroz
Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization)
Change 2997638 on 2016/06/02 by Maciej.Mroz
Improvements for Blueprint Nativization:
- Overridden names in nativized code have proper escape characters (in generated code).
- OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared
- Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>)
- warning C4883 is disabled in .generated.cpp files for nativized module
Change 2997639 on 2016/06/02 by Maciej.Mroz
Minor improvements in Ocean gameplay code. Required for Blueprint Nativization.
#jira UE-28945 Failure packaging Nativized Ocean
Change 2997656 on 2016/06/02 by Maciej.Mroz
Various improvements in BlueprintCompilerCppBackend:
- Fixed interface cast
- Fixed TSwitchValue issue (when used with literals)
- Fixed improper name for NativeBlueprintEvent (when calling parent's implementation)
- Fixed bitfield getter code.
- Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums)
- operator == is generated for nativized structs
- Fixed AssedId (AssetPtr) constructor in nativized code.
- Fixed arrays of noexport struct
- Fixed missing headers for native single cast delegate signature.
- Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata.
Change 2997691 on 2016/06/02 by Maciej.Mroz
operator == in FText. It is required for some functions in TArray<FText>
Change 2997793 on 2016/06/02 by Ben.Cosh
Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter
#Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh
#Proj BlueprintProfiler, Kismet
Change 2997901 on 2016/06/02 by Maciej.Mroz
Back out changelist 2997691
Change 2998038 on 2016/06/02 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 2998052 on 2016/06/02 by Ryan.Rauschkolb
Fixed Comment bubbles not remembering changes after losing focus
#jira UE-20012
Change 2998450 on 2016/06/02 by Phillip.Kavan
[UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata.
change summary:
- modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it.
Change 2999763 on 2016/06/03 by Mike.Beach
Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes.
#jira UE-26761
Change 2999768 on 2016/06/03 by Maciej.Mroz
#jira UE-31592, UE-31593
This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty.
Change 2999770 on 2016/06/03 by Maciej.Mroz
[Blueprint Nativization]
Workaround for missing ==operator in native structures. The generated code uses special version of array funtions.
Change 2999798 on 2016/06/03 by Mike.Beach
Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor.
#jira UE-31522
Change 2999941 on 2016/06/03 by Mike.Beach
Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning).
#jira UE-23371
Change 3001731 on 2016/06/06 by Phillip.Kavan
[UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target.
change summary:
- modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events.
- modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field.
- modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals.
- modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events.
Change 3002075 on 2016/06/06 by Maciej.Mroz
Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend.
Literal expression can be emitted without known desitination property.
#jira UE-28443 Set Boolean (by ref) crashes the editor on compile
Change 3002096 on 2016/06/06 by Ben.Cosh
This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs.
#Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called
#Proj BlueprintProfiler
Change 3002108 on 2016/06/06 by Ben.Cosh
Adds a new default option to average the blueprint level stats in the profiler.
#Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged
#Proj Kismet, BlueprintProfiler
- The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward.
Change 3002782 on 2016/06/06 by samuel.proctor
Test assets for Interface testing
Change 3003826 on 2016/06/07 by Ben.Cosh
A few minor visual improvements for the blueprint profiler.
#Proj Kismet, BlueprintProfiler, EditorStyle
- Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors.
- Updated the pure node icon.
Change 3004067 on 2016/06/07 by samuel.proctor
New test asset for blueprint interfaces
Change 3004069 on 2016/06/07 by samuel.proctor
Updating asset for Interface testing
Change 3004275 on 2016/06/07 by Ryan.Rauschkolb
Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility
#jira UE-23733
Change 3004329 on 2016/06/07 by Dan.Oconnor
EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced.
Change 3004418 on 2016/06/07 by Maciej.Mroz
KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value.
Change 3004496 on 2016/06/07 by Dan.Oconnor
Disabling expensive pin allocation tracking
Change 3004649 on 2016/06/07 by Mike.Beach
Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors).
#jira UE-31236
Change 3004667 on 2016/06/07 by Dan.Oconnor
Removed my debugging logic
Change 3004848 on 2016/06/07 by Dan.Oconnor
Fix spammy ensure
Change 3004871 on 2016/06/07 by Phillip.Kavan
[UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view.
change summary:
- modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO).
- modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts.
Change 3005203 on 2016/06/07 by Dan.Oconnor
Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems
#jira UE-31750
Change 3005441 on 2016/06/08 by Maciej.Mroz
#jira UE-31625 Crash in nativized Orion
AssembleReferenceTokenStream is called for Dynamic Classes:
- in ConstructDynamicType() (when class is explicitly loaded)
- in __CustomDynamicClassInitialization() (when CDO is created)
Change 3005540 on 2016/06/08 by Ben.Cosh
This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring.
#Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE
#Proj BlueprintProfiler, Kismet
- The jira was already fixed but I think this change improves the instance status clarity
Change 3006196 on 2016/06/08 by Dan.Oconnor
Copy/paste logic for pin connections got lost in the shuffle
#jira UE-31747
Change 3006416 on 2016/06/08 by Phillip.Kavan
[UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order).
change summary:
- modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load.
Change 3006522 on 2016/06/08 by Dan.Oconnor
Under rare circumstances a deprecated pin comes in that is outered to the transient package
#jira UE-31779
Change 3006576 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
#jira UE-31796
Change 3006610 on 2016/06/08 by Phillip.Kavan
[UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance.
change summary:
- modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO.
Change 3006824 on 2016/06/08 by Dan.Oconnor
More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays
#jira UE-31794
Change 3006828 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
Change 3006857 on 2016/06/08 by Dan.Oconnor
Investigating shutdown ensure, traced back to a static UEdGraphPin
Change 3006907 on 2016/06/08 by Dan.Oconnor
Noneditor build fix
Change 3006929 on 2016/06/08 by Dan.Oconnor
Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779
Change 3007133 on 2016/06/09 by Ben.Cosh
Fix for issue in the profiler asserting creating pins that don't have unique names.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
- I believe this was recently introduced with the changes to UEdGraphPin's
Change 3007964 on 2016/06/09 by Dan.Oconnor
Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo
#jira UE-31829
Change 3007996 on 2016/06/09 by Ryan.Rauschkolb
Added 'empty' keyword to Array Clear Node.
#jira UE-12356
Change 3008007 on 2016/06/09 by Ryan.Rauschkolb
Added 'negate' keyword to boolean NOT node
#jira UE-12490
Change 3008011 on 2016/06/09 by Ryan.Rauschkolb
Added Vector2D * Vector2D multiplication node
#jira UE-31503
Change 3008014 on 2016/06/09 by Ryan.Rauschkolb
Fixed Cannot connect Make Array node output to MakeArray input with split pins
#jira UE-28530
Change 3008243 on 2016/06/09 by Dan.Oconnor
Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe'
#jira UE-31841
Change 3008289 on 2016/06/09 by Dan.Oconnor
Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later
#jira UE-31794
Change 3008422 on 2016/06/09 by Dan.Oconnor
Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out)
#jira UE-31857
Change 3009164 on 2016/06/10 by Ryan.Rauschkolb
Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel.
#jira UE-21141,UE-23723
Change 3009165 on 2016/06/10 by Ryan.Rauschkolb
Fixed Structure Default value editor collapses after undoing an alteration of a default value
#jira UE-31741
Change 3009181 on 2016/06/10 by Ryan.Rauschkolb
Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh
#jira UE-30014
Change 3009313 on 2016/06/10 by Mike.Beach
Addressing issues with function return nodes in multiple ways:
- Preventing users from deleting return nodes for overriden/inherited functions.
- Also making sure that we create terminals for out params when the return node is disconnected (and pruned).
- Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function).
#jira UE-31418
Change 3009595 on 2016/06/10 by Dan.Oconnor
EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile
#jira UE-31879
Change 3009774 on 2016/06/10 by Dan.Oconnor
Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return
#jira UE-31906
Change 3009988 on 2016/06/10 by Dan.Oconnor
Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization
#jira UE-31888
Change 3010050 on 2016/06/10 by Dan.Oconnor
Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved
#jira UE-31892
Change 3010071 on 2016/06/10 by Dan.Oconnor
Fix for pasting when owning node has whitespace in result of GetPathName
#jira UE-31898
#coderview Bob.Tellez
Change 3010244 on 2016/06/11 by Dan.Oconnor
Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870
Change 3010630 on 2016/06/13 by Dan.Oconnor
No longer relying on path name for pin resolution, path is unstable across graphs
#jira UE-31870
Change 3010647 on 2016/06/13 by Dan.Oconnor
PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays)
#jira UE-31928
Change 3011175 on 2016/06/13 by Ben.Cosh
Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance.
#Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert
#Proj Kismet, BlueprintProfiler
- Ensured that the trace paths contain the macro instance exec nodes
- Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates.
- Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does.
Change 3011271 on 2016/06/13 by Ben.Cosh
This adds support for inherited blueprint classes to the blueprint profiler.
#Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
Change 3011556 on 2016/06/13 by Ryan.Rauschkolb
Fixed Crash when breaking link to a split pin in MakeArray that is an array type
#jira UE-31919
Change 3011624 on 2016/06/13 by Dan.Oconnor
Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating.
#jira UE-31955
Change 3011984 on 2016/06/13 by Dan.Oconnor
Sanitizing parentpin's subpins when destroying a pin
#jira UE-21392
Change 3012894 on 2016/06/14 by Phillip.Kavan
[UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing.
change summary:
- modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types.
#jira UE-30922
Change 3013037 on 2016/06/14 by Ryan.Rauschkolb
Fixed Crash when connecting to a split pin in a MakeArray node that has no connections
#jira UE-31917
Change 3014846 on 2016/06/15 by Dan.Oconnor
No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change)
#jira FORT-23753
Change 3015014 on 2016/06/15 by Dan.Oconnor
Removing poorly implement IsLetter function
Change 3015142 on 2016/06/15 by Dan.Oconnor
More intentional about removing subpins, prevents stale iterator on split pin collapse
#jira UE-32072
Change 3016326 on 2016/06/16 by Ryan.Rauschkolb
Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values
#jira UE-32016
Change 3016494 on 2016/06/16 by Ryan.Rauschkolb
Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class
#jira UE-31876
Change 3016557 on 2016/06/16 by Dan.Oconnor
Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark
#jira FORT-23753
Change 3016577 on 2016/06/16 by Ryan.Rauschkolb
Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType
Change 3016906 on 2016/06/16 by Dan.Oconnor
Back out changelist 3016557
This will be done by Jamie.Dale in Dev-Editor
Change 3018081 on 2016/06/17 by Phillip.Kavan
[UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus)
#jira UE-31832
Change 3018402 on 2016/06/17 by Dan.Oconnor
Missing include
Change 3018426 on 2016/06/17 by Ryan.Rauschkolb
Fixed MakeArray node with split pins and no connections does not paste correctly
#jira UE-32148
Change 3018452 on 2016/06/17 by Mike.Beach
Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load).
#jira UE-32158
Change 3018456 on 2016/06/17 by Dan.Oconnor
Fix for static analysis warning, this null check does nothing
Change 3018595 on 2016/06/17 by Mike.Beach
Fix for shadowed variable warning in CIS.
Change 3018699 on 2016/06/17 by Mike.Beach
Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing).
Change 3019734 on 2016/06/20 by Phillip.Kavan
[UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes.
change summary:
- added a UK2Node_AddComponent::PostDuplicate() override
- moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides.
notes:
- will prevent getting into the scenario described in UE-31831
#jira UE-32064
Change 3020635 on 2016/06/20 by Dan.Oconnor
Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile)
Change 3020894 on 2016/06/21 by Maciej.Mroz
#2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell)
Change 3020958 on 2016/06/21 by Ben.Cosh
This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling.
#Jira UE-32270 - Input key events generate extra instrumentation data per key press
#Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation.
#Proj BlueprintProfiler, UnrealEd
Change 3021316 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where Copy/Paste of event nodes would not retain link information
Change 3021826 on 2016/06/21 by Phillip.Kavan
[UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object.
change summary:
- added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API
- modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates
#jira UE-31831
Change 3022047 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where copy/paste of return nodes would not preserve value or link data
#jira UE-26937
Change 3022619 on 2016/06/22 by Maciej.Mroz
#jira UE-30858 Nativized Orion - Some particle effects are not rendering
A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added.
It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry.
Fixed GameplayCueManager. Nativized cues can be found.
This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage).
Change 3022654 on 2016/06/22 by Maciej.Mroz
FBackendHelperStaticSearchableValues -fixed too strict ensure
Change 3023067 on 2016/06/22 by Maciej.Mroz
#jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project
Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor.
Change 3023222 on 2016/06/22 by Ryan.Rauschkolb
Fixed MakeArray node elements break when editing struct elements
#jira UE-21392
Change 3023405 on 2016/06/22 by Mike.Beach
Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran).
#jira UE-31897
Change 3023992 on 2016/06/22 by Mike.Beach
Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions.
#jira UE-31859
[CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
|
|
|
SyncPinNames();
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified(GetBlueprint());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void UK2Node_MakeArray::GetContextMenuActions(const FGraphNodeContextMenuBuilder& Context) const
|
|
|
|
|
{
|
|
|
|
|
Super::GetContextMenuActions(Context);
|
|
|
|
|
|
|
|
|
|
if (!Context.bIsDebugging)
|
|
|
|
|
{
|
2014-11-17 09:46:35 -05:00
|
|
|
Context.MenuBuilder->BeginSection("K2NodeMakeArray", NSLOCTEXT("K2Nodes", "MakeArrayHeader", "MakeArray"));
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
if (Context.Pin != NULL)
|
|
|
|
|
{
|
|
|
|
|
// we only do this for normal BlendList/BlendList by enum, BlendList by Bool doesn't support add/remove pins
|
|
|
|
|
if (Context.Pin->Direction == EGPD_Input)
|
|
|
|
|
{
|
|
|
|
|
//@TODO: Only offer this option on arrayed pins
|
2014-11-17 09:46:35 -05:00
|
|
|
Context.MenuBuilder->AddMenuEntry(
|
|
|
|
|
LOCTEXT("RemovePin", "Remove array element pin"),
|
|
|
|
|
LOCTEXT("RemovePinTooltip", "Remove this array element pin"),
|
|
|
|
|
FSlateIcon(),
|
|
|
|
|
FUIAction(
|
|
|
|
|
FExecuteAction::CreateUObject(this, &UK2Node_MakeArray::RemoveInputPin, const_cast<UEdGraphPin*>(Context.Pin))
|
|
|
|
|
)
|
|
|
|
|
);
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
2014-11-17 09:46:35 -05:00
|
|
|
Context.MenuBuilder->AddMenuEntry(
|
|
|
|
|
LOCTEXT("AddPin", "Add array element pin"),
|
|
|
|
|
LOCTEXT("AddPinTooltip", "Add another array element pin"),
|
|
|
|
|
FSlateIcon(),
|
|
|
|
|
FUIAction(
|
|
|
|
|
FExecuteAction::CreateUObject(this, &UK2Node_MakeArray::AddInputPin)
|
|
|
|
|
)
|
|
|
|
|
);
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
2014-11-17 09:46:35 -05:00
|
|
|
|
|
|
|
|
Context.MenuBuilder->AddMenuEntry(
|
|
|
|
|
LOCTEXT("ResetToWildcard", "Reset to wildcard"),
|
|
|
|
|
LOCTEXT("ResetToWildcardTooltip", "Reset the node to have wildcard input/outputs. Requires no pins are connected."),
|
|
|
|
|
FSlateIcon(),
|
|
|
|
|
FUIAction(
|
|
|
|
|
FExecuteAction::CreateUObject(this, &UK2Node_MakeArray::ClearPinTypeToWildcard),
|
|
|
|
|
FCanExecuteAction::CreateUObject(this, &UK2Node_MakeArray::CanResetToWildcard)
|
|
|
|
|
)
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
Context.MenuBuilder->EndSection();
|
2014-03-14 14:13:41 -04:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool UK2Node_MakeArray::IsConnectionDisallowed(const UEdGraphPin* MyPin, const UEdGraphPin* OtherPin, FString& OutReason) const
|
|
|
|
|
{
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888)
#rb none
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2927746 on 2016/03/30 by Michael.Schoell
Local variables in function graphs will now store a hard reference to their UObject value.
Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint.
#jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native
Change 2927751 on 2016/03/30 by Michael.Schoell
Back out changelist 2927746
Change 2986483 on 2016/05/23 by Maciej.Mroz
#jira UE-30976 Editable enum values set on an instance are lost during nativization
Added overriden names of Enum keys.
Change 2986712 on 2016/05/23 by Phillip.Kavan
[UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class.
change summary:
- modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root.
Change 2987406 on 2016/05/23 by Ryan.Rauschkolb
Fixed Functions filter in Find-In-Blueprints will show components from the SCS
#jira UE-30140
Change 2988925 on 2016/05/24 by Ryan.Rauschkolb
Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph.
#jira UE-20232
Change 2989001 on 2016/05/24 by Dan.Oconnor
PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner)
#jira UE-31142
Change 2989447 on 2016/05/25 by Phillip.Kavan
[UE-30807] Propagate edit condition property value changes to instances of template objects.
change summary:
- modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO)
Change 2989804 on 2016/05/25 by Phillip.Kavan
[UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class.
change summary:
- modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component
Change 2990234 on 2016/05/25 by Ryan.Rauschkolb
Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph
#jira UE-4426
Change 2990566 on 2016/05/25 by Mike.Beach
Better warn logging to help locate variable nodes that emit a "variable not found" message.
Change 2991083 on 2016/05/26 by Maciej.Mroz
Blueprint nativization: converted classes have "config" specified.
Change 2991363 on 2016/05/26 by Phillip.Kavan
[UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components.
change summary:
- modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text
- modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed)
- modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass
- modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects
Change 2992990 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node
#jira UE-21973
Change 2992995 on 2016/05/27 by Ryan.Rauschkolb
Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked.
#jira UE-30990
Change 2993449 on 2016/05/27 by Phillip.Kavan
[UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing.
change summary:
- modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type.
Change 2993531 on 2016/05/27 by Mike.Beach
PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell)
Change 2993969 on 2016/05/30 by Maciej.Mroz
UE-30729 Crash in Native Orion when selecting Sword or Tomahawk
Clear AsyncLoading in subobjects.
Change 2993990 on 2016/05/30 by Phillip.Kavan
[UE-30984] Exclude reroute nodes from Blueprint profiler node mapping.
change summary:
- modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links.
- modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links.
- modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points.
- modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points.
Change 2994591 on 2016/05/31 by Ryan.Rauschkolb
Fixed issue where inherited Blueprint variable would not show parent's replications settings
#jira UE-18912
Change 2994613 on 2016/05/31 by Ben.Cosh
Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal.
#Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher
#Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy
#Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler
#Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab
#Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status
#Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented
#Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out
#Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean"
#Jira UE-31377 - BP Profiler - Default tree view filtering to off
#Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP
#Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)"
Notes:-
- Sequence node inclusive time fixed
- Trace History tidy up
- Compile Icon and status messages for instrumentation
- Message in the profiler tab for instrumentation
- Profiler view tidy up and heat thresholds controls added
- fixed the summed execution branch stats
- fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396
- added hottest path and hottest endpoint wire heatmaps
- switched off the graph filter by default
- added total time for the heatmaps
- fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code
Change 2995058 on 2016/05/31 by Phillip.Kavan
[UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running.
change summary:
- modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class.
- modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context.
Change 2995218 on 2016/05/31 by Phillip.Kavan
[UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size.
change summary:
- modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout.
Change 2996417 on 2016/06/01 by Phillip.Kavan
[UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor.
change summary:
- modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object.
Change 2997001 on 2016/06/01 by Ryan.Rauschkolb
Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component
#jira UE-30143
Change 2997521 on 2016/06/02 by Maciej.Mroz
[Blueprint Nativization]
- Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h
- Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated.
Change 2997522 on 2016/06/02 by Maciej.Mroz
Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization)
Change 2997638 on 2016/06/02 by Maciej.Mroz
Improvements for Blueprint Nativization:
- Overridden names in nativized code have proper escape characters (in generated code).
- OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared
- Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>)
- warning C4883 is disabled in .generated.cpp files for nativized module
Change 2997639 on 2016/06/02 by Maciej.Mroz
Minor improvements in Ocean gameplay code. Required for Blueprint Nativization.
#jira UE-28945 Failure packaging Nativized Ocean
Change 2997656 on 2016/06/02 by Maciej.Mroz
Various improvements in BlueprintCompilerCppBackend:
- Fixed interface cast
- Fixed TSwitchValue issue (when used with literals)
- Fixed improper name for NativeBlueprintEvent (when calling parent's implementation)
- Fixed bitfield getter code.
- Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums)
- operator == is generated for nativized structs
- Fixed AssedId (AssetPtr) constructor in nativized code.
- Fixed arrays of noexport struct
- Fixed missing headers for native single cast delegate signature.
- Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata.
Change 2997691 on 2016/06/02 by Maciej.Mroz
operator == in FText. It is required for some functions in TArray<FText>
Change 2997793 on 2016/06/02 by Ben.Cosh
Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter
#Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh
#Proj BlueprintProfiler, Kismet
Change 2997901 on 2016/06/02 by Maciej.Mroz
Back out changelist 2997691
Change 2998038 on 2016/06/02 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 2998052 on 2016/06/02 by Ryan.Rauschkolb
Fixed Comment bubbles not remembering changes after losing focus
#jira UE-20012
Change 2998450 on 2016/06/02 by Phillip.Kavan
[UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata.
change summary:
- modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it.
Change 2999763 on 2016/06/03 by Mike.Beach
Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes.
#jira UE-26761
Change 2999768 on 2016/06/03 by Maciej.Mroz
#jira UE-31592, UE-31593
This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty.
Change 2999770 on 2016/06/03 by Maciej.Mroz
[Blueprint Nativization]
Workaround for missing ==operator in native structures. The generated code uses special version of array funtions.
Change 2999798 on 2016/06/03 by Mike.Beach
Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor.
#jira UE-31522
Change 2999941 on 2016/06/03 by Mike.Beach
Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning).
#jira UE-23371
Change 3001731 on 2016/06/06 by Phillip.Kavan
[UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target.
change summary:
- modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events.
- modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field.
- modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals.
- modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events.
Change 3002075 on 2016/06/06 by Maciej.Mroz
Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend.
Literal expression can be emitted without known desitination property.
#jira UE-28443 Set Boolean (by ref) crashes the editor on compile
Change 3002096 on 2016/06/06 by Ben.Cosh
This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs.
#Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called
#Proj BlueprintProfiler
Change 3002108 on 2016/06/06 by Ben.Cosh
Adds a new default option to average the blueprint level stats in the profiler.
#Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged
#Proj Kismet, BlueprintProfiler
- The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward.
Change 3002782 on 2016/06/06 by samuel.proctor
Test assets for Interface testing
Change 3003826 on 2016/06/07 by Ben.Cosh
A few minor visual improvements for the blueprint profiler.
#Proj Kismet, BlueprintProfiler, EditorStyle
- Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors.
- Updated the pure node icon.
Change 3004067 on 2016/06/07 by samuel.proctor
New test asset for blueprint interfaces
Change 3004069 on 2016/06/07 by samuel.proctor
Updating asset for Interface testing
Change 3004275 on 2016/06/07 by Ryan.Rauschkolb
Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility
#jira UE-23733
Change 3004329 on 2016/06/07 by Dan.Oconnor
EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced.
Change 3004418 on 2016/06/07 by Maciej.Mroz
KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value.
Change 3004496 on 2016/06/07 by Dan.Oconnor
Disabling expensive pin allocation tracking
Change 3004649 on 2016/06/07 by Mike.Beach
Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors).
#jira UE-31236
Change 3004667 on 2016/06/07 by Dan.Oconnor
Removed my debugging logic
Change 3004848 on 2016/06/07 by Dan.Oconnor
Fix spammy ensure
Change 3004871 on 2016/06/07 by Phillip.Kavan
[UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view.
change summary:
- modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO).
- modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts.
Change 3005203 on 2016/06/07 by Dan.Oconnor
Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems
#jira UE-31750
Change 3005441 on 2016/06/08 by Maciej.Mroz
#jira UE-31625 Crash in nativized Orion
AssembleReferenceTokenStream is called for Dynamic Classes:
- in ConstructDynamicType() (when class is explicitly loaded)
- in __CustomDynamicClassInitialization() (when CDO is created)
Change 3005540 on 2016/06/08 by Ben.Cosh
This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring.
#Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE
#Proj BlueprintProfiler, Kismet
- The jira was already fixed but I think this change improves the instance status clarity
Change 3006196 on 2016/06/08 by Dan.Oconnor
Copy/paste logic for pin connections got lost in the shuffle
#jira UE-31747
Change 3006416 on 2016/06/08 by Phillip.Kavan
[UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order).
change summary:
- modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load.
Change 3006522 on 2016/06/08 by Dan.Oconnor
Under rare circumstances a deprecated pin comes in that is outered to the transient package
#jira UE-31779
Change 3006576 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
#jira UE-31796
Change 3006610 on 2016/06/08 by Phillip.Kavan
[UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance.
change summary:
- modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO.
Change 3006824 on 2016/06/08 by Dan.Oconnor
More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays
#jira UE-31794
Change 3006828 on 2016/06/08 by Dan.Oconnor
Fix for non-editor builds
Change 3006857 on 2016/06/08 by Dan.Oconnor
Investigating shutdown ensure, traced back to a static UEdGraphPin
Change 3006907 on 2016/06/08 by Dan.Oconnor
Noneditor build fix
Change 3006929 on 2016/06/08 by Dan.Oconnor
Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779
Change 3007133 on 2016/06/09 by Ben.Cosh
Fix for issue in the profiler asserting creating pins that don't have unique names.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
- I believe this was recently introduced with the changes to UEdGraphPin's
Change 3007964 on 2016/06/09 by Dan.Oconnor
Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo
#jira UE-31829
Change 3007996 on 2016/06/09 by Ryan.Rauschkolb
Added 'empty' keyword to Array Clear Node.
#jira UE-12356
Change 3008007 on 2016/06/09 by Ryan.Rauschkolb
Added 'negate' keyword to boolean NOT node
#jira UE-12490
Change 3008011 on 2016/06/09 by Ryan.Rauschkolb
Added Vector2D * Vector2D multiplication node
#jira UE-31503
Change 3008014 on 2016/06/09 by Ryan.Rauschkolb
Fixed Cannot connect Make Array node output to MakeArray input with split pins
#jira UE-28530
Change 3008243 on 2016/06/09 by Dan.Oconnor
Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe'
#jira UE-31841
Change 3008289 on 2016/06/09 by Dan.Oconnor
Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later
#jira UE-31794
Change 3008422 on 2016/06/09 by Dan.Oconnor
Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out)
#jira UE-31857
Change 3009164 on 2016/06/10 by Ryan.Rauschkolb
Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel.
#jira UE-21141,UE-23723
Change 3009165 on 2016/06/10 by Ryan.Rauschkolb
Fixed Structure Default value editor collapses after undoing an alteration of a default value
#jira UE-31741
Change 3009181 on 2016/06/10 by Ryan.Rauschkolb
Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh
#jira UE-30014
Change 3009313 on 2016/06/10 by Mike.Beach
Addressing issues with function return nodes in multiple ways:
- Preventing users from deleting return nodes for overriden/inherited functions.
- Also making sure that we create terminals for out params when the return node is disconnected (and pruned).
- Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function).
#jira UE-31418
Change 3009595 on 2016/06/10 by Dan.Oconnor
EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile
#jira UE-31879
Change 3009774 on 2016/06/10 by Dan.Oconnor
Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return
#jira UE-31906
Change 3009988 on 2016/06/10 by Dan.Oconnor
Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization
#jira UE-31888
Change 3010050 on 2016/06/10 by Dan.Oconnor
Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved
#jira UE-31892
Change 3010071 on 2016/06/10 by Dan.Oconnor
Fix for pasting when owning node has whitespace in result of GetPathName
#jira UE-31898
#coderview Bob.Tellez
Change 3010244 on 2016/06/11 by Dan.Oconnor
Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870
Change 3010630 on 2016/06/13 by Dan.Oconnor
No longer relying on path name for pin resolution, path is unstable across graphs
#jira UE-31870
Change 3010647 on 2016/06/13 by Dan.Oconnor
PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays)
#jira UE-31928
Change 3011175 on 2016/06/13 by Ben.Cosh
Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance.
#Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert
#Proj Kismet, BlueprintProfiler
- Ensured that the trace paths contain the macro instance exec nodes
- Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates.
- Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does.
Change 3011271 on 2016/06/13 by Ben.Cosh
This adds support for inherited blueprint classes to the blueprint profiler.
#Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro.
#Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed
#Proj BlueprintProfiler
Change 3011556 on 2016/06/13 by Ryan.Rauschkolb
Fixed Crash when breaking link to a split pin in MakeArray that is an array type
#jira UE-31919
Change 3011624 on 2016/06/13 by Dan.Oconnor
Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating.
#jira UE-31955
Change 3011984 on 2016/06/13 by Dan.Oconnor
Sanitizing parentpin's subpins when destroying a pin
#jira UE-21392
Change 3012894 on 2016/06/14 by Phillip.Kavan
[UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing.
change summary:
- modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types.
#jira UE-30922
Change 3013037 on 2016/06/14 by Ryan.Rauschkolb
Fixed Crash when connecting to a split pin in a MakeArray node that has no connections
#jira UE-31917
Change 3014846 on 2016/06/15 by Dan.Oconnor
No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change)
#jira FORT-23753
Change 3015014 on 2016/06/15 by Dan.Oconnor
Removing poorly implement IsLetter function
Change 3015142 on 2016/06/15 by Dan.Oconnor
More intentional about removing subpins, prevents stale iterator on split pin collapse
#jira UE-32072
Change 3016326 on 2016/06/16 by Ryan.Rauschkolb
Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values
#jira UE-32016
Change 3016494 on 2016/06/16 by Ryan.Rauschkolb
Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class
#jira UE-31876
Change 3016557 on 2016/06/16 by Dan.Oconnor
Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark
#jira FORT-23753
Change 3016577 on 2016/06/16 by Ryan.Rauschkolb
Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType
Change 3016906 on 2016/06/16 by Dan.Oconnor
Back out changelist 3016557
This will be done by Jamie.Dale in Dev-Editor
Change 3018081 on 2016/06/17 by Phillip.Kavan
[UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus)
#jira UE-31832
Change 3018402 on 2016/06/17 by Dan.Oconnor
Missing include
Change 3018426 on 2016/06/17 by Ryan.Rauschkolb
Fixed MakeArray node with split pins and no connections does not paste correctly
#jira UE-32148
Change 3018452 on 2016/06/17 by Mike.Beach
Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load).
#jira UE-32158
Change 3018456 on 2016/06/17 by Dan.Oconnor
Fix for static analysis warning, this null check does nothing
Change 3018595 on 2016/06/17 by Mike.Beach
Fix for shadowed variable warning in CIS.
Change 3018699 on 2016/06/17 by Mike.Beach
Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing).
Change 3019734 on 2016/06/20 by Phillip.Kavan
[UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes.
change summary:
- added a UK2Node_AddComponent::PostDuplicate() override
- moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides.
notes:
- will prevent getting into the scenario described in UE-31831
#jira UE-32064
Change 3020635 on 2016/06/20 by Dan.Oconnor
Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile)
Change 3020894 on 2016/06/21 by Maciej.Mroz
#2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell)
Change 3020958 on 2016/06/21 by Ben.Cosh
This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling.
#Jira UE-32270 - Input key events generate extra instrumentation data per key press
#Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation.
#Proj BlueprintProfiler, UnrealEd
Change 3021316 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where Copy/Paste of event nodes would not retain link information
Change 3021826 on 2016/06/21 by Phillip.Kavan
[UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object.
change summary:
- added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API
- modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates
#jira UE-31831
Change 3022047 on 2016/06/21 by Ryan.Rauschkolb
Fixed issue where copy/paste of return nodes would not preserve value or link data
#jira UE-26937
Change 3022619 on 2016/06/22 by Maciej.Mroz
#jira UE-30858 Nativized Orion - Some particle effects are not rendering
A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added.
It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry.
Fixed GameplayCueManager. Nativized cues can be found.
This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage).
Change 3022654 on 2016/06/22 by Maciej.Mroz
FBackendHelperStaticSearchableValues -fixed too strict ensure
Change 3023067 on 2016/06/22 by Maciej.Mroz
#jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project
Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor.
Change 3023222 on 2016/06/22 by Ryan.Rauschkolb
Fixed MakeArray node elements break when editing struct elements
#jira UE-21392
Change 3023405 on 2016/06/22 by Mike.Beach
Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran).
#jira UE-31897
Change 3023992 on 2016/06/22 by Mike.Beach
Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions.
#jira UE-31859
[CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
|
|
|
// if MyPin has a ParentPin then we are dealing with a split pin and we should evaluate it with default behavior
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3130440)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3050029 on 2016/07/14 by Ben.Cosh
This modifies the blueprint instrumented compilation chain so only the the blueprint you compile and all dependencies are instrumented and the profiler is notified rather than waiting for event data.
#Jira UE-32063 - The blueprint profiler doesn't display any stats in the execution graph if no instance is placed in the current level.
#Proj BlueprintProfiler, Kismet, UnrelEd
- This also improves the execution graph UI, notifying the user that no instances are available to display data from.
Change 3101549 on 2016/08/25 by Maciej.Mroz
BP nativization: fixed FEmitDefaultValueHelper::HandleInstancedSubobject
https://udn.unrealengine.com/questions/308800/nativized-blueprints-newobject-call-uses-incorrect.html
Change 3101811 on 2016/08/25 by Ryan.Rauschkolb
BP Profiler: Fixed stack overflow crash when compiling blueprints with nested macros
#jira UE-34503
Change 3102478 on 2016/08/26 by Maciej.Mroz
#jira UE-35135 - Odin compiles with errors when using Blueprint nativization
BP Nativization:
- improved native cast
- improved bool handling
Change 3102944 on 2016/08/26 by Phillip.Kavan
[UE-33017] Don't include transient properties when generating property lists at cook time for optimized runtime Blueprint component instancing. Also ensure that deprecated properties are serialized during load/instancing at runtime.
change summary:
- modified FBlueprintComponentInstanceDataLoader to append 'PPF_UseDeprecatedProperties' to the FArchive port flags.
- modified FBlueprintComponentInstanceDataWriter to append both 'PPF_Duplicate' and 'PPF_UseDeprecatedProperties" to the FArchive port flags (to ensure consistency w/ the instancing side).
- switched the RecursivePropertyGatherLambda helper to a static class method instead
- modified the RecursivePropertyGather utility method to exclude transient properties.
notes:
- the primary cause of UE-33017 was that UBodySetup can "share" the ShapeBodySetup object across all instances, but the shared object is not owned by the CDO, it's owned by the archetype. this caused the archetype to differ from the CDO, which caused us to emit the transient property at cook time. thsi threw off the serialization offset between read/write FArchive passes at runtime. since transient properties are not serialized as part of the template, there's no need to include them in the generated delta property list, so as a fix, i'm just excluding them altogether.
#jira UE-33017
Change 3103692 on 2016/08/27 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 3104266 on 2016/08/29 by Ben.Marsh
Add test script to native assets for QAGame.
Change 3104399 on 2016/08/29 by Ben.Marsh
Fix missing property warning in build script.
Change 3104419 on 2016/08/29 by Maciej.Mroz
#jira UE-35135 Odin compiles with errors when using Blueprint nativization
- Reduced number of DynamicCLass instance dependencies
- Fixed UDS default values dependencies
- Improved WeakObjPtr handling
- Improved const parameters handling
Change 3104474 on 2016/08/29 by Ryan.Rauschkolb
BP Profiler: Fixed issue where collapsed nodes that share a name with a parent class collapsed node can cause a stack overflow
#jira UE-35245
Change 3105605 on 2016/08/30 by Maciej.Mroz
Temp change: CIS Test
Change 3105738 on 2016/08/30 by Maciej.Mroz
UAT, CIS: testing NoRecompileUAT switch.
Change 3105800 on 2016/08/30 by Maciej.Mroz
UAT, CIS, Nativization:
- reverted NoRecompileUAT switch.
- testing nativization with -nocompileeditor flag and without -compile flag
Change 3106162 on 2016/08/30 by Maciej.Mroz
UAT, CIS, Nativization:
-NoSubmit flag added. Otherwise UAT files are singed (when they are used by other process). It causes an error.
- Ugly hack removed.
Change 3106261 on 2016/08/30 by Phillip.Kavan
[UE-34705] Gracefully handle tunnel node entry exec pins that aren't internally linked during BP profiler tunnel boundary mapping.
change summary:
- added FBlueprintFunctionContext::GetTunnelBoundaryNode() (uncheckedl variant).
- moved FBlueprintFunctionContext::GetTunnelBoundaryNodeChecked() impl into GetTunnelBoundaryNode().
- re-implemented FBlueprintFunctionContext::GetTunnelBoundaryNodeChecked() to call GetTunnelBoundaryNode() and then assert on the result.
- changed the FBlueprintTunnelInstanceContext::GetTunnelBoundaryNodeChecked() impl to override GetTunnelBoundaryNode() instead.
- modified FBlueprintFunctionContext::MapTunnelBoundary() to only process the entry case if the TunnelBoundaryNode result is valid. this way we simply skip tunnel boundary mapping if an entry path was not previously mapped (rather than assert).
#jira UE-34705
Change 3106478 on 2016/08/30 by Ben.Marsh
Include *.uasset files on builders running the NativizeAssets job.
Change 3107514 on 2016/08/31 by Ben.Cosh
This set of changes is the result of a full pass on the blueprint profiler heat interface to try and bring them into a usable state.
#Jira UE-33465 - Stat heat colors and heat wire traces need a quick pass to ensure they are working as expected.
#Jira UE-33309 - FlipFlop node breaks hottest path wire heatmap
#Jira UE-33650 - Blueprint heatwire effects do not work when touching user macros
#Jira UE-33706 - BP Profiler - Macro instances not colored or reporting time
#Jira UE-33701 - BP Profiler: Hottest path wire heatmap doesn't appear to be working
#Jira UE-33083 - BP Profiler - (Exclusive) pure node heatmap missing from some nodes
#Jira UE-34855 - BP Profiler - Update heatmap coloration when switching between Default/Custom thresholds
#Jira UE-32218 - BP Profiler: Clear "inclusive" time entries from "avg. time" row.
#Proj GraphEditor, Kismet, BlueprintProfiler,
Change 3108268 on 2016/08/31 by Ben.Cosh
Minor change from profiler review sessions to move macro timing to average stats.
#Jira UE-33706 - BP Profiler - Macro instances not colored or reporting time
#Proj Kismet
Change 3108991 on 2016/08/31 by Maciej.Mroz
UAT, CIS, Nativization: Test separate cooking and compiling
Change 3110097 on 2016/09/01 by Ben.Cosh
Minor update to the blueprint profiler mapping functionality to ignore disabled nodes and a fix for the max timing white glow bug.
#Jira UE-35377 - Blueprint macros highlighting white in profiler
#Jira UE-34973 - Remove Ghost Nodes
#Proj Kismet, BlueprintProfiler
Change 3114553 on 2016/09/06 by Dan.Oconnor
Support for TMap/TSet in blueprint variable editor panel
#jira UE-2114
Change 3116367 on 2016/09/07 by Dan.Oconnor
Fixed Function/Macro inputs/outputs list (had become cramped with my last change) + misc. fixes for new container types, fixes uninitialized members in FTerminalType
#jira UE-2114, UE-35676
Change 3116663 on 2016/09/07 by Dan.Oconnor
Fix for array functions showing up with TSet and TMap pins
#jira UE-2114
Change 3118259 on 2016/09/08 by Ryan.Rauschkolb
BP Profiler: Fixed Assert when profiling parent/child Blueprint
#jira UE-35487
Change 3119023 on 2016/09/09 by Maciej.Mroz
Manually integrated (from Odin branch) recent changes related to BP and nativization:
3115713 UE-35448
3117590 UE-35697
3117742 ODIN-577
Change 3119058 on 2016/09/09 by Maciej.Mroz
#jira UE-32841 GitHub 2574 : fix typos
#2574 https://github.com/EpicGames/UnrealEngine/pull/2574
Renamed function CustomNativeInitilize to InitializeNativeClassData and made it private.
Change 3119302 on 2016/09/09 by Maciej.Mroz
#jira UE-35584 Orion - nativized server crashes
Global variable for WITH_PERFCOUNTERS definition in UEBuildConfiguration.
Previously the same header could be compiled with the WITH_PERFCOUNTERS flag enadles and disabled (during a single compilation) .
Change 3119502 on 2016/09/09 by Mike.Beach
When building a deterministic UUID for latent nodes, we now use expanded nodes' origin (node) to avoid collisions (latent node in macros, etc.)
#jira UE-35609
Change 3119517 on 2016/09/09 by Ryan.Rauschkolb
Added blueprint editor settings option to display unique names for blueprint nodes
Change 3119602 on 2016/09/09 by Maciej.Mroz
#jira UEBP-214 Implement Solution for Nativized AnimBlueprints Size Reduction
Added stats about nativized AnimBP
Mechanism to exlcude reducible AnimBP
Editor config option:[BlueprintNativizationSettings] bNativizeAnimBPOnlyWhenNonReducibleFuncitons=false
Change 3119615 on 2016/09/09 by Maciej.Mroz
Missing change (should be part of cl#3119602)
Change 3119619 on 2016/09/09 by Maciej.Mroz
#jira UEBP-214 Implement Solution for Nativized AnimBlueprints Size Reduction
Excluding all AnimBP from Orion nativization.
Change 3120752 on 2016/09/12 by Maciej.Mroz
#jira UE-35051 [CrashReport] UE4Editor_BlueprintNativeCodeGen!FBlueprintNativeCodeGenModule::GenerateSingleAsset()
Removed unnecessary ensure
Change 3121354 on 2016/09/12 by Dan.Oconnor
Fixed variable type width, required for TMap's extra combobox.
Change 3121626 on 2016/09/12 by Phillip.Kavan
[UE-35456] Fix crash on right-click in components tree view after copying one or more BSP actors to clipboard.
Note: This applies to the components tree view in both the Blueprint editor and the Level editor's Actor details panel.
change summary:
- modified FComponentObjectTextFactory::CanCreateClass() to exclude Actor/Component subtypes that are not Blueprint-compatible (e.g. ABrush).
#jira UE-35456
Change 3122712 on 2016/09/13 by Maciej.Mroz
#jira UE-35714 [CrashReport] UE4Editor_BlueprintGraph!UK2Node_CallArrayFunction::GetArrayPins() [k2node_callarrayfunction.cpp:141]
Replaced "check" with "ensure".
Change 3124398 on 2016/09/14 by Maciej.Mroz
More strict BP validation in UBlueprintThumbnailRenderer::Draw
#jira UE-35705
Change 3124405 on 2016/09/14 by Maciej.Mroz
#jira UE-35110 Packaged project crashes when playing sound from blueprint library with enum input after nativizing blueprints
Function Libraries are properly added to dependencies list while nativization.
Change 3124667 on 2016/09/14 by Maciej.Mroz
#jira UE-35262 Incompatible pins give generate warning, when error is necessary.
Fixed incompatible pins validation.
Change 3125245 on 2016/09/14 by Phillip.Kavan
[UE-33674] Fix missing stats for the ForEachElementInEnum node type in the Blueprint profiler tree view.
change summary:
- modified FScriptEventPlayback::Process() to not allow intermediate node exit pins to pollute the current trace path
- modified FBlueprintFunctionContext::DetermineGraphNodeCharacteristics() to handle the UK2Node_ForEachElementInEnum type as a special case and account for extra loop iterations in the sample frequency computed at mapping time
- exported UK2Node_ForEachElementInEnum::InsideLoopPinName and EnumOutputPinName string constants
#jira UE-33674
Change 3126211 on 2016/09/15 by Maciej.Mroz
#jira UE-36016 Struct pin can be connected to Object pin without error
Change 3126393 on 2016/09/15 by Maciej.Mroz
#jira UE-35936
Replace "check" by "ensure".
Change 3126623 on 2016/09/15 by Maciej.Mroz
#jira UE-35816 User defined struct array resets to defaults in blueprint after updating the struct
STRUCT_SerializeFromMismatchedTag is not necessary to serialize structure when guids match. Anyway STRUCT_SerializeFromMismatchedTag sholud precede SerializeFromMismatchedTag().
Change 3127288 on 2016/09/15 by Mike.Beach
Making the script VM overhead and native time stats threadsafe (to account for threaded anim Blueprints in Orion).
Change 3127375 on 2016/09/15 by Mike.Beach
Making sure Blueprint classes inherit the super's ClassConfigName properly (inherit the ID instead of the filename).
Change 3127381 on 2016/09/15 by Mike.Beach
Removing an overzealous ensure that certain users were hitting when a loading array property wasn't fully filled out yet (confirmed that it was populated with the proper objects by the end of the load).
Change 3127476 on 2016/09/15 by Dan.Oconnor
Build fix
#jira UE-36073
Change 3128335 on 2016/09/16 by Maciej.Mroz
#jira UE-36075 Odin: BP_DefaultHand and BigBotCharacter blueprints fail to compile
Fixed broken BP assets.
Change 3128589 on 2016/09/16 by Mike.Beach
Fixing a static analysis CIS warning (duplicated condition).
Change 3128630 on 2016/09/16 by Dan.Oconnor
Re-fix with engine version set
Change 3129338 on 2016/09/16 by Dan.Oconnor
=FScriptSet/FScriptSetHelper fleshed out (Add, Remove, and Find implemented)
+SetParam implemented for marking up sets for primitive Set functions (to be checked in once completed as BlueprintSetLibrary)
#jira UE-2114
[CL 3131171 by Mike Beach in Main branch]
2016-09-19 16:14:06 -04:00
|
|
|
if(MyPin->ParentPin == nullptr && OtherPin->PinType.IsContainer() == true && MyPin->Direction == EGPD_Input)
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3130440)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3050029 on 2016/07/14 by Ben.Cosh
This modifies the blueprint instrumented compilation chain so only the the blueprint you compile and all dependencies are instrumented and the profiler is notified rather than waiting for event data.
#Jira UE-32063 - The blueprint profiler doesn't display any stats in the execution graph if no instance is placed in the current level.
#Proj BlueprintProfiler, Kismet, UnrelEd
- This also improves the execution graph UI, notifying the user that no instances are available to display data from.
Change 3101549 on 2016/08/25 by Maciej.Mroz
BP nativization: fixed FEmitDefaultValueHelper::HandleInstancedSubobject
https://udn.unrealengine.com/questions/308800/nativized-blueprints-newobject-call-uses-incorrect.html
Change 3101811 on 2016/08/25 by Ryan.Rauschkolb
BP Profiler: Fixed stack overflow crash when compiling blueprints with nested macros
#jira UE-34503
Change 3102478 on 2016/08/26 by Maciej.Mroz
#jira UE-35135 - Odin compiles with errors when using Blueprint nativization
BP Nativization:
- improved native cast
- improved bool handling
Change 3102944 on 2016/08/26 by Phillip.Kavan
[UE-33017] Don't include transient properties when generating property lists at cook time for optimized runtime Blueprint component instancing. Also ensure that deprecated properties are serialized during load/instancing at runtime.
change summary:
- modified FBlueprintComponentInstanceDataLoader to append 'PPF_UseDeprecatedProperties' to the FArchive port flags.
- modified FBlueprintComponentInstanceDataWriter to append both 'PPF_Duplicate' and 'PPF_UseDeprecatedProperties" to the FArchive port flags (to ensure consistency w/ the instancing side).
- switched the RecursivePropertyGatherLambda helper to a static class method instead
- modified the RecursivePropertyGather utility method to exclude transient properties.
notes:
- the primary cause of UE-33017 was that UBodySetup can "share" the ShapeBodySetup object across all instances, but the shared object is not owned by the CDO, it's owned by the archetype. this caused the archetype to differ from the CDO, which caused us to emit the transient property at cook time. thsi threw off the serialization offset between read/write FArchive passes at runtime. since transient properties are not serialized as part of the template, there's no need to include them in the generated delta property list, so as a fix, i'm just excluding them altogether.
#jira UE-33017
Change 3103692 on 2016/08/27 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 3104266 on 2016/08/29 by Ben.Marsh
Add test script to native assets for QAGame.
Change 3104399 on 2016/08/29 by Ben.Marsh
Fix missing property warning in build script.
Change 3104419 on 2016/08/29 by Maciej.Mroz
#jira UE-35135 Odin compiles with errors when using Blueprint nativization
- Reduced number of DynamicCLass instance dependencies
- Fixed UDS default values dependencies
- Improved WeakObjPtr handling
- Improved const parameters handling
Change 3104474 on 2016/08/29 by Ryan.Rauschkolb
BP Profiler: Fixed issue where collapsed nodes that share a name with a parent class collapsed node can cause a stack overflow
#jira UE-35245
Change 3105605 on 2016/08/30 by Maciej.Mroz
Temp change: CIS Test
Change 3105738 on 2016/08/30 by Maciej.Mroz
UAT, CIS: testing NoRecompileUAT switch.
Change 3105800 on 2016/08/30 by Maciej.Mroz
UAT, CIS, Nativization:
- reverted NoRecompileUAT switch.
- testing nativization with -nocompileeditor flag and without -compile flag
Change 3106162 on 2016/08/30 by Maciej.Mroz
UAT, CIS, Nativization:
-NoSubmit flag added. Otherwise UAT files are singed (when they are used by other process). It causes an error.
- Ugly hack removed.
Change 3106261 on 2016/08/30 by Phillip.Kavan
[UE-34705] Gracefully handle tunnel node entry exec pins that aren't internally linked during BP profiler tunnel boundary mapping.
change summary:
- added FBlueprintFunctionContext::GetTunnelBoundaryNode() (uncheckedl variant).
- moved FBlueprintFunctionContext::GetTunnelBoundaryNodeChecked() impl into GetTunnelBoundaryNode().
- re-implemented FBlueprintFunctionContext::GetTunnelBoundaryNodeChecked() to call GetTunnelBoundaryNode() and then assert on the result.
- changed the FBlueprintTunnelInstanceContext::GetTunnelBoundaryNodeChecked() impl to override GetTunnelBoundaryNode() instead.
- modified FBlueprintFunctionContext::MapTunnelBoundary() to only process the entry case if the TunnelBoundaryNode result is valid. this way we simply skip tunnel boundary mapping if an entry path was not previously mapped (rather than assert).
#jira UE-34705
Change 3106478 on 2016/08/30 by Ben.Marsh
Include *.uasset files on builders running the NativizeAssets job.
Change 3107514 on 2016/08/31 by Ben.Cosh
This set of changes is the result of a full pass on the blueprint profiler heat interface to try and bring them into a usable state.
#Jira UE-33465 - Stat heat colors and heat wire traces need a quick pass to ensure they are working as expected.
#Jira UE-33309 - FlipFlop node breaks hottest path wire heatmap
#Jira UE-33650 - Blueprint heatwire effects do not work when touching user macros
#Jira UE-33706 - BP Profiler - Macro instances not colored or reporting time
#Jira UE-33701 - BP Profiler: Hottest path wire heatmap doesn't appear to be working
#Jira UE-33083 - BP Profiler - (Exclusive) pure node heatmap missing from some nodes
#Jira UE-34855 - BP Profiler - Update heatmap coloration when switching between Default/Custom thresholds
#Jira UE-32218 - BP Profiler: Clear "inclusive" time entries from "avg. time" row.
#Proj GraphEditor, Kismet, BlueprintProfiler,
Change 3108268 on 2016/08/31 by Ben.Cosh
Minor change from profiler review sessions to move macro timing to average stats.
#Jira UE-33706 - BP Profiler - Macro instances not colored or reporting time
#Proj Kismet
Change 3108991 on 2016/08/31 by Maciej.Mroz
UAT, CIS, Nativization: Test separate cooking and compiling
Change 3110097 on 2016/09/01 by Ben.Cosh
Minor update to the blueprint profiler mapping functionality to ignore disabled nodes and a fix for the max timing white glow bug.
#Jira UE-35377 - Blueprint macros highlighting white in profiler
#Jira UE-34973 - Remove Ghost Nodes
#Proj Kismet, BlueprintProfiler
Change 3114553 on 2016/09/06 by Dan.Oconnor
Support for TMap/TSet in blueprint variable editor panel
#jira UE-2114
Change 3116367 on 2016/09/07 by Dan.Oconnor
Fixed Function/Macro inputs/outputs list (had become cramped with my last change) + misc. fixes for new container types, fixes uninitialized members in FTerminalType
#jira UE-2114, UE-35676
Change 3116663 on 2016/09/07 by Dan.Oconnor
Fix for array functions showing up with TSet and TMap pins
#jira UE-2114
Change 3118259 on 2016/09/08 by Ryan.Rauschkolb
BP Profiler: Fixed Assert when profiling parent/child Blueprint
#jira UE-35487
Change 3119023 on 2016/09/09 by Maciej.Mroz
Manually integrated (from Odin branch) recent changes related to BP and nativization:
3115713 UE-35448
3117590 UE-35697
3117742 ODIN-577
Change 3119058 on 2016/09/09 by Maciej.Mroz
#jira UE-32841 GitHub 2574 : fix typos
#2574 https://github.com/EpicGames/UnrealEngine/pull/2574
Renamed function CustomNativeInitilize to InitializeNativeClassData and made it private.
Change 3119302 on 2016/09/09 by Maciej.Mroz
#jira UE-35584 Orion - nativized server crashes
Global variable for WITH_PERFCOUNTERS definition in UEBuildConfiguration.
Previously the same header could be compiled with the WITH_PERFCOUNTERS flag enadles and disabled (during a single compilation) .
Change 3119502 on 2016/09/09 by Mike.Beach
When building a deterministic UUID for latent nodes, we now use expanded nodes' origin (node) to avoid collisions (latent node in macros, etc.)
#jira UE-35609
Change 3119517 on 2016/09/09 by Ryan.Rauschkolb
Added blueprint editor settings option to display unique names for blueprint nodes
Change 3119602 on 2016/09/09 by Maciej.Mroz
#jira UEBP-214 Implement Solution for Nativized AnimBlueprints Size Reduction
Added stats about nativized AnimBP
Mechanism to exlcude reducible AnimBP
Editor config option:[BlueprintNativizationSettings] bNativizeAnimBPOnlyWhenNonReducibleFuncitons=false
Change 3119615 on 2016/09/09 by Maciej.Mroz
Missing change (should be part of cl#3119602)
Change 3119619 on 2016/09/09 by Maciej.Mroz
#jira UEBP-214 Implement Solution for Nativized AnimBlueprints Size Reduction
Excluding all AnimBP from Orion nativization.
Change 3120752 on 2016/09/12 by Maciej.Mroz
#jira UE-35051 [CrashReport] UE4Editor_BlueprintNativeCodeGen!FBlueprintNativeCodeGenModule::GenerateSingleAsset()
Removed unnecessary ensure
Change 3121354 on 2016/09/12 by Dan.Oconnor
Fixed variable type width, required for TMap's extra combobox.
Change 3121626 on 2016/09/12 by Phillip.Kavan
[UE-35456] Fix crash on right-click in components tree view after copying one or more BSP actors to clipboard.
Note: This applies to the components tree view in both the Blueprint editor and the Level editor's Actor details panel.
change summary:
- modified FComponentObjectTextFactory::CanCreateClass() to exclude Actor/Component subtypes that are not Blueprint-compatible (e.g. ABrush).
#jira UE-35456
Change 3122712 on 2016/09/13 by Maciej.Mroz
#jira UE-35714 [CrashReport] UE4Editor_BlueprintGraph!UK2Node_CallArrayFunction::GetArrayPins() [k2node_callarrayfunction.cpp:141]
Replaced "check" with "ensure".
Change 3124398 on 2016/09/14 by Maciej.Mroz
More strict BP validation in UBlueprintThumbnailRenderer::Draw
#jira UE-35705
Change 3124405 on 2016/09/14 by Maciej.Mroz
#jira UE-35110 Packaged project crashes when playing sound from blueprint library with enum input after nativizing blueprints
Function Libraries are properly added to dependencies list while nativization.
Change 3124667 on 2016/09/14 by Maciej.Mroz
#jira UE-35262 Incompatible pins give generate warning, when error is necessary.
Fixed incompatible pins validation.
Change 3125245 on 2016/09/14 by Phillip.Kavan
[UE-33674] Fix missing stats for the ForEachElementInEnum node type in the Blueprint profiler tree view.
change summary:
- modified FScriptEventPlayback::Process() to not allow intermediate node exit pins to pollute the current trace path
- modified FBlueprintFunctionContext::DetermineGraphNodeCharacteristics() to handle the UK2Node_ForEachElementInEnum type as a special case and account for extra loop iterations in the sample frequency computed at mapping time
- exported UK2Node_ForEachElementInEnum::InsideLoopPinName and EnumOutputPinName string constants
#jira UE-33674
Change 3126211 on 2016/09/15 by Maciej.Mroz
#jira UE-36016 Struct pin can be connected to Object pin without error
Change 3126393 on 2016/09/15 by Maciej.Mroz
#jira UE-35936
Replace "check" by "ensure".
Change 3126623 on 2016/09/15 by Maciej.Mroz
#jira UE-35816 User defined struct array resets to defaults in blueprint after updating the struct
STRUCT_SerializeFromMismatchedTag is not necessary to serialize structure when guids match. Anyway STRUCT_SerializeFromMismatchedTag sholud precede SerializeFromMismatchedTag().
Change 3127288 on 2016/09/15 by Mike.Beach
Making the script VM overhead and native time stats threadsafe (to account for threaded anim Blueprints in Orion).
Change 3127375 on 2016/09/15 by Mike.Beach
Making sure Blueprint classes inherit the super's ClassConfigName properly (inherit the ID instead of the filename).
Change 3127381 on 2016/09/15 by Mike.Beach
Removing an overzealous ensure that certain users were hitting when a loading array property wasn't fully filled out yet (confirmed that it was populated with the proper objects by the end of the load).
Change 3127476 on 2016/09/15 by Dan.Oconnor
Build fix
#jira UE-36073
Change 3128335 on 2016/09/16 by Maciej.Mroz
#jira UE-36075 Odin: BP_DefaultHand and BigBotCharacter blueprints fail to compile
Fixed broken BP assets.
Change 3128589 on 2016/09/16 by Mike.Beach
Fixing a static analysis CIS warning (duplicated condition).
Change 3128630 on 2016/09/16 by Dan.Oconnor
Re-fix with engine version set
Change 3129338 on 2016/09/16 by Dan.Oconnor
=FScriptSet/FScriptSetHelper fleshed out (Add, Remove, and Find implemented)
+SetParam implemented for marking up sets for primitive Set functions (to be checked in once completed as BlueprintSetLibrary)
#jira UE-2114
[CL 3131171 by Mike Beach in Main branch]
2016-09-19 16:14:06 -04:00
|
|
|
OutReason = NSLOCTEXT("K2Node", "MakeArray_InputIsContainer", "Cannot make an array with an input of a container!").ToString();
|
2014-03-14 14:13:41 -04:00
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
2015-04-23 16:57:59 -04:00
|
|
|
auto Schema = Cast<const UEdGraphSchema_K2>(GetSchema());
|
|
|
|
|
if (!ensure(Schema) || (ensure(OtherPin) && Schema->IsExecPin(*OtherPin)))
|
|
|
|
|
{
|
|
|
|
|
OutReason = NSLOCTEXT("K2Node", "MakeArray_InputIsExec", "Cannot make an array with an execution input!").ToString();
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
2015-04-23 16:57:59 -04:00
|
|
|
void UK2Node_MakeArray::ValidateNodeDuringCompilation(class FCompilerResultsLog& MessageLog) const
|
|
|
|
|
{
|
|
|
|
|
auto Schema = Cast<const UEdGraphSchema_K2>(GetSchema());
|
|
|
|
|
auto OutputPin = GetOutputPin();
|
|
|
|
|
if (!ensure(Schema) || !ensure(OutputPin) || Schema->IsExecPin(*OutputPin))
|
|
|
|
|
{
|
|
|
|
|
MessageLog.Error(*NSLOCTEXT("K2Node", "MakeArray_OutputIsExec", "Uaccepted array type in @@").ToString(), this);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2014-08-23 20:16:29 -04:00
|
|
|
void UK2Node_MakeArray::GetMenuActions(FBlueprintActionDatabaseRegistrar& ActionRegistrar) const
|
2014-07-14 16:05:25 -04:00
|
|
|
{
|
2014-09-10 17:09:26 -04:00
|
|
|
// actions get registered under specific object-keys; the idea is that
|
|
|
|
|
// actions might have to be updated (or deleted) if their object-key is
|
|
|
|
|
// mutated (or removed)... here we use the node's class (so if the node
|
|
|
|
|
// type disappears, then the action should go with it)
|
|
|
|
|
// actions get registered under specific object-keys; the idea is that
|
|
|
|
|
// actions might have to be updated (or deleted) if their object-key is
|
|
|
|
|
// mutated (or removed)... here we use the node's class (so if the node
|
|
|
|
|
// type disappears, then the action should go with it)
|
|
|
|
|
UClass* ActionKey = GetClass();
|
|
|
|
|
// to keep from needlessly instantiating a UBlueprintNodeSpawner, first
|
|
|
|
|
// check to make sure that the registrar is looking for actions of this type
|
|
|
|
|
// (could be regenerating actions for a specific asset, and therefore the
|
|
|
|
|
// registrar would only accept actions corresponding to that asset)
|
|
|
|
|
if (ActionRegistrar.IsOpenForRegistration(ActionKey))
|
|
|
|
|
{
|
|
|
|
|
UBlueprintNodeSpawner* NodeSpawner = UBlueprintNodeSpawner::Create(GetClass());
|
|
|
|
|
check(NodeSpawner != nullptr);
|
2014-07-14 16:05:25 -04:00
|
|
|
|
2014-09-10 17:09:26 -04:00
|
|
|
ActionRegistrar.AddBlueprintAction(ActionKey, NodeSpawner);
|
|
|
|
|
}
|
2014-07-14 16:05:25 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FText UK2Node_MakeArray::GetMenuCategory() const
|
|
|
|
|
{
|
2014-09-04 13:00:27 -04:00
|
|
|
static FNodeTextCache CachedCategory;
|
2015-04-02 11:16:23 -04:00
|
|
|
if (CachedCategory.IsOutOfDate(this))
|
2014-09-04 13:00:27 -04:00
|
|
|
{
|
|
|
|
|
// FText::Format() is slow, so we cache this to save on performance
|
2015-04-02 11:16:23 -04:00
|
|
|
CachedCategory.SetCachedText(FEditorCategoryUtils::BuildCategoryString(FCommonEditorCategory::Utilities, LOCTEXT("ActionMenuCategory", "Array")), this);
|
2014-09-04 13:00:27 -04:00
|
|
|
}
|
|
|
|
|
return CachedCategory;
|
2014-07-14 16:05:25 -04:00
|
|
|
}
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
#undef LOCTEXT_NAMESPACE
|