Du bist nicht angemeldet.

Werbeanzeige

MrBarsack

Frischling

  • »MrBarsack« ist der Autor dieses Themas

Beiträge: 65

Wohnort: NRW

Beruf: Student

  • Private Nachricht senden

1

24.07.2013, 16:02

[Java] JEMGEngine - Open Source Game Engine

Hallo,

Nachdem ich lange Zeit an verschiedenen Projekten (von eigenen Hobbyprojekten bis hin zu Terasology ) mitarbeitete, hatte ich den Wunsch, ein Projekt für Android zu erstellen. Nach langer Suche nach einer geeigneten Engine bin ich auf LibGDX gestoßen. Trotz des Funktionsumfanges war es für mich relativ einfach zu verstehen.

Da kam ich auf die Idee, eine Engine auf Basis des Frameworks zu erstellen. Dadurch entstand ein Java-Projekt namens "JEMGE" bzw. "JemgEngine". Dies steht für Java Easy Multi-Platform Game Engine. Ziel des Projektes ist es, eine "Game Engine" zu erstellen, welche:
  • Möglichst viele Plattformen erreicht,
  • Dem Entwickler vieles erleichtert / viel Arbeit abnimmt,
  • Hohen Funktionsumfang bietet,
  • Und trotzdem einfach zu verstehen ist.
Die LibGDX Framework bietet eine perfekte Basis für diese Ziele, da es viele Plattformen bietet und einen großen Funktionsumfang hat.

Gesucht für das Projekt werden mehrere Entwickler für ein "Core Team", welches das Projekt verwaltet. Wir werden dann auf Basis des aktuell noch eher kleinen Projektes die JemgEngine weiterentwickeln & dieses dann Open Source unter der Apache 2.0 Lizenz veröffentlichen. (Über die Lizenz könnte man jedoch noch diskutieren)

Was wird gebraucht?
  • (Pflicht) Kenntnisse in Java,
  • (Evtl.) Kenntnisse mit LibGDX und/oder Game Engines / Frameworks an sich.
  • (Evtl.) Kenntnisse in C++
Was ist vorhanden?

  • Domain/Forum/Webseite etc. zur Verwaltung,
  • (Kleines) Projekt als Basis,
  • Wissen über LibGDX/OpenGL
  • Ein Team mit 7 Mitgliedern.
Ich hoffe, ich kann jemanden für das Projekt überzeugen.

Gruß, MrBarsack

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »MrBarsack« (15.12.2013, 19:54)


TrommlBomml

Community-Fossil

Beiträge: 2 143

Wohnort: Berlin

Beruf: Software-Entwickler

  • Private Nachricht senden

2

24.07.2013, 17:36

Was mich persönlich an den meisten Java-Android engines nervt: sie ziemlich schlecht Garbagecollector-optimiert. Zusätzlich kommt dazu ja leider die Unfähigkeit, dass Java keine ValueTypes vernünftig unterstützt. Wenn du auf Basis von LibGDX anfängst, und vor allem das Feature einbaust, dass man Schriften rotieren kann - analog zu XNA, dann bist du mein Held! ;)

Architekt

Community-Fossil

Beiträge: 2 496

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

3

24.07.2013, 17:57

Was mich persönlich an den meisten Java-Android engines nervt: sie ziemlich schlecht Garbagecollector-optimiert. Zusätzlich kommt dazu ja leider die Unfähigkeit, dass Java keine ValueTypes vernünftig unterstützt. Wenn du auf Basis von LibGDX anfängst, und vor allem das Feature einbaust, dass man Schriften rotieren kann - analog zu XNA, dann bist du mein Held! ;)

Da muss ich leider nachfragen: Inwiefern vernünftig? AFAIK gibt es keine Value Typen in Java.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

NachoMan

Community-Fossil

Beiträge: 3 909

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

4

25.07.2013, 08:02

Abgesehen von den elementaren Datentypen oder nicht?
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

Sacaldur

Community-Fossil

Beiträge: 2 332

Wohnort: Berlin

Beruf: FIAE

  • Private Nachricht senden

5

25.07.2013, 11:33

Die primitiven Datentypn in Java (byte, short, int, long, float, double, char) sind einfach nicht mit den Wertetypen aus .Net (Int16, Int32, UInt16, UInt32, Boolean, Strukturen, Enumerations (?) etc. ...) vergleichbar, aber ein entsprechendes Thema gab es bereits.

