Ich bin irgendwie neu zu libGDX und ich kann nicht ganz bekommen, warum ist das Android-Modul in der Gdx-Setup-Ui notwendig?
Wird libGDX nicht für Desktop-Spiele verwendet? Und gibt es eine Möglichkeit, ein Desktop-Projekt zu erstellen, das das Android-Projekt vermeidet (nur mit core + desktop)?Kann ich Desktop-Only-Spiele mit libGDX erstellen?
Antwort
Laut offizieller Dokumentation (und meiner Praxis in der Vergangenheit), ja, können Sie. Sie würden nur das Android-Projekt löschen und alles ist fertig. Aber die Verwendung von Java für die reine Desktop-Entwicklung ist ziemlich merkwürdig, da es .NET und sogar Open-Source-Implementierung von .NET (Mono) gibt. Mit JVM können Sie keine gute Leistung speziell für Spiele erreichen (oder es wird SEHR hart sein & dreckig), weil es keine benutzerdefinierten Werttypen gibt, alle Generika können nur Referenztypen als Typparameter usw. haben.
Zur Kasse this, hier sehen Sie, dass Sie Ihr Kernprojekt verwenden, um den gesamten unspezifischen Plattformcode zu platzieren, und das Desktopprojekt ist das Projekt, das Sie ausführen, wenn Sie für den Desktop ausführen möchten.
gut, ja. Ich habe das alles gelesen. Die Frage ist: Kann ich Android Modul vermeiden und kann es einfach ohne Probleme gelöscht werden? – omtcyfz
Sie sollten das ja können. –
@arcadia natürlich, ja. –
Es Es ist auch möglich, Main.java und den Inhalt des Verzeichnisses/lib vom Desktop in das Kernprojekt zu verschieben, um das vorherige zu entfernen. Sie müssen sich mit den Build-Pfad-Einstellungen beschäftigen, damit es funktioniert, aber ich denke, dass es in diesem Fall einfacher ist, ein Projekt zu haben.
- 1. Erstellen von Facebook Game Requests mit LibGdx
- 2. libGDX: Gitter für Brettspiel erstellen
- 3. Wie kann ich eine Kopie eines libgdx-Arrays mit benutzerdefinierten Objekten erstellen?
- 4. kann ich SpriteBatch mit PerspectiveCamera in libGDX rendern?
- 5. Wie setze ich den Hochformatmodus mit libGDX?
- 6. LibGDX Textur von Base64 PNG erstellen ByteArrayInputStream
- 7. Erstellen einer iOS-Bibliothek oder eines Frameworks mit libgdx (roboVM)
- 8. LibGDX Etikett für Ingame Shop erstellen
- 9. Wie kann ich Kreise in libgdx/android verschieben?
- 10. Libgdx-Kreis mit Linienbreite
- 11. (Java LibGDX) Wie ändere ich meine Texturen in LibGDX?
- 12. So erstellen Sie Würfel mit einzelnen Mesh in libgdx
- 13. Animierter Hintergrund mit Libgdx
- 14. Libgdx - mit MipMaps
- 15. libGDX FreeType mit HTML
- 16. Libgdx Wie kann ich die FreeType-Erweiterung hinzufügen?
- 17. Wie vergleiche ich LibGDX PolygonShapes?
- 18. LibGdx Etikett Hintergrund mit 9Patch
- 19. Warum kann ich mein LibGDX-Projekt nicht in HTML starten?
- 20. LibGDX Wie kann ich ein Etikett größer machen?
- 21. LIBGDX: Wie kann ich feststellen, wann ein Sound beendet ist?
- 22. Wie kann ich jede Sekunde etwas tun? [LibGDX]
- 23. Programme laufen gut mit LibGDX -desktop aber nicht LibGDX - Android?
- 24. Kann ich einen Webdienst mit Eigenschaften erstellen?
- 25. Kann ich UWP mit .NET Core erstellen?
- 26. Kann ich eine Konsolenanwendung mit Xamarin.Mac erstellen?
- 27. kann ich mein vorhandenes LibGDX-Projekt mit der Datei gds-setup.jar anpassen?
- 28. libgdx kann Textur nicht in Array laden
- 29. Erstellen eines btBvhTriangleMeshShape in libgdx vom Knoten des Modells
- 30. Kann die Schriftfarbe in Libgdx nicht ändern
Ich stimme nicht zu, dass die Desktop-JVM keine gute Leistung für Spiele erreichen kann. –
Ok. "Gut" ist möglicherweise nicht präzise, aber Sie können sicherlich eine bessere Leistung und weniger GC-Stottern erzielen, wenn Sie andere VMs oder nativen Code für dieselbe Aufgabe verwenden. (Dies gilt natürlich nur, wenn Ihr Java-Code einige Performance-bedingte JVM-Einschränkungen hat ... aber viel Glück versucht, sie nicht zu treffen.) Und natürlich wird für viele Spiele sogar JVM ausreichen. Ein einfaches Spiel ohne viel Druck auf die CPU mag es nicht wert sein, eine andere Sprache zu lernen. –
Dem stimme ich zu. Ein Ego-Shooter, der JVM verwendet, müsste alles zwischenspeichern, um zu verhindern, dass der GC die Framerate abbricht. Etwas Einfacheres wäre in Ordnung. –