Brian Crick

Extra! Extra!

Been working on a randomly-generated-extras system for Tinselfly.

It doesn’t look like much yet, but I’m pretty excited. The idea is that if I have background characters in any given scene, they’re all going to be dressed in a similar fashion or they’ll be easily divisible into two or three classes of extras who are all dressed similarly. So for example, one ‘class’ might be people in navy uniforms. The uniforms will all look mostly the same, but there might be a little variation in the details: most people will have their shirts tucked in, but some will have their shirts untucked. Some people might be in short sleeves, and some in long. And of course, there would be variation in the people themselves: skin color, weight, height, hair style.

So here I’ve got a simple sample class that defines a character with some variation in weight and skin tone, and a plain garment with variable thickness, color, collar size and leg length.

Eventually, I want more detail and more variation or course; in one particular scene, I even need people in nice white dress uniforms with randomly placed blood stains that vary from shiny and red to matte and brown.

It’s going to take a while to get there. Besides procedurally generating character meshes, I need procedural textures with patterns, trims, lapels, and details like pockets or randomly generated fruit salad on people’s chests, if I want to get really detailed about it. All of which I’m pretty sure I can do, and it’s tempting to dive into all that, but my first priority is to make sure my procedurally generated characters can be animated.

In addition to extras, I’m going to be using the same system to define the look of my leads. And I’d like an animated, working, playable character as soon as I can get one so I can start on gameplay and level design stuff while keeping all this character generation stuff at a trickle.

Because I’m probably going to be making improvements to the character generation throughout the entire project.

Copyright © 2017 Brian Crick.