以下は2BPPの補間モード適用状況においての話。自分用のメモですがちょっと残しておきます。
Modulation BitのLSBに 補間モードのフラグが格納される.
- LSB = 0 なら 水平垂直の補間モード(仮にモードA)
- LSB = 1 なら 1方向の補間モード(仮にモードB)
モードBの場合、ブロックの中心となる位置のModulation Bitの値を見る.
中心となる位置は 8×4ブロックなので LSBから数えて21番目のビット位置が見るべき値となる
- このビットが 0 なら 水平方向のみ補間モード(仮にモードB1)
- このビットが 1 なら 垂直方向のみ補間モード(仮にモードB2)
となる。
このようにモード振り分けに2bit使ってしまっている。
各ピクセルは2bitという点で、どのように補填するかというと、
LSBのフラグ部分に関しては、LSBから2bit目の値をコピー、同様に21番目のビットは22番目のビットの値をコピーしてくる。この状態のModulationDataは各ピクセルごとに2bitずつ割り当てられ、色の計算に使用される。
以上の処理によって、補間モード3つと各ピクセルのModulation値が求まる。
補間モードにおいて、ちょうどチェックパターンの箇所に該当する=Modulation値がちょうど存在する場所のピクセルの計算においては、2bitのModulation値がそのまま使われる。
補間モードの補間とはチェックパターンの隙間に関しての補間方法ということになるようだ。