Character Development: A Writer's Guide to Depth and Dimension
When people say that a character is “flat” or “two-dimensional,” they’re typically just saying that the character isn’t interesting. And uninteresting characters are a plague on a story. Let’s look at a few techniques to make characters interesting, round, and three-dimensional.

Desires, Wants, and Emptiness
Nothing brings a character to life faster than a deep desire. Make sure your character wants something. Give them a longing, dream, or burning desire that bores an emptiness deep in their bones.
When a character wants something, they typically take action to get it. They craft a plan. And with any pursuit, there will be failure. This inherently makes a character interesting. If your character is sitting on the page lifeless, it may be because they don’t want something deep enough. Make them care about something deeply and then threaten or take away that thing.
Moral Weakness
Perfect characters are boring. They don’t struggle to get what they want. Instead, we want characters who struggle in their goals and, perhaps most importantly, in their relationships.
A moral weakness is any behavior that negatively impacts a character’s relationships. A character might be selfish, overprotective, standoffish, arrogant, paranoid, etc. It’s possible that this immoral behavior is a defense mechanism that the character consciously or subconsciously uses to protect themselves from experiencing pain from their past. In these instances, their painful past may be a key part of their backstory (i.e., ghost event).
A character with a moral weakness pushes others away, even when they don’t mean to. Over the course of the story, they must recognize their moral weakness and learn to heal it in order to connect with others and have healthy relationships. This process of emotional growth can be one aspect of an interesting character.

Contradictions
Characters who really are what they appear to be are typically flat. We want a character who’s got more going on than what appears on the surface. We’re intrigued by a character who’s rainbows and sunshine in public but can drop their mask to summon the dark forces of evil. We’re interested when a pushy, dominant character turns into a golden retriever in the presence of their family.
Consider also characters who seem to defy their archetype or schema. Perhaps there’s an assassin who volunteers at the soup kitchen. Perhaps a righteous paladin has a habit of stealing from the charity tray. Contradictions intrigue us and can bring a character to life.
Fear, Regret, Insecurity, and Resentment
Emotion brings a character to life. I’d say it’s no coincidence that we have more words for negative emotions than positive ones. Feeling the nuance of fear, regret, shame, guilt, insecurity, resentment, anguish, and other pain is all a part of what makes us human. And it’s an important part of making a character feel real.
What does your character fear? There are physical fears such as heights and spiders, undoubtedly. But what do they emotionally fear? Are they afraid of being abandoned, rejected, or losing control? And what do they regret in their life? Do they regret not having spent time with someone? Do they regret having lived someone else’s life rather than their own? Do they regret putting someone else before themselves? Has any of this regret led to resentment? What’s the pain within the character and how can you bring it out? This will help bring a character to life.

Unique Relationships
A character who plays the same role in each of their relationships can feel flat. We want characters who wear different masks and play different roles depending on the social context.
Consider a character who’s a guardian to the helpless in one relationship but a student to a mentor in another relationship. Perhaps in one relationship, they play the rescuer and in another, they play the victim. Perhaps a character is clearly an independent, healthy adult at work but whenever they’re around their family they regress and play the role of a child.
When a character feels different in each of their relationships, they can begin to feel multi-dimensional.
Give us a Reason to Empathize
Sometimes when a character feels flat or two-dimensional, it’s simply because the writer hasn’t yet given us a reason to empathize with the character. We don’t have any reason to care about what happens to this character.
Fortunately, the cure for this problem is relatively straightforward. Make the character both admirable and vulnerable. Does the character have any traits that spark admiration, fascination, or envy? Do we wish we could be more like this character in some way? Are they courteous, respected, popular, powerful, cunning, resourceful, funny, quick-witted, etc.?
And have we seen the vulnerable side of the character? Do they have fears, regrets, and insecurities? Do they have a pain from their past or an undeserved misfortune? Have we seen their human side? Do they care for someone deeply or does someone else care for them deeply? Are they willing to sacrifice for others? Do they have any secrets?
Give us a reason to empathize with a character. Give us a reason to care about what happens to them. That’ll go a long way in bringing a character to life.
About Ross Hartmann

Ross Hartmann is the author of the bestselling storytelling book The Structure of Story and the creative director at Kiingo, a storytelling school dedicated to teaching the fundamental principles of successful storytelling. His hobbies include writing, creating tools for writers, and learning the tools that help make a great story. Kiingo can be found at https://kiingo.com.