実現したい機能があり、質問を投げさせて頂きます。
添付画像は今製作中のゲーム画面で、私はこれに乗り物のタイヤ跡を残すような処理を行おうと思っています。
サンプルのVehicleGameにはモデルエフェクトを重ねてそれらしくしていたようですが、自分が行いたい処理はこのようなものではありません。
例えばジャーニーで見られるようなインタラクションをもった砂にしたいと考えています。
ジャーニーを見ていると、頂点変異と、ランタイム上の高さマップへの書き込みを行っているように思われます。(そしてインタラクションをした箇所は、時間で元の高さに常に補完しているようでした)
動的な高さマップ+ディスプレイスメントの組み合わせで近いものが実装できるのではと思います。
そこで、unreal上で行いたい処理は以下のものになります。
1.ランタイムで書き込み可能な動的テクスチャ(動的な高さマップ)の生成方法
2.動的な高さマップへの書き込み。
こちらunreal上での何か良いやり方、もしくは近いサンプル等ございませんでしょうか?
見た目に大きく影響するため、エフェクトでの代変えではなく、高さマップへの書き込みで実装をしたい次第です。
こちら、参考になるかと思います。
このゲームはUDKなので、前のバージョンで出来ることならこちらでも可能かと思います。
現在自分も研究中です。
1の方法が色々と厄介ですね。
情報ありがとうございます。
しかし、実はこちらは既に呼んでいて、手法自体は分かってるのですが、unreal側で書き込みを行う手順が不透明だったため質問を出していた次第でした。
カスタム用のワークテクスチャ生成とHightMap書き込みのインターフェースが見つけられなかった次第です。
何気にGDCの論文では、Height生成用のレンダリングフローで、書き込んだハイトマップ用のカスタムポストプロセスがあって、そこでブラーかけた後のものを使ってるんですよね。
こちらはワークバッファを複数用意して、1フレーム前のものを使うようにすれば解決しそうですが。
フロー的なとこだけ観れば複雑な部分が無いだけに、やきもきしてる次第です・・・。
同じく自分もそんな感じです。
2Dスクリーンキャプチャーを使った方法を今模索していますが、今の情報しかその方法では取得できないので別の方法を探ってみたりしてます。
UDKではヒートマップの機能があったのでこの辺りの実現は簡単だったのかもしれないですね、UE4では無いようです。
こちらは試されましたか?
UDKのころにあった機能でGPU上で処理をしているので軽いです。
残念ながらUE4には無い機能なのでこちらでそれが再現できます。
後はこちらでも似たような事はできるかも?
これはPluginを使わない方法です。
できたら是非知識の共有を!(ぁ
ありがとうございます。
今簡単に読んでみましたが、残念ながらやりたい事とは別なものになってしまうようですね。(もうちょっと読み込んでみます。)
とはいえ、DistanceFieldとFlowMapを使うことで別な面白い表現ができそうです。
例えば、砂の中に足を突っ込んでる場合、その回りの砂が引きづりこまれるような表現とか。
Update可能なテクスチャと、フレキシブルな描画グループが作れると楽そうなんですけどねえ。
もし何かやりかた見つければ、是非共有させて頂きたいと思います。
とても間が空きましたがようやく行う事ができました。 4.13でRenderTargetへの描き込みまわりの対応が入ったので、さっくり行けました。
結果の動画
4.13で追加されたサンプルのBluePrintRenderToTargetレベルのやり方だと問題があったので、ちょっといじってあります。
↓概要は自分のTwitterの方で書いてますので宜しければご確認ください。
何かの折には詳しく書くかも知れません。(対した内容ではないので必要ないかも知れませんが)
Twitter の投稿1
Twitter の投稿2
Twitter の投稿3
Twitter の投稿4
Twitter の投稿5
Twitter の投稿6