Moving Imported Compositions into Project Folders | |||
Chapter 3, Importing Media |
Channel Groups (Import Preferences)
Specifying the Destination Format
Using the Gate UI to Create Footage
Toxik supports OpenEXR 16-bit half float, 32-bit float and integer. This improves import workflow, footage versus composition distinction, and data extracted from the media.
Pixel Type | Depth | Usage |
Half | 16-bit floating-point number | For regular image data |
Float | 32-bit IEEE-754 floating-point numbers | Used where the range or precision of 16-bit number is not sufficient, for example, depth channel (Z) |
UINT | 32-bit unsigned integers | For discrete pre-pixel data such as object identifiers |
OpenEXR images can contain an arbitrary number and a combination of image channels. For example:
Red, green, blue, alpha
Luminance and sub-sampled chroma channels (Y/C)
Depth (Z), surface normal directions (XYZ), or motion vectors (XY)
Once you have imported your EXR media, you can use the Options tab to assign and import the channels. A channel view shows the channels that are present in the files and channel groups are defined in the project preferences.
Note: These tools are also available when using the Image Import tool (Options tab).
For both Channel Views and Channel Groups, the None option always exists. Although it's not actually a group, it does allow to assign any input channel to any output channel. The None option is also a fallback group when the file does not contain a channel that fits into any existing group definition. The None option is the default group selected, and the initial assignment always attempts to match a channel with itself, then assigns it arbitrarily by using a alphanumeric order.
The available channel views are listed. You can select a channel view to be displayed in the mini-player. Or if you are using the Import Image tool, the channel view is displayed on the tool node.
Multi-view OpenEXR files use the convention that channel names are composed of layer names separated by periods, with the final channel name at the end. The view name must be the ultimate layer name, that is, the penultimate period-delimited component in each channel name. In other words, the view name is followed by a period and a final channel name in the format layer.view.channel or view.channel.
OpenEXR channels are assigned to the Toxik RGBA channels according to the following rules:
If the channel name part of the input channel (the string after the last dot) is named "R", "G", "B" or "A" (case insensitive), then it is assigned to its respective R, G, B or A channel.
If none of the input channels have an ".R", ".G", ".B" or ".A" suffix (case insensitive), then they are assigned in alphanumerical order:
To | Input Channels | Result |
R, G, B, and A | 4 or more | RGBA image |
R, G, and/or A | 2 or 3 | RGB |
A | 1 | A |
Examples:
".M", ".N", ".O", ".P" input channels are assigned to R, G, B and A respectively, resulting in an RGBA image.
".X", ".Y", ".Z" input channels are assigned to R, G and B respectively, resulting in an RGB image.
".U", ".V" input channels are assigned to R and G respectively, resulting in an RGB image.
".Z" input channel is assigned to A, resulting in an A image.
In the Options tab, you can assign any channel to the R, G, B and A channel. When the RGBA channels are available in the files, they are mapped by default to the same channels in the composition or output channel. During import, Toxik verifies the mapping to determine that all the channels are the same bit depth.
This list provides the user-defined channel groupings and mappings. Toxik provides a number of predefined names. Selecting a group performs the mapping defined by the group. Channels that were identified as being part of a group in the preferences can be assigned to a corresponding channel group.
Each Channel can be assigned a field from the list, or as groups when using the buttons next to the menu.
The Channel Groups list shows only if the existing group was found in the file. The groups are determined by your project preference--see .
The Channel Group options include:
Channel Group | Description |
None | See Channel Assignments. |
Alpha | Alpha channel only |
Colors | Red, Blue, and Green channels only |
Colors+Alpha | Red, Blue, Green and Alpha channels |
Depth | Z-axis only |
Surface Normals | X, Y, and Z-axis |
Velocity | X and Y-axis |
From File to Output--Maps a channel present in the file to a channel (output) in the resulting node or composition.
You can assign a channel from the file to an output channel by clicking the Output Channel menu and selecting the channel wanted. As shown, the channels NX, NY and NZ have been grouped under the name Surface Normals, and were assigned to R, G and B.
Output--Specifies the channels that will be present in the resulting node or composition. A reasonable default is set according to the channels present in the file. It is possible to change the output to any output of RGB, RGBA, or A.
Reset--Resets the mapping in the Import Browser to the original state, or to the last persistent state in the Import Image tool.
Status--Verifies that the selected input channels all have the same depth. If the depths do not match, the images will still be imported properly.
In the Project Preferences window, you can define new groups in the Import tab. A number of default channel groups and predefined assignments are provided. Groups can be added, renamed, removed, and channel mapping can be updated.
The predefined groups are:
Group | Mapping |
Alpha | A to A |
Colors | RGB to RGB |
Colors+Alpha | RGBA to RGBA |
Depth | Z to R |
Surface Normals | NX, NY and NZ to R, G and B |
Velocity | velX and velY to R and G |
Note: The groups map to a subset of the channels available from the Splutter Fish plugin used by Autodesk 3ds Max: Velocity, Depth, and Surface Normal.
The selected group, Velocity, is predefined by Toxik. It defines a mapping of channels named velX and velY to output channel R and G respectively. No channels are mapped to B and A.
Under From File To Output are four fields labeled R, G, B, and A. Each contains all the channels available in the EXR file.
Channel | Description |
R | Red Intensity |
G | Green Intensity |
A | Alpha Opacity |
U | Equivalent to X-axis in a 2D plane |
V | Equivalent to Y-axis in a 2D plane |
Z | Z-axis or depth in a 3D plane |
NX | X-axis Normals |
NY | Y-axis Normals |
NZ | Z-axis Normals |
materialID | A surfaces material ID is the value that determines which sub-material the surface will use when you apply a Multi/Sub-Object to a material to the object to which the material belongs. |
objectID | The value that determines which object will be used when you apply it to the object. |
velX | X-axis Motion Vector |
velY | Y-axis Motion Vector |
None | No channels selected |
In Toxik, it is typically not desirable to work with images that have their alpha premultiplied with the colors. If you are working with such an image, then you should manually add an Unpremultiply node from the Image Import tab or create a post-import script that does.
The Unpremultiply button is off by default for most formats, unless there is information in the file that indicates the presence of an alpha channel that was premultiplied. OpenEXR files have their alpha channel premultiplied, so it is set to on by default. The following table summarizes the different cases.
Format | Unpremultiply | Value |
Format without alpha | Off | -- |
Format with alpha, without premultiplied info | On | Off |
Format with alpha, with premultiplied info | On | Depends on info |
Format with alpha, conventional premultiplied | On | Depends on convention |
When importing an image sequence, Toxik determines the resulting composition properties with respect to channels and bit depth. Some controls that let you override these default properties include:
Output channels RGB, RGBA, and A.
Bit depth either 16-bit or 32-bit regardless of the files original depth
Your initial bit depth values can vary depending on the properties of the image files.
From a jpeg file, the default proposed is 16-bit
From a dpx 10-bit int file, the default is 16-bit
From a dpx 16-bit int file, the default is 32-bit
From an hdr 32-bit, the default is 32-bit
You can always create an RGB, RGBA or A Output Channel composition. Any missing channels are filled with black.
When you import media directly into a Schematic view or in the Player by dragging and dropping, a Gate UI appears with a number of choices depending on the context and node selected. This allows you to create a footage composition in the Footage folder, and at the same time create a link node to that footage in the current composition.
If you drag an image sequence to the Schematic and drop it on an input of a node, the Gate UI does not appear. However, if you drop the sequence anywhere in the Schematic or the Player, the Gate UI appears with several options.
Drag and drop your first image into the Player.
Three options are available from the Gate UI.
If you drag and drop your first image directly onto an Output node, you have a choice of four options.
If you drag and drop your second image into the viewer (instead of an Output node), you have a choice of five options.
How do you distinguish a composition representing footage from a composition you are using for compositing? Toxik has a role for a composition named Footage.
A composition with a Footage role displays a different icon in the Tool UI.
This role is not permanent and can be changed at any time. You can even create a composition from scratch and assign it a Footage role. When a sequence is imported, either by clicking the Import button or by dragging the sequence into a library folder, a composition is created with the Footage role. The role of a composition does not change its behavior at all in the application, and is only used as an indicator of the intended use of the object.
When an OpenEXR image is being imported, a suffix corresponding to the Channel group is added if the selected Channel group is not a predefined group, such as Colors or Colors+Alpha.
The name would be FileName.Alpha, FileName.Velocity. This is useful when you need to import the same file twice, first to import the image channels and then to import the motion vectors.
Note: The description of the footage corresponds to the description in the Information tab in the Tool UI--see The Information Tab.