Generating Gladiators

Some time ago now, we made a decision on Ludus which was a particularly tough call to make. We had been working on Ludus for a while, art, code and design all along side eachother. We had made economical decisions based on our scope and our minimal budget.

I’ve been working as a technical artist for 10 or so years now, so I have come to expect that expectations tend to change over the course of a production, but I somehow didn’t quite foresee that my own would change quite so much. Nevertheless, through habit more than clairvoyance, I knew things tend to change, and I knew that the best way of dealing with this is to always try to build a system that does whatever some job is, rather than focusing on doing the job itself.


So when it came to creating the characters, I set out making a system that would instead generate characters on my behalf from a set of models that had the same topology so that they could morph into each-other and consequently be mixed in any variation.

I started by grabbing some gladiator armor meshes from TurboSquid and Rob fitted them to a model exported from MakeHuman, then I exported some more characters of different shapes from MakeHuman to serve as the morph targets. I linked the bone positions to the vertex positions in the mesh so that I could correct the rig after morphing the vertices, and computed an automatic weight for the clothing meshes to follow the underlying geometry.

Character generator v1

The results seemed promising and after a while of ironing out some vertex order and other kinks we had a system that could produce characters of lots of different shapes and sizes. As you can see from some of the in-progress images below, this process was easy peasy lemon sqeezy.

We continued working with these models and preparing new gladiator armour models for them. Time passed by, and after a while we had quite a lot of art built around this system. But something wasn’t quite right; the model we used was from an earlier version of MakeHuman, and the base model itself had some slightly peculiar proportions. All the variations consequently just looked a bit off.


We made the call to change the base mesh, and with it, all the character art had to be altered as well. A tough call to make on a minimal budget. So I made another system, this one ripped some code from the character generator to morph all the clothing meshes into a new base pose, which we made by pushing the rig into a pose similar to the new character base mesh we had, and then refining the model somewhat using standard modeling tools.

Mesh refitting

Bar a few errant vertices that needed to be cleaned up by hand, this system was able to salvage most of the data.

Adding the new character and new rig to the old system was an immediate success as made evident by the image below.


After a bit of massaging (read: near complete rewrite) the system was able to produce some  plausible looking characters of many different shapes and sizes though, and we had improved the overall quality in the process without completely killing the art budget.


In the game, we have also tied the attributes of the characters to their visual appearance, so a generated character with a high strength value will look stronger, or a character with a high constitution appear more full bodied. After a little while of playing, you get quite good at judging the abilities of an opponent.








8 thoughts on “Generating Gladiators”

  1. of course like many others i imagine, i am extremely anxious to see such a game released, i wonder when is this game’s release?

    1. Hi Harrison,
      That’s a bit difficult to tell at the moment, we are working hard on the game and a lot of the underlying systems are done. We’re aiming for a playable alpha as soon as we can (maybe some time this spring/summer) and beta by the autumn, if things go as planned.

        1. Hi Michael, thanks for checking in with us. We’re working as hard as we can to get the alpha ready but since we’re self funding everything so far through our freelance work, it can sometimes be a bit hard to manage getting the free time to get everything done. That combined with how difficult it can be to estimate the length of a piece of string has left us a bit delayed, but we’re getting there slowly but surely. Unfortunately some things just take time.

          1. Does this game have its own kickstarter? I’d say that would be a resourceful way to earn some money to help create your game.

  2. Hi Michael. No we haven’t taken it to Kickstarter yet. A lot of the problems we see with games on Kickstarter is companies over-promising and then things not going as expected during development, so we want to make super sure that anything we put out is representative of the game and the groundwork is done. We want to follow more of an “under-promise, over-deliver” type of approach. An inverse-Molyneux approach if you will 🙂

Leave a Reply

Your email address will not be published.