keskiviikko 21. syyskuuta 2016
Väritilat Gamma ja Linear selitetty
http://filmicworlds.com/blog/linear-space-lighting-i-e-gamma/
sunnuntai 4. syyskuuta 2016
3ds Max: MaxScriptin perusteet
Lähteet: https://youtu.be/HTk8Rh0a5ys ja https://youtu.be/3Z1iGHwpsrk
F11: MaxScript Listener
MacroRecorder -> Enable, jolloin Listener listaa kaikki Maxissa tehdyt toiminnot.
$.handle = on: valitun teapot-mallin handle-objekti laitetaan päälle.
Myös useampi kuin yksi malli voi olla valittuna, jolloin maxscript-käskyt tehdään kaikille malleille, jos koodirivissä on $-merkki.
Tools -> Evaluate All (ctrl + E) suorittaa kirjoitetun skriptin.
Kun kirjoitetaan:
myVariable = on
$.handle = myVariable
$.spout = myVariable
...voidaan muuttuja myVariablea määrittämällä käsitellä kaikkia ko. muuttujaa käyttäviä objekteja.
Melkein kaikkia malleihin liittyviä asioita voi muokata maxscriptin kautta. Kaikki käskyt löytyvät Help-valikosta.
print $ tekee listan kaikista valittuna olevista malleista. Jos $-merkin perään lisää [2], näytetään ainoastaan valinta-arrayn toinen malli.
Esim. $[4].wirecolor = blue muuttaa valinnan neljännen objektin wirecolorin siniseksi.
Kun kirjoitetaan:
for i in 1 to selection.count do
(
$[i].lid = false
)
...otetaan kunkin valitun teapot-objektin lid-objekti pois päältä.
Kun kirjoitetaan:
for i in 1 to selection.count do
(
if$[i].lid == true then
(
$[i].wirecolor = blue
)
else
(
$[i].wirecolor = red
)
)
...muutetaan kunkin valitun objektin wirecolor-väri siniseksi, jos lid-objekti on päällä.
Skriptin saa toolbarin nappulaksi valitsemalla kaikki koodirivit ja siirtämällä ne työkalupalkkiin.
Makrot tallennetaan usermacros-kansioon.
try (closeRolloutFloater RolloutFloaterTemplate) catch() //sulkee vanhan ikkunan, jos skripti suoritetaan uudestaan ja luodaan uusi ikkuna.
rollout RolloutTemplate "Test" //luo Test-nimisen rolloutin.
(
button myButton "Hey!" //luo painikkeen Hey-tekstillä ko. rolloutiin.
on myButton pressed do //kun painiketta painetaan...
(
box() //...luodaan laatikko.
)
)
RolloutFloaterTemplate = newrolloutfloater "test" 175 65 //luo test-nimisen 175 x 65 -kokoisen ikkunan
addrollout rolloutTemplate RolloutFloaterTemplate //lisää luodun rolloutin luotuun ikkunaan.
Jos importatessa maxiin objekteja tulee läjä jättimäisiä point helpereitä, jotka pitää tehdä pienemmiksi, niin sen sijaan, että yksitellen muuttaisi kunkin koon, valitaan kaikki ja kirjoitetaan:
$.size = 5 ja evaluoidaan, jolloin kaikkien kooksi tulee 5.
-------------------------
Jos halutaan muuttaa valittuja objekteja esim. niin, että kunkin kokoa muutetaan randomilla, ei riitä, että kirjoittaa $.size = random 2 10, koska tällöin koko valinta muutetaan randomilla saman kokoiseksi. Sen sijaan pitää tehdä for-loop:
for i in 1 to selection.count do
(
selection[i].size = random 2 10
)
i = the iteration through the loop of objects
1 = one by one
selection.count = valinta ja sen määrä
Jos kirjoitetaan:
showproperties $
...tulostetaan kaikki asetukset, joita voidaan maxscriptillä muuttaa.
Valitun objektin modifierin asetukset saa näkyville, kun kirjoitetaan:
showproperties $.Displace.
Kun kirjoitetaan:
$.Displace.strength = 10
...valitun objektin displace-modifierin strengthiksi laitetaan 10.
Kun kirjoitetaan:
newDisplace = displace strength:10 //muuttuja, jossa Displace-modifierin strengthin arvoksi laitetaan 10
addmodifier $ newDisplace //lisätään valitulle objektille ($) se modifier niillä asetuksilla, joka on newDisplace-muuttujassa.
Kun kirjoitetaan:
newCellural = cellural size:(random 1 20) //muuttuja, jossa on cellular-tekstuuri koolla 1-20
newDisplace = displace strength:10
addmodifier $ newDisplace
newDisplace.map = newCellular //Displace-modifierin mapiksi laitetaan newCellular-muuttuja käskyineen
F11: MaxScript Listener
MacroRecorder -> Enable, jolloin Listener listaa kaikki Maxissa tehdyt toiminnot.
$.handle = on: valitun teapot-mallin handle-objekti laitetaan päälle.
Myös useampi kuin yksi malli voi olla valittuna, jolloin maxscript-käskyt tehdään kaikille malleille, jos koodirivissä on $-merkki.
Tools -> Evaluate All (ctrl + E) suorittaa kirjoitetun skriptin.
Kun kirjoitetaan:
myVariable = on
$.handle = myVariable
$.spout = myVariable
...voidaan muuttuja myVariablea määrittämällä käsitellä kaikkia ko. muuttujaa käyttäviä objekteja.
Melkein kaikkia malleihin liittyviä asioita voi muokata maxscriptin kautta. Kaikki käskyt löytyvät Help-valikosta.
print $ tekee listan kaikista valittuna olevista malleista. Jos $-merkin perään lisää [2], näytetään ainoastaan valinta-arrayn toinen malli.
Esim. $[4].wirecolor = blue muuttaa valinnan neljännen objektin wirecolorin siniseksi.
Kun kirjoitetaan:
for i in 1 to selection.count do
(
$[i].lid = false
)
...otetaan kunkin valitun teapot-objektin lid-objekti pois päältä.
Kun kirjoitetaan:
for i in 1 to selection.count do
(
if$[i].lid == true then
(
$[i].wirecolor = blue
)
else
(
$[i].wirecolor = red
)
)
...muutetaan kunkin valitun objektin wirecolor-väri siniseksi, jos lid-objekti on päällä.
Skriptin saa toolbarin nappulaksi valitsemalla kaikki koodirivit ja siirtämällä ne työkalupalkkiin.
Makrot tallennetaan usermacros-kansioon.
try (closeRolloutFloater RolloutFloaterTemplate) catch() //sulkee vanhan ikkunan, jos skripti suoritetaan uudestaan ja luodaan uusi ikkuna.
rollout RolloutTemplate "Test" //luo Test-nimisen rolloutin.
(
button myButton "Hey!" //luo painikkeen Hey-tekstillä ko. rolloutiin.
on myButton pressed do //kun painiketta painetaan...
(
box() //...luodaan laatikko.
)
)
RolloutFloaterTemplate = newrolloutfloater "test" 175 65 //luo test-nimisen 175 x 65 -kokoisen ikkunan
addrollout rolloutTemplate RolloutFloaterTemplate //lisää luodun rolloutin luotuun ikkunaan.
Jos importatessa maxiin objekteja tulee läjä jättimäisiä point helpereitä, jotka pitää tehdä pienemmiksi, niin sen sijaan, että yksitellen muuttaisi kunkin koon, valitaan kaikki ja kirjoitetaan:
$.size = 5 ja evaluoidaan, jolloin kaikkien kooksi tulee 5.
-------------------------
Jos halutaan muuttaa valittuja objekteja esim. niin, että kunkin kokoa muutetaan randomilla, ei riitä, että kirjoittaa $.size = random 2 10, koska tällöin koko valinta muutetaan randomilla saman kokoiseksi. Sen sijaan pitää tehdä for-loop:
for i in 1 to selection.count do
(
selection[i].size = random 2 10
)
i = the iteration through the loop of objects
1 = one by one
selection.count = valinta ja sen määrä
Jos kirjoitetaan:
showproperties $
...tulostetaan kaikki asetukset, joita voidaan maxscriptillä muuttaa.
Valitun objektin modifierin asetukset saa näkyville, kun kirjoitetaan:
showproperties $.Displace.
Kun kirjoitetaan:
$.Displace.strength = 10
...valitun objektin displace-modifierin strengthiksi laitetaan 10.
Kun kirjoitetaan:
newDisplace = displace strength:10 //muuttuja, jossa Displace-modifierin strengthin arvoksi laitetaan 10
addmodifier $ newDisplace //lisätään valitulle objektille ($) se modifier niillä asetuksilla, joka on newDisplace-muuttujassa.
Kun kirjoitetaan:
newCellural = cellural size:(random 1 20) //muuttuja, jossa on cellular-tekstuuri koolla 1-20
newDisplace = displace strength:10
addmodifier $ newDisplace
newDisplace.map = newCellular //Displace-modifierin mapiksi laitetaan newCellular-muuttuja käskyineen
Tilaa:
Blogitekstit (Atom)