问题标签 [maya]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
3487 浏览

python - 使用外部 GUI 库在 Autodesk Maya 中制作用户界面

我在 Autodesk Maya 中开发工具。我构建的许多工具都有简单的窗口 GUI 供动画师和建模师使用。这些 GUI 通常包含您通常希望在任何基本窗口中看到的内容;标签、列表、菜单、按钮、文本字段等。但是,您可以使用可用工具构建的 UI 的复杂性受到限制,特别是可用小部件的类型。

我有兴趣使用一些更高级的 wxPython 小部件,例如 ListView(网格)、Tree 等。这将涉及使用完整的 wxFrame(窗口)来显示整个 UI,这实际上意味着该窗口将不再与玛雅联系在一起。不是破坏交易,但这意味着当 Maya 最小化时,窗口不会效仿。

我以前用 tkinter 作为测试尝试过这样的事情,但发现它需要一个 MainLoop 才能在自己的线程中运行。这是合乎逻辑的,但在我的情况下,它与 Maya 自己的线程冲突,基本上使 Maya 挂起,直到窗口关闭。这是因为 Maya 在主 Maya GUI 共享的单个线程中运行所有脚本,无论是 MEL 还是 Python。这是为了防止一个脚本在另一个脚本尝试对同一对象执行操作时删除一个对象。

wxPython 有同样的“mainloop”方法。我想知道是否有任何方法可以让它在 Maya 中工作?

0 投票
4 回答
4982 浏览

python - 如何使用 MEL 或 Python 修改 Maya 中的现有面板?

多年来,我一直在使用 MEL 和 Python 在 Maya 中编写工具。除了一个领域外,我认为自己是 Maya 自定义窗口/gui 设计方面的专家;修改现有的面板和编辑器。

通常,我正在构建需要完全自定义 UI 的工具,因此我习惯于从头开始构建它们。但是,最近我发现自己想在 Maya 的图层编辑器中添加一些额外的功能。我看过解释如何做到这一点的教程,但现在我想做,我找不到。

链接到教程或简短的代码片段让我开始会很棒。我只需要知道如何找到图层编辑器/面板,例如,向其中添加按钮或文本字段。

0 投票
1 回答
5059 浏览

python - 在 Autodesk Maya 等 Python 环境中使用 Nose 运行单元测试?

我想开始为我的 Maya 脚本创建单元测试。这些脚本必须在 Maya 环境中运行并依赖于maya.cmds模块命名空间。

如何在 Maya 等运行环境中运行鼻子测试?

0 投票
1 回答
8650 浏览

python - 如何在不知道约束类型的情况下查询任何约束的目标列表?

在 Maya 中,我有一个由以下代码收集的约束列表。我想迭代约束并查询每个约束的目标:

问题是,没有通用constraint的命令来操作所有的约束。相反,每个约束都有自己独特的 MEL 命令与之关联。

有什么方法可以查询约束上的目标,而不必键入检查每个约束并繁琐地运行其各自的 MEL 命令?

0 投票
2 回答
1350 浏览

python - 为什么 Maya 2009 TreeView 控件在拖动时会出现语法错误?

我在 Maya 2009 中使用 TreeView 控件,但在拖放时出现语法错误。我的代码如下(为简洁起见):

当我拖放元素时,我会在控制台中执行以下命令:

并得到以下错误:

编辑:事实证明,我遇到的问题是由于 treeView 仍在其大多数事件回调上实现 MEL 函数调用。MEL 解释器在尝试将参数提供给命令名称时抛出上述错误。

0 投票
1 回答
1463 浏览

user-interface - 如何将 MEL UI 附加到 Maya 的 UV 纹理编辑器?

我确实知道如何创建 MEL UI 窗口并向其添加内容。我不知道如何将该 UI“固定”到 Maya 窗口,例如 UV 纹理编辑器。理想情况下,我希望能够控制我的 UI 附加到 UV 纹理编辑器的哪一侧,并让它随着窗口移动和最小化。这样的事情可能吗?

0 投票
3 回答
2791 浏览

import - 将 Maya ASCII 导入游戏

我目前正在为我的独立游戏创建一个基于导入的管道,使用 Maya ASCII .ma 作为源格式,我自己的物理和图形格式作为输出。我将在 Maya 中保留诸如运动范围属性之类的东西,例如铰链关节。需要大量调整的其他类型的参数最终位于单独的源文件中(可能是用于质量、弹簧常数、物理引擎强度等内容的 .ini)。

因此,输入是一个 .ma 和一个 .ini,而输出是一个 .physics 和几个 .mesh 文件(每个几何体/材料一个 .mesh 文件)。

我也可能会使用 Python 3.1 重新格式化数据,并且我已经找到了一些读取基本 Maya ASCII 的 LGPL 2.1 代码。我可能还会在开发过程中使用 Python 来启动平台。游戏是用 C++ 开发的。

在这一切中有什么你会建议反对的吗?可能有缺陷的事情的快速总结:

  • 基于进口的管道(不是基于出口)?
  • 玛雅(不是 3DS)?
  • Maya ASCII .ma(不是 .mb)?
  • .ini(不是 .xml)?
  • Maya 中的运动属性和 .ini 中的“freak-tweak”属性的分离(不是全部在 Maya 中)?
  • 用于构建数据的 Python 3.1(不是嵌入式 C++)?

编辑:如果您对如何实现物理/图形导入/导出工具链有更好的建议,我将不胜感激。

0 投票
2 回答
502 浏览

import - Maya .ma 矩阵比例转换

一个可能稍微偏离主题的主题,但 Maya 让我对特定比例的平移矩阵变换感到非常悲痛,我无处可去。

在 Maya 决定添加一个 .spt 属性(通常是 .spt 属性)之前,我的 Maya .ma (Maya ASCII) 导入器一切正常setAttr ".spt" -type "double3" 1 2 3 ;。从这个有点模糊的文档中,我得出了三个 .spt 值进入比例转换矩阵的结论。

我非常非常感谢您能给我的关于如何在我的矩阵转换中处理 .spt 的任何指示!

0 投票
2 回答
3388 浏览

maya - 如何在 Maya 中访问对象的注释字段

是否可以通过 Maya 脚本界面访问对象的“注释”字段?我试图让它在 Python 中工作,但我假设任何指向我需要在 API 中使用的类/函数的正确方向的指针都会帮助我。

0 投票
2 回答
1349 浏览

maya - MEL:如何选择特定 IK 控制柄的末端效应器?

每次我通过 MEL 在 Maya 中创建新的 IK 手柄时,它都会创建一个名为“effector1”或“effector2”的末端效应器,具体取决于我的场景中的内容。我不想依赖末端执行器的自动名称,所以我想知道是否有办法:

a) 在创建 IK 手柄时命名效应器,或者

b) 为 MEL 中的特定 IK 控制柄选择效应器。

任何帮助将不胜感激 - 谢谢!