Bonjour,
je dois porter mon ancien projet de c++ à C#. Pour OpenGL j'utilise le TAO framework, qui a l'air pas mal, si ce n'est qu'il est super difficile de trouver de bonnes infos dessus.
En particulier, j'ai besoin de charger les extensions WGL pour pouvoir utiliser les pBuffers. Cependant, TAO semble ne pas pouvoir détecter ces extensions.
Je fais ca:
1 2 3 4 5 6
| bool a = Wgl.IsExtensionSupported("WGL_ARB_pbuffer");
bool b = Wgl.IsExtensionSupported("WGL_EXT_pbuffer");
bool c = Gl.IsExtensionSupported("WGL_ARB_pbuffer");
bool d = Gl.IsExtensionSupported("WGL_EXT_pbuffer");
bool e = Gl.IsExtensionSupported("GL_ARB_multitexture"); |
résultats: a, b, c et d = false, e = true;
Donc à priori les extensions "standard" sont détectées, mais pas les WGL, alors qu'elles sont présentes sur mon ordi.
De plus, quand je fais par exemple
IntPtr wglCreatePbufferARB = GlExtensionLoader.GetProcAddress("wglCreatePbufferARB");
, je récupère bien une adresse, la fonction a l'air d'être trouvée, mais je n'ai pas encore pu tester si ca marche vraiment...
Par contre:
bool k = Wgl.Load("wglCreatePbufferARB");
crashe...donc je ne sais vraiment pas si l'adresse récupérée par GetProcaddress pointe vraiment vers la bonne fonction
Bref, les questions:
1) y a-t-il un moyen de faire fonctionner Wgl.IsExtensionSupported() ou Gl.IsExtensionSupported() avec les extensions WGL? Et du coup d'utiliser Wgl.Load() pour charger les extensions?
2) Si non, dois-je charger les extensions manuellement avec GetProcaddress ?
3) Au pire, est-ce possible de passer par autre chose que TAO? Ca ne m'arrangerait pas vraiment mais si c la seule solution...
4) ah et si quelqu'un a un bon site sur le TAO framework, ca m'interesse, l'ancien site est fermé et a part quelques forums c très difficile de trouver des infos...
Merci d'avance!
Partager