Skip to content

Bug: OCIO environment variable not detected by submitter - worker renders with wrong/default color config #379

@oehmends

Description

@oehmends

Describe the bug

The submitter does not detect or forward the OCIO environment variable. The standard OCIO env var is the primary mechanism used by OpenColorIO-aware renderers (V-Ray, Arnold, RenderMan, etc.) to locate the OCIO config file. Pipeline tools such as AYON and other studio-level tooling commonly set this variable globally.

Currently, Scene.ocio_config_file() in scene.py only queries maya.cmds.colorManagementPrefs(query=True, configFilePath=True). It does not check os.environ.get("OCIO"). When the OCIO config is set via the environment variable rather than Maya's internal preferences, the submitter returns None and the OCIOConfigFile job parameter is never populated.

On the worker, the OCIO env var either isn't set or still points to the submitter machine's path, which doesn't exist on the worker. The renderer then fails to load the OCIO config and falls back to a raw/default config.

Worker error:
2026/03/30 16:56:17+02:00 ADAPTOR_OUTPUT: STDERR: V-Ray error: Error could not read 'Z:\OCIO\Maya2022-default\config.ocio' OCIO profile. 2026/03/30 16:56:17+02:00 ADAPTOR_OUTPUT: STDERR: V-Ray warning: No valid OCIO config could be loaded - using a default fallback (raw) config instead

Expected Behaviour

The submitter should also check the OCIO environment variable when detecting the active OCIO config. If set, the path should be resolved, included as the OCIOConfigFile parameter, and path-mapped on the worker so the renderer can find it. Alternatively, the adaptor should set the OCIO environment variable on the worker with the mapped path before the scene is opened.

Current Behaviour

  1. Pipeline tooling sets OCIO=Z:\OCIO\Maya2022-default\config.ocio as an environment variable
  2. V-Ray uses this env var to find the OCIO config on the submitter machine
  3. Scene.ocio_config_file() only checks colorManagementPrefs, doesn't see a custom config, returns None
  4. OCIOConfigFile parameter is never added to the job
  5. On the worker, V-Ray reads the stale/unmapped OCIO env var (or it's absent), fails to find the config file
  6. V-Ray falls back to raw config — render has incorrect color management
  7. No warning is shown at submission time

Reproduction Steps

  1. Set the OCIO environment variable to point to an OCIO config file (e.g. OCIO=Z:\OCIO\Maya2022-default\config.ocio) - this can be done via pipeline tools like AYON, studio environment setup, or manually.
  2. Launch Maya 2024 with V-Ray - V-Ray will use the OCIO env var for color management
  3. Open a scene and submit via the Deadline Cloud submitter
  4. Check the submitted job bundle — OCIOConfigFile will be empty
  5. On the worker, V-Ray fails to read the OCIO config at the original path and falls back to raw

Environment

Operating system: Windows (submitter side)
Version of Maya: 2024
Renderer: V-Ray
Version of this package: 0.15.14 (post PR #361 and #375)
OCIO config: Set via OCIO environment variable by pipeline tooling

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions