search
Start typing to search...

Pin Data Types

Author:

Compound

Video

A rendered video frame or image.

A frame can be of any size up to 8K. Video source modules typically allow specifying arbitrary output sizes. If unspecified, the default system Frame Size is used, which can be set in Preferences /Rendering.

Image and Video Player modules, of course, always output a frame size corresponding to the source file.

Video frames can have various pixel formats. When the frame is coming from an image file, its format corresponds to the file format. Other video source modules usually enable choosing between Low and High Dynamics Range (HDR) output, which are 8 bits per channel RGBA (LDR) and 16/32 bits per channel floating point RGBA formats (HDR).

HDR formats are 16 bits per channel by default. That can be changed in Properties / Rendering.

A Video also can be a special texture: texture array, cube map, or volume texture that can be fed into specific shaders.

When a video postprocessing module combines two or more inputs into a single output (blending, crossfading, masking, etc.) it usually sets the output size to the largest frame size and the widest pixel format of the inputs.

A video frame can be combined with a depth map, usually when outputted from a Camera module. Specific modules use depth map information for various purposes. Generally, all post-processing modules that don't distort or resize the image pass through the depth map without modification.

Audio

Audio data is represented by a per-frame set of audio samples.

Audio can have an arbitrary number of channels. Audio input modules usually output two stereo channels, but for e.g. a video input from an SDI gives 16 channels.

Audio postprocessing modules usually deal with a single channel only, but a series of modules deal with splitting/merging/downmixing channels.

The audio sampling frequency is constant at 48kHz according to the frequency mostly used in video systems.

Scalar

A 32-bit floating-point numeric value.

Double Precision Scalar

A 64-bit floating-point numeric value.

Vector

An arbitrary number of 32-bit floating-point numeric values.

It either can represent a scalar (1D vector), a 2D, 3D, 4D, etc. vector, or an arbitrary length data array.

In the case it is connected to a scalar or integer pin, only the first element is used. In the opposite direction, when a scalar or integer value is connected to a vector pin, it is treated as a one-element vector.

Integer

A 32-bit integer numeric value.

Logical

An ON/OFF switch value.

In the case it is connected to a numeric pin, it appears as a 0 or 1 value. In the opposite direction, when a numeric value is connected to a logical pin, 0 is treated as OFF and all other values as ON.

Trigger

A Trigger is a signal pulse output by various modules to indicate a specific event (e.g., reaching the end of a process). It can be used to start or stop animations or timing functions. Essentially, it is a logical value where the OFF-to-ON transition marks the signaling moment. The ON state lasts for a single frame, after which the value immediately returns to OFF.

Trigger data cannot remain ON continuously, as it is designed solely to signal a momentary event. However, if you need the trigger to persist for multiple consecutive frames, you can use the Continuous Trigger module before connecting it to the target module.

Color

A 32 bits per channel floating point RGBA value.

The normal interval for the channels is 0 - 1. Values above 1 are used for HDR imaging.

In the case it is connected to a vector pin, the value is converted into a four-element vector. In the opposite direction, when a vector value is connected to a color pin, the first four elements are used. If the vector is three-element only, the alpha is set to 1. If the vector is two-element only, blue becomes 0. When a scalar value is connected, it becomes a gray level.

When a color value is edited in the Pin Values editor, it appears as two components: a usual 8 bits (0-255) per channel RGBA value (the LDR part), and a 32-bit floating-point HDR factor acting as an intensity multiplier.

Text

A Unicode text string.

Transformation

Represents a spatial position-rotation-scaling that can be applied to various scene objects.

In special cases, it can represent homogeneous space transformations described by a 4x4 matrix, for e.g. a camera’s perspective transformation.

Collection

Stores an arbitrary number of named data elements. Each data element can be a scalar, a double, an integer, a logical, or a text, or it can be an entire subcollection thus creating a hierarchical data structure. Elements can be accessed by their name or a period-separated path in the case of a hierarchy.

Importing an XML or a JSON file/text results in a Collection.

Shader

Shader format for Aximmetry.
Shaders in Aximmetry can be opened and edited in the Flow Editor, just like compounds. However, aside from that, shaders have little in common with compounds, as they use specific shader data types and modules.
In addition to serving as materials for 3D rendering, shaders can also be used for post-processing video when using the Custom Processor module.

Reference Connections

These pin/connection types do not represent any kind of data flow, instead, designate specific relationships between modules.

Sequence Track Reference

Connects a Sequencer to its various track modules thus creating tracks in the Sequence Editor.

Video Co-player Reference

Video Player module can cooperate with special co-player modules that extract extra per-frame information from special video files, for e.g. depth map.

Scene Object Child Reference

