2017-09-07 3 views
-1

shadertoy.comで見つけたこのフラグメントシェーダがあります。今はthree.jsで実装します。私の問題は、実際にシェーダの「時間」をコントロールできるようにしたいということです。私はそれを "再生"させ、その効果を "逆戻り"させて開始点に戻すことができます。インタラクティブなので、アニメーションの問題ではありません。フラグメントシェーダの逆順で再生

これを行うにはどうすればよいでしょうか?

はここshadertoy効果です: https://www.shadertoy.com/view/ldcGDX

答えを感謝し、本当にだろう、ありがとうございました!

/Scummtomte

+0

あなたはこれまでに何を試しましたか? – prisoner849

+0

できるだけ早く何か努力をしてください。 – Pratik

+0

フラグメントシェーダについてはかなり新しくなっていますが、私の初期のアイデアはフレームデータを配列に保存し、それを前後に使用することです。しかし、それは相互作用のために複雑に見えます。より良い方法があるかもしれませんか? – scummtomte

答えて

1

通常、シェーダは1000.0はあなたから逆方向に再生したい時間です1000.0 - timeのようなもの、とtime変数を置き換えることによって、逆に再生することができます。

しかし、投稿された例では、シェーダは実際にはフレームごとに入力イメージを上書きするので、は逆にすることはできません。逆に何かをするには、他の状態に依存しない時間の関数でなければなりません。

+0

応答ありがとうHolger!はい、私はいずれかのフレームごとにデータを格納する必要があると信じていますが、それは多くの相互作用の部分を複雑にします。同じアイデアを持ち、より洗練された方法で整理することができた人がいると思っています。 – scummtomte