2016-12-31 15 views
-1

opengl32.dllランタイム(Win32のLoadLibraryを使用)にロードしてからOpenGL2/3/4関数をロードします。私はそれをglewを使用しようとしましたが、いくつかのwgl関数を解決することはできません。GLEW(OpenGL拡張ラングラー):実行時にopengl dllをロードしていますか?

のでは、私はのロード中は、動的にOpenGLのOpenGLの機能をインポートするGLEW使用できる簡単な方法はありますか?

+0

コードを表示する必要があります。あなたが「解決できません」と言ったら、あなたの編集は失敗していると思いますか? – diametralpitch

+0

@diametralpitchコンパイル時にopengl32.dllにリンクしていないので解決できません。 **私は実際に**したくありません。 LoadLibrary( "opengl32.dll")のようにロードしたい。 – Coder32

+0

@diametralpitchしかし、Glewは実際にそれらのwgl関数を必要とします。それは問題です... – Coder32

答えて

0

あなたが求めていることをすることは可能ですが、それについて別のことをする必要があります。通常、実行時に共有ライブラリ(またはdll)を手動でロードするときは、使用する関数をシンボルで検索し、それらを呼び出すことができるようにハンドルに割り当てる必要があります。

が明示的になので、リンカーが見つけることのできないシンボル名を使用しているため、今行っていることは決してコンパイルされません。これらの未解決の関数呼び出しをすべて手動でロードされた共有ライブラリ(opengl32.dll)へのクエリで置き換える必要があります。

glfw projectに参考になる良いコードがあります。 _glfwInitWGLloadWGLExtensionsの両方の機能を見てください。

+0

待機中、glfwはOpenGLを動的にロードしますか?あなたはglfwでglewを使用できますか? – Coder32

+0

どうやらそうです。 glfwでglewを使用する場合は、この[post](http://gamedev.stackexchange.com/questions/34102/can-i-use-glfw-and-glew-together-in-the-same-html)を参照してください。コード)。 – diametralpitch

+0

ありがとう:)また、(別の件名)、あなたはそれが**実行時にOpenGLをロードする**良いアイデアだと思いますか、私はちょうどコンパイル時に固執すべきですか? – Coder32