begin process at 2012 05 29 03:22:47
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Linux

 > 

OpenGL

 > 

Gestion de collisions


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Gestion de collisions

lundi 28 janvier 2008 à 10:26:03 | Gestion de collisions

cosmosis72

Bonjour a tous.

Je viens sur votre forum car à force de chercher je me retrouve plus embrouiller qu'au début. JE vous expose mon problème.
Je souhaite creer un petit jeu de voiture assez simple. Mais je voudrais y inclure un système de collisions entre les voitures et le décor. Et la je ne sais pas trop comment m'y prendre.

Y aurait-il des librairies/surcouches d'OpenGL qui facilitent ce genre de gestion? Ou alors si ce n'est pas le cas, quelles sont les solutions les plus simples et efficaces?


Je profite de ce sujet pour également vous demandez un petit conseil. A l'heure actuelle je me sers d'openGL avec Glu et Glut, mais j'ai entendu parlé OpenInventor. Est-ce que vous me conseiller cette surcouche ou alors je dois laisser tomber.

Merci d'avance pour vos réponses
lundi 28 janvier 2008 à 18:27:22 | Re : Gestion de collisions

rt15

Membre Club Administrateur CodeS-SourceS
Salut,

Tu as jeté un coup d'oeil aux moteurs physiques, style ODE ou autre ?

mardi 29 janvier 2008 à 14:53:08 | Re : Gestion de collisions

acx01b

salut

il y a 3 niveaux de collisions/physique:

le cas du jeu de voiture assez basique, où entre autre les décors ne sont pas destructibles, la voiture reste collée au sol... dans ce cas il vaut mieux coder soi même la physique et les collisions, plutôt que de se prendre la tête avec un moteur physique: en plus une fois les bases de la physiques comprises, il te sera facile d'utiliser un moteur physique pour ton prochain projet (sans se prendre la tête cette fois!)

le cas du jeu super évolué avec des tremplins, des éléments destructibles, la voiture qui fait des tonnaux en cas de crash... dans ce cas il vaut mieux connaître un peu (beaucoup!) la physique et utiliser un moteur physique (le mieux est d'en tester plusieurs, probablement qu'aucun  ne te conviendra à 100%)

le dernier cas est la simulation réaliste: aucun moteur physique n'est assez généraliste pour être utilisé dans une simulation comme gran turismo: il faut tout coder soi même d'autant plus que le problème sera d'obtenir quelque chose de réaliste, et de pas trop lent : seul un moteur spécialisé pour ce jeu en sera capable

Renaud

mardi 29 janvier 2008 à 20:12:11 | Re : Gestion de collisions

cosmosis72

Bonjour, merci pour vos réponses.
Alors mon jeu correpond plus à ton premier cas de figure. donc tu me conseilles de le faire moi même.
en quoi cela consiste ? parce que bon j'ai bien une petite idée mais cela me semble assez lourd à mettre en place.

en effet, je pensais mettre une sorte de boite autour de mes objets (voitures et décors) et vérifier si les coté des boites se coupaient. mais cela me parait un peu lourd dans le sens ou ça oblige a faire de multiple tests à chaque instant.
Y a til une méthode bien plus légère ?

bonne soirée
mercredi 30 janvier 2008 à 10:27:06 | Re : Gestion de collisions

rt15

Membre Club Administrateur CodeS-SourceS
Y a des techniques assez compliquées dans le domaine, à base d'arbres ou autre usine à gaz.

Pour faire plus simple, tu peux par exemple couper ton décors en zone :
1 2 3
4 5 6
7 8 9

Si ta voiture est dans la zone 5 et que tous les meshs de ton décors sont de tailles inférieures à la taille d'une zone (- la taille de la voiture...), alors la voiture ne peut entrer en collision qu'avec des meshs se trouvant dans les zones 1 .. 9.

Une optimisation est d'utiliser 2 boîtes englobantes pour chaque mesh : une "classique", et une alignée avec les axes. On commence à faire les tests sur la boîte alignée car il sont plus faciles, et s'il y a collision, alors on passe sur les boîte classiques, plus précises.

Dans ton cas de voitures, tu peux même te ramener à un problème plan pour ce qui est des boîtes alignées : de simples rectangles.



Cette discussion est classée dans : gestion, opengl, collisions


Répondre à ce message

Sujets en rapport avec ce message

Gestion de la souris OpenGL SANS GLUT [ par Xentor ] Comment faire pour connaitre le déplacement de la souris sans utiliser Glut ? (Savoir si on la déplace en haut, à gauche, etc...) J'ai fait plusieurs gestion de la souris dans une fenêtre OpenGL [ par philmus ] salut, je commence à écrire des petits pgs OpenGL; maintenant, je doit gérer l'entrée (clavier et souris) pour interagir avec l'utilisateur. Le pb OpenGL gestion memoire [ par xarier ] SVP j'ai prob que je ne c pas comment le geré c que quand j'ouvre mon pojet sous vc++plusieur fois mon pc n'a plus de resources libre je crois que c p help : collisions particules en OpenGL [ par kx2k3 ] je suis en train de plancher sur des particules en ce moment, en openGLje voudrais les faire rebondir sur un plantous les exemples que j'ai trouvés le opengl.glut : gestion clavier [ par _Jonathan ] salut a tousvoila, j'arrive pas a utiliser la fonction glutSpecialUpFunc (chui sous devc++).glutSpecialFunc marche.Si kelkun pourrai m'expliker : ---- Collisions et vitesse [ par goutbouyo ] Salut, J'ai adapté un système de détection des collisions dans un monde 3d, en prenant exemple sur un tutorial de http://www.gametutorials.com/Tutoria Gestion des collisions [ par DarklordBioopo ] Bonjour, Je voudrais savoir comment faire pour avoir une gestion des collisions avec des boites englobantes.Pour le moment mon jeu ne gere les collisi Gestion des collisions pour un FPS [ par dd1840x ] Salut tt le monde , j'aimerais faire un FPS, mais je ne sais pas gérer les collisions...Merci de me dire comment faire ! (pas de site en anglais SVP) Moteur 3D, gestion des collisions [ par fabienGL ] Bonjour, je vous écris car j'ai 2 question :1)OpenGL c'est une librairies graphiques, pourtant entends-t-on parler de moteurs 3D j'aurais aimé savoir


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,905 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales