Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

15.10.2003, 19:35

Farbwerte zurückgeben

Hallo ich habe eine Funktion aus dem Buch benutzt um die einzelnen Farbwerte zurückzugeben(16Bit).

Quellcode

1
2
3
            int rw=((hmap[0][3] >> 11) & 0x0000001F) << 3;
            int gw=((hmap[0][3] >> 5) & 0x0000003F)  << 2;;
            int bw=( hmap[0][3] & 0x0000001F) << 3;


Ich erhalte immer falsche Werte. Z.B statt 0,64,128 erhalte ich 0,60,120 woran kann das liegen. Ist die Funktion falsch?

2

22.10.2003, 17:26

:huhu:

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

3

22.10.2003, 22:28

Nein, das ist schon richtig so: bei 16 Bits ist die Genauigkeit nicht so groß wie bei 32 Bits, von daher passt das schon. Bei 32 Bits gibt es für jeden Farbkanal 2^8 = 256 verschiedene Werte. Bei 16 Bits (R5G5B5) gibt es aber für jeden Farbkanal nur 2^5 = 32 verschiedene Werte.

Werbeanzeige