如何以编程方式为3ds max中的对象分配随机颜色?

时间:2010-10-26 13:38:47

标签: 3dsmax maxscript

如何以编程方式将随机颜色分配给3ds max中的对象?

4 个答案:

答案 0 :(得分:6)

如果您只想分配随机的电线颜色,那么效果很好。下面是一些用于创建具有随机漫反射颜色的标准材质的代码。

for o in $* do 
( 
  m = standard
  m.diffuse = random white black 
  o.material = m
) 

答案 1 :(得分:3)

这是我在网上找到的解决方案:

for o in $* do
(
o.wirecolor = random white black
)

答案 2 :(得分:3)

各种方式:

对于wirecolor更改(即没有场景材质的对象),您可以这样做,

(仅适用于网格物体)

for o in geometry do
(
     o.wirecolor = random black white
)

对于您可以执行的所有场景对象

for o in objects do
(
     o.wirecolor = random black white
)

对于您可以选择的所有对象

for o in selection do
(
     o.wirecolor = random black
)

只有一个对象,你可以做

selection[1].wirecolor = random black white

答案 3 :(得分:0)

对于符合条件的对象,请使用where子句

for o in objects where <someproperty> == <somevalue> do o.wirecolor = random black white

所以... ..

for o in objects where classof o == Sphere and o.radius > 10.0 do o.wirecolor = random black white

或按对象名称过滤,然后创建并应用标准材料:

for o in objects where matchpattern o.name pattern:"Sphere*" do o.material = (standard diffuse:(random white black))