cs_Trident
Messages postés24Date d'inscriptiondimanche 22 juin 2003StatutMembreDernière intervention12 décembre 2004 25 janv. 2004 à 00:14
Thanks,
C'est encore mieux quand au début y'a de la critique ;o) (mi maso ?)
Je tient à préciser qu'aprés plusieure année d'effort (et un peu demander à google) je sais refaire le cube :o)
J'en dirais pas plus, je signale juste que j'ai ajouter une nouvelle source sur le comment faire pour savoir sur quoi clique la souris (systéme que je n'est pas utliser pour le cube hein bon)
Arnaud16022
Messages postés1329Date d'inscriptionvendredi 15 août 2003StatutMembreDernière intervention16 juin 20102 24 janv. 2004 à 23:29
bon je vous rapelle que je sujet de cette page c'est le source...
jeu tres bien fait, du moins autant que peut l'etre un machin comme un Rubix Cube en 3d... cependant la "jouabilité " n'est pas géniale, je veux dire par la que la représentation que l'on a avec un vrai cube est 100 fois meilleure, la on se perd un peu.Mais encore une fois, je doute fort qu'on puisse faire mieux,BRAVO!
ya juste que la sourc est un peu immense pour moi, je la garde dans un coin de mon disque dur si jamais j'aurai besoin de fonction de la source. et si je m'améliore un peu... je suis pas pres de faire un truc comme ca, meme HoverBike ca a rien a voir (detection dans l'espace et tout ca....)
bon allez, 10/10, ca le vaut je crois :)
continue comme ca!
Ciao
BB
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 23 janv. 2004 à 17:52
^^ voudrais être certain que ça correspond bien au paradis que j'imagine. sinon ben dommage, c t pas ça, il m'a envoyé un mail (merci à lui), mais lui il est plutôt ds les maths pures, pas mal non plus quoi :-)
cs_neodante
Messages postés2835Date d'inscriptionlundi 11 août 2003StatutModérateurDernière intervention16 décembre 200611 23 janv. 2004 à 10:36
Ah ce Kirua toujours à la recherche d'info pour ses études !!!! lol
@+
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 22 janv. 2004 à 23:12
voui, la gestion de la souris est impeccable, c un truc dt les joueurs se rendent même pas compte, ... c terrible la vie d'un programmeur amateur :-D
dis, ça m'intéresse ce que tu dis là, tu fais des études d'ingénieur en mécanique?? ça fait un an que je suis pratiquement certain que c'est ça que je veux faire comme études, je viens de lire tout un article sur les particules, et j'adore faire des simulations de dynamique (forces et vitesses). tu pourrais me dire un mot sur tes études par e-mail stp? j'ai 16 ans (17 en février), nicolasboumal arobase hotmail point com, je serais content d'avr un témoignage :-) (j'habite en belgique)
cs_djl
Messages postés3011Date d'inscriptionjeudi 26 septembre 2002StatutMembreDernière intervention27 novembre 20047 22 janv. 2004 à 20:31
ok merci
en tout cas bravo car c'est grace a ca que ton jeu est tres jouable
cs_Trident
Messages postés24Date d'inscriptiondimanche 22 juin 2003StatutMembreDernière intervention12 décembre 2004 22 janv. 2004 à 20:29
Désolé pour le plantage, j'ai du réécrire (pb d'envois des messages)...
enfin, oui j'avais vu un tutoriel (j'ai pommé l'adresse, j'était au boullo qd je le lisé :o)) qui expliquer que il fallait faire un affichage a blanc pour savoir ou était la souris, j'avais fait un code (le pyraminx) avec et ca marchais bien ... enfin, des que j'ai qqchose de concret je vous envois
cs_Trident
Messages postés24Date d'inscriptiondimanche 22 juin 2003StatutMembreDernière intervention12 décembre 2004 22 janv. 2004 à 20:26
Pour ce qui est de la projection, je relis le code et je me rend compte que c'est un sacré bordel :o)
pour chaqu'un des carré, je prend les 4 poins (les coordonnées en 3d) je donne a 'bool rubix::Isin_face' qui me les 'projette' sur l'écran (calcul les coord quoi), et envois le résultat et les coordonnées de la souris à Isin qui est dans struct.cpp, isin me fait plein des produit scalaire ou vectoriel (cf cour de méca) et me dit si oui ou non la souris et dans le quadrilatére...
je garde 'biensur' la face dont la coordonnée z par rapport à l'écran et la plus petite (d'ou le pointeur sur z pour Isin_face).
... mouaip y'a pas à dire c'est bordélique, (ca fait bocoup de calcul que la carte graph et sencé faire), faut que je retrouve le code du pyraminx...
Trident,
qui se remet au cpp...
cs_djl
Messages postés3011Date d'inscriptionjeudi 26 septembre 2002StatutMembreDernière intervention27 novembre 20047 22 janv. 2004 à 20:25
"... mouaip y'a pas à dire c'est bordélique, (ca fait bocoup de calcul que la carte graph et sencé faire), faut que je retrouve le code du pyraminx..."
la cg est censé faire ce genre de calcul?
cs_Trident
Messages postés24Date d'inscriptiondimanche 22 juin 2003StatutMembreDernière intervention12 décembre 2004 22 janv. 2004 à 20:17
Pour ce qui est de la projection, je relis le code et je me rend compte que c'est un sacré bordel :o)
pour chaqu'un des carré, je prend les 4 poins (les coordonnées en 3d) struct.cpp, isin me fait plein des produict scalaire ou vectoriel (cf cour de méca) et me dit si oui ou non la souris et dans le quadrilatére...et j'envois à 'bool rubix::Isin_face' qui me les projette sur l'écran, et envois le résultat et les coordonnées de la souris à Isin qui est dans
je garde 'biensur' la face dont la coordonnée z par rapport à l'écran et la plus petite (d'ou le pointeur sur z pour Isin_face).
... mouaip y'a pas à dire c'est bordélique, (ca fait bocoup de calcul que la carte graph et sencé faire), faut que je retrouve le code du pyraminx...
Trident,
qui se remet au cpp...
cs_Trident
Messages postés24Date d'inscriptiondimanche 22 juin 2003StatutMembreDernière intervention12 décembre 2004 22 janv. 2004 à 19:01
Hello,
Et merci pour tout vos messages, j'espéré pas étre remarqué :o)
Pour les problémes de compilation je vous rassure j'ai exactment les même avec la nouvelle version de DevC++ mais cet été qd je l'ai compilé cT sur une vieille version, je sais plus laquelle (y'avais pas l'onglet Classe et les truc dans le genre, je dirais que la version c'été dans les 2. qqchose mais bon, hein j'y met pas ma main, enfin je le saurais d'ici une semaine ....).
Pour le truc du passage 3D-2D j'ai utiliser mon magnifique cour de méca (?!?) mais pour un autre prog (un rubix en forme de tetraédre, tapez pyraminx dans google pour voir) j'ai utiliser une option de OpenGl qui permet de limité la taille de l'écran et de dire si il y'a eu dessin dedans (ici on limite à 1x1 pixel sous la souris et au moment du dessin, on c qu'elle est la face sous la souris...)
Sinon, oui, le code pour le cube qui tourne et ce mellange a été fait en 6h je crois (aprés plusieur essais) pour la souris m'a fallut une semaine :o)
P.S. Y'a aussi les fichiers Pile.cpp et Pile.h qui servent à rien ....
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 22 janv. 2004 à 17:14
j'ai lu pas mal d'articles sur le sujet, et ds plusieurs ils parlaient de créer une "mouse map", càd un tableau bidimensionnel qui contient l'équivalence "position souris" => "tile"
exemple:
struct tile {int X, Y;};
tile **MouseMap; //il faut bien sur allouer la mémoire avec new
//ds une for
MouseMap[Xsouris][Ysouris] = tile(Xtile, Ytile);
j'ai tappé ça à la va vite, parce qu'un bout de code explique svt plus que des mots ;-)
cs_djl
Messages postés3011Date d'inscriptionjeudi 26 septembre 2002StatutMembreDernière intervention27 novembre 20047 21 janv. 2004 à 22:26
ouai je voit, moi aussi je suis en train de faire un truc plus important que d'hab, et je lache souvent l'affaire quand je coince et j'ai justement ce probleme de conversion 2d/3d en ce moment
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 21 janv. 2004 à 22:17
j'envisage très sérieusement de passer à ce genre de jeu un de ces jours mais non, c'était pas dans ce cadre-là.
en fait, j'ai voulu créer un jeu de puissance 4 en 3D, je sais pas si tu vois ce que c'est, c'est un jeu avec 4x4 bâtons de 4 unités de haut, laissant de la place pour un bloc contenant 4x4x4 (en 3D quoi) boules, blanches ou noires. et il faut s'arranger pr en aligner 4 de sa couleur, c'est un jeu génial.
j'ai fait toute la modélisation "à la main", c t assez ch****, mdr ^^ mais le résultat était pas mauvais (effet de bois, lumière, etc ;-))
enfin, je l'ai pas continué parce que c t juste pour combler un manque (envie de coder, mais pas de continuer mon gros projet qui buggait depuis des semaines)
cs_djl
Messages postés3011Date d'inscriptionjeudi 26 septembre 2002StatutMembreDernière intervention27 novembre 20047 21 janv. 2004 à 22:06
ta deja ete confronté a ce pb, genre pour un jeu de role, deplacer ton perso la ou pointe la souris?
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 21 janv. 2004 à 21:58
j'ai vu un code sur le site de NeHe, je l'ai déjà utilisé, mais j'ai pas cherché à comprendre, parce que c t un projet sans lendemain.
mais donc sur NeHe il y a une solution ;-)
cs_djl
Messages postés3011Date d'inscriptionjeudi 26 septembre 2002StatutMembreDernière intervention27 novembre 20047 21 janv. 2004 à 21:55
felicitation! exelent jeu! (ouai celui la est amusant et jouable, le 10/10 est merité)
sinon pour le click de la souris ou "comment convertir une position 2d en 3d", truc tres utiles, et tres utilisée dans les jeux de strategie en 3d, il faut connaitres les matrices de passage
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 21 janv. 2004 à 20:52
j'viens d'essayer une recompilation totale, avec et sans -g (qui n'y était pas), et la taille est identique.
Funto66
Messages postés1267Date d'inscriptionmercredi 1 janvier 2003StatutMembreDernière intervention28 février 20074 21 janv. 2004 à 20:48
Hmm... tu es sûr aussi que les informations de débogage ne sont pas créées ? Il me semble que c'est l'option -g.
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 21 janv. 2004 à 20:27
ouais j'ai déjà utilisé ça sur ton conseil, et c'est très bien, mais je doute que bcp de gens ici utilisent ça pr leurs zip's, et pourtant tous ont des petits exe. et avant, j'avais aussi des tt petits exe!! et sur le pc de mon père (NT 2000) également!! je deviens fou, comprends pas ce qui se passe, même en ayant réinstallé dev, remis les options à zéro, ça reste, c déroutant O_o
j'utilise l'astuce -s ds les options de compil', qq un ici m'avait dit d'utiliser ça et c très efficace, mais j'ai jamais aussi bien que ce que je vois ici.
Funto66
Messages postés1267Date d'inscriptionmercredi 1 janvier 2003StatutMembreDernière intervention28 février 20074 21 janv. 2004 à 18:15
PS : à Kirua : si tu veux des petits exécutables, utilise UPX (Ultimate Packager for eXecutables) ;)
Funto66
Messages postés1267Date d'inscriptionmercredi 1 janvier 2003StatutMembreDernière intervention28 février 20074 21 janv. 2004 à 18:03
Tiens, Kirua ici, ô surprise...;)
Je viens de l'essayer, mais je suis nul au rubix cube lol, j'ai réussi à faire 1 seule face, comme d'hab....mais l'avantage par rapport au "vrai" rubix cube, c'est que là tu peux faire RESET... comme dans la pub avec le truc de l'essoreur la salade, euh pardon je m'égare :p
J'ai pas regardé le code, mais comme dit Kirua la projection entre le clic de la souris et la position 3D du cube touché ne devait pas être simple...
Je vois pas de défaut majeur, le jeu est cool et bien fait, bon allez : 10 ;)
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 21 janv. 2004 à 17:42
un truc que j'ai oublié, tu dois pas mettre les fichiers objets (.o) ds ton zip, ils sont créés par le compilateurs, donc pas besoin
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 21 janv. 2004 à 17:40
'lut,
j'ai recompilé le code avec Dev-C++ 4.9.8.5
j'ai dû modifier tes déclarations de structures (tu mettas void struct ..., j'ai enlevé les 'void', il y en avait trois)
et j'ai aussi dû changer old_repere repere et inversément par old_repere[0] repere[0] puis pareil pr les indices 1 et 2, parce qu'en C++ tu ne peux pas assigner des tableaux avec =. (c'est le compilo qui le dit en tt cas ;-))
aussi, ds un énorme 'switch', (celui du clavier), j'ai dû changer case 27: fin; par case 27: fin();
je comprends pas comment ça a pu compiler chez toi.
une question: comment ça se fait que ton exe fait environ 42Ko, alors que le mien en fait 135 O_o (et qd je compile avec l'option -s ça devient 76Ko), y a un truc que j'ignore? tlm fait des exes si petits :'-(
à part ça bon code :-) juste une question, c'est dans quel fichier que tu fais la détection des clicks de souris, parce que je suppose que ça ça a dû être uen casse tête non? pour savoir sur quelle face le joueur clique...
bonne continuation ;-)
cs_LordBob
Messages postés2865Date d'inscriptionsamedi 2 novembre 2002StatutMembreDernière intervention11 mai 20099 21 janv. 2004 à 07:01
c'est excelent... je n'ai pas encore regarder le code... mais c'est très très bien, une source de qualité en plus sur ce merveilleux site...
c'est très bien continue comme ca...
10/10
25 janv. 2004 à 00:14
C'est encore mieux quand au début y'a de la critique ;o) (mi maso ?)
Je tient à préciser qu'aprés plusieure année d'effort (et un peu demander à google) je sais refaire le cube :o)
J'en dirais pas plus, je signale juste que j'ai ajouter une nouvelle source sur le comment faire pour savoir sur quoi clique la souris (systéme que je n'est pas utliser pour le cube hein bon)
http://www.cppfrance.com/code.aspx?ID=19741
24 janv. 2004 à 23:29
jeu tres bien fait, du moins autant que peut l'etre un machin comme un Rubix Cube en 3d... cependant la "jouabilité " n'est pas géniale, je veux dire par la que la représentation que l'on a avec un vrai cube est 100 fois meilleure, la on se perd un peu.Mais encore une fois, je doute fort qu'on puisse faire mieux,BRAVO!
ya juste que la sourc est un peu immense pour moi, je la garde dans un coin de mon disque dur si jamais j'aurai besoin de fonction de la source. et si je m'améliore un peu... je suis pas pres de faire un truc comme ca, meme HoverBike ca a rien a voir (detection dans l'espace et tout ca....)
bon allez, 10/10, ca le vaut je crois :)
continue comme ca!
Ciao
BB
23 janv. 2004 à 17:52
23 janv. 2004 à 10:36
@+
22 janv. 2004 à 23:12
dis, ça m'intéresse ce que tu dis là, tu fais des études d'ingénieur en mécanique?? ça fait un an que je suis pratiquement certain que c'est ça que je veux faire comme études, je viens de lire tout un article sur les particules, et j'adore faire des simulations de dynamique (forces et vitesses). tu pourrais me dire un mot sur tes études par e-mail stp? j'ai 16 ans (17 en février), nicolasboumal arobase hotmail point com, je serais content d'avr un témoignage :-) (j'habite en belgique)
22 janv. 2004 à 20:31
en tout cas bravo car c'est grace a ca que ton jeu est tres jouable
22 janv. 2004 à 20:29
enfin, oui j'avais vu un tutoriel (j'ai pommé l'adresse, j'était au boullo qd je le lisé :o)) qui expliquer que il fallait faire un affichage a blanc pour savoir ou était la souris, j'avais fait un code (le pyraminx) avec et ca marchais bien ... enfin, des que j'ai qqchose de concret je vous envois
22 janv. 2004 à 20:26
pour chaqu'un des carré, je prend les 4 poins (les coordonnées en 3d) je donne a 'bool rubix::Isin_face' qui me les 'projette' sur l'écran (calcul les coord quoi), et envois le résultat et les coordonnées de la souris à Isin qui est dans struct.cpp, isin me fait plein des produit scalaire ou vectoriel (cf cour de méca) et me dit si oui ou non la souris et dans le quadrilatére...
je garde 'biensur' la face dont la coordonnée z par rapport à l'écran et la plus petite (d'ou le pointeur sur z pour Isin_face).
... mouaip y'a pas à dire c'est bordélique, (ca fait bocoup de calcul que la carte graph et sencé faire), faut que je retrouve le code du pyraminx...
Trident,
qui se remet au cpp...
22 janv. 2004 à 20:25
la cg est censé faire ce genre de calcul?
22 janv. 2004 à 20:17
pour chaqu'un des carré, je prend les 4 poins (les coordonnées en 3d) struct.cpp, isin me fait plein des produict scalaire ou vectoriel (cf cour de méca) et me dit si oui ou non la souris et dans le quadrilatére...et j'envois à 'bool rubix::Isin_face' qui me les projette sur l'écran, et envois le résultat et les coordonnées de la souris à Isin qui est dans
je garde 'biensur' la face dont la coordonnée z par rapport à l'écran et la plus petite (d'ou le pointeur sur z pour Isin_face).
... mouaip y'a pas à dire c'est bordélique, (ca fait bocoup de calcul que la carte graph et sencé faire), faut que je retrouve le code du pyraminx...
Trident,
qui se remet au cpp...
22 janv. 2004 à 19:01
Et merci pour tout vos messages, j'espéré pas étre remarqué :o)
Pour les problémes de compilation je vous rassure j'ai exactment les même avec la nouvelle version de DevC++ mais cet été qd je l'ai compilé cT sur une vieille version, je sais plus laquelle (y'avais pas l'onglet Classe et les truc dans le genre, je dirais que la version c'été dans les 2. qqchose mais bon, hein j'y met pas ma main, enfin je le saurais d'ici une semaine ....).
Pour le truc du passage 3D-2D j'ai utiliser mon magnifique cour de méca (?!?) mais pour un autre prog (un rubix en forme de tetraédre, tapez pyraminx dans google pour voir) j'ai utiliser une option de OpenGl qui permet de limité la taille de l'écran et de dire si il y'a eu dessin dedans (ici on limite à 1x1 pixel sous la souris et au moment du dessin, on c qu'elle est la face sous la souris...)
Sinon, oui, le code pour le cube qui tourne et ce mellange a été fait en 6h je crois (aprés plusieur essais) pour la souris m'a fallut une semaine :o)
P.S. Y'a aussi les fichiers Pile.cpp et Pile.h qui servent à rien ....
22 janv. 2004 à 17:14
exemple:
struct tile {int X, Y;};
tile **MouseMap; //il faut bien sur allouer la mémoire avec new
//ds une for
MouseMap[Xsouris][Ysouris] = tile(Xtile, Ytile);
j'ai tappé ça à la va vite, parce qu'un bout de code explique svt plus que des mots ;-)
21 janv. 2004 à 22:26
21 janv. 2004 à 22:17
en fait, j'ai voulu créer un jeu de puissance 4 en 3D, je sais pas si tu vois ce que c'est, c'est un jeu avec 4x4 bâtons de 4 unités de haut, laissant de la place pour un bloc contenant 4x4x4 (en 3D quoi) boules, blanches ou noires. et il faut s'arranger pr en aligner 4 de sa couleur, c'est un jeu génial.
j'ai fait toute la modélisation "à la main", c t assez ch****, mdr ^^ mais le résultat était pas mauvais (effet de bois, lumière, etc ;-))
enfin, je l'ai pas continué parce que c t juste pour combler un manque (envie de coder, mais pas de continuer mon gros projet qui buggait depuis des semaines)
21 janv. 2004 à 22:06
21 janv. 2004 à 21:58
mais donc sur NeHe il y a une solution ;-)
21 janv. 2004 à 21:55
sinon pour le click de la souris ou "comment convertir une position 2d en 3d", truc tres utiles, et tres utilisée dans les jeux de strategie en 3d, il faut connaitres les matrices de passage
21 janv. 2004 à 20:52
21 janv. 2004 à 20:48
21 janv. 2004 à 20:27
j'utilise l'astuce -s ds les options de compil', qq un ici m'avait dit d'utiliser ça et c très efficace, mais j'ai jamais aussi bien que ce que je vois ici.
21 janv. 2004 à 18:15
21 janv. 2004 à 18:03
Je viens de l'essayer, mais je suis nul au rubix cube lol, j'ai réussi à faire 1 seule face, comme d'hab....mais l'avantage par rapport au "vrai" rubix cube, c'est que là tu peux faire RESET... comme dans la pub avec le truc de l'essoreur la salade, euh pardon je m'égare :p
J'ai pas regardé le code, mais comme dit Kirua la projection entre le clic de la souris et la position 3D du cube touché ne devait pas être simple...
Je vois pas de défaut majeur, le jeu est cool et bien fait, bon allez : 10 ;)
21 janv. 2004 à 17:42
21 janv. 2004 à 17:40
j'ai recompilé le code avec Dev-C++ 4.9.8.5
j'ai dû modifier tes déclarations de structures (tu mettas void struct ..., j'ai enlevé les 'void', il y en avait trois)
et j'ai aussi dû changer old_repere repere et inversément par old_repere[0] repere[0] puis pareil pr les indices 1 et 2, parce qu'en C++ tu ne peux pas assigner des tableaux avec =. (c'est le compilo qui le dit en tt cas ;-))
aussi, ds un énorme 'switch', (celui du clavier), j'ai dû changer case 27: fin; par case 27: fin();
je comprends pas comment ça a pu compiler chez toi.
une question: comment ça se fait que ton exe fait environ 42Ko, alors que le mien en fait 135 O_o (et qd je compile avec l'option -s ça devient 76Ko), y a un truc que j'ignore? tlm fait des exes si petits :'-(
à part ça bon code :-) juste une question, c'est dans quel fichier que tu fais la détection des clicks de souris, parce que je suppose que ça ça a dû être uen casse tête non? pour savoir sur quelle face le joueur clique...
bonne continuation ;-)
21 janv. 2004 à 07:01
c'est très bien continue comme ca...
10/10