glUseProgram(programId)
異なるポイントで呼び出すコードがあるとしますglUseProgram(1)
が、同じ引数で 2 回呼び出すこともあります (つまり、program1 が 2 回要求されます)。
偽の呼び出しを排除する必要がありますか、glUseProgram
またはglUseProgram
そのチェックを内部で既に実行していますか?
OpenGL ES Programming Guide for iOSで提案されているように、glEnable
状態変更の冗長な呼び出しを避ける必要があります。したがって、同じことが にも当てはまると仮定できますglUseProgram
。この仮定が正しくない場合でも、描画呼び出しをプログラムごとに順序付けし、可能であれば設定を統一することをお勧めします。
私のコンピュータではgluseprogram(PROGRAMID)
、間に別の設定をせずに同じ ID を 2 回使用すると、ディスプレイ ドライバがクラッシュします。だから私はしません。
(編集) 申し訳ありませんが、そうではありませんでした。実際には、SFML のウィンドウ環境と関係がありました。OpenGL関数が「家をきれいにする」ことができるようになる前に、間違った設定があったため、ウィンドウ(したがってOpenGL環境)を閉じていました。