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");
|
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
|
} // namespace
|
||||||
|
|
||||||
bool ConvertSurfaceToPNG(SDL_Surface *surface, std::vector<uint8_t> &buffer) {
|
bool ConvertSurfaceToPNG(SDL_Surface *surface, std::vector<uint8_t> &buffer) {
|
||||||
|
|||||||
@@ -22,6 +22,24 @@ namespace app {
|
|||||||
*/
|
*/
|
||||||
namespace gfx {
|
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.
|
* @brief Convert SDL_Surface to PNG image data.
|
||||||
*/
|
*/
|
||||||
|
|||||||
Reference in New Issue
Block a user