How to approach making an infinite opaque cloud layer? (materials question)

Hi all,

I would love some input on how to make a cloud layer that is below the player. I just want to do something like in the jpg. The image is from a mobile game it’s clearly not fancy, no particle effects, translucency or volumetric fog. Has anyone seen a material set up that you could point me to. Its an opaque fog or cloud sheet with a little bit if movement or offset built in. Any thoughts on where to look?

  • Get one or more cloud textures you like. (Check license!) Make them tilable if they aren’t, although you might be able to get away with mirroring like in that image above.
  • Use them in multiple texture samplers in your cloud layer material.
  • Blend them using Lerp for example.
  • With the texcoord node you can make them repeat at different scales which will reduce the perceived repetition of their mixture. Alternatively you can use WorldPosition.xy to map the textures in world space.
  • Scroll them with the Panner node, at different rates and slightly different directions.

Thank you for responding!!
Your input helped a lot. I got the cloud textures from free store assets.

I think its a nice start and what I asked for. Since you are a material pro, what would you do to make this better? You would add noise or maybe some kind of offset to create a 3d look? Would you recommend trying to do it as transparent? I see a lot of clouds are transparent.

Thanks,

You got a quite decent look already, I see nothing wrong with it or obviously missing anything. (Although I don’t know your expectations. :slight_smile:

Generally speaking only use transparent materials if absolutely necessary because they are costly. If performance becomes an issue you could even use an unlit material with manually calculating lighting for the sun (sun direction vector param dot producted with normal map).

For a more 3D look you could try parallax occlusion mapping (A new, community-hosted Unreal Engine Wiki - Announcements - Unreal Engine Forums) but that might not be worth it for it’s cost and artifacts at shallow camera angles. (You could do something similar with a multi-layered cloud mesh and transparent materials but the overdraw would be nasty.)

Another, more subtle effect I’d try is world position offset on a fairly well subdivided cloud layer. Since clouds (and air in general) behaves like a fluid a thick cloud layer can have waves like water. Two panning, blended perlin noise normal maps could provide data to offset the vertices mostly vertically but maybe a bit sideways too.

Well, that’s all I got from the top of my head. :slight_smile: Good luck!

Wow great thanks for all the input. I was able to do the Parallax Mapping on one of the textures. I think it came out pretty good. I do need to mess with the colors more but it has a nice look.

The world position offset was a different story. I’m not sure if you mean to use time and have it bob up and down like a wave it parts. I tried to set something up on the offset but I’m not sure its doing anything.

I have included it here in case you have other ideas or if someone is ever interested.

Thanks,

This is pretty awesome and pretty much exactly what I’ve been searching for! I really, REALLY suck and creating materials; but would you mind if I tried to recreate this from your BP screenshot?

Go for it. That’s what it’s there for. Hope it works out.