-
Shaders en Opengl 3
Bonsoir,
Je dispose d'un contexte OpenGL 3.1, et je souhaiterai dessiner un petit quelque chose, j'ai donc essayé comme d'habitude de commencer par le fameux triangle. j'ai généré et assigné les valeurs à mon vertex array object, j'ai bien généré les vertex buffer array, tout fonctionne bien je peux dessiner mon triangle.
J'ai essayé de mettre en place les shaders (vertex shader et fragment shader) j'ai aucune erreur de compilation ni d'exécution, les deux fichier .vert et .frag sont bien chargées, mais ils n'ont absolument aucun effet sur l'affichage.
Il n'ont pas d'effets au point tel que lorsque je marque n'importe quoi dans ces fichier ça ne provoque aucune erreurs.
Je ne sais pas d'où peu provenir le problème j'ai essayer plusieur codes que j'ai trouvé sur Internet.
Que puis-je faire ?
-
hum tu pourrais poster un exemple de code qui ne marche pas chez toi, histoire de tester nous même?
-
2 pièce(s) jointe(s)
Oui oui il n'y a pas de soucis, je veux bien mettre mon code source, parcontre il est assez sale, je dirai même très sale, pour tester le code je n'ai pas fait de compilation modulaire, tout se trouve dans le même fichier.
Pour ne pas avoir de code immense sur le forum j'ai passé en pièce jointe le fichier .cpp et j'ai archivé les deux fichiers .vert et .frag dans une archive (le forum refuse les format .vert et .frag).
J'utilise visual studio 2005, car je n'arrive pas à compiler avec Code::Blocks.
Merci d'avance pour votre aide.
-
En attendant que vous puissiez jeter un oeil à mon code, est-ce que quelqu'un aurait un exécutable tout simple en opengl 3.1 ou supérieur, avec de simples shaders que je voye si il fonctionne sur ma machine ?
Merci d'avance.
-
-
Merci pour le lien, mais je n'y ai pas trouvé d'exécutables que je pourrais tester directement sur mon pc, je m'étais aidé de leur "sample pack" pour créer mon contexte OpenGL 3.1 mais je ne le trouve pas super clair. J'aurai aimé trouver un code très simple, très basique avec le minimum pour traver une figure (triangle par exemple) avec l'appel au vertex et pixel shader.
Si tu connais OpenGL 3 tu pourrais jeter un oeil à mon code s'il te plait ?
-
Tu n'as pas d'erreur parce que tu ne les verifies pas... Les fonctions que tu appelles ont toutes des flags de retour d'erreur ou alors des fonctions que tu peux appeler pour verifier que par exemple la compilation d'un shader ou le linkage ont ete bien effectue. Donc je te conseille d'aller voir un tutoriel sur les shaders ou de trouver du code qui face ca (ou alors d'aller voir la doc opengl sur les fonctions que t'appelles, tout est indique).
-
Merci pour tes conseils, effectivement je ne teste aucun retour de fonctions j'était parti sur le fait que si j'avais une erreur lors de la compilation du linkage ou bien ailleur, des shaders j'aurai une erreur à l'exécution.
Je vais donc prendre le temps de tester une à une mes fonction.
Merci.