Designates a parent-child relationship between two scene object modules. A child’s transformation is relative to its parent’s transformation.

Scene Object Binding Reference

Ties a scene object’s transformation of part of its transformation to another scene object. The target object’s Binding Type value selects the nature of the binding. The most common application is a look-at relationship between a Camera and an object.

Affecting Light Reference

Designates which light sources have an effect on a scene node and all of its children.

Light Volume Reference

Connects a Light Volume module to the light sources for which the volumetric effect has to be rendered.

Graph Node Route Reference

Connects Graph Node modules to each other representing an edge of the graph.

Transmitter Reference

Transmitter modules can be connected to a Scene Node designating that only that node and its children can see that specific tunnel.

Paint Object Child Reference

Designates a parent-child relationship between two paint object modules. A child’s transformation is relative to its parent’s transformation.

Path Element Reference

Used to chain the graphic elements of a Paint Path module.

Touch Reference

Connects a Touch Receiver to the client modules that use its touch inputs.

Recorder Reference

Connects an Input Recorder to the module from which data is to be recorded.

Data Stream Reference

Connects a Data Stream to the module from which data is to be recorded.

UDP Reply Reference

Connects a UDP Receiver module with a UDP Sender module, so that the UDP Sender will send packets to the address from which the UDP Receiver received data. This is similar to how a UDP Client works in some programming languages. For more details, see: UDP Reply

Shader

Texture

When the shader is placed into a compound, the shader's module does not display differentiated pin types for   Texture, Texture Array, Cube Texture, and Volume Texture. In the compound, they all appear as Video data type pins.

Inside the shader itself, these types do have distinct data types and must be used accordingly. It is important to handle each type according to its specific requirements within the shader.

Texture Array

When the shader is placed into a compound, the shader's module does not display differentiated pin types for   Texture, Texture Array, Cube Texture, and Volume Texture. In the compound, they all appear as Video data type pins.

Inside the shader itself, these types do have distinct data types and must be used accordingly. It is important to handle each type according to its specific requirements within the shader.

Cube Texture

When the shader is placed into a compound, the shader's module does not display differentiated pin types for   Texture, Texture Array, Cube Texture, and Volume Texture. In the compound, they all appear as Video data type pins.

Inside the shader itself, these types do have distinct data types and must be used accordingly. It is important to handle each type according to its specific requirements within the shader.

Volume Texture

When the shader is placed into a compound, the shader's module does not display differentiated pin types for   Texture, Texture Array, Cube Texture, and Volume Texture. In the compound, they all appear as Video data type pins.

Inside the shader itself, these types do have distinct data types and must be used accordingly. It is important to handle each type according to its specific requirements within the shader.

Scalar

A 32-bit floating-point numeric value.

Vector

A four-element XYZW vector consisting of 32-bit floating-point numeric values.

It either can represent a scalar (all components are equal), or a 4D vector. Certain modules only use the 2D or 3D slice of the vector.

In the case it is connected to a scalar or integer pin, only the first element is used. In the opposite direction, when a scalar or integer value is connected to a vector pin, it is treated as an all-equal vector.

Integer

A 32-bit signed integer numeric value.

Unsigned Integer

A 32-bit unsigned integer numeric value.

Logical

An ON/OFF switch value.

Color

A 32 bits per channel floating point RGB value. (Alpha is not included, it is handled separately in the shaders.)

The normal interval for the channels is 0 - 1. Values above 1 are used for HDR imaging.

When a color value is edited in the Pin Values editor, it appears as two components: a usual 8 bits (0-255) per channel RGBA value (the LDR part), and a 32-bit floating-point HDR factor acting as an intensity multiplier.

Transformation

Represents a spatial position-rotation-scaling described by a 4x3 matrix. It can be used to transform spatial position or direction vectors.

Homogeneous Space Transformation

Represents a homogeneous space transformation described by a 4x4 matrix, for e.g. a camera’s perspective transformation.

Array

An array that can contain up to 64 indexable float values. The data type can be accessed by the Array Scalar, Array Vector, and Array Color modules. Array inputs are exposed as Vector pins in the scene compound.

Sampler State

Assigns a sampler state definition to a sampler module.

Rasterizer State

Assigns a rasterizer state definition to a pixel shader output module.

Use it carefully, because it overrides the system’s automatic rasterizer state selection based on other shader parameters.

Depth Stencil State

Assigns a depth-stencil state definition to a pixel shader output module.

Use it carefully, because it overrides the system’s automatic rasterizer state selection based on other shader parameters.

Blend State

Assigns a blend state definition to a pixel shader output module.

Use it carefully, because it overrides the system’s automatic rasterizer state selection based on other shader parameters.

Article Content

Loading
Close
Loading spinner icon
1/10