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

Fusion: Output Image Format Updating Instances (create_saver)#6060

Merged
jakubjezek001 merged 17 commits intoynput:developfrom
Sponge96:fusion_output_format_validator
Dec 18, 2023
Merged

Fusion: Output Image Format Updating Instances (create_saver)#6060
jakubjezek001 merged 17 commits intoynput:developfrom
Sponge96:fusion_output_format_validator

Conversation

@Sponge96
Copy link
Copy Markdown
Contributor

@Sponge96 Sponge96 commented Dec 15, 2023

Changelog Description

Adds the ability to update Saver image output format if changed in the Publish UI.

Adds an optional validator that compares "Output Image Format" in the Publish menu against the one currently found on the saver. It then offers a repair action to update the output extension on the saver.

Additional info

The current behaviour allows users to change the "Output Image Format" in the Publish menu without reflecting these changes in the comp/scene. In my view wherever changes are possible users will expect those to have an impact. This change remedies that.

This optional validator addresses this by informing the user when a mismatch occurs between the Publish UI and the saver. It also offers a repair action to update the output format/extension to that of the Publish UI. This is a draft just to gage if this is a good fit or if an alternative approach to solving this is better.

Testing notes:

  1. Open Fusion.
  2. Create new 'Render' variant.
  3. Open Publish menu.
  4. Edit the "Output Image Format" to a different value.
  5. Publish.
  6. Verify that the new path on saver is correct and has updated to new value previously selected in step 4.

@ynbot ynbot added host: Fusion size/XS Denotes a PR changes 0-99 lines, ignoring general files labels Dec 15, 2023
this is no longer needed since the creator now respects changes to attributes
@Sponge96 Sponge96 changed the title Fusion: Output Image Format Validator Fusion: Output Image Format Updating Instances (create_saver) Dec 15, 2023
@Sponge96 Sponge96 marked this pull request as ready for review December 15, 2023 16:23
Copy link
Copy Markdown
Member

@jakubjezek001 jakubjezek001 left a comment

Choose a reason for hiding this comment

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

LGTM - tested and works like charm ;) Thaks @Sponge96 !

@jakubjezek001 jakubjezek001 merged commit dc9c8f0 into ynput:develop Dec 18, 2023
@ynbot ynbot added this to the next-patch milestone Dec 18, 2023
@Sponge96 Sponge96 deleted the fusion_output_format_validator branch December 18, 2023 20:32
jakubjezek001 added a commit that referenced this pull request Dec 18, 2023
kalisp added a commit that referenced this pull request Jan 15, 2024
* Introduced image product type

'image' product type should result in single frame output, 'render' should be more focused on multiple frames.

* Updated logging

* Refactor moved generic creaor class to better location

* Update openpype/settings/entities/schemas/projects_schema/schema_project_fusion.json

Co-authored-by: Jakub Ježek <jakubjezek001@gmail.com>

* Change label

It might be movie type not only image sequence.

* OP-7470 - fix name

* OP-7470 - update docstring

There were objections for setting up this creator as it seems unnecessary. There is currently no other way how to implement customer requirement but this, but in the future 'alias' product types implementation might solve this.

* Implementing changes from #6060

#6060

* Update openpype/settings/defaults/project_settings/fusion.json

Co-authored-by: Jakub Ježek <jakubjezek001@gmail.com>

* Update server_addon/fusion/server/settings.py

Co-authored-by: Jakub Ježek <jakubjezek001@gmail.com>

* Update openpype/hosts/fusion/api/plugin.py

Co-authored-by: Jakub Trllo <43494761+iLLiCiTiT@users.noreply.github.com>

* OP-7470 - added explicit frame field

Artist can insert specific frame from which `image` instance should be created.

* OP-7470 - fix name and logging

Prints better message even in debug mode.

* OP-7470 - update instance label

It contained original frames which was confusing.

* Update openpype/hosts/fusion/plugins/create/create_image_saver.py

Co-authored-by: Roy Nieterau <roy_nieterau@hotmail.com>

* OP-7470 - fix documentation

* OP-7470 - moved frame range resolution earlier

This approach is safer, as frame range is resolved sooner.

* OP-7470 - added new validator for single frame

* OP-7470 - Hound

* OP-7470 - removed unnecessary as label

* OP-7470 - use internal class anatomy

