Pages: 1
- Accueil forums
- » Shaders/embellissement
- » probléme dans l'utilisation d'un shaders
24-08-2009 22:16:52
- MOg
- Membres

- Date d'inscription:
- Messages: 16
- IP: 93.1.212.175
- Courriel Site web
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/viewtopic.php?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 ?
Hors ligne
25-08-2009 16:11:05
- tmyke
- Administrateurs

- Date d'inscription:
- Messages: 1025
- IP: 86.204.182.83
- Courriel
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 ![]()
Force et sagesse...
Hors ligne
25-08-2009 18:31:05
- Aranoth
- Membres

- Date d'inscription:
- Messages: 242
- IP: 92.134.227.168
- Courriel Site web
GLSL shader program failed to link
Vertex info
-----------
(0) : error C5052: gl_FragColor is not accessible in this profileTu 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
26-08-2009 17:00:15
- MOg
- Membres

- Date d'inscription:
- Messages: 16
- IP: 93.1.212.175
- Courriel Site web
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
26-08-2009 18:14:17
- MOg
- Membres

- Date d'inscription:
- Messages: 16
- IP: 93.1.212.175
- Courriel Site web
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 ![]()
Hors ligne
28-08-2009 09:01:10
- tmyke
- Administrateurs

- Date d'inscription:
- Messages: 1025
- IP: 86.204.49.141
- Courriel
Cool, je regarde cela ![]()
Force et sagesse...
Hors ligne
28-08-2009 10:04:50
- tmyke
- Administrateurs

- Date d'inscription:
- Messages: 1025
- IP: 86.204.49.141
- Courriel
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
Code c++ :
// I create the shader material for the glass pane.
s32 GlassMat = gpu->addHighLevelShaderMaterialFromFiles(
"media/GlassP.glsl","main",video::EVST_VS_2_0,"media/GlassP.glsl","main",
video::EPST_PS_2_0, mc);
Tu injecte deux fois un PixelShader, le premier nom devrait plutôt être GlassV.glsl, non ?
Force et sagesse...
Hors ligne
29-08-2009 09:12:37
- MOg
- Membres

- Date d'inscription:
- Messages: 16
- IP: 93.1.212.175
- Courriel Site web
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 ![]()
Hors ligne
29-08-2009 09:51:50
- tmyke
- Administrateurs

- Date d'inscription:
- Messages: 1025
- IP: 86.213.162.54
- Courriel
Oui, c'est toujours intéressant ![]()
Force et sagesse...
Hors ligne



