Gradijentalna promena materijala – objašnjena skripta

Sledi detaljno objašnjenje skripte red po red.

a = 1360

b = 160

c = 20

Ovo su promenljive vrednosti vezane za 3ds max plane koji kreira skripta, gde je a dužina, b širina, a c dimenzija jednog face-a u plane-u koji predstavlja pločicu.

 

x = b/c – Predstavlja broj segmenata po širini plane-a

y = (x^2+1)*x – Predstavlja broj segmenata po dužini plane-a

z = x^2 – Predstavlja broj koji ce biti korišćen u matematičkoj formuli po kojoj se selektuju faceovi.

 

plane length:a width:b lengthsegs:y widthsegs:x name:”plocice”

$plocice.material = standardmaterial diffuse:blue

select $plocice

Ova tri reda teksta rade sledeće: prvo se pravi plane dužine a, širine b, segmenata y i x, i menja se ime plane u plocice. Zatim se zadaje plava boje planeu. Na kraju, zbog načina na koji skripta funkcioniše, plane se selektuje.

 

max modify mode

modPanel.addModToSelection (edit_poly ())

macros.run “Modifier Stack” “SubObject_4”

Ova tri reda teksta su ključna za način na koji skripta funkcioniše. Linija max modify mode automatski otvara modify panel u 3ds max interfejsu. Bez ovoga ne bi mogla da funkcioniše sledeća linija, koja na prethodno selektovani plane plocice dodaje modifajer Edit Poly. Zadnja linija teksta u edit poly selektuje edit face.

 

for j in z+1 to (z+1)*z by z+1 do
(
for i in j to (z+1)*z by z do
$.modifiers[#Edit_Poly].Select #Face #{i}
)

$.modifiers[#Edit_Poly].Select #Face #{j}

Ovo je formula po kojoj se ”gradijentalno” selektuju fejsovi. U zavisnosti od broja z, tj kvadrata broja segmenta po širini, skripta prvo selektuje faceove čija selekcija daje privid gradijenta.

 

$.modifiers[#Edit_Poly].DetachToObject “plocice2″

$plocice2.material = standardmaterial diffuse:red

Ovo su poslednje dve linije teksta u skripti. Prva facove selektovane po formuli ”detachuje” od objekta plocice i tako novonastali objekat imenuje u plocice2. Poslednja operacija ovaj novi objekat boji u crveno.

 

This entry was posted in 00 Radovi. Bookmark the permalink.