Commit Graph

25 Commits

Author SHA1 Message Date
Michael Schoell
eba4f3ca99 Fixes issues with duplicating Blueprints, removed UK2Node_Variable::PostDuplicate and moved logic to happen during the Blueprint's PostDuplicate.
#ttp 349451 - CRITICAL: Regression: BP: Some blueprints will give a "Target must have a connection error when duplicated.
#ttp 348325 - Duplicating a blueprint leaves all (self) references pointing at the original

[CL 2327686 by Michael Schoell in Main branch]
2014-10-13 17:03:32 -04:00
Michael Schoell
348ad15aee Pasting invalid self variables into Macro Blueprints is no longer allowed and promoting or replacing variables with missing properties is no longer an option.
Pasting any nodes into interface BPs is not possible.

When right clicking on a variable node with a missing property, you can replace the node with any valid local variables (in functions).

#ttp 340631 - bp: macros: one can create variables within macros by pasting them into a macro from a blueprint (not sure if this is intentional because the create variable ui has been removed)

[CL 2321738 by Michael Schoell in Main branch]
2014-10-07 16:04:29 -04:00
Michael Schoell
6513c1df66 Duplicating Blueprints will no longer leave all "self" pins on variables in an invalid state in referencing the original Blueprint.
[CL 2321388 by Michael Schoell in Main branch]
2014-10-07 12:28:21 -04:00
Michael Schoell
86645dd88c Fixed an issue with using missing properties when recreating variable nodes.
#ttp 348715 - BLOCKER: GUBP: [//depot/UE4: FortniteGame_MakeBuild Failure] failed to create build

[CL 2320486 by Michael Schoell in Main branch]
2014-10-06 17:18:23 -04:00
Michael Schoell
7ef71184eb Fixes for variable target pin to work when "self" variables are included via an external macro blueprint.
#ttp 348416 - CRITICAL: Regression: SHADOW: BP: ERRORS: Several blueprints are failing to compile

[CL 2318862 by Michael Schoell in Main branch]
2014-10-03 14:56:47 -04:00
Mike Beach
75f179ec47 Fixing it so self var nodes can be autowired in as the target pin for other getters.
[CL 2316249 by Mike Beach in Main branch]
2014-10-01 13:44:39 -04:00
Michael Schoell
58cbc3896c Dragging off of output BP pin types and placing a variable will autoconnect to the "Target" pin if available in the new menu system.
"Target" pins for variables are no longer different when hidden vs visible

[CL 2316074 by Michael Schoell in Main branch]
2014-10-01 11:49:19 -04:00
Mike Beach
d82aa27dba Favoring skeleton property/function signatures for variable/function node pins.
[CL 2310036 by Mike Beach in Main branch]
2014-09-25 13:31:55 -04:00
Mike Beach
9ab3347a1e Guarding against null function outer(when attempting to log an warning during node validation).
[CL 2309066 by Mike Beach in Main branch]
2014-09-24 19:47:30 -04:00
Mike Beach
3beb0cd5f6 FMemberReferences now default to the authoritative class (unless set through the SetDirect() function).
This is to support references being set for the skeleton class (in the new BP menu system).

#codereview Nick.Whiting

