-
Veteran
2D Spiele, welche Sprache ist die Beste dafür?
Hi leude mich würde mal interressieren welche Prog Sprache die beste und leichteste für ein 2D Spiel wäre.
Ich Progge zz in PureBasic.
-
Drachentöter
Das ist weniger eine Frage der Sprache als der verwendeten (Grafik)API. Direkt von der Ottonormal-Grafikkarte werden heutzutage OpenGL und DirectX unterstützt. DirectX verfügt über zig Komponenten, darunter auch DirectDraw, welches afaik für 2D zuständig ist. OpenGL ist primär für den 3D-Bereich ausgelegt, was nicht heißt, dass es die Erstellung von 2D-Spielen nicht auch erheblich leichter machen kann. Nicht nur, weil es durch Hardwarebeschleunigung sehr flott ist sondern auch durch den 3D-Raum welcher die perspektivisch korrekte Z-Anordnung für dich übernimmt. Und dann gibt's natürlich noch jede Menge Effekte, Pixelshader usw.
Die meisten anständigen Sprachen können diese GrafikAPIs einbinden. Aus eigenen Erfahrungen empfehle ich nunmal C/C++. Mit PureBasic kann man übrigens auch direkt auf OpenGL zugreifen. (Musst du mal im PB-Forum nachfragen oder googlen.
)
Es spielt also weniger die Programmiersprache eine Rolle sondern die API welche ja die Funktionen mitliefert, womit dann das Bild erzeugt wird. Und diese Funktionen sind in allen Sprachen gleich zu handhaben, die Syntax ändert sich nur geringfügig (Manche Sprachen erfordern keine Klammern um Funktionsnamen und solche komischen Sachen...
).
-
Veteran
ok also kann ich auch bei pb bleiben???
Dann schau ich mir mal die Bereiche DirectX und OpenGL genauer an. ^___~
-
Ritter
Noch ein par Worte zu DirectX und OpenGL.
DirectX hat den Vorteil, gegenüber OpenGL, daß es dir mehr gibt als nur Grafik-Funktionen. Du hast alle möglichen Dinge zur Verfügung, die du für ein Spiel brauchst. (Input von Tastatur, Maus und Joystick, Sound abspielen etc..)
OpenGL ist dagegen eine reine Grafik-API. Damit kannst du Grafiken darstellen, mehr nicht. Der große Vorteil von OpenGL ist dagegen, daß es im Gegensatz zu DirectX portabel ist. OpenGL-Programme laufen auch (bzw. lassen sich einfach porten) auf anderen Plattformen wie Linux oder Mac OSX.
Um die Sachen zu kriegen, die DirectX noch bietet (Sound, Joystick und Co), greift man dann als OpenGL'ler zu einer weiteren Libary. Hier zu empfehlen ist SDL (Simple Direct Media Layer)
Die SDL fügt sich nahtlos ein mit OpenGL, besitzt aber eigene 2D-Funktionalitäten. Daneben gibt es SDL-Zusatzlibs um Grafikdateien zu laden (SDL_image), Sound und Musik abzuspielen (SDL_mixer) und noch etliche weitere. Die SDL läuft auf unzähligen Plattformen und es gibt sie mittlerweile für eine Vielzahl von Sprachen.
Wofür du dich nachher entscheidest ist letztendlich deine Sache, und natürlich eine Sache welche Sprache du benutzen willst. Vielleicht solltest du einfach beides mal ausprobieren (und sowas wie Pong schreiben). Ich persönlich finde zB. OpenGL einfacher als DirectX (wobei ich mich nicht wirklich intensiv mit DirectX beschäftigt habe), aber andere Leute sehen das vielleicht anders.
-
Veteran
jo danke, hatte mich schon desöfteren gefragt was SDL ist. ^____^
-
Moderator
Falls du objektorientiert arbeitest kannst du auch Java benutzen, das bringt mit Java2D gleich eine Umgebung für 2D-Grafik mit. Andererseits scheinst du ja schon PB zu benutzen, also dürfte PB/OGL für dich wohl mehr Sinn machen als Java2D.
-
Ritter
Obwohl dir schon die Profis geantwortet haben...
..ne leichte Prog Sprache für 2D Spiele is eigentlich Blitz`n Basic, hab mal früher damit ein bissl rumgespielt...es lassen sich recht schnel kleine Spielchen erstellen (2D-Shooter sind recht einfach).
mfg Xelll
-
Veteran
habe mir nun einige themen angeschaut und denke werde pb in verbindung mit ogl nehmen.
@xelll mit dem prog kann ich mich nicht anfreunden. ^__^ Es heisste ausserdem BlitzBasic. ^__~
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln