GPU Particle Collision with Translucent Mesh


I’ve been trying to get some GPU particles to collide with a translucent mesh without much success.

I am using “Distance Field” collision on my emitter, but that is not enough apparently. Is it impossible, after all, to have GPU particles collide with translucent meshes?

ps: even when I make the mesh opaque (setting the material opacity to 1), there is no change regarding the particles collision with it.


I’m not sure this is useful, but when using CPU particles, they collide just fine, but I cannot afford the limit they impose (i.e. I need a LOT of particles on screen).

Also, the GPU particles collide just fine with “regular” materials (on the same mesh), so the problem, as far as I know, really lies within the translucency itself.

----EDIT 2----

Here is exactly what I am trying to do:

I have a cylinder that, at first, is opaque. Its material, however, is translucent, and using “Camera Depth Fade”, I make part of it invisible in order to reveal its interior.

Inside of said cylinder, there’s a particle emitter. Those particles should be kept inside the mesh, but they just go right through it.

What I tried (to no avail):

  • Removing “Camera Depth Fade”
  • Setting opacity to 1
  • Making the material two-sided
  • Adding actual geometry inside the cylinder
  • Messing around with the particles scale
  • Messing around with the collision parameters in the particle (though not a lot, I admit)

ps: I was playing around with the material and emitter while writing this edit, and noticed that the particles are not colliding even when the material blend mode is set to “Opaque”, so now I am truly confused

you may have already found this.

Indeed, that post is where I saw about using “Distance Field” collision. Alas, it did not work either :frowning:

On a side note, I just added some more information regarding my specific situation which may prove useful (in hindsight, that should’ve been in the original post from the start…)

i’ve just started using gpu particles myself so my knowledge is limited but could you use a collision volume to contain them?

It doesn’t seem to be respecting any collision whatsoever