问题标签 [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.
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 源,以便它知道系统中有粒子。
file-io - 使用 MaxScript 将行添加到文件
我有一个文件:
MaxScript
我可以使用's轻松创建该文件format "..." to:file
。
但是如何在已经存在而不是空的文件中添加一些行?
大多数情况下,我想添加以下行my text
:
- 在指定文本出现之后(例如
Some text
,在新行之后) - 在指定行(例如在空行 #4 并在其后添加新行)
如果不可能,那么也许我可以在文件中附加一些东西(写在之后Sum up
)?
ps 我总是可以将整个文件读取到变量中,将我的文本添加到其中,然后保存文件。
但这并不是大文件的真正选择(我想让它更快)。
maxscript - 在 MaxScript 中创建自己的(自定义)修改器
我想为对象创建自己的修改器。因此,当我选择对象时,转到Modify Panel
并展开修改器列表,myModifier
将显示出来。
简单的方法是什么?
sublimetext2 - 崇高文本2中括号(括号)的智能缩进
我有一个非常好的设置,可以从 sublime text 2 内部编辑和运行 maxscript。
我最近一直想要的一件事是用普通圆括号模拟或复制大括号的行为
编辑: 对不起 - Chrome 决定我在我不在的时候已经完成了编辑:(
如果我输入if (x) then {
,那么enter
我会得到一个格式很好的块,插入符号现在在箭头处
但我找不到崇高的文字隐藏在哪里。
我想将此行为复制到普通圆括号()
而不是获取
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 位版本。
谢谢,
render - Maxscript 渲染保存空白/空文件
我无法将渲染保存到输出文件(使用 Maxscript)。我在脚本中使用以下代码:
当我运行代码时,我可以在帧缓冲区中看到场景渲染,但保存的文件“testscript.tif”是空白的,即图像全黑。
有什么想法我可能做错了吗?
谢谢,
maxscript - Slate 材质编辑器中的回调函数
是否有任何可用的回调函数,当我们使用 slate 材质编辑器将纹理贴图附加到材质时触发。
原因:
我有一个自定义材质,如果用户没有有效的许可证,我不希望他将任何纹理附加到自定义材质上。在 Compact 材质编辑器中,我通过禁用 UI 来创建贴图来实现这一点。但是当我使用 Slate 材质编辑器时,我可以将纹理连接到我的材质。
所以我的想法是,当我尝试附加地图时,如果我从 slate 材质编辑器获得回调函数,我可以执行许可证检查并阻止他创建连接。我做得对还是你们有任何替代建议。
谢谢,
萨尼什
import - 通过 Maxscript 导入材料库而不创建新的临时库
这是我的一位同事不久前在 CG Society 上提出的一个问题,但从未得到答案,所以我想我会尝试在这里提问。他后来离开了公司,我继承了这个项目:
我正在开展一个项目,该项目涉及获取大量纹理(500+)并从中生成一组材质库。由于大量的纹理,我正在寻找自动分类和分组材料的方法,使库更易于导航。
现在我已经按类型对材料进行了分类,每种类型都有自己的材料库文件。这是我生成的文件的一小段,每个文件中都指定了 1-50 种材料。
我的目标是编写一个脚本,该脚本将获取一个充满材质库文件的文件夹,并在 3ds Max 中自动加载它们,结果如下:
在尝试到达这里时,我遇到了几个问题:
- 我找不到任何说明如何通过 maxscript 访问和修改材质/贴图浏览器的文档。我想将所有库分组,使其看起来像上图,但我找不到任何有关如何执行此操作的文档。每次我搜索将材料库分组在一起时,我都会得到有关几何分组的文档。
- 当我使用“loadMaterialLibrary”方法加载材料库时,该库被标记为“临时库”,忽略文件名:
...但是当我使用文件菜单手动加载它时,它带有适当的名称(即金属、织物等)
如何通过脚本加载材料库并保留描述它的文件名?
谢谢你。
string - 字符串是一个数字而不使用 Execute()
在不使用 Execute() 的情况下,MAXScript 中是否有更好的方法来确定字符串是否代表数字(或不代表数字)?
3dsmax - maxscript 透明背景 (alpha)
我需要帮助通过 maxscript 制作透明背景。我知道它只是 Preferences->Rendering->Background->Use Environment Alpha 中的一种。
我正在使用 vray 2.40 进行渲染 - 所以它的 V-Ray 帧缓冲区
这是我的代码:
所以在这段代码之后我有一张图片,但背景是黑色的(来自背景颜色 - 环境)
但是,如果我从帧缓冲区中手动保存这个渲染 - 背景将是透明的......如何解决这个问题?我需要脚本的透明化!(