Nintendo 3DS >> C/C++ >> SDL v1.2
Color Key
參考資訊:
1. libctru doc
2. 3ds-examples
說明:
API |
---|
SDL_Surface *SDL_DisplayFormat(SDL_Surface *surface) |
int SDL_SetColorKey(SDL_Surface *surface, int flag, Uint32 key) |
Uint32 SDL_MapRGB(const SDL_PixelFormat *format, Uint8 r, Uint8 g, Uint8 b) |
main.c
#include <stdio.h> #include <stdlib.h> #include <SDL.h> int main(void) { SDL_Surface *screen = NULL; SDL_Init(SDL_INIT_VIDEO); screen = SDL_SetVideoMode(400, 240, 16, SDL_HWSURFACE); SDL_FillRect(screen, &screen->clip_rect, SDL_MapRGB(screen->format, 0xff, 0x00, 0x00)); SDL_Surface* bmp = SDL_LoadBMP("main.bmp"); SDL_Surface *key = SDL_DisplayFormat(bmp); SDL_SetColorKey(key, SDL_SRCCOLORKEY, SDL_MapRGB(key->format, 0xff, 0xff, 0xff)); SDL_BlitSurface(key, NULL, screen, NULL); SDL_Flip(screen); SDL_Delay(3000); SDL_FreeSurface(bmp); SDL_FreeSurface(key); SDL_Quit(); return 0; }
完成