ACES IO — Config Loader
The one node every other ACES IO node plugs into
- ocio_config
ACES IO - Config Loader is the keystone of this pack: it's the node that produces the OCIO_CONFIG wire every other node here wants. None of the transforms (ColorSpace, Display, Viewer, Look, Log Convert) will accept an image without one. Think of it as the OCIO project settings of your graph - Nuke keeps this in Project Settings → OCIO, this pack gives it a node.
What you're actually doing is choosing which ACES config - the master spreadsheet that defines every colorspace, display, and view transform in your pipeline - gets used. Get this wrong and everything downstream inherits the wrong math, so it's worth the 30 seconds.
What the dropdown means
The config_preset menu has ten entries, but they collapse into three families:
- ACES 2.0 (CG and Studio, marked Recommended) - the current standard, built into PyOpenColorIO 2.3+. CG is for CGI-heavy work, Studio for live-action; the default
ACES 2.0 CG [Recommended]is a sensible place to start for AI-generated imagery. - ACES 1.3 (CG/Studio across three OCIO versions) - the legacy versions still used in older studio pipelines. If you're not collaborating with an existing facility, you can probably skip these.
- ACES 1.2 - the old OCIO v1 config. Here's the gotcha: it is not bundled. Pick it and the node auto-downloads it from colour-science on first use - roughly 130 MB, which can look like the node hung if you're on a slow connection. It only happens once.
- Custom path (other) - for your own
.ocio/.ociozfile, e.g. a studio-specific config that defines camera log spaces. When you pick this, you must fillconfig_path, or the node raises "No config path supplied."
Output
One output: ocio_config (type OCIO_CONFIG). Wire it into the ocio_config input on any ACES IO transform, the Viewer, the EXR Loader/Saver, or Config Info. One config can feed the whole graph, so you only need a single loader per workflow.
Install
Part of BISAM20/ComfyUI-ACES-IO. ComfyUI Manager → Install Custom Nodes → search ComfyUI-ACES-IO, then restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/BISAM20/ComfyUI-ACES-IO
cd ComfyUI-ACES-IO
pip install -r requirements.txt
The heavy dependency is PyOpenColorIO (Python package name: opencolorio - it's not on PyPI as "PyOpenColorIO", which trips people up). Manager's installer sorts this out; manually pip install opencolorio>=2.3.0.
Troubleshooting
- Nodes won't load after install -
PyOpenColorIOdidn't install. Check ComfyUI's console; the pack deliberately fails gracefully with a "how to install" message rather than a crash. - ACES 1.2 seems stuck - it's downloading 130 MB on first use, not frozen. The install script logs progress.
- Switched configs and your ColorSpace node's dropdowns now show defaults - saved widget values that don't exist in the new config fall back to that config's defaults, rather than erroring. That's by design, so read the dropdowns after a config change.
- Every node in this pack re-runs on each queue (no stale colorspace caching), so config changes always take effect without restart tricks.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| config_preset | COMBO | ACES 2.0 CG [Recommended] | 10 options: ACES 2.0 CG [Recommended], ACES 2.0 Studio [Recommended], ACES 1.3 CG (OCIO 2.4), ACES 1.3 Studio (OCIO 2.4), ACES 1.3 CG (OCIO 2.3), ACES 1.3 Studio (OCIO 2.3), +4 |
| config_pathopt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| ocio_config | OCIO_CONFIG | — |