Set Colour of Custom Node

I have created some custom selector nodes to use in a behaviour tree; they inherit from UBTComposite_Selector. To make it easier on the designers, I would like to change the colour of the nodes as they are gray by default. Is this possible?

Also, I know there is a function GetNodeIconName() which can be overriden for a custom icon. Is it possible to place this icon in the content folder of a plugin?

Cheers,
Univise

Looks like it colors are hardcoded in to graph editor depending on which type of node you using, you might try search deeper:

https://github.com/EpicGames/UnrealEngine/blob/ab237f46dc0eee40263acbacbe938312eb0dffbb/Engine/Source/Editor/BehaviorTreeEditor/Private/SGraphNode_BehaviorTree.cpp#L221

As for GetNodeIconName() slate can direcly grab png from practicly anywhere without any importing, you need register them in slate style and then you can use them in SlateBrush, Paper2D plugin has lot of them you can use it as example:

https://github.com/EpicGames/UnrealEngine/blob/ab237f46dc0eee40263acbacbe938312eb0dffbb/Engine/Plugins/2D/Paper2D/Source/Paper2DEditor/Private/PaperStyle.cpp#L65

I can’t show you where icons are, they not in repository as they downloaded as a depency to Content/Icons in Paper2D plugin forder

Also note that you need to copy and modify a little this macro:

#define IMAGE_PLUGIN_BRUSH( RelativePath, ... ) FSlateImageBrush( FPaperStyle::InContent( RelativePath, ".png" ), __VA_ARGS__ )