Arnold Scene Source (.ass) is Arnold's native scene definition format, stored in human-readable, editable ASCII files that can later be rendered outside of CINEMA 4D with kick (a multi-platform, command-line utility) or used for rendering via procedurals. Beside ASS files Arnold offers writing scenes to Universal Scene Description (USD) format.
C4DtoA lets you save scenes to ASS or USD files. The scene export dialog can be accessed from the Arnold > Scene Export menu.
The dialog shows Arnold related options and frame settings described below.
The path where the archive (.ass, .usd, .usda, .usdc) will be saved to. A padding pattern (####) can be used to save a file sequence (animation). If padding is not specified, .#### is added to the file name automatically. For example /path/to/test.ass will produce /path/to/test.0000.ass, /path/to/test.0001.ass, /path/to/test.0002.ass and so on.
Set to Scene to export the whole scene, or set to Procedural to export only the selected meshes to be loaded in an Arnold Procedural (stand-in).
Defines the objects to be exported:
- All: Export all objects (geometries, lights, etc.) from the scene.
- Selected: Export only the selected objects.
- Selected individually: Export the selected objects to separate ASS files. The object name is added to the file name as a suffix (e.g. myexport_Sphere.ass, myexport_Cube.ass, etc.)
Exports the whole hierarchy of the selected objects (instead of manually selecting all children).
Available in Procedural mode. When enabled the exported objects are replaced with an Arnold Procedural object pointing to the exported file.
When enabled all paths are exported as absolute paths, even if they are defined as relative in the scene.
ASS format specific settings.
Exports the scene directly to gzip-compressed files with the .ass.gz extension. You can expect compression rates in the 4-5x range (compared to full ASCII form, obviously there will be a lower compression ratio if the binary encoding option is being used).
Specify whether binary encoding is used to compress large arrays (bigger than 16) containing float in their components. They are encoded into a more compact ASCII representation (b85), leading to smaller files and faster load times, whilst still being mostly human-readable. In addition, the binary encoding has exact 32-bit precision, whereas without this binary output floating point values are truncated into at most 8 ASCII digits (e.g. 1234.5678). The encoded arrays are indicated by prefixing the array type with "b85" as in the example below. POINT2, POINT, and VECTOR arrays are encoded. 16 float
nsides 54 1 UINT 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 3 3 3 3 3 3 3 3 3
vlist 47 1 b85POINT
Specifies which of the following node types are included in the ASS export:
Specifies the range of frames to be exported:
- Use render settings: frames specified for render (Render Setting / Output) will be exported.
- Current frame: exports only the current frame.
- Custom: exports frames specified by the Frame start/end/step settings.
Specifies the start frame of the sequence to be exported in custom mode.
Specifies the end frame of the sequence to be exported in custom mode.
The increment between the frames to be exported in custom mode.
Currently animation can not be written to a single USD file, a different file is created for each frame.
Writes the file(s) to the disc.
Scene export can be executed from the command line as well via the -arnoldSceneExport parameter followed by the export options. The following options are available: For example, the following command exports frame range 10-20 of myscene.c4d to myscene.ass: Note that on Windows the export is executed in the background, therefore, you have no output in the console. You can redirect the output to a file using the > directive as follows:
Scene export can be executed from the command line as well via the -arnoldSceneExport parameter followed by the export options.
The following options are available:
For example, the following command exports frame range 10-20 of myscene.c4d to myscene.ass:
Note that on Windows the export is executed in the background, therefore, you have no output in the console. You can redirect the output to a file using the > directive as follows:
Scene export is implemented as a command which means it can be called from scripts as well. using the CallCommand() function with id of 1029993. Export options can be defined via a document setting.
For example, the following python script exports frame range 10-20 to myscene.ass:
List of available option ids can be found in C4DtoA/res/c4d_symbols.h header file. They are the following:
- 0 (Filename) | filename: path of the output .ass file. If not given .ass file is exported next to the c4d scene file.
- 1 (Bool) | compressed: if true the scene is exported directly to gzip-compressed files (.ass.gz).
- 2 (Bool) | bounding box: if true bounding box of the scene are added to the ASS meta data.
- 3 (Bool) | binary: if true binary encoding is used.
- 4 (Bool) | expand procedurals: if true procedurals will be expanded before exporting the scene.
- 5 (Int32) | mask: specifies which Arnold node types are included in the .ass export. See the AtNodeEntry page of the Arnold API for the available node types.
- 6 (Int32) | start frame: specifies the start frame to be exported. When not given scene's render settings will be used.
- 7 (Int32) | end frame: specifies the end frame to be exported. When not given scene's render settings will be used.
- 8 (Int32) | step frame: specifies the increment between frames. When not given scene's render settings will be used.
- 11 (Int32) | export objects: specifies which objects are exported. Possible values are:
- 0: all
- 1: selected
- 2: selected individually
- 12 (Bool) | replace with Arnold Procedural: replaces the exported objects with an Arnold Procedural pointing to the ASS file.
- 13 (Bool) | export object hierarchy: exports the whole hierarchy (children) of the selected objects.
- 14 (Int32) | format: format of the output file. If not specified, the plugin guesses the format from the file extension. Available values are:
- 193450604: ASS
- 193472369: USD