Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help


	      #include <allegro5/allegro.h>

	      typedef enum ALLEGRO_PIXEL_FORMAT

       Pixel formats.  Each pixel format specifies the exact size and bit lay-
       out of a	pixel in memory.  Components are specified from	high  bits  to
       low  bits,  so for example a fully opaque red pixel in ARGB_8888	format
       is 0xFFFF0000.


	      The pixel	format is independent of endianness.  That is, in  the
	      above example you	can always get the red component with

		     (pixel & 0x00ff0000) >> 16

	      But you can not rely on this code:

		     *(pixel + 2)

	      It  will	return the red component on little endian systems, but
	      the green	component on big endian	systems.

       Also note that Allegro's	naming is different from OpenGL	 naming	 here,
       where  a	 format	of GL_RGBA8 merely defines the component order and the
       exact layout including endianness treatment  is	specified  separately.
       Usually	GL_RGBA8  will correspond to ALLEGRO_PIXEL_ABGR_8888 though on
       little endian systems, so care must be taken (note the reversal of RGBA
       <-> ABGR).

       The only	exception to this ALLEGRO_PIXEL_FORMAT_ABGR_8888_LE which will
       always have the components as 4 bytes corresponding to red, green, blue
       and alpha, in this order, independent of	the endianness.

       o ALLEGRO_PIXEL_FORMAT_ANY  -  Let the driver choose a format.  This is
	 the default format at program start.

       o ALLEGRO_PIXEL_FORMAT_ANY_NO_ALPHA - Let the driver  choose  a	format
	 without alpha.

       o ALLEGRO_PIXEL_FORMAT_ANY_WITH_ALPHA  -	Let the	driver choose a	format
	 with alpha.

       o ALLEGRO_PIXEL_FORMAT_ANY_15_NO_ALPHA -	Let the	driver choose a	15 bit
	 format	without	alpha.

       o ALLEGRO_PIXEL_FORMAT_ANY_16_NO_ALPHA -	Let the	driver choose a	16 bit
	 format	without	alpha.

       o ALLEGRO_PIXEL_FORMAT_ANY_16_WITH_ALPHA	- Let the driver choose	 a  16
	 bit format with alpha.

       o ALLEGRO_PIXEL_FORMAT_ANY_24_NO_ALPHA -	Let the	driver choose a	24 bit
	 format	without	alpha.

       o ALLEGRO_PIXEL_FORMAT_ANY_32_NO_ALPHA -	Let the	driver choose a	32 bit
	 format	without	alpha.

       o ALLEGRO_PIXEL_FORMAT_ANY_32_WITH_ALPHA	 -  Let	the driver choose a 32
	 bit format with alpha.

       o ALLEGRO_PIXEL_FORMAT_ARGB_8888	- 32 bit

       o ALLEGRO_PIXEL_FORMAT_RGBA_8888	- 32 bit

       o ALLEGRO_PIXEL_FORMAT_ARGB_4444	- 16 bit

       o ALLEGRO_PIXEL_FORMAT_RGB_888 -	24 bit

       o ALLEGRO_PIXEL_FORMAT_RGB_565 -	16 bit

       o ALLEGRO_PIXEL_FORMAT_RGB_555 -	15 bit

       o ALLEGRO_PIXEL_FORMAT_RGBA_5551	- 16 bit

       o ALLEGRO_PIXEL_FORMAT_ARGB_1555	- 16 bit

       o ALLEGRO_PIXEL_FORMAT_ABGR_8888	- 32 bit

       o ALLEGRO_PIXEL_FORMAT_XBGR_8888	- 32 bit

       o ALLEGRO_PIXEL_FORMAT_BGR_888 -	24 bit

       o ALLEGRO_PIXEL_FORMAT_BGR_565 -	16 bit

       o ALLEGRO_PIXEL_FORMAT_BGR_555 -	15 bit

       o ALLEGRO_PIXEL_FORMAT_RGBX_8888	- 32 bit

       o ALLEGRO_PIXEL_FORMAT_XRGB_8888	- 32 bit

       o ALLEGRO_PIXEL_FORMAT_ABGR_F32 - 128 bit

       o ALLEGRO_PIXEL_FORMAT_ABGR_8888_LE - Like the version without _LE, but
	 the  component	 order	is  guaranteed	to be red, green, blue,	alpha.
	 This only makes a difference on big endian systems, on	little	endian
	 it is just an alias.

       o ALLEGRO_PIXEL_FORMAT_RGBA_4444	- 16bit

       al_set_new_bitmap_format(3), al_get_bitmap_format(3)

Allegro	reference manual			       ALLEGRO_PIXEL_FORMAT(3)


Want to link to this manual page? Use this URL:

home | help