Blitter

Contents

Głównym zadaniem blittera jest rysowanie "spritów"(sprites) na ekranie. Musi obsługiwać odwzorowanie kolorów i efekty przezroczystości. Zapewniono dodatkowe metody wstępnego kodowania danych sprite'a w formacie preferowanym przez blittera.

Następujące "blittery" istnieją w SVN:

Metody

uint8 GetScreenDepth()

Uzyskaj głębię ekranu, dla której ten blitter działa. To jest albo: 8, 16, 24 or 32.

void Draw(Blitter::BlitterParams *bp, BlitterMode mode, ZoomLevel zoom)

Narysuj obraz na ekranie, biorąc pod uwagę liczbę parametrów zdefiniowanych powyżej.

void DrawColorMappingRect(void *dst, int width, int height, int pal)

Narysuj tabele koloru (colortable) na ekranie. Jest to: kolor ekranu jest odczytywany i przeglądany w palecie w celu dopasowania do nowego koloru, który następnie jest ponownie wyświetlany na ekranie.

Sprite *Encode(SpriteLoader::Sprite *sprite, Blitter::AllocatorProc *allocator)

Konwertuj "sprite`a" z modułu ładującego na własny format.

Ładowarka Spritów wywołuje tę metodę dla każdego ładowanego prawdziwego "sprit`a". Ta funkcja musi przekonwertować dane sprite z RGBAM format (en) na preferowany format blittera. W przypadku blitterów 8bpp będzie to zwykle oznaczać upuszczenie danych RGBA i użycie tylko indeksowanej części M..

const char *GetRenderer()

Pobierz moduł renderujący, od którego zależy ta klasa.