AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment :
Nike : Jusqu’à 50% sur les articles de ...
Voir le deal

 

 [Résolu] Collisions avec une corde

Aller en bas 
5 participants
AuteurMessage
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

[Résolu] Collisions avec une corde Empty
MessageSujet: [Résolu] Collisions avec une corde   [Résolu] Collisions avec une corde EmptySam 30 Nov 2013 - 17:52

... composée d'une multitude de points, reliés par une contrainte.

Hello,
Tout est dans le titre, en gros j'ai une corde composé de plusieurs points, je leur applique une contrainte et j'utilise l’intégration de verlet pour les mouvements. Le soucis est que je ne trouve pas de moyen pour effectuer une collision entre un point quelconque et la corde.
J'ai essayé d’empêcher les parties de bouger si y a un obstacle, mais vu que la contrainte effectue aussi un changement de position des parties, ça donne juste l'impression que la corde traverse du flan Razz
J'ai essayé de modifier la contrainte pour qu'elle prenne en compte les obstacles sans succès, ça donne juste un truc totalement indescriptible et dégueulasse.

Bref si quelqu'un arrive a trouver quelque chose, voici mon super prototype fait avec GM mrgreen2 
http://simpleupload.fr/?c=A053f3w!bPrtpgHW

Merci d'avance!

_________________
[Résolu] Collisions avec une corde Runningpotato1[Résolu] Collisions avec une corde TvF6GED [Résolu] Collisions avec une corde MdetltS
Revenir en haut Aller en bas
arthuro
Utilisateur confirmé: Rang ****
arthuro


Messages : 1480
Localisation : Paris
Projet Actuel : Diagon https://arthursonzogni.com/Diagon

[Résolu] Collisions avec une corde Empty
MessageSujet: Re: [Résolu] Collisions avec une corde   [Résolu] Collisions avec une corde EmptySam 30 Nov 2013 - 18:06

Je pense que j'arriverais a faire quelque chose.
Je vais te faire un exemple.

_________________
[Résolu] Collisions avec une corde Pochette[Résolu] Collisions avec une corde Signature.php?gid=588
D'autres jeux :
In The Cube
In the cube 2
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

[Résolu] Collisions avec une corde Empty
MessageSujet: Re: [Résolu] Collisions avec une corde   [Résolu] Collisions avec une corde EmptySam 30 Nov 2013 - 18:11

Oh merci beaucoup Arthuro :b
Ça m'aiderait beaucoups pour pas mal de mécaniques du jeu que je code Very Happy

_________________
[Résolu] Collisions avec une corde Runningpotato1[Résolu] Collisions avec une corde TvF6GED [Résolu] Collisions avec une corde MdetltS
Revenir en haut Aller en bas
arthuro
Utilisateur confirmé: Rang ****
arthuro


Messages : 1480
Localisation : Paris
Projet Actuel : Diagon https://arthursonzogni.com/Diagon

[Résolu] Collisions avec une corde Empty
MessageSujet: Re: [Résolu] Collisions avec une corde   [Résolu] Collisions avec une corde EmptyDim 1 Déc 2013 - 15:17

Voila, j'ai terminé:
Cela rend plutôt bien:
Voila une vidéo qui montre ce que cela donne:



