You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

66 lines
3.2 KiB
HTML

<!menue>
<!h2a=llgfx_BLIT,llgfx_BLIT,llgfx_BLIT>
<!xml=llgfx_BLIT.xml,function.xsl>
//
//
//
//
<!h2a=Blittermodes,Blittermodes,Blittermodes>
<!ul=
<wD>BLIT_COPY Rectangle Kopie S -> D \
<wD>BLIT_SRC_CKEY wie BLIT_COPY, Colorkey pixel von S werden nicht mitkopiert.\
<wD>BLIT_INV_SRCCKEY Inverses SRC COLORKEY. Nur Colorkey pixel werden kopiert.\
<wD>BLIT_DST_CKEY Colorkey pixel von D werden nicht überschrieben.\
<wD>BLIT_INV_DSTCKEY Nur colorkey pixel von D werden überschrieben.\<br>
<wD>BLIT_SRC_ALPHA S wird auf D überblendet abhängig von AlphaMask von S.\
<wD>BLIT_INV_SRCALPHA S wird auf D überblendet abhängig von inverser AlphaMask von S.\
<wD>BLIT_DST_ALPHA S wird auf D überblendet abhängig von AlphaMask von D.\
<wD>BLIT_INV_DSTALPHA S wird auf D überblendet abhängig von inverser AlphaMask von D.\
<wD>BLIT_RASTER Raster Copy im Muster 2x2.\
<wD>BLIT_SCANLINES Scanline Copy. Lässt jede zweite Zeile im Ziel relativ zum Bildschirm aus.\
<wD>BLIT_RANDOM ZufallsBlit pro Pixel.\
<wD>BLIT_SRC_CENTERED S zentriert über Zielkoordinaten blitten.\
<wD>BLIT_DST_CENTERED S zentriert nach D blitten. Zielkoordinaten werden ignoriert.\
<wD>BLIT_MIRROR_X S wird horizontal gespiegelt geblittet.\
<wD>BLIT_MIRROR_Y S wird vertikal gespiegelt geblittet.\
<wD>BLIT_FXBLEND S wird auf D überblendet.\
<wD>BLIT_FXADD S Addiert zu D.\
<wD>BLIT_FXSUB S Subtrahiert zu D .\
<wD>BLIT_FXMUL S Multipliziert zu D .\
<wD>BLIT_FXINVMUL S Multipliziert inverse zu D.\
<wD>BLIT_FXCOLOR S Color Overlay zu D.\
<wD>BLIT_FXDIFF S Differenz zu D.\
<wD>BLIT_FXDARKEN Dunkelster Wert von S oder D.\
<wD>BLIT_FXLIGHTEN Hellster Wert von S oder D.\
<wV>BLIT_SPRITE Schaltet Pixelgenaue Kollisionserkennung ein.\
<wV>BLIT_SKEW Verzerrt.\
<wV>BLIT_FILL Farbblitter.\
<wD>BLIT_STRETCH Skaliert S.\
<wD>BLIT_ROTATE Rotiert S.\
<wD>BLIT_MASK Ziel D ist Maske.\
<wD>BLIT_MIRROR_X S wird horizontal gespiegelt.\
<wD>BLIT_MIRROR_Y S wird vertikal gespiegelt.\
=ul>
<wV>dunkle Defines befinden sich im Test und sind für die nächste Release geplant
Die Blittermodes können mit ein paar Ausnahmen mit ODER Verknüpft werden.
<!h2a=Blitter Basics,Blitter Basics,BlitterBasics>
Blitten ist nur möglich wenn das Programm erstmalig <wF><wH>llgfx_SetDisplayMode() aufgerufen hat. Ab diesem Zeitpunkt ist dem Blitter bekannt mit welchen Bits pro Pixel gearbeitet wird.
Geblittet wird immer von einem <wH>Quell- <wV>gfxbuffer in einen <wH>Ziel- <wD>gfxbuffer.
<wV>gfxbuffer können durch LoadGfx() und CreateGfx() erzeugt werden.
Jeder gfxbuffer hat eine eindeutige Nummer.
Die ersten 4 Nummern sind bereits reserviert und angelegt für die System Buffer.
<!ul=
gfxbuffer <wD>0 ... Backbuffer\
gfxbuffer <wD>1 ... Frontbuffer\
gfxbuffer <wD>2 ... Stretchbuffer FFA\
gfxbuffer <wD>3 ... Stretchbuffer FFA<br>\
gfxbuffer <wV>4 ... Erster Userbuffer z.b. durch <!link=gfxbuffer#llgfx_CreateGfx(),llgfx_CreateGfx()>\
gfxbuffer <wV>5 ... Zweiter Userbuffer z.b. durch <!link=gfxbuffer#llgfx_LoadGfx(),llgfx_CreateGfx()>
=ul>
Die system gfxbuffer werden in der Funktion llgfx_SetDisplayMode erstellt und haben die Größe des angeforderten Displaymodes.