GDI-Zeichenfunktionen der Windows-API zu langsam



  • hi

    Wie kann man Grafik schnell ausgeben? Ich meine, wie machen das kommerzielle Grafikprogramme? Es schaut nicht so aus, als würden diese DirectX oder OpenGL verwenden. Und die normalen GDI-Funktionen der Windows-API sind doch viel zu langsam. Ich habe einen einfachen Grafik-Editor progammiert, wo man einen Bildausschnitt markieren und verschieben kann, und sogar das ruckelt schon ziemlich. Wenn ich da an PhotoShop denke, wo umfangreiche Effekte extrem schnell berechnet und gezeichnet werden, dann kann das doch unmöglich mit den GDI-Funktionen gemacht werden.

    Irgendwelche Ideen?

    Danke im Voraus!

    cu



  • für Photoshop wird höchstwahrscheinlich eine von Adobe entwickelte lib verwendet. GDI kommt natürlich nicht in Frage 🙄 😉



  • War das ironisch gemeint?



  • nö, warum? 😕



  • Klar ist das alles mit der GDI machbar - man muss sie nur schlau einsetzen, denn ich glaube kaum, dass Photoshop das Erstlingswerk eines Hobby-Proggers ist 😉

    Und dann noch als kleine Hilfe zu deinem Problem - ScrollWindow(Ex) könnte ganz interessant sein ...

    M.T.



  • Eine von Adobe entwickelte Lib, sowas in der Art hab ich mir schon gedacht. Nur frage ich mich, wie diese Lib dann schließlich an die Hardware kommt. Setzt diese direkt auf die Treiber auf?

    mfg



  • Also ich finde das GDI eigentlich recht fix. (Achtung: Der Speed zwischen Debug und Release-Versionen können verdammt unterschiedlich sein!)
    Die DrawDib-Funktionen sind sogar nochmal schneller als Zeichnen via GDI...
    Ich würde erstmal gucken, ob du die GDI-Funktionen nicht irgendwo ineffizient benutzt (z.B. ständig ne Bitmap neuladen, die eigentlich ständig gebraucht wird und besser im Speicher gelassen werden sollte...)



  • Man kann doch sinnvollerweise direkt im Speicher arbeiten... 🙄

    Genau das passiert auch bei Professioneller Bildbearbbeitungs-Software.

    GDI brauchst du dann nur noch zum blitten.


Anmelden zum Antworten