Archive for the ‘Code’ Category

What’s going on?

Friday, March 12th, 2010

Ok, been slacking with this blog for a little too long, so let’s do a round-up of what’s happening in the project!

Right now we are working on a number of different things.

texas
Martin is as usual busy creating (mind bending) levels.

malm
Johan has finished some camerascripting, co-op stuff and is now working on touching up menus – fixing transitions, making animations for icons and stuff like that.

bellman
Björn coded behaviour for a new creature and a new placeable cube. He’s currently working on system to log data from user tests and system for unlockable secret stuff (and one of those secret things is awesome. Will return for more info when time is ready).

karja
Carl is working on set dressing the levels – Placing and animating props.

osse
Daniel have done a lot of new sounds – voices for creatures, storysounds, menu blips and blops. He’s also composed songs for the tutorial puzzles the story.

simon
… And I (Simon) have been creating co-op specific assets, fixing and touching up the last menu assets, writing texts (manuals and boring stuff like that) working on the story sequences, and getting in some cameos from other games in to our game (more on that topic later…).

Fredrik and Kim are visiting GDC to talk with people and do some ilomilopimping.

Also! Some links! Clicky clicky!
1up has a preview on ilomilo! (… one thing though: the video is showing an unfinished level with no props whatsoever)

Swedish community loading.se has got some exclusive ilomilo screenshots!

Alright then, See you later.

Update me when site is updated

Ambient occlusion

Wednesday, February 17th, 2010

ao
click pic!

A nice little render effect, called ambient occlusion, recently made it into ilomilo. As mentioned in an earlier post, all textures have occlusion baked into them, but now characters cast nice occlusion shadows on all objects in the level.

Some of you may not know what Ambient occlusion means. Well neither do I, but this is what wikipedia told me:
“Ambient occlusion is a shading method used in 3D computer graphics which helps add realism to local reflection models by taking into account attenuation of light due to occlusion. Ambient occlusion attempts to approximate the way light radiates in real life, especially off what are normally considered non-reflective surfaces.”

So basically it just makes things look nice.

Update me when site is updated

Return to render

Thursday, December 3rd, 2009

Apart from all the talented artists at SouthEnd, we have some techie guys. Me being one of them. Simon entrusted the rendering and visual programming to me in this project. In a visually strong game such as ilomilo it’s imperative to have shading and effects which fit seamlessly into the world and enhances the visual style.

The shading concepts were created early in the project and visualized in our first concept movie of the production. The movie was rendered through Maya and used loads of effects. What I needed to do was analyze the movie, separate all the different components and effects used, and finally choose which ones were viable to use in a real-time rendering environment on our target platform(-s).

Breaking down the shading into it’s components will give you an insight in why ilomilo looks the way it does:

Lighting
1. Ambient & diffuse lighting
To achieve the soft base lighting of the scene we use an ambient light and two directional lights for diffuse shading.

Ambient & diffuse lighting

2. Rim light & specular lighting
The most characteristic shading effect in ilomilo would probably be the strong “rim light” effect, creating a soft velvet look to objects in the scene. Different materials in the game receive different variations of the rim light, creating a diversity between the objects.

Rim light & specular lighting

3. Shadows & bumping
Shadows in ilomilo are rendered using shadow maps. An easy way of creating dynamic shadows on a large scene. We chose to use only one lamp for shadow casting creating a feeling of being outside in the bright sun (or moonlight). Bump maps were added as an important element, being enhanced by the strong rim lighting of the objects.

Shadows & bumping

4. Textures
Putting it all together by adding textures, the final result would look like this! The textures in ilomilo contain occlusion shadowing, giving the objects a hint of self-shadowing.

Composite

Post effects
Apart from the lighting on the scene ilomilo uses a couple of post effects, added onto the final rendering of the scene. Without post effects the levels can look slightly desaturated and dull, also some depth in the image is lost.

No post effects

A. Vignette & saturation
To correct the colors, and also create a feeling that the game is being watched through an old camera, we saturate the image and add a vignette. Resulting in something that looks like this.

Vignette & saturation

B. Depth of field
Finally, to create depth in the image, a depth of field effect is added. Objects closer than the focused objects and far into the distance become out of focus using a seperable (2 pass) Gaussian blur. The large filter size (9×9 pixels) gives the effect a smooth look, making the level and scenery blend together nicely.

Depth of field

So, there you have it! The current rendering in ilomilo. But don’t forget that the game is still in development, so expect more cool rendering stuff further into the production!

Oh, and all shaders and effects were created in NVIDIA’s shader IDE; FX Composer 2.5. It’s a great tool in our tool chain, and gives both artists and programmers easy access to tweaking the parameters of all the lighting and materials.

Update me when site is updated