高さに基づくボリュームフォグを作成するにはどうすればよいですか?


10

最近、私はゲームワールドのY位置レベルでボリュームフォグを作成するテクニックを探しています。しかし、私が見つけたすべては、私が探しているものに実際には適合しない、パーティクルシステムまたは組み込みのエンジンフォグを使用して作成されたフォグです。

私の場合、効率的で密度の高い霧が必要です。それはゲームの世界のいたるところにあるはずですが、明らかに、パフォーマンス上の理由から、カメラまたはシェーダーの一部としてしかレンダリングできず、単なる幻想ではありますが、動いているように見えます。それが最良の選択であれば、私はパーティクルシステムを設定し、それをカメラに取り付けて動かすことができます。

したがって、主な質問はまだ残っています-高密度で効率的に機能するボリュームフォグを実装するにはどうすればよいですか?

私が使用している特定のエンジンとしては、Unityです。

私が言っている例として、私が探している効果を持つゲームへのリンクがあります:Astromike

濃い高さベースのフォグを使用したゲームのスクリーンショットの例。


ここではGLSL noobのビットですが、フラグメントシェーダーのピクセルを、頂点シェーダーから取得したY座標に基づいて色付けするとどうでしょうか。
クエンティン

2
「深みのある特殊効果」に関するUnityの講演を復習しましたか?それは現在数年前ですが、原則はまだ適用されます。それらは、高さベースのフォグと、空のスペースに溜まり、障害物の周りを薄くする「ふわふわしたフォグ」の両方をカバーします。すべての例がUnityであるため、簡単に適用できます。
DMGregory

@クエンティンうん、いい考えですが、オブジェクトごとにシェーダーになるのでしょうか?次に、多くのシェーダーを変更する必要があります。私はシェーダープログラミングの初心者でもあるので、いくつかのナンセンスを書いたかもしれません。しかし、私の知る限りでは、頂点シェーダーはオブジェクトに適用されます。また、着色によって動きの効果が出ない場合があります。動きが必要な場合は、内部で動くすべての小さなものがオブジェクトである必要があることを理解しているので、パーティクルシステムが最善の方法かもしれません。
率直な月_Max_ 2017

@wondraうん、これが本当である場合、これは最善のアプローチではないかもしれません、透明性はパフォーマンスに重いです。
率直な月_Max_ 2017

1
リストはいつ完成するのですか?リストは、Q&A形式にも適していません。「異なる状況」はいくつあれば十分ですか?どの指標によって「最良」と判断しますか?一般に、この形式は、検証可能な回答を備えた明確に焦点を当てた質問に対して最も効果的です。したがって、ニーズに合った答えがあると感じた場合は、質問を編集して、最初から実際に必要なものに絞り込んだほうがよい。他のユーザーは常に他の側面に固有の質問をすることができ、自分のケースに関連するより的を絞った回答を得ることができます
DMGregory

回答:


24

私はAstromikeの作成者です。:)

実際、私はそれを霧のように見せるためにかなり単純なトリックを使用しています。私はUnityを使用してAstromikeを開発しているので、Unityを使用している場合も同じことができます。ただし、他のエンジンでも同じシェーダーを再作成できると思います。

私がしていることは、フォグのプレーンをセットアップし、ソフトパーティクルファクター(この例では0.32)シェーダーをオンにしたパーティクル/アルファブレンドのマテリアルを追加することです。それでおしまい。

フォグプレーン:http : //imgur.com/a/MAEFW

設定:http : //imgur.com/NJVAaIQ

カメラの角度のせいで機能し、他の人には機能しない可能性があります。

残りはポストエフェクトスタック(ブルーム、ビネットなど)です。これがお役に立てば幸いです。乾杯。


1
うわー!共有していただきありがとうございます。ゲームは素晴らしいです:)
率直な月_Max_

素晴らしくシンプルなので、私のプロジェクトで試してみました。遠近法カメラを使用してのみ機能するようです(私たちのゲームは正射投影です)。
ジェフ

これは本当であるには余りにもいいです
レスタ

こんにちは@ Mikea15、とても素敵なゲームです!残念ながら、私はあなたが言及した効果を再現できませんでした-ポストプロセッシングスタックにBloomを追加しましたが、フォグプレーンが背後にある場合でも(当然のことながら)オブジェクトに広がりますが、デモでは垂直方向のエッジがカラムはブルーム効果がありません。また、私のSoft Particle Factorでは、値に関係なく、何も変更されません。これを示す小さなデモシーンを提供できればすばらしいと思います。ありがとう!
Dawid

@Dawid私はこれが遅いことを知っていますが、カメラのレンダリングパスを据え置きに設定し、プロジェクト設定でソフトパーティクルの品質がチェックされていることを確認する必要があります
Rito Ramos
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.