Plugin Documentation

OmniNodes
300+ extra Blueprint nodes

A large Blueprint function library for files, strings, math, textures, sound, input, UMG, level streaming, physics, actors and system utilities — every node also callable from C++.

v1.0
UE 4.27 & 5.8
Win64 (verified) · Mac · Linux
Category Blueprints
Alpha XP

Overview

OmniNodes adds 317 Blueprint nodes and a few helper classes that cover the everyday gaps of Blueprint projects: file and folder access, string and number utilities, geometry math, image and DDS loading, Ogg sound playback from disk, runtime key rebinding, UMG helpers, level streaming instances, ragdoll and trace helpers, process launching and system queries. Everything is C++ exposed to Blueprint, so the nodes are also callable from your own C++ code.

  • Files and config — list files (recursive, filtered), load and save text, save-game slot listing, project folder paths, MD5 file hashes and typed reads/writes of the game ini.
  • Strings and math — explode by multi-character separators, clipboard, number formatting, plane/line/sphere/box math, multiples, speed unit conversion and UMG anchor conversion.
  • Arrays and random — wildcard Sort (structs and objects by property) and Valid Index, min/max with index, seeded random numbers including a Mersenne Twister.
  • Textures and capture — load PNG, JPG, BMP, ICO, EXR, ICNS and DDS files into textures, read and save pixels, project points into scene captures and save captures to image files.
  • Sound — play .ogg files from disk at a location or attached to a component, sound class volume.
  • Input — read, rebind and remove action/axis mappings at runtime, simulate keys and the mouse wheel.
  • UMG and viewport — find, count and remove widgets by class, widget parent/children queries, insert into panels, viewport hit tests and deprojection, mouse position, full-screen mode and frame-rate cap.
  • Actors and characters — ragdoll enter/leave, socket traces, aim offsets, clone static mesh actors, convert actors to instanced static meshes, rendered-actor queries, relative transforms.
  • Levels and system — add/remove streaming level instances, launch processes and read their output, GPU and display information, OS time, platform flags.
  • Helper classes — a process pipe object, a player controller with subtitle and public IP events, and a key/value lookup component.

Requirements

RequirementDetails
Unreal Engine4.27 and 5.8 (verified clean on both)
ModulesOmniNodes (Runtime)
DependenciesNone. No other plugins are required; only engine modules are used.
LanguageBlueprints and C++
PlatformsWin64, Mac and Linux are enabled by the plugin. Win64 is built and verified by Alpha XP; Mac and Linux are supported by the code, not verified by Alpha XP.

Installation

  1. Close the editor. Copy the OmniNodes folder into your project's Plugins folder (create it if needed), or install the plugin to the engine from the launcher.
  2. Open the project. For C++ projects, rebuild when the editor asks you to compile the plugin.
  3. Open Edit > Plugins, find OmniNodes in the Blueprints category, enable it and restart the editor.
  4. C++ only: add "OmniNodes" to PublicDependencyModuleNames (or PrivateDependencyModuleNames) in your module's .Build.cs.
Verifying the installRight-click in any Blueprint graph and type Get Command Line. If the node appears under OmniNodes › System, the plugin is loaded.

Quick start

Blueprint: read every text file in the Saved folder

  1. Add Paths Saved Dir (category OmniNodes › Paths). It returns the absolute Saved folder.
  2. Add File IO Get Files, connect the folder to Root Folder Full Path and type txt into Ext.
  3. Loop over the returned Files array, append each file name to the folder and call Load String from File.
  4. Optional: use Load String Array from File instead to get the file as an array of lines.

Blueprint: show a clock

  1. Feed elapsed seconds into Seconds to Hours Minutes Seconds with Trim Zeroes enabled.
  2. Bind the returned string to a UMG text block. 330 seconds are shown as +05:30 (the engine timespan format includes a leading sign).

C++

All nodes are static members of UOmniNodesFunctionLibrary or UOmniNodesMathLibrary:

#include "OmniNodesFunctionLibrary.h"
#include "OmniNodesMathLibrary.h"

void UMyComponent::DumpSavedTextFiles()
{
    const FString Folder = UOmniNodesFunctionLibrary::Paths__SavedDir();

    TArray<FString> Files;
    if (UOmniNodesFunctionLibrary::FileIO_GetFiles(Files, Folder, TEXT("txt")))
    {
        for (const FString& File : Files)
        {
            FString Text;
            if (UOmniNodesFunctionLibrary::LoadStringFromFile(Text, Folder / File))
            {
                TArray<FString> Lines;
                UOmniNodesFunctionLibrary::String__ExplodeString(Lines, Text, TEXT("\n"));
                UE_LOG(LogTemp, Log, TEXT("%s: %d lines"), *File, Lines.Num());
            }
        }
    }

    const FString Clock = UOmniNodesFunctionLibrary::SecondsToHoursMinutesSeconds(330.f, true); // "+05:30"
    const FVector Snapped = UOmniNodesMathLibrary::GridSnap(FVector(123.f, 47.f, 9.f), 50.f); // (100,50,0)
}

Classes & types

Besides the two static function libraries, OmniNodes provides these classes and types. In the editor, class names are shown without their prefix and with spaces (for example Omni Nodes Process Pipe).

