Práce s Particles v praxi
Ukážeme si jak jednoduše použít částice v GM pomocí ikonek.
Vytvoříme si jednoduchý prolet galaxií
Vytvoříme nový objekt, přidáme do něj event Create a přepneme se na záložku Extra
Vytvoření částicového systému -> nastavení hloubky
- Pro naše účely hloubku nemusíme nastavovat
Vytvoření nového typu částice -> vybrání jejího tvaru, popřípadě spritu, minimální a maximální velikosti (při vytváření bude vybráno mezi těmito hodnotami) a poměr velikosti o kterou se částice bude zvětšovat.
- vybereme tvar hvězdy (star) nebo můžete použít nějaký vlastní sprite
- velikosti necháme nulové, ale zvětšení nastavíme na 0.01
Nastavení barev a průhlednosti pro zadaný typ částice -> changing (plynulí přechod mezi dvěmi barvami), mixed (vybere se náhodná barva mezi zadanými barvami), počáteční průhlednost a koncová (0 = neviditelná, 1 = viditelná) -> plynule se mění od počáteční ke koncové hodnotě
- u shape vybereme proměnlivý (changing)
- barvy zvolíme první černou druhou žlutou
- počáteční alfa průhlednost 0.5, koncová 1
Nastavení délky života částice -> mezi dvěma hodnotama se náhodně vybere a částice po uplynulé době (udávané v krocích) zmizí
- min i max nastavíme na 100 (proletí a za obrazovkou zmizí...)
Nastavení pohybu částice -> minimální a maximální rychlost (bude náhodně vybráno číslo mezi zadanými), minimální a maximální úhel směru a tření (kladné hodnoty určují o kolik se bude zpomalovat, záporné pak určují zrychlení)
- minimální rychlost bude 0.1 maximální 0.2
- minimální úhel směru pochybu 0 maximální 360 (do všech stran)
- tření nastavíme na -0.3 (bude se zrychlovat)
Vytvoření typu emitteru (nebo také zářiče, vysílače) -> nastavíme jeho tvar ve kterém se budou částice tvořit, poté maximální a minimální souřadncie x,y kde se mohou čásitce tvořit
- tvar vybereme elipsu (ellipse)
- a souřadncie nastavíme na střed místnosti s odchylkou +- 5 (tzn. xmin: (room_width/2)-5, xmax: (room_width/2)+5, ymin: (room_height/2)-5, ymax: (room_height/2)+5)
Stream neboli proud z emitteru (každým krokem tvoří zadaný počet částic) ( -> vybereme příslušný emitter a částici kterou pomocí něj chceme vytvořit a zadáme kolik částic chceme v každém kroku vytvořit (záporné hodnoty udávají šanci na vytvoření částice -1/x)
- počet nastavíme na -2 (šance na vytvoření částice každým druhým krokem)
V kódu GML by to vypadalo nějak takhle:
particle_system = part_system_create(); particle = part_type_create(); part_type_shape(particle, pt_shape_star); part_type_size(particle, 0, 0, 0.01, 0); part_type_color2(particle, c_black, c_yellow); part_type_speed(particle, 0.1, 0.2, 0.3, 0); part_type_direction(particle, 0, 360, 0, 0); emitter = part_emitter_create(particle_system); part_emitter_region(particle_system, emitter, (room_width/2)-5, (room_width/2)+5, (room_height/2)-5, (room_height/2)+5, ps_shape_ellipse, ps_distr_linear); part_emitter_stream(particle_system, emitter, particle, -2);
Stáhnout
Stažením následujícího souboru souhlasíš s licenčními podmínkamiStaženo 778x (10.24 kB)