Czy istnieje biblioteka podobna do XNA dla Javy? [Zamknięte]

12

Jestem ciekawy, czy istnieje biblioteka podobna do XNA dla Javy; to znaczy, że biblioteka

  1. Obsługuje pętlę gry - tzn. Po prostu wdrażasz istniejącą metodę i będzie ona wywoływana w każdej ramce.
  2. Obsługuje renderowanie - tzn. Po prostu powiesz mu, co ma być renderowane, zajmie się wyświetleniem go na monitorze, ukrywając szczegóły implementacji, takie jak przyspieszenie sprzętowe.
  3. Zawiera wiele przydatnych metod grafiki, dźwięku i opcji wprowadzania danych przez użytkownika.

Interesuje mnie biblioteka, która obsługuje zarówno opcje 2D, jak i 3D.

Dąb
źródło

Odpowiedzi:

15

Zgodnie z twoim pierwszym wymaganiem szukasz raczej frameworku niż biblioteki.

jMonkeyEngine to framework do gier 3D (tzn. zapewnia główną pętlę, o którą prosisz, podobny do XNA), ale nie byłby dobrym wyborem dla 2D.

Jednak pętla gra nie jest trudna rzecz do napisania , a istniejące biblioteki Java obsługiwać 2 i 3 wymagania, więc gorąco polecam patrząc na wykres sceny 3D Library / silnika lub dowolnej biblioteki 2D, w zależności od jeśli robisz gra 2D lub 3D.

Aviatrix3D , Ardor3D , Java3D i jMonkeyEngine to moje rekomendacje dla silników 3D z grafami scen.

Dla bibliotek 2D, masz JGame , można też zdecydować się na stosowanie OpenGL do max prędkości i użycia lwjgl lub Jogl . Możesz także skorzystać z wbudowanej biblioteki Graphics2D Java , co byłoby szczególnie dobrą opcją, jeśli planujesz wdrożyć grę jako aplet.


Dla dzieje wbudowanego Graphics2D trasę, spojrzeć na kod źródłowy do Metagun (kliknij, aby odtworzyć w formie apletu). Jest to mała, ale bardzo dobrze napisana gra 2D Java, i myślę, że jest to doskonały przykład małej gry; skopiuj jego strukturę, a otrzymasz optymalną pętlę / strukturę gry.

Ricket
źródło
6

Slick to przyjemna biblioteka 2D Java oparta na LWJGL. Obsługuje pętlę gry, renderowanie i zawiera przydatne funkcje do implementacji duszków.

Zawiera wiele różnych wersji demonstracyjnych i przykładów.

David Young
źródło
1
Popieram to zalecenie. Zręczność to najlepsza opcja, z jaką się zetknąłem. Napisałem kilka gier ze Slickiem i jedną z XNA i faktycznie wolę Slicka do projektów 2D.
Alex Schearer
Slick jest niesamowity dla projektów 2D. Gorąco polecam.
Bryan Denny,
Slick nie jest tak znany i doceniany, jak powinien. Używałem go wcześniej i byłem mile zaskoczony za każdym razem, jak dobrze został zaprojektowany. To z powodu Slicka wolę Java do tworzenia gier 2D.
Zach Conn
2

Jeśli chcesz, aby jeden szkielet obsługiwał zarówno 2D, jak i 3D, najbliższy, jaki widziałem, to jPct. To jest 3D, ale na ich forach mają kilka poprawek do zrobienia 2D.

Polecam używać Xith3D lub Java Monkey Engine dla 3D. I Slick lub GTGE dla 2D.

Piszę książkę o tworzeniu gier Java, ukończyłem już rozdziały na temat podstaw tworzenia gier Java i 2D w 2D, może dać ci punkt wyjścia, spójrz tutaj:

http://code.google.com/p/lucu

Taksan


źródło
0

Mimo że nie obsługuje 3D, Pulcore jest dobrym szkieletem do gier. Nie korzystałem z niego osobiście, ale przejrzałem kod tylko po to, by go sprawdzić i wygląda ładnie.

Chii
źródło
-1

RedDwarf to Java Game Engine. To stary projekt DarkStar, który Sun wykorzystuje do finansowania.

zooropa
źródło
RedDwarf jest „frameworkiem” sieciowej gry Java, ale głównie częścią serwerową. To wcale nie jest silnik gry.
Ricket