유니티 - 2d Raymarched Smoke



유니티 - 2d Raymarched Smoke

금별 5 1,915 2019.10.26 09:49

2d Raymarched Smoke

Start with a texture as opacity. Here I'm using a flat splat texture to better show the offset layering.

Take a copy of this, offset it by the LightDir in tangent space by adding to the UVs. Do this again with an increased offset and then layer them together. This is the shadow side. 

Now take another two copies of the texture, again offset by the LightDir in tangent space, this time by subtracting from the UVs instead of adding. Increase the offset and layer those together.

This is the lit side.

We can use the Dot Product of the ViewDir and LightDir to Lerp blend between the negated shadow side and the lit side.

Perhaps use a smoothstep to ease the transition.

Now just chuck out that flat shaded splat texture, and pop in a soft smoky texture with faded sides.  

Multiply it by the Light Colour, and if you’re feeling extra fancy, use the Dot Product of the ViewDir and LightDir to add in some fake SubsurfaceScattering as the light travels behind the smoke.  

 

Comments

커피맥주 2020.02.14 19:09
링크 깨졌네요 흑흑
금별 2020.02.16 19:20
이런 ㅠㅠ
금별 2020.02.16 20:16
수정했습니다.
커피맥주 2020.02.18 12:45
커피맥주 2020.09.15 02:57
오랜만에 다시 보러 왔더니 또 링크가 깨졌네요 ㅠㅠ


Total 1,071 Posts, Now 1 Page


 

Banner
 
Facebook Twitter GooglePlus KakaoStory NaverBand