![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 138 Pomógł: 3 Dołączył: 4.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witajcie!
Mam kilka pytań. Pierwsze - załóżmy że kilka procesów ma być wykonywane jednocześnie na kilku elementach - 1 np ma sie zapalać a drugi gasić. Procesy mają być wykonane w tym samym momencie, czy jest to możliwe w JavaScript ? Drugie, powiązane z pierwszym - Załóżmy że mamy na ekranie 10 kolorowych klocków poruszających się (widziałem w kursie jquery jak zmieniały wektor ruchu). Czy gdybym komunikował się z bazą danych za pomocą advAjax + php a do wyswietlania aktualnej pozycji uzywal jQuery to ma szanse zrobienie powiedzmy mini gry w stylu pacman w Javascript na kilka osob (PHP + mySql + Ajax (biblioteki takie jak advAjax i jQuery)) (IMG:style_emoticons/default/questionmark.gif) Proszę o odpowiedź i ewentualną chęć pokierowania jak to zrobić. Js i PHP troche znam (IMG:style_emoticons/default/wink.gif) Sql też nienajgorzej. Chodzi mi po prostu o pytanie CZY DA SIE ? (Np 6 graczy plansza 50 x 50 kratek). Pozdrawiam i oczekuję na odpowiedź (IMG:style_emoticons/default/wink.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Cytat Pierwsze - załóżmy że kilka procesów ma być wykonywane jednocześnie na kilku elementach - 1 np ma sie zapalać a drugi gasić. Procesy mają być wykonane w tym samym momencie, czy jest to możliwe w JavaScript ? Oczywiście, że da się (IMG:style_emoticons/default/smile.gif) - najprostszy przykład: Kod <input type="checkbox" id="test1"> <input type="checkbox" id="test2"> <script> e1 = document.getElementById('test1'); e2 = document.getElementById('test2'); setInterval( function(){ e1.checked = !e1.checked;} , 1000); setInterval( function(){ e2.checked = !e2.checked;} , 500); </script> Cytat Drugie Powinno dać radę, jednak sam nigdy się w to nie bawiłem. Zacznij od napisania skryptu, w którym każdy będzie poruszał swoim klockiem na ekranie. Najprostszy ruch. Zobacz czy jest to w miarę optymalne, jeśli nie podaj nam swój kod i postaramy się go jakoś bardziej zoptymalizować. Pamiętaj, żeby wykonywać jak najmniej operacji, a dane serwera pobierać w paczce - nie pojedynczo dla każdego gracza. Na podobnej zasadzie działa wile gier we flashu i shoutbox-y. Powinno się udać (IMG:style_emoticons/default/smile.gif) Jak napiszesz nie zapomnij się podzielić informacjami, jak to działa w praktyce - czy jest wydajne itd. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 138 Pomógł: 3 Dołączył: 4.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki za odpowiedź, dziś wieczorem siądę i spróbuję to napisać. Raz już próbowałem, ale nie chciało za bardzo pobierać wszystkich elementów... :/
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 77 Pomógł: 1 Dołączył: 30.05.2011 Ostrzeżenie: (0%) ![]() ![]() |
wydaje mi się że się da pamiętam nawet jak pac man był na stronie startowej jako logo google
|
|
|
![]()
Post
#5
|
|
Developer Grupa: Moderatorzy Postów: 3 045 Pomógł: 290 Dołączył: 20.01.2007 ![]() |
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 138 Pomógł: 3 Dołączył: 4.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
Była gra też i to zrobiona chyba za pomoca JS ale watpie zeby tam byla jakas komunikacja z baza danych ^^
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Cytat Pierwsze - załóżmy że kilka procesów ma być wykonywane jednocześnie na kilku elementach - 1 np ma sie zapalać a drugi gasić. Procesy mają być wykonane w tym samym momencie, czy jest to możliwe w JavaScript ? Technicznie... nie. JavaScript jest jednowątkowy co oznacza, że nie może wykonywać kilku operacji na raz. Jednakże takie "pierdoły" jak pokazanie i ukrycie elementów wykonują się tak szybko, że w efekcie będzie to wyglądało jakby ostało wykonane w tym samym czasie.Cytat Drugie, powiązane z pierwszym - Załóżmy że mamy na ekranie 10 kolorowych klocków poruszających się (widziałem w kursie jquery jak zmieniały wektor ruchu). Czy gdybym komunikował się z bazą danych za pomocą advAjax + php a do wyswietlania aktualnej pozycji uzywal jQuery to ma szanse zrobienie powiedzmy mini gry w stylu pacman w Javascript na kilka osob (PHP + mySql + Ajax (biblioteki takie jak advAjax i jQuery)) Raczej nie będzie to działało zbyt ciekawie, z kilku powodów:1. AJAX daje Ci jedynie jednostronną komunikację (klient -> serwer), a Ty potrzebujesz dwustronnej (klient -> serwer oraz serwer -> klient). 2. AJAX działa na zasadzie wysyłania żądań HTTP, a te są dosyć duże i powolne. Nie dość, że wysyłana jest cała masa kompletnie niepotrzebnych (z punktu widzenia takiej gry) danych to jeszcze całość leci po TCP/IP. Częściowym rozwiązaniem tych problemów jest WebSockets, ale to technologia z której jeszcze skorzystać nie możesz. Są jeszcze protezy w stylu Cometa, które jakoś tam sobie radzą. Cytat Heh, to był GIF. Nie, to byla normalna gra. (IMG:style_emoticons/default/wink.gif)
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
@crozin: myślę, że komunikację między 6 graczami da radę zrobić za pomocą AJAX-a (IMG:style_emoticons/default/smile.gif) Jakieś większej komunikacji oczywiście się nie zrobi i tu masz rację, ale zakładając, że gra będzie raczej prosta takie zapytania, nie powinny "zmulić" gry w żaden sposób.
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
@kamil4u: To nie będzie żadnej komunikacji pomiędzy graczami. Wszystko będzie lecieć na linii klient -> serwer i odwrotnie. Masz rację co do ilości przesyłanych danych przez samą grę - nieduża, ale sposób w jaki będzie się klient z serwerem komunikować do najszybszych nie należy, a w takiej grze potrzebne są bardzo małe opóźnienia.
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 138 Pomógł: 3 Dołączył: 4.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
mhm... A jak to jest z flashem ? (zastanawiam się czy nie zacząć się go uczyć).
Srry za OT. |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Flash na pewno da radę - choć sam nie umiem w nim nic zrobić to widziałem gry, aplikacje, gdzie odbywała się płynna komunikacja między 4 użytkownikami(ale to nadal mała liczba, żeby można było stwierdzić, jak flash sobie radzi)
. Ale jak pisaliśmy, dla 6 graczy powinno być ok w PHP + JS(AJAX). |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Cytat mhm... A jak to jest z flashem ? Szczerze to nigdy się nim nie interesowałem, ale istnieje dla niego dedykowane narzędzie w postaci Flash Media Server. Nie wiem jak sprawa wygląd w przypadku ActionScriptu ale pewnie daje on możliwość komunikacji przy pomocy TCP i, co w tym przypadku ważniejsze, UDP z dowolnym serwerem.
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 138 Pomógł: 3 Dołączył: 4.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
Po UDP powinno isc szybko i bezproblemowo. Lepiej sie tym zainteresować. To jeszcze ostatnie pytanie. Czy jest jakis sposób żeby osadzić aplikacje napisaną w C/C++ na stronie internetowej jako zawartość aktywną(IMG:style_emoticons/default/questionmark.gif)
Z jednej strony wydaje sie to absurdalne a z drugiej kilka razy troche czasu temu czytalem teo forum i przewijał się wątek aplikacji C++, no chyba ze coś źle zrozumiałem. Pozdrawiam |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Cytat Po UDP powinno isc szybko i bezproblemowo. Szybko? Tak. Bezproblemowo? Raczej nie. (IMG:style_emoticons/default/wink.gif) Cytat Czy jest jakis sposób żeby osadzić aplikacje napisaną w C/C++ na stronie internetowej jako zawartość aktywną C / C++ nie bardzo. Najlepiej byłoby skorzystać z Flasha, później Java (aplety).
|
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 138 Pomógł: 3 Dołączył: 4.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
O jeja O.o
O Javie z tego co mi wiadomo jest tyle książek... i to dosyć grubych. Zdała by sie jakaś biblia i ze 2 miesiące wolnego. Mhm... W każdym bądź razie dzięki za odpowiedzi :] Gdyby ktoś coś chciał dodać do tematu Javy, Javascriptu etc. to będę wdzięczny (IMG:style_emoticons/default/smile.gif) (tak wiem ze Java i JS to 2 rozne rzeczy (IMG:style_emoticons/default/wink.gif) jak cos (IMG:style_emoticons/default/smile.gif) ) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 21:24 |