Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

madjan06

Treue Seele

  • »madjan06« ist der Autor dieses Themas

Beiträge: 115

Wohnort: Kassel

Beruf: Azubi Fachinformatiker Anwendungsentwicklung

  • Private Nachricht senden

1

17.04.2009, 23:59

sdl vs sfml die 1000.

Ich weiß die meisten leute werden mich jetzt verluchen, ihre Tastatur an der Wand zerkloppen usw. und sich fragen warum den dieses thema zum 1000. mal. Naja ich bin heute außem Urlaub wieder gekommen und wollte mich im Urlaub eigentlich mit dem Buch von David Scherfgen beschäftigen, hab es aber doch auf die Sommerferien verschoben(mehr Zeit) und mich nochmal dem Buch von Heiko Kalista gewidmet, da ich bedingt durch Schule und jeder Menge Stress das meiste vergessen hatte. Ich hab mich in der letzten Woche viel mit dem "Beispiel Spiel" was in dem Buch erstellt wird mit Hilfe der SDL beschäftigt. Vor zwei Tage hatte ich dann genug herumexperimentiert und erweitert und durch ein Zufall eine Idee für ein eigenes Game. Ich also letzten beiden Tage überlegt wie es aufgebaut sein soll, was für Klassen benötigt werden und wo es Probleme geben könnte. Lange Rede kurzer Sinn, heute hier im forum bisschen nach sdl gesucht wegen problemen die ich haben könnte und gleich auf nen paar threads gestoßen wo gemeint wird die sfml sei wesentlich besser als die sdl.

Mein Problem is nu welche soll ich nehmen, weil ich bin gerade froh das ich die sdl einigermaßen begriffen habe und dann gleich wieder noch was neues oje. Allerdings hab ich auch nen paar mankos an der sdl, sprich text ausgabe, sound usw. für was man ja noch erweiterungen bräuchte.
Ein weiteres Problem, Montag geht die Schule wieder los und ich sollte meine Noten mal etwas aufpolieren, ich wollt dann nur so nebenbei etwas an dem game rumschrauben, wenn ich jetzt allerdings mich noch in ne neue engines reinarbeiten muss, die schätze vom umfang her etwas größer is wird mir die zeit fehlen um endlich mal nen game auf die beine zu kriegen.

also was könnt ihr mir raten, welche eignet sich langfristig ehr und ist die sfml aufwendiger zu lernen als die sdl??

PS: Wahrscheinlich mach ich mir wieder zuviel gedanken über alles :?
Mein Monto:
Nimm das Leben so wie es kommt^^

n0_0ne

1x Contest-Sieger

  • Private Nachricht senden

2

18.04.2009, 00:47

Also um ehrlich zu sein, habe ich mich nicht besonders lange mit der SDL beschäftigt... weshalb ich nicht genau sagen kann, ob sie möglicherweise doch besser ist als die SFML... weil irgendwie scheint sie doch noch etwas populärer zu sein...
Nichtsdestotrotz... mir hat die SDL nicht so gefallen... man brauchte für alles eine neue Zusatzbibliothek, hat keine native OpenGL verwendung usw.
Ich bin auch durch dieses Forum hier auf die SFML gestoßen und habe sie gleich mal getestet... IMHO ist die SFML um einiges besser
1. Verwendet sie von Anfang an, ohne, dass du irgendwas machen musst, OpenGL, was einen großen Performanceschub bringt...
2. Finde ich, dass sie sogar noch einfacher als die SDL zu verwenden ist. Sie ist wirklich sehr intuitiv zu verwenden, und du wirst nicht besonders lange brauchen, dich da einzuarbeiten...
3. Ist der Feature-Umfang der SFML mindestens genau so groß wie der der SDL+Zusatz, sie unterstützt Threads, und wichtige Netzwerksachen wie TCP/UDP, HTTP, FTP etc, natürlich das Rendern von Sprites, auch mit Colorkeys, Rotation und den ganzen Späßen, Sound, Text (also TTFs laden usw.), einige Hilfsfunktionen, wie einen Randomizer (von, bis), ne Klasse für Primitive, im Wiki findest du auch eine Kollisionsklasse mit allen Möglichen Kollisionstests (auch pixelgenaue...) uswusf.

