Kezdőoldal » Számítástechnika » Programozás » UDP packetek küldése a játékok...

UDP packetek küldése a játékokban?

Figyelt kérdés

Sziasztok!

Tegnap este írtam egy chat programot, működik, a nagy részét értem is. Viszont egy dolog számomra tisztázatlan maradt:


A legtöbb FPS játékokban mindig egy csomó dolog történik tizedmásodpercek alatt.

Ezek a játékok minden adatot külön küldenek (chat, játékosok pozíciója és életük stb.), vagy egy nagy packetet küldenek, amiben minden benne van?



2013. dec. 29. 16:37
 1/6 anonim ***** válasza:
Egyenként küldeni az egyes adatokat óriási pazarlás lenne. Felteszem egyébként chat külön megy, mivel az a játéktól kvázi független (azon sem lennék meglepődve, ha arra TCP-t használnának, mivel ott fontosabb az, hogy megérkezzen, mintsem az esetleges újraküldés jelentette késleltetés).
2013. dec. 29. 17:00
Hasznos számodra ez a válasz?
 2/6 coopper ***** válasza:

Szia.



Lehet hogy baromság amit irok, de nézd meg, hogy mi történik egy ilyen játékban.


Hogyan ? Szedj le egy network sniffer programot az elvileg rögzit minden csomagot úgy ki mint be irányban. A rögzitett csomagokazok böngészésével, lehet hogy okosabb leszel.


Sok sikert.

Üdv.

2013. dec. 29. 18:57
Hasznos számodra ez a válasz?
 3/6 anonim ***** válasza:

A forgalom nézése nem rossz, de olyan mennyiségű adat lesz, hogy nem sokat fog belőle látni.


A játékok mind TCP és UDP csomagokat is használnak.

TCP ahhoz, ami meg kell, hogy érkezzen, pl chat üzenetek, fontosabb szerver parancsok (login meg ilyenek is).


UDP pedig ahhoz, ami "kevésbé lényeges".

Például egy játékban a többiek pozícióját viszonylag gyakran el kell küldeni, másodpercenként többször is. Ez sok adat és nem gáz, ha 1-2 csomag elveszik, mivel úgyis megy a következő, akkora hatalmas eltérést nem okoz.

2013. dec. 29. 22:13
Hasznos számodra ez a válasz?
 4/6 anonim ***** válasza:

Hálózatforgalom elemzéséhez ott a Wireshark, szűrj a kívánt hostra és protokollra és nézz bele pár üzenetbe. Mondjuk igaz, hogy néhány percnyi "hallgatózás" után is rengeteg adatod lesz, de ha nem vagy lusta, a legmegbízhatóbb választ így kaphatod meg.


www.wireshark.org/

2013. dec. 30. 11:33
Hasznos számodra ez a válasz?
 5/6 A kérdező kommentje:

Köszönöm a válaszokat! :)

Szerintem csak UDP-t fogok használni. Ha egy packet nem érkezik meg, akkor a következő packetbe belerakom a lényeges adatokat. Persze nem biztos, hogy így lesz, de nekem jónak tűnik.

Ami a Wiresharkot illeti, most fogom kipróbálni.

2013. dec. 30. 19:56
 6/6 anonim ***** válasza:

Ezzel csak egy gond van, honnan tudod, hogy nem érkezett meg? :)

Ehhez a minimum, hogy küldesz vissza ACK-kat, amik ugye ha szintén UDP-k, akkor elveszhetnek, ha meg TCP, akkor fölösleges volt az UDP-vel szórakozni.

2013. dec. 31. 12:36
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!