particle gravitace

Pokud si nevíte s něčím rady ohledně tvorby v Game Makeru - pište sem!
Odpovědět
BboyScary
Příspěvky: 243
Registrován: listopad 2, 2011, 6:33 pm
Facebook: https://www.facebook.com/BB-Scary-produkce-1161668
Bydliště: Kopřivnice

particle gravitace

Příspěvek od BboyScary » duben 11, 2019, 1:35 pm

Ahoj. Mám vytvořený particle systém, jsou to jen obyčejné pixely na ploše okruhu. Chtěl bych jim dát gravitaci tak, aby se všechny posunovaly do středu toho kruhu. Když dám part_type_gravity a jako direction zkouším třeba object_index, x, y, nebo název toho objektu.x atd vždy všechny ty částice jdou všechny jedním směrem. Nevíte někdo jak na to? Zkoušel jsem to dát do create i do stepu. Výsledek stejný.

create:

Kód: Vybrat vše

particle_1_sys = part_system_create();
particle_1_emit = part_emitter_create(particle_1_sys);
particle_1 = part_type_create();
part_type_life(particle_1, 14, 14);
part_type_sprite(particle_1, spr_pixel, 1, 0, 1);
part_type_orientation(particle_1, 1, 20, 1, 1, 1);
step:

Kód: Vybrat vše

    part_emitter_region(particle_1_sys, particle_1_emit, x - r, x + r, y - r, y + r, ps_shape_ellipse, ps_distr_gaussian);
    part_emitter_burst(particle_1_sys, particle_1_emit, particle_1, 30);
to r je jen poloměr toho kruhu, ten se zvětšuje.

Uživatelský avatar
ipq
Příspěvky: 924
Registrován: srpen 15, 2011, 7:31 pm
Bydliště: Petržalka

Re: particle gravitace

Příspěvek od ipq » květen 29, 2019, 9:26 pm

U particles je problém ten, že sa nedá u nich kontrolovať pozícia a smer, kde sú a kam idú a taktiež to, že nieje možné(čo je škoda) ich meniť počas toho, keď sú zobrazené, len u tých, čo sa spawnú.

Skôr by som to zmenil tak, že by sa emitter zrušil a nahradil klasickým scriptom, ktorý by sám náhodne spawnoval particles ale počas toho by sa spravila kalkulácia(pozícia a smer), ktorá sa bude aplikovávať na ne a tak meniť smer aby to vyzeralo, že idú k stredobodu ako by ich niečo priťahovalo.

BboyScary
Příspěvky: 243
Registrován: listopad 2, 2011, 6:33 pm
Facebook: https://www.facebook.com/BB-Scary-produkce-1161668
Bydliště: Kopřivnice

Re: particle gravitace

Příspěvek od BboyScary » červen 2, 2019, 1:51 pm

tak zkoušel jsem a dělá to to samé. Nechápu :D dal jsem i to že v jednom objektu se vytváří částice a ty mají gravitaci k druhému objektu. Ten druhý vytváří každý step nové a nové ty objekty s částicemi a i tak jdou všechny stejným směrem. (vím že takhle by mi to hru dost zasekalo ale zkusil jsem)

Uživatelský avatar
ipq
Příspěvky: 924
Registrován: srpen 15, 2011, 7:31 pm
Bydliště: Petržalka

Re: particle gravitace

Příspěvek od ipq » červen 5, 2019, 1:55 am

Keby som v GM robil, tak by som skúsil niečo spraviť a otestovať to ale nakoľko už s GM nerobím, viem to maximálne poradiť len v teoretickej časti a bez scriptu či ukážky.

Ale skúsim znovu...

Všimol som si, že GM podporuje Box2D, čo je fyzikálny engine integrovaný v tom a je tam položka Soft Body Particles, čo som si pozeral v manuálu, možno s toho by sa dalo použiť to ako gravity particles a upraviť to tak aby reagovali na gravitáciu. Ak si hral Angry Birds Space, tak tam bolo tiež vidieť, ako bola upravená fyzika. Objekty gravitačne reagovali len na tie planéty, čo ich priťahovali v závislosti ak boli už v gravitačnom poli.

Druhá možnosť, myslel som to takto:
step:

Kód: Vybrat vše

var nahx,nahy,smer,dlzka;

nahx=x+lenghtdir_x(r-random(r),random(360));
nahy=y+lenghtdir_y(r-random(r),random(360));
smer=point_direction(x,y,nahx,nahy);
dlzka=point_distance(x,y,nahx,nahy);

part_type_direction(particle_1,smer,smer,0,0);
part_type_speed(particle_1,dlzka/14,dlzka/14,-(dlzka/14),0);

part_particles_create(particle_1_sys,nahx,nahy,particle_1,1);
nahx a nahy by mali simulovať ps_shape_ellipse s ps_distr_gaussian ale nieje zaručené, že to tak pôjde nakoľko je to spackané v notepade(tím že v GM už nerobím) a čo sa týka tej 14-tky pri dlzka, to je životnosť, ktorú máš uvedenú v particles v life. V prípade, ak ich chceš viac vykresliť napr. 30, ako to tam vidím, trebalo by dať ten kôd do repeat napr.: repeat(30). Ak chceš aby sa menil smer i spritesu u particles, stačí to tam pridať a dať mu to samé ako u direction.

BboyScary
Příspěvky: 243
Registrován: listopad 2, 2011, 6:33 pm
Facebook: https://www.facebook.com/BB-Scary-produkce-1161668
Bydliště: Kopřivnice

Re: particle gravitace

Příspěvek od BboyScary » červen 5, 2019, 10:23 am

aha díky za radu chápu všechno. Až vyzkouším, dám vědět. Děkuju

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 2 hosti