[CL 2308582 by Mike Beach in Main branch]
2014-09-24 14:15:01 -04:00
Mike Beach
1424e089f3 Shrinking the template node database by removing the need for function/variable nodes to be cached.
[CL 2295284 by Mike Beach in Main branch]
2014-09-12 12:56:24 -04:00
Mike Beach
6d68a84123 (WIP) Readdressing how we handle bound nodes in the new blueprint menu system (can't cache all permutations in the database, so we bind at menu construction time).
[CL 2262664 by Mike Beach in Main branch]
2014-08-19 12:36:44 -04:00
Maciej Mroz
e39b3831f1 Warnings and erros about using static arrays with blueprints.
Warnings about using properties without BlueprintReatWrite or BlueprintReadOnly tags.

ttp343139 BP:  PUBLIC CRASH:  ensure(1 == StructProperty->ArrayDim) in FScriptBuilderBase::EmitTermExpr
ttp343016 ensure(1 == StructProperty->ArrayDim) in FScriptBuilderBase::EmitTermExpr

#codereview Nick.Whiting, Michael.Noland, Robert.Manuszewski

[CL 2244501 by Maciej Mroz in Main branch]
2014-08-05 14:16:02 -04:00
Nick Darnell
d5e17f3ce8 UMG - Now allowing direct binding to properties in the designer.
[CL 2223677 by Nick Darnell in Main branch]
2014-07-18 14:21:23 -04:00
Marc Audy
e639f0a2bd Fix SplitPin issues when reconstructing a Variable node
[CL 2219742 by Marc Audy in Main branch]
2014-07-15 15:51:15 -04:00
Nick Whiting
81749be9e5 #ue4 Adding improved deprecation warning on nodes to notify users that the var was deprecated as opposed to just removed.
[CL 2110541 by Nick Whiting in Main branch]
2014-06-19 12:43:03 -04:00
Michael Schoell
0b51921eab Find-in-Blueprints will now find a variety of new, useful bits of data in Blueprints (both for find-in-all and finding in current). Searches can now be done in the current culture and source culture.
Find-in-Blueprints now uses the same search data for both Find-in-all-Blueprints and Find-in-Blueprint. That searchdata is no longer stored in the asset registry, it is stored in the DDC and is managed by a new class. Searching is multithreaded to reduce overhead on the main thread during long searches in large projects.

virtual UEdGraphNode::AddSearchMetaDataInfo which sets base find-in-blueprints metadata and can be overriden with more detailed search data.
#change UEdGraphPin::GetDefaultAsString will return the text value as string if set

Added FBlueprintEditorUtils::GetEntryAndResultNode, moving most of the functionality from FBlueprintGraphActionDetails::SetEntryAndResultNodes to the new function
Added FBlueprintEditorUtils::GetGraphDescription to get graph descriptions from their metadata
Added FBlueprintEditorUtils::GetNodeByGUID to find nodes using their Guid

Blueprints now cache their search metadata on compile, this is a CPU intensive process and can no longer occur every time the Asset Registry queries for the Blueprint's tags

#change Fixed an issue with finding a pin type's icon (UK2Node_Variable::GetVarIconFromPinType) where we would search for a class we already had available.

Added an overridable function to UEdGraphNode to collect Blueprint search metadata.

#change FJsonObjectConverter::UPropertyToJsonValue is now available outside of the .cpp

#change Rewrote how Find-in-Blueprints works both for local and global searches, now uses Json to resolve a variety of format issues and also to make it much more extensible.

#ttp 290376 - K2: Ability to search (find in blueprints) important pin values
#ttp 298599 - ROCKET: TASK: K2: Search results should indicate where the instance is located in the results page (construction script, event graph, custom graph)
#ttp 304819 - Blueprints: Editor: L10N: "Find in Blueprint" needs to work with other languages
#ttp 308572 - UE4: ANIM: K2: Searching doesn't work for anim nodes right now
#ttp 316678 - UE4: BLUEPRINTS: SHADOW: Default values are not searchable
#ttp 318180 - UE4: K2: Cannot search for spawnactor using find in blueprints
#ttp 320141 - UE4: K2: Find in blueprints does not find functions declared in another blueprint (if the function isn't called in that BP)

[CL 2110494 by Michael Schoell in Main branch]
2014-06-19 11:32:47 -04:00
Nick Whiting
6fa1a2daf8 #ue4 Blueprint node analytics update: added in system to better track interesting analytics info on a per-node class basis (for Ben Cosh)
#codereview ben.cosh

[CL 2097657 by Nick Whiting in Main branch]
2014-06-06 18:51:05 -04:00
Michael Schoell
7fe3dd5fd9 Local function variables in Blueprints now utilize the Get/Set nodes
#change Deprecated UK2Node_LocalVariable
#change UK2Node_LocalVariable will replace itself with a Get and any Assign nodes it is hooked up to with a Set node, will also delete itself from Animation rule graphs that they should not have been allowed to be placed in

#ttp 332158 - BP:  Make local variables use standard get / set nodes, instead of the assigned named local nodes

[CL 2068725 by Michael Schoell in Main branch]
2014-05-09 17:43:40 -04:00
Robert Manuszewski
aa11e3bbbf Merging UE4-Pretest @ 2042161 to UE4
Change 1996384 by Andrew Brown:
	322252 - EDITOR: Asset picker displays incorrect text when there are no filter results.
Change 1996385 by Andrew Brown:
	321858 - CRASH: Assertion failed: (Index >= 0) Function: STransformViewportToolBar::GetLocationGridLabel() STextBlock::CacheDesiredSize()
Change 1996977 by Andrew Brown:
	309685 - UE4: Adding an event/renaming an event on an event track in Matinee does not update the MatineeActor node in blueprint
Change 2034873 by Jaroslaw Palczynski:
	More robust VS installation detection.
Change 2039693 by Jaroslaw Palczynski:
	327268 - RocketGDC: POSTLAUNCH: DEV: Make engine more robust against bad Visual Studio environment variables
Change 1978978 by Jaroslaw Surowiec:
	- Removed obsolete AllowEliminatingReferences from the FArchive
Change 2020326 by Maciej Mroz:
	pretest BP K2Node: RemovePinsFromOldPins function moved from K2Node to RemovePinsFromOldPins
Change 2017608 by Maciej Mroz:
	pretest Some changes in SFortMissionEventSelector caused by FPinTypeTreeInfo
Change 2017463 by Maciej Mroz:
	PinTypeSelector can lins unloaded UDStructs
Change 2019979 by Maciej Mroz:
	pretest BP: Crash when performing Diff against Depot with blueprints containing Format Text nodes
Change 2024469 by Maciej Mroz:
	MemberReference variable added to PinType. It's necessary for delegate's signature.
Change 2024049 by Maciej Mroz:
	HasExternalBlueprintDependencies added to UK2Node_DynamicCast
Change 2024586 by Maciej Mroz:
	FillSimpleMemberReference fix
Change 2024472 by Maciej Mroz:
	workaround for delegates signature in pintype removed.
Change 2023997 by Maciej Mroz:
	BP, UDStruc: Class UserDefinedStructEditorData added. It fixes many problems with undo/redo.
Change 2021934 by Maciej Mroz:
	typo in a comment
Change 2020355 by Maciej Mroz:
	Back out changelist 2020342
Change 2022178 by Maciej Mroz:
	CRASH: PRETEST: EDITOR: UDS: Crash when undo then redo new variable in struct that is used by blueprint
Change 2021958 by Maciej Mroz:
	CRASH: PRETEST: EDITOR: UDS: Crash using variable of a type of copied struct in blueprint
Change 1986247 by Maciej Mroz:
	User Defined Structures: circle dependency fixed. Early version.
Change 1985107 by Maciej Mroz:
	UserDefinedStruct cannot have a field of a non-native type
Change 1986278 by Maciej Mroz:
	pretest ensureMsgf in Struct::link
Change 1986250 by Maciej Mroz:
	User Defined Struct: Non native classes are accepted types od values in structures.
Change 1980955 by Maciej Mroz:
	Using AssetPtr and LazyPtr as UFunction parameter (intput or return) is explicitly disallowed.
Change 2041215 by Maciej Mroz:
	ttp331249 BLOCKER: PRETEST: UI: Survive the Storm is missing the Mission HUD.
Change 1984316 by Maciej Mroz:
	New User Defined Structure. WIP - there are still problems with circular dependencies.
Change 2011616 by Maciej Mroz:
	UserDefinedStructures - various problems fixed.
Change 2011609 by Maciej Mroz:
	more robust HasExternalBlueprintDependencies implementation
Change 2016697 by Maciej Mroz:
	pretest BP: UDStruct - default value propagation in cooked build
Change 2016288 by Maciej Mroz:
	pretest BP: UDStruct: Renaming variables wont break links from make/break nodes
Change 1987637 by Maciej Mroz:
	CustomStruct icons placeholders
Change 1987422 by Maciej Mroz:
	Better tooltips for variables in MyBlueprint
Change 1991387 by Maciej Mroz:
	UDStructures fixes:
Change 2029165 by Maciej Mroz:
	BP: better comment for incomatible pins
Change 2030016 by Maciej Mroz:
	8PRETEST: EDITOR: UDS: Defaults values aren't updated in struct type variables in blueprints
Change 2030017 by Maciej Mroz:
	Unused UDStructure code removed (PPF_UseDefaultsForUDStructures)
Change 2028856 by Maciej Mroz:
	BP: Pins with PC_Struct type are compatible only with exactly the same structure. (No derived structures are not handled as compatible).
Change 2026701 by Maciej Mroz:
	k2: odd error on an add item node within a function (see attached image in details)
Change 2028160 by Maciej Mroz:
	PRETEST: EDITOR: UDS: When deleting structures just after creating there is always some references in the memory
Change 2028165 by Maciej Mroz:
	BP: BreakHitResult function has proper icon.
Change 2033340 by Maciej Mroz:
	ttp330786 PRETEST: EDITOR: UDS: Changes of default values aren't apllied to breeak nodes for text type of variables
Change 2034255 by Maciej Mroz:
	EDITOR: UDS: Changes of default values aren't apllied to make nodes for text type of variables ttp#330620
Change 2037682 by Maciej Mroz:
	ttp331309 BLOCKER: PRETEST: CRASH: EDITOR: Crash occurs when performing Diff Against Depot on any Blueprint
Change 2033142 by Maciej Mroz:
	CreateDelegate Node uses internally FMemberReference. Refactor.
Change 2032329 by Maciej Mroz:
	ttp330608 CRASH: PRETEST: EDITOR: UDS: Crash when trying to use struct named 'Color' in blueprint
Change 2032420 by Maciej Mroz:
	ttp330620 PRETEST: EDITOR: UDS: Changes of default values aren't apllied to make nodes for text type of variables
Change 2033139 by Maciej Mroz:
	Functions generated from CustomEvents can be also identified by GUID
Change 2026631 by Maciej Mroz:
	BP. UDStruct: Invalid structs are handled better.
Change 2025344 by Maciej Mroz:
	UDStruct enabled by default
Change 2026672 by Maciej Mroz:
	EDITOR: BP: Can't easily remove 'pass-by-reference' pins on ReturnNodes
Change 2026411 by Maciej Mroz:
	ExposeOnSpawn updated, it supports UDStructs, custom native Structs, and it throws compiler error.
Change 2025342 by Maciej Mroz:
	GenerateBlueprintSkeleton moved from BLueprint::Serialize to RegenerateBlueprintClass, because SkeletonClass compilation requires all external dependencies to be loaded and linked.
Change 2025570 by Steve Robb:
	Moved dependency processing to its own function.
Change 2033235 by Steve Robb:
	String improvements
Change 2035830 by Steve Robb:
	Workaround for FriendsAndChat crash in Fortnite.
Change 2035115 by Steve Robb:
	UBT build time regression fixes.
Change 2034162 by Steve Robb:
	312775: UObject improvement: Ensure that *.generated.inl is included somewhere
Change 2034181 by Steve Robb:
	Removal of any references to .generated.inl
Change 2020165 by Steve Robb:
	BuildPublicAndPrivateUObjectHeaders factored out into its own function.
Change 2020187 by Steve Robb:
	CreateModuleCompileEnvironment function factored out.
Change 2020055 by Steve Robb:
	Refactoring of Unity.cs to remove complex and duplicate iteration.
Change 2020083 by Steve Robb:
	Another use of dictionary utilities.
Change 2031049 by Steve Robb:
	312775: UObject improvement: Ensure that *.generated.inl is included somewhere
Change 2025728 by Steve Robb:
	Refactored the application of a shared PCH file to multiple file into a single ApplySharedPCH function.
Change 2020068 by Steve Robb:
	A couple of helpful utility functions for populating dictionaries.
Change 2032307 by Steve Robb:
	312775: UObject improvement: Ensure that *.generated.inl is included somewhere

[CL 2054495 by Robert Manuszewski in Main branch]
2014-04-23 20:18:55 -04:00
Michael Schoell
0a41fb741e #summary Can search for nodes in the palette menu in Blueprints with both the native name and the localized name.
#add Added UEdGraphNode::GetNodeNativeTitle to return a native title for a node.
#add Added UEdGraphNode::GetNodeSearchTitle to return the native and localized title for a node, together, for searching.
#add Can hold "alt" over a node (in the graph panel, or the palette) to see the native name of the node.

#ttp 331252 - Blueprints: Editor: L10N: Blueprints need to consistently show localized node names and when searching need to search both the localized name and the native name

#codereview justin.sargent

[CL 2044506 by Michael Schoell in Main branch]
2014-04-23 18:30:37 -04:00
Maciej Mroz
aaa4f59df5 #ue4 When self and variable has the same type, the K2Node_Variable can become corrupted.
https://forums.unrealengine.com/showthread.php?2203-Setting-and-Getting-in-same-flow-causes-Blueprint-bug

#codereview Nick.Whiting

[CL 2043509 by Maciej Mroz in Main branch]
2014-04-23 18:19:54 -04:00
Maciej Mroz
894de5e8d9 #ue4 ttp331729 Blueprints: Can't access properties of variables of the same type as the Blueprint
SelfContextInfo added to Variable node.

#codereview Nick.Whiting, Michael.Noland

[CL 2042246 by Maciej Mroz in Main branch]
2014-04-23 18:01:32 -04:00
Mike Beach
ea3d396e18 TTP #331574: Distinguishing interface pins/vars from other objects in blueprints with their own type/color (handling PC_Interface like we handle PC_Object).
#codereview Nick.Whiting

[CL 2041911 by Mike Beach in Main branch]
2014-04-23 17:58:27 -04:00
Tim Sweeney
324683ce78 Engine source (Main branch up to CL 2026164) 2014-03-14 14:13:41 -04:00