3D multiplayer - jak skonstruować pakiety

0

Witam, mój problem polega na tym iż nie wiem jak skonstruować pakiety informujące o ruchu gracza i jego obracaniu się, oraz nie wiem w którym momencie je wysyłać. Wysyłanie pakietów w momencie zmiany pozycji gracza o wektor jest raczej bezsensowne (po niewielkim przesunięciu do serwera najdzie tyle komunikatów od jednego klienta, że trudno mu będzie to obsłużyć).No, a oczywiście wszystko musi chodzić płynnie; Dlatego też szukam innego rozwiązania. Używam Irrlicht''a i RakNet (wiem że RakNet ma przykład użytku z irrlichtem, ale tam nie jest to zbyt przejrzyście zrobione).

0

po niewielkim przesunięciu do serwera najdzie tyle komunikatów od jednego klienta, że trudno mu będzie to obsłużyć
W takim razie zrób małe opóźnienie, np 5 klatek i wysyłaj dopiero po tym opóźnieniu. Poza tym możesz przecież wysyłać jedne informacje częściej niż inne. Jeśli chodzi zaś o rozsyłanie współrzędnych, to możesz np uzależnić to od odległości między graczami, np dla oddalonych graczy wysyłaj im informacje o wzajemnym położeniu rzadziej niż dla graczy położonych blisko siebie.

0

ok, dzięki spróbuję zrobić, zobaczę jak wyjdzie.

0

hmm, no jak dałem wysyłanie pakietu co 50ms to jeszcze jakoś szło normalnie, ale i tak serwer mnie rozłączał z powodu, że za dużo pakietów było wysyłanych, po wyżej 50ms to już to poruszanie nienaturalnie wygląda. Jeszcze potem może poszukam w dokumentacji jak zwiększyć maxymalną liczbę pakietów które serwer może przyjąć w danym czasie, i przetestuje z kolegą czy lagów nie będzie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1