Bill Posted May 27, 2010 Share Posted May 27, 2010 I'm using the SPH solver and I'd like to animate friction values on the RBD object (per point). If I create a point attribute in SOPs called 'friction' and set my values there, they do get used in DOPs if I have 'Use Deforming Geometry' turned on (on the RBD Obj node). However, that's kind of overkill... I really don't have deforming geometry (it's not moving), and turning that on REALLY slows down my sim. So is there a way I can keep it as a static RBD object and then fetch the friction values and apply them (per timestep)? Thanks, Bill Quote Link to comment Share on other sites More sharing options...
anim Posted May 28, 2010 Share Posted May 28, 2010 (edited) if your geometry is not deforming, then one thing you can do is go to first frame of your sim on your RBD object/collisions/volume fill in File parameter(path where the collision geo will be saved like $HIP/file.simdata) and change file mode to Write Files, this will save collision volume for the current frame change File Mode to Read Files this way the collision volume generation will be skipped so you can turn on Use Deforming Geometry and it should run much faster and pick up your updating point attributes Edited May 28, 2010 by anim Quote Link to comment Share on other sites More sharing options...
Bill Posted May 28, 2010 Author Share Posted May 28, 2010 Yeah, I had tried that already and it was still VERY slow. I didn't know what else DOPs was doing when you turn on 'use deforming geo', other than creating the SDF (which it doesn't if you're reading it from disk). It shouldn't have been calculating velocities, because I had turned on 'use point velocities.' I sifted through the RBD Object OTL but didn't see what could be taking so long. I found that the point attrs are stored in the 'geometry' data on the RBD object. So I used a SOP Geometry DOP and pointed it to my SOP with the friction attr values and had it update the 'Geometry' data every frame. This worked. However, it's still slower than I'd like. I stripped out all other attrs except for friction. However, DOPs is still updating the vector P and the float friction. It would be nice if there is a way to only update friction, not P. Quote Link to comment Share on other sites More sharing options...
anim Posted May 28, 2010 Share Posted May 28, 2010 have you tried SOP solver and just copying friction attribute? (of course then turn use deforming geometry off) Quote Link to comment Share on other sites More sharing options...
Bill Posted May 28, 2010 Author Share Posted May 28, 2010 No. I will give that a try. Thanks. Quote Link to comment Share on other sites More sharing options...
anim Posted May 28, 2010 Share Posted May 28, 2010 actually i've tested it now and it's not very different from SOP Geometry method, but I don't think both are so much slower than default static geometry in DOPs maybe your geometry is very dense you may consider using lower-res mesh for DOPs Quote Link to comment Share on other sites More sharing options...
anim Posted May 28, 2010 Share Posted May 28, 2010 you can check your Cache Memory size on your DOP network, because simulation is usually slower when it starts caching to disk so you may want to keep this cache size to maximum (according to your RAM) to get faster simulation 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.