NodeTypeDescription
UOmniNodesFunctionLibraryClassBlueprint function library holding most nodes (all static except the two Transform nodes).
UOmniNodesMathLibraryClassBlueprint function library with the vector, intersection, integer, anchor, console-variable and physics math nodes.
UOmniNodesProcessPipeClassBlueprintable object. Create it with Construct Object from Class and pass it to Create Proc to capture the process output; read it with Read from Pipe.
AOmniNodesPlayerControllerClassPlayer controller with Play Speech Sound / On Subtitles Queued and the public IP request. Use it (or a Blueprint child) as the Player Controller Class of your Game Mode.
UOmniNodesTMapComponentClassActor component (Add Component › OmniNodes) with seven key/value tables: String to Actor, String, Integer, Vector, Rotator; Integer to Vector and Float.
AOmniNodesISMClassActor with one Instanced Static Mesh component (Mesh), created by ISM Convert to ISMActors.
FOmniNodesInputClassStruct: action name, key, key display string and Shift/Ctrl/Alt/Cmd flags of an action mapping.
FOmniNodesInputAxisClassStruct: axis name, key, key display string and scale of an axis mapping.
FOmniNodesLevelStreamInstanceInfoClassStruct: package name, package to load, location, rotation, load/visible/blocking flags and LOD index of a streaming level instance.
FOmniNodesSubtitleCueClassStruct: subtitle text and time, passed to On Subtitles Queued.
EOmniNodesImageFormatsClassEnum used by the image loaders: JPG, PNG, BMP, ICO, EXR, ICNS.
EOmniNodesFullScreenModeClassEnum used by the full-screen nodes: Regular Full Screen, Windowed Full Screen High Quality, Windowed Full Screen (Default).
EOmniNodesSpeedUnitClassEnum used by Convert Physics Linear Velocity: cm/s, ft/s, m/s, m/min, km/s, km/min, km/h, mph, knot, Mach, speed of light, yd/s.

Files, paths & config

35 nodes. Categories are shown as they appear in the Blueprint context menu.

OmniNodes › File IO

NodeTypeDescription
UTCTo LocalPureConverts a UTC date/time to local time using the machine's current UTC offset.
File IO Get FilesPureFile names in a folder, optionally filtered by extension.
File IO Get Files in Root and All Sub FoldersPureFull paths of all files in a folder and its sub-folders, optionally filtered by extension.
Save Game Object Get All Save Slot File NamesPureFile names of all save-game slots in Saved/SaveGames.
Save Game Object Get Most Recent Save Slot File NamePureFile name of the most recently written save-game slot.
Load String Array from FilePureLoads a text file into an array of lines, optionally skipping empty lines.
Load String from FileCallableLoads a whole text file into one string (Unicode supported).
File IO Save String Text to FileCallableSaves a string to a file in a folder (created if needed), with overwrite and append options.
File IO Save String Array to FileCallableSaves an array of strings as lines of a file, with overwrite and append options.

OmniNodes › Paths

NodeTypeDescription
Paths Win 64Dir Binary LocationPureAbsolute folder of the running executable.
Paths Windows No Editor DirPureAbsolute root folder of the packaged game.
Paths Game Root DirectoryPureAbsolute project folder.
Paths Saved DirPureAbsolute Saved folder of the project.
Paths Config DirPureAbsolute project Config folder.
Paths Screen Shots DirPureAbsolute screenshot folder.
Paths Logs DirPureAbsolute log folder.

OmniNodes › Screenshots

NodeTypeDescription
Screen Shots Rename Move Most RecentCallableMoves the most recent screenshot (regular or high-resolution) to a folder under a new name (.png).

OmniNodes › MD5

NodeTypeDescription
Create MD5HashCallableHashes a file with MD5 and writes the hash to another file. Large files can stall the game thread.
Compare MD5HashCallableCompares two hash files written by Create MD5 Hash; true if they match.

OmniNodes › Custom Config Vars

NodeTypeDescription
Get Custom Config Var BoolPureReads a bool from a section/key of the game ini. Is Valid is false if the key is missing.
Get Custom Config Var IntPureReads an integer from the game ini.
Get Custom Config Var FloatPureReads a float from the game ini.
Get Custom Config Var VectorPureReads a vector from the game ini.
Get Custom Config Var RotatorPureReads a rotator from the game ini.
Get Custom Config Var ColorPureReads a colour from the game ini.
Get Custom Config Var StringPureReads a string from the game ini.
Get Custom Config Var Vector 2DPureReads a 2D vector from the game ini.
Set Custom Config Var Vector 2DCallableWrites a 2D vector to the game ini.
Set Custom Config Var BoolCallableWrites a bool to a section/key of the game ini.
Set Custom Config Var IntCallableWrites an integer to the game ini.
Set Custom Config Var FloatCallableWrites a float to the game ini.
Set Custom Config Var VectorCallableWrites a vector to the game ini.
Set Custom Config Var RotatorCallableWrites a rotator to the game ini.
Set Custom Config Var ColorCallableWrites a colour to the game ini.
Set Custom Config Var StringCallableWrites a string to the game ini.

Strings & conversion

23 nodes. Categories are shown as they appear in the Blueprint context menu.

OmniNodes › String

NodeTypeDescription
Count Occurrances Of Sub StringPureNumber of occurrences of a substring (case sensitivity selectable).
Append InlineCallableAppends to a string variable in place (optionally with a newline) and returns the result.
Is Alpha NumericPureTrue if the string contains only letters and digits.
Get String from OSClipboardPureReads text from the operating system clipboard.
Save String to OSClipboardCallableCopies text to the operating system clipboard.
Has SubstringPureTrue if a string contains a substring (case and search direction selectable).
String Combine StringsPureCombines two strings with an optional separator and labels.
String Combine Strings MultiPureJoins strings with a space; add pins for more inputs.
Accessor Get Name as StringPureObject name as a string.
Explode StringPureSplits a string by a (multi-character) separator, with optional limit and trimming.
Append MultiplePureConcatenates strings; add pins for more inputs.

