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 :

(ASE) Chargement des coordonnées de textures dans un tableau


Sujet :

OpenGL

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2003
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2003
    Messages : 72
    Points : 43
    Points
    43
    Par défaut (ASE) Chargement des coordonnées de textures dans un tableau
    Bonjour,

    Je suis en train de modifier mon loader ASE pour tenir compte des coordonnées de texture mais voilà que je me suis rendu compte dans le fichier qu'il y a une liste de face avec ce qui me semble être des indices sur les coordonnées de texture.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    *MESH_TFACELIST {
            *MESH_TFACE 0	0	1	2
    	*MESH_TFACE 1	2	3	0
    	*MESH_TFACE 2	4	0	3
    Le problème c'est que ca ne suit pas le même ordre que les coordonées des vertex et là je suis tout fourré Parce que j'utilise glDrawElement() pour afficher mon objet et qu'il utilise un index dont j'ai spécifier celle des vertex, mais là si les coordonées de texture ne fit pas avec celle des vertex ca risque de pas très bien fonctionné, je n'ai aucune référence pour les indexés correctement.

    J'ai remarquer que plusieurs ont réussi à loader les coordonnées et à afficher via glDrawElement.

    1 - Je me demande si les coordonnées de texture du fichier ASE on besoin d'être indexé comme les vertex.

    2 - Si oui, comment faire pour les passé dans le bon ordre?

    Merci beaucoup

    Destinywar
    C# + OpenGL, IA, GL et le développement de jeux sont mes passions.

  2. #2
    Rédacteur
    Avatar de Bakura
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2005
    Messages
    1 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 386
    Points : 2 640
    Points
    2 640
    Par défaut
    Si tu veux utiliser les textures, tu vas devoir dire adieu à glDrawElements (en tout cas j'ai pas trouvé de techniques, puisque tu ne peux pas spécifier plusieurs index avec les vbo), sauf si tu réorganises tous les indices, mais je sais pas comment faire. La seule solution que j'ai trouvé pour mon loader ASE est de créer un nouveau tableau pour les normales et les textures en les mettant dans l'ordre et de faire un appel à glDrawArrays.

  3. #3
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2003
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2003
    Messages : 72
    Points : 43
    Points
    43
    Par défaut
    Bonjour,

    Tu les as mis dans le même ordre qu'il sont affiché dans le fichier ASE?

    Donc, j'aurais à ne pas m'occupé des indices et de prendre tout ( vertex, normal et texture coord ) dans l'ordre qu'il sont afficher?

    Je suis un peu confu là dessus présentement en ayant 2 liste de face qui semble indexé

    DestinyWar
    C# + OpenGL, IA, GL et le développement de jeux sont mes passions.

  4. #4
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2003
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2003
    Messages : 72
    Points : 43
    Points
    43
    Par défaut
    L'indice de la MESH_TFACE serais t'elle la même que la MESH_FACE. Je veut dire si l'indice 0 pour les deux corresponds à la même face...parce que si c'est le cas, ca va être fesable de faire la correspondance avec les indices pour glDrawElement.

    Donc pour l'indice du vertex 1 de la face 0, il a la texture coord du premier element de la face 0

    *MESH_FACE 0: A: 25 B: 24 C: 0 ...

    // Le vertex 1 de la face 0
    *MESH_VERTEX 25 1.6274 -0.2149 0.4361


    *MESH_TFACE 0 0 1 2

    // La texture coord de la face 0 pour le vertex 25
    *MESH_TVERT 0 0.7940 0.5835 0.1422
    C'est juste une suposition...

    Je regarde la section TVERT... C'est des texture 3D qu'il y a dans le fichier ASE?
    C# + OpenGL, IA, GL et le développement de jeux sont mes passions.

  5. #5
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2003
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2003
    Messages : 72
    Points : 43
    Points
    43
    Par défaut
    J'ai réussi et avec glDrawElement... Mes suppositions sont vrai sauf que le problème que j'avais c'est que j'ai essayer divers chose dans l'application de la texture dans 3ds max et finalement ca fucké les coordonnées de mon fichier...comment ca? je ne le sais pas mais j'ai recommencer et j'ai directement appliquer ma texture cette fois ci puis exporté en .ASE. Et voilà...

    Les index de *MESH_TFACE correspondais avec *MESH_FACE, donc j'ai pu réutiliser le même tableau d'indice en les mettants dans le même ordre

    Merci quand même Bakura...Il faut dire qu'un autre de tes discussions m'a aidé beaucoup.

    DestinyWar
    C# + OpenGL, IA, GL et le développement de jeux sont mes passions.

  6. #6
    Rédacteur
    Avatar de Bakura
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2005
    Messages
    1 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 386
    Points : 2 640
    Points
    2 640
    Par défaut
    Content que ça marche. Tu utilises les normales du fichier également ?

  7. #7
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2003
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2003
    Messages : 72
    Points : 43
    Points
    43
    Par défaut
    Citation Envoyé par Bakura
    Content que ça marche. Tu utilises les normales du fichier également ?
    Non, je calcule moi-même les normales... Autrement ca fesais toujours de quoi de bizarre... Sauf que je doit calculer les normales pour chaque vertex et pour le moment je calcul la normal pour la face et je met ca à chaque vertex jusqu'à ce que je trouve comment trouver la vrai normal de chaque vertex... Alors pour le moment ca fait du flat shading.

    DestinyWar
    C# + OpenGL, IA, GL et le développement de jeux sont mes passions.

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

Discussions similaires

  1. Génération automatique des coordonnées de textures.
    Par F-fisher dans le forum OpenGL
    Réponses: 5
    Dernier message: 27/12/2009, 11h46
  2. Réponses: 16
    Dernier message: 29/10/2007, 16h58
  3. Réponses: 4
    Dernier message: 21/03/2006, 17h38
  4. Réponses: 4
    Dernier message: 10/10/2003, 18h04

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