Sutikku Opublikowano 17 Lutego 2016 Udostępnij Opublikowano 17 Lutego 2016 Robię sobie standardowo gierkę multiplayer i taki mam problem. Ogarnąłem już jak robić poruszanie, tak żeby wyglądało w miarę dobrze. Powtarzam ostatnio dostane komendy od serwera. Czyli jeśli ktoś szedł ostatnio w lewo, to teraz pewnie też idzie w lewo, aż nie dostanę nowego pakietu. Wtedy staram się płynnie zmieniać pozycję u klienta, na taką jaką dostałem od serwera. Ale jak to zrobić z image_angle? Postać jest zawsze zwrócona w stronę kursora. Wysyłanie ciągle image_angle, to chyba nie najlepsze wyjście. A jeśli przyjmiemy, że w grze się strzela, to byłoby dziwne gdyby ktoś zaczął strzelać plecami. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 17 Lutego 2016 Udostępnij Opublikowano 17 Lutego 2016 Jest taki trick, zastosowany w enginie Dooma 2, który pozwala na skompresowanie kierunku tak by się zmieścił w 1 bajcie a nie 2. Po prostu kąt jest dzielony na 1.5 a potem po otrzymaniu kąta z servera mnożony przez 1.5. W kliencie zastosujesz dodatkowo interpolacje i gołym okiem nie dostrzeże się ubytku. Jak wyślesz 1 bajt po UDP to się nie nie stanie nawet jak ten bajt nie dotrze, w końcu masz interpolacje :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Sutikku Opublikowano 17 Lutego 2016 Autor Udostępnij Opublikowano 17 Lutego 2016 Jest duża różnica, czy wysyłam 1 bajt, a nie 2? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Matrix_ Opublikowano 18 Lutego 2016 Udostępnij Opublikowano 18 Lutego 2016 Jest duża różnica, czy wysyłam 1 bajt, a nie 2? 2 razy mniej. Więc teoretycznie 2 razy szybciej się dane przetwarzaja. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się