OmniNodes › Utilities › String

NodeTypeDescription
IsEmptyPureTrue if the string is empty.

OmniNodes › Conversion

NodeTypeDescription
Text Is NumericPureTrue if the text is a number.
Text to FloatPureConverts text to a float, removing thousands separators (comma or dot style).
Text to IntPureConverts text to an integer, removing thousands separators (comma or dot style).
String to VectorPureParses a vector from its string form; Is Valid reports success.
String to RotatorPureParses a rotator from its string form; Is Valid reports success.
String to ColorPureParses a linear colour from its string form; Is Valid reports success.
Color to String PureConverts a linear colour to a string.
Conversions Vector to RotatorPureRotation that points along a vector.
Conversions Rotator to VectorPureUnit direction vector of a rotator.
Character Get Controller RotationPureControl rotation of a character's controller.
String Conversion Get Float as String with PrecisionPureFormats a float with a fixed number of decimals, optionally with a leading zero.

Math

47 nodes. Categories are shown as they appear in the Blueprint context menu.

OmniNodes › Math

NodeTypeDescription
Vector 2DInterp ToPureSmoothly interpolates a 2D vector toward a target.
Vector 2DInterp to ConstantPureMoves a 2D vector toward a target at a constant rate.
Map Range ClampedPureMaps a value from one range to another, clamped to the output range.
Conversion Float to Rounded IntegerPureRounds a float to the nearest integer (1.4 becomes 1, 1.6 becomes 2).

OmniNodes › Math › Float

NodeTypeDescription
Float Plus EqualsCallableAdds to a float variable in place (+=).
Float Minus EqualsCallableSubtracts from a float variable in place (-=).
Negate FloatPureReverses the sign of a float.
Is Even NumberPureTrue if the number is even.

OmniNodes › Math › Integer

NodeTypeDescription
Int Plus EqualsCallableAdds to an integer variable in place (+=).
Int Minus EqualsCallableSubtracts from an integer variable in place (-=).
Negate IntPureReverses the sign of an integer.
Round to Lower MultiplePureRounds an integer down to a multiple (optionally skipping itself).
Round to Upper MultiplePureRounds an integer up to a multiple (optionally skipping itself).
Round to Nearest MultiplePureRounds an integer to the nearest multiple.
Is Power Of TwoPureTrue if the integer is a power of two.
Is Multiple OfPureTrue if the integer is a multiple of a number.

OmniNodes › Math › Vector

NodeTypeDescription
Set Vector LengthPureScales a vector to a given length.
Vector Radians to DegreesPureConverts each component of a vector from radians to degrees.
Vector Degrees to RadiansPureConverts each component of a vector from degrees to radians.
Closest Point on Sphere to LinePureClosest point on a sphere to a line.
Closest Point on Line SeqmentPureClosest point on a line segment to a point.
Signed Distance Plane PointPureSigned shortest distance from a point to a plane (normal and point).
Project Point on LinePureProjects a point onto an infinite line.
Closest Points on Two LinesPureClosest points between two non-parallel infinite lines; false if parallel.
Point on Which Side Of Line SegmentPure0 if the point is on the segment, 1 if beyond the first end, 2 if beyond the second end.
Grid SnapPureSnaps a vector to the nearest grid multiple.
Convert Physics Linear VelocityPureConverts a velocity (cm/s) to another speed unit (m/s, km/h, mph, knots, Mach and more).

OmniNodes › Math › Vector › Intersection

NodeTypeDescription
Is Point Inside BoxPureTrue if a point is inside a box (origin and extent).
Is Line Inside SpherePureTrue if a line (start, direction, length) intersects a sphere.
Line Extent Box IntersectionPureSwept box versus box test with hit location, normal and time.
Sphere Box IntersectionPureTrue if a sphere and a box intersect.
Closest Points Of Line SegmentsPureClosest points between two line segments.
Line to Line IntersectionPureIntersection point of two coplanar infinite lines; false if they do not intersect.
Are Line Segments CrossingPureTrue if two line segments cross and are not parallel.

OmniNodes › Math › Vector2D

NodeTypeDescription
Equal (vector2D)PureTrue if two 2D vectors are equal within a tolerance.
Not Equal (vector2D)PureTrue if two 2D vectors differ by more than a tolerance.
Negate Vector 2DPureReverses the sign of a 2D vector.

OmniNodes › Math › Plane

NodeTypeDescription
Create PlanePurePlane through a point with a normal.
Point Distance to PlanePureSigned distance from a point to a plane (>0 in front, <0 behind).
Is Point on PlanePureTrue if a point lies on a plane within a tolerance.

OmniNodes › Math › Anchor

NodeTypeDescription
Convert Anchor to AnchorPureConverts UMG layout offsets from one anchor setup to another for the current viewport size.

OmniNodes › Vector

NodeTypeDescription
Get Vector Relative LocationPureLocation of a point relative to a parent location and rotation.

OmniNodes › Rotator

NodeTypeDescription
Get Rotator Relative RotationPureRotation of a child rotation relative to a parent rotation.

OmniNodes › Transform

