SYNOPSIS
-
#include <allegro5/allegro.h>
void al_set_new_bitmap_flags(int flags)
DESCRIPTION
Sets the flags to use for newly created bitmaps. Valid flags are:
- ALLEGRO_MEMORY_BITMAP
-
Create a bitmap residing in system memory.
Operations on, and with, memory bitmaps will not be hardware
accelerated.
However, direct pixel access can be relatively quick compared to video
bitmaps, which depend on the display driver in use.
-
Note: Allegro's software rendering routines are currently very unoptimised.
-
- ALLEGRO_VIDEO_BITMAP
-
Creates a bitmap that resides in the video card memory.
These types of bitmaps receive the greatest benefit from hardware
acceleration.
-
Note: Creating a video bitmap will fail if there is no current display or the current display driver cannot create the bitmap. The latter will happen if for example the format or dimensions are not supported.
Note: Bitmaps created with this flag will be converted to memory bitmaps when the last display is destroyed. In most cases it is therefore easier to use the ALLEGRO_CONVERT_BITMAP flag instead.
-
- ALLEGRO_CONVERT_BITMAP
-
This is the default.
It will try to create a video bitmap and if that fails create a memory
bitmap.
Bitmaps created with this flag when there is no active display will be
converted to video bitmaps next time a display is created.
They also will remain video bitmaps if the last display is destroyed and
then another is created again.
Since 5.1.0.
-
Note: You can combine this flag with ALLEGRO_MEMORY_BITMAP or ALLEGRO_VIDEO_BITMAP to force the initial type (and fail in the latter case if no video bitmap can be created) - but usually neither of those combinations is very useful.
You can use the display option ALLEGRO_AUTO_CONVERT_BITMAPS to control which displays will try to auto-convert bitmaps.
-
- ALLEGRO_FORCE_LOCKING
-
Does nothing since 5.1.8.
Kept for backwards compatibility only.
- ALLEGRO_NO_PRESERVE_TEXTURE
-
Normally, every effort is taken to preserve the contents of bitmaps,
since some platforms may forget them.
This can take extra processing time.
If you know it doesn't matter if a bitmap keeps its pixel data, for
example when it's a temporary buffer, use this flag to tell Allegro
not to attempt to preserve its contents.
- ALLEGRO_ALPHA_TEST
-
This is a driver hint only.
It tells the graphics driver to do alpha testing instead of alpha
blending on bitmaps created with this flag.
Alpha testing is usually faster and preferred if your bitmaps have only
one level of alpha (0).
This flag is currently not widely implemented (i.e., only for memory
bitmaps).
- ALLEGRO_MIN_LINEAR
-
When drawing a scaled down version of the bitmap, use linear filtering.
This usually looks better.
You can also combine it with the MIPMAP flag for even better quality.
- ALLEGRO_MAG_LINEAR
-
When drawing a magnified version of a bitmap, use linear filtering.
This will cause the picture to get blurry instead of creating a big
rectangle for each pixel.
It depends on how you want things to look like whether you want to use
this or not.
- ALLEGRO_MIPMAP
-
This can only be used for bitmaps whose width and height is a power of
two.
In that case, it will generate mipmaps and use them when drawing scaled
down versions.
For example if the bitmap is 64x64, then extra bitmaps of sizes 32x32,
16x16, 8x8, 4x4, 2x2 and 1x1 will be created always containing a scaled
down version of the original.