Home  Previous Next

MG-Picker工具搜索3个基本路径及其它多个自定义路径来取得匹配的picker:

直接保存在Maya场景内部.
Picker数据可以以节点方式存储在Maya场景内部。这个节点采用Maya内置节点类型 "subdivSurfaceVarGroup";
picker节点所用到的图片,一般存储在Maya场景文件所在目录下的pickerimages目录下。.
 

保存picker文件路径到Maya场景内部.
从MG-Picker工作室v1.7开始,Picker数据可以只存储picker文件路径到节点。这个节点采用Maya内置节点类型 "subdivSurfaceVarGroup";
实际的picker内容等仍然以独立文件方式存储在某个地方,而根据节点里提供的文件路径属性,则可以找到并加载这个picker文件.
重要的是,这个文件路径还支持环境变量,用$变量名称或${变量名称}来表示。提供了三个预置的变量:

${M_PROJ_DIR}: 当前Maya工程目录

${M_CURRENT_SCENE_DIR}: 当前Maya场景目录

${M_CURRENT_ASSET_DIR}: 当前资产场景目录。即使资产被reference,也会是资产本身的场景所在目录而不是当前场景目录。

例子:

$M_PROJ_DIR/picker/pickerName/pickerfile.mgpkr

${M_SCENE_DIR}_picker/pickerName/pickerfile.mgpkr

D:/workarea/projects/${MyProjectName}/pickerName/pickerfile.mgpkr

/path/to/$MyProjectName/$MyPickerName/${MyPickerName}.mgpkr
 

Maya场景目录下的pickers子目录.
你可以选择将picker发布到Maya场景所在目录里的pickers子目录。即使这个Maya场景被reference,这个目录也将被自动搜索到。
 

Maya用户程序目录下的MG_PickerData目录下的当前Picker工程目录.
在Windows操作系统里,这个路径实际上是我的文档/Maya/MG_PickerData/,在里面的当前picker工程目录,将会被自动搜索到。
 

其它在MG-Picker工作室配置窗口里添加的用户搜索路径。

lightbulb 这些搜索路径设置及搜索优先级设置实际被存储在一个叫 "SearchingPathConfig.ini"的文 件,文件位置在"Maya/版本/scripts/MG-PickerStudio/MGPicker_UserConfig" 目录里。

如果要线上所有人采用同样的搜索设置,则可以分享这个文件。
 

如果在线上分发picker文件、节点

既然现在您已经知道MG-Picker工作室在搜索picker时都会搜索哪些路径,那么您已经知道如何在线上分发这些picker文件了。

不过提醒一下,只有场景内picker节点才会被随场景打开而自动搜索并打开picker。
如果上面的几种发布方式都不太理想,还有一种终级手段:
 

使用编程手段,这是最灵活的自定义手段,但需要了解一点python编程知识.

你可以定义两个分别从 MGP.loader.MGPickerRigListerBase  和 MGP.loader.MGPickerLoaderBase 派生的类 .

MGPickerRigListerBase 用来列出当前Maya场景里的资产名称,通常是角色的namespace。也可以根据一定的类别来列出, 如角色,道具,场景等。

MGPickerLoaderBase 用来返回特定资产名称(角色的namespace)所对应的picker文件的绝对路径.

通过这两个类,你让MG-Picker工作室可以一下子打开当前场景的所有对应picker文件,或根据所选的rig的一部分,来加载对应的picker文件。

点击 这里 来了解更多信息。

 

Picker使用的图片的便携性:

picker对象有多个属性使用到图片,比如面板背景图片,选择按钮,命令按钮滑条滑杠使用的图片,菜单所用图标等。

MG-Picker工作室在您设计过程中,尽可能保持图片路径都是相对的以使它们便携。

对于picker文件来讲,它尽可能将图片复制到picker文件同样的目录下,然后使图片路径变为相对的。

对于picker节点来讲,它尽可能将图片复制到Maya场景目录下的pickerimages目录下,然后使图片路径变相对的。

相对应的,对于一个图片相对路径,MG-Picker工作室将搜索下面2个地方来在后台解析成绝对路径以便显示图片:

如果是外部picker文件,则查找picker文件所在的目录,如果是场景内picker节点,则搜索Maya场景目录下的pickerimages目录,如果这个场景被reference则搜索这个reference asset所指向的目录下的pickerimages目录。

lightbulb 如果打开一个已存在的picker节点,并指定了一些图标图片,这些图片的地址仍会是绝对地址。

要复制这些图片到相应目录并转换路径为相对的,则选择Picker菜单下的"处理图片为相对路径"。

Home Previous Next