首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用于收集场景中所有VRay材质的MaxScript

用于收集场景中所有VRay材质的MaxScript
EN

Stack Overflow用户
提问于 2017-05-03 22:29:16
回答 1查看 1.3K关注 0票数 0

你好,这是我的第一个脚本。我正在尝试编写一个脚本,将场景中的所有VRay材质放入一个数组中,之后我想将它们拉到循环槽中,并将每个vray材质附加到多维/子对象中的一个槽中。然后将多子对象的输出连接到VRayMtlWrapper,并将旧的多子对象保留为子材质。

我可以在图表中做到这一点,但需要两位数的材料才能做到。

我已经收集了一些脚本,并阅读了maxscript help以找到我需要的东西,但没有成功。

我知道自动取款机要在现场收集资料

代码语言:javascript
运行
复制
materials = for m in scenematerials collect m;

但在那之后,我不知道如何编写,以便我可以访问它们的输出/输入或属性,并将它们与多子对象连接起来。我已经在我的头脑中开发了逻辑,但不知道如何编写语法来实现它。任何信息,方向,链接将不胜感激。

这里甚至有一张图片,展示了我试图自动处理一个脚本example

EN

回答 1

Stack Overflow用户

发布于 2017-05-10 15:14:44

我找到了一个解决方案。如果您只想拾取vray u,则只需编写:

代码语言:javascript
运行
复制
matVray = for m in scenematerials m.category == #vray collect m;

如果您只想拾取vray库中的材质,只需添加

代码语言:javascript
运行
复制
matVray = for m in scenematerials m.category == #vray and superclassof m == material collect m

为了将数组中的材质放入多面体对象中,则其:

代码语言:javascript
运行
复制
multiSub = Multimaterial numsubs:matVray.count
multiSub.materiallist = matVray

最后一部分将multisub连接到vray wrapper:

代码语言:javascript
运行
复制
vrayWrapper = VRayMtlWrapper baseMtl:multiSub
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43762947

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档