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

inconnu[pure]
inconnu[pure]
Niveau 6
26 janvier 2005 à 12:30:18

JYY comme tu es là tu sais comment en SDL mettre un titre à l´application.

JeanYvesYves
JeanYvesYves
Niveau 10
26 janvier 2005 à 12:32:51

inconnu[pure] > Voila ton bonheur :)

http://sdldoc.csn.ul.ie/sdlwmsetcaption.php

jejej
jejej
Niveau 9
26 janvier 2005 à 12:35:39

A propos de " saleté "
tu écris dans ton tutorial , JeanYvesYves, que goto == programmer salement
mais , dans mon jeu - tu as vu la version beta ^^ - je souhaite rajouter un menu de depart , avec des choix :
1 -> jeu direct
2 -> options
3 ou echap -> quitter

donc au debut j´ai une boucle qui attend une de ces valeurs
mais pour quitter la boucle , je suis obligé de mettre
goto JEU pour le 1 par exemple , ou goto OPTIONS si 2 , et goto END si 3 ou escape ?
ou j´ai un autre moyen ?
- enfin , tant que ca marche . .. -

sinon , j´ai une autre question ^^

J´ai donc un ecran titre au lancement du programme , mais si j´appuie sur 2 , qui devrait lancer le menu des options , l´ecran titre est tjs la - en fait rien ne change-
je pense que le probleme vient du fait que l´ecran titre reste affiché au dessus de l´ecran des options , mais je suis pas sur . .. une idée quelqu´un ? :)

JeanYvesYves
JeanYvesYves
Niveau 10
26 janvier 2005 à 12:37:17

attends, C la pause bouffe, les collegues partent sans moi, je te réponds a 14h :)

inconnu[pure]
inconnu[pure]
Niveau 6
26 janvier 2005 à 12:40:01

jejej=>Tu programmes avec quel librairie

jejej
jejej
Niveau 9
26 janvier 2005 à 12:44:39

C´est pas urgent ^^
En revanche , des potes disent qu´ils peuvent faire mieux en 15 minutes avec The Game Factory . .. Pour y avoir un peu touché , je sais que c´est vrai , TGF est vraiment bien fait , et offre vraiment pas mal de choix . ..
en tout cas , on peut mettre des compteurs et des animations en quelques cliques , ce qui est loin d´etre le cas avec la SDL . ..
Alors certes , ce qui m´interesse n´est pas le jeu en lui meme ( cliquer comme un fou sur ctrl :honte: ) mais bien la programmation qu´il y a derriere , mais c´est quand même décevant de mettre un mois à réaliser un jeu qui prendrait 1 heure maximum avec TGF . ..

Donc , ma question est :
On peut faire quoi ( en jeu ) avec la SDL/ C++ que l´on ne peut faire avec TGF ?
- sans parler de 3d , parceque la il faut utiliser opengl... -

jejej
jejej
Niveau 9
26 janvier 2005 à 12:45:42

inconnu[pure] je programme en C++ , en utilisant la librairie SDL ( 1.28 je crois )
et je vais utiliser fmod pour le son et SDL_TTF pour les mots . ..

inconnu[pure]
inconnu[pure]
Niveau 6
26 janvier 2005 à 12:48:15

Quand tu seras forts en c++ avec la SDL en ajoutant un autre librairie tu pourras faire un mmorpg mais dans longtemps.
Je vais reflichire pendant que je déjeune.
@++

JeanYvesYves
JeanYvesYves
Niveau 10
26 janvier 2005 à 13:25:57

jejej >
tu peux faire une fonction " jeu" et faire un " return" dedans quand tu veux quitter :)
pareil pour options :)
apres, ton soucis de l´écran titre qui apparait, faut voir : ) ça doit se trouver.

En ce qui concerne le débat de game maker, rpg maker, ou ce genre de choses :
en effet, c´est des logiciels tres astucieux qui contiennent déja des moteurs qui gerent tout.

SDL n´est pas un moteur mais une librairie graphique 2D bas niveau : elle sait faire uniquement les actions de base, et te laisse programmer toute la suite.
Apres, soit tu programmes des surcouches, spécifiques a tes besoins, et tu te fais donc un " monsdlspecifique.h"
soit tu recuperes des moteurs graphiques déja tout faits, haut niveau, et a ce moment la, tu étales gamemaker et autres.

