SDL_PixelFormat* SDL_AllocFormat(Uint32 pixel_format)
pixel_format | SDL_PixelFormatEnumの値の1つ |
成功のとき生成されたSDL_PixelFormat, 失敗のときNULLを戻す. SDL_GetError()で詳細を知ることができる.
SDL_PixelFormat* pixel_format = NULL;
/* ... */
SDL_Init(SDL_INIT_EVERYTHING);
pixel_format = SDL_AllocFormat(SDL_PIXELFORMAT_RGBA32);
if (pixel_format == NULL) printf( "エラー: %s¥n", SDL_GetError() );
/* ... */
printf("バイト数: %i¥n", pixel_format->BytesPerPixel);
戻された構造体は, (新しく確保された領域ではなく)共通のグローバルな領域なので, 変更してはならない. 特にパレットはそうである. "Blit combination not supported" のような不可解なエラーが発生するだろう.