IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

OpenGL Discussion :

Morphing


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de [Silk]
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2005
    Messages
    198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2005
    Messages : 198
    Par défaut Morphing
    Salut, c'est possible de faire du morphing avec OpenGl ? ou avec une autre librairie ? du genre un thore (en mouvement) se transforme en carré... voilà si vous avez des infos je suis preneur...

    [Silk]

  2. #2
    Membre confirmé

    Inscrit en
    Août 2004
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 43
    Par défaut
    aucun rapport avec OpenGL... mais bien sur que c'est possible
    i te suffit d'ppliquer le bon algorithme à l'ensemble des veteurs décrivant ta surface pour que celes çi se modifient...
    Après qu'elles soit affichée par OpenGL, Direct3D ou un renderer homemade, le résultat sera le même...

    l'exemple le plus simple mais surement pas le plus joli serait de réaliser une interpolation linéaire entre tes deux vecteurs :

    tu as un vecteur i et un vecteur f, à chaque frame tu calcul un vecteur temp += i + (f - i) * dt, ou dt est minuscule (temps écoulé entre deux frames, par exemple)...

    ainsi, tu pars bien d'un ensemble de vecteurs décrivant un tore (par exemple) à un ensemble de vecteurs décrivants un cube (par exemple)
    attention cela dit, le résultat risque d'être plutot moche !

    je te laisse approfondir les recherches avec google pour connaitre d'autres techniques à vrai dire, je n'y connais rien dans ce domaine

    mais bon, pour répondre à ta question, avec opengl, c'est faisable !

  3. #3
    Membre confirmé Avatar de [Silk]
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2005
    Messages
    198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2005
    Messages : 198
    Par défaut
    ok merci pour ces explications mais bon sa a l'air compliqué surtout si jutilise Glut pour créer mon tore comment je vais pouvoir faire pour manipuler les vecteurs ???
    Sinon je vais essayer de me renseigner

    [Silk]

  4. #4
    Membre confirmé

    Inscrit en
    Août 2004
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 43
    Par défaut
    si tu me donnes la taille du grand rayon, celle du petit rayon, le diamètre du tore ainsi que le nombre de vertice que tu veux qu'il ait, je te le fais sous gmax et j'importe la liste des vertice dans un tableau... à toi de le récupérer avec un glInterleavedArray, par exemple...

    c'est tout ce qu eje peux faire pour toi si tu veux !

    et aussi te déconseiller de bosser avec les primitives GLUT, c'est bien pour les essais, mais quand tu veux faire un programme sérieu, mieux vaut tout dessiner à la main...

  5. #5
    Membre confirmé Avatar de [Silk]
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2005
    Messages
    198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2005
    Messages : 198
    Par défaut
    Re
    Citation Envoyé par Antickriszt
    mais quand tu veux faire un programme sérieu, mieux vaut tout dessiner à la main...

    ola y va falloir que je bosse dur alor parce que moi en math les vecteurs simples sa va mais dès qu'il yen a un peu trop je suis perdu...
    (et soit dit en passant toute la partie vecteur d'OpenGl, que je suppose quand meme assez importante, reste très obscure pour moi )
    pour l'instant je veux juste tester ce que peut donner un morphing pour après l'utiliser sur des objets plus complexes... mais pour info mon thore c'est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    GlutSolidTorus(1.0,2.0,30,30);
    le nombres de slices ou de vertices(je voi pas trop ce que c'est) ce n'est pas vraiment important si sa varie
    @++

    [Silk]

  6. #6
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Par défaut
    attention avec l'interpolation lineaire, il faut que la forme de depart contienne le même nombre de vertex que la forme d'arrivée (on peut en mettre plusieurs au même endroit pour donner cette impression...), sinon comment detecter a quel moment un vertex (et donc potentiellement plusieurs faces) doivent disparaitre ?
    * Il est infiniment plus simple de faire rapidement un code qui marche que de faire un code rapide qui marche
    * pour faciliter les recherches, n'oubliez pas de voter pour les réponses pertinentes
    Mes articles

  7. #7
    Membre confirmé Avatar de [Silk]
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2005
    Messages
    198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2005
    Messages : 198
    Par défaut
    Sa voudrait donc dire que certains morphings ne sont pas possible avec l'interpolation linéaire ?
    On fait comment dans ce cas là alors ?

    (Sa y va sur ce topic ojourd'hui )
    [Silk]

  8. #8
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Par défaut
    si c'est possible, mais il faut utiliser des "truc" pour que ca marche.
    en gros si ti a un tore de 300 vertex, il faudra regrouper tes vertex en 8 points pour former un carré (ou alors former des grilles sur les coté du carré (tesselation)) afin que le carré utilise bien les 300 vertex...
    * Il est infiniment plus simple de faire rapidement un code qui marche que de faire un code rapide qui marche
    * pour faciliter les recherches, n'oubliez pas de voter pour les réponses pertinentes
    Mes articles

Discussions similaires

  1. [FLASH 8] morphing de photos consécutives
    Par Dsphinx dans le forum Flash
    Réponses: 8
    Dernier message: 20/12/2006, 19h54
  2. algorithme de Morphing
    Par mannaz dans le forum Traitement d'images
    Réponses: 2
    Dernier message: 14/12/2006, 21h31
  3. [FLASH 8] Probleme de morphing
    Par chienlou dans le forum Flash
    Réponses: 2
    Dernier message: 26/05/2006, 11h04
  4. [FLASH 8] Morphing entre 2 images ou plus
    Par shaka84 dans le forum Flash
    Réponses: 1
    Dernier message: 13/05/2006, 17h02
  5. Réponses: 2
    Dernier message: 20/04/2006, 13h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo