Autor Wątek: Deszcz w grach.  (Przeczytany 2771 razy)

Offline taki_tam

  • Użytkownik

# Listopad 13, 2007, 16:46:41
Hejka wszystkim! ;)

Mam takie małe pytanie. W jaki sposób Wy robicie deszcz w grach? (2D)
Sprity czy może jeszcze jakoś inaczej?

Pozdrawiam! ;) kompustelnik taki_tam

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

RageX

  • Gość
# Listopad 13, 2007, 16:51:54
.
« Ostatnia zmiana: Kwiecień 21, 2008, 22:09:42 wysłana przez Szalonuki »

RageX

  • Gość
# Listopad 13, 2007, 16:52:01
A może po prostu system cząsteczkowy. Można go używać do robienia śniegu, ognia, mgły itp. Myślę, że do deszczu też by się nadawało.

Offline taki_tam

  • Użytkownik

# Listopad 13, 2007, 16:54:27
Oo. Pewnie ten sposób zastosuje.
BTW. pytam bo ja miałem to robić na spritach(tak jak np. w Soldat). Pomyślałem, że na pewno ktoś zna lepszy sposób.

Pozdrawiam! ;) kompustelnik taki_tam

Offline k_b

  • Użytkownik
    • Blog

# Listopad 13, 2007, 16:59:33
Co prawda jeszcze nie tworzyłem deszczu, ale jeśli będę robił to ja to sobie wyobrażam tak:

Ustalam długość pojedynczego odcinka deszczu, grubość oraz całkowite natężenie opadów. W zależności od natężenia opadów ustalam odstęp pomiędzy odcinkami deszczu, a w pętli rysuję poszczególne odcinki. Rysuję to znaczy - w żadnym wypadku nie sprajtami, a po prostu rysuję linię (w końcu gdyby to był sprajt, też byłaby to linia, a tak zyskuję wydajność). Na współrzędne wystarczą IMO structy POINT dynamicznie zarządzane.

RageX

  • Gość
# Listopad 13, 2007, 17:02:57
#3 #2
też bym wolał system cząsteczek, od systemu particli...  ;D

Offline taki_tam

  • Użytkownik

# Listopad 13, 2007, 17:18:04
@RageX:

Po prostu nie za późno sprawdziłem czy są już jakieś odpowiedzi.

Nie no, zdecydowanie bardziej wole particle od cząsteczek :D ;D :P

Pozdrawiam! ;) kompustelnik taki_tam

Offline Liosan

  • Redaktor

# Listopad 13, 2007, 17:24:49
Częstą optymalizacją (przy silnych opadach) jest rysowanie kilku kropel na jednym sprite'cie. Generalnie deszcze leci w miarę szybko więc i tak nie będzie widać lekkiego "grupowania" kropel :)

Liosan

Offline Krzysiek K.

  • Redaktor
    • DevKK.net

# Listopad 13, 2007, 18:23:44
W Oblivionie po prostu przygotowali zapętlonego mesha, którego przypinają do kamery i scrollują, więc na dobrą sprawę nie ma co za bardzo kombinowac z systemem particli. :)

Offline Majtek

  • Użytkownik

# Listopad 13, 2007, 19:59:56
a jak zrobimy coś wolno opadającego np. śnieg. Jak przypiszemy do kamery i będziemy przesuwać razem z kamerą to ten śnieg będzie się przesuwał razem z kamerą, co będzie wyglądało dziwnie. śnieg powinien spadać prosto na ziemię a nie się przesuwać.

Offline Krzysiek K.

  • Redaktor
    • DevKK.net

# Listopad 13, 2007, 20:37:26
a jak zrobimy coś wolno opadającego np. śnieg. Jak przypiszemy do kamery i będziemy przesuwać razem z kamerą to ten śnieg będzie się przesuwał razem z kamerą, co będzie wyglądało dziwnie. śnieg powinien spadać prosto na ziemię a nie się przesuwać.
Powiedz to ludziom od Obliviona. ;)

Offline REGi

  • mod team ^_^
  • Użytkownik
    • 2DEV

# Listopad 13, 2007, 20:58:12
ja bym zrobił to tak, jak proponuje Liosan, czyli tekstura z przygotowanymi smugami deszczu i rysowane jako sprite zwrócone zawsze do kamery - to jest to dobre zastosowanie zarówno przy małych jak i dużych opadach. "krople" spadają szybko i ciężko jest się przyjrzeć dokładnie co tam tak na prawdę leci ;) następnie rysować to w jakimś niedalekim polu widzenia kamery, tak aby ta dalsza część była bardziej nasilona (to daje złudzenie, że dalej też pada deszcz) i po sprawie :)

Offline mINA87

  • Użytkownik

# Listopad 13, 2007, 21:52:33
Bardzo fajne efekty daje bezstanowy system cząsteczkowy liczony na GPU, który transformujemy dosyć nietypowo - z kamery bierzemy rotację, translację olewamy, ale bierzemy wektor prędkości i używamy wektora odwrotnego do dodania go do wektora prędkości cząsteczek particle systemu. Przy 10-100k cząsteczek nie odczuwa się tego za bardzo, a efekt może być kapitany.
W toy shopie z drugiej strony tworzą kilka wirtualnych płaszczyzn z deszczem i rysują to do offscreen bufora, biorą pod uwagę kierunek deszczu, oświetlają i całość wygąda nieziemsko po zmixowaniu w postprocesie.

Offline Riddlemaster

  • Użytkownik
    • Moja strona domowa

# Listopad 13, 2007, 22:17:46
mINA jasne, ale czy ja wiem, czy do gry 2D jest to takie potrzebne ;)

Offline mINA87

  • Użytkownik

# Listopad 13, 2007, 22:48:07
O lol, nie zauważyłem tego 2D :P Muszę się w końcu wyspać :F
Nie zmienia to faktu że i tak można tak zrobić :P
BTW: deszcz 2D był fajny w BG2 mimo że pikslami walił po oczach xD