JEU DE VAISSEAUX EN OPENGL AVEC INTERFACE RÉSEAU

Arnaud16022 Messages postés 1329 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 16 juin 2010 - 21 mai 2005 à 20:57
Bietz Messages postés 10 Date d'inscription jeudi 15 septembre 2005 Statut Membre Dernière intervention 21 avril 2006 - 7 juin 2006 à 13:54
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/31521-jeu-de-vaisseaux-en-opengl-avec-interface-reseau

Bietz Messages postés 10 Date d'inscription jeudi 15 septembre 2005 Statut Membre Dernière intervention 21 avril 2006 3
7 juin 2006 à 13:54
Bravo à tous pour ce jeu!!! - 10/10
En tout cas il y a certainement encore des choses à améliorer, mais je sais que vous êtes bien occupés...
Proposition: mettre des vitesses, parce que j'aime pas les jeux de voiture sans vitesses lol (donc il faudra mettre également du son et un compte-tours)

dcoz, pour l'instant je préfère ton GT pour calc.. (lol) et bien joué pour edit3D!!

Comme j'ai aussi pensé de faire un jeu de voitures, et que j'ai beaucoup cherché des moteurs de jeu de voitures, je pense que votre source me sera très utile pour m'aider (je suis encore +/- débutant en 3D).

p.s. Je pense que vous pourriez mettre un .vcproj ou quoi que ce soit dans le projet
mindslight Messages postés 87 Date d'inscription mercredi 1 juin 2005 Statut Membre Dernière intervention 29 octobre 2009
25 nov. 2005 à 13:39
desolé pour la redondance de ca merite.
mindslight Messages postés 87 Date d'inscription mercredi 1 juin 2005 Statut Membre Dernière intervention 29 octobre 2009
25 nov. 2005 à 13:34
moi je trouve le programme sympa.
de plus, faire un prog en étudiant en école d'ingenieur ou en école
sup (comme moi), c'est pas évident, finie la belle époque du lycée,
et des horaires souples!

et rien que pour ça ca mérite ca mérite un 10/10.

je compatie à ta douleur davidcoz, j'ai déja eu les mêmes
pb sur un projet, avec des messages du type:
"c'est quoi l'intéret?"

ca fait plaîsir quant on veut juste faire partager son savoir,
quelque que soit son niveau.
c'est le geste qui est important.

c'est ca pour moi cppfrance, l'échange. ;-)
cs_bloom1 Messages postés 328 Date d'inscription jeudi 26 août 2004 Statut Membre Dernière intervention 8 mars 2007
1 août 2005 à 18:18
Bah j'ai essayé de compiler avec dev-cpp, full erreurs, j'ai pas vu le nombre mais dans VC++ 6.0, 102 erreur !!!
cs_erazor Messages postés 85 Date d'inscription jeudi 7 février 2002 Statut Membre Dernière intervention 8 février 2007
24 mai 2005 à 11:33
lol tient j'en profite pour dire salut a dleutozen ;-)
et bien et bien, mais ou sont passés les textures? (oui je sais je ferais mieux de me la fermer avec mon projet de rts qui n'avance pas, hein dleutozen ;-)

bon sans ca moi je dis bravo parce que je sais très bien le peu de temps dont dispose un élève en école d'ingé (zavez qu'a demander a dleutozen, il est censé être le deuxieme coder de mon projet de rts...!-}

donc je ne jette pas la pierre et je dis juste continuez comme ca!
Funto66 Messages postés 1267 Date d'inscription mercredi 1 janvier 2003 Statut Membre Dernière intervention 28 février 2007 4
23 mai 2005 à 20:17
C'est pas Funta mais Funto non mais !

PS : moi aussi jveux bien le voir ce code Kirua ;)
davidcoz Messages postés 8 Date d'inscription samedi 5 février 2005 Statut Membre Dernière intervention 23 mai 2005
23 mai 2005 à 13:32
Arnaud, merci pour tes remarques détaillées ;)

