I tried another technique i was thinking about.
Using line segment intersections and find the smallest time when the player hits a tile and use this to adjust the movement delta.
This basically should work... but its not... my computed min time explodes and increase magically when the player was moving, even when player stands still.
I dont see any mistakes right now, basically what i do is to find the tile center for any tile i test against, find the min and max corner of the tile using the grown tile size with the player size included and then just divide by the player delta vector. This should give me some sort of barycentric coordinates if i remember correctly, but its not :-(
For simplicity i just added the left side test of the test to see what happens.
Can someone look into it please?