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 :

Ne pas afficher le fond d'une texture (color key)?


Sujet :

OpenGL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2005
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 25
    Points : 18
    Points
    18
    Par défaut Ne pas afficher le fond d'une texture (color key)?
    Bonjour à tous !
    Voila: J'ai créé une texture à partir d'une surface SDL. Cette texture contient
    du texte.
    J'affiche cette texture au dessus d'une autre et je voudrais ne pas afficher le fond noir...
    Mais... Comment on fait ?

    D'autre part, vu que j'ai du redimenssioner ma surface en puissance de 2 je me demandais comment on fait pour afficher seulement la zone du texte et non pas le surplus (à cause du redimensionnement en puissance de 2)... J'ai essayé avec des coordonnées de texture mais il me fait du scaling au lieu de m'afficher ma texture de texte en tronquant !

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2005
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 25
    Points : 18
    Points
    18
    Par défaut
    C'est bon j'ai trouvé pour le color key !
    il suffisait de faire:
    glEnable (GL_BLEND);
    glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);

    Par contre je sais pas pour le deuxieme problème de redimessionement ....
    Et aussi : comment on change la couleur de transparence ?

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

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Points : 5 323
    Points
    5 323
    Par défaut
    pour changer le couleur de transparence tu est obliger de recharger la texture...

    sinon un autre point important avec l'utilisation de l'alpha test : toujours utiliser du blending en même temps. En effet, si tu agrandi ta texture, tu vera apparaitre le couleur de transparence sur les bord des texel transparent. ceci est due a l'interpolation, avec l'utilisation du blending
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    glEnable(GL_BLEND);
    glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
    ca reduira le probleme. En plus certaines carte graphique n'active l'alpha test que si le blending est activé ( ce qui d'ailleurs ne corespond pas a la norme openGL )

Discussions similaires

  1. Ne pas afficher les balises d'une page html
    Par abir84 dans le forum Ruby
    Réponses: 3
    Dernier message: 20/10/2007, 11h53
  2. Réponses: 2
    Dernier message: 26/03/2007, 18h25
  3. Afficher un fond sur une action bouton
    Par lordenzo dans le forum Flash
    Réponses: 6
    Dernier message: 31/03/2006, 13h47
  4. Ne pas afficher la selection d'une listview
    Par BigBenQ dans le forum C++Builder
    Réponses: 2
    Dernier message: 23/11/2005, 12h51

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