Implementation Lakes

Cpt. Crispy Crunchy

Member
Contributor
Hey,
in the last days I had some success with implementing polygonal based lakes.
It has still some problems but it works reliable enough to give you a first look :).

Current Features:
  • Underground lakes with a bit of air above them.
  • Surface lakes which are embedded into the ground and closed with a sand "tub"
  • Lava lakes: very few on the surface and more and more the deeper it gets, with a checkbox to turn them off and on
Planned Features:
  • join adjacent surface lakes together to one waterheight
  • add lake biome and maybe some lake specific plants?
  • add additional probability for lakes to spawn in caves from Josharias cave module
  • modify probability for lakes based of SurfaceHumidityFacet
  • get the "tub" to look more appealing
  • more configurations at worldgen details
  • more biomes: Swamps, volcanic surface etc
Known Issues:
  • Sometimes lakes get created above thin cracks in the surface causing leaks of the water
  • Plants still spawn above lakes because of missing biomefacetmodification
As I can't really speak for performance without using a dedicated GPU (which I can't atm) I would appreciate some opinion on that topic especially :)

I can only recommend to enable Caves additionally, though it gets quite cpu intensive. However it creates a nice minecrafty feeling already :). Though sometimes lakes are a bit cutoff by the caves... Maybe some solid bottom of the underground lakes would fix this.

Any further tips which improve performance more are very appreciated :)
Code:
https://github.com/Terasology/Lakes/blob/master/README.md

Preview:
 
Last edited:

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
Tested it out on my system, which is relatively beefy. I dunno if dedicated GPU would make a difference though? This is way more CPU bound. Spun all 8 cores to 100% for the duration of my test, slowing down chunk generation substantially (was easily able to get to the edge of generation and stare into the abyss). Still was able to move around easily enough at 20-30 fps, but yeah, needs more optimization :)

Also found this gem:

Terasology-160521222050-1152x720.jpg


Very nice overall though!
 

Cpt. Crispy Crunchy

Member
Contributor
Thanks for testing @Cervator ! :)
I did what I could to improve performance and found quite some things I handled badly in the first version. Also I made the lake size a bit smaller.
It should run smoother now, though I added lava lakes additionally (on surface with a very small chance / in the deeps with a higher chance the deeper it gets) which slows things a bit down again (still faster as the first version I think).
To test only the lake performance, there is now a checkbox at worldgen details to disable lava lakes.

Concerning the ded GPU: I found it a lot faster with the windows version and my dedicated gpu at world generation. Though that will be probably only rendering which makes the difference.
 

manu3d

Active Member
Contributor
Architecture
@Cervator: is intensive CPU usage only during world generation and chunk loading or also when everything settles?
 

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
Just during chunk generation I believe. Very similar to TTA's very CPU-intensive world gen :)

On a system that has trouble keeping up with rendering it would probably be worse. Here that was doing fine so the CPU could focus more exclusively on world gen. Or something like that.

Lava lakes woo!
 
Top