NukeBoards - Kreatywność przede wszystkim
FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  DownloadDownload
RejestracjaRejestracja  ZalogujZaloguj

Odpowiedz do tematu
Poprzedni temat :: Następny temat
[TGF] Strzał 360 stopni
Autor Wiadomość
jarlfenrir 
Generał brygady


Główny edytor: Fusion 2.5
Drugi edytor: TGF2
Pomógł: 82 razy
Posty: 1731

37283 Prestiż
Wysłany: 22-09-2006, 02:01   [TGF] Strzał 360 stopni

Jak zrobic strzał w 360 kierunkach (albo wiecej)?
Prosiłbym raczej o słowne objaśnienie, albo jakisbardzo przejrzysty przykład.
Sam zrobiłem coś takiego (bazuje to na twierdzeniu pitsagorasa i talesa) ale ie jest to efekt zadowalajacy mnie. Bo mało dokładnie sprawdza kolzije pocisku z obiektami (im dokładniej, tym strzał w rzecyzwistosci jest w mniejszej ilości kierunków, oraz pocisk porusza sie wolniej).
 
     
Fanotherpg 
Porucznik
I'm livin' proof


Główny edytor: Fusion 2.5 Dev
Drugi edytor: Fusion 2.5
Pojedynki: tak
Skype:
Pomógł: 8 razy
Posty: 821

14370 Prestiż
Wysłany: 22-09-2006, 10:03   

Niejaka strona NukeSoft'u i dział silniki, adres to bodajże www.nukesoft.xn.pl . Przy okazji, dlaczego nikt nie wykorzystuje polecenia szukaj, lub nie przegląda zasobów :doubt: ??
_________________
Indie since 1997.
 
 
     
jarlfenrir 
Generał brygady


Główny edytor: Fusion 2.5
Drugi edytor: TGF2
Pomógł: 82 razy
Posty: 1731

37283 Prestiż
Wysłany: 22-09-2006, 16:21   

Fanotherpg napisał/a:
Niejaka strona NukeSoft'u i dział silniki, adres to bodajże www.nukesoft.xn.pl . Przy okazji, dlaczego nikt nie wykorzystuje polecenia szukaj, lub nie przegląda zasobów :doubt: ??


Użyłem polecenia szukaj!
No i prosiłem raczej o słowne objaśnienie niz przykład, bo juz widzuałem chyba niemal wszystkie ogólnodostepne przykłady na ten temat.
 
     
Fanotherpg 
Porucznik
I'm livin' proof


Główny edytor: Fusion 2.5 Dev
Drugi edytor: Fusion 2.5
Pojedynki: tak
Skype:
Pomógł: 8 razy
Posty: 821

14370 Prestiż
Wysłany: 22-09-2006, 17:07   

Fenrir napisał/a:

No i prosiłem raczej o słowne objaśnienie niz przykład, bo juz widzuałem chyba niemal wszystkie ogólnodostepne przykłady na ten temat.


1 post:

Fenrir napisał/a:
Prosiłbym raczej o słowne objaśnienie, albo jakisbardzo przejrzysty przykład.


A co do sposobu bez żadnych rozszerzeń:

User clicks -> Create 'bullet' Set A value to XMouse Set B Value to YMouse

i zaleznie od pozycji X/Y pocisku dodawaj/odejmuj odpowiednia wartosc do pozycji... jeśli to dobrze zrobisz to bedzie to bardzo dokładny strzał w 360o...
_________________
Indie since 1997.
 
 
     
jarlfenrir 
Generał brygady


Główny edytor: Fusion 2.5
Drugi edytor: TGF2
Pomógł: 82 razy
Posty: 1731

37283 Prestiż
Wysłany: 22-09-2006, 17:40   

Fanotherpg napisał/a:
Fenrir napisał/a:

No i prosiłem raczej o słowne objaśnienie niz przykład, bo juz widzuałem chyba niemal wszystkie ogólnodostepne przykłady na ten temat.


1 post:

Fenrir napisał/a:
Prosiłbym raczej o słowne objaśnienie, albo jakisbardzo przejrzysty przykład.


A co do sposobu bez żadnych rozszerzeń:

User clicks -> Create 'bullet' Set A value to XMouse Set B Value to YMouse

i zaleznie od pozycji X/Y pocisku dodawaj/odejmuj odpowiednia wartosc do pozycji... jeśli to dobrze zrobisz to bedzie to bardzo dokładny strzał w 360o...


Chyba myśliszmniej wiecej o tym, co ja anzwałem w pierwszym poście mało dokładnym strzałem. Opiszę na czym to polega i najzwyej spróbujecie powiedzieć, co robię źle.

