Allegro versus SDL



  • Bisher habe ich nur mit SDL verwendet, bin jetzt jedoch auf Allegro gestoßen, was scheinbar die gleiche Funktionalität bietet.

    Deswegen meine Frage:
    Wer von euch kennt sich mit beidem aus und kann die Vor- und Nachteile von Allegro gegenüber SDL nennen?



  • Hallo. Ich würde da auch gerne ein paar Unterschiede bzw. Vor/Nachteile hören.
    Ich habe mich schon mit dem SDL beschäftigt und war davon recht angetan. Was ist besser zum Programmieren von 2D-Spielen?



  • Einfacher soll ja Allegro sein, aber SDL wird angeblich öfter im kommerziellen bereich eingesetzt. Ich habe allerdings auch noch nie mit Allegro gearbeitet und von SDL generrell wenig Ahnung.

    cu max



  • Ja, aber SDL ist auch echt einfach. Aber ist Allegro vom Umfang der Funktionalität besser als SDL. Wie siehts mit dem Stil der beiden aus? Ist allegro nicht in C gecodet?



  • allegro ist in C und Assembler gecodet und benutzt nicht wie SDL DX/GDI oder sonst was intern sondern allegro hat alles selbst in sich drin 😉

    Kurz: das Rad wurde neu erfunden 😃

    allegro an sich find ich gut, aber SDL etwas besser. Beides ist C



  • Stimmt nicht ganz Patrick, DX und GDI werden in Allegro in der Windows-Version gewrappt. Es bleibt einem dafür ja auch gar nichts anderes übrig. Einfach auf VESA-Niveau zu arbeiten, lässt das Betriebssystem ja nicht mehr zu.



  • Ich denke mal das ist beides ungefähr gleich. (Kenne eigentlich nur Allegro, und SDL halt vom Sehen her).
    Allegro verwendet aber soweit ich weiß unter Windows DDraw7 und DInput...
    Was eigentlich ganz nett an Allegro ist, ist dass man seine ganzen Bilder,Sounds etc in eine Datei packen kann und das dann bequem vom Quellcode laden kann. Ob das auch in SDL möglich ist, weiß ich nicht, aber ist im Prinzip sowieso nicht wichtig.



  • Na das kann man doch eigentlich immer, einfach irgendeine "Packer"-Lib benutzen. Für z.B. *.rar gibts IIRC eine freie.

    Bye, TGGC (Der Held ist zurück)



  • Hi,

    Patrick schrieb:

    allegro ist in C und Assembler gecodet und benutzt nicht wie SDL DX/GDI oder sonst was intern sondern allegro hat alles selbst in sich drin

    *lol*

    ChrisM



  • wieso lol? wenn man nur den Allegro code von Version 1 auseinander nimmt? 😉

    Und damit ich auch ma kontern darf 😃
    http://www.c-plusplus.net/forum/viewtopic.php?t=60028 *g*



  • Patrick schrieb:

    Und damit ich auch ma kontern darf 😃
    http://www.c-plusplus.net/forum/viewtopic.php?t=60028 *g*

    Was willst Du damit bezwecken?!? 😕



  • Sgt. Nukem
    vergiss es, stehste am besten zu



  • Du wirkst leicht verwirrt 😕

    Was hat der Link mit SDL oder Allegro zu tun?



  • Er wollte ChrisM dumm machen, hatte aber kein besseres Argument.

    Bye, TGGC (Der Held ist zurück)



  • Da ich sie noch gar nicht benutzt habe, gerade mal drei Fragen:
    Kann die SDL die 3D-Hardware nutzen? Das kann Allegro (noch) nicht.
    Ist Sound mit drin? Das kann Allegro - aber auch wieder nicht Hardwaredinge wie Spacials.
    Und Netzunterstützung? Das hat Allegro ebenfalls nicht drin.



  • hi,
    berichtigt mich wenn ich mich irre, aber ich glaube sdl kann das alles drei nich. ich hab mich och nich so viel mit sdl beschäftigt, aber ich glaube, wenn du sdl verwendest musst du viele sachen selbst coden (so z.b. hat es keine funktionen für pixel setzen, lienien zeichnen usw). das hat allegro halt alles. ansonsten würde ich sagen, ist beides gleich gut.
    mfg
    Black Sting



  • Naja man kann Opengl/sdl Kombiprogramme machen und damit auch 3d nutzen.
    Sound geht mit der wie ich finde recht guten Zusatzlibary SDL_Mixer auch.

    Ich mein SDL kann man eigntllich eh fast nur mit SDL_Mixer(Sound/Musik), SDL_gfx(Striche, Kreise usw malen, Bitmaps zoomen und drehen, Framerate control und ein paar andere Grafikfunktionen) und SDL_Image(andere Bildformate als bmp laden) als vollständig betrachten.
    Wenn man dazu jetzt noch irgendwas zum Schriften anzeigen installiert(SFont z.B.) , dann hat man alles was man für ein 2d Spiel braucht behaupte ich mal.

    Und wenn nicht, dann schaut man einmal auf http://www.libsdl.org/libraries.php und sucht sich was man braucht.


Log in to reply