Dark GDK 2D Game basis tutorial

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik ben begonnen met programeren en game development, in Visual Studio C++ 2008 met Dark GDK en DirectX SDK Augustus 2008.

Kan iemand mij helpen met tutorials? Ondertussen ben ik al opweg maar ik vind eigenlijk nergens een goede uitleg over de meer geavanceerde functies van Dark GDK voor 2D. Ik heb al heel wat ervaring met C++, en Flash Actionscript 2.0.

THX.

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op maandag 26 oktober 2009 @ 20:35:
Kan iemand mij helpen met tutorials?
Waar vind ik...?
Sorry; zoeken kun je prima zelf. Verder mis ik ook nog eens wat je dan zelf al hebt gevonden; dan komen wij niet nodeloos aankakken met zaken die je allang gezien zou hebben.

[ Voor 69% gewijzigd door RobIII op 26-10-2009 20:44 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • NC83
  • Registratie: Juni 2007
  • Laatst online: 21-08 21:44
gamdev.net is misschien een idee. Codesampler is altijd goed voor DX en OGL

ex-FE Programmer: CMR:DiRT2,DiRT 3, DiRT Showdown, GRID 2, Mad Max


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Dit is een testje dat ik heb gemaakt met wat ik tot hier toe al heb kan ;) :

main.cpp:

#include "DarkGDK.h"

int PLAYER = 3;
int WALL = 4;

#include "Load.h"
#include "UnLoad.h"
#include "Move.h"
#include "dbSpritePixelCollision.h"

void DarkGDK(void) {

Load();

while(LoopGDK()) {

Move();

Collisions();

if (dbEscapeKey()){
break;
}
dbSync();
}

UnLoad();

return;
}


Load.h:

void Load() {
dbSyncOn();
dbSyncRate(60);
dbDisableEscapeKey();

dbLoadImage("BackGround.bmp",1);
dbLoadImage("Player.bmp",PLAYER);
dbLoadImage("Wall.bmp",WALL);

dbSprite (1,0,0,1);
dbSprite (PLAYER,10,455,PLAYER);
dbSprite(WALL,50,50,WALL);

dbSetImageColorKey (255,0,255);
}


UnLoad.h:

void UnLoad() {

for ( int i=1 ; i<30 ; i++)
dbDeleteSprite(i);

// delete the backdrop image
dbDeleteImage(1);
}


Move.h:

int speed = 2;

void Move() {

if(dbUpKey()) {
dbMoveSprite(PLAYER,speed);
}
if(dbDownKey()) {
dbMoveSprite(PLAYER,-speed);
}
if(dbLeftKey()) {
dbRotateSprite(PLAYER,90);
dbMoveSprite(PLAYER,-speed);
dbRotateSprite(PLAYER,0);
}
if(dbRightKey()) {
dbRotateSprite(PLAYER,90);
dbMoveSprite(PLAYER,speed);
dbRotateSprite(PLAYER,0);
}

}


dbSpritePixelCollision.h :

bool dbSpritePixelCollision(int x, int y, int OB) {

int PX = 2;
dbLoadImage("Pixel.bmp", PX);
dbSprite(PX,x,y,PX);

return dbSpriteCollision(PX,OB);
}

void Collisions() {

while(dbSpritePixelCollision(dbSpriteX(PLAYER)+dbSpriteWidth(PLAYER)/2, dbSpriteY(PLAYER), WALL)) {
dbMoveSprite(PLAYER,-1);
}
while(dbSpritePixelCollision(dbSpriteX(PLAYER), dbSpriteY(PLAYER)+dbSpriteWidth(PLAYER)/2, WALL)) {
dbRotateSprite(PLAYER,90);
dbMoveSprite(PLAYER,1);
dbRotateSprite(PLAYER,0);
}
while(dbSpritePixelCollision(dbSpriteX(PLAYER)+dbSpriteWidth(PLAYER)/2, dbSpriteY(PLAYER)+dbSpriteWidth(PLAYER)-1, WALL)) {
dbMoveSprite(PLAYER,1);
}
while(dbSpritePixelCollision(dbSpriteX(PLAYER)+dbSpriteWidth(PLAYER)-1, dbSpriteY(PLAYER)+dbSpriteWidth(PLAYER)/2, WALL)) {
dbRotateSprite(PLAYER,90);
dbMoveSprite(PLAYER,-1);
dbRotateSprite(PLAYER,0);
}
}

Acties:
  • 0 Henk 'm!

  • RedHat
  • Registratie: Augustus 2000
  • Laatst online: 17-09 20:43
Verwijderd schreef op dinsdag 27 oktober 2009 @ 12:11:
Dit is een testje dat ik heb gemaakt met wat ik tot hier toe al heb kan ;) :
Oké.

Hiermee bedoel ik dat dit niet helemaal de plek is om dit neer te zetten. Dat je vraagt naar tutorials is goed, maar hier verwachten we minimaal een probleem, een probleemanalyse en wat je hebt gedaan om te vinden wat je zoekt ;)

[ Voor 37% gewijzigd door RedHat op 27-10-2009 12:13 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Wat ik bijvoorbeeld niet vind is hoe ik de eigenschappen van het venster kan aanpassen,... ok vraag me ook af of de functie
bool dbSpritePixelCollision(int x, int y, int OB) (voor collisions tussen een punt en een object)
die ik zelf gemaakt heb er ook niet in zit of hoe je normaal dan goede collisions maakt.

THX ;)

btw de BPM's die ik gebruikt heb:

"BackGround.bmp" = 800x500 dacht ik.
"Player.bmp" = 15x15
"Wall.bmp" = 50x150

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17-09 14:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

Én dat je je code tussen code tags zet. Wellicht moet je PRG Beleid even doorlezen.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
RobIII
Sorry; zoeken kun je prima zelf. Verder mis ik ook nog eens wat je dan zelf al hebt gevonden; dan komen wij niet nodeloos aankakken met zaken die je allang gezien zou hebben.
hij vroeg naar wat ik al wist dus...

[ Voor 63% gewijzigd door Verwijderd op 27-10-2009 12:21 ]

Pagina: 1