Village Concept Art

I always enjoy learning how other artists work and seeing how images come together. In that spirit I have taken to a habit of saving periodic work in progress shots of my own pieces as I spend time on them. Here’s a rundown on a piece of concept art relating to a more run down part of Martinaise.

(Absolutely masterful punwork there if I do say so myself.)


There’s a general back and forth over many quick and ugly thumbnails where we get a basic idea of what’s what with the writers. This is where most of the level design gets worked out. We talk through what the main plot points dictate for the area, we figure out pathways how the player should move through the location and make sure there’s elevation changes so the bare geometry of the area looks good and casts interesting shadows. The player is free to pan the camera around as they please but each location is designed with a certain composition in mind. There’s a an abstract shape to each area that subconsciously feeds into the atmosphere and how the player perceives a location. There’s an asymmetric balance to the region where the center of mass lies on the field amidst the huddle of houses with a protrusion leaping out. In artist-speak there’s “tension” in that.


I block the level with basic 3d shapes and we test it in engine to see how good the distances and sense of scale feel. From here it’s pretty useful to just screencap the block-in from the viewport, run a find edges filter on it in Photoshop and use that as the underlay on which to start drawing. The light grey lines up there are just that.


This is the “draw the rest of the fucking owl” step. Finishing up on the linework. When thinking about what exactly to draw and what reference material to gather I want to avoid generic finishing village photos lest it becomes another place you’ve already been. Instead I look for photos of old dachas. Point is that poor people live here, not ye old timey fisherman cosplayers.


Once the drawing is sufficiently far along I start blocking in the shapes with flat fill colors. As I go along I go back and draw some more bits and pieces here and there since I’m impatient like that. But the idea is to start getting some sense of what the scene might actually look like. For convenience I keep every shape on its own layer so I can search around for colours by just dragging the hue slider around on each individual shape and layer.


Another bonus to keeping stuff on seperate layers is I can lock the opacity for each of them which allows me to take a wild textured brush to the canvas without fear of ruining the edges. It’s a good technique in general for more illustrative pieces where the point is to convey practical information rather than to show off the brush stroke of a painting.


The shadows here come from the 3d block in I made earlier. I multiply it over the image and clean up where needed and add bits and pieces to the shadow layer where I’ve drawn new stuff not present in the block in. There’s a bit more to do but it’s mostly just detailwork and cleanup, it’s pretty much done by now.

And here’s the final piece:



New Tech Day: Occluding Clothes

Hi there! Here’s a quick writeup of how we occlude wearables, mainly for coming back to when future me is puzzled over his past decisions.

No Truce’s fantastical realism does not lend itself to clearly distinguishable character classes that look so much alike you could get away with just a texture swap. What we have is more or less everyday clothes on more or less (mostly less) everyday people. That calls for underwear, shirts, pants, boots, coats, hats, gloves, etc. In other words, a truckload of assets to be combined in a truckload of ways. That, in turn, means a lot of mesh clipping if you’re not careful. The problem with careful is that it’s time consuming and not fun at all.

Naive approach

The initial plan was chopping the character base mesh into pieces and hiding the meshes not visible under current apparel. That would include chopping up shirts which could be partly covered by a coat or a jacket. And trousers which could be partly covered by various lengths of boots. Or the other way around. Referential joke: Hey, that’s even more chopping than Hugh Jackman.

“Buttoned up, under cloak, sleeves rolled, high waist pants, disco pants. WHERE DO WE CHOP?”

This is apparently where most technical artists put their foot down and ask character artists to start standardizing their clothes. But I’m a people pleaser and wouldn’t dare tell kinnas how to art, so I prefer sorting things out before opting for the “technological limitations” excuse.

A less naive approach

(Did he just call industry’s standard methods naive? Read on to find out.)
Since we’re in the privileged position of not pushing many polygons, we don’t really need the polygon reduction from aforementioned method and could actually just get away by making the underlying geometry invisible.

And once we’re just setting transparencies, we don’t even need to do it by polygon. A low-resolution map will suffice.

However, we still have a few problems to solve:

  • each article of clothing does not know what it occludes or what occludes it.
  • each article of clothing is an arbitrary soup of polygons that does not know or care where on the body it sits.

For the time being the former will be handled by a simple script which places assets into an array (hat/coat/shoes/etc)and they will occlude each other in a static order.

The latter is a more interesting task however. To avoid any time-consuming proximity baking, we will need to describe the body mesh and the wearable assets in a single topological space.

We will define an additional UV map to each asset to describe just that.

Enter the Vitruvian Map

Da Vinci would be proud.

Instead of overwhelming our 3D modelling pipeline with tens of edge loops to consider, we simply add the task of mapping your object to the Vitruvian Man above…
Jacket mapped to the vitruvian man.

…and making a little b/w map to describe where the object occludes. (could be automated I guess)


Jacket’s occlusion map to be applied to underlying layers of clothing.

In engine, we loop over the array of clothes, grab the vitruvian map as we go from outer to inner layers, multiply it to the previous ones and apply it to each layer. So a shirt will receive the jacket’s vitruvian map and body will receive the shirt’s vitruvian map multiplied by the jacket’s vitruvian map and will thus be occluded by both. Use the multiplied maps to dictate alpha cutoff and you’re done.
The jacket’s vitruvian applied to body alpha. Cascading nature of this method not illustrated.

Completely unrelated

Sometimes we keep buggy code to use for a potential dream sequence.


The Perikarnassian church

Hi! My name is Kaspar and I’m working on No Truce With The Furies as a concept artist. In this short post I’m going to tell you a bit about what goes into a background. I’ll do that by elaborating on one of the screenshots from our recent press release, namely the moody one with the bad-ass car and the rain and the big building.

001Click on the image for higher resolution

I worked on that – the Perikarnassian church. It is one of the landmarks in the game and even before I began our AD Aleksander had made this early mood concept (that’s the image above).

The environment started changing during production. First, the area is newly sketched out and a rough 3D block-in of the landscape and buildings etc gets done in Blender. At this point I look at lots of references, sketch some and discuss my ideas with the writers and the AD. Eventually I end up with this:


Based on this sketch I do some variations before going into more detail and minute variations, below, along with the original idea and the rough block-in for comparison.


As you can see by the green tick – at first we went with that one. We had to press on and before I could give it to Mikk for modeling I drew up a slightly more detailed image. In this phase I tried out some colors that would fit the mood of the place. Meanwhile I got to work on the church interior. As this is something you won’t be seeing today I’ll fast forward a bit 🙂


When you compare the model to the concept you’ll see that it has gone through some changes again. The isometric perspective can be a harsh mistress. From some angles you lose detail and other angles butcher the silhouette. In Blender I went back in and made both smaller and larger modifications to the model. There, now we could basically put it in the game! It just needs materials.


Here’s the render of the church where I’ve applied base textures and tweaked the model some more – note the angle of the roof, the tower didn’t really work visually before and I attached a balcony/boardwalk to its side among other details. Now the render’s composites (the various maps our custom shaders use) went back to Rostov, who gave it a paintover.


Et Voila! Ain’t a thing. Thanks for tuning in.

006Click on the image for higher resolution