Skip to content
This repository has been archived by the owner on Sep 20, 2024. It is now read-only.

Max: Implementation of OCIO configuration #5499

Merged
merged 23 commits into from
Oct 3, 2023

Conversation

moonyuet
Copy link
Member

@moonyuet moonyuet commented Aug 25, 2023

Changelog Description

Resolve #5473
Implementation of OCIO configuration for Max 2024 regarding to the update of Max 2024

Additional info

Not applicable for Max 2023 or lower.
(Will update the test note later)

Testing notes 1:

  1. Launch 3dsMax via launcher
  2. Start a new scene for 3dsMax
  3. Create Render Instance
  4. Publish

Testing notes 2:

  1. Launch 3dsMax via launcher
  2. Go to Openpype -> Set Colorspace
  3. Create Review Instance
  4. Publish

@ynbot ynbot added size/XS Denotes a PR changes 0-99 lines, ignoring general files host: 3dsmax Autodesk 3dsmax type: enhancement Enhancements to existing functionality labels Aug 25, 2023
@moonyuet moonyuet marked this pull request as ready for review August 30, 2023 14:42
@LiborBatek
Copy link
Member

LiborBatek commented Aug 31, 2023

Just a quick question, is this corelating to our present way of doing CMS accross the all host?

I mean CMS should be set withing global OP Settings so is this still the case or?

Global CMS and OCIO config defined in OP Settings

image

and for Max host specifically:

image

@moonyuet
Copy link
Member Author

moonyuet commented Aug 31, 2023

Just a quick question, is this corelating to our present way of doing CMS accross the all host?

I mean CMS should be set withing global OP Settings so is this still the case or?

Global CMS and OCIO config defined in OP Settings

image

and for Max host specifically:

image

The color configuration should be taking the last OCIO config file(aces 1.2) from the global CMS after set colorspace in OP menu or start a new scene.
The configuration is the same with the one in Houdini.
image

image

So if the user wants to customize for hosts, they can add their own configuration files in config path and enable override global ocio config, their setting will override the global configuration file within Max.

@LiborBatek
Copy link
Member

Ok cool then...I was more worried it doesnt work like that :) ...so all good

Will test asap. thx!

Copy link
Contributor

@Minkiu Minkiu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Haven't tested it, but code looks good.

@LiborBatek
Copy link
Member

LiborBatek commented Sep 1, 2023

Meanwhile when testing (will post comments on that soon) ...we should also treat case of older workfiles in max set to Gamma Workflow which being 3dsmax default one (at least in max 2024 )
image

We should somehow force our OCIO config based CMS...
or at least user should get sort of Warning that OCIO color management not set and need to be switched to our custom OCIO config.

This mainly happening when re opening older max workfiles before this PR.

@moonyuet
Copy link
Member Author

moonyuet commented Sep 1, 2023

Meanwhile when testing (will post comments on that soon) ...we should also treat case of older workfiles in max set to Gamma Workflow which being 3dsmax default one (at least in max 2024 ) image

We should somehow force our OCIO config based CMS... or at least user should get sort of Warning that OCIO color management not set and need to be switched to our custom OCIO config.

This mainly happening when re opening older max workfiles before this PR.

Maybe we can do an action similar to the one in maya which fix fps when the old 3dsmax workfile scene is being opened....
A very small menu pops up and ask the user to click to set the OCIO config

@LiborBatek
Copy link
Member

@moonyuet yeah, is as simple as going into Max Preferences and choose custom OCIO config based CMS (our config already being in the list present just not set as working color management setting)

...basically just not being switched on

Copy link
Member

@LiborBatek LiborBatek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now OCIO correctly been visible when creating Render instance
image

I propose to keep it exposed on Render instance when re opening Publish now its not being visible after going into it again...so user is not aware/able to change color profiles anymore easily
image

I am also not sure whats intended function for that Set Color Space OP menu entry too?

image

Right now nothing happen/ is shown to the user when triggered. Also checked if by any chance switching the max CMS Preferences but not. Even its name implying something different.

@LiborBatek LiborBatek self-requested a review September 1, 2023 09:45
@moonyuet
Copy link
Member Author

moonyuet commented Sep 5, 2023

I have updated the scripts with collect review can set colorspace and the colorspace options move to the publish tab.
Also for the old workfile it would have the popup menu but for some reason the color of the push button is not applicable for the main_window set for max.
image
image
image

Copy link
Member

@LiborBatek LiborBatek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All seems working fine. Max being correctly set to OP OCIO config file and if not,
then the pop up menu shows with option to fix that. Also works fine.

image

There is now visible the option box on render instance for color profiles too, so user has opportunity to tweak the color profiles later on if needed.

image

openpype/hosts/max/api/lib.py Outdated Show resolved Hide resolved
openpype/hosts/max/api/lib.py Outdated Show resolved Hide resolved
openpype/hosts/max/api/lib.py Outdated Show resolved Hide resolved
openpype/hosts/max/api/lib.py Outdated Show resolved Hide resolved
openpype/hosts/max/api/pipeline.py Show resolved Hide resolved
openpype/hosts/max/plugins/publish/collect_render.py Outdated Show resolved Hide resolved
openpype/hosts/max/plugins/publish/collect_review.py Outdated Show resolved Hide resolved
openpype/hosts/max/api/lib.py Outdated Show resolved Hide resolved
openpype/hooks/pre_ocio_hook.py Outdated Show resolved Hide resolved
@ynbot ynbot added the module: Deadline AWS Deadline related features label Sep 18, 2023
@moonyuet moonyuet added the sponsored Client endorsed or requested label Sep 20, 2023
@moonyuet moonyuet merged commit 820304b into develop Oct 3, 2023
@moonyuet moonyuet deleted the enhancement/ocio_configuration_max_2024 branch October 3, 2023 10:09
@ynbot ynbot added this to the next-patch milestone Oct 3, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
host: 3dsmax Autodesk 3dsmax module: Deadline AWS Deadline related features size/XS Denotes a PR changes 0-99 lines, ignoring general files sponsored Client endorsed or requested type: enhancement Enhancements to existing functionality
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

Bug: 3dsmax is not using predefined OCIO config file in OP Settings when Enabled CMS
7 participants