Ici, c'est le code source.
Par contre pour compiler, il faut linker avec la SFML(2.1). (J'ai laisser mon cmake dedans)

http://www.mediafire.com/download/mhh8lpj3638cvy5/corde.tar.gz

N'hésite pas à me poser des question.

Le principe:
Une corde est fait d'une chaîne de points physique.
Je résoud les contraintes de la corde de cette manière:
Si la distance interpoint est trop grande, j'applique une force élastique.
De plus je corrige une certaine proportion pour replacer le point plus proche du précédent. (Cela fait perdre un peu d'énergie à la corde au passage, c'est pas mal pour avoir quelque chose de stable)

Ensuite pour les collision entre la corde et les formes, j'ai une méthode pour les formes qui me renvoie une collision, celle-ci me renseigne sur la pénétration et la normale à la surface en collision.
Si il y a une collision entre un point et une forme je fait ceci:
- Je met la vitesse normale à 0 ( j'applique une impulsion )
- Je corrige la position d'une certaine proportion.

Bon après, avec ce que je propose, il y a pas mal d'amélioration possible.
Du fait de la gravité, la répartition des points sur la corde est concentré vers le bas (De forme exponentielle). De ce fait, même si on alloue plein de points pour la corde, il y en aura toujours pas beaucoup en haut de la corde.

Et puis, il y a un compromis à faire entre précision/rapidité en mettant plus ou moins de points sur la corde

_________________
[Résolu] Collisions avec une corde Pochette[Résolu] Collisions avec une corde Signature.php?gid=588
D'autres jeux :
In The Cube
In the cube 2
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

[Résolu] Collisions avec une corde Empty
MessageSujet: Re: [Résolu] Collisions avec une corde   [Résolu] Collisions avec une corde EmptyDim 1 Déc 2013 - 18:38

C'est vraiment bien fichu, et la source est super clean!
Jvais essayer de bien tout comprendre et je te tiens au courant.
Merci en tout cas, ça a l'air de correspondre parfaitement a ce que je voulais :b

_________________
[Résolu] Collisions avec une corde Runningpotato1[Résolu] Collisions avec une corde TvF6GED [Résolu] Collisions avec une corde MdetltS
Revenir en haut Aller en bas
arthuro
Utilisateur confirmé: Rang ****
arthuro


Messages : 1480
Localisation : Paris
Projet Actuel : Diagon https://arthursonzogni.com/Diagon

[Résolu] Collisions avec une corde Empty
MessageSujet: Re: [Résolu] Collisions avec une corde   [Résolu] Collisions avec une corde EmptyLun 2 Déc 2013 - 16:37

Merci,

Par contre tu verra, il y a le problème que la corde est un peu trop élastique. Cela peut être un peu gênant pour certains jeux. Il doit y avoir moyen d'améliorer cela, dit moi si tu trouve des trucs sympa.
En tous cas, bonne continuation pour ton jeu, il m'a l'air bien sympa.

_________________
[Résolu] Collisions avec une corde Pochette[Résolu] Collisions avec une corde Signature.php?gid=588
D'autres jeux :
In The Cube
In the cube 2
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

[Résolu] Collisions avec une corde Empty
MessageSujet: Re: [Résolu] Collisions avec une corde   [Résolu] Collisions avec une corde EmptyLun 2 Déc 2013 - 18:44

L'élasticité c'est pas un soucis dans mon jeu, au contraire même :b
Merci en tout cas!

_________________
[Résolu] Collisions avec une corde Runningpotato1[Résolu] Collisions avec une corde TvF6GED [Résolu] Collisions avec une corde MdetltS
Revenir en haut Aller en bas
Is Daouda
Utilisateur confirmé: Rang **
Is Daouda


Messages : 392
Localisation : ...

[Résolu] Collisions avec une corde Empty
MessageSujet: Re: [Résolu] Collisions avec une corde   [Résolu] Collisions avec une corde EmptyDim 15 Déc 2013 - 14:41

la programmation en C++ un vrai plaisir.

_________________
"Celui qui trouve sans chercher a longtemps cherché sans trouver".


Dernière édition par Is Daouda le Mar 3 Mar 2020 - 19:25, édité 1 fois
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

[Résolu] Collisions avec une corde Empty
MessageSujet: Re: [Résolu] Collisions avec une corde   [Résolu] Collisions avec une corde EmptyDim 15 Déc 2013 - 17:23

oO ? Ca dépend de ce que tu veux faire... Pour faire un morpion ia pas besoin de physique hein...
Pour la plupart des trucs les maths sont plus utile que la physique d'ailleurs...

_________________
Je suis partie sur les ailes du vent et la tempête m'a ramenée.
Revenir en haut Aller en bas
GrandeLangue
Bonne participation
GrandeLangue


Messages : 77
Localisation : Lille
Projet Actuel : Faire des maths

[Résolu] Collisions avec une corde Empty
MessageSujet: Re: [Résolu] Collisions avec une corde   [Résolu] Collisions avec une corde EmptyDim 15 Déc 2013 - 20:11

Ce qui dit Térence68, c'est que C++ => physique pur est faux.
Mais tu as l'air de dire aussi que la programmation (quand elle n'est pas en C++) ne demande donc pas de physique... Mais même en Game Maker, si tu t'amuses à faire un grappin qui ait l'air de quelque chose, tu as aussi besoin de physique. Il n'y a absolument AUCUN rapport entre le langage utilisé et le besoin de s'y connaitre en physique.

_________________
Un superbe jeu de plateforme où vous pouvez contrôler le temps ici : TimeBoy

Pour maîtriser les pistons dans Minecraft : https://www.youtube.com/MindcraftMax
Project Spark est mort, vive Project Spark ! Top 25 des créations qui ont été réalisées avec ce moteur de création de jeu depuis sa sortie, avant que les serveurs n'aient été arrêtés : https://www.youtube.com/watch?v=nPenVqIcFgc
Revenir en haut Aller en bas
Contenu sponsorisé





[Résolu] Collisions avec une corde Empty
MessageSujet: Re: [Résolu] Collisions avec une corde   [Résolu] Collisions avec une corde Empty

Revenir en haut Aller en bas
 
[Résolu] Collisions avec une corde
Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide confirmés-
Sauter vers: