Przeczytałem Valve article on multi-player networking, który został zaadaptowany z pracy Yahna Berniera z 2001 roku, zatytułowanej Latency Compensating Methods in Client/Server In-game Protocol Design and Optimization. Robię realtime gry multi-player za pomocą serwera node.js podłączony do klientów poprzez socket.io i mam kilka pytań dotyczących zasad opisanych poniżej:Zasady gry wieloosobowej w czasie rzeczywistym dla TCP i Node.js
[interpolacji] utrzymuje ten roztrzęsiony ruch spowodowałby, że zazwyczaj prowadziło to do buforowania aktualizacji serwera, a następnie odtwarzało je z przerwami między nimi płynnie interpolowanymi. Może również chronić przed zakłóceniami spowodowanymi utratą pakietów.
Przewidywanie jest pojęcie klienta przewidywania skutków działań lokalnego gracza bez czekania na serwerze, aby je potwierdzić. Przewidywany stan jednostki jest testowany na podstawie poleceń serwera podczas ich przybywania, aż do wykrycia dopasowania lub niezgodności.
kompensacja Lag jest pojęcie serwera przy użyciu odtwarzacza latencję przewinąć czas podczas przetwarzania wejściowy [użytkownik], aby zobaczyć, co zobaczył gracz gdy komenda została wysłana . W połączeniu z przewidywaniem, kompensacja opóźnienia w postaci może pomóc w walce z opóźnieniem sieci do punktu niemal eliminując go z perspektywy atakującego.
Czy zasady stosuje się do TCP jak do UDP i będzie tam żadnych różnic w realizacji? Widzę, że interpolacja podmiotu nie musiałaby chronić przed utratą pakietów, ale to na ten temat.
Czy mogę komunikować się między serwerem a przeglądarką internetową i vice versa przy użyciu UDP i Node.js?
Od kiedy papier ma ponad dekadę, czy te zasady są nadal w użyciu, czy pojawiła się inna technologia?
Każda pomoc będzie bardzo cenna.