问题标签 [maxscript]

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 投票
1 回答
451 浏览

maxscript - 访问生成的 pf 源的 particleIndex

在场景中创建 PF Source 节点时,我可以在 maxscript 中选择此系统并使用 for 循环和 pf.particleIndex 遍历所有粒子

但是,当我使用 maxscript 遍历场景中的几何体并为每个对象生成 PF 源时,pf.NumParticles() 返回 0 并且 pf.particleIndex = i 的 pf.particlePosition 返回 0 0 0 for coord.x, .y和.z

有没有办法,我不知道,刷新脚本中的 PF 源,以便它知道系统中有粒子。

0 投票
1 回答
3059 浏览

file-io - 使用 MaxScript 将行添加到文件

我有一个文件:

MaxScript我可以使用's轻松创建该文件format "..." to:file

但是如何在已经存在而不是空的文件中添加一些行

大多数情况下,我想添加以下my text

  1. 在指定文本出现之后(例如Some text,在新行之后)
  2. 在指定行(例如在空行 #4 并在其后添加新行)

如果不可能,那么也许我可以在文件中附加一些东西(写在之后Sum up)?


ps 我总是可以将整个文件读取到变量中,将我的文本添加到其中,然后保存文件。

但这并不是大文件的真正选择(我想让它更快)。

0 投票
1 回答
3131 浏览

maxscript - 在 MaxScript 中创建自己的(自定义)修改器

我想为对象创建自己的修改器。因此,当我选择对象时,转到Modify Panel并展开修改器列表,myModifier将显示出来。

简单的方法是什么?

0 投票
1 回答
1690 浏览

sublimetext2 - 崇高文本2中括号(括号)的智能缩进

我有一个非常好的设置,可以从 sublime text 2 内部编辑和运行 maxscript。

我最近一直想要的一件事是用普通圆括号模拟或复制大括号的行为

编辑: 对不起 - Chrome 决定我在我不在的时候已经完成了编辑:(

如果我输入if (x) then {,那么enter我会得到一个格式很好的块,插入符号现在在箭头处

但我找不到崇高的文字隐藏在哪里。

我想将此行为复制到普通圆括号()而不是获取

0 投票
1 回答
301 浏览

python - Maxscript registeroleinterface 似乎无法正常工作

首先,感谢阅读本文并为我提供一些帮助/反馈的人,因为我已经为此苦苦挣扎了几天。我是stackoverflow的新手,并试图在问题中尽可能详细。

我正在尝试在 3ds Max 上设置 OLE 服务器。我已按照[此处](http://docs.autodesk.com/3DSMAX/15/ENU/MAXScript-Help/index.html?url=files/GUID-AE4CAED2-1EF9-40EF-9761-83F535FE953A. htm,topicNumber=d30e714562 ) 包括编辑注册表和公开功能。

但是,当我尝试从另一个程序调用该函数(我尝试使用 MATLAB 和 python 脚本)时,我收到一个错误,这导致我怀疑 registerOLEInterface 没有注册该函数。在 python 中,我使用了与第一个非常相似的脚本 [here] ( http://tech-artists.org/forum/showthread.php?2723-Python-to-MaxScript-to-Python ) 并得到一个类似的错误这个:



在 MATLAB 中,h = actxserver('Max.Application.15') 工作正常,但是当我尝试使用 h.maxCommand 访问该函数时,我收到此错误:



对于我可能做错的事情,我将不胜感激。我正在使用 Max 2013 并尝试使用 32 位和 64 位版本。

谢谢,

0 投票
1 回答
1078 浏览

render - Maxscript 渲染保存空白/空文件

我无法将渲染保存到输出文件(使用 Maxscript)。我在脚本中使用以下代码:



当我运行代码时,我可以在帧缓冲区中看到场景渲染,但保存的文件“testscript.tif”是空白的,即图像全黑。

有什么想法我可能做错了吗?

谢谢,

0 投票
2 回答
849 浏览

maxscript - Slate 材质编辑器中的回调函数

是否有任何可用的回调函数,当我们使用 slate 材质编辑器将纹理贴图附加到材质时触发。

原因:
我有一个自定义材质,如果用户没有有效的许可证,我不希望他将任何纹理附加到自定义材质上。在 Compact 材质编辑器中,我通过禁用 UI 来创建贴图来实现这一点。但是当我使用 Slate 材质编辑器时,我可以将纹理连接到我的材质。

所以我的想法是,当我尝试附加地图时,如果我从 slate 材质编辑器获得回调函数,我可以执行许可证检查并阻止他创建连接。我做得对还是你们有任何替代建议。

谢谢,
萨尼什

0 投票
0 回答
1108 浏览

import - 通过 Maxscript 导入材料库而不创建新的临时库

这是我的一位同事不久前在 CG Society 上提出的一个问题,但从未得到答案,所以我想我会尝试在这里提问。他后来离开了公司,我继承了这个项目:

我正在开展一个项目,该项目涉及获取大量纹理(500+)并从中生成一组材质库。由于大量的纹理,我正在寻找自动分类和分组材料的方法,使库更易于导航。

现在我已经按类型对材料进行了分类,每种类型都有自己的材料库文件。这是我生成的文件的一小段,每个文件中都指定了 1-50 种材料。

我的目标是编写一个脚本,该脚本将获取一个充满材质库文件的文件夹,并在 3ds Max 中自动加载它们,结果如下:

导入库示例

在尝试到达这里时,我遇到了几个问题:

  1. 我找不到任何说明如何通过 maxscript 访问和修改材质/贴图浏览器的文档。我想将所有库分组,使其看起来像上图,但我找不到任何有关如何执行此操作的文档。每次我搜索将材料库分组在一起时,我都会得到有关几何分组的文档。
  2. 当我使用“loadMaterialLibrary”方法加载材料库时,该库被标记为“临时库”,忽略文件名:
    在此处输入图像描述
    ...但是当我使用文件菜单手动加载它时,它带有适当的名称(即金属、织物等)

如何通过脚本加载材料库并保留描述它的文件名?

谢谢你。

0 投票
3 回答
442 浏览

string - 字符串是一个数字而不使用 Execute()

在不使用 Execute() 的情况下,MAXScript 中是否有更好的方法来确定字符串是否代表数字(或不代表数字)?

0 投票
1 回答
1539 浏览

3dsmax - maxscript 透明背景 (alpha)

我需要帮助通过 maxscript 制作透明背景。我知道它只是 Preferences->Rendering->Background->Use Environment Alpha 中的一种。

我正在使用 vray 2.40 进行渲染 - 所以它的 V-Ray 帧缓冲区

这是我的代码:

所以在这段代码之后我有一张图片,但背景是黑色的(来自背景颜色 - 环境)

但是,如果我从帧缓冲区中手动保存这个渲染 - 背景将是透明的......如何解决这个问题?我需要脚本的透明化!(