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 :

Transformations sur des textures


Sujet :

OpenGL

  1. #1
    Membre à l'essai
    Inscrit en
    février 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : février 2006
    Messages : 17
    Points : 13
    Points
    13
    Par défaut Transformations sur des textures
    Bonjour, je fais appel à votre aide car j'ai un petit soucis avec mon application.

    Je fais un rendu volumique et une des méthodes pour afficher l'objet conciste à créer des quadrilatères parallèles à la vue et à faire tourner une texture 3D représentant le modèle.

    L'idée est que dans ma méthode d'affichage, je dois retrouver la matrice de vue du modèle, en extraire le rotation et la translation. Je dois appliquer la rotation à la texture 3D et la translation aux quadrilatères. Ainsi j'obtiens ce que je veux, des plans parallèles à la vue et la texture qui tourne.

    D'après ce que j'ai compris, ce n'est pas la texture qui bouge mais les coordonnées, donc si on déplace les coordonnées vers la gauche, on a l'impression que le modèle se déplace vers la droite. Il faut donc retrouver la matrice de rotation inverse qui est en fait la transposée sachant qu'une matrice de rotation est orthogonale.

    C'est ce que j'ai fais, tout fonctionne parfaitement à un détail près, toutes mes rotations sont inversées! En toute logique le fait de prendre la transposée devait pallier ce problème mais ce n'est pas le cas. De plus, si je ne fais pas la transposée j'obtiens des rotations incohérentes (les rotations se font sur les axes locaux et plus globaux ).

    Avez-vous une idée de comment je dois procéder?

  2. #2
    Expert éminent sénior

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : décembre 2005
    Messages : 5 121
    Points : 11 877
    Points
    11 877
    Par défaut
    Hmmm j'avoue ne pas comprendre le problème... En principe, tu associes un sommet de ton modéle à un point de ta texture. Cette association ne change jamais, par contre la position du sommet peut bouger.

    OpenGL s'occupera du reste...

    Pourquoi veux-tu changer l'association texture-modéle ?

    Jc

  3. #3
    Membre à l'essai
    Inscrit en
    février 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : février 2006
    Messages : 17
    Points : 13
    Points
    13
    Par défaut
    L'asssociation reste la même. Je fais juste tourner ma texture sur les 3 axes en fonction de la trackball.

    Pour te donner une idée en 2D, imagine que tu veuilles afficher une roue, tu vas appliquer une texture à un quadrilatère et le faire tourner. Dans mon cas, c'est la texture qui tourne et le quadrilatère qui reste fixe modulo quelques translations.

  4. #4
    Membre émérite
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2003
    Messages : 1 683
    Points : 2 568
    Points
    2 568
    Par défaut
    Je ne sais pas comment tu fais ta rotation, mais tu pourrais inverser les angles de rotations... non ?

    Tu utilises des impostors ou des billboards ?

    Et c'est bizarre que les coordonnées de ta texture change (si tu peux faire 2 screenshots, si c’est possible), le rendu devrait être fait dans une texture qui devrait être ensuite appliquée à ton impostor/billboard

  5. #5
    Membre à l'essai
    Inscrit en
    février 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : février 2006
    Messages : 17
    Points : 13
    Points
    13
    Par défaut
    Affaire résolue, j'affichais mes slices dans l'ordre inverse.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ajouter une textures sur des objets 3D openGL
    Par rere56 dans le forum 3D
    Réponses: 1
    Dernier message: 27/07/2007, 11h08
  2. Réponses: 1
    Dernier message: 05/07/2007, 14h48
  3. Disparition des textures sur certaines cartes 3D
    Par Francky033 dans le forum DirectX
    Réponses: 1
    Dernier message: 01/10/2004, 05h40

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