Postmortem: Detail begets detail
Over 10 years ago a friend of mine was leaving the country, and she left with me some books she thought I’d enjoy. One of them was the Tao Te Ching. It’s full of advice for which the wording can sometimes act as a Rorschach test, and verse 46 is particularly relevant to our discussion today.
There is no guilt greater than to sanction ambition; no calamity greater than to be discontented with one’s lot; no fault greater than the wish to be getting. Therefore the sufficiency of contentment is an enduring and unchanging sufficiency.
You can find a lot of translations of this verse, some less oblique than others, but the vast majority are clear on the message: allowing yourself to be ruled by what you desire leads to misfortune.
I now had some great models by both Matei and Ovidiu. Getting them to look nice in the engine, however, proved to be less than trivial.
Suppose you take this model and you import it to Unity as is.
This is very likely what you will get.
Ugh. The skin looks like a CSI wax corpse, the hair looks like it was made of newspaper strips glued together, and the armor appears to be made of tin. Not only our lighting sucks, but clearly we’re using the wrong shaders. The hair is the simplest case to evaluate, so what do you replace it with?
Transparent cut-out? No. It’ll make the hair looks just as pasted-on, merely less square.
Alpha blending? Yes, that’ll work much better, but only if each strand of hair is a separate object. Try that trick and let me know how does having a few dozen drawcalls just for one character’s hair works out for you.
Exporting the hair as a single shading group? Sure, but you’ll get some z-order issues.
As expected, there was no out-of-the-box shaders that I could use. Some research yielded these slides, which were beyond my meager shader programming knowledge. However, the way to go was clearly to have the hair as a single group with a custom hair shader, so I filed it away for outside contracting.
Now the armor. The models include diffuse, normal and specular maps, the latter being what gives it those great looking colored highlights (for instance on the shoulders). Unity has one diffuse-bump-spec shader, but it applies a global specularity to the object instead of using a specular map. I found a shader on the Unify wiki I could modify, however, which got me a lot closer. Some research yielded a couple of skin shaders, none of which helped with getting the model exactly how I wanted it, so I wrote another item on the list for which I needed someone good at shaders and visual effects.
Receiving two models from different artists at the same time also brought back to the forefront the need of setting up some standards, to ensure that we got reliable results down the road, including having models separated in the expected shading groups so that we can better render them, and have consistent naming so that I could automatically process them on import. Take the case of the werewolf, for instance. How many shading groups do you count?
There’s bits of transparent hair here and there. Given the little overlap they have, we can have them alpha-blended. Then there’s the face and fur, which we could treat differently, but let’s not go overboard. We can lump together the vest and pants, and while at first it would seem that we can use the same shader for them as for the rest of the body, the shirt needs at least a cut-out shader, so we have ourselves a separate shading group. Then there’s the teeth and nails, which we could render separately for better effect. And while we’re at it, why not give the buttons their own look? They’re metal, after all. Fortunately, for the werewolf we could use mostly standard shaders with a few modifications, which reduced the dependency on contractors.
The original plan was to have the characters simply posed on a fixed, base, as I was going for the aesthetic of a miniature game. But after I’d gone through all this trouble, it seemed like a bit of a waste – I had some great models, and was already planning to hire someone to write custom shaders, so why not take one extra step? Sure, I told myself, part of the idea was to both simplify things and reduce costs, but wouldn’t it be a pity to not use the assets to their full potential?
And so I started looking for animators.
After a long look at animation reels, I ended up hiring Jenna Bankhead for skinning and animation. The first model she worked was the werewolf, and she did a very good job of keeping the animations expressive. Her communication was always clear, and she asked before performing tasks she considered necessary, like adding a few edgeloops to the werewolf to improve deformation at the cost of a very minor increase in polygon count. Seeing the final product of Matei’s werewolf properly shaded and animated ended up convincing me of throwing caution to the wind and I began budgeting for character animation as well.
By the time I got in touch with Jenna, we had received two more characters from the concept artist. Both were spot-on with the descriptions I’d sent, even if they had come very slowly – he’d managed to get two drawings out in about the time it took Ovidiu and Matei to complete a model each. The fifth character he seemed to causing him some trouble: Ovidiu kept prodding him on his progress, but he just said he’d done several drafts he was unhappy with and would get back to us. I was busy with several very time-consuming projects at the time, and Ovidiu’s next model was taking longer than expected due to another spike of work at Ubisoft, so I didn’t initially pressure him. Six or so weeks after waiting, I finally decided to pay attention to the waving red flag and said he should just show us the drafts and I’d pick and match from the best elements in each.
His reply was deal breaker: he hadn’t actually worked on the character, and said he wouldn’t continue unless I doubled the rate he had originally asked for.
I hadn’t haggled on his original rate, and since I liked his work I could have dealt with an increase in cost on the concept art (considering that it was proportionally speaking a minor part of the total character cost) but I couldn’t allow him to set a precedent in the relationship where lying about progress and threats instead of negotiation were rewarded. I said no, and started once again combing through portfolios.
It was Ovidiu who found Yuriy Mazurkin. The textures he painted for his Edward Teach illustration immediately convinced me to try him, as did the expressions on his other characters. We reached an agreement, and while Yuriy had other projects as well, he said he could create concepts quickly. I sent him the description of a couple of characters and asked him to start with the one that had stumped the previous artist.
He responded rather quickly with a character that had some great textures and design, but which lacked the right fantasy tone. While a very well made piece, if anything it was more Caravaggio than Warhammer. As Ovidiu put it, “it wasn’t commercial enough“.
Looking back through our communication, I realized this was my fault. Not only did Yuriy’s taste and skills clearly leant more towards the painterly, but in an effort to avoid overloading him with information I had failed to give him the proper background, and hadn’t provided him with enough documentation. I forwarded him more of the design documents, and suggested we try with the goblin-like creatures. The process was both a pleasure and productive: Yuriy sent me an initial full-body draft, and then based on my comments sketched some alternatives, like head variants. The process was helped by the fact that we had a common love of 80s fantasy films, such as Labyrinth and Legend, and he managed to hit every one of my notes, from the inbred look to the ragtag, makeshift armor.
For comparison purposes, you might remember that the first company I’d worked with had created some initial drafts based on my style bible. This was their rendition:
After just a few days of back and forth with Yuriy, this is what we ended up with:
I bet you can’t even tell them apart.
We went through a couple more creatures before going back to Ottmar, the character that previously wasn’t commercial enough. He then came back with a new incarnation that retained all the elements I loved from the original, while replacing those that didn’t fit the theme:
I was sold. Seems I finally had myself an art team.
Next week: Guess what we haven’t discussed in a while. Guess why.
















