Jonas Skrevet 14. april 2005 Del Skrevet 14. april 2005 (endret) Heisann Programmerer litt på KoN og har støtt på et problem. Jeg har et bilde med en "maske-farge" (#FF00FF) Alt med den fargen skal altså IKKE tegnes. Hvordan får jeg til det? For øyeblikket tegner jeg på denne måten: Surface.Blt ScreenRECT, Unit(.Tile(y, x).UnitOnTile).Surface, UnitRECT, DDBLTFAST_DONOTWAIT Jeg ser at man kan velge "DDBLT_COLORFILL". Det er vel litt vesentlig i problemet? Takker for all hjelp! Jonas Edit: VB6 og DirectX7, men det regner jeg med de fleste tok. Endret 14. april 2005 av Jonas Lenke til kommentar
aadnk Skrevet 14. april 2005 Del Skrevet 14. april 2005 (endret) Du kan få dette til ved å anvende den nyttige funksjonen SetColorKey i den aktuelle kildetavlen: Dim ColorKey As DDCOLORKEY ColorKey.low = &HFF00FF ColorKey.high = &HFF00FF Unit(.Tile(y, x).UnitOnTile).Surface.SetColorKey DDCKEY_SRCBLT, ColorKey Ovennevte kode bør helst kjøres i initialiseringsprosessen da tavlene lastes inn, men du kan nok også kjøre den i tegnerutinen, såfremt det er nødvendig. Dersom dette ikke fungerer, ville jeg forsøkt andre maskefarger, eksempelvis hvitt. Du må for øvrig også inkludere verdien DDBLTFAST_SRCCOLORKEY i trans-paramenteret dersom du skal tegne tavlen med den gjennomsiktige fargen. Endret 14. april 2005 av aadnk Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå