Time for the usual weekly development news. This week I worked some more on the water erosion modifier.
I started by fixing the randomness of the rain. Every iteration 100 drops fall at random places in the terrain. The problem was that I wasn’t keeping the seeds for the random values around so everytime a setting changed it would also change the entire erosion simulation. That was an easy fix by setting the random seeds to the iteration number.
Also, rain drops now fall around as a circle with a falloff instead of a square. This has made the effect a bit more realistic (IMHO) but it has a small cost in performance. However making better terrains is more important than absolute speed for now. Specially since there’s so much to optimize yet.
The UI is a lot simpler now with only four main settings.
Springs are a constant source of water, unlike rain which falls randomly. They are used to carve canyons or rivers. I’ve added all the functionality but I’m still having some issues with this. I always end up adding too much water in the center of the spring which creates spikes. It also needs more time than rain to carve the terrain.
The springs UI works like the new Terraces modifier, you can add them by increasing the springs counter.
Yes, manually writing coordinates sucks I know. But it’s a first step torwards an interactive mode. Half the work is done to add that in the next version.
Next week is the big Blender 2.80 release. I’ll be busy releasing the next version of Mirage (3.3) and the huge Render+ 2.0 update. Hopefully I will still have some time for Rusting. I’m also working on a new Map2D datatype that will make my life so much easier. It will also improve performance a little bit.
Other things left to do:
- Find a way to prevent spikes in springs
- Make the base terrain algorithm better and easier to use
- Generate a large heightmap to use as a vector displacement, then downscale for the mesh
- Export 16-bit RAW files for heightmaps
- Figure out how to make terrains seamless again
- Probably a ton of other things I broke 🙂
If you want a seat in the first row when the next version of Mirage comes out you can check it out on the BlenderMarket.