How to speed up mograph?

Become a member of the CGSociety

Connect, Share, and Learn with our Large Growing CG Art Community. It's Free!

REPLY TO THREAD
 
Thread Tools Display Modes
  05 May 2018
How to speed up mograph?

Hi there,

I have a scene with about 40 cloners, each of them cloning a group of three objects onto surfaces.
I'm using Octane and the IPR works, although it takes a while before it starts.
The big issue comes when I need to render. C4D's picture viewer pops up and remains empty for about 8-10min.
I don't know whether the render would be done or not at some point as I didn't wait longer, I need the scene to be rendered faster than that.
Other than the number of clones, the scene is pretty simple. A few lights, and basic octane materials.
I tried with Redshift and the result is quite the same, picture viewer doesn't deliver.
Is there anything I can do in order to optimize the scene?
The box I'm using is quite new, AMD ryzentheradripper, 32GB ram, 2 GTF 1080ti and samsung960.
 
  05 May 2018
Is your timeline marker at Frame 0, or is it much farther down - at frame 100 or 200? When you use the picture viewer, every frame leading up to the frame you're rendering needs to be "prepared" before anything begins rendering - and this often takes time, especially if you have mograph simulations in the scene.
 
  05 May 2018
Thank you, Luke,

In my initial tests, I was rendering frame 0, and I've got the same result.
It's quite frustrating, especially considering the IPR works but the final render doesn't.

Edit: also, I was trying to figure out where to find some info about the number of clones I have in the scene, but I can't seem to find anything under the HUD.
 
  05 May 2018
Have you tried rendering the same scene with C4D's standard renderer (and with generic materials instead of Octane mats)? It'd help to eliminate variables, and see if this was an Octane issue or a C4D one.

If there's a ton of clones in scene (over 5,000) that could very well be the issue as well - in that its just taking a while to prepare. C4D isn't the best with large amounts of individual objects.
 
  05 May 2018
Originally Posted by LukeLetellier: Have you tried rendering the same scene with C4D's standard renderer (and with generic materials instead of Octane mats)? It'd help to eliminate variables, and see if this was an Octane issue or a C4D one.

If there's a ton of clones in scene (over 5,000) that could very well be the issue as well - in that its just taking a while to prepare. C4D isn't the best with large amounts of individual objects.

Thanks again for your hints, Luke,

