如何使用mel脚本打开Game Exporter?

问题描述 投票:0回答:3

我经常使用 Game Exporter 导出我的动画。但我厌倦了从主菜单中选择“文件”>“游戏导出器”。

我可以使用mel脚本打开Game Exporter吗?或者更好的是,我可以使用 mel 脚本自动生成 Game Exporter 的输入(例如:自动输入导出路径、动画名称、仅导出选择,...)?

maya mel
3个回答
2
投票

我可以使用mel脚本打开Game Exporter吗?

打开游戏导出器

gameFbxExporter;

或者更好的是,我可以使用 mel 脚本自动生成 输入Game Exporter(例如:自动输入导出路径, 动画名称,仅导出选择,...)?

导出路径

(设置为“E:/aaa”)

setAttr -type "string" gameExporterPreset2.exportPath "E:/aaa";

动画名称

(设置为“aaa”)

gameExp_SetUniqueAnimationClipName 0"aaa"gameExporterWindow|gameExporterTabFormLayout|gameExporterTabLayout|gameExporterAnimationTab|anim_gameExporterMainFormLayout|anim_gameExporterExportTypeFormLayout|formLayout344|anim_gameFbxExporterAnimClipFrameLayout|anim_gameFbxExporterAnimClipFormLayout|anim_gameFbxExporterScrollLayout|formLayout345|textField20;

但这并不是真正有效,因为硬代码:

formLayout344|
formLayout345|textField20
。必须找到一种方法让它变得动态。

所以用这个代替

setAttr -type "string" gameExporterPreset2.exportFilename "aaa";

仅导出选择

setAttr("gameExporterPreset2.exportSetIndex") 2;
gameExp_CreateExportTypeUIComponents;

我是这样算的:我检查Mel的所有记录。


0
投票

刷新以更新动画剪辑名称

from maya import cmds
from maya import mel as mm

# setting the animation clip name, this is 0 indexed    
cmds.setAttr('gameExporterPreset2.animClips[0].animClipName', 'clipNameHere', type='string')

# For changes to Animation clip Name only we need to close and reopen the window
if cmds.window("gameExporterWindow", exists=True):
    print 'exists'
    cmds.deleteUI("gameExporterWindow")

else:
    pass

mm.eval('gameFbxExporter;')

0
投票

我在梅尔做了以下工作,一切正常,但是

// Get start and end frames
int $startFrame = `playbackOptions -q -min`;
int $endFrame = `playbackOptions -q -max`;


setAttr  -type "string" gameExporterPreset2.animClips[0].animClipName $baseName;
gameExp_CreateExportTypeUIComponents;
setAttr  -type "string" gameExporterPreset2.animClips[0].animClipStart $startFrame;
gameExp_CreateExportTypeUIComponents;
setAttr  -type "string" gameExporterPreset2.animClips[0].animClipEnd $endFrame;
gameExp_CreateExportTypeUIComponents;

面临另一个问题,我的开始帧和结束帧为 0,因为它未声明。

enter image description here

我似乎也无法为clipstart、clipend设置值。

需要一些帮助。

© www.soinside.com 2019 - 2024. All rights reserved.