Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Generate .tx files for exported texture sets #10

Merged
merged 8 commits into from
Sep 20, 2024

Conversation

BigRoy
Copy link
Contributor

@BigRoy BigRoy commented Sep 12, 2024

Changelog Description

Generate .tx files for exported texture sets

Additional info

Needs testing.

TODO

  • Add settings to enable/disable the plugin, and allow to make it optional
  • Support 'optional' state in the plugin logic

Testing notes:

  1. Export some texture sets
  • Should work with UDIMs
  • Should work with single textures (single file)
  • Confirm the textures render as intended.
  • Test with loaded content that has colorspace data and those that do not (generated without color management enabled?)

@BigRoy BigRoy added the type: enhancement Improvement of existing functionality or minor addition label Sep 12, 2024
@BigRoy BigRoy self-assigned this Sep 12, 2024
@ynbot ynbot added the sponsored This is directly sponsored by a client or community member label Sep 13, 2024
@BigRoy BigRoy marked this pull request as ready for review September 18, 2024 07:26
Copy link
Member

@moonyuet moonyuet left a comment

Choose a reason for hiding this comment

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

Tested in 10.0 (not in 10.1 due to the changes on the code which errors out the texture set colelctor)
The tx file isn't shown up in the publish folder.
Add the debug message to find why in the tx extractor, it seems it kinda related to the empty data found in colorspace data.

