Cloud Particle System

I’ve played a game before called “Sky: Light Awaits” and I am still amazed by the graphics that this game has. From the post processing effects to the game mechanics, this game is truly a work of art. What really caught my attention were the clouds, usually if you touch a cloud in other games, you would go right through, but in this game, the clouds actually respond to movement as you go through it making the clouds look so soft and realistic. I’m not sure if the clouds use a particle system but the effects are truly magical, if anyone has the experience regarding particle based system effects on Roblox or knows about this game’s cloud system, please share your knowledge with me :upside_down_face: because apparently particle emitters are not capable of this (unless there’s some secret wizardry magic I am unaware of)

Edit: Here’s the link to the game (available for iOS)
https://itunes.apple.com/ph/app/sky-light-awaits/id1219437821?mt=8

8 Likes

Those clouds above the water surface, could be created by using a beam object, or a billboard gui, depending on whether you need it visible from every angle, or only the bottom, personally i go for the beam as you can set it to follow the cam against a certain axis, while the billboard gui, when looking from above has the whole cloud face it. Now for the other clouds, your best off taking 20-30 layers of transparent parts, with a texture on each side, and layer them, slowly changing the size of the texture to give volume.

2 Likes

I recorded a video of the cloud’s behaviour

2 Likes

Yeah, that looks much more detailed than the Roblox particle system engine is capable of at the moment. You could probably approximate it with some ZIndex trickery to get some decent lighting, but at the moment you wouldn’t be able to make it look quite as good as that. You might want to look into other ways of possibly doing those cloud effects, for example using BillboardGuis or Parts.

6 Likes

I love how those clouds look like bubbles.
Roblox should be releasing some lighting updates in terms of environments soon- which I’m unsure of the date of it coming live.

2 Likes

If im not mistaken at RDC last year Roblox said something about a new cloud system which will look more realistic.

2 Likes

You could create an array of attachments within the terrain object, with a set density, that are spawned within a set Region3 or BasePart.

Each attachment could then have a Particle Emitter inside it. Set the speed to 0, and keep it rather static.

The texture of the particles has to be able to be overlay on others without causing some weird overlap to be visible, so I’d probably use a particle with a transparency to 0 and a image that has been through the process outlined in this article by Quenty

Then, create a table and, structure it as Vector3 = Emitter where Vector3 is the position of the attachment and the Emitter is the emitter. Create another table, called Close Ones or something like that.

Then, just loop over this in a set timeframe, such as while wait(1) do or RunService.RenderStepped, and check if the player is within a set distance from the Vector3. Use the Character.PrimaryPart for the position of the player.

If they are within said distance, make the transparency of the emitter tween to 1 or near enough 1, which will create the impression of the cloud parting. Then, to the Close Ones table, add the Emitter and the Vector3.

Every time the thing loops again, you’d have to loop over the Close Ones table, and check that they are still within the range, and then update the transparency of the Emitters associated with them.

EDIT: This could turn out to be very resource intensive.

5 Likes

Procedural Skies preview from RDC 2018

6 Likes

Impossible to achieve right now, that’s clearly a mesh being deformed as the character hits it, you could however have a mesh urself faking that shape, but not moving.

2 Likes

Ofc you could use layers and layers of textures and attempt to animate every layer to form that cloud shape, but doubt there’s much point to that.

My game will heavily rely on clouds as a decoration, not as an object you can interact with. I’m just trying to make clouds that would look like the ones in the videos I posted :stuck_out_tongue:

When I say “heavily” I really mean heavily rely like as in surround the thousands of studs of terrain in my game

1 Like

I really like this idea, however I may have not been specific enough to imply that I am using the clouds as a decorative material, not an interactive object. My game is a large terrain (as in thousands of studs large) with clouds surrounding the terrain.

Thanks for the idea tho, I’ll modify it a bit then see if it works :slight_smile:

Note: Sorry for the bump!

Has any progress been made on this? I’m working on a cloud generation algorithm and don’t know how to go about actually making the clouds. ParticleEmitters don’t seem to render at the elevations my clouds are on, :frowning:

It’s insane how this never came. Instead we got “dynamic clouds” which have literally nothing dynamic about them, and to even make them move in-game you have to trigger a tornado warning by setting the wind to 1000 miles per hour