Mograph - efficient way to work?


#1

hi, I’m new to C4D… I could be approaching this the wrong way… please bear with me.

I’m trying to build a virus using Mograph. I have a low poly base mesh to clone spheres onto it. In order to cover the base mesh… I need approx 7k worth of instances… the scene becomes extremely slow.

  • The base mesh has an animated displacement for subtle motion.
  • I’m using a primitive sphere as a membrane layer.
  • I’m using a Push Apart Effector to prevent overlap.

At 2k, they work fine. At 7k, it’s unbearable…

Please note my workstation is up to par… i9-9900k - RTX 2070 - 64gb of RAM

How does one work with such high instant counts?

What’s the approach? Whats a proper workflow?

Thanks for the time?


#2

A couple of things to suggest:
Cloner: In Cloner Object under Object tab, try changing Instance Mode to Multi-Instance. As long as you are using basic cloning of primitives, this should be fine.
Bash mesh: You may also get speed improvement by right-clicking the animated base and choose Bake as Alembic. Disable original and drag the Alembic version into the Cloner object slot.


#3

The push apart effector is the enemy.

With multi-instance you can change your viewport to point view / matrix also. ( there is also the option in the mograph menu to view as matrix object)

Since you’re using primitives - you could change the amount segments right down (object tab of sphere). And render a higher segment count.

What I would do is animate it how you want it to look at a bearable clone count. Then change it to a higher clone count and use a mograph cache tag. - That should work - works on my computer with matrix and cache.

My PC is less powerful than yours.
40FPS


#4

Interesting… Thanks for the insight. :grinning:

I’m wondering if its an open GL thing or the Mograph system?

Could you do something like this with X-Particles without the workaround? Is it more responsive?

I’m asking because Softimage has a system called ICE and it was extremely responsive… 30k worth of particles no problem and that software is 6-8 years old.

I’m sure I’ll find easier ways of doing things as my experience matures…


#5

C4D’s ability to handle multiple objects has been a festering sore for a decade and the brains trust at Maxon are/or have been incapable of fixing it.

The sad truth is XSI is still far and away better optimised than C4D at manipulating multiple objects. ICE is highly multi-threaded but much of C4D is still single threaded but the main issue is the object management system, it doesn’t take much to cause C4D’s playback to drop to 1-2 fps or even drop into bounding box mode.

C4D’s archaic architecture is older than XSI’s and despite Maxon’s claims of updating the core there’s precious little evidence that this has had a positive impact on performance. I got so fed up with the performance I learned Houdini.

One of the other issues with C4D is that even if you cache your mograph animations or sims it really doesn’t improve viewport playback, in Houdini I can cache huge scenes and they’ll playback at the project fps rate, so it’s easy to check timings with the viewport without having to constantly export a playblast for timings.

You can’t even throw hardware at C4D as it performs as badly on a laptop as it does on a 32 core dual GPU workstation.

If you’re doing a lot of straight particle work then XParticles is a much better option and you can also do a lot of Cloner style mograph work with it. XP is actually multi-threaded and while limited by C4D’s architecture it handles much denser particle sims than C4D’s native tools.

Some workarounds to bear in mind.

You can use the Cloner to Matrix feature to speed up playback of mograph cloners. It doesn’t work with dynamics though for obvious reasons.

Keep cloner count as low as possible.

Use XParticles for high density scattering tasks.

Exporting an Alembic of your scene and loading into Houdini Apprentice will give you better playback of your scene. Begin learning Houdini…The scene caching tools alone make it easy to check animation timings.


#6

Object handling in C4D is extremely outdated.
I’m waiting over 10 years for it to change.
It’ll probably never do, even the new core did nothing to it.


#7

Thank you for that!! That’s extremely disappointing to hear… I’m in the midst of learning cd4, but now a little timid to invest time in a software that has this kind of trouble. :disappointed_relieved: how sad

thank you kindly for the breakdown.


#8

It is sad, had Maxon kept C4D current with features and fixed the object handling performance C4D would’ve been the natural successor to XSI and would’ve more XSI users and the many users and studios who have now embraced Houdini would still be contented C4D users. A massive own goal by all accounts