PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Sparen Pixmaps wirklich Traffic?



schoppenhauer
06-09-2006, 23:20
Hallo.

Ich bin gerade dabei, mir ganz rudimentäre Kenntnisse der Xlib anzueignen. Eigentlich ist alles, was ich brauche, fenster öffnen, darauf schwarz und weiß die primitiven Grafikfunktionen anwenden, und auf Tastatureingaben reagieren, ggf. auch auf Maus, aber eher nicht.

Ich will dazu keine Widget-Library verwenden - jede solche Library wäre zu viel für das, was ich damit vorhabe.

Prinzipiell könnte ich das, was ich machen will, ggf. sogar jetzt schon (mal abgesehen von irgendwelchen Anfängerfehlern, die einem nicht sofort auffallen). Da ich aber auf dem Fenster, das ich bezeichnen will, sehr oft dieselbe kleine Schwarz-Weiß-Grafik zeichnen will (an unterschiedlichen stellen), und sich quasi die gesamte Grafik aus sehr wenigen monochromen "Sprites" zusammensetzt, die aber wiederum in sehr großer zahl und sehr häufig gezeichnet werden sollen, dachte ich mir, ob es sinnvoll wäre, Pixmaps zu benutzen.

Soweit ich momentan weiß, sind Pixmaps einfach nicht angezeigte kleine Grafiken, auf die man normal zeichnen kann, und die man dann auf richtige Fenster ausgeben lassen kann. Genau das ist es, was ich brauche.

Jedenfalls... Ich habe mich gefragt, ob es sich rein traffic-mäßig lohnt, Pixmaps zu verwenden. Wenn ich das richtig verstanden habe, werden die Grafikanweisungen an den X-Server gesendet, und wenn sie einmal dort angekommen sind, werden diese quasi von diesem gespeichert, und übertragen werden müssen nur noch Befehle der Form "zeichne das pixmap x an die stelle s", was traffic spart.

Ist dem so, oder sind die nur eine Vereinfachung der API, und es wird im Prinzip das gleiche gesendet?

anda_skoa
07-09-2006, 17:29
Es wird auf das Pixmap gezeichnet. Wenn du dann das Bild aus mehreren Pixmaps, zb aus einer Wiederholung der selben Grundsprites machst, dann brauchst du ansich nur mehr einen entsprechenden Bitblit Befehl schicken.

Das ist sehr schnell, ein bitBlt in Qt von einem QPixmap auf ein QWidget, was intern auch nichts anderes ist, ist praktisch nicht meßbar (<= 1ms) , auch nicht wenn der X Server über Netzwerk angesprochen wird.

XLib pur ansich ist schon eine andere Frage. Selbst ein Minimaltoolkit wäre vermutlich einfacher ohne wesentlichen Overhead.

Ciao,
_

schoppenhauer
07-09-2006, 19:45
XLib pur ansich ist schon eine andere Frage. Selbst ein Minimaltoolkit wäre vermutlich einfacher ohne wesentlichen Overhead.
Was? Das kapier ich jetzt nicht.