![]() |
Spieleprogrammierung mit JAVA
Hallo!
Ich habe eine Frage: Ich weiß natürlich das C++ am besten für die Spieleprogrammierung geeignet ist. Nun setzt auch C# einen großen wert auf die Spieleprogrammierung. Nämlich mit XNA. Nun zu meiner Frage: Die Programmiersprache JAVA läift genau wie C# auf einer Virtuellen Maschine. Ich vermute mal, das beide Sprachen ungefähr gleich schnell sind. Ich weiß auch das man mit JAVA immerhin noch Spieleprogrammieren kann. Nun, ist die Programmiersprache wenigstens besser als Blitz Basic? Kann man damit genau so gut Spiele proggen wie C#. Man hat ja immerhin als JAVA Programmierer XNA und das sollte (finde ich) ausreichen. Danke! |
Re: Spieleprogrammierung mit JAVA
Man kann soetwas nicht pauschal in "besser" oder "schlechter" einteilen. Mit Java hast du halt einen sehr hohen Abstraktionsgrad.
|
Re: Spieleprogrammierung mit JAVA
Ich denke es kommt nicht darauf an womit man ein Spiel o.ä. programmiert sondern wie man es angeht. Man muss sich ein gutes Konzept überlegen, wie man das von den Klassen her aufbaut etc. . Natürlich ist es von Vorteil wenn die Programmiersprache OOP unterstützt. Aber man sollte auch auf einen guten CodeStyle achten, da Spiele meist sehr umfangreich werden.
mfg, Björn |
Re: Spieleprogrammierung mit JAVA
Nun, ich habe schon einmal ein recht nettes RPG mit Java gesehen. Möglich ist es also tatsächlich. Auch 3D-Unterstützung bietet Java. Dazu die Plattformunabhängigkeit. Der Java-Code ist außerdem sehr klein. Viele effiziente Datenstrukturen sind ebenfalls vorhanden. Dafür kannst du aber auch keine speziellen Hardwaresachen machen.
|
Re: Spieleprogrammierung mit JAVA
Also wenn ich zb plane einen Spiel mit JAVA zu programmieren, also:
- Online Ego Shooter - 3D Grafik - Multiplayer dann wäre das also theoretisch möglich. Es wäre ja also nichts falsches oder? Ich will mich ja nich stark auf die Spieleprogrammierung konzetrieren, sondern nur nebenbei. Wäre das dann möglich? |
Re: Spieleprogrammierung mit JAVA
Möglich ist (fast) alles.
|
Re: Spieleprogrammierung mit JAVA
|
Re: Spieleprogrammierung mit JAVA
Java unterstützt durch Java3D OpenGL, außerdem kann man mit Java einfach Spiele für Handys anfertigen. Die Möglichkeiten mit Java sind durchaus gegeben. Es kommt aber auch immer auf das Spiel an. Kleinen Spiele für Handys werden imho mit Java geschrieben, da auf Handys läuft, alternativ kann man das Compactframework benutzen. Bei einfachen 2D Spielen denke ich ist Flash am besten, da man in der IDE schon viel machen kann. Außerdem bietet AS gute Klassen wie den MovieClip. Bei großen 3D Spielen ist eine Native Sprache am besten da man hier viel Optimieren muss.
Sprachen die ManagedCode verwenden haben auch ihre Vorteile wie Plattformunabhängigkeiten, schlanken Code und ganz wichtig einfache Bedienung durch diverse Bibliotheken. Am besten ist es wenn man von Projekt zu Projekt abwägt welche Sprache am besten ist, dabei sollte am natürlich auch die eigenen Fähigkeiten bedenken, da das erlernen einer Sprache auch Zeit in Anspruch nimmt. Die Frage welche Programmiersprache die beste ist kann man so nicht beantworten. Dafür ist die Breite an Sprachen und Anwendungsmöglichkeiten einfach zu groß |
Re: Spieleprogrammierung mit JAVA
Ich empfehle dir, dass du C++ dafür nehmen solltest, aber auch nur, weil ich mich in Irrlicht etwas eingearbeitet habe. Ich sage aber damit nicht, dass Java dafür nicht geignet wäre. Deshalb kann man hier eigentlich nur sagen, dass du alles sehr genau planen musst, also:
- Engines (welche und wie viele gibt es ?) - Lernzeit der Engine - Übersichtlichkeit der Engine - Leistung der Engine (z.B. wie gut ist die Grafik ?) - Codeoptimierbarkeit (Engine und Sprache) - Lernzeit der Sprache - Community-Anbindung (wenn du mal überhaupt nicht weiter weißt, musst du auch irgendjemanden fragen können) Es gibt bestimmt noch mehr Punkte, aber diese Punkte sind mir sofort eingefallen. |
Re: Spieleprogrammierung mit JAVA
Zitat:
XNA ist eine sehr interessante Geschichte, und wenn du dich mit Spieleentwicklung beschäftigen willst, ist das kein schlechter Schritt. Java wird allerdings nicht unterstützt. Irrlicht ist eine interessante Engine, für die es auch ein .NET-Binding gibt. Persönlich würde ich mich nicht mit Java beschäftigen, wenn ich Spiele entwickeln wollte. C#, Delphi und C++ finde ich da angenehmer. |
Re: Spieleprogrammierung mit JAVA
Oh sorry!!!!
ICh habe mich da vertippt. Ich meine C# hat ja XNA und nicht Java :oops: Wie gut ist denn C# für die Spieleentwicklung oder Visual Basic.NET. Ist doch im endeffect das selbe, weil beide auf der virtuellen Maschine laufen. Als Visual Basic.NET programmierer hat man ja immer hin DirectX. |
Re: Spieleprogrammierung mit JAVA
Mir fällt da auf Anhieb Jake 2 ein.
|
Re: Spieleprogrammierung mit JAVA
Zitat:
Das XNA-Framework selber gibt es nur für Visual C# Express. Und XNA ist an sich nicht anderes als eine weitere Abstraktionsschicht um DirectX herum, die u.A. die Fixed Function Pipelines nicht zur Verfügung stellt, weil diese nicht auf der XBox zur Verfügung stehen. Denn: XNA ist eigentlich kein Framework für PC-Spiele sondern für Konsolenspiele auf der XBox 360. Zur Spieleprogrammierung mit Java: Sogar gestandene Java-Entwickler sagen, dass Java zur 3D-Entwicklung nur bedingt tauglich ist: ![]() Wenn Du mit Java im Bereich 3D was machen willst schau Dir mal OpenGL an. Mit der Grafikapi dürftest Du am weitesten kommen. Aso: 'Nur so mal nebenher' wirst Du im 3D-Sektor NICHTS reissen können. Sich da reinzuarbeiten ist mehr Aufwand als ein Fulltimejob. |
Re: Spieleprogrammierung mit JAVA
D
Zitat:
|
Re: Spieleprogrammierung mit JAVA
Also ich finde arbu man hat auch einerseits recht.
In der Programmierung kommt es doch eigentlich auf das Algorithmus an oder nicht? Also, wie man an die Aufgabe oder das Problem löst. Denn im Endeffekt ist ja nix Unmöglich. Was meint ihr dazu? |
Re: Spieleprogrammierung mit JAVA
Zitat:
Stell Dir Deine Entwicklungsumgebung/ Plattform (Sprache, Laufzeitumgebung) als eine Art Werkzeug vor. Du würdest doch auch nicht versuchen, einen Nagel mit einer Wasserwaage oder einer Zange in die Wand zu hauen, oder? Deine API's zur 3D-Spieleprogrammierung sind nunmal DirectX oder OpenGL. Nun kannst Du diese Werkzeuge direkt verwenden (C++) oder über ein alternatives Sprachbinding (Java) und darüber hinaus sogar noch Aufrufe aus einer weiteren Laufzeitumgebung (Java VM) hinaus auf die native Plattform (Windows / Linux) gehen. Dass diese ganzen Umwege (Call auf Java-Code, umsetzung, Invoke aus der Java-VM heraus auf das Java-OpenGL Binding, Aufruf der OpenGL-Funktion) Performance kosten müssen ist unausweichlich. Aber Ja, es funktioniert. Aber nein, es ist nicht elegant und erst recht nicht schnell. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:50 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz