Praktischer Unterschied zwischen 24 und 32 Bit bei der Bildschirmanzeige



  • Wo liegt eigentlich der Unterschied, ob ich meine Bildschirmanzeige auf 24 oder auf 32 Bit stelle? Meine Grafikkarte unterstützt beides, doch wo genau ist nun der praktisch relevante Unterschied? Ich meine, bei 16 Bit hat man weniger Farben, aber bei 32 dürften es doch auch nicht mehr als bei 24 sein. (256 Farbstufen für je rot, grün und blau macht 256^3, was das gleiche ist wie 2^24, nämlich 16777216 Farben. Wo will 32 Bit da noch was anders machen?)



  • Die zusätzlichen 8 Bit sind ne Alphamaske, also für Transparenz und so, aber inwiefern der Monitor da was unterstützen soll kann ich dir auch nicht sagen.

    Im Prinzip hat mein Post also keinerlei Informationswert, sorry Leute!

    Ich schick jetzt trotzdem mal ab.



  • Die restlichen 8 Bit sind im Framebuffer (wenn wir 3D mal ausser acht lassen) für nix. Bloss macht 24 Bit 3 Byte, und 3 Byte pro Pixel ist doof.

    Bzw. anders rum (is einfacher): 4 Byte ist besser. Besser, weil 4 Byte ist ein "DWORD" (bzw. "32 Bit Word"), welches man auf nem PC oder jeder anderen 32 Bit Maschine mit einem Befehl lesen oder schreiben kann. Noch dazu liegt dann die Adresse jedes Pixels auf einer durch 4 Byte teilbaren Adresse, und bei einem 4 Byte breiten Zugriff ist das gut (geht schneller als wenn die Adresse nicht durch 4 teilbar ist).

    Wenn ein Pixel aber bloss 3 Byte "breit" ist, dann muss man entweder 3 einzelne Bytes lesen/schreiben, oder aber einen 4 Byte breiten Zugriff auf eine Adresse machen die dann nichtmehr immer durch 4 Byte teilbar ist. Letzteres ist aber doof wenn man schreiben will, da man dann 1 Byte des benachbarten Pixels mit überschreibt - man müsste also das "DWORD" (die 4 Byte) zuerst lesen, dann die 3 Byte die zu dem Pixel gehören welchen man schreiben will neu setzen (was auch nicht in einem Befehl geht), und das "DWORD" dann zurückschreiben. Alles in allem viel komplizierter als wenn man eben 32 Bit "breite" Pixel hat.

    Allerdings braucht man für 32 Bit auch 1/3 mehr Speicher auf der Grafikkarte, weil ja ein Byte pro Pixel "verschwendet" wird.

    Und bei 3D Geschichten kann man die 8 zusätzlichen Bit im Framebuffer (die man dann auch im Backbuffer hat, auf den man ja zeichnet) als Alphakanal oder Stencil Buffer ("Maske") verwenden -- oder man kann sie natürlich genauso brach liegen lassen.

    Moderne Grafikkarten unterstützen aber kaum noch 24 Bit Modi, da sie genügend Speicher haben um sich 32 Bit "leisten" zu können, man bei 3D Anwendungen die zusätzlichen 8 Bit normalerweise sowieso verwendet, und es daher quasi unnützer Aufwand wäre der Karte beizubringen einen 24 Bit Framebuffer darstellen bzw. da hinein rendern zu können. (Ok, dass die Karten es nichtmehr können ist eine Vermutung, die Treiber können es auf jeden Fall oft nichtmehr)

    Und nochwas: es gibt zumindest eine Grafikkarte im "Heimanwenderbereich" die bei einem 32 Bit Framebuffer 3x10 Bit verwenden kann statt 3x8, und das ist die Matrox Parhelia. Bringt natürlich nur was wenn man ein Panel hat welches 10 Bit verdaut (schweineteuer), oder nen Röhrenschirm (gibts kaum gute mehr, und die guten dies gibt sind auch schweineteuer 🙂 ).



  • Danke für die Analyse.
    Zusammenfassend kann man also sagen, daß 32 Bit besser sind, weil erstens der Zugriff "sauberer" und schneller funktioniert, da vier Byte pro Pixel einem DWORD entsprechen, der mit einem Mal verarbeitet werden kann, während mit drei Byte erstmal hin- und hergerechnet werden muß. Außerdem kann man das letzte Byte bei 3D-Anwendungen für bestimmte Dinge benutzen. (In so einem Fall würde die Anwendung im 24 Bit-Modus wohl gar nicht starten, was?) Der einzige Nachteil wäre, daß etwas mehr Speicher auf der Grafikkarte verbraucht wird.
    Hab ich das so richtig verstanden?



  • NES-Spieler schrieb:

    Danke für die Analyse.
    Zusammenfassend kann man also sagen, daß 32 Bit besser sind, weil erstens der Zugriff "sauberer" und schneller funktioniert, da vier Byte pro Pixel einem DWORD entsprechen, der mit einem Mal verarbeitet werden kann, während mit drei Byte erstmal hin- und hergerechnet werden muß. Außerdem kann man das letzte Byte bei 3D-Anwendungen für bestimmte Dinge benutzen. (In so einem Fall würde die Anwendung im 24 Bit-Modus wohl gar nicht starten, was?) Der einzige Nachteil wäre, daß etwas mehr Speicher auf der Grafikkarte verbraucht wird.
    Hab ich das so richtig verstanden?

    Wenn du darauf echt ne Antwort willst: Ja, denke schon! 🤡



  • Grundsätzlich ja 🙂



  • Wie hoch ist eigentlich die Farbtiefe beim Fernseher? Auch 24/32 Bit oder doch mehr?



  • Wikipedia, Farbübertragung.

    http://de.wikipedia.org/wiki/Farbübertragung


Anmelden zum Antworten