Osero Suite by Jeren Osero
FabYouTubeJeren Osero
  • Osero Suite
  • About
  • Frequently Asked Questions
  • Support
  • Featured Assets
    • [FEATURED] Module Creator
  • Supported Assets
    • Module Creator
      • About
      • Changelog
      • How to Use (5.2+)
        • Tutorial
        • Accessing the Module Creator
        • UI Outline
        • Module Templates
        • Plugin Content
        • Project Settings
      • How To Use (Legacy 5.1)
      • Frequently Asked Questions
    • Plugin Sync Tool
      • About
      • Changelog
      • How to Use (5.2+)
        • Tutorial
        • Accessing the Plugin Sync Tool
        • UI Outline
        • Project Settings
      • How to Use (Legacy 5.1)
    • Render Results Screen
      • About
      • Changelog
      • How to Use (5.2+)
        • Tutorial
        • Making Sure the Plugin is Active
        • Movie Render Queue Job Additions
        • UI Outline
          • Render Results Window
          • Render Graph
          • Contact Sheet
        • Accessing Previous Render Results
        • Data Handler
        • Plugin Content
        • Project Settings
        • Code Reference
          • Classes
            • UOS_RRS_DataHandler
            • UOS_RRS_RenderDataLibrary
          • Structs
            • FOS_RRS_JobData
            • FOS_RRS_ResultData
            • FOS_RRS_ShotData
          • Enums
            • EOS_RRS_RenderResult
      • How to Use (Legacy 5.1)
  • TECHNICAL NOTES
    • Foreword
    • Unreal Engine Notes
      • Actor Components
        • Component Transforms
      • Blueprints
        • Add Function to Promotable Operator Nodes
      • Compile Errors
        • Implicit Capture of 'This' via '[=]' is Deprecated
        • Specified Type Modifiers Are Not Allowed Here
        • Static Function in Namespace Not Defined
        • Circular Dependency Detected
        • Inconsistent Dll Linkage
        • Overloaded Member Function Note Found (Compile Error in .gen File)
      • Debugging
        • UIAction.h Line 139
      • Details Customisation
        • Add External Property to Details Panel
        • Default Slate Styles
      • Ed Modes
        • Registering Editor Modes
      • Editor/Engine
        • Get Engine Version in C++
        • Extending the Editor with FExtender
      • Input
        • Get Key or Mouse Button in C++
        • Mouse Cursor Location in World (3D Space)
      • Level Editor
        • Select Actor Component via C++
      • Meta Specifiers
        • Reference
        • Edit Condition
        • Bind Widget
      • Rendering
        • Set Graphics Card Timeout
      • Sequencer
        • Project Default: Completion Mode
      • Slate
        • Default Editor Icons
        • Test Suite
        • Set Default Value for Slate Arguments
        • Cast Between Different Slate Classes
        • Set UObject Delegate for TAttribute<T>
      • Trace
        • Simple Line Trace
        • Complex Traces
          • ETraceTypeQuery
          • EObjectTypeQuery
      • UObject
        • "Config" Specifier Does not Work Properly in 5.4+
      • UPlugins
        • Loading Phases
      • UPROPERTIES
        • GetOptions (meta)
      • Viewport
        • Get Piloted Viewport Actor
        • Update Pivot Location
      • Water Plugin
        • General
        • C++ Summary
        • Details Customisation
        • Classes Overview
          • UWaterSplineMetadata
          • FWaterSplineComponentVisualizer
        • Water Meshes
    • Windows Notes
      • Get Around "This App Has Been Blocked For Your Protection"
      • Windows Keyboard Layout Boot Loop
      • Disable Copilot
      • Disable "Search the Web" in Windows Search
    • Visual Studio Notes
      • Turn Off Auto Brackets
      • Disable Unreal Engine Integration Log
  • BUY OSERO SUITE PRODUCTS
    • Fab
  • SOCIALS
    • YouTube
    • Rumble
    • Twitter/X
    • Instagram
    • LinkedIn
    • Jeren Osero Website
Powered by GitBook
On this page
  1. TECHNICAL NOTES
  2. Unreal Engine Notes
  3. Blueprints

Add Function to Promotable Operator Nodes

Last updated 11 days ago

To add a function to these operator nodes, a function must have these things:

  1. The function must be static.

  2. The UFUNCTION must be BlueprintPure.

  3. The UFUNCTION meta must contain CompactNodeTitle = "{Node Title}".

meta = (CompactNodeTitle = "==")
meta = (CompactNodeTitle = "!=")
  1. The function name must start with one of the defined “OperatorNames” in BlueprintTypePromotion.cpp.

namespace OperatorNames
{
	static const FName NoOp			= TEXT("NO_OP");
	static const FName Add			= TEXT("Add");
	static const FName Multiply		= TEXT("Multiply");
	static const FName Subtract		= TEXT("Subtract");
	static const FName Divide		= TEXT("Divide");
	static const FName Greater		= TEXT("Greater");
	static const FName GreaterEq		= TEXT("GreaterEqual");
	static const FName Less			= TEXT("Less");
	static const FName LessEq		= TEXT("LessEqual");
	static const FName NotEq		= TEXT("NotEqual");
	static const FName Equal		= TEXT("EqualEqual");
}

Example

From “OS_RRS_RenderDataLibrary.h”:

UFUNCTION(BlueprintPure, Category = "Osero Suite: Render Results Screen", meta = (DisplayName = "Equal (Render Job)", CompactNodeTitle = "==", Keywords = "== equal"))
	static bool EqualEqual_JobJob(FOS_RRS_JobData A, FOS_RRS_JobData B);
UFUNCTION(BlueprintPure, Category = "Osero Suite: Render Results Screen", meta = (DisplayName = "Not Equal (Render Job)", CompactNodeTitle = "!=", Keywords = "!= not equal"))
	static bool NotEqual_JobJob(FOS_RRS_JobData A, FOS_RRS_JobData B);

More examples can be found in "KismetMathLibrary.h".