ATTENTION READERS! Lucky's VB Gaming Site is no longer active. For updated game programming information and tutorials, please visit The Game Programming Wiki!
Transparantie
Bij het afbeelden van een bitmap, wil je meestal een deel van de afbeelding transparant. Voorbeelden zijn terug te vinden in elk spel! Transparantie in DirectX is in het algemeen zéér simpel. Eigenlijk moet je gewoon een bepaalde kleur als transparante kleur zetten en een DX functie aanroepen. Het voorbeeld dat we gaan illustreren gebruikt zwart als transparancey keycolor (transparante kleur).
"CKey" wordt hier gedefinieerd als een DirectDraw Color Key. "CKey" bevat een 'hooge' waarde (=high) en een lage waarde (=low). Dit laat ons toe om een waarde tussen twee kleuren als transparante kleur te gebruiken. Dit is in ons geval niet nodig, want we gebruiken slechts zwart als transparante kleur. Hetgene dat we daarvoor moeten doen is de transparantie-kleur van de sprite, waarop de bitmap is, bepalen. Dit doen we door de "SetColorKey" methode van de Sprite. De Flag "DDCKEY_SRCBLT" zegt DirectX dat we de kleur willen toepassen op de bron bitmap wanneer we het blitten. Dit wordt duidelijk na dit:
BackBuffer.Blt DestRect, Sprite, SrcRect, DDBLT_KEYSRC Or DDBLT_WAIT
Nu we de surface blitten, moeten we de "DDBLT_KEYSRC" flag gebruiken om zeker te zijn dat de 'color key' van de bron, in dit geval de "Sprite" surface, als transparant wordt beschouwd. Voilà zo simpel is
het...