Category Art

Finals week

Sorry, no news to report on Lemma this week. School is keeping me busy. But I thought I'd share some of the projects I'm working on for school, since they're kind of cool and actually somewhat related to Lemma. First up: a 3D rapid prototype of the original toon-style Parkour Ninja!

Here's the model rendered in Cinema 4D:

And here it is printed out in 3D:

Digital art, Facebook 3D Graph Explorer, and more Project Lemma

My last two posts focused on general game development topics, but no longer. It's the end of the year, time to look back and review before looking forward to the new year!

Digital Art

First off, some fun diversions. In my pursuit of an art minor at Ohio State, I took a digital art class autumn quarter. The instructor let me use software I was already familiar with, so I didn't learn much. But the class gave me the motivation to plonck my butt down and make some art, which is all I really wanted.

Pistol: Part 2 - Texturing

And here's episode 2 of the Sig Sauer Saga! In which I attempt to UV map and texture the model from Part 1. And do lighting and compositing for a decent somewhat photo-realistic render. Take a gander. Feedback appreciated!

Pistol - Part 1: Modeling

Poking my head in here to confirm that I am in fact not dead. I humbly offer this nifty time-lapse video as proof.

Started a small project to brush up on Blender skills. Modeling a Sig Sauer P220 in Blender 2.57. The model is low-poly and incomplete (need to finish the other side, the magazine, some bullets, etc.), but it's close. Next up, textures, materials, lighting, rigging, and animation!

Parkour Ninja animations

I'm going to poke my head in here to reassure everyone that the game is making steady progress. The environment now turns transparent when it gets in the way of the camera, and the player has some nifty new moves and mechanics, plus a very shnazzy looking power bar to indicate how much "juice" you have to perform special moves. The latest addition here is the skill roll, which prevents you from slowing down or dying when falling long distances. Take a gander!

Schedule delays

It's time to face the facts. While the game is progressing at an incredible pace, it's not going to be ready by January 9, or even the end of January. So, I guess I failed to meet my deadline.

But! I'm not giving up. I'll still be releasing regular updates, and especially once the multiplayer lobby server is set up, things will start getting a lot more polish. My new goal will be to finish the game before school lets out for the summer. Of course it will be online and playable well before then, but I won't consider it "finished" until I'm satisfied.

Replay functionality, new icons

Yes, you can now view the last five games you played as a spectator! All I did was save each network packet that's sent out into a big list, then use Python's pickle module to serialize the list to a file. Each packet has a timestamp, so I just read the packets back in order, checking the timestamps to make sure it reads the packets back at the right speed. Fast forwarding is not implemented, but it would be pretty easy. Rewinding/seeking would be more difficult, so I'm not sure I'll get to implement those.

New artwork

Yeah, I'm back to art now. I am ashamed. But I'm starting to get the hang of this Blender stuff. Check it out:

New weapon model. This is a Blender Render, not in-game.

And here it is in-game. Don't worry, I fixed the clamped textures on the bottom after I took this screenshot.

Here stands the inanimate metallic ball, ready to kick butt and take names.

Perfunctory postage

Wow, so many updates to cover. I've been without internet for awhile, so... deal with it. :)

Let's start with a list of new improvements:

  1. Networked gameplay is now fully functional. Weapons, grenades, springboards that propel players around the map, it's all there. I'll make a bigger post one of these days that describes the whole system in more detail. It was quite educational for me, and I'll still be modifying it for awhile.
  2. The main arena level has received an upgrade in the form of a massive tower thing in the middle, with bridges going out to springboards on either side. Which makes it now completely incompatible with my primitive AI system. Oh darn.
  3. I'm using a nifty particle effect when the player spawns and to highlight the springboards. Kinda slow without the Panda3D MeshDrawer class though.
  4. The generic physics object, known as "Block" has received a visual overhaul. This was my first experiment with dirty textures, and it turned out not too bad. Textures were done in Inkscape and Gimp (with a normal map filter plugin).
  5. There is now a functional main menu! Well, more like 50% functional. Still on the to-do list: allowing the user to specify what server to connect to (possibly with a server auto-detect function), and allowing the host to choose which map to load. Also farther out on the roadmap is usernames and logins. And can anyone tell me how to deal with Blender's ridiculous smooth/solid mesh setting!? I can't get the continents to be smooth-shaded without screwing up the normals on the edges. It's passable for now though.

Behold!

Done with art for a while

I've spent way too much time fooling with the Blender-Panda3D content pipeline, so I'm moving back to working on gameplay and coding.

That being said, the art was fun while it lasted. Here's a sample of the results:

Wrestling with Blender pays off sometimes.

All art in this screenshot was created by me. The arena geometry enclosing the map was created by extruding individual faces of an icosphere. The texture maps were drawn in the excellent Inkscape, then touched up in the lightweight-but-useful Paint.NET, then crunched by the incredibly flexible and powerful CrazyBump for the normal maps. The whole process is recorded here for posterity: