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 :

transparence pour particule


Sujet :

OpenGL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6
    Points : 2
    Points
    2
    Par défaut transparence pour particule
    bonjour a tous

    J'ai un petit probleme dans mon affichage de particule :
    la transparence n'est pas suffisante
    les particules sont en fait des "bmp" noir/blanc sensée faire un mask et luer couleur est calculée pseudo aléatoirement.

    Je voudrais que plus le bmp soit noir plus il soit transparent mais je n'ai jamais quelquechose de parfait.
    mon terrain de fond est blanc et j'ai du FOG et une lumiere active

    Voila en fait ca doit se passer au niveau du GlBlend mais j'ai essayé toute les possibilités et cela ne marche pas

    merci d'avance

  2. #2
    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
    essaye avec du blending additif (GL_ONE,GL_ONE) ou bien (GL_ONE, GL_SRC_ALPHA) je croit que ca devrait marcher....

    en plus avec de l'additif ca permet de faire des jolie effets par exemple tu met la couleur de tes particule a (0.5,0.2,0.1) et au bord du moteur de particule la couleur sera rouge mais au centre ca tendra plus vers le jaune vu qu'il ajoute les composantes RGB jusqu'a ce qu'il arrive a la limite de 1

    sinon ilne faut pas oublier de passer le Z-Buffer en lecture seul si tu ne veut pas avoir de problemes (glDepthFunc(GL_FALSE) => lecture seule et GL_TRUE => lecture/ecriture)
    voila j'espere que ca pourra t'aider
    @+
    * 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

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    j'ai essayé tes propositions mais ca ne rend toujours pas ce qu'il faut.
    On voit toujours des carrés gris/noir sur les bords et le centre en couleur...

  4. #4
    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
    tu peut mettre le code d'affichage stp
    * 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

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    118
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 118
    Points : 118
    Points
    118
    Par défaut
    ton bmp est peut-être mal fait : si les bord de ton bmp qui représente ta particule ne sont pas noir completement, on verra apparaitre les bord du carré du billboard.
    JC est bien notre dieu...(non non pas jesus christ mais John Carmack!!!)

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 835
    Points : 1 046
    Points
    1 046
    Par défaut
    Et surtout pas de fond blanc, essaye avec un fond noir (ou sombre), sinon ben ya des chances pour que quelle que soit la transparence de ta particule, tout soit plutot blanc (surtout en additif)

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6
    Points : 2
    Points
    2
    Par défaut toujours pas
    en fait mon fond est pratiquement tout blanc et le BMP pour les particules est un degrade de gris. En fait c'est presque le tutorial de gametutorials pour ceux qui connaisent. J'ai essayé toutes les possibilités de glBlend et rien ne marche, est ce que ca peu venir du depth buffer, d'un autre buffer ou du fog autour, de la lumiere...
    Si quelqu'un peut m'eclairer. Sinon je peux toujours le faire a partir de TGA mais ca risque d'etre un peu lourd non?

  8. #8
    Membre expérimenté

    Profil pro
    Programmeur
    Inscrit en
    Août 2002
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Programmeur

    Informations forums :
    Inscription : Août 2002
    Messages : 1 091
    Points : 1 679
    Points
    1 679
    Par défaut
    Tu as bien deux infos qui évoluent indépendamment:
    l'une la couleur et l'autre la transparence.

    Tu ne peux pas t'en sortir (du moins comme tu as décrit le probleme)
    sans un canal alpha et un blending style alphasrc/(1-alphasrc).

    si ton fond était noir tu pourrais utiliser de l'additif. Mais comme il est blanc ce n'est pas une option. (et le soustractif aurait l'effet inverse: le noir ressortirait et les couleurs claires laisseraient passer le blanc en négatif).

    Marque sur le papier quelle opération de couleur tu as besoin
    couleur src + couleur dst
    couleur src * alpha + couleur dest * (1-alpha)
    et choisis en fonction de ça.

    A+
    LeGreg

    Mon site web | Mon blog | Mes photos | Groupe USA
    > BONJOUR, JE SUIS NOUVEAU SUR CE FORUM
    > presse la touche caps lock, stp
    > OH.. MERCI C EST BEAUCOUP PLUS FACILE COMME CA

  9. #9
    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
    est ce que tu est obligé d'avoir des particule avec un fond blanc ???
    si ce n'est pas la cas tu peut inverser les couleurs de ta particule et passer en mode additif
    * 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

  10. #10
    Membre du Club
    Inscrit en
    Janvier 2004
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 40
    Points : 48
    Points
    48
    Par défaut
    tu pourrais aussi editer toi meme ta composante alpha avant de creer la texture avec glTexImage2D (l'integrer au code de chargement d'image)

Discussions similaires

  1. Réponses: 1
    Dernier message: 19/03/2007, 13h46
  2. Réponses: 7
    Dernier message: 04/06/2006, 12h24
  3. fichiers htaccess transparents pour apache..
    Par vigon dans le forum Apache
    Réponses: 1
    Dernier message: 22/05/2006, 22h16
  4. [VB6]Semi-transparence pour les imageboxes ou usercontrols
    Par BrianDarkfield dans le forum VB 6 et antérieur
    Réponses: 12
    Dernier message: 06/05/2006, 21h35
  5. Icone fond transparent pour menu personnalisé
    Par gbuxo dans le forum Access
    Réponses: 17
    Dernier message: 14/04/2006, 06h20

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