NodeTypeDescription
Transform Vector to Actor Space AnglePureRotation of a world-space vector expressed in an actor's local space. Non-static: the node needs an UOmniNodesFunctionLibrary target, so it is mainly useful from C++.
Transform Vector to Actor SpacePureWorld-space vector expressed in an actor's local space. Non-static: the node needs an UOmniNodesFunctionLibrary target, so it is mainly useful from C++.

OmniNodes › Console

NodeTypeDescription
Get Console Variable FloatPureValue of a float console variable (0 if not found).
Get Console Variable IntPureValue of an integer console variable (0 if not found).

Arrays & random numbers

22 nodes. Categories are shown as they appear in the Blueprint context menu.

OmniNodes › Array

NodeTypeDescription
Sort Int ArrayCallableSorts an integer array ascending in place.
Sort Float ArrayCallableSorts a float array ascending in place.
Max Of Float ArrayPureLargest value of a float array and its index (-1 when empty).
Max Of Int ArrayPureLargest value of an integer array and its index (-1 when empty).
Min Of Float ArrayPureSmallest value of a float array and its index (-1 when empty).
Min Of Int ArrayPureSmallest value of an integer array and its index (-1 when empty).

OmniNodes › Utilities › Array

NodeTypeDescription
Valid IndexPureWildcard: true if an index is valid for any array.
SortCallableWildcard: sorts any array of numbers, bools, names, strings or text; arrays of structs or objects are sorted by a named property.

OmniNodes › Random

NodeTypeDescription
Construct RandCallableSeeds the random engines from a random device (or the current time if no entropy is available).
Seed RandCallableSeeds the random engines with a value.
Seed Rand with TimeCallableSeeds the random engines with the current time.
Seed Rand with EntropyCallableSeeds the random engines from the random device.
Rand Bool BernoulliPureRandom bool with a bias (Bernoulli distribution).
Rand Int Uni DisPureRandom integer 0 or 1.
Rand Int MINMAX Uni DisPureRandom integer in [Min, Max].
Rand Float Uni DisPureRandom float in [0, 1).
Rand Float MINMAX Uni DisPureRandom float in [Min, Max).
Rand Bool Bernoulli MTPureRandom bool with a bias, using a Mersenne Twister.
Rand Int Uni Dis MTPureRandom integer 0 or 1, using a Mersenne Twister.
Rand Int MINMAX Uni Dis MTPureRandom integer in [Min, Max], using a Mersenne Twister.
Rand Float Uni Dis MTPureRandom float in [0, 1), using a Mersenne Twister.
Rand Float MINMAX Uni Dis MTPureRandom float in [Min, Max), using a Mersenne Twister.

Textures, capture & materials

14 nodes. Categories are shown as they appear in the Blueprint context menu.

OmniNodes › Load Texture From File

NodeTypeDescription
Load Texture 2D from DDSFileCallableCreates a texture from a .dds file (DXT1/3/5, BC4/BC5 or uncompressed 32-bit BGRA, 2D only).
Load Texture 2D from FilePureCreates a texture from a JPG, PNG, BMP, ICO, EXR or ICNS file and returns its size.
Load Texture 2D from File PixelsPureLike Load Texture 2D from File, and also returns the pixel colours.
Get Pixel from ArrayPureColour at x/y in a pixel array (index = y * Image Height + x).
Save PixelsCallableSaves a pixel array of a given width and height as PNG or BMP.
Get Pixel from T2DCallableReads one pixel of a texture whose compression is VectorDisplacementmap (switches the texture to non-sRGB).
Get Pixels Array from T2DCallableReads all pixels of a texture whose compression is VectorDisplacementmap (switches the texture to non-sRGB).
Load Texture 2D from File by ExtensionCallableCreates a texture from an image file, choosing the decoder from the file extension.

OmniNodes › SceneCapture

NodeTypeDescription
Capture Component 2D ProjectPureProjects a world location to pixel coordinates in a scene capture component's render target.
Capture 2D ProjectPureProjects a world location to pixel coordinates in a Scene Capture 2D actor's render target.
Capture Component 2D Save ImageCallableSaves a scene capture component's B8G8R8A8 render target to an image file; pixels matching the clear colour become transparent.
Capture 2D Save ImageCallableSaves a Scene Capture 2D actor's B8G8R8A8 render target to an image file; pixels matching the clear colour become transparent.

OmniNodes › Material

NodeTypeDescription
Does Material Have ParameterPureTrue if a material (or the parent of a material instance) has a scalar, vector or texture parameter with the name.

OmniNodes › Post Process

NodeTypeDescription
Set Bloom IntensityCallableOverrides the bloom intensity of a post process volume.

Sound & subtitles

7 nodes. Categories are shown as they appear in the Blueprint context menu.

OmniNodes › Sound

NodeTypeDescription
Sound Class Set VolumeCallableSets the volume of a Sound Class immediately.
Sound Class Get VolumePureCurrent volume of a Sound Class (-1 if none supplied).
Play Sound Attached from FileCallableLoads an .ogg file from disk and plays it attached to a component (fire and forget).
Play Sound at Location from FileCallableLoads an .ogg file from disk and plays it at a world location (fire and forget).
Get Sound Wave from FileCallableCreates a sound wave from an .ogg (Ogg Vorbis) file on disk.

OmniNodes › Subtitles

NodeTypeDescription
Play Speech SoundCallableTarget: AOmniNodesPlayerController. Plays a 2D sound and forwards its subtitles to On Subtitles Queued; returns the audio component.
On Subtitles QueuedEventTarget: AOmniNodesPlayerController. Implement to receive the subtitle cues and cue duration of a sound played with Play Speech Sound.

