Kui soovite selle õpetuse samm-sammult läbi töötada sama projektiga, leiate tööfailide paketist dokumendi "PSD_C4D_R14_Aerodynamik_start.c4d", mis sisaldab meie ühist alguspunkti.
Paberileht on lihtne parameetriline tasapinnaline objekt, millel on piisav segmentatsioon deformatsiooniks dünaamika abil. Paber on tekstureeritud kahes värvitoonis, nii et külgmine asend on selgelt nähtav ja stseen on veidi värvilisem.
Ruudukate koosneb kahest aatomi massiivi, mis põhinevad kahel tasapinnalisel objektil. Ka siin töötame kahe erineva objektiga, et saaksime täpsemalt arvutada kokkupõrkeid. Põrand ei ole kavandatud põrandaobjektina, vaid polügoonobjektina, et põrandasse saaks luua augu võlli jaoks , mis on samuti polügoonobjekt.
Dünaamiliste omadustega seadmed
Alustame ventilatsioonikaevu võrgukattega. Nagu juba mainitud, kontrollime siin paberi kokkupõrkeid võrega kahe erineva objekti ja ka dünaamiliste kehamärkidega. Selleks valime Object Manageris kaks aatomi massiivi ja määrame neile kokkupõrkeobjektina Dynamics Body Tag'i, kasutades hiire parema nupuga kontekstmenüüd või Object Manageris menüüst Tags>Simulation Tags.
Valime Object Manager is mõlemad Dynamics Body Tags, et saaksime mõlema sildi seaded ühes sammus määrata. Seadedialoogi Dynamics lehel säilitame vaikimisi seaded.
Seadedialoogi leheküljel Collision (kokkupõrge ) võime jätta kokkupõrke vormiks Automatic (Automaatne ), kuna kasutame ruudustiku jaoks kahte eraldi objekti. Suurendame hõõrdumise väärtust 80%-ni, et tagada, et ruudustikku põrkuvad paberilehed libiseksid vaid veidi eemale.
Jätkame põrandaga. Põranda polügoonobjektile omistame ka Dynamics Body Tagi kui kokkupõrkeobjekti kontekstmenüü kaudu hiire parema nupu abil või objektide halduri menüüst Tags>Simulation Tags.
Me võime kasutada ka Dynamics lehel olevaid vaikimisi seadistusi põranda Dynamics body tagi jaoks, ilma et peaksime mingeid kohandusi tegema.
Seadedialoogi kokkupõrke lehel peame ainult hõõrdumist meie nõuetele vastavaks kohandama. Et põrandale langevad paberilehed ei libiseks liiga kaugele, suurendame hõõrdumise väärtust 150%-ni.
Lõpuks jõuame paberilehe juurde, mille laseme hiljem osakeste süsteemi kaudu kümnete kaupa ülevalt alla tilkuda. Kõigepealt hoolitseme selle dünaamiliste omaduste eest. Seetõttu omistame talle pehmekehana Dynamics Body Tag' i kontekstmenüü kaudu hiire parema nupu abil või objektide halduri menüüst Tags>Simulation Tags ( Sildid>Simulatsiooni Sildid ).
Valides pehme keha sildi, on kõige olulisemad parameetrid juba seadedialoogi leheküljel Dynamics määratud. Seame ka lineaarse kiiruse lävendi veidi kõrgemaks, et põrandal lebavad paberilehed jõuaksid mõistliku aja möödudes seisma.
Seadete dialoogi kokkupõrke lehel valime liikuva võrgusilma kuju. See tagab täpse kokkupõrke arvutamise.
Vähendame elastsust 5%-ni; lõppude lõpuks ei tohiks leht pärast põrandale või võrega kokkupõrget ülespoole põrkuda. Hõõrdumine 50% sobib hästi kokku hõõrdumise väärtustega, mida juba kohaldatakse võre või põrandale.
Seadete dialoogi leheküljel mass kasutame tihedust, et määrata paberilehe mass, mis hiljem langeb maapinnale tuhat korda, kasutades osakeste süsteemi. Et öelda simulatsioonile, et tegemist on väga kerge lendava objektiga, lülitame ümber Own density 'ile ja määrame väikese väärtuse 2.
Seadedialoogi leheküljel forces jõuame lõpuks selle õpetuse jaoks oluliste parameetrite juurde - aerodünaamika. Kuna meie paberilabadel on lennates ja tuule mõjul vähe vastupanu, seame õhutakistuse väärtuseks väikese 5%.
Seevastu tahame, et labad suudaksid ka nõrga tuule korral ülespoole tõusta; tõstmiseks on sobiv toetav väärtus ca 70%. Kahepoolne valik tagab, et mitte ainult paberi ülemine, vaid ka alumine külg tunnistatakse ja käsitletakse ründepinnana.
Selleks, et meie paberileht käituks ka nagu paber, oleme selle loonud pehme kehaga objektina, st elastse, painduva kehana. Seadete dialoogi pehme keha lehel määratleme täpsemad omadused.
Et mitte suurendada arvutusaega rohkem kui vaja, lülitame kõigepealt pehme keha alal välja täpse lahendaja. Kui tekivad valearvestused, saame siin veel parandusi teha.
Jätkame paberil esitatud omadustega. Struktuurvedrud tagavad materjali jäikuse, mistõttu määrame siin suhteliselt suure väärtuse 300, 50% summutusega. Ülekoormuse järgse deformatsiooni võimalus, elastsuspiir, mis lisati 14. versioonis, on määratud hilinenult 800%.
See tagab, et mitte iga paber, mis põrandale satub, ei jää kohe kortsu. Selleks, et vältida paberi lihtsat kokkuvarisemist, suurendame nihkevedrude väärtust 100-ni.
Loomulikult ei ole paberil palju vastupanu paindumisele, mistõttu on see väärtus suhteliselt madal. Kasutame ka siin elastsuse piiri, kuid veidi madalamat, et kortsumine oleks lubatud.
Kasutame kuju säilitamist, et määrata, kui palju deformeerunud pehme keha objekt püüab tagasi pöörduda oma algsesse olekusse. Kõvaduse väga madal väärtus on piisav, sest paberilt ei ole oodata suurt vastupanu.
Elastsuse piiri seame jälle kõrgemaks, et paber saaks lihtsalt deformeeruda, kui ta on selle piiri ületanud.
Osakeste süsteemi struktuur langevate paberilehtede jaoks
Pärast seda parameetrite maratoni on kõikidele asjakohastele objektidele määratud dünaamilised omadused. Nüüd hoolitseme osakeste süsteemi eest, mis toodab paberilehti ja laseb neil põrandale pudeneda.
Selleks toome stseeni Simulate>Particle system menüüst emitteri.
Et paberileht saaks toimida osakesena, loome selle emitteri alamobjektina. Kasutades Y-koordinaadi väärtust, liigutame osakeste emitterit umbes 300 cm võrra ülespoole; asukoht otse ventilatsioonišahti kohal on juba OK.
Emitteri objekti seadete dialoogis kontrollime osakeste emissiooni osakeste lehe kaudu. Ärge kasutage siinkohal liiga suuri sünnimäära, sest kuna tegemist on pehme keha objektidega, siis on arvutused tõesti arvutamismahukad. Aga ärge muretsege, isegi väidetavalt madalate sündimuskordajate (nagu minu 10) puhul saab palju paberit koguda.
Et animatsioon saaks lõppeda kaadris 500 ja iga leht oleks selleks ajaks põrandal, laseme osakeste tootmisel lõppeda kaadris 400.
Kiiruse varieerimisega ja täiendava pööramisega kuni 180°, näeb osakeste toodang loomulik välja. Valik Display objects tagab, et me näeme redaktoris ja renderdamisel tõesti paberilehti kukkumas.
Seadete dialoogi emitteri lehel reguleerime emitteri suurust. Määratud suurus on piisav, et täita stseen ja ventilatsioonišaht piisavalt paberiga.
Nüüd testime seda lõplikult, vajutades play-nupule ja suurendades ventilatsioonišahti redaktoris. Paberilehed kukuvad ülevalt alla ja põrkuvad soovitud viisil vastu võrega katet ja põrandat.
Ventilatsioonivõre õhuvoolu paigaldamine
Siiani ei ole me näinud suurt aerodünaamilist efekti, kuid see muutub kohe, kui me lisame simulatsiooni ventilatsioonivõrest väljuvat õhuvoolu. Selleks võtame stseeni Simulate>Particle system menüüst partikli-modifikaatori Wind.
Kuna õhuvool peab väljuma ventilatsioonikaevust, on asukoht alguspunktis juba õige. Siiski peame me tuult veel 90° võrra pöörama, kasutades kallutusnurka W.P, nii et õhuvool näitaks Y-suunas ülespoole.
Tuule objekti seadete dialoogis leiame parameetrid tuule kiirusele ja turbulentsile objekti lehel. Peagi laseme tuule kiirust juhuslikult reguleerida, nii et esialgsete katsete jaoks seame siin 50 meetrit. Turbulentsus on kindlasti soovitav (tuul voolab ju läbi võrkude), kuid eriti oluline on, et aktiveeriksime aerodünaamilise tuule režiimi, mis võib mõjutada meie paberilehtede aerodünaamilisi omadusi.
Stardipoolel valime stardivormiks kera kuju. Kuigi see kuju ei täida nurki täielikult, on see meie kasuks, sest see tuleb tegelikule olukorrale lähemale ja pakub paberile veidi ruumi, et see saaks ruudustikul laiali valguda.
Ümmargune kerakujuline kuju tähendab ka seda, et ülespoole pööratud lehed ei "lebama" modifikaatori ühel serval ja hõljuvad passiivselt. Seame vähenemise väärtuseks 10% ja valime vähenemisfunktsiooni jaoks valiku Inv. ruut.
Vajutus nupule play näitab, kuidas väljavoolav tuul mõjutab nüüd langevaid lehti. Siiski on õhuvool praegu veel liiga ühtlane.
Õhuvoolu juhtimine XPresso abil
Väikese XPresso vooluringi abil saame aidata õhuvõlvil tekitada äkilisi tuulepuhanguid, ilma et peaksime mingeid parameetreid animeerima.
Selleks vajame XPresso väljendit, mille määrame tuule objektile kandjaks. Väljendi leiame kas kontekstmenüüst, kasutades hiire parema nupu all CINEMA 4D tagi või objektihalduri menüüst Tags>CINEMA 4D Tags .
Avame XPresso redaktori, tehes topeltklõpsu XPresso väljendi ikoonil Object Manageris, et luua meie väike vooluring. Selleks, et saaksime tuule objektile aadressi anda, vajame seda XPresso redaktoris. Seetõttu lohistame selle lihtsalt Object Managerist XPresso redaktorisse.
Tuule sõlme sinise sisendporti nupul valime objekti omaduste menüüs tuule kiiruse parameetri, et see oleks sisendpordina saadaval.
Ühelt poolt peaks genereeritud tuule kiirus jääma etteantud väärtusvahemikku, kuid teiselt poolt ei tohiks sellel olla kasutuskõlbmatuid väärtushüppeid, vaid see peaks alati tõusma ja langema. Nende nõuete täitmiseks sobib ideaalselt müra sõlme, mille kutsume XPresso redaktoris üles hiire parema nupu abil kontekstmenüüst.
Müraport on juba olemas müra sõlme väljundportina. Hiirega lohistades ühendame müraporti tuule objekti sõlme tuule kiiruse sisendpordiga .
Tuule kiiruse parameetrit juhib nüüd müratekstuur. Seda tekstuuri ja selle töötlemist saab reguleerida müra sõlme seadete dialoogi kaudu.
Valime lainekujulise turbulentsi ja lubame ka negatiivseid väärtusi, lülitades välja valiku Absolute values (absoluutsed väärtused ). Kasutame parameetrit Size müra skaleerimiseks, et luua sujuvad üleminekud. Kasutame sagedust, et kontrollida müra muutuste sagedust aja jooksul.
Suhteliselt väike väärtus 0,5 tagab, et tuulepuhangud ei tekiks liiga kiiresti üksteise järel. Amplituudiga korrutatakse müra tulemus läbitud müra väärtusega. Siinkohal kasutame 150 ühikut, et tagada olulised kõikumised. Algväärtus 0 võimaldab meie tuulemasinat alustada ilma tuulega.
Tuuleobjekti seadete dialoogis on tuule kiiruse kontrollimine XPresso kaudu märgatav muudetud parameetrikasti kaudu. Kui vajutame nupule play, näeme selgelt, kuidas tuule kiiruse väärtus aja jooksul muutub - ja me võime ka redaktoris ära tunda tuule modifikaatori mürapõhise rootori pöörlemise.
Tuule objekti pildi juhitav aktiveerimine
Selleks, et anda paberilehtedele võimalus settida ja koguneda võrega, lülitame tuuleobjekti sisse alles kaadris 150. Teeme seda väikese parameetri animatsiooni abil.
Selleks seame aja liuguri kaadrile 0 või 1, lülitame tuuleobjekti välja baaslehe parameetri Activate kaudu ja klõpsame parameetriringil, hoides samal ajal all Ctrl- või Ctrl-klahvi, et salvestada selle väärtuse jaoks võtme kaader.
Seejärel seame aja liuguri kaadrile 150 ja salvestame aktiveeriva parameetri jaoks võtmepildi, kui tuuleobjekt on sisse lülitatud.
Selle väikese parameetri animatsiooniga ei ole enam midagi teha. Tuuleobjekti rootori labad seisavad nüüd kuni kaadrini 149 paigal ja hakkavad liikuma alles alates kaadrist 150.
Dünaamika eelseadete kontrollimine
Kui te olete kasutanud minu algset stseeni selle õpetuse ümbertöötamiseks, ei tohiks siinkohal mingeid muudatusi teha. Projekti eelseadistustest lehe Dynamics menüüst Edit leiame mõned parameetrid, mis aitavad Dynamics solveril vältida vigu töötlemisel.
Dynamicsi eelistuste jaotises General peame ainult tagama, et gravitatsioon ja tihedus oleksid globaalsed. Õhu tiheduse parameeter on oluline aerodünaamilise simulatsiooni jaoks.
Jaotises Expert saame aidata Dynamics solverit, vähendades skaalumist. Peamiselt on meil tegemist 20 cm x 30 cm suuruste paberilehtedega, mis peavad deformeeruma ja üsna täpselt kokku põrkuma. Väärtus 5 cm loob parema arusaamise dünaamika mootori jaoks.
Nüüd saame käivitada ja renderdada valmis simulatsiooni tervikuna. Mitme tuulepuhanguga keeratakse ruudustikule kogutud paberilehed tänu aerodünaamikale ikka ja jälle ülespoole ...
... ja saavad lõpuks jääda ainult nendele võrgualadele, mis on tuule eest kaitstud.