Changement de shader, Utilisation du Z buffer
2 participants
Page 1 sur 1
Changement de shader, Utilisation du Z buffer
* 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
* 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
Re: Changement de shader, Utilisation du Z buffer
* 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.
* 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
Re: Changement de shader, Utilisation du Z buffer
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
Re: Changement de shader, Utilisation du Z buffer
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 ?
Re: Changement de shader, Utilisation du Z buffer
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
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|