Pour les collisions, je sélectionne déjà les polygones proches de moi ( avec les Octrees ), puis si la position du vaisseau est trop proche d'un polygone, je le translate selon la normale du polygone en question.
Il y a plusieurs problèmes : déjà si on va trop vite ça marche plus, ensuite lorsqu'il y a plusieurs polygones concernés, ça peut faire des trucs inattendus.
Pour le premier point ça devrait aller ( c'est ce que tu expliques Arnaud, nan ? ), pour le deuxième ça va être chaud :)


Sinon pour la transparence, le tri est vraiment nécessaire ?
Moi je comptais activer le Z buffer, afficher ttes les faces normales, désactiver le Z buffer, et afficher les faces transparentes. Mais p'tet un tri sur les faces transparentes est nécessaire, faut que je teste !

>pour la transparence: bon ca passe encore, moi je ne l'ai >remarqué pasque j'y ai fait attention,
C'est parce que j'ai essayé de limiter la casse lol . Les faces de la route où sont toutes les faces transparentes sont affichées avant les faces de terrain. Donc en général ça passe, vu qu'on est à l'intérieur de la route ( quand les collisions fonctionnent ;)

Pour le frustum culling, ouais, ce truc là a été fait à l'arrache, je crois que j'assimile juste les vaisseaux à des points dans ce cas, ce qui est assez regretable !

Pour la Skybox, merci pour les infos, je vais essayer ça !


Sinon Kirua et Funta, vos avis sont notés, ça ne sera donc pas GLUT ;)
Kirua, ça m'intéresse bien ton code, tu l'as mis sur code source ? Sinon si ça te dérange pas, envoie le moi à coz.david@caramail.com
cs_Kirua Messages postés 3006 Date d'inscription dimanche 14 avril 2002 Statut Membre Dernière intervention 31 décembre 2008
22 mai 2005 à 22:32
J'appuie funto pour le choix de GLFW. J'ai un framework assez propre et orienté objet si tu le désires: kirua AT coder-studio DOT com. Ça coûte rien d'y jeter un oeil, je te demande pas d'être conquis ;)

Et de fait: glut, NON!
cupcicm Messages postés 3 Date d'inscription vendredi 10 décembre 2004 Statut Membre Dernière intervention 22 mai 2005
22 mai 2005 à 21:55
Je réponds vite fait juste pour le réseau : la gestion réseau était bien présente, mais j'avais oublié de dire comment on s'en servait :)
Maintenant j'ai rajouté un truc pour que ce soit plus facile, et qu'on puisse activer ou désactiver le jeu en réseau facilement.

Donc il faut télécharger le setup.zip et maintenant il y a un beau readme qui explique bien comment on fait dans ./Network
Le réseau marche donc, mais pour l'instant c'est plutôt expérimental (on ne peut jouer qu'à deux, etc...)
Arnaud16022 Messages postés 1329 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 16 juin 2010 2
22 mai 2005 à 20:56
j'ai écrit tou ca moi? ^^
encore un truc, sisi: pour la skybox on voit les aretes, C pas beau, ca ruine l'illusion.
t'as 2 possiblités:
soit tu effaces ton écran avec du bleu foncé au lieu du noir histoire que ca se voie pas trop
soit, qd tu charges les textures de la skybox, tu rajoutes
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_S,GL_CLAMP_TO_EDGE);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_T,GL_CLAMP_TO_EDGE);
Attention le clamp-to-edge n'est pas défini dans toutes les versions du header openGL, il faut rajouter
#ifndef GL_CLAMP_TO_EDGE
#define GL_CLAMP_TO_EDGE 0x812F
#endif

avant
Arnaud16022 Messages postés 1329 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 16 juin 2010 2
22 mai 2005 à 20:48
mdr
les gars chuis désolé ^^
en me relisant effectivement j'y suis allé un peu fort....
toutes mes excuses... mais, comme le disait Funto, c'est que je m'attendais, d'apres les screenshots, a un truc vraiement mieux...
Bon j'ai quelques petits ajouts a faire.
pour le réseau, qu'en est-il? c'est dans le titre de la source mais nulle part dans le prog...
pour Linux: oué bah c sur, si quelqu'un allait demander de la portabilité ca pouvait etre QUE funto mdr; la dessus je ne ferai pas le moindre commentaire, je vais me faire incendier sinon lol
pour GLUT: je l'en supplie, NON! a genoux s'il le faut ^^ sérieux glut ca va pour les p'tites démos et les progets de débutants mais on peut meme pas appuyer sur 2 touches a la fois...last but not least, on perd une grande partie du controle de la source, mieux vaut utiliser wxWidgets ou qqch comme ca, Funto a fait un tuto la dessus il sera ravi de vous filer l'url
Pour les collisions: ->dletozeun: heu si, c'est tres compilqué... si on veut bien le faire du moins. ya toujours une solution simple: on garde les tests qui sont déja faits, et on rajoute uun test pour savoir si le segment entre la position actuelle et la derniere coupe le polygone. c'est pas top mais ca devrait marcher dans ce cas. Mieux mais plus dur a coder et un peu plus lent: heu ben C un peu longuet a expliquer ici, yen avait 20 pages ^^
printf/scanf: hum. en dernier recours... je suis pas fan. C comme vouc voulez, mais quitte a faire une interface autant qu'elle soit belle
Voila voila...
ah si, dernier point: pour la transparence: bon ca passe encore, moi je ne l'ai remarqué pasque j'y ai fait attention, sinon on le voit pas trop, mais il suffit de dessiner les faces non transparentes, de faire une liste des polygones transparents a afficher, ded les trier, et de les afficher, C pas si dur, seul le tri est embetant, mais ya déja des fonctions toutes faites pour ca.
et une derniere chose (apres j'arrete promis): le frustum culling n'est pas au point, sisi , les autres vaisseaux apparaissent bizarrement l'écran, un peu trop tard.doit y avoir un pb de bounding box ou d'échelle
bon en fait j'arrete pas: Marco Monster a fait un modele de X-Wing, pas bcp de polygones, texturé et tout...
pour le son moi je dis C pas la peine pour le moment ca vient a la fin (je pense)
pour l'AI... c'est bizarre...t'as un vaisseau qui va tout vite et les autres se trainent..
pas de décompte des tours (encore uun truc qui vient a la fin...)
et je voulais encore dire qqch mais je sé plus quoi ;p
maintenant C tout mdr
++
ad
cupcicm Messages postés 3 Date d'inscription vendredi 10 décembre 2004 Statut Membre Dernière intervention 22 mai 2005
22 mai 2005 à 20:28
GLFW ? connais pas. On va se renseigner.
Merci pour l'info en tous cas.
Funto66 Messages postés 1267 Date d'inscription mercredi 1 janvier 2003 Statut Membre Dernière intervention 28 février 2007 4
22 mai 2005 à 19:58
Plutôt que GLUT perso j'ai une préférence pour GLFW (pas de glutMainLoop(), un chargeur de TGA intégré, pas besoin de DLL...), enfin c'est chacun comme il veut.

Après, temporairement c'est qd même possible de se passer de menus : que l'on utilise OpenGL ou pas ces bons vieux printf et scanf existent toujours ;)
cupcicm Messages postés 3 Date d'inscription vendredi 10 décembre 2004 Statut Membre Dernière intervention 22 mai 2005
22 mai 2005 à 19:36
Merci pour les compliments

>>L'editeur aussi! mais dommage que ce soit le terrain qui s'adapte a la route et non l'inverse
C'est vrai que de ce côté là il y a parfois quelques problèmes (la route est décalée du terrain, etc... On y travaille on y travaille. C'est pas notre priorité mais on y pense :)
Sinon au niveau des collisions il faut vraiment qu'on fasse quelque chose, on a même un peu une idée de comment améliorer la chose.
>> pour des reliefs assez compliqués avec les denivellations importantes on obtient des trucs moches...
Oui bon c'est vrai il faut êter gentil avec lui parce que sinon des fois ...

Au niveau de la structuration du programme, c'est en cours, il y a deja un début avec la classe "Game" dans la dernière version. Il est vrai qu'il ne nous manque plus que la GUI, mais il faut qu'on fabrique tous les menus et tout nous même et pour l'instant il y a plein d'autres trucs qui marchent moins bien :p
Cependant je pense que dans un futur proche nous allons mettre un menu "basique" en place parce que pour activer/désactiver le réseau notamment c'est chaud sans menu.

Le support Linux. On y a pensé. On a pas commencé par ça parce que sur trois on a que un demi linuxien, et parce qu'on nous a offert un beau CD de Visual Studio, mais on y pense. On va passer avec GLUT bientôt et c'est portable. Par contre au niveau de la librairie réseau, on n'a pas encore trop prospecté (je sais même pas si celle qu'on a utilisé fonctionne sous Linux). Mais il ne devrait pas y avoir trop de problèmes de ce côté la. Enfin voila, ça non plus c'est pas notre priorité numéro 1 mais c'est prévu :)
Funto66 Messages postés 1267 Date d'inscription mercredi 1 janvier 2003 Statut Membre Dernière intervention 28 février 2007 4
22 mai 2005 à 17:55
Ah si : jveux un support Linux ! lol