Sprawdzam różnice w pozycji X i Y miedzy celem, a postacią.
Kula ma sie poruszać co 5 pikseli, wobec tego tworzę trójkąt o tym samym kącie, co ten utworzony między celem i postacią, ale o przeciwprstokątnej równej 5. Wychodzi mi wzór:
X1=5X/(PIERWIASTEK(Y^2 + X^2))
I analogicznie dla Y.
Nie jest to dokłądny strzał w 360 stopniach, gdyż TGF przy dzieleniu zaokragla wyniki do całości. Mógłbym zrobić, że kula porusza sie co 10 pikseli, bo wówczas uzyskam teoretycznie dwa razy wiecej mozliwych kątów lotu kuli, ale tm samym stracę na dokładności sprawdzania kolizji (jeśli oniekt aktywny będize miał mniej niż 10 piskeli szerokości, to kula może go po porstu przeskoczyć).

No i jeszcze jest kwestia przyśpieszenia kuli, bo teoretycznie przy rucho co 5 piskeli kula będzie potrzebowałao 1,28 sekundy na pokonanie całej planszy.
 
     
Fadex 
Legenda
#4; #12; #18; #20; #21; #27


Główny edytor: MMF2 Dev
Pojedynki: nie
Pomógł: 105 razy
Posty: 1773

51612 Prestiż
Wysłany: 22-09-2006, 17:43   

Jedna precyzyjna odpowiedź: Do liczenia użyj A Math, a do szybkości kuli fast loopa.
_________________
If it doesn't have to work, I can optimize any code to a runtime of zero. What's your superpower?
wat
 
 
     
Tasmpol 
Bohater
young god


Główny edytor: MMF2
Pomógł: 14 razy
Posty: 955

24606 Prestiż
Wysłany: 22-09-2006, 18:00   

http://fabrykagier.phpnet.us/2004/kursy/4.html
O to chodzi? To chyba nie jest łatwe :P
_________________
the preacher man says its the end of time
 
     
jarlfenrir 
Generał brygady


Główny edytor: Fusion 2.5
Drugi edytor: TGF2
Pomógł: 82 razy
Posty: 1731

37283 Prestiż
Wysłany: 22-09-2006, 18:48   

Tasmpol napisał/a:
http://fabrykagier.phpnet.us/2004/kursy/4.html
O to chodzi? To chyba nie jest łatwe :P


Racja, nie jest łatwe. Nie za bardzo to rozumiem, co tam jest opisane, ale będę próbował.
 
     
Fanotherpg 
Porucznik
I'm livin' proof


Główny edytor: Fusion 2.5 Dev
Drugi edytor: Fusion 2.5
Pojedynki: tak
Skype:
Pomógł: 8 razy
Posty: 821

14370 Prestiż
Wysłany: 26-05-2007, 12:39   

http://members.lycos.co.uk/rsthp/kursy/4.html aktualny adres strony
_________________
Indie since 1997.
 
 
     
Ploo 
Chorąży


Główny edytor: MMF2
Pomógł: 8 razy
Posty: 288

8853 Prestiż
Wysłany: 26-05-2007, 13:00   

Znalazlem gdzies na dysku....

http://www.plooscva.webd....otingEngine.rar

Plik .mfa do MMF2 i potrzebujesz Advanced Math 2. Tlumaczyc mi sie nie chce.

A masz, napisze takie cos.

Obiekt

A potem zrob cos takiego
Ustaw X obiektu na cos(wartosc A obiektu) i Ustaw Y obiektu na sin(wartosc A obiektu)

Potem zrob cos w stylu Always>dodaj jeden do wartosc A.

cos() i sin() sobie wykombinuj z AM2.

Poeksperymentuj z tym i jak opanujesz sin i cos to sam wytrzasnij sobie strzelanie, nie jest trudno.

Plooscva
 
 
     
AlexJ 
Plutonowy


Pomógł: 2 razy
Posty: 86

2018 Prestiż
Wysłany: 26-05-2007, 14:57   

A ja ci powiem tak:
Masz jakąś tam zmienną kąta: Dir to będzie u mnie.
Uruchamiasz tam sobie pętlę, i jak robisz to w TGF to używająć Adv Math 2 liczysz, a jak MMF 1.5/2 to normalnie (wbudowanymi funkcjami).


Kod:
Na pętlę "strzal":
- Ustaw pozycję X obiektu "pocisk" na X("pocisk")+(sin(Dir)*4)
- Ustaw pozycję Y obiektu "pocisk" na Y("pocisk")+(cos(Dir)*4)


