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++

Koyo-K
Koyo-K
Niveau 9
10 août 2004 à 01:37:12

SDL, QT ou WxWidgets pour commencer ? Je me suis renseigne mais les debats tournaient en rond.

Koyo-K
Koyo-K
Niveau 9
10 août 2004 à 02:43:11

Je me demande si je peux me permettre de faire le saut du graphique parce que j´en suis au debut du chap des tableaux et quand je vois toutes les instructions qu´il faut utiliser dans une UI ca me fait encore peur et je suis bien loin de toutes ces choses.
Ca doit etre complique de gerer le clic de boutons, ajouter des boutons radio a un choix etc... ( :ouch2: ) .

JeanYvesYves
JeanYvesYves
Niveau 10
10 août 2004 à 08:27:20

ça c´est si tu choisis QT ou WxWidget qui permettent de faire des fenetres a bouton et tout
SDL est différent : il te permet de faire une seule fenetre, sans bouton, que tu mets généralement en plein écran
on peut dire " vite fait" que c´est une " console graphique"
et c´est idéal pour les jeux

anagram_
anagram_
Niveau 3
10 août 2004 à 11:56:16

Bjr,

J´ai suivi vos tutos ( très bien faits) mais je crois qu´il y a un chti bug.
Dans la partie SDL ( Graphisme 2D) " Afficher une grosse image qui bouge", la 2e forme de LoadBMP m´affiche tout sauf une image. J´ai des bandes jaunes qui se mettent à l´écran.

SDL_Surface* LoadBMP(char* fichier) / / 2eme forme
{
SDL_Surface* f = SDL_LoadBMP("image.bmp"); // charge l´image dans f en RAM
SDL_Surface* surface=SDL_CreateRGBSurface(SDL_HWSURFACE, 1024, 768, 32, 0, 0, 0, 0); / / cree une image en VRAM
SDL_Rect R=Rect(0,0,f->w,f->h);
SDL_BlitSurface(f,NULL,firstscreen,&); // copie l´image f de la RAM vers firstscreen en VRAM
SDL_FreeSurface(f); / / supprime la surface f : inutile maintenant --> libere la mémoire
return surface;
}

Mais ça vient ptre de ma carte graphique. La 3e forme fonctionne très bien.
Vos tutos sont vraiment parfaits pour bien apprendre SDL ! Je vais passer du temps dessus ; )
@+

JeanYvesYves
JeanYvesYves
Niveau 10
10 août 2004 à 12:15:48

la ligne apres :
SDL_CreateRGBSurface

essaie de regarder si surface ne vaut pas NULL

ça doit venir du fait que ta carte graphique n´a plus de mémoire pour la charger ( grosse image)

de toute façon, la 3e forme est l´idéale : car elle teste si tu as de la mémoire, et s´il n´y en a plus, elle y met en RAM :)
Alors que la 2e forme ne teste rien.

anagram_
anagram_
Niveau 3
10 août 2004 à 13:15:13

J´ai retesté cette 2e version après avoir testé la balle qui rebondit ( avec en fond le globe + fusée).
Maintenant, j´ai l´image avec la fusée en fond qui défile. Et en plein milieu une grande barre jaune. Ce n´est pas l´image appelée.
Je ne suis vraiment pas expert mais je pense que l´image de la fusée est restée dans la mémoire de la carte graphique et étant donné qu´il n´arrive pas à charger l´image voulue, il affiche celle là.
Le pointeur doit sûrement valoir null. En lançant le programme par interpreteur de commandes et en rajoutant cette ligne
if(surface == NULL) fprintf(stdout,"null");
rien ne s´affiche dans la console.

Enfin, c´est pas grave du tout car ce n´est pas la version optimisée.
Merci pour ton aide précieuse !

anagram_
anagram_
Niveau 3
10 août 2004 à 13:26:07

Euh, j´ai une dernière question.
Dans le dernier exemple, pour ne pas que la balle laisse une trainée derrière, on raffiche le fond ( image de la fusée) avant.
Est-il possible de définir une couleur de fond que je raffiche au lieu d´afficher une image de fond ?

Ptival
Ptival
Niveau 10
10 août 2004 à 13:47:27

Pour la couleur de fond je sais plus trop désolé, mais pour ton fprintf(stdout, " null");, la SDL renvoie le stdout dans un fichier stdout.txt que tu trouveras dans le dossier de ton exe, elle n´écrit pas dans la Console...(En tout cas pas chez moi ^^)

anagram_
anagram_
Niveau 3
10 août 2004 à 13:57:45

Bien vu ; )
C´est bizarre ça . .. Ben avec ce code :
SDL_Surface* f = SDL_LoadBMP("image2.bmp");
SDL_Surface* surface=SDL_CreateRGBSurface(SDL_HWSURFACE, 1024, 768, 32, 0, 0, 0, 0);
if(surface == NULL) fprintf(stdout,"null");
else fprintf(stdout,"pas null");

elle n´est pas null. Je n´ai pas compris ce qui se passe . .. Mais il y a une meilleure version.
Merci ! !!

JeanYvesYves
JeanYvesYves
Niveau 10
10 août 2004 à 15:06:52

wé, je ne sias pas non plus ce qu´il se passe, vraisemblablement la mémoire mais bon.
Colorer une surface n´est pas forcément natif : il faudrait locker la surface ( la remonter en RAM) et la peindre en rouge avec un memecopy, puis la remonter en VRAM...
mais bon...
le mieux, tu prépares un petit BMP de carrelage rouge ou d´une autre couleur, et tu tapisses !

anagram_
anagram_
Niveau 3
10 août 2004 à 15:30:41

Le BMP fera l´affaire ; )

MMMMEEEEEEERRRRRCCCIIIIIIIIIIIIIIIIIIIII ! !!

Matsangoku
Matsangoku
Niveau 10
10 août 2004 à 23:21:05

je vien de télécharger dev-C++ é g trouvé un tuto pour faire un HELLO WORLD dc g ouvert dev é la g tapé ce qui on mi é g enregistré mé je ne sé pa se que sa fé car quand jouvre se que g enregistré sa me rouvre dev av que du code alors je ne sé pa comment voir se que g fé aider moi!!!

JeanYvesYves
JeanYvesYves
Niveau 10
10 août 2004 à 23:22:34

tu as une option pour compiler ( build) et lancer dans dev C++

Matsangoku
Matsangoku
Niveau 10
11 août 2004 à 10:59:29

merci!

Matsangoku
Matsangoku
Niveau 10
11 août 2004 à 11:29:51

sinon ca doit faire quoi un hello world car g fé compilé puis run é la sa me réduit ma fénétre é la rouvre estce normale??? é sinon pk ca fé ca ? ???

JeanYvesYves
JeanYvesYves
Niveau 10
11 août 2004 à 12:04:16

normalement, ça t´ouvre une fenetre noire, ça te marque " hello world" dedans :)

Matsangoku
Matsangoku
Niveau 10
11 août 2004 à 12:51:02

pourtant quand je fé compilé ya marké 0 ereur.
ken on ouvre un new projet il fo mettre quoi?
windows application, console aplication, win main()project, dll, empty project?
lekel dé tt????

Ruffi
Ruffi
Niveau 9
11 août 2004 à 12:58:04

Pour un hello world : console aplication

Matsangoku
Matsangoku
Niveau 10
11 août 2004 à 13:20:20

merci bq!

overkill666
overkill666
Niveau 8
11 août 2004 à 13:37:46

Pour un simple hello world il n´est pas utile de lancer un projet. Tu peux faire nouveau fichier source ( Fichier=>Nouveau=>Fichier source ou alors tu fais ctrl+n).

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