Most 2d character controllers I've seen use the player's movement distance to direct casts that are used for collision. This works when colliding against static colliders, but doesn't take into account if the player is standing still and a solid moving object collides with him. What options are there for this? I know it's not a simple answer, but I'm more looking for possible very broad conceptual solutions. The only I can think of is an elaborate set of static casts for each influenceable entity that originate from within the collider of the entity. It involves substepping the movement of ALL moving objects into multiple smaller chunks per frame that are shorter than the length of the shortest cast to prevent tunneling, and then after each movement chunk, each entity runs its collision casts. It works but it's a pain in the ass having to break down physics into multiple checks per entity per frame and it's not exactly ideal for performance. Can anyone think of any alternative ways?