How you handle large amounts of grass in your scenes?

Hi,

I was wondering how are you dealing with large amount of grass in your scenes? So far I could hide the “second plan” easly to cheat that there is a 3d grass there and put the best 3D grass in the foreground. It didn’t take that much time and memory.

However now I am dealing with my diploma. I have the terrain with huge amount of dunes. I am prepearing now just the terrain, without the building. So for example this results almost made my Mac explode. It took 40-50GB of storage space to handle it.

I tried now pure C4D’s hair. But this simple hill object with hair (simplyfied one!) is taking 15GB of storage.

The reason for having it is that there will be a lot of renderings from many sides and also the grass will be in the reflection of the glass.

What is you method of dealing with it?

I am not a CGI expert, but coming from computer games industry, have you tried something like instancing + LODs?

I mean I am using instances with MoGraph. But that amount of grass is even too much for it :wink:

Well I am quite happy with the effects that Carbon Scatter gives - it has its downfalls (eg. you can’t have 2 scenes with CS ecosystems opened at the same time), but in terms of efficiency I know no better scattering solution. It’s easy and fast to set up, too, at least as long as you don’t go for super fancy results which may require using the node editor. Get the trial and see if it works for you. Surface Spread is nice, too - C4D integration is better than CS in my opinion, but it doesn’t handle huge amounts of instances very well.

Cheers

But does it handle instants better than MoGraph’s Cloner? Again, imagine having 2 000 000 000 copies of grass.

From my experience… SurfaceSpread and MoGraph can hardly handle really big scenes. Yes, in theory you can shoot a ton of instanced stuff at them and after a few days you’ll get your render but on any kind of production job that is impossible to work with.

I have, in practice, used MoGraph the most. I don’t often do large scale projects but I do exteriors yeah - think houses with backyards with a small view over to the neighbours. In that case MoGraph is OK. It takes like 30 seconds to calculate all the grass but its workable.

SurfaceSpread to me performs a little worse than MoGraph. It has A LOT of useful features but the preparation times are higher than MoGraph.

So, the only thing I heard of that works with insane amounts of grass is Carbon Scatter - with all its limitation it appears to be quite useful in those cases. I heard people can pulloff some really nice amounts of clones with short preparation times.

I try to help myself sometimes by doing large patches of grass so that there is a lesser amount of clones to scatter. To me the biggest problems are the preparation times before the render stars and secondly, the super slow viewport.

To get around the second one I normally unhide, disable MoGraph / SurfaceSpread when I am doing something else than grass. You also need to have it set to not be visible in the viewport otherwise you are in for some painful times :smiley:

Also, it helps doing on thing at a time while working on the scene :smiley:

It is mostly about the rendering. I am always turning on preview of the grass/trees. But often I had like 80gigs of hard drive taken. I am just afraid that this time it will the same and the application will run out of memory. Especially when the big renderings might be around at least 6000px on width. It is a shame that trial version of Carbon Scatter has a limit of 1000 instances -.-. That is nothing…

I believe the number of instances in trial Carbon Scatter is unlimited - the limit that you mentioned refers to conversion to native instances (which is a neat feature, but not an essential one).

Cheers

Try this http://www.3dquakers.com/2015/09/08/forester-for-cinema-4d-multicloner-distribution-patterns-3/

and again someone was faster then me :tongue:

i always use forresters multicloner to scatter gazillions of clones (render instances or even better corona proxies) over a surface, the point mode keeps the viewport empty and fast and for rendering different camera angles, you just have to activate backface culling and limitation to camera cone.. that way you only have the objects scattered where the camera can actually see them ..

Okay, so I gave a chance (and money) for Multicloner. Unfortunately this is what I still get:

And the scene is not that heavy :/.

One idea you could try is to just use high poly clones up close to the camera and reduce the quality of the clones that are further away from the camera?

The tutorial videos for the multicloner are worth a look:

I was thinking about this method before but the problem is that I would need low poly grass. And actually even if one blade has 3 polygons, that is already a lot when scattered throughout the scene.

I’ve had good results with this one:

*edited

I think the issue is that C4D itself struggles to handle millions of objects due to the way it has been coded. For what I can see Max can handle a lot more. I’ve been down this road a long time ago and basically given up trying to create convincing scattered grass over larger surfaces. It will just eat your RAM and you can spend hours struggling over it and generating it when you can do it much quicker in photoshop. Im hoping Coronas hair solution slated for 1.7 in the MAX version will help us create decent grass.

I believe Carbon Scatter works slightly differently but I wouldnt recommend it as it is a quirky work flow and not as integrated. Forrester is as good as SS but you also get the tree and plant generators thrown in and they are pretty powerful once you get to grips with them.

C4D R19 will add multithread into Mograph (cloner).

Is that a confirmed fact, how do you know? Awesome if it is. Hope the third party plugin devs can access the same multithreading code for their scatter engines. That will make a massive difference.

No, I doubt there will be multithreaded Cloning. :wink:
@Marian: Even if you might know what comes, that info is not meant for public right now.

Ok,Im propably too much optimist…Not sure that it will really come in this release, but there are some signs out there that it might be true in near future. Look for example at https://youtu.be/xGj57citzUc?t=14m55s or on their blog about rewriting their old code for newone https://www.maxon.net/en-us/news/maxon-blog/article/foundations-for-the-future/.