RUBIX CUBE EN 3D AVEC GESTION DE L'ECLAIRAGE

cs_neria Messages postés 319 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 16 février 2009 - 5 mai 2005 à 18:10
Pistol_Pete Messages postés 1053 Date d'inscription samedi 2 octobre 2004 Statut Membre Dernière intervention 9 juillet 2013 - 14 janv. 2007 à 20:09
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/31226-rubix-cube-en-3d-avec-gestion-de-l-eclairage

Pistol_Pete Messages postés 1053 Date d'inscription samedi 2 octobre 2004 Statut Membre Dernière intervention 9 juillet 2013 7
14 janv. 2007 à 20:09
Voila j'ai mis la lib CMUgraphics sur mon site internet comme ca il ne devrait plus y avoir de problème et tout le monde pourra compiler mes sources
http://pistol.petesampras.free.fr

A+
dnob700 Messages postés 44 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 5 novembre 2007
11 mai 2005 à 18:09
je t'ai mis 6, parce que c'est pas mal géré mais que l'interface est quand même encore a améliorer (surtout le controle à la souris, le graphisme c'est moins important).
Pistol_Pete Messages postés 1053 Date d'inscription samedi 2 octobre 2004 Statut Membre Dernière intervention 9 juillet 2013 7
11 mai 2005 à 17:08
J'aimerais aussi que vous notié cette souce. Ce jeu constitue mon projet de fin de SPE et j'aimerai savoir combien ca vaut.
Pistol_Pete Messages postés 1053 Date d'inscription samedi 2 octobre 2004 Statut Membre Dernière intervention 9 juillet 2013 7
11 mai 2005 à 17:06
merci dnob je pense avoir compris le principe. Je m'y met tout de suite. Je vais aussi essayer d'inclure une selection par la souris comme me l'a sugéré Vangeurmasker.
dnob700 Messages postés 44 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 5 novembre 2007
10 mai 2005 à 16:24
d'accord, mais ton cube, lui il est fixe pendant que la face tourne ?

si oui ce n'est pas un repère mobile que tu utilise mais juste un autre repère. Pour calculer les coordonnées dans ce repère tu veux une matrice de changement de base. Mais pour afficher ton cube tu as bien sur ses coordonnées, je ne sais pas sous quelle forme mais au final tu doit pouvoir calculer sans problème deux angles (jai vérifié, 3 ne servent à rien) qui suffisent à le réafficher (comme pour un repère sphérique).

A partir de ces deux angles tu construit sans problème 2 matrices de rotations (autour des 2 axes de référence pour tes angles), qu'il te suffit de multiplier entre elles pour avoir une seule matrice qui est justement ta matrice de changement de base (ou son inverse si tu t'es trompé dans le sens des angles que tu as utilisé).
Pistol_Pete Messages postés 1053 Date d'inscription samedi 2 octobre 2004 Statut Membre Dernière intervention 9 juillet 2013 7
10 mai 2005 à 13:10
Je ne comprend pas bien ce que tu veux que je face. Cmugraphics n'est pas une lib 3D.
Mon repere fixe ou absolu comprend mes 3 axes: x horizontal y verticale et z dans la profondeur. Je prend donc chaques points de mon cube que je multiplie par la matrice que tu as écrite et je les affiche en 2D.
Moi je veux la matrice de passages de mon repère mobile(fixe par rapport a mon cube),à mon repère absolu. Si tu veux les nouvelles coordonné que je vais calculer dans mon repere mobile, je veux les projeter dans mon repère fixe.
dnob700 Messages postés 44 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 5 novembre 2007
9 mai 2005 à 18:55
en même temps tu peut supposer que pendant qu'une fae tourne le cube lui même ne bouge pas donc le repère est fixe, c'est juste une rotation du cube initiale.

Je suppose que pour afficher le cube tu stocke quelque part 2 ou 3 angles (ça dépend des degré de liberté que tu lui donne) alors tu compose 2 ou 3 matrice de rotation du style [[1,0,0][0,cos a,-sin a][0,sin a,cos a]] pour pivoter autour du premier axe de ton repère d'un angle a. Tu multiplie cette matrice par une autre ou le 1 est au milleu pour tourner autour du deuxième axes et de même pour le troisième axes. Et ça te fait ... l'inverse de la matrice que tu veux.

Bon c'est pas grave, tu fait la même chose mais en prenant l'opposé des angles que tu as stocké, et en faisant bien gaffe au sugne par rapport à l'orientation de l'espace (j'y connait rien sur les moteurs 3D mais je suppose que l'espace doit être orienté, sinon tu peut pas faire de rotation).
Pistol_Pete Messages postés 1053 Date d'inscription samedi 2 octobre 2004 Statut Membre Dernière intervention 9 juillet 2013 7
7 mai 2005 à 11:25
Oui tu as raison vive CPE...

j'ai hate de voir ta source vangeurmasker.

Je voulais surtout dans cette source inclure une annimation permettant de voir les faces tourner. Mais j'ai pas réussit à la mettre en place. Il faudrait que quelqu'un me donne le principe. J'avais eu l'idée d'inclure un repère mobile fixée sur le cube pour effectuer les rotations mais il faut aussi inclure une matrice de passage pour passer du repère mobile au repère fixe et je ne vois pas comment on peut déterminer cette matrice.
Bref si quelqu'un a une solution...
vangeurmasker Messages postés 99 Date d'inscription mercredi 12 mai 2004 Statut Membre Dernière intervention 29 mars 2006
6 mai 2005 à 16:12
Salut vive CPE
Je suis en sup mais j'ai fait le projet pour passer le temps. Je poserai ma source ce WE. Tu devrais revoir les trait de séparation des faces, c'est pas très sexy.
dletozeun a raison, les déplacement a la souris sont très pratique. Le temps pour le finir est divisé par 2.
De plus utilise un peu plus de fonctions ça facilite beaucoup la lecture
dletozeun Messages postés 546 Date d'inscription vendredi 13 février 2004 Statut Membre Dernière intervention 9 janvier 2008 1
5 mai 2005 à 19:33
tres sympa!

par contre corrige cette HORRIBLE FAUTE!! c'est pas eclairement !! c'est eclairage!! kan meme ! :D

Si tu tiens a ameliorer ton rubix cube :

il faudrait que l'on voit les morceaux du cube comme en vrai ca serait plus joli

tu peux aussi mettre en place le picking pour pouvoir selectionner les faces plus rapidement a la souris
cs_neria Messages postés 319 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 16 février 2009
5 mai 2005 à 18:10
Salut !

Vraiment pas mal !!!! (Même si on n'a pas les sensations d'un vrai). Par contre tu aurais pu faire le projet dans des fichiers séparés, parce que le code est un peu indigeste dans un seul fichier. Je tiens aussi à signaler un bug : lorsque la fenêtre est caché par d'autres puis réaffichée, il n'y a plus rien (problème de rafraichissement), il faudrait aussi prévoir une option pour quitter :D

Enfin c'est un bon code qui fonctionne parfaitement, bravo !

@+ Neria
Rejoignez-nous