Unfortunately, it is not possible to do it with the GPU particle system because the initial positions are generated at start and reused for new particles when other particles are dying.
That’s because everything is running on the GPU, and your customEmitter.particlePositionGenerator
javascript function can’t be called on the GPU when new particles must be created.