GLBLENDEQUATION
Section: Misc. Reference Manual Pages (3G)
索引
xjman
名前
glBlendEquation
- ブレンドに使う式を設定する
書式
void glBlendEquation(
GLenum mode )
delim $$
引き数
- mode
-
入力データと出力データの色を関連の付けかたを設定する。
この引き数の値は GL_FUNC_ADD, GL_FUNC_SUBTRACT,
GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX
のいずれかでなければならない。
説明
ブレンド式は新しいピクセル(「入力」色)を
既にフレームバッファ内にあるピクセル(「出力」色)にどのように
結びつけるのかを決める。
- GL_MIN
-
結果として得られる色の各要素が、これに対応する
入力色と出力色の要素のうちの小さいほうの値となるように
ブレンド式を設定する。
- GL_MAX
-
結果として得られる色の各要素が、これに対応する
入力色と出力色の要素のうちの大きいほうの値となるように
ブレンド式を設定する。
この他のブレンド式では、入力色と出力色のブレンド係数が使われる。
この係数は glBlendFunc で設定する。
各種ブレンド係数の説明については、glBlendFunc を参照すること。
以下に示す式では、入力色の要素は
$(R sub s, G sub s, B sub s, A sub s )$
で表し、出力色の要素は
$(R sub d, G sub d, B sub d, A sub d )$
で表す。
結果として得られる色は
$(R sub r, G sub r, B sub r, A sub r )$
で表す。
また、入力色のブレンド要素は
$(s sub R, s sub G, s sub B, s sub A )$
で表し、出力色のブレンド要素は
$(d sub R, d sub G, d sub B, d sub A )$
で表す。
これらの式では、全ての色の要素は [0, 1] の範囲の
値を持つこととする。
- GL_FUNC_ADD
-
入力色と出力色が加算されるようなブレンド式を設定する。
入力色の各要素には、これに対応する入力ブレンド係数が掛けられ、
出力色の各要素には、これに対応する出入力ブレンド係数が掛けられる。
ふたつの積を要素ごとに足した結果、各要素の値は [0, 1] の範囲となる。
-
- $Rr ~=~ mark min (1, ~R sub s~s sub R ~+~ R sub d~d sub R )$
$Gr ~=~ lineup min (1, ~G sub s~s sub G ~+~ G sub d~d sub G )$
$Br ~=~ lineup min (1, ~B sub s~s sub B ~+~ B sub d~d sub B )$
$Ar ~=~ lineup min (1, ~A sub s~s sub A ~+~ A sub d~d sub A )$
- GL_FUNC_SUBTRACT
-
GL_FUNC_ADD と同様だが、入力係数と入力色の積から出力係数と
出力色の積を要素ごとに引き算する点が異なる。
結果は [0, 1] の範囲となる。
-
- $Rr ~=~ mark max (0 , ~R sub s~s sub R ~-~ R sub d~d sub R )$
$Gr ~=~ lineup max (0 , ~G sub s~s sub G ~-~ G sub d~d sub G )$
$Br ~=~ lineup max (0 , ~B sub s~s sub B ~-~ B sub d~d sub B )$
$Ar ~=~ lineup max (0 , ~A sub s~s sub A ~-~ A sub d~d sub A )$
- GL_FUNC_REVERSE_SUBTRACT
-
GL_FUNC_ADD と同様だが、出力係数と出力色の積から入力係数と
入力色の積を要素ごとに引き算する点が異なる。
結果は [0, 1] の範囲となる。
-
- $Rr ~=~ mark max (0 , ~R sub d~d sub R ~-~ R sub s~s sub R )$
$Gr ~=~ lineup max (0 , ~G sub d~d sub G ~-~ G sub s~s sub G )$
$Br ~=~ lineup max (0 , ~B sub d~d sub B ~-~ B sub s~s sub B )$
$Ar ~=~ lineup max (0 , ~A sub d~d sub A ~-~ A sub s~s sub A )$
GL_MIN 式と GL_MAX 式は
イメージデータを解析するアプリケーションでは便利である
(例えば、決まった色をイメージの閾値にする場合など)。
GL_FUNC_ADD 式は、例えば、アンチエンリアス処理や等価処理
の際に便利である。
初期状態では、ブレンド式は GL_FUNC_ADD に設定されている。
注意
glBlendEquation は GL_ARB_imaging サブセットの
一部である。
glBlendEquation が存在するのは、
glGetString に引き数 GL_EXTENSIONS を設定した
呼んだ場合に GL_ARB_imaging が返される場合だけである。
GL_MIN 式と GL_MAX 式は入力係数と出力係数を
使わない。入力色と出力色だけを使う。
エラー
mode が
GL_FUNC_ADD, GL_FUNC_SUBTRACT,
GL_FUNC_REVERSE_SUBTRACT, GL_MAX, GL_MIN
のいずれでもない場合、GL_INVALID_ENUM エラーとなる。
glBegin とその対となる glEnd の間に
glBlendEquation が実行されると
GL_INVALID_OPERATION エラーとなる。
関連する取得値
-
-
引き数 GL_BLEND_EQUATION を指定した glGet
関連項目
glGetString(3G),
glBlendColor(3G),
glBlendFunc(3G)
Index
- 名前
-
- 書式
-
- 引き数
-
- 説明
-
- 注意
-
- エラー
-
- 関連する取得値
-
- 関連項目
-
Time: 07:01:04 GMT, January 12, 2009