Fast Stylized Procedural Sky

Hi, I’ve commented on your marketplace page before and came across it again on sale.

Me:
Definitely interested! Please tell me this is a skydome or has a skydome option? I personally think a skysphere is unnecessary unless it’s for a space environment and adds extra cost to performance. Would it be difficult to say, add an extra moon to this? I wan’t to set up a smaller moon rotating the larger one for a fantasy theme, but currently have no experience setting up skies.]

You:
[System supports skydome as well as skysphere :slight_smile: Fantasy scenery can be achieved by background layer. You can create your own background with additional mountains/moons/static elements on scene.]

Before you comment said something different. Saying something like that because clouds, and everything is all part of the same element for performance. That because clouds are added via noise which overlaps other UV elements like the moon and sun, that adding an extra moon would require a lot of work. Pretty much an overhaul.

What made you retract that statement? What changed? Is this now more simple to do? Or is your edited reply just stating that I can only do this with static elements? but wouldn’t it not be compatible with your clouds, which is not mentioned in your edited response? Is it even possible to have a static background layer between the skydome and skydome’s noise based clouds which seems like what you suggested?

Also wondering if I can just completely disable the clouds and try to combine it with Cloudscape Seasons?

I need a more detailed response as I am now confused between your two different responses, thank you.

Well, the situation has changed a little after two updates and this system is still evolving.

To make everything clear:

  • Skydome/skysphere is still rendered as single draw call with one shader.
  • The second dynamic moon is still not supported.
  • The second static moon can be added in the background layer. I’m going to prepare example of static planet/moon for you (give me some time) :slight_smile:

YES! Look at the screenshots.

List of layers in shader from far camera plane to near camera plane:

  1. Static Background gradient
  2. Dynamic Sun
  3. Static Background stars
  4. Dynamic Moon
  5. Static Background far distance clouds
  6. Static Background mountains/asteroids/planets/moons/ect. (depth distance encoded in alpha channel allow to fade in distance and cover some clouds)
  7. Dynamic clouds rendered from noise textures based on weather settings

I’ve never tried Cloudscape Seasons so it is hard to say. If clouds in this system are rendered as the translucent layer then it can cover my sky system.
I can add switch option on the material to disable my dynamic clouds (step 7) if you need this. You should know that probably weather presets/clouds color curves will be not compatible with Cloudscape Seasons.

Thanks for the quick response.

As for the first quote; as I said, the response was changed, not added too. So just needed to be sure.

I have to admit, for some reason the clouds seem a lot more pleasing to the eye in the video than the last time I saw them.

No need for an example. I’ll get it. What I am more concerned about is setting up a smaller ( for low polygon draw call)

brighter second static moon to rotate the non-static dynamic moon and constantly switch from overlap to non-overlap the static object. But I presume your clouds already do something similar and is based on the camera view distance to calculate whether or not a cloud overlaps static object? In other words, would in not be something like adding a set overlay distance, then adding to the blueprint to set a static object to follow and rotate both in font and behind this distance?

But then again, I’m not sure how feasible a static solution is for large maps or open worlds? I’m thinking more along the lines of Final Fantasy XIV sized maps, so out of map meshes should be fine.

I’ve generated 10 new textures of noise and some of them have more details that is why it looks better in the new video.

Dynamic moon in FSPS is not represented as polygon mesh - it is normal-map illuminated by the sun light so polygon count is not changing based on moon size.

I don’t know if I understand right what you need. Do you need to implement orbital movement of one celestial around the second ?
There is not option to swap layer rendering order of static-dynamic elements of sky. I can try to add this functionality in future update but right now its not possible.

I don’t see any differences in sky systems between small maps and large. There is no sky system that can solve all your problems and probably you need your own solution implemented especially for requirements that you have :slight_smile:

I was talking about using a static moon as you suggested which contains polygon count. I mentioned polygon draw call because if I were to choose which moon to have as the larger one (static or dynamic), it would be your dynamic based moon because I don’t have to use a higher polycount on a smaller static one.

Yes, that is what I need! a smaller planet/moon orbiting a larger planet/moon in a day/night cycle. If you add compatibility support for this, I’m sure that would help a lot of people in their space and fantasy themed projects! :slight_smile:

That’s true, and maybe one day if needed. But currently just interested in a good looking day/night cycle sky with just that one added feature. I could go for something temporary, but if you add what I think you suggested, then your sky would be a pretty good solution. Right now my skill is mostly limited to modeling in Zbrush, and Maya’s quad draw being slow, and me being a perfectionist doesn’t exactly help with time.

