Jotta voimme keskittyä työskentelyyn uusien toimintojen parissa, olen valmistellut projektitiedoston mukana tulevaan materiaalipakettiin: PSD_R21_VektorVolumen_start.c4d. Tiedosto sisältää parametrinen pallon objektin ja kaksi hiukkaspilvi-Emitteriä, jotka on suunnattu palloa kohti ylhäältä ja alhaalta. Tämän tutoriaalin tavoitteena on saada hiukkaset osuvan palloon ja jakautumaan siitä kaikkiin suuntiin.
Tarkastellaan scenen osia lyhyesti. Kummallakin hiukkaspilvi-Emitterillä on samat asetukset: ne lähettävät 500 hiukkasta kuvaan 300 asti, missä hiukkasten elinkaaren kesto on 1000 kuvaa, mikä riittää animaation pituuden loppuun saakka.
Klikkaus toiston painiketta näyttää, että molempien Emitterien hiukkaset kulkevat parhaillaan huomaamatta pallon läpi. Tätä haluamme nyt muuttaa.
Ensimmäisen vektorikentän rakentaminen
Aloittakaamme luomalla ensimmäinen vektorikenttä, jonka generoimme pallon määräämästä geometriasta. Tämä kenttä ohjaa osuvia hiukkasia satunnaiskuvion avulla pallon ympärillä.
Joten hankimme ensin tilavuuserottimen valikosta tilavuus.
Sen jälkeen sijoitamme pallon objektin raahaamalla sen objekti-hallintaan alaobjektiksi tilavuuserottimeen. Tällä hetkellä volyyppityypiksi on määritetty vielä etäisyyskenttä, joten tilavuuserottimen rakentaa pallon edelleen vokseleista.
Jotta muutamme pallon sen sijaan vektorikentäksi, muutamme volyyppityypin sen liittyvän valikon kautta yksinkertaisesti tyypiksi vektori.
Vektorikentän vielä hieman karkeaa jakoa muutamme nyt vokselikoon avulla. Arvo 5 cm riittää täysin tarkoitukseemme.
Aiemmin olleen pallon objektista on tällä hetkellä tilavuusmesherin ansiosta tullut säteittäinen vektorikenttä lukemattomista vektoreista.
Kun lähennämme vektorikenttää hieman, näemme yksittäiset vektorit, jotka ovat kaikki kohtisuorassa pallon pinnalla olevaa sijaintia vastaan. Tästä johtuvat voimat osoittavat siis kaikki pois palloltamme. Ei aivan sitä mitä tarvitsemme hiukkasten ohjaukseen pallon ympärillä.
Meidän on siis huolehdittava kahdesta asiasta: vektorien tulee olla kohtisuorassa pallon pinnan suhteen ja niiden on oltava satunnaiskuvion kaltaisia, jotta hiukkaset ohjautuvat eri suuntiin pinnalla.
Satunnaiskuvion takaa satunnaiskenttä, jonka haemme Generoi>kenttä valikosta osaksi scenettämme.
Asetamme satunnaiskentän raahaamalla sen objekti-hallintaan alaobjektiksi tilavuuserottimen. Tilavuuserottimen asetusten dialogissa satunnaiskenttä listataan sen jälkeen pallon yläpuolisena kerroksena.
Katsaus 3D-näkymään osoittaa, että molemmat vektorikentät eivät vielä toimi niin kuin tarvitsemme. Satunnaiskentän tulisi lopulta vaikuttaa allaan listattuun vektoripalloon.
Sen saavuttamiseksi valitsemme Satunnaiskentän kohteen objektilistan Objektit tilavuuserottimessa ja asetamme satunnaiskentän asetuksissa sen luontitilan arvoon Objektit edessä.
Nyt satunnaiskenttä vaikuttaa halutulla tavalla kaikkiin pallon luomilla vektoreihin. Tarvitsemme enää vain varmistaa, että kaaoksellisesti kiertyneet vektorit osoittavat pallon pinnalla.
Satunnaiskentän ja pallon käsittelyn laskentaustapa näyttää siis vielä hieman epäsopivalta. Valitsemme Laskentatapa -valikosta tilavuuserottimen objektilistan Satunnaiskentälle laskentametodin Ristitulos. Tämä laskentatapa on juuri tehty määrittämään kohtisuorat vektorit ristituloa käyttäen kahdelle laskennalle.
Kuten 3D-näkymästämme näkyy, vektorit kulkevat tässä vaiheessa halutusti tangentiaalisesti ympäri palloamme.
Voimakentän käyttö
Olemme valmistelleet ensimmäisen vektorikentän hiukkasten reitille palloamme ympäri, mutta valitettavasti hiukkaset eivät vielä kiinnitä huomiota vektoreihimme.
Jotta itse luomamme kentän vektorit voivat toimia voimina, tarvitsemme niin kutsutun voimakenttä-objektin. Löydämme sen valikosta Simuloida>Voimat.
Jotta vektoritilavuutemme toimii voimakenttänä, avaa voimakentän asetusikkuna ja vedä tilavuudenluoja raahaamalla ja pudottamalla Objektin-hallintaan Voimakenttä-objektin objektikenttään.
Vapauttaessasi sinua pyydetään pienessä valintavalikossa, haluatko, että tilavuudenluoja käsitellään pisteen- vai täydellä elementtilaskelmalla.Valitse tietysti vaihtoehto täydellisen elementtilaskennan.
Nyt itse tilavuudenluojan määrittelemä vektoritilavuus tulisi näkyä voimakenttäluettelossa. Huomaamme, että voimakenttä toimii myös tasojen ja laskentatapojen kautta, mikä antaa viitteitä uusista mahdollisuuksista voimakenttä-objektissa.
Kun napsautamme toistonappia animoidessamme, huomaamme, että hiukkaset ovat nyt vaikuttuneet vektoreiden kentästämme.
Tämä ei ole vielä haluttu lopputulos. Tällä hetkellä voimakenttä-objektissa on edelleen lisää nopeustyyppiin aktiivinen, joten hiukkaset ohjataan vain hieman enemmän liikkeellä. Haluamme kuitenkin, että hiukkaset muuttavat suuntaa vektorien mukaisesti, minkä valitsemme nopeustyyppi -valikosta.
Tämän muutoksen jälkeen animaatio näyttää jo paremmalta. Monet hiukkaset etsivät jo tietään pallopinnoilla, mutta toiset ohjataan kauemmas pallolta. Lisäksi huomaamme, että nämä ohjatut hiukkaset liikkuvat hyvin oudoilla radoilla.
Tämän voimme korjata hyvin yksinkertaisesti valitsemalla voimakentän-objektin asetusikkunasta tilavuudenluoja objektiluettelosta ja asettamalla sen asetuksista Taso-sivulla Näytteenottotila näytteestä Lähimpään lineaariseksi. Tällöin ei yksinkertaisesti pyöristetä lähimpään tai kauimpana olevaan pikseliin, vaan käytetään lineaarista keskiarvoa.
Tämän muutoksen jälkeen pallolta poispäin ohjautuvat hiukkaset liikkuvat jo paljon vapaammin ympäriinsä. Katsotaan nyt, että myös nämä hiukkaset pysyvät pallopinnoilla.
Jotta pallopinnoilla kulkevien hiukkasten radat eivät olisi liian hienovaraisia, kasvatamme Satunnaiskenttä-objektin asetusikkunassa myös sen pohjana olevan Kohina- kentän Kokoa. Tietysti jokaisella on vapaus kokeilla lisää Satunnaiskentän asetuksia.
Kun Satunnaiskenttä-objekti on valittuna, voimme muuttaa Koko parametria interaktiivisesti 3D-näkymässä omaan ohjaintietoosi.
Olen valinnut 300 %:n Koon, jotta Kohina on selvästi havaittavissa vektoreissa.
Toisen vektorikentän rakentaminen
Kuten pallo-objektimme "Sisempi pallo" nimestä voi päätellä, sen lisäksi, että sisäisen pallon vektorikenttä on juuri valmistunut, meillä on myös toinen vektorikenttä ulkoista palloa varten. Tämän toisen, hieman suuremman pallon tarkoituksena on varmistaa, että mahdollisesti heijastuneet hiukkaset lähetetään takaisin sisäisen pallon pinnalle.
Kaksoisklikkaamalla kopioidaksemme pallo-objektimme, jättäen Sarkain- tai Ctrl -napin painettuna Objekti-hallinnassa, jätämme sen tilavuudenluojan aliohjelmaksi ja annamme sille lisän "ulkoinen", jotta molemmat pallot voi erottaa toisistaan. Tälle ulkoiselle pallolle annamme myös 2 cm suuremman Säteen hiukkasten liikkumavaraa varten.
Tilanlaskija on luonut vastaavan vektorikentän toisesta ulommaisesta pallomaisesta muodosta ja lisännyt sen jo olemassa oleviin objekteihin.
Objektien listaan Tilanlaskijan asetusten valintaikkunassa ulompi pallo on nyt ylimpänä ja käsitellään viimeisenä. Haluamme kuitenkin, että ulkopuolinen pallo ensin lävistetään hiukkasilla ja hiukkaset sitten eivät enää lähde siitä.
Tuo siis hieman järjestystä Objektin-listaan. Siirtäkäämme ensin ”Ulkopuolinen pallo” alimmaksi. Koska Satunnaiskenttänä vaikuttaa sen alla olevaan ”Sisäiseen palloon”, mutta sen pitäisi käsitellä sitä välittömästi ulkopuolisen pallon jälkeen, luomme vain kansion, johon voimme siirtää Satunnaiskentän ja sisäisen pallon. Klikkaamalla Kansion-painiketta Objektin-listan alla.
Nyt siirrämme Satunnaiskentän ja sisäisen pallon Objektin-listalta Tilanlaskijan sisällä tähän uuteen kansion. Raahaamalla ja pudottamalla.
Koska ulkopuolinen pallo, jonka vektorit ovat kohtisuorassa pallon pintaa kohti, vaikuttaa ensimmäisenä, osuvat hiukkaset tällä hetkellä täysin takaisin. Kääntääksemme ulkopuolisen pallon vektoreiden kentän, käytämme Tilasuodatinta, joita meillä on valittavina myös vektorien kanssa työskentelyyn. Löydämme Tilasuodatin-valikon Objektin-listan alla ja valitsemme sieltä Kääntää vektori-Suodattimen.
Koska haluamme, että Tilasuodin vaikuttaa yksinomaan ulkopuolisen pallon vektoreihin, asetamme sen raahaamalla ja pudottamalla suoraan ”Ulkopallon” yläpuolelle.
Nyt kaiken pitäisi toimia toivotusti. Klikkaamalla toistopainiketta näemme, että kaikki vektorikentät on määritetty oikein. Hiukkaset osuvat palloon ja jakautuvat satunnaisesti pinnalle.
Voimme tuoda hiukan enemmän eloa hiukkasvirtoihin, animoimalla Satunnaiskentän Kohina-Kuvion.
Joten avaa Satunnaiskentän asetusten valintaikkuna ja aseta Alkunopeus. Esimerkiksi 50 %:iin.
Hiukkasvirrat ovat nyt lyhyempiä animoidun Kohina-Kuviokkeen avulla, ne hajoavat useammissa kohdissa.
Partikkelien muuntaminen sijaintikaavoiksi
Nyt kun partikkelit ovat valmiita, voimme tietenkin lähettää minkä tahansa – mieluiten pienen – objektin matkalle pallon pinnalla. Vaihtoehtona on seurata partikkelien reittejä automaattisesti ja muuntaa ne sijaintikaavoiksi. Tätä varten tarvitsemme Jäljittäjä-Objektin MoGraph-valikosta.
Jotta partikkelivirrat kummankin Emittimen osalta muutetaan sijaintikaavoiksi, vedämme molemmat Emitter-Objektit raahaamalla ja pudottamalla Objektin-hallintaan Jäljittäjä Linkitys kenttään Jäljittäjä-Objektin asetusten valintaikkunassa.
Koska Emitterit kuitenkin ajan myötä sinkoavat melko paljon partikkeleita, rajoitamme Jäljittäjän luomien sijaintikaavojen pituutta. Valitsemme Rajoitteeksi Loppu … Jäljittäjä-Objektin asetusten valintaikkunasta.
… ja asetamme Kuvien parametrin avulla sijaintikaavojen pituuden. Valitsin 100 kuvaa. Alhaisemmat arvot johtavat lyhyempiin sijaintikaavoihin vastaavasti.
Napauttamalla toistopainiketta voimme nyt katsoa, kuinka Jäljittäjän luomat sijaintikaavat animoituvat vedoten pallon pintaan.
Tämän opetusohjeen kannen kuvaa varten loimme duplikaatin pallo-objektista ja varustimme sen punaisella materiaalilla. Pois lukien Jäljittäjä-Objekti, voimme poistaa kaikkien muiden objektien näkyvyyden Objektin-hallinnasta.
Saadaksesi 3D-objekteja Tracer-objektin luomista Spline-poluista, voit esimerkiksi alisteisen Kreis--objektin kanssa Sweep--objektiin Tracer--objektin avulla. Tässä tapauksessa kiinnitä kuitenkin huomiota hiukkasten määrään ja niiden elinikään, muuten tietokone hidastelee nopeasti...