I've been playing around with collision detection methods for my game and have become interested in seeing how one would implement a collision system separate from the movement logic. A lot of collision systems I see depend on the object storing its future position after moving and checking if that future position collides with the map and modifying that position accordingly before finally moving to that new position.
However, I know that some games separate the collision logic from the movement logic so the object just moves to its future position and instead a separate global system loops through objects and handles collision itself. Does anyone know how I could go about implementing this type of system?