[vb] DirectDraw7 perfect pixel collision detection

Pagina: 1
Acties:

  • razor-x
  • Registratie: Februari 2001
  • Laatst online: 05-06 07:37
Ben nu een weekje bezig met het maken van een
Kuru Kuru Kurin kloon (gba game)

Kuru Kuru Kururin is een game waarbij een staafje
in het midden van je scherm rond draait en dat je door
een soort dolhof heen moet zonder te botsen
Screenie :
Afbeeldingslocatie: http://codebase.statix.net/screen.gif

Ik ben nu al zover dat ik een ronddraaiend staafje die je kan bewegen, Het probleem is de collision detection

Ik wou hierbij perfect pixel detection gebruiken
dan kijkt hij of dat 2 speciaale kleuren elkaar aanraken

Maar ik heb geen flauw id hoe ik dit kan maken
Heb veeeeel gezocht op onze vriend google maar niet echt iets bruikbaars gevonden,
ik zoek eigelijk een tut. waar dit stap voor stap word uit gelegt,
Of heeft iemand hiermee al gewerkt en dat je het even wilt uitleggen?

Ik hoop dat je het een beetje snapt :)

Ohja het is in Visual Basic 6 geschreven :)

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

www.google.com

(heej je dwong me tot een antwoord :+ )

Doet iets met Cloud (MS/IBM)


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 21-09 13:51

Janoz

Moderator Devschuur®

!litemod

Als je echte pixelpreciese collusion detectie wil gebruiken kun je het beste een boolean plaatje van je level maken en hieruit een region neemen die je vervolgens AND met een bollean plaatje van je stokje.. Vervolgens kijk je of er nog pixels over zijn en je bent klaar...

offtopic:
Best verslavend spelletje .. Heb het in februari al behoorlijk vaak multiplayer gedaan.. Bij single player had ik eigenlijk geen ID wat de functie van die vogeltjes was, maar dat zal wel door mijn gebrekkige japans komen

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • razor-x
  • Registratie: Februari 2001
  • Laatst online: 05-06 07:37
Op dinsdag 18 september 2001 14:20 schreef D2k het volgende:
www.google.com

(heej je dwong me tot een antwoord :+ )
Heb veeeeel gezocht op onze vriend google maar niet echt iets bruikbaars gevonden
Slap slap !!

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

Op dinsdag 18 september 2001 14:21 schreef razor-x het volgende:

[..]


[..]

Slap slap !!
niet goed genoeg

* D2k vond

http://rookscape.com/vbgaming/tutAS.php

Doet iets met Cloud (MS/IBM)


  • razor-x
  • Registratie: Februari 2001
  • Laatst online: 05-06 07:37
Op dinsdag 18 september 2001 14:21 schreef Janoz het volgende:
Als je echte pixelpreciese collusion detectie wil gebruiken kun je het beste een boolean plaatje van je level maken en hieruit een region neemen die je vervolgens AND met een bollean plaatje van je stokje.. Vervolgens kijk je of er nog pixels over zijn en je bent klaar...

offtopic:
Best verslavend spelletje .. Heb het in februari al behoorlijk vaak multiplayer gedaan.. Bij single player had ik eigenlijk geen ID wat de functie van die vogeltjes was, maar dat zal wel door mijn gebrekkige japans komen
Als ik het niet mis het is een boolean plaatje
een plaatje in 2 kleuren zwart wit ofzo?
Dat begrijp ik dan maar wat bedoel je met
Vervolgens kijk je of er nog pixels over zijn
// off
T's een leuk spelletje idd
maar ik heb de engelse versie (emu) een daar snap ik ook nog niet van die vogel :D

  • Korben
  • Registratie: Januari 2001
  • Laatst online: 14-11-2025

Korben

() => {};

Op dinsdag 18 september 2001 14:25 schreef razor-x het volgende:

[..]

Als ik het niet mis het is een boolean plaatje
een plaatje in 2 kleuren zwart wit ofzo?
Dat begrijp ik dan maar wat bedoel je met
[..]

// off
T's een leuk spelletje idd
maar ik heb de engelse versie (emu) een daar snap ik ook nog niet van die vogel :D
Je maakt van het frame wat je wilt controleren een mask (dwz alle kleuren die niet gelijk zijn aan de maskerkleur; transparant dus, maak je 0, de rest 1). Vervolgens maak je ook een mask van het 'object' waarvan je collision wilt detecten (is dat een werkwoord? :)) en doe je een BitBlt naar een andere bitmap. Vervolgens kijk je of een van de pixels in die nieuwe bitmap 1 is. Voila, PPCD.

.oisyn: Échte programmeurs haten PHP met een passie. Ben jij soms geen echte programmeur?


  • Korben
  • Registratie: Januari 2001
  • Laatst online: 14-11-2025

Korben

() => {};

Op dinsdag 18 september 2001 14:25 schreef razor-x het volgende:

[..]

Als ik het niet mis het is een boolean plaatje
een plaatje in 2 kleuren zwart wit ofzo?
Dat begrijp ik dan maar wat bedoel je met
[..]

// off
T's een leuk spelletje idd
maar ik heb de engelse versie (emu) een daar snap ik ook nog niet van die vogel :D
Je maakt van het frame wat je wilt controleren een mask (dwz alle kleuren die niet gelijk zijn aan de maskerkleur; transparant dus, maak je 0, de rest 1). Vervolgens maak je ook een mask van het 'object' waarvan je collision wilt detecten (is dat een werkwoord? :)) en doe je een BitBlt (met een AND bewerking) naar een andere bitmap. Vervolgens kijk je of een van de pixels in die nieuwe bitmap 1 is. Voila, PPCD.

[edit] Oeps, 2x gepost. Maar dit is de goeie! :P

.oisyn: Échte programmeurs haten PHP met een passie. Ben jij soms geen echte programmeur?

Pagina: 1