2016-03-28 24 views
0

私はShaderToy.comで遊んで、シェイダーを学び始めました。私が作ろうとしているプロジェクトでは、BloomではなくWebGL上に任意のグローフィルタを作成する必要があります。私はWebGLグロー効果

など私は、その後、点灯または火のように、いくつかのアニメーションテクスチャに使う色を描画するために使用することができますアルファを計算したいこれまでのところ、私はいくつかのアイデアを考えた:

近くにいくつかの領域にわたってアルファを平均
  1. 各画素は、 - おそらく同じように遅い
  2. ぼかし全体形状 - - 明らか
  3. 形状このピクセルにどれだけ近いかに基づいてアルファを計算するために、別に、次に距離にわたってつのループの各画素の周囲に円形に行く遅らせるように聞こえます私はちょうどアルファが必要なので、過剰な殺しです

これに対処する他のアイデアはありますか?私が見つけることができるのは、ブルーム様のフィルタからのガウスのぼかし技術です。

+0

あなたの質問はあまり明確ではありません。あなたの入力とは何ですか、あなたの出力は何ですか?あなたは何からアルファを計算したいですか?そして最後に何をしたいですか?ぼんやりしたアルファテクスチャ?イメージの平均アルファ値ですか?他に何か?あなたの質問を明確にしてください。 – Zouch

+0

@Zouch、カスタマイズ可能な任意のオブジェクト(色、距離、強度など)の周りに輝きを作りたいと思います。グーグルで一日を過ごした後、いくつかの記事を読んだ後、私はこのアプローチを試してみた。 http://xissburg.com/faster-gaussian-blur-in-glsl/ 私はいったん自分の質問をCodepenそれを作る時間があなたの興味のためにありがとう。 – pokrishka

答えて

3

シンプルなグロー効果のためにこのnvidia documentを見つけてください。 アイデアは

  1. にバックバッファ
  2. でシーンをレンダリングしている基本的には効果
  3. グロー効果を計算
  4. FBOにシーンのいくつかの要素をレンダリングするが、最終的に結合し活性化させますFBOをテクスチャとして使用し、バックエフェクトで前回レンダリングされたシーンとブレンドします。
関連する問題