Tworzę grę wieloosobową (dla mniej niż 64 graczy). Zdecydowałem już, że mam osobny wątek dla pętli sieciowej, ale zastanawiałem się, czy lepiej byłoby utworzyć dodatkowy wątek do odbierania UDP, czy ustawić gniazdo odbiorcze na nieblokujące (bez dodatkowego wątku). A może lepiej jest użyć innej metody, takiej jak gniazda asynchroniczne? Lepsze …
Obecnie pracuję nad dość prostą platformówką dla wielu graczy. Czytam sporo artykułów na temat technik stosowanych do ukrywania opóźnień, ale wciąż nie potrafię zrozumieć niektórych z tych pojęć. Uważam ten temat za bardzo interesujący i lubię samodzielnie wypróbowywać pomysły, ale myślę, że pytanie o zmianę stosu gamedev będzie bardziej skuteczne …
Wdrażam przewidywanie po stronie klienta. Większość wyjaśnień zakłada, że klient wysyła wiadomości typu „ Przenieś mojego gracza o 1 pozycję w górę ”. Co jeśli wyślę wiadomość typu „ Ustaw prędkość mojego odtwarzacza na x ”? Na kliencie gracz ustawia własną prędkość (na podstawie przewidywań po stronie klienta), zanim zrobi …
Już prawie ukończę tworzenie małej gry wieloosobowej w stylu indie. Chociaż zamierzam pozwolić ludziom oszukiwać w trybie dla jednego gracza, jest to oczywiście niedopuszczalne w trybie dla wielu graczy. Czy ktoś zna jakieś sposoby, aby powstrzymać przeciętnego Joe przed użyciem czegoś takiego jak Cheat-Engine do modyfikowania części gry? Obecnie planuję, …
Rozważ konfigurację, w której klienci gier: mają dość małe zasoby komputerowe (urządzenia mobilne, smartfony) wszystkie są podłączone do wspólnego routera (LAN, hotspot itp.) Użytkownicy chcą zagrać w grę wieloosobową bez zewnętrznego serwera. Jednym z rozwiązań jest hostowanie wiarygodnego serwera na jednym telefonie, który w tym przypadku byłby również klientem. Biorąc …
Powiedzmy, że planowałem w przyszłości (nie teraz! Jest wiele rzeczy, które muszę się najpierw nauczyć), chcąc wziąć udział w projekcie grupowym, który miał stworzyć masową grę online dla wielu graczy (mmo), a moją pracą byłoby tworzenie sieci część. Nie znam się na programowaniu sieciowym (przeczytałem bardzo podstawową książkę o PHP, …
Zamierzam wdrożyć funkcje sieciowe dla gry, nad którą obecnie pracuję, teraz zastanawiam się, czy muszę wdrożyć obsługę protokołu IPv6, czy wystarczy mieć wsparcie dla protokołu IPv4?
Robię szybką grę fizyki, która jest hokeja stołowego. Z dwoma młotkami i jednym krążkiem. Gra działa na iPhonie / iPadzie i robię część dla wielu graczy za pośrednictwem GameCenter. Tak działa system sieciowy. Klient, który oznaczy dopasowanie jako gwiazdkę, zostanie rozliczony jako serwer, a tym, który akceptuje żądanie dopasowania, jest …
Jaka jest obecnie najnowocześniejsza gra sieciowa w czasie rzeczywistym? Wydaje mi się, że kilka lat temu niektóre tytuły AAA transmitowały tylko dane wejściowe gracza (Starcraft 1, Age of Empires). Skoro wymaga to zachowania wszystkiego całkowicie deterministycznego, czy jest to nadal realna opcja? Synchronizacja generatorów liczb losowych wydaje się możliwa, ale …
Interesuje mnie ocena różnych sposobów, w jakie kod sieci może „podłączyć się” do silnika gry. Projektuję teraz grę wieloosobową i do tej pory ustaliłem, że muszę (przynajmniej) mieć osobny wątek do obsługi gniazd sieciowych, inny niż reszta silnika, który obsługuje pętlę graficzną i skrypty. Miałem jeden potencjalny sposób, aby stworzyć …
Mam podstawy gniazd TCP, komunikacji UDP itp., Ale nie mogę znaleźć wiele sposobów zastosowania ich w środowisku gry w czasie rzeczywistym. Mam klon Ponga z 4 graczami i muszę zsynchronizować pozycje wiosła między trzema klientami a serwerem (serwer to czwarty gracz). Obecnie używam UDP do wysyłania aktualizacji w czasie rzeczywistym …
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, …
Próbuję uzyskać prostokąt, aby poruszać się między dwiema pozycjami, które nazywam _positionAi _positionB. Oba są tego typu Vector3. Prostokąt porusza się dobrze. Kiedy jednak się osiągnie _positionB, nie porusza się w przeciwnym kierunku, jak powinien. Wróciłem do kodu, żeby się przyjrzeć. Doszedłem do wniosku, że gdy obiekt się porusza, ifinstrukcje …
Piszę grę sieciową na iOS. Kiedy wysyłam pakiety z GKMatchSendDataReliable(który, jak zakładałem, to UDP z zapisanym własnym kodem odbioru pakietów) z prędkością 60 pakietów na sekundę (czyli 16 ms między sąsiednimi pakietami), średni czas pingowania gwałtownie się pogarsza: otworzyłem 7 meczów GameCenter poniżej (jeden po drugim) ) i po prostu …
Obecnie w mojej grze klient jest jedynie rendererem. Gdy stan wejściowy zostanie zmieniony, klient wysyła pakiet do serwera i przesuwa odtwarzacz tak, jakby przetwarzał dane wejściowe, ale serwer ma ostatnie słowo na temat pozycji. To ogólnie działa bardzo dobrze, z wyjątkiem jednego dużego problemu: spadania krawędzi. Zasadniczo, jeśli gracz idzie …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.