Schnelle Grafik-Library für 2D-Spiel
-
Hi,
also, ich hab vor, in c++ ein kleines 2D-Spiel zu schreiben. Meine Frage ist, welche Grafik-Library ich benutzen soll. Ich hab hier im Forum SDL und Allegro gefunden. Dann wären da natürlich noch Open GL und Direct X.
Open GL und Direct X scheinen mir aber ungeeignet, da es ja nur 2D und wenn möglich plattformunabhängig sein soll.
Kann mir jemand eine Library empfehlen? Schön wäre natürlich zusätzlich Maus/Keyboard-Access, Sound und eventuell für die ferne Zukunft Netzwerkunterstützung.
Außerdem ist es mir eine gute Performance extrem wichtig, ich lerne lieber was komplizierteres als etwas, dass mir später dann zu langsam ist.
Des weiteren möchte ich keine "Zwischenlösung", sondern etwas, das so leistungsfähig ist, dass sich damit auch recht anspruchsvolle Strategiespiele (von der Art her wie Age of Empires) schreiben lassen.
Und es sollte auch in fünf Jahren noch Support dafür geben (Also nicht irgend eine kleine Library, deren Entwickler demnächst Pleite gehen und die dann nirgens mehr unterstützt wird).PS.: Ich hab bisher in C++ nur mit der Konsole Programmier.
PPS.: Ich bin mir bewußt, dass ein Spiel viel, viel Arbeit, sehr gute Programmierkenntnisse und ein größeres ein gutes Team und Jahre Zeit benötigt. Ich hab auch nicht vor, morgen Doom 27 1/2 fertig zu haben, aber wenn ich was lerne, dann solls auch was richtiges (vor allem gute performance!!) sein, womit ich später wirklich was anfangen kann. Ich scheue die Mühe und den Aufwand nicht. Also verschreit mich nicht, ich würde mich übernehmen und sollte erst mal c++ lernen oder so.
Danke schonmal für eure Hilfe!!!
Niko
-
naja, was die performance angeht, ist von SDL wohl eher abzuraten. du kannst allerdings die grafik mit OpenGL implementieren, und trotzdem die (sehr einfach zu benutzende) input/sound etc. funktionalität von SDL nutzen.
-
grafik in OpenGl wird wohl das beste sein
-
Wenn du reines 2D nutzen willst, würde ich das XGamesSDK (DDraw) benutzen oder zumindest mal anschauen. Im allgemeinen sollte allerdings heute 3D Beschleunigung schneller sein, da jeder Zocker mal mindestens 'ne Geforce hat.
Bye, TGGC (Der Held lebt!)
-
otze schrieb:
grafik in OpenGl wird wohl das beste sein
würde ich für 2d auch meinen.
rapso->greets();
-
TGGC schrieb:
Wenn du reines 2D nutzen willst, würde ich das XGamesSDK (DDraw) benutzen
sirniko schrieb:
da es ja [..] wenn möglich plattformunabhängig sein soll.
[...]
Und es sollte auch in fünf Jahren noch Support dafür geben (Also nicht irgend eine kleine Library, deren Entwickler demnächst Pleite gehen und die dann nirgens mehr unterstützt wird).Ich würde aus'm Bauch heraus auch SDL+OpenGL empfehlen.
-
eine lib die deinen anforderungen fast perfekt entspricht ist die hge. findest du hier: http://hge.relishgames.com/ . ist nicht frei, kann aber für nicht kommerzielle projekte frei verwendet werden. benutzt direct3d8 für die 2d darstellung, und ist so recht schnell. einfach zu programmieren und mit sound und input funktionen. gucks dir einfach mal an, sind gute tutorials dabei wo man das nötigste lernt.
Und es sollte auch in fünf Jahren noch Support dafür geben (Also nicht irgend eine kleine Library, deren Entwickler demnächst Pleite gehen und die dann nirgens mehr unterstützt wird).
das könnte ein problem werden. allerdings glaub ich auch kaum das man in 5 jahren noch support für aktuelle directx/opengl versionen bekommt.
cya
joni
-
openGL kann sehr wohl 2D arbeiten.
mit glOrtho (0,fensterbreite,fensterhöhe,0,-1,1) kannst du das Interne Koordinatensystem von OpenGL (im Matrixmodus GL_PROJECTION!?) festlegen und dann mittels vertex2i(posX, posY) pixelgenau Quads projezierne auf die du dann texturen legst..
Ist eigentlich nicht soo schwer..
-
joni[xingoo] schrieb:
...allerdings glaub ich auch kaum das man in 5 jahren noch support für aktuelle directx/opengl versionen bekommt.
Also wenn man davon ausgeht, dass openGL 1.1 schon über 5 Jahre existiert und immernoch unterstützt wird....
-
DocJunioR schrieb:
Also wenn man davon ausgeht, dass openGL 1.1 schon über 5 Jahre existiert und immernoch unterstützt wird....
Während Windows natürlich in 2 Jahren überall automatisch gelöscht wird.
Bye, TGGC (Der Held lebt!)
-
TGGC schrieb:
DocJunioR schrieb:
Also wenn man davon ausgeht, dass openGL 1.1 schon über 5 Jahre existiert und immernoch unterstützt wird....
Während Windows natürlich in 2 Jahren überall automatisch gelöscht wird.
Bye, TGGC (Der Held lebt!)
Du hast's erfasst
-
Und du meinst, das M$ so ein sinnvolles Feature wirklich implementiert hat ?
Naja, schön wär's ja...