ES 2.0でGLSLを学習していて、グローフラグメントシェーダーを作成しようとしています。
これは私が今持っているものです:
for(float x = startX; x < endX; x += w) {
for(float y = startY; y < endY; y += h) {
px = texture2D(u_texture, vec2(x, y));
extra += px;
count++;
}
}
extra = clamp(extra / count, 0.0, 1.0);
私が得ている問題は、テクスチャの端の近くに暗いピクセルが表示されていることです。これは、ピクセルが(0.0、0.0、0.0、0.0)としてカウントされるためだと思います。これは、透明な黒いピクセルであり、エッジの画像を暗くします。透明なピクセルを白として扱うことは可能でしょうか?または、グローを実装するためのより良い方法はありますか?
ありがとう!