8色パレットカラーをWebGLでエミュレートするアイデアだが、どうもその2もうまくいかなそうである。 私はフラグメント・シェーダーでuniform変数の配列でパレットを持てばよいと考えていた。でも残念ながらフラグメント・シェーダーでは配列のインデックス指定は定数のみだとの情報が。というわけでアイデア2はアウト。
しかしuniform変数配列のことを調べている途中で以下のポストを発見。
上記はインデックスカラーのデータを画面表示するサンプルであるが、これを少し書き換えればほぼそのまま使えると思う。 アイデアのキモはパレット情報をテクスチャで持つという点。なるほどと思った。早速このアイデアで進めることにする。
ついでにシェーダーを使って、昔のCRTっぽい画面を作るというサンプルも見つけた。
http://aba.hatenablog.com/entry/2015/09/15/211456
このラスタっぽくてにじんだ画面がよいなぁ。。