A new version of Cineversity has been launched. This legacy site and its tutorials will remain accessible for a limited transition period

Visit the New Cineversity
   
 
break on collision, for a dynamics object
Posted: 06 March 2017 10:11 AM   [ Ignore ]  
Total Posts:  108
Joined  2015-11-30

Say you have a sphere, using voronoi fracture, or mograph fracture object or cloner, you want this sphere to roll around as one object, say it rolls off the edge of a table or is thrown at something, is there any practical way to make it break apart so the segments inherit the force of the larger object they were making up?

My best attempt so far was to set the dynamics tag individual elements to off, then in xpresso, use the dynamics body state object to get the torque of the generator, compare torque to threshold, feed that into flip flop node, feed that into the dynamics tag individual elements parameter, so it gets set to “all” and stays that way after torque threshold has been reached.
This works, in the sense that it does break after threshold breach, but the segments do not inherit the prior motion of the object (or at least, they do it too late, after the collision) so they break apart extremely unrealistically.

https://www.dropbox.com/s/bw1ctmxqdxle7pg/fractureDebug.c4d?dl=0

Using the collision node rather than threshold via the dynamics body state object seems to work a little better..

It seems that both approaches fail practically because the collision trigger or velocity is registered on the frame after it occurs, for an accurate breakup it would need to trigger at least one “frame”/unit of time prior to the detected collision, or more practically, the inherited velocity of the fragments/clones should be taken from a point in time prior collision.

In certain situations, for example when an object is falling straight to the floor, this delay is irrelevant, but if you are colliding with curved surfaces, pointy/thin objects etc, the issue becomes obvious.

