• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Gra przeglądarkowa. A sam silnik?

VPS Starter Arubacloud
+1 głos
1,350 wizyt
pytanie zadane 23 grudnia 2018 w JavaScript przez Whereismycode Obywatel (1,710 p.)
Witam wszechwładnych koderów. Mam kilka pytań odnośnie tworzenia gry przeglądarkowej.

Gra którą mam zamiar napisać nie posiada rządnych animacji. Jest to gra oparta na wybraniu misji i odczekaniu odpowiedniej ilości czasu na walkę.

Pierwsze pytanie które jest dosyć istotne dla mnie. Czy JavaScript + biblioteka jQuery wystarczy, żeby napisać w pełni dynamiczną grę (bez odświeżania strony) z logowaniem. Czy może napisanie gry w jakimś silniku który oferuje wyświetlenie gry w canvas. Tylko pytanie w jakim ?

Jeśli chodzi o JS to próbowałem coś tam napisać lecz dynamiczne wczytywanie dosyć kontrowersyjne działa. Jeden z przykładów jest taki, że nie zawsze dziala. W moim przypadku musiałem ustawić setTimeout na 50ms. Dla wczytywania na przykład background czy też kodu HTML. No cóż czekam na wasze propozycje i uwagi.

3 odpowiedzi

0 głosów
odpowiedź 23 grudnia 2018 przez Igor Gawrys Stary wyjadacz (12,460 p.)
wybrane 23 grudnia 2018 przez Whereismycode
 
Najlepsza
Oczywiście możliwe jest napisanie gry tylko w html,css,js,jquery ale najlepiej jest użyć vue,angular czy react ponieważ w jquery bardzo trudno napisać grę dynamiczną.

Lub możesz użyć np.Unity i wyeksportować jako WebGL

Wesołych świąt Bożego narodzenia i nowego roku !!!
komentarz 23 grudnia 2018 przez Whereismycode Obywatel (1,710 p.)
O taka odpiwodpo mi chodziło. Również życzę wesołych świąt.
4
komentarz 23 grudnia 2018 przez Comandeer Guru (599,730 p.)

najlepiej jest użyć vue,angular czy react ponieważ w jquery bardzo trudno napisać grę dynamiczną

A to niby czemu? Żaden z tych frameworków nie pomaga w tym jakoś specjalnie bardziej niż jQuery, bo wszystkie te narzędzia służą tworzeniu aplikacji, nie gier. 

komentarz 24 grudnia 2018 przez sebeks Mądrala (5,300 p.)
Widziałem na Youtube live coding gry tworzone w JavaScript gdzie statek kosmiczny strzela do asteroidów pisanej obiektowo bez frameworków i klasyczną grę Snake pisano czysto funkcyjnie, też bez frameworków. Na pewno da się i pewnie tak trzeba to robić. Obie gry to był canvas. Ale jeśli prosta gra ma być budowana w przeglądarce w DOM to chyba framework ułatwi parę kwestii. Łatwiej będzie renderować wyniki i chwytać eventy myszki niż w canvas.
1
komentarz 24 grudnia 2018 przez Comandeer Guru (599,730 p.)

Na pewno da się i pewnie tak trzeba to robić.

Pisanie bez abstrakcji to proszenie się o kłopoty. Tego typu gry nie wymagają aż takiej wydajności, żeby nie używać odpowiednich narzędzi do tego. Ba, nasz ręcznie rzeźbiony kod prawdopodobnie będzie mniej wydajny od specjalistycznego frameworka, z powodu tego, że we frameworku są zawarte liczne optymalizacje i techniki dostosowane właśnie do gier.

Łatwiej będzie renderować wyniki i chwytać eventy myszki niż w canvas. 

Przechwytywanie zdarzeń myszy sprowadza się do najbardziej podstawowej matematyki i obliczania położenia względem rogu canvas. Co do renderowania wyników: nie powiedziałbym, żeby konieczność pozycjonowania elementów na ekranie było prostsze niż przerysowanie całej klatki. 

+1 głos
odpowiedź 24 grudnia 2018 przez sebeks Mądrala (5,300 p.)
Gra to spory projekt. Musisz rozważyć kilka rzeczy. Po pierwsze aplikacja dla użytkownika. Jeśli ma być prosta gra to może faktycznie wystarczy framework, w którym można na przykład podzielić sobie kod na moduły. Komponenty mają tak zwany cykl życia, gdzie można im pobrać dane po zamontowaniu i ogólnie działa to bardzo fajnie. Po drugie grafika i tu masz canvas chyba najlepszy na start. Po trzecie są różne biblioteki do robienia grafiki, np. phaser.js. Czwarty problem to taki, że gra to też dane, więc można je zapisać w localStorage przeglądarki lub na serwerze. W przypadku serwera dojdzie Ci sporo pracy. Po piąte to dane to też różne algorytmy, np. sortowanie. Jeśli w grze będziesz miał sztuczną inteligencję, czyli jakiegoś komputerowego przeciwnika, to trzeba to tak napisać, aby łatwo było robić różne warianty i łatwo było je wymieniać, albo dodawać kolejnych innych przeciwników. Wtedy możesz na przykład zbudować różnych dwóch lub więcej przeciwników, takich botów i rozegrać grę miedzy nimi :)  To od strony technicznej.

Robiąc grę musisz jeszcze rozważyć coś takiego jak historię lub opowieść wprowadzającą w temat, nazwę gry, nazwy elementów gry (np. państw, postaci), dokumentację (samouczek, zasady gry). Gra powinna mieć jasny intuicyjny interface. Musisz określić warunki zwycięstwa i porażki, które przerywają tak zwaną pętlę gry. Powinieneś zaplanować ile czasu ma trwać gameplay. Inaczej piszę się grę na 15 minut, a inaczej na wiele godzin.Co pośrednio tez wpływa na rozmiar projektu. Gdy to będziesz wiedział to łatwiej będzie Ci stworzyć do końca mniejszy projekt.

Ogólnie gry na przeglądarkę to fajny temat w który sam się wgryzam teraz i chyba coś napisze po nowym roku.
–2 głosów
odpowiedź 7 stycznia 2021 przez Gracz99 Nowicjusz (140 p.)
Aby stworzyć grę internetową potrzebny jest ciekawy pomysł, który zainteresuje potencjalnych graczy. Na stronie https://gamekeytips.com/gry-internetowe-na-przegladarke-i-ich-zalety/. Zajdują się opisy gier przeglądarkowych, które podpiły świat. Myślę, że po zapoznaniu się z ich tematyką będzie można w łatwy sposób zrozumieć czego od dobrej gry oczekują gracze.

Podobne pytania

0 głosów
2 odpowiedzi 410 wizyt
pytanie zadane 22 sierpnia 2018 w JavaScript przez Maciej Sadowski Nowicjusz (160 p.)
0 głosów
1 odpowiedź 345 wizyt
+2 głosów
3 odpowiedzi 475 wizyt

92,453 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...