Shotgun ToolKitMaya load and update Substance Painter Textures概述substance painter 发布的贴图形式如下图一个带版本的文件夹里存放着贴图文件在maya中原生态的shotgun loader 和shotgun breakdown无法加载和更新 subtance painter 贴图需要额外的配置才行。经过一段时间的研究,实现了maya加载substancepainter 的贴图文件并实现了版本管理现把相关配置分享给大家。配置tk-substancepainter.url: https://github.com/diegogarciahuerta/tk-substancepainter 配置方法tk-substancepainter的初始配置根据路径中帮助文档就可以了这里不再赘述。Part1:load Substance Painter Textures加载 Substance Painter 发布的贴图Substance Painter 发布的贴图类型有两种如下图一种是“Texture”发布的是单个的文件一种是“Texture Folder”发布多个贴图文件并存放在一个带版本号的文件夹。本文中要介绍的就是“Texture Folder” 这种类型的加载和更新从template.yml中也可以看出自定义配置配置maya loader:在tk-multi-loader2.yml中找到settings.tk-multi-loader2.maya然后在其中添加 Texture Folder的类型添加之后打开tk-maya_actions.pymaya如何加载其他环节的文件的功能在这里设置默认在config/hooks/maya-multi-loader2Maya在加载贴图文件时会为当前贴图创建一个Texture Node是一个file节点如果加载的路径是一个文件夹的话无法正确创建Texture Node而需求是需要把文件夹的每个贴图加载并创建Texture Node下面直接上图看如何修改打开tk-maya_actions.py根据图中示意找到_create_texture_node可以看到默认直接输入路径如果是一个文件夹路径就会创建出不正确的Texture Node.思路如果当前publish type为Texture Folder则判断加载的是一个文件夹根据需求需把文件夹内的贴图文件都加载进来并创建Texture Node。①重写_create_texture_node函数从sg_publish_data中可以获取published_file_type.②添加_create_texture_nodes_byfolder()用来批量创建Texture Node.备注substance painter 中导出贴图时要勾选Export shaders parameters 这样导出的文件中会包含一个json文件从这个文件中可以分出当前导出的是普通的贴图还是UDIM的贴图。至此加载substancepainter 发布的贴图的功能就配置完成了。Part2:update Substance Painter Textureshttps://blog.csdn.net/qq_20672297/article/details/100184687