I have implemented the first option in 2 projects of mine, it is not really hard, but a lot of calculations.
Diffrent animations would always look odd i think (always some degrees off), and get really annoying if you create more entitys, because they all require these extra animations.
Besides, you wont only have one way slopes, but also holes like these (dont mind the character and the fact it does not have legs haha):
So calculating the position is maybe hard to do, but once you have done it, you wont have to worry about it for the rest of the project anymore.