ynput / OpenPype

Main OpenPype repository and AYON openpype addon codebase
https://openpype.io
MIT License
280 stars 128 forks source link

Maya: Correct Alembic export defaults AY-5273 #6268

Closed tokejepsen closed 3 weeks ago

tokejepsen commented 1 month ago

Changelog Description

Missing writeUVs on the Alembic extraction.

Testing notes:

  1. Remove any overrides on project_settings/maya/publish/ExtractAlembic
  2. Publish pointcache or animation.
  3. Validate published geometry has UVs.
moonyuet commented 1 month ago

I slightly look at the code and I compared with the schema_maya_publish.json and it doesn't have the WriteUVs flag (they have WriteUVSets flag instead). Are we gonna add or change the name of that specific flag in schema_maya_publish.json? image I am asking this as WriteUVsdoesn't show up in my setting image

BigRoy commented 1 month ago

I slightly look at the code and I compared with the schema_maya_publish.json and it doesn't have the WriteUVs flag (they have WriteUVSets flag instead). Are we gonna add or change the name of that specific flag in schema_maya_publish.json?

Note that I believe writeUVSets and writeUVs is a different flag on the alembic exporter. The first meaning "export multiple UV sets" - the other meaning 'write any UV set'. If only the latter is enabled then only the current UV set would be exported.

See both present here:

Not entirely sure, but I believe that is the case.

Correction

NEVERMIND - That's uvWrite it seems.

See:

It seems the other flag is uvWrite on the Alembic side of things.

moonyuet commented 1 month ago

I slightly look at the code and I compared with the schema_maya_publish.json and it doesn't have the WriteUVs flag (they have WriteUVSets flag instead). Are we gonna add or change the name of that specific flag in schema_maya_publish.json? image I am asking this as WriteUVsdoesn't show up in my setting image

Note that I believe writeUVSets and writeUVs is a different flag on the alembic exporter. The first meaning "export multiple UV sets" - the other meaning 'write any UV set'. If only the latter is enabled then only the current UV set would be exported.

See both present here:

Not entirely sure, but I believe that is the case.

We need to add WriteUVs into the schema_maya_publish.json then, if both WriteUVs and WriteUVSets existed as job arguments.

BigRoy commented 1 month ago

We need to add WriteUVs into the schema_maya_publish.json then, if both WriteUVs and WriteUVSets existed as job arguments.

Thanks - I edited my previous comment seems I misremembered slightly. We need both uvWrite and writeUVSets. And indeed writeUVs seems to be invalid/typo.

So I suppose:

BigRoy commented 1 month ago

Tested successfully in Maya image

Would be good - that aside of the publish passing you also confirm in the test that the resulting publish contains UVs.

moonyuet commented 1 month ago

Tested successfully in Maya image

Would be good - that aside of the publish passing you also confirm in the test that the resulting publish contains UVs.

yes it has the UVs. image

ynbot commented 1 month ago

Task linked: AY-5273 OP: Alembic UVs write issue