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 :

glActiveTexture et affichage de plus de 32 textures [OpenGL 4.x]


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut glActiveTexture et affichage de plus de 32 textures
    Bonjour à toute la communauté OpenGL,

    Je suis actuellement ce tutoriel Developpez et je me pose quelques questions au niveau des unités de texture.

    Comme dans le tuto, j'ai un fragment shader, un vertex shader, deux textures pour mon cube. Tout roule.
    Le hic est qu'on ne peut pas assigner plus de 32 unités de textures au fragment shader pour motif de performance matérielle (l'activation va de glActiveTexture(GL_TEXTURE0) à glActiveTexture(GL_TEXTURE31))

    Comment se passe t-il si je souhaite afficher plusieurs cube, avec les mêmes fragment/vertex shader, avec en somme plus de 32 textures à afficher ? Faut-il créer un vertex/fragment shader par cube ?

    Merci

    Jesarey

  2. #2
    Expert confirmé
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 226
    Par défaut
    J'ai jamais vu quelqu'un qui a besoin de 32 texture en même temps ,même les gros jeux AAA ne le font pas

    Sinon en général , si j'ai bien compris le soucis, on fait autant de draw call que de changement de texture.
    Les textures pour le fragment shader ,cela sert pour avoir texture + normal map etc etc
    Pas à bind les textures

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 153
    Billets dans le blog
    4
    Par défaut
    Un cube de 6 faces, tu utilises 32 textures avec ?
    Ça fait 5-6 textures par face, je trouve ça peu pertinent, mais mettons...
    Si tu veux, tu peux utiliser 32 textures par face, en n'utilisant non pas un cube mais de simples rectangles et tu peux les positionner de manière à ce qu'un cube soit visible.
    Voilà, tu peux mettre 32 textures dans ton shader à utiliser sur ton rectangle !
    Mais, encore une fois, peu pertinent.

    Pi les textures sont surtout des matrices de données. Ce n'est pas réservé à l'affichage.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Merci de vos retours ! Je comprends mieux la logique !

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

Discussions similaires

  1. [MySQL] trier des timestamps pour affichage du plus récent
    Par cyberkoa dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 22/03/2010, 07h21
  2. [FBO+GLSL]rendu dans plus d'une texture à la fois
    Par Kurisu dans le forum OpenGL
    Réponses: 4
    Dernier message: 20/06/2008, 18h53
  3. langue d'affichage SQL*PLUS
    Par big1 dans le forum SQL
    Réponses: 2
    Dernier message: 29/04/2008, 16h04
  4. Affichage date plus récente dans requête champ expression
    Par sl1980 dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 17/08/2007, 09h47
  5. Réponses: 8
    Dernier message: 19/12/2006, 13h15

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