Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1524 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Couche alpha (opengl)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Couche alpha (opengl)

n°439012
darkalt3
aaaargh
Posté le 25-06-2003 à 14:27:41  profilanswer
 

Salut,
 
j'ai implémenté un certain alpha (glEnable(GL_SRC_ALPHA) ou quelque chose approchant, je ne peux avoir mon code sous les yeux ...)
Quand j'affichage quelques points (GL_POINT, tous compris dans un cube centré en 0 et d'arête 1), et que je fais tourner ma scène autour du point origine, il y a certains angle ou on ne voit plus rien ...
 
est-ce normal ?


Message édité par darkalt3 le 25-06-2003 à 14:39:06
mood
Publicité
Posté le 25-06-2003 à 14:27:41  profilanswer
 

n°439750
LeGreg
Posté le 26-06-2003 à 05:32:47  profilanswer
 

quel est le rapport avec la couche alpha?
 
Tu as essaye en desactivant l'alpha ?
 
LeGreg
ps: a priori non ce n'est pas normal mais je ne peux pas t'en dire plus sans plus de detail ou le code fautif.

n°439838
darkalt3
aaaargh
Posté le 26-06-2003 à 09:46:32  profilanswer
 

legreg a écrit :

quel est le rapport avec la couche alpha?
 
Tu as essaye en desactivant l'alpha ?
 
LeGreg
ps: a priori non ce n'est pas normal mais je ne peux pas t'en dire plus sans plus de detail ou le code fautif.


 
Alors:
-j'ai effectivement essayé en désactivant l'alpha, et là on voit bien tout mes points (ils forment des nuages, ~10000 points), et lorsque je tourne mon cube, ils restent affichés toutt à fait normalement ...
- Quand j'active l'alpha, sous certains angles, ils sont tous invisibles.
 
=> pourquoi cette différence de comportement ? ...
 
J'essaierais de fournir un morceau de code ce soir.
 
PS: merci !


Message édité par darkalt3 le 26-06-2003 à 09:46:59
n°439850
LeGreg
Posté le 26-06-2003 à 09:55:01  profilanswer
 

ok,
si tu as des faces transparentes  
alors tu dois tracer les faces transparentes de l'arriere vers l'avant
ou alors tu changes de methodes de blending
par exemple en additif.
 
Ps: est-ce que tes points sont de couleur uniforme?  
a quoi sert l'alpha dans leur cas ?
 
LeGreg

n°439851
darkalt3
aaaargh
Posté le 26-06-2003 à 10:02:29  profilanswer
 

legreg a écrit :

ok,
si tu as des faces transparentes  
alors tu dois tracer les faces transparentes de l'arriere vers l'avant
ou alors tu changes de methodes de blending
par exemple en additif.
 
Ps: est-ce que tes points sont de couleur uniforme?  
a quoi sert l'alpha dans leur cas ?
 
LeGreg


Non, aucune face, juste des points, de couleurs non uniforme.
Ce sont des points qui representent des stats, et dont l'alpha représente une certaine 'présence'...
 
Je ne comprends pas d'ou vient le pb avec l'alpha... ca devrait etre indépendant des matrices de transformation ....
Rhâ, j'aurais accès à mon code que ce soir :/
 

n°439860
LeGreg
Posté le 26-06-2003 à 10:10:24  profilanswer
 

oui mais si tu ecris la profondeur de ces points dans le depth buffer, au fur et a mesure que tu traces seuls les points les plus proches vont apparaitre.
 
Le depth buffer est la pour cacher les pixels opaques, cela ne marche pas pour les pixels transparents pour les tracer correctement, tu desactives le test de profondeur et soit tu traces de l'arriere vers l'avant, soit tu changes de methode de blending.
 
LeGreg


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Couche alpha (opengl)

 

Sujets relatifs
openglopengl parties cachées
[opengl] ai-je bien compris le radial blur ?[OpenGL]Pourquoi ai je une fenetre grise !!! [résolu]
probleme a la compilation pour afficher une fenetre avec SDL et opengl[opengl] generer un paysage en bumpmapping
OpenGL : Pourquoi c'est si lent (code complet fournit)Kels bouquins/tuto pour commencer D3D/ OpenGL ?
[Delphi] Recherche désespéremment procédure ALPHA-BETA.....[OpenGL] Pb de noob - Vertex & Color inside
Plus de sujets relatifs à : Couche alpha (opengl)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR