2016-08-21 7 views
1

私は3つの.jsで複数のメッシュをぼかそうとしていますが、それぞれが異なる量のぼかしを持っています。私は、例で使用されているHorizo​​ntalBlurShaderとVerticalBlurShaderを使用するEffectComposerを持っています。どのように私はこれを行うに行くつもりの任意のアイデアですか?複数のシーンを使用しますか?ターゲットにレンダリングするのか、スクリーンに直接レンダリングするのですか?Three.JS - 異なるオブジェクトの異なるシェーダ

答えて

0

その1つはのように聞こえますが、これは種類の問題です。

達成しようとしている効果は何ですか?形に関心がありますか?交差すると、どのようにぼやけますか?

最初に思いつくのは、Photoshopでどうやってこれを行うのかということです。私はそれ自身のレイヤー上に各シェイプを配置し、各レイヤーにぼかしフィルターを適用します。これはthree.jsで1つのシェイプに1つのシーンを作成し、各シェイプをレンダリングターゲットに描画し、そのターゲットをぼかし、そのターゲットをキャンバス(または別のターゲット)に描画することに対応します。効果的に3Dシェイプを1つずつ2次元テクスチャにレンダリングし、テクスチャをぼかしてから各テクスチャを描画します。それは、あなたが各シェイプをPhotoshopの自分のレイヤーに入れて、各レイヤーに異なるぼかしを適用した場合と同じ外観を提供します。

+0

これはまさに私がやったことです。難しい部分は、「クリア」を呼び出すタイミングと、パス上で「クリア」しないタイミングを決定することでした。何らかの理由でrenderer.clearTargetが私のために働かなかったので、作者が最後にレンダリングパスをクリアにする必要がありました。そうでなければ、ノンストップのアディティブエフェクトが得られます。 – overgroove

関連する問題