Ob das für dieses Thema hier relevant ist, sei dahingestellt, allerdings wäre es schon ganz interessant, wie diese Engine aufgebaut sein soll. Welche Komponenten darf man erwarten? (2D und/oder 3D Grafik? 2D und/oder 3D Physik? Netzwerk? ...) Wie sieht die Architektur aus? (komponentenbasiert?) Wie wird man auf Benutzereingaben reagieren können? (Kann man sich, vergleichbar mit Unity, die Tasten und analogen Eingaben mappen, damit man nur noch eine einzige Eingabe abfragen muss? Gibt es dann für Achsen mit gemappten Tasten eine Interpolation, damit eine "Bewegung des Analogsticks" simuliert wird?) Welche anderen Engines/Tools dienen als Vorlage/Vorbild?
Das sind zwar hauptsächlich Detailfragen, die am Anfang wohl nicht alle ausdefiniert sein müssen, allerdings müssten sich diese wohl im Verlaufe des Projekts klären, damit klar ist, was wie implementiert werden soll.
Spieleentwickler in Berlin? (Thema in diesem Forum)
---
Es ist ja keine Schande etwas falsch zu machen, als Programmierer tu ich das täglich, [...].

TrommlBomml

Community-Fossil

Beiträge: 2 143

Wohnort: Berlin

Beruf: Software-Entwickler

  • Private Nachricht senden

6

25.07.2013, 11:51

Was mich persönlich an den meisten Java-Android engines nervt: sie ziemlich schlecht Garbagecollector-optimiert. Zusätzlich kommt dazu ja leider die Unfähigkeit, dass Java keine ValueTypes vernünftig unterstützt. Wenn du auf Basis von LibGDX anfängst, und vor allem das Feature einbaust, dass man Schriften rotieren kann - analog zu XNA, dann bist du mein Held! ;)

Da muss ich leider nachfragen: Inwiefern vernünftig? AFAIK gibt es keine Value Typen in Java.


Ich meine damit die Primitiven Datentypen ;). Wenn ich gesagt hätte, es gibt keine Value Types, hätten sich vielleicht einige Java-Anhänge auf den Schlips getreten gefühlt und da wollte ich einfach diplomatisch sein.

MrBarsack

Frischling

  • »MrBarsack« ist der Autor dieses Themas

Beiträge: 65

Wohnort: NRW

Beruf: Student

  • Private Nachricht senden

7

25.07.2013, 13:29

Hallo,

Erstmal vielen Dank für euer Interesse :)

Zitat

Welche Komponenten darf man erwarten? (2D und/oder 3D Grafik? 2D und/oder 3D Physik? Netzwerk? ...)

  • Erstmal 2D Grafik, jedoch ist wahrscheinlich auch 3D geplant. In der aktuellen, frühen Version ist bereits einiges im Bereich 2D möglich.
  • LibGDX bringt JNI Wrapper von Box2D und Bullet mit sich. Diese werden dann auch natürlich verwendet :-)
  • Über andere Komponenten wird dann später diskutiert, sobald halt eine Art Team entstanden ist.

Zitat

Das sind zwar hauptsächlich Detailfragen, die am Anfang wohl nicht alle ausdefiniert sein müssen, allerdings müssten sich diese wohl im Verlaufe des Projekts klären, damit klar ist, was wie implementiert werden soll.


Natürlich muss sowas geklärt werden. Das möchte ich jedoch nicht alleine machen, sondern im Team, sobald denn eins vorhanden ist. ;)

Gruß, MrBarsack

Thoran

Alter Hase

Beiträge: 512

Wohnort: Stuttgart

Beruf: Senior Software Engineer

  • Private Nachricht senden

8

25.07.2013, 13:33

Möglichst viele Plattformen erreicht,

iOS ist damit ja mal außen vor, es sei denn ich den Port einer Java-Runtime auf iOS verpasst.
Mein Entwicklertagebuch
Aktuelles Projekt: Universum Espionage
Eingestellt:Spieleengine SilverCore
Organisator "Spieleentwickler Stammtisch Stuttgart"

MrBarsack

Frischling

  • »MrBarsack« ist der Autor dieses Themas

Beiträge: 65

Wohnort: NRW

Beruf: Student

  • Private Nachricht senden

9

25.07.2013, 13:54

http://www.robovm.org

Ist aber noch in der Alpha Phase ;)

Thoran

Alter Hase

Beiträge: 512

Wohnort: Stuttgart

Beruf: Senior Software Engineer

  • Private Nachricht senden

10

25.07.2013, 16:17

Danke für den Link. Aber der Zusatz Alpha ist ein Showstopper. Ich habe seit einiger Zeit mit der Evaluation von Crossplatform-Entwicklung IOS und Android zu tun und muss sagen, dass ich nix gefunden haben, was zuverlässig funktionert und keinen zusätzlichen Arbeitsaufwand produziert. Qt5.2 scheint vielversprechend zu sein, aber leider noch nicht fertig. Bei vielen anderen Frameworks, die schon weit über Alphstatus raus sind, hat man durchaus mit einigen Problemen zu kämpfen und sei es auch nur die Lizenz. Aber trotzdem wünsche ich dir viel Erfolg.
Mein Entwicklertagebuch
Aktuelles Projekt: Universum Espionage
Eingestellt:Spieleengine SilverCore
Organisator "Spieleentwickler Stammtisch Stuttgart"

Werbeanzeige