While I’m working on Trader’s Honour, the sequel for Watcher’s Web, I had some thoughts about exposition.
Of course the need for exposition is not unique to science fiction and fantasy, but they are two genres where it is often very important and prominent (other genres where exposition is important that come to mind are crime fiction, historical fiction and some types of mystery fiction). But in all types of fiction you may have to explain something that has happened in the past, or some fact of knowledge that the reader needs to know.
If you’re writing a fantasy it may be important, for example, to relate the family tree of the royal family, because this will be important in the plot. But the information itself is fairly dry and will take at least a page or so to cover and it’s pretty much impossible to “show” in real-time, in other words in a scene that happens in the story.
Often the information is of a type that’s expected within the genre. In hard SF there are often explanations of facts. The reader expects these just the same as a reader expects to read about history in historical fiction. The work would be poorer and not fit well in the genre without it.
You have two choices:
You can narrate the information directly. This technique, also known as “infodumping” is often denigrated and discouraged in creative writing classes, but there are a number of situations where it works very well and where I doubt a different technique would be more efficient.
Direct narration is ideal for situations where your main character, in whose POV we are, already knows this information but the reader doesn’t. Or it works as a summary of material your character reads.
Direct narration does not need to be dry and neither is it without character. You can infuse the narration with the voice of the POV character by recounting it as a memory (this also gives the character more depth) or lacing it with the opinion of the character.
Even if direct narration is a page long and not particularly lively, readers will forgive you if you have made them care about the characters and the imparted data first. Direct narration doesn’t usually work well int the beginning or a story.
Or you can use dialogue.
With dialogue, it’s essential that each character’s aims are clear when you start writing.
An infodumping dialogue can be as simple as a character explaining something else to the main character. This works if there is a clear imbalance of knowledge and if it is OK for the secondary character to share that knowledge. It doesn’t work if both characters have knowledge of the facts (you’ll get “As you know, Bob” dialogue), but if your character visits an academic expert and the expert goes on to explain how his area of expertise sticks together in relation to your plot. It’s awesome if you can do that, but most dialogues are more complicated and less naive than that.
The character who imparts information may not be at liberty or willing to share the information. The character is evasive and leaves out important details. The character may be under force to reveal the details, either because the main character holds the right end of a gun, or because the secondary character faces a moral crisis that makes it seem the right thing to do to spill the beans.
Your character could be overhearing two other characters talking. In this case, the information would be incomplete and subject to misinterpretation by your main character. There would be chunks missing that could turn out to be important in the plot. Or chunks of information that, through their absence, change the meaning of the overheard information.
Or your character could speak to another character who is polite but does not want to give the information your character seeks. Here the secondary character’s body language and the answers not given are more important than what is said.
There are endless variations on the dialogue infodump, and what is not being said is often more interesting than what is said. All characters have motivations for what they say or don’t say and those motivations are part of the infodump.