#0 

25-08-2009 00:16:52

MOg
Membre
Date d'inscription: 21-01-2008
Messages: 16
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/ … 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


#1 

25-08-2009 18:11:05

tmyke
Administrateur
Date d'inscription: 24-03-2008
Messages: 1025

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 wink


Force et sagesse...

Hors ligne


#2 

25-08-2009 20:31:05

Aranoth
Abonné
Lieu: Toulouse
Date d'inscription: 25-09-2006
Messages: 242
Site web

Code:

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


#3 

26-08-2009 19:00:15

MOg
Membre
Date d'inscription: 21-01-2008
Messages: 16
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


#4 

26-08-2009 20:14:17

MOg
Membre
Date d'inscription: 21-01-2008
Messages: 16
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 smile

Dernière modification par MOg (26-08-2009 20:15:52)

Hors ligne


#5 

28-08-2009 11:01:10

tmyke
Administrateur
Date d'inscription: 24-03-2008
Messages: 1025

Cool, je regarde cela wink


Force et sagesse...

Hors ligne


#6 

28-08-2009 12:04:50

tmyke
Administrateur
Date d'inscription: 24-03-2008
Messages: 1025

En fait ce que disait Aranoth m'a mis la puce à l'oreil (faut toujours écouter les gens calé wink )

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


#7 

29-08-2009 11:12:37

MOg
Membre
Date d'inscription: 21-01-2008
Messages: 16
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 wink

Dernière modification par MOg (29-08-2009 11:13:25)

Hors ligne


#8 

29-08-2009 11:51:50

tmyke
Administrateur
Date d'inscription: 24-03-2008
Messages: 1025

Oui, c'est toujours intéressant smile


Force et sagesse...

Hors ligne


Options Liens officiels Caractéristiques Statistiques Communauté
Corrections
irrlicht
irrklang
irredit
irrxml
xhtml 1.0
css 2.1
Propulsé par FluxBB
Traduit par FluxBB.fr
883 membres
1429 sujets
11121 messages
Dernier membre inscrit: Saidov17
108 invités en ligne
Aucun membre connecté
RSS Feed