Changement de shader, Utilisation du Z buffer

Aller en bas

Changement de shader, Utilisation du Z buffer

Message par sylvain_marie le Ven 28 Mar - 13:36

* Je n'ai pas pu regarder en détail, mais osg::Program::dirtyProgram() semble nécessairepour déclencher la recompilation d'un shader qui a changé dans un program ? (utile pour Flous::changeFragShader(), etc.)


* Je n'ai pas encore de réponse pour l'utilisation de gl_FragDepth, mes tests donnent des résultats bizarres (tout noir).
A moins qu'il faille quand même capturer le Z buffer dans une texture pour ensuite l'utiliser dans le shader avec un Sampler2D ? (voir OSG/src/osgShadow/ShadowMap.cpp ligne 166 pour un exemple ?) Mon planning est chargé (en déplacement toute la semaine prochaine) mais j'essaierai de regarder ça de plus près.

Sylvain

sylvain_marie

Nombre de messages : 13
Date d'inscription : 23/01/2008

Voir le profil de l'utilisateur http://www.nexgenergo.com

Revenir en haut Aller en bas

Re: Changement de shader, Utilisation du Z buffer

Message par Olivier le Ven 28 Mar - 14:57

* En ce qui concerne dirtyprogram() nous l'avions testé mais la recompilation ne s'etait pas faite automatiquement, on avait également essayé avec des osg::program::apply(StateSet ) sans plus de résultat, c'est pourquoi nous vous avions posé la question..

* Pour le gl_FragDepth j'avais réussi a capturer le depth buffer dans une texture puis le passer en sampler2D et j'ai également obtenu des résultats bizarres (du noir et blanc selon les textures originelles du modèle )... nous avions repris le modèle de shadowMap justement.. d'ou nos questions. Nous allons réessayer avec des shadowsampler2D..

En tout cas merci de votre réponse rapide.

Olivier

Nombre de messages : 323
Date d'inscription : 23/01/2007

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Changement de shader, Utilisation du Z buffer

Message par sylvain_marie le Ven 28 Mar - 19:27

Olivier a écrit:* En ce qui concerne dirtyprogram() nous l'avions testé mais la recompilation ne s'etait pas faite automatiquement, on avait également essayé avec des osg::program::apply(StateSet ) sans plus de résultat, c'est pourquoi nous vous avions posé la question..

http://article.gmane.org/gmane.comp.graphics.openscenegraph.user/4323 propose d'utiliser theShader->setShaderSource(blueShaderSource);

A tester ?

Sylvain

sylvain_marie

Nombre de messages : 13
Date d'inscription : 23/01/2008

Voir le profil de l'utilisateur http://www.nexgenergo.com

Revenir en haut Aller en bas

Re: Changement de shader, Utilisation du Z buffer

Message par sylvain_marie le Ven 28 Mar - 19:38

Olivier a écrit:* Pour le gl_FragDepth j'avais réussi a capturer le depth buffer dans une texture puis le passer en sampler2D et j'ai également obtenu des résultats bizarres (du noir et blanc selon les textures originelles du modèle )... nous avions repris le modèle de shadowMap justement.. d'ou nos questions. Nous allons réessayer avec des shadowsampler2D..

Les valeurs de gl_FragDepth sont normalisées entre -1 et 1 (entre near et far plane), donc ça parait normal ?

sylvain_marie

Nombre de messages : 13
Date d'inscription : 23/01/2008

Voir le profil de l'utilisateur http://www.nexgenergo.com

Revenir en haut Aller en bas

Re: Changement de shader, Utilisation du Z buffer

Message par Olivier le Sam 29 Mar - 12:39

la solution proposée pour le shader fonctionne, on s'occupe maintenant du depth buffer.

Olivier

Nombre de messages : 323
Date d'inscription : 23/01/2007

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Changement de shader, Utilisation du Z buffer

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum