Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(+1)

https://forum.godotengine.org/t/more-efficient-gpuparticles3d-collision-detectio... has the high level approach (the game code expands on it a bit, but it's essentially the same). I did spend a lot of time thinking of ways to get the data off the GPU efficiently, and even poked through the godot source a bit. I think it'd be ideal if you could read out the internal particle system storage buffer into a compute shader rather than abusing the fixed function pipeline, but I have done very little compute shader programming so I dunno if practically it's any faster than e.g. the alpha blending in fixed pipeline which the game uses. If anyone who knows godot internals and gpu programming better than I do is reading this, I hope my naive approach inspires you to post something better :^)

I like your funny magic words man. No more seriously I think I get the idea thanks for the post and details.

I’m a noob at shaders and GPU programming too. Have you looked at Github issues on the Godot repo? And maybe opening a new one. It would get you ideas and answers from people with the required knowledge I think. We aren’t the only people who want/need this data from GPUParticles. The official Discord server also is active.