Un exemple : Irrlicht est un moteur 3D qui te permet, en 20 lignes de codes C++ a peine, d´afficher un bonhomme 3D de Quake2 qui marche.
En 20 lignes a peine tu peux également te balader dans un monde de quake3 que tu charges...
ça c´est une lib haut niveau ! ça permet, en peu de lignes, de jouer :)

exemple ( pas exact, mais juste pour te donner une idée)

  1. include < moteur3d.h>

int main()
{
initialise(1024,768);
map* m = chargemap("arena_stage.bsp");
perso* p = chargeperso("homersimpson.q3");
placeperso(m,p, 100,100,100); / / place en x,y,z
activemouvementFPS();
activecollisionsmurs_optimisées();
joue();
return 0;
}

voila comment marche vite fait un moteur :)
qq lignes et ça baigne... et qualité de quake3!
apres évidemment, tout dépend si tu veux des résultats immédiats, ou de l´algorithmique :)

les 2 sont bien ! si tu te sens pret, essaie un moteur ! mais garde aussi la notion d´algo sous la main.
car sans programmer : tu ne peux pas faire d´IA personnalisée par exemple, si gamemaker n´est pas prévu pour le réseau, tes potes sont baisés, alors que toi, en C++, un #include de + et tu roules :)

jejej
jejej
Niveau 9
26 janvier 2005 à 13:38:12

Pour mon probleme d´affichage , ca vient de moi ^^
j´avais ecrit vite fait system("pause");
pour tester avant de dodo , et j´ai oublie de l´enlever apres :honte:
maintenant ca marche :p)

En ce qui concerne MonMoteur2DSDL , je crois que g pas bien compris le principe . ..
bon je vais poster le code , vous allez comprendre l´ampleur de la catastrophe ^^ . ..
en fait , mon code n´est ni reutilisable , ni optimise , et tiens dans un seul fichier source . .. J´ai pas compris comment faire des . h encore ( par exemple , j´ai essaye de séparer chargement et affichage , mais si je met SDL_LoadBMP . .. il me dit que cette fonction n´est pas définie , et si je rajoute #include SDL etc , il me dit que certaines fonctions sont " multiples defines"
bah oui g inclut deux fois sdl , c peut etre pour ca ?

jejej
jejej
Niveau 9
26 janvier 2005 à 13:42:25

http://rafb.net/paste/results/arTBzm25.html

bon , c´est pas fini , vous noterez la précision et l´importance de mes commentaires . ..

pour l´instant , je n´ai prévu aucun controle au clavier encore , mais il faut absolument que je me refasse un code " plsu propre " pour pouvoir vraiment avancer . .. mais je sais pas comemnt faire , c´est la seconde fois que je réecri le code :snif:

jejej
jejej
Niveau 9
26 janvier 2005 à 13:47:50

Parceque la , ca va encore , le code est court , mais je compte rajouter de la musique , et des sprites animés , et la ca va plus etre gérable ^^

JeanYvesYves
JeanYvesYves
Niveau 10
26 janvier 2005 à 14:11:03

justement il faut que tu organises bien tes données dans de bonnes structures ou classes :)

JeanYvesYves
JeanYvesYves
Niveau 10
26 janvier 2005 à 14:16:54

ce que je voulais dire pour les moteurs :

c´est que SDL est une lib graphique bas niveau : c´est a dire, elle t´aide a afficher des trucs a l´écran : mais c´est tout !

mais il existe des trucs, autres qeu SDL, qui sont dit " haut niveau", et, en quelques lignes a peine, te permettent de faire un truc puissant : l´exemple extreme que je te montre plus haut ( avec la fonction activemouvementFPS) serait un moteur 3D spécilisé dans les FPS, tu vois ce que je veux dire ?

( de tels trucs existent : par exemple, Irrlicht est un moteur 3D spécialisé dans les FPS)

jejej
jejej
Niveau 9
26 janvier 2005 à 14:17:12

