I am currently implementing a quadtree (in TypeScript) for a game prototype.
In order to optimize performances, a little bit, instead of managing just one quadtree for all game objects, I am wondering if it would be speed-wise to separate static objects (like walls) from movings objects (like characters).
This way, the static layer shall never be updated (cleared and populated) each frame which may save some CPU cycles.
Obviously, in order to check collision, we will have to retrieve objects from both the static and the moving objects layers.
What do you think about this idea? Is it relevant?