Refactor bitmap, add extra accessor for color data
This commit is contained in:
@@ -27,15 +27,27 @@ Currently, the following pixel formats are supported:
|
|||||||
|
|
||||||
=item B<BH_BITMAP_INDEX1>
|
=item B<BH_BITMAP_INDEX1>
|
||||||
|
|
||||||
1-bit indexed/paletted
|
1-bit indexed/paletted (bits are packed with most significant bit first)
|
||||||
|
|
||||||
|
=item B<BH_BITMAP_INDEX1_LSB>
|
||||||
|
|
||||||
|
1-bit index/paletted with (bits are packed with least significant bit first)
|
||||||
|
|
||||||
=item B<BH_BITMAP_INDEX2>
|
=item B<BH_BITMAP_INDEX2>
|
||||||
|
|
||||||
2-bit indexed/paletted
|
2-bit indexed/paletted (bits are packed with most significant bit first)
|
||||||
|
|
||||||
|
=item B<BH_BITMAP_INDEX2_LSB>
|
||||||
|
|
||||||
|
2-bit indexed/paletted (bits are packed with least significant bit first)
|
||||||
|
|
||||||
=item B<BH_BITMAP_INDEX4>
|
=item B<BH_BITMAP_INDEX4>
|
||||||
|
|
||||||
4-bit indexed/paletted
|
4-bit indexed/paletted (bits are packed with most significant bit first)
|
||||||
|
|
||||||
|
=item B<BH_BITMAP_INDEX4_LSB>
|
||||||
|
|
||||||
|
4-bit indexed/paletted (bits are packed with least significant bit first)
|
||||||
|
|
||||||
=item B<BH_BITMAP_INDEX8>
|
=item B<BH_BITMAP_INDEX8>
|
||||||
|
|
||||||
@@ -58,27 +70,27 @@ Currently, the following pixel formats are supported:
|
|||||||
64-bit RGB with alpha represented in uint64_t value. The layout is:
|
64-bit RGB with alpha represented in uint64_t value. The layout is:
|
||||||
0xAAAARRRRGGGGBBBB
|
0xAAAARRRRGGGGBBBB
|
||||||
|
|
||||||
=item B<BH_BITMAP_RGB565>
|
=item B<BH_BITMAP_RGB565>, B<BH_BITMAP_BGR565>
|
||||||
|
|
||||||
16-bit RGB
|
16-bit RGB
|
||||||
|
|
||||||
=item B<BH_BITMAP_RGB888>
|
=item B<BH_BITMAP_RGB888>, B<BH_BITMAP_BGR888>
|
||||||
|
|
||||||
24-bit RGB
|
24-bit RGB
|
||||||
|
|
||||||
=item B<BH_BITMAP_RGBA8888>
|
=item B<BH_BITMAP_RGBA8888>, B<BH_BITMAP_BGRA8888>, B<BH_BITMAP_ARGB8888>, B<BH_BITMAP_ABGR8888>
|
||||||
|
|
||||||
32-bit RGB with alpha
|
32-bit RGB with alpha
|
||||||
|
|
||||||
=item B<BH_BITMAP_RGB161616>
|
=item B<BH_BITMAP_RGB161616>, B<BH_BITMAP_BGR161616>
|
||||||
|
|
||||||
48-bit RGB
|
48-bit RGB
|
||||||
|
|
||||||
=item B<BH_BITMAP_RGBA16161616>
|
=item B<BH_BITMAP_RGBA16161616>, B<BH_BITMAP_BGRA16161616>, B<BH_BITMAP_ARGB16161616>, B<BH_BITMAP_ABGR16161616>
|
||||||
|
|
||||||
64-bit RGB with alpha
|
64-bit RGB with alpha
|
||||||
|
|
||||||
=item B<BH_BITMAP_RGBA1010102>
|
=item B<BH_BITMAP_RGBA1010102>, B<BH_BITMAP_BGRA1010102>, B<BH_BITMAP_ARGB1010102>, B<BH_BITMAP_ABGR1010102>
|
||||||
|
|
||||||
32-bit RGB with alpha
|
32-bit RGB with alpha
|
||||||
|
|
||||||
@@ -86,17 +98,6 @@ Currently, the following pixel formats are supported:
|
|||||||
|
|
||||||
All pixel formats use the current machine endianness.
|
All pixel formats use the current machine endianness.
|
||||||
|
|
||||||
The flag I<BH_BITMAP_BGR> can be used to change the order of the color channels
|
|
||||||
(RGB -> BGR). The flag has no effect on the following pixel formats:
|
|
||||||
I<BH_BITMAP_INDEX1>, I<BH_BITMAP_INDEX2>, I<BH_BITMAP_INDEX4>,
|
|
||||||
I<BH_BITMAP_INDEX8>, I<BH_BITMAP_GRAY8>, I<BH_BITMAP_GRAY16>,
|
|
||||||
I<BH_BITMAP_RGBA32> and I<BH_BITMAP_RGBA64>.
|
|
||||||
|
|
||||||
The flag I<BH_BITMAP_LSB> can be used to change the start of the bit order for
|
|
||||||
indexed images. This flag only affects the following pixel formats:
|
|
||||||
I<BH_BITMAP_INDEX1>, I<BH_BITMAP_INDEX2>, I<BH_BITMAP_INDEX4> and
|
|
||||||
I<BH_BITMAP_INDEX8>.
|
|
||||||
|
|
||||||
The flag I<BH_BITMAP_NOALPHA> can be used to indicate that the alpha channel is
|
The flag I<BH_BITMAP_NOALPHA> can be used to indicate that the alpha channel is
|
||||||
not used and should always be set to the maximum value (255 for 8-bit and 65535
|
not used and should always be set to the maximum value (255 for 8-bit and 65535
|
||||||
for 16-bit).
|
for 16-bit).
|
||||||
@@ -104,9 +105,6 @@ for 16-bit).
|
|||||||
The flag I<BH_BITMAP_PREMULT> can be used to indicate that color values are in
|
The flag I<BH_BITMAP_PREMULT> can be used to indicate that color values are in
|
||||||
premultiplied form.
|
premultiplied form.
|
||||||
|
|
||||||
The color palette is assumed to contain exactly 256 colors and is stored in the
|
|
||||||
I<BH_BITMAP_RGBA32> pixel format.
|
|
||||||
|
|
||||||
|
|
||||||
=head1 API CALLS
|
=head1 API CALLS
|
||||||
|
|
||||||
@@ -118,7 +116,7 @@ I<BH_BITMAP_RGBA32> pixel format.
|
|||||||
int format,
|
int format,
|
||||||
int flags,
|
int flags,
|
||||||
void *data,
|
void *data,
|
||||||
void *palette);
|
BH_Color *palette);
|
||||||
|
|
||||||
Creates the bitmap with the specified I<width>, I<height> and pixel I<format>.
|
Creates the bitmap with the specified I<width>, I<height> and pixel I<format>.
|
||||||
|
|
||||||
@@ -303,10 +301,10 @@ Bitmap doesn't own palette data
|
|||||||
|
|
||||||
void BH_BitmapConvertRow(void *src,
|
void BH_BitmapConvertRow(void *src,
|
||||||
int srcFormat,
|
int srcFormat,
|
||||||
void *srcPalette,
|
const BH_Color *srcPalette,
|
||||||
void *dest,
|
void *dest,
|
||||||
int destFormat,
|
int destFormat,
|
||||||
void *destPalette,
|
const BH_Color *destPalette,
|
||||||
size_t count);
|
size_t count);
|
||||||
|
|
||||||
Converts a row of source data from one pixel format to another pixel format.
|
Converts a row of source data from one pixel format to another pixel format.
|
||||||
|
|||||||
@@ -27,15 +27,27 @@ BH_Bitmap - доступ к растровому изображению/карт
|
|||||||
|
|
||||||
=item B<BH_BITMAP_INDEX1>
|
=item B<BH_BITMAP_INDEX1>
|
||||||
|
|
||||||
1-разрядный индексированный/палитрированный
|
1-разрядный индексированный/палитрированный (биты упаковываются начиная с самого старшего бита)
|
||||||
|
|
||||||
|
=item B<BH_BITMAP_INDEX1_LSB>
|
||||||
|
|
||||||
|
1-разрядный индексированный/палитрированный (биты упаковываются начиная с самого младшего бита)
|
||||||
|
|
||||||
=item B<BH_BITMAP_INDEX2>
|
=item B<BH_BITMAP_INDEX2>
|
||||||
|
|
||||||
2-разрядный индексированный/палитрированный
|
2-разрядный индексированный/палитрированный (биты упаковываются начиная с самого старшего бита)
|
||||||
|
|
||||||
|
=item B<BH_BITMAP_INDEX2_LSB>
|
||||||
|
|
||||||
|
2-разрядный индексированный/палитрированный (биты упаковываются начиная с самого младшего бита)
|
||||||
|
|
||||||
=item B<BH_BITMAP_INDEX4>
|
=item B<BH_BITMAP_INDEX4>
|
||||||
|
|
||||||
4-разрядный индексированный/палитрированный
|
4-разрядный индексированный/палитрированный (биты упаковываются начиная с самого старшего бита)
|
||||||
|
|
||||||
|
=item B<BH_BITMAP_INDEX4_LSB>
|
||||||
|
|
||||||
|
4-разрядный индексированный/палитрированный (биты упаковываются начиная с самого младшего бита)
|
||||||
|
|
||||||
=item B<BH_BITMAP_INDEX8>
|
=item B<BH_BITMAP_INDEX8>
|
||||||
|
|
||||||
@@ -59,27 +71,27 @@ BH_Bitmap - доступ к растровому изображению/карт
|
|||||||
64-разрядный RGB с прозрачностью, представленный в виде uint64_t.
|
64-разрядный RGB с прозрачностью, представленный в виде uint64_t.
|
||||||
Формат: 0xAAAARRRRGGGGBBBB
|
Формат: 0xAAAARRRRGGGGBBBB
|
||||||
|
|
||||||
=item B<BH_BITMAP_RGB565>
|
=item B<BH_BITMAP_RGB565>, B<BH_BITMAP_BGR565>
|
||||||
|
|
||||||
16-разрядный RGB
|
16-разрядный RGB
|
||||||
|
|
||||||
=item B<BH_BITMAP_RGB888>
|
=item B<BH_BITMAP_RGB888>, B<BH_BITMAP_BGR888>
|
||||||
|
|
||||||
24-разрядный RGB
|
24-разрядный RGB
|
||||||
|
|
||||||
=item B<BH_BITMAP_RGBA8888>
|
=item B<BH_BITMAP_RGBA8888>, B<BH_BITMAP_BGRA8888>, B<BH_BITMAP_ARGB8888>, B<BH_BITMAP_ABGR8888>
|
||||||
|
|
||||||
32-разрядный RGB с прозрачностью
|
32-разрядный RGB с прозрачностью
|
||||||
|
|
||||||
=item B<BH_BITMAP_RGB161616>
|
=item B<BH_BITMAP_RGB161616>, B<BH_BITMAP_BGR161616>
|
||||||
|
|
||||||
48-разрядный RGB
|
48-разрядный RGB
|
||||||
|
|
||||||
=item B<BH_BITMAP_RGBA16161616>
|
=item B<BH_BITMAP_RGBA16161616>, B<BH_BITMAP_BGRA16161616>, B<BH_BITMAP_ARGB16161616>, B<BH_BITMAP_ABGR16161616>
|
||||||
|
|
||||||
64-разрядный RGB с прозрачностью
|
64-разрядный RGB с прозрачностью
|
||||||
|
|
||||||
=item B<BH_BITMAP_RGBA1010102>
|
=item B<BH_BITMAP_RGBA1010102>, B<BH_BITMAP_BGRA1010102>, B<BH_BITMAP_ARGB1010102>, B<BH_BITMAP_ABGR1010102>
|
||||||
|
|
||||||
32-разрядный RGB с прозрачностью
|
32-разрядный RGB с прозрачностью
|
||||||
|
|
||||||
@@ -87,17 +99,6 @@ BH_Bitmap - доступ к растровому изображению/карт
|
|||||||
|
|
||||||
Во всех форматах пикселей используется нативный порядок байт.
|
Во всех форматах пикселей используется нативный порядок байт.
|
||||||
|
|
||||||
Флаг I<BH_BITMAP_BGR> может использоваться для изменения порядка цветовых
|
|
||||||
каналов (RGB -> BGR). Этот флаг не влияет на следующие пиксельные форматы:
|
|
||||||
I<BH_BITMAP_INDEX1>, I<BH_BITMAP_INDEX2>, I<BH_BITMAP_INDEX4>,
|
|
||||||
I<BH_BITMAP_INDEX8>, I<BH_BITMAP_GRAY8>, I<BH_BITMAP_GRAY16>,
|
|
||||||
I<BH_BITMAP_RGBA32> и I<BH_BITMAP_RGBA64>.
|
|
||||||
|
|
||||||
Флаг I<BH_BITMAP_LSB> может использоваться для изменения начала отсчета порядка
|
|
||||||
бит для индексированных изображений. Этот флаг влияет только на следующие
|
|
||||||
пиксельные форматы: I<BH_BITMAP_INDEX1>, I<BH_BITMAP_INDEX2>,
|
|
||||||
I<BH_BITMAP_INDEX4> и I<BH_BITMAP_INDEX8>.
|
|
||||||
|
|
||||||
Флаг I<BH_BITMAP_NOALPHA> может использоваться для указания того,
|
Флаг I<BH_BITMAP_NOALPHA> может использоваться для указания того,
|
||||||
что альфа-канал не используется и всегда должен быть установлен в максимальное
|
что альфа-канал не используется и всегда должен быть установлен в максимальное
|
||||||
значение (255 для 8-разрядных и 65535 для 16-разрядных).
|
значение (255 для 8-разрядных и 65535 для 16-разрядных).
|
||||||
@@ -105,9 +106,6 @@ I<BH_BITMAP_INDEX4> и I<BH_BITMAP_INDEX8>.
|
|||||||
Флаг I<BH_BITMAP_PREMULT> может использоваться для указания того, что значения
|
Флаг I<BH_BITMAP_PREMULT> может использоваться для указания того, что значения
|
||||||
цвета представлены в предварительно умноженном виде.
|
цвета представлены в предварительно умноженном виде.
|
||||||
|
|
||||||
Предполагается, что цветовая палитра содержит ровно 256 цветов и хранится в
|
|
||||||
пиксельном формате I<BH_BITMAP_RGBA32>.
|
|
||||||
|
|
||||||
|
|
||||||
=head1 ВЫЗОВЫ API
|
=head1 ВЫЗОВЫ API
|
||||||
|
|
||||||
@@ -119,7 +117,7 @@ I<BH_BITMAP_INDEX4> и I<BH_BITMAP_INDEX8>.
|
|||||||
int format,
|
int format,
|
||||||
int flags,
|
int flags,
|
||||||
void *data,
|
void *data,
|
||||||
void *palette);
|
BH_Color *palette);
|
||||||
|
|
||||||
Создает растровое изображение с указанной шириной, высотой и пиксельным
|
Создает растровое изображение с указанной шириной, высотой и пиксельным
|
||||||
форматом.
|
форматом.
|
||||||
@@ -310,10 +308,10 @@ void BH_BitmapSetIndex(BH_Bitmap *bitmap,
|
|||||||
|
|
||||||
void BH_BitmapConvertRow(void *src,
|
void BH_BitmapConvertRow(void *src,
|
||||||
int srcFormat,
|
int srcFormat,
|
||||||
void *srcPalette,
|
const BH_Color *srcPalette,
|
||||||
void *dest,
|
void *dest,
|
||||||
int destFormat,
|
int destFormat,
|
||||||
void *destPalette,
|
const BH_Color *destPalette,
|
||||||
size_t count);
|
size_t count);
|
||||||
|
|
||||||
Преобразует строку исходных данных из одного пиксельного формата в другой пиксельный формат.
|
Преобразует строку исходных данных из одного пиксельного формата в другой пиксельный формат.
|
||||||
|
|||||||
@@ -11,24 +11,36 @@ typedef struct BH_Bitmap BH_Bitmap;
|
|||||||
|
|
||||||
#define BH_BITMAP_PREMULT 0x1000
|
#define BH_BITMAP_PREMULT 0x1000
|
||||||
#define BH_BITMAP_NOALPHA 0x2000
|
#define BH_BITMAP_NOALPHA 0x2000
|
||||||
#define BH_BITMAP_BGR 0x4000
|
|
||||||
#define BH_BITMAP_LSB 0x8000
|
|
||||||
|
|
||||||
#define BH_BITMAP_INDEX1 0x0000
|
#define BH_BITMAP_INDEX1 0x0000
|
||||||
#define BH_BITMAP_INDEX2 0x0001
|
#define BH_BITMAP_INDEX1_LSB 0x0001
|
||||||
#define BH_BITMAP_INDEX4 0x0002
|
#define BH_BITMAP_INDEX2 0x0002
|
||||||
#define BH_BITMAP_INDEX8 0x0003
|
#define BH_BITMAP_INDEX2_LSB 0x0003
|
||||||
#define BH_BITMAP_GRAY8 0x0004
|
#define BH_BITMAP_INDEX4 0x0004
|
||||||
#define BH_BITMAP_GRAY16 0x0005
|
#define BH_BITMAP_INDEX4_LSB 0x0005
|
||||||
#define BH_BITMAP_RGBA32 0x0006
|
#define BH_BITMAP_INDEX8 0x0006
|
||||||
#define BH_BITMAP_RGBA64 0x0007
|
#define BH_BITMAP_GRAY8 0x0007
|
||||||
#define BH_BITMAP_RGB565 0x0008
|
#define BH_BITMAP_GRAY16 0x0008
|
||||||
#define BH_BITMAP_RGB888 0x0009
|
#define BH_BITMAP_RGBA32 0x0009
|
||||||
#define BH_BITMAP_RGBA8888 0x000A
|
#define BH_BITMAP_RGBA64 0x000A
|
||||||
#define BH_BITMAP_RGB161616 0x000B
|
#define BH_BITMAP_RGB565 0x000B
|
||||||
#define BH_BITMAP_RGBA16161616 0x000C
|
#define BH_BITMAP_BGR565 0x000C
|
||||||
#define BH_BITMAP_RGBA1010102 0x000D
|
#define BH_BITMAP_RGB888 0x000D
|
||||||
|
#define BH_BITMAP_BGR888 0x000E
|
||||||
|
#define BH_BITMAP_RGBA8888 0x000F
|
||||||
|
#define BH_BITMAP_BGRA8888 0x0010
|
||||||
|
#define BH_BITMAP_ARGB8888 0x0011
|
||||||
|
#define BH_BITMAP_ABGR8888 0x0012
|
||||||
|
#define BH_BITMAP_RGB161616 0x0013
|
||||||
|
#define BH_BITMAP_BGR161616 0x0014
|
||||||
|
#define BH_BITMAP_RGBA16161616 0x0015
|
||||||
|
#define BH_BITMAP_BGRA16161616 0x0016
|
||||||
|
#define BH_BITMAP_ARGB16161616 0x0017
|
||||||
|
#define BH_BITMAP_ABGR16161616 0x0018
|
||||||
|
#define BH_BITMAP_RGBA1010102 0x0019
|
||||||
|
#define BH_BITMAP_BGRA1010102 0x001A
|
||||||
|
#define BH_BITMAP_ARGB2101010 0x001B
|
||||||
|
#define BH_BITMAP_ABGR2101010 0x001C
|
||||||
|
|
||||||
#define BH_BITMAP_FLAG_ALIGN32 0x0001
|
#define BH_BITMAP_FLAG_ALIGN32 0x0001
|
||||||
#define BH_BITMAP_FLAG_EXT_DATA 0x0002
|
#define BH_BITMAP_FLAG_EXT_DATA 0x0002
|
||||||
@@ -40,7 +52,7 @@ BH_Bitmap *BH_BitmapNew(uint32_t width,
|
|||||||
int format,
|
int format,
|
||||||
int flags,
|
int flags,
|
||||||
void *data,
|
void *data,
|
||||||
void *palette);
|
BH_Color *palette);
|
||||||
|
|
||||||
|
|
||||||
void BH_BitmapFree(BH_Bitmap *bitmap);
|
void BH_BitmapFree(BH_Bitmap *bitmap);
|
||||||
@@ -109,10 +121,10 @@ int BH_BitmapFlags(BH_Bitmap *bitmap);
|
|||||||
|
|
||||||
void BH_BitmapConvertRow(void *src,
|
void BH_BitmapConvertRow(void *src,
|
||||||
int srcFormat,
|
int srcFormat,
|
||||||
void *srcPalette,
|
const BH_Color *srcPalette,
|
||||||
void *dest,
|
void *dest,
|
||||||
int destFormat,
|
int destFormat,
|
||||||
void *destPalette,
|
const BH_Color *destPalette,
|
||||||
size_t count);
|
size_t count);
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -56,6 +56,7 @@ typedef struct BH_Color
|
|||||||
uint16_t l;
|
uint16_t l;
|
||||||
uint16_t a;
|
uint16_t a;
|
||||||
} hsla;
|
} hsla;
|
||||||
|
uint16_t channel[4];
|
||||||
} data;
|
} data;
|
||||||
} BH_Color;
|
} BH_Color;
|
||||||
|
|
||||||
|
|||||||
978
src/Bitmap.c
978
src/Bitmap.c
File diff suppressed because it is too large
Load Diff
@@ -28,12 +28,6 @@ BH_UNIT_TEST(RoundTrip)
|
|||||||
{65535, 65535, 65535, 0},
|
{65535, 65535, 65535, 0},
|
||||||
};
|
};
|
||||||
|
|
||||||
uint16_t flags[] =
|
|
||||||
{
|
|
||||||
0,
|
|
||||||
BH_BITMAP_BGR,
|
|
||||||
};
|
|
||||||
|
|
||||||
uint16_t formats[] =
|
uint16_t formats[] =
|
||||||
{
|
{
|
||||||
BH_BITMAP_RGBA32,
|
BH_BITMAP_RGBA32,
|
||||||
@@ -49,36 +43,32 @@ BH_UNIT_TEST(RoundTrip)
|
|||||||
BH_BITMAP_RGBA1010102 | BH_BITMAP_NOALPHA,
|
BH_BITMAP_RGBA1010102 | BH_BITMAP_NOALPHA,
|
||||||
};
|
};
|
||||||
|
|
||||||
for (flag = 0; flag < sizeof(flags) / sizeof(uint16_t); ++flag)
|
for (format = 0; format < sizeof(formats) / sizeof(uint16_t); ++format)
|
||||||
{
|
{
|
||||||
for (format = 0; format < sizeof(formats) / sizeof(uint16_t); ++format)
|
for (i = 0; i < 16; ++i)
|
||||||
{
|
{
|
||||||
for (i = 0; i < 16; ++i)
|
BH_Color source, destination;
|
||||||
{
|
uint64_t temp;
|
||||||
BH_Color source, destination;
|
|
||||||
uint64_t temp;
|
|
||||||
|
|
||||||
BH_ColorSetRGBA16(&source, data[i][0], data[i][1], data[i][2],
|
temp = 0;
|
||||||
data[i][3]);
|
BH_ColorSetRGBA16(&source, data[i][0], data[i][1], data[i][2],
|
||||||
BH_BitmapConvertRow(&source.data, BH_BITMAP_RGBA16161616, NULL,
|
data[i][3]);
|
||||||
&temp, formats[format] | flags[flag], NULL,
|
BH_BitmapConvertRow(&source.data, BH_BITMAP_RGBA16161616, NULL,
|
||||||
1);
|
&temp, formats[format], NULL, 1);
|
||||||
BH_BitmapConvertRow(&temp, formats[format] | flags[flag], NULL,
|
BH_BitmapConvertRow(&temp, formats[format], NULL, &destination.data,
|
||||||
&destination.data, BH_BITMAP_RGBA16161616,
|
BH_BITMAP_RGBA16161616, NULL, 1);
|
||||||
NULL, 1);
|
|
||||||
|
|
||||||
BH_VERIFY(source.data.rgba.r == destination.data.rgba.r);
|
BH_VERIFY(source.data.rgba.r == destination.data.rgba.r);
|
||||||
BH_VERIFY(source.data.rgba.g == destination.data.rgba.g);
|
BH_VERIFY(source.data.rgba.g == destination.data.rgba.g);
|
||||||
BH_VERIFY(source.data.rgba.b == destination.data.rgba.b);
|
BH_VERIFY(source.data.rgba.b == destination.data.rgba.b);
|
||||||
|
|
||||||
if (formats[format] == BH_BITMAP_RGB888 ||
|
if (formats[format] == BH_BITMAP_RGB888 ||
|
||||||
formats[format] == BH_BITMAP_RGB161616 ||
|
formats[format] == BH_BITMAP_RGB161616 ||
|
||||||
formats[format] == BH_BITMAP_RGB565 ||
|
formats[format] == BH_BITMAP_RGB565 ||
|
||||||
(formats[format] | flags[flag]) & BH_BITMAP_NOALPHA)
|
formats[format] & BH_BITMAP_NOALPHA)
|
||||||
BH_VERIFY(destination.data.rgba.a == 65535);
|
BH_VERIFY(destination.data.rgba.a == 65535);
|
||||||
else
|
else
|
||||||
BH_VERIFY(source.data.rgba.a == destination.data.rgba.a);
|
BH_VERIFY(source.data.rgba.a == destination.data.rgba.a);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user