Problem with retrieving Impact data from Rigid body

   2798   2   0
User Avatar
Member
20 posts
Joined: 9月 2010
Offline
Hi guys,

I have a question regarding to get the subdata and recordType “Impacts/ Impacts” from rigid body. The attached file is a simple test showing that particles collide with a rigid box. I'd like to retrieve the Impacts/ Impacts data, but I found it always showed hundred numbers of impacting info even though there's only one particle colliding with object.
I tried to adjust the default setting in rbdsolver by setting Collision Passes = 1, the other passes = 0, and Shock Propagation = 0. Although the Impacts data returned to normal showing the exact number of collision, the looking was totally different than the previous one.
In fact, I referenced the example file “DentingWithPops” from Sop solver in help document. In this file, the Impacts data could show the exact collision number with a default rbdsolver. I'm so confused why I can't get the same result even though I almost made the same setting in my file. Hope you guys could give me any hint! Thanks in advance.

Attachments:
col_test.hip (102.7 KB)

User Avatar
Member
1908 posts
Joined: 11月 2006
Offline
The results you are seeing are a result of collisions that happen in between frames. If a particle hits the object in between two frames, during a substep, that particle registers an impact at that time.

If you look at the time field of the impact records you'll see that many records have different times. For example, when I move the simulation to frame 14 and look at the times I see values ranging from 0.5 to about 0.541. If you convert the frame number to time, you will see that frame 14 is equal to 0.5416666666 seconds. Frame 13 is 0.5 seconds. So you can see that many of the impacts are happening between frames. This is to be expected.

Solutions as you've seen are to minimize sub frame calculations however that makes your simulations less accurate and generally pretty different. What exactly are you planning on doing with the results? If you are using them to generate points for example you could easily get around the problem by using a Fuse afterwards.
Graham Thompson, Technical Artist @ Rockstar Games
User Avatar
Member
20 posts
Joined: 9月 2010
Offline
Hi graham,

Thanks for your detailed explanation. I think using fuse is a workaround to generate points!
BTW, I just changed some parameter and found a confusing situation. When I just switched the order in Merge node, the Impacts/ Impacts for box was changed to Feedback/ Impacts, and the recording data went back to the exact hitting number of particles as I need; however the result didn't look as much dynamic as the one before changed. You can check out the new attached file as below.
My concern is which way is the correct result in this case?

Attachments:
col_test_01.hip (104.5 KB)

  • Quick Links