0

glBlendFunc の内部動作の背後にある具体的な数学を見つけようとしています。

明確にするために、ブレンド方程式は次のとおりであることを知っています。

srcChannels * srcFactor + dstChannels * dstFactor = channelsRendered.

私の質問は、srcChannels、dstChannels、および channelsRendered は 3-vector (r,g,b) または 4-vector (r,g,b,a) ですか?

(0.2, 0.2, 0.2, 1.0) と (1.0, 1.0, 1.0, 0.2) は同じに見えるはずなので、ここにはあいまいさの余地があるかもしれません。

4

1 に答える 1

1

glBlendFunc4 つのチャネルすべてで動作します。glBlendFuncSeparateRGB をアルファから分離します。

glBlendFuncのリファレンス ページでは、さまざまなブレンド モードと、さまざまなチャネルに適用される操作について説明しています。glBlendFuncSeparateは、アルファ チャネルでの操作を含めて同じことを行います。

于 2013-03-31T16:34:46.400 に答える