Blenderownia
Blender praktycznie => Python, skrypty, pluginy i Blender Game Engine => Wątek zaczęty przez: mortom.ckm w 30.06.2019 17:29:08
-
Witam
Chciałem sobie ułatwić życie i stworzyć prosty skrypt do automatycznego przydzielania Material ID
Gdzieś w necie znalazłem prosty skrypt:
x=0
for mat in bpy.data.materials:
mat.pass_index = x
x = x+1
Chciałbym trochę go zmodyfikować:
gdy x osiągnie wartość 32 zeruję się i odnowa przydziela ID od 0 i tak w koło macieju dopóki nie skończą się materiały.
Programować nie potrafię i wiem, że to banalna funkcja ale nie wiem jak się za to zabrać.
Pozdr.
Po jakimś czasie wpadłem na taki kod:
import random
x = 0
for mat in bpy.data.materials:
mat.pass_index = x
x = random.choice(range(32))
ale nadal wolałbym aby przydzielanie odbywało się co 1 a nie randomowo
-
A gdyby x było resztą z dzielenia przez 32?
-
A gdyby x było resztą z dzielenia przez 32?
a jak to zapisać?
-
Podobno procentem czyli:
x=(x+1)%32
Ha! I nawet działa.
>>> x=32
>>> print (x)
32
>>> x=(x+1)%32
>>> print (x)
1
>>> x=64
>>> x=(x+1)%32
>>> print (x)
1
-
OKi dzięki!!!!!!!!!!!!!!!!!!!
a jak by ktoś takiego potrzebował to kod skryptu ma się tak (i działa):
x = 0
for mat in bpy.data.materials:
mat.pass_index = x % 32
x = x + 1