Wcześniej robiłem małe kodowanie sieci gier, ale przede wszystkim za pomocą TCP dla gier bez potrzeb czasu rzeczywistego. Pracuję nad dwuwymiarową grą Java z sieciowym multiplayerem. Do nauki chcę to zrobić sam, bez istniejącego sieciowego interfejsu API.
Jak skutecznie reprezentować stan gry wysyłany do klientów z serwera? Istnieje najbardziej oczywisty, ale prawdopodobnie najmniej wydajny sposób, polegający na utworzeniu pewnego rodzaju obiektu kontekstu stanu gry z lokalizacją każdego gracza, stanem animacji itp. I wysyłaniem go do każdego gracza przy każdej aktualizacji . Nie wydaje się to zbyt trudne do wdrożenia, ale prawdopodobnie byłoby zbyt duże, aby osiągnąć coś zbliżonego do interakcji w czasie rzeczywistym (oczywiście moje doświadczenie z tym jest ograniczone, więc mogę się mylić).
Czy jest jakiś solidny sposób, w jaki ktoś z was używał wcześniej, aby tylko przekazywać zmiany stanu i czy istnieje nawet wystarczająco duża różnica w wydajności, że warto dodatkową pracę?