こういうの、今までありそうで無かった。
光源からフォトンを放射して、フォトンが格納されるまでを可視化した動画。一粒を追っていくとロシアンルーレットな感じは多少わかるかも(?)
以下、作者のブログから引用。
- Global illumination via Photon Mapping
- 128 lines of 79-column (or less) open source C++ code
- Point light source
- Specular, Diffuse, and Glass BRDFs
- Ray-sphere intersection
- Modified Cornell box scene description contains LSDSE path
- Cosine importance sampling of the hemisphere for diffuse reflection
- Russian roulette for path termination
- Russian roulette and splitting for selecting reflection and/or refraction for glass BRDF
- Quasi Monte Carlo sampling using Halton sequence
- Antialiasing via 2×2 super-sampling
- Using kd-tree for radiance estimation
ソースコードはこちら。
GI的アプローチを見てると、BRDFの精度とかホント微々たるものに思えてくるよ。多くの場合、画の出来を左右するのがサンプリングの質なんだもん。
ところで、未だに自分の中でkd-treeがピンと来てない件。

関連記事
DUSt3R:3Dコンピュータービジョンの基盤モデル
ゴジラ(2014)のメイキング
BGSLibrary:OpenCVベースの背景差分ライブラリ
ZBrushで仮面ライダー3号を造る 仮面編 PolyGro...
PureRef:リファレンス画像専用ビューア
ZBrushで仮面ライダー3号を造る 仮面編 ClipCur...
オープンソースのロボットアプリケーションフレームワーク『RO...
C++の抽象クラス
GAN (Generative Adversarial Ne...
Caffe:読みやすくて高速なディープラーニングのフレームワ...
IronPythonを使ってUnity上でPythonのコー...
OpenGVのライブラリ構成
viser:Pythonで使える3D可視化ライブラリ
オープンソースのテクスチャマッピングシステム『Ptex』
ラクガキの立体化 反省
プログラミングスキルとは何か?
Google XML Sitemap Generatorプラ...
書籍『OpenCV 3 プログラミングブック』を購入
映画『ブレードランナー 2049』のVFX
ZBrushでアヴァン・ガメラを作ってみる 首回りの修正・脚...
Python.NET:Pythonと.NETを連携させるパッ...
BSDF: (Bidirectional scatterin...
イタリアの自動車ブランドFiatとゴジラがコラボしたCMのメ...
Polyscope:3Dデータ操作用GUIライブラリ
iOSデバイスのためのフィジカル・コンピューティングツールキ...
BlenderのRigifyでリギング
CLO:服飾デザインツール
映画『ミュータント・タートルズ』を観てきた
ラクガキの立体化 1年半ぶりの続き
WordPressの表示を高速化する
ZBrushで仮面ライダー3号を造る 仮面編 PolyGro...
ZBrushのハードサーフェイス用ブラシ
UnityでTweenアニメーションを実装できる3種類の無料...
サンプルコードにも間違いはある?
『スター・ウォーズ 最後のジェダイ』のVFXブレイクダウン ...
『ローグ・ワン/スター・ウォーズ・ストーリー』のVFXブレイ...
まだ続くブログの不調
Photogrammetry (写真測量法)
ZBrushCoreのTransposeとGizmo 3D
Unreal Engineの薄い本
Unityをレンダラとして活用する
Mitsuba 2:オープンソースの物理ベースレンダラ


コメント
YouTubeにもアップしました!
元はといえば、YouTubeの動画
を見て、実際にフォトンマッピングを可視化してみようと思ったのでしたw