Input & key rebinding

13 nodes. Categories are shown as they appear in the Blueprint context menu.

OmniNodes › Input

NodeTypeDescription
Simulate Mouse WheelCallableSends a simulated mouse-wheel delta to Slate.
Simulate Key PressCallableSimulates a key or mouse-button event on a player controller and in Slate.
Viewport Set Mouse PositionCallableMoves the mouse cursor to a position in the player's viewport.
Flush Pressed KeysCallableClears the pressed-key state of a player controller.

OmniNodes › Key Rebinding

NodeTypeDescription
Get All Axis and Action Mappings for KeyPureAll action and axis mappings (Input Settings) that use a key.
Get Input Axis from Key EventPureBuilds an FOmniNodesInputAxis from a key event (scale 1).
Get All Axis Key BindingsPureAll axis mappings from the Input Settings.
Remove Axis Key BindCallableRemoves every axis mapping that uses the key, saves the input config and rebuilds player key maps.
Re Bind Axis KeyCallableReplaces the key/scale of an existing axis mapping and saves it. Returns false if the original mapping was not found.
Get Input Action from Key EventPureBuilds an FOmniNodesInput (key plus Shift/Ctrl/Alt/Cmd) from a key event.
Get All Action Key BindingsPureAll action mappings from the Input Settings.
Re Bind Action KeyCallableReplaces the key and modifiers of an existing action mapping and saves it. Returns false if not found.
Remove Action Key BindCallableRemoves every action mapping that uses the key, saves the input config and rebuilds player key maps.

UMG, viewport & graphics

26 nodes. Categories are shown as they appear in the Blueprint context menu.

OmniNodes › UMG

NodeTypeDescription
Get Head Mounted Display Device TypePureName of the connected XR system, or None.
Get All Widgets Of ClassCallableAll user widgets of a class in the world, optionally only those added to the viewport.
Remove All Widgets Of ClassCallableRemoves all user widgets of a class from the viewport.
Is Widget Of Class in ViewportPureTrue if a user widget of the class is in the viewport.
Is Key Event for KeyPureTests whether a key event is for a key and returns the Ctrl/Shift/Alt/Cmd states.
Get First Widget Of ClassCallableFirst user widget of a class, optionally only top-level ones.
Widget Is Child OfCallableTrue if a widget is a descendant of another widget.
Widget Get Parent Of ClassCallableNearest parent user widget of a class.
Widget Get Children Of ClassCallableChild user widgets of a class, immediate or all descendants.
Get Widget from NameCallableWidget inside a user widget by name.

OmniNodes › Widget › Panel

