deadalvs Posted June 12, 2012 Share Posted June 12, 2012 Hi ! I try to run a simple RBD sim with the attached geometry file ( fbx file, note the wooden beams and single bricks inside the wall ). I'm just defining objects as RBs and let the whole wall object fall on a ground plane from 1 meter height. What is the reason the simulation is sooo slow ? ( using H12 with bullet ) What can I do to speed things up ? Quote Link to comment Share on other sites More sharing options...
deadalvs Posted June 12, 2012 Author Share Posted June 12, 2012 of course the file did not get uploaded .. fixed. rbd_0.zip Quote Link to comment Share on other sites More sharing options...
aweaklingchild Posted June 13, 2012 Share Posted June 13, 2012 You have almost 1000 pieces of geometry side by side. When you try and sim something like this without any constraints the rbd solver is going to spend a lot of time calculating collisions between each object. The easiest fix is to use a fractured glue object to hold your pieces together until until they receive an impulse force greater than the glue strength holding them together. Still, your sim is going to slow down a ton once your glue object breaks since the solver will then start calculating collisions between the pieces. Also, simplify your project..that fbx file is crazy with hundreds of nodes. You should be working with a couple files at most for this sort of thing and they should always be in the .bgeo format. Quote Link to comment Share on other sites More sharing options...
deadalvs Posted June 13, 2012 Author Share Posted June 13, 2012 You have almost 1000 pieces of geometry side by side. When you try and sim something like this without any constraints the rbd solver is going to spend a lot of time calculating collisions between each object. The easiest fix is to use a fractured glue object to hold your pieces together until until they receive an impulse force greater than the glue strength holding them together. Still, your sim is going to slow down a ton once your glue object breaks since the solver will then start calculating collisions between the pieces. Also, simplify your project..that fbx file is crazy with hundreds of nodes. You should be working with a couple files at most for this sort of thing and they should always be in the .bgeo format. umm .. you did see this video, right ? : http://www.sidefx.com/index.php?option=com_content&task=view&id=2125&Itemid=360 the reason why I play with Houdini is because of this video .. there's 80'000 books simulated .. now 1000 should not really be a problem ? the reason I created the FBX this way (with shape groups) is that I need individual nodes for all elements so they don't act as if it were just 1 rigid mesh. I need all elements to be separate objects .. just as those books and the shelves. is that .bgeo format generated in Houdini ? is there a way to use an other format which lets me handle this data more efficient ? (the geo is created externally as you may guess ..) thanks for any input ! Quote Link to comment Share on other sites More sharing options...
aweaklingchild Posted June 13, 2012 Share Posted June 13, 2012 Bullet can absolutely handle thousands of pieces of geometry but if you want your sim to run at a reasonable speed you need to optimize your scene. Even the bookshelf example you mentioned took 1.5 minutes per frame. That's fast for what it's doing but not practical if your just trying to drop a brick wall on the ground. You don't need separate nodes or files for each piece of geometry. When you use the shelf tools to create your rbd fractured/glue object, Houdini automatically lays down the necessary sops (connectivity and assemble) that separate the geometry into pieces based upon its connected primitives. .bgeo files can be made with the file sop. Quote Link to comment Share on other sites More sharing options...
deadalvs Posted June 14, 2012 Author Share Posted June 14, 2012 Bullet can absolutely handle thousands of pieces of geometry but if you want your sim to run at a reasonable speed you need to optimize your scene. Even the bookshelf example you mentioned took 1.5 minutes per frame. That's fast for what it's doing but not practical if your just trying to drop a brick wall on the ground. You don't need separate nodes or files for each piece of geometry. When you use the shelf tools to create your rbd fractured/glue object, Houdini automatically lays down the necessary sops (connectivity and assemble) that separate the geometry into pieces based upon its connected primitives. .bgeo files can be made with the file sop. thanks again for the valuable info ! the brick wall is actually just a tiny test I wanted to make so see the performance in general of my geo 'formatted' this way, the actual goal is working with a LOT more geometry than this. by a lot, I mean one or multiple complete buildings (no interior stuff) which are built with actual wooden beams, planks, bricks, roof construction, .. I can create those geometries procedurally externally, but since I'm new to Houdini, that very scene optimization you mention is the tricky part (with my knowledge so far). If you're very familiar with all those specific processes and setting up Houdini (or other peeps here), I'm more than willing to share an example building .. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.