結果を結合したい 2 つの関数があります。
drawAmbient
drawDirectional
それらはそれぞれ個別にうまく機能し、アンビエント ライトのみ、またはディレクショナル ライトのみでシーンを描画します。アンビエント ライトとディレクショナル ライトの両方を表示したいのですが、少し問題があります。私はこれを試します:
[self drawAmbient];
glEnable(GL_BLEND);
glBlendEquation(GL_FUNC_ADD);
glBlendFunc(GL_ONE, GL_ONE);
[self drawDirectional];
glDisable(GL_BLEND);
しかし、最初の結果しか表示されませんdraw
。両方のドローコールのセットについて、同じ方法で深さを計算します。テクスチャにレンダリングしてテクスチャをブレンドすることはいつでもできますが、それは冗長に思えます。デフォルトのフレームバッファにレンダリングするときに照明を一緒に追加する方法はありますか?