PS : c'est vrai que le serveur chie j'ai eu le même pb que dleutozeun...
Funto66 Messages postés 1267 Date d'inscription mercredi 1 janvier 2003 Statut Membre Dernière intervention 28 février 2007 4
22 mai 2005 à 17:53
Lol c'est vrai qu'Arnaud y est allé un peu fort mais c'est juste parce qu'il s'attendait à un truc de superbe, je ne pense pas que ça doive se prendre comme un reproche mais plutôt comme un compliment, il vous considère comme capables de faire mieux ;) (ce que d'ailleurs vous avez prévu de faire ^^).

Sinon ben personnellement je trouve que le jeu va bien avec cette ambiance Star Wars dont tout le monde parle partout ces temps-ci lol
Rajouter le texturage des modèles ça ne doit pas être le + dur, pour la GUI peut-être qu'il faudra réorganiser le code, pour que le jeu puisse être dans différents états (menu principal, pause, game over...).
D'autant plus que pour un jeu qui veut faire du réseau ça m'apparaît comme indispensable ^^

Après, rien d'autre à rajouter que ce qu'a dit Arnaud...
dletozeun Messages postés 546 Date d'inscription vendredi 13 février 2004 Statut Membre Dernière intervention 9 janvier 2008 1
22 mai 2005 à 16:38
raaah!! (c pas apres vous que je rale c apres le serveur qui a planté quand j'ai envoyé mon post!)

Superbe projet!!
C franchement du beau boulot

Les collisions sont bien gérées mais il faudrait en effet faire qqchose kan on sort de la piste!
Le moteur physique est vraiment bien!

L'editeur aussi! mais dommage que ce soit le terrain qui s'adapte a la route et non l'inverse ( a moins que ca vienne de moi.. vu que je sais pas utliser tout les param de l'editeur) parce que des fois pour des reliefs assez compliqués avec les denivellations importantes on obtient des trucs moches...

Bonne continuation! ;D

Arnaud16022-> sans vouloir te vexer, vas y doucement dans tes posts (tu a tout a fait raison mais tu exprimes tes idées de facon trop agressive) c'est pas parce que tu es une star en opengl que tu peux te le permettre
dletozeun Messages postés 546 Date d'inscription vendredi 13 février 2004 Statut Membre Dernière intervention 9 janvier 2008 1
22 mai 2005 à 16:29
superbe projet! :D

Les collisions sont pas mal a part kan on sort du circuit masi bon ca doit pas etre le plus compliqué...

L'editeur est vraiment bien! domma ge par contre que ce soit le terrain qui s'adapte a la route et pas l'inverse parce que des fois pour des reliefs assez compliqués on obtient des trucs moche...
mais bon ca viens peut etre de moi vu que je sais pas m'en servir totalement!

beau boulot! continuez comme ca!

Arnaud16022-> sans vouloir te vexer va y doucement dans les commentaires ( tu as tout a fait raison mais tu l'exprime de facon agressive) c pas parce que tu es une star en opengl que tu peux te le permettre
Arnaud16022 Messages postés 1329 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 16 juin 2010 2
22 mai 2005 à 14:29
au fait qu'en est-il de l'interface réseau? je n'ai rien vu de tel... comment on fait pour jouer a plusieurs sur un lan?
davidcoz Messages postés 8 Date d'inscription samedi 5 février 2005 Statut Membre Dernière intervention 23 mai 2005
22 mai 2005 à 14:09
Merci pour vos avis !

> alors c'est ca ce si gros jeu ?
Je trouve que tu y vas un peu fort. Déjà on a jamais rien prétendu sur ce jeu, sinon qu'on allait bosser dessus un peu comme on peut, ( sachant qu'on a pas que ça à foutre en école d'ingé :). Ensuite, c'est quasiment la première beta, alors oui, il y a beaucoup de problèmes, tes remarques sont fondées. Je respecte ton avis, c'est juste ta manière de les exposer qui me gêne, on dirait un prof corrigeant ses élèves :/

Point par point :

- le son : oui on s'en fout pour l'instant
- la GUI : ça devrait venir avant le son ;)
- vaisseaux moches : on devrait pouvoir les texturer quand j'aurais fini mon importateur .ASE ( on n'utilisera plus celui de DigiBen gérant .3DS ), la gestion de l'horizontalité ça sera fait
- le tri de Z buffer marche pas bien en effet quand on affiche les faces transparentes.
Ce sera corrigé quand je referais plus ou moins tout le moteur 3D. Pour l'instant j'essaie de stabiliser à peu près le format de sortie de l'éditeur, pour avoir une idée de la structure du moteur 3D après.

