Particles in container penetrating through wall
#1
Photo 
I wonder what would be the correct way to make sure, that particles are not penetrating through container walls. Is it particle type issue or is there certain parameter?

   

[Image: attachment.php?aid=4224]
  Reply
#2
You can try enabling CCD in the tyFlow > PhysX rollout, however that's not guaranteed to solve the problem when using Mesh mode in the PhysX Collision operator. The ideal collision mode for colliders is convex hull mode, but you'll need to make sure your container is split up into convex parts first (and that each convex part as a reasonable amount of thickness in order to form a proper hull). Perhaps it already is - you didn't post a screenshot of what the actual result looks like so it's impossible to tell.
  Reply
#3
Thanks, I tested that. I didn't see much change. I'm now increasing substeps.

I cannot post any screenshots on actual geometry due to NDA.
  Reply
#4
Increasing Substeps made things better. I think there's few options.
  1. On tyFlow menu Time step 1/8
  2. PhysX Substeps 12
  3. CCD Max step 4

I increased each of them and here are the latest values, which made the situation better - not perfect, but better. Which on of these is the value, I need to iterate?

I wonder, if it would be a good idea to limit the maximum speed of particles so the collision geometry would have the time to react? What would be the correct way to do that?
  Reply
#5
You can use a Limiter operator to do that.

Also check that you have no starting penetrations.
  Reply
#6
I used the limiter operator. The speed limit was set according to maximum freefall speed before hitting to an obstacle. I thought, it's the maximum speed particles should travel. It improved the simulation. However, there's still some penetrations.

So which one I should start iterating with:
  1. Time steps 1/8
  2. PhysX substeps 12
  3. CCD Maz steps 4

Other?
  Reply
#7
One more thing, I don't understand. When creating tyCache, I get - of course the particles cached by frame tyCache_tyPart*.tyc- and then I get this gigantic tyCache_tyMesh.tyc -file. Is it really necessary? Can it be turned of or deleted? I think this is somehow included in backburner file, because the backburner files are getting really large, when tyCache is included. In fact they are getting too large for backburner to render.
  Reply
#8
The mesh file is required, yes. Its size depends on how many unique meshes are present in the sim. If your sim utilizes instancing (meshes are shared between particles), it will be smaller in size.
  Reply
#9
Thanks,

Also, I'm still confused with the container wall particle penetration. The wall collision are working OK - the particles are not flying through. However they do penetrate in a way, they are occasionally flashing outside of the container. Is there a parameter, I can adjust to make the particle collision radius bigger. Now they seem to be colliding according to the center of gravity. On certain angles, the particles are visible outside the container.

Here's the setup for the Cache export.

[Image: attachment.php?aid=4239]


Attached Files Thumbnail(s)
   
  Reply
#10
I have question about the tyCache concept. I'm caching a simulation and simultaneously rendering it in another session. The simulation in rendering looks a bit odd. I looked into cache directory and see, that tyMesh file has been updated latest in July. So should I need to wait this simulation to the very end until I see the cache rendering correctly? Instead of Gigabytes, the tyMesh file is 179 KB in size while the latest frame is 2 287 KB.

Compared to Phoenix in the same animation, I see it rendering correctly after each simulated frame (*.AUR -file).

How does the tyCache really work?
  Reply
#11
With default settings you need to wait for the caching to finish for the mesh file to be generated. Or you can enable "backup at regular intervals" to have it generated every X minutes if you're exporting a particularly long sequence.
  Reply
#12
Thanks,

This clarifies a lot. However there's one question. Is it possible to process tyFlow cache simultaneously with rendering as long as caching process is ahead of rendering proces, or do I need to wait caching to finish first.

Now the caching is half way there, and the mesh file is already more than 13 GB. Max became very unstable and the rendering scene wont start any more. Is there anything I can do to reduce the size of the cache file? Or should I maybe try to create cacheless simulation?
  Reply
#13
I just can't render the scene due to large tyMesh filesize.

The client (89 000 times bigger than me) is threatening me with serious consequences if I can't finish this very soon.
  Reply
#14
Mesh file size is dependent on the number and complexity of unique meshes in the sim. To reduce its size, use instanced meshes across multiple particles, instead of unique meshes. So for example, a single mesh instanced across a billion particles will result in a tiny mesh file size, whereas a thousand particles each with a unique and complex mesh (perhaps as the result of a fracture operation) will result in a much larger mesh file size.
  Reply
#15
Thanks,

I believe, it's the fracture. So, I have created a Delete event. I have a property test operator by volume. It sends fractured small particles into delete event. At the moment I'm iterating correct volume value for particle deletion. It's baking frame 4120 of 6000 and the tyMesh file is now 8.9 GB. I believe vast majority of the particles are deleted by now. When finished, I'll test rendering.
  Reply


Forum Jump: