Jump to content

Pillar shatter- RBD Packed sim


Nando

Recommended Posts

hi all ! 

 

I am sparring my time in learning alot with Collisions and RBD sim, with the new h13. 

 

Now wat i am trying to achieve is , i have an animated character which eventually ramms into a pillar, and the pillar cracks , falls down,

 

i have animated it, cached it, brought into Houdini as alembic file  and ropd it again..

all good.

but when i add that as an deforming rbd object and let it collide with the pillar i m loosing my brain there..

 

the problems are,

 

its a fractured pillar and brought in as packed geo, if the gravity is on, the pillar just crumbles all the way down ... 

 

and another one is,  its a huge character with lots of force in action. i cant get that as it hits, the pillar,

 

i have attached a file and a screenshots of  wat i am trying to say! 

 

take a look at it and shed some light on wat mistake i am committing in here

the roped animation is also attached  

 

as a cheap way,i am just turning on gravity on a certain frame , where the character comes closer to the pillar, u can see that in the play blast.. i know i am wrong but i m still learning 

cheers  

post-7924-0-29034100-1396877882_thumb.pn

post-7924-0-15070000-1396877894_thumb.pn

test_1.hip

untitled.mov

cache_anim.zip

Link to comment
Share on other sites

I wanted to help, but you seemed to cache your alembic cache as a packed geometry, so I just get one point instead of the cached animation.

Generally, you should find suspicious 26 kb as a file size for 25 frames ;)

Edited by Netvudu
Link to comment
Share on other sites

it just works for me, i am not sure wats the mistake... my  apologies.. 

anyways i am adding in the alembic file in here 

 

thanks alot 

 

now i get wat u told me, i loaded the alembic as houdini geo and i get all the points now! 

alembic.zip

Edited by Nando
Link to comment
Share on other sites

one thing you could do is use the active value dop node to set the pieces to active or passive. You would want to set it up so that if your character comes close to the pillar (ex. 0.1 units close) it will make the nearest prefracture active. You can check out a hip file I posted here for an idea of how it works: http://forums.odforce.net/topic/19860-rbd-fracture-control-example-file/

Edited by rhussain
Link to comment
Share on other sites

HI Rhussain 

 

first a big thanks for u share, and the amount of information u put inside the File .. 

 

couple of doubts as i have undergone, in the File..  

ch(opcreator(".")+"/startframe")

u added this in the creation frame of rbd fractured object inside dop..?? why ?? wat does it do actually ?? 

 

in the active value dop, i see u bring in the attribute u created its totally cool, one doubt is , this does not work for packed primitives, because there is no "objid" in packed geo ?? 

 

any solution on that! 

 

Thanks 

Link to comment
Share on other sites

HI Rhussain 

 

first a big thanks for u share, and the amount of information u put inside the File .. 

 

couple of doubts as i have undergone, in the File..  

ch(opcreator(".")+"/startframe")

u added this in the creation frame of rbd fractured object inside dop..?? why ?? wat does it do actually ?? 

 

in the active value dop, i see u bring in the attribute u created its totally cool, one doubt is , this does not work for packed primitives, because there is no "objid" in packed geo ?? 

 

any solution on that! 

 

Thanks 

 

 

I'm glad the file was able to help you out a bit. The ch(opcreator(".")+"/startframe") expression is something set by default on the rbd fractured object when you create it in a dopnet. I beleive it's linked to the start frame parameter up a level on the dopnetwork it's contained. As for packed geometry, I realize this wont exactly work because the rbd packed object treats all the pieces as one object, hence $OBJID wont work correctly. Let me dig around and see if I can get this working with packed geo. Sorry about that.

Link to comment
Share on other sites

Aaaand more help on the way. :)

 

Here is your very own scene, tweaked and fixed. I also added comments everywhere I added or removed nodes.

 

I think you will like it. Just be sure you point your cache to the correct place for the character.

 

Basically, you want to adapt your scene scale to work comfortably and then you should both create active/pasive pieces with attributes. You could animate those attributes as Ryan did on his last file, but for this case it´s just simpler to just create a glue network with a low glue value so that gravity doesn´t move pieces, but the character does.

 

I hope it helps.

 

 

 

 

test_1_fixed.hipnc

Link to comment
Share on other sites

Thank alot Netvudu and rhussain for the help Files ! defnetley did learn alot.. 

 

to netvudu 

 

those attribute creates in the pillar as active and passive is it similar to active value inside dop ?? 

 

and i still dont get enough velocity transferig from the character to the pillar! so i did compute velocity with the trial sop but still no luck 

any other suggestions for that :)

 

 

Just out of my curiosity, is it possible to break the constrain network, with a wrangle sop. say, if the force is > than certain value it breaks ?? can this be done ?? 

 

 

i ll post an update soon 

Edited by Nando
Link to comment
Share on other sites

Those attributes are similar to the active value in DOP but much easier to assign since you are adding it to points in SOP.

 

Regarding the velocity, there are two quick ways of making the pieces go farther. The first one is simply raising the bounce of the character collision and lowering the density of the tube pieces (you´ll have to chage the glue network strength again). The second way, which is maybe more interesting is to add a SOP Solver and raise the velocity from a Point SOP and tell it $VX*1.4, $VY*1.4, $VZ*1.4 for instance, or with a VOPSOP inside the SOP Solver. Just be sure to use a switch for this so that it only affects for a few frames. Otherwise you will get a weird behaviour after a while.

 

As for your wrangle SOP question, I´m not sure, but it sounds a bad idea regarding performance. If you tell the Glue Network to check to Network SOP every frame you already loose some performance, and your suggestion would have to be added on a SOP solver, which would make it even slower....but it´s an interesting idea...for someone else to try :P

Link to comment
Share on other sites

don't convert the object to volume, Bullet is not using SDF for collisions anyway, so keep it as geometry and everything will be faster, you can Bullet/Geometry Representation to Concave for more precise collision shape if you need to

 

to your velocity inheritance problem:

you may want to update houdini if you are using older build than 13.0.348

 

Monday, March 10, 2014 
Houdini 13.0.348: Fixed a bug in the Bullet Solver that prevented collisions with kinematic objects from respecting the kinematic object's velocity.

Edited by anim
Link to comment
Share on other sites

  • 1 month later...

don't convert the object to volume, Bullet is not using SDF for collisions anyway, so keep it as geometry and everything will be faster, you can Bullet/Geometry Representation to Concave for more precise collision shape if you need to

 

to your velocity inheritance problem:

you may want to update houdini if you are using older build than 13.0.348

 

Out of curiosity, what is wrong in the earlier versions?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...