* OP-7470 - add explicit settings_category to propagete values from Setting correctly

apply_settings is replaced by correct value in `settings_category`

* OP-7470 - typo

* OP-7470 - update docstring

* OP-7470 - update formatting data

This probably fixes issue with missing product key in intermediate product name.

* OP-7470 - moved around only proper fields

Some fields (frame and frame_range) are making sense only in specific creator.

* OP-7470 - added defaults to Settings

* OP-7470 - fixed typo

* OP-7470 - bumped up version

Settings changed, so addon version should change too. 0.1.2 is in develop

* Update openpype/hosts/fusion/plugins/publish/collect_instances.py

Co-authored-by: Roy Nieterau <roy_nieterau@hotmail.com>

* OP-7470 - removed unnecessary variables

There was logic intended to use those, deemed not necessary.

* OP-7470 - update to error message

* OP-7470 - removed unneded method

---------

Co-authored-by: Jakub Ježek <jakubjezek001@gmail.com>
Co-authored-by: Jakub Trllo <43494761+iLLiCiTiT@users.noreply.github.com>
Co-authored-by: Roy Nieterau <roy_nieterau@hotmail.com>
iLLiCiTiT added a commit to ynput/ayon-fusion that referenced this pull request Jun 27, 2024
* Introduced image product type

'image' product type should result in single frame output, 'render' should be more focused on multiple frames.

* Updated logging

* Refactor moved generic creaor class to better location

* Update openpype/settings/entities/schemas/projects_schema/schema_project_fusion.json

Co-authored-by: Jakub Ježek <jakubjezek001@gmail.com>

* Change label

It might be movie type not only image sequence.

* OP-7470 - fix name

* OP-7470 - update docstring

There were objections for setting up this creator as it seems unnecessary. There is currently no other way how to implement customer requirement but this, but in the future 'alias' product types implementation might solve this.

* Implementing changes from #6060

ynput/OpenPype#6060

* Update openpype/settings/defaults/project_settings/fusion.json

Co-authored-by: Jakub Ježek <jakubjezek001@gmail.com>

* Update server_addon/fusion/server/settings.py

Co-authored-by: Jakub Ježek <jakubjezek001@gmail.com>

* Update openpype/hosts/fusion/api/plugin.py

Co-authored-by: Jakub Trllo <43494761+iLLiCiTiT@users.noreply.github.com>

* OP-7470 - added explicit frame field

Artist can insert specific frame from which `image` instance should be created.

* OP-7470 - fix name and logging

Prints better message even in debug mode.

* OP-7470 - update instance label

It contained original frames which was confusing.

* Update openpype/hosts/fusion/plugins/create/create_image_saver.py

Co-authored-by: Roy Nieterau <roy_nieterau@hotmail.com>

* OP-7470 - fix documentation

* OP-7470 - moved frame range resolution earlier

This approach is safer, as frame range is resolved sooner.

* OP-7470 - added new validator for single frame

* OP-7470 - Hound

* OP-7470 - removed unnecessary as label

* OP-7470 - use internal class anatomy

* OP-7470 - add explicit settings_category to propagete values from Setting correctly

apply_settings is replaced by correct value in `settings_category`

* OP-7470 - typo

* OP-7470 - update docstring

* OP-7470 - update formatting data

This probably fixes issue with missing product key in intermediate product name.

* OP-7470 - moved around only proper fields

Some fields (frame and frame_range) are making sense only in specific creator.

* OP-7470 - added defaults to Settings

* OP-7470 - fixed typo

* OP-7470 - bumped up version

Settings changed, so addon version should change too. 0.1.2 is in develop

* Update openpype/hosts/fusion/plugins/publish/collect_instances.py

Co-authored-by: Roy Nieterau <roy_nieterau@hotmail.com>

* OP-7470 - removed unnecessary variables

There was logic intended to use those, deemed not necessary.

* OP-7470 - update to error message

* OP-7470 - removed unneded method

---------

Co-authored-by: Jakub Ježek <jakubjezek001@gmail.com>
Co-authored-by: Jakub Trllo <43494761+iLLiCiTiT@users.noreply.github.com>
Co-authored-by: Roy Nieterau <roy_nieterau@hotmail.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

community contribution host: Fusion size/XS Denotes a PR changes 0-99 lines, ignoring general files

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

5 participants