Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C: rgb->hex SDL Miten?

Kray [21.08.2007 16:23:59]

#

Niin, miten saa SDL:ssä muutettua rgb arvon hexaksi? Siis muuttaisin rgb:n hexaksi SDL_FillRect():iä varten. rgb on on erikseen r, g ja b sekä avaruus a Uint8 muodossa. Miten teen?

Blaze [21.08.2007 16:44:41]

#

Bittisiirroilla:

Uint32 graphics_sdlcolor_to_uint32(SDL_Color *c) {
#if SDL_BYTEORDER == SDL_BIG_ENDIAN
        return (c->r << 24) + (c->g << 16) + (c->b << 8) + c->unused;
#else
        return (c->unused << 24) + (c->b << 16) + (c->g << 8) + c->r;
#endif
}

Deewiant [21.08.2007 18:53:02]

#

Tai oikeammin:

SDL_MapRGBA(surface-jota-fillrectataan -> format, väri.r, väri.g, väri.b, väri.a);

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta