Skocz do zawartości

Shockah

Użytkownicy
  • Postów

    550
  • Dołączył

  • Ostatnia wizyta

Odpowiedzi opublikowane przez Shockah

  1. No cóż. Gdybym teraz szukał czegoś do kodzenia gierek, to bym się pewnie zdecydował na libgdx, ale wtedy jak zaczynałem znalazłem właśnie Slicka :P. A że już sobie napisałem "bazę" pod projekty, to nie mam ochoty się przenosić.
    Uhhh. Nie wyszło mi to.

     

    Kilka miesięcy temu zacząłem pisać własną bibliotekę do tworzenia gier 2D - z braku pomysłów nazwałem ją po prostu Gamelib.

    Gamelib jest biblioteką (można też powiedzieć silnikiem) pozwalającym łatwo i przyjemnie tworzyć gry 2D w Javie (konkretnie wersja 7, choć nie byłoby problemu użyć wersji 6), używając jako silnika graficznego OpenGL, zamiast Java2D. Wykorzystuje bibliotekę LWJGL (znaną choćby z Minecrafta) właśnie do obsługi OpenGLa. Sam LWJGL działa na Windowsie, Linuxie, OS X i Solarisie, więc Gamelib powinien również.

     

    Jako że dobre 7-8 lat spędziłem nad GMem, trochę sie na nim wzorowałem, co można czasem zauważyć po tym jak wszystko jest zorganizowane.

     

    Funkcjonalność na daną chwilę:

    * tworzenie "roomów", przejścia między nimi

    * tworzenie i niszczenie obiektów, pobieranie listy wszystkich obiektów danego typu

    * proste sprawdzanie kolizji między obiektami

    * sortowanie obiektów po głębokości

    * podział rysowania obiektów na warstwy (dużo lepsza wydajność przy rysowaniu wielu różnych obrazków w jednym obiekcie)

    * rysowanie kształtów (linie, prostokąty, koła, elipsy, polygony)

    * rysowanie obrazków, wyciętych kawałków obrazków

    * obsługa spritesheetów/tilesetów i atlasów (spritesheet: jedna stała siatka; atlas: wycinek obrazka o podanych wymiarach - np. rozciągalne okna dialogowe w jednym atlasie)

    * rysowanie tekstu z czcionkami TTF

    * bardzo proste ładowanie zasobów (BMP, JPG, PNG, GIF, WBMP, jak i SVG z pomocą biblioteki Apache Batik (nie jest ona wymagana jeśli nie używamy plików SVG))

    * blend mode'y

    * systemy cząsteczkowe

    * surface'y

    * shadery (vertex i fragment)

    * obsługa klawiatury (zarówno poprzez eventy (np. wpisywanie tekstu z klawiatury) jak i poprzez sprawdzanie stanu (np. ruch postaci)) i myszki

     

    Sam kod Gameliba dostępny jest publicznie na Githubie - https://github.com/Shockah/Gamelib.

    Wymaga on mojej paczki pl.shockah.json (do ładowania atlasów) - https://github.com/Shockah/pl.shockah.json.

     

    Przykładowe projekty napisane przeze mnie w Gamelibie - czołgi pisane do szkoły na specjalizację z programowania i wczesna wersja TimeSurfa:

    Z Dropboxa: https://dl.dropboxusercontent.com/u/1765403...t%20Release.zip

    Z GMClanowego uploadera: https://gmclan.org/up2763_3_Gamelib_Public_Test_Release.html

    W paczce dostępne zarówno źródła jak i wyeksportowane wykonywalne JARy (przygotowane pod Windowsa, nie chciałem specjalnie kopiować natywnych bibliotek również dla innych systemów).

    Na Githubie dostępne są też proste testy biblioteki: https://github.com/Shockah/Gamelib/tree/mas.../srctests/tests

     

    Czego jeszcze nie zaimplementowałem w bibliotece:

    * obsługi dźwięku

    * obsługi sieci

    * obsługi kontrolerów typu gamepady

     

    W planach jest również sportowanie Gameliba na Androida, jako że mam dostęp do jednego urządzenia z tym systemem. Ale OpenGL ES boli ;_;

  2. A może mógłbyś chociaż publicznie zdradzić czy ta gra będzie shooterem, przygodówką czy czymś innym nie wchodząc zbytnio w szczegóły i czy będzie to jakaś bardzo rozbudowana gra czy też minigierka, to akurat jest ważne dla mnie bo posiadam tylko wersje free gamemakera.
    "tak właśnie jak ktoś zauważył ma to być gra multiplayer online , dlatego myślę połączyć gm z java do obsługi neta , " - nope, musisz mieć pełną, z tego wynika.
×
×
  • Dodaj nową pozycję...