AnKor's Shaders

I did have a functional way of making "LODs" for clouds where a less detailed version of the cloud was rendered at all distances, and at closer distances "the rest of the cloud" was rendered as a separate cloud at the same positions. Unfortunately, performance was even worse. It seems that the number of clouds has as much or even more impact than the quality of the clouds.

If you bring the horizon distance in with the cloud distance, it isn't quite as jarring. However, having that far horizon it turns out was worth sacrificing a lot of FPS for me. Going from 150km to 125km helps a little because an awful lot of terrain doesn't get rendered, but it doesn't do much for the clouds, since most are limited to less than 125km. You should notice a decent difference going from 125km to 100km, but you also really notice the closer horizon too.
 
It's tied to the CPU having to keep track of each cloud element's location and orientation as an object and then sends that to the GPU for rendering. It's a similar problem to displaying trees with uniform density out to great distances so you don't see them suddenly appear as you get closer. It's all about the item count going up as the square of the distance. The item you need to reduce to improve performance is the density (not visibility, but frequency). Think clouds per cubic kilometer, or trees per square kilometer.

At 1 cloud texture per cubic kilometer the object count is:
Render Distance
150km = 423,900
120km = 271,296
60 km = 67,824

At 100 cloud textures per cubic kilometer:
Render Distance
150km = 42,390,000
120km = 27,129,600
60 km = 6,782,400

The new weather Mod looks gorgeous, but some of its weather conditions add a lot of texture sprites.
 
The item you need to reduce to improve performance is the density (not visibility, but frequency).

That's it about as simply as it can be put. Having spent the best part of today's free time studying the files and checking framerates, there's indeed a direct correlation between the amount of clouds and the fps hit, the actual mass of cloud on the screen doesn't play a large part. However if it's compiled of a hundred small clouds or ten huge ones absolutely does. The next step: figure out how to make a similar enough looking cloud coverage with fewer sprites.
 
Back
Top