LAB
研究室
デモプログラム
【大気散乱シュミレーション】-Atmospheric Scattering-
今日は技術的な話題ということで『大気散乱シミュレーション』のお話をしてみたいと思います。
技術資料がWEB上に公開されていますので、その内容を技術デモと共に紹介します。
ミリタリージャケット メンズ あったか 防寒 裏ボア 裏起毛 コーデュロイ 厚手 肉厚 アウター 冬服
(C) [クラシック・モッド/カフェレーサー] ジェットヘルメット アライ arai
屋外のゲームシーンで最もよく目にするであろう『青空』。
一見単純そうで、実はシーンの空気感に影響がある無限遠背景です。
ゲームの中で「天球」を表現する際には、従来の古典的な手法では半球ドームなどの遠景で覆えるモデルに青空テクスチャをぺたっと貼ってそれを天空としていました。
青空の本物っぽさというものはデザイナーの技量と感性によって再現されることが多かったと思います。場合によっては実際に空の写真撮影を行ってその色味を再現したりすることもあるかと思います。
これを実際に物理現象として起きている状況をリアルタイムシミュレーションで再現してゲーム内に活用してみよう!というのが今回のお題です。
この技術を導入することで次の点に特にメリットが出ます。
デザイナーが苦労することなく、簡単に実写品質を得ることができるようになります
リリカラ 壁紙27m シンフ?ル 石目調 ホワイト 撥水トップコートComfort Selection-Basic & Color- LW-2251
1.昼夜の動的な変化、時間の移り変わりがリアルタイムで表現できる
時間の概念があるゲームでは必須になってくる表現を太陽の方角を指定するだけでシーンの情景を作りだすことができます。
2.地平線付近の夕焼け、朝焼けの微妙な色味が計算で再現できる(見た目が実写により近くなる)
大気中の微細粒子(塵)のシミュレートによって実写の空気感が出ます。
又、火星の大気や未知の惑星の大気など、地球外の惑星の大気組成も再現できます。
そして、標高・高度によって眼下の視界にも霞がかかります。
【AFGK】リップカラーレターTシャツ
3.昼間になると星空が太陽光によってかき消されて見えなくなる現象が表現できる。
フェードイン・フェードアウトでフェイクで昼夜入れ替えるのではなく、実際の光学的な現象で星空が消えるようになります。
4.大気圏を表現することで付加価値が生まれる。
宇宙空間と地上とをシームレスに行き来することができ、金環現象などの光学的現象もリアルタイムで見ることができます。
オープンフィールドのゲームを制作する際に昼夜の概念があったりするとシーンごとに時間帯が異なって屋外の風景も太陽の位置によって大きく変化します。
又、天候などでさらに豊かな表情を表現していくことで、よりリアリティをもたせて没入感を高めます。
今回は時間帯によって空の色が変化していく様子にクローズアップしてみます。
それではまずは恒例のデモプログラムを公開します。
このデモは以下からダウンロードすることができます。
今回もWindowsXPでも閲覧実行可能にするためにDirectX9でデモを作成しました。
実際にはDirectX11で実装することで実行効率を上げ、さらに速度を向上させることができるようになります。
太陽光が大気圏内で多重散乱する現象をシミュレートします。
◎動作可能な環境
<動作条件>
Windows XP/Vista/7 DirectX9.0c
ShaderModel 3.0 以降
※注意※ 今回のデモは大変複雑なシェーダーになっています。
ShaderModel 3.0 以降対応でもドライバの問題などで動作しない場合があります。
なるべく最新版のグラフィックドライバをご利用ください。
尚、デモの中でfp16浮動小数点バッファを使用していますので、SM3.0対応GPUでもfp16に非対応のGPUでは起動できません。
三吉バルブ 10BGNH 鉛レス コアコート ゲート弁【10K・給湯用】 50A
ファミコン本体 ※ACアダプタ、ステレオAVケーブル付き NX909 ペインターガン( 1L缶) トカン塗布専用ガンNX(シャーシペインター用ガン) イチネンケミカル
Saint Laurent サンローラン モノグラム ポーチ クラッチバッグ
Download
送料無料(まとめ) コクヨ ファスナー(ポリオレフィン鋼板) 足間隔80mm 長さ60mm FA-22N 1箱(50本) 〔×5セット〕 (約1.36MB)
【動作確認済ハードウェア】
NVIDIA GeForce GT 420
NVIDIA GeForce 9800 GT
【操作方法】
十字キー↑↓…位置を移動
左マウスクリック+ドラッグ…視点を回転
【直営店買付】VERSACE★メドゥーサ リング★合金 gold全天の姿勢を回転
Zキー … 大気散乱ON/OFF
今回のデモは見た目の品質も確保できるように大気散乱シミュレーションの他に
次の技法を併用しています。
・【Stella McCartney】 グラデーション ミニ ショルダー バッグ
・グレア表現(ブルーム、カメラ絞りの回折9枚羽根)
・レンズ表現(周辺減光ビネッティング、フレア)
・トーンマッピング(※今回は評価測光は無く、動的ではなく静的なものです)
屋外光散乱ではなく大気散乱シミュレーションを選択した理由は、
大気散乱の実装によって屋外光散乱も全て実現できてしまうことにあります。
これによって宇宙からも地上からも自在に操れるようになります。
このデモでは春分点で高緯度(北極)でのカメラ視点にしていますので、太陽はさほど高く昇らず、そして夜も薄く地平線が明るくなっているのが観察できます。
十字キーで大気圏を出入りすることで、そこに大気の層を感じることができます。
操作の関係上、地球を固定して相対的に全天を回転させていますが、本来は天動説ではなく地動説ですよね。
デモで使用したテクスチャは次の2つです。それぞれ下記リンク先の素材を使用しています。
地球の地表テクスチャ 32k Virtual Earth Textures for Celestia
Maison Margiela/グラムスラム レザーバッグ
宇宙全天テクスチャ Axel Mellinger’s Milky Way Panorama 2.0
それでは概要を簡単ですが説明してみたいと思います。
まずは小中学生の頃の素朴な疑問FAQから。
Q:太陽は白くて昼間は青空なのに夕焼けはなぜ赤くなるの?
A:昼間は上方向から光が当たるため、大気の層が薄いですが、水平方向の場合は通ってくる大気圏の距離が長くなります。大気に青色が吸収されて残った赤色が夕焼けとして見えるのです。
日本未入荷☆国内発●DOLCE & GABBANA●コットン カーゴパンツマルイグロック17ムーヴカスタム
概ね上記のような内容の解説があります。恐らくご存知だとおもいます。
太陽光が大気を通過することで、その途中にある大気中微粒子によって青空や夕焼けの現象が起きています。
では次に、その大気の層の厚さを考えてみます。
■地球 (Wikipedia)
BVLGARI◆三つ折り財布 ギフト プレゼント ブラック
Wikipediaによると地球の半径は
>地球は赤道半径が 6,378.137 km、極半径が 6,356.752 km
とあります。
そして
>地表から上空約100kmまでの範囲には窒素・酸素を主成分とする大気がある。
とあります。
そこで今回のデモでは『約6360kmを地球の半径、約100kmを大気層の厚さSalvatore Ferragamo☆クール派女子に◎艶ブラックローファー
この距離関係は
『卵で黄身が核、白身がマントル、殻が地殻』
と例えられることがあります。
そう考えると大気は薄皮くらいの厚さしかないことになります。
図解してみると次のような図になります。
CFTランズバーグ デビルビス スプレーガンLUNA-PL2圧送式LVMPシリーズ LUNA2-K-PL2-FX-P
上図のように地平線への水平方向は垂直方向に比べると結構な厚さになります。
この違いが色の変化をもたらします。
波長の短い光(紫・青系)は波長の長い光(赤系)よりも散乱しやすく、
厚い大気の層を通過する場合は通過中に青色が徐々に失われます。その結果の残った赤色が目に届くのが夕焼けです。
◎光の散乱
「大気中の光の散乱」は、空気中に存在する微細粒子に光があたって全方向に乱反射することで起きます。
わかり易い例だと「霧」がまさしく光の散乱で白くなっていると言えます。
●SALE●【DOLCE & GABBANA】 財布 ブラック
■レイリー散乱(Rayleigh-scattering)
http://ja.wikipedia.org/wiki/%E3%83%AC%E3%82%A4%E3%83%AA%E3%83%BC%E6%95%A3%E4%B9%B1
レイリー散乱は簡単に言うと「青空の青色の元になる成分」です。
光が微粒子に衝突するときに光線方向の前後方向に多めに散乱しますが、基本的には全体に広がるように散乱します。
この成分を求める計算式は次のようになります(※論文資料より抜粋)
BALENCIAGA オーバーサイズ PARIS プリント コットン Tシャツ
λ = 光の波長(680, 550, 440)nm
■ミー散乱 (Mie-scattering)
Nike Zoom Terra Kiger 5 Off-White ホワイト CD8179-100
20AW ☆BVLGARI☆ BVLGARI BVLGARI 二つ折り財布 BLACK♪
ミー散乱はレイリー散乱とは異なり、こちらは指向性のある散乱で、白っぽい色です。
光の進行方向に散乱が強く出ます。つまり「逆光」のときにも強く出る成分です。
小さい粒子では広がり、大きい粒子の場合は収束します。
濁った感じはこのミー散乱によって起きます。雲が白いのもミー散乱が影響しています。つまり雲を描画するときにはミー散乱の計算が必要になります。
この成分を求める計算式は次のようになります(※論文資料より抜粋)【Alexander Wang】コットンポプリン◆ロゴ◆ボクサーショーツ
大気中を通ってくるときに、
【アクセントに☆】Louis Vuitton バッグ チャーム・LV サークル
都会で遠方が霞んで見通しが悪い時にはミー散乱が多いことになります。
実際に目の前交差点100m先が白く霞んでいるときには目を疑いましたが…
雨上がりは大気が綺麗ですので澄んで見えます。このときミー散乱は少なくなっています。
Loewe Embroidered cotton towel
青空の水色は、レイリー散乱の濃い青色 + ミー散乱の白色が混ざって絶妙な水色を発色しています。
ミー散乱が少ない場合には日本でも南国ビーチのような深い色の青空も見ることができます。
◎多重散乱 (Multi scattering)
光は最初の微粒子に衝突したときにレイリー散乱とミー散乱を起こします。
そして散乱した光は次の微粒子に衝突します。そしてそこでも散乱を起こします。
一回だけではなく、目に届くまでに何回も散乱を繰り返します。
その結果、空は青空に、夕焼けはオレンジ色に変化します。
今回のデモでは多重散乱を反復計算で実装してあります。
◎地面からの放射輝度(Irradiance:イラディアンス)
地面に光が当たり、そこが光源になり、さらに大気を照らします。
地面からの照り返しの計算も同時に行います。
夕焼けで太陽の周りが眩しく霞むのは地面からの放射光が発生して強く出るためです。
この地面で反射して照り返した光は再び大気内で散乱を起こし多重散乱します。
【CELINE】直営/正規店 TRIOMPHE トライアングル 水着 セット
太陽光はこれらの散乱を何度も何度も繰り返してあの独特な色彩を出していることになります。
夕焼けのオレンジ色は、レイリー散乱・ミー散乱を繰り返した結果の残りがオレンジ色だから、ということになります。
◎地球とのセルフシャドウ
太陽光が地球に当たるときにはおよそ平行光源とみなせますが、その時には光の当たるほうの反対の影になる部分は地球自身が太陽を遮って影になっているとも言えます。
このセルフシャドウによって影になる部分は「夜」になります。
日本には日暮れで「夜の帳(とばり)がおりる」という表現がありますが、
夕焼けから夜への変化は帳(=たれぎぬ)がおりるようにセルフシャドウによって
急速に移り変わります。
デモではこの計算を行なうことで、陽が沈む西の方角はまだオレンジ色の夕焼けだけれど東の方角はもう夜になっているという状況を作り出せています。
パロマナノクリスタル装飾スエードレザーラバーショルダーバッグ
デモでは次のように陽が沈む反対側の空の大気中の微粒子に地球自身のセルフシャドウが投影されています。
◎星空に散乱が及ぼす光学的現象
昼間は明るいので星が見えません。これは星の光が太陽に対してかなり暗いから目立たなくなるためです。
もう一つの理由は太陽光の散乱によって塗りつぶすようにかき消されてしまう為です。
今回のデモでは昼夜問わず星の描画を行なっています。朝になると星が消えて行きますが、これはフェードイン/アウトなどのフェイクな処理は行わずに実現しています。
散乱によって見えなくなります。
但し、今回のデモはトーンマッピングを動的にしていないため、星がある程度見えるように星空自体を無理矢理数倍明るくして描画しています。
そのため、昼間でも少し星が見えてしまう事態になってしまっています。
デモの中で青空を見上げてみてください。
少し白っぽい何かムラのようなものが見えます。
これは夜にしか見えないはずの天の川銀河の一部が見えてしまっています(笑)
トーンマッピングを動的にすることで本来の星の暗さまで落とせますのでこの問題点は解消可能です。
エアーブラシ スターティングキット TKF011 マルジェラ(Maison Margiela)ロゴ フーディー メンズ ブラック
【左】昼間で星が見えなくなっている状態 【右】夜間で太陽の散乱光がなくなり星が見える状態
しかしながら、リアルタイムゲームにとっては常に昼間も星空を描画し続けることはGPU負荷を高める原因になりますので、日が昇ってシーン内で完全に星が見えなくなる間は星空の描画をオフにしておいたほうが実際は好ましいです。
◎夜の月明かりの表現
月は太陽光を自ら受けて、間接光で地球を照らします。
関税送料込 PRADA ダブルミニポーチ
太陽は直視できないレベルの眩しさですが、月は模様を観察できるほどにじっくりと凝視しても大丈夫ですよね。
特に太陽の黒点を同じように凝視して観察するとムスカ様状態になってしまいますので良い子のみんなはやらないように。
地表に降り注ぐ光も穏やかな光になります。
さて、どれくらい輝度低下するのでしょうか。Wikipediaで調べてみましょう。
■アルベド(Wikipedia)
ノースフェイス ☆ バック プリント Tシャツ ロゴ 関税送料込
>アルベド (albedo) とは、天体において外部からの入射光エネルギーに対する反射光エネルギーの比をいう。
最近まれに「アルベドテクスチャ」という言い方を耳にしますが、これは地表の反射光の比率を指す言葉になります。
ディフューズ(diffuse)と同義で使われていることが多いです。
このWikipediaのページの下の方の表によると、月面のアルベド値は
【衛星】 月 0.07 – 地球の衛星(岩石なので低い)
とあります。
つまり太陽を1.0として、月は0.07倍の明るさで光を発しているのとおなじ意味になります。
月の場合はこの他に太陽との位置関係によって満ち欠けがありますので、満月と新月では光量も変わってきます。
今回の配布デモには組み込んでいませんが、月光をシミュレートしたものが手元にありますのでスクリーンショットだけ紹介しておきます。
このスクリーンショットは太陽の0.07倍の光量で満月の月夜としてシミュレーションした結果です。
わずかに青っぽくなった地表と地平線が確認できます。
実際には暗所で青っぽく見えるのは視神経の桿体細胞の影響のほうが大きいようです。
MIUMIU《直営店買付》ミュウ ベル ナッパレザー ハンドバッグ
【月光の大気散乱シミュレーション結果】
【新作】ルブタン ExploraFunk バックパック 存在感溢れる
■累積売上総額第1位【GUCCI★グッチ】JACKIE ミニバッグ
実際に撮影
今朝、通勤するときに晴れていましたので実際の空を撮影してきました。
水色の具合など比較できます。
Williams 37916 11ピース 1/2インチ ドライブメトリックユニバーサル6ポイントインパクトソケットセット【パームエンジェルス】ロゴスウェットと★メンズバケットハットG-TING スパイスラック オーガナイザー 壁取り付け 5段の高さ調節可能 吊り下げ式スパイス棚ストレージ フック5個付き デュアル使用 大型調味料 並行輸入品
ジバンシィ タグエフェクト 4Gプリント レザー GIV 1 スニーカー (C) エアテックス コンプレッサーAPC-001R2
【新品】レンブラントチャームバージニアチャームワイエムワールド オープンラック 収納ボックス 幅40cm フリード ホワイト×オーク 00-287
アスレタ ATHLETA O-Rei Futebol H003 2S サッカースパイク 10013-PWHSIL(Pホワイト×シルバー)
今回は技法の紹介ということでこの話題の元ネタ・原典も存在しています。
このページでは端折った解説になりましたので、計算式など詳細はオリジナルの
資料のほうを御覧ください。
実装の方法や考え方、計算アルゴリズムが今回のデモに多く反映されています。
#22SS【AdidasxGucci】gourmette necklace with Trefoil pendant
■SA18-8 アメリカンシリンダー 2列4穴 アメリカンシリンダー 日本製 業務用 ステンレス
(Sean O’Neil)
大気散乱の計算をするときの概念の説明が図解とソースコード付きで紹介されています。
最初に考え方を把握する際に図解が参考になります。
【おすすめ】adidas originals Oversize Line Sweat ShirtTSGR-1532A タニコー ガスレンジ ウルティモシリーズ
(Henrik Wann Jensen)
夜の月明かりのシミュレーション。
今回時間的な都合でデモでは導入していませんが、さらにリアリティが高まります。
先ほどデモ内のスクリーンショットだけ紹介しました。
著者の名前を見てピンと来た方、そうです。フォトンマッピング法の第一人者Jensen氏です。
■プロジェクターランプ ホームシアター テレビ ABH-WD-73738 AuraBeam Economy 915B441001 Replac
(Eric Bruneton & Fabrice Neyret)
事前計算でテクスチャにテーブル化して保持しておく手法。多重散乱のさらなる発展形。今回のデモで最も参考になった資料です。
実装例のソースコードや動画も公開されています。
散乱光だけでなく、地球そのもののセルフシャドウの改良にも着目した論文です。
計算式の一部をこのソースコードを参考に構成しました。素晴らしい文献です。
大気散乱シミュレーションは実現できていますが、このデモで地球を表現するためにはまだまだ実装していないものがあります。
・雲 (現在は雲がないため全世界快晴)
・スペキュラーマップ (海と大地との反射率をスペキュラーマップで違いを反映)
・月 (衛星として太陽光を反射して間接光で地表をライティング)
・実際の地形・起伏
これらを追加していくことで、さらにリアリティが増してゆきます。
今世代までは見た目をそれっぽく実写に近づけて法線マッピングや照明の工夫などで
なんとかデザイナーの力量と努力で頑張ってこられたと思いますが、次の世代(DirectX11世代)になると更なる品質が求められてきます。
次世代は実写品質を出すために、今以上に物理ベースのシミュレーションが必要になってきて、プログラマーががそれを作ってデザイナーの実力を発揮できるように支援していく体制が求められて来そうに思います。
もちろんGPUパワーも有限ですので全てがシミュレートできるわけではないですが、その比率が増えていくのは間違いなさそうです。
送込【BARBOUR X NOAH】バブアー X ノア バケットハット2色
- シーダブリューエックス スポーツタイツ CW-X ヨガタイツ エキスパートタイプ 吸汗速乾 UVカット ストレッチ 汗消臭 HCY269 (1)
- Graco 243298 チップエクステンション 30インチ Rac Vガード (7)
- Lush Decor Whale Kids Reversible 4 Piece Quilt Bedding Set with Sham and De (18)
- 並行輸入品Fossil Women's Large Fiona Crossbody Leather Cross Body Bag - Black好評販売中 (41)
- イスカル カムドリル ( DCM 240-120-25A-5D ) イスカルジャパン(株) (5)
- C++◆LANVIN Vネックとパネルプリントのオーバーサイズカーディガン
- C++cording (4)
- ■京セラ 溝入れ加工用チップ CVDコーティング CR9025《10個入》【6449344×10:0】 (8)
- VisualStudioの使い方 (3)
- 送料無料 サンゲツ RBコレクション ロールスクリーン ワンタッチチェーン式 RS278〜RS279 幅1200×高さ2800mmまで (5)
- ウイニング(Winning)ボクシンググローブ 14oz (2)
- 反射立看板 45型 普通反射「左折できません」 1500×450 AK-2110 2台セット 安全企画工業 (7)
LAB
- リッチ ES-6(0.6mm) 50mlカップ付
- AMD CPU Athlon 200GE YD200GC6FBBOX Vegaグラフィックス搭載
- 日本限定★GUCCI×ヒグチユウコ★Love Letters シャツ
- デモプログラム
- 【リヨカLiyoca】ドビーロングワンピース
- 【送料無料】TRUSCO 海外製 業務用ポリ袋 透明・箱入 0.1×120L 100枚入 KXS00120 1箱【北海道・沖縄送料別途】
- すぐ届く♪1659Z ナイロンストラップL ポーチにつけてバッグに
- Bauhutte(バウヒュッテ) スタンディングデスク 昇降式 (幅70×奥行き45cm) ホワイト BHD-700-WH
- 【ルイヴィトン】フリルブラウス <ボタンがオシャレ>
- DuomiW 6ポケット ベッドサイドストレージオーガナイザー キャディ横 テーブルキャビネットストレージオーガナイザー テレビリモコン 電
- 近畿製作所 (KINKI) スプレーガン CREAMY 97Z-25 (C-97Z-25) (加圧式)
- (代引き不可) GS オートマット GS313GX 1台
- BURBERRY】チェックプリントドローコードスイムショーツトリュフ