population creation very slow on alpine fractal terrain?

Started by JasonA71, September 07, 2015, 07:01:12 AM

Previous topic - Next topic

JasonA71

Is it normal or expected that creating populations on the alpine fractal terrain is extremely slow? 

I've been using DEM alot lately, and Ive noticed huge difference (ie orders of magnitude) on how low it takes terragen to create  a population on each surface type. 

On a DEM surface, even with fractal displacement shaders, creating a population is very fast.  But when I introduce an Alpine Fractal, the population creation time goes through the roof.  In one scene, where I use an alpine fractal for 'beyond the DEM tile' surface topology, the difference is hours vs minutes on creating the same set of populations just by turning the fractal off.

I really need procedural terrain beyond my dem, but this perforance hit is a complete show stopper... anyone have thoughts on hwo to work around this?

thanks!
Jason

Oshyan

Populating on an Alpine Shader will definitely be slower. It's a more complex and demanding shader to calculate than, say, a Power Fractal (generally speaking), or a DEM (which is just a simple height value lookup in a 2D raster data set). The Populator has to sample the shader it's sitting on in order to find the position for each instance, so the simpler the underlying shader, the faster populating will be. I don't know exactly how much slower it would be than a DEM, but I would guess up to 10x, unfortunately. That's just the nature of procedural vs. pre-calculated raster terrain - a procedural terrain literally involves a "procedure" to generate each point, whereas DEMs and other basic heightfields are static, it's just like determining a pixel value in an image you've loaded.

You can consider using other procedural shaders in place of the Alpine Shader, or if possible in your scene you could generate a heightfield *from* the alpine shader *just* in the section of terrain where you need to populate (unless you're populating to the horizon), then use that heightfield for the populator, and use the normal Alpine Terrain for the rest of the background mountains.

- Oshyan