GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Leírások/Útmutatók => A témát indította: GroX - 2010. Május 15. - 10:43:53

Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: GroX - 2010. Május 15. - 10:43:53
Üdv, ebben a tutorialban számítgatunk egy kicsit.
Nem kezdoknek írom de lehet ok is megértik.
Vegyük eloször az olyan függvényeket amik biztosan kellenek:
GetPlayerPos - Játékos pozíciójának a lekérdezése
GetPlayerFacingAngle (GetVehicleZAngle ha jármuben) -  Nézet lekérdezése
floatsin - lebegopontos szám szinuszának kiszámítása a megadott módszerrel
floatcos - lebegopontos szám koszinuszának kiszámítása a megadott módszerrel
Egyszeru a dolog. Létrehozunk 4 változót. X,Y,Z pozícióhoz, és a nézethez.
 
new Float:x, Float:y, Float:z, Float:angle;

 
Majd lekérdezzük:
 
GetPlayerPos(playerid,x,y,z);
GetPlayerFacingAngle(playerid,angle);

 
Persze ha jármuben akkor a GetVehicleZAngle-t kell használni.
Végül kiszámoljuk:
 
x+=(floatsin(-angle,degrees)); //a nézet változójának az ellentettjét kell alkalmazni, és a degrees módszerrel kell számolni
y+=(floatcos(-angle,degrees)); //És az x,y változóhoz hozzá kell a kijött eredményeket adni

 
Ez kb nagyon közel van a játékoshoz. Ha messzebb akarod kiszámítani akkor szorzunk egy kicsit:
 
x+=(2*floatsin(-angle,degrees));
y+=(2*floatcos(-angle,degrees));

 
Ez 2szer akkora távolságra van. Minél nagyobbal szorzod annál messzebb.
A mögötti pozíció gyakorlatilag ugyanez csak itt kivonunk:
 
x-=(floatsin(-angle,degrees));
y-=(floatcos(-angle,degrees));

 
Fontos: az x,y számnak lesz annyi az értéke amennyit kiszámoltál, láthatod hogy ott van az =.
Lehet valakinek jól jön....
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: krisk - 2010. Május 15. - 21:14:15
Pont a lényeget nem értem, a szögfüggvények nekem kicsit magasak  :amazed:
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: Csabesz - 2010. Május 15. - 21:47:02
Jó leírás, értheto.  ;)
Én ezt sebesség méronél használom.  :D
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: Jex - 2010. Május 16. - 11:19:41
Ha valaki nem érti a sinus-t és a cosinus-t a matekban, akkor ezt soha nem fogja megérteni :D
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: GroX - 2010. Május 16. - 22:12:27
Idézetet írta: Jex date=1274001581\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"1659\" data-ipsquote-contentclass=\"forums_Topic
Ha valaki nem érti a sinus-t és a cosinus-t a matekban, akkor ezt soha nem fogja megérteni :D
 
Hát sajnos épp ez az... De egyszer úgyis megfogja mindenki tanulni :)
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: Szeby1995 - 2010. Május 18. - 15:59:19
ilyen sazrul leirni valmit..
ez tök szar :@
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: GroX - 2010. Május 18. - 16:53:15
Idézetet írta: Szeby1995 date=1274191159\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"1659\" data-ipsquote-contentclass=\"forums_Topic
ilyen sazrul leirni valmit..
ez tök sz*r :@
 
Mert te gondolom annyira értesz hozzá.
Ha Csabesz szerint értheto akkor meg...
De te biztos jobban tudod mert olyan nagy pro vagy :S
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: Depi - 2010. Május 18. - 18:24:34
Idézetet írta: Szeby1995 date=1274191159\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"1659\" data-ipsquote-contentclass=\"forums_Topic
ilyen sazrul leirni valmit..
ez tök sz*r :@
 
Bazd mit szarozod le ? Amikor te csak kéregetni jársz ide ? Segitség / Szkript kérések.
Ha te nem értesz hozzá akkor inkább ne írj ide.
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: Iceaac - 2010. Május 19. - 10:55:29
Idézetet írta: Szeby1995 date=1274191159\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"1659\" data-ipsquote-contentclass=\"forums_Topic
ilyen sazrul leirni valmit..
ez tök sz*r :@
 
