Unityでキューブマップの環境マッピングを簡単に作成する方法があったので、紹介しておきます。
これを使用するとガラスや金属等の映り込みを表現出来、色々と表現の幅が広がります。
下は環境マッピングをりんごや球に適応してみたSSです。
今回はキューブマップの作成に無料アセットのLightShapeを使用しました。
一応Unityの機能だけでもCamera.RenderToCubemapを使えば作れるらしいのですが、Pro ONLYと書かれていますしスクリプトが必要なので、こちらを採用しました。
LightShape
試した手順はこんな感じです。
- LightShapeをインポート
- メニュー>Window>Light Shapeを選択して、"Create LightShape Setup"を選択
→ シーンにLSManagerが作成される
- LSManagerのCreate Save Folderをクリックして、キューブマップを出力するフォルダを確定
- LSManagerの子のLSProbe_1を選択して、"Update ALL Cubemap"を選択
- 3で指定したフォルダにcubemapが出力されます。
なお、もっと詳しい方法は公式HPに動画付きで上がっています。
Everything LightShape!
cubemapを作成すれば、ReflectiveやLightShapeのシェーダーを使ってモデルに環境マッピングすることが出来ます。LightShapeは環境マッピングの他にリムライトも表現できているので、使ってみるといい感じに絵作りが出来ました。
また、RenderFX>Skybox cubeでSkyboxにも適応できたりします。例えば遠方の背景等を表現する際、これを使用すると単純に遠方用にも出るを並べるのと比べて、低コストでソコソコ綺麗に表現できそうです。
背景はcubemapで作成したskyboxで表現しています。
これとLight Probe(高速な擬似グローバルイルミネーション)とLight Mapを駆使すれば、良い感じの絵作りが出来そうです。イメージエフェクトがあればなお良し