Pages: 1
salut a tous
voila j'ai commencer a jouer un peu avec les shaders sous irrlicht, j'ai reussi a implementer assez rapidement ceux fournis avec le moteur.
Actuellement j'essaie d'intégrer un shader glsl fait par un des membres de la communauté irrlicht
( http://irrlicht.sourceforge.net/phpBB2/ … hp?t=27054 ), et j'éprouve quelques difficulté a le faire fonctionner.
En gros : j'ai mon objet je le texture de la même façon que sur l'exemple et j'applique mon shader, mais celui-ci me retourne l'erreur suivante :
GLSL shader program failed to link
vertex info
-----------
(0) : error C5052: gl_FragColor is not accessible in this profile
pourtant cette fonction semble bien être référencer pour opengl 1.5
une autre chose qui m'intrige c'est que la callback : OnSetConstants(video::IMaterialRendererServices* services,s32 userData )
ne semble pas être appeler, pourtant j'indique bien l'emplacement de cette callback lorsque je fais un addHighLevelShaderMaterialFromFiles
quelqu'un serait il en mesure de m'aider ?
Dernière modification par MOg (25-08-2009 00:18:49)
Hors ligne
Je ne connais pas le GLSL, mais en effet au vue de ce que tu dis, c'est étrange.
Si tu pouvais isoler ton soucis à travers un petit code que tu posterais (voir une archive zip), cela simplifierait la façon de t'aider, et cela serait surtout aussi plus parlant
Hors ligne
GLSL shader program failed to link
vertex info
-----------
(0) : error C5052: gl_FragColor is not accessible in this profile
Tu es dans un vertex shader là, c'est normal que tu ne puisses pas assigner une couleur à un pixel (fragment)
gl_FragColor n'est disponible que pour les pixel shaders
Hors ligne
merci pour vos réponses
Aranoth : le code gl_FragColor est bien dans le pixel shaders pourtant, pas dans le vertex.
tmyke : je comprend que c'est un peu chaud sans code sous les yeux je vais essayer de faire un exemple en partant de rien
Hors ligne
bon voila j'ai essayer d'extraire le code de mon projet et de faire un exemple tout con avec presque rien dedans le rendu est le même voila le zip : shader.zip
merci pour votre aide
Dernière modification par MOg (26-08-2009 20:15:52)
Hors ligne
Cool, je regarde cela
Hors ligne
En fait ce que disait Aranoth m'a mis la puce à l'oreil (faut toujours écouter les gens calé )
Tu essais bien de faire passer un PixelShader pour un vertex shader. regarde ta ligne
Tu injecte deux fois un PixelShader, le premier nom devrait plutôt être GlassV.glsl, non ?
Hors ligne
désoler j'ai fait cette erreur en recopiant le code, mais j'avais a la base bien le GlassV.glsl en premier paramètre dans ma fonction !! j'ai remplacer ce paramètre dans l'exemple que je t'avais donner, et sa marche impeccable ! merci a vous
je vais essayer de recopier ce shaders en hlsl , je vous le ferais passer si ça vous intéresse
Dernière modification par MOg (29-08-2009 11:13:25)
Hors ligne
Oui, c'est toujours intéressant
Hors ligne
Pages: 1