Is it possible to make real time volumetric updated clouds?

My main approach is to make volumetric clouds using small anchored parts.

I made it server side, Then i realised it will lag alot.
I made it client side then, i was able to do it using game:GetService(“RunService”).RenderStepped.

And i was able to get the clouds using a perlin noise.

The problem is that its too laggy, can someone give me optimization tips?

If not, can someone give me another faster approach?

2 Likes

I don’t know how you would achieve 3d volumetric clouds via parts, however you can achieve something near to volumetric clouds using layered beams and textures etc.

I would assume however, if you wanted to make volumetric clouds out of parts you would need to consider the following:

  • The clouds shouldn’t be able to collide / physically interact with any objects (to reduce lag)

  • As you said, you’re using perlin noise, Try alter your code so that inside the cloud is hollow, reducing the number of parts. (Constantly updating clouds via perlin noise is way too laggy as it is, so i don’t expect this tip to help much)

  • You can try make meshes of different types of cloud and spawn them while also morphing them either via a tweenanimation or via a lerp function (TweenAnimation is less laggy as it is specifically made for these things, make sure you do the tweening on the client only)

    Note that these clouds will have to be made entirely by meshes (without textures) to avoid ugly stretched out texture looks

Those are the only tips for you I have in mind, I wish you the best of luck :+1:

3 Likes

Thanks! I will try those tips you gave me!

2 Likes