So I have a geometry node set up that fires instanced geo of a bullet, and that bullet on collision with a mesh explodes into particles, all works well up to a certain speed, but not the speed I need. The projectile starts to clip through the collision geo and not trigger it's particle sim on impact at a certain speed, instead it doesn't register and goes through it completely. The fire rate and other parts of the scene are tide to the frame rate so I don't want to increase it from 24, unless theres a way to do that without messing other things up?

Is there a way to get subframe simulation in the geometry nodes sim area? I've heard something about the repeat node potentially helping but I can't see how. Any ideas?

collision node setup

  • $\begingroup$ It won't be easy but you could, at each frame, repeat X times : move object 1/Xth of a frame > test collision (if yes trigger other things, else repeat). Basically it would be a custom implementation of substeps. $\endgroup$
    – Lutzi
    Commented Jun 29 at 13:13
  • $\begingroup$ First of all, if the bullet is small, just test the collision using raycasting from old position to new position. But if the bullet is big enough for you to care about its shape, and if the bullet is convex (probably is, or you can treat it as if it was), then you can do a convex hull of the bullet in old and new positions joined together, as I do here: How to make object cut into another object and leave a hole behind? $\endgroup$ Commented Jun 29 at 14:31
  • $\begingroup$ @MarkusvonBroady Yes the geo nodes are using raycasting currently, I've added an image of the collision nodes, the particle technically triggers the collision I guess? But the particle fx spawns at world origin instead of where the collision happens at the higher speed, would that still suggest an issue with the collision of something else? Slower speeds the particle hit happens where the collision hits but faster hits trigger the particle hit at world origin. $\endgroup$ Commented Jun 30 at 4:42
  • 1
    $\begingroup$ We can't really help if you don't produce a minimal working example and share it... $\endgroup$ Commented Jun 30 at 17:55
  • $\begingroup$ Sorry being a paid addon I didn't want to share it, but I have fixed it, turns out the raylength of the raycast for instancing objects onto surface was too low at the base 10m, increasing it to 100m fixed it. Thanks for the idea of where to look! $\endgroup$ Commented Jul 1 at 2:18


You must log in to answer this question.

Browse other questions tagged .