New Simulation system: the Compound Collision Shape is no longer available?
-
I am trying to use the new Rigid body tag to create ragdolls. My plugin was using the old Bullet Dynamic body tag for this task. And it worked well. But now after new Simulation system has been presented clients start asking about using GPU for ragdolls, which should be much faster.
Also new Simulation System was added the possibility when a Connector object has became to be able to connect two objects under a new SimSystem. And even in the Ragdoll mode.
So it is pretty logical to use new physics to create ragdolls. And even the crowd of ragdolls which with old bullet physics worked slow due its known limitation. So the new Simulation system potentially could be a salvationAnd I was thinking it will require just to replace the old Bullet Dynamic body tag to a new Rigid body tag.
But what I've found - there is not option in new system to use the Rigid body tag with the compound collision shapes anymore. There is only a "Hierarchy merge level" option, which does not do the same.
Am I right? It is not possible to use the new RB-tag for compound shapes?
Old bullet tag worked in a way when I: 1) put DB-tag on a Joint object, 2) added the mesh collider shape under the Joint as its child and 3) set DB-tag as a Compound collision shape to consider joint and its child as a physical object.A new Simulation System does not allow this workflow anymore? Is this a missing feature?
Or if there is a some way I can code it to achieve the desired result, then how to do this? -
Is it something too complicated what I am asking?
-
Hi @yaya,
As this forum is mainly for the development related topics and your question is heavily in the end user area, I suggest you to reach out to our Support Center regarding your Cinema 4D worlflow related questions.
In case I misunderstood your question and it is effectively development related, please elaborate on the context of your question and provide a code snippet that highlights the issue you're trying to solve as per our Support Procedures.
Cheers,
Ilia -
Hello @i_mazlov ,
As I mentioned, as a developer I am trying to provide to users the option of newly added Simulation system to use it in the my ragdoll plugin. Ideally, I want to use the new trigidbody tag in my code the same way as I use the old Bullet Dynamic Body now.
But I can't understand how to do instead of this:BaseTag* const DBtag = BaseTag::Alloc(180000102); DBtag->SetParameter(ConstDescID(DescLevel(RIGID_BODY_SHAPE)), 11, DESCFLAGS_SET::NONE);
this:
BaseTag* const DBtag = BaseTag::Alloc(trigidbody); DBtag->SetParameter(ConstDescID(DescLevel(???)), ???, DESCFLAGS_SET::NONE);
As I mentioned above, for a ragdoll I need a compound collision shape. Where the top of a hierarchy is a joint object and it owns the trigidbody tag. The second level of a hierarchy is the child mesh object - it represents the shape of the joint. In the settings of trigidbody tag I want to set it as a Compound collision shape. And then connect these nodes via Connectors to create the ragdoll structure.
So my question is:- is my desires are possible on this stage of provided simulation engine?
- if it does not, then is it in plans to add it in the near future? Because this option already exists in old Bullet tag.
-
Hi @yaya,
My understanding is that the workflow you're looking for involves using the "Hierarchy Merge Level" attribute of the rigid body tag to control the granularity of your hierarchy collision representation. For the other end user questions (including questions about the new simulation workflows) please consult our Cinema 4D User Guide or reach out to our Support Center.
Operating with this attribute from within your plugin hasn't changed and is described in Parameters section of the C4DAtom Manual.
In your case you'd effectively be interested in the RIGIDBODY_PBD_INDIVIDUAL_ELEMENTS_MERGE_LEVEL parameter of the Trigidbody. Please check the screen recording below.
Cheers,
IliaScreen recording:
-
Hello Ilia.
Thank you for you answer.
As I mentioned in the very first message
@yaya said in New Simulation system: the Compound Collision Shape is no longer available?:There is only a "Hierarchy merge level" option, which does not do the same.
Just try this workflow from your video but with the OJoint and not with the Clone object.
For some reason it works with the Clone object but with Joint it does not. The tag does not consider the child of joint as an object for physics calculation at all. I've added the project-file in my first message to show it.And it is pretty strange. Because I was thinking in the same manner as you: that it will be easy, just to need use the workflow like you show.
-
Hi @yaya,
I see your point here and I can only guess if such behavior is expected or not, as this is (and I've already mentioned this to you earlier) a question that has nothing to do with development.
In general it sounds like a bug, so you're very welcome to reach out to our Support Team and ask them for a proper workaround if they actually classify this issue as a bug.
I'm moving your thread to general talk section in case someone from our community might be willing to share their experience on that topic.
Cheers,
Ilia -