シェーダーでリアルな赤外線ビジョン効果をどのように構築しますか?現実的には、この例のように現実的に見えるものを意味します。
テクスチャを作成して材料が発する熱の量を判断し、次に法線とビューベクトルの内積を使用してその熱が視聴者に到達する量を判断することを考えていますが、これが熱視力であるかどうかもわかりませんでも動作するので、完全に間違っているかもしれない何かを実装し始める前に、より良いアプローチがあるかどうかチェックしたかったです。
シェーダーでリアルな赤外線ビジョン効果をどのように構築しますか?現実的には、この例のように現実的に見えるものを意味します。
テクスチャを作成して材料が発する熱の量を判断し、次に法線とビューベクトルの内積を使用してその熱が視聴者に到達する量を判断することを考えていますが、これが熱視力であるかどうかもわかりませんでも動作するので、完全に間違っているかもしれない何かを実装し始める前に、より良いアプローチがあるかどうかチェックしたかったです。
回答:
IRがあり、次にIRがあります。一般に「赤外線」と呼ばれる光の波長の範囲は、人間の視覚範囲の端(約700 nm)から1 mm = 1,000,000 nmまで延びています。
Philippの答えは、「近赤外」光(約700〜1,400 nm)に対して正しいです。これは基本的に通常の可視光と同じですが、肉眼では見えません。近赤外ビジョンをモデル化するには、オブジェクトのテクスチャと光源の色を、通常とは異なる波長での反射率と光強度をモデル化する別のものに置き換えるだけです
ただし、質問の文言とリンク先のビデオに基づいて、ほとんどの日常的な物体の熱放射スペクトルのピークに対応する「熱赤外線」範囲(8,000〜15,000 nm)に興味があるようです。 、人体を含む。この放射は、依然として「光」のようなほとんどの方法で動作し、標準のコンピューターグラフィックス技術を使用してモデル化できます(電波とは対照的に、波長が長くなり、光線光学の標準的な仮定が崩れ始めます)熱赤外の特徴は次のとおりです。
上記のように、ほとんどの物体は熱赤外で輝きます。可視光の場合、一般に、実際の光源は数個しかなく、他のすべては他の光源から放出された光を反射するだけであると想定できます。熱IRの場合、選択した正確な波長に応じて、多くの場合、反対のことが当てはまります。
逆に、ほとんどの表面はかなり効率的に熱IRも吸収します。これにより、それらがウォームアップされ、より多くのIRが再放射されるようになります。実際には、ほとんどすべての表面が燐光を発しているようです。
ほとんどの表面から放射される熱IRスペクトル(すなわち「色」)は、主にその温度に依存します。表面材料の固有放射率も効果がありますが、効果は比較的限られています。
したがって、通常のライトビジョンと比較して、現実的な熱赤外線ビジョンのモデリングには、グローバルイルミネーションと動的に変化する放射率値をより重視する必要があります。設定によっては、ここで少しチートできる場合があります。たとえば、静的なシーンの場合、グローバルな放射熱伝達関数を一度事前に計算して、静的なライトマップに焼き付けることができます。可視スペクトル。
ゲームでサーモグラフィカメラを使用してビューをシミュレートする場合は、少なくとも次のことをお勧めします。
オブジェクトの特別なIR放射率および/または反射率テクスチャを描画および/または計算します。表面の温度に対応する必要がある暖かい物体(人間や機械など)の放射率に特に注意してください。反射率はそれほど重要ではありません。
おそらく、全熱IRフラックスに対応する単一のスペクトルチャネルのみを使用する(つまり、すべてをモノクロで描画する)ことになるでしょう。結果のグレースケール値を偽色のグラデーションにマッピングして、熱画像に使用される従来の密度スライシングをシミュレートすることにより、画像を後処理できます。
表面の温度を明示的に追跡することを検討してください。たとえば、地面に人が横たわっている場所は、人が離れた後もしばらく暖かくなります(したがってIRで光ります)。それを処理する方法はいくつかあります(たとえば、頂点ごとの温度追跡、一時的な局所温度変化に対するデカールの追加など)。リアリズムと計算コストのトレードオフが異なります。おそらく非常に現実的なものにする必要はありませんが、この効果をまったく持たせてもいい感じです。
あなたが通常世界から見るものは、オブジェクトによって反射される光の視覚的な部分です。緑のオブジェクトは緑の光のみを反射し、赤のオブジェクトは赤の光のみを反射し、青のオブジェクトは青の光のみを反射します。赤外線は、目では認識できない4番目の色と考えることができます。赤外線カメラは、赤外線カメラをセンサーで認識し、赤外線画像を可視波長に変換することで、赤外線光を可視化します。
一部の材料が赤、緑、青で多かれ少なかれ明るいように、IRでも異なって明るいです。IRの明るさは、可視光の明るさに対応する必要がありますが、必ずしも一致する必要はありません。
これは、可視およびIRのシーンです。樹木の葉はトランクよりもIRでははるかに明るいが、建物のファサードのさまざまな部分のIR輝度は可視光とIR光で似ていることに注意してください。
できることは、すべてのテクスチャの2つのバージョンを作成することです。可視光用のRGBテクスチャと、赤外線用の代替モノクロテクスチャです。通常モードではRGBテクスチャを使用し、IRモードではIRテクスチャを使用します。
また、IRモードで異なる光源を使用することを検討することもできます。太陽は、可視光と同じくらいの赤外線を生成します。しかし、人工光源(ハロゲンランプや発光ダイオードなど)は、IR光をほとんどまたはほとんど生成しないため、赤外線で何も照らしません。一方、IRで非常に強い光源(直火など)またはIRでのみ見える光源(赤く光るのに十分なほど熱くない物体、または人工IR光源)があります。 IRゴーグルを着用すると、テレビのリモコンを懐中電灯として使用できますか?)。通常の照明と赤外線照明の異なる照明条件は、興味深いゲームプレイ要素になる可能性があります。