FileBlog: Spore and the "Joy of Manipulation"

Home / FileBlog Home / Archives

FileBlog Archive


Spore and the "Joy of Manipulation"

February 12, 2007


Welcome to my Creature Feature. Game Designer Will Wright describes his core idea for the game Spore as "Your own personal universe." I've never had godlike powers before (although it's on my list of things to do), but I imagine that building universes is hard. The challenge for Wright's team is to make it easy -- to make it so that anyone can pick up the game and create something incredible.

Last week's DICE summit (see my last few posts) brought Wright up onto the stage, along with four of his top designers, to talk about how they're taking Spore from idea to finished product. As usual, Wright came prepared with easily four hours of material to cram into 40 minutes. I've followed Wright's work for years now (See this lengthy interview or this writeup of his GDC '06 presentation), but when he's on a tear, sometimes he moves so fast he leaves the audience behind. It's like riding a mental roller-coaster, and I mean that in a good way.

So while Wright's look at Spore touched on everything from procedural textures to planetary generation to game prototyping and beyond, I'm just going to focus on one part of the talk: how to create a game where people can create anything they want .... but still make it look good.

Will Wright (right) and his Spore design team.
Will Wright (at the podium) and his design team.


"Art Directing A Million Incompetents"
It all starts with an idea: Let the player create whatever kind of creature they want. Almost immediately the debates began raging within the design team. Should the game steer the player toward realistic creatures, or cutesy critters? It was up to designer Ocean Quigley, who Wright described as the team's artist and scientist, to make the final call. Ultimately the game veers toward the fantastical, because cartoony animals are easier to animate on the fly. (It's easy to spot poor animation if the creature looks real -- when the creature looks like a cartoon, it's okay if it moves like one.) It seems like Quigley only begrudgingly settled on this solution, since he described it as "Let's make it cute to conceal our flaws." But he also pointed out that the 'realistic' creatures you could create, once animated, "would make children cry."

Work began by breaking down creatures into all the component parts (the art team was literally told "Draw a ton of mouths" or "Draw as many weird alien hands as you can"). Then the team had to build an engine allowing you to stitch them all together (more on that below). The next step sounds easy but is immensely difficult: texturing the creature. In the game industry, "skinning" 3D models is a full-time job. People spend years studying this. But Spore has to do it on the fly. Quigley described the problem as doing the work of a texture artist in 500 Milliseconds.

Eventually artists and programmers worked together to create a system of, in Quigley's words, "Particle agents that crawl over the skin of the creature" painting it different colors. This took six months of work. The end result looks seamless: the player chooses which sort of "script" to run on the creature, and what colors to use, and the game just figures it out. The texturing program locates the spine, the underbelly, etc. and blends the colors accordingly. You want stripes? Click the button and the game will locate the center of the creature and rib it with stripes along its sides. Quigley calls it "Art directing a million incompetents" -- anyone can be an artist with Spore.

All these worlds...


By the way, what's nice about developing a new technology like this is that it has multiple applications in a game like Spore. "What we learned from textures applied to planets," Wright explained as the discussion moved to the planetary scale. Each planet is about 8MB of data, but millions of worlds will be available for the player to explore, so the game has to generate them on the fly. Turns out that Spore generates worlds in the same way that it textures animals: little "agents" run around the surface of the planet painting the features on it. They raise and lower terrain, fill in the water, create volcanoes, all according to the laws of some script. Most of the planets you'll find are fairly plausible worlds, but there are also very rare scripts that will run to create "storybook" worlds with strange candy-like spiral mountains and other bizarre features.

Making it Easy
Spore not only has to make everything you create look good. The game also has to make everything you do easy. That falls under the domain of Chaim Gingold, Will Wright's "Toymaker." (I covered Gingold's talk about Prototyping at last year's GDC.) His focus is on the game's editors, and in mocking up the different interfaces people will use to tweak and play with the game world. He's always looking for that magic, the combination of simple but powerful tools: "what makes something fun to touch and play with," he says.

Often little things make a big difference. For instance, in the early parts of the game the player is just a tiny organism swimming in a 2-dimensional "soup." Through experimentation, the team discovered that if you gave the organism an eyeball that follows the mouse cursor around, it "feels" more responsive to the movement commands you're giving it. (Plus, it makes the organism more cute.) Designers like Gingold discover these things through trial-and-error, by building lots of prototypes and seeing what "feels" right.

It gets a lot more complicated once the player is starting to model things in 3D. The problem is thorny: how do you manipulate a 3D model with 2D input (your mouse?) Obviously people who work in computer aided drafting or 3D modeling have made this happen, but you don't want your players to have to have a technical degree in order to enjoy making a critter. Solving this thorny problem was Gingold's job. If you grab the joint of a creature's leg and move your mouse left or right, where does the leg move in 3D space? Where should it move?

The only way to figure that out was to build a lot of prototypes and to play with them. Gingold talked about bringing to the player the "joy of manipulation." Eventually something will resonate with the design team and playtesters. Gingold described his iron-clad acid test for a prototype: "If you don't notice it sucks, it must be good."

Something You Want to Play With
Will Wright talks about Spore.There was more to the talk -- two other designers talked about the space game and the player experience -- but in typical Will Wright fashion slides were flashing across the screen faster than anyone could talk. There was a lot to sink your teeth into -- I may blog more on this topic later. Meanwhile for more writeups see GameSpy's Coverage or IGN's Coverage of the same session.

But the main message I took away from the presentation was the lengths the team is going through to take something very complex (building and skinning 3D creatures, creating whole worlds, etc.) and to make it incredibly simple for the player. Wright knows that Spore has to be "something players want to do that's easy to do. This is not a Word Processor." And judging from his panel of designers, everyone on the team is focused on that. I only wish more games were so focused on bringing out our primal urges to create and play.

      -Fargo

Today's Geek Stuff:
Mod News:
Hardware Links Courtesy of Voodoo Extreme:

Posted by at 11:00 AM PST
Edited on: February 12, 2007 11:06 AM PST
Permalink

FileBlog Weekly Archives

10/24/2010 - 10/30/2010
10/17/2010 - 10/23/2010
10/10/2010 - 10/16/2010
10/03/2010 - 10/09/2010
09/26/2010 - 10/02/2010
09/19/2010 - 09/25/2010
09/12/2010 - 09/18/2010
09/05/2010 - 09/11/2010
08/22/2010 - 08/28/2010
08/08/2010 - 08/14/2010
08/01/2010 - 08/07/2010
07/25/2010 - 07/31/2010
07/18/2010 - 07/24/2010
07/11/2010 - 07/17/2010
07/04/2010 - 07/10/2010
06/27/2010 - 07/03/2010
06/20/2010 - 06/26/2010
06/13/2010 - 06/19/2010
06/06/2010 - 06/12/2010
05/30/2010 - 06/05/2010
05/23/2010 - 05/29/2010
05/16/2010 - 05/22/2010
05/09/2010 - 05/15/2010
05/02/2010 - 05/08/2010
04/25/2010 - 05/01/2010
04/18/2010 - 04/24/2010
04/11/2010 - 04/17/2010
04/04/2010 - 04/10/2010
03/21/2010 - 03/27/2010
03/14/2010 - 03/20/2010
03/07/2010 - 03/13/2010
02/28/2010 - 03/06/2010
02/21/2010 - 02/27/2010
02/14/2010 - 02/20/2010
02/07/2010 - 02/13/2010
01/31/2010 - 02/06/2010
01/24/2010 - 01/30/2010
01/10/2010 - 01/16/2010
01/03/2010 - 01/09/2010
12/27/2009 - 01/02/2010
12/20/2009 - 12/26/2009
12/13/2009 - 12/19/2009
12/06/2009 - 12/12/2009
11/22/2009 - 11/28/2009
11/15/2009 - 11/21/2009
11/08/2009 - 11/14/2009
11/01/2009 - 11/07/2009
10/25/2009 - 10/31/2009
10/18/2009 - 10/24/2009
10/11/2009 - 10/17/2009
10/04/2009 - 10/10/2009
09/27/2009 - 10/03/2009
09/20/2009 - 09/26/2009
09/13/2009 - 09/19/2009
09/06/2009 - 09/12/2009
08/30/2009 - 09/05/2009
08/16/2009 - 08/22/2009
08/09/2009 - 08/15/2009
07/26/2009 - 08/01/2009
07/19/2009 - 07/25/2009
07/12/2009 - 07/18/2009
07/05/2009 - 07/11/2009
06/28/2009 - 07/04/2009
06/21/2009 - 06/27/2009
06/14/2009 - 06/20/2009
06/07/2009 - 06/13/2009
05/31/2009 - 06/06/2009
05/24/2009 - 05/30/2009
05/17/2009 - 05/23/2009
05/10/2009 - 05/16/2009
05/03/2009 - 05/09/2009
04/26/2009 - 05/02/2009
04/19/2009 - 04/25/2009
04/12/2009 - 04/18/2009
04/05/2009 - 04/11/2009
03/29/2009 - 04/04/2009
03/22/2009 - 03/28/2009
03/15/2009 - 03/21/2009
03/08/2009 - 03/14/2009
03/01/2009 - 03/07/2009
02/22/2009 - 02/28/2009
02/15/2009 - 02/21/2009
02/08/2009 - 02/14/2009
02/01/2009 - 02/07/2009
01/25/2009 - 01/31/2009
01/18/2009 - 01/24/2009
01/11/2009 - 01/17/2009
01/04/2009 - 01/10/2009
12/28/2008 - 01/03/2009
12/21/2008 - 12/27/2008
12/14/2008 - 12/20/2008
12/07/2008 - 12/13/2008
11/30/2008 - 12/06/2008
11/23/2008 - 11/29/2008
11/16/2008 - 11/22/2008
11/09/2008 - 11/15/2008
11/02/2008 - 11/08/2008
10/26/2008 - 11/01/2008
10/19/2008 - 10/25/2008
10/05/2008 - 10/11/2008
09/28/2008 - 10/04/2008
09/14/2008 - 09/20/2008
09/07/2008 - 09/13/2008
08/10/2008 - 08/16/2008
08/03/2008 - 08/09/2008
07/27/2008 - 08/02/2008
07/06/2008 - 07/12/2008
06/29/2008 - 07/05/2008
06/22/2008 - 06/28/2008
06/15/2008 - 06/21/2008
06/08/2008 - 06/14/2008
05/25/2008 - 05/31/2008
05/11/2008 - 05/17/2008
05/04/2008 - 05/10/2008
04/20/2008 - 04/26/2008
04/06/2008 - 04/12/2008
03/16/2008 - 03/22/2008
03/09/2008 - 03/15/2008
02/24/2008 - 03/01/2008
02/03/2008 - 02/09/2008
01/06/2008 - 01/12/2008
12/30/2007 - 01/05/2008
10/28/2007 - 11/03/2007
10/21/2007 - 10/27/2007
10/14/2007 - 10/20/2007
09/30/2007 - 10/06/2007
09/23/2007 - 09/29/2007
09/16/2007 - 09/22/2007
09/09/2007 - 09/15/2007
09/02/2007 - 09/08/2007
08/26/2007 - 09/01/2007
08/19/2007 - 08/25/2007
08/12/2007 - 08/18/2007
08/05/2007 - 08/11/2007
07/29/2007 - 08/04/2007
07/22/2007 - 07/28/2007
07/15/2007 - 07/21/2007
07/08/2007 - 07/14/2007
07/01/2007 - 07/07/2007
06/24/2007 - 06/30/2007
06/17/2007 - 06/23/2007
06/10/2007 - 06/16/2007
06/03/2007 - 06/09/2007
05/27/2007 - 06/02/2007
05/20/2007 - 05/26/2007
05/13/2007 - 05/19/2007
05/06/2007 - 05/12/2007
04/29/2007 - 05/05/2007
04/22/2007 - 04/28/2007
04/15/2007 - 04/21/2007
04/08/2007 - 04/14/2007
04/01/2007 - 04/07/2007
03/25/2007 - 03/31/2007
03/18/2007 - 03/24/2007
03/11/2007 - 03/17/2007
03/04/2007 - 03/10/2007
02/25/2007 - 03/03/2007
02/18/2007 - 02/24/2007
02/11/2007 - 02/17/2007
02/04/2007 - 02/10/2007
01/28/2007 - 02/03/2007
01/21/2007 - 01/27/2007
01/14/2007 - 01/20/2007
01/07/2007 - 01/13/2007
12/31/2006 - 01/06/2007