bender scatter
So I know about particles and generally how you would scatter objects in blender today...
However much more convenient for archviz people is to use dedicated tools like forestpack or multiscatter.
The tool doesn't really have to be that advanced and in many cases even something like corona has (it's own scattering tool) helps greatly.
The main point here is ability to quickly add and remove objects to distribute(or distribute onto).
The way it could work in blender could be in a form of modifier. Where the object the modifier is applied to is the object that will be covered with particles.
It would contain list of objects it needs to cover itself with and options to control transformations and self colision etc...
The bigest feature in it should be the ability to cut off parts of geometry, nearing the edge of area the objects are distributed on. I guess this would have to be handled by cycles at rendertime. Screenshot is from forestpack manual.
11 Comments
you can do what I see in the screenshot with booleans: set a boolean modifier before the particle's, and enable "Use modifier stack" in the particle's properties
You can use Animation Nodes to scatter things, I´ll do a tutorial in this matter, additionally, to avoid the "point mode" problem you can use the shader mentioned in this thread:
blender.community/c/rightclickselect/8zbbbc/
I have not tried it yet, but I think it may work :)
@Juan Gea Rodriguez: Well the masking trick could be nice for visibility, but how it would handle shadows and reflections etc... On top of that to properly work it would still have to "hide" all connected geometry/islands or elements. Somehow I think just scanning for Z axis overlapping geometry and deleting it in rendertime would be faster. But, I'm not a programmer so what do I know :) any help is help for now, so thanks!
@000kitbash: The thing is that for things like grass you use instaced geometry patches, and those patches cannot be geometrically changed, that´s the reason why the hiding has to be done with the shader, regarding reflections and such things, since the "hiding" shader is a transparent one completely transparent it should not interfere. :)
What would the interface for this look like in Blender? Have you tried the various scattering add-ons that are already available? Would it be best to simply improve those or do you think that this absolutely needs to be in the modifier stack?
@Jason van Gumster: Well maybe streamlining adding and removing objects to and from particle system with the ability to cut off elements/geometry that is overlapping the scattered region would be good enough. Coming from max, even if there is a particle system, tools like multiscatter or forestpack are simply much faster to use for those purposes.
@000kitbash: Um... I don't think you actually answered any of the questions I asked.
@Jason van Gumster: There is no scattering addon/tool for blender that would work in the same fashion as multiscatter, forest pack, or cscatter(corona renderer own scatterer). From what I saw it's all paint in some particles scatterer that's not useful if you need large area. And finaly, maybe someone could make an addon like that I don't know... All I'm saying is that, since those tools are very popular and useful in other software it might benefit blender too.
@000kitbash: But how would it look in Blender? I'm looking for mock-ups here that align with Blender's interface and how it does things.
@Jason van Gumster: I see now. Will do some once I have more time.
But boolean would slice/cut the geometry. What's happening in the picture is that the whole element (not object but connected geometry) is being removed keeping everything clean. So that if you use grass patches, the patch isn't cut but individual blades get removed if they overlap.