Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [AJAX][Java]Animowanie postaci 2d
-Gość-
post 24.09.2012, 13:10:47
Post #1





Goście







Witam,
czy jest to możliwe aby zrobić animacje postaci 2d którą gra inny gracz?

Aktualnie mam skrypt który odświeża mape co 5 sekund. Gdy inny gracz w polu widzenia zmienia położenie, jest to widocznie maksymalnie za 5 sekund i postać jest "teleportowana" na dane miejsce.
Czy da sie zamiast tego zrobić animacje przechodzenia? Jeśli tak to jakiego pluginu szukać. Jquery? Ajax?
Go to the top of the page
+Quote Post
Sephirus
post 24.09.2012, 14:04:23
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Proponowałbym najpierw poczytać jak ogólnie się emuluje takie przejścia graczy - w sensie poruszanie się zdalnego obiektu - czysto teoretycznie (bo sprawa przy sieci nie jest taka prosta) i dopiero bym szukał konkretnego rozwiązania w JS, które w sumie przyjdzie samo jak poznasz idee. W zależności od złożoności twojej gry (czy postać się rusza? czy może iść w każdym kierunku czy pod różnym kątem? czy sam ruch postaci jest animowany?) może to być dość proste stosując metodę estymacji i zgadywania (choć nie zawsze ona działa) lub na tyle skomplikowane że JS odpada...


--------------------
If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;)
Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka...
Go to the top of the page
+Quote Post
Shido
post 24.09.2012, 14:16:50
Post #3





Grupa: Zarejestrowani
Postów: 121
Pomógł: 22
Dołączył: 22.06.2012

Ostrzeżenie: (0%)
-----


Jeżeli ten 5 sekundowy lag nie przeszkadza, to można zrobić tak:
1. Zapamiętać pozycje na której jest dany gracz.
2. Pobrać nową pozycje na której aktualnie jest dany gracz.
3. Zrobić animację pomiędzy starą, a nową pozycją.

Czyli po prostu wymusić by skrypt pamiętał jeden ruch wstecz graczy.
Kwestia tylko czy zapamiętywać te ruchy w serwerze i je pobierać z wyjątkiem naszego gracza ( by nie chodził 2 razy ), czy też bezpośrednio w kliencie.

Ten post edytował Shido 24.09.2012, 14:18:14


--------------------
Sorka za błędy ort. jak coś dajcie znać na PW to popoprawiam.
Go to the top of the page
+Quote Post
-Gość-
post 24.09.2012, 14:18:59
Post #4





Goście







Aktualnie jest to mapa zrobiona w Ajaksie. Gracz może sie kierować w 4 kierunki. Ruch jest ułożony tak że gracz przechodzi z kwadratu na kwadrat. O ile animacja własnej postaci jest zrobiona, tak inne widoczne postaci po prostu się teleportuja.

Dlatego jestem ciekaw czy istnieje jakas prosta metoda aby to zrobić. przeszukuje wujka google ale narazie nie mam zadnych interesujacych faktów
Go to the top of the page
+Quote Post
Greg0
post 24.09.2012, 15:52:43
Post #5





Grupa: Zarejestrowani
Postów: 264
Pomógł: 54
Dołączył: 31.08.2007
Skąd: Tychy

Ostrzeżenie: (0%)
-----


Uważam że rozwiązanie Shido będzie dla ciebie najlepsze. Pamiętasz poprzednią pozycję i po odświeżeniu nie umieszczasz postaci na nowych pozycjach od razu tylko je przesuwasz z poprzednich.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 5.07.2025 - 14:22