Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

I don't think this was the intended solution because the particles pass through the pipe, but I tried very hard.

This is the same idea -- but far prettier -- to my first godot xr game jam entry:  Smoke on the Wirral by goatchurch for Godot XR Game Jam - itch.io

How did you detect the particles had hit their targets?  I had to do it by placing low-resolution cameras on them and reading the pixels.


Thanks for playing! Hmm, maybe I should've increased the resolution on the GPUParticlesCollisionSDF3D. The scenes in the project have the manipulators in the final positions for my intended solution, but also I didn't have time to do a lot of searching for alternate solutions.

For detection, I did something similar to the cameras: I used a special shader to draw a copy of the particles in a separate SubViewport, which passed in bounding boxes to my targets as uniforms and just checked the position of every particle against them, outputting a pixel to the buffer if they collide. You can see the shader in the source for details. I also asked about it on https://forum.godotengine.org/t/more-efficient-gpuparticles3d-collision-detectio... hoping somebody would get sniped into thinking up a better solution, but didn't get any bites.