/Unity-URP-6D-Lightmap-Smoke

An example of 6D Lightmap texture shading for smoke in Unity URP

Unity URP 6D Lightmap Smoke

An example of 6D Lightmap texture shading for smoke in Unity URP

I created the smoke simulation in EmberGen and exported as a 64 frame VDB. I rendered the 6 channel lighting with an Arnold Volume using Red/Green lights for Right+Left, Top+Bottom, Back+Front then composited into 2x 4K textures (64 frame sprite sheet @ 512px, RGB channels= X+,Y+,Z+ / X-,Y-,Z-). I built a ShaderGraph in Unity URP that reads the flipbook animations and splits into each channel to contribute to lighting for the smoke texture.

Prerequisites

This project was created with Unity 2019.3.4f1 and hasn't been tested in any other version

Unity 2019.3.4f1 or higher

Setting Up

Steps:

Create new URP project in Unity
Keep the default settings and assets
Import the .unitypackage from this repo
View the scene in Assets>__Project>_Scenes>SmokeTests

Arnold C4DtoA Render

The included Cinema4D project file is my custom setup for rendering VDB animations with 6 direction lighting

Steps:

Download VDB folder from:

Dropbox VDB Folder

Load the Cinema 4D scene
Click on the Arnold Volume and change the file path to the location you unzipped the VDB folder to
Enable 2 sets of lights for each render stage. Right+Left or Top+Bottom or Front+Back

Built With

Acknowledgments

License

This project is licensed under the MIT License - see the LICENSE.md file for details