0

glDrawElements() でレンダリングするときに使用するシェーダーをどのように指定するかについて興味があります。使用されるのは、バインドされている最後のシェーダーですか? または、他のコマンドを使用する必要がありますか。

要約すると、glDrawElements() を使用するときに使用するシェーダー、つまりレンダリングする VBO の三角形で使用されるシェーダーを指定するにはどうすればよいですか。

4

2 に答える 2

7

シェーダーを でバインドするだけですglUseProgram()。レンダリング関数への後続の呼び出しは、バインドされたプログラムのパイプラインを通過します。

于 2012-07-20T00:19:27.603 に答える
0
glUseProgram(myCoolProgramID);
set_up_render_states();
glDraw*

glUseProgram(myGreatProgramID);
set_up_render_states();
glDraw*

glUseProgram(0);
swap_buffers();  
于 2012-07-20T05:56:26.700 に答える