Hiukkasjärjestelmä

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 27. kesäkuuta 2017 tarkistetusta versiosta . tarkastukset vaativat 8 muokkausta .

Hiukkasjärjestelmä  on tietokonegrafiikassa käytetty menetelmä kuvaamaan kohteita, joilla ei ole selkeitä geometrisia rajoja (erilaiset pilvet, sumut, räjähdykset, höyrysuihkut, rakettipilvet, savu, lumi, sade jne.). Hiukkasjärjestelmiä voidaan toteuttaa sekä 2D- että 3D-grafiikassa .

Periaate

Hiukkasjärjestelmä koostuu tietystä (kiinteästä tai mielivaltaisesta) määrästä hiukkasia. Matemaattisesti jokainen hiukkanen esitetään materiaalipisteenä, jolla on lisäattribuutteja, kuten ulkonäkö, nopeus, suuntautuminen avaruudessa, kulmanopeus jne. Ohjelman aikana jokainen hiukkanen muuttaa tilaansa tietyn lain mukaisesti, joka on yhteinen kaikille järjestelmän hiukkasille. . Esimerkiksi painovoima voi vaikuttaa hiukkaseen, muuttaa kokoa, väriä, nopeutta ja niin edelleen, ja kaikkien laskelmien jälkeen hiukkanen renderöidään. Hiukkanen voidaan renderöidä pisteenä, kolmiona, spritenä tai jopa kokonaisena 3D-mallina. Nesteiden fysiikkaa mallinnettaessa käytetään usein metapalloja , jotka "sulautuvat" toisiinsa.

Tällä hetkellä (maaliskuu 2009) ei ole yleisesti hyväksyttyä hiukkasjärjestelmien toteutusta. Eri peleissä ja 3D-mallinnusohjelmissa hiukkasten ominaisuudet, käyttäytyminen ja ulkonäkö voivat olla olennaisesti erilaisia.

Useimmissa toteutuksissa uudet hiukkaset emittoivat niin sanotun "emitterin" avulla. Säteilijä voi olla piste, jolloin uudet hiukkaset ilmestyvät yhteen paikkaan. Näin voit simuloida esimerkiksi räjähdyksen: sen keskipiste on emitteri. Säteilijä voi olla suoraviivainen segmentti tai taso: esimerkiksi sade- tai lumihiukkasten pitäisi ilmestyä korkealle vaakatasolle. Säteilijä voi olla myös mielivaltainen geometrinen esine: tässä tapauksessa uusia hiukkasia ilmestyy sen koko pinnalle.

Hiukkanen pysyy harvoin levossa elinkaarensa aikana. Hiukkaset voivat liikkua, pyöriä, muuttaa väriään ja/tai läpinäkyvyyttä ja törmätä 3D-objekteihin. Hiukkasilla on usein maksimi käyttöikä, jonka jälkeen hiukkanen katoaa.

Reaaliaikaisissa 3D-sovelluksissa (kuten tietokonepeleissä) oletetaan yleisesti, että hiukkaset eivät varjoa toisiaan eivätkä ympäröivää geometriaa eivätkä absorboi, vaan säteilevät valoa. Ilman näitä yksinkertaistuksia hiukkasjärjestelmän laskeminen vaatii enemmän resursseja: valon absorption tapauksessa hiukkaset on lajiteltava etäisyyden mukaan kamerasta, ja varjojen tapauksessa jokainen hiukkanen on piirrettävä useita kertoja .

Toiminnan laajentaminen

Hiukkasiin voidaan soveltaa spatiaalisia muodonmuutoksia: voimakenttiä, jotka voivat muuttaa hiukkasten liikevektoria, nopeuksia ja muita parametreja. Esimerkkejä tällaisista muodonmuutoksista ovat tuuli , painovoima , paineaalto , vaikka ne ovat kaikki illuusioita. Avaruusmuodonmuutoksilla on visuaalinen esitys vain muokkausohjelmassa, mutta ne muuttavat ohjaamiensa hiukkasten parametreja.

Sovellus

Yksinkertaisia ​​hiukkasjärjestelmiä käytetään lähes kaikissa nykyaikaisissa tietokonepeleissä ja 3D-mallinnuspaketeissa. Järjestelmä voi olla hyvin monimutkainen ja sitä voidaan käyttää paitsi grafiikassa, myös tieteellisissä laskelmissa: esimerkiksi hiukkasjärjestelmän fysiikan lakeja käyttämällä voit simuloida kaasumolekyylien käyttäytymistä.

Linkit