Jump to content

- - - - -

Forest rendering

Blender rendering forest Goblinson Crusoe
4: Adsense

I've been on an art push lately. Today, I was fiddling around with the idea of using Blender's particle functionality to create large forests. It actually worked pretty well. The idea is that you create a terrain and attach a particle system to it. You can paint the terrain with vertex weights to control the distribution of trees. The particle system is set up as Hair, and set to use a tree mesh object as the particle primitive. By doing so, the forest takes advantage of instancing to keep memory usage low. I did a one-off, throwaway render as a test:

Posted Image

Using a quick terrain build using sculpt tools, painted with vertex weights and textured with a throwaway ground texture. The tree is one of the tree models from Goblinson Crusoe. I set the particle system to spawn 6000 particles (although a few trees are off screen). The tree is somewhere around 11k polys, but due to the instancing the memory usage never went over 240MB. There was plenty of RAM to spare. Rendering time was about 5 min. I think it looks pretty good for a one-off test.

Blender sure has come a long, long way from when I first picked it up years ago.

Edit: Changed some settings and re-rendered with 12,000 trees. 267MB max memory usage.

Posted Image
I could see being able to render some pretty big forests. I'm going to bump it up to some crazy number and leave it rendering while I go to bed and see what happens.

Edit 2:

Bumped it up to 50,000 trees, and reduced the tree size just a tad. It rendered something like 1.15 billion faces.

Posted Image

Max memory usage was 307MB, and it took about 20 minutes. My computer is no powerhouse, but 20 min. isn't bad. I could of course improve it drastically by using multiple particle systems with further away zones using a lower-detail tree.

While I was waiting for this to render I did some googling. Turns out the newest versions of Blender have an experimental new rendered called the Cycles renderer, which is based upon Cuda/OpenCL (depending on your card). I understand the OpenCL renderer is still crappy, but I saw a thread by a guy that did a landscape in a similar fashion to what I'm doing here, with 18 billion total faces. Renders were anywhere in the range of 5 min to 45 min, depending on who was doing the testing. Cycles support is still pretty sketchy, and the renderer is still very experimental, but I could see that being pretty dang awesome.

Like I said, Blender sure has come a loooooong way.

Jul 31 2012 06:14 PM
Looking good :)
Jul 31 2012 06:25 PM
Very cool and looks awesome!!! Good work!!! Keep it up!
Jul 31 2012 11:28 PM
Pretty cool .
Aug 01 2012 08:27 AM
Aug 01 2012 11:06 AM
Very slick JT
Aug 02 2012 02:01 AM
Nice and yes, I had a look at Blender recently and it is almost unrecognisable from when I last grappled with it.

Note: GameDev.net moderates comments.