Profile
 
 
Posted: 06 March 2017 04:03 PM   [ Ignore ]   [ # 1 ]  
Administrator
Avatar
Total Posts:  12043
Joined  2011-03-04

Hi NNenov,

Please have a look here: [second post]

http://old.cineversity.com/forum/forum_posts.asp?TID=2720&PN=1

The Ghost Tag does exactly this.

All the best

 Signature 

Dr. Sassi V. Sassmannshausen Ph.D.
Cinema 4D Mentor since 2004
Maxon Master Trainer, VES, DCS

Photography For C4D Artists: 200 Free Tutorials.
https://www.youtube.com/user/DrSassiLA/playlists

NEW:

NEW: Cineversity [CV4]

Profile
 
 
Posted: 06 March 2017 05:11 PM   [ Ignore ]   [ # 2 ]  
Total Posts:  108
Joined  2015-11-30

I think I didn’t explain myself well, did you have a look at my example file?
It looks like your example is demonstrating the breaking of a still object, I’m not actually sure why you need a ghost tag in that scene, you can just get the collision info from the fracture object and use that to drive visibility.
My post is about the breaking of an already moving dynamic object, as demonstrated in my sample file. Transitioning from no individual elements to all with seamless velocity inheritance.

Profile
 
 
Posted: 06 March 2017 05:37 PM   [ Ignore ]   [ # 3 ]  
Administrator
Avatar
Total Posts:  12043
Joined  2011-03-04

Hi NNenov,

If it moves or is in motion, this is not the big difference. I though you ask about a “trigger”, and the Ghost is exactly this.

Anyway, set in your scene the Dynamic Tag> Attribute Manager> Collision> Shape: Moving Mesh.

Let me know if that results in what you like to have.

All the best

 Signature 

Dr. Sassi V. Sassmannshausen Ph.D.
Cinema 4D Mentor since 2004
Maxon Master Trainer, VES, DCS

Photography For C4D Artists: 200 Free Tutorials.
https://www.youtube.com/user/DrSassiLA/playlists

NEW:

NEW: Cineversity [CV4]

Profile
 
 
Posted: 06 March 2017 06:07 PM   [ Ignore ]   [ # 4 ]  
Total Posts:  108
Joined  2015-11-30

What I mean is that the segments inherit none of the velocity, check updated version with shape set to moving mesh:
https://www.dropbox.com/s/bw1ctmxqdxle7pg/fractureDebug.c4d?dl=0

the segments explode in all directions rather than inheriting the original motion

Profile
 
 
Posted: 06 March 2017 07:56 PM   [ Ignore ]   [ # 5 ]  
Administrator
Avatar
Total Posts:  12043
Joined  2011-03-04

Please have a look at the file, NNenov, especially the yellow marked parts.

Scene file
https://www.amazon.com/clouddrive/share/Vv2VzKWU6vGIa1HmMhTKBsXAjyoLL2EMxGEL2LPaCwT?ref_=cd_ph_share_link_copy

The Initial movement is done on the first frame the tag is active, that is just a one time influence, the crash can be interpreted as “consuming” all energy to crash the structure of the sphere. Of course if the material would break apart quickly, then the energy used up for this should move the chunks. A question of energy-conservation. Since I have no idea what kind of material we are talking about, your idea will differ from my expectations perhaps.
Mass, velocity, the strength of the material, etc. I think is an artist call, if not based on physics.

Anyway, to start the “initial” Velocity again, you might explore the Crash-dummy [yellow]. There is no mentioning of restarting this initial velocity, I would point again to the scene [link] to replace and restart it. Speaking of this specific way of set up. Please keep in mind that via the “Dynamic Body State” tag one can introduce new velocity, perhaps a way to go.
Don’t forget to switch the Node off, as any input will be taken, even a zero input will try to stop it.
Scene file:
https://www.amazon.com/clouddrive/share/UZiiP9xvoC3hH5EjeLJWDucAN6P2cTCZJSK3aB5X2vh?ref_=cd_ph_share_link_copy

You could as well use a “Wind” object to get your results.

All the best

 Signature 

Dr. Sassi V. Sassmannshausen Ph.D.
Cinema 4D Mentor since 2004
Maxon Master Trainer, VES, DCS

Photography For C4D Artists: 200 Free Tutorials.
https://www.youtube.com/user/DrSassiLA/playlists

NEW:

NEW: Cineversity [CV4]

Profile
 
 
Posted: 07 March 2017 01:20 AM   [ Ignore ]   [ # 6 ]  
Administrator
Avatar
Total Posts:  12043
Joined  2011-03-04

P.S.: This is a little “hack”, as I use a non-fractured object to get the initial Dynamic work done. Then I trigger a change and let the “Initial Velocity” take over. In that very moment the Voronoi chunks start to fall apart, and even more so when they hit the Cylinder. So the trigger moment is crucial. One method could be to measure the Distance, another to use the Collision Node, or just cache the initial dynamic and find the artistic point when the change needs to happen.

Scene file:
https://www.amazon.com/clouddrive/share/Q2X4HFgLVvYW6I5AiarnHRLdH8zIQJ7IdMsj1OA8u0N?ref_=cd_ph_share_link_copy

This is not meant to be a perfect: the timing and direction is off on purpose, just to be very clear with the function by itself.

========

The next file is perhaps more in the direction you are looking for. It gives for a short “boost-time” an extra velocity after the collision. Velocity is expressed as a vector, in that way any object with a position can be used as such, the position 0,0,0 [xyz] would create a stop, any other position creates a vector from zero to the position the object has.
A light indicates the duration of it. The only think that needs attention here is the “Ghost”, as it can re-trigger the velocity-boost in this case. I have left it with this, as it is easy to animate out of function. But so far, this file has not a single key-frame and works exclusively on velocity values.

Scene file:
https://www.amazon.com/clouddrive/share/c4K4dqkbb8P9DezCwv4QP4j6mK4GHi12Vun4NsPt3lD?ref_=cd_ph_share_link_copy

As a side note, with MoGraph Selections, there is perhaps an option to provide different velocities to different chunks (clones).

All the best

 Signature 

Dr. Sassi V. Sassmannshausen Ph.D.
Cinema 4D Mentor since 2004
Maxon Master Trainer, VES, DCS

Photography For C4D Artists: 200 Free Tutorials.
https://www.youtube.com/user/DrSassiLA/playlists

NEW:

NEW: Cineversity [CV4]

Profile
 
 
Posted: 09 March 2017 11:43 AM   [ Ignore ]   [ # 7 ]  
Total Posts:  108
Joined  2015-11-30

This is quite good, interesting things to think about and play with. I do like your final sample file with the setting of velocity on collision.
I had this idea to use the memory node to get velocity from a few frames back.. anyway will need to put this on hold for now, thanks for your time!

Profile
 
 
Posted: 09 March 2017 03:57 PM   [ Ignore ]   [ # 8 ]  
Administrator
Avatar
Total Posts:  12043
Joined  2011-03-04

Hi NNenov,

There is the “standard” Memory Node and the XPool>System Presets> General Presets> Memory List. The later one is quite powerful.

Yes, there is a lot of power in these Dynamic Nodes.

They need a “wise use”. Otherwise, one can take over the whole dynamic and end up with something different. For example, the position information can be given for each “chunk” and with that they can intersect and never recover from it. But , of course, in the end the artists decision is key.

Have a look here to see the trouble one can produce:
https://www.amazon.com/clouddrive/share/nPgo6RDYqi0YdndoL8SV06lSwyxCdTIcejgGqC5q5j7?ref_=cd_ph_share_link_copy

All the best

 Signature 

Dr. Sassi V. Sassmannshausen Ph.D.
Cinema 4D Mentor since 2004
Maxon Master Trainer, VES, DCS

Photography For C4D Artists: 200 Free Tutorials.
https://www.youtube.com/user/DrSassiLA/playlists

NEW:

NEW: Cineversity [CV4]

Profile