´comprends rien à ces machins :(
J´ai déjà acheté deux livres sur le c++ , et lu plusieurs tutos dont celui de C Casteyde sur le net ( looooooong ) Et a tous les coups je reste bloqué ici :snif:

JEUVIDEODAR
JEUVIDEODAR
Niveau 9
26 janvier 2005 à 14:52:05

salut, ton tuto si dessous et ben je connais plein de gens qui lont fait mais moi sa me met ce message d´erreur quand je veu le compliler:

[Linker error] undefined reference to `WinMain@16´

E:\c++\devcpp\projets\jasonleboss\Makefile.win [Build Error] [Projet1.exe] Error 1

et voici le code

/ * from http://nehe.gamedev.net modified by Fvirtman */

  1. include < windows.h>
  2. include < GL/gl.h>
  3. include < GL/glu.h>
  4. include < SDL/SDL.h>
  5. include < math.h>
  1. pragma comment( lib, " opengl32.lib" )
  2. pragma comment( lib, " glu32.lib" )

SDL_Surface *surface;
float e=0.0;

void Quit( int returnCode )
{
SDL_Quit( ) ;
exit( returnCode ) ;
}

void handleKeyPress( SDL_keysym *keysym )
{
switch ( keysym->sym )
{
case SDLK_ESCAPE:
Quit( 0 ) ;
break;
default:
break;
}
return;
}

int initGL( GLvoid )
{
/ / init
glShadeModel( GL_SMOOTH ) ;
glClearColor( 0.0f, 0.0f, 0.0f, 0.0f ) ;
glClearDepth( 1.0f ) ;
glEnable( GL_DEPTH_TEST ) ;
glDepthFunc( GL_LEQUAL ) ;
glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST ) ;
/ / cadrage
glViewport( 0, 0,1024,768);
glMatrixMode( GL_PROJECTION ) ;
glLoadIdentity( ) ;
gluPerspective( 45.0f, 4.0/3.0, 1.0f, 100.0f ) ;
return 1;
}

int drawGLScene( GLvoid )
{
e+=(float)0.005;
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT ) ;
glMatrixMode( GL_MODELVIEW ) ;
glLoadIdentity();

gluLookAt(0,0,0,0,0,-1,0,1,0);

glTranslatef( -1.5f, 0.0f, -6.0f ) ;
glBegin( GL_TRIANGLES ) ;
glVertex3f( 0.0f, 1.0f, e ) ;
glVertex3f( -1.0f, -1.0f, e ) ;
glVertex3f( 1.0f, -1.0f, e ) ;
glEnd( ) ;

glTranslatef( 3.0f, 0.0f, 0.0f ) ;
glBegin( GL_QUADS ) ;
glVertex3f( -1.0f, 1.0f, e ) ;
glVertex3f( 1.0f, 1.0f, e ) ;
glVertex3f( 1.0f, -1.0f, e ) ;
glVertex3f( -1.0f, -1.0f, e ) ;
glEnd( ) ;
SDL_GL_SwapBuffers( ) ;
return 1;
}

int main( int argc, char **argv )
{
int done = FALSE;
SDL_Event event;
int isActive = TRUE;
SDL_Init(SDL_INIT_VIDEO);

surface =
SDL_SetVideoMode(1024,768,32,SDL_HWSURFACE|SDL_OPE
NGL);
if ( ! surface )
{
fprintf( stderr, " Video mode set failed: %s\n", SDL_GetError( ) ) ;
Quit( 1 ) ;
}
initGL( ) ;
while ( ! done )
{
while ( SDL_PollEvent( & ) )
{
switch( event.type )
{
case SDL_KEYDOWN:
handleKeyPress( &.key.keysym ) ;
break;
case SDL_QUIT:
done = 1;
break;
default:
break;
}
}
drawGLScene( ) ;
}
Quit( 0 ) ;
return( 0 ) ;
}

LGV
LGV
Niveau 28
26 janvier 2005 à 14:59:19

t´as fait un projet windows ( point d´entree WinMain) et pas un projet console ( point d´entree main).

cobradu94
cobradu94
Niveau 6
26 janvier 2005 à 15:08:14

j´aime bien le jasonleboss lol.
Sinon je sais pas pk sa fait cette erreur

expert2424
expert2424
Niveau 8
26 janvier 2005 à 15:32:10

omg ce tutorial de JYY:
1.10. Passage par copie et par référence. a lair impossible rien qu´en jetant un coup d´oeil c´est impossible

JeanYvesYves
JeanYvesYves
Niveau 10
26 janvier 2005 à 15:33:56

rien n´est impossible :)

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