Ha nem érted veled van a baj, magad kéne szidnod.
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: P3ti - 2011. Január 09. - 21:05:00
Ez nagyon hasznos kis leírás, grat!  ;)
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: Gabi_Nagy-[INKRP] - 2011. Január 09. - 21:13:36
Idézetet írta: Szeby1995 date=1274191159\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"1659\" data-ipsquote-contentclass=\"forums_Topic
ilyen sazrul leirni valmit..
ez tök sz*r :@
 
Hát most nem hiszem hogy ártot neked valamit hogy lekell szarozd a munkálját, számodra bármilyen nehéz is felfogni õ még mindig csak hogy segíteni akart vele és van aki megis értete, szóval szerintem változtass a modorodon és az értékelési szinteden.
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: KowaZ - 2011. Január 11. - 16:00:26
Idézetet írta: Tequila シ date=1273913033\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"1659\" data-ipsquote-contentclass=\"forums_Topic

x+=(floatsin(-angle,degrees)); //a nézet változójának az ellentettjét kell alkalmazni, és a degrees módszerrel kell számolni
y+=(floatcos(-angle,degrees)); //És az x,y változóhoz hozzá kell a kijött eredményeket adni

 

Miért kell az \"angle\" változót minusz elõjellel írni? Nem emlékszem ilyenre matekóráról. Ha már leírást készítesz  akkor magyarázd is el, hogy mi miért van és ne csak azt mutasd meg, hogy mi lesz a végén...
KowaZ
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: Gang[St]e[R] - 2011. Május 21. - 22:05:09
Én már értem, de az a degrees, floatsin és floatcon jelentését ne értem.
Amúgy jó leírás, aki szarozza az biztos jobbat tud...
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: lackos888 - 2011. December 31. - 20:12:42
Hy!Hogylehet kiszámolni a játékosról balra esõ pozíciót, és a jobbra esõ pozíciót? akkor nemkell --ba tenni az anglet vagy mi?:D
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: rewan - 2011. December 31. - 22:12:36
Na ez érdekes.
Szerintem(ha van jobb tapasztalatod, ne hallgass rám)
ha hozzáadsz(jobbra)/kivonsz(balra) a FacingAngle-hez valamennyit(mondjuk -180 a balra
esõ területhez), akkor úgy kiszámítható
[pawn]x+=(floatsin(-angle,degrees));
y+=(floatcos(-angle,degrees));[/pawn]
ezzel a módszerrel.
Lehet nagy baromságot mondtam, bocsi ha nem mûködik, de
szerintem így kéne menjen.
Fizika/Matek 2-es :-[
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: lackos888 - 2011. December 31. - 22:16:34
Köszi, hallgatok rád, mivel én még csak 6-os vagyok, de ha nemjó akkor sincs harag.
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: kurta999 - 2012. Január 18. - 15:51:14
Jéé.
Végre megértettem, ez mire jó.
\"Eznélkül úgy nemtudod a játékos kordninátái szerint beállítani a kamerát, mondjuk 10 méterre a játékos elé, úgy, hogy a játékos pontosan a \"képernyõ közepén\" álljon :D\"
Cím: [TUT]Számítgatás... A játékos ELOTTI/MÖGÖTTI pozíció kiszámítása
Írta: Fade - 2012. Március 06. - 23:06:41
Idézetet írta: rewan date=1325365956\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"1659\" data-ipsquote-contentclass=\"forums_Topic
Na ez érdekes.
Szerintem(ha van jobb tapasztalatod, ne hallgass rám)
ha hozzáadsz(jobbra)/kivonsz(balra) a FacingAngle-hez valamennyit(mondjuk -180 a balra
esõ területhez), akkor úgy kiszámítható
 
x+=(floatsin(-angle,degrees));
y+=(floatcos(-angle,degrees));

 
ezzel a módszerrel.
Lehet nagy baromságot mondtam, bocsi ha nem mûködik, de
szerintem így kéne menjen.
Fizika/Matek 2-es :-[
 
Akár kivonsz, akár hozzáadsz 180-at, az a játékos háta mögött lesz. :D
90-et kell kivonni/hozzáadni a balra, és jobbra irányokhoz.
 

Jéé.
Végre megértettem, ez mire jó.
\"Eznélkül úgy nemtudod a játékos kordninátái szerint beállítani a kamerát, mondjuk 10 méterre a játékos elé, úgy, hogy a játékos pontosan a \"képernyõ közepén\" álljon :D\"
 
[/quote]
Hát nem igazán, de enélkül még csak elé sem tudnád állítani.