wxBitmap effiziente transparenz



  • hallo,

    ich muss ein wxBitmap mit transparentem hintergrund maximal 40 mal pro sekunde zeichnen. die einzige mir bisher bekannte möglichkeit, die transparenz nach jedem zeichnen aktuell zu halten, ist jedesmal

    myBtmp->SetMask(new wxMask(myBtmp, backgroundColor))
    

    zu machen. das ist aber zu ineffizient bei 800x800 bitmaps.

    hat jemand eine idee, wie es besser gehen könnte?

    meine ideen bisher:
    a) ein bitmap, das bei der initialisierung schon transparent ist und jedes weitere malen drauf dann nicht mehr transparent. geht das?
    b) kann man irgendwie die vorhandene maske in dem wxBitmap aktualisieren statt immer eine neue zu erstellen? vielleicht ist ja das "new wxMask" zu ineffizient?
    c) ich male mit max 8 farben auf die bitmap. vielleicht für jede farbe eine fläche erstellen, nur immer die wxMask zeichnen und dann die 8 einzelnen bitmaps auf eine zusammenkopieren?

    danke für eure ideen!


Anmelden zum Antworten