- l'éditeur de circuits : merci pour vos remarques plutôt positives. D'ailleurs, une nouvelle beta devrait être accessible ...
Arnaud16022 Messages postés 1329 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 16 juin 2010 2
22 mai 2005 à 13:51
bon je dois bien avouer que c'est pas SI mal...
encore une fois ya des choses bien...
mais l'éditeur m'avait fait m'attendre a un truc 10 fois mieux
Pour le GUI, heu, ca empeche pas.... moi pour Sniper, les menus, ils étaient tout le temps désactivés ca sautait tt de suite au jeu...
c'est tout.
^^
pour les faces transparentes... oui j'ai raison mdr, et effectivement ils vont se faire c****. mais on ne se lance pas comme ca dans le blending...
++
cs_Kirua Messages postés 3006 Date d'inscription dimanche 14 avril 2002 Statut Membre Dernière intervention 31 décembre 2008
22 mai 2005 à 12:15
Suis assez d'accord avec luhtor, le son ça se rajoute en deux classes et un script et le GUI tu le rajoutes quand c'est quasi fini: c'est pas pdt le dvpment que tu mets des fenêtres "êtes vous sûr?" -> ça c'est pour les utilisateurs :p un programmeur est tjs sûr ;).

Sinon, l'éditeur de niveau, oui en effet, était déjà d'un excellent niveau. Ceci prouve qu'en plus il est utilisable, bah voilà: c'est bien non?

L'histoire des faces transperents par contre, je n'ai pas vérifié mais si tu as raison ils vont se faire chier à corriger ça mtnt que tt est en place :/ la belle galère, va falloir changer les méthodes de dessin, voire même le format de sauvegarde des faces :/.

sinon une chose qd même à propos du son: ça rend les jeux artificiellement bcp plus beau qu'ils ne le sont. un RPG sans musique, c'est d'un tristounet ... mais ça permet de se focaliser sur le visuel, et pdt le débug c'est qd même mieux (sans compter qu'on prog en général avec du hard rock :p enfin, que je prog en général ... dsl :p) donc ça la fout mal d'avoir une autre zik à chaque compilation.

beau boulot je trouve :) (et tu peux me taxer de vite-content arnaud ;))
luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 6
21 mai 2005 à 22:23
Comme quoi, tous les avis existent :) Perso, l'éditeur de niveau, c'est rien qu'à lui bien mieux que la plupart des sources postées ici. La GUI on s'en fou un peu pour le moment non ? Bon manque le son, mais c'est pas le plus dure :)

Aller plouch
Arnaud16022 Messages postés 1329 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 16 juin 2010 2
21 mai 2005 à 21:00
ah oui, et pas de tri en profondeur des faces transparentes, t'as des pbs de z-buffers
Arnaud16022 Messages postés 1329 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 16 juin 2010 2
21 mai 2005 à 20:57
alors c'est ca ce si gros jeu ?
ben franchement chuis deg.
bon ok ya des trucs pas mal,mais globalement....
pas de sons
pas de GUI ni de menus d'aucune sorte
vaisseaux non texturés, et leur ombrage est moche
pas de tests si on sort du parcours comme ca m'est arrivé 2 fois
pas d'orientation du vaisseau en fonction du plan qui est en dessous (il reste tjs horizontal)
gestion de la caméra...

meme l'éditeur de niveaux est mieux...
bref je suis décu,meme si il y eu bcp de travail, je pense aux collisions, elles sont pas trop mal bien qu'imparfaites
hop hop , au boulot...
++
Arnaud

PS: pk dans le zip ya 2 installeurs? 3Mo C bcp, tt le monde n'a pas le 2méga
Rejoignez-nous