Also ich kann die SFML als Lib absolut empfehlen... einziger Nachteil ist wohl die Popularität... die Community dahinter ist meiner Meinung nach noch etwas klein :D aber wenn sie jeder hier empfiehlt... und das wird wohl nicht nur hier so sein, wird sich das auch bald ändern ^^

Lerikson

Alter Hase

Beiträge: 412

Wohnort: nördlich von Hamburg

Beruf: Schüler

  • Private Nachricht senden

3

18.04.2009, 04:48

lange Rede kurzer Sinn:
http://www.sfml-dev.org/ (Tutorials, Forum, Features)
http://sfml.boxbox.org/ ( Deutsche Seite, Forum)
Errare est humanum. -Windows ist menschlich ;-)

n0_0ne

1x Contest-Sieger

  • Private Nachricht senden

4

18.04.2009, 09:58

Ist das jetzt eine versteckte Empfehlung die SFML zu benutzen, oder was?
Weil ich denke diese Links hätte er auch noch selbst gefunden :P

K-Bal

Alter Hase

Beiträge: 703

Wohnort: Aachen

Beruf: Student (Elektrotechnik, Technische Informatik)

  • Private Nachricht senden

5

18.04.2009, 10:23

Ich habe auch nicht so viel mit SDL gemacht aber mir sind bisher zwei Dinge aufgefallen:

1. SDL ist ein bisschen mehr low-level als SFML
2. SDL ist sehr C-mäßig, SFML hat ein objektorientiertes Design

Ob man das jetzt als Vorteile oder Nachteile wertet hängt von der jeweiligen Situation und Person ab! Ich benutze jedenfalls nur SFML.

Gruß Marius

madjan06

Treue Seele

  • »madjan06« ist der Autor dieses Themas

Beiträge: 115

Wohnort: Kassel

Beruf: Azubi Fachinformatiker Anwendungsentwicklung

  • Private Nachricht senden

6

18.04.2009, 12:34

also, wenn ich das hier jetzt richtig interpretiere ratet ihr mir zur sfml, naja mittlerweile bin ich auch etwas überzeugter davon, da ich mich gestern nochmal etwas intensiver damit beschäftigt habe und sie vom funktionsumfang wesentlich mehr bietet als die sdl und von den funktionen her auch ähnlich ist wie sdl, wird zwar doch ne kleine umgewöhnung und ich muss erstmal durchblicken und mein game kann ich sowieso zurückstellen, da ich im mom mehr stress wegen schule führerschein usw. bekomme als sonst was, theoretisch könnt ich gerade mal alles hinschmeißen :cry:

sorry musst mal gerade etwas frust abwerfen, mal gucken was ich mache^^
Mein Monto:
Nimm das Leben so wie es kommt^^

7

18.04.2009, 12:42

Ich persönlich würde dir auch die SFML empfehlen, aus den schon genannten Gründen. ABER wenn du jetzt gerade erst "die SDL einigermaßen begriffen" hast, und du erst was damit machen willst, dann mach das bloß.

Du wirst immer immer immer wieder mal während der Entwicklung, oder auch direkt davor das Gefühl haben, dass es besser wäre, erst was anderes zu lernen und es dann gleich damit "richtig" bzw. besser zu machen. Aber wenn man das ständig tut, kommt man nur vom Hundertsten ins Tausendste und wird immer frustrierter, weil man niemals irgendwas fertigbekommt. Die SDL ist auch nicht schlecht, du hast ein Buch darüber gelesen, sie wird viel (wahrscheinlich noch deutlich mehr als die SFML) benutzt, sogar mehrere kommerzielle Titel wurden damit gemacht. Wahrscheinlich wird dir dann später wenn du doch mal die SFML anschauen willst, dir dies sogar dann sehr viel leichter fallen als ohne das Wissen über die SDL. Also hau rein!

