This week(s) in Mirage #7

Welcome to anoth­er pro­duc­tive week for Mirage! This time I focused on fix­ing seam­less ter­rains. Seamless ter­rains have match­ing edges and can be tiled and repeat­ed. I had this work­ing a while ago at the noise gen­er­a­tion lev­el. The Perlin func­tion I’m using is peri­od­ic, so it’s pos­si­ble to grab coor­di­nates out­side of the ter­rain and inter­po­late

This week(s) in Mirage #6

Whoa, how long has it been? Wasn’t I sup­posed to do this every week? These last few weeks have been crazy with work, life, the release of Blender 2.80, Mirage 3.2 and Render+ 2. But that’s all done now. Time to get back on the horse! The good news is that I still man­aged to put some

Render+ 2 released

After a long time Render+ 2 is final­ly out. I start­ed work­ing on this ver­sion on September last year, and went into beta around January until now. But the plan­ning for these changes goes back years. I’m real­ly hap­py with this release, the code base and the whole sys­tem have tak­en a leap for­ward in qual­i­ty. These changes pave

Mirage 3.3 out for Blender 2.80

New Blender, new Mirage. Or so I’d like to say. This is bor­ing release actu­al­ly. The only news is com­pat­i­bil­i­ty with Blender 2.80. Note that from this point onward, Mirage will require at least Blender 2.80. All the new fea­tures I’ve been blog­ging about will come in the next ver­sion: 3.4. Join the mail­ing list

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 mod­i­fi­er. 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

This week(s) in Mirage #4

These last two weeks have been pret­ty busy, both in work/life and Mirage. On the mirage side, I port­ed the last mod­i­fi­er: flu­vial ero­sion. I spent the first week writ­ing the ini­tial imple­men­ta­tion and this week mak­ing it actu­al­ly work. Many moons ago I wrote a pure Python imple­men­ta­tion of the vir­tu­al pipes hydraulic ero­sion algo­rithm. It was crazy

This week in Mirage #3

Thermal ero­sion is now ful­ly port­ed! There isn’t a very notice­able dif­fer­ence this time around, I think it looks a bit bet­ter though (but maybe I’m biased!). I also changed the set­ting names to make them eas­i­er to under­stand: Repose Angle is now Threshold Iterations is now Time They are also short­er too, so they work nice­ly in

This week in Mirage #2

This week went bet­ter than expect­ed in many ways. I end­ed up get­ting the mod­i­fi­er work done fair­ly quick­ly and man­aged to squeeze a small refac­tor, break­ing a ~1300 lines file into 3 files. I still have som­re more refac­tor­ing to do to make things more flex­i­ble. Hopefully I can get to that too in the fol­low­ing weeks. Porting went

This week in mirage

In this series of posts I’m going to talk about the new hot stuff I’m work­ing on for Mirage. This will be my first time doing a devlog, so bear with me 🙂 Our first stop is what I’ve doing for the past few months: the Rust port. Port to Rust Rust is a pro­gram­ming lan­guage focus­ing