|
Publicité ' | ||||||||||||||||||||||||
|
|
#21 |
|
Membre Expert
![]() ![]() Julian IbarzIngénieur développement logiciels Inscription : avril 2006 Messages : 449 ![]() |
passe au debug alors, regarde bien que ta premiere face est bien affichée, ensuite regarde que ta deuxieme l'est aussi. Peux-tu me faire des screens de rendu de chaque passe ?
|
|
00
|
|
|
#22 |
|
Membre du Club
![]() |
Bon alors voilà les screenshots c'est assez intéressant
Je dispose de - l'image réelle: http://rapidshare.com/files/14694854...nReel.PNG.html - le color picking avant que je trafique avec le stencil & l'alpha (et ça marchait): http://rapidshare.com/files/14694888...ormal.PNG.html - Le color picking après la tambouille stencil + alpha dont le code est plus haut : http://rapidshare.com/files/14694906..._Test.PNG.html C'est marrant des éléments ont disparu... - Je mets donc aussi en ligne ce qui est dessiné dans le stencil (j'enlève le colorMask à FALSE et je ne redessine pas les rectangles de picking Je dois avouer que je comprends pas pourquoi mes ailes de moulin ont disparu - A tout hasard je mets en ligne la texture de l'aile de moulin pour qu'on soit bien d'accord que le canal alpha est bien mis dans le png http://rapidshare.com/files/146949869/Moulin00.png.html Voilà si tu as une idée ? |
|
|
00
|
|
|
#23 |
|
Membre Expert
![]() ![]() Julian IbarzIngénieur développement logiciels Inscription : avril 2006 Messages : 449 ![]() |
En fait la technique du stencil est mauvaise... Pour que ça marche il ne faut pas que les objets se chevauchent or c'est justement dans ce cas particulier que ça nous intéresse... Car imagine que tu dessines un objet derriere les ailes de ton moulin et bien il va remplir le stencil de 1 et quand tu dessineras le moulin et bien il croira qu'il peut alors qu'il ne peut pas (j'explique très mal mais je pense que t'as compris le problème
Donc en fait il n'y a pas de solution miracle à part faire comme je t'ai dis au début (générer une texture d'identifiant pour les objets avec des trous, ce qui prend deux fois plus de mémoire). Sinon pour ton problème il doit venir en dehors des lignes de code que tu m'as filé car je ne vois pas de réel problème dans tes lignes. Normalement il viendrait dans la partie du code qui affiche tes objets en transparent (tu dois sûrement activer un état opengl ou un truc comme ça). Désolé de ne pas t'aider plus que ça... |
|
00
|
|
|
#24 |
|
Membre du Club
![]() |
je vois ce que tu veux dire
Si on a un objet derrière le moulin (ou plus précisément derrière une zone transparente du moulin), effectivement le stencil va passer à 1 et mon moulin sera affiché à cet endroit alors que je n'en ai pas envie Hors de question de me rabattre sur la solution proposée bien plus haut car j'ai 300 textures qui se baladent dans l'éditeur de cartes de jeu... Donc c'est mort Merci en tout cas de ton aide sur ce sujet |
|
|
00
|
|
|
#25 | |
|
Expert Confirmé
![]() ![]() Tony BAYARTIngénieur développement logiciels Inscription : avril 2005 Messages : 2 198 ![]() |
Citation:
le problème que j'ai rencontré avec les ATI, c'est qu'elles utilisent l'alpha blending pour faire de l'alpha test, du coup le pixel passe par la phase de modulation et la couleur n'est pas celle qu'on voulait GoldenEye, dans tes tests, est-ce que tu as bien désactivé le dithering ? |
|
|
00
|
|
|
#26 | |
|
Membre Expert
![]() ![]() Julian IbarzIngénieur développement logiciels Inscription : avril 2006 Messages : 449 ![]() |
Citation:
|
|
|
00
|
|
|
#27 |
|
Expert Confirmé
![]() ![]() Tony BAYARTIngénieur développement logiciels Inscription : avril 2005 Messages : 2 198 ![]() |
vas dire ça à ATI
![]() la seule différence entre un alpha blending et un alpha test c'est que l'alpha test ne présente que 2 modulation : 0.0 et 1.0 le blending permet de moduler avec des valeurs intermédiaires pour le color picking, il faut vraiment travailler avec des valeurs exactes si on arrive à conserver les valeurs exactes après un alpha test alors ça marchera si l'implémentation des drivers est telle que la couleur est faussée par l'alpha test, tu l'as dans le baba en bref, il faut tester, mais perso j'y crois pas trop |
|
00
|
|
|
#28 |
|
Membre du Club
![]() |
GlDisable(GL_DITHER) n'a rien changé
Je m'aperçois que Shenron a raison, j'ai comme l'impression que mes petites images disparaissent du stencil dès lors que le blending est activé... Moralité ATI c'est pourri |
|
|
00
|
|
|
#29 | ||||
|
Expert Confirmé Sénior
![]() ![]() Paul TOTHFreelance Inscription : novembre 2002 Messages : 3 414 ![]() |
Bonjour,
je me permet de remonter ce vieux post car j'ai un problème qui semble tout à fait similaire sur une ATI Mobility Radeon HD 5650 je fais un rendu de simples triangles sans texture, sans trou, etc...et pas moyen d'avoir des couleurs vraies le code est en Delphi mais vous pourrez sans doute le comprendre Code :
j'ai bien un fond blanc (-1), des triangles de couleurs 0, 1, 2 ... mais sur les bords j'ai des couleurs comme #BFBFC0 #404042 pour passer du blanc au noir que me reste-il pour désactiver le traitement ? un Shader ? EDIT: ARF ! je viens de tester avec un Shader j'ai le même résultat ! Code :
c'est quoi ce délire ?! EDIT: ok, c'est normal, le Dither se fait après le Fragment Shader...et d'après ce que je lis ATI force un Dither x2 minimum...les cons !
__________________
Developpez.com: Mes articles Entreprise: Execute SARL Produits : UPnP, RemoteOffice sous Delphi Embarcadero : Ile de la Réunion, Dephi, C++Builder, RADPHP...TVA à 8,5% |
||||
|
00
|
Copyright © 2000-2012 - www.developpez.com