Topic: A little blurp about the cartoon look of Seed.... (and related stuff)

It has been requested by some, that we reveal how we achieved the comic book look of Seed. Though it has been discussed quite a bit on the old Seed forum, I'll just give a quick run down. If you're not a 3D geek, you might want to skip this part wink

Right. The black outlines, yes?
Well - since neither the Cube engine and close to any other engine support some kind of realtime or post processing cell shading effect, we used what is probably the oldest hack in the book : the normal-inverted, black-painted, pushed, mesh clone.

1. Take original geometry you wish to apply the outline to
2. Clone it
3. Add pure black material or texture
4. Push geometry a bit outwards (Push modifier in 3dsmax)
5. Flip normals (FlipNormal modifier in 3dsmax)
6. Attach cloned, black mesh to original mesh, and there it is.

In addition to the black outline, which we primarily used on stuff like characters, handheld items, rails and some lights, all of Seed's textures were hand painted (in Photoshop). All of them. Although Cube engine supports specularity, specular masks and transparency maps, the most advanced we ever used, was transparancy maps, for stuff like smoke, electrical storms/charges, windows, liquids, foilage etc. Other than that every little highlight and shadow was painted into the texture, and then "enhanced" by some nice vertex colouring, where we'd typically add a bit to the shadows and highlights og the model, depending on it's position in the game world.
Additionally we would do an occlusion pass on a flatshaded version of the object, and add this to the texture in photoshop, to get some nice shadow details in the creases and crevices.
Biggest problem was keeping an even look and size to the textures, as well as the eternal alpha channel sorting issue.

For the light on characters (which would eventually have been added to the handheld items as well) we actually tried a number og solutions. Now lights in realtime 3D are limited, unless you have some ultra-next-gen engine. Cube would only allow 8 lights pr. mesh, with a square/cubic falloff, and no shadow casting. This means that no mesh would be able to receive more than 8 light sources at the same time. Which is why something like flashlights were ruled out at a very early stage. It also made it very tricky to design the lighting of a location properly.
Instead we ended up using advanced material lighting override (3dsmax) to get certain materials to act as lightsources - these were then used to calculate a radiosity solution for the zone, and this solution was then baked into the meshes as vertex paint modifiers. Fine tuning by hand painting was then added, to get the best look.

Eventually we ditched all hardware lighting, and relied on the pathfinder light-on-characters instead.
How did this work? The pathfinder is a mesh that determines where the character can walk in the game world. You cannot walk outside. So it was already there for one purpose. We then used vertex paint, to colorize the pathfinder according to the light and shadow in the locations. The characters would then pick up their ambient color from this pathfinder vertex paint, and change smoothly from dark to light, white to green and whatever we choose. I believe this is common in many games. It does however give a rather flat look, since you loose your highlights. You won't have a nice highlighted face and a shadowed back when standing in front of a light source. It was just too troublesome to set up and control. But you can see the difference, by looking at a character at the character creator screen versus how they look ingame (since May 2006).

In recspace (steambath not included) the sound of footsteps was actually adjusted using the same technique - vertex paint but in another channel. And you'd then paint the pathfinder e.g. red, where you wanted footsteps in grass, blue where you wanted footsteps on metal, and green where you wanted footsteps on metal with a strong echo etc. It would eventually have been used to zone ambience as well.

Smoke, steam, electrical storms etc. was created using Cube's particle system which was susprisingly good. Even it did occasionally suffer from alpha sorting issues. Hand painted opacity maps were used for textures.

Hope this answers some of the questions people have been asking over the times.
If you want to know anything more specific, don't hesitate to ask.


Re: A little blurp about the cartoon look of Seed.... (and related stuff)

Oh good stuff... I only understand around 50% of what you said but a good read anyway wink

you should consider posting this over at the runestone forums as well.

Re: A little blurp about the cartoon look of Seed.... (and related stuff)

Very interesting. Sounds like there was a lot of fiddling and trial and error while developing the technique, and we all know that the end-result was as stunning as it was unique. I especially like the occlusion map details added to the texture. Great idea there.

If only a tenth of the games out there had this kind of inspiration and ingenuity.

Great reading. Should be of use to anyone getting into a similar project.