Aller au contenu


C / SDL


  • Veuillez vous connecter pour répondre
5 réponses à ce sujet

#1 Dihanara

    no title



  • 621 messages

Posté 13 septembre 2007 - 19:01

Yop !

Voila, j'aurais voulu savoir si il y a parmis vous quelqu'un qui gère bien le langage C et la librairie SDL http://www.clan-nawa...tyle_emoticons/default/tongue.gif
Il y a 3 semaines, je me suis décidée à apprendre tout ca, et je tente de réaliser un petit jeu pour entrainement mais je suis bloquée.

Le but : blitter une image à une position random pendant un certains nombres de secondes.

J'imaginais quelque chose du genre (Soyez indulgent j'apprend toute seule http://www.clan-nawa...tyle_emoticons/default/tongue.gif):

i = rand() % (MAXI - MINI + 1) + MINI;
j = rand() % (MAXJ - MINJ + 1) + MINJ;

i = position.x;
j = position.y;

SDL_Blit(image, NULL, ecran, &position);

(Pour les timers c'est quelque chose que je verrai après, j'y ai pas encore réfléchi)

Mon idée doit certainement être fausse, mais au moins j'essaie. http://www.clan-nawa...tyle_emoticons/default/tongue.gif

En esperant que l'un de vous puisse me depanner !

Kiss all

Diha

#2 enima

    gamer


  • PipPipPipPip

  • 331 messages

Posté 13 septembre 2007 - 20:06

arf
Passe au C++ je pourrais t'aider :)
et puis le C++ est beacoup plus puissant...d'ailleur je compte d'ici quelques temps programmer un moteur physique pour un jeu...
Image IPB

#3 Dihanara

    no title



  • 621 messages

Posté 14 septembre 2007 - 05:47

Je commence par le C, après probablement que je tenterai le C++ http://www.clan-nawa...tyle_emoticons/default/tongue.gif

#4 Machemort

    no title


  • PipPipPipPip

  • 991 messages

Posté 14 septembre 2007 - 11:11

yop diha,

Pour trouver une valeur aleatoire entre min et max le bout de code est bon. Fait juste attention a prendre en compte la taille de ton image que tu veux deplacer si tu veux pas qu'elle sorte a moite de l'ecran

i = rand() % (MAXI - MINI + 1 - IMAGESIZEX) + MINI;
j = rand() % (MAXJ - MINJ + 1 - IMAGESIZEY) + MINJ;


ici il faut toujours mettre la valeur a assigné a gauche du signe =

position.x = i;
position.y = j;

T'es sur de la fonction SDL_Blit, je connais SDL_BlitSurface mais faut faire attention a l'initialisation car c fait pour melanger deux contexte graphique (SDL_Surface) et si je me rappelle bien ca copie pas uniquement les images a proprement dite, cad ca copie les couleur, le tampon de profondeur, les alpha et les proprietés de rendu. Je suis pas un pro pour SDL mais a mon avis c une fonction complexe a utiliser dans le cadre d'un exercice de base... mais bon je connais pas le contexte non plus

SDL_Blit(image, NULL, ecran, &position);



Pour attendre qql second tu peux utiliser la fonction Sleep(1000); qui fait attendre le programme un certain nombre de millisecondes.

Sinon je comprends pas ta remarque sur le C++ enima, entre C et C++ ya presque pas de difference dans la facon de coder une fonction c juste le concept d'objet qui est rajouter au C++. En gros si tu c faire du C++ tu sais obligatoirement faire du C.




Bonne chance pour ton exo




Modifié par Machemort, 14 septembre 2007 - 11:13.

Image IPB

#5 Dihanara

    no title



  • 621 messages

Posté 14 septembre 2007 - 14:46

Coucou Mache !

Ben le truc c'est que je me lance dans un exercice complétement personnalisé, bien supérieur à mon niveau http://www.clan-nawa...tyle_emoticons/default/tongue.gif
Juste pour voir si j'en suis capable http://www.clan-nawa...tyle_emoticons/default/tongue.gif


Je bloquais sur la fonction des positions aléatoires, mais c'est régler depuis midi, après avoir essayer 30 milles trucs j'y suis arrivée comme une grande http://www.clan-nawa...tyle_emoticons/default/tongue.gif
Je bloque sur autre chose maintenant mais je vais encore y réfléchir un jour ou deux, si je trouve pas je t'appelle http://www.clan-nawa...tyle_emoticons/default/tongue.gif

Merci beaucoup en tout cas !

Allez je retourne bosser ...


Diha

PS : Oui bien sur c'est SDL_BlitSurface, j'ai écris un peu vite ^^ , le SDL pour l'instant me pose pas trop de problèmes :)

#6 Machemort

    no title


  • PipPipPipPip

  • 991 messages

Posté 14 septembre 2007 - 15:55

yop diha,

Bah si ta souci a l'occaz hesite pas a me chopper, je t'aiderai en fonction de mes disponibilités. Sinon si tu veux faire des trucs de rendu sympa en openGL ta des super tutoriaux pour openGL sur NeHe(http://nehe.gamedev.net/). J'ai appris a faire plein de truc grace a ca.

++

Mache
Image IPB




1 utilisateur(s) li(sen)t ce sujet

0 invité(s) et 1 utilisateur(s) anonyme(s)