This week in Mirage #5

Time for the usu­al week­ly devel­op­ment news. This week I worked some more on the water ero­sion modifier.

I start­ed by fix­ing the ran­dom­ness of the rain. Every iter­a­tion 100 drops fall at ran­dom places in the ter­rain. The prob­lem was that I was­n’t keep­ing the seeds for the ran­dom val­ues around so every­time a set­ting changed it would also change the entire ero­sion sim­u­la­tion. That was an easy fix by set­ting the ran­dom seeds to the iter­a­tion number.

Also, rain drops now fall around as a cir­cle with a falloff instead of a square. This has made the effect a bit more real­is­tic (IMHO) but it has a small cost in per­for­mance. However mak­ing bet­ter ter­rains is more impor­tant than absolute speed for now. Specially since there’s so much to opti­mize yet.

The UI is a lot sim­pler now with only four main settings.

Springs

Springs are a con­stant source of water, unlike rain which falls ran­dom­ly. They are used to carve canyons or rivers. I’ve added all the func­tion­al­i­ty but I’m still hav­ing some issues with this. I always end up adding too much water in the cen­ter of the spring which cre­ates spikes. It also needs more time than rain to carve the terrain.

The springs UI works like the new Terraces mod­i­fi­er, you can add them by increas­ing the springs counter.

Yes, man­u­al­ly writ­ing coor­di­nates sucks I know. But it’s a first step tor­wards an inter­ac­tive mode. Half the work is done to add that in the next version.

Next week

Next week is the big Blender 2.80 release. I’ll be busy releas­ing the next ver­sion of Mirage (3.3) and the huge Render+ 2.0 update. Hopefully I will still have some time for Rusting. I’m also work­ing on a new Map2D datatype that will make my life so much eas­i­er. It will also improve per­for­mance a lit­tle bit.

Other things left to do:

  • Find a way to pre­vent spikes in springs
  • Make the base ter­rain algo­rithm bet­ter and eas­i­er to use
  • Generate a large heightmap to use as a vec­tor dis­place­ment, then down­scale for the mesh
  • Export 16-bit RAW files for heightmaps
  • Figure out how to make ter­rains seam­less again
  • Probably a ton of oth­er things I broke 🙂

If you want a seat in the first row when the next ver­sion of Mirage comes out you can check it out on the BlenderMarket.

All the posts you can read
VariousAddon, Blender, BlenderMarket, Development, Mirage, Python21.10.2020