Prírodou inšpirované algoritmyštudijné materiály pre projekt mobilnej triedy umelej inteligencie |
||
Časticový manažérJe to vlastne srdce celého systému. Pre povahu časticových systémov sa štruktúra tejto časti najviac mení v závislosti od danej aplikácie. Časticový manažér je šitý na mieru tomu - ktorému určeniu celého systému. Preto je vo všeobecnosti ťažké povedať niečo o jeho stavbe. Obvykle časticový manažér pozostáva iba z týchto dvoch zložiek (ale nie je to pravidlo): Fyzikálny model a Časticové emitory. Dá sa však povedať, za čo je zodpovedný. Je to prideľovanie atribútov časticiam, ich zmenu, prideľovanie atribútov časticovým emitorom, vytváranie a rušenie emitorov. Jeho hlavnou úlohou je ale spravovať interakciu medzi časticami navzájom a medzi časticami a fyzikálnym prostredím. Znovu si môžeme pomôcť príkladom s vodopádom: ![]() Vodopád 2Na tomto obrázku je možné vidieť interakciu častíc medzi sebou aj s prostredím. Časticový manažér najprv prevezme atribúty prostredia, jeho fyzikálny model tvar prekážok a podobne. Následne vytvára primárny emitor častíc a prideľuje mu atribúty. Tento emituje častice do prostredia a prideľuje im ich atribúty (na tomto mieste sa dá diskutovať o určitej hierarchickej štruktúre atribútov a o tom ako sa ovplyvňujú). Interná reprezentácia častíc je následne prevedená do časticového manažéra a ten s ňou ďalej pracuje. Ovplyvňuje všetky atribúty vo fáze života častice. Pri prípadnej kolízii častíc mení ich reprezentáciu. Zaujímavá zmena sa deje pri kolízii častice s prostredím, reprezentovaným ako povrch. Vtedy časticový manažér vytvára nový dočasný emitor a znova inicializuje jeho parametre podobne ako u častice. Tento emitor znova emituje ďalšie častice a kolobeh sa opakuje. Úloha a zodpovednosť časticového manažéra a jednotlivých časticových emitorov sa nedajú jednoznačne od seba oddeliť, funguje tu určitý mechanizmus hierarchie a priority. Toto platí hlavne pri grafických aplikáciách. Fyzikálny model systému je súčasťou časticového manažéra. Pozostáva z dvoch častí:
|
||
Kontakt: Marek Bundzel |