Hey,
What you need is to set the simulation space for your Visual Effect Graphs to be according to another empty object. That object and the effects should get translated with the floating point fix system (or floating origin) every 1000m, and all the alive particles should move appropriately with it. The same thing is achieved in the Shuriken particle system when you set “Custom” as the simulation space and designate the transform there.
One of the Visual Effect Graph devs kindly put up a sample which is downloadable at the bottom of the following post:
Feedback Wanted: Visual Effect Graph page-11#post-4552234
Perhaps you can make it as a reusable sub graph for all your effects.
This is a frequently asked question here, because floating origin is a common workaround for floating point problems. While I’m thankful that there’s a way to achieve it, I really wish @VladVNeykov would consider adding this custom space functionality into VFX Graph natively, along with World and Local space, hopefully sooner rather than later.