Witam. Mam już za sobą kilka prostych gier. Kolejnym moim celem w nauce c++ jest napisanie prostej gry sieciowej. Zastanawiam się jaki protokół internetowy wybrać, tcp czy udp i dlaczego? W czym było by mi łatwiej zacząć?

- Rejestracja:około 16 lat
- Ostatnio:6 miesięcy
1
Prawdopodobnie TCP.
W specyficznych przypadkach gier real-time dobrze wykorzystane UDP mogłoby być lepsze, ale nie zastanawiałbym się nad tym na początku.
Dlaczego:
- TCP działa.
- UDP jest szybsze.
To znaczy że:
- wszystkie pakiety TCP jakie wyślesz dojdą, i wszystkie dojdą w dobrej kolejności.
- datagramy które wyślesz za pomocą UDP mogą 1) zniknąć i nigdy nie dojść do celu 2) dojść w zupełnie innej kolejności. Główną zaletą jest to że ma mniejszy narzut niż TCP.
W przypadku większości gier, bardziej korzystne jest jednak użycie TCP.
- Rejestracja:ponad 12 lat
- Ostatnio:ponad 10 lat
- Postów:38
0
Polecam poczytac o przypadkach kiedy TCP jest szybsze od UDP

msm
TCP próbuje buforować dane (http://en.wikipedia.org/wiki/Nagle%27s_algorithm), więc dla wysyłanych pod rząd (bez zakłóceń) krótkich pakietów bywa szybszy (nawet do 50%) - o tym piszesz?
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.