コンピュータグラフィックスにおいて、フラグメントとは、フレームバッファ内に 1ピクセル分の描画プリミティブを生成するために必要なデータです。
これらのデータには、以下が含まれますが、これらに限定されません。
シーンが描画されると、描画プリミティブ(点、線、円、テキストなど、グラフィックス出力の基本要素[1])がフラグメントにラスタライズされ、テクスチャが適用されて既存のフレーム バッファーと結合されます。フラグメントがフレーム バッファーにすでに存在するデータとどのように結合されるかは、さまざまな設定によって異なります。一般的なケースでは、フラグメントは、その場所にすでに存在するピクセル(深度バッファーに従って)よりも遠い場合は破棄されます。フラグメントが既存のピクセルよりも近い場合は、既存のピクセルと置き換えられるか、アルファ ブレンディングが使用されている場合は、半透明のオブジェクトを描画する場合のように、ピクセルの色がフラグメントの色とピクセルの既存の色の混合色に置き換えられます。
一般的に、フラグメントはピクセルをシェーディングするために必要なデータと、フラグメントがピクセルになるまで生き残るかどうかをテストするために必要なデータ(深度、アルファ、ステンシル、シザー、ウィンドウIDなど)を組み合わせたものと考えることができます。フラグメントのシェーディングはフラグメントシェーダー(またはDirect3Dのピクセルシェーダー)によって行われます。[2]
コンピュータグラフィックスでは、フラグメントは必ずしも不透明ではなく、透明度を指定するアルファ値を含む場合があります。アルファは通常、[0, 1]の範囲に正規化され、0は完全に透明、1は完全に不透明を表します。フラグメントが完全に不透明でない場合は、背景オブジェクトの一部が透けて見えることがあります。これはアルファブレンディングと呼ばれます。[3]
参照
参考文献
- ^ Janne Saarela 著『The Drawing Primitives』
- ^ ヒューズ、ジョン F. (2014)。コンピュータグラフィックス:原理と実践。ピアソンエデュケーション。ISBN 978-0-321-39952-6。
- ^ 「OpenGL を使用した 3D グラフィックス - 基本理論」。personal.ntu.edu.sg 。2022 年 1 月 25 日閲覧。