Your last sentence most likely explains what's happening.
Each of this cloner (like I said, it's 40 cloners total) has a minimum of 1000, some 12000 and a few 24000 clones.
I thought C4D could handle it. I should probably switch to Xparticles.

Edit: I still haven't found a way to get the information of how many clones I have in my scene, but even assuming it's roughly 250,000 is that really too much?

Last edited by dsp_418 : 05 May 2018 at 01:02 AM.
 
  05 May 2018
Originally Posted by dsp_418: Edit: I still haven't found a way to get the information of how many clones I have in my scene, but even assuming it's roughly 250,000 is that really too much?

Well there's your problem. That's a ton for C4D, and its an issue that a lot of C4D users want Maxon to improve. Is there anyway you could make those cloners editable and merge the clones into a single mesh? Not sure if your scene will allow for that. It would definitely improve speed.

Just to confirm - is render instances turned on for all the cloners?
 
  05 May 2018
Originally Posted by LukeLetellier: Well there's your problem. That's a ton for C4D, and its an issue that a lot of C4D users want Maxon to improve. Is there anyway you could make those cloners editable and merge the clones into a single mesh? Not sure if your scene will allow for that. It would definitely improve speed.

Just to confirm - is render instances turned on for all the cloners?

Yes, render instances is on.
At this stage of the work, I don't know yet whether we need to keep the cloner or if we can make them editable.
What I ended up doing is using takes, for now it's kind of OK.

That said, I definitely see why many users requested improvement in this area.
I really hope Maxon will come up with a solution, either a way for C4D to handle a bigger amount of clones or a workaround to allow the user to get the render done.

The other option is X-Particles, which could be great for this. Due to the deadline, I couldn't spend too much time playing with it. I can easily get the setup ready to mimic what I have done with Mograph, but one thing I've got stuck in, is the nice falloff effect I have with mographeffectors. The falloff in XP doesn't seem to give me the same results.

Thanks again for helping to figure this out.
 
  05 May 2018
Yeah, it'd be amazing to work relatively fluidly with 250K objects; that's why a lot of people use xParticles or have simply migrated to Houdini (or use both, as I'm trying to do).

Regarding the falloff - If you shared a sample scene, someone on the forum may be able to help out with that.
 
  05 May 2018
Originally Posted by dsp_418: Yes, render instances is on.
At this stage of the work, I don't know yet whether we need to keep the cloner or if we can make them editable.
What I ended up doing is using takes, for now it's kind of OK.

That said, I definitely see why many users requested improvement in this area.
I really hope Maxon will come up with a solution, either a way for C4D to handle a bigger amount of clones or a workaround to allow the user to get the render done.

The other option is X-Particles, which could be great for this. Due to the deadline, I couldn't spend too much time playing with it. I can easily get the setup ready to mimic what I have done with Mograph, but one thing I've got stuck in, is the nice falloff effect I have with mographeffectors. The falloff in XP doesn't seem to give me the same results.

Thanks again for helping to figure this out.
If you are using Octane then you should try Octane Scatter rather than a cloner. It works much the same way but it can easily handle hundreds of thousands, even over a million objects.

Octane Scatter = fast viewport + fast render. And you can render things you flat can't render any other way.

If you are putting a cloner inside a cloner...I don't know what you'll get...you might need to convert child object.
__________________
C4D R19 Studio, MODO 902, VRAY, Octane, Cycles. PC/Mac.

Last edited by IceCaveMan : 05 May 2018 at 06:04 AM.
 
  05 May 2018
you could try to cache the cloners via mograph cache tag.
 
  05 May 2018
To give you a sense of scale. 50,000 objects will slow c4d down. 100,000 will be the realistic limit of what is bearable.

One thing you can do, simplify the object as much as possible. eg if you have a cube object, make it editable; that will be a dozen settings c4d no longer needs to check a quarter of a million times. If the objects have children, try merging them. Dump any unused uvw tags etc.
__________________
Matthew O'Neill
www.3dfluff.com
 
  05 May 2018
This is one of those areas where GPU accelerated processing would probably work wonders.

You have around 7,000 CUDA cores in your 1080 TI GPUs combined that - in your case - would each only have to calculate the positions and/or behavior of about 35 objects each.

Pushing 250,000 polygon objects through a general purpose 8, 12 or 16 Core CPU will slow things down to a crawl. A lot also depends on how Mograph is evaluated on multiple cores, nesting of the cloners and so on.

Unless you can find a really efficient alternative scattering/instancing solution as others have suggested, or can get the complexity of the cloned objects down somehow, the slowdown you are seeing is probably unavoidable.
 
  05 May 2018
Thank you all for your valuable help!

I have tried a couple of things.
As Matthew suggested, I have made objects editable and also, wherever I could, connected them into one object. It didn't do the trick.
By the way, if 100,000 can be considered the limit, I'm very well beyond that.

I haven't tried the cache yet.

Octane scatter seems fast, but I didn't have the time to rebuild the whole scene and see if the scatter holds up.

At the moment I need the renders done and the takes are working great: it took a little time to set up everything, but other than that it's pretty straightforward (although I haven't checked yet how to render only one or two takes if I need to - hope there's a way to do it).
 
  05 May 2018
Originally Posted by dsp_418: (although I haven't checked yet how to render only one or two takes if I need to - hope there's a way to do it.



See the orange check boxes? Use those to select the takes you want to render, then click Render --> Render Marked Takes (or Team Render Marked Takes, or Add Marked Takes to the Render Queue, etc, etc...). Just to be sure add the appropriate $tokens to your save directories to make sure each take doesn't overwrite the previous one (In some situations they'll rename the files for you, but it's a rather obnoxious numbering system) .
 
  05 May 2018
Thank you, Luke.

Actually, today I had to bake some more renders and I figured that out
I must say, the take system is quite handy!

Thanks again for helping.
 
reply share thread



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
CGSociety
Society of Digital Artists
www.cgsociety.org

Powered by vBulletin
Copyright 2000 - 2006,
Jelsoft Enterprises Ltd.
Minimize Ads
Forum Jump
Miscellaneous

All times are GMT. The time now is 11:28 PM.


Powered by vBulletin
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.