So I have a swamp level (for a Top-Down project), and I’m looking to make a very dense fog layer near to the ground. This is a good example of the kind of fog I’m looking for.
(Obviously, this isn’t going to be on the scale of buildings, and I know that fog doesn’t look this way when you get closer to it, but it looks really cool, and it can be easily explained away in the context of my project.)
So I tried using one of Unreal’s Exponential fog volumes, but it’s really only good for adding to a primary fog effect. It doesn’t have texture or movement to it, and I can’t get it to convey the depth of fog I’m looking for.
After this, I tried a particle system, and just by using subimages of a smoke material I was able to get something that was more to my liking. The problem is that while it works, it is a performance hog and running it on low performance machines makes me feel dirty. (It runs fine on my machine, but it’s pretty obvious it isn’t a smart idea to do it this way.) Then I looked at the fog sheet static mesh from Unreal’s Blueprint example project. This is way better for performance, but it still had issues with conveying the depth and movement I’m looking for.
So now I’m at a crossroads, Should I spend my time tweaking the material that I’m placing on the static mesh, or is there another solution? I’m really determined to get this effect working in one way or another, but I’m just not sure where to go from here. A lot of writeups on volumetric fog are concerned with making subtle, and highly realistic effects. I could honestly care less about whether it’s realistic, I just want it to be aesthetically pleasing.
As an addendum, I would really like to find a way to have lit translucency (or at least built in lighting) in some areas as well (I.E. a glowing torch or mushroom emits light, and the fog around it reacts accordingly). It doesn’t seem feasible performance-wise to have all of the fog do that, but I could be wrong.
Having a fog effect that reacts to movement within the level is something that I tried to implement, but couldn’t get to work, but I would assume that it would be way too performance intensive to justify. If anyone has some ideas on how I could potentially fake that (So that it looks like the fogs is pushed around when a moving objects moves into it, even if it’s a non-dynamic thing), or actually implement it without killing most machines, I’d love to hear it.