add GetSnesPixelFormat and SNES_PIXELFORMAT_XBPP constants
This commit is contained in:
@@ -46,6 +46,20 @@ void PngReadCallback(png_structp png_ptr, png_bytep outBytes,
|
||||
png_error(png_ptr, "Read error in PngReadCallback");
|
||||
}
|
||||
}
|
||||
|
||||
Uint32 GetSnesPixelFormat(int format) {
|
||||
switch (format) {
|
||||
case 0:
|
||||
return SDL_PIXELFORMAT_INDEX8;
|
||||
case 1:
|
||||
return SNES_PIXELFORMAT_2BPP;
|
||||
case 2:
|
||||
return SNES_PIXELFORMAT_4BPP;
|
||||
case 3:
|
||||
return SNES_PIXELFORMAT_8BPP;
|
||||
}
|
||||
return SDL_PIXELFORMAT_INDEX8;
|
||||
}
|
||||
} // namespace
|
||||
|
||||
bool ConvertSurfaceToPNG(SDL_Surface *surface, std::vector<uint8_t> &buffer) {
|
||||
|
||||
@@ -22,6 +22,24 @@ namespace app {
|
||||
*/
|
||||
namespace gfx {
|
||||
|
||||
constexpr int SNES_PIXELFORMAT_2BPP = SDL_DEFINE_PIXELFORMAT(
|
||||
/*type=*/SDL_PIXELTYPE_INDEX8, /*order=*/0,
|
||||
/*layouts=*/0, /*bits=*/2, /*bytes=*/1);
|
||||
|
||||
constexpr int SNES_PIXELFORMAT_4BPP = SDL_DEFINE_PIXELFORMAT(
|
||||
/*type=*/SDL_PIXELTYPE_INDEX8, /*order=*/0,
|
||||
/*layouts=*/0, /*bits=*/4, /*bytes=*/1);
|
||||
|
||||
constexpr int SNES_PIXELFORMAT_8BPP = SDL_DEFINE_PIXELFORMAT(
|
||||
/*type=*/SDL_PIXELTYPE_INDEX8, /*order=*/0,
|
||||
/*layouts=*/0, /*bits=*/8, /*bytes=*/1);
|
||||
|
||||
// SDL_PIXELFORMAT_INDEX8 =
|
||||
// SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_INDEX8, 0, 0, 8, 1),
|
||||
|
||||
constexpr int kFormat4bppIndexed = 1;
|
||||
constexpr int kFormat8bppIndexed = 2;
|
||||
|
||||
/**
|
||||
* @brief Convert SDL_Surface to PNG image data.
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user