Developers

How to Export Quill Projects

How to Export Quill Projects

Export Geometry from Quill

If you ever want to bring Quill paintings to other third party software, you can do that. Click on the “Export Project” on the top of the Document panel to bring up the export dialog. Currently you can export Quill into USD/USDZ, FBX, Alembic or Quill native IMM files.

Export options:

  • Export Curves: Export Quill stroke curves.
  • Export Meshes: Export Quill strokes as polygons.
  • Bake Transforms: Freeze the transformation, otherwise preserve the transformation of each layer on each transform node.
  • Export Hidden: Export all layers including hidden ones. If you only want to export partial scene, you can create them in separate layers, and hide the layers that you do not want to export, and uncheck this option at export time.
  • Color Space: Quill supports Gamma and Linear.
  • Export Animation: Export key frame animation.
  • Export UVs: Quill exports two uvsets if you check this option. In both uvsets, v is along with strokes, u is along with the perimeter of a cross section of strokes; “uv0” is physical length, “uv1” is normalized.
  • Material Per Layer (Only for FBX): Create a material slot for each layer, so that you can easily assign different materials to different layers in other software. If off, will generate one material slot shared by all layers. Special case: if you use flat ribbon brushes in your project, there’s going be a double sided material slot (per layer if you check this option, otherwise per file) created for those strokes.
  • Separate Alpha (Only for Alembic): Instead of generating a four channel vertex color attribute “rgba”, this option will export two separate vertex attributes: “rgb” and “opacity”.
  • Export Extra Attrs (Only for Alembic): In Alembic, we export many customized attributes which might be useful for FX, they do make the file size much bigger, so only export when needed.
    • Attributes exported both with curves and meshes:
      view_dir
      length
      curve_normal
      brush_id
      brush_visible_mode
      element_id.
    • Attributes exported only with curves:
      time
    • Attributes exported only with meshes:
      width
      vertex_id

Quill Command Line Exporter

In (film and game) production, it’s often useful to run asset or content conversion in automatized ways, either as nightly scripts or as part of the artist’s work publication process. In either case, conversion or processing tasks get invoked from the command line. Quill provides such workflow with its command line tool. This tool can export Quill files into FBX or Alembic files; it can merge files together and do geometrical simplification.

command-line-exporter

The command tool is located at C:\Program Files\Oculus\Software\Software\oculus-quill\QuillExporter, but it has no external dependencies and can therefore be copied anywhere that is convenient for the user. The tool doesn’t take the configuration parameters as arguments; instead, it takes a configuration file as argument and reads it to extract all the relevant information.

> cd C:\Program Files\Oculus\Software\Software\oculus-quill\QuillExporter
> QuillExporter.exe settings.json

Template for settings.json:

{ "Exporter": "FBX", "InputFile": "path_to_quill_folder_use_/_only", "ExtraInputs": [], "OutputFile": "path_to_output_file_use_/_only", "ExportOptions": { "AbortOnErrors": false, "ExportHidden": false, "ExcludeList": [], "GroupExtraInputs": false, "Optimize": { "Optimize": false, "OptimizeKeepOldLayers": false, "OptimizeSimplifyThreshold": 0.02, "OptimizeIncludeList": [] }, "Asset": { "UseFullName": false, "ExportMeshes": true, "ExportCurves": false, "BakeTransforms": true, "ExportUVs": true, "ExportAnimation": true, "MaterialPerLayer": false, "ColorSpace": "Linear", "ExportExtraAttrs": false, "SeparateAlphaChannel": false, "FixFlip": false, "Scale": 1.0 }, "IMM": { "CanGrab": false, "ExportToSpaces": false } } }

Extra Export Options in command line exporter:

  • Exporter: Export formats Quill supports are “FBX”, “Alembic”, “USD”, “USDZ”, “IMM”.
  • AbortOnErrors: Decide if Quill abort or continue to export when encounter missing referenced models/ pictures/ sound files.
  • ExtraInputs: Allow for merging multiple Quill files together.
  • GroupExtraInputs: If “ExtraInputs” is not empty, group extra input layers.
  • Scale: Export Quill to different scale, this could be useful if you want to bring Quill to a third party software which has different default scale unit (Quill is default to meter).*
  • FixFlip: Fix negative scale value flipped layers. This is mostly only used for users who bring Quill to Houdini through Alembic, since Houdini treats negative scale differently from Quill.
  • Optimize: Automatically optimize Quill at export time. Tips: Change “OptimizeSimplifyThreshold” with small numbers.
  • UVSafetyBandTexels: Deprecated.