3
$\begingroup$

I'm using a hair particle system to make a forest with the density determined by a separate UV mapped texture. When I set it up it looks correct:

correct particle system

But when I render it seems to remove most the particles and only leaves some blocks behind. I have no idea how to fix this:

faulty result

Here is the blend file: https://mega.co.nz/#!8E5VkDaJ!PsExHPP7LQNxk8Ry7xco9B3iO1xKrDhELS6wEszjM_Q

| improve this question | | | | |
$\endgroup$
  • $\begingroup$ No child particles. Don't know what details I could give, so here is the blend file: mega.co.nz/… $\endgroup$ – cybrbeast Dec 3 '14 at 16:32
  • $\begingroup$ Have you tried use modifier stack? $\endgroup$ – PGmath Dec 3 '14 at 16:56
  • $\begingroup$ This seems a bug report. The viewport render looks fine and then as soon as I do a Camera render; the Viewport render breaks and now starts doing the same thing as the camera render. When I reload the scene, the Viewport render is fine again until I do a camera render-> then both are broken again. $\endgroup$ – MarcClintDion Dec 4 '14 at 8:35
  • $\begingroup$ The subsurf modifier is closely related the erratic behavior. Not sure why though. Try enabling and disabling it. Also try changing the viewport subsurf levels. They all change the layout of the trees. $\endgroup$ – MarcClintDion Dec 4 '14 at 8:43
  • $\begingroup$ Yeah it's weird. Luckily the answer by TheAdamGaskins provides a superior work around. $\endgroup$ – cybrbeast Dec 4 '14 at 8:57
8
$\begingroup$

Just quick side note, I'm a huge fan of this style of art. You've done a really good job on this, and I've enjoyed looking around your .blend and learning a little bit about how you did it :)

You can tell something is immediately not right if you jiggle the Display percentage, under particle settings, a little. It will cause a lot of trees to disappear like when you perform a render.

enter image description here

Blender seems to be a little confused, and this might be a bug.

Anyway, the underlying issue is that you're using a texture to change the density. If this is your emitter:

enter image description here

This is your mask texture:

enter image description here

Then when applied, it simply deletes the trees outside the mask:

enter image description here

And that's how texture density masks work. You can prove this by setting the particle count to a small number like 10. If you count up all the trees you see, it will definitely be less than 10, if there are any at all.

But what you want is for it to constrain all the trees to your mask. The way to do that is with vertex groups.

Step 1: Remove the texture mask.

Under particle settings, click here:

enter image description here

Scroll down, set Density to 0 and uncheck it:

enter image description here

At this point, you should see all 40,000 trees. You may want to go ahead and lessen the emitter amount, because your computer will probably be running slow. Also, be sure to check Use Modifier Stack.

enter image description here

Step 2: Create the vertex group

Now one way to create the vertex group would be to use weight painting, but that can be a pain, and you already have a texture you want to use, so we'll convert that texture into a vertex group.

First, create a new vertex group, and call it something you'll be able to remember.

enter image description here

Go to your particle settings, and assign the new vertex group to density.

enter image description here

Nothing should happen just yet. Almost there. Add a new Vertex Weight Edit modifier:

enter image description here

Use these magic settings:

enter image description here

And Voila!

Click for full size

Note: I turned down the emitter count to about 3,000 in the photo to decrease render times.

| improve this answer | | | | |
$\endgroup$
  • $\begingroup$ It seems a bit complex but it's nice and clear answer! $\endgroup$ – TARDIS Maker Dec 3 '14 at 18:26
  • 1
    $\begingroup$ @TARDISMaker It's not as complicated as it looks, I promise :) Blender is just confusing sometimes. For example, it doesn't make sense that the vertex group density works different from the texture density. They're called the same thing, so you would think they would work the same way. $\endgroup$ – Entity Dec 3 '14 at 18:30
  • $\begingroup$ Thank you so much! This technique will also be handy for my future particle systems. I always used that density thing and did indeed notice I needed way more particles than should be necessary. Also thanks for the compliment on the style! $\endgroup$ – cybrbeast Dec 4 '14 at 8:43
  • 1
    $\begingroup$ You said you liked the style, here you can see the resulting animation: youtube.com/watch?v=Ti724qA5XEQ I would have liked to do more, but it was a real rush job as I only had three days. Can make some last small adjustments on monday, but that's it. It's for an item which explains the use of air cushions to reduce earthquake effects. Thanks again for the help. $\endgroup$ – cybrbeast Dec 6 '14 at 11:26
  • $\begingroup$ Sorry forgot to mark the question as answered. Thanks again. $\endgroup$ – cybrbeast Jan 22 '15 at 10:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.