SDL to Allegro Wrapper: wie schwierig?



  • hi!

    ich wollte als kleines projekt einen wrapper proggen, der SDL-calls in Allegro-calls übersetzt. das heisst einfach eine .c-datei, die man ganz einfach in die haupt-.c-datei des projekts inkludiert, und die dann im endeffekt für jeden SDL-call eine gleichnamige funktion bereithält, welche wiederum einen Allegro-call enthält.

    frage 1: ist das technisch so realisierbar, wie beschrieben?

    frage 2: gibt es SDL-calls/-funktionen zu denen es keinen passenden equivalent in Allegro gibt? (würde die arbeit erschweren, liesse sich aber mit etwas arbeit eine crossplatform-lösung implementieren...)

    das prob ist, dass ich mich mit beiden libs noch nicht allzu viel beschäftigt habe.

    TIA für jeden vorschlag/kommentar.

    ---loki



  • uh, Code-Dateien inkludiert man nicht, nur Header!

    Aber wenn ich mich richtig an Allegro erinnere, waren die Konzepte verschieden von der SDL und Allegro.

    Bei der SDL bearbeitet man ja ein im Speicher liegendes Array von Pixeln, während man bei Allegro eher Objekt Orientiert ein Handle mit Funktionen zum zeichnen von Grafik Primitiven bearbeitet.

    Ich denke nicht, dass es nicht möglich ist, SDL-to-Allegro zu schreiben, nur wird der Emulationsaufwand wahrscheinlich schwieriger und du kannst keinen Thin-Layer schreiben.



  • ok. dann verwerfe ich diese idee mal lieber...

    aber ich würde gerne mal wissen, wie das mit header-files funktioniert.
    bis jetzt habe ich IMHO folgendes kapiert:

    in meiner haupt-.c-datei habe ich das hauptprogramm, darin z.b. einen funktions-call zu einer funktion die wiederum in einer includierten .h-datei deklariert wird. und definiert wird sie in einer auch externen .c-datei.
    aber wie bekomme ich die externe .c-datei ins projekt? sucht der compiler automatisch eine .c/.cpp-datei mit gleichem namen wie die .h-datei? oder muss ich die .c-datei extra per hand kompilieren und dazulinken?

    danke im voraus!



  • oder muss ich die .c-datei extra per hand kompilieren und dazulinken?

    jo


Anmelden zum Antworten