I much prefer it when characters exist independently of the player and do, in fact, have specific lines in the sand that they will absolutely not cross no matter what. Which makes a lot more sense than just randomly going along with whatever the player desires.
Morality plays deeply into immersion. It is one thing for a scheming necromancer to be fine with malicious acts. Less so for a devout paladin.