DEBUG: workfileArt is missing reference to staging directory. Will try to get it from representation.
DEBUG: Looking for matching profile for: hosts: "substancepainter" | product_types: "workfile" | task_names: "art" | task_types: "Art"
DEBUG: "workfile" not found in "product_types": ['review', 'render', 'prerender']
DEBUG: "substancepainter" not found in "hosts": ['standalonepublisher']
DEBUG: "substancepainter" not found in "hosts": ['maya']
DEBUG: "substancepainter" not found in "hosts": ['traypublisher']
DEBUG: "substancepainter" not found in "hosts": ['max']
DEBUG: Profile selected: {'product_types': [], 'hosts': [], 'task_types': [], 'task_names': [], 'template_name': 'default'}
DEBUG: Product: workfileArt
DEBUG: Resetting dropped connection: localhost
DEBUG: http://localhost:5000 "POST /graphql HTTP/1.1" 200 426
DEBUG: Response <RestApiResponse [200]>
DEBUG: Prepared product: workfileArt
DEBUG: http://localhost:5000 "POST /graphql HTTP/1.1" 200 105
DEBUG: Response <RestApiResponse [200]>
DEBUG: Source: {root[work]}/interior_lenny/lenny_bedroom/asset/work/art/il_asset_art_v103.spp
DEBUG: Creating new version ...
DEBUG: Prepared version: v662
DEBUG: http://localhost:5000 "POST /graphql HTTP/1.1" 200 112
DEBUG: Response <RestApiResponse [200]>
DEBUG: Anatomy template name: default
DEBUG: Executing [POST] projects/interior_lenny/operations
DEBUG: http://localhost:5000 "POST /api/projects/interior_lenny/operations HTTP/1.1" 200 377
DEBUG: Response <RestApiResponse [200]>
INFO: Product 'workfileArt' version 662 written to database..
DEBUG: Integrating source files to destination ...
DEBUG: Checking file ... D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\work\art\il_asset_art_v103.spp -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\workfile\workfileArt\v662\il_asset_workfileArt_v662.spp
DEBUG: Copying file ... D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\work\art\il_asset_art_v103.spp -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\workfile\workfileArt\v662\il_asset_workfileArt_v662.spp
DEBUG: Backed up existing files: []
DEBUG: Transferred files: ['D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\workfile\\workfileArt\\v662\\il_asset_workfileArt_v662.spp']
DEBUG: Retrieving Representation Site Sync information ...
DEBUG: [{'id': '07b4758c-5fc2-4163-bb04-90cb1cd694b6', 'entity_type': 'representation', 'project_name': 'interior_lenny', 'operation': 'create', 'data': {'id': '8957b8a3764d11ef848d48e7daf48e22', 'versionId': '894bfe18764d11ef9a3b48e7daf48e22', 'files': [{'id': '8981b25a764d11efa6b248e7daf48e22', 'name': 'il_asset_workfileArt_v662.spp', 'path': '{root[work]}/interior_lenny/lenny_bedroom/asset/publish/workfile/workfileArt/v662/il_asset_workfileArt_v662.spp', 'size': 240168253, 'hash': 'il_asset_workfileArt_v662,spp|1726726008,658239|240168253', 'hash_type': 'op3'}], 'name': 'spp', 'data': {'context': {'root': {'work': 'D:/sh_boss_proj'}, 'project': {'name': 'interior_lenny', 'code': 'il'}, 'hierarchy': 'lenny_bedroom', 'folder': {'name': 'asset', 'type': 'Asset', 'path': '/lenny_bedroom/asset'}, 'product': {'name': 'workfileArt', 'type': 'workfile'}, 'version': 662, 'ext': 'spp', 'task': {'name': 'art', 'type': 'Art', 'short': 'art'}, 'representation': 'spp', 'username': 'admin', 'user': 'admin', 'asset': 'asset', 'subset': 'workfileArt', 'family': 'workfile'}}, 'attrib': {'path': 'D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\workfile\\workfileArt\\v662\\il_asset_workfileArt_v662.spp', 'template': '{root[work]}/{project[name]}/{hierarchy}/{folder[name]}/publish/{product[type]}/{product[name]}/v{version:0>3}/{project[code]}_{folder[name]}_{product[name]}_v{version:0>3}<_{output}><.{frame:0>4}><.{udim}>.{ext}'}}}]
DEBUG: Executing [POST] projects/interior_lenny/operations
DEBUG: http://localhost:5000 "POST /api/projects/interior_lenny/operations HTTP/1.1" 200 211
DEBUG: Response <RestApiResponse [200]>
INFO: Registered 1 representations: spp
DEBUG: Establishing staging directory @ C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l
DEBUG: Looking for matching profile for: hosts: "substancepainter" | product_types: "image" | task_names: "art" | task_types: "Art"
DEBUG: "image" not found in "product_types": ['review', 'render', 'prerender']
DEBUG: "substancepainter" not found in "hosts": ['standalonepublisher']
DEBUG: "substancepainter" not found in "hosts": ['maya']
DEBUG: "substancepainter" not found in "hosts": ['traypublisher']
DEBUG: "substancepainter" not found in "hosts": ['max']
DEBUG: Profile selected: {'product_types': [], 'hosts': [], 'task_types': [], 'task_names': [], 'template_name': 'default'}
DEBUG: Product: textureMain.Bread.Color
DEBUG: http://localhost:5000 "POST /graphql HTTP/1.1" 200 442
DEBUG: Response <RestApiResponse [200]>
DEBUG: Prepared product: textureMain.Bread.Color
DEBUG: http://localhost:5000 "POST /graphql HTTP/1.1" 200 105
DEBUG: Response <RestApiResponse [200]>
DEBUG: Source: {root[work]}/interior_lenny/lenny_bedroom/asset/work/art/il_asset_art_v103.spp
DEBUG: Creating new version ...
DEBUG: Prepared version: v016
DEBUG: http://localhost:5000 "POST /graphql HTTP/1.1" 200 112
DEBUG: Response <RestApiResponse [200]>
DEBUG: Anatomy template name: default
DEBUG: Anatomy template name: default
DEBUG: Executing [POST] projects/interior_lenny/operations
DEBUG: http://localhost:5000 "POST /api/projects/interior_lenny/operations HTTP/1.1" 200 204
DEBUG: Response <RestApiResponse [200]>
INFO: Product 'textureMain.Bread.Color' version 16 written to database..
DEBUG: Integrating source files to destination ...
DEBUG: Checking file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l\FrenchTable_UVTiles_Bread_Color.1001.png -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Bread.Color\v016\il_asset_textureMain.Bread.Color_v016.1001.png
DEBUG: Checking file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_avg4fz81\FrenchTable_UVTiles_Bread_Color.1001_thumb.jpg -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Bread.Color\v016\il_asset_textureMain.Bread.Color_v016_thumbnail.jpg
DEBUG: Copying file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l\FrenchTable_UVTiles_Bread_Color.1001.png -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Bread.Color\v016\il_asset_textureMain.Bread.Color_v016.1001.png
DEBUG: Copying file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_avg4fz81\FrenchTable_UVTiles_Bread_Color.1001_thumb.jpg -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Bread.Color\v016\il_asset_textureMain.Bread.Color_v016_thumbnail.jpg
DEBUG: Backed up existing files: []
DEBUG: Transferred files: ['D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.Bread.Color\\v016\\il_asset_textureMain.Bread.Color_v016.1001.png', 'D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.Bread.Color\\v016\\il_asset_textureMain.Bread.Color_v016_thumbnail.jpg']
DEBUG: Retrieving Representation Site Sync information ...
DEBUG: [{'id': 'd15b91cb-cb75-46f2-bafd-1602fba65d9e', 'entity_type': 'representation', 'project_name': 'interior_lenny', 'operation': 'create', 'data': {'id': '89a321cf764d11ef915c48e7daf48e22', 'versionId': '8998a45b764d11efa5ba48e7daf48e22', 'files': [{'id': '89b157b1764d11efa5d648e7daf48e22', 'name': 'il_asset_textureMain.Bread.Color_v016.1001.png', 'path': '{root[work]}/interior_lenny/lenny_bedroom/asset/publish/image/textureMain.Bread.Color/v016/il_asset_textureMain.Bread.Color_v016.1001.png', 'size': 1831764, 'hash': 'il_asset_textureMain,Bread,Color_v016,1001,png|1726726083,241338|1831764', 'hash_type': 'op3'}], 'name': 'png', 'data': {'context': {'root': {'work': 'D:/sh_boss_proj'}, 'project': {'name': 'interior_lenny', 'code': 'il'}, 'hierarchy': 'lenny_bedroom', 'folder': {'name': 'asset', 'type': 'Asset', 'path': '/lenny_bedroom/asset'}, 'product': {'name': 'textureMain.Bread.Color', 'type': 'image'}, 'version': 16, 'udim': '1001', 'ext': 'png', 'task': {'name': 'art', 'type': 'Art', 'short': 'art'}, 'representation': 'png', 'username': 'admin', 'user': 'admin', 'asset': 'asset', 'subset': 'textureMain.Bread.Color', 'family': 'image'}}, 'attrib': {'path': 'D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.Bread.Color\\v016\\il_asset_textureMain.Bread.Color_v016.1001.png', 'template': '{root[work]}/{project[name]}/{hierarchy}/{folder[name]}/publish/{product[type]}/{product[name]}/v{version:0>3}/{project[code]}_{folder[name]}_{product[name]}_v{version:0>3}<_{output}><.{frame:0>4}><.{udim}>.{ext}'}}}, {'id': '5f9a8ef0-d264-4734-ba52-8b0c3bbe41ff', 'entity_type': 'representation', 'project_name': 'interior_lenny', 'operation': 'create', 'data': {'id': '89a335dc764d11ef8c5548e7daf48e22', 'versionId': '8998a45b764d11efa5ba48e7daf48e22', 'files': [{'id': '89b18254764d11ef8e0f48e7daf48e22', 'name': 'il_asset_textureMain.Bread.Color_v016_thumbnail.jpg', 'path': '{root[work]}/interior_lenny/lenny_bedroom/asset/publish/image/textureMain.Bread.Color/v016/il_asset_textureMain.Bread.Color_v016_thumbnail.jpg', 'size': 158285, 'hash': 'il_asset_textureMain,Bread,Color_v016_thumbnail,jpg|1726726084,0724363|158285', 'hash_type': 'op3'}], 'name': 'thumbnail', 'data': {'context': {'root': {'work': 'D:/sh_boss_proj'}, 'project': {'name': 'interior_lenny', 'code': 'il'}, 'hierarchy': 'lenny_bedroom', 'folder': {'name': 'asset', 'type': 'Asset', 'path': '/lenny_bedroom/asset'}, 'product': {'name': 'textureMain.Bread.Color', 'type': 'image'}, 'version': 16, 'output': 'thumbnail', 'ext': 'jpg', 'task': {'name': 'art', 'type': 'Art', 'short': 'art'}, 'representation': 'thumbnail', 'username': 'admin', 'user': 'admin', 'asset': 'asset', 'subset': 'textureMain.Bread.Color', 'family': 'image'}}, 'attrib': {'path': 'D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.Bread.Color\\v016\\il_asset_textureMain.Bread.Color_v016_thumbnail.jpg', 'template': '{root[work]}/{project[name]}/{hierarchy}/{folder[name]}/publish/{product[type]}/{product[name]}/v{version:0>3}/{project[code]}_{folder[name]}_{product[name]}_v{version:0>3}<_{output}><.{frame:0>4}><.{udim}>.{ext}'}}}]
DEBUG: Executing [POST] projects/interior_lenny/operations
DEBUG: http://localhost:5000 "POST /api/projects/interior_lenny/operations HTTP/1.1" 200 391
DEBUG: Response <RestApiResponse [200]>
INFO: Registered 2 representations: png, thumbnail
DEBUG: Establishing staging directory @ C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l
DEBUG: Looking for matching profile for: hosts: "substancepainter" | product_types: "image" | task_names: "art" | task_types: "Art"
DEBUG: "image" not found in "product_types": ['review', 'render', 'prerender']
DEBUG: "substancepainter" not found in "hosts": ['standalonepublisher']
DEBUG: "substancepainter" not found in "hosts": ['maya']
DEBUG: "substancepainter" not found in "hosts": ['traypublisher']
DEBUG: "substancepainter" not found in "hosts": ['max']
DEBUG: Profile selected: {'product_types': [], 'hosts': [], 'task_types': [], 'task_names': [], 'template_name': 'default'}
DEBUG: Product: textureMain.Table.Color
DEBUG: http://localhost:5000 "POST /graphql HTTP/1.1" 200 442
DEBUG: Response <RestApiResponse [200]>
DEBUG: Prepared product: textureMain.Table.Color
DEBUG: http://localhost:5000 "POST /graphql HTTP/1.1" 200 105
DEBUG: Response <RestApiResponse [200]>
DEBUG: Source: {root[work]}/interior_lenny/lenny_bedroom/asset/work/art/il_asset_art_v103.spp
DEBUG: Creating new version ...
DEBUG: Prepared version: v016
DEBUG: http://localhost:5000 "POST /graphql HTTP/1.1" 200 112
DEBUG: Response <RestApiResponse [200]>
DEBUG: Anatomy template name: default
DEBUG: Template filled: D:/sh_boss_proj/interior_lenny/lenny_bedroom/asset/publish/image/textureMain.Table.Color/v016/il_asset_textureMain.Table.Color_v016.1001.png
DEBUG: Anatomy template name: default
DEBUG: Executing [POST] projects/interior_lenny/operations
DEBUG: http://localhost:5000 "POST /api/projects/interior_lenny/operations HTTP/1.1" 200 204
DEBUG: Response <RestApiResponse [200]>
INFO: Product 'textureMain.Table.Color' version 16 written to database..
DEBUG: Integrating source files to destination ...
DEBUG: Checking file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l\FrenchTable_UVTiles_Table_Color.1001.png -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Table.Color\v016\il_asset_textureMain.Table.Color_v016.1001.png
DEBUG: Checking file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l\FrenchTable_UVTiles_Table_Color.1002.png -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Table.Color\v016\il_asset_textureMain.Table.Color_v016.1002.png
DEBUG: Checking file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l\FrenchTable_UVTiles_Table_Color.1011.png -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Table.Color\v016\il_asset_textureMain.Table.Color_v016.1011.png
DEBUG: Checking file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l\FrenchTable_UVTiles_Table_Color.1012.png -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Table.Color\v016\il_asset_textureMain.Table.Color_v016.1012.png
DEBUG: Checking file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_3zw_ye5n\FrenchTable_UVTiles_Table_Color.1011_thumb.jpg -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Table.Color\v016\il_asset_textureMain.Table.Color_v016_thumbnail.jpg
DEBUG: Copying file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l\FrenchTable_UVTiles_Table_Color.1001.png -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Table.Color\v016\il_asset_textureMain.Table.Color_v016.1001.png
DEBUG: Copying file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l\FrenchTable_UVTiles_Table_Color.1002.png -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Table.Color\v016\il_asset_textureMain.Table.Color_v016.1002.png
DEBUG: Copying file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l\FrenchTable_UVTiles_Table_Color.1011.png -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Table.Color\v016\il_asset_textureMain.Table.Color_v016.1011.png
DEBUG: Copying file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l\FrenchTable_UVTiles_Table_Color.1012.png -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Table.Color\v016\il_asset_textureMain.Table.Color_v016.1012.png
DEBUG: Copying file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_3zw_ye5n\FrenchTable_UVTiles_Table_Color.1011_thumb.jpg -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Table.Color\v016\il_asset_textureMain.Table.Color_v016_thumbnail.jpg
DEBUG: Backed up existing files: []
DEBUG: Transferred files: ['D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.Table.Color\\v016\\il_asset_textureMain.Table.Color_v016.1001.png', 'D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.Table.Color\\v016\\il_asset_textureMain.Table.Color_v016.1002.png', 'D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.Table.Color\\v016\\il_asset_textureMain.Table.Color_v016.1011.png', 'D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.Table.Color\\v016\\il_asset_textureMain.Table.Color_v016.1012.png', 'D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.Table.Color\\v016\\il_asset_textureMain.Table.Color_v016_thumbnail.jpg']
DEBUG: Retrieving Representation Site Sync information ...
DEBUG: [{'id': '40d79b08-ef7c-4f3f-9cbc-af58fcc1b736', 'entity_type': 'representation', 'project_name': 'interior_lenny', 'operation': 'create', 'data': {'id': '89dbe0aa764d11efb8ca48e7daf48e22', 'versionId': '89d34f30764d11ef90c248e7daf48e22', 'files': [{'id': '89f7c4eb764d11efae6c48e7daf48e22', 'name': 'il_asset_textureMain.Table.Color_v016.1001.png', 'path': '{root[work]}/interior_lenny/lenny_bedroom/asset/publish/image/textureMain.Table.Color/v016/il_asset_textureMain.Table.Color_v016.1001.png', 'size': 1616972, 'hash': 'il_asset_textureMain,Table,Color_v016,1001,png|1726726083,41316|1616972', 'hash_type': 'op3'}, {'id': '89f7ec02764d11efaee648e7daf48e22', 'name': 'il_asset_textureMain.Table.Color_v016.1002.png', 'path': '{root[work]}/interior_lenny/lenny_bedroom/asset/publish/image/textureMain.Table.Color/v016/il_asset_textureMain.Table.Color_v016.1002.png', 'size': 101111, 'hash': 'il_asset_textureMain,Table,Color_v016,1002,png|1726726083,0776045|101111', 'hash_type': 'op3'}, {'id': '89f7ec03764d11ef881d48e7daf48e22', 'name': 'il_asset_textureMain.Table.Color_v016.1011.png', 'path': '{root[work]}/interior_lenny/lenny_bedroom/asset/publish/image/textureMain.Table.Color/v016/il_asset_textureMain.Table.Color_v016.1011.png', 'size': 9667153, 'hash': 'il_asset_textureMain,Table,Color_v016,1011,png|1726726083,4813733|9667153', 'hash_type': 'op3'}, {'id': '89f7ec04764d11ef8b2148e7daf48e22', 'name': 'il_asset_textureMain.Table.Color_v016.1012.png', 'path': '{root[work]}/interior_lenny/lenny_bedroom/asset/publish/image/textureMain.Table.Color/v016/il_asset_textureMain.Table.Color_v016.1012.png', 'size': 214737, 'hash': 'il_asset_textureMain,Table,Color_v016,1012,png|1726726083,0812023|214737', 'hash_type': 'op3'}], 'name': 'png', 'data': {'context': {'root': {'work': 'D:/sh_boss_proj'}, 'project': {'name': 'interior_lenny', 'code': 'il'}, 'hierarchy': 'lenny_bedroom', 'folder': {'name': 'asset', 'type': 'Asset', 'path': '/lenny_bedroom/asset'}, 'product': {'name': 'textureMain.Table.Color', 'type': 'image'}, 'version': 16, 'udim': '1001', 'ext': 'png', 'task': {'name': 'art', 'type': 'Art', 'short': 'art'}, 'representation': 'png', 'username': 'admin', 'user': 'admin', 'asset': 'asset', 'subset': 'textureMain.Table.Color', 'family': 'image'}}, 'attrib': {'path': 'D:/sh_boss_proj/interior_lenny/lenny_bedroom/asset/publish/image/textureMain.Table.Color/v016/il_asset_textureMain.Table.Color_v016.1001.png', 'template': '{root[work]}/{project[name]}/{hierarchy}/{folder[name]}/publish/{product[type]}/{product[name]}/v{version:0>3}/{project[code]}_{folder[name]}_{product[name]}_v{version:0>3}<_{output}><.{frame:0>4}><.{udim}>.{ext}'}}}, {'id': '8c6da005-88df-4f4c-9908-d3e94fba3143', 'entity_type': 'representation', 'project_name': 'interior_lenny', 'operation': 'create', 'data': {'id': '89dbf4fe764d11efaa4948e7daf48e22', 'versionId': '89d34f30764d11ef90c248e7daf48e22', 'files': [{'id': '89f7ec05764d11efb0c848e7daf48e22', 'name': 'il_asset_textureMain.Table.Color_v016_thumbnail.jpg', 'path': '{root[work]}/interior_lenny/lenny_bedroom/asset/publish/image/textureMain.Table.Color/v016/il_asset_textureMain.Table.Color_v016_thumbnail.jpg', 'size': 795556, 'hash': 'il_asset_textureMain,Table,Color_v016_thumbnail,jpg|1726726084,6505342|795556', 'hash_type': 'op3'}], 'name': 'thumbnail', 'data': {'context': {'root': {'work': 'D:/sh_boss_proj'}, 'project': {'name': 'interior_lenny', 'code': 'il'}, 'hierarchy': 'lenny_bedroom', 'folder': {'name': 'asset', 'type': 'Asset', 'path': '/lenny_bedroom/asset'}, 'product': {'name': 'textureMain.Table.Color', 'type': 'image'}, 'version': 16, 'output': 'thumbnail', 'ext': 'jpg', 'task': {'name': 'art', 'type': 'Art', 'short': 'art'}, 'representation': 'thumbnail', 'username': 'admin', 'user': 'admin', 'asset': 'asset', 'subset': 'textureMain.Table.Color', 'family': 'image'}}, 'attrib': {'path': 'D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.Table.Color\\v016\\il_asset_textureMain.Table.Color_v016_thumbnail.jpg', 'template': '{root[work]}/{project[name]}/{hierarchy}/{folder[name]}/publish/{product[type]}/{product[name]}/v{version:0>3}/{project[code]}_{folder[name]}_{product[name]}_v{version:0>3}<_{output}><.{frame:0>4}><.{udim}>.{ext}'}}}]
DEBUG: Executing [POST] projects/interior_lenny/operations
DEBUG: http://localhost:5000 "POST /api/projects/interior_lenny/operations HTTP/1.1" 200 391
DEBUG: Response <RestApiResponse [200]>
INFO: Registered 2 representations: png, thumbnail
DEBUG: Establishing staging directory @ C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l
DEBUG: Looking for matching profile for: hosts: "substancepainter" | product_types: "image" | task_names: "art" | task_types: "Art"
DEBUG: "image" not found in "product_types": ['review', 'render', 'prerender']
DEBUG: "substancepainter" not found in "hosts": ['standalonepublisher']
DEBUG: "substancepainter" not found in "hosts": ['maya']
DEBUG: "substancepainter" not found in "hosts": ['traypublisher']
DEBUG: "substancepainter" not found in "hosts": ['max']
DEBUG: Profile selected: {'product_types': [], 'hosts': [], 'task_types': [], 'task_names': [], 'template_name': 'default'}
DEBUG: Product: textureMain.Tableware.Color
DEBUG: http://localhost:5000 "POST /graphql HTTP/1.1" 200 446
DEBUG: Response <RestApiResponse [200]>
DEBUG: Prepared product: textureMain.Tableware.Color
DEBUG: http://localhost:5000 "POST /graphql HTTP/1.1" 200 105
DEBUG: Response <RestApiResponse [200]>
DEBUG: Source: {root[work]}/interior_lenny/lenny_bedroom/asset/work/art/il_asset_art_v103.spp
DEBUG: Creating new version ...
DEBUG: Prepared version: v016
DEBUG: http://localhost:5000 "POST /graphql HTTP/1.1" 200 112
DEBUG: Response <RestApiResponse [200]>
DEBUG: Anatomy template name: default
DEBUG: Anatomy template name: default
DEBUG: Executing [POST] projects/interior_lenny/operations
DEBUG: http://localhost:5000 "POST /api/projects/interior_lenny/operations HTTP/1.1" 200 204
DEBUG: Response <RestApiResponse [200]>
INFO: Product 'textureMain.Tableware.Color' version 16 written to database..
DEBUG: Integrating source files to destination ...
DEBUG: Checking file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l\FrenchTable_UVTiles_Tableware_Color.1001.png -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Tableware.Color\v016\il_asset_textureMain.Tableware.Color_v016.1001.png
DEBUG: Checking file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_e8p8p2bn\FrenchTable_UVTiles_Tableware_Color.1001_thumb.jpg -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Tableware.Color\v016\il_asset_textureMain.Tableware.Color_v016_thumbnail.jpg
DEBUG: Copying file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l\FrenchTable_UVTiles_Tableware_Color.1001.png -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Tableware.Color\v016\il_asset_textureMain.Tableware.Color_v016.1001.png
DEBUG: Copying file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_e8p8p2bn\FrenchTable_UVTiles_Tableware_Color.1001_thumb.jpg -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.Tableware.Color\v016\il_asset_textureMain.Tableware.Color_v016_thumbnail.jpg
DEBUG: Backed up existing files: []
DEBUG: Transferred files: ['D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.Tableware.Color\\v016\\il_asset_textureMain.Tableware.Color_v016.1001.png', 'D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.Tableware.Color\\v016\\il_asset_textureMain.Tableware.Color_v016_thumbnail.jpg']
DEBUG: Retrieving Representation Site Sync information ...
DEBUG: [{'id': '0845e5b2-73f4-48f6-ac5c-22ac6ca5f0a0', 'entity_type': 'representation', 'project_name': 'interior_lenny', 'operation': 'create', 'data': {'id': '8a2668fe764d11efb41a48e7daf48e22', 'versionId': '8a1bb867764d11efa33a48e7daf48e22', 'files': [{'id': '8a333a55764d11ef91d748e7daf48e22', 'name': 'il_asset_textureMain.Tableware.Color_v016.1001.png', 'path': '{root[work]}/interior_lenny/lenny_bedroom/asset/publish/image/textureMain.Tableware.Color/v016/il_asset_textureMain.Tableware.Color_v016.1001.png', 'size': 3902438, 'hash': 'il_asset_textureMain,Tableware,Color_v016,1001,png|1726726083,2627575|3902438', 'hash_type': 'op3'}], 'name': 'png', 'data': {'context': {'root': {'work': 'D:/sh_boss_proj'}, 'project': {'name': 'interior_lenny', 'code': 'il'}, 'hierarchy': 'lenny_bedroom', 'folder': {'name': 'asset', 'type': 'Asset', 'path': '/lenny_bedroom/asset'}, 'product': {'name': 'textureMain.Tableware.Color', 'type': 'image'}, 'version': 16, 'udim': '1001', 'ext': 'png', 'task': {'name': 'art', 'type': 'Art', 'short': 'art'}, 'representation': 'png', 'username': 'admin', 'user': 'admin', 'asset': 'asset', 'subset': 'textureMain.Tableware.Color', 'family': 'image'}}, 'attrib': {'path': 'D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.Tableware.Color\\v016\\il_asset_textureMain.Tableware.Color_v016.1001.png', 'template': '{root[work]}/{project[name]}/{hierarchy}/{folder[name]}/publish/{product[type]}/{product[name]}/v{version:0>3}/{project[code]}_{folder[name]}_{product[name]}_v{version:0>3}<_{output}><.{frame:0>4}><.{udim}>.{ext}'}}}, {'id': '8c5e6fb2-876f-4c89-ae29-81e53de7130f', 'entity_type': 'representation', 'project_name': 'interior_lenny', 'operation': 'create', 'data': {'id': '8a267d1a764d11efb47e48e7daf48e22', 'versionId': '8a1bb867764d11efa33a48e7daf48e22', 'files': [{'id': '8a333a56764d11ef9bec48e7daf48e22', 'name': 'il_asset_textureMain.Tableware.Color_v016_thumbnail.jpg', 'path': '{root[work]}/interior_lenny/lenny_bedroom/asset/publish/image/textureMain.Tableware.Color/v016/il_asset_textureMain.Tableware.Color_v016_thumbnail.jpg', 'size': 469088, 'hash': 'il_asset_textureMain,Tableware,Color_v016_thumbnail,jpg|1726726085,164069|469088', 'hash_type': 'op3'}], 'name': 'thumbnail', 'data': {'context': {'root': {'work': 'D:/sh_boss_proj'}, 'project': {'name': 'interior_lenny', 'code': 'il'}, 'hierarchy': 'lenny_bedroom', 'folder': {'name': 'asset', 'type': 'Asset', 'path': '/lenny_bedroom/asset'}, 'product': {'name': 'textureMain.Tableware.Color', 'type': 'image'}, 'version': 16, 'output': 'thumbnail', 'ext': 'jpg', 'task': {'name': 'art', 'type': 'Art', 'short': 'art'}, 'representation': 'thumbnail', 'username': 'admin', 'user': 'admin', 'asset': 'asset', 'subset': 'textureMain.Tableware.Color', 'family': 'image'}}, 'attrib': {'path': 'D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.Tableware.Color\\v016\\il_asset_textureMain.Tableware.Color_v016_thumbnail.jpg', 'template': '{root[work]}/{project[name]}/{hierarchy}/{folder[name]}/publish/{product[type]}/{product[name]}/v{version:0>3}/{project[code]}_{folder[name]}_{product[name]}_v{version:0>3}<_{output}><.{frame:0>4}><.{udim}>.{ext}'}}}]
DEBUG: Executing [POST] projects/interior_lenny/operations
DEBUG: http://localhost:5000 "POST /api/projects/interior_lenny/operations HTTP/1.1" 200 391
DEBUG: Response <RestApiResponse [200]>
INFO: Registered 2 representations: png, thumbnail
DEBUG: Establishing staging directory @ C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l
DEBUG: Looking for matching profile for: hosts: "substancepainter" | product_types: "image" | task_names: "art" | task_types: "Art"
DEBUG: "image" not found in "product_types": ['review', 'render', 'prerender']
DEBUG: "substancepainter" not found in "hosts": ['standalonepublisher']
DEBUG: "substancepainter" not found in "hosts": ['maya']
DEBUG: "substancepainter" not found in "hosts": ['traypublisher']
DEBUG: "substancepainter" not found in "hosts": ['max']
DEBUG: Profile selected: {'product_types': [], 'hosts': [], 'task_types': [], 'task_names': [], 'template_name': 'default'}
DEBUG: Product: textureMain.TablewareTransparent.Color
DEBUG: http://localhost:5000 "POST /graphql HTTP/1.1" 200 457
DEBUG: Response <RestApiResponse [200]>
DEBUG: Prepared product: textureMain.TablewareTransparent.Color
DEBUG: http://localhost:5000 "POST /graphql HTTP/1.1" 200 105
DEBUG: Response <RestApiResponse [200]>
DEBUG: Source: {root[work]}/interior_lenny/lenny_bedroom/asset/work/art/il_asset_art_v103.spp
DEBUG: Creating new version ...
DEBUG: Prepared version: v016
DEBUG: http://localhost:5000 "POST /graphql HTTP/1.1" 200 112
DEBUG: Response <RestApiResponse [200]>
DEBUG: Anatomy template name: default
DEBUG: Anatomy template name: default
DEBUG: Executing [POST] projects/interior_lenny/operations
DEBUG: http://localhost:5000 "POST /api/projects/interior_lenny/operations HTTP/1.1" 200 204
DEBUG: Response <RestApiResponse [200]>
INFO: Product 'textureMain.TablewareTransparent.Color' version 16 written to database..
DEBUG: Integrating source files to destination ...
DEBUG: Checking file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l\FrenchTable_UVTiles_TablewareTransparent_Color.1001.png -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.TablewareTransparent.Color\v016\il_asset_textureMain.TablewareTransparent.Color_v016.1001.png
DEBUG: Checking file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_l9x23ghw\FrenchTable_UVTiles_TablewareTransparent_Color.1001_thumb.jpg -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.TablewareTransparent.Color\v016\il_asset_textureMain.TablewareTransparent.Color_v016_thumbnail.jpg
DEBUG: Copying file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_blnctn4l\FrenchTable_UVTiles_TablewareTransparent_Color.1001.png -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.TablewareTransparent.Color\v016\il_asset_textureMain.TablewareTransparent.Color_v016.1001.png
DEBUG: Copying file ... C:\Users\Kayla\AppData\Local\Temp\pyblish_tmp_l9x23ghw\FrenchTable_UVTiles_TablewareTransparent_Color.1001_thumb.jpg -> D:\sh_boss_proj\interior_lenny\lenny_bedroom\asset\publish\image\textureMain.TablewareTransparent.Color\v016\il_asset_textureMain.TablewareTransparent.Color_v016_thumbnail.jpg
DEBUG: Backed up existing files: []
DEBUG: Transferred files: ['D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.TablewareTransparent.Color\\v016\\il_asset_textureMain.TablewareTransparent.Color_v016.1001.png', 'D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.TablewareTransparent.Color\\v016\\il_asset_textureMain.TablewareTransparent.Color_v016_thumbnail.jpg']
DEBUG: Retrieving Representation Site Sync information ...
DEBUG: [{'id': '249ac65d-a359-431c-9a7b-af2b194f8857', 'entity_type': 'representation', 'project_name': 'interior_lenny', 'operation': 'create', 'data': {'id': '8a6276db764d11ef97a048e7daf48e22', 'versionId': '8a56c13c764d11ef950f48e7daf48e22', 'files': [{'id': '8a707585764d11ef8e5548e7daf48e22', 'name': 'il_asset_textureMain.TablewareTransparent.Color_v016.1001.png', 'path': '{root[work]}/interior_lenny/lenny_bedroom/asset/publish/image/textureMain.TablewareTransparent.Color/v016/il_asset_textureMain.TablewareTransparent.Color_v016.1001.png', 'size': 1313611, 'hash': 'il_asset_textureMain,TablewareTransparent,Color_v016,1001,png|1726726083,297265|1313611', 'hash_type': 'op3'}], 'name': 'png', 'data': {'context': {'root': {'work': 'D:/sh_boss_proj'}, 'project': {'name': 'interior_lenny', 'code': 'il'}, 'hierarchy': 'lenny_bedroom', 'folder': {'name': 'asset', 'type': 'Asset', 'path': '/lenny_bedroom/asset'}, 'product': {'name': 'textureMain.TablewareTransparent.Color', 'type': 'image'}, 'version': 16, 'udim': '1001', 'ext': 'png', 'task': {'name': 'art', 'type': 'Art', 'short': 'art'}, 'representation': 'png', 'username': 'admin', 'user': 'admin', 'asset': 'asset', 'subset': 'textureMain.TablewareTransparent.Color', 'family': 'image'}}, 'attrib': {'path': 'D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.TablewareTransparent.Color\\v016\\il_asset_textureMain.TablewareTransparent.Color_v016.1001.png', 'template': '{root[work]}/{project[name]}/{hierarchy}/{folder[name]}/publish/{product[type]}/{product[name]}/v{version:0>3}/{project[code]}_{folder[name]}_{product[name]}_v{version:0>3}<_{output}><.{frame:0>4}><.{udim}>.{ext}'}}}, {'id': '43180971-9cc6-4dc6-85ad-0d47a8ba5b95', 'entity_type': 'representation', 'project_name': 'interior_lenny', 'operation': 'create', 'data': {'id': '8a6276dc764d11efa13148e7daf48e22', 'versionId': '8a56c13c764d11ef950f48e7daf48e22', 'files': [{'id': '8a70b0df764d11ef877148e7daf48e22', 'name': 'il_asset_textureMain.TablewareTransparent.Color_v016_thumbnail.jpg', 'path': '{root[work]}/interior_lenny/lenny_bedroom/asset/publish/image/textureMain.TablewareTransparent.Color/v016/il_asset_textureMain.TablewareTransparent.Color_v016_thumbnail.jpg', 'size': 170660, 'hash': 'il_asset_textureMain,TablewareTransparent,Color_v016_thumbnail,jpg|1726726085,6304379|170660', 'hash_type': 'op3'}], 'name': 'thumbnail', 'data': {'context': {'root': {'work': 'D:/sh_boss_proj'}, 'project': {'name': 'interior_lenny', 'code': 'il'}, 'hierarchy': 'lenny_bedroom', 'folder': {'name': 'asset', 'type': 'Asset', 'path': '/lenny_bedroom/asset'}, 'product': {'name': 'textureMain.TablewareTransparent.Color', 'type': 'image'}, 'version': 16, 'output': 'thumbnail', 'ext': 'jpg', 'task': {'name': 'art', 'type': 'Art', 'short': 'art'}, 'representation': 'thumbnail', 'username': 'admin', 'user': 'admin', 'asset': 'asset', 'subset': 'textureMain.TablewareTransparent.Color', 'family': 'image'}}, 'attrib': {'path': 'D:\\sh_boss_proj\\interior_lenny\\lenny_bedroom\\asset\\publish\\image\\textureMain.TablewareTransparent.Color\\v016\\il_asset_textureMain.TablewareTransparent.Color_v016_thumbnail.jpg', 'template': '{root[work]}/{project[name]}/{hierarchy}/{folder[name]}/publish/{product[type]}/{product[name]}/v{version:0>3}/{project[code]}_{folder[name]}_{product[name]}_v{version:0>3}<_{output}><.{frame:0>4}><.{udim}>.{ext}'}}}]
DEBUG: Executing [POST] projects/interior_lenny/operations
DEBUG: http://localhost:5000 "POST /api/projects/interior_lenny/operations HTTP/1.1" 200 391
DEBUG: Response <RestApiResponse [200]>
INFO: Registered 2 representations: png, thumbnail```

@BigRoy
Copy link
Contributor Author

BigRoy commented Sep 19, 2024

@moonyuet That's correct - I'm not sure what to do if no colorspace data is detected on the file. What "color conversion" do I apply in maketx? None? The .tx files are intended to be in the colorspace of the renderer itself so without knowing the image colorspace just assuming the image is linear seems a bit odd. That's why I decided to skip conversions.

I could add a warning log if no conversions occurred at all for the instance? For now I've at least added debug logs.

@moonyuet
Copy link
Member

@moonyuet That's correct - I'm not sure what to do if no colorspace data is detected on the file. What "color conversion" do I apply in maketx? None? The .tx files are intended to be in the colorspace of the renderer itself so without knowing the image colorspace just assuming the image is linear seems a bit odd. That's why I decided to skip conversions.

I could add a warning log if no conversions occurred at all for the instance? For now I've at least added debug logs.

maybe adding the warning log would be helpful, just so the users know no colorspace data found meaning no tx files exported
I also find out that the project configuration can be the root cause of no colorspace data found. I actually saved the workfile from the existing project. And the project configuration doesn't set up accordingly to the colorspace data(it could be the API limitation). We can actually mention the similar message which informs the users to check if they are using OCIO in the colorspace management in the project configuration.

I reset another project configuration to test, the tx file is published successfully.
Will approve after the warning message has been added:)
image

@BigRoy
Copy link
Contributor Author

BigRoy commented Sep 20, 2024

Will approve after the warning message has been added:)

Added with 46dc7f3 and apparently some debug logs I added recently were also not pushed yet.

@moonyuet can you review again?

@moonyuet
Copy link
Member

Looks good now. Thank you!

@BigRoy BigRoy merged commit d575576 into develop Sep 20, 2024
1 check passed
@BigRoy BigRoy deleted the enhancement/AY-6681_extract_maketx branch September 20, 2024 09:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
sponsored This is directly sponsored by a client or community member type: enhancement Improvement of existing functionality or minor addition
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants