2010-10-26 7 views

Répondre

6

Cela fonctionne bien si vous voulez juste d'attribuer une couleur de fil aléatoire. Voici un code pour créer un matériau standard avec une couleur diffuse aléatoire.

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

Merci beaucoup pour cela. Je ne savais pas comment le faire! – relima

3

Ce que j'ai trouvé en ligne comme solution:

3

diverses façons:

Pour les changements de WireColor (c.-à-objets avec pas de scène sur eux), vous pouvez le faire,

(uniquement pour les objets mesh)

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

pour tous les objets de scène que vous pouvez faire

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

pour tous les objets sélectionnés, vous pouvez faire

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

pour un seul objet, vous pouvez le faire

selection[1].wirecolor = random black white 
0

pour objet correspondant à un critère utiliser la clause where

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

ainsi comme ..

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

ou filtrer par le nom des objets puis créer et appliquer un matériau standard:

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