Skocz do zawartości

[REQ]Particles - Tutorial


Issen

Rekomendowane odpowiedzi

Właśnie o to chodzi że tam nie ma. W folderze z gra też nie.

 

{
  // make the particle system
  ps = part_system_create();

  // the firework particles
  pt1 = part_type_create();
  part_type_shape(pt1,pt_shape_flare);
  part_type_size(pt1,0.1,0.2,0,0);
  part_type_speed(pt1,0.5,4,0,0);
  part_type_direction(pt1,0,360,0,0);
  part_type_color1(pt1,c_red);
  part_type_alpha2(pt1,1,0.4);
  part_type_life(pt1,20,30);
  part_type_gravity(pt1,0.2,270);

  // the rocket
  pt2 = part_type_create();
  part_type_shape(pt2,pt_shape_sphere);
  part_type_size(pt2,0.2,0.2,0,0);
  part_type_speed(pt2,10,14,0,0);
  part_type_direction(pt2,80,100,0,0);
  part_type_color2(pt2,c_white,c_gray);
  part_type_life(pt2,30,60);
  part_type_gravity(pt2,0.2,270);
  part_type_death(pt2,150,pt1);    // create the firework on death

  // create the emitter
  em = part_emitter_create(ps);
  part_emitter_region(ps,em,100,540,480,490,ps_shape_rectangle,ps_distr_linear);
  part_emitter_stream(ps,em,pt2,-4);   // create one every four steps
}

Czy ktoś może mi dokładnie opisać te funkcje?

Odnośnik do komentarza
Udostępnij na innych stronach

Jasne - Help opisuje je całkiem dokładnie :P

 

A ja dla początkujących (i nie tylko), do worzenia partykuł polecam program Particle Designer autorstwa ALertGames. Jest łatwy do znalezienia na oficjalnym forum.

Ma świetne możliwości i bardzo przyspiesza robienie ładnych efektów - w Magi go używałęm często i sami wiecie jak to teraz wygląda.

No i jako, że wszystkie te te funkcje wpływają na wygląd efektu, to najlepiej jednak je po prostu zobaczyć w działaniu - tutoriale niewiele tu dadzą.

Odnośnik do komentarza
Udostępnij na innych stronach

Ten kod nie działa. Dalej Particle wykonuje się w nieskończoność.

 

Hmmm...a nie wrzuciłes tego kodu przypadkiem w "step" jakiegos obiektu ? Bo w takim razie w każdym kroku programu emiter będzie tworzył 1 "burst" cząsteczek co da efekt ich ciągłej emisji. Musisz w takim wypadku dać jakiś warunek ograniczający np>

 

if emituj=true
      {
      emituj=false
      part_emitter_burst(Sname,Ename,Pname,1);
      }

 

i wtedy cżasteczki wyemitują się tylko raz. Wcale nie trzeba niszczyć emitera....

Odnośnik do komentarza
Udostępnij na innych stronach

Działa! Dzięki. Masz u mnie plusa (trzy plusy i wpie**ol) :).

A tak na poważnie to dalej nie wiem jak zrobić aby particles wykonało się na obiekcie. A nie w miejscu 0,0. Może to być związane z part_emiter_region?

 

edit

 

tak to jest zwiazane z ta linijka:

 

part_emitter_region(Sname,Ename,x,x,y,y,pt_shape_explosion,ps_distr_linear);

Czy jest jakaś funkcja która niszczy obiekt po zakończeniu efektu.

Coś jakby if part==end then instance_destroy? tylko jak by taki kod wyglądał??

 

I jak zrobić aby particles wykonywało się nad wszystkim?

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...