CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

J´aide les personne en C/C++

jejej
jejej
Niveau 9
19 décembre 2005 à 22:46:22

je pense qu´il parle du mode console ...
y avait conio , mais la librairie de dnob700 est mieux ( slurp ) enfin en tout cas elle fonctionne chez moi ...
elle s´appelle advio , et on peut la trouver sur
http://section-pc.fr.st
ou un truc du genre ... c´est ecrit sur la fiche de dnob700 , recherche son profil

dnob700
dnob700
Niveau 10
20 décembre 2005 à 01:16:19

http://lib.sectionpc.info

j´ai posté un message dans ce sens tout à l´heure, mais j´ai du oublier de le valider.

Pour gérer la console sous windows (et bientot sous linux aussi).

zeli
zeli
Niveau 4
20 décembre 2005 à 09:21:24

Godrik: Desolé je me suis trompé je voulais dire en mode DOS

Bartours
Bartours
Niveau 9
29 décembre 2005 à 20:02:21

Problème SDL :
(j´explique rapidement, je veux essayer de gerer le déplacement de mon personnage sonic, j´ai plein d´images que j´ai chargé. Le personnage marche vers la droite (je ne me suis occupé que de cette direction pour le moment!) mais clignote sans cesse. Je ne trouve pas la raison, peut-être provient elle de la méthode que j´ai utilisé pour le faire. Je compte sur vous pour m´éclairer!
voila la partie qui concerne le déplacement:

if(keys[SDLK_RIGHT])
{
x++;
switch (x){
case 1 :
SDL_BlitSurface(sonic1,NULL,ecran,&rectsonic);
break;
case 2 :
SDL_BlitSurface(sonic2,NULL,ecran,&rectsonic);
break;
case 3 :
SDL_BlitSurface(sonic3,NULL,ecran,&rectsonic);
break;
case 4 :
SDL_BlitSurface(sonic4,NULL,ecran,&rectsonic);
break;
case 5 :
SDL_BlitSurface(sonic5,NULL,ecran,&rectsonic);
break;
case 6 :
SDL_BlitSurface(sonic6,NULL,ecran,&rectsonic);
break;
case 7 :
SDL_BlitSurface(sonic7,NULL,ecran,&rectsonic);
break;
case 8 :
SDL_BlitSurface(sonic8,NULL,ecran,&rectsonic);
break;
}
abscisse+=3;
if (x>8)
{x=1;
}
}else
{
SDL_BlitSurface(sonic,NULL,ecran,&rectsonic);
}
SDL_Flip(ecran);

jejej
jejej
Niveau 9
29 décembre 2005 à 21:47:20

normal , quand x = 9 , tu remet x à 1 , met tu n´affiches pas ...
et puis bon , c´est pas la meilleure maniere de faire ... je t´en proposes une plus appropriée je pense :

tu fais un tableau de SDL_Surface* ( une pour chaque animation , càd pour chaque image )
SDL_Surface* Sonic[9];

// ensuite tu les charges
Sonic[0] = SDL_LoadBMP("image0.bmp");
... // ainsi de suite ... bon , en te debrouillant avec la concatenation , tu trouveras un moyen d´automatiser ça ^^

et ensuite :
if( keys[RIGHT] )
{
BLIT_Surface( Sonic[num_anim] )
anim++;
if( anim > 8 )
{
anim = 0;
}

voila :) ( j´espere que c´est clair sinon je reexpliquerai

maxime450
maxime450
Niveau 5
30 décembre 2005 à 10:48:31

Salut!
Ont est une équipe de cinque !M otivé pour apprendre!

Mais ont ne sais pas quel livre choisir!Une petite sugestion svp?

Bartours
Bartours
Niveau 9
30 décembre 2005 à 12:59:36

jejej> oui merci, je pense avoir compris... Je vais refléchir a la facon dont je vais m´y prendre!

maxime450> je m´y connais pas du tout en livre, mais perso, j´avais c++ builder (de borland je crois! ou en tout cas c´est un truc dans le genre) mais la vieille version, et il était pas vraiment bien expliqué, pis y´avais pas les corrigés des exo...

jejej
jejej
Niveau 9
30 décembre 2005 à 13:16:51

Oh et en fait , en plus d´avoir fait des erreurs , j´ai dit n´importe quoi ^^

le principe serait plutot ça :
toujours ton SDL_Surface* sonic[9] , chargé de 0 à 8

un int current_anim = 0;

while( !q uit )
{
if( key[RIGHT] )
{
current_anim++;
if( current_anim > 8 )
current_anim = 0;
}

SDL_BlitSurface( sonic[current_anim] , ... );

SDL_Flip(screen);
}

comme ça ton sonic est affiche a chaque frame , et non quand on appuie sur le clavier ...

bon , un dernier truc , c´est que , si tu fais ça , ton sonic va changer d´animation beaucoup trop vite ... ( 40 fois par seconde quoi ^^ ) donc ça sera moche ...

en fait , je te conseille de recuperer le temps ecouler entre chaque frame , avec SDL_GetTicks(); dans un Uint32 time; par exemple
( genre :
Uint32 lastframe = SDL_GetTicks();

while( !q uit )
{
Uint32 currentframe = SDL_GetTicks();
time = currentframe-lastframe;
lastframe = currentframe;

et ensuite tu increments un compteur de temps par ´time´ quand on appuie sur right ... et tu fais en sorte que quand time atteint une certaine valeur ( je sais pas , 100 ms devrait etre pas mal ) on augemente ´current_anim´

ça sera la meme chose pour les deplacements dailleurs :)

j´espere que c´est comprehensible ^^

godrik
godrik
Niveau 30
30 décembre 2005 à 13:54:36

en fait ce que l´on fait souvent c´est que l´on découpe le moteur de jeu (deplacement des personnages, reseau , collisions...) du moteur d´affichage.
donc en fait, ce genre de probleme ne se poses jamais... :)

Lapintade
Lapintade
Niveau 30
30 décembre 2005 à 14:00:04

En effet, et c´est bien plus propre.

sangohan42
sangohan42
Niveau 9
30 décembre 2005 à 17:56:43

Je passe juste pour dire que notre équipe de modeleur 3d (pour la cinematique d´intro 3d) cherchent des programmeurs SDL pour un rpg 2d dbz ainsi que des graphistes si certains sont interessé je laissserais l´adresse du site ici pour vous montrer quelques screens du projet.

Sur ce bonne continuation c´est un très bon topic.

Metb59
Metb59
Niveau 35
30 décembre 2005 à 23:34:57

bonjour,

j´ai 15 ans et j´aimerais savoir s´il est possible d´apprendre la programmation, en plus de ma vie de lycéen (qui m´occupe bcp de temps), en plus de ma vie de famille, de mes amis.

merci.

PS : envoyez un mail si vous me répondez, c´est préférable, car je ne passe pas ma vie sur les forums ;)

kikou81
kikou81
Niveau 9
31 décembre 2005 à 12:08:17

Oui je pense que c´est possible...
Il te faut de la volonté et un peu de temps.Mais si tu as beaucoup de temps c´est mieux!!

J´ai commencé par apprendre l´html(ce n´est pas un languagez de "programmation") puis le Javascript qui ressemble un peu au c et maintenant j´apprend le c sur le site du zero:
http://www.siteduzero.com

En parlant de c j´ai deux questions:
1Dans le site du zero "m@teo21" dit que plus tard dans son tuto on apprendra a faire des programme en mode fenetre.
Et j´aimerais savoir pourquoi c´est "difficile" de creer un prog en mode fenetre?

2Et ce que si je fai un programe(tout con ); je le compile et je prend l´executable sur ma clé usb, je le met sur un autre pc et il s´execute pareil que sur mon pc?

Merci a tous!!

:bye:

sangohan42
sangohan42
Niveau 9
31 décembre 2005 à 14:14:02

Pour la 2, ca depend de ton prog si il y a des image il faut faire un zip ac l´exe et les image et les mettre sur ta cle

Metb59
Metb59
Niveau 35
01 janvier 2006 à 13:36:46

merci pour le lien

dynoplasmma
dynoplasmma
Niveau 9
01 janvier 2006 à 13:52:59

kikou81 :
en mode console, l´ecran noir avec lecriture blanche, tu prend que lexecutable et ca marche.

par contre comme te la dit sangohan, avec des images comme avec SDL, avec l´executable seule : impossible de pouvoir tester ton programme.

dnob700
dnob700
Niveau 10
01 janvier 2006 à 19:29:16

Pour la question 1, faire un programme en mode fenêtre c´est difficile car contrairement à un programme en mode console, tu ne sais pas dans quel ordre vont s´exécuter les fonctions de ton programme : celà dépend de là où vas cliquer l´utilisateur. Il faut donc programmer différement pour prendre ce phénomène enc ompte. Globalement tout se base sur la gestion de "message" que recoit ton programme et qui lui indique ce que fait l´utilisateur. Même si ce n´est pas très dur, il y a pas mal de chose à faire et à comprendre et il vaut mieux est déjà à l´aide avec le reste du langage avant de s´y mettre.

Lapintade
Lapintade
Niveau 30
01 janvier 2006 à 19:35:18

"j´ai 15 ans et j´aimerais savoir s´il est possible d´apprendre la programmation"

Ca demande du temps c´est clair. Ca depends donc beaucoup du temps que tu peux y mettre et de ta motivation.

"car je ne passe pas ma vie sur les forums ;) "

Quand on pose une question sur un forum, la moindre des choses c´est de repasser voir ces reponses.

kikou81
kikou81
Niveau 9
01 janvier 2006 à 21:18:50

Aussi j´ai une autre petite question(j´espere que je ne vous embete pas trop avec mes questions);

Il y a t-il en C (je travail avec dev c++) une fonction permetant d´effacer l´ecran d´un programme en mode console.

Parce que quand je fais un programme je trouve cela assez moche que tout s´affiche a la suite...

:merci:

dnob700
dnob700
Niveau 10
01 janvier 2006 à 23:27:22

sous windows :

system("cls");
sous linux :
system("clear");

il faut utiliser stdlib.h.

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Internet
  • Macintosh
  • Création de Jeux
  • Linux
  • Programmation
  • Steam Deck
  • Hardware
La vidéo du moment