私は、デフォルトのテクスチャを各レンダリングループで使用したすべてのテクスチャユニットにバインドすることを選択したことに気付きました。これは一般的な/ベストプラクティスですか?OpenGL - デフォルトのテクスチャにバインドする方法は?
擬似例:
Tick() {
glUseProgram(someProgram);
glActiveTexture(GL_TEXTURE0);
glBindTexture(GL_TEXTURE_2D, imgTexture1);
glActiveTexture(GL_TEXTURE1);
glBindTexture(GL_TEXTURE_2D, imgTexture2);
.
.
.
//Is the following really necessary: ???
glUseProgram(0);
glActiveTexture(GL_TEXTURE0);
glBindTexture(GL_TEXTURE_2D, 0);
glActiveTexture(GL_TEXTURE1);
glBindTexture(GL_TEXTURE_2D, 0);
}
それはここでは必須ではありません場合は、リソースが解放される前に、そのような呼び出しが行われるべき?
どのOpenGLバージョンをターゲットにしていますか? – tambre
@tambre - より一般的にはベストプラクティス全体を問い合せる。この質問への回答がバージョンに依存する場合は、どのバージョンとどのように? – perrelet