UnityでLight Shaftを表現する

ここ最近Unityの話題ばかりだけど、今回もまたUnity関連の話。

空気中の細かいチリや、煙を焚いた時に、光源から光の筋が見える現象を”Light Shaft“と呼んだりしますね。Mayaとかのプリレンダ環境なら、Depth Map Shadowとか使えば割と簡単に表現できる現象なんだけど、リアルタイムだとそれなりの計算コストになる。リアルタイムで実現するには、光源の数やバッファサイズにかなり気を付けないと処理落ちしてしまう。


スポンサーリンク


で、そんなLight Shaft表現をUnityで実現するScriptをGitHubで公開している方がいる↓

robertcupisz/LightShafts

I made a more decent light shafts effect for #unity: Anyone interested? 🙂 #unity3d

Robert Cupiszさん(@robertcupisz)が投稿した動画 –



このコード、ありがたいことにパブリックドメインだそうです。
使い方は簡単で、Unity標準のライトにアタッチして使用する。対応しているのはDirectional lightSpot light。後は様子を見ながらバッファサイズやサンプリングサイズを調整してやるだけ。

LightShafts

実装の元となった論文はこちら↓
https://www.semanticscholar.org/paper/Epipolar-sampling-for-shadows-and-crepuscular-rays-Engelhardt-Dachsbacher/2b9640253af2bf397232f2436eddce2cf1d5f1eb

こういう表現が加わると一気に奥行きが増して素敵ね。

その後、Unity Adam demoにも使われたようです↓
https://github.com/Unity-Technologies/VolumetricLighting



2018年9月 追記:今ならAuraという無料のAssetがある↓


スポンサーリンク

Aura – Volumetric Lighting


AuraはUnityのためのオープンソースのvolumetric lightingソリューションです。
開発はGitHubにホストされ、最新のパッケージはAsset Storeに公開されています。

Auraは、環境の空気などの媒体中の光の散乱や、この環境に存在する眼球/カメラには見えない微粒子の照明をシミュレートします。
この効果はvolumetric fogとも呼ばれます。

GitHubのリポジトリはこちら↓
https://github.com/raphael-ernaelsten/Aura



ドキュメントはこちら↓
http://www.raphick.be/aura/documentation/

Auraの内部で行われる処理の概要図↓

Aura - Volumetric Lighting for Unity

2019年追記:有料版のAura 2がリリースされています↓

Aura 2 – Volumetric Lighting & Fog


Aura 2はUnity用のvolumetric lighting/fogソリューションです。
Aura 2は、環境中に存在する肉眼・カメラでは捉えられないほど小さな微粒子の照明効果をシミュレートします。

Aura 2はUnityに最先端のvolumetric lightingシステムを提供します。
このレンダリング手法は、Tomb Raider, God Of War, Red Dead Redemption 2, Assassin’s Creed Odysseyなどの最新のハイエンドゲームで使用されているものと同じです。



スポンサーリンク

関連記事

clearcoat Shader
『ローグ・ワン/スター・ウォーズ・ストーリー』のVFXブレイクダウン まとめ
Web経由でRaspberry PiのGPIOを操作したい
ミニ四駆を改造してBluetoothラジコン化する
ドラマ『ファーストクラス』のモーショングラフィックス
BlenderProc:Blenderで機械学習用の画像データを生成するPythonツール
ZBrushでゴジラ2001を作ってみる 頭の概形作り
SIGGRAPH Asia
書籍『データビジュアライゼーションのデザインパターン20』読了
ジュラシック・パークのメイキング
CGWORLD CHANNEL 第21回ニコ生配信は『シン・ゴジラ』メイキングスペシャル!
Zbrushでメカ物を作るチュートリアル動画
Boost オープンソースライブラリ
Google Colaboratoryで遊ぶ準備
ラクガキの立体化 背中の作り込み・手首の移植
iOSで使えるJetpac社の物体認識SDK『DeepBelief』
WordPress on Windows Azure
自前のShaderがおかしい件
CEDEC 3日目
生物の骨格
ZBrushで基本となるブラシ
html5のcanvasの可能性
Texturing & Modeling A Procedural ApproachをGoo...
ラクガキの立体化 3Dプリント注文
WordPress on Google App Engineを1週間運用してみて
adskShaderSDK
DCGAN (Deep Convolutional GAN):畳み込みニューラルネットワークによる敵...
SIGGRAPH ASIA 2009で学生ボランティア募集してるみたい
openMVGをWindows10 Visual Studio 2015環境でビルドする
OANDAのfxTrade API
Maya LTでFBIK(Full Body IK)
1枚の画像からマテリアルを作成できる無料ツール『Materialize』
機械学習に役立つPythonライブラリ一覧
ラクガキの立体化 進捗
ZBrush 2021.6のMesh from Mask機能を使ってみる
CGレンダラ研究開発のためのフレームワーク『Lightmetrica (ライトメトリカ)』
Adobe Photoshop CS5の新機能
PyDataTokyo主催のDeep Learning勉強会
ZBrushで仮面ライダー3号を造る 仮面編 PolyGroupを分割する
ZBrushで手首のモデリングをリファイン
ZBrushでカスタムUIを設定する
布のモデリング

コメント