Fast Stylized Procedural Sky Update 1.3 (focused on efficiency)

  • Static skylight cubemps blending added. I’ve implemented the tool for easy preparing the static skylgiht cubemap snapshots.
  • Main sky shader optimization, 10 instructions less in pixel shader now (using vertex interpolators).

The update is already waiting for review should be available very soon :slight_smile:

Nice has this been patched into the latest version? If so, I’ll deffo be getting this.

Edit: nvm, I bought this and I noticed it did! Very beautiful release, extremly high quality totally worth it!

Thanks,
HP

Is there a way to change the speed of the background clouds?

Yes! Just change one parameter: **External->World Rotation Speed **
Result of changes of this parameter is not visible in editor preview (in game only).

Totally slipped by me. Thanks!

How do you change the horizon color? It’s just too much white.

It depends.

If “Time Of Day Curves” system is **enabled **then you need to change color in color curve:
Blueprint->SkyLowerColorCurve

https://image.ibb.co/iX8Wnc/lower_color_curve.png

You can edit existing C_SkyLowerColor or duplicate curve and replace a value of the SkyLowerColorCurve parameter in the blueprint.


otherwise (if “Time Of Day Curves” system is disabled) then you only need to change blueprint parameter:

Blueprint->SkyLowerColor

https://image.ibb.co/nghP7c/lower_color.jpg

Nice Blueprint you got there! Going to buy after UE 4.19 released.
On the Marketplace you wrote: “Thanks! Network replication is not ready yet, but probably will be added in update 1.4”
We definitely need Networking and would do it by our own, if it would take longer until Version 1.4 comes out…
Can you give us any informations about the current state?

Question: How would I lock the sky’s rotation to the player character actor’s rotation, so the sky appears locked-in-place even though the player is turning?

I’m making a VR cockpit game, where locking the sky sphere is more comfortable when the player turns. With the UE default skysphere, I just attach it to the player’s character and it inherits the rotation and just works.

With Fast Stylized Procedural sky, I set it up to use the Skysphere, and attach it to my player’s vehicle, and while the ground rotates correctly (using Skysphere_Moon), the clouds maintain their position in worldspace. Is there another way I should do this? Maybe using the world rotation variable and updating it as my player’s vehicle rotates?

Few reasons why replication is not out yet:

  • I’ve just spent a lot of time on the update of my second package [Robo bars]](https://forums.unrealengine.com/unreal-engine/marketplace/1412672-sdf-robo-progress-bars) but now it’s ready and I can focus on Fast Sky :slight_smile:
  • just need do some tests because replication of sky parameters is not the very hard topic but there is a lot of parameters so please be patient.
  • need more features to add before I will send the update. It’s more convenient to pack all changes in one instead of sending multiple small updates.

To be honest I’ve never thought about that. Clouds UV/sun/moon is calculated based on world space position of vertexes so this option is not available in Fast Stylized Procedural Sky right now. It’s not possible without material modifications. I will try to fix this as fast as possible by adding world space rotation switch.
[EDIT] I’ve already prepared this rotation fix :slight_smile: If you can not wait for the update then give me your email address and I will send you new material directly.

You are amazing - thanks! Will PM you.

Fast Stylized Procedural Sky update 1.4 is already waiting for review:

  • Added replication of sky parameters and presets. (server changes the weather)
  • Added Clouds Bloom parameter.
  • Added Day Duration parameter.
  • Added Switch for sky transformation wold/local space. Sky can be properly attached to objects now.
  • Documentation update.

New package should be available to download on Monday.

New parameter “Clouds Bloom” in action:

Thank you for all positive reviews and rates :slight_smile:

I finally bought this awesome project! Will be messing with it soon! :slight_smile:

Great! Can’t wait to see the results :slight_smile:

My roadmap for next updates is almost empty so I’m looking for new features to implement into FSPS, if you have any interesting ideas or requests please share with me.

“Dynamic” day/night cycles maybe (with easy way to hook up and sync directional/skylight and anything else that requires to be affected by day/night cycles; also maybe have a counter for cycles, so that people can use it for calendar and whatnot) ?

Morning/Day/night/etc. presets (to be able to create skies that match lighting scenarios and load particular preset when lighting scenario is loaded/switched) ?

Also, can one have more than one layer of clouds? (like Unreal 1, Quake 1 or Quake 3)

Fading clouds before they reach horizon ? (so that a skysphere can be used with your skies)

Just something came to mind :slight_smile: I don’t know yet if any of those are already present in the latest release.