Selleks, et saaksime keskenduda uute funktsioonidega töötamisele, olen ette valmistanud projektfaili, mis sisaldab kaasasolevat materjali: PSD_R21_VektorVolumen_start.c4d. Selles on parametriline kuul-objekt ja kaks osakeste-emitterit, mis on suunatud ülalt ja alt kuulile. Selle õpetuse eesmärk on saavutada, et väljaulatuvad osakesed tabaksid kokku kuuliga ning jaotuksid sealt igasse suunda.
Vaatame lühidalt stseeni komponente. Mõlemal osakeste-emitteril on samad seaded: nad paiskavad 500 osakest kuni kaadri 300-ni, kusjuures osakeste eluaeg on 1000 kaadrit, mis jätkub kuni animatsiooni lõpuni.
Vajutus mängimisnupule näitab, et mõlemad emitterite osakesed liiguvad hetkel kuulilt mõjutamata. Seda me soovime nüüd muuta.
Esimene vektorvälja struktuur
Alustame sellega, et genereerime kuuli poolt etteantud geomeetriast esimese vektorvälja. See peaks juhtima vastu põrkavaid osakesi juhusmustriga ümber kuuli.
Alustuseks toome menüüst Kujund. välja Tihendur kasutades Veel.
Järgmisena paneme kuul-objekti objekt-haldurist lohistades alamobjektina selle Tihenduri sisse. Praegu on seal märgitud Mäluvälja kujul, seega ehitab tihendur hetkel meie kuuli vokselite abil.
Kuuli asemel vektorväljaks muutmiseks muudame lihtsalt selle Mäluvälja tüübi vastava menüü kaudu lihtsalt Vektor-tüübiks.
Vektorvälja grobundust muudame nüüd Voksli suurusega. Väärtus 5 cm on meie eesmärkide jaoks täiesti piisav.
Meie endisest kuul-objektist on tänu mälutihendurile saanud väli, kus on lugematuid vektoreid.
Kui läheme vektorväljale lähemale, näeme üksikuid vektoreid, mis on kõik pinnal oleva positsiooni suhtes risti. Sealt tulenevad jõud viitavad seega kõik ära meie kuulist. See pole päris see, mida me vajame osakeste ümbersuunamiseks kuuli ümber erinevatesse suundadesse.
Peame seega hoolitsema kahe asja eest: vektorid peavad olema pinnaga paralleelsed ja neil peab olema juhusmuster, et osakesi erinevatesse suundadesse pinnal suunata.
Juhusmustrit pakub Juhusväli, mille võtame stseeni menüüst Genereeri>Väli.
Asetame Juhusvälja objektihaldurile lohistades selle alamobjektina mälu tihenduri sisse. Mälu tihenduri seadete dialoogis kuvatakse seejärel Juhusväli meie kuulist kõrgemal tasemel.
Pilk 3D-vaatesse näitab, et mõlemad vektoriväljad ei tööta veel nii, nagu meil vaja. Juhusväli peaks mõjutama allapoole asetsevat vektor-kuuli.
Selleks valime Juhusvälja loendi Objektidest mälu tihenduri seadetest ja määrame Juhusvälja jaoks Loomeala „Eelnevad objektid.“
Nüüd mõjutab Juhusväli soovitud viisil kõiki meie kuulilt saadud vektorid. Nüüd peame lihtsalt tagama, et kaootiliselt pööratud vektorid osutuksid kuuli pinnal.
Juhusvälja ja kuuli arvutusrežiim tundub siiski veel mitte päris sobivat. Valige Režiimi menüüst objektiloendis Juhusvälja jaoks arvutamismeetodiks Rist. See režiim on loodud täpselt selleks, et ristvektorfaktor kahe arvutatud vektori suhtes kindlaks määrata.
Nagu meie 3D vaatest näha, kulgevad vektorid selle sammu järel meie palli ümber soovitud viisil tangentsiaalselt.
Jõuvälja kasutamine
Oleme ette valmistanud esimese vektorvälja osakese tee ümber palli jaoks, kuid kahjuks ei pane osakesed seni meie vektoritest tähele.
Et meie enda loodud väljal olevad vektorid saaksid toimida jõududena, vajame nn jõuvälja-objekti. Leiame selle menüüst Simuleeri>Jõud.
Et meie vektorruum toimiks kui jõuväli, avame jõuvälja seadistusakna ja lohista volumenerija lohistamise teel objekti-haldurisse objekti-välja jõuvälja-objektis.
Koheselt lohistades küsitakse meilt väikese valikumenüü kaudu, kas volumenerija peaks olema punkti- või volumenobjekt.. Valime loomulikult volumenobjekti.
Nüüd peaks meie volumenerija'i defineeritud vektorruum olema jõuväljade loendis. Nagu näha, töötab ka jõuväli kihtide ja arvutusrežiimide kaudu, mis viitab uute võimaluste loomisele jõuvälja-objektiga.
Kui alustame animatsiooni esitamisnupuga, näeme, et osakesed hakkavad nüüd meie vektorvälja mõjul liikuma.
See pole veel soovitud tulemus. Praegu on jõuvälja-objektis endiselt aktiivne kiirustüüp Lisada kiirustusele, mis tähendab, et osakesed pöörduvad lihtsalt veidi rohkem hoo sisse. Soovime aga, et osakesed muudaksid oma suunda vastavalt vektoritele, millele vastasme menüüs kiirustüübi valikuga.
Pärast seda muudatust näeb animatsioon juba parem välja. Paljud osakesed otsivad juba oma teed mööda kera pinda, kuid mõned teised pöörduvad kera eest ära. Silma torkab ka see, et need pööratud osakesed liiguvad väga veidratel radadel.
Seda saame väga lihtsalt parandada, valides jõuvälja-objekti seadistusaknas volumenerija objektilisti ja selle seades tasandite-vahekaardil prooviroodu ülemineku Järgmine asemel Lineaarne. See tähendab, et mitte lihtsalt järgmist voxeli üles- või alla ümardatakse, vaid kasutatakse lineaarset keskmist väärtust.
Pärast seda muutust liiguvad kera poolt ära pööratud osakesed juba oluliselt vabamalt ringi. Järgmiseks tagame, et ka need osakesed jäävad kera pinnale.
Selleks et kera pinnal liikuva osakeste rajad ei oleks liiga nürid, suurendame juhusvälja seadistusaknas põhineva müra all oleva suurust. Muidugi on kõigil vaba voli veidi juhusvälja seadistustega katsetada.
Kui oleme valinud juhusvälja-objekti, saame interaktiivselt 3D vaates muuta parameetrit suurus. Olen otsustanud kasutada suurust 300%, et vektorites oleks müra selgelt näha.
Teise vektorvälja loomine
Nagu meie "Sisemise kera" objekti nimi juba algusest peale vihjab, peaks lisaks just valminud sisemise kera vektorväljale olema ka teine vektorväli välimise kera jaoks. See teine, veidi suurem kera peaks tagama, et võimalikult peegeldunud osakesed saadetakse tagasi sisemise kera pinnale.
Duplitseerime selleks keraobjekti, lohistades seda koos all hoida Ctrl- klahviga Objekt- halduris, jätame selle volumenerija alamobjektiks ja lisame sellele lisaks "väljas" märgendi, et mõlemad kera oleksid eristatavad. Lisaks anname sellele välimisele kerale 2 cm võrra suurema raadiuse osakesed.
Mahutivälja tootja on teisest välisest kuulist juba loonud vastava vektorvälja ning lisanud selle juba olemasolevatele objektidele juurde.
Mahutiväljaloendi objektide loendi sätete dialoogis on välimine kuul nüüd esikohal ja töötaks viimasena. Kuid me soovime, et välimine kuul tungiks kõigepealt osakeste sisse ja seejärel neid enam ei vabastaks.
Tegutseme objektide-loendis. Kõigepealt nihutame "Välimine kuul" loendi allapoole. Kuna Juhusliku välja mõjutab selle all olev „Sisemine kuul“, kuid sellele järgnevalt tuleks see töödelda otse "Välise kera" järel, loome lihtsalt kausta, kuhu saame Juhusliku välja ja sisemise kuuli teisaldada. Selleks klõpsame Objekti-loendi all olevale kausta-nupule.
Nüüd tõstame Juhusliku välja ja sisemise kera Mahutiväljaloendi objektide loendist selle uue kausta abil ümber loendi esilehel
Kuna välimine kera, mille vektorid on risti kera pinnaga, toimib esimesena, peegelduvad vastu jõudvad osakesed hetkel täielikult tagasi. Välise kera vektorvälja pööramiseks kasutame Mahulfiltrit, mille abil saame kasutada mõnda vektoritega töötamiseks. Leiame Mahulfiltri-menüü objekti-loendi all ja valime sealt Vektori invertimise-filtri.
Kuna soovime, et Mahulfilter toimiks ainult välise kera vektoritele, loeme selle otse "Välise kera" kohale loendi esilehel kasutades lohistamist.
Nüüd peaks kõik soovitud viisil töötama. Klõpsake esitusnuppu, et näha, et kõik vektorväljad on korrektselt seadistatud. Osakesed tabavad kerale ja jaotuvad juhuslikult pinna peal.
Saame osakeste voogudele pisut rohkem elu sisse puhuda, käivitades Juhusliku välja müra Musterile animatsiooni.
Selleks avage Juhusliku välja seadete dialoog ja määrake Algkiirus, minu näites 50 %.
Osakeste voogud muutuvad nüüd animatsiooni tõttu Müra-Muster lühemaks, nad lagunevad mitmel pool.
Osakeste teisendamine Spline-radadeks
Nagu me väikeobjektidena saame praegu muidugi saata - eelistatavalt vajalikud - objektid reisile üle kera pinna. Alternatiivina saab osakeste teed automaatselt jälgida ja muuta Spline-radadeks. Selleks on vaja Jälitaja-objekti menüüst MoGraph.
Oleme Jälitaja abil valmis teisendama mõlema Andjate osakeste voogusid Spline-radadeks, lohistades mõlemad Andja-objektid Objekti-halduri kaudu uude Jälitaja sidumisse väljaloendis Jälitaja-objekti seadistustes.
Kuna mudelid suunavad aja jooksul päris palju osakesi, piirame Jälitaja poolt genereeritud Spline-radade pikkust. Valige Jälitaja-objekti seadistustest Piirang „Lõpp…
… ja määrake Piltide parameetri kaudu Spline-rajade pikkus. Valisin pikkuseks 100 pilti. Madalamad väärtused annavad vastavalt lühemad Spline-radad.
Pärast esitusnupule klõpsamist saame nüüd jälgida, kuidas Jälitaja genereeritud Spline-radad animatsioonina kera pinnal liiguvad.
Selle õpetuse esmaseks pildiks valmistasin keraobjekti dublikaadi ja katsin selle punase materjaliga. Kõik teised objektid Objekti-halduris saame peale Jälitaja-objekti nähtamatuks muuta.
Spliini teedega, mis on loodud Tracer- objektiga, kolmemõõtmeliste objektide loomiseks võite Tracer- objekti näiteks Kreis- objektiga siduda Sweep- objektiga. Sel juhul pöörake tähelepanu osakeste arvule ja elueale, kuna muidu arvuti kipub väga kiiresti kokku varisema ...