Vespers: Adventures with NPCs, Part IV


This is the fourth installment of my blog series introducing the six NPCs in Vespers, detailing the development process from text to functioning 3D characters. The three previous installments can be found at Part I, Part II, and Part III.

Once again it’s time to resume my efforts to bring our NPCs to life, beginning with bits and pieces of text from the IF version of Vespers and ending with a modeled, animated, and voice-acted 3D character. It’s been a while since my last entry, which described Lucca, the youngest monk at St. Cuthbert’s. This time I discuss the development of Ignatius, perhaps the most mysterious of the brothers at the monastery, and the one most distrusting of the Abbot at the start of the game.

Ignatius: From Concept to Character

Each of the characters in the game has their own challenges, and Ignatius is no exception. In addition to his bad eye, Ignatius has to have a particularly suspicious appearance, which can sometimes be difficult to model in a convincing way. Again, we didn’t have a lot to go on initially from the text version of Vespers, aside from a short description:



"A fiery man, whose devotion to God is rivalled only by his devotion to protecting
God's people, Brother Ignatius was a soldier before joining Saint Cuthbert's.
After losing an eye against the Turks in Nicaea, he came back to Italy, and
started fighting for God in the only way he could now: with prayer."

Aside from a middle-aged, slender built man of above-average height, Jason Devlin (the game’s author) and I didn’t have a lot to give N.R. Bharathae, our lead artist, to go by. Nevertheless, N.R. did a great job capturing his appearance with his initial concept:

Ignatius concept sketch.

This looked like a perfect starting point. Using this, N.R. designed Ignatius’s 3D model and then applied some of his amazing textures — where he gets these from, I have no idea. As with the others, we were going for a more realistic appearance for our characters, and I think N.R. really outdid himself this time…

Ignatius textures.

The Ignatius model.

As with the other characters, while N.R. modeled we continued in our task of finding and recording a voice actor for the part. Matching a voice for a middle-aged man would not be as difficult as for some other parts, but the real challenge was finding someone who could play the part convincingly, given that Ignatius needs to be portrayed as dark and suspicious. The man we found to play the part was Bob Richardson.

Here’s a shot of Bob alongside with his character, as well as a short bio and a shot I took during his recording session:

Bob and Ignatius.

“Bob Richardson is the father of three gallant sons, one princess daughter, and two wonderful step-daughters. He has been involved in acting for about 40 years, although not in anything you’ve probably ever seen before. Starting in the theater at age 11 and moving to film and video productions about 10 years ago (mostly local projects), he studied Theater and Cinematic Arts at BYU for a while and now continues to dabble in entertainment as time and schedule permit. He has developed a wide variety of vocal talents; being able to speak with a variety of dialects, accents, and caricatures (He does an amazing Yoda). He has sung bass in a number of choirs and small ensembles. Bob’s primary occupation is in financial services, but he also does some contract technical support on the side. His hobbies include riding his Honda Goldwing, SCUBA diving, and playing a few FRP computer games.” — B.R.

Bob recording the lines for Ignatius.

Ignatius also marked the debut of two new animators, James Allan and Marc Schwegler. Both of these guys generously offered their help after seeing my last blog, when I was lamenting the loss of yet another animator. Thankfully, both James and Marc are Torque Game Engine pros, so we didn’t have to go through the painful process of reviewing the entire exporting process, and we’ve been able to make some good progress on the character animations.

There was nothing particularly new for us about the process of animating Ignatius, since by this time we had covered most of the approaches with the previous characters. When the game begins, Ignatius is sitting in the church, staring intently at the candles and praying, so much so that the player surprises him when he speaks. In the text game, Jason had Ignatius sitting in the pews; later, we realized that pews didn’t exist until much later in history, and we switched instead to choir stalls.

Here is a short portion taken from the beginning of the text version of Vespers, with the player’s commands in bold caps:



Church (in the pews)
Cedar pews line the path from the chancel in the north to the cloister to the
south, their surfaces cold. The ceiling towers above you, its frescoes dim in the
candlelight.

The Saints smile cheerfully down upon you from their colorful windows.

The font glows warmly in the candlelight, not a ripple on its water's surface.

Brother Ignatius sits in one of the pews near the front, staring intently at the
candles.

>EXAMINE IGNATIUS
The scar through his left eye having left him half-blind, Ignatius makes up for it
by staring twice as hard at the candles with his good eye. The eye refuses to blink.

>TALK TO IGNATIUS
"How are you, Ignatius?" you ask, laying your hand on his shoulder.

He startles, whirling around, his bad eye twitching and shuddering. "Oh, father.
You spooked me." He shakes his head. "I'm sorry, what did you ask."

>AGAIN
"I was just wondering how you were doing."

"Oh, fine." He relaxes, turning back to the candles. "Just fine."

>AGAIN
"Shhh, father." He holds a finger to his lips. "I am trying to pray."


We thought to have Ignatius idle using a cyclic sequence, showing him very subtly rocking back and forth as he prayed, with a very slight movement of the fingers of one hand rubbing together. We also wanted to implement his eye twitch as a separate animation sequence, one we could call at random intervals separate from other currently playing sequences.

With the arrival of our two new animators, we also went about making some changes in the way we designed the characters. We went back to a biped skeleton for greater compatibility and simplicity, for one. In addition, James wanted to take our animations a step further by including more realistic lip sync, so Ignatius also marks the debut of this feature. At first I was a little hesitant to include this much detail in our characters, but James convinced me that it would be worth it for a game like this. Plus, with some of the software he uses to generate the lip sync animations, it actually turns out to be less work than I had imagined, and the results are really smooth and natural. The process of creating these sequences is really fascinating to me, so more on this in a future blog.

Here is the same portion of the game as above, as we developed it in 3D with animation and sound, along with a few other sequences mixed in afterward.

So that’s how we went through the process of developing Ignatius from a text character in an interactive fiction game into a 3D animated and speaking NPC model — a good combination of writing, modeling, texturing, animating, and voice work. That now covers four of the six characters in game — only two left! Next time, I’ll cover the development of Drogo, one of the most difficult characters to capture for a variety of reasons.

Thanks for reading…

Be the first to like.
Enjoyed this article? Subscribe to The Monk's Brew RSS feed.

This entry was posted in 3D/if, Vespers. Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.

2 Comments

  1. georgeolivergo
    Posted March 20, 2008 at 10:28 PM | Permalink

    Rubes, your blog is getting really good. Thank you!

  2. Rubes
    Posted March 21, 2008 at 7:32 AM | Permalink

    Thanks, I really appreciate the comment.

Post a Comment

Your email is never published nor shared. Required fields are marked *

You may use these HTML tags and attributes <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*
*

Subscribe without commenting