
Unul dintre cititorii mei (Shibanov Bulat aka ASK'R) mi-a trimis o lecție superba în aplicarea practică a scripturilor în 3ds Max. Este bine că el a făcut acest lucru, așa cum se întâmplă în viață. Eu aduc atelă ca este.
Toate imaginile sunt doar scalate. Pentru a vedea imaginea la dimensiune completă, faceți clic dreapta pe ea și selectați „Image Open“ (sau similar).
Sarcina sau deschidere.
Mi-a luat o zi pentru a face un model de mașini cu mai multe axe, în care poziționarea pieselor se face prin rotirea pinionului de cremaliera. Gears au fost create cu succes într-un pachet CAD gratuit, dar șipcile nu au fost găsite. ScriptSpot de Google cu tăcut, ca gherilele, și a fost doar calea adevărată a Jedi. Deci, sarcina - pentru a scrie un script cu ajutorul căruia este convenabil să se facă rafturi.
Acesta este modul în care rezultatul final va arata ca (dacă faci toți pașii din acest tutorial):
Și atunci există un procedeu de obținere a unui astfel de rezultat:
După câteva gugleniya a găsit o pagină. Având o imagine cu un spline parametrice, Notepad și calculator, am dat seama coordonatele punctelor de bază. Aici sunt rezultatele:

Dar aceasta este doar dinții și au nevoie de o grebla ca un întreg. Deci, kalyaki-malyakaem mai mult:


Dedicat acest lucru este ceea ce avem nevoie - dacă pot face o tăietură, atunci toate Krivulina să nu fie o problemă.

Deci, pentru a face spline avem nevoie de:
- Creați un exemplu în poziția de orice.
- Adăugați cel puțin un spline în ea.
- Adăugați puncte de referință.
- Actualizați-l (această caracteristică pentru a accelera lucrările - toate acestea creează și apoi aruncați afară pe scena, aproape toate obiectele trebuie să fie actualizate pentru apariția în scenă).
- Reveniți la codul de asteptare pentru orice lucrare suplimentară.
Codificare.
Cunoaște minimul necesar, este posibil să se scrie cod. Se transferă imaginile la codul din Editor MAXScript:
-- \ - vă permite să picteze ceva la multi-line, este doar mai ușor și mai clar
-- în probezhatsya permite proiectarea tuturor elementelor de matrice (Nu adăugați aceleași noduli bucată). Și vom obține un singur dintata suport:

De asemenea, încă nu este închis. Îmi amintesc că, atunci când creați manual suficient de aproape noduli de localizare, 3ds Max ofera aproape (Close) spline, așa că știe cum să-l (o funcție) face. Înapoi la căutare:

Adăugați aproape 1 s, iar acum rake-ul este potrivit pentru Extrudare / Bevel.
Cu toate acestea, dinții de rack poate fi un număr arbitrar, și oameni fără valoare. Așa că ne gândim. Ciclul ne va permite să găsim punctul cu schimbările și articulația (din nou, de la Maxscript de referință) necesare va permite bucăți oarbe:

Deci, ca urmare există un script care permite cifrele pentru a construi o cale ferată. Pe ea poți și opri.
Cu toate acestea, nu toate artist'y 3D acceptă în mod normal, o editare valori în textul script-ul. Unii se tem ca pe ciuma * * FUME_FX și ar trebui să facă ceainice și poligoane GUI - Graphical User Interface.
GUI-Nya sau "Turn pentru a face față utilizatorului."
Utilizați și controalele vor initia rapid pe ea:

Nevoia de valori și butonul Spinners tsifernyh.
De la spinner va primi valoarea și apăsarea unui buton pentru a crea o șină.
Ideea arata bine, dar Max a făcut pentru a putea vedea parametrii de poftă de mâncare și apoi să creați (obiect parametri opțional nu este considerat - folosi un pic, și probleme mult mai mult). Deci, va trebui să actualizați, de asemenea, șina atunci când valoarea turbinei și de afișare în timpul configurării. simplă apăsare de buton nu se potrivește, mult mai bine să fie fixată - butonul Verificare.
Scrieți codul de-a lungul drumului face refactoring:
Acum, crearea de cale ferată este ascunsă în spatele unei interfețe și achiziționate evenimentul, care va fi ceva sa se intample. În timp ce apăsați pe butonul este necesar să se facă feroviar:
fillValues ()
dacă == de stat pe atunci (
generateRack ()
)
dacă este apăsat, trebuie să-l dezinstalați:
Rack delete altceva
Atunci când schimbările în orice filator trebuie să-l actualizați:
în cazul în care Rack! = Rack nedefinită și nu isdeleted apoi renewRack ()
Deci, atunci când cheile de prindere vedea rack în portul de vizualizare, putem transforma setările, dacă este apăsat, se elimină în cazul în care bare de dialog închis rămâne în scenă.
Poate că maxscript-guru va spune fuuu, pentru că o mulțime nu este finalizat încă și / sau terminat cu brute force copy-paste. Dar eu cred că acest lucru este scopul maxscript'a - nu capodopere ale codului, și pentru a rezolva probleme practice (probleme cu „ceea ce este bun?“, Ar trebui să înțeleagă nenorocitele filozofi).
GUI nu este făcut pentru mine și partener. Totuși a fost nevoie de aproximativ 3 ore și încet cu kofem sigur care sună. Acest script poate fi aruncat în buton, puteți face o verificare de fond de unicitate a dialogului, butonul Create, nu pentru a închide caseta de dialog, adăugați dinte profil ornamental involută.
P.S. Munca la începutul articolului intitulat „Victima“ Americanii au în 3ds Max, BodyPaint, Digital Fusion, Photoshop, vray și Zbrush-. uite original acolo.
12 raspunsuri la articolul „Învățare pe MAXScript sarcina practică de a crea un suport“
Tocmai am preiau-strângeți și folosind butonul mouse-ului stânga, imaginea în file / paginile deschise ... deschide imediat imaginea în mărime completă ... și rapid și convenabil.
Apropo, dacă aveți deja un CAD / necesar la fermă se poate face doar o singură secțiune și retopolozhit în max deja, și apoi Tools-> Array, si sattachit VertexWeld arunca