External Execution Node

The External Execution node is used to run external programs outside of ArtEngine, and to load the results of these programs onto the correct pins on the External Execution node. Pins are associated with the output of the program by matching the pin name with the output’s filename. The output file must be a .png. This node does not support materials currently.

The Command String is used to run the correct external program. All paths in the provided string must be absolute and it is not guaranteed that relative paths will work. The Command String is used to create Tokens which are modifiable in their newly created property underneath.

These tokens can be written into and will be replaced in the command line string at run time.

All tokens are case insensitive.

Reserved Tokens

Some tokens will not create an associated property. These are any matching pin names and $dir
All input pin names on the External Execution node will not create an associated token and are replaced at execution with the associated data on that pin. 

Output pins are treated the same way. However, output pins are re-nameable so the tokens will only be reserved if a pin with the same name currently exists on the node. 

$Dir is replaced at runtime with the Users Temp/.artomatix folder to any program that requires one. Please note that a command line parameter such a $dir/OutputName.png will not work as $dir is replaced by the temp file path surrounded by quotes

The External Execution node has 0 - 10 input and output pins that can be changed using the Input Connections and Output Connections sliders. 

All output pins are re-nameable. If an output pin needs to be renamed, please edit the appropriate output pin name at the bottom of the properties panel. This will update the appropriate pin in real time.

Usage

  1. Create an External Execution node on the node graph. This can be found in the Custom category in the Node Library window or using the Quick add menu by typing external execution.

  2. Create a bitmap input and connect this to the External Execution node. This can be done by dragging an external bitmap onto the Node Graph or by loading a bitmap into the Asset Library, then dragging this onto the Node Graph. 

  3. (Optional) If you require more bitmaps to be connected to the External Execution Node, change the Input Connections slider to the appropriate amount and make the desired connections to the newly created pins.

  4. Modify the properties in the External Execution node, providing the bitmaps using the appropriate Tokens ($Input1, $Input2 etc) in the Command String if necessary

Execute the node. If the Display Command Terminal is enabled, a terminal will appear with the program’s output being written into this. If the Pause On Completion is enabled, the terminal will wait for user input before closing.

 

Node Reference

Node category

Custom

Node execution style

Manual

Ports

Input Name

Input Type

Description

Input 1-10

Bitmap

The inputs are copied to a temporary folder that the external program has access to during execution



Common settings

These settings appear regardless of the input type of this node.

Output Type

Description

Bitmap

This node outputs all the corresponding outputs of a program with the pin names of the node

Properties

Property/Setting

Description

Command String

Allows the user to provide a command line string to be executed by the External Execution node. Allows the creation of Tokens detailed previously

Input/Output Connections

Varies the amount of input or output pins the node has.

Max Execution time limit

Used to define the amount of time, in seconds, that the program should be allowed to run for.



Display Command Terminal

Used to specify whether a terminal should appear with the output of the program appearing in real time.

Pause On Completion

Whether the terminal should wait for key entry before closing.

Output Pin Renaming(Unnamed)

A list of text boxes representing the current output pins on the node. This allows renaming of output pins easily.