フィルタリング オプションは、テクスチャからサンプリングする場合にのみ機能します。テクスチャにレンダリングする間、それらは何の役割も果たしません。
マルチサンプル テクスチャからサンプリングする場合、GL_NEAREST
サポートされている唯一のフィルタ オプションです。sampler2DMS
また、GLSL コードで特別なサンプラー タイプ ( ) を、対応するサンプリング命令と共に使用する必要があります。
GL_LINEAR
マルチサンプル テクスチャ用にフィルタを設定するのはエラーであると言っているスペックは実際には何も見つかりません。しかし、フィルターはまったく使用されていません。OpenGL 4.5 仕様から (強調を追加):
シェーダーでマルチサンプル テクスチャにアクセスすると、フェッチするテクセルを記述する整数の 1 つのベクトルと、フェッチするテクセル内のサンプルを決定するセクション 14.3.1 で説明されているサンプル番号に対応する整数が使用されます。マルチサンプル テクスチャ ターゲットでは、標準のサンプリング命令は許可されず、フェッチによるフィルタリングは実行されません。
を使用したマルチサンプル テクスチャと非マルチサンプル テクスチャ間のブリッティングでglBlitFramebuffer()
は、フィルタ引数は または のいずれGL_LINEAR
かGL_NEAREST
ですが、この場合は無視されます。4.5仕様から:
読み取りフレームバッファがマルチサンプリングされ (SAMPLE_BUFFERS の有効な値が 1)、描画フレームバッファがマルチサンプリングされていない (SAMPLE_BUFFERS の値が 0) 場合、ソース内の各ピクセル位置に対応するサンプルは、単一のサンプルに変換されてから、目的地。フィルタは無視されます。
この場合、ソースと宛先の四角形が同じサイズである必要があるという制限があるため、これは理にかなっています。
読み取りフレームバッファまたは描画フレームバッファのいずれかがマルチサンプリングされ、BlitFramebuffer に提供されたソースと宛先の長方形の寸法が同一でない場合、INVALID_OPERATION エラーが生成されます。
フィルタは画像が引き伸ばされたときにのみ適用されるため、この場合は問題になりません。