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.

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.

A strangely slow week for actually playing games, but a strikingly productive week for creating them!

I put some more time into Lock’s Quest, played some Bookworm on my iPhone while out of the house, and got a few more quests in with my Borderlands buddy, but I don’t feel like I actually gamed too much this past week.

Instead, I spent quite a bit of time actually writing potential code for my currently primary game engine including texture based level layout drawing, pixel shader post processing (including hue/saturation, vignetting, bloom, haze and refraction), simple particles (will probably rewrite this entirely later to hopefully take advantage of point-sprites), and some simple polygonal collision detection.

I’ve attempted to avoid my usual trap of  over-thinking the engine design in favor of the mantra of Jonathan Blow: “Always be prototyping!”  It’s something of a struggle to just sit down and make something “just work” rather than try to make it optimal from the start, but I always manage to surprise myself when I do follow it, and end up producing something tangible.

Welcome to the new Wasted Brilliance!  The home of Brooks Bishop’s game development happenings.

Having been away from the net’s social circles for a while, toiling in the depths of employment, I finally decided with the new year coming up fast it was time for a change in direction.  Through all of my endeavors, be they web programming, music, consulting work or just plain sitting around on a computer, video game development has always been a great interest to me.  With the latest developments in game development technology, and the new and interesting opening of the Microsoft Xbox as a digital distribution platform for independent developers, I finally found the drive to create something in the space I’ve long desired to work in.

Wasted Brilliance as a production house currently has three game titles in various stages of development.  All three are currently planned for the Xbox 360.

  • RunawayTank! – An action platformer focused on speed and reflex.  Originally devised as an entry to Nick Gravelyn’s first Xna7Day Challenge.
  • A “metroidvania” style exploration game with a deep story rooted in turn-of-the-century stylings and the occult.
  • A multi-player overhead space shooter with a focus on team play as well as individual progression.