von 24 zu 32 Bit?



  • Also,
    Es geht um eine DirectDraw-Oberfläche (beschrieben durch DDPIXELFORMAT). Einmal ist der dwRGBBitCount==32 und einmal ==16.
    Die Anordnung der einzelnen Farbteile an sich ist wie bei der Windowsfarbenqualität (rechte Maustaste->Eigenschaften->Einstellungen); kein Alphakanal oder so...

    Nun möchte ich in diese DirectDraw-Oberfläche mit 32 bzw. 16 Bits Farbwerte mit 24Bits reinpacken



  • ja, da ist dann der alphakanal noch dabei.

    die Farben sind so angeordnet: ARGB. brauchst also quasi nur richtig umzukopieren. steht aber auch in der DX doku

    //edit obwohl, es muss garkein alphakanal sein, da diese alphabytes auch ungenutzte sein können, dann ist das farbformat XRGB. ansonsten steht ganz genau in der doku wie die farbbitverteilung aussieht. spätestens ist es die, die du beim erstellen der DXschnittstelle angegeben hast.



  • @otze: Bei DirectDraw (Nicht DirectX); Alpha? Wo steht das denn?!

    Und wie wär' das denn, wenn ich 24Bit-Farbwerte in 16Bit-Farbwerte ändern soll?



  • Ürmel schrieb:

    @otze: Bei DirectDraw (Nicht DirectX); Alpha? Wo steht das denn?!

    DirectDraw ist ein Teil von DirectX...

    Und wie wär' das denn, wenn ich 24Bit-Farbwerte in 16Bit-Farbwerte ändern soll?

    du musst in die doku schauen, welches format gebraucht wird zb r5g6b5 und dann passend formatieren(die zahlen stehen für die bits pro farbanteil)



  • @Otze: DirectDraw ist der Vorgänger von DirectX???

    @Topic: Ich habe r5g6b5. Wie kriege ich da jetzt meinen 24Buit-Wert rein? (Ganz genau, ein wenig source-code würde mir helfen 😉 )



  • 1. du bist im falschen Forum
    2. wie man herausfindet wie man die Farben richtig angeordnet gibt es doch reichlich Tutorials



  • wer sagt, dass 32-Bit-Farben immer Alpha haben müssen? Es gibt Formate, bei denen beispielsweise je 10 Bits für eine Farbe belegt sind un 2 ungenutzt oder auch die Anzahl der Bits pro Frabe verschieden ist. Allerdings muss man vorher wissen, was man braucht. Übrigens passt das wohl besser nach Spiele- und Grafikprogrammierung
    geloescht

    EDIT: habe nicht alles gelesen >< Was ich gesagt habe war eh schon bekannt.
    Für jede Farbe eines Formats kann man sich eine Maske und ein Shift zurechtlegen. So kommt man an die Farbwerte als solche. Dann shiftet man analog (mit den Shift-Werten des anderen Formats) wieder zurück und baut sein neues Format zusammen.



  • @Vertex: Dann gib mal



  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Spiele-/Grafikprogrammierung verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • IMHO gibt's was in der FAQ.

    Bye, TGGC (Demo or Die)


Anmelden zum Antworten