NodeTypeDescription
Insert Child AtCallableInserts a widget into a panel at an index (the child's Construct event fires again).

OmniNodes › Game › Viewport

NodeTypeDescription
Get Viewport PositionCallableConverts a screen position (for example from a pointer event) to the viewport's local coordinates.
Get Viewport Position Hit Result by ChannelCallableTrace under a viewport position on a collision channel; returns the hit.
Viewport Position DeprojectCallableWorld origin and direction under a viewport position.
Horizontal FOVPureHorizontal field of view from a vertical field of view and aspect ratio.
Vertical FOVPureVertical field of view from a horizontal field of view and aspect ratio.

OmniNodes › Game Window

NodeTypeDescription
Viewport Get Mouse PositionPureMouse cursor position in the player's viewport.
Viewport Get Center Of ViewportPureCentre coordinates of the player's viewport.
Client Window Game Window Is Fore Ground in OSPureTrue if the game window is the foreground window of the operating system.
Flash Game on Task BarCallableFlashes the game window on the Windows task bar (continuously or a number of times). No effect on other platforms.
Rendering Freeze Game RenderingCallableStops game rendering (game logic keeps running).
Rendering Un Freeze Game RenderingCallableResumes game rendering after Freeze Game Rendering.

OmniNodes › Graphics Settings

NodeTypeDescription
Graphics Settings Set Frame Rate CapCallableEnables frame-rate smoothing with a maximum frame rate.
Graphics Settings Set Frame Rate to be UnboundCallableDisables frame-rate smoothing (frame rate limited only by hardware).
Graphics Settings Full Screen GetPureCurrent full-screen mode (r.FullScreenMode).
Graphics Settings Full Screen SetCallableSets the full-screen mode (r.FullScreenMode).

Actors, components & characters

49 nodes. Categories are shown as they appear in the Blueprint context menu.

OmniNodes › Actor

NodeTypeDescription
Get Time in PlayPureSeconds since the actor was created (-1 for no actor).
Spawn Actor Into LevelCallableSpawns an actor of a class into a specific loaded streaming level (by package name).
Get Static Mesh Vertex LocationsPureWorld-space vertex positions of a static mesh component's complex collision mesh.
Add to Actor RotationCallableAdds a rotation to an actor in its local space.
Clone Static Mesh ActorCallableSpawns a copy of a Static Mesh Actor (mesh, materials, physics) with optional location and rotation offsets.
Actor Teleport to ActorPureMoves an actor to another actor's location and rotation.
Visibility Get Rendered ActorsCallableActors rendered within the last N seconds.
Visibility Get Not Rendered ActorsCallableActors not rendered within the last N seconds.
Data Get Character Bone LocationsCallableWorld locations of every bone of a character's mesh.
Get Creation TimePureWorld time at which the actor was created.
Get Time AlivePureSeconds the actor has existed.
PrestreamTextures (Actor)CallableForces all mips of the actor's mesh textures to stream in for a number of seconds.
Get Actor Relative LocationPureLocation of a child actor relative to a parent actor's transform.
Get Actor Relative RotationPureRotation of a child actor relative to a parent actor.

OmniNodes › Actor › Get Immediate Attached Actors

NodeTypeDescription
Actor Get Attached ActorsPureActors directly attached to a parent actor.

OmniNodes › Components

NodeTypeDescription
PrestreamTextures (Component)CallableForces all mips of a mesh component's textures to stream in (0 seconds = 30 days).
Get Component Relative LocationPureLocation of a child component relative to a parent component's transform.
Get Component Relative RotationPureRotation of a child component relative to a parent component.

OmniNodes › Components › SkinnedMesh

NodeTypeDescription
Get All Bone Names Below BoneCallableNames of all bones below a bone in a skeletal mesh component; returns the count.

OmniNodes › Character

NodeTypeDescription
Character Movement Set Max Move SpeedCallableSets the character movement component's maximum walk speed.
Accessor Get Player ControllerPurePlayer controller possessing a character.
Accessor Get Character Skeletal MeshCallableMesh component of a character.

OmniNodes › Aim Offset

NodeTypeDescription
Animation Get Aim OffsetsCallableAim-offset pitch and yaw from the character's control rotation, in actor space (for a -90..90 blend space).
Animation Get Aim Offsets from RotationCallableAim-offset pitch and yaw for a given rotation, in the character's actor space.

OmniNodes › 3d Lines

NodeTypeDescription
Draw Thick 3DLine from Character SocketCallableDraws a thick debug line from a socket of the character's mesh to a point.
Draw Thick 3DLine from SocketCallableDraws a thick debug line from a skeletal mesh socket to a point.
Draw Thick 3DLine Between ActorsCallableDraws a thick debug line between two actors.

OmniNodes › Traces

NodeTypeDescription
Trace Data Get Trace Data from Character SocketCallableStart/end points for a trace from a character mesh socket along a rotation and length (does not trace); optional debug draw.
Trace Data Get Trace Data from Skeletal Mesh SocketCallableStart/end points for a trace from a skeletal mesh socket along a rotation and length (does not trace); optional debug draw.
Traces Character Mesh Trace Closest BoneCallableLine trace that, on hitting a character, traces its mesh and returns the impact data and the closest bone.
Traces Character Mesh Trace Closest SocketCallableLine trace that, on hitting a character, traces its mesh and returns the impact data and the closest socket.

OmniNodes › Instanced Static Mesh

NodeTypeDescription
ISM Get All ISMActorsPureAll AOmniNodesISM actors in the world.
ISM Convert to ISMActorsCallableConverts all actors of a class into one instanced static mesh actor per static mesh asset, optionally destroying the originals.

OmniNodes › Physics

NodeTypeDescription
Physics Update Angular DampingCallableChanges the angular damping of a simulating component's body at runtime.
Get Distance to CollisionPureDistance from a point to a component's collision and the closest point on it (-1 if the component has no collision).
Get Distance Between Component SurfacesPureApproximate distance between the collision surfaces of two components and the two surface points.
Physics Enter Rag DollCallablePuts a character's mesh into ragdoll (requires a physics asset).
Physics Leave Rag DollCallableEnds ragdoll: moves the capsule to the mesh, re-attaches the mesh with the initial relative transform and optionally sets Falling movement.
Physics Is Rag DollCallableTrue if any body of the character's mesh is simulating physics.
Physics Get Locationof Rag DollCallableWorld location of the root bone of a ragdolling character.
Physics Initialize Rag DollCallableStores the mesh's initial relative location and rotation for later use with Leave Rag Doll.
Physics Update Character Camera to Ragdoll LocationCallableInterpolates the character (and its camera) toward the ragdoll's location with a height offset.
Get Velocity at PointCallableWorld velocity of a point on a physics-simulated component or bone, optionally drawing debug info.
Set Center Of Mass OffsetCallableOffsets the physics-calculated centre of mass of a component or bone.

OmniNodes › AI

NodeTypeDescription
AI Move to with FilterCallableMoves a pawn's AI controller to a location using an optional navigation query filter class (per-move filtering of custom nav areas).
Get Closest Actor Of Class in Radius Of LocationPureClosest actor of a class within a radius of a location. Is Valid is false when none is found.
Get Closest Actor Of Class in Radius Of ActorPureClosest actor of a class within a radius of another actor (the centre actor itself is ignored).

OmniNodes › Team

NodeTypeDescription
Get Generic Team IdPureTeam id of an actor implementing the generic team agent interface (255 = no team).
Set Generic Team IdCallableSets the team id of an actor implementing the generic team agent interface.

Level streaming & networking

11 nodes. Categories are shown as they appear in the Blueprint context menu.

OmniNodes › LevelStreaming

NodeTypeDescription
Get Level Instance InfoCallablePackage names, transform, load/visible flags and LOD index of a dynamic streaming level.
Add to Streaming LevelsCallableAdds a streaming level from a level instance info and flushes level streaming.
Remove from Streaming LevelsCallableUnloads and removes a streaming level by package name.
Hide Streaming LevelCallableHides a dynamic streaming level.
Unload Streaming LevelCallableUnloads a dynamic streaming level.

OmniNodes › Networking

NodeTypeDescription
Get Player Unique Net IDPurePlayer id from the first player controller's player state (-1 if unavailable).
Player State Get Player IDCallablePlayer id from a player controller's player state.
Is Stand AlonePureTrue if the world runs as a standalone (non-networked) game.

OmniNodes › Controller

NodeTypeDescription
Player Controller Get Controller IDCallableController id of a player controller's local player.

OmniNodes › Player Controller

NodeTypeDescription
Get My IP Send RequestCallableTarget: AOmniNodesPlayerController. Requests this machine's public IP address from the public ipify service; false if the request could not start.
Get My IP ~ Data ReceivedEventTarget: AOmniNodesPlayerController. Implement to receive the public IP address (or an error text).

System, process & GPU

42 nodes. Categories are shown as they appear in the Blueprint context menu.

OmniNodes › System

NodeTypeDescription
Create ProcCallableLaunches an external program with arguments, detach/hidden options, priority and working directory. Returns the process id; pass a Process Pipe to capture its output.
Get Process Application NamePureExecutable name of a process id (for example one returned by Create Proc).
Is Process RunningPureTrue if the process id is still running.
Get Unix Time StampPureConverts a UTC date/time to a Unix timestamp (seconds since 1970-01-01 UTC, int64).
Get UTCFrom Unix Time StampPureConverts a Unix timestamp (int64 seconds) to a UTC date/time.
Set Component Tick RateCallableSets a component's tick interval in seconds at runtime.
Get Command LinePureReturns the command line the engine was started with.
Server TravelCallableServer travel to a map (asynchronous level change), optionally skipping player notifications.
Get Player StartCallableFinds a Player Start actor by its object name.
Get Names Of Loaded LevelsPurePackage names of all streaming levels that are currently loaded and visible.
Open URL in Web BrowserCallableOpens a URL in the operating system's default web browser.
Operating System Get Current PlatformPureBooleans telling which platform the game is running on (Windows, Mac, Linux, iOS, Android and others).
Real World Time Get Current OSTimePureCurrent local date/time as a string (with milliseconds) plus its individual components.
Real World Time Get Time Passed Since Previous TimePureMilliseconds, seconds, minutes and hours elapsed since a time string returned by Get Current OS Time.
Real World Time Get Difference Between TimesPureDifference between two time strings returned by Get Current OS Time.
Seconds to Hours Minutes SecondsPureFormats seconds in the engine timespan format with a leading sign (+00:05:30); Trim Zeroes removes zero hours (+05:30).
Options Menu Get Display Adapter Screen ResolutionsPureSupported screen resolutions (widths, heights, refresh rates in parallel arrays), optionally distinct per refresh rate.
World Type in Editor WorldPureTrue when the world context is an editor world.
World Type in PIEWorldPureTrue when the world context is a Play In Editor world.
World Type in Game Instance WorldPureTrue when the world context is a standalone game world.
Viewport Enable World RenderingCallableTurns 3D world rendering on or off for a player's viewport; UMG and HUD keep drawing (useful behind loading screens).

OmniNodes › Process

NodeTypeDescription
Create PipeCallableTarget: UOmniNodesProcessPipe. Creates the read/write pipe pair (does nothing if it already exists).
Close PipeCallableTarget: UOmniNodesProcessPipe. Closes the pipes. Also called automatically when the object is destroyed.
Read from PipeCallableTarget: UOmniNodesProcessPipe. Reads the output (STDOUT/STDERR) written so far by the process. Returns false if the pipe was not created.
Pipe Is ValidPureTarget: UOmniNodesProcessPipe. True while both pipe handles exist.

OmniNodes › GPU

NodeTypeDescription
Get GPUBrandPurePrimary GPU brand string reported by the platform.
Get RHIAdapter NamePureName of the graphics adapter used by the renderer.
Get GPUInfoPureDevice description, provider, driver version and driver date of the active graphics adapter.
Get User Display Adapter BrandPureWhether the active GPU is AMD, NVIDIA or Intel; for other vendors returns Is Unknown and the vendor id.

OmniNodes › Misc

NodeTypeDescription
Create Texture Render Target 2DCallableCreates a new render target texture (size, clear colour, gamma) for runtime scene captures.
Load Object from Asset PathCallableLoads an asset from a reference path (the format of right-click > Copy Reference). Store the result to keep it alive.
Get Object PathPureReference path of an object, in the format accepted by Load Object from Asset Path.
Loops Reset BPRunaway CounterCallableResets the Blueprint infinite-loop (runaway) counter. Use with great care in intentionally long loops.
Project World to Screen PositionCallableProjects a world location to screen coordinates of the first local player's viewport.
Create Primitive ComponentCallableCreates and registers a primitive component of the given class in the world at a location and rotation.
Draw CircleCallableDraws a debug circle from line segments around a centre, in the plane defined by the Y and Z axes.
Get Box Containing World PointsPureCentre and extent of the box that encloses all supplied points.
Selection Selection BoxCallableMarquee selection: actors (optionally filtered by class) whose screen position lies inside the box between two screen points.
Calcs Closest Point to Source PointCallableClosest point in an array to a source point and its distance (-1 when the array is empty).
Lens Flare Get Lens Flare OffsetsCallablePitch, yaw and roll difference between the player's view rotation and the direction to a light source.
Distance to Surface Distace Of Point to Mesh SurfaceCallableDistance from a point to the collision surface of a Static Mesh Actor and the closest surface point (-1 on error).
Mobility Set Scene Comp MobilityCallableChanges the mobility (Static / Stationary / Movable) of a scene component.

TMap component

28 nodes. Categories are shown as they appear in the Blueprint context menu.

OmniNodes › TMap Component › Add

NodeTypeDescription
String Actor Add PairCallableTarget: UOmniNodesTMapComponent. Adds or replaces the value for a key in the String → Actor table.
String String Add PairCallableTarget: UOmniNodesTMapComponent. Adds or replaces the value for a key in the String → String table.
String Int Add PairCallableTarget: UOmniNodesTMapComponent. Adds or replaces the value for a key in the String → Integer table.
String Vector Add PairCallableTarget: UOmniNodesTMapComponent. Adds or replaces the value for a key in the String → Vector table.
String Rotator Add PairCallableTarget: UOmniNodesTMapComponent. Adds or replaces the value for a key in the String → Rotator table.
Int Vector Add PairCallableTarget: UOmniNodesTMapComponent. Adds or replaces the value for a key in the Integer → Vector table.
Int Float Add PairCallableTarget: UOmniNodesTMapComponent. Adds or replaces the value for a key in the Integer → Float table.

OmniNodes › TMap Component › Get

NodeTypeDescription
String Actor GetPureTarget: UOmniNodesTMapComponent. Value for a key in the String → Actor table; Is Valid is false if the key is missing.
String String GetPureTarget: UOmniNodesTMapComponent. Value for a key in the String → String table; Is Valid is false if the key is missing.
String Int GetPureTarget: UOmniNodesTMapComponent. Value for a key in the String → Integer table; Is Valid is false if the key is missing.
String Vector GetPureTarget: UOmniNodesTMapComponent. Value for a key in the String → Vector table; Is Valid is false if the key is missing.
String Rotator GetPureTarget: UOmniNodesTMapComponent. Value for a key in the String → Rotator table; Is Valid is false if the key is missing.
Int Vector GetPureTarget: UOmniNodesTMapComponent. Value for a key in the Integer → Vector table; Is Valid is false if the key is missing.
Int Float GetPureTarget: UOmniNodesTMapComponent. Value for a key in the Integer → Float table; Is Valid is false if the key is missing.

OmniNodes › TMap Component › Remove

NodeTypeDescription
String Actor RemoveCallableTarget: UOmniNodesTMapComponent. Removes a key from the String → Actor table.
String String RemoveCallableTarget: UOmniNodesTMapComponent. Removes a key from the String → String table.
String Int RemoveCallableTarget: UOmniNodesTMapComponent. Removes a key from the String → Integer table.
String Vector RemoveCallableTarget: UOmniNodesTMapComponent. Removes a key from the String → Vector table.
String Rotator RemoveCallableTarget: UOmniNodesTMapComponent. Removes a key from the String → Rotator table.
Int Vector RemoveCallableTarget: UOmniNodesTMapComponent. Removes a key from the Integer → Vector table.
Int Float RemoveCallableTarget: UOmniNodesTMapComponent. Removes a key from the Integer → Float table.

OmniNodes › TMap Component › Clear

NodeTypeDescription
String Actor ClearCallableTarget: UOmniNodesTMapComponent. Empties the String → Actor table.
String String ClearCallableTarget: UOmniNodesTMapComponent. Empties the String → String table.
String Int ClearCallableTarget: UOmniNodesTMapComponent. Empties the String → Integer table.
String Vector ClearCallableTarget: UOmniNodesTMapComponent. Empties the String → Vector table.
String Rotator ClearCallableTarget: UOmniNodesTMapComponent. Empties the String → Rotator table.
Int Vector ClearCallableTarget: UOmniNodesTMapComponent. Empties the Integer → Vector table.
Int Float ClearCallableTarget: UOmniNodesTMapComponent. Empties the Integer → Float table.

Troubleshooting

SymptomCause and fix
An OmniNodes node does not appear in the context menu.Make sure the plugin is enabled (Edit > Plugins > Blueprints). Nodes of UOmniNodesProcessPipe, AOmniNodesPlayerController and UOmniNodesTMapComponent only appear when you drag from a reference of that class or turn off Context Sensitive.
Get Pixel from T2D / Get Pixels Array from T2D return false.The texture's Compression Settings must be VectorDisplacementmap (RGBA8); a Message Log entry is written in PIE when it is not. The nodes also turn sRGB off on the texture.
The key rebinding nodes return empty arrays.They read and write the legacy action/axis mappings of the Input Settings. Projects that only use Enhanced Input mapping contexts have no legacy mappings to list or rebind.
Get Static Mesh Vertex Locations returns false or no positions.The node reads the complex-collision triangle mesh of the component's body setup. The static mesh needs complex (per-polygon) collision data.
Get Sound Wave from File returns None.Only Ogg Vorbis (.ogg) files are decoded. Check the absolute path and the file format; WAV and MP3 files are not supported by this node.
Flash Game on Task Bar has no effect.It is implemented for Windows only and does nothing on Mac and Linux. In Play In Editor the editor window is flashed, which is less visible than in a standalone game.
Get My IP ~ Data Received never fires.The event belongs to AOmniNodesPlayerController: set it (or a Blueprint child) as the Player Controller Class of the Game Mode, call Get My IP Send Request on it and make sure the machine has internet access.
An object returned by Load Object from Asset Path disappears.Store the returned object in a variable; otherwise it can be garbage collected. Use the exact path format produced by right-click > Copy Reference.

Credits

© 2026 Alpha XP — alphaxp.net · Support: support@alphaxp.net. Built and verified for Unreal Engine 4.27 and 5.8.