08/10/26 11:11:19
サーフェイスに対しピクセル処理で、モノクロ化やラスタスクロール、セル平均を取る矩形モザイクなどを
リアルタイムで処理しようと思って、ピクセルシェーダに手を出したのですが、Lockでやるのと違って
白黒にはなるのですがところどころに水平線のゆがみのような物がでてしまいます。シェーダはこんな感じです。
texture tex1;
sampler texSampler = sampler_state{
Texture = <tex1>;
MinFilter = NONE;
MagFilter = NONE;
MipFilter = NONE;
AddressU = Wrap;
AddressV = Wrap;
};
float4 pixelS(float2 tex : TEXCOORD0 , float4 src : COLOR0) : COLOR{
src = tex2D(texSampler,tex)*src;
float bright = src.r * 0.3f + src.g * 0.59f + src.b * 0.11f;
src.r = bright;
src.g = bright;
src.b = bright;
return src;
}
頂点フォーマットは変換済みのものを使っています。処理自体はシェーダの方が早そうなので何とか
利用したいんですが・・・