Procedurally generated foliage distribution

BlitzMax Forums/BlitzMax Programming/Procedurally generated foliage distribution

The forum is locked. These are the original blitzbasic.com forums, kept so they can still be read. No new topics, replies or edits can be made here. To join in, head over to the Blitz3D+ forums.

I was reading about deco layers in the Unreal engine:
http://udn.epicgames.com/Two/CreatingDecoLayers

It looks like they use a "density map" to indicate where the foliage is. This is better than storing 10,000 instances of a mesh on the terrain. Presumably, you just input the player position on the terrain and generate a somewhat random distribution of foliage around them.

Any ideas on how I can procedurally a circle of foliage positions around the player? The foliage would be the same if the player left and came back, but I want to do this without storing 10,000 instances of foliage...I just want to be able to input a random seed or something, and have all the foliage instances get generated.

I supposed you could treat each pixel as a discreet area, and input the x and y pixel coordinates as the random seed, then use that to generate some number of foliage instances distributed across the area of that pixel...but I have a feeling there is a better way to do this.

Also, I'll need to z-sort the instances, so keep that in mind...maybe there is a way of generating the positions "radially"?