Archive for January, 2010

This week, what else was there to play, but the fabulous Bayonetta.

Besides the instant death gravity bomb of the final boss, I’ve been enjoying Bayonetta very much.  The combos are hefty and plentiful, the Witch Time mechanic is nice to throw a bit of reaction time skill in there for great benefit, and the main character is just dead sexy.

I especially love the enemy designs.  They managed to make “angels” that look completely angelic and utterly horrific at the same time.  There’s a lot to be learned from designing with overlapping opposites.

And Lock’s Quest, but Lock definitely isn’t as sexy as Bayonetta.

For years now, I’ve been using an old Wacom Intuos tablet.  It’s served me well all these years, until I finally realized that the technology had grown far beyond the meager capabilities of the original.

So I gave in and bought myself a shiny new Wacom Intuos 4 medium tablet, and I have the say, the difference is incredible.  The increased levels of pressure sensitivity and update latency really feel substantial.

As such, I thought I’d try out some sketching and inking, and here’s what I’ve got so far, a quick bust of Emaline.  After this, I’ll take to shading, although I haven’t decided if I should work more on cel-style or airbrush style.  Coloring was never my strongest suit, and I sadly lack practice in the area.  Hopefully the new tablet will finally get me to change that.

Here it is, the first glimpse of the graphical style of Scale.  It’s just beginning, of course, but I think this will be fairly representative of where I want to go with the look of the game.

Here’s Emaline, standing on a foggy pathway in front of a frighteningly full moon.  The textures are hand drawn, with a post-processing hue/saturation, burn and bloom filter in the game engine.  The fog is a particle effect.  The foreground and back ground are a number of parallaxing layers to give a nice pseudo-3d effect.

Emaline herself is animated from numerous components using a keyframing system.  Although my original idea was to use a kind of tweening system to interpolate positions, rotations and scales of individual components, it just looked too mechanical and wasn’t worth it.  Instead, I’ve been hand animating different parts, like the legs for running or her hair waving in the wind when falling, and it’s looking much nicer.  The component system also gives me the benefit of easily combining different components by swapping out source textures rather than having to animate every possible permutation of visible item combinations.  For example, I can simply change the currently used texture for her head to change her equipped hat.

Although the amount of animation required to make Emaline look good is fairly large, I think it’s necessary given the fact you’ll be looking at her the entire time you play.  You’ll notice here there’s even separate animations for left and right motion, so the blaster pistol is always in her right hand!

Just to tie everything together, here’s the improved set of collision geometries for Emaline.  The blue box is her world collision.  The white triangle is her ground collision.  The difference between blue and white is that the ground collision rectangle has a friction co-efficient associated with it to keep her from sliding on the ground, while the world collision box has no friction, to keep her from being able to stick to walls.  Again, the little yellow box is the ground sensor to help change Emaline’s state.  And finally, the new red oval is the enemy collision sensor.  I decided to use a separate collision sensor for determining damage rather than simply use the world collision box so that I could change its size when she crouches or hovers in the air.  If I changed the size of her world collision box on the fly, it could lead to some possible bugs if it were to  suddenly intersect a platform or wall when it changed with her state.

Eventually I’ll be redoing Emaline’s graphics entirely so they look more polished and better match the textured look of the rest of the world, but for now these simple colored animations are serving me well for purposes of debugging the character animation system, and allowing me to move on to combat.

I didn’t spend much time explicitly playing games this previous week.

I worked on getting a different ending out of Silent Hill: Shattered Memories.  Which actually kind of bothers me, in that I don’t find that one as outright spooky as everything that has come before.  I know what to expect, and it doesn’t unsettle me like the older ones on subsequent play-throughs still.  Seeing the little things that change based on your actions is rather fascinating though.  Most obviously, I noticed the person cutout in the diner had gone from a rockabilly musician on my first run through, to a Betty Page pinup on my second.

Also, Lock’s Quest.

Besides that, I’ve been playing snippets of other games that I would call the inspiration for Scale.  Ran around in Symphony of the Night, started a Super Metroid game to observe the camera and animations, sucked at Ikaruga some, tried playing some La Mulana but ended up watching clips from a full playthrough on YouTube, and went and remembered how hard Henry Hatsworth is (especially on that second play, damn).

Switching it up a little bit from the previous three teasers, I thought I’d show off some engine work.  I’ve been focusing on collision and physics lately so what you see here is a very rough polygonal representation of collision geometries.

Here you can see the character’s world collision box in the midst of some other blocks and circles.  The outline is the character, red blocks are static world collision geometry, the green block is a dynamic platform, the circles are projectiles, and the little yellow box is the ground collision detector.

In this shot, you can see the green block has been rotated, as it is revolute jointed to the world allowing it to spin freely about its center of mass.  The character is standing on it, causing it to rotate counter-clockwise.

Finally, we can see the character in mid-jump.  Notice the ground detection rectangle has changed from yellow to white, indicating an airborne state.

I’d say work is coming along nicely.  Things will look even better once I introduce the texture mapped world objects and character sprites to overlay the scene.