Mein Rat ;)

Anonymous

unregistriert

8

18.04.2009, 12:59

SFML hat ein sehr gutes und aber nicht sehr durchdachtes Konzept, was man in den dortigen Forenbeiträgen oft ließt. Weshalb bald SFML2 kommen wird wo gravierende Änderungen vorgenommen werden. Weiteres Problem sind die hohen Abhängigkeiten zu anderen Libs auf die SFML aufbaut. Wenn du die nicht mitaktualisierst und dort mal ein Fehler drin ist, ist der Fehler automatisch auch in SFML und in deinem Programm. Das Thema Lizenzen lass ich nun mal außen vor.

SDL ist, da es aus der *nix-Gegend kommt natürlich C. Dafür bietet es jedoch eine verdammt hohe flexibilität und eine relativ höhere Performance (wenn man OpenGL nimmt, wie bei SFML). Da es hier (wie bei allen C-Programmen) eine regelrechte Zeigerorgie gibt, ist die Anwendung auch recht Schwerer. Aber gerade durch die Möglichkeit des Low Level Zugriffs (z. B. Bitmasken-Änderungen usw, die mir in SFML an diversen stellen Fehlen) hat sich SDL sehr bewährt.

Wenn du dich in SDL bereits eingearbeitet hast, dann bleib dort. Es ist eine ausgereifte Technologie an der sich so schnell nichts mehr gravierendes Ändern wird in nächster Zeit und der Kerl der es entwickelt hat, hat auch viel Ahnung wie man an seiner Laufbahn erkennen kann. :)

madjan06

Treue Seele

  • »madjan06« ist der Autor dieses Themas

Beiträge: 115

Wohnort: Kassel

Beruf: Azubi Fachinformatiker Anwendungsentwicklung

  • Private Nachricht senden

9

18.04.2009, 13:27

so ich bin nun zu dem schluss gekommen, ich nehm wie vorgehabt die sdl, ok zwei post vorher wars noch die sfml, aber meine beiden vorredner ham mich doch etwas mehr sagen wir mal überzeugt, aber das jetzt nicht nur der ausschlaggebende punkt, mir ist gerade nochwas klar geworden, wenn ich die sfml nehme stellt das für mich persönlich keine herrausforderung da: Warum?? ganz einfach, die sfml bietet eben viele möglichkeiten, textausgabe, network engine, man hat also alles um ein game zu erstellen. Die SDL wiederum hat vielleicht nicht soviele Möglichkeiten wie die sfml, aber mir ist gerade bewusst geworden das gerade die sachen die sie nich kann eine herrausforderung darstellen und diese zu lösen. Ein zweiter Punkt, ist die Zeit, bei der sfml würde es mich bestimmt ne woche üben, ausprobieren usw. kosten. Da ich aber vielleicht maximal nur noch 1h pro tag zur verfügung hierfür habe und ich die grundlagen der sdl shon begriffen habe, ist sie meiner persönlichen Meinung nach doch die bessere Wahl, mal sehen vielleicht siehts in 2 3 Monaten schon wieder anders aus und ich entscheide mich dann nochmall neu, mal sehen.

Auf jedenfall erstmal danke, mir ist durch eure Posts einiges klarer geworden.
Mein Monto:
Nimm das Leben so wie es kommt^^

Das Gurke

Community-Fossil

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

10

18.04.2009, 14:25

Zitat von »"unsigned long"«

SDL ist, da es aus der *nix-Gegend kommt natürlich C. Dafür bietet es jedoch eine verdammt hohe flexibilität und eine relativ höhere Performance (wenn man OpenGL nimmt, wie bei SFML).
Dann arbeitet man aber nicht mit den SDL, sondern mit den OpenGL Zeichenfunktionen oder täusche ich mich da gewaltig?

Werbeanzeige