Skip to main content

Writing Custom Components

Infinity Creator allows you to extend its functionality by creating custom components using C++ or C#. These components can integrate directly into the Node Graph.

note

Using a language other than C++ requires the relevant runtime to be loaded.

warning

Additional runtime functionality may be missing or limited in the Infinity Creator during the Alpha.

Step 1: Creating Your Custom Procedural Component

Creating a custom Procedural Component can be done from the Infinity Creator.

  1. In the Components Menu, select "Create Procedural Component..."
  2. Fill out the required fields:
  • Name: The display name of the component.
  • Group: The organizational group of the component (e.g. Org.Group.Subgroup).
  • Class Name: A valid classname of the component. Must not have spaces or hyphens, and cannot start with a number or special symbol.
  • Runtime Language: The runtime language of the component.
  • Output Path: The filepath where the development files of the component will be generated.
  1. Click "Create". The development files for the procedural component will be generated at the Output Path.

For a comprehensive tutorial on creating custom C++ Procedural Components, please visit the Infinity SDK documentation.

tip

Alternatively, Procedural Component development files can be generated using the infinity_tool CLI executable that is shipped with the Infinity SDK.

warning

Group names starting with "Infinity." are reserved for use by Infinity Generation Inc.

Step 2: Importing a Custom Procedural Component

Procedural components can be easily imported to the Infinity Creator. To import a component from the filesystem:

  1. In the Components Menu, select "Component Library..."
  2. Click the "Import Component" button at the top of the component list.
  3. Select the folder containing the installed component files. (This folder typically contains subfolders named bin/, lib/, share/. See the Infinity SDK documentation for more details).
  4. The component will be imported into the Project, and will be available in the Toolbox to drag into the Node Graph.