I’m trying to create a custom interface that allows the user to select geometry that’s animated in a GPGPU particle system. So far I’m running into two problems. I’ve implemented GPU picking on the particle system which works well but has significant performance issues because of the readRenderTargetPixels() function being performance heavy.
I’m trying instead to use a Raycaster but it appears Three.js’s Raycaster can only detect objects before their position is modified in a vertex shader.
Is it possible to correctly raycast to objects that are being dynamically animated via a vertex shader or is this a limitation of the engine?
Are there other ways to handle user interaction via GPU other than picking?