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 :

Répéter une partie de texture


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut Répéter une partie de texture
    Salut,
    je bute sur un problème mais je pense que c'est infaisable. Je crée une texture OGL depuis un fichier image contenant plusieurs "zones textures", par exemple 4 styles différents de murs. Pour afficher uniquement la "zone texture" qui m'intéresse je modifie les coordoonées avec glTexCoord2f(). Ce que j'aimerais faire c'est répéter une de ces zones sur un quad.
    Quelqu'un sait-il comment faire ? Avec ce mécanisme ca me paraît impossible.
    Est-ce que je suis obligé de créer un quad pour chaques bouts de mur ?

    Merci d'avance ^^

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    366
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 366
    Par défaut
    il faut tenter avec un pixel shader.

    si par exemple ta texture (carre) est divise en 4 (cas trivial de 4 sous carres identitiques), dans ton fragment shader, tu vas t assurer que

    gl_TexCoord.xy restent entre [0 et 0.5] donc que par exemple 0.75 deviennent 0.25 (c est une operation de modulo)

    essai une formule du genre :

    x - y * entiere(x / y);

    pour que x reste toujours compris entre [0 , y]

  3. #3
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    Je préfèrerais me passer des shaders pour l'instant, d'ailleurs je crois que ma CG Old School le permet même pas

    Finalement je pense que plutôt que de générer une texture OGL et des coordonnées de sous-textures pour les 4 zones, je vais créer 4 textures OGL au chargement de l'image.
    Merci pour la réponse. En tout cas je garde l'idée dans un coin ^^

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    366
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 366
    Par défaut
    [QUOTE=Djakisback;2522256]Je préfèrerais me passer des shaders pour l'instant, d'ailleurs je crois que ma CG Old School le permet même pas
    [QUOTE]

    Ca doit etre du pixel shader version 1.1 donc un peu pret toute carte graphique post 2000 devrait convenir

  5. #5
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    Ah oui effectivement la Geforce 4 TI 4200 supporte les Pixel Shaders 1.3

  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
    Citation Envoyé par Djakisback Voir le message
    Ah oui effectivement la Geforce 4 TI 4200 supporte les Pixel Shaders 1.3
    mais elle ne supporte pas les fragment program qui ont été normalisé au moment de la sortie des GeForceFX... donc ce n'est pas possible sur ce genre de carte (à moins de passer par des extension propio de nVidia)
    * 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

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

Discussions similaires

  1. Répétition d'une partie d'une texture
    Par xwindoo dans le forum OpenGL
    Réponses: 4
    Dernier message: 16/07/2010, 18h55
  2. Réponses: 1
    Dernier message: 11/03/2009, 18h22
  3. Réponses: 3
    Dernier message: 24/10/2005, 14h26
  4. comment remplacer une partie de texte dans un champs
    Par patlapi dans le forum Paradox
    Réponses: 4
    Dernier message: 20/11/2003, 14h38
  5. selectionner une partie d'un TImage
    Par bidochon dans le forum Composants VCL
    Réponses: 2
    Dernier message: 20/02/2003, 19h08

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