Well, I have no qualifications to make any real comments about RP, but I am writing a fiction book, so I have a deal of knowledge on character creation and good ways to give them depth.
Basically, a good character must have three essential qualities: personality, a goal, and motivation. Personality(both good and bad traits), because everyone has one and it defines the character's behavior. A goal(which can and likely will change as time progresses), because it give the character a way to advance his motivation. Motivation(which is generally the same throughout), because it answers why the character does what he does. There are other finer details, but these I'd say are the essential basics.
For example, Shandrey, a character from my book, which can also be seen in The Last Journey, has his personality revealed right away; secretive, straight forward, quiet. Later, as the story progresses, his goals become revealed. Only after a series of goals come along (between half and 3/4th the way through the book) can his true motivations be seen.
One of the best ways to reveal a character's motivation is to make him do something unexpected or something not in line with his personality. I.E. Have the villain save the character he's trying to kill, or have a trustworthy hero suddenly vanish in the heat of battle.
Again, I have book writing experience, where I decide everything that happens. The rules are slightly different in RP, as I'm learning slowly, since you're have to work with other characters trying to accomplish their goals. But generally, you have to know which way you want to take a character before you can really give them any depth. And then just roll with the punches when plot twists come along.
Hope that helps anyone who needs it,
God Bless,
Shadow's Eldil