Oczywiście, kolizje itp. to sobie sam zrobisz, dokładność ruchu do 4 px. Jak nie pomnożysz to zmniejsza się liczba kątów z powodu zaokrąglania tego wyniku. Można to pominąć, ale... Powinno działać, chyba 4px to nie tak źle.
Tak działa silnik chodzenia w mojej grze i jestem z niego zadowolony.

Edit: Plooscva, nie wiem o co ci chodziło, żeby ustawiać X pocisku na sinusa zwiększającej się wartości i Y na cosinusa zwiększającej się prędkości? Czy tam na odwrót. Coś mi tu nie pasuje xD.
_________________
Error 404: Błąd. Opisu nie znaleziono.
PS. Oryginalne, nie?



C++'s Cool.
Ostatnio zmieniony przez AlexJ 27-05-2007, 11:54, w całości zmieniany 1 raz  
 
 
     
Ploo 
Chorąży


Główny edytor: MMF2
Pomógł: 8 razy
Posty: 288

8853 Prestiż
Wysłany: 26-05-2007, 15:08   

Czy ja powiedzialem ze to jest strzelanie? Powiedzialem mu jak uzyc funkcji trygonometrycznych, wtedy by sam zrozumial a gdy by zrozumial to by sam doszedl do strzelania. W taki sposob bedzie duzo korzystniej gdyz najwiecej sie nauczy i najwiecej zrozumie.

Plooscva
 
 
     
jarlfenrir 
Generał brygady


Główny edytor: Fusion 2.5
Drugi edytor: TGF2
Pomógł: 82 razy
Posty: 1731

37283 Prestiż
Wysłany: 26-05-2007, 15:47   

Plooscva napisał/a:
Czy ja powiedzialem ze to jest strzelanie? Powiedzialem mu jak uzyc funkcji trygonometrycznych, wtedy by sam zrozumial a gdy by zrozumial to by sam doszedl do strzelania. W taki sposob bedzie duzo korzystniej gdyz najwiecej sie nauczy i najwiecej zrozumie.

Plooscva


Ale ja wszytsko rozumiem. Nie wiem tylko, dlaczego jak juz cos zrobię, to TGF/MMF2 sie po prostu zawiesza na moim ruchu. I ja raczej używam do tego tangensa.

Mam jeszcze jedno pytanie: da sie zrobić strzał 360 stopni za pomocą rozszerzenia Movelt? Mogę przesunąć objekt po docniku lufa-celownik, ale co zrobić, by objekt dalej leciał już sam?
 
     
Minty 
Stwórczyni
omc dr fizyki


Główny edytor: Fusion 2.5 Dev
Drugi edytor: Construct
Pojedynki: być może
Pomogła: 259 razy
Posty: 3447

33795 Prestiż
Wysłany: 26-05-2007, 17:15   

Przecież w MMF i MMF2 nie potrzeba żadnych dodatków do zrobienia takiego ruchu, mają te funkcje wbudowane (szybkie pętle i sin/cos).

Najprostsza rzecz związana z takim ruchem to ta: http://www.romanx.kosa.net.pl/down/360mv.zip
- wszystko widać jak na dłoni.

Najmniej prosta to ta:
http://www.romanx.kosa.net.pl/down/strzal+.zip

Fenrir napisał/a:
da sie zrobić strzał 360 stopni za pomocą rozszerzenia Movel

Nawet nie warto próbować :)

Fenrir napisał/a:
TGF/MMF2 sie po prostu zawiesza

Zła ilość pętli? Daj 13 dla prędkości porównywalnej z TGF-owymi (104 jednostki).
 
     
AlexJ 
Plutonowy


Pomógł: 2 razy
Posty: 86

2018 Prestiż
Wysłany: 27-05-2007, 12:15   

A przecież ja mówiłem, że jak to w TGF, to trzeba rozszerzenie, a jak w MMF 1.5/2 lub TGF2 to nie trzeba, bo mają trygi wbudowanie ;) . Teraz wyjaśniłem posta trochę xD. (Chyba że nie o to ci chodziło, tylko o tego MoveIt). A mój sposób powinien jak najbardziej działać. Mogę też sypnąć czymś takim (nie do końca dokładne, ale przyzwoite (i moje ;D) i na dodatek tylko do MMF2): http://sonter.goin.pl/files/pdp.mfa
- pokazuje ruch w teoretyczno-praktycznych 360 stopniach do miejsca, gdzie sobie klikniesz. Może się przyda xD.
_________________
Error 404: Błąd. Opisu nie znaleziono.
PS. Oryginalne, nie?



C++'s Cool.
 
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

PSK Cytaty Klikibaza - kopia wszystkich klików Klikipedia - encyklopedia o tworzeniu gier Discord KlikCzat Zaproszenie Wielkie Muzeum Klikowe

Powered by phpBB modified by Przemo © 2003 phpBB Group