2016-10-23 7 views
0

を宣言されていない。glEnableClientStateが、私はOpenGLのバージョン4.5.0を使用して、このエラーを取得していますOpenGLのV4.5で

error: ‘glEnableClientState’ was not declared in this scope 

私はglEnableClientStateが、このバージョンでは廃止されていることを読みましたが、私は互換性のあるコードを記述する必要がありますこのメソッドでは、これはクラスの帰属指定であり、このメソッドを使用して記述する必要があります。 OpenGL 4.5.0でこれを動作させる方法はありますか?

これは影響を与えなかった含める:

glutInitContextVersion (3,3); 
glutInitContextProfile (GLUT_COMPATIBILITY_PROFILE); 

答えて

1
glutInitContextProfile (GLUT_CORE_PROFILE); 

これは、あなたがする必要があることの反対です。互換性のあるOpenGLの機能が必要な場合は、GLUT_COMPATIBILITY_PROFILEを使用する必要があります。しかし

error: ‘glEnableClientState’ was not declared in this scope

OpenGL loading libraryあなたが使用しているにもこの関数を宣言していないことを示唆しています。つまり、互換性プロファイルOpenGL関数を公開できるものに移行する必要があります。

+0

私の間違い!私は質問を編集しました。ありがとうございました。 –

+0

私は 'glew1.6'と' glew2'をインストールしました。以前のバージョンをC++でどのようにインポートできますか? '#include 'は 'glew2'をインポートしているようです。 –

+0

@Mario:どちらもその機能を持っているはずなので、問題の内容は不明です。 –

1

glEnableVertexAttribArrayglVertexAttribPointerはglEnableClientState/glVertexPointerための "現代" の交換です。新しい汎用バリアントはGL 2.0以来入手可能です。

+0

私はコードサンプルがバージョン3のものであると仮定していました。私はこの方法を使用する必要があります。なぜなら、これは家の割り当てであり、OpenGLを使用してOpenGLを書く必要があるからです。ありがとう、私は質問を編集しました。 –

関連する問題