Utiliser la console Windows, est-ce possible ?
Voila j'ai besoin de la fonction SDL_GetTicks et je ne gère pas encore l'affichage d'image dans mon projet.
Le problème c'est que l'utilisation de la SDL supprime l'affichage de la console windows (j'utilise des cout pour voir l'evolution de mon programme).
Ma question est : suis-je obligé d'initialisé une fenetre et d'utilisé SDL_ttf pour afficher mes pov' malheureux chiffres ?
En plus lorsque je compile mon projet et que je l'execute le programme se ferme directement sans rien affiché (en méme temps je n'ai pas initialisé de fenetre mais je n'en veux pas :P).
Voici un bout de code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| int main(int argc, char *argv[]) {
SDL_Init( SDL_INIT_EVERYTHING );
Track* t = new Track("T", 10, 0.3, 0.7, 1, 100, 100);
Car* c = new Car("C", 100, 100, 100);
Race* r = new Race(t, c);
r->runRace();
system("PAUSE");
SDL_Quit();
return EXIT_SUCCESS;
} |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| void Race::runRace() {
unsigned int checkTime = SDL_GetTicks();
const unsigned int fps = 100;
unsigned short sector = 1;
Counter* count = new Counter();
cout << "Run race ..." << endl;
while(this->laps < t->getLaps()) {
if(SDL_GetTicks() > (checkTime + 1000 / fps) )
{
//SectorTime management
if(sector == 1 && c->getPosition() >= t->getLenghtSector1()) {
sector = 2;
cout << "sector 1 : " << count->getTime() << endl;
}
else if(sector == 2 && c->getPosition() >= t->getLenghtSector2()) {
sector = 3;
cout << "sector 2 : " << count->getTime() << endl;
}
else if(sector == 3 && c->getPosition() >= t->getLenghtSector3()) {
sector = 1;
cout << "sector 3 : " << count->getTime() << endl;
}
//Laps management
if(c->getPosition() >= t->getLenghtSector3()) {
this->laps++;
c->setPosition(c->getPosition() - t->getLenghtSector3());
cout << "Laps : " << this->laps << endl;
}
//Speed management
c->setSpeed(100);
//Position management
c->setPosition(c->getSpeed()/3600000.0);
//Counter management
count->addThousandths();
//Wear management
/* On remet à jour le temps à contrôler */
checkTime = SDL_GetTicks();
}
}
} |
Je dev sous Dev-C++, je n'ai aucune erreur ni warning à la compil ;)
Merci de votre aide !