Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: spite (vb)

petrinm [10.11.2003 16:20:39]

#

En ole okein saanut selvää että miten toi spite toimii,
kun esimerkki ei kerro mulle mitään.

https://www.ohjelmointiputka.net/oppaat/opas.php?tunnus=spriteo

Antti Laaksonen [10.11.2003 16:37:42]

#

Ei se mikään spite ole vaan sprite. :) Ja ideanahan on se, että suorakulmion muotoinen bittikartta piirretään näytölle ilman että tausta sotkeutuu kuvan "tyhjissä" osissa. Sprite-oppaan esimerkkikuvaparista pitäisi kyllä ymmärtää asia.

petrinm [11.11.2003 15:32:48]

#

Kyllä mää ton tiedän, mutta miten tehdä se helpoiten peliini.

Antti Laaksonen [11.11.2003 15:43:12]

#

No Windows-ympäristössä on BitBlt-funktion käyttäminen suht' helppo tapa. Oppaasta löytyy (muistaakseni hyvin kommentoitu) esimerkki Visual Basicille. On spritejen käyttäminen tietty hieman monimutkaisempaa kuin kuvan piirtäminen tavallisesti.

Blaze [14.11.2003 22:37:09]

#

Itse en koskaan jaksanut tajuta noiden maskien tarpeellisuutta, DirectX:n ColorKey-systeemi (väli r1g1b1-r2g2b2 on läpinäkyvä ja ko. pikselit jätetään piirtämättä) toimii loistavasti ilman ylimääräisten bittikarttojen kanssa säätämistä.

setä [14.11.2003 23:23:39]

#

Hei Blaze, voitko antaa tuosta DirectX:n Colorkey-systeemistä vähän lisävinkkiä, pieni koodinpätkä ei ois hassumpi.

Blaze [15.11.2003 12:45:37]

#

lainaus:

Hei Blaze, voitko antaa tuosta DirectX:n Colorkey-systeemistä vähän lisävinkkiä, pieni koodinpätkä ei ois hassumpi.

Luodaan DDCOLORKEY-tyyppinen muuttuja, asetetaan sen high- ja low -ominaisuudet, käytetään DirectDrawSurface7.SetColorKeytä ja aina kun blitataan muistetaan tunkea DDCKEY_SRCBLT -vakio sinne rimpsun perään.

Soodia löytyy DirectX SDK:sta, tuossa esimerkki niille, jotka eivät koko SDK:ta jaksa ladata: http://pp.kpnet.fi/blaze/temp/ddtut2.zip

Niin ja jos joku ei jo tajunnut, niin tätä ei voi käyttää BitBlt:n kanssa, pahoittelen, jos aikasemmasta viestistäni sai sen käsityksen.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta