wxGLCanvas は、Qt のような初期化コールバック関数を提供しないため、OpenGL シェーダーを嫌うようです。次のように、コンストラクターで自分でコンテキストを作成した後でも、シェーダーを作成できなくなります。
m_context = new wxGLContext(this);
また試しました:
SetCurrent(*m_current);
それでも運が悪く、GLEW はコンテキストが (Google から) 作成されていないことを示す "Missing GL Version" をスローし続けます。
私が試してみました:
- show および activate イベントに WX_EVT() を使用しても、うまくいきません。
- サイズ変更イベントでシェーダーを初期化していますが、まだ運がありません。
wxGLCanvas に私の初期化関数